- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(2)信号 VHDL中的信号类似于硬件电路中的连接线。信号只能在结构体中声明(不能在进程和子程序中声明),信号语句包括信号声明语句和信号赋值语句。 信号声明语句的其格式为: signal 信号名:数据类型:=初始值; 例: signal X,Y:integer:=3; 信号赋值语句的格式为: 信号名=表达式; 例: X=5; 例:信号声明与赋值语句举例。 architecture one of hadder is signal y:bit; begin y=A xor B; S=y; y=A and B; C0=y; end one; (3)常数 VHDL设计实体中的常数可以使程序容易阅读和修改。定义常数后,程序中所有用到该常数值的地方都用定义的常数名表示,需要修改该常数时,只要在该常数名定义处修改即可。常数定义的语法格式为: constant 常数名:数据类型:=表达式; 例: constant Delay:time:=25ns; 2.2 数据类型 VHDL有多种标准的数据类型,并且允许用户自定义数据类型。 一、标准数据类型 VHDL标准程序包STANDARD中定义,在应用中自动包含进VHDL的源文件,不需要USE语句显示调用。标准数据类型说明如下。 1.整数(INTEGER) 整数包括正、负整数和零,可以使用预定义运算操作符,如加“+”、减“-”、乘“×”、除“÷”进行算术运算。在VHDL语言中,整数的表示范围为-2147483647~2147483647,即从-(231-1)到(231-1)。 2.实数(REAL) 实数的定义值范围为-1.0E+38~+1.0E+38。实数有正负数,书写时一定要有小数点。例如:-1.0,+2.5,-1.0E+38 3.位(BIT) 位值用字符‘0’或者‘1’(将值放在引号中)表示。 4.位矢量(BIT_VECTOR) 位矢量是用双引号括起来的一组数据。例如:“001100”,X“00bb”。在这里位矢量前面的X表示是十六进制。用位矢量数据表示总线最形象也最方便,在VHDL程序中将会经常遇到。使用位矢量时必须注明位宽,即数组中元素个数和排列,例如: SIGNAL S:BIT_VECTOR(15 DOWNTO 0); SIGNAL Y:BIT_VECTOR(0 TO 7); 5.布尔量(BOOLEAN) 取值是TRUE或者FALSE。 6.字符(CHARACTER) 字符也是一种数据类型,所定义的字符量通常用单引号括起来,如‘a’。一般情况下VHDL对大小写不敏感,但对字符量中的大小写则认为是不一样的。例如,‘B’不同于‘b’。字符量中的字符可以是从a到z中的任一个字母,从0到9中的任一个数以及空格或者特殊字符,如$,@,%等等。包集合standard中给出了预定义的128个ASCⅡ码字符,不能打印的用标识符给出。字符‘1’与整数1和实数1.0都是不相同的,当要明确指出1的字符数据 时,则可写为:CHARACTER( ‘ 1’)。 7.字符串(STRING) 字符串是由双引号括起来的一个字符序列,也称字符矢量或字符串组。字符串常用于程序的提示和说明。字符串举例如下: VATIABLE string_1 : STRING (0TO 3); ┇ string_1:= “a b c d”; 8.时间(TIME) 时间是一个物理量数据。完整的时间量数据应包含整数和单位两部分,而且整数和单位之间至少应留一个空格的位置。例如55 sec,2 min等。在包集合STANDARD中给出了时间的预定义,其单位为fs,ps,ns,μs,ms,sec,min和hr。例如:20 μs,100 ns,3 sec。 在系统仿真时,时间数据特别有用,用它可以表示信号延时,从而使模型系统能更逼近实际系统的运行环境。 9.错误等级(SEVERITY LEVEL) 错误等级类型数据用来表征系统的状态,共有4种:note(注意),warning(警告),error(出错),failure(失败)。在系统仿真过程中可以用这4种状态来提示系统当前的工作情况,从而使设计人员随时了解当前系统工作的情况,并根据系统的不同状态采取相应的对策。 10.大于等于零的整数(自然数)(NATURAL),正整数(POSITIVE) 这两种数据是整数的子类,NATURAL类数据为取0和0以上的正整数;而POSITIVE 则只能为正整数。 二 、IEEE标准化数据类型 IEEE的STD_LOGIC_1164程序包中定义了两种应用十分广泛的数据类型,其定义如下所示: (1)TYPE std_logic IS ( ‘U’, - - 初始值 ‘X’,
您可能关注的文档
最近下载
- 智能制造精益生产与智能制造的融合.pptx VIP
- 汽车热管理管路深度报告:新能源管路空间大幅提升,塑料应用高速增长.docx VIP
- 01.2021U9Cloud多组织入门培训-基础设置.pptx VIP
- 学校校长公开选拔笔试试题及参考答案校长招聘考试笔试真题及答案.docx VIP
- 2025年央国企AI+数智化转型研究报告.pdf VIP
- 2025年疾控中心招聘试题及答案.docx VIP
- 道家打坐的正确方法.doc VIP
- 2024-2025学年初中音乐七年级上册(2024)人音版(2024)教学设计合集.docx
- 智能毕业设计:基于单片机的电子时钟设计.docx VIP
- 2024年贵州社区工作者招聘真题 .pdf VIP
文档评论(0)