Für meine CPU habe ich eine Anzeige entworfen, die auf einer 11*5 LED Matrix beruht. Jede Ziffer wird in einem 3*5 Feld ausgegeben. Der Attiny fragt regelmäßig ab, welche Information, z.B. Register oder Steuerbits, an den Datenpins anliegen und im Anschluß die Daten selber.
Weiterlesen »
Vier einzelne Bits ergeben zusammengesetzt ein Register meiner CPU. Gleichzeitig zeigen die LED den Status der einzelnen Bits an.
Weiterlesen »
Die nächste Version der ALU ist fertig. Alle Elemente der ersten Version finden sich hier wieder. Neu hinzugekommen ist ein neuer Steuerbefehl, der unabhängig von den Inputwerten A oder B immer 0-0-0-0 als Ergebnis zurückliefert, um die ALU „stumm“ zu schalten.
Die ALU funktioniert, sie wird nur noch etwas verkleinert und die Signalwege werden optimiert. Ein weiterer wichtiger Baustein der CPU sind die Register, in denen Zwischenwerte gespeichert werden können. Hier baue ich jedes Bit einzelnd auf und stecke diese später immer zu 4-Bit Werten zusammen.
Weiterlesen »
Alle Einzelplatinen sind fertig gelötet und warten auf die ersten Einsätze. Ich habe die Module (Volladdierer, Multiplexer, Ergebnisanzeige, Komparator und Logikgatter) zusammengesteckt und nutze einen Arduino Mega 2560 zum Befeuern der der Ein- und Auslesen der Ausgänge. Der Mega liefert jeweils 2* 4 Bit für die Eingänge A und B und 3 Bit für die Steuerbefehle C. Gleichzeitig ließt der Mega 2560 die 4 Ergebnis- E und 4 Statusbits der ALU aus.
Weiterlesen »
Ein sehr wichtiger Baustein für die ALU, also für jeden PC ist der Komparator. Aus zwei angelegten Bitfolgen mit diesem zu ermitteln, ob diese gleich sind, oder welches größer ist. Hier habe ich einen fertigen Baustein genutzt, den 74HC85. Auch hier werde ich 2018, wie den Multiplexer, auf einen Umstellen, der mit Transistoren und Widerständen auskommt.
Weiterlesen »
Um die Rechenergebnisse der ALU angezeigt zu bekommen oder die Funktionen zu beoachten, habe ich eine kleine Anzeige mit Leuchtdioden entworfen.
Der Volladdierer Version 1 funktioniert nur zuverlässig bei 9V Betriebsspannung. Bei 5V sind die Pegel bei der Summe und Carry Out (CO) zu niedrig. Gerade bei CO ist das hinderlich, da dieser ja in dem nächsten 1-Bit Volladdierer als Carry In anliegt.
Weiterlesen »