IP Library Granted Patent US 7,629,818
Granted Patent B2
US 7,629,818 · App. 12/020,810 · Granted Dec 8, 2009

Method for checking the integrity of a clock tree

Assignee: STMicroelectronics SA
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 7,629,818
App. No.
12/020,810
Granted
Dec 8, 2009
Kind
B2
Abstract

A method and device detect synchronization errors between logic signals of a group of logic signals. A control word is loaded into a shift register arranged in loop and clocked by resulting logic signals equal to the result of the OR logic function and to the result of the AND logic function applied to the logic signals of the group of logic signals. The value of the control word is monitored as it propagates in the shift register, and a synchronization error signal is sent if the control word changes value. Application in particular for checking the integrity of a clock tree in an integrated circuit.

Claims (64)

1. A method, comprising:

detecting synchronization errors between logic signals of a group of logic signals, the detecting including:

providing a shift register that includes a first synchronous cell and a second synchronous cell;

loading a control word into the shift register;

obtaining a first resulting logic signal by applying an OR logic function to the logic signals of the group of logic signals;

clocking the first synchronous cell with the first resulting logic signal;

obtaining a second resulting logic signal by applying an AND logic function to the logic signals of the group of logic signals;

clocking the second synchronous cell with the second resulting logic signal;

propagating the control word in the shift register according to the clocking steps and monitoring the control word during the propagating; and

detecting a synchronization error if the control word changes value.

2. The method according to claim 1 , comprising:

producing an asynchronous error signal having an inactive value and an active value, and bringing the asynchronous error signal to the active value when the control word changes value; and

sampling the asynchronous error signal after each shift of the control word in the shift register, in order to filter synchronization errors tolerated and to produce a synchronous error signal.

3. The method according to claim 2 , wherein the synchronous error signal is cyclically refreshed by edges of the first resulting logic signal.

4. The method according to claim 1 , wherein:

the control word includes at least one couple of control bits having inverse logic values; and

detecting the synchronization error includes detecting the synchronization error if the control bits have the same value during the propagation of the control word in the shift register.

5. The method according to claim 1 , comprising introducing between the first synchronous cell and the second synchronous cell a propagation delay greater than or equal to a maximum time shift tolerated between the logic signals.

6. The method according to claim 1 , wherein loading the control word comprises a step of initializing each synchronous cell of the shift register with a signal for setting the cell to 0 or 1.

7. The method according claim 1 , wherein the synchronous cells of the shift register are flip-flops, each flip-flop comprising a clock input receiving one of the resulting logic signals, a data input and an inverting or non-inverting data output.

8. The method according to claim 1 , wherein the logic signals are clock signals taken from various points of a clock tree and originally from a same clock signal.

9. A device for detecting synchronization errors between logic signals of a group of logic signals, comprising:

a shift register comprising a first synchronous cell and a second synchronous cell;

means for loading a control word in the shift register;

means for connecting an output of the shift register to an input of the shift register;

means for obtaining a first resulting logic signal by applying an OR logic function to the logic signals of the group of logic signals;

means for clocking the first synchronous cell with the first resulting logic signal equal;

means for obtaining a second resulting logic signal by applying an AND logic function to the logic signals of the group of logic signals;

means for clocking the second synchronous cell with the second resulting logic signal; and

means for monitoring the control word as it propagates in the shift register at the clocking of the logic signals, and for sending a synchronization error signal if the control word changes value.

10. The device according to claim 9 , wherein the means for monitoring the control word comprise:

means for producing an asynchronous error signal having an inactive value and an active value, and for switching the asynchronous error signal to the active value when the control word changes value; and

means for sampling the asynchronous error signal after each shift of the control word in the shift register, in order to filter synchronization errors tolerated and to produce the synchronization error signal.

11. The device according to claim 10 , wherein the means for sampling the asynchronous error signal are driven by edges of the first resulting logic signal.

12. The device according to claim 9 , wherein:

