10.4 PLD器件的应用
10.4.1 可编程器件的开发系统
10.4.2 ABEL硬件描述语言
一、ABEL源文件的结构
二、ABEL的基本语法
10.4.3 应用举例
10.4 PLD器件的应用
10.4.1 可编程器件的开发系统
10.4.2 ABEL硬件描述语言
一、ABEL源文件的结构
看一个简单的ABEL源程序文件的例子。
module G_3AND
title‘ This is an example of 3 _input AND gate useing a GAL16V8’
“device type;
3 _AND device‘GAL16V8’;
“input pins;
A,B,C pin 2,3,4;
“output pins;
Y pin 18;
“constants;
1,0=H,L;
equations
Y=A&B&C;
test_vectors([A,B,C]->[Y])
[0,0,0]一>[0];
[0,0,1]一>[0];
[0,1,0]一>[0];
[0,1,1]一>[0];
[1,0,0]一>[0];
[1,0,1]一>[0];
[1,1,0]一>[0];
[1,1,1]一>[1];
end
1.标题段
标题语句是可选语句,ABEL在编译时不处理该语句。格式:
module (字符串)
title ‘(字符串)’
2.定义段
(1)器件定义:用来确定所使用的器件。语句格式为:
(器件序号) device‘器件名’;
如:U1 device‘GAL16R8’;它定义了序号为U1 的器件是 GAL16R8。
(2)信号和引脚及引脚类型定义:指定信号名称及其对应的器件引脚,并说明信号的属性,语句格式为:
[!]信号名,[!]信号名,…[!]信号名 pin引脚号,引脚号,…引脚号
[istype‘属 性’];
(3)常量定义:用来定义设计者习惯的常量标识符替代ABEL语言中的一些专用常量标识符,其语句格式为:
标识符,标识符,… = 常量,常量,…;
如: 1,0,X,CP=H,L,.X.,.C.;
(4)数组定义和表达式定义
数组定义就是用一个标识符简记一组数组元素。其语句格式为:
标识符=[元素1,元素2,…];
如: S=[ Q1, Q2, Q3];
(5)注释行:为便于阅读程序而加入的注释。编译程序是不会处理它。
如:“input pin;(输入引脚)
“output pin;(输出引脚)
3.逻辑描述段——编程设计的核心
(1)逻辑方程。其格式为:
equations
方程1 ;
方程2 ;
…
方程n ;
(2)真值表。其格式如下:
truth _ table
([元素1,元素2…]—>[元素1,元素2,…])
[×,×,…]—>[×,×,…]
…
[×。×,…]—>[×,×,…];
其中第一行是关键字,后面没有分号,第二行是表头,用圆括号括起来,后面没有分号。括号内左边是输入信号数组,右边是输出信号数组,两数组之间用赋值号连接。对于组合逻辑,赋值号为“->”,对于触发器输出,赋值号为“:>”。表头下面为真值表,表的每一行作为一条语句,用分号结束。关键字和表头也可以写在同一行,但关键字和表头之间要用空格隔开。在输入和输出数组中的元素可以是变量标识符(如[A,B,C]),也可以是数组标识符(如[A,FF]),而FF=[Q2,Q1,Q0],就是说,数组中可以嵌套数组。
4.测试向量段——测试电路的逻辑功能是否正确
结构如下:
test _ vectors
([元素 1,元素2,…]—>[元素 1,元素 2,…])
[×,×,…]—>[×,×,…];
…
[×,×…]—> [×,×,…];
5.结束段
模块设计结束时,用关键字end表示结束。因此end只与module对应。end后面没有分号。
下面给出了一个ABEL源文件的典型结构。
module(字符串)
title‘(字符串)’
(字符串)device‘(器件名)’;
[!]信号名,[!]信号名,…,[!]信号名 pin 引脚号,引脚号,…,引脚号;
标识符,标识符,… = 常量,常量,…;
equations
方程1;
方程2;
…
方程n;
test _ vectors([输入信号]>[输出信号])
end
二、ABEL的基本语法
l.合法字符与语句
2.标识符与关键字
3,常量和数值
4.运算符
5.数组及其运算
上一篇:步进电机的工作原理
下一篇:可编程逻辑器件及应用
- 热门资源推荐
- 热门放大器推荐
- Allegro MicroSystems 在 2024 年德国慕尼黑电子展上推出先进的磁性和电感式位置感测解决方案
- 左手车钥匙,右手活体检测雷达,UWB上车势在必行!
- 狂飙十年,国产CIS挤上牌桌
- 神盾短刀电池+雷神EM-i超级电混,吉利新能源甩出了两张“王炸”
- 浅谈功能安全之故障(fault),错误(error),失效(failure)
- 智能汽车2.0周期,这几大核心产业链迎来重大机会!
- 美日研发新型电池,宁德时代面临挑战?中国新能源电池产业如何应对?
- Rambus推出业界首款HBM 4控制器IP:背后有哪些技术细节?
- 村田推出高精度汽车用6轴惯性传感器
- 福特获得预充电报警专利 有助于节约成本和应对紧急情况