文档库 最新最全的文档下载
当前位置:文档库 › EDA技术实用教程课后习题答案

EDA技术实用教程课后习题答案

EDA技术实用教程课后习题答案
EDA技术实用教程课后习题答案

第一章

1-1 EDA 技术与ASIC 设计和FPGA 开发有什么关系?

答:利用EDA 技术进行电子系统设计的最后目标是完成专用集成电路ASIC 的设计和实现;FPGA 和CPLD 是实现

这一途径的主流器件。FPGA 和CPLD 通常也被称为可编程专用IC,或可编程ASIC。FPGA 和CPLD 的应用是EDA 技术

有机融合软硬件电子设计技术、SoC(片上系统)和ASIC 设计,以及对自动设计与自动实现最典型的诠释。

1-2 与软件描述语言相比,VHDL 有什么特点? P6

答:编译器将软件程序翻译成基于某种特定CPU 的机器代码,这种代码仅限于这种CPU 而不能移植,并且机器

代码不代表硬件结构,更不能改变CPU 的硬件结构,只能被动地为其特定的硬件电路结构所利用。综合器将VHDL

程序转化的目标是底层的电路结构网表文件,这种满足VHDL 设计程序功能描述的电路结构,不依赖于任何特定硬

件环境;具有相对独立性。综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具

有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约

束条件,选择最优的方式完成电路结构的设计。

l-3 什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? 什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层

次的便于具体实现的模块组合装配的过程。

有哪些类型? 答:(1)从自然语言转换到VHDL 语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器

传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL 级表示转换到逻

辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC 设计),或转换到FPGA 的配置网表

文件,可称为版图综合或结构综合。

综合在电子设计自动化中的地位是什么? 答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器

在接受VHDL 程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综

合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL 程序转化成电路实现的相关信息。

1-4 在EDA 技术中,自顶向下的设计方法的重要意义是什么? P7~10 答:在EDA 技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。

1-5 IP 在EDA 技术的应用和发展中的意义是什么? P11~12

答:IP 核具有规范的接口协议,良好的可移植与可测试性,为系统开发提供了可靠的保证。

第二章

2-1 叙述EDA 的FPGA/CPLD 设计流程。P13~16

答:1.设计输入(原理图/HDL 文本编辑);2.综合;3.适配;4.时序仿真与功能仿真;5.编程下载;6.硬件测试。

2-2 IP 是什么?IP 与EDA 技术的关系是什么? P24~26

IP 是什么? 答:IP 是知识产权核或知识产权模块,用于ASIC 或FPGA/CPLD 中的预先设计好的电路功能模块。

IP 与EDA 技术的关系是什么? 答:IP 在EDA 技术开发中具有十分重要的地位;与EDA 技术的关系分有软IP、

固IP、硬IP:软IP 是用VHDL 等硬件描述语言描述的功能块,并不涉及用什么具体电路元件实现这些功能;软IP

通常是以硬件描述语言HDL 源文件的形式出现。固IP 是完成了综合的功能块,具有较大的设计深度,以网表文件

的形式提交客户使用。硬IP 提供设计的最终阶段产品:掩模。

2-3 叙述ASIC 的设计方法。P18~19

答:ASIC 设计方法,按版图结构及制造方法分有半定制(Semi-custom)和全定制(Full-custom)两种实现方法。

全定制方法是一种基于晶体管级的,手工设计版图的制造方法。

半定制法是一种约束性设计方式,约束的目的是简化设计,缩短设计周期,降低设计成本,提高设计正确率。

半定制法按逻辑实现的方式不同,可再分为门阵列法、标准单元法和可编程逻辑器件法。

2-4 FPGA/CPLD 在ASIC 设计中有什么用途? P16,18

答:FPGA/CPLD 在ASIC 设计中,属于可编程ASIC 的逻辑器件;使设计效率大为提高,上市的时间大为缩短。

2-5 简述在基于FPGA/CPLD 的EDA 设计流程中所涉及的EDA 工具,及其在整个流程中的作用。P19~23

答:基于FPGA/CPLD 的EDA 设计流程中所涉及的EDA 工具有:设计输入编辑器(作用:接受不同的设计输

入表达方式,如原理图输入方式、状态图输入方式、波形输入方式以及HDL 的文本输入方式。);HDL 综合器(作用:

HDL 综合器根据工艺库和约束条件信息,将设计输入编辑器提供的信息转化为目标器件硬件结构细节的信息,并在

数字电路设计技术、化简优化算法以及计算机软件等复杂结体进行优化处理);仿真器(作用:行为模型的表达、

电子系统的建模、逻辑电路的验证及门级系统的测试);适配器(作用:完成目标系统在器件上的布局和布线);下

载器(作用:把设计结果信息下载到对应的实际器件,实现硬件设计)。

第三章

3-1 OLMC(输出逻辑宏单元)有何功能?说明GAL 是怎样实现可编程组合电路与时序电路的。P34~36

OLMC 有何功能? 答:OLMC 单元设有多种组态,可配置成专用组合输出、专用输入、组合输出双向口、寄存器

输出、寄存器输出双向口等。

说明GAL 是怎样实现可编程组合电路与时序电路的? 答:GAL(通用阵列逻辑器件)是通过对其中的OLMC

(输出逻辑宏单元)的编程和三种模式配置(寄存器模式、复合模式、简单模式),实现组合电路与时序电路设计

的。

3-2 什么是基于乘积项的可编程逻辑结构? P33~34,40

答:GAL、CPLD 之类都是基于乘积项的可编程结构;即包含有可编程与阵列和固定的或阵列的PAL(可编程阵

列逻辑)器件构成。

3-3 什么是基于查找表的可编程逻辑结构? P40~41

答:FPGA(现场可编程门阵列)是基于查找表的可编程逻辑结构。

3-4 FPGA 系列器件中的LAB 有何作用?

答:FPGA(Cyclone/Cyclone II)系列器件主要由逻辑阵列块LAB、嵌入式存储器块(EAB)、I/O 单元、嵌入

式硬件乘法器和PLL 等模块构成;其中LAB(逻辑阵列块)由一系列相邻的LE(逻辑单元)构成的;FPGA 可编程

资源主要来自逻辑阵列块LAB。

3-5 与传统的测试技术相比,边界扫描技术有何优点? P47~50 答:使用BST(边界扫描测试)规范测试,不必使用物理探针,可在器件正常工作时在系统捕获测量的功能数

据。克服传统的外探针测试法和“针床”夹具测试法来无法对IC 内部节点无法测试的难题。

3-6 解释编程与配置这两个概念。P58

答:编程:基于电可擦除存储单元的EEPROM 或Flash 技术。CPLD 一股使用此技术进行编程。CPLD 被编程后改

变了电可擦除存储单元中的信息,掉电后可保存。电可擦除编程工艺的优点是编程后信息不会因掉电而丢失,但编

程次数有限,编程的速度不快。

配置:基于SRAM 查找表的编程单元。编程信息是保存在SRAM 中的,SRAM 在掉电后编程信息立即丢失,在

