Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

2.5. Mikrocontroller-Komponenten

Ähnliche Präsentationen


Präsentation zum Thema: "2.5. Mikrocontroller-Komponenten"—  Präsentation transkript:

1 2.5. Mikrocontroller-Komponenten
2.5.1 Prozessorkerne Einfache RISC- oder CISC Prozessorkerne Benötigen wenig Fläche Verhalten und Eigenschaften sind wohl bekannt Im Low-Cost-Bereich oft einfache 8-Bit-Kerne ohne Pipeline => einfacher Aufbau => sehr einfache zeitliche Vorhersagbarkeit

2 2.5. Mikrocontroller-Komponenten
Beispiel:

3 2.5. Mikrocontroller-Komponenten
Je komplexer ein Prozessorkern, desto schwerer wird die Vorhersage des Zeitverhaltens Pipeline => Pipeline-Konflikte Cache => Cache Misses Spekulation => Fehlspekulation In Echtzeitsystemen interessiert die Worst Case Execution Time (WCET) Aufwändige Analysen sind erforderlich (und nicht immer möglich)

4 2.5. Mikrocontroller-Komponenten
Befehlsverarbeitung in einer Pipeline: Beispiel fünfstufige Pipeline Takt 1 Takt 2 Takt 3 Takt 4 Takt 5 Takt 6 Takt 7 ... Befehl holen Befehl dekodieren Operanden holen Befehl ausführen Ergebnis speichern Befehl 1 Befehl holen Befehl dekodieren Operanden holen Befehl ausführen Ergebnis speichern Befehl 2 Befehl holen Befehl dekodieren Operanden holen Befehl ausführen Ergebnis speichern Befehl 3 . . .

5 2.5. Mikrocontroller-Komponenten
Beispiel superskalare Pipeline bei High-End-Prozessorkernen Operanden holen Befehl ausführen Befehl holen Befehl dekodieren Ergebnis speichern Befehlsfenster Zuordnungseinheit Rückordnungseinheit Operanden holen Befehl ausführen

6 2.5. Mikrocontroller-Komponenten
Speicherhierarchie bei High-End- Prozessorkernen Prozessor- kern Register 2 kByte 0,5 - 0,1 ns First - Level- Cache kByte < 1 ns Daten Code Secondary- Level-Cache 0, Mbyte ns Third - Level - Cache Mbyte ns > 1GByte 50 ns Hauptspeicher virtuelle Speicherverwaltung Festplatte GByte ms

7 2.5. Mikrocontroller-Komponenten
Sprungspekulation: Beispiel Ein-Bit- und Zwei-Bit-Prädiktor taken predict taken (0) predict not taken (1) not taken taken not taken a) Ein–Bit-Prädiktor taken taken taken predict strongly taken (00) predict weakly taken (01) predict weakly not taken (10) predict strongly not taken (11) not taken not taken not taken taken not taken b) Zwei–Bit-Prädiktor

8 2.5. Mikrocontroller-Komponenten
Resultierende Echtzeitproblematik bei High-End- Prozessorkernen mit diesen Techniken Best- und Worst-Case Ausführungszeiten verschiedener Mikroarchitekturen Programm Benötigte Anzahl Taktzyklen Keine Pipeline Einfache Pipeline Pipeline, Spekulation Pipeline, Cache, Spekulation Best=Worst Best=Worst Best Worst Best Worst LD A,(2000) 5 1+4 1+4 1+4 1 1+4 INC B 3 1 1 1 1 1 SUB A,B 3 1+1 1+1 1+1 1+1 1+1 JZ 10000 4 1+3 1 7 1 7 Gesamt 15 12 9 15 5 15

9 2.5. Mikrocontroller-Komponenten
Zur Einsparung von Speicher bei einfachen Mikrocontrollern: Verkürzte Adressierung zur Verkürzung der Befehle

10 2.5. Mikrocontroller-Komponenten
Zusätzlich: • kurze Befehlscodes für die am häufigsten benutzten Befehle • längere Befehlscodes für seltene Befehle Besonders bei einfachen Mikrocontrollern ist Speicher meist eine knappe Ressource und muss optimal genutzt werden Der Prozessorkern kann dies durch die genannten Maßnahmen unterstützen

11 2.5. Mikrocontroller-Komponenten
2.5.2 Ein-/Ausgabeeinheiten Bindeglied des Mikrocontrollers zur Umwelt analog/digital seriell/parallel Übertragungsraten Übertragungsformate Übertragungsaufwand ...

12 2.5. Mikrocontroller-Komponenten
Anbindung an den Prozessorkern

13 2.5. Mikrocontroller-Komponenten
Vorteile „isolierte Adressierung“: klare Trennung von Speicher- und Ein-/Ausgabezugriffen Speicheradressraum wird nicht durch EA-Einheiten reduziert schmälere Ein-/Ausgabeadressen Vorteile „gemeinsame Adressierung“: Homogenität keine speziellen Befehle zur Ein-/Ausgabe erforderlich Alle Speicher-Adressierungsarten können auch zur Ein-/Ausgabe benutzt werden

14 2.5. Mikrocontroller-Komponenten
Adressraumbedarf unterschiedlich komplexer EA-Einheiten

15 2.5. Mikrocontroller-Komponenten
Physikalische Anbindung durch Adressdecoder

16 2.5. Mikrocontroller-Komponenten
Zur Anpassung unterschiedlicher Datenübertragungsraten von Prozessorkern und EA-Einheiten : Synchronisation Von Seiten der EA-Einheit: Software-Synchronisation Hardware-Synchronisation

17 2.5. Mikrocontroller-Komponenten
Software-Synchronisation: Beispiel XON/XOFF

18 2.5. Mikrocontroller-Komponenten
Hardware-Synchronisation: Beispiel RTS/CTS

19 2.5. Mikrocontroller-Komponenten
Von Seiten des Prozessorkerns: Auswertung mit Polling oder Interrupt

20 2.5. Mikrocontroller-Komponenten
Digitale parallele Ein-/Ausgabeeinheiten (parallele IO-Ports) Charakteristika: Anzahl parallel übertragener Bits (meist Zweierpotenz) Ein-/Ausgaberichtung Übertragungsgeschwindigkeit Der meist hohen Übertragungsgeschwindigkeit steht ein großer Bedarf an Anschlüssen gegenüber => meist teilen sich die parallelen EA-Einheiten eines Mikrocontrollers die Anschlüsse mit anderen Komponenten

21 2.5. Mikrocontroller-Komponenten
Einfache parallele Eingabeeinheit:

22 2.5. Mikrocontroller-Komponenten
Einfache parallele Ausgabeeinheit:

23 2.5. Mikrocontroller-Komponenten
Einfache bidirektionale Einheit:

24 2.5. Mikrocontroller-Komponenten
Digitale serielle Ein-/Ausgabeeinheiten (serielle IO-Ports) Grundprinzip:

25 2.5. Mikrocontroller-Komponenten
Wichtige Begriffe: Schrittgeschwindigkeit (Schritttakt) Anzahl übertragener Informationen / Sekunde (Baud, Baudrate) Übertragungsgeschwindigkeit Anzahl übertragener Bits / Sekunde Übertragungsgeschw. = Schrittgeschw. * Übertragungsbreite oder allgemeiner: Übertragungsgeschw. = Schrittgeschw. * ld(Anzahl Übertragungszustände) Bei bitserieller Übertragung: Schrittgeschwindigkeit = Übertragungsgeschwindigkeit

26 2.5. Mikrocontroller-Komponenten
Asynchrone Übertragung Nach jedem übertragenen Zeichen wird synchronisiert

27 2.5. Mikrocontroller-Komponenten
=> Zeichensynchronisation keine hohen Anforderungen an die Taktgenauigkeit Sende und Empfangstakt dürfen sich um maximal 1/2 Tarktperiode pro Zeichen verschieben durch häufige Synchronisation geringe Datenraten Vereinbarung zwischen Sender und Empfänger: Schrittgeschwindigkeit (z.B. 4800, 9600, 19200, ... Baud) Anzahl der Datenbits pro Zeichen (5 – 8) Parität (gerade oder ungerade) Anzahl der Stoppbits (üblicherweise 1, 1,5 oder 2)

28 2.5. Mikrocontroller-Komponenten
Synchrone Übertragung Rahmensynchronisation Höhere Übertragungsgeschwindigkeit, höhere Anforderungen an den Takt

29 2.5. Mikrocontroller-Komponenten
Komponentenaufbau

30 2.5. Mikrocontroller-Komponenten
Verbindungstechniken Serielle Punkt-zu-Punkt-Verbindung (Peer to Peer)

31 2.5. Mikrocontroller-Komponenten
Verbindungsbusse Beispiel: SPI (Serial Peripheral Interface, Motorola) Andere serielle Busse: RS485, USB, ...

32 2.5. Mikrocontroller-Komponenten
Serielle Datencodierungen

33 2.5. Mikrocontroller-Komponenten
NRZ (Non Return to Zero) Einfach, leichter Verlust der Taktsynchronität bei aufeinanderfolgenden Einsen oder Nullen => wird hauptsächlich bei asynchroner Übertragung genutzt FM (Frequency Modulation) Takterhaltende Codierung, Voranstellen eines Taktbits Daten FM T D T D T D T D T D T D T D T D

34 2.5. Mikrocontroller-Komponenten
MFM (Modified Frequency Modulation) Halbiert den Aufwand von FM durch bedingtes Voranstellen eines Taktbits. Taktbit nur, wenn aktuelles und voriges Datenbit beide nicht 1 Daten MFM T D T D T D T D T D T D T D T D

35 2.5. Mikrocontroller-Komponenten
Manchester Biphase Wird z.B. bei Ethernet benutzt Signalpegel wechselt grundsätzlich bei jeder Taktflanke Stimmt der resultierende Wert nicht mit dem Bitwert überein: => zweiter Wechsel Daten Manch.

36 2.5. Mikrocontroller-Komponenten
Analoge Ein-/Ausgabeeinheiten zur Verarbeitung durch den Prozessorkern müssen analoge in digitale Signale gewandelt werden

37 2.5. Mikrocontroller-Komponenten
Wandlungsfunktion: bei n Bit Auflösung => Aufteilung in 2n Schritte ULSB = (Umax – Umin) / 2n Digital/Analog-Wandlung U = (Z  ULSB) + Umin Analog/Digital-Wandlung Z = (U – Umin) / ULSB

38 2.5. Mikrocontroller-Komponenten
Beispiel: Umax = 5 V, Umin = 0 V, 12-Bit-Wandlung => ULSB = 1,221 mV Wichtigste Kriterien für die Auswahl eines Wandlers Auflösung (n Bit) Spannungsbereich (Umin - Umax) Wandlungszeit Wandlungsfehler

39 2.5. Mikrocontroller-Komponenten
Digital/Analog-Wandlung R/2R-Widerstandsnetzwerk

40 2.5. Mikrocontroller-Komponenten
Funktion des Wandlers: Ik = z3 (Uref / 2R) + z2 (Uref / 4R) + z1 (Uref / 8R) + z0 (Uref / 16R) Für den Operationsverstärker gilt näherungsweise: U = -R  Ik Daraus folgt: U = - (z3 (Uref / 2) + z2 (Uref / 4) + z1 (Uref / 8) + z0 (Uref / 16)) = - (z z z121 + z020) Uref / 24 = - Z  Uref / 24 oder für n Bit: U = - Z  Uref / 2n

41 2.5. Mikrocontroller-Komponenten
Statische Wandlungsfehler:

42 2.5. Mikrocontroller-Komponenten
Nullpunktfehler durch Addition einer Konstanten (auf analoger oder digitaler Seite) behebbar Vollausschlagfehler durch Multiplikation mit einer Konstanten behebbar Nichtlinearität ist nicht korrigierbar und reduziert die verfügbare Auflösung Besonders schwerwiegend: Monotoniefehler Ausgabe eines niedrigeren Wertes trotz Erhöhung des Eingangswertes Entsteht z.B. im R/2R Netzwerk, wenn durch Widerstandstoleranzen: Ik(0111) > Ik(1000)

43 2.5. Mikrocontroller-Komponenten
Dynamische Fehler: Glitches durch Wettläufe im Umschaltzeitpunkt, z.B. bei 0111   1000 Abhilfe: Abtast-/Halteglied (Sample and Hold)

44 2.5. Mikrocontroller-Komponenten
Analog/Digital-Wandlung Prinzipielle Wandlungsverfahren: Parallelverfahren sehr schnell, hoher HW-Aufwand Wägeverfahren mittel schnell, mittlerer HW-Aufwand Zählverfahren (Dual Slope) langsam, geringer HW-Aufwand, störunempfindlich

45 2.5. Mikrocontroller-Komponenten
Beispiel: das Wägeverfahren wandelt n Bits in n Schritten

46 2.5. Mikrocontroller-Komponenten
Ablauf: sukzessive Aproximation Wandlerfunktion: Z =  2n  U / Uref  =  U / ULSB 

47 2.5. Mikrocontroller-Komponenten
Statische Fehler: Quantisierungsrauschen systematischer Fehler, bedingt durch die begrenzte Auflösung => Abweichung des treppenförmigen vom tatsächlichen stufenlosen Analogsignal

48 2.5. Mikrocontroller-Komponenten
Durch die Gleichverteilung des Eingangssignals gehorcht die Abweichung statistischen Gesetzen => Rauschen Rauschamplitude: Faustformel für das Signal/Rauschverhältnis in Dezibel: SR  1.8 dB + n  6 dB Beispiele: Bit Auflösung  49.8dB 12 Bit Auflösung  73.8dB 16 Bit Auflösung  97.8dB

49 2.5. Mikrocontroller-Komponenten
Dynamische Fehler Amplitudenänderung des Eingangssignals über die Wandlungszeit besonders kritisch beim Wägeverfahren, da hier die empfindlichen niederwertigen Bits zuletzt gewandelt werden Eine Schwankung um mehr als 1/2 ULSB macht bereits das niederwertigste Bit unbrauchbar Abhilfe: Abtast-/Halteglied Takt-Jitter (Aperturfehler) Schwankung der Taktrate bei periodischer Abtastung analoger Signalverläufe


Herunterladen ppt "2.5. Mikrocontroller-Komponenten"

Ähnliche Präsentationen


Google-Anzeigen