Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CPU y Buses
1. ¿Qué es la CPU y cómo es su diagrama en bloques interno? Describir el funcionamiento de cada uno de sus módulos.
2. Enumerar sus registros y explicar brevemente para qué se usa cada uno.
3. ¿Qué es un Bus? Enumerarlos y describir cada uno.
1. La CPU es un circuito electrónico que se dedica a administrar todos los recursos de la computadora como también de la
parte lógica también. Sus modulos mas importantes son:
a. ALU: Este modulo se encarga de todas las operaciones lógicas y aritméticas del procesador.
b. Registros: Este modulo se encarga de almacenar datos binarios que tiene un tamaño fijo y es de acceso rápido
c. CU: Este modulo se encarga de interpretar, codificar y ejecutar todas las instrucción que le damos al
computador.
2. Algunos de los registros que tienen son:
a. Acumulador: Este registro se encarga de almacenar los resultados de las operaciones aritméticas
b. IP: Este registro se encarga de almacenar en la memoria las distintas direcciones de memoria que usted este
utilizando como necesitando
3. Un bus de dirección es un medio compartido de comunicación mediante conductores que conectas las diferentes
unidades de un computador. Algunos de estos buses de direcciones son:
a. Bus de control: Es un bus en el cual se encarga de organizar y redirigir la información hacia el bus pertinente
según la información que se desea transmitir
b. Bus de datos: Este bus se encargar de transmitir información entre la CPU y los perifericos
c. Bus de dirreciones: Este bus se encarga de identificar el dispositivo al que va destinada la información que se
transmite por el bus de datos.
Instrucciones
1. Una instrucción es unos pasos simples que hace la CPU para realizar acciones como operaciones
2. El OpCode es una combinación entre la UC y la CPU para generar operaciones que permitan la ejecución de la misma
3. El formato de una instrucción define la estructura de los bits de una instrucción en terminos de los campos que lo
constituyen.
4. El registro que almacena el OpCode y el campo Data de las instrucciones es el MAR y el MDR
5. El modulo encargado de interpretar los instrucciones es la UC
6. El ciclo de instrucción es una secuencia de las fases Fetch y Execute
7. Las señales generadas por la UC se las llaman ciclos de reloj
8. Las instrucción como máximo conforman seria de 2 a la cuarta que seria 16 instrucciones.
Si las entradas son C=B= 0 A=1 y está habilitado, las salidas són:
Direccionamiento
a) Suponiendo que se tiene una memoria de 4 posiciones en total. ¿Cuántos bits se necesitan, como mínimo, para poder acceder
a cada una de dichas posiciones? (Esto se conoce como “direccionar” la memoria).
REPUESTA: SE NECESITARIA 2 BITS
POSICIÓN MEMORIA
b) Suponer ahora que se tiene una memoria 0 <Posición 0> de 16 posiciones en total.
¿Cuántos bits se necesitan para acceder a 1 <Posición 1> cada posición?
REPUESTA: SERIA DE 4 BITS
2 <Posición 2>
c) Si se tiene una memoria de 1024 posiciones, ¿Cuántos bits se
necesitarán para direccionarla? 3 <Posición 03>
REPUESTA: SE NECESITARIA 10 BITS
d) Tratar de encontrar una regla general en términos de potencias de dos.
REPUESTA: SERIA 2^N EN EL CUAL “N” BITS
e) Sabiendo que:
210 1024 B 1 KB
e.1) ¿Cuántos bits (o líneas
220 1024 KB 1 MB del bus de direcciones) se necesitan para direccionar
una memoria de 4MB? 230 1024 MB 1 GB
REPUESTA: SE NECESITARIA 22 BITS
e.2) Ídem e.1, si la memoria es de 16GB.
REPUESTA: SE NECESITARIA 34 BITS
e.3) ¿Cuál es el registro de la CPU que se utiliza para direccionar la memoria?
REPUESTA: EL REGISTRO MAR
e.4) ¿Qué relación debe haber entre dicho registro y el tamaño de la memoria? ¿Es importante para su dimensionamiento la
longitud de la palabra de memoria?
REPUESTA: EL REGISTRO DEBE TENER LA CAPACIDAD PARA APUNTAR A TODAS LAS DIRECCIONES DE MEMORIA.
e.5) ¿Cuántos “cables” o “líneas” debería tener el bus de direcciones? ¿De qué depende?
REPUESTA: DEPENDE DE LA CANTIDAD DE DIRRECIONES PERO SI USTED CONOCE “N”, SERIAN X LINES TALQUE 2^X = N
i. En esta fase, la siguiente instrucción se encuentra en la dirección de memoria especifica por el contador del
programa.
b. DECODE:
i. En esta fase, la Uc interpreta la instrucción almacenada y determinar que operación tiene que hacer el
procesador.
c. EXECUTE:
i. En esta fase, la UC inicia la ejecución de la instrucción decodifica
d. WRITE BACK:
i. En esta ultima fase, la UC se encarga de escribir ese resultado en el registro de destino apropiado y depues
regresa a la fase fetch para continuar con el ciclo.
2. ¿Qué significa que la fase fetch depende del tiempo y del flag de control de fase?
REPUESTA: ESTA FASE SE VE AFECTADAD POR EL TIEMPO DE ACCESO DE LA MEMORIA, ES DECIR LO QUE TARDE LA MEMORIA
EN RESPONDER LA ORDEN DE LECTURA, ENTONCES LA CPU ESPERA LA REPUESTA DE LA MEMORIA QUE EN ESTA
COMPUTADORA GENERICA TARDA UNOS NANOSEGUNDOS EN HACER ESTA ACCION
3. Sabiendo que la fase fetch consta de 5 microoperaciones, a saber:
f1 = F.t0 IP →MAR
f2 = F.t1 Contenido de palabra de memoria →MDR
f3 = F.t5 MDR →IR
f4 = F.t1 IP + 1 →IP
f5 = F.t7 0 →F
Implementar esta lógica con una memoria PLA (ayuda: el estado del flag F y los ti son las entradas y las fi las salidas)
5. Suponiendo que una CPU terminó la fase fetch de la instrucción STA 88F, que está en la posición de memoria 00F y cuyo
OpCode es 3:
a) Completar el gráfico con los datos de los registros, mostrando cómo se vinculan entre sí uniendo con flechas y explicar
cómo es la secuencia de la generación de microinstrucciones de la fase execute:
010
3 00F 88F
965B
965B
b) Escribir el valor binario de los bits que van del IR al control. Sabiendo que los mismos son la entrada a un decodificador
4 a 24, ¿Qué salida de dicho decodificador será la activa?
c) Escribir las funciones de las señales de microoperaciones de la ejecución de esta instrucción.
d) Realizar la implementación de la lógica del punto c con una memoria PLA (sólo para este código de operación)
e) En base al gráfico, ¿cuál es la longitud de la palabra de memoria?
f) ¿Cuántos “cables” o “vías” debería tener entonces el bus de datos? ¿De qué depende?
RESPUESTAS:
a)
b) EL VALOR BINARIO DE LOS BITS QUE VAN DEL “IR” AL CONTROL ES EL 0011 Y COMO SON 4 ENTRADAS Y 16 SALIDAS,
LA SALIDA QUE VA A SALIR DE ESTE DECODIFICADO SERA LA CUARTA SALIDA
c) LAS FUNCIONES DE LAS SENALES DE MICROOPERACIONES SON:
a. FETCH: DURANTE ESTA FASE, LA CPU ONTIENE LA INSTRUCCIÓN DE LA MEMORIA
b. READ REGISTER: EN ESTA FASE, LA CPU LEE EL CONTENIDO DEL REGISTRO
c. MEMORY ADDRESS: EN ESTA FASE, LA CPU CONFIGURA PARA HACER LAS CONFIGURACIONES CORRECTAS
d. MEMORY WRITE: EN ESTA FASEM LA CPU PONE EL RESULTADO EN LA DIRRECCION DE MEMORIA ESPECIFICA
d) LA MEMORIA PLA SE UTILIZA PARA AGREGAR COMPUERTAS LOGICAS PARA LA EJECUCION DE UNA OPERACIÓN
ESPECIFICA.
6. Una vez completada la ejecución de la instrucción del punto 5, ¿cómo sigue la ejecución del programa? Repetir el ejercicio 5
(puntos a. b. c. y d.) para la próxima instrucción (ayuda: mirar el IP).
REPUESTA: SE EJECUTARA LO QUE ESTA EN LA POSICION DE MEMORIA 010
7. Si la siguiente instrucción es INC, ¿Cuál será el valor del acumulador luego de la operación? ¿Y en qué estado quedarán
seteados los flags del Status Register?
Arquitectura de Computadores [08-2022] 5
Arquitectura de Computadores
Práctico Nº7 Modelo de ejecución
Unidad 7 Campus/Medrano
REPUESTA: EL VALOR DEL ACUMULADOR LUEGO DE LA OPERACIÓN SERA DE 965C Y LAS FLAGS QUEDARAN EN 0
Set de Instrucciones
Instrucción Descripción
LDA HHH La interpretación de su COP (0001) permite la transferencia del dato
LA INTERPRETACION DE SU COP PERMITE LA TRANSFERENCIA DEL DATO ALMACENADO EN LA PALABRA HHH AL
ACUMULADOR DE LA ALU. LAS 2 PRIMERAS MICROOPERACIONES HACEN EFECTIVA LA LECTURA DEL DATO DE
MEMORIA Y LA TERCERA PROCEDE A LA CARGA EN SI
STA HHH
HLT
JMP HHH
ANA HHH
XOA HHH
CLA
CMA
INC
SNA HHH
SZA HHH
SCA HHH
INP
OUT
Reloj
Ejercicio Final
Elaborar dos preguntas o ejercicios sobre alguno de los temas vistos, las cuales serán entregadas a otro alumno para responder.
Explicar las respuestas a dichas preguntas.