微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 求助代码问题

求助代码问题

时间:10-02 整理:3721RD 点击:
always @(posedge clk or negedge rst)
if(~rst)
wp <= {aw+1{1'b0}};
求助上面这排代码含义!

求助代码问题
wp[aw:0] <= 0;

求助代码问题
多谢,能再解释一下吗?我不敢肯定
assign wp_next= wp + {{aw{1'b0}},1'b1};

求助代码问题
再认真学习一下verilog的运算符
{n{a}}表示复制,等价于{a,a,……,a},n个a
{aw+1{1'b0}}其实是语法错误的,应该写成{(aw+1){1'b0}}
这里aw肯定是parameter参数,良好的代码风格,这样的参数应该全部大写
{{aw{1'b0}},1'b1}语法正确,如果写成{aw{1'b0},1'b1}则是错误的
{{aw{1'b0}},1'b1}表示aw个0和1个1组合起来,例如,
如果parameteraw = 3;
则{{aw{1'b0}},1'b1}=4'b0001;
{{aw{1'b0}},1'b1}这种写法是常见的技巧,因为aw'b0、aw'b1这种写法是错误的。

求助代码问题
惭愧啊!
因为我看的代码重视小写,所以没有想到!
继续学习!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top