L9_CMPR : comparaison de registres
(Traduction du document original anglais)
Dénomination
Nom dans l'éditeur LL984
Nom du bloc fonction
Nom de l'instruction 984 existante
Nom dans d'autres outils et éditeurs comme :
  • Navigateur bibliothèque de types
  • Editeur de données
  • Tables d'animation
  • Résultats de recherche
Description de la fonction
La procédure L9_CMPR compare le profil binaire d'une matrice A au profil binaire d'une matrice B. En un cycle, les deux matrices sont comparées position de bit par position de bit, jusqu'à ce qu'une non-concordance soit détectée ou jusqu'à la fin des matrices (si aucune non-concordance n'est détectée).
L9_CMPR a deux entrées de contrôle. ENABLE déclenche la comparaison. L'état de RESET détermine l'emplacement dans le programme où la comparaison suivante démarre.
Le paramètre de pointeur saisi dans DEST désigne la matrice B, l'autre matrice à comparer. Le premier élément de la matrice B est le paramètre contigu situé juste après le paramètre de pointeur. La valeur stockée dans le paramètre de pointeur s'incrémente avec chaque position de bit comparée dans les deux matrices. Lorsque la position de bit 1 est comparée dans les matrices A et B, le mot de pointeur contient la valeur 1. Dès que la position de bit 2 est comparée dans les matrices, le pointeur s'incrémente à 2 ; et ainsi de suite. Lorsque les sorties signalent une non-concordance, vérifiez le décompte cumulé dans le paramètre de pointeur pour déterminer la position de bit incriminée dans les matrices.
La valeur entière stockée dans LENGTH spécifie la longueur des deux matrices, c'est-à-dire le nombre de paramètres ou de mots de 16 bits dans chaque matrice. (Les matrices A et B ont la même longueur.) La longueur d'une matrice varie entre 1 et 100. En d'autres termes, une longueur de 2 indique que les matrices A et B contiennent 32 bits.
L9_CMPR génère trois sorties possibles (OUT, MIS, INA).
OUT renvoie l'état de ENABLE. La sortie MIS est traversée par un courant lorsqu'une non-concordance est trouvée. L'état de INA indique si le bit non concordant dans la matrice A est un 1 ou un 0.
Représentation
Paramètres
Broche d'entrée
Nom
Type de données
Plage d'adresses
Signification
Haute
ENABLE
ON = déclenche la comparaison
Milieu
RESET
BOOL
OFF = redémarre à la dernière non-concordance
ON = redémarre au début
Noeud
Type de noeud
Nom
Type de données
Plage d'adresses
Signification
Haut
IN
SOURCE
ANY_ARRAY_UINT ou ANY_ARRAY_EBOOL
%M, %I, %IW, %MW
Matrice A déclarée au format ARRAY[1..LENGTH*16] OF EBOOL ou ARRAY[1..LENGTH] OF UINT. LENGTH est la valeur du paramètre LENGTH. Le résultat de LENGTH*16 est affiché sous la forme d'une constante.
Milieu
IN/OUT
DEST
ANY_ARRAY_UINT
%MW
Pointeur de comparaison suivi par la matrice B, réunis dans un tableau au format ARRAY[1..(LENGTH +1)] OF UINT.
Le pointeur de comparaison détermine la position de bit dans les matrices A/B. Le bit 1 est le MSB (16#8000) dans le premier mot des matrices.
Bas
IN
LENGTH
UINT
1...100
Longueur de la matrice. Plage valide : 1 ... 100
Broche de sortie
Nom
Type de données
Plage d'adresses
Signification
Haute
OUT
BOOL
Renvoie l'état de ENABLE.
Milieu
MIS
BOOL
ON = non-concordance détectée
Basse
INA
BOOL
ON = le bit non concordant dans la matrice A est un 1
OFF = le bit non concordant dans la matrice A est un 0