EDA技术及应用+朱正伟课后习题答案

上传人:m**** 文档编号:487743803 上传时间:2022-12-05 格式:DOC 页数:4 大小:40.50KB
返回 下载 相关 举报
EDA技术及应用+朱正伟课后习题答案_第1页
第1页 / 共4页
EDA技术及应用+朱正伟课后习题答案_第2页
第2页 / 共4页
EDA技术及应用+朱正伟课后习题答案_第3页
第3页 / 共4页
EDA技术及应用+朱正伟课后习题答案_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《EDA技术及应用+朱正伟课后习题答案》由会员分享,可在线阅读,更多相关《EDA技术及应用+朱正伟课后习题答案(4页珍藏版)》请在金锄头文库上搜索。

1、第五章1试说明实体端口模式BUFFE和INOUT的不同之处 的数据对象有哪几种它们之间有什么不同3说明下列各定义的意义:SIGNALa , b , c : BIT 0=CONSTNT TIME1 , TIME2 : TIME : 20 ns ; VARIABLEx , y , z : STD_LOG= x;4什么是重载函数重载运算符有何用处如何调用重载运算符函数5数据类型BIT INTEGER BOO分别定义在哪个库中哪些库和程序包总是可 见的6函数和过程有什么区别7若在进程中力叭WAIT语句,应注意哪几个方面的问题8哪些情况下需用到程序包STD_LOGIC_UNSIGN举一例。9为什么说一条

2、并行赋值语句可以等效为一个进程如果是这样的话,怎样实现敏 感言号的检测10比较CAS的和WITH_SELE语句,叙述它们的异同点11将以下程序段转换为WHENELSS句:PROCESS (a , b ,c ,d)BEGINIF aAND bTHEN NEXTT =01; ELSEIFHEN NEXT1 =d; ELSEIFTTHEN NEXT1 =c;ELSE NEXT1101T; END IF;END PROCESS;12试用并行信号赋值语句分别描述下列器件的功能:(1) 3-8译码器(2) 8选1数据选择器13禾U用生成语句描述一个由几个一位全加器构成n位加法器(n的默认值为4)。 14用

3、VHD设计输出占空比为50%勺1000分频器。参考答案1. 答:BUFFER端口:缓冲模式,具有读功能的输出模式,即信号 输出到实体外部,但同时也在内部反馈使用,不允许作为双向端 口使用。而INOUT端口:双向模式,即信号的流通是双向的,既可 以对此端口赋值,也可以通过此端口读入数据。2. 答:VHDL的数据对象有三种:信号、变量、常量。 它们之间的的区别如下:信号赋值至少有3延时,而变量和常量没有;信号除当前值夕卜,有许多相关信息,变量只有当前值,常量的值在设计实体中 始终不变;进程对信号敏感而对变量及常量不敏感;信号可以是多个进程的全局信号,变量只在定义它们的顺序域可见,而常量的 使用范围

4、取决于它被定义的位置;信号是硬件连线的抽象描述信号 赋值,赋值符号 =而变量和常量的赋值符号:=。3. 答:定义3个位数据类型的信号a、b、c,它们取值为0;定义2个时间数据类型的常量 TIME1、TIME2它们值为20ns;定义3个标准逻辑位STD_LOGI数据类型的变量x y、z,它们的 值是强未知的。4答:为了方便各种不同数据类型间的运算,VHDL允许用 户对原有的基本操作符重新定义,赋予新的含义和功 能,从而建立一种新的操作符,这就是重载操作符,定 义这种操作符的函数成为重载函数。重载运算符的作用是 为了方便各种不同的数据类型间的运算。要调用重载运算符函数, 先要在程序包中进行函数体的

5、定义,调用的格式如下:x =函数名(参数1,参数2,)参数个数和类型与所定义的 函数要保持一致。5. 答:数据类型BIT INTEGER BOOL均定义在STD库中。IEEEW口程序包、 STD_LOGIC_UNSIGS1ED_LOGIC_SIGNHD_LOGIC_ART总是可见的。6. 答:子程序有两种类型,即过程(PROCEDUR和函数(FUNCTION。它们的区别在于:过程的调用可以通过其界面获得多个返回值,而函数只能返回一个值;在函数入口中,所有参数都是输入参数,而 过程有输入参数、输出参数和双向参数;过程一般被看作一种语句 结构,而函数通常是表达式的一部分;过程可以单独存在,而函数通

6、常作为语句的一部分调用。7答:应注意以下问题:已列出敏感信号的进程中不能使用任何形 式的WAIT语句; 一般情况下,只有WAIT UNTIL格式的等待语句 可以被综合器所接受,其余语句格式只能在 VHDL仿真器中使用; 在使用WAIT ON语句的进程中,敏感信号量应写在进程中的WAIT ON语句后面;Q)在不使用WAIT ON语句的进程中,敏感信号 量应在开头的关键词PROCES后面的敏感信号表中列出。8.答:O调用数据类型变换函数或重载运算符函数时;定义UNSIGNE类型的数据时。举例如下:LIBRARY IEEE;USE USEIF temp=THEN temp:= 00000000;EL

7、SE temp:二temp+16;END IF;9答: 因为信号赋值语句的共同点是赋值目标必须都是信号,所有 赋值语句与其它并行语句一样, 在结构体内的执行是同时发生的, 与它们的书写顺序没有关系,所以每一信号赋值语句都相当于一 条缩写的进程语句。由于这条语句的所有输入信号都被隐性地列 入此缩写进程的敏感信号表中,故任何信号的变化都将相关并行 语句的赋值操作,这样就实现了敏感信号的检测。10. 答:相同点:CASE语句中各子句的条件不能有重叠,必须包容所有的条件;WITH_SECLEC语句也不允许选择值有重叠现象,也不 允许选择值涵盖不全的情况。另外,两者对子句各选择值的测试 都具有同步性,都

8、依赖于敏感信号的变化。不同点:CASE语句只能在进程中使用, 至少包含一个条件语句, 可以有多个赋值目标; WITH_SECLEC语句根据满足的条件,对信号进行赋值,其赋值目 标只有一个,且必须是信号。11. 原程序转换如下 :ARCHITECTURE one OF mux ISBEGINPROCESS (a , b ,c ,d)BEGINNEXT1 =1101WHEN a=0AND b=1ELSE dWHEN a=0ELSEc WHEN b=1ELSE 1011;END one;END PROCESS;12. (1)功能描述如下:LIBRARY IEEE;USEENTITY decoder3

9、8 ISPORT(a,b,c,g1,g1a,a2b:IN STD_LOGIC; q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END decoder38;ARCHITECTURE behave38 OF decoder38 ISSIGNAL inda: STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN indaqqqqqqqqq=XXXXXXXX; END CASE;ELSE q=;END IF;END PROCESS;END behave38;2)功能描述如下:LIBRARY IEEE;USE ENTITY mux8 IS PORT(d0,d1,

10、d2,d3,d4,d5,d6,d7:IN STD_LOGIC_VECTOR(7DOWNTO 0); s0,s1,s2:IN STD_LOGIC;q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END mux8;ARCHITECTURE behave OF mux8 ISSIGNAL s: STD_LOGIC_VECTOR(2 DOWNTO 0);BEGINs =s2&s1&s0;WITH s SECLECT d =d0 WHEN 000, d1 WHEN 001, d2 WHEN 010, d3 WHEN 011,d4 WHEN 100,d5 WHEN 101,d6 WHEN 110,d7 WHEN 111, XWHEN OTHERS;END behave;13.用生成语句描述如下:

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 商业计划书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号