FPGA入门实验二:译码器组合逻辑

题目(1):放置2个2-4译码器模块,则总共有2组SW,每组2个,2组LED,每组4个,每组SW分别控制其对应的LED组

1.新建VHDL-Verilog文件,并写一个2-4译码器的moudle,并创建Symbol。

2.新建BDF文件,将上面创建的2-4译码器添加到文件中,添加输入、输出引脚,并且指派引脚。


3.RTL图如下所示



4.编译,下载到DE0板子,通过拨动两组开关,观察对应的Led的亮灭情况




题目(2):参照代码,设计一个3-8译码器,完成类似的拨码开关实验。注意代码中的信号宽度设定

1.新建工程,添加Verilog文件和BDF文件,写出一个3-8译码器的module,并创建Symbol,代码如下:

module MUX3_8(
IN,OUT
);
input [2:0] IN;
output [7:0] OUT;
reg [7:0] OUT;
always @(IN) begin
case (IN)
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;
endcase
  end
endmodule

2.新建BDF文件,将上面创建的2-4译码器添加到文件中,添加输入、输出引脚,并且指派引脚


3.RTL图如下所示




4.编译下载工程,观察现象








题目(3):自行查阅手册中的7段译码器管脚对应关系,用4个拨码开关控制一个7段译码器的数字,从0-9-A-F,共16个数字和字母


1.新建工程,添加Verilog文件和BDF文件,写出一个译码器控制数码管的module,并创建Symbol,代码如下:

module SEG_VC(
IN,
OUT
);
input [3:0] IN;
output [7:0] OUT;
reg [7:0] OUT;
always @ (IN) begin
case(IN)
4'b0000:OUT=8'b11000000;
4'b0001:OUT=8'b11111001;
4'b0010:OUT=8'b10100100;
4'b0011:OUT=8'b10110000;
4'b0100:OUT=8'b10011001;
4'b0101:OUT=8'b10010010;
4'b0110:OUT=8'b10000010;
4'b0111:OUT=8'b11111000;
4'b1000:OUT=8'b10000000;
4'b1001:OUT=8'b10010000;
4'b1010:OUT=8'b10001000;
4'b1011:OUT=8'b10000011;
4'b1100:OUT=8'b11000110;
4'b1101:OUT=8'b10100001;
4'b1110:OUT=8'b10000110;
4'b1111:OUT=8'b10001110;
endcase 
end
endmodule 

2.新建BDF文件,将上面创建的Symbol添加到文件中,添加输入、输出引脚,并且指派引脚


3.RTL图如下:



4.编译下载工程,观察现象





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值