FPGA的设计基础之Verilog语言

可编程逻辑

1363人已加入

描述

硬件描述语言(HDL)是一种用形式化方法来描述数字电路和系统的语言。数字电路系统的设计者利用这种语言可以从上层到下层(从抽象到具体)逐层描述自己的设计思想,用一系列分层次的模块来表示极其复杂的数字系统。然后利用电子设计自动化(以下简称为EDA)工具逐层进行仿真验证,再把其中需要变为具体物理电路的模块组合经由自动综合工具转换到门级电路网表。接下去再用专用集成电路(ASIC)或现场可编程门阵列(FPGA)自动布局布线工具把网表转换为具体电路布线结构的实现。

硬件描述语言的发展至今已有近三十年的历史,并成功地应用于设计的各个阶段:建模、仿真、验证 和综合等。最近十多年来,用综合工具把可综合风格的HDL模块自动转换为具体电路发展非常迅速,大大地提高了复杂数字系统的设计生产率。在美国和日本等先进电子工业国,Verilog语言已成为设计数字系统的基础。

Verilog HDL是硬件描述语言的一种,用于数字电子系统设计。它允许设计者用它来进行各种级别的逻辑设计,可以用它进行数字逻辑系统的仿真验证、时序分析、逻辑综合。它是目前应用最广泛的一种硬件描述语言。据有关文献报道,目前在美国使用Verilog HDL进行设计的工程师大约有10多万人,全美国有200多所大学教授用 Verilog 硬件描述语言的设计方法。在我国***地区几乎所有著名大学的电子和计算机工程系都讲授Verilog有关的课程。

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 HDL和VHDL都是用于逻辑设计的硬件描述语言,并且都已成为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适合系统级(System)、算法级(Alogrithem)、寄存器传输级(RTL)、逻辑级(Logic)、门级(Gate)、电路开关级(Switch)设计,而SystemVerilog是Verilog语言的扩展和延伸,更适用于可重用的可综合IP和可重用的验证用IP设计,以及特大型(千万门级以上)基于IP的系统级设计和验证。

采用Verilog 输入法最大的优点是其与工艺无关性。这使得工程师在功能设计、逻辑验证阶段,可以不必过多考虑门级及工艺实现的具体细节,只需要利用系统设计时对芯片的要求,施加不同的约束条件,即可设计出实际电路。实际上这是利用了计算机的巨大能力在EDA工具的帮助下,把逻辑验证与具体工艺库匹配、布线及时延计算分成不同的阶段来实现从而减轻了人们的繁琐劳动。

Verilog 是在1983年由GATEWAY公司首先开发成功的,经过诸多改进,于1995年11月正式被批准为Verilog IEEE1364-1995标准,2001年3月在原标准的基础上经过改进和补充又推出Verilog IEEE1364-2001新标准。2005年10月又推出了Verilog语言的扩展,即SystemVerilog (IEEE 1800-2005 标准)语言,这使得Verilog语言在综合、仿真验证和IP模块重用等性能方面都有大幅度的提高,更加拓宽了Verilog的发展前景。

Verilog HDL的标准化大大加快了Verilog HDL的推广和发展。由于Verilog HDL设计方法的与工艺无关性,因而大大提高了Verilog模型的可重用性。

我们把功能经过验证的、可综合的、实现后电路结构总门数在5000门以上的Verilog HDL模型称之为“软核”(Soft Core)。而把由软核构成的器件称为虚拟器件,在新电路的研制过程中,软核和虚拟器件可以很容易地借助EDA综合工具与其它外部逻辑结合为一体。这样,软核和虚拟器件的重用性就可大大缩短设计周期,加快了复杂电路的设计。

我们把在某一种现场可编程门阵列(FPGA)器件上实现的,经验证是正确的总门数在5000门以上电路结构编码文件,称之为“固核”。我们把在某一种专用集成电路工艺的(ASIC)器件上实现的经验证是正确的总门数在5000门以上的电路结构版图掩膜,称之为“硬核”。

从底向上的设计在某种意义上讲可以看作上述TOP_DOWN设计的逆过程。虽然设计也是从系统级开始,即从设计树的树根开始对设计进行逐次划分,但划分时首先考虑的是单元是否存在,即设计划分过程必须从已经存在的基本单元出发,设计树最末枝上的单元要么是已经制造出的单元,要么是其它项目已开发好的单元或者是可外购得到的单元。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分