SystemVerilog中带参数的let介绍

描述

“let”和define一样,也是可以带有参数的。

 

module abc;
 logic clk, x, y, j;
 logic [7:0] r1;
 let lxor (p, q=1’b0) = p^q;
 always @ (posedge clk) begin
 for (i = 0; i <= 256; i++) begin
 r1 = lxor( i ); 
 //After expanding the ‘let’ instance, 
 //this will be r1 = i ^ 1’b0;
 end
 end
 endmodule

 

在上面的例子中,“let”中包含2个参数“p”和“q”。

lxor(i)将i传递给“p”,"q"还是默认值1‘b0。

所以

 

r1 = lxor( i );

 

等价

 

r1 = i ^ 1’b0;

 






审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分