Vous êtes sur la page 1sur 57

SYSTEMES LOGIQUES EPFL DI / LSP

Walter Hammer -1- Oct. 2001


Systmes logiques

SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -2- Oct. 2001
Table des matires

1) Gnralits
Formes de linformation
Convertisseurs
Linformatique
Reprsentation numrique
Les codes usuels
Oprations arithmtiques
Transmission de linformation

2) Portes logiques
Oprations logiques
Proprits des oprations
Symboles standards
Algbre de Boole

3) Systmes combinatoires simples
Modes de reprsentation
Synthse des circuits logiques
Mthodes de simplification
La condition indiffrente
Les courses
Implantation

4) Implmentation
Technologie CMOS
Transistor MOS
Linterrupteur
Les portes CMOS
Ltat haute impdance
Caractristiques statiques
Caractristiques dynamiques
Consommation de courant

5) Systmes combinatoires complexes
Circuits programmables
Mmoires ROM

6) Systmes squentiels simples
Reprsentation
Synthse synchrone
Synthse asynchrone

7) Systmes squentiels complexes
Circuits programmables
FPGA
Microcontrleurs

8) Bibliographie
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -3- Oct. 2001
1) Gnralits

Formes de linformation














Les grandeurs physiques, celles qui font partie de notre environnement (temprature,
pression, vitesse, etc.), sont des grandeurs dites analogiques car elles peuvent varier
lintrieur dune gamme continue de valeurs.
Les grandeurs physiques peuvent tre transformes en grandeurs lectriques analogiques
au moyen de capteurs ou transducteurs. Ainsi, un microphone fournit une tension dont la
valeur est proportionnelle une variation de pression.
Une grandeur physique est gale au produit dune valeur et dune unit:
P={P}![P]
P est la grandeur physique
{} signifie la valeur de
[] signifie lunit de

Convertisseurs















Les grandeurs lectriques analogiques doivent tre converties en grandeurs lectriques
numriques afin dtre traites par les systmes logiques.
Ces grandeurs sont appeles numriques ou digitales parce quelles varient lintrieur
dune gamme de valeurs discrtes.
Transducteur
ADC
Systme
logique
DAC Actuateur
Grandeur
physique
Grandeur
physique
Grandeur
lectrique
Grandeur
lectrique
Grandeur
digitale
Grandeur
digitale
Grandeur
de rfrence
Grandeur
de rfrence
u(t)
t
t (ms) u (V) n (-)
0 0 0000
1 2 0010
2 3 0011
3 4 0100
4 3 0011
5 2 0010
6 0 0000
7 -2 1010
8 -3 1011
9 -4 1100
10 -3 1011
11 -2 1010
12 0 0000
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -4- Oct. 2001
Ainsi, la tension reprsentant le signal sonore capt par un microphone est amplifie et
convertie en un signal digital.
Pour cela, la tension est mesure, cest--dire compare une tension de rfrence.
Le rsultat de la mesure est une valeur reprsente par un nombre digital.
Ce nombre digital est gnralement binaire, cest--dire quil nest compos que des
deux digits 0 ou 1 que lon nomme galement bit de langlais (binary digit).
Un tel dispositif de mesure est appel convertisseur analogique-digital ou
convertisseur A/D .ou plus communment ADC de langlais (Analog to Digital
Converter).
Il effectue une division de la grandeur physique par son unit afin dobtenir une valeur:
{P}=P/[P]
Aprs traitement par un systme logique, la grandeur numrique est convertie en
grandeur lectrique analogique par un dispositif inverse appel convertisseur digital-
analogique ou convertisseur D/A ou encore DAC de langlais (Digital to Analog
Converter)
Finalement, la grandeur lectrique analogique est convertie en une grandeur physique au
moyen dun actuateur.

Linformatique










Daprs le Petit Robert, linformatique est la Science du traitement de linformation.
Les systmes logiques font partie de linformatique. Ils interviennent au cur des systmes
lectroniques de traitement de linformation.
Les principales tches des systmes logiques sont:
- acqurir et communiquer des donnes digitales
- effectuer des oprations sur des nombres et des donnes,
- traiter des signaux (par exemple les filtrer),
- contrler, grer et commander des processus.
{P}={P}

Reprsentation numrique








Entre={P}
Sortie={P}
{P}={P}
11 10 9 8 7 6 5 4 3 2 1 0
0 0 1 1 0 1 0 0 1 1 0 1
Mot binaire
Suite de bits pouvant reprsenter
- un nombre
- un caractre
- une adresse
- une instruction
- etc.
Mot binaire de 12 bits
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -5- Oct. 2001
Les donnes numriques sont reprsentes par des mots forms dune suite de bits.
La taille dun mot varie gnralement de 4 bits 64 bits selon les applications.
Un mot peut comporter plusieurs groupes de bits ayant chacun une fonction (adresse,
instruction, valeur traiter, etc.).
Le terme byte (octet en franais) dsigne un mot de 8 bits.

Exemple:
Les automobiles comportent de plus en plus de capteurs et dactuateurs dont les fonctions
concernent la scurit, le fonctionnement, la communication ou le confort.
Chaque capteur comporte un circuit lectronique capable denregistrer les donnes et de les
communiquer un systme logique central.
Ce dernier interroge rgulirement les capteurs et active les actuateurs selon les missions
quil doit remplir et en fonction des donnes reues.
Pour cela, chaque capteur doit tre identifiable.
Les donnes transmises par un capteur comportent donc son adresse, la donne
communiquer et dautres informations telles que des bits de contrle permettant au
processeur de savoir si la donne transmise na pas t altre.

Les codes usuels


























Les nombres sont reprsents par des symboles ayant chacun une valeur donne.
Ces symboles sont aligns selon leur poids.
(MSB=Most Significant Bit=bit de poids le plus fort)
(LSB=Least Significant Bit=bit de poids le plus faible)
Dans la vie courante, le code dcimal est le systme le plus utilis pour reprsenter
des nombres.
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0

0 1 1 0 1 0 0 1
Mot binaire de 8 bits
10
7
10
6
10
5
10
4
10
3
10
2
10
1
10
0

0 3 7 4 5 9 0 6
Mot dcimal de 8 digits
Code binaire pur
Code BCD
Code dcimal
M
S
B
Mot BCD de 2x4 bits
dizaines units
Code hexadcimal
1 0 1 1 0 0 0
(lettre X)
Mot ASCII de 7 bits
Code ASCII
Mot hexadcimal de 2x4 bits
seizaines units
8 4

2

1 8 4 2 1
1 1 1 0 1 0 0 1
E 9
8 4

2

1 8 4 2 1
0 1 1 0 1 0 0 1
L
S
B
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -6- Oct. 2001
Les systmes logiques ne traitent que des donnes binaires, mais elles peuvent tre
codes de diverses faons.
Les codes binaire pur, BCD et hexadcimal sont les plus utiliss pour coder les nombres.
Le code ASCII sert coder les caractres alphanumriques.

Code dcimal
Le code dcimal a comme base 10 ce qui implique 10 symboles (0 9). Le poids de chaque
position est une puissance de 10.

Code binaire pur
Le code binaire a comme base 2 ce qui implique 2 symboles (0 et 1). Le poids de chaque
position est une puissance de 2.

Code BCD
Le code dcimal nest pas pratique pour traduire les variables binaires, mais il reste
ncessaire pour laffichage des rsultats! Cest pourquoi il existe un code spcial BCD
(Binary Coded Decimal) qui traduit chaque chiffre dcimal de 0 9 par son quivalent
binaire pur sur 4 bits (de 0000 1001).
Mais il prend plus de place, et le traitement dune telle information est difficile.

Code hexadcimal
Le code hexadcimal est utilis dans les ordinateurs.
Il est de base 16, ce qui ncessite 16 symboles (les chiffres 0 9 et les lettres A F).
Le poids de chaque position est une puissance de 16.
Sa reprsentation binaire ncessite un mot de 4 bits pour chaque position.

Code ASCII
Pour coder du texte, par exemple les caractres des claviers dordinateurs, on utilise
le code ASCII (American Standard Code for Information Interchange).
Il code sur 7 bits (2
7
= 128 caractres diffrents).
Il existe un code tendu sur 8 bits qui varie selon chaque pays avec 2
8
= 256 caractres.
Un code appel unicode est un ASCII, comportant 16 bits, largement utilis aujourdhui.

Code Gray
Dans certaines applications mcaniques dans lesquelles une rotation ou un dplacement
linaire est cod par des barrires lumineuses, on cherche viter les problmes dus
au mauvais alignement des capteurs.
Si lon exige quun seul bit ne change de valeur lors du passage dun tat ltat voisin,
on obtient ce quon appelle le code GRAY.
Ce code est galement utilis dans certains convertisseurs analogiques-numriques.
Cest un code non pondr, cest dire que les positions des bits ne sont affectes
daucun poids.

Complment deux
Le code binaire pur ne permet pas de reprsenter les nombres ngatifs.
Un code spcial appel complment 2 est utilis cette fin.
Afin dobtenir le correspondant ngatif dun nombre binaire positif, il suffit dinverser tous
les bits, puis dajouter 1 au rsultat obtenu.
Cette faon de procder facilite lopration arithmtique de soustraction (ou daddition
dun nombre ngatif).

SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -7- Oct. 2001
Tableau des codes les plus courants
Dcimal Binaire pur Octal Hexadcimal BCD Gray Compl. 2
0 00000 00 00 0000 0000 00000 000000
1 00001 01 01 0000 0001 00001 111111
2 00010 02 02 0000 0010 00011 111110
3 00011 03 03 0000 0011 00010 111101
4 00100 04 04 0000 0100 00110 111100
5 00101 05 05 0000 0101 00111 111011
6 00110 06 06 0000 0110 00101 111010
7 00111 07 07 0000 0111 00100 111001
8 01000 10 08 0000 1000 01100 111000
9 01001 11 09 0000 1001 01101 110111
10 01010 12 0A 0001 0000 01111 110110
11 01011 13 0B 0001 0001 01110 110101
12 01100 14 0C 0001 0010 01010 110100
13 01101 15 0D 0001 0011 01011 110011
14 01110 16 0E 0001 0100 01001 110010
15 01111 17 0F 0001 0101 01000 110001
16 10000 20 10 0001 0110 11000 100000
17 10001 21 11 0001 0111 11001 101111
18 10010 22 12 0001 1000 11011 101110

