Verilog HDL(五):组合逻辑(always和assign)与时序逻辑

组合逻辑

1.概念:从电路本质上讲,组合逻辑电路的特点是输出信号只是当前时刻输入信号的函数,与其他时刻的输入状态无关,不涉及信号跳变沿的处理。无存储电路,也没有反馈电路。

2.描述:

(1)always模块的触发事件为电平敏感信号电路 :always模块中的信号必须定义为reg。

例:实现一个两输入比较器,输入分别为d1,d2,输出为f1,f2,f3。 

module compare_demo(
    d1,d2,f1,f2,f3
);

input[7:0]d1,d2;
output    f1,f2,f3;
reg    f1,f2,f3;

always @ (d1,d2)begin
    if(d1>d2)
        f1=1;
    else
        f1=0;
    
    if(d1=d2)
        f2=1;
    else
        f2=0;

    if(d1<d2)
        f3=1;
    else
        f3=0
end
endmodule

(2)assign语句描述的电路:利于条件“?”可以描述一些相对简单的组合逻辑电路,信号只能被定义为wire型,必须用阻塞语句。当组合逻辑比较复杂时,代码的可读性就差。

module compare_demo(
d1,d2,f1,f2,f3
);
input di,d2;
output f1,f2,f3;
reg f1,f2,f3;

assgin f1=(d1>d2)?1:0;
assgin f1=(d1==d2)?1:0;
assgin f1=(d1<d2)?1:0;
endmodule

(3)仿真

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值