D. Programmierbare Logik

Werbung
D. Programmierbare Logik
D.1.
 Bisher:
„Höhere Informatik“
- wenige Schaltkreise pro Chip,
- feste Verdrahtung.
 Nun:
-
Einordnung
Systemprogrammierung:
- Betriebssystemkonzepte, Ein- & Ausgabe
Generischer Schaltkreis,
Löschen & programmieren,
Umfangreiche Funktionalität,
Einstellbare Logikfunktionen,
Einstellbare Verdrahtung,
Architektur:
K J
E F G H I
- Recherarchitektur, Instruktionssatz, Mikroarchitektur
Rechnerarithmetik:
- Zahlendarstellung, Operatoren, Konvertierung ...
Programmierbare Logik
Digitale Schaltungen:
C D
- Zustandsmasch., Zähler, ALU, PLA, Optimierung
Digitale Logik:
- Gatter, digitale Signale, Signalausbreitung ...
B
Elektronik
D-1
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.2.
Tri-State-Ausgabelogik
D.2.1 Elektronische Bussysteme
 BUS: Gruppe von parallelen Leitungen zum Datenaustausch..
 Bus im Rechenwerk =>
- Bidirektional,
- z.B. 32 Bit Daten,
- von & zum Register.
A
L
U
R
egister R
egister R
egister R
egister
B
us
 Busysteme in einem Standard-PC:
- versch. Geschwindigkeit & Breite,
- Daten- & Adresse,
- Arbitrierung.
CPU
FSB
RAM RAM N-Bridge
Device Device
PCI - Bus
IDE
IDE
S-Bridge
Device Device
ISA- Bus
D-2
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.2.2 Ausgabepegel elektronischer Digitalschaltungen
 Bisher 2 Zustände:
- Zustand „Logisch 0“: geringe Spannung, geringer Stromfluss
- Zustand „Logisch 1“: hohe Spannung, hoher Stromfluss,
- oder umgekehrt.
 Problem: zwei Ausgänge auf derselben Leitung
- elektrischer Kurzschluss je nach Ausgabewert
- bzw. Spannungen im verbotenen Bereich,
- undefinierter logischer Zustand.
=> Zusätzlicher Zustand:
- Ausgang soll sich gelegentlich
elektrisch neutral verhalten,
- Passt sich dem bestehenden
Zustand auf dem Bus an,
- Ähnlich „do not care“.
D-3
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
 Lösung 1: Tri-State-Puffer:
E „Enable“ Signal,
Y „evtl. hochohmiger Ausgang“,
- oft mit invertiertem Enabler E,
- Ausgabepegel „floatet“, falls enable,
 Lösung 2: Open-Kollektor Schaltung:
- „Wired-OR, Wired-AND,
D-4
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.2.3 Zugang zum Bus nur über Tri-State-Puffer
 Enable:
- Das Schaltwerk legt seinen Ausgang auf den Bus,
- Hoffentlich ist nur ein Sender am Bus „enabled“.
 Ein bestimmter Datenpfad kann gezielt ausgewählt werden:
- Mehrere Empfänger möglich.
D-5
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.3.
SPLD - Simple Programmable Logic Devices
 Einfache programmierbare Logikbausteine:
- Im wesentlichen keine Rechenfähigkeit,
- Typischerweise Festwertspeicher.
 ROM - Read Only Memory:
- Werte/Bitmuster bei Herstellung festgelegt,
- Z.B. durch eine letzte Metallisierung.
 Dioden als Koppelelement:
- Koppeln das Lesesignal auf
die Ausgangsleitung.
?
?
!
D-6
!
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
 PROM – Programmable Read Only Memory
- einmalig durch Anwender programmierbar,
- z.B. durchschmelzen von Sicherungen.
D-7
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.3.1 Beispiel: 8 x 4 Bit PROM
 Funktionsweise
- Adressleitungen selektieren Speicherzelle,
- Inhalt an Ausgabeleitung abgreifbar:
Koppelelement
D-8
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.4.
EPROM/EEPROM/Flash
 Erasable Programmable Read Only Memory (EPROM):
- elektrisch programmierbar (durch Überspannungen).
- durch UV-Bestrahlung löschbar,
2
 Electrically Erasable PROM (EEPROM, E PROM):
- Etwa zur Speicherung des BIOS eines PCs,
- elektrisch programmierbar,
- elektrisch löschbar.
 Flash-Speicher:
- Etwa zur Speicherung von Photos in digitalen Kameras,
- ähnlich EEPROM aber geringere Größe,
- blockweise programmier- und löschbar.
 Seit kurzem Solid-State Disk:
- Als Ersatz für rotierende Festplatten,
- Erasure-Blocksize z.B. 4 Mbyte,
- Schneller, wahlfreier Zugriff.
D-9
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.5.
PROM als Schaltnetz
 Schematische Darstellung eines PROM
- Programmierbare ODER-Matrix mit Koppelelementen,
- Adressdekoder als feste UND-Matrix,
- Minterme über Adressleitungen,
 PROM kann Schaltfunktionen implementieren:
- pro Wertekombination der Eingänge wird ein Ergebnis direkt programmiert.
m
- 2 Worte à n Bit realisieren n Schaltfunktionen mit je m Eingängen,
- Wahrheitstabelle in Hardware abgebildet,
- keine Minimisierung üblich.
D-10
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.5.1 2x2-Multiplizierer
 Werte in PROM „brennen“:
- Adresse fest vordecodiert,
- Wahrheitstabelle (C10.1):
Mult
0x0=0
0x1=0
0x2=0
0x3=0
1x0=0
1x1=1
1x2=2
1x3=3
2x0=0
2x1=2
2x2=4
2x3=6
3x0=0
3x1=3
3x2=6
3x3=9
D-11
a
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
b
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
c
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
d
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
y3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
y2
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
y1
0
0
0
0
0
0
1
1
0
1
0
1
0
1
1
0
y0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.6.
PAL - Programmable Array Logic
 Charakteristiken:
- feste ODER-Matrix,
- frei programmierbare UND-Matrix,
- feste Anzahl UND-Gatter pro
ODER-Gatter (hier 4).
 PAL kann jede minimisierte
Schaltfunktion realisieren, falls
Anzahl Produktterme pro
Schaltfunktion klein genug:
- Hier 4 Produktterme pro SF.
D-12
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
Begriff PAL
 Eingetragenes Warenzeichen der Fa. AMD bzw. Lattice
 Technik
- ursprünglich in TTL- später auch CMOS-Technik,
- ursprünglich einmalig programmierbar,
- heute auch löschbare Varianten.
 Varianten (siehe auch GAL)
-
D-13
Rückkopplung der Ausgänge als interne Eingänge,
normaler oder invertierter Ausgang,
getaktet / ungetaktete Flip-Flops,
Flip-Flops an den Ausgängen,
Tri-State-Ausgänge.
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.7.
GAL - Generic Array Logic
 Funktionsweise wie PAL, jedoch flexiblere Ausgabelogik, anschliessend
an PAL-Array (nicht gezeigt).
 Beispiel: Output Logic Macro Cell (OLMC):
D-14
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D-15
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
-
D-16
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D-17
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
-
D-18
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
-
Rückkoppelung
des Ausganges
 Ausschließlich CMOS Technik
 Markenzeichen der Fa. Lattice
 Reprogrammierbar durch E2CMOS-Technologie (ähnlich EEPROM)
D-19
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.8.
PLA - Programmable Logic Array (PLA)
 ODER-Matrix ebenso wie UNDMatrix frei programmierbar.
 Realisiert beliebige Schaltfunktionen, falls Anzahl der
Produktterme ausreichend.
D-20
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.9.
CPLD - Complex Programmable Logic Device
 Alternativbezeichnungen (Markennamen):
- EPLD, EEPLD, PEEL, MAX, SuperPAL, MegaPAL ...
 Zusammenfassung der Funktionalität mit tausenden GAL-Bausteinen.
 Makrozellen:
- für Ausgabelogik (I/O-Blocks)
- für Berechnung der Schaltfunktionen
- „Borgen“ zusätzlicher UND-Glieder für Produktterme aus anderen Makrozellen.
 Verschaltung der internen GALs/Makrozellen:
- mit einer programmierbaren Zuordnungsmatrix,
- vollständige oder unvollständige Verschaltung.
 Programmierung wie EPROM, EEPROM oder Flash-ROM:
- Anders als FPGA keine Startup- bzw. Ladeverzögerung.
D-21
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.9.1 Blockschaltbild für Makrozellenorganisation:
 Verschiedene Makrozellen bilden einen Logik-Block:
- GAL-Zellen, ALU-Zellen, Registerzellen, ...
- Configurationspeicher ...
GAL
D-22
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.10.
FPGA - Field Programmable Gate Array
 Alternativbezeichnungen (Markenzeichen):
- LCA, pASIC, FLEX, APEX, ORCA, SPGA ...
 Aufbau
- bis zu mehreren 100.000 Makrozellen für Schaltfunktionen und Flip-Flops,
- programmierbare Kommunikationsinfrastruktur zwischen den Zellen,
- große oder kleine Logikzellen.
 Programmierung:
-
wie EPROM, EEPROM oder Flash-ROM,
Programmierung mit flüchtigem Speicher (RAM),
Hochfahren des FPGA durch externen Speicher (z.B. PROM),
Umprogrammierung im laufenden Betrieb möglich.
 Hersteller:
- Xilinx, Altera, Lattice, Actel, Lucent, Cypress, Atmel, Quicklogic.
D-23
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
D.10.1 FPGA Blockschaltbild
D-24
Technische Informatik 2,Winter 2008/09, P. Schulthess & F. Hauck, ©VS Informatik, Ulm
Herunterladen