Einführung - Lehrstuhl für Schaltungstechnik und Simulation
Einführung - Lehrstuhl für Schaltungstechnik und Simulation
Einführung - Lehrstuhl für Schaltungstechnik und Simulation
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Digitale <strong>Schaltungstechnik</strong><br />
Sommersemester 2006<br />
Prof. Dr. P. Fischer<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 1
Organisatorisches<br />
Vorlesung:<br />
Termin: Mo 15:30 – 17:00 (Block 5)<br />
Di 12:00 – 13:30 (Block 3) (insgesamt 24 Termine)<br />
Ort: B6, A1.01<br />
Dozent: Prof. Dr. P. Fischer, B6, 26, Raum B3.02, Tel. 2735, peter.fischer@ti.uni-mannheim.de<br />
Sekretariat Frau Wunsch, B6, 26, Raum B3.03, Tel. 2733, wunsch@ti.uni-mannheim.de<br />
Übung:<br />
Große Übung: Mi 8:30 – 10:00 (Block 1) in B6, A1.01<br />
Übungsleiter: Dipl. Inf. Christian Kreidl, B6, 26, Raum B3.07, Tel. 2727, christian.kreidl@ti.uni-mannheim.de<br />
Prüfung:<br />
Klausur vor Beginn des Wintersemesters<br />
Die Arbeiten in der Übung sind Teil des Prüfungsstoffs (also Verilog!)<br />
Internet:<br />
http://sus.ti.uni-mannheim.de/Lehre/DSTVorlesung06<br />
http://uxibo.de/uxipedia<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 2
Praktikum & Vorlesung<br />
<br />
<br />
<br />
<br />
Im Praktikum werden digitale Designs auf einem USB Board<br />
implementiert, das einen programmierbaren Xilinx ICs <strong>und</strong> ein<br />
Video-Interface enthält.<br />
Die UXIBOs werden an Zweiergruppen ausgeliehen <strong>und</strong><br />
können mit nach Hause genommen werden. Dort kann<br />
auf dem eigenen PC (Windows, zur Not Linux) gearbeitet<br />
werden.<br />
Infos zum UXIBO auf der LS-Seite oder im WiKi<br />
http://uxibo.de/uxipedia<br />
Beginnend mit einfachen logischen Verknüpfungen soll am<br />
Ende ein Videospiel implementiert werden<br />
(Game of Life, Screensaver, …).<br />
Andere Ideen sind willkommen!<br />
<br />
<br />
<br />
Designs werden z.T. als Schaltpläne eingegeben, hauptsächlich aber in der Hardware-Beschreibungssprache VERLIOG.<br />
In der VL gibt es 3 Doppelst<strong>und</strong>en zu Verilog, aber richtig erlernen kann man das nur durch Übung!<br />
Verilog ist ein wichtiges Werkzeug in der Vertiefung ‚Hardwareentwurf‘<br />
<br />
<br />
Um so weit zu kommen, werden die für die Arbeit mit den programmierbaren Bausteinen nötigen Gr<strong>und</strong>lagen so früh wie<br />
möglich behandelt.<br />
Der Aufbau von Transistoren, Herstellungstechnologie, Innenleben der Bausteine etc. werden daher erst im zweiten Teil<br />
des Semesters behandelt.<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 3
Umfrage<br />
Was ist n-Dotierung <br />
Wie funktioniert ein Bipolartransistor / ein MOS Transistor Was ist der Early – Effekt <br />
Wie werden Chips hergestellt <br />
Aus wie vielen Transistoren besteht ein CMOS NAND Was ist ECL <br />
Was ist ein PAL<br />
Wer kennt ABEL / Verilog <br />
Was ist ein Flipflop Wie ist ein Binärzähler aufgebaut <br />
Was ist ein Tri-State-Ausgang <br />
Was ist eine Karnaugh-Map <br />
Was ist das Zweierkomplement <br />
Wie werden float Zahlen implementiert <br />
Wie funktioniert ein Carry-Lookahead Addierer <br />
Was ist Booth-Encoding <br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 4
Inhalt der Vorlesung I<br />
Einführung & Motivation<br />
Historische Übersicht: Entwicklung der Technologie, Firmen <strong>und</strong> Leute<br />
Exponentielles Wachstum – Moore's Law<br />
Kombinatorische Logik<br />
Zustände <strong>und</strong> Zahlendarstellung<br />
Boolsche Algebra, Regeln der Schaltalgebra<br />
Two-Level Logik / Multi-Level Logik<br />
Beschreibungen von Funktionen: Tabelle, K-MAP, Gatter, Verilog, ...<br />
Elementare Gatter, Decoder, Multiplexer, Code-Umsetzer, ...<br />
Kompliziertere Funktionen: Halbaddierer, Volladdierer, Komparator, ...<br />
Arithmetik: Addierer, Subtrahierer <strong>und</strong> Multiplizierer<br />
Digitale <strong>Simulation</strong><br />
Hardware-Beschreibung mit Verilog<br />
Syntax<br />
Beschreibung kombinatorischer Schaltungen<br />
Beschreibung sequentieller Schaltungen<br />
Beispiele<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 5
Inhalt der Vorlesung II<br />
Sequentielle Logik<br />
Flipflops, Setup- <strong>und</strong> Hold- Zeiten<br />
Systematischer Entwurf von Schaltwerken ('Automaten')<br />
Zustandskodierung (Minimum Bit Change, One Hot)<br />
Zähler, Schieberegister, ...<br />
Pipelining<br />
Programmierbare Logikbausteine<br />
PLD-Strukturen: PAL, PLA, LCA<br />
Beispiel: Altera, Xilinx, Actel, etc., Beispiele für aktuelle Bauteile<br />
Computergestützter PLD-Entwurf<br />
Logiksynthese<br />
Logikminimierung<br />
'Design Flow' für Standardzellen / Full Custom Designs<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 6
Inhalt der Vorlesung III<br />
Diode <strong>und</strong> Transistor<br />
Dotierung, Bändermodell, Elektronen <strong>und</strong> Löcher, Sperrschicht<br />
Diode, Kennlinie, Kapazität<br />
MOSFET (einfaches Modell in starker Inversion, linearer Bereich <strong>und</strong> Sättigung)<br />
Bipolartransistor<br />
Herstellungstechnologie<br />
Logikfamilien <strong>und</strong> Signalniveaus<br />
NMOS, CMOS, TTL, ECL, PECL, LVDS, Pass Gates, CML<br />
Logikfamilien, Signalpegel, Störabstände<br />
Open drain, Wired-OR, Tri-State<br />
Speicher<br />
ROM<br />
EPROM, EEPROM, Flash-EPROM, ....<br />
statische RAMs<br />
dynamische RAMs<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 7
Literatur<br />
1. Für viele Themen die meisten Bücher über digitales Design<br />
2. Contemporary Logic Design<br />
R. Katz, Addison-Wesley 1994, ISBN 0-201-53376-6, 91 € (Amazon)<br />
Klassiker für CMOS Design, bezahlbar, einfach zu lesen<br />
3. Digital Integrated Circuits: A Design Perspective<br />
Jan M. Rabaey, Prentice Hall 1985, ISBN 0-13-178609-1, 165.75 € (Amazon)<br />
Stärker Hardware-orientiert<br />
4. Halbleiter <strong>Schaltungstechnik</strong><br />
U. Tietze, C. Schenk, Springer, 80 € (Amazon)<br />
In UB<br />
5. Digitaltechnik<br />
K. Beuth, Vogel Fachbuch, ISBN 3-8023-1755-6, 34.80 € (Amazon)<br />
6. Logischer Entwurf digitaler Systeme<br />
H. Liebig, S. Thome, Springer 1996, ISBN 3-540-61062-6, 45 € (Amazon)<br />
Schwerpunkt liegt auf funktionaler Ebene. Wird in der Rechnerarchitektur eingesetzt.<br />
7. Principles of CMOS VLSI Design<br />
Neil H. E. Weste, K. Eshraghian, Addison-Wesley 1994, ISBN 0-201-53376-6, 91 € (Amazon)<br />
Klassiker für CMOS Design, einfach zu lesen<br />
8. Verilog Tutorials gibt es im Netz – gute Links bitte weiterleiten !<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 8
Digital vs. Analog<br />
'Wir leben in<br />
einer digitalen<br />
Welt'<br />
Aber:<br />
Wir leben in<br />
einer analogen<br />
Welt !<br />
Alle 'Meßgrößen' unserer Umwelt (Licht, Töne, Temperatur, elektrische Spannungen, Druck etc..) sind<br />
analog.<br />
Die analoge Verarbeitung <strong>und</strong> Übertragung ist daher 'natürlich':<br />
- Telefon, Fernsehen, Musikaufnahme <strong>und</strong> Wiedergabe (Band, Schallplatte), Temperaturregelung, analoge Computer!<br />
Analoge Signale sind jedoch störanfällig <strong>und</strong> 'ungenau'. Daher waren z.B. Computer schon sehr früh digital.<br />
Mit den schnell steigenden Möglichkeiten der Digitaltechnik werden immer mehr analoge Signale durch<br />
digitalisierte Werte ersetzt:<br />
Analog<br />
Digital<br />
Wandler<br />
Digitale<br />
Verarbeitung <strong>und</strong><br />
Übertragung<br />
Digital<br />
Analog<br />
Wandler<br />
Der 'Aufwand' für die Analog-Digital <strong>und</strong> Digital-Analog-Wandlung ist geringer als der Vorteil der digitalen<br />
Verarbeitung<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 9
Die digitale Welt<br />
Maus,Touchpad<br />
Interfaces<br />
So<strong>und</strong>Karte<br />
Mikrofon<br />
CPU<br />
RGB DAC<br />
Web-CAM<br />
Internet<br />
Analog-Modem<br />
Analog-Modem<br />
CPU-Temperatur<br />
Grafikkarte<br />
RAM<br />
Lüftergeschwindigkeit<br />
Vorteile der digitalen Verarbeitung:<br />
- Störsicherheit, auch bei hohen Geschwindigkeiten. Möglichkeiten der Fehlererkennung <strong>und</strong> Korrektur<br />
- Hoher dynamischer Bereich / hohe Auflösung<br />
- Robuste Architekturen<br />
- Wiederverwertbarkeit von Design-Lösungen<br />
- Einfache Portabilität zwischen unterschiedlichen Technologien<br />
Aber: Wir leben in einer analogen Welt: digitale Signale sind analoge Signale!<br />
- Zum Verständnis <strong>und</strong> zur Optimierung (z.B. der Geschwindigkeit) werden die Gr<strong>und</strong>bauelemente als analoge<br />
Schaltungen betrachtet.<br />
- RAM-Leseverstärker, Leseverstärker von Platten, IO-Zellen etc. sind analoge Baugruppen!<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 10
Beispiel: Analoger Musik-Synthesizer<br />
Tastatur<br />
Exponentiator<br />
Hüllkurvengeneratoren<br />
Voltage<br />
Controlled<br />
Oscillator 1<br />
Voltage<br />
Controlled<br />
Filter 1<br />
Voltage<br />
Controlled<br />
Amplifier 1<br />
Voltage<br />
Controlled<br />
Oscillator N<br />
Voltage<br />
Controlled<br />
Filter N<br />
Voltage<br />
Controlled<br />
Amplifier N<br />
Rausch-<br />
Generator<br />
LF-Generator<br />
Verzerrer<br />
Moog, ca. 1970, > 25 Patente...<br />
Mischer<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 11
„Swiched On Bach“<br />
Revolutionäre 'So<strong>und</strong>s', z.B. Walter Carlos: 'Switched On Bach' ...<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 12
Digitaler Synthesizer ('So<strong>und</strong> Karte')<br />
Steuerung vom PC aus<br />
Digitale<br />
Erzeugung der<br />
Ausgangswerte<br />
Digital<br />
Analog<br />
Wandler<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 13
Der Kreis schließt sich…<br />
www.arturia.com: Software-Emulation des Moog Modular 5 u.a.<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 14
Beispiel: Analoges Echo/Hallgerät<br />
Einstellung Verstärkung<br />
Verstärker<br />
Hallspirale<br />
Verstärker<br />
Addierer<br />
Mehrfache Wiederholung erreicht man durch Rückkopplung des Ausgangssignal auf den Eingang<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 15
Digitales Hallgerät<br />
Einstellung<br />
Verzögerung<br />
Einstellung<br />
Verstärkung<br />
ADC<br />
Verzögerung<br />
(Schieberegister /<br />
Ringspeicher)<br />
X K<br />
Addierer<br />
DAC<br />
20 Bit ADC/DAC, 32 Bit Verarbeitung<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 16
Digitales Hallgerät – Praktische Realisierung<br />
ADC<br />
Digitaler Signalprozessor<br />
DAC<br />
20 Bit ADC/DAC, 32 Bit Verarbeitung, gleichzeitig digitale Filter, Raumsimulationen, ...<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 17
Implementierung von Digitalen Schaltungen<br />
Komplexität (#Transistoren)<br />
Ultra Large<br />
Scale<br />
Integration<br />
(ULSI)<br />
Large Scale<br />
Integration<br />
(LSI)<br />
Small Scale<br />
Integration<br />
(SSI)<br />
Prozessoren<br />
Very Large<br />
Scale<br />
Integration<br />
(VLSI)<br />
Medium Scale<br />
Integration<br />
(MSI)<br />
Komplexe<br />
programmierbare<br />
Logik<br />
(CPLD)<br />
Einfache<br />
programmierbare<br />
Logik<br />
(PLD)<br />
Semi Custom<br />
Gate<br />
Arrays<br />
Structured<br />
ASIC<br />
Standard<br />
Zell<br />
Designs<br />
Full Custom<br />
Full<br />
Custom<br />
Chips<br />
Universell verwendbar<br />
'general purpose ICs'<br />
Spezieller Einsatzbereich<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 18
'Small Scale Integration'<br />
Ab ~1960: Digitale Bauelemente enthalten einfache Funktionen:<br />
- 4 Gatter, 1 Decoder, 4 Bit Zähler<br />
- Dazu 'kleine' Speicherbausteine<br />
- ICs im Dual-In-Line (DIL) Gehäuse<br />
Meist nur ein- oder doppelseitige Platinen ('PCB': Printed Circuit Board)<br />
Beispiel: Drucker-Interface für den AppleII Computer:<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 19
Beispiel für SSI ICs<br />
74LS00: 4 fach NAND<br />
74LS90: 4 Bit Decade-Zähler (0..9)<br />
5V, 7 mW, t PD =10 ns<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
5V, 45 mW, f max =16 MHz<br />
P. Fischer, TI, Uni Mannheim, Seite 20
'Medium Scale Integration'<br />
Ab ~1970: Komplexere ICs, z.B. einfache Mikroprozessoren (6502, 8080)<br />
Beispiel: Apple Computer (1977, 8Bit, 1 MHz). RAMs mit 8k x 1 bit, ROMs mit 8kx8 bit<br />
Video<br />
CPU<br />
RAM<br />
ROM<br />
'Glue<br />
Logic'<br />
(Klebe-<br />
Logik)<br />
Diese vielen IC haben<br />
'wenig' Funktion.<br />
Kann man sie ersetzen<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 21
Einfache programmierbare Logik<br />
Chips enthalten regelmäßige Strukturen aus UND <strong>und</strong> ODER Elementen, die vom K<strong>und</strong>en für eine<br />
spezielle Anwendung programmiert werden können ('semi custom')<br />
Zunächst nur einmal programmierbar (One-Time-Programmable, OTP), dann UV-löschbar, dann<br />
elektrisch löschbare Typen<br />
Verschiedene Varianten haben Flipflops am Ausgang, so daß auch Zähler etc. erzeugt werden können<br />
PLA<br />
Zum Herausfinden des Programmiermusters sind erstmals notwendig:<br />
- Beschreibungssprache für die Logik (meist 'ABEL')<br />
- Software, die die gewünschte Funktion mit den technischen Möglichkeiten des Bausteins<br />
darstellt ('Synthese-Tools')<br />
- Software <strong>und</strong> Hardware zum Programmieren der Bausteine<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 22
Beispiel PALCE 16V8<br />
Fortgeschrittenes PAL (feste ODER-Struktur)<br />
8 Eingänge, 8 Ausgänge (können als Eingänge geschaltet werden), 20 Pins (+ OE, CLK, GND, VDD)<br />
Ausgänge mit FFs oder kombinatorisch, programmierbare Polarität, Tri-state programmierbar<br />
Ausschnitt<br />
(2/8 Ausgängen)<br />
Werden<br />
programmiert<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 23
Komplexere programmierbare Bausteine<br />
'Field Programmable Gate Arrays' FPGAs (z.B. Xilinx, 1984):<br />
Slew<br />
Rate<br />
Control<br />
Passive<br />
Pull-Up,<br />
Pull-Down<br />
Vcc<br />
D Q<br />
Output<br />
Buffer<br />
Pad<br />
Q D<br />
Delay<br />
Input<br />
Buffer<br />
IO Block<br />
C1 C2 C3<br />
C4<br />
H1 DIN S/R EC<br />
S/R<br />
Control<br />
G4<br />
G3<br />
G2<br />
G1<br />
G<br />
Func.<br />
Gen.<br />
D IN<br />
F'<br />
G'<br />
H '<br />
D<br />
SD<br />
Q<br />
C L B<br />
S w itc h<br />
M a tr ix<br />
C L B<br />
F4<br />
F3<br />
F2<br />
F1<br />
F<br />
Func.<br />
Gen.<br />
H<br />
Func.<br />
Gen.<br />
G'<br />
H'<br />
D IN<br />
F'<br />
G'<br />
H '<br />
1<br />
S/R<br />
Control<br />
EC<br />
RD<br />
D<br />
SD<br />
Q<br />
Y<br />
C L B<br />
C L B<br />
Switch matrix<br />
K<br />
Logic Block<br />
H'<br />
F'<br />
1<br />
EC<br />
RD<br />
X<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 24
FPGAs: Xilinx - State of the Art ()<br />
Moderne FPGAs bestehen aus einem Pool von<br />
Logikblöcken, RAM, Multiplizierer,..., die 'frei'<br />
verdrahtet werden können<br />
Die meisten Chips können inzwischen beliebig<br />
oft umprogrammiert werden<br />
Damit ist sehr schnelle <strong>und</strong> flexible Produktentwickung<br />
möglich. Viele 'Full custom' Designs<br />
werden unnötig<br />
Xilinx Patent 4,706,216<br />
'Configurable Logic Element' (1984)<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 25
Was in den neuesten Xilinx Chips steckt<br />
ca. $100<br />
(Einzelstücke)<br />
ca. $2000<br />
(Einzelstücke)<br />
ca. $180<br />
(Einzelstücke)<br />
(Preise Stand 2003)<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 26
K<strong>und</strong>enspezifische Chips<br />
Für Massenanwendungen (PCI Interface, CD-Player, MPEG-Decoder, Ethernet Chip, ...) sind die<br />
FPGA-Lösungen zu teuer.<br />
Die Entwicklung eines auf die Anwendung genau zugeschnittenen Designs ('Full Custom') kann sich lohnen.<br />
Andererseits erfordert es viel Zeit, Personal <strong>und</strong> Know-How, einen Chip 'von Null' zu entwickeln<br />
Kosten<br />
Kosten als Funktion des Produktionsvolumens<br />
Full custom<br />
Bei kleinen Stückzahlen<br />
sind die<br />
Entwicklungskosten für<br />
full custom hoch<br />
Die Kosten mit 'Commercial<br />
Of The Shelf' (COTS)<br />
sinken bei großen<br />
Stückzahlen nicht mehr<br />
Diskret aufgebaut<br />
'Break-Even'<br />
hängt von erreichtem<br />
Produktionsvolumen ab.<br />
Produktionsvolumen<br />
Ein weiterer Vorteil von full custom Chips ist der Schutz vor Kopien (Sicherung der 'Interlectual Property')<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 27
Gate Array / Sea of gates / ‘gate forest’ / (structured ASIC)<br />
A<br />
1 2<br />
B<br />
I/O Pads<br />
3 4<br />
OUT<br />
Gatter /<br />
Vorstufen von<br />
Gattern<br />
Platz für Leitungen<br />
(Routing channel)<br />
Ein Chip mit einer große Anzahl an NICHT verdrahteten Gattern / Transistoren wird vorfabriziert<br />
Die gewünschte Funktion wird durch k<strong>und</strong>enspezifische Verbindungen in wenigen (<strong>und</strong> nur mit<br />
den) Verdrahtungsebenen erreicht<br />
+ Relativ geringe Kosten (nur 2-3 Metalllagen müssen für den K<strong>und</strong>en produziert werden)<br />
− Dichte nicht optimal (Gatter bleiben ungenutzt, mache Funktionen sind mit den vorhandenen Gattern<br />
nicht optimal zu implementieren).<br />
− Performance nicht besonders hoch<br />
‚Structured ASICs‘ bieten auch komplexe Blöcke (CPU, RAM, ADC…)<br />
Gate Arrays <strong>und</strong> Sea of Gates inzwischen wenig gebräuchlich – Structured ASICs sind im Kommen<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 28
Zusatz: Structured ASIC<br />
Eine Variante der Gate / Cell Arrays mit eingebetteten Spezialblöcken<br />
Wird von einigen neuen Firmen (Synplicity, LSI Logic) propagiert:<br />
- Einmalkosten für Ingenieurdienstleistung/Entwicklung (NRE - costs = non recurring engineering costs) werden bei den<br />
modernen Technologien immer höher. Das ist z.T. nicht mehr finanzierbar.<br />
Kosten für Chipentwicklung (lt. Markt & Technik 14/2004) für ASIC in 0.13 µm Technologie:<br />
- Personalkosten (46%)<br />
- EDA Tools (17%)<br />
- Maskenkosten (16%)<br />
- Rechenleistung (ca. 16%)<br />
- übergeordnete Kosten<br />
Beispiel LCA Entwicklung (Altera):<br />
- Entwicklung der ‚Stratix‘-Chipfamilie: 75 M$<br />
- Entwicklung der ‚Stratix II‘-Chipfamilie in 90nm Technologie: 130 M$<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 29
Standardzellen<br />
Der Chiphersteller stellt eine Bibliothek mit (vielen) verschiedenen 'StandardZellen' (Gatter,<br />
Multiplexer, kompliziertere Blöcke wie Zähler, Addierer, ... auch RAMs, IO Pads...) zur Verfügung<br />
Die Standardzellen haben alle ähnliche Geometrie <strong>und</strong> können so auf 'Schienen' nebeneinander plaziert<br />
werden). Masse <strong>und</strong> die Versorgungsspannung sind 'automatisch' angeschlossen.<br />
Die Verbindung der Zellen erfolgt dann in 'Routing channels'<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 30
Standardzellen<br />
Der K<strong>und</strong>e setzt seine Schaltung aus den verfügbaren Standardzellen so zusammen, daß die Fläche <strong>und</strong><br />
die Performanz möglichst noch ist. (Hardwarebeschreibung ⇒ Synthese einer Netzliste). <strong>Simulation</strong>!<br />
Dieser Synthese-Vorgang ist kompliziert !<br />
Ein Layout des Chips wird generiert, indem die Zellen in Zeilen plaziert werden. Die Versorgungsspannungen<br />
sind automatisch verb<strong>und</strong>en. Die Zeilen werden untereinander mit einem X-Y-Raster<br />
angeschlossen.<br />
Die 'optimale' Plazierung der Zellen ist eine schwierige Aufgabe!<br />
Die Ein-Ausgänge der Zellen werden entsprechend der Netzliste verb<strong>und</strong>en<br />
Dieser 'Routing' ist im Detail kompliziert!<br />
Bei Technologien mit >2-3 Metalllagen wird die Verdrahtung über den Zellen gemacht. Das spart viel<br />
Platz <strong>und</strong> erleichtert den Arbeitsschritt sehr.<br />
Die durch die Verdrahtung eingeführten Verzögerungen müssen anschließend erneut simuliert werden !<br />
Designs enthalten z.T auch spezielle 'full custom' Zellen (spezielle analoge Funktionen, spezielle IO<br />
Pads,...)<br />
Jeder Chip ist völlig anders. Alle Technologieschritte müssen für den K<strong>und</strong>en durchgeführt werden<br />
− Relativ hohe Entwicklungskosten<br />
+ Sehr hohe Performance<br />
+ Kleine Chips<br />
z.Z. sehr attraktive Möglichkeit, wenn Know-How <strong>und</strong> notwendige Infrastruktur vorhanden<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 31
Beispiel eines kleinen Standardzellen-Chips<br />
Zeilen von Standardzellen<br />
Full Custom<br />
Block<br />
Ring für Versorgungsspannungen<br />
IO Pads<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 32
Etwas größer: 'Event Builder' für die Teilchenphysik<br />
Der genaue Inhalt der Full-<br />
Custom Blöcke ist dem<br />
K<strong>und</strong>en u.U. nicht bekannt.<br />
Der Hersteller fügt das<br />
'geheime' Innenleben erst<br />
vor der Herstellung ein.<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 33
Sehr großes Standard-Zell Design: ATOLL<br />
Entwickelt am LS Rechnerarchitektur hier in Mannheim<br />
Schnelles Interface mit sehr kleiner Latenz zum Aufbau von Rechnernetzen<br />
5 Millionen Transistoren<br />
0.18 µm Technologie<br />
64 bit 133 MHz PCI-X Interface<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 34
Fertige komplexe Baugruppen<br />
IP – Cores: Bestimmte Funktionsblöcke können als 'Intellectual Property – Cores' eingekauft werden<br />
Werden vom Hersteller der Technologie oder von spezialisierten Firmen angeboten<br />
Angeboten werden<br />
- 'soft cores' - source code der Hardwarebeschreibung<br />
- 'hard cores' - (optimierte) layouts<br />
Beispiele:<br />
- Mathematische Funktionen (Multiplizierer, Sinus, FFT,...)<br />
- Speicher<br />
- Fehlererkennung, Fehlerchecks<br />
- Prozessoren<br />
- DSPs<br />
- BUS-Interfaces (PCI, I2C, JTAG)<br />
- Peripheriebausteine<br />
- PLL, DLL<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 35
Full Custom Chips<br />
Das Layout des Chips (auf Transistorebene) wird vom K<strong>und</strong>en erstellt.<br />
Notwendig zur Implementierung von speziellen Funktionen / Techniken (analoge Chips, ungewöhnliche<br />
Logikfamilien für die keine Standardzellen existieren, ...)<br />
+ Besonders effiziente Schaltungen mit höchster Performance<br />
+ Besonders kompakte Layouts<br />
+ Herstellungskosten < Standard Zellen (da kleinere Chips)<br />
- Lange Entwicklungszeit, erfordert viel Know-How ⇒ Entwicklungskosten > Standard Zellen<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 36
Optimierung durch Full Custom Design<br />
Beispiel D-Latch<br />
Latch aus Gattern<br />
D<br />
Enable<br />
Q<br />
Q<br />
18 Transistoren<br />
Latch aus Transistoren<br />
Enable<br />
D<br />
Enable<br />
schwacher Inverter<br />
Q<br />
Q<br />
6 Transistoren !<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 37
Full Custom Chip: Pentium Prozessor<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 38
Gate Array, Semi-Custom, Full-Custom ICs<br />
Gate Array<br />
Standard Cell<br />
Flächen: ~3:2:1 für gleiche Funktion<br />
Full Custom<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 39
Grob-Ziele der Vorlesung<br />
Verständnis der zugr<strong>und</strong>e liegenden Hardware<br />
Aufbau der Gr<strong>und</strong>bausteine digitaler Schaltungen aus Transistoren<br />
Unterschiedliche 'Logikfamilien', Signalpegel etc.<br />
Elementare Gr<strong>und</strong>bauelemente (Gatter, Multiplexer, ...)<br />
Komplexere Module (Addierer, Multiplizierer, ...)<br />
Getaktete Schaltungen<br />
Programmierbare Logikbausteine<br />
Funktion <strong>und</strong> deren Beschreibung<br />
Bool'sche Algebra, Schaltalgebra, Minimierung<br />
Funktionale Beschreibung (Hardware-Beschreibungssprachen)<br />
Erzeugung von Funktionen mit gegebenen Hardware-Resourcen<br />
Strategien zum Entwurf von Schaltungen (Schaltpläne, Synthese) <strong>und</strong><br />
<strong>Simulation</strong>swerkzeuge<br />
Praktische Erfahrung im FPGA Design<br />
In der Übung<br />
Digitale <strong>Schaltungstechnik</strong> 2006 - Einführung<br />
P. Fischer, TI, Uni Mannheim, Seite 40