欢迎来到天天文库
浏览记录
ID:55288679
大小:78.50 KB
页数:8页
时间:2020-05-09
《ABEL-HDL语言简明教程.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、ABEL-HDL语言简明教程一.ABEL-HDL简介ABEL-HDL(ABELHardwareDescriptionLanguage)语言是一种层次化的硬件描述语言,它支持多种行为级输入形式,其中包括逻辑方程式、状态图和真值表等。ABEL编译器和ispLEVER/ispDesignEXPERT/ISPSynario版本软件中的ABEL-HDL编译器可通过仿真对ABEL-HDL语言设计进行功能验证。此后,编译器在PLD或FPGA等可编程IC上实现此设计。ABEL-HDL设计还可以通过标准格式的设计传输文件转移到其它设计环境中去使用
2、。二.ABEL-HDL语法ABEL-HDL源文件中的每一行必须符合以下语法规则:l一行最多为150个字符长。l每一行可用按回车键来结束;除开始、结束、标题等语句外,多以分号“;”结束。l不同的关键字、标识符和数之间最少要用一个空格隔开。l在同一关键字、数、运算符或标识符中不可嵌入空格和句点。l关键字及特殊常量可用大写、小写或大小写字母混合方式键入,关键字及特殊常量与大小写无关。l一般标识符也可以是大写、小写或大小写字母混用,但必须注意:一般标识符与大小写有关,这点在编写程序时要特别小心,极易出错。2.1ABEL-HDL基本语法1
3、.标识符标识符(用户提供的名字和标号)用于标识下列各项的名称:l器件(P16V8R)l器件引脚及节点(LD,Q3,Q2,Q1,Q0,N_1)l功能块({?A&?B&?C})l集合([Q3..Q0])l输入或输出信号(I3,I2,I1,I0,Q3,Q2,Q1,Q0)l常量(H,L,.X.,.C.)l宏(NAND3)l哑变量(A,B,C)不管标识符描述的是什么,其规则和限制是相同的:1).标识符最长为31个字符。2).标识符必须以一个字母或下划线开头。3).除标识符的第一个字符外,其余字符均可以是大小写字母、数字,波浪线(~)和下划
4、线(_)。4).在标识符中不得出现空格,可使用下划线或大写字母来区分一个标识符中的各个字词。5).除保留的标识符(即关键字和特殊常量)外,标识符与字母大小写有关,即大小写字母的含义不同。6).除了合法的点后缀(或称为点扩展名,参见“基本逻辑器件的描述”)外,在标识符中不能用句号。注意以下几点:n标识符应该做到“见名知意”,如And_In1,And_In2,表示二个输入与门的二个输入信号。n标识符应简单明了,易于区分,避免使用大量相似的标识符。n一个标识符如用几个单词组成,则各单词之间宜用下划线或大小写字符来区分,以便阅读。如利用
5、标识符THIS_IS_A_COUNTER比利用标识符THISISACOUNTER就更容易阅读和理解。n使用标识符,需要特别注意:关键字在编程时不得用来给器件、引脚、节点、数组常量、集合、宏或信号命名。2.特殊常量在赋值语句、真值表和测试向量中,用户可使用常量;也可将一常量赋给标识符,并在整个模块中用此标识符代表该常量。常量的值可以是数值,也可以是非数值的特殊常量(或称为专用常量,是一种特殊的标识符)。常用的特殊常量有:H逻辑高电平L逻辑低电平.C.时钟输入(低电平-高电平-低电平转换).K.时钟输入(高电平-低电平-高电平转换)
6、.U.时钟上升沿(低电平-高电平转换).D.时钟下降沿(高电平-低电平转换).X.任意值.Z.高阻态3.运算符ABEL-HDL语言的运算符分为四种基本类型:逻辑运算符、算术运算符、关系运算符及赋值运算符,下面对它们进行说明:1).逻辑运算符:逻辑代数中的各种逻辑运算如与、或、非、异或等,在ABEL-HDL语句中均有专门的符号,如下所示:运算符定义举例逻辑代数中的含义!非!AĀ&与A&BA·B#或A#BA+B$异或A$BAÅB!$同或A!$BA⊙B2).算术运算符:算术运算符定义了表达式中各项之间的算术关系。移位操作运算符也属于此
7、类中。运算符举例说明--A求负数(补码)-A-B减+A+B加*A*B乘/A/B无符号整除%A%B取模:无符号整除的余数<>A>>BA右移B位注意:“/”是无符号的取整除法,即其商为正整数。用求模运算符“%”可得到除的余数。移位操作执行无符号的逻辑移位;在右移过程中零由左边移入,而在左移过程中零由右边移入。3).关系运算符:比较一个表达式的两个项。用关系运算符形成的表达式产生一个布尔真(True)或伪(False)值。运算符说明==(两连写等号)等于!=不等于<小于<=小于等于>大于>=大于等于所有的关系运算
8、符都是无符号的。在使用关系运算符时,一般总是使用括号“()”,以保证表达式的运算按希望的顺序进行。4).赋值运算符:赋值运算符一般在EQUATIONS语句段的方程式中使用,而不在表达式中出现。组合型赋值(立即赋值)无延时地进行赋值,只要方程式算完就赋值;寄存器型
此文档下载收益归作者所有