下次上电后,还需要重新载入编程信息。大部分FPGA 采用该种编程工艺。该类器件的编程一般称为配置。对于SRAM

型FPGA 来说,配置次数无限,且速度快;在加电时可随时更改逻辑;下载信息的保密性也不如电可擦除的编程。

3-7 请参阅相关资料,并回答问题:按本章给出的归类方式,将基于乘积项的可编程逻辑结构的PLD 器件归类为

CPLD ;将基于查找表的可编程逻辑结构的PLD 器什归类为FPGA,那么,APEX 系列属于什么类型PLD 器件? MAX

II 系列又属于什么类型的PLD 器件?为什么?

P54~56

答:APEX(Advanced Logic Element Matrix)系列属于FPGA 类型PLD 器件;编程信息存于SRAM 中。MAX II

系列属于CPLD 类型的PLD 器件;编程信息存于EEPROM 中。

第四章

4-1:画出与下例实体描述对应的原理图符号元件:

ENTITY buf3s IS

-- 实体1:三态缓冲器

-- 输入端

-- 使能端

-- 输出端

PORT (input : IN STD_LOGIC ;

enable : IN STD_LOGIC ;

output : OUT STD_LOGIC ) ;

END buf3x ;

ENTITY mux21 IS

--实体2:2 选1 多路选择器

PORT (in0, in1, sel : IN STD_LOGIC;

output : OUT STD_LOGIC);

4-1.答案4-2. 图3-30 所示的是4 选1 多路选择器,试分别用IF_THEN 语句和CASE 语句的表达方式写出此电路的VHDL 程序。

选择控制的信号s1 和s0 的数据类型为STD_LOGIC_VECTOR;当s1='0',s0='0';s1='0',s0='1';s1='1',s0='0'

和s1='1',s0='1'分别执行y<=a、y<=b、y<=c、y<=d。

4-2.答案

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY MUX41 IS

PORT(s:IN STD_LOGIC_VECTOR(1 DOWNTO 0); --输入选择信号a,b,c,d:IN STD_LOGIC; --输入信号

y:OUT STD_LOGIC);--输出端

END ENTITY;

ARCHITECTURE ART OF MUX41 IS

BEGIN

PROCESS(s)

BEGIN

IF (S="00") THEN y<=a;

ELSIF (S="01") TH EN y<=b;

ELSIF (S="10") TH EN y<=c;

ELSIF (S="11") TH EN y<=d;

ELSE y<=NULL;

END IF;

EDN PROCESS;

END ART;

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY MUX41 IS

PORT(s:IN STD_LOGIC_VECTOR(1 DOWNTO 0); --输入选择信号a,b,c,d:IN STD_LOGIC; --输入信号

y:OUT STD_LOGIC);--输出端

END MUX41;

ARCHITECTURE ART OF MUX41 IS

BEGIN

PROCESS(s)

BEGIN

CASE s IS

WHEN “00”=> y<=a;

WHEN “01”=> y<=b;

WHEN “10”=> y<=c;

WHEN “11”=> y<=d;

WHEN OTHERS =>NULL;

END CASE;

END PROCESS;

END ART;

4-3. 图3-31 所示的是双2 选 1 多路选择器构成的电路MUXK,对于其中MUX21A,当s='0'和'1'时,分别有y<='a'

和y<='b'。试在一个结构体中用两个进程来表达此电路,每个进程中用CASE 语句描述一个2 选1 多路选择器MUX21A。

4-3.答案

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY MUX221 IS

PORT(a1,a2,a3:IN STD_LOGIC_VECTOR(1 DOWNTO 0); --输入信号

s0,s1:IN STD_LOGIC;

outy:OUT STD_LOGIC);--输出端

END ENTITY;

ARCHITECTURE ONE OF MUX221 IS

SIGNAL tmp : STD_LOGIC;

BEGIN

PR01:PROCESS(s0)

BEGIN

IF s0=”0”THEN tmp<=a2;

ELSE tmp<=a3;

END IF;

END PROCESS;

PR02:PROCESS(s1)

BEGIN

IF s1=”0”THEN outy<=a1;

ELSE outy<=tmp;

END IF;

END PROCESS;

END ARCHITECTURE ONE;

END CASE;

4-4.下图是一个含有上升沿触发的D 触发器的时序电路,试写出此电路的VHDL 设计文件。

4-4.答案

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY MULTI IS

PORT(CL:IN STD_LOGIC; --输入选择信号

CLK0:IN STD_LOGIC; --输入信号

OUT1:OUT STD_LOGIC);--输出端

END ENTITY;

ARCHITECTURE ONE OF MUL TI IS

SIGNAL Q : STD_LOGIC;

BEGIN

PR01:

PROCESS(CLK0)

BEGIN

IF CLK ‘EVENT AND CLK=’1’

THEN Q<=NOT(CL OR Q);ELSE

END IF;

END PROCESS;

PR02:

PROCESS(CLK0)

BEGIN

OUT1<=Q;

END PROCESS;

END ARCHITECTURE ONE;

END PROCESS;

4-5.给出1 位全减器的VHDL 描述。要求:

(1) 首先设计1 位半减器,然后用例化语句将它们连接起来,图3-32 中h_suber 是半减器,diff 是输出差,s_out 是借位输出,sub_in 是借位输入。

(2) 以1 位全减器为基本硬件,构成串行借位的8 位减法器,要求用例化语句来完成此项设计(减法运算是x –

y - sun_in = diffr)

4-5.答案

底层文件1:or2a.VHD 实现或门操作

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY or2a IS

PORT(a,b:IN STD_LOGIC;

c:OUT STD_LOGIC);

END ENTITY or2a;

ARCHITECTURE one OF or2a IS

BEGIN

c <= a OR b;

END ARCHITECTURE one;

底层文件2:h_subber.VHD 实现一位半减器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY h_subber IS

PORT(x,y:IN STD_LOGIC;

diff,s_out::OUT STD_LOGIC);

END ENTITY h_subber;

ARCHITECTURE ONE OF h_subber IS

SIGNAL xyz: STD_LOGIC_VECTOR(1 DOWNTO 0);

BEGIN

xyz <= x & y;

PROCESS(xyz)

BEGIN

CASE xyz IS

WHEN "00" => diff<='0';s_out<='0';

WHEN "01" => diff<='1';s_out<='1';

WHEN "10" => diff<='1';s_out<='0';

WHEN "11" => diff<='0';s_out<='0';

WHEN OTHERS => NULL;

END CASE;

END PROCESS;

END ARCHITECTURE ONE;

顶层文件:f_subber.VHD 实现一位全减器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY f_subber IS

PORT(x,y,sub_in:IN STD_LOGIC;

diffr,sub_out:OUT STD_LOGIC);

END ENTITY f_subber;

ARCHITECTURE ONE OF f_subber IS

COMPONENT h_subber

PORT(x,y:IN STD_LOGIC;

diff,S_out:OUT STD_LOGIC);

END COMPONENT;

