- SystemVerilog在Verilog的基础上增加了递增操作符++和递减操作符–。使用方法与C语言中一样。递增和递减是阻塞赋值,所以一般都只用在组合逻辑中。
// 这两条语句是相同的
i++;
i = i + 1;
// 下面这样就是错误的,不能写在时序逻辑中,所以要写成count <= count + 1;
always_ff @ (posedge clock)
if(!resetN)
count <= 0;
else
count ++;
always_ff @ (posedge clock)
case(state)
HOLD: if(count == MAX)
...
- SystemVerilog新增了一些新的赋值语句,这些新的操作符将一些操作符和赋值组合到一起,类似于C语言那样。这些操作符是阻塞赋值,只用在组合逻辑中。新增的操作符如下表。
// 下面这两个语句是一样的
out += in;
out = cout + in;

本文详细介绍了SystemVerilog在Verilog基础上增加的++/--操作符、组合逻辑与时序逻辑的区别、赋值语句的新形式,以及逻辑相等、条件相等和通配符比较等特性。此外,涵盖了强制类型转换、尺寸转换、循环结构、跳转语句和特殊case语句的使用。
最低0.47元/天 解锁文章
2772

被折叠的 条评论
为什么被折叠?



