原本是想学习如何在 Python 中调用讯飞语音识别库,最后顺便编写了一个带语音识别的聊天机器人。该程序可使用户WeChat摇身变为机器人的角色,同时也可实现用户和聊天机器人之间的智能对答。当用户转变为机器人角色后,能够轻松实现自动回复等功能。不仅如此,为了进一步完善可能,还加入图像识别和学习的功能以便进行WeCh ...
$cast可以对不同的内建类型进行转换,用的更多的是不同层次之间类的转换。在这种父类于子类之间的转换里, 父类站的高,子类在底下,从父类向子类的转换,称为向下类型转换,而子类向父类的转换称为向上类型转换。向上类型转换是安全的,而反之则是不安全的。原因在于子类既然继承了父类,就拥有父类的一切属性,除此之 ...
物联网大热,起到连接作用的无线连接技术作为万物互联的关键环节自然也受到广泛关注,这些连接技术包括WiFi、NFC、蓝牙等。相比WiFi的高功耗,NFC的近距离,低功耗蓝牙无缝、快速的连接显然已经成为物联网中最庞大的无线通讯技术,低功耗蓝牙被誉为“蓝牙智能”,是蓝牙技术联盟设计和推出的一种无线通信技术。那么问题来 ...
五、类方法还是包函数? 我们最初的直觉是将svlib作为一组SystemVerilog类呈现给用户。 我们假设由一个类来表示一个正则表达式,另一个类来表示一个文件名,等等。 从库写作者的角度来看,以这种方式打包用户数据是非常有吸引力的,因为它允许我们将任意隐藏数据与每个对象相关联。 我们在编写面向用户的API时,上遇到了 ...
摘要 作为许多验证工程师的首选语言,SystemVerilog其实并不是专门为验证设计的语言,它还是一种硬件描述语言和通用的编程语言。尽管SystemVerilog面向对象的编程特性和丰富的数据类型为通用编程提供了极好的支持,但是仍然缺少一些在其它编程语言中被认为是理所应当的实用程序。在本文中,我们介绍了一个为SystemVerilog ...
定义一个sv的覆盖组,可以通过在一个组件里包含它或者将它导入到组件里的不同方式。第一种情况下,覆盖组将在仿真器结构层次中具有和其在验证组件中相同的类型路径,这个类型路径将因tb的不同而不一样,因此通用性会差一些。 如果覆盖组在验证组件之外通过覆盖类定义,然后导入到组件里,又会出现另一个问题:覆盖组类 ...
近年来,随着电路设计规模和复杂度的不断扩大,需要测试的场景也在成倍的增加,这使得对每一个场景都进行直接测试变得不太可能完成,或者说完成所需要的投入和产出比值太大,所以在数字验证方面引入了新的验证方法学:基于SV和UVM的随机验证,而对于电路规模和复杂度的急剧增大在模拟和混合电路设计方面也存在这样的问题, ...
为了达到高效完整的验证的目的,我们不仅仅需要SV/UVM这种大规模杀伤性武器,往往还需要使用各种各样的语言和工具来进一步提升效率,正所谓条条大路通罗马,本期就带大家了解一下常用的脚本语言。 首先,什么是脚本语言呢? 脚本通常是以文本(如ASCII)保存,只在被调用时进行解释或编译。例如我们大家基本都学过的C语 ...
随着uvm 和sv 在行业中使用的越来越广泛,公司需要为其工程师掌握uvm 或sv 安排大量的时间,更糟的是, 当工程师第一次用一门新语言为项目编码时很容易出错,这些错误不但要耗费debug时间,还会影响tb覆盖率和质量。 并且,当一个tb由多个工程师编码时, 顶层连接也可能出错。 而减少这些时间的一种方法 ...
本页有 1 篇日志因作者的隐私设置或未通过审核而隐藏
jiang_shuguo
蓬蒿草
feilongt#2021
涛意隆
爱蛙科技
limubai
hirain123
rochesterlmg
ElectroRent
speedzheng23
京存高性能存储
jwenag
hebut_wolf
小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网 ( 京ICP备:10050787号 京公网安备:11010502037710 )
GMT+8, 2024-6-24 04:12 , Processed in 0.127297 second(s), 4 queries , Gzip On, Redis On.