Technische Informatik I (SS 2006) Teil 1: Logik 1e: Zustandsautomaten.

Slides:



Advertisements
Ähnliche Präsentationen
Organisatorisches Die * bzw. ** Aufgaben müssen gelöst werden, da sie später wieder gebraucht werden. Musterlösungen werden zwei Wochen nach den Übungsblättern.
Advertisements

Energiebetrachtung Die Bahnradien der Elektronen sind ein Maß für deren Energie Aus den Elektronenbahnen kann damit eine grafische Darstellung der Elektronenenergie.
Vom HW-Automaten zum Prozessor
Technische Grundlagen der Informatik 1
Vortrag: Praktikum Technische Informatik Sommersemester 2007
Optische Sensoren (Sensoren III)
Einführung in die Physik der Halbleiter
Halbleiterbauelemente
Anwendungen von Halbleitern
Leiter und Isolator Ein Stromkreis besteht aus einer leitenden Verbindung zwischen den beiden Polen einer Elektrizitätsquelle, in die noch mindestens ein.
Technische Informatik I (SS 2006) Teil 1: Logik 1b: Schaltnetze.
Weitere wichtige Schaltnetze?
Analoge vs. Digitale Informationen
Technische Informatik I (SS 2006)
Rechneraufbau & Rechnerstrukturen, Folie 6.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 6.
Rechneraufbau & Rechnerstrukturen, Folie 7.1 © 2006 W. Oberschelp, G. Vossen.
T r a n s i s t o r e n Kompaktlabor 2004 Daniel Jänicke.
Technische Informatik I
Technische Informatik I
Technische Informatik I
Analoge Elektronik - Einführung
Bolzmansche Formel Ausgewählte Themen des analogen Schaltungsentwurfs
Reines Halbleitersilizium
Maxwell-Boltzmann Ausgewählte Themen des analogen Schaltungsentwurfs
Physik für Mediziner, Zahnmediziner und Pharmazeuten SS
Festkörper Halbleiter Farben und Spektren
6. Vorlesung Inhalt: Rückblick 5. Vorlesung Kapitel pn-Diode anfangen
CPLD/FPGA-Programmierung mit E-blocks. Wozu die CPLD/FPGA-Programmierung untersuchen? Zusammenhang zur modernen Digitalen Elektronik Verschwinden der.
2.1 Der pn-Übergang ohne äußeres Feld
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Quelle: Fachreferat von Mathias Herbst 1.
Quantendrähte für die Nanoelektronik Bernhard Mandl
Elektrische Leitungsvorgänge Klasse 9
Basisinformationstechnologie HK-Medien
Anwendung der np junction: Der Transistor
Basisinformationstechnologie HK-Medien
FPGA... ein Versuch. Uli Schäfer 1. Historie: PLD Uli Schäfer 2 Schaltungsgrösse wächst drastisch mit Zahl der Eingänge CPLD = Array + Flipflops + macro.
Stromtransport in Flüssigkeiten
Halbleiter Die „np Junction“
Anwendung der np junction: Wichtige Halbleiterbauelemente
3.3 Speicher Latches SR-Latch 1-bit Speicher S Q Q R Q Q
1 SR-Latch 3.3 Speicher Latches © Béat Hirsbrunner, University of Fribourg, Switzerland, 31. Oktober 2007 S Q Q R Q Q 1-bit Speicher.
© Béat Hirsbrunner, University of Fribourg, Switzerland
VHDL 4: Getaktete Logik (D-FF, Zähler, Automaten)
Computerorientierte Physik VORLESUNG
Feldeffekttransistoren
Interne Speicher © Christian Barby FIN
Speichern von Informationen
Wenn Transistoren kalt wird…
Historischer Rückblick
Technische Informatik II
Technische Informatik II (INF 1211) Aufgabenteil (Mit Unterlagen)
Seite 1 Technische Informatik II (INF 1211) – Kurzfragenteil (Ohne Unterlagen) Am Prof. W. Adi Zeit: (20 Minuten) Bitte schreiben Sie die Lösung.
Logik Von Fabian Undi Fabian Undi - Logik.
Halbleiter Die „np Junction“
Grundlagen der Rechnerarchitektur [CS ]
Rechnerstrukturen 3b. Endliche Automaten.
ESYCS - Studie 7 „Embedded Hardware“
Technische Informatik II
Mikrocomputertechnik Jürgen Walter
Halbleiter-Elektroden
Funktionsprinzip·Anwendung·Zukunft
© A. Steininger / TU Wien 1 Zieltechnologien Welcher ASIC-Typ passt zu meinem Design?
Halbleiterbauelemente
Eine Einführung in verschiedene Speicherverfahren
Technische Informatik I
Technische Informatik II
Grundlagen der Rechnerarchitektur [CS ]
Vom HW-Automaten zum Prozessor
Elektrische und elektronische Bauteile
 Präsentation transkript:

Technische Informatik I (SS 2006) Teil 1: Logik 1e: Zustandsautomaten

Technische Informatik I (SS 2006) Synchroner Zähler als Zustandsautomat Betrachte Zählerstand als Zustand Übergänge ohne Randbedingungen

Technische Informatik I (SS 2006) Zustandsautomat (1) Nur Ausgabe Hier Codierung möglich Keine Eingabe Takt und asynchroner Reset kein Eingang! Zustandsspeicher 0, 1, 2, 3 Flip-Flops Übergangsregeln Wenn 0, dann 1 Wenn 1, dann 2 Wenn 3, dann 4 Wenn 4, dann 0 Kombinatorische Logik Ausgabe Kombinatorische Logik

Technische Informatik I (SS 2006) Codierung der Zustände Natürliche Codierung: 0 ist 00 1 ist 01 2 ist 10 3 ist 11 Decodierung nicht nötig One-Hot Codierung: 0 ist ist ist ist 1000 Decodierung z.B. durch 4-zu-2-Kodierer

