Upload
truongdat
View
229
Download
0
Embed Size (px)
Citation preview
Chapitre I
Circuits logiques numeriques : une revision
Ordinateurs Numeriques
Ordinateurs Numeriques: Notions de base et Definitions
Architecture d’ordinateur: Lorsque l’on parle de l’architecture d’un ordinateur, on se refere ala structure et au comportement de cet ordinateur, du point de vue de l’utilisateur. Ceciinclut les formats de l’information, l’ensemble des instructions, et les techniques d’adressage.
Conception architecturale d’ordinateur: Une conception architecturale d’ordinateur estcentree sur les specifications des differents modules fonctionnels, tels que les processeurs etles memoires, ainsi que leur structure commune au sein d’un systeme informatique.
programme: Un programme est une sequence d’instructions destinees a un ordinateur.
Ordinateurs Numeriques
Materiel informatique (Hardware): La partie materielle (hardware) d’un ordinateur typiquese divise habituellement en trois composantes majeures:
(i) L’unite centrale (CPU), qui comprend une unite arithmetique et logique (ALU) pour la manipulationdes donnees, des registres pour le rangement temporaire des donnees, et des circuits de controlepour aller chercher et executer les instructions de la machine (machine instructions).
(ii) La memoire vive (Random Access Memory, ou RAM), pour le rangement des instructions de lamachine et les donnees.
(iii) Le processeur d’entrees / sorties (IOP), dont la tache consiste a communiquer et a controler le flotd’informations entre l’ordinateur et le monde exterieur.
Ordinateurs Numeriques
Conception d’ordinateur: Lorsque les specifications de l’ordinateur sont formulees, il s’agitde developper le materiel approprie pour le systeme. Pour la conception d’un ordinateur, ilfaut determiner quel materiel devrait etre utilise pour le systeme, et comment sescomposantes seront interconnectees.
Les Portes Logiques
Les Portes Logiques
Algebre Booleenne
Algebre Booleenne
(1) x + 0 = x (2) x · 0 = 0(3) x + 1 = 1 (4) x · 1 = x(5) x + x = x (6) x · x = x(7) x + x ′ = 1 (8) x · x ′ = 0(9) x + y = y + x (10) xy = yx
(11) x + (y + z) = (x + y) + z (12) x(yz) = (xy)z(13) x(y + z) = xy + xz (14) x + (yz) = (x + y)(x + z)(15) (x + y)′ = x ′y ′ (16) (xy)′ = x ′ + y ′
(17) (x ′)′ = x
Table 1: Identites de base de l’algebre booleenne
Algebre Booleenne
Theorem 1 (Theoreme de DeMorgan).
Les identites (15) et (16) de la Table 1 representent le theoreme de DeMorgan.
Le theoreme affirme que:
Une porte NON-OU (NOR) qui implemente l’operation (x + y)′ est equivalente a x ′y ′.⇒ Ceci implique qu’une porte NON-OU possede deux symboles differents, mais equivalents:
Une porte NON-ET (NAND) qui implemente (xy)′ est equivalente a (x ′ + y ′).⇒ Par consequent, une porte NON-ET possede deux symboles differents mais equivalents:
Algebre Booleenne Complement d’une fonction
Complement d’une fonction
Dans une table de verite, le complement de la fonction booleenne F s’obtient eninterchangeant les 0 et les 1 dans les valeurs de F .
Theorem 2 (Theoreme de DeMorgan—Forme generale).
(x1 + x2 + · · ·+ xn)′ = x ′
1x′2 · · · x ′
n
(x1x2 . . . xn)′ = x ′
1 + x ′2 + · · ·+ x ′
n
A partir de son expression booleenne ou de son circuit logique, on peut obtenir lecomplement d’une fonction booleenne en:
changeant les portes/operations OU en des portes/operations ET,changeant les portes/operations ET en des portes/operations OU, et encomplementant/inversant chaque variable/entree booleenne.
Example 3.
Trouvons l’inverse de F = AB + C ′D′ + B′D.
F ′ = (AB + C ′D′ + B′D)′
= (AB)′ · (C ′D′)′ · (B′D)′ (en appliquant le theoreme de DeMorgan)
= (A′ + B′) · (C + D) · (B + D′) (aussi en appliquant le theoreme de DeMorgan)
Tables de Simplification
Tables de Simplification
Les expressions booleennes sont souvent simplifiees grace a des tables de Karnaugh(tables-K, ou K-maps)
Les tables-K ont la forme suivante:
F (A, B) :
0 1
2 3
A
BF (A, B, C) :
0 1
2 3
45
67
A
B
C
(a) Une table a deux variable (b) Une table a trois variables
Tables de Simplification
F (A, B, C , D) :
0 1
2 3
45
67
8 9
10 11
1213
1415A
B
C
D
(c) Une table a quatre variables
Tables de Simplification
Lorsque le bord d’une table (colonne et/ou ligne) comporte 4 entrees ou plus, il faut noter lasequence des combinaisons des variables ainsi : 00 01 11 10 {au plus un bit qui differe entredeux entrees adjacentes}On peut s’imaginer une table-K comme une “sphere”: ses coins et ses bords se “touchent”.
Chaque combinaison de variables dans une table de verite ou dans une table-K s’appelle unminterm (terme anglo-saxon). Chaque minterm est marque d’un petit numero dans chacunedes cases des tables-K presentees ci-dessus.
Par exemple, la combinaison ABCD = 0100 correspond au minterm 4.
L’information contenue dans une table de verite ou dans une table-K peut s’ecrire en uneforme compacte en relevant les equivalents decimaux des minterms qui produisent un 1 pourla fonction.
Tables de Simplification
Example 4.
Considerons la table a 4 variables F (A, B, C , D) = Σ(0, 1, 2, 5, 8, 9, 10)
' $& %
F (A, B, C , D) :
10
11
12
03
04
15
06
07
18
19
110
011
012
013
014
015A
B
C
D
⇒ F (A, B, C , D) = B′D′ + B′C ′ + A′C ′D ← forme en somme de produits
Tables de Simplification
Pour obtenir F en produits de sommes, on procede en 2 etapes:
1 On exprime F ′ en somme de produits, en simplifiant les minterms qui correspondent a des 0dans la table-K.
2 On utilise le theoreme de DeMorgan pour complementer F ′ afin d’obtenir une expression deF en produit de sommes.
Tables de Simplification
Tables de Simplification
Example 5.
Exprimons la fonction F de l’exemple precedent comme produit de sommes.
F (A, B, C , D) :
10
11
12
03
04
15
06
07
18
19
110
011
012
013
014
015A
B
C
D
hence, F ′ = AB + CD + BD′
F = (F ′)′ = (AB + CD + BD′)′
= (AB)′ · (CD)′ · (BD′)′ par le theoreme de DeMorgan
= (A′ + B′) · (C ′ + D′) · (B′ + D) ← forme en produit de sommes
Tables de Simplification
Si la fonction F se presente sous la forme d’une somme de produits:F (A, B, C , D) = B′D′ + B′C ′ + A′C ′D, alors on peut l’implementer de deux faconsdifferentes, mais equivalentes: l’une avec des portes ET et OU seulement, l’autre avec desportes NON-ET seulement.
≡
Portes ET et portes OU Implementation avec portes NON-ET
Tables de Simplification
Si la fonction F se presente sous la forme d’un produit de sommes:F (A, B, C , D) = (A′ + B′) · (C ′ + D′) · (B′ + D), alors on peut l’implementer de deux faconsdifferentes, mais equivalentes: l’une avec des portes ET et OU seulement, l’autre avec desportes NON-OU seulement.
≡
Portes ET et portes OU Implementation avec portes NON-OU
Tables de Simplification Conditions Indifferentes
Conditions Indifferentes
Les “conditions indifferentes” sont des conditions qui correspondent a une certainecombinaison a l’entree pour laquelle la valeur de la sortie n’a pas d’importance.
Les minterms qui correspondent a ces conditions sont representees par un “x” dans latable-K.
Tables de Simplification Conditions Indifferentes
Example 6.
F (A, B, C) =∑
(0, 2, 6) ← minterms correspondant a des 1
d(A, B, C) =∑
(1, 3, 5) ← minterms qui correspondent a des “x” (minterms indifferents)
� �
F (A, B, C) :
10
x1
12
x3
04
x5
16
07
A
B
C
⇒ F = A′ + BC ′
=∑
(0, 1, 2, 3, 6)
Circuits Combinatoires
Circuits Combinatoires
Un circuit combinatoire est un arrangement de portes logiques interconnectees quiimplementent une relation entre une variable de n entrees et une variable de m sorties
Un circuit combinatoire est decrit par une table de verite qui montre la combinaison de sortiecorrespondant a chacune des 2n combinaisons d’entree
Dans un circuit combinatoire, la sortie est independante du temps, et ne depend que del’entree du circuit
Dans un circuit combinatoire, la sortie est “re-calculee” aussitot qu’un changement a l’entreeintervient
Circuits Combinatoires Procede de conception de circuits combinatoires
Procede de conception de circuits combinatoires
1 Definir le probleme
2 Assigner differentes lettres symboliques aux variables d’entree et de sortie
3 Obtenir la table de verite qui definit la relation entre les entrees et les sorties
4 Obtenir l’expression booleenne simplifiee pour chaque variable de sortie
5 Dessiner le diagramme logique du circuit
Circuits Combinatoires Procede de conception de circuits combinatoires
Example 7 (Demi-additionneur).
Entree Sortiesx y C S0 0 0 00 1 0 11 0 0 11 1 1 0
=⇒ S = x ⊕ y
C = xy
Table de verite
Diagramme Logique
Circuits Combinatoires Procede de conception de circuits combinatoires
Example 8 (Exercice: Additionneur complet).
Montrez qu’un additionneur complet peut s’implementer en utilisant deux demi-additionneurs etune porte OU.
Circuits Sequentiels: Introduction
Circuits Sequentiels: Introduction
A la difference des circuits combinatoires, les circuits sequentiels sont des circuits logiquesdont la sortie n’est pas seulement une fonction des entrees du circuit, mais aussi de signauxlogiques dependants du temps.
Les circuits sequentiels les plus courants aujourd’hui sont les circuits sequentiels synchrones.
La synchronisation des circuits sequentiels synchrones est assuree par des impulsionsd’horloge, generees par une horloge commune.
Dans les circuits sequentiels regis par une horloge, les sorties sont “calculees” uniquement al’arrivee d’une impulsion d’horloge de synchronisation.
Entre deux impulsions d’horloge consecutives, la sortie du circuit sequentiel ne change pas.
Les Bascules (Flip-Flops)
Les Bascules (Flip-Flops)
Une bascule est une cellule binaire capable de ranger un bit d’information entre deuximpulsions d’horloge consecutives.
Les Bascules (Flip-Flops) La Bascule SR
La Bascule SR
R
S
Q
Q
SR
Symbole graphique
S R Q(t + 1)
0 0 Q(t) Pas de changement a l’entree0 1 0 Remise a 01 0 1 Mise a 11 1 ? Indetermine (ne peut pas etre predit !)
Table caracteristique
La condition indeterminee rend la bascule SR difficile a gerer, par consequent elle est peu utiliseeen pratique.
Les Bascules (Flip-Flops) La Bascule JK
La Bascule JK
Une bascule JK est une amelioration de la bascule SR, en ce sens que la condition indeterminee yest bien definie.
J1
K1
C
Q
Q
JK
Symbole graphique
J K Q(t + 1)
0 0 Q(t) Pas de changement a l’entree0 1 0 Remise a 01 0 1 Mise a 11 1 Q′(t) Complement
Table caracteristique
Les Bascules (Flip-Flops) La bascule D
La bascule D
Une bascule D place l’entree a sa sortie au debut de chaque cycle d’horloge.
La relation entre l’entree et la sortie d’une bascule D est definie par l’equation caracteristiquesuivante:
Q(t + 1) = D, ou D symbolise le signal d’entree
D
C
Q
Q
D
Symbole graphique
D Q(t + 1)
0 01 1
Table caracteristique
Les Bascules (Flip-Flops) La bascule T
La bascule T
En plus de l’entree d’horloge, que toutes les bascules possedent, la bascule T (aussi appeleeBascule Toggle) a une entree T qui permet d’inverser la sortie ou de la laisser telle quelle.
La relation entre l’entree et la sortie d’une bascule T est definie par l’equation caracteristiquesuivante:
Q(t + 1) = Q(t)⊕ T , ou T symbolise le signal d’entree
Symbole graphique
T Q(t + 1)
0 Q(t)1 Q’(t)
Table caracteristique
Les Bascules (Flip-Flops) La bascule T
Example 9.
Montrez qu’une bascule T est equivalente a une bascule JK pour laquelle J = K = T .
Les Bascules (Flip-Flops) Les Bascules Declenchees par Transition
Les Bascules Declenchees par Transition
Les bascules les plus courantes aujourd’hui sont les bascules declenchees par transition.
Dans les bascules declenchees par transition montante, les changements a la sortie ont lieulorsque l’impulsion passe d’un niveau bas (0 logique) a un niveau haut (1 logique).
Les Bascules (Flip-Flops) Les Bascules Declenchees par Transition
Dans les bascules declenchees par transition descendante, les changements a la sortie ont lieulorsque l’impulsion passe d’un niveau haut (1 logique) a un niveau bas (0 logique).
Les Bascules (Flip-Flops) Tables d’Excitation
Tables d’Excitation
Pour la conception de circuits sequentiels, la transition requise de l’etat present vers l’etatsuivant est generalement connue.
Le concepteur doit determiner les entrees d’excitation qui causent la transition recherchee.
Les Bascules (Flip-Flops) Tables d’Excitation
Circuits Sequentiels
Circuits Sequentiels
La figure suivante montre le diagramme bloc d’un circuit sequentiel typique.
Clock
circuitFlip−flops
OutputsInputs Combinational
Un circuit sequentiel typique est compose d’un circuit combinatoire et de plusieurs bascules.
Les entrees des bascules sont prises aux sorties du circuit combinatoire.
Les entrees du circuit combinatoire sont prises aux sorties des bascules, ainsi qu’a des entreesexternes (si il y en a).
Circuits Sequentiels Equations d’Entree de Bascules
Equations d’Entree de Bascules
Les equations d’entree de bascules sont des expressions booleennes qui definissent lesentrees de chaque bascule en fonction des variables booleennes du circuit.
Figure 1: Diagramme logique du circuit sequentiel
Circuits Sequentiels Equations d’Entree de Bascules
Dans le diagramme ci-dessus, les equations d’entree des bascules sont:
DA = Ax + Bx , et
DB = A′x .
Le circuit sequentiel a une sortie externe y . Elle peut s’exprimer par:
y = Ax ′ + Bx ′.
Circuits Sequentiels Table d’etats
Table d’etats
Le comportement des circuits sequentiels est determine par les entrees, les sorties, les etatspresents et les prochains etats de leurs bascules.
Les sorties et les prochains etats dependent tous deux des entrees du circuit et des etatspresents des bascules.
Dans ce contexte, la table d’etats est une table qui montre les sorties du circuit et lesprochains etats pour chaque combinaison des entrees/etats presents du circuit.
Pour un circuit sequentiel avec m bascules, n variables d’entree, et p variables de sortie, latable d’etats comprend:
m colonnes qui representent les etats presents des basculesn colonnes qui representent les entrees du circuitm colonnes qui representent les prochains etats des basculesp colonnes qui representent les sorties du circuit2m+n lignes de combinaisons binaires allant de 0 a 2m+n − 1.
Circuits Sequentiels Table d’etats
Circuits Sequentiels Table d’etats
Example 10 (Exemple de table d’etats).
Pour un circuit sequentiel avec une entree externe, une sortie externe, et deux bascules, une tabled’etats aurait la forme suivante:
Table 2: Exemple de table d’etats
Etat EtatPresent Entree Prochain SortieA B x A B y0 0 0 0 0 00 0 1 0 1 00 1 0 0 0 10 1 1 1 1 01 0 0 0 0 11 0 1 1 0 01 1 0 0 0 11 1 1 1 0 0
Le diagramme logique d’un tel circuit sequentiel est montre sur le schema 1.
Circuits Sequentiels Diagramme d’etat
Diagramme d’etat
Un diagramme d’etat est un graphe directionnel qui connecte tous les etats possibles descircuits sequentiels, et dans lequel chaque transition a la forme suivante:
Present State Next Stateinput/output
Le diagramme d’etat du circuit logique de la Figure 1 est montre ci-dessous:
Circuits Sequentiels Diagramme d’etat
Exemple de conception : Conception d’un compteur binaire
On desire mettre au point un circuit sequentiel regit par une horloge pour creer, a l’aide debascules JK, un compteur binaire decrit par le diagramme d’etat suivant.
” A partir du diagramme d’etat, on peut voir que le circuit sequentiel a:4 etats decrit par A et B =⇒ 2 bascules sont necessaires1 entree externe, que l’on peut appeler xPas de sorties externes
Circuits Sequentiels Diagramme d’etat
Ensuite, on erige la table d’excitation du circuit sequentiel.
Table 3: La table d’excitation du compteur binaire
Etat Prochainpresent Entree Etat Entrees des basculesA B x A B JA KA JB KB
0 0 0 0 0 0 x 0 x0 0 1 0 1 0 x 0 x0 1 0 0 0 0 x x 00 1 1 1 0 1 x x 11 0 0 1 0 x 0 0 x1 0 1 1 1 x 0 1 x1 1 0 1 1 x 0 x 01 1 1 0 0 x 1 x 1
Notez que les 5 premieres colonnes de la table d’excitation correspondent a la table d’etat ducircuit.
Circuits Sequentiels Diagramme d’etat
On trouve les equations d’entree de la bascule et les equations de sortie externe (il n’y en apas dans ce cas)
JA(A, B, x) :
00
01
02
13
x4
x5
x6
x7
A
B
xKA(A, B, x) :
x0
x1
x2
x3
04
05
06
17
A
B
x
JA = Bx KA = Bx
Circuits Sequentiels Diagramme d’etat
JB(A, B, x) :
00
11
x2
x3
04
15
x6
x7
A
B
xKB(A, B, x) :
x0
x1
02
13
x4
x5
06
17
A
B
x
JB = x KB = x
Circuits Sequentiels Diagramme d’etat
Par consequent, les equations d’entree des bascules sont:
JA = Bx KA = Bx
JB = x KB = x
On dessine le diagramme logique du circuit