搜索
您的当前位置:首页EDA论文资料1

EDA论文资料1

来源:飒榕旅游知识分享网
目录

第一章 绪论 计算器设计概述

第二章 相关设计知识和设计环境 EDA技术概述

EDA基本特征与优势 EDA工具 QuartusⅡ简介

QuartusⅡ设计软件的优势 QuartusⅡ的设计流程介绍 VHDL语言

VHDL概述 VHDL的特点

VHDL的基本结构简介

VHDL语言设计的基本流程

Cyclone系列器件介绍

计算器设计概述

自从电子电路出现了EDA技术之后,计算器的设计和实现工作一下子变得前途光明起来,用计算机来设计计算器不但成为了可能,而且确确实实成为了一条完全可行的、高效率的计算器设计之路。近些年发展迅速的大规模可编程器件为计算器的个人设计提供了比较充分的环境,使中国的计算器设计研究工作一下子摆脱了从理论到理论的尴尬局面,特别是任何有能力进行计算器设计研究的人,都能够有机会参加到计算器的设计的行列中来,进行自己的设计实践,从而能够畅快抒发自己的研究成果。 目前,计算器设计和计算器制作可以分开来进行,这就使计算器设计工作变得更加普及化了,人们只要对计算器设计有兴趣,就可以进行计算器设计工作,成为一名计算器设计制造的参与者。计算器设计者甚至可以将自己的设计送到工厂去加工,实际制造出他所设计的计算器。 1计算器逻辑设计 应该说全新的计算器逻辑设计是一个长期复杂的任务,设计者对计算器的理解程度会毫无例外地反映在逻辑设计当中。逻辑设计阶段可以不在计算器上进行,依据设计者的经验,要将计算器的各个组成部分功能、结构、在整体当中的作用、与其他部分的关系等都要一一考虑清楚,可以用图示的方法将它们表达清楚。 计算器的各个逻辑部件联系在一起之后,要反复地进行逻辑推断和验证。因为计算器是靠信息的流动来进行工作的,因此逻辑设计的过程始终要把信息的完整性作为设计思考的重点,不可以有任何的含糊。 信息的完整性往往取决于信息流动的时序关系。同时到达的信息,如果不能够放在不同的地方存放,那么产生混乱的信息结果是必然的。同时信息的处理设计一般叫并行设计,并行信息处理设计必须把是否产生信息混乱这一点放到首位考虑。先后到达同一地点的信息,后者一定要发生在前者已经失效的时候,不然会产生错误的信息覆盖。 由于目前设计的计算器都采用总线结构,因此任何一个连接到总线上的设备必须有控制向总线输送信息的控制门,因为总线上的数据不断地变化,任何送到总线上的数据,在使用之后应该马上撤销,这样才不至于影响到其他设备对总线的使用。 计算器时钟能使连接在总线上的设备互相协作,一切动作都统一在时钟节拍的指挥之下。可以说时钟周期的长短是决定计算器速度的重要因素,但是物理器件的时间效应、设计电路的时间效应又是决定时钟周期的重要因素,在物理器件性能一定的条件下,合理的电路结构设计是提高计算器运行速度的关键。 计算器设计中要尽可能地采用同步设计,这样会使信息处理简化。异步的设计会增加复杂度,在万不得已的情况下,倍频考虑与同步协调是最好的选择。 已有的计算器设计模型永远是新的设计的基础,对一切计算器都要包括的内容要能够熟练地掌控和使用,例如计算器通用的指令系统和关键性的设备结构等。只有经过大量的已有设计积累和对已有设计的深刻理解,才能够迸发出成功

的新的设计火花。 逻辑设计阶段是一个从上到下、由粗到细、由全局到局部的过程。实际电路设计正好相反,是一个由局部到全局的过程。任何一个计算器的设计,都可以从计算器的五大逻辑部件下手,一般习惯从运算器、存储器设计开始,因为这两个部件的构造会决定计算器的核心内容。当然在计算器各个部分都十分明了的情况下,也可以各部分同时进行,但经验告诉我们,这种情况只有在设计内容不变并且取得了一定经验之后才能够明显的见到效果。 在计算器、存储器设计完成之后,指令系统设计变得十分重要了,计算器能够完成哪些功能完全由指令系统表现。一般,计算器的加减乘除指令是不会少的,当然还有数据传送指令、读数据指令、存储数据指令、入栈指令、出栈指令、子程序调用指令、数据交换指令、指针加减1指令等都是常用的,这些都必须成为指令系统的重要成员。指令设计的一个重要工作是指令格式的设计,指令格式往往决定指令分析的方法,而指令分析的方法又能够确定指令分析的附属设备,例如指令寄存器等。复杂的指令格式一般都会使指令分析的附属设备复杂。 确定了计算器的指令系统之后,就能够确定计算器的控制器了。完全可以肯定,不同的指令系统会得到不同的控制器,不是控制器决定指令系统,而是指令系统决定着控制器的设计。设计好计算器的指令系统及全部指令执行的整个过程,才可以认为逻辑设计有了一定的眉目,才能够考虑实施实际的计算器硬件设计。

