Disponible la nueva versión "donationware" 7.3 de OrganiZATOR
Descubre un nuevo concepto en el manejo de la información.
La mejor ayuda para sobrevivir en la moderna jungla de datos la tienes aquí.

Tecnología del PC

[Home]  [Inicio]  [Índice]


3.2.1  Arquitectura del procesador: Conexiones exteriores

§1  Sinopsis

El procesador está conectado con el mundo que le rodea mediante una serie de líneas materializadas las patillas del chip, las cuales se alojan en un zócalo situado ex profeso en la placa-base.  En la figura 1 de la página anterior las hemos simbolizado por una flecha señalando al "Exterior".

El número de estas conexiones exteriores ha aumentado paralelamente a la potencia y complejidad de los procesadores.  Los 8088 se alojaban en un chip DIP ("Dual In-line Package") de 40 patillas, mientras que los actuales (2001) Pentium 4 disponen de 423 pines [2].  En estos contactos están las tensiones de alimentación; la de tierra; el bus de datos; el de direcciones y una serie de señales del bus de control, incluyendo las de reloj.

Nota:  el 8086 y 8088 eran prácticamente idénticos. La diferencia estaba en un módulo denominado BIU ("Bus Interface Unit"), que manejaba las conexiones del procesador con el exterior.  El 8086 tenía bus de datos de 16 bits, mientras que en el 8088 era de 8 bits.


En la tabla adjunta se relacionan los nombres y usos de las 20 patillas del 8088 mostradas en la Fig. 1.  La mayoría de ellas están relacionadas con señales que aparecen de una u otra forma a lo largo de esta publicación dedicada a la tecnología del PC.

Hay que advertir que el bus de direcciones/datos del 8088 está multiplexado.  Esto significa que la información contenida en algunas líneas (patillas) cambia según el momento.  Estos cambios configuran el ciclo de máquina o ciclo del bus, que se extiende a lo largo de cuatro ciclos (tics) del reloj CLK ( 0.3.1), designados por T1; T2; T3 y T4 (esto explica que aún las instrucciones más cortas requieran 4 ciclos de reloj).  El contenido de las líneas multiplexadas puede variar en cada uno de estos tics.

Las direcciones son transmitidas durante el ciclo T1, mientras que las transferencias de datos ocurren durante T3 y T4.  El ciclo T2 se utiliza principalmente para los cambios de direcciones del bus durante las operaciones de lectura.  El sistema prevé que el procesador pueda insertar tics de espera Tw, para dar tiempo extra a cualquier periférico que no esté preparado (READY ).

Este doble uso de las patillas (y del bus), permitió un diseño del chip con menos patillas (40); en otro caso se habría necesitado un mayor número para transportar todas las señales.

El bus del 8088 puede considerarse dividido en tres partes:

  • La parte inferior, AD0/AD7, contiene 8 líneas que pueden contener direcciones (A0-A7) y datos (D0-D7).
  • La parte media, A8-A15, contiene 8 líneas que solo contienen direcciones.  Mantienen su valor a lo largo de todo el ciclo del bus.
  • La parte superior contiene 4 líneas que pueden contener direcciones (A16-A19) y bits de estado (S6-S3).
§2  Asignación de patillas en el 8088:

El 8088 tiene dos modos de funcionamiento seleccionables por hardware (SSO ), de forma que algunas patillas tienen un uso o u otro (según el modo).  En la tabla adjunta se relacionan los nombres y usos en la forma "máxima", que es como fue utilizado por IBM en el PC original.  Las flechas simbolizan la dirección de las señales transportadas:

    Desde el procesador al exterior (Salida)

    Desde el exterior al procesador (Entrada)

  Bidireccional; hacia y desde el procesador (E/S)

 
Num. Nombre

Uso

1

GND Masa ("Ground")

2/8

A14/A8  Líneas del bus de direcciones ("Addresses") no multplexadas.  Junto con la patilla 39 mantienen su valor durante todo el ciclo de funcionamiento del bus.

9/16

AD7/AD0 Líneas compartidas (multiplexadas).  Son las direcciones A0-A7durante los ciclos T1, y los 8 bits de datos D0-D7, durante los ciclos T2, T3, Tw y T4.

17

NMI   Petición de Interrupción hardware no enmascarables ( 0.3.1d).  Este tipo de interrupciones no puede ser enmascarada mediante software.  Siempre que se recibe se genera una interrupción número 2.

18

INTR   Petición de interrupción enmascarable hardware ( 0.3.1d).  Estas señales pueden ser enmascaradas actuando sobre el bit S5 .

19

CLK    Entrada de señal de reloj  ("Clock" 0.3.1)

20

GND Masa

21

RESET   Entrada de la señal de inicio del procesador ( 0.3.1).  Esta señal está normalmente inactiva (baja).  Después de mantenerse activa (alta) durante al menos cuatro ciclos de reloj, al volver a su estado inicial bajo, se detiene la instrucción en ejecución y se reinicia el procesador.

22

READY   Esta señal ayuda a sincronizar el procesador con sus periféricos.  Cuando un dispositivo necesita más tiempo para estar preparado, pone baja la tensión de esta línea, para avisar al procesador.  En este caso, se insertan estados de espera Tw ("Wait states") entre los ciclos T2 y T3.