Technische Informatik I (SS 2006) Codierung der Zustände Bsp: Ampelfarben Rot ist 001 Gelb ist 010 Grün ist 100 Rot-Gelb ist 011 Natürliche Codierung, verschwendet Flip- Flops Nur 4 Zustände, 2 FFs reichen aus, dichte Codierung Rot ist 10 Gelb ist 01 Grün ist 00 Rot-Gelb ist 11 Im Prinzip jede Codierung möglich (Schaltungsaufwand, Timing)

Technische Informatik I (SS 2006) Synchroner Zähler als Zustandsautomat Betrachte Zählerstand als Zustand Möchte Vorwärts- und Rückwärtszählen Eingang R R=0 R=1

Technische Informatik I (SS 2006) Zustandsautomat (2) Eingänge Beeinflussen Übergangs- regeln Zustandsspeicher 0, 1, 2, 3 Flip-Flops Übergangsregeln Wenn 0, dann 1 Wenn 1, dann 2 Wenn 3, dann 4 Wenn 4, dann 0 Kombinatorische Logik Ausgabe Kombinatorische Logik Eingänge

Technische Informatik I (SS 2006) Definitionen (Zustands-)Automat (state machine): System, dass verschiedene Zustände annehmen kann Übergänge hängen von Eingangsvariablen ab Endlicher Automat (finite s.m.) Nur begrenzte Anzahl von N Zuständen Deterministischer Automat Eingangsinformation und Vorzustand bestimmen Verhalten eindeutig Endlicher, deterministischer Automat …Grundlage der Prozesssteuerung

Technische Informatik I (SS 2006) Zustandsautomat (3) Eingänge gehen nur in Übergangslogik Moore-Automat Eingänge gehen auch in Ausgabelogik Mealy-Automat Zustandsspeicher 0, 1, 2, 3 Flip-Flops Übergangsregeln Wenn 0, dann 1 Wenn 1, dann 2 Wenn 3, dann 4 Wenn 4, dann 0 Kombinatorische Logik Ausgabe Kombinatorische Logik Eingänge

Technische Informatik I (SS 2006) Moore vs. Mealy Moore Spezialfall von Mealy Mealy kann sofort reagieren Weniger FFs Mehr kombinatorische Logik Aber: kombinatorische Logik kann kritisch werden. Hazards, Spikes Mealy kann in Moore umgewandelt werden (1 Takt Zeitverlust)

Technische Informatik I (SS 2006) Ampelanlage - Aufgabenstellung Zwei kreuzende Straßen Hauptstraße (1) soll Grün haben Nebenstraße (2) soll Rot haben, bis Auto wartet Berücksichtigung von Fußgängern Beide Straßen Rot für Fußgängerphase Eingänge Auto wartet A=1 Fußgänger wartet F=1

Technische Informatik I (SS 2006) Ampelanlage - Zustandsdiagramm Grün A=0 & F=0 Gelb A=1 | F=1 RotF F=1 F=0 RotA RotGelbF Grün2 Gelb2 ZustandAmpel1Ampel2Fußgänger Grün Gelb RotF RotGelbF RotA Grün2 Gelb2

Technische Informatik I (SS 2006) Wahl der Codierung 7 Zustände: Dichte Codierung benötigt 3 FFs XYZ Ausgänge Bsp: A1Rot=X|(¬X&Y&¬Z) Simulation ZustandAmpel1Ampel2Fußgänger Grün Gelb RotF RotGelbF RotA Grün2 Gelb2 XYZ

Technische Informatik I (SS 2006) Schaltungsentwurf Hier nur erste 4 Übergänge (Achtung: 000- Schleife fehlt!) Grün Gelb RotF RotGelbF J Q ¬Q J Q ¬Q J Q ¬Q Auto Fuss

Technische Informatik I (SS 2006) Kombinatorische Logik als ROM Fasse die 3 FF- Ausgänge + 2 Eingänge als Adresse auf Die 3 Übergangs- Ausgänge und 8 Ampellichter als Bitmuster: 32 Wörter à 11 Bit ROM=Read Only Memory XYZAFXYZ111222FF

Technische Informatik I (SS 2006) Kombination von Zustandsmaschinen Schlecht: Fußgänger drückt kurz, Zustand geht von Grün nach Gelb, was macht Maschine? Normale Ampel; Fußgänger drückt, Licht geht an Brauchen Start-Stop-Logik (War selbst schon Automat) Start/Stop Fußgänger Ampel F Reset F-Ampel Rot

Technische Informatik I (SS 2006) Zusammenfassung Kapitel 1 Grundgatter UND, ODER, NICHT als boolsche Funktionen Schaltfunktionen und –netze als Funktionstabelle oder kombinatorisch Umwandlungen der Implementierung Paralleladdierer, -subtrahierer, -multiplizierer Kombinatorische Logik begrenzt Zustandsspeicher: Flip-Flop Zähler

Technische Informatik I (SS 2006) Zusammenfassung Kapitel 1 Schieberegister Serieller Addierer, Subtrahierer, Multiplizierer Codierung von Zuständen allgemein Übergänge von Zuständen Moore und Mealy-Automaten Funktions- und serielles Verhalten in ROM

Technische Informatik I (SS 2006) Logik verstanden Wie implementieren?

Technische Informatik I (SS 2006) Historische Entwicklung Diverse mechanische Ansätze Steuerung Webstuhl

Technische Informatik I (SS 2006) Historische Entwicklung Holerith- Tabelliermaschinen Vorläufer der Datenbank Lochkarten mit vorgedachten Merkmalen (ursprünglich für Volkszählung) Noch bis Mitte des 20sten Jahrhunderts benutzt In IBM aufgegangen

Technische Informatik I (SS 2006) Konrad Zuse ( ) Mechanischer Rechner Z Relaisgesteuerte Z Z23 mit Transistoren Zuse KG 1969 in Siemens aufgegangen

Technische Informatik I (SS 2006) Historische Entwicklung Elektromechanische Computer (Z3) Eniac: Röhren

Technische Informatik I (SS 2006) Telefon Automatische Telefonvermittlung Siegeszug der Telekommunikation im 20ten Jahrhundert

