电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

Systemverilog的一个牛人总结VIP免费

Systemverilog的一个牛人总结_第1页
1/25
Systemverilog的一个牛人总结_第2页
2/25
Systemverilog的一个牛人总结_第3页
3/25
转 一篇 Systemverilog的一个牛人总结 (2012-12-12 16:47:06) 转载▼ 标签: systemverilog 验证 面向对象 杂谈 分类: Dreamywork Sy stemv erilog 数据类型 l 合并数组和非合并数组 1)合并数组: 存储方式是连续的,中间没有闲置空间。 例如,32bit 的寄存器,可以看成是4 个8bit 的数据,或者也可以看成是1 个32bit 的数据。 表示方法: 数组大小和位,必须在变量名前指定,数组大小必须是【msb:lsb】 Bit[3:0] [7:0] by tes ; 2)二维数组和合并数组识别: 合并数组: bit [3:0] [7:0] arry s; 大小在变量名前面放得,且降序 二维数组: int array s[0:7] [0:3] ; 大小在变量名后面放得,可降序可升序 位宽在变量名前面,用于识别合并和非合并数组,位宽在后面,用于识别数组中元素个数。 3)非合并数组 一般仿真器存放数组元素时使用32bit 的字边界,by te、shortint、int 都放在一个字中。 非合并数组:字的地位存放变量,高位不用。 表示方法: Bit [7:0] by tes; 4)合并数组和非合并数组的选择 (1)当需要以字节或字为单位对存储单元操作。 (2)当需要等待数组中变化的,则必须使用合并数组。例如测试平台需要通过存储器数据的变化来唤醒,需要用到@,@只能用于标量或者合并数组。 Bit[3:0] [7:0] barray[3] ; 表示合并数组,合并数组中有 3 个元素,每个元素时 8bit,4 个元素可以组成合并数组 可以使用 barry[0]作敏感信号。 l 动态数组 随机事物不确定大小。 使用方法:数组在开始是空的,同时使用 new[]来分配空间,在 new[n]指定元素的个数。 Int dyn[]; Dyn = new[5]; //分配 5 个元素空间 Dyn.delete() ; //释放空间 l 队列 在队列中增加或删除元素比较方便。 l 关联数组 当你需要建立一个超大容量的数组。关联数组,存放稀疏矩阵中的值。 表示方法: 采用在方括号中放置数据类型的形式声明: Bit[63:0] assoc[bit[63:0]]; l 常量: 1)Verilog 推荐使用文本宏。 好处:全局作用范围,且可以用于位段或类型定义 缺点:当需要局部常量时,可能引起冲突。 2)Parameter 作用范围仅限于单个 module 3)Systemverilog: 参数可以在多个模块里共同使用,可以用 typedef 代替单调乏味的宏。 过程语句 l 可以在 for 循环中定义变量,作用范围仅在循环内部 for(int i=0;i<10;i++) array[i] =i; l 任...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

Systemverilog的一个牛人总结

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部