Digitaltechnik
Transcrição
Digitaltechnik
Digitaltechnik Zieltechnologien Digitaltechnik Andreas König Professur Technische Informatik Fakultät Informatik Technische Universität Chemnitz Wintersemester 2001/2002 © Andreas König Folie 5-1 Digitaltechnik Zieltechnologien Rekapitulierung zu Kapitel 4 ¾ ¾ ¾ ¾ Entwurf zweistufiger Logik Umsetzung vorliegender Funktionsrepräsentationen (Kapitel 3) in Schaltwerk minimalen Aufwands bzw. Kosten Einführung geeigneter Kostenfunktion Vorstellung von Minimierungstechniken: ¾ ¾ ¾ ¾ ¾ ¾ Graphische Minimierung Tabellarische Minimierung Rechnergestützte Minimierung Exakte und heuristische Logikminimierung Vorstellung eines Werkzeugs zur Logiksynthese (Espresso) Anwendung eines kleinen Design-Flows (Espresso, PSPICE) auf einige Beispiele; implizite Verwendung von TTL-Technologie © Andreas König Folie 5-2 1 Digitaltechnik Zieltechnologien Vorlesungsgliederung: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Einführung Kodierung und Arithmetik Grundlagen der Booleschen Algebra Entwurf zweistufiger kombinatorischer Logik Zieltechnologien und Technologieanpassung Zeitliches Verhalten kombinatorischer Schaltnetze Entwurf sequentieller Schaltwerke Funktionsblöcke digitaler Rechner und Systeme Entwurf von Systemen der Digitaltechnik Ausblick © Andreas König Folie 5-3 Digitaltechnik Zieltechnologien Kapitelgliederung: 5. Zieltechnologien und Technologieanpassung 5.1 5.2 5.3 5.4 5.5 5.6 Implementierung digitaler Logik Entwurfsstile CMOS Logik-Schaltungen Anpassung an vorliegende Zellkataloge Multiplexer und Decoder Anwenderprogrammierbare Logikbausteine (PAL, PLA, EPLD, FPGA) © Andreas König Folie 5-4 2 Implementierung digitaler Logik Digitaltechnik Zieltechnologien ¾ Die vorhergehenden Kapitel beschränkten sich auf Methoden der Beschreibung und Minimierung Boolescher Funktionen (Verhaltensebene) ¾ Die Frage der konkreten physikalische Implementierung und des zeitlichen Verhaltens blieb bislang ausgeklammert ¾ Für eine Systemrealisierung muss jedoch eine konkrete Umsetzung erfolgen ¾ Hierzu muss eine Festlegung bezüglich der Zieltechnologie und des Entwurfsstils getroffen werden ¾ Typisch ist ein vollständig kundenspezifischer Entwurf die (kostspielige) Ausnahme; standardisierte Bausteinbibliotheken werden verwendet: Ausgangsbeschreibung Technologieunabhängige Optimierung Technologie..... anpassung Random GateArray Xilinx Actel Abstrakte Kostenfunktion © Andreas König Folie 5-5 Implementierung digitaler Logik Digitaltechnik Zieltechnologien ¾ Historische Entwicklung: Mechanische Elemente wurden von elektromagnetischen Schaltern (Relais) ersetzt ¾ Diese wiederum von Röhren im Schaltbetrieb ¾ Mit dem Aufkommen der Halbleitertechnologie wurden, aufbauend auf den Grundelementen Diode und Transistor, eine Reihe von Logikfamilien entwickelt: ¾ ¾ ¾ ¾ Diode-Diode-Logik (DDL) Diode-Transistor-Logik (DTL) Transistor-Transistor-Logik (TTL) Emitter-Coupled-Logik (ECL), nicht saturierend, schnell, aber geringer Hub ¾ Besonders große Verbreitung fand die TTL-Logik ¾ Kennung 74yyxxx: Vom einfachen Inverter, Und-Gatter, Oder-Gatter bis zu komplexeren Arithmetikbausteinen und Registern (s. PSPICE-Library !) ¾ In zahlreichen verbesserten Versionen im Hinblick auf Verlustleistung und Schaltgeschwindigkeit (S, AS, L, LS, ALS, C, HC) ¾ Charakteristikum: Speed-Power-Product © Andreas König Folie 5-6 3 Digitaltechnik Implementierung digitaler Logik Zieltechnologien ¾ Anwendung: Aufbau von dedizierter Logik auf Board-Level (PCB) in Verbindung mit Standardbausteinen, z.B. Prozessoren ¾ Hoher Platzbedarf der DIL-Gehäuse, aufwendige Verdrahtung ¾ Geschickte Ausnutzung der aufgebauten TTL-Bausteine erforderlich ¾ Erkennbar: Eigenes Optimierungsproblem der Umsetzung beliebiger (minimierter) Schaltfunktion auf minimale Anzahl maximal ausgenutzter Auswahl aus Bausteinvorrat ! Teil eines Neurocomputerprototyps von 1991/92 © Andreas König Folie 5-7 Digitaltechnik Implementierung digitaler Logik Zieltechnologien ¾ Komplexität heutiger Systeme erfordert kompaktere Implementierung durch Integration (SSI, MSI, LSI, VLSI, ULSI) System Verhalten Systemspezifikation Struktur Algorithmen Register-Transfer Speicher, CPU Logik Algorithmen Subsysteme RT-Beschreibung Funktionsblöcke(ALUs, MUX) Boolesche Gleichungen Gatter, FlipFlops DGLs Transistoren Maskenebene (Standard)Zellen Floorplan/Makrozellen ¾ Umsetzung der Booleschen Funktion in tatsächliche Baustein- bzw. Zellenfamilie Cluster/Chip IC-Partitionierung/Chip/Board Geometrie © Andreas König Folie 5-8 4 Digitaltechnik Implementierung digitaler Logik Zieltechnologien ¾ Die CMOS-Technologie ist die dominante Realisierungstechnologie für hochintegrierte (digitale) Schaltungen und Systeme ¾ Für digitale Systeme wird der MOS-Transistor in seiner NMOS- und PMOS Ausführung als Schalter betrachtet ¾ Entsprechend vereinfachte Modellierung, z.B. für Logiksimulation Poly-Si Si-Oxid High Low + - - N-dotiert P-Substrat - + + + - Gate Source Drain Source Drain Source Drain Substrat ¾ Stark simplifizierte Darstellung; Basis für Logikfunktionen und -gatter © Andreas König Folie 5-9 Implementierung digitaler Logik Digitaltechnik Zieltechnologien ¾ Zusammensetzung von Gattern und Zellen aus MOS-Transistoren • Einzelne Logikgatter • Zusammensetzug der Standardzellen zu Funktionsblöcken Poly-Si N-dotiert Si-Oxid P-Substrat Gate Source Drain Substrat © Andreas König Folie 5-10 5 Implementierung digitaler Logik Digitaltechnik Zieltechnologien ¾ Im Gegensatz zur bisher idealisierten Situation bei der zweistufigen Logikminimierung kann es jetzt zu einer Reihe von zusätzlichen Anforderungen kommen: ¾ Die bisherige Umsetzung der (minimierten) Booleschen Funktion erfolgte 1:1 von den Termen der Funktion auf die verwendeten Gatter ¾ Reale Gatter haben limitierte Eingangszahl ¾ Bislang durfte Boolesche Variable bzw. Term beliebig oft in Ausdrücken vorkommen ¾ Reale Gatter besitzen nur limitierte Treiberfähigkeit (beschränktes Fan-Out) ¾ Unbenutzte Eingänge müssen (sinnvoll) beschaltet werden ! ¾ Die (minimierten) Booleschen Funktion muss an die verfügbaren Zellen der Bibliothek angepasst werden, ggf. in anderem Basissystem dargestellt werden ¾ Es ist eine Frage des Entwurfsstils, welche Einschränkungen bzw. Freiheitsgrade bei der Umsetzung der Booleschen Funktion auf eine konkrete Herstellungstechnologie vorliegen © Andreas König Folie 5-11 Entwurfsstile Digitaltechnik Zieltechnologien ¾ Die verschiedenen Entwurfsstile für integrierte Schaltungen und Systeme differieren in Aufwand und verfügbaren Freiheitsgraden Entwurfsstile Entwurfsstile Entwurf Entwurf Full-Custom Herstellung Herstellung(Kunde) (Kunde) Vollständiger Maskensatz Structured-Custom Macro-Cell Standard-Cell Feldprogrammierbare Logikbausteine Semi-Custom auf Arrays Reduzierter Maskensatz Kein Maskensatz © Andreas König Folie 5-12 6 Digitaltechnik Entwurfsstile Zieltechnologien ¾ Die unterschiedlichen Entwurfsstile unterscheiden sich in: ¾ Turnaround-Zeit und Time-To-market ¾ Herstellungskosten und Entwurfskomplexität ¾ Packungsdichte, Integrationsgrad (bei max. Die-Größe) sowie erreichbarer Verarbeitungsgeschwindigkeit ¾ Vollkundenspezifische Entwürfe (Full-Custom-Design): ¾ Standard-Produkte (Prozessoren, Speicher, Off-the-shelf-products) ¾ High-Volume ASICs (Application-Specific-Integrated-Circuits) ¾ Anwendungsspezifische Entwürfe (Semi-Custom-Design): ¾ ¾ ¾ ¾ ¾ ¾ Low-Volume ASICs Standardzellen-Entwurf Makrozellen-Entwurf Gate-Arrays Sea-of-Gates Field-Programmable-Gate-Arrays etc ... © Andreas König Folie 5-13 Digitaltechnik Entwurfsstile Zieltechnologien ¾ Standardzellen-Entwurf (Semi-Custom-Design): ¾ Verwendung vorgegebener Zellen aus einer Zellbibliothek ¾ Diese sind erprobt und charakterisiert, d.h. ihr Verhalten und ihre zeitlichen Eigenschaften (max/typ/min Delay) sind bekannt ¾ Die Layouts der Zellen sind flächenbezogen optimiert und mit gleicher Höhe entworfen ¾ Versorgungsanschlüsse sind an gleichen Positionen für Anreihung ¾ Automatische Platzierung und Verdrahtung durch Design-Flow: Bonding-Pads Zellen Verdrahtungskanäle © Andreas König Folie 5-14 7 Digitaltechnik Entwurfsstile Zieltechnologien ¾ Standardzellen-Entwurf (Semi-Custom-Design): ∧ Zellen .... .... VerdrahtungsKanäle ¾ Verdrahtung in diesem Stil des Standardzellen-Entwurfs sehr platzintensiv ¾ Neuere Varianten: .... .... Netz-Routing 2M ! Abutment .... .... © Andreas König Folie 5-15 Entwurfsstile Digitaltechnik Zieltechnologien ¾ Beispiel eines Entwurfs mit Standardzellen (Semi-Custom-Design): © Andreas König Folie 5-16 8 Digitaltechnik Entwurfsstile Zieltechnologien ¾ Makrozellen-Entwurf: ¾ Verwendung optimierter Zellen aus einer Makrozellbibliothek ¾ Layoutbereich freifestlegbarer Größe für parametrisierbare, komplexe Funktionen (RAM, ALU, o.ä.) ¾ Erzeugung der Layouts vorab bzw. durch Modulgeneratoren ¾ Verhalten und zeitlichen Eigenschaften (max/typ/min Delay) sind bekannt ¾ Mischung mit Standardzellen möglich ¾ Verdrahtung schwieriger, z.B. Versorgungsspannungen etc ... Bonding-Pads Standardzellen RAM Makrozellen PLA Multiplizierer © Andreas König Folie 5-17 Digitaltechnik Entwurfsstile Zieltechnologien ¾ Weiteres Beispiel eines Entwurfs mit Standardzellen in einer 0.8µm CMOS-Technologie (Pixelmatrix vergleichbar Makrozelle): Bildsensormatrix aus einzelnen Pixelzellen Dekoder Digitale Logik Pads © Andreas König Folie 5-18 9 Entwurfsstile Digitaltechnik Zieltechnologien ¾ Gate-Array-Entwurf: ¾ Vorgefertigter Gate-Array Master für alle Designs ¾ Kunden teilen sich die wesentlichen Herstellungskosten (Maskenschritte) ¾ Erst mit der Aufbringung der Metallschichten erfolgt die Personalisierung des Entwurfs ¾ Verfügbarkeit von Zellbibliotheken (Verdrahtung von Transistoren/Grundelementen zu gewünschten Zellen) ¾ Vergleichbar vom Entwurf: maskenprogrammierbares ROM Bonding-Pads Zellen fester Größe VerdrahtungsBereiche fester Größe © Andreas König Folie 5-19 Entwurfsstile Digitaltechnik Zieltechnologien ¾ Sea-of-Gates-Entwurf (SoG): ¾ ¾ ¾ ¾ Grundidee wie Gate-Arrays Ohne feste Verdrahtungsbereiche Verdrahtung oberhalb ungenutzer Zellen Verfügbarkeit von Zellbibliotheken Bonding-Pads Zellen fester Größe © Andreas König Folie 5-20 10 Digitaltechnik Entwurfsstile Zieltechnologien ¾ Weitere Verkürzung von Turnaround-Zeit und Time-To-market durch maskenlose Herstellung ¾ Logikbaustein wird generisch vollständig hergestellt ¾ Personalisierung erfolgt durch Programmierung beim Kunden: ¾ Fuse-Technologie (Einweg) ¾ Reprogrammierbare Logikschaltkreise durch flüchtige bzw. nichtflüchtige interne Speicher, die bei Initialisierung programmiert werden ¾ Vorteile dieses Entwurfsstils: ¾ Schnelle Verfügbarkeit, Test und Redesign ¾ Preiswert für kleine und mittlere Stückzahlen ¾ Schnelle Modifizierbarkeit bei Versionsänderung oder Erweiterung der Spezifikation eines Systems ¾ Hohe Komplexität möglich (Xilinx press release 2001: 6 Mill. Gatter !) ¾ Günstig mit Standardkomponenten zu kompaktem System integrierbar ¾ Zunehmender Marktanteil dieser rekonfigurierbaren Bausteine ¾ Genauere Betrachtung: Kapitel 5.6 © Andreas König Folie 5-21 CMOS-Logikschaltungen Digitaltechnik Zieltechnologien ¾ Erste MOS-Prozesse stellten nur einen Typ (NMOS oder PMOS) zur Verfügung ¾ Entsprechende Logikschaltungen beruhten auf Ratio-Logik VDD 1 0 1 Undefiniert, Kurzschluss ? GND ¾ ¾ ¾ ¾ ¾ NMOS-Inverter: Lösung 0 ist stärker als die 1 des Lastelements Die Dimensionierung des Lastelements ist entscheidend Nicht unerhebliche statische Verlustleistung Jedoch kompakt seitens der Layoutgestaltung Erweiterung des einfachen Inverters zu Logikgatter © Andreas König Folie 5-22 11 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ NAND- und NOR-Gatter in NMOS: VDD VDD 1 0 1 1 0 0 1 GND 1 GND ¾ Erkennbar erfordert die UND- bzw. ODER-Realisierung eine weitere Inversion, d.h. eine zusätzliche Inverterstufe ¾ Daher sind NAND- und NOR-Implementierungen effizient ! ¾ Die Widerstandsverhältnisse müssen eine Unterscheidung von 0 und 1 zulassen ¾ Offensichtlich problematischer bei NAND: Eingangszahl limitiert ! © Andreas König Folie 5-23 CMOS-Logikschaltungen Digitaltechnik Zieltechnologien ¾ Heutige MOS-Prozesse stellten beide Typen (NMOS oder PMOS) als Complementary-MOS (CMOS) zur Verfügung ¾ Entsprechende statische Logikschaltungen beruhen auf zwei dualen S/PNetzen aus NMOS- bzw. PMOS-Transistoren VDD P-Netz N-Netz 1 0 GND ¾ Durch duale Ausführung der Netze wird entweder die Verbindung zu VDD oder zu GND durchgeschaltet ¾ Querstrom und entsprechende Verlustleistung nur im Umschaltmoment ¾ Daher keine statische Verlustleistung ! ¾ Layoutgestaltung weniger effizient als z.B. NMOS (Wannen, DR) ¾ Ergänzend zu Inverter sind Logikgrundgatter und Komplexgatter möglich © Andreas König Folie 5-24 12 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ S/P-Netze erlauben ausschließlich serielle und parallele Zusammenschaltung von Transistoren bzw. S/P-Netzen ¾ Diese Einschränkung schließt z.B. sog. Brückenschaltungen aus ¾ Beispiele von N-S/P-Netzen x1 x2 x1 x1 x1 x2 x2 x2 ∧ x1 x3 ( x3 ∨ x2 ) ∧ x1 x5 x4 x3 x1 ∧ x2 ∧ (( x3 ∧ x4 ) ∨ x5 ) © Andreas König Folie 5-25 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ Da nur eines der beiden Netze durchschalten darf, muss die duale Funktion realisiert werden ¾ Beispiel für Komplexgatter der vorhergehenden Folie: VDD P-Netz N-Netz x1 x2 GND x5 x1 1 x2 0 x3 x4 x3 x5 x4 f p = x1 ∨ x2 ∨ (( x3 ∨ x4 ) ∧ x5 ) f n = x1 ∧ x2 ∧ (( x3 ∧ x4 ) ∨ x5 ) © Andreas König Folie 5-26 13 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ Zusammensetzung der beiden Netze ergibt komplettes Gatter x1 ¾ Erkennbar müssen die Variablen sowohl invertiert als nichtinvertiert vorliegen ¾ Zusatzaufwand durch Invertierung und Verdrahtung x1 ¾ Die realisierte Funktion f ist durch die Invertierung: x2 x2 x5 x3 x4 f f = f p = x1 ∨ x2 ∨ (( x3 ∨ x4 ) ∧ x5 ) x3 ¾ Synthese: Umsetzung der charakteristischen Funktion in x4 Transistornetz ¾ Duales Netz durch S/P(P/S)-Wandlung x5 Ein Beispiel: 5.1 © Andreas König Folie 5-27 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ MOS-Transistoren eignen sich sehr gut zur Realisierung von bidirektionalen Schaltverbindungen (deutlich besser als Bipolar-Transistoren) ¾ Bedingt durch die Ansteuerspannung und die Schwellenspannung des Transistors kann ein PMOS besser 1 und NMOS besser 0 durchschalten 1 0 1 0 1 0 ¾ Dies kann z.B in sogenannter Pass-Transistor-Logik verwendet werden: x2 x1 x3 x4 x2 x5 x2 x1 x3 f Verbotene Anordnung ! © Andreas König Folie 5-28 14 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ Bedingt durch die Ansteuerspannung und die Schwellenspannung des Transistors kann ein PMOS besser 1 und NMOS besser 0 durchschalten ! ¾ Zusammenschaltung beider Typen ergibt verbesserten Schalter x 0 1 0 1 x ¾ Sogenanntes Transfer- oder Transmission-Gate ¾ Verwendung als Multiplexer oder in dynamischen Anordnungen: x1 x1 x3 f = x1 ∧ x2 ∨ x1 ∧ x3 x2 x1 f x1 © Andreas König Folie 5-29 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ Die alternative Beschaltung gemeinsamer Leitungen oder Leitungsbündel (Busse) in komplexeren Digitalsystemen erordert besondere Ausgangsstufen ¾ Um Beschaltungskonflikte zu vermeiden, müssen nicht aktive oder zugriffsberechtigte Stufen in einen dritten, hochohmigen Zustand gehen ¾ Solche Ausgänge heißen Tri-State-Ausgänge ¾ Notwendige schaltungstechnische Erweiterung: Realisierung mit Transfer-Gate EN EN EN EN y x x z EN EN x y EN Tri-State-Treiber © Andreas König Folie 5-30 15 CMOS-Logikschaltungen Digitaltechnik Zieltechnologien ¾ Bei der Realisierung von Systemen mit gemeinsam genutzten Leitungen (Bussen) muss durch die Ansteuerung ein Zugriffskonflikt ausgeschlossen sein ¾ Die Treiber verschiedener Einheiten dürfen nie gleichzeitig schalten ¾ Wie wird ein solcher Konflikt beschrieben bzw. aufgelöst ? © Andreas König Folie 5-31 CMOS-Logikschaltungen Digitaltechnik Zieltechnologien ¾ Schon bei der Ratio-Logik bzw. der Zusammenschaltungen mehrerer Ausgänge an einem Lastelement als Wired-OR zeigte sich der Bedarf an weiteren Zuständen zur Beschreibung ¾ Resultat: Mehrwertige Logik ¾ Standardisierung durch IEEE-1164 Standard: ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ U X 1 0 W H L Z uninitialisiert ´´starkes´´ undefiniert don´t care ´´starke´´ 1 ´´starke´´ 0 ´´schwaches´´ undefiniert ´´schwache´´ 1 ´´schwache´´ 0 Tri-State ¾ Damit liegt eine neunwertige Logik vor ¾ Verwendung bei Synthese, z.B. Synopsis, komplexerer Digitalsysteme ¾ Behandlung: Folgende Veranstaltungen und Hauptstudium © Andreas König Folie 5-32 16 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ Bislang wurde mit dem idealisierten Schaltermodell von dem elektrischen Verhalten des Transistors sehr stark abstrahiert ¾ Tatsächlich besitzt der geöffnete Schalter einen (sehr großen) Widerstandswert ¾ Ebenso besitzt der geschlossene Schalter (Transistor mit leitendem Kanal) einen nicht unerheblichen Widerstandswert >0 ¾ Die Gate-Bereiche folgender Stufen bilden kapazitive Lasten ! t 1 −τ VDD U gate (t ) = VDD1 − e + 1+ r 1+ r r mit τ= RnC L 1+ r Rp=r*Rn CL Rn ¾ Das Umladeverhalten begrenzt erlaubtes CL und damit die Zahl folgender Stufen (Fan-Out); Abhilfe durch vergrößerte Treibertransistoren ! ¾ Typisch Rp>Rn bei gleicher Dimension; S-Netze in NMOS, P-Netze in PMOS; NAND- günstiger als NOR-Realisierung © Andreas König Folie 5-33 CMOS-Logikschaltungen Digitaltechnik Zieltechnologien ¾ Die parasitäre Knotenkapazität durch die Transistor-Gates kann auch gezielt zur temporären Wertspeicherung genutzt werden ¾ Grundlage aller dynamischen Logik- und Speicherschaltungen ¾ Motivation dynamischer Logikschaltungen durch exzessiven Flächenverbrauch dualer Netze in PMOS/NMOS-Teil statischer CMOSLogik ¾ Prinzip dynamischer CMOS-Schaltungen: Clockpre Vorladetransistor N-Netz Clockeval CL Auswertetransistor ¾ Zunächst wird mit (nichtüberlappenden Zweiphasentakt) CL vorgeladen ¾ In der zweiten Taktphase wird CL ggf. über Durchschaltungen im NMOSNetzwerk entladen (Problem: Charge-Sharing) © Andreas König Folie 5-34 17 Digitaltechnik CMOS-Logikschaltungen Zieltechnologien ¾ Die unerwünschte Ladungsteilung kann zu Logikpegelverfälschung führen ¾ Die direkte Kaskadierung durch die Vorladung und mögliche Durchschaltungen in Folgestufen nicht realisiert werden ¾ Schaltung eines Inverters nach jeder Stufe (Domino-Logik) ¾ Andere Alternative: NORA-Logik (NO RAces) aus kaskadierten, dynamischen NMOS- und PMOS-Stufen (nur einfacher Takt) ¾ Ebenfalls andere dynamische Elemente, z.B. Wertspeicherung: Clock 1 D Q Clock ¾ Dauer einer Wertspeicherung begrenzt durch Entladeeffekte (Leckströme) ¾ Dynamische Elemente sind platzsparend, stellen aber höhere Anforderungen an den Entwerfer und sind ggf. langsamer © Andreas König Folie 5-35 Anpassung an Zellkataloge Digitaltechnik Zieltechnologien ¾ Ausgangsbasis ist das Ergebnis einer zweistufigen Logikminimierung, die anhand einer abstrakten Kostenfunktion durchgeführt wurde: ¾ Die Umsetzung der auf eine vorliegende Bibliothek der Zieltechnologie erfordert eine weitere (optimierte) Anpassung der Funktionsdarstellung ¾ Reale Gatter haben limitierte Eingangszahl ¾ Eine entsprechende Anpassung (Kaskadierung) erforderlich ¾ Reale Gatter besitzen nur limitierte Treiberfähigkeit (beschränktes Fan-Out) ¾ Treiberstufen oder gleichartige Zellen mit unterschiedlichem Fan-Out ¾ Die verfügbaren Zellen der Bibliothek entsprechen nicht der Darstellung (UND/ODER/NICHT) ¾ Überdeckung der bisherigen Funktionsdarstellung durch verfügbare Zellen (Überdeckungsproblem !) ¾ Im folgenden soll die Anpassung an eine gegebene Bausteinbibliothek (Zellkatalog) nur qualitativ betrachtet werden. © Andreas König Folie 5-36 18 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Kaskadierung zur Vergrößerung der limitierten Eingangszahl eines Gattertyps (Bsp. des ASC2BCD-Dekoders): © Andreas König Folie 5-37 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Kaskadierung und Abbildung auf NAND/Inverter ≥1 ≥1 & & ≥1 & 1 & ≥1 1 & 1 & 1 1 1 & © Andreas König Folie 5-38 19 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Hypothetische Bausteinbibliothek aus einfachen und komplexen Gattern 1 & Inverter NAND & & ≥1 ≥1 & AO21 AO22 © Andreas König Folie 5-39 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Zum Einsatz der komplexen Gatter muss Gattergruppe bestimmt werden, die durch Komplexgatter überdeckt wird 1 & & ≥1 • Durch AO21 überdeckbare Gatterstruktur in NAND/INV Netzwerk: & 1 1 1 & & © Andreas König Folie 5-40 20 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Für beide komplexen Gatter resultiert & 1 ≥1 & & AO21 AO21 & & ≥1 & & & AO22 AO22 © Andreas König Folie 5-41 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Anpassung einer gegebenen Funktion zunächst Umsetzung in ein NAND/Inverter Netz: x1 x4 x2 x4 x1 x2 x3 & & x1 x4 x2 1 x4 1 & 1 1 & 1 1 & 1 ≥1 & 1 & x1 1 x2 & 1 x3 & 1 © Andreas König Folie 5-42 21 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Bereinigung durch Streichung von doppelten Invertern: x1 x4 x2 x4 x1 x2 x3 x1 x4 & & ≥1 x2 1 x4 1 x1 1 & & x2 & 1 & & & 1 x3 & © Andreas König Folie 5-43 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Untersuchung der Überdeckung von Teilen des Gatternetzes durch Bibliotheksbausteine (zusätzlich zu NAND und Inverter): x1 x4 x2 x4 x1 x2 x3 1 & & & & & x1 x4 ≥1 x2 1 x4 1 x1 1 AO21 & & 1 & x2 & & 1 x3 & © Andreas König Folie 5-44 22 Digitaltechnik Anpassung an Zellkataloge Zieltechnologien ¾ Untersuchung auf weitere Überdeckungsmöglichkeiten ¾ Möglicher Konflikt von Alternativen, da Anschlüsse unzugänglich werden 1 & 1 1 & & & AO21 & AO11 x2 x1 x4 1 x4 1 x1 1 & & & x2 & 1 & AO22 1 x3 & AO21 & Welche Überdeckungsalternative ist kostenminimal ? AO22 © Andreas König Folie 5-45 Anpassung an Zellkataloge Digitaltechnik Zieltechnologien ¾ Formal ließe sich das Problem wieder über Existenzvariablen und Kostenminimierungsansatz angehen ¾ Erkennbar ist auch die vorliegende hohe Komplexität der Aufgabe ¾ Der Vorgang der Anpassung an die Bausteinbibliothek (Zellkatalog) muss entweder vom Entwerfer (s. kleine Vorlesungsbeispiele) oder von der eingesetzten CAD-SW durchgeführt werden ¾ Erkennbar können abhängig vom Bausteinvorrat mehrstufige Gatternetze aus der zweistufigen DMF entstehen ¾ Die Frage des erlaubten Fan-Outs ist bei der Umwandlung des ursprünglichen Netzes ebenfalls zu beachten ! ¾ Weiterhin werden die verschiedenen Zellen der Bibliothek unterschiedliche Verzögerungszeiten besitzen ¾ Berücksichtigung der Schaltwerksgeschwindigkeit in den Kosten ! Weitere Vertiefung in Fachveranstaltungen © Andreas König Folie 5-46 23 Digitaltechnik Multiplexer und Decoder Zieltechnologien ¾ In Ergänzung zu einfachen bzw. komplexen Logikgattern stehen reguläre und kompakte Strukturen zur Realisierung von Logikfunktionen zur Verfügung: ¾ Multiplexer ¾ Decoder ¾ Speicherstrukturen, z.B. ROM (Read-Only-Memory) ¾ Im folgenden wird der prinzipielle Einsatz solcher Zellen betrachtet ¾ Zellbibliotheken bieten typisch häufig verwendete Varianten dieser Typen als Standardbausteine an ¾ Beispiel: 74-Logikfamilie oder dedizierte Zellkataloge ¾ Der systematische Entwurf mit dieser Erweiterung des verfügbaren Bausteinspektrums wird in späterer Vertiefung behandelt © Andreas König Folie 5-47 Digitaltechnik Multiplexer und Decoder Zieltechnologien ¾ Bausteine vom Typ 2:1 Multiplexer wurden bereits im Kontext des Entwicklungssatzes eingeführt: x1 f = x2 f x 2 ∨ x 2 f x 2 x2 1 1 1 0 0 1 1 1 x3 fx 2 f f x2 x2 2:1 Multiplexer 0 1 a b © Andreas König Folie 5-48 24 Digitaltechnik Multiplexer und Decoder Zieltechnologien ¾ Erweiterung auf z.B. 4:1 Multiplexer: f = s1 s0 x1 ∨ s1s0 x2 ∨ s1 s0 x3 ∨ s1s0 x4 f s0 s1 0 1 s1 0 1 x1 x2 s0 s1 0 1 x3 x4 x1 00 x2 01 x3 10 x4 11 f 4:1 Multiplexer © Andreas König Folie 5-49 Multiplexer und Decoder Digitaltechnik Zieltechnologien ¾ Typische Erweiterung durch Enable-Signal, mit dem der Ausgang unabhängig von der Selektion auf 0 gelegt werden kann ¾ Ein Vertreter mit 2 4:1 Mux.: 74yyy153 mit gemeinsamer Auswahlschaltung ¾ Weitere Beispiele: 74yyy150 16:1 Mux.; 74yyy151 8:1 Mux. ¾ Anwendungsgebiet I: Selektive Beschaltung eines Ziels (Leitung/Bus) mit mehreren Quellen s0 s1 x1 00 x2 01 x3 10 x4 11 Bus © Andreas König Folie 5-50 25 Digitaltechnik Multiplexer und Decoder Zieltechnologien ¾ Anwendungsgebiet II: Multiplexer sind universelle Logikbausteine ! ¾ Eine Funktion kann nach dem Entwicklungssatz soweit entwickelt werden, bis die Kofaktoren nur noch Konstante sind ¾ Alle Durchschaltungen, die mit Einsstellen korrespondieren, werden mit 1 beschaltet, alle anderen mit 0 ¾ Damit kann ein 2n:1 Multiplexer alle Funktionen in n Variablen implementieren ¾ Beispiel für eine Funktion in zwei Variablen x1 x1 x2 0 00 1 01 1 10 0 11 x2 0 1 1 0 © Andreas König Folie 5-51 Digitaltechnik Multiplexer und Decoder Zieltechnologien ¾ Die Entwicklung der Funktion kann auch teilweise durchgeführt werden, So dass die Kofaktoren Restfunktionen darstellen, die von einer oder mehreren Variablen abhängen ¾ Diese können durch Standardgatter und –zellen realisiert und mit den MuxZellen zur Gesamtfunktion verschaltet werden ¾ Beispiel für eine Funktion in drei Variablen und einem 4:1 Mux.: x1 x1 x2 0 00 x3 01 x3 10 1 11 x2 0 0 1 0 0 1 1 1 x3 © Andreas König Folie 5-52 26 Multiplexer und Decoder Digitaltechnik Zieltechnologien ¾ Damit kann bereits ein 2n-1:1 Multiplexer alle Funktionen in n Variablen implementieren, wenn eine Variable auch negiert verfügbar ist ! ¾ Allgemeiner Fall mit Entwicklung nach m von n Variablen: x1 xm Kofaktor 1 xn-m Kofaktor 2 xn Kofaktor 3 Kofaktor 2m ¾ Die Kofaktoren selbst können auch wieder auf verfügbare Mux.-Bausteine angebildet werden ¾ Die Selektionsvariablen (Entwicklungsreihenfolge !) können beliebig und günstig für die gegebene Funktion gewählt werden © Andreas König Folie 5-53 Multiplexer und Decoder Digitaltechnik Zieltechnologien ¾ Decoder-Schaltungen generieren eine Kodeumsetzung von der üblichen Binärdarstellung oder –kodierung auf einen sogenannte 1-aus-n-Code ¾ Ein Decoder hat 2n Ausgangsleitungen ¾ Die Leitung, die der angelegten Variablenbelegung zugeordnet ist, wird aktiviert (1: Mintermdarstellung; 0: Maxtermdarstellung) x1 xn m1 (M1) m2 (M2) m3 (M3) m2n (M2n) ¾ Die interne Realisierung kann erkennbar durch NAND/Inverter erfolgen ¾ Aus den Maxtermen (Mintermen) können durch weitere Gatter zweistufige Realisierungen von Logikfunktionen geschaffen werden © Andreas König Folie 5-54 27 Digitaltechnik Multiplexer und Decoder Zieltechnologien ¾ Beispiel für eine Funktion in drei Variablen (Cout): x1 x2 x3 & ¾ Die interne Realisierung kann erkennbar durch NAND/Inverter erfolgen ¾ Aus den Maxtermen (Mintermen) können durch weitere Gatter zweistufige Realisierungen von Logikfunktionen geschaffen werden © Andreas König Folie 5-55 Digitaltechnik Multiplexer und Decoder Zieltechnologien ¾ Selbe Funktion in drei Variablen (Cout) mit Decoder und Mintermen: x1 x2 x3 ≥1 ¾ Dekoder sind auch elementare Strukturen zur Ansteuerung von Array- oder Matrixstrukturen ¾ Jede mögliche Belegung ist typisch mit einer Quelle hinterlegt (Pixel/Bit) © Andreas König Folie 5-56 28 Digitaltechnik Multiplexer und Decoder Zieltechnologien ¾ Schema eines Speicherbausteins mit 8 Speicherplätzen: x1 x2 x3 0000 0000 0000 1000 0000 1000 1000 1000 • • Beispielfunktion Cout Drei weitere Funktionen verbleiben ungenutzt f1-4 ¾ Speicherstrukturen, insbesondere Read-Only-Memory (ROM), können regulär und hochkompakt (maskenprogrammierbar) hergestellt werden ¾ Beliebige Funktionen in n Variablen können durch 2n Speicherstellen tabelliert werden (Bündelfunktionen abhängig von Speicherbreite in bit !) ¾ Logikminimierung ist bei gegebener Struktur hier nicht sinnvoll © Andreas König Folie 5-57 Anwenderprogrammierbare Logikbausteine Digitaltechnik Zieltechnologien ¾ Die vorgestellten regulären Bausteine zur Schaltwerksrealisierung stehen als diskrete Bausteine oder Zellen für verschiedene Entwurfsstile zur Verfügung ¾ Anknüpfend an die bisherigen Realisierungsmöglichkeiten und Entwurfsstile werden anwenderprogrammierbare (maskenlose) Bausteine betrachtet ¾ Programmierbare Logikbausteine (Programmable Logic Devices, PLDs): ¾ ¾ ¾ ¾ ROMs und Programmable ROMs (PROMs, (E)EPROMs) PLAs (Programmable Logic Arrays) PALs (Programable Array Logic) GALs (Generic Array Logic) ¾ Programmierbare Gate-Arrays (Programmable Gate-Arrays, PGAs): ¾ Speicher-basiert ¾ Multiplexer-basiert ¾ Irreversible Programmierung durch Zerstörung von Verbindung bzw. von Isolation (Fuse bzw. Anti-Fuse ¾ Reversible Programmierung durch Ladungsspeicherung bzw. –löschung auf Floating-Gate-Strukturen sowie flüchtige RAM-Speicher mit Initialisierung © Andreas König Folie 5-58 29 Digitaltechnik Anwenderprogrammierbare Logikbausteine Zieltechnologien ¾ Prinzipaufbau eines PLAs: Eingangsvariablen Minterme Array von UND-Gattern Array von ODER-Gattern Ausgangsfunktionen ¾ Im Gegensatz zum Dekoder und zur ROM-Lösung ist in jedem Feld nur eine begrenzte Zahl von Gattern verfügbar ¾ Logikminimierung zur zweistufigen Realisierung erforderlich ! © Andreas König Folie 5-59 Digitaltechnik Anwenderprogrammierbare Logikbausteine Zieltechnologien ¾ Detaillierteres Schema einer PLA-Struktur : 1 1 1 & & & & ≥1 ≥1 ≥1 ≥1 ¾ Personalisierung der generischen PLA durch Verbindungsprogrammierung © Andreas König Folie 5-60 30 Digitaltechnik Anwenderprogrammierbare Logikbausteine Zieltechnologien ¾ PLA-Programmierung durch Auftrennung ungenutzter Verbindungen : x1 x2 x3 1 1 1 & & & & ≥1 f2 ≥1 f1 ≥1 ≥1 f1 = x3 x1 ∨ x3 x1 ∨ x3 x2 f3 f4 © Andreas König Folie 5-61 Digitaltechnik Anwenderprogrammierbare Logikbausteine Zieltechnologien ¾ Vereinfachte Darstellung der Verbindungen: x1 x2 x3 1 1 1 & & & & f3 ≥1 f2 ≥1 f1 ≥1 ≥1 f1 = x3 x1 ∨ x3 x1 ∨ x3 x2 f4 © Andreas König Folie 5-62 31 Digitaltechnik Anwenderprogrammierbare Logikbausteine Zieltechnologien ¾ Vereinfachte Darstellung der Programmierung: x1 x2 x3 1 1 1 & & & & f2 ≥1 f1 ≥1 ≥1 ≥1 f1 = x3 x1 ∨ x3 x1 ∨ x3 x2 f3 f4 © Andreas König Folie 5-63 Digitaltechnik Anwenderprogrammierbare Logikbausteine Zieltechnologien ¾ Prinzipaufbau eines PALs: Eingangsvariablen Minterme Array von UND-Gattern Array von ODER-Gattern fest programmierbar Ausgangsfunktionen ¾ Logikminimierung zur zweistufigen Realisierung für Bündelfunktionen bei der Verwendung von PLAs bzw. PALs erforderlich ¾ Limitierung im zweiten Feld beachten (Nebenbedingung) © Andreas König Folie 5-64 32 Anwenderprogrammierbare Logikbausteine Digitaltechnik Zieltechnologien ¾ Komplexere anwenderprogrammierbare Bausteine enthalten zusätzlich zu kombinatorischer Logik und programmierbarer Verbindungsstruktur oft auch flüchtige oder nichtflüchtige Speicherelemente ¾ Komplexe Elementarblöcke (Configurable Logic Blocks, CLBs) als Basisbausteine ¾ Deren Verdrahtung erfolgt über flexiblere und komplexere Verbindungsstruktur als sie bei PLAs/PALs zur Verfügung steht ¾ Damit kann auch komplexe, sequentielle Logik realisiert werden ¾ Weitergehende Betrachtung nach Einführung von sequentieller Logik, FlipFlops und Automaten © Andreas König Folie 5-65 33