搜档网
当前位置:搜档网 › EDA技术

EDA技术

EDA技术
EDA技术

《EDA技术》

课程设计报告

题目:地铁自动售票机控制系统的设计

班级:12级电信本二

学号:1203010216

姓名:涂划

同组人员:田咪咪、周德喜、邱小青、王勤川

指导教师:杨祖芳

2015年4月21日

目录

1.设计任务 (1)

2.设计方案 (1)

3.各模块设计 (2)

3.1工程变量定义 (2)

3.2状态信号声明 (2)

3.3时序进程 (2)

3.4状态转换 (3)

3.5找零及出票 (3)

4.系统仿真结果 (5)

4.1器件仿真 (5)

4.2软件仿真 (5)

5.硬件测试 (7)

5.1芯片选择 (7)

5.2引脚配置 (8)

5.3硬件仿真 (8)

6.总结 (9)

7.指导教师意见 (10)

参考书目 (11)

地铁自动售票机控制系统的设计

1.设计任务

设计一个地铁站自动售票机。假定票价为 2.5元,可使用两种硬币,即5角和1元,机器有找零功能。机器设计有2个投币孔,可用2个按键来代替。还设有2个输出孔,分别输出乘车牌和找零,提示用户取走车票牌和零钱。

2.设计方案

我们定义输入信号:state_input(0)表示投入1元硬币,state_input(1)表示投入5角硬币。输入信号为1表示投入1元硬币,输入信号为0表示投入5角硬币。定义七种状态:S0表示初态,S1表示投入5脚硬币,S2表示投入一元硬币,S3表示投入1.5元,S4表示投币2元,S5表示投币2.5元,S6表示投币3元。运用各种状态之间的转换则可以实现计算投币的次数并且可以判断是否找零与出票。此次设计包括三部分,第一为投币部分,定义一个两位的输入信号,分别表示一元和五角,在试验箱上可以用两个按键标示,定义时钟信号clock

用于按键扫描。第二部分,状态信号的转换,需要用到case语句及when语句,当有输入信号时,马上作出判断是否进入下一状态,进入哪一状态。当钱币达到票价,自动出票,超过票价自动出票并找零。状态转换图如图2-1所示。

图2-1 自动售票机的状态转换图

3.各模块设计

3.1工程变量定义

定义时钟输入信号clk,复位输入信号reset,定义两位的投币输入信号state_inputs,定义出票及出币信号comb_outputs,其中有七位,0到6表示找零可用数码管显示,7表示出票可以用LED显示。程序如下:

library ieee;

use ieee.std_logic_1164.all;

entity subway is

port (clk,reset:in std_logic; --时钟信号

state_inputs:in std_logic_vector(0 to 1); --投币信号

comb_outputs:out std_logic_vector(7 downto 0)); --出票出币信号end subway;

3.2状态信号声明

在结构体中定义状态信号,现态,次态,及各种状态列举,程序如下:architecture be of subway is

type fsm_st is (s0,s1,s2,s3,s4,s5,s6); --状态的枚举类型定义signal current_state,next_state:fsm_st; --状态信号的定义

3.3时序进程

进程开始后,若按复位键则系统返回到初始状态,即返回到S0状态,时钟每次上升沿进行触发,当触发后则现态转换到次态,实现状态的转换。具体程序如下:

begin

reg:process(reset,clk) --时序进程

begin

if reset='1'then current_state<=s0; --发生reset异步复位elsif rising_edge(clk)then --上升沿触发

current_state<=next_state; --状态转换

end if;

end process;

3.4状态转换

开始进程,用case语句定义状态信号,给初始状态赋值00111111,即出票显示低电平,找零所在数码管的各个LED的输入相应电平,显示出0的字样。用if语句判断按键的情况,当输入00则扔处在初始状态,当输入01则跳转到S1状态,当输入10则跳转到S2状态。详细程序如下:

com:process(current_state,state_inputs) --组合进程

begin

case current_state is --转换信号

when s0=>comb_outputs<= "00111111"; --现态s0,输出00 if state_inputs="00"

then next_state<=s0;

elsif state_inputs="01" --输入不同,次态不同then next_state<=s1;

elsif state_inputs="10"

then next_state<=s2;

end if;

3.5找零及出票

先判断当前所处的状态,并给当前的状态赋值,如果当前处在S1,S2,S3,S4状态,则投币均未达到票价,因此需要给的值便是00111111,代表出票为零,数码管显示0的字样。如果当前处在S5状态则给的值为10111111,代表出票为1,数码管显示0的字样。如果当前处在S6状态则给的值为10111111,代表出票为1,数码管显示5的字样。同样确定当前状态后,可以根据按键的输入判断次态是哪一个,实现出票找零功能。

when s1=>comb_outputs<="00111111"; --现态s1,输出00 if state_inputs="00" then next_state<=s1;

elsif state_inputs="01"then next_state<=s2; --输入不同,次态不同elsif state_inputs="10"then next_state<=s3;

end if;

when s2=>comb_outputs<="00111111"; --现态s2,输出00

if state_inputs="00" then next_state<=s2;

elsif state_inputs="01"then next_state<=s3; --输入不同,次态不同elsif state_inputs="10"then next_state<=s4;

end if;

when s3=>comb_outputs<="00111111"; --现态s3,输出00 if state_inputs="00"

