SystemVerilog
文章平均质量分 63
喜欢喝茶的猫
这个作者很懒,什么都没留下…
展开
-
SystemVerilog——类的基本概念
属性 ( property ): 也就是类中定义的数据(变量)成员。方法 ( method) :也就是类中定义的函数或者任务。句柄 (handle):也就是指向对象的指针,即该对象的地址入口。(1)定义类,例如下面定义的类就是提供了一个包对象的模板: classpacket; ... endclass class long_packet; ... endclass(2)在module或者program、class、fu...原创 2021-03-14 17:38:39 · 1416 阅读 · 0 评论 -
SystemVerilog——fork...join并发结构
1.fork…joinfork…join能够启动产生多个并发进程,如图1所示,fork…join块可以指定一个或多个语句块,每一个语句块都应该作为并发进程执行。图1for...join并发进程fork...join的结构语法如下:forkcode_block_1;code_block_2;...code_block_n;join/join_any/join_nonefork…join内的每个语句块称为子进程,执行这段fork…join代码的称为父进程。...原创 2021-03-13 21:24:54 · 4612 阅读 · 0 评论 -
SystemVerilog——控制结构
1.条件选择语句(1)if...else语句if...else语句根据不同的条件执行不同的分支if(expression)begin...endelsebegin...end(2)case语句case语句为程序提供了分支选择控制的功能。case要求分之表达式和case条件表达式做全等比较(===)而不是逻辑比较(==)。一个分支只有在其表达式完全匹配case条件语句表达式时,才会被选中执行。case(expression)constant_expression:s..原创 2021-03-12 22:02:54 · 1056 阅读 · 0 评论 -
SystemVerilog——结构体与数组
1.结构体表示结构体文本是结构体通过常量成员表达式的赋值方式或者表达式。结构体文本在语法上类似C语言的初始化设置。结构体文本必须具有一个类型,无论是通过上下文关联还是通过强制类型转换。例如:typedef struct {int a;shortreal b;} ab;ab c;c = '{0,0.1};嵌套括号能够反映结构体的结构。下面是一个结构体数组初始化的例子: ab abarr[1:0] = '{'{1,1,0},'{2,2.0}};结构体还可以使用成员名赋值,或者数据..原创 2021-03-12 10:06:27 · 1475 阅读 · 0 评论 -
SystemVerilog——数值与字符串
1.数值表示 整数文本和逻辑文本可以是带位宽的,也可以是不带位宽的。对于值的符号,截短和向左扩展,SystemVerilog与Verilog-2001遵循相同的规则。 指定位宽: 4'b1001 //固 定 长 度 的 4 比 特 的 二 进 制 表 示 16'habcd //固 定 长 度 的 16 比 特 的 十 六 进 制 表 示 ...原创 2021-03-11 22:37:00 · 2182 阅读 · 0 评论 -
SystemVerilog——字符串
SystemVerilog引入了一个字符串类型(string),它是一个大小可变、动态分配的字节数组。在Verilog中,字符串文本为一个具有宽度为8的整数倍的压缩数组。当一个字符串文本被赋值到一个大小不同、整型压缩数组变量的时候,它或者被截短到变量的大小或者在左侧填补0。在SystemVerilog中,字符串文本的表现行为与Verilog相同。然而,SystemVerilog还支持字符串类型,我们可以将一个字符串文本赋值到这种数据类型。当使用字符串类型来替代一个整型变量的时候,字符串可以具有任意的长度原创 2021-03-06 21:30:26 · 6952 阅读 · 1 评论