You are on page 1of 77

INTRODUCCIN

WinDLX (Windows De LuXe simulator) simulador del pipeline del procesador


DLX desarrollado en el Departamento de Diseo-VLSI de la Universidad
Tecnolgica de Viena. Referencia bibliogrfica: Arquitectura de Computadores:
Una Aproximacin Cuantitativa 1 ed., Patterson y Hennessy.
1.

2.

Permite el procesamiento de programas escritos en ensamblador de DLX,


mostrando toda la informacin relevante de la CPU:
1. Estado del pipeline
2. Banco de registros
3. Entrada/Salida
4. Memoria
5. Estadsticas etc
Posibilita la modificacin de la estructura y tiempos de latencia del pipeline de la
CPU y del tamao de la memoria, as como del contenido de otros de sus
componentes mientras se desarrolla la ejecucin de un programa.
2005-2006

Mara Jos Daz

Diapositiva: 1

Todos los programas vienen en un fichero autoexpandible: WINDLX_D.EXE.


Siga los siguientes pasos:

1. Crear directorio WINDLX y situarse en l.


2. Ejecutar WINDLX_D.EXE y se desempaquetarn todos los archivos quedando
instalado el programa. Los archivos que se deben haber creado son:

WINDLX.EXE (Simulador)
WINDLX .HLP Archivo de ayuda (Iingls)
WDLXTUT.DOC Breve tutorial (Ingls y formato: Word)
FACT.S Archivo ejemplo en ensamblador de DLX
GCM.S Archivo ejemplo en ensamblador de DLX
INPUT.S Archivo ejemplo en ensamblador de DLX
PRIM.S Archivo ejemplo en ensamblador de DLX
README Informacin sobre la instalacin.
README.TXT Informacin sobre la instalacin

3. Ejecute el programa simulador WINDLX.EXE para comenzar a trabajar.

2005-2006

Mara Jos Daz

Diapositiva: 2

Una vez abierta la aplicacin podr observar que aparece una ventana
principal que a su vez contiene 6 ventanas inicialmente minimizadas,
mostrando cada una de ellas diferentes aspectos relacionados con el
procesador que se est simulando. El nombre de cada una de estas seis
ventanas es:

Registros (Register).
Cdigo (Code)
Pipeline.
Diagrama de Ciclos de Reloj (Clock Cycle Diagram)
Estadsticas (Statistics)
Puntos de ruptura (Breakpoints)

Una caracterstica de estas ventanas es que no pueden cerrarse por lo que


permanecen abiertas o minimizadas durante todo el tiempo que se est
empleando el simulador. Junto con estas ventanas, existen otras que son
creadas dinmicamente (hasta un mximo de 10) y que muestran el estado
de la memoria asociada al procesador. Ver Ventana

2005-2006

Mara Jos Daz

Diapositiva: 3

La Barra de mens de WinDLX contiene 7 mens con los comandos


necesarios para manejar las distintas posibilidades del simulador. Code
Pipeline cambia segn que ventana se encuentre activa. Son:
- File
- Window
- Execute
- Memory
- Configuration
- Register, Code, Pipeline, Clock Cycle Diagram, Statistics, Breakpoints
- Help.

2005-2006

Mara Jos Daz

Diapositiva: 4

Vemos los registros disponibles en el procesador. Ver Registros


Los registros existentes son:

Especiales. 16 registros. Se describirn ms

adelante.
Enteros o de propsito general. 32 registros (R0
al R31) de 32 bits. El registro R0 es siempre 0.

Coma flotante. Pueden considerarse como 32


registros de simple precisin (F0 al F31) o de doble
precisin (64 bits), en cuyo caso slo se dispone de
16 registros (D0, D2, D4,, D30).
2005-2006

Mara Jos Daz

Diapositiva: 5

Los registros se modifican haciendo doble clic sobre uno de ellos en la


ventana de registros; tras esto aparecer una ventana de dilogo en la que
se puede introducir el nuevo valor.

Registros modificables:
-

Propsito general
Coma flotante
Registros especiales PC (Contador de Programa) y FPSR (Registro de
estado de Punto Flotante).

Valores permitidos :
- Para los registros enteros, expresiones enteras: R15 * 10.
- Para los registros en coma flotante: solo valores constantes: 10.5

