View
230
Download
0
Category
Preview:
Citation preview
Cours Synthese des Systemes Numeriques
Cours Synthese des Systemes Numeriques
Bertrand GranadoEnseignant-Chercheur
Laboratoire des Instruments et Systemes d’Ile de France
3 rue Galilee - Batiment ”Le Raphael”
94200 Ivry-sur-seine
Mel : Bertrand.Granado@lis.jussieu.fr
Printemps 2005
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
PAL(PLA) : ProgrammableArray Logic
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
PAL(PLA) : ProgrammableArray Logic
PLD : Programmable LogicDevice
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
PAL(PLA) : ProgrammableArray Logic
PLD : Programmable LogicDevice
GAL : Generic Array Logic
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
PAL(PLA) : ProgrammableArray Logic
PLD : Programmable LogicDevice
GAL : Generic Array Logic
EPLD : ErasableProgrammable Logic Device
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
PAL(PLA) : ProgrammableArray Logic
PLD : Programmable LogicDevice
GAL : Generic Array Logic
EPLD : ErasableProgrammable Logic Device
CPLD : ComplexProgrammable Logic Device
Cours Synthese des Systemes Numeriques
Taxonomie
Circuits personnalisés
Semi-Custom Custom
CircuitsProgrammables
CircuitsReprogrammables
RéseauxPrédiffusés
StandardsCells
FullCustom
PALPLDPLA
EPLDCPLDFPGA
PAL(PLA) : ProgrammableArray Logic
PLD : Programmable LogicDevice
GAL : Generic Array Logic
EPLD : ErasableProgrammable Logic Device
CPLD : ComplexProgrammable Logic Device
FPGA : Field ProgrammableGate Array
Cours Synthese des Systemes Numeriques
Historique
1970 - Origine
MMI premier PALProm a FusiblesTechnologie BiPolaire
Cours Synthese des Systemes Numeriques
Historique
1970 - Origine
MMI premier PALProm a FusiblesTechnologie BiPolaireOTP (One TimeProgramming)
Cours Synthese des Systemes Numeriques
Historique
1970 - Origine
MMI premier PALProm a FusiblesTechnologie BiPolaireOTP (One TimeProgramming)
1980 - Acceleration
Cours Synthese des Systemes Numeriques
Historique
1970 - Origine
MMI premier PALProm a FusiblesTechnologie BiPolaireOTP (One TimeProgramming)
1980 - Acceleration
Technologie CMOS
Cours Synthese des Systemes Numeriques
Historique
1970 - Origine
MMI premier PALProm a FusiblesTechnologie BiPolaireOTP (One TimeProgramming)
1980 - Acceleration
Technologie CMOSAvenement de EPROM
Cours Synthese des Systemes Numeriques
Historique
1970 - Origine
MMI premier PALProm a FusiblesTechnologie BiPolaireOTP (One TimeProgramming)
1980 - Acceleration
Technologie CMOSAvenement de EPROMReprogrammabilite
Cours Synthese des Systemes Numeriques
Historique
1970 - Origine
MMI premier PALProm a FusiblesTechnologie BiPolaireOTP (One TimeProgramming)
1980 - Acceleration
Technologie CMOSAvenement de EPROMReprogrammabilite
1990 : FPGA
Cours Synthese des Systemes Numeriques
Historique
1970 - Origine
MMI premier PALProm a FusiblesTechnologie BiPolaireOTP (One TimeProgramming)
1980 - Acceleration
Technologie CMOSAvenement de EPROMReprogrammabilite
1990 : FPGA
2000 : Micro-ProcesseursConfigurables
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmable
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible Densite
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
EPLD
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
EPLD
Architecture de PAL programmable
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
EPLD
Architecture de PAL programmableDensite moyenne
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
EPLD
Architecture de PAL programmableDensite moyenneOutils de developpement simples
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
EPLD
Architecture de PAL programmableDensite moyenneOutils de developpement simples
FPGA
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
EPLD
Architecture de PAL programmableDensite moyenneOutils de developpement simples
FPGA
Architeture Gate Array programmable
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
EPLD
Architecture de PAL programmableDensite moyenneOutils de developpement simples
FPGA
Architeture Gate Array programmableTres haute densite
Cours Synthese des Systemes Numeriques
Categories de Circuits Programmables
PAL
Architecture ET/OU programmableFaible DensiteOutils de developpement simples
EPLD
Architecture de PAL programmableDensite moyenneOutils de developpement simples
FPGA
Architeture Gate Array programmableTres haute densiteOutils de developpements type ASIC
Cours Synthese des Systemes Numeriques
Les constructeurs
Xilinx
Altera
Lattice
Actel
Atmel
Amd
Cypress
Philips
. . .
Cours Synthese des Systemes Numeriques
Pourquoi des Circuits Logiques Programmables ?
Adequation Algorithme Architecture
Cours Synthese des Systemes Numeriques
Pourquoi des Circuits Logiques Programmables ?
Adequation Algorithme Architecture
Vitesse
Cours Synthese des Systemes Numeriques
Pourquoi des Circuits Logiques Programmables ?
Adequation Algorithme Architecture
Vitesse
Prototypage
Cours Synthese des Systemes Numeriques
Pourquoi des Circuits Logiques Programmables ?
Adequation Algorithme Architecture
Vitesse
Prototypage
Souplesse par rapport au ASIC
Cours Synthese des Systemes Numeriques
Realisation des PLA et PLD : Fusibles
Matrice de fils croises
Cours Synthese des Systemes Numeriques
Realisation des PLA et PLD : Fusibles
Matrice de fils croises
Diodes en serie avec des fusibles places aux intersections
Cours Synthese des Systemes Numeriques
Realisation des PLA et PLD : Fusibles
Matrice de fils croises
Diodes en serie avec des fusibles places aux intersections
Programmation = Claquage fusible
Cours Synthese des Systemes Numeriques
Realisation des PLA et PLD : Fusibles
Matrice de fils croises
Diodes en serie avec des fusibles places aux intersections
Programmation = Claquage fusible
Technologie bipolaire ou CMOS
Cours Synthese des Systemes Numeriques
Realisation des PLA et PLD : Fusibles
Matrice de fils croises
Diodes en serie avec des fusibles places aux intersections
Programmation = Claquage fusible
Technologie bipolaire ou CMOS
Forte consommation pour le bipolaire
Cours Synthese des Systemes Numeriques
Prom 16x4 bits
I3 I2 I1 I0
O3 O2 O1 O0
Matrice de Ou(Programmable)
Matrice de ET(Fixe)
Cours Synthese des Systemes Numeriques
Prom 16x4 bits
I3 I2 I1 I0
O3 O2 O1 O0
Matrice de Ou(Programmable)
Matrice de ET(Fixe)
Cours Synthese des Systemes Numeriques
PAL
I3 I2 I1 I0
O3 O2 O1 O0
Matrice de Ou(Fixe)
Matrice de ET(Programmable)
Cours Synthese des Systemes Numeriques
PAL
I3 I2 I1 I0
O3 O2 O1 O0
Matrice de Ou(Fixe)
Matrice de ET(Programmable)
Cours Synthese des Systemes Numeriques
Sortie Sequentielle : PLD
I
D Q
Q
Signal Horloge
Commande de Sortie
Q
Cours Synthese des Systemes Numeriques
GAL16v8
I/CLK
I
I/O/Q
I
I/O/Q
I
I/O/Q
I
I/O/Q
I
I/O/Q
I
I/O/Q
I
I/O/Q
I
I/O/Q
CLK
8
8
8
8
8
8
8
8
OE
OLMC
OLMC
OLMC
OLMC
OLMC
OLMC
OLMC
OLMCP
RO
GR
AM
MA
BL
EA
ND
-AR
RA
Y
I/OE
Cours Synthese des Systemes Numeriques
Caracteristiques EP610 - EP 1810 PLD Altera
Technologie E2PROM
Bascule programmables D, T, JK, SR
Bit de securite
Caractéristiques des EPLD Classic d'Altera
Caractéristiques EP610EP610I
EP910EP910I
EP1810
Portes Disponibles 300 450 900
Macrocellules 16 24 48
Broches d'E/S 22 38 64
tPD (ns) 10 12 20
fCNT (MHz) 100 76.9 50
Cours Synthese des Systemes Numeriques
MacroCellule
Synoptique d'une MacroCellule
To Logic Array
Output Enable/Clock SelectGlobalClock
OE
CLK
ProgrammableRegister
Input, I/O, andMacrocell
Feedbacks
Logic Array
FeedbackSelect
CLR
Q
Asynchronous Clear
VCC
Cours Synthese des Systemes Numeriques
Mode de Fonctionnement
MacrocellOutput Buffer
GlobalClock
OE
CLK
ANDArray
Data
Output Enable/ClockSelect
OE = Product TermCLK = Global
Mode 0
OE = EnabledCLK = Product Term
Mode 1
Output Enable/ClockSelect
VCC
CLR
Q
MacrocellOutput Buffer
GlobalClock
VCC
OE
CLK
ANDArray
Data
CLR
Q
Le signal d'horloge du registre est global. La sortie est autorisée par un terme produit.
Le signal d'horloge du registre est un terme produit. La sortie est toujours autorisée.
Cours Synthese des Systemes Numeriques
EP610
(26)
(25)
(24)
(23)
(22)
(21)
(20)
(18)
22
21
20
19
18
17
16
15
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(12)
2 (3)
1 (2)
INPUT
CLK1
(13) INPUT
23 (27)
13 (16)
INPUT
CLK2
3
4
5
6
7
8
9
10
11
GlobalBus
(17)INPUT 14
Macrocell 9Macrocell 10Macrocell 11Macrocell 12Macrocell 13Macrocell 14Macrocell 15Macrocell 16
Macrocell 1Macrocell 2Macrocell 3Macrocell 4Macrocell 5Macrocell 6Macrocell 7Macrocell 8
Cours Synthese des Systemes Numeriques
EP1810
(K4)
(L4)
(K5)
(L5)
(L6)
(K7)
(L7)
(K8)
INPUT
INPUT
INPUT
INPUT/CLK1
INPUT/CLK2
INPUT
INPUT
INPUT
(B4) 56
(A5) 55
(B5) 54
(A6) 53
(A7) 51
(B7) 50
(A8) 49
(B8) 48
INPUT
INPUT
INPUT
INPUT/CLK4
INPUT/CLK3
INPUT
INPUT
INPUT
Quadrant A
(F1) (G2)
(G1)
(H2) (H1) (J2) (J1) (K1) (K2) (L2)
(K3)
(L3)
Loca
l Bus
—Q
uadr
ant A
Macrocell 48 Macrocell 47 Macrocell 46 Macrocell 45 Macrocell 44 Macrocell 43 Macrocell 42 Macrocell 41 Macrocell 40 Macrocell 39 Macrocell 38 Macrocell 37
Quadrant D
(E1) 68 (E2) 67 (D1) 66 (D2) 65
(C1) 64
(C2) 63 (B1) 62 (B2) 61
(A2) 60
(A3) 59
(B3) 58
(A4) 57
Loca
l Bus
—Q
uadr
ant D
Macrocell 13 Macrocell 14 Macrocell 15 Macrocell 16 Macrocell 17 Macrocell 18 Macrocell 19 Macrocell 20 Macrocell 21 Macrocell 22 Macrocell 23 Macrocell 24
(L8) (K9) (L9)
(L10) (K10) (K1 1) (J10) (J1 1) (H10) (H1 1) (G10) (G1 1)
Loca
l Bus
—Q
uadr
ant B
Macrocell 36 Macrocell 35 Macrocell 34 Macrocell 33 Macrocell 32 Macrocell 31 Macrocell 30 Macrocell 29 Macrocell 28 Macrocell 27 Macrocell 26 Macrocell 25
(A9) 47 (B9) 46 (A10) 45 (B10) 44 (B11) 43 (C11) 42 (C10) 41 (D11) 40 (D10) 39 (E11) 38 (E10) 37 (F11) 36
Loca
l Bus
—Q
uadr
ant C
Quadrant B Quadrant C
Global Macrocells
Local Macrocells
Macrocell 1 Macrocell 2 Macrocell 3 Macrocell 4 Macrocell 5 Macrocell 6 Macrocell 7 Macrocell 8 Macrocell 9 Macrocell 10 Macrocell 1 1 Macrocell 12
Global Bus
2 3 4 5 6 7 8 9
10 1 1
12
13
23 24 25 26 27 28 29 30 31 32 33 34
14
15
16
17
19
20
21
22
Recommended