Einchipmikrorechner und Signalprozessoren
Einleitung
Einordnung
- Einchipmikrorechner (EMR, µC)
- Digitaler Signalprozessor (DSP)
Gemeinsamkeiten
- Einchip-Konzept: wesentliche Bauteile alle auf einem Chip (CPU, Speicher, IO, Taktgeber)
- minimierte (minimale) Außenbeschaltung: Abblockkondensator, Quarz
- autonomer Betrieb: Unbeaufsichtigter Betrieb, ohne (nur mit applikationsspezifischem) Bedienereingriff
- aufgabenspezifisch angepasst: "Nur soviel (Hardware) wie nötig"
- große Typenfamilien: viele Typen mit jeweils mehreren Ausführungen, Unterschiede in Speicher/Pins
- Crosswerkzeuge: Entwicklung auf PC, aber Code für Chips
- Software: muss sich nicht mehr verändern (ist in sich geschlossen)
Unterschiede
EMP | DSP | |
Leistung | niedrig bis mittel | mittel bis hoch |
Datenbreite | 4, 8, 16, 32 | 16, 32, 64 |
Speichergröße | ||
* intern | sehr wenig bis mittel | meist nur mittel |
* extern | wenig bis mittel | groß bis sehr groß |
Besondere Befehle | Bit-Befehle, Bit-Adressierung |
MAC (Multiplikation und Addition in einem Befehl), zirkuläre Adressierung, Saturation (Festkomma-Arithmetik) |
Typische Anwendungen | Steuergeräte in Industrie und Kraftfahrzeugtechnik, Haushaltselektronik, tragbare Geräte (MP3, Handy) |
digitale Filter/Regler, Bildverarbeitung und Mustererkennung, Messgeräte, Messtechnik, Audioeffektgeräte, Modems |
Rechnerkern
- RISC oder CISC
- Harvard oder von Neumann
- viele Spezialregister (SFR)
- allg. Register häufig verbunden mit int. RAM
Speicher
<graphviz> digraph G { "Speicher" -> "intern"; "Speicher" -> "Speicherinterface";
"intern" -> "ROM"; "intern" -> "RAM";
"Speicherinterface" -> "Seriell"; "Speicherinterface" -> "Businterface"; "Speicherinterface" -> "\"glueless\"\n(Treiberlos)"; } </graphviz>
ROM
- Masken-ROM
- PROM/OTR
- EPROM
- EEPROM
- FLASH-EEPROM
- FRAM
- "Bontout"
- "ROM-less"
Ein- und Ausgabe
<graphviz> digraph G { "Ein- und Ausgabe" -> "digitale, Standart"; "Ein- und Ausgabe" -> "analog"; "Ein- und Ausgabe" -> "speziell";
"digitale, Standart" -> "parallel"; "digitale, Standart" -> "seriell";
"seriell" -> "synchron"; "seriell" -> "asynchron";
node [shape=box]; "Kommunikation"; "Zähler/Zeitgeber"; "Geräte";
"speziell" -> "Kommunikation"; "speziell" -> "Zähler/Zeitgeber"; "speziell" -> "Geräte";
} </graphviz>
Sonstiges
- Reset
- Takt
- Power-Management
- Interruptsystem
- DMA
- Watchdog
Typenbeispiele
(nicht prüfungsrelevant)
Mikrocontroller am Beispiel der C166 Familie
- 16bit Datenbreite
- CISC
- Intelähnlicher Befehlssatz
- von Neuman-Architektur
- bis 30 Mhz Taktfrequenz
- Addresbreite 16bit/24/bit
- Mehrfachnutzung von Pins
Befehlssatz - Architektur
Allgemeiner Registersatz
- 16 16bit Register R0-R15
- unter 8 16bit Rgister R0-R7 lassen sich auch über H und L ansprechen
Spezialfunktionsregister (SFR)
- es existieren sehr viele Register
u.a. in:
- Prozessorkern
- Perepherieinheoten
- Interruptsystem
- Chipsteuerung
- Adresseinheit
- ...
SFR im Prozessorkern
- PSW (Prozessor Status Word, "Flag-Register"); 16bit breit
- Beispiele für Falgs:
- Statusflags:
- C: Carry (Übertrag)
- V: Overflow (Überlauf)
- Z: Zero
- N: Negativ
- ...
- Steuerflags:
- IEN: Interrupt Enable
- USRO: frei verfügbar
- SP (Stackpointer)
- STKUV (Stackunderflow)
- STKOV (Stackoverflow)
- SYSCON: Systemkonfiguration
- ...