TA的每日心情 | 开心 2023-5-15 15:14 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
* l2 P. e v0 d( u! q* F8 n; \. Y7 |/ L9 c8 B( S
SWD接口* i, v& P# N% Z5 r8 ?* `; P3 G
" j7 j/ Y3 T s% v串行调试(Serial Wire Debug),应该可以算是一种和JTAG不同的调试模式,使用的调试协议也不一样,所以最直接的体现在调试接口上,与JTAG的20个引脚相比,SWD只需要4个(或者5个)引脚,结构简单,但是使用范围没有JTAG广泛,主流调试器上也是后来才加的SWD调试模式。
; G2 t1 J8 t) S4 I9 m) W7 S1 s6 D7 T" r6 E
SWD 硬件接口分为三种类型:JTAGV6 需要的硬件接口为: GND, RST, SWDIO, SWDCLK;JTAGV7 需要的硬件接口为: GND, RST, SWDIO, SWDCLK; JTAGV8 需要的硬件接口为: VCC, GND, RST, SWDIO, SWDCLK。只有JTAGV8 需要 5 个引脚, 即多了一个VCC引脚,其好处是: 仿真器对目标板子的仿真需要用到 RST 引脚, 使用仿真器内部的 VCC 作这个功能其实并不是非常美妙。 因此,JTAGV8 选择了只和目标板共 GND, 但不共 VCC。 因此我觉得这种模式最合理, 当然通常情况下仿真器和目标板共 GND 和 VCC 是没有错的。
! I1 L' K6 ~- J$ \+ m
3 P* ^, K; B+ A% }SWD和传统的调试方式区别:
# h- b' G' t8 n0 L2 X8 A# f, z% y( d" p. u8 S4 K% Y! D
SWD模式比JTAG在高速模式下面更加可靠。在大数据量的情况下面JTAG下载程序会失败,但是SWD发生的几率会小很多。基本使用JTAG仿真模式的情况下是可以直接使用SWD模式的,只要你的仿真器支持,所以推荐大家使用这个模式。0 i8 V/ O4 @& {* X. O
3 r4 t( r" O) c: K8 X% z" r' i
正常的JTAG需要20管脚,而J-Link 的SWD只需要2根线(PA13/JTMS/SWDIO、PA14/JTCK/SWCLK)就够了(加上电源线也就4根),这样就节省了3个I/O口(PA15/JTDI、PB3/JTDO、PB4/JNTRST)为其它所用,并且可节省一部分板子的空间(只需4个口就可以了)。- g, x4 S _, e4 k3 x* \) s
' ^: y: a' E& G: ]1 M3 J
JTAG的使用范围比SWD广泛,ARM、DSP、FPGA器件等都支持JTAG协议。
' H' @$ s% S0 [) `& k/ \, S/ C# D; Q$ L M+ L! z1 x
|
|