欢迎来到天天文库
浏览记录
ID:49996751
大小:213.50 KB
页数:29页
时间:2020-03-07
《计算机组成与设计_硬件描述语言简介.ppt》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、硬件描述语言简介课前思考VHDL是一种硬件描述语言,用VHDL可以描述硬件的结构和行为,其结果可以作为EDA工具的设计输入文件。VHDL和程序设计语言相比,它应当具备哪些特殊功能?学习指南先对附录B进行一个快速的浏览,对VHDL的功能、语法有一个大致的了解,尔后在边学边用的过程中加深理解。为了深刻理解计算机的内部组成与结构,需要仔细阅读计算机主要部件的VHDL描述,同时使用EDA工具观察该部件的模拟波形。B.1VHDL的产生与发展目前,电路系统的设计正处于EDA(电子设计自动化)时代。借助EDA技术,系统设计者只需要提供欲实现系统行为与功能的正确描述即可。至于将这些系统描述转化为实际的硬件结
2、构,以及转化时对硬件规模、性能进行优化等工作,几乎都可以交给EDA工具软件来完成。使用EDA技术大大缩短了系统设计的周期,减少了设计成本。EDA技术首先要对系统的行为、功能进行正确的描述。硬件描述语言HDL是各种描述方法中最能体现EDA优越性的描述方法。所谓硬件描述语言,实际就是一个描述工具,其描述的对象就是待设计电路系统的逻辑功能、实现该功能的算法、选用的电路结构以及其他各种约束条件等。通常要求HDL既能描述系统的行为,又能描述系统的结构。HDL的使用与普通的高级语言相似,编制的HDL程序也需要首先经过编译器进行语法、语义的检查,并转换为某种中间数据格式。但与其他高级语言相区别的是,用硬件
3、描述语言编制程序的最终目的是要生成实际的硬件,因此HDL中有与硬件实际情况相对应的并行处理语句。此外,用HDL编制程序时,还需注意硬件资源的消耗问题(如门、触发器、连线等的数目),有的HDL程序虽然语法、语义上完全正确,但并不能生成与之对应的实际硬件,其原因就是要实现这些程序所描述的逻辑功能,消耗的硬件资源将十分巨大。VHDL是最具推广前景的HDL。VHDL(VeryHighSpeedIntegratedCircuitsHardwareDescriptionLanguage,超高速集成电路硬件描述语言)是美国国防部于20世纪80年代后期出于军事工业的需要开发的。1984年,VHDL被IEEE
4、(InstituteofElectricalandElectorincsEngineers)确定为标准化的硬件描述语言。1994年,IEEE对VHDL进行了修订,增加了部分新的VHDL命令与属性,增强了系统的描述能力,并公布了新版本的VHDL,即IEEE标准版本1046-1994版本。VHDL已经成为系统描述的国际公认标准,得到众多EDA公司的支持,越来越多的硬件设计者使用VHDL描述系统的行为。B.2用VHDL建立电路模型B.2.1电路模型小到一个元件、一个电路,大到一个系统,都可以用VHDL描述其结构、行为、功能和接口。编程时,VHDL将一项工程设计(或称设计实体)分成“外部端口”和“内
5、部结构、功能及其实现算法”两大部分进行描述。一个设计实体的内、外部都设计完成后,其他实体就可以像调用普通元件一样直接调用它。B.2.1电路模型电路的结构与行为描述一个电路,通常包括结构和行为两个方面。电路的逻辑结构图是典型的结构描述,可以将其看作元件和连线的集合,元件的端口之间用信号线相连。元件和信号都应该有一个唯一的名字,这个名字通常以标识符表示。网表子模块信号的状态值在逻辑电路中,信号值一般用二值逻辑表示。除此之外,为了表示信号波形的各种状态,通常会增加一些特殊用途的值。延迟惯性延迟:当元件的输入信号宽度太窄时,元件的输出端可能没有响应。传输延迟:任何的输入脉冲都能传播到输出端的延迟特性
6、图B.1传输延迟与惯性延迟的对比B.2.2实体声明与结构体一个电路模型由一个实体声明和一个结构体组成。图B.2器件A和它的VHDL电路模型B.2.2实体声明与结构体实体声明:描述电路的接口信息。结构体:描述电路行为或结构。图B.3实体和结构体的对应关系实体声明:提供电路的公共信息图B.4实体声明中外部可见的公共信息实体声明:提供电路的公共信息,公共信息分两类:一类是外部可见的;另一类是不可见的。VHDL语言描述的对象称为实体。实体代表什么几乎没有限制,你可以将任意复杂的系统、一块电路板、一个芯片、一个电路单元甚至一个门电路看作一个实体。如果设计时对设计系统自顶向下分层、划分模块,那么,各层的
7、设计模块都可以看作实体。顶层的系统模块是顶级实体,低层次的设计模块是低级实体。描述时,高层次的实体可将比它低层的实体当作元件来调用。至于该元件内部的具体结构或功能,将在低层次的实体描述中详细给出。实体声明的语法实体说明的书写格式如下所示:ENTITY实体名IS[GENERIC(类属参数说明);][PORT(端口说明);]END实体名;在实体说明中应给出实体命名,并描述实体的外部接口情况。此时,实体被视为“黑盒
此文档下载收益归作者所有