欢迎来到天天文库
浏览记录
ID:59172852
大小:662.00 KB
页数:58页
时间:2020-09-26
《电子设计自动化第三讲ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、上节回顾VHDL数据对象信号------重要变量------重要常量VHDL数据类型上节回顾-信号(Signals)代表连线,Port也是一种信号没有方向性,可给它赋值,也可当作输入在Package、Entity、Architecture中定义用<=进行赋值目标信号名<=表达式AFTER时间量;用:=进行初始化设定的初始值不可综合,用于仿真signalcount:bit_vector(3downto0):=“0011”;3.变量(Variable)临时数据,没有物理意义只能在Process、Function、Procedure中定义,并只在其内部有效,要
2、使其全局有效,先转换为Signal。用:=进行赋值用:=进行初始化variableresult:std_logic:=‘0’;信号与变量赋值(差异)【例6-3】…ARCHITECTUREbhvOFDFF3ISSIGNALA,B:STD_LOGIC;BEGINPROCESS(CLK)BEGINIFCLK'EVENTANDCLK='1'THENA<=D1;B<=A;Q1<=B;ENDIF;ENDPROCESS;END;信号与变量赋值(差异)【例6-4】...ARCHITECTUREbhvOFDFF3ISBEGINPROCESS(CLK)VARIABLEA,B
3、:STD_LOGIC;BEGINIFCLK'EVENTANDCLK='1'THENA:=D1;B:=A;Q1<=B;ENDIF;ENDPROCESS;END;数据类型72.3.5词法1.程序注释注释从“--”符号开始,到该行末尾结束。2.数字VHDL语言数字表示法有十进制表示法、二进制表示法和八进制表示法。(课本P247)8整数举例:010,1,345_67,3e8浮点数举例:10.0,3.1415,1.2E-3,2.1e+5其中:整数::=数字或下划线连接的数字指数::=E[+]整数或E[-]整数(1)十进制数表示法书写格式为:十进制文字::=整数.[
4、整数][指数](2)基表示二、八、十六进制数的方法用“基”表示数的书写格式为:9举例:2#10110101#--二进制表示法8#267#--八进制表示法16#8F#--十六进制表示法30=3E1=16#1E#=2#11_11#E130.0=300.0e-1=16#1E.0#=2#11.11#E+3上式中:基::=整数基于基的整数::=扩展数字{[下划线]扩展数字}扩展数字::=数字/字母以基表示的数::=基#基于基的整数.[基于基的整数]#指数103.字符VHDL中的字符为被单引号括起来的ASCII字符。其书写格式为:字符文字::=‘图形字符’例如:‘A
5、’‘’‘*’114.字符串VHDL中的字符串为被双引号括起来的图形字符序列,可以为空。其书写格式为:字符串::=“图形字符”例如:“A”“”“string”12位串是被双引号括起来的扩展数字序列,在数字序列前冠以基数说明符。其书写格式为:位串文字::=基数说明符“位值”B为二进制基说明符,O为八进制基说明符,X为十六进制基说明符例如:B“1111_1101”X“FD”O“375”5.数字位字符串(位矢量)位串的长度等价于二进制数的长度。位值::=扩展数字{或下划线扩展数字}132.3.6运算操作符VHDL语言的操作符有5种:★逻辑运算符(LOGICAL)
6、★关系运算符(RELATIONAL)★算术运算符(ARITHMETIC)★并置运算符(CONCATENATION)1.逻辑运算符在VHDL语言中,逻辑运算符有7种:(课本P256)★移位运算符(SHIFT)SYN适用于BIT、BOOLEAN、STD_LOGIC或BIT_VECTOR,STD_LOGIC_VECTOR14◆NOT——取反◆AND——与◆OR——或◆NAND——与非◆NOR——或非◆XOR——异或◆XNOR——同或在一个VHDL语句中存在两个逻辑表达式时,左右没有优先级差别(不包括NOT)。一个逻辑式中,先做括号里的运算,再做括号外运算。逻辑
7、运算符的书写格式为:(1)a<=bANDcANDdANDe;运算符相同,且是AND,OR,XOR中的一种(2)a<=(bANDc)OR(dANDe);【例9-21】SIGNALa,b,c:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALd,e,f,g:STD_LOGIC_VECTOR(1DOWNTO0);SIGNALh,I,j,k:STD_LOGIC;SIGNALl,m,n,o,p:BOOLEAN;...a<=bANDc;--b、c相与后向a赋值,a、b、c的数据类型同属4位长的位矢量d<=eORfORg;--两个操作符OR相同,不需括
8、号h<=(iNANDj)NANDk;--NAND不属上述三种算符中的一种,必须加
此文档下载收益归作者所有