众所周知,近年我国也开始兴起foundry服务,晶圆生产能力有所提高,但集成电路设计能力无疑将成为我国半导体工业健康发展的关键。据市场分析公司iSuppli的最新报告,到2005年我国半导体需求约为250亿美元,2010年将成为全球第二大半导体市场。显然,如此大的需求单纯依靠进口是不现实的,独立进行芯片设计是强国兴业的必由之路,也为电子设计工程师施展才华提供了广阔的舞台和机会。为了帮助大家掌握Verilog语言和数字逻辑电路的基本设计方法,本刊特请北京航空航天大学EDA实验室夏宇闻教授举办Verilog系列书面讲座。夏宇闻教授有八年数字逻辑电路Verilog设计的丰富教学经验,且一直跟踪EDA技术的最新发展。为了使读者加深印象,更好掌握,每讲都附有总结、思考题和相应的练习题,供读者在仿真、综合和布线工具等方面夯实基础、磨练技艺。如果您有意见和建议,竭诚欢迎反馈给我们。
前言
数字通信和自动化控制等领域的高速度发展和世界范围的高技术竞争对数字系统提出了越来越高的要求,特别需要设计具有实时信号处理能力的专用集成电路,要求把包括多个CPU内核的整个电子系统综合到一个芯片(SoC)上。设计并验证这样复杂的电路及系统已不再是简单的个人劳动,而需要综合许多专家的经验和知识才能够完成。近十年来电路制造工艺技术进步非常迅速,目前国际上0.13微米的制造工艺,已达到工业化生产的规模,而电路设计能力远远落后于制造技术的进步。在数字逻辑设计领域,迫切需要一种共同的工业标准来统一对数字逻辑电路及系统的描述,这样就能把系统设计工作分解为逻辑设计(前端)和电路实现(后端)两个互相独立而又相关的部分。由于逻辑设计的相对独立性就可以把专家们设计的各种常用数字逻辑电路和系统部件(如FFT算法、DCT算法部件)建成宏单元(Megcell)或软核(Soft-Core IP)库供设计者引用,以减少重复劳动,提高工作效率。电路的实现则可借助于IP的重复利用和综合工具,以及布局布线工具(与具体工艺技术有关)来自动地完成。
Verilog HDL和VHDL这两种工业标准的产生顺应了历史的潮流,因而得到了迅速的发展。美国、日本等国由于高级设计工程师人力资源成本远高于中国,所以近年来把许多设计工作转移到中国大陆,以降低设计成本。电子工程师应该尽早掌握这种新的设计方法,使我国在复杂数字电路及系统的设计竞争中逐步缩小与先进工业发达国家的差距。为我国新世纪深亚微米千万门级的复杂系统设计培养一批技术骨干。
图1-1 Verilog HDL发展历史和未来
硬件描述语言HDL
硬件描述语言(HDL)是一种用形式化方法来描述数字电路和系统的语言。数字电路系统的设计者利用这种语言可以从上层到下层(从抽象到具体)逐层描述自己的设计思想,用一系列分层次的模块来表示极其复杂的数字系统。然后利用电子设计自动化(EDA)工具逐层进行仿真验证,再把其中需要变为具体实际电路的模块组合经由自动综合工具转换到门级电路网表。接下去再用专用集成电路(ASIC)或现场可编程门阵列(FPGA)自动布局布线工具把网表转换为具体电路布线结构的实现。在制成物理器件之前,还可以用Verilog的门级模型(原语元件或UDP)来代替具体基本元件。因其逻辑功能和延时特性与真实的物理元件完全一致,所以在仿真工具的支持下能验证复杂数字系统物理结构的正确性,使投片的成功率达到100%。目前,这种称之为高层次设计(High-Level-Design)的方法已被广泛采用。据统计,目前在美国硅谷约有90%以上的ASIC和FPGA已采用硬件描述语言方法进行设计。
硬件描述语言的发展至今已有二十多年的历史,并成功地应用于设计的各个阶段:建模、仿真、验证 和综合等。到80年代时,已出现了上百种硬件描述语言,它们对设计自动化曾起到了极大的促进和推动作用。但是,这些语言一般各自面向特定的设计领域与层次,而且众多的语言使用户无所适从。因此急需一种面向设计的多领域、多层次、并得到普遍认同的标准硬件描述语言。进入80年代后期,硬件描述语言向着标准化的方向发展。最终,VHDL和Verilog HDL语言适应了这种趋势的要求,先后成为IEEE标准。把硬件描述语言用于自动综合还只有近十年的历史。最近五六年来,用综合工具把可综合风格的HDL模块自动转换为具体电路发展非常迅速,大大地提高了复杂数字系统的设计生产率。在美国和日本等先进电子工业国,Verilog语言已成为设计数字系统的基础。本讲座将通过设计实例由浅入深地帮助读者们学习和掌握:1)如何来编写各种层次可综合风格的Verilog HDL模块;2)如何用可综合的Verilog模块构成一个可靠的复杂IP软核和固核模块;3)如何借助于Verilog语言,并利用已有的虚拟模块对所设计的系统模块(由可综合的自主和商业IP模块组成)进行全面可靠的测试。
图1-2 VerilogHDL与VHDL建模能力的比较
Verilog HDL回顾
Verilog HDL
Verilog HDL是硬件描述语言的一种,用于数字电子系统设计。它允许设计者用它来进行各种级别的逻辑设计,可以用它进行数字逻辑系统的仿真验证、时序分析、逻辑综合。它是目前应用最广泛的一种硬件描述语言。据有关文献报道,目前在美国使用Verilog HDL进行设计的工程师大约有10多万人,全美国有200多所大学教授用 Verilog 硬件描述语言的设计方法。在我国台湾地区几乎所有著名大学的电子和计算机工程系都讲授Verilog有关的课程。
Verilog HDL的产生及发展
Verilog HDL是在1983年,由GDA(GateWay Design Automation)公司的Phil Moorby首创的。Phil Moorby后来成为Verilog-XL的主要设计者和Cadence公司(Cadence Design System)的第一个合伙人。在1984-1985年,Moorby设计出了第一个名为Verilog-XL的仿真器,1986年,他对Verilog HDL的发展又作出了另一个巨大贡献:即提出了用于快速门级仿真的XL算法。
随着Verilog-XL算法的成功,Verilog HDL语言得到迅速发展。1989年,Cadence公司收购了GDA公司,Verilog HDL语言成为Cadence公司的私有财产。1990年,Cadence公司决定公开Verilog HDL语言,于是成立了OVI(Open Verilog International)组织来负责促进Verilog HDL语言的发展。基于Verilog HDL的优越性,IEEE于1995年制定了Verilog HDL的IEEE标准,即Verilog HDL1364-1995,2001年发布了Verilog HDL1364-2001标准。图1-1示出Verilog的发展历史和将来。
Verilog HDL和 VHDL
的比较
Verilog HDL和HDL都是用于逻辑设计的硬件描述语言,并且都已成为IEEE标准。VHDL是在1987年成为IEEE标准,Verilog HDL则在1995年才正式成为IEEE标准。之所以VHDL比Verilog HDL早成为IEEE标准,这是因为VHDL是美国军方组织开发的,而Verilog HDL 则是从一个普通的民间公司的私有财产转化而来,基于Verilog HDL的优越性,才成为的IEEE标准,因而有更强的生命力。
VHDL 其英文全名为VHSIC Hardware Description Language,而VHSIC则是Very High Speed Integerated Circuit的缩写词,意为甚高速集成电路,故VHDL其准确的中文译名为甚高速集成电路的硬件描述语言。
Verilog HDL和VHDL作为描述硬件电路设计的语言,其共同的特点在于:能形式化地抽象表示电路的行为和结构、支持逻辑设计中层次与范围的描述、可借用高级语言的精巧结构来简化电路行为的描述、具有电路仿真与验证机制以保证设计的正确性、支持电路描述由高层到低层的综合转换、硬件描述与实现工艺无关(有关工艺参数可通过语言提供的属性包括进去)、便于文档管理、易于理解和设计重用。
但是Verilog HDL和VHDL又各有其自己的特点。由于Verilog HDL早在1983年就已推出,至今已有近二十年的应用历史,因而Verilog HDL拥有更广泛的设计群体,成熟的资源也远比VHDL丰富。与VHDL相比Verilog HDL的最大优点是:它是一种非常容易掌握的硬件描述语言,只要有C语言的编程基础,通过二十学时的学习,再加上一段实际操作,一般读者可在二至三个月内掌握这种设计技术。而掌握VHDL设计技术就比较困难。这是因为VHDL不很直观,需要有Ada编程基础,一般认为至少需要半年以上的专业培训,才能掌握VHDL的基本设计技术。目前版本的Verilog HDL和VHDL在行为级抽象建模的覆盖范围方面也有所不同。一般认为Verilog HDL在系统级抽象方面比VHDL略差一些,而在门级开关电路描述方面比VHDL强得多。图1-2是Verilog HDL和VHDL建模能力的比较图示供读者参考。
但这两种语言也是在不断的完善过程中,去年公布的IEEE Verilog2001标准,使Verilog在系统级和可综合性能方面都有大幅度的提高。因此Verilog HDL作为学习HDL设计方法的入门和基础是比较合适的。学习掌握Verilog HDL建模、仿真和综合技术不仅可以使读者对数字电路设计技术有更进一步的了解,而且可以为以后学习高级的行为综合和物理综合打下坚实的基础。
Verilog应用情况和适用的设计
近十年以来,EDA界一直对在数字逻辑设计中究竟采用哪一种硬件描述语言争论不休,目前的情况是两者各有千秋。在美国,高层次数字系统设计领域Verilog和VHDL的应用比率是80%和20%;日本和我国台湾省与美国相同;而在欧洲VHDL发展得比较好。在中国大陆,由于Verilog和VHDL的使用才开始两到三年,应用比率还没有具体统计。根据笔者了解,国内大多数集成电路设计公司都采用Verilog。Verilog是专门为复杂数字系统的设计仿真而开发的,本身就非常适合复杂数字逻辑电路和系统的仿真和综合。由于Verilog 在其门级描述的底层,也就是在晶体管开关的描述方面比VHDL有强得多的功能,所以即使是VHDL的设计环境,在底层实质上也是由Verilog HDL描述的器件库所支持的。 1998年通过的Verilog HDL新标准,把Verilog HDL-A并入Verilog HDL新标准,使其不仅支持数字逻辑电路的描述还支持模拟电路的描述,因此在混合信号的电路系统的设计中,它会有更广泛的应用。在深亚微米ASIC和高密度FPGA已成为电子设计主流的今天,Verilog的发展前景是非常远大的。2001年三月,Verilog IEEE1364-2001标准的公布,使得Verilog语言在综合和仿真性能方面都有很大的提高,更加证明了Verilog的发展前景。笔者意见是:若要推广采用硬件描述语言的设计方法,则应首先从推广Verilog HDL开始,然后再推广VHDL。
Verilog较为适合系统级(System)、算法级(Alogrithem)、寄存器传输级(RTL)、逻辑级(Logic)、门级(Gate)、电路开关级(Switch)设计,而对于特大型(千万门级以上)的系统级(System)设计,则VHDL更为适合,由于这两种HDL语言还在不断地发展过程中,它们都会逐步地完善自己。
