10/15/2014 Microprocesador 8086 - Digital II 1 · PDF file4 períodos de reloj del...
Transcript of 10/15/2014 Microprocesador 8086 - Digital II 1 · PDF file4 períodos de reloj del...
10/15/2014 Microprocesador 8086 - Digital II 1
10/15/2014 Microprocesador 8086 - Digital II 2
Temporización del canal
Temporización en General • Las operaciones de transferencia
de datos hacia o desde el 8086
ocupan al menos un bus cycle
• Cada bus cycle consiste en
4 períodos de reloj del sistema (T),
T1, T2,T3, T4.
• Si el reloj funciona a 5 MHz:
- T = 1/5 MHz = 0.2 ms
- Bus cycle = 4 T = 0.8 ms=800ns
- Velocidad máxima de lect. o esc. de
datos de la memoria o del espacio
de E/S = 1/0.8 = 1.25 millones de
operaciones por seg.
- El 8086 puede ejecutar 2.5 millones
de inst. por seg.(MIPS) debido a que
posee una cola interna
10/15/2014 3 Microprocesador 8086 - Digital II
Temporización en General
10/15/2014 4 Microprocesador 8086 - Digital II
• T1:
- La dirección de la memoria o del puerto de E/S es enviada por el
micro
-Se proporcionan las señales de control ALE, DT/#R y M/#IO que
indica si el canal de direcciones contiene una dir. de la memoria o
el número de un puerto para un disp. de E/S.
• T2:
- El 8086 proporciona las señales #DEN, #RD para lectura o #WR
para escritura
* En el caso de escritura, los datos que se van a escribir aparecen
en el canal de datos
* En el caso de lectura, el canal multiplexado pasa a alta
impedancia, para que se puedan colocar los datos a leer.
• T3:
-Este período se produce para dar tiempo a la memoria para
acceder a los datos.
-Si el ciclo es de Lectura el bus de datos se muestrea al final de T3
Temporización en General • T4: -Se desactivan todas las señales de canal en
preparación para el siguiente ciclo
-En operaciones de Escritura, el 8086 muestrea los terminales del canal de datos que se leen de la memoria o de E/S. Además, en este momento, el flanco de subida de WR transfiere datos a la memoria o a E/S, los cuales se escriben cuando la señal WR retorna al nivel al nivel de 1 lógico.
• Wait States: la entrada Ready (Lista) produce estados de espera para componentes de memoria y de E/S más lentos. Un estado de espera (TW) es un período adicional de reloj introducido para alargar el ciclo del canal.
10/15/2014 Microprocesador 8086 - Digital II 5
Temporización para un ciclo de Lectura • Puede ser para memoria o para E/S • En el 8086: - Memoria, M/#IO = 1 - E/S : M/#IO= 0
Also DT/#R = 0
Or I/O Device
To Device
10/15/2014 6 Microprocesador 8086 - Digital II
Detailed Memory READ Timing for the 8088
Latch MUXed Address Lines
A15-A8 Not Muxed
A7-A0 Muxed
A19-A16 Muxed
Data Bus Direction: In
Enable Data bus
Start of T4
READY Timing
Read
Standard Bus Cycle = 4T, No Wait States
2. Latch/Buffer Delay Time
3T for the processor To get data from memory
Maximum allowed memory access time
3. Setup Time
1. Valid Address Delay Time
Assume No Waits Required
mP strobes data in
t=0
Valid Address
Max Memory Access Time
Hold Time
10/15/2014 7 Microprocesador 8086 - Digital II
• Durante el primer período se disponen las direcciones, y se activan
las señales para almacenarlas en los latches,etc
• En el segundo período se activan las señales de control de las
dispositivos y se produce el cambio de bus(direcciones/datos).
• En el tercer período ya se disponen de los datos o por el contrario se
detecta una activación de READY y hay que esperar introduciendo
ciclos de espera.
• El cuarto período es el de desactivación de las señales, limpieza del
bus de datos,etc
• El tiempo de acceso a la memoria se inicia cuando aparece la
dirección en el canal de dirección de la memoria y continúa hasta que
el microprocesador haya muestreado los datos de la memoria en T3
(que en el diagrama se observa es al final de T3). Transcurren tres
estados T entre esos tiempos, pero no con exactitud,hay que tener
en cuenta algunos tiempos de retardo y preparación de direcciones y
datos.
Temporización para un ciclo de Lectura
10/15/2014 8 Microprocesador 8086 - Digital II
Temporización para un ciclo de Lectura
• Tclav: tiempo en el cual estará disponible la dirección.
• Tadlt: tiempo que transcurre entre la presencia de direcciones válidas en el bus y el momento en que esas direcciones están disponibles a la salida del latch.
• Tdvcl: tiempo que requiere el procesador que los datos leídos estén disponibles en el bus.
• Por lo tanto el máximo tiempo de acceso a la memoria para operar sin Tw es: 3T – (Tclav+Tadlt+tdvcl).
• Si el tiempo de acceso de la memoria es mayor, es necesario introducir Tw usando la entrada READY.
• El ancho de la señal de habilitación #RD (Trlrh) debe ser lo suficiente para cumplir con los requrimientos de la hoja de datos. La señal #RD puede extenderse mediante la inserción de Tw.
10/15/2014 9 Microprocesador 8086 - Digital II
Temporización para un ciclo de Lectura
• Ejemplo:
Reloj 5MHz
Tclav=110nseg
Tdvcl= 30nseg
Tadlt= 40nseg
Tiempo de acceso< 600ns-(110ns+30ns+40ns)=420ns
10/15/2014 Microprocesador 8086 - Digital II 10
Temporización para un ciclo de Escritura • Puede ser para memoria o para E/S • En el 8086: - Memoria, M/#IO = 1 - E/S : M/#IO= 0
Also DT/#R = 1
Device strobes data in
10/15/2014 11 Microprocesador 8086 - Digital II
Detailed Write Timing for the 8088
Enable Data bus
1. Address established 2. Processor puts data on data bus
Hold Time
Also DT/#R = 1
Data should remain valid for 88 ns after #WR rise
3 parts of the address
Temporización para un ciclo de Escritura
• Las diferencias principales entre la temporización para
lectura y escritura son mínimas. La señal RD se ha
sustituído por #WR, el canal de datos contiene
información para la memoria en vez de información de la
memoria y DT/#R es un 1 en vez de un 0 lógico durante
todo el ciclo.
• La temporización puede ser delicada entre el momento
en el cual #WR se hace 1 lógico y el momento en el que
los datos se retiran del canal de datos. Esto ocurre
porque los datos se escriben en la memoria en el flanco
ascendente de #WR.(Twhdx=88ns para reloj 5MHz)
10/15/2014 13 Microprocesador 8086 - Digital II
Señal READY y Estados de espera(WS)
• La entrada Ready produce estados de espera
para componentes de memoria y E/S más
lentos.
• Un estado de espera (Tw) es un período
adicional de reloj introducido entre T2 y T3 para
alargar el ciclo de lectura o escritura.
• Si se introduce un estado de espera, entonces el
ciclo se alarga por un período de reloj.
• La entrada Ready se muestrea al final de T2 y,
de nuevo, en la mitad de Tw.
10/15/2014 14 Microprocesador 8086 - Digital II
Señal READY y Estados de espera(WS)
• La entrada Ready en el 8086 tiene algunos requisitos estrictos de temporización.En el siguiente diagrama se muestra que Ready ocasiona un estado de espera (Tw) junto con los tiempos requeridos de preparación y retención del reloj del sistema.
• Los requisitos de temporización para esta operación se cumplen con los circuitos internos de temporización de Ready en el generador de reloj 8284A.
10/15/2014 15 Microprocesador 8086 - Digital II
Temporización señal Ready ‘Ready’ Sampling
RDY Input to 8284A
READY Output from 8284A (Input to 8086)
35 ns
0 ns
118 ns
30 ns
8 ns Inactive (Not Ready)
Active (Ready)
Internal Sync circuits In the 8284A ensure that READY output to processor meets the above timing requirements
0: 2 stages, 1: 1 stage of sync
(Tw)
Sample at end of T2
Then Sample at middle of each TW
10/15/2014 16 Microprocesador 8086 - Digital II
Temporización señal Ready • RDY es la entrada sincronizada de Ready del generador de
reloj 8284A
• La mitad inferior del diagrama anterior son los circuitos de sincronización de Ready.
• En la figura siguiente se muestra un circuito utilizado para introducir entre 0 y 7 estados de espera.
• Un registro de corrimiento serie de 8 bits recorre a un 0 lógico durante uno o más períodos de reloj, desde una de sus salidas Q hasta llegar a la entrada RDY1 del 8284A
• El registro de desplazamiento desplaza por primera vez cuando llega el flanco positivo de T2. Si se desea una espera,la salida Qb se conecta con la compuerta OR. Si se desean dos esperas, se conecta Qc y así sucesivamente.
10/15/2014 17 Microprocesador 8086 - Digital II
Generación de 0-7 wait states Usando una de las dos entradas RDY del 8284A
8-bit Shift Register
Jumper Selects # of Wait States
CLR shift Register: No Shifting
Requiring wait states
CLR Shift Register During T1
1
1
1 …
Efectivamente, RDY1 = (Sel. Q + RD) (cuando se accede a Un disp.de memoria +lento)
Processor
0 W
1 W
QA
QB
QC
RDY1
RD (Gated)
RD (Gated)
OR
Serial I/P
1st bus cycle state
2 W
Note: #RD,#WR,#INTA Están inactivas durante T1 Note: #RD se extiende agregando WS
#RD gated by the
for the memory device
Synchronous Shift rights
10/15/2014 18 Microprocesador 8086 - Digital II