2005-2006

Mara Jos Daz

Diapositiva: 6

Registros de Propsito especial


FPSR (Floating-Point Status Register). Registro de
estado (1 bit).
Se utiliza para comparaciones y excepciones de punto
flotante.
Se actualiza a travs de los registros de propsito general.
Las instrucciones de salto basan su resultado en el valor del
bit (1 cierto, 0 falso).

PC (Program Counter). Contiene la direccin de la


prxima instruccin a ejecutar.
Saltos y bifurcaciones pueden cambiar su contenido.
2005-2006

Mara Jos Daz

Diapositiva: 7

IMAR (Instruction Memory Address Register). Se


inicializa con el contenido del contador de programa
en la etapa IF.
IR (Instruction Register). Se carga con la siguiente
instruccin a ejecutarse en la etapa IF.
A, B. Se cargan en la etapa ID y sus valores se
envan a los operandos de la Unidad Aritmtico
Lgica en la siguiente etapa (EX). Existen adems

los pseudo-registros AHI y BHI que contienen


los 32 bits superiores para valores en coma
flotante de doble precisin.
2005-2006

Mara Jos Daz

Diapositiva: 8

BTA (Branch Target Address): La direccin de


salto/bifurcacin se calcula en la etapa ID y se escribe
en el registro BTA.

ALU (Aitmethic Logical Unit): Se guarda el resultado


de una operacin. WINDLX posee ademas un
pseudo-registro ALUHI que tiene los 32 bits
superiores para coma flotante de doble precisin.
DMAR (Data Memory Address Register). Tendr la
direccin de memoria a la que se va a acceder en la
etapa EX. En la etapa MEM, se accede a memoria
con el valor de este registro.
2005-2006

Mara Jos Daz

Diapositiva: 9

SDR (Store Data Register). Contiene el dato que se

va a escribir en memoria. SDRHI es un pseudoregistro que contiene los 32 bits superiores para
valores en punto flotante de doble precisin.
LDR (Load Data Register). Contiene el dato leido de
memoria. LDRHI es un pseudo-registro que contiene
los 32 bits superiores para valores en punto flotante
de doble precisin.
Desde el men Register se permite visualizar todo el
conjunto de registros.
2005-2006

Mara Jos Daz

Diapositiva: 10

Ventana Code

Es donde se visualizan las instrucciones de


DLX en hexadecimal y desemsambladas, junto
con su direccin.
Los puntos de ruptura se indican con Bxx, xx
indica el tipo de punto de ruptura.
En cada etapa del pipeline se utiliza un color,
cuando una instruccin entra en dicha etapa el
fondo se pone de dicho color y a la derecha
aparece el nombre de la etapa en la que se
encuentra. Ver Ejemplo
2005-2006

Mara Jos Daz

Diapositiva: 11

Ventana Code

Nos podemos mover por el cdigo con las


teclas RePag,AvPag, Inicio, Fin y las teclas del
cursor.
Obtenemos
ms
informacin
de
las
instrucciones si seleccionamos la instruccin y
pulsamos ENTER. Aparece la ventana de
informacin, pulsando ESC o el botn OK
volvemos a la ventana de cdigo.
Ver ventana de informacin
2005-2006

Mara Jos Daz

Diapositiva: 12

Ventana Code

El men Code tiene los siguientes comandos:


From Address. Permite especificar la direccin
a partir de la cual se va a visualizar en la
ventana CODE.

2005-2006

Mara Jos Daz

Diapositiva: 13

Ventana Code

Set Breakpoint. Permite asignar un


punto de ruptura a la instruccin
seleccionada.

2005-2006

Mara Jos Daz

Diapositiva: 14

Ventana Code

Delete Breakpoint. Permite eliminar el punto


de ruptura definido para la instruccin
seleccionada.

2005-2006

Mara Jos Daz

Diapositiva: 15

Ventana Pipeline

Se visualizan las etapas por las que pasan las


instrucciones
dentro
del
pipeline
del
procesador. Ver Pipeline
Haga doble click sobre una instruccin y
obtendr informacin detallada, sobre su
ejecucin. Ver informacin
Display Floating Point Stages, nico elemento
del men Pipeline. Muestra en la ventana
Pipeline las etapas en coma floatante
existentes o las cinco etapas bsicas del
pipeline del DLX.
2005-2006