Code ASCII
b7 0 0 0 0 1 1 1 1
b6 0 0 1 1 0 0 1 1
b4 b3 b2 b1\b5 0 1 0 1 0 1 0 1
0 0 0 0 NUL DLE Space 0 - P @ p
0 0 0 1 SOH DC1 ! 1 A Q a q
0 0 1 0 STX DC2 " 2 B R b r
0 0 1 1 ETX DC3 # 3 C S c s
0 1 0 0 EOT DC4 $ 4 D T d t
0 1 0 1 ENQ NAK % 5 E U e u
0 1 1 0 ACK SYN & 6 F V f v
0 1 1 1 Bell ETB 7 G W g w
1 0 0 0 BS Cancel ( 8 H X h x
1 0 0 1 HT EM ) 9 I Y i y
1 0 1 0 LF SS * : J Z j z
1 0 1 1 VT Escape + ; K [ k
1 1 0 0 FF FS , < L \ l
1 1 0 1 CR GS - = M ] m
1 1 1 0 SO RS . > N ^ n
1 1 1 1 SI US / ? O o Delete
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -8- Oct. 2001
Oprations arithmtiques


























Addition
Comme pour laddition de deux nombres dcimaux, laddition de deux nombres binaires
consiste additionner dabord les bits de poids faible et ajouter le report aux bits de poids
immdiatement plus lev..
Attention ne pas confondre laddition binaire avec la fonction OU (opration boolenne)
qui est galement reprsente par le signe +. Cette fonction sera tudie dans le chapitre 2.

Soustraction
La soustraction de deux nombres binaires se fait par laddition au premier du complment
deux du second. Le dernier report doit tre limin.
Le complment 2 dun nombre binaire sobtient par inversion des bits, puis en ajoutant 1.
Le complment 2 du complment 2 dun nombre redonne videmment ce nombre.

Multiplication et division
Il est trs facile de multiplier ou de diviser un nombre binaire par 2, 4, 8 ou 16 (et plus)
par dcalage du nombre de 1, 2, 3 ou 4 bits (semblable la multiplication ou division par
10 dun nombre dcimal).
Pour dautres valeurs, il faut utiliser les techniques arithmtiques habituelles.
On multiplie et on divise les nombres binaires de la mme faon quon multiplie et divise les
nombres dcimaux.
Le processus de multiplication est simplifi car les chiffres du multiplicateur sont toujours
des 1 ou des 0, de sorte quon multiplie toujours par 1 ou 0.
De mme, le processus de division est simplifi puisque pour dterminer combien de fois le
diviseur entre dans le dividende, il ny a que deux possibilits: 0 ou 1.
Rgles

0 + 0 = 00
0 + 1 = 01
1 + 0 = 01
1 + 1 = 10
1+1+1=11
Addition
1 1 1
0 1 0 1
5
+ 0 1 1 1
7
= 1 1 0 0
12
Soustraction
1 1 1
1 1 1 0
14
- 1 1 0 0
12
= ? ? ? ?
?
Rgles

Complment 2
(inverser les bits)
(puis ajouter 1)
Addition du complment
- 1 1 0 0
12
inversion 0 0 1 1

+1 0 0 0 1
complment 0 1 0 0
-12
Soustraction
=
Addition du
complment
1
1 1 1 0
14
+ 0 1 0 0
-12
= 0 0 1 0
2
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -9- Oct. 2001
Transmission de linformation




















Le transfert de donnes dun systme logique un autre peut se faire en srie ou en
parallle.

Transmission parallle
La transmission parallle ncessite un bus dont le nombre de conducteurs correspond la
taille des mots transfrer. Ainsi, un bus de 16 bits permet de transfrer des mots de 16
bits.
Dans une transmission parallle, toute la donne est communique en une seule fois.
La transmission parallle est utilise lorsque la rapidit de transmission est le critre
principal.

Transmission srie
La transmission srie permet de rduire le nombre de conducteurs du bus, en principe un
seul, quelle que soit la taille des mots transfrer.
Par contre, elle est bien plus lente que la transmission parallle puisquun seul bit est
communiqu la fois.
Les circuits logiques permettant la transmission parallle ou srie de donnes sont appels
registres. Ils seront tudis au chapitre 6.

Dtection derreurs de transmission






La transmission de donnes peut tre perturbe, un bit peut changer dtat.
Lorsque le risque derreur est faible ou quune erreur na pas de consquence grave,
la mthode du bit de parit convient.
Il existe dautres mthodes plus sres pour les transmissions ncessitant plus de fiabilit.


Rcepteur




Emetteur

1
0
1
1
0
1
1
0
MSB
LSB
Transmission
parallle
Emetteur


Rcepteur

(MSB) 1 0 1 1 0 1 1 0 (LSB)
Transmission
srie
(Ex : RS232)
start bit stop bit
1 1 0 1 1 0 0 0 0 parit paire
0 1 0 1 1 0 0 0 0 0 parit impaire
donnes
bit de parit
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -10- Oct. 2001
Le bit de parit
Le bit de parit est un bit supplmentaire, associ une donne qui doit tre transmise.
Ce bit de parit est mis ltat 1 ou 0 selon le nombre de 1 transfrer.

Parit paire
Dans la mthode de parit paire, le bit de parit est fix pour que le nombre total de 1 de la
donne, y compris le bit de parit, soit un nombre pair.

Parit impaire
Dans la mthode de parit impaire, le bit de parit est fix pour que le nombre total de 1 de
la donne, y compris le bit de parit, soit un nombre impair.




2) Portes logiques

Oprations logiques

Un systme logique est un systme qui traite linformation de faon digitale.
Pour raliser un systme logique, il faut disposer de composants (lments de base).
Un langage mathmatique permettant dcrire les quations de comportement est
galement ncessaire.

Fonctions logiques de base

Lopration NON (ou NOT): inversion ou complment logique






Lopration NON consiste inverser ltat logique dune variable logique.
Le tableau qui spcifie la fonction de loprateur est appel Table de vrit .
La table de vrit indique ltat de sortie de la porte pour tous les tats dentre possibles.
La porte NON est gnralement appele inverseur (inverter en anglais).
Lopration NON est symbolise par loprateur mathmatique .
Le petit rond qui figure sur le symbole de linverseur signifie inversion.
Linverseur est parfois dessin avec le petit rond sur lentre.

Lopration ET (ou AND): produit ou intersection logique








Le rsultat de lopration logique ET vaut 1 si et seulement si toutes ses entres valent 1.
Une porte ET peut compter deux, trois, quatre entres ou plus.
A S = A
0 1
1 0
A S
NON
A B S = AB
0 0 0
0 1 0
1 0 0
1 1 1
ET
A
S
B
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -11- Oct. 2001
Il est important de constater que la porte ET ralise trois fonctions:
- la sortie prend ltat 1 si toutes les entres sont ltat 1 (opration ET pour les 1)
- la sortie prend ltat 0 si une entre au moins est ltat 0 (opration OU pour les 0)
- si une entre est 0 la sortie est bloque 0 et si cette mme entre est 1 la sortie est
gale lautre entre (fonction de blocage ou de passage).
Lopration ET est symbolise par loprateur mathmatique .
Il est important de ne pas confondre cette opration logique avec la multiplication binaire.

Lopration OU ( ou OR): somme ou union logique








Le rsultat de lopration logique OU vaut 1 si au moins lune des entres vaut 1.
Une porte OU peut compter deux, trois, quatre entres ou plus.
Il est important de constater que la porte OU ralise trois fonctions:
- la sortie prend ltat 1 si une entre au moins est ltat 1 (opration OU pour les 1)
- la sortie prend ltat 0 si toutes les entres sont ltat 0 (opration ET pour les 0)
- si une entre est 1 la sortie est bloque 1 et si cette mme entre est 0 la sortie est
gale lautre entre (fonction de blocage ou de passage).
Lopration OU est symbolise par loprateur mathmatique + .
Il est important de ne pas confondre cette opration logique avec laddition binaire.

Toutes les fonctions boolennes peuvent tre ralises laide des oprations
lmentaires NON, ET et OU.

Divers autres oprateurs drivs des oprateurs de base sont couramment utiliss

Lopration NAND: opration AND suivie dune inversion








Lopration NOR: opration OR suivie dune inversion







A B S = A+B
0 0 0
0 1 1
1 0 1
1 1 1
OU
A
S
B
A B S = AB
0 0 1
0 1 1
1 0 1
1 1 0
NAND
A
S
B
A B S = A+B
0 0 1
0 1 0
1 0 0
1 1 0
NOR
A
S
B
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -12- Oct. 2001
Lopration XOR: opration OU exclusif








Le rsultat de lopration logique XOR (OU exclusif) vaut 1 si une et une seule
(exclusivement une) de ses entres vaut 1.
La porte XOR ne compte que deux entres.
Il est important de constater que la porte XOR ralise trois fonctions:
- la sortie prend ltat 1 si une seule entre est ltat 1
- la sortie prend ltat 0 si les deux entres sont gales.
- si une entre est 0 la sortie est gale lautre entre et si cette mme entre est 1 la
sortie est gale linverse de lautre entre

Lopration XNOR: opration XOR suivie dune inversion








Proprits des oprations

Commutativit:
A B = B A
A + B = B + A

Idempotence:
A A = A
A + A = A

Constantes:
A 0 = 0
A 1 = A
A + 0 = A
A + 1 = 1

Complmentation:



Distributivit:
A (B + C) = (A B) + (A C)
A + (B C) = (A + B) (A + C)
A B S = A + B
0 0 0
0 1 1
1 0 1
1 1 0
XOR
A
S
B
A B S = A + B
0 0 1
0 1 0
1 0 0
1 1 1
XNOR
A
S
B
A A = 0
A + A = 1
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -13- Oct. 2001
Associativit:
A (B C) = (A B) C = A B C
A + (B + C) = (A + B) + C = A + B + C

De Morgan:




Fonctions compltes:
Un oprateur est complet lorsquil permet la ralisation des trois fonctions logiques de
base NON, ET et OU.
On peut montrer que loprateur NAND est complet.
Ainsi, toutes les oprations logiques sont ralisables uniquement avec des portes NAND.
On peut galement montrer que loprateur NOR est complet.

Symboles standards



























Les schmas logiques ou logigrammes sont dessins laide de symboles indiquant la
fonction des oprateurs.
Les normes CEI (Commission lectrotechnique internationale) devraient tre le standard.
Toutefois, les normes amricaines MIL sont trs frquemment utilises dans la pratique car
leur lisibilit est meilleure. Elles sont de ce fait utilises dans ce cours.
Les normes allemandes DIN ne sont pratiquement plus utilises.
A B = A + B
A + B = A B
MIL DIN CEI
1
&


&
=1
=1
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -14- Oct. 2001
Algbre de Boole













Les proprits des oprations, en particulier la distributivit et le thorme de De Morgan
permettent des simplifications algbriques.
Lalgbre de Boole est utilise dans le cadre de mthodes de simplification qui seront
tudies au chapitre 3.
A + A B = A
A (A + B) = A
A (A + B) = A B
A + A B = A + B
A B = A + B
A + B = A B
A (1 + B) = A 1 = A
A A + A B = A + A B = A
A A + A B = 0 + A B = A B
(A + A) (A + B) = 1 (A + B) = A + B
Dmontrs par De Morgan
Dmonstrations
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -15- Oct. 2001

