Verilog中case/casex/casez区别

Verilog中casex/case/casez区别

一图看懂

x表示不定态,z表示高阻态
z表示高阻态,x表示不定状态,因此在casex中对于x和z的位置不关注,只关注0-低电平和1-高电平的位置是否相同。

举例

在下面的代码中,如果对于给出的inst_i的高电平1以及低电平0和casex中相同,则将ALUop赋予对应的信号,相当于我们仅关心高低电平的位置信号是否一致

// Instruction Decode
always @ (*) begin
    if (rst)
        ALUop <= 5'b0;
    else begin
        casex (inst_i)     // inst_i is a 32 bit input wire
            32'bxxxxxxxxxxxxxxxxxxxxxxxxx1101111: ALUop <= 5'b10000;  // jal
            32'bxxxxxxxxxxxxxxxxx000xxxxx1100011: ALUop <= 5'b10001;  // beq
            32'bxxxxxxxxxxxxxxxxx100xxxxx1100011: ALUop <= 5'b10010;  // blt
            32'bxxxxxxxxxxxxxxxxx010xxxxx0000011: ALUop <
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值