PLD器件基础及开发系统介绍
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
共计96个 ASCII码字符
B RT
集成电子技术基础教程
➢标识符 标识符是由标识器件、器件引脚、节点、集合、
输入/输出信号等的合法字符串组成。
标识符必须以字母或下划线开始; 标识符最长不能超过31个字符; 除第一个字符外,标识符可以包含大写字母,小写 字母,数字及下划线,但不允许出现空格; 标识符与大小写字母有关; 关键字不能用作标识符。
B RT
集成电子技术基础教程
➢状态图描述
状态图是一种直观描述时序逻辑的方法,状态图描述方式是 由状态图标题语句,状态描述语句和状态转移语句三部分组成。
格式: STATE_DIAGRAM 状态寄存器标识符 {状态表达式:方程式;}
具体见时序电路
B RT
集成电子技术基础教程
➢测试矢量
格式: TEST_VECTORS(输入标识符集->输出标识符集)
(组合输出) 带时钟的赋值
(寄存输出)
优先级
1 2 3 3 3
B RT
集成电子技术基础教程
运算 运算符 示 例
- -A 算 - A-B 术 + A+B 运 * A*B 算 / A/B
% A%B == A==B 关 != A!=B 系 < A<B 运 <= A<=B 算 > A>B >= A>=B
含
义
优先级
A 取负(以补码表示)
1
A减B
3
A加B
3
A乘B
2
A 除以 B(无符号整除) 2
求模(求 A/B 的余数) 2
如果 A 与 B 相等取值为真 4
如果 A 与 B 不等取值为真 4
如果 A 小于 B 取值为真
4
如果 A 小于等于 B 取值为真 4
如果 A 大于 B 取值为真
4
如果 A 大于等于 B 取值为真 4
4 –>1;5 –>1;6 –>1;7 –>1;
8 –>1;9 –>1;10 –>1;11 –>0;
12 –>0;13 –>0;14 –>0;15 –>0;
END
“模块结束
B RT
集成电子技术基础教程
➢经ABEL语言编译器编译后的简化式子如下:
Z (!A3 & A2&!A1# A4&!A3&!A2#! A4 & A3#! A4 & A2);
例: A pin;
B,C pin istype ‘REG’;
Z1,Z2 node istype ‘COM’;
注意
管脚标识符要与管脚号一一对应,但在ispEXPERT 中管脚号可以省略。 缺省情况下,管脚属性为组合型‘COM’。 一个信号可以包含多个属性。
B RT
集成电子技术基础教程
➢常量说明语句
格式: 标识符=常量表达式;
例: MODULE 1_bit_adder …… END
注意
行末没有分号。 若将该模块作为一个自定义元件(宏块),则模块名 应与自定义元件名相同。
B RT
集成电子技术基础教程
➢标题语句
格式: TITLE ‘字符串’;
例: TITLE ‘4 bit binary counter’;
注意
‘字符串’通常为该模块的内容提示。 标题语句不影响任何逻辑描述及运算结果,可以省略。
基数
2 8 10 16
表记符 例如 十进制数
^B ^B1010 10
^O
^O12
10
^D(缺省) ^D15
15
^H
^HF
15
B RT
集成电子技术基础教程
➢常量
常量用来表示值不变的量。常量可以分为:一般常量和特殊常量。
特殊常量 .C. .F. .K. .P. .X. .Z.
说明 上升沿时钟输入 浮点输入或输出 下降沿时钟输入 寄存器预加载 任意态(无关项) 高阻输入或输出
B RT
集成电子技术基础教程
PLD器件基础及开发系统介绍
一.可编程逻辑器件基础 二.ABEL语言介绍 三.ispEXPERT System介绍
B RT
集成电子技术基础教程
一. 可编程逻辑器件基础
❖ 集成逻辑器件的分类
单片机系列(例,MCS51/96系列)
各种含CPU的微处理器
高级微处理器(例,INTEL80286,TI8000等) 数字信号处理器(例,TMS320系列)
“定义输入信号
Z PIN;
“定义输出信号
A=[A4..A1];
“定义集合
EQUATIONS
“表示以下用逻辑方程描述功能
WHEN((A>=2)&(A<=10)) THEN Z=1; “逻辑功能描述
ELSE Z=0;
TEST-VECTORS(A–>Z)
“以下是测试矢量部分
0 –>0;1 –>0;2 –>1;3 –>1;
数字器件
标准逻辑器件
各种门电路(例,与非门、或非门等) 常用中规模集成电路(例,计数器) 存储器(例,RAM、ROM、EPROM等 全定制产品
专用数字集成电路ASIC
半定制产品 可编程逻辑器件(PLD)
B RT
集成电子技术基础教程
❖ 集成逻辑器件的特点
➢含CPU的微处理器 在时钟脉冲作用下不断执行用户的软件程序,用户编程并不对
其硬件结构产生影响,它的工作速度一般较低; ➢标准逻辑器件
使用方便、价格便宜,但其规模一般较小,一个数字系统往往 要用几十片甚至上百片标准逻辑器件来完成; ➢半定制、全定制ASIC
产品开发需要半导体厂家参与,周期长、费用高,其开发不可 能普及; ➢PLD器件 (1)逻辑功能可编程。(2)器件规模很大。(3)工作速度很高。 (4)使用相对复杂。
格式: @directive [options];
ABEL语言中的指示字为:
@ALTERNATE @CARRY
@DCSTATE
@EXPR
@IFB
@IFDEF
@IFNDEF
@IFNIDEN
@IRPC
@MESSAGE
@RADIX
注意 特殊常量值用大小写均可,但前后两个“.”不能省略!
B RT
集成电子技术基础教程
➢运算及运算符
运算 运算符 示 例
逻 辑 运 算
!Leabharlann Baidu& # $ !$
=
赋值
!A A&B A#B A$B A!$B A=B
运算 := A:=B
含
义
对 A 逐位取反 A 和 B 逐位相与 A 和 B 逐位相或 A 和 B 逐位异或 A 和 B 逐位同或 不带时钟的赋值
枚举法与界限符法可以联合使用。
注意 只有类型相同、长度相同的集合才可一起参与运算。
B RT
集成电子技术基础教程
❖ ABEL源文件的基本结构
ABEL源文件是由一个或多个相互独立的模块组成,每个模块包括
一个或多个完整的逻辑描述。简单的源文件可以只包含一个模块,而
复杂的源文件可能包括多个模块。
➢模块基本结构如下:
输入值->输出值;
例: TEST_VECTORS([A,B]->S)
[0,0]->0; [0,1]->1; [1,0]->1; [1,1]->0;
注意 测试矢量与真值表描述在形式上相似。
B RT
集成电子技术基础教程
➢指示字
指示字的作用就是指导编译软件对源文件作相应的处理。灵 活地应用指示字可以简化源文件的编写和调试。引导指示字的关 键词为“@” 。
TITLE
TRUTH_TABLE WITH
END FUSES LIBRARY STATE
注意 与标识别符不同,关键字不区分大小写!
B RT
集成电子技术基础教程
➢字符串
字符串是包含在单引号内的合法字符序列,通常用于标题语句、标 记语句以及管脚和节点说明语句。
例
TITLE ’1 bit full adder’;
➢器件说明语句 格式: 器件标识符 DEVICE ‘字符串’;
例: U1 DEVICE ‘P16V8C’;
注意
器件说明语句用来把模块中所用器件的标识符与实际PLD器 件相联系。 在ispEXPERT软件中,该语句可忽略。
B RT
集成电子技术基础教程
➢管脚及节点说明语句 格式: 标识符 PIN(或NODE) <#> ISTYPE ‘属性’;
例如,对逻辑函数 Z (A, B) AB AB , 用PLD表示法连接后的完整逻辑图如图 所示。
A
1
1 B
&
& ≥1
Z
B RT
集成电子技术基础教程
❖ 用PLD设计数字逻辑电路的方法
➢传统设计方法:设计要求→真值表→函数表达式→化简或变换→ 电路图
➢现代设计方法:设计要求→用HDL语言描述功能→编译、化简和 仿真→逻辑综合→下载到可编程器件
B RT
集成电子技术基础教程
➢WHEN-THEN-ELSE语句
格式: WHEN 条件 THEN 逻辑方程1; ELSE 逻辑方程2;
例: when (A==B) then Z=0; else Z=1;
注意
若有多个逻辑方程,可以放在大括号中。 WHEN-THEN-ELSE语句可以嵌套使用。
B RT
B RT
集成电子技术基础教程
➢关键字
关键字又称保留标识符,它代表某种处理功能。
CASE
DEVICE
ELSE
ENABLE
ENDCASE
ENDWITH
EQUATIONS
FLAG
GOTO
IF
IN
ISTYPE
MACRO
MODULE
NODE
PIN
STATE_DIAGRAM TEST_VECTORS THEN
1. 真值表(略) 2. 逻辑式(略) 3. 化简,得:
Z A4 A2 A4 A3 A4 A3 A2 A3 A2 A1 4. 电路图(略)
B RT
集成电子技术基础教程
➢(二)用ABEL—HDL语言描述如下:
MODULE decode
“定义设计模块名为decode
A4,A3,A2,A1 PIN;
B RT
集成电子技术基础教程
➢表达式及等式 表达式是标识符和运算符的组合,表达式中各种运算具有不同的优先级.
➢集合 集合用来表示成组或成批处理的信号或常量,集合中的每一个独立分量称 为该集合的元素。引入集合的目的是为了简化书写,并使可读性更好。集 合有两种定义方法:
枚举法: Din = [ D7,D6,D5,D4,D3,D2,D1,D0 ]; 界限符法: Din = [ D7..D0 ];
例: C,X=.C.,.X.;
ON,OFF=0,1;
➢逻辑方程描述
格式: EQUATIONS
逻辑方程式;
例: equations
S=!A&B # A&!B; Q.clk=CP;
C1=A&B; Q:=Q+1;
注意
组合型输出赋值为“=”,寄存器型输出赋值为“:=”。 在逻辑方程描述中可以使用WHEN-THEN-ELSE语句。
B RT
集成电子技术基础教程
❖ PLD的基本结构
➢输入电路产生输入变量的原变量和反变量 ➢与阵列产生输入变量的与项(乘积项) ➢或阵列对乘积项有选择地进行或运算 ➢输出电路产生输出信号,提供反馈信号
B RT
集成电子技术基础教程
❖ PLD的工作原理
➢在数字电路的设计中,输出总可以用“与或”形式 的逻辑函数来表示,从而用若干与门和或门就可以实 现这个逻辑函数。而PLD器件内部电路的核心就是与阵 列和或阵列,因此可以用来实现任意函数。
集成电子技术基础教程
➢真值表描述
格式:
TRUTH_TABLE(输入标识符集->输出标识符集)
输入值->输出值; TRUTH_TABLE(输入标识符集:>输出标识符集)
输入值:>输出值;
例: truth_table([A,B]->S)
[0,0]->0; [0,1]->1; [1,0]->1; [1,1]->0;
➢ABEL语言描述的仿真波形如下:
B RT
集成电子技术基础教程
二.ABEL语言介绍
❖ ABEL的语法规定
➢合法字符集
a~z (26个小写英文字母) A~Z (26个大写英文字母) 0~9 (10个数字字符) space(空格符) tab(制表符) ~ !@ # $ % ^ & * ( ) - _= + \ | [ ]{ } ; ‘ : “,<>.`/?
➢注释段 注释是对源文件的进一步解释,注释段以双引号开始,以另一个双
引号或换行符结束。
例
MODULE Basic_logic “gives the module a name”
B RT
集成电子技术基础教程
➢数的表示 可用二进制、八进制、十进制和十六进制来表示。
进制数
二进制 八进制 十进制 十六进制
MODULE〈模块名〉 [〈接口说明语句〉] [〈标题语句〉] 〈说明语句〉 {〈布尔方程段〉、〈真值表段〉、〈状态图段〉、 〈熔丝状态段〉、〈异或因子段〉} [〈测试矢量段〉] END [〈模块名〉]
B RT
集成电子技术基础教程
➢模块说明语句 格式: MODULE 模块名 …… END [模块名]
➢常见HDL语言:ABEL-HDL语言、VHDL语言、Verilog语言
➢HDL语言描述方法:逻辑方程、高级语言、真值表、状态图描述等
B RT
集成电子技术基础教程
❖ 逻辑功能的硬件语言描述
例:如一个四位二进制数A4A3A2A1,试设计一个判断电路,当四位二进 制数大于等于2,小于等于10时,输出为“1”,其它为逻辑“0”。 解: ➢(一)用传统设计方法: