综合资讯 技术文章 原文阅读 在线商城 下载专区 DATASHEET 技术论坛 商务频道

电子技术 | 技术资料 | 嵌入式系统 | 单片机专题 | DSP专题
EDA/PLD专题 | 电源技术专题 | 电子制作专题 | 其他综合 | 芯片选型

所在的位置:首页在线阅读EDA/PLD专题VHDL程序举例-组合逻辑正文
 
解复用器

--
------------------------------------------------------------------------------------
-- DESCRIPTION   :  Demultiplexer
--                  Width: 8
--                  Number of terminals: 4
--                  Output enable active: HIGH
--                  Output active : HIGH
-- Download from :  http://www.pld.com.cn
------------------------------------------------------------------------------------


library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.STD_LOGIC_UNSIGNED.all;

entity dmux is
	port (
		EN : in STD_LOGIC;
		DATA_OUT0 : out STD_LOGIC_VECTOR (7 downto 0);
		DATA_OUT1 : out STD_LOGIC_VECTOR (7 downto 0);
		DATA_OUT2 : out STD_LOGIC_VECTOR (7 downto 0);
		DATA_OUT3 : out STD_LOGIC_VECTOR (7 downto 0);
		SEL : in STD_LOGIC_VECTOR (1 downto 0);
		DATA_IN : in STD_LOGIC_VECTOR (7 downto 0)
	);
end entity;



architecture dmux_arch of dmux is
constant NON_ACTIVE : STD_LOGIC_VECTOR (7 downto 0) := (others => '0');
begin

	DATA_OUT0 <= DATA_IN when (SEL = 0) and (EN = '1') else NON_ACTIVE;
	DATA_OUT1 <= DATA_IN when (SEL = 1) and (EN = '1') else NON_ACTIVE;
	DATA_OUT2 <= DATA_IN when (SEL = 2) and (EN = '1') else NON_ACTIVE;
	DATA_OUT3 <= DATA_IN when (SEL = 3) and (EN = '1') else NON_ACTIVE;

end architecture;

返回 上一页 下一页   信息发布:工号01   转引自: 【 】 【打印】 【关闭

关于我们 ┋ 友情链接


深圳市福田区海滨广场福业大厦12C
电话:0755-88305880 25960580 传真:0755-88305880
Copyright©2005-2007 无忧电子开发网版权所有

粤ICP备05064233号