Technische Informatik I (SS 2006) Teil 2: Integrierte Schaltungen 2a: Halbleiter

Technische Informatik I (SS 2006) Vom Atom zum Festkörper Atom Diskrete Energieniveaus: 1s, 2s, 3p 2-atomiges Molekül: Gemeinsame Orbitale Aber: Pauli-Prinzip Energieniveaus müssen aufspalten Aufhebung der Energieentartung Festkörper Mehrere Mole an Atomen Zustände nicht mehr unterscheidbar (Bänder)

Technische Informatik I (SS 2006) Abstand der Bänder Besondere Bänder: Valenzband (VB) (äußere Elektronen) Leitungsband (LB) Leer bei T=0K Nichtleiter: VB gefüllt, LB leer Abstand LB und VB groß (ca 5 eV) Elektronen können sich in VB nicht bewegen (Enegieaufnahme) Leiter: VB nur zum Teil gefüllt oder VB und LB überlappen

Technische Informatik I (SS 2006) Halbleiter vs. Isolatoren Lücke kann durch themische Bewegung übersprungen werden Fermi-Statistik Isolatoren: > 1000K Halbleiter: Bei Raumtemperatur geringe Eigenleitung 1mm² Ge-Draht hat 0,5MO Widerstand sinkt bei steigender Temperatur

Technische Informatik I (SS 2006) Thermische Bewegung

Technische Informatik I (SS 2006) Si (Silizium) 4. Hauptgruppe Tetraeder-Struktur Ge: Auch 4-wertiger Halbleiter

Technische Informatik I (SS 2006) N-dotiere Halbleiter Ersetze Anteil an Si-Atomen mit fünfwertigen Atom (Dotierung) 1 ungepaartes Elektron Festkörper nicht elektrisch geladen Aber: freie Landungsträger bei Raumtemperatur - Si As Si +

Technische Informatik I (SS 2006) N-dotiere Halbleiter

Technische Informatik I (SS 2006) P-dotierte Halbleiter Dotiere Si (oder Ge) mit 3-wertigen Atomen Ungepaartes Elektron am benachbarten Si-Atom Wirkt als Akzeptor Elektronen werden hier eingefangen Konzept der Löcher

Technische Informatik I (SS 2006) Teil 2: Integrierte Schaltungen 2b: Dioden & Transistoren

Technische Informatik I (SS 2006) Diode Bringen P- und N- Halbleiter zusammen Freie e - fallen in die Löcher

Technische Informatik I (SS 2006) Diode Es bildet sich Verarmungszone aus Nicht mehr el. Neutral (E- Feld) Potentialdifferenz Diffusionsspannung 0,1-0,8 V

Technische Informatik I (SS 2006) Diode Anlegen einer Spannung: + an N und – and P Freie Ladungsträger werden angezogen Verarmungszone wird größer Diode sperrt - an N und + and P Freie Ladungsträger werden in die Veramungszone gedrückt Verarmungszone wird kleiner Diode leitet

Technische Informatik I (SS 2006) Diode Einbahnstraße Schaltzeichen Leitet: (technische Stromrichtung) Sperrt: Anwendung: Gleichrichter

Technische Informatik I (SS 2006) LEDs Durch Rekombination der Löcher + Elektronen: Lichtaussendung: Schaltzeichen: Wichtig: Vorwiderstand

Technische Informatik I (SS 2006) Bipolarer Transistor Bringe Diodenpaar als Sandwich zusammen 2 Typen: NPN und PNP 3 Pole: Basis Kollektor Emiter Basis muss sehr schmal sein

Technische Informatik I (SS 2006) NPN-Transistor Spannung an Basis-Kellektor Sperrichtung D.h. + an N und – an P

Technische Informatik I (SS 2006) Transistor schaltet Legen nun Spannung mit positiver Polarität an Basis-Emiter an Teildiode in Durchlassrichtung Ladungsträger fließen weiter zum Kollektor Strom fließt vom Emmiter zum Kollektor Basisstrom klein (Basis schmale Schicht)

Technische Informatik I (SS 2006) Transistor als Verstärker Einige Elektronen fallen in die Basis-Löcher Ladung muss abgesaugt werden Kleiner Basis-Emmiter- Strom Aber: Emmiter-Kollektor- Strom ca. 100 mal größer Normale Anwendung: Emmitter-Kollektor- Spannung konstant Basis-Potential regelt

Technische Informatik I (SS 2006) Ziel: Müssen mit Transistoren und Dioden NICHT, UND, ODER bauen (oder NAND)

Technische Informatik I (SS 2006) Definitionen Spannungspegel: 5V als 1 0V als 0 Positive Logik 5V als 0, 0V als 1 Negative Logik Eingangsbereich toleranter als Ausgangsbereich Gatterlaufzeiten 3,3 V- Logik

Technische Informatik I (SS 2006) Inverter UE=0VUE=0V R= UA=5VUA=5V Potential an Basis U E =0V CE-Widerstand sehr groß Spannungsteiler liefert U A =5V Potential an Basis U E =5V CE-Widerstand gering Spannungsteiler liefert U A =0V Brauchen nur noch UND/ODER UE=5VUE=5VR=0 UA=0VUA=0V

Technische Informatik I (SS 2006) Diodenlogik UND-Gatter Einer der beiden Eingänge U 1,2 =0V Strom fließt Spannungsabfall an R maximal U a 0V ODER-Gatter Einer der beiden Eingänge U 1,2 =5V Strom fließt Spannungsabfall an R maximal U a 0V U1=5VU1=5V U2=0VU2=0VU2=5VU2=5V U1=5VU1=5V U2=0VU2=0V U1=0VU1=0V

Technische Informatik I (SS 2006) DTL – Dioden-Transistor-Logik Problem bei Diodenlogik: Spannungsteiler Für jedes Gatter sinkt Pegel… (bei 5V) …bzw. steigt Pegel (bei 0V) Lösung: Inverter-Verstärker- Stufe Bsp: DTL-NAND-Gatter

