verilog语言中一个模块中2个always语句是如何执行
always@(posedgeclkornegedgerst_n)if(!rst_n)cnt_4<=8'd0;elsecnt_4<=cnt_4+1'b1;//显示数据al...
always @(posedge clk or negedge rst_n)
if(!rst_n) cnt_4 <= 8'd0;
else cnt_4 <= cnt_4+1'b1;
//显示数据
always @(posedge clk or negedge rst_n)
if(!rst_n) seg_num <= 8'h00;
else
case(cnt_4[7:6])
2'b00: seg_num <= dis_data[3:0];
2'b01: seg_num <= dis_data[7:4];
2'b10: seg_num <= dis_data[11:8];
2'b11: seg_num <= dis_data[15:12];
default: seg_num <= 8'h00;
endcase
比如这两个always,是同时判断是否在上升沿,还是判断玩上一个再走下一个的 展开
if(!rst_n) cnt_4 <= 8'd0;
else cnt_4 <= cnt_4+1'b1;
//显示数据
always @(posedge clk or negedge rst_n)
if(!rst_n) seg_num <= 8'h00;
else
case(cnt_4[7:6])
2'b00: seg_num <= dis_data[3:0];
2'b01: seg_num <= dis_data[7:4];
2'b10: seg_num <= dis_data[11:8];
2'b11: seg_num <= dis_data[15:12];
default: seg_num <= 8'h00;
endcase
比如这两个always,是同时判断是否在上升沿,还是判断玩上一个再走下一个的 展开
展开全部
always是并行执行的, 你可以仿真看看,里面的CNT_4判断是取的上一次的值
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-09
展开全部
verilog中各个always块都是并行执行的,不存在谁先谁后的关系
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
同时判断!always是并行执行的,两个always语句各走各地
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询