Hi Mike,
Le 15/03/2017 à 18:04, Mike Leach a écrit :
What bandwidth are you interested in? The throughput of the trace infrastructure will depend on the system design, activated trace buffers and trace sinks, trace bus width, and other factors. Trace generation rate is dependent on the code being executed .If the generation rate at the currently traced cores exceeds the rate that the system van sink the trace data then theI am using CoreSight components on Zynq SoC. I am using the Linux 4.4 kernel. I am using PTM as trace source and TPIU as trace sink. I want to evaluate CoreSight components to find out under what conditions the trace will be lost. That's why I am trying to evaluate the maximum trace throughput but it does not seem to be obvious how to do it. It will depend on multiple factors and mainly on traced program. What kind of programs I need to trace in order to provoke PTM's internal FIFO overflow. Are their any benchmark to evaluate debug components ?
trace generation will stall until bandwidth becomes available. This stalling will not affect the operation of the cores - trace will be lost but the core will continue to execute at full speed.
Are you currently designing a SoC or are you using an existing device?I am using Zynq SoC. You are right. I don't think there is any self power monitoring capability in Zynq. I need to ask somebody from Xilinx about this.
If you are in the design stage then I recommend contacting ARM support who may be able to help with energy estimates for these components - hardware emulation should also help in this case.
For existing devices it rather depends if your SoC has any self power monitoring capability. If so then using this with trace powered and running or not should give you an answer. Otherwise you may need to contact the device manufacturer.
That would really depend on the purpose of your evaluation - what are you trying to discover? Are you using them with an external debugger / on a bare metal system or self hosted on a linux based board?I am trying to know what type of programs I will not be able to trace on my Zynq SoC using CS components (PTM as trace source, TPIU as trace sink). Does the same program will be successfully traced by using ETB as a trace source ? That's why I thought about evaluating the trace bandwidth.
Thanks.
You are correct - the operation of the PTM will not slow down the associated core. It is coupled directly to the core and monitors certain signals which allow waypoint trace to be generated. Waypoints are flow control changes that cannot be directly inferred from the opcodes being executed. The trace decoder will then take the waypoint trace packets and the memory image of the opcodes executed to decode the program flow over time. So not every instruction is traced as an output packet
I recommend reading the PTF architecture manual for further explanation of program flow (PTM) trace.
[http://infocenter.arm.com/help/topic/com.arm.doc.ihi0035b/ }index.html
Thank you for your quick reply.
Best Regards,
M.Abdul WAHAB