FPGA and more Marco D. Santambrogio: Politecnico di Milano EG7 – 21 Aprile 2016 Ver. 0 del 21 Aprile.

Slides:



Advertisements
Presentazioni simili
Primary Italian Saying How You Are.
Advertisements

Cache Memory Prof. G. Nicosia University of Catania
Termodinamica Chimica
Francesco Redaelli - Davide Sacchi
Carlo Di Federico - Matricola n Roberto Gonella - Matricola n
BAnMaT Light: un tool per la rilocazione software dei bitstream
Realizzazione di un componente per un sistema dedicato: sviluppo dell’algoritmo di crittografia RC6 a 128 bit Relatore: Prof. Fabrizio Ferrandi Correlatore:
Politecnico di Milano Sviluppo di strumenti per l'analisi e la manipolazione di bitstream per la riconfigurabilità parziale Relatore: Prof. Fabrizio FERRANDI.
DG Ricerca Ambientale e Sviluppo FIRMS' FUNDING SCHEMES AND ENVIRONMENTAL PURPOSES IN THE EU STRUCTURAL FUNDS (Monitoring of environmental firms funding.
Circuiti logici dedicati
REALIZING CONSTRUCTIVIST OBJECTIVES THROUGH COLLABORATIVE TECHNOLOGIES: THREADED DISCUSSIONS Donald Weasenforth Sigrum Biesenbach- Lucas Christine Meloni.
BRISCOLA GO ON AVANTI. Storia I giochi di carte hanno le origini più disparate e vengono collocati in differenti epoche, la Briscola risale al La.
Queuing or Waiting Line Models
D.E.I.S. Universita di Bologna VHDL come strumento CAD allinterno di flussi di progetto per dispositivi Digitali VHDL come strumento CAD allinterno di.
VHDL come strumento di progetto di circuiti digitali Antonio Deledda Corso di Elettronica dei Sistemi Digitali LS AA
VHDL come strumento di progetto di circuiti digitali
REGIONE AUTONOMA FRIULI VENEZIA GIULIA PROTEZIONE CIVILE DELLA REGIONE
Capitolo 20: Sistemi multimediali
Struttura di un neurone
Come nella stampa tradizionale, un giornale online può essere di informazione informazione o un periodico dedicato a una disciplina specifica.
Distribuzione del numero di alleli condivisi da coppie di fratelli e di non-parenti tipizzati rispettivamente per 5, 9 e 13 markers.
Frequency Domain Processing
Ottimizzazione del tempo morto
Distributed System ( )7 TCP/IP four-layer model.
FESR Consorzio COMETA Pier Paolo CORSO Giuseppe CASTGLIA Marco CIPOLLA Industry Day Catania, 30 Giugno 2011 Commercial applications.
WP4 – Software Infrastructures. How it was Overall goal “The outcome of WP4 is the design, implementation and evaluation of software components that will.
Demonstrating Possession
Sezione di Padova Contributo alla costruzione dei layers 6,7 Possibili task per PADOVA:  precedente proposta: R&D della procedura di assemblaggio degli.
Ontologia AA F. Orilia. Lez. 16 Discussione dell'approccio controfattualista di lewis condotta da Antonio De Grandis.
Talking about yourself
4/20/20151 Metodi formali dello sviluppo software a.a.2013/2014 Prof. Anna Labella.
SOTTOSISTEMA DI MEMORIA
Taccani1 7.4 Identification ANALISI DEI PERICOLI Hazard Analysis Identificazione Valutazione Misure di Controllo Control Measures Assessment.
1 Ugo Montanari Dipartimento di Informatica Università di Pisa Moving Forward at the Age of 33 A new building for the Dipartimento di Informatica June.
Internetworking livello III Prof. Alfio Lombardo.
Dispositivi e sistemi logici
Un problema multi impianto Un’azienda dispone di due fabbriche A e B. Ciascuna fabbrica produce due prodotti: standard e deluxe Ogni fabbrica, A e B, gestisce.
Sistemi Elettronici Programmabili3-1 FPGA Sistemi Elettronici Programmabili.
Politecnico di Milano Facoltà di Ingegneria dell’ Informazione Laurea Specialistica in INGEGNERIA INFORMATICA La laurea Specialistica in Ingegneria Informatica.
BaBar Tier A Administration Workshop CCR, Paestum Giugno 2003 Alberto Crescente, INFN Sez. Padova.
SUMMARY Time domain and frequency domain RIEPILOGO Dominio del tempo e della frequenza RIEPILOGO Dominio del tempo e della frequenza.
Viruses.
SUMMARY Quadripoles and equivalent circuits RIEPILOGO Quadripoli e circuiti equivalenti RIEPILOGO Quadripoli e circuiti equivalenti.
Mobilità tra i Paesi del Programma KA103 A.A. 2014/2015 (KA103) Mobility Tool+ e il Rapporto Finale Claudia Peritore Roma luglio 2015.
The people side of Change management Leadership e Stakeholder nei processi di cambiamento delle organizzazioni DIPARTIMENTI DI GIURISPRUDENZA, INGEGNERIA.
L A R OUTINE D EL M ATTINO Ellie B.. Io mi sono svegliata alle cinque del mattino.
SUMMARY High efficiency motors RIEPILOGO Motori ad alta efficienza RIEPILOGO Motori ad alta efficienza.
RIEPILOGO Transistor JFET
SUMMARY Different classes and distortions RIEPILOGO Le diverse classi e le distorsioni RIEPILOGO Le diverse classi e le distorsioni.
Relative pronouns Forms and uses. Relative pronouns Uses and functions of the relative CHI Translates he who, she who, those who, everybody who Does not.
 SLP Tests in VME test stand: Saverio – Pierluigi (Daniel)  New test stand: Enrico (Saverio – Pierluigi)  VME Tests versus new test stand tests (Enrico-Saverio-Pierluigi)
