VHDL考试试题(1)
EDA技术与VHDL期末考试试卷

一、单项选择题:(20分)1. IP核在EDA技术和开发中具有十分重要的地位;提供用VHDL等硬件描述语言描述的功能块,但不涉及实现该功能块的具体电路的IP核为__________。
DA .瘦IP B.固IP C.胖IP D.都不是2.综合是EDA设计流程的关键步骤,在下面对综合的描述中,_________是错误的。
DA. 综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;B. 综合就是将电路的高级语言转化成低级的,可与FPGA / CPLD的基本结构相映射的网表文件;C. 为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束;D. 综合可理解为一种映射过程,并且这种映射关系是唯一的,即综合结果是唯一的。
3.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是__C__。
A. FPGA全称为复杂可编程逻辑器件;B. FPGA是基于乘积项结构的可编程逻辑器件;C. 基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D. 在Altera公司生产的器件中,MAX7000系列属FPGA结构。
4.进程中的信号赋值语句,其信号更新是___C____。
A. 按顺序完成;B. 比变量更快完成;C. 在进程的最后完成;D. 都不对。
5. VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述___________。
BA. 器件外部特性;B. 器件的内部功能;C. 器件的综合约束;D. 器件外部特性与内部功能。
6.不完整的IF语句,其综合结果可实现________。
AA. 时序逻辑电路B. 组合逻辑电路C. 双向电路D. 三态控制电路7.子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化),以及提高运行速度(即速度优化);指出下列哪些方法是面积优化_________。
B①流水线设计②资源共享③逻辑优化④串行化⑤寄存器配平⑥关键路径法A. ①③⑤B. ②③④C. ②⑤⑥D. ①④⑥8.下列标识符中,__________是不合法的标识符。
VHDL程序练习题(含答案)

VHDL程序填空题(一)在下面横线上填上合适的VHDL关键词,完成2选1多路选择器的设计。
LIBRARY IEEE;USE IEEE。
STD_LOGIC_1164.ALL;1 MUX21 ISPORT(SEL:IN STD_LOGIC;A,B:IN STD_LOGIC;Q:OUT STD_LOGIC );END MUX21;2 BHV OF MUX21 ISBEGINQ<=A WHEN SEL=’1’ EL SE B;END BHV;(二)在下面横线上填上合适的语句,完成BCD—7段LED显示译码器的设计。
LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164。
ALL;ENTITY BCD_7SEG ISPORT(BCD_LED :IN STD_LOGIC_VECTOR(3 DOWNTO 0);LEDSEG :OUT STD_LOGIC_VECTOR(6 DOWNTO 0));END BCD_7SEG;ARCHITECTURE BEHA VIOR OF BCD_7SEG ISBEGINPROCESS(BCD_LED)3IF BCD_LED="0000” THEN LEDSEG<=”0111111”;ELSIF BCD_LED=”0001” THEN LEDSEG<="0000110”;ELSIF BCD_LED=”0010" THEN LEDSEG<= 4 ;ELSIF BCD_LED=”0011" THEN LEDSEG<=”1001111";ELS IF BCD_LED=”0100" THEN LEDSEG<="1100110";ELSIF BCD_LED=”0101" THEN LEDSEG〈="1101101";ELSIF BCD_LED=”0110" THEN LEDSEG〈=”1111101";ELSIF BCD_LED=”0111" THEN LEDSEG〈="0000111";ELSIF BCD_LED="1000" THEN LEDSEG〈=”1111111”;ELSIF BCD_LED="1001” THE N LEDSEG<="1101111”;ELSE LEDSEG<= 5 ;END IF;END PROCESS;END BEHA VIOR;(三) 在下面横线上填上合适的语句,完成数据选择器的设计。
VHDL参考试题

