《《EDA技术与VHDL基础》课后习题答案.doc》由会员分享,可在线阅读,更多相关《《EDA技术与VHDL基础》课后习题答案.doc(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateEDA技术与VHDL基础课后习题答案EDA技术与VHDL基础课后习题答案EDA技术与VHDL基础课后习题答案第一章 EDA技术概述一、填空题1、电子设计自动化2、非常高速集成芯片硬件描述语言3、CAD、CAE、EDA4、原理图输入、状态图输入、文本输入5、VHDL、Verilog HDL6、硬件特性二、选择题1、A2、C3、A4、D5、C6、D7、A第二章 可编程逻辑
2、器件基础一、填空题1、PLD2、Altera公司、Xilinx公司、Lattice公司3、基于反熔丝编程的 FPGA4、配置芯片二、选择题1、D2、C3、C4、D第三章 VHDL程序初步程序结构一、填空题1、结构、行为、功能、接口2、库和程序包、实体、结构体、配置3、实体名、类型表、端口表、实体说明部分4、结构体说明语句、功能语句5、端口的大小、实体中子元件的数目、实体的定时特性6、设计库7、元件、函数8、进程PROCESS、过程PROCEDURE9、顺序语句、并行语句二、选择题1、D2、C3、C4、B5、D6、B7、A8、C三、简答题2、LIBRARY IEEE;USE IEEE.STD_L
3、OGIC_1164.ALL;ENTITY nand_3in ISPORT(a,b,c:IN STD_LOGIC; y:OUT STD_LOGIC);END;ARCHITECTURE bhv OF nand_3in ISBEGINy=NOT(a AND b AND c);END bhv;5、00006、11110111(247)第四章 VHDL基础一、填空题1、顺序语句、并行语句2、跳出本次循环3、等待、信号发生变化时4、函数、过程5、值类属性、函数类属性、信号类属性、数据类型类属性、数据范围类属性6、程序调试、时序仿真7、子程序、子程序二、选择题1、B2、A3、A4、C5、B6、C7、D三、判
4、断题1、2、3、4、5、6、四、简答题9、修改正确如下所示:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY count ISPORT(clk:IN BIT; q:OUT BIT_VECTOR(7 DOWNTO 0);END count;ARCHITECTURE a OF count ISBEGINPROCESS(clk)IF clkEVENT AND clk=1 THEN qoutvalueoutvalueNULL;END CASE;11、修改正确如下所示:ARCHITECTURE
5、bhv OF com1 ISBEGINSIGNAL a,b,c:STD_LOGIC;pro1:PROCESS(clk)BEGINIF NOT (clkEVENT AND clk=1) THENx=a XOR b OR c;END IF;END PROCESS;END;12、(1)PROCESS() -本题中两条IF语句均为信号c进行可能赋值,VHDL语言不允许 IF a=b THEN c=d; END IF; IF a=4 THEN c=d+1; END IF; END PROCESS;(2)ARCHITECTURE behave OF mux IS -同时为q进行多次可能赋值,VHDL语言不
6、允许BEGIN q=i0 WHEN a=0 AND b=0 ELSE 0; -WHEN ELSE语句语法错误 q=i1 WHEN a=0 AND b=1 ELSE 0; q=i2 WHEN a=1 AND b=0 ELSE 0; q=i3 WHEN a=1 AND b=1 ELSE 0; END behave;13、next1=1101 WHEN (a=0 AND b=0) ELSE d WHEN a=0 ELSE c WHEN b=1 ELSE 1011;15、(1)、STD_LOGIC_UNSIGNED(2)、GENERIC(3)、IN(4)、width-1(7)(5)、counter_n
7、(6)、“00000000”(7)、clkEVENT AND clk=1(8)、ELSIF(9)、END IF(10)、q= count16、修改正确如下所示:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CNT10 IS PORT ( clk: IN STD_LOGIC;q: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); END CNT10; ARCHITECTURE bhv OF CNT10 ISSIGNAL q1 : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS (clk)B
8、EGINIF RISING_EDGE(clk) begin begin修改为THENIF q1 9 THEN -q1为STD_LOGIC数据类型,而9为整型不可直接比较q1 = q1 + 1; - q1为STD_LOGIC数据类型,而1为整型不可直接相加ELSE q1 0); END IF;END IF; END PROCESS;q = q1;END bhv;17、使用IF语句实现LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux21 ISPORT(ain,bin,sel:IN STD_LOGIC_VECTOR(1 DOWNTO 0); co
9、ut:OUT STD_LOGIC_VECTOR(1 DOWNTO 0);END;ARCHITECTURE bhv OF mux21 ISSIGNAL cout_tmp:STD_LOGIC_VECTOR(1 DOWNTO 0);BEGINPROCESS(ain,bin,sel)BEGINIF (sel=00) THEN cout_tmp=ain OR bin;ELSIF (sel=01) THEN cout_tmp=ain XOR bin; ELSIF (sel=10) THEN cout_tmp=ain AND bin; ELSE cout_tmp=ain NOR bin;END IF;END
10、 PROCESS;cout=cout_tmp;END bhv;第五章 Quartus集成开发软件初步一、填空题1、实体名2、FPGA、CPLD3、.vhd4、输入、综合、适配、仿真、下载5、RTL Viewer、Technology Map Viewer6、功能、参数含义、使用方法、硬件描述语言、模块参数设置7、mif、hex8、根目录二、选择题1、C2、D第七章 有限状态机设计一、设计题1、LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ztj ISPORT(clk,reset:IN STD_LOGIC; in_a:IN STD_LOGIC_V
11、ECTOR(1 DOWNTO 0); out_a:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END;ARCHITECTURE bhv OF ztj ISTYPE state IS(s0,s1,s2,s3); -用枚举类型定义状态,简单直观SIGNAL current_state,next_state:state; -定义存储现态和次态的信号BEGINp1:PROCESS(clk) -状态更新进程BEGINIF clkEVENT AND clk=1 THENIF reset=1 THEN current_state=s0;ELSE current_stateIF in_a
12、/=”00” THEN next_state=s1; ELSE next_stateIF in_a=/”01” THEN next_state=s2; ELSE next_stateIF in_a=”11” THEN next_state=s0 ELSE next_stateIF in_a/=11 THEN next_state=s0; ELSE next_stateNULL;END CASE;END PROCESS;p3:PROCESS(current_state) BEGINCASE current_state ISWHEN s0=out_aout_aout_aout_aNULL;END
13、CASE;END PROCESS;END;2、LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ztj ISPORT(clk,reset:IN STD_LOGIC; ina:IN STD_LOGIC_VECTOR(2 DOWNTO 0); outa:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END;ARCHITECTURE bhv OF ztj ISTYPE state IS(s0,s1,s2,s3); -用枚举类型定义状态,简单直观SIGNAL current_state,next_state:state;BEGINp1:
14、PROCESS(clk) -状态更新进程BEGINIF clkEVENT AND clk=1 THENIF reset=1 THEN current_state=s0;ELSE current_state IF ina =”101” THEN outa=”0010”; ELSIF ina=”111” THEN outa =”1100”; END IF;IF ina =”000” THEN next_state=s1; ELSE next_state outa=”1001”;IF ina =”110” THEN next_state=s2; ELSE next_state outa=”1111”
15、;IF ina =”011” THEN next_state=s1; ELSIF ina =”100” THEN next_state=s2;ELSE next_state IF ina =”101” THEN outa=”1101”; ELSIF ina=”011” THEN outa =”1100”; END IF;IF ina =”010” THEN next_state=s0; ELSE next_stateNULL;END CASE;END PROCESS;END;3、LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ztj ISPORT
16、(clk,reset:IN STD_LOGIC; ina:IN STD_LOGIC_VECTOR(1 DOWNTO 0); outa:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END;ARCHITECTURE bhv OF ztj ISTYPE state IS(s0,s1,s2,s3); -用枚举类型定义状态,简单直观SIGNAL state:istate;BEGINp1:PROCESS(clk)BEGINIF clkEVENT AND clk=1 THENIF reset=1 THEN state=s0;resultouta=”0000”;IF ina=”00” T
17、HEN state=s1;ELSE state outa =”0001”;IF ina=”01” THEN state=s2;ELSE state outa =”1100”;IF ina=”11” THEN state=s3;ELSE state outa =”1111”;IF ina=”00” THEN state=s0;ELSE stateNULL;END CASE;END IF;END IF;END PROCESS;END;第九章 VHDL基本逻辑电路设计一、填空题1、输入信号、所处状态2、组合逻辑、时序逻辑3、触发器、14、D触发器、RS触发器、JK触发器、T触发器二、选择题1、A2、C-