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 Mikrocontroller-Komponenten 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 Mikrocontroller-Komponenten Beispiel:

3 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 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 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 Mikrocontroller-Komponenten Prozessor- kern > 1GByte 50 ns Mbyte ns Daten Code 0, Mbyte ns kByte < 1 ns Register Hauptspeicher Third - Level - Cache Secondary- Level-Cache GByte 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 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 Gesamt Best=Worst Keine Pipeline Benötigte Anzahl Taktzyklen Programm 2.5. Mikrocontroller-Komponenten Best- und Worst-Case Ausführungszeiten verschiedener Mikroarchitekturen Best Worst Best 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 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 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 Mikrocontroller-Komponenten 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 Mikrocontroller-Komponenten Anbindung an den Prozessorkern

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

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

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

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

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

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

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

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

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

30 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 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 Mikrocontroller-Komponenten Serielle Datencodierungen

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

34 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Daten MFM 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 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 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte Mikrocontroller-Komponenten 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 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 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 Mikrocontroller-Komponenten Digital/Analog-Wandlung R/2R-Widerstandsnetzwerk

40 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 z z z ) 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 Mikrocontroller-Komponenten Statische Wandlungsfehler:

42 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 Mikrocontroller-Komponenten Dynamische Fehler: Glitches durch Wettläufe im Umschaltzeitpunkt, z.B. bei Abhilfe: Abtast-/Halteglied (Sample and Hold)

44 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 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 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 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 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 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 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