第02讲可编程逻辑器件的基础知识

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1.5硬件描述语言HDLHDL是一种利用文字描述数字电路系统的方法,可以起到和传统的电路原理图描述相同的效果。突破传统的“搭建”复杂电路设计的鸿沟。如同使用高级语言设计软件设计程序。硬件描述语言和数字电路系统相互促进,共同发展。目前,广泛使用的硬件描述语言有两种:VHDL和VerilogHDL。1.5硬件描述语言HDLVHDLVHDL(VHSICHardwareDescriptionLanguage)是一种标准的硬件描述语言,它是在20世纪70~80年代中,由美国国防部资助的VHSIC(VeryHighSpeedIntegratedCircuit)项目开发的产品。在这个语言首次开发出来时,其目标仅是使电路文本化的一种标准,为了使人们采用文本方式描述的设计,能够被其他人所理解。同时,它也被用来作为模型语言,用于进行仿真验证模拟。1.5硬件描述语言HDL1987年,VHDL被正式确定为IEEE1076标准。VHDL是一种强类型语言,具有丰富的表达能力,可使各种复杂度(系统级、电路板级、芯片级、门级)的电路网络在同一抽象程度上被描述。VHDL已成为一个数字电路和系统的描述、建模、综合的工业标准,使用VHDL,可以快速地描述和综合电路设计。VHDL有如下所述的一些优点。1.5硬件描述语言HDL1)功能强大,灵活性强:具有功能强大的语言结构,可用简洁明确的代码描述来进行复杂控制逻辑的设计。2)不依赖于器件设计:同一个设计描述,可以采用多种不同的器件结构来实现其功能。若需对设计进行资源利用和性能方面的优化,也并不是要求设计者非常熟悉器件的结构才行。相反,你可以集中精力从事你的设计构思,当然,这并不是说设计者可以忽略电路结构,诸如数据通路优化技术方面的需要。1.5硬件描述语言HDL3)可移植性:VHDL的设计描述可以被不同的工具所支持,可以在不同模拟工具、综合工具、工作平台中执行。4)性能评估能力:允许设计者采用不同的器件结构和不同的综合工具来评估设计。选用最适合你设计需求的器件。为了衡量综合的质量,同样可用不同的综合工具所得到的综合结果来进行分析、评估。5)上市时间快,成本低。1.5硬件描述语言HDLVerilogHDLVerilogHDL是一种硬件描述语言,用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门和完整的电子数字系统之间。数字系统能够按层次描述,并可在相同描述中显式地进行时序建模。1.5硬件描述语言HDLVerilogHDL语言最初是于1983年由GatewayDesignAutomation公司为其模拟器产品开发的硬件建模语言。那时它只是一种专用语言。由于他们的模拟、仿真器产品的广泛使用,VerilogHDL作为一种便于使用且实用的语言逐渐为众多设计者所接受。到90年代早期,Cadence设计系统公司收购Gateway公司,取得Verilog的所有权。由于大多数EDA厂商无法从Cadence那里得到Verilog工具或者其语言的许可证,因此许多厂商开始转向作为公共标准的VHDL语言。1.5硬件描述语言HDL1989年,Cadence公司对这个形式作出了回应,即成立Verilog开放化国际组织(OpenVerilogInternational,OVI)作为一个非盈利的业界标准化组织,并将Verilog捐赠给这个组织。1995年,发布第一个VerilogHDL的标准,2003年发布再次修订的VerilogHDL标准。1.5硬件描述语言HDLVerilogHDL语言最大的特点就是易学易用,通过学习和使用.可以在短时间内掌握该语言。另外该语言的功能强,可以满足各个层次设计人员的需要,从高层的系统描述到底层的版图设计,都能很好地支持。由于VerilogHDL巨大的优越性,使得它广泛流行,尤其是在ASIC设计领域,更是处于主流地位。1.5硬件描述语言HDLVerilogHDL和VHDL有各自不同的特点:(1)语法结构:VerilogHDL与C语言相似,VHDL类似与ADA语言。因此VerilogHDL学习和使用相对简单。(2)VerilogHDL不支持用户自定义数据类型,而VHDL支持这一功能。因此VHDL可以更好地在较高的抽象级别上描述数字电路系统。(3)VerilogHDL在门级和开关级的描述比VHDL强大,所以即使VHDL的设计环境,其底层也是由VerilogHDL描述的器件库所支持的。1.5硬件描述语言HDL(4)VerilogHDL对语法的要求比VHDL宽松的多,语法检查不严格,因此书写代码时要特别注意。VHDL对语法的检查十分严格,设计出来的电路更可靠,但代价是代码更加繁琐。(5)VerilogHDL自身带有仿真的指令,例如可以随时检测信号的变化;VHDL自身没有类似的指令,调试只能依靠仿真工具的支持。1.5硬件描述语言HDLVerilogHDL也处在不断发展之中,SystemVerilog是VerilogHDL的后续版本,它在继承了VerilogHDL的语法规则的基础上,对VerilogHDL的不足之处进行强化,另外又增加了一些新特性来适应当今数字电路设计的需要。(1)增加用户自定义数据类型,弥补在系统描述中的不足。(2)语法检查更加严格,增加设计出的可靠性。(3)加入一些C++的元素,如允许创建类,允许类的继承等,丰富了硬件描述语言的内容,可以更加灵活地设计数据电路系统。1.5硬件描述语言HDLSystemVerilog整合了和语言的许多优秀特性,并且扩展大型设计的验证支持。实际上是创造了一种新的语言,即硬件描述与验证语言(hardwaredescriptionandverificationlanguage,HDVL)。HDVL使得工程人员可以使用统一的标准语言对大型复杂的设计进行建模,并验证设计功能的正确性。验证环节是整个设计中的一个非常重要的环节:设计工程师的50%~70%的工作量都放在设计验证工作之上。1.5硬件描述语言HDL验证一个设计的正确是很困难的。这就存在一个验证的充分性的问题,即一个设计验证到什么程度才叫充分;对一个设计的验证采用什么样的验证策略和验证手段,使代价最低、耗时最少;采用什么样的工具来实施有效的验证,为验证工作趋于100%的充分性提供可能。1.5硬件描述语言HDL对一个设计的验证决定采用什么样的验证手段和验证策略是一个非常复杂的决策过程。在众多的验证手段和验证策略中主要的验证手段可粗略地划分为:功能仿真技术、静态时序分析技术和形式验证技术。主要的验证策略包括:自顶向下的验证、自底向上的验证、基于平台的验证和基于系统接口的自动验证。正因为验证的重要性,硬件描述语言增加了对验证的支持。是不是大脑发昏?咱和你们一样!希望大家一起努力!1.6可编程逻辑器件的系统设计方法学随着集成电路技术的发展,可编程逻辑器件的规模越来越大,复杂度也越来越高,这为复杂数字系统单片化的现场实现创造了条件,同时也为数字系统现场集成的方法学提出了更高的要求。计算机技术的发展为集成电路的设计提供了强大的EDA工具,使得设计过程越来越简单,对工具的依赖性越来越大,设计方式正随着EDA工具的发展而经历着所谓的电路级设计、行为级设计、概念级设计的演进过程。1.6可编程逻辑器件的系统设计方法学关于系统的抽象层次电路级逻辑级RTL级算法级系统级1.6可编程逻辑器件的系统设计方法学一个系统可以在不同的抽象层次上进行描述,如图,可以在5个层次上描述一个系统。抽象层次越高,所包含的信息就越少,抽象层次越低,所包含的细节就越多。电路级抽象程度最低,逻辑设计人员很小用到。逻辑级以门电路为基本单元,通过描述门与门之间的连接来描述数字电路系统。1.6可编程逻辑器件的系统设计方法学RTL级(RegisterTransferLevel)是通过描述寄存器之间数据的流动来描述数字电路系统,寄存器与寄存器之间的数据处理由组合电路完成。在描述中说明了存储什么样的信息,存储在那里以及在电路的工作过程中,信息是如何通过电路传递的。1.6可编程逻辑器件的系统设计方法学系统级和算法级是对数字电路系统的行为和功能进行为描述。硬件描述语言HDL可以在五个不同的抽象层次描述一个系统。在系统级或算法级建立的模型,称为行为模型。行为模型与具体的硬件实现没有任何关系,只是描述对象实现的功能。用RTL级、逻辑级或电路级建立的模型称为结构模型。1.6可编程逻辑器件的系统设计方法学关于基于IP的设计芯片的集成度越来越高,设计的难度越来越大。采用他人成功设计方案能降低设计难度、提高设计效率、缩短设计周期和提高设计的可靠性。可被别人重用的设计是包含设计者的创造性思维,具有很强的知识内涵。这些设计资料也称为具有知识产权的内核(IntellectualPropertyCore),简称IP核。IP核由三种表现形式:1.6可编程逻辑器件的系统设计方法学软核(Soft-Core):以硬件描述语言的语言代码的形式存在,不依赖任何实现工艺或技术,具有很大的灵活性。硬核(Hard-Core):以集成电路版图(Layout)的形式存在,并经过实现工艺流片验证。硬核依赖特定的实现工艺,在物理尺寸、物理形态及性能不可改变。固核(Firm–Core):处于软核和硬核之间,以电路网表(Netlist)的形式存在,并且通常采用硬件进行验证。1.6可编程逻辑器件的系统设计方法学一般,软核的开发成本相对较低,使用灵活,但其可预见性差,延时不一定能达到要求;而硬核的开发成本相对较高,但它的可预测性强,可靠性高,能够很快地投入使用;固核则介于硬核和软核之间。典型的IP核包括微处理器核(MPUcore)、数字信号处理器核(DSPcore)、存储器核(Memorycore)、特定功能核(如MPEG等)以及一些标准接口IP核(如Ethemet、USB、PCI和IEEE1394核)等。由这些IP核可以非常方便地构成一个功能完整的电子系统,而且可以集成于一个芯片内部,构成系统芯片SOC。1.6可编程逻辑器件的系统设计方法学SOC:SYSTEMONACHIPSOPC:SYSTEMONAPROGAMMABLECHIPCSOC:CONFIGURABLESYSTEMONACHIPSOC各种接口模块MCU1.6可编程逻辑器件的系统设计方法学SOPCNIOSEthernetInterfaceARMUARTRAM/ROMFIFOUSBPCIDSPBlocksPLLsSDRAMCONTROLVGAPS2MultiplyUnitJPEGCPLFIR,IIR,FFT1.6可编程逻辑器件的系统设计方法学用户在设计一个电子系统时,可以自行设计各个功能模块,也可以购买第三方拥有知识产权的IP模块。近几年来,已经有越来越多的公司投入了IP核的开发,IP核作为一种商品,已经在Internet上广泛销售。作为设计者来说,要想在较短的时间内开发出新产品,迅速占领市场,一个比较好的方法就是购买合适的IP,再把这些IP在功能上进行整合,迅速形成产品,推向市场。1.6可编程逻辑器件的系统设计方法学综上所述,基于IP复用的开发给设计者带来了诸多方使,比如说节省时间,缩短开发周期,避免重复劳动.等等。当然,IP的发展还存在一些问题.比如IP版权的保护,IP的保密及IP的集成等。但基于IP复用的设计技术必将成为未来电子系统开发的主流技术之一。用QuartusII对Altera器件设计时,Altera提供的宏功能模块就属于IP的一种。Altera的IP核包括基本宏功能(Megafunction/LPM)和MegaCore两种。1.6可编程逻辑器件的系统设计方法学基本宏功能包括一些简单的功能,如加减乘除,简单多路器、移位寄存器模块等,也包括一些Altera器件特有的资源,如片内RAM、DSP、PLL、DDIO和高速收发电路等。MegaCore提供一些更复杂和通用的IP库,如PCI接口、SDRAM控制器等。这些宏单元被Altera针对器件进行过优化,用户利用这些宏单元功能块能更

1 / 57
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功