一、选择题(共10分,每题2分)1.在一个VHDL设计中Idata是一个信号,数据类型为std_logic_vector,试指出下面赋值语句错误的是__ ___。
A. idata <= “00001111”;B. idata <= b”0000_1111”;C. idata <= X”AB”;D. idata <= B”21”;2.在VHDL语言中,下列对时钟边沿检测描述中,错误的是__ ___。
A. if clk’event and clk = ‘1’ thenB. if falling_edge(clk) thenC. if clk’event and clk = ‘0’ thenD. if clk’stable and not clk = ‘1’ then3.请指出Altera Cyclone系列中的EP1C6Q240C8这个器件是属于_____A. ROMB. CPLDC. FPGAD.GAL4.状态机编码方式中,其中一位热码编码占用触发器较多,但其实现比较适合_____的应用。
A. FPGAB. CPLDC. PALD.GAL5.进程中的信号赋值语句,其信号更新是_______。
a)按顺序完成;b)比变量更快完成;c)在进程的最后完成;d)都不对。
二、EDA名词解释(共10分,每题2分)1.ASIC2.FPGA3.VHDL4.EDA5.SOC三、程序补充题(共10分,每空1分)下面程序是一个10线-4线优先编码器的VHDL描述,试补充完整。
LIBRARY __________ ;USE IEEE._____________________.ALL;ENTITY coder ISPORT ( din : IN STD_LOGIC_VECTOR(____________________);output : __________ STD_LOGIC_VECTOR(3 DOWNTO 0) );END coder;ARCHITECTURE behav OF _____________ ISSIGNAL SIN : STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS (___________)BEGINIF (din(9)='0') THEN SIN <= "1001" ;__________________ THEN SIN <= "1000" ;ELSIF (din(7)='0') THEN SIN <= "0111" ;ELSIF (din(6)='0') THEN SIN <= "0110" ;ELSIF (din(5)='0') THEN SIN <= "0101" ;ELSIF (din(4)='0') THEN SIN <= "0100" ;ELSIF (din(3)='0') THEN SIN <= "0011" ;ELSIF (din(2)='0') THEN SIN <= "0010" ;ELSIF (din(1)='0') THEN SIN <= "0001" ;ELSE _______________ ;________________END PROCESS ;_______________;END behav;四、程序改错题(共15分)仔细阅读下列程序,改正程序中的错误并说明该程序的功能。
EDA技术与VHDL复习练习题

EDA技术与VHDL复习练习题探<习题一>一、填空题1、PLD的中文含义是: _______ 。
2、ASIC的中文含义是: _______ 。
3、“与-或”结构的可编程逻辑器件主要由四部分构成:________ 、 ________ 、 ___________ 和____________ 。
4、可编程逻辑器件结构图中一般用“ x ”表示此编程单元为________ 。
5、可编程逻辑器件结构图中一般用“ •”表示此编程单元为________ 06可编程逻辑器件结构图中无任何标记表示此编程单元为____________ 07、可编程逻辑器件按规模的大小一般分为________ 和 _________ o8、低密度可编程逻辑器件的主要有_______ 和9、GAL器件 _______ 代全部PAL器件。
10、PAL器件只能 _______ 编程。
11、GAL器件能 _______ 编程。
12、GAL器件 _______ 代TTL器件。
13、GAL器件采用 _____ 擦除。
14、PAL和GAL器件_______ 系统编程。
15、PAL和GAL器件需要使用_______ 程二、选择题1、可编程逻辑器件PLD的基本结构形式是A :与——与B:与——或C :或---- 与D:或---- 或2、可以多次编程的器件是______ :A : PROMB : PLAC : PALD : GAL3、PLD器件未编程时 ______ :A :有逻辑功能B :没有逻辑功能C : PAL器件有逻辑功能D : GAL器件有逻辑功能4、GAL器件可以用 ____ 擦除:A :普通光B :紫外线C :红外线D :电5、GAL16V8器件的输出引脚最多有______ :A : 16B : 4C : 8D : 206 PAL16V8器件的输入引脚最多有_________A : 16B : 4C : 8D : 207、GAL16V环能取代___________ :A : PAL16V B: 74LS138C : 74LS373D : ispLSI1032E-70PLCC848、GAL16V8勺________ 可编程:A :与阵列B :或阵列C :输出逻辑宏单元OLMCD : A、B都三、判断题1、GAL器件的输出逻辑宏单元OLM不能实现PAL 器件的所有输出形式。
VHDL复习题

