EDA技术及应用+朱正伟课后习题答案
- 格式:doc
- 大小:61.50 KB
- 文档页数:7
数字电路逻辑设计朱正伟习题答案(1)F(A,B,C)?AB C 0 1AB C 0 11,2,4,5,7) ?m(0,01 1 0 11 0 1 10 1 1 00 1 1 00 1 1 01 1 0 11 0 1 10 1 1 F(A,B,C)?B?AC?A?C(1)F(A,B,C,D)?AB CD 00 01 11 1000 0 0 1 1 ?(m01 0 0 1 1 2,m3,m6,m7,m8,m10,m14) 10 1 0 0 1 11 0 0 0 1 F(A,B,C,D)?AC?CD?ABD(3)F(A,B,C,D)?AB CD 00 01 11 1000 1 1 1 0 ?(m01 0 0 0 0 0,m1,m3,m8,m9,m11,m15) 10 1 1 1 0 11 0 0 1 0 F(A,B,C,D)?BC?BD?ACD(9)F(A,B,C)?AB C 0 100 1 0 ?(m01 ? 0 0,m6)?11 1 0 10 0 ? ?d(m2,m5) F(A,B,C)?A?C?BC(1)F(A,B,C,D)??(m0,m1,m3,m4,m6,m7,m14,m15)??d(m8,m9,m11,m12)AB CD 00 01 11 1000 1 1 1 0 01 1 0 1 1 11 ? 0 1 1 10 ? ? ? 0F(A,B,C,D)?C?D?BD?BC1、分析电路的逻辑功能A B C & Y1 ≥1 ≥1 F1 & Y2 Y3 1 & ≥1 & F2 &F2?AB?AC?BCF1?AB?AC?BC?(A?B?C)?ABCABBCAC(ABC)ABC ?(A?B)?(B?C)?(A?C)(A?B? C)?ABC ?(AB?B?BC?AC)(A?C)(A?B?C)?ABC ?ABC?ABC?A BC?ABCF2?AB?AC?BCF1?ABC?ABC?ABC?ABCA 0 0 0 0 1 1 1 1B 0 0 1 1 0 0 1 1C 0 1 0 1 0 1 0 1 F1 0 1 1 0 10 0 1 F2 0 0 0 1 0 1 1 1 电路的逻辑功能为全加器。
习题参考答案第2章1.可编程只读存储器PROM、可编程逻辑阵列PLA、可编程阵列逻辑PAL、通用阵列逻辑GAL2.EPC型号的存储器3.(1)编程输入(2)编译若编译不成功,需要回到第一步检查编程输入,直到编译成功为止(3)仿真仿真的结果直接反映编程的结果,若结果不正确,也需要返回到第一步,重复前面的过程(4)下载4.FPGA采用SRAM进行功能配置,可重复编程,但系统掉电后,SRAM中的数据丢失。
因此,需在FPGA外加EPROM,将配置数据写入其中,系统每次上电自动将数据引入SRAM中。
CPLD器件一般采用EEPROM存储技术,可重复编程,并且系统掉电后,EEPROM中的数据不会丢失,适于数据的保密。
FPGA器件含有丰富的触发器资源,易于实现时序逻辑,如果要求实现较复杂的组合电路则需要几个CLB结合起来实现。
CPLD的与或阵列结构,使其适于实现大规模的组合功能,但触发器资源相对较少。
5.67.宏单元、PIA、I/O控制块8.MAX7000系列一般采用EEPROM存储技术,可重复编程,并且系统掉电后,EEPROM中的数据不会丢失,适于数据的保密。
但是编写次数有限,编程的速度不快;FLEX10K系列采用SRAM进行功能配置,可重复编程,但系统掉电后,SRAM中的数据丢失。
因此,需在FPGA外加专用配置芯片,将配置数据写入其中,系统每次上电自动将数据引入专用配置芯片中。
第3章1.设计输入、项目编译、仿真和定时分析、编程下载2.(1)原理图输入适合于对系统电路很熟悉的情况或用在对时间特性要求较高的场合;(2)波形图输入适用于时序逻辑和有重复性的逻辑函数;(3)文本输入适用于从逻辑门层次的描述到整个系统的描述。
;(4)层次化输入适用于结构较复杂的系统。
3.优点:(1)支持模块化,底层模块可反复被调用,多个底层模块可由不同的设计者同时使用,提高了设计效率;(2)设计方法比较自由;(3)团队之间的合作方便灵活。
EDA技术与应⽤课后习题答案(6)EDA技术与应⽤课后习题答案 CLK: IN STD_LOGIC; --状态机⼯作时钟 EOC: IN STD_LOGIC; --转换状态指⽰,低电平表⽰正在转换 ALE:OUT STD_LOGIC; --8个模拟信号通道地址锁存信号 START:OUT STD_LOGIC; --转换开始信号 OE:OUT STD_LOGIC; --数据输出三态控制信号 ADDA:OUT STD_LOGIC; --信号通道最低位控制信号 LOCK0:OUT STD_LOGIC; --观察数据锁存时钟 Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); --8位数据输出 END ADCINT; ARCHITECTURE behav OF ADCINT IS TYPE states IS(st0,st1,St2,st3,st4); --定义各状态⼦类型 SIGNAL current_state,next_state: states:=st0; SIGNAL REGL: STD_LOGIC_VECTOR(7 DOWNTO 0); SIGNAL LOCK: STD_LOGIC;--转换后数据输出锁存时钟信号 BEGIN ADDA<='1';--当ADDA<='0',模拟信号进⼊通道IN0;当ADDA<='1',则进⼊通道INI Q<=REGL;LOCK0<=LOCK; COM: PROCESS(current_state,EOC) BEGIN --规定各状态转换⽅式 CASE current_state IS WHEN st0=> ALE<='0';START<='0';LOCK<='0';OE<='0'; next_state<=st1; --0809初始化 WHEN st1=> ALE<='1';START<='1';LOCK<='0';OE<='0'; next_state<=st2 ;--启动采样 WHEN st2=> ALE<='0';START<='0';LOCK<='0'; OE<='0'; IF(EOC='1') THEN next_state<=st3;--EOC=1表明转换结束 ELSE next_state<=st2; END IF; --转换未结束,继续等待 WHEN st3=> ALE<='0';START<='0';LOCK<='0';OE<='1'; next_state<=st4;--开启OE,输出转换好的数据 WHEN st4=> ALE<='0';START<='0';LOCK<='1';OE<='1';next_state<=st0; WHEN OTHERS=>next_state<=st0; END CASE; END PROCESS COM; REG:PROCESS(CLK) BEGIN IF(CLK'EVENT AND CLK='1') THEN current_state<=next_state; END IF; END PROCESS REG; --由信号current_state将当前状态值带出此进程:REG LATCH1: PROCESS(LOCK) --此进程中,在LOCK的上升沿,将转换好的数据锁⼊ BEGIN IF LOCK='1' AND LOCK'EVENT THEN REGL<=D; END IF; END PROCESS LATCH1; END behav; 8-5在不改变原代码功能的条件下⽤两种⽅法改写例8-2,使其输出的控制信号(ALE、START、OE、LOCK)没有⽑刺。
1.1、设计集成计数器74161,设计要求如下:4-BIT BINARY UP COUNTER WITH SYNCHRONOUS LOAD AND ASYNCHRONOUS CLEAR NOTEINPUTS: CLK LDN CLRN D C B AOUTPUTS:QD QC QB QA RCO*RCO = QD & QC & QB & QALIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT4 ISPORT(CLK,LDN,CLRN : IN STD_LOGIC;D,C,B,A : IN STD_LOGIC;CARRY : OUT STD_LOGIC;QD,QC,QB,QA : OUT STD_LOGIC);END;ARCHITECTURE A OF CNT4 ISSIGNAL DATA_IN: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINDATA_IN<=D&C&B&A;PROCESS(DATA_IN,CLK,LDN,CLRN)VARIABLE CNT:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINIF CLRN='0' THENCNT:=(OTHERS=>'0');ELSIF CLK'EVENT AND CLK='1' THENIF LDN='0' THENCNT:=DATA_IN;ELSECNT:=CNT+1;END IF;END IF;CASE CNT ISWHEN "1111"=> CARRY<='1';WHEN OTHERS=> CARRY<='0';END CASE;QA<=CNT(0);QB<=CNT(1);QC<=CNT(2);QD<=CNT(3);END PROCESS;END A;1.2、设计一个通用双向数据缓冲器,要求缓冲器的输入和输出端口的位数可以由参数决定。
第一章1.什么叫EDA技术?及狭义定义(书P1)Electronic Design Automation--电子设计自动化。
EDA的广义定义范围包括:半导体工艺设计自动化、可编程器件设计自动化、电子系统设计自动化、印刷电路板设计自动化、仿真与测试、故障诊断自动化、形式验证自动化统称EDA工程。
2.EDA发展历程:CAD- CAE -EDA3 .EDA技术的主要内容实现载体(硬件基础):大规模可编程逻辑器件(PLD_Programmable Logic Device)描述方式:硬件描述语言(HDL_Hard descripation Lauguage,VHDL,Verilog HDL等)设计工具:开发软件、开发系统硬件验证:实验开发系统FPGA 在结构上主要分为三个部分,即可编程逻辑单元,可编程输入/输出单元和可编程连线三个部分。
CPLD在结构上主要包括三个部分,即可编程逻辑宏单元,可编程输入/输出单元和可编程内部连线。
4.硬件描述语言(HDL_Hardware Description Language)VHDL:IEEE标准硬件描述语言,在电子工程领域,已成为事实上的通用硬件描述语言。
系统级抽象描述能力较强。
Verilog:支持的EDA工具较多,适用于RTL级和门电路级的描述,其综合过程较VHDL 稍简单,门级开关电路描述能级较强,但其在高级描述方面不如VHDL。
ABEL:一种支持各种不同输入方式的HDL,系统级抽象描述能力差,适应于门级电路描述。
5. 仿真工具功能仿真(也叫前仿真、系统级仿真、行为仿真)验证系统的功能。
时序仿真(也叫后仿真、电路级仿真):验证系统的时序特性、系统性能。
6. EDA的工程设计流程(P8)第二章1.在系统可编程技术(ISP)定义ISP(In_System Programmability/Programming)是指对器件、电路板、整个电子系统进行逻辑重构和修改功能的能力。
第一章 EDA概述一、填空题1.2000年推出的Pentium 4微处理器芯片的集成度达——万只晶体管。
2.一般把EDA技术的发展分为——、——和——三个阶段。
3.在EDA发展的——阶段,人们只能借助计算机对电路进行模拟、预测,以及辅助进行集成电路版图编辑、印刷电路板(PcB)布局布线等工作。
4.在EDA发展的——阶段,人们可以将计算机作为单点设计工具,并建立各种单元库,开始用计算机将许多单点工具集成在一起使用。
5.EDA设计流程包括——、——、——和——四个步骤。
6.EDA的设计验证包括——、——和——三个过程。
7.EDA的设计输入主要包括——、——和———。
8.文本输入是指采用——进行电路设计的方式。
9.功能仿真是在设计输入完成之后,选择具体器件进行编译之前进行的逻辑功能验证,因此又称为——。
10.时序仿真是在选择了具体器件并完成布局、布线之后进行的时序关系仿真,因此又称为——或——。
11.当前最流行的并成为1EEE标准的硬件描述语言包括————和——。
12.采用PLD进行的数字系统设计,是基于芯片的设计或称之为——的设计。
13.硬件描述语言HDL给PLD和数字系统的设计带来了更新的设计方法和理念,产生了目前最常用的并称之为——的设计法。
14.EDA工具大致可以分为——、——、———、———和——等五个模块。
15.将硬件描述语吉转化为硬件电路的重要工具软件称为——————。
二、单项选择题1.将设计的系统或电路按照EDA开发软件要求的某种形式表示出来,并送入计算机的过程称为( )。
①设计输入②设计输出③仿真④综合2.一般把EDA技术的发展分为( )几个阶段。
①2 ②3 ③4 ④53.AHDL属于( )描述语言。
①普通硬件②行为③高级④低级4.vHDL属于( )描述语言。
①普通硬件②行为③高级④低级5.包括设计编译和检查、逻辑优化和综合、适配和分割、布局和布线,生成编程数据文件等操作的过程称为( )。
第三章3-5设计一个4选1多路选择器,当选择输入信号分别取“00”、“01”、“10”和“11”时,输出信号分别与一路输入信号相连。
LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MAX4_1 ISPORT(A,B,C,D,S1,S2 : IN STD_LOGIC;Y : OUT STD_LOGIC);END ENTITY MAX4_1;ARCHITECTURE HF1 OF MAX4_1 ISSIGNAL SS : STD_LOGIC_VECTOR (0 TO 1);BEGINSS<=S2&S1;PROCESS(SS)BEGINCASE SS ISWHEN "00" => Y<=A;WHEN "01" => Y<=B;WHEN "10" => Y<=C;WHEN "11" => Y<=D;WHEN OTHERS => NULL;END CASE;END PROCESS;END HF1;3-6设计一个7人表决电路,参加表决者7人,同意为1,不同意为0,同意者过半则表决通过,绿指示灯亮;表决不通过则红指示灯亮。
设计思路:根据7人表决电路设计要求,7人中至少有4个通过才可以表决通过,故可以在程序中设置一个变量TEMP,使其在表决电路中遇1则加1,遇0则加0(设计中1表示通过,0表示不通过)。
当TEMP>=4时,表示表决通过,当TEMP<4时表决不通过。
LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY VOTE7 ISPORT (MEN:IN STD_LOGIC_VECTOR(6 DOWNTO 0);OUTPUT: OUT BIT);END VOTE7;ARCHITECTURE BEHA VE OF VOTE7 ISBEGINPROCESS(MEN)V ARIABLE TEMP: INTEGER RANGE 0 TO 7;BEGINTEMP:=0;FOR I IN 0 TO 6 LOOPIF(MEN(I)='1')THENTEMP:=TEMP+1;ELSETEMP:=TEMP;END IF;END LOOP;CASE TEMP ISWHEN 0 TO 3 =>OUTPUT<='0';WHEN 4 TO 7 =>OUTPUT<='1';END CASE ;END PROCESS;END BEHA VE;第四章4-6试写出4选1多路选择器VHDL描述。
《EDA技术与应用》A卷及答案汕头大学成人教育学院二0一0年春季学期期末考试试卷试卷编号:A卷闭卷课程名称:《EDA技术与应用》班级专业:姓名:学号:一、填空题(20分,每小题1分)1.VHDL的中文名称是__超高速集成电路硬件描述语言_____________。
2.用EDA技术进行电子系统设计的目标是最终完成asic________ 的设计与实现。
3.可编程器件分为 fpga__ 和 _cpld______ 。
4.标准逻辑位数据类型常用的数值有 _1__ 、 __0_ 、 _z__ 等。
5.在VHDL语言中可以使用的数据类型有:_位____ 、__标准逻辑位__________、___布尔_____。
6.完整的条件语句将产生_组合_______ 电路,不完整的条件语句将产生 __时序______电路。
7.信号的赋值符号为 <= ___ 变量的赋值符号为 =___ 。
8.随着EDA技术的不断完善与成熟, ___自顶向下______的设计方法更多的被应用于VHDL设计当中。
9.EDA设计过程中的仿真有三种,它们是___行为_____ 仿真、 _逻辑______ 仿真和 __时序____ 仿真。
10.目前国际上较大的PLD器件制造公司有__altera________ 和___xilinx______ 公司。
二、简答题(20分,每小题4分)1、与HDL文本输入法相比较,原理图输入法有何优点?2、写出结构体的一般语言格式并说明其作用3、信号和变量的区别?4、写出PROCESS语句结构的一般表达格式。
5、写出五种以上的VHDL的预定义数据类型。
三、程序注解(20分,每空1分)library ieee; __________ use ieee.std_logic_1164.all; _____________ ENTITY aa1 is ________ __ port(a,b,s:in bit; _______________________________end aa1; ___________________________ architecture one of aa1 is _________ y<=a when s='0' else b; ____________________ end one; _____ ________________________________ 逻辑功能:____________________________signal s1 : bit ; _________________________ begin ________________________________ process (clk,d) _______________________ beginif (clk = ‘1’) _____________________________ then ______________________________________ s1 <= d; ________________________________ end if; _________________________________ q <= s1 ; _____________________________ end process; ___________________________ end bo; __________________________ 逻辑功能: __________________四、VHDL语言编程题(1、2小题10分,3小题20分)1、编写一个D触发器的硬件描述语言程序,要求实现上升沿触发。
EDA技术及应用(第2版)朱正伟复习资料第一章1、EDA的定义:以计算机为工作平台,以EDA软件工具为开发环境,以硬件描述语言为设计语言,以ASIC为实现载体的电子产品自动化设计过程。
2、EDA的三大特征:硬件描述语言、系统级仿真、综合技术3、EDA的设计方法:自上而下4、EDA的核心:利用计算机完成电路设计的全程自动化5、常用的EDA工具及其作用:设计编辑器:一般支持图形输入,HDL文本输入,波形图输入等仿真器:完成行为模型的表达、电子系统的建模、逻辑电路的验证以及门级系统的测试HDL综合器:将软件描述与给定的硬件结构用某种网表文件的方式对应起来,成为相互的映射关系。
6、EDA的设计流程:设计输入(将设计的系统或电路按照EDA开发软件要求的文本方式或图形方式表示出来,并送入计算机的过程。
)第二章1、PLD的基本结构:输入缓冲器、与阵列、或阵列、输出缓冲器;电路的核心是由门电路构成的与阵列、或阵列,逻辑函数靠它们实现。
与阵列产生乘积项,或阵列产生乘积项之和。
2、PLD的分类:简单PLD:PROM:与门阵列固定,或门阵列可编程。
优点:价格低、易编程性能可预测。
不足:规模大、速度低、功耗高。
PLA:与阵列和或阵列均可编程。
特点使用灵活,运行速度慢,价格高,缺少高质量的支持软件,使用不广泛。
PAL:与阵列可编程,或阵列固定,即乘积项可若干,数目固定。
特点:性能速度较高。
有几种固定的输出结构,不同结构对应不同的型号。
GAL;即通用阵列逻辑器件,与阵列和PAL的类似,或阵列及输出寄存器则采用OLMC输出逻辑宏单元OLMC最多有8个或项,每个或项最多有32个与项。
复杂PLD:(1)CPLD-----复杂可编程逻辑器件(2)FPGA-----现场可编程门阵列(3)ISP-----在系统可编程逻辑器件3、PLD的互联结构:(1)确定型:除FPGA外的PLD器件布线每次相同。
(2)统计型:FPGA每次布线模式不同,设计者提出约束模式。
eda原理及应用试题及答案一、选择题(每题2分,共20分)1. EDA(Electronic Design Automation)的中文意思是:A. 电子设计自动化B. 电子文档自动化C. 电子数据自动化D. 电子设备自动化答案:A2. EDA技术不包括以下哪一项:A. 电路仿真B. PCB设计C. 电子制图D. 硬件描述语言答案:C3. 在EDA中,HDL指的是:A. 高级数据链接B. 高级设计语言C. 硬件描述语言D. 硬件开发语言答案:C4. 下列哪个不是EDA软件工具的功能:A. 逻辑综合B. 布局布线C. 代码编译D. 时序分析答案:C5. 在EDA中,用于描述数字逻辑电路行为的HDL是:A. VerilogB. VHDLC. C语言D. Java答案:A6. EDA技术在以下哪个领域应用最为广泛:A. 软件开发B. 机械设计C. 电子设计D. 建筑设计答案:C7. 以下哪个不是EDA工具所支持的仿真类型:A. 功能仿真B. 时序仿真C. 物理仿真D. 行为仿真答案:C8. 在EDA设计流程中,通常最后进行的步骤是:A. 逻辑综合B. 布局布线C. 编译D. 测试答案:D9. 以下哪个不是EDA设计流程中的步骤:A. 需求分析B. 逻辑设计C. 电路测试D. 市场调研答案:D10. EDA技术可以提高以下哪方面的效率:A. 电路设计B. 产品销售C. 客户服务D. 物流管理答案:A二、填空题(每题2分,共20分)1. EDA技术的核心是______,它允许设计师在没有实际硬件的情况下对电路进行测试和验证。
答案:仿真2. 在EDA中,______是一种高级的编程语言,用于描述和设计电子系统。
答案:硬件描述语言3. 逻辑综合是将______转换为门级网表的过程。
答案:HDL代码4. PCB设计中,EDA工具可以帮助设计师进行______和______。
答案:布局;布线5. 时序分析是确保电路在规定的______内正确工作的分析。
EDA课后题答案第⼀章1.什么叫EDA技术?及狭义定义(书P1)Electronic Design Automation--电⼦设计⾃动化。
EDA的⼴义定义范围包括:半导体⼯艺设计⾃动化、可编程器件设计⾃动化、电⼦系统设计⾃动化、印刷电路板设计⾃动化、仿真与测试、故障诊断⾃动化、形式验证⾃动化统称EDA⼯程。
2.EDA发展历程:CAD- CAE -EDA3 .EDA技术的主要内容实现载体(硬件基础):⼤规模可编程逻辑器件(PLD_Programmable Logic Device)描述⽅式:硬件描述语⾔(HDL_Hard descripation Lauguage,VHDL,Verilog HDL等)设计⼯具:开发软件、开发系统硬件验证:实验开发系统FPGA 在结构上主要分为三个部分,即可编程逻辑单元,可编程输⼊/输出单元和可编程连线三个部分。
CPLD在结构上主要包括三个部分,即可编程逻辑宏单元,可编程输⼊/输出单元和可编程内部连线。
4.硬件描述语⾔(HDL_Hardware Description Language)VHDL:IEEE标准硬件描述语⾔,在电⼦⼯程领域,已成为事实上的通⽤硬件描述语⾔。
系统级抽象描述能⼒较强。
Verilog:⽀持的EDA⼯具较多,适⽤于RTL级和门电路级的描述,其综合过程较VHDL 稍简单,门级开关电路描述能级较强,但其在⾼级描述⽅⾯不如VHDL。
ABEL:⼀种⽀持各种不同输⼊⽅式的HDL,系统级抽象描述能⼒差,适应于门级电路描述。
5. 仿真⼯具功能仿真(也叫前仿真、系统级仿真、⾏为仿真)验证系统的功能。
时序仿真(也叫后仿真、电路级仿真):验证系统的时序特性、系统性能。
6. EDA的⼯程设计流程(P8)第⼆章1.在系统可编程技术(ISP)定义ISP(In_System Programmability/Programming)是指对器件、电路板、整个电⼦系统进⾏逻辑重构和修改功能的能⼒。
单元一EDA技术概述1.什么是EDA技术?EDA技术的基本特征是什么?答:EDA(Electronic Design Automation,电子设计自动化)技术是电子设计工程师在计算机上完成电路的功能设计、逻辑设计、性能分析、时序测试直至PCB(印制电路板)的自动设计等。
EDA技术的基本特征是采用高级语言描述,具有系统级仿真和综合能力。
2.可编程逻辑器件有什么特点?有哪些可编程资源?答:可编程逻辑器件的主要特点1.缩短研制周期2.降低设计成本3.提高设计灵活性3.写出Altera器件中的下列英文缩写的中文含义。
LE LAB PIA EAB答:LE:逻辑单元LAB:逻辑阵列块PIA:可编程连线阵列EAB:嵌入式阵列块4.简述可编程逻辑器件的发展趋势。
答:可编程逻辑器件未来的发展将呈现以下几个方面的趋势:1)向高密度、大规模的方向发展2)向系统内可重构的方向发展3)向低电压、低功耗的方向发展4)向高速可预测延时器件的方向发展5)向混合可编程技术方向发展单元二可编程逻辑器件的设计与开发1.简述可编程逻辑器件的一般设计过程。
答:CPLD/FPGA器件的设计流程一般分为设计输入、设计实现、设计校验和编程下载4个步骤。
2.试比较可编程逻辑器件设计的常用输入方式。
答:1)原理图输入原理图是图形化的表达方式,它是利用软件中所提供的元件符号和连线来描述设计。
其特点是比较直观,便于进行接口设计和引脚锁定,容易实现仿真,便于信号的观察和电路的调整,系统运行速率较高,但当描述复杂电路时则比较烦琐。
2)硬件描述语言输入硬件描述语言输入是采用文本方式描述设计,这种方式的描述范围较宽,从简单的门电路到复杂的数字系统均可描述。
特别是在描述复杂设计时,非常简洁。
但这种描述方式不适合描述接口和连接关系,并且该输入方式必须依赖综合器,只有好的综合器才能把语言综合成优化的电路。
3.列举常用的EDA工具软件,并比较各有什么特点。
答:1)Synplify该软件是由Synplicity公司专为FPGA和CPLD开发设计的逻辑综合工具。
《EDA技术与应用》试卷B一、填空题(共10分,每题2分)1、EDA技术的应用范畴包括计算机辅助设计CAD、计算机辅助制造CAM、、等。
2、实体定义中的端口模式用来说明端口上的数据流动方向,端口模式有以下几种IN、OUT、、。
3、可编程逻辑器件按照结构复杂程度的不同,可将PLD大致分为简单可编程逻辑器件、、。
4、信号的赋值采用符号,而变量的赋值符号为。
5、进程语句本身是,但其内部的语句是由构成的。
二、解释程序(第1题5分,第2题5分,第3题10分,共20分)1解释带有下划线的语句2说明该程序逻辑功能3改用WITH-SELECT语句编写下列程序。
LIBRARY ieee;USE ieee.std_logic_1164.ALL;entity xuan2 isport (a :in std_logic_vector(3 downto 0);sel:in std_logic_vector(1 downto 0);d:out std_logic);end xuan2;architecture a of xuan2 isbeginprocess(sel)begincase sel iswhen "00" =>d<=a(0);when "01" =>d<=a(1);when "10" =>d<=a(2);when others =>d<=a(3);end case;end process;end a;三、判断下列程序是否有错误,如有则指出错误所在,并修改程序。
(20分)程序一:ENTITY decoder3_8 ISPORT(a:IN BIT_VECTOR(2 DOWNTO 0);y:OUT BIT_VECTOR(7 DOWNTO 0));END decoder3_8;ARCHITECTURE beh OF decoder3_8 IS BEGINWITH a SELECTy<= “11111110”WHEN “000”;“11111101”WHEN “001” ;“11111011”WHEN “010” ;“11110111”WHEN “011” ;“11101111”WHEN “100” ;“11011111”WHEN “101” ;“10111111”WHEN “110” ;“01111111”WHEN “111”;END beh;程序二:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;Entity behavioral isport(a: in bit;b: in bit;equal: out std_ulogic);end behavioral;Architecture eqcomp4 of behavioral isBeginif a=b thenequal <='1';elseequal <='0';end eqcomp4 ;四、分析下列程序功能,并将程序补充完整。
1.1、设计集成计数器74161,设计要求如下:4-BIT BINARY UP COUNTER WITH SYNCHRONOUS LOAD AND ASYNCHRONOUS CLEAR NOTEINPUTS: CLK LDN CLRN D C B AOUTPUTS:QD QC QB QA RCO*RCO = QD & QC & QB & QALIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT4 ISPORT(CLK,LDN,CLRN : IN STD_LOGIC;D,C,B,A : IN STD_LOGIC;CARRY : OUT STD_LOGIC;QD,QC,QB,QA : OUT STD_LOGIC);END;ARCHITECTURE A OF CNT4 ISSIGNAL DATA_IN: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINDATA_IN<=D&C&B&A;PROCESS(DATA_IN,CLK,LDN,CLRN)V ARIABLE CNT:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINIF CLRN='0' THENCNT:=(OTHERS=>'0');ELSIF CLK'EVENT AND CLK='1' THENIF LDN='0' THENCNT:=DATA_IN;ELSECNT:=CNT+1;END IF;END IF;CASE CNT ISWHEN "1111"=> CARRY<='1';WHEN OTHERS=> CARRY<='0';END CASE;QA<=CNT(0);QB<=CNT(1);QC<=CNT(2);QD<=CNT(3);END PROCESS;END A;1.2、设计一个通用双向数据缓冲器,要求缓冲器的输入和输出端口的位数可以由参数决定。
EDA技术与应用课后习题答案EDA技术与应用课后习题答案对有关问题所作的解答的结果;对提出的问题所做的解答,练习的答案。
以下是店铺为大家整理的EDA技术与应用课后习题答案,仅供参考,希望能够帮助大家。
第一章1-1 EDA技术与ASIC设计和FPGA开发有什么关系? P3~4答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD是实现这一途径的主流器件。
FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。
FPGA 和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC(片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。
1-2与软件描述语言相比,VHDL有什么特点? P6答:编译器将软件程序翻译成基于某种特定CPU的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。
综合器将VHDL程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。
综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。
1-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? P5什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。
有哪些类型? 答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。
(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。
1.试说明实体端口模式BUFFER和INOUT的不同之处?2.VHDL的数据对象有哪几种?它们之间有什么不同?3.说明下列各定义的意义:SIGNAL a , b , c : BIT : =’0’;CONST ANT TIME1 , TIME2 : TIME : 20ns ;V ARIABLE x , y , z : STD_LOGIC :=’x’;4.什么是重载函数?重载运算符有何用处?如何调用重载运算符函数?5.数据类型BIT \ INTEGER \ BOOLEAN分别定义在哪个库中?哪些库和程序包总是可见的?6.函数和过程有什么区别?7.若在进程中加入WAIT语句,应注意哪几个方面的问题?8.哪些情况下需用到程序包STD_LOGIC_UNSIGNED?试举一例。
9.为什么说一条并行赋值语句可以等效为一个进程?如果是这样的话,怎样实现敏感信号的检测?10.比较CASE语句和WITH_SELECT语句,叙述它们的异同点?11.将以下程序段转换为WHEN_ELSE语句:PROCESS (a , b ,c ,d)BEGINIF a=’0’AND b=’1’THEN NEXT1 <="1101";ELSEIF a=’0’THEN NEXT1 <=d;ELSEIF b=’1’THEN NEXT1 <=c;ELSE NEXT1 <="1011";END IF;END PROCESS;12.试用并行信号赋值语句分别描述下列器件的功能:(1)3-8译码器(2) 8选1数据选择器13.利用生成语句描述一个由几个一位全加器构成n位加法器(n的默认值为4)。
14.用VHDL设计输出占空比为50%的1000分频器。
1.答:BUFFER端口:缓冲模式,具有读功能的输出模式,即信号输出到实体外部,但同时也在内部反馈使用,不允许作为双向端口使用。
而INOUT端口:双向模式,即信号的流通是双向的,既可以对此端口赋值,也可以通过此端口读入数据。
2.答:VHDL的数据对象有三种:信号、变量、常量。
它们之间的的区别如下:信号赋值至少有δ延时,而变量和常量没有;信号除当前值外,有许多相关信息,变量只有当前值,常量的值在设计实体中始终不变;进程对信号敏感而对变量及常量不敏感;信号可以是多个进程的全局信号,变量只在定义它们的顺序域可见,而常量的使用范围取决于它被定义的位置;信号是硬件连线的抽象描述信号赋值,赋值符号<= 而变量和常量的赋值符号:=。
3.答:○1定义3个位数据类型的信号a、b、c,它们取值为0;○2定义2个时间数据类型的常量TIME1、TIME2,它们值为20ns; ○3定义3个标准逻辑位STD_LOGIC数据类型的变量x、y、z,它们的值是强未知的。
4.答:为了方便各种不同数据类型间的运算,VHDL允许用户对原有的基本操作符重新定义,赋予新的含义和功能,从而建立一种新的操作符,这就是重载操作符,定义这种操作符的函数成为重载函数。
重载运算符的作用是为了方便各种不同的数据类型间的运算。
要调用重载运算符函数,先要在程序包中进行函数体的定义,调用的格式如下:x <=函数名(参数1,参数2,·)参数个数和类型与所定义的函数要保持一致。
5.答:数据类型BIT \ INTEGER \ BOOLEAN均定义在STD库中。
IEEE库和程序包STD_LOGIC.1164 、STD_LOGIC_UNSIGNED、STD_LOGIC_SIGNED、STD_LOGIC_ARITH等总是可见的。
6.答:子程序有两种类型,即过程(PROCEDURE)和函数(FUNCTION)。
它们的区别在于:过程的调用可以通过其界面获得多个返回值,而函数只能返回一个值;在函数入口中,所有参数都是输入参数,而过程有输入参数、输出参数和双向参数;过程一般被看作一种语句结构,而函数通常是表达式的一部分;过程可以单独存在,而函数通常作为语句的一部分调用。
7.答:应注意以下问题:○1已列出敏感信号的进程中不能使用任何形式的WAIT语句;○2一般情况下,只有WAIT UNTIL格式的等待语句可以被综合器所接受,其余语句格式只能在VHDL仿真器中使用;○3在使用WAIT ON语句的进程中,敏感信号量应写在进程中的WAIT ON语句后面;○4在不使用WAIT ON语句的进程中,敏感信号量应在开头的关键词PROCESS后面的敏感信号表中列出。
8.答:○1调用数据类型变换函数或重载运算符函数时;○2定义UNSIGNED类型的数据时。
举例如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;··IF temp="11111111"THEN temp:= "00000000";ELSE temp:=temp+16;END IF;·9.答:因为信号赋值语句的共同点是赋值目标必须都是信号,所有赋值语句与其它并行语句一样,在结构体内的执行是同时发生的,与它们的书写顺序没有关系,所以每一信号赋值语句都相当于一条缩写的进程语句。
由于这条语句的所有输入信号都被隐性地列入此缩写进程的敏感信号表中,故任何信号的变化都将相关并行语句的赋值操作,这样就实现了敏感信号的检测。
10.答:相同点:CASE语句中各子句的条件不能有重叠,必须包容所有的条件;WITH_SECLECT语句也不允许选择值有重叠现象,也不允许选择值涵盖不全的情况。
另外,两者对子句各选择值的测试都具有同步性,都依赖于敏感信号的变化。
不同点:CASE 语句只能在进程中使用,至少包含一个条件语句,可以有多个赋值目标;WITH_SECLECT语句根据满足的条件,对信号进行赋值,其赋值目标只有一个,且必须是信号。
11.原程序转换如下:ARCHITECTURE one OF mux ISBEGINPROCESS (a , b ,c ,d)BEGINNEXT1 <="110"1WHEN a=’0’AND b=’1’ELSEd WHEN a=’0’ELSEc WHEN b=’1’ELSE"1011";END one;END PROCESS;12.(1)功能描述如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY decoder38 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);BEGINinda<=c&b&a;PROCESS(indata,g1,g2a,g2b)BEGINIF(g1='1' AND g2a='0' AND g2b='0') THENCASE inda ISWHEN "000"=>q<="11111110";WHEN "001"=>q<="11111101";WHEN "010"=>q<="11111011";WHEN "011"=>q<="11110111";WHEN "100"=>q<="11101111";WHEN "101"=>q<="11011111";WHEN "110"=>q<="10111111";WHEN "111"=>q<="01111111";WHEN OTHERS =>q<="XXXXXXXX";END CASE;ELSEq<="11111111";END IF;END PROCESS;END behave38;(2)功能描述如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux8 ISPORT(d0,d1,d2,d3,d4,d5,d6,d7:INSTD_LOGIC_VECTOR(7 DOWNTO 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 SECLECTd <=d0 WHEN "000",d1 WHEN "001",d2 WHEN "010",d3 WHEN "011",d4 WHEN "100",d5 WHEN "101",d6 WHEN "110",d7 WHEN "111",‘X’WHEN OTHERS;END behave;13.用生成语句描述如下:感谢下载!欢迎您的下载,资料仅供参考。