1. Programación III
Tema 2
Arquitectura del Microprocesador
Decanato de Ciencias
U.C.L.A.
2. Arquitectura del Procesador
• Contenido
– Microprocesadores
– Componentes del procesador:
• Unidad de Control
• Unidad Aritmético-lógica
• Registros
– propósitos general
– propósito específico
– Caché L1.
– Buses
• Externos
• Internos
• Tipos de Buses: Datos, Dirección y Control.
3. Arquitectura del Procesador
• Un poco de historia..
Con la aparición de las computadoras personales
(PC) y la reducción en el costo de las mismas, el
microprocesador se convirtió en uno de los dispositivos
electrónicos más importantes en la historia de la
electrónica.
Básicamente, un microprocesador es un circuito
electrónico de muy alta escala de integración, capaz
de realizar una infinidad de tareas de forma repetitiva a
velocidades muy altas. Esto se logra por medio de la
lógica dictada por un conjunto de instrucciones que el
microprocesador interpreta y ejecuta y que recibe el
nombre de programa.
4. Arquitectura del Procesador
• Un poco de historia..
Desde su aparición en 1971 el
microprocesador ha sufrido una gran cantidad
de cambios, todos ellos hacia el lado de
aumentar su capacidad y velocidad de
procesamiento.
Para poder utilizar todo el potencial que
encierra un microprocesador, es necesario
conocer y comprender su lenguaje natural,
esto es: el lenguaje ensamblador.
5. Arquitectura del Procesador
• El lenguaje ensamblador..
El lenguaje ensamblador es la forma más
básica de programar un microprocesador para
que éste sea capaz de realizar las tareas o los
cálculos que se le requieran.
El lenguaje ensamblador es conocido como
un lenguaje de bajo nivel, esto significa que
nos permite controlar el 100 % de las
funciones de un microprocesador, así como los
periféricos asociados a éste.
6. Arquitectura del Procesador
• El lenguaje ensamblador..
A diferencia de los lenguajes de alto nivel, por
ejemplo quot;Pascalquot;, el lenguaje ensamblador no requiere
de un compilador, esto es debido a que las
instrucciones en lenguaje ensamblador son traducidas
directamente a código binario y después son
colocadas en memoria para que el microprocesador
las tome directamente.
Aprender a programar en lenguaje ensamblador no es
fácil, se requiere un cierto nivel de conocimiento de la
arquitectura y organización de las computadoras,
además del conocimiento de programación en algún
otro lenguaje
7. Arquitectura del Procesador
• El lenguaje ensamblador..
Ventajas del lenguaje ensamblador:
– Velocidad de ejecución de los programas
– Mayor control sobre el hardware de la computadora
Desventajas del lenguaje ensamblador:
– Repetición constante de grupos de instrucciones
– No existe una sintaxis estandarizada
– Dificultad para encontrar errores en los programas (bugs)
8. Arquitectura del Procesador
• Historia de los procesadores
Con la aparición de los circuitos integrados, la
posibilidad de reducir el tamaño de algunos
dispositivos electrónicos se vio enormemente
favorecida. Los fabricantes de controladores
integrados, calculadoras y algunos otros dispositivos
comenzaron a solicitar sistemas integrados en una
sola pastilla, esto dio origen a la aparición de los
microprocesadores
9. Arquitectura del Procesador
• Historia de los procesadores
Microprocesadores de 4 bits
En 1971, una compañía que se dedicaba a la fabricación de
memorias electrónicas lanzó al mercado el primer
microprocesador del mundo. Este microprocesador fue el
resultado de un trabajo encargado por una empresa que se
dedicaba a la fabricación de calculadoras electrónicas. El 4004
era un microprocesador de 4 bits capaz de direccionar 4096
localidades de memoria de 4 bits de ancho. Este microprocesador
contaba con un conjunto de 45 instrucciones y fue ampliamente
utilizado en los primeros videojuegos y sistemas de control.
10. Arquitectura del Procesador
• Historia de los procesadores
Microprocesadores de 8 bits
Con la aparición de aplicaciones más complejas para
el microprocesador y el gran éxito comercial del 4004,
Intel decidió lanzar al mercado un nuevo
microprocesador, el 8008, éste fue el primer
microprocesador de 8 bits. Las características de este
microprocesador fueron:
– Capacidad de direccionamiento de 16 Kb
– Memoria de 8 bits
– Conjunto de 48 instrucciones
11. Arquitectura del Procesador
• Historia de los procesadores
Este microprocesador tuvo tanto éxito, que en cosa de dos años
su capacidad de proceso fue insuficiente para los ingenieros y
desarrolladores, por lo cual en 1973 se liberó el 8080. Este
microprocesador fue una versión mejorada de su predecesor y las
mejoras consistieron en un conjunto más grande de instrucciones,
mayor capacidad de direccionamiento y una mayor velocidad de
procesamiento.
Finalmente, en 1977, Intel anunció la aparición del 8085. Este era
el último microprocesador de 8 bits y básicamente idéntico al
8080. Su principal mejora fue la incorporación del reloj
temporizador dentro de la misma pastilla.
12. Arquitectura del Procesador
• Historia de los procesadores
Microprocesadores de 16 bits
En 1978, Intel lanzó al mercado el 8086 y un poco más tarde el
8088. Estos dos microprocesadores contaban con registros
internos de 16 bits, tenían un bus de datos externo de 16 y 8 bits
respectivamente y ambos eran capaces de direccionar 1Mb de
memoria por medio de un bus de direcciones de 20 líneas.
Finalmente apareció el 80286. Este era el último microprocesador
de 16 bits, el cual era una versión mejorada del 8086. El 286
incorporaba una unidad adicional para el manejo de memoria y
era capaz de direccionar 16Mb en lugar de 1Mb del 8086.
13. Arquitectura del Procesador
• Historia de los procesadores
Microprocesadores de 32 bits
El 80386 marco el inicio de la aparición de los
microprocesadores de 32 bits. Estos
microprocesadores tenían grandes ventajas sobre sus
predecesores, entre las cuales se pueden destacar:
direccionamiento de hasta 4Gb de memoria,
velocidades de operación más altas, conjuntos de
instrucciones más grandes y además contaban con
memoria interna (caché) de 8Kb en las versiones más
básicas.
15. Arquitectura del Procesador
Elementos del Microprocesador
A. UNIDAD DE ENTRADA
Permite el acceso de datos codificados que provienen de usuarios
humanos, de dispositivos externos o de otros computadores.
B. UNIDAD DE MEMORIA
Permite el almacenamiento de programas y datos, para la consulta posterior
de estos últimos o para su proceso inmediato.
Está organizada en ubicaciones con capacidad para una palabra.
C. UNIDAD ARITMETICO-LOGICA
Realiza las operaciones que se requieren en el proceso de los datos.
D. UNIDAD SALIDA
Envía los datos procesados de vuelta al mundo exterior.
E. UNIDAD DE CONTROL
Coordina las acciones de las demás unidades restantes
16. Arquitectura del Procesador
• La Unidad de Control
Este elemento del microprocesador es el que se encarga de
ejecutar las instrucciones. La unidad de ejecución comprende el
conjunto de registros de propósito general, el registro de
banderas y la unidad aritmético-lógica.
• La Unidad Aritmético Lógica
Conocida también como ALU, este componente del
microprocesador es el que realmente realiza las operaciones
aritméticas (suma, resta, multiplicación y división) y lógicas (and,
or, xor, etc.) que se obtienen como instrucciones de los
programas.
17. Arquitectura del Procesador
• Buses internos (datos y direcciones)
Los buses internos son un conjunto de líneas paralelas
(conductores) que interconectan las diferentes partes del
microprocesador.
Existen dos tipos principales: el bus de datos y el bus de
direcciones. El bus de datos es el encargado de transportar los
datos entre las distintas partes del microprocesador; por otro lado,
el bus de direcciones se encarga de transportar las direcciones
para que los datos puedan ser introducidos o extraídos de la
memoria o dispositivos de entrada y salida.
18. Arquitectura del Procesador
Tipos de Buses
a. BUS UNICO
Todas las unidades están conectadas a este bus que es el
único medio de interacción entre ellas.
Sólo dos unidades pueden comunicarse por vez.
Su ventaja es su bajo costo y su flexibilidad para comunicar
dispositivos.
Su desventaja es su baja velocidad de operación.
b. BUS MULTIPLE
La razón de incluir buses adicionales es la de aumentar la
velocidad de transferencia a través de mayor paralelismo.
Prof. Pedro Rodríguez La Torre Ciencias-Ucla
19. Arquitectura del Procesador
REGISTROS DEL COMPUTADOR
Son dispositivos de almacenamiento de alta velocidad para uso temporal.
Los de uso general pueden ser usados por el CPU y el programador.
Los de uso específico sólo pueden ser usados por el procesador.
A. REGISTRO DE INSTRUCCION (IR)
Contiene la instrucción a ejecutar.
B. CONTADOR DE PROGRAMA (PC)
Contiene la dirección de memoria de la siguiente instrucción.
C. REGISTRO DE DIRECCIONES DE MEMORIA (MAR)
Contiene la dirección de memoria hacia o desde la cual deben transferirse los datos.
D. REGISTRO DE DATOS DE MEMORIA (MDR)
Contiene los datos que deben escribirse o leerse en la dirección especificada en el MAR. El
MDR se le llama también registro buffer de memoria (MBR).
E. REGISTROS DE CONDICIONES
Utiles en el manejo de operaciones aritmético- lógicas.
Indican condiciones de signo, desbordamiento, acarreo, etc.
21. Arquitectura del Procesador
LA MEMORIA
Dispositivo electrónico de almacenamiento de programas y datos.
CARACTERÍSTICAS
1. Modo de Retener la Información
a. Memorias Permanentes o No-Volátiles
Su contenido no puede borrarse
b. Memorias No-Permanentes o Volátiles
Su contenido se pierde al cortar el suministro de energía.
2. Modo de Lectura
a. Memorias de Lectura Destructiva
Al leer su contenido, éste se destruye.
Requieren regeneración de dicho contenido.
b. Memorias de Lectura No-Destructiva
Su contenido permanece intacto después de una lectura.
22. Arquitectura del Procesador
LA MEMORIA
3. Modo de Acceso
a. Por Palabra
Su acceso es rápido.
Su tiempo de acceso es fijo.
Es utilizada en la memoria principal.
b. Por Bloque
Su acceso es lento.
Su tiempo de acceso es variable de acuerdo a la ubicación
de su contenido.
Es utilizada en la memoria secundaria.
4. Velocidad
Tiempo que toma una operación de lectura o escritura.
5. Capacidad o Tamaño
Cantidad de información que se puede guardar en memoria.
23. Arquitectura del Procesador
LA MEMORIA RAM (Random Access Memory)
Dispositivo de memoria en el cual se puede leer o escribir datos de
manera directa. Es la memoria principal del computador.
A. CARACTERISTICAS
1. Acceso Aleatorio
Conocido también como acceso al azar o directo.
2. Operaciones de Lectura o Escritura
Permite la lectura o escritura por igual.
3. Volatilidad
Su contenido se pierde al apagar el equipo.
4. Velocidad de Acceso y Capacidad
Su velocidad de acceso y capacidad varían según el
equipo.
24. Arquitectura del Procesador
LA MEMORIA RAM (Random Access Memory)
B. TIPOS DE MEMORIA RAM
1. RAM ESTATICA
Memoria de semiconductor basada en celdas de tipo biestable
que mantienen su contenido siempre que no se interrumpa la
alimentación de energía.
Es más rápida que la dinámica pero consume mas energía.
Su diseño es simple aunque requiere de 4 a 6 transistores.
Es más costosa que la dinámica.
2. RAM DINAMICA (DRAM)
Memoria basada en un transistor de tipo MOS (Semiconductor de
Oxido Metálico) que tiende a descargarse, por lo que debe ser
refrescado periódicamente.
Necesita un solo transistor MOS pero requiere de un sistema
adicional de refrescamiento.
25. Arquitectura del Procesador
LA MEMORIA ROM (Read Only Memory)
Dispositivo de memoria que sólo permite la operación de lectura.
Grabada en el proceso de fabricación del circuito integrado.
Almacenamiento permanente (no volatil).
Características
Acceso aleatorio.
Su contenido siempre es el mismo (no puede borrase).
Se usa para almacenar programas y rutinas de aplicación
especifica.
Su aplicación principal es guardar programas de arranque de
computadores.
26. Arquitectura del Procesador
LA MEMORIA ROM (Read Only Memory)
A. TIPOS DE MEMORIA ROM
Algunos tipos de memoria ROM permiten la posibilidad de
posteriores reprogramaciones, entre las que se cuentan:
1. MEMORIA PROM
(Programable Read-Only Memory)
• Memoria programable de sólo lectura.
• La memoria virgen trae sólo unos (1’s) .
• Puede programarse una sola vez agregando los ceros.
• Esto se efectúa mediante un “Programador de ROM”.
27. Arquitectura del Procesador
LA MEMORIA ROM (Read Only Memory)
2. MEMORIA EPROM
(Erasable Programable Read-Only Memory)
• Memoria de sólo lectura programable y borrable.
• Debe ser retirada del sistema para ser borrada y reprogramada.
• Puede borrarse mediante radiación ultravioleta.
• Son programadas eléctricamente por el usuario.
• Permiten sucesivas reprogramaciones.
3. MEMORIA EAPROM
(Electrically Alterable Programable Read-Only
Memory)
• Memoria de sólo lectura programable y borrable.
• Puede ser borrada y reprogramada estando en el sistema.
• Puede ser borrada por palabra o por bloque.
• Exige distintos y elevados niveles de tensión en el borrado.
• Son las más costosas.
28. Arquitectura del Procesador
LA MEMORIA SECUNDARIA
Memoria auxiliar que permite el almacenamiento de
•
grandes cantidades de datos.
• Utiliza dispositivos más económicos pero más lentos
que los de la memoria principal.
• Su contenido puede ser borrado cuando se desea
hacerlo.
• Es controlada por las unidades de entrada y salida.
• El acceso del CPU a esta memoria es más complejo y
más lento que cuando éste accesa la memoria principal.
29. Arquitectura del Procesador
LA MEMORIA SECUNDARIA
TIPOS DE MEMORIA SECUNDARIA
A. DE ACCESO SECUENCIAL
CINTA MAGNETICA (Tape)
• Tira continua de plástico enrollada en un carrete (reel).
• Es tratada con una capa de óxido de hierro que puede ser
magnetizada.
• Se encuentra también disponible en forma de cartuchos y
cassettes para su uso en el computador.
B. DE ACCESO DIRECTO
DISCO MAGNETICO (Hard disk)
• Plato magnético circular cubierto en ambas caras por
material magnetizable como es el óxido de hierro.
• Se encuentra girando mientras un cabezal de
lectura/escritura se posiciona encima de su superficie.
30. Arquitectura del Procesador
LA MEMORIA SECUNDARIA
1. DISCO MAGNETICO (Hard disk)
En su organización se encuentran los siguientes
elementos:
a. Pista
Círculo concéntrico en el que se registran los datos.
b. Sectores
Segmentos que dividen una pista.
c. Cilindro
Superficie imaginaria formada por todas las pistas
colocadas una encima de la otra.
d. Cabezal de lectura/escritura
Se encarga de extraer o colocar los datos en el disco.
Comunmente existe un cabezal por cada superficie del
disco.
e. Brazo móvil
Está unido al cabezal de lectura/escritura.
Recorre las pistas haciendo que el cabezal se mueva.
31. Arquitectura del Procesador
LA MEMORIA SECUNDARIA
2. DISCO FLEXIBLE (Diskette)
• Material plástico cubierto con óxido de hierro.
• Fácil de almacenar y transportar.
• Son producidos en tamaños de 5 ¼ y 3 ½ pulgadas.
C. METODOS MODERNOS
1. RAM DISK
• Tarjeta que contiene chips de RAM que se coloca en una
ranura (slot).
• El computador trata la tarjeta como si fuese un disk drive.
• No son discos físicos pero funcionan como los diskettes.
32. Arquitectura del Procesador
LA MEMORIA SECUNDARIA
2. DISCOS OPTICOS DE SOLO LECTURA (CD-ROM)
• Funcionan muy similar a la memoria ROM.
• Tecnología digital basada en un disco óptico de 4 ¾ pulgadas
que puede almacenar hasta 540 Mb en un lado.
• Esta tecnología está basada en rayos laser.
3. DISCOS OPTICOS BORRABLES
• Existe también el disco óptico borrable al que se le puede
escribir y leer datos.
• Este tipo de disco óptico tiene una capa de material magnético
sobre su superficie. Se les conoce también como discos óptico-
magnéticos.
33. Arquitectura del Procesador
LA MEMORIA CACHÉ
• Memoria auxiliar de gran velocidad y baja capacidad que se añade a los
dispositivos para acelerar su funcionamiento y optimizar su rendimiento.
• Localidad de Referencia: la mayor parte del tiempo de ejecución de muchos
programas se dedica a pocas rutinas principales.
• Almacenamiento Directo: Al escribir se actualizan la memoria RAM y la
memoria cache.
• Asociación de Bit Bandera: Al escribir se actualiza sólo la memoria cache y
luego al cambiar la cache se actualiza la memoria RAM.
• Al leer una palabra que no está en la memoria cache, ésta se puede llevar
primero al cache y luego al CPU, aunque es más eficiente la “Carga Directa”,
es decir enviarla primero al CPU y luego al cache.
35. Arquitectura del Procesador
LA UNIDAD DE CONTROL
• Su misión prioritaria es tomar de la memoria principal la instrucción indicada por el
Contador de Programa (PC) e incrementar el mismo, interpretar o decodificar dicha
instrucción y ejecutarla.
• Resuelve las situaciones anormales o de conflicto que ocurren en el computador y
controlar o comunicarse con los periféricos.
• En su funcionamiento utiliza las instrucciones, el Registro de Estado, el Contador de
Períodos del Reloj y las señales de entrada y salida.
• El código de operación de la instrucción le indica la operación a realizar y el modo de
direccionamiento a utilizar, se localizan los operandos, se envían a la UAL si se necesita
y se guarda el resultado.
• El Registro de Estado guarda información de la operación anterior y de situaciones
especiales (desbordamiento, errores de paridad, etc.)
• Las señales de E/S permiten el diálogo con los periféricos.
36. Arquitectura del Procesador
LA UNIDAD DE CONTROL
A. OPERACIONES ELEMENTALES
• La ejecución de cada instrucción se descompone en una serie de pequeños
pasos tales como lectura de un operando, incremento del Contador de Programa,
ejecución de una operación aritmética, etc.
• La ejecución de cada operación elemental activa un conjunto de señales de
control que genera el Secuenciador.
• En cada ciclo de máquina , generado por el reloj, el Secuenciador envía una serie
de señales de control que realizan una o varias operaciones elementales que
constituyen una microinstrucción.
• Una instrucción de máquina consta de varias microinstrucciones, cuando se
realiza la última de una instrucción, se recibe el código de operación de la siguiente
instrucción y se repite el ciclo.
37. Arquitectura del Procesador
LA UNIDAD DE CONTROL
Las operaciones elementales se clasifican en dos grupos:
1. OPERACIONES DE TRANSFERENCIA
• Se seleccionan los elementos que participan, uno de los cuales
actúa como origen y el otro como destino.
• Se establece la ruta entre las salidas del origen y las entradas del
destino.
• Al final se envía al destino una señal para que se cargue con los
datos del origen.
2. OPERACIONES DE PROCESO
• Tienen un planteamiento básico idéntico a las de transferencia, con
la diferencia fundamental de que los datos del origen se hacen pasar
por un operador en su vía hacia el destino.
38. Arquitectura del Procesador
LA UNIDAD DE CONTROL
B. TIPOS DE UNIDAD DE CONTROL
1. EN LOGICA CABLEADA
• Construida mediante compuertas lógicas y siguiendo métodos
clásicos de diseño lógico.
• Sus circuitos están dotados de una gran velocidad, lo que la
hace más rápida que la Lógica Almacenada o Microprogramada.
• Estos circuitos son muy complejos y costosos.
• Las modificaciones posteriores son muy difíciles de realizar.
• Este diseño es utilizado en computadores muy potentes.
• Con las modernas técnicas de diseño computarizado de circuitos
de Muy Alta Escala de Integración (VLSI) se resuelven la mayor
parte de las dificultades del diseño de la Lógica Cableada.
39. Arquitectura del Procesador
LA UNIDAD DE CONTROL
2. EN LOGICA ALMACENADA O MICROPROGRAMADA
• Las señales de control son almacenadas en una memoria ROM llamada
Memoria de Control.
• La información de las señales de control de un período se les denomina
microinstrucción.
• El conjunto de microinstrucciones que forman el cronograma de una
instrucción es llamado microprograma.
• Al conjunto de microprogramas de una máquina se le denomina
Firmware o Microcódigo.
a. CARACTERISTICAS
• Memoria de Control con capacidad suficiente para almace-nar el
Firmware o Microcódigo completo de la máquina.
• Poseer un procedimiento para hacer corresponder a cada instrucción de
máquina con su microprograma.
• Mecanismo para ir leyendo las sucesivas microinstrucciones y saltar a un
nuevo microprograma al final del actual.
40. Arquitectura del Procesador
LA UNIDAD DE CONTROL
b. SECUENCIAMIENTO EXPLICITO
• Las microinstrucciones pueden estar desordenadas ya que cada una de
ellas contiene la dirección de la siguiente.
• La desventaja es el espacio utilizado para el secuenciamiento.
c. SECUENCIAMIENTO IMPLICITO
• Consiste en tener ordenadas las microinstrucciones de cada
microprogama consecutivamente en la Memoria de Control.
• De esta forma se obtiene un considerable ahorro de memoria.
• Para que cada microinstrucción corresponda con su microprograma se
introduce un traductor entre el código de operación y el multiplexor de la
Memoria de Control.
• Dicho traductor reside también en memoria ROM.
41. Arquitectura del Procesador
LA UNIDAD DE CONTROL
MANEJO DE INSTRUCCIONES
• Una instrucción al ejecutarse requiere de una serie pasos continuos y
repetidos.
• El CPU analiza que es lo que se va a hacer (Tiempo de Instrucción).
• Luego, se ejecuta la instrucción(Tiempo de Ejecución).
• Realizados los pasos anteriores es lo que se llama Ciclo de Máquina.
• Los Ciclos de Máquina están definidos por el reloj del computador.
• Según el número de operandos, el formato de la instrucción será:
1. SIN OPERANDOS: Sólo el código de operación.
2. CON UN SOLO OPERANDO: Código de operación y operando 1.
3. CON DOS OPERANDOS: Código de operación y operandos 1 y 2.
42. Arquitectura del Procesador
LA UNIDAD DE CONTROL
A. FASE DE BUSQUEDA
• La Unidad de Control (UC) mueve el contenido del Contador de
Programa (PC), (que tiene la dirección de la siguiente instrucción) al
Registro de Dirección de Memoria (MAR) y luego el contenido del MAR es
transferido al registro de selección de memoria.
• La UC envía una orden de lectura a la memoria principal, la cual efectúa
la operación utilizando la dirección almacenada en el registro de selección
de memoria.
• Efectuada la lectura, la instrucción queda en el registro de palabra en
memoria, luego la UC mueve el contenido de este registro al Registro de
Buffer de Memoria (MBR). La UC analiza su contenido y al detectar que es
una instrucción lo pasa al Registro de Instrucción (IR).
43. Arquitectura del Procesador
LA UNIDAD DE CONTROL
B. FASE DE DECODIFICACION Y EJECUCION
• La UC interpreta la instrucción contenida en el IR, es decir
determina la operación a realizar.
• Luego la UC analiza el código de operación, si se trata de una
operación de proceso se buscan los operandos y se procede a la
ejecución de la instrucción, de lo contrario se hace sólo la
ejecución.
C. FASE DE PREPARACION PROXIMA INSTRUCCION
• El PC se autoincrementa en el número de palabras que ocupa la
instrucción que acaba de ejecutar y apunta a la siguiente
instrucción.
44. Arquitectura del Procesador
LA UNIDAD DE CONTROL
D. INSTRUCCION DE RUPTURA DE SECUENCIA
Estas instrucciones llamadas también de bifurcación o de
salto, alteran la secuencia normal de ejecución del programa
haciendo que la instrucción de salto sea seguida, no por la
instrucción almacenada en la dirección consecutiva, sino por
una instrucción cuya dirección viene indicada por la propia
instrucción de salto.
1. INSTRUCCION DE SALTO CONDICIONAL
Si se cumple una determinada condición, el PC se carga
con la dirección de salto, en caso contrario el PC se incrementa
en el número de palabras que ocupa la instrucción que recien
se ejecutó para apuntar a la siguiente instrucción.
45. Arquitectura del Procesador
LA UNIDAD DE CONTROL
D. INSTRUCCION DE RUPTURA DE SECUENCIA
2. INSTRUCCION CON RETORNO
Guardan la dirección de la siguiente instrucción y así poder retornar al
punto donde se produjo la bifurcación. Se usan en las llamadas a
subrutinas.
E. RELOJ DE SINCRONIZACION
La mayoría de los computadores digitales poseen un
funcionamiento sincrónico, gobernado por un oscilador o reloj general.
El reloj es un circuito que emite una serie de impulsos de un ancho
y separación definidos con precisión.
Los intervalos de este reloj representan la temporización básica del
sistema, ya que determinan el menor tiempo que puede durar una
operación elemental.
La duración de un tiempo elemental determinado por el reloj
maestro se denomina Tiempo de Ciclo de Reloj o Período.
Durante cada ciclo tiene lugar alguna actividad básica, por
ejemplo, la ejecución de una microinstrucción.
46. Arquitectura del Procesador
LA UNIDAD ARITMETICO LOGICA
A. DESCRIPCION FUNCIONAL
Es la encargada de realizar en el computador las operaciones con
los datos de acuerdo con el programa en curso.
La Unidad de Control envía a la UAL las direcciones donde están los
datos a procesar, donde colocar el resultado, así como también el
código que selecciona la operación que se debe hacer.
B. ESTRUCTURA
1. OPERADORES
Circuitos que realizan funciones aritméticas o lógicas.
2. BANCO DE REGISTROS GENERALES
Sirven para almacenar los datos. Contiene de 8 a 16
registros.
3. ACUMULADOR
En él se deposita el resultado que origina el operador.
47. Arquitectura del Procesador
LA UNIDAD ARITMETICO LOGICA
4. SEÑALIZADORES DE ESTADO
Biestables que contienen las condiciones de la última operación, tales
como cero, negativo, acarreo , desbordamiento, etc.
5. SECUENCIADOR
Genera las señales necesarias para desarrollar las diversas
microinstrucciones que conforman la instrucción. Puede ser Cableado,
compuesto por circuitos lógicos o Programado, el cual tiene una pequeña
memoria que contiene un microprograma.
C. CARACTERISTICAS
1. REALIZA CALCULOS
Efectúa las operaciones básicas: suma, resta, multiplicación y división.
2. DECIDE
Establece operaciones lógicas para la toma de decisiones y el resultado de la
comparación puede ser verdadero o falso.
3. CONTROLA
Analiza y selecciona el código de la operación a realizar (lógico o
aritmético).
48. Arquitectura del Procesador
LA UNIDAD ARITMETICO LOGICA
4. SEÑALIZADORES DE ESTADO
Biestables que contienen las condiciones de la última operación, tales
como cero, negativo, acarreo , desbordamiento, etc.
5. SECUENCIADOR
Genera las señales necesarias para desarrollar las diversas
microinstrucciones que conforman la instrucción. Puede ser Cableado,
compuesto por circuitos lógicos o Programado, el cual tiene una pequeña
memoria que contiene un microprograma.
C. CARACTERISTICAS
1. REALIZA CALCULOS
Efectúa las operaciones básicas: suma, resta, multiplicación y división.
2. DECIDE
Establece operaciones lógicas para la toma de decisiones y el resultado de la
comparación puede ser verdadero o falso.
3. CONTROLA
Analiza y selecciona el código de la operación a realizar (lógico o
aritmético).
4. ALMACENA TEMPORALMENTE
Guarda temporalmente en sus registros los datos de entrada y de salida.
49. Arquitectura del Procesador
LA UNIDAD ARITMETICO LOGICA
D. TIPOS DE OPERACIONES
1. ARITMETICAS
Suma, resta, cambio de signo, complemento a dos, etc.
2. LOGICAS
Determina si un dato es negativo, igual al segundo, etc.
3. DESPLAZAMIENTOS
Se corren los bits de una palabra o registro de derecha a izquierda o
viceversa.
a. DESPLAZAMIENTO LOGICO
Los valores de los extremos se completan con ceros según la dirección del
desplazamiento.
b. DESPLAZAMIENTO ARITMETICO
Similar al lógico sólo que se realiza sobre números en complemento y
manteniendo el signo de la cantidad.
c. DESPLAZAMIENTO CONCATENADO
Afecta a dos elementos concatenados (dos registros o un registro y un
biestable, por ejemplo)
d. DESPLAZAMIENTO CIRCULAR
Los bits que se vacían en un extremo se rellenan con los que salen por el otro.
En este caso no hay pérdida de datos.
50. Arquitectura del Procesador
LA UNIDAD ARITMETICO LOGICA
D. TIPOS DE OPERACIONES
4. RUPTURA DE SECUENCIA
Hacen que el computador cambie el flujo normal de ejecución y tome
instrucciones de otro bloque de memoria.
5. COMPARACION
Se resta el segundo número a comparar del primero, lo cual afecta el registro
de estado, sin modificar dichos números. Luego se consulta el registro de estado
para saber si los números son iguales, el primero menor que el segundo, etc.
51. Arquitectura del Procesador
LA UNIDAD DE ENTRADA / SALIDA
Un computador debe tener capacidad para enviar y recibir datos hacia y desde
otros dispositivos.
Debe entonces contar con los mecanismos para:
1. Seleccionar los dispositivos en las operaciones de E/S.
2. La transferencia hacia y desde un dispositivo.
3. Sincronización de las operaciones de E/S.
A. DIRECCIONAMIENTO DE DIPOSITIVOS DE E/S
Comúnmente un computador tiene conectados multiples dispositivos de E/S, por
lo cual se requiere un medio para seleccionar cada uno de ellos para que
participen en las operaciones de E/S.
Esto se puede lograr con un bus de E/S de tres grupos de líneas para la
transmisión de direcciones, señales de control y datos.
A cada dispositivo se le asigna un código de identificación o dirección con el cual
puede ser seleccionado.
52. Arquitectura del Procesador
LA UNIDAD DE ENTRADA / SALIDA
B. TRANSFERENCIA DE DATOS
1. E/ S CONTROLADA POR PROGRAMA O PROGRAMADA
Con este método una instrucción de E/S provoca la transferencia de una palabra
de datos o un caracter.
La transferencia involucra un registro del controlador del periférico y un registro
del CPU o una posición de memoria.
Requiere que el CPU participe en forma continua.
Se utilizan las señales de dirección, de datos y de control.
En los dispositivos de E/S de alta velocidad este método es completamente
inoperante puesto que se requiere transferir grandes bloques de datos y además
muchos de estos dispositivos funcionan sincronizados por un reloj de frecuencia
fija independiente del CPU.
53. Arquitectura del Procesador
LA UNIDAD DE ENTRADA / SALIDA
2. ACCESO DIRECTO A MEMORIA (DMA)
Este método utiliza un circuito especial de control o controlador de DMA que permite
la transferencia de un bloque de datos directamente entre el dispositivo y la memoria,
independientemente del CPU.
Requiere un registro contador para generar la dirección de memoria, otro para
llevar el conteo de palabras, otro para almacenar la función que se va a realizar y otro
como buffer de datos entre la memoria y el dispositivo de E/S.
Cuando se dispone de un bus único, se puede utilizar un controlador de DMA
dedicado a un periférico de E/S.
Cuando se tiene buses múltiples, un controlador de DMA “flotante” puede manejar
más de un dispositivo de E/S.
54. Arquitectura del Procesador
LA UNIDAD DE ENTRADA / SALIDA
C. SINCRONIZACION
El computador debe estar en capacidad de poder coordinar sus actividades con
las de los dispositivos externos conectados a él.
1. ESCRUTINIO
La condición presente de cada dispositivo de E/S se indica por uno o
más bits de información.
El bit más importante es el bit “ready” (listo) y se utiliza cuando el
dispositivo está listo para una transferencia.
Para una operación de E/S en un dispositivo, el programa deberá
primero consultar los bits de condición del mismo.
55. Arquitectura del Procesador
LA UNIDAD DE ENTRADA / SALIDA
C. SINCRONIZACION
2. INTERRUPCIONES
Pueden considerarse como bifurcaciones externas al programa en ejecución,
provocadas por señales que provienen del exterior del CPU.
El objetivo de una interrupción es reclamar la atención del CPU sobre un hecho
externo, solicitando que se ejecute una rutina específica que trate
adecuadamente ese evento.
En una interrupción ocurren dos etapas:
a. DIALOGO DE SEÑALES:
Necesario para que el CPU acepte la interrupción y haga la
bifurcación a la rutina apropiada.
b. TRATAMIENTO DE LA INTERRUPCION:
Consiste en la ejecución de la rutina respectiva.
56. Arquitectura del Procesador
BIBILIOGRAFIA
Prof. Robiro Asuaje. Nociones Fundamentales
➔
sobre Arquitectura y Organización de
Computadores
Pedro de Miguel y José Ma. Angulo
➔
Arquitectura de Computadores
C. Hamacher, Z. Vranesic y S. Zaky
➔
Organización de Computadoras