Vous êtes sur la page 1sur 68

République de Côte d’Ivoire

Union - Discipline – Travail

------------------

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique

------------------

Institut National Polytechnique

Félix Houphouët Boigny

----------------------

-----------------------

DFR Génie Electrique et Electronique


-----------------------

Unité Pédagogique : Electronique

Unité d’Enseignement : Electronique Numérique


-----------------------

----------------------

PARCOURS :Ingénieur STIC
1
PARCOURS : Ingénieur STIC

Code UE : Intitulé de l’UE : Positionnement dans la formation


BAE24A5 Base de l’Electronique :Semestre 5

Volume horaire :36 H ; CECT = 3


Type d’activité :
Code EC : Intitulé de l’EC : CM = 15 H ; TD = 18H ; TA = 03H
BAE24A51 Electronique Numérique
Type d’évaluation :
EVC = 03 ; EVT = 01 ; Projet = 00
Objectifs visés de l’EC :
 S’approprier les concepts de l’électronique numérique et les champs d’applications ;
 Matérialiser une expression logique ;
 Avoir des notions de temps et de mémoire ;
 Avoir des notions de séquencement (base de temps);
 Analyser un problème d’électronique numérique.
Compétences spécifiques visées par l’EC :
 Etre capable de résoudre une expression logique ;
 Etre capable de résoudre un problème de logique combinatoire ;
 Analyser et faire la synthèse d’un circuit combinatoire ;
 Etre capable d’interconnecter les différentes bascules ;
 Analyser et interpréter un système séquentiel.
Pré-requis :
 Les bases de numération ;
 Algèbre de Boole.
Référence bibliographique :
1. Introduction aux circuits Logiques, Deuxième Edition, Jean  LETOCHA, McGrave-Hill,
Editeurs
2. Electronique Numérique: Logique Combinatoire et Technologie, Marcel GINDRE et
Denis ROUX, 5ème tirage, EDISCIENCE
3. Support de cours d’Electronique Numérique, Edition 2016, Cycle ING.
Unité Pédagogique :
UP Electronique, DFR GEE
Responsable EC : KOFFI Manlandon
Contacts :(N° Bureau, Cel et Email)
Autres Enseignants de l’EC : ADAMA Koné – N’ZI Edié Camille - KOUADIO Amani –
SOUMAHORO Amadou, KONE Brahiman
FICHE D’ELEMENTS CONSTITUTIFS D’UNITE D’ENSEIGNEMENT

2
Chapitre I : Numération

I) Système de numération
1.1) Définition
On appelle base le nombre de symboles élémentaires servant à l’écriture des nombres
dans cette base.
Par exemple :
- la base 10, possède 10 symboles élémentaires. Se sont : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
- base 2, possède 2 symboles élémentaires. Se sont : 0,1

1.2) Ecriture d’un nombre dans une base quelconque

FORME POLYNOMIALE
On peut décomposer tout nombre en fonction des puissances entières de la base
A = a3 b3 + a2 b2 + a1 b1 + a0 b (détaillée)
A = a3 a2 a1 a0 = (A)b (simplifiée)
ai € N , b € N (où b = base du système de numération et ai = éléments de la base).

Forme détaillée A = où i ∈
On appelle :
Rang d’un chiffre : la puissance i de b} a3 est de rang 3
Chiffre de poids fort : chiffre de gauche (a3)
Chiffre de poids faible : chiffre de droite (a0)

1.3) Valeur décimale d’un nombre (N) b


On fait le calcul des valeurs décimales des b i que l’on multiplie par lecoefficient ai. La
somme de ces différents produits nous donne la valeur décimale de A.
Exemple :
A7= (64235)7 Ecriture simplifiée.
A7 = 6.74 + 4.73 + 2.72 + 3.71 + 5.70
3
4  est de rang 3, par contre 5 est de rang 0.
6 est le poids fort de A7 et 5 est le poids faible de A7.
La base b= 7, possède 7 symboles élémentaires ai avec ai ϵ {0, 1, 2, 3, 4, 5, 6}. On a :
A 10 = 6.74 + 4.73 + 2.72 + 3.71 + 5.70 = (15902)10

1.3.1. La base 2 (Binaire)


La base b=2 ne comprend que les chiffres 0 et 1.
Les poids sont les puissances de 2.

1.3.2. La base 8 (OCTAL)

Dans le système octal, la base est 8.

C'est-à-dire que nous utilisons 8 symboles (de 0 à 7).

Comptons de 0 à 9 en base 10 et exprimons la correspondance en base 8.

0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 10
9 11
Base 10 Base 8

1.3.3. La base 16 ( HEXADECIMAL)

Dans le système hexadécimal, la base utilisée sera 1610.


Nous avons donc besoin de 16 symboles différents. Nous utiliserons les chiffres de 0 a 9 mais
il nous faut encore 6 autres symboles (nous ne pouvons utiliser le chiffre 10 puisque 10 est en
fait un nombre représenté a l’aide des chiffres 0 et 1). Nous utiliserons les 6 premières lettres
de l’analphabète A ,B,C ,D,E,F.
Comptons de 0 a 16 en décimal et exprimons la correspondance en hexadécimal.

0 0
1 1
2 2
3 3
4 4

4
5 5
6 6
7 7
8 8
9 9
10 A
11 B
12 C
13 D
14 E
15 F
16 10
Base 10 Base 16

1.4) Conversion par divisions multiples


Pour convertir un nombre N en base 10 , (N)10 , dans une base b quelconque
(N)b.On a :

(N)10 = q0 b + r0 q0, q1, … quotients

q0 = q1 b + r1 r0, r1, … restes.

q1 = q2 b + r2

……………….

qn – 2 = qn-1 b + rn-1

qn – 1 = 0xb + rn

Maintenant, en remontant la chaîne à l’envers :

qn – 2 = rn b+ rn -1

qn -3 = (rn b+ rn -1) b + rn – 2

q1 = rn bn – 1 + rn – 1 bn-3 + …….. + r2

q0 = rn bn – 1 + rn – 1 bn – 2 + …….. + r2 b + r1

¿>¿ N = q 0 b + r 0 = r n b n + r n – 1 b n – 1 + …+ r 2 b 2 + …r 1 b + r 0

¿>¿ N = (rn rn – 1… r2 r1 r0)b

On les écrit de la gauche vers la droite

Les ri sont les coefficients de la décomposition polynomiale.

5
n
N = ∑ ri b i
i=0

1.5) Conversion par soustractions multiples

(N)10 ¿>¿ (N)b


n
(N)b = ∑ ai b
i

i=0

bi / bi (N)10 < bi +i

¿>¿ On trouve ainsi le rang du chiffre de poids fort de (N)b, ici i.

(N1)10 = (N)10 – bi

(N1)10 bioui (N1)10 (N1)10 – bi

non

i i-1

On répète l’opération jusqu’à ce que (N1)10 soit inférieur à b


¿>¿ Ce reste représente le poids faible
¿>¿ On retiendra les coefficients qui affectent chaque puissance de b. on obtient ainsi le poids
de cette puissance
¿>¿ Les puissances non présentes entre le rang du chiffre de poids fort (i) et le rang du chiffre
de poids faible (0) ont un coefficient de 0.
Conclusion : (N) b sera la suite des coefficients qui affectent chaque puissance de b.

1.6) Conversion Binaire, Octal, Hexadécimal

6
Comme nous l’avons vu précédemment, tous les calculs à l’intérieur d’un ordinateur
s’exécutent à partir de nombres exprimés en binaire. Mais afin de manipuler des nombre de
façon plus commode, nous travaillerons soit en octal, soit en hexadécimal.
Cela dépend de la manière dont fonctionne le calculateur.
Si les bits binaires sont groupés par 3, on utilisera le système octal (un groupe de plusieurs
bits est appelé BYTE).
Avec un byte de 3 bits, nous pouvons exprimer une valeur octale de 0 a 7.
Si les bits sont groupés par 4 (un byte de 4 bits est aussi appelé QUARTET), on utilisera alors
le système hexadécimal.
Avec un byte de 4 bits (quartet), nous pouvons exprimer une valeur hexadécimale de 0 à F.

1.7) Nombres fractionnaires


