Università di Padova Dipartimento di Ingegneria dell’Informazione Tecnologie Implementative su gentile concessione di Andrea Neviani Progettazione di Circuiti Integrati Digitali Semi-Custom 1 Università di Padova Dipartimento di Ingegneria dell’Informazione Come è fatto un sistema digitale? Sistema digitale Scheda Circuito integrato VLSI Progettazione di Circuiti Integrati Digitali Semi-Custom 2 Università di Padova Dipartimento di Ingegneria dell’Informazione Come si realizza un sistema digitale? Componenti a catalogo mC, mP, DSP, ... PROM, PAL, PLA Componenti programmabili FPGA, CPLD Gate Arrays ASIC (Application Specific Integrated Circuit) Celle Standard Full-custom Progettazione di Circuiti Integrati Digitali Semi-Custom 3 Università di Padova Dipartimento di Ingegneria dell’Informazione Progettazione di Circuiti Integrati Digitali Semi-Custom 4 Università di Padova Dipartimento di Ingegneria dell’Informazione Progettazione di Circuiti Integrati Digitali Semi-Custom 5 Università di Padova Dipartimento di Ingegneria dell’Informazione Programmable Logic Array (PLA) Progettazione di Circuiti Integrati Digitali Semi-Custom 6 Università di Padova Dipartimento di Ingegneria dell’Informazione Programmed PLA Progettazione di Circuiti Integrati Digitali Semi-Custom 7 Università di Padova Dipartimento di Ingegneria dell’Informazione Programmable Array Logic (PAL) Progettazione di Circuiti Integrati Digitali Semi-Custom 8 Università di Padova Dipartimento di Ingegneria dell’Informazione Progettazione di Circuiti Integrati Digitali Semi-Custom 9 Università di Padova Dipartimento di Ingegneria dell’Informazione Come si realizza un sistema digitale? Componenti a catalogo mC, mP, DSP, ... PROM, PAL, PLA Componenti programmabili FPGA, CPLD Gate Arrays ASIC (Application Specific Integrated Circuit) Celle Standard Full-custom Progettazione di Circuiti Integrati Digitali Semi-Custom 10 Università di Padova Dipartimento di Ingegneria dell’Informazione Tecnologie per realizzare un ASIC Digital Circuit Implementation Approaches Semi-custom Custom Cell-Based Standard Cells Compiled Cells Macro Cells Array-Based Pre-diffused (Gate Arrays) Progettazione di Circuiti Integrati Digitali Semi-Custom Pre-wired (FPGA) 11 Università di Padova Dipartimento di Ingegneria dell’Informazione Approccio Full-Custom - 1/2 • Sintesi logica manuale – da specifiche funzionali a rete di porte logiche – mappe di Karnaugh, metodo Quine-McKluskey, modelli di Mealy e Moore per macchine a stati • Sintesi circuitale manuale – da rete di porte logiche a rete di transistor – regole per la costruzione di circuiti statici (FCMOS, passtransistor …) e dinamici (np-CMOS, NORA, TSPC) • Realizzazione del layout manuale – da rete di transitor a mappa delle maschere Progettazione di Circuiti Integrati Digitali Semi-Custom 12 Università di Padova Dipartimento di Ingegneria dell’Informazione Approccio Full-Custom - 2/2 • Vantaggi – prestazioni ottimizzate (velocità, consumi) – uso di area minimizzato • Svantaggi – tempi di progetto lunghi – impraticabile per circuiti molto complessi – possibilità di riuso ridotte Limitato ai blocchi critici di un sistema digitale Progettazione di Circuiti Integrati Digitali Semi-Custom 13 Università di Padova Dipartimento di Ingegneria dell’Informazione Tecnologie per realizzare un ASIC Digital Circuit Implementation Approaches Semi-custom Custom Cell-Based Standard Cells Compiled Cells Macro Cells Array-Based Pre-diffused (Gate Arrays) Progettazione di Circuiti Integrati Digitali Semi-Custom Pre-wired (FPGA) 14 Università di Padova Dipartimento di Ingegneria dell’Informazione Approccio Semi-Custom, Cell-Based • Celle standard e macrocelle Rows of Cells – libreria di celle elementari preprogettate e caratterizzate (celle standard) o celle complesse (macrocelle) – circuito realizzato interconnettendo celle prese dalla libreria – sintesi logica e layout realizzati con strumenti semi-automatici Feedthrough Cell Progettazione di Circuiti Integrati Digitali Semi-Custom Logic Cell Routing Channel Functional Module (RAM, multiplier, ) 15 Università di Padova Dipartimento di Ingegneria dell’Informazione Esempio di cella standard • Layout con altezza, VDD e GND uguale per tutte le celle • modello delle prestazioni dinamiche: tp=tpo+K·CL ramo tpo (ns) K (ns/pF) A1-O,LH 0.153 2.759 A1-O, HL 0.137 2.655 … … … Progettazione di Circuiti Integrati Digitali Semi-Custom 16 Università di Padova Dipartimento di Ingegneria dell’Informazione Esempio di cell-based ASIC 1/2 1) standard-cell block 2) high-performance, fullcustom block 3) Intellectual Property (IP) block 4) SRAM core 5) mP core Progettazione di Circuiti Integrati Digitali Semi-Custom 17 Università di Padova Dipartimento di Ingegneria dell’Informazione Esempio di cell-based ASIC 2/2 Progettazione di Circuiti Integrati Digitali Semi-Custom 18 Università di Padova Dipartimento di Ingegneria dell’Informazione Approccio Semi-Custom, Gate-Array polysilicon VD D rows of riga di uncommitted cells celle metal cella vergine possible contact GND In1 In 2 In3 In4 canale per routing channel interconn. cella programmata Out Progettazione di Circuiti Integrati Digitali Semi-Custom 19 Università di Padova Dipartimento di Ingegneria dell’Informazione Varianti di Gate-Arrays Sea-of-gates (SOG) Embedded SOG Progettazione di Circuiti Integrati Digitali Semi-Custom 20 Università di Padova Dipartimento di Ingegneria dell’Informazione Confronto Celle Standard - Gate Array Celle Standard prestazioni ottimizzate a livello di cella sfruttamento completo delle risorse strumenti automatici per la progettazione fase di sviluppo veloce sviluppo della libreria costoso processo di fabbricazione completo (come full-custom) Gate Array matrice di celle uguale per tutti costo suddiviso tra tutti i clienti processo di fabbricazione ridotto (solo METAL) strumenti automatici per la progettazione fase di sviluppo veloce utilizzo incompleto delle celle prestazioni sub-ottime Progettazione di Circuiti Integrati Digitali Semi-Custom 21 Università di Padova Dipartimento di Ingegneria dell’Informazione Come si realizza un sistema digitale? Componenti a catalogo mC, mP, DSP, ... PROM, PAL, PLA Componenti programmabili FPGA, CPLD Gate Arrays ASIC (Application Specific Integrated Circuit) Celle Standard Full-custom Progettazione di Circuiti Integrati Digitali Semi-Custom 22 Università di Padova Dipartimento di Ingegneria dell’Informazione Circuiti logici programmabili (PLD e FPGA) • Concetto base: – insieme di celle e interconnessioni riconfigurabili via software – funzione logica svolta da ciascuna cella e collegamenti tra i terminali delle celle determinati commutando interruttori programmabili • Interruttori programmabili (Programming Technology): – a fusibili (programmabili una volta sola) – MOSFET con memorie non volatili (EPROM, EEPROM, FLASH) – MOSFET con memorie SRAM Progettazione di Circuiti Integrati Digitali Semi-Custom 23 Università di Padova Dipartimento di Ingegneria dell’Informazione Esempio di FPGA - 1/2 CLB CLB switching matrix Horizontal routing channel Interconnect point CLB CLB Vertical routing channel Progettazione di Circuiti Integrati Digitali Semi-Custom 24 Università di Padova Dipartimento di Ingegneria dell’Informazione Esempio di FPGA - 2/2 funzioni arbitrarie fino a 4 variabili Combinational logic Storage elements R A B/Q1/Q2 Any function of up to 4 variables C/Q1/Q2 Din R F F G CE D A B/Q1/Q2 Any function of up to 4 variables F R G C/Q1/Q2 F D G E D Q1 D Q2 CE G Clock CE Progettazione di Circuiti Integrati Digitali Semi-Custom 25 Università di Padova Dipartimento di Ingegneria dell’Informazione Pro e contro di PLD/FPGA si compra il componente finito e lo si programma sul campo, senza ulteriori passi di fabbricazione progettazione assistita da strumenti semi-automatici come per celle standard e gate array terminato il progetto, la programmazione del componente richiede pochi secondi il componente può essere riprogrammato (tranne nel caso di interruttori a fusibili) utilizzo incompleto di celle e interconnessioni prestazioni ridotte rispetto ai potenziali della tecnologia costi non competitivi per grandi numeri (20,000 ÷ 50,000 pezzi) Progettazione di Circuiti Integrati Digitali Semi-Custom 26 Università di Padova Dipartimento di Ingegneria dell’Informazione Quale tecnologia scegliere? prestazioni robustezza Cell-Based Gate Arrays FPGA/CPLD rapidità di sviluppo riconfigurabilità costi: dipendono dal volume di produzione richiesto • bassi volumi: FPGA/CPLD • alti volumi: Cell-Based Progettazione di Circuiti Integrati Digitali Semi-Custom 27 Università di Padova Dipartimento di Ingegneria dell’Informazione Confronto dei costi Progettazione di Circuiti Integrati Digitali Semi-Custom 28