SWD (Serial Wire Debug)
Meer info
- Gemaakt door
- ARM
- Type
- Debuginterface
- Voorganger
- JTAG
Het tweedraads alternatief van ARM voor JTAG om Cortex-processors te flashen en te debuggen.
JTAG heeft minimaal vier signalen nodig en was bedoeld om soldeerverbindingen langs een keten van chips te testen. SWD komt uit met twee — SWDIO voor bidirectionele data en SWCLK voor de klok — en geeft toch volledige toegang tot de debugpoort van de cpu: breakpoints, enkelstaps uitvoeren, geheugen lezen en schrijven terwijl het programma draait. Op een krap printje is twee pinnen in plaats van vijf het verschil tussen wel of geen debugheader.
Het kwam met ARM Debug Interface v5 en is nu de gebruikelijke manier om een Cortex-M te programmeren. Een goedkope ST-Link- of CMSIS-DAP-probe, OpenOCD of pyOCD en GDB is alles wat nodig is. De beveiligingskanttekening is dezelfde als bij JTAG: een niet-vergrendelde SWD-poort op een verkocht product is een uitnodiging om de volledige firmware uit te lezen.