2计算器硬件设计

所谓计算器硬件设计就是指实际的电子电路的设计。硬件设计的过程已经不是概念上的计算器设计问题,而是用切实可行的方法完成计算器器件的设计,完成电路连接、器件的设计和整体组装的过程。 没有HDL硬件设计语言和可编程器件的时候,计算器硬件的设计是实物的组装和连接,费时、费钱并且难以修改,像计算器这样复杂的电路设备,实施设计十分艰难,像大规模集成电路的设计,还要有高难度的工艺条件保证,因此,没有一定的经济实力和条件基本上就无法完成。这是我国计算器制造事业长期进展缓慢的一个重要原因。 如今计算器设计的环境条件大大改善了,自从出现了可编程器件,使高智能化的计算器设计能够在实验室甚至个人家庭中来完成,从工艺的角度来讲,这使计算器的设计工作一下子变得容易了。可编程器件的产生,为更多的实验室或个人设计计算器创造了条件。 近十年来电子电路的设计实现技术有了长足的发展,大规模可编程阵列器件FPGA的出现改变了计算器的设计面貌,使计算器核心部件的许多关键性的设计工作和制造变成了一种软件行为。设计师可以使用专门的设计软件,在计算机上就能完成对计算器的绝大部分器件的设计,甚至可以把整个计算器都设计在一个FPGA芯片上。这种形式给中国的计算器制造业带来了一线生机,我们必须抓住这一生机,迎头赶上发达国家的计算器研发和制造水平。 今天的智能电路设计已经告别了设计者用工具焊接电路的时代,取而代之的是运用电子电路的硬件设计语言,对可编程器件进行设计描述,再通过编译、仿真和纠错达到正确的设计和连接,最后将正确的设计通过下载的方式固化到可编程阵列器件FPGA中,这不仅完成了设计工作,而且也同时完成了部件的制造过程。

Quartus Ⅱ软件包是Altera 公司专有知识产权的开发软件,适用于大规模逻

辑电路设计。其界面友好,集成化程度高,易学、易用,深受业界人士好评。QuartusⅡ软件的设计流程概括为设计输入、设计编译、设计仿真和设计下载等过程。该软件支持多种编辑输入法,以及内存编辑输入法。

Quartus Ⅱ比MAX+PLUS Ⅱ具有更强的功能和更好的开发环境。与MAX+PLUS Ⅱ相比,Quartus Ⅱ设计软件增加了网络编辑功能,提升了调试能力,解决了潜在的设计延迟,同时其直观易用的接口,深受数字系统设计者的青睐。选择Quartus Ⅱ作为计算器硬件设计的工具来一个部件一个部件地进行硬件设计,这就是如今计算器设计实施过程的一般方法和关键性一步。 硬件设计的实施过程最好是根据逻辑设计,由局部设计向全局设计发展。先设计关键性的部件,然后再设计非关键性的部件,在设计局部的同时要不断地参考逻辑设计的整体,发现不切合实际的逻辑设计要及时修改,最后设计指令系统、控制电路和控制器,将设计好的各种部件连接在一起,完成计算器整体的设计。

EDA技术概述

EDA(Electronic Design Automation ) 即电子设计自动化,是以微电子技术为物理层面,现代电子设计为灵魂,计算机软件技术为手段,最终形成集成电子系统或专用集成电路芯片ASIC(Application Specific Integrated Circuit)为目的的一门新兴技术。

现代电子设计技术的核心是EDA技术。EDA技术就是依靠功能强大的电子计算机,在EDA工具软件平台上,对以硬件描述语言(如VHDL)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、化简、分割、综合、优化和仿真,直至下载到可编程逻辑器件CPLD/FPGA或专用集成电路ASIC芯片中,实现既定的电子电路设计功能。