Lorsque l’on a un nombre décimal avec une virgule (nombre fractionnaires), il faudra
travailler en deux temps :
-la partie entière (à gauche de la virgule) se traite comme on vient de la voir ,
-la partie fractionnaire (à droite de la virgule) se traite par multiplication successive
par la base,
-ensuite, on regroupe les deux parties de chaque côté de la virgule.

Cas de la partie fractionnaire :


On effectue des multiplications successives par la base .la partie entière du résultat est prise
comme digit pour la réponse .cette partie est remise à zéro avant d’effectuer la multiplication
suivante.
Exemple :
Soit à convertir le nombre 0,63510 en octal :
-partie entière 0 donc résultat 0 pour l’octal,
-partie fractionnaire,635→multiplications successives par 8.
0,635× 8 =5,080 premier digit 5
0,080 ×8 =0,64 2éme 0
0,64×8 =5,12 3éme 5
0,12×8 =0,96 4éme 0
0,96×8 =7,68 5éme 7
0,68×8= 5,44 6éme 5
7
Résultat final
0,63510=0,5050758
Plus la base est petite, plus le nombre de multiplications a effectué doit être grand de façon à
obtenir un résultat précis.

II) ARITHMETIQUE BINAIRE


1. Définitions
 Bit
On appelle bit les symboles élémentaires de la base 2 c.-à-d. 0 et 1
 Mot
C’est une suite de n bits.

Exemple : 100011001
Le 1er bit est le bit de poids le plus fort ou MSB (Most Significant Bit) et le dernier bit est le
bit de poids le plus faible ou LSB (Least Significant Bit).
Les tailles usuelles des mots sont : 4 bits (quartet), 8 bits (octet), 16 bits (mot), 32 bits (long
mot).

2. Règle d’addition
0 + 0 = 0 retenue 0
0 + 1 = 1 retenue 0
1 + 0 = 1 retenue 0
1 + 1 = 0 retenue 1
Si l’addition de 2 mots de n bits donne (n+1) bits alors le (n+1) ième bit est appelé bit
d’overflow.
Exemple :

1111
+ 1111
= 11110
bit d’overflow

8
3. Opération de soustraction
0 – 0 = 0 retenue 0
0 – 1 = 1 retenue 1
1 – 0 = 1 retenue 0
1 – 1 = 0 retenue 0
En électronique numérique lorsqu’on effectue une opération de soustraction, le système est
peu pratique à câbler d’où la transformation de la soustraction en addition.
4. Utilisation d’autres méthodes
* Méthode du Complément Restreint (CR)
* Méthode du Complément Logique (CL)
* Méthode du Complément à 1 (CP1) ; 0 → 1 et 1 → 0.
Ou
* Méthode du Complément Vrai (CV) = CR+1
* Méthode du Complément Arithmétique (CA) = CL+1
* Méthode du Complément à 2 (CP2) = CP1+1

Remarque : En Base 2, CR=CP1 at CV=CP2

4.1 Méthode du complément à 1


On ajoute le complément restreint du nombre à soustraire et on ajoute la retenue au résultat
obtenu. S’il n’y a pas de retenue, cela signifie qu’il est négatif et est le complément restreint
du résultat réel.
Exemple: 5 - 7 = -2
7 → 111→ 111
5→ 101→ 101 −5 →−101→+010
−7 →−111 →+ 000 001 ¿
(Pas de retenue, résultatnégatif) −2 1 ¿
−2 101
↳ +1
CP1 (101) = 010 → (-2)10
010

4.2. Méthode du complément à 2


On ajoute le complément vrai du nombre à soustraire et on ne tient pas compte de la retenue.
Quand il n’y a pas de retenue cela signifie que le résultat est négatif et il est le complément
vrai du résultat réel.

9
Exemple : 5 – 7 = -2

5−7=−2⟹ 101−111=101+CV ( 111 )=101+001=110

résultat négatif car pas de retenue

CP2 ( 110 )=001+ 1=010 ⇒ (−2)10

Exemple : 7−5=2 ⇒ 111−101=111+ CV ( 101 )=111+011=1¿ 010

retenue , ne pas tenir compte ⇒(2)10

5. Multiplication

- même présentation et principe que la multiplication décimale : position de la virgule finale,


décalage et addition.

- utilisation des règles suivantes :

0x0= 0 1x0=0

0x1=0 1 x1 = 1

Exemple :

110

x 10,1

110

+ 110 . .

1111,0

6. Division

10
PRINCIPE

- Comme en décimal, la division binaire utilise les règle de base de la multiplication et de la


soustraction binaires.

- Les conditions d’arrêt du calcul sont les mêmes qu’en décimal : obtention d’un nombre
exact ou précision désirée atteinte.

- La division de nombres fractionnaires utilise le même principe qu’en décimal, à savoir,


suppression de la (ou des) virgule(s) par multiplication des deux membres par une même
puissance de 2.

( 110,11 : 10,01) = (11011 : 1001)

En effet, chacun des membres a été multiplié par une même puissance de 2 ( ici 22).

7. Représentations des nombres relatifs

MODE SIGNE ET VALEUR ABSOLUE

+5=5+ +|+5|

-5 =5- +|−5|

