Mikrorechentechnik 1 Mikroprozessoren und Mikrocontroller
Mikrorechentechnik 1 Mikroprozessoren und Mikrocontroller
Mikrorechentechnik 1 Mikroprozessoren und Mikrocontroller
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
MRT1 © Urbas<br />
<strong>Mikrorechentechnik</strong> 1<br />
<strong>Mikroprozessoren</strong> <strong>und</strong><br />
<strong>Mikrocontroller</strong><br />
Technische Universität Dresden<br />
9.10.2006<br />
PD Dr.-Ing. habil. Leon Urbas
2<br />
Übersicht<br />
• Architektur von Mikrorechnern<br />
� von Neumann Rechnerarchitektur<br />
� Unterschiedliche Befehlssätze<br />
• Rechnerkonzepte<br />
� <strong>Mikrocontroller</strong><br />
� ASIC, FGPA<br />
� DSP<br />
• Prozessorfamilie Intel 80x86<br />
• Architektur des 8086<br />
MRT1 © Urbas
MRT1 © Urbas<br />
Rechnerarchitektur
4<br />
von Neumann Architektur<br />
• Drei Gr<strong>und</strong>bestandteile<br />
� Zentrale<br />
Recheneinheit (CPU)<br />
� Speicher (Memory)<br />
� Ein-/Ausgabe (I/O)<br />
• Komponenten sind durch<br />
Busse verb<strong>und</strong>en<br />
• Struktur unabhängig von<br />
Problem, aber Programm<br />
problemspezifisch �<br />
programmgesteuerter<br />
Universalrechner<br />
• Zentrale Steuerung<br />
durch CPU<br />
CPU<br />
Ein-/<br />
Ausgabe<br />
Bussystem<br />
Speicher<br />
(ROM, RAM)<br />
MRT1 © Urbas
5<br />
Zentrale Recheneinheit (CPU)<br />
• Zentrale Ablaufsteuerung<br />
<strong>und</strong> Ausführung von<br />
Befehlen<br />
• Steuerwerk (Control Unit)<br />
� Interpretiert Befehle<br />
(Decoder)<br />
� Steuert die anderen<br />
Komponenten an<br />
• Rechenwerk (Arithmetric<br />
Logical Unit, ALU)<br />
� Führt die eigentlichen<br />
Berechnungen durch<br />
� Ein oder mehrere<br />
Zwischenspeicher<br />
(Register)<br />
(opt.)<br />
Daten<br />
Daten<br />
Register<br />
Daten<br />
ALU<br />
zum Daten-/Adreßbus<br />
Busschnittstelle<br />
Daten<br />
(opt.)<br />
Steuer-<br />
signale<br />
Steuersignale<br />
Befehle<br />
Steuerwerk<br />
exte<br />
Steuer<br />
MRT1 © Urbas
6<br />
Speicher<br />
• Unstrukturiert, d.h.<br />
lineare Abfolge von<br />
Plätzen mit fester<br />
Wortlänge.<br />
• Plätze werden über<br />
Adresse einzeln<br />
angesprochen.<br />
• Befehle <strong>und</strong> Daten im<br />
selben Speicher.<br />
• Bedeutung des Inhalts<br />
einer Speicherstelle ist<br />
kontextabhängig<br />
MRT1 © Urbas
7<br />
von Neumann Zyklus<br />
• Zwei-Phasen-Konzept der Befehlsverarbeitung mit fünf<br />
aufeinanderfolgenden Teilschritten<br />
• Interpretationsphase<br />
� FETCH : Laden des Befehls auf den Befehlszeiger zeigt<br />
aus dem Speicher in das Befehlsregister<br />
� DECODE : Steuerwerk löst Befehl in<br />
Schaltinstruktionen für das Rechenwerk auf<br />
• Ausführungsphase<br />
� FETCH OPERANDS : Laden der Operanden aus dem<br />
Speicher<br />
� EXECUTE : Ausführen der Operation <strong>und</strong> ggf.<br />
Verändern des Befehlszeigers.<br />
� UPDATE INSTRUCTION POINTER : Erhöhen des<br />
Befehlszeigers (parallel zu FETCH/DECODE <strong>und</strong> FETCH<br />
OPERANDS)<br />
MRT1 © Urbas
MRT1 © Urbas<br />
Befehlssatz
9<br />
Unterschiedliche Befehlssätze<br />
• Art <strong>und</strong> Menge der an ALU <strong>und</strong> Speicher<br />
angeb<strong>und</strong>enen Register bedingen<br />
unterschiedliche Befehlssätze:<br />
� Stack-Architektur<br />
� Akkumulator-Architektur<br />
� Allzweckregister-Architekturen<br />
� Register-Register-Maschinen (Load-Store-<br />
Architektur)<br />
� Register-Speicher-Maschinen<br />
� Speicher-Speicher-Maschinen<br />
MRT1 © Urbas
10<br />
Stack-Architektur<br />
• Ergebnisspeicher sind als<br />
Stack (LIFO) realisiert<br />
• Häufig nur Zugriff auf<br />
oberste Speicherstelle des<br />
Stacks (PUSH, POP)<br />
• Beispiel: C � A + B<br />
PUSH A ; Stack � A<br />
PUSH B ; Stack � B<br />
ADD ; die obersten 2<br />
Elemente addieren<br />
POP C ; C � Stack.<br />
• Sehr einfach<br />
• Mathematische Terme<br />
ohne Klammern<br />
MRT1 © Urbas
11<br />
Akkumulator Architektur<br />
• Ein ausgezeichnetes<br />
Register: Akkumulator<br />
• Akku wirkt an allen<br />
Operationen mit,<br />
• LOAD <strong>und</strong> STORE wirken<br />
nur auf Akku (LDA <strong>und</strong><br />
STA).<br />
• Beispiel: C � A + B<br />
LDA A ; AR � A<br />
ADD B ; AR � AR + B<br />
STA C ; C � AR<br />
• Jede Operation braucht<br />
nur eine Adresse � Ein-<br />
Adress-Maschine<br />
• Kompaktes Befehlsformat<br />
MRT1 © Urbas
12<br />
Register-Register-Architektur<br />
• Operationen arbeiten nur<br />
mit Registern<br />
• Zugriff auf Speicher mit<br />
LOAD <strong>und</strong> STORE<br />
• Viele Register (32-512)<br />
• Beispiel: C � A+B<br />
LOAD R1, A ; R1�A<br />
LOAD R2, B ; R2�A<br />
ADD R3, R1, R2 ;<br />
R3 � R1 + R2<br />
STORE C, R3 ; C � R3<br />
• einfache Befehle fester<br />
Länge (RISC)<br />
• alle Instruktionen<br />
brauchen in etwa gleich<br />
lange<br />
MRT1 © Urbas
13<br />
Register-Speicher Architektur<br />
• Operationen greifen auf<br />
Register <strong>und</strong>/oder<br />
Speicher zu<br />
• Beispiel: C � A + B<br />
MOV AX, A ; AX � A<br />
ADD AX, B ;<br />
AX � AX +B<br />
MOV C, AX ; C � AX<br />
• Komplexe Befehle<br />
variabler Länge (CISC)<br />
• stark unterschiedliche<br />
Zeiten für<br />
Instruktionsausführung<br />
MRT1 © Urbas
Entwicklung von <strong>Mikroprozessoren</strong><br />
MRT1 © Urbas
15<br />
1971: Intel 4004<br />
• Erster Mikroprozessor<br />
� 4 bit Akkumulator<br />
Architektur<br />
� 2300 Transistoren in 8<br />
µm<br />
pMOS-Technologie<br />
� 3 x 4 mm²<br />
� 750 kHz<br />
� 8 bis 16 Zyklen /<br />
Instruktion<br />
• 8bit: I8008, i8080<br />
MRT1 © Urbas
16<br />
1977–1980: 16-Bit <strong>Mikroprozessoren</strong><br />
• 1977: Texas Instruments TMS 9900<br />
• 1978: Intel 8086<br />
� 29000 Transistoren, 8 MHz<br />
� Erweiterte Akkumulator-Architektur<br />
� 20 Bit Adressierung durch segmentiertes<br />
Adressierungsschema<br />
• ZilogZ8000<br />
• Motorola MC68000<br />
� 68000 Transitoren, 8 MHz<br />
� Mikroprogrammierung<br />
� 32 Bit Allzweckregister<br />
� 8 Adress-<strong>und</strong> 8 Datenregister<br />
• National SemiconductorNS16016<br />
MRT1 © Urbas
17<br />
1981 IBM PC<br />
• Prototyp 1979<br />
� Ursprünglich: Motorola<br />
68000, aber verzögert<br />
� Stopgap-Prototyp mit<br />
8088 boards<br />
� 8088 ist 8086 mit 8-bit<br />
Datenbus � System<br />
langsamer, aber billiger<br />
• Erwartete Verkaufszahlen:<br />
250 Tausend<br />
• Erreichte Verkaufszahlen<br />
(incl. Nachfolger):<br />
mehrere 100 Millionen<br />
MRT1 © Urbas
18<br />
Mitte 80‘er 32-Bit <strong>Mikroprozessoren</strong><br />
• CISC <strong>Mikroprozessoren</strong>:<br />
� Motorola MC68020 / MC68030 / MC68040 / MC68060<br />
� National SemiconductorNS32032 / NS32332 / NS32532<br />
� Intel i386 / i486 / Pentium (64/32 Bit-Prozessor)<br />
� Familienkonzepte: Kompatibilität innerhalb einer<br />
Prozessorfamilie, auch mit 16-Bit-Vorgängern<br />
• RISC <strong>Mikroprozessoren</strong>:<br />
� AdvancedMicroDevicesAm29000 (~1987)<br />
� Sun MicrosystemsSPARC<br />
� MIPS Technologies MIPS R2000 / MIPS R3000<br />
MRT1 © Urbas
19<br />
Ab etwa 1990: 64/32-Bit Mikro<br />
• ROSS Technologies hyperSPARC<br />
• SUN Microsystems superSPARC<br />
• Motorola 88110<br />
• IBM, Motorola PowerPC601 (MPC601)<br />
• Merkmale der <strong>Mikroprozessoren</strong>:<br />
� 64-Bit Struktur<br />
� interne Parallelarbeit (Befehlspipelining, arithmetisches<br />
Pipelining, nebenläufige Abarbeitung von Maschinenbefehlen)<br />
� Befehls- <strong>und</strong> Datencaches<br />
� Virtuelle Speicherverwaltung<br />
� Speicher- <strong>und</strong> Peripherieanbindung<br />
MRT1 © Urbas
Transitoren / Prozessor<br />
(aus 20 http://www.intel.com/pressroom/kits/events/moores_law_40th/index.htm)<br />
MRT1 © Urbas
MRT1 © Urbas<br />
<strong>Mikrocontroller</strong>
22<br />
Einsatz von Mikrorechnern in<br />
technischen Anwendungen<br />
• Signale aus physikalischer<br />
Umgebung erfassen<br />
• Verarbeiten<br />
• Technischen Prozess mit<br />
Steuerinformation<br />
beeinflussen<br />
• Einsatzbereiche<br />
� Automatisierungstechnik<br />
� Messtechnik<br />
� Kommunikationstechnik<br />
� …<br />
CPU<br />
Speicher<br />
Bussystem<br />
I/O<br />
Technischer<br />
Prozess<br />
MRT1 © Urbas
23<br />
<strong>Mikrocontroller</strong><br />
• Ein-Chip-Computersysteme, mit nahezu sämtliche<br />
Komponenten auf einem Chip<br />
� CPU,<br />
� Programmspeicher (meist auf ROM- oder Flash-Basis),<br />
� Arbeitsspeicher,<br />
� Ein-/Ausgabe-Schnittstellen,<br />
� + spezielle Peripherieblöcke:<br />
� Taktgeneratoren,<br />
� EEPROM-Speicher,<br />
� CAN-, USB-, serielle oder Ethernet-Schnittstellen, …<br />
� LCD-Controller <strong>und</strong> –treiber<br />
� hochauflösende Analog-Digital-Wandler<br />
MRT1 © Urbas
24<br />
Vielfältige Anwendungsbereiche<br />
• Eingebettete Systemen in<br />
technischen<br />
Gebrauchsartikeln<br />
� Waschmaschine,<br />
� Chipkarten (Geld-,<br />
Telefonkarten),<br />
� Unterhaltungselektronik<br />
� Büroelektronik,<br />
� Kraftfahrzeug (ABS,<br />
Airbag,<br />
Motorsteuerung, ESP,<br />
usw.),<br />
� Mobiltelefon<br />
MRT1 © Urbas
25<br />
<strong>Mikrocontroller</strong>-Familie 8051 (8bit)<br />
• Ursprünglich Intel,<br />
inzwischen mehr als 50<br />
Hersteller<br />
• Verkauf > 100 Millionen /<br />
Jahr<br />
• 4K bytes internal ROM<br />
• 128 bytes internal RAM<br />
• Vier 8-bit I/O ports<br />
• Zwei 16 bit Timer<br />
• Serielle Schnittstelle<br />
• 64K external code memory<br />
space<br />
• 64K external data memory<br />
space<br />
• 210 bit-addressable locations<br />
MRT1 © Urbas
26<br />
<strong>Mikrocontroller</strong> SAB80X5x5<br />
• Wie 8051<br />
� Externe Speichererweiterung durch<br />
Port 0 <strong>und</strong> Port 2<br />
� Full-Duplex serielle Schnittstelle<br />
� Timer/Counter 0 <strong>und</strong> 1<br />
� Multifunktioneller Port 3<br />
� gleiche Speicheraufteilung für RAM<br />
(128Byte) <strong>und</strong> ROM (4k)<br />
• SAB80X515<br />
� 128 Byte RAM <strong>und</strong> 4k ROM hinzugefügt<br />
� 16-Bit-Zähler mit Vorteiler,<br />
Vergleichsfunktionen <strong>und</strong> Möglichkeiten<br />
um auf externe Ereignisse zu reagieren<br />
� Capture/Compare Einheit zur<br />
Generierung von Taktsignalen oder<br />
Pulsen<br />
� 16-Bit Watchdog,<br />
� 8-Bit A/D-Wandler (mit<br />
programmierbarer Referenz),<br />
� zusätzliche 8-Bit Boards<br />
� programmierbarer Taktausgang.<br />
� Arithmetikeinheit<br />
MRT1 © Urbas
27<br />
<strong>Mikrocontroller</strong> 80C166<br />
• 16 Bit „8051“ mit RISC-Architektur<br />
• Capture/Compare-Einheit für PWM,<br />
• Taktsignalgenerierung,<br />
• D/A-Wandlung zur Messung von externen<br />
Zeitabläufen<br />
• Interrupts:<br />
� 8 Eingängen für externe Ereignisse<br />
� 16 Prioritätsebenen<br />
� Reaktionszeit 250ns - 600ns garantiert<br />
• 2 serielle Full-Duplex Schnittstellen mit eigenen<br />
Baudrategeneratoren<br />
• 76 digitale I/O Ports<br />
• 10 Kanal 10 Bit A/D-Wandler mit ca. 10m s<br />
Wandelzeit<br />
• 16 Kanal Pulsweitenmodulator<br />
• 2*16-Bit Timer/Counter Einheiten (400/200ns<br />
Auflösung)<br />
• serielle Schnittstellen mit Baudrategeneratoren<br />
• spezielle Derivate C161 für CAN / Profibus<br />
Applikationen<br />
MRT1 © Urbas
MRT1 © Urbas<br />
Alternativen zu <strong>Mikrocontroller</strong>n
29<br />
Strukturierte Logikschaltungen<br />
(aus Fuchs 2002)<br />
MRT1 © Urbas
30<br />
ASIC<br />
• ASIC (Application Specific<br />
Integrated Circuits)<br />
� Entwurf nach<br />
K<strong>und</strong>enwünschen<br />
� Feste Verarbeitungsfunktionalität<br />
� Hohe Verarbeitungsgeschwindigkeit<br />
• 10-100 Mio Gatter technisch<br />
möglich<br />
• Hohe Entwicklungskosten<br />
• Erste Ansätze zu<br />
„konfigurierbaren“ Systemen<br />
� Memory<br />
� Intgrated DSP<br />
(aus Bauer 2002)<br />
MRT1 © Urbas
31<br />
Programmierbare Logikbausteine<br />
• FPGA: Field Programmable<br />
Gate Array<br />
� Enthält fertige<br />
Standardfunktionen<br />
� Einmalige<br />
Programmierung durch<br />
Herstellung von<br />
Verbindungen<br />
� Flexibler als ASICS<br />
� Langsamer <strong>und</strong><br />
höherer<br />
Energieverbrauch<br />
MRT1 © Urbas
32<br />
Digitaler Signal Prozessor<br />
• mehrere Daten- <strong>und</strong><br />
Adressbusse<br />
• � Durchführung mehrere<br />
Rechenoperationen in einem<br />
Takt<br />
� Digitale Filter<br />
� Signalverarbeitung<br />
� Datenverarbeitung<br />
� Numerik<br />
� Modulation<br />
� Spektralanalyse<br />
• Mikroprozessor benötigt ca. 5<br />
– 10 fache Taktfrequenz um<br />
FFT gleich schnell berechnen<br />
zu können<br />
(MAC Einheit aus Ottmar & Plettl 2003)<br />
MRT1 © Urbas
33<br />
Erste Zusammenfassung<br />
• <strong>Mikroprozessoren</strong><br />
� 1971: Intel 4004, 2003 Transistoren, 4bit<br />
� 2004: Intel Itanium 2, 592 Mio Transistoren, 64bit<br />
� CISC�RISC, Parallelisierung, SISD + SIMD<br />
• <strong>Mikrocontroller</strong>: System on a Chip<br />
� Integrierte Peripherie<br />
� Neue Kommunikationsschnittstellen<br />
• Leistungssteigerung durch Spezialisierung <strong>und</strong><br />
Parallelisierung<br />
� ASICs, FGPAs, DSPs<br />
MRT1 © Urbas
34<br />
Kriterien für Prozessorauswahl<br />
• Angepasste Verarbeitungsbreite (1,8,16,32,…)<br />
• Adressierbarer Speicher<br />
• Speichermedien (ROM, PROM, EPROM, …)<br />
• Interne Zeitbasis für Echtzeitanwendung<br />
• Interruptbehandlung<br />
• Angepasste Verarbeitungsgeschwindigkeit<br />
• Gleitkommaunterstützung<br />
• Leistungsaufnahme<br />
• Temperaturbereich<br />
• Ein/Ausgabemöglichkeiten AE,AA,BE,BA,Impulse<br />
• Lieferbarkeit, Preis, Rabatt<br />
• Programmiersystem (Sprache, Libs, EZ-Kern, IBS)<br />
MRT1 © Urbas
MRT1 © Urbas<br />
Modellprozessor<br />
Intel 80x86
36<br />
8086 im real mode als Modellprozessor für<br />
die <strong>Mikrorechentechnik</strong><br />
• Kosten: Allgemeine<br />
Verfügbarkeit von x86-<br />
Prozessoren <strong>und</strong><br />
Emulatoren für mac, ppc,<br />
linux � Geringe Kosten<br />
• Dokumentation:<br />
Vielfältige Literatur, gute<br />
Softwareunterstützung<br />
• Angemessenheit:<br />
Gr<strong>und</strong>prinzipien sind<br />
übertragbar,<br />
• Einsatz in eingebetteten<br />
Systemen als<br />
<strong>Mikrocontroller</strong> 80C186<br />
(Integrierter Interruptcontroller, Timer, DMA)<br />
MRT1 © Urbas
37<br />
10 M<br />
1M<br />
100K<br />
10K<br />
Prozessorfamilie i80x86<br />
• Alle 2 Jahre ein neuer Prozessor<br />
• 1978: 8086 16 Bit Prozessor<br />
4004<br />
1975 1980 1985 1990 1995 2000<br />
Pentium III<br />
8080<br />
8086<br />
80286<br />
80486<br />
80386<br />
Pentium<br />
Pentium II<br />
MRT1 © Urbas
38<br />
8086 Prozessor<br />
• c‘t 13/2003 „Vieles hat sich in den letzten<br />
Jahren in der Computerszene verändert. Das<br />
Diskettenlaufwerk ist längst passé, der DVD-<br />
Brenner gehört mittlerweile zum Standard. MS-<br />
DOS ist in einer winzigen Nische von Windows<br />
XP verschw<strong>und</strong>en, <strong>und</strong> statt PacMan spielt man<br />
heute Egoshooter in 3D. Nur die x86er-<br />
Prozessor-Architektur steckt noch in jedem PC.<br />
Dabei war der 8086-Prozessor damals gar nicht<br />
revolutionär, sondern nur eine logische<br />
Fortentwicklung bestehender 8-Bit-Systeme.<br />
Durchgesetzt hat er sich einige Jahre später vor<br />
allem, weil IBM den ersten Personal Computer<br />
mit einem 8088-Prozessor ausstattete […]“<br />
MRT1 © Urbas
39<br />
Blockschaltbild 8086 CPU<br />
• Execution Unit (EU)<br />
� Befehlskodierung<br />
� Ausführung<br />
• Bus Interface Unit (BIU)<br />
� Befehls<strong>und</strong><br />
Daten<br />
Handling<br />
(aus Vierhaus & Galke 2000)<br />
MRT1 © Urbas
40<br />
i8086 Execution Unit<br />
• Arithmetische logische Einheit<br />
(ALU)<br />
• Temporäre Register<br />
• Steuereinheit<br />
• Statusregister (Flags)<br />
• 4 Mehrzweckregister<br />
� AX – Akkumulator<br />
� BX – Basisregister<br />
� CX – Count Register<br />
� DX – Datenregister<br />
• Spezialregister<br />
� SP – Stackpointer<br />
� BP – Basepointer<br />
� SI – Source Index<br />
� DI – Destination Index<br />
MRT1 © Urbas
41<br />
i8086 Bus Interface Unit<br />
• Addressaddierwerk mit 20<br />
Bit Addressbreite<br />
• Befehlswarteschlange<br />
• Register<br />
� CS – Code Segment<br />
� DS – Data Segment<br />
� SS – Stack Segment<br />
� ES – Extra Segment<br />
� IP – Instruction Pointer<br />
MRT1 © Urbas
42<br />
i8086 Addressaddierwerk<br />
• Addition von 2 16-bit Addressen<br />
(aus Vierhaus & Galke 2000)<br />
MRT1 © Urbas
43<br />
Zusammenspiel der Register<br />
• Universelle Register<br />
� AX hat bevorzugte Funktion. Einige<br />
arithmetische Operationen, z. B. die<br />
Multiplikation <strong>und</strong> die Division, sind nur<br />
über den Akku durchführbar.<br />
� BX wird als Basisregister für indirekte<br />
Adressierung benutzt.<br />
� CX ist das Zählerregister für Schleifen<br />
<strong>und</strong> Wiederholungsoperationen.<br />
� DX wird zur Multiplikation <strong>und</strong> Division<br />
von 16-Bit-Worten verwendet. Bei<br />
indirekten I/O-Befehlen enthält dieses<br />
Register die Kanalnummer.<br />
• segmentierte Speicherverwaltung "special<br />
purpose„ Register.<br />
� CS Code-Segment-Register, IP Offset<br />
für Befehle<br />
� DS Daten-Segment-Register, BX <strong>und</strong><br />
Indexregister SI, DI Offset für Daten<br />
• Stack<br />
� SS - Stack-Segment-Register enthält<br />
die Segmentbasisadresse, Offset in<br />
Stapelzeiger SP oder Basiszeiger BP.<br />
• Extra<br />
� ES Extrasegment für String-<br />
Operationen, Offsetadresse im<br />
Zielindexregister DI.<br />
(aus Vierhaus & Galke 2000)<br />
MRT1 © Urbas
44<br />
286<br />
• Aufwärtskompatible<br />
Weiterentwicklung<br />
� 16 Bit Datenbus<br />
� 24 Bit Addressbus<br />
� Vier nebenläufig<br />
arbeitende<br />
Einheiten:<br />
AU, EU, BU, IU<br />
(aus Vierhaus & Galke 2000)<br />
MRT1 © Urbas
45<br />
386 Pentium<br />
• Pipeline aus 6<br />
Einheiten<br />
• 34 Register mit 32bit<br />
• Superskalare Architektur<br />
• Füllen der Pipeline<br />
MRT1 © Urbas
46<br />
Zusammenfassung<br />
• I80x86 aufwärtskompatible Prozessorfamilie<br />
trotz drastischer Änderungen in der Architektur<br />
� 16bit � 32bit � 64bit<br />
� EU/BIU � Superskalare Architektur<br />
� CISC � RISC + Microcode<br />
• Aufwärtskompatibel: Maschinennahes Programm<br />
läuft auf allen Familien<br />
MRT1 © Urbas
47<br />
Zusammenfassung<br />
• von Neumann Architektur<br />
� 3-6 Komponenten: CPU (Steuer- <strong>und</strong> Rechenwerk), Speicher, Ein-<br />
/Ausgabe, Bussystem<br />
� Serielle Verarbeitung<br />
� Daten <strong>und</strong> Befehle in einem Speicher (� Harvard)<br />
� Unterschiedliche Befehlssätze (Stack-, Akku-, Register-Register, Register-<br />
Speicher-Architektur)<br />
� Mikroprozessor: CPU (incl. Cache, Co-Proz.,…), Beispiel 80x86-Familie<br />
� <strong>Mikrocontroller</strong>: Komplettsystem auf einem Chip, Beispiel 8051-Familie<br />
• Schnellere Alternativen für spezielle Problemstellungen<br />
� Logikschaltung (ASIC, FPGA) - Parallelverarbeitung<br />
� Digitaler Signal Prozessor – Single Instruction / Multiple Data<br />
• Intelfamilie - 8086, 286, 386, Pentium<br />
� CPU-Komponenten: Execution Unit, Bus Interface Unit<br />
� Registersatz mit Akkumulator <strong>und</strong> Zusatzregistern<br />
� Adressaddierwerk zur Adressierung von 1 MByte mit 16 bit-CPU<br />
MRT1 © Urbas
48<br />
Weiterführende Literatur<br />
• WWW:<br />
� von Neumann, J. (1945) First Draft of a Report on the<br />
EDVAC<br />
http://www.virtualtravelog.net/entries/2003-08-<br />
TheFirstDraft.pdf<br />
� Vierhaus (2000) Prozessor-Architektur. Kapitel 5 -<br />
<strong>Mikroprozessoren</strong> für PCs: die X86-Familie.<br />
http://www.informatik.tucottbus.de/~fsi/alt/skripte/proz_WS99/proz-5.pdf<br />
• Bücher:<br />
� Giloi, W. (1993) Rechnerarchitektur, 2.Auflage. Berlin:<br />
Springer<br />
� Flik, T. (2001) Mikroprozessortechnik, 6. Auflage. Berlin<br />
Springer<br />
MRT1 © Urbas