Aufgabe 1 - TU Dresden

Werbung
KLAUSUR ”Informatik 1” für Elektrotechniker & Mechatroniker
Prof. Dr.-Ing. Christian Hochberger
Aufgabe
Punkte
1
9
2
6
3
15
15.02.2011
Dauer: 120 min.
4
10
5
14
6
12
7
10
8
5
9
19
Σ
100
Aufgabe 1 - Zahlendarstellung
a)
Gegeben ist der dezimale Wert 4216, 4375.
Bestimmen Sie dazu das binäre Gleitkommawort nach dem Standard IEEE 754 (6 Pkt.)
b)
Gegeben ist ein binäres 32-Bit Maschinenwort:
1111 1111 1111 1111 0001 1100 0000 0000
Interpretieren Sie dieses als Ganzzahl im B-Komplement. Geben Sie den dezimalen Wert an. (3 Pkt.)
Aufgabe 2 - Rechnen mit Binärzahlen
Gegeben sind die folgenden dezimalen Zahlen: a = 29, b = −23, c = 18
Konvertieren Sie diese in 8-Bit Binärzahlen (einschließlich Vorzeichen, negative Zahlen im B-Komplement).
Berechnen Sie schriftlich binär und geben Sie die Ergebnisse binär und dezimal an:
a − b, a + c, c − b
Aufgabe 3 - DLX-Programmierung
Gegeben ist ein Zahlenfeld wie beschrieben mit Werten der Länge 32-Bit. Durchsuchen Sie dieses Feld
und geben Sie die Anzahl aller nicht durch 2 teilbaren Zahlen an.
start:
end:
.text 0x40000
LHI R5, 0x200
...
TRAP 0
.data
feld1_lang:
.word
anzahl_ungerade: .word
feld1:
.word
.word
0x2001000
xxxx ; Länge des Feldes in Worten
xxxx ; Ergebnis
xxxx ; 1. Wert des Feldes
xxxx
Aufgabe 4 - Boolesche Funktionen und Gatter
Ergänzen Sie die folgende Tabelle in den freien Feldern mit den in der Vorlesung verwendeten Symbolen, den binären Werten für den Ausgang und die Funktionsnamen.
Eingang
Operator
A
B
0
0
0
1
1
0
1
1
Symbol in Gleichungen
Schaltzeichen
S
0
1
1
0
1
0
0
1
6=
Ü
0
0
0
1
∧
=1
Aufgabe 5 - Adressierungsarten
5.1)
Tragen Sie die Adressierungsart für alle Operanden in die Tabelle ein und bestimmen Sie die Speicheradresse, auf die die Load- und Store-Anweisungen zugreifen, wenn sich die sieben Befehle auf das
untenstehende Datenfeld beziehen.
Befehl
1
2
3
4
5
6
7
ADDI
LHI
ORI
LW
ADDI
LB
LB
wert1:
wert2:
anzahl
Feld1:
data1
data2
Operand 1
Operand 2
Operand 3
für L/S-Befehle
Hauptsp.-Adr.
R5, R0, 0x500
R6, wert1>>16
R6, R6, wert1&0xffff
R7, 4(R6)
R8, R6, 12
R9, 0(R8)
R10, 0x1000(R0)
.data
.word
.word
.byte
.byte
.byte
...
.data
.byte
.byte
0x100400
0x600
0x400
8
; 8 Byte
12,7,5,3
17,0,0,27
0x1000
0xf
0x10
5.2)
Ermitteln Sie die Werte in den Registern R5 bis R10 nach Ausführung der sieben Befehle in der Tabelle
(hexadezimal oder binär).
R5
R6
R7
R8
R9
R10
Aufgabe 6 - Steuerwerk
Ergänzen Sie in folgendem Steuerwerk die Spalten Z 0 und Y so, dass dadurch die Funktion des Zustandsgraphen erfüllt wird.
Z0
¡ Adresse
0
1
2
P - A3
3
4
- A
5
2
6
7
- A
8
1
9
10
- A
11
0
12
13
14
@
15
@
Y (L, S)
¡
¶³
- Z0
HH P
µ´
H
HH
j¶³
P
© Z1
© µ´
©
©
¶³
¼
©
Z2 H
µ´
J HHPH
J
j¶³
H
P
J
© Z3
©
µ´
J
©
P
©
^¶³
J
¼
©
P
Z4 H
J
HH J
µ´
J ?
P H^
j¶³
H
P
© Z5
© µ´
? ©©
¶³
¼
©
Z6
µ´
>
? ?
L
S
L=1
L=1
S=1
S=1
Aufgabe 7 - Rechenwerk
7.1)
Welche Funktion hat die unten abgebildete Schaltung?
7.2)
Was macht die Box mit dem ”?” ?
7.3)
Warum sind die Ausgänge des Operanden B negiert?
7.4)
Warum werden in der Box mit dem ”?” 6 Bit verarbeitet, wenn Operand B nur 4 Bit hat? Nennen
Sie je ein Zahlenbeispiel, bei der das höchste Bit im Resultat oder im Register für den Operanden A
benötigt wird.
1
1
s
s
s
Operand B
s
0
4
3
2
1
0
¾
?
Resultat
s
r
1
write enable
¾
4
3
2
1
0
Operand A
Aufgabe 8 - Flip Flop
Ergänzen Sie folgende Schaltung zu einem asynchronen binären Rückwärtszähler.
b
D
>
Q
Q
D
>
Q
Q
D
>
Q
Q
Aufgabe 9 - DLX Pipelining
Geben Sie für folgende DLX-Codesequenz das Diagramm der Basispipeline an, für eine Implementierung mit getrenntem Daten- und Befehlsspeicher,
ohne Bypässe, mit Splitten der ID- und WB-Phase (Phasensplitting) und mit Zuweisung des PC bei Verzweigebefehlen in der EX-Phase. Füllen Sie die
Tabelle vollständig aus. (15 Pkt.)
(1)
(2)
(3)
(4)
(5)
(6)
ADDI
ADD
LHI
ORI
LW
ADD
Loop
ADDI
f
d
BNEZ
f
d
e
m w
R5,
R6,
R7,
R7,
R8,
R5,
R0, 0x100
R0, R4
0x200
R7, 0x700
0(R7)
R5, R8
(7)
(8)
(9)
(10)
(11)
(12)
ADDI
SUBI
BNEZ
SW
ADD
ADD
R7, R7, 4
R6, R6, 1
R6, Loop
0x400(R7), R8
R7, R0, R0
R6, R0, R3
Hier eintragen, wenn BNEZ ausgeführt wird.
Hier eintragen ab BNEZ, wenn nicht verzweigt wird.
Versuchen Sie durch Umsortierung der Befehle Pipelineverluste durch eventuelle Datenhazards zu vermeiden. Geben Sie die neue Befehlsfolge an. (4 Pkt.)
Herunterladen