2024年5月2日发(作者:)
word格式-可编辑-感谢下载支持
=阻塞串行
<=非阻塞并行
1)时序逻辑----使用非阻塞赋值
2)锁存器----使用非阻塞赋值
3)用always块生成的组合逻辑----用阻塞赋值
4)在同一个always块中既有时序逻辑又有组合逻辑---
用非阻塞赋值
5)在同一个always块中不要既用阻塞赋值又用非阻塞赋值
6)不要在一个以上的always块中对同一个变量赋值
7)用$strobe显示用非阻塞赋值指定的变量值
8)不要用 #0 过程性赋值Modport将信号分组并指明方向
函数不能消耗时间,不能有#100@(posedge clk)wait之类的阻塞语句
Interface arb_if(input bit clk);
Logic [1:0] a,b;
Logic rst;
Modport test(output a,rst,
Input b,clk);
Endinterface
Module arb(arb_ arbif);
word格式-可编辑-感谢下载支持
…………
Endmodule
数组定位
Int tq[$],d[]=’{9,1,8,3,4,4};
Tq=_index(x) with (item>3); //{0,2,4,5}得到的是脚标
Tq= with (item>3); //{9,8,4,4}
数组求和
Int count,total;
Count= with(item>7); //2:{9,8} 返回结果为元素与7比较表达式
返回1为真或者零这里面返回 ,{1,0,1,0,0,0}求和得2
Total= with ((item>7)*item) ; //{1,0,1,0,0,0}和对应元素相乘求和得17=9
加8
数组排序
e(); //逆序
(); //从小到大
(); //从大到小
e();
时钟块
指定同步信号相对于时钟的时序
发布评论