




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第五章 习题答案1. 画出与阵列编程点解:2. 画出或阵列编程点 解: 3. 与、或阵列均可编程,画出编程点。解;4. 4变量LUT编程解:5. 用VHDL写出4输入与门解: 源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY and4 IS PORT (a,b,c,d:IN STD_LOGIC; x:OUT STD_LOGIC); END and4; ARCHITECTURE and4_arc OF and4 IS BEGIN xa AND b AND c AND d; END and4_arc; 6. 用VHDL写出4输入或门解:
2、源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY or4 IS PORT (a,b,c,d:IN STD_LOGIC; x:OUT STD_LOGIC); END or4; ARCHITECTURE or4_arc OF or4 IS BEGIN xa OR b OR c OR d; END or4_arc;7. 用VHDL写出SOP表达式解: 源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY sop IS PORT (a,b,c,d,e,f:IN STD_LOGIC; x:
3、OUT STD_LOGIC); END sop; ARCHITECTURE sop_arc OF sop IS BEGIN x(a AND b) OR (c AND d) OR (e AND f); END sop_arc;8. 用VHDL写出布尔表达式解: 源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY boolean IS PORT (a,b,c:IN STD_LOGIC; f:OUT STD_LOGIC); END boolean ; ARCHITECTURE boolean_arc OF boolean IS BEGIN f
4、(a OR (NOT b) OR c) AND (a OR b OR (NOT c) AND (NOT a) OR (NOT b) OR (NOT c); END boolean_arc;9. 用VHDL结构法写出SOP表达式解: 源代码: 三输入与非门的逻辑描述 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY nand3 IS PORT (a,b,c:IN STD_LOGIC; x:OUT STD_LOGIC); END nand3; ARCHITECTURE nand3_arc OF nand3 IS BEGIN xNOT (a AND
5、b AND c); END nand3_arc;顶层结构描述文件 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY sop IS PORT (in1,in2,in3,in4,in5,in6,in7,in8,in9:IN STD_LOGIC; out4:OUT STD_LOGIC); END sop; ARCHITECTURE sop_arc OF sop IS COMPONENT nand3 PORT (a,b,c:IN STD_LOGIC; x:OUT STD_LOGIC); END COMPONENT; SIGNAL out1,out2,o
6、ut3:STD_LOGIC; BEGIN u1:nand3 PORT MAP (in1,in2,in3,out1); u2:nand3 PORT MAP (in4,in5,in6,out2); u3:nand3 PORT MAP (in7,in8,in9,out3); u4:nand3 PORT MAP (out1,out2,out3,out4); END sop;10. 用VHDL数据流法写出SOP表达式解: 源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY sop IS PORT (in1,in2,in3,in4,in5,in6,
7、in7,in8,in9:IN STD_LOGIC; out4:OUT STD_LOGIC); END sop; ARCHITECTURE sop_arc OF sop IS BEGIN out4(in1 AND in2 AND in3) OR (in4 AND in5 AND in6 ) OR (in7 AND in8 AND in9); END sop_arc;13. 用VHDL设计38译码器 解: 源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY decoder_3_to_8 IS PORT (a,b,c,g1,g2a,g2b:I
8、N STD_LOGIC; y:OUT STD_LOGIC _VECTOR(7 downto 0); END decoder_3_to_8; ARCHITECTURE rt1 OF decoder_3_to_8 IS SIGNAL indata:STD_LOGIC _VECTOR(2 downto 0); BEGIN indatac & b & a; PROCESS(indata,g1,g2a,g2b) BEGIN IF(g11 AND g2a0 AND g2b0)THEN CASE indata IS WHEN "000"y"11111110&qu
9、ot;; WHEN "001"y"11111101"; WHEN "010"y"11111011"; WHEN "011"y"11110111"; WHEN "100"y"11101111"; WHEN "101"y"11011111"; WHEN "110"y"10111111"; WHEN othersy"01111111"; END
10、 CASE; ELSE y"11111111"; END IF; END PROCESS; END rt1;14. 用VHDL设计七段显示译码器 解: 源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY segment7 IS PORT (xin:IN STD_LOGIC _VECTOR(3 downto 0); lt,rbi:IN STD_LOGIC; yout:OUT STD_LOGIC _VECTOR(6 downto 0);birbo:INOUT STD_LOGIC); END segment7; ARCHI
11、TECTURE seg7448 OF segment7 IS SIGNAL sig_xin: STD_LOGIC _VECTOR(3 downto 0); BEGIN sig_xinxin; PROCESS(sig_xin,lt,rbi,birbo) BEGIN IF(birbo0)THEN yout"0000000"; ELSIF (lt0)THEN yout"1111111"; birbo1; ELSIF (rbi0 AND sig_xin"0000")THEN yout"0000000"; birbo0; E
12、LSIF (rbi1 AND sig_xin"0000")THEN yout"1111110"; birbo1; ELSE birbo1; CASE sig_xin IS WHEN "0001"yout"0110000"; WHEN "0010"yout"1101101"; WHEN "0011"yout"1111001"; WHEN "0100"yout"0110011"; WHEN "
13、;0101"yout"1011011"; WHEN "0110"yout"0011111"; WHEN "0111"yout"1110000"; WHEN "1000"yout"1111111"; WHEN "1001"yout"1110011"; WHEN othersyout"0100011"; END CASE; END IF; END PROCESS; END seg7448;1
14、5. 用VHDL设计8/3优先编码器 解: 源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY priorityencoder IS PORT (din:IN STD_LOGIC _VECTOR(7 downto 0); ei:IN STD_LOGIC; yout:OUT STD_LOGIC _VECTOR(2 downto 0);eo,gs:OUT STD_LOGIC); END priorityencoder; ARCHITECTURE cod74148 OF priorityencoder IS BEGIN PROCESS(ei,
15、din) BEGIN IF(ei1)THEN yout"111"; eo1; gs1; ELSE IF (din(7)0 ) THEN yout"000"; eo1; gs0;ELSIF (din(6)0 ) THEN yout "001"; eo1; gs0;ELSIF (din(5)0 ) THEN yout"010"; eo1; gs0;ELSIF (din(4)0 ) THEN yout"011"; eo1; gs0;ELSIF (din(3)0 ) THEN yout"100
16、"; eo1; gs0;ELSIF (din(2)0 ) THEN yout"101"; eo1; gs0;ELSIF (din(1)0 ) THEN yout"110"; eo1; gs0;ELSIF (din(0)0 ) THEN yout"111"; eo1; gs0;ELSIF (din"11111111") THEN yout"111"; eo0; gs1; END IF; END IF; END PROCESS; END cod74148;16. 用VHDL设计BCD码至二
17、进制码转换器。解: 源代码:library ieee;use ieee.std_logic_1164.all;entity bcdtobi isport( bcdcode : IN STD_LOGIC_VECTOR(7 DOWNTO 0); start: in std_logic; qbit : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) );end;architecture behavioral of bcdtobi isbeginprocess(start)beginif start='0' thencase bcdcode(7 downto 0) i
18、swhen "00000000"=>qbit(3 downto 0)<="0000"when "00000001"=>qbit(3 downto 0)<="0001"when "00000010"=>qbit(3 downto 0)<="0010"when "00000011"=>qbit(3 downto 0)<="0011"when "00000100"=>q
19、bit(3 downto 0)<="0100"when "00000101"=>qbit(3 downto 0)<="0101"when "00000110"=>qbit(3 downto 0)<="0110"when "00000111"=>qbit(3 downto 0)<="0111"when "00001000"=>qbit(3 downto 0)<="1000&q
20、uot;when "00001001"=>qbit(3 downto 0)<="1001"when "00010000"=>qbit(3 downto 0)<="1010"when "00010001"=>qbit(3 downto 0)<="1011"when "00010010"=>qbit(3 downto 0)<="1100" when "00010011"=&
21、gt;qbit(3 downto 0)<="1101" when "00010100"=>qbit(3 downto 0)<="1110" when "00010101"=>qbit(3 downto 0)<="1111" when others=>qbit(3 downto 0)<="0000"end case;elseqbit(3 downto 0)<="0000"end if;end process;e
22、nd behavioral;17. 用VHDL设计4位寄存器解: 异步复位源代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY register_4 IS PORT (clk,r:IN STD_LOGIC;din:IN STD_LOGIC _VECTOR(3 downto 0); qout:OUT STD_LOGIC _VECTOR(3 downto 0); END register_4; ARCHITECTURE rge_arc OF register_4 IS SIGNAL q_temp:STD_LOGIC _VECTOR(3 dow
23、nto 0); BEGIN PROCESS(clk,r) BEGIN IF(r1)THEN q_temp"0000";ELSIF (clkevent AND clk1 ) THEN q_tempdin; END IF; qoutq_temp; END PROCESS; END rge_arc;18. 用VHDL设计4位双向移位寄存器解: s1、s0控制工作方式,dsl为左移数据输入,dsr为右移数据输入。源代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY shiftreg IS PORT (clk,r,dsr,dsl:IN
24、 STD_LOGIC;s1,s0:IN STD_LOGIC;-function selectdin:IN STD_LOGIC _VECTOR(3 downto 0);-data in qout:OUT STD_LOGIC _VECTOR(3 downto 0);-data outEND shiftreg;ARCHITECTURE ls74194 OF shiftreg ISSIGNAL iq: STD_LOGIC _VECTOR(3 downto 0);SIGNAL s:STD_LOGIC _VECTOR(1 downto 0);BEGIN ss1 & s0; PROCESS(clk,
25、r) BEGIN IF(r0)THEN iq"0000";ELSIF (clkevent AND clk1 ) THENCASE s IS WHEN "00"null; WHEN "01"iqdsr & din(3 downto 1);-right WHEN "10"iqdin(2 downto 0)& dsl;-left WHEN "11"iqdin;-load WHEN othersnull; END CASE; END IF; qoutiq; END PROCESS;END
26、 ls74194;19. 用VHDL设计8421码十进制加法计数器解: 异步清零,同步置数源代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY count10 IS PORT (clk,clr,load:IN STD_LOGIC; din:IN STD_LOGIC _VECTOR(3 downto 0); co:OUT STD_LOGIC; qout:OUT STD_LOGIC _VECTOR(3 downto 0);END
27、 count10;ARCHITECTURE count10_arch OF count10 ISSIGNAL iq: STD_LOGIC _VECTOR(3 downto 0);BEGINPROCESS(clr,clk,load)BEGIN IF(clr0)THEN iq"0000";ELSIF (clkevent AND clk1 ) THENIF(load0)THEN iqdin;ELSIF(iq9)THEN iq"0000"; ELSE iqiq+1; END IF; END IF; qoutiq; END PROCESS; co1 WHEN iq
28、"1001" ELSE 0;END count10_arch;20用VHDL设计可逆格雷码计数器解: 源代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY gray_count IS PORT (clk,y:IN STD_LOGIC; qout:OUT STD_LOGIC _VECTOR(2 downto 0);END gray_count;ARCHITECTURE arch_gray OF gray_count ISSIGNAL iq: STD_LOGIC _VECTOR(2 downto 0);BEGIN PROCESS
29、(clk) BEGIN IF (clkevent AND clk1 ) THENIF(y1)THEN CASE iq IS WHEN "000"iq"001"; WHEN "001"iq"011"; WHEN "011"iq"010"; WHEN "010"iq"110"; WHEN "110"iq"111"; WHEN "111"iq"101"; WHEN
30、 "101"iq"100"; WHEN othersiq"000"; END CASE; END IF;IF(y0)THEN CASE iq IS WHEN "000"iq"100"; WHEN "100"iq"101"; WHEN "101"iq"111"; WHEN "111"iq"110"; WHEN "110"iq"010"; WHEN "010
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 宁波2024年浙江宁波宁海县卫生健康局第三批招聘派遣制工作人员笔试历年参考题库附带答案详解
- 2025至2030年中国动力锁数据监测研究报告
- 2025年度互联网企业人才代理招聘服务合同模板
- 科技企业的网络防御深入解析信息安全技术
- 磁头产品售后服务中的客户关系管理
- 教师个人实习工作计划
- 医学毕业实习个人总结
- 生物医学工程技术在教育领域的实践案例
- 出纳人员个人工作计划
- 高三数学下册教学工作计划
- 2025年度企业安全生产与环保管理服务协议范本3篇
- 2025-2030年中国巧克力产品市场需求状况及发展趋势分析报告
- 2024年02月北京2024年中信银行北京分行社会招考(0226)笔试历年参考题库附带答案详解
- 《社会服务机构》课件
- 2025年研究生考试考研法律硕士专业基础(法学397)试题及解答参考
- 《消费者行为分析》全套课件
- 焊接与热切割作业实操培训
- 《学习地图》课件
- 《地区智能电网调度技术支持系统应用功能规范》
- 框架借款协议书(2篇)
- 物业防恐防暴演练课件
评论
0/150
提交评论