27
Introduction Les FPGA, comment ca marche ? ! Introduction sur les FPGA Yann Sionneau TELECOM SudParis 6 octobre 2009 Yann Sionneau Introduction sur les FPGA

Présentation FPGA

Embed Size (px)

DESCRIPTION

Introduction aux FPGA

Citation preview

Page 1: Présentation FPGA

Introduction Les FPGA, comment ca marche ? !

Introduction sur les FPGA

Yann Sionneau

TELECOM SudParis

6 octobre 2009

Yann Sionneau Introduction sur les FPGA

Page 2: Présentation FPGA

Introduction Les FPGA, comment ca marche ? !

Sommaire I

1 IntroductionQu’est-ce qu’un ASIC ?Ou les trouve-t-on ?Que fait un ASIC ?System On Chip ? !Qu’est-ce qu’un FPGA ?

2 Les FPGA, comment ca marche ? !Structure d’un FPGA?Et on peut programmer en quoi ?Langages utilisesExemple de code VHDLLes fabriquants de FPGAExemples de plaques de developpement

Yann Sionneau Introduction sur les FPGA

Page 3: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Qu’est-ce qu’un ASIC ? Ou les trouve-t-on ? Que fait un ASIC

Introduction

Qu’est-ce qu’un ASIC ?

Ou les trouve-t-on ?

Que fait un ASIC ?

Qu’est-ce qu’un FPGA?

Yann Sionneau Introduction sur les FPGA

Page 4: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Qu’est-ce qu’un ASIC ? Ou les trouve-t-on ? Que fait un ASIC

Qu’est-ce qu’un ASIC ?

Wikipedia : Un ASIC (pour Application-Specific IntegratedCircuit) est un circuit integre (micro-electronique) specialise.En general, il regroupe un grand nombre de fonctionnalitesuniques et/ou sur mesure.

Yann Sionneau Introduction sur les FPGA

Page 5: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Qu’est-ce qu’un ASIC ? Ou les trouve-t-on ? Que fait un ASIC

Qu’est-ce qu’un ASIC ?

Yann Sionneau Introduction sur les FPGA

Page 6: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Qu’est-ce qu’un ASIC ? Ou les trouve-t-on ? Que fait un ASIC

Ou les trouve-t-on ?

Yann Sionneau Introduction sur les FPGA

Page 7: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Qu’est-ce qu’un ASIC ? Ou les trouve-t-on ? Que fait un ASIC

Que fait un ASIC ?

Fournit des signaux electriques en sortie, en fonction dessignaux qu’il recoit en entree.

Puce de cryptage

PHY/MAC Ethernet

Convertisseur Serie RS232-USB

Micro-controlleur

Micro-Processeur

memoire RAM, ROM

Portes logiques (and, or, xor, shift register)

System On Chip

Yann Sionneau Introduction sur les FPGA

Page 8: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Qu’est-ce qu’un ASIC ? Ou les trouve-t-on ? Que fait un ASIC

SoC ? System On Chip ? !

Yann Sionneau Introduction sur les FPGA

Page 9: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Qu’est-ce qu’un ASIC ? Ou les trouve-t-on ? Que fait un ASIC

Qu’est-ce qu’un FPGA ?

C’est ca

Yann Sionneau Introduction sur les FPGA

Page 10: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Les FPGA, comment ca marche ? !

Structure d’un FPGA?

Et on peut programmer en quoi ?

Les entites synthetisables

Les langages utilises

Exemple de code VHDL

Les fabriquants de FPGA

Exemples de plaques de developpement

Yann Sionneau Introduction sur les FPGA

Page 11: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Structure d’un FPGA ?

matrice de blocs logiques programmables

blocs d’I/O programmable

interconnection entre blocs logiques et blocs d’I/Oprogrammables

Yann Sionneau Introduction sur les FPGA

Page 12: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Et on peut programmer quoi ?

Entites ”synthetisables”

porte AND

porte AND a 4 entrees

porte AND a 8 entrees

porte AND a 42 entrees

Yann Sionneau Introduction sur les FPGA

Page 13: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Et on peut ”synthetiser” quoi ?

Entites ”synthetisables”

Serial UART (Universal Asynchronous Receiver Transmitter)

FPU (Floating Point Unit)

DDR SDRAM Controller Core

1 GigEthernet MAC core

Decodeur JPEG

Controlleur VGA

Controlleur d’interruptions

Controlleur USB

Generateur d’effets videos bases sur une entree son

softcores/CPU (8 bits, 32 bits, 64 bits, 1 bit...)

plus d’infos sur http ://www.opencores.org

Yann Sionneau Introduction sur les FPGA

Page 14: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Programmable ? En quoi ? En Java ?

Langage de Programmation

VHDL

Verilog

Yann Sionneau Introduction sur les FPGA

Page 15: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Exemple de la porte AND

Yann Sionneau Introduction sur les FPGA

Page 16: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Exemple de la porte AND

Entite AND

library ieee ;use ieee.std logic 1164.all ;

entity AND ent isport( A : in std logic ;B : in std logic ;Y : out std logic) ;end AND ent ;

Yann Sionneau Introduction sur les FPGA

Page 17: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Exemple de la porte AND

Comportement AND

architecture behav of AND ent isbeginY <= A and B ;end behav ;

Yann Sionneau Introduction sur les FPGA

Page 18: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Les fabriquants de FPGA

Xilinx

Altera

Lattice Semiconductor

Atmel

Actel

Cypress

QuickLogic

Nallatech

Yann Sionneau Introduction sur les FPGA

Page 19: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Exemples de plaques de developpement

Yann Sionneau Introduction sur les FPGA

Page 20: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Actel Pro-Asic2

Yann Sionneau Introduction sur les FPGA

Page 21: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Cyclone 3

Yann Sionneau Introduction sur les FPGA

Page 22: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Cyclone 2

Yann Sionneau Introduction sur les FPGA

Page 23: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

FPGA dev board

Yann Sionneau Introduction sur les FPGA

Page 24: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Virtex 5

Yann Sionneau Introduction sur les FPGA

Page 25: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Virtex 4 ML403

Yann Sionneau Introduction sur les FPGA

Page 26: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Spartan 6 SP605

Yann Sionneau Introduction sur les FPGA

Page 27: Présentation FPGA

Introduction Les FPGA, comment ca marche ? ! Structure d’un FPGA? Et on peut programmer en quoi ? Langages

Merci

Merci de votre attentionBien Cordialement

Yann Sionneau Introduction sur les FPGA