Práctica No.3 Digita.. - Escuela de Ingeniería Electrónica

Anuncio
Instituto Tecnológico de Costa Rica
Escuela de Ingeniería Electrónica
II Semestre 2007
EL- 3310 Diseño de Sistemas Digitales
Profesores:
Ing. Roberto Pereira Arroyo, M.Sc.
Ing. Adolfo Chaves Jiménez, Lic.
PRÁCTICA No. 3 – Microarquitectura Monociclo
1) Haga una lista de los bloques funcionales que están el la ruta crítica de la ruta
de datos monociclo de MIPS. ¿Cuál instrucción o secuencia de instrucciones
requiere toda la ruta de datos crítica?
2) Se desea implementar el siguiente algoritmo:
B=1
While (A B)
begin
A=A/2
B=B*2
End
Los operandos y los resultados son de 16 bits. Diseñe la ruta de datos (datapath).
Asuma que las variables A y B están representadas por registros del banco de
registros. Utilice sólo un módulo de desplazamiento.
3) Se desea implementar el siguiente algoritmo:
If (A B)
D=((A+B)*2)+C
Else
D=C/2+B
Los operandos y los resultados son de 16 bits. Diseñe la ruta de datos. D y C son
localidades de memoria en la memoria de datos.
4) Considere la ruta de datos de la figura.
a) Indique la secuencia de pasos para implementar las siguientes
instrucciones máquina de un computador, indicando sobre la figura qué puntos de
control se necesitarían. Explique su significado.
-LOAD X
//AC Mem[X]
-ADD X
// AC AC + Mem[X]
-SUB X
// AC AC - Mem[X]
-JUMP X
// PC X
Simbología:
AC: Acumulador
IR: Registro de instrucciones
PC: Contador de programa
MDR: Memory data register
MAR: Memory address register
ALU
MDR
AC
A
memoria
MAR
A
memoria
PC
IR
Unidad de
Control
5) Considere un computador de arquitectura registro-registro con las siguientes
características:
-Palabras de 16 bits, mínima unidad direccionable = 1 byte
-Datos e instrucciones de 16 bits
-Repertorio de instrucciones: LOAD, STORE, ADD, SUB, MUL, DIV, JMP (salto
incondicional), BZ (salte si cero), JSR (salto a subrutina), RTS (retorno de
subrutina).
-8 registros de propósito general, de los cuales el registro R0 siempre almacena 0
-Direccionamiento directo de registro y direccionamiento inmediato para
instrucciones aritméticas
-Direccionamiento indirecto por registro con desplazamiento, direccionamiento
absoluto (directo) y direccionamiento relativo, para las instrucciones de acceso a
memoria
a) Diseñe un formato de instrucción para el computador, procurando direccionar el
mayor rango de localidades de memoria en las instrucciones de acceso a memoria
b) Diseñe la ruta de datos para el computador e indique las señales de control
necesarias para ejecutar cada instrucción del repertorio
6) En relación con la microarquitectura monociclo, conteste las siguientes
preguntas. Explique su respuesta.
a) ¿Qué determina el período de reloj?
b) ¿Pueden compartirse módulos funcionales para realizar más de una
operación?
c) ¿Pueden compartirse módulos funcionales para realizar más de una
operación en un mismo ciclo?
7) Considere la microarquitectura monociclo de MIPS.
Explique cómo
implementar las siguientes instrucciones en dicha microarquitectura:
a) Jump register (jr), con el formato jr rs, la cual consiste en un salto
incondicional a la instrucción cuya dirección está almacenada en el registro rs
b) Jump and link register (jalr), con el formato jalr rs, rd, la cual consiste en un
salto incondicional a la instrucción cuya dirección está almacenada en el registro
rs y guarda la dirección de la siguiente instrucción en el registro rd
c) Set on less than unsigned (sltu), con el formato sltu rd, rs, rt, la cual guarda
un 1 en el registro rd si el valor en el registro rs es menor que el valor en el registro
rt, o 0 en el caso contrario
De ser necesario, haga modificaciones en la microarquitectura.
Descargar