|

TG12 INFT Ich kann Liste

Zeug aus TG11

Zahlensysteme
Bitoperationen
Ports

Programme mit Tasten-Polling

Ports initialisieren: pinMode()
Ports abfragen mit digitalRead(), GPIOA->IDR
Auf Port ausgeben: digitalWrite(), GPIOC->ODR = , |=, &=, GPIOC->BSRR=(1<<n), GPIOC->BSRR=(1<<n+16)
Leuchtpunkt, Leuchtband ausgeben
Zähler mit Tasten entprellen
Zahl auf 7-Segment-Anzeige ausgeben, einstellig, zweistellig
Muster via Array ausgeben (2D-Arrays)
Zustandsdiagramme entwickeln können
Zustandsdiagramme implementieren können

TG12 2. HJ 2. KA

FähigkeitLinksKommentar
Assembler-Programme lesen können1.3 ALU-Funktion und Simulation mit VisUAL2
Rechenwerk3.0 Rechenwerk
Befehlsverarbeitung4.0 Befehlsverarbeitung
Register und ArchitekturX Wiederholung, Zusammenfassung
AD-Wandlung3.1 AD / DA Wandlung
Servo mit PWM steuern3.2 Servo steuern mit PWM

Zusätzliche Beispielaufgaben Rechnerarchitektur

Nebenstehender Assembler-Code ist gegeben:

  1. Beschreiben Sie, wie ein Maschinenbefehl aus dem Codespeicher in das Leitwerk gelangt. Gehen Sie in Ihrer Antwort auf folgende Begriffe ein:
    • Programmcounter (PC)
    • Adressbus
    • Codespeicher
    • Datenbus
    • Instruction-Register (IR)
  2. Unser STM32 (AVR: ATmega328P) hat einen RISC Befehlssatz.
    1. Wo für steht die Abkürzung RISC?
    2. Nennen Sie die Alternative und die Abkürzung dazu.
    3. Welche Vor- und Nachteile hat RISC gegenüber der Alternative?
    4. Warum wurde RISC eingeführt?
  3. Der Befehl subs R1,R1,#1 verwendet eine besondere Einheit des Prozessors.
    1. Wie nennt man diese Einheit und wie lautet die Abkürzung dafür.
    2. Nennen Sie 4 weitere typische Operationen dieser Einheit.
    3. Welche Bedeutung hat das “s” am Ende des Befehls, welche weiteren “Nebenergebnisse” werden dabei erzeugt (nennen Sie 3 und die Bedeutung) und wo werden diese Ergebnisse gespeichert?
  4. Der Befehl bne bla ist ein bedingter Befehl (Branch). Bei welchem Umstand verzweigt er zur Marke bla und was hat das mit dem PC zu tun?
  5. Welchen Wert hat R1 am Ende des Programms?
  6. Die Befehle mov und subs benötigen 1 Takt, der Befehl bne 1 Takt wenn er nicht verzweigt und 3 Takte beim Sprung.
    1. Wie viele Takte benötigt das Programm bis zum Ende (Herleitung)?
    2. Wie lange dauert die Ausführung bei einem Takt von 32MHz?
  7. Unser STM32 (AVR: ATmega328P) hat eine Befehls-Pipeline.
    1. Wie viele Stufen hat diese Pipeline und wie werden die korrespondieren Befehlsphasen benannt?
    2. Hardcore: Zeigen Sie die Verarbeitung des Assembler-Code für die ersten 6 Takte!
  8. Unser STM32 (AVR: ATmega328P) ist nach der Harvard-Architektur konstruiert.
    1. Worin besteht die Besonderheit dieses Ansatzes?
    2. Welche alternative Architektur gibt es und worin besteht der Unterschied?
    3. Warum ist die Harvard-Architektur bei µC verbreitet und welchen Vorteil bietet sie?
    4. Welche zusätzliche Baugruppe wird bei der alternativen Architektur eingesetzt um den gleichen Effekt zu erzielen?
  9. Wofür steht die Abkürzung ARM?
       mov     R1,#5
bla    
       subs    R1,R1,#1
       bne     bla
       end