A
B
B
A
Commutativit
A
B
B
A
Commutativit
A A Idempotence
A A Idempotence
0
A
0
Constantes
A
1
A
Constantes
A
A
0
Constantes
1
A
1
Constantes
0
A
Complmentation
Complmentation
A
1
A
B

A
C
Distributivit
A
B
C
Distributivit
A
B
C
A
B

A
C
A
B
C
Associativit
A
B
C
A
B
C
Associativit
A
B
C
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -16- Oct. 2001


A
B
A
B
Fonction complte
Fonction complte
A
B
A


B
A
B
A
B
Fonction complte
Fonction complte
A
B
A


B
Fonction complte A A
A
A
B
Algbre de Boole A
A
A
B
Algbre de Boole A
De Morgan
A
B
A

B
De Morgan
A
B
A

B
Algbre de Boole
A

B
A
B
Algbre de Boole
A

B
A
B
Fonction complte A A
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -17- Oct. 2001

3) Systmes combinatoires simples

Modes de reprsentation

La fonction dun systme combinatoire simple peut tre reprsente de plusieurs faons
diffrentes.
Lun des buts de ces reprsentations est de permettre dtre exhaustif, dtre certain que
tous les cas ont t envisags..
Un autre but est de permettre de simplifier les fonctions logiques laide de mthodes
systmatiques.


Lun des modes de reprsentation est la table de vrit que nous avons dj vue pour
les portes.











Une table de vrit comporte toujours 2
n
lignes, o n est le nombre de variables dentre.
Ltat de la sortie est ainsi spcifi pour tous les tats dentre possibles.
Lordre des lignes correspond lordre croissant du nombre binaire form par les variables
dentre.
Un tel mode de reprsentation est limit 5 ou 6 variables dentre.


Un autre mode de reprsentation est ce que lon nomme la table de Karnaugh.








Cette reprsentation plus graphique est trs semblable la table de vrit.
Le tableau comporte toujours 2
n
cases, o n est le nombre de variables dentre.
Ltat de la sortie est ainsi spcifi pour tous les tats dentre possibles.
Lordre des cases correspond au code Gray du nombre form par les variables dentre.
Cette dernire particularit donnera lieu une mthode de simplification intressante.
Un tel mode de reprsentation est limit 5 ou 6 variables dentre.
A B C S
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 0
Table de
vrit
A
S B
C
S=(A,B,C)
Table de
Karnaugh
A
S B
C
S=(A,B,C)
0 0
1 1
0 0
1 0
A
B
C
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -18- Oct. 2001
Un mode de reprsentation algbrique appel quation canonique dcoule galement de la
table de vrit.






Les termes de lquation reprsentent tous les cas o la fonction se sortie vaut 1.
Ils sont appels mintermes.
Chaque minterme comporte toutes les variables dentre (sous forme vraie ou inverse).
Lordre des mintermes est indiffrent. On prfrera cependant lordre croissant, comme
dans le cas de la table de vrit.
Ltat de la sortie est reprsent dans lquation canonique pour tous les cas o elle vaut 1.
Dans les autres cas, elle vaudra 0.
Ce mode de reprsentation nest pas limit par le nombre de variables dentre.

On trouvera galement lquation canonique crite sous forme dcimale:
Chaque minterme est remplac par la valeur dcimale correspondante la combinaison
binaire de ses variables (1 si la variable est vraie et 0 si elle est inverse).
On obtient ainsi la forme canonique dcimale dune fonction logique combinatoire.
Il est impratif de prciser lordre et le nombre des variables.
S(A, B, C)=!(1, 2, 5)
Il est galement possible de reprsenter la fonction inverse:

ou



Un mode de reprsentation frquemment utilis, mais mal adapt aux mthodes
de simplification est le diagramme des temps.







Il est difficile dtre systmatique avec un diagramme des temps.
La fonction de sortie est souvent non spcifie pour certains tats des variables dentre.
Ce mode de reprsentation reste cependant intressant pour visualiser ce que lon pourra
observer laide dinstruments de mesure sur un montage rel.
Equation
canonique
A
S B
C
S=(A,B,C)
S=ABC+ABC+ABC
S=ABC+ABC+ABC+ABC+ABC
Diagramme
des temps
A
S B
C
S=(A, B, C)
A
S
B
C
S(A, B, C)=!(0, 3, 4, 6, 7)
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -19- Oct. 2001

Synthse des circuits logiques

La synthse des circuits logiques a pour but la ralisation dune fonction logique
qui remplit un cahier des charges et qui satisfait galement dautres critres tels que
cot et encombrement minimum par exemple.
Le nombre de circuits produire, le matriel disposition, le dlai de ralisation, etc.
sont dautres paramtres dont il faut tenir compte lors de la synthse.

De faon gnrale, la simplification dun circuit est toujours la bienvenue.








La synthse des circuits logiques combinatoires passe gnralement par les tapes
suivantes:
Table de vrit:
La table de vrit permet dobtenir lquation logique du circuit.
Equation logique ou table de Karnaugh:
Lquation logique ou la table de Karnaugh extraite de la table de vrit pourra tre
simplifie laide de mthodes systmatiques que nous verrons plus loin.
Simplification:
La simplification permet dobtenir une quation logique du circuit qui ralise la mme
fonction laide de moins de matriel.
Logigramme:
Le schma logique ou logigramme dcoule des quations simplifies.
Implantation:
Ce logigramme pourra encore tre transform afin de rduire au minimum le matriel
ncessaire la ralisation du circuit logique.


Mthodes de simplification

Nous allons tudier deux mthodes systmatiques de simplification des fonctions logiques
combinatoires:
La mthode de Quine Mc. Cluskey
La mthode de Karnaugh

La mthode de Quine Mc. Cluskey est bien adapte la programmation.
Elle est par contre complique pour une simplification la main .
Elle nest pas limite par le nombre de variables dentre.

La mthode de Karnaugh est bien adapte une simplification manuelle
Elle nest pas utilisable pour une programmation.
Elle est limite 5 ou 6 variables dentre.
Simplification
A
S B
C
S=(A, B, C)
A
S
B
C
S=(A, B, C)
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -20- Oct. 2001
Mthode de Quine Mc. Cluskey
Cette mthode applique lquation de faon rptitive, systmatique et complte.
Son point de dpart est lquation canonique de la fonction simplifier.
Lindice dun minterme est dfini comme tant le nombre de variables apparaissant sous
forme vraie dans le minterme.
La marche suivre est la suivante:

1) Ecrire lquation canonique

2) Dterminer lindice de chaque minterme et les associer en groupes de mme indice







3) Comparer les mintermes des groupes adjacents et effectuer toutes les combinaisons
possibles. On obtient une 2
e
liste.







Remarquez que la combinaison des mintermes dindice 0 et 1 donne un nouveau terme
dindice 0. De mme les indices 1 et 2 donnent des termes dindice 1.

4) Recommencer lopration 3 aussi longtemps que possible.







Remarquez que lon obtient deux termes identiques ds la troisime liste.
Il est vident quun seul des termes identiques est gard (A+A=A).

Les termes nayant pas t utilise lors de ces combinaisons sont les termes irrductibles.
Dans notre exemple, le seul terme irrductible est .

A ce stade, la simplification nest pas termine. En effet, les termes irrductibles recouvrent
la fonction, mais il est possible quils la recouvrent plusieurs fois.
Une analyse mthodique (galement propose par Quine Mc. Cluskey) permet de
supprimer les termes irrductibles superflus. Nous nen parlerons pas ici.

Dans notre exemple simple, la solution est:
A+A=1
S=ABC+ABC+ABC+ABC
B
S = B
Indice 0 ABC
Indice 1 ABC
ABC
Indice 2 ABC

AB
BC
BC
AB
Indice 0 ABC
Indice 1 ABC
ABC
Indice 2 ABC
Indice 0 ABC
Indice 1 ABC
ABC
Indice 2 ABC
AB
BC
BC
AB
B
B
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -21- Oct. 2001
La mthode de Karnaugh
Cette mthode applique galement lquation mais cette fois-ci de faon graphique.
Son point de dpart est la table de Karnaugh, trs proche de la table de vrit.

















La table de Karnaugh est une reprsentation de la table de vrit sous forme de tableau.
Afin dviter de surcharger le dessin, un trait remplace ltat 1 des variables dentre.
Chaque case du tableau correspond un tat dentre et contient ltat de sortie de la
fonction.

La table de Karnaugh a une particularit qui la rend trs intressante pour les simplifications:
Du fait de lutilisation du code Gray, les cases adjacentes (qui ont un ct en commun)
correspondent des tats dentre qui ne diffrent que dune variable (sous forme vraie
pour lune des cases et sous forme complmentaire pour lautre case).
Par exemple, sont deux cases adjacentes de la table 3 variables.
Les cases de lextrme droite de la table sont adjacentes aux cases le lextrme gauche et
jouissent galement de cette proprit. Il en va de mme pour les cases du haut et celles du
bas.

La mthode de simplification graphique est alors vidente:
Deux cases adjacentes se simplifient par regroupement.
La variable qui change dtat dune case lautre disparat:










Un tel regroupement de mintermes est appel implicant.
Un implicant regroupe toujours 2
n
mintermes.
A+A=1
Table 3
variables
0 0
1 1
1 1
1 0
A
B
C
Table 2
variables
0 0
1 1

A
B
Table 4
variables
1 0 0 0
1 1 1 1
1 1 1 1
1 0 0 0
B
C
D
A
Table 5
variables
1 0 0 0
1 1 1 1
1 1 1 1
1 0 0 0
0 0 0 1
1 1 1 1
1 1 1 1
0 0 0 1

B
D
E
A
C
ABC et ABC
ABC et ABC donne AB
0 0
0 0
1 0
1 0

A
B
C
S = ABC + ABC = AB
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -22- Oct. 2001
Cette notion de case adjacente se gnralise pour les implicants:
Deux implicants adjacents se regroupent galement et forment un nouvel implicant
comprenant 2 fois plus de mintermes.










Un implicant qui ne peut plus tre inclus dans autre impliquant plus grand est appel
implicant premier.
La solution minimale dune fonction est forme uniquement dimplicants premiers.
Mais tous les implicants premiers ne sont pas forcment ncessaires la solution minimale:










Limplicant premier BC est recouvert totalement par les deux autres implicants premiers.
Il nest donc pas essentiel
Les implicants premiers qui contiennent au moins un minterme qui nest pas inclus dans
un autre impliquant premier sont appels implicants premiers essentiels.
Un impliquant premier essentiel fait toujours partie de la solution minimale.

Finalement la mthode de Karnaugh peut snoncer ainsi:


S = AB + AB = B
0 0
0 0
1 1
1 1