SUMMARY Real operational amplifiers RIEPILOGO Amplificatori operazionali reali RIEPILOGO Amplificatori operazionali reali.
Accesso a ShareGrid mediante VPN ing. Sergio Rabellino Dipartimento di Informatica Università degli Studi di Torino.
Simple Sentences in Italian
LE PREPOSIZIONI. Le Preposizioni semplici (Simple prepositions) A preposition describes a relationship between other words in a sentence. In itself, a.
Buon giorno, ragazzi oggi è il quattro aprile duemilasedici.
Titolo evento Luogo, data Seminario INSPIRE Bologna, luglio 2012 Profili, strumenti ed implementazioni dei metadati Antonio Rotundo Agenzia per l’Italia.
Calliope-Louisa Sotiropoulou I NTRODUZIONE ALLA T ECNOLOGIA D ELL ’FPGA F IELD P ROGRAMMABLE G ATE A RRAYS PISA, 02/03/2016 Marie Curie IAPP Fellow - University.
Le FPGA sono circuiti integrati contenenti molte celle logiche, ciascuna delle quali puo’ comunicare con le altre tramite una fittissima rete di connessioni.
SUMMARY Checking RIEPILOGO Verifiche RIEPILOGO Verifiche.
TGC upgrade for SLHC (ATL-P-MN-0028 ) Fra le parti più colpite dall’aumento di rate previsto a SLHC ci sono le Small Wheels Le TGC con catodo a bassa resistività.
Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Sara Carcangiu Anna Mereu An Optimization Tool for Telecommunication.
Project IOLI Practical exemple in Italy and in Sicily Il presente progetto è finanziato con il sostegno della Commissione europea. L’autore è il solo responsabile.
Futuro di EGI EGI è menzionato esplicitamente nel draft delle nuove calls EU ( H2020 ) Da ultima versione (per me) data 18-9 di –HORIZON 2020 – WORK PROGRAMME.
MSc in Communication Sciences Program in Technologies for Human Communication Davide Eynard Facoltà di scienze della comunicazione Università della.
Do You Want To Pass Actual Exam in 1 st Attempt?.
Riunione INFN – Bologna, 17 January 2013
WRITING – EXERCISE TYPES
MONBOX Federico Bitelli bitelli<at>fis.uniroma3.it
X. Specifications (IV).
Transcript della presentazione:

FPGA and more Marco D. Santambrogio: Politecnico di Milano EG7 – 21 Aprile 2016 Ver. 0 del 21 Aprile

Logistica: introduzione 31 Marzo – 7 Aprile –Impariamo a parlare del nostro progetto: presentazioni e pitch 14 Aprile –Impariamo a scrivere del nostro progetto: LaTeX 21 Aprile –Impariamo a realizzare il nostro progetto: FPGA, queste sconosciute! 28 Aprile –Impariamo a condividere il nostro progetto: git e repository condivisi 2

