- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章设计一个4 选 1 多路选择器,当选择输入信号分别取“00”、“01”、 “10”和“11”时,输出信号分别与一路输入信号相连。 LIBRARY IEEE;
第三章
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY MAX4_1 IS PORT(A,B,C,D,S1,S2 : IN STD_LOGIC;
Y : OUT STD_LOGIC); END ENTITY MAX4_1;
ARCHITECTURE HF1 OF MAX4_1 IS
SIGNAL SS : STD_LOGIC_VECTOR (0 TO 1); BEGIN
SS=S2S1;
PROCESS(SS)
BEGIN CASE SS IS
WHEN 00 = Y=A; WHEN 01 = Y=B; WHEN 10 = Y=C; WHEN 11 = Y=D; WHEN OTHERS = NULL;
END CASE;
END PROCESS;
END HF1;
设计一个7 人表决电路,参加表决者7 人,同意为1,不同意为
0,同意者过半则表决通过,绿指示灯亮;表决不通过则红指示灯亮。设计思路 :根据 7 人表决电路设计要求,7 人中至少有 4 个通过才可以表决通过, 故可以在程序中设置一个变量 TEMP,使其在表决电路中遇 1 则加 1,遇 0 则加 0
(设计中 1 表示通过,0 表示不通过)。当 TEMP=4 时,表示表决通过,当 TEMP4
时表决不通过。
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY VOTE7 IS
PORT (MEN:IN STD_LOGIC_VECTOR(6 DOWNTO 0); OUTPUT: OUT BIT);
END VOTE7;
ARCHITECTURE BEHAVE OF VOTE7 IS BEGIN
PROCESS(MEN)
VARIABLE TEMP: INTEGER RANGE 0 TO 7; BEGIN
TEMP:=0;
FOR I IN 0 TO 6 LOOP IF(MEN(I)=1)THEN TEMP:=TEMP+1;
ELSE TEMP:=TEMP; END IF;
END LOOP;
CASE TEMP IS
WHEN 0 TO 3 =OUTPUT=0;
WHEN 4 TO 7 =OUTPUT=1; END CASE ;
END PROCESS;
END BEHAVE;
第四章试写出4 选 1 多路选择器VHDL 描述。选择控制信号为S1 和S0,
第四章
输入信号为A,B,C,D,输出信号为Y。
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY MUX41A IS
PORT (A,B,C,D,S0,S1:IN STD_LOGIC; --输入信号Y:OUT STD_LOGIC); --输出信号
END ENTITY MUX41A;
ARCHITECTURE ONE OF MUX41A IS
SIGNAL S:STD_LOGIC_VECTOR(1 DOWNTO 0); BEGIN
S=S0S1; --并置操作,获得二维矢量数据类型PROCESS(S0,S1,A,B,C,D) --敏感信号
BEGIN CASE S IS
WHEN00= Y=A;
WHEN01= Y=B;
WHEN10= Y=C;
WHEN11= Y=D;
WHEN OTHERS=NULL; --其它情况为空值END CASE; --CASE 语句结束
END PROCESS; --PROCESS 进程语句结束END ARCHITECTURE ONE;
使给出1 位全减器的VHDL描述,要求:首先设计1 位半减器,然后用例化语句将它们连接起来。设 X 为被减数,Y 为减数,SUB_IN 是借位输入,DIFF 是输出差,SUB_OUT是借位输出。
(1.1):实现 1 位半减器 H_SUBER(DIFF=X-Y;S_OUT=1,XY)
LIBRARY IEEE; --半减器描述(1):布尔方程描述方法USE IEEE.STD_LOGIC_1164.ALL;
ENTITY H_SUBER IS
PORT( X,Y: IN STD_LOGIC; DIFF,S_OUT: OUT STD_LOGIC);
END ENTITY H_SUBER; ARCHITECTURE HS1 OF H_SUBER IS BEGIN
DIFF = X XOR (NOT Y); S_OUT = (NOT X) AND Y;
END ARCHITECTURE HS1;
--解(
文档评论(0)