Nous allons nous adapter aux contraintes liés au Covid. Nous aurons – 6x1h30 de cours en visio – 17 HTP (5x3h + 2h évaluation) En présentiel ? – Exam 1h30 – Des exercices à rendre Documents en ligne : - Community - http://www.unilim.fr/pages_perso/vahid/

Formation VHDL Vahid MEGHDADI 1 Conception circuit numérique

1- Introduction aux technologies de circuits numériques

Formation VHDL Vahid MEGHDADI Une partie de ce cours a été emprunté de DSPedia développé par Dr. Bob Stewart à steepest ascent, Glasgow. 2 Introduction

Implantation des circuits numériques •Avec des éléments discrets •Avec des microprocesseurs, micro contrôleurs, DSP •Avec des circuits à architecture programmable PAL, GAL, FPGA •Avec des circuits intégrés ASIC

PLD : Programmable Logic Device, CPLD : Complex PLD, PAL: , GAL: Generic Array Logic, FPGA : Field Programmable Gate Array, ASIC : application-specific Formation VHDL Introduction Vahid MEGHDADI 3 Circuit avec des éléments discrets

•Circuit figé •Circuit imprimé difficile à modifier •Intégration limitée •Coût élevé •Justifié pour de petits circuits

Formation VHDL Introduction Vahid MEGHDADI 4 Circuit à fonctionnement programmable

•A base de microprocesseurs, microcontrôleurs, DSP •On modifie le programme pour modifier la fonction •Plus souple que les circuits à éléments discrets

•Vitesse limitée (mais qui augmente rapidement avec le temps) Microprocesseur Pér •Parallélisme compliqué (mais iph faisable) éri •Intégration encore limitée Mémoire que •Adapté à des opérations/algorithmes séquentiels

Formation VHDL Introduction Vahid MEGHDADI 5 Circuit à architecture programmable

•Une quantité importante de portes logiques •Des matrices d'interconnections programmables •Modification du fonctionnement sur le circuit (ISP: In-System Programming) •Souplesse assurée •Coût de fabrication faible (pour un nombre limité) •Intégration forte •Adapté à des applications gourmandes en logique •Temps de développement dépend de l'application • Compliqué pour implanter des algorithmes complexes

Formation VHDL Introduction Vahid MEGHDADI 6 Les ASIC

Application Specific Integrated Circuit

•Coût très cher pour un nombre de triage modeste •Coût très bas uniquement pour de gros tirages • Temps de développement important • Pas de modifications une fois fabriqué • Nécessite un fondeur pour la fabrication

Formation VHDL Introduction Vahid MEGHDADI 7 ASIC ou FPGA ?

ASICs FPGAs

High performance

Low development cost Low power Short time to market Low cost in high volumes Reconfigurability

Formation VHDL Introduction Vahid MEGHDADI 8 Logique (FPGA) ou software (µP et DSP) ?

• Vitesse • Possibilité de parallélisme (calcul dans l’espace ou dans le temps) • Exemple y=Ax²+Bx+C DSP FPGA

Formation VHDL Introduction Vahid MEGHDADI 9 Evolution : Méthodes de CAO

Conception physique (layout)

Conception structurelle TTL

Conception logique

Conception fonctionnelle RTL Programmation /VHDL

Synthèse comportemental Formation VHDL Introduction Vahid MEGHDADI 10 Démonstrateurs

Circuit de développement Basys 3

FPGA Artix-7

Formation VHDL Introduction Vahid MEGHDADI 11 Exemple

Une carte polyvalente et reconfigurable

Extension USB

VGA Connecteur d’extension

16 LED Connecteur d’extension 16 SW

Formation VHDL Introduction Vahid MEGHDADI 12 Intérêt de la logique par rapport à µP

• Le jeu d’instructions peut ne pas contenir l’opération voulue • Processeur manque une interface nécessaire par exemple UART) • Processeur peut contenir des circuits qui ne servent à rien dans notre application (par exemple URAT) • Processeur a besoin de la mémoire pour garder le programme et les valeurs intermédiaires • Le nombre de bits pour présenter les données peut être trop ou peu • Parallélisme très limité par software

Formation VHDL Introduction Vahid MEGHDADI 13 Architecture des FPGA Feild Programmable Gate Array

CLB CLB CLB CLB CLB CLB CLB

CLB CLB CLB CLB CLB CLB CLB

CLB CLB CLB CLB CLB CLB CLB CLB= Configurable Logic

Block CLB CLB CLB CLB CLB CLB CLB

CLB CLB CLB CLB CLB CLB CLB

CLB CLB CLB CLB CLB CLB CLB

CLB CLB CLB CLB CLB CLB CLB

Formation VHDL Introduction Vahid MEGHDADI 14 FPGA architecture interne

BLE= Basic Logic Element K Out Inputs LUT D FF

Programmable Programmable Clock IO Logic (CLB)

BLE # 1 N N I Outputs I Inputs BLE # N

Clock

Programmable Routing

Formation VHDL Introduction Vahid MEGHDADI 15 Architecture simplifiée de CLB

Inputs Look-Up Out Table (LUT) Out = f (in0, in1, in2, in3) State Clock

Enable

Formation VHDL Introduction Vahid MEGHDADI 16 FPGA

