El diseño del bus de direcciones y datos del ZX81
presenta diferencias notables con respecto al ZX Spectrum. Las señales que
salen por el bus de expansión son diferentes a las que se encuentran en el
zócalo de la ROM, por lo que no se puede replicar un montaje basado en una
EPROM en el zócalo, con la misma EPROM en una interface conectada al bus de
expansión.
Las líneas del bus de direcciones A0-A8 que salen
por el puerto de expansión son las mismas que llegan al Z80, pero no son las
mismas que acceden a la ROM o a la ULA. Entre Z80 y ROM hay unas resistencias
(R18-R26) de 1K. Estas líneas del bus de direcciones por el lado de la ULA solo
están disponibles en el zócalo de la ROM, no salen por el bus de expansión.
La señal /ROMCS que sale por el puerto de
expansión (23B) es la misma señal que la de la ROM, pero no que la de la ULA;
ya que hay una resistencia entre la ROM y la ULA (R28: 680 ohm).
La ULA debe tener acceso a los bits bajos del bus de direcciones para tener acceso al conjunto de caracteres de la ROM durante el ciclo de refresco.
La ULA debe tener acceso a los bits bajos del bus de direcciones para tener acceso al conjunto de caracteres de la ROM durante el ciclo de refresco.
SEÑALES | ULA | CPU | ROM | RAM | EXPANSION |
D0 - D7 | si | si | no | no | no |
D0´- D7´ | no | no | si | si | si |
A0 - A8 | no | si | no | si | si |
A0´- A8´ | si | no | si | no | no |
A9 - A15 | si | si | si | si | si |
ROMCS | no | - | si | - | si |
La señal M1 (Machine Cycle 1) conecta la CPU con la ULA, y la señal sale por el puerto de expansión (pin 22A). Los ciclos T3 y T4 de M1 se usan para refrescar las memorias dinámicas. Los 7 bits más bajos del bus de direcciones contienen la dirección de memoria a refrescar y la señal RFSH se activa. Esta conexión CPU-ULA no existe en el ZX Spectrum.
Para todos los montajes que se harán en las próximas entregas, se utilizará una EPROM 27c128 (16 kB), en la que los pines Vpp (pin 1), Vcc (pin 28) y PGM (pin 27) se conectan a +5V. La línea A13 (pin 26) se usará para seleccionar el banco de la EPROM que queremos, por lo que se ubica un selector a +5V y a GND.