les circuits logiques programmables … · 2016-12-08 · enseirb les circuits logiques...

35
ENSEIRB ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs - 1 / 70 - LES CIRCUITS LOGIQUES PROGRAMMABLES ALTERA ENSEIRB Laurent DULAU Patrice KADIONIK email : [email protected] http : http://kadionik.vvv.enseirb.fr ENSEIRB ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs - 2 / 70 - CETTE FORMATION EN LIGNE PRESENTE LES PRINCIPAUX COMPOSANTS ET OUTILS D’ALTERA ON TROUVERA DES INFORMATIONS : - UNE PRESENTATION DES PRINCIPALES FAMILLES DE COMPOSANTS PROGRAMMABLES - UNE PRESENTATION DE L’OUTIL MAX+PLUS II - UNE PRESENTATION DU LANGAGE AHDL - UNE PRESENTATION DU LANGAGE VHDL - UN EXEMPLE DE CONCEPTION AVEC L’OUTIL MAX+PLUS II

Upload: lethu

Post on 16-Sep-2018

231 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 1 / 70 -

LES CIRCUITS LOGIQUES

PROGRAMMABLES

ALTERA

ENSEIRB

Laurent DULAU

Patrice KADIONIKemail : [email protected]

http : http://kadionik.vvv.enseirb.fr

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 2 / 70 -

CETTE FORMATION EN LIGNE PRESENTE LES PRINCIPAUX

COMPOSANTS ET OUTILS D’ALTERA

ON TROUVERA DES INFORMATIONS :

- UNE PRESENTATION DES PRINCIPALES FAMILLES DE COMPOSANTS

PROGRAMMABLES

- UNE PRESENTATION DE L’OUTIL MAX+PLUS II

- UNE PRESENTATION DU LANGAGE AHDL

- UNE PRESENTATION DU LANGAGE VHDL

- UN EXEMPLE DE CONCEPTION AVEC L’OUTIL MAX+PLUS II

Page 2: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 3 / 70 -

Introduction à la logique programmable

• Pas vraiment des ASICs.

• Personnalisation et mise en œuvre simple.

• Composant directement disponible sur catalogue.

• Pas de retour chez le fabricant sauf pour les

versions masquables.

• PAL, GAL, PLD, EPLD, FPGA

• 4 technologies : EPROM, EEPROM, SRAM,

ANTIFUSIBLE

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 4 / 70 -

• 2 architectures :

– Les PLD : EPROM, EEPROM

(Programmable Logic Device)

Ce sont des assemblages de macro-cellules fonctionnelles

disposant de beaucoup d’entrées/sorties placées sur la

pastille de part et d’autre d’une zone centrale où sont

regroupées toutes les connexions à réaliser.

Page 3: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 5 / 70 -

– Les FPGA : SRAM, ANTIFUSIBLE

(Field Programmable Gate Array)

Provenant des réseaux de portes, conservent de

leurs origines une structure en nombreux petits

îlots entourés chacun par des lignes où ils se con-

nectent à la demande.

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 6 / 70 -

• Fabricants / technologies

ACTEL ANTIFUSE, SRAM

ALTERAEPROM, EEPROM,

SRAM

AMD EEPROM

ATMEL SRAM

LATTICE EPROM, EEPROM

XILINXSRAM, ANTIFUSE,

EPROM, EEPROM

Page 4: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 7 / 70 -

• La technologie EEPROM

– Les EPLD à EPROM sont programmables

électriquement et effaçables aux UV. Par contre les

EPLD à EEPROM se reprogramment quasi

instantanément et conservent la configuration donnée

jusqu’à ce qu’une autre la remplace même en l’absence

de tension.

• La technologie SRAM

– Rapide et facile à programmer.

– (!) La configuration du composant s’efface dès que la

tension disparaît.

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 8 / 70 -

ALTERA

• Historique

– La société ALTERA est fondée en 1984

