3-8译码器的实现
实验目的
用连续值 或者always语句实现3-8译码器74138
了解3-8译码器的功能,锻炼根据功能表实现硬件功能的能力
熟悉上板操作的步骤和流程
74138的器件手册中的Function Tables:
实验内容
(一)实验流程:
用verilog语言在vivado环境下编写源文件,实现3-8译码器。经综合、实现、生成bitstream文件后,将bit文件下载到NEXYS4 DDR开发板上测试功能(三个指定的拨动开关代表输入,上拨值为1,下拨值为0; 八个指定的led灯代表输出,灯亮代表H高电平1,不亮代表L低电平0。)
(二)verilog代码分析:
1.Design source(.v文件):
module ThrEightymq(
input G1,
input G2A,
input G2B, //Enable
input [2:0]S, //input
output reg [7:0]Y //output
);
wire G2;
assign G2=G2A|G2B;
always@(*)
begin
case({G1,G2})
2'b10:
begin
case(S)
3'b000 : Y = 8'b11111110;
3'b001 : Y = 8'b11111101;
3'b010 : Y = 8'b11111011;
3'b011 : Y = 8'b11110111;
3'b100 : Y = 8'b11101111;
3'b101 : Y = 8'b11011111;
3'b110 : Y = 8'b10111111;
3'b111 : Y = 8'b01111111;
default: