原则4:在同一个always块中描述时序和组合逻辑混合电路时,用非阻塞赋值。
文章来源:https://www.toymoban.com/news/detail-781605.html
1,在一个always块中同时实现组合逻辑和时序逻辑
将简单的组合逻辑和时序逻辑写在一起很方便。
当把组合逻辑额时序逻辑写入到一个always块中时,应遵从时序逻辑建模的原则,使用非阻塞赋值。文章来源地址https://www.toymoban.com/news/detail-781605.html
module nbex2(q, a, b, clk, rst_n);
output q;
input clk, rst_n;
input a, b;
reg q;
always@(posedge clk or negedge rst_n)
if(!rst_n)
q <= 1'b0; // 时序逻辑
else
q <= a ^ b; // 异或,组合逻辑
endmodule
2,将组合和时序逻辑分别写入两个always块中
module nbex1(q, a, b, clk, rst_n);
output q;
input clk, rst_n;
input a, b;
reg q, y;
always@(a or b)
y = a ^ b;
always@(posedge clk or negedge rst_n)
if(!rst_n)
q <= 1'b0;
else
q <= y;
endmodule
到了这里,关于14.9-时序和组合的混合逻辑——使用非阻塞赋值的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!