COMPONENT or2a

PORT(a,b:IN STD_LOGIC;

c:OUT STD_LOGIC);

END COMPONENT;

SIGNAL d,e,f: STD_LOGIC;

BEGIN

u1: h_subber PORT MAP(x=>x,y=>y,diff=>d,s_out=>e);

u2: h_subber PORT MAP(x=>d,y=>sub_in,diff=>diffr,s_out=>f);

u3: or2a PORT MAP(a=>f,b=>e,c=>sub_out);

END ARCHITECTURE ONE;

END ARCHITECTURE ART;

4-6.根据下图,写出顶层文件MX3256.VHD 的VHDL 设计文件。

4-6.答案

MAX3256 顶层文件

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY MAX3256 IS

PORT (INA,INB,INCK: IN STD_LOGIC;

INC: IN STD_LOGIC;

E,OUT:OUT STD_LOGIC);

END ENTITY MAX3256;

ARCHITECTURE ONE OF MAX3256 IS

COMPONENT LK35 --调用LK35 声明语句

PORT(A1,A2:IN STD_LOGIC;

CLK:IN STD_LOGIC;

Q1,Q2:OUT STD_LOGIC);

END COMPONENT;

COMPONENT D --调用D 触发器声明语句

PORT(D,C:IN STD_LOGIC;

CLK:IN STD_LOGIC;

Q:OUT STD_LOGIC);

END COMPONENT;

COMPONENT MUX21--调用二选一选择器声明语句

PORT(B,A:IN STD_LOGIC;

S:IN STD_LOGIC;

C:OUT STD_LOGIC);

END COMPONENT;

SIGNAL AA,BB,CC,DD: STD_LOGIC;

BEGIN

u1: LK35 PORT MAP(A1=>INA,A2=>INB,CLK=INCK, Q1=>AA,Q2=>BB);

u2: D PORT MAP(D=>BB;CLK=>INCK,C=>INC,Q=>CC);

u3: LK35 PORT MAP (A1=>BB,A2=>CC,CLK=INCK, Q1=>DD,Q2=>OUT1);

u4: MUX21 POR T MAP (B=>AA,A=>DD,S=>BB,C=>E);

END ARCHITECTURE ONE;

设计含有异步清零和计数使能的16 位二进制加减可控计数器。

4-7.答案:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CNT16 IS

PORT(CLK,RST,EN:IN STD_LOGIC;

CHOOSE:IN BIT;

SETDATA:BUFFER INTEGER RANCE 65535 DOWNTO 0;

COUT: BUFFER INTEGER RANCE 65535 DOWNTO 0); END CNT16;

ARCHITECTURE ONE OF CNT16 IS

BEGIN

PROCESS(CLK,RST,SDATA)

V ARIABLE QI:STD_LOGIC_VECTOR(65535 DOWNTO 0);

BEGIN

IF RST='1' THEN --计数器异步复位

QI:=(OTHERS=>'0');

ELSIF SET=’1’THEN--计数器一步置位

QI:=SETDATA;

ELSIF CLK'EVENT AND CLK='1' THEN --检测时钟上升沿

IF EN=’1’THEN –检测是否允许计数

IF CHOOSE=’1’THEN --选择加法计数

QI:=QI+1;

--计数器加一

ELSE QI=QI-1; --计数器加一

END IF;

END IF;

END IF;

COUT<=QI;--将计数值向端口输出

END PROCESS;

END ONE;

第五章

5-1 归纳利用Quartus II 进行VHDL 文本输入设计的流程:从文件输入一直到SignalTap II 测试。P95~P115

答:1 建立工作库文件夹和编辑设计文件;2 创建工程;3 编译前设置;4 全程编译;5 时序仿真;6 引

脚锁定;7 配置文件下载;8 打开SignalTap II 编辑窗口;9 调入SignalTap II 的待测信号;10 SignalTap II

参数设置;11 SignalTap II 参数设置文件存盘;12 带有SignalTap II 测试信息的编译下载;13 启动SignalTap

II 进行采样与分析;14 SignalTap II 的其他设置和控制方法。

第六章

6-1 什么是固有延时?什么是惯性延时?P150~151

答:固有延时(Inertial Delay)也称为惯性延时,固有延时的主要物理机制是分布电容效应。

6-2 δ是什么?在VHDL 中,δ有什么用处?P152

δ是什么? 答:在VHDL 仿真和综合器中,默认的固有延时量(它在数学上是一个无穷小量),被称为δ延时。

在VHDL 中,δ有什么用处?答:在VHDL 信号赋值中未给出固有延时情况下,VHDL 仿真器和综合器将自动为

系统中的信号赋值配置一足够小而又能满足逻辑排序的延时量δ;使并行语句和顺序语句中的并列赋值逻辑得以正

确执行。

6-4 说明信号和变量的功能特点,以及应用上的异同点。P128~P129 答:变量:变量是一个局部量,只能在进程和子程序中使用。变量不能将信息带出对它做出定义的当前结构。

变量的赋值是一种理想化的数据传输,是立即发生的,不存在任何延时行为。变量的主要作用是在进程中作为临时

的数据存储单元。

信号:信号是描述硬件系统的基本数据对象,其性质类似于连接线;可作为设计实体中并行语句模块间的

信息交流通道。信号不但可以容纳当前值,也可以保持历史值;与触发器的记忆功能有很好的对应关系。

6-5 在VHDL 设计中,给时序电路清零(复位)有两种力方法,它们是什么?

解:设Q 定义成信号,一种方法:Q<=“000…000”;其中“000…000”反映出信号Q 的位宽度。第二种方

法:Q<=(OTHERS=>‘0’);其中OTHERS=>‘0’不需要给出信号Q 的位宽度,即可对Q 清零。

6-6 哪一种复位方法必须将复位信号放在敏感信号表中?给出这两种电路的VHDL 描述。

解:边沿触发复位信号要将复位信号放在进程的敏感信号表中。

(1)边沿触发复位信号

…………………….

ARCHITECTURE bhv 0F DFF3 IS

SIGNAL QQ:STD_LOGIC;

BEGIN

PROCESS(RST)

BEGIN

IF RST’EVENT AND RST=‘1' THEN

QQ<=(OTHERS=>‘0’);

END IF;

END PROCESS;

Q1<=QQ;

END;

………………………

(2)电平触发复位信号

…………………….

ARCHITECTURE bhv 0F DFF3 IS

SIGNAL QQ:STD_LOGIC;

BEGIN

PROCESS(CLK)

BEGIN

IF RST=‘1' THEN

QQ<=(OTHERS=>‘0’);

END IF;

END PROCESS;

Q1<=QQ;

END;

………………………

6-7 什么是重载函数?重载算符有何用处?如何调用重载算符函数?

答:(1)什么是重载函数? 根据操作对象变换处理功能。

(2)重载算符有何用处? 用于两个不同类型的操作数据自动转换成同种数据类型,并进行运算处理。

(3)如何调用重载算符函数?采用隐式方式调用,无需事先声明。

6-8 判断下面三个程序中是否有错误,若有则指出错误所在,并给出完整程序。

程序1:

Signal A,EN : std_logic;

…………………

Process(A, EN)

V ariable B: std_log ic;

Begin

if EN=l then B<=A;

end if;

--将“B<=A”改成“B:=A”

end process;

程序2:

Architecture one of sample is

variable a,b,c:integer;

begin

c<=a+b;

--将“c<=a+b”改成“c:=a+b”

end;

程序3:

library ieee;

use ieee.std_logic_1164.all;

entity mux21 is

PORT(a,b:in std_logic; sel:in std_loglc;c:out std_logle;);

--将“;)”改成“)”

end sam2;

--将“sam2”改成“entity mux21”

architecture one of mux2l is

begin

--增加“process(a,b,sel) begin ”

if sel= '0' then c:=a; else c:=b; end if;

--应改成“if sel= '0' then c<=a; else c<=b; end if;”

--增加“end process;”

end two;

--将“two”改成“architecture one”

7-2 LPM_ROM、LPM_RAM、LPM_FIFO 等模块与FPGA 中嵌入的EAB、ESB、M4K 有怎样的联系?

答:ACEXlK 系列为EAB;APEX20K 系列为ESB;Cyclone 系列为M4K

EDA技术试验问答题答案(基本包含)

第一章 1-1 EDA技术与ASIC设计和FPGA开发有什么关系?FPGA/CPLD在ASIC设计中有什么用途? 答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD是实现这一途径的主流器件。FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC(片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。FPGA/CPLD在ASIC设计中,属于可编程ASIC的逻辑器件;使设计效率大为提高,上市的时间大为缩短。 1-2与软件描述语言相比,VHDL有什么特点? P6 答:编译器将软件程序翻译成基于某种特定CPU的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。综合器将VHDL程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。 l-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? P5 什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。 有哪些类型?答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。 综合在电子设计自动化中的地位是什么?答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。 1-4在EDA技术中,自顶向下的设计方法的重要意义是什么? P7~10 答:在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。 1-5 IP在EDA技术的应用和发展中的意义是什么? P11~12 答:IP核具有规范的接口协议,良好的可移植与可测试性,为系统开发提供了可靠的保证。 1-6 叙述EDA的FPGA/CPLD设计流程。P13~16 答:1.设计输入(原理图/HDL文本编辑);2.综合;3.适配;4.时序仿真与功能仿真;5.编程下载;6.硬件测试。

EDA技术实用教程课后习题答案

第一章 1-1 EDA 技术与ASIC 设计与FPGA 开发有什么关系? 答:利用EDA 技术进行电子系统设计得最后目标就是完成专用集成电路ASIC 得设计与实现;FPGA 与CPLD 就是实现 这一途径得主流器件。FPGA 与CPLD 通常也被称为可编程专用IC,或可编程ASIC。FPGA 与CPLD 得应用就是EDA 技术 有机融合软硬件电子设计技术、SoC(片上系统)与ASIC 设计,以及对自动设计与自动实现最典型得诠释。 1-2 与软件描述语言相比,VHDL 有什么特点? P6 答:编译器将软件程序翻译成基于某种特定CPU 得机器代码,这种代码仅限于这种CPU 而不能移植,并且机器 代码不代表硬件结构,更不能改变CPU 得硬件结构,只能被动地为其特定得硬件电路结构所利用。综合器将VHDL 程序转化得目标就是底层得电路结构网表文件,这种满足VHDL 设计程序功能描述得电路结构,不依赖于任何特定硬 件环境;具有相对独立性。综合器在将VHDL(硬件描述语言)表达得电路功能转化成具体得电路结构网表过程中,具 有明显得能动性与创造性,它不就是机械得一一对应式得“翻译”,而就是根据设计库、工艺库以及预先设置得各类约 束条件,选择最优得方式完成电路结构得设计。 l-3 什么就是综合?有哪些类型?综合在电子设计自动化中得地位就是什么? 什么就是综合? 答:在电子设计领域中综合得概念可以表示为:将用行为与功能层次表达得电子系统转换为低层 次得便于具体实现得模块组合装配得过程。 有哪些类型? 答:(1)从自然语言转换到VHDL 语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器 传输级(RegisterTransport Level,RTL),即从行为域到结构域得综合,即行为综合。(3)从RTL 级表示转换到逻 辑门(包括触发器)得表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC 设计),或转换到FPGA 得配置网表 文件,可称为版图综合或结构综合。 综合在电子设计自动化中得地位就是什么? 答:就是核心地位(见图1-3)。综合器具有更复杂得工作环境,综合器 在接受VHDL 程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关得工艺库信息,以及获得优化综 合得诸多约束条件信息;根据工艺库与约束条件信息,将VHDL 程序转化成电路实现得相关信息。 1-4 在EDA 技术中,自顶向下得设计方法得重要意义就是什么? P7~10 答:在EDA 技术应用中,自顶向下得设计方法,就就是在整个设计流程中各设计环节逐步求精得过程。 1-5 IP 在EDA 技术得应用与发展中得意义就是什么? P11~12 答:IP 核具有规范得接口协议,良好得可移植与可测试性,为系统开发提供了可靠得保证。 第二章 2-1 叙述EDA 得FPGA/CPLD 设计流程。P13~16 答:1、设计输入(原理图/HDL 文本编辑);2、综合;3、适配;4、时序仿真与功能仿真;5、编程下载;6、硬件测试。 2-2 IP 就是什么?IP 与EDA 技术得关系就是什么? P24~26 IP 就是什么? 答:IP 就是知识产权核或知识产权模块,用于ASIC 或FPGA/CPLD 中得预先设计好得电路功能模块。 IP 与EDA 技术得关系就是什么? 答:IP 在EDA 技术开发中具有十分重要得地位;与EDA 技术得关系分有软IP、 固IP、硬IP:软IP 就是用VHDL 等硬件描述语言描述得功能块,并不涉及用什么具体电路元件实现这些功能;软IP 通常就是以硬件描述语言HDL 源文件得形式出现。固IP 就是完成了综合得功能块,具有较大得设计深度,以网表文件 得形式提交客户使用。硬IP 提供设计得最终阶段产品:掩模。 2-3 叙述ASIC 得设计方法。P18~19 答:ASIC 设计方法,按版图结构及制造方法分有半定制(Semi-custom)与全定制(Full-custom)两种实现方法。 全定制方法就是一种基于晶体管级得,手工设计版图得制造方法。 半定制法就是一种约束性设计方式,约束得目得就是简化设计,缩短设计周期,降低设计成本,提高设计正确率。 半定制法按逻辑实现得方式不同,可再分为门阵列法、标准单元法与可编程逻辑器件法。 2-4 FPGA/CPLD 在ASIC 设计中有什么用途? P16,18 答:FPGA/CPLD 在ASIC 设计中,属于可编程ASIC 得逻辑器件;使设计效率大为提高,上市得时间大为缩短。 2-5 简述在基于FPGA/CPLD 得EDA 设计流程中所涉及得EDA 工具,及其在整个流程中得作用。P19~23 答:基于FPGA/CPLD 得EDA 设计流程中所涉及得EDA 工具有:设计输入编辑器(作用:接受不同得设计输 入表达方式,如原理图输入方式、状态图输入方式、波形输入方式以及HDL 得文本输入方式。);HDL 综合器(作用: HDL 综合器根据工艺库与约束条件信息,将设计输入编辑器提供得信息转化为目标器件硬件结构细节得信息,并在 数字电路设计技术、化简优化算法以及计算机软件等复杂结体进行优化处理);仿真器(作用:行为模型得表达、 电子系统得建模、逻辑电路得验证及门级系统得测试);适配器(作用:完成目标系统在器件上得布局与布线);下 载器(作用:把设计结果信息下载到对应得实际器件,实现硬件设计)。 第三章 3-1 OLMC(输出逻辑宏单元)有何功能?说明GAL 就是怎样实现可编程组合电路与时序电路得。P34~36 OLMC 有何功能? 答:OLMC 单元设有多种组态,可配置成专用组合输出、专用输入、组合输出双向口、寄存器 输出、寄存器输出双向口等。 说明GAL 就是怎样实现可编程组合电路与时序电路得? 答:GAL(通用阵列逻辑器件)就是通过对其中得OLMC (输出逻辑宏单元)得编程与三种模式配置(寄存器模式、复合模式、简单模式),实现组合电路与时序电路设计 得。 3-2 什么就是基于乘积项得可编程逻辑结构? P33~34,40 答:GAL、CPLD 之类都就是基于乘积项得可编程结构;即包含有可编程与阵列与固定得或阵列得PAL(可编程阵

《测试技术》(第二版)课后习题答案-_

《测试技术》(第二版)课后 习题答案-_ -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

解: (1) 瞬变信号-指数衰减振荡信号,其频谱具有连续性和衰减性。 (2) 准周期信号,因为各简谐成分的频率比为无理数,其频谱仍具有离 散性。 (3) 周期信号,因为各简谐成分的频率比为有理数,其频谱具有离散 性、谐波性和收敛性。 解:x(t)=sin2t f 0π的有效值(均方根值): 2 /1)4sin 41(21)4sin 41(21)4cos 1(212sin 1)(1000 00 00 00 000 020 2 000=-= - = -== =? ? ? T f f T T t f f T T dt t f T dt t f T dt t x T x T T T T rms ππππππ 解:周期三角波的时域数学描述如下:

(1)傅里叶级数的三角函数展开: ,式中由于x(t)是偶函数,t n 0sin ω是奇函数,则t n t x 0sin )(ω也是奇函数,而奇函数在上下限对称区间上的积分等于0。故 =n b 0。 因此,其三角函数展开式如下: 其频谱如下图所示: ? ????????+≤ ≤-≤≤- +=) (2 02022)(0000 0nT t x T t t T A A t T t T A A t x 2 1)21(2)(12/0002/2/00000= -==??-T T T dt t T T dt t x T a ??-==-2/000 02 /2/00 000cos )21(4cos )(2T T T n dt t n t T T dt t n t x T a ωω?????==== ,6,4,20 ,5,3,14 2sin 422222n n n n n π ππ?-=2 /2 /00 00sin )(2T T n dt t n t x T b ω∑∞ =+=102 2 cos 1 4 21)(n t n n t x ωπ ∑∞ =++=102 2)2sin(1 421n t n n πωπ (n =1, 3, 5, …)

海大-EDA实验1参考答案

Laboratory Exercise 1 Switches, Lights, and Multiplexers ED实验参与答案 Part1 library ieee; use ieee.std_logic_1164.all; entity part1 is port(SW:in std_logic_vector(17 downto 0); LEDR:out std_logic_vector(17 downto 0)); end part1; architecture Behavior of part1 is begin LEDR <= SW; end Behavior; part2 library ieee; use ieee.std_logic_1164.all; --a 2 to 1 multiplexer entity entity mux21 is port(in_x, in_y, in_s:in std_logic; out_m:out std_logic); end mux21; --a 2 to 1 multiplexer architecture architecture structural of mux21 is signal u, v:std_logic; begin u <= in_x and (not in_s); v <= in_y and in_s ; out_m <= u or v ; end structural;

--a eight-bit wide 2 to 1 multiplexer library ieee; use ieee.std_logic_1164.all; --eight-bit wide 2 to 1 multiplexer entity entity mux21_8bit is port( SW: in std_logic_vector (17 downto 0); --SW: in std_logic_vector (15 downto 8); --SW: in std_logic_vector (17 downto 17); LEDR: out std_logic_vector (7 downto 0)); end mux21_8bit; --eight-bit wide 2 to 1 multiplexera rchitecture architecture Structural of mux21_8bit is component mux21 port(in_x, in_y, in_s:in std_logic; out_m:out std_logic); end component; begin U1:mux21port map (in_x=>SW(0), in_y=>SW(8), in_s=>SW(17), out_m=>LEDR(0)); U2:mux21port map (in_x=>SW(1), in_y=>SW(9), in_s=>SW(17), out_m=>LEDR(1)); U3:mux21port map (in_x=>SW(2), in_y=>SW(10), in_s=>SW(17), out_m=>LEDR(2)); U4:mux21port map (in_x=>SW(3), in_y=>SW(11), in_s=>SW(17), out_m=>LEDR(3)); U5:mux21port map (in_x=>SW(4), in_y=>SW(12), in_s=>SW(17), out_m=>LEDR(4)); U6:mux21port map (in_x=>SW(5), in_y=>SW(13), in_s=>SW(17), out_m=>LEDR(5)); U7:mux21port map (in_x=>SW(6), in_y=>SW(14), in_s=>SW(17), out_m=>LEDR(6)); U8:mux21port map (in_x=>SW(7), in_y=>SW(15), in_s=>SW(17), out_m=>LEDR(7)); end Structural; part3 library ieee; use ieee.std_logic_1164.all; --a 2 to 1 multiplexer entity entity mux21 is port(in_x, in_y, in_s:in std_logic; out_m:out std_logic);

EDA技术实用教程(第四版)习题答案

《EDA技术实用教程(第四版)》习题 3 习题 3-1 画出与以下实体描述对应的原理图符号元件: ENTITY buf3s IS --实体1:三态缓冲器 PORT(input:IN STD_LOGIC; --输入端 enable:IN STD_LOGIC; --使能端 output:OUT STD_LOGIC); --输出端 END buf3s ; ENTITY mux21 IS --实体2: 2选1多路选择器 PORT(in0, in1,sel: IN STD_LOGIC; output:OUT STD_LOGIC); 3-2 图3-16所示的是4选1多路选择器,试分别用IF_THEN语句和CASE语句的表达方式写出此电路的VHDL程序,选择控制信号s1和s0的数据类型为STD_LOGIC_VECTOR;当s1=’0’,s0=’0’;s1=’0’,s0=’1’;s1=’1’,s0=’0’和s1=’1’,s0=’1’时,分别执行y<=a、y<=b、y<=c、y<=d。 图3-16 4选1多路选择器 --解1:用IF_THEN语句实现4选1多路选择器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; mux21 in0 output in1 sel buf3s input output enable

ENTITY mux41 IS PORT (a,b,c,d: IN STD_LOGIC; s0: IN STD_LOGIC; s1: IN STD_LOGIC; y: OUT STD_LOGIC); END ENTITY mux41; ARCHITECTURE if_mux41 OF mux41 IS SIGNAL s0s1 : STD_LOGIC_VECTOR(1 DOWNTO 0);--定义标准逻辑位矢量数据BEGIN s0s1<=s1&s0; --s1相并s0,即s1与s0并置操作 PROCESS(s0s1,a,b,c,d) BEGIN IF s0s1 = "00" THEN y <= a; ELSIF s0s1 = "01" THEN y <= b; ELSIF s0s1 = "10" THEN y <= c; ELSE y <= d; END IF; END PROCESS; END ARCHITECTURE if_mux41; --解2:用CASE语句实现4选1多路选择器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux41 IS PORT (a,b,c,d: IN STD_LOGIC; s0: IN STD_LOGIC; s1: IN STD_LOGIC; y: OUT STD_LOGIC); END ENTITY mux41; ARCHITECTURE case_mux41 OF mux41 IS SIGNAL s0s1 : STD_LOGIC_VECTOR(1 DOWNTO 0);--定义标准逻辑位矢量数据类型BEGIN s0s1<=s1&s0; --s1相并s0,即s1与s0并置操作 PROCESS(s0s1,a,b,c,d) BEGIN CASE s0s1 IS --类似于真值表的case语句 WHEN "00" => y <= a; WHEN "01" => y <= b; WHEN "10" => y <= c; WHEN "11" => y <= d; WHEN OTHERS =>NULL ; END CASE; END PROCESS; END ARCHITECTURE case_mux41;

EDA技术实用教程第五版第13章习题答案

13-1进程有哪几种主要类型?不完全组合进程是 由什么原因引起的?有什么特点?如何避免? 解:两种: (1) begin 顺序语句 end process (2) begin wait 语句; 顺序语句 end process 两个的主要不同就在于敏感信号的不同 13-2比较CASE 语句与WITH_SELECT 语句,叙述它 们的异同点。并用WITH_SELECT_WHEN 语句描述4个16位至1个16位输出的4选1多路选择器。 答:①相同点:CASE 语句中各子句的条件不能有重叠,必须包容所有的条件;WITH_SECLECT 语句也不允许选择值有重叠现象,也不允许选择值涵盖不全的情况。另外,两者对子句各选择值的测试都具有同步性,都依赖于敏感信号的变化。 不同点:CASE 语句只能在进程中使用,至少包含一个条件语句,可以有多个赋值目标;WITH_SECLECT 语句根据满足的条件,对信号进行赋值,其赋值目标只有一个,且必须是信号。 ②LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux IS PORT( dina : IN STD_LOGIC_VECTOR(0 to 15); dinb : IN STD_LOGIC_VECTOR(0 to 15); dinc : IN STD_LOGIC_VECTOR(0 to 15); dind : IN STD_LOGIC_VECTOR(0 to 15); sel: IN STD_LOGIC_VECTOR(0 to 1); dout : OUT STD_LOGIC_VECTOR(0 to 15)); END mux; ARCHITECTURE rtl OF mux IS BEGIN with sel select dout<=dina WHEN "00", dinb WHEN "01", dinc WHEN "10", dind WHEN "11", "ZZZZZZZZZZZZZZZZ" when others; END rtl; 13-3 为什么说一条并行赋值语句可以等效为一 个进程?如果是这样的话,该语句咋么实现敏感信号的检测? 解:因为信号赋值语句的共同点是赋值目标必须都是信号,所有赋值语句与其它并行语句一样,在结构体内的执行是同时发生的,与它们的书写顺序没有关系,所以每一信号赋值语句都相当于一条缩写的进程语句。由于这条语句的所有输入信号都被隐性地列入此缩写进程的敏感信号表中,故任何信号的变化都将相关并行语句的赋值操作,这样就实现了敏感信号的检测。 13-4 在STRING,TIME ,REAL,BIT 数据类型中,VHDL 综合器支持哪些类型? 答:VHDL 支持BIT 类型和STRING 类型,其他属于用户定义的数据类型不能综合 13-5 判断下列VHDL 标识符是否合法,如果有误 则指出原因16#0FA#,10#12F#,8#789#,8#356#,2#0101010#,74HC245,\74HC574\,CLR/RESET ,\IN 4/SCLK\, D100%。 答:识符用法规定:(1)只能包含英文字母,数字,下划线(2)标识符的首字符只能是字母。故: (1)16#0FA#错在首字符是数字,且包含非法字符“#“。 10#12F#、8#789#,8#356#,2#0101010#,74HC245也是犯同一错误。 (2)\74HC574\,CLR/RESET,\IN4/SCLK\,D100%都 是非法,包含非法字符…. 13-6 数据类型BIT,INTEGER 和BOOLEAN 分别定义 在那个库中?哪些库和程序包总是可见的? 答:BIT 定义在IEEE 库中,INTEGER 和BOOLEAN 定义在STD 库中,除了STD 库和WORK 库外,IEEE 库面向ASIC 的库和用户自定义的库及其中的包集合 13-7 函数与过程的设计与功能有什么区别? 调用上有什么区别? 1.函数的定义由函数首和函数体两部分组成,在进程或结构体中不必定义函数首,而在程序包中必须定义函数首。 过程也由过程首和过程体构成,在进程或结构体中不必定义过程首,而在过程包中必须定义过程首。 2.函数是串行,过程是串行。 3区别:(1)参数表的区别。函数的参数表是用来定义输出值的,所以不必以显式表示参数的方向;过程的参数表可以对常数、变量和信号三类数据对象目标作出说明,并用关键词IN 、OUT 和INOUT 定

(完整版)测试技术课后题答案

1-3 求指数函数()(0,0)at x t Ae a t -=>≥的频谱。 (2)220 2 2 (2) ()()(2) 2(2)a j f t j f t at j f t e A A a j f X f x t e dt Ae e dt A a j f a j f a f -+∞ ∞ ---∞-∞-==== =-+++??πππππππ ()X f = Im ()2()arctan arctan Re ()X f f f X f a ==-π? 1-5 求被截断的余弦函数0cos ωt (见图1-26)的傅里叶变换。 0cos ()0 ωt t T x t t T ?≥的频谱密度函数为 1122 1()()j t at j t a j X f x t e dt e e dt a j a ∞ ∞ ----∞ -= == =++? ?ωωω ωω 根据频移特性和叠加性得: []001010222200222 000222222220000()()11()()()22()()[()]2[()][()][()][()] a j a j X X X j j a a a a j a a a a ??---+= --+=-??+-++?? --= -+-+++-++ωωωωωωωωωωωωωωωωωω ωωωωωωωω

EDA技术与VHDL基础课后复习题答案

《EDA技术与VHDL基础》 课后习题答案 第一章 EDA技术概述 一、填空题 1、电子设计自动化 2、非常高速集成芯片硬件描述语言 3、CAD、CAE、EDA 4、原理图输入、状态图输入、文本输入 5、VHDL、Verilog HDL 6、硬件特性 二、选择题 1、A 2、C 3、A 4、D 5、C 6、D 7、A 第二章可编程逻辑器件基础 一、填空题 1、PLD 2、Altera公司、Xilinx公司、Lattice公司 3、基于反熔丝编程的 FPGA 4、配置芯片 二、选择题 1、D 2、C 3、C 4、D 第三章 VHDL程序初步——程序结构 一、填空题 1、结构、行为、功能、接口 2、库和程序包、实体、结构体、配置 3、实体名、类型表、端口表、实体说明部分

4、结构体说明语句、功能语句 5、端口的大小、实体中子元件的数目、实体的定时特性 6、设计库 7、元件、函数 8、进程PROCESS、过程PROCEDURE 9、顺序语句、并行语句 二、选择题 1、D 2、C 3、C 4、B 5、D 6、B 7、A 8、C 三、简答题 2、 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY nand_3in IS PORT(a,b,c:IN STD_LOGIC; y:OUT STD_LOGIC); END; ARCHITECTURE bhv OF nand_3in IS BEGIN y<=NOT(a AND b AND c); END bhv; 5、0000 6、11110111(247) 第四章 VHDL基础 一、填空题 1、顺序语句、并行语句 2、跳出本次循环 3、等待、信号发生变化时 4、函数、过程 5、值类属性、函数类属性、信号类属性、数据类型类属性、数据范围类属性 6、程序调试、时序仿真 7、子程序、子程序 二、选择题

机械工程测试技术课后习题答案

机械工程测试技术课后 习题答案 集团标准化小组:[VVOPPT-JOPP28-JPPTL98-LOPPNN]

第三章:常用传感器技术 3-1 传感器主要包括哪几部分?试举例说明。 传感器一般由敏感元件、转换元件、基本转换电路三部分组成。 如图所示的气体压力传感器。其内部的膜盒就是敏感元件,它的外部与大气压力相通,内部感受被测压力p ,当p 发生变化时,引起膜盒上半部分移动,可变线圈是传感器的转换元件,它把输入的位移量转换成电感的变化。基本电路则是完成上述电感变化量接入基本转换电路,便可转换成电量输出。 3-2 请举例说明结构型传感器与物性型传感器的区别。 答:结构型传感器主要是通过传感器结构参量的变化实现信号变换的。例如,电容式传感器依靠极板间距离变化引起电容量的变化;电感式传感器依靠衔铁位移引起自感或互感的变化。 物性型传感器则是利用敏感元件材料本身物理性质的变化来实现信号变换。例如,水银温度计是利用水银的热胀冷缩性质;压电式传感器是利用石英晶体的压电效应等。 3-3 金属电阻应变片与半导体应变片在工作原理上有何区别? 答: (1)金属电阻应变片是基于金属导体的“电阻应变效应”, 即电阻材料在外力作用下发生机械变形时,其电阻值发生变化的现象,其电阻的相对变化为()12dR R με=+; (2)半导体应变片是基于半导体材料的“压阻效应”,即电阻材料受到载荷作用而产生应力时,其电阻率发生变化的现象,其电阻的相对变化为dR d E R ρλερ == 。 3-4 有一电阻应变片(见图3-105),其灵敏度S 0=2,R =120Ω,设工作时其 应变为1000με,问ΔR =?设将此应变片接成图中所示的电路,试求:1)无应变时电流指示值;2)有应变时电流指示值;3)试分析这个变量能否从表中读出? 解:根据应变效应表达式R /R =S g 得 R =S g R =2100010-6120=0.24 1)I 1=1.5/R =1.5/120=0.0125A=12.5mA 2)I 2=1.5/(R +R )=1.5/(120+0.24)0.012475A=12.475mA 图3-105 题3-4图

