19
De la théorie à la pratique : Exemple De la théorie à la pratique : Exemple d’utilisation de FPGA dans une PME d’utilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand Bouyela Ngoyi Gérard Armand professeur: professeur: Pierre Langlois Pierre Langlois ÉCOLE POLYTECHNIQUE DE MONTRÉAL INF3500

De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

Embed Size (px)

Citation preview

Page 1: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

De la théorie à la pratique : Exemple d’utilisation de De la théorie à la pratique : Exemple d’utilisation de FPGA dans une PMEFPGA dans une PME

Bouyela Ngoyi Gérard ArmandBouyela Ngoyi Gérard Armand

professeur: professeur: Pierre LangloisPierre Langlois

ÉCOLE POLYTECHNIQUE DE MONTRÉAL

INF3500

Page 2: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

2

PLAN DE LA PRÉSENTATION

- Introduction / Parcours

- Présentation de la compagnie

- Utilisation de FPGA - Pourquoi utiliser un FPGA

- Exemple de design

- Conclusion

- Période de question ?

Page 3: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

3

INTRODUCTION

B . Ing / M.Sc.A – École Polytechnique de Montréal

Chargé de cours/ lab (INF1500/INF3500/ELE4302) Actuellement à l’emploi de Muxlab

- Transport & Distribution Audio / Vidéo sur câble torsadé

Tache : R&D Project leader / Ingénieur HW – SW - FW

Page 4: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

4

Présentation de Muxlab

PME montréalaise de 50 employés

Marché : distribution audio/vidéo/data sur câble torsadé

Les clients : Wal-Mart , aéroport , magasins , tours à bureaux , compagnies de sécurité ….

Page 5: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

5

Présentation de Muxlab

Application typique :

Page 6: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

6

Présentation de Muxlab

Application typique :

Page 7: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

7

UTILISATION DE FPGA

Retour sur la théorie :

Page 8: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

8

UTILISATION DE FPGA

Dans quel cas utiliser un FPGA ? :

• Traitements de signaux hautes vitesses.

• Nécessité de parallélisassions des traitements de signaux numériques.

• Réduction de cout : traitements logiques complexes.

Page 9: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

9

Exemple de design

HDMI sur fibre .

Page 10: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

10

Exemple de design

HDMI sur fibre .

TRANSMITTER RECEIVER

IR

RS-232

CEC

SCL

SDA

5V_STATUS

HPD

IR

RX

TX

FPGA

MUX/DEMUX

IR

HDMI OUT

RS-232

CEC

SCL

SDA

5V_STATUS

HPD

IR

RX

TX

FPGA

MUX/DEMUX

TRANSCEIVERS TRANSCEIVERS

DRIVER 38KHz MODULATOR

LIGNES BASSE VITESSE 5 MHz

HDMI IN

Choix du FPGA : LATTICE (LFXP3C)-TQFP100

Language utilisé : VHDL

Page 11: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

11

Exemple de design

HDMI sur fibre .

TRANSMITTER

OUTPUTS

FPGA

MUX/DEMUX

LIGNE BASSE VITESSE 5 MHzSerialisateur De-Serialisateur

SerialisateurDe-Serialisateur

INPUTS

RECEIVER

OUTPUTS

INPUTS

FPGAMUX/DEMUX

Page 12: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

12

Exemple de design

IMPLEMENTATION

• Sérialisateur

- Lectures des entrées.

- Traitements des données ( machine à états, synchrone )

- Écriture des données sur le lien.

• Dé-sérialisateur

- Synchronisation avec le lien.

- Traitements des données ( machine à états, synchrone )

- Écriture des données sur les sorties du système

Page 13: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

13

Exemple de design

IMPLEMTATION

TRANSMITTER

FPGA

LIGNE BASSE VITESSE 5 MHz

Serialisateur

INPUTS

RECEIVER

A=1

B=0

C=0

D=1

REGISTRES DES ENTREES

TRAITEMENTS

SERIALISATION

SYNC A=1 B=0 C=0 D=1 SYNC A=0 etc....

FPGA