EDA技术是以计算机为工作平台、以EDA软件工具为开发环境、以硬件描述语言为设计语言、以ASIC(专用集成电路)为实现载体的电子产品自动化设计过程。

EDA基本特征与优势

EDA工具主要进行三项辅助设计工作:集成电路(IC)设计、电子电路设计及印刷电路板(PCB)设计。

在EDA软件平台上,根据原理图或硬件描述语言HDL完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真、目标芯片的适配编译、逻辑映射和编程下载等工作。 EDA技术的基本特征:采用高级语言描述;具有系统级仿真和综合能力;具有开放式设计环境;具有丰富的元器件模型库。

EDA技术的优势:(1)采用硬件描述语言,便于复杂系统设计(2)强大的系统建模和电路仿真功能(3)具有自主知识产权(4)开发技术的标准化和规范化(5)全方位地利用计算机的自动设计、仿真和测试技术(6)对设计者的硬件知识和硬件经验要求低。

EDA设计的实现目标:1、印刷电路板设计;2、集成电路(IC或ASIC)设计;3、可编程逻辑器件(FPGA/CPLD)设计;4、混合电路设计。

EDA设计整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表文件。由此可见,综合器工作前,必须给定最后实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用某种网表文件的方式对应起来,成为相应互的映射关系。

EDA工具

EDA工具在EDA技术应用中占据极其重要的位置,EDA的核心是利用计算机完成电子设计全过程自动化,因此,基于计算机环境的EDA软件的支持是必不可少的。EDA工具大致可以分为如下5个模块:设计输入编辑器;仿真器;HDL综合器;适配器(或布局布线器);下载器。当然这种分类不是绝对的,现在往往把各EDA工具集成在一起,如MAX+PLUS Ⅱ 、Quartus Ⅱ等。

QuartusⅡ简介及设计流程

Quartus Ⅱ软件包是Altera 公司专有知识产权的开发软件,适用于大规模逻辑电路设计。其界面友好,集成化程度高,易学、易用,深受业界人士好评。QuartusⅡ软件的设计流程概括为设计输入、设计编译、设计仿真和设计下载等过程。该软件支持多种编辑输入法,以及内存编辑输入法。

与MAX+PLUS Ⅱ相比,Quartus Ⅱ设计软件增加了网络编辑功能,提升了调试能力,解决了潜在的设计延迟,同时其直观易用的接口,深受数字系统设计者的青睐。

设计输入 编译 修改设计 仿真与定时分析 下载及测试 QuartusⅡ设计流程

Quartus II进行EDA设计开发的流程

1、设计输入:原理图输入、HDL文本输入、EDIF网表输入和波形输入等几种。 2、编译:先根据设计要求设定编译方式和编译策略,如器件的选择、逻辑综合方式的选择等。然后根据设定的参数和策略对设计项目进行网表提取、逻辑综合、器件适配,并产生报告文件、延时信息文件和编程文件,供分析、仿真和编程使用。

3、仿真:功能仿真、时序仿真和定时分析。

4、编程与验证:用编程文件通过编程电缆配置PLD,加入实际激励,进行在线测试。

VHDL语言简介

VHDL概述

VHDL语言是随着集成电路系统化和高度集成化的发展而逐步发展起来的,是一种用于数字系统的设计和测试的硬件描述语言。对于小规模的数字集成电路,通常可以用传统的设计输入方法(如原理图输入)来完成,并进行模拟仿真。但纯原理图输入方式对于大型复杂的系统,由于种种条件和环境的制约,其工作效率较低,而且容易出错,暴露出多种弊端。在信息技术高速发展的今天,对集成电路提出了高集成度、系统化、微尺寸、微功耗的要求,因此,高密度可编程逻辑器件和VHDL便应运而生。 VHDL的特点 VHDL主要用于描述数字系统的结构、行为、功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似于一般的计算机高级语言。应用VHDL进行工程设计的优点是多方面的,主要有:

(1) 与其他的硬件描述语言相比,VHDL具有更强的行为描述能力。强大

的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。就目前流行的EDA工具和VHDL综合器而言,将基于抽象的行为描述风格的VHDL程序综合成为具体的FPGA和CPLD等目标器件的网表文件已不成问题,只是在综合与优化效率上略有差异。

(2) VHDL具有丰富的仿真语句和库函数,使得在任何大系统的设计早

期,就能查验设计系统的功能可行性,随时可对系统进行仿真模拟,

使设计者对整个工程的结构和功能的可行性做出判断。