El esquema de funcionamiento es como sigue:  Durante el ciclo T1 el procesador siempre pone una dirección de memoria o puerto en el bus, que en este momento actúa como de direcciones (ver patillas 9/16 ); pero cuando entra en el ciclo T2 no avanza la instrucción directamente, sino que mira el estado de esta patilla.  Si está alta, sigue en los ciclos T3 y T4, pero si está baja, entra en un estado de espera Tw sin hacer nada, salvo esperar que esta patilla vuelva a nivel alto.  El tiempo de espera puede ser indefinido, cualquier número de ciclos CLK de reloj;  durante todo este tiempo muestra al mundo su estado de espera elevando la señal de la patilla 23 a nivel alto.

23

TEST Esperar para comprobación ("Wait for test").  Después de cada instrucción el procesador setéa el estado de esta señal.  Si es bajo (0) es que la ejecución continua normalmente; si es alto (1), es que permanece detenido en un estado de espera.

24/25

QS1/QS0 Estado de la cola ("Queue Status").  Estas señales permiten que un dispositivo externo pueda tener conocimiento del estado de la cola de instrucciones del procesador.  La interpretación es la siguiente:


QS1 QS0 Significado
 0   0  Sin operación
 0   1  Primer byte del código de instrucción
 1   0  Cola vacía
 1   1  Siguiente byte del código de instrucción

 

26/28

S2/S0   Estado ("Status").  El estado 0 (bajo) o 1 (alto) de estas patillas contiene información de lo que está ocurriendo en el procesador.  Hay momentos en que el controlador de bus 8288 ( 0.3.1) genera alguna de estas señales cuyo significado es el siguiente:

S2 S1 S0 Significado
0  0  0  recnocimiento de interrupción (1)
0  0  1  Lectura en un puerto E/S
0  1  0  Escritura en un puerto E/S
0  1  1  Detención (Halt )
1  0  0  Acceso a código
1  0  1  Lectura de memoria
1  1  0  Escritura de memoria
1  1  1  Pasivo

(1)  Cuando se recibe una petición de interrupción enmascarable en la patilla INTR , el procesador responde enviando esta señal ("Interrupt Acknowledge" 0.3.1d)

29

LOCK   La señal es activada (pasa a valor 0) por las instrucciones que tienen el prefijo LOCK (en ensamblador), y permanece activa hasta que es completada la siguiente instrucción.  Durante este tiempo ningún otro dispositivo puede adquirir control del bus.

30/31

RQ/GT  Señales de petición/concesión ("Request/Grant") de control del bus por cualquier dispositivo distinto del procesador capaz de asumir su control ("Bus mastering") [3].  El proceso es el siguiente:

a: Un pulso de un ciclo de reloj desde un dispositivo externo señala la petición de control del bus local desde otro "bus master". Esta señal es conocida com HRQ ("Hold Request")

b: Un pulso de un ciclo del procesador durante los tics T4 o T1, es la señal al peticionario que el procesador está permitiendo "flotar" al bus [1],  y que colocará la señal de reconocimiento de petición de control HLDA (Hold Acknowledge) en el próximo tic de reloj.  Durante estos estados de "reconocimiento de control" la interfaz de bus es desconectada lógicamente del bus local.

c:  Finalmente, un pulso de un ciclo CLK del peticionario, indica al 8088 que el control solicitado va a terminar, de modo que el procesador puede recuperar el control del bus en el próximo ciclo de reloj.  Es la señal EOP ("End of Process").  

32

RD   Lectura ("Read").  Esta patilla indica que el procesador está realizando un ciclo de lectura de memoria o de puerto (según el estado de S2 ).

33

MN/MX La tensión, alta o baja (tierra), de esta patilla pone al procesador en dos estados de comportamiento ligeramente distintos, que se conocen como modo mínimo y máximo.  En el PC original el 8088 era usado en modo máximo que significa que el procesador depende del controlador de bus 8288 para generar algunas señales del bus de control ( 0.3.1).

34

SSO Línea de estado.  El estado alto o bajo de esta patilla determina cual es el modo de uso del procesador (en el modo máximo del PC su estado es siempre alto).

35/38

A19/A16

S6/S3  

Líneas compartidas (multiplexadas) de direcciones/estado.

Durante el ciclo T1 de las operaciones E/S con memoria, las líneas 35-38 contienen los 4 bits más significativos (A19-A16) del bus de direcciones (este bus tiene las líneas A0-A19).  En cambio, si la operación es de E/S con un puerto, su valor es siempre 0 (por esta razón las operaciones con puertos del PC XT solo disponen de 16 bits, y solo se pueden utilizar 65.536 direcciones de puerto distintas 0.3.1e).

Cualquiera que sea el tipo de operación (memoria o puerto), durante los ciclos T2, T3, Tw y T4 estas líneas contienen información del estado del procesador y de su propia actividad.  Durante estos tics S6 es siempre cero; S5 indica el estado del bit de habilitación de interrupciones; por su parte S3 y S4 contienen información sobre lo que está tratando de hacer el procesador.  Esta información es utilizada para controlar y dirigir los dispositivos externos a la UCP, por ejemplo la memoria y los puertos E/S.  Su significado es el siguiente:

S4 S3 Significado
0  0  Alternate Data
0  1  Stack
1  0  Code or None
1  1  Data

39

A15     Línea del bus de direcciones ("Addresses")

40

Vcc Alimentación.  + 5 V. c.c. +/- 10%

  Inicio.


[1]  La expresión indica que el procesador no fuerza esta señal, permitiendo que su valor (alto o bajo), pueda ser establecido desde otro dispositivo.

[2]  Sus patillas forman un cuadrado;  esta disposición es un estándar denominado Socket 423.

[3]  El "Bus mastering" está relacionado con el mecanismo de Acceso Directo a Memoria DMA ( 2.3)