VHDL硬件的描述.ppt

  1. 1、本文档共257页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
硬件描述语言 VHDL:全称超高速集成电路硬件描述语言 英语:VHSIC (Very High Speed Integrated Circuit) Hardware Description Language; ※用语言的方式而非图形等方式描述硬件电路; ※是IEEE、工业国际标准硬件描述语言 习 题 5 知识的分析与总结 请同学们对以上几个程序进行分析,观察其有什么异同? VHDL语言的一些基本特点: VHDL语言由保留关键字组成; 一般,VHDL语言对字母大小写不敏感;例外:‘ ’、“ ”所括的字符、字符串; 每条VHDL语句由一个分号(;)结束; VHDL语言对空格不敏感,增加可读性; 在“--”之后的是VHDL的注释语句. 库(LIBRARY)是已编译数据的集合,存放程序包定义、实体定义、结构体定义和配置定义,库以VHDL源文件的形式存在,在综合时综合器可随时读入使用,便于设计者共享已编译过的设计结果。 常用的VHDL库有:STD库、WORK库、IEEE库、ASIC库和用户自定义库等。 程序包由两个部分组成的:程序包首和程序包体。其定义格式为: PACKAGE 程序包名 IS --程序包首 程序包首说明部分 END 程序包名; 思 考? 思考? 试编写程序:实现八D触发器功能 八位的二选一电路程序设计? ENTITY mux21a IS PORT (s: IN BIT; a, b: IN BIT_vector(7 downto 0); y : OUT BIT_vector(7 downto 0) ); END ENTITY mux21a; ARCHITECTURE one OF mux21a IS BEGIN PROCESS (a,b,s) BEGIN IF s = '0' THEN y <= a ; ELSE y <= b ; END IF; END PROCESS; END ARCHITECTURE one ; 八位的四选一电路程序设计? ENTITY mux21a IS PORT (s: IN BIT_vector(1 downto 0); a, b,c,d: IN BIT_vector(7 downto 0); y : OUT BIT_vector(7 downto 0) ); END ENTITY mux21a; ARCHITECTURE one OF mux21a IS BEGIN PROCESS (a,b,s) BEGIN IF s = "00" THEN y <= a ; ELSif s="01" then y<=b; elsif s="10" then y<=c; else y<=d; END IF; END PROCESS; END ARCHITECTURE one ; 这三种信号赋值语句的共同点是:赋值目标必须都是信号,所有赋值语句与其他并行语句一样,在结构体内的执行是同时发生的,与它们的书写顺序和是否在块语句中没有关系。 【例】 半加器的VHDL描述 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY half_add IS PORT(a,b: IN STD_LOGIC; co,so: OUT STD_LOGIC); END ENTITY half_add; ARCHITECTURE one OF half_add is BEGIN so <= a XOR b; co <= a AND b; END ARCHITECTURE one; 4.6.4 三态逻辑设计 【1】 三态门 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY trigate IS PORT(en,a : IN STD_LOGIC; y : OUT STD_LOGIC); END trigate; ARCHITECTURE one OF trigate IS BEGIN y <=a WHEN (en='1') ELSE 'Z'; END one; 【2】 三态双向缓冲器 LIBRARY IEEE; USE IEEE.STD_LOGIC_116

文档评论(0)

企管文库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档