Einchipmikrorechner & digitale Signalprozessoren

Gemeinsamkeiten

  • Einchipkonzept
  • autonome Arbeitsweise
  • geringe Außenbeschaltung
  • große Vielfalt
  • Stromsparmaßnahmen
  • breites Softwareangebot
  • Realtime OS
  • Cross-Werkzeuge (Werkzeug läuft auf anderer Platform als die eigentliche Zielsoftware)

Unterschiede

µC DSP
geringere Leistung höhere Leistung
4, 8, 16, 32 Bit 16, 32, 64 Bit
weniger Speicher mehr Speicher
dieser bevorzugt intern intern, häufig auch extern
Bitbefehle MAC-Befehle (multiply & accumulate)
begrenzende Arithmetik

begrenzende Arithmetik

mit ohne
F0h F0h
+22h +22h
(1)12h FFh

typische Einsatzfäle

(grafik)

typische Baugruppen auf dem Chip

Rechnerkern

  • RISC oder CISC
  • Register (mitunter verknüpft mit dem internen RAM)
  • viele Spezialregister
  • Harvard oder von Neumann

Speicher

  • Intern
    • ROM
    • RAM
  • interface für externen Speicher
    • Bus-interface
    • “glueless” interface
    • seriell

ROM-Varianten

Peripherie

digital

  • parallel
  • seriell
    • synchron
    • asynchron

analog

  • Eingang
    • A/D Wandler
  • Ausgang
    • D/A Wandler
    • PWM

speziell

  • Zähler
    • Zähler
    • Zeitgeber
    • RTC
    • CapCom
  • Kommunikation
    • LAN
    • CAN
    • I²C
    • USB
    • IRDA
  • Geräte
    • LCD
    • Schrittmotoren
  • Sonstiges
    • Taktgeber
    • Reset
    • Powermangement
    • Interrupt-System
    • DMA
    • Watchdog

Speichermodell

  • Speicherkonfiguration
    • unsegmentiert (64 kiByte)
    • segmentiert (max 16 MiByte (nur bei externem Speicher))
  • Strukturierung
    • festgelegte Addressen
      • interner ROM
      • interner RAM
      • Spezialfunktions-Register (wie Speicher angesprochen)
      • allgemeine Register
      • reservierte Bereiche
    • externer Speicher
    • externe IO (memmory mapped IO)

nichtsegmentierter Modus

  • lineare Addresse (flaches Modell) 16 Bit
Addressoperand -> physische Addresse
  +--------+        +--------+
  | 16 Bit |   ->   | 16 Bit |
  +--------+        +--------+

segmentierter Modus

Addressoperand: 16 Bit phyische Address: 24 Bit Zusatzinformation steckt in einem Spezialfunktions-Register Datenzugriff: (graphik)

Codezugriff: (Graphik)

Mapping der allgemeinen Register in den internen RAM allgemeine Register R0 - R15 je 16 Bit

:wiki:study:emr:internerrom.jpg

Kontextwechsel:

  • Austausch sämtlicher Registerinhalte
  • benötigt bei Interruptbearbeitung
  • auch mögliche Überlappung zwecks Parameterübergabe

Details zur internen Preripherie

  • typisch konfigurierbare Pins

Paralelle digitale E/A

  • max 9 Ports (P0 bis P8) 8 und 16 Bit breit
  • SFR für Parallelports
  • P0, P1 ...Datenregister
  • DP0, DP1 ... Richtung (auch bitweise) (0 - Eingang, 1 - Ausgang)

Bsp Tastatur und LEDs

Timer-Baugruppe

  • GPT1: T2, T3, T4
  • GPT2: T5, T6

Blockschaltbild:

:wiki:study:emr:timer_block.jpg

Speicheroperanden

  • 1 Wort 4 Byte

Idirekte Addressierung:

STW A1, *A10

Offsetaddressierung:

STW A1, *+A10(1)

:wiki:study:emr:speicheroperanden.jpg

STB A1, *+A10(1)
STB A1, *-A10(2)
STB A1, *+A10(A11)

Register A10 wird nicht verändert

STB A1, *++A10(2)
STB A1, *A10++(2)
STB A1, *--A10(2)
STB A1, *A10--(5)

Register A10 wird verändert! Präincrement, Postincrement bzw ~decrement

Prädikatierte Ausführung

Klassisch:

CMP
JMP <cond> -> C=5 ->
C=1
JMP ->
 
wiki/study/emr.txt · Last modified: 2006/09/12 21:38 by ello
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki