Schaltkreis- und Systementwurf - TU Dresden
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Elektrotechnik und Informationstechnik, Stiftungsprofessur hochparallele VLSI Systeme und Neuromikroelektronik Schaltkreis- und Systementwurf
• Dr.-Ing. Sebastian Höppner • Raum TOE216 • sebastian.hoeppner@tu-dresden.de • https://tu-dresden.de/ing/elektrotechnik/iee/hpsn • Vorlesungsfolien unter: • https://tu-dresden.de/ing/elektrotechnik/iee/hpsn/studium/materialien 17.10.2019 Folie Nr. 2
Schaltkreis- und Systementwurf • Entwurf von integrierten Schaltkreisen („Chips“) als Kernbestandteil moderner Elektronikprodukte • Realisierung komplexer Schaltungen auf einem Chip ermöglicht: • Hohe Funktionalität • Hohe Integrationsdichte • Geringe Verlustleistung • Hohe Zuverlässigkeit • Die Verkleinerung der Fertigungstechnologien ermöglicht die Integration immer komplexerer Systeme • Herausforderung bei Entwurf und Verifikation 17.10.2019 Folie Nr. 3
Komplexes Multiprozessor-System-on-Chip • „Tomahawk2“ Software-Defined-Radio JTAG, AVFS controller DDR2 RAM IF Basisbandprozessor • 36 mm² Chipfläche in 65nm CMOS Duo PE Duo PE Technologie APP core FEC „Tommy“ R0 • 465 Pads Duo PE Duo PE FPGA Interface R1 • 10,2 Millionen Gatter • 750kByte SRAM R3 Duo PE Duo PE M • 20 Prozessorkerne CM core R2 • Adaptives und dynamisches Power-Management SPHDEC Duo PE Duo PE • 17 Taktgeneratoren • Network-on-Chip mit seriellen on-chip links mit DDR2 RAM IF bis zu 72GBit/s Datenrate serial on-chip link (72GBit/s) local ADPLL clock generator • DDR2 Speicherinterface • FPGA Interface mit 10GBit/s Entwickelt durch die Professuren HPSN, und Vodafone Chair (Prof. Fettweis) im CoolBaseStations Projekt 17.10.2019 Folie Nr. 4
Inhalt der Lehrveranstaltung • Entwurfsablauf integrierter digitaler Schaltungen • Realisierung von Algorithmen in Hardware • Hardwarebeschreibungssprache Verilog • Schaltungssimulation und Verifikation • Digitale Schaltungen in CMOS Technologie 17.10.2019 Folie Nr. 5
Inhalt der Lehrveranstaltung REGA REGB REGC REGD A1=0 „don‘t care“ 1 A B C S_IDLE (00) × × D D A1=1 Z1=0 MUL1 MUL2 REGD1 Z2=0 2 E + F G S_UNUSED (11) S_CALC a b (01) a2 b2 a1 b1 a0 b0 c0 REGD2 3 3 ADD1 Z1=X A2=1 A2=0 3 CLA Logic I Z2=X + g3 p3 g2 p2 g1 p1 g0 p0 H Adder Logic Z1=0 Specification S_COMP (10) Z2=1 ADD2 NEG 4 Functional J BRANCH? Design Entry Verification REGE g3,2 p3,2 g2,1 p2,1 g1,0 p1,0 g0,in RTL //Addierer g3,0 p3,0 g2,in g1,in GG module adder (sum_o, c_o, c_i, a_i, b_i) ; Synthesis PG parameter C_DWIDTH=4; input [C_DWIDTH-1:0] a_i, b_i; g3,in s2 s1 s0 c_i; s3 input Netlist 27.01.2016 output [C_DWIDTH-1:0] sum_o; output c_o; Timing/SignOff Place&Route assign {c_o, sum_o} = a_i + b_i + c_i; Verification endmodule Layout Tape-Out VDD VDD Master Slave Abstraktion Manufacturing VDD CN QI_MS VDD C QI_SL Test C C CN CN ASIC D CN QIN_MS VDD C QIN_SL VDD VSS VSS VDD VSS VSS VSS VSS Q C CN VSS TU Dresden, 18.10.2011 Folie Nr. 6
Ablauf • Wintersemester: 2/1/0, Sommersemester: 0/0/2 • Wintersemester: • Vorlesung: Do. 2.DS, Ort: BAR/205/H • Übung: Mi. 4.DS, Ort: GÖR/226/H − Konsultation zur Belegarbeit • Praktikum: Fr. 4.DS, Ort: TOE/201 − Infos und Termine siehe Webseite − Einführungspraktikum und betreutes Praktikum zur individuellen Arbeit am Beleg • Sommersemester: • Praktikum: Zeit: Fr. 4.DS, Mi 4.DS, Ort: TOE/201 − Betreutes Praktikum zur individuellen Arbeit am Beleg Einführung ins Praktikum und Belegarbeit: Mittwoch: 23.10.2019, 4.DS, Ort: GÖR/226/H 17.10.2019 Folie Nr. 7
Belegarbeit • Realisierung eines selbst gewählten Algorithmus in Hardware • Referenzimplementierung in Software • Architekturentwicklung (Scheduling, Datenpfad, Ablaufsteuerung) • Implementierung der Schaltung mittels Datenpfadbaublöcken • Verifikation durch Schaltungssimulation • Synthese und Place&Route der Schaltung • Schriftlicher Beleg (Details in der Übung!) • Elektronische Abgabe (.pdf) • Abgabe: • Prüfungseinschreibung in dem Semester in dem Abgabe erfolgt! • Abgabe bis 15.09. (SS) bzw. 16.03. (WS) 17.10.2019 Folie Nr. 8
Lernziele • Diese Lehrveranstaltung wird • den Design Flow für digitale integrierte Schaltungen vorstellen • Methoden zur Implementierung von Algorithmen in Hardware vorstellen • Grundlagen und Konzepte der Verilog HDL vorstellen • Verifikationsstrategien vermitteln • Vertiefende Grundlagen zur Realisierung digitaler Schaltungen in CMOS Technologien vermitteln • Praktische Erfahrung in der Implementierung einer digitalen Schaltung vermitteln • Anregung zum Selbststudium geben 17.10.2019 Folie Nr. 9
Weitere Lehrveranstaltungen der Professur • VLSI Prozessorentwurf • RTL Entwurf eines Prozessors • Simulation und Verifikation • Top-Down Design RTL2GDS Flow (Synthese, Timing Analyse, Place&Route, Power Analyse, Sign-off Analyse) • Praktikum: Implementierung eines Prozessors • VHDL-Entwurf (Oberseminar Informationstechnik) • Einführung in Entwurf, Modellierung, Verifikation mittels VHDL • Vorstellung von Aufgaben und Lösungsansätzen aus aktuellen Forschungsarbeiten des Lehrstuhls • Referate der Teilnehmer zu ihren Beleg-Projekten • Neuromorphe VLSI-Systeme • Entwurfsmethoden für integrierte analoge CMOS- Schaltungen und deren Schaltungsdimensionierung • Neuromorphe VLSI-Systeme und deren neurobiologische Grundlagen, Anwendungen z.B. in Brain-Machine- Interfaces • Praktikum zur Erstellung und Analyse von analogen und neuromorphen CMOS-Schaltungen mit der Entwurfssoftware Cadence DF2 17.10.2019 Folie Nr. 10
Anwendungsspezifische Integrierte Schaltungen (ASICs) 17.10.2019 Folie Nr. 11
ASICs Quelle: Tobias G. Noll, Thorsten von Sydow, Bernd Neumann, Jochen Schleifer, Thomas Coenen, and Gotz Kappen “Reconfigurable Components for Application-Specific Processor Architecture” in Dynamically ReconfigurableSystems, Springer, 2010 17.10.2019 Folie Nr. 12
Beispiel System-on-Chip: TI OMAP5430 GP Prozessor DSP ASIC Quelle: anandtech.com 17.10.2019 Folie Nr. 13
Entwurfsstile • Full-Custom Design • Semi-Custom Design • Manuelle Eingabe von Schaltplan • Manuelle Eingabe einer (schematic) und Layout Hardwarebeschreibung (HDL) • Vorteile: • (Teil-) automatisierte Erzeugung − Detaillierte Optimierungen der Entwurfsdaten (Netzliste, möglich Layout) • Nachteile: • Vorteile: − Geringe Produktivität − Sehr hohe Produktivität • Nachteile: • Anwendungen: − Eingeschränkte Optimierung − Analoge und Mixed-Signal von Schaltungseigenschaften Schaltungen − Grundelemente digitaler • Anwendungen: Schaltungen (Standardzellen, − Komplexe Digitale Schaltungen I/O Zellen, Speicher) − Systems-on-Chip − Speziell optimierte digitale Schaltungen (z.B. High-speed, Ultra-Low-Power) 17.10.2019 Folie Nr. 14
Beispiel: Entwurfsstile (System-on-Chip Blizzard) • 28nm SoC Blizzard • Entwickelt bei TUD-HPSN im CoolPower Projekt (mit ZMDI) • Prozessor mit adaptivem Digital Control Power Management (AVFS) (75µm x 14µm) • Column-Latches SARDC/DC On-Chip ADC Wandler • Hierarchisches Design • Entwurfsstile: • Full-Custom 4bit • Semi-Custom Comparator sub- FlipFlop DAC Row-Latches Capacitor and Decoder Array (140µm x 100µm) coupling capacitor Sample Switch 17.10.2019 Folie Nr. 15
Kommerzielle Aspekte des ASIC und SoC Designs Markt • Anforderungen (Spezifikation) • Kunden • Preis des Chips • Entwicklungszeit (Time-to-Market) Mehrwert Kosten • Neue Funktionalität (z.B. • Entwicklung (Design, neuer Funkstandard) Implementierung, Verifikation) • Bessere Funktionalität (z.B. • Einkauf von IP längere Akkulaufzeit) • Produktion (Masken, • Kleinerer Form-Faktor Waferherstellung, Packaging) (Gehäuse Größe) • Test der produzierten Chips • Reduzierte Anzahl der Chips im System • Zuverlässigkeit • Architekturentscheidung • Technologieentscheidung • Package • Entwurfsmethodik 17.10.2019 Folie Nr. 16
Entwurfsablauf integrierter Digitalschaltungen 17.10.2019 Folie Nr. 17
Design Flow: Semi-Custom Digital Design Specification Functional Design Entry Flow Verification Step RTL Design Synthesis view Netlist Timing/SignOff Place&Route Verification Abstraktion Layout Tape- Manufacturing Out Test ASIC TU Dresden, 18.10.2011 Folie Nr. 18
Spezifikation und Design Entry • Entwurf von Schaltungsmodulen basierend auf Systemspezifikation als Register-Transfer-Level (RTL) Beschreibung • Verwendung von Hardwarebeschreibungssprachen (HDL) wie z.B. Verilog, VHDL • Synthesegerechte Beschreibung • Check von RTL Coding Guidelines module fsm ( module decoder ( Spezifikation module adder_reg (clk_i, a_i, b_i, c_o); input clk_i; input [7:0] a_i, b_i; output [8:0] c_o; reg [8:0] c_r; always @(posedge clk_i) begin endmodule c_r
Testbench Implementierung • Testbench: Simulationsumgebung für ein Systemmodul • Stimulus Generator erzeugt Eingangssignale • Response Checker prüft Ausgangssignale gemäß Spezifikation • Optional: Vergleich mit Referenzmodell möglich • Testbench üblicherweise mit HDL als Verhaltensbeschreibung implementiert optional Reference Model Simulation Generator Response Checkers Stimulus Device Under Test (DUT) Testcase Testbench 17.10.2019 Folie Nr. 20
RTL Simulation • Simulation der Testbench mit eventbasiertem Digitalsimulator • Tools, u.a. • Cadence NCSIM • Mentor Questa Interaktive Analyse/Debugging Self-checking Testbench Test PASS/FAIL … #### ### #### #### ##### #### … # # # # # # # # # … #### ### #### #### ##### #### #### ##### ### ### ### # # #### # # ### # # #### # # # ##### ###### #### # # # # # # # # # ##### ## ###### ### ## # ##### #### ### # #### # ###### #### # #### # ###### ### # #### # # # ### ## # # # # ## # ##### #### # # ##### # #### #PASSed TUD_TESTBENCH:NOTE:SIMPASS: Test # # # #### #### ##### #### TUD_TESTBENCH:NOTE:SIMPASS: Test PASSed TUD_TESTBENCH:NOTE:SIMPASS: Test PASSed 17.10.2019 Folie Nr. 21
Logiksynthese • Abbildung einer synthesegerechten RTL Beschreibung in eine Gatternetzliste basierend auf Standardzell Bibliotheken • Library File (.lib) beinhaltet Informationen zu Funktionalität, Timing, Power • Vorgabe von Constraints, z.B. Taktfrequenz, Eingangs- und Ausgangsdelay • Tools, u.a. • Synopsys DesignCompiler • Cadence RTLCompiler always @(posedge clk) begin RTL Synthese data_in data0 data_out D Q D Q data0
Logiksynthese -Ablauf Timing analyze / Constraints Verilog elaborate (clocks, source code IO-Delays) compile Generic Structure optimization Target Library GFF GEN1 mapping Optimized Structure Netlist D Q AND22 DF8 OA21 6. Juli 2010 Folie Nr. 23
Place & Route Standardzellen • Automatisiertes Platzieren und Verdrahten der Standardzellen • Synthese von Clock Trees • Extraktion von parasitären Layout Elementen Schaltungsblock Chip 17.10.2019 Folie Nr. 24
Statische Timing Analyse (STA) • Check von Timing Constraints Data Path data Kombinatorische Logik (ΔTLogic) Setup Check: Tclk + Tskew ≥ ΔTLogic + Tsetup clk Tskew Hold Check: Clock tree Tskew + Thold ≤ ΔTLogic Hold Time Setup Time clk data_in Hold Violation Setup Violation 17.10.2019 Folie Nr. 25
Netzlisten Simulation • Annotation von Verzögerungszeiten an die Gatternetzliste • Individuelle Delays und Constraint Checks (Setup, Hold) für jedes Gatter • zeitaufwändig optional Reference Model Simulation Generator Response Checkers Stimulus Device Under P&R Netzliste Test (DUT) Extrahiertes Timing Testcase Testbench 17.10.2019 Folie Nr. 26
Design Views • Ein Schaltungsmodul kann verschieden repräsentiert sein: • Verhaltensmodel (behavioral) − Verhaltensmodel für Digitalsimulator − „Executable System Specification“ • RTL − Synthesefähige RTL Beschreibung • Gatter Netzliste − Gatternetzliste als Ergebnis von Synthese/P&R • Transistor-Netzliste (schematic netlist) − Netzliste auf Transistorlevel • Transistor-Netzliste (extracted netlist) Abstraktion − Netzliste mit Transistoren und parasitären Layout Elementen • Layout − Physische Darstellung der zu fertigenden Schaltungsgeometrien 17.10.2019 Folie Nr. 27
Hierarchisches Design • Hierarchische Gliederung von komplexen Systemen Beispiel: Multiprozessor System „Tommy“ 17.10.2019 Folie Nr. 28
Hierarchisches Design – Sub-Module • Beispiel: Volldigitaler Phasenregelkreis (ADPLL) Taktgenerator Oszillator Frequenzteiler Phasendetektor DIV,PFD Steuerwerk DCO OL CLKGEN Controller 17.10.2019 Folie Nr. 29
Bottom-Up Design Flow Tape-out Spezifikation System Module Module Module Abstraktion Sub-Module Sub-Module Sub-Module Zeit 17.10.2019 Folie Nr. 30
Bottom-Up Design • Entwurf von Sub-Modulen basierend auf Systemspezifikation • Zusammenfügen der Module zum Gesamtsystem • Vorteile ☺ • Strukturierte Herangehensweise für kleinere Baublöcke in kleinen Entwurfsteams • Geeignet für Sub-Blöcke mit erhöhtem Entwurfsaufwand (z.B. Analog, Mixed-Signal) • Geringer zusätzlicher Modellierungsaufwand • Benötigt keine vollständige Spezifikation bei Entwurfsbeginn • Nachteile • Ggf. aufwändige Re-Design Zyklen nötig • Implementierungsarbeit im Team erfordert sehr genaue Spezifikation • Nur sequentielle Entwurfsabläufe möglich 17.10.2019 Folie Nr. 31
Top-Down Design Tape-out Spezifikation System Module Module Module Abstraktion Sub-Module Sub-Module Sub-Module Zeit 17.10.2019 Folie Nr. 32
Top-Down Design • Entwurf des Systems basierend auf Systemspezifikation • Modellierung von Modulen- und Sub-Modulen • Implementierung von Modulen- und Sub-Modulen • Vorteile ☺ • Strukturierte Herangehensweise für komplexe Systeme in größeren Entwurfsteams • Parallele Entwurfsarbeiten möglich − RTL Implementierung − Synthese − Place&Route − Verifikation • Schnelle Verfügbarkeit eines simulierbaren Gesamtsystems (virtueller Prototyp) für − Performance Abschätzungen − Applikationsentwurf (PCB, Firmware) • Nachteile • Detaillierte Spezifikation bei Entwurfsbeginn benötigt • Modellierungsaufwand für Module und Sub-Module 17.10.2019 Folie Nr. 33
Mixed-Signal und Mixed-Level Repräsentation • Möglichkeit der Simulation von Systemkomponenten in behavioral unterschiedlichen Abstraktionsebenen (Views) • Grundlage des Top-Down Designs RTL • Beispiel: Implementierung eines ADPLL Taktgenerators: gate Full-Custom Full-Custom transistor Analog Digital Oszillator Frequenzteiler Phasendetektor Semi-Custom Steuerwerk Digital (Synthese, P&R) 17.10.2019 Folie Nr. 34
Mixed-Signal und Mixed-Level Simulation • Mixed-Level Repräsentationen in unterschiedlichen behavioral Entwurfsphasen Systementwurf RTL Verifikation RTL Oszillator Frequenzteiler Oszillator Frequenzteiler gate Phasendetektor Phasendetektor transistor Steuerwerk Steuerwerk Oszillator Frequenzteiler Oszillator Frequenzteiler Phasendetektor Phasendetektor Steuerwerk Steuerwerk Oszillator Verifikation Post-Layout Simulation 17.10.2019 Folie Nr. 35
Design Flow im Praktikum Schaltkreis- und Systementwurf Entwicklung des Algorithmus Gesamtschaltung Datenpfad aus Sub- FSM RTL Modulen (Addierer, Steuerlogik RTL Multiplizierer, Register) Synthese Abstraktion Gate-Level Netzliste Layout 17.10.2019 Folie Nr. 36
Design Flow im Praktikum Schaltkreis- und Systementwurf • Design Struktur RTL Gate Netlist FSM Steuerlogik Place&Route Netzliste • Mehr Infos: → siehe Praktikumsanleitung 17.10.2019 Folie Nr. 37
Sie können auch lesen