电子设计自动化eda期末考试试题及答案K12教育文档Word文件下载.docx
《电子设计自动化eda期末考试试题及答案K12教育文档Word文件下载.docx》由会员分享,可在线阅读,更多相关《电子设计自动化eda期末考试试题及答案K12教育文档Word文件下载.docx(14页珍藏版)》请在冰点文库上搜索。
(5)在QUARTUSⅡ中,工作文件夹允许是根目录.()
(6)STD_LOGIC中,‘0'
,‘1’,‘Z’,‘W'
可以综合.()
(7)在case语句中允许有相同选择值的条件句出现。
(8)在vhdl中常量具有全局性。
(9)在vhdl中变量可在结构体和进程中定义和使用。
(10)在进程中同一信号有多个赋值源,实际完成赋值的是最接近begin的信号。
二、简答题(15分)
1、简述fpga/cpld的设计流程。
(5分)
2、在vhdl中端口模式有那几种?
并说明数据流动方向。
(4分)
3、简述一般状态机的结构及各部分的作用。
(6分)
三、改错;
找到5处错误并改正(10分)
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYCNT4IS
PORT(CLK:
INSTD_LOGIC;
Q:
OUTSTD_LOGIC_VECTOR(3DOWNTO0))
END;
ARCHITECTUREbhvOFCNTIS
SIGNALQ1:
STD_LOGIC_VECTOR(3DOWNTO0);
BEGIN
PROCESS(CLK)
IFCLK'
EVENTANDCLKTHEN
Q1<
=Q1+1;
ENDPROCESS;
Q<
=Q1;
ENDbhv;
四、设计,要求写出完整的vhdl代码。
(65分)
1、16位硬件加法器,要求有进位输入和进位输出。
(15分)
2、七段数码管译码显示电路设计(数码管共阳极接法)(12分)
要求输入BCD码,输出驱动数码管显示0到9
3、十进制加法计数器,要求有复位功能。
(13分)
4、上升沿触发的D触发器,要求用三种方式描述,实体可只写一个。
5、有一自动售饮料机,每次可投入5角或1元硬币。
投入1元5角后自动给出1杯饮料;
投入2元,给出1杯饮料并找出5角硬币。
每次给出饮料后系统复位.用状态机完成此电路的vhdl设计。
(10分)
(1)适配器的功能是将综合器产生的网表文件配置于指定的目标器件中,产生最终的下载文件(√)
(2)硬IP提供设计的最终阶段产品:
掩模。
(√)
(3)MAX7000的一个LAB由16个宏单元的阵列组成。
(√)
(5)在QUARTUSⅡ中,工作文件夹允许是根目录。
(×
)
(6)STD_LOGIC中,‘0’,‘1’,‘Z’,‘W’可以综合。
(10)在进程中同一信号有多个赋值源,实际完成赋值的是最接近begin的信号.(√)
设计输入(1分)
HDL综合(1分)
布线布局(适配)(1分)
仿真(1分)
下载和硬件测试(1分)
2、在vhdl中端口模式有那几种?
“IN”单向只读模式,数据只能通过此端口被读入实体(1分)
“OUT”单向输出模式,数据通过此端口向实体外流出(1分)
“INOUT”输入输出双向端口(1分)
“BUFFER”与上一模式类似,但输入时,只允许内部回读输出的信号(1分)
说明部分
定义一枚举类型,元素为状态机的状态名,状态变量为信号,数据类型为该枚举类型(1.5分)
主控时序进程
负责状态机运转和在时钟驱动下负责状态转换的进程(1.5分)
主控组合进程
根据外部输入的控制信号和当前状态值确定下一状态取向,以及确定输出控制信号的内容(1.5分)
辅助进程
配合状态机工作的组合或时序进程(1。
5分)
三、改错;
USEIEEE。
STD_LOGIC_1164。
ALL;
STD_LOGIC_UNSIGNED.ALL;
Q:
OUTSTD_LOGIC_VECTOR(3DOWNTO0));
END;
ARCHITECTUREbhvOFCNT4IS
SIGNALQ1:
EVENTANDCLK='
1’THEN
Q1〈=Q1+1;
ENDIF;
ENDPROCESS;
=Q1;
ENDbhv;
每个2分
LIBRARYIEEE;
USEIEEE。
ALL;
USEIEEE.STD_LOGIC_UNSIGNED。
ENTITYADDER16IS
PORT(CIN:
INSTD_LOGIC;
A:
INSTD_LOGIC_VECTOR(15DOWNTO0);
B:
INSTD_LOGIC_VECTOR(15DOWNTO0);
S:
OUTSTD_LOGIC_VECTOR(15DOWNTO0);
COUT:
OUTSTD_LOGIC);
ENDADDER4B;
ARCHITECTUREbehavOFADDER16IS
SIGNALSINT:
STD_LOGIC_VECTOR(16DOWNTO0);
SIGNALAA,BB:
BEGIN
AA<
='
0’&A;
BB<
=’0'
&
B;
SINT〈=AA+BB+CIN;
S<
=SINT(15DOWNTO0);
COUT<
=SINT(16);
ENDbehav;
实体正确7分,能完成加法5分,进位正确3分
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164。
ENTITYDECL7SIS
PORT(A:
INSTD_LOGIC_VECTOR(3DOWNTO0);
LED7S:
OUTSTD_LOGIC_VECTOR(6DOWNTO0));
ARCHITECTUREoneOFDECL7SIS
BEGIN
PROCESS(A)
CASEAIS
WHEN"
0000”=〉LED7S<
=”1000000”;
0001”=〉LED7S<
=”1111001"
;
WHEN”0010”=〉LED7S〈=”0100100"
;
WHEN”0011"
=〉LED7S<
=”1001111"
0100"
=>
LED7S<
="
0110000”;
WHEN”0101”=〉LED7S<
=”0010010"
WHEN”0110”=>
LED7S〈=”0000010"
WHEN”0111”=>
LED7S〈=”1111000”;
1000"
0000000”;
WHEN”1001”=>
LED7S〈="
0010000"
WHENOTHERS=〉NULL;
ENDCASE;
实体5分,结构体格式正确3分,case语句正确2分,译码正确2分
3、十进制加法计数器,要求有复位功能.(13分)
USEIEEE.STD_LOGIC_1164。
ALL;
ENTITYCNT10IS
PORT(CLK,RST:
INSTD_LOGIC;
CQ:
OUTSTD_LOGIC_VECTOR(3DOWNTO0);
COUT:
OUTSTD_LOGIC);
ENDCNT10;
ARCHITECTUREbehavOFCNT10IS
PROCESS(CLK,RST,EN)
VARIABLECQI:
IFRST='
1’THENCQI:
=(OTHERS=>
'
0’);
ELSIFCLK’EVENTANDCLK='
1’THEN
IFCQI<
9THENCQI:
=CQI+1;
ELSECQI:
=(OTHERS=〉'
0'
);
ENDIF;
ENDIF;
CQ<
=CQI;
ENDPROCESS;
ENDbehav;
实体5分,结构体格式正确2分,能完成计数4分,能复位2分
4、上升沿触发的D触发器,要求用三种方式描述,实体可只写一个。
(1)LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYDFF1IS
PORT(CLK:
D:
OUTSTD_LOGIC);
ARCHITECTUREbhvOFDFF1IS
SIGNALQ1:
STD_LOGIC;
PROCESS(CLK)
IFCLK’EVENTANDCLK=’1’
THENQ1〈=D;
Q<
ENDbhv;
(2)LIBRARYIEEE;
PROCESS(CLK)
IFCLK=’1'
ANDCLK'
LAST_VALUE=’0’
THENQ〈=D;
ENDPROCESS;
ENDbhv;
(3)LIBRARYIEEE;
ALL;
ENTITYDFF3IS
PORT(CLK,D:
ARCHITECTUREbhvOFDFF3IS
STD_LOGIC;
IFrising_edge(CLK)
THENQ1<
=D;
每一个5分。
投入1元5角后自动给出1杯饮料;
LIBRARYIEEE;
ENTITYYLJIS
PORT(T5,T10:
INSTD_LOGIC;
CLK:
LY:
OUTSTD_LOGIC;
QIAN:
OUTSTD_LOGIC;
);
END;
ARCHITECTUREbehavOFYLJIS
TYPEstatesIS(st0,st1,st2);
SIGNALcurrent_state,next_state;
SIGNALT:
STD_LOGIC_VECTOR(1DOWNTO0);
REG:
T<
=T10&
T5;
IF(CLK’EVENTANDCLK=’1'
)THENcurrent_state〈=next_state;
ENDPROCESSREG;
COM:
PROCESS(current_state,T)
BEGIN
CASEcurrent_stateIS
WHENst0=〉IFT=”00”THEN
next_state<
=st0;
LY〈='
;
QIAN<
=’0’;
ELSIFT="
01”THEN
=st1;
LY〈='
0’;
ELSIFT=”10"
THEN
next_state〈=st2;
LY〈=’0’;
QIAN〈=’0’;
EDNIF;
WHENst1=>
IFT=”00"
THEN
next_state〈=st1;
LY<
;
ELSIFT=”10”THEN
next_state〈=st0;
LY〈=’1'
=’0’;
EDNIF;
WHENst2=〉;
IFT=”00”THEN
LY〈=’0’;
QIAN〈=’0’;
LY<
=’1'
next_state〈=st0;
=’1’;
QIAN〈=’1’;
WHENOTHERS=〉next_state<
=st0;
ENDPROCESSCOM;
ENDbehav;
试题描述正确4分,机构体中主控时序进程2分,组合进程中状态转换2分,输出正确2分.
任 课
教 师