verilog 介绍

Verilog HDL

Verilog HDL是在C语言的基础上发展起来的一种硬件描述语言,语法较自由。VHDL和Verilog HDL两者相比,VHDL的书写规则比Verilog HDL烦琐一些,但Veri log HDL自由的语法也容易让少数初学者出错。国外电子专业很多会在本科阶段教授VHDL,在研究生阶段教授Verilog HDL。它们的共同特点是利于由顶向下设计,利于模块的划分与复用,可移植性好,通用性好,设计不因芯片的工艺与结构的变化而变化,更利于向ASIC的移植。Verilog HDL语言最初是于1983年由Gateway Design Automation公司为其模拟器产品开发的硬件建模语言。那时它只是一种专用语言。由于其模拟、仿真器产品的广泛使用,VerilogHDL作为一种便于使用且实用的语言逐渐为众多设计者所接受。在一次努力增加语言普及性的活动中,VerilogHDL语言于1990年被推向公众领域。OpenVerilogInternational(OVI)是促进Verilog HDL

发展的国际性组织。1992年,OVI决定致力于推广Verilog OVI标准成为1EEE标准。这一努力最后获得成功,Verilog HDL语言于1995年成为IEEE标准,称为IEEE Std 1364--1995。完整的标准在Verilog HDL硬件描述语言参考手册中有详细描述。

Verilog HDL是一种硬件描述语言,用于从算法级、门级到开关级的多种抽

象设计层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门

和完整的电子数字系统之间。数字系统能够按层次描述,并可在相同描述中显式

地进行时序建模。

Verilog HDL语言具有下述描述能力:设计的行为特性、设计的数据流特性、设计的结构组成以及包含响应监控和设计验证方面的时延和波形产生机制。所有这些都使用同一种建模语言。此外,Verilog HDL语言提供了编程语言接口,通过该接口可以在模拟、验证期间从设计外部访问设计,包括模拟的具体控制和运行。Verilog HDL语言不仅定义了语法,而且对每个语法结构都定义了清晰的模拟、仿真语义。因此,用这种语言编写的模型能够使用Verilog仿真器进行验证。VerilogHDL从C编程语言中继承了多种操作符和结构,提供了扩展的建模能力,

其中许多扩展最初很难理解。但是,Verilog HDL语言的核心子集非常易于学习

和使用,这对大多数建模应用来说已经足够。当然,完整的硬件描述语言足以对

从最复杂的芯片到完整的电子系统进行描述。

2.1.2 Veri Iog HDL开发流程

用Verilog HDL语言开发CPLD/FPGA的完整流程为:

1)文本编辑:用任何文本编辑器都可以进行,也可以用专用的HDL编辑环境。

Verilog HDL文件保存为.v文件,常用的文本编辑工具有ultraedit32。

2)功能仿真:将文件调入HDL仿真软件进行功能仿真,检查逻辑功能是否正确,

是否符合设计要求。功能仿真也叫前仿真,对简单的设计可以跳过这一步,只在

布线完成以后,进行时序仿真。常用的仿真工具有Model Tech公司的Modelsim,

Aldec公司的Active HDL,Synopsys公司的VCS等。通过功能仿真可以及时发现

设计中的错误,加快设计进度,提高设计的可靠性。

3)逻辑综合(Synthesize):将HDL语言源文件调入逻辑综合软件翻译成由与、

或、非门、寄存器等基本逻辑单元组成的逻辑连接,即把语言综合成最筒的布尔

表达式和信号的连接关系。逻辑综合软件会生成.edf的EDA工业标准文件。常

用的综合工具有Synplicity公司的Synplify Pro,Synopsys公司的FPGA

Express等。

4)布局布线;将.edf文件调入PLD厂家提供的软件中进行布线,即把设计好的

逻辑安放到CPLD/FPGA内

5)时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的

时序,也叫后仿真。时序仿真应将布局布线的时延文件反标到设计中,使得仿真

既包括门延时,又包含线延时信息,从而准确地反映芯片地实际工作情况。

6)编程下载:确认仿真无误后,将生成的可编程文件下载到芯片中,得到实际

的电路。

2.1.3 Ver i Iog HDL的优点

数字信号处理(DSP)系统的研究人员一直在努力寻找各种优化的算法来解

决相关的信号处理问题。当他们产生了比较理想的算法思路后,就在计算机上用

C语言或其他语言程序来验证该算法,并不断修改以期完善,然后与别的算法作

性能比较。在现代通信和计算机系统中,对于DSP算法评价最重要的指标是看它

能否满足工程上的需要。而许多工程上的需要都有实时响应的要求,也就是说应需要数字信号处理(DSP)系统在限定的时间内,如在几个ms甚至于几个p s内,

对所输入的大量数据完成相当复杂的运算,并输出结果。这时如果我们仅仅使用

通用的微处理器,即使是专用于信号处理的微处理器,往往也无法满足实时响应

的要求。因此,不得不设计专用的高速硬线逻辑来完成这样的运算。设计这样的

有苛刻实时要求的复杂的高速硬线运算逻辑是一件很有挑战性的工作,即使有了

好的算法而没有好的设计工具和方法也很难完成。

传统的数字电路设计方法是采用电路原理图输入法。当时的系统设计规模比

较小,也比较简单,其中所用到的FPGA或ASIC设计工作往往只能采用厂家提供

的专用电路图输入工具来进行。为了满足设计性能指标,工程师往往需要花费好

几天或更长的时问进行艰苦的手工布线。此外,工程师还得非常熟悉所选器件得

内部结构和外部引线特点,才能达到设计要求。这种低水平的设计方法大大延长

了设计周期。

采用Verilog HDL设计电路时,由于它的标准化,可以很容易的把完成的

设计移植到不同厂家的不同芯片中,并且在不同规模应用时可以比较容易地进行

修改,以适应不同规模的应用。采用Verilog HDL设计电路的最大优点其实就

是它的与工艺无关性,这就使得工程师在功能设计、逻辑验证阶段不必过多考虑

门级及工艺实现的细节,只要利用系统设计时对芯片的要求,施加不同的约束条

件,即可设计出实际的电路,大大减轻了工程师的劳动强度。

Verilog HDL和传统的原理图输入方法的关系就好比是高级语言和汇编语

言的关系。Yerilog HDL的可移植性好,使用方便,但效率不如原理图;原理

图输入的可控性好,效率高,比较直观,但设计大规模CPLD/FPGA时显得很烦琐,

移植性差。在真正的CPLD/FPGA设计中,通常建议采用原理图和Verilog HDL

结合的方法来设计,适合用原理图的地方就用原理图,适合用Veri log HDL的

地方就用Verilog HDL,并没有强制的规定。在最短的时间内,用自己最熟悉

的工具设计出高效,稳定,符合设计要求的电路才是我们的最终目的。

由于Verilog HDL的设计方法与工艺无关,因此大大提高了Verilog HDL

模型的可重用性。通常把功能经过验证的、可综合的、实现后电路结构总门数在

5000门以上的Verilog HDL模型称为“软核”(Soft Core),由软核构成的器

件成为虚拟器件。在电路的设计过程中,利用软核和虚拟器件的可重用性,可以

太大缩短设计周期,加快了复杂电路的设计速度。

猜你喜欢

转载自www.cnblogs.com/yangzhanxiang/p/10624551.html
今日推荐