Implementing debug and trace access through functional...

19
© 2017 Arm Limited Arm Tech Symposia 2017 Implementing debug and trace access through functional I/O Alvin Yang | Staff FAE

Transcript of Implementing debug and trace access through functional...

Page 1: Implementing debug and trace access through functional I/Oarmtechforum.com.cn/...ImplementingDebugAndTraceAccess201712… · IP library & tools for the creation of tailored debug

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 2017 Arm Limited 17

For further information…

[email protected]

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

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

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