描述端口映射

端口映射  时间:2021-04-03  阅读:()

第四章VHDL编程基础主要内容硬件描述语言及其特点VHDL程序基本结构VHDL语言要素VHDL结构体描述方式4.
1硬件描述语言及其特点4.
1.
1硬件描述语言的基本概念硬件描述语言很好地解决了文本语言描述和逻辑图描述存在的不足.
它是一种类似于C、C++的计算机高级语言,允许设计者通过精确定义的语句描述逻辑网络的任何操作,更重要的可以通过计算机仿真设计好的逻辑网络,而且仿真中包含了硬件特性.
4.
1.
2常用硬件描述语言简介目前常用的硬件描述语言有VHDL、Verilog、AHDL和ABEL语言.
VHDL的英文全名是VHSIC(VeryHighSpeedIntegratedCircuit)HardwareDescriptionLanguage,1982年发源于美国国防部,1987年底被和美国国防部确认为标准硬件描述语言.
1993年,IEEE对VHDL进行了修订,公布了新版本的VHDL,即IEEE标准的1076-1993版本.
4.
1硬件描述语言及其特点(续)4.
1.
3VHDL特点VHDL具有更强的行为描述能力支持团队设计模式系统设计与硬件结构无关具有较强的预测能力自动化程度高具有极强的移植能力4.
2VHDL程序基本结构4.
2.
1实体描述实体是一个模块的表层设计单元,其功能是该模块与外部电路进行接口的描述,它定义了模块的输入输出接口信号或引脚,是模块经封装后对外的一个通信界面.
ENTITYsimplegateISPORT(A,B,C:INBIT;F:OUTBIT);ENDsimplegate;4.
2.
1实体描述(续)端口声明的语句格式是:标识符:端口模式数据类型;VHDL可综合的端口模式有以下四种:"IN"通道为单向只读模式,规定数据只能通过此端口被读入实体中.
"OUT"通道为单向输出模式,规定数据只能通过此端口从实体向外流出,或者说可以将实体中的数据向此端口赋值.
"INOUT"定义的通道确定为输入输出双向端口,即从端口的内部看,可以对此端口进行赋值,也可以通过此端口读入外部的数据;而从端口的外部看,信号既可以从此端口流出,也可以向此端口输入信号,如RAM的数据端口.
"BUFFER"功能与INOUT类似,区别在于当需要输入数据时,只允许内部回读输出的信号,即允许反馈.
4.
2.
2结构体描述定义好模块的实体以后,就可以用结构体声明描述模块具体做什么,实现怎样的逻辑功能.
最典型的结构体描述方式有以下三种:行为描述:不考虑硬件实现的途径,直接建立输入与输出之间的关系.
结构描述:通过组合如基本逻辑门电路等更初级的部件构造实现逻辑功能.
数据流描述:通过定义模块中信号的流动方向描述模块功能,也可以看作一种特殊的行为描述模式.

4.
2.
2结构体描述(续)VHDL语言中,结构体描述的一般形式如下:ARCHITECTURE结构体名OF实体名IS说明语句1;说明语句2;…BEGIN功能描述语句1;功能描述语句2;END结构体名;4.
2.
3模块设计实例--双输入与非门实体描述ENTITYnand2ISPORT(A,B:INBIT;F:OUTBIT);ENDnand2;--以下是双输入与非门的结构体描述ARCHITECTUREbehavioralOFnand2ISBEGINF)OFSTD_LOGIC;使用时须加入下面的库语句:LIBRARYIEEE;USEIEEESTD_LOGIC_1164.
ALL;4.
3.
3VHDL数据类型(DataType)(续2)3.
自定义数据类型枚举类型(ENUMERATED)是用文字符号代替一组实际的二进制数的特殊数据类型,如,将一个星期WEEK定义为7状态的枚举数据类型:TYPEWEEKIS(sun,mon,tue,wed,thu,fri,sat);整数类型(INTEGER)和实数类型(REAL)对己作过预定义的数据类型,做取值范围约束.
如:定义数nat的取值范围为0~255TYPEnatISINTEGERRANGE0TO255;数组类型(ARRAY)可以定义约束型数组和未约束型数组.
约束型数组定义格式如下:TYPE数组名ISARRAY(数组下标范围)OF数据类型;记录类型(RECORD)4.
3.
3VHDL数据类型(DataType)(续3)4.
数据类型转换使用类型标记符实现数据类型转换例如:VARIABLEA:INTEGER;VARIABLEB:REAL;A:=integer(B);--变量B取整后赋值给变量AB:=real(A);--变量A加上小数点变成实数后赋值给变量B使用类型转换函数实现类型转换函数名功能备注TO_BIT()由STD_LOGIC转换为BITSTD_LOGIC_1164程序包TO_BIT_VECTOR()由STD_LOGIC_VECTOR转换为BIT_VECTORTO_STD_LOGIC()由BIT转换为STD_LOGICTO_STD_LOGIC_VECTOR()由BIT_VECTOR转换为STD_LOGIC_VECTORCON_STD_LOGIC_VECTOR()由INTEGER转换为STD_LOGIC_VECTORSTD_LOGIC_ARITH程序包CON_INTEGER()由STD_LOGIC_VECTOR转换为INTEGERSTD_LOGIC_ARITH程序包STD_LOGIC_UNSIGNED程序包4.
3.
4VHDL操作符1.
算术操作符求和操作符:包括加法操作符、减法操作符和并置操作符.
符号操作符:包括"+"(正)和"-"(负)两种操作符.
求积操作符:包括*(乘)、/(除)、MOD(取模)和RED(取余)四种.
混合操作符:包括乘方"**"和取绝对值"ABS"两种.
移位操作符:包括SLL(逻辑左移)、SRL(逻辑右移)、SLA(算术左移)、SRA(算术右移)、ROL(逻辑循环左移)和ROR(逻辑循环右移)六种操作符.