A
B
C
0 1 0 0
0 1 0 0
0 1 1 1
0 1 1 1
A
C
D
B
S = AB + (BC) + AC = AB + AC
Dresser la liste de tous les implicants premiers de la fonction,
comportant chacun 2
n
mintermes adjacents.

Dresser la liste de tous les implicants premiers essentiels.
Ils font partie de la solution minimale.

Couvrir les mintermes restants avec un nombre minimal dimplicants premiers.
0 1 0 0 0 0 0 0
0 1 0 0 0 1 0 0
0 1 1 1 0 0 0 0
0 1 1 1 0 0 0 0
B
D
E
C
A
S = ABC + (ACD) + ABD + ABCDE
= ABC + ABD + ABCDE
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -23- Oct. 2001
La condition indiffrente

Il arrive que la sortie dun circuit logique puisse prendre indiffremment la valeur 0 ou 1 pour
certains tats dentre.
La sortie est alors dite indiffrente .
La fonction logique est dite incompltement dfinie ou incompltement spcifie .
Ltat logique indiffrent est symbolis par la lettre grecque (phi).
En anglais, ltat sappelle dont happen ou dont care .

Ce cas se produit par exemple lorsque certains tats dentre ne se prsentent jamais.

Les mthodes de minimisation dune fonction sappliquent galement aux fonctions
incompltement dfinies :
Tous les tats sont mis 1 et lon cherche la solution minimale pour cette borne
suprieure de la fonction.
Bien entendu, les implicants premiers composs seulement dtats sont limins.

Reprsentations :
Dans la table de vrit et dans la table de Karnaugh, ltat de sortie indiffrent est
reprsent par le symbole .
Dans lquation canonique, on crira par exemple : F(A.B.C)= !(2,4,6) + (3,5,7)
Le diagramme des temps peut tre dessin de la faon suivante :


Simplification par la mthode de Karnaugh:











Les implicants premiers BC et BD ne sont pas essentiels.
Limplicant premier AC bnficie de deux conditions .

Grce aux conditions , des simplifications supplmentaires sont possibles.

Il est par consquent important den tenir compte.

Le systme logique rsultant de la simplification dune fonction incompltement spcifie
aura sa sortie 1 pour toutes les conditions qui auront t prises par des implicants
premiers essentiels. Dans les autres cas, la sortie vaudra 0.
S = AB + (BC) + (BD) +AC = AB + AC
0 1 0 0
0 1 0
0 1 1
0 1 1
A
C
D
B
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -24- Oct. 2001
Les courses

Un systme logique combinatoire peut ne plus rpondre son quation boolenne au cours
de la transition dune variable.

Les oprateurs boolens (les portes) mettent en effet un certain temps pour ragir.
Ce retard est appel temps de propagation .

Ce disfonctionnement dun systme logique est appel course ou ala .
Vous entendrez galement le terme plus vulgaire de glitch .
La course se traduit en anglais par hazard.

Le cas le plus simple de course est illustr par le schma suivant :
















Une course peut se produire lorsque deux tats se suivent avec le changement dune seule
variable dentre. Ces 2 tats dentre doivent encore produire le mme tat de sortie.

En terme de table de Karnaugh, une course peut se produire lorsquon passe dune case
une case adjacente.
Fort heureusement, une course ne peut pas se produire lorsquon reste lintrieur dun
implicant premier.










La solution aux courses passe par une analyse dtaille de la table de Karnaugh
et par lintroduction dimplicants premiers non essentiels qui seront nomms
termes de recouvrement .
Course
A
B
A
A/
B
Limplicant premier non essentiel BC
permet de supprimer la course qui
se produit lorsque C=1 et A transite.
0 1 0 0
0 1 0
0 1 1 1
0 1 1 1
A
C
D
B
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -25- Oct. 2001
Implantation

Limplantation matrielle dun circuit logique est une opration ncessaire aprs la
simplification de la fonction. Elle dpend du matriel (des portes) disposition.
Certaines portes ne sont pas ralisables dans certaines technologies. Nous le verrons
au chapitre suivant.

Pour rappel, lopration de simplification dune fonction logique combinatoire a pour but
de minimiser le nombre de termes de lquation, ainsi que le nombre de variables dentre
apparaissant dans ces termes.

Une opration de mise en vidence ralise aprs la minimisation peut encore simplifier
avantageusement lquation.

Finalement, limplantation tient compte du matriel disposition et permet de dessiner
le schma logique qui sera utilis pour la ralisation du circuit logique.

Exemples dimplantation :





























Ces exemples montrent quel point les thormes de De Morgan sont importants.
De mme, la proprit didempotence est largement utilise lors de cette implantation.
F=AB+BC

F=B(A+C)
0 0 1 0
0 0 0
1 0
0 1 1 0
A
C
D
B
A
C

B
F
Implantation
en portes NOR
A
C

B
F
A
C

B
F
Implantation
en portes NAND
A


C

B
F
A
C

B
F
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -26- Oct. 2001
4) Implmentation

Technologie CMOS

La ralisation matrielle des portes logiques est accomplie laide dune technologie.
Cette technologie doit imprativement comporter des lments actifs, cest--dire des
lments amplificateurs de puissance: les transistors.
Dautres lments actifs comme les tubes et les relais sont aujourdhui pratiquement
abandonns.

Il existe deux classes de transistors:
- les transistors bipolaires
- les transistors MOS (Metal Oxide Semiconductor)

Chaque classe comporte deux types de transistors:
- les transistors bipolaires peuvent tre de type NPN ou PNP
- les transistors MOS peuvent tre de type N ou P

Ces deux types sont complmentaires, cest--dire quils sont commands laide de
grandeurs lectriques de signe contraire:
- les transistors bipolaires NPN sont commands par un courant entrant (positif)
- les transistors bipolaires PNP sont commands par un courant sortant (ngatif)
- les transistors MOS de type N sont commands par une tension positive
- les transistors MOS de type P sont commands par une tension ngative

Les technologies qui permettent de raliser matriellement les portes logiques sont soit des
technologies bipolaires, soit des technologies MOS:
Les logidules du laboratoire sont pour la plupart raliss en technologie transistors
bipolaires NPN.
Les technologies utilises pour la ralisation de circuits logiques complexes sont pour la
plupart des technologies qui comportent la fois des transistors MOS de type N et P.
Ces technologies sont appeles CMOS (Complementary MOS)











Sans vouloir entrer dans le dtail du fonctionnement de ces transistors (objet du cours
dlectronique), il est impratif den connatre le principe:
Un transistor est un robinet lectrons.
Lorsquon ouvre le robinet ( laide dun courant pour les bipolaires et dune tension pour
les MOS), ils laissent passer le courant (du haut en bas, dans le sens de la flche).
En ce qui concerne leur fonctionnement dans le cadre des portes logiques, ils sont soit
bloqus, soit conducteurs.
Bipolaire NPN
command par
un courant positif
Bipolaire PNP
command par
un courant ngatif
MOS type N
command par
une tension positive
MOS type P
command par
une tension ngative
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -27- Oct. 2001

Transistor MOS

Puisque les transistors MOS sont les robinets les plus couramment utiliss aujourdhui,
nous allons les tudier dun peu plus prs.










Lorsque la tension VGS est nulle, le courant ID est galement nul.
Lorsque la tension VGS est positive, un courant ID peut circuler.










Pour un MOS de type P, on retrouve des dfinitions similaires :










Lorsque la tension VGS est nulle, le courant ID est galement nul.
Lorsque la tension VGS est ngative (-VGS positif), un courant - ID peut circuler du Drain
la Source (ID circule de la Source au Drain).










Dfinitions de la tension et du courant pour un MOS de type N
D
S
G
VGS
ID
D: Drain
G: Grille
S: Source

VGS: Tension de commande
ID: Courant du Drain la Source
Correspondant hydraulique dun MOS de type N
Une tension de commande = 0
bloque le passage du courant

Une tension de commande > 0
laisse circuler le courant
ID
D
S G
VGS>0
VGS=0
Dfinitions de la tension et du courant pour un MOS de type P
S
D
G
- VGS
- ID
D: Drain
G: Grille
S: Source

VGS: Tension de commande
ID: Courant du Drain la Source
Correspondant hydraulique dun MOS de type P
Une tension de commande = 0
bloque le passage du courant

Une tension de commande < 0
laisse circuler le courant
-ID
S
D
G
VGS<0
VGS=0
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -28- Oct. 2001

Linterrupteur

Un modle lectrique simple des transistors MOS est linterrupteur.
















Remarquez que la tension - VGS et le courant - ID sont toujours positifs ou nuls.
Le modle simple de linterrupteur ne fait pas tat de la rsistance de passage qui est
invitable dans un transistor MOS rel.
Il ne permet pas non plus de reprsenter le courant limit que peut dlivrer le transistor.

Les portes CMOS

La porte la plus simple est linverseur.
Elle est ralise laide dun transistor MOS de type N et dun transistor MOS de type P.






















Modle lectrique simple des transistors MOS
S
D
G
- VGS
- ID
MOS de type N
D
S
G
VGS
ID
D
S
VGS=0 ID=0
D
S
VGS>0 ID>0
MOS de type P
S
D
- VGS=0 - ID=0
S
D
- VGS>0 - ID>0
Linverseur en technologie CMOS
MOS N
MOS P
5V
0V
In Out
5V
0V
In=0
(0V)
Out=1
(5V)
5V
0V
In=1
(5V)
Out=0
(0V)
In=0
Out=1
In=1
Out=0
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -29- Oct. 2001
Lorsque lentre In de linverseur est ltat logique 0 (0V), on a:
- VGS = 0V pour le MOS N. Il est bloqu.
- VGS = -5V (-VGS = 5V) pour le MOS P. Il est conducteur.
- la sortie Out de linverseur se trouve 5V qui correspond ltat logique 1.

Lorsque lentre In de linverseur est ltat logique 1 (5V), on a:
- VGS = 5V pour le MOS N. Il est conducteur.
- VGS = 0V pour le MOS P. Il est bloqu.
- la sortie Out de linverseur se trouve 0V qui correspond ltat logique 0.

Cette analyse de linverseur CMOS permet dobtenir un modle digital encore plus
simple des transistors de type N et P:
















Un MOS de type P est conducteur sil est command par un tat logique 0.
Un MOS de type N est conducteur sil est command par un tat logique 1.

La porte NOR deux entres est ralise laide de deux transistors MOS de type N et
de deux transistors MOS de type P.
















La sortie Out est tire soit 0, soit 1.
Il ny a jamais de conflit (conduction simultane dun MOS N et des MOS P).
Modle digital des transistors MOS
S
D
G
MOS de type N
D
S
G
0 1
MOS de type P
1 0
La porte NOR en technologie CMOS
MOS N
MOS P
A
Out
A
B
B
Lorsque lune ou lautre des entres A ou B
est 1, le MOS N correspondant tire la
sortie Out 0.