VHDL复习题习题3.1比较常用硬件描述语言VHDL、Verilog和ABEL语言的优劣。
1.VHDL:描述语言层次较高,不易控制底层电路,因而对综合器的性能要求较高。
有多种EDA工具选择,已成为IEEE标准。
应用VHDL进行工程设计的优点是多方面的,具体如下:(1) 与其他的硬件描述语言相比,VHDL具有更强的行为描述能力。
(2) VHDL具有丰富的仿真语句和库函数,使得在任何大系统的设计早期,就能查验设计系统的功能可行性,随时可对系统进行仿真模拟,使设计者对整个工程的结构和功能可行性做出判断。
(3) VHDL语句的行为描述能力和程序结构,决定了它具有支持大规模设计的分解和已有设计的再利用功能。
(4) 用VHDL完成一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动把VHDL 描述设计转变成门级网表(根据不同的实现芯片)。
(5) VHDL对设计的描述具有相对独立性。
(6) VHDL具有类属描述语句和子程序调用等功能,对于完成的设计,在不改变源程序的条件下,只需改变类属参量或函数,就能轻易地改变设计的规模和结构。
2. Verilog:设计者需要了解电路的结构细节,对综合器的性能要求较低。
有多种EDA工具选择,已成为IEEE标准。
3.ABEL: 设计者需要了解电路的结构细节,对综合器的性能要求较低。
支持ABEL的综合器只有一家,ABEL正朝国际化标准努力。
3.2 VHDL程序一般包括几个组成部分?每部分的作用是什么?(1)三个基本组成部分:库、程序包使用说明,实体描述和实体对应的结构体描述。
(2)库、程序包使用说明:用于打开调用本设计实体将用到的库、程序包实体描述:用于描述该设计实体与外界的接口信号说明结构体描述:用于描述该设计实体内部的组成及内部工作的逻辑关系结构体配置语句主要用于层次化的方式对特定的设计实体进行元件的例化,或是为实体选定某个特定的结构体3.3 VHDL语言中数据对象有几种?各种数据对象的作用范围如何?各种数据对象的实际物理含义是什么?(1)数据对象有三种:变量、常量、信号(2)常量的作用范围取决于其所定义的位置。
VHDL各年试卷集合

