Trace buffer-based debug

advertisement
Presenter: PCLee 2012.08.27

Post-silicon validation is used to identify design errors
in silicon. Its main limitation is real-time observability
of the circuit’s internal nodes. In this paper, we
introduce a novel design-for-debug architecture which
automatically allocates distributed trace buffers to
handle debug data acquisition requests from multiple
sources located in different cores. Using resourceefficient and intelligent control placed on-chip, we
show how real-time observability can be improved,
thus helping bridge the gap between pre-silicon
verification and post-silicon validation for SOC
designs.
 What’s
the problem:

Pre-silicon verification is insufficient in eliminating
error because the complex SOC design.
 The previous DFD architecture is not flexible for
each design.
 The

proposed method:
Trace buffer-based debug.
 Real-time observability in multi-core design.
 DFD architecture on distributed embedded logic
analysis.
[20] Scanbased debug
Real-time in not possible cause CUD has to stop
Trace buffer-based debug
[2][11][21]
Trigger units
[1]distributed
trigger unit
[3][7]
compression
technique
[10]data
restoration
technique
[6]assertion
checker
[13]cross
trigger
[16]
centralized
trace buffer
Not simultaneous
[14]
Multi trace
buffers
1.multi-core debug
2.high-speed trace ports
THIS PAPER
1.
When there are multiple trigger events occurring simultaneously, how to choose
trace buffers to sample data from different data sources?
2.
When some of the trace buffers are already occupied, is it necessary to reallocate
the trace buffers when a new trigger event from a different data source occurs?
3.
How to allocate trace buffers when the number of sample requests is more than the
number of available trace buffers?
4.
How to allocate trace buffers for data sampling before knowing when trigger
events from multiple data sources will happen?
5.
How to decide which trace buffers to offload first when multiple trace buffers are
idle?
6.
How to balance the sampled data among trace buffers such that more trace buffers
will have available space for fulfilling upcoming data acquisition requests?
7.
In the case when debug experiments are repeatable, can the controller be
reprogrammed to acquire different sets of debug data during each rerun of the
experiment?
Decide the priority of each
segment data in trace buffer
Trace buffer control unit update
the
status
registers
for
controlling
the
read/write
operations of the trace buffers.
Decide where the debug data
should be allocated.
Information about
data smpling before
trigger
Queue FSM
decides priority
Over-writing
some segment
of 3

Configure two control register first

Window size: how big does the debugging data we need

Window position: starting address of the debugging data
Continuously
instead data
Continuously
instead data
Queue FSM
decide priority
of offloading
Queue FSM is
reprogrammabl
e, let us
change the
priority

Paper conclusion:


This paper introduced a novel DFD architecture for complex
multi-core designs.
My conclusion:



They consider many scenarios to solve the problems in multicore debug.
The reconfigurable mechanism for FSM makes debugging
more flexible.
The implementation and application are advancement.
Download