Si les deux entres A et B sont 0, les deux
MOS P tirent la sortie Out 1.
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -30- Oct. 2001
La porte NAND trois entres est ralise laide de trois transistors MOS de type N et
de trois transistors MOS de type P.



















La sortie Out est tire soit 0, soit 1.
Il ny a jamais de conflit (conduction simultane dun MOS N et des MOS P).

La technologie CMOS permet de raliser des portes combines:




















Remarques:
La sortie de la porte ET nexiste pas. Elle est fictive et par consquent inutilisable.
Dans une porte CMOS, la sortie est tire 1 par des transistors de type P.
Dans une porte CMOS, la sortie est tire 0 par des transistors de type N.
Dans une porte CMOS, le nombre de transistors de chaque type est gal au nombre
de variables dentre.
Une porte CMOS est toujours inverseuse. On ne peut raliser de porte ET ni de porte OU.
La porte NAND en technologie CMOS
MOS N
MOS P A
Out
A
B
B
Lorsque les trois entres A, B et C
sont 1, les trois MOS N tirent la
sortie Out 0.

Si lune des trois entres A, B ou C
est 0, le MOS P correspondant
tire la sortie Out 1.
C
C
La porte combine ET-NOR en technologie CMOS
Lorsque (A et B) ou C sont 1,
les MOS N tirent la sortie Out 0.

Lorsque (A ou B) et C sont 0,
les MOS P tirent la sortie Out 1.
MOS N
MOS P
A
Out
A
B
B
C
C
A
B
C
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -31- Oct. 2001

Ltat haute impdance

La technologie CMOS permet de raliser simplement des portes ayant un tat de sortie
haute impdance (portes 3 tats ou portes tristates).
Lorsquune porte est haute impdance, elle ne transmet plus de signal de sortie, et peut
tre considre comme inexistante. Cet tat de sortie est symbolis par la lettre Z.
Une variable supplmentaire dautorisation (enable) ou de dconnexion (disable) met la
porte dans cet tat haute impdance.
Ce type de portes est utilis couramment dans les systmes comportant des bus pour
transmettre des informations (0 ou 1) de diverses provenances.
Les microcontrleurs en sont le meilleur exemple.


















Il faut remarquer que lentre In est inverse 3 fois jusqu la sortie Out.
Touts les circuits logiques CMOS peuvent avoir une sortie tristate.

Caractristiques statiques

Nous avons dj remarqu que dans tous les tats dentre dune porte CMOS, aucun
courant ne peut circuler de lalimentation (5V) la masse (0V).
La consommation de courant statique des circuits logiques CMOS est nulle.

Quen est-il pendant la transition (de 0 1 ou de 1 0) des variables dentre ?











Linverseur tristate en technologie CMOS
Ena

In
5V
0V
In Out
Ena
Lorsque lentre Ena est 1,
les deux transistors MOS
reoivent le signal In, et la
sortie Out est linverse de In.

Lorsque lentre Ena est 0,
le MOS P est command par
un 1: il est bloqu.
Le MOS N est command par
un 0: il est galement bloqu.
La sortie Out est haute
impdance.
Caractristique statique de linverseur CMOS
In
Out
5V
I
In Out
In
I
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -32- Oct. 2001
Pendant la transition dune variable dentre de 0 1 et de 1 0, un courant statique
circule dans les circuits CMOS.
Ce courant circule aussi longtemps que la variable dentre est dans la zone de tension
intermdiaire, do son nom de courant statique.
Si la transition de la variable dentre est trs rapide, ce courant ne circulera que peu de
temps, et la consommation dnergie sera ngligeable.

Caractristiques dynamiques

La sortie dune porte est gnralement relie lentre dautres portes.
Aucun courant nest ncessaire pour commander lentre dune porte CMOS.
Les entres sont parfaitement isoles (rsistance infinie) et commandes par une tension.

Cependant, une entre de porte CMOS se comporte comme une capacit.
Une capacit est un rservoir dlectrons quil faudra remplir lors dune transition de 0 1
et qui sera vid lors dune transition de 1 0.

Le courant limit que peut dlivrer un transistor MOS donnera lieu un temps de charge et
un temps de dcharge de la capacit de sortie de la porte (temps de monte tr et de
descente tf de la variable de sortie de la porte).
La capacit donne galement lieu un retard du signal de sortie sur la variable dentre
(temps de propagation pour un 0 la sortie tpd0 et pour un 1 la sortie tpd1).














Consommation de courant

Le fait de charger priodiquement la capacit donne lieu un courant proportionnel la
frquence laquelle la capacit est charge (frquence de la variable de sortie),
proportionnel la valeur de la capacit de charge (surface du rservoir), et
proportionnel la tension laquelle la capacit est charge (hauteur du rservoir) :

I = f C U
Cette loi de la consommation de courant dynamique dun circuit CMOS explique pourquoi
les circuits rapides consomment normment de courant, et pourquoi il faut les refroidir.
Caractristique dynamique de linverseur CMOS
5V
In Out
C
t
Out
t
In
tr tf
tpd0
tpd1
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -33- Oct. 2001
5) Systmes combinatoires complexes

Circuits programmables

Les technologies MOS et CMOS ont fait dnormes progrs ces dernires annes,
et il nest pas rare de trouver des circuits intgrs comportant plus de 100'000 portes
voire plusieurs millions de portes sur la mme puce de silicium.

Il est mme possible de trouver des circuits logiques combinatoires universels qui pourront
tre programms par lutilisateur, soit par un masque, soit lectriquement.
Certains circuits programmables peuvent mme tre programms et reprogramms loisir.

Liste non exhaustive de circuits programmables:

Type Programmation Effacement Signification
ROM Masque - Read Only Memory (mmoire morte)
PROM Electrique - Programmable ROM
EPROM Electrique - / UV Electrically Programmable ROM
E
2
PROM Electrique Electrique Electrically Erasable PROM
FLASH Electrique Electrique E
2
PROM par page
PLD Electrique - Programmable Logic Device
EPLD Electrique Electrique Electrically PLD
GAL Electrique Electrique / UV Generic Array Logic
PAL Electrique Electrique / UV Programmable Array Logic
PLA Electrique Electrique / UV Programmable Logic Array
OTP Electrique - One Time Programmable

Les circuits logiques programmables sont bass sur une architecture matricielle.
La premire matrice permet de crer les mintermes, la seconde ralise les fonctions.







Matrice AND Matrice OR (Mintermes)
A B S1 S2 S3 S4
Architecture des PLDs
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -34- Oct. 2001
La programmation seffectue par des liaisons symbolises par des croix sur le dessin.
On trouve les trois types de programmations suivants (entre autres):
- par masque
- par antifusible (dconnexion)
- par transistors du type FAMOS (Floating gate Avalanche MOS)
Cette programmation est souvent si complexe quun logiciel ainsi quune machine
spcialise (programmeur) sont ncessaires pour brler les antifusibles.

Leffacement nest possible que pour les circuits programms par FAMOS.
Cet effacement seffectue gnralement globalement:
- par des rayons ultra-violets au travers dune fentre amnage spcialement dans le botier
- lectriquement laide dune machine spcialise

De forts courants sont ncessaires pour brler les antifusibles.
Les technologues ont cependant russi rduire les courants ncessaires, et lon trouve
aujourdhui des circuits programmables qui se contentent de courants raisonnables.
De hautes tensions sont ncessaires pour programmer et effacer les FAMOS.
Un multiplicateur de tension intgr, transparent lutilisateur, permet aujourdhui de
programmer les FAMOS avec une tension extrieure standard.

On peut programmer la matrice AND, la matrice OR ou les deux matrices suivant le type
de circuit programmable:
PLA: les deux matrices (comme ci-dessus)
PAL: matrice AND
ROM: matrice OR























Les mintermes ncessaires aux fonctions de sortie sont programms dans la matrice AND.
Matrice AND programmable Matrice OR fixe
A B S1 S2
Exemple darchitecture de PAL
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -35- Oct. 2001

Mmoires ROM

La technologie des circuits programmables du type ROM (mmoires mortes) a fait de tels
progrs que leur reprsentation a galement t appele voluer.
La matrice AND qui ralise tous les mintermes est reprsente par un dcodeur de ligne.
Plusieurs matrices OR programmes par masque (non reprogrammables) permettent de
choisir diffrentes fonctions de sortie laide dun slecteur ou multiplexeur command par
des variables dentre supplmentaires.























On obtient ainsi un circuit combinatoire programmable par masque
- (m+n) entres et
- x fonctions de sortie

Ce type de circuit nest pas seulement utilis pour raliser des fonctions combinatoires,
mais galement en tant que mmoire non volatile accs rapide (100ns) dans le
domaine des ordinateurs (mmoire de programmes), ce qui explique leur essor.

Les technologies daujourdhui permettent de raliser des mmoires matricielles
de plus de 64 Mbits (x
*
2
m+n
) sur une seule puce de silicium.

Les entreprises de semiconducteurs ont optimis des technologies spcialement
pour ces mmoires ROM, et des usines entires sont rserves leur production.
Mmoire
matricielle de
x * 2
m+n
bits
Multiplexeur
D

c
o
d
e
u
r

Architecture des ROM
m entres
(lignes)
n entres
(colonnes)
x sorties
(bits)
2
m
lignes
x * 2
n
colonnes
x fonctions de m+n variables
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -36- Oct. 2001
6) Systmes squentiels simples

Reprsentation

Comme nous lavons vu, un systme logique combinatoire comporte des variables logiques
dentre et une ou plusieurs fonctions de sortie.
Ils sont caractriss par le fait que pour chaque valeur des variables dentre (chaque tat
dentre), il y a une et une seule valeur des fonctions de sortie possible (un seul tat de
sortie possible).
La correspondance entre les tats dentre et les tats de sortie peut tre reprsente par
une table de vrit, une quation boolenne ou une table de Karnaugh.

















Les systmes logiques squentiels comportent galement des variables logiques dentre
et une ou plusieurs fonctions de sortie.
Ils sont caractriss par le fait que pour chaque valeur des variables dentre (chaque tat
dentre), il peut y avoir plusieurs valeurs des fonctions de sortie possibles (plusieurs tats
de sortie possible).
La valeur prsente des fonctions de sortie ne dpend pas uniquement de ltat
prsent des entres, mais galement de ltat prcdent du systme.
La squence, cest--dire lordre dans lequel les vnements ont eu lieu dterminent
ltat actuel du systme et des fonctions de sortie. Cest un systme squentiel.
Il ny a plus correspondance directe entre les tats dentre et les tats de sortie.
Les tables de vrit, les quations boolennes et les tables de Karnaugh ne permettent
plus de reprsenter la fonction logique dun systme squentiel.
La notion de mmoire de ltat prcdent du systme doit tre introduite.