Technische Informatik I (SS 2006) TTL Ersetze Dioden durch Multi-Emitter- Transistor Schneller als DTL (10ns)

Technische Informatik I (SS 2006) TTL Gegentakt-Endstufe: T2 sperrt UX=5V T3 leitet, T4 sperrt T2 leitet UX=0V T3 sperrt, T4 leitet Einer der beiden Transistoren T3,4 leitet Gatter kann Strom aufnehmen und abgeben UXUX

Technische Informatik I (SS 2006) Tristate E Zusätzlicher Enable- Eingang: E=0 T2 sperrt und damit T4 Über Diode wird Basis von T3 auf Lo gezogen T3 sperrt Ausgang hochohmig

Technische Informatik I (SS 2006) Bus mit Geräten Bus Gerät 1Gerät 3Gerät 2 Arbiter REQ1 ACK1REQ2 ACK2 REQ3 ACK3 Alle Geräte hochohmig Enable nur wenn ACK=1

Technische Informatik I (SS 2006) Schottky Schottky-Dioden Nur Elektronen an Ladungstransport beteiligt Schnell (ps-Bereich) Begrenzt Basis-Emitter-Strom durch Durchschalten Schneller als TTL (3ns) MetallN-Zone

Technische Informatik I (SS 2006) ECL Referenzspannung U r =-1,3 V Ist x 1 UND x 2 < U r T 1 und T 2 sperren und T 3 leitet Sonst sperrt T 3 Gatterlaufzeit 0,7ns Verlustleistung 3-5 mal höher als TTL

Technische Informatik I (SS 2006) Zusammenfassung Halbleiter: Leiten effektiv nur bei Dotierung Diode: Einbahnstraße der Elektronik Transistor: Elektronischer Schalter/Verstärker Schaltungen mit bipolaren Transistoren TTL/ECL Nachteile/Grenzen von Schaltungen mit bipolaren Transistoren Große Fläche auf Chip Bipolare Transistoren sind stromgesteuert Höherer Aufwand bei integrierter Technik

Technische Informatik I (SS 2006) J-FET Source-Drain-Fluss schnürt sich ab wenn Spannung steigt Abschnürspannung kann mit Gatespannung geregelt werden Junction Field Effective Transistor

Technische Informatik I (SS 2006) Aufbau in Integrationstechnik

Technische Informatik I (SS 2006) Herstellungsschritte

Technische Informatik I (SS 2006) MOS-FET P-Substrat n-n- n+n+ n+n+ SiO 2 SourceDrain Gate Bulk Sehr hoher Eingangswiderstand >10 12 Leitender n - -Kanal Gate negativ gegen Source Ladungsträger werden verdrängt Verarmungstyp n-Kanal p-Kanal

Technische Informatik I (SS 2006) MOS-FET P-Substrat n+n+ n+n+ SiO 2 SourceDrain Gate Bulk Anreicherungstyp Durch positive Spannung gegen Bulk n-Ladungsträger reichern sich an Gate an n-Kanalp-Kanal

Technische Informatik I (SS 2006) MOSFET n-Typ leitet: Wenn U Gate >U Source p-Typ leitet Wenn U Gate <U Source

Technische Informatik I (SS 2006) CMOS Complemetary Metal Oxide Semiconductor Benutzt N- und P-Typ Versorgungsspannung 5V oder 3,3V

Technische Informatik I (SS 2006) CMOS-Inverter n-Typ leitet: Wenn U Gate >U Source p-Typ leitet Wenn U Gate <U Source

Technische Informatik I (SS 2006) CMOS-Inverter: Stromverbrauch Floating- Eingang: Beide Transistoren leiten Kann Gatter zerstören Vermeiden! Eingang 1 oder 0 (Nahezu) kein statischer Stromverbrauch Aber: Dynamisch durch Umladen der Kapazitäten Bsp: Gate-Kapazität 10fF (Gering) Kapazität der Leitungen 1pf Bsp: 1% Aktivität, 200MHz I=N*(C*U)/dt =1%* *1pF*3,3V/5ns =6,6A

Technische Informatik I (SS 2006) CMOS-NAND n-Typ leitet: Wenn U Gate >U Source p-Typ leitet Wenn U Gate <U Source

Technische Informatik I (SS 2006) CMOS-Transceiver Durchleitung beider Zustände

Technische Informatik I (SS 2006) TTL vs. CMOS FamilieLeistung/ Gatter Laufzeit Standard-TTLTTL10mW10ns Schottky-TTLS-TTL20mW3ns Low-Power-S-TTLLS-TTL2mW9ns Advanced-LS-TTLALS-TTL1mW4ns FamilieLeistung/ Gatter/ MHz Laufzeit CMOSC0,3mW90ns High-Speed-CMOSHC0.5mW10ns Advanced-CMOSAC0,8mW3ns

Technische Informatik I (SS 2006) Zusammenfassung Halbleiter: Leiten effektiv nur bei Dotierung Diode: Einbahnstraße der Elektronik Transistor: Elektronischer Schalter/Verstärker Schaltungen mit bipolaren Transistoren TTL/ECL Nachteile/Grenzen von Schaltungen mit bipolaren Transistoren Große Fläche auf Chip Bipolare Transistoren sind stromgesteuert Höherer Aufwand bei integrierter Technik

Technische Informatik I (SS 2006) Teil 2: Integrierte Schaltungen 2c: CMOS

Technische Informatik I (SS 2006) J-FET Source-Drain-Fluss schnürt sich ab wenn Spannung steigt Abschnürspannung kann mit Gatespannung geregelt werden Junction Field Effective Transistor

Technische Informatik I (SS 2006) Aufbau in Integrationstechnik

Technische Informatik I (SS 2006) Herstellungsschritte

Technische Informatik I (SS 2006) MOS-FET P-Substrat n-n- n+n+ n+n+ SiO 2 SourceDrain Gate Bulk Sehr hoher Eingangswiderstand >10 12 Leitender n - -Kanal Gate negativ gegen Source Ladungsträger werden verdrängt Verarmungstyp n-Kanal p-Kanal

