les circuits logiques programmables : technologie …gdedel95.free.fr/epmi/ressources...
Post on 16-Sep-2018
225 Views
Preview:
TRANSCRIPT
1
Les circuits logiques programmables :
Technologie
du transistor
au P.L.D.
(Programmable Logic Device)
2
Toutes les composants logiques (de la porte logique au µP) sont obtenues à
partir d’association de quelques (millions ?) de transistors. Ces transistors
peuvent être des transistors bipolaires (familles TTL et ECL) ou des transistors
MOS (famille NMOS, PMOS, CMOS…).
Les fonctions programmables sont réalisées à partir des familles à base de
transistors MOS.
3
composant de base : le transistor
Ib
Ic
BE
C
Vds
D
S
G
Ids
Vgs
N P N N PP
bipolaire MOS
CE B
DS
Vg����
Vds
Ids
Vce
Ic
Ib����
Vce
4
circuits intégrés
deux grandes familles technologiques:
CMOS et bipolaire
C
I∆∆∆∆t
∆∆∆∆V
IV
Ct∆=∆
diminution du paramètre techno.diminution des tensionscompromis vitesse - consommation
5
VOH VIH-
+
-
+
IOH IIH
VOL VIL-
+
-
+
IOL IIL
+5VNiveau basNiveau haut
VIH(min) : tension d’entrée niveau HAUT
VIL(max) : tension d’entrée niveau BAS
VOH(min) : tension d’entrée niveau HAUT
VOL(max) : tension de sortie niveau BAS
IIH : courant d’entrée niveau HAUT
IIL : courant d’entrée niveau BAS
IOH : courant de sortie niveau HAUT
IOL : courant de sortie niveau BAS
Terminologie des Circuits intégrés
6
Paramètres électriques et temporels
Définition des niveaux logiques
Valim
Valim
Ve
Vs
A A
ve1 ve2 vs2
A
VILmax VIHmin
VOLmax
VOHmin
VOLmax < VILmax et VOHmin > VIHmin
7
Paramètres électriques et temporels
Définition des niveaux logiques
valeur minimale de la tension d ’entréepour que le signal soit vu comme « 1 »
valeur maximalede la tension d ’entréepour que le signalsoit vu comme « 0 »
dans les conditions du testle circuit assure cette tension
8
Paramètres électriques et temporels
Courants de sortie
courant maximaldélivré par l ’alimentationau repos
courants minimaux fournis à la chargependant les transitions
11
Le sigle TTL se réfère généralement à la série 74 standard ou « N ».
Il existe d’autres séries :
• 74L : faible consommation• 74H : plus rapide• 74S (Schottky) : faible consommation et plus rapide• 74LS : faible consommation mais moins rapide.• 74AS et ALS : associent vitesse de commutation et faible consommation.
Autres série TTL
12
8 mA8 mA20 mA20 mA20 mA3,6 mA16 mASortance à l’état bas : IOL
400 µA400 µA2 mA1 mA500 µA200 µA400 µASortance à l’état haut : IOH
200 µA400 µA2 mA2 mA2 mA180 µA1,6 mAEntrance à l’état bas : IIL
20 µA20 µA200 µA50 µA50 µA10 µA40 µAEntrance à l’état haut : IIH
1 mW2 mW20 mW19 mW22 mW1 mW10 mWConsommation
4 ns9,5 ns1,5 ns3 ns6 ns33 ns10 nsRetard de propagation
0,8 v0,8 v0,8 v0,8 v0,8 v0,8 v0,8 vVil(max)
0,5 v0,5 v0,5 v0,5 v0,4 v0,3 v0,4 vVol(max)
2 v2 v2 v2 v2 v2 v2 vVih(min)
2,7 v2,7 v2,7 v2,7 v2,4 v2,4 v2,4 vVoh(min)
5 v5 v5 v5 v5 v5 v5 vTension d’alimentation
ALSLSASSHLN
Les différentes série TTL
13
État bas État haut
R2 R4
Q3
Q4
D1
+5 V R1
+5 V
R1
+ 5 V
Conduit
VOL
IOL
BloquéIIL IIL
-
+
+5 V + 5 V
R2 R4
+5 V R1 R1
bloqué
VOH
IOH
conduit
IIH IIH
+
-
Nombre d’entrée 7400 que peut piloter une sortie 7400 :
IOL(max) = 16 mA IOH(max) = 400 µAIIL(max) = 1.6 mA IIH(max) = 40 µASortances = IOL(max)/IIL(max) = 10 Sortances = IOH(max)/ IIH(max) = 10
Facteur de charge et sortance des TTL
15
circuits intégrés CMOS
pMOSnMOS
Vgs
D
S
G
Vgs
D
S
G
Vgs≅≅≅≅Vdd Vgs≅≅≅≅-Vdd
S D
Vgs ≅≅≅≅ 0 Vgs ≅≅≅≅ 0S D
20
circuits intégrés CMOSexemple : inverseur
p+ p+
caisson n
n+ n+
Valim
Vref
E S
grille
substrat p
transistor n transistor p
24
circuits intégrés CMOSexemple : porte NAND
A=1 et B
=1
A=0 ou B=0
B
0
1
0
1
S
1
1
1
0
A
S
Valim
B
S=1
S=0
A
0
0
1
1
AS
B
26
circuits intégrés CMOSexemple : porte NOR
A=1 ou B
=1
A=0 et B=0
B
0
1
0
1
S
1
0
0
0
A
0
0
1
1
AS
B
A
Valim
B
S
S=0
S=1
30
circuits intégrés
1.0E+03
1.0E+04
1.0E+05
1.0E+06
1.0E+07
1.0E+08
0
2
4
6
8
10
12
nb de trans. param. techno.
1971
1980
1990
2000
4004
8080
8086
80486P
P-II
P-III
évolution du nombre de transistors des µP Intel
loi de Moore :Ntr est multiplié par 1,4 par an
31
circuits intégrés
1
10
100
1000
fréquence d'horloge
1971
1980
1990
2000
8080
8086
80486
P
P-II
P-III
évolution de la fréquence d'horloge des µP Intel
MHz
44
circuits intégrés
oxydation
oxydation(grille)
gravure
dépôt poly-Si
gravure poly-Si
gravure oxyde mince
implantation-diffusion
dépôt d'oxyde
ouverture des contacts
dépôt de métal
gravure du métal
48
circuits intégrés
0
5000
10000
15000
20000
1995 2000 2005 2010 2015
nombre d'E/S
fréquenced'horloge
0
50
100
150
200
1995 2000 2005 2010 20150
1
2
3
puissance
alimentation
a
0
100
200
300
1995
2000
2005
2010
2015
0
500
1000paramètretechno.
nombre detransistors/cm2
surface de lapuce
(nm)
(mm 2)
(en millions)
(MHz)
(W)(V)
60
A0A1
A2A3
S0
S2
Adresses =entrées
Matrice deET figée
Matrice deOu
Programmable
mémoire 16 mots de 2 bits => 2 fonctions logiques de 4 entrées
liaison non programmable
liaison programmable
Mémoire programmable
61
A0A1
A2A3
S0
S2
Adresses =entrées
MatriceET
programmable
MatriceOu
figée S3
S4
liaison non programmable
liaison programmable
Circuit logique programmable
PAL : programmable array logic
somme de produits = Macrocellule
83
Points à examiner avant réalisation :
• Matériel– In Out
– Gate
• Performance• Temps-réel• Interfaçage
physique• Coût• Encombrement• . . .
ld In, x0xor x0, r2, x1ld Gate, x2and x1, x2, x1xor x1, r0, x2mov x1, r0...
Logiciel:
Lequel ?
InOut
GateMatériel: techno, coût ?
84
Modèles de réalisation• Circuits à façon (full-custom) : dessin de transistors
(gravure de rectangles).• Circuits prédiffusés (gate array) : connexion de portes
logiques élémentaires (ex. NOR).• Circuits logiques programmables (PROM, PAL,
EPLD) :réalisation d’un petit nombre d’équations booléennes.Généralement programmables une seule fois.
• Prédiffusés programmables (FPGA) : connexion de fonctions booléennes programmables et de registres synchrones.Programmables une fois ou indéfiniment reprogrammables.
85
Plate-forme matérielle (1)
• PC (Windows NT)• Carte “PCI Pamette” (Compaq Systems Research Center)
– 4 circuits Xilinx XC4010E-3 à XC4085XLA-09• 800 à 6272 fonctions booléennes 4 entrées
• 800 à 6272 registres
• 160 ports d’entrée-sortie– 2 banques mémoire, 64k x 16b, 12ns
– Interface PCI (téléchargement et communication)
– Horloge programmable 0–100 MHz
86
Plate-forme matérielle (2)
4 Xilinx 4010Es4 Xilinx 4010Es
256 KBSRAM
256 KBSRAM
Up To 256 MBDRAM SIMMsUp To 256 MBDRAM SIMMsPCI InterfacePCI Interface
External I/OCMC
Connectors
External I/OCMC
Connectors
87
Plate-forme matérielle (3)
• Périphériques optionnels– DRAM
– Ecran VGA– Caméra numérique
– Carte ethernet
– Convertisseurs A/D et D/A– . . .
88
Outils logiciels (1)
• Description des circuits– Schémas
– Equations booléennes– VHDL
• Compilation– Traduction des fichiers sources en portes logiques –
fusion
– Fabrication de tables à 4 entrées– Placement et routage
– Génération du binaire de configuration
89
Outils logiciels (2)
• Exécution– Initialisation des RAMs
– Configuration du circuit– Protocole d’entrées-sorties (PCI)
– Commandes clavier, scripts, programmes C/Java.
• Mise au point– Simulation
– Exécution pas-à-pas – relecture de l’ état interne
– Oscilloscope
94
Langages de description (2)
• Equations booléennes : ABEL.– module count8;
" InputsClk,up,down pin;
" Outputsq0,q1,q2,q3,q4,q5,q6,q7 pin istype ’reg’;
" Variablescount = [q7..q0];
equationscount:=(count+1) & up & !down "count up
# (count-1) & !up & down "count down# count & up & down "hold# count & !up & !down; "hold
end
95
Langages de description (3)
• Imperative Generation : PamDC.– int i,j;
Bool clk, limit;WireVector<Bool,3> Cnt;limit = Cnt[0] & (~Cnt[1]) & Cnt[2];for (i = 0; i < 3; i++){
EquationHandler Carry = ONE;for (j = 0; j < i; j++)
Carry = Carry & Cnt[j];Cnt[i] = reg(
mux(limit, ZERO, Cnt[i] ^ Carry),clk);}
96
Langages de description (4)
• Synthèse logique : VHDL.– process begin
wait until CLK’event and CLK = ’1’;if SECS = 59 then
SECS <= 0;if MINUTES = 59 then
MINUTES <= 0;else
MINUTES <= MINUTES + 1;end if;
elseSECS <= SECS + 1;
end if;end process;
97
Projets microprocesseurs
• RISC
• Microprocesseur classique : PDP8, PDP11, 6502– Possibilité de trouver spécifications, compilateurs, code sur le web
– http://www.spies.com/~dgc/pdp8x/
• Microprocesseur + périphériques• Carte graphique• Contrôleur disque
98
Projets microprocesseurs (suite)
• Calculatrice– Calculatrice à pile simple
– Calculatrice programmable
• Automates spécialisés– calendrier perpétuel. . .– Montre numérique
– Contrôleur d’ascenseur
– Voltmètre numérique– Oscilloscope numérique
• Codes– Codes cryptographiques– Codes correcteurs d’erreur
99
Projets microprocesseurs (suite)
• Pilotage d’ écran graphique– Terminal alphanumérique
– Jeu vidéo, animations
• Audio numérique– Synthèse additive– Filtrage
– Analyse fréquentielle temps-réel
• Acquisition et traitement d’image– Caméra numérique
• Autres. . .
100
Exemple : calculatrice
• Type “polonaise inverse” (HP)• Version minimale
– Hexadécimale
– 8 bits
– Addition – soustraction
• Extensions– 12 ou 16 bits
– BCD– Multiplication
– Sous-programmes en ROM
101
Exemple : synthétiseur sonore
• Version minimale– Synthèse d’ échantillons sonores en temps r éel
– Forme(s) d’onde en RAM– Partitions en RAM (fréquence/durée)
• Extensions– Enveloppes
– Voies multiples
top related