(3) 用VHDL完成一个确定的设计,可以利用EDA工具进行逻辑综合和

优化,并自动把VHDL描述设计转变成门级网表(根据不同的实现芯片)。这种方式突破了门级设计的瓶颈,极大地减少了电路设计的时间和可能发生的错误,降低了开发成本。利用EDA工具的逻辑优化功能,可以自动地把一个综合后的设计变成一个更小、更高速的电路系统。反过来,设计者还可以容易地从综合和优化的电路获得设计信息,返回去更新修改VHDL设计描述,使之更加完善。

(4) VHDL对设计的描述具有相对独立性。设计者可以不懂硬件的结构,

也不必顾及最终设计的目标器件是什么,而进行独立的设计。正因为VHDL的硬件描述与具体的工艺技术和硬件结构五官,所以VHDL设计程序的硬件实现目标器件有广阔的选择范围,其中包括各种系列的CPLD、FPGA及各种门阵列器件。

(5) 由于VHDL具有类属描述语句和子程序调用等功能,对于完成的设

计,在不改变源程序的条件下,只需改变类属参量或函数,就能轻易地改变设计的规模和结构。

(6) VHDL本身的生命周期长。因为VHDL的硬件描述与工艺无关,不会

因工艺变化而使描述过时。而与工艺技术有关的参数可通过VHDL提供的属性加以描述,当生产工艺改变时,只需要修改相应程序中的属性参数即可。

VHDL的基本结构简介

一个VHDL程序必须包括实体(ENTITY)和结构体(ARCHITECTURE)。除实体和结构体外,多数程序还要包含库(LIBRARY)、程序包(PACKAGE)和配置语句说明部分。

VHDL语言设计的基本流程

为了保证用VHDL语言设计硬件电路系统的可靠性、正确性,设计人员在编写VHDL语言程序对硬件电路系统进行设计之前,必须对硬件电路系统的设计目的和设计要求有一个非常明确的认识才行。 设计人员通常遵循以下设计流程。

(1) 按照硬件电路系统设计的要求,抽象出硬件设计的总体模块,并根据硬件

系统的宏观内外连接关系,对其定义。这部分主要是抽象出各级模块,并用实体对它们的连线接口进行描述。

(2) 分析硬件系统的具体功能,按照功能要求编写能实现硬件系统功能的

VHDL语言程序。这部分主要就是抽象出不同的结构体进行描述。

(3) 对上述两步流程中所设计的VHDL语言程序进行功能仿真,并根据功能

的实现情况,对程序做修改和优化。这就是通常所说的前仿真。

(4) VHDL语言程序是对硬件电路的具体描述,当在验证了所编程能正确实现

电路功能之后就应该分析VHDL程序的执行效率,这就是通常所说的VHDL程序的综合、优化和布局布线。

(5) 在进行综合、优化和逻辑布局布线过程中,由于开发软件的一些不可预见

性,或是系统连接时序的不一致性,或是缺少必要的人为的约束,容易导致设计功能的异常性。所以再一次的系统级仿真是必要的,这就是通常所

说的后仿真。

(6) 在完成以上步骤以后,最后的工作就是程序的固化,也就是将设计好的

VHDL程序下载到目标器件中。

Cyclone系列器件

Cyclone系列器件低成本、性价比高,采用1.5V、130nm、SRAM工艺。

结构:逻辑阵列块LAB、嵌入式存储器、I/O单元和PLL,各模块间的互连线和时钟网络。

Cyclone(飓风):Altera中等规模FPGA,2003年推出,0.13um工艺,1.5v内核供电,与Stratix结构类似,是一种低成本FPGA系列 ,是目前主流产品,其配置芯片也改用全新的产品。

CycloneII:Cyclone的下一代产品,2005年开始推出,90nm工艺,1.2v内核供电,属于低成本FPGA,性能和Cyclone相当,提供了硬件乘法器单元。

CycloneIII FPGA系列2007年推出,采用台积电(TSMC)65nm低功耗(LP)工艺技术制造,以相当于ASIC的价格实现了低功耗。

Cyclone IV FPGA系列2009年推出,60nm工艺,面向对成本敏感的大批量应用,帮助您满足越来越大的带宽需求,同时降低了成本。

CycloneV FPGA系列2011年推出,28nm工艺,实现了业界最低的系统成本和功耗,其性能水平使得该器件系列成为突出您大批量应用优势的理想选择。与前几代产品相比,它具有高效的逻辑集成功能,提供集成收发器型号,总功耗降低了40%,静态功耗降低了30%。

而我这次设计的计算器,只需用第一代的Cyclone器件的模拟环境设计即可。

7段数码显示器原理

7段数码显示器由7个显示码管组成,对每一根码管,用一位二进制表示。常见的7段数码显示器是用4个输入信号D0、D1、D2和D3来表示0000~1111,即表示十六进制中的0~F;同时它有7个输入信号,分别用a、b、c、d、e、f、g来表示,决定可发光二极管的状态。若该数码管为共阴数码管,当某位为1时,表示这位所在的码管发光;如为0,则表示不发光;共阳数码管则正好相反。一般情况下,输出信号为‘1’时表示它所控制的可发光二极管为点亮状态;输出信号为‘0’时表示它所控制的可发光二极管为熄灭状态。下图表示的是7段数码显示器的7个输出信号a、b、c、d、e、f、g与可发光二极管的对应关系。

a(X6) 七段数码管 D0b(X5)a七段 c(X4)D1 fbd(X3)g D2e(X2) 译码器D3ec f(X1) g(X0)d

什么是状态机?

 状态机是一类很重要的时序电路,是很多数字电路核心部件,是实现高效

率、高可靠逻辑控制的重要途径。

 状态机就是事物存在状态的一种综合描述,说明任意两个状态之间的转换

条件。

 一般分为Moore(摩尔)型和Mealy(米勒)型状态机两种。 状态机的优势

1.状态机克服了纯硬件数字系统顺序方式控制不灵活的缺点; 2.由于状态机的结构相对简单,设计方案相对固定;

3、状态机容易构成性能良好的同步时序逻辑模块,对解决大规模逻辑电路设计中的竞争冒险现象是一个较好的选择。消除电路中的毛刺现象,也有很多设计方案解决;

4、与VHDL的其他描述方式相比,状态机的VHDL表述丰富多样、程序层次分明,结构清晰,易读易懂;在排错、修改和模块移植方面也有其独到的好处; 5、在高速运算和控制方面,状态机更有其巨大的优势。一般由状态机构成的硬件系统比CPU所能完成同样功能的软件系统的工作速度要高3~4个数量级。 6、高可靠性。

状态机的基本结构和功能

 状态机一般包含输入信号、输出信号、一组寄存器记忆状态机的内部状态。  状态机寄存器的下一个状态和输出,不仅与输入信号有关,而且还与当前

状态有关,状态机可以认为是组合逻辑和寄存器逻辑的特殊组合。

 状态机的基本操作有两种:

1、状态机内部状态转换。状态机经历一系列状态,下一状态有次态逻辑根据当前状态和输入条件决定。

2、产生输出信号序列。输出信号由输出逻辑根据当前状态和输入条件决定。

一般状态机的VHDL描述  一般包含以下几部分:

(1)至少包含一个状态信号,用来指定有限状态机的状态

(2)状态转移指定和输出指定,对应于控制单元中与每一个控制步有关系的转移条件。

(3)时钟信号,一般用来同步。

(4)同步或异步复位信号。

常用的描述方法有:

(1)三进程描述方式——每个进程分别描述次态逻辑、状态寄存器、输出逻辑。 (2)双进程描述方式——一个进程描述次态逻辑、状态寄存器、输出逻辑的其中两个,另外一个进程描述剩余的功能。

(3)单进程描述方式——用一个进程描述状态机的次态逻辑、状态寄存器、输出逻辑全部功能。

8.4.1 Moore和Mearly状态机的选择

Moore型有限状态机:输出信号仅与当前状态有关。

Mearly型有限状态机:输出信号不仅与当前状态有关,而且还与所有的输入信号有关。

Moore型和Mealy型状态机的选用:

1、moore型有限状态机的输出信号将在时钟信号的触发沿来到后的几个时延后得到输出值,同时在该时钟周期的剩余时间内保持不变,即输入信号在该时钟周期内发生变化,输出信号值也不会改变。也就是说输入信号改变产生的任何效果都会延迟到下一个时钟周期。可以说,moore型状态机最大的优点就是可以将输入部分和输出部分隔离开。

2、Mealy型有限状态机,由于它的输出是输入信号及当前状态的函数。所以如果输入信号发生改变,输出也可以在一个时钟周期的中间发生改变。这样会将输入信号的噪声传递给输出信号。

3、在实际应用中,moore型有限状态机比mealy型有限状态机需要更多的状态。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top