30
POLITECNICO DI MILANO Luca Rocchini ([email protected]) Giovanni Saba ([email protected]) RABAN RABAN Reconfiguration for Atmel devices Based on Reconfiguration for Atmel devices Based on AT94K core AT94K core N-module version N-module version

3D-DRESD RABAN

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 3D-DRESD RABAN

POLITECNICO DI MILANO

Luca Rocchini ([email protected])

Giovanni Saba ([email protected])

RABANRABAN

Reconfiguration for Atmel devices Based on Reconfiguration for Atmel devices Based on AT94K core AT94K core

N-module versionN-module version

Page 2: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 3: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 4: 3D-DRESD RABAN

ObiettiviObiettivi

Presentare un flusso sistemi riconfigurabili alternativo a flusso Xilinx

Un'architettura capace di sfruttare il flusso presentato

Page 5: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 6: 3D-DRESD RABAN

FPSLICFPSLIC

Field Programmable System Level Integrated Circuits (FPSLIC) è un SoC prodotto da AtmelNasce dall'unione di due progetti avanzati:

Microcontrollore AVR (AVR Core)AT40K (FPGA Core)

*

•* Copyright Atmel Corp. All rights reserved

Page 7: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 8: 3D-DRESD RABAN

8

FPSLIC: FPGA Core - IFPSLIC: FPGA Core - I

Il FPGA Core è formata da l'unione di 3 tipi di componenti:

Le celle di logica (figura a lato)I blocchi FreeRAMGli I/O pad

•* Copyright Atmel Corp. All rights reserved

*

Page 9: 3D-DRESD RABAN

9

FPSLIC: FPGA Core - IIFPSLIC: FPGA Core - II

Le celle di logica sono aggregate in settori quadrati di 16 celleAgli angoli di ogni settori è posto un blocco di FreeRAMPer comunicare le celle dispongono di:

Di una reti di busConnessione diretta tra celle

Page 10: 3D-DRESD RABAN

10

FPSLIC: FPGA Core - IIIFPSLIC: FPGA Core - III

Sono disponibile 5 piani di busEsistono due tipi di bus

ExpressLocal

Tutti i bus sono divisi in segmenti terminati da repeater che rigenera il segnale nel segmento successivo di Bus

•* Copyright Atmel Corp. All rights reserved

*

Page 11: 3D-DRESD RABAN

11

FPSLIC: FPGA Core - IVFPSLIC: FPGA Core - IV

Ogni cella è connessione con le sue 8 vicineSi risparmiano risorse di routingIl routing è indipendente dalla posizione sulla griglia

•* Copyright Atmel Corp. All rights reserved

*

Page 12: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 13: 3D-DRESD RABAN

13

FPSLIC: AVR CoreFPSLIC: AVR Core

È microcontrollore su architettura Harvard a 8 bitOffre un throughput di 1 MIPS per MhzDispone Di:

32 registri16 Linee di I/O16 Linee di I/O verso la FPGA CoreTimersinterfacce di comunicazione

•* Copyright Atmel Corp. All rights reserved

*

Page 14: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 15: 3D-DRESD RABAN

15

FPSLIC: Cache LogicFPSLIC: Cache Logic

É possibile riconfigurare dinamicamente la FPGA Core attraverso 4 porte hardware:

FPGAX: posizione orizzontale della cellaFPGAY: posizione verticale della cellaFPGAZ: indirizza la funzionalità da riconfigurareFPGAD: carica la nuova configurazione

La porte sono direttamente accessibili dall'AVR core

Page 16: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 17: 3D-DRESD RABAN

17

RABAN: Impostazione - IRABAN: Impostazione - I

L'elemento atomico riconfigurabile è un moduloOgni modulo contiene la logica per gestire la comunicazioneL'insieme delle n tuple <Modulo, Attach> attivi in un istante formano un contestoAd ogni contesto possono essere associate più implementazioniLa riconfigurazione avviene attraverso il passaggio tra due implementazioni di contesti diversi

Page 18: 3D-DRESD RABAN

18

RABAN: Impostazione - IIRABAN: Impostazione - II

Perchè la riconfigurazione possa venire in modo dinamico bisogna rispettare questo vincolo:

I moduli in comune tra i due contesti non devono avere place & route diversi

Ne deriva la necessità di diverse implementazioni per lo stesso constesti

Page 19: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 20: 3D-DRESD RABAN

20

RABAN: Implementazione - IRABAN: Implementazione - I

3 Componenti:I ModuliGli AttachLa Raban Control Interface

Descritta, a parte per gli attach, in VHDLSupporta riconfigurabilità 2D

*Basata su immagine di proprieta di Atmel Corp. All rights reserved*

Page 21: 3D-DRESD RABAN

21

RABAN: Implementazione - IIRABAN: Implementazione - II

La Raban Control Interface:Fare da bridge tra gli attach e il bus con AvrControllare la connessione dei Moduli con al Bus durante la riconfigurazione

Gli Attach:Sono ottenuti da macro HW nativeOffrono comunicazione punto – punto tra modulo e parte staticaÉ molto simile all'interfaccia AVR-FPGA

I Moduli:Sono considerati come black box

Page 22: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 23: 3D-DRESD RABAN

23

RABAN: Il Flusso - IRABAN: Il Flusso - I

Caratteristiche del flusso Atmel:

Supporto alla co-verificazioneNessun supporto alla progettazione di sistemi riconfigurabili

•* Copyright Atmel Corp. All rights reserved

•*

Page 24: 3D-DRESD RABAN

24

RABAN: Il Flusso - IIRABAN: Il Flusso - II

Page 25: 3D-DRESD RABAN

25

RABAN: Il Flusso - IIIRABAN: Il Flusso - III

Il flusso proposto offre:

Co-verificazione

È utilizzabile su architetture diverse da quella presentata

Sintesi unica dei moduli indipendente dalla posizione

Utilizzo completo degli strumenti di trasformazione geometrica di IDS

Utilizza gli strumenti standard di AtmelIDS: place & route, generazione dei bitstream differenza

System Designer: concatenazione tra bistream e codice AVR, programmazione del dispositivo

Page 26: 3D-DRESD RABAN

26

RABAN: Il Flusso - IVRABAN: Il Flusso - IV

Un Esempio dell'Architettura in IDS

Page 27: 3D-DRESD RABAN

SommarioSommario

ObiettiviPanoramica su FPSLIC

FPGA CoreAVR CoreCache Logic

RABANImpostazioneImplementazioneFlusso

PerformanceConclusioniDomande

Page 28: 3D-DRESD RABAN

28

PerformancePerformance

Per il calcolo delle performance di riconfigurazione è stato condotto su un sistema a singolo moduloIl throughput reale ottenuto è pari 0,76MB/sIl throughput massimo ottenibile pari 1,27MB/sTutti i risultati sono riferiti a una frequenza di 4Mhz

Page 29: 3D-DRESD RABAN

ConclusioniConclusioni

Risultati ottenuti:Un flusso generale per riconfigurazione parziale su FPSLICUn'architettura di riconfigurabilità:

InternaDinamica2D

Una libreria C per la gestione di quest'ultima ( in fase di testing)

Sviluppi futuri:Introdurre supporto alla rilocazione dei moduliTestare l'architettura su sistemi reali

Page 30: 3D-DRESD RABAN

Domande ?Domande ?