01.12.2012 Views

Architecture of Computing Systems (Lecture Notes in Computer ...

Architecture of Computing Systems (Lecture Notes in Computer ...

Architecture of Computing Systems (Lecture Notes in Computer ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Complexity-Effective Rename Table Design for Rapid Speculation Recovery 23<br />

Fig. 5. Performance comparsion <strong>of</strong> the proposed scheme aga<strong>in</strong>st regular checkpo<strong>in</strong>t<strong>in</strong>g and<br />

walk-backwards scheme<br />

Fig. 5 shows the performance comparison <strong>of</strong> the proposed renam<strong>in</strong>g scheme when<br />

compared aga<strong>in</strong>st regular checkpo<strong>in</strong>t<strong>in</strong>g. The results for the walk-back scheme is also<br />

shown on the graph. The y-axis <strong>of</strong> the graph is the percent decrease <strong>of</strong> IPC. Zero on<br />

the y-axis means that the method has the same IPC as checkpo<strong>in</strong>t<strong>in</strong>g. For the proposed<br />

scheme there are two graphs: one labeled as fifo ipc and one labeled as fifo ipc<br />

adjusted. For the first bar, we used a constant FIFO size <strong>of</strong> 16 for each architectural<br />

register, whereas for the adjusted bar we adjusted the size <strong>of</strong> the FIFO queues <strong>of</strong> each<br />

architectural register accord<strong>in</strong>g to the average and maximum values shown <strong>in</strong> Fig. 3.<br />

In the latter case, the sizes <strong>of</strong> the FIFO queue were set to numbers between 16 and 32.<br />

We assumed a recovery time <strong>of</strong> 2 cycles for the proposed scheme although it may be<br />

possible to recover <strong>in</strong> one cycle depend<strong>in</strong>g on the circuit level implementation.<br />

Results <strong>in</strong> Fig. 5 show that checkpo<strong>in</strong>t<strong>in</strong>g always outperforms walk<strong>in</strong>g through the<br />

reorder buffer and the proposed scheme almost meets the performance <strong>of</strong> checkpo<strong>in</strong>t<strong>in</strong>g<br />

although it limits the number <strong>of</strong> <strong>in</strong>stances <strong>of</strong> the architectural registers that can be<br />

present <strong>in</strong>side the processor. Interest<strong>in</strong>gly <strong>in</strong>creas<strong>in</strong>g the sizes <strong>of</strong> the FIFO queues did<br />

not provide any significant performance benefits.<br />

8 Conclusion and Future Work<br />

In this paper we proposed a FIFO-queue-based rename table design that is scalable<br />

and allows faster and simple branch misprediction recovery. Each architectural register<br />

is assigned a FIFO queue that holds every speculative physical register assignment.<br />

By us<strong>in</strong>g another checkpo<strong>in</strong>t table that holds the tail po<strong>in</strong>ters for each queue, it<br />

is possible to recover the rename table <strong>in</strong> a s<strong>in</strong>gle cycle by just us<strong>in</strong>g the regular<br />

SRAM bitcells rather than shift registers. Our design simplifies the circuits used for<br />

construct<strong>in</strong>g the rename table especially for processors that employ checkpo<strong>in</strong>t<strong>in</strong>g.<br />

If implement<strong>in</strong>g the regular checkpo<strong>in</strong>t<strong>in</strong>g scheme is feasible <strong>in</strong> terms <strong>of</strong> circuit<br />

complexity, proposed scheme is not a good alternative; us<strong>in</strong>g the regular checkpo<strong>in</strong>t<strong>in</strong>g<br />

is a better choice. However, the proposed renam<strong>in</strong>g scheme <strong>of</strong>fers the power <strong>of</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!