Skip to content

Add SWD debug transport to the SMP cluster - #483

Merged
Dolu1990 merged 1 commit into
SpinalHDL:devfrom
disdi:phase3-on-dev
Sep 8, 2026
Merged

Dolu1990 merged 1 commit into
SpinalHDL:devfrom
disdi:phase3-on-dev

Conversation

@disdi

@disdi disdi commented Aug 31, 2026

Copy link
Copy Markdown

Wire DebugTransportModuleSwd into VexRiscvSmpCluster as an alternative to the JTAG DTM (--swd, mutually exclusive with --jtag-tap, requires privilegedDebug) and expose SWCLK/SWDIO as LiteX black-box ports.

Add SpinalSim coverage for the SWD wire protocol, DP, and DM, plus a shared host bitbang driver.

Wire DebugTransportModuleSwd into VexRiscvSmpCluster as an alternative
to the JTAG DTM (--swd, mutually exclusive with --jtag-tap, requires
privilegedDebug) and expose SWCLK/SWDIO as LiteX black-box ports.

Add SpinalSim coverage for the SWD wire protocol, DP, and DM, plus a
shared host bitbang driver.
@Dolu1990
Dolu1990 merged commit 96d84a3 into SpinalHDL:dev Sep 8, 2026
1 check failed
Dolu1990 pushed a commit that referenced this pull request Sep 27, 2026
EmbeddedRiscvJtag puts the official RISC-V debug module and its transport
inside the CPU. Its transports were JTAG only (TAP, tunneled TAP or
instruction port), while the SMP cluster got SWD in #483 / #499.

Add withSwd, which uses the existing DebugTransportModuleSwd (SWCLK/SWDIO,
a RISC-V debug spec Ch. 6 custom DTM) in place of the JTAG transport and
exposes a "swd" port. Only one transport can be used at a time, so withTap
and withTunneling are ignored when withSwd is set.

The GenFullWithOfficialRiscvDebug and Briey netlists, the two users of the
plugin, are identical to dev.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants