什么是EDA技术

更新时间:2023-11-08 05:06:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1. 什么是EDA技术?

答:EDA是指电子设计自动化。指以PLD为设计载体,以HDL为系统逻辑描述的主要方式,以计算机、开发软件、开发系统为设计工具,通过相关的开发软件,自动完成将用软件方式设计的电子系统转化成硬件电路,最终形成集成电子系统或ASIC的一门新技术。

2. 一般把EDA技术的发展分为CAD、CAE和EDA三个阶段,并向着ESDA方向发展。 3. EDA技术的精髓是什么?它们各自的含义是什么?

答:精髓是建模、仿真、综合。建模指的是用硬件描述语言描述电路的功能;仿真指的是验证所建模型的电路功能;综合是指把软件模型转化为硬件电路。

4. EDA技术在应用设计领域主要包含哪四个方面的内容(1) HDL (2)PLD (3)EDA工具软件(4) EDA开发系统 。 5.EDA技术的基本特征(1)自顶向下的设计方法;(2)采用硬件描述语言;(3)高层综合和优化;(4)并行工程;(5)开放性和标准化。

6.当前最流行的并成为IEEE标准的硬件描语言是 VHDL 和Verilog-HDL。 7.什么是PLD?

答: PLD,Programmable-Logic-Device,即可编程逻辑器件。是一种具有内建结构、由用户编程以实现某种逻辑功能的新型逻辑器件。 8.SPLD的基本结构框图是什么?

9.一般CPLD器件至少包含可编程逻辑宏单元,可编程I/O单元和可编程内部连线3种基本结构。

一般FPGA器件至少包含可编程逻辑功能块/CLB、IOB/可编程I/O块和PI/可编程内部互连三类可编程资源。

10.用PROM完成半加器/全加器的示意图。

11.使用方框图示意出采用硬件描述语言设计硬件电路进行由上而下的设计的三个层次为:

行为级仿真 RLT级仿真 设计规格 行为级描述 RLT级描述

1 2

输出门级网表 门级仿真、定时检查 逻辑综合优化

3

12.可编程逻辑器件的发展趋势在哪5个方面(1)向更大规模、更高集成度的片上系统方向发展(2)向低电压、低功耗的绿色器件方向发展(3)向更高速可预测延时的方向发展(4)向在PLD内嵌入多种功能模块的方向发展 (5)向模数混合可编程的方向发展 13.目前,在PLD器件制造与生产领域的三大公司为Altera、Xilinx和Lattice 14.FPGA的发明者是 Xilinx 公司;ISP编程技术的发明者是Lattice公司。

16、目前常见的可编程逻辑器件的编程和配置工艺包括基于E2PROM/Flash技术、基于SRAM查找表的编程单元和基于反熔丝编程单元。

17、基于EPROM、E2PROM和快闪存储(flash)器件的可编程器件,在系统断电后编程信

息不丢失

18、采用SRAM结构的的可编程器件,在系统断电后编程信息丢失 19、Verilog-HDL于1983年推出,是在C语言的基础上演化而来的。 于1995年正式采纳为IEEE标准,其代号为Verilog-HDL1634-1995。 20、一个基本的Verilog-HDL程序由模块构成。

21、一个完整的Verilog-HDL设计模块包括:模块关键字和模块名、端口列表、端口定义、

和功能描述4部分。

22、Verilog-HDL模块的I/O端口声明用来声明模块端口定义中各端口数据流动方向,包括 输入端口、输出端口和双向端口。

23、Verilog-HDL语言的三种常用的模型描述方法为行为描述、结构描述和数据流描述。 24.Verilog-HDL的数值集合由哪四种基本的值组成(1)0(2)1(3)x(4)z。 25、10’hxf=10’xxxxxx1111; 10’hzf=10’zzzzzz1111; 26、标识符count、Count、COUNT是代表同一标识符吗?不是,因为标识符区分大小写。 27、wor和trior连线类型,在多重驱动时 ,具有 线或 特性的连线;wand和triand

连线类型,在多重驱动时,具有 线与 特性的连线。

28、Wire[15:0] wire-b表示连线宽度为 16 位,其最高位为15 ,最低位为0 。 29、tri[7:0]bus表示 定义了一个8位宽的线矢量,名字叫bus 。

30、常用的register 型变量主要为 reg 、 integer 、 time 和 real 四种。 31、若a=5’b10x01,b=5’b10x01,则

a= =b的结果为 x a= = =b的结果为 1 32、若A=5’b11011,B=5’b10101,则有

&A=0 |B=1 ~A=5’b00100 A&B=5’b10001 33、若A=8’b1000_0100

则A<<3的结果为8’b00100000 A>>3的结果为8’b00010000; 34、对于Verilog-HDL语言中的关键字,在建模时都必须 小 写。

35、MAX+ plusⅡ软件是Altera公司自己开发的 第三代PLD开发 软件。

36、MAX+ plusⅡ软件支持的设计的方式有图形输入、文本输入、波形输入和符号输入等不

同的编辑方式。

37、MAX+ plusⅡ软件环境下,执行原理图输入设计法,应选择图形输入方式。其设计文件保存的扩展名应为.gdf .

若在MAX+ plusⅡ软件环境下,执行文本输入设计法,应选择文本输入方式。对于Verilog语言其设计文件保存的扩展名应为.v .

第一部分思考题:

1、谈谈你对EDA技术的理解。

2、简要解释建模、仿真和综合的含义。

答:建模是指用硬件描述语言描述电路的功能。仿真是指验证电路的功能。综合是指把软件模型转化为硬件电路。

3、EDA技术的主要特征有哪些?

答:自顶向下的设计方法;采用硬件描述语言;高层综合优化;并行工程;开放性和标准化。

4、什么是SOC和SOPC?

SOC:System On a Chip,片上系统。

SOPC:System On Programmable Chip,可编程片上系统。 5、什么是硬件描述语言?用硬件描述语言设计电路有哪些优点?

答:是一种用于设计硬件电子系统的计算机语言,它用软件编程的方式来描述电子系统的功能、电路结构和连接形式;与传统的门级描述方式相比,它更适合复杂数字电子系统的设计。

突出的优点:

① 语言的公开可利用性; ② 设计与工艺的无关性; ③ 宽范围的描述能力;

④ 便于组织大规模系统的设计;

⑤ 便于设计的复用、交流、保存和修改等。6、Top-Down与Bottom-Up的硬件电路的设计方法各有何优缺点?

答:Top-Down的设计方法有利于早期发现结构设计上的错误,避免设计工作的浪费,减少了逻辑功能仿真的工作量,提高了设计的一次成功率。

7、OLMC的主要功能是什么?简述GAL是如何实现组合电路和时序电路功能的? 提供内总信号反馈,控制输出逻辑极性;分配控制信号。

GAL利用与或阵列加寄存器的结构实现组合电路和时序电路功能。8、 什么是基于乘

答:主要功能是提供时序电路需要的寄存器或触发器;提供多种形式的输入/输出方式;

积项的可编程逻辑结构?通常它实现什么电路更优?

答:CPLD是基于乘积项的可编程逻辑结构。适于实现复杂的组合逻辑;复杂的状态机; 控制量多的逻辑;完全编码的状态机。9、 什么是基于查找表的可编程逻辑结构?通常它实现什么电路更优?

答:FPGA是基于查找表的可编程逻辑结构。适于实现数据通路功能;寄存器用量大的设计;算术功能;“One Hot” 方式编码的状态机。

1、根据部分程序,用示意图表示a、b、c值发生的时刻 程序1:

module a_bc1;

reg a,b,c;

begin a= #5 1; b= #10 0; a发生 b发生 c发生 c= #2 1;

end

endmodule

程序2:

module a_bc2;

reg a,b,c;

initial

begin

0 5 15 17 #

a<=#15 1; b<=#5 0; c<=#10 1;

end endmodule

b发生 c发生 a发生 15 # 0

5 10

2、设a=8’b0011_1001, b=8’b1110_1110,请分别计算结果。 a = = b 0 a&& b 1 a!=b 1 !a 0 a> b 0 a&b 8’b0010_1000 {3{a,b}} a>>5 0000_0001 ~ a 8’b1100_0110 b<<3 0111_0000 &b 0 !b 0 {3{a,b}}=48’b0011_1001_1110_1110_0011_1001_1110_1110_0011_1001_1110_1110

1、 四选一数据选择器定义为UDP元件,且元件名称为MUX4-1。

primitive MUX4-1(out,D1,D2,a,b,c,d); output out;

input D1,D2,a,b,c,d; table

// D1 D2 a b c d : out 0 0 0 ? ? ? : 0; 0 0 1 ? ? ? : 1; 0 1 ? 0 ? ? : 0; 0 1 ? 1 ? ? : 1; 1 0 ? ? 0 ? : 0; 1 0 ? ? 1 ? : 1; 1 1 ? ? ? 0 : 0; 1 1 ? ? ? 1 : 1; endtable endprimitive

2、用case语句编写BCD码--七段数码管显示译码电路的Verilog程序,且模块名为de4-7

数码管为共阴数码管。

module dec4_7(a,b,c,d,e,f,g,D3,D2,D1,D0); output a,b,c,d,e,f,g;

input D3,D2,D1,D0; //输入的4位BCD码 reg a,b,c,d,e,f,g;

always @(D3 or D2 or D1 or D0) begin

case({D3,D2,D1,D0})

4′d0:{a,b,c,d,e,f,g} = 7′b1111110; 4′d1:{a,b,c,d,e,f,g} = 7′b0110000; 4′d2:{a,b,c,d,e,f,g} = 7′b1101101;

4′d3:{a,b,c,d,e,f,g} = 7′b1111001; 4′d4:{a,b,c,d,e,f,g} = 7′b0110011; 4′d5:{a,b,c,d,e,f,g} = 7′b1011011; 4′d6:{a,b,c,d,e,f,g} = 7′b1011111; 4′d7:{a,b,c,d,e,f,g} = 7′b1110000; 4′d8:{a,b,c,d,e,f,g} = 7′b1111111; 4′d9:{a,b,c,d,e,f,g} = 7′b1111011; default:{a,b,c,d,e,f,g} = 7′bx;

endcase

end

endmodule

3、用for语句编写一个7人投票表决的Verilog 程序,且模块名为Voter-7;多数赞成通过,

否则,不通过。

module Voter-7(out,in); outout out; input in;

reg[6:0]in_buf; reg[2:0]count; reg out; integer I; always@(in) begin

in_buf=in; count=0;

for(I=0;I<7;I=I+1)

begin

if(in_buf[I]) count=count+1; out=(count>=4)?1:0; end

end endmodule

4、用Verilog描述产生一周期为200ms的方波周期信号(至少用两种方法) 参考教材80页

方法一:

`timescale 1ms/1ms module wave(wav); output wav; reg wav; initial

本文来源:https://www.bwwdw.com/article/kf32.html

Top