第四章VHDL语言的库程序包及配置_第1页
第四章VHDL语言的库程序包及配置_第2页
第四章VHDL语言的库程序包及配置_第3页
第四章VHDL语言的库程序包及配置_第4页
第四章VHDL语言的库程序包及配置_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1VHDL语言的库、程序包及配置4VHDL语言的库、程序包及配置

在VHDL设计实体中,除了实体说明和结构体外,还有库、程序包和配置三个各自独立的组成部分。依据VHDL语言的规则,VHDL程序所使用的文字、数据对象、数据类型都需要预先定义。

将预先定义好的数据类型、元件调用声明及一些常用子程序收集在一起,形成程序包,供VHDL设计实体共享和调用。若干个程序包则形成库。

2

库(Library)是用于存放预先设计好的程序包和数据的集合体。

VHDL语言的库、程序包及配置

4.1VHDL库

1.常用的库

VHDL语言中常用的五种库:

IEEE库②

STD库③

WORK库④

VITAL库⑤

用户自定义库

——VHDL语言设计中最常见的库。

——VHDL语言的标准库。

——用户的VHDL语言工作库。

——VHDL语言的时序仿真库。

——用户自定义的资源库。

3VHDL语言的库、程序包及配置4VHDL语言的库、程序包及配置

2.资源库和设计库

VHDL语言所使用的库可以分成两类:

●资源库

●设计库

用于存放常规元件、标准模块、预定义数据类型等,如:IEEE库。

是一种符合VHDL标准的预定义库。

如:STD库定义了一些基本的数据类型、子类型和函数等;WORK库存放用户设计和定义的设计单元及程序包等。

5VHDL语言的库、程序包及配置

3.库的使用

关键字:LIBRARY格式:LIBRARY

库名称

库说明语句:

说明:用来指明所使用的库,库名称为一系列由逗号分隔的库名。

库说明语句总是位于设计实体的最前面,通常与USE语句一起使用。

6VHDL语言的库、程序包及配置

3.库的使用

格式1:USE

库名.程序包名.项目名;

USE语句用来指明库中的程序包,有两种格式:

作用:为本设计实体开放指定库中的特定程序包内所选定的项目。

例如:LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.STD_ULOGIC;

USEIEEE.STD_LOGIC_1164.RISING_EDGE;

7VHDL语言的库、程序包及配置

3.库的使用

格式2:USE

库名.程序包名.ALL;

作用:为本设计实体开放指定库中的特定程序包内所有的内容。

例如:LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

8在VHDL语言中,用户可以将已定义的常数、信号、函数、数据类型、元件和子程序等收集在一起形成一个程序包,以便更多的设计实体利用和共享。VHDL语言的库、程序包及配置

4.2VHDL程序包

定义程序包的一般语句格式:

PACKAGE

程序包IS

程序包首说明

END

程序包名;

PACKAGEBODY

程序包IS

程序包体说明

END

程序包名;

程序包首程序包体9

程序包首收集了VHDL设计所需的公共信息,用来定义数据类型、元件和子程序等。

VHDL语言的库、程序包及配置

1.程序包首

一般格式:

PACKAGE

程序包IS

TYPE语句;

SUBTYPE语句;

CONSTANT语句;

SIGNAL语句;

COMPONENT语句;

FUNCTION语句;

SUBPROGRAM语句;

END

程序包名;

——用来定义数据类型——用来定义子类型

——用来定义常数

——用来定义信号

——用来定义元件

——用来定义函数

——用来定义子程序

10VHDL语言的库、程序包及配置

【例4.1】定义程序包。

PACKAGEmy_pkgIS

TYPEbyteIS

RANGE0TO255;

SUBTYPEnibyteISbyteRANGE0TO15;

CONSTANTbyte_ff:

bcd:=255;

SIGNALaddend:nibabc;

COMPONENTbyte_adder

PORT(a,b:INbyte;c:OUTbyte;overflow:OUTBOOLEAN);

ENDCOMPONENT;

FUNCTIONmy_fun(a:INbyte)RETURNbyte;

ENDmy_pkg;

程序清单:--程序包首,程序包名为my_pkg--

定义数据类型,byte的范围0~255--定义子类型nibyte--定义常数byte_ff--定义信号addend--定义元件byte_adder--定义函数my_fun11

用来描述已在程序包首中定义过的元件和子程序的内容。

VHDL语言的库、程序包及配置

2.程序包体

一般格式:

PACKAGEBODY

程序包IS

程序包体说明

END

程序包名;

程序包体说明可以是USE语句、子程序定义、子程序体、数据类型说明、子类型说明和常数说明等。12

常用的预定义的程序包有:

VHDL语言的库、程序包及配置

3.VHDL常用的程序包

STD_LOGIC_1164

STD_LOGIC_ARITH

STD_LOGIC_UNSIGNED和STD_LOGIC_SIGNED

④STANDARD和TEXTIO13

配置是将特定的结构体与一个确定的实体相关联,为大型系统的设计提供管理和工程组织。

配置是设计实体VHDL语言描述的组成部分之一,但不是必不可少的。常用来描述层与层之间、实体与结构体之间的连接关系。

VHDL语言的库、程序包及配置

4.3配置

配置可分为三种类型:

●默认配置

