- CPLD/FPGA技术应用
- 王芳主编
- 2772字
- 2020-08-27 15:44:49
1.1 EDA技术的特点与发展趋势
随着数字集成技术的飞速发展,数字系统的规模和技术复杂度也在急剧增长,人工设计数字系统变得十分困难,必须依靠 EDA(Electronic Design Automation,电子设计自动化)技术。用 EDA 技术设计数字系统的实质是一种自顶向下的分层设计方法。在每一层次上,都有描述、划分、综合和验证四种类型的工作。描述是把系统设计输入 EDA 软件的过程,它可以采用图形输入、硬件描述语言或二者混合使用的方法输入。整个设计过程只有该部分由设计者完成,划分、综合和验证则由 EDA 软件平台自动完成。这样做极大地简化了设计工作,提高了效率。因此,EDA技术设计数字系统的方法得到了越来越广泛的应用。
1.1.1 EDA技术的发展历史
正因为EDA技术丰富的内容以及与电子技术各学科领域的相关性,其发展历史同大规模集成电路设计技术、计算机辅助工程、可编程逻辑器件以及电子设计技术和工艺的发展是同步的。根据过去近30年的电子技术的发展历程,可大致将EDA技术的发展分为三个阶段。
20世纪70年代,在集成电路制作方面,MOS工艺已得到广泛的应用。可编程逻辑技术及其器件已经问世,计算机作为一种运算工具已在科研领域得到广泛应用。而在后期,CAD的概念已见雏形。在这一阶段人们开始利用计算机取代手工劳动,辅助进行集成电路板图编辑、PCB布局布线等工作。
20世纪80年代,集成电路设计进入了CMOS(互补场效应管)时代。复杂可编程逻辑器件已进入商业应用,相应的辅助设计软件也已投入使用。而在80年代末,出现了FPGA;CAE和CAD技术的应用更为广泛,它们在PCB设计方面的原理图输入、自动布局布线与PCB分析,以及逻辑设计、逻辑仿真、布尔方程综合和化简等方面发挥了重要的作用。特别是各种硬件描述语言的出现、应用和标准化方面的重大进步,为电子设计自动化必须解决的电子线路建模、标准文档及仿真测试奠定了基础。
进入20世纪90年代,随着硬件描述语言的标准化得到进一步的确立,计算机辅助工程、辅助分析和辅助设计在电子技术领域获得更加广泛的应用。与此同时,电子技术在通信、计算机及家电产品生产中的市场需求和技术需求,极大地推动了全新的电子设计自动化技术的应用和发展。特别是集成电路设计工艺步入超深亚微米阶段、百万门以上的大规模可编程逻辑器件的陆续面世,以及基于计算机技术的面向用户的低成本大规模ASIC设计技术的应用,都促进了EDA技术的形成。更为重要的是,各EDA公司致力于推出兼容各种硬件实现方案和支持标准硬件描述语言的EDA工具软件,这些都有效地将EDA技术推向成熟和实用。
EDA技术在进入21世纪后,得到了更大的发展,突出表现在以下几个方面:
(1)在FPGA上实现DSP(数字信号处理)应用成为可能,用纯数字逻辑进行DSP 模块的设计,使得高速 DSP 实现成为现实,并有力地推动了软件无线电技术的实用化和发展。基于FPGA的DSP技术为高速数字信号处理算法提供了实现途径。
(2)嵌入式处理器软核的成熟,使得SOPC(System On a Programmable Chip)进入大规模应用阶段,在一片FPGA中实现一个完备的嵌入式系统成为可能。
(3)在仿真和设计两方面支持标准硬件描述语言的功能强大的EDA软件不断推出。
(4)EDA 技术使得电子领域各学科的界限更加模糊,相互包容:模拟与数字、软件与硬件、系统与器件、ASIC与FPGA、行为与结构等。
(5)基于EDA的用于ASIC设计的标准单元已涵盖大规模电子系统及复杂IP核模块。
(6)软硬IP(Intellectual Property)核在电子行业的产业领域内被广泛应用。
(7)SOC高效低成本设计技术更加成熟。
(8)系统级、行为验证级硬件描述语言的出现(如System C),使复杂电子系统的设计和验证趋于简单。
1.1.2 EDA技术的特点
在传统的数字电子系统或集成电路设计中,手工设计占了较大的比例,复杂电路的设计和调试工作十分困难。对于集成电路设计而言,设计实现过程与具体生产工艺直接相关,因此可移植性很差,而且只有在设计出样机或生产出芯片后才能进行实测。另外,如果某一过程存在错误,查找和修改十分不便。与手工设计相比,EDA技术则有如下特点。
1)采用自顶向下设计方案
从电子系统设计的方案上看,EDA 技术最大的优势就是能将所有设计环节纳入统一的自顶向下设计方案中,该设计方案有利于在早期发现结构设计中的错误,提高设计的一次成功率。而在传统的电子设计技术中,由于没有规范的设计工具和表达方式,无法进行这种先进的设计流程。
2)应用硬件描述语言(HDL)描述设计
使用硬件描述语言设计者可以在抽象层次上描述设计结构及其内部特征,这是 EDA 技术的一个重要特征。硬件描述语言的突出优点是语言的公开可利用性、设计与工艺的无关性、宽范围的描述能力、便于组织大规模系统的设计、便于设计的复用和继承等。多数HDL 语言也是文档型的语言,可以方便地存储在硬盘、软盘等介质中,也可以打印到纸张上,极大地简化设计文档的管理工作。
3)能够自动完成仿真和测试
EDA 软件设计公司与半导体器件生产厂商共同开发了一些功能库,如逻辑综合时的综合库、版图综合时的版图库、测试综合时的测试库、逻辑模拟时的模拟库等。通过这些库的支持,系统开发者能够完成自动设计。EDA 技术还可以在各个设计层次上,利用计算机完成不同内容的仿真,而且在系统级设计结束后,就可以利用 EDA 软件对硬件系统进行完整的测试。
4)开发技术的标准化和规范化
EDA 技术的设计语言是标准化的,不会由于设计对象的不同而改变。EDA 技术使用的开发工具也是规范化的,所以 EDA 软件平台可以支持任何标准化的设计语言,其设计成果具有通用性、可移植性和可测试性,为高效高质的系统开发提供了可靠保证。
5)对工程技术人员的硬件知识和经验要求低
EDA 技术的标准化、硬件描述语言和开发平台对具体硬件的无关性,使设计者能将自己的才智和创造力集中在设计项目性能的提高和成本的降低上,而将具体的硬件实现工作交给EDA软件来完成。
1.1.3 EDA技术的发展趋势
面对如今飞速发展的电子产品市场,设计师需要有更加实用、快捷的 EDA 工具,使用统一的集成化设计环境,改变传统设计思路,将精力集中到设计构思、方案比较和寻找优化设计等方面,需要以最快的速度,开发出性能优良、质量一流的电子产品,于是对 EDA技术提出了更高的要求。未来的 EDA 技术将在仿真、时序分析、集成电路自动测试、高速印制电路板设计及开发操作平台的扩展等方面取得新的突破,向着功能强大、简单易学、使用方便的方向发展。
1)可编程逻辑器件的发展趋势
可编程逻辑器件已经成为目前世界上最富吸引力的半导体器件,在现代电子系统设计中扮演着越来越重要的角色。过去的几年里,可编程器件市场的增长主要来自大容量的可编程逻辑器件CPLD和FPGA,其未来的发展趋势如下。
(1)高密度、高速度、宽频带:在电子系统的发展过程中,工程师的系统设计理念会受到其能够选择的电子器件的限制,而器件的发展又促进了设计方法的更新。随着电子系统复杂度的提高,高密度、高速度和宽频带的可编程逻辑产品已经成为主流器件,其规模也不断扩大,从最初的几百门到现在的上百万门,有些已具备了片上系统集成的能力。这些高密度、大容量的可编程逻辑器件的出现,给现代电子系统(复杂系统)的设计与实现带来了巨大的帮助。设计方法和设计效率的飞跃,带来了器件的巨大需求,这种需求又促使器件生产工艺不断进步,而每次工艺改进,可编程逻辑器件的规模都将有很大扩展。
(2)在系统可编程:在系统可编程是指程序(或算法)在置入用户系统后仍具有改变其内部功能的能力。采用在系统可编程技术,可以像对待软件那样通过编程来配置系统内硬件的功能,从而在电子系统中引入“软硬件”的全新概念。它不仅使电子系统的设计和产品性能的改进和扩充变得十分简便,还使新一代电子系统具有极强的灵活性和适应性,为许多复杂信号的处理和信息加工的实现提供了新的思路和方法。
(3)可预测延时:在当前的数字系统中,由于数据处理量的激增,要求其具有大的数据吞吐量,加上多媒体技术的迅速发展,要求能够对图像进行实时处理,这就要求有高速的硬件系统。为了保证高速系统的稳定性,可编程逻辑器件的延时可预测性就变得十分重要。用户在进行系统重构的同时,担心的是延时特性会不会因为重新布线而改变,延时特性的改变将导致重构系统的不可靠,这对高速的数字系统而言将是非常可怕的。因此,为了适应未来复杂高速电子系统的要求,可编程逻辑器件的高速可预测延时是非常必要的。
(4)混合可编程技术:可编程逻辑器件为电子产品的开发带来了极大的方便,它的广泛应用使得电子系统的构成和设计方法均发生了巨大的变化。但是有关可编程器件的研究和开发工作多数都集中在数字逻辑电路上,直到1999年11月,Lattice公司推出了在系统可编程模拟电路,为EDA技术的应用开拓了更广阔的前景。它允许设计者使用开发软件在计算机中设计、修改模拟电路,进行电路特性仿真,最后通过编程电缆将设计方案下载至芯片中。目前已有多家公司开展了这方面的研究,并且推出了各自的模拟与数字混合型的可编程器件。相信在未来几年里,模拟电路及数模混合电路可编程技术将得到更大的发展。
(5)低电压、低功耗:节能潮流在全世界的兴起,也为半导体工业提出了降低工作电压、降低功耗的发展方向。
2)开发工具的发展趋势
面对当今飞速发展的电子产品市场,电子设计人员需要有更加实用、快捷的开发工具,使用统一的集成化设计环境,改变优先考虑具体物理实现方式的传统设计思路,将精力集中到设计构思、方案比较和寻找优化设计等方面,以最快的速度开发出性能优良、质量一流的电子产品。所以,开发工具的发展趋势如下。
(1)具有混合信号处理能力:由于数字电路和模拟电路的不同特性,模拟集成电路EDA工具的发展远远落后于数字电路EDA开发工具。但是,由于物理量本身多以模拟形式存在,实现高性能复杂电子系统的设计必然离不开模拟信号。20世纪90年代以来,EDA工具厂商都比较重视数模混合信号设计工具的开发。美国Cadence、Synopsys等公司开发的EDA工具已经具有了数模混合设计能力,这些EDA开发工具能完成含有模数变换、数字信号处理、专用集成电路宏单元、数模变换和各种压控振荡器在内的混合系统设计。
(2)高效的仿真工具:在整个电子系统设计过程中,仿真是花费时间最多的工作,也是占用 EAD 工具时间最多的一个环节。可以将电子系统设计的仿真过程分为两个阶段:设计前期的系统级仿真和设计过程中的电路级仿真。系统级仿真主要验证系统的功能,如验证设计的有效性等;电路级仿真主要验证系统的性能,决定怎样实现设计,如测试设计的精度、处理和保证设计要求等。要提高仿真的效率,一方面要建立合理的仿真算法;另一方面则要更好地解决系统级仿真中,系统模型的建模和电路级仿真中电路模型的建模技术。在未来的EDA技术中,仿真工具将有较大的发展空间。
(3)理想的逻辑综合、优化工具:逻辑综合功能是将高层次系统行为设计自动翻译成门级逻辑的电路描述,做到了实际与工艺的独立。优化则是对于上述综合生成的电路网表,根据逻辑方程功能等效的原则,用更小、更快的综合结果替代一些复杂的逻辑电路单元,根据指定目标库映射成新的网表。随着电子系统的集成规模越来越大,几乎不可能直接面向电路图做设计,要将设计者的精力从烦琐的逻辑图设计和分析中转移到设计前期算法开发上。逻辑综合、优化工具就是要把设计者的算法完整高效地生成电路网表。
3)系统描述方式的发展趋势
(1)描述方式简便化。20世纪80年代,电子设计开始采用新的综合工具,设计工作由逻辑图设计描述转向以各种硬件描述语言为主的编程方式。用硬件描述语言描述设计,更接近系统行为描述,且便于综合,更适合传递和修改设计信息,还可以建立独立于工艺的设计文件;不便之处是不太直观,要求设计师具有硬件语言编程能力,但是编程能力需要长时间的培养。
到了20世纪90年代,一些EDA公司相继推出了一批图形化的设计输入工具。这些输入工具允许设计师用他们最方便并且最熟悉的设计方式(如框图、状态图、真值表和逻辑方程)建立设计文件,然后由 EDA 工具自动生成综合所需的硬件描述语言文件。图形化的描述方式具有简单直观、容易掌握的优点,是未来主要的发展趋势。
(2)描述方式高效化和统一化。C/C++语言是软件工程师在开发商业软件时的标准语言,也是使用最广泛的一种高级语言。许多公司已经提出了不少方案,尝试在 C 语言的基础上设计下一代硬件描述语言。随着算法描述抽象层次的提高,使用 C/C++语言设计系统的优势将更加明显,设计者可以快速而简洁地构建功能函数,通过标准库和函数调用技术,创建更庞大、更复杂和更高速的系统。
但是,目前的 C/C++语言描述方式与硬件描述语言之间还有一段距离,还有待更多EDA软件厂家和可编程逻辑器件公司的支持。随着EDA技术的不断成熟,软件和硬件的概念将日益模糊,使用单一的高级语言直接设计整个系统将是一个统一化的发展趋势。