![Page 1: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/1.jpg)
© 2017 Arm Limited
Arm Tech Symposia 2017
Implementing debug and trace access
through functional I/OAlvin Yang | Staff FAE
![Page 2: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/2.jpg)
© 2017 Arm Limited 2
Agenda
Debug and trace access limitations
A new approach
• Protocol based
• Bare metal vs mission mode
• Shared vs dedicated interface controller
Securing access
End-to-end solution
![Page 3: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/3.jpg)
© 2017 Arm Limited 3
Limitations of JTAG-based access
Today’s debug access over JTAG poses a number of practical challenges.
Visibility is increasingly being constrained by insufficient bandwidth.
A new approach is required to provide sufficient visibility and bandwidth from silicon bring-up to in-field deployment.
![Page 4: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/4.jpg)
© 2017 Arm Limited 4
Moving to protocol-based debug
Today
Typically restricted to lab environment
Future
Access over arbitrary existing interface enables debug through product lifespan
![Page 5: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/5.jpg)
© 2017 Arm Limited 5
CoreSight SoC-600 – enabling debug throughout the product lifespan
Removes reliance on JTAG
• Better visibility through increased bandwidth
• Debug throughout product lifespan
• Remote debug reduces cost of ownership
Benefits include
• In-field debug, while device operating in its intended environment
• Remote debug sessions (e.g. data center, car, IoT node)
• More bandwidth translates to faster fault identification
– E.g. debug and trace over same link
• IO cost savings
![Page 6: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/6.jpg)
© 2017 Arm Limited 6
Standard API – one API for all tools
Standard API used by debug/analysis tools to
• Configure the target
• Debug the target
• Receive trace from the target
This abstracts the underlying protocols and transport.
Debug tool
Debug/Trace Target interface
Host Target
Functional I/ODriver
Functional I/ODriver
Arm
Tool vendor
SoC Vendor
Standard Debug/Trace API
Debug/Trace Target agentDebug/Trace
Protocol
OS KernelInterface to
memory/devices
CoreSight SoC600
![Page 7: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/7.jpg)
© 2017 Arm Limited 7
Reference protocol spec/implementation
Arm to provide a protocol specification and host/target reference software implementations.
CoreSight Wire Protocol - CSWP
Reference code will be freely available.
Debug tool
Debug/Trace Target interface
Host Target
Functional I/ODriver
Functional I/ODriver
Arm
Tool vendor
SoC Vendor
Standard Debug/Trace API
Debug/Trace Target agentDebug/Trace
Protocol
OS KernelInterface to
memory/devices
CoreSight SoC600
![Page 8: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/8.jpg)
© 2017 Arm Limited 8
A practical approach balancing cost, intrusiveness and performance (part 1)
Lowest silicon cost
• No additional dedicated resources needed
Intrusive
• Protocol and link run by same CPU being debugged
Bare-metal debug not supported
• Link owned by same target CPU
![Page 9: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/9.jpg)
© 2017 Arm Limited 9
Mission Mode - software view
DS-5
![Page 10: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/10.jpg)
© 2017 Arm Limited 10
A practical approachbalancing cost, intrusiveness and performance (part 2)
Non-intrusive.
Full debug features, including bare-metal.
USB interface dedicated to debug.
![Page 11: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/11.jpg)
© 2017 Arm Limited 11
A practical approach balancing cost, intrusiveness and performance (part 3)
Non-intrusive.
Full debug features, including bare-metal.
USB PHY interface shared between system and debug.
![Page 12: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/12.jpg)
© 2017 Arm Limited 12
Bare-Metal – software view
![Page 13: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/13.jpg)
© 2017 Arm Limited 13
SoC-600 in FPGA
![Page 14: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/14.jpg)
© 2017 Arm Limited 14
Turn-key solution for authenticated debug
Interoperability with other Arm components:
• SDC-600 (Secure Debug Channel)
- Dedicated path to security IP
- Standardized communication protocol
- Full software interoperability with Arm security IP
- Secure authentication of debug access
• Tooling support
- Arm Socrates
- Arm Development Studio
SoC
Host CPU
Debug Subsystem
CoreSight SoC
Arm Security IP
Boot ROM
Cryptography
LCS Mgr
Secure RAM
Secure CPU
Isolating I/F
Secure Always On
Alarms
Debug control
Roots of Trust
SDC-600SecureDebug
Channel
Socrates
Certificate
![Page 15: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/15.jpg)
© 2017 Arm Limited 15
SDC-600 in details
Direct APB interface from DP to SDC-600.
Authentication method through SDC-600 configures access status of MEM-AP to debug memory.
Slave COM Port
![Page 16: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/16.jpg)
© 2017 Arm Limited 16
CoreSight: a comprehensive end-to-end solution
IP library & tools for the creation of tailored debug and trace capabilities.
• Scales with SoC complexity from embedded design to enterprise class design
Protocol debug over any link.
• Arm provides specs and a reference implementation
Debug tools ecosystem standardization.
• Standardized API enables any compliant debugger to support a SoC-600 based chip without HW probes
Debug access security & authentication.
• SoC-600 coupled with SDC-600 and Security IP offerings provide advanced security
Hardware PoC platform & Linux drivers.
![Page 17: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/17.jpg)
© 2017 Arm Limited 17
For further information…
https://developer.arm.com
Find demos and more information at the Arm demo area
![Page 18: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/18.jpg)
1818
Thank You!Danke!Merci!谢谢!ありがとう!Gracias!Kiitos!
© 2017 Arm Limited
![Page 19: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug](https://reader036.vdocument.in/reader036/viewer/2022081522/5f02dc1a7e708231d4065df3/html5/thumbnails/19.jpg)
1919 © 2017 Arm Limited
The Arm trademarks featured in this presentation are registered trademarks or trademarks of Arm Limited (or its subsidiaries) in the US and/or elsewhere. All rights reserved. All other marks featured may be trademarks of their respective owners.
www.arm.com/company/policies/trademarks