– Premier circuit ALTERA commercialisé en

EUROPE par TEKELEC en 1985

Page 5: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 9 / 70 -

ALTERA

• 8 familles :

– Classic (EPROM)

– MAX5000 (EPROM)

– FLASHlogic (SRAM & FLASH)

– MAX7000 (E2PROM)

– MAX9000 (E2PROM)

– FLEX 6K (SRAM)

– FLEX 8K (SRAM)

– FLEX 10K (SRAM)

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 10 / 70 -

ALTERA/CLASSIC

• Architecture : EPLD

• Techno : CMOS EPROM

• Nbre de portes : 300-900

• Nbre d’E/S : 22-64

• Fmax : 50-100 MHz

• I/O drive : 25 mA

Page 6: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 11 / 70 -

ALTERA/CLASSIC• architecture

• Caractéristiques :

– EPLD très rapide

– Faible consommation

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 12 / 70 -

ALTERA/MAX 5000

• Architecture : EPLD type MAX (Multiple

Array matriX)

• Techno : CMOS 0.65µm EPROM

• Nbre de portes : 600-3750

• Nbre d’E/S : 24-72

• Fmax : 50-77 MHz

• I/O drive : 25 mA

Page 7: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 13 / 70 -

ALTERA/MAX 5000

• architecture

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 14 / 70 -

ALTERA/MAX 5000

• Caractéristiques :

– EPLD rapide

– Faible coût

– Utilisation facile

• Applications :

– Décodeur d’adresses 20 pins

– Périphériques LSI 100 pins

Page 8: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 15 / 70 -

ALTERA/FLASHlogic

• Architecture : PLD

• Techno : CMOS 0.65µm SRAM

• Nbre de portes : 1600-3200

• Nbre d’E/S : 62-172

• Fmax : 80 MHz

• I/O drive : 25 mA

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 16 / 70 -

ALTERA/FLASHlogic

• architecture

Page 9: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 17 / 70 -

ALTERA/FLASHlogic

• Caractéristiques :

– PLD rapide

– Faible coût

– Utilisation facile

• Applications :

– Décodeur d’adresses 20 pins

– Périphériques LSI 100 pins

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 18 / 70 -

ALTERA/MAX 7000

• Architecture : CPLD type MAX (Multiple

Array matriX)

• Techno : CMOS 0.6µm E2PROM

• Nbre de portes : 600-5000

• Nbre d’E/S : 36-164

• Tpd : 5-10 ns

• I/O drive : 25 mA

Page 10: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 19 / 70 -

ALTERA/MAX 7000

• Architecture

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 20 / 70 -

ALTERA/MAX 7000

• Caractéristiques :

– Très rapide

– Très dense

– Grand nombre d’E/S

– 3.3V/5V sur les E/S (5V sur le cœur)

– ISP (MAX 7000S) par bus JTAG

– Test JTAG Boundary Scan (MAX 7000S)

– Délais prédictibles (interconnections continues)

Page 11: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 21 / 70 -

ALTERA/MAX 9000

• Architecture : EPLD type MAX (Multiple

Array matriX)

• Techno : CMOS 0.65µm E2PROM

• Nbre de portes : 6000-12000

• Nbre d’E/S : 159-216

• Tpd : 12-15 ns

• I/O drive : 25m A

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 22 / 70 -

ALTERA/MAX 9000

• Architecture

Page 12: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 23 / 70 -

ALTERA/MAX 9000

• Caractéristiques :

– Très rapide

– Très dense

– Grand nombre d’E/S

– 3.3V/5V sur les E/S (5V sur le cœur)

– ISP par bus JTAG

– Test JTAG Boundary Scan

– Délais prédictibles (interconnections continues)

– Programmation en chaîne par bus JTAG via le

module Bit Blaster

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 24 / 70 -

ALTERA/FLEX 6000

• Architecture : FPGA type OptiFLEX

