Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Acceso Direco Q Memoria
Acceso Direco Q Memoria
Utiliza los ciclos en que la CPU no accede a los buses. Transferencias entre perifricos y la memoria. Transferencia de bloques de memoria a memoria.
BPRI HLDA CONTROL
CPU
DMA
DATOS
BPRI HLDA
MEMORIA
DRAM EPROM
Subsistema de memoria
Dispositivos E/S
Lgica digital
CPU
A0-A23 Bus para las transferencias DMA
IOR#
A0..A3
8237-A
A4..A7 ADSTB
A8..A15 D0..D7
Controla hasta 4 canales de DMA Expandible indefinidamente Permite transferencias E/S-Memoria y Memoria-Memoria Hasta 1,6 Mbytes/s (Reloj de 5 MHz) Bloques de hasta 64 Kbytes
Smbolo Tipo
Vcc Vss CLK CS RESET READY HLDA HOLD DREQ0 DREQ3 DACK0 DACK3 A0-A3 A4-A7
Nombre
POWER GROUND
Funcin
+5 V Tierra Entrada de reloj (3 a 5 MHz) Habilitacin del CI para acceder a sus registros Inicializa el CI Extiende la duracin del ciclo de bus Confirma que la CPU ha liberado los buses
E E E E E S E
HOLD REQUEST Peticin de los buses a la CPU (BPRI) DMA REQUEST Entradas de peticin de DMA por parte de los perifricos (4 canales) Notifica concesin de ciclo DMA a los perifricos solicitantes Entradas para direccionar regs. Internos Salida de los 4 bits ms bajos de la dir. DMA 4 bits siguientes de la direccin DMA Bus de datos y direcciones multiplexado:
DMA ACKN.
E/S S
A8-A15
ADDR. BUS
E/S
(D0-D7) (DATA BUS)
Permite lectura y escritura en regs. internos Salida de byte alto de la direccin en DMA Entrada/salida de datos en memoria en las transferencias entre memoria y memoria Indicacin de captura de direccin en LATCH
ADSTB
ADDR. STROBE
Nombre
I/O READ I/O WRITE MEMORY READ
Funcin
Entrada indica lectura en regs. Internos Salida indica ciclo DMA de escritura Entrada indica escritura en regs. Internos Salida indica ciclo DMA de lectura Indica ciclo de lectura en memoria
MEMORY WRITE Indica ciclo de escritura en memoria END OF PROCESS ADDR. ENABLE Como entrada, detiene el ciclo DMA Como salida indica final del ciclo DMA Indica que se est produciencdo ciclo DMA
Contador de direcciones
UP/ DOWN
SLO ESCRITURA
ESTADO (8 bits)
COMANDOS (8 bits)
TEMPORAL (8 bits)
MSCARA (4 bits)
PETICIN (4 bits)
Lgica de seleccin
A8-A15
CS DREQ (x4)
8237 A
DACK (x4)
8 bits
LATCH 8 bit
MEMWT
MEMRD
IOWT
IORD
BUFFER
OE
A16-A23
BUFFER
A16-A23
OE
A16-A23
OE
A16-A23
OE
AEN DACK3
8237A
A0-A15
BUFFER
BUFFER
Lgica digital
DRAM
Bus de direcciones de transferencias DMA (A0 A23)
Perifrico 1
Bus de control
Bus de datos
IOWT
Perifrico 2
DACK0 DREQ0
8237
DACK1 DREQ1
1. TRANSFERENCIA SINGLE Transfiere los datos uno a uno La CPU recupera el control entre cada transferencia
2. TRANSFERENCIA BLOQUE El controlador de DMA mantiene el control de los buses hasta que se finaliza la transferencia del bloque completo. La transferencia puede interrumpirse si se activa la seal EOP.
3. TRANSFERENCIA DEMANDA Transferencia bajo control del perifrico. Se transfieren datos mientras la lnea DREQ se mantenga activa. Cuando se desactiva la seal DREQ se detiene la transferencia. Los buses pertencen al controlador mientras DREQ es activa.
MODO CASCADA Permite expandir indefinidamente el controlador 8237A Lneas HOLD y HLDA conectadas a DREQ y DACK
8237A
DREQ0 DACK0 DREQ1 DACK1 DREQ2 DACK2 DREQ3 DACK3
HOLD HLDA
8237A
DREQ0 DACK0 DREQ1 DACK1 DREQ2 DACK2 DREQ3 DACK3
HOLD HLDA
8237A
DREQ0 DACK0 DREQ1 DACK1 DREQ2 DACK2 DREQ3 DACK3
HOLD HLDA
8237A
DREQ0 DACK0 DREQ1 DACK1 DREQ2 DACK2 DREQ3 DACK3
HOLD HLDA
Copia zonas de memoria MEMORIA A MEMORIA (en desuso) Utiliza dos canales de DMA: Canal 0 como fuente Canal 1 como destino Se inicia haciendo peticin por software al canal 0 Utiliza el registro temporal como almacn El ciclo dura el doble.
AUTOINICIALIZACIN
Los registros de base (direccin inicial y palabras a transferir) conservan su valor despus de terminada la transferencia. No es necesario reinicializarlos de nuevo.
LECTURA
DIRECCIN ACTUAL CONTADOR, VALOR ACTUAL DIRECCIN ACTUAL CONTADOR, VALOR ACTUAL DIRECCIN ACTUAL CONTADOR, VALOR ACTUAL DIRECCIN ACTUAL CONTADOR, VALOR ACTUAL REGISTRO DE ESTADO
ESCRITURA
DIRECCIN BASE CONTADOR BASE DIRECCIN BASE CONTADOR BASE DIRECCIN BASE CONTADOR BASE DIRECCIN BASE CONTADOR BASE REGISTRO DE COMANDO REGISTRO DE PETICIN MSCARA SET/RESET REGISTRO DE MODO CLEAR FLIP FLOP MASTER CLEAR BORRAR REG. DE MSCARA MSCARAS INDIVIDUALES
CANAL
0 1 2 3
En direcciones 0 a 7: registros de 16 bits FLIP FLOP a 0 FLIP FLOP a 1 Conmuta automticamente Se accede al byte bajo Se accede al byte alto
FUNCIN
Habilita / deshabilita transferencias entre memoria y memoria Mantener direccin del canal 0 (Para transferir el mismo byte mltiples veces) Habilita / deshabilita el controlador DMA Temporizacin normal o comprimida Prioridad fija o rotativa No utilizado Flanco activo de DREQ (subida / bajada) Flanco activo de DACK (subida / bajada)
FUNCIN
Alcanzado fin de cuenta en canal 0 Alcanzado fin de cuenta en canal 1 Alcanzado fin de cuenta en canal 2 Alcanzado fin de cuenta en canal 3 Peticin pendiente en canal 0 Peticin pendiente en canal 1 Peticin pendiente en canal 2 Peticin pendiente en canal 3
FUNCIN
Selecciona el canal al que se refiere 00 01 Transferencia en modo VERIFY Transferencia modo ESCRITURA Transferencia modo LECTURA Ilegal Deshabilita AUTOINICIALIZACIN Habilita AUTOINICIALIZACIN Direcciones se incrementan Direcciones se decrementan Modo DEMANDA Modo SINGLE Modo BLOQUE Modo CASCADA
2,3 10 11 0 4 1 0 5 1 00 01 6,7 10 11
FUNCIN
Selecciona el canal al que se refiere 0 Activa peticin por SOFTWARE Desactiva peticin
2 1
REGISTRO de MSCARA (escritura) Puede modificarse de dos formas: A travs de la direccin 0A:
BIT
0,1
FUNCIN
Selecciona el canal al que se refiere 0 Activa mscara Desactiva mscara
2 1
FUNCIN
REGISTRO de MASTER CLEAR (escritura) Efecta el RESET de la pastilla. Similar a activar la patilla correspondiente
REGISTRO de PUESTA A 0 DEL FLIP FLOP (escritura) Pone a 0 el flip flop interno que habilita el acceso a los registros de 16 bits.
HOLD HLDA
DMA 2
DREQ0 DACK0 DREQ1 DACK1 DREQ2 DACK2 DREQ3 DACK3
CH 5 CH 6 CH 7
CPU
HOLD HLDA
Registros de pgina correspondientes: CANAL 0 1 2 3 Puerto E/S 87h 83h 81h 82h CANAL 5 6 7 Puerto E/S 8Bh 89h 8Ah
Posicin de los controladores DMA en el mapa de E/S DMA1 DMA2 Puertos: 00 a 0Fh Puertos C0h a DFh
A23 A22
8237 DMA-2
A15 (D7) A14 (D6) A13 (D5) A12 (D4) A11 (D3) A10 (D2) A9 (D1) A8 (D0) A7 A6 A5 A4 A3 A2 A1 A0
Registro de pgina