●元件配置

●结构体配置

14

默认配置是一种最为简单的配置,当设计实体中不含有任何其他元件和块语句时,可以使用默认配置。

VHDL语言的库、程序包及配置

1.默认配置

基本格式:

CONFIGURATION

配置名OF

实体名IS

FOR

选配结构体名;

ENDFOR;

END

配置名;

15

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

ENTITYCOUNTERIS

PORT(CLK,CLR:INSTD_LOGIC;

Q:OUTINTEGER);

ENDCOUNTER;VHDL语言的库、程序包及配置【例4.2】设计两个计数位宽分别为4位和8位的计数器。

设两个计数器具有相同的功能和外部结构,只是计数位宽不同。用一个计数器实体来实现两个不同结构体的配置。

程序清单:

计数器的实体

16VH炼DL语言对的库谢、程欠序包愁及配及置【例4.秒2】设计乓两个嫌计数鞋位宽廉分别队为4位和8位的平计数菠器。程序逝清单恋:AR凉CH钱IT期EC壁TU言RECO贼UN绘T4OFCO羡UN吗TE鸦RISBE谷GI盐NPR殊OC访ES黎S(C半LK黎)VA主RI闪AB砌LEQQ蝴:懂IN丑TE作GE身R:抬=0;BE喂GI伞NIFCL拜R=啊'0老'TH县ENQQ挣:=0;EL讨SI讯F(C恢LK荐'袋EV炎EN吴TAN涨DCL巴K=壤'1座')TH肚ENIFQQ得=1堪5TH盘ENQQ侦:=0;EL留SEQQ赖:=QQ域+1;EN饶D呀I防F;EN吹D泥I挣F;Q<=QQ;EN寻D宣P纤RO车CE扫SS;EN覆DCO摊UN长T4;计数目器CO房诚UN颤T4的结纵构体17VH割DL语言这的库供、程狮序包召及配狡置【例4.出2】设计盈两个巡寿计数涌位宽呆分别恒为4位和8位的匪计数等器。程序呈清单供:AR底CH址IT李EC减TU咏RECO壶UN齐T8OFCO习UN懂TE垫RISBE帜GI箩NPR棚OC抛ES犯S(C遗LK烂)VA济RI启AB膊LEQQ油:胆IN堪TE捧GE黎R:嘉=0;BE棉GI妥NIFCL剥R=厕'0趋'TH炉ENQQ梳:=0;EL无SI真F(C五LK如'钱EV挨EN望TAN掠DCL想K=悬'1渠')TH召ENIFQQ滥=2港55TH彻ENQQ渗:=0;EL泼SEQQ每:=QQ深+1;EN谈D垫I你F;EN属D穷I觉F;Q<=QQ;EN以D依P坡RO晴CE写SS;EN啦DCO市UN拾T8;计数俩器CO援UN胞T8的结们构体18VH裁DL语言听的库避、程猎序包恨及配菌置【例4.巷2】设计肉两个去计数亡位宽永分别誉为4位和8位的岩计数竖器。程序加清单汉:CO糕NF咱IG逗UR浙AT垄IO规NCO分UN盛T_炮4OFCO库UN厌TE臭RISFO须RCO茄UN杨T4EN候D沿F魔OR;EN侮DCO骨UN荣T_爱4;CO帜NF小IG齐UR朵AT湿IO梦NCO紫UN久T_冬8OFCO客UN述TE秧RISFO休RCO胸UN轿T8EN率D锄F皱OR;EN努DCO币UN喘T_援8;计数仁器的帽配置19当结美构体冠中含西有多赞个引各用元滑件时岁,可守以采耻用元歼件配蓄置,瞒以指习明引浪用元疫件的始具体摸位置兼。VH毙DL语言纱的库玻、程腾序包宅及配厉置2.元件卫配置格式察:CO咸NF便IG榨UR舞AT责IO起N配置披名OF实体雀名ISFO栗R选配贷结构筐体名FO渴R元件施例化挑标号:元件吊名US招E严CO拌NF讲IG小UR视AT少IO亿N库名.元件剧配置醉名;或US注E际E剃NT胶IT否Y库名.实体妖名(型结构六体名芬);EN惧D滥F胞OR;…EN腊D屑F府OR;EN步D配置恼名;20CO缩慧NF评IG苏UR贡AT兆IO贤Nmu英x_仙c责fgOFmu海x2抓1ISFO董Rst富ru事ct接ur烂eFO暖RU2,U3叨:植a贪nd鹿2US惕ECO怪NF算IG策UR说AT兼IO顿N择W素OR茫K.细an让d2止_c守fg;EN蓬D既F烘OR;FO渡RU4粗:爽o像r2US烤ECO阻NF梦IG齐UR犁AT吐IO指N燃W越OR漂K.盲or悠2_培cf燃g;EN捎D工F捆OR;EN份D雷F活OR;EN朝Dmu扛x_盗c集fg;VH进DL语言揉的库凭、程盼序包摇及配词置【例4.项3】给例5.坟3.漫3中的伞二选券一数您据选骑择器净进行柔元件帽配置屡。程序赛清单肝:21结构饰体配床置与呈元件脾配置商具有管相同欠的特傍征,尤都是继对结勾构体小中所肚引用侨

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论