(Flexible Logic Element matriX)

• Techno : CMOS 0.35 ou 0.5µm SRAM

• Nbre de portes : 5000 à 24000

• Nbre d’E/S : 160 à 215

• Tpd :

• I/O drive : 25 mA

Page 13: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 25 / 70 -

ALTERA/FLEX 6000

• Architecture

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 26 / 70 -

ALTERA/FLEX 6000

• Caractéristiques :

– faible consommation (1mA en stand by)

– Très dense

– Compatible norme PCI

– 3.3V/5V

– Test JTAG Boundary Scan

– Programmation en chaîne par bus JTAG via le

module Bit Blaster

Page 14: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 27 / 70 -

ALTERA/FLEX 8000

• Architecture : FPGA type FLEX (Flexible

Logic Element matriX)

• Techno : CMOS 0.65µm SRAM

• Nbre de portes : 2500-16000

• Nbre d’E/S : 78-208

• Tpd :

• I/O drive : 25 mA

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 28 / 70 -

ALTERA/FLEX 8000

• Architecture

Page 15: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 29 / 70 -

ALTERA/FLEX 8000

• Caractéristiques :

– faible consommation (1mA en standby)

– Très dense

– Grand nombre d’E/S

– 3.3V/5V sur les E/S (5V sur le cœur)

– Test JTAG Boundary Scan

– Programmation en chaîne par bus JTAG via le

module Bit Blaster

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 30 / 70 -

ALTERA/FLEX 10K

• Architecture : Mer de portes type FLEX

(Flexible Logic Element matriX)

• Techno : CMOS 0.5µm SRAM

• Nbre de portes : 10000-130000

(250000 Déc97)

• Nbre d’E/S : 134-406

• Tpd :

• I/O drive : 25 mA

Page 16: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 31 / 70 -

ALTERA/FLEX 10K

• Architecture

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 32 / 70 -

ALTERA/FLEX 10K

• Caractéristiques :

– faible consommation (1mA en stand by)

– Très dense

– Grand nombre d’E/S

– 3.3V/5V sur les E/S (5V sur le cœur)

– Test JTAG Boundary Scan

– Programmation en chaîne par bus JTAG via le

module Bit Blaster

– 6K-24K de RAM

Page 17: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 33 / 70 -

ALTERA/FLEX 10K

• Applications :

– Petites mémoires (SRAM, FIFO)

– DSP et filtrage numérique

– Unité Arithmétique

– ATM, interface PCI...

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 34 / 70 -

• Plate-forme : Windows3.1, NT, 95, SUNOS,

SOLARIS

• Entrée du design

• Compilation du design

• Vérification du design

Page 18: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 35 / 70 -

Les différents menus

MAX+PLUS II

FILE

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 36 / 70 -

ASSIGN OPTIONS

Page 19: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 37 / 70 -

HELP

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 38 / 70 -

Floorplan Editor

Compiler

Hierarchy Display

Simulator

Timing Analyzer

Programmer

Open File

Project Name

Help

Top level design File

Save input file and check

Save input design file and

compile

Save input file and Simule

New File

Les Principaux icones

Page 20: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 39 / 70 -

Editeur graphique

double click pour insérer

un composant

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 40 / 70 -

Editeur de symbole

Page 21: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 41 / 70 -

Le langage AHDL

• Altera very High Speed Integrated Circuit Hardware Description Language

• Langage de description créé par Altera

• Plus souple et plus proche du composant que son grand frère VHDL

• Non exportable

• Possibilité par exemple d’inclure des composants des bibliothèques Altera

comme ceux de la serie 74xx ou de la librairie primaire comme par exemple

une bacule D DFF

• Machine d’état et compteur facile à mettre en œuvre

• Description par table

• Choix possible du type de composant Altera depuis le fichier

• Rétroannotation possible après compilation

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 42 / 70 -

Corps d’un fichier AHDL du type name.tdf

