- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
eda知识点梳理教程
知识点:
VHDL文字规则
1. 数字型文字——由数字、小数点和下划线组成
(1)整数文字 5, 678, 156E2, 45_234_287(
(2)实数文字 188.993,88_670_551.453_909
(3)以数制基数表示的文字
格式:数制#数值#(指数)
例如: 10#170#
16#FE#
2#1101_0001#
8#376#
16#E#E1
4)物理量文字
例如:60 s,100 m
2. 字符串文字
字符——以单引号括起来的数字、字母和符号(ASCII码)
例如:’0’,’1’,’A’,’B’,’a’,’b’
字符串——一维的字符数组,用双引号括起来。
(1)文字字符串
例如:“ABC”,“A BOY.”,“A”, “1011”
(2)数值字符串——位矢量
格式:数制基数符号“数值字符串”
其中: B——二进制基数符号;
O——八进制基数符号;
X——16进制基数符号;
例如: B“111_011_110”;矢量数组,长度为9
O“15”;等效B“001101”,长度为6
X“AD0”;等效B“101011010000”, 长度为12
数值字符串中可添加下划线,不影响其长度
3. 标识符——是用户给常量、变量、信号、端口、子程序或参数定义的名字
规则(’87标准, 又称短标识符):
标识符由字母(A…Z;a…z)、数字和下划线字符组成
任何标识符必须以英文字母开头
末字符不能为下划线
不允许出现两个连续下划线
标识符中不区分大小写字母
VHDL定义的保留字或称关键字,不能用作标识符
VHDL’93标准支持扩展标识符,以反斜杠来定界,允许以数字开头,允许使用空格以及两个以上的下划号。
扩标用反斜杠界定。如:\multi_screens\。
允许包含图形符号、空格符。如:\mode A\, \$100\等。
反斜杠之间的字符可用保留字。如:\buffer\, \entity\等。
扩标的界定符两个斜杠之间可以用数字打头。如:\100$\,\2chip\,\4screens\等。
扩标中允许多个下划线相连。如:\Four__screens\, \TWO__Computer__sharptor\等。
扩展标识符中的一个反斜杠,要用两个反斜杠来代替
扩标区分大小写。如: \EDA\ 与\eda\不同。
扩标与短标不同。如:\Computer\ 与Computer不同。
4.下标名——数组
用途:用于指示数组型变量或信号的某一个元素
格式:标识符(表达式)
例如:b(3);表示数组型变量或信号b的第3个元素
5.段名——多个下标名的组合
用途:用于指示数组型变量或信号的某一段元素
格式:标识符(表达式 方向 表达式)
方向:TO——下标序号由低到高
DOWNTO——下标序号由高到低
例如:D(7 DOWNTO 0);表示数据总线D7~D0
D(5 TO 7 );表示数据总线D5~D7
6.注释
VHDL中的注释由两个连续的短线(--)开始,直到行尾。
VHDL数据对象——存放各种类型数据的容器,包括变量、常量、信号和文件
1. 变量(VARIABLE)
规则:只能在进程(PROCESS)、函数(FUNCTION)和过程(PROCEDURE)中说明和使用的局域量
定义格式:
VARIABLE 变量名:数据类型(范围)(:=初始值)
如:VARIABLE a:INTEGER;
VARIABLE b:INTEGER :=2;
VARIABLE c:INTEGER RANGE 0 TO 7 :=2;
变量赋值语句:
目标变量名:=表达式
例如:VARIABLE x,y:REAL
VARIABLE a,b:BIT VECTOR(0 TO 7);
x:=100.0;
y:=1.5+x;
a:=
a(3 TO 6):=(‘1’,‘1’,‘0’,‘1’);
a(0 TO 5):=b(2 TO 7);
变量使用要点:
变量是一个局部量,只能在进程和子程序中使用,不能将信息带出对它作出定义的当前设计单元。
变量赋值立即发生,无延时行为。
VHDL不支持变量附加延时语句。变量的初值不是必需的,综合器将略去所有初值。
变量常用在实现某种算法的赋值语句中。
2. 信号(SIGNAL)
规则:信号是在结构体(ARCHITECTURE)、程序包(PACKAGE)和实体中声明的全局量。
信号定义格式:
SIGNAL 信号名:数据类型(范围)(:=初值)
例如:SIGNAL temp:S
文档评论(0)