Arquitectura de computadores

Solo disponible en BuenasTareas
  • Páginas : 10 (2443 palabras )
  • Descarga(s) : 0
  • Publicado : 10 de febrero de 2011
Leer documento completo
Vista previa del texto
ARQUITECTURA DE COMPUTADORES 1
PARTE 1
En esta parte del laboratorio implementamos el módulo CPU.gdf. El esquema general de dicho módulo lo presentamos a continuación:

De forma general explicamos de que se compone la CPU, y luego profundizaremos aquellos aspectos que creamos convenientes: • • • • • Las cajas Unidad de Registros y ALU son las implementadas en el laboratorio 1. El control C3se encarga de seleccionar que operación realizará la ALU. La caja IR es un registro de 8 bits que contiene la instrucción que se va a ejecutar. La caja PC es un registro de 8 bits que contiene la dirección de memoria de la próxima instrucción a ser ejecutada. La caja AUX es un registro de 8 bits que se usa para almacenar datos de forma auxiliar en algunas de las operaciones pedidas. La caja MDRse encarga de fijar la dirección del bus de acuerdo a la señal sentido. Es decir cuando sentido vale 0 MDR llevará información desde la alu hacia la RAM (escribe en la RAM); en cambio si el valor de sentido es 1, MDR leerá datos desde la RAM hacia el multiplexor 1 (MUX1). Este módulo fue implementado sin utilizar memoria. MAR es un cable de datos proveniente del multiplexor 2 (MUX2), el cual seencarga de seleccionar la dirección de memoria RAM que se desea leer o escribir. MUX1 y MUX2 son multiplexores que se encargan de seleccionar las entradas de la ALU según los controles C1 y C2.

• •









La caja SHIFTER se conecta directamente a las entrada B y Control de la ALU, pero solo tiene efecto en la operación SHIFT. El funcionamiento de este módulo se explicarádetalladamente más adelante. Las FLAGS son 4 flip-flops de tipo D con enable que cambian de valor según el habilitador de escritura proveniente de la Unidad de Control (que se activa en las operaciones correspondientes) y las banderas de salida de la ALU. La caja CLOCKUC se encarga de pasarle a la Unidad de Control y a los registros, clocks asincrónicos para resolver las operaciones pedidas de formaeficiente. Este módulo se explicará con mayor profundidad más adelante. La UNIDAD de CONTROL se encarga de activar las distintas señales de acuerdo a la instrucción en ejecución, para luego pasarselas a la CPU y que la misma pueda realizar cada una de la operaciones.

FUNCIONAMIENTO GENERAL DE LA CPU :
CLOCKUC Para diferenciar nuestras etapas de bajada y subida de las banderas de la Unidad deControl, y de la escritura y lectura de las distintas memorias de la CPU, se nos ocurrió en primera instancia negar el clock de entrada, de forma de trabajar dentro de la UC con este clock y en la CPU con el clock conectado directamente. Esto resolvía en un principio el problema de leer o escribir en las memorias a la vez que sus banderas Enable bajaban o subian (los flancos ascendentes de la UC donde secambiaban las banderas, eran flancos descendentes de las memorias y viceversa). Pero se nos generaba un problema con las etapas de cada instrucción, las cuales avanzaban junto con cada flanco del clock de la UC, pero como al llegar a la etapa final cada instrucción enviaba una señal para resetear el contador, se generaba una doble dependencia entre la etapa final y el reseteo de las etapas (en latransición de la penultima etapa a la primera, se necesitaba q se activara la ultima etapa la cual instantáneamente se autoreseteaba, por lo tanto casi no existía). Entonces se nos ocurrió conectar, ademas del clock negado, el clock directo a la UC y usarlo tan solo para, en el momento de resetear el contador en la ultima etapa, combinar esta señal y un flanco ascendente del clock directo pararesetear el contador ( El funcionamiento del contador, las etapas y la señal terminé se explican en la sección Unidad de Control). Esto permitío a la ultima etapa aparecer durante medio ciclo de un clock: entre un flanco ascendente y uno descendente del clock negado (que seria un flanco ascendente del clock directo), pero nos llevo a que la etapa 0 siguiente a la ultima de la instrucción anterior...
tracking img