Aufgabe Vorschlag C - Aufgabe 2.4 · Abitur Hessen Technische Informatik LK 2021

Thema: Struktogramme für Mikrocontroller-Steuerungen · Aus der Prüfung LK (2021)

Aufgabenstellung

Das Boundary-Scan-Testsystem besteht neben der Software auch aus einer Testhardware, die von einem Mikrocontroller gesteuert wird. Der Mikrocontroller ist dafür zuständig, die Testdaten von der Software zu empfangen, die Testsignale für die IC-Anschlüsse TCK, TDI und TMS zu erzeugen und die über den IC-Anschluss TDO empfangene Testantwort zurück an die Software zu senden.

TCK gibt den Takt an, mit dem die Daten in die Boundary-Scan-ICs geschoben werden. TMS legt den Testmodus fest und TDI sind die Testdaten. Bevor die Testdaten in TDI eingeschoben werden, muss der Test mit der Bitfolge „0100“ an TMS initialisiert werden. Für den anschließenden Testvorgang muss TMS immer „0“ sein. Nach Einschieben aller Testdaten wird der Test mit der Bitfolge „11“ (zwei „1“en) an TMS beendet.

Während die Testdaten bitweise in TDI eingeschoben werden, werden die Testantworten ebenfalls bitweise aus TDO herausgeschoben und können von der Testhardware gelesen werden. Ein Beispiel für das Einschieben der Daten findet sich in der folgenden Grafik.

Zur Initialisierung des Tests gibt es das Unterprogramm initTest. Zur Durchführung des Tests gibt es das Unterprogramm schiebeDaten, das immer dann automatisch aufgerufen wird, wenn ein Datenbyte (8 Bit an Testdaten) von der Software empfangen wurde. Außerdem gibt es das Unterprogramm sendeAntwort, das immer, wenn 8 Bit an Testantwort eingelesen wurden, diese an die Software sendet.

Zur Erzeugung des Taktsignals steht außerdem das Unterprogramm wait zur Verfügung, das eine halbe Taktperiode lang wartet.

Das Unterprogramm schiebeDaten wird immer dann aufgerufen, wenn neue Daten im Empfangsregister vorliegen. Die Initialisierung ist zu diesem Zeitpunkt bereits erfolgt. Das Unterprogramm schiebt dann diese Daten mit dem niedrigsten Bit zuerst nach TDI und liest an TDO das entsprechende Bit der Testantwort des vorherigen Tests in das Antwortregister ein. Gleichzeitig erzeugt es den Takt TCK sowie das TMS-Signal, wie in der Grafik in Aufgabe 2 gezeigt.

Nachdem alle 8 Bit an Testdaten in die zu testende Schaltung eingeschoben und alle 8 Bit der Testantwort ausgelesen sind, wird das Unterprogramm sendeAntwort aufgerufen. Anschließend springt schiebeDaten wieder zurück an die Stelle, von der es aufgerufen wurde.

Entwickeln und zeichnen Sie ein Struktogramm für das Unterprogramm schiebeDaten.

Hinweis: Zum Schieben einzelner Bits um eine Stelle nach rechts in einem Register können Sie den Rechtsshift-Befehl lsr (Logic Shift Right) verwenden.

Aufgabenstellung: Aufgabe Vorschlag C - Aufgabe 2.4 · Abitur Hessen Technische Informatik LK 2021

Lösung

Nach den offiziellen Korrekturhinweisen

Entwickeln und zeichnen Sie ein Struktogramm für das Unterprogramm schiebeDaten.

Lösung: Beschreibung des Struktogramms (Nassi-Shneiderman): - Kopf / Bezeichner: `schiebeDaten` - Zählschleife: `wiederhole 8-mal` - Anweisung: `TCK=0` - Anweisung: `TMS=0` - Anweisung: `TDI=niedrigstes Bit von R16` - Unterprogrammaufruf: `wait` - Anweisung: `TCK=1` - Anweisung: `höchstes Bit von R17=TDO` - Unterprogrammaufruf: `wait` - Anweisung: `R16=rechtsshift(R16)` - Anweisung: `R17=rechtsshift(R17)` - Nach der Schleife Unterprogrammaufruf: `sendeAntwort`

Die ausführliche Erklärung Schritt für Schritt (mit KI) gibt es mit Premium. Premium

Löse sie direkt hier: automatische Korrektur, Hinweise und Lösung Schritt für Schritt.

‹ Aufgabe Vorschlag B - Aufgabe 2.2 · LK 2021

Mehr Aufgaben zu Struktogramme für Mikrocontroller-Steuerungen