IP Library Granted Patent US 12,645,528
Granted Patent B2
US 12,645,528 · App. 18/911,745 · Granted Jun 2, 2026

Single signal debug port

Inventors: Avneep Kumar Goyal (Greater Noida, IN); Thomas Szurmant (Munich, DE)
Assignee: STMicroelectronics International N.V.
G06F11/0793G06F1/08G06F11/0745
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,645,528
App. No.
18/911,745
Filed
Oct 10, 2024
Granted
Jun 2, 2026
Kind
B2
Art Unit
2113
USPC
714/43
Abstract

According to an embodiment, a system is provided that includes a debugging tool and an application board. The debugging tool includes a serial wire debug (SWD) host coupled to a single signal debug port (SSDP) host. The application board includes an SWD target coupled to an SSDP target. The SWD target is configured to communicate SWD signals with the SWD host. The SSDP target is configured to encode the SWD signals to SSDP signals for communication over a Controller Area Network (CAN) Bus between the application board and the debugging tool. The SSDP signals are pulse-width modulation (PWM) encoded signals of the SWD signals. An SWD clock signal generated by the SWD host is the carrier signal for the PWM encoded signals. The SSDP target is configured to decode the SSDP signals received from the SSDP host over the CAN Bus to the SWD signals.

Claims (38)

1 . A first circuit for communicating serial wire debug (SWD) signals over a Controller Area Network (CAN) Bus, the first circuit comprising:

a non-transitory memory storage comprising instructions; and

a processor in communication with the non-transitory memory storage, wherein the instructions, when executed by the processor, cause the processor to:

transmit an activation sequence comprising a consecutive set number of logic high pulse-width modulation (PWM) signals or multiple CAN messages having errors over the CAN Bus, the transmitting resulting in CAN nodes coupled to the first circuit via the CAN Bus to transition to a Bus-OFF state, and

receive a response sequence over the CAN Bus from a second circuit coupled to the first circuit upon successful activation of the activation sequence, the response sequence comprising a signal pattern of “0000_1111_0000_1111_0000_11” followed by a frequency period value of the last cycle of the activation sequence.

2 . The first circuit of claim 1 , wherein the instructions, when executed by the processor, cause the processor to:

decode the response sequence and compare the frequency period value from the response sequence to a period of a clock signal used to generate the activation sequence; and

determine a successful activation sequence transmission from the first circuit to the second circuit in response to a result of the comparison being within a threshold.

3 . The first circuit of claim 2 , wherein the instructions, when executed by the processor, cause the processor to transmit an acknowledge of response sequence over the CAN Bus to the second circuit, the acknowledge of response sequence comprising a signal pattern of “0000_1111_0000_1111_0000_11”, immediately followed by the frequency period value, and subsequently followed by the signal pattern of “1111_1111”.

4 . The first circuit of claim 3 , wherein an optional signal pattern is included in the acknowledge of response sequence between the frequency period value and the signal pattern of “1111_1111”.

5 . The first circuit of claim 4 , wherein a signal length of the optional signal pattern is set such that the CAN nodes remain in the Bus-OFF state.

6 . The first circuit of claim 3 , wherein the instructions, when executed by the processor, cause the processor to transmit an abort of the acknowledge of response sequence comprising an abort signal pattern between the frequency period value and the signal pattern of “1111_1111”.

7 . The first circuit of claim 3 , wherein the instructions, when executed by the processor, cause the processor to transmit an additional signal after the acknowledge of response sequence having a signal pattern of “1111_0000” or “1111_1111_1111_0000” indicating to the second circuit to enable a data line between components of the second circuit to communicate the SWD signals between the first circuit and the second circuit using single signal debug port (SSDP) signals over the CAN Bus, wherein the “0000” pattern in the additional signal instructs the data line to be set to a value of “0”, and wherein transmission of a logic high PWM signal after the additional signal initiates transmission of SWD signal communications to the second circuit.

8 . A first circuit for communicating serial wire debug (SWD) signals over a Controller Area Network (CAN) Bus, the first circuit comprising:

a non-transitory memory storage comprising instructions; and

a processor in communication with the non-transitory memory storage, wherein the instructions, when executed by the processor, cause the processor to:

receive an activation sequence from a second circuit, the activation sequence comprising a consecutive set number of logic high pulse-width modulation (PWM) signals or multiple CAN messages having errors over the CAN Bus, the activation sequence resulting in CAN nodes coupled to the second circuit via the CAN Bus to transition to a Bus-OFF state, and