Mara Jos Daz

Diapositiva: 16

Ventana Clock Cicle Diagram

Se visualizan las operaciones que se realizan


en cada ciclo de reloj y en cada etapa. Ver
pantalla
Cada columna representa el estado del pipeline
en un ciclo de reloj.
El estado actual se representa en la columna
de la derecha en color gris.
Para obtener mayor informacin, hacer doble
click sobre la instruccin.
2005-2006

Mara Jos Daz

Diapositiva: 17

Ventana Clock Cicle Diagram

Las detenciones estn representadas


por
cajas de color (identificativas de cada etapa).
Tipos de Detencin:
R-Stall (Read After Write Stall). Riesgo de datos.
Una instruccin J intenta leer un operando que va a
ser modificado por una instruccin previa I. Surgen
de las dependencias verdaderas.
T-Stall (Trap Stall). Se produce ante una
instruccin de trap. Esta instruccin permanece en
la etapa IF hasta que no queden ms instrucciones
en el interior del pipeline.
2005-2006

Mara Jos Daz

Diapositiva: 18

Ventana Clock Cicle Diagram


W-Stall (Write After Write Stall). Una instruccin J
intenta escribir en un operando destino antes de
que sea modificado por una instruccin anterior I.
Surgen de las dependencias de salida
S-Stall (Structural Stall). No existen suficientes
recursos hardware para ejecutar la instruccin.
Stall. Cuando una instruccin en punto flotante est
en la etapa MEM, la instruccin siguiente se
detiene en la etapa intEX etiquetndola con la
palabra Stall.

2005-2006

Mara Jos Daz

Diapositiva: 19

Ventana Clock Cicle Diagram

Las opciones del men sn:


Display Forwarding. Se activa para permitir la
anticipacin de datos, evitando la detencin. Se
indica con una flecha verde en el diagrama de
ciclos de reloj.
Display Cause of Stalls. Si est activa, se marca
con una flecha roja la instruccin que causa la
detencin por riesgos de datos (RAW o WAW).
Delete History. Elimina el historial de instrucciones
ejecutadas en el diagrama de ciclos de reloj. No se
volvern a visualizar en el diagrama.
2005-2006

Mara Jos Daz

Diapositiva: 20

Ventana Clock Cicle Diagram


Set Histroy Length : Permite configurar la longitud del
historial (entre 0 y 100 instrucciones). Con longitud =0, slo
se visualiza en el diagrama la instruccin que se ejecuta en
ese momento.

Ver detenciones y anticipacin

2005-2006

Mara Jos Daz

Diapositiva: 21

Ventana Statistics

Permite visualizar estadsticas


simulacin que se est realizando.
La informacin que aparece es:

sobre

la

Total. Contiene:
N de ciclos consumidos.
N de instrucciones ejecutadas que ha pasado
por la etapa ID.
N de instrucciones que estn siendo ejecutadas
en ese instante en el pipeline.
2005-2006

Mara Jos Daz

Diapositiva: 22

Ventana Statistics
Hardware configuration. Proporciona informacin
sobre:
Tamao de memoria.
Unidades de proceso de punto flotante y ciclos
que consumen.
Habilitado o no el mecanismo de anticipacin.

Stall. Proporciona informacin absoluta y


relativa sobre:
N de riesgos RAW. Si la anticipacin est
habilitada y la opcin Detail Info del men
Statistics est activa, el nmero de detenciones
se dividir en :
2005-2006

Mara Jos Daz

Diapositiva: 23

Ventana Statistics
N de riesgos RAW provocados por una instruccin de carga.
N de riesgos RAW provocados por una instruccin de salto o
bifurcacin.
N de riesgos RAW provocados por una instruccin de punto
flotante.

N de riesgos WAW.
N de detenciones estructurales antes de instrucciones
de coma flotante.
N de detenciones de control. Es equivalente al nmero
de saltos condicionales efectivos debido a que el
procesador DLX simulado aplica la poltica de predecirno-efectivo, no produciendo los saltos no efectivos
detenciones y los efectivos producen la detencin de un
ciclo.
2005-2006