Signe =bit à gauche : {01 pour les nombres ≥ 0


pour les nombres <0

Exemple :

Base 2 +5 = 0101

-5 1101

+ 0 = 0000

-0 1000

Conséquences:2 operateurs  {Soustraction


addition câblés
câblés

8. Représentations des « Réels »

a) Virgile flottante

{
b=base
X = m.be e=exposant
m=mantisse
11
Si m = m3 m2 m1 m0

Alors

X = m3 m2 m1 m0.be

X = 0.m2 m1 m0 .be+4 mantisse normalisée avec m3≠ 0

¿>¿ Mantisse normalisée

III. Code
1. Généralités
Un code est une écriture symbolique, arbitrairement définie et destinée à représenter une
information plus ou moins complexe. Une information peut se code de plusieurs façons en
fonction de son utilisation.

2. Qualité d’un Code


Simplicité
Pour être utile, un code doit symboliser simplement une situation à priori complexe.
Caractère du bi-univoque
Pour éviter toute indétermination, chaque information doit être codée d’une manière unique
(c’est-à-dire compréhension entre interlocuteurs).
Sécurité
Forme utilisable par un ordinateur

3. Codes Pondérés
Dans les codes pondérés, chaque chiffre ou digit a un poids fonction de sa position.

Exemple : pour (1010)2

Bits 1 0 1 0
Pondération 23 22 21 20

12
Code 1248
La façon la plus simple de représenter les 10 premiers chiffres décimaux par 4 variables
binaires est de prendre les dix premières combinaisons des variables du système binaire
naturel.
N 8421

0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001

N = nombre
Les pondérations sont 8 4 2 1
Application du code 1248 au DCB (Décimal Codé Binaire)
En DCB, chaque chiffre décimal est codé en 1248 et les valeurs ainsi obtenues sont
juxtaposées.

Exemples : Codez en DCB le nombre (5886)10.


(5882)10 = (010 1000 1000 0010) DCB
(907)10 = (1001 0000 0111) DCB
(432)10 = (0100 0011 0010) DCB
Par abus de langage, le code 1248 est appelé code DCB.

13
Code 1242* (Code Aïken)
Il trouve son application en informatique. Il suffit de stocker en mémoire les nombres de 0 à 4
et à la lecture on restore tout.

Ce code est auto-complémentaire. Ainsi, le complément à 9 de X s’obtient en complémentant


à 1 les bits de la valeur X : complément à 9 de 3 => 9-3=6.
3 s’écrit 0011 . Son complement à 1 est 1100 ; ce qui donne 6 en code Aïken

D’autres codes existent et sont souvent utilisés en Telecom : 1245 et 1224


N 5421 4221
0 0000 0000
1 0001 0001
2 0010 0010
3 0011 0011
4 0100 1000
5 1000 1001
6 1001 1010
7 1010 1011
8 1011 1110
9 1100 1111

Le code 1224 ou (4221) est auto complémentaire dans certains documents.

N 4221
0 0000
1 0001
2 0010
3 0011
4 0110

14
5 1001
6 1100
7 1101
8 1110
9 1111

4. Codes Non Pondérés


Tous les codes à 4 bits ne sont pas nécessairement pondérés. Il est souvent intéressant de
recherchant des codes auto-complémentaires.

4.1. Code Excédant 3 (exc.3) / (N+3) codé en 1248

Propriété d’auto complémentarité

Ce code est auto-complémentaire.

4.2 Code GRAY ou Code Binaire Réfléchi


 Propriété d’adjacence
Deux mots binaires sont adjacents si et seulement si, ils ne diffèrent que d’un bit.
Exemple : 1011 et 1001 sont adjacents
1001 et 1111 ne sont pas adjacents
 Code Continu
Un code est continu si et seulement si deux combinaisons successives sont adjacentes.
 Code Cyclique
Un code est cyclique si et seulement si la dernière combinaison est adjacente à la première.
Remarque :
Un code peut être cyclique sans être continu et vice-versa.

15
Le code binaire réfléchi ou code GRAY est un code continu cyclique.

Ecriture du code Gray

 1 bit
0

 2 bits 1
A

B On lit le A suivi de B et on parcourt le labirynthe

 3 bits

Astuce pour trouver le code GRAY


A partir du code binaire, ajouter le même code en décalant d’un bit à gauche. On fait
l’opération d’addition sans tenir compte de la retenue.

Correspondance décimale Code GRAY


G3 G2 G1 G0
0 0000
1 0001
2 0011
3 0010
4 0110
5 0111
6 0101
7 0100
8 1100
16
9 1101
10 1111
11 1110
12 1010
13 1011
14 1001
15 1000

Le code Gray utilisé pour les conversions analogiques numériques.


La constitution est telle que chaque mot code diffère du précédent et du suivant par la valeur
d’un seul de ses bits.

4.3. Calculs en DCB et Exc3


 Dans le code 1248
Sauf 10 des 16 combinaisons du quartet sont utilisés (0000 à 1001).
+ 13 + 0001 0011
7 0000 0111
= 20 = 0001 1010
+ 0000 0110
= 0010 0000

Lorsque la somme dépasse 9(celle d’un quartet : unité, dizaine,…), on ajoute 6 (0101) à la
somme pour obtenir le résultat. En effet, 10 en 1248 s’écrit 0001 0000 (et non 1010), ce qui
correspond en binaire naturel (si on colle tout) à 24=16.
Comme sur les 16 combinaisons on a seulement utilisé 10, alors il faut ajouté 6 (c’est-à-
dire :16-10) au résultat obtenu.

Remarque
 Le code 1248 étant le plus naturel des codes DCB, il est souvent appelé simplement DCB
 Si dans un groupe de 4 bits (la représentation d’un chiffre) on a un dépassement de 9, on
ajoute 6 au groupe.

 Code excédant 3
La somme de deux excédents 3 est un excédent 6. Il faut donc soustraire 3 au résultat pour
que celui-ci soit un excédent 3 (on retranche 3 à chaque groupe).

17
Exemple1:
Excédent 3
+ 43 + 0111 0111
36 0110 1001
= 79 = 1101 1111
- 0011 0011
= 1010 1100

Résumé
On additionne les nombres selon les règles de l’addition binaire. Si un groupe produit une
retenu, on lui ajoute 3, sinon on lui retire 3.

5. Codes détecteurs d’erreur


Si l’on utilise uniquement 4 bits , si un des bits change au cours de la transmission ,on va
décoder a la réception un mauvais vecteur.
On peut alors rajouter des bits de redondance qui permettront de détecter l’erreur s’il y en a.

5.1. doublage de bits


-on peut doubler, tripler ou qua tripler systématiquement tous les bits.
Ainsi on peut écrire 1101 par 11 11 00  11.
On lit alors les bits deux a deux et si l’on décèle une différence dans un couple de bits,on a
trouvé une erreur.
En triplant les bits on pourra supposer que les deux bits s’assemblent, en cas d’erreur sans
bons et dans ce cas on est en présence d’un code correcteur.

Parité
On peut rajout er aux 4 bits, un bit positionné de telle façon que le nombre total de bits a 1
soit en nombre impair.

Représentation décimale Parité impaire

18
0 1 0000
1 0 0001
2 0 0010
3 1 0011
4 0 0100
5 1 0101
6 1 0110
7 0 0111
8 0 1000
9 1 1001

On peut alors détecter, si un simple bit change, que le nombre de bits a 1 sur les cinq bits es
en quantité paire
Par contre si deux bits changent on ne peut pas détecter d’erreurs.

5.2. Code 2 parmi 5


Ce code s’appelle comme ceci car chaque vecteur de 5 bits contient exactement 2bits a 1
Le nombre de combinaisons de 5 bits avec 2 bits a 1 est :
5 5! 5.4
c2 = = =10
2! ( 5−2 ) ! 2.1
On pourra prendre le code de poids 74210
Représentation décimal Code 2 parmi 5
74210
0 11000
1 00011
2 00101
- Ce code détecte 1 erreur 3 00110 car si un bit
4 01001
change il n’y a plus deux bits a 1.
5 01010
- deux erreurs peuvent être 6 01100 détecté si on
7 10001
a deux passages a 1 ou deux 8 10010 passages a
0 .cependant il ne détecte 9 10100 pas 1 passage
à 0 et un passage a 1.

6. codes correcteurs d’erreurs

6.1. Code de Hamming de distance égale a 3

Le code de Hamming permet de détecter et de corriger des erreurs d’un mot binaire de 4 bits.

19
Pour l’utilisation d’un code de Mam ming de distance 3 ,on rajoute aux 4 bits
d’information ,3bits qui sont fonction des 4 bits .
Ce code qui ne corrige qu’une erreur transmet 7bits pour 4bits d’information.

Position des bits 1 2 3 4 5 6 7


Noms des bits C1 c2 b4 c4 b3 b2 b1

B=(b4……b1) vecteur d’information


C1,c2,c4, sont les 3 bits supplémentaires
C1 est choisi pour que les positions 1, 3,5,7 totalise un nombre pair de bits a 1 .
C2 est choisi pour que les positions 2 ,3,6,7 totalise un nombre pair de bits a 1
C4 est choisi pour que les positions 4,5,6,7 totalise un nombre pair de bits a 1
Exemple : soit l’information de 4 bits 0101
Calculons c1, c2 et c4

Position de bits 1 2 3 4 5 6 7
Noms de bits C1 c2 b4 c4 b3 b2 b1
0 1 0 1

Ici C1 =0 car les bits a 1 des positions 3 ,6 et 7 sont au nombre de 2

C2=1car les bits a 1 des positions 3,6et 7 sont au nombre de 1

C4=0 car les bits des positions 3,6et 7 sont au nombre de 2.

Position des bits 1 2 3 4 5 6 7


Noms des bits 0 1 0 0 1 0 1

Détection de l’erreur
Pour déterminer si le mot binaire est incorrect et quel est le bit qui est faux on regarde si
chaque bit c1,c2 et c4 vérifie la parité demandé
-si c’est le cas on place dans le pointeur p1,p2 ou p4 correspondant ,la valeur 0
-si ce n’est pas le cas on place dans le pointeur p1,p2,ou p4 correspondant ,la valeur 1.

Mot pointeur P4 p2 p1
Bit de parité C4 c2 c1

20
Le nombre binaire présent dans le mot p4 p2 p1 est la position du bit faux dans le mot
transmis .si 0 est trouvé cela veut qu’il n’y a aucune erreur.
Exemple : soit le mot transmis précédemment
0 100 101
Supposons qu’une erreur arrive sur le bit de position 6
On a alors le mot faux suivant 0 100 111

Position 1 2 3 4 5 6 7
Mot reçu 0 1 0 0 1 1 1
Nom du mot C1 c2 b4 c4 b3 b2 b1

Pour le bit c4 qui vérifie la parité (4,5,6,7), on a 3bits a 1 ¿>¿ p4=1

Pour le bit c2 qui vérifie la parité (2,3,6,7),on a 3 bits a 1 ¿>¿ p2=1

Pour le bit c1 qui vérifie la parité (1,3,5,7), on a 2bits a 1 ¿>¿ p1=0

¿>¿ p4 p2 p1 = 110 = 6(10) et c’est dans le bit de position six qui est faux. Donc ce bit de
position doit être changé pour avoir le bon mot. ¿>¿ Correction 0100101(ce qui était bien le
bit transmis).

Ce code de Hamming de distance 3 ne corrige qu’une erreur .Si deux bits sont erronés dans le
mot binaire on pourra les détecter mais pas les corriger (aucun des deux).

7. Autres Codes

7.1 Code ASCII


Le code Ascii permet de représenter des caractères sous forme de groupes de 7 bits. on a
alors la possibilité de représenter 128 caractères différents par lesquels figurent :
-les lettres majuscules et minuscules
-les digits
-les signes de ponctuations
-la mise en page (CR)

7.2. code EBCDIC

21
Le code EBCDIC est utilisé par quelques constructeurs (dont IBM) .c’est le deuxième code utilisé
pour représenter les caractères alphanumériques.

Chapitre 2: Logique combinatoire

I. Algèbre de Boole
1. Définition
L’ensemble (E, +, -) est une Algèbre de Boole. Ces lois vérifient les propriétés suivantes.

COMMUTATIVITE
∀ x , y ∊ E x + y= y + x
∀ x , y ∊ E x ⋅ y= y ⋅ x
ASSOCIATIVITE
∀ x , y , z ∊ E x + ( y + z )= ( x + y ) + z

DISTRIBUTIVITE
∀ x , y , z ∊ E x ⋅ ( y + z )=x ⋅ y + x ⋅ z (1ère distributivité)
∀ x , y , z ∊ E x + y ⋅ z=( x+ y ) ⋅( x+ z ) (2ème distributivité)

EXISTENCE D’ELEMENTS NEUTRES


∀ x ∊ E ‚∃ e ∊ E ‚ x+ e= x
∀ x ∊ E ‚∃ i ∊ E ‚ x ⋅ i=x

EXISTENCE D’UN COMPLEMENT


∀ ∊‚ ∃∁ x ≡ complément de x ≡ x ‚ x + x=1
x ⋅ x =0

IDEMPOTENCE
∀ x ∊ E ‚ on a x+ x= x et x ⋅ x=x

22
ELEMENTS ABSORBANTS
∀ x ∊ E ‚∃ 1∊ E ‚ x+1=1
∃0 ∊ E ‚ x ⋅0=0

ABSORPTION
∀ x ‚ y ∊ E ‚ x + x ⋅ y =x implique que : x . ( 1+ y ) =x
∀ x ‚ y ∊ E ‚ x ⋅ ( x + y )=x implique que : x . x + x . y=x + x . y =x
( x + y ) ⋅ ( x + z )=x . x + x . z + x . y + y . z
( x + y ) ⋅ ( x + z )=x . ( 1+ y + z ) + y . z =x+ y . z

2. Théorème de ‘’De Morgan’’


X́ =X
X +Y =X . Y
X . Y = X+ Y

II. Les opérateurs booléens


Une variable booléenne (logique ou binaire) est une quantité ne pouvant prendre que deux
états notés :
‘’0 ‘’ Logique
‘’1’’ Logique
On peut matérialiser les variables logiques par des phénomènes ne pouvant prendre que deux
états.

1. Opérateurs booléens de base


 Opérateur NON (Inverseur, NOT)

Logigramme

 Opérateur AND (ET logique)

Table de Vérité 23
X Y   X ∧Y
0 0   0
0 1   0 X ∧Y ≡ X . Y
1 0   0
X.Y = 0 si et seulement si une au moins des variables d’entrée
1 1   1
vaut 0. Logigramme

 Opérateur OR (OU inclusif)

Table de Vérité
X Y   X ∨Y
0 0   0
0 1   1
1 0   1
1 1   1
Logigramme

Equivalence

X+Y = 1 Si une au moins des variables d’entrée vaut 1.

2. Fonctions booléennes : Autres protes Logiques souvent utilisé


 Fonction Dilemme (OU Exclusif)

Table de Vérité
X Y   X ⊕Y
0 0   0
0 1   1
1 0   1
1 1   0
Logigramme

24
Logigramme à base de portes logiques dive

'
D ( X , Y )=X ⊕Y = X .Y +Y . X ( c est la somme modulo 2ie addition ¿ retenue)

 Fonction Coïncidence

Table de Vérité

X Y   X ΘY
0 0   1
0 1   0
1 0   0
1 1   1
Logigramme

Logigramme à base de portes logiques divers

C ( X , Y )= XΘ Y =X .Y + X .Y
D ( X , Y ) et C ( X , Y ) sont complémentaires

25
 Fonction NAND (NOT AND)
Table de Vérité

X Y   X .Y
0 0   1
0 1   1
1 0   1
1 1   0
Logigramme

X ∧Y ≡ X . Y sous la forme ON X /Y
'
X ∧Y =1 Si une au moins des variables d entrées vaut 0.

 Fonction NOR (Not OR)

Table de Vérité

X Y   X +Y
0 0   1
0 1   0
1 0   0
1 1   0

Logigramme

X NOR Y ≡ X +Y sous la forme∋ X ↓ Y

 Fonctions Inhibiteurs

{
X ↑ Y =X ⋅ Y →Y inhibe X → 0 : X Y =X donc Y autorise X
1: X Y =0 donc Y inhibe X
Y ↑ X=Y ⋅ X → X inhibe Y

Table de Vérité 26
X Y   X .Y
0 0   0
0 1   0
1 0   1
1 1   0
Logigramme

II) Minterme et Maxterme d’une Fonction


1. Minterme et Maxterme
Soient X1, X2, …, Xi,…, Xn∊ {0 ,1}.
 On appelle Minterme construit sur X1, X2, …, Xi,…, Xn∊ {0,1}, tout produit de ces n
termes sous forme directe ou complémentée sans répétition.
Exemple :
Pour x et y on aura : x . y  ; x .y ; x. y  ; x.y
Pour x, y et z on aura : x . y . z  ; x . y .z ; x .y.z ; x. y . z  ; x. y .z ; x.y. z  ; x.y.z ; x .y. z  
Pour n variables, on aura 2n mintermes.
 On appelle Maxterme construit sur x1, x2, …, xn toute somme de ses n termes sous
forme directe ou complémentée sans répétition.
Exemple :
Pour x et y : x + y ;x + y ; x+ y ; x + y soit (22=4)

Théorème de Shannon
Toute fonction booléenne peut être décomposée en fonction des trois opérateurs de base :
NOT ; AND et OR.

2. Développement d’une fonction booléenne par rapport aux


maxtermes de ses variables
f ( x 1 , x 2 , … , x i , … , x n ) =x i f ( x 1 , x 2 , … , 0 ,… , x n ) + x i f ( x1 , x 2 , … , 1, … , x n )

Si x i=1 alors xi =0
f ( x 1 , x 2 , … , x i , … , x n ) =0∗f ( x 1 , x 2 , … , 0 , … , x n )+ 1∗f ( x 1 , x2 , … ,1 , … , x n )=f (x 1 , x 2 , … , 1 , … , x n )

Si x i=0 alors x i=1(même décomposition)

27
3. Décomposition d’une fonction booléenne en fonction des mintermes
de ses variables
n
2 −1
f ( x 1 , x 2 , … , x i , … , x n ) = ∑ Ci∗mi (les mi sont les mintermes )
i=0

 Calcul de Ci (deux variables x et y)


f ( x , y )=x f ( 0 , y )+ xf (1, y )
f ( 0 , y )= y f ( 0,0 ) + yf (0,1)
f ( 1 , y )= y f ( 1,0 ) + yf ( 1,1)

f ( x , y )=x [ y f ( 0,0 ) + yf ( 0,1 ) ]+ x [ y f ( 1,0 )+ yf ( 1,1 ) ]


f ( x , y )=x y f ( 0,0 )+ x yf ( 0,1 ) + x y f ( 1,0 ) + xyf ( 1,1 )
(Pour 2 variables x et y, on a :m0=x y ; m1=x y ; m2 =x y ;m3=xy )

III. Représentation d’une fonction de ‘n’ variables


Une fonction de n variables peut être représentée par :
 TV
 Représentation Algébrique
 Représentation Numérique
 Etc…

1. La Table de Vérité (TV)


Elle suffit pour définir entièrement une fonction. Elle présente des inconvénients quand le
nombre de variables atteint 5.
Exemple : Fonction V = majorité de bits à 1

Table de Vérité
A B C   V
0 0 0   0
0 0 1   0
0 1 0   0
0 1 1   1
28
1 0 0   0
1 0 1   1
1 1 0   1
1 1 1   1
2. Forme Canonique

Première Forme algébrique canonique ou non

7
V =∑ Ci m i
i=0

V = A BC+ A B C+ AB C+ ABC
C’est une réunion (OU, Maxterme) d’intersection (ET, Minterme).
Cette forme se nomme aussi :
*** Forme Disjonctive
*** Forme SP (Somme de Produit)
*** Forme ΣΠ ( Sig ma, Pi)
Deux fonctions F1 et F2 qui ont la même forme SP canonique sont identiques.

Deuxième Forme Algébrique Canonique ou Non


V =( A+ B+C)( A+ B+C )(A + B+C)( A+ B+C)
C’est une intersection de réunion, les réunions sont les maxtermes.
Cette forme se nomme aussi :
*** Forme Conjonctive
*** Forme PS (Produit de Somme)
*** Forme ΠΣ ( Pi , Sigma)

3. Représentation Numérique à base 10


Poids

22 21 20
A B C V
valeur
décimale Pondération suivant les puissances de 2
0 0 0 0 0
1 0 0 1 0
2 0 1 0 0 V =R ( 3 , 5 , 6 ,7 )=Σ(3 , 5 , 6 ,7)
3 0 1 1 1
4 1 0 0 0 29
Combinaison 3
5 1 0 1 1
6 1 1 0 1
Combinaison 5
7 1 1 1 1
Combinaison 7

Cette représentation numérique est canonique par définition (TV). Il est indispensable de s’en
tenir toujours à un ordre de pondération croissant de variables ou de préciser l’ordre choisi.

Exemple : Représentation Numérique d’une fonction donnée sous forme SP canonique.

F= AB C D+ A B C D+ A BC D+ A B C D+ ABCD

↓ ↓↓ ↓↓

11011001 0100 0001 1111

↓ ↓↓ ↓↓

13 9 4 1 15

F=R(1 , 4 ,9 , 13 , 1)

On écrit sous chaque forme les combinaisons binaires correspondants puis ont attribue les
poids 8 4 2 1 respectivement à A B C et D.

4. Représentation Numérique Binaire par Image Caractéristique


On appelle image caractéristique ou vecteur caractéristique, la suite des valeurs 0 et 1 prises
par cette fonction pour toutes les combinaisons des variables données dans l’ordre du code
binaire naturel : c’est en fait le résultat de la TV écrit en ligne.
÷ V =0001 0111
(se lit Image Caractéristique de V )

IV. Simplification des fonctions logiques


1. But de la Simplification
La simplification d’une fonction logique a pour but d’aboutir à la réalisation du logigramme
le plus simple possible selon la technologie utilisée. Dans notre cas nous recherchons par la
simplification à minimiser systématiquement :
 Le nombre de termes de la fonction donc le nombre d’opérateurs.
 Et le nombre de variables dans chaque fonction (donc le nombre de variables dans
chaque terme, donc le nombre d’entrée de chaque opérateur).
30
2. Simplification Algébrique
Elle nécessite la connaissance parfaite des postulats et théorèmes de l’algèbre de Boole.

INCONVENIENTS : Aucun moyen d’affirmer que le résultat obtenu est le plus simple
possible.

Exemple : F 1=( A +C )( A+ B+C )= A+C


F 2=AC + A B+ BC = AC + A B+ BC ( A+ A )= AC ( 1+ B ) + A B ( 1+ C )= AC + A B

3. Tableau de Karnaugh (TK)


TK à 2 Variables

00 0
01 1
11 3
10 2
4. Cas d’une Table Incomplète
Ce sont des fonctions qui pour
certains mintermes de la forme SP canonique non pas de forme logique définie :
 Soit parce que ces mintermes n’ont pas d’importance dans le problème posé (valeur
indifférente de la fonction).
 Parce que ces mintermes correspondent à des combinaisons qui ne se produisent
jamais dans le problème posé (valeurs disponibles de la fonction).
Exemple : Soit un nombre N de 0 à 9 étant donné dans le code DCB. Donner la fonction
logique qui vérifie que N est divisible par (2)10 (0 n’est pas divisible par 2).

6.2) Passage de la Forme ‘ON’ à la forme ‘Ni’ et vice-versa


F 1=AB+CD=[( A /B)/(C / D)]=[ ( A ↓ B ) ↓ (C ↓ D ) ]
On passe aisément d’une forme à l’autre en complémentant toutes les variables d’entrée et de
sortie.

31
Chapitre 3 : Logique Séquentielle-les Bascules

GENERALITES
En logique combinatoire les sorties sont uniquement fonction des entrées. En logique
séquentielle la sortie est non seulement fonction des entrées mais aussi de son propre état de
sortie. On peut dire qu’une fonction séquentielle prend en considération la valeur passée de sa
sortie ou qu’elle se souvient de cette valeur logique future : il y a un phénomène de mémoire
qui est caractéristique des fonctions séquentielles.

I) Les fonctions mémoires


1.1) La Fonction RS
C’est une fonction mémoire unitaire c’est-à-dire capable de conserver dans le temps la
valeur d’un bit. Elle a deux variables d’entrées :
S = variable d’affichage (SET)
R = variable d’effacement (RESET)
Et d’une variable de sortie Q.

Elle est définie pour les séquences suivantes :


-Si S=1 et R=0 alors Q=1 quelque soit la valeur antérieure (Q1=Qtn et Qo=Qtn-1) ;
-Si S=0 et R=1 alors Q1=0 pour tout Qo
-Si S=0 et R=0 alors Q1=Qo pour tout Qo
-La combinaison S=1 et R=1 est une combinaison interdite (système soumis à deux
souhaits contradictoires) : Etat LIMBO

32
Table de séquence

Qo S R Q1 Table de Séquence Réduite


0 0 0 0
0 0 1 0 S R Q1
0 1 0 1 Equation de la fonction RS
0 0 Qo
0 1 1 Φ
Q1 = S + R Q 0 1 0
1 0 0 1 0
1 0 1
1 0 1 0 1 1 ϕ
1 1 0 1
1 1 1 Φ
Table de Transition

Elle présente les valeurs logiques à donner aux variables d’entrées pour conserver ou changer
la valeur de sortie.

Q0→ Q1 S R
0 0 0 ϕ
0 1 1 0
1 0 0 1
1 1 ϕ 0

