IP Library › Granted Patent US 8,797,082
Granted Patent B2
US 8,797,082 · App. 13/629,919 · Granted Aug 5, 2014

Apparatus and methods for clock characterization

Inventors: Ravi K. Ramaswami (Cupertino, CA); Geertjan Joordens (Sunnyvale, CA)
Assignee: Apple Inc.
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 8,797,082
App. No.
13/629,919
Granted
Aug 5, 2014
Kind
B2
Abstract

A system and method for efficiently performing timing characterization of high-speed clocks signals with low-speed input/output pins. An integrated circuit includes a clock generator that generates a high-speed clock signal. A clock characterizer circuit receives the high-speed clock signal. The clock characterizer generates a corresponding low-speed clock signal. The generated low-speed clock signal is output through a low-speed general-purpose input/output (GPIO) pin for measurement. The generated low-speed clock signal is sent to a sequential element for staging. The staging of the generated low-speed clock signal is done with sequential elements that use a reverse polarity of a clock signal than the polarity used by a previous stage. The high-speed clock signal is used for the staging. The output of each stage is sent to a low-speed GPIO pin for measurement.

Claims (42)

1. An integrated circuit comprising:

a plurality of physical regions comprising circuitry; and

one or more characterizers within one or more of the physical regions, wherein respective circuitry within a characterizer of the one or more characterizers is configured to:

receive a first clock signal;

generate a second clock signal with a frequency less than a frequency of the first clock signal; and

generate a plurality of other clock signals by combining each of the first clock signal and the second clock signal in sequential logic;

wherein the sequential logic comprises a divide-by-N counter and a plurality of flip-flops including a first flip-flop and a second flip-flop, each configured to receive the first clock signal as a clock input;

wherein in response to detecting an error measurement mode for determining skew in the sequential logic, the respective circuitry is further configured to:

select a same polarity of the first clock signal as the clock input of each of the divide-by-N counter, the first flip-flop, and the second flip-flop; and

select a test clock signal to be received as the first clock signal, wherein the test clock signal is generated by external test equipment wherein in response to detecting a mode different from the error measurement mode, the respective circuitry is configured to select an opposite polarity of the first clock signal as the clock input of the first flip-flop.

2. The integrated circuit as recited in claim 1 , wherein the respective circuitry is further configured to select a prime number for a divisor of the divide-by-N counter.

3. The integrated circuit as recited in claim 1 , wherein in response to detecting a measurement mode, the respective circuitry is further configured to:

select a data output of the divide-by-N counter as a data input of the first flip-flop of the plurality of flip-flops, wherein the second clock signal is the data output of the divide-by-N counter; and

select an inverted value of the first clock signal as the clock input of the first flip-flop.

4. The integrated circuit as recited in claim 3 , wherein in response to being in the measurement mode, the respective circuitry is further configured to:

select a data output of the first flip-flop as a data input of the second flip-flop of the plurality of flip-flops; and

select a non-inverted value of the first clock signal as the clock input of the second flip-flop.

5. The integrated circuit as recited in claim 4 , wherein the respective circuitry is further configured to send the second clock signal and the plurality of other clock signals to measurement equipment through low-speed general-purpose input/output (LS GPIO) pins, wherein the plurality of other clock signals include at least data outputs of the first flip-flop and the second flip-flop.

6. The integrated circuit as recited in claim 5 , wherein the respective circuitry is further configured to select a divisor of the divide-by-N counter such that the frequency of the second clock signal generated by the divide-by-N counter is less than a maximum threshold frequency supported by the LS GPIO pins.

7. The integrated circuit as recited in claim 1 , wherein in response to a setup time of the second flip-flop is not being met, the respective circuitry is further configured to send said second clock signal in place of the data output of the first flip-flop to the data input of the second flip-flop.

8. The integrated circuit as recited in claim 1 , wherein in response to detecting the error measurement mode, the respective circuitry is further configured to:

select a value of 2 for a divisor for the divide-by-N counter; and

select an inverted data output of a given flip-flop of the first flip-flop and the second flip-flop as the data input for the given flip-flop.

9. A method comprising:

receiving a first clock signal in a physical region of a plurality of physical regions on a die;

generating a second clock signal with a frequency less than a frequency of the first clock signal; and

generating a plurality of other clock signals by combining each of the first clock signal and the second clock signal in sequential logic;

wherein the sequential logic comprises a divide-by-N counter and a plurality of flip-flops including a first flip-flop and a second flip-flop, each configured to receive the first clock signal as a clock input;

wherein in response to detecting an error measurement mode for determining skew in the sequential logic, the method further comprises:

selecting a same polarity of the first clock signal as the clock input of each of the divide-bv-N counter, the first flip-flop, and the second flip-flop; and

selecting a test clock signal to be received as the first clock signal, wherein the test clock signal is generated by external test equipment wherein in response to detecting a mode different from the error measurement mode, the method further comprises selecting an opposite polarity of the first clock signal as the clock input of the first flip-flop.

10. The method as recited in claim 8 , wherein in response to detecting a measurement mode, the method further comprises:

selecting a data output of the divide-by-N counter as a data input of a first flip-flop of the plurality of flip-flops, wherein the second clock signal is the data output of the divide-by-N counter; and

selecting an inverted value of the first clock signal as the clock input of the first flip-flop.

11. The method as recited in claim 10 , wherein in response to being in the measurement mode, the method further comprises:

selecting a data output of the first flip-flop as a data input of the second flip-flop of the plurality of flip-flops; and

selecting a non-inverted value of the first clock signal as the clock input of the second flip-flop.

12. The method as recited in claim 11 , wherein the method further comprises sending the second clock signal and the plurality of other clock signals to measurement equipment through low-speed general-purpose input/output (LS GPIO) pins, wherein the plurality of other clock signals include at least data outputs of the first flip-flop and the second flip-flop.

13. The method as recited in claim 12 , wherein the method further comprises selecting a divisor of the divide-by-N counter such that the frequency of the second clock signal generated by the divide-by-N counter is less than a maximum threshold frequency supported by the LS GPIO pins.

14. The method as recited in claim 1 , wherein in response to detecting the error measurement mode, the method further comprises:

selecting a value of 2 for a divisor for the divide-by-N counter; and

selecting an inverted data output of a given flip-flop of the first flip-flop and the second flip-flop as the data input for the given flip-flop.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2012
From: RAMASWAMI, RAVI K.; JOORDENS, GEERTJAN
To: APPLE INC.
Reel/Frame 029043/0147 →
Continuity (1)
Related Publication 20140091841A1 · Apr 3, 2014