En
el tema 3 empezamos a utilizar el programa logisim. Con este programa, que permite
diseñar y simular circuitos digitales, pudimos entender mejor la función de
dichos circuitos.
El
primer montaje que hicimos en las practicas es la implementación de un bus
bidireccional y compartido de 8 bits, capaz de comunicar tres registros entre
sí
El
segundo montaje que hicimos fue el diseño e implementación del banco de 4
registros de 8 bits cada uno.
En
el banco conectaremos los dos bits de selección (necesarios para implementar un
banco de 4 registros) a dos decodificadores. Uno de ellos irá conectado a la
entrada “en” de los registros, y su función será activar únicamente el registro
al que queramos acceder. El otro se conectará a los triestados de los
registros, de forma que solo se activará el triestado del registro seleccionado
en cada momento. Por último, una única señal de carga se conectará a todos los
registros. De esta forma, el registro seleccionado será el único que permitirá
salir sus datos al bus (porque será el único que tendrá su triestado activo) y
el único que podrá cargar el dato que venga por el bus al activar la señal de
carga.
El
último montaje que teníamos que añadir a nuestro camino de datos es una ALU.
La
ALU es la encargada de realizar las operaciones dentro de la CPU y una
característica importante que tiene es que no puede funcionar por si sola. Para
que la ALU funcione necesita Buses y Registros, por eso para que funcione este
montaje necesitamos añadirle los montajes anteriores. Los registros son los
encargados de almacenar los datos de operaciones y el resultado obtenido y los
buses su utilidad es recibir y enviar los datos.
Estos
son ejemplos de como montar una ALU
1/
Esto son ejemplos de operaciones sencillas realizadas en el logisim.
Sumador
OR
2/Ahora
pondré un ejemplo de la ALU compuesta por varias operaciones unidas por un multiplexor,
de forma que el selector del multiplexor seleccionará la operación que queramos
(dejando salir por la salida el resultado de la operación).
ALU
3/
Para terminar pondré un ejemplo de un cronograma y explicare la operación que
se va a realizar.
Los
cronogramas son secuencias detalladas de las actividades que se van a ejecutar
para alcanzar los resultados propuestos. Más adelante lo explicare paso a paso
con un ejemplo de cómo hacer el cronograma.
Siguiendo
este camino de datos y la ALU realizar el proceso de : La operación OR entre R0
y R1 (registros) , almacenándolo el resultado en el Ri1.
Este
seria el cronograma sobre la instrucción del enunciado.
Siguiendo este cronograma, lo primero que debemos saber
es que empezamos desde el banco de registros. Una vez sabiendo eso el segundo
paso es ir hacia la ALU la cual realizara la operación OR. Cuando el primer
número llega a A se almacena, esperando al segundo número que llegue a la ALU
para comenzar dicha operación. Una vez
estén los dos en la ALU se hace la operación y el resultado sale por el
bus inferior Ttmp hasta llegar a Ri1 donde se guardara la solución de la operación.
No hay comentarios:
Publicar un comentario