3

您所在的位置:网站首页 verilog计数器代码0-100 3

3

2024-07-16 21:24| 来源: 网络整理| 查看: 265

实验目的: 学会组合逻辑电路的设计; 实验平台: FPGA开发板;

实验原理 译码器(Decoder)是一种多输入多输出的组合逻辑电路,负责将二进制代码翻译为特定 的对象(如逻辑电平等),功能与编码器相反。 此设计以3-8译码器为例,其真值表如下所示:

ABCOUT0000000_00010010000_00100100000_01000110000_10001000001_00001010010_00001100100_00001111000_0000

译码器Verilog实现

module decoder 3-8( A,B,C,OUT ); input A; input B; input C; output reg [7:0] OUT; always @(A,B,C) begin case({A,B,C}) 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; end endmodule

激励仿真及仿真测试

'timescale 1ns/1ns module decoder3_8_tb; reg A; reg B; reg C; wire [7:0] OUT; decoder3_8 decoder3_8 .A(A), .B(B), .C(C), .OUT(OUT) ); initial begin A=0;B=0;C=0; #100; A=0;B=0;C=1; #100; A=0;B=1;C=0; #100; A=0;B=1;C=1; #100; A=1;B=0;C=0; #100; A=1;B=0;C=1; #100; A=1;B=1;C=0; #100; A=1;B=1;C=1; end endmodule

设置好仿真脚本后进行功能仿真,可以看到如图 7.2 所示的波形。首先可以看出输入信 号 a、b、c 每一时刻的状态与仿真文件中的赋值情况一致。再观察输出信号 out,发现当输入为 000 时输出为 0000_0001;当输入为 001 时输出为 0000_0010。可自行分析其他状态,最终得出逻辑代码符合既定的设计要求,至此功能仿真结束. 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3