Mara Jos Daz

Diapositiva: 24

Ventana Statistics
Conditional Branches. N de saltos condicionales.
Si la opcin Detail Info est activada se amplia la
informacin mostrando los saltos efectivos y los no
efectivos.
Load/Store-Instructions. N de instrucciones de
carga y almacenamiento ejecutadas. Si la opcin
Detail Info est activa, se muestran las cargas y
almacenamientos por separado.
Floating point stages instructions. N de
instrucciones ejecutadas en las etapas de punto
flotante. Si la opcin Detail Info est activa la
informacin se presenta:
2005-2006

Mara Jos Daz

Diapositiva: 25

Ventana Statistics
Total de instrucciones ejecutadas en la etapa faddEXStage.
Total de instrucciones ejecutadas en la etapa fmulEXStage.
Total de instrucciones ejecutadas en la etapa fdivEXStage.

Traps. Total de traps realizados.


Ver Diagrama de ciclos de reloj

2005-2006

Mara Jos Daz

Diapositiva: 26

Ventana Breakpoints
Contiene las instrucciones sobre la que se han
definido puntos de ruptura.
Permite tener como mximo 20 puntos de ruptura.
Se permite modificar, visualizar y modificar puntos de
ruptura ya definidos.
Hacer doble click sobre la instruccin para modificar el
punto de ruptura.
2005-2006

Mara Jos Daz

Diapositiva: 27

Ventana Breakpoints
El men aparecen los siguientes comandos:
Set Permite fijar un punto de ruptura, introducciendo en
la ventana de dilogo los siguientes datos:
Addres. Direccin de la instruccin. Puede ser:
Expresin entera formada por operadores y smbolos. El resultado
es mltiplo de 4 o se convertir al siguiente mltiplo de 4.

Type. Indica la etapa del pipeline en que se abortar la instruccin,


IF, ID, EX, MEM, WB. O bin cuando se produzca la operacin
indicada en el caso de READ y WRITE.

Delete. Elimina el punto de ruptura que est seleccionado.


Delete All. Elimina todos los puntos de ruptura definidos.
Change Abre ventana de dilogo. Ver ventana dilogo

2005-2006

Mara Jos Daz

Diapositiva: 28

Barra de Mens

La barra de men contiene 6 opciones:


File
Window
Execution
Memory
Configuration
Help

2005-2006

Mara Jos Daz

Diapositiva: 29

Men File

Tareas relacionadas con la carga de ficheros


Reset DLX. Al seleccionarla se realizan las
siguientes operaciones:

Se limpia el Pipeline
Se inicializan las estadsticas
Se inicializan los registros
Se elimina el historial de instrucciones ejecutadas
Se cierran todos los ficheros abiertos
Se cancela la redireccin DLX-I/O
Se limpia la ventana DLX-I/O
La memoria permanece inalterable (los smbolos
definidos se mantienen).

2005-2006

Mara Jos Daz

Diapositiva: 30

Men File
Reset All. Todas las operaciones que realiza Reset DLX,
inicializando adems la memoria y eliminando todos los
smbolos excepto $DATA y $TEXT.
Load Code or Data. Permite seleccionar ficheros con
cdigo DLX con extensin .s.
Load ->Realiza la carga en DLX de los ficheros
seleccionados en la parte de Selected Files.
Cancel -> Cancela la pantalla.

Select -> Selecciona el fichero seleccionado y lo


pasa a la ventana Selected Files.
Delete -> Borra el fichero seleccionado de la
ventana de Selected Files.

2005-2006

Mara Jos Daz

Diapositiva: 31

Men File
El poder cargar varios mdulos a la vez permite la utilizacin
de smbolos globales.

Quit WINDLX. Realiza la salida del simulador, permitiendo


guardar la configuracin que se tena en ese momento.

2005-2006

Mara Jos Daz

Diapositiva: 32

Men Window

Permite opciones de visualizacin de las


ventanas de Windlx.
Pemite maximizar las ventanas de trabajo de
Windlx:
Pipeline
Stadistics
Register
Breakpoints
Code
Clock Cicle
2005-2006

Mara Jos Daz

