banner
Nachrichtenzentrum
Schnelle Lieferung

Hackaday-Preis 2023: Aufbau einer Staffel-ALU

May 17, 2023

Der Ratschlag, dass man etwas von Grund auf selbst aufbauen muss, um es wirklich zu verstehen, ist wahr. Das ist die Idee hinter [Christians] Beitrag für die Kategorie „Re-Engineering Education“ des Hackaday-Preises 2023. Gebaut als pädagogisches Demonstrationsgerät, handelt es sich um eine komplette arithmetisch-logische Einheit (ALU) mit diskreten Relais – und auch nicht mit High-Density-Typen – das sind die großen, hupenden Typen mit durchsichtigem Gehäuse.

Das Design ist sorgfältig und bewusst entlang funktionaler Linien unterteilt, mit vier benutzerdefinierten PCB-Designs, wobei jede Platine mit 4 Bits arbeitet. Um ein bytelanges Wort zu verarbeiten, werden die Karten einfach kaskadiert, sodass insgesamt acht vorhanden sind. Die Register-, Addierer-, Logikfunktions- und Multiplexplatinen bilden das Herzstück des Aufbaus, wobei zwei zusätzliche benutzerdefinierte Platinen für die Visualisierung (der Einfachheit halber wird ein Arduino verwendet) und E/A die Schnittstelle bilden. Schließlich ist eine Basis-CPU nur eine ALU und etwas Kontrolle darüber, die Magie liegt wirklich in der ALU.

Die grundlegenden logischen Operationen, die auf zwei Operanden, {A, B}, einwirken, sind A, ~A, B, ~B, A oder B, A und B, A xor B, können aus nur vier Relais pro Bit berechnet werden. Die Logikausgänge müssen zwar in einen 7-zu-1-Bit-Selektor eingespeist werden, bevor sie dem Ausgangsregister zugeführt werden, aber das ist die Aufgabe einer separaten Platine. Die Addiererfunktion ist die einfachste und besteht lediglich aus einem Paar Halbaddierer und einem ODER-Gatter, um die Verkettung der Übertragseingänge zu verwalten und den Übertragskettenausgang zu erzeugen.

3D-gedruckte Kabelführungen sind eine nette Geste und sorgen für eine glatte Verkabelung, um alles zusammenzubinden.

Für eine vollständigere Relais-basierte CPU können Sie sich das MERCIA-Relaiscomputerprojekt ansehen, ganz zu schweigen von diesem wunderbar ausgefeilten Build.