El objeto de este ejercicio es el diseñar un sistema básico basado en la arquitectura del procesador MOS 6502. El motivo no va más allá de satisfacer un interés personal por conocer en mayor profundidad el funcionamiento de este procesador, desde el punto de vista de un completo extraño en estos sistemas, y con miras a poder introducirse en el uso de ordenadores como el Kim-1 disponibles en la colección. Hay muchos proyectos similares en línea, y en ellos nos apoyaremos para intentar identificar aquéllos conceptos más útiles para avanzar en la comprensión del sistema.
La historia de MOS, del desarrollo del procesador 6502 y sus semejanzas con otros procesadores de la época, se encuentran detalladas en otros sitios y merecen ser leídas a modo de introducción de lo que representó la entrada del 6502 en el mercado. No por nada esta arquitectura fue la base en la que empresas como Apple, Atari, Commodore o Nintendo desarrollaron sus primeros equipos y la base de lo que sería la informática de consumo en buena parte del mundo.
El primer objetivo será el disponer de los integrados y componentes principales para hacer funcionar el procesador 6502, identificar la forma de que ejecute instrucciones y realice direccionamiento de memoria, para lo cual se conectará el procesador con un integrado EPROM y un módulo SRAM, y se verificará que la ejecución se ajusta a lo esperado.
El listado inicial de piezas para los primeros pasos de introducción será el siguiente:
- Procesador UMC UM6502 @ 1 MHz.
- Módulo EPROM 27C128 (16KB x 8).
- Módulo SRAM Cypress CY62256NLL 256-KBit (32KB x 8).
- Oscilador de cristal de 1.8432 MHz.
- Integrado 74LS00 (ó 74HC00).
- Integrado 74LS04 (ó 74HC04).
- Tres resistencias de 2.2 Kohm.
- Una resistencia de 1.5 Kohm.
- Condensador de 0.05 uF.
- Placas breadboard y cableado.
- Módulo de suministro de tensión regulada de 5V.
El primer paso antes de comenzar a identificar las relaciones entre estos elementos es el procesador. Se puede observar el pinout de este elemento en el esquema adjunto más arriba.
El integrado recibe tensión nominal de 5V a través de su pin 8, estando sus pines 1 y 21 conectados a masa. Para empezar a funcionar, debemos suministrarle una señal de reloj adecuada a su frecuencia de funcionamiento a través de su pin 37, para lo cual utilizaremos en efecto la salida del oscilador de cristal.
La versión del procesador escogida (UM6502) presenta una frecuencia de operación de 1 MHz según la ficha de características (disponible a través del siguiente enlace), mientras que el oscilador de cristal que se encontraba disponible oscila a una frecuencia casi dos veces superior. En un primer intento, se procederá a realizar la conexión directa en tanto a que se dispone de referencias online de que este modelo de procesador en concreto puede funcionar con una frecuencia superior a la establecida en la hoja de características. En caso de que esto no se verifique en las pruebas, reutilizaremos el oscilador de cristal de 1.84 MHz instalando un integrado flip-flop 74LS74 que permita reducir esta frecuencia a la mitad, de la forma en que se describe en la hoja de características.
En la siguiente entrada se explicará en mayor detalle la conexión realizada entre los integrados ya descritos y se establecerá un listado de piezas necesarias para extender el sistema al exterior, bien a través de un par de integrados 6522 y 6551, o similar.