Can boundary scan be performed over SWD interface on the ARM devices? I keep seeing that SWD is a functional 2-wire replacement for JTAG interface, but can't seem to find a definite answer if a boundary scan can be performed over the SWD. Furthermore, BSDL define talk about JTAG signals, and not SWD.
2 Answers
Although it is possible in theory, I did never see boundary scan/JTAG over SWD. But they often share the same pins.
To me, it would not make sense to perform one over/through the other, because they have different use cases. SWD is for programming and debugging code. JTAG/boundary scan is for production testing via BSDL file.
And because they can share some pins, there is not much use of protocol overlay.
-
\$\begingroup\$ The use case is to perform a post-production boundary scan on a SoM module with a standard-defined external pinout that only has SWD pins routed to the connectors. \$\endgroup\$jpou– jpou2024-12-31 07:51:18 +00:00Commented Dec 31, 2024 at 7:51
-
\$\begingroup\$ Ok, I think you found a new market opportunity ;-) \$\endgroup\$Stefan Wyss– Stefan Wyss2024-12-31 08:07:31 +00:00Commented Dec 31, 2024 at 8:07
I haven't found a definitive answer from the ARM, or device manufacturer, documentation.
Did find XJTAG Introduces Arm® SWD Support and User-Defined Libraries from a company which produces JTAG boundary scan tools which contains:
Serial Wire Debug
Engineers using a device with an ARM® Cortex® core can now benefit from XJTAG’s support for the SWD protocol via any two pins of the XJLink2. As well as being used to program a device’s internal memory, this interface also allows an SWD-device to be controlled directly during a board test-for example, to provide a way to test a peripheral such as an ADC; and to program connected memories.
Although XJTAG always recommends bringing out a processor’s JTAG signals for good test coverage, if this cannot be done for some reason, this release provides a way to test the device’s connections by using SWD to control its GPIO pins.
Which indicates that boundary scan can't be directly performed using SWD. However, if the pins which needs to be controlled during boundary scan can be manipulated as GPIOs or other peripherals, then tools can emulate boundary scan via SWD.
I haven't used such tools myself.