REGISTRES DES SORTIES

TRAITEMENTS

Detection de la synchronisation

Dé-Serialisateur

A=1

B=0

C=0

D=1

Page 14: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

14

Exemple de design / Implémentation

2 Fichiers (VHDL)

1 TOP (mapping et bidirectionalité , environ 600 lignes de code )

SERDES (environ 1100 lignes de code)

Résultats de synthèseDesign Summary Number of registers: 549 PFU registers: 544 PIO registers: 5 Number of SLICEs: 409 out of 1536 (27%) SLICEs(logic/ROM): 409 out of 1152 (36%) SLICEs(logic/ROM/RAM): 0 out of 384 (0%) As RAM: 0 As Logic/ROM: 0 Number of logic LUT4s: 397 Number of distributed RAM: 0 (0 LUT4s) Number of ripple logic: 202 (404 LUT4s) Number of shift registers: 0 Total number of LUT4s: 801 Number of PIO sites used: 28 out of 62 (45%) Number of PIO FIXEDDELAY: 0 Number of DQSDLLs: 0 out of 2 (0%) Number of PLLs: 0 out of 2 (0%) Number of block RAMs: 0 out of 6 (0%) Number of GSRs: 1 out of 1 (100%) JTAG used : No / Readback used : No / Oscillator used : No / Startup used : No Notes:- 1. Total number of LUT4s = (Number of logic LUT4s) + 2*(Number of distributed RAMs) + 2*(Number of ripple logic) 2. Number of logic LUT4s does not include count of distributed RAM and ripple logic.

Page 15: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

15

Exemple de design

Cas problématique de l’entrée bidirectionnel

FPGA

DVD CEC

Serialisateur

De-Serialisateur

FPGA

Serialisateur

De-Serialisateur

TVCEC

vcc

10k

GND

10k

vcc

10k

GND

10k

Communication CEC :

DVDSYNC INITIATEUR

TVde la communication

0x01 = DV1

de la communication

0x40 = TV

Ack DVD Ack TV = je suis la

3.3v

0v

DESTINATAIRE

10

10 10

10

1111X

Page 16: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

16

Exemple de design

Problème : avec pull-up on mesure 1.9 v au lieu de 3.3 volt ; pourquoi ?

FPGA

DVD

CEC

Serialisateur

De-Serialisateur

FPGA

Serialisateur

De-Serialisateur

TVCEC

vcc

10k

GND

10k

vcc

10k

GND

10k

Communication CEC :

DVDSYNC INITIATEUR

TVde la communication

0x01 = DV1

de la communication

0x40 = TV

Ack DVD Ack TV = je suis la

3.3v

0v

DESTINATAIRE

>47k

VCC

Page 17: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

17

Exemple de design

Problème : Lors du ack de la télévision on a un glitch du coté du DVD; pourquoi ?

FPGA

DVD CEC

Serialisateur

De-Serialisateur

FPGA

Serialisateur

De-Serialisateur

TVCEC

vcc

10k

GND

10k

vcc

10k

GND

10k

Communication CEC : sans glitch

DU coté du DVD

SYNC INITIATEUR de la communication

0x01 = DV1

DESTINATAIREde la communication

0x40 = TV

Ack DVD Ack TV = je suis la

3.3v

0v

Page 18: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

18

Exemple de design

Problème : Lors du ack de la télévision on a un glitch du coté du DVD; pourquoi ?

FPGA

DVD CEC

Serialisateur

De-Serialisateur

FPGA

Serialisateur

De-Serialisateur

TVCEC

vcc

10k

GND

10k

vcc

10k

GND

10k

Communication CEC : avec glitch

DU coté du DVD

SYNC INITIATEUR de la communication

0x01 = DV1

DESTINATAIREde la communication

0x40 = TV

Ack DVD Ack TV = je suis la

3.3v

0v

Page 19: De la théorie à la pratique : Exemple dutilisation de FPGA dans une PME Bouyela Ngoyi Gérard Armand professeur: Pierre Langlois ÉCOLE POLYTECHNIQUE DE

19

QUESTIONS ?