F13: Konstruktionsflöde för VLSI chip. Introduktion. Strukturerad konstruktion. Målsättning

Relevanta dokument
FÖRELÄSNING 8 INTRODUKTION TILL DESIGN AV DIGITALA ELEKTRONIKSYSTEM

F1: Introduktion Digitalkonstruktion II, 4p. Digital IC konstruktion. Integrerad krets. System. Algorithm - Architecture. Arithmetic X 2.

Transistorn en omkopplare utan rörliga delar

Grindar och transistorer

Introduktion till syntesverktyget Altera Max+PlusII

Laboration 6. A/D- och D/A-omvandling. Lunds universitet / Fakultet / Institution / Enhet / Dokument / Datum

L15 Introduktion modern digital design

VHDL 1. Programmerbara kretsar

DESIGN AV SEKVENTIELL LOGIK

IE1205 Digital Design: F3 : CMOS-kretsen, Implementeringsteknologier. Fredrik Jonsson KTH/ICT/ES

Digital- och datorteknik, , Per Larsson-Edefors Sida 1

Digital Design IE1204

VHDL och laborationer i digitalteknik

Digital Design IE1204

DIGITAL ELEKTRONIK. Laboration DE3 VHDL 1. Namn... Personnummer... Epost-adress... Datum för inlämning...

Digitalteknik EIT020. Lecture 15: Design av digitala kretsar

DIGITALTEKNIK I. Laboration DE1. Kombinatoriska nät och kretsar

Hambley avsnitt 12.7 (7.3 för den som vill läsa lite mer om grindar) sann 1 falsk 0

Digital IC konstruktion

IE1204 Digital Design

IE1204/IE1205 Digital Design

Laboration D181. ELEKTRONIK Digitalteknik. Kombinatoriska kretsar, HCMOS v 2.1

