版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2009/2010学年第一 学期末考试试题答案及评分标准(A 卷)得分一、填空题( 20 分 , 每空格 1 分)1、一个完整的VHDL语言程序通常包含实体( entity), 构造体( architecture),配置( configuration),包集合( package )和库( library) 5 各部分。2、在一个实体的端口方向说明时,输入使用in 表示,那么构造体内部不能再使用的输出是用 out表示; 双向端口是用inout表示;构造体内部可再次使用的输出是用buffer表示;3、一个构造体可以使用几个子结构,即相对比较独立的几个模块来构成。VHDL语言可以有以下 3 种形式的
2、子结构描述语句:BLOCK 语句结构; PROCESS 语句结构和 SUBPROGRAMS结构。4、 VHDL的客体,或称数据对象包括了常数、变量 variable和 信号 signal。5、请列出三个 VHDL语言的数据类型, 如实数、位等。 位矢量, 字符,布尔量。6、设 D0 为 0, D1 为 0, D2 为 1,D3 为 0,D0 & D1 & D2 & D3 的运算结果是“ 0010”,D3&D2&D1&D0的运算结果是“ 0100 ”。7、构造体的描述方式包括三种,分别是寄存器传输( RTL)描述方法或称数据流;构造体的结构描述方式和 构造体的行为描述方式。得分二、判断对错并给出
3、判断依据(20 分,每小题5 分,判断对错2 分,给出正确答案3 分)1、传统的系统硬件设计方法是采用自上而下( top down )的 设计方法,利用硬件描述语言( HDL)的硬件电路设计方法采用自下而上(bottom up)的设计方法。( )传统的系统硬件设计方法是采用自下而上( bottom up)的设计方法, 利用硬件描述语言 ( HDL)的硬件电路设计方法采用自上而下( top down )的设计方法2、 VHDL可以采用层次化的设计,一个高层的结构体中可以调用低层的实体( )13、一个 VHAL程序中仅能使用一个进程(process )语句。( )可以使用多个进程语句。4、VHDL
4、语言的预算操作包括了逻辑运算符、关系运算符、乘法运算符等,它们三者的优先级是相同的。()逻辑运算符 关系运算符 乘法运算得分三、判断题(10 分)library ieee;以上库和程序包语句有无错误?有,有的话请在原程序相应位置改正。(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)architecture behave of rom is
5、beginprocess( ce,addr)beginif ce=0 then(6)case addr isdatawhen 0001=2datawhen 0010=data=10010010;datawhen 0011=data=10010011;datawhen 0100=data=10010100;datawhen 0101=data=10010101;datawhen 0110=data=10010110;datawhen 0111=data=10010111;datawhen 1000=|data=10011000;data=10010001;|end case;(8)elsedat
6、a=00000000;end if;end process;(10)end behave;以上 architecture 中有哪些错误?请在原程序相应位置改正。得分四、 编程题(共 50 分)1、请补全以下二选一VHDL 程序(本题10 分)Entity mux isport(d0,d1,sel:in bit;q:outBIT);(2)end mux;architecture connect ofMUXis(4)signal tmp1,TMP2,tmp3:bit;(6)begincale:block3begintmp1=d0 and sel;tmp2=d1 and (not sel)tmp3=
7、 tmp1 and tmp2;q=tmp3;(8)end block cale;endCONNECT;(10)2、编写一个2 输入与门的VHDL程序,请写出库、程序包、实体、构造体相关语句,将端口定义为标准逻辑型数据结构(本题10 分)a&ybLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;( 2)ENTITY nand2 ISPORT (a, b:INSTD_LOGIC;( 4)y:OUT STD_LOGIC);( 6)END nand2;ARCHITECTURE nand2_1 OF nand2 IS( 8)BEGINy = a NAND b; -与 y
8、=NOT( a AND b);等价( 10)END nand2_1;3、根据下表填写完成一个3-8 线译码器的VHDL程序( 16 分)。4LIBRARY IEEE;ENTITY decoder_3_to_8 ISPORT (a,b,c,g1,g2a,g2b:IN STD_LOGIC;y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); ( 2) END decoder_3_to_8;ARCHITECTURE rtl OF decoder_3_to_8 ISSIGNAL indata:STD_LOGIC_VECTOR (2 DOWNTO 0);( 4)BEGINindata
9、y y y y y y y y y = XXXXXXXX;5END CASE;ELSEy = 11111111;(14)END IF;END PROCESS;(16)END rtl;4、三态门电原理图如右图所示,真值表如左图所示,请完成其VHDL程序构造体部分。(本题 14 分)LIBRARY IEEE;ENTITY tri_gate ISPORT(din,en:IN STD_LOGIC;dout : OUT STD_LOGIC);END tri_gate ;ARCHITECTURE zas OF tri_gate ISBEGINPROCESS (din,en)BEGINIF (en= 1)T
10、HENdout = din;ELSEdout = Z;END IF;END PROCESS ;END zas ;62008/2009学年第一 学期末考试试题答案及评分标准(A卷)得分一、填空题( 20 分 , 每空格 1 分)1、试举出两种可编程逻辑器件CPLD、FPGA。2、 VHDL程序的基本结构包括库、程序包、实体和结构体。3、 more_ _11 标识符合法吗?不合法。 8bit标识符合法吗?不合法。variable标识符合法吗?不合法。4、信号的代入通常用=,变量用:=。5、表示 0 1;两值逻辑的数据类型是bit(位),表示 01Z等九值逻辑的数据类型是std_logic(标准逻辑
11、),表示空操作的数据类型是NULL。6、定义一个信号a,数据类型为4 位标准逻辑向量signal a : std_logic_vector(3downto 0)定义一个变量b,数据类型为2 位位向量 variable b : bit_vector(1downto 0)。7、 when 0000=data=10010001;datawhen 0001=data=10010010;datawhen 0010=data=10010011;datawhen 0011=data=10010100;datawhen 0100=data=10010101;datawhen 0101=data=1001011
12、0;datawhen 0110=data=10010111;datawhen 0111=data=10011000;data=10010000;end case;elsedata:=00000000;-data = “00000000”;(8)end if;(10)end process;end behave;以上 architecture 中有哪些错误?请在原程序相应位置改正。得分四、编程题(共50 分)91、根据一下四选一程序的结构体部分,完成实体程序部分(本题8 分)entity MUX4 isport(2)s: in std_logic_vector(1 downto 0);(4)d:
13、 in std_logic_vector(3 downto 0);(6)y: out std_logic(8);end MUX4;architecture behave of MUX4 isbeginprocess(s)beginif (s=00) theny=d(0);elsif (s=01) theny=d(1);elsif (s=10) theny=d(2);elsif (s=11) theny=d(3);elsenull;end if;end process;end behave;2、编写一个数值比较器VHDL程序的进程(不必写整个结构框架),要求使能信号 g 低电平时比较器开始工作,
14、输入信号p = q ,输出 equ 为 0,否则为 1。(本题 10 分)process(p,q)(2)beginif g=0 then(4)if p = q thenequ = 0;(6)elseequ = 1;(8)end if;elseequ = 1;(10)10end if;end process;3、填写完成一个8-3 线编码器的VHDL程序( 16 分)。Library ieee;entity eight_tri isport(b:in std_logic_vector(7 downto 0);(2)en:in std_logic;y:out std_logic_vector(2
15、downto 0)( 4));end eight_tri;architecture a of eight_tri is( 6)signal sel: std_logic_vector(8 downto 0);beginsel=en & b;( 8)y= “ 000 ” when (sel=” 100000001 ” )else“001” when (sel=” 100000010 ” )else( 10)“ 010 ” when (sel=” 100000100 ” )else“ 011 ” when (sel=” 100001000 ” )else“ 100 ” when (sel=1000
16、10000” ” )else( 12)“ 101 ” when (sel=” 100100000 ” )else“110” when (sel=” 101000000 ” )else( 14)“ 111 ” when (sel=110000000” )else( 16)“zzz”;end a;4、图中给出了4 位逐位进位全加器,请完成其VHDL程序。(本题 16 分)11library IEEE;entity full_add isport (a,b:instd_logic_vector (3 downto 0);( 2)carr:inoutstd_logic_vector (4 downto
17、 0);sum:outstd_logic_vector (3 downto 0);end full_add;architecture full_add_arch of full_add iscomponent adder (4) port (a,b,c:instd_logic;carr:inoutstd_logic;sum:outstd_logic(6));end component;begincarr(0)=0;u0:adderport map(a(0),b(0),carr(0),carr(1),sum(0);u1:adderport map(a(1),b(1),carr(1),carr(2
18、),sum(1);(8)( 10)u2:adderport map(a(2),b(2),carr(2),carr(3),sum(2);(12)u3:adderport map(a(3),b(3),carr(3),carr(4),sum(3);(14)( 16)end full_add_arch;122008/2009学年第一 学期末考试试题(B 卷)得分一、填空题( 30 分 , 每空格 1 分)1、同 A2、 VHDL程序的基本结构至少应包括实体、结构体两部分和对库的引用声明。3、 1_Digital标识符合法吗?否, 12 +呢?合法。4、在 VHDL的常用对象中,信号、变量可以被多次赋予
19、不同的值,常量只能在定义时赋值。5、实体的端口模式用来说明数据、信号通过该端口的传输方向,端口模式有in、Out、inout、buffer。6、VHDL语言中 std_logic 类型取值 Z表示高阻,取值 X表示不确定。7、整型对象的范围约束通常用range关键词,位矢量用downto/to关键词。8、位类型的初始化采用(字符/ 字符串)字符、位矢量用字符串。9、进程必须位于结构体内部,变量必须定义于进程 / 包/ 子程序内部。10、并置运算符 &的功能是把多个位或位向量合并为一个位向量。11、进程执行的机制是敏感信号发生跳变。12、判断 CLK信号上升沿到达的语句是if clk event
20、 and clk = 1 then .13、IF语句各条件间具有不同的优先级。14、任何时序电路都以时钟为驱动信号,时序电路只是在时钟信号的边沿到来时,其状态才发生改变。15、 Moore状态机输出只依赖于器件的当前状态,与输入信号无关。得分13二、判断对错并改正(12 分,每小题3 分)1、 CONSTANT T2 : std_logic =0;(错)改正:把 = 换为:= 。2、若某变量被定义为数值型变量,未赋初始值时默认值为0。(错)改正:把 0的单引号去掉。3、在结构体中定义一个全局变量(VARIABLES ),可以在所有进程中使用。(错)改正:“变量( VARIABLES )”改为“
21、信号” 。4、语句 type wr is (wr0,wr1,wr2,wr3,wr4,wr5);定义了一个状态机变量wr,可以直接对wr 赋值。(错)改正:语句type wr is (wr0,wr1,wr2,wr3,wr4,wr5);定义了一个状态机类型 wr,需要定义一个该类型的对象,才可以对该对象赋值。得分三、简答( 8 分,每小题4 分)1、简述如何利用计数器精确控制时序。只要知道晶振频率f ,即可知道周期T 1/f ;使用一个计数器,可以通过计数值n,精确知道当计数值为n 时消耗的时间t nT;上例中以n 为控制条件,可以控制其它信号在某时刻变高,某时刻变低,从而产生精确时序;例如:PR
22、OCESS (clr , clk)BEGINIF(clr=1) THENCount_B= “ 00000000 ”;q = 0;ELSIF (clkEVENT AND clk= 1 ) THENCount_B=count_B + 1;IF (Count_B =“ 00000000 ” ) THENq = 1;ELSIF (Count_B =“ 00000001 ” ) THENq= 0;ELSIF (Count_B =“ 00000011 ” ) THENq = 1;ELSIF (Count_B =“ 00000100 ” ) THENq = 0;14END IF;END IF;END PRO
23、CESS;2、简述 moore 状态机和mealy 状态机的区别。输入次态次态状态现态输出输出逻辑寄存器逻辑现态Moore 型输入次态次态状态现态输出输出逻辑寄存器逻辑现态Mealy 型从输出的时序上看, Mealy 机的输出是当前状态和所有输入信号的函数,它的输出是在输入变化后立即发生的。 Moore 机的输出则仅为当前状态的函数,在输入发生变化时还必须等待时钟的到来,时钟使状态发生变化时才导致输出的变化。Moore型状态机:次态=f( 现状,输入 ) ,输出 =f (现状);Mealy型状态机:次态=f( 现状,输入 ) ,输出 =f (现状,输入) ;得分四、编程(共50 分)1、完成下
24、图所示的触发器。(本题 10 分)CLRQCLKDQNlibrary IEEE;entity VposDff is15port (CLK, CLR, D: inSTD_LOGIC;-2分Q, QN: out STD_LOGIC );-4分end VposDff;architecture VposDff_arch of VposDff isbeginprocess ( CLK, CLR)-6分beginif CLR=1 then Q = 0; QN =1;elsif CLKevent and CLK=1 thenQ = D; QN = not D;-8分end if;end process;-1
25、0分end VposDff_arch;2、完成以下4 位全加器代码(本题10 分)library IEEE;entity full_add isport (a,b:instd_logic_vector (3 downto 0);cin:instd_logic;cout:out std_logic;sum:out std_logic_vector (3 downto 0);end full_add;architecture full_add_arch of full_add iscomponent adderport (a,b,c:instd_logic;carr:out std_logic;s
26、um:out std_logic);end component;signal c1,c2,c3: std_logic;2分beginu0:adderport map(a(0),b(0),cin,c1,sum(0);4分u1:adderport map(a(1),b(1),c1,c2,sum(1);5分u2:adderport map(a(2),b(2),c2,c3,sum(2);6分16u3:adderport map(a(3),b(3),c3,cout,sum(3);10分end full_add_arch;3、补充完整如下代码,使之完成4 状态不断循环。 (本题 10 分 )ARCHITE
27、CTURE arc OF ss IStype states is (st0,st1,st2,st3);2分signal outc: states;4分BEGINPROCESS(clk)BEGINIF reset=1 thenoutc outc outc outc outc outc =st0;END CASE;end if;END PROCESS;END arc;4、设计异或门逻辑: (本题 20 分)如下异或门,填写右边的真值表。(此项 5 分)ABY000011101110其表达式可以表示为: (此项 5 分)17a这一关系图示如下:ab&yb&试编写完整的VHDL 代码实现以上逻辑。可以
28、采用任何描述法。(此项 10 分)library ieee;1分entity yihuo1 isport(a,b :in std_logic;y:out std_logic);end yihuo1;4分architecture yihuo1_behavior of yihuo1 isbegin7分process(a,b)y=a xor b;begin(第 2 种写法)if a=b theny=0;elsey=1;end if;end process;end yihuo1_behavior;10分182007/2008学年第一 学期末考试试题答案及评分标准(A 卷)得分一、 填空题( 20 分
29、, 每空格 1 分)1、 VHDL是否区分大小写?不区分。2 、 digital_ _8标识符合法吗?不合法。 12_bit 标识符合法吗?不合法。signal 标识符合法吗?不合法。3、结构体有三种描述方式,分别是数据流、行为、和结构化。4、请分别列举一个常用的库和程序包libraryieee、useieee.std_logic_1164.all。5、一个信号处于高阻 (三态) 时的值在 VHDL中描述为 Z。6、将一个信号 width定义为一个4 位标准逻辑向量为signal width : std_logic_vector(3 downto 0)。7、/= 是不相等操作符,功能是在条件判
30、断是判断操作符两端不相等。8、设 D0 为 0, D1为 1, D2为1, D3为0, D3 & D2 & D1 & D0的运算结果是“0110”,( D3 orD2)and(D1 and not D0)的运算结果是: 1。9、赋值语句是(并行/ 串行)并行执行的, if语句是(并行 / 串行)串行执行的。10、请列举三种可编程逻辑器件:EEPROM、GAL、FPGA。得分二、简答( 20 分,每小题5 分)1、简述 VHDL程序的基本结构。19库( 1)程序包( 2)实体( 3)结构体( 5) 若答出配置也可加1 分2、简述信号与变量的区别。信号延时赋值,变量立即赋值( 2)信号的代入使用
31、when 0000=data=10010001;datawhen 0001=data=10010010;datawhen 0010=data=10010011;datawhen 0011=data=10010100;datawhen 0100=data=10010101;datawhen 0101=data=10010110;datawhen 0110=data=10010111;datawhen 0111=data=10011000;data=10010000;end case;elsedata:=00000000; -data = “00000000”;( 8)end if;( 10)en
32、d process;end behave;21以上 architecture 中有哪些错误?请在原程序相应位置改正。得分四、编程(共50 分,除特殊声明,实体可只写出PORT语句,结构体要写完整)1、用 IF 语句编写一个二选一电路,要求输入a、 b, sel为选择端,输出q。(本题 10 分)Entity sel2 isPort (a,b : in std_logic;sel : in std_logic;q : out std_logic);End sel2;(3)Architecture a of sel2 isbeginif sel = 0 thenq = a;(6)elseq = b
33、;(9)end if;end a;(10)2、编写一个 4 位加法计数器VHDL程序的进程 (不必写整个结构框架),要求复位信号 reset低电平时计数器清零,变高后,在上升沿开始工作;输入时钟信号为clk ,输出为 q。(本题10 分)Process(reset,clk)(2)beginif reset = 0 thenq =“ 0000” ;(4)elsif clk event and clk = 1 then(6)22q = q + 1;(9)end if;end process;(10)3、填写完成一个 8-3线编码器的真值表( 5 分),并写出其 VHDL程序( 10 分)。8 -3
34、 线编码器真值表enby0y1y21000000000001000000100011000001000101000010000111000100001001001000001011010000001101100000001110xxxxxxxx高阻态entity eight_tri isport(b: in std_logic_vector(7 downto 0); en: in std_logic;y:outstd_logic_vector(2 downto 0);end eight_tri;(3)architecture a of eight_tri issignal sel: std_l
35、ogic_vector(8 downto 0); (4) beginsel=en & b;y= “ 000 ” when (sel=” 100000001 ” )else“ 001 ” when (sel= ” 100000010 ” )else “ 010 ” when (sel= ” 100000100 ” )else “ 011 ” when (sel= ” 100001000 ” )else “ 100 ” when (sel= ” 100010000 ” )else“ 101 ” when (sel= ” 100100000 ” )else “ 110 ” when (sel= ”
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030智慧港口规划与港口物流体系现代化建设研究
- 2025-2030智慧港口自动化控制系统设计与应用前景
- 2025-2030智慧消防项目投资评估及资本运作路径研究
- 2025-2030智慧消防系统行业市场现状应用发展投资评估规划分析报告
- 2025-2030智慧海洋探测行业市场分析及技术应用与资源开发报告
- 2025-2030智慧水利行业市场需求变化分析及企业投资策略方向研究报告
- 2025-2030智慧校园系统开发领域技术革新研究及行业投资机会
- 衢州市中医院孕期营养评估与指导能力考核
- 合肥市中医院瘘管护理技术专项考核
- 丽水市人民医院言语治疗疗效评估考核
- 教师职称考试试题及含答案
- 中国食物成分表2018年(标准版)第6版
- X线骨龄评测方法
- GB/T 15651.5-2024半导体器件第5-5部分:光电子器件光电耦合器
- JTG F80-1-2004 公路工程质量检验评定标准 第一册 土建工程
- (2024年)安吉白茶课件
- 粮食烘干合同
- 村级河长培训课件
- 判别分析 多元统计分析课件(人大何晓群)
- 涉稳事件典型案例分析报告
- 人教版数学5年级上册第四单元可能性单元练习
评论
0/150
提交评论