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.

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

can be reconfigured dur<strong>in</strong>g design space explorations. Consideration <strong>of</strong> the cache<br />

effects <strong>in</strong> high-level models is necessary s<strong>in</strong>ce cach<strong>in</strong>g significantly alters the<br />

application performance. In our method, communication latencies are def<strong>in</strong>ed<br />

at simulation runtime depend<strong>in</strong>g on the miss rate <strong>of</strong> the cache model as well<br />

as utilization <strong>of</strong> the shared on-chip communication <strong>in</strong>frastructure by other CPU<br />

components. Moreover, we focus on the correspondence between the <strong>in</strong>structions<br />

<strong>of</strong> particular subrout<strong>in</strong>es and their trace representation. This allows the designer<br />

to pr<strong>of</strong>ile the traces dur<strong>in</strong>g high-level design space explorations.<br />

3 System-Level Simulations Us<strong>in</strong>g Traces<br />

The workflow for generation <strong>of</strong> traces and their use <strong>in</strong> a trace-driven MPSoC<br />

simulator is presented <strong>in</strong> Fig. 2. In the first step, the object code <strong>of</strong> a crosscompiled<br />

application is executed on a cycle accurate simulator <strong>of</strong> the target<br />

CPU. In addition, we deploy an objdump utility to create a symbol table <strong>of</strong> the<br />

code. Information produced by the simulation as well as the symbol table are<br />

further processed by a trace generator tool which produces a trace file <strong>of</strong> the<br />

target application.<br />

The result<strong>in</strong>g trace is used as a part <strong>of</strong> the workload <strong>in</strong> our trace-driven multiprocessor<br />

SystemC TLM simulator, <strong>in</strong> which diverse (MP)SoC architectures<br />

with a vary<strong>in</strong>g number <strong>of</strong> CPUs, different cache models, hierarchical on-chip <strong>in</strong>terconnect<br />

can be modeled and analyzed. The simulator is highly configurable<br />

by means <strong>of</strong> an XML description file <strong>in</strong> which the parameters <strong>of</strong> the components<br />

as well as their <strong>in</strong>terconnection can be specified.<br />

In the trace simulator, the result<strong>in</strong>g traces are executed on the abstract CPU<br />

models <strong>in</strong> a new multiprocessor environment. Thus, the designer can evaluate<br />

Fig. 2. Workflow for high-level simulations us<strong>in</strong>g traces

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

Saved successfully!

Ooh no, something went wrong!