FPGA学习日记(3) 译码器

这篇文章详细介绍了如何使用八进制输入信号对模块decoder进行操作,通过实例展示了输入wirein1、wirein2和wirein3的不同组合如何映射到outputreg的输出。测试用例部分使用了random函数生成随机输入,监测输出变化。

 module decoder()

module decoder
(
    input   wire   in1,
    input   wire   in2,
    input   wire   in3,
    output  reg   [0:7] out
);

always@(*)
    case({in1,in2,in3})
        3'b000: out <= 8'b0000_0001;
        3'b001: out <= 8'b0000_0010;
        3'b010: out <= 8'b0000_0100;
        3'b011: out <= 8'b0000_1000;
        3'b100: out <= 8'b0001_0000;
        3'b101: out <= 8'b0010_0000;
        3'b110: out <= 8'b0100_0000;
        3'b111: out <= 8'b1000_0000;
        default:out <= 8'b0000_0001;
    endcase

endmodule

 tb_decoder

`timescale 1ns/1ns
module tb_decoder();
reg in1;
reg in2;
reg in3;
wir
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值