SWD (Serial Wire Debug)
Mer info
- Skapad av
- ARM
- Typ
- Debuggränssnitt
- Föregångare
- JTAG
ARM:s tvåtrådsalternativ till JTAG för att flasha och felsöka Cortex-processorer.
JTAG behöver minst fyra signaler och var byggt för att testa lödfogar i en kedja av chip. SWD klarar sig med två — SWDIO för data i båda riktningar och SWCLK för klocka — och ger ändå full åtkomst till processorns felsökningsport: brytpunkter, stegning, läsning och skrivning av minne medan programmet kör. På ett trångt kretskort är två pinnar i stället för fem skillnaden mellan att ha en debugkontakt och att inte ha en.
Standarden kom med ARM:s Debug Interface v5 och är i dag det normala sättet att programmera Cortex-M. En billig ST-Link- eller CMSIS-DAP-prob, OpenOCD eller pyOCD och GDB räcker. Säkerhetsmässigt gäller samma sak som för JTAG: en olåst SWD-port på en färdig produkt är en inbjudan att läsa ut hela firmwaren.