eda实验课后习题答案

1.功能仿真和时序仿真有何不同?为什么? 答:EDA 中功能仿真是纯理论的仿真,功能仿真不考虑信号传送 过程中的延迟。仿真结果可以和我们的真值表对应起来。而时序仿真则要考虑信号传送过程中的延迟,有可能出现竞争冒险等。时序仿真比较接近实际。由图(2)(3)中可知时序仿真中的波形有一小段时间比功能仿真中的波形多了一个BCD码--13。因为功能仿真只是考虑元件的理想功能,而时序仿真考虑到实际元器件的信号延时、输入/输出时间的延时、触发器的建立/保持时间、寄存器的性能等等 1,什么是同步清零和异步清零? 同步清零就是把清零信号和时钟信号与或者与非处理后输入到清零端,异步清零的清零信号直接输入到清零端。 同步清零可以保证状态在时钟的有效期内不会改变。就是说,同步清零要与时钟同步触发,而异步清零就不关心时钟上升沿是否到来。 2,BCD计数器和一般二进制计数器有何差别? 用4位二进制数来表示1位十进制数中的0~9这10个数码,简称BCD码。称BCD码或二-十进制代码,亦称二进码十进数。是一种二进制的数字编码形式,用二进制编码的十进制代码。 由于十进制数共有0、1、2、……、9十个数码,因此,至少需要4位二进制码来表示1位十进制数。4位二进制码共有2^4=16种码组,在这16种代码中,可以任选10种来表示10个十进制数码,共有N=16!/(16-10)!约等于2.9乘以10的10次方种方案。 二进制计数器是数字系统中用得较多的基本逻辑器件。它不仅能记录输入时钟脉冲的个数,还可以实现分频、定时、产生节拍脉冲和脉冲序列等。例如,计算机中的时序发生器、分频器、指令计数器等都要使用计数器。 计数器的种类很多。按时钟脉冲输入方式的不同,可分为同步计数器和异步计数器;按进位体制的不同,可分为二进制计数器和非二进制计数器;按计数过程中数字增减趋势的不同,可分为加计数器、减计数器和可逆计数器 3. 键盘为什么要防抖动?如何防抖动? 主要目的是为了提高按键输入可靠性,由于机械触点的弹性振动,按键在按下时不会马上稳定地接通而在弹起时也不能一下子完全地断开,因而在按键闭合和断开的瞬间均会出现一连串的抖动,这称为按键的抖动干扰。按键的抖动会造成按一次键产生的开关状态被CPU 误读几次。为了使CPU 能正确地读取按键状态,必须在按键闭合或断开时,消除产生的前沿或后沿抖动。去抖动的方法有硬件方法和软件方法两种。硬件方法是设计一个滤波延时电路或单稳态电路等硬件电路来避开按键的抖动时间。软件方法是指编制一段时间在5 - 10ms 的延时程序,在第一次检测到有键按下时,执行这段延时子程序使键的前沿抖动消失后再检测该键状态,如果该键仍保持闭合状态电平,则确认为该键已稳定按下,否则无键按下,从而消除了抖动的影响。 1、所设计的频率计有测量误差吗?误差是多少?如何减少误差? 答:有误差;一个周期;减少误差的方法是进行多次测量再取平均值或把待 测信号先多次移相测量再取平均值。 2、为什么需要锁存器?锁存器锁存信号应在什么时刻锁存?为什么? 锁存器的作用是锁存计数器的计数结果,锁存信号Load上升沿有效,当控制模块的load 信号有效时,锁存器立即锁存计数器记录的频率值,送到译码器译码,然后送到数码管显示。锁存器输出端的状态不会随输入端的状态变化而变化,只有在有锁存信号时输入的状态被保

