Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 1 2.5. Mikrocontroller-Komponenten 2.5.1 Prozessorkerne.

Ähnliche Präsentationen


Präsentation zum Thema: "Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 1 2.5. Mikrocontroller-Komponenten 2.5.1 Prozessorkerne."—  Präsentation transkript:

1 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 2 2.5. Mikrocontroller-Komponenten Beispiel:

3 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 4 2.5. Mikrocontroller-Komponenten Befehl holen Befehl dekodieren Operanden holen Befehl ausführen Ergebnis speichern Takt 2Takt 1Takt 3Takt 4Takt 5Takt 6 Befehl holen Befehl dekodieren Operanden holen Befehl ausführen Ergebnis speichern Befehl holen Befehl dekodieren Operanden holen Befehl ausführen Ergebnis speichern Takt 7... Befehl 3 Befehl 2 Befehl 1... Befehlsverarbeitung in einer Pipeline: Beispiel fünfstufige Pipeline

5 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 5 2.5. Mikrocontroller-Komponenten Befehl holen Befehl dekodieren Befehlsfenster Zuordnungseinheit Operanden holen Operanden holen Befehl ausführen Befehl ausführen Rückordnungseinheit Ergebnis speichern Beispiel superskalare Pipeline bei High-End-Prozessorkernen

6 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 6 2.5. Mikrocontroller-Komponenten Prozessor- kern > 1GByte 50 ns 10 - 100 Mbyte 20 - 30 ns Daten Code 0,25 - 1 Mbyte 2 - 10 ns 8 - 64 kByte < 1 ns Register Hauptspeicher Third - Level - Cache Secondary- Level-Cache 50 - 500 GByte 10 - 20 ms virtuelle Speicherverwaltung 2 kByte 0,5 - 0,1 ns First - Level- Cache Festplatte Speicherhierarchie bei High-End- Prozessorkernen

7 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 7 2.5. Mikrocontroller-Komponenten predict taken (0) predict not taken (1) taken not taken predict strongly taken (00) taken not taken predict weakly taken (01) predict strongly not taken (11) not taken predict weakly not taken (10) not taken taken a) Ein–Bit-Prädiktor b) Zwei–Bit-Prädiktor Sprungspekulation: Beispiel Ein-Bit- und Zwei-Bit-Prädiktor

8 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 8 LD A,(2000) INC B SUB A,B JZ 10000 Gesamt 5 3 3 4 15 Best=Worst Keine Pipeline Benötigte Anzahl Taktzyklen Programm 2.5. Mikrocontroller-Komponenten Best- und Worst-Case Ausführungszeiten verschiedener Mikroarchitekturen 1+4 1 1+1 1+3 12 1 1 1+1 1 5 Best 1+4 1 1+1 7 15 Worst 1+4 1 1+1 1 9 Best 1+4 1 1+1 7 15 WorstBest=Worst Pipeline, Cache, Spekulation Pipeline, Spekulation Einfache Pipeline Resultierende Echtzeitproblematik bei High-End- Prozessorkernen mit diesen Techniken

9 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 9 2.5. Mikrocontroller-Komponenten Zur Einsparung von Speicher bei einfachen Mikrocontrollern: Verkürzte Adressierung zur Verkürzung der Befehle

10 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 11 2.5. Mikrocontroller-Komponenten 2.5.2 Ein-/Ausgabeeinheiten Bindeglied des Mikrocontrollers zur Umwelt analog/digital seriell/parallel Übertragungsraten Übertragungsformate Übertragungsaufwand...

12 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 12 2.5. Mikrocontroller-Komponenten 2.5.2.1 Anbindung an den Prozessorkern

13 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 14 2.5. Mikrocontroller-Komponenten Adressraumbedarf unterschiedlich komplexer EA-Einheiten

15 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 15 2.5. Mikrocontroller-Komponenten Physikalische Anbindung durch Adressdecoder

16 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 17 2.5. Mikrocontroller-Komponenten Software-Synchronisation: Beispiel XON/XOFF

18 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 18 2.5. Mikrocontroller-Komponenten Hardware-Synchronisation: Beispiel RTS/CTS

19 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 19 2.5. Mikrocontroller-Komponenten Von Seiten des Prozessorkerns: Auswertung mit Polling oder Interrupt

20 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 20 2.5. Mikrocontroller-Komponenten 2.5.2.2 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 21 2.5. Mikrocontroller-Komponenten Einfache parallele Eingabeeinheit:

22 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 22 2.5. Mikrocontroller-Komponenten Einfache parallele Ausgabeeinheit:

