Instituto Tecnológico de Morelia Arquitectura de Computadoras Unidad 1b Programa 1.2.2 Memoria. 1.2.2.1 Conceptos de manejo de memoria. 1.2.2.2 Memoria principal semiconductora. 1.2.2.3 Memoria cache. 1.2.3 Dispositivos de Entrada/Salida. 1.2.3.1 Módulos de entrada salida. 1.2.3.2 Entrada y salida programada 1.2.3.3 Entrada y salida mediante interrupciones 1.2.3.4 Acceso directo a la memoria 1.2.3.5 Canales y procesadores de entrada y salida 1.2.4 Buses Tipos de buses Estructura de los buses Jerarquía de buses 1.2.5 Interrupciones 1.2.2 Memorias 1.2.2.1 Conceptos de manejo de memoria Conjunto de celdas de almacenamiento y sus circuitos asociados Una palabra es el conjunto de bits que puede leerse o escribirse en una sola operación Un grupo de 8 bits es un byte. Un grupo de 4 bits un Nible Los tamaños de palabra en las memorias suelen ser múltiplos de 8 bis El tamaño de la palabra coincide con el numero de terminales de datos que poseen. Memorias (2) Las lineas de direcciones sirven para escoger en cual de todas las palabras de la memoria se va a guardar o a leer un dato El número de lineas de direcciones se determina por el tamaño de la memoria T=2N T - Número de palabras o localidades N - Número de lineas de direcciones Es común que el tamaño de las memorias se exprese como un múltiplo de las siguientes unidades: 1K = 2^10=1024; 1M = 2^20 = 1024*1024, 1G=2^30 = 1024*1024 *1024 Clasificación de Memorias Volátiles: pierden la información cuando son desenergizadas (RAM) RAM estatica: Se forma con flip-flops. Rápida pero cara. RAM Dinámica: Se almacenan los datos en la capacitancia parásita de un transistor. Como el capacitor se descarga necesita reescribirse el dato con frecuencia. Alta densidad, baratas pero lentas. No volátiles: conservan la información aún sin suministro de energía ROM: Se construyen con diodos, datos grabados por el fabricante PROM: Los datos se graban quemando fusibles. EPROM: Similares a la DRAM, guardan los datos en la carga almacenada en la compuerta flotante de un MOSFET especial. Se borran con Luz UV EEPROM y FLASH: Se borran eléctricamente 1.2.3 Módulos de entrada y salida Proporcionan a la computadora capacidad de interactuar con el mundo exterior Ejemplos clásicos: teclado, ratón, monitor. Ejemplos no tan conocidos: puerto paralelo, puerto serie, temporizador, convertidor analógico – digital, convertidor digital analógico 1.2.3 Dispositivos de I/O Arquitecturas (Técnicas de interfaz) Escrutinio (Polling) – se revisa si el dispositivo requiere atención periódicamente Interrupciones – El dispositivo llama a una rutina de atención por medio de un mecanismo de hardware especial, interrumpiendo la ejecución del programa principal Acceso directo a memoria (DMA Direct Memory Access) El dispositivo de entrada/salida toma el control del Bus del procesador y transfiere los datos la memoria directamente. Escrutinio Operación de entrada: while((Registro&Bandera)==0); Entrada=Registro2; El dispositivo esta listo? No Si Ejecutar operación de entrada y salida Operación de salida: while((Registro&Bandera)==0); Registro2=salida; Interrupciones Programa Principal Void main() { //habilitar mascaras de // interrupción local // y global While(1){ ... } } Rutina de atención de interrupciones ISR(vector) { //operación de entrada //o salida } Acceso directo a memoria El controlador del sistema operativo envía la dirección de memoria en donde debe empezar a leerse o escribirse los datos y el número total de palabras a transferir al controlador de DMA y al periférico a trabajar El procesador se detiene y cede el control del bus al controlador de DMA, que realiza la operación de entrada o salida Al terminar, el controlador de DMA regresa el control del bus al procesador Tipos Dispositivos orientados a caracteres – Transfieren cantidades pequeñas de información a la vez, comúnmente por medio de escrutinio o interrupciones, el software los mantiene en un buffer hasta que son procesados por el Software Dispositivos orientados a bloques – Transfieren la información por bloques a la memoria, usando DMA. Es común que contengan algún tipo de memoria interna para usar como buffer.