- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
附录B硬件描述语言VHDL-- 本课件内容较多,供教师有选择地使用 -- 附录B内容提要 B.1 VHDL的产生与发展 B.2 用VHDL建立电路模型 B.3 面向模拟器的某些特性 B.4 VHDL中的对象 B.5 数据类型 B.6 VHDL的词法单元 B.7 属性 B.8 表达式与运算符 B.9 子程序 — 过程与函数 B.10 程序包与设计库 B.11 行为描述 B.12 结构描述 B.13 重载 B.14 VHDL保留字和预定义程序包 VHDL是什么? HDL ? Hardware Description Language; VHSIC ? Very High Speed Integrated Circuit; VHDL ? VHSIC Hardware Description Language; VHDL是一个硬件描述语言,IEEE审定的工业标准; 80年代初期美国政府超高速集成电路( VHSIC )发展计划的衍生物; VHDL的IEEE国际标准:IEEE Std 1076 IEEE std 1076-1987, 1076-1993, 1076-2000 ,1076-2002….. VHDL的发展历程 1981年6月,美国成立了VHDL工作小组; 1983年6月,由 Intermitrics, IBM和 Texas Instrument组成开发小组,任务是: 提出语言版本; 开发其软件环境。 1987年12月,IEEE公布了 IEEE-1076 作为HDL的第一个标准; 1993年, IEEE公布了VHDL_93; 1999年: VHDL_AMS(Analog Mixed Signal) 1999年: VHDL1076.6(RTL可综合子集); 2000年1月公布了VHDL1076-2000; 2000年5月公布了VHDL1076-2002; VHDL的主要目标 覆盖多个层次的广谱的HDL 面向高层次的行为(算法)描述; RTL级描述; 门级描述; 电路级描述(不太方便); 物理参数描述(延时,功耗,频率,尺寸.....); 可读性好,既可被计算机接受,又可作文档; VHDL描述与工艺无关 ? 有较长的生命期;(与工艺有关的参数,可通过VHDL的Attribute加进去) 因为是标准 ? 有通用性。 VHDL的设计环境 HDL的 3 方面特性 VHDL行为描述和结构描述 以2选1多路器为例 实体声明(下)对应于框图(左)entity mux is begin port( in2, in2, sel : in bit ; out1: out bit ); generic( delay := 5ns ); end; VHDL行为描述 architecture muxbh of mux is begin if sel = ‘1’ then out1 = in1 after delay else out1 = in2 after delay; end; VHDL结构描述之一 architecture mux1 of mux is begin NOT: sb == U0 ( sel ) AND2: s1 == U1( sel, in1 ); AND2: s2 == U2 ( sb, in2 ); OR2: out1 == U3 ( s1, s2 ); end; VHDL结构描述之二 architecture mux2 of mux is begin NOT: sb == U0 ( sel ) NAND2: s1 == U1( sel, in1 ); NAND2: s2 == U2 ( sb, in2 ); NAND2: out1 == U3 ( s1, s2 ); end; VHDL的基本概念和主要特点 VHDL基本单元: (4种声明) 程序包(package ),属任选项。 实体(entity),是必选项。 结构体(architecture),是必选项。 配置(configuration ),属任选项。 程序包 程序包分2部分: package declaration package body 用法: use 程序包名 编译单元和设计库 设计库:存放各编译单元的地方。例: STD库: STANDARD包; TEXTIO包; ….. WORK库:当前的编译单元所在的库。 其它库 程序包(续) 将程序包的声明部分和包体部分分开,可以实现内部保密的目的; 程序包可用来定义多种数据类型以及对这些数据
文档评论(0)