Diapositiva: 33

Men Execute
Permite ejecutar el cdigo ensamblado y visualizar la ventana
de entrada/salida. Los comandos que aparecen son:

Single Cycle: La simulacin se realiza ciclo a


ciclo. (Tecla F7).
Multiple Cycles: La ejecucin se realiza
simulando los n ciclos parametrizados en la
ventana (Tecla F8):
La simulacin se parar cuando:
- Se simule el n de ciclos especificados
- Se aborte la operacin pulsando CANCEL.
- Ocurra un error
- Se alcance un punto de ruptura
- Se procese un trap
2005-2006

Mara Jos Daz

Diapositiva: 34

Men Execute

En los dos opciones sgtes. se visualizar la


ventana DLX-I/O. Ver ventana
Run. (Tecla F5) La ejecucin continuar hasta:

Detencin con el botn CANCEL


Ocurra un error
Se alcance un punto de ruptura
Se procese un trap

Run to(Tecla F4) Ejecutar hasta encontrar un


punto de ruptura definido temporalmente, pero que
se guarda para la prxima vez que se utilice este
comando.
2005-2006

Mara Jos Daz

Diapositiva: 35

Men Execute

Display DLX-I/O. Visualiza la ventana DLX-I/O.

Esta ventana se activa cuando:


Al activar Display DLX-I/O.
Se ejecuta un trap, cuya salida no ha sido
redireccionada a un archivo.
Se ejecuta un trap que necesita de introduccin de
datos.
Cuando se ejecuta un programa con ms de un
ciclo, permitiendo abortar la simulacin, introducir
un dato o visualizar un mensaje.
2005-2006

Mara Jos Daz

Diapositiva: 36

Men Execute

La ventana DLX-I/O dispone de un men


llamado DLX-Standard-I/O que se obtiene al
pulsar la esquina superior izquierda de la
ventana. Contiene:
Delete Window: Limpia la ventana DLX-I/O.
Redirect to File: Tiene un submen con las sgtes.
opciones:
Standard input. Entrada de datos hacia el programa.
Standard output. Salida de datos de la aplicacin.
Standard error. Salida de errores durante la simulacin.
2005-2006

Mara Jos Daz

Diapositiva: 37

Men Execute

Cualquiera de las entradas, salidas y errores se


pueden redireccionar a un fichero mediante las
opciones del men Redirect To File :
Standard Input (Extensin .IN).
Standard Output (Extensin .OUT).
Standard Error (Extensin .ERR).

Ver cuadro de dilogo

2005-2006

Mara Jos Daz

Diapositiva: 38

Men Memory

Proporciona comandos para :


Visualizar contenido de memoria (Tecla F6). Ver
Permite ver los valores en:
Hexadecimal
Decimal
Carcter

Habiendo seleccionado el tamao de la representacin


del dato anteriormente:

2005-2006

Byte. Permite formato hexadecimal, decimal o carcter.


Half Word. Permite hexadecimal o decimal.
Word. Permite hexadecimal o decimal.
Floating Point. Permite decimal.
Double Floating Point. Permite decimal.
Mara Jos Daz

Diapositiva: 39

Men Memory

Cambiar el contenido de direcciones de memoria


(Tecla F2). Ver
Se puede seleccionar el formato de visualizacin del
dato.
Para modificar la posicin de memoria se introduce la
expresin entera y se pulsa el botn SET.
Next -> Muestra el contenido de la posicin siguiente a la
direccin actual.
Previous -> Muestra el contenido de la posicin anterior a
la actual.
La direccin se incrementa en el nmero de bytes
correspondientes, segn el tipo de formato seleccionado.
2005-2006

Mara Jos Daz

Diapositiva: 40

Men Memory

Symbols . Permite la visualizacin y modificacin


de smbolos. Ver Ventana.
En la ventana Simbols List, se visualizan todos
los smbolos definidos, ordenados por el nombre
y el valor.
Se definen nuevos smbolos, introducciendo
nombre y valor y pulsando el botn New.
Se cambia el valor de un smbolo,
seleccionndolo e introducciendo un nuevo valor
en el campo Value.
Se borra un smbolo, seleccionndolo y pulsando
el botn Delete.
2005-2006