答:迭代的思想是利用问题本身包含的结构特性,用简单的逻辑子网络代替复杂的组合逻 辑网络,实现要求的处理功能。从而最大限度降低了逻辑网络的设计难度,简化了设计过 程,提高系统的性能/价格比。 (2) 常用的迭代技术有时间迭代、空间迭代,也可以是两者的组合。 (1) 时间迭代速度慢,硬件简单。 ( 1) 空间迭代速度快,硬件复杂。 ( 1)
4 / 54
3、假设法 fadd4 是已经描述好的元件
Entity fadd8 is port ( a , b : in std_logic_vector(7 downto 0) ; ci: in std_logic; co: out std_logic; sum: out std_logic_vector (7downto 0)); End fadd8 ; Architecture stru of fadd8 is Component fadd4 port ( a , b: in std_logic_vector(3 downto 0) ; ci: in std_logic; co: out std_logic; sum: out std_logic_vector (3 downto 0) ); End component; Signal carry_out : std_logic ; Begin U1: fadd4 port map( a( 3 downto 0), b(3 downto 0), ci, carry_out, sum(3 downto 0); U2: fadd4 port map( a( 7 downto 4), b(7 downto 4), carry_out, co, sum(7 downto 4); End stru;
1 1 0 0 0
C1
vhdl期末考试题库及答案

vhdl期末考试题库及答案VHDL期末考试题库及答案一、选择题1. VHDL是一种用于电子设计自动化的硬件描述语言,主要用于描述什么?A. 软件程序B. 硬件电路C. 数据库D. 操作系统答案:B2. 在VHDL中,哪个关键字用于定义一个进程?A. processB. procedureC. functionD. package答案:A3. 下列哪个不是VHDL的预定义数据类型?A. bitB. integerC. realD. boolean答案:A4. VHDL中,哪个属性用于获取信号的稳定值?A. 'stable'B. 'event'C. 'quiet'D. 'transaction'答案:A5. 在VHDL中,以下哪个是合法的信号赋值语句?A. signal a : integer := 5;B. signal a : integer is 5;C. signal a <= 5;D. signal a : integer = 5;答案:C二、简答题1. 简述VHDL中的并发语句和顺序语句的区别。
答案:并发语句用于描述多个独立操作同时发生,如进程和并行块;顺序语句描述操作的顺序执行,如if语句、case语句等。
2. 解释VHDL中的时序仿真和功能仿真的区别。
答案:时序仿真考虑了信号的时序特性,如延迟和时间,用于验证设计在实际工作条件下的行为;功能仿真则不关心时序,只验证设计的功能正确性。
三、编程题1. 编写一个VHDL程序,实现一个简单的二进制加法器。
答案:```vhdlentity adder isport(A, B : in bit_vector(1 downto 0);Sum : out bit_vector(1 downto 0);Carry : out bit);end entity adder;architecture behavior of adder isbeginprocess(A, B)begincase A iswhen "00" => Sum <= "00"; Carry <= '0';when "01" => Sum <= "01"; Carry <= '0';when "10" => Sum <= "01"; Carry <= '0';when "11" => Sum <= "10"; Carry <= '1';end case;end process;end architecture behavior;```四、论述题1. 论述在VHDL中使用测试平台(testbench)的重要性。
最新VHDL考试试题(1)资料

一、填空题(20分,每空格1分)1、一个完整的VHDL语言程序通常包含实体(entity),结构体(architecture),配置(configuration),包集合(package)和库(library) 5各部分。
2、在一个实体的端口方向说明时,输入使用in表示,那么构造体内部不能再使用的输出是用 out 表示;双向端口是用 inout 表示;构造体内部可再次使用的输出是用 buffer 表示;3、VHDL的客体,或称数据对象包括了常数、变量variable 和信号signal 。
4、请列出三个VHDL语言的数据类型,如实数、位等。
位矢量,字符,布尔量。
5、VHDL程序的基本结构包括库、程序包、实体和结构体。
6、more_ _11标识符合法吗?不合法。
8bit标识符合法吗?不合法。
variable标识符合法吗?不合法。
7、信号的代入通常用 <= ,变量用 := 。
8、表示‘0’‘1’;两值逻辑的数据类型是 bit(位),表示‘0’‘1’‘Z’等九值逻辑的数据类型是 std_logic(标准逻辑),表示空操作的数据类型是 NULL 。
9、<=是小于等于关系运算符,又是赋值运算操作符。
10、设D0为'1', D1为'0', D2为'1', D3为'0', D3 & D2 & D1 & D0的运算结果是“0101”,D1 & D2 & D3 & D4的运算结果是“1010”。
11、VHDL程序的基本结构至少应包括实体、结构体两部分和对库的引用声明。
12、1_Digital标识符合法吗?否, \12 @ +\ 呢?合法。
13、在VHDL的常用对象中,信号、变量可以被多次赋予不同的值,常量只能在定义时赋值。
14、实体的端口模式用来说明数据、信号通过该端口的传输方向,端口模式有 in 、 Out 、 inout 、 buffer 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、填空题(20分,每空格1分)1、一个完整的VHDL语言程序通常包含实体(entity),结构体(architecture),配置(configuration),包集合(package)和库(library)5各部分。
2、在一个实体的端口方向说明时,输入使用in表示,那么构造体内部不能再使用的输出是用out 表示;双向端口是用inout 表示;构造体内部可再次使用的输出是用buffer 表示;3、VHDL的客体,或称数据对象包括了常数、变量variable 和信号signal 。
4、请列出三个VHDL语言的数据类型,如实数、位等。
位矢量,字符,布尔量。
5、VHDL程序的基本结构包括库、程序包、实体和结构体。
6、more_ _11标识符合法吗?不合法。
8bit标识符合法吗?不合法。
variable标识符合法吗?不合法。
7、信号的代入通常用<= ,变量用:= 。
8、表示‘0’‘1’;两值逻辑的数据类型是bit(位),表示‘0’‘1’‘Z’等九值逻辑的数据类型是std_logic(标准逻辑),表示空操作的数据类型是NULL 。
9、<=是小于等于关系运算符,又是赋值运算操作符。
10、设D0为'1', D1为'0', D2为'1', D3为'0', D3 & D2 & D1 & D0的运算结果是“0101”,D1 & D2 & D3 & D4的运算结果是“1010”。
11、VHDL程序的基本结构至少应包括实体、结构体两部分和对库的引用声明。
12、1_Digital标识符合法吗?否,\12 @ +\ 呢?合法。
13、在VHDL的常用对象中,信号、变量可以被多次赋予不同的值,常量只能在定义时赋值。
14、实体的端口模式用来说明数据、信号通过该端口的传输方向,端口模式有in 、Out 、inout 、buffer 。
15、VHDL语言中std_logic类型取值‘Z’表示高阻,取值‘X’表示不确定。
16、位类型的初始化采用(字符/字符串)字符、位矢量用字符串。
17、进程必须位于结构体内部,变量必须定义于进程/包/子程序内部。
18、并置运算符& 的功能是把多个位或位向量合并为一个位向量。
19、进程执行的机制是敏感信号发生跳变。
20、判断CLK信号上升沿到达的语句是if clk’event and clk = ‘1’ then .21、IF 语句各条件间具有不同的优先级。
22、VHDL是否区分大小写?不区分。
23、digital_ _8标识符合法吗?不合法。
12_bit标识符合法吗?不合法。
signal标识符合法吗?不合法。
24、结构体有三种描述方式,分别是数据流、行为、和结构化。
25、请分别列举一个常用的库和程序包library ieee 、use ieee.std_logic_1164.all 。
26、一个信号处于高阻(三态)时的值在VHDL中描述为‘Z’。
27、/=是不相等操作符,功能是在条件判断是判断操作符两端不相等。
28、设D0为'0', D1为'1', D2为'1', D3为'0', D3 & D2 & D1 & D0的运算结果是“0110”,(D3 or D2)and(D1 and not D0)的运算结果是:‘1’。
29、赋值语句是(并行/串行)并行执行的,if语句是(并行/串行)串行执行的。
30、8digital标识符合法吗?不合法。
31、信号的代入通常用<= ,变量用:= 。
32、标准逻辑(std_logic)是一个具有九值逻辑的数据类型。
33、定义一个变量a,数据类型为4位位向量variable a : bit_vector(3 downto 0) 。
34、<=是小于等于关系运算符,又是赋值运算操作符。
35、设D0为'1', D1为'1', D2为'1', D3为'0',“1110”是D3 & D2 & D1 & D0的运算结果。
36、IF语句根据指定的条件来确定语句执行顺序,共有3种类型:用于门闩控制的IF语句、用于二选一控制的IF语句、用于多选择控制的IF语句。
二、判断对错并给出判断依据(20分,每小题5分,判断对错2分,给出正确答案3分)1、传统的系统硬件设计方法是采用自上而下(top down)的设计方法,利用硬件描述语言(HDL)的硬件电路设计方法采用自下而上(bottom up)的设计方法。
(×)传统的系统硬件设计方法是采用自下而上(bottom up)的设计方法,利用硬件描述语言(HDL)的硬件电路设计方法采用自上而下(top down)的设计方法2、VHDL可以采用层次化的设计,一个高层的结构体中可以调用低层的实体(√)3、一个VHAL程序中仅能使用一个进程(process)语句。
(×)可以使用多个进程语句。
4、VHDL语言的预算操作包括了逻辑运算符、关系运算符、乘法运算符等,它们三者的优先级是相同的。
(×)逻辑运算符<关系运算符<乘法运算5、进程语句中,不管在何时,process语句后面必须列出敏感信号(×)包含wait语句的进程语句可不列出敏感信号。
6、VHDL语言与计算机C语言的没有差别。
(×)7、在结构体中定义一个全局变量(VARIABLES),可以在所有进程中使用。
(×)“变量(VARIABLES)”改为“信号”。
8、CONSTANT T2:std_logic <= ’0’;(×)改正:把<= 换为:= 。
9、若某变量被定义为数值型变量,未赋初始值时默认值为‘0’。
(错)改正:把‘0’的单引号去掉。
10、在结构体中定义一个全局变量(VARIABLES),可以在所有进程中使用。
(错)改正:“变量(VARIABLES)”改为“信号”。
library ieee;use ieee.std_logic_arith.all;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;以上库和程序包语句有无错误?有,有的话请在原程序相应位置改正。
(2)entity rom isport(addr: in std_logic_vector(0 to 3);ce: in std_logic;data:out std_logic_vector(7 downto 0);)end rom;以上port语句有无错误?有,有的话请在原程序相应位置改正。
(4)三、简答(20分,每小题5分)1、简述VHDL程序的基本结构。
库(1)library ieee;程序包(2)use ieee std_logic_1164.all;实体(3)entity 实体名is结构体(5)architecture 结构体名of 实体名is若答出配置也可加1分配置2、简述信号与变量的区别。
信号延时赋值,变量立即赋值(2)信号的代入使用<=,变量的代入使用:=;(4)信号在实际的硬件当中有对应的连线,变量没有(5)3、进程语句是设计人员描述结构体时使用最为频繁的语句,简述其特点。
●它可以与其它进程并发执行,并可存取结构体或实体中所定义的信号;(1)●进程结构中的所有语句都是按顺序执行的;(2)●为了启动进程,在进程结构中必须包含一个显式的敏感信号量表或者包含一个wait语句;(4)●进程之间的通信是通过信号量的传递来实现的。
(5)四、编程题(共50分)1、请补全以下二选一VHDL程序(本题10分)Entity mux isport(d0,d1,sel:in bit;q:out BIT ); (2)end mux;architecture connect of MUX is (4)signal tmp1, TMP2 ,tmp3:bit; (6)begincale:blockbegintmp1<=d0 and sel;tmp2<=d1 and (not sel)tmp3<= tmp1 and tmp2;q <= tmp3; (8)end block cale;end CONNECT ; (10)2、用IF语句编写一个四选一电路,要求输入d0~d3, s为选择端,输出y。
(本题10分)entity MUX4 isport(s: in std_logic_vector(1 downto 0);d: in std_logic_vector(3 downto 0);y: out std_logic);end MUX4; (3)architecture behave of MUX4 isbeginprocess(s)beginif (s="00") theny<=d(0); (4)elsif (s="01") theny<=d(1); (5)elsif (s="10") theny<=d(2); (6)elsif (s="11") theny<=d(3); (7)elsenull; (9)end if;end process;end behave; (10)。