then next_state<=s3;

elsif state_inputs="01"then next_state<=s4; --输入不同,次态不同elsif state_inputs="10"then next_state<=s5;

end if;

when s4=>comb_outputs<="00111111"; --现态s4,输出00 if state_inputs="00"

then next_state<=s4;

elsif state_inputs="01"then next_state<=s5; --输入不同,次态不同elsif state_inputs="10"then next_state<=s6;

end if;

when s5=>comb_outputs<="10111111"; --现态s5,输出00

if state_inputs="00" then next_state<=s0;

elsif state_inputs="01"then next_state<=s1; --输入不同,次态不同elsif state_inputs="10"then next_state<=s2;

end if;

when s6=>comb_outputs<="11101101"; --现态s6,输出00

if state_inputs="00" then next_state<=s0;

elsif state_inputs="01"then next_state<=s1; --输入不同,次态不同elsif state_inputs="10"then next_state<=s2; end if;

end case;

end process;

end be;

4.系统仿真结果

4.1器件仿真

根据编写的程序可以得到整个系统的器件电路连接图,图中有三个信号输入器件分别表示输入的三种投币情况。有七个状态器件,一个状态转换器件及输出output。如图4-1所示。

图4-1 器件仿真图

4.2软件仿真

我们分三种情况进行软件仿真,第一次投入两枚一元硬币,一枚五角硬币,信号7刚好为高电平,总共输入了2.5元,所以刚好可以得到出票一张的结果,找零显示可以在数码管上为零的序列。图中的puts为?则是表示数码管显示零。具体如下图4-2所示。

图4-2 投入两枚一元硬币,一枚五角硬币效果图

第二次我们投入三枚一元硬币,信号7刚好为高电平,也代表得到刚好出票一张,并且找零显示可以在数码管上为五的序列。图中的puts为?则是表示数码管显示零,总共输入了3元,所以当刚出票的时候则6到0显示为数码管上为五的序列,具体如下图4-3所示。

图4-3 投入三枚一元硬币效果图

第三次我们投入两枚五角硬币,两枚一元硬币,信号7刚好为高电平,也代

表得到刚好出票一张,并且找零显示可以在数码管上为五的序列。图中的puts

为?则是表示数码管显示零,没达到票价或者没有输入触发则找零部分显示零。

而此时总共输入3元,所以当刚出票的时候则6到0显示为数码管上为五的序列,

具体如下图4-4所示。

图4-4 投入两枚五角硬币,两枚一元硬币效果图

5.硬件测试

5.1芯片选择

EP1K30TC144-3控制芯片运行速度快,内存较大,是我们EDA实验的首选芯片。在平时的EDA试验中都能得到很好的效,所以我们选择EP1K30TC144-3作为控制芯片,下载程序即可进行硬件测试,选择芯片图如5-1所示。

图 5-1 芯片选择图

5.2引脚配置

我们设置时钟为125引脚,复位为27引脚可用第三个按键控制。输入分别设置为31,30引脚,用第一、第二个按键控制,表示输入一元五角。comb_outputs[7]为出票信号,设置为18号引脚,用101LED表示。comb_outputs[6]到comb_outputs[0]分别配置17,13,12,10,9,8,144,用数码管显示。具体效果图如5-2所示。

图5-2 引脚配置效果图

5.3硬件仿真

我们硬件中选择第五个时钟作为系统时钟信号,连接2HZ作为扫描频率,即便每0.5秒按键扫面一次。试验中选择其他频率则会导致按键扫描过快或者很慢难以实现想要的结果,根据测试可知2HZ作为扫描频率为最好的选择。实验中按键部分有的接触不良可以避免使用,LED有坏的话也可以进行调整。我们在一次实验时发现过连接频率的跳线有问题,不连通导致没有实验结果,经过种种的问题及错误的排查我们终于得到正确的结果。

当按下第一个按键三次时即表示投入三枚一元硬币,则101LED亮,并且数码管显示5的字样,表示找零五角,效果图如图5-3所示。

图5-3 投入三枚一元硬币效果图

当按下第二个按键五次时即表示投入五枚五元硬币,则101LED亮,并且数

码管显示0的字样,表示不找零钱,效果图如图5-4所示。

图5-4 投入五枚五元硬币效果图

6.总结

经过此次的课程设计我们了解到试验箱的基本构造及原理,更熟悉了vhdl

语言的运用,同时我们会自己编程出简单的控制系统实现相应的其他系统要求的

等等功能。两个月的学习与实验使我们懂得做一个项目并不是一来就入手,而是首先查阅相关资料,巩固一下基础的知识,了解语言的使用方法及简单的程序思路,然后我们可以根据自己的项目要求编写相应的程序,这样一来我们的行动就很有效率。此次课程设计要求不高,但是要做很全面的售票系统较为复杂,我们这样的水平高度也很难实现极完善的售票系统,在今后的发展中我们可以继续尝试完善该系统,而对于此次设计我们的成果较为成功。在此我感谢老师的知道,感谢队友一起的努力,我明白团队的力量是强大的,以后做项目或是创业也好我们如果能结交一些志同道合的朋友便是算成功了一般,同时依靠团队我们的做项目才会更具多元化与实用价值。在此次的课程设计中我们不仅学习了更多的vhdl知识,更是养成了一个做项目的习惯,我想一个好的习惯定可以使我们将来变得更有价值,我希望将来我们每一个人都能成为公司的精英,为公司做贡献,为社会创造更多的财富。

