Diseño del repertorio de instrucciones

Anuncio
Solución al trabajo evaluable 1
Diseño del repertorio de
instrucciones
Arquitectura de
Computadores
I. T. Informática de Gestión
Curso 2006-2007
Tema 2:
Hoja: 2 / 7
Diseño del repertorio de instrucciones
Trabajo evaluable 1
Opción 1
Se desea diseñar un repertorio de instrucciones RISC en el que todas las
instrucciones ocupen 32 bits y sean de modo registro-registro salvo las de carga
almacenamiento. La máquina cuenta con 16 registros de 32 bits.
z El repertorio de instrucciones será
–
Instrucciones de memoria:
z LD R, Memoria (R Å Contenido de la Memoria)
z ST Memoria, R (Contenido de la Memoria Å R)
–
Instrucciones de proceso:
z ADDI / SUBI R1, R2, Inmediato (R1 = R2 +/- Dato inmediato)
z ADD / SUB R1, R2, R3 (R1 = R2 +/- R3)
–
Instrucciones de control:
z JE Dirección de salto (CP Å CP + Desplazamiento si se
cumple la condición de igualdad)
z JMP Dirección de salto (CP Å Dirección de salto)
z Modos de direccionamiento permitidos:
–
Inmediato, para las instrucciones de proceso
–
Relativo a registro, para las instrucciones de acceso a memoria y la
de salto condicional
–
Directo a memoria, para la instrucción de salto incondicional
Se pide:
z Diseño del repertorio de instrucciones anterior
z Indicación de tiempos que se ha tardado en realizar el trabajo. Se deben
indicar los tiempos (tanto de estudio en casa, en la biblioteca, consultas en
Departamento de automática
Área de Arquitectura y Tecnología de Computadores
Arquitectura de Computadores
I. T. Informática de Gestión
Tema 2:
Hoja: 3 / 7
Diseño del repertorio de instrucciones
internet, consultas en tutorías) empleados en: encontrar la solución, en
redactar el trabajo y en crear la presentación
Solución
Se cuenta con un total de 8 instrucciones, para lo cual se necesitará un
código de operación de 3 bits.
Instrucción
LD
ST
ADD R1, R2, R3
SUB R1, R2, R3
ADDI R1, R2, Inm
SUBI R1, R2, Inm
JE Dirección
JMP Dirección
Código de operación
O3
O2
O1
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
En el enunciado nos indican que contamos con 16 registros con lo que se
necesitarán 4 bits para poder identificar cada registro.
Cada instrucción cuenta con un único modo de direccionamiento con lo
que mediante el código de operación se puede conocer.
Por lo tanto, el formato de instrucciones quedaría de la siguiente manera:
Instrucciones de carga-almacenamiento: LD y ST
Se necesitan dos registros, uno que será el origen o el destino de las
instrucciones, y otro para que junto con el desplazamiento indique la
posición de memoria (ya que se trata de un direccionamiento relativo)
CO
(3)
R
(4)
R
(4)
Desplazamiento
(21)
Instrucciones aritmético-lógicas
En este caso contamos con dos tipos de instrucciones: las que trabajan
con dos registros y un dato inmediato y las que trabajan con tres registros.
Departamento de automática
Área de Arquitectura y Tecnología de Computadores
Arquitectura de Computadores
I. T. Informática de Gestión
Tema 2:
Hoja: 4 / 7
Diseño del repertorio de instrucciones
ADDI y SUBI
CO
(3)
R1
(4)
R2
(4)
Inmediato
(21)
ADD y SUB
CO
(3)
R1
(4)
R2
(4)
R3
(4)
No usado
(17)
Instrucciones de salto condicional /incondicional: JE Y JMP
Como la instrucción de salto condicional es única y el direccionamiento es
relativo, se puede hacer que el CP sea implícito y entonces su formato
coincida con el caso del salto incondicional
CO
Desplazamiento / Dirección
directa de memoria
(29)
(3)
Opción 2
Se desea diseñar un repertorio de instrucciones RISC en el que todas las
instrucciones ocupen 32 bits y sean de modo registro-registro salvo las de carga
almacenamiento. La máquina cuenta con 16 registros de 32 bits.
z El repertorio de instrucciones será
–
Instrucciones de memoria:
z LD R, Memoria (R Å Contenido de la Memoria)
z ST Memoria, R (Contenido de la Memoria Å R)
–
Instrucciones de inicialización de registro
z LDI R, Inmediato (R Å Dato inmediato)
–
Instrucciones de proceso:
z ADD / SUB R1, R2, R3 (R1 = R2 +/- R3)
–
Instrucciones de control:
Departamento de automática
Área de Arquitectura y Tecnología de Computadores
Arquitectura de Computadores
I. T. Informática de Gestión
Tema 2:
Hoja: 5 / 7
Diseño del repertorio de instrucciones
z JZ Dirección de salto (CP Å CP + Desplazamiento si se
cumple la condición de igualdad)
z JC Dirección de salto (CP Å CP + Desplazamiento si se
cumple la condición de acarreo)
z JMP Dirección de salto (CP Å Dirección de salto)
z Modos de direccionamiento permitidos:
–
Inmediato, para las instrucciones de inicialización de registro
–
Relativo a registro, para las instrucciones de acceso a memoria y la
de salto condicional
–
Directo a memoria, para la instrucción de salto incondicional
Se pide:
z Diseño del repertorio de instrucciones anterior
z Indicación de tiempos que se ha tardado en realizar el trabajo. Se deben
indicar los tiempos (tanto de estudio en casa, en la biblioteca, consultas en
internet, consultas en tutorías) empleados en: encontrar la solución, en
redactar el trabajo y en crear la presentación
Solución
Se cuenta con un total de 8 instrucciones, para lo cual se necesitará un
código de operación de 3 bits.
Instrucción
LD
ST
LDI
ADD R1, R2, R3
SUB R1, R2, R3
JZ Dirección
JC Dirección
JMP Dirección
Código de operación
O3
O2
O1
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
En el enunciado nos indican que contamos con 16 registros con lo que se
necesitarán 4 bits para poder identificar cada registro.
Departamento de automática
Área de Arquitectura y Tecnología de Computadores
Arquitectura de Computadores
I. T. Informática de Gestión
Tema 2:
Hoja: 6 / 7
Diseño del repertorio de instrucciones
Cada instrucción cuenta con un único modo de direccionamiento con lo
que mediante el código de operación se puede conocer.
Por lo tanto, el formato de instrucciones quedaría de la siguiente manera:
Instrucciones de carga-almacenamiento: LD y ST
Se necesitan dos registros, uno que será el origen o el destino de las
instrucciones, y otro para que junto con el desplazamiento indique la
posición de memoria (ya que se trata de un direccionamiento relativo)
CO
(3)
R
(4)
R
(4)
Desplazamiento
(21)
Instrucción de inicialización de registro: LDI
Necesitamos un registro, y un dato inmediato que ocupará el resto del
formato.
CO
(3)
R1
(4)
Inmediato
(25)
Instrucciones aritmético-lógicas: ADD y SUB
En este caso contamos con dos tipos de instrucciones: las que trabajan
con dos registros y un dato inmediato y las que trabajan con tres registros.
ADD y SUB
CO
(3)
R1
(4)
R2
(4)
R3
(4)
No usado
(17)
Instrucciones de salto condicional /incondicional: JZ, JC Y JMP
Las instrucciones de salto condicional son dos instrucciones diferentes, por
lo que no se necesita codificar la condición. Además si se hace que el CP
sea un dato implícito, únicamente habría que poner el código de operación
y el desplazamiento. En el caso del salto incondicional, los 29 bits que
Departamento de automática
Área de Arquitectura y Tecnología de Computadores
Arquitectura de Computadores
I. T. Informática de Gestión
Tema 2:
Hoja: 7 / 7
Diseño del repertorio de instrucciones
sobran quitando el código de operación, serían para la dirección. De esta
manera queda el mismo formato para las tres instrucciones.
CO
(3)
Desplazamiento / Dirección
directa de memoria
(29)
Departamento de automática
Área de Arquitectura y Tecnología de Computadores
Arquitectura de Computadores
I. T. Informática de Gestión
Descargar