FPGA用2-4译码器元件实现4-16译码器

该博客介绍了使用VHDL语言设计2-4译码器及其在主程序中的应用。主程序包括一个主输入输出模块和一个元件模块,元件模块实现了2-4译码功能。通过实例展示了如何将2-4译码器并联使用以得到更宽的输出。仿真波形验证了设计的正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

原理图如上

知道原理图 代码也就ok了

需要两个vhdl文件
一个是main文件 也就是主输入输出
另一个是 元件vhdl 实现部分输入输出 在这里指 2-4译码器

由于之前写的奇偶判别器 没有改实体名 这点可以忽略

主程序如下

entity jiou is 
	port(
		signal x:in bit_vector(3 downto 0);
		signal en:in bit;
		signal z:out bit_vector(15 downto 0)
	);
end entity;

architecture behave of jiou is
	signal enchild:bit_vector(3 downto 0);
	component jo21 is
		port(
			signal x:in bit_vector(1 downto 0 );
			signal en:in bit;
			signal y:out bit_vector(3 downto 0)
		);
	end component;
	begin

	u1:jo21 port map(x(3 downto 2),en,enchild(3 downto 0));
	u2:jo21 port map(x(1 downto 0),enchild(3),z(15 downto 12));
	u3:jo21 port map(x(1 downto 0),enchild(2),z(11 downto 8));
	u4:jo21 port map(x(1 downto 0),enchild(1),z(7 downto 4));
	u5:jo21 port map(x(1 downto 0),enchild(0),z(3 downto 0));
end architecture;

子程序如下

entity jo21 is
	port(
		signal x:in bit_vector(1 downto 0 );
		signal en:in bit;
		signal y:out bit_vector(3 downto 0)
	);
end entity;

architecture behave of jo21 is
signal k:bit_vector(2 downto 0);
begin
	k<=en&x;
	with k select
	y<="0001" when "100",
		"0010" when "101",
		"0100" when "110",
		"1000" when "111",
		"0000" when others;
	 
end architecture;

仿真波形图 部分如下
在这里插入图片描述

如此即可 。
如果本篇博客有用的话 请点个赞再走呗

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牛郎恋刘娘,刘娘念牛郎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值