- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
034824_数字系统设计与VHDL4VHDL设计初步
第4章 VHDL设计初步 4.1 VHDL简介 1983年VHDL语言正式提出; 1987年IEEE将VHDL采纳为标准,即“IEEE Std 1076-1987”,从而使VHDL成为硬件描述语言的业界标准之一,各EDA公司相继推出自己的VHDL设计环境,或宣布自己的设计工具支持VHDL; 1993年,IEEE对VHDL做了修订,从更高的抽象层次和系统描述能力上扩展了VHDL的功能,公布了新版本的VHDL标准,即“IEEE Std 1076-1993”版本; 1997年,VHDL综合程序包“IEEE Std 1076.3-1997”发布; 2002年IEEE公布了更新的VHDL标准版本,即“IEEE Std 1076-2002”。 VHDL语言的特点 语法严谨,结构规范,移植性强。VHDL语言是一种被IEEE标准化的硬件描述语言,几乎被所有的EDA工具所支持,可移植性强,便于多人合作进行大规模复杂电路的设计;VHDL语言语法严谨、规范,具备强大的电路行为描述能力,尤其擅长于复杂的多层次结构的数字系统设计。 数据类型丰富:VHDL有整型、布尔型、字符型、位型(Bit)、位矢量型(Bit_Vector)、时间型(Time)等数据类型,这些数据类型具有鲜明的物理意义,VHDL也允许设计者自己定义数据类型,自己定义的数据类型可以是标准数据类型复合而成的枚举、数组或记录(Record)等类型。 支持层次结构设计:VHDL适于采用Top-down的设计方法,对系统进行分模块、分层次描述,同样也适于Bottom-up的设计思路;在对数字系统建模时支持结构描述、数据流描述和行为描述,可以像软件程序那样描述模块的行为特征,这时设计者注意力可以集中在模块的功能上,而不是具体实现结构上,也可以采用结构描述。设计人员可以根据需要灵活地运用不同的设计风格。 独立于器件和设计平台:VHDL具有很好的适应性,其设计独立于器件和平台,可以非常方便地移植到其他平台,或综合到其他器件,用户在设计过程中,对器件的结构与细节可以不用考虑。 便于设计复用:VHDL提供了丰富的库、程序包,便于设计复用,还提供了配置、子程序、函数、过程等结构便于设计者构建自己的设计库。 4.2 VHDL组合电路设计 VHDL程序具有下述特点 (1)VHDL每个语句的最后一般用分号(;)结束; (2)VHDL程序书写格式自由,可通过增加空格、转行等提高程序的可读性; (3)以“--”开始的语句为注释语句,用来增强程序的可读性和可维护性,注释语句不参与编译; (4)VHDL关键字(或称为保留字)对大小写不敏感(大写、小写均可),在本书中一律用大写表示。 端口定义:以PORT( )语句定义模块端口及端口数据类型; 端口模式(或端口的方向):用IN,OUT,INOUT,BUFFER描述端口上数据的流动方向; 数据类型:端口、信号、变量等数据对象都要指定数据类型,常见的数据类型包括INTEGER,BOOLEAN,BIT,STD_LOGIC,STD_LOGIC_VECTOR等。VHDL是一种强类型语言,不同类型的数据不能相互传递数值,即使数据类型相同,位宽不同,也不能相互传递; 信号赋值:用符号“=”对信号进行赋值; 逻辑操作符:包括AND,OR,NOT,NAND,XOR,XNOR等; 文件取名:建议文件名与VHDL程序实体名一致,文件名后缀是.vhd,比如例4.1应存盘为vote.vhd; 工作目录:VHDL设计文件应存于当前设计工程所在的目录中,此目录将被设定为WORK库,WORK库的路径即为此目录的路径。 4.2.2 用VHDL设计加法器 【例4.3】 4位二进制加法器的VHDL描述 ENTITY add4 IS PORT(a,b : IN INTEGER RANGE 0 TO 16; sum : OUT INTEGER RANGE 0 TO 32); END add4; ARCHITECTURE one OF add4 IS BEGIN sum=a+b; --用算术运算符进行设计 END one; 4位二进制全加器RTL级综合结果(Synplify Pro) 4位二进制全加器门级综合视图 (Synplify Pro) 4.3 VHDL时序电路设计 【例4.5】 基本D触发器的VHDL描述 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY dff_a IS PORT(d,clk: IN STD_LOGIC; q: OUT STD_LOGIC); END dff_a; ARCHITECTURE one OF dff_a IS BEGIN PROCESS(clk)
您可能关注的文档
- 01-现代人力资源管理.ppt
- 01-绿带教材-六西格玛概论-03_组织架构.ppt
- 01-经营绩效评核基准.ppt
- 01-旭普林双块式无喳轨道建设体系技术技术报告书.ppt
- 01-赢在执行力.ppt
- 0101揭开货币的神秘面纱.ppt
- 0102 桥梁的组成与分类 .ppt
- 0110三佳煤化公司.ppt
- 0114eeec-a5d7-4584-82bd-03ca9faf56aa_扩音机放大电路的.ppt
- 012第十二章公务员制度教程.ppt
- 教育行业可持续发展报告:绿色教育理念与实践.docx
- 金融行业反欺诈技术革新与大数据应用创新案例报告.docx
- 2025年新疆维吾尔自治区伊犁州霍城县高三下学期考前数学适应性演练(二)试题.docx
- 城市低碳交通发展模式与案例分析报告.docx
- 2025年旅游地产项目规划设计与旅游产业生态构建研究.docx
- 针对2025年大型物流园区建设的风险评估与物流园区环境保护措施报告.docx
- 金诚信分析报告:矿服业务稳步增长,矿山项目稳步推进打造高成长性.pdf
- 金融科技在2025年助力普惠金融业务拓展与市场竞争力提升报告.docx
- 信托行业转型升级与创新业务模式发展现状及趋势分析报告.docx
- 新零售环境下实体书店如何应对顾客消费习惯变化报告.docx
文档评论(0)