| Signal | Direction | Purpose |
|---|---|---|
| TCK | Host → Target | Test Clock: all operations synchronised to TCK edges; max typically 10–50 MHz for automotive MCUs |
| TMS | Host → Target | Test Mode Select: 5-bit state machine transitions (Run-Test/Idle, Shift-DR, Shift-IR, etc.) |
| TDI | Host → Target | Test Data In: instruction or data shifted in on TCK rising edge |
| TDO | Target → Host | Test Data Out: sampled on TCK falling edge; MSB of previous TDI shift |
| TRST# | Host → Target | Optional async JTAG TAP reset; pull low for ≥5 TCK cycles to force Test-Logic-Reset |
💡 Automotive JTAG Pin Protection
Production ECUs often fuse JTAG access: TMS/TDI/TDO pads are disconnected after EOL programming. During bring-up, debug headers expose these signals. Always check the MCU's JTAG disable fuse register before assuming a production board has JTAG access — Infineon Aurix uses HSM_CONFIG_DFLASH fuses; NXP S32K uses JTAG_LOCK in IFR flash.