17
Alessandro Gabrielli 1. 1. 1. 1. Progetto VHDL e Progetto VHDL e Progetto VHDL e Progetto VHDL e scalabilità scalabilità scalabilità scalabilità (1024p (1024p (1024p (1024p 256p) 256p) 256p) 256p) 2. 2. 2. 2. Simulatore/ Simulatore/ Simulatore/ Simulatore/Debugger Debugger Debugger Debugger VHDL VHDL VHDL VHDL – – Emulatore chip Emulatore chip Emulatore chip Emulatore chip 3. 3. 3. 3. Proposta approccio layout Proposta approccio layout Proposta approccio layout Proposta approccio layout Mixed Mixed Mixed Mixed- - -Mode Mode Mode Mode 3 FASI 3 FASI 3 FASI 3 FASI

3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli

1.1.1.1. Progetto VHDL e Progetto VHDL e Progetto VHDL e Progetto VHDL e scalabilitàscalabilitàscalabilitàscalabilità (1024p(1024p(1024p(1024pàààà 256p)256p)256p)256p)

2.2.2.2. Simulatore/Simulatore/Simulatore/Simulatore/DebuggerDebuggerDebuggerDebugger VHDL VHDL VHDL VHDL –––– Emulatore chipEmulatore chipEmulatore chipEmulatore chip

3.3.3.3. Proposta approccio layout Proposta approccio layout Proposta approccio layout Proposta approccio layout MixedMixedMixedMixed----ModeModeModeMode

3 FASI3 FASI3 FASI3 FASI

Page 2: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 2

1. 1. 1. 1. Stato del progetto VHDL 1024pStato del progetto VHDL 1024pStato del progetto VHDL 1024pStato del progetto VHDL 1024p----256p (256p (256p (256p (see see see see 16)16)16)16)

• Matrice 64 (16) MP da 4x4, 16(8) righe e 64(32) colonne (non sintetizzabile) {scalabile 5},

• ogni MP ha:

• 5 linee orizzontali che non scalano (Uscite pixel + OutEnable),

• 4 linee verticali che non scalano (ColEnable),

• 4+4 linee verticali che scalano (FastOr + LatchEnable),

• Sparsificatore in grado di leggere in parallelo gli hit sulla colonna di pixel,

• per ora non “vede” oltre 5(8) hit/colonna (DA FINIRE)

{Scalabile 1 se mantiene la struttura attuale, 4 se si usa una sparsificazione gerarchica},

• Decoder di MC: fa la scansione orizzontale e si ferma sui MP congelati {scalabile 5},

• LatchEnableBlock: congela i MP accesi quando vede il fronte del BC {scalabile 5},

• TimeStampBlock: assegna un Time di 4-bit per ogni MP {scalabile 5},

• Barrel di uscita (non shifter): può leggere fino a 8 parole di 24-bit per Rdclock (see 15),

• in uscita scrive una sola per RDclock,

• per ora non gestisce la condizione di pieno (DA FINIRE) {scalabile 4 per #parole, 2 per #bit},

• SlowControl per mascheratura MP bruciati, soft-reset ecc (DA FARE) {scalabile 5},

• Unità di controllo di tutto il readout {scalabile 1}, Scalabilità Min÷Max 0÷5

Adattabile in

≈ 1 mese

indipendentemente

dal tipo di matrice

1615

Page 3: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 3

Ricapitolando: progetto Bottom-Up

1. 1. 1. 1. Stato del progetto VHDL 1024pStato del progetto VHDL 1024pStato del progetto VHDL 1024pStato del progetto VHDL 1024p----256p256p256p256p

2300

4500

Std-Cell

#

5±50%

5±50%

Power

(mW)

0.85

3.4

Matrix Area

mm2

1.45

5.7

ASIC Area

mm2

40256

401024

Freq

(MHz)

Matrix

# pixel

Slide 11

Manca il

blocco

Slow-Control

11

Page 4: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 4

Il formato della parola di uscita al momento è di 14 bit validi su 24

{8-bit vuoti | 4-bit Add Parallel 16-pixel Col | 2-bit vuoti | 2-bit Col Add dentro MC | 4-bit MC Add | 4-bit TimeStamp }

({10-bit vuoti | 3-bit Add Parallel 8-pixel Col | 2-bit vuoti | 2-bit Col Add dentro MC | 3-bit MC Add | 4-bit TimeStamp })

Simulazione

completa ma

non

“debuggata”

1. 1. 1. 1. Stato del progetto VHDL 1024pStato del progetto VHDL 1024pStato del progetto VHDL 1024pStato del progetto VHDL 1024p----256p256p256p256p

Page 5: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 5

2. 2. 2. 2. Simulatore/Simulatore/Simulatore/Simulatore/DebuggerDebuggerDebuggerDebugger VHDL VHDL VHDL VHDL –––– Emulatore chipEmulatore chipEmulatore chipEmulatore chip

DEMODEMO

Page 6: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 6

• convertire file Monte Carlo in un formato compatibile con il simulatore VHDL,

• scrivere in formato testo le uscite (anche parziali) desiderate corrispondenti ai

pattern di ingresso,

• confrontare le uscite del simulatore VHDL con i file originati dai Monte Carlo,

• eseguire i controlli in modo automatico e segnalare dove ci sono mismatch.

2. 2. 2. 2. Simulatore/Simulatore/Simulatore/Simulatore/DebuggerDebuggerDebuggerDebugger VHDL VHDL VHDL VHDL –––– Emulatore chipEmulatore chipEmulatore chipEmulatore chip

Time: 607.659 Clk:24 BCO:6 FILE MONTE CARLO USATO

Tracks generated: 8 Fired pixels:12 Fired MP:9 Fired MC:7

Matrix :

0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 …………Tanti gruppi quante sone le MC…

0000 0000 0848 0000 0000 0000 0000 0000 0000 0000 0000 ……………………………………………..

0000 0000 0100 0000 0000 0000 0000 0000 0000 0000 0000 ……………………………………………..

……………………………………………………………………………Tante righe quante sono le MR...

Time: 738.692 Clk:29 BCO:7

Tracks generated: 7 Fired pixels:11 Fired MP:8 Fired MC:6

Matrix :

0000 0000 0000 0000 0000 0000 0000 0000 2000 0000 0000 ………………………………………..

Page 7: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 7

2. Simulatore/2. Simulatore/2. Simulatore/2. Simulatore/DebuggerDebuggerDebuggerDebugger VHDL VHDL VHDL VHDL –––– Emulatore chipEmulatore chipEmulatore chipEmulatore chip

Hit# 0001 Col 010 Row 015 Step# 01 ……Seguiranno le informazioni del tempo e dell’uscita formattata: DA FARE

Hit# 0002 Col 031 Row 031 Step# 02 ……

Hit# 0003 Col 042 Row 000 Step# 03 ….. ß USCITA SIMULATORE/DEBUGGER … sparsificazione

Hit# 0004 Col 047 Row 034 Step# 04 …..

Hit# 0005 Col 070 Row 044 Step# 05 …..

Hit# 0006 Col 078 Row 018 Step# 06 …..

DEMODEMO

Page 8: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 8

3. Proposta approccio layout3. Proposta approccio layout3. Proposta approccio layout3. Proposta approccio layout MixedMixedMixedMixed----ModeModeModeMode

Aggiunta macrocella Matrice M××××N alle librerie ST0.13 per

SYNOPSYS-CADENCE in previsione di un futuro layout reale

Std-Cells

• conoscere a priori: le dimensioni finali di ogni pixel e della matrice stessa,

• la posizione relativa dei bus e dei layers di I/O,

• il timing almeno in prima approssimazione,

• usare interfaccia di I/O attraverso Std-Cell di libreria già caratterizzate.

• SYNOPSYS non esegue la sintesi della matrice che diventa una Black-Box,

• CADENCE vede un oggetto DI CUI NON C’E’ IL LAYOUT: (Abstract, *.LEF, *.lib)

La logica di readout si interfaccia attraverso

porte conosciute ad un oggetto “dummy” che

verrà in un secondo tempo sostituito con la

matrice reale

Page 9: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 9

3. Proposta approccio layout3. Proposta approccio layout3. Proposta approccio layout3. Proposta approccio layout MixedMixedMixedMixed----ModeModeModeMode

Matrice 64 x 16, 1024 pixel, 50×50µm2 each

Dimensione totali Matrice 3200 × 800 µm2

+ power-rings = 3400 ×××× 1000 µm2

Readout attuale su 4500 Std-Cells = 2700 x 70 µm2

Dimensioni totali ASIC = 3600 ×××× 1600 µm2 %Area (Std-Cells/ASIC) = 5%

Disegno Layout Finale dell’ASIC con un CUT-&-PASTE del layout finale della matrice

Simulazione post-layout incrociata digitale + mixed-mode, Timing-Analysis: DA FARE!!

Page 10: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 10

………………..

<CMD> loadConfig Scripts/Readout.conf

Reading config file - Scripts/Readout.conf

Loading Lef file /home/Library/hcmos9gp_920/SocEncounter_hcmos9gp_2.2/hcmos9gp_soc.lef...

Loading Lef file /home/Library/hcmos9gp_920/CORE9GPLL_SNPS_AVT_4.1/SIGNOFF/common/LEF/MatrixMP8x2_gabry.lef...

Initializing default via types and wire widths ...

...

Loading Lef file /home/Library/hcmos9gp_920/PR9M6_SNPS_AVT_2.1.a/SIGNOFF/common/LEF/PR9M6_ANT.lef...

Loading Lef file /home/Library/hcmos9gp_920/IOLIB_65_M6_LL_HCMOS9GP_SNPS_AVT_7.1.a/SIGNOFF/common/LEF/IOLIB_65_M6_LL_gabry.lef...

Loading Lef file /home/Library/hcmos9gp_920/IOLIB_65_3V3_M6_LL_50A_HCMOS9GP_SNPS_AVT_7.1/SIGNOFF/common/LEF/IOLIB_65_3V3_M6_LL_50A.lef...

……………

Reading timing library "/home/Library/hcmos9gp_920/MATRIX/SIGNOFF/bc_1.32V_m40C_wc_1.08V_125C/PT_LIB/MatrixMP8x2_gabry_Worst.lib" ...

**WARN: Missing leakage_power_unit declaration in library "LIB_MatrixMP8x2"! The default unit nW is used.

*info: Timing library reader read 1 cells in the library 'LIB_MatrixMP8x2'

Reading timing library "/home/Library/hcmos9gp_920/CORE9GPLL_SNPS_AVT_4.1/SIGNOFF/bc_1.32V_m40C_wc_1.08V_125C/PT_LIB/CORE9GPLL_Best.lib" ...

**WARN: Missing leakage_power_unit declaration in library "CORE9GPLL"! The default unit nW is used.

*info: Timing library reader read 693 cells in the library 'CORE9GPLL'

*** End library loading (CPU Time= 0:00:01.3 Mem= 129.1M) ***

………………..

**WARN: Can't create min and max cell relation for MatrixMP8x2. Cell not found in the min libraries.

Starting recursive module instantiation check.

No recursion found.

Flattening Cell Readout ...

*** Netlist is unique.

** info: there are 4623 modules.

** info: there are 2262 stdCell insts.

** info: there are 1 macros.

3. Proposta approccio layout3. Proposta approccio layout3. Proposta approccio layout3. Proposta approccio layout MixedMixedMixedMixed----Mode (256p)Mode (256p)Mode (256p)Mode (256p)

Page 11: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 11

3. Proposta approccio layout3. Proposta approccio layout3. Proposta approccio layout3. Proposta approccio layout MixedMixedMixedMixed----ModeModeModeMode

Matrice 64 x 16, 1024 pixel, 50×50µm2 each

Dimensione totali Matrice 3200 × 800 µm2

+ power-rings = 3400 ×××× 1000 µm2

Matrice 32 x 8, 256 pixel, 50×50µm2 each

Dimensione totali Matrice 1700 × 500 µm2

+ power-rings = 1800 ×××× 800 µm2

(24à 16-bit DataOut)

3

Page 12: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 12

Novembre 2006 Novembre 2006 Novembre 2006 Novembre 2006 –––– Maggio 2007Maggio 2007Maggio 2007Maggio 2007 RoadmapRoadmapRoadmapRoadmap

Page 13: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 13

Luglio Luglio Luglio Luglio ---- Settembre Settembre Settembre Settembre ---- Novembre 2007Novembre 2007Novembre 2007Novembre 2007

….. sarebbe anche interessante……

…avere l’anteprima per questo approccio sugli

ASIC Mixed-Mode per la fisica!

• I primi pareri di ritorno (CERN, CMP) sull’approccio proposto sono più

che favorevoli, seppur con le cautele del caso

• Aggiornamento del VHDL in 3 settimane dalle specifiche

• Aggiornamento del simulatore/debugger in 3 settimane dalle specifiche

• Turn-around del layout in una settimana se cambia la matrice da M1×N1 a

M2×N2, senza caratterizzazione,

Fine Talk

Page 14: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 14

BACKUP SLIDES

Page 15: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 15

Ricapitolando: progetto Bottom-Up

Matrice 64(16) MP4-bit TimeStamp per 64(16) MP

Singolo MP

Barrel_Out 24-bit 8-word

Latch Enable per 64(16) MP

Sparsifier per lettura 1÷5(1÷8) pixel

Decoder 64(32)

MacroColonne “token-like”

Sono tutti blocchi

sintetizzabili tranne la

Matrice 64(32) x 16(8)

Readout

Control

Unit

Slow

Control

1024p/256p

4500/2300

Std-Cells

≈5mW

@

40 MHz di

partenza

1. Stato del progetto VHDL 1024p1. Stato del progetto VHDL 1024p1. Stato del progetto VHDL 1024p1. Stato del progetto VHDL 1024p----256p256p256p256p

Page 16: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 16

1. Stato del progetto VHDL1. Stato del progetto VHDL1. Stato del progetto VHDL1. Stato del progetto VHDL

Barrel circolare, non shifter, sintetizzabile su FF, non usa librerie tipo DesignWare

WORD

0

1

N

2Puntatore Lettura

Puntatore Scrittura

• 24-bit WORD corrispondente al bus di uscita del chip,

• lunghezza N della coda: 8?

• Si gestiscono in parallelo un Puntatore_Scrittura sulla prima

WORD libera ed un Puntatore_Lettura sulla prima WORD

ancora da leggere

• I due puntatori circolano in modo clock-wise: dopo N tornano a 0

• Se i due puntatori coincidono il Barrel è vuoto e non ci sono dati

da far uscire,

• Nel caso limite Puntatore Scrittura = Puntatore Lettura + N,

significa che il Barrel è pieno, si mette in attesa il readout delle

MC senza disattivare LatchEnable (DA FARE)

1) I bit dentro non “shiftano” mai, ciò che “shifta” sono i puntatori: limitazione del consumo,

2) Per ogni RDclock si legge una WORD che passa in uscita al chip,

3) Per ogni clock si possono scrivere, compatibilmente alle WORD libere, tante WORD quanti sono gli

hit ( ≤≤≤≤ 8 ) di una colonna della matrice globale

4) Valido per diverse matrici: 1024àààà 256

2

Page 17: 3 FASI - bo.infn.it · Alessandro Gabrielli - BO - 2/5/07 6 • convertire file Monte Carlo in un formato compatibile con il simulatore VHDL, • scrivere in formato testo le uscite

Alessandro Gabrielli - BO - 2/5/07 17

1. Stato del progetto VHDL 1024p1. Stato del progetto VHDL 1024p1. Stato del progetto VHDL 1024p1. Stato del progetto VHDL 1024p----256p256p256p256p

2