Jul 16, 2023
Prêmio Hackaday 2023: Construindo um Relay ALU
Há muita verdade no conselho de que, para realmente compreender algo, você precisa construí-lo do zero. Essa é a ideia por trás da entrada de [Christian] para o Re-engineering Education
Há muita verdade no conselho de que, para realmente compreender algo, você precisa construí-lo do zero. Essa é a ideia por trás da inscrição de [Christian] para a categoria Educação em Reengenharia do Prêmio Hackaday 2023. Construída como um demonstrador educacional, esta é uma unidade lógica-aritmética (ALU) completa usando relés discretos - e também não tipos de alta densidade - estes são do tipo grande e com buzina transparente.
O design é dividido de maneira organizada e intencional em linhas funcionais, com quatro designs de PCB personalizados, cada placa operando em 4 bits. Para lidar com uma palavra de tamanho de byte, as placas são simplesmente colocadas em cascata, perfazendo um total de oito. O registro, o somador, a função lógica e as placas multiplex são o coração da construção, com duas placas personalizadas adicionais para visualização (usando um Arduino por conveniência) e IO formando a interface. Afinal, uma CPU básica é apenas uma ALU e algum controle em torno dela, a mágica está realmente na ALU.
As operações lógicas fundamentais operando sobre dois operandos, {A, B} são A, ~A, B, ~B, A ou B, A e B, A xou B, podem ser computadas a partir de apenas quatro relés por bit. As saídas lógicas precisam ser alimentadas em um seletor de 7 para 1 bit antes de serem alimentadas no registro de saída, mas esse é o trabalho de uma placa separada. A função somadora é a mais básica, simplesmente um par de meio somadores e uma porta OR para lidar com o encadeamento das entradas de transporte e gerar a saída da cadeia de transporte.
Os cabos impressos em 3D são um toque agradável e proporcionam um trabalho de fiação elegante para unir tudo.
Para uma CPU baseada em relé mais completa, você pode conferir o projeto do computador relé MERCIA, sem mencionar esta construção maravilhosamente polida.