Undersökning av logiknivåer (V I

PARALLELL OCH SEKVENTIELL DATABEHANDLING. Innehåll

Kombinationskretsar. Föreläsning 4 Digitalteknik Mattias Krysander Institutionen för systemteknik

Digital IC konstruktion

Tenta i Digitalteknik

Introduktion till Xilinx CPLD och ISE WebPack 6.2 Version NV

Mintermer. SP-form med tre mintermer. William Sandqvist

FÖRELÄSNING 3. Förstärkaren. Arbetspunkten. Olika lastresistanser. Småsignalsschemat. Föreläsning 3

Programmerbara kretsar och VHDL 2. Föreläsning 10 Digitalteknik, TSEA22 Oscar Gustafsson Institutionen för systemteknik

Digital IC konstruktion

IE1205 Digital Design: F4 : Karnaugh-diagrammet, två- och fler-nivå minimering

INTRODUKTION TILL VIVADO

Digital elektronik och inbyggda system

Hjälpmedel: Appendix A. VHDL-syntax. (bifogas detta prov) Appendix B.2. IEEE-package (bifogas detta prov)

Programmerbar logik (PLD) Programmeringsspråket VHDL Kombinatoriska funktioner i VHDL för PLD Sekvensfunktioner i VHDL för PLD

DIGITALTEKNIK. Laboration D172

Talrepresentation. Heltal, positiva heltal (eng. integers)

Digital Design IE1204

Läsminne Read Only Memory ROM

Digitala kretsars dynamiska egenskaper

Vad är elektricitet?

Sekvensnät i VHDL del 2

Tentamen i Digitalteknik 5p

Tentamen i Grundläggande ellära och digitalteknik ETA 013 för D

Sekvensnät. William Sandqvist

Tenta i Digitalteknik

IE1205 Digital Design: F10: Synkrona tillståndsautomater del 2

Maurice Karnaugh. Karnaugh-diagrammet gör det enkelt att minimera Boolska uttryck! William Sandqvist

Laboration D151. Kombinatoriska kretsar, HCMOS. Namn: Datum: Epostadr: Kurs:

Digitala elektroniksystem

Föreläsning 4/11. Lite om logiska operationer. Hambley avsnitt 12.7, 14.1 (7.3 för den som vill läsa lite mer om grindar)

Du har följande material: 1 Kopplingsdäck 2 LM339 4 komparatorer i vardera kapsel. ( ELFA art.nr datablad finns )

IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare

Digital Design IE1204

Laborationshandledning

F5 Introduktion till digitalteknik

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

Simulering med ModelSim En kort introduktion

SEKVENSKRETSAR. Innehåll

Implementering av standardceller med låg effektförbrukning. Oscar Rasmusson

DIGITALTEKNIK. Laboration D164. Logiska funktioner med mikroprocessor Kombinatoriska funktioner med PIC16F84 Sekvensfunktioner med PIC16F84

TSIU05 Digitalteknik. LAB1 Kombinatorik LAB2 Sekvensnät LAB3 System

Lunds Universitet LTH Ingenjörshögskolan IDa1, IEa1 Helsingborg. Laboration nr 4 i digitala system ht-15. Ett sekvensnät. grupp. namn.

DIGITALTEKNIK. Laboration D173. Grundläggande digital logik

Digitalteknik, fortsättningskurs Föreläsning VHDL Very High Speed Integrated Circuit Hardware Description Language

Struktur: Elektroteknik A. Digitalteknik 3p, vt 01. F1: Introduktion. Motivation och målsättning för kurserna i digital elektronik

Vad är elektricitet?

DIGITALTEKNIK. Laboration D161. Kombinatoriska kretsar och nät

Digital IC konstruktion

Laborationshandledning

Sekvensnät Som Du kommer ihåg

Digitalteknik: CoolRunner-II CPLD Starter Kit

Tenta i Digitalteknik

D2 och E3. EDA321 Digitalteknik-syntes. Fredag den 13 januari 2012, fm i M-salarna

LABORATIONSINSTRUKTION

D0013E Introduktion till Digitalteknik

Tentamen i IE1204/5 Digital Design onsdagen den 5/

GPIO - General Purpose Input Output

Simulering med ModelSim En kort introduktion

Översikt, kursinnehåll

Tentamen i Grundläggande ellära och digitalteknik ETA 013 för D

Digital IC konstruktion

Introduktion till LTspice

Konstruktionsmetodik för sekvenskretsar. Föreläsning 7 Digitalteknik, TSEA22 Mattias Krysander Institutionen för systemteknik

Tentamen i IE1204/5 Digital Design onsdagen den 5/

CMOS-inverteraren. CMOS-logik. Parasitiska kapacitanser. CMOS-variationer: Pseudo-NMOS och PTL

Digitalteknik: CoolRunner-II CPLD Starter Kit Med kommentarer för kursen ht 2012

Digital elektronik CL0090

Tenta i Digitalteknik

SMD033 Digitalteknik. Digitalteknik F1 bild 1

Tentamen i Grundläggande ellära och digitalteknik ETA 013 för D

Digital elektronik CL0090

Tentamen i Digital Design

Programmerbar logik och VHDL. Föreläsning 1

Digital elektronik CL0090

Programmerbar logik och VHDL. Föreläsning 4

IE1205 Digital Design: F9: Synkrona tillståndsautomater

Digitalteknik F9. Automater Minneselement. Digitalteknik F9 bild 1

Transkript:

F13: Konstruktionsflöde för VLSI chip idea design review Functional specification Specification coverage test Design entry HDL code timing/area/power constraints RTL synthesis Gate netlist functional = behaviour functional = behaviour Målsättning - Presentera hela flödet från specifikation till färdig krets tillsammans med de verktyg som stödjer de ingående aktiviteterna Innehåll - Inmatning av konstruktion - Verifiering av konstruktion - Ekonomi - Datablad electrical/timing check Place & Route = connectivity Physical layout Data to IC fabrication Symbols: document or design database = equivalence verification activity internalverification Figure 0.1: Standard IC design flow 1 ( 4 2 ) 2 ( 4 2 ) Introduktion En god designstrategi är en strategi som effektivt tar konstruktionsidén till en färdig layout Ett bra konstruktionssystem ska sörja för att konstruktionen har en konsistent beskrivning i alla domäner (beteende, struktur, fysisk) på alla abstraktionsnivåer I konstruktionsprocessen hanteras stora mängder information, leder till ett stort beroende av CD-verktygen och dess kvalitet Hur bra konstruktionsarbetet har genomförts kan mätas i termer av - Prestanda (hastighet,effektförbrukning,funktion,flexibilitet) - Storlek på chippet - konstruktionstid - Testbarhet Konstruktion innebär att en rad mål ska uppnås. En del måste uppfyllas medans andra kan kompromissas mot varandra - Prestanda specifikationen måste uppfyllas - andra mål kan vara de som är en funktion av ekonomi Strukturerad konstruktion Strukturerande arbetsmetoder ett måste för att hantera komplexa konstruktioner Detta görs bl.a genom att vara uppmärksam på klassiska tekniker som: - Hierarkier - Regelbundenhet - Modularitet - Lokalitet 3 ( 4 2 ) 4 ( 4 2 )

Vdd NND Vdd GND PMOS NMOS ND Hierarki Hierarki "Divide and Conquer" - strukturering m.a.p. funktion - Submoduler bryts ner i submoduler tills komplexiteten blir hanterlig strukturering m.a.p. regelbundenhet 1-bit cells accumulator add / sub logisk enhet control MUX 8-bitars accumulator MUX 8 bitar MUX DD DFF 8-bitars accumulator baserat på 1-bits cell MUX DD DFF MUX DD DFF F F F F n-bits adderare baserad på 1-bits full-adder DD 8 bitar clk MUX DD DFF MUX DD DFF MUX DD DFF MUX DD DFF 8 bitar MUX DD DFF MUX DD DFF 5 ( 4 2 ) 6 ( 4 2 ) strukturering m.a.p. fysisk layout Hierarki Hierarkier En ren hierarkisk nedbrytning kan i slutet ge en stor mängd olika submoduler Med regelbundenhet i åtanke så sker nedbrytning så att submoduler kan återanvändas på olika ställen i konstruktionen Återanvändning är användbart på alla hierarkiska nivåer, t.ex: - kretsnivå - använd samma storlek på transistorerna - grindnivå - använda ett litet antal logiska grindar för de kombinatoriska näten - arkitekturnivå - använd identiska processelement Regelbundenhet syftar till att öka produktiviteten genom återanvändning 7 ( 4 2 ) 8 ( 4 2 )

Standard-cell konstruktion exempel på återanvändning av celler Typiskt konstruktionsflöde constraints power (max power) timing ( max cycle time) area (max circuit area) HDL code (RTL) utomatic Synthesis Gate netlist standard cell library ND, NND, OR, NOR, DFF, LT, F, H, INV, etc. MUX DFF Fulladder to physical design 9 ( 4 2 ) 1 0 ( 4 2 ) Signalvärde på en insignal påverkar kretsens karakteristik för andra ingångar. Modularitet Modularitet innebär att en submodul har - väldefinierad funktion definieras på ett otvetydigt sätt - väldefinierat gränssnitt, exempel på fysiskt gränssnitt position lagertyp storlek signaltyp Modularitet hjälper - konstruktören att använda submoduler som tidigare har konstruerats utan att behöva sätta sig in i submodulens interna funktion (black-box) - konstruktören att dokumentera sin problemlösning - konstruktörer att kommunicera med varandra 1 1 ( 4 2 ) 1 2 ( 4 2 )

Lokalitet Lokalitet är att göra en modul så oberoende av andra moduler som det är möjligt - T.ex hålla variabler lokala för att slippa hämta värden från register långt borta. Programvara Summering Hårdvara Hierarki sub-rutiner, bibliotek moduler Regelbundenhet ireation, dela kod, objektorienterat tillvägagångssätt datapaths, återanvändning av moduler, regelbunda arrayer, standard celler Modularitet väldefinierade subrutin gränssnitt väldefinierade modulgränssnitt, timing- och lastdata för celler Lokalitet lokal räckvidd för variabler (inga globala variabler) lokal kommunikation, register på in/ ut-gångar 1 3 ( 4 2 ) 1 4 ( 4 2 ) Inmatning av konstruktion HDL konstruktion (HDL=Hardware Description Language) - eskriver: ettende och struktur - Format: Text (grafiska verktyg kommer) - Exempel på HDL: VHDL, Verilog, ELL HDL innehåller konstruktioner som finns i högnivå som C och Pascal (villkor, sekvens, repetition) + stöd för hårdvarumodellering Schemainmatning eskriver: Struktur genom ett elektriskt schema Format: Grafiskt m.h.a en interaktiv grafisk editor Fördel: - en grafisk bild kan i vissa fall säga mer (snabbare) än HDL-kod, speciellt för strukturer Nackdel: - svårt att utläsa beteendet på en krets. T.ex en tillståndsmaskin med DFF och logiska grindar 1 5 ( 4 2 ) 1 6 ( 4 2 )

eskriver: fysisk layout Inmatning av layout Format: Grafiskt (interaktiv grafisk editor) eller kod (layout generatorer) Layout editorer är ofta kopplade till DRC program för interaktiv kontroll av design regler V dd V dd Floorplanner eskriver: placering och sammankoppling av modeuler på top-nivå (fysisk struktur) Format: Grafiskt (interaktiv grafisk editor) nvänds för att få en uppfattning om ledningslängder på topp-nivå samt area för hela chippet. Själva ledningsdragningen görs inte, baserar sig på estimering. PMOS NND ND NMOS GND 1 7 ( 4 2 ) 1 8 ( 4 2 ) Introduktion Verifiering av konstruktion Mellan varje syntessteg måste konstruktionen verifieras Simulering Det vanligaste tekniken att verifiera konstruktionen Olika typer av simulatorer finns, vilken man väljer beror på - krav på noggrannhet - maximal simuleringstid Simulatorer - kretsnivå - timing - logisk (gate-level) - switch-level - mix-mode 1 9 ( 4 2 ) 2 0 ( 4 2 )

Kretsnivå-simulering rbetar på kretsnivå (med modeller för resistorer, kapacitanser MOStransistor etc) Noggrann simulering Lång simuleringstid Verifiering av små kretsars prestanda egränsningar i noggrannhet pga: - onoggrannhet i MOS-modellens parametrar - användning av felaktig MOS-modell - onoggrannhet i parasit- kapacitanser och resistanser Exempel på kommersiell programvara: HSPICE Timing-simulering Genom att förenkla MOS-modellen kan simuleringstiderna minskas MOS-strömmarna tas fram genom look-up tabeller Minskad noggrannhet i jämförelse med SPICE (10-20% fel) Exempel på kommersiell programvara: Powermill 2 1 ( 4 2 ) 2 2 ( 4 2 ) Gate-level simulator Digital simulering Logiska primitiv modeller (som not, and, nand, or, nor, dff) Optimerad för korta simuleringstider eller komplexa konstruktioner Funktionell verifiering med enhets-fördröjning Timing verifiering baserat på: T gate = T intrinsic + C load T load Switch-Level simulator eroende på logiskt värde modelleras en CMOS-grind som pull-up eller pull-down resistor till V DD eller V SS Utifrån kanalresistans och kapcaitanser beräknas stig- och falltider Icke standard CMOS kretsar kan vålla förvirring för simulatorn, t.ex TGbaserade lösningar Tillräckligt noggrann för hörnsimuleringar Passar standard cell konstruktion med statisk logik Exempel på kommersiell programvara: Verilog-XL, QuickHDL 2 3 ( 4 2 ) 2 4 ( 4 2 )

Mixed-mode simulering En mixed-mode simulator kan samtidigt hantera - funktionell simulering - logisk simulering - switch-level simulering - kretsnivå simulering Exempel på ett system med analog/digital elektronik - /D omvandlare (kretsnivå simuleras) - RM (funktionell simulering) - "full-custom" CMOS logik (switch-level simulering) - standard cell logik (logisk simulering) Olika delar i systemet kräver olika noggranhet Timing verifierare Verifiering av timing med simulering - funktionell verifiering med enhets-fördröjning - timing verifiering för grindar med worst-case fördröjningar - Fördröjningen i den kritiska vägen fås fram med ett testmönster som kan visa denna (den simulerade kritiska vägen är beroende av testmönster) Timing verifierare Med en timing verifierare undgår man problemet att ta fram testmönster som visar den kritiska vägen. Istället går den igenom alla signalvägar i konstruktionen och kontrollerar att den längsta vägen uppfyller timingkravet. Detta kallas statisk timing analys. - Exempel på kommersiell programvara: Design Compiler (Synopsys) 2 5 ( 4 2 ) 2 6 ( 4 2 ) Nätlist isomorfism (LVS=Layout versus schematic) Vid automatisk syntes från ett nätlisteformat till ett annat så ska man kontrollera att inga fel införs av verktyget Två elektriska kretsar är identiska om de grafer de representerar är isomorfisk - varje graf har samma antal komponenter - varje komponent i den ena kretsen har en motsvarande komponent i den andra gate nätlista automatisk place&route LVS OK? Layout extrahering Utifrån layout extraheras komponenter och deras kopplingar (en nätlista) baserat på kombination av lager Det extraherade nätlistan används i LVS och för backannotering av parasitkapacitanser V dd V dd NND PMOS ND V DD f NND f ND layout nätlista GND NMOS GND 2 7 ( 4 2 ) 2 8 ( 4 2 )

ackannotering För att få "realistiska" fördröjningar i gate-level simulering återförs data om parasitkapacitanser till simulatorn. ackannotering görs också till statisk timing analys Design Rule verifiering (DRC) Oavsett om layouten har skapats automatiskt med verktyg eller manuellt ska den kontrolleras av en Design Rule Checker. Metal 1 Poly Diffusion HDL code RTL synthesis 0.8 0.8 1.2 Gate netlist Place & Route Physical layout Timing simulering med estimat av ledningskapacitanserna (wire-load modell) ledningskapacitanser Timing simulering med backannoterade ledningskapacitanserna 0.4 0.3 0.9 0.6 0.4 0.3 0.6 0.6 0.6 0.6 Data to IC fabrication 0.5 2 9 ( 4 2 ) 3 0 ( 4 2 ) utomatisk Place & Route Konstruktionen är fta hierarkiskt utplattad innan layout. Manuell layout av ett chip Oftast bibehållen hierarki (strukturerad layout) 3 1 ( 4 2 ) 3 2 ( 4 2 )

Utvecklingskostnad - konstruktion (design hus) Ekonomi - Produktion (process hus och test hus) Försäljningspris för komponent C S total total = -------------- 1 m C total = den totala tillverkningskostnaden m = önskad vinstmarginal Kostnad för att ta fram en IC består av - Nonrecurring costs (NREs) - engångskostnad - Recurring costs - kostnader som kommer med varje komponent - Fasta kostnader - dokumentation, support, marknadsföring, försäljning mm NREs Engångskostnader under utveckling av IC - utvecklingskostnader för konstruktionsarbetet - kostnader för prototypframtagning E total = kostnader för konstruktionsarbetet P total = kostnader för prototypframtagning F total = E total + P total 3 3 ( 4 2 ) 3 4 ( 4 2 ) Kostnader för konstruktionsarbete Om allt går väl första gången så är det en engångskostnad - Personalkostnader arkitekturkonstruktion inmatning och funktionell verifiering av logisk implementering layout av moduler och chip verifiering av timing verifiering av layout (DRC och LVS) Tape-out hantering Testmönstergenerering Kostnader för prototypframtagning tillverkningsmasker testfixtur i fall då en speciell kapsel krävs : verktyg för att hantera denna - Driftskostnader datorutrustning CD-program utbildning och vidareutbildning 3 5 ( 4 2 ) 3 6 ( 4 2 )

Återkommande kostnader (recurring costs) C package = kapselkostnad C test = test kostnad C total = C process + C package + C test C W + P process = --------------------------- NY w Y pa Y ft Datablad Ett datablad kan vara - intern dokumentation - kommunikation mellan konstruktör och kretskortskonstruktör - en del i marknadsföringen av komponenten W = wafer kostnad P = Proceskostnad N = antal brickor (chips) på en wafer Y w = chip-utbyte Y pa = utbyte i kapsling Y ft = utbyte i sluttest 3 7 ( 4 2 ) 3 8 ( 4 2 ) Innehåll i datablad Summering - Produktnamn och ett beskrivande namn - Kort beskrivning av vad kretsen gör - speciella funktioner man vill lyfta fram (=skryta med) - lockdiagram på högsta nivå Pinout - pin-namn - pin typ - kort beskrivning av pinnarnas funktion - kapselnummer Kort beskrivning av kretsens funktioner DC specifikation bsolut maxvärden för - matningsspänning - signalspänningar - temperatur (omgivningstemeratur mest relevant för en användare) Varje pinnes elektriska specifikation - V IL, V IH för ingångar - V OL, V OH för utgångar - ingångslast på varje ingång - drivförmåga för utgångar - viloström - läckström - power-down ström 3 9 ( 4 2 ) 4 0 ( 4 2 )

Summering C specifikation - setup- och hold tider på alla ingångar - clock to output fönster (snabbaste och långsammaste fall) - all annan kritisk timing Kapsel diagram Komplexa konstruktioner tas fram genom systematik och verktyg som stödjer detta. Val av verktyg som simulator är en avvägning mellan önskad noggrannhet och simuleringstid. 4 1 ( 4 2 ) 4 2 ( 4 2 )