Z80 ¿Explicación de E / S?

0

He estado siguiendo las dos guías del Gran Proyecto Z80 y lo único que no entiendo es la E / S. Él usa un 6522 I / O V.I.A. y no entiendo muy bien la idea de los puertos de E / S. Entonces, mi pregunta es, ¿cómo conecto más de un 6522 a la CPU para poder controlar más periféricos?

    
pregunta Querky Bren

3 respuestas

2
  

Para que el 6522 funcione, ambos pines CS (Chip Select) deben estar activos. El truco aquí es que CS1 es activo-alto y CS2 es activo-bajo; Entonces conecte CS1 al lado alto de su fuente de alimentación y CS2 al lado bajo.

El gran proyecto Z80 continúa con los accesos de E / S, y encuentra la manera de dar vida a 6522 cada vez que el Z80 hace un * ciclo de E / S. El pin CLK2 de 6522 está accionado:

  

Podemos sustituir fácilmente el pin de "Solicitud de E / S" (IORQ) del Z80, que es el pin utilizado por el Z80 para indicar al chip de E / S que necesita acceder al E / S.

No se realiza la decodificación de direcciones de E / S, lo que significa que su single 6522 acapara todo el espacio de direcciones de E / S. Ningún otro dispositivo de E / S se puede agregar al bus, de lo contrario, tendrá un conflicto con el bus de datos.
Esto es para lo que están las líneas de selección de chip . Él cablea las dos líneas CS (una alta y la otra baja) para mantener al 6522 despierto. Si desea dos 6522s en el bus, conecte una de las líneas CS (de cada 6522) a una línea de dirección Z80 para seleccionar una u otra. Y gracias por los recuerdos.

    
respondido por el glen_geek
1

Wow esta pregunta sin duda trae recuerdos. Si recuerdo correctamente, puede usar un IC de latal octal 74HC573 para obtener algunas salidas y un búfer octal 74HC244 para puertos de entrada. Conecta los puertos de retención al bus de datos Z80 y luego necesita agregar un demultiplexor de dirección a algunas de las líneas A (como un 74HC138) que le permite elegir qué conexión / búfer se activa cuando lee o escribe en una dirección. Más allá de estas partes, solo fue un caso de conectar los pines de activación / enganche de salida correctos al Z80.

Nunca usé el 6522, pero parece ser una especie de solución periférica 'todo en uno' que incluye puertos y temporizadores IO. Algunos consideran esta trampa en comparación con una solución de puerta lógica completa si buscas la experiencia 'completa' Z80.

    
respondido por el Jon
0
  

No entiendo muy bien la idea de los puertos de E / S.

Los puertos de E / S son como ubicaciones de memoria, excepto que / IOREQ se usa para seleccionarlos en lugar de / MREQ. En el Z80, una instrucción de E / S como OUT (0xFF),A o IN A,(0xFF) coloca la dirección de 8 bits 0xFF en las 8 líneas de dirección inferiores, luego pulsa / IOREQ bajo para seleccionar el chip de E / S. Esto proporciona un espacio de E / S con 256 ubicaciones. El Z80 también puede tener un espacio de E / S de 16 bits utilizando instrucciones como OUT (C),A , que coloca el contenido del registro B en los 8 bits superiores del bus de direcciones.

Para tener varios chips de E / S en el mismo bus, cada uno debe seleccionarse en una dirección diferente. Para los chips que solo tienen una línea de selección, puede conectar cada uno a una línea de dirección diferente y luego direccionar hasta 8 chips con instrucciones de E / S de 8 bits, por ejemplo. el primer chip seleccionado cuando A0 es bajo y todos los demás altos, el segundo cuando A1 es bajo, etc. Con este método, no debe usar ninguna dirección que tenga tanto A0 como A1 bajos o se seleccionarán ambos chips al mismo tiempo, lo que provocará un conflicto de bus .

Esto se denomina decodificación de dirección 'parcial', que se usó en muchas computadoras domésticas, como Sinclair ZX Spectrum y Amstrad CPC. Otras computadoras con CPU que no tienen espacio de E / S (por ejemplo, 6502) tienen que direccionar sus chips de E / S en el espacio de memoria y, por lo tanto, generalmente hacen una decodificación de dirección más completa porque de lo contrario perdería demasiado espacio de memoria.

    
respondido por el Bruce Abbott

Lea otras preguntas en las etiquetas