Estructura de un computador frankie ruiz (1)
-
Upload
frankieruiz -
Category
Technology
-
view
42 -
download
0
Transcript of Estructura de un computador frankie ruiz (1)
Universidad
Rey Juan Carlos
ESTRUCTURA Y TECNOLOGESTRUCTURA Y TECNOLOGÍÍA DE A DE COMPUTADORESCOMPUTADORES
Estructura de un computador:conceptos básicos
Luis Rincón CórcolesLicesio J. Rodríguez-Aragón
Estructura de un computador: conceptos básicos
2
1. Introducción
2. Elementos de almacenamiento
3. Elementos de proceso
4. Elementos de transferencia
5. Ciclo de instrucción y ejecución de programas
6. Entrada / Salida
7. Introducción a los microprocesadores
Programa
Estructura de un computador: conceptos básicos
3
D.A. PATTERSON, J.L HENNESSY. Estructura y diseño de computadores.Reverté, 2000.
P. DE MIGUEL. Fundamentos de los computadores. 7ª edición, Paraninfo, 1999.
C. CERRADA, V. FELIU. Estructura y Tecnología de Computadores I. UNED, 1993
S. DORMIDO y otros. Estructura y Tecnología de Computadores. Sanz y Torres, 2000.
W. STALLINGS. Organización y Arquitectura de Computadores. 5ª edición, Prentice-Hall, 2000.
Bibliografía
Estructura de un computador: conceptos básicos
4
Periféricos
Líneas decomunicaciones
COMPUTADOR
Interconexiones
Memoria E/S
UCP
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
1. Introducción
Estructura de un computador: conceptos básicos
5
Clk
Nivel alto
Nivel bajo
Flanco desubida
Flanco debajada
Ciclo de reloj(medido entre dosflancos de bajada)
Ciclo de reloj(medido entre dosflancos de subida)
Sistema de conexiones
Sincronismo: reloj
MEMUCP
Control
Datos
DirecciónB
uses
MEM E/S E/S
Introducción
Estructura de un computador: conceptos básicos
6
2. Elementos de almacenamientoTipos de elementos de almacenamiento:
•Biestables.•Registros.•Memoria.
Biestable: almacena un bit.•Consideraremos biestables D síncronos por flanco de bajada.
Q
C
D
_Q
D
C
Q
Estructura de un computador: conceptos básicos
7
Registro: colección de n biestables que funcionan al unísono.
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).•Entrada paralelo – salida paralelo.•La señal de carga es el reloj.
Registro Entrada
Salida
Control
n bits
01n-1
Registros en un computador
Estructura de un computador: conceptos básicos
8
Según el propósito:•Registros de propósito específico: se utilizan para una tarea determinada.
Están asociados a las unidades funcionales y cumplen funciones específicas: PC, MDR, IR, ALUOut, etc.
•Registros de propósito general: se utilizan para almacenar datos o direcciones de forma flexible.
Agrupados en bancos de registros.
Según el programador:•Registros visibles: pueden usarse directamente por el programador de bajo nivel, que conoce su existencia.
Sirven como operandos implícitos o explícitos en instrucciones de máquina.
•Registros transparentes: el programador desconoce su existencia, por tanto no puede usarlos.
La unidad de control los utiliza para sus propios propósitos.
Tipos de registros en un computador
Estructura de un computador: conceptos básicos
9
Buffer triestado: se utiliza para conectar la salida de los elementos a los caminos comunes de interconexión.
Tiene una señal de control que permite que la información entrante le atraviese si está activa, pero si dicha señal se desactiva, la conexión entre la entrada y la salida desaparece (estado de alta impedancia).
Dato n
C_Dato
Activo Inactivo
Dato_A n
C_Dato_A
Dato_B n
C_Dato_B
Tipos de registros en un computador
Estructura de un computador: conceptos básicos
10
•Formada por gran cantidad de elementos de almacenamiento de 1 bit.
•Tipos de memorias RAM: estáticas y dinámicas.
•Operaciones con memorias:
Lectura
Escritura
Refresco (sólo en memorias dinámicas).
•Definiciones:
Palabra de memoria: número de bits que se tratan simultáneamente en cada acceso a memoria.
Tiempo de acceso a memoria: tiempo transcurrido desde que se solicita una operación a la memoria hasta que se completa.
–La lectura y la escritura pueden tener diferentes duraciones.
Tiempo de ciclo (ciclo de memoria): tiempo desde que se solicita una operación hasta que se puede solicitar la siguiente.
–En memorias estáticas, el tiempo de acceso y el de ciclo coinciden.
Memoria
Estructura de un computador: conceptos básicos
11
Realizan las operaciones aritméticas, lógicas, de desplazamiento, de rotación, etc., requeridas para ejecutar las instrucciones de los programas.
•Tipos de operadores:Número de operandos:
–Monádico.–Diádico.
Funcionamiento:–Serie.–Paralelo.
Operaciones realizadas:–De própósito general.–De propósito específico.
3. Elementos de proceso
ALU control
ALUresult
ALUZero
3
Estructura de un computador: conceptos básicos
12
•Enlaces
Conectan elementos entre los que se pretende intercambiar información.
Enlaces paralelos: constan de n canales o líneas para transmitir datos de n bits en paralelo.
Enlaces serie: constan de una sola línea para transmitir datos, y los bits se envían uno tras otro.
•Tipos de enlaces
Dedicados: entre dos elementos.
Buses: compartidos por múltiples elementos.
Enlaces dedicados
4. Elementos de transferencia
Estructura de un computador: conceptos básicos
13
Bus de datos: transferencia de datos entre elementos.
∗ Ancho del bus de datos: ancho del computador (suele coincidir también con el ancho de la palabra de memoria).
• Bus de direcciones: transferencia de direcciones.
∗ Ancho del bus de direcciones: fija el tamaño máximo de la memoria.
• Bus de control: transferencia de señales de control (carga, selección, lectura o escritura de memoria, etc.)
BUS
Bus del sistema: constituido por los tres buses anteriores (datos, direcciones y control).
Buses
Estructura de un computador: conceptos básicos
14
Cuando varios elementos pueden poner información en un mismo enlace (bus), es preciso interponer buffers triestado con señales de control excluyentes para evitar que dos elementos intenten enviar información a la vez.
Módulo conconexión
bidireccional
Bus
Módulo conentrada desde el
bus
Módulo con salidahacia el bus
Ejemplo de conexión en bus
Estructura de un computador: conceptos básicos
15
•Microoperaciones: operaciones elementales que pueden realizarse con los elementos de la ruta de datos.
•Tipos de microoperaciones:Transferencia.
–Registro-registro.–Registro-memoria.
Proceso: a través de la UAL.–Lógicas.–Aritméticas.
•Un programa se compone de una secuencia de instrucciones.
•En el modelo Von Neumann, un programa se encuentra listo para ser ejecutado cuando sus instrucciones se encuentran almacenadas consecutivamente en memoria principal.
•Los datos del programa se encontrarán también almacenados en la memoria principal.
–Registros: contienen datos temporales intermedios.
5. Ciclo de instrucción y ejecución de programas
Estructura de un computador: conceptos básicos
16
•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).Uno o varios operandos (o incluso ninguno).
•El código de operación indica qué tiene que hacer la instrucción (sumar, restar, mover datos, etc).
•Los campos de operandos indican cuáles son los datos sobre los que hay que realizar la operación.
Origen o fuente: los que participan en el cálculo.Destino: donde se almacena el resultado.Los campos de operandos no suelen contener los datos en sí, sino que indican cómo
encontrar los datos (modos de direccionamiento).–Registro no transparente.–Memoria.–Instrucción (operando inmediato).
•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.
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).
Instrucciones de máquina
Estructura de un computador: conceptos básicos
17
•La UC es la unidad funcional que organiza y coordina a los restantes elementos del computador.
–Para ello utiliza las señales de control.
•Funciones de la UC:–Lectura de las instrucciones (fetching).–Decodificación de las instrucciones.–Ejecución de las instrucciones.–Resolución de situaciones particulares (interrupciones, trampas).
•Para ejecutar un programa, la UC va leyendo y ejecutando las instrucciones una por una.
–La ejecución de un programa se compone de una secuencia de ciclos de instrucción.
Unidad de control (UC)
Unidad decontrol
Bu
s d
e c
on
tro
l
Señales de controlhacia el bus
Señales de controldesde el bus
Señales de controlinternas para la CPU
IR
Indicadores de estado
Reloj (Clk)
Estructura de un computador: conceptos básicos
18
•La UAL es el elemento de proceso que realiza la operación requerida en la instrucción.
•La UAL se compone del operador y de sus registros y caminos de transferencia y elementos asociados (banco de registros, acumulador, etc.)
•Unidad central de proceso: UCP = UC + UAL
Unidad de control
Registros
Indicadores
Registros
Registros
ALU
Unidad aritmético-lógica (UAL)
Estructura de un computador: conceptos básicos
19
•Para llevar a cabo un ciclo de instrucción, la UC cuenta con la siguiente información:
Instrucción en ejecución (inicialmente en memoria y apuntada por el PC).
Registro de estado.
Contador de fases y señal de reloj.
Señales de control externas (emitidas por otras unidades funcionales).
•Fases en un ciclo de instrucción:
1) Lectura y decodificación de la instrucción en memoria.
2) Ejecución de la instrucción.
3) Ciclo de interrupción.
Ciclo de instrucción
Estructura de un computador: conceptos básicos
20
• Un programa consta de un conjunto de instrucciones y datos almacenados en memoria principal.
• La ejecución de un programa implica la ejecución de sus instrucciones en secuencia.
• La ejecución de una instrucción se denomina ciclo de instrucción.
• Un ciclo de instrucción consta de varias fases (lectura, decodificación, ejecución).
• Cada fase del ciclo de instrucción consta de una o varias microoperaciones.
• Las microoperaciones se pueden solapar en el tiempo si no se estorban unas a otras.
Ejecución de programas: resumen
Estructura de un computador: conceptos básicos
21
ARQUITECTURA VON NEUMANN
U.A.L.
REGISTROS
CIRCUITOS
MEMORIA PRINCIPAL
UNIDAD DE CONTROL PUNTERO
PERIFÉRICOS
PERIFÉRICOS
PERIFÉRICOS
PERIFÉRICOS
UNIDAD
DE
E/S
El computador se comunica con el exterior mediante dispositivos de E/S.
6. Entrada / Salida
Estructura de un computador: conceptos básicos
22
• Bus dedicado (E/S aislada).
Buses diferentes para acceder a memoria y a E/S.
Espacios de direcciones diferentes para memoria y E/S.
• Bus único (E/S localizada en memoria).
Espacio de direcciones único para memoria y E/S.
Esquemas de entrada / salida
Estructura de un computador: conceptos básicos
23
Ejemplo: conexión mediante bus único
Estructura de un computador: conceptos básicos
24
• Alternativas para gestionar la entrada/salida:
– Espera activa (E/S controlada por programa).
– Interrupciones.
– DMA (robo de ciclo).
• Todos los computadores modernos cuentan con las tres alternativas.
Gestión de entrada / salida
Estructura de un computador: conceptos básicos
25
• 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.
• Si es así, se produce un salto a la rutina de servicio de interrupción.
• Trampas: excepciones generadas explícitamente por los programas (instrucción TRAP #n).
Suelen utilizarse para realizar llamadas explícitas desde los programas a los servicios del sistema operativo.
Ciclo de instrucción
Estructura de un computador: conceptos básicos
26
7. Introducción a los microprocesadores
• Microprocesador: UCP en una sola pastilla incluyendo:
Unidad de control.
Unidad aritmético-lógica y banco de registros.
Buses internos de datos, direcciones y control.
• Limitaciones en la tecnología de microprocesadores:
Tecnología de integración (número de transistores).
Tecnología de encapsulamiento (número de patillas).
• Actualmente los microprocesadores incluyen:
Unidades de proceso para datos en coma flotante.
Múltiples unidades de ejecución de instrucciones.
Memoria caché.
Unidades de lectura anticipada de instrucciones.
Tablas de anticipación de saltos.
• Los computadores actuales se basan en microprocesadores.
Estructura de un computador: conceptos básicos
27
Características de los microprocesadores
• Repertorio de instrucciones ejecutado.
• Frecuencia del reloj.
• Anchura de los buses internos.
• Tamaño de los registros.
• Tamaño de la memoria caché si la incluye.
• Tecnología de fabricación.
• Número de transistores.
• Número de patillas del encapsulamiento.
• Ancho de un microprocesador: ancho de su operador,
que normalmente coincide con el ancho del bus de
datos.
Estructura de un computador: conceptos básicos
28
Microprocesadores más conocidos
• Fabricantes más conocidos: Intel, AMD, Motorola, MIPS, IBM, DEC,
Zilog, Hewlett-Packard, Fujitsu, Texas Instruments, etc.
• Microprocesadores de 4 bits: 4004.
• Microprocesadores de 8 bits: 8008, 8080, 6800, Z-80, 8085.
• Microprocesadores de 16 bits: 8086, 68000, 80286.
• Microprocesadores de 32 bits: 68020, 68030, 68040, 80386, 80486,
Pentium, PowerPC, K6, K7, R2000, R3000.
• Microprocesadores de 64 bits: Alpha, SPARC, UltraSPARC, R4000,
R5000, R10000, R12000, Itanium.
Estructura de un computador: conceptos básicos
29
Microcontroladores y procesadores de propósito específico
• Microcontroladores:Son computadores en una sola pastilla, incluyendo memoria e interfaz para
entrada / salida.
La memoria incluye parte EPROM y parte RAM, así como varios registros.
Ejemplos: 8051, PIC 16X84.
• Procesadores digitales de señal (DSP):Adaptados para realizar tratamiento de señales digitales (audio, vídeo, etc).
Diseñados para ejecutar rápidamente bucles muy repetitivos con operaciones de
suma y producto con accesos a estructuras de datos de tipo vector.
Suelen incorporar memorias caché y tratamiento separado de instrucciones y
datos (arquitectura Harvard).
Ejemplo: familia TMS320 de Texas Instruments.
• Otros procesadores de propósito específico:Procesadores de entrada/salida.
Aceleradores de gráficos.
Controladores de red local.