askl正文 - 图文 下载本文

基于EDA技术的ASK、FSK数字调制通信系统的设计

1 绪论

1.1电子设计自动化(EDA)简介

EDA(Electronic Design Automation)技术是现代电子设计的核心。EDA技术是在电子CAD技术基础上发展起来的计算机软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,进行电子产品的自动设计。利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或

PCB版图的整个过程的计算机上自动处理完成。

现在对EDA的概念或范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。本文所指的EDA技术,主要针对电子电路设计、PCB设计和IC设计。 EDA设计可分为系统级、电路级和物理实现级。

EDA工具层出不穷,目前进入我国并具有广泛影响的EDA软件有:multiSIM7(原EWB的最新版本)、PSPICE、OrCAD、PCAD、Protel、Viewlogic、Mentor、Graphics、Synopsys、LSIIogic、Cadence、MicroSim等等。这些工具都有较强的功能,一般可用于几个方面,例如很多软件都可以进行电路设计与仿真,同进还可以进行PCB自动布局布线,可输出多种网表文件与第三方软件接口。EDA在通信行业(电信)里的另一个解释是企业数据架构,EDA给出了一个企业级的数据架构的总体视图,并按照电信企业的特征,进行了框架和层级的划分。

1.2硬件描述语言简介和EDA的综合开发平台

VHDL是超高速集成电路硬件描述语言(Very-High-Speed Integrated Circuit Hardware Description Language)的缩写,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言 。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得

第 1 页 共 48 页

华北科技学院毕业设计(论文)

到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。 VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。应用VHDL进行工程设计的优点是多方面的。 (1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。

(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。

(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。

(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。

(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。

用EDA术设计电路可以分为不同的技术环节,每一个环节中必须有对应的软件包或专用的EDA工具独立处理。EDA工具大致可以分为设计输入编辑器、仿真器、HDL综合器、设配器(或布局布线器)以及下载器等5个模块。通常专业的EDA工具供货商或各可编程逻辑器件厂商都提供EDA开发工具,在这些EDA开发工具中都含有设计输入编辑器,如Xilinx公司的Foundation、Altera公司的Quartus II等。

本课题采用Quartus II 5.0作为开发平台,Quartus II 5.0 界面友好,使用便捷,支持原理图、VHDL和Verilog语言文本文件,以及波形与EDIF等格式的文件作为设计输入,并支持这些文件的任意混合设计。Quartus II 具有门级仿真器,可以进行功能仿真和时序仿真,能够产生精确的仿真结果。在适配之后,Quartus II生成供时

第 2 页 共 48 页

基于EDA技术的ASK、FSK数字调制通信系统的设计

序仿真的EDIF、VHDL和Verilog三种不同格式的网表文件。

Quartus II支持主流的第三方EDA工具,如Synopsys、Cadence、Synplicity、Mentor 、Viewlogic、Exemplar和Model Technology等。Quartus II除支持MAX3000、MAX7000等MAX+PLUS II支持的器件外,还支持PEX20K、Stratix等MAX+PLUS II支持的器件外,还支持PEX20K、Stratix等MAX+PLUS II 下无法支持的大容量高新性能的器件。

1.3基于EDA技术的FPGA开发流程与FPGA的特点

CPLD/FPGA是电子设计领域中最具活力和发展前途的一项技术,CPLD/FPGA可以完成任何数字器件功能,设计者可以通过传统原理图输入法(GDF)或硬件描述语言设计一个数字系统通过软件仿真我们可以事先验证设计正确性,在PCB完成后还可以利用CPLD在线修改能力随时修改设计而不必改动硬件电路。

这与过去传统意义的电子设计大不相同。尤其表现在:传统设计是自底向上的设计,合格产品的设计总要反复多次试验,次数主要取决于经验而且必须制成成品才能进行仪器测量。因此现代EDA缩减了设计成本,缩短了设计周期,更接近于常规思维方式,标准产品方便测试,对设计者经验要求低,保密性强集成度高。使大规模电子设计成为可能。具体设计流程为: (1)电路设计与输入

电路设计与输入是指通过某些规范的描述方式,将工程是电路构思输入给EDA 工具常用的设计方法有硬件描述语言(HDL)和原理图设计输入方法等。原理图设计输入法在早期应用得比较广泛,它根据设计要求,选用器件、绘制原理图、完成输入过程。这种方法的优点是直观便于理解、元器件库资源丰富。但是在大型设计中,这种方法的可维护性较差,不利于模块构造与重用。更主要的缺点就是当所选用的芯片升级换代后,所有的原理图都要做相应的改动。目前进行大型工程设计时,最常用的设计方法时,HDL设计输入法,其中影响最为广泛的HDL语言是VHDL和Verilog HDL。他们的共同特点是利用由顶向下设计,利用模块的划分与复用,可移植性好,通用性好,设计不因芯片的工艺与结构不同而变化,更利于向ASIC的移植。波形输入和状态机输入方法是两种常用的辅助设计输入方法:使用波形输入时,志耘爱绘制出激励波形与输出波形,EDA软件就能自动地根据响应关系进行设计;使用状态机输入法时,设计者只需要画出状态转移图,EDA软件就能生成相应的HDL代码或原理图,使用十分方便。但是需要指出的是,

第 3 页 共 48 页

华北科技学院毕业设计(论文)

波形输入和状态机输入方法只能在某些特殊情况下缓解设计者的工作量,并不适合所有的设计。 (2)功能仿真

电路设计完成以后,要用专用的仿真工具对设计进行功能仿真,验证电路功能 否符合设计要求。功能仿真有时也称为前仿真。通过仿真能及时发现设计中的错误,加快设计的速度,提高设计的可靠性。 (3)综合优化

综合优化(synthesize)是指将HDL语言、原理图等设计输入翻译成由与、或、非门,RAM触发器等基本逻辑单元组成的逻辑连接(网表),并根据目标与要求(约束条件)优化所生成的逻辑连接,输出edf和edn等标准格式的网表文件,供FPGA/CPLD厂家的布局布线器进行实现。 (4)综合后仿真

综合完成后需要检查综合结果是否与设计一致,做综合后仿真。在仿真时,把综合生成的标准延时文件反标志到综合仿真模型中去,可估计门延时带来的影响。综合后仿真虽然比功能仿真精确一些,但是只能估计门延时,不能估计线延时,仿真结果与布线后的实际还有一定的差距,并不十分准确。这种仿真的主要目的在与检查综合器的综合结果是否与设计输入一致。目前主流综合工具日益成熟,对于一般性的设计,如果设计者确信自己标注明确,没有综合歧义发生,则可省略该步骤。但是如果在布局布线后仿真时发现有电路结构与设计意图不符的现象,则常常需要回溯到综合后仿真以确认是否是由于综合歧义造成的问题。 (5)实现与布局布线

综合结果的本质是一些由与、或、非门,触发器,RAM等基本逻辑单元组成的逻辑网表,它与芯片的实际的配置情况还有较大差距。此时应该使用FPGA\\CPLD厂商提供的软件工具,根据所选芯片的型号将综合输出的网表适配到具体FPGA\\CPLD器件上,这个过程就叫做实现过程。因为只有器件的开发商最了解器件的内部结构,所以实现步骤必须选用器件开发商提供的工具。在实现过程中最主要的过程是布局布线(PAR)。所谓布局,就是指将逻辑网表中的硬件原语或者底层单元合理地是配到FPGA内部的固有硬件结构上,布局的优劣对设计的最终结果(在速度和面积两个方面)影响很大。所谓布线,是指根据布局的拓扑结构,利用FPGA内部的各种连线资源,合理正确连接各个元件的过程。FPGA的结构相对复杂,为了获得更好的实现结果,特别是保证能够

第 4 页 共 48 页