SYSTEMES DIGITAUX
SYSTEMES DIGITAUX
SYSTEMES DIGITAUX
ISPT-KIN
Monkila Nkiwa Barthelemy
CHAPITRE I : INTRODUCTION
La technique digitale (ou numérique, terme que nous utiliserons de préférence car il
est désormais normalisé) est celle des circuits microélectroniques, faisant appel au
langage binaire. Son évolution est étroitement liée aux recherches scientifiques
débouchant sur des technologies nouvelles.
On trouve des éléments de technique numérique dans les secteurs très différents
tels que :
L’aéronautique.
Grâce à cette algèbre, l'organisation de ces systèmes est telle que ces derniers
prennent des décisions élémentaires qui s'apparentent à celle du cerveau humain.
Avec l'automatisme, les dispositifs logiques, qui à l'origine, étaient tous mécaniques,
puis électromécaniques, furent remplacés par des systèmes électroniques et la
technologie numérique se perfectionna : les circuits devenant plus petits, plus
performants donc capables d'effectuer des opérations de plus en plus complexes.
Ces circuits furent appelés «digitaux» du terme anglais «digit» qui signifie chiffre.
Nous les désignerons sous le vocable : circuits numériques.
Le fluidistor utilise le principe des déviations de jet, combiné à l'effet de parois (effet
Coanda utilisé dans certains moteurs aéronautiques).
Tous les développements technologiques de cette technique sont orientés vers une
plus grande intégration des circuits, permettant ainsi une diffusion plus large.
Afin de mieux comprendre l'évolution de ces systèmes, il n'est donc pas hors de
propos de faire un raccourci historique de l'évolution de l'électronique depuis les
origines de l'électricité jusqu'à nos jours puisque celle-ci est largement utilisée.
L'évolution de la technique numérique appliquée à l'informatique sera ensuite
présentée. Des exemples, sur la généralisation de cette technique et de l'emploi du
microprocesseur, seront ensuite donnés.
HISTORIQUE
1. - L'ÉLECTRICITÉ
700 ans avant J.C., Thalès note que l'ambre jaune a la propriété d'attirer des corps
légers par frottements sur la peau d'un chat.
1.1. - L'ÉLECTROSTATIQUE
Au XVème siècle, l'anglais Gilbert retrouve les propriétés de l'ambre jaune dans les
substances isolantes : la résine et le verre.
Les lois de l'électrostatique sont établies par Coulomb puis Faraday en 1785.
1.2. - L'ÉLECTROCINÉTIQUE
1.3. - L'ÉLECTROMAGNÉTISME
En 1880, Oersted établit les premières lois liant les phénomènes électromagnétiques
et électriques.
Laplace et Ampère dictent les lois régissant l'action réciproque des champs
magnétiques sur les courants.
5
L'ÉLECTRONIQUE
2. - L'ÉLECTRONIQUE
Son évolution fut plus rapide encore que celle de l'électricité, et ce, principalement
depuis la fin de la seconde guerre mondiale.
1891 William Shockley, des laboratoires Bell, baptise le plus petit corpuscule de
charge négative : électron
1928 Lilienfeld étudie l'action d'un champ électrostatique sur un courant électrique
1930 Holst, Van Geel, Pohl, Hilsch, Voigt, Koch étudient la théorie du transistor à
pointe
1958 Premier circuit intégré fabriqué par Kilby chez Texas Instruments
Deux mille ans avant J.C., les Chinois connaissaient déjà la numération binaire.
fin du XIXème siècle pour que soient fabriquées des calculatrices sur le modèle de
celle de Leibniz ; elles seront utilisées jusqu'à la deuxième guerre mondiale.
Pourtant c'est en 1883 que l'Anglais Babbage élabore le projet d'un ordinateur à
usage général, dont la structure ressemble étroitement à celle d'un ordinateur
moderne. Trop en avance sur les possibilités technologiques de son époque, cette
machine n'a pu concrétiser les rêves de son auteur.
Le raisonnement logique fut étudié par le Grec Aristote 400 ans avant J.C., puis par
Leibniz au XVIIème siècle. Au XVIIIème siècle, le Suisse Euler donna une illustration
graphique de ce raisonnement.
Au XIXème siècle, De Morgan établit le théorème qui porte son nom et, constitue la
base de toutes les simplifications des schémas logiques. L'algèbre de Boole n'est
alors qu'une curiosité mathématique.
On peut citer :
Les calculs des trajectoires des projectiles deviennent de plus en plus compliqués,
au fur et à mesure que leur vitesse augmente. La guerre aérienne nécessite une
grande rapidité pour effectuer ces calculs ; soit pour diriger les tirs d'artillerie, soit
pour larguer les bombes à partir d'avions.
Les efforts portent sur tout ce qui est capable d'améliorer la vitesse de calcul.
Le plus puissant des ordinateurs à relais, le modèle III de Bell, utilise neuf mille
relais. Il pèse 10 tonnes, effectue une multiplication en 1 seconde et une division en
2,2 secondes.
L'ENIAC a coûté un demi million de dollars, et le prix des ordinateurs suivants sera
plus élevé encore.
Vers 1950, les ordinateurs évoluent et l'on commence à comparer leur mécanisme à
celui du cerveau humain.
Les méthodes de codage et de décodage proposées font émerger l'une des plus
importantes d'entre elles : le procédé MIC (Modulation par Impulsions Codées) ou
PCM (Pulse Code Modulation), déposé par Alan Reeves en 1938.
Les années 60 sont celles de l'aventure spatiale ainsi que du Missile Balistique. A
cette époque, la vitesse de calcul des systèmes étant suffisante, l'ennemi numéro un
est le poids et les dimensions des systèmes.
Grâce aux microcircuits, l'ordinateur devient mini ordinateur, puis, avec l'emploi de
circuits intégrés comportant encore un nombre plus élevé de transistors, micro
ordinateur (plus de 10 000 transistors dans un même boîtier).
4 . LE MICROPROCESSEUR
Le premier microprocesseur fut fabriqué par INTEL en 1971, c'était le modèle 4 004.
En 1972, INTEL sort son modèle 8 008 : le succès est total.
il trie le courrier
A la maison :
il permet une utilisation plus souple des machines à laver qui peuvent être
programmées
Au laboratoire : il réalise les calculs les plus complexes, avec une vitesse
insoupçonnable, apportant ainsi une aide importante à la recherche.
Dans les télécommunications, il gère les centraux téléphoniques et les liaisons par
satellites. Dans l'aéronautique, il calcule : vent, marées, courant, altitudes et angles
d'approche à l'atterrissage.
22
1.1. - ENSEMBLES
Exemple :
I = A.B
I égal A ET B
On dira que si par exemple A est l'ensemble des mammifères et B l'ensemble des
végétaux, que A et B sont deux ensembles disjoints.
R=A+B
En effet, si par exemple R est l'ensemble des êtres vivants, A l'ensemble des
végétaux, et B l'ensemble des animaux, on peut dire que les êtres vivants R sont des
végétaux A OU des animaux B.
Nous pouvons dire, en effet, que l'ensemble des êtres qui sont à la fois des animaux
ET des mammifères est l'ensemble des mammifères tout simplement, soit A.
25
A n F = A ou A.F = A
Ceci revient à dire par exemple qu'un être, appartenant à l'ensemble des
mammifères A, ou appartenant à l'ensemble des animaux F, appartient de toute
façon à l'ensemble des animaux F.
26
Si E par exemple est l'ensemble des animaux, et A l'ensemble des carnivores (ou
animaux mangeant de la viande), on peut dire que les animaux végétariens (ou ne
mangeant pas de viande) appartiennent à l'ensemble .
Supposons que l'ensemble A (p) soit l'ensemble des éléments ayant la propriété p
inclus dans un ensemble ℜ.
A+ =ℜ =1
On appelle chiffre binaire un chiffre qui ne peut avoir que deux valeurs 1 ou 0.
Nous pouvons dire qu'à l'intérieur du référentiel il existe neuf zones numérotées de
0 à 14 telles que a, b, c, d prennent les valeurs de la figure 10.
28
Nous pouvons voir que toutes les combinaisons de a, b, c, d, n'existent pas, telle
qu'est dessinée la figure 9.
Nous verrons par la suite que certaines variables binaires (termes définis au chapitre
suivant) ne peuvent prendre dans un schéma électrique, par exemple, toutes les
valeurs existantes par suite d'impossibilités technologiques.
2. - ALGÈBRE LOGIQUE
On dira qu'une salade est verte et qu'une tomate est rouge. Mais on ne pourra jamais
additionner une salade verte et une tomate rouge.
Par contre, on peut dire sans se tromper qu'il y a deux végétaux (dont les couleurs
sont différentes).
Si nous considérons maintenant une bicyclette rouge et une automobile rouge, nous
pouvons dire qu'elles sont de couleur rouge.
Nous voyons donc que si des opérations peuvent être réalisées en tenant compte
d'états (ici des couleurs) ce ne sont pas des opérations arithmétiques, ou algébriques
29
traditionnelles, car le résultat n'est pas caractérisé par un nombre mais par un état
(ici une couleur).
Dans les exemples précédents ont été choisies deux couleurs caractéristiques
différentes, le rouge et le vert : notre logique de raisonnement est donc une logique à
deux états.
C'est la même chose pour un contact électrique, pour lequel il n'existe que deux
positions (ou deux états) : ouvert ou fermé.
Un volet dans une conduite pneumatique est ouvert ou fermé, il en sera de même
pour une vanne hydraulique.
Une proposition telle que Paul est à l'école ne peut avoir que deux réponses ou états
logiques :
Dans l'exemple choisi précédemment, nous pouvons dire : Paul est-il à l'école ? OUI
ou NON. Rien ne vous empêche d'affecter la réponse OUI de la valeur 1 et la
réponse NON de la valeur 0.
Nous pouvons dire que la variable «Paul est à l'école» a deux états : OUI état 1,
NON état 0 (figure 11).
Lorsque Paul n'est pas à l'école les jours font-ils 24 heures ? OUI.
30
Nous pouvons dire que dans notre histoire, la durée du jour est une constante.
Lorsque deux variables Booléennes, a et b, sont liées par une relation, telle qu'à une
valeur de a correspond une valeur de b, on dit que b est une fonction de a et on écrit
:
b = f (a)
Exemple :
Ici la variable «promenade» est fonction de la variable «beau temps». En effet, s'il
pleut je n'irai pas me promener, mais s'il fait beau j'irai.
Une fonction sera dite de deux variables lorsque la variable c, par exemple, dépend
à la fois de la valeur d'une variable a, ainsi que d'une variable b. On dit que c est
fonction de a et de b et on écrit c = f (a,b).
Exemple :
d = F [ f (a,b) ]
Exemple :
Supposons maintenant, que lorsqu'il fait beau, Paul va jouer au ballon et que lorsqu'il
pleut il va à l'école.
Nous voyons que la variable «Paul joue au ballon» est à 1 lorsque la variable «beau
temps» est à 1. Elle est à 0 lorsque la variable «beau temps» est 0.
On peut écrire Paul joue au ballon = f (beau temps) et comme la variable «Paul
joue au ballon» prend toujours la même valeur que la variable temps, on dit que la
fonction f est une fonction OUI.
On écrit a = b.
32
On dit que deux variables a et b sont égales, lorsqu'elles sont représentées par
les mêmes points du référentiel c'est-à-dire si les contours qui les définissent
sont confondus.
Sur la figure 14, nous voyons un contact travail, c'est-à-dire qui se ferme au travail
(lorsqu'on l'actionne). Il est donc bien ouvert au repos comme sur la figure 14.
La lampe est éteinte (état 0) lorsque l'interrupteur a est ouvert (état 0).
33
On définit par état «0» ou état «1» l'état électrique d'un élément.
Jusqu'ici, nous avons étudié des propositions logiques telles que nous en faisons
chaque fois que nous parlons ; c'est-à-dire des phrases.
Maintenant, dans les exemples pratiques réalisés avec des contacts, et illustrant
chaque fonction, nous faisons correspondre à un état physique un état logique.
Dans l'exemple de la figure 14, nous pouvons appeler «a» variable d'entrée et «S»
variable de sortie ou récepteur. En règle générale, un récepteur sera un moteur, une
lampe ou tout organe commandé. Une variable d'entrée sera un contact ou un
transducteur ou capteur pouvant se résumer à un contact.
C'est pourquoi, les tables de vérités se résument aux variables d'entrée et de sortie
affectées de l'état logique correspondant. Pour la figure 14, nous obtenons la table
de vérité (figure 16).
34
Nous utiliserons des lettres minuscules pour les variables d'entrée et majuscules
pour les variables de sortie.
Nous voyons que la variable «Paul est à l'école» est à 0 lorsque la variable «beau
temps» est à 1 et vice versa. Nous pouvons donc dire que la fonction f qui lie la
variable «Paul est à l'école» à la variable «beau temps» est la fonction inversion que
l'on appelle aussi complément.
Comme l'ensemble ℜ est l'ensemble des bits (on appelle bit un chiffre binaire de
l'anglais «binary digit») à 1 ou 0, on peut dire que si la variable a ∈ A et si la variable
b ∈ B.
si a = 0 ---------> b = =1
si a = 1 ---------> b = =0
36
Les contacts étant toujours représentés au repos, (tombant par leur propre poids), le
contact représenté figure 19 est toujours fermé au repos : on l'appellera contact
repos.
On appelle en logique positive la variable «contact repos» car cette variable est
un contact fermé c'est-à-dire à l'état logique 1 lorsqu'elle n'est pas actionnée c'est-à-
dire lorsqu'elle n'est pas active et on dira alors que = 1, la lampe S sera alors
allumée et son état logique sera 1.
A l'inverse, lorsque l'on appuie sur le contact va s'ouvrir d'où l'état logique 0 : dans
ce cas = 0 ; la lampe S sera alors éteinte et son état logique sera 0.
On peut donc écrire S = que l'on peut résumer par la table de vérité (figure 20).
On définit par état «0» ou état «1» l'état électrique d'un élément (figure 21).
37
Nous vous conseillons avant d'aller plus loin de comparer cette figure avec la
figure 15 afin de bien comprendre la différence de notation entre contact travail
et contact repos pour lequel on appelle la variable .
Supposons maintenant que l'on demande : Jacques est-il à l'école ? OUI ou NON. Il
y a de nouveau deux réponses possibles.
Nous voyons que lorsque «Paul et Jacques sont à l'école» il faut «Jacques est à
l'école» ET «Paul est à l'école.»
La logique positive fait correspondre à l'état physique contact fermé l'état logique 1,
et à l'état physique contact ouvert l'état logique 0. L'interrupteur est toujours
représenté au repos tombant de son propre poids : ce qui n'est pas nouveau.
Nous avons dit dans le chapitre traitant de l'information dans les systèmes
numériques que le phénomène physique considéré est souvent une tension comme
celle du signal numérique que nous avons décrit avec deux niveaux haut et bas
bien déterminés.
Nous avons adopté les termes anglo-saxons High (H) qui signifie haut et Low (L) qui
signifie bas car ils sont très souvent utilisés par de grands constructeurs de
composants tel Texas ou dans certaines littératures. Nous utiliserons cette notation
dans certains exemples afin de vous habituer dès maintenant à ces deux niveaux
haut et bas.
Pour que la lampe S soit allumée, il faut a et b fermés c'est-à-dire au niveau haut
d'où les tableaux de la figure 26.
Lorsque l'on appuie sur le bouton x, la variable passe à 1 mais le courant ne pourra
jamais passer et S sera toujours éteinte d'où la table de vérité de la figure 27.
Lorsque l'on appuie sur le bouton x, la variable x agit seule sur le courant, en effet, le
contact toujours à 1 n'a pas d'influence car il laisse toujours passer le courant d'où la
table de vérité de la figure 28.
Lorsque l'on appuie sur les deux boutons x, la variable est à 1 et les deux contacts
sont fermés de telle sorte que la lampe S s'allume. S prend la valeur de x d'où la
table de vérité de la figure 29.
Supposons maintenant que deux enfants du village, Paul et Jacques vont à l'école
de la ville voisine. Quand y aura-t-il au moins un enfant du village dans le bus de
ramassage scolaire qui les y conduit ?
Nous voyons qu'il y a un enfant du village dans le bus lorsque Paul OU Jacques est
dans le bus, mais pas seulement lorsque l'un ou l'autre est dedans, mais aussi
lorsqu'ils y sont tous les deux.
C'est pourquoi nous disons que la fonction S = f (a,b) est un OU INCLUSIF (car elle
inclue le cas où a et b sont présents en même temps).
Exemple :
Nous avons vu précédemment ce qui est fondamental, que les valeurs prises en
compte sont des états et non des nombres.
Nous voyons qu'il suffira de fermer a OU b pour que la lampe S s'allume (ou les deux
à la fois).
Pour cela, nous allons donner une illustration de cette association logique au moyen
de contacts électriques (convention logique positive).
Lorsque l'on appuie sur le bouton x, la variable x passe à 1, mais ceci n'a pas d'effet
car la lampe S reste allumée en permanence d'où la table de vérité de la figure 36.
Les deux contacts x sont liés mécaniquement, ils se ferment simultanément, nous
pourrions remplacer la figure 37 par la figure 38 : les tableaux de vérité sont
identiques pour S par rapport à x. Un des contacts x peut être supprimé.
Lorsque le courant ne passe pas par x il passe par et la lampe S est toujours
alimentée, d'où la table de vérité de la figure 39.
45
1°) Commutativité
On peut écrire que a + b = b + a ce qui est vérifié dans l'exemple du tableau (figure
40) : 0 + 1 = 1 et 1 + 0 = 1 mais aussi a . b = b . a ce qui se vérifie dans le même
tableau (figure 40) : en effet 0 . 1 = 0 et 1 . 0 = 0.
2°) Idempotence
a (b + c) = ab + ac
Cette propriété est appelée distributivité du produit logique par rapport à la somme
logique ; elle est identique à la distributivité de la multiplication par rapport à l'addition
dans l'algèbre traditionnelle.
46
Construisons maintenant figure 43, les ensembles ab et bc ainsi que leur réunion S
= ab + ac.
47
Nous voyons que la surface S est la même dans les deux cas.
4.a) Absorption
Considérons a + ab que l'on peut écrire a (1 + b), or nous savons que b + 1 = 1, d'où
l'on déduit que a + ab = a (1 + b) = a . 1 = a.
Considérons S = a + b.
S=a+ b = (a + ab) + b = a + ab + b
d'où S = a + b (a + )
or a + =1
d'où S = a + b
a+ b=a+b
Considérons S = a + bc
a = a + ab ; a = a + ac et comme a + a = a
d'où S = a + ab + ac + bc
Comme a = a . a
S =aa + ac + ab + bc
S = a (a + c) + b (a + c)
d'où S = (a + b) (a + c)
a + bc = (a + b) (a + c)
Elle pourra être matérialisée par le symbole du buffer (figure 47). Nous parlerons plus
tard du buffer.
Le symbole de la fonction NON est caractérisé par l'adjonction d'une bulle qui montre
que la sortie de l'opérateur logique est inversée.
51
Il est à noter que ces symboles sont ceux d'opérateurs logiques contenus dans les
circuits intégrés, par exemple, et bien qu'ils nécessitent une alimentation électrique,
celle-ci n'est pas représentée.
3 FONCTIONS À N VARIABLES
Nous voyons dans le tableau (figure 51) qu'il peut exister pour une variable 4
fonctions distinctes.
On appelle f14 ou NAND (de l'anglais NO AND qui signifie NON ET).
f6 = a ⊕ b
a ≡ b ou f9 = a b
53
• f2 = a
• f4 = b
• f11 = a +
• f13 = + b
3.3.1. - MONÔME
3.3.2. - POLYNÔME
On appelle monômes adjacents les monômes qui ne diffèrent les uns des autres que
par une seule variable. Dans une somme de deux monômes adjacents, la variable
qui diffère s'élimine.
Exemple :
Exemple N° 1 :
54
On peut écrire :
Puisque nous savons que nous pouvons rajouter xyz déjà présent autant de fois que
nous voulons sans changer la valeur de f.
Exemple N° 2 :
Cette méthode fonctionne très bien de 2 à 5 variables, elle devient complexe au-
delà.
a) - Le tableau
Le tableau de Karnaugh est une forme particulière de la table de vérité que nous
avons utilisée jusqu'ici (table de vérité figure 53) :
Une table de vérité comprend autant de colonnes que de variables d'entrée. Elle
comprend une ou plusieurs autres colonnes, celles de la ou des variables de sortie.
56
Toutes les combinaisons de valeurs que peuvent prendre les variables d'entrée sont
explorées en comptant dans un ordre binaire. La valeur de la ou des variables de
sortie est indiquée en face de la combinaison correspondante.
L'ordre des variables en abscisse ou en ordonnée n'a pas d'importance, seul est très
important le fait que lorsque l'on passe d'une case à la case adjacente, une seule
variable change.
Exemple :
Nous voyons facilement que l'on a mis la valeur binaire que peut prendre la sortie à
l'intérieur de la case pour laquelle les variables ont la valeur portée en abscisse et en
ordonnée.
Alors que pour deux variables, le tableau était carré, il est maintenant rectangulaire ;
en effet, nous avons représenté les variables bc sur une même colonne.
24 = 16 cases
Nous voyons à nouveau, ce qui est absolument indispensable, que grâce au code
Gray, en passant d'une case à l'autre horizontalement ou verticalement une seule
variable change.
La table de Karnaugh (figure 59) donne, elle, pour chaque case les valeurs que
prennent les variables en abscisse et en ordonnée.
On peut voir facilement que deux monômes adjacents vont se trouver dans deux
cases voisines puisque l'on a dit au départ que les tableaux de Karnaugh étaient faits
de telle sorte qu'on ne change qu'une variable lorsqu'on change de case.
Les regroupements (ici de 2 termes) sont figurés en rouge, on notera que les cases
ab et abc sont bien les cases représentant des monômes adjacents. On peut
comparer la table représentée à la surface d'un tore si l'on essaie de rapprocher
toutes les cases des monômes adjacents l'une de l'autre ; ainsi, si les cases des
quatre coins du tableau étaient à 1, on pourrait constituer un groupement de 4 cases
avec elles.
S=a +c
• Simplification algébrique
S = abcd + abd + bc
S = abd (c + 1) + bc
S = abd + bc
S = abd + bc
d) - Cas de 5 variables
Nous voyons qu'en superposant les deux tableaux (figure 66), on peut obtenir une
case donnée X, cinq cases adjacentes.
Groupement rouge : les quatre coins dans un même plan (tableau pour e = 0)
NOTE :
Nous voyons dans cet exemple que le groupement bleu semble être superflu. Il est
nécessaire lorsque l'on utilise une technologie électrique ou électronique pour des
raisons de bon fonctionnement qu'il y ait regroupement entre les groupements.
e) - Cas de 6 variables
4.1. - Supposons que lorsque le réveil sonne le matin, on veuille savoir comment
s'habiller avant même d'avoir ouvert les volets.
Nous disposons pour cela d'un dispositif adéquat placé à l'extérieur et comprenant
notamment un thermomètre et un baromètre et qui nous donne les indications
suivantes : temps chaud, temps doux, temps froid, temps pluvieux.
On décide que dans tous les cas, on mettra un pantalon, des chaussures et une
chemise.
Il reste maintenant à déterminer s'il est nécessaire de mettre en plus une veste, un
manteau, un imperméable ou de prendre un parapluie.
temps chaud : c
temps doux : d
temps froid : f
temps pluvieux : p
veste : V
manteau : M
imperméable : I
parapluie : P
On admettra que lorsqu'il fait doux on met une veste, quand il fait froid on met une
veste et un manteau et que lorsqu'il fait chaud, on ne met rien. Quand il pleut, on met
un imperméable sur la veste sinon on prend un parapluie lorsque l'on a déjà un
manteau ou lorsqu'il fait chaud.
Nous avons réservé une colonne qui correspond aux impossibilités. En effet, il ne
peut faire chaud et froid par exemple.
Établissons les tableaux de Karnaugh que nous tirerons de la table de vérité et ce,
pour chaque variable de sortie.
Il est facile de comprendre que la lampe (prendre ta veste) sera également allumée
pour les interrupteurs position , c'est-à-dire temps doux.
Dans la table de vérité (figure 70), nous avons prévu une colonne dénommée
«impossibilités» ou pannes du système.
On peut, à partir de ces cas, allumer une lampe qui indiquera que le système ne
fonctionne pas correctement.
73
Le schéma général sera constitué par l'assemblage des autres schémas de telle
sorte que le nombre d'opérateurs logiques soit minimum.
A cet effet, on examine les schémas partiels et sachant par exemple que est utilisé
dans les schémas partiels de V et de P on peut ainsi n'utiliser qu'un seul inverseur
pour produire le signal à partir de la variable d. On réussit ainsi avec un peu de
bon sens à rassembler l'ensemble en un seul schéma.
Dans la prochaine théorie, nous examinerons d'une part de nouvelles méthodes pour
transformer les expressions Booléennes et d'autre part des circuits logiques dérivés
des trois circuits fondamentaux ET, OU, NON, vus dans cette théorie.
Les circuits examinés jusqu'à présent sont la base de tous les montages dits
«combinatoires» c'est-à-dire dont l'état (1 ou 0) des sorties ne dépend que de l'état
des entrées au moment où nous examinons le montage.
79
Dans cette leçon, nous allons terminer l'examen des fonctions logiques de base
telles que les fonctions NAND, NOR, OU EXCLUSIF... et résoudre quelques
problèmes à l'aide des théorèmes de DE MORGAN et de la méthode de QUINE
MAC CLUSKEY.
Le circuit NAND bien que dérivé du circuit ET (AND) est plus utilisé et plus courant
que celui-ci. En effet à l'origine, il était technologique-ment plus facile à réaliser et
moins coûteux, ce qui explique qu'il a été le circuit le plus fréquemment utilisé.
Toutefois, ceci n'est plus tout à fait vrai car les progrès technologies ont vu les prix et
les performances de l'ensemble des circuits évoluer très rapidement.
Un circuit NAND est obtenu en mettant en série une porte ET et un inverseur comme
représenté figure 2.
Étudions la relation existant entre a, b et S ; pour cela partons d'un circuit ET suivi
d'un circuit inverseur.
On peut facilement en déduire la table de vérité du circuit NAND qui est représentée
figure 5 :
La sortie d'un circuit NAND n'est à l'état logique 0 que lorsque les deux entrées sont
à l'état 1. Il suffit qu'une seule des entrées soit à 1 pour que la sortie devienne 1.
La figure 7 représente le circuit électrique utilisé pour réaliser une fonction NAND à
deux variables d'entrées a et b, S étant la sortie.
Les contacts utilisés a et b sont des contacts travail, c'est-à-dire ouverts au repos. Si
nous nous reportons à la théorie 2, nous voyons que l'ensemble représenté en rouge
est un ET réalisé avec des contacts de telle sorte que a . b = C.
82
Or, C à l'intérieur de l'ensemble tramé en vert, est un relais dont la bobine est
matérialisée par le signe . Il commande le contact qui est un contact repos
de telle sorte que l'on peut écrire le tableau de fonctionnement représenté figure 8.
Nous voyons dans cette table de vérité que la sortie est toujours à 1 sauf pour les
deux entrées à 1 ou S = 0.
Comme pour la porte ET qui devient après adjonction d'un inverseur une porte
NAND, avec un circuit OU suivi d'un inverseur à sa sortie on obtient un circuit NOR
dont le symbole graphique est celui de la figure 10-a :
83
Étudions la relation existante entre a, b et S, pour cela partons d'un circuit OU suivi
d'un circuit inverseur.
La table de vérité du circuit NOR peut alors être facilement déduite (figure 13) :
La sortie d'un circuit NOR n'est à l'état logique 1 que lorsque les deux entrées sont à
0.
La figure 15 représente le circuit électrique utilisé pour réaliser une fonction NOR.
85
Les contacts utilisés a et b sont des contacts travail, c'est-à-dire ouverts au repos. Si
nous nous reportons à la théorie 2, nous voyons que l'ensemble représenté en rouge
est un OU réalisé avec des contacts de telle sorte que a + b = C.
Or, C à l'intérieur de l'ensemble hachuré vert est un relais dont la bobine est
matérialisée par le signe . Il commande le contact qui est un contact repos
de telle sorte que l'on peut écrire le tableau de fonctionnement suivant (figure 16) :
Nous voyons dans cette table de vérité que la sortie est toujours à 0 sauf pour les
deux entrées à 0 ou S = 1.
La fonction OU exclusif est plus complexe que l'ensemble des fonctions que nous
venons d'analyser.
Dans le cas du OU exclusif, il n'en sera pas de même. En effet, pour S = 1, il faudra
que a OU b soit à 1 exclusivement, c'est-à-dire que S ne sera pas à 1 lorsque a et b
sont simultanément à 1. Le OU exclusif comme son nom l'indique exclut cette
possibilité.
Comme nous l'avons dit au début de ce chapitre, la fonction OU exclusif est plus
complexe que les fonctions NAND ou NOR.
Nous voyons que la surface S1, représentée par l'ensemble hachuré verticalement
en noir, est l'intersection de et de A.
Nous pouvons donc écrire S1 = a car si A et B sont les ensembles pour lesquels a
et b sont respectivement à 1, S1 sera l'ensemble pour lequel a = 1 et b = 0.
Nous pouvons facilement en suivant le même raisonnement voir sur la figure 23 que
S2 = b puisque S2 est l'intersection de et de B.
89
On en déduit :
• groupement rouge S = a ,
• groupement vert S = b,
S= b+a
Sur les figures 26 a, b, c et d sont reportées les quatre combinaisons pouvant être
prises par deux entrées a et b.
91
Sur chacune de ces figures sont reportées les différents niveaux logiques en entrée
et en sortie de chaque porte.
Nous pouvons récapituler les quatre cas de la figure 26 dans le tableau de Karnaugh
de la figure 27. Le tableau obtenu correspond bien en tous points au tableau de la
fonction OU exclusif.
92
Ce dernier exercice a pu vous paraître inutile, en réalité il n'en est rien car il est
nécessaire de se sentir parfaitement à l'aise dans les tableaux de Karnaugh, les
tables de vérités et les schémas afin de pouvoir faire la transformation dans un sens
ou dans l'autre sans erreur et éventuellement lors de l'élaboration d'un circuit
complexe de se vérifier en utilisant chaque fois une méthode différente.
Le circuit NOR exclusif dont le symbole est représenté figure 28 s'obtient d'une
manière identique aux NAND et aux NOR mais en utilisant un circuit OU exclusif
suivi d'un inverseur (figure 29).
Vous pouvez utiliser vous-même le processus suivi pour les portes NAND et NOR
afin de retrouver la table de vérité. Nous nous bornerons à indiquer cette table, figure
30, pour un NOR exclusif à deux entrées.
93
Dans le cas du circuit NOR exclusif, on peut également vérifier l'égalité entre deux
signaux a et b. En effet, S est à 1 pour a et b simultanément à 1, mais aussi pour a
et b simultanément à 0.
La fonction identité logique n'existe pas en tant que telle sous forme de circuits
intégrés. Toutefois, elle peut rendre des services dans certains automatisme pour
créer des sécurités.
Supposons, par exemple, que d'une part une variable a indique le sens de rotation
d'un moteur (a = 1 "marche avant", a = 0 "marche arrière") et, que d'autre part
pour des raisons de sécurité on doit vérifier qu'un outil est bien positionné sur la
machine suivant le sens de rotation choisi (b = 1 "taille avant", b = 0 "taille
arrière").
On voit immédiatement que par raison de sécurité, il faut que la mise en route soit
autorisée uniquement pour a = b = 1 OU pour a = b = 0. La matérialisation de
l'autorisation de mise en route sera réalisée par exemple au moyen d'une lampe.
S = ab +
S=a b
La figure 31 donne le schéma électrique de cette identité logique réalisée avec des
contacts.
94
S = ab +
La réalisation d'un tel schéma est encore plus simple, on établit ab et au moyen
de deux portes ET (respectivement portes n°1 et n°2), et étant obtenus
auparavant par deux inverseurs.
Le circuit OU (porte n°3) réalise quant à lui l'opération finale pour obtenir :
S = ab +
2. - LOGIQUE NÉGATIVE
Jusqu'ici, nous avons adopté une convention appelée convention logique positive
; c'est la plus utilisée et nous pensons qu'il vaut mieux pour les utilisations courantes
s'en tenir à cette convention.
95
PRINCIPE DE DUALITÉ
Considérons la table de fonctionnement d'une porte ET telle qu'elle est donnée par le
constructeur (figure 35) dans le cas d'une porte ET électronique :
97
Cette table de vérité est la table de vérité bien connue telle que nous l'avons vue
dans la théorie 2.
Remettons maintenant cette table de vérité en ordre de telle sorte que les variables
d'entrée croissent suivant un ordre binaire (figure 38).
Si l'on établit les tables de vérité de tous les circuits logiques dans l'un et l'autre type
de logique, on peut écrire le tableau suivant (figure 39).
Ces correspondances étaient très utilisées pour économiser des boîtiers dans les
circuits numériques, mais la baisse des prix des circuits a fait pratiquement
abandonner ce système qui est source d'erreurs.
Sur les catalogues de circuits intégrés, la fonction indiquée est celle que celui-ci
aurait en logique positive. Un circuit ET du commerce fonctionne donc comme un ET
en logique positive et comme un OU en logique négative.
99
Dans toute la suite de cette théorie, il ne sera plus question que de convention
logique positive, c'est-à-dire la convention que nous avons toujours utilisée. Le
chapitre 2 de cette théorie peut donc être considéré comme une parenthèse. Vous
vous reporterez à ce paragraphe uniquement au cas peu probable où vous
rencontreriez un système ancien utilisant la convention logique négative.
3. - THÉORÈMES DE DE MORGAN
= .
L'inverse d'une somme logique de deux variables est égal au produit logique
des inverses de ces deux variables.
100
Nous voyons par ailleurs que cette même surface hachurée en noir est l'union de
et soit , en effet cette zone hachurée noire recouvre toutes les hachures
vertes et toutes les hachures rouges .
= +
Dans le chapitre précédent, nous avons vu pour l'opérateur NAND, dont l'équation
était S = , le circuit électrique suivant (figure 42).
Nous retrouvons bien le tableau de Karnaugh d'un circuit NAND (figure 43).
Dans le chapitre précédent, nous avons vu l'opérateur NOR dont l'équation était S =
compte tenu du théorème de De Morgan nous pouvons écrire :
S= = .
Nous avons étudié différentes fonctions fondamentales qui sont disponibles sous
forme de circuits intégrés.
Dans chaque boîtier, il y a plusieurs fonctions du même type. C'est ainsi que l'on
rencontre des circuits intégrés contenant quatre NAND à deux entrées.
Le problème se complique lorsque l'on veut faire par exemple un OU avec des
NAND. On a alors recours a une simplification au moyen du théorème de De
Morgan.
Pour vérifier en pratique que les deux montages précédents sont bien équivalents, il
suffit d'appliquer des niveaux logiques en a et en b au second montage pour voir si
l'on peut écrire une table de vérité analogue à celle d'un circuit NAND. Dans ce cas,
les deux montages seront bien équivalents.
Exemple :
Nous voyons maintenant que chaque circuit NAND est suivi d'un inverseur, ce qui
revient à remplacer le NAND et l'inverseur par un ET. En effet, on peut dire que =
y (deux inversions successives s'annulent).
Le circuit n'est autre que celui d'un OU exclusif déjà présenté figure 25.
Dès à présent nous pouvons voir que tout circuit logique peut être réalisé avec
uniquement des circuits d'un même type, des NAND par exemple.
Bien que peu employée, nous devons quand même citer une méthode différente de
celle des tableaux de Karnaugh pour la simplification des fonctions de plusieurs
variables. Il s'agit d'une méthode imaginée par le mathématicien américain W. V.
QUINE et remodelée par son compatriote le Docteur Edwards J. Mac CLUSKEY
Junior dans une thèse de doctorat qu'il présenta au M. I. T. (Massachusetts Institute
of Technology) en juin 1956.
108
Nous pouvons constater que la fonction f est «vraie» (égale à 1) pour onze
combinaisons des variables a, b, c et d.
Exemple :
Le premier ensemble est donc formé par la combinaison 0 dont la forme binaire 0000
comporte quatre zéros. Le second ensemble regroupe les combinaisons comportant
trois zéros ... jusqu'au cinquième qui est formé de la combinaison 15 dont la forme
binaire 1111 ne comporte pas de zéro du tout.
110
Quand une variable s'élimine dans une telle association, on signale ce fait en
remplaçant cette variable par une croix (ou tout autre signe à votre convenance).
Dans l'exemple que nous avons choisi, les combinaisons 0 et 1 peuvent, par
exemple, être associées puisque seule la variable d est différente :
111
Dans l'exemple choisi, nous en sommes arrivés à ce point. De plus, nous constatons
dans cette figure que plusieurs combinaisons sont identiques. Nous ne garderons
bien sûr que les groupements différents que nous appellerons A, B, C, D, E et F
(figure 58).
f = A + B + C + D + E + F, Soit :
f= + + +b +a + ab
REMARQUE :
Dans tous les regroupements que nous avons effectués, il aurait pu arriver que
certains termes d'un ensemble ne se combinent avec aucun terme de l'ensemble
suivant. Ces termes sont alors des termes premiers et il convient de ne pas les
oublier dans l'équation finale.
113
Arrivé à ce stade, il convient de vérifier si l'équation obtenue ne peut pas encore être
simplifiée. Pour éliminer les éventuels termes superflus, formons une grille dite
«diagramme des termes premiers».
Sur chaque ligne, marquons d'une croix les combinaisons ayant servies à former le
groupement considéré.
Nous constatons que d'autre part les combinaisons incluses dans les lignes C, D, E
se retrouvent au moins une fois dans les lignes A, B et F. Les lignes C, D et E
peuvent donc être supprimées et la fonction f se simplifie donc encore pour devenir :
f=A+B+F
114
f= + + ab
f=1+2+3
f= + + ab
CONCLUSIONS :
A la lumière de cet exemple, résolu d'une part avec la méthode de QUINE MAC
CLUSKEY, d'autre part grâce à un tableau de Karnaugh, il apparaît que la seconde
est nettement plus simple, rapide et séduisante que la première. Ceci explique que
cette première méthode soit quasiment inemployée. Nous ne nous étendrons pas
davantage sur elle.
115
5. - SYNTHÈSE
Dans ce chapitre appelé synthèse, nous allons faire un rappel de toutes les notions
importantes nécessaires à l'étude et à la réalisation de circuits et de schémas
d'électronique logique combinatoire puisque la logique combinatoire a été l'objet de
notre préoccupation dans les trois premières théories.
En effet, on appelle logique combinatoire tout circuit dans lequel les sorties sont
uniquement fonction des valeurs des entrées, indépendamment du temps.
5.1. - VARIABLE
5.2. - FONCTION
Lorsque deux variables booléennes simples a et b varient de telle façon qu'à chaque
valeur de a correspond une valeur bien déterminée de b, la quantité b est fonction de
a.
A chaque fonction logique, correspond une table de vérité et une équation logique.
La table de vérité indique l'état de la sortie de la fonction considérée, en fonction de
l'état des variables d'entrée.
117
1 ⇒ «0» et «0»
2 ⇒ «0» et «1»
3 ⇒ «1» et «0»
4 ⇒ «1» et «1»
Exemple : S = a + b x = 22 = 4 cases
Cette somme est représentée par l'ensemble des cases appartenant aux deux
variables,
Le repérage se fera par des «0» et des «1» qui ont la même signification que
dans les tables de vérité, soit S = a + b.
120
Ce produit est représenté par l'ensemble des cases communes aux deux
variables comme pour les cercles d'Euler, Soit S = a . b.
x = 23 = 8 cases
x = 24 = 16 cases
122
5 variables = 2 tableaux
6 variables = 4 tableaux
7 variables = 8 tableaux
5.6.1. - RÈGLE :
Seule la surface d'un tore pourrait rendre cette image (figure 72-b).
5.6.2. - EXEMPLES :
Simplifier la fonction : L = +a + b
L= +
L = ac + bd +
1er théorème :
On écrit : = . .
2ème théorème :
On écrit : = +
Dans le chapitre suivant, nous vous proposons deux problèmes résolus qui vous
permettront de mettre en pratique l'ensemble des connaissances acquises
126
6. - PROBLÈMES RÉSOLUS
6.1. - PROBLÈME N° 1
Réaliser ce schéma avec les circuits intégrés inverseurs, ET, OU... dont vous
disposez (figure 76),
Nous voyons que X doit être à 1 chaque fois qu'au moins deux éléments sur a, b, c
sont à 0 d'où la table de vérité de la figure 77.
128
• Groupement rouge =
• Groupement vert =
• Groupement bleu =
X= + +
Nous voyons qu'en pratique un «OU» à trois entrées peut être remplacé par deux
«OU» à deux entrées (figure 80).
En effet, = .
D'où S = a + b =
On peut donc transformer le schéma de la figure 83 de telle sorte qu'il devienne celui
de la figure 84 et en supprimant les inverseurs inutiles celui de la figure 85.
131
6.3. - PROBLÈME N° 2
Fonctionnement :
L'électro-aimant «M» ne peut être excité que lorsque le contact «d» = 1 (vanne
fermée),
Le ressort de pesage s'écrase, «a» passe à 0, mais «b» reste encore à 0 (état
intermédiaire entre «a» et «b»),
3°) - Logigrammes.
Équation de M
M=a cd + a d+ d
Équation de N
N= bcd + bc + c
Groupement rouge = d
Groupement vert = a d
Groupement bleu = c
Groupement vert = bc
Le dernier problème qui vous a été proposé est d'ailleurs à la limite du séquentiel car
nous voyons pour la première fois un ordre de fermeture de contacts bien précis
mais ce problème peut encore être résolu par les méthodes que nous connaissons
135
Dans cette théorie, nous allons examiner les systèmes séquentiels qui sont à la base
des circuits utilisés dans les automatismes et les ordinateurs.
Les circuits logiques examinés jusqu'à présent ont la propriété de fournir en sortie et
à un instant donné, des valeurs logiques qui dépendent uniquement de la
combinaison des valeurs logiques appliquées à ce même instant aux entrées (en
négligeant naturellement les retards dûs aux temps de propagation).
Pour cette raison, ces circuits sont appelés combinatoires car leur état de sortie
est fonction de la combinaison des états logiques appliqués à leurs entrées.
Ces circuits dans lesquels la sortie dépend des états logiques antérieurs des entrées
sont appelés couramment circuits séquentiels.
Un système séquentiel est dit synchrone lorsque le changement d'état des sorties est
contrôlé dans le temps ou synchronisé. Il peut l'être par les entrées elles-mêmes ou
par un signal unique et commun à tout le montage. Ce signal particulier est appelé
horloge. Nous reviendrons ultérieurement sur la notion d'horloge.
Un système est dit asynchrone lorsque le changement d'état des sorties n'est
contrôlé par aucune entrée particulière à l'inverse d'un circuit synchrone.
Afin d'obtenir une représentation de l'évolution des signaux générés par un système
et de les comparer, on utilise des graphiques dans lesquels l'axe horizontal ou axe
des abscisses est gradué en fonction du temps exprimé en millisecondes (millième
de seconde) ou en microsecondes (millionièmes de seconde) par exemple.
L'axe vertical ou axe des ordonnées est gradué en niveaux de tension variant entre
le niveau haut et le niveau bas (H et L).
Les signaux obtenus dans cette figure étant réguliers et périodiques, on peut définir
pour chaque signal la période (ou temps) séparant deux impulsions successives.
La notion de niveaux nous est désormais familière, nous connaissons deux types : le
niveau bas et le niveau haut qui sont matérialisés par des segments de droites
horizontaux sur le chronogramme.
Nous appellerons front, le passage d'un niveau à un autre ; il sera matérialisé sur le
chronogramme par un segment de droite vertical ou tout au moins très incliné, car
dans la réalité le temps de passage d'un niveau à l'autre n'est pas nul et peut varier,
suivant les systèmes, de quelques dizaines de millisecondes à quelques dixième de
nanosecondes (1 nanoseconde = 10-9 seconde).
Il existe des fronts montants, flèche rouge du «timing» de la figure 1, et des fronts
descendants flèche verte sur la même figure.
Bien que ce dispositif ne soit plus guère utilisé dans les systèmes modernes compte
tenu de sa consommation, son temps de réponse élevé et son encombrement
prohibitif, celui-ci présente l'avantage d'être simple. De plus, son fonctionnement
mécanique est facilement visualisable d'où son intérêt pédagogique.
137
Lorsque l'on alimente la bobine de cet électro-aimant, l'armature est attirée et vient
au moyen d'une échelle ou cale isolante fermer des contacts travail ou ouvrir des
contacts repos (sur la figure 2, il s'agit d'un contact travail).
La représentation graphique d'un relais adoptée dans cette leçon est celle de la
figure 4.
On appelle états stables les états pendant lesquels la bobine d'un relais X, ou
excitation, est dans le même état que son contact x, ou transfert.
Par convention, le nombre indiquant un état stable est toujours entouré d'un
cercle.
Dans les deux états précédents, il y avait identité entre l'excitation et le transfert.
Toutefois, le retard de x conditionne des états intermédiaires ou transitoires pour
lesquels excitation et transfert sont dans des états complémentaires.
Exemple :
X = 1 et x = 0.
139
Remarque :
Règle :
a) Pour un état stable, la bobine du relais et son contact de transfert sont dans le
même état.
La bobine du relais prend la valeur binaire de l'état stable vers lequel l'état
transitoire évolue.
Supposons que l'on dispose, pour commander l'allumage d'une lampe L, de deux
boutons-poussoirs, l'un appelé «m» ou «marche» et l'autre «a» ou «arrêt».
Nous pouvons voir en examinant la figure 5 qu'il existe pour deux combinaisons
identiques des variables d'entrées «a» et «m» deux états logiques différents pour L
(combinaisons cerclées en rouge).
140
Ceci est nouveau. Nous ne pouvons donc pas résoudre le problème par la méthode
combinatoire traditionnelle. En effet, le tableau de Karnaugh n'admet qu'une valeur 1
ou 0 par case ou combinaison des variables d'entrées.
C'est pourquoi il est nécessaire d'introduire une variable secondaire encore appelée
mémoire qui permet de conserver le souvenir des événements antérieurs et d'établir
une chronologie. En technologie électrique, cette mémoire est matérialisée par un
relais X qui est une variable de sortie et son contact x qui est une nouvelle variable
d'entrée.
L'état antérieur de la sortie (compte tenu du retard introduit) est ainsi pris en compte
comme une variable d'entrée supplémentaire appelée variable secondaire. On
l'appelle variable interne, en électronique.
Dans la théorie 2, nous avons vu l'utilisation des tableaux de Karnaugh dans lesquels
les variables d'entrées étaient indépendantes des sorties. Or ici ce n'est plus le cas
car L = X = x et une variation de L entraîne une variation de x.
Nous avons à faire ici, en séquentiel, à des circuits rebouclés sur eux-mêmes pour
lesquels on ne peut utiliser la méthode de Karnaugh.
141
Nous voyons que L sera allumée pendant les phases : transitoire 1, OU état stable
, OU état stable .
142
Ces notions de temps de transit sont précisées dans la théorie 5 ainsi que dans la
technologie 4 intitulée "Sommaire Technologie Digitale et Fondamentale".
Une représentation beaucoup plus répandue de ce même circuit est donnée figure
12. Ce montage est encore appelé FLIP-FLOP : Nous en reparlerons assez
longuement par la suite.
Une méthode que nous ne démontrerons pas ici car elle dépasse largement le cadre
de cette leçon permet de remplacer la simplification algébrique par des tableaux de
Karnaugh.
Cette méthode des phases étendue peut s'appliquer à tous les dispositifs
séquentiels.
Dans l'exemple déjà résolu précédemment, le tableau des phases est représenté
figure 14.
Les traits gras tracés sur les lignes horizontales du tableau correspondant aux
variables, représentent ces variables ou contacts à l'état 1 pendant chaque phase.
Les traits gras discontinus horizontaux représentent l'état 1 des excitations dans
chaque phase.
147
A chaque fois que la modification de l'état d'une variable d'entrée (y compris les
variables secondaires) entraîne un changement d'état d'une sortie (y compris les
excitations) ceci est matérialisé par une flèche verticale (en gras).
Les variables secondaires sont toujours en retard d'une phase par rapport
à l'état d'excitation.
Une pondération identique dans deux phases mais produisant des états
différents des excitations ou des sorties introduit obligatoirement une nouvelle
variable secondaire : il faut ajouter une excitation supplémentaire et son
transfert.
Nous allons voir maintenant plus en détail comment nous sommes arrivés à
l'élaboration du tableau de la figure 14.
Le point de départ très important de cette méthode est l'analyse des informations
dont on dispose et l'élaboration d'un tableau de fonctionnement.
Celui-ci doit montrer de façon précise les différents cas de figures possibles pour
l'état des entrées et l'état des sorties pour chacune de ces combinaisons.
148
b) Construction du diagramme.
Phase 0 :
Position repos a = 0, m = 0, L = 0
Aucun organe n'est actionné, il n'y a pas lieu de tracer de trait en gras.
Phase 1 :
a = 0, m = 1, L = 1
Phase 2 :
a = 0, m = 0, L = 1
ATTENTION :
Pour les phases 0 et 2, la pondération est 0, or les variables d'entrées sont dans les
deux cas à 0. Comme nous l'avons signalé précédemment, il est donc nécessaire
d'introduire une variable secondaire pour différencier ces deux cas.
La figure 17 montre le nouveau tableau des phases obtenu avec ces nouvelles
données.
Phase 1 :
a = 0, m = 1, L = 1
Le contact de transfert x commandé par X est en retard d'une phase par rapport à
l'excitation (on trace une flèche oblique orientée de X vers x).
Phase 2 :
a = 0, m = 1, L = 1
Une seule variable change d'état par rapport à la phase, en effet, seul x passe à 1
alors que m, comme nous l'avons décidé en phase 1 a été maintenu à 1, X restant
collé.
Phase 3 :
a = 0, m = 0, L = 1
On relâche m (le trait gras s'arrête), l'excitation X est mémorisée par x (on prolonge
les pointillés sur X et les traits gras sur x et L). Entre les phases 2 et 3, une seule
variable change d'état : m qui est relâché.
Phase 4 :
a = 1, m = 0, L = 0
On appuie sur «a» ce qui entraîne que X passe à 0 et L également. On trace donc
un trait vertical fléché vers X et vers L.
On s'aperçoit que si l'on relâche «a» pendant la phase 4 alors que «x» n'a pas
changé d'état, un aléa de fonctionnement peut apparaître ; L se rallumant du fait que
l'action sur «a» n'a pas été mémorisée par «x», variable secondaire d'entrée.
Phase 5 :
a = 1, m = 0, L = 0
L'action sur «a» est prolongée, on trace le trait gras. Il n'y a plus d'excitation de
transfert. La pondération Ph de cette phase est de 1.
Phase 6 :
a = 1, m = 1, L = 0
152
Cette phase permet de mettre en évidence le cas où l'action sur «a» est prolongée et
que l'on appuie sur «m».
On trace deux traits pleins. La priorité est donnée à l'arrêt, l'action sur «m» n'a pas
d'effet donc il n'y a pas lieu de tracer d'autres traits.
Phase 7 :
Pour revenir à la phase 0 («a» et «m» relâchés), il est nécessaire de passer par la
phase 7 afin que seule une variable commute. On prolonge l'action de «a».
Les phases 5 et 7 ont la même pondération et sont identiques, l'action sur «a»
n'entraînant aucun changement.
Tous les cas ont été envisagés, le diagramme est donc complet.
Le tableau de Karnaugh est établi pour chaque excitation, ici une seule : X, donc un
seul tableau. Le tableau obtenu est celui de la figure 18.
X=m + x
X= (m + x)
2.3.1. SÉQUENCE
On appelle séquence une succession bouclée d'états stables séparés par des états
transitoires.
a) Analyse
Comme point de départ, on se sert d'un tableau avec quatre colonnes correspondant
aux combinaisons des entrées que l'on range selon le code binaire réfléchi. Dans
une cinquième colonne, on inscrira la valeur binaire de l'état de sortie. Le tableau est
représenté figure 20.
Action sur a a = 1, m = 0 et L = 0
On positionne chaque état stable dans la case pour laquelle les variables «m» et «a»
sont aux valeurs ayant entraîné cet état stable.
Exemple :
Les états transitoires sont situés à l'intersection de la ligne sur laquelle figure l'état
stable initial et de la colonne dans laquelle figure l'état stable suivant.
Nous savons qu'il est impossible que deux variables commutent simultanément. Pour
matérialiser ceci sur la matrice primitive, il convient de hachurer pour les éliminer,
toutes les cases pour lesquelles sur une même ligne deux variables changent par
rapport à la combinaison des variables qui a provoqué l'état stable inclus dans cette
ligne.
où a = 0, m = 0
Ligne 1 :
Case 10 (a = 1, m = 0)
Si l'on appuie sur «a» alors que L est éteinte, on évolue vers une situation analogue
à l'état stable (a = 1, m = 0, L = 0), on écrit donc 3 dans la case ce qui montre
que l'on passe par l'état transitoire 3.
Ligne 2 :
Case 11 (a = 1, m = 1)
Si l'on appuie sur «a» alors que «m» n'a pas été relâché, on va vers l'extinction de la
lampe donc vers l'état stable (a = 1, m = 1, L = 0). On inscrit 4 dans la case.
Ligne 3 :
Case 01 (a = 0, m = 1)
Si l'on appuie sur «marche» alors que la lampe est déjà allumée, ceci n'a pas d'effet
et on va vers l'état stable (a = 0, m = 1, L = 1), on écrit donc 1 dans la case.
Ligne 4 :
Case 00 (a = 0, m = 0)
158
Ligne 5 :
1) Case 01 (a = 0, m = 1)
On relâche «a» alors que «a» et «m» étaient actionnés et que L était éteinte. La
lampe se rallume car on revient à l'état stable (a = 0, m = 1, L = 1), on écrit donc
1 dans la case.
2) Case 10 (a = 1, m = 0)
On relâche le bouton marche alors que L est éteinte, on revient donc vers l'état
stable (a = 1, m = 0, L = 0), on écrit donc 3 dans la case.
Il est souhaitable de ramener la matrice primitive des états à une matrice contractée
afin de diminuer le nombre de lignes supplémentaires, celles-ci introduisant de
nouvelles excitations et de nouvelles variables complémentaires ou transferts.
Comparons la ligne 1 avec la ligne 2 : elles ne sont pas superposables car pour a =
0 et m = 0, on a l'état sur la première ligne et 2 sur la seconde.
Comparons la ligne 1 avec la ligne 4 : ces deux lignes sont superposables car
on a correspond à 0, à 1 correspond une impossibilité, à une impossibilité
correspond 4, à 3 correspond .
Lignes 2 et 3 superposables.
Ligne 2 et 5 superposables.
Lignes 3 et 5 superposables
Lignes 4 et 5 superposables
160
d) Polygone de fusion
Répartissons sur un cercle en comptant dans le sens des aiguilles d'une montre les
cinq points matérialisant les cinq lignes de la matrice primitive des états : nous
obtenons la figure 25.
Relions ensemble toutes les lignes superposables comme représenté figure 26.
Règle :
Nous pouvons fusionner par exemple 2-3-5...n sommets reliés entre eux mais
chaque sommet ne doit figurer que dans un seul groupement de telle sorte que
dans notre cas, on peut réaliser les groupements :
161
Nous préférerons 1-4-5 et 2-3 car à l'intérieur de chaque groupement l'état des
sorties est identique.
La figure 28 nous montre que les états stables l'emportent sur les transitoires à
la fusion.
Nous pouvons reconstituer une matrice dite contractée au moyen des lignes 1-4-5 et
2-3. La figure 31 représente cette matrice contractée.
Nous voyons à la figure 31 que la matrice contractée comprend deux lignes, ce qui
signifie que les variables complémentaires ou transferts sont au nombre de un
seulement que l'on appelle x.
On recherchera l'état L pour un état stable donné dans la matrice primitive des états
(figure 21).
Pour L=0
Pour L=1
Pour L=1
Pour L=0
163
Pour L=0
Nous reporterons l'état logique de la sortie (1 ou 0) pour l'état stable vers lequel l'état
transitoire considéré évolue.
Nous pouvons réaliser les groupements comme nous avons appris à le faire. Ils sont
représentés figure 34.
L= m+ x
Soit L = (m + x)
Nous préférerons la méthode d'Huffman qui est plus abstraite mais à la fois plus
systématique et plus sûre. Toutefois, la méthode des phases généralisée présente
l'avantage de permettre une visualisation des aléas de fonctionnement possibles et
leurs éliminations plus facile. On peut donc seulement recommander l'utilisation de la
méthode des phases comme vérification d'un schéma obtenu par la méthode
d'Huffman afin de rechercher d'éventuels aléas.
Ce sont des circuits dont les sorties possèdent deux états stables 1 ou 0. Ils ont la
propriété de conserver ces états stables après la disparition du ou des niveaux
logiques qui ont donné naissance à ces états stables. Ces circuits sont considérés
comme des éléments de mémoire capables d'emmagasiner et de fournir une unité
d'information, c'est-à-dire un bit.
La bascule R-S ou «FLIP-FLOP» est le type le plus simple de ces nouveaux circuits.
Il existe deux types de «FLIP-FLOP», les «FLIP-FLOP R-S» et les «FLIP-FLOP à
horloge».
165
3.2.1. - BASCULE COUPLÉE CROISÉE R-S RÉALISÉE AVEC DES PORTES NOR
a) Fonctionnement
La bascule est dite SET lorsque Q = 1 et = 0, elle est dite RESET lorsque Q = 0
et = 1.
Les états des entrées sont indiqués pour chaque cas ainsi que les états
correspondants des sorties.
Nous voyons qu'il existe dans cette bascule une entrée R et une entrée S.
Dans le premier cas, seul l'état d'une des deux entrées des portes NOR est connu
(niveau L). On ne peut donc pas dire quel est l'état des sorties, en effet, celui-ci
dépend de l'état de la deuxième entrée du NOR.
Dans le second cas, on applique un niveau H sur l'entrée R, ce qui a pour effet de
forcer le premier NOR à 0. Ce 0 ramené sur l'entrée supérieure du second NOR
force la sortie de celui-ci à 1. Cette sortie étant ramenée sur l'entrée inférieure du
premier NOR vient confirmer le forçage de celui-ci à 0.
Dans le troisième cas, R est revenu à 0, on constate que compte tenu de l'état
antérieur, la bascule est maintenue RESET, le premier NOR étant forcé à 0 par son
entrée inférieure. La sortie du second NOR est alors maintenue à 1 car ses deux
entrées sont à l'état 0. On a mémorisé l'effet provoqué par R = 1 dans le deuxième
cas.
Dans le quatrième cas, S passe à 1 et vient forcer le second NOR à 0. Par le même
processus dû au rétro-couplage des NOR, on aboutit ainsi à la mise à 1 de la
bascule ou SET (deuxième état stable).
Dans le sixième cas, R et S sont à 1 simultanément et les deux portes NOR sont
forcées à 0.
b) Table de vérité
Nous pouvons résumer ce fonctionnement sous la forme d'une table de vérité. Nous
appellerons Qn l'état de la sortie Q à l'instant n et Qn - 1 l'état de la sortie Q à
l'instant n - 1, c'est-à-dire à l'instant ayant précédé le changement d'état des entrées.
Lorsque l'on applique 0 volt sur l'entrée ( est à 5 volts), la diode D1 est
traversée par un courant ID1 (figure 39) et il apparaît une tension VD1 très faible à
ses bornes.
Le transistor TR1 est alors bloqué (base insuffisamment positive pour qu'il conduise).
TR1 étant bloqué, aucun courant ne le traverse et monte à environ 5 volts.
Cette tension est alors renvoyée à travers R2 sur la base de TR2 qui se sature
(courant Ib2). Q tombe alors à pratiquement 0 volt. Cette tension ramenée à travers
R4 sur la base de TR1 vient maintenir le blocage de celui-ci, et ce même si l'entrée
repasse à 5 volts.
Nous obtenons un premier état stable : TR1 est bloqué, TR2 est saturé. Ainsi, la
sortie passe à 5 volts (niveau H) et la sortie Q passe à 0 volt (niveau L).
L'application d'un «0» sur l'entrée entraîne donc Q = 0 et = 1. C'est l'état
RESET de la bascule.
170
C'est le second état stable de la bascule. TR2 est bloqué et TR1 est saturé.
Le sens des courants dans les diodes sont indiqués par les flèches bleue et rouge
sur la figure 41. = = 0 entraîne Q = 1 et = 1.
Lorsque les deux entrées et sont à l'état 1, les deux diodes D1 et D2 sont
bloquées et les deux entrées et n'ont pas d'influence sur le montage.
Les transistors restent dans l'état où ils se trouvaient précédemment. Ce sont donc
les états antérieurs Qn - 1 et n - 1 qui sont observés sur Q et .
Tout ceci peut se résumer dans la table de vérité de la figure 42, les états des sorties
à l'instant n étant notés Qn et n et les états à l'instant antérieur n - 1 notés Qn -
1 et n - 1.
a) Description
b) Table de vérité
Elle est bien sûr identique à celle décrite pour la bascule à éléments discrets et vue
au chapitre précédent.
c) Fonctionnement
à l'instant t4 : repasse à 1 ce qui n'a pas d'effet, la bascule reste RESET ce qui
veut dire qu'elle mémorise l'action antérieure de .
à l'instant t10 : passe à 1, la bascule reste SET ce qui veut dire que l'action
antérieure de est mémorisée.
a) Description
Il s'agit d'une bascule à portes NAND dont les entrées sont commandées par deux
autres portes NAND comme le montre la figure 47. L'entrée de commande «C»
commune aux deux nouvelles portes NAND permet de valider les deux entrées R et
S. Celles-ci sont appelées R et S car ces entrées sont actives à l'état 1.
Lorsque C est à l'état 1, les entrées S et R sont validées et la bascule R.S.C devient
une bascule R-S classique.
Lorsque C passe à l'état 0, les entrées 1 et 1 passent à l'état 1 quel que soit
l'état des entrées S et R. Ainsi, la bascule passe à l'état repos. C'est la position
mémoire, c'est-à-dire que les sorties Q et restent dans l'état où elles se
trouvaient avant le passage de l'entrée C à l'état 0.
à l'instant t9 : S passe à 1 alors que C est toujours à 1, la bascule devient SET (Q passe à 1,
passe à 0).
à l'instant t10 : S passe à 0, il n'y a pas de changement des états de Q et de .
c) Table de vérité
On constate qu'à chaque fois que C = 0, la bascule est en position mémoire alors
que pour C = 1, la bascule R.S.C. se comporte exactement comme une bascule R-
S classique.
a) Description
La bascule de type D ou latch est dérivée de la bascule R.S.C. Elle possède, quant
à elle, une seule entrée «D» pour positionner les sorties. En effet, on place un
inverseur entre l'entrée S et l'entrée R de la bascule R.S.C.
179
Lorsque C passe à l'état 0, la bascule reste dans l'état où elle se trouvait avant que
l'entrée C ne passe à 0, c'est-à-dire qu'elle est SET ou RESET. C'est la position
mémoire, l'entrée D n'a désormais plus d'action sur les sorties Q et .
à l'instant t1 : l'entrée de données D passe à 1 mais cette entrée n'est pas prise en compte, en
effet, elle n'est pas validée par C (les sorties Q et ne changent pas d'état.
à l'instant t2 : l'entrée de données D revient à 0 mais il n'y a toujours pas d'effet sur les
sorties car C = 0.
à l'instant t3 : l'entrée C passe à 1 mais comme D est à 0, la bascule demeure en position
RESET (Q = 0 et = 1).
à l'instant t4 : D passe à 1, ce changement d'état se produisant lorsque C = 1 est recopie sur
les sorties de la bascule de telle sorte que celle-ci devient SET (Q = 1 = 0) pendant le
temps où D est maintenu à 1.
à l'instant t5 : D revient à 0, ce changement de niveau, intervenant lorsque C = 1, est recopie
sur les sorties de la bascule de telle sorte qu'elle redevient RESET (Q = 0 et = 1).
à l'instant t6 : D passe à 1, la bascule redevient SET (Q = 1 et = 0) car C = 1
à l'instant t7 : C passe à 0, la bascule passe en position mémoire
à l'instant t8 : D passe à 0 mais ce changement d'état de l'entrée D n'est pas pris en compte
par la bascule car C = 0.
à l'instant t9 : C passe à 1 et comme D est à 0, la sortie Q passe également à 0 : la bascule
devient RESET (Q = 0 et = 1).
181
c) Table de vérité
Nous pouvons déduire de cette table de vérité qu'à chaque fois que C = 0, la bascule
mémorise l'état antérieur des sorties.
Dans cette théorie, nous allons examiner le fonctionnement de deux bascules parmi
les plus utilisées : la bascule "D" MAÎTRE ESCLAVE et la bascule "JK" MAÎTRE
ESCLAVE.
Ces bascules ont un fonctionnement synchrone comme nous allons le voir à présent.
1. - BASCULES SYNCHRONES
Or, certains montages numériques nécessitent des bascules dont les sorties
commutent à un instant bien déterminé. Ces bascules sont synchrones car la prise
en compte de l'information, présente sur leurs entrées, s'effectue simultanément lors
de la transition d'un niveau logique à un autre de l'entrée de commande. La prise en
compte des données logiques peut se faire soit sur une transition positive (de L à H),
soit sur une transition négative (de H à L) de l'entrée de commande.
La figure 1-a représente une transition positive (de L à H) d'un signal logique tandis
que la figure 1-b représente une transition négative (de H à L) du signal.
Les passages de l'état haut à l'état bas et vice-versa ne s'effectuent pas de façon
instantanée que le montrent les figures 1-a et 1-b.
Suivant la technologie employée, le temps mis par un signal logique pour passer d'un
état à l'autre peut varier de moins d'une nanoseconde à plusieurs centaines de
nanosecondes comme nous l'avons vu dans les leçons de technologie digitale.
La figure 2-a montre une transition positive d'un signal logique suivie d'une transition
négative. On parle alors d'impulsion positive.
183
La figure 2-b représente, quant à elle, une impulsion négative d'un signal logique.
Les bascules synchrones sont conçues à partir de bascules asynchrones que l'on
associe dans la configuration MAÎTRE ESCLAVE. La première des bascules
synchrones est la bascule "D" MAÎTRE ESCLAVE que nous allons examiner à
présent.
On remarque que les entrées de commande des deux bascules se situent toujours à
des niveaux logiques opposés. En effet, un inverseur est situé entre les deux entrées
de validation C' et C.
L'entrée de commande qui active les entrées C' et C est appelée ENTRÉE
D'HORLOGE (CLOCK en anglais). En effet, la bascule examinée a un
fonctionnement synchrone comme vous allez le voir.
185
Nous savons que si son entrée de commande C est portée à l'état 1, la sortie Q
recopie l'entrée D. Si l'on met l'entrée de commande C à l'état 0, la sortie mémorise
le dernier état logique présent sur l'entrée juste avant la transition négative de
l'entrée de commande.
186
La figure 7 rappelle la structure d'une bascule D latch, tandis que la figure 8 montre
l'action de l'entrée de commande C sur les sorties Q et en fonction de l'entrée D.
Le mode «transparence» est illustré par la figure 9-a, tandis que la figure 9-b
représente le mode «verrouillage».
Dans le mode «transparence», l'interrupteur fermé indique bien que la sortie Q suit
l'entrée D.
Dans le mode «verrouillage», l'interrupteur ouvert indique bien que la sortie Q ne suit
pas l'entrée D. La sortie Q reste à l'état où elle était juste avant la transition négative
de C.
Nous allons voir maintenant que la commutation effective de la bascule ne peut avoir
lieu que lors de la transition du niveau L au niveau H de l'horloge.
188
Pour cela appliquons à l'entrée d'horloge une impulsion de tension dont la forme est
représentée figure 12-a. Ceci correspond à la réalité comme nous l'avons vu
précédemment, les temps de montée et de descente de la tension n'étant jamais
nuls.
Il faut également tenir compte du fait que l'inverseur disposé entre les deux entrées
de commande C et C' possède un seuil de basculement plus bas que celui des
autres portes logiques du circuit (figure 12-a).
La figure 12-b représente le niveau logique obtenu ainsi sur l'entrée de commande C'
de la bascule MAÎTRE, tandis que la figure 12-c représente le signal logique actif sur
la bascule ESCLAVE.
La bascule MAÎTRE transfère la donnée D en sortie Q'. Par contre, la donnée Q'
n'est pas transférée en sortie Q de la bascule ESCLAVE, car cette dernière est
verrouillée.
On a donc stocké la donnée en Q'. Comme l'ESCLAVE est toujours bloqué, celle-ci
n'a toujours pas été transmise sur la sortie Q qui reste inchangée.
A l'instant t2, le MAÎTRE est verrouillé et l'ESCLAVE devient transparent puisque C'
= 0 et C = 1 (voir figure 15).
190
On peut dire aussi que la donnée présente en D à l'instant t1 s'est trouvée transférée
en sortie Q à l'instant t2. Le transfert s'est donc effectué sur le front montant de
l'horloge.
A l'instant t3, l'ESCLAVE se verrouille, tandis que le MAÎTRE est toujours verrouillé.
En effet, C' = 0 et C = 0 (voir figure 16. On constate que les sorties Q' et Q ne
changent pas d'état.
A l'instant t4, le MAÎTRE devient transparent puisque C' = 1 (voir figure 17).
La nouvelle donnée présente en D est transférée en sortie Q', mais pas en sortie Q
puisque l'ESCLAVE est toujours verrouillé (C = 0). On constate donc que lors du
front négatif de l'horloge (de l'instant t3 à l'instant t4), la sortie Q ne peut basculer.
Le fonctionnement d'une bascule D Maître Esclave est bien synchrone. Son rôle
est de mémoriser une donnée logique à un instant précis. Cette donnée appliquée
en D est prise en compte au début du front montant et transférée sur la sortie
Q à la fin de ce front montant. Un nouveau transfert de l'entrée D vers la sortie Q
aura lieu lors du prochain front montant de l'horloge.
191
A noter que si l'entrée de l'inverseur situé entre les deux entrées de commande est
connectée en C' et la sortie connectée en C, la bascule D MAÎTRE ESCLAVE ainsi
constituée prend en compte la donnée présente en D lors du front descendant du
signal d'horloge. C'est le cas de la bascule représentée figure 19.
Puisque l'entrée de commande C de l'esclave est portée à l'état 0, les sorties des
portes NAND 5 et 6 se trouvent à l'état 1, quel que soit l'état de D.
Pour mettre la bascule D à l'état 1 (Q = 1), il faut positionner l'entrée CLEAR à l'état
1 et appliquer une impulsion négative sur l'entrée PRESET. Celle-ci est bien l'entrée
de remise à 1 et elle est active à l'état 0.
Si l'on porte les deux entrées CLEAR et PRESET à l'état 0, les sorties Q et sont
forcées à l'état 1. Cette combinaison des entrées CLEAR et PRESET est rarement
utilisée.
195
Puisque l'ESCLAVE est transparent (C = 1), Les sorties Q et vont recopier Q' et
'. La bascule D va donc se porter à l'état 1 (Q = 1 et = 0).
Puisque l'esclave est transparent, les sorties Q et vont recopier Q' et '. La
bascule D va donc se porter à l'état 0 (Q = 0 et = 1).
De même, si l'on porte les deux entrées CLEAR et PRESET à l'état 0, les sorties Q
et sont forcées à l'état 1 par l'intermédiaire des portes NAND 7 et 8. Il est à noter
que dans ce cas l'état des sorties Q et est identique. On ne peut plus parler alors
de sorties complémentaires. Ce cas est donc très rarement utilisé et certains
constructeurs le considèrent même comme interdit.
De plus, cet état n'est pas stable. Il ne persiste pas si les entrées CLEAR et
PRESET reviennent à leur état inactif (c'est-à-dire 1 dans notre cas).
196
En résumé, quel que soit l'état logique des entrées D et CLOCK, les entrées CLEAR
et PRESET sont prioritaires et asynchrones, ce qui peut être résumé par la table de
vérité de la figure 24. Les croix X placées dans les cases D et CLOCK signifient que
l'état de ces deux entrées n'a aucune incidence sur l'état des sorties de la bascule.
Les deux entrées CLEAR et PRESET doivent être à l'état 1, c'est-à-dire inactives
pour que la bascule puisse commuter sur le front actif du signal d'horloge.
Il est à noter qu'il existe des bascules D MAÎTRE ESCLAVE dont les entrées CLEAR
et PRESET sont actives à l'état 1. Dans ce cas, ces deux entrées doivent être
portées à l'état 0 pour que le signal d'horloge soit actif.
Enfin, certaines bascules voient leurs deux sorties Q et passer à l'état 0 (et non
pas 1 comme dans le cas précédent) lorsque les deux entrées CLEAR et PRESET
sont toutes deux actives. Toutes ces différences s'expliquent par des différences de
constitution technologique.
197
Le symbole que l'on peut voir dans la colonne CLOCK de la table de vérité
indique une transition positive du signal d'horloge.
Dans cette table, les trois premières lignes indiquent que les entrées CLEAR et
PRESET sont prioritaires et actives sur un niveau bas.
La quatrième ligne indique que l'état logique 0 présent en D est transféré à la sortie
Q sur le front montant du signal d'horloge.
La cinquième ligne indique que l'état logique 1 présent en D est transféré à la sortie
Q sur le front montant du signal d'horloge.
Aux sixième et septième lignes, Q0 et 0 sont les états logiques que les sorties Q
et ont pris lors du dernier front actif de l'horloge. Ces états logiques Q0 et 0 ont
pu être imposés par les entrées prioritaires CLEAR et PRESET.
Autrement dit, ces deux dernières lignes de la table de vérité indiquent bien que les
sorties Q et ne basculent pas sur un niveau logique du signal d'horloge mais bien
sur un front montant de ce signal.
198
Au début de ce chronogramme, l'entrée PRESET est mise à l'état 0, donc elle est
active. La bascule se trouve par conséquent à l'état 1. Puis l'entrée PRESET
retourne à l'état 1. La sortie Q reste positionnée à l'état 1. L'entrée CLEAR reçoit une
impulsion négative qui fait passer la bascule à l'état 0.
Le deuxième front actif de l'horloge n'a pas d'action sur la sortie Q de la bascule
puisqu'il a lieu lorsque l'entrée CLEAR est active, donc prioritaire. Ensuite, les
entrées CLEAR et PRESET deviennent inactives puisqu'elles sont portées à l'état 1.
La bascule ne pourra désormais commuter que sur le front positif de l'horloge.
Au troisième front actif de l'horloge, l'état logique présent en D est l'état 1. La bascule
qui était à l'état 0 passe donc à l'état 1.
L'entrée D passe à l'état 1 juste avant le sixième front actif de l'horloge. Par
conséquent, la sortie Q de la bascule passe à l'état 1 lors du sixième front montant
de l'horloge.
199
Avec le chronogramme de la figure 28, on s'aperçoit bien que les sorties Q et sont
à une fréquence moitié de celle de l'entrée d'horloge. Le diviseur de fréquence par 2
est très utilisé dans les compteurs électroniques qui seront examinés plus tard.
3. 1. - REPRÉSENTATION SYMBOLIQUE
Dressons le tableau de Karnaugh (figure 32) pour trouver l'équation la plus simple de
S.
S=J + Q
202
En utilisant des portes NAND, le circuit combinatoire suivant (figure 33) peut fournir
le signal S :
Donc à chaque front actif de l'horloge, la sortie Q bascule pour prendre l'état de et
vice-versa. Ce mode de fonctionnement déjà vu avec la bascule D MAÎTRE
ESCLAVE est le mode TOGGLE. C'est le diviseur de fréquence par 2, les sorties Q
et sont à une fréquence 2 fois plus petite que la fréquence du signal d'horloge.
Les trois premières lignes de cette table indiquent que les entrées CLEAR et
PRESET sont prioritaires et actives sur un niveau bas. Les quatre lignes suivantes
correspondent aux quatre modes de fonctionnement examinés précédemment.
203
On remarque sur cette figure que chaque front montant de l'entrée CLOCK est
affecté d'une flèche dirigée vers le haut. Cela indique que la bascule JK examinée
commute sur le front montant. On suppose que les entrées CLEAR et PRESET sont
inactives car on leur applique en permanence l'état logique 1.
Juste avant le premier front actif de l'horloge, les entrées J et K sont à 0. Donc lors
de ce front, la bascule ne commute pas et la sortie Q reste dans l'état où elle se
trouve, c'est-à-dire ici l'état 0.
204
Comme dans le cas de la bascule D, les entrées PRESET et CLEAR peuvent être
actives à l'état 0 ou à l'état 1 selon la constitution interne de la bascule.
J = J1 . J2 . J3
205
K = K1 . K2 . K3
Ce type de bascule servait à réaliser des compteurs. Depuis que ceux-ci sont
disponibles sous forme de circuits intégrés, les bascules JK à entrées multiples ne
sont plus employées.
Les deux chronogrammes des figures 37 et 38 sont souvent réunis en un seul dans
les catalogues de constructeurs, comme le montre la figure 39.
Les périodes hachurées indiquent que la donnée peut varier d'un niveau à l'autre
sans qu'il y ait d'influence sur le comportement du circuit.
208
Le temps de maintien est le temps minimal pendant lequel la donnée présente sur
l'entrée doit rester stable après le front actif de l'horloge pour que cette donnée soit
reconnue.
Dans les catalogues de constructeurs, les deux chronogrammes qui représentent les
temps de prépositionnement et de maintien sont regroupés en un seul, comme le
montre la figure 43.
Le temps de propagation tpLH est le temps qui s'écoule entre l'instant où l'entrée de
commande devient active et l'instant où la sortie passe du niveau L au niveau H.
210
En pratique, ce temps correspond au retard apporté par les portes internes du circuit.
Le temps de propagation tpHL est le temps qui s'écoule entre l'instant où l'entrée de
commande devient active et l'instant où la sortie passe du niveau H au niveau L.
211
Cette fréquence limite de fonctionnement fmax est due au retard apporté par les
portes du circuit. Elle correspond à une période minimale 1 / fmax du signal
d'horloge comme l'indique la figure 46.
Les bascules synchrones qui commutent sur le front positif du signal d'horloge sont
appelées «positive edge triggered», tandis que celles qui commutent sur le front
négatif sont appelées «négative edge triggered».
Nous allons vous présenter les bascules synchrones les plus utilisées en pratique,
tout d'abord celles réalisées en technologie TTL standard ou TTL-LS, puis celles
réalisées en technologie C.MOS.
5. 1. 1. - BASCULES D
Le circuit intégré 74174 contient, quant à lui, six bascules D «positive edge
triggered». Les entrées CLOCK et CLEAR sont communes aux six bascules.
Chacune des bascules ne possède qu'une seule sortie Q. Le brochage de ce circuit
est représenté figure 49.
214
Le circuit intégré 74175 renferme quatre bascules D «positive edge triggered». Les
entrées CLOCK et CLEAR sont communes aux quatre bascules et chacune d'elles
possède deux sorties complémentaires Q et .
5. 1. 2. - BASCULES JK
Le circuit intégré 74LS73 contient deux bascules JK «négative edge triggered» avec
entrée de remise à zéro. Le brochage de ce circuit est donné à la figure 53.
216
Le circuit intégré 74LS76 contient deux bascules JK «négative edge triggered» avec
entrées de remise à 0 et de remise à 1. Le brochage de ce circuit est donné à la
figure 55.
217
5. 2. 1. - BASCULES D
Le circuit intégré CD4013 renferme deux bascules D «positive edge triggered» avec
entrées de remise à 0 et de remise à 1. Son brochage est donné à la figure 57.
218
Le circuit intégré CD40174 est la version C.MOS du circuit intégré TTL 74174.
Il est compatible broche à broche avec celui-ci et possède la même table de vérité.
Il en est de même pour le circuit intégré CD40175 qui est la version C.MOS du
circuit intégré TTL 74175.
219
5. 2. 2. - BASCULES JK
Le circuit intégré CD4027 est une double bascule JK «positive edge triggered» avec
entrées de remise à 0 et de remise à 1. Le brochage de ce circuit est donné à la
figure 59.
Cette nouvelle théorie vous permettra d'examiner tout d'abord les circuits
monostables, ensuite les bascules de Schmitt et les oscillateurs.
Ces nouveaux circuits font appel à des notions d'électronique analogique (ou
fondamentale), car des résistances et condensateurs sont généralement nécessaires
à leur fonctionnement.
1. - LES MONOSTABLES
1. 1. - DÉFINITION ET FONCTION
Dans la théorie précédente, différents circuits logiques vous ont été présentés. Il
s'agissait essentiellement de la bascule D maître esclave et de la bascule J.K. Or,
vous avez constaté que ces bascules étaient caractérisées par deux états stables,
ces bascules passant d'un état à l'autre sous l'effet d'une commande extérieure au
circuit. Ces bascules restent en permanence dans l'état où elles se trouvent jusqu'à
ce que le signal de commande les fasse basculer dans l'état stable complémentaire
de l'état précédent.
Dans cette théorie, vous verrez des circuits «monostables» ne possédant qu'un seul
état de stabilité. Sous l'effet d'une commande extérieure, ces monostables peuvent
passer à l'état complémentaire de l'état stable, mais retrouvent invariablement leur
état de stabilité après une durée déterminée par le type de circuit. En fait, ces circuits
possèdent bien deux états logiques complémentaires, mais l'un est stable, l'autre
ne l'est pas.
L'état stable est l'état de repos du circuit. La figure 1 vous montre une représentation
simple d'un monostable.
221
Les signaux logiques présents à l'entrée et en sortie vous sont présentés à la figure
2.
1. 2. - EXEMPLES D'APPLICATION
Or, pour des durées inférieures à 1/10 de seconde environ, il est impossible de
percevoir l'éclairement d'une LED. Il sera nécessaire d'utiliser un monostable qui
jouera un rôle de temporisation en créant une impulsion à sa sortie suffisamment
longue pour éclairer une LED témoin.
222
Une impulsion de sortie de 1 seconde environ est dans ce cas suffisante pour
l'éclairement de la LED.
1. 2. 2. - MESURE DE FRÉQUENCE
Cette application d'un circuit monostable permet de mesurer la fréquence d'un signal.
Le schéma de principe est indiqué à la figure 4.
1. 3. - CIRCUITS MONOSTABLES
Ces circuits sont subdivisés en deux catégories, tout d'abord celle des pseudo-
monostables, puis celle des vrais monostables.
1. 3. 1. - PSEUDO-MONOSTABLES
a) Circuit de base.
Il faut noter que l'entrée doit rester au niveau H au moins aussi longtemps que la
durée de l'impulsion de sortie du monostable. En effet, si le signal présent à l'entrée
repasse au niveau L avant la fin de cette période, la tension au point VR repasserait
à une valeur proche du niveau logique L et la sortie repasserait donc au niveau L.
L'impulsion de sortie serait donc écourtée. C'est à cause de cette condition
particulière de fonctionnement que ce type de circuit est classé dans la catégorie des
pseudo-monostables.
226
Ce même type de montage peut aussi être déclenché par une transition d'un niveau
H vers un niveau L, comme indiqué aux figures 9-a et 9-b.
Il est possible d'obvier à cet inconvénient en ajoutant une diode comme le montre le
montage de la figure 11.
228
Dans l'exemple cité à la figure 13, l'allure des tensions aux points A et B et à la
sortie est illustrée à la figure 15.
Le signal au point A est inversé par rapport à celui au point B à chaque transition
avec un retard TD ou T'D dû à la somme des temps de propagation des trois
inverseurs.
230
De même, td et t'd sont les temps de propagation du signal à travers la porte logique
NAND.
Ce circuit intégré est d'un emploi courant dans les montages électroniques. Dans la
figure 16, il est monté en pseudo-monostable (les chiffres indiquent les broches du
circuit).
231
Le montage typique utilisant une bascule D est indiqué à la figure 20-a, alors que la
figure 20-b donne la table de vérité de la bascule.
234
Si on applique à l'instant t1 une impulsion positive sur l'entrée CK, le niveau haut
appliqué à l'entrée D est transféré à la sortie Q. Cette sortie étant au niveau haut, le
condensateur C se charge et il se produit le phénomène décrit précédemment.
L'entrée CLEAR devient active à l'instant t2, ce qui fait repasser Q au niveau bas.
Avec ce montage, une impulsion, même très brève, déclenche la bascule. Cette
même impulsion de commande peut, par ailleurs, être d'une durée supérieure à celle
de sortie. Il s'agit donc ici d'un vrai monostable, aucune condition particulière n'étant
imposée quant à la durée de l'impulsion d'entrée.
A l'état de repos, la sortie Q' de la bascule est au niveau L, donc G est au niveau H
et Q, sortie du monostable, au niveau L. Dans ce cas, le transistor T conduit et court-
circuite le condensateur CEXT, imposant une tension nulle en V1, (entrée - du
comparateur). La sortie du comparateur est donc au niveau H. L'entrée CLEAR de la
bascule est au niveau H, donc inactive.
236
La figure 23 qui suit vous permet de comprendre ce qui se passe quand l'entrée de
commande B passe du niveau L au niveau H.
L'entrée A du circuit qui peut être considérée comme une entrée de validation est
maintenue au niveau bas. A l'instant t1, l'entrée B passe du niveau L au niveau H et
donc l'entrée CK de la bascule également : la sortie Q' passe au niveau H ainsi que
Q.
Il faut noter que l'entrée CLEAR de la bascule D peut être activée à tout moment
grâce à l'entrée CLR du circuit. Il y a donc moyen d'interrompre l'impulsion de sortie
en Q. Ceci est illustré à la figure 24.
1. 3. 3. - MONOSTABLES REDÉCLENCHABLES
C'est une dernière catégorie dont nous n'avons pas parlé jusqu'ici. Si l'on regarde à
nouveau la figure 23, nous voyons qu'une nouvelle impulsion 3 à l'entrée de
commande n'a aucun effet sur la sortie Q du monostable lorsque celui-ci vient d'être
déclenché par l'impulsion 2. On dira que c'est un monostable non redéclenchables.
Par opposition, il existe des montages monostables redéclenchables, c'est-à-dire
qu'une nouvelle impulsion de commande survenant pendant que le monostable est
déclenché est prise en compte et prolonge l'impulsion de sortie d'une durée
équivalente à celle écoulée entre le début de la première commande et le début de la
seconde. Ceci est illustré à la figure 25.
238
La durée totale T' est bien la somme de T (constante de temps du circuit) et «t3-t2».
Une suite suffisamment rapprochée d'impulsions à l'entrée E maintiendrait en
permanence la sortie S au niveau H.
Le schéma comporte une seule différence avec celui de la figure 20. En effet, à la
figure 26, vous constatez que la diode D est reliée à l'entrée et non plus à la sortie.
A chaque fois que l'entrée est ramenée au niveau L puis au niveau H, un nouveau
cycle de charge du condensateur recommence.
Pour déclencher ce monostable, il est possible d'utiliser les quatre entrées A1, A2,
B1 et B2.
Il suffit d'envoyer une transition positive soit sur B1, soit sur B2, à condition que
l'autre entrée (B1 ou B2) soit au niveau H et que l'une des deux entrées A1 ou A2 au
moins soit au niveau L.
2. 1. - DÉFINITION ET FONCTION
Une transition d'un niveau logique L à un niveau logique H, appliquée à l'entrée d'un
inverseur, peut être schématisée comme indiqué à la figure 28.
Or, ceci est une vision purement théorique. Les signaux réels s'éloignent de cette
représentation théorique et appliqués au même circuit logique, auraient la forme
représentée à la figure 29.
Il apparaît donc qu'un signal logique met un certain temps (ici t2 - t1) pour passer
d'un état logique à un autre.
Une deuxième remarque s'impose. Si l'on se réfère à la figure 30-a, il apparaît que la
tension présente des variations dues aux parasites ou aux «bruits».
Ces derniers sont définis comme des perturbations ou des variations de tension à
petite échelle sur un signal électrique.
Il a donc été nécessaire de concevoir des circuits logiques qui puissent palier ces
deux types d'inconvénients.
Les deux instants de basculement sont les deux instants où le signal franchit pour la
première fois le seuil considéré. Il est évident que plus la différence (VT+) - (VT-) est
importante, plus ce circuit sera fiable et insensible aux fluctuations parasites
superposées au signal originel. Cet écart de tension entre les deux seuils est appelé
hystérésis. C'est une caractéristique propre à un trigger de Schmitt. Le cycle
d'hystérésis est représenté à la figure 32.
243
Les flèches sur ce schéma indiquent le sens de parcours des tensions à l'entrée et à
la sortie du trigger.
Il apparaît clairement que la sortie passe du niveau L au niveau H dès que le seuil
VT+ est franchi à l'entrée de la bascule (flèche bleue). De même, il faut que la
tension d'entrée descende à VT- pour que la sortie passe du niveau H au niveau L
(flèche rouge).
La différence (VT+) - (VT-) constitue également la «marge de bruit» qui est l'écart de
tension qu'un signal peut avoir sans entraîner d'incident particulier sur le
fonctionnement d'un circuit. La figure 33 présente l'allure d'un signal présent à
l'entrée d'une bascule de Schmitt.
A un moment donné, l'entrée a franchi le seuil VT+, la sortie est donc au niveau H.
2. 2. 1. - TRIGGER DE BASE
Les deux résistances sont montées en pont diviseur de tension. L'entrée du buffer a
une résistance très élevée, de l'ordre de quelques dizaines de MΩΩ (en technologie
CMOS). L'effet de ce buffer sera donc négligé sur le pont diviseur de tension. Pour
cela, R1 et R2 auront des valeurs assez grandes. Par exemple, R1 = 22 kΩ Ω et R2 =
100 kΩΩ.
La tension V1 de basculement que l'on appelle VT+ est donc donnée par la relation
.
246
Si l'on remplace dans le cas présent R1 et R2 par leur valeur et sachant que la
tension d'alimentation est de 5 volts, on obtient une tension de basculement de :
Tant que la tension V1 restera supérieure à la tension de seuil inférieur VT-, la sortie
S restera au niveau H (donc à la tension Vcc).
d'où :
On obtient la relation :
Ici, nous n'utilisons pas de résistances. Ce trigger est représenté à la figure 37. Il
comprend trois portes NAND à trois entrées réalisées en technologie CMOS. Le
fonctionnement de ce trigger utilise la propriété suivante : la tension du seuil de
basculement est fonction du nombre d'entrées reliées ensemble sur lesquelles est
appliqué le signal de commande. Ce seuil sera d'autant plus élevé qu'il y aura
d'entrées reliées ensemble.
Si l'on veut réduire l'hystérésis à 1 / 6 de Vcc, il faut réunir seulement deux entrées
de la porte 1. Ceci est indiqué à la figure 38.
248
Ce circuit particulier est souvent utilisé comme bascule de Schmitt disponible sous
forme de circuit intégré de la famille CMOS.
Le montage est celui indiqué à la figure 39. A l'entrée est appliqué un signal
sinusoïdal de fréquence F. A la sortie, on obtient un signal rectangulaire de
fréquence identique F. Les deux résistances R1 et R2 constituent un pont diviseur de
tension et C est un condensateur qui sert à découpler le signal d'entrée par rapport à
l'entrée du trigger de Schmitt.
249
Si l'on veut obtenir un signal carré à la sortie, on choisira de fixer une tension V1 qui
soit égale à (VT+) - (VT-) / 2. Ceci apparaît clairement à la figure 40.
Ce montage peut servir à convertir une tension sinusoïdale produite par une
génératrice tachymétrique en un train d'ondes possédant une fréquence
proportionnelle à la vitesse de rotation de la génératrice.
250
2. 3. 2. - CIRCUIT ANTI-REBOND
Dans le montage présenté à la figure 41, il s'agit de délivrer une impulsion de tension
sans que se manifeste un phénomène de rebond à la fermeture du contact.
2. 3. 3. - DÉTECTEUR DE LUMIÈRE
3. 1. - DÉFINITION ET FONCTION
Tout d'abord, il existe des signaux sinusoïdaux utilisés dans les techniques de
radiocommunication. C'est l'onde porteuse du signal radio et du signal T.V.. Ce type
d'onde est généré également dans les synthétiseurs de notes musicales, dans la
technologie du radar...
Ensuite, le deuxième type de signal qui nous intéresse plus particulièrement ici, est le
signal rectangulaire, propre à la technologie numérique.
La fonction principale de ce signal dans les circuits logiques est de fournir une
horloge appelée généralement clock. Cette horloge est nécessaire dans les circuits
logiques synchrones où les changements d'état logique en différents point du circuit
se font soit au front montant, soit au front descendant de l'horloge.
Actuellement, les circuits d'horloge se rencontrent dans les ordinateurs, dans les
appareils de mesure du temps, de la fréquence, pour la transmission de données....
A la mise sous tension du montage, la tension Vc est nulle et la sortie est donc au
niveau H.
Note :
Ω, C = 0,1 µF, Vcc = 5 volts, VT+ = 3,05 volts, VT- = 1,95 volt, on
Pour R = 100 KΩ
trouve :
Ce montage est donc simple mais présente un inconvénient. En effet, les seuils VT+
et VT- sont fonction de la tension d'alimentation Vcc ; ce montage ne présente donc
pas une stabilité absolue en fréquence, mais peut avoir des fluctuations liées aux
variations de la tension Vcc. Pour une variation de Vcc de 5 volts à 15 volts, la
fréquence peut varier de 4 à 5 %.
Néanmoins, ce montage peut être employé pour des applications ne nécessitant pas
une grande stabilité et une grande précision.
Il en est ainsi pour les trois inverseurs. La lettre «a» sur la figure 47, montre
l'évolution du point VI au point V3. L'entrée VI re-bascule donc après 3 ∆T. La
∆T.
Si n est le nombre d'inverseurs, la fréquence d'oscillation vaut 1 / 2n∆
Ce montage est présenté à la figure 50. La fréquence d'oscillation est donnée par la
Par ailleurs, les valeurs de C et de R1 ne doivent pas être trop faibles, car l'inverseur
2 ne peut fournir un courant en sortie très élevé.
Il est toujours possible de mettre une résistance R1 variable. Ceci permet d'ajuster
la fréquence de sortie de l'oscillateur.
A l'instant t3, le point B est au potentiel + Vcc / 2, donc l'inverseur 1 bascule ainsi
que l'inverseur 2.
La sortie S qui se trouvait à + Vcc passe au potentiel 0 volt, soit un front négatif de -
Vcc qui est transmis intégralement au point B par le condensateur C. Ce point B qui
était à un potentiel de + Vcc / 2 passe donc à :
260
Ce circuit déjà utilisé dans un montage pseudo-monostable peut l'être pour constituer
un oscillateur. Son schéma est indiqué à la figure 54.
L'interrupteur I est fermé lorsque Q est au niveau L et ouvert lorsque Q est au niveau
H, ainsi qu'à la mise sous tension.
261
La période T du signal rectangulaire, ainsi que le rapport cyclique ℜ, sont donnés par
les formules suivantes :
T = 0,7 (2 RB + RA) C
Il est donc possible de faire varier ces deux paramètres en modifiant les valeurs
respectives des trois composants RA, RB et C.
Presque tous les montages vus précédemment utilisent des réseaux RC.
Ces montages peuvent avoir une stabilité insuffisante pour certaines réalisations.
Des oscillateurs à quartz sont donc utilisés quand une stabilité élevée est requise
pour un montage.
Ce critère de stabilité intervient dans les horloges mesurant le temps dans lesquelles
une stabilité de 10-6, soit 1 seconde sur 13 jours environ, est couramment atteinte.
Dans les circuits numériques travaillant à leur vitesse limite, une grande stabilité est
également nécessaire pour ne pas dépasser les normes de fonctionnement des
circuits intégrés.
Ce sont :
La figure 58-b montre l'aspect du boîtier couramment utilisé pour les quartz.
b) L'effet piézo-électrique.
Dans les oscillateurs électriques, on utilise une lamelle de quartz taillée dans le
cristal selon l'un des axes vus précédemment.
Lorsque l'on applique une tension alternative aux bornes de cette lamelle, celle-ci se
déforme et entre en vibration mécanique.
On remarque que l'amplitude des vibrations mécaniques est maximale pour une
certaine fréquence de la tension alternative : ceci constitue la fréquence de
résonance de la lame de quartz qui dépend principalement de l'axe choisi pour la
taille, des dimensions, et de l'épaisseur de cette lamelle.
265
• L =3H
• Cs = 0,05 pF
• R = 2 kΩ
• Cm = 10 pF
c) Oscillateurs à quartz.
On peut donc imaginer deux types d'oscillateurs selon que l'on utilisera la résonance
série ou la résonance parallèle.
Toutefois, les oscillateurs à résonance série sont plus précis et plus stables car ils
oscillent rigoureusement sur la fréquence du cristal lui-même.
Par contre, les oscillateurs utilisant la résonance parallèle sont tributaires de la valeur
de la capacité de montage Cm et d'autres capacités parasites du montage. Celles-ci,
mises éventuellement en parallèle sur le quartz, peuvent faire varier la fréquence de
l'oscillateur.
C'est donc les premiers que nous retiendrons généralement pour l'utilisation dans les
montages logiques ou à microprocesseurs.
267
Tout oscillateur est constitué d'un amplificateur et d'une réaction du signal de sortie
en phase avec le signal d'entrée.
Ici, les deux inverseurs en série jouent le rôle d'un amplificateur non inverseur alors
que la réaction est opérée par le quartz qui, à sa fréquence de résonance série, se
comporte comme une simple résistance et n'apporte donc aucun déphasage.
Au point milieu des deux résistances est prélevé le signal rectangulaire de sortie.
Dans cette nouvelle leçon, nous envisagerons deux méthodes pour représenter les
nombres et nous aborderons les opérations qui s'y rattachent.
Chacune de ces méthodes fait appel à un système de numération dont la base est
différente.
La plus répandue, que vous connaissez bien, est celle qui utilise la base 10. L'autre,
employée dans les circuits numériques, est à base 2.
Nous n'allons pas reprendre toutes les notions d'arithmétique apprises à l'école mais
nous chercherons surtout à revoir certains points. Ces derniers vous seront utiles
pour une meilleure compréhension de l'arithmétique employée dans les circuits
d'électroniques.
1. - LA NUMÉRATION DÉCIMALE
Les nombres, quel que soit le système de numération utilisé, représentent des
signaux dont nous pouvons tirer des informations si nous connaissons le ou les
codes qui les régissent.
Les graphismes qui se sont généralisés pour nous, sont ceux qui nous ont été
transmis par les Arabes et qui constituent les chiffres arabes.
En effet, ces graphismes, alignés à la suite les uns des autres, seront affectés d'un
poids en fonction de leur rang (le poids le plus faible étant affecté au rang le plus à
droite).
Ce poids, ou valeur, accordé au rang est variable selon la base du système utilisé
pour la numération.
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }
Ils constituent la suite des chiffres arabes de zéro à neuf (10 symboles pour la base
10).
269
En utilisant ces règles strictes et à l'aide de ces symboles, nous pouvons représenter
tous les nombres entiers ou fractionnaires.
La figure 1 illustre, à l'aide des règles citées, la représentation du nombre 2048 (deux
mille quarante huit) en base 10. Il s'agit d'un nombre entier.
Un nombre est dit entier quand il représente un rapport complet (quand ce rapport
forme un tout). Exemple : 74, 127, 1230, 2048 sont des nombres entiers.
Un nombre est dit fractionnaire quand, par opposition, il ne représente pas un rapport
entier et qu'il est l'expression d'une fraction.
Un nombre décimal est le résultat d'une fraction dont le dénominateur est une
puissance de 10.
La partie décimale est séparée de la partie entière par une virgule (les anglo-saxons
remplacent la virgule par un point).
Cette façon d'attribuer un poids croissant selon le rang occupé par le chiffre à
l'intérieur du nombre s'appelle en terme général, une numération de position.
Dans le nombre, le chiffre qui occupe le poids le plus élevé se nomme : le chiffre le
plus significatif ou en abrégé C.L.P.S..
A l'opposé, celui qui occupe le rang le plus faible se nomme : le chiffre le moins
significatif ou C.L.M.S..
Le déplacement de cette virgule d'un rang vers les puissances positives de la base,
correspond à une division du nombre par la base.
Cette numération de position qui distribue un poids à chaque rang prend aussi le
qualificatif de pondérée (du latin «pondus» qui signifie poids).
Le système de numération à base 10 est un cas parmi bien d'autres, car nous
pouvons utiliser d'autres bases pourvu que celle que l'on choisit soit un nombre
entier au moins égal à 2.
Par conséquent, pour savoir dans quelle base le nombre est représenté, il faudra le
faire suivre d'un indice précisant cette base.
Exemples :
10002 représente le nombre un, zéro, zéro, zéro en base 2 (ce nombre correspond
à 8 en base 10).
Dans les relations humaines, nous n'utilisons pratiquement que des nombres en
numération décimale et, de ce fait, l'indice précisant la base disparaît.
Il faut noter également qu'un nombre représenté dans un autre système (autre que la
base 10), ne doit pas être prononcé de la même manière, mais en énumérant, du
poids le plus fort vers le poids le plus faible, chaque chiffre ou graphisme constituant
ce nombre.
2. - LA NUMÉRATION BINAIRE
Comme son nom l'indique, il est fondé sur deux valeurs représentées par les
graphismes suivants : { 0 , 1}.
Nous retrouvons les trois points principaux utilisés aussi en décimal, c'est-à-dire :
• le graphisme
• la pondération
• la base de numération.
Cette même quantité est représentée par deux graphismes en base 10 alors qu'il en
faut 5 en base 2.
La base constitue en quelque sorte un récipient. Pour mesurer une quantité donnée,
plus le récipient est grand, plus le nombre de récipients comptabilisant, ou contenant,
cette quantité sera faible.
• en base 2, on pourra compter de 0 à 1510 (de 0 à 11112) alors qu'en base 10,
on pourra compter de 0 à 999910.
27 = 16 + 8 + 2 + 1
Exemples :
Les nombres binaires sont, pour nous, difficiles à manipuler et compliqués à lire.
Quand un dialogue doit s'établir entre le technicien et la machine, on a recours au
codage de l'information binaire. Par exemple, le code BCD (Binaire Codé Décimal),
permet de lire ou de transposer plus facilement l'information.
Chaque groupe de quatre bits (bit = binary digit = chiffre binaire) représente en
partant de la droite son équivalent décimal et le poids affecté à son rang.
En BCD, il devient :
Dans certaines machines, quand il est nécessaire d'introduire des données, on utilise
une autre base de numération. Il s'agit de l'hexadécimal (base 16).
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }
On évite ainsi l'écriture d'un grand nombre de graphismes, supprimant par là les
erreurs d'inattention.
En continuant dans cette voie, il suffit que l'interpréteur soit à même de comprendre
un langage proche du langage parlé et le dialogue avec la machine se simplifie
considérablement. C'est l'orientation qui est donnée depuis quelques années déjà
pour les ordinateurs et les langages dits : «évolués».
{ 0, 1, 2, 3, 4, 5, 6, 7 }
Nous allons nous attarder un peu sur ces codes et prendre un exemple.
Nous allons chercher quelle est la plus grande puissance de 2 comprise entièrement
et une fois dans le nombre décimal.
35 - 32 = 3
Reste : 3 - 2 = 1
99 = 26 + 25 + 21 + 20
Pour passer du décimal à l'octal, il est un moyen simple qui consiste à passer par le
binaire.
Le nombre binaire, équivalent du nombre décimal, que l'on désire transformer, est
scindé par tranches de trois chiffres en commençant par la droite. Chaque groupe de
trois chiffres représente un nouveau nombre. Chacun de ces nombres est transposé
280
Le fait d'ajouter deux zéros en tête du nombre binaire ne change rien au nombre.
Parce que la base 8 correspond à une puissance entière de 2 (donc de la base 2),
en effet, 8 = 23. Dans la base 8, les graphismes ou chiffres que l'on peut attribuer aux
rangs vont de 0 à 7. Pour obtenir ces chiffres en binaire, il faut disposer de trois
rangs :
Il apparaît nettement que trois rangs, ou poids consécutifs pour représenter les sept
chiffres dont est constitué le système octal, sont nécessaires et suffisants.
Dans cet exemple, le nombre hexadécimal ne comporte pas de lettre. Nous avons vu
à la figure 7 que ce système au delà de 9 comportait les lettres :
A, B, C, D, E, F
281
Ces lettres sont indispensables car il n'y a pas de chiffres prévus dans ce cas. On
pourrait très bien en inventer, n'importe quel dessin ferait l'affaire, mais, en
électronique digitale (instructions des microprocesseurs), elles sont employées
officiellement. De plus, il faudrait leur donner une prononciation.
Voyons maintenant un exemple utilisant ces lettres. Soit à transposer 23410 en son
équivalent en base 16 (hexadécimal). La figure 10 donne tout d'abord le déroulement
des opérations pour le passage en binaire.
Cette façon de représenter un nombre avec des lettres peut paraître surprenante,
mais si vous réalisez des automatismes à microprocesseurs, vous devrez entrer les
instructions en hexadécimal et cette notation vous paraîtra alors naturelle.
Pour représenter les dix chiffres de cette base, il faut, malgré tout, quatre rangs de
poids binaires. Ceux-ci sont, par conséquent, mal exploités puisqu'ils permettent la
représentation des seize symboles.
Avec la numération, nous avons vu les chiffres et la manière la plus courante de les
organiser pour constituer les nombres.
282
La valeur numérique absolue est une des déterminations possibles d'une quantité
variable.
La valeur absolue d'un nombre est précédée du signe + (plus), quand ce nombre est
supérieur à zéro.
Dans le cas où ce nombre est inférieur à zéro, la valeur absolue est précédée du
signe - (moins).
Par convention, les nombres positifs ne sont pas représentés avec leur signe +.
Pour résumer :
la valeur absolue d'un nombre est la valeur qui lui est affectée par le système
de numération adopté et sans tenir compte de son signe. Cette valeur est
représentée entre 2 tirets verticaux :
Pour plus de précision et afin de dissocier le signe du nombre et celui des opérations
que l'on peut effectuer avec les nombres relatifs, ces derniers devraient être
représentés par leur valeur absolue et leur signe entre parenthèses.
Dans les calculs courants, par simplification, on omet, à tort, les parenthèses.
283
Le complément d'un nombre est le nombre qu'il faut ajouter au premier pour en
obtenir un troisième, désigné par avance et servant en quelque sorte de référence.
Exemple :
87 - 75 = 12
L'importance du complément à une valeur arbitraire (comme dans cet exemple : 87)
n'est pas évident, sauf dans le cas de la soustraction.
Il existe, par contre, des cas particuliers, comme les compléments à 9 ou à 10 (en
système décimal), ainsi que les compléments à 1 ou à 2 (en système binaire), qui
nous serviront pour la réalisation des opérations dans les systèmes numériques
(soustraction et division).
Évidemment, dans ces systèmes qui utilisent la numération binaire, il s'agit des
compléments à 1 et à 2, mais pour une meilleure approche de ce processus, nous
commencerons par les compléments dans la numération à base 10.
4. 3. 1. - COMPLÉMENT A 9
Exemple :
Ce vocable est destiné à définir la valeur numérique qu'il faut ajouter à un nombre
désigné pour obtenir la puissance immédiatement supérieure à ce nombre, dans la
base utilisée, moins l'unité.
Exemple :
103 ou 1000
1000 - 1 = 999
4. 3. 2. - COMPLÉMENT A 10
Là encore, il s'agit d'un vocable qui est destiné à définir la valeur numérique qu'il faut
ajouter à un nombre désigné pour obtenir la puissance immédiatement supérieure à
ce nombre, dans la base utilisée.
Exemple :
Autre façon :
871 + 1 = 872
Les figures 11-a et 11-b représentent les compléments à 9 et à 10 pour les nombres
de 1 à 9.
4. 3. 3. - LE COMPLÉMENT A 1
Pour résumer, le complément à 1 d'un nombre binaire est la valeur numérique qu'il
faut ajouter à ce nombre pour obtenir la valeur numérique immédiatement inférieure
à celle de la puissance supérieure.
Exemple :
Posons l'opération :
Il faut noter qu'il suffit de remplacer les 0 par des 1 et vice-versa pour trouver le
complément à 1 d'un nombre binaire, la procédure est donc très simple.
4. 3. 4. - COMPLÉMENT A 2
Puisqu'il s'agit de la valeur numérique qu'il faut ajouter à un nombre déterminé pour
obtenir la valeur de la puissance immédiatement supérieure, on peut l'obtenir en
prenant le complément à 1 et en lui ajoutant 1.
Exemple :
Dans les systèmes numériques, c'est la façon précédente qui est utilisée car elle est
plus facile à obtenir.
Ces règles font l'objet du présent chapitre et toujours par souci d'une meilleure
approche, nous décrirons ces opérations en système décimal, puis en système
binaire.
Les opérations de base que l'on est amené à mettre en oeuvre dans les systèmes
numériques sont :
Lorsque l'on écrit ces opérations qui portent sur des nombres, on doit les distinguer
les unes des autres par des symboles conventionnels qui sont les suivants :
• la somme ou addition : +
• la différence ou soustraction : -
• le produit ou multiplication : X
• le quotient ou division : /
• l'élévation de puissance : Nn
• l'extraction de la racine :
Les signes des opérateurs somme et produit ne devront pas être confondus avec
ceux employés fréquemment pour les opérations logiques correspondant à l'union et
à l'intersection (on emploiera de préférence, pour les opérations logiques, les
symboles suivants : ∪ pour l'union et ∩ pour l'intersection).
Les nombres relatifs sont représentés par une valeur numérique absolue associée à
un signe positif (+) ou négatif (-) selon qu'ils sont plus grands ou moins grands que
zéro.
288
Ce signe relatif, lié à cette valeur absolue, pour ne pas être confondu avec le signe
de l'opérateur, est placé, ainsi que la valeur absolue, entre deux parenthèses.
Exemple :
Exemple :
Exemple :
• (+ 5) x (+ 5) = (+ 25)
• (- 5) x (- 5) = (+ 25)
La valeur absolue du produit de deux nombres relatifs est négative, si ces deux
nombres sont de signes contraire.
Exemple :
• (+ 12) x (- 3) = (- 36)
La valeur absolue du quotient de deux nombres relatifs est positive, si les deux
nombres sont de mêmes signes.
Exemple :
• (+ 12) / (+ 3) = (+ 4)
• (- 12) / ( - 3) = (+ 4)
L'écriture sur une seule ligne avec la barre inclinée, symbole du quotient, est une
notation plus commode du point de vue dactylographique.
Exemple :
• (+ 12) / (- 3) = (- 4)
• (- 12) / (+ 3) = (- 4)
5. 1. - L'ADDITION DÉCIMALE
Pour l'addition, plus de deux termes peuvent être disposés les uns en dessous des
autres.
Nous additionnerons ensuite les chiffres de la colonne la plus à droite (de poids le
plus faible).
On additionne ensuite les chiffres alignés dans la seconde colonne, plus le report s'il
existe et ainsi de suite jusqu'à la dernière colonne occupée.
La somme ou addition ne se limite pas aux nombres positifs, comme nous l'avons vu
au début de ce chapitre, mais à l'ensemble des nombres relatifs.
D'une manière générale, elle donne pour résultat la somme des valeurs absolues
quand les nombres sont de même signe et la différence s'ils sont de signes
contraires.
Le signe du résultat est le même que celui des deux nombres qui a la plus grande
valeur absolue.
Exemple :
5. 2. - L'ADDITION BINAIRE
• 1310 ⇒ 11012
• 510 ⇒101 2
Les mêmes règles de signes s'appliquent aussi dans le cas des opérations binaires.
On commence la soustraction par la colonne la plus à droite (de poids le plus faible)
en prenant comme résultat le complément au chiffre soustrait, du chiffre
soustracteur.
Le chiffre soustrait est celui qui fait partie du nombre soustrait ; ce dernier
correspond au premier terme.
Le chiffre soustracteur est celui qui fait partie du nombre soustracteur ; ce dernier
correspond au second terme.
Ainsi, nous pouvons réaliser la soustraction, le nombre soustrait n'est plus 5, mais :
10 + 5 soit 15, auquel nous pouvons retrancher 6. La différence est 9.
Cet emprunt d'une unité dans la colonne des dizaines, il faut à présent le retrancher
dans cette même colonne, sans quoi le nombre soustrait (75) verrait sa valeur
numérique modifiée (elle deviendrait égale à 85).
Une fois cette retenue effectuée, la soustraction peut continuer jusqu'à la dernière
colonne occupée.
Dans le cas où le nombre soustrait a une valeur numérique plus élevée ou égale au
nombre soustracteur, l'opération est possible et le résultat est positif ou nul.
Dans le cas où le nombre soustrait a une valeur numérique inférieure, pour effectuer
l'opération, on utilise un artifice. Il en existe plusieurs, le plus simple consiste à
inverser les termes :
Ceci est une méthode rapide et pratique, car on peut utiliser aussi l'emprunt dans la
colonne immédiatement supérieure. Dans ce cas, on obtient le complément à 100 du
résultat.
5. 4. - LA SOUSTRACTION BINAIRE
Dune façon générale, les opérations décimales ou binaires obéissent aux mêmes
règles.
Si le chiffre soustrait a une valeur numérique plus faible que celle du chiffre
soustracteur, il y a emprunt au terme soustrait de la colonne de poids immédiatement
supérieur.
Là encore, on constate une grande simplicité dans cette table par rapport à celle de
la soustraction décimale.
• 1110 ⇒ 10112
• 510 ⇒ 1012
L'emprunt généré par l'opération de la colonne 22 est reporté sous forme de retenue
au nombre de la colonne de poids immédiatement supérieure (soit 23).
Les mêmes remarques que pour la soustraction décimale peuvent s'appliquer aussi
dans ce cas.
Les tables de multiplication sont faites pour nous éviter ces suites d'additions.
La partie en cyan génère un report qui devra être ajouté au produit suivant.
Lorsque l'un de ces produits génère un report, celui-ci sera additionné au produit
suivant.
Quand ces produits sont effectués, ils constituent le premier résultat partiel.
Ce second résultat partiel sera positionné sous le premier et en le décalant d'un rang
vers les poids plus élevés, car il s'agit d'un produit obtenu avec le chiffre du
multiplicateur occupant le rang de poids 101.
298
S'il y en a, les autres résultats partiels seront disposés sous les précédents, en
respectant le décalage dû au rang du chiffre multiplicateur.
5. 6. - LE PRODUIT BINAIRE
Du système binaire, basé sur deux éléments, découle une simplification du calcul.
Cette simplification est encore plus sensible avec la multiplication. En effet, cette
299
Comme pour le système à base 10, la multiplication par 0 entraîne un résultat égal à
0. La multiplication par 1 entraîne la recopie du multiplicande.
• 1110 ⇒ 10112
• 2010 ⇒ 101002
300
Le quotient, qui est l'opération inverse du produit, est par conséquent, une suite de
différences ou soustractions (le produit étant une suite d'addition).
Le quotient est composé d'un nombre à diviser, que l'on nomme le dividende, d'un
nombre diviseur, que l'on nomme diviseur.
Le nombre de fois que l'on peut soustraire le diviseur du dividende, jusqu'à ce que
cela ne soit plus possible, nous donne le quotient. Si la dernière soustraction indique
un résultat nul, le quotient est dit entier (ou exact).
Nous pouvons soustraire cinq fois le nombre 15 du nombre 75, par suite, le quotient
est 5 et puisque le dernier résultat est nul, le quotient est entier.
S'il n'en est pas ainsi, le quotient est dit approché et la division comporte un reste.
Nous sommes en présence d'un quotient exact (135), la dernière différence étant
égale à zéro. Le nombre 405 est un multiple de 3.
• la multiplication
• la soustraction.
303
Ces opérations sont décrites aux chapitres 5.5 et 5.3 ainsi que les tables
correspondantes.
Ces opérations sont plus faciles à effectuer qu'à énumérer, car nous avons acquis
des automatismes.
Il n'est pas question de remettre en cause ces automatismes, mais ils font parfois
oublier les processus élémentaires que nous utilisons pour des tâches fréquentes.
5. 8. - LE QUOTIENT BINAIRE
• la multiplication ou produit
• la soustraction ou différence.
Ces opérations nous sont familières, leurs tables sont représentées dans les figures
22 et 18.
La figure 26 représente la procédure utilisée qui est tout à fait analogue à la méthode
employée en décimal.
La division s'arrête là, car le reste est égal à zéro et il n'y a plus de chiffre, au
dividende, à combiner avec le reste.
Les systèmes numériques, quand ils sont câblés ou programmés pour effectuer
certaines fonctions, remplissent leur tâche à chaque fois qu'ils sont sollicités et ceci
indéfiniment (ou presque), sans fatigue, ni lassitude et à très grande vitesse.
Ils peuvent répéter des procédures longues, sans erreur, avec pour seules initiatives
celles que le technicien aura prévu dans leur programmation.
Ces systèmes sont donc disciplinés mais sans imagination, ce qui implique que la
marche à suivre leur sera indiquée avec ordre et méthode ; chaque étape devra leur
être dictée et décortiquée.
Il apparaît que le technicien doit avoir une parfaite connaissance du problème que sa
machine devra traiter seule par la suite.
305
Dans le cas qui nous intéresse pour l'instant, il serait souhaitable de trouver une
procédure universelle pour la réalisation de ces opérations et en fonction de
l'opérateur (désignation de l'opération), certaines étapes pourraient être rendues
transparentes.
Si cette solution peut paraître longue, nous savons que cela ne présente pas
vraiment un gros inconvénient, compte-tenu de la vitesse à laquelle ces calculs sont
effectués (sauf pour des cas particuliers : calculs de balistique... où la vitesse de
calcul est primordiale).
Le registre
Avant d'approcher ces méthodes, il faut encore préciser quelques points. A ce sujet,
nous allons empiéter sur la suite, en parlant de registre.
Lorsque l'on désire effectuer une opération dont le résultat ne peut être trouvé
mentalement, on prend une feuille de papier et l'on y inscrit les nombres : on pose
l'opération.
Si l'on est appelé à une autre tâche urgente à ce moment là, celle-ci achevée, nous
revenons auprès de notre feuille de papier sur laquelle nous retrouvons les nombres
précédemment enregistrés.
Si nous entrons des informations dans une machine numérique, à l'aide d'un clavier,
avant d'effectuer des transformations sur ces informations, il faut les stocker, les
mettre en mémoire.
Nous savons que les nombres décimaux (langage de l'être humain) lorsqu'ils sont
exprimés en binaire (langage de la machine) utilisent un plus grand nombre de poids,
et par conséquent, leur écriture est plus longue.
306
Par exemple, si on veut entrer dans la machine des nombres dont la valeur
numérique n'excède pas 255, il faudra huit cellules élémentaires de registre en
binaire alors qu'il en faudrait trois en décimal.
En résumé, un registre est une mémoire dans laquelle on peut stocker des nombres
binaires. Une de leurs caractéristiques principales, est la valeur numérique maximale
qu'ils peuvent mémoriser, on parle aussi de capacité ou longueur du registre.
Vous apprendrez dans les prochaines leçons consacrées à ces registres, comment
on entre ces informations, comment elles y restent et comment on y accède.
Ces registres sont très importants car ils conditionnent la capacité de calcul du
système. Imaginons que notre feuille de papier ne soit pas assez grande pour y
inscrire des nombres de plus de trois chiffres, on comprend que les calculs seront
vite limités.
D'autre part, nous savons qu'un nombre est caractérisé par sa valeur numérique
absolue et par son signe.
Il faut donc trouver une méthode qui permette de lier un signe à la valeur numérique
binaire.
Pour un nombre positif, le bit de signe est 0. Si au contraire il est négatif, le bit de
signe est 1.
Exemple :
Dans le cas d'un système numérique, par exemple une calculatrice de poche, la
longueur des registres est définie et immuable. S'ils sont constitués de huit cellules,
la représentation de ces nombres est la suivante :
La seconde méthode qui fut employée, n'utilise pas le bit de signe de la même
manière.
En effet, si l'on décompte des valeurs positives vers 0, celui-ci aura pour expression
0. Si l'on décompte des valeurs négatives vers 0, celui-ci aura pour expression 1.
308
Cette méthode crée une ambiguïté dont les systèmes numériques ne peuvent
s'accommoder sans l'utilisation de subterfuges.
Elle consiste, pour les nombres positifs en leur représentation en binaire pur
précédée d'un 0.
La complémentation intervient aussi sur le bit de signe et les nombres négatifs sont
précédés d'un 1.
Exemple :
L'utilisation des nombres relatifs impose une diminution de la capacité des registres,
puisqu'une cellule sera réservée au signe.
De même, il ne faudra pas oublier de faire précéder d'un 0 tous les nombres positifs.
Ces deux points sont très importants.
6. 2. - PRÉCISION MULTIPLE
Nous avons parlé de mots de huit bits ou octets. Dans les systèmes numériques,
un mot, quel que soit le nombre de bits, peut prendre l'appellation de «byte» (terme
anglo-saxon).
Nous venons de voir qu'avec un octet, il était possible de représenter 256 valeurs (+
127 à - 128 y compris 0).
310
Il est évident que pour la majorité des calculs, c'est très insuffisant. Il faut donc avoir
recours à un artifice.
On peut étendre le nombre de cellules des registres, mais cela conduit à certains
problèmes au niveau des circuits intégrés.
On peut aussi utiliser plusieurs fois huit bits. Par exemple, si les nombres sont
codés sur deux octets, on peut représenter 65 536 valeurs numériques, ce qui
représente les nombres relatifs de (+ 32 767) à (- 32 768) en passant par 0.
Le nombre ainsi représenté se compose de deux fois huit bits, les huit bits de poids
les plus faibles constituent le mot le moins significatif (M.M.S.) et les huit bits de
poids les plus forts, le mot le plus significatif (M.P.S.).
Quand on utilise que deux octets, nous dirons qu'il s'agit de la double précision.
Dans les machines à calculer, cette résolution n'est pas encore suffisante. On utilise
plusieurs mots ou plusieurs octets (les mots ne sont pas forcément organisés en
octets).
Selon la résolution désirée, on est amené à employer trois ou quatre mots, ainsi la
précision est nettement suffisante.
On comprend aisément que si la procédure est plus longue, le résultat est obtenu un
peu plus tard.
Pour un nombre binaire, de même qu'en décimal (nous en avons parlé au chapitre
1), le chiffre qui occupe le rang de poids le plus élevé a pour appellation : le bit le
plus significatif ou B.L.P.S..
A l'opposé, celui qui occupe le rang le moins élevé : le bit le moins significatif ou
B.L.M.S..
6. 3. - LA VIRGULE FLOTTANTE
Jusqu'à présent, nous n'avons parlé que des nombres entiers, il faut aussi pouvoir
représenter les nombres fractionnaires ainsi que, pour certains cas, les nombres très
grands.
311
La virgule flottante n'est autre que la notation exponentielle (ou notation scientifique)
et elle permet de résoudre le problème de la représentation des nombres très petits
aux nombres très grands.
Ces procédures, précision multiple et virgule flottante, vous seront utiles quand vous
aborderez les microprocesseurs.
Pour l'instant, elles sont décrites pour mémoire et parce qu'elles s'insèrent
normalement dans cette leçon.
Cette notation se compose d'une partie que l'on appelle la mantisse et d'une
seconde que l'on nomme l'exposant.
L'exposant n'est autre que le poids du rang occupé par la partie entière de la
mantisse.
Exemple :
Tous ces nombres commencent par 0 et puisqu'ils sont tous issus de la puissance de
10, on peut très bien adopter le système d'écriture suivant :
0,5 X 10-2 ⇒ (+ 5) (- 2)
0,1 ≤ M < 1
312
Dans ces systèmes utilisant des mots de huit bits ou octets, on peut conserver cette
forme d'écriture en affectant un mot pour la mantisse et un mot pour l'exposant.
Si par exemple on utilise trois octets pour la mantisse et son signe, et un octet pour
l'exposant et son signe, on peut représenter les nombres relatifs dans les limites
suivantes :
Soit en décimal :
Pour résumer, dans les systèmes numériques destinés aux calculs, on utilise pour la
représentation des nombres relatifs, le complément à 2 pour les nombres négatifs, la
précision multiple et la notation exponentielle ou virgule flottante.
Si on utilise quatre octets, trois pour la mantisse et un pour l'exposant, tous les
nombres seront représentés par ce même nombre d'octets, c'est-à-dire qu'ils auront
tous le même format.
313
Soit :
• pour l'exposant 7 bits ⇒ 127 (décimal) plus le signe : ± 127, donc 2±127
• pour la mantisse 23 bits plus un pour le signe, ce qui correspond à : ± 223
L'addition nécessite une opération de recalage qui consiste à rendre les exposants
égaux en valeur absolue, ce qui est impératif dans ce cas, car on ne doit additionner
que des nombres de même poids.
Au chapitre 5.2., nous avons vu le principe de l'addition binaire. Dans les systèmes
numériques, il n'y a aucune différence et elle constitue l'opération de base.
Elle est effectuée à partir de cellules simples (opérateurs logiques) qui constituent les
circuits de logique combinatoire.
Le C.L.M.S. est donné par la sortie du circuit OU exclusif, tandis que le report, ou
C.L.P.S., est fourni par la sortie du circuit ET.
314
Le schéma de cet additionneur est donné à la figure 31 ainsi que sa table de vérité. Il
porte sur l'addition de deux nombres de un bit.
Cette représentation suppose que cet additionneur ne peut recevoir aucun report
extérieur, résultant d'un calcul antérieur.
315
C'est rarement le cas et pour banaliser les circuits, on envisage une entrée
supplémentaire correspondant à ce report.
Les nombres comportant plus de bits sont additionnés de la même manière. Chaque
additionneur verra sur ses entrées des bits de poids identiques.
La figure 33 donne le schéma d'un additionneur portant sur deux nombres de quatre
bits en binaire pur ou naturel. Le premier nombre étant formé des bits a0, a1, a2, a3
et le second nombre de b0, b1, b2, b3. Il n'est pas question ici de nombres signés,
de précision multiple ou de virgule flottante.
Sur ces additionneurs à report anticipé, celui-ci est recalculé pour chaque étage en
fonction des éléments binaires précédents.
7. 2. - LA SOUSTRACTION
Nous avons écrit au début de ce chapitre qu'il serait intéressant d'utiliser une
procédure universelle qui servirait à toutes les opérations. C'est un souhait qui
318
faciliterait bien les choses. Puisque nous venons de décrire l'addition, voyons si ces
circuits ne peuvent servir pour la soustraction.
Nous savons que le complément à 2 (que l'on représente par C2) est utilisé pour
représenter les nombres négatifs.
Effectuer une soustraction revient à réaliser une addition dont le second terme est
négatif.
De plus, il faut savoir que dans les systèmes numériques, les mots ont tous le même
format. Ce format correspond à la longueur des registres.
Exemple :
Dans un système travaillant sur des mots de huit bits, le nombre décimal (+ 4) se
trouve sous la forme : 0000 0100.
Le nombre décimal (- 9), dans la représentation des nombres négatifs par le C2, se
trouve sous la forme : 1111 0111.
On entend, par même format, le fait que ces nombres utilisent pour leur
représentation huit bits. Voyons ce qui se passe avec un exemple.
(+ 9) ⇒ 0000 1001
Que se passe-t-il lorsque le second terme est, en valeur absolue, plus grand que le
premier ?
319
Le résultat donne un nombre ayant un 1 au B.L.P.S. (bit le plus significatif), donc une
valeur négative.
Puisque nous avons opté pour la représentation des nombres par le complément à 2,
si le signe est négatif, la valeur numérique qui suit ne peut être que le complément à
2 du nombre recherché.
Transformons en décimal :
Si ce résultat doit servir à d'autres calculs, il restera dans la machine sous forme de
complément à 2.
Si ce résultat constitue la fin d'un calcul, avant de l'envoyer sur un afficheur afin de le
visualiser (cas d'une calculette), il faudra effectuer le complément à 2 du résultat puis
aiguiller celui-ci et le signe aux afficheurs correspondants.
Par exemple, si nous entrons, toujours dans le cas d'une calculette, un premier
nombre, il sera stocké sous forme binaire.
Avant d'introduire le second nombre, nous indiquons le signe de l'opération. S'il s'agit
d'une addition, le second terme sera stocké dans un second registre sous la même
forme que le premier.
S'il s'agit d'une soustraction, le fait d'introduire le signe -, à l'aide du clavier, démarre
la procédure de complémentation.
Une fois l'opération réalisée (après avoir appuyé sur la touche «=»), si le B.L.P.S. est
un 1, la procédure de complémentation est engagée avant l'envoi du résultat vers
l'affichage.
En général, ces registres ont deux sorties, l'une est la recopie du nombre
précédemment entré, l'autre correspond au complément à 1 de ce nombre (ces
circuits vous seront décrits dans une leçon qui leur est consacré).
Cette seconde sortie est dirigée, le cas échéant, vers un additionneur. Dans celui-ci,
au complément à 1, est ajouté 1 afin d'obtenir le complément à 2.
Pour l'instant, il n'est question que des principes utilisés dans les systèmes
numériques pour effectuer les opérations.
Ces principes sont quelque peu différents des opérations arithmétiques de base,
c'est pourquoi il faut y apporter des précisions, mais il n'est pas encore temps
d'aborder la réalisation pratique et la description détaillée des schémas.
7. 3. - LA MULTIPLICATION
Les deux opérations qui vont suivre, multiplication et division, sont données à titre
d'exemple, car la procédure pratique est quelquefois assez complexe et plusieurs
méthodes sont utilisées. Toutefois, elles s'apparentent à celles décrites ci-dessous.
Nous savons, depuis le chapitre 5.6. que la multiplication binaire est une suite
d'additions dont les termes sont des recopies du multiplicande successivement
décalés.
Là encore, nous constatons un point commun avec les deux opérations précédentes
: l'addition.
Exemple : Soit à multiplier (+ 25) par (+ 5). Nous considérons que les nombres sont
représentés dans la machine par des mots de huit bits et les valeurs négatives par le
complément à 2.
Le B.L.P.S. est 0, donc le nombre est positif et la valeur numérique représentée par
les sept bits suivants correspond à la valeur absolue du résultat :
• 1111101 ⇒ |125|
Soit à multiplier (+ 25) par (- 5). La figure 38 représente cette nouvelle multiplication.
Le B.L.P.S. est à 1, par conséquent, il s'agit d'un nombre négatif et un tel nombre est
représenté par son complément à 2.
La valeur absolue est |125|, le signe étant négatif, nous trouvons pour résultat : (-
125).
Le décalage vers les poids forts s'effectue aussi dans les registres. En fait, au lieu
d'un blanc, comme dans l'exemple, chaque résultat partiel est stocké dans un
registre et on pousse le contenu de celui-ci vers les poids forts en introduisant au
B.L.M.S. un 0.
Les registres sont des circuits très important en électronique. Ils font partie des
circuits dits : séquentiels.
Par ailleurs, le décalage vers les poids forts est utilisé, comme en décimal, pour la
multiplication par une puissance de la base.
Exemple :
• en décimal :
• en binaire : Soit à multiplier 0110 par 010.
0102 est une puissance entière de la base 2 (en décimal 0102 = + 2101).
Dans cet exemple, nous avons effectué le produit par le 0 du B.L.M.S. Par contre, on
ne l'a pas fait pour le 0 du B.L.P.S. ou bit de signe.
De plus, le décalage est ici d'un rang vers les poids forts puisque 102 ⇒ 2101.
L'exposant de la puissance de 2 indique le décalage.
Nous aurions pu prendre à la place de 102, 10002, soit 2103. Le résultat est, dans ce
cas :
7. 4. - LA DIVISION
Il est bon d'en connaître le mécanisme. Toutefois, si ce dernier n'est pas très bien
assimilé, cela n'entraîne pas de conséquences fâcheuses pour la suite du
programme. Il sera toujours temps de revenir sur ce sujet quand bon vous semblera.
010101 / 011
Ces nombres, une fois stockés dans les registres à huit bits se présentent sous la
forme suivante :
• 00010101 - dividende
• 00000011 - diviseur
Pour cette opération, il y a une procédure préliminaire que l'on déclenche par
l'introduction de cet opérateur et qui consiste à reconnaître le rang occupé par le bit à
1 de poids le plus élevé de la valeur absolue du diviseur.
325
Cette opération peut s'effectuer selon le principe illustré figure 40 et que nous allons
décrire.
On y reconnaît le registre de stockage qui nous est familier, suivi d'un multiplexeur
commandé par un décompteur et un opérateur ET que vous connaissez.
La fermeture de chacun de ces interrupteurs est obtenue par une information binaire,
présente à l'entrée du multiplexeur.
Ce circuit possède une seconde entrée, branchée à la sortie de l'opérateur ET, qui
stoppe le décomptage dès que celle-ci passe au niveau logique 1.
Dès que l'entrée «arrêt décomptage» passe à 1, le décompte est stoppé, et la lecture
de l'information binaire, présente en sortie du décompteur indique le rang du bit à 1
de poids le plus élevé de la valeur absolue du diviseur. Le huitième rang, qui
correspond au signe de la valeur absolue, n'est pas pris en compte pour l'instant.
Dans la division décimale, nous cherchons à savoir combien de fois le diviseur est
contenu entièrement dans le nombre formé par autant de chiffres de poids les plus
élevés, que le diviseur en contient.
Autrement dit, on soustrait le diviseur des poids les plus élevés du dividende. Nous
effectuons cette opération mentalement, mais les circuits numériques ne peuvent
procéder ainsi.
soustracteur, dans ce cas, n'est pas contenu dans le nombre formé des poids les
plus forts du dividende.
Nous sommes, par conséquent, obligés dans cette opération de compter avec le bit
de signe.
• Le
dividende
⇒ 0001 0101
• Le
diviseur
⇒ 0000 0011
• Le rang du bit à 1 de poids le plus élevé, augmenté d'un rang pour le signe
⇒ 011
• Le complément à 2 du diviseur
⇒ 1111 1101
Bien entendu, le signe de l'opération reste présent lui aussi, dans le registre
opérateur.
Revenons à l'opération.
328
a) 1ère phase :
Il faut tester le bit de signe pour connaître le résultat de l'opération. Ceci est
relativement facile à obtenir, il suffit, comme dans la figure 40, d'utiliser un opérateur
logique ET sur lequel on envoie le bit de signe sur l'une de ses entrées et un 1 sur
l'autre.
Quand cette sortie est à l'état 1, cela signifie que le diviseur n'est pas contenu dans
le nombre formé par les chiffres de poids les plus élevés du dividende.
Dans ce cas, comme pour la division décimale, nous allons constituer un nouveau
nombre avec un chiffre de rang supplémentaire au dividende.
Le diviseur n'étant pas contenu dans les premiers termes de poids forts du
dividende, le premier chiffre, de poids le plus élevé, du quotient partiel est : 0.
0......
b) 2ème phase :
Le bit de signe du reste est à 1, donc le résultat est négatif, le diviseur n'est toujours
pas contenu dans les termes de poids forts.
329
c) 3ème phase :
Résultat identique aux deux premières phases. Le bit de signe du reste est encore à
1.
d) 4ème phase :
Là, le bit de signe est 0, ce qui signifie que le diviseur est contenu dans les termes
de poids les plus élevés du dividende.
Les additions successives ne porteront plus sur le dividende mais sur le reste
(comme en décimal), l'opération de décalage se poursuit sur la valeur absolue du
reste.
Avant de continuer, il faut s'assurer que la valeur absolue du reste est supérieure à la
valeur absolue du complément à 2 du diviseur. Ce circuit de comparaison vous est
décrit un peu plus loin.
Donc si la valeur numérique absolue du reste est plus grande que celle du C2 du
diviseur, l'opération se poursuit.
330
e) 5ème phase :
f) 6ème phase :
L'opération se poursuit avec le reste décalé deux fois vers la gauche (figure 42-f).
Ce résultat aurait pu être inférieur, mais non égal à 0, et, dans ce cas, la division
s'arrête, mais comporte un reste. Le quotient est alors un quotient approché.
La division portant sur des nombres fractionnaires est également possible, mais la
notation en virgule flottante est préférable et facilite la procédure en ce qui concerne
la position de la virgule.
La division est alors effectuée sur les mantisses et la valeur de l'exposant est trouvée
en soustrayant celle du diviseur de celle du dividende.
(0) - (+ 1) = (- 1)
(+ 42) (- 1)
Transformation en décimal :
Le principe que l'on vient de décrire retrace les grandes lignes de la division
effectuée dans un système numérique, car les plus petits détails, consignés par écrit
ou effectués mentalement, font quelquefois l'objet d'un assemblage complexe de
circuits pour leur élaboration.
De plus, les constructeurs de machine à calculer et, d'une manière générale, ceux
qui sont amenés à réaliser de tels circuits, qu'il s'agisse de logique câblée ou micro-
programmée, utilisent des procédés qui leur sont propres, mais qu'ils divulguent
rarement.
• la mémorisation
• l'addition
• la complémentation à 2
• la recherche du rang occupé par le bit à 1 de poids le plus élevé d'un nombre
• le test du bit de signe
• la comparaison de grandeurs numériques.
Au début de ce chapitre, nous avions souhaité une seule procédure pour toutes les
opérations. Maintenant que nous connaissons mieux le problème, voyons si l'on peut
obtenir cette procédure, dans le cas d'une calculatrice très simplifiée, qui ne pourrait
effectuer que des additions et des soustractions sur des entiers relatifs.
Dressons la liste des différentes opérations que cette machine devra réaliser.
Il apparaît plus clairement que seules, les opérations et sont quelque peu
différentes entre l'addition et la soustraction. Il s'agit d'une addition mais pour un
des deux termes est complémenté à 2.
La liste des opérations serait un peu plus longue, mais la rapidité avec laquelle elles
sont effectuées ne différerait que de très peu de temps l'obtention du résultat.
336
Dans cette théorie, nous allons examiner les circuits à décalage appelés aussi
registres à décalage.
Ces circuits sont le plus souvent formés de bascules synchrones reliées l'une à la
suite de l'autre et commandées par le même signal d'horloge.
Ils sont très utilisés comme circuit de temporisation, comme circuit de mémoire et de
traitement de l'information.
Nous allons voir que les registres à décalage peuvent se présenter sous différentes
formes selon l'accès aux entrées et sorties.
Nous déduisons, en observant cette figure, que la LED s'allume si l'interrupteur est
commuté vers le haut, ce qui fait conduire le transistor.
337
Par contre, la LED est éteinte si l'interrupteur est commuté vers le bas ce qui bloque
le transistor.
Nous sommes ainsi renseignés sur l'état de l'interrupteur avec un certain retard.
338
Dans ce nouveau circuit, les bascules sont reliées en cascade ; la sortie de l'une est
reliée à l'entrée de la suivante.
Les entrées CLOCK, par contre, sont toutes reliées entre elles. Ainsi, une unique
entrée d'horloge commande les quatre bascules simultanément.
Puisque quatre bascules sont intercalées entre l'interrupteur et la LED, il faut donc
quatre impulsions d'horloge pour transmettre l'information sur l'état de l'interrupteur
de l'entrée à la sortie du circuit où se trouve la LED.
Nous allons voir maintenant à quoi peut servir ce type de circuit qui, apparemment,
ne fait que compliquer la transmission de la commande de l'interrupteur.
Reprenons le circuit de la figure 3 et supposons que les sorties des quatre bascules
se trouvent au niveau bas et que nous commutions l'interrupteur à la tension positive.
339
Nous pouvons jouer également sur la fréquence des impulsions d'horloge pour faire
varier la temporisation.
Dans l'exemple que nous venons d'examiner, l'interrupteur est commuté à la tension
positive au début de l'expérience et reste dans cette position jusqu'à la fin de celle-ci.
340
Dans ce cas, la sortie du circuit suit fidèlement ces commutations, mais avec un
retard de trois périodes d'horloge correspondant à quatre transitions actives du signal
d'horloge.
Il est appelé registre à décalage avec entrée série et sortie série ou plus
simplement registre série-série.
Ce nom vient du fait que les informations relatives à l'état de l'interrupteur, sont
présentées à l'entrée du circuit séquentiellement l'une après l'autre, c'est-à-dire en
série. L'entrée D1 constitue l'entrée série du registre.
De la même façon, elles se présentent à la sortie l'une après l'autre, donc en série.
La sortie Q4 constitue la sortie série du registre.
341
2. 1. - FONCTIONNEMENT
Nous allons à présent en analyser une troisième, dans laquelle le registre à décalage
est utilisé comme circuit de retard et de déphasage d'un signal rectangulaire.
Ces signaux ainsi déphasés peuvent être utilisés pour produire des commandes
répétitives. Nous obtenons donc une séquence de signaux qui peut servir à faire un
automatisme dont nous allons analyser un exemple simple et concret.
343
Si comme dans l'exemple illustré figure 8, nous relions quatre lampes aux quatre
sorties du registre, les lampes vont s'allumer séquentiellement.
Par exemple, à la place des lampes, nous pouvons supposer qu'il y ait les
commandes d'une machine-outil et ceci afin de l'automatiser.
Le registre que nous venons d'examiner est un registre à entrée série et sorties
parallèles ou plus simplement un registre série-parallèle.
344
Le circuit intégré 74164 est un registre à décalage à deux entrées séries et huit
sorties parallèles ayant une entrée d'horloge (CK) et une entrée asynchrone de
remise à zéro générale prioritaire (CLR).
NOTE :
Les appellations Q1n, Q2n, Q3n, etc... qui apparaissent dans la table de vérité du
circuit intégré 74164 vous sont probablement inconnues. Ces appellations signifient
345
Cela revient à dire que les données sont disponibles en série, soit sur un seul fil.
Mais il peut se présenter le cas où plusieurs données sont disponibles
simultanément.
Il faut donc pouvoir faire entrer ces données en même temps dans le registre ; ceci
se réalise par l'intermédiaire de plusieurs entrées dites parallèles.
Si le chargement est asynchrone, dès que l'entrée SHIFT / LOAD est activée,
chaque sortie du registre recopie l'état présent sur son entrée parallèle.
Si par contre le chargement est synchrone, il faut en plus appliquer une impulsion
d'horloge pour que chaque bascule du registre mémorise l'état précédent sur son
entrée parallèle.
Si l'entrée SHIFT / LOAD n'est pas activée, le registre fonctionne en mode série-
série.
346
Le chargement du registre, opération qui consiste à positionner les sorties Q1, Q2,
Q3 et Q4 avec les niveaux logiques présents sur les entrées parallèles E1, E2, E3 et
E4, sera donc asynchrone.
En effet, les portes ET du réseau se trouvent validées et les entrées E1, E2, E3 et E4
agissent ainsi sur les entrées CLEAR et PRESET de chaque bascule.
Puisque l'entrée SHIFT / LOAD est portée au niveau H, le niveau logique appliquée
en E1 se retrouve sur l'entrée PRESET de la bascule, tandis que l'entrée CLEAR
reçoit le niveau logique opposé à celui de E1.
Les entrées CLEAR et PRESET étant actives au niveau H, lorsque E1 est au niveau
H, l'entrée PRESET devient active et la sortie Q1 de la bascule passe donc au
niveau H.
Si par contre, l'entrée E1 est au niveau L, c'est l'entrée CLEAR qui devient active et
donc la bascule se porte au niveau L.
Tant que nous sommes en phase de chargement, le signal d'horloge n'a aucune
influence puisque l'une des deux entrées CLEAR ou PRESET est active, donc
prioritaire.
Ramenons maintenant l'entrée SHIFT / LOAD au niveau L. Dès lors, les entrées
CLEAR et PRESET deviennent inactives puisqu'elles se portent au niveau L
indépendamment du niveau des entrées parallèles.
Les données présentes sur E1, E2, E3 et E4 peuvent varier, elles n'ont aucune
influence sur le fonctionnement en mode décalage du registre.
En résumé, l'information sur 4 bits présente sur les entrées parallèles est chargée
sur un niveau haut de l'entrée SHIFT / LOAD. En ramenant cette entrée au niveau L,
l'information chargée se décale vers la droite d'un cran à chaque impulsion d'horloge.
Le circuit intégré 74 165 est un registre à décalage 8 bits à une entrée série (ES) et
une sortie (Q8). Il possède huit entrées parallèles (E1 à E8), une entrée de
commande de décalage et chargement asynchrone (SHIFT / LOAD), une entrée
d'horloge (CK) et une entrée d'inhibition (CK INHIBIT). Il est à noter que ces deux
entrées CK et CK INHIBIT sont interchangeables.
Le brochage de ce circuit intégré est donné à la figure 12, tandis que la figure 13
donne sa table de vérité.
Chaque partie du réseau propre à une bascule comprend une entrée de commande
correspondant à l'entrée SHIFT / LOAD, deux entrées de données et une sortie.
Chacune des parties du réseau combinatoire, repérées par les symboles RL1, RL2,
RL3 et RL4 sur la figure 14, peut être assimilée à un aiguillage de données logiques.
La première ligne de cette table indique pour SHIFT / LOAD = 0, la sortie D1 recopie
l'entrée ES quel que soit l'état de E1.
La deuxième ligne indique que pour SHIFT / LOAD = 1, la sortie D1 recopie l'entrée
E1 quel que soit l'état de ES.
Si l'entrée SHIFT / LOAD est à l'état 1, la sortie de chaque réseau est au même
niveau logique que l'entrée parallèle correspondante.
Nous pouvons dire que les quatre entrées E1, E2, E3 et E4 sont aiguillées
respectivement vers les entrées D1, D2, D3 et D4 des bascules.
Le registre est alors prêt à être chargé avec les niveaux présents sur les entrées
parallèles.
Il suffit d'envoyer une impulsion d'horloge sur l'entrée CLOCK pour que Q1 = E1, Q2
= E2, Q3 = E3 et Q4 = E4.
De même, les sorties Q1, Q2 et Q3 sont «reliées» respectivement aux entrées D2,
D3 et D4 au travers des deuxième, troisième et quatrième réseaux.
A chaque impulsion d'horloge, le contenu du registre est décalé d'un pas vers la
droite.
Le circuit intégré 74 166 est un registre à décalage 8 bits à une entrée série (ES) et
une sortie série (Q8). Il possède huit entrées parallèles (E1 à E8), une entrée
asynchrone de remise à zéro générale prioritaire (CLR), une entrée de commande
de décalage et chargement synchrone (SHIFT / LOAD), une entrée d'horloge (CK) et
une entrée d'inhibition d'horloge (CK INHIBIT), ces deux entrées étant
interchangeables.
353
Le brochage de ce circuit est donné à la figure 19, tandis que la figure 20 donne sa
table de vérité.
NOTE :
Contrairement à l'exemple choisi pour nos explications théoriques, il faut noter que le
circuit intégré 74 166 est en mode LOAD lorsque son entrée de commande SHIFT /
LOAD est à l'état 0, et en mode SHIFT lorsque cette même entrée est à l'état 1.
354
4. 1. - TRANSMISSION PARALLÈLE
Supposons que nous voulons transmettre une information (ou donnée) relative à
l'état de quatre interrupteurs sur une distance assez longue.
L'idée la plus simple consiste à utiliser quatre fils et à relier chacun d'eux à un
indicateur à LED comme illustré figure 21.
La transmission effectuée de cette façon est dite parallèle parce que les quatre
informations sont transmises simultanément sur quatre fils séparés.
Quand la distance est grande entre l'émetteur (représenté ici par les interrupteurs) et
le récepteur (représenté par les LED), les fils de liaisons deviennent trop longs et le
dispositif trop coûteux surtout et les informations à transmettre sont nombreuses.
355
Nous faisons donc appel le plus souvent à la transmission dite série qui n'utilise plus
qu'une seule liaison pour transmettre toutes les informations.
Si nous reprenons le principe du montage illustré figure 21, dans une transmission
série, les informations relatives à l'état des interrupteurs sont transmises sur la même
ligne les unes après les autres et non plus simultanément sur quatre lignes
distinctes.
En mode LOAD, nous chargeons le registre avec l'information présente sur chacune
des entrées E1, E2, E3 et E4.
Il faut noter que sur la sortie série est transmise en premier lieu l'information relative
à l'entrée E4.
Puis arrivent les informations relatives à l'entrée E3, à l'entrée E2 et à l'entrée E1.
356
Les impulsions d'horloge qui commandent ce dernier circuit peuvent être les mêmes
que celles du premier registre.
Elles sont alors transmises sur une autre ligne. Dans ce cas, la transmission est dite
synchrone.
Si par contre, les deux registres sont commandés par des signaux d'horloge
différents, la transmission est dite asynchrone.
Dans ce cas, le circuit récepteur dispose de son propre générateur d'horloge comme
le montre la figure 26.
Celui-ci est commandé par le signal transmis sur la ligne. En effet, le générateur
d'horloge du circuit récepteur doit, dans le cas présent, délivrer quatre impulsions
d'horloge synchronisées avec le début de la transmission.
Lorsque nous appliquons des impulsions sur l'entrée CLOCK, les informations
enregistrées sont transmises à l'observateur placé prés de la LED.
Un registre peut donc constituer une mémoire de plusieurs bits, quatre dans le cas
de la figure 22.
Par contre, si nous désirons qu'elles ne soient pas perdues, il faut réaliser le
montage de la figure 27.
Nous disons, dans ce cas, que le registre ainsi câblé effectue une rotation à droite
de son contenu.
Représentons chaque bascule par un carré à l'intérieur duquel est inscrit sont état (0
ou 1).
360
La rotation à droite du contenu d'un registre peut également être effectuée à l'aide
d'un registre série-série.
Ce réseau a pour rôle d'aiguiller vers l'entrée du registre, soit l'entrée série, soit la
sortie série.
Lorsque l'entrée de rebouclage est au niveau L, c'est par contre la sortie série du
registre qui se trouve reliée à l'entrée du registre à travers le réseau.
Il effectue donc une rotation à droite de son contenu à chaque impulsion d'horloge.
6. - REGISTRE BIDIRECTIONNEL
Il est parfois utile de pouvoir décaler l'information dans un registre dans l'autre sens,
c'est-à-dire de la sortie Q4 vers la sortie Q1.
362
Voyons quelles sont les liaisons à effectuer sur le registre pour obtenir le décalage à
gauche de son contenu.
Désormais, si nous entrons les informations par l'entrée E4, celles-ci vont se décaler
à chaque impulsion d'horloge de la sortie Q4 vers la sortie Q1. Nous assistons bien
au décalage à gauche de l'information. L'entrée E4 devient l'entrée série gauche et la
sortie Q1, la sortie série gauche.
363
Si par contre l'entrée SHIFT / LOAD est portée au niveau L, nous obtenons un
décalage à droite du contenu du registre.
Pour obtenir les trois modes de fonctionnement mentionnés ci-dessus, il faut faire
appel au registre universel.
6. 2. - REGISTRE UNIVERSEL
Pour différencier les trois modes suivants, chargement parallèle, décalage à droite,
décalage à gauche, deux entrées de commande sont nécessaires.
Pour obtenir ces quatre modes, il faut remplacer chacun des réseaux d'aiguillage du
registre précédent par un autre plus complexe.
Chacun des réseaux logiques RL1, RL2, RL3 et RL4 a pour rôle d'aiguiller une
entrée parmi les trois qui lui sont appliquées vers l'entrée D de la bascule à laquelle il
est associé.
Les informations à décaler sont appliquées sur l'entrée série gauche (ESG). La sortie
série s'effectue sur la sortie Q1 qui est donc la sortie série gauche.
Les informations à décaler sont appliquées sur l'entrée série droite (ESD). La sortie
série s'effectue sur la sortie Q4 qui est donc la sortie série droite.
Si S0 = 1 et S1 = 1, alors D1 = E1 ; D2 = E2 ; D3 = E3 ; D4 = E4.
Les informations à charger sont présentées sur les entrées parallèles E1, E2, E3 et
E4. Elles sont mémorisées, à chaque front actif d'horloge, sur les sorties Q1, Q2, Q3
et Q4 du registre.
Nous voyons que tout le fonctionnement d'un registre universel repose sur le
fonctionnement des réseaux logiques RL1, RL2, RL3 et RL4. Il est donc nécessaire
de donner un complément d'informations sur ceux-ci.
D1 = 0 . S1 . Q2 + S0 . 1 . ESD + S0 . S1 . E1
Il reste à examiner le réseau d'inhibition qui, à partir des entrées S0, S1 et CLOCK,
génère le signal d'horloge des quatre bascules.
Le fait que le signal d'horloge soit issu d'un réseau combinatoire présente un
inconvénient.
En effet, si l'on vient à changer S0 ou S1 lorsque l'entrée CLOCK est à l'état 0, une
transition de niveau logique peut se produire à la sortie S. Cela peut occasionner
ainsi un front d'horloge actif sur les bascules du registre alors que l'entrée CLOCK
est restée inactive. Prenons un exemple où ce cas se produit.
En résumé, l'entrée CLOCK étant resté inactive, lorsque S1 est passé de l'état 1 à
l'état 0, la sortie S est passée de l'état 0 à l'état 1.
Nous obtenons ainsi un front actif sur les entrées d'horloge des quatre bascules,
alors que l'entrée CLOCK est restée à l'état 0.
Pour éviter cela, les entrées S0 et S1 ne doivent changer d'état que lorsque l'entrée
CLOCK est à l'état 1.
Ainsi, la sortie est forcée à l'état 1, quelles que soient les variations de S0 et S1.
Le circuit intégré 74 194 est un registre à décalage bidirectionnel 4 bits ayant deux
entrées de commande (S0 et S1), une entrée d'horloge (CK), une entrée de données
série pour le décalage à gauche (ESG), une entrée de données série pour le
décalage à droite (ESD), quatre entrées parallèles (E1 à E4), une entrée asynchrone
de remise à zéro générale prioritaire (CLR) et quatre sorties parallèles (Q1 à Q4).
369
Le brochage de ce circuit est donné à la figure 39, tandis que la figure 40 donne sa
table de vérité.
Pour la deuxième ligne de la table de vérité du circuit intégré 74 194, il n'y a pas de
changement de l'état des sorties lorsque CLOCK est à l'état 0 à condition que les
entrées S0 et S1 ne changent pas d'état.
370
7. - REGISTRE DYNAMIQUE
Les registres vus jusqu'à présent sont de type statique parce que les informations
qui y sont emmagasinées peuvent être conservées indéfiniment à condition de ne
pas débrancher l'alimentation.
Ceci est très commode parce que nous pouvons lire à tout moment les informations
qui ont été chargées, mais il apparaît un inconvénient du point de vue intégration.
Ceux-ci ne peuvent mémoriser les informations indéfiniment et doivent donc les faire
défiler. Cette caractéristique provient du fait que chaque élément de mémoire n'est
plus une bascule de type conventionnel, mais un circuit qui mémorise l'information
grâce aux capacités parasites des transistors MOS.
Les capacités CE, CI et CS de la figure 41 sont dites parasites parce qu'elles sont
habituellement indésirables. Elles correspondent à la capacité de grille des
transistors MOS.
371
Normalement, celles-ci doivent être les plus faibles possible parce qu'elles perturbent
le fonctionnement normal du circuit (augmentation du temps de propagation).
Dans notre cas cependant, elles sont utilisées pour conserver les informations sous
forme de charges emmagasinées.
Supposons que l'entrée E soit soumise au niveau bas (L). Le transistor T1 est donc
bloqué.
Dès lors, le transistor T3 est conducteur et il décharge donc la capacité CS, si celle-ci
était chargée.
Lorsque survient une impulsion positive sur l'entrée d'horloge CK2, les transistors T3
et T4 sont simultanément conducteurs.
Par contre, du point de vue technologique, ces deux transistors sont différents et leur
résistance respective de saturation est telle que le potentiel du point S est beaucoup
372
plus proche de zéro que de la tension + Vcc : la sortie S reste donc au niveau
logique L.
Lorsque survient une impulsion positive sur l'entrée d'horloge CK1, les deux
transistors T2 et T1 se trouvent saturés simultanément et comme ils sont réalisés
technologique-ment de la même façon que le couple T4-T3, le point I est maintenu
au niveau logique L malgré la conduction de T2.
En résumé, dans un étage de registre dynamique (ici à deux phases d'horloge), une
donnée appliquée à l'entrée se retrouve à la sortie lorsque l'on applique deux
impulsions CK1 et CK2.
Il faut cependant que les signaux CK1 et CK2 soient à une fréquence suffisante
(environ 10 kHz) pour que les capacités parasites des transistors MOS n'aient pas le
temps de se charger ou se décharger entre deux impulsions successives.
373
Cette théorie présente l'ensemble des circuits numériques utilisés pour les fonctions
de comptage et de décomptage.
Ces circuits possèdent le plus souvent une entrée (quelquefois deux entrées) sur
laquelle parviennent les impulsions à compter ou à décompter.
L'information disponible est située sur l'ensemble des sorties des bascules.
Nous pouvons citer le comptage d'objets (figure 1), la mesure du temps (figure 2), la
division du temps pour l'obtention de signaux d'horloge permettant la commande des
systèmes synchronisés (figure 3).
374
375
Note :
Il existe une grande variété de compteurs que vous allez découvrir au cours des
prochains chapitres.
Les compteurs binaires asynchrones utilisent le code binaire pur pour compter (ou
décompter).
Ces compteurs sont asynchrones, car seule la première bascule reçoit le signal
d'horloge.
376
Toutes les bascules qui suivent celle-ci sont commandées par la bascule précédente
comme indiqué à la figure 4.
Le montage situé à la figure 5 est le compteur le plus simple puisqu'il utilise qu'une
bascule de type D et qu'il n'est capable de compter qu'un seul événement.
Entre les instants t1 et t2, l'entrée D est au niveau L. Donc, à l'instant t2, Q revient
au niveau L et D au niveau H. A l'instant t3, Q repasse au niveau H et ainsi de suite.
La période du signal qui est présent sur la sortie Q est ainsi le double de celle du
signal d'horloge.
Ce compteur possède deux états, qui sont 0 et 1, l'état d'un compteur étant défini par
une combinaison particulière des états logiques des différentes sorties. Ce compteur
ne peut déceler qu'une seule impulsion, à condition de fixer l'état initial de la bascule.
Nous allons voir qu'il existe un problème lié au temps de propagation à l'intérieur de
la bascule.
En effet, si vous regardez la figure 7, vous remarquez qu'il existe un état transitoire
entre les instants t1 et t2 et entre les instants t3 et t4.
378
Un diviseur par deux peut aussi être obtenu avec une bascule JK comme représenté
figure 8.
2. 2. - UN COMPTEUR MODULO 4
Au premier front actif d'horloge (instant t1), la sortie Q1 commute et passe au niveau
H. 1 passe au niveau L.
Dans le cas présent, il s'agit d'un compteur possédant quatre états logiques (00, 01,
10, 11) en code binaire ou 0, 1, 2 et 3 en code décimal).
D'une façon générale, il est toujours possible d'utiliser une ou plusieurs sortie d'un
compteur pour avoir une division de la fréquence de l'horloge. Dans l'horloge de la
figure 2, cette propriété est utilisée pour compter le temps qui s'écoule.
Chaque étage permet de diviser par 2 le signal appliqué sur son entrée d'horloge.
Sur la sortie Q3, le signal que l'on peut prélever est donc à une fréquence 8 fois
plus petite que le signal d'horloge.
D'une façon générale, il est donc possible d'augmenter le module d'un compteur
asynchrone en augmentant le nombre de bascules. Avec une nouvelle bascule, le
module double.
Il est possible d'obtenir un compteur de module impair (3, 5, 7...) en utilisant les
mêmes types de montages que ceux vus précédemment. Cela vous sera présenté
ultérieurement.
383
Par ailleurs, il est possible de remplacer chaque bascule D par un bascule JK câblée
en mode TOGGLE (les entrées J et K sont câblées à «1»). La figure 14 représente
un compteur modulo 4 réalisé avec deux bascules JK.
Nous allons revenir sur le problème des états transitoires. La figure 15 représente
une partie du chronogramme de fonctionnement d'un compteur modulo 8.
384
Pendant cette période instable (t4 - t1), au lieu de passer directement de l'état 3 à
l'état 4, le compteur passe successivement par les états transitoires 2 et 0. On
considère ici que le temps de propagation de chaque bascule est sensiblement le
même (θ θ). En réalité, ces trois temps de propagation peuvent être différents.
Pour cette raison, on utilise une impulsion de prélèvement qui permet de «lire» l'état
du compteur. Cette impulsion sera décalée par rapport au signal d'horloge d'une
durée supérieure à celle des états transitoires. Cette impulsion pourra être générée à
l'aide d'un monostable.
385
Ces états transitoires sont donc l'un des principaux facteurs qui vont limiter la
fréquence d'horloge du compteur.
386
Le schéma de principe est le même que celui de la figure 14. Les entrées J et K des
bascules sont câblées intérieurement à «1».
387
Une remise à zéro générale asynchrone du compteur est possible grâce aux entrées
R0 et R1. Pour cela les deux entrées R0 et R1 doivent être simultanément à «1».
C'est un compteur binaire à 7 étages en cascade. Son schéma logique est donné à
la figure 20.
3. 1. - DÉFINITION
Ce sont des compteurs (décompteurs) dont tous les étages (bascules) sont
commandés par le même signal d'horloge.
3. 2. 1. - COMPTEUR MODULO 4
Si vous vous reportez à la table de vérité de la figure 11, vous vous apercevez que la
sortie Q1 passe alternativement de l'état «0» à l'état «1» à chaque front actif de
l'horloge H.
Ainsi, la sortie Q1 de ce diviseur par deux peut constituer le bit le moins significatif
(LSB) du compteur. La première bascule D d'un compteur fonctionnant en code
binaire sera d'ailleurs toujours câblée en diviseur par deux. La sortie Q2 de la
deuxième bascule du compteur modulo 4 doit fournir quant à elle, le bit le plus
significatif (MSB), c'est ce qui est représenté à la figure 22.
390
En fonction de l'état de Q2 qui est donc imposé, voyons quel doit être l'état de
l'entrée D2 correspondante.
Quand le compteur est à l'état 1 (sortie Q1 à «1» et Q2 à «0»), D2 doit être à l'état
«1» puisque Q2 doit passer à «1» au front d'horloge actif suivant et ainsi de suite...
A partir de cette table de vérité, on écrit dans le tableau de Karnaugh de la figure 23.
On peut en déduire :
D2 = Q1. 2+ 1. Q2 = Q1 Q2
Ensuite, elle commute quand le compteur est à 1112 = 710 et doit passer à 0002
= 010.
Pour réaliser ces deux conditions, il faut utiliser deux portes supplémentaires : une
porte ET qui reçoit les sorties Q1 et Q2, et une porte OU EXCLUSIF recevant la
sortie Q3 et la sortie de la porte ET.
392
Pour réaliser un compteur synchrone de module 16, il est nécessaire d'ajouter une
bascule supplémentaire. Ainsi, on est conduit au schéma de la figure 25.
Vous notez tout d'abord que le schéma se complique avec l'augmentation du nombre
de bascules. Vous remarquez qu'une bascule étant à zéro, celle-ci ne passe à «1»
que si toutes les bascules précédentes sont à «1». Ceci explique l'utilisation des
portes ET.
Si nous reprenons les mêmes valeurs qu'au chapitre 2. 3., à savoir θ ≈ 100 ns et si
l'on réserve toujours 100 ns pour prélever le contenue du compteur, on aboutit à une
fréquence limite :
Nous pouvons noter que durant les 100 ns réservés au prélèvement, le réseau
combinatoire formé par les portes ET et OU EXCLUSIF a le temps de se stabiliser.
393
Chaque compteur comprend une entrée d'horloge active sur un front montant (CP0)
et une entrée d'horloge active sur un front descendant ( 1).
Il existe une entrée de remise à zéro asynchrone MR pour chaque compteur. Elle est
prioritaire et active au niveau haut. Il est possible d'utiliser l'une des deux entrées
d'horloge comme entrée de validation pendant que l'autre reçoit le signal d'horloge.
L'état d'un compteur est la combinaison particulière formée par l'ensemble des
sorties de ce compteur. Un compteur modulo 2 possède deux états. Son unique
sortie est soit à l'état «0», soit à l'état «1». Un compteur modulo 4 possède 4 états.
Ses deux sorties peuvent réaliser 4 combinaisons différentes (00, 01, 10, 11).
Dans ce diagramme, chaque état est représenté par un nombre décimal dans un
cercle. Les flèches représentent le sens de «parcours» du compteur.
Le diagramme des états peut aussi être représenté comme indiqué à la figure 29.
D'une façon générale, on dit qu'un compteur possède n états, ou bien qu'il s'agit d'un
diviseur par n. On parle alors de compteur-diviseur par n.
A chaque impulsion sur l'entrée d'horloge le compteur passe d'un état au suivant en
respectant l'ordre donné par le diagramme des états.
Jusqu'à présent, vous avez vu des compteurs utilisant le code binaire, mais il existe
aussi des compteurs utilisant d'autres codes.
C'est le cas des compteurs de Johnson dont un exemple vous sera présenté dans la
théorie suivante, car ces compteurs utilisent un circuit de décodage.
396
La figure 30 présente la table des états d'un tel compteur à 5 étages. Il s'agit du
circuit de comptage du circuit intégré HEF 4017 B réalisé en technologie MOS.
Ces cinq sorties Q1, Q2, Q3, Q4 et Q5 sont des sorties des bascules, internes au
circuit intégré, et par conséquent, ne sont pas accessibles.
En effet, lors de la première impulsion d'horloge, la sortie Q1 passe à l'état «1» puis,
cet état «1» se décale de Q1 vers Q5. Une fois que la sortie Q5 est passée à l'état
«1», la sortie Q1 repasse à l'état «0» au front d'horloge actif suivant.. Au total, ce
compteur possède dix états et peut comptabiliser neuf impulsions.
Jusqu'à maintenant, vous avez vu des compteurs dont le module est une puissance
de 2 (2, 4, 8, 16,...). Or, il peut être nécessaire de disposer de compteurs dont le
module soit un nombre entier quelconque (3, 5, 7, 9, 10,...).
397
Il faut alors modifier les circuits de comptage vus jusqu'à maintenant. La figure 31
présente un compteur modulo 3 synchrone réalisé avec deux bascules D.
A l'instant t1, le compteur passe à l'état 1 (Q1 = «1» et Q2 = «0»). A l'instant t2, le
compteur passe à l'état 2 (Q1 = «0» et Q2 = «1»).
A ce moment là, D1 = «0» et non «1» comme dans le cas du compteur modulo 4.
Donc à t3, le compteur est «forcé» à l'état 0 et ne passe pas par l'état 3.
398
A la mise sous tension, il peut arriver que le compteur soit positionné à l'état 3. Dans
ce cas, il repasse à l'état 2 au premier front d'horloge montant et, dès lors, il reste
dans l'anneau des trois états (0, 1 et 2) sans jamais revenir à l'état 3.
D'autre part, la réaction est synchrone puisque la porte ET permet de décoder l'état
2 (102 = 210) et que la remise à zéro s'effectue au front d'horloge actif.
Les décades sont des compteurs possédant 10 états stables. Ce sont des
compteurs que l'on rencontre couramment. En effet, ils permettent de matérialiser
directement la numération décimale.
Nous allons voir deux modèles de décades réalisées avec des bascules discrètes et
un compteur intégré.
En effet, dans le cas présent, c'est l'état 1010 (10102) qui est décodé à l'aide de la
porte ET et qui autorise la remise à zéro générale des quatre bascules.
Tout d'abord, il faut que T soit supérieure à t1 et à t2, donc que la remise à
zéro des bascules soit très rapide (T est la durée de l'impulsion de remise à zéro à la
sortie de la porte ET).
En effet, si l'impulsion de remise à zéro repasse à l'état 0 avant qu'une des bascules
(ici la deuxième et la quatrième) ne soit repassée à zéro, cette dernière restera à
l'état «1».
400
Si, par exemple, la période t1 est très courte et t2 très longue et que par ailleurs le
temps de propagation à travers la porte ET est également très court, la sortie Q4
peut rester à l'état «1», donc le compteur passera de l'état «9» à l'état «8», puis
repassera à l'état «9» et ainsi de suite...
Pratiquement, il faut introduire des retards par des cellules RC placées à l'entrée du
ET comme indiqué à la figure 35.
En règle générale, il faudra donc être très attentif aux choix des composants et à la
réalisation de ce type de circuit.
Le schéma de la figure 36 est celui d'une décade synchrone réalisée avec des
bascules JK de type 7472.
Rappelons que les trois entrées J, ainsi que les trois entrées K aboutissent sur une
porte ET. C'est pour cela que les entrées non utilisées sont reliées à «1».
401
C'est un compteur très utilisé. Son schéma est donné à la figure 37.
Ce compteur est réalisé en technologie TTL. Son brochage est donné à la figure 38.
Le symbole «NC» signifie «non connecté».
402
Ce circuit comporte deux sections. Une section diviseur par 2 et une section
diviseur par 5.
Il est possible soit de les utiliser séparément, soit de les réunir ensemble pour obtenir
un compteur BCD modulo 10 ou bien d'un diviseur par 10.
La première section diviseur par 2 est constituée par la première bascule JK dont
l'entrée d'horloge est notée «INPUT A» et la sortie «Q0». Les entrées J et K non
câblées sur le schéma sont toutes rattachées au niveau logique H.
La deuxième section comporte les trois bascules JK suivantes. L'entrée d'horloge est
notée «INPUT B» et les trois sorties sont Q1, Q2 et Q3. Cette troisième sortie Q3
délivre un signal divisé par 5 par rapport au signal d'horloge appliqué à l'entrée
«INPUT B».
Il existe une deuxième possibilité de raccorder les deux sections. C'est de relier la
sortie Q3 à l'entrée «INPUT A». Ceci permet de recueillir un signal dont la fréquence
vaut toujours le 1 / 10ème de celle de l'horloge mais cette fois-ci, le signal possède
un rapport cyclique égal à 1 / 2. Ceci apparaît sur la figure 40.
Par contre, avec ce raccordement, les quatre sorties n'utilisent pas le code BCD. Le
compteur obtenu compte comme suit : 0, 1, 2, 3, 4, 8, 9, A, B, C.
Jusqu'ici vous avez vu des compteurs qui incrémentent d'une unité leur contenu à
chaque nouvelle impulsion.
La première bascule est toujours câblée en diviseur par deux puisque le LSB passe
alternativement de «0» à «1» en mode comptage comme en mode décomptage.
Par contre, pour les deux bascules suivantes, c'est la sortie Q des bascules
précédentes qui fournit le signal d'horloge et non .
405
Les décompteurs existent sous forme de circuits intégrés. Ces circuits fonctionnent
soit en mode comptage, soit en mode décomptage. Il en existe deux types.
Dans le premier type, il existe une seule entrée de commande du mode comptage /
décomptage.
Dans le deuxième type, il existe deux entrées d'horloge ; l'une est relative au mode
comptage, l'autre au mode décomptage.
6. 1. - PRINCIPE
Sur le marché des composants, il est facile de trouver des compteurs de module 2n
ou 10 (en général, n ≥ 4).
C'est pour cette raison que les constructeurs ont développé des compteurs
prépositionnables.
Ces derniers permettent de limiter le nombre des états que peut prendre un
compteur, autrement dit, ils permettent de réduire le module.
Pour un compteur prépositionnable dont le module maximal est 16, il sera possible
de réduire ce module entre 2 et 16.
CARRY est une sortie de retenue ou de report. Cette sortie est au niveau H
seulement lorsque les quatre sorties Q1, Q2, Q3 et Q4 sont au niveau H. Autrement,
elle reste au niveau L.
L'entrée LOAD est une entrée de commande. Elle permet de «charger» le compteur
dans l'état logique où se trouvent les quatre entrées de prépositionnement.
407
Si le chargement est asynchrone, dès que l'entrée LOAD est au niveau L, l'état
logique de I1 est transmis à Q1, celui de I2 à Q2 et ainsi de suite...
Si le chargement est synchrone, il faut tout d'abord que l'entrée LOAD soit au niveau
L (niveau actif), puis il faut appliquer une impulsion d'horloge pour que le
chargement s'effectue.
En réalisant le câblage de la figure 45, il est possible d'utiliser la sortie CARRY pour
prépositionner le compteur.
Le compteur est prépositionné à l'état 13 et son module est 3 (États 13, 14 et 15).
Avec ce type de montage, il est possible de passer d'un état prédéterminé (ici 13) à
l'état 15 (dans le cas d'un compteur modulo 16), mais ce compteur ne passe pas par
les états 0, 1, 2...
409
Dans la figure 47-a, quand la sortie du compteur passe à 01012 = 510, l'entrée LOAD
passe à l'état 0. Donc, au prochain signal d'horloge, le compteur repasse à l'état 0
puisque les quatre entrées de prépositionnement sont câblées à la masse (entrée
LOAD synchrone).
Il est également possible d'utiliser l'entrée CLEAR comme indiqué à la figure 47-b ;
cette entrée CLEAR étant également synchrone.
Dans les deux cas, la porte NAND sert à détecter l'état 5 du compteur afin qu'il
repasse à 0.
Néanmoins, ce système est trop rigide car il impose un réseau combinatoire donné
pour réaliser un compteur de module défini. Or, avec un compteur prépositionnable, il
suffit de changer les données sur les entrées de prépositionnement pour modifier le
module.
Le signal d'horloge est appliqué sur l'entrée CP. Ce sont les fronts montants qui sont
actifs. est une entrée de validation. Si elle se trouve au niveau H, le compteur est
inhibé ainsi que la retenue. PL est l'entrée de chargement parallèle asynchrone
prioritaire. Dès qu'elle passe au niveau H, les quatre données présentes sur P0, P1,
P2 et P3 sont transférées sur les sorties O0, O1, O2 et O3.
Nous verrons dans le chapitre suivant l'usage qui est fait de cette sortie .
Les diagrammes des états des figures 50 et 51 représentent ces quatre modes de
fonctionnement.
Dans la figure 50, vous pouvez remarquer que si le compteur est dans un état
compris entre 10 et 15 (cas de la mise sous tension), il réintègre l'anneau des états
après un certain nombre d'impulsions d'horloge. Par exemple de l'état 12, il passe à
l'état 13 puis à l'état 4 en mode comptage.
413
est à l'état «0». Le comptage est validé. Le compteur progresse donc de «0» à
«9». Dès qu'il passe à «9» à l'instant t2, la sortie (retenue) passe au niveau L.
A l'instant t3, le décompteur passe à «0» mais la sortie reste au niveau H puisque
l'entrée de validation vient de passer au niveau H.
Par contre, après une période du signal d'horloge, cette entrée passe au niveau
L et par conséquent la sortie peut passer au niveau L.
Il existe des compteurs intégrés possédant jusqu'à 24 étages (cas du circuit 4521)
mais tous les étages ne possèdent pas de sortie. Ces circuits sont généralement
utilisés comme diviseurs et non pas comme compteurs.
415
C'est pour cela que l'on réunit plusieurs compteurs ensemble comme schématisé à la
figure 53.
Si chaque compteur possède un module égal à 16 (diviseur par 16), le module total
est égal à 16N, si N est le nombre total de compteurs.
Pour deux compteurs en série, le module vaut 256 (16 X 16) et le signal d'horloge est
divisé par 256.
Le compteur N° 3 s'incrémente seulement si les sort ies CARRY des deux premiers
compteurs sont au niveau H. A ce moment-là, l'entrée CEP du compteur N° 3
repasse au niveau L, ce qui l'invalide à nouveau et ainsi de suite...
Ainsi, on est certain qu'un compteur de rang N s'incrémentera seulement si tous les
compteurs qui le précédent ont atteint leur capacité maximale.
Avec les compteurs / décompteurs possédant deux entrées d'horloge (une pour le
mode comptage, l'autre pour le mode décomptage), une sortie CARRY et une sortie
BORROW, il est possible de réaliser le montage de la figure 55.
417
Dans le cas présent, la sortie CARRY est active à 0. Quand le compteur N° 1 est à
l'état 15, la sortie CARRY est au niveau L. Au front d'horloge suivant, elle repasse au
niveau H et permet l'incrémentation du compteur N° 2. Le fo nctionnement de
l'ensemble est asynchrone.
Donc, quand un nouveau front actif se présente sur l'entrée DOWN du compteur N°
1, ce dernier repasse à l'état 15 et la sortie BORROW à l'état «1», ce qui
décrémente d'une unité le compteur N° 2.
En reliant plusieurs compteurs HEF 4029 B comme indiqué à la figure 56, il est
possible d'obtenir un compteur / décompteur de grande capacité.
418
Par ailleurs, pour que la sortie du compteur de rang N - 1 soit au niveau L, il faut
également que son entrée soit au niveau L.
Dans cette théorie, vous allez revoir des notions, déjà abordées en théorie 7, mais
sous une forme plus simple. Ces notions concernent les codes et les systèmes de
numération.
Vous verrez ensuite la manière de passer d'un code à l'autre et d'afficher les
informations.
Les feux tricolores (figure 1) permettent de diriger le trafic à l'intérieur des villes.
En effet, chaque usager de la route reçoit des informations codées sur la conduite
qu'il doit adopter.
• Orange : ralentissez
• Rouge : arrêtez-vous
• Vert : passez.
Le numéro national de la Sécurité Sociale est, par exemple, un code qui permet de
reconnaître les individus afin par la suite de pouvoir faire réaliser par un ordinateur
toutes les opérations relatives à leurs remboursements médicaux au titre de
l'assurance sociale. Un exemple est donné figure 2.
420
Les abeilles possèdent différentes façons de voler pour conduire les autres
abeilles en un lieu précis ou les avertir du danger, c'est ce que l'on appelle la danse
des abeilles.
Les ordinateurs ou les circuits numériques ne peuvent eux aussi se passer de codes
pour communiquer entre eux.
Puisque, comme nous l'avons vu, les circuits numériques fonctionnent avec deux
niveaux : haut (H) et bas (L) ; tous les codes ne pourront utiliser que deux
informations élémentaires liées à ces deux niveaux 1 et 0 (figure 3).
De la même façon, les lettres de l'alphabet ne sont pas nombreuses mais elles
permettent pourtant de composer une infinité de mots et ce dans de nombreuses
langues.
Dans les circuits numériques, le problème est identique. Pour qu'un circuit utilisant
un code x puisse converser avec un circuit utilisant un code y, il faudra un interprète
que nous appellerons décodeur x / y (figure 4) ou décodeur y / x suivant le sens
dans lequel la conversion de code s'effectuera (d'où les termes «x vers y» ou «y
vers x» que vous rencontrerez plus loin).
Les informations traitées dans les circuits numériques sont matérialisées par des
niveaux H et L représentatifs de valeurs logiques 1 et 0.
Nous avons vu que ces deux signes sont suffisants pour exprimer une
information en code binaire.
Nous savons par ailleurs que le système de numération que nous utilisons chaque
jour est différent. C'est le système décimal qui utilise 10 signes de 0 à 9.
Lorsque les anciens ont voulu compter des objets (ici des épis de blé), ils ont dû
imaginer des nombres et les signes correspondants.
422
Les signes de 0 à 9 nous sont familiers, mais ils pourraient être différents, ainsi les
Romains utilisaient le signe V pour 5 et pour 10 le signe X que nous avons repris ici.
Les signes ∇ et inventés pour les besoins du cours signifient pour ∇, 11 et pour
, 12.
423
Pour compter jusqu'à 10 000, il faudrait 10 000 signes et pour compter jusqu'à l'infini
une infinité de signes.
L'idée fut de se limiter à dix signes de 0 à 9, c'est-à-dire autant que les doigts des
mains et d'exprimer chaque nombre aussi grand fut-il par une combinaison de ces
dix signes.
Nous voyons que ce système permet d'écrire des nombres dont la structure est telle
que pour 3 47210 par exemple, ce nombre signifie :
Le premier chiffre à droite est celui des unités de poids 100 = 1, le second en partant
de la droite a un poids de 101 = 10, c'est le chiffre des dizaines, le troisième en
partant de la droite a un poids de 102 = 100, c'est le chiffre des centaines et ainsi de
suite.
Nous voyons que le poids des chiffres est multiplié par 10 à chaque fois que le chiffre
se décale d'un rang vers la gauche. Nous appellerons 10, base du système.
1. 2. 2. - NUMÉRATION BINAIRE
Dans la numération binaire comme nous ne disposons que de deux chiffres, la base
sera 2 et nous pourrons reprendre le problème des épis de blé comme représenté à
la figure 6.
Pour exprimer des nombres de plus en plus grand, il est nécessaire d'avoir de plus
en plus de chiffres.
Nota :
Chaque nombre binaire est représenté dans cette figure par un code de cinq chiffres
constitué en ajoutant à gauche les 0 significatifs nécessaires.
Il est utile de savoir quel est le nombre maximum que l'on peut représenter avec un
nombre déterminé de chiffres binaires. On peut le déterminer en lisant la valeur
numérique maximale lorsque chaque chiffre est à 1 comme indiqué à la figure 8.
Celle-ci donne l'exemple d'un nombre de 4 chiffres binaires.
426
Le nombre maximum que l'on peut représenter avec n chiffres binaires est : 2n - 1.
Il suffit de donner à chaque chiffre binaire son poids et ensuite additionner les
poids des différents chiffres.
10112 = 1 X 23 + 0 X 22 + 1 X 21 + 1 X 20
Pour faire l'opération inverse, c'est-à-dire pour passer d'un nombre décimal au
nombre binaire correspondant, on peut diviser de manière répétitive ce nombre
pas deux.
Les restes de chaque division constituerons les chiffres du nombre binaire en les
lisant à partir du dernier. Rappelez-vous que le reste est 0 lorsque le dividende est
pair et 1 lorsqu'il est impair.
= 256 + 16 + 4 + 1 = 277
A tous les nombres binaires écrits avec les chiffres 0 et 1 correspondent autant de
nombres décimaux écrits avec des chiffres décimaux.
Par exemple, le nombre binaire 1112 dont la valeur est égale à sept (710) pourrait
aussi bien représenter le nombre décimal 11110 dont la valeur est égale à 111.
Afin d'éviter les confusions de ce genre, on écrit l'indice 2 pour les nombres
binaires et l'indice 10 pour les nombres décimaux.
1. 4. - LES BITS
Les nombres binaires sont formés des chiffres 0 et 1. Ces chiffres binaires sont
appelés «binary digit», en abrégé «bit».
Par la suite, le terme bit a pris en sens plus large que celui de chiffre binaire. Il
indique plus généralement l'unité d'information qui peut être mémorisée dans une
bascule.
N'importe quelle information de quelque type qu'elle soit peut être exprimée pour une
succession appropriée de bits. Ainsi peut-on numériser la parole (téléphone
numérique), l'écriture (traitement de texte), la musique (disque numérique), le calcul
mathématique ou financier (calculateurs, ordinateurs et facturières).
En règle générale, on utilise assez souvent le mot bit pour indiquer le nombre
d'étages, d'un compteur par exemple. On parle communément de compteurs ou
registres à décalages à 4 bits, 8 bits, 12 bits ce qui signifie qu'il y a 4, 8, 12
bascules.
428
Le circuit et les niveaux de tension sur les quatre sorties sont représentées figure 9.
Par exemple, l'état 3 se distingue par des niveaux de tension hauts sur les sorties
Q1 et Q2 et des niveaux bas sur les sorties Q3 et Q4.
429
Examinons maintenant avec attention comment varient les différentes sorties pour
chaque état.
Le nombre d'impulsions d'horloge nécessaire pour faire changer d'état une bascule
est de 1 pour Q1, 2 pour Q2, 4 pour Q3, 8 pour Q4, comme le résume le tableau de
la figure 10.
En comparant cette table avec celle de la figure 7, on voit que dans la dernière
colonne des deux tables on retrouve une numération en code binaire.
Le compteur utilise donc le code binaire. Ses sorties donnent un nombre binaire qui,
traduit en code décimal, indique directement l'état atteint par le compteur et donc le
nombre d'impulsions d'horloge parvenues jusqu'à cet instant.
Vous pouvez voir que la sortie la plus éloignée de l'entrée, c'est-à-dire Q4 est celle
de plus grand poids, elle correspond au bit le plus important du nombre binaire dont
le poids est 8. On appelle ce bit «bit le plus significatif» (figure 12) en abrégé
431
M.S.B. (initiales des mots anglais «Most Significant Bit», c'est-à-dire «bit le plus
significatif»).
La sortie Q1 correspond au bit le moins important : son poids est 1, il est appelé
«bit le moins significatif» en abrégé L.S.B. (initiales des mots anglais Least
Significant Bit).
Il est cependant utile, et même nécessaire, de décoder les sorties en envoyant les
signaux correspondants à des circuits appropriés qui, sans altérer les informations
transmises, transforment le code de base en un autre, d'exploitation plus commode.
Dans la figure 13, vous pouvez voir le schéma synoptique du système compteur
binaire-décodeur décimal.
Du point de vue circuit, un décodeur de ce type n'est pas très complexe. A chaque
sortie du compteur correspond un réseau de portes et d'inverseurs choisis
convenablement. Par exemple pour le nombre 7, on aura le réseau de la figure 14.
Parfois, il n'est pas nécessaire que toutes les 16 sorties soient présentes. Il suffit
alors de décoder l'état qui seul nous intéresse. Lorsque l'on a compté par exemple
un certain nombre d'événements (pièces sur un tapis roulant, personnes dans une
433
pièce...), il peut être nécessaire de le signaler et de réaliser une action par exemple
(stopper le tapis roulant ou déclencher la ventilation).
Dans ce cas précis, un seul circuit préparé pour décoder le nombre choisi est
nécessaire.
1. 7. - LE CODE HEXADÉCIMAL
Il est assez courant de rencontrer des circuits numériques utilisant quatre bits.
Le compteur examiné au paragraphe précédent opère sur quatre bits. Les registres,
les comparateurs et autres composants fonctionnent sur 4, 8, 16 bits ou autres
multiples de 4.
A l'intérieur des ordinateurs aussi, l'information est mise sous forme d'un groupe
d'une succession de bits.
Actuellement, les microprocesseurs les plus diffusés fonctionnent sur 8 bits. Mais
d'autres microprocesseurs utilisent également 16 ou 32 bits. Les grands ordinateurs
fonctionnent avec 32 bits pour I.B.M. et 48 bits pour Control Data.
Mais dans tous les cas, nous retrouvons des successions de bits à 1 ou à 0 aux
nombres de 4 ou de 48.
Afin de simplifier ces écritures qui seraient fastidieuses au moyen du code binaire, on
utilise le code hexadécimal ou code à base 16.
Le système hexadécimal, lui, utilise 16 signes : les dix premiers signes bien connus
0, 1, 2, 3, 4, 5, 6, 7, 8, 9 auxquels on a rajouté A pour 10, B pour 11, C pour 12, D
pour 13, E pour 14, F pour 15. Vous pouvez retrouver ceci dans le tableau de la
figure 15.
Fig. 15. - Dans cette table sont inscrits côte à côte les trois principaux codes : décimal,
binaire et hexadécimal.
Code
Nombre Code décimal Code binaire
hexadécimal
Zéro 0 0000 0
Un 1 0001 1
Deux 2 0010 2
Trois 3 0011 3
Quatre 4 0100 4
Cinq 5 0101 5
Six 6 0110 6
Sept 7 0111 7
Huit 8 1000 8
Neuf 9 1001 9
Dix 10 1010 A
Onze 11 1011 B
Douze 12 1100 C
Treize 13 1101 D
Quatorze 14 1110 E
Quinze 15 1111 F
Contrairement à ce que l'on peut penser, le code hexadécimal ne représente pas une
complication, mais au contraire une simplification car il permet de transcrire de
manière plus brève les nombres binaires généralement assez longs.
La numération binaire qui, comme nous l'avons vu, est parfaitement adaptée à
l'utilisation dans un système électronique digital, n'est cependant pas très maniable
pour l'homme, car il est accoutumé à la numération décimale.
En fait, les données exprimées avec le système binaire pur ne sont pas
instantanément compréhensibles (par l'homme), le passage entre le système binaire
et le système décimal étant assez compliqué.
Pour surmonter ces inconvénients, des systèmes de codification binaire des nombres
décimaux ont été élaborés.
Dans ces codes, à chaque chiffre décimal, on fait correspondre une combinaison de
chiffres binaires.
Pour exprimer les dix premiers caractères arabes avec des nombres binaires, il
convient de disposer au moins de quatre chiffres. Avec ces quatre chiffres binaires,
on peut avoir les seize combinaisons suivantes :
Puisque les combinaisons binaires disponibles sont en quantité plus grande que les
caractères décimaux, il est possible de choisir plusieurs systèmes pour la
436
représentation des chiffres décimaux. Ces divers systèmes sont appelés codes et
sont représentés figure 16.
On distingue deux sortes de codes : les codes «pondérés» et les codes «non
pondérés».
En général, les codes sont «pondérés» quand il existe des nombres qui indiquent le
«poids» des chiffres binaires des groupes correspondants.
Tous les autres codes dans lesquels on ne peut repérer le poids des chiffres binaires
des groupes correspondants sont appelés «non pondérés» et sont élaborés sur une
base à développement mathématique complexe ou plus simplement sont
caractérisés par des tables faites spécialement.
Dans le tableau de la figure 16, sont reportés quelques-uns des codes les plus
courants.
437
1. 8. 1. - CODES B - C - D
Un type de code largement répandu est le code décimal codé binaire généralement
appelé «B.C.D.» pour "Binary Coded Decimal".
Habituellement, le code binaire est mieux adapté pour les circuits numériques, mais il
est pénible de traduire un nombre binaire en décimal surtout lorsque l'on a un grand
nombre de bits.
Le code B.C.D., utilisé en association avec des décodeurs appropriés, permet par
contre de traduire facilement en expression binaire les nombres décimaux et vice
versa.
La figure 17-a montre le codage B.C.D. des nombres décimaux de 11010 à 12510.
Code
Code BCD Code BCD Code BCD
décimal
110 0001 0001 0000
111 0001 0001 0001
112 0001 0001 0010
113 0001 0001 0011
114 0001 0001 0100
115 0001 0001 0101
116 0001 0001 0110
117 0001 0001 0111
118 0001 0001 1000
119 0001 0001 1001
120 0001 0010 0000
121 0001 0010 0001
122 0001 0010 0010
123 0001 0010 0011
124 0001 0010 0100
125 0001 0010 0101
Comme vous pouvez le constater, le code B.C.D. est une synthèse du code décimal
et du code binaire.
rapport aux autres, la pondération est celle du système décimal comme l'indique
l'exemple de la figure 17-b.
Pour cette raison, toutes les calculatrices de poche utilisent le code B.C.D.
Dans la majeure partie des cas, il devient trop coûteux d'utiliser ce code, en effet,
chaque bit supplémentaire nécessite des composants supplémentaires.
1. 8. 2. - CODE AIKEN
Prenons par exemple le chiffre décimal 2 codifié 0010, en inversant le chiffre binaire
0010, on obtient 1101 groupe correspondant au chiffre 7 qui est le complément à 9
de 2. Cette propriété est utile dans le calcul de la soustraction.
Par exemple, le nombre 63 en code Aiken est écrit de cette manière : 1100 0011.
1. 8. 3. - CODE + 3
Ce code est aussi appelé Stibiz du nom de son inventeur et c'est un code «non
pondéré».
439
Il utilise les combinaisons de quatre chiffres du binaire pur compris entre les nombres
décimaux 3 et 12.
Dans ce système n'apparaissent pas les combinaisons 0000 et 1111. Par exemple,
le nombre 63 en code + 3 s'écrit 1001 0110.
1. 8. 4. - CODE GRAY
Ce code, lui aussi non pondéré, à la propriété de présenter dans le passage d'un
nombre au suivant, la variation d'un seul «bit», c'est-à-dire d'un seul chiffre du
groupe binaire. Il présente un risque d'aléas plus faible en séquentiel.
États du
Q4 Q3 Q2 Q1
compteur
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
Les niveaux des quatre sorties (Q1, Q2, Q3 et Q4) de chaque décade forment un
code binaire arrangé suivant la table de la figure 19.
Comme pour le compteur modulo 16, la décade a souvent besoin d'un décodeur
pour ses sorties. Dans le commerce, on trouve des décodeurs avec 4 entrées et 10
sorties qui remplissent précisément cette tâche (figure 21).
Ces décodeurs possèdent 4 entrées et 10 sorties. Ils permettent lorsque l'on affiche
un nombre binaire sur les 4 entrées d'obtenir l'équivalent décimal en rendant valide
l'une des dix sorties. Ils n'acceptent donc en entrée que les nombres binaires
compris entre 0000 et 1001 (c'est-à-dire entre 010 et 910).
Ces décodeurs sont appelés 4 vers 10, de même les décodeurs à sorties
hexadécimales sont appelés 4 vers 16.
La figure 22 a-b représente un décodeur MOS, type 4028 B 4 / 10 dont les sorties
sont actives à l'état 1. (D'autres décodeurs ont des sorties actives à l'état 0).
444
La table de vérité indique l'état des sorties pour chaque combinaison «d, c, b, a» en
entrée.
On peut utiliser les sorties pour décoder différents codes. Ici, nous utilisons deux
décodeurs en cascade dans lesquels ne sont exploitées que les sorties de 0 à 7.
Jusqu'à 716, l'entrée «d» étant à 0, le circuit 1 a ses sorties validées et le circuit 2
(le bit «d» étant inversé) ne peut avoir de sorties utilisées validées.
A partir de 810, le bit «d» étant à 0, le circuit 2 a ses sorties 0 à 7 qui peuvent être
validées suivant les combinaisons de «a, b, c» alors que les sorties utilisées du
circuit 1 ne peuvent être validées. Les sorties 0 à 7 du deuxième circuit sont
interprétées comme 8, 9, 10, 11, 12, 13, 14, 15.
En effet, dans ce compteur constitué de cinq bascules, les sorties peuvent prendre
dix combinaisons différentes de 2 sorties chacune telles que représentées en vert
figure 23.
447
Il est donc nécessaire de décoder l'état des sorties pour individualiser chaque
combinaison de façon à disposer des 10 sorties.
Un bon nombre de solutions s'offrent alors et nous retiendrons celle adoptée dans le
circuit intégré 4017 B.
Le schéma synoptique de ce circuit est représenté figure 25 ainsi que son brochage.
L'entrée CP0 permet de déclencher le compteur sur un front montant alors que
l'entrée 1 permet le déclenchement du compteur sur un front descendant.
L'entrée MR permet la remise à 0 générale. Elle est active au niveau H (haut).
Dans le circuit intégré 4017 B, les différentes combinaisons sont obtenues à l'aide de
circuits NOR suivis chacun d'un buffer (circuit OUI utilisé comme amplificateur).
451
2. 1. - TUBES COMPTEURS
2. 1. 1. - LE DÉCATRON
Ces tubes sont abandonnés, ils nécessitaient en effet une décharge de 200 volts et
l'usage de transformateurs.
vient frapper l'écran fluorescent sur lequel sont inscrits les chiffres de 0 à 9 ou des
caractères alphabétiques.
L'affichage d'un chiffre lumineux est obtenu par application de la tension convenable
(environ 160 V) sur la cathode correspondante.
Bien qu'elle fut lancée dans les années 60 par BURROUGHS cette technologie,
quoique ancienne, se rencontre encore.
453
Avec les décodeurs 4 vers 10 et 4 vers 16, il est possible de connaître l'état d'un
compteur en reliant par exemple une LED à chaque sortie et en inscrivant à côté de
chacune d'elle le chiffre décimal ou hexadécimal qu'elle représente.
Cette méthode est cependant peu pratique car elle nécessite l'usage de 10 ou de 16
LED et que la valeur numérique de l'état du compteur n'est pas vraiment affiché en
clair.
C'est pourquoi, il a été créé des circuits plus complexes offrant la possibilité d'afficher
directement les signes correspondants.
Le terme afficheur ou «display» désigne tout circuit permettant d'afficher en clair une
valeur numérique ou alphanumérique. La diode LED est l'élément le plus simple des
afficheurs, il permet en effet de visualiser un seul bit.
Il existe également des afficheurs spécialisés tels que les cadrans de montres
numériques. Les écrans vidéo permettent également d'afficher des informations.
454
Chaque segment est désigné par une lettre a, b, c, d, e, f, g et le point par D.P.
Figure 33-a, les 8 LED sont reliées entre elles par leur anode, il s'agit d'un afficheur à
anode commune, alors que la figure 33-b, les 8 LED sont reliées par leur cathode,
l'afficheur est dit à cathode commune.
Dans les afficheurs à cathode commune pour allumer un segment, il est nécessaire
d'appliquer sur les anodes correspondant au signe choisi une tension positive afin
que les diodes correspondantes s'allument.
Il est clair que l'on ne peut commander un afficheur de ce type directement avec les
sorties d'un compteur binaire ; en effet, celui-ci requiert une commande spéciale pour
faire apparaître le chiffre décimal choisi. Il convient donc d'intercaler entre ces deux
circuits un décodeur 4 vers 7 comme vous pouvez le voir dans le synoptique de la
figure 35.
Nous avons à faire à un décodeur 4 vers 7 pour lequel nous pouvons dresser la
table de vérité.
457
Ainsi, par exemple pour afficher le code 410 soit 01002, il faut éclairer les segments f,
g, b, c.
Nous pouvons dire que dans ce cas, les entrées d, e, a sont égales à 0 et les
entrées f, g, b, c sont égales à 1.
On note ici les sorties ON et OFF car ce sont des sorties à collecteur ouvert (ON
allume le segment, OFF l'éteint) d'où l'usage de résistances extérieures.
Il existe également des décodeurs (7448 TTL par exemple) dont les sorties sont
actives à 1 pour commander les afficheurs à cathode commune.
Généralement, les 4 bits du code BCD sont indiqués par les lettres A, B, C, D où D
est le bit le plus significatif de poids 23, tandis que celui le moins significatif a un
poids de 20.
458
La table de vérité du décodeur 7447 est donnée figure 38 ainsi que son logigramme
interne qui est un réseau combinatoire, et son brochage.
459
460
Si un 0 se présente sur le décodeur des dizaines, il est à son tour effacé et l'on va
valider du décodeur des unités.
2. 3. - AFFICHEURS MULTIPLEXÉS
Pour afficher 12 chiffres, ce qui n'est pas rare sur une calculatrice, il faudrait 85 files
de liaison et 12 circuits de décodage binaire - 7 segments.
Les diodes LED ont un temps de réponse très court et de toute façon plus court
que celui de l'œil humain.
Il suffit donc d'envoyer successivement sur les lignes bus a, b, c, d, e, f, g les codes
correspondants aux chiffres à afficher et ce de manière cyclique : unité, dizaine,
centaine, millier, unité, dizaine, centaine, millier, unité,.... et ainsi de suite.
Dans cette figure est représenté un bloc de 4 afficheurs ainsi que le décodeur /
multiplexeur qui lui est associé.
Un type d'afficheur très utilisé emploie 37 LED en forme de points disposés selon
une matrice à 7 lignes et 5 colonnes plus 2 points décimaux (DP1 et DP2), l'un
situé à droite et l'autre à gauche (figures 44 et 45).
Ces afficheurs nécessitent du fait du plus grand nombre de LED des circuits de
décodage plus complexes.
On peut donc en déduire qu'il est nécessaire de disposer d'un circuit réalisant le
multiplexage des entrées ligne et colonne de telle sorte que l'allumage des diodes ne
soit pas simultané mais ait lieu les uns après les autres afin de supprimer ce défaut.
Ce type de circuit, appelé également circuit de balayage, peut être externe ou interne
à l'afficheur.
Les multiplexeurs nous étant encore inconnus, nous n'en dirons pas plus long sur ce
type d'afficheur.
Il existe également un autre type d'afficheur à points dont l'utilisation est plus simple
et dans lesquels les caractères disponibles sont limités à ceux du code hexadécimal
autrement dit aux dix chiffres de 0 à 9 et aux lettres de A à F, comme vous pouvez le
voir figure 47.
Les LED sont moins nombreuses, soit 20 pour les caractères et 2 pour le point
décimal et ces circuits ne nécessitent donc pas de multiplexage.
469
Dans la figure 48, vous pouvez voir comment sont disposés les diodes LED et les
circuits de mémoire (Latch), de décodage et de pilotage, incorporés dans le même
boîtier que les LED.
Le décodeur :
La caractéristique la plus importante de ce décodeur est le fait que celui-ci soit inclus
dans le boîtier ce qui permet d'envoyer directement le nombre binaire fourni par le
compteur sur l'afficheur.
Cela est très utile car souvent le nombre à visualiser est disponible uniquement
pendant un très court instant insuffisant pour être perçu par l'œil. En le mémorisant
dans le latch, on peut le visualiser ensuite pendant un temps indépendant de la
logique pour qu'il soit vu correctement.
Circuit de pilotage :
Dans le cas où l'on veut afficher un nombre très inférieur à la capacité maximale de
l'afficheur, ce nombre apparaîtra avec un ou plusieurs 0 à gauche.
Par exemple avec 4 afficheurs, le nombre hexadécimal que l'on peut afficher sera
FFFF. Un nombre beaucoup plus petit tel 23 apparaîtra sous la forme 0023.
Le nombre affiché est parfaitement compréhensible mais l'on peut souhaiter pour des
raisons d'esthétique supprimer ces 0. Dans ce cas en agissant sur l'entrée
d'extinction, on peut les effacer.
Il existe des afficheurs dits afficheurs à dépassement (appelés parfois demi Digit).
471
Dans un voltmètre à affichage numérique par exemple, le premier afficheur (le plus à
gauche) sera 1 / 2 Digit.
Certains corps, bien que liquides, possèdent une structure proche de celle des
cristaux solides. Ils sont caractérisés par un alignement spécifique de leurs
molécules.
L'état smectique :
Les molécules se répartissent en couches qui s'empilent régulièrement les unes sur
les autres. Il se présente actuellement aucun intérêt industriel (figure 50-a).
L'état cholestérique :
Dans chaque plan, les molécules sont parallèles. Lorsque l'on passe successivement
d'un plan à un autre, l'axe des molécules tourne d'un angle constant.
L'état nématique :
Les grands axes des molécules sont parallèles à une certaine direction mais leurs
centres de gravité sont répartis au hasard comme dans un liquide ordinaire.
Les molécules peuvent se déplacer en tous sens dans les trois dimensions (figure
50-c).
473
Les afficheurs à cristaux liquides sont constitués d'une couche de cristal liquide
comprise entre deux plaques de verre revêtues de matériaux conducteurs.
L'alignement des molécules du cristal peut être changé par application d'une tension
aux bornes de ses deux plaques.
Le contact électrique avec le cristal liquide est réalisé au moyen d'un conducteur
transparent. Comme l'apparition du signe dépend de l'alignement des molécules, la
direction avec laquelle la lumière frappe le cristal est critique. Pour cette raison, on
utilise des filtres polarisant la lumière qui sont fixés à l'avant et à l'arrière de
l'afficheur afin de contrôler celle-ci.
La lumière est une onde électromagnétique de longueur comprise entre 400 et 750
nanomètres. Dans le cas le plus courant, les oscillations des champs électriques se
fond dans n'importe quelle direction. On appelle lumière «naturelle».
Il est important de noter que ces filtres sont transparents et non opaques.
Supposons une source de lumière, issue d'une ampoule, ou obtenue par réflexion à
l'aide d'une surface polie.
En plaçant sur cette source lumineuse deux filtres orientés dans le même sens, on
constate que la lumière les traverse, sans absorption notable, comme le représente
la figure 51-c.
Introduisons maintenant un cristal mince, transparent, entre les deux filtres (feuille de
Plexi par exemple), la lumière traverse à nouveau les deux filtres. Ceci est dû au
pouvoir rotatoire du cristal, qui fait repartir la lumière dans une direction bien
déterminée et annule l'effet de croisement des filtres polarisés.
Le cristal liquide, introduit en une mince couche entre les deux filtres croisés,
rétablira, comme le plexi, le passage de la lumière.
Lorsque l'on soumet un cristal liquide nématique à un champ électrique, il s'en suit
une variation dans la direction de l'alignement des molécules (rotation en hélice des
molécules) sans entraîner de phénomène de diffusion dynamique. On adopte une
tension alternative de fréquence supérieure à la fréquence de relaxation du cristal
liquide mais trop faible pour provoquer l'oscillation des molécules, soit d'environ 5
kHz.
Dans les systèmes à effet de champ, on utilise l'effet de nématique en hélice qui
permet de faire varier la rotation de la lumière polarisée d'une façon continue de 0 à
90°.
Ces systèmes sont de très faible consommation et leur contraste élevé permet de les
utiliser dans les montres.
Pour les raisons vues précédemment mais aussi pour éviter un dépôt par électrolyse
qui pourrait endommager les afficheurs ceux-ci sont commandés par un signal
alternatif n'ayant pas de composante continue.
Pour les afficheurs dits à effet de champ, on utilise une tension de commande de 2 à
10 V et de quelques kilohertz de fréquence.
Pour les afficheurs à diffusion dynamique, on utilise une tension de commande entre
7 à 30 V et 20 à 400 Hz.
L'afficheur est quant à lui alimenté entre VDD et VEE, ce qui permet grâce au circuit
adaptateur de niveau de disposer sur la sortie du décodeur d'un niveau d'amplitude
15 V même si le niveau disponible sur les entrées B.C.D. n'est que de 3 V par
exemple.
Le chronogramme de la figure 54 montre les différents signaux tels qu'ils ont été
décrits.
Leur consommation est quasi nulle d'où leur utilisation généralisée dans les
montres à quartz (consommation : environ 15 nano-ampères par millimètre carré).
Dans cette technologie, chaque segment est en fait un filament identique à celui
d'une lampe à incandescence.
Nous pouvons voir que tous les filaments sont commandés entre 0 et 5 V. Tous les 5
V (broches 2, 5, 10, 12, 13) sont reliés ensemble. L'extrémité libre du filament est
alors commandée par la sortie correspondante à l'état bas du décodeur faisant ainsi
passer un courant à travers le filament.
Il est recommandé pour ce genre d'afficheurs d'alimenter les filaments par une
source d'alimentation à courant constant indépendant de la charge afin d'avoir une
luminosité uniforme sur tous les segments de tous les afficheurs.
Des segments métalliques disposés comme ceux des afficheurs 7 segments font
office d'anodes.
Lorsqu'une anode est sélectionnée, les électrons émis par la cathode - filament
viennent «bombarder» les segments choisis. Le tube contenant un gaz dérivé du
phosphore, il s'en suit une émission de lumière bleue au voisinage des segments
sélectionnés.
Compte tenu de son faible coût, les japonais utilisent cette technologie dans les
calculatrices de bureaux.
Les électrons émis par une cathode chauffée par un filament F sont concentrés par
une grille spéciale appelée Wehnelt, accélérés par une anode A et concentrés en un
fin pinceau puis déviés par des plaques de déviations horizontales et verticales
puis projetés sur l'écran constitué par le fond du tube recouvert de phosphore. Le
«bombardement» électronique de l'écran produit alors une lumière ou spot dont on
peut faire varier la forme.
On appelle ces tubes «trichromes» par opposition aux autres tubes dits
«monochromes».
Vous pouvez voir sur le tableau de la figure 58 toutes les comparaisons possibles
entres les différents types d'afficheurs.
484
2. 5. 7. - CONCLUSION
Nous avons vu un nombre importants de codes, d'autres codes existent encore tel le
code U.S.A.S.C.I.I. qui sera traité dans la suite lorsque nous examinerons les
microprocesseurs.
485
Dans cette théorie, nous allons examiner les circuits combinatoires suivants : les
additionneurs, les comparateurs, les multiplexeurs et les démultiplexeurs.
1. - LES ADDITIONNEURS
Dans le système binaire, on peut représenter n'importe quel nombre comme dans le
système décimal et l'on peut effectuer les quatre opérations arithmétiques
élémentaires : addition, soustraction, multiplication et division.
Comme nous le savons, les trois dernières opérations peuvent être toutes ramenées
à l'addition qui est donc la plus importante.
Nous allons tout d'abord rappeler l'addition de deux nombres binaires de 1 bit, nous
obtenons les 4 sommes suivantes :
• 0+0=0
• 0+1=1
• 1+0=1
• 1 + 1 = 10
On remarque que dans les trois premiers cas, il suffit d'un seul chiffre binaire (ou bit)
pour indiquer le résultat. Dans le quatrième cas, il faut deux chiffres : celui situé le
plus à droite est le résultat (ici 0) et l'autre est la retenue (ici 1).
486
La procédure décrite est la même que pour l'addition dans le système décimal. Elle
diffère seulement par la quantité de chiffres mise en jeu : les deux chiffres binaires
contre les dix décimaux.
La figure 1 montre les additions des chiffres 0 et 1 relatives aux deux systèmes.
Nous remarquons que les résultats sont les mêmes, bien que dans le système
binaire il faille tenir compte de la retenue pour exprimer le résultat deux.
1. 2. - CIRCUIT ADDITIONNEUR
Puisque nous connaissons les règles de l'addition binaire, nous allons voir à présent
comment cette opération peut être réalisée par des circuits logiques.
Il faut réaliser un circuit combinatoire (figure 2) dont les deux entrées A et B et les
sorties S et C répondent à la table de vérité de la figure 1.
On remarque que S est à l'état 1 si une seule des entrées est à l'état 1.
S=A B
D'autre part, on remarque que C est à l'état 1 uniquement dans le cas où A et B sont
à l'état 1.
C=A.B
Le circuit qui effectue la somme de deux bits peut être obtenue en associant une
porte OU Exclusif et une porte ET comme le montre la figure 3.
En effet, lorsque l'on doit additionner des nombres de plus d'un chiffre, il devient
nécessaire de disposer de circuits qui tiennent compte de la retenue de la somme
effectuée sur les chiffres de rang immédiatement inférieur.
Pour comprendre cela, nous allons examiner comment on effectue l'addition de deux
nombres décimaux, par exemple :
Cette opération s'effectue par étapes successives : on additionne d'abord les chiffres
de droite, puis les suivants en ajoutant l'éventuelle retenue.
Dans l'étape suivante, on doit faire une addition de 3 chiffres parce qu'on doit tenir
compte de la retenue (ici 1). La somme de 7 et 5 plus la retenue 1, donne 13 ; on
écrit donc 3 et on retient 1.
Il faut donc réaliser un circuit qui puisse additionner les deux chiffres de même rang
d'un nombre binaire avec la retenue de l'étage précédent, soit trois chiffres binaires.
L'additionneur complet dispose donc de trois entrées, deux pour les termes et une
pour la retenue.
Par exemple :
• 0 + 0 + 0 = 0 (résultat 0, retenue 0)
• 0 + 1 + 1 = 210 = 10 (résultat 0, retenue 1)
• 1 + 1 + 1 = 310 = 11 (résultat 1, retenue 1).
Dans cette table, Ai et Bi sont les termes de rang : Ci est la retenue relative à la
somme de Ai et Bi ; Ci + 1 est la retenue relative à la somme de Ai, Bi et Ci. Si est
le résultat de la somme Ai, Bi et Ci.
Vérifions Le résultat :
• Si = Ci . i . i + i . i . Bi + Ci . Ai . Bi + i . Ai . i
• = Ci . ( i . i + Ai . Bi) + i . ( i . Bi + Ai . i)
• = Ci + i . (Ai Bi)
• = Ci (Ai Bi)
La deuxième fait appel à autant d'additionneurs complets qu'il y a de chiffres dans les
nombres à ajouter. Il s'agit de la somme en parallèle.
493
1. 5. - SOMME EN SÉRIE
Les deux nombres (ici de 8 bits) à additionner sont chargés dans deux registres A et
B comme on le voit à la figure 8. Le résultat de la somme est stocké dans un
troisième registre S. Il faut aussi disposer d'une bascule synchrone de type D qui sert
à mémoriser la retenue de la somme partielle précédente.
Les 3 registres et la bascule sont commandés par le même signal d'horloge qui
synchronise toute l'opération.
Les deux termes de la somme sont chargés dans les registres A et B avec une
première impulsion d'horloge. Les deux premiers chiffres de chaque terme (L.S.B.)
sont alors présents à la sortie des registres et donc aux entrées de l'additionneur.
La situation est celle qui apparaît à la figure 9 ou l'on additionne les deux nombres de
l'exemple précédent.
Les contenus des registres A et B se décalent d'un étage vers la droite ; ainsi les
chiffres de poids immédiatement supérieur se présentent aux entrées du sommateur.
Nous nous trouvons alors dans la situation de la figure 10. La bascule est désormais
symbolisée par un carré à l'intérieur duquel est inscrit son état.
La donnée présente sur l'entrée série des registres est sans importance. L'addition
se déroule de façon identique pour les chiffres suivants.
L'addition prise en exemple a pour retenue finale 0, ce qui signifie que le résultat
1101 0110 est juste.
Si la bascule est à l'état 1, cela signifie que la dernière somme a donné lieu à une
retenue de 1. On dépasse ainsi la capacité du circuit, cela est désigné par le terme
anglais overflow qui signifie déborder.
Il y a overflow lorsque le nombre qui est le résultat de la somme a plus de bits que
ceux qui peuvent être contenus dans le registre (dans notre cas 8).
Avec 8 bits, le nombre le plus élevé que l'on peut représenter est : 1111 11112 =
25510.
Avec des registres à 8 bits, on peut donc additionner les nombres compris entre 0 et
255 (exprimés en code décimal), mais le résultat de leur somme ne doit pas lui-
même dépasser 255.
Dans le cas contraire, on obtiendrait un résultat qui, pour être stocké, nécessiterait
un registre de 9 bits.
Le dernier chiffre à gauche du résultat ne trouvant pas de place dans le registre S est
perdu. Le résultat qui est indiqué par le contenu de S est 0100 0000, ce qui équivaut
à 64 en code décimal et non 320 qui est le vrai résultat.
Si l'on relie par exemple la sortie S à l'entrée série du registre A, comme illustré à la
figure 12, le résultat de l'addition apparaîtra dans le registre A.
Toutefois, elle est plutôt lente parce qu'elle requiert autant d'impulsions d'horloge qu'il
y a de chiffres à additionner.
D'autre part, puisque la sortie retenue d'un additionneur est reliée à l'entrée retenue
du suivant, le circuit sommateur de la figure 13 est dit à retenue série. Il est à noter
que l'entrée retenue C0 du premier additionneur doit être portée à l'état 0.
En effet, même si tous les chiffres sont additionnés simultanément, la retenue doit se
propager du premier au dernier additionneur.
Ainsi, le résultat présenté sur les 8 sorties et sur la retenue C8 ne sera exact que
lorsque cette propagation se sera effectuée.
Il faut donc attendre un certain temps que la retenue se soit propagée d'étage en
étage pour que la somme S7 et la retenue C8 soient établis (les sommes S0 à S6
seront déjà établies). Avant ce temps, le résultat contenu dans S n'est pas forcément
correct.
Le temps nécessaire pour qu'un additionneur complet calcule la retenue est très
court, dans le cas des circuits C-MOS quelques dizaines de nanosecondes.
Il ne peut plus alors être négligé surtout dans les ordinateurs qui doivent pouvoir
effectuer des millions d'addition par seconde. On a recours à la méthode de somme
en parallèle à retenue anticipée.
On se base sur le fait que les termes de la somme sont connus et disponibles avant
même que commence l'opération d'addition. On peut alors calculer, en anticipant, la
retenue pour chaque étage indépendamment des étages précédents. Il s'agit de
pouvoir disposer de toutes les retenues simultanément et dans un temps le plus
court possible.
Autrement dit, il faut calculer la retenue C1 à partir des bits A0, B0 et C0, la retenue
C2 à partir des bits A0, B0, C0, A1 et B1 et ainsi de suite.
500
Pour effectuer le calcul des retenues de façon anticipée, il faut transformer l'équation
de la retenue Ci + 1 vu précédemment.
D'où Ci + 1 = pi + CiSi
C1 = p0 + C0S0
501
C2 = p1 + C1S1
• C2 = p1 + (po + C0S0) S1
• C2 = p1 + poS1 + C0S0S1
De même :
• C3 = p2 + C2S2
• = p2 + (p1 + p0S1 + C0S0S1) S2
• C3 = p2 + p1S2 + p0S1S2 + C0S0S1S2
• C4 = p3 + C3S3
• = p3 + (p2 + p1S2 + p0S1S2 + C0S0S1S2) S3
• C4 = p3 + p2S3 + p1S2S3 + p0S1S2S3 + C0S0S1S2S3
Les temps de propagation des différentes entrées vers les différentes sorties du
circuit sont rassemblés dans le tableau de la figure 17.
Il est à noter que le circuit intégré 74LS83 qui est un additionneur de 4 bits à retenue
série effectue la même opération en 72 ns maximum, soit 3 fois plus.
Soit à comparer les deux chiffres binaires A et B. Examinons les cas où A = b, A > B
et A < B.
Toutes ces considérations sont traduites dans la table de vérité de la figure 19.
Donc, AB + =A + B.
506
Nous sommes ainsi conduits au schéma logique de la figure 20 qui fournit les trois
signaux A < B, A = B et A > B à partir des bits A et B.
Le brochage de ce circuit est donné à la figure 21, tandis que la figure 22 représente
son schéma logique.
Avec ce circuit, on compare le nombre A composé des bits A3, A2, A1 et A0 (A3 =
MSB et A0 = LSB) avec le nombre B composé des bits B3, B2, B1 et B0 (B3 = MSB
et B0 = LSB).
508
La table de vérité de la figure 23 met en évidence l'action des entrées A > B, A < B
et A = B.
Si l'on souhaite que la sortie A = B passe à l'état 1 chaque fois que les deux
nombres binaires sont égaux, il suffit de porter l'entrée A = B à l'état 1, l'état des
entrées A < B et A > B n'ayant alors pas d'importance.
Si l'on souhaite que la sortie A > B passe à l'état 1 également dans le cas où
les deux nombres binaires sont égaux, il suffit de porter l'entrée A > B à l'état 1 et de
porter les entrées A < B et A = B à l'état 0.
Dans cette configuration de l'état des entrées A > B, A < B et A = B, la sortie A > B
est à l'état 1 lorsque le nombre binaire A est supérieur au nombre binaire B ou quand
ces deux nombres sont égaux. Elle indique donc si A ≥ B.
509
Celui-ci compare les poids forts de A avec les poids forts de B et, en fonction du
résultat de la comparaison des bits de poids faibles de A et B, indique sur ses sorties
A > B, A = B et A < B le résultat de la comparaison des nombres A et B.
3. - LES MULTIPLEXEURS
Dans ce chapitre, nous allons examiner des circuits logiques très utilisés pour
aiguiller des données : les multiplexeurs.
3. 1. - LE MULTIPLEXEUR A 2 VOIES
Suivant l'état de l'entrée de sélection A, la sortie S recopie soit l'entrée D0, soit
l'entrée D1.
S = D0 + D1A
511
S= . . D0 + . A . D1 + B . . D2 + B . A . D3
515
Ceci est rendu possible parce que l'équation de la sortie d'un multiplexeur fait
apparaître toutes les combinaisons possibles des entrées de commande.
S= E0 + A E1 + ... D C B A E15
Puisque toutes les combinaisons des entrées A, B, C et D sont présentes dans cette
équation, nous pouvons réaliser avec ce multiplexeur n'importe quelle fonction
logique comportant le même nombre d'entrées, soit 4.
Pour savoir comment positionner les autres entrées, on dresse une table avec
toutes les combinaisons des entrées de commande.
Si l'on utilise des portes logiques intégrées, on obtient le circuit représenté à la figure
34.
La sortie du circuit se met au niveau H quand au moins deux des inverseurs sont
commutés sur la tension positive.
Nous allons voir que la même fonction peut être obtenue avec un multiplexeur
unique à seize entrées.
D'après ce qui a été dit auparavant, les quatre interrupteurs sont reliés aux quatre
entrées de commande D, C, B, A du multiplexeur.
Pour déterminer comment relier les seize entrées de données, il suffit de suivre la
procédure décrite et de construire une table à seize lignes comme celle de la figure
35.
Il reste maintenant à porter les entrées sélectionnées aux niveaux indiqués dans la
dernière colonne.
520
Par exemple, l'entrée 2 doit être portée au niveau L, donc reliée à la masse. Par
contre, l'entrée 3 est au niveau H, donc reliée à la tension positive.
En règle générale, il est plus économique d'utiliser des circuits intégrés complexes
comme le multiplexeur à la place de portes traditionnelles (NAND, NOR, ET, OU...)
pour assurer la fonction d'un réseau combinatoire.
4. - LES DÉMULTIPLEXEURS
Dans ce chapitre, nous allons examiner les démultiplexeurs qui sont des circuits
dont la fonction est inverse de celle des multiplexeurs.
521
En effet, ils possèdent une seule entrée de donnée et plusieurs sorties ou «voies».
Pour trouver l'équation la plus simple de S1, dressons le tableau de Karnaugh (figure
39).
S1 = +D
Si nous désirons réaliser le circuit combinatoire avec des portes NAND, il faut
transformer les expressions A + D et + D à l'aide du théorème de DE Morgan :
Le brochage et le schéma logique de ce circuit sont donnés à la figure 41, tandis que
la figure 42 donne sa table de vérité.
On remarque que le nombre binaire formé par l'état des entrées de sélection B et A
donne l'indice décimal de la sortie concernée.
Nous savons que la plupart des décodeurs ont leurs sorties actives à l'état 0 et leur
entrée de validation active à l'état 0.
Nous pouvons dire que la donnée «0» présente sur l'entrée de validation est
transférée sur la sortie sélectionnée.
En résumé, la donnée logique présente sur l'entrée de validation est aiguillée vers la
sortie sélectionnée par les entrées du décodeur.
De même que les livres (c'est-à-dire l'écriture) qui sont une mémoire collective de
l'homme, les premières mémoires à usage technique voire industriel sont déjà
anciennes. Ce sont les bandes de papier perforé de l'orgue de Barbarie ou du métier
jacquard. Une bascule électronique ou un interrupteur sont aussi des mémoires
élémentaires comme nous le verrons.
1. - LES MÉMOIRES
1. 1. - DÉFINITIONS
Mémoire volatile : Une mémoire est dite volatile lorsqu'elle perd ses informations en
l'absence d'alimentation électrique.
Mémoire à accès série : Pour les lire, il est nécessaire de lire les informations dans
l'ordre où elles ont été écrites.
Mémoire à accès aléatoire : L'accès aux informations ne s'y fait pas dans un ordre
prédéterminé.
La bande perforée est munie en son milieu d'un canal d'entraînement. Le code
correspondant à un caractère est inscrit transversalement grâce à des perforations
qui représentent les bits à 1 ou à 0. Le nombre de perforations (généralement bit à
1) est pair ou impair, à cet effet un canal est réservé au bit de parité ou d'imparité.
527
Il existe de nombreux codes développés par chaque constructeur. Ce système qui fut
très répandu sur les facturières électromécaniques est encore utilisé sur certaines
machines à commande numérique (fraiseuses, tours, etc...).
Il est lent, son accès est série : c'est-à-dire qu'il est nécessaire de lire toute la bande
dans l'ordre, avant d'atteindre les données recherchées. Il est progressivement
remplacé par les disquettes.
Ce système est en voie de disparition car il est trop lent et peu pratique, il date du
tout début du siècle.
Ce système, comme le précédent, ne permet qu'une seule écriture (il n'est pas
question de reboucher les trous !).
528
a) Bande magnétique
b) Principe de l'écriture
Sur la bande, le champ magnétique produit par l'électro-aimant dans l'entrefer «e»
permet d'orienter les particules d'oxyde qui conservent après l'arrêt de l'excitation, un
champ rémanent (figure 3).
Il existe différents codes d'écriture. Comme sur la bande perforée, un code est écrit
transversalement sur plusieurs pistes longitudinales.
529
Les données sont mises sous forme de blocs de 80 ou de 200 caractères (figure 4).
Afin de détecter les erreurs d'écriture et de lecture, on utilise un bit de parité (ou
d'imparité) qui donne la parité transversale, ainsi que deux caractères
supplémentaires appelés LRCC (Length Redundancy Character Check), en français,
caractère de contrôle de parité longitudinale et CRCC (Cyclic Redundancy Character
Check), en français, caractère de contrôle de redondance cyclique.
Ces deux derniers caractères sont à l'écriture, déduits des données figurant dans le
bloc d'information, au moyen d'une opération logique ; en faisant à la lecture
l'opération inverse, on peut savoir si le bloc d'information a bien été écrit
correctement sur la bande.
Ce mode d'écriture est utilisé principalement dans les systèmes grand public et dans
tous les cas dans les systèmes de faibles capacités (ordinateurs ou automatismes).
On utilise une cassette standard (type Philips) ou une cartouche de type 3M (figure
5) sur laquelle on convertit les bits 1 et 0 en fréquences sonores (figure 6).
530
531
Cette technique en pleine évolution tend à supplanter tous les autres systèmes de
mémoires à entraînement mécanique.
On appelle «dis-pack» un ensemble de plusieurs disques durs reliés par leur centre.
Comme pour les disquettes, il existe plusieurs diamètres de disques : 14 pouces, 8
pouces, 5 pouces, 3 pouces.
Chaque segment est caractérisé par une adresse comprenant le numéro de la piste
et celui du secteur ainsi que dans le cas de disques double face ou de disques
multiples, le numéro de la face utilisée.
Pour aller lire sur le disque, il sera donc nécessaire de déplacer la tête de lecture
pour la positionner sur le secteur et la piste choisis. On dira qu'on adresse le
système.
L'écriture proprement dite est réalisée selon le même principe général que celui
utilisé pour l'écriture sur bande, mais cette fois-ci, l'information n'étant écrite que sur
une seule piste, les bits sont écrits en série les uns derrière les autres. Il existe
également un caractère de contrôle analogue au CRCC.
537
Ces systèmes sont utilisés pour la mémorisation des sons, ils tendent à remplacer
les anciens disques à enregistrement analogique, dits microsillons 33 ou 45 tours /
minute qui fonctionnent grâce à l'effet piézo-électrique.
La lecture est réalisée grâce au faisceau de lumière cohérente émis par un laser
comme illustrer figure 15. Celui-ci vient traverser la couche protectrice transparente
recouvrant le disque et se réfléchir sur la pellicule métallique.
2. 1. - DISPOSITIFS DE MÉMOIRE
La cellule de mémoire, en général, est donc un circuit ou une partie de circuit qui
peut emmagasiner un seul bit d'information : 0 ou 1, comme représenté figure 17.
Les séquences de bits, stockées dans les registres, peuvent avoir une longueur
maximale égale au nombre d'étages de chaque registre : huit, seize, trente-deux
bits. Ces séquences sont appelées mots.
Dans les leçons précédentes, vous avez pu examiner les registres à décalage ou
«shift register».
Les flèches qui représentent le flux de bits relatifs aux entrées et aux sorties sont en
même nombre que les cellules.
Le terme «accès aléatoire», qualifiant ce type de mémoire, signifie que l'on peut
accéder à chaque case mémoire sans respecter un ordre préétabli mais au hasard
des besoins et des choix.
La donnée présente sur Q est lue lorsque l'entrée R est au niveau haut, ce qui
valide la porte C et permet au niveau disponible en Q de s'afficher sur la sortie DOUT.
La lettre R est l'initiale de «Read» qui signifie lire.
Afin de différencier les deux opérations, on peut utiliser un inverseur tel que celui
représenté figure 22.
De cette façon, on obtient une borne R / W (Read / Write) qui autorisera l'écriture
lorsqu'elle sera à 0 et la lecture lorsqu'elle sera à 1.
Une seule cellule mémoire présenterait peu d'intérêt. Il convient donc de mettre
ensemble plusieurs cellules de manière à obtenir des capacités plus grandes.
On pourrait les regrouper l'une à côté de l'autre en maintenant les entrées et les
sorties séparées. Ainsi, il serait possible d'accéder immédiatement à chaque cellule
en toute liberté comme ont le fait pour les mémoires à accès aléatoires, mais cela
multiplierait aussi le nombre de bornes d'entrées et de sorties.
A partir de cellules de ce type, il est possible de réaliser des mémoires très grandes.
A la figure 24 est représenté le schéma d'une mémoire de faible capacité, de quatre
mots de deux bits.
Cela signifie qu'il y a huit bits regroupés deux à deux en quatre groupes et qu'il est
possible de lire simultanément deux bits.
Il existe des mémoires où l'adresse ne définit la position que d'un seul bit ; dans ce
cas, il est nécessaire que l'adresse indique également la colonne ; donc, outre le
décodeur qui sélectionne les rangées, il est alors nécessaire de disposer d'un
décodeur de colonnes. De plus, chaque cellule, nonobstant une entrée de validation
pour la rangée, disposera d'une entrée de validation pour la colonne. Lorsque les
deux seront actives, on pourra alors lire ou écrire.
546
Ici, on lit ou on écrit un seul bit à la fois. Il est donc nécessaire de disposer d'une
adresse à six chiffres ; en effet, puisqu'il y a 64 cellules, 64 combinaisons
différentes sont nécessaires et il faut six chiffres (26 = 64) pour obtenir ce nombre de
combinaisons.
Les trois premiers bits de l'adresse, de A0 à A2, repèrent la colonne ; les trois autres
bits de A3 à A5 indiquent la rangée ou ligne horizontale.
Les cellules sont représentées par un petit carré. Pour des raisons d'espace, les
différentes entrées et les différentes sorties n'y sont pas indiquées, par contre elles le
sont figure 26.
Le schéma de la mémoire de la figure 26, bien que très simplifié, est encore assez
complexe ; on peut facilement imaginer que lorsque la capacité de la mémoire
augmente, la complexité du dessin augmente aussi !
548
Les lettres I / O sont très importantes car on les rencontre très souvent surtout dans
les microprocesseurs, elles signifient INPUT / OUTPUT ou Entrée / Sortie.
La structure interne des mémoires le permet, en effet ces mémoires sont conçues
pour que l'entrée ne perturbe pas la sortie et vice versa.
549
2. 3. - CHRONOGRAMMES
2. 3. 1. - LECTURE EN MÉMOIRE
Pour lire dans une mémoire, il faut présenter l'adresse de la donnée que l'on veut
lire, mettre l'entrée de lecture / écriture (R / ) à l'état actif (généralement «1») et
sélectionner le boîtier de la mémoire en appliquant sur les entrées de sélection un
niveau actif.
Dans ce chronogramme et le suivant, les parties hachurées indiquent que l'état des
entrées concernées peut varier.
On constate qu'il faut un certain temps appelé temps d'accès pour que la donnée
disponible en sortie soit validée après que les entrées d'adresse, de lecture / écriture
et de sélection aient été activées.
550
Lorsque les entrées de sélection sont activées, les bus de données ne sont plus
dans l'état «haute impédance», mais ne donnent pas pour autant la donnée
correspondante à l'adresse désirée.
2. 3. 2. - ÉCRITURE EN MÉMOIRE
Pour écrire dans une mémoire, il faut procéder de façon analogue à celle utilisée lors
de la lecture.
Dans une mémoire RAM statique, chaque bit d'information est mémorisé dans une
bascule à transistors qui nécessite au moins deux transistors. En réalité, pour que
cette bascule soit adressable, le schéma de chaque cellule mémoire se complique un
peu et se présente sous la forme indiquée figure 30.
Ce ne sont donc pas deux mais six transistors qui sont nécessaires pour stocker un
bit. Les constructeurs ont alors pensé à réduire le nombre de transistors d'une cellule
mémoire de façon à pouvoir en intégrer un plus grand nombre sur une même
surface. Ils ont alors imaginé les RAM dynamiques.
Dans celles-ci, l'information n'est plus stockée sous forme d'état d'une bascule mais
est emmagasinée dans un condensateur.
Les mémoires dynamiques stockent les informations (ou bits) sous la forme de
charges électriques appliquées à de petits condensateurs intégrés. Ces
condensateurs ont des capacités de l'ordre de 50 femtofarads soit 50 x 10-15 farads.
Bien que cette valeur de charge puisse sembler faible, elle correspond tout de même
à trois millions d'électrons et l'on peut considérer qu'une charge mille fois moindre
permettrait encore une mémorisation fiable.
552
Une cellule de mémoire RAM dynamique nécessite donc en réalité deux transistors,
soit trois fois moins qu'une cellule de mémoire RAM statique. Cette simplicité
permet d'atteindre des densités d'intégration assez élevées sur les surfaces
restreintes. A l'heure actuelle, la plupart des constructeurs proposent des RAM
dynamiques de 256 kilobits. Cette diminution du nombre de transistors par cellule
mémoire réduit d'autant la consommation et augmente la rapidité, ce qui constitue
deux avantages non négligeables.
Par contre, l'inconvénient majeur de ces mémoires est que si on les abandonne
après leur chargement, les condensateurs se déchargent en quelques millièmes de
secondes et les informations sont perdues.
Ce processus nécessite un signal périodique qui peut être fourni soit par un
générateur d'horloge, soit par le signal de lecture lui-même à condition qu'il soit
répété régulièrement.
553
Ainsi, dans les mémoires dynamiques, il existe toujours une porte utilisée pour
générer les signaux internes de commande nécessaire à la régénération des
données.
Aussitôt après cette lecture, l'inverseur repasse sur la position «a» et l'état haut
ou bas de la sortie de l'amplificateur sert à recharger éventuellement (dans le cas de
l'état haut) le condensateur de la cellule mémoire.
Lors d'un cycle de rafraîchissement, chaque cellule est ainsi lue et rechargée
aussitôt. Pour accélérer le processus, un amplificateur est relié à chaque
colonne et toutes les colonnes sont rafraîchies simultanément : l'opération de
rafraîchissement d'une mémoire complète consiste donc à lire séquentiellement en
une ou deux millisecondes toutes les lignes de la mémoire.
Nous avons vu précédemment que les mémoires dynamiques MOS étaient plus
rapides que les mémoires statiques réalisées avec la même technologie. Voyons ce
que cela signifie concrètement.
Une mémoire est considérée comme plus ou moins rapide selon le temps plus ou
moins long nécessaire à la lecture du contenu d'une adresse.
Le temps d'accès est le temps qui s'écoule entre l'instant où la mémoire reçoit un
ordre de lecture et l'instant où celle-ci fournit en sortie la donnée contenue à
l'adresse indiquée.
Les mémoires MOS ont un temps d'accès de l'ordre de 100 à 200 nanosecondes,
par contre pour les mémoires bipolaires, ce temps est réduit à quelques dizaines de
nanosecondes.
Le temps de cycle de lecture est égal au temps d'accès, plus un certain temps
nécessaire à la mémoire pour se préparer à recevoir la demande suivante.
En effet, dans les mémoires dynamiques, lorsqu'une donnée vient d'être lue, elle doit
être réécrite aussitôt à la même adresse sous peine d'être perdue.
Cette procédure n'existe pas dans les mémoires statiques qui ne perdent pas le
contenu d'une adresse pendant la lecture.
556
Pour cette raison, ces mémoires sont dites pseudo-statiques. Ce type de boîtier a
tendance à se répandre de plus en plus, surtout dans les systèmes à
microprocesseurs. Bien des mémoires de forte capacité (à partir de 8 kilooctets)
baptisées statiques par les constructeurs sont en réalité des mémoires de type
pseudo-statique.
Toutes les mémoires électroniques décrites jusqu'à présent sont des mémoires
volatiles, c'est-à-dire qu'elles perdent leur contenu dès que l'on débranche
l'alimentation.
Lorsque celle-ci est rétablie, les bascules constituant les mémoires statiques se
mettent dans un état quelconque et imprévisible alors que les condensateurs des
mémoires dynamiques sont souvent déchargés bien que des impulsions parasites
puissent parfois les charger de façon aléatoire.
Dans certains cas, on a besoin de conserver les informations contenues dans les
mémoires même lorsque la tension d'alimentation disparaît.
Avec les mémoires RAM, la seule solution est d'utiliser une petite batterie tampon qui
entre en service lorsque l'alimentation principale est coupée.
Cela est possible avec des mémoires CMOS qui consomment très peu. D'autre part,
les progrès réalisés dans la capacité des accumulateurs font que des batteries de
petites dimensions sont maintenant en mesure d'alimenter pendant des semaines
des mémoires CMOS de 4 kilooctets.
L'emploi de ce type de batterie est assez fréquent dans les appareils portatifs ainsi
que dans les systèmes industriels.
Le coût du rechargement des mémoires avant redémarrage du système est tel qu'il
est plus rentable d'y adjoindre préventivement une batterie de sauvegarde.
557
Malgré tout, cette méthode ne résout pas tous les problèmes et dans de nombreux
cas, on a besoin de mémoires contenant des informations enregistrées de façon
permanente.
Leur contenu est introduit une fois pour toutes au cours de la fabrication.
La figure 35-a montre le brochage d'une mémoire RAM statique de type 4016 de
Texas Instruments de 2K mots de 1 octet. La figure 35-b montre son schéma
synoptique.
559
Les mémoires ROM (Read Only Memories), ce qui signifie mémoire à lecture
possible uniquement, sont également appelées mémoires mortes. Leur principale
caractéristique est d'être non volatile.
La cellule élémentaire d'une ROM peut être obtenue à partir d'une cellule de
mémoire dynamique en substituant au condensateur un circuit ouvert ou une liaison
à la masse. Il en résulte ainsi soit l'état 0, soit l'état 1.
Chaque cellule de mémoire est formée par une diode et par un interrupteur qui est
soit ouvert, soit fermé.
Un interrupteur fermé mettra donc en contact électrique une rangée avec la colonne
à laquelle il est raccordé, à condition bien évidemment que la diode qui lui est
associée soit passante. Celle-ci sera conductrice si son anode est positive, ce qui
nécessite la présence d'un niveau 1 à la sortie du buffer d'entrée, niveau donné par
le décodeur dont la sortie sera 1 (décodeur à sorties actives à 1) pour l'adresse
décodée. Un exemple est donné en couleur bleue figure 37 pour l'adresse 112.
560
Le décodeur fait correspondre à 112 la valeur 310. La sortie 3 est donc à 1. On obtient
donc en sortie D3 = 0 (interrupteur I3 ouvert), D2 = 1 (interrupteur I2 fermé), D1 = 1
(interrupteur I1 fermé) et enfin D0 = 1 car I0 est fermé.
Nous voyons que les interrupteurs fermés pour les autres rangées n'ont pas
d'influence car les diodes qui leur sont associées sont toutes bloquées.
Pour des raisons technologiques, nous conservons une matrice carrée, en effet,
celle-ci permet d'économiser sur la surface de semi-conducteur nécessaire à la
construction d'un tel circuit intégré.
Les quatre bits issus des quatre colonnes sont envoyés deux à deux sur les entrées
de deux multiplexeurs deux vers un. On peut donc obtenir en sortie huit mots de
deux bits en sélectionnant quatre rangées avec soit les colonnes paires deux et
quatre, soit les colonnes impaires un et trois.
Pour ce faire, on utilise maintenant trois bits d'adresse. Les deux premiers bits A0 et
A1 permettent, comme précédemment, de sélectionner la rangée, alors que le
troisième bit A2 permet de choisir soit les colonnes paires, soit les colonnes
impaires.
Pour réaliser le circuit suivant les spécifications de son client, le constructeur utilise
un masque photographique sur lequel il rajoute les liaisons désirées.
Toutefois, ce type de mémoire ne peut être fourni qu'en très grandes quantités,
compte tenu du coût élevé des procédés de fabrication faisant appel à la
photogravure et à l'attaque chimique.
Ces circuits reviennent beaucoup moins cher que les RAM mais les séries doivent
comporter au minimum un millier d'exemplaires.
564
Vous pouvez voir figure 41 le schéma synoptique d'une mémoire ROM de 32K de
type MCM 68 A332 ainsi que son brochage.
Compte tenu de leurs propriétés, les mémoires ROM peuvent, dans certaines
conditions, remplacer un circuit combinatoire.
Comme nous l'avons vu au chapitre précédent, les ROM ne peuvent être utilisées en
dehors de grandes séries, compte tenu des impératifs de fabrication.
C'est pourquoi, afin d'obvier à cet inconvénient, les constructeurs ont mis au point
des ROM programmables par l'utilisateur lui-même et ne nécessitant de ce fait pas
de commandes spéciales, donc également aucun délai de livraison.
Celles-ci possèdent, à la place des liaisons électriques habituelles des fusibles que
l'on peut faire fondre au moyen d'un programmateur de PROM.
La figure 43 représente le schéma d'une cellule de PROM bipolaire avec son fusible.
Dans les PROM, l'élément unidirectionnel diode ou transistor est monté en série
avec le fusible.
Lorsque le fusible est intact, tout se passe comme dans le cas précédent et colonnes
et rangées sont raccordées.
Lorsque l'on désire supprimer un fusible, il suffit de le faire fondre (on dit qu'on le
brûle). On réalise cette opération en envoyant une impulsion de courant qui est
obtenue en augmentant momentanément la tension d'alimentation.
La majeure partie des PROM est directement compatible avec les ROM du point de
vue brochage. C'est pourquoi il est commode, dans l'élaboration d'un prototype,
d'utiliser une PROM qui sera remplacée dans la version définitive par la ROM
équivalente.
On pourra également corriger certaines erreurs et faire fondre un fusible oublié, mais
on ne pourra bien sûr pas agir dans l'autre sens. Car un fusible fondu l'est
irrémédiablement !
Une fois programmée, une ROM ou une PROM ne pourra être programmée une
nouvelle fois.
C'est pourquoi il a été développé une nouvelle sorte de ROM, les EPROM
(Electrically Programmable Read Only Memory) encore appelées REPROM
(Reprogrammable Read Only Memory).
Ces nouvelles mémoires peuvent être reprogrammées plusieurs fois. Cet avantage
permet de faire évoluer les systèmes en apportant des améliorations dans les
programmes. En effet, aucun programme n'est parfait dès le début et souvent il
faudra faire tourner un programme dans les conditions réelles d'utilisation pour
détecter certains défauts.
Pour réaliser des REPROM, il existe plusieurs possibilités. Nous ne décrirons ici que
la plus largement répandue.
Tous les éléments unidirectionnels définissant les points mémoires sont constitués
par des transistors MOS spéciaux dits à grille isolée ou FAMOS (Flotting gate
Avalanche injection MOS) dont l'un est schématisé figure 46.
569
a) Programmation
Par contre, si l'on polarise l'électrode de commande en même temps que l'on envoie
une forte impulsion de tension entre le drain et la source, la fonction NP du drain part
en avalanche, c'est-à-dire que les porteurs de charges se multiplient et acquièrent
suffisamment d'énergie pour traverser l'oxyde isolant et se faire piéger par la grille
flottante.
570
Le phénomène reste stable pendant dix ans, la perte de charge atteignant alors 30
%. Mais par sécurité, il est conseillé de rafraîchir ces mémoires tous les cinq ans.
b) Effacement
Pour effacer une mémoire REPROM, on expose le cristal pendant environ dix à
trente minutes à un «bombardement» de rayons ultraviolets.
Afin de pouvoir réaliser cette opération, les boîtiers de mémoires REPROM sont
pourvus d'une fenêtre en quartz. Celle-ci les protège du rayonnement solaire riche en
infrarouge, qui ne peut ainsi provoquer un effacement accidentel, mais laisse passer
le rayonnement ultraviolet artificiel utilisé lors de l'effacement.
Ce rayonnement ultraviolet doit avoir une très courte longueur d'onde de 2 537 Å (10-
10
m) très exactement, avec une intensité très élevée (six watt-seconde par
centimètre carré). Il est de ce fait recommandé de ne pas s'exposer à ce
rayonnement, qui peut occasionner des brûlures graves aux yeux. Ce rayonnement
produit par ailleurs de l'ozone.
Tout d'abord, il n'est pas possible de modifier ou d'effacer une seule position de
mémoire car seul un effaçage général est possible.
Aussi a-t-il été créé une nouvelle catégorie de mémoires : Les EAROM (Electrically
Alterable PROM) encore appelées EEPROM (Electrically erasable PROM) qui sont
des PROM effaçables électriquement.
L'effaçage et l'écriture octet par octet est possible dans ces mémoires. On utilise
pour cela une impulsion d'une vingtaine de volts.
C'est pourquoi il est apparu récemment sur le marché des circuits hybrides appelés
NOVRAM, qui sont constitués de l'association dans le même boîtier d'une RAM
statique et d'une E2 PROM.
Les mémoires CCD sont moins utilisées que les mémoires précédentes.
L'abréviation est formée des initiales de Charge-Coupled-Device (dispositif à couple
de charge).
Les amplificateurs qui précèdent et qui suivent chaque registre ont pour tâche de
régénérer les charges des cellules.
Les étages des registres contiennent les données sous forme de charges,
matérialisation déjà rencontrée dans les RAM dynamiques.
Dans ce cas aussi, les charges doivent être périodiquement rafraîchies et les
données sont sans cesse en mouvement.
Cela est assuré par les quatre signaux d'horloge désignés par φ1,, φ2,
φ , φ3
φ et φ4.
Les avantages offerts par les mémoires CCD sont les suivants : grande capacité et
coût relativement bas.
Le temps d'accès de ces mémoires est élevé ; car, du fait de leur structure il est
nécessaire, pour lire ou écrire un bit par exemple, de sélectionner le registre qui le
contient puis d'attendre que le bit en circulant, arrive jusqu'à la sortie du registre.
Rappelez-vous que les RAM, comme les ROM, sont des mémoires à accès
aléatoire, c'est-à-dire que le temps nécessaire pour l'opération de lecture ou
d'écriture est indépendant de la position physique, dans la matrice de la mémoire, de
la cellule à laquelle on veut accéder.
Les mémoires CCD sont par contre à accès série, le temps mis par les bits pour être
transférés d'une cellule à la suivante est à peu près celui d'un cycle dans une
mémoire à accès aléatoire.
En conséquence, le temps d'accès d'une mémoire série avec 256 bits par registre
(comme dans l'exemple précédent) est 256 fois le temps de cycle d'une mémoire
à accès aléatoire.
Pour cette raison, les mémoires CCD ne sont pas en mesure de concurrencer les
mémoires RAM, mais peuvent être considérées comme mémoires de remplacement
de grande capacité pour ordinateurs ; dans ce cas, elles sont appelées mémoires
de masse.
5. - MÉMOIRES MAGNÉTIQUES
Elles sont de deux types : les mémoires à tores, anciennes, et les mémoires à bulles
qui sont appelées à un brillant avenir.
Ces mémoires RAM non volatiles ont été très utilisées ; mais la complexité de leur
fabrication, leur coût et leur encombrement les ont fait progressivement abandonner.
5. 1. 1. - PRINCIPE
Écriture : L'état 0 sera donné par le sens du champ magnétique engendré par un
courant circulant dans le sens de la flèche dessinée sur l'enroulement L1 de la figure
53 et par conséquent de l'induction rémanente + Br résultant de ce champ. Le tore
sera à l'état 1 lorsque le sens de l'induction sera l'inverse de celui nécessaire pour
produire l'état 0.
Si au contraire, l'état initial du tore était à l'état 1, le champ induit, s'il a une
valeur au moins égale à Hm, provoque le basculement de l'état magnétique de ce
tore dans l'état 0. Ce faisant, le point de fonctionnement va traverser une zone à forte
perméabilité de la caractéristique du ferrite, d'où il résultera une variation de flux qui
engendrera aux bornes de l'enroulement L2 une force électromotrice.
577
5. 1. 2. - RACCORDEMENTS ET UTILISATION
Nous avons vu que pour faire basculer un tore magnétique à cycle d'hystérésis
rectangulaire de l'état 0 (+ Br) à l'état 1 (- Br), il faut un champ ou une force
magnétomotrice au moins égale à Hm.
Si pour produire un champ Hm, il faut un courant Im parcourant un fil, il faudra si l'on
utilise deux enroulements, deux courants Im / 2 de même sens. On n'obtiendra ainsi
le basculement du tore que si les deux enroulements sont alimentés simultanément
par une impulsion de courant Im / 2.
Ce principe de coïncidence des courants est celui utilisé dans les mémoires
magnétiques.
Les tores sont disposés selon des rangées et des colonnes. Pour accéder à l'un de
ces tores pour lire ou écrire, on envoie simultanément une impulsion sur le fil des
rangées (Y) et sur celui des colonnes (X).
Dans les systèmes proposés par les constructeurs, au lieu d'inverser le sens des
impulsions dans une paire de fils pour la lecture et l'écriture de l'information, on utilise
deux fils verticaux et deux fils horizontaux alimentés en sens inverse. Une paire est
spécialisée pour l'écriture et l'autre pour la lecture. Pour réécrire l'information après
lecture, il suffit donc de réinjecter sur les fils d'écriture une impulsion légèrement
retardée par rapport à celle de lecture.
Les mémoires à bulles magnétiques sont, tout comme les mémoires CCD, des
mémoires à accès série.
5. 2. 1. - BULLE MAGNÉTIQUE
Dans un matériau magnétique en couche mince, les zones aimantées prennent des
allures quelconques et se répartissent de manière aléatoire ; toutefois, si l'on
applique un champ magnétique extérieur, perpendiculaire croissant, ces zones se
rétrécissent jusqu'à former de minuscules cylindres (figure 57).
581
Ces cylindres, que l'on brise par un champ magnétique inverse, constituent des
«bulles magnétiques» et peuvent servir à mémoriser des informations.
Un champ magnétique tournant est fourni par deux petits enroulements orthogonaux
en fils d'aluminium. Ce champ magnétique tournant très faible par rapport au champ
magnétique permanent, dit de stabilisation, permet de faire circuler les bulles (figure
59).
582
Les bulles sont guidées dans leurs déplacements par un guide en Permalloy dont les
motifs varient suivant les constructeurs (figure 60).
583
Une mémoire à bulles est constituée d'une sorte de registre à décalage rebouclé sur
lui-même dans lequel une bulle représente un bit 1 et son absence un bit 0.
Pour lire, il faudra détecter la présence des bulles. Mais il faudra attendre que les
bulles correspondant à l'adresse choisie défilent dans le détecteur de bulles du fait
de l'accès séquentiel de la mémoire, d'où la nécessité de les faire circuler.
Nous voyons sur la figure 61 qu'il est nécessaire pour lire une information de
dupliquer la bulle.
Avec les mémoires à bulles s'achève ce panorama des mémoires. Dans la prochaine
théorie 13, vous pourrez voir les réseaux logiques programmables qui, dans certains
cas, peuvent avantageusement remplacer les mémoires ROM car ils sont moins
coûteux.
586
Dans la théorie précédente, nous avons vu l'utilisation que nous pouvions faire des
mémoires ROM, pour remplacer un circuit combinatoire formé généralement avec
des portes logiques NAND, NOR,....
Les PLA, ainsi que les multiplexeurs, démultiplexeurs et les mémoires micro-
électroniques, sont le résultat des technologies récentes d'intégration, lesquelles ont
également conduit à la conception et à la réalisation de circuits très complexes tels
que les microprocesseurs et leurs circuits associés.
Cette évolution vers les circuits à haut niveau d'intégration a également posé de
nouveaux problèmes liés à l'assemblage des circuits intégrés entre eux et à leur
interfaçage qui est l'ensemble des principes et des techniques permettant de relier
plusieurs systèmes électroniques entre eux.
Dans cette théorie, nous donnerons une vue générale sur ces circuits récents, ainsi
que sur l'ensemble des problèmes qui s'y rattachent.
L'évolution des circuits intégrés a été telle que le coût par transistor intégré s'est
réduit au cours des vingt dernières années à un millionième de celui initial.
Il est désormais possible de concentrer sur un seul circuit intégré tout un ensemble
de fonctions logiques autrefois réalisées par plusieurs circuits intégrés. Pensez par
exemple aux calculatrices de bureau : vers la fin des années soixante, on a
commencé à les construire avec plusieurs dizaines de circuits S.S.I. et M.S.I. ;
aujourd'hui, un seul circuit intégré L.S.I. effectue toutes les opérations nécessaires.
587
C'est parce que ces calculatrices peuvent être diffusées à plusieurs dizaines de
milliers d'exemplaires qu'il est apparu plus avantageuse de concevoir et de produire
un seul circuit intégré regroupant toutes les fonctions de la calculatrice.
Pour une production en petite série, un fabricant peut employer d'autres méthodes,
en particulier utiliser des composants standards.
Le facteur déterminant est la quantité d'un produit donné qui sera écoulée sur le
marché. En général, quand cette quantité est assez importante, le constructeur fait
réaliser un circuit approprié (ou plusieurs) par un fabricant de circuits intégrés.
Ces circuits intégrés sont appelés CUSTOM (client), car ils sont développés à la
demande d'un client bien précis.
Pour une production en petite série, la solution la plus économique consiste à utiliser
les composants standards disponibles sur le marché. Dans certains cas, il existe
plusieurs solutions pour réaliser une fonction. Par exemple, on peut soit concevoir un
réseau combinatoire, soit utiliser des ROM ou des multiplexeurs, comme cela a été
indiqué dans les théories précédentes.
En règle générale, il est préférable d'utiliser des circuits intégrés plus complexes en
nombre restreint plutôt qu'une grande quantité de circuits intégrés moins complexes.
En effet, le coût de revient d'un circuit complexe (par exemple L.S.I.) est à peine plus
élevé que celui d'un circuit simple (S.S.I.).
Il faut noter, par ailleurs, qu'un circuit L.S.I. peut être nettement plus cher qu'un
circuit S.S.I. dans la première phase de production de ce circuit car le coût est
directement lié à la quantité produite. Comme l'indique la figure 1, le prix de revient
diminue très rapidement quand la production augmente.
588
Les circuits intégrés complexes présentent donc plusieurs avantages ; ils peuvent
remplacer plusieurs circuits intégrés moins complexes, ils permettent de réduire la
dimension des circuits imprimés, de faciliter les opérations de montage et finalement
de diminuer le prix de revient.
Nous pouvons noter également que dans le coût global d'un système
microélectronique, le prix des circuits intégrés représente environ 10 % du montant
total, les 90 % restants se répartissant entre les différents postes suivants :
• Circuit imprimé,
• Connecteurs,
• Insertion et soudure des circuits intégrés,
• Liaisons,
• Alimentation,
• Châssis,
• Condensateurs de découplage,
• Essai du système,
Il a été calculé que la somme de tous les frais, dans le cas d'un système numérique
moyen, est égale à environ vingt fois le coût des circuits intégrés composant ce
système. Si par exemple, le prix du composant est d'un euro, le prix de revient global
sera de vingt euros.
Donc le coût total d'un système est fonction du nombre de circuits intégrés qui le
composent même s'il n'est pas directement proportionnel à celui-ci.
589
Le nombre de circuits intégrés est multiplié par 4 alors que le coût du système double
seulement.
Si maintenant les deux systèmes étaient intégrés en un seul circuit, leurs coûts
globaux seraient à peu près équivalents puisque les deux circuits intégrés
reviendraient pratiquement au même prix.
Ces différentes notions sont bien connues des producteurs de circuits intégrés ainsi
que de leur clientèle. Néanmoins, il existe un inconvénient : les circuits intégrés
complexes sont très spécialisés et très variés. Par conséquent, ils sont généralement
produits en quantité plus faible que les circuits standards.
Les PLA ont été conçus en partant du principe que toute fonction logique peut être
écrite sous la forme d'une somme de mintermes (forme canonique). Soit par
exemple la fonction : F = bd + ab +a cd.
Cette fonction est la somme des trois mintermes suivants : bd, ab et a cd.
Chaque porte OU (A', B', C') à quatre entrées permet d'effectuer la somme des
mintermes nécessaires à l'obtention d'une fonction logique définie.
Dans la partie supérieure, les lignes horizontales représentent les entrées I0, I1, I2,
I3 et I4 du PLA et les lignes verticales correspondent aux entrées des portes ET.
L'état logique de la sortie d'une porte ET correspond donc à la valeur d'un minterme.
Il suffira, lors de la programmation, de réunir les sorties des portes ET que l'on
souhaite aux entrées des portes OU afin de réaliser la somme logique des ces
mintermes.
Le circuit ayant pour sortie F1 est formé avec la porte OU (A') et avec les portes ET
A et B ; celui ayant pour sortie F2 est formé avec les portes B', A et C ; enfin, celui
ayant pour sortie F3 est formé avec les portes C', D et E.
Il est nécessaire de constituer cinq mintermes. Il faut donc au minimum cinq portes
ET à trois entrées (il y a trois variables). Il faut également deux portes OU puisqu'il y
a deux fonctions (F1 et F2) à générer.
Vous remarquez que le ET noté B n'est pas utilisé. En effet, dans la table de
fonctionnement de la figure 5, à la deuxième ligne, vous constatez que les deux
sorties F1 et F2 sont à l'état L, donc il n'est pas nécessaire de câbler les entrées de
la porte B.
Dans le cas d'un PLA, on définit la capacité de matrice qui est égale au produit du
nombre de portes ET par le nombre de portes OU. Cette capacité s'exprime en bits.
Dans le cas présent, elle est de 4 x 2 = 8 bits.
L'avantage du PLA par rapport à la ROM est manifeste si l'on considère un PLA à 14
entrées et 8 sorties, disponible sur le marché.
Une ROM équivalente devrait avoir une capacité de 214 x 8 = 131 072 bits.
Un PLA est donc beaucoup plus avantageux qu'une ROM. En effet, dans le cas de
cette dernière, il faut tenir compte de toutes les combinaisons possibles des entrées :
avec 14 entrées, il faut donc une ROM avec 214 = 16 384 adresses, tandis qu'avec
un PLA on ne s'intéresse qu'aux combinaisons données par la table de
fonctionnement qui sont nécessaires pour résoudre le problème.
1. 3. - LES FPLA
Comme les constructeurs ont conçu et produit les PROM après les ROM, les FPLA
(Field Programmable Logic Array = réseaux logiques programmables par
fusibles) sont apparus après les PLA.
Leur principe reste le même que celui des PLA. Les FPLA sont facilement
programmables par l'utilisateur. Il suffit pour cela de posséder un appareil à
programmer qui est souvent un simple programmateur de PROM.
La figure 7 représente le schéma d'un FPLA déjà programmé. Les fusibles sont
représentés par le symbole .
595
Pour chaque entrée du FPLA, il y a deux lignes horizontales ; le signal présent sur
l'une étant complémentaire de celui présent sur l'autre, ainsi que l'indique le symbole
suivant :
Le point S (ainsi que S', S"...) est la sortie d'un ET constitué par des diodes en
parallèle.
S = I0 . 1
Il est bien évident que S' = 0 pour toutes les combinaisons des variables d'entrée.
Exemple :
Ce registre permet l'implantation dans le FPLA d'un circuit logique séquentiel. L'état
des sorties est à la fois fonction de l'état des entrées et de l'état logique des sorties
avant le front d'horloge.
598
Le buffer est un ensemble logique qui recueille à la fois les données présentes sur
les 16 entrées principales et sur les 6 sorties du registre de mémorisation.
Le registre de sortie sert à maintenir les données entre deux impulsions d'horloge.
1. 5. - GATE ARRAY
Parfois, les PLA décrits dans les paragraphes précédents, sont inadaptés pour
résoudre certains problèmes ; soit qu'ils ne soient pas suffisamment souples
d'emploi, soit qu'il faille réaliser un nombre important de circuits assez complexes.
Une seconde solution consiste à utiliser des circuits dont le principe est
intermédiaire entre celui des PLA et celui des customs et que l'on nomme Gate
Array (réseau de portes logiques) ou encore FPGA (Field Programmable Gate
Array).
Ces circuits sont constitués d'un nombre important de portes NAND situé
généralement entre 500 et 2 000.
La programmation consiste à relier entre elles des portes NAND afin de constituer le
réseau logique adéquat.
L'avantage du Gate Array réside dans le fait qu'on peut le produire à grande échelle
pour des applications variées.
Le microprocesseur est un circuit intégré sur une large échelle (L.S.I.) qui inclut
une unité de calcul traitant des informations fournies par l'extérieur du système.
Ce programme est constitué par une suite de phases opératoires devant être
exécutées dans un ordre chronologique déterminé.
De plus, le microprocesseur est devenu un produit standard puisqu'il peut remplir des
tâches très diverses. Il en est résulté un abaissement considérable des coûts de
production.
La mémoire ROM possède une capacité d'un ou deux kilooctets et elle contient le
programme de travail.
La mémoire RAM possède une capacité de quelques centaines de bits. Ce sont les
informations relatives à l'état du système et aux organes de commande qui transitent
par cette mémoire.
L'unité de calcul traite les données qui lui parviennent et génère les informations
nécessaires à l'accomplissement du programme.
C'est un paramètre dont il faut souvent tenir compte dans la conception des
systèmes numériques.
Lors de l'examen des compteurs, cette notion a déjà été présentée. Il était apparu
que si l'on faisait travailler certains circuits intégrés à des fréquences trop élevées, il
se produisait des aléas de fonctionnement, voire des pannes complètes dans
certains cas.
C'est pour ces raisons que le constructeur précise toujours la vitesse maximale de
fonctionnement d'un circuit intégré.
Cette vitesse (ou fréquence) maximale est de quelques MHz pour les circuits CMOS
et de quelques dizaines de MHz pour les circuits TTL.
L'une est la valeur typique (ou valeur moyenne) qui est la fréquence maximale à
laquelle beaucoup des circuits du même type peuvent fonctionner. L'autre est la
valeur minimale : c'est la fréquence maximale à laquelle on est absolument certain
que tous les circuits de ce type peuvent fonctionner. Cette dernière est donc un peu
moins élevée que la valeur typique.
En général, il faut tenir compte de cette valeur minimale et non de la valeur typique
car si l'on travaille à cette dernière, le risque existe que le composant ne puisse
fonctionner correctement.
Le tableau de la figure 13 indique les effets de ces deux facteurs sur la fréquence
maximale.
Jusque-là, nous n'avons pris en compte qu'un seul composant. Or, dans un système
numérique, il y a généralement tout un ensemble de circuits intégrés reliés. D'autres
facteurs peuvent alors interférer sur la vitesse maximale de fonctionnement.
La donnée présente sur l'entrée D1 est transférée en sortie Q1 et les deux portes
NAND commutent l'une à la suite de l'autre. La donnée présente sur l'entrée D2
change.
La figure 16 montre les différents retards qui s'ajoutent, dus aux temps de
propagation à travers la première bascule et les deux portes NAND.
605
Les bascules D sont du type 74C74, les portes NAND du type 74C00 et la tension
d'alimentation est de + 5 volts (quand la tension d'alimentation augmente, le temps
de propagation diminuent).
La durée minimale de la période d'horloge est donc égale aux trois temps de retard
ajoutés au temps de prépositionnement c'est-à-dire :
Il faut donc en général limiter le nombre de portes logiques mises en série les unes
après les autres.
Dans les cas où ce n'est pas possible, il faut alors insérer des bascules
supplémentaires comme indiqué figure 17.
Dans le second cas, la période minimale d'horloge doit être suffisante pour que la
donnée présente sur l'entrée d'une bascule n puisse se trouver sur l'entrée de la
bascule n + 1 dans les temps impartis.
Dans le cas présent, cette période est égale à la somme des temps de propagation
d'une bascule ajoutée à ceux des deux portes logiques, ainsi qu'à celui du temps de
prépositionnement.
Nous trouvons :
3. 2. - LE DÉCALAGE DE L'HORLOGE
Le décalage d'horloge (ou CLOCK SKEW) est également un problème lié à des
différences de temps de propagation à travers des portes logiques.
Si les temps de propagation des deux buffers B1 et B2 sont très différents, il peut y
avoir un mauvais fonctionnement du circuit.
608
A partir de l'instant t0, Q1 passe à l'état 0 après un temps T qui correspond au temps
de commutation de la bascule 1. Q2 reste à l'état 1 puisqu'à l'instant t0, D2 est à 1.
Q2 ne change d'état qu'au front d'horloge suivant (instant t1).
La sortie Q1 de la première bascule est passée à l'état 0 avant que le front d'horloge
ne parvienne sur l'entrée CLK 2 de la deuxième bascule.
L'entrée D2 est donc à l'état 0, alors qu'elle devrait être à l'état 1 à ce moment-là.
Une solution à ce problème consiste à intervertir les deux signaux d'horloge comme
indiqué figure 21.
Ainsi, la deuxième bascule commutera un peu avant la première et l'on est sûr que la
donnée initiale présente en D2 est transférée en Q2.
3. 3. - LES PARASITES
Les parasites sont définis comme étant des perturbations affectant un signal
électronique. Les origines de ces parasites sont innombrables mais on peut les
classer en deux catégories : les parasites d'origine naturelle comme ceux générés
par les orages par exemple et les parasites d'origine artificielle tels ceux produits par
un moteur.
Il faut noter également qu'un ensemble logique peut très bien fonctionner pendant les
phases d'étude et d'essais réalisés par le constructeur et être inopérant une fois
installé chez le client. En effet, l'environnement électronique n'est plus le même et
certains phénomènes physiques qui n'ont pas été pris en compte au moment de la
conception peuvent se manifester à ce moment-là.
La technologie employée n'est pas sans conséquence sur l'effet de ces parasites.
610
Les circuits réalisés en technologie MOS sont beaucoup moins sensibles aux
parasites que ceux réalisés en technologie TTL. Tout d'abord, la technologie MOS
est moins rapide (les temps de transition sont plus longs que pour la TTL) et la
marge de bruit est beaucoup plus importante qu'en TTL. Elle peut atteindre 45 % de
la tension d'alimentation en MOS, alors qu'elle n'est que de 0,4 volt en TTL.
C'est pour ces raisons qu'en milieu industriel à haut risque de parasites, il est
préférable d'employer la technologie MOS.
La figure 22 montre un exemple de réflexions sur une ligne qui n'est pas adaptée à la
charge.
Les réflexions peuvent créer des problèmes pour des circuits rapides (TTL, ECL...),
mais aussi pour des circuits lents (CMOS).
Des rebonds peuvent se produire dans un système synchrone avec horloge, et ils
peuvent être pris en compte comme signal d'horloge. C'est le cas présenté figure 23.
611
Des couplages inductifs peuvent aussi se produire entre deux ou plusieurs lignes.
Il faut que les lignes de transmission ainsi que les liaisons des circuits imprimés
soient les plus courtes possibles.
Vous savez que les composants numériques appartiennent à des familles logiques
différentes : TTL, CMOS, ECL..., chacune ayant ses caractéristiques propres
(alimentation, temps de propagation, consommation...).
Par conséquent, quand il s'agit de relier entre eux des composants de familles
différentes, il faut tenir compte de leurs caractéristiques électriques. En général, il est
nécessaire d'insérer un circuit d'interface (= circuit d'adaptation) entre ces
composants.
Considérons tout d'abord les raccordements entre composants d'une même famille.
Ces différentes notions (entrance et sortance) ont été vues dans les chapitres
relatifs à la technologie des composants.
Une sortie MOS peut fournir (ou absorber) au moins 1,75 mA pour une tension
d'alimentation de 5 volts (8 mA pour 10 volts).
612
Donc, une sortie de porte logique MOS peut théoriquement être reliée à un nombre
d'entrées MOS situé entre 350 000 et 1 600 000.
Pour raccorder des portes MOS à des portes TTL, il peut se poser un problème lié à
des tensions d'alimentation différentes.
Par ailleurs, une sortie TTL à l'état H peut se situer à 2,4 volts, alors qu'une entrée
MOS à l'état H doit être à un potentiel de 3 à 3,5 volts (pour Vcc = 5 volts).
La figure 24 représente deux portes TTL et CMOS alimentées sous 5 volts, reliées
selon ce principe de montage.
Une sortie MOS peut être reliée à une entrée TTL du type Schottky, faible
puissance (74 LS) au TTL Low-Power (74 L).
Dans tous les autres cas, on peut recourir à des circuits MOS possédant une sortie
bufférisée et fournissant un courant plus élevé.
Si les circuits MOS sont alimentés à partir d'une tension différente de 5 volts, il
devient nécessaire d'intercaler un buffer entre la sortie CMOS et l'entrée TTL, ainsi
qu'un buffer à collecteur ouvert entre la sortie TTL et l'entrée MOS (figure 25).
613
Un autre cas à considérer est celui de la figure 27 où un circuit MOS est alimenté
entre - 5 volts et + 5 volts.
La broche du circuit MOS, généralement câblée à la masse, est dans le cas présent
reliée à - 5 volts. Dans une telle situation, il est nécessaire d'intercaler entre la sortie
TTL et l'entrée MOS un transistor MOS.
Quand la sortie TTL est au niveau H, le transistor conduit et l'entrée du circuit MOS
est portée au niveau H (+ 5 volts). Si la sortie TTL est au niveau L (0 volt), le
transistor se bloque et l'entrée MOS passe au potentiel - 5 volts.
Le fait d'alimenter la porte CMOS entre - 5 volts et + 5 volts permet d'avoir une
vitesse de fonctionnement plus élevée qu'avec une alimentation de 5 volts.
615
Dans cette dernière théorique, nous allons examiner une autre famille de circuits très
répandus : «les convertisseurs». Voyons tout d'abord quels sont leurs rôles et
quelles peuvent en être les applications.
Ces grandeurs physiques sont des données analogiques qui peuvent prendre toutes
les valeurs possibles.
La mesure de ces grandeurs s'effectue grâce à des capteurs qui les transforment en
signaux électriques analogiques.
Chaque fois qu'un circuit digital doit traiter une donnée analogique, il est nécessaire
que cette dernière soit traduite en un langage compréhensible par le circuit, c'est-à-
dire en code binaire.
Mais la pompe ne peut pas être commandée directement par un circuit digital qui
délivre uniquement deux niveaux : 1 et 0. La commande doit être continue,
proportionnelle au débit de carburant que l'on désire obtenir.
Il faut donc transformer les ordres codés en binaire délivrés par l'ordinateur en
un signal électrique analogique. Cette opération est effectuée par un
convertisseur digital / analogique (D / A).
616
Le long de la ligne, les signaux sont souvent altérés par des parasites
électromagnétiques, provoquant des grésillement et un bruit de fond très gênants.
617
Les circuits CMOS ont une immunité au bruit égale à 0,45 fois Vcc. Dans ces
conditions, en alimentant les circuits avec une tension Vcc de 10 volts, des
parasites d'une amplitude inférieure à 4,5 volts ne sont pas en mesure d'influencer le
comportement des convertisseurs et sont facilement éliminés. Pour restituer le son à
l'autre bout de la ligne, il faut évidemment utiliser un convertisseur digital /
analogique.
Il existe, en outre, d'autres méthodes qui permettent de traiter les signaux digitaux de
façon à éliminer les parasites qui se seraient éventuellement infiltrés dans la
transmission.
Un autre exemple d'utilisation des convertisseurs est rencontré dans les avions
modernes pilotés par un ordinateur de bord.
618
L'ordinateur de bord délivre des suites de nombres binaires qui doivent être
converties en données analogiques au moyen de convertisseurs appropriés.
Il est évident que les convertisseurs sont non seulement utiles, mais que dans de
très nombreux cas, ils sont indispensables. L'utilisation des convertisseurs tend à se
généraliser puisque les circuits digitaux sont plus stables, moins coûteux et en
général crée moins de problèmes que les circuits analogiques.
En bas, il y a les bits les moins significatifs (LSB = Least Significant Bit) et en haut
(figure 5), arrivent les bits les plus significatifs (MSB = Most Significant Bit).
On peut donc dire que la tension VA du convertisseur est encore de type numérique,
mais comparativement aux signaux binaires sur les bornes d'entrée, elle acquiert
déjà une allure analogique.
Le bit de rang 1 (LSB), lorsqu'il prend la valeur 1, détermine une valeur VA égale à 1
/ 16 de VR.
Dans les mêmes conditions (bit = 1), le bit de rang 2 correspond à 1 / 8 de VR, le bit
de rang 3 à 1 / 4 de VR et le bit de rang 4 (MSB) à 1 / 2 de VR.
• 1 / 2 pour le MSB
• 1 / 4 pour le 2ème bit
• 1 / 8 pour le LSB.
Par exemple avec 4 bits, on obtient 16 niveaux de 0000 à 1111 et, comme nous
l'avons vu précédemment, chaque niveau ou marche est distant du précédent de 1 /
16 de VR.
La résolution nominale est l'amplitude des marches et coïncide avec le poids du bit le
moins significatif (LSB) : 1 / 16 dans le cas d'une entrée à 4 bits.
23 - 1 = 8 - 1 = 7
On suppose que, dans ce circuit, on ne peut fermer qu'un seul interrupteur à la fois.
Notons que la valeur binaire affectée à chacun des interrupteurs est égale au
nombre de résistances connectées entre l'interrupteur considéré et la masse.
Ce circuit présente deux inconvénients. Le premier réside dans le fait qu'il est
nécessaire de disposer d'autant d'interrupteurs moins un qu'il y a de combinaisons
binaires possibles (rappelez-vous que pour seulement 8 bits, il y a déjà 256
combinaisons ce qui nécessiterait 255 interrupteurs). D'autre part, la résistance de
624
charge RL, de valeur non infinie, déséquilibre tout le pont diviseur et les tensions de
sortie ne sont plus exactement proportionnelles aux valeurs numériques d'entrée.
Pour ces raisons, on se sert en pratique d'un circuit plus complexe utilisant un
amplificateur opérationnel. Ouvrons une parenthèse pour donner quelques
précisions essentielles sur ce type de circuit.
2. 2. - AMPLIFICATEURS OPÉRATIONNELS
On remarque que l'alimentation n'est pas représentée. Toutefois, sur les circuits, elle
est obligatoirement présente. Généralement, on utilise une alimentation symétrique
caractérisée par la présence de trois bornes : une pour la tension positive, une pour
la tension négative, une pour la masse.
pratiquement infinie :
Dans ce cas, on dit que «l'Offset» est nul. Offset est un terme anglais, utilisé pour
indiquer le décalage du point de repos par rapport au zéro.
Dans l'amplificateur idéal, l'impédance d'entrée est infinie, donc le courant d'entrée
est nul.
I1 + I2 = Ie = 0
On en déduit que :
I2 = - I1
Comme le courant d'entrée est nul, on peut considérer que la tension Ve aux bornes
de l'impédance d'entrée l'est également.
626
Le signe «-» placé devant le rapport des résistances R1 et R2, indique que la tension
de sortie VS est de signe opposé (ou en opposition de phase) avec VE.
Voyons maintenant ce qui se passe avec un nombre binaire égal à 100. Le premier
contact est fermé, les deux autres sont ouverts, comme indiqué figure 15.
En comparant cette figure avec la figure 12, on constate que les deux circuits sont
équivalents car les deux résistances R3 et R4 n'ont aucune influence.
En pratique, le circuit tel que nous venons de le décrire, n'est pas utilisé. En effet, si
l'on voulait travailler avec 12 bits par exemple, la valeur de la dernière résistance
serait égale à 20,480 MΩ Ω.
Il est assez difficile de réaliser des résistances de très grande valeur avec une bonne
précision.
D'autre part, du fait des grandes différences de valeurs, les variations des
résistances dues à la température ne sont pas identiques. Le poids de chacun des
bits (1 / 2, 1 / 4, 1 / 8, etc...) n'est plus exact et la précision du système est mauvaise.
La solution adoptée pour surmonter les problèmes créés par des résistances de
valeurs trop différentes est représentée figure 16. Elle consiste à utiliser
uniquement deux valeurs de résistances : R et 2R.
629
Dans ce circuit, les interrupteurs relient les résistances 2R, soit vers la tension de
référence VR, soit vers la masse, selon que le bit correspondant est à 1 ou à 0.
Le bit de poids fort (MSB) est situé à droite du réseau de résistances R - 2R. Lorsque
l'interrupteur correspondant à ce bit est sur la position 1, la tension de sortie est
égale à :
Avec les calculs traditionnels sur les ponts diviseurs de tensions (qui ne sont pas
effectués ici), on démontre que le poids de chacun des bits est de 1 / 2, 1 / 4, 1 / 8,
etc...
Si le bit 2 est par exemple à 1, le circuit devient celui indiqué figure 17.
La résistance 2R, correspondant au bit MSB, n'a aucune influence, car elle est
connectée entre la masse et l'entrée de l'amplificateur opérationnel qui constitue une
masse virtuelle (potentiel très proche de 0 V).
630
A l'aide de cette figure 18-b simplifiée, on constate que la tension de sortie est égale
à:
631
Dans ce circuit, on utilise deux groupes de résistances dont chacune est le double
de la précédente.
Dans les deux cas, l'utilisateur doit ajouter l'amplificateur opérationnel qui n'est pas
incorporé dans le boîtier. Le choix de l'amplificateur sera en fonction de la vitesse de
commutation requise.
633
La sortie du réseau de résistances peut être reliée à l'entrée «-» ou à l'entrée «+» de
l'amplificateur et selon le cas, on obtient en sortie une tension négative ou positive.
Si l'on utilise le convertisseur représenté figure 21, qui délivre en fait un courant I
proportionnel au nombre binaire d'entrée, on peut réaliser deux branchements
différents (figure 22-a et 22-b).
Généralement, on préfère la configuration de la figure 22-a, car elle procure une plus
grande précision.
Dans ce cas précis, la résolution est de 1 / 8 de VR. Pour un circuit à 4 bits, elle
serait de 1 / 16 de VR.
Les facteurs affectant la précision des convertisseurs peuvent être très divers comme
nous allons le voir à présent.
635
Lorsque tous les bits d'entrée sont à 0, on devrait obtenir 0 volt en sortie. Ce n'est
pas toujours le cas et l'on parle alors d'erreur ou de décalage d'offset. Cet écart est
constant et existe pour toutes les valeurs binaires d'entrée, comme le montre la
figure 24.
2. 6. 2. - ERREUR DE TRANSFERT
Il est inévitable que la valeur des résistances varies avec la température. Pour cette
raison, on utilise toujours des réseaux de résistances intégrés dans des microcircuits
; en effet, avec cette technologie, les résistances sont toutes réalisées avec le même
matériau ; de plus, elles sont très proches et donc subissent les mêmes variations de
température.
La précision absolue est l'écart entre la sortie analogique que l'on désire quand on
applique un code binaire en entrée, et la sortie réellement obtenue.
Pour corriger cet écart, on peut intervenir sur le gain de l'amplificateur opérationnel
ou sur la tension de référence VR.
637
Le nombre binaire 001, par exemple, correspond à toutes les valeurs analogiques
comprises entre 1 / 16 et 3 / 16 de VA.
Nous pouvons constater que le convertisseur est assez peu précis. En effet, le
nombre binaire apparaissant en sortie ne permet pas de connaître avec exactitude la
valeur analogique qui l'a généré. Il indique seulement dans quel intervalle est située
la valeur d'entrée.
On peut réduire cet intervalle en utilisant davantage de bits, mais il restera toujours
une incertitude, inhérente au procédé de conversion.
• parallèle
• à approximation successive
• à rampe
• à conversion tension-fréquence
• à compteur.
Chaque type possède des caractéristiques propres, le rendant plus ou moins apte à
résoudre des applications répondant à des critères de précision, de rapidité, de
dimensions ou de coût.
C'est le convertisseur le plus simple, il est formé d'une série de comparateurs, aussi
nombreux qu'il y a d'intervalles possibles moins un.
639
La tension analogique d'entrée (Vx est appliquée à toutes les entrées «+» des
amplificateurs opérationnels.
La tension sur la borne «-» est supérieure à celle présente sur la borne
«+». Le comparateur délivre alors une tension négative correspondant à un 0
logique.
640
La tension sur la borne «-» est inférieure à celle appliquée sur la borne
«+» ; dans ce cas, la sortie devient positive et correspond à un 1 logique.
Si par exemple Vx est égale à 0,3 VR, la sortie des deux premiers comparateurs est
à 1. Cela indique que Vx est supérieure à 1 / 16 et à 3 / 16 VR. Par contre, la sortie
des autres comparateurs est à 0 et cela indique que Vx est inférieure à 5 / 16 VR.
Sur la sortie des comparateurs, on lira de haut en bas le nombre binaire 0000011.
Dans le cas où Vx est égale à 0,45 VR, les sorties des quatre premiers comparateurs
sont à 1 et les autres sont à 0, indiquant que Vx est supérieure à 1 / 16, 3 / 16, 5 /
16, 7 / 16 de VR est inférieure à 9 / 16 de VR.
Sur les sorties des comparateurs, on lit de haut en bas le nombre binaire 0001111.
Ces convertisseurs ont le grand avantage d'être très rapides. Le code binaire
suit presque instantanément les variations du signal analogique, avec un retard
minime dû aux temps de transit dans les amplificateurs opérationnels et dans les
portes logiques.
Il s'agit de déterminer la valeur d'une tension inconnue Vx, au moyen d'une série de
«pesées» successives, exactement comme on peut le faire avec une balance pour
déterminer le poids d'un objet (figure 30).
641
642
On met alors sur un plateau de la balance, l'objet à peser est sur l'autre, le poids de 1
/ 2 Kg. Si la balance penche du côté où se trouve le poids de 1 / 2 Kg, cela signifie
que l'objet pèse moins d'un demi-kilogramme.
Après avoir mis sur un plateau un poids de 1 / 2 Kg et sur l'autre, l'objet à peser, si la
balance penche du côté de l'objet, cela signifie qu'il pèse plus de 1 / 2 Kg. On laisse
donc ce poids et on ajoute le poids de 1 / 4 de Kg. Si à ce moment la balance
penche du côté des poids, c'est que l'objet pèse moins de 6 / 8 de Kg. On remplace
donc le poids de 1 / 4 de Kg par le poids de 1 / 8 de Kg, pour obtenir l'équilibre.
Dans ce deuxième cas, l'objet pèse 5 / 8 de Kg.
A chaque poids laissé sur le plateau, on peut associer la valeur binaire 1 et à chaque
poids non utilisé, la valeur 0. En écrivant les 0 et 1 suivant l'ordre décroissant des
poids, on obtient les valeurs binaires correspondant aux pesées de la figure 30.
Les résultats sont 011 pour la pesée de gauche et 101 pour la pesée de droite.
643
Le même processus est répété pour le bit N° 3 et ainsi de suite jusqu'à ce que le
dernier bit (LSB) soit traité.
644
Dans le deuxième intervalle, le circuit de commande valide l'état 1 sur le bit en cours
de traitement ou décide de le remettre à 0.
Dans le circuit représenté à la figure 31, on note que le convertisseur possède une
sortie «état».
Ce fait est important, car pendant la conversion, qui est assez lente, le convertisseur
délivre des signaux binaires inexacts. Il faut donc savoir si la conversion est en cours
ou si elle est terminée.
C'est le rôle de la sortie «état» qui est à 1 lorsque la conversion est en cours
d'exécution et à 0 lorsque la conversion est terminée.
Si l'on compare la figure 33 à la figure 27, on note une nette différence. En effet, la
courbe de transfert n'est plus située de part et d'autre de la ligne de conversion
idéale, mais entièrement en dessous. Cela est dû au fait que le passage d'un nombre
binaire à un autre s'effectue exactement à l'extrémité droite de chaque intervalle de
subdivision et non sur la valeur médiane.
Précédemment, pour Vx = 7,3 volts, nous obtenions le nombre binaire 101 qui se
trouve assez loin de la courbe idéale. Après correction, le convertisseur délivre le
nombre 110 qui est beaucoup plus près de la ligne idéale de conversion.
Si cette dernière est excessive, il peut arriver que certaines combinaisons soient
«sautées» tout simplement. La figure 35 montre les effets de ces diverses erreurs
sur la courbe de transfert du convertisseur.
648
Il existe une autre possibilité d'erreur, due aux variations du signal à convertir, qui
jusqu'à présent, a été considéré comme fixe.
Il est donc nécessaire que le signal ne varie pas trop rapidement. La variation
maximale V autorisée est fonction de la tension de référence VR, du nombre de bits
n du convertisseur, et du temps de conversion tconv selon la formule :
Bien que cette valeur semble élevée, en fait elle ne l'est pas. En effet, 1000 V / s
équivalent à 10 volts en un centième de seconde. Très souvent, les signaux à
convertir varient plus rapidement.
On doit alors recourir à un artifice : maintenir le signal fixe pendant toute la durée de
la conversion, au moyen d'un circuit approprié, appelé «Sample And Hold» en
anglais, ce qui veut dire circuit d'échantillonnage et de maintien.
La figure 39 reprend l'exemple traité figure 36, mais avec la correction apportée par
un circuit «Sample And Hold».
Aux points A et B, on ouvre l'interrupteur I qui auparavant était fermé. Il reste ouvert
pendant toute la durée de la conversion. La première conversion donne la valeur
010, mais la seconde conversion indique la valeur 011, qui est plus proche de la
réalité que celle obtenue de la figure 36.
652
3. 5. - CONVERTISSEUR A RAMPE
Les convertisseurs de ce type sont très utilisés pour la construction des voltmètres
digitaux et pour mesurer des grandeurs qui varient lentement, comme la température
et la pression.
Le convertisseur à rampe le plus simple possible est représenté figure 40. Il est
constitué par un circuit RC, un circuit de commande et un compteur.
Si l'on utilise une tension VR suffisamment élevée par rapport aux tensions Vx à
convertir, on peut considérer que la charge de C est assimilable à une rampe linéaire
(figure 41).
653
Plus la valeur de Vx est élevée, plus le temps mis par le condensateur pour se
charger à cette valeur sera long.
En réalité, les choses ne sont pas aussi simples. En effet, la précision d'un tel
convertisseur dépend en grande partie du condensateur et, généralement, les
condensateurs sont peu précis.
Cette méthode illustrée par le graphique de la figure 42 est fondée sur la charge et la
décharge linéaire d'un condensateur (rappelons que la linéarité de la charge ou de la
décharge est obtenue lorsque ces deux opérations s'effectuent avec un courant
constant).
654
Du fait que le condensateur C travaille en régime linéaire, nous pouvons dire que la
charge emmagasinée par C est proportionnelle à Vx x T, tandis que la charge que C
cède pendant la décharge est proportionnelle à VR x ∆t . Comme la quantité
655
d'électricité cédée par le condensateur est égale à celle qu'il avait reçue
précédemment, on en déduit que :
Vx x T = VR x ∆t d'où ∆t = Vx x (T / VR)
L'entrée Vx n'est pas reliée directement au réseau RC, mais traverse auparavant un
amplificateur opérationnel de gain - 1. Cet étage inverseur permet d'appliquer un
signal de signe inverse à celui de VR au condensateur C et il sert également à
séparer le convertisseur des circuits qui le précèdent.
Le condensateur C n'est plus relié entre une des bornes de R et la masse, mais
entre la sortie et l'entrée «-» d'un amplificateur opérationnel. Ce montage constitue
un circuit intégrateur qui permet d'obtenir une charge et une décharge du
condensateur parfaitement linéaires.
Le compteur doit en effet partir de zéro et compter jusqu'au temps T, puis revenir à
zéro et compter ensuite le temps ∆t. Si le compteur opère sur plus de 10 bits, il y a
plusieurs milliers de combinaisons : l'horloge doit délivrer un nombre important
d'impulsions et on ne peut obtenir que quelques dizaines de conversions par
seconde.
Ces erreurs sont réduites en utilisant des convertisseurs à quadruple rampe que
nous ne développerons pas ici puisqu'ils sont fondés sur le même principe que les
convertisseurs à double rampe
Ces convertisseurs sont fondés sur les oscillateurs dont la fréquence dépend d'une
tension de commande.
Ils sont appelés V.C.O. (de l'anglais «Voltage Controlled Oscillators» ce qui
signifie «oscillateurs commandés par tension»).
657
3. 7. - CONVERTISSEUR A COMPTEUR
Le départ de la conversion est donné par une impulsion sur l'entrée «Start» du circuit
de commande.
Les sorties binaires du compteur sont reliées aux entrées d'un convertisseur digital /
analogique qui délivre une tension analogique en escalier. Cette tension est
appliquée à l'entrée «-» du comparateur.
Ce type de convertisseur D / A est plutôt lent. Dans certains cas, notamment lorsque
l'on désire traiter des signaux analogiques variant dans le temps, on utilise donc un
compteur-décompteur, au lieu d'un compteur normal. On obtient ainsi un
convertisseur suiveur.