rechnerstrukturen 04

Prof. Dr. Peter Sturm
Systemsoftware und Verteilte Systeme
Universität Trier
Stefan Elsen
Raum H522
Tel. 0651-201-3104
E-Mail: [email protected]
Übung zur Vorlesung Rechnerstrukturen
Wintersemester 2015/2016
4. Übungsblatt
Abgabe als Plain-Text, PDF und/oder Logisim-Datei (.circ) via Email unter Angabe von Name und
Matrikelnummer an [email protected] bis einschließlich 4.1.2016. Bitte geben Sie 'Abgabe
Rechnerstrukturen' im Betreff der Email an.
Aufgabe 1:
Entwickeln Sie einen adressierbaren 8x4bit Speicherbaustein in Logisim. Die folgenden Anschlüsse
sollten bereitgestellt werden:
in:
•
Data: 4bit Bus, an dem zu schreibende Daten anliegen
•
Addr: 3bit Bus, an dem die Adresse anliegt, die ausgegeben wird, bzw. beim Setzen von
Write überschrieben werden soll
•
Read: 1bit Eingang, an dem 1 anliegt, wenn die gespeicherten Daten in der anliegenden
Adresse ausgegeben werden sollen. Wenn dieses bit 0 ist soll der Baustein 0000 ausgeben.
•
Write: 1bit Eingang, an dem 1 anliegt, wenn die anliegenden Daten an die anliegende
Adresse geschrieben werden sollen.
•
Clock: 1bit Eingang. Beim Übergang von 0 auf 1 sollen Daten geschrieben werden, so
Write=1 gesetzt ist.
out:
•
Data-out: 4bit Bus, an dem die Daten anliegen, die aktuell in der angegebenen Adresse
gespeichert sind sofern Read=1 gesetzt ist. Andernfalls soll 0000 ausgegeben werden.
Erlaubte Bausteine:
•
Alle Bausteine in Wiring, Gates und Plexers
•
D Flip-Flop
Hinweise: Der Baustein kann rekursiv aus 4x4, 2x4 und 1x4 Speicherbausteinen konstruiert werden,
oder alternativ mit einem 1-aus-8 Decoder und 8 1x4 Speicherbausteinen.
Aufgabe 2:
Konstruieren Sie einen 4bit-Zufallsgenerator, der folgende interne Funktionsweise hat:
Ein interner 4bit Speicher (nutzen Sie den 1x4 Speicherbaustein aus Aufgabe 1) speichert den
aktuellen Zählerstand. Ein zu konstruierender Inkrementierer soll eine eingehende 4bit Zahl um 1
erhöht ausgeben. 15 soll dabei zu 0 inkrementiert werden. Der inkrementierte Wert soll zurück in
den Speicherbaustein geleitet werden. Solange ein nebenliegender Button nicht gedrückt wird soll
der Zähler hochfrequent durchzählen (nutzen Sie dazu Wiring→Clock). Solange der Knopf
gedrückt wird soll der Zähler anhalten und auf einer Hex-Anzeige (Input/Output→Hex Digit
Display) den aktuellen Wert ausgeben.
Erlaubte Bausteine:
•
Alle Bausteine in Wiring, Gates und Input/Output.
•
D Flip-Flop
z.B. so: