本章介绍一些SytemVerilog的新特性,它会使RTL设计更简洁高效。
新的操作符(New Operators)
SystemVerilog增加了一系列的新操作符,大部分借鉴于C语言。它们包括自加(++)和自减(–),赋值运算符(+=, -=, …)。通配比较运算(wild equality)符(===和!==)类似于在casex语句中,忽略X和Z的值。
新的循环声明(New loop statements)
同样来自于C语言,加入了do-while循环以及break和continue。新的foreach循环主要用于数组相关的操作。for循环得到了扩展,允许下面这样的操作。
for (int i = 15, logic j = 0; i > 0; i --, j = ~j) ...
标签(Labelling)
在Verilog中,你可以给begin和fork语句加标签:
begin : a_label
在SystemVerilog中,标签还可以加到end:
end : a_label
这有助于组织代码。在end处加的标签,必须和begin处的一致。模块,任务和函数也是这样。
modul