Mara Jos Daz

Diapositiva: 41

Men Configuration

Permite configurar el simulador WinDLX. Tiene


los siguientes comandos:
Floating
point Stages. Permite la
configuracin de las unidades en punto
flotante (1..8) y sus latencias (1..50 ciclos).
Modificar uno de estos valores implica la
reinicializacin del procesador.
Ver Pantalla de Configuracin
2005-2006

Mara Jos Daz

Diapositiva: 42

Men Configuration
Memory size. Permite modificar el tamao de
memoria
disponible
por
el
procesador
tericamente.
El tamao variar entre 512 bytes (0x200) y 16
Mbytes (0x1000000).
En la prctica el tamao vendr limitado por la
configuracin del entorno Windows.

Ver Pantalla Configuracin de Memoria


2005-2006

Mara Jos Daz

Diapositiva: 43

Men Configuration
Simbolic Addresses.
Activado las direcciones de memoria se visualizarn
como smbolo + desplazamiento.
No activo las direcciones de memoria se visualizarn en
hexadecimal

Absolute Cycle Count.


Activado, se cuentan los ciclos de reloj desde 0 y se
reinicializa el procesador y las estadsticas.
No activo, los ciclos de reloj se cuentan a partir del
instante actual ( 0, -1, -2 ..).

Enable Forwarding.
Activa o desactiva el mecanismo de anticipacin de
datos.
2005-2006

Mara Jos Daz

Diapositiva: 44

Men Configuration
Load. Permite recuperar un fichero de configuracin del
procesador.
Despus de realizar la carga se reinicializa Windlx sin
inicializar la memoria, ni los smbolos definidos.

Save. Permite guardar la configuracin del procesador en


un fichero con extensin .WDC. Cuando Windlx se inicia
por primera vez se carga el archivo Windlx.wdc
automticamente.
2005-2006

Mara Jos Daz

Diapositiva: 45

Men Help

Permite acceder
constituido por:

al

sistema

de

ayuda

Manual de usuario
Descripcin del procesador DLX
Repertorio de Instrucciones.

2005-2006

Mara Jos Daz

Diapositiva: 46

Estructura del pipeline DLX

El pipeline DLX consta de 5 etapas.

2005-2006

Mara Jos Daz

Diapositiva: 47

IF
Se lee una instruccin de memoria y se almacena
en el registro de instrucciones.
El contador de programa se incrementa apuntando
a la siguiente instruccin.

ID
Se decodifica la instruccin leida en la etapa IF.
Se registros implicados en la instruccin se
transfieren del bando de memoria y se almacenan
en los registros A y B.
Se calculan los saltos condicionales, para reducir
los riesgos de control
2005-2006

Mara Jos Daz

Diapositiva: 48

EX
Se selecciona la unidad adecuada para los operandos a tratar.
Las unidades funcionales pueden ser:
intEX. Realiza operaciones aritmticas enteras, excepto
multiplicar y dividir. Calcula tambin las direcciones
efectivas de salto para referencias a memoria y
bifurcaciones.
faddEX. Realiza sumas y restas en coma flotante en simple
y doble precisin.
fmulEX. Realiza multiplicacin en coma flotante en simple y
doble precisin con y sin signo.
fdivEX. Realiza divisin en coma flotante en simple y doble
precisin con y sin signo.
2005-2006

Mara Jos Daz

Diapositiva: 49

MEM
Solo las cargas y almacenamientos acceden a
esta etapa.
Carga: Los datos se leen de memoria
Almacenamiento: Los datos se transfieren a
memoria.

Las direcciones usadas se calculan en la etapa


anterior.
2005-2006

Mara Jos Daz

Diapositiva: 50

WB
El resultado obtenido de las etapas anteriores se
transfiere al banco de registros.
La operacin de escritura a registro se realiza en la
pimera mitad del ciclo, luego la instruccin que se
encuentre en la etapa ID en ese momento, puede
leer el registro en la segunda mitad del ciclo de
reloj.
Esto evita utilizar la anticipacin de resultados a
dicha instruccin.
2005-2006

Mara Jos Daz

Diapositiva: 51

Ensamblador DLX

Las instrucciones del procesador DLX son de 4 tipos:

De transferencia de datos.
Lgicas y aritmticas.
De control.
De punto flotante

Todas las instrucciones son de 32 bits.

Hay tres formatos de instrucciones distintos:


6 bits

1.- TIPO R :

Cod. Op.

6 bits

2.- TIPO I :

3.- TIPO J :
2005-2006

Cod. Op.

5 bits 5 bits 5 bits 5 bits


rs

rt

rd

5 bits 5 bits
rs

rt

6 bits

26 bits

Cod. Op.

Direccin

shamt

6 bits
funct

16 bits
Direccin

Mara Jos Daz

Diapositiva: 52

Ins. Transferencia de Datos

Se usan para transferir datos:


Entre registros y memoria
Entre registros enteros y registros punto
flotante o especiales.
La direccin de memoria se calcula mediante:
dir =16 bits de desplazamiento con signo
+registro de propsito general.
Ver conjunto de instrucciones

2005-2006

Mara Jos Daz

Diapositiva: 53

Ins. Transferencia de Datos

2005-2006

Mara Jos Daz

Diapositiva: 54

2005-2006

Mara Jos Daz

Diapositiva: 55

2005-2006

Mara Jos Daz

Diapositiva: 56

2005-2006

Mara Jos Daz

Diapositiva: 57

2005-2006

Mara Jos Daz

Diapositiva: 58

2005-2006

Mara Jos Daz

Diapositiva: 59

2005-2006

Mara Jos Daz

Diapositiva: 60

Veamos la informacin que contiene en cada una de las etapas

2005-2006

Mara Jos Daz

Diapositiva: 61

Informacin general sobre la instruccin


Instruccin consultada
Direccin en memoria
Codificacin en hexadecimal

Etapa en la que se encuentra


Ciclo en que comenz la ejecucin
Ciclo en que finaliz, si lo ha hecho
Nmero de ciclos consumidos

2005-2006

Mara Jos Daz

Diapositiva: 62

Informacin sobre la etapa IF


Duracin de la etapa, dentro sobre los ciclos en total.
Estado de la ejecucin
Qu se ha hecho ?

Registro de direccin de memoria de


Instruccin = Contrador de Programa
Registro Instruccin=Contenido de de la
direccin almacenada en IMAR.
Contador de programa = Siguiente Instruccin
a ejecutar.
No ha necesitado detenciones.

2005-2006

Mara Jos Daz

Diapositiva: 63

Informacin sobre la etapa ID


Duracin de la etapa, dentro sobre los ciclos en total.
Estado de la ejecucin
Qu se ha hecho ?

Registro A = R0

No ha necesitado detenciones.

2005-2006

Mara Jos Daz

Diapositiva: 64

Duracin de la etapa, dentro sobre los ciclos en total.


Estado de la ejecucin
Qu se ha hecho ?

Registro A = R0
No ha necesitado detenciones.
No se ha producido adelantamiento

2005-2006

Mara Jos Daz

Diapositiva: 65

Duracin de la etapa, dentro sobre los ciclos en total.


Estado de la ejecucin
Qu se ha hecho ?

No se ha hecho nada
No ha necesitado detenciones.

2005-2006

Mara Jos Daz

Diapositiva: 66

Duracin de la etapa, dentro sobre los ciclos en total.


Estado de la ejecucin. Aun en el Pipeline
Qu se ha hecho ?

Registro R1 = Registro ALU


No ha necesitado detenciones.

2005-2006

Mara Jos Daz

Diapositiva: 67

Tipo de detencin

2005-2006

Mara Jos Daz

Diapositiva: 68

Anticipacin

Detencin

2005-2006

Mara Jos Daz

Diapositiva: 69

2005-2006

Mara Jos Daz

Diapositiva: 70

2005-2006

Mara Jos Daz

Diapositiva: 71

2005-2006

Mara Jos Daz

Diapositiva: 72

2005-2006

Mara Jos Daz

Diapositiva: 73

2005-2006

Mara Jos Daz

Diapositiva: 74

2005-2006

Mara Jos Daz

Diapositiva: 75

2005-2006

Mara Jos Daz

Diapositiva: 76

2005-2006

Mara Jos Daz

Diapositiva: 77

You might also like