23 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 23 2.5. Mikrocontroller-Komponenten Einfache bidirektionale Einheit:

24 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 24 2.5. Mikrocontroller-Komponenten 2.5.2.3 Digitale serielle Ein-/Ausgabeeinheiten (serielle IO-Ports) Grundprinzip:

25 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 26 2.5. Mikrocontroller-Komponenten Asynchrone Übertragung Nach jedem übertragenen Zeichen wird synchronisiert

27 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 28 2.5. Mikrocontroller-Komponenten Synchrone Übertragung Rahmensynchronisation Höhere Übertragungsgeschwindigkeit, höhere Anforderungen an den Takt

29 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 29 2.5. Mikrocontroller-Komponenten Komponentenaufbau

30 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 30 2.5. Mikrocontroller-Komponenten Verbindungstechniken Serielle Punkt-zu-Punkt-Verbindung (Peer to Peer)

31 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 31 2.5. Mikrocontroller-Komponenten Verbindungsbusse Beispiel: SPI (Serial Peripheral Interface, Motorola) Andere serielle Busse: RS485, USB,...

32 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 32 2.5. Mikrocontroller-Komponenten Serielle Datencodierungen

33 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 0 1 0 1 1 1 0 0 Daten 1 01 11 01 11 11 11 01 0FM T DT DT DT DT DT DT DT D

34 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 0 1 0 1 1 1 0 0 Daten 0 00 10 00 10 10 10 01 0MFM T DT DT DT DT DT DT DT D

35 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 0 1 0 1 1 1 0 0 Daten 0 01 10 01 10 10 10 01 0Manch.

36 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 36 2.5. Mikrocontroller-Komponenten 2.5.2.4 Analoge Ein-/Ausgabeeinheiten zur Verarbeitung durch den Prozessorkern müssen analoge in digitale Signale gewandelt werden

37 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 37 2.5. Mikrocontroller-Komponenten Wandlungsfunktion: bei n Bit Auflösung => Aufteilung in 2 n Schritte U LSB = (U max – U min ) / 2 n Digital/Analog-Wandlung U = (Z U LSB ) + U min Analog/Digital-Wandlung Z = (U – U min ) / U LSB

38 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 38 2.5. Mikrocontroller-Komponenten Beispiel:U max = 5 V, U min = 0 V, 12-Bit-Wandlung => U LSB = 1,221 mV Wichtigste Kriterien für die Auswahl eines Wandlers Auflösung (n Bit) Spannungsbereich (U min - U max ) Wandlungszeit Wandlungsfehler

39 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 39 2.5. Mikrocontroller-Komponenten Digital/Analog-Wandlung R/2R-Widerstandsnetzwerk

40 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 40 2.5. Mikrocontroller-Komponenten Funktion des Wandlers: I k = z 3 (U ref / 2R) + z 2 (U ref / 4R) + z 1 (U ref / 8R) + z 0 (U ref / 16R) Für den Operationsverstärker gilt näherungsweise: U = -R I k Daraus folgt: U= - (z 3 (U ref / 2) + z 2 (U ref / 4) + z 1 (U ref / 8) + z 0 (U ref / 16)) = - (z 3 2 3 + z 2 2 2 + z 1 2 1 + z 0 2 0 ) U ref / 2 4 = - Z U ref / 2 4 oder für n Bit: U = - Z U ref / 2 n

41 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 41 2.5. Mikrocontroller-Komponenten Statische Wandlungsfehler:

42 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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: I k (0111) > I k (1000)

43 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 43 2.5. Mikrocontroller-Komponenten Dynamische Fehler: Glitches durch Wettläufe im Umschaltzeitpunkt, z.B. bei 0111 1111 1000 Abhilfe: Abtast-/Halteglied (Sample and Hold)

44 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 45 2.5. Mikrocontroller-Komponenten Beispiel: das Wägeverfahren wandelt n Bits in n Schritten

46 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 46 2.5. Mikrocontroller-Komponenten Ablauf: sukzessive Aproximation Wandlerfunktion: Z = 2 n U / U ref = U / U LSB

47 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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: 8 Bit Auflösung 49.8dB 12 Bit Auflösung 73.8dB 16 Bit Auflösung 97.8dB

49 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 U LSB macht bereits das niederwertigste Bit unbrauchbar Abhilfe: Abtast-/Halteglied Takt-Jitter (Aperturfehler) Schwankung der Taktrate bei periodischer Abtastung analoger Signalverläufe


Herunterladen ppt "Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 1 2.5. Mikrocontroller-Komponenten 2.5.1 Prozessorkerne."

Ähnliche Präsentationen


Google-Anzeigen