Technische Informatik I (SS 2006) MOS-FET P-Substrat n+n+ n+n+ SiO 2 SourceDrain Gate Bulk Anreicherungstyp Durch positive Spannung gegen Bulk n-Ladungsträger reichern sich an Gate an n-Kanalp-Kanal

Technische Informatik I (SS 2006) MOSFET n-Typ leitet: Wenn U Gate >U Source p-Typ leitet Wenn U Gate <U Source

Technische Informatik I (SS 2006) CMOS Complemetary Metal Oxide Semiconductor Benutzt N- und P-Typ Versorgungsspannung 5V oder 3,3V

Technische Informatik I (SS 2006) CMOS-Inverter n-Typ leitet: Wenn U Gate >U Source p-Typ leitet Wenn U Gate <U Source

Technische Informatik I (SS 2006) CMOS-Inverter: Stromverbrauch Floating- Eingang: Beide Transistoren leiten Kann Gatter zerstören Vermeiden! Eingang 1 oder 0 (Nahezu) kein statischer Stromverbrauch Aber: Dynamisch durch Umladen der Kapazitäten Bsp: Gate-Kapazität 10fF (Gering) Kapazität der Leitungen 1pf Bsp: 1% Aktivität, 200MHz I=N*(C*U)/dt =1%* *1pF*3,3V/5ns =6,6A

Technische Informatik I (SS 2006) CMOS-NAND n-Typ leitet: Wenn U Gate >U Source p-Typ leitet Wenn U Gate <U Source

Technische Informatik I (SS 2006) CMOS-Transceiver Durchleitung beider Zustände

Technische Informatik I (SS 2006) TTL vs. CMOS FamilieLeistung/ Gatter Laufzeit Standard-TTLTTL10mW10ns Schottky-TTLS-TTL20mW3ns Low-Power-S-TTLLS-TTL2mW9ns Advanced-LS-TTLALS-TTL1mW4ns FamilieLeistung/ Gatter/ MHz Laufzeit CMOSC0,3mW90ns High-Speed-CMOSHC0.5mW10ns Advanced-CMOSAC0,8mW3ns

Technische Informatik I (SS 2006) Teil 2: Integrierte Schaltungen 2d: Speicher

Technische Informatik I (SS 2006) SRAM mit CMOS Inverter-Inverter-Zelle 2 FETs zum Abkoppeln Inverter mit 1 FET + 1R Aber: Platzbedarf eines Widerstands auf IC groß 6-Transistor-Zelle

Technische Informatik I (SS 2006) CMOS-D-FF

Technische Informatik I (SS 2006) Vor- und Nachteile Schnell (10ns) 6 Transistor-Zelle: hoher Flächenbedarf Hoher Stromverbrauch, bei hoher Geschwindigkeit und Speicherdichte Teuer

Technische Informatik I (SS 2006) Beispiel SRAM-Baustein von Samsung

Technische Informatik I (SS 2006) Schreib- und Lesezyklus

Technische Informatik I (SS 2006) DRAM Dynamisches RAM 1C+1FET Kondensator wird beim Lesen entladen Wieder beschreiben Ladungsverluste Refresh alle 2-8ms Lesen und Zurückschreiben Ca 1% der Zeit

Technische Informatik I (SS 2006) DRAM Realisierung Bis 4MBit: Gefaltet Über 4MBit: Deep Trench

Technische Informatik I (SS 2006) ROM / PROM ROM = Read Only Memory PROM = Programmable ROM

Technische Informatik I (SS 2006) EPROM EPROM = Erasable PROM Floating Gate zwischen Gate und Kanal Programmierung durch hohe Spannung (19V) Ladungsträger werden auf floating gate katapultiert Abschirmungseffekt Bestrahlung mit UV-Licht (20min) entlädt floating gate

Technische Informatik I (SS 2006) EEPROM Electrically Erasable PROM Durch- und Zurücktunneln durch Spannung (ca. 19V) möglich Fowler-Nordheim-Effekt Auch als schnelles Flash-EEPROM machbar Mehrere MB/s >10 5 Zyklen möglich

Technische Informatik I (SS 2006) Zusammenfassung RAM: SRAM-6-Transistor-Zelle, DRAM: Kondensator ROM: PROM, EPROM EEPROM: Einsatz als Flash (Memory-Stick, Digitale Kameras…)

Technische Informatik I (SS 2006) Teil 2: Integrierte Schaltungen 2e: Herstellung

Technische Informatik I (SS 2006) IC-Entwicklung 1948: Erfindung des Bipolartransistors Bell Labs (AT&T), Bardeen, Shockley, Brattain 1960 MOSFET 1962: Integrierte Schaltung (IC=integrated circuit) Jack Kilby (Texas Instruments)

Technische Informatik I (SS 2006) Größenverhältnisse 80 nm

Technische Informatik I (SS 2006) Produktionsschritte

Technische Informatik I (SS 2006) Herstellung des Wafers Polykristallines Rohsilizium Aus Quarzsand, nach Reinigung Impfkristall wird in Schmelze getaucht Tiegelziehen unter Drehung Czochalski-Verfahren

Technische Informatik I (SS 2006) Wafer Wird von IC- Herstellern erworben zur Markierung der Kristallorientierung WafergrößeZeitraum 3 = 76 mm = 100 mm = 125 mm = 150 mm = 200 mm = 300 mm Pizza-Wafer 1995

Technische Informatik I (SS 2006) Produktionsschritte 1 Oxidschicht 2 Fotolack (Fotoresist) 3 Fotomaske I 4 Belichtung 5 Nach Belichtung 6 Wegätzen 7 Aufwachsen Oxidschicht 8 Entfernen Fotolack 9 Aufbringen Polysilizium 10 Aufbringen Fotolack 11 Maske 12 Wegätzen Fotolack 13 Wegätzen Polysilizium 14 Entfernung Fotolack 15 Bestrahlung mit Ionen 16 Siliziumoxid 17 Lack 18 Maske 19 Ätzen 20 Ätzen Polysilizium 21 Entfernen Fotolack 22 Aufbringen Metall 23 Fertiger FET

Technische Informatik I (SS 2006) IC-Herstellung Strukturherstellung durch Ätzen durch Implantierung

Technische Informatik I (SS 2006) Schichterzeugung Chemical Vapor Deposition (CVD) Bsp 1: TEOS (Tetraethyloxisilan) Si(OHCl 3 ) °C SiO 2 + H 2 O+H 2 +HCl Bsp 2: Ammoniak und Dichlorsilan: Si 3 N 4 -Schicht Weitere: Silizium-Oxynitrid (SiO x N y ), Polysilizium (Si), Titannitrid (TiN), Wolfram (W)…. Hitze Benötigte Schichten: Metalle Polysilizium Dielektrika: SiO2 und SiN

Technische Informatik I (SS 2006) Abscheidung Gaskonzentration Hoch Schnelles Wachstum Gefahr von Fehlstellen

Technische Informatik I (SS 2006) PVD (Physical Vapor Deposition) Abscheidung ohne chemische Reaktion Aufdampfverfahren, z.B Verdampfung von Al durch Heizung Sputtern (Kathodenstrahl- zerstäubung)

Technische Informatik I (SS 2006) Thermische Oxidation Sauerstoff reagiert direkt auf Silizium Temperatur > 800° Größtmögliche Reinheit Z.B. für Gateoxid Dicke 3-5nm 6-10 Atomlagen!

Technische Informatik I (SS 2006) Photolithografie Fotolack Aufbringen auf rotierende Scheibe (ca 1000 U/m) Ausheizung (Postbake) Belichtung Maske Quarzplatte, mit Chrom beschichtet 4-5 mal größer, optische Verkleinerung Danach weiteres Erhitzen (post exposure bake) Entwickeln Ätzen oder Implantieren Entfernung des Lackes

Technische Informatik I (SS 2006) Ätzen Zum Entfernen der Struktur unter entwickeltem Fotolack Isotropes Ätzen Zerstörung unter Fotolack Anisotropes Ätzen

Technische Informatik I (SS 2006) Nassätzen Mit mechanischer Unterstützung Chemisch-mechanisches Polieren (CMP) Ohne Nass-chemisches Ätzen Rückätzen Sehr planar!

Technische Informatik I (SS 2006) Trockenätzen Bsp.: Reaktives Ionenätzen (RIE=reactive ion etching) Reaktor ähnlich zum Sputter-Reaktor Anisotropes Ätzen Nachteile: Schädigung unterliegender Schichten Inhomogenitäten

Technische Informatik I (SS 2006) Ionenimplantation Mit Beschleuniger Probleme: Schädigung der Kristallstruktur Wiederherstellung durch Tempern (Erhitzen) Durch Tempern Diffusion der Dotierstoffe Kurzzeittempern (RTP=rapid thermal processing) °C, s

Technische Informatik I (SS 2006) Resultat Wiederholung aller Schritte mal Resulat: Bsp: Pentium mm-Wafer, 281 Chips (die) 42 Millionen Transistoren

Technische Informatik I (SS 2006)

Packaging Ausschneiden der dies Bonding In Gehäuse einschmelzen

Technische Informatik I (SS 2006) Packaging

Technische Informatik I (SS 2006) Zusammenfassung Herstellung von integrierten Schaltungen Technologisch sehr aufwändig Waferproduktion mit reinem Rohsilizium Abwechselnd: Schichten aufbringen (CVD, PVD) oder Oxidation Fotolithographie Äzten (Nass-chemisch, Trockenätzen) Test & Packaging

Technische Informatik I (SS 2006)

Zusammenfassung Stunde 5 Herstellung von integrierten Schaltungen Technologisch sehr aufwändig Waferproduktion mit reinem Rohsilizium Abwechselnd: Schichten aufbringen (CVD, PVD) oder Oxidation Fotolithographie Äzten (Nass-chemisch, Trockenätzen) Test & Packaging

Technische Informatik I (SS 2006) Zusammenfassung Stunde 5 Herstellung von integrierten Schaltungen Technologisch sehr aufwändig Waferproduktion mit reinem Rohsilizium Abwechselnd: Schichten aufbringen (CVD, PVD) oder Oxidation Fotolithographie Äzten (Nass-chemisch, Trockenätzen) Test & Packaging

Technische Informatik I (SS 2006) Teil 3: Programmierbare Logik 3a: Bausteine

Technische Informatik I (SS 2006) Programmierbare Matrizen abcy DISJUKTIVE Normalform y ist nur dann 1, wenn Zeile zu 1 verknüpft: y 1 =¬a & ¬b & ¬c y 2 =¬a & ¬b & c y 5 = a & ¬b & ¬c Zeile verODERn: y=(¬a & ¬b & ¬c) | (¬a & ¬b & c) | (a & ¬b & ¬c)

Technische Informatik I (SS 2006) PLA y=(¬a & ¬b & ¬c) | (¬a & ¬b & c) | (a & ¬b & ¬c) Aufbau der UND- Matrix durch programmierbare Verbindungen Aufbau der ODER- Matrix durch programmierbare Verbindungen abcabc y PLA=Programmable Logic Array Allgemein: PLD=Programmable Logic Device

Technische Informatik I (SS 2006) y PLA Mehrere Ausgänge: Erfordert größere UND-Matrix Ressourcen- schonung durch programmierbare ODER-Matrix (Wiederverwendung der Produktterme) abcabc Vereinfachte Darstellung Eingänge von ODER- bzw. UND-Gatter werden zusammengefasst x

Technische Informatik I (SS 2006) Programmierung Z.B als PROM (durchtrennte Verbindungen) Mit EPROM/EEPROM/Flash Statisch, behält Informationen (z.B. board-controller) Programmierung meist durch Kabel RAM Wird gebootet wie Prozessor XC4000

Technische Informatik I (SS 2006) y PAL ODER-Matrix fest verdrahtet Schneller, aber weniger flexibel abcabc PAL=Programmable Array Logic x

