17.11.2012 Views

Soft-Core Processor Design - CiteSeer

Soft-Core Processor Design - CiteSeer

Soft-Core Processor Design - CiteSeer

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

Figure 5.1 shows that the performance of the ONCHIP system is the best for all benchmarks<br />

when the FIFO buffer has a unit size. The performance drop with the increasing buffer size<br />

results from the memory access conflicts, because both data and instructions reside in the same<br />

memory. If both instruction and data master request the memory access at the same time, the bus<br />

arbitration logic grants the access to one of the masters, while wait states are generated for the<br />

other. This is obvious from Figure 5.1, which shows that the Memory test benchmark suffers the<br />

biggest performance penalty because of the increasing FIFO buffer size. The Pipeline-Memory<br />

benchmark, which reads the data from the BOOT memory that is not accessed by the instruction<br />

master while the program is running, does not suffer any performance penalty. At the same time,<br />

the Pipeline-Memory benchmark that reads the data from the PROGRAM memory, suffers mildly<br />

from increasing the FIFO buffer size.<br />

Figures 5.2 and 5.3 show how the benchmark performance varies with the FIFO buffer size on<br />

the SRAM system. The best performance for all benchmarks is achieved with the buffer size 2.<br />

Similar to the ONCHIP system, further increases in the buffer size hurt the performance. The<br />

Pipeline test benchmark benefits the most from increasing the FIFO buffer size to two registers,<br />

Speedup Over Buffer Size 1<br />

1.6<br />

1.4<br />

1.2<br />

1<br />

0.8<br />

0.6<br />

0.4<br />

0.2<br />

0<br />

Loops<br />

Size = 2 Size = 3 Size = 4 Size = 15<br />

Memory<br />

Pipeline<br />

Pipeline-Memory<br />

(BOOT)<br />

Figure 5.2 Performance of the test and toy benchmarks vs. the FIFO buffer size on the<br />

SRAM system<br />

54<br />

Pipeline-Memory<br />

(PROGRAM)<br />

Fibo<br />

Multiply<br />

QsortInt

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

Saved successfully!

Ooh no, something went wrong!