1.2) La Fonction R S
Elle présente les mêmes séquences que la fonction RS mais pour des valeurs inversées des
variables.

-Si S=0 et R =1 alors Q1=1 pour tout Qo


-Si S=1 et R =0 alors Q1=0 pour tout Qo
-Si S=1 et R =1 alors Q1=Qo pour tout Qo
-La combinaison S=0 et R =0 est interdite.

33
Table de séquence
Qo S R Q1 Table de Séquence Réduite
0 0 0 ϕ
0 0 1 1
0 1 0 0
S R Q1
0 1 1 0 0 0 ϕ
1 0 0 ϕ 0 1 1
1 0 1 1 1 0 0
1 1 0 0 1 1 Qo
1 1 1 1
Equation de la Fonction R S
Q1 = S + R Q0

Table de Transition

Q0→ Q1 SR
0 0 1 ϕ
0 1 0 1
1 0 1 0
1 1 ϕ 1

1.3) La Fonction JK
Cette fonction est aussi une mémoire unitaire mais des séquences supplémentaires en
autorisent un emploi beaucoup plus général que la fonction RS.
Elle a deux variables d’entrées :
J : rôle assimilable à S de la fonction RS
K: rôle assimilable à R de la fonction RS
Et une sortie Q

Elle est définie pour les mêmes séquences que la fonction RS mais cette fois la combinaison
J=K=1 est utilisable, elle fait changer systématiquement la variable de sortie Q1=Qo.

Table de séquence
Qo J K Q1 Table de séquence réduite
0 0 0 0
0 0 1 0
0 1 0 1 Equation de la fonction JK J K Q1
0 1 1 1
0 0 Qo
1 0 0 1
0 1 0 34
1 0 1 0
1 1 0 1 1 0 1
1 1 1 0 1 1 Q0
Q1 = JQ0+ K Q0

Table de transition