Logistica: C/Python 3 Dal 5 Maggio al 30 Giugno –8 incontri da 2h cad: apprendimenti strumenti nuovi Luglio –3 (7/14/21) Incontri da 4h cad: per mettere tutto insieme –23-24 Luglio: Xilinx Hackathon

Team C Riccardo Cavadini, Marta Bracco Stephen Bono Manuela Legnardi, Federica Ioli Tommaso Ciceri, Bianca Falcone Matteo Arlotti, Carlo Casalini Davide Berretta, Paola Bahiti Nicolò Grassi, Matteo Greco Marina Gnocco, Federica Loizzo Elisa Forzinetti, Denise Fumagalli Elena Balzan, Rossella Damiano Angela Colella, Chiara Alberti 4

5 TUTTI GLI ALTRI TEAM PYTHON

Logistica: Maggio/Giugno 6 5 Maggio 12 Maggio 19 Maggio 26 Maggio 10 Giugno 16 Giugno 23 Giugno 30 Giugno

Logistica: Maggio/Giugno 7 5 Maggio 12 Maggio 19 Maggio 26 Maggio 10 Giugno 16 Giugno 23 Giugno 30 Giugno PRENDERE LE MISURE

Logistica: Maggio/Giugno 8 5 Maggio 12 Maggio 19 Maggio 26 Maggio 10 Giugno 16 Giugno 23 Giugno 30 Giugno 27 /5/16 CONTINUE OR NOT?

Logistica: Maggio/Giugno 9 5 Maggio 12 Maggio 19 Maggio 26 Maggio 10 Giugno 16 Giugno 23 Giugno 30 Giugno CHALLENGE ACCEPTED DEAL!

Xilinx Hackathon Hack –Evento per approfondire/sfidarsi su specifiche tecnologie tramite 10

Xilinx Hackathon Hackathon –Evento per approfondire/sfidarsi su specifiche tecnologie tramite –più giorni (marathon) di coding su idee/problemi interessanti 11

Xilinx Hackathon Hackathon –Evento per approfondire/sfidarsi su specifiche tecnologie tramite –più giorni (marathon) di coding su idee/problemi interessanti Oggi Luglio… potremmo spostarto al: –15-16 Luglio? –16-17 Luglio? –17-18 Luglio? 12

Gantt Chart Grafico a barre che rappresenta le attività per blocchi nel tempo. – L'inizio e la fine del blocco corrispondono all'inizio ed alla fine dell'attività. 13

Gantt Chart: esempio 14

Analisi SWOT Aiutare ad identificare le Forze (Strengths), Debolezze (Weaknesses), Opportunità (Opportunities) e Minacce (Threats) –I punti di forza e di debolezza sono fattori interni che possono creare o distruggere valore. –Le opportunità e le minacce sono fattori esterni incontrollabili che possono comportare la creazione o la distruzione del valore. 15

Analisi SWOT: esempio 16

Reconfigurable Computing FPGA based systems exascale computing infrastructure CAD tools Physical design High-level analysis and PLs

Reconfigurable Hardware “Reconfigurable computing is intended to fill the gap between hardware and software, achieving potentially much higher performance than software, while maintaining a higher level of flexibility than hardware” (K. Compton and S. Hauck, Reconfigurable Computing: a Survey of Systems and Software, 2002) 18

trend toward higher levels of integration Evolution of implementation technologies Logic gates (1950s-60s) Regular structures for two-level logic (1960s-70s) –muxes and decoders, PLAs Programmable sum-of-products arrays (1970s-80s) –PLDs, complex PLDs Programmable gate arrays (1980s-90s) –densities high enough to permit entirely new class of application, e.g., prototyping, emulation, acceleration 19

Gate Array Technology (IBM s) Simple logic gates –combine transistors to implement combinational and sequential logic Interconnect –wires to connect inputs and outputs to logic blocks I/O blocks –special blocks at periphery for external connections Add wires to make connections –done when chip is fabbed “mask-programmable” –construct any circuit 20

Field-Programmable Gate Arrays Logic blocks –to implement combinational and sequential logic Interconnect –wires to connect inputs and outputs to logic blocks I/O blocks –special logic blocks at periphery of device for external connections Key questions: –how to make logic blocks programmable? –how to connect the wires? –after the chip has been fabbed 21

Commercial FPGA Companies Lattice official webiste 22

Xilinx Programmable Gate Arrays CLB - Configurable Logic Block Built-in fast carry logic Can be used as memory Three types of routing –direct –general-purpose –long lines of various lengths RAM-programmable –can be reconfigured 23

Configurable Logic Blocks CLBs made of Slices –sVirtex-E 2-slice –VIIP 4-slice Slices made of LookUp Tables (LUTs) LookUp Tables –4-input, 1 output functions –Newest FPGA 2 6-input 2 output 24

Simplified CLB Structure CLB 25

Lookup Tables: LUTs LUT contains Memory Cells to implement small logic functions Each cell holds ‘0’ or ‘1’. Programmed with outputs of Truth Table Inputs select content of one of the cells as output 3 Inputs LUT -> 8 Memory Cells Static Random Access Memory SRAM cells 3 – 6 Inputs Multiplexer MUX 26

Example: 4-input AND gate ABCDO

The Virtex CLB 2-Slice Virtex-E CLB 28

Details of One Virtex Slice Virtex-E Slice

Implements any Two 4-input Functions 4-input function 3-input function; registered Virtex-E Slice

CLB Switch Box SLICE TBUF Y X SLICE_X66Y Slice VIIP CLB

Interconnection Network 32

Example Determine the configuration bits for the following circuit implementation in a 2x2 FPGA, with I/O constraints as shown in the following figure. Assume 2-input LUTs in each CLB. 33

CLBs configuration 34

Placement: Select CLBs 35

Routing: Select path 36

Configuration Bitstream The configuration bitstream must include ALL CLBs and SBs, even unused ones CLB0: CLB1: ????? CLB2: CLB3: XXXXX SB0: SB1: SB2: SB3: SB4:

The configuration bitstream Occupation must be determined only on the basis of –Number of configuration words –Initial Frame Address Register (FAR) value 38

Frame and Configuration Memory Virtex-II Pro –Configuration memory is arranged in vertical frames that are one bit wide and stretch from the top edge of the device to the bottom –Frames are the smallest addressable segments of the VIIP configuration memory space all operations must act on whole configuration frames. Virtex-4 –Configuration memory is arranged in frames that are tiled about the device –Frames are the smallest addressable segments of the V4 configuration memory space all operations must therefore act upon whole configuration frames 39

Xilinx Virtex-4: frame organization 40

Some Definitions Object Code: the executable active physical (either HW or SW) implementation of a given functionality Core: a specific representation of a functionality. It is possible, for example, to have a core described in VHDL, in C or in an intermediate representation (e.g. a DFG) IP-Core: a core described using a HD Language combined with its communication infrastructure (i.e. the bus interface) Reconfigurable Functional Unit: an IP-Core that can be plugged and/or unplugged at runtime in an already working architecture Reconfigurable Region: a portion of the device area used to implement a reconfigurable core 41

Xilinx FPGA and Configuration Memory 42

FPGA EDA Tools Must provide a design environment based on digital design concepts and components (gates, flip-flops, MUXs, etc.) Must hide the complexities of placement, routing and bitstream generation from the user. Manual placement, routing and bitstream generation is infeasible for practical FPGA array sizes and circuit complexities. 43

Computer-aided Design Can't design FPGAs by hand –way too much logic to manage, hard to make changes Hardware description languages –specify functionality of logic at a high level Validation - high-level simulation to catch specification errors –verify pin-outs and connections to other system components –low-level to verify mapping and check performance Logic synthesis –process of compiling HDL program into logic gates and flip-flops Technology mapping –map the logic onto elements available in the implementation technology (LUTs for Xilinx FPGAs) 44

CAD Tool Path (cont’d) Placement and routing –assign logic blocks to functions –make wiring connections Timing analysis - verify paths –determine delays as routed –look at critical paths and ways to improve Partitioning and constraining –if design does not fit or is unroutable as placed split into multiple chips –if design it too slow prioritize critical paths, fix placement of cells, etc. –few tools to help with these tasks exist today Generate programming files - bits to be loaded into chip for configuration 45

QUESTIONS? 46 Marco D. Santambrogio