武汉大学计算机学院本科.docx
《武汉大学计算机学院本科.docx》由会员分享,可在线阅读,更多相关《武汉大学计算机学院本科.docx(13页珍藏版)》请在冰点文库上搜索。
武汉大学计算机学院本科
武汉大学计算机学院本科2010~2011学年第二学期考试试卷(A卷)
课程名称:
大规模集成电路(限120分钟)
专业:
本科
姓名:
学号:
班号:
说明:
⒈答题书写在专用答题纸上,其他任何答题无效。
⒉学号、姓名等项填写不规范,不准确,一律视为废卷,不计成绩。
一填空题(30分,每小题3分)
1、VHDL属于描述语言。
(从A、B、C、D中单项选择)
A.普通硬件B.行为C.高级D.低级
2、基于硬件描述语言HDL的数字系统设计目前最常用的设计方法称为设计方法。
(从A、B、C、D中单项选择)
A.自底向上B.顶层C.自顶向下D.积木式
3、EDA设计的输入方式有、和方式。
4、EDA的设计验证包括、和三个过程型。
5、在VHDL的IEEE标准库中,预定义的标准逻辑位数据STD_LOGIC有 种逻辑值。
6、在VHDL语句中,PROCESS结构是由 语句组成的。
7、signalb:
integerstd_logic_vector(15downto0);
………
forIinb’rangeloop
………
for语句的循环次数为 次。
8、VHDL的标识符名必须以字母开头,后跟若干字母、数字或单个下划线构成,但最后不能为 。
9、元件例化是将预先设计好的设计实体作为一个 ,连接到当前设计实体的指定端口。
10、一个N输入的查找表,需要SRAM存储N个输入构成的 ,需要占用
个SRAM单元。
二简答题(35分,每小题5分)
1、端口模式除了INOUT和BUFFER外,还有哪几种模式?
INOUT和BUFFER有什么区别?
2、填写下表中的
(1)—(6),给出信号和变量的异同点?
数据对象
基本用法
适用范围
赋值表示和特性
Signal
(1)
(3)
(5)
Variable
(2)
(4)
(6)
3、执行下列语句后Q的值是多少?
……
SIGNALE:
STD_LOGIC_VECTOR(2TO5);
SIGNALQ:
STD_LOGIC_VECTOR(9DOWNTO2);
……
E<=(2=>’0’,4=>’0’,OTHERS=>’1’);
Q<=(2=>E
(2),4=>E(3),5=>’1’,7=>E(5),OTHERS=>E(4));
……
4、逻辑阵列块LAB包括哪几个部分?
5、如何实现寄存器配平?
6、构成一个完整的VHDL语言程序的五个基本结构是什么?
7、一般有限状态机包含哪几个部分?
三在横线处补齐相应语句,使下面语句构成完整程序。
(本题10分,每空1分)
图1第三大题的图
LIBRARYIEEE;
USEIEEE.
(1);
ENTITYMUX21AIS
PORT(a,b:
INSTD_LOGIC;
s:
INSTD_LOGIC;
y:
OUTSTD_LOGIC);
ENDENTITY;
ARCHITECTUREART1OF
(2)IS
BEGIN
PROCESS(A,B,S)
BEGIN
IFs=’1’THENy<=a;
(3)y<=b;
(4)
(5)
ENDARCHITECTURE;
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYMUXKIS
PORT(a1,a2,a3,s0,s1:
INSTD_LOGIC;
outy:
OUTSTD_LOGIC);
ENDENTITYMUXK;
ARCHITECTUREART2OFMUXKIS
COMPONENTMUX21A
(6)
ENDCOMPONENT;
(7)TMP:
STD_LOGIC;
BEGIN
PROCESS(a1,a2,a3,s0,s1)
BEGIN
U1:
MUX21A(8)
U2:
MUX21A(9)
(10)
ENDARCHITECTUREART2;
四程序设计(25分)
1设计一个带有同步并行预置功能的8位左移移位寄存器。
(10分)
2根据图2的电路图写出完整的VHDL程序。
(5分)
图2第四大题2小题的图
3假如某个FPGA芯片上连接了一个LED数码管,请你用VHDL语言设计一个输入是0-9中的某个数字,能将该数字在数码管上显示出来的程序。
数码管的译码表如表1。
(10分)
注:
译码的功能是实现如果在数码管上要显示某一数字,FPGA就应该输出这个数字的译码值,这样数码管才能显示该数字。
如在数码管上要显示“1”,FPGA就应该输出“0000110”给数码管。
表1显示数字与译码值对应关系表
要显示的数字
译码值
要显示的数字
译码值
要显示的数字
译码值
0
0111111
4
1100110
8
1111111
1
0000110
5
1101101
9
1101111
2
1011011
6
1111101
3
1001111
7
0000111
武汉大学计算机学院本科2010~2011学年第二学期考试试卷(A卷)
课程名称:
大规模集成电路(限120分钟)
专业:
本科
姓名:
学号:
班号:
说明:
⒈答题书写在专用答题纸上,其他任何答题无效。
⒉学号、姓名等项填写不规范,不准确,一律视为废卷,不计成绩。
一填空题(30分,每小题3分)
1、VHDL属于B描述语言。
(从A、B、C、D中单项选择)
A.普通硬件B.行为C.高级D.低级
2、基于硬件描述语言HDL的数字系统设计目前最常用的设计方法称为C设计方法。
(从A、B、C、D中单项选择)
A.自底向上B.顶层C.自顶向下D.积木式
3、EDA设计的输入方式有图形、文本和状态机方式。
4、EDA的设计验证包括功能仿真、时序仿真和器件测试三个过程型。
5、在VHDL的IEEE标准库中,预定义的标准逻辑位数据STD_LOGIC有 9 种逻辑值。
6、在VHDL语句中,PROCESS结构是由 顺序 语句组成的。
7、signalb:
integerstd_logic_vector(15downto0);
………
forIinb’rangeloop
………
for语句的循环次数为 16 次。
8、VHDL的标识符名必须以字母开头,后跟若干字母、数字或单个下划线构成,但最后不能为 下划线 。
9、元件例化是将预先设计好的设计实体作为一个 元件 ,连接到当前设计实体的指定端口。
10、一个N输入的查找表,需要SRAM存储N个输入构成的 真值表 ,需要占用 2^N
个SRAM单元。
二简答题(35分,每小题5分)
1、端口模式除了INOUT和BUFFER外,还有哪几种模式。
INOUT和BUFFER有什么区别?
IN、OUT
INOUT可以做输出和输入用,BUFFER只能用在带反馈的输入,不能用于输出。
2、填写下表中的
(1)—(6),给出信号和变量的异同点?
数据对象
基本用法
适用范围
赋值表示和特性
Signal
(1)电路中信号连线
(3)整个结构体内
(5)<=进程最后赋值
Variable
(2)进程中数据存储
(4)本进程中
(6):
=立即赋值
3、执行下列语句后Q的值等于00101100。
……
SIGNALE:
STD_LOGIC_VECTOR(2TO5);
SIGNALQ:
STD_LOGIC_VECTOR(9DOWNTO2);
……
E<=(2=>’0’,4=>’0’,OTHERS=>’1’);
Q<=(2=>E
(2),4=>E(3),5=>’1’,7=>E(5),OTHERS=>E(4));
……
A.“11011011”B.“00110100”C.“11011001”D.“00101100”
四程序设计(25分)
1设计一个带有同步并行预置功能的8位左移移位寄存器。
(10分)
参考答案:
libraryIEEE;
useIEEE.STD_LOGIC_1164.all;
entityLshifteris
Port(clk,rst,load:
instd_logic;
din:
instd_logic_vector(7downto0);
qb:
outstd_logic);
endLshifter;
architectureart1ofLshifteris
Begin
Process(clk,rst,load)
Variablereg8:
std_logic_vector(7downto0);
Begin
Ifload=’1’thenreg8:
=(others=’0’);
IFCLK’EVENTANDCLK=’1’THEN
Ifload=’1’thenreg8:
=din;
Elsereg8(7downto1):
=reg8(6downto0);
Endif;
Endif;
QB<=REG8(7);
Endprocess;
endart1;
2根据图2的电路图写出完整的VHDL程序。
(5分)
图2第四大题2小题的图
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYHADIS
PORT(a:
INSTD_LOGIC;
b:
INSTD_LOGIC;
c:
OUTSTD_LOGIC;
d:
OUTSTD_LOGIC);
ENDENTITYHAD;
ARCHITECTUREfh1OFHADIS
BEGIN
c<=NOT(aNANDb);
d<=(aORb)AND(aNANDb);
ENDARCHITECTUREfh1;
3假如某个FPGA芯片上连接了一个LED数码管,请你用VHDL语言设计一个输入是0-9中的某个数字,能将该数字在数码管上显示出来的程序。
数码管的译码表如表1。
(10分)
4、逻辑阵列块LAB包括哪几个部分?
LE、LE进位链和级联链、LAB控制信号、LAB局部互联、LUT链和寄存器链
5、如何实现寄存器配平?
在设计中如果其中的两个组合逻辑的延时差别过大,那么它的总体工作频率取决于延时做大的块,可以将延时大的块的部分功能转移到延时小的块中,使两者延时相差较小,这样就可以提高电路的总体工作频率。
6、构成一个完整的VHDL语言程序的五个基本结构是什么?
实体(ENTITY)、结构体(ARCHITECURE)、配置(CONFIGURATION)、库(LIBRARY)、程序包(PACKAGE)。
7、一般有限状态机包含哪几个部分?
说明部分,主控时序进程,主控组合进程和辅助进程。
三在横线处补齐相应语句,使下面语句构成完整程序。
(本题10分,每空1分)
图1第三大题的图
LIBRARYIEEE;
USEIEEE.
(1)STD_LOGIC_1164.ALL;
ENTITYMUX21AIS
PORT(a,b:
INSTD_LOGIC;
s:
INSTD_LOGIC;
y:
OUTSTD_LOGIC);
ENDENTITY;
ARCHITECTUREART1OF
(2)MUX21AIS
BEGIN
PROCESS(A,B,S)
BEGIN
IFs=’1’THENy<=a;
(3)ELSEy<=b;
(4)ENDIF;
(5)ENDPROCESS;
注:
译码的功能是实现如果在数码管上要显示某一数字,FPGA就应该输出这个数字的译码值,这样数码管才能显示该数字。
如在数码管上要显示“1”,FPGA就应该输出“0000110”给数码管。
表1显示数字与译码值对应关系表
要显示的数字
译码值
要显示的数字
译码值
要显示的数字
译码值
0
0111111
4
1100110
8
1111111
1
0000110
5
1101101
9
1101111
2
1011011
6
1111101
3
1001111
7
0000111
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYLED7SEGIS
PORT(A:
INSTD_LOGIC_VECTOR(3DOWNTO0);
CLK:
INSTD_LOGIC;
LED7S:
OUTSTD_LOGIC_VECTOR(6DOWNTO0));
ENDLED7SEG;
ARCHITECTUREoneOFLED7SEGIS
SIGNALTMP:
STD_LOGIC_VECTOR(3DOWNTO0);
BEGIN
SYNC:
PROCESS(CLK,A)
BEGIN
IFCLK'EVENTANDCLK='1'THEN
TMP<=A;
ENDIF;
ENDPROCESS;
OUTLED:
PROCESS(TMP)
BEGIN
CASETMPIS
WHEN"0000"=>LED7S<="0111111";
WHEN"0001"=>LED7S<="0000110";
WHEN"0010"=>LED7S<="1011011";
WHEN"0011"=>LED7S<="1001111";
WHEN"0100"=>LED7S<="1100110";
WHEN"0101"=>LED7S<="1101101";
WHEN"0110"=>LED7S<="1111101";
WHEN"0111"=>LED7S<="0000111";
WHEN"1000"=>LED7S<="1111111";
WHEN"1001"=>LED7S<="1101111";
WHENOTHERS=>LED7S<="0000000";
ENDCASE;
ENDPROCESS;
ENDone;
ENDARCHITECTURE;
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYMUXKIS
PORT(a1,a2,a3,s0,s1:
INSTD_LOGIC;
outy:
OUTSTD_LOGIC);
ENDENTITYMUXK;
ARCHITECTUREART2OFMUXKIS
COMPONENTMUX21A
(6)PORT(a,b:
INSTD_LOGIC;
s:
INSTD_LOGIC;
y:
OUTSTD_LOGIC);
ENDCOMPONENT;
(7)SIGNALTMP:
STD_LOGIC;
BEGIN
PROCESS(a1,a2,a3,s0,s1)
BEGIN
U1:
MUX21A(8)PORTMAP(a=>a2,b=>b3,s0=>s,Y=>TMP);
U2:
MUX21A(9)PORTMAP(a=>a1,b=>TMP,s=>s1,Y=>outy);
(10)ENDPROCESS;
ENDARCHITECTUREART2;