the means for loading a control word are arranged to load into the shift register a control word comprising a couple of control bits having inverse logic values; and

the means for monitoring the value of the control word are arranged to emit the synchronization error signal if the control bits have the same value during the propagation of the control word in the shift register.

13. The device according to claim 9 , wherein the shift register comprises, between the first synchronous cell and the second synchronous cell, a delay circuit introducing a propagation delay greater than or equal to a maximum time shift tolerated between the logic signals.

14. The device according to claim 9 , wherein the means for loading a control word in the shift register comprise a signal for setting each synchronous cell of the shift register to 0 or 1.

15. The device according claim 9 , wherein the synchronous cells of the shift register are flip-flops, each flip-flop comprising a clock input receiving one of the resulting logic signals, a data input and an inverting or non-inverting data output.

16. The device according to claim 9 , comprising inputs, connected to various points of a clock tree, receiving the logic signals, the logic signals being clock signals originally from a same clock signal.

17. A circuit, comprising:

synchronous modules clocked by logic signals; and

a device for detecting synchronization errors in the logic signals, the device including:

a shift register comprising a first synchronous cell and a second synchronous cell;

means for loading a control word in the shift register;

means for connecting an output of the shift register to an input of the shift register;

means for obtaining a first resulting logic signal by applying an OR logic function to the logic signals of the group of logic signals;

means for clocking the first synchronous cell with the first resulting logic signal equal;

means for obtaining a second resulting logic signal by applying an AND logic function to the logic signals of the group of logic signals;

means for clocking the second synchronous cell with the second resulting logic signal; and

means for monitoring the control word as it propagates in the shift register at the clocking of the logic signals, and for sending a synchronization error signal if the control word changes value.

18. The circuit of claim 17 wherein the circuit is integrated and the logic signals are carried by a clock bus, and the device includes inputs configured to receive logic signals applied to the synchronous modules or taken from inside the synchronous modules.

19. The circuit according to claim 17 , wherein the means for monitoring the control word comprise:

means for producing an asynchronous error signal having an inactive value and an active value, and for switching the asynchronous error signal to the active value when the control word changes value; and

means for sampling the asynchronous error signal after each shift of the control word in the shift register, in order to filter synchronization errors tolerated and to produce the synchronization error signal.

20. The circuit according to claim 19 , wherein the means for sampling the asynchronous error signal are driven by edges of the first resulting logic signal.

21. The circuit according to claim 17 , wherein:

the means for loading a control word are arranged to load into the shift register a control word comprising a couple of control bits having inverse logic values; and

the means for monitoring the value of the control word are arranged to emit the synchronization error signal if the control bits have the same value during the propagation of the control word in the shift register.

22. The circuit according to claim 17 , wherein the shift register comprises, between the first synchronous cell and the second synchronous cell, a delay circuit introducing a propagation delay greater than or equal to a maximum time shift tolerated between the logic signals.

23. The circuit according to claim 17 , wherein the means for loading a control word in the shift register comprise a signal for setting each synchronous cell of the shift register to 0 or 1.

24. The circuit according to claim 17 , wherein the synchronous cells of the shift register are flip-flops, each flip-flop comprising a clock input receiving one of the resulting logic signals, a data input and an inverting or non-inverting data output.

25. The circuit according to claim 17 , further comprising a clock tree that includes clock signals originally from a same clock signal, the clock signals being the logic signals.

Assignments (2)
CHANGE OF NAME Recorded Mar 28, 2024
From: STMICROELECTRONICS SA
To: STMICROELECTRONICS FRANCE
Reel/Frame 066944/0348 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2008
From: BANCEL, FREDERIC; BERARD, NICOLAS
To: STMICROELECTRONICS SA
Reel/Frame 020902/0015 →
Priority Claims (1)
FR 07 00592 · Jan 29, 2007 · national
Continuity (1)
Related Publication 20080231325A1 · Sep 25, 2008