Q0→Q1 J K
0 0 0 ϕ
0 1 1 ϕ
1 0 ϕ 1
1 1 ϕ 0

1.4) Les Opérateurs Séquentiels : Les bascules


Les opérateurs réalisant les fonctions séquentielles RS, JK et R S sont des bascules (F|FS) ou
(Flip/Flop). On trouve des bascules RS, JK ou R S . Les bascules ont la plupart du temps
deux sorties complémentaires Q et Q .
On dit qu’une bascule est dans l’état ‘1’ si Q=1 et dans l’état ‘0’ si Q=0.
Il existe des bascules de type synchrone et des bascules de type asynchrone.
de Qo.

Bascule RS constituée de 2 portes NAND en opposition

Bascule JK

K
R

S Q
J

35
1.5) Bascules Synchrones
Pour les bascules synchrones les sorties Q et Q ne prennent la valeur correspondant à la
combinaison de leurs variables d’entrée qu’après l’arrivée d’une impulsion de synchronisation
sur une entrée de commande contrairement aux bascules asynchrones dont les transitions de
sorties se produisent immédiatement aux changements des variables d’entrées.

Exemple : Comparaison entre les réponses aux mêmes variations des entrées d’une bascule
RS synchrone et d’une bascule RS asynchrone.
L’entrée de synchronisation est :
T : Triggering ou
H : Horloge ou
CP : Pulse Clock

La synchronisation des bascules peut se faire de 2 façons :


 FrontCp
Raide Montant de l’impulsion de synchronisation
t
 Front Raide Descendant de l’impulsion de synchronisation
S t

R t

Q (synchrone)
t

Q (asynchrone)
Exemple : Comparaison entre les réponses aux mêmes variations des entrées de deux F/Fs JKt
synchrones à front raide montant pour l’un et front raide descendant pour l’autre.

36
Les Fonctions Séquentielles Dérivées
Ce sont des applications ou des cas particuliers des fonctions élémentaires RS ou JK.

1.6) La Fonction D
C’est typiquement la mémoire unitaire dont la seule fonction est l’enregistrement et la
conservation d’un bit. Elle a :
une entrée D (data, donnée)
37
Une entrée de commande d’enregistrement Cp.
Une sortie Q.

Elle est synchronisée avec le signal de commande Cp qui peut être un front montant ou
descendant d’impulsion ou un niveau logique. A l’arrivée de ce signal de commande la sortie
Q prend la valeur 1 ou 0 présente sur l’entrée D. C’est l’enregistrement. En l’absence de ce
signal la sortie conserve son état quelle que soit la valeur de D : c’est la fonction mémoire.

Exemple : Fonction D commandée par front montant (↑)

La fonction D sera utilisée en particulier pour la construction des registres et elle peut être
réalisée :
Par des opérateurs ou bascules D 
Ce sont des F/FS synchrones le plus à front raide montant.

38
Par des bascules RS synchrones avec R= S

E
Qo S=D R= D Q1 = D
n outre de la même façon 0 0 1 0
et pour les mêmes raisons 0 1 0 1
1 0 1 0
la fonction D peut être
1 1 0 1
réalisée avec des F/Fs JK
synchrones pour lesquelles K=J

De plus elle peut être réalisée par des


bascules RS asynchrones.

D Latch (verrou)

39
La commande d’enregistrement se fait par un niveau logique 1 appliquée sur l’entrée de
validation : Q =D.
Si l’entrée de validation est à un niveau logique 0, la bascule est verrouillée donc Q1 = Q0.
Avec ce type de bascule on a Q1 = D pendant tout le temps où l’entrée de validation est égale
à 1.

1.7) La Fonction T (diviseur par 2)


La fonction T (comme Trigger) n’a qu’une seule entrée T qui est en fait l’entrée de
synchronisation sur laquelle on envoie des impulsions de commande.
La sortie Q change de valeur à chaque impulsion arrivant sur T : Q1 =Qo
Exemple

T1
=2 T0 et
f1= f0/2.
La

fonction T est appelée ‘diviseur par 2’ parce qu’on obtient une impulsion sur sa sortie pour
deux impulsions envoyées sur l’entrée.
Elle sera très utilisée pour la construction des compteurs.
La fonction T peut être réalisée par toutes les autres bascules synchrones.
Par des bascules RS auxquelles on impose la condition : S = Q et R = Q.

40
Q0 S R   Q1

0 1 0   1

1 0 1   0

Par des bascules JK avec les mêmes conditions : J =Q et K = Q ou tout simplement J


= K = 1.

Q0 J K   Q1

0 1 1   1

1 1 1   0

Par des bascules D synchrones avec D =Q


Après l’impulsion T on a Q1 = D soit Q1=Q

Remarque : Ce montage ne peut être utilisé avec des bascules D de type LATCH, le système
oscillerait tant que l’entrée de validation serait au niveau logique 1.
41
1.8) La Fonction Temporisation ou Retard (DELAY)
C’est une fonction séquentielle un peu particulière qui est réalisée avec des opérateurs
monostables. Une transition (1 à 0 ou 0 à 1) appliquée sur l’entrée entraine l’apparition en
sortie d’une impulsion dont la durée τ est fonction d’une constante de temps RC extérieure.

Exemple : Monostable déclenché par un front montant

Remarque
Il existe des monostables resynchronisables (retriggerables). Ils se déclenchent pour toutes les
transitions d’entrée de même sens, même si l’intervalle qui les sépare est inférieur à τ.

42
1.9) Les Entrées Supplémentaires sur les Bascules
1.9.1) Les Variables d’entrées multiples
On rencontre fréquemment en circuit intégré en particulier des bascules qui offrent selon leur
type, plusieurs entrées JK et plusieurs entrées RS.

J = J1J2J3 S = S1S2
K = K1K2K3 R = R1R2

C’est la sortie de l’opérateur combinatoire qui constitue la véritable variable d’entrée de la


bascule. Ces bascules à variables d’entrées multiples permettent d’éviter l’emploi
d’opérateurs dans certaines applications.

Exemple1 : On veut commander une bascule JK par les fonctions combinatoires.


J = AB et K = 1

Exemple2 : Il existe aussi des bascules JK à entrées multiples liées par la fonction inhibition.
J=J 1 J 2 J 3 ; K= K 1 K 2 K 3

43
On veut réaliser une fonction D avec cette bascule.
J = D ; K = D

1.9.2) Les Entrées de forçage ou d’initialisation


On trouve toujours sur les bascules synchrones une ou deux entrées supplémentaires.
L’une permet de forcer et verrouiller la bascule dans l’état 1, c’est-à-dire Q1 = 1 et
c’est l’entrée SET, PRESET, RAU (Remise à un).
L’autre permet de forcer et verrouiller la bascule dans l’état 0, c’est-à-dire Q1 = 0.
C’est l’entrée RESET, CLEAR, RAZ (Remise à Zéro).

Exemple : Bascule JK synchrone avec des entrées de forçage à 1 et à 0.

Ces bascules de quelques types qu’elles soient réalisent une fonction RS asynchrone
prioritaire sur les fonctions synchrones pour lesquelles elles ont été prévues.
 Si S = 1 et R =0, la bascule est verrouillée dans l’état 1 quelles que soient les
variations sur ses entrées.
 Si S = 0 et R = 1, la bascule est verrouillée dans l’état 0 quelles que soient les
variables sur ses entrées.

44
 Si S = R = 0, la bascule est libre et les variables d’entrées RS ou JK ou D reprennent
leur fonction en synchronisme avec le signal de commande.
 La combinaison S=R=1 est interdite.
Exemple : Diagramme temporel des états de la sortie Q d’une bascule JK réalisant une
fonction T et sur les entrées de forçage de laquelle on applique des niveaux logiques.

Remarque : On trouve également des bascules qui réalisent une fonction R S asynchrone de
leurs entrées de forçage. Les conventions précédentes sont alors inversées mais prioritaires sur
la fonction synchrone.
 Si S = 1 et R = 0 ; forçage à 0 (MAZ)
 Si S = 0 et R = 1 ; forçage à 1 (MAU)
 Si S = 1 et R = 1 ; la bascule est libre

45
 Si S = R = 0 ; la combinaison interdite.

1.10) Caractéristiques Dynamiques des Bascules


