Programando desde 1975.
Hardware: Arduino, ESP8266, ESP32, FPGA.
Software: Python, Linux, Verilog.
Proyecto: Construir una CPU J1 en una FPGA.
8/Nov/23 - Todo de nuevo
Volví a empezar por n-esima vez este proyecto. Deje LC3 de lado; tener que administrar el uso de registros se volvió una carga pesada de llevar.
Volví al diseño del J1. Es una máquina de stack con un juego de instrucciones muy simple. Use como base la versión J1a para construir J1s, la versión apropiada para la FPGA Icesugar.
He trabajado en paralelo depurando la CPU con Verilog y el kernel en Assembler. El Assembler lo escribi en Python y produce las correspondientes imagenes de RAM. Estas se incluyen en el fuente Verilog, que se compila y se flashea en la FPGA.
El kernel actual solo sabe leer y almacenar una línea de texto recibido por consola. El siguiente paso será escribir la rutina para parsear y ejecutar los comandos Forth recibidos.
En resumen: he llegado más lejos que nunca y lo que me queda es principalmente programación tradicional en Assembler. Con eso se implementa un subconjunto mínimo de Forth. A partir de ahí todo sigue en Forth.
-
YearlingAug 5, 2022
-
CriticAug 6, 2021
-
SupporterAug 6, 2021
-
AutobiographerOct 11, 2021
This user hasn’t posted yet.