中北大学硬件描述语言0809A卷标准答案剖析.docx

上传人:b****1 文档编号:11018468 上传时间:2023-05-28 格式:DOCX 页数:9 大小:24.18KB
下载 相关 举报
中北大学硬件描述语言0809A卷标准答案剖析.docx_第1页
第1页 / 共9页
中北大学硬件描述语言0809A卷标准答案剖析.docx_第2页
第2页 / 共9页
中北大学硬件描述语言0809A卷标准答案剖析.docx_第3页
第3页 / 共9页
中北大学硬件描述语言0809A卷标准答案剖析.docx_第4页
第4页 / 共9页
中北大学硬件描述语言0809A卷标准答案剖析.docx_第5页
第5页 / 共9页
中北大学硬件描述语言0809A卷标准答案剖析.docx_第6页
第6页 / 共9页
中北大学硬件描述语言0809A卷标准答案剖析.docx_第7页
第7页 / 共9页
中北大学硬件描述语言0809A卷标准答案剖析.docx_第8页
第8页 / 共9页
中北大学硬件描述语言0809A卷标准答案剖析.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

中北大学硬件描述语言0809A卷标准答案剖析.docx

《中北大学硬件描述语言0809A卷标准答案剖析.docx》由会员分享,可在线阅读,更多相关《中北大学硬件描述语言0809A卷标准答案剖析.docx(9页珍藏版)》请在冰点文库上搜索。

中北大学硬件描述语言0809A卷标准答案剖析.docx

中北大学硬件描述语言0809A卷标准答案剖析

中北大学

试题答案及评分标准

硬件描述语言及器件课程

(课程名称须与教学任务书相同)

2008/2009学年第一学期

试题类别A

拟题日期2008-12-1拟题教师李圣昆

课程编号06060408教师编号1180011

使用班级06060241/06060242

备注:

试题答案要求按指定规格计算机打印,并将其文本与电子稿一并上交:

①校级考试课程交评估与考试中心命题科;

②院级考试课程交院教务科。

2008/2009学年第一学期末考试试题答案及评分标准

(A卷)

硬件描述语言及器件

使用班级:

06060241/06060242

总分

得分

一、填空题(20分,每空格1分)

1、试举出两种可编程逻辑器件CPLD、FPGA。

2、VHDL程序的基本结构包括库、程序包、实体

和结构体。

3、more__11标识符合法吗?

不合法。

8bit标识符合法吗?

不合法。

variable标识符合法吗?

不合法。

4、信号的代入通常用<=,变量用:

=。

5、表示‘0’‘1’;两值逻辑的数据类型是bit(位),表示‘0’‘1’‘Z’等九值逻辑的数据类型是std_logic(标准逻辑),表示空操作的数据类型是NULL。

6、定义一个信号a,数据类型为4位标准逻辑向量signala:

std_logic_vector(3downto0定义一个变量b,数据类型为2位位向量variableb:

bit_vector(1downto0。

7、<=是小于等于关系运算符,又是赋值运算操作符。

8、设D0为'1',D1为'0',D2为'1',D3为'0',D3&D2&D1&D0的运算结果是“0101”,D1&D2&D3&D4的运算结果是“1010”。

得分

二、判断对错并给出判断依据(20分,每小题5分,判断对错2分,给出正确答案3分)

1、进程语句中,不管在何时,process语句后面必须列出敏感信号(×)

包含wait语句的进程语句可不列出敏感信号。

2、VHDL语言与计算机C语言的没有差别。

(×)

●运行的基础

–计算机语言是在CPU+RAM构建的平台上运行

–VHDL设计的结果是由具体的逻辑、触发器组成的数字电路

●执行方式

–计算机语言基本上以串行的方式执行

–VHDL在总体上是以并行方式工作

●验证方式

–计算机语言主要关注于变量值的变化

–VHDL要实现严格的时序逻辑关系

3、在结构体中定义一个全局变量(VARIABLES),可以在所有进程中使用。

(×)

“变量(VARIABLES)”改为“信号”。

4、Moore状态机输出只是状态机当前状态的函数,Mealy状态机输出为有限状态机当前值和输入值的函数(√)

得分

三、判断题(10分)

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_arith.all;

useieee.std_logic_unsigned.all;

以上库和程序包语句有无错误?

有,有的话请在原程序相应位置改正。

(2

entityromis

port(

addr:

instd_logic_vector(0to3;

ce:

instd_logic;

data:

outstd_logic_vector(7downto0;

endrom;

以上port语句有无错误?

有,有的话请在原程序相应位置改正。

(4

architecturebehaveofromis

begin

process(ce,addr)(6

begin

ifce='0'then

caseaddris

when"0000"=>

data<="10001001";

when"0001"=>

data<="10001010";

when"0010"=>

data<="10001011";

when"0011"=>

data<="10001100";

when"0100"=>

data<="10001101";

when"0101"=>

data<="10001110";

when"0110"=>

data<="10001111";

when"0111"=>

data<="10010000";

when"1000"=>

data<="10010001";

when"1001"=>

data<="10010010";

when"1010"=>

data<="10010011";

when"1011"=>

data<="10010100";

when"1100"=>

data<="10010101";

when"1101"=>

data<="10010110";

when"1110"=>

data<="10010111";

whenothers=>

data<="10011000";

endcase;

else

data:

="00000000";--data<=“00000000”;(8

endif;(10

endprocess;

endbehave;

以上architecture中有哪些错误?

请在原程序相应位置改正。

得分

四、编程题(共50分)

1、根据一下四选一程序的结构体部分,完成实体程序部分(本题8分)

entityMUX4is

port((2

s:

instd_logic_vector(1downto0;(4

d:

instd_logic_vector(3downto0;(6

y:

outstd_logic(8

;

endMUX4;

architecturebehaveofMUX4is

begin

process(s

begin

if(s="00"then

y<=d(0;

elsif(s="01"then

y<=d(1;

elsif(s="10"then

y<=d(2;

elsif(s="11"then

y<=d(3;

else

null;

endif;

endprocess;

endbehave;

2、编写一个数值比较器VHDL程序的进程(不必写整个结构框架),要求使能信号g低电平时比较器开始工作,输入信号p=q,输出equ为‘0’,否则为‘1’。

(本题10分)

process(p,q(2

begin

ifg='0'then(4

ifp=qthen

equ<='0';(6

else

equ<='1';(8

endif;

else

equ<='1';(10

endif;

endprocess;

3、填写完成一个8-3线编码器的VHDL程序(16分)。

Libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_arith.all;

useieee.std_logic_unsigned.all;

entityeight_triis

port(

b:

instd_logic_vector(7downto0;

(2)

en:

instd_logic;

y:

outstd_logic_vector(2downto0(4)

;

endeight_tri;

architectureaofeight_triis(6)

signalsel:

std_logic_vector(8downto0;

begin

sel<=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=”100010000”else(12)

“101”when(sel=”100100000”else

“110”when(sel=”101000000”else(14)

“111”when(sel=”110000000”else(16)

“zzz”;

enda;

4、图中给出了4位逐位进位全加器,请完成其VHDL程序。

(本题16分)

libraryIEEE;

useIEEE.std_logic_1164.all;

useIEEE.std_logic_arith.all;

useIEEE.std_logic_unsigned.all;

entityfull_addis

port(

a,b:

instd_logic_vector(3downto0;

(2)

carr:

inoutstd_logic_vector(4downto0;

sum:

outstd_logic_vector(3downto0

;

endfull_add;

architecturefull_add_archoffull_addis

componentadder(4)

port(

a,b,c:

instd_logic;

carr:

inoutstd_logic;

sum:

outstd_logic(6)

;

endcomponent;

begin

carr(0<='0';

u0:

adderportmap(a(0,b(0,carr(0,carr(1,sum(0;

u1:

adderportmap(a(1,b(1,carr(1,carr(2,sum(1;(8)(10)

u2:

adderportmap(a(2,b(2,carr(2,carr(3,sum(2;(12)

u3:

adderportmap(a(3,b(3,carr(3,carr(4,sum(3;(14)(16)

endfull_add_arch;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2