Introduction à la Synthèse logique V.H.D.L.· modèle choisit) le projet en portes logiques et bascules

Embed Size (px)

Text of Introduction à la Synthèse logique V.H.D.L.· modèle choisit) le projet en portes logiques et...

  • Introduction la Synthse logique

    V.H.D.L.

    Lyce Julliot de la Morandire GRANVILLE 2001Philippe LECARDONNEL & Philippe LETENNEUR

  • SOMMAIRE

    I) INTRODUCTION. .................................................................................................... 2

    II) RELATION ENTRE UNE DESCRIPTION VHDL ET LES CIRCUITS LOGIQUESPROGRAMMABLES. ................................................................................................. 3

    II.1) SCHMA FONCTIONNEL DIMPLANTATION DE DESCRIPTIONS VHDL DANS UN CIRCUIT LOGIQUEPROGRAMMABLE. ................................................................................................................................... 3II.2) LAFFECTATION DES BROCHES DENTRES SORTIES. ........................................................................ 3II.3) ORGANISATION FONCTIONNELLE DE DVELOPPEMENT DUN PLD. ..................................................... 4

    III) STRUCTURE DUNE DESCRIPTION VHDL SIMPLE. ......................................... 5III.1) DCLARATION DES BIBLIOTHQUES. ............................................................................................... 6III.2) DCLARATION DE LENTIT ET DES ENTRES / SORTIES (I/O)............................................................ 6

    III.2.1) Le NOM_DU_SIGNAL. ............................................................................................................ 7III.2.2) Le SENS du signal. ................................................................................................................ 7III.2.3) Le TYPE................................................................................................................................7III.2.4) Affectation des numros de broches en utilisant des attributs supplmentaires: ................. 8III.2.5) Exemples de description dentits:........................................................................................ 9

    III.3) DCLARATION DE LARCHITECTURE CORRESPONDANTE LENTIT :DESCRIPTION DU FONCTIONNEMENT....................................................................................................... 10

    IV) LES INSTRUCTIONS DE BASE (MODE CONCURRENT ), LOGIQUECOMBINATOIRE...................................................................................................... 12

    IV.1) LES OPRATEURS. ....................................................................................................................... 13IV.1.1) Laffectation simple :

  • Introduction la Synthse logique - VHDL

    S.T.S. GRANVILLE P.L.s page 2

    I) Introduction.

    Pourquoi avoir cr un langage de description de structures lectroniques (H.D.L.Hardware Description language) VHDL ?

    Labrviation VHDL signifie VHSIC Hardware Description Language (VHSIC : VeryHigh Speed Integrated Circuit). Ce langage a t crit dans les annes 70 pour raliser lasimulation de circuits lectroniques. On la ensuite tendu en lui rajoutant des extensionspour permettre la conception (synthse) de circuits logiques programmables (P.L.D. Pro-grammable Logic Device).

    Auparavant pour dcrire le fonctionnement dun circuit lectronique programmableles techniciens et les ingnieurs utilisaient des langages de bas niveau (ABEL, PALASM,ORCAD/PLD,..) ou plus simplement un outil de saisie de schmas.

    Actuellement la densit de fonctions logiques (portes et bascules) intgre dans lesPLDs est telle (plusieurs milliers de portes voire millions de portes) quil nest plus possibledutiliser les outils dhier pour dvelopper les circuits daujourdhui.

    Les socits de dveloppement et les ingnieurs ont voulu saffranchir des contrain-tes technologiques des circuits. Ils ont donc cr des langages dits de haut niveau savoirVHDL et VERILOG. Ces deux langages font abstraction des contraintes technologies descircuits PLDs.

    Ils permettent au code crit dtre portable, cest dire quune description crite pourun circuit peut tre facilement utilise pour un autre circuit.

    Il faut avoir lesprit que ces langages dits de haut niveau permettent de matrialiserles structures lectroniques dun circuit.

    En effet les instructions crites dans ces langages se traduisent par une configura-tion logique de portes et de bascules qui est intgre lintrieur des circuits PLDs. Cestpour cela que je prfre parler de description VHDL ou VERILOG que de langage.

    Dans ce polycopi, je mintresserai seulement VHDL et aux fonctionnalits debase de celui-ci lors des phases de conception ou synthse (cest dire la conception dePLDs).

  • Introduction la Synthse logique - VHDL

    S.T.S. GRANVILLE P.L.s page 3

    II) Relation entre une description VHDL et les circuits logiques program-mables.

    Dcrire le fonctionnement dun circuit logique programmable cest bien, mais com-ment faire le lien avec la structure de celui-ci ?

    Limplantation dune ou de plusieurs descriptions VHDL dans un PLD va dpendrede laffectation que lon fera des broches dentres / sorties et des structures de base ducircuit logique programmable.

    II.1) Schma fonctionnel dimplantation de descriptions VHDL dans un circuit logiqueprogrammable.

    BLOCVHDL N1

    BLOCVHDL N5Synchro

    BLOCVHDL N2

    BLOCVHDL N3

    BLOCVHDL N4

    E1

    E2

    E3

    E4 (CLK)

    S1

    S2

    S3

    S4

    Ci-dessus le schma reprsente un exemple dimplantation de descriptions VHDL oude blocs fonctionnels implants dans un PLD. Lors de la phase de synthse chaque blocsera matrialis par des portes et/ou des bascules. La phase suivante sera dimplanter lesportes et les bascules lintrieur du circuit logique.

    Cette tche sera ralise par le logiciel placement/routage ( Fitter ), au cours delaquelle les entres et sorties seront affectes des numros de broches.

    On peut remarquer sur le schma la fonction particulire du bloc VHDL N5. En effetdans la description fonctionnelle dun PLD on a souvent besoin dune fonction qui sert cadencer le fonctionnement de lensemble, celle-ci est trs souvent ralise par une ma-chine dtats synchronise par une horloge.

    II.2) Laffectation des broches dentres sorties.Elle peut se faire de plusieurs manires :1) Laffectation automatique.On laisse le synthtiseur et le Fitter du fabriquant ( Fondeur : Xilinx, Lattice, Al-tra, Cypress...) du circuit implanter la structure correspondant la descriptionVHDL. Les numros de broches seront choisis de faon automatique.

    2) Laffectation manuelle.On dfinit les numros de broches dans la description VHDL ou sur un schma blocdfinissant les liaisons entre les diffrents blocs VHDL ou dans un fichier texte pro-pre au fondeur. Les numros de broches seront affects suivant les consignes don-nes. (voir page N 8).

  • Introduction la Synthse logique - VHDL

    Entre schmatique

    Vde

    VHDL

    Il convecible (Cmodleportes bases. De plusdes conpar exefonctio

    Pd

    SYNTHETISEURS CONNUS:

    - FPGA Expres (Synosys). - EXEMPLAR (Exemplar). - SYNPLICITY (Synplicity).

    Outils de placement et routage interne au circuit. Cet outil est propre chaque fabriquant

    La programmation du circuit peut se faire soit: - En utilisant un programmateur. - En tlchargement le code JEDEC directement sur lobjet technique (JTAG ou ISP)

    II.3) Organisation fonctionnelle de dveloppement dun PLD.

    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

  • Introduction la Synthse logique - VHDL

    S.T.S. GRANVILLE

    III) Structure dune description VHDL simple.Une description VHDL est compose de 2 parties indissociables savoir :- Lentit (ENTITY), elle dfinit les entres et sorties.- Larchitecture (ARCHITECTURE), elle contient les instructions VHDL permettant

    de raliser le fonctionnement attendu.

    Exemple : Un dcodeur 1 parmi 4.

    library ieee;Use ieee.std_logic_1164.all;Use ieee.numeric_std.all;

    -- dcodeur-- Un parmi quatre

    entity DECOD1_4 isport(IN0, IN1: in std_logic; D0, D1, D2, D3: out std_logic);

    end DECOD1_4;

    architecture DESCRIPTION of DECOD1_4 isbegin

    D0

  • Introduction la Synthse logique - VHDL

    S.T.S. GRANVILLE P.L.s page 6

    III.1) Dclaration des bibliothques.

    Toute description VHDL utilise pour la synthse a besoin de bibliothques. LIEEE(Institut of Electrical and Electronics Engineers) les a normalises et plus particulirement labibliothque IEEE1164. Elles contiennent les dfinitions des types de signaux lectroni-ques, des fonctions et sous programmes permettant de raliser des oprations arithmti-ques et logiques,...

    Library ieee;Use ieee.std_logic_