FPGA大学电子设计自动化(EDA)期末试题_第1页
FPGA大学电子设计自动化(EDA)期末试题_第2页
FPGA大学电子设计自动化(EDA)期末试题_第3页
FPGA大学电子设计自动化(EDA)期末试题_第4页
FPGA大学电子设计自动化(EDA)期末试题_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、标准答案与评分细则(卷面总分:80分)一 名词解释(2分×6题)(评分标准:给出正确英文的2分/题,仅给中文解释1分/题)1 EDA:Electronic Design Automation2 FPGA:Field Programmable Gate-Array3 ASIC:Application Specific Integrated Circuit4 SOC:System On a Chip5 DSP:Digital Signal Processor/Processing6 VHDL:VHSIC (Very High Speed Integrated Circuit Hardwa

2、re Description Language二 填空题(每空1分,共18分)(评分标准:填写正确 1分/空)1 VHDL程序的5个组成部分分别为:实体(Entity )、构造体(Architecture )、配置(Configuration )、包集合(Package )、库(Library )。2 VHDL中操作符“&”的具体名称是:并置运算符,它的基本功能是:用于位的连接,即低位宽组成高位宽数据。3 VHDL描述行为的语句中有并行语句和顺序语句之分。只能当顺序语句使用的描述语句有很多,试列举出其中三种:IF 语句、CASE 语句、FOR 循环语句(或:WHILE 循环语句、无条件

3、循环LOOP 语句)。4 Active-HDL软件工具编程设计录入方法最基本的三种:HDE (或:HDL 编辑器、HDLEditor )、BDE (或:模块图编辑、Block Diagram Editor)、FSM (或:状态图编辑器、State Diagram Editor )。5 VHDL的并行信号赋值语句,除了常见的一般信号赋值语句(如:C<=A and B;)外,还有两种形式,它们分别是:条件信号赋值语句(或:条件型)、选择信号赋值语句(或:选择型)。6 VHDL结构描述是实体构造的层次化、结构化的表现。试列举出其中两种描述结构的语句COMPNENT 语句(或:元件语句)、GEN

4、ERATE 语句(或:生成语句)。(也可填:GENERIC 语句/参数说明语句、端口映射语句等)。7 常用的EDA 逻辑综合工具有很多,请至少举出一种能综合VHDL 语言的综合工具名称:FPGA Express (或:Synpolify 、Synplify Pro、FPGA ComplierII等)。三 简答题(2分×4题)(评分标准:得分点分细目标在答案正文内。)1 简述Top-Down 设计方法及其基本步骤。【参考答案】:所谓Top-Down 的设计过程是指从系统硬件的高层次抽象描述向最底层物理描述的一系列转换过程1分。具体讲这一过程由功能级、行为级描述开始;寄存器传输(RTL

5、)级描述为第一个中间结果;再将RTL 级描述由逻辑综合得到网表(Net-list )或电路图;由网表即可自动生成现场可编程门阵列(FPGA )/复杂可编程逻辑器件(CPLD )或专用集成电路(ASIC ),从而得到电路与系统的物理实现1分。2 什么是IP ?IP 主要有哪几种?各有什么特点?【参考答案】:IP 即Intellectual Property的缩写,直译为:知识产权。IP 是用于ASIC 、ASSP 、PLD等当中,并且是。IP 核是具有知识产权(Intellectual Property)的集成电路芯核(预先设计好的电路功能模块)的简称,其作用是把一组拥有知识产权的电路设计集合在

6、一起,构成芯片的基本单位,以供设计时“搭积木”之用。1分IP 分为软核、固核和硬核。0.5分软IP 用计算机高级语言的形式描述功能块的行为,但是并不涉及用什么电路和电路元件实现这些行为。软IP 的设计周期短,设计投入少,由于不涉及物理实现,为后续设计留有很大的发挥空间,增大了IP 的灵活性和适应性。固IP 是完成了综合的功能块,有较大的设计深度,以网表的形式提交客户使用。硬IP 提供设计的最终阶段产品:掩膜。随着设计深度的提高,后续工序所需要做的事情就越少,当然,灵活性也就越少。0.5分3 请从申明格式、赋值符号、赋值生效时间、作用范围等方面对信号和变量进行比较分析。【参考答案】: 申明时关键

7、字不一样,变量为:VARIABLE ;信号为:SIGNAL 。但申明时赋初值均用“:”符号。0.5分赋值符号不同:信号赋值用“”;变量赋值用“:”。0.5分赋值生效时间:信号赋值延时后生效;变量赋值立即生效。0.5分声明引用范围:信号在构造体内(进程外)申明,整个构造体内有效;变量主要在进程内申明,只在进程内有效。0.5分4 顺序语句和并行语句有什么区别?VHDL 编程中需要注意些什么?【参考答案】:并行语句主要有一般信号赋值语句、条件信号赋值语句、选择信号赋值语句;顺序语句主要有顺序控制语句(如:if 语句、case 语句、循环语句等)和wait 语句。并行语句存在于进程外,并发执行,与语句

8、所处的位值无关;顺序语句存在于进程内,语句按顺序执行,与语句所处的位值有关。1分VHDL 编程中,顺序控制语句(如:if 语句、case 语句、循环语句等)必须存在于进程内。1分四 判断改错题(1分×6题)(评分标准:给出正确答案1分/题;答案基本正确0.5分/题。)1 已知A 和B 均为STD_LOGIC类型的信号,请判断下面的程序片断:ARCHITECTURE test OF test ISBEGINIF (A = '1' THENB <= '0' ;ELSEB <= '1' ;END IF ;END test ;【参考

9、答案】:IF 语句应该存在于进程PROCESS 内。2 请判断下面给出的信号申明语句:SIGNAL A, B :STD_LOGIC <= '0' ;【参考答案】:信号申明时赋初值的“<=”符号应改用“:=”符号。3 已知start 为STD_LOGIC类型的信号,请判断下面的程序片断:PROCESS (startBEGINVARIABLE sum : INTEGER := 0 ;FOR i IN 1 TO 9 LOOPsum := sum + i ;END LOOP ;END PROCESS ;【参考答案】:变量VARIABLE 的申明语句应该放在BEGIN 语句之

10、前。4 已知Q 均为STD_LOGIC类型的信号,请判断下面的语句:Q <= 'z' ;【参考答案】:高阻态符号应该由小写的z 改为大写的Z 。5 已知A 和B 均为STD_LOGIC类型的输入端口,请判断下面的程序片断:ARCHITECTURE test OF test ISBEGINA <= B ;END test ;【参考答案】:A 是输入端口,不能被赋值。6 已知sel 是STD_LOGIC_VECTOR(1 DOWNTO 0类型信号,而a 、b 、c 、d 、q 均为STD_LOGIC类型信号,请判断下面给出的CASE 语句:CASE sel ISWHEN

11、 “00” => q <= a ;WHEN “01” => q <= b ;WHEN “10” => q <= c ;WHEN “11” => q <= d ;END CASE ;【参考答案】:CASE 语句缺“WHEN OTHERS”语句。五 编程题(共计36分)(评分标准:得分点分细目标在答案正文。)1 (本题6分)请用VHDL 设计一个三输入与非门。【参考答案】:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ; -1分ENTITY test1 IS -2分PORT(A, B, C : IN STD_LO

12、GIC ;Q : OUT STD_LOGIC ;END test1 ;ARCHITECTURE test1 OF test1 IS -1分BEGINQ <= not (A and B and C); -2分END test1 ;2 (本题8分)请用VHDL 设计一个对时钟上升沿敏感的带同步复位的十进制加一计数器 。【参考答案】:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; -1分ENTITY test2 IS -1分PORT(clk,clr : IN STD_LOGIC;Q : OUT

13、STD_LOGIC_VECTOR(3 downto 0;END test2;ARCHITECTURE test2 OF test2 IS -1分SIGNAL count_4 : STD_LOGIC_VECTOR(3 downto 0;BEGINQ<=count_4;PROCESS(clk -1分BEGINIF (clk' EVENT AND clk='1' THEN -1分IF(clr='1' THEN -1分 count_4<="0000"ELSIF(count_4="1001"THEN -1分cou

14、nt_4<="0000"ELSEcount_4<=count_4 + 1; -1分 END IF;END IF;END PROCESS;END test2;3 (本题6分)下图给出了一个计数器级联电路的模块框图。请参考给出的模块框图编写该计数器级联电路的顶层VHDL 程序的实体。【参考答案】:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; -1分ENTITY test3 IS -1分PORT(CLK, RESET, GATE : IN STD_LOGIC; -2分BCD_A,BCD_B,BCD_C,BCD_D : OUT ST

15、D_LOGIC_VECTOR(3 downto 0; -2分END test3;4 (本题7分)请用VHDL 设计一个二选一的选择器。要求该选择器的被选择对象和输出结果都是4位二进制码数据。【参考答案】:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; -1分ENTITY test4 IS -1分PORT(sel : IN STD_LOGIC;A, B : IN STD_LOGIC_VECTOR(3 downto 0 ; -1分Q : OUT STD_LOGIC_VECTOR(3 downto 0 ;END test4;ARCHITECTURE test4 O

16、F test4 IS -1分BEGINPROCESS(A, B, sel BEGINCASE sel IS -2分WHEN '1' => Q <= A ;WHEN OTHERS => Q <= B ; -1分END CASE ;END PROCESS ;END test4 ;CLK FULLEN Q(3:0 RESET CLK FULLEN Q(3:0 RESET CLK FULLEN Q(3:0 RESET CLK FULL EN Q(3:0 RESET A0 Y A1 A0 YA1 A0 YA1 5 (本题9分)数字比较器的应用十分广泛,从算术的比较

17、、排序,到一般逻辑电路的控制, 比如报警器、重量控制、亮度控制、温度控制等。比较器是一个使用率非常高的电路。请用 VHDL语言设计一个八位比较器,该比较器具有以下特征: 被比较信号A、B均为八位信号; 该比较器带异步复位端reset; 比较器输出信号有三个:AGTB、AEQB、ALTB。其中: 当A大于B时,AGTB=1,否则AGTB=0; 当A等于B时,AEQB=1,否则AEQB =0; 当A小于B时,ALTB=1,否则ALTB =0; 【参考答案】: library IEEE; use IEEE.STD_LOGIC_1164.all; -1分 entity test5 is port(cl

18、k, reset : in STD_LOGIC; A, B : in STD_LOGIC_VECTOR(7 downto 0; -1分 AGTB,AEQB,ALTB : out STD_LOGIC; end test5; architecture test5 of test5 is begin PROCESS(clk,reset BEGIN IF(reset='1' THEN -1分 AGTB<='0' AEQB<='0' ALTB<='0' ELSIF (clk' EVENT AND clk='1' THEN IF(A &

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论