7.指导教师意见

参考书目

[1]刘昌华.《数字逻辑EDA设计与实践》,北京,国防工业出版社,2006年

[2]管庶安.《数字逻辑基础》,北京,中国水利水电出版社,2005年

[3]刘昌华.《论EDA技术的现代与未来》,北京,国防工业出版社,2007年

[4]刘昌华. 《Quartus II软件在数字逻辑课程设计中的应用》,武汉,武汉职业技术学院学报,2005年

[5]李国洪.《可编程器件EDA设计与实践》,天津,机械工业出版社,2004年

[6]刘艳萍.《EDA实用技术及应用》,北京,国防工业出版社, 2006年

[7]]潘松,等.《EDA技术及其应用》,北京,清华大学出版社,2007年

[8]刘昌华,莫培满.《层次化设计方法在数字电路设计中的应用》,武汉,武汉工业学院学报, 2004年

EDA技术实用教程-VHDL版课后答案

第一章 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(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。 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核具有规范的接口协议,良好的可移植与可测试性,为系统开发提供了可靠的保证。 第二章 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工具有:设计输入编辑器(作用:接受不同的设计输

1什么是EDA技术

1什么是EDA技术? EDA技术是现代电子信息工程领域中一门新技术,它提供了一种基于计算机和信息技术为一体的电子系统设计方法,它的发展和推广极大地推动了电子工业的发展,已成为电子工业中不可缺少的一项主要技术。 2基于EDA技术的电子系统设计有哪些特点? 以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机和PLD实验开发系统为设计工具,通过相关的开发软件,自动完成电子系统设计,最终形成集成电子系统或专用集成芯片。 3基于可编程逻辑器件的EDA技术,主要包括哪几方面的内容? 大规模可编程逻辑器件,硬件描述语言,软件开发工具,实验开发工具。 4EDA技术的发展经历了哪几个阶段?每个阶段有什么特征? CAD阶段,设计人员主要借助计算机完成PCB板的布局布线设计,简单的版图绘制,以及电路性能的模拟,逻辑仿真和预测。CAED阶段,进行系统的设计描述综合与优化设计结果的验证,以及自动布局布线等。ESDA阶段,ESDA工具是以系统设计为核心,不仅具有电子系统设计的能力,而且还具有高级抽象的设计构思手段。 5目前较为流行的EDA开发工具?AITERA公司的MAX+PLUS2和QUARTUS2,LATTICE公司的ispDesignEXPERT和ispLEVER,Xilinx公司的Foundation和ISE等。 6什么是可编程逻辑器件?他们有哪些类型? 可编程逻辑器件是一种由用户借助计算机编程,来实现某一逻辑功能的器件。按集成度分类:LDPLD和HDPLD,按编程工艺分类:熔丝或反熔丝编程器件,浮栅编程器件,SRAM编程器件,按基本结构分类:阵列型单元型器件,按逻辑单元分类:与或阵列宏单元查找表多路开关。 7简述可编程逻辑器件的发展历程及其特点?可编程逻辑器件经历了从PROM,PLA,PAL,GAL到EPLD,CPLD,FPGA 的发展过程,不仅在结构工艺集成度功能速度等方面有了很大的改进,而且在稳定性可靠性灵活性上也有了显著提高。 8FPGA和CPLD的中文含义是什么?他们有什么区别? 现场可编程门阵列器件,复杂可编程逻辑器件。 FPGA采用查找表方式工作设计,CPLD采用乘积项方式工作设计。 9什么事SOC?什么是SOPC? 系统芯片,可编程系统芯片。 11FPGA和CPLD各有什么特点?两者在储存信息方面有什么区别? FPGA具有密度高编程速度快设计灵活和可重新配置等优点。CPLD使用更方便,设计更灵活,发展也更迅速。 FPGA基于SRAM技术,掉电后内部配置丢失,要外加配置芯片,CPLD基于FLASH 技术,掉电后内部配置不丢失 12什么是硬件描述语言? 是一种用文本的形式来描述硬件电路的功能内部结构信号连接关系和定时关系语言。13常用的硬件描述语言有哪几种?他们在逻辑描述方面有什么区别? VHDL,Verilog HDL,ABEL-HDL和AHDL VHDL采用模块化的设计方法具有更高的抽象层和系统描述能力。Verilog HDL适合于RTL和门电路级的描述。ABEL-HDL支持各种行为的输入方式和层次结构的逻辑描述。AHDL适合于描述复杂的组合逻辑,组运算,状态机,真值表和参数化的逻辑。 14VHDL语言的全称是什么? 超高速集成电路硬件描述语言。 15目前被IEEE接纳的硬件描述语言有哪几种?他们是什么时候成为IEEE标准的?VHDL和Verilog DHL两种。VHDL1987年12月Verilog HDL1995年 17什么叫逻辑功能部件?什么叫数字系统?他们有什么区别? 通常将逻辑门电路和触发器等单元电路称为逻辑器件,而将有这些逻辑器件组成的能完成某单一功能的电路称为逻辑功能部件。

《EDA技术及应用》全套教学教案

单元一教学设计 教学内容: 单元一EDA技术 学习任务1 EDA技术 一、认识课程 二、认识EDA技术 三、认识EDA技术的基本特征 学习任务2 可编程逻辑器件芯片 一、认识可编程逻辑器件 二、CPLD基本结构 三、FPGA基本结构 四、Altera公司的可编程逻辑器件汇报总结 评价与考核

教学设计与建议 教学设计:通过学习和查阅资料了解EDA技术,了解EDA技术的基本特征,并熟悉可编程逻辑器件的种类。了解CPLD和FPGA基本结构,熟悉 Altera公司的可编程逻辑器件。 教学建议:建议学生查找EDA技术发展与可编程逻辑器件应用相关资料,进行总结制作PPT,并进行汇报。 知识目标: 1.了解EDA技术 2.了解EDA技术的基本特征 3.了解可编程逻辑器件的种类 4.了解CPLD基本结构 5.了解FPGA基本结构 6.了解Altera公司的可编程逻辑器件 教学重点及难点: 教学重点:可编程逻辑器件种类 教学难点:熟悉Altera公司的可编程逻辑器件 教学载体与资源: 教学资源:教材、PPT、实训室、多媒体设备。 教学方法建议: 讲授与讨论相结合,查阅资料总结汇报。 教学过程: 1.下达任务和要求 2. 教师带领学生共同解析任务 3.学生展开讨论

4.学生查阅资料 5. 总结汇报 考核评价: 1.根据知识掌握情况评价 2.根据资料查找能力和小组汇报情况评价 教学板书: 任务1:EDA技术 认识课程 1.EDA技术是什么? 2.为什么学习EDA技术? 3.EDA技术学什么? 4.EDA技术怎么学? 相关知识 1.认识EDA技术 EDA(Electronic Design Automation,电子设计自动化)技术是帮助电子设计工程师在计算机上完成电路的功能设计、逻辑设计、性能分析、时序测试直至PCB(印制电路板)的自动设计等。 2.认识EDA技术的基本特征 (1)“自顶向下”设计方法 (2)硬件描述语言 (3)逻辑综合和优化 (4)开放性和标准化 (5)库的引入

什么是EDA技术

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标准的硬件描语言是V HDL和Verilog-HDL。 7.什么是PLD? 答: PLD,Programmable-Logic-Device,即可编程逻辑器件。是一种具有内建结构、由用户编程以实现某种逻辑功能的新型逻辑器件。 8.SPLD的基本结构框图是什么? 9.一般CPLD器件至少包含可编程逻辑宏单元,可编程I/O单元和可编程内部连线3种基本结构。 一般FPGA器件至少包含可编程逻辑功能块/CLB、IOB/可编程I/O块和PI/可编程内部互连三类可编程资源。 10.用PROM完成半加器/全加器的示意图。 11.使用方框图示意出采用硬件描述语言设计硬件电路进行由上而下的设计的三个层次为: 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)器件的可编程器件,在系统断电后编程信

eda技术的应用及发展

EDA技术的应用 摘要:随着科技的不断进步与发展,EDA (Electronic Design Automation)即电子设计自动化技术与我们的生活的交集越来越密切。随着微电子技术和计算机技术的不断发展,在涉及通信、国防、航天、工业自动化、仪器仪表等领域工作中,EDA技术的含量以惊人的速度上升,从而使它成为当今电子技术发展的前沿之一。本文简单的介绍EDA技术的发展应用及在未来的发展。 关键字:EDA,技术,应用, Abstract:With the advancement and development of technology,( Electronic Design Automation ) electronic design automation technology and our life is more and more close intersection. With microelectronic technology and the continuous development of computer technology, communication, national defense, involved in aerospace, industrial automation, instrumentation and other areas of work, EDA technical content is increasing at an alarming speed, so as to make it become the forefront of the development of electronic technology. This paper briefly introduced the development of EDA technology, application, and the future. Key world: EDA ,development , 一、前言 1·随着微电子技术和计算机技术的不断发展,在涉及通信、国防、航天、工业自动化、仪器仪表等领域工作中,EDA技术的含量以惊人的速度上升,从而使它成为当今电子技术发展的前沿之一。现代电子产品的性能提高、集成度和精密度不断的增加,电子产品更新换代的节奏越来越快。采用传统的电子设计方法设计电路越来越困难,EDA 技术提高了电路的设计效率和可靠性,减少了劳动强度,给电子系统设计带来了革命性的变化。 2·EDA:EDA是电子设计自动化(Electronic Design Automation)缩写,是90年代初从CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。EDA技术是以计算机为工具,根据硬件描述语言HDL(Hardware Description language)完成的设计

EDA技术试题库完整

EDA技术题库 一.填空题 1. Verilog的基本设计单元是模块。它是由两部分组成,一部分描述接口;另一部分描述逻辑功能,即定义输入是如何影响输出的。 2. 用assign描述的语句我们一般称之为组合逻辑,并且它们是属于并行语句,即于语句的书写次序无关。而用always描述的语句我们一般称之为组合逻辑或时序逻辑,并且它们是属于串行语句,即于语句的书写有关。 3.在case语句中至少要有一条default语句。 4. 已知x=4’b1001,y=4’0110,则x的4位补码为4’b1111,而y的4位的补码为4’b0110 。 5. 两个进程之间是并行语句。而在Always中的语句则是顺序语句。 6.综合是将高层次上描述的电子系统转换为低层次上描述的电子系统,以便于系统的具体硬件实现。综合器是能自动将高层次的表述(系统级、行为级)转化为低层次的表述(门级、结构级)的计算机程序 7. 设计输入的方式有原理图、硬件描述语言、状态图以及波形图。 8.按照仿真的电路描述级别的不同,HDL仿真器可以完成:系统级仿真,行为级仿真,RTL 级仿真,门级(时序)仿真。按照仿真是否考虑硬件延时分类,可以分为:功能仿真和时序仿真。仿真器可分为基于元件(逻辑门)仿真器和基于HDL语言的仿真器 9. IP核是知识产权核或知识产权模块,在EDA技术中具有十分重要的地位。半导体产业的IP定义为用于ASIC或FPGA中的预先设计好的电路功能模块。IP分为软IP、固IP和硬IP。 10.可编程逻辑器件PLD是一种通过用户编程或配置实现所需逻辑功能的逻辑器件,也就是说用户可以根据自己的需求,通过EDA开发技术对其硬件结构和工作方式进行重构,重新设计其逻辑功能

基于EDA技术的现代电子设计方法

基于EDA技术的现代电子设计方法 【摘要】人类现已进入高度发达的信息化时代。信息技术的核心是基于微电子技术的大规模集成电路,而大规模集成电路的核心技术是以计算机为平台的EDA技术。本文简要介绍了利用EDA技术设计电路的流程,并运用QuartusⅡ软件通过实例介绍了利用EDA技术进行电子设计的方法。 【关键词】EDA技术;QuartusⅡ;电子设计;VHDL 1.引言 集成电路设计不断向超大规模、低功率、超高速方向发展,其核心技术是基于EDA技术的现代电子设计技术。EDA(Electronic Design Automation,电子设计自动化)技术,以集成电路设计为目标,以可编程逻辑器件(如CPLD、FPGA)为载体,以硬件描述语言(VHDL、VerilogHDL)为设计语言,以EDA软件工具为开发环境,利用强大计算机技术来辅助人们自动完成逻辑化和仿真测试,直到既定的电子产品的设计完成。其融合了,大规模集成电路制造技术、计算机技术、智能化技术,可以进行电子电路设计、仿真,PCB设计,CPLD/FPGA设计等。简言之,EDA技术可概括为在开发软件(本文用QuartusⅡ)环境里,用硬件描述语言对电路进行描述,然后经过编译、仿真、修改环节后,最终下载到设计载体(CPLD、FPGA)中,从而完成电路设计的新技术。 以EDA技术为核心的现代电子设计方法和传统的电子设计方法相比有很大的优点,两种设计方法的流程如下图: 图1 传统电子设计流程图 图2 基于EDA的现代电子设计流程图 比较两种设计方法,基于EDA技术的现在电子设计方法采用自上而下的设计方法,系统设计的早期便可进行逐层仿真和修改,借助计算机平台,降低了电路设计和测试的难度,极大程度地缩短了电子产品的设计周期、节约了电子产品的设计成本。DEA技术极大的促进了现代电子技术的发展,已成为现代电子技术的核心。 2.QuartusⅡ软件开发环境介绍 QuartusⅡ软件是Alter公司开发的综合性EDA工具软件,提供了强大的电子设计功能,充分发挥了FPGA、CPLD和结构化ASIC的效率和性能,包含自有的综合器及仿真器,支持原理图、VHDL、VerilogHDL等多种设计输入,把设计、布局布线和验证功能以及第三方EDA工具无缝的集成在一起。QuartusⅡ与Alter公司的上一代设计工具MAX+plusⅡ具有一定的相似性,和继承性。使熟悉MAX+plusⅡ开发环境的设计人员可以快速熟练应用。相比之下,QuartusⅡ软

EDA技术应用及发展前景介绍

EDA技术应用及发展前景介绍 EDA技术应用及发展前景介绍 电子设计技术的核心就是EDA技术,EDA是指以计算机为工作平台,融合应用电子技术、计算机技术、智能化技术最新成果而研制成的电子CAD通用软件包,主要能辅助进行三方面的设计工作,即IC设计、电子电路设计和PCB设计。EDA技术已有30年的发展历程,大致可分为三个阶段。70年代为计算机辅助设计(CAD)阶段,人们开始用计算机辅助进行IC版图编辑、PCB布局布线,取代了手工操作。80年代为计算机辅助工程(CAE)阶段。与CAD相比,CAE除了有纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计。CAE的主要功能是:原理图输入,逻辑仿真,电路分析,自动布局布线,PCB后分析。90年代为电子系统设计自动化(EDA)阶段。 一、EDA技术的基本特征 EDA代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。下面介绍与EDA基本特征有关的几个概念。 1.“自顶向下”的设计方法10年前,电子设计的基本思路还是选用标准集成电路“自底向上”地构造出一个新的系统,这样的设计方法就如同一砖一瓦建造金字塔,不仅效率低、成本高而且容易出错。 高层次设计是一种“自顶向下”的全新设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。然后,用综合优化工具生成具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路。由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现结构设计上的错误,避免设计工作的浪费,又减少了逻辑功能仿真的工作量,提高了设计的一次成功率。 2.ASIC设计现代电子产品的复杂度日益提高,一个电子系统可能由数万个中小规模集成电路构成,这就带来了体积大、功耗大、可靠性差的问题。解决这一问题的有效方法就是采用ASIC芯片进行设计。ASIC按照设计方法的不同可分为全定制ASIC、半定制ASIC和可编程ASIC(也称为可编程逻辑器件)。 设计全定制ASIC芯片时,设计师要定义芯片上所有晶体管的几何图形和工艺规则,最后将设计结果交由IC厂家去进行掩模制造,做出产品。这种设计方法的优点是芯片可以获得最优的性能,即面积利用率高、速度快、功耗低,而缺点是开发周期长,费用高,只适合

基于EDA技术进行的数字电路设计

基于EDA技术进行的数字电路设计 基于EDA技术进行的数字电路设计 EDA技术在数字系统中应用以基于ALTEraEPM7128SLC84-15芯片 和MAXPlusII10.0软件平台数字钟设计为例,讨论EDA技术在数字 系统中具体应用。 1、EDA技术设计流程 在设计方法上,EDA技术为数字电子电路设计领域带来了根本性 变革,将传统“电路设计硬件搭试调试焊接”模式转变为在计算机 上自动完成。 2、设计要求 具有时、分、秒、计数显示功能,以24小时循环计时。具有清 零和调节小时、分钟功能。具有整点报时功能。 3、输入设计源文件 一个设计项目由一个或多个源文件组成,它们可以是原理图文件、硬件描述语言文件、混合输入文件,点击Source/New菜单,选择你 所要设计源文件类型,进入设计状态,完成源文件设计,存盘、退出;另在一张原理图编辑器窗口中,通过File/MatchingSymbol菜单,建立一张原理图符号,生成一个与原理图文件相同名、相同功能逻 辑宏元件,它自动加到元件列表中,可以在更高层图纸中反复调用; 4、逻辑编译 逻辑编译选择器件EPM7128SLC84-15,使用MAXPlusⅡ编译器编 译设计项目,通过编译器自动进行错误检查、网表提取、逻辑综合、器件适配,最终产生器件编程文件(。jed)。 5、综合

综合就是利用EDA软件系统综合器将VHDL软件设计与硬件可实 现性挂钩,这是将软件转化为硬件电路关键步骤。综合器对源文件 综合是针对某一FPGA/CPID供应商产品系列。因此,综合后结果具 有硬件可实现性。EDA提供了良好逻辑综合与优化功能,它能够将 设计人员设计逻辑级电路图自动地转换为门级电路,并生成相应网 表文件、时序分析文件和各种报表,若设计没有错误,最终可生成 可以编程下载。SOF文件。 6、器件适配 综合通过后必须利用FPGA/CPLD布局/布线适配器将综合后网表 文件针对某一具体目标器件进行逻辑映射操作,其中包括底层器件 配置、逻辑分割、逻辑优化、布局布线等操作。适配后产生时序仿 真用网表文件和下载文件,如JED或POF文件。适配对象直接与器 件结构细节相对应。 7、功能仿真 通常,在设计过程中每一个阶段都要进行仿真验证其正确性。在综合前,要进行行为仿真,将VHDI源程序直接送到VHDI仿真器中 仿真,此时仿真只是根据VHDI语义进行,与具体电路没有关系。综 合后,可利用产生网表文件进行功能仿真,以便了解设计描述与设 计意图一致性。功能仿真仅对设计描述逻辑功能进行测试模拟,以 了解其实现功能是否满足原设计要求,仿真过程不涉及具体器件硬 件特性,如延迟特性。时序仿真根据适配后产生网表文件进行仿真,是接近真实器件运行仿真,仿真过程中已将器件硬件特性考虑进去了,因此仿真精度要高得多。时序仿真网表文件中包含了较为精确 延迟信息。 8、编程下载 通过仿真确定设计基本成功后,即可通过Byteblaster下载电缆线将设计项目以JTAG方式下载到器件中,完成设计所有工作。通过 此例设计流程讲述可知,EDA技术及其工具在数字电路系统(包括模 拟电路系统)中正发挥着越来越重要作用,其应用深度和广度正在向 更深层次延伸。

基于EDA技术进行数字电路设计

基于EDA技术进行数字电路设计基于EDA技术进行数字电路设计 1、EDA技术设计流程 在设计方法上,EDA技术为数字电子电路设计领域带来了根本性 变革,将传统“电路设计硬件搭试调试焊接”模式转变为在计算机 上自动完成。 2、设计要求 具有时、分、秒、计数显示功能,以24小时循环计时。具有清 零和调节小时、分钟功能。具有整点报时功能。 3、输入设计源文件 一个设计项目由一个或多个源文件组成,它们可以是原理图文件、硬件描述语言文件、混合输入文件,点击Source/New菜单,选择你 所要设计源文件类型,进入设计状态,完成源文件设计,存盘、退出;另在一张原理图编辑器窗口中,通过File/MatchingSymbol菜单,建立一张原理图符号,生成一个与原理图文件相同名、相同功能逻 辑宏元件,它自动加到元件列表中,可以在更高层图纸中反复调用; 4、逻辑编译 逻辑编译选择器件EPM7128SLC84-15,使用MAXPlusⅡ编译器编 译设计项目,通过编译器自动进行错误检查、网表提取、逻辑综合、器件适配,最终产生器件编程文件(。jed)。 5、综合 综合就是利用EDA软件系统综合器将VHDL软件设计与硬件可实 现性挂钩,这是将软件转化为硬件电路关键步骤。综合器对源文件 综合是针对某一FPGA/CPID供应商产品系列。因此,综合后结果具

有硬件可实现性。EDA提供了良好逻辑综合与优化功能,它能够将 设计人员设计逻辑级电路图自动地转换为门级电路,并生成相应网 表文件、时序分析文件和各种报表,若设计没有错误,最终可生成 可以编程下载。SOF文件。 6、器件适配 综合通过后必须利用FPGA/CPLD布局/布线适配器将综合后网表 文件针对某一具体目标器件进行逻辑映射操作,其中包括底层器件 配置、逻辑分割、逻辑优化、布局布线等操作。适配后产生时序仿 真用网表文件和下载文件,如JED或POF文件。适配对象直接与器 件结构细节相对应。 7、功能仿真 通常,在设计过程中每一个阶段都要进行仿真验证其正确性。在综合前,要进行行为仿真,将VHDI源程序直接送到VHDI仿真器中 仿真,此时仿真只是根据VHDI语义进行,与具体电路没有关系。综 合后,可利用产生网表文件进行功能仿真,以便了解设计描述与设 计意图一致性。功能仿真仅对设计描述逻辑功能进行测试模拟,以 了解其实现功能是否满足原设计要求,仿真过程不涉及具体器件硬 件特性,如延迟特性。时序仿真根据适配后产生网表文件进行仿真,是接近真实器件运行仿真,仿真过程中已将器件硬件特性考虑进去了,因此仿真精度要高得多。时序仿真网表文件中包含了较为精确 延迟信息 8、编程下载 通过仿真确定设计基本成功后,即可通过Byteblaster下载电缆线将设计项目以JTAG方式下载到器件中,完成设计所有工作。通过 此例设计流程讲述可知,EDA技术及其工具在数字电路系统(包括模 拟电路系统)中正发挥着越来越重要作用,其应用深度和广度正在向 更深层次延伸。 9、目标系统

EDA技术及应用【朱正伟】第五章课后习题部分答案

1.试说明实体端口模式BUFFER和INOUT的不同之处? 答:BUFFER端口:缓冲模式,具有读功能的输出模式,即信号输出到实体外部,但同时也在内部反馈使用,不允许作为双向端口使用。而INOUT端口:双向模式,即信号的流通是双向的,既可以对此端口赋值,也可以通过此端口读入数据。 2.VHDL的数据对象有哪几种?它们之间有什么不同? 答:VHDL的数据对象有三种:信号、变量、常量。它们之间的的区别如下: 信号赋值至少有δ延时,而变量和常量没有;信号除当前值外,有许多相关信息,变量只有当前值,常量的值在设计实体中始终不变;进程对信号敏感而对变量及常量不敏感;信号可以是多个进程的全局信号,变量只在定义它们的顺序域可见,而常量的使用范围取决于它被定义的位置;信号是硬件连线的抽象描述信号赋值,赋值符号 <= 而变量和常量的赋值符号 :=。 3.说明下列各定义的意义: SIGNAL a , b , c : BIT : =’0’; CONSTANT TIME1 , TIME2 : TIME : 20ns ; VARIABLE x , y , z : STD_LOGIC :=’x’; 答:○1定义3个位数据类型的信号a、b、c,它们取值为0; ○2定义2个时间数据类型的常量TIME1、TIME2,它们值为20ns; ○3定义3个标准逻辑位 STD_LOGIC数据类型的变量x、y、z,它们的值是强未知的。 4.什么是重载函数?重载运算符有何用处?如何调用重载运算符函数? 答:为了方便各种不同数据类型间的运算,VHDL允许用户对原有的基本操作符重新定义,赋予新的含义和功能,从而建立一种新的操作符,这就是重载操作符,定义这种操作符的函数成为重载函数。重载运算符的作用是为了方便各种不同的数据类型间的运算。要调用重载运算符函数,先要在程序包中进行函数体的定义,调用的格式如下:

《EDA技术与Verilog_HDL》清华第2版习题1

第章EDA技术概述

1-1 EDA技术与ASIC设计和FPGA开发有什么关系?FPGA在ASIC设计中有什么用途? 答:EDA技术进行电子系统设计的最后目标,是完成专用集成电路(ASIC)的设计和实现,FPGA是实现这一途径的主流器件,它们的特点是直接面向用户、具有极大的灵活性和通用性、使用方便、硬件测试和实现快捷、开发效率高、成本低、上市时间短、技术维护简单、工作可靠性好等。FPGA的应用是EDA技术有机融合软硬件电子设计技术、ASIC设计,以及对自动设计与自动实现最典型的诠释。 1-2 与软件描述语言相比,Verilog有什么特点? 答:Verilog语言的特点: (1)按照设计目的,Verilog程序可以划分为面向仿真和面向综合两类,而可综合的Verilog程序能分别面向FPGA和ASIC开发两个领域。 (2)能在多个层次上对所设计的系统加以描述,从开关级、门级、寄存器传输级(RTL)至行为级都可以加以描述。 (3)灵活多样的电路描述风格。

1-3 什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么?答:综合(Synthesis),就其字面含义应该是:把抽象的实体结合成单个或统一的实体。 在电子设计领域,综合的概念可以表述为:将用行为和功能层次表达的电子系统转换为低层次的、便于具体实现的模块组合装配的过程。 (1)从自然语言转换到Verilog语言算法表述,即自然语言综合。 (2)从算法表述转换到寄存器传输级(Register Transport Level,RTL)表述,即从行为域到结构域的综合,也称行为综合。 (3)从RTL级表述转换到逻辑门(包括触发器)的表述,即逻辑综合。(4)从逻辑门表述转换到版图级表述(如ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。 综合器就是能够将一种设计表述形式自动向另一种设计表述形式转换的计算机程序,或协助进行手工转换的程序。它可以将高层次的表述转化为低层次的表述,可以将行为域转化为结构域,可以将高一级抽象的电路描述(如算法级)转化为低一级的电路描述(如门级),并可以用某种特定的“技术”(如CMOS)实现。

EDA技术及应用实训报告

桂林电子科技大学信息科技学院《EDA技术及应用》实训报告 学号1252100301 姓名 指导教师:覃琴 2014年4 月29 日

实训题目:数字日历电路 1 系统设计 1.1 设计要求 1.1.1 设计任务 (1)用Verilog HDL语言设计出能够在EDA实训仪的I/O设备和PLD芯片实现的数字日历。 (2)数字日历能够显示年、月、日、时、分和秒。 (3)用EDA实训仪上的8只八段数码管分两屏分别显示年、月、日和时、分、秒,即在一定时间段内显示年、月、日(如20140101),然后在另一时间段内显示时、分、秒(如010101099),两个时间段能自动倒换。 (4)数字日历具有复位和校准年、月、日、时、分、秒的按钮,但校年和校时同用一个按钮,即在显示年、月、日时用此按钮校年,在显示时、分、秒时则用此按钮校时。 (5)体现创新部分 1.1.2 性能指标要求 1)数字电路能够在一定的时间内显示切换的功能,并且能手动校准年月日和时分秒 2)具有复位和进位的功能 3)能起到提示的作用,如闹钟或亮彩灯等。 1.2 设计思路及设计框图 1.2.1设计思路 如图1.2.2所示 1) EDA实训箱上的功能有限,可以用到的有8支数码管和12个lED灯。年、月、日和时、分、秒可以通过数码管显示,年月日和时分秒的切换可以通过拨动开关控制,校正可以通过按键实现。 2)输入的秒脉冲由DEA实训仪上的20MHZ晶振经过分频得到,秒脉冲经过60分频后产生1分钟脉冲信号,在经过60分频后产生1小时的脉冲信号,最后进行24分频,得到1天的脉冲送24进制的 cout输出。在将两个60分频和一个24分频的输出送到送到数码管的译码器输入端,得到24小时的计时显示结果。由此得到数字日历的计时器模块。

