You are on page 1of 15

Universidad Rey Juan Carlos

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES
Estructura de un computador: conceptos básicos
Luis Rincón Córcoles Licesio J. Rodríguez-Aragón

Estructura de un computador: conceptos básicos

Programa
1. 2. 3. 4. 5. 6. 7. Introducción Elementos de almacenamiento Elementos de proceso Elementos de transferencia Ciclo de instrucción y ejecución de programas Entrada / Salida Introducción a los microprocesadores

2

CERRADA. Introducción Unidades funcionales de un computador •Memoria •Unidad central de proceso (UCP) Unidad aritmético-lógica (UAL) Unidad de control (UC) •Entrada/Salida (E/S) •Interconexiones Tipos de elementos •Elementos de almacenamiento •Elementos de proceso •Elementos de transferencia UCP Memoria E/S Líneas de comunicaciones COMPUTADOR Periféricos Interconexiones 4 . STALLINGS. P. 7ª edición.A. 5ª edición. Paraninfo. Estructura y diseño de computadores. PATTERSON. Sanz y Torres. Organización y Arquitectura de Computadores. Reverté. 1999. Estructura y Tecnología de Computadores I. 1993 S. W. FELIU. V. J. 3 Estructura de un computador: conceptos básicos 1. C.L HENNESSY. 2000. 2000. Fundamentos de los computadores. UNED. DORMIDO y otros. 2000. Estructura y Tecnología de Computadores. Prentice-Hall.Estructura de un computador: conceptos básicos Bibliografía D. DE MIGUEL.

Elementos de almacenamiento Tipos de elementos de almacenamiento: •Biestables. C Q D C _ Q D Q 6 . •Consideraremos biestables D síncronos por flanco de bajada. •Registros. •Memoria. Biestable: almacena un bit.Estructura de un computador: conceptos básicos Introducción UCP MEM MEM E/S E/S Sistema de conexiones Buses Control Datos Dirección Flanco de bajada Nivel alto Sincronismo: reloj Clk Nivel bajo Flanco de subida Ciclo de reloj (medido entre dos flancos de subida) Ciclo de reloj (medido entre dos flancos de bajada) 5 Estructura de un computador: conceptos básicos 2.

por tanto no puede usarlos. Sirven como operandos implícitos o explícitos en instrucciones de máquina.Estructura de un computador: conceptos básicos Registros en un computador Registro: colección de n biestables que funcionan al unísono. Según el programador: •Registros visibles: pueden usarse directamente por el programador de bajo nivel. Agrupados en bancos de registros. 8 . Están asociados a las unidades funcionales y cumplen funciones específicas: PC. que conoce su existencia. •Entrada paralelo – salida paralelo. •Registros de propósito general: se utilizan para almacenar datos o direcciones de forma flexible. Usaremos registros con las siguientes características: •Formados por biestables D síncronos por flanco de bajada (sólo usamos la salida activa por nivel alto). •Registros transparentes: el programador desconoce su existencia. ALUOut. •La señal de carga es el reloj. MDR. etc. La unidad de control los utiliza para sus propios propósitos. Registro n bits Control n-1 Entrada 1 0 Salida 7 Estructura de un computador: conceptos básicos Tipos de registros en un computador Según el propósito: •Registros de propósito específico: se utilizan para una tarea determinada. IR.

C_Dato C_Dato_A Dato n Dato_A n Activo Inactivo C_Dato_B Dato_B n 9 Estructura de un computador: conceptos básicos Memoria •Formada por gran cantidad de elementos de almacenamiento de 1 bit. Tiempo de ciclo (ciclo de memoria): tiempo desde que se solicita una operación hasta que se puede solicitar la siguiente. la conexión entre la entrada y la salida desaparece (estado de alta impedancia). •Definiciones: Palabra de memoria: número de bits que se tratan simultáneamente en cada acceso a memoria. Tiene una señal de control que permite que la información entrante le atraviese si está activa. –La lectura y la escritura pueden tener diferentes duraciones. –En memorias estáticas. el tiempo de acceso y el de ciclo coinciden. 10 . •Operaciones con memorias: Lectura Escritura Refresco (sólo en memorias dinámicas). pero si dicha señal se desactiva. •Tipos de memorias RAM: estáticas y dinámicas. Tiempo de acceso a memoria: tiempo transcurrido desde que se solicita una operación a la memoria hasta que se completa.Estructura de un computador: conceptos básicos Tipos de registros en un computador Buffer triestado: se utiliza para conectar la salida de los elementos a los caminos comunes de interconexión.