Technische Informatik I (SS 2006) y Kombinatorische PALs abab Ausgänge werden (teilweise) wieder zurückgeführt

Technische Informatik I (SS 2006) Kombinatorische PALs Anwendung: Mehrstufige kombinatorische Logik Aufbau von kombinatorischen Flip-Flops Benutzung der Brückenleitungen sowohl als Eingang- als auch Ausgangspin Man bleibt flexibel! Schaltung der Pins durch interne Leitung

Technische Informatik I (SS 2006) PAL 16L8 10 Inputs 2 Outputs 6 flexible IOs

Technische Informatik I (SS 2006) PAL 16R6 Wahlweise mit FFs vor Feedback-Leitung Zustandsautomat!

Technische Informatik I (SS 2006) Zustandsautomat Eingänge Beeinflussen Übergangs- regeln Zustandsspeicher 0, 1, 2, 3 Flip-Flops Übergangsregeln Wenn 0, dann 1 Wenn 1, dann 2 Wenn 3, dann 4 Wenn 4, dann 0 Kombinatorische Logik Ausgabe Kombinatorische Logik Eingänge

Technische Informatik I (SS 2006) GAL=Gate Array Logic Makrozelle hat konfigurierbaren Ausgang Mit/ohne Register Ausgang/Eingang

Technische Informatik I (SS 2006) CPLD CPLD=Complex Programmable Logic Device Mehrere Logic Array Blocks (LABs) Verbunden über Netzwerk Speicherung in EEPROM

Technische Informatik I (SS 2006) CPLD Logic Block Logic Block Logic Block Logic Block I/O Programmable Interconnect PAL-Artige Struktur

Technische Informatik I (SS 2006) CPLD Bsp: Altera, MAX 7000

Technische Informatik I (SS 2006) Verbindungen CPLD Über PIA: Zeitverzögerung ist konstant Verhalten CPLD gut simulierbar

Technische Informatik I (SS 2006) CPLD-Optionen Programmierung meist über JTAG-Stecker Auch zum Testen… JTAG=Joint Test Action Group Eingebautes RAM Verhindert Verschwenden von Makrozellen

Technische Informatik I (SS 2006) FPGA Field Programmable Gate Array Logic Blocks werden durch 2D-Array verbunden

Technische Informatik I (SS 2006) Einordnung PLD SPLD HCPLD FPGACPLD PLAPAL Simple PLD High Capacity PLD Programmable Logic Array Programmable Array Logic Complex PLD Field Programmable Gate Array

Technische Informatik I (SS 2006) Hersteller XILINX (CPLD & FPGA), 49.2% Altera (FPGA) 31.2 % Lattice (CPLD), 10% div.

Technische Informatik I (SS 2006) XILINX-FPGA-Complex-Logic-Block Look-Up-Table Implementiert kombinatorische Logik …siehe Teil 1e FF zum (optionalen) Registrieren Für Zustandsautomaten

Technische Informatik I (SS 2006) LUT-Implementierung LUT als 16-Bit-RAM implementiert Bitstream lädt Latche Bsp: Input = 0001 Output soll = 1 sein Latch 2 muss mit 1 geladen werden 1

Technische Informatik I (SS 2006) LUT-Beispiel LUT A B C D Z A B C D Z WahrheitstabelleGatter-Implementierung LUT -Implementierung

Technische Informatik I (SS 2006) LUT als RAM XILINX-FPGA haben kein dediziertes RAM LUT mit Latche kann als RAM benutzt werden RAM16X1S O D WE WCLK A0 A1 A2 A3 RAM32X1S O D WE WCLK A0 A1 A2 A3 A4 RAM16X2S O1 D0 WE WCLK A0 A1 A2 A3 D1 O0 = = LUT or LUT RAM16X1D SPO D WE WCLK A0 A1 A2 A3 DPRA0DPO DPRA1 DPRA2 DPRA3 or

Technische Informatik I (SS 2006) LUT als Schieberegister LUT kann als Schieberegister konfiguriert werden DQ CE DQ DQ DQ LUT IN CE CLK DEPTH[3:0] OUT LUT =

Technische Informatik I (SS 2006) XILINX SPARTAN IIE CLB 2*4Bit-Eingänge Schnelle Carry-Logik verbinden benachbarte CLBs Für breite Zähler und Addierer

Technische Informatik I (SS 2006) Anbindung CLB Anbindung CLB an PSM (programmable switching Matrix) Long-Lines über gesamten Chip Direct-Lines von CLB zum Nachbarn

Technische Informatik I (SS 2006) XILINX Virtex-II Pro Eingebaute Multiplizierer 18*18 Bit Multi-Gigabit Transceiver Bis zu 4 IBM PowerPC Prozessoren

Technische Informatik I (SS 2006) Xilinx CPLD/FPGA Virtex-II CPLDs Low Power Spartan-IIE Density (System Gates) Features FPGAs SRAM-basiert 10K 600K 10M

Technische Informatik I (SS 2006) State-of-the-Art Xilinx Virtex-4 90nm process Up to 960 I/Os > logic cells Up to kb block RAMs (~10Mb RAM) 192 DSP slices (18x18 multiplier- accumulator) 20 digital clock managers (DCM) 24 high-speed serial transceivers (622Mb/s to 11.1Gb/s) Up to four PowerPC 405 cores Altera Stratix-II 90nm process Up to 1170 I/Os logic elements 9.6Mb embedded RAM 96 DSP blocks: x18 multipliers 12 PLLs Serial I/O up to 1Gb/s No hard processor cores

Technische Informatik I (SS 2006) Problem: Wie kann man solche Chips programmieren?

Technische Informatik I (SS 2006) Teil 3: Programmierbare Logik 3b: Design

Technische Informatik I (SS 2006) Design-Flow Design Entry Schematic …wie Vorlesung bisher Hochsprache Z.B. VHDL Implementierung Tools von Hersteller Simulation Download Kabel oder externer Bus XC4000

Technische Informatik I (SS 2006) Design Ausgabe von Design Entry: Netlist (z.B. EDIF) Hersteller-Tools: Netlist einlesen Placement Routing Optimieren

Technische Informatik I (SS 2006) VHDL Very high speed integrated circuit Hardware Description Laguage (Textbasiert) Top-Down-Ansatz Sprache für Implementierung und Simulation

Technische Informatik I (SS 2006) Begleitung von Design-Entry… …bis zum Timing- Analyse Mehrere Simulationsschritte

Technische Informatik I (SS 2006) Grundkonzept ENTITY Definiert Ein- und Ausgänge (Black-Box) ARCHITECTURE Implementierung(en) Modul Libraries LIBRARY IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_unsigned.all; std_logic: Zustände 0,1 Z: Tristate etc…

Technische Informatik I (SS 2006) ENTITY ENTITY modellname IS GENERIC parameterliste PORT interface deklarationen END modellname Beispiel: ENTITY and IS PORT (ein1: IN std_logic; ein2: IN std_logic; aus: OUT std_logic); END and

Technische Informatik I (SS 2006) ARCHITECTURE ARCHITECTURE and_arch OF and IS SIGNAL ein1, ein2, aus: std_logic BEGIN aus <= ein1 and ein2; END and_arch Statements zwischen BEGIN und END werden parallel abgearbeitet… …wenn es sich um nebenläufige Befehle handelt, wie: Process Concurrent Signal Assignment …

Technische Informatik I (SS 2006) Beispiel: Halbaddierer ENTITY halbaddierer IS PORT (a: IN std_logic; b: IN std_logic; sum: OUT std_logic; carry: OUT std_logic); END halbaddierer ARCHITECTURE halbaddierer_arch OF halbaddierer IS BEGIN sum <= a xor b after 5 ns; carry <= a and b after 5 ns; END halbaddierer_arch

Technische Informatik I (SS 2006) VHDL-Simulation Simulation erfolgt über TESTBENCH after-Statement wird nur in Simulation benutzt Mit GENERIC -Parameterlist können Variablen übergeben werden, Beispiel: In ENTITY : GENERIC (delay: TIME); In ARCHITECURE : a <= b and c after delay;

Technische Informatik I (SS 2006) Hierarchie Wiederverwendung des Halbaddierers in Volladdierer: ENTITY volladdierer IS PORT (a, b, cin: IN std_logic; sum: OUT std_logic; carry: OUT std_logic); END volladdierer

Technische Informatik I (SS 2006) Hierarchie ARCHITECTURE volladdierer_arch OF volladdierer IS BEGIN H1: halbaddierer port_map(IN1, IN2, s1, s3); H2: halbaddierer port_map(s1, c_in, sum, s2); c_out <= s2 or s3; END volladdierer_arch

Technische Informatik I (SS 2006) Konfiguration Auswahl der ARCHITECTURE: CONFIGURATION name_conf OF name IS FOR name_arch END FOR; END name_conf

Technische Informatik I (SS 2006) Prozesse [label:] process [(sensitivity_list)] [declarations] begin {sequential_statement} end process [label]; Definiert einen Prozess, der ständig neu ausgeführt wird Optional: sensitivity_list: Prozess wird ausgeführt, wenn signal in dieser Liste sich ändert Äquivalent: process (A,B)process beginbegin C <= A or B; C <= A or B; end; wait on A, B; end; Keine wait statements erlaubt wenn sensitivity_list deklariert

Technische Informatik I (SS 2006) Zustandmaschine: Arbiter Bus Gerät 1Gerät 3Gerät 2 Arbiter REQ1 ACK1REQ2 ACK2 REQ3 ACK3

Technische Informatik I (SS 2006) Zustandsmaschinen mit VHDL architecture BEHAVIOR of MOORE is type STATE_TYPE is (Idle, DEV1, DEV2, DEV3); signal CURRENT_STATE, NEXT_STATE: STATE_TYPE; ) begin -- Process to hold combinational logic COMBIN: process(CURRENT_STATE, REQ1, REQ2, REQ3) begin case CURRENT_STATE is when Idle => ACK1 <= '0'; ACK2 <= '0'; ACK3 <= '0'; if ( NOT REQ1='1' AND NOT REQ2='1' AND NOT REQ3='1') then NEXT_STATE <= Idle;

Technische Informatik I (SS 2006) Zustandsmaschinen mit VHDL (2) when DEV2 => ACK1 <= '0'; … if ( NOT REQ1='1' AND NOT REQ2='1' AND REQ3='1') then NEXT_STATE <= DEV3; elsif (REQ1='1' AND NOT REQ2='1') then NEXT_STATE <= DEV1; … end if; when DEV3 => … end case; end process; -- Process to hold synchronous elements (flip-flops) SYNCH: process begin wait until CLOCK'event and CLOCK = '1'; CURRENT_STATE <= NEXT_STATE; end process; end BEHAVIOR;

Technische Informatik I (SS 2006) VHDL-Beschreibungen Struktur- und Verhaltensbeschreibung möglich

Technische Informatik I (SS 2006) Alternativ: SystemC

Technische Informatik I (SS 2006) Alternativ: SystemC

Technische Informatik I (SS 2006) Zusammenfassung Stunde 6 PLD=Programmable Logic Device PAL/PLA Programmierbar durch UND/ODER-Matrix Feedback-Leitungen Auch mit Register CPLD Viele PAL-artige Logic-Blöcke, meist mit EEPROM programmiert FPGA Kleinere Logic-Blöcke, dafür viele Komplexe Routing-Möglichkeiten Viele Optionen!

Technische Informatik I (SS 2006) Zusammenfassung Stunde 6 Designschritte: Design Entry (VHDL) Implementierung: Optimierung, Route & Place Download VHDL Hier nur (sehr) kurze Übersicht Wer mehr lernen möchte: VHDL-Praktikum ist Teil des Moduls Technische Informatik

Technische Informatik I (SS 2006) Was kann man mit programmierbarer Logik & VHDL machen? z.B. einen Prozessor bauen!

Technische Informatik I (SS 2006)