资源预览内容
第1页 / 共86页
第2页 / 共86页
第3页 / 共86页
第4页 / 共86页
第5页 / 共86页
第6页 / 共86页
第7页 / 共86页
第8页 / 共86页
第9页 / 共86页
第10页 / 共86页
亲,该文档总共86页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第二章 VHDL语言应用基础参考书目及网络资源 VHDL硬件描述语言与数字逻辑电路设计 ,侯伯亨,西安电子科技大学出版社。 VHDL与数字电路设计卢毅 科学出版社 Verilog HDL 硬件描述语言清华大学出版 社 CPLD技术及应用宋万杰等 西安电子科技 大学出版社 可编程逻辑系统的VHDL设计技术Kevin Skahill 东南大学出版社 ALTERA可编程器件及其应用刘宝琴 清华 大学出版社 Xinlinx数字系统现场集成技术朱明程东南 大学出版社http:/www.fpga.com.cnhttp:/bbs3w.tsinghua.edu.cn(学术科学/电 路设计与调试版)http:/www.21icbbs.com/club/default.asphttp:/bbs.6to23.com/2/default.asp?name= dickhouhttp:/www.eetchina.comhttp:/www.xilinx.comPART 1 HDLnVHDL具有强大的行为描述能力,丰富的仿真语 句和库函数,对设计的描述也具有相对独立性 nVerilog 最大特点就是易学易用,语法比较自由nABEL一种早期的硬件描述语言支持逻辑电路的 多种表达形式,其中包括逻辑方程,真值表和状 态图。 nAHDL(Altera HDL) 是ALTERA公司发明的 HDL,特点是非常易学易用,学过高级语言的人 可以在很短的时间(如几周)内掌握AHDL。它 的缺点是移植性不好,通常只用于ALTERA自 己的开发系统。VHDL VHDL语言最初于1981年由美国国防部为解决所有 电子产品存档而提出的一种统一标准语言,1983年 至1985年,由IBM、TI等公司对VHDL进行细致开发 ,1987年成为IEEE 107687标准。1993年,修订版 IEEE 107693出台。随后,IEEE分别提出IEEE 1076 .3(可综合标准)和IEEE 1076.4(标 准),以解决可综合VHDL描述在不同EDA厂商之间的 移植问题,以及ASIC/FPGA的门级库描述问题。 VERILOG VERILOG语言最早由GATEWAY设计自动化公 司于1981年提出,并提供相应的VERILOG仿 真器。1985年,仿真器增强版VERILOG-XL推 出。CADENCE公司于1989年收购GATEWAY公 司,并于1990年把VERILOG语言推向市场,而 保留了VERILOG-XL的所有权。1995年, VERILOG成为IEEE 1364标准。 就标准而言,两种语言并无优劣、先后可言 。至于设计者采用哪种语言,与设计者的习惯、 喜好以及目前EDA、FPGA行业的支持有关。由于 VHDL在系统设计方面的语法支持,各FPGA厂商对 VHDL语言的支持明显多于Verilog,这可从各厂 商所提供的设计开发包中得到明证。而Verilog 由于在门级描述上的优势,从而被众多的IC设计 人员所采用。VHDL -描述输入输出y: OUT STD_LOGIC); -信号 END nand_2;LIBRARY IEEE;-IEEE库说明 USE IEEE.STD_Logic_1164.ALL; -自定义元件库ARCHITECTURE rtl OF nand_2 IS BEGIN -结构体说明 y=NOT(a AND b); END rtl;1.USE定义区2.PACKAGE定义区3.ENTITY定义区4.ARCHITECTURE定义区定义元件库5.CONFIGURATION定义区定义使用哪些自 定义元件库定义电路实体 的外观:I/O接 口的规格描述电路内部的 逻辑功能决定哪一个 architecture 被使用1. VHDL基本结构图2. ENTITY DECLARATION 功能:描述设计模块的输入/输出信号或引脚,并给 出设计模块与外界的接口。实体类似一个“黑盒”,实 体描述了“黑盒”的输入输出口。 格式:ENTITY实体名IS GENERIC(类属表); PORT(端口表); END ENTITY 实体名 实际上,对VHDL而言,大写小写都一 视同仁,不加区分。只是为了阅读方便 ,我们常常做一些区分。(1)The name of the entity 实体名实际上是器件名,最好根据相应的电路功能确定。如4位2进制计数器用counter4b;8位加法器用add8b;3/8译码器用ym_38。l实体名必须与文件名相同,否则无法编译。l实体名不能用工具库中定义好的元件名。l实体名不能用中文,也不能用数字开头。l实体名必须以字母开头,不能以下划线结尾。(2)GENERIC 类属表:用以将信息参数传递到实体。类属表的一般格式为: GENERIC(常数名:数据类型:=设定值 ) GENERIC(awidth : INTEGER:=3;timex: time ); 其中:常数名由设计者确定;数据类型通常取 INTEGER或time等;在表中提供时间参数 、总线宽度等信息。端口表:指明实体的输入、输出信号极其模式 。 端口表的一般格式为: PORT(端口名:端口模式数据类型 )端口模式:共四种: IN(输入)、 OUT (输出)、 INOUT(双向端口) 、 BUFFER(输出并向内部反馈) (3)PORT数据类型:VHDL作为一种强类型语言,必 须对数据对象(常量、变量、信号)规定取值 范围,即对传输或存储数据的类型作明确的界 定。EXAMPLEENTITYENTITY black_box black_box ISIS GenericGeneric ( ( constantconstant width : width : integerinteger := 7 := 7;); ); PORTPORT ( ( clkclk, , rstrst: :ININstd_logicstd_logic; ; d:d:IN IN std_logic_vectorstd_logic_vector(width(width DOWNTODOWNTO 0);0); q:q:OUTOUT std_logic_vectorstd_logic_vector(width(width DOWNTODOWNTO 0);0); co:co:OUT OUT std_logicstd_logic); ); ENDEND black_box; black_box;黑盒黑盒rstrstd7:0d7:0clkclkq7:0q7:0coco关键字关键字 类属参量类属参量 端口定义端口定义端口模式端口模式 端口数端口数 据类型据类型实体结束实体结束Exercise 1编写包含以下内容的实体代码编写包含以下内容的实体代码 端口端口 D D 为为1212位输入总线位输入总线端口端口 OE OE 和和 CLK CLK 都是都是1 1位输入位输入 端口端口 AD AD 为为 1212位双向总线位双向总线 端口端口 A A为为1212位输出总线位输出总线 端口端口 INT INT 是是1 1位输出位输出 端口端口 AS AS 是一位输出同时被用作内部反馈是一位输出同时被用作内部反馈 my_designd11:0oeclkad11:0a11:0int asanswer LIBRARY LIBRARY ieeeieee; ; USE ieee.std_logic_1164.ALL;USE ieee.std_logic_1164.ALL; ENTITY my_design IS ENTITY my_design IS PORT (PORT ( d:d:IN IN std_logic_vector(11 DOWNTO std_logic_vector(11 DOWNTO 0);0); oeoe, , clkclk: : IN IN std_logic; std_logic; ad:ad:INOUT INOUT std_logic_vector(11 std_logic_vector(11 DOWNTO 0);DOWNTO 0); a:a:OUT OUT std_logic_vector(11 DOWNTO 0); std_logic_vector(11 DOWNTO 0); intint: :OUT OUT std_logic; std_logic; as:as:BUFFER std_logic);BUFFER std_logic); END my_design;END my_design;my_designd11:0oeclkad11:0a11:0int asExercise 21 1、编写包含全加器的实体代码。编写包含全加器的实体代码。2 2、编写、编写4 4选选1 1数据选择器的实体代码。数据选择器的实体代码。Full_adderabcsumco3. ACHITECTURE结构体:通过若干并行语句来描述设计实体的逻辑功能(行为描述)或内部电路结构( 结构描述),从而建立设计实体输出与输入 之间的关系。一个设计实体可以有多个结构 体。 格式:ARCHITECTURE 结构体名 OF 实体名 IS说明语句;BEGIN并行语句;END ARCHITECTURE 结构体名;93版本有,87没有。VHDL结构体术语 说明语句:用于定义结构体中所用的数据对象和子 程序,并对所引用的元件加以说明,但不能定义变 量。 并行语句 并行语句有五种类型,可以把它们看成结构体的五种子结构。这五种语句结构本身是并行语句,但内部可能含有并行运行的逻辑描述语句或顺序运行的逻辑描述语句,如进程内部包含的即为顺序语句。 五种语句结构分别为块语句、进程语句、信号赋值 语句、子程序调用语句和元件例化语句。 结 构 体 结 构 图结构体结构体说明语句说明语句功能描述语句功能描述语句 块语句块语句进程语句进程语句信号赋值语句信号赋值语句子程序调用语句子程序调用语句元件例化语句元件例化语句定义顺序语句模块,用从外部 获得的信号值,或内部的运算 数据向其它的信号进行赋值。将设计实体内的处理结果向 定义的信号或界面端口进行 赋值 用以调用过程或函数,并将 获得的结果赋值于信号。元件调用,用来调用另一个 实体所描述的电路。由若干并行执行语句包装 在一起形成一个子模块。The relationship between the entity and architectureInput 1Input nOutput 1Output nENTITYENTITYA A B B C C D DSeSel lMUX_OutMUX_Out2 2 Structure描述 描述该设计单元的硬件结构, 即该硬件是如何构成的,类似于数字电路中的逻辑 图描述. Date Flow描述 它是类似于寄存器传输级的方 式描述数据的传输和变换,以规定设计中的各种 寄存器形式为特征,然后在寄存器之间插入组合 逻辑。与数字电路中的真值表描述相似。 Behavior Process描述 只描述所希望电路的 功能或者电路行为(输入输出间转换的行为), 而没有指明或涉及实现这些行为的硬件结构。与 数字电路中的逻辑表达式描述相似。Three kinds of description for the architecturearchitecture one of mux21 issingle d,e:bit;begind
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号