Pour que les différents types de bascules fonctionnent normalement ou correctement, il faut
respecter certaines conditions indiquées par le constructeur.
Le temps de pré-positionnement (tset-up, setup-time)
C’est le temps depuis lequel l’information doit être présente à l’entrée de la bascule avant
d’appliquer l’horloge.
Le temps de maintien (Hold-time ou tH)
C’est le temps pendant lequel il faut maintenir le niveau si on veut qu’il soit pris en compte.
Pour certaines bascules l’impulsion de synchronisation doit avoir une largeur appelée
la durée ‘tw’ (tpLH, tpHL).

On appelle transparence toute modification de la sortie provoquée par une modification de


l’entrée D lorsque le niveau logique de l’horloge est haut.

46
On dispose des portes élémentaires et des bascules JK de sorte à obtenir un montage qui fait
apparaitre sur un train d’impulsions, les impulsions paires puis les impulsions impaires.

47
Chapitre 4 : Logique Séquentielle-les Compteurs

Introduction
Dans ce chapitre, on étudie les différentes méthodes de conception des compteurs digitaux à
partir des bascules de base. Il s’agit de compter un certain nombre d’état représentant chacun
un code binaire. Le passage d’un état à un autre est commandé par un signal d’horloge et
chaque état est représenté une seule fois pendant une séquence.
Un compteur peut-être représenté par son modulo, ceci correspond à un nombre d’état
pouvant être représenté dans une séquence.

I) Classification des compteurs


On distingue deux critères de classification :
Le mode du comptage ;
Le mode de commande.

1.1) Classification suivant le mode de commande

48
1.1.1) Compteurs asynchrones
Le signal d’horloge (signal de commande ou impulsions) est appliqué à la bascule de plus
faible poids si le code est pondéré ou de façon plus générale à la bascule dont la sortie change
le plus souvent d’état pendant le cycle de comptage. Les autres bascules sont connectées à la
première en reliant la sortie ‘Q’ de la bascule précédente à l’entrée horloge de la bascule
suivante (dans le cas des bascules où l’horloge réagit sur front descendant).
Le temps qui sépare l’arrivée du signal de commande sur la bascule précédente et le moment
où il est reçu par la bascule suivante est égal au temps de propagation (tp).
On constate que le retard accumulé est égal à ‘n.tp’ avec ‘n’ étant le nombre de bascules. Ce
qui constitue un inconvénient majeur des compteurs asynchrones.

Exemple : Compteur Asynchrone Modulo 4


Séquence …0, 1, 2, 3, 0 …
Nmax=(3)10 =(11)2 donc 2 F/FS

Compte 21 20
0 0 0

1 0 1

2 1 0

3 1 1

Cp
B
A

49
Aux fréquences élevées tenir compte de tp

On constate à partir du timing qu’il existe un phénomène de recouvrement, nous en concluons


donc que les compteurs asynchrones sont plutôt adaptés aux applications qui n’utilisent pas
de fréquences très élevées.

50
1.1.2) Compteurs synchrones
Ils sont conçus de façon que chaque bascule qui le constitue soit commandée par le même
signal d’horloge.

1.1.3) Compteurs cycliques


Ce sont des compteurs qui ne génère qu’une seule séquence de comptage et qui s’arrête à la
fin de la séquence, on peut redémarrer la séquence en envoyant une impulsion sur une entrée
spéciale.

1.2) Classification suivant le mode de comptage


On distingue :
 Les compteurs proprement dit qui s’incrémentent à chaque impulsion (coup
d’horloge) ;
 Les décompteurs qui se décrémentent à chaque coup d’horloge ;
 Les compteurs réversibles qui donnent la possibilité de choisir à l’aide d’une borne de
commande mode de fonctionnement.

II) Les différentes méthodes de réalisation des compteurs


Il faut d’abord déterminer le nombre de bascules nécessaires. Ce nombre ‘n’ dépend en
générale du nombre maximal, Nmax à compter dans une séquence.
Exemple 1 : 1ère séquence …2, 3, 0, 1, 2,3, … compteur modulo 4, Nmax=(11)2 donc 2F/FS
sont nécessaires.
Exemple 2 : 2ème séquence …2, 3, 6, 7, 9,2,… compteur modulo 5
Nmax=(9)10 = (1001)2 donc 4F/FS

2.1) Réalisation des Compteurs Asynchrones


Il est possible de réaliser des compteurs asynchrones de deux manières :
 Avec des F/Fs JK câblées en T (conception type T)
 Avec des F/Fs type D (conception type D)

51
2.1.1) Réalisation d’un compteur modulo N= 2n(N ENTIER)
Exemple : Prenons : N=8= 23(n=3)

( Compteur modulo 8 ; conception type T )

( Compteur modulo 8 ; conception type D )

Remarque: Pour réaliser un compteur d’une puissance de 2 supérieure il suffit d’ajouter en


cascade autant de bascule que de puissances de 2.

2.1.2) Réalisation d’un décompteur modulo N=2n


Il existe deux méthodes de bases
Utiliser des bascules à commande sur front descendant en reliant successivement Q de
la bascule precedente à l’entrée horloge de la bascule suivante (Q n = Hn+1) :

20 21

52
F/Fs commandées sur front montant en reliant Qn = Hn+1

20 21

2.1.3) Réalisation d’un compteur / décompteur asynchrone

Compteur :On utilise des F/Fs JK réagissant sur front descendant en reliant Qn = Hn+1
(Fonction T : J = K)
Décompteur : On utilise des F/Fs JK réagissant sur front descendant en reliant Q n = Hn+1
On peut réaliser un compteur /décompteur en commutant Hn+1 à Qn ou Q n
53
Prenons M tel que
 Si M = 0, Hn+1 = Qn
 Si M=1 Hn+1=Q n
Hn+1 = M Qn + MQ n = M⨁ Qn

2.1.4) Réalisation d’un compteur modulo N≠2n (N ENTIER)


La méthode consiste à réaliser un compteur modulo N ' avec '
N la puissance de 2
immédiatement supérieure à N.

Exemple: Soit à réaliser un compteur modulo 5. La puissance de 2 immédiatement supérieure


à 5 est 8 c’est-à-dire 23 , nous allons donc réaliser notre compteur autour d’un compteur
modulo 8 et pour arriver à notre but, il faut donc prevoir une remise à 0 au 6 ème compte ce
qui nous impose l’utilisation des bascules avec entrée de remise à 0.

Compte QC QB QA   RAZ
0 0 0 0   0
1 0 0 1   0
2 0 1 0   0
3 0 1 1   0
4 1 0 0   0
5 1 0 1   1
6 1 1 0   ϕ 
7 1 1 1   ϕ 54
RAZ = QC.QA

2.2) Réalisation des Compteurs Synchrones


On distingue 3 méthodes de réalisation :
 Avec des F/Fs JK câblées en T
 Avec des F/Fs type D
 Avec des F/Fs JK (méthode universelle)

2.2.1) Réalisation avec des f/fs jk câblées en t


Schéma de principe

55
Le travail à effectuer après avoir déterminé le nombre de F/Fs nécessaires est de réaliser le
circuit de commande. Il doit fournir autant de sorties de commande que de bascules. Si une
sortie de commande C est égal à 1, cela signifie qu’il y a changement d’état de la bascule sur
le front descendant de l’horloge sinon l’état précédant est conservé. C’est-à-dire s’il n’y a pas
changement d’état de la bascule alors C = 0.

Exemple : Compteur Synchrone


Séquence ……..2, 7, 5, 6, 2……… etc.
On a un compteur modulo 4 avec Nmax = (7)10 = (111)2 soit 3 F/Fs

Compte QC QB QA   CC CB CA
C A=QC +Q B=QC QB
2 0 1 0   1 0 1
7 1 1 1   0 1 0 C Z=Qcasynchrone en DCB . réagissant sur front desce
5 1 0 1   0 1 1
6 1 1 0   1 0 0

Diagramme d’état

56
Remarquons que le compteur démarre à la mise sous tension à un état quelconque. C’est pour cela
que nous allons étudier l’évolution du compteur à partir d’un état quelconque, à la limite des
combinaisons possibles en sortie.

Remarque
Si les équations obtenues pour les commandes de A, B et C ne permettent pas d’entrer dans la
séquence après l’étude du diagramme d’état, il faudra faire des regroupements plus sévères
dans les diagrammes de Karnaugh concerné.

2.2.2) Réalisation avec des f/fs type d


Schéma de principe

Exemple : Soit à réaliser le compteur synchrone suivant

57
Séquence …….0, 2, 4, 5, 0…….
Nmax = (5)10 = (101)2⇒ 3 F /Fs

Compte QC QB QA GC GB GA
GB =QC .Q B
0 0 0 0 0 1 0
2 0 1 0 1 0 0 GC =Q B +G A
4 1 0 0 1 0 1
G Z=Qcasynchrone en DCB . réagissant sur front descend
5 1 0 1 0 0 0

Diagramme d’état

2.2.3) Réalisation avec des F/FS JK (méthode universelle)

J K   Qn Qn+1
0 ϕ    0 0
1 ϕ  0 1
ϕ  1 1 0
58
ϕ  0   1 1
Démarche à suivre pour réaliser un compteur synchrone avec cette méthode
 Déterminer le nombre de F/Fs nécessaires
 Dresser une table de comptage
 Déterminer les entrées J et K de chaque bascule en fonction des sorties et simplifier
par la méthode de Karnaugh si nécessaire
 Concevoir le schéma du circuit proprement dit.

Exemple :Compteur qui ne compte que les nombres impairs entre 0 et 8


(0 compris).
Séquence…….0, 1, 3, 5, 7, 0…….
Nmax = (7)10 = (111)2 => 3F/Fs (A, B, C)

Etat
Etat Suivant
Précédant
JA = 1
QC QB QA QC QB QA JC KC JB KB JA KA
0 0 0 0 0 1 0 ϕ  0 ϕ  1 ϕ  JB = Q A
0 0 1 0 1 1 0 ϕ  1 ϕ  ϕ  0
JC = Q B
0 1 1 1 0 1 1 ϕ  ϕ  ϕ  ϕ  0
1 0 1 1 1 1 ϕ  0 1 ϕ  ϕ  0 KA = QBQC
1 1 1 0 0 0 ϕ  1 ϕ  1 ϕ  1 KB = 1

KC = QB

Exercice :

59
a) En utilisant des bascules JK réagissant sur front descendant et des opérateurs NOR.
Donnez le logigramme d’une décade asynchrone dans le code DCB.
b) Mêmes questions pour une décade asynchrone dans le code 5421
c) Comparez les deux logigrammes
d) Comment peut-on passer aisément d’un code à un autre.

TD COURS : Méthodes de synthèse des compteurs asynchrones


Les impulsions à compter sont nécessairement appliquées sur l’entrée Cp de la 1 ère bascule
c’est-à-dire celle correspondante au bit de poids le plus faible si le code est pondéré. De façon
plus générale, c’est la bascule dont la sortie change le plus souvent d’état pendant le cycle de
comptage.
Les bascules peuvent être commandées :
 Les unes, par les impulsions à compter par Cp ;
 Les autres, par les transitions ses sorties des bascules précédentes.
Il faut donc commencer à rechercher l’origine des impulsions de commande de chaque
bascule sauf la 1ère. Puis on calcule les fonctions d’entrée de chaque bascule.

Exemple : Soit à réaliser une structure asynchrone d’une association de trois bascules ayant
les séquences suivantes :

A B C
Origine 0 0 1
Etat 1 0 1 0
Etat 2 0 1 1
Etat 3 1 0 0

Mise en équation
La valeur des entrées d’une bascule synchrone est indifférente (ϕ) tant qu’on ne lui envoie pas
une impulsion de commande. Il faut donc repérer pour chaque bascule les changements d’état
(étape précédente vers étape suivante) du compteur par lesquels elle reçoit une impulsion et
donner les valeurs logiques correspondantes à ces entrées J et K uniquement.

60
Exercice :
Soit à réaliser le compteur asynchrone ayant le code de comptage suivant :

A B C D
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1

Exercice :
En utilisant des bascules JK réagissant sur front descendant et des portes NAND, donnez le
logigramme d’une décade asynchrone en DCB.

61
Chapitre 5 : Logique Séquentielle-les Registres

Définition
Un registre est une association de mémoires unitaires avec lesquelles, il est possible
d’effectuer les opérations fondamentales suivantes :
Enregistrer à un instant déterminé une information constituée par une
suite quelconque de ‘0’ et de ‘1’ que l’on appelle mot binaire. (Écriture)
Conserver ce mot en mémoire aussi longtemps que nécessaire. (Mémorisation)
Restituer le mot enregistré à la demande, une ou plusieurs fois de suite dans. Dans ce
cas il faut extraire l’information sans la détruire. (Lecture)
D’autres types de circuits permettent d’effectuer ces mêmes opérations sur plusieurs mots qui
sont classés et identifiés à l’aide d’une adresse : ce sont les mémoires.
La structure d’un registre va dépendre de la nature de l’information, c’est-à-dire de la façon
dont il recevra les digits ou les mots binaires.
On distingue 4 types de registres :
 Registre à écriture et lecture en parallèle ;
 Registre à écriture en parallèle et lecture en série ;
 Registre à écriture en série et lecture en parallèle ;
 Registre à écriture et lecture en série (registre à décalage).

I) Les différents types de registres

62
1.1) Registre à écriture et lecture en parallèle

1.2) Registre à écriture en parallèle et lecture en série

63
1.3) Registre à écriture et lecture en série

1.4) Registre à décalage réversible


On prend S tel que si :
 S = 0 alors on a un décalage à droite
 S = 1 alors on a un décalage à gauche

D N =S Q N−1 +SQ N +1

64
1.5) Compteur de Johnson : modulo 6
Il s’agit d’un compteur à décalage bouclé sur lui-même mais l’entrée série est reliée à la sortie
Q de la dernière bascule. Dans ce compteur, on utilise 2n états sur 2 n possibles. L’état de
départ est celui où toutes les bascules sont à zéro.

D A =QC ; D B=Q A ; D C =QC

QC QB QA
0 0 0 0
1 0 0 1
3 0 1 1
7 1 1 1
6 1 1 0
4 1 0 0
0 0 0 0

65
Etude du cycle erroné pour 2 => 5 => 0

Etat Précédant Etat Suivant


QC QB QA QC QB QA DC DB DA

0 1 0 1 0 1 1 0 1 D B =QC Q A +Q B Q A ;

1 0 1 0 0 0 0 0 0 D A =QC ;
0 0 0 0 0 1 0 0 1 D C =Q B
0 0 1 0 1 1 0 1 1

0 1 1 1 1 1 1 1 1

1 1 0 1 0 0 1 0 0

1 0 0 0 0 0 0 0 0

1.6) Compteur en Anneau


C’est un registre à décalage dans lequel, une seule bascule est à l’état 1 et la dernière bascule
étant bouclée sur l’entrée de la première bascule. Un compteur en anneau comporte autant de
66
bascule qu’il y a de symboles à représenter. Les avantages d’un tel compteur sont les
suivants :
 L’information n’est pas perdue mais circule en permanence dans le compteur, qui est
une mémoire circulaire ;
 Si on ouvre les bornes de sortie, on obtient un registre à décalage.
Un compteur en anneau doit obligatoirement être initialisé (contenir une information avant
l’application de la première impulsion d’avancement). A l’absence d’information dans le
compteur, celui-ci reste à zéro.

Exemple : Compteur en anneau modulo 4 (ou à 4 étages)


A0 A1 A2 A3
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

DA 1=QA 0 ; DA 2=QA 1; DA 3=QA 3; DA 0=QA 3

Remarque :
Un compteur en anneau peut être utilisé pour réaliser un diviseur de fréquence par n. Pour
s’assurer qu’une seule bascule est à l’état 1, on utilise les entrées asynchrones. On envoie une
impulsion sur l’entrée ‘Clear’ de la (N-1) bascule et l’entrée ‘Preset’ de la bascule restante.
On peut également réaliser un montage qui se positionne dans un état correct au bout de
quelques périodes.

67
Etat initial 1 0 1 1
1ère Impulsion 0 1 0 1
2è Impulsion 0 0 1 0
3è Impulsion 0 0 0 1
4è Impulsion 1 0 0 0

68

Vous aimerez peut-être aussi