Todas las posibles direcciones de E / S del puerto paralelo

0

Estoy tratando de averiguar el significado de todas las direcciones de E / S del puerto paralelo en una PC porque tengo un hardware personalizado que utilizo con él y me imagino que si cambio un valor, mi hardware funcionará.

Hasta ahora, Internet me dice que el puerto IO estándar 0x378 son datos, 0x379 es estado y 0x37A es control.

En mi linux cuando tengo los controladores de puerto paralelo cargados, veo las direcciones de puerto IO anteriores pero también veo estas direcciones:

0x37B a 0x37F

¿Qué representan específicamente cada una de esas direcciones?

    
pregunta Mike

1 respuesta

1

Es discutible si esto se trata incluso de un tema aquí, vs decir retrocomputing.

Dicho esto, la mayoría de los registros de puertos paralelos de PC están estandarizados, y lo que difiere es la dirección base. Así, por ejemplo, su primer puerto típico en la dirección base 0x378 tiene su registro de datos en la base + 0, su estado en la base + 1, etc.

El mismo patrón sería válido para otras direcciones base. Desde la memoria, los más comunes fueron 0x378, 0x3bc y 0x278; sin embargo, no hay nada que impida que alguien construya un puerto con un decodificador de direcciones que lo coloque en cualquier otra dirección que no esté en conflicto con otra cosa en ese sistema en particular, siempre que puedan construye el hardware y convence al software para que lo use.

Vale la pena señalar que el patrón de tener múltiples periféricos similares con la misma (o casi) estructura de registro que se repite desde diferentes direcciones base también es muy común en los microcontroladores modernos (con la ligera diferencia de que están mapeados en memoria, en lugar de en el espacio de direcciones de E / S especial, el 8086 se hereda de procesadores Intel anteriores).

    
respondido por el Chris Stratton

Lea otras preguntas en las etiquetas