DESIGN IS 'name'

DEVICE IS '7032LC44';

%choix d'un composant%

CONSTANT x=n;

par exemple countmax =14 pour un

compteur

INCLUDE "4count"

appel au compteur 4count de la

bibliothèque

SUBDESIGN IS 'name'

(

in1 : INPUT = constante;

in2 : INPUT;

inout1 : BIDIR;

out1,out2[16..0] : OUTPUT;

state_machine_1 : MACHINE INPUT;

state_machine_1 : MACHINE OUTPUT;

)

VARIABLE %type de composant%

Q[n..0]: DFF; n+1 bacule D appelée Q0 à Qn

cpt: 4count;cpt est du type 4count

ss: MACHINE WITH STATES

(S0, S1, S2); ss est une machine d'état

BEGIN

END;

Page 22: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 43 / 70 -

FOR index_variable IN range

GENERATE

statement;

statement;

END GENERATE;

IF expression THEN

statement;

statement;

ELSIF expression

THEN

statement;

statement;

ELSE

statement;

statement;

END IF;

CASE expression IS

WHEN constant_value

=>

statement;

statement;

WHEN constant_value

=>

statement;

statement;

WHEN OTHERS =>

statement;

statement;

END CASE;

LES STRUCTURES IMPORTANTES

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 44 / 70 -

TABLE

node_name, node_name => node_name, node_name;

input_value, input_value => output_value, output_value;

input_value, input_value => output_value, output_value;

input_value, input_value => output_value, output_value;

END TABLE;VARIABLE

ss : MACHINE WITH STATES (etat0,etat1,etat2);

BEGIN

ss.clk = clk;

ss.reset=reset;

CASE ss IS

WHEN etat0 THEN

a=GND; b=VCC;

ss=etat1;

WHEN etat1 THEN

etc.....

END;

TABLE DE VERITE

GRAPHE D’ETATS

Page 23: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 45 / 70 -

Le langage VHDL

• Very High Speed Integrated Circuit Hardware Description Language

• Normalisation des langages de description ( norme IEEE 1076.87/93 )

– Uniformiser l’apprentissage

– Portabilité

– Bibliothèques

• Un modèle VHDL peut être :

– Comportemental : Décrit la fonctionnalité d’un objet par un algorithme

séquentiel, ou table de vérité, sans référence à une structure

d’implémentation quelconque.

– Flux de données : Décrit le flux entre entrée et sortie au niveau bit, par des

équations élémentaires.

– Structurel : Décrit la constitution de l’objet en un ensemble d’objets

élémentaires interconnectés ( proche du schéma ).

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 46 / 70 -

Structure hiérarchique d’un modèle VHDL

• Unité de conception primaire : vue externe d’un objet

– Entités (ENTITY) boite noire associé à une architecture décrivant la

hiérarchie et le comportement de cette boite.

– Paquetage (PACKAGE) ensemble de déclarations de composants,

utilisable comme une bibliothèque. Les composants sont définis dans

d’autres fichier VHDL.

• Unité de conception secondaire : modèle interne d’un objet

– Architecture relative à une entité (ARCHITECTURE)

Page 24: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 47 / 70 -

Syntaxe VHDL

• Ecriture des instructions : séquentielle ( Langage de programmation classique )

• Exécution : concurrente

– Processus :

• une instruction concurrente = un processus

• contient des instructions séquentielles

• 1 composant = ensemble de processus simultanés s’exécutant de

manière asynchrone et communiquant à travers des signaux

• classe d’objets :

– constantes

– variables ( affectation immédiate, :=)

– signaux spécifiques à la description de l’objet

• affectation séquentielle ( <= )

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 48 / 70 -

LIBRARY library_name;

ENTITY entity_name IS

PORT(

input1, input2 : IN STD_LOGIC;

input_vector : IN STD_LOGIC_VECTOR(high downto low);

bidir1, bidir2 : INOUT STD_LOGIC;

output1, output2: OUT STD_LOGIC);

