111432399 Circuits Logiques Programmables

Embed Size (px)

Citation preview

  • LES CIRCUITS

    LOGIQUES

    PROGRAMMABLES

    M. Philippe LETENNEUR Lyce M. Philippe LETENNEUR Lyce Julliot de la Julliot de la MorandireMorandireGRANVILLEGRANVILLE

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 2

    SOMMAIRESOMMAIRE

    I. PRSENTATION DE LA LOGIQUE PROGRAMME.I. PRSENTATION DE LA LOGIQUE PROGRAMME. ............................................................................................33

    II LA CLASSIFICATION DES PLDSII LA CLASSIFICATION DES PLDS........................................................................................................................................................33

    II.1 Liste de toutes les familles de II.1 Liste de toutes les familles de P.L.D. .............................................................................................................................................................. 33

    II.2 Rsum graphique des familles de II.2 Rsum graphique des familles de P.L.D................................................................................................................................................. 55

    III LES PALS (PROGRAMMABLE ARRAY LOGIC)III LES PALS (PROGRAMMABLE ARRAY LOGIC) ........................................................................................................66

    III.1 La symbolisation et la reprsentation.III.1 La symbolisation et la reprsentation......................................................................................................................................................... 66

    III.2 Les diffrentes structures.III.2 Les diffrentes structures. ............................................................................................................................................................................................ 77III.2.1 Structure gnrale. ...............................................................................................................7III.2.2 Combinatoire.........................................................................................................................8III.2.3 Squentielle. ..........................................................................................................................9III.2.4 Les versatiles. .....................................................................................................................10

    III.3 Les rfrences des III.3 Les rfrences des P.A.L. ............................................................................................................................................................................................ 1212

    III.4 La duplication de III.4 La duplication de P.A.L. et le bit de scurit. et le bit de scurit. .............................................................................................................................. 1313

    IV LES C.P.L.D.S (COMPLEX PROGRAMMABLE LOGIC DEVICE).IV LES C.P.L.D.S (COMPLEX PROGRAMMABLE LOGIC DEVICE).................................................1414

    V LES F.P.G.A.S (FIELDS PROGRAMMABLE GATE ARRAY).V LES F.P.G.A.S (FIELDS PROGRAMMABLE GATE ARRAY).................................................................1515

    VI LES OUTILS DE DVELOPPEMENTS.VI LES OUTILS DE DVELOPPEMENTS.................................................................................................................................1616

    VI.1 Le systme de dveloppement.VI.1 Le systme de dveloppement........................................................................................................................................................................... 1616

    VI.2 Description gnral de la chane des outils utiliss pour mettre au point des circuitsVI.2 Description gnral de la chane des outils utiliss pour mettre au point des circuitslogiques programmables.logiques programmables. .......................................................................................................................................................................................................... 2020

    VI.2.1 Pour les PALs. ....................................................................................................................20VI.2.1.1 Le programmateur...........................................................................................................20VI.2.1.2 Schma fonctionnel d'un outil de dveloppement de PAL. ........................................20

    VI.2.2 Pour les CPLDs et FPGAs.VI.2.2 Pour les CPLDs et FPGAs..................................................................................................................................................................................... 2121VI.2.2.1 Schma fonctionnel d'un outil de dveloppement de FPGA /CPLD...........................21

    VII) LEXIQUEVII) LEXIQUE ......................................................................................................................................................................................................................2222

    VIII) BIBLIOGRAPHIEVIII) BIBLIOGRAPHIE ............................................................................................................................................................................................2323

    IX) ILLUSTRATIONS .IX) ILLUSTRATIONS . ............................................................................................................................................................................................2323

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 3

    I. Prsentation de la Logique Programme.I. Prsentation de la Logique Programme.

    Actuellement les Objets Techniques (O.T.) utilisent de plus en plus la logiqueprogramme (P, Mmoires, C, ...). Ces structures ont besoin de s'interfacer entreelles. Elles utilisent gnralement pour raliser ces interfaces des fonctions basede fonctions logiques lmentaires, compteurs, registres , .... Le nombre de circuitsncessaires pour remplir ces fonctions peut devenir trs vite important.

    Pour diminuer les cots de fabrication, de dveloppement et de maintenance,les fabricants de circuits intgrs ont donn naissance aux Circuits LogiqueProgrammable ou encore P.L.D.P.L.D. (Programmable Programmable Logic Logic DeviceDevice).

    Ces circuits sont capables pour un O.T. de raliser plusieurs fonctionslogiques dans un seul circuit. Si ces fonctions taient ralises base circuits delogique classique, il en faudrait plusieurs circuits.

    Un autre avantage, l'volution des fonctions d'un l'O.T. s'effectue parprogrammation compare une solution classique o il faut refaire un circuitimprim si on veut modifier le fonctionnement.

    II La classification des P.L.D.II La classification des P.L.D.

    II.1 Liste de toutes les familles de II.1 Liste de toutes les familles de P.L.D.

    Les constructeurs de P.L.D.P.L.D. se livrent entre eux une guerre commerciale etsur les appellations, ce qui explique la difficult tablir la classification des P.L.D.P.L.D.

    La plus ancienne et la plus connue est certainement la famille des P.A.L.P.A.L. Lenom a t donn par la socit M.M.I (Fusion depuis avec A.M.D.), c'est uneappellation dpose, comme Walkman pour Sony ou Rfrigrateur pour Frigidaire.

    * P.A.L.P.A.L. signifie Programmable Programmable Array Array LogicLogic, c'est dire rseau logiqueprogrammable. La programmation de ces circuits s'effectue par destructionde fusibles. Une fois programms on ne peut plus les effacer. On distinguedeux sous familles:

    - Les P.A.L.P.A.L. combinatoires ou P.A.L.P.A.L. simples. Ils sont constitus defonctions de logique combinatoire.- Les P.A.L.P.A.L. registres ou F.P.L.S.F.P.L.S. Field Programmable Field Programmable LogicLogicSquencerSquencer pour squenceur logique programmable. Ils sont constitusde logique combinatoire et squentielle (Registre).

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 4

    * Les P.A.L. P.A.L. effaables: E.P.L.D.E.P.L.D.Les E.P.L.D.E.P.L.D. Ce qui signifie Erasable Programmable Erasable Programmable Logic Logic DeviceDevice, c'est dire circuit logique programmable et effasable et qui sont aux P.A.L.P.A.L. ce quesont les U.V.P.R.OM.U.V.P.R.OM. aux P.R.O.M.P.R.O.M. Les E.P.L.D.E.P.L.D. peuvent tre effacs par U.V.ou lectriquement. Ils sont encore appels P.A.L. CMOSP.A.L. CMOS.

    * Les G.A.L.G.A.L.Les G.A.L.G.A.L. Ce qui signifie Generic Generic Array Array LogicLogic ou encore rseau logiquegnrique ce qui veut dire pas grand chose mais qui sont aux P.A.L.P.A.L. ce quesont les E.E.P.R.O.ME.E.P.R.O.M aux P.R.O.M.P.R.O.M. Le nom de G.A.L.G.A.L. a t dpos parLATTICE SEMICONDUCTOR. Leur fonctionnement est identique aux P.A.L.P.A.L.CMOSCMOS, ils sont programmables et effaables lectriquement.

    * Les C.P.L.D.C.P.L.D.Les C.P.L.D.C.P.L.D. Ce qui signifie Complex Programmable Complex Programmable Logic Logic DeviceDevice. Cescircuits sont composs de plusieurs P.A.L.s lmentaires (Par exemplelquivalent de P.A.L.s 22V10) relis entre-eux par une zone dinterconnexion.Grce cette architecture, ils permettent datteindre des vitesses defonctionnement leves (plusieurs centaine de Mhz).

    * Les L.C.A. & F.P.G.A. L.C.A. & F.P.G.A. anti-fusible.- Les L.C.A.L.C.A. Ce qui signifie Logic Logic Cell Cell ArrayArray ou encore rseau de celluleslogiques. Ces circuits sont composs de blocs logiques lmentaires de 2000 10000 portes que l'utilisateur peut interconnecter.- Les F.P.G.A.F.P.G.A. anti fusibles sont identiques aux L.C.A L.C.A sauf qu'ils permettentune plus grande intgration de portes et ils ne sont pas effaableslectriquement. Le nom anti-fusible vient de la programmation desconnexions qui s'effectue par fermeture de circuits, compar aux fusibles ol'on ouvre les circuits.

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 5

    II.2 Rsum graphique des familles de II.2 Rsum graphique des familles de P.L.D.

    P.A.LP.A.L&&

    F.P.L.S.F.P.L.S.

    P.A.L. P.A.L. FusiblesFusibles

    BipolairesBipolaires

    P.A.L. CMOSP.A.L. CMOSEffaableEffaable

    ElectriquementElectriquement

    G.A.L.G.A.L.EffaableEffaable

    ElectriquementElectriquement

    P.A.L.P.A.L.Effaable Effaable auxaux

    U.V.U.V.

    L.C.A.L.C.A.

    F.P.G.A.F.P.G.A. anti fusible anti fusible

    P.L.D.P.L.D.Circuit Circuit LogiqueLogiqueProgrammableProgrammable

    C.P.L.D.C.P.L.D.

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 6

    III Les III Les P.A.L. ((Programmable Programmable Array Array Logic)Logic)

    L'invention des P.A.L.P.A.L. date d'une vingtaine d'annes, ce sont les ingnieursde chez M.M.I qui ont eu l'ide d'utiliser la technologie des fusibles.

    La programmation seffectue par destruction de fusible (un fusible dtruitquivaut un circuit ouvert), voir schma ci-dessous.

    I1I1 et I2I2 reprsentent des entres (I:Input).OO reprsente une sortie (O:Output).

    A partir de cette structure de base il va tre possible de raliser denombreuses fonctions logiques. La programmation va constituer dtruire lesfusibles pour obtenir les fonctions dsires, en sachant que lors de l'achat d'unP.A.L.P.A.L. tous les fusibles sont vierges ou pas dtruits.

    III.1 La symbolisation et la reprsentation.III.1 La symbolisation et la reprsentation.

    La reprsentation schmatique de la prcdente structure demandebeaucoup d'espace pour reprsenter un P.A.L.P.A.L. en entier. Les industriels ont adoptune autre reprsentation voir ci-dessous.

    a: Porte ET 3 entres.b: Porte ET 3 entres reprsentation P.A.L.P.A.L. les croix reprsentent lesfusibles intacts.c: Reprsentation de la structure interne dun P.A.L.P.A.L..

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 7

    Exemple: Reprsentation d'un Ou Exclusif.I1 + I2 = I1 . I2 + I1 . I2Cette quation se reprsente de la faon suivante:

    III.2 Les diffrentes structures.III.2 Les diffrentes structures.

    III.2.1 Structure gnrale.III.2.1 Structure gnrale.

    Tout P.A.L.P.A.L. est constitu :- D'entres (Input): I1 In avec 8

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 8

    Symbolisation normalise :

    Remarque: Sur un schma comportant un P.A.L.P.A.L., on doit crire les quationsqui relient les entres aux sorties ou le nom du document contenant les quationsdu P.A.L.P.A.L.

    Dans l'exemple au paragraphe III.1, la programmation du Ou Exclusif taitfacilement ralisable, ce n'est pas toujours le cas. C'est pourquoi il existe un grandnombre de P.A.L.P.A.L. utilisant des structures de sorties diffrentes. On peut distinguertrois types de structures de base:

    - Combinatoire.- Squentielle.- Versatile.

    III.2.2 Combinatoire.III.2.2 Combinatoire.

    Il existe trois types:- HH -> (High) Porte ET suivit d'une Porte OU. Sortie active l'tat haut.- LL -> (Low) Porte ET suivit d'une Porte NON OU. Sortie active l'tat bas.- CC -> (Combine) programmable en type H ou L.

    ClockClock

    ResetResetOEOE

    I1I1

    InIn

    IO1IO1

    IOnIOn

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 9

    III.2.3 Squentielle.III.2.3 Squentielle.

    Il existe trois types:- RR -> (Register): Registre. Ces circuits sont composs de bascule D. Lessorties des bascules sont de type trois tats contrles par un signal devalidation Enable ou OE, et une horloge est commune toutes les bascules(clock).

    - XX -> (Register Or Exclusif): Ou Exclusif et Registre.

    - RARA -> (Register Asynchron): Registre asynchrone.

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 10

    Les structures de sorties sont beaucoup plus volues par rapport aux autresP.A.L.P.A.L., elles se rapprochent des P.A.L.P.A.L. de type versatile.Elles peuvent prendre quatre configurations suivant les valeurs de AP et AR.

    III.2.4 Les versatiles.III.2.4 Les versatiles.

    Ce type de structure reprsente les P.A.L.P.A.L. les plus volues, car lesstructures de sorties dite versatile proposent quatre configurations possibles.suivant les valeurs de S0 et S1.

    Ce qui donne:

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 11

    Le plus clbre des circuits versatile est certainement le P.A.L.P.A.L. 22V10 de chezAMD. Il permet d'muler pratiquement tout les autres types de P.A.L.P.A.L. et disposed'un circuit de remise zro des registres la mise sous tension du circuit.

    Schma interne dun PAL 22V10 : ( GAL22V10 Lattice Semiconductor).

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 12

    III.3 Les rfrences des III.3 Les rfrences des P.A.L.

    Les constructeurs de P.A.L.P.A.L. ont standardis le marquage des P.A.L.P.A.L.

    Chez AMD:

    Chez TEXAS INSTRUMENTS:

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 13

    Exemples:

    Un PAL 16L8 : 16 entres maximum, 8 sorties maximum et il dispose dunestructure de sortie active sur niveau bas.

    PALPAL EntresEntresmaxmax

    Input (I)Input (I)

    SortiesSortiesmaxmax

    Output (O)Output (O)

    Entres /Entres /SortiesSorties

    (I/O)(I/O)

    RegistresRegistres FonctionFonction

    10H8 10 8 AND OR12H6 12 6 AND OR14H4 14 4 AND OR16H2 16 2 AND OR10L8 10 8 AND OR INVERT12L6 12 6 AND OR INVERT14L4 14 4 AND OR INVERT16L2 16 2 AND OR INVERT16C1 16 1 AND-OR /AND OR-INVERT16L8 10 8 6 AND OR INVERT16R8 8 8 8 AND OR INVERT-REGISTER16R6 8 8 2 6 AND OR INVERT-REGISTER16R4 8 8 4 4 AND OR INVERT-REGISTER16X4 8 8 4 4 AND OR INVERT-XOR-REGISTER16A4 8 8 4 4 AND CARRY-OR-XOR-INVERT-REGISTER

    III.4 La duplication de III.4 La duplication de P.A.L. et le bit de scurit. et le bit de scurit.

    Un circuit P.A.L.P.A.L. peut tre dupliqu comme une EPROM, pour le protger lesconstructeurs ont ajout un bit dit de scurit. Si ce bit est programm alors lecircuit ne peut plus tre relu.

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 14

    IV LES C.P.L.D.s (IV LES C.P.L.D.s (Complex Programmable Complex Programmable Logic Logic Device).Device).

    Ces circuits ont une capacit en nombre de portes et en possibilits deconfiguration trs suprieure celle des PALs. Leurs architectures sont bases surcelles des PALS. Un CPLD cest lquivalent de plusieurs PALs mis dans le mmecircuit associ une zone dinterconnexion. Le nombres de portes peut varier entre100 et 100 000 portes logiques et entre 16 et 1000 bascules voir plus.

    Structure gnrale dun CPLD.Structure gnrale dun CPLD.

    Exemple de CPLD le circuit Isp1016 de LATTICE :

    BlocBloclogiquelogique

    BlocBloclogiquelogique

    BlocBloclogiquelogique

    ZoneZonedinter-dinter-

    connexionconnexion

    Macro cellulesMacro cellulescomposes de:composes de:

    - - une une zne de zne de portesporteslogiqueslogiques- - une une basculebascule

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 15

    V LES F.P.G.A.s (Fields Programmable V LES F.P.G.A.s (Fields Programmable Gate Gate Array).Array).

    les FPGAs la diffrence des CPLDs sont assimilables desA.S.I.C. (ApplicationApplication Specific Specific Integrated Circuit)Integrated Circuit) programmables par lutilisateur.La puissance de ces circuits est telle quils peuvent tre composs de plusieursmilliers voire millions de portes logiques et de bascules. Les dernires gnrationsde FPGA intgrent mme de la mmoire vive (RAM). Les deux plus grandsconstructeurs de FPGA sont XILINX et ALTERA.

    Ils sont composs de blocs logiques lmentaires (plusieurs milliers de portes) quipeuvent tre interconnects.

    De plus en plus les capacits des CPLDs et des FPGAs se rapprochent. Le principalcritre de choix entre les deux familles est la vitesse de fonctionnement. En effetles CPLDs acceptent des frquences de fonctionnement beaucoup plus levesque les FPGAs.

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 16

    VI Les outils de dveloppements.VI Les outils de dveloppements.

    Ils sont composs en gnral de deux outils:- Le systme de dveloppement.- Le programmateur.

    VI.1 Le systme de dveloppement.VI.1 Le systme de dveloppement.

    Ces systmes produisent une table reprsentant les fusibles dtruire enfonction des quations logiques, diagramme d'tats et tables de vrits crit dansle langage propre au systme, c'est le rle du compilateur ou synthtiseur.

    La description du fonctionnement des circuits peut se faire de plusieursfaons, soit :

    - Par un schma base de fonctions logique lmentaires (PortesET,OU,NON, bascules, compteurs, registres dcalages).

    VERT1

    U32

    INV

    1 2

    Q3

    U38

    AND4

    1

    2

    3

    4

    5

    U26

    NAND2

    1

    23

    67

    Q0A

    U20

    NAND3

    1

    2

    3

    4

    76

    D

    U19

    INV

    1 2

    3

    U17

    OB11

    1 2

    77

    U35

    OB11

    1 2

    U24

    OB11

    1 2

    U10

    IB11

    1 2

    5

    U29

    INV

    1 2

    Q1

    D

    ORANGE2

    COMPTEUR

    COMPTEURP

    CLK

    Q0

    Q1

    Q2

    Q3

    C

    U23

    OB11

    1 2

    C

    78

    U22

    NAND2

    1

    23

    12

    6

    D

    U25

    NAND2

    1

    23

    ORANGE1

    D

    U30

    OB11

    1 2

    B

    A

    B

    U18

    OB11

    1 2

    C

    A

    U27

    NAND2

    1

    23

    13

    U36

    OB11

    1 2

    U15

    OB11

    1 2

    B

    U28

    INV

    1 2

    U16

    OB11

    1 2

    ROUGE2

    C

    B

    VERT211

    D

    4

    ROUGE1

    U31

    OB11

    1 2

    Q2

    U21

    NAND2

    1

    23

    B

    U37

    AND4

    1

    2

    3

    4

    5

    CLK

    C

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 17

    - En utilisant un langage de description comportementale H.D.L.H.D.L. (HHardwareDDescription LLanguage). Les plus anciens sont PALASMPALASM, ORCAD/PLDORCAD/PLD et leplus connu et utilis est sans conteste ABELABEL (utilis par la plus part dessystmes de dveloppements). Enfin les langages dit de haut niveau, VHDLVHDL(VVery high speed HHardware DDescription LLanguage) et VERILOG sont engnral utiliss pour des circuits complexes. Le langage VHDL est trs utilisen Europe.

    ORCAD/PLD :|GAL16V8 in:(A15,A14,A13,A11,A10),| io:(RAM0,RAM1,RAM2,RAM3,ROM,INTER1,INTER2,INTER3)|| RAM0 = (A15' & A11' & A10')'| RAM1 = (A15' & A11' & A10)'| RAM2 = (A15' & A11 & A10')'| RAM3 = (A15' & A11 & A10)'| ROM = (A15 & A14 & A13)'| INTER1 = (A15 & A14' & A13')'| INTER2 = (A15 & A14 & A13)'| INTER3 = (A15 & A14 & A13')'

    ABELABEL : :module tp1title 'decodage d adresse'

    declarationsA15,A14,A13,A11,A10 pin;RAM0, RAM1, RAM2, RAM3, ROM, INTER1, INTER2, INTER3 pin istype 'com';x =.X.;

    adresse = [A15,A14,A13,x, A11,A10,x,x, x,x,x,x, x,x,x,x];

    equations!RAM0 = (adresse >=^h0000) & (adresse =^h0400) & (adresse =^h0800) & (adresse =^h0C00) & (adresse =^hE000) & (adresse =^h8000) & (adresse =^hA000) & (adresse =^hC000) & (adresse

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 18

    RESET

    CLK BCD_D(3:0)

    BCD_C(3:0)

    BCD_B(3:0)

    BCD_A(3:0)

    GATE

    CNT_BCD

    U1

    F_PATTERN

    RESET

    START

    F_INPUT

    GATE

    END_RESET

    HEX(3:0) LED(6:0)

    U2

    hex2led

    HEX(3:0) LED(6:0)

    U3

    hex2led

    HEX(3:0) LED(6:0)

    U4

    hex2led

    HEX(3:0) LED(6:0)

    U5

    hex2led

    BCD_D(3:0)

    BCD_C(3:0)

    BCD_B(3:0)

    BCD_A(3:0) LED_A(6:0)

    LED_B(6:0)

    LED_C(6:0)

    LED_D(6:0)

    END_RESET

    GATE

    START

    RESET

    F_PATTERN

    CONTROL

    U0

    - En utilisant un schma et des descriptions en langage de haut niveau detype VHDL.

    -

    -

    library IEEE;use IEEE.std_logic_1164.all;

    entity hex2led is port ( HEX: in STD_LOGIC_VECTOR (3 downto 0); LED: out STD_LOGIC_VECTOR (6 downto 0) );end hex2led;

    --}} End of automatically maintained section

    architecture hex2led of hex2led is-- segment encoding-- 0-- ----- 5 | | 1-- ---

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 19

    Par lutilisation de graphes dtats. (FSM : Flow States Machines)

    Quelques systmes de dveloppements connusQuelques systmes de dveloppements connus : :

    1) Synario de LATTICE SEMI CONDUCTOR (Schma, ABEL et VHDL)WEB : http://www.latticesemi.com

    2) Express dORCAD (Schmas, VHDL)WEB : http://www.orcad.com/ pour la France WEB : http://www.alsdesign.fr/

    3) ViewPLD de VIEW LOGIC (schmas, ABEL et VHDL)WEB : http://www.viewlogic.com

    4) StateCad de STATECAD (Graphes dtats).WEB : http://www.statecad.com/

    5) Active VHDL de ALDEC (Schmas, VHDL et Graphes dtats ).WEB : http://www.aldec.com/

    6) Warp de CYPRESS (VHDL et graphes dtats).WEB : http://www.cypress.com/

    7) MaxPlus dALTERA (Schmas, VHDL et Graphes dtats).WEB : http://www.altera.com/

    8) Foundation dXILINX (Schmas, VHDL et Graphes dtats).WEB : http://www.xilinx.com/

    START='1'

    START='0'RESET='1'

    END_CYCLE OPEN_GATE

    IDLE

    GATE

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 20

    VI.2 Description gnrale de la chane des outils utiliss pour mettre au pointVI.2 Description gnrale de la chane des outils utiliss pour mettre au pointdes circuits logiques programmables.des circuits logiques programmables.

    VI.2.1 Pour les PALs.VI.2.1 Pour les PALs.

    Ces outils peuvent possder d'un simulateur logique pour vrifier laprogrammation du circuit.

    Le format de la table des fusibles dtruire a t normalis par lesconstructeurs de circuits pour qu'il puisse tre accept par le programmateurprogrammateur deP.A.L.P.A.L., c'est le format JEDEC (Format de fichier de programmation des circuitslogiques : image des fusibles griller).

    VI.2.1.1 Le programmateur.VI.2.1.1 Le programmateur.

    Il permet de:- Vrifier la virginit du circuit.- Lire le fichier au format JEDEC.- Programmer le circuit.- Vrifier la programmation.

    Il se prsente souvent par une carte insrer dans le PC relie un supportde programmation et d'un logiciel permettant le dialogue entre lui et l'utilisateur.

    VI.2.1.2 Schma fonctionnel d'un outil de dveloppement de PAL.VI.2.1.2 Schma fonctionnel d'un outil de dveloppement de PAL.

    Programmateur

    Utilisateur

    Equation, table de vrit ,Diagramme d'tatexprim dans le langage dusystme de dveloppement

    Compte rendude compilation

    Directive et compte rendu de simulation

    Fichier au format JEDEC

    Circuit PALprogramm

    Compilateur

    Simulateur

    Systme dedveloppement

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 21

    VI.2.2 Pour les CPLDs et FPGAs.VI.2.2 Pour les CPLDs et FPGAs.

    VI.2.2.1 Schma fonctionnel d'un outil de dveloppement de FPGA /CPLD.VI.2.2.1 Schma fonctionnel d'un outil de dveloppement de FPGA /CPLD.

    library IEEE;use IEEE.std_logic_1164.all;useIEEE.STD_LOGIC_UNSIGNED.all;

    entity CNT_4B is port ( CLK: in STD_LOGIC; RESET: in STD_LOGIC; ENABLE: in STD_LOGIC;

    FULL: out STD_LOGIC; Q: out STD_LOGIC_VECTOR(3 downto 0) );

    VERT1

    U32

    INV

    1 2

    Q3

    U38

    AND4

    1

    2

    3

    4

    5

    U26

    NAND2

    1

    23

    67

    Q0A

    U20

    NAND3

    1

    2

    3

    4

    76

    D

    U19

    INV

    1 2

    3

    U17

    OB11

    1 2

    77

    U35

    OB11

    1 2

    U24

    OB11

    1 2

    U10

    IB11

    1 2

    5

    U29

    INV

    1 2

    Q1

    D

    ORANGE2

    COMPTEUR

    COMPTEURP

    CLK

    Q0

    Q1

    Q2

    Q3

    C

    U23

    OB11

    1 2

    C

    78

    U22

    NAND2

    1

    23

    12

    6

    D

    U25

    NAND2

    1

    23

    ORANGE1

    D

    U30

    OB11

    1 2

    B

    A

    B

    U18

    OB11

    1 2

    C

    A

    U27

    NAND2

    1

    23

    13

    U36

    OB11

    1 2

    U15

    OB11

    1 2

    B

    U28

    INV

    1 2

    U16

    OB11

    1 2

    ROUGE2

    C

    B

    VERT211

    D

    4

    ROUGE1

    U31

    OB11

    1 2

    Q2

    U21

    NAND2

    1

    23

    B

    U37

    AND4

    1

    2

    3

    4

    5

    CLK

    C

    START='1'

    START='0'RESET='1'

    END_CYCLE OPEN_GATE

    IDLE

    GATE

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 22

    VII) LexiqueVII) LexiqueASIC (Application ASIC (Application Specific Specific Integrated Circuit) :Integrated Circuit) : Circuit non programmableconfigur lors de sa fabrication pour une application spcifique.

    CPLD (CPLD (Complex Programmable Complex Programmable Logic Logic Device) :Device) : Dsigne des PLD ayant un hautniveau d'intgration.

    EEPROM ou E2PROM (EEPROM ou E2PROM (Electrical Electrical Erasable Programmable RErasable Programmable Read-Only Memory) :ead-Only Memory) :Mmoire programmable lecture seule, effaable lectriquement.

    EPLD (EPLD (Erasable Programmable Erasable Programmable Logic Logic Device) :Device) : Circuits logiquesreprogrammables.

    EPROM (EPROM (Erasable Programmable RErasable Programmable Read-Only Memory) :ead-Only Memory) : Mmoire programmable lecture seule, effaable par ultraviolets.

    FPGA (FPGA (Forecasting Programmable Forecasting Programmable Gate Gate Array) :Array) : Rseau de portes programmables la demande. Technologie qui utilise des circuits encapsuls comportant desrseaux de portes logiques non relies : lutilisateur ralise les interconnexionsncessaires par programmation.

    FPLS (Field Programmable FPLS (Field Programmable Logic Logic Sequencer) :Sequencer) : Ancien nom donn aux PAL registres.

    GAL (GAL (Generic Generic Array Array Logic) :Logic) : Circuits logiques PAL reprogrammables technologieCMOS.

    ISP (In System Programmable) :ISP (In System Programmable) : Circuit que lon peut programmer (et donc effacer)mme lorsquil est en place sur lapplication.

    JEDEC :JEDEC : Format de fichier de programmation des circuits logiques (image desfusibles griller).

    LSI (Large LSI (Large Scale Scale Integration) :Integration) : Intgration grande chelle : circuits regroupantquelques centaines quelques milliers de portes logiques (CI de tlcommande,dcodeur de code barre, etc ).

    MSI (MSI (Medium Medium Scale Scale Integration) :Integration) : Intgration chelle moyenne : circuitsregroupant quelques dizaines de portes logiques (dcodeurs, multiplexeurs,bascules ).

    PAL (Programmable PAL (Programmable Array Array Logic) :Logic) : Circuits logiques programmables danslesquels seules les fonctions ET sont programmables, les fonctions OU ne le sontpas.

    PAL CMOS ou PAL EECMOS :PAL CMOS ou PAL EECMOS : c.f. GAL.

    PLD (Programmable PLD (Programmable Logic Logic Device) :Device) : Famille des circuits programmables quicomprend les PAL, GAL, EPLD et FPGA.

    SSI (Small SSI (Small Scale Scale Integration) :Integration) : Intgration petite chelle : circuit ne regroupantque quelques portes logiques (fonctions de base des sries 74 ou 4000).

    VHDL :VHDL : Langage de programmation utilis pour programmer les PLD.

    VLSI (VLSI (Very Large Very Large Scale Scale Integration) :Integration) : Intgration trs grande chelle : circuitsregroupant quelques dizaines de milliers de portes logiques (microprocesseurs ).

  • Les Circuits Logiques Programmables (P.L.D.)

    S.T.S. GRANVILLE Philippe LETENNEUR page 23

    VIII) BIBLIOGRAPHIEVIII) BIBLIOGRAPHIE

    Circuits logiques programmablesCircuits logiques programmables (Christian Tavernier - DUNOD, Paris, 1996)

    Guide du technicien en lectroniqueGuide du technicien en lectronique (C. Cimelli, R. Bourgeron - HACHETTE,Paris, 1995)

    Electronique RElectronique Radio-Plansadio-Plans (n 567).

    ElektorElektor (n 197, novembre 1994).

    Lexique lectroniqueLexique lectronique (P. Roussel - NATHAN, 1996).

    IX) ILLUSTRATIONS .IX) ILLUSTRATIONS .

    Circuits logiques programmablesCircuits logiques programmables (Christian Tavernier - DUNOD, Paris, 1996)

    Guide du technicien en lectroniqueGuide du technicien en lectronique (C. Cimelli, R. Bourgeron - HACHETTE,Paris, 1995)

    Document raliss par Document raliss par L.P. AMPERE - 13010 MARSEILLEL.P. AMPERE - 13010 MARSEILLE