Xilinx a été fondée en 1984 pour fabriquer des circuits à logique programmable. Plusieurs familles de FPGA •Série 4000 (les années 90) •Spartan (1998) •Spartan (II, III, VI) (depuis 2000) (Spartan 6 depuis 2009)(spartan7 2017) •Virtex (II, IV, V, VI, VII) (depuis 2001) •Artix (2010) •Kintex (2010) •Zynq (SoC) (2011)

Formation VHDL Introduction Vahid MEGHDADI 17 Remarque Spartan (depuis 1998)

Le nombre de broches I/O, le nombre de CLB différentie les FPGA de la famille.

Formation VHDL Introduction Vahid MEGHDADI 18 Remarque Spartan II

Ajout de la RAM

Formation VHDL Introduction Vahid MEGHDADI 19 Remarque La famille Spartan II

Formation VHDL Introduction Vahid MEGHDADI 20 Remarque Spartan 3

Formation VHDL Vahid MEGHDADI 21 Remarque La famille Virtex

•Les LUT transformables en registre à décalage

•Plus de CLB, plus de mémoire, plus de slices par CLB

•Plus de I/O

•Multiplieurs câblés à partir de Virtex II

•DSP slices

•Microprocesseur embarqué (PowerPC)

Formation VHDL Introduction Vahid MEGHDADI 22 Remarque La famille Virtex

Formation VHDL Introduction Vahid MEGHDADI 23 Remarque La famille Virtex-II pro

Formation VHDL Introduction Vahid MEGHDADI 24 Remarque Virtex 5 et le LUT

LUT à 6 entrées et 2 sorties: permettant de construire des logiques plus sophistiques dans un seul slice. Formation VHDL Vahid MEGHDADI 25 Remarque Virtex 5 et les blocs DSP

Formation VHDL Vahid MEGHDADI 26 Remarque Série 7 (depuis 2010)

Formation VHDL Vahid MEGHDADI 27 Outil de développement

L’IDE (Integrated development environment) - jusqu’en 2012 : ISE - Depuis 2012 VIVADO - La dernière version d’ISE : 14.7 En TP on utilise Vivado qui supporte Artix 7. Certains FPGA ne sont supportés que par ISE (spartan)

Formation VHDL Vahid MEGHDADI 28 Conception circuit

o Les blocs reconfigurables o Structure régulière de “logic cells”, connectée par un réseau d’interconnexions

o La configuration est stocké dans un SRAM, qui doit être chargé au démérrage EPROM

Formation VHDL Introduction Vahid MEGHDADI 29 Design flow

HDL o Hardware design is traditionally done by modeling (VHDL / the system in a hardware description language Verilog) o An FPGA “compiler” (synthesis tool) generates a Synthesize netlist,

Netlist

Map o which is then mapped to the FPGA technology, Place o the inferred components are placed on the chip, Route o and the connecting signals are routed through the interconnection network. Bitstream

Formation VHDL Introduction Vahid MEGHDADI 30 Synthèse HDL

HDL (VHDL / process(clk, reset) Verilog) begin if reset = ‚1‘ then Synthesize output <= ‚0‘; elsif rising_edge(clk) then output <= a XOR b; Netlist end if; end process; Map

Place Register

a  D Q output Route b

clk clear Bitstream reset Formation VHDL Introduction Vahid MEGHDADI 31 Technology Mapping

Register HDL a (VHDL /  D Q output Verilog) b clk clear Synthesize reset

Netlist

Map

Place

Route

Bitstream

Formation VHDL Introduction Vahid MEGHDADI 32 Placement & Routage

HDL (VHDL / Verilog)

Synthesize

Netlist

Map Place

Route

Bitstream

Formation VHDL Introduction Vahid MEGHDADI 33 Système embarqué traditionnel

Power Supply Ethernet Audio CLKCLK MAC Codec

Interrupt GP I/O Timer Controller Address Decode Unit UART CPU L (uP / DSP) Co- C Memory Proc. custom CLK Controller IF-logic

SRAM SRAM SRAM Display SDRAM SDRAM Controller

Images by H.Walder Formation VHDL Introduction Vahid MEGHDADI 34 Système embarqué traditionnel

Power Supply Ethernet Audio CLKCLK MAC FPGA Codec

Interrupt GP I/O Timer Controller Address Decode Unit UART CPU L (uP / DSP) Co- C Memory Proc. custom CLK Controller IF-logic

SRAM SRAM SRAM Display SDRAM SDRAM Controller

Images by H.Walder Formation VHDL Introduction Vahid MEGHDADI 35 System on Chip Configurable (CSoC)

Audio Codec EPROM

Power Supply

L C

SRAM SRAM SRAM SDRAM SDRAM Images by H.Walder Formation VHDL Introduction Vahid MEGHDADI 36 Avantages

 Moins de composantes physiques

 Cycle de conception plus rapide

 Programmable sur le circuit (Mise à jour, modification...)

 Plus performant grâce à l’intégration  Horloge peut être plus rapide dans la puce que sur le circuit imprimé  Optimisation entre modules possible

Formation VHDL Introduction Vahid MEGHDADI 37 Conclusion

• Dans ce chapitre une introduction sur la technologie des circuits numériques intégré a été donnée. • 4 types de circuit programmable (discret, processeur, FPGA et ASIC) ont été comparés. • L’évolution de FPGA au cours de temps a été soulignée. • Les étapes de synthèse de circuit sur la cible FPGA ont été listées.

Formation VHDL Vahid MEGHDADI 38