测试技术部分课后习题参考答案

第1章测试技术基础知识 1.4常用的测呈结果的表达方式有哪3种?对某量进行了8次测量,测得值分别为:8 2.40、 82.43、82.50、82.48、82.45、82.38、82.42、82.46 0试用3 种表达方式表示其测量结果。 解:常用的测量结果的表达方式有基于极限误差的表达方式、基于/分布的表达方式和基于不确怎度的表达方式等3种 1)基于极限误差的表达方式可以表示为 均值为 因为最大测量值为82.50,最小测量值为82.38,所以本次测量的最大误差为0.06.极限误差戈m取为最大误差的两倍,所以 忑=82.44 ±2x 0.06 = 82.44 ±0.12 2)基于/分布的表达方式可以表示为 一A = X ± S

= 0.014 自由度“8-1 = 7,置信概率0 = 0.95,查表得f 分布值0 = 2.365,所以 x () = 82.44 ± 2.365 x 0.014 = 82.44 ± 0.033 3)基于不确定度的表达方式可以表示为 所以 X O =82.44±O.O14 解題思路:1)给岀公式;2)分别讣算公式里而的各分项的值;3)将值代入公式,算岀结 果。 第2章信号的描述与分析 2.2 一个周期信号的傅立叶级数展开为 含有正弦项的形式。 解^基波分量为 2JT T I 120JT . n ——cos —r + sin —r 10 4 30 4 所以:1)基频 co {} = - (rad / s) 4 2)信号的周期7 = —= 8(5) 5 — A — =X±(7x = X± 求: 曲)=4 + £( /I-1 2 K /? rm os —1 + 10 4 120”兀.fin ---- sin ——/) 30 4 (/的单位是秒) 1) ^(): 2)信号的周期:3)信号的均值; 4)将傅立叶级数表示成只 y(r)h ?]=

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

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) BEGIN IF 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允许用户对原有的基本操作符重新定义,赋予新的含义和功能,从而建立一种新的操作符,这就是重载操作符,定

