Ich habe in Logisim herumgespielt, um etwas Erfahrung im Entwerfen grundlegender elektrischer Schaltungen zu sammeln. Obwohl ich sicher nicht der Beste bin, konnte ich eine funktionsfähige ALU zusammenstellen:
1-Bit :
Unter Verwendung der 1-Bit-ALU habe ich eine 8-Bit-ALU zusammengesetzt (dieses Bild direkt darunter, das eine ADD-Operation durchführt):
(SUB-Betrieb):
Ich versuche jetzt, meine ALU zu nehmen und sie mit einer Art CPU zu kombinieren (derzeit konzentriere ich mich hauptsächlich auf das Addieren / Subtrahieren und das Ausgeben an einige 7-Segment-Anzeigen). Ich habe eine 7-Segment-Anzeige zusammengestellt (habe auch noch eine für alhpa-Zeichen AbcdEfG):
Ich kann mir keinen guten Weg vorstellen, das, was ich für eine ALU habe, zu nehmen und die Ausgabe in meine 7-Segment-Anzeige zu platzieren (letztendlich möchte ich die Ergebnisanzeige über 3 haben, um alle möglichen 255-Werte von meinem 8-Bit anzuzeigen Zusatz):
Das Folgende ist, was meine Schaltung für jede unterschiedliche Operation tut:
UND-Verknüpfung - 1.1 = 1 :
ODER-Verknüpfung - 1+0 = 1 :
XOR-Operation - 1 XOR 0 = 1 :
NOR-Verknüpfung - 1 NOR 0 = 6 :
ADD/SUB Operationg - 1+1 = ERROR (Sub Flag ist fehlerhaft für alle OP's??):
Ich bin mir nicht ganz sicher:
Hat jemand einen Beitrag dazu, wie ich die Probleme in meinem Design korrigieren und dies zum Laufen bringen kann? Vielen Dank im Voraus!
BEARBEITEN:
Problem mit Sub-Flag behoben. Als ich die Schaltung zur Verwendung in meiner Hauptschaltung herüberbrachte, hatte sie irgendwie die Eigenschaften, ein Ausgang zu sein und einen 3-Zustand zu haben (was ich glaube ich nie eingestellt habe). In jedem Fall ist dieses kleine Problem behoben.
Scheint, dass das Zero Flag aus irgendeinem Grund auch auf 3-State gesetzt wurde.
Irgendwelche Ratschläge zur Behebung des Add/Sub-Problems?
In den letzten Bildern sieht es so aus, als hätten Sie das "Sub-Flag" als Ausgang und nicht als Eingang konfiguriert. Da nichts dieses Netz antreibt, führt dies zu einem Fehler.
Analytischer Verrückter