Il est par contre erron de dire quun systme squentiel fait intervenir la notion de temps.
Le temps (mesur en secondes) nest pas une variable qui intervient dans les systmes
logiques. Seule la squence intervient.
La vitesse de raction ou retard de propagation que nous avons vu dans le chapitre des
courses existe bien videmment dans tout systme physique. Mais ce nest pas cette
notion qui est introduite ici.
SYSTEME LOGIQUE COMBINATOIRE


Systme
combinatoire
Etat
dentre
Etat
de sortie
Fonction
logique
Fonction logique

Table de vrit
Equation boolenne
Table de Karnaugh
POUR CHAQUE ETAT
DENTREE, IL Y A UN
ET UN SEUL ETAT DE
SORTIE
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -37- Oct. 2001
De faon gnrale, la notion de mmoire dans un systme logique se traduit par une boucle
dans le schma logique.





















Nous verrons plusieurs modes de reprsentation des systmes squentiels.
Un circuit boucl simple nous servira dexemple pour les diffrents modes de reprsentation:










Lorsque les entres R et S sont 0, la boucle des 2 portes NOR mmorise la variable Q.
On a 2 tats de sortie possibles pour S=R=0.







On voit quil faut faire appel de nouveaux modes de reprsentation pour les systmes
squentiels.
SYSTEME LOGIQUE SEQUENTIEL
POUR CHAQUE ETAT
DENTREE, IL PEUT Y
AVOIR PLUSIEURS
ETATS DE SORTIE
Etat
dentre
Etat
de sortie


Systme
combinatoire
Etat
interne
ELEMENT DE MEMOIRE (SR = Set Reset)
Deux tats sont possibles
lorsque S=R=0:
Q=0
Q=1
Q
R


S
S R Q
0 0 0 ou 1
0 1 0
1 0 1
1 1 0
Ltat de sortie lorsque S=R=0 dpend de
la squence des variables dentre.
Il ne suffit pas de connatre ltat dentre
pour pouvoir connatre ltat de sortie.
La table de vrit nest pas adapte pour
reprsenter la fonction de la mmoire SR.
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -38- Oct. 2001
Reprsentation par une pseudo table de vrit
Ce mode de reprsentation est couramment utilis, malgr le fait quil soit incomplet
et peu adapt la synthse des systmes squentiels.

Pour notre lment de mmoire SR, on trouvera:








Reprsentation par graphe des tats ou graphe des transitions
Ce mode de reprsentation a lavantage dtre visuel.
Il est galement bien adapt une synthse automatique par ordinateur.
Pour des circuits complexes, on peut galement lutiliser de faon hirarchique.

Pour notre lment de mmoire SR, on aura:

















Ce mode de reprsentation permet la synthse automatique des systmes squentiels
complexes que lon nomme aussi Machines dtats ou State machines .

On le trouvera parfois dans les feuilles de spcification de circuits commerciaux.
Il comporte un certain nombre de variantes que nous nexaminerons pas ici.
S R Q
+

0 0 Q
0 1 0
1 0 1
1 1 0
Ce mode de reprsentation est utilis dans les
feuilles de spcification (datasheet) des circuits
squentiels commerciaux.
Il est inadapt aux circuits complexes.
Au lieu de Q
+
=Q, on trouve parfois no change.
Les tats stables du systme sont
reprsents par des cercles.

Pour chaque tat stable, on donne
ltat des entres et des sorties.

Le changement dune variable
dentre reprsent par une flche
donne lieu un changement dtat
stable du systme.

Ce mode de reprsentation dcrit
compltement le comportement du
systme logique squentiel.
SR=10
Q=1
SR=01
Q=0
SR=00
Q=0
SR=11
Q=0
SR=00
Q=1
R S
R S
S R
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -39- Oct. 2001
Reprsentation par table dtats
Le dernier mode de reprsentation que nous allons examiner et que nous utiliserons
pour la synthse de circuits squentiels se nomme la Table dtats .

Il est trs proche du graphe dtats, mais prsente lavantage dterminant dtre galement
trs proche de la table de Karnaugh.
De ce fait, il permet une analyse systmatique et complte dun systme.
Il permet de plus la synthse manuelle de circuits squentiels simples.

Llment de mmoire SR sera reprsent ainsi:








Les colonnes de la table sont assignes par les variables dentre, comme pour une table
de Karnaugh.
Ltat des sorties est plac droite de la table.
Les cases de la table correspondent aux tats du systme. Il faut les lire comme des
adresses dtats futurs (qui correspondent aux flches du graphe des tats).
Ce sont les adresses de la ligne future dans la squence.
Si ladresse future est gale ladresse prsente, le systme se trouve dans un tat stable.
Les tats stables sont encercls de faon mieux pouvoir les reprer.

Si le systme se trouve dans ltat suprieur gauche (S=0, R=0, ligne 0), on lit que ltat
futur est ltat 0, ce qui signifie que lon se trouve dans un tat stable avec Q=0.
Plus rien ne se produira jusqu lun des deux vnements suivants:
- lentre R passe 1
on se retrouve alors dans ltat stable (S=0, R=1, ligne 0) avec Q=0
- lentre S passe 1
on transitera alors par ltat instable 1 (S=1, R=0, ligne 0)
pour aboutir ltat stable 1 (S=1, R=0, ligne 1) avec Q=1
Avec un peu dhabitude, on arrive trs facilement suivre lvolution dun systme
squentiel simple sur une table dtats.







Un systme est squentiel lorsque sa table dtats prsente au moins deux
tats stables dans une colonne.
Pour un tat des entres, il y a au moins deux tats possibles du systme.
Un systme combinatoire a une table dtats de 1 ligne.
La table dtats comporte un nombre de colonnes gal 2
N
,
o N est le nombre de variables dentre du systme
squentiel.
Le nombre de lignes est gal 2
M
, o M est le nombre de
variables boucles du systme.
Les lignes de la table sont numrotes de 0 2
M
-1.
0
1
1
0
0 0
1
R
S
Q
0
1
0
1 0
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -40- Oct. 2001
Synthse synchrone























La synthse (ralisation partir dun cahier des charges) dun systme squentiel
synchrone peut se ramener la synthse dun systme combinatoire grce lutilisation
dune astuce.

Lastuce utilise pour contourner la difficult des variables boucles consiste en une
simple ouverture des boucles par insertion dun circuit disolation appel flip-flop.

Les flip-flops servent mmoriser ltat prsent. Ils ont une entre D et une sortie Q.
Ils sont commands par une variable supplmentaire appele Horloge (H) ou Clock
(CK) ou Clock pulse (CP ou C).
Cest lhorloge qui permet au systme squentiel dvoluer.
A chaque coup dhorloge (ou impulsion dhorloge ou instant dhorloge), ltat futur devient
prsent et un nouvel tat futur est calcul par le systme combinatoire.
En dehors des instants dhorloge, le flip-flop ne transmet pas ltat prsent vers ltat futur.
Lhorloge nest gnralement pas considre comme une variable dentre au vu de sa
nature spciale. Elle est gnre par un oscillateur frquence leve et constante.
On dit que le systme est synchronis par lhorloge.

On se retrouve ainsi avec un systme combinatoire dont les entres sont:
- les variables dentre du systme (tat dentre)
- les variables de sortie des flip-flops (Qi)
Lensemble de ces entres est appel ltat total du systme

Les sorties du systme combinatoire seront:
- les variables de sortie du systme (tat de sortie)
- les variables dentre des flip-flops (Di)
SYSTEME SEQUENTIEL SYNCHRONE
Etat
dentre
Etat
de sortie


Systme
combinatoire
Etat
futur
FF
FF
Etat
prsent
Horloge
Q2
Q1 D1
D2
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -41- Oct. 2001
Une distinction reste encore faire:
Si les sorties du systme synchrone ne dpendent que de ltat des flip-flops, on aura faire
une machine dite de Moore et les sorties ne changeront quaux instants dhorloge.
Si au contraire les sorties du systme synchrone dpendent de ltat des flip-flops et de
ltat des entres, on aura faire une machine de Mealy. Les sorties pourront changer
avec les entres de faon asynchrone.

La mthode de synthse consiste simplement crire la table de vrit du systme
combinatoire, aprs avoir assign les diffrents tats du systme.
La rsolution du problme est alors rduite la simplification du systme combinatoire.

Un exemple permettra de mieux comprendre la mthode:

Soit raliser une machine 2 entres et 2 sorties ayant le comportement suivant:
Les sorties doivent tre gales aux entres dans les tats stables.
Les sorties doivent toujours transiter dans lordre du code de Gray.








La donne laisse clairement entendre que les sorties ne transitent quaux instants dhorloge.
Il faut donc raliser une machine de Moore.

Pour un tat dentre, il peut y avoir 4 tats de sortie distincts, ce qui permet de dterminer
le nombre de flip-flops ncessaires: log
2
(4)=2


Exemple
Etats stables:
X=A
Y=B
X
Y
A
B
Etats transitoires:
X Y
0 0
0 1
1 1
1 0
Schma-bloc de lexemple
Etat de
sortie


Systme
combinatoire
Etat
futur
FF
FF
H
X
Y
X
+

Y
+

A
B
Etat
dentre
ABXY X+ Y+
0000 0 0
0001 1 1
0010 0 0
0011 1 0
0100 0 1
0101 0 1
0110 0 0
0111 1 0
1000 0 1
1001 1 1
1010 1 0
1011 1 0
1100 0 1
1101 1 1
1110 0 0
1111 1 1
Table de vrit
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -42- Oct. 2001
Ici, lassignement ou codage des 4 tats possible des flip-flops a t choisi de telle sorte
que les flip-flops donnent directement les variables de sortie (un tel assignement nest pas
toujours possible).
On peut soit remplir la table de vrit soit faire usage de la table dtats plus visuelle qui
permet dobtenir simplement les tables de Karnaugh des variables de sortie du systme
squentiel.















Le rsultat est le mme et la simplification des fonctions combinatoires X
+
et Y
+
donne :






Un deuxime exemple plus simple dun circuit synchrone que lon trouve frquemment
donne lieu un rsultat intressant:

Soit raliser une machine 2 entres D et H et 3 sorties Q1, Q2 et Q3.
A chaque instant dhorloge H, les sorties doivent prendre les valeurs suivantes:
Q1 prend la valeur de D
Q2 prend la valeur de Q1
Q3 prend la valeur de Q2
Cette machine est appele Registre dcalage ( D -> Q1 -> Q2 -> Q3 )

Un registre dcalage (shift register) a la proprit de mmoriser les valeurs de lentre D
chaque instant de lhorloge et de les restituer sur la dernire sortie avec un retard de
n priodes de lhorloge (n=nombre de flip-flops du registre).

Ici galement, la donne laisse clairement entendre que les sorties ne transitent quaux
instants dhorloge. Il sagit encore dune machine de Moore.
A
B
State table
0
1
1
2
1 1
2 2
XY
00
01
0
1
3
0
3
0
2 3
0 3
11
10
2
3
0
0
0
1
0 0
1 1
1
0
1
0
1 1
0 1
A
B
Karnaugh table for X
+

X
Y
0
1
1
1
1 1
1 1
0
0
0
0
1 0
0 0
A
B
Karnaugh table for Y
+

X
Y
X+=Y(A+B+X)+ABX
Y+=X(A+B+Y)+ABY
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -43- Oct. 2001




























Les quations logiques du systme combinatoire sont tellement simples quelles peuvent
tre trouves directement partir de la table de vrit, sans passer par la mthode de
simplification de la table de Karnaugh.

On obtient finalement un schma du registre dcalage trs simple:









Ce schma se gnralise facilement pour obtenir des registres dcalage de longueur
quelconque.
Schma-bloc du registre dcalage
Q3 Q2 Q1 D Q1+ Q2+ Q3+
0 0 0 0 0 0 0
0 0 0 1 1 0 0
0 0 1 0 0 1 0
0 0 1 1 1 1 0
0 1 0 0 0 0 1
0 1 0 1 1 0 1
0 1 1 0 0 1 1
0 1 1 1 1 1 1
1 0 0 0 0 0 0
1 0 0 1 1 0 0
1 0 1 0 0 1 0
1 0 1 1 1 1 0
1 1 0 0 0 0 1
1 1 0 1 1 0 1
1 1 1 0 0 1 1
1 1 1 1 1 1 1
Table de vrit


Systme
combinatoire
FF
FF
Q2
Q3
Q2
+

Q3
+

D
Q1
FF
H
Q1
+

Q1+=D
Q2+=Q1
Q3+=Q2
Equations
FF FF
D
Q1
FF
H
Q2 Q3
Schma final du registre dcalage
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -44- Oct. 2001
Un dernier exemple de circuit synchrone particulier est celui dun compteur (counter):

Soit raliser une machine 1 seule entre H qui a la proprit de compter le nombre
dinstants dhorloge jusqu un maximum de 5 dans le code binaire, puis de repasser
ltat zro.
Cest ce que lon nomme un compteur synchrone par 6 (il compte de 0 5).

Ici encore, il sagit dune machine de Moore.
La quantit de flip-flops ou de boucles doit tre suffisante pour permettre de mmoriser
les nombres de 0 5. Il faut donc 3 flip-flops.
Lassignement naturel est celui du code binaire.

























La mthode de simplification de Karnaugh simpose ici:


Schma-bloc du compteur synchrone par 6
Q3Q2Q1 Q3+ Q2+ Q1+
0 0 0 0 0 1
0 0 1 0 1 0
0 1 0 0 1 1
0 1 1 1 0 0
1 0 0 1 0 1
1 0 1 0 0 0
1 1 0
1 1 1
Table de vrit

Systme
combinatoire
FF
FF
Q2
Q3
Q2
+

Q3
+

Q1
FF
H
Q1
+

Q3+
0 1
0 0
1
0

Q3
Q2
Q1
Q2+
0 0
1 0
0
1

Q3
Q2
Q1
Q1+
1 1
0 0
0
1

Q3
Q2
Q1
Simplification du compteur par 6
Q1+ = Q1
Q2+ = Q1Q2Q3 + Q1Q2
Q3+ = Q1Q2+Q1Q3
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -45- Oct. 2001
On remarquera que pour les circuits synchrones, il nest pas ncessaire dviter les courses
avec les termes de recouvrement, car les fonctions Q1+, Q2+ et Q3+ ne sont prises en
compte quaux instants dhorloge, soit une priode dhorloge aprs les changements des
entres Q1, Q2 et Q3 (ces fonctions ont suffisamment de temps pour se stabiliser).

Un tel compteur prsente des conditions , puisque les tats 6 et 7 ne se prsentent jamais.
Que se passerait-il si ce compteur, pour une raison quelconque, se trouvait tout de mme
dans ltat 6 ou dans ltat 7 ?
Il faut viter que ces tats ne soient boucls sur eux-mmes ou boucls entre eux, ce qui
donnerait lieu ce que lon nomme des tats puits .
Il faut sassurer que depuis ces tats, on retombe dans la boucle de comptage dsire.














Quelques autres machines squentielles synchrones mritent dtre mentionnes:

Registre dcalage chargement parallle / lecture srie
Registre dcalage chargement srie / lecture parallle
Registre dcalage chargement parallle / lecture parallle
Registre dcalage droite-gauche
Registre ou pile (stack) FIFO (first in first out)
Registre ou pile (stack) LIFO (last in first out)
Compteur BCD
Compteur up-down
Discriminateur de sens de rotation
0
1
2
3
5
4
7
6
Vrification
Vrification pour ltat 6:
Q3,Q2,Q1=110 mne 111, soit ltat 7.

Vrification pour ltat 7:
Q3,Q2,Q1=111 mne 100, soit ltat 4.

La vrification nous montre que cette
synthse ne comporte pas dtat puits.
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -46- Oct. 2001
Synthse asynchrone





















Un systme logique squentiel synchrone comporte des boucles ouvertes laide de
flip-flops commands par une horloge commune.
La synthse du systme combinatoire associ prsente peu de difficults:
- pour chaque tat prsent, on a un tat futur qui sera mmoris dans les flip-flops au
prochain instant dhorloge
- le codage ou assignement des tats peut tre fait sans prendre de prcaution
- le systme combinatoire peut prsenter des courses

Un systme logique squentiel asynchrone ne prsente pas ces avantages.
Il comporte des boucles ouvertes uniquement par la pense.
La synthse du systme combinatoire associ prsente certaines difficults:
- pour chaque tat prsent, on a un tat futur qui sera mmoris par la boucle seule
- le codage ou assignement des tats doit tre fait de telle sorte quil ny ait si
possible quune seule variable boucle qui transite dun tat lautre
- si plusieurs variables transitent dun tat lautre, il faut sassurer que ltat final
sera le mme, quel que soit lordre de transition de ces variables
- la synthse et la simplification du systme combinatoire doivent tre faites sans
course

Si louverture des boucles est relle (grce aux flip-flops) dans un systme squentiel
synchrone, elle nest faite que par la pense dans un systme squentiel asynchrone.

Si pour un systme squentiel synchrone, on reste dans chaque tat instable durant toute
une priode de lhorloge, dans un systme squentiel asynchrone on ny reste que durant
le temps de raction du systme combinatoire.

Le systme squentiel asynchrone prsente lavantage dtre plus rapide que son petit
frre synchrone, puisquil nattend pas de coup dhorloge pour voluer.
Sa consommation de courant est plus faible (I=fCU), puisque au repos, dans un tat
stable, il na pas dhorloge qui vient rgulirement (et btement) lui demander de calculer ltat
futur.
SYSTEME SEQUENTIEL ASYNCHRONE
Etat
dentre
Etat
de sortie


Systme
combinatoire
Etat
futur
Etat
prsent
X
Y Y+
X+
Boucles ouvertes
par la pense
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -47- Oct. 2001
La mthode de synthse dun systme asynchrone comporte les tapes suivantes:
Schma-bloc
Etablissement de la table dtats selon le cahier des charges
(le nombre de lignes de la table dtats peut tre quelconque)
Assignement et arrangement de la table dtats de telle sorte quune seule variable
boucle ne transite dun tat un autre et que le nombre de lignes soit une puissance de 2
Etablissement des tables de Karnaugh pour chaque variable dassignement
Simplification sans course des fonctions boucles (variables dassignement)
(on obtient les quations du systme squentiel)
Vrification des tats puits, obtention de la table dtats finale
Etablissement des tables de Karnaugh pour la ou les fonctions de sortie
Simplification avec ou sans course des fonctions de sortie
(on obtient les quations des fonctions de sortie)
Dessin du schma logique
Adaptation du schma logique au matriel disposition
Vrification du rsultat obtenu par simulation hardware ou software

Trois exemples vont illustrer cette mthode.

Exemple 1
Soit raliser une machine 2 entres (A, B) et 1 sortie (S) dont le cahier des charges
est donn sous forme de diagramme des temps:





Remarquons au passage que ce cahier des charges est insuffisant. Il peut donner lieu
plusieurs interprtations possibles.


Schma-bloc:



Table dtats:
Cet exemple va nous permettre de montrer une faon dtablir la table dtats.

- numrotation des tats:






A
B
S
A
B
S
0 1 0 1 0 2 3 2 3 2 3 2 4 1 0 1 0
A
B
S
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -48- Oct. 2001
- table dtats avec 1 seul tat stable par ligne:














- rduction de la table
Cette table peut tre rduite (diminution du nombre de lignes) par fusion de lignes dites
pseudo-quivalentes .
La rgle de fusion est : deux lignes peuvent fusionner si toutes leurs adresses
sont les mmes (une adresse indiffrente peut prendre
nimporte quelle valeur)
On remarque que ltat des sorties nest pas pris en compte dans la recherche des tats
pseudo-quivalents.
Ici encore, la systmatique simpose.
On dresse la liste complte de toutes les fusions possibles
0 et 1
0 et 3
1 et 3 Graphiquement: Choix : 0 et 1 -> 0
2 et 3 2, 3 et 4 -> 1
2 et 4
3 et 4
Table fusionne:








Assignement et arrangement:

B
A
0
1
1
0
- 2
- -
0
1
4
-
-
-
3 2
3 2
2
3
1 4 - - 4
S
0
0
0
0
1
Cette table est obtenue en parcourant le
diagramme des temps.

Elle dcrit le parcours du systme squentiel.

Aucune simplification nest faite ce stade.

Les tats indiffrents ont t symboliss ici par le
signe - pour viter la surcharge de la table.
0
1
2 3
4
B
A
0
0
0
1
- 1
1 1
0
1
S
B
A
0
-
0
1
- 0
0 0
0
1
Une table parallle est
ncessaire pour la fonction
de sortie.
Dans la ligne 1, la sortie
prend la valeur 0 ou 1
suivant ltat des entres.
Cest une machine de Mealy.
B
A
0
0
0
1
- 1
1 1
X
S
B
A
0
-
0
1
- 0
0 0
Dans ce premier exemple,
lassignement est trivial.

Il ny a quune variable
boucle X et la table
comporte dj 2
1
lignes
X
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -49- Oct. 2001
Table de Karnaugh de la variable dassignement et de la fonction de sortie:









Simplification sans course:




Vrification des tats puits:









Schma logique:







Adaptation au matriel disposition, par exemple NOR:









Vrification hardware ou software:
La vrification du fonctionnement correct du systme squentiel asynchrone peut tre
ralise au laboratoire laide de logidules (hardware).
Elle peut galement tre ralise laide de programmes PC spcialiss (software).
La vrification est ncessaire !
Cet exemple simple de synthse asynchrone nous a montr les difficults quelle prsente.
Cest la raison pour laquelle on lui prfre souvent une synthse synchrone plus simple et
qui peut de ce fait tre automatise.
B
A
0
0
0
1
- 1
1 1
X
S
B
A
0
-
0
1
- 0
0 0
La fonction de sortie peut tre
simplifie en mme temps
que la (les) variable(s)
dassignement.
X
X+
X+ = B + AX
S = BX
B
A
0
0
0
1
1 1
1 1
0
1
S
B
A
0
1
0
1
0 0
0 0
0
1
On obtient la table dtats
aprs synthse.
Cest la table dtats finale.
S
B
A
X
X+
S B
A
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -50- Oct. 2001
Exemple 2
Soit raliser une machine 2 entres (S, R) et 1 sortie (Q) dont le cahier des charges est
donn par un schma-bloc :


Schma-bloc:











Table dtats: Fusions possibles:
Choix: 0, 1, 2 -> 0
3 -> 1
4, 5 -> 2











Table fusionne:











Table assigne:

S
R
Q Q S
R
R
S
0
1
1
2
0 0
0 -
0
1
2 2 0 0 2
Q
R
S
0
0
0
-
0 0
0 -
0
1
1 1 - - 2
R
S
2
3
-
-
1 0
1 0
0
1
2
3
3
4
- 0
1 -
2
3
5 4 - 0 4
Q
0
0
0
0
1
5 1 4 5 1 -
0
1
2 4
5
3
R
S
0
1
1
2
0 0
0 0
2 2 1 1
- - - -
X
Y
Q
R
S
0
0
0
-
0 0
0 0
1 1 - -
X
Y
- - - -
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -51- Oct. 2001
Tables de Karnaugh:













Equations:







Vrification
des tats puits:








Schma
logique:









Schma
adapt
des portes
NOR:
Y+
R
S
0
1
1
1
0 0
0 0
1 1 1 1
X
Y
- - - -
Q
R
S
0
0
0
-
0 0
0 0
1 1 - -
X
Y
- - - -
X+
R
S
0
0
0
1
0 0
0 0
1 1 0 0
X
Y
- - - -
X+ = RX + RSY = R(X + SY) Q = X
Y+ = X + RY + RS = X + R(Y + S)
Q
S
R
X
Y+
X+
Y
Q
R
S
0
0
0
0
0 0
0 0
1 1 1 1
1
0
1 1 1 1
2
3
R
S
0
1
1
2
0 0
0 0
2 2 1 1
2 2 1 1
1
0
2
3
Q
S
R
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -52- Oct. 2001
Exemple 3
Soit raliser un flip flop de type D (flip-flop D) dont le comportement est celui des flip-flops
utiliss dans les systmes synchrones.

Il est noter au passage que les systmes squentiels synchrones utilisent des flip-flops
qui sont des systmes squentiels asynchrones.























Ce flip-flop D ou bascule D comporte deux entres (D et H) et une sortie (Q).

On a donn ici diffrents modes de reprsentation, dont la table dtats fusionne.

Il suffit dassigner cette table dtats:






Table assigne:

FLIP-FLOP D
D
H
Q
Instants dhorloge
D H Q
+

0 no change
0 0
1 no change
1 1
Truth table
Q
+
= D
Equation
D
H
State table
0
-
0
0
0 1
2 1
Q
0
0
0
1
3
0
2
3
2 2
- 2
1
1
2
3
D
H
1
0 2
0
2
0 - 2
X
Y
Q
D
H
0
-
0
0
0 0
- 0
1 1 1 1
X
Y
1 - - 1
0 0
- 1
2 2
3
3
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -53- Oct. 2001
Tables de Karnaugh:















Equations:




Schma logique:












Ce schma na pas t ralis dans toutes les rgles de lart.
Les termes de recouvrement ont t omis.
Des problmes peuvent survenir lors de la transition de lhorloge H.
Cest pourtant le schma utilis actuellement dans pratiquement tous les circuits
synchrones, cest--dire dans tous les ordinateurs !




Voici encore quelques considrations au sujet de cette classe importante de circuits
squentiels asynchrones que sont les flip-flops:

Le flip-flop D synthtis ci-dessus ragit au flanc montant de lhorloge.
Il existe aussi des flip-flops D qui ragissent au flanc descendant de lhorloge.
Y+
D
H
0
-
0
0
0 1
1 1
0 1 1 1
X
Y
0 0 - 1
Q
D
H
0
-
0
0
0 0
- 0
1 1 1 1
X
Y
1 - - 1
X+
D
H
0
-
0
0
0 0
1 0
1 1 1 1
X
Y
1 0 - 1
X+ = HY + HX + (XY) Q = X
Y+ = HY + HD + (DY)
H
D
H=1
H=0
X
H=0
H=1
Y
Q
FLIP-FLOP D
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -54- Oct. 2001
Plusieurs symbolismes sont utiliss pour indiquer quel est le flanc actif:
















Le triangle symbolise le fait que le flip-flop ragit aux flancs de lhorloge.
Le symbolisme du centre (triangle noir pour le flanc ngatif) peut prter confusion aprs
plusieurs photocopies. Il est viter.

Afin de permettre une initialisation du systme squentiel synchrone, les flip-flops sont
gnralement dots dentres supplmentaires de mise 0 (R ou Reset) et parfois de mise
1 (S ou Set).












Lentre de reset R/ est asynchrone, cest--dire quelle agit sans attendre linstant
dhorloge. Dans ce cas particulier, elle est active 0, cest pourquoi on la nomme R/.

ATTENTION
Les flip-flops avec une entre Set et une entre Reset ont souvent un comportement
inattendu lorsque les 2 entres dinitialisation sont actives simultanment: Q=Q/ !!!

Il existe un grand nombre de flip-flops caractriss par:
- le flanc auxquels ils ragissent (positif, ngatif ou les deux)
- la possibilit de les initialiser de faon asynchrone (S, S/, R, R/)
- la possibilit de les charger de faon asynchrone (Load)
- la fonction quils remplissent (Q
+
=D, etc)
FLIP-FLOP D avec reset
R
H

D
H=1
H=0
Q Q
H=0
H=1
Symboles usuels
D
Q
Q
C
D
Q
Q
C
D
Q
Q
C
D
Q
Q
C
D
Q
Q
C
D
Q
Q
C
Flanc positif
(monte de lhorloge)
Flanc ngatif
(descente de lhorloge)
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -55- Oct. 2001
Nous allons encore examiner un flip-flop que lon trouve couramment: le flip-flop JK

Le flip-flop JK est un flip-flop D auquel on a rajout une fonction combinatoire sur lentre D
de faon le rendre multi-fonctionnel.















Pour J=0 et K=0
Cest un flip-flop qui maintient son tat actuel

Pour J=0 et K=1
Cest un flip-flop dont la sortie passe 0 lors de linstant dhorloge suivant

Pour J=1 et K=0
Cest un flip-flop dont la sortie passe 1 lors de linstant dhorloge suivant

Pour J=1 et K=1
Cest un flip-flop dont la sortie change dtat lors de linstant dhorloge suivant
La frquence du signal de sortie vaut la moiti de celle de lhorloge.
On le nomme aussi diviseur de frquence par 2 ou Frequency divider .

Dautres combinaisons sont galement envisageables, par exemple:
J = K/ = D o D est une entre.

Cette mult-fonctionnalit a pour intrt principal le fait quun stock de matriel
limit permet de remplir bien des fonctions diffrentes.

Dans un circuit intgr, le flip-flop JK nest pas utilis.
On lui prfre le flip-flop D, auquel on rajoute au besoin les portes ncessaires.
Flip-flop JK
D
Q
Q
C
J
K
C
J K Q
+

0 0 Q
0 1 0
1 0 1
1 1 Q/
ou
Q+=JQ+KQ
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -56- Oct. 2001
7) Systmes squentiels complexes

Circuits programmables

Nous avons vu quil est possible de trouver des circuits logiques combinatoires universels
qui peuvent tre programms par lutilisateur.
Il suffit de placer des flip-flops entre quelques sorties et quelques entres de ces circuits
combinatoires universels pour en faire des circuits squentiels synchrones universels.



















Il existe de multiples sortes de circuits squentiels programmables qui diffrent par la
capacit de la mmoire, le nombre de flip-flops, mais aussi par des possibilits varies
de charger le registre, de configurer les sorties, etc...
Nous nentrerons pas dans ces dtails qui dpendent fortement des possibilits
technologiques et des fabricants.


FPGA

Les FPGA (field programmable gate arrays) sont une classe particulire de circuits
squentiels programmables qui ont obtenu un succs grandissant ces dernires annes.

Les FPGA sont organises sous forme matricielle et chaque point de la matrice est un
circuit squentiel programmable de faible complexit (comportant un seul flip-flop).

La matrice elle-mme peut comporter quelques milliers de mini-circuits squentiels
que lon peut interconnecter loisir.

On arrive ainsi programmer des circuits trs complexes dont certaines parties sont
squentielles synchrones, dautres squentielles asynchrones et dautres enfin sont
purement combinatoires.

Mmoire ROM
programmable
Architecture dun circuit squentiel universel
Entres Sorties
Registre
(flip-flops)
Horloge
SYSTEMES LOGIQUES EPFL DI / LSP


Walter Hammer -57- Oct. 2001
Microcontrleurs

Une dernire classe de circuits squentiels synchrones de grande complexit est sans
conteste la classe des microcontrleurs.

Ces derniers comportent quelques parties combinatoires dont en particulier une ALU =
Arithmetic and Logic Unit = Unit arithmtique et logique.

Ils comportent une mmoire ROM (mmoire de programme) boucle par un registre appel
compteur de programme (program counter) dont le rle est de dfinir la squence des
oprations.

Ils comportent encore des registres de mmorisation de linformation chargement parallle
ou srie.

Une mmoire RAM (Random access memory) permet de stocker linformation de faon plus
dense que les registres.

Cette description trs succincte des microcontrleurs montre que ce sont des systmes
squentiels de trs trs grande complexit.


















8) Bibliographie

R. Dessoulavy, EPUL: Quelques rflexions sur les modles de transistors, de circuits logiques et de
systmes logiques, Tir part des AGEN-Mitteilungen N 10, 1969?
D. Mange, EPUL: Cours de systmes logiques, notes manuscrites 1966-1969
D. Mange, EPFL: Analyse et synthse des systmes logiques Trait dlectricit, Volume V,
Presses Polytechniques et Universitaires Romandes, 1978
M Dellea, EICN: Cours de systmes logiques, Octobre 2000
E. Sanchez, EPFL: Cours de systmes logiques, recueil des transparents, 2000
R. Hersch, EPFL: Informatique industrielle, Collection informatique, Presses Polytechniques
et Universitaires Romandes, 1997