Tomasulo Simulation Results


The Input Assembly Code (Original and Translation)


ld F1, 1(R0)
ld F2, 1(R0)
100:	 add.d F3, F2, F1
sub.d F2, F2, F1
beq R2, R1, 2
mult.d F6, F3, F1
add R4, R1, R2
sd F6, 1(R6)
sd F4, 1(R4)

0	-1	1	0	1
0	-1	2	0	1
5	100	3	2	1
8	-1	2	2	1
2	-1	2	2	1
9	-1	6	3	1
4	-1	4	1	2
1	-1	6	6	1
1	-1	4	4	1

Instruction Status for Cycle 1

InstructionijkIssueExecuteWrite-Back
LD1011
LD201

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No0
MULTIPLIER0No0
DIVIDER0No0
LOAD0Yes0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
LOAD0


Instruction Status for Cycle 2

InstructionijkIssueExecuteWrite-Back
LD1011
LD2012
ADD_D321

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No0
MULTIPLIER0No0
DIVIDER0No0
LOAD0Yes0
LOAD1Yes0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
LOAD0LOAD1


Instruction Status for Cycle 3

InstructionijkIssueExecuteWrite-Back
LD10113
LD2012
ADD_D3213
SUB_D221

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes5LOAD1LOAD0
MULTIPLIER0No0
DIVIDER0No0
LOAD0Yes0
LOAD1Yes0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
LOAD0LOAD1ADDER0


Instruction Status for Cycle 4

InstructionijkIssueExecuteWrite-Back
LD101134
LD20124
ADD_D3213
SUB_D221

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes50.000000LOAD1
MULTIPLIER0No0
DIVIDER0No0
LOAD0No0
LOAD1Yes0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
LOAD1ADDER0


Instruction Status for Cycle 5

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D3213
SUB_D221

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes50.0000000.000000
MULTIPLIER0No0
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
ADDER0


Instruction Status for Cycle 6

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D3213
SUB_D221

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes50.0000000.000000
MULTIPLIER0No0
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
ADDER0


Instruction Status for Cycle 7

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D3213
SUB_D221

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes50.0000000.000000
MULTIPLIER0No0
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
ADDER0


Instruction Status for Cycle 8

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D32138
SUB_D221

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes50.0000000.000000
MULTIPLIER0No0
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
ADDER0


Instruction Status for Cycle 9

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No50.0000000.000000
MULTIPLIER0No0
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31


Instruction Status for Cycle 10

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D22110
BEQ221

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes80.0000000.000000
MULTIPLIER0No0
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
ADDER0


Instruction Status for Cycle 11

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D22110
BEQ22111
MULT_D631

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes80.0000000.000000
MULTIPLIER0No0
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
ADDER0


Instruction Status for Cycle 12

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D22110
BEQ22111
MULT_D63112
ADD412

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes80.0000000.000000
MULTIPLIER0Yes90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
ADDER0MULTIPLIER0


Instruction Status for Cycle 13

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D2211013
BEQ22111
MULT_D63112
ADD41213
SD661

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0Yes80.0000000.000000
MULTIPLIER0Yes90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
ADDER0MULTIPLIER0


Instruction Status for Cycle 14

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D63112
ADD41213
SD66114
SD441

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0Yes90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes1MULTIPLIER0
STORE1No0

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
MULTIPLIER0


Instruction Status for Cycle 15

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D63112
ADD41213
SD66114
SD44115

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0Yes90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes1MULTIPLIER0
STORE1Yes10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
MULTIPLIER0


Instruction Status for Cycle 16

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D63112
ADD41213
SD66114
SD44115

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0Yes90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes1MULTIPLIER0
STORE1Yes10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
MULTIPLIER0


Instruction Status for Cycle 17

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D63112
ADD41213
SD66114
SD4411517

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0Yes90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes1MULTIPLIER0
STORE1Yes10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
MULTIPLIER0


Instruction Status for Cycle 18

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D63112
ADD41213
SD66114
SD441151718

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0Yes90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes1MULTIPLIER0
STORE1No10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
MULTIPLIER0


Instruction Status for Cycle 19

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D6311219
ADD41213
SD66114
SD441151718

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0Yes90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes1MULTIPLIER0
STORE1No10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31
MULTIPLIER0


Instruction Status for Cycle 20

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D631121920
ADD41213
SD66114
SD441151718

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0No90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes10.000000
STORE1No10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31


Instruction Status for Cycle 21

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D631121920
ADD41213
SD66114
SD441151718

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0No90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes10.000000
STORE1No10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31


Instruction Status for Cycle 22

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D631121920
ADD41213
SD6611422
SD441151718

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0No90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0Yes10.000000
STORE1No10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31


Instruction Status for Cycle 23

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D631121920
ADD41213
SD661142223
SD441151718

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0No90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No10.000000
STORE1No10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31


Instruction Status for Cycle 24

InstructionijkIssueExecuteWrite-Back
LD101134
LD201245
ADD_D321389
SUB_D221101314
BEQ22111
MULT_D631121920
ADD41213
SD661142223
SD441151718

Reservation Stations

NameBusyOpVjVkQjQk
ADDER0No80.0000000.000000
MULTIPLIER0No90.0000000.000000
DIVIDER0No0
LOAD0No0
LOAD1No0
STORE0No10.000000
STORE1No10.000000

Register Result Status

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31


The Final States


The Memory Contents

M0M1M2M3M4M5M6M7M8M9M10M11M12M13M14M15M16M17M18M19M20M21M22M23M24M25M26M27M28M29M30M31
11.00000013.00000014.000000

The Integer Registers

R0R1R2R3R4R5R6R7R8R9R10R11R12R13R14R15R16R17R18R19R20R21R22R23R24R25R26R27R28R29R30R31
5.0000007.0000005.000000

The FP Registers

F0F1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25F26F27F28F29F30F31