例4.
3利用移位操作实现的3-8译码器设计.
LIBRARYIEEE;USEIEEE.
STD_LOGIC_1164.
ALL;USEIEEE.
NUMERIC_STD.
ALL;ENTITYdecoder3_8ISPORT(cod:INNATURALRANGE0TO7;Sult:OUTUNSIGNED(7DOWNTO0));ENDdecoder3_8;ARCHITECTUREbehaveOFdecoder3_8ISCONSTANTnum:UNSIGNED(7DOWNTO0):="00000001";BEGINSulta,in_b=>b,out_s=>v,out_co=>u);--端口映射U2:H_adderPORTMAP(in_a=>v,in_b=>ci,out_s=>s,out_co=>w);U3:Or_2PORTMAP(x=>u,y=>w,z=>co);ENDStructural;本章小结本章作为VHDL语言的编程基础主要介绍了VHDL语言的特点,VHDL程序基本结构,VHDL语言要素和构造体的几种描述方式.
硬件描述语言的种类很多,但只有VHDL和Verilog已经成为IEEE标准.
不同于其他高级语言,为了更准确地描述硬件电路的特征,VHDL语言的程序结构采用将实体和结构体分别进行描述.
VHDL是一种强类型语言,对各种数据对象、数据类型,各种操作符、运算符以及文字书写都有严格的规定.

GreenCloudVPS($30/年),500G大硬盘VPS,10Gbps带宽

GreenCloudVPS最近在新加坡DC2节点上了新机器,Dual Xeon Silver 4216 CPU,DDR4内存,10Gbps网络端口,推出了几款大硬盘VPS套餐,基于KVM架构,500GB磁盘起年付30美元。除了大硬盘套餐外,还加推了几款采用NVMe硬盘的常规套餐,最低年付20美元。不过需要提醒的是,机房非直连中国,尤其是电信用户ping值感人,包括新加坡DC1也是如此。大硬盘VPS...

Vultr再次发布充值多少送多少活动

昨天我们很多小伙伴们应该都有看到,包括有隔壁的一些博主们都有发布Vultr商家新的新用户注册福利活动。以前是有赠送100美元有效期30天的,这次改成有效期14天。早年才开始的时候有效期是60天的,这个是商家行为,主要还是吸引到我们后续的充值使用,毕竟他们的体验金赠送,在同类商家中算是比较大方的。昨天活动内容:重新调整Vultr新注册用户赠送100美元奖励金有效期14天今天早上群里的朋友告诉我,两年...

腾讯云新用户省钱秘笈购买云服务器

目前国内云计算市场竞争异常激烈,尤其是国内的腾讯云、阿里云、景安等商家促销活动一波接一波的进行,对于有需要的用户确实得到不小的实惠。但是这样给予国内的主机商确实是比较大的打击,毕竟这些商家的背景和实例强劲,即便是贴本补贴优惠,也是不怕的。前两年阿里一家各种活动促销,确实在国内市场占据主要的市场地位,腾讯云开始两年没有较大的吸引用户,不过这两年的发展还是比较稳健的。我们很多网友在之前肯定也享受到一些...

端口映射为你推荐
vc组合天然维生素c和合成维生素c有区别吗陈嘉垣大家觉得陈嘉桓漂亮还是钟嘉欣漂亮?嘀动网动网和爱动网各自的优势是什么?百度指数词什么是百度指数百度指数词百度指数我创建的新词www.5any.com我想去重庆上大学baqizi.cc汉字的故事100字官人放题SBNS-088 中年男の夢を叶えるセックス やりたい放題! 4(中文字幕)种子下载地址有么?好人一生平安铂金血痕“斑斑的血痕”是什么意思?恶魔兜兜恶魔圈怎么选癫狂
vps交流 申请免费域名 谷歌域名邮箱 贝锐花生壳域名 希网动态域名 主机优惠码 vir 国外idc 账号泄露 个人空间申请 vip购优汇 hostloc 服务器是干什么的 linux服务器维护 福建铁通 美国凤凰城 lamp兄弟连 万网主机 国外代理服务器 广东服务器托管 更多