El documento describe el funcionamiento interno de la unidad central de procesamiento (UCP). La UCP está compuesta por la unidad aritmético lógica (UAL) y la unidad de control (UC). La UCP ejecuta instrucciones en varias microinstrucciones, leyendo y escribiendo datos en la memoria principal y realizando cálculos en la UAL.
2. Arquitectura interna
Este esquema presenta la Memoria Principal
(RAM), la UCP y los buses de Direcciones y de
Datos. La UCP está constituida por...
Silvia Herzovich –
3. La unidad Aritmético-Lógica integrada por:
La Unidad calculadora Realiza las operaciones aritméticológicas programadas, con 2 operandos
El Registro Acumulador Contiene uno de los operandos, y
guarda el resultado de la operación
El Registro Temporal Contiene el otro operando
Silvia Herzovich –
4. La unidad de Control integrada por:
El Registro Contador de Programa (CP) Guarda la dirección de
memoria de la siguiente instrucción a ejecutar
El Registro de Direcciones Conectado al bus de direcciones,
transmite la dirección de memoria en la que leer o escribir
El Registro de Datos Conectado al bus de datos, contiene
el dato que la UCP lee o escribe en memoria
Silvia Herzovich –
5. La unidad de Control integrada por:
El Registro de Instrucciones Recibe desde el Registro de Datos
una instrucción que debe ser decodificada para su ejecución
La Unidad Controladora Decodifica la instrucción y envía las
señales de control necesarias para su ejecución
La UCP está compuesta por la UAL y la UC
Silvia Herzovich –
6. Ejemplo de ejecución de una secuencia de
instrucciones que suma 2 números y almacena
el resultado en una posición de memoria.
Recordemos que:
El programa está almacenado en la memoria
principal (RAM)
La ejecución de una instrucción consta de varias
microinstrucciones
Todas las operaciones que se realizan en un mismo
ciclo de reloj, constituyen una microinstrucción
Al comenzar la ejecución del programa el contenido
del Registro Acumulador es 0
Silvia Herzovich –
7. 1ª instrucción – 1ª microinstrucción
El contenido del Registro Contador de Programa
(CP) se transfiere al Registro de direcciones...
Seleccionando la dirección 0000 en la RAM
Silvia Herzovich –
8. El contenido del
registro CP se
transfiere al Registro
de direcciones
1ª instrucción 1ª microinstrucción
9. Seleccionando
la dirección
0000 en la RAM
REPETIR
El contenido del
registro CP se
transfiere al Registro
de direcciones
1ª instrucción 1ª microinstrucción
Silvia Herzovich –
10. 1ª instrucción – 2ª microinstrucción
La UCP lee el contenido de la memoria (1ª
instrucción), y lo almacena en el Registro de
datos de la UC
El Registro CP se incrementa en una unidad
Silvia Herzovich –
11. La UCP lee el
contenido de la
memoria
(1ª instrucción)
1ª instrucción 2ª microinstrucción
12. La UCP lee el
contenido de la
memoria
(1ª instrucción)
Y lo almacena en el
Registro de datos
1ª instrucción 2ª microinstrucción
13. La UCP lee el
contenido de la
memoria
(1ª instrucción)
REPETIR
Y lo almacena en el
Registro de datos
El CP se
incrementa en una
unidad
1ª instrucción 2ª microinstrucción
Silvia Herzovich –
14. 1ª instrucción – 3ª microinstrucción
El código de operación (4 primeros bits) se
transfiere desde el Registro de datos al Registro
de Instrucción
(Aclaración: existen modelos actuales que transfieran toda
la instrucción)
El código de operación se identifica
Silvia Herzovich –
15. El código de operación se
transfiere desde el
Registro de Datos al
Registro de Instrucción
1ª instrucción 3ª microinstrucción
16. El código de operación se
transfiere desde el
Registro de Datos al
Registro de Instrucción
REPETIR
El código de
operación se
identifica
1ª instrucción 3ª microinstrucción
Silvia Herzovich –
17. 1ª instrucción – 4ª microinstrucción
La UC transfiere los 4 bits del código de
dirección al Registro de Direcciones...
Se direcciona la dirección 1100 de la RAM
Silvia Herzovich –
18. La UC transfiere los 4 bits
del código de dirección al
Registro de Direcciones...
1ª instrucción 4ª microinstrucción
19. Se direcciona
la dirección 1100
de la RAM
REPETIR
La UC transfiere los 4 bits
del código de dirección al
Registro de Direcciones...
1ª instrucción 4ª microinstrucción
Silvia Herzovich –
20. 1ª instrucción – 5ª microinstrucción
La UCP lee el dato direccionado y lo transfiere
al Registro Temporal de la UAL
El contenido del Registro Temporal se suma al
contenido del Registro Acumulador. El resultado
se guarda en el Registro Acumulador
Silvia Herzovich –
21. La UCP lee el dato
direccionado ...
1ª instrucción 5ª microinstrucción
22. La UCP lee el dato
direccionado ...
Lo transfiere al
Registro temporal
de la UAL
1ª instrucción 5ª microinstrucción
23. El contenido del registro
Temporal se suma al
contenido del Registro
Acumulador.
1ª instrucción 5ª microinstrucción
24. El resultado se guarda
en el Registro
Acumulador
REPETIR
El contenido del registro
Temporal se suma al
contenido del Registro
Acumulador.
1ª instrucción 5ª microinstrucción
Silvia Herzovich –
26. 2ª instrucción – 1ª microinstrucción
El contenido del Registro Contador de Programa
(CP) se transfiere al Registro de direcciones...
Seleccionando la dirección 0001 en la RAM
Silvia Herzovich –
27. El contenido del
registro CP se
transfiere al Registro
de direcciones
2ª instrucción 1ª microinstrucción
28. Seleccionando
la dirección
0001 en la RAM
REPETIR
El contenido del
registro CP se
transfiere al Registro
de direcciones
2ª instrucción 1ª microinstrucción
Silvia Herzovich –
29. 2ª instrucción – 2ª microinstrucción
La UCP lee el contenido de la memoria (2ª
instrucción), y lo almacena en el Registro de
datos de la UC
El Registro CP se incrementa en una unidad
Silvia Herzovich –
30. La UCP lee el
contenido de la
memoria
(2ª instrucción)
2ª instrucción 2ª microinstrucción
31. La UCP lee el
contenido de la
memoria
(2ª instrucción)
Y lo almacena en el
Registro de datos
2ª instrucción 2ª microinstrucción
32. La UCP lee el
contenido de la
memoria
(1ª instrucción)
REPETIR
Y lo almacena en el
Registro de datos
El CP se
incrementa en una
unidad
2ª instrucción 2ª microinstrucción
Silvia Herzovich –
33. 2ª instrucción – 3ª microinstrucción
El código de operación (4 primeros bits) se
transfiere desde el Registro de datos al Registro
de Instrucción
(Aclaración: existen modelos actuales que transfieran toda
la instrucción)
El código de operación se identifica
Silvia Herzovich –
34. El código de operación se
transfiere desde el
Registro de datos al
Registro de Instrucción
2ª instrucción 3ª microinstrucción
35. El código de operación se
transfiere desde el
Registro de Datos al
Registro de Instrucción
REPETIR
El código de
operación se
identifica
2ª instrucción 3ª microinstrucción
Silvia Herzovich –
36. 2ª instrucción – 4ª microinstrucción
La UC transfiere los 4 bits del código de
dirección al Registro de Direcciones...
Se direcciona la dirección 1101 de la RAM
Silvia Herzovich –
37. La UC transfiere los 4 bits
del código de dirección al
Registro de Direcciones...
2ª instrucción 4ª microinstrucción
38. Se direcciona
la dirección 1101
de la RAM
REPETIR
La UC transfiere los 4 bits
del código de dirección al
Registro de Direcciones...
2ª instrucción 4ª microinstrucción
Silvia Herzovich –
39. 2ª instrucción – 5ª microinstrucción
La UCP lee el dato direccionado y lo transfiere
al Registro Temporal de la UAL
El contenido del Registro Temporal se suma al
contenido del Registro Acumulador. El resultado
se guarda en el Registro Acumulador
Silvia Herzovich –
40. La UCP lee el dato
direccionado ...
2ª instrucción 5ª microinstrucción
41. La UCP lee el dato
direccionado ...
Lo transfiere al
Registro temporal
de la UAL
2ª instrucción 5ª microinstrucción
42. El contenido del registro
Temporal se suma al
contenido del Registro
Acumulador.
2ª instrucción 5ª microinstrucción
43. El resultado se guarda
en el Registro
Acumulador
REPETIR
El contenido del registro
Temporal se suma al
contenido del Registro
Acumulador.
2ª instrucción 5ª microinstrucción
Silvia Herzovich –
45. 3ª instrucción – 1ª microinstrucción
El contenido del Registro Contador de Programa
(CP) se transfiere al Registro de direcciones...
Seleccionando la dirección 0010 en la RAM
Silvia Herzovich –
46. El contenido del
registro CP se
transfiere al Registro
de direcciones
3ª instrucción 1ª microinstrucción
47. Seleccionando
la dirección
0010 en la RAM
REPETIR
El contenido del
registro CP se
transfiere al Registro
de direcciones
3ª instrucción 1ª microinstrucción
Silvia Herzovich –
48. 3ª instrucción – 2ª microinstrucción
La UCP lee el contenido de la memoria (3ª
instrucción), y lo almacena en el Registro de
datos de la UC
El Registro CP se incrementa en una unidad
Silvia Herzovich –
49. La UCP lee el
contenido de la
memoria
(3ª instrucción)
3ª instrucción 2ª microinstrucción
50. La UCP lee el
contenido de la
memoria
(3ª instrucción)
Y lo almacena en el
Registro de datos
3ª instrucción 2ª microinstrucción
51. La UCP lee el
contenido de la
memoria
(3ª instrucción)
REPETIR
Y lo almacena en el
Registro de datos
El CP se
incrementa en una
unidad
3ª instrucción 2ª microinstrucción
Silvia Herzovich –
52. 3ª instrucción – 3ª microinstrucción
El código de operación (4 primeros bits) se
transfiere desde el Registro de datos al Registro
de Instrucción
(Aclaración: existen modelos actuales que transfieran toda
la instrucción)
El código de operación se identifica
Silvia Herzovich –
53. El código de operación se
transfiere desde el
Registro de datos al
Registro de Instrucción
3ª instrucción 3ª microinstrucción
54. El código de operación se
transfiere desde el
Registro de Datos al
Registro de Instrucción
REPETIR
El código de
operación se
identifica
3ª instrucción 3ª microinstrucción
Silvia Herzovich –
55. 3ª instrucción – 4ª microinstrucción
La UC transfiere los 4 bits del código de
dirección al Registro de Direcciones...
Se direcciona la dirección 1100 de la RAM
Silvia Herzovich –
56. La UC transfiere los 4 bits
del código de dirección al
Registro de Direcciones...
3ª instrucción 4ª microinstrucción
57. Se direcciona
la dirección 1100
de la RAM
REPETIR
La UC transfiere los 4 bits
del código de dirección al
Registro de Direcciones...
3ª instrucción 4ª microinstrucción
Silvia Herzovich –
58. 3ª instrucción – 5ª microinstrucción
La UCP escribe el contenido del Registro
Acumulador en la posición de memoria señalada
en la instrucción (1100)
El resultado de la suma queda almacenado en
la RAM...
Silvia Herzovich –
59. La UCP almacena el
contenido del Registro
Acumulador
3ª instrucción 5ª microinstrucción
60. En la dirección indicada
en la instrucción (1100)
La UCP almacena el
contenido del Registro
Acumulador
3ª instrucción 5ª microinstrucción
61. El resultado de la suma queda
almacenado en la RAM
En la dirección indicada
en la instrucción (1100)
REPETIR
La UCP almacena el
contenido del Registro
Acumulador
3ª instrucción 5ª microinstrucción
Silvia Herzovich –
63. Luego de este primer recorrido, le sugerimos
que lea las actividades propuestas en la Guía
de observación de esta animación, y que
vuelva a verla las veces que sea necesario
para realizar las mismas.