Enlaces serie: constan de una sola línea para transmitir datos. Enlaces dedicados 12 . •Tipos de enlaces Dedicados: entre dos elementos. de desplazamiento. Enlaces paralelos: constan de n canales o líneas para transmitir datos de n bits en paralelo. –Paralelo. Funcionamiento: –Serie. de rotación.Estructura de un computador: conceptos básicos 3. –De propósito específico. y los bits se envían uno tras otro. Operaciones realizadas: –De própósito general. •Tipos de operadores: Número de operandos: –Monádico. Elementos de proceso Realizan las operaciones aritméticas. Elementos de transferencia •Enlaces Conectan elementos entre los que se pretende intercambiar información. lógicas. 3 ALU control Zero ALU ALU result 11 Estructura de un computador: conceptos básicos 4. etc. requeridas para ejecutar las instrucciones de los programas.. Buses: compartidos por múltiples elementos. –Diádico.

lectura o escritura de memoria. etc. 14 .Estructura de un computador: conceptos básicos Buses BUS Bus de datos: transferencia de datos entre elementos. 13 Estructura de un computador: conceptos básicos Ejemplo de conexión en bus Módulo con conexión bidireccional Módulo con entrada desde el bus Módulo con salida hacia el bus Bus Cuando varios elementos pueden poner información en un mismo enlace (bus). • Bus de control: transferencia de señales de control (carga. selección. ∗ Ancho del bus de direcciones: fija el tamaño máximo de la memoria.) Bus del sistema: constituido por los tres buses anteriores (datos. • Bus de direcciones: transferencia de direcciones. ∗ Ancho del bus de datos: ancho del computador (suele coincidir también con el ancho de la palabra de memoria). direcciones y control). es preciso interponer buffers triestado con señales de control excluyentes para evitar que dos elementos intenten enviar información a la vez.

•Una instrucción de máquina ocupará un número de bits equivalente a una palabra de memoria o un múltiplo de una palabra. –Registro-registro. Los campos de operandos no suelen contener los datos en sí. –Registro no transparente. restar. •Los datos del programa se encontrarán también almacenados en la memoria principal. –Registros: contienen datos temporales intermedios. –Lógicas. •Los campos de operandos indican cuáles son los datos sobre los que hay que realizar la operación. A veces los campos de operando no caben dentro de una sola palabra junto con el código de operación (palabras de extensión o ampliación). 15 Estructura de un computador: conceptos básicos Instrucciones de máquina •Una instrucción de máquina consta de varios bits agrupados en campos: Un código de operación (también llamado código de instrucción). mover datos. sino que indican cómo encontrar los datos (modos de direccionamiento). •Tipos de microoperaciones: Transferencia. Origen o fuente: los que participan en el cálculo. etc).Estructura de un computador: conceptos básicos 5. •Un programa se compone de una secuencia de instrucciones. 16 . –Memoria. Proceso: a través de la UAL. Uno o varios operandos (o incluso ninguno). –Registro-memoria. •En el modelo Von Neumann. –Aritméticas. •El código de operación indica qué tiene que hacer la instrucción (sumar. un programa se encuentra listo para ser ejecutado cuando sus instrucciones se encuentran almacenadas consecutivamente en memoria principal. Ciclo de instrucción y ejecución de programas •Microoperaciones: operaciones elementales que pueden realizarse con los elementos de la ruta de datos. –Instrucción (operando inmediato). Destino: donde se almacena el resultado.

trampas). –Resolución de situaciones particulares (interrupciones. Bus de control IR Señales de control internas para la CPU Indicadores de estado Señales de control hacia el bus Señales de control desde el bus Unidad de control Reloj (Clk) 17 Estructura de un computador: conceptos básicos Unidad aritmético-lógica (UAL) •La UAL es el elemento de proceso que realiza la operación requerida en la instrucción.Estructura de un computador: conceptos básicos Unidad de control (UC) •La UC es la unidad funcional que organiza y coordina a los restantes elementos del computador. •Para ejecutar un programa. –La ejecución de un programa se compone de una secuencia de ciclos de instrucción. –Ejecución de las instrucciones.) •Unidad central de proceso: UCP = UC + UAL Registros Registros Unidad de control ALU Indicadores Registros 18 . •Funciones de la UC: –Lectura de las instrucciones (fetching). etc. –Para ello utiliza las señales de control. •La UAL se compone del operador y de sus registros y caminos de transferencia y elementos asociados (banco de registros. –Decodificación de las instrucciones. la UC va leyendo y ejecutando las instrucciones una por una. acumulador.

Contador de fases y señal de reloj. Cada fase del ciclo de instrucción consta de una o varias microoperaciones. Registro de estado. •Fases en un ciclo de instrucción: 1) Lectura y decodificación de la instrucción en memoria. la UC cuenta con la siguiente información: Instrucción en ejecución (inicialmente en memoria y apuntada por el PC). Un ciclo de instrucción consta de varias fases (lectura. Señales de control externas (emitidas por otras unidades funcionales).Estructura de un computador: conceptos básicos Ciclo de instrucción •Para llevar a cabo un ciclo de instrucción. 3) Ciclo de interrupción. 19 Estructura de un computador: conceptos básicos Ejecución de programas: resumen • Un programa consta de un conjunto de instrucciones y datos almacenados en memoria principal. 20 • • • • • . ejecución). La ejecución de un programa implica la ejecución de sus instrucciones en secuencia. Las microoperaciones se pueden solapar en el tiempo si no se estorban unas a otras. decodificación. 2) Ejecución de la instrucción. La ejecución de una instrucción se denomina ciclo de instrucción.

