Advanced Boolean Expression Language

ABEL, acronyme de Advanced Boolean Expression Language, est un langage de programmation informatique, maintenant obsolète, utilisé dans le domaine de l'électronique, pour notamment la programmation des PLD. Il est créé en 1983 par Data I/O Corporation, à Redmond, Washington.
À la suite d'une série d'acquisitions, ABEL appartient depuis la fin des années 1990 à Xilinx[1].
Description
[modifier | modifier le code]Ce langage permet la déclaration de variables (signaux que l'on peut affecter pin des PLD), ainsi que de décrire des équations combinatoires ou séquentielles utilisant les opérateurs logiques usuels. Les fichiers ABEL (d'extension ".abl") se composent de parties "d'entête", "déclaratives" et de parties "exécutables". Une dernière partie, "Vecteurs de tests", est maintenant obsolète[2],[3],[4].
Il y a quatre types de base d'opérateurs : logique, arithmétique, relationnel, et d'affectation.
Opérateur logique | Opération |
---|---|
! | complémentation logique |
& | ET logique |
# | OU logique |
$ | OU exclusif |
!$ | Non OU exclusif |
Opérateur arithmétique | Exemple | Opération |
---|---|---|
- | -A | Négation (Complément à 2) |
- | A - B | Soustraction |
+ | A + B | Addition |
* | A * B | Multiplication |
/ | A / B | Division entière non signée |
% | A % B | Reste de la Division entière non signée |
<< | A << B | Décalage de A vers la gauche de B bits |
>> | A >> B | Décalage de A vers la droite de B bits |
Opérateur relationnel | Exemple | Opération |
---|---|---|
== | A == B | Egalité |
!= | A != B | Différence |
< | A < B | Inférieur |
<= | A <= B | Inférieur ou égale |
> | A > B | Supérieur |
>= | A >= B | Supérieur ou égale |
Opérateur d'affectation | Opération |
---|---|
= | Affectation combinatoire |
:= | Affectation séquentielle (effectuée au prochain coup d'horloge) |
Les nombres peuvent être déclarés sous différentes bases :
Non de la Base | Base | Syntaxe |
Binaire | 2 | ^b |
Octal | 8 | ^o |
Decimal | 10 | ^d (défaut) |
Hexadecimal | 16 | ^h |
Références
[modifier | modifier le code]- ↑ (en) Michael Santarini, « Xilinx acquires key assets as Minc closes doors », sur eetimes.com, (consulté le )
- ↑ Laurent LUBRANO, « Programmation des PLD avec ABEL (W95) »
[PDF], (consulté le )
- ↑ R. Grisel, « Le langage ABEL HDL »
[PDF] (consulté le )
- ↑ « HDL-ABEL Primer », sur www.pldworld.com (consulté le )