END entity_name;

ARCHITECTURE a OF entity_name IS

SIGNAL signal_name : STD_LOGIC;

SIGNAL signal_name : STD_LOGIC;

BEGIN

END a;

Corps d’un fichier VHDL du type name.vhd

Page 25: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 49 / 70 -

--Une architecture contient généralement un processus.

process_label:

PROCESS

VARIABLE variable1 : STD_LOGIC;

VARIABLE variable2 : STD_LOGIC;

BEGIN

WAIT UNTIL clk_signal = '1'; si le processus est séquentiel

-- Signal Assignment Statement

-- Variable Assignment Statement

-- Procedure Call Statement

-- If Statement

-- Case Statement

-- Loop Statement

END PROCESS process_label;

LES PROCESSUS CONCCURENTS

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 50 / 70 -

• CASE expression IS

WHEN constant_value =>

statement;

statement;

WHEN constant_value =>

statement;

statement;

WHEN OTHERS =>

statement;

statement;

END CASE;

• IF expression THEN

statement;

statement;

ELSIF expression THEN

statement;

statement;

ELSE

statement;

statement;

END IF;

loop_label:

FOR index_variable IN __range

LOOP

statement;

statement;

END LOOP loop_label;

LES STRUCTURES IMPORTANTES

Page 26: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 51 / 70 -

UTILISER DES COMPOSANTS DE VOTRE

BIBLIOTHEQUE

• PACKAGE package_name

IS

-- Type Declaration

-- Subtype Declaration

-- Constant Declaration

-- Signal Declaration

-- Component Declaration

END package_name;

• COMPONENT component_name

PORT(

input1, input2 : IN STD_LOGIC;

bidir1, bidir2 : INOUT STD_LOGIC;

output1, output2 : OUT STD_LOGIC);

END COMPONENT;

--utiliser ce composant dans votre schéma :

instance_name: component_name

PORT MAP ( formal_parameter => actual_parameter,

formal_parameter =>

actual_parameter);

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 52 / 70 -

Les librairies

• la librairie Primaire

– portes, bascules, entrées, sorties

• La librairie EDIF (Electronic Design interchange Format)

– assure la compatibilité entre différentes sources ( Mentor, Cadence, Viewlogic)

– série 74xx...

• Les mégafonctions

– série74, multiplieur, compteur, registre...

• Les modules paramétrables LPM

– additionneur, multiplieur, UART, ROM, RAM, FIFO, FFT...

– intégrables au VHDL

• Le programme AMPP (Altera Megafunction Partners Program)

(modules disponibles sur catalogue)

– DSP, MPEG, DCT, ATM, PCI

Page 27: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 53 / 70 -

Le compilateur

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 54 / 70 -

Analyseur de temps3 types d’analyse :

– Delay Matrix

– Setup/Hold Matrix

– Registered Performance

Page 28: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 55 / 70 -

Editeur de hiérarchie

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 56 / 70 -

Editeur de courbes

Page 29: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 57 / 70 -

Le simulateur

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 58 / 70 -

Le programmateur

Page 30: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 59 / 70 -

Editeur de Floorplan Placement externe

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 60 / 70 -

Placement interne

Page 31: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 61 / 70 -

L’AIDE EN LIGNE

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 62 / 70 -

Le Bit Blaster

• Programmation des PLDs à partir d’un PC ou d’une station de travail par bus

série ou JTAG

• Vitesse de transfert : 9600/230000 b/s

• Programme les familles MAX 9000 et MAX7000S

• Configure Les séries FLEX lors de la mise au point

Page 32: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 63 / 70 -

Configuration des FLEX10K par EPROM

VCC VCC

nCONFIG

MSEL0

MSEL1

DCLK

DATA0

nSTATUT

CONF_DONE

nCE

DCLK

DATA

OE

nCS

FLEX10KEPC1

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 64 / 70 -

L’INTERFACE JTAG

• Norme IEEE1149.1 de test du

Joint Test Action Group.

• Test du composant sur le circuit

imprimé.

• L’interface comporte :

– Un registre de périphérie, le

Boundary Scan Register.

– Un registre d’instruction.

Le Boundary Scan Register

C’est un Registre à décalage

Page 33: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 65 / 70 -

Le registre d’instruction

• Impératifs de test :

– Observabilité : qualité des soudures.

– Contrôlabilité : Implantation du

programme de test après fabrication

puis configuration dédiéé à l’application

• Commande JTAG :

– Issue de la norme (sample, extest,

bypass.

– de reconnaissance (uescode : code

utilisateur, idcode : code constructeur

– pour adressage et stockage.

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 66 / 70 -

LE FREQUENCEMETRE

3 AFFICHEURS 7 SEGMENTS

3 DECODEURS BCD / 7 SEGMENTS

MEMORISATION ET COMPTAGEGENERATEUR D'IMPULSION

DIVISEUR PROGRAMMABLE

OSCILLATEUR

1MHz

SELECTEUR DE GAMME

SIGNAL D'ENTREE

Page 34: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 67 / 70 -

UNITE COMPTEUR

3 *BASCULES 74175

3 compteurs BCD 74390RETARD (2 inverseurs HEX)

SIGNAL D'ENTREE

RF CLK

RESET

CLK

RAZ

DESIGN SOUS FORME DE SCHEMA

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 68 / 70 -

DECODEUR BCD / 7SEGMENTSDESIGN SOUS FORME AHDL : PROCEDER PAR TABLE DE VERITE

digit a b c d e f g

0 1 1 1 1 1 1 0

1 0 1 1 0 0 0 0

2 1 1 0 1 1 0 1

3 1 1 1 1 0 0 1

4 0 1 1 0 0 1 1

5 1 0 1 1 0 1 1

6 1 0 1 1 1 1 1

7 1 1 1 0 0 0 0

8 1 1 1 1 1 1 1

9 1 1 1 1 0 1 1

Page 35: LES CIRCUITS LOGIQUES PROGRAMMABLES … · 2016-12-08 · ENSEIRB Les circuits logiques programmables Altera pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 69 / 70 -

DIVIVEUR DE FREQUENCE

DIVISEUR PAR 10

REALISE EN VHDL

(div10.vhd)

DIVISEUR PAR 10

REALISE EN VHDL

(div10.vhd)

DIVISEUR PAR 10

REALISE EN VHDL

(div10.vhd)

DIVISEUR PAR 10

REALISE EN VHDL

(div10.vhd)

DIVISEUR PAR 10

REALISE EN VHDL

(div10.vhd)

MULTIPLEXEUR

REALISE EN VHDL

(mux.vhd)

CLKOUT

CLKIN

f

e

d

c

b

a

choix

INIT

INIT

INIT INIT INIT INIT

REALISER UN FICHIER DIV10.VHD

ET UN FICHIER MUX.VHD.

FAIRE LE SCHEMA DIVISEUR.GDF

ENSEIRB ENSEIRB Les circuits logiques programmables Altera

pk/ld/enseirb/1998 v1.0 Reproduction et exploitation à des fins commerciales interdites sans l'accord exprès des auteurs

- 70 / 70 -

F

R

E

Q

U

E

N

C

E

M

E

T

R

E

.

G

D

F

DIVISEUR

DECODEUR.TDF

DECODEUR.TDF

DECODEUR.TDF

UNITE COMPTAGE

COMPTEURBCD.GDF

&

COMPTEUR 74393

UNITES

DIZAINES

CENTAINES

RF

RAZ

CLR

CLK

Q1D Q1B

UNITES

DIZAINES

CENTAINES

HORLOGE

CALIBRE

INIT

signal_inputFREQUENCE_IN