transmit a response sequence over the CAN Bus to the second circuit coupled to the first circuit upon successful activation of the activation sequence, the response sequence comprising a signal pattern of “0000_1111_0000_1111_0000_11” followed by a frequency period value of the last cycle of the activation sequence.

9 . The first circuit of claim 8 , wherein the instructions, when executed by the processor, cause the processor to:

determine whether each logic high pulse-width modulation (PWM) signal in the consecutive set number of logic high pulse-width modulation (PWM) signals has the same clock period and duty cycle; and

transmit the response sequence in response to determining that the set number of logic high pulse-width modulation (PWM) signals have the same clock period and duty cycle within a given threshold.

10 . The first circuit of claim 8 , wherein the instructions, when executed by the processor, cause the processor to receive an acknowledge of response sequence over the CAN Bus from the second circuit, the acknowledge of response sequence comprising a signal pattern of “0000_1111_0000_1111_0000_11”, immediately followed by the frequency period value, and subsequently followed by the signal pattern of “1111_1111”.

11 . The first circuit of claim 10 , wherein an optional signal pattern is included in the acknowledge of response sequence between the frequency period value and the signal pattern of “1111_1111”.

12 . The first circuit of claim 11 , wherein a signal length of the optional signal pattern is set such that the CAN nodes remain in the Bus-OFF state.

13 . The first circuit of claim 10 , wherein the instructions, when executed by the processor, cause the processor to receive an abort of the acknowledge of response sequence comprising an abort signal pattern between the frequency period value and the signal pattern of “1111_1111”.

14 . The first circuit of claim 10 , wherein the instructions, when executed by the processor, cause the processor to receive an additional signal after the acknowledge of response sequence having a signal pattern of “1111_0000” or “1111_1111_1111_0000” indicating to the first circuit to enable a data line between components of the first circuit to communicate the SWD signals between the first circuit and the second circuit using single signal debug port (SSDP) signals over the CAN Bus.

15 . A method for communicating serial wire debug (SWD) signals over a Controller Area Network (CAN) Bus, comprising:

communicating, between a first circuit and a second circuit over the CAN Bus, an activation sequence comprising a consecutive set number of logic high pulse-width modulation (PWM) signals or multiple CAN messages having errors over the CAN Bus, the communicating resulting in CAN nodes coupled to the first circuit via the CAN Bus to transition to a Bus-OFF state; and

communicating, between the first circuit and the second circuit over the CAN Bus, a response sequence upon successful activation of the activation sequence, the response sequence comprising a signal pattern of “0000_1111_0000_1111_0000_11” followed by a frequency period value of the last cycle of the activation sequence.

16 . The method of claim 15 , further comprising:

decoding, by the first circuit, the response sequence and comparing the frequency period value from the response sequence to a period of a clock signal used to generate the activation sequence; and

determining a successful activation sequence communication in response to a result of the comparison being within a threshold.

17 . The method of claim 15 , further comprising:

determining whether each logic high pulse-width modulation (PWM) signal in the consecutive set number of logic high pulse-width modulation (PWM) signals has the same clock period and duty cycle; and

communicating, between the first circuit and the second circuit over the CAN Bus, the response sequence in response to determining that the set number of logic high pulse-width modulation (PWM) signals have the same clock period and duty cycle within a given threshold.

18 . The method of claim 15 , further comprising communicating, between the first circuit and the second circuit over the CAN Bus, an acknowledge of response sequence comprising a signal pattern of “0000_1111_0000_1111_0000_11”, immediately followed by the frequency period value, and subsequently followed by the signal pattern of “1111_1111”.

19 . The method of claim 18 , wherein an optional signal pattern is included in the acknowledge of response sequence between the frequency period value and the signal pattern of “1111_1111”, and wherein a signal length of the optional signal pattern is set such that the CAN nodes remain in the Bus-OFF state.

20 . The method of claim 18 , further comprising communicating, between the first circuit and the second circuit over the CAN Bus, an additional signal after the acknowledge of response sequence having a signal pattern of “1111_0000” or “1111_1111_1111_0000” indicating to the second circuit to enable a data line between components of the second circuit to communicate the SWD signals between the first circuit and the second circuit using single signal debug port (SSDP) signals over the CAN Bus.