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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

208 R. Plyask<strong>in</strong> and A. Herkersdorf<br />

Fig. 5. MPSoC architecture modeled <strong>in</strong> the trace simulator before and after repartition<strong>in</strong>g<br />

dct function by WRITE HW and READ HW primitives configured with value 64. On<br />

execution <strong>of</strong> WRITE HW, the CPU was try<strong>in</strong>g to access the component by poll<strong>in</strong>g<br />

its status. If the peripheral was idle, the CPU performed 16 write transactions<br />

on the 32-bit bus. After the process<strong>in</strong>g latency assigned to the accelerator had<br />

expired, the CPU performed 16 read transactions represent<strong>in</strong>g the transfer <strong>of</strong> the<br />

processed data, and the accelerator became available for other CPU components.<br />

In [1], L. V. Agost<strong>in</strong>i et al. demonstrated an FPGA implementation <strong>of</strong> the<br />

DCT algorithm and obta<strong>in</strong>ed the process<strong>in</strong>g time <strong>of</strong> an 8×8 pixelblock(5.6µs).<br />

We took this value as a reference and annotated the equivalent process<strong>in</strong>g latency<br />

to the abstracted accelerator (560 cycles). The latency parameter is configurable<br />

and can be changed if other HW implementations have to be considered. The<br />

simulation results <strong>of</strong> the new MPSoC architecture with the DCT accelerator are<br />

given <strong>in</strong> Table 3.<br />

Table 2. Pr<strong>of</strong>il<strong>in</strong>g results <strong>of</strong> jpeg application on a 4-CPU architecture <strong>in</strong> the trace<br />

simulator<br />

Subrout<strong>in</strong>e<br />

Executed cycles<br />

Share <strong>of</strong> total<br />

execution time, %<br />

CPU0 CPU1 CPU2 CPU3 CPU0 CPU1 CPU2 CPU3<br />

dct 2,278,193 2,277,795 2,277,716 2,277,917 28.1 29.4 28.2 28.1<br />

WriteRawBits16 1,339,100 1,326,305 1,333,059 1,345,854 16.5 17.1 16.5 16.6<br />

EncodeDataUnit 842,872 839,441 841,284 845,318 10.4 10.8 10.4 10.4<br />

zzq encode 817,885 819,343 816,977 818,143 10.1 10.6 10.1 10.1<br />

get MB 475,130 475,671 474,828 475,123 5.9 6.1 5.9 5.9<br />

RGB2YCrCb 438,654 438,916 438,539 439,052 5.4 5.7 5.4 5.4<br />

... ... ... ... ... ... ... ... ...

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

Saved successfully!

Ooh no, something went wrong!