Tema 2
Introducción
¿Qué es un computador?
Un computador es una máquina que procesa información de forma automática.
¿Quién es Von Neumann?
Von Neumann es una persona que estableció la arquitectura básica de los computadores digitales en 1945.
¿El modelo de arquitectura de Von Neumann en cuántos elementos se compone y cuáles son?
El modelo de arquitectura de Von Neumann se compone de 4 elementos:
- Unidad Central de Proceso (CPU):
- Unidad Aritmético Lógica (ALU)
- Unidad de Control
- Memoria principal
- Unidad de entrada/salida
- Buses de comunicación
¿Qué es lo que caracteriza a la arquitectura Von Neumann sobre otras arquitecturas?
La arquitectura Von Neumann se caracteriza por disponer de una sola memoria principal donde se almacenan datos e instrucciones.
¿Cómo se accede a la memoria principal de la arquitectura de Von Neumann donde se almacenan datos e instrucciones?
Se accede a dicha memoria a través de un sistema de buses único (direcciones, datos y control).
¿Qué es la Unidad Central de Proceso (CPU)?
La CPU es una unidad activa que se encarga de interpretar y ejecutar las instrucciones contenidas en los programas. Está formada por:
- Unidad de control (UC): Es la parte más compleja de la CPU. Su función consiste en buscar la instrucción en la memoria principal, interpretarla (decodificarla) y ejecutarla.
- Unidad Aritmético Lógica (ALU): Esta unidad realiza operaciones aritméticas y lógicas básicas.
- Reloj: Es la frecuencia del procesador que marca el ritmo de ejecución de la instrucción en curso en la CPU.
- Registro de instrucción (IR): Procedente de la memoria, guarda la instrucción que se va a ejecutar.
- Contador de Programa (PC): Registra la dirección de la siguiente instrucción a ejecutar, es decir, apunta a la siguiente instrucción que hay que ejecutar.
- Registro de Estado (SR): Guarda información de la última operación que realiza la ALU.
- ZF=1 si el resultado de la última operación ha sido NULO.
- CF=1 si el resultado de la última operación ha provocado ACARREO.
- OF=1 si el resultado de la última operación ha provocado OVERFLOW.
- SF=1 si el resultado de la última operación ha provocado NEGATIVO.
- Banco de Registros Generales: Almacén de “corto plazo”. Datos intermedios. Su número depende del modelo de procesador.
- Registro MAR (Memory Address Register): Registro que almacena la dirección del dato o instrucción a la que se está accediendo en memoria. En el caso de las instrucciones, su valor se carga desde el registro de PC.
- Registro MDR (Memory data Register): Es un registro donde se guardan los datos/instrucciones leídos de la memoria y representa la interfaz entre la memoria y el resto de los registros de la CPU.
- Registros temporales de la ALU son dos:
- Registro TMPE: Almacena uno de los dos operandos de entrada que intervienen en la operación que va a realizar la ALU.
- Registro TMPS: Almacena el resultado de la operación realizada por la ALU.
¿Cuáles son las etapas de la ejecución de una instrucción?
BÚSQUEDA DE LA INSTRUCCIÓN: En el registro MAR se deja el contenido del registro PC. Con esta dirección se accede a memoria. Se obtiene la instrucción en el registro MDR y luego se mueve al registro IR.
DECODIFICACIÓN Y BÚSQUEDA DE OPERANDOS: La UC lee el código de la instrucción del registro IR para saber qué hacer.
EJECUCIÓN DE LA INSTRUCCIÓN: Puede incluir un acceso a memoria. Entra en funcionamiento la ALU si es una instrucción aritmético-lógica o se accede a memoria a través de los registros MAR y MDR si es una instrucción de movimiento con un acceso (lectura/escritura) a datos de memoria.
¿Qué tipos de instrucciones hay?
INSTRUCCIONES DE TRANSFERENCIA DE DATOS: Mueven datos entre los registros internos de la CPU o entre los registros de la CPU y la memoria.
INSTRUCCIONES ARITMÉTICO-LÓGICAS: ADD, SUB, AND, OR, XOR, NOT, etc.
INSTRUCCIONES DE CONTROL O SALTO: Provocan un cambio del contador de programa (PC).
¿Qué es la memoria?
La memoria es un elemento pasivo que almacena datos/instrucciones, sin alterarlos, en un conjunto de celdas direccionables por el procesador, para su lectura o escritura. Encontramos memorias en el interior de la CPU (registros), junto a ella en la misma placa (memoria principal) y en otros dispositivos de almacenamiento (memoria secundaria).
¿Qué tipos de memorias hay?
VOLÁTILES:
RAM estática o SRAM: utilizadas en memorias caché dentro de los chips de los procesadores para ganar en rapidez y eficiencia. Varios Kbytes.
RAM dinámicas o DRAM: varios tipos como la SDRAM y la DDR-SDRAM o DDR. Varios Mbytes o incluso Gbytes.
NO VOLÁTILES:
ROM: programadas (escritas) en fábricas.
PROM: programables una sola vez.
EPROM: borrables mediante luz ultravioleta.
EEPROM: borrado eléctrico (BIOS).
FLASH EPROM: similares a EEPROM con más fácil borrado.
¿Qué es la capacidad de una memoria?
La capacidad de una memoria es el número de palabras o bytes (8 bits, 16 bits, 32 bits, …) que pueden almacenarse.
En el diseño de un computador, ¿cuáles son los usos de los diferentes tipos de memoria?
Los usos de los diferentes tipos de memoria dependen fundamentalmente de 4 parámetros que son: velocidad, coste, capacidad y número de accesos.
¿Qué son los dispositivos de entrada y salida?
Son elementos que comunican el computador con el exterior.
¿Qué es un módulo de E/S o controlador (adaptador)?
Un módulo de E/S o controlador permite la comunicación CPU-Periféricos y puede gestionar dispositivos externos de varios fabricantes. Es la interfaz entre la CPU y los dispositivos externos.
¿Qué tipos de accesos de la CPU al módulo de E/S hay?
E/S común o mapeada en memoria: La CPU ve los registros del controlador o módulo de E/S como una extensión de la memoria. No hace diferenciación, todo es memoria.
E/S aislada o separada: La CPU tiene instrucciones especiales para acceder a los periféricos. Se distingue entre un acceso a datos de memoria y un acceso a datos de un periférico.
¿Qué tipos de gestión de la E/S hay?
Mediante E/S programada o por encuesta (‘polling’): La CPU inicia y realiza la transferencia. La CPU interroga constantemente al registro de estado del módulo de E/S para saber si tiene datos o si está listo para la transmisión de nuevos datos.
Mediante Interrupciones: La CPU realiza la transferencia a petición del periférico. El módulo de E/S inicia la transferencia con una petición de interrupción a la CPU desde los periféricos. La CPU responde deteniendo la ejecución normal del programa que estuviera procesando y lanzando un subprograma.
Mediante Acceso Directo a Memoria (DMA): El controlador de E/S se encarga de realizar la transferencia. La CPU programa el DMA, que es un pequeño procesador dedicado para las transferencias masivas de datos entre la memoria y el dispositivo de E/S (sin la intervención de la CPU).
¿Cuál es el inconveniente de la gestión de la E/S programada o por encuesta?
El inconveniente que tiene es que malgasta el tiempo de proceso en comprobar continuamente el estado del periférico.
¿Qué son los buses?
Los buses son puentes de comunicación entre la CPU, MEMORIA y los dispositivos de E/S.
¿Cuáles son la clasificación de buses que hay?
- SERIE: son buses que transmiten bit a bit.
- PARALELO: son buses que transmiten varios bits a la vez.
- MULTIPLEXADOS: son buses que realizan diferentes tareas.
- NO MULTIPLEXADOS o DEDICADOS: es un bus compartido para direcciones y datos, lo que ahorra en hardware y costes.
- CENTRALIZADOS: es un dispositivo que gestiona el uso del bus.
- DISTRIBUIDOS: este tipo de bus requiere de un proceso de arbitrio para resolver conflictos cuando dos dispositivos quieren utilizar el bus al mismo tiempo.
- SÍNCRONOS: se transmite el reloj para sincronizar emisor-receptor.
- ASÍNCRONOS: los asíncronos requieren que los relojes de todos los dispositivos que intervienen en la comunicación trabajen a la misma frecuencia, así como un protocolo previo para sincronizarlos.
JERARQUÍA DE BUSES:
- Bus LOCAL: es el bus que tiene mayor velocidad.
- Bus SISTEMA
- Bus EXPANSIÓN: es el bus que tiene menor velocidad.