基于EDA技术的流水线CPU创新设计

基于EDA技术的流水线CPU创新设计 基于EDA技术设计的一种五级流水线CPU,它将指令分解为取指令、指令译码、指令执行、访问存储器、数据写回五阶段流水处理。首先进行结构设计,然后解决流水线CPU的各项相关问题,再进行各模块设计。最后基于Cyclone Ⅲ系列FPGA硬件平台和QuartusⅡ工具开发平台,利用EP3C40Q240C8型FPGA 芯片进行设计与调试。 标签:EDA;流水线;CPU 引言 CPU是由基本的功能模块和与之相连的数据通路组成,对于CPU的设计,首先必须了解其结构的细节和功能模块的内容。然后对各模块电路进行编辑设计、逻辑综合、时序仿真和硬件设计,最后组装完成整个硬件系统。在这个过程中还包括指令系统的设计和软件程序调试等步骤。在流水线CPU设计过程中重点解决结构冲突、数据冲突、控制冲突三大问题。 1 流水线CPU工作原理 1.1 流水线原理 对于一条具体的指令执行过程,通常可以分成五个部分:取指令,指令译码,取操作数,运算,写结果。其中前面三个步骤一般由指令控制器完成,后面两步则由运算器完成。指令控制器完成了对第一条指令的处理后,不等待运算器完成后续的处理直接开始对第二条指令的处理。 1.2 CPU的结构与功能 CPU是负责执行指令的,图1为一个简单指令的CPU结构图。 对于冯·诺依曼结构的计算机来说,一旦程序进入存储器后,就可由计算机自动完成取指令和执行指令的任务,控制器就是专门用于完成此项工作的,它负责协调并控制计算机各个部件执行程序的指令序列,其基本功能是取指令,分析指令和执行指令。 1.3 流水线CPU工作原理 流水线是一个可以提高CPU运行效率的技术,它的核心思想是把多條指令的不同执行阶段重叠,让CPU同时处理多条指令。在流水线CPU中,每条指令的执行过程被分成多个执行阶段。只有当某指令的执行阶段都完成后,该指令才算执行完毕。在每一个指令执行阶段中,当一条指令在该阶段中完成执行后,下一条指令将立即进入到该执行阶段来执行。当流水线处于饱和状态时,将同时有

《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; _______________________________

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

相关主题