Acceso directo a memoria chip dma

Solo disponible en BuenasTareas
  • Páginas : 13 (3139 palabras )
  • Descarga(s) : 0
  • Publicado : 25 de mayo de 2011
Leer documento completo
Vista previa del texto
PEDRO JORGE CORONA MORENO

200537

EL CHIP DMA 8237.

12.5.1 - EL ACCESO DIRECTO A MEMORIA.

     El acceso directo a memoria es una técnica de diseño del hardware que permite a los periféricos conectados a un sistema realizar transferencias sobre la memoria sin la intervención del procesador. De esta manera, las lentas operaciones de entrada y salida de bloques de datos, se puedenrealizar en la sombra mientras la CPU se dedica a otras tareas más útiles. Como la memoria del ordenador sólo puede ser accedida a un tiempo por una fuente, en el momento en que el DMA realiza las transferencias el microprocesador se desconecta de los buses, cediéndole el control. El funcionamiento del controlador de DMA se basa en unos registros que indican la dirección de memoria a ser accedida ycuántas posiciones de memoria quedan aún por transferir. La transferencia de datos entre los periféricos y la memoria por DMA no suele efectuarse de golpe, sino más bien poco a poco, robándole algunos ciclos a la CPU. Los controladores de DMA suelen disponer de varias líneas de petición de DMA, pudiendo atender las necesidades de varios periféricos que soliciten una transferencia, quienes deben habersido diseñados expresamente para soportar el DMA.

12.5.2 - DESCRIPCIÓN DEL INTEGRADO 8237.

     El 8237 es un controlador de DMA de 4 canales programables en 3 modos diferentes, con posibilidad de ser conectado en cascada con otros de su misma especie. Además de las funciones tradicionales, el 8237 soporta también transferencias memoria-memoria, incluyendo la posibilidad de rellenar un áreade la memoria con cierto dato. La arquitectura es de 16 bits, tanto para direcciones como datos, por lo que está especialmente diseñado para sistemas basados en el Z80 y 8085; aunque puede operar también con procesadores más avanzados, como la serie 80x86, pero sin alcanzar a aprovechar todas sus posibilidades.

|CLK: |Señal de reloj básica.|
|-CS: |Línea de habilitación del chip. |
|RESET: |Esta señal provoca la limpieza de los registros de comando, estado,|
| |solicitud y los temporales; borra el banderín last/first y el |
| |contador de registro de modo; el registro de máscara se asigna para|
| |ignorar las solicitudes. El8237 queda en Ciclo Inactivo. |
|READY: |Señal que puede ser empleada para extender los pulsos de lectura y |
| |escritura en memoria del 8237 para trabajar con memorias lentas. |
|HLDA: |Hold Acknowledge, línea por la que la CPU indica que ha liberado |
| |los buses. ||DREQ0..3: |DMA Request; son 4 líneas asíncronas de petición de DMA. En el modo|
| |de prioridad fija, DREQ0 tiene la máxima y DREQ3 la mínima. Los |
| |periféricos solicitan el servicio de DMA en estas líneas y esperan |
| |a bajarlas hasta el correspondiente DACK. La polaridad de DREQ es |
| |programable. Las líneas no usadasdeben ser enmascaradas. |
|DB0..DB7: |BUS de datos bidireccional y triestado. Durante los ciclos de DMA, |
| |los 8 bits más significativos de la dirección son colocados en el |
| |bus de datos con objeto de ser almacenados en un latch exterior |
| |controlado por ADSTB. En las operaciones memoria-memoria, el bus de|
||datos recibe y envía los bytes a transferir. |
|-IOR: |I/O Read. Línea bidireccional de 3 estados. En el ciclo inactivo es|
| |una entrada empleada por la CPU para leer los registros de control;|
| |en el ciclo activo actúa como línea de salida para que el 8237 |
| |controle la lectura de datos de los...
tracking img