EDA技术使用教程课后答案

第二章 2-1 叙述EDA的FPGA/CPLD设计流程。P13~16 答:1.设计输入(原理图/HDL文本编辑);2.综合;3.适配;4.时序仿真与功能仿真;5.编程下载;6.硬件测试。2-2 IP是什么?IP与EDA技术的关系是什么? P24~26 IP是什么? 答:IP是知识产权核或知识产权模块,用于ASIC或FPGA/CPLD中的预先设计好的电路功能模块。 IP与EDA技术的关系是什么?答:IP在EDA技术开发中具有十分重要的地位;与EDA技术的关系分有软IP、固IP、硬IP:软IP是用VHDL等硬件描述语言描述的功能块,并不涉及用什么具体电路元件实现这些功能;软IP 通常是以硬件描述语言HDL源文件的形式出现。固IP是完成了综合的功能块,具有较大的设计深度,以网表文件的形式提交客户使用。硬IP提供设计的最终阶段产品:掩模。 2-3 叙述ASIC的设计方法。P18~19 答:ASIC设计方法,按版图结构及制造方法分有半定制(Semi-custom)和全定制(Full-custom)两种实现方法。 全定制方法是一种基于晶体管级的,手工设计版图的制造方法。 半定制法是一种约束性设计方式,约束的目的是简化设计,缩短设计周期,降低设计成本,提高设计正确率。半定制法按逻辑实现的方式不同,可再分为门阵列法、标准单元法和可编程逻辑器件法。 2-4 FPGA/CPLD在ASIC设计中有什么用途? P16,18 答:FPGA/CPLD在ASIC设计中,属于可编程ASIC的逻辑器件;使设计效率大为提高,上市的时间大为缩短。2-5 简述在基于FPGA/CPLD的EDA设计流程中所涉及的EDA工具,及其在整个流程中的作用。P19~23答:基于FPGA/CPLD的EDA设计流程中所涉及的EDA工具有:设计输入编辑器(作用:接受不同的设计输入表达方式,如原理图输入方式、状态图输入方式、波形输入方式以及HDL的文本输入方式。);HDL综合器(作用:HDL综合器根据工艺库和约束条件信息,将设计输入编辑器提供的信息转化为目标器件硬件结构细节的信息,并在数字电路设计技术、化简优化算法以及计算机软件等复杂结体进行优化处理);仿真器(作用:行为模型的表达、电子系统的建模、逻辑电路的验证及门级系统的测试);适配器(作用:完成目标系统在器件上的布局和布线);下载器(作用:把设计结果信息下载到对应的实际器件,实现硬件设计)。 第三章 3-1 OLMC(输出逻辑宏单元)有何功能?说明GAL是怎样实现可编程组合电路与时序电路的。P34~36 OLMC有何功能? 答:OLMC单元设有多种组态,可配置成专用组合输出、专用输入、组合输出双向口、寄存器输出、寄存器输出双向口等。 说明GAL是怎样实现可编程组合电路与时序电路的? 答:GAL(通用阵列逻辑器件)是通过对其中的OLMC (输出逻辑宏单元)的编程和三种模式配置(寄存器模式、复合模式、简单模式),实现组合电路与时序电路设计的。 3-2 什么是基于乘积项的可编程逻辑结构? P33~34,40 答:GAL、CPLD之类都是基于乘积项的可编程结构;即包含有可编程与阵列和固定的或阵列的PAL(可编程阵列逻辑)器件构成。 3-3 什么是基于查找表的可编程逻辑结构? P40~41 答:FPGA(现场可编程门阵列)是基于查找表的可编程逻辑结构。 3-4 FPGA系列器件中的LAB有何作用? P43~45 答:FPGA(Cyclone/Cyclone II)系列器件主要由逻辑阵列块LAB、嵌入式存储器块(EAB)、I/O单元、嵌入式硬件乘法器和PLL等模块构成;其中LAB(逻辑阵列块)由一系列相邻的LE(逻辑单元)构成的;FPGA可编程资源主要来自逻辑阵列块LAB。 3-5 与传统的测试技术相比,边界扫描技术有何优点? P47~50 答:使用BST(边界扫描测试)规范测试,不必使用物理探针,可在器件正常工作时在系统捕获测量的功能数

相关文档
相关文档 最新文档