|
http://www.pld.com.cn/HDL/systemverilog/4.htm
25. 连续赋值的增强
在verilog中,连续赋值语句的左侧只能是线网类型,例如wire。连续赋值语句被认为是线网的驱动源,而线网可以拥有任意数据的驱动源。SystemVerilog允许除reg类型以外的任何数据类型用于连续赋值语句的左侧。与线网不同,所有其它数据类型被限制为只能有一个连续赋值语句驱动。为相同的变量混合使用连续赋值语句和过程赋值语句是不被允许的。
26. $bit系统函数
在Verilog中没有类似于C语言中sizeof的函数。SystemVerilog加入一个新的$bit内建函数。这个函数返回保存一个值所需的硬件位的数目(一个四态值要求一个硬件位),这个函数还可以用来确定一个结构体所代表的硬件位的数目。
27. `define的增强
SystemVerilog增强了`define编译器指令的能力以便支持将字符串作为宏的参数。宏的文本字符串中可以包含一个隔离的引号,它的前面必须具有一个反勾号(`”),这就允许字符串中包含宏参数。宏文本可以在行的尾部包含一个反斜杠('')来表示在下一行继续。如果宏文本字符串中包含反斜杠,则反斜杠应该被放在两个反勾号之间,这样它就不会被认为是Verilog转义标识符的开始。宏文本字符串还可以包含双反勾号(``),它允许标识符能够从参数中构建。这些增强使得`define指令更加灵活。例如:`include指令后可以紧跟一个宏名字来替代一个字符串。
layout-grid-align: none; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" align=left>`define f1 “../project_top/opcode_defines”
`include `f1
28. 状态机建模
SystemVerilog允许在更高的抽象层次上对状态机建模。这些结构包括:
l 枚举类型
l 一个特殊的state数据类型;
l 一个迁移语句
l 一个迁移操作符
29. 断言
SystemVerilog中加入了断言的功能来改善系统的验证过程。
30. 结论
SystemVerilog为Verilog-2001标准提供了一系列的扩展。这些扩展使得大型设计的建模和验证更加容易。