UNIDAD DE CONTROL PUNTERO E / S PERIFÉRICOS 21 Estructura de un computador: conceptos básicos Esquemas de entrada / salida • Bus dedicado (E/S aislada).Estructura de un computador: conceptos básicos 6. ARQUITECTURA VON NEUMANN PERIFÉRICOS REGISTROS MEMORIA PRINCIPAL CIRCUITOS U N I D A D D E PERIFÉRICOS PERIFÉRICOS U.A. Entrada / Salida El computador se comunica con el exterior mediante dispositivos de E/S. • Bus único (E/S localizada en memoria). Espacio de direcciones único para memoria y E/S. Buses diferentes para acceder a memoria y a E/S. 22 .L. Espacios de direcciones diferentes para memoria y E/S.

– Interrupciones. Todos los computadores modernos cuentan con las tres alternativas.Estructura de un computador: conceptos básicos Ejemplo: conexión mediante bus único 23 Estructura de un computador: conceptos básicos Gestión de entrada / salida • Alternativas para gestionar la entrada/salida: – Espera activa (E/S controlada por programa). • 24 . – DMA (robo de ciclo).

Tablas de anticipación de saltos. Memoria caché.Estructura de un computador: conceptos básicos Ciclo de instrucción • La última fase del ciclo de instrucción consiste en que la UC comprueba si hay alguna petición de interrupción pendiente sin atender. Los computadores actuales se basan en microprocesadores. Unidad aritmético-lógica y banco de registros. 26 • • • . Limitaciones en la tecnología de microprocesadores: Tecnología de integración (número de transistores). Buses internos de datos. Introducción a los microprocesadores • Microprocesador: UCP en una sola pastilla incluyendo: Unidad de control. se produce un salto a la rutina de servicio de interrupción. Actualmente los microprocesadores incluyen: Unidades de proceso para datos en coma flotante. direcciones y control. Suelen utilizarse para realizar llamadas explícitas desde los programas a los servicios del sistema operativo. Múltiples unidades de ejecución de instrucciones. Si es así. Unidades de lectura anticipada de instrucciones. • • 25 Estructura de un computador: conceptos básicos 7. Trampas: excepciones generadas explícitamente por los programas (instrucción TRAP #n). Tecnología de encapsulamiento (número de patillas).

68000. 8080. Microprocesadores de 32 bits: 68020. R2000. Microprocesadores de 8 bits: 8008. R12000. DEC. 80486. MIPS. etc. 80286. R3000. Texas Instruments. R5000. Tamaño de la memoria caché si la incluye. 27 Estructura de un computador: conceptos básicos Microprocesadores más conocidos • Fabricantes más conocidos: Intel. K7. 6800. Número de transistores. K6. Pentium. Microprocesadores de 4 bits: 4004. Zilog. 68030. 68040. PowerPC. Itanium. Tamaño de los registros. Z-80. 8085. R10000.Estructura de un computador: conceptos básicos Características de los microprocesadores • • • • • • • • • Repertorio de instrucciones ejecutado. Anchura de los buses internos. SPARC. Motorola. Microprocesadores de 16 bits: 8086. Microprocesadores de 64 bits: Alpha. IBM. que normalmente coincide con el ancho del bus de datos. Número de patillas del encapsulamiento. Frecuencia del reloj. Hewlett-Packard. Fujitsu. R4000. AMD. Tecnología de fabricación. 28 • • • • • . Ancho de un microprocesador: ancho de su operador. 80386. UltraSPARC.

Ejemplos: 8051. así como varios registros. La memoria incluye parte EPROM y parte RAM. Procesadores de entrada/salida. • Procesadores digitales de señal (DSP): • Otros procesadores de propósito específico: 29 .Estructura de un computador: conceptos básicos Microcontroladores y procesadores de propósito específico • Microcontroladores: Son computadores en una sola pastilla. Controladores de red local. Ejemplo: familia TMS320 de Texas Instruments. vídeo. Suelen incorporar memorias caché y tratamiento separado de instrucciones y datos (arquitectura Harvard). incluyendo memoria e interfaz para entrada / salida. Adaptados para realizar tratamiento de señales digitales (audio. Diseñados para ejecutar rápidamente bucles muy repetitivos con operaciones de suma y producto con accesos a estructuras de datos de tipo vector. Aceleradores de gráficos. PIC 16X84. etc).