基于FPGA的正弦信号发生器设计—毕业设计 下载本文

3.1 EDA技术及其发展

第3章 EDA技术

随着社会生产力发展到了新的阶段,各种电子新产品的开发速度越来越快。现代计算机技术和微电子技术进一步发展和结合使得集成电路的设计出现了两个分支。一个是传统的更高集成度的集成电路的进一步研究;另一个是利用高层次VHDL/Verilog等硬件描述语言对新型器件FPGA/CPLD进行专门设计,使之成为专用集成电路(ASIC)。这不仅大大节省了设计和制造时间,而且对设计者,无须考虑集成电路制造工艺,现已成为系统级产品设计的一项新的技术。

EDA(Electronic Design Automation)技术是现代电子设计技术的核心。它以EDA软件工具为开发环境,采用硬件描述语言(Hardware Description Language, HDL),采用可编程器件为实验载体,实现源代码编程、自动逻辑编译、逻辑简化、逻辑分割、逻辑综合、布局布线、逻辑优化和仿真等功能,以ASIC、SOC芯片为目标器件,以电子系统设计为应用方向的电子产品自动化的设计技术。

EDA代表了当今电子设计技术的最新发展方向,利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程在计算机上自动处理完成。设计者采用的设计方法是一种高层次的“自顶向下”的全新设计方法,这种设汁方法首先从系统设计人手,在顶层进行功能方框图的划分和结构设计。在方框图一级进行仿真、纠错.并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行驶证。然后,用综合优化工具生成具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路(ASIC)。设计者的工作仅限于利用软件的方式,即利用硬件描述语言和EDA软件来完成对系统硬件功能的实现。由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现结构设计上的错误,避免设计工作的浪费,又减少了逻辑功能仿真的工作量,提高了设计的一次性成功率。

EDA技术在硬件实现方面融合了大规模集成电路制造技术,IC版图设计技术、ASIC测试和封装技术、FPGA/CPLD编程下载技术、自动测试技术等;在计算机辅助工程方面融合了计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)、计算机辅助工程(CAE)技术以及多种计算机语言的设计概念;而在现代电子学方面则容纳了更多的内容,如电子线路设计理论、数字信号处理技术、数字系统建模和优化技术及长线技术理论等等。因此EDA技术为现代电子理论和设计的表达与实现提供了可能性。

- - 9 - -

[7]

在现代技术的所有领域中,纵观许多得以飞速发展的科学技术,多为计算机辅助设计,而非自动化的所有设计。显然,最早进入设计自动化的技术领域之一是电子技术,这就是为什么电子技术始终处于所有科学技术发展最前列的原因之一。不难理解,EDA技术已经不是那一学科的分支,或者是新的技术,应该是一门综合性学科。它融合多学科于一体,打破了软件和硬件间的壁垒,使计算机的软件技术与硬件实现、设计效率和产品性能合二为一,他代表了电子设计技术和应用技术的发展方向。

正因为EDA技术丰富的内容以及电子技术各学科领域的相关性,其发展的历程同大规模集成电路设计技术、计算机辅助工程、可编程逻辑器件,以及电子设计技术和工艺的发展是同步的。就过去近30年的电子技术的发展历程,可大致将EDA技术的发展分为三个阶段。

20世纪70年代,集成电路制作方面,MOS工艺已得到广泛的应用。可编程逻辑技术及器件已经问世,计算机作为一种运算工具已经在科研领域得到了广泛的应用。而在后期,CAD的概念已见雏形。这一阶段人们开始利用计算机取代手工劳动,辅助进行集成电路版图编辑、PCB布局布线等工作。

20世纪80年代,集成电路设计进入了COMS(互补场效应)时代。复杂可编程逻辑器件已经进入商业应用,相应的辅助设计软件也已投入使用。而在80年代末,出现了FPGA(Field Programmable Gate Array),CAE和CAD技术应用更为广泛,他们在PCB设计方面的原理图输入、自动布局布线及PCB分析,以及逻辑设计、逻辑仿真、布尔方程综合和化简等方面担任了重要的角色,特别是各种硬件描述语言的出现、应用和标准化方面的重大进步,为电子设计自动化必须解决的电路建模、标准文档及仿真测试奠定了基础。

进入20世纪90年代,随着硬件描述语言的标准化得到进一步的确立,计算机辅助工程、辅助分析和辅助设计在电子技术领域获得了更加广泛的应用,与此同时电子技术在通信、计算机及家电产品生产中的市场需求和技术需求,极大地推动了全新的电子设计自动化技术的应用和发展。特别是集成电路设计工艺步入了超深亚微米阶段,百万门以上的大规模可编程逻辑器件的陆续面世,以及基于计算机技术的面向用户的低成本大规模ASIC技术的应用,促进了EDA技术的形成。更为重要的是各EDA公司致力于推出兼容各种硬件实现方案和支持标准硬件描述语言的EDA工具软件的研究,都有效地将EDA技术推向成熟。

EDA技术在进入21世纪后,得到了更大的发展,突出表现在以下几个方面: (1)使电子设计成果以自主知识产权的方式得以明确表达和确认成为可能; (2)在仿真和设计两方面支持标准硬件描述语言的功能强大的EDA软件不断推出;

- - 10 - -

(3)电子技术全方位纳入EDA领域;

(4)EDA使得电子领域各学科的界限更加模糊,更加互为包容; (5)更大规模的FPGA和CPLD器件的不断推出;

(6)基于EDA工具的ASIC设计标准单元已涵盖大规模电子系统及IP核模块; (7)软硬件IP核在电子行业的产业领域、技术领域和设计应用领域得到进一步确认; (8)SoC高效低成本设计技术的成熟。

3.2 硬件描述语言VHDL

3.2.1 VHDL简介

甚高速集成电路硬件描述语言(Very-High-Speed Integrated Circuit Hardware Description Language,VHDL)于1983年有美国国防部(DOD)发起创建,由IEEE(The Institute of Electrical and Electronics Engineers)进一步发展并在1987年作为“IEEE 标准1076”发布。从此,VHDL成为硬件描述语言的业界标准之一。自IEEE公布了VHDL的标准版本之后,各EDA公司相继推出了自己的 VHDL 设计环境,或宣布自己的设计工具支持 VHDL。此后 VHDL在电子设计领域得到了广泛应用,并逐步取代了原有的非标准硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL语言将承担起大部分的数字系统设计任务。除了作为电子系统设计的主选硬件描述语言外,VHDL在EDA领域的仿真测试、程序模块的移植、ASIC设计源程序的交付、IP核(Intelligence Property core)的应用方面担任着不可或缺的角色,因此不可避免地将成为了必要的设计开发工具。

VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。

- - 11 - -

[8]

3.2.2 VHDL的主要优点

(1)覆盖面广,有强大的系统硬件描述能力

VHDL可以覆盖行为描述、RTL (寄存器传输)级描述、门描述、电路描述和物理参数描述(包括延时、功耗、频率、几何尺寸等)。VHDL还具有丰富的数据类型.即可以支持预定义的数据类型,也可以自己定义数据类型。这样便给硬件描述带来了较大的自由度,使设计人员能够方便地使用VHDL创建高层次的系统模型。

(2)可读性好、易于修改

在硬件电路设计过程中,主要的设计文件是用VHDL编写的源代码,因为VHDL易读和结构模块化,所以易于修改设计。

(3)独立于器件的设计,与工艺无关

用VHDL进行硬件电路设计时,并不需要首先考虑选择完成设计的器件,也就是说,VHDL并没有嵌入具体的技术和工艺约定,设计人员可以集中精力进行设计的优化,不需要考虑其他问题。当一个设计描述完成以后,可以用多种不同的器件结构来实现其功能。

(4)易于移植和设计资源共享

由于VHDL是一种国际标准化的硬件描述语言,对于同一个设计描述,它可以移植到符合相同标准的任意系统或平台上运行。

对于一些较大的通用性硬件电路,目前已经有专门的IP核出售,因此,能实现设计资源的有偿使用,可大大缩短设计周期,加快设计产品的上市速度。

3.3 现场可编程逻辑(FPGA)器件

3.3.1 引言

FPGA(现场可编程门阵列)与CPLD(复杂可编程逻辑器件)都是可编程逻辑器件

[11]

它们是在PAL、GAL等逻辑器件的基础之上发展起来的。但FPGA/CPLD的规模较大,非常适合于对时序、组合等逻辑电路应用场合,它可以替代几十甚至上百块通用IC芯片。应用FPGA/CPLD可以做成一个系统级芯片,它具有可编程性和实现方案容易修改的特点。

现在,CPLD/FPGA等可编程器件已应用在不同的高科技领域,如数字电路设计、微处理系统、DSP、通信及ASIC设计等。由于芯片内部硬件连接关系的描述的存放,是以EEPROM、SRAM或FLASH或外接EPROM为基础的,设计用户可在可编程门阵列芯片及外围电路保持不动的情况下,通过计算机重新下载或配置设计软件,就能实现一种新的芯片功能。于是FPGA/CPLD可编程器件,正得到越来越多的电子设计者的青睐。

- - 12 - -

3.3.2 FPGA的组成及其应用特点

FPGA的组成:现场可编程门阵列(FPGA)是在PAL和GAL等逻辑器件的基础之上发展起来的、可由用户自行定义配置的高密度专用集成电路,结构上主要由三部分组成:可编程逻辑块(CLB----Configurable Logic Block)、输入\\输出单元(IOB----I\\O Block)和可编程连线(IR----Interconnect Resoutce)。

高速和高可靠是FPGA最明显的特点,当今的该类可编程器件,其最高工作频率可达百兆级,其时钟延迟可达纳秒级,结合其并行工作方式,在超高速应用领域和实时测控方面有非常广阔的应用前景。相比应用单片机的设计系统来说,可以较好地解决诸如MCU的复位不可靠和PC可能跑飞等问题。CPLD和FPGA的高可靠性还表现在,可形成片上系统,从而大大缩小了体积,易于管理和屏蔽。

由于FPGA的集成规模非常大,因此可借助HDL硬件描述语言开发出系统级芯片和产品。又由于开发工具的通用性、设计语言的标准化以及设计过程几乎与所用器件的硬件结构没有关系,所以设计成功的各类逻辑功能块软件有很好的兼容性和可移植性,它几乎可用于任何型号和规模的FPGA中,从而使得产品设计效率大幅度提高。FPGA显著的优势是开发周期短,投资风险小、产品上市速度快,市场适应能力强和硬件升级回旋余地大。一旦市场对所设计的产品需求量大,则可进行流片设计,形成价格更低廉的AISC产品。

FPGA芯片都是比较特殊的ASIC芯片,除了具有SAIC的特点之外,还具有以下几个优点:

(1)集成度越来越高:随着超大规模集成电路VLSI(Very Large Scale IC)工艺的不断提高,单一芯片内部可以容纳上百万个晶闸管。FPGA芯片的规模也越来越大,其单片逻辑门数已达到上百万门,所能实现的功能越来越强,同时还可以实现系统集成。 (2)嵌入式存贮技术:在CPLD/FPGA内部嵌入一定数量的存贮器。存贮器的类型有双口SRAM、ROM、FIFO,可用于存贮信号处理的系统,中间结果等。这对设计电子系统的智能化功能提供了技术支持。

(3)时钟锁定和倍频技术:解决了时钟脉冲延迟和偏斜问题,并使PLD内部时钟更高。单个16 bit乘法器的速度可达100 MHZ以上,这正是宽带高速实时信号的需要。CPLD/FPGA的时钟延迟可达纳秒级,结合其并行工作方式,在超高速应用领域和实时测控方面有非常广阔的应用前景。

(4)系统保密性能增强:随着IP(知识产权)越来越被高度重视,带有IP内核的功能块在ASIC设计平台上的应用日益广泛。越来越多的设计人员,采用设计重用,将系统设计模块化,为设计带来了快捷和方便。并可以使每个设计人员充分利用软件。

- - 13 - -