Blatt11

Page 1

Professur für Rechnerarchitektur
Prof. Dr. Armin Biere
Dr. Mathias Fleury
Freiburg, 10. Juli 2026
Technische Informatik

Übungsblatt 11 (v1)

Achtung 1: Handgeschriebene Antworten werden nicht benotet.

Achtung 1: Nächste Woche (20. und 22. Juli) gibt es keine Vorlesung mehr. Die Tutorate finden aber trotzdem statt.

Aufgabe 1 (KI/Pflicht Punkte)

Bitte ankreuzen welches von beiden Punkte passt:

□ Ich habe die Aufgaben selbst versucht zu lösen und möchte ein Korrektur

  • a) mir ist bewusst, dass signifikante Bearbeitung reicht zum Bestehen des Blatts
  • b) mir ist bewusst, dass ich vielleicht trotzdem Vorrechnung muss (ohne meine Notizen!)

□ Ich habe irgendwann die KI gefragt und einfach abgeschrieben. In diesem Fall:

  • a) muss ich alle Aufgaben abgeben, das reicht zum Bestehen dieses Blatts
  • b) mir ist bewusst, dass ich keine Korrektur bekommen werde
  • c) mir ist bewusst, dass ich vielleicht trotzdem Vorrechnung muss (ohne meine Notizen!)

Die Bewertung passiert nur wenn diese Aufgabe beantwortet wurde.

Aufgabe 2 (1.5 Punkte)

Betrachten Sie die Befehlstabelle (zu finden bei den Vorlesungsmaterialien unter "Zusatzmaterial") und die Datenpfade der ReTI (s. Abb. 1).

Bei welchen Befehlen werden in der Execute-Phase die folgenden Treiber enabled?

a) /IAdoe

b) /IN1Ldoe

c) /ALUAdoe

Page 2

(Abbildung 1: Datenpfade von ReTI mit Registern PC, IN1, IN2, ACC, ALU, I, DI, D, R, L und den Treibern/Load-Signalen.)

Aufgabe 3 (2.5 Punkte)

Geben Sie eine Menge von ReTI Befehlen an, so dass jeder Treiber (außer PCAd) der ReTI mindestens einmal verwendet wird und durch das Entfernen eines dieser Befehle mindestens ein Treiber ungenutzt bleibt.

Geben Sie für jeden Befehl die jeweils aktiven Treiber an. Markieren Sie außerdem die aktiven Treiber, die nur von genau diesem Befehl verwendet werden.

Warum ist der Treiber PCAd in dieser Aufgabe ausgenommen?

Aufgabe 4 (2 Punkte)

Betrachten Sie den unvollständigen Schaltkreis in Abb. 2. Geben Sie eine Gatter-Implementierung für die Teilschaltkreise und an, so dass der gesamte Schaltkreis die Funktionsweise eines Tristate-Treibers mit Output-Enable /OE realisiert. Zur Erinnerung: Der Tristate-Treiber gibt am Ausgang den Wert von wieder, falls /OE = 0 und , falls /OE = 1.

Page 3

(Abbildung 2: Unvollständige Implementierung eines Treibers mit Eingängen , /OE, Teilschaltkreisen und , und Ausgang .)

Page 4

Aufgabe 5 (4 Punkte)

Zur Erinnerung: Der ternäre ITE-Operator ("If-Then-Else") ist wie folgt definiert:

Führen Sie nun alle binären Operatoren in geeigneter Weise auf den ITE-Operator zurück.

Hinweise:

  • Überlegen Sie sich, wie viele binäre Operatoren es gibt. Alle anderen Eingaben sind also 0 oder 1.
  • Beispiel: , .

Die Tabelle sollte in etwa so anfangen:

Boolescher Ausdruck Name ITE
0 0 0 0 Null
0 0 0 1 AND
0 0 1 0
... ... ... ... ... ... ...

Aufgabe 6 (5 + (0 + 2 Bonus) Punkte)

a)

Schreiben Sie ein Programm für den ReTI-Rechner, das die Fibonacci-Zahlen berechnet:

ü

Nehmen Sie dabei an, dass der Wert von am Anfang in Speicherzelle steht. Am Ende Ihres Programms soll

  • in Speicherzelle stehen,
  • in Speicherzelle stehen,
  • ...,
  • in Speicherzelle stehen.

Geben Sie dazu zuerst Ihren Algorithmus im Pseudocode an und kommentieren Sie Ihr Assemblerprogramm. Für unkommentierte Programme werden keine Punkte vergeben!

Hinweis: Eine Liste der ReTI-Befehle finden Sie auf der Webseite der Vorlesung.

b)

Geben Sie nun den Zeitbedarf Ihres Programms in Abhängigkeit von exakt an, unter der Voraussetzung, dass die Zykluszeit der ReTI 6.78 ns beträgt und die Abarbeitung eines Befehls 8 Zyklen benötigt.

Abgabe: 17. Juli 2026, 1600