US20070200597A1 - Clock generator having improved deskewer - Google Patents
Clock generator having improved deskewer Download PDFInfo
- Publication number
- US20070200597A1 US20070200597A1 US11/276,408 US27640806A US2007200597A1 US 20070200597 A1 US20070200597 A1 US 20070200597A1 US 27640806 A US27640806 A US 27640806A US 2007200597 A1 US2007200597 A1 US 2007200597A1
- Authority
- US
- United States
- Prior art keywords
- signal
- clock
- clock signal
- multiplexer
- waveform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000013461 design Methods 0.000 claims abstract description 35
- 238000012360 testing method Methods 0.000 claims description 81
- 238000010586 diagram Methods 0.000 description 9
- 238000000034 method Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000007704 transition Effects 0.000 description 8
- 230000000630 rising effect Effects 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 102100038023 DNA fragmentation factor subunit beta Human genes 0.000 description 1
- 101100277639 Homo sapiens DFFB gene Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/15—Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors
- H03K5/15013—Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors with more than two outputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/10—Distribution of clock signals, e.g. skew
Definitions
- the embodiments of the invention generally relate to clock generation circuits and, more particularly, to a clock generation circuit having an improved deskewer.
- Clock circuits provide precise timing so that digital circuits can function properly. They do so by generating a series of high and low pulses. These high and low pulses are typically generated at a fixed frequency that is measured by the number of high and low transitions that occur per second. The transitions are used as reference for critical actions executed within digital circuits. For example, as discussed by Milton in U.S. Pat. No. 6,507,230, Jan. 14, 2003 (incorporated herein by reference and referred to hereinafter as Milton) clock signals are utilized to synchronize bus cycles of digital logic circuits. Thus, digital logic circuits initiate data operations based on clock signals and, specifically, change their output states in conjunction with the rising and/or falling edge of clock signals.
- Milton when multiple clock generators are utilized to feed clock signals to different digital logic circuits within an integrated circuit structure, a difference in delay time, referred to as skew, may occur among the clock signal inputs to the various digital logic circuits. Therefore, Milton discloses a clock generator that provides for reduced clock skews by incorporating a deskewer into each of the clock generators. However, there remains a need in the art for clock generator that provides improved timing and testability.
- embodiments of the invention provide an integrated circuit device comprising a clock generation circuit that incorporates a timing-improved deskewer and either a waveform generator or a finite state machine. Additional embodiments of the invention further improve upon this clock generation circuit by configuring the improved deskewer so that it is testable.
- one embodiment of the invention comprises a waveform generator and an improved deskewer.
- Both the waveform generator and the deskewer are adapted to receive a first clock signal (i.e., a “clock in” signal).
- the waveform generator clocked by this first clock signal is further adapted to generate a waveform signal and to output the generated waveform signal to the deskewer circuit.
- the deskewer circuit is further adapted to receive the waveform signal and to gate the waveform signal with the first clock signal in order to generate a second clock signal that is synchronized to the first clock signal.
- the deskewer circuit comprises a flip-flop, a latch (e.g., a level-sensitive latch) and a multiplexer.
- the first clock signal i.e., the “clock-in” signal
- the waveform signal from the waveform generator is split such that it is input into both the flip-flop and the latch, which are arranged in parallel between the waveform generator and the multiplexer.
- both the flip-flop and latch receive the waveform signal and the first clock signal.
- the flip-flop processes these signals to output a first output signal and the latch processes these signals to output a second output signal.
- the multiplexer then receives the outputs from the flip-flop and latch (i.e., the first and second output signals, respectively) as well as the first clock signal.
- the multiplexer is adapted to gate the first output signal, the second output signal and the first clock signal in order to generate the second clock signal.
- the multiplexer can comprise a plurality of logic circuits such as 3 two-input AND gates and a three-input OR gate that have a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), where a comprises the first output signal, b comprises the second output signal and c comprises the first clock signal.
- another embodiment of the invention comprises a finite state machine and an improved deskewer.
- Both the finite state machine and the deskewer are adapted to receive a first clock signal (i.e., a “clock in” signal).
- the finite state machine clocked by this first clock signal is further adapted to generate two waveform signals (i.e., a first waveform signal and a second waveform signal) and to output these waveform signals to the deskewer circuit.
- the deskewer circuit is further adapted to receive these waveform signals and to gate the waveform signals with the first clock signal in order to generate a second clock signal that is synchronized to the first clock signal.
- the deskewer circuit comprises a flip-flop, a latch (e.g., a level-sensitive latch) and a multiplexer.
- the flip-flop and latch are arranged in parallel between the finite state machine and the multiplexer.
- the first clock signal i.e., the “clock-in” signal
- the first waveform signal from the finite state machine is input into the flip-flop, which processes the first waveform signal and the first clock signal to output a first output signal.
- the second waveform signal from the finite state machine is input into the latch, which processes the second waveform signal and the first clock signal to output a second output signal.
- the multiplexer then receives the outputs from the flip-flop and latch (i.e., the first and second output signals, respectively) as well as the first clock signal.
- the multiplexer is adapted to gate the first output signal, the second output signal and the first clock signal in order to generate the second clock signal.
- the multiplexer can comprise a plurality of logic circuits such as 3 two-input AND gates and a three-input OR gate that have a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), where a comprises the first output signal, b comprises the second output signal and c comprises the first clock signal.
- the clock generation circuits can each be incorporated into various types of integrated circuit devices.
- a clock generation circuit can be incorporated into an integrated circuit device with a level-sensitive scan design that is clocked by the second clock signal.
- the clock generation circuit can comprise an additional multiplexer so that it may be incorporated into an integrated circuit device with an edge-sensitive multiplexer scan design.
- the additional multiplexer can be adapted to receive the second clock signal and to gate the second clock signal with a test mode input signal and a test clock input signal in order to generate a third clock signal for clocking the edge-sensitive multiplexer scan design.
- testable deskewer comprises the flip-flop, latch and multiplexer, described above, and also comprises an AND gate disposed between the flip-flop and the multiplexer.
- This AND gate is adapted to receive the first output signal from the flip-flop as well as a test mode signal from a test mode pin.
- the AND gate couples the first output signal and the test mode signal to generate a third output signal.
- the multiplexer instead of gating the first and second output signals with the first clock signal, the multiplexer gates the third output signal, the second output signal, and the first clock signal in order to generate the second clock signal.
- the test mode signal can be set low to force the second clock signal low when the first clock is low.
- the testable deskewer can further comprise the following additional features: (1) a scan-path multiplexer disposed between the waveform generator (or the finite state machine, depending upon the embodiment) and the flip-flop; (2) a Test Scan Enable pin for controlling the scan-path multiplexer; (3) Scan in and Scan out pins for inserting the mux-DFF (into a scan path; (4) an OR gate inserted either before the D input of the latch or after the L output for ensuring that the clock-on state (1) can propagate (from CLOCK IN to CLOCK OUT) when required, such as when scanning downstream flip-flops; and (5) a Test Clock Enable pin connected to one of the OR-gate input.
- the testable deskewer can comprise a second multiplexer and an OR gate.
- the second multiplexer can be connected between the waveform generator (or finite state machine, depending upon the embodiment) and the flip-flop.
- the OR gate can be connected between the waveform generator (or the finite state machine, depending upon the embodiment) and the latch.
- the OR gate can be connected between the latch and the multiplexer.
- the second multiplexer can be adapted to gate a scan-in signal with both the waveform signal from the waveform generator (or the first waveform signal of the finite state machine, depending upon the embodiment) and a test scan enable signal.
- the purpose of the OR gate is to receive a test clock enable signal in order to override all other gating.
- the clock generation circuit with the testable deskewer may be readily incorporated into an integrated circuit device with an edge-sensitive multiplexer scan design clocked without the required addition of another multiplexer for generating a third clock signal.
- FIG. 1 illustrates a schematic diagram of a clock generation circuit with a finite state machine and deskewer
- FIG. 2 is a chart illustrating exemplary waveform transitions exhibited by the circuit of FIG. 1 ;
- FIG. 3 illustrates a schematic diagram of an embodiment of the clock generation circuit of the invention with a waveform generator and improved deskewer;
- FIG. 4 illustrates a schematic diagram of an exemplary multiplexer that may be incorporated into the clock generation circuits 300 and 700 of FIGS. 3 and 7 ;
- FIG. 5 illustrates a schematic diagram of an embodiment of the clock generation circuit of FIGS. 3 and 7 incorporated into an integrated circuit device with a level-sensitive scan design
- FIG. 6 illustrates a schematic diagram of an embodiment of the clock generation circuit of FIG. 3 or 7 incorporated into an integrated circuit device with an edge-sensitive MUX-scan design
- FIG. 7 illustrates a schematic diagram of another embodiment of the clock generation circuit of the invention with a finite state machine and improved deskewer
- FIG. 8 is a chart illustrating exemplary waveform transitions exhibited by the circuit of FIG. 7 ;
- FIG. 9 illustrates a schematic diagram of an embodiment of the clock generation circuit of the invention with a testable deskewer
- FIG. 10 illustrates a schematic diagram of another embodiment of the clock generation circuit of the invention with a testable deskewer
- FIG. 11 illustrates a schematic diagram of an embodiment of the clock generation circuit of FIG. 9 or 10 incorporated into an integrated circuit device with an edge-sensitive MUX-scan design.
- clock circuits provide precise timing so that digital circuits can function properly. They do so by generating a series of high and low pulses. These high and low pulses are typically generated at a fixed frequency that is measured by the number of high and low transitions that occur per second. The transitions are used as reference for critical actions executed within digital circuits. For example, as discussed by Milton in U.S. Pat. No. 6,507,230, Jan. 14, 2003 (incorporated herein by reference and referred to hereinafter as Milton) clock signals are utilized to synchronize bus cycles of digital logic circuits. Thus, digital logic circuits initiate data operations based on clock signals and, specifically, change their output states in conjunction with the rising and/or falling edge of clock signals.
- Milton discloses a clock generator that provides for reduced clock skews by incorporating a finite state machine (or a waveform generator, depending upon the embodiment) and a deskewer. For example, referring to FIG.
- the clock deskewer 110 provides minimal latency from CLOCK IN 101 to CLOCK OUT 102 , whereby the output waveform z is determined by inputs p and q from a finite state machine 115 clocked by the input clock (CLOCK IN 101 ).
- p is tied low and q is tied high, resulting in an output clock 102 that is equal to the input clock 101 .
- p is tied high and q is tied low, resulting in an output clock that is inverted from the input clock.
- the circuit is useful in integrated circuit designs with multiple clock domains whereby two or more domains have a phase relationship to each other because the two clocks can be generated from the same clock source using two instances of the clock deskewer with two different finite state machines.
- the chart of FIG. 2 illustrates the timing limitation of Milton.
- the deskewer 110 inputs p and q have different timing requirements. Input p must satisfy setup and hold criteria with respect to the rising edge of the clock, whereas input q must satisfy setup and hold criteria with respect to the falling edge of the clock.
- outputs p and q change state some time after the rising edge of the clock and remain stable until after the next rising edge.
- the delay from the rising clock edge until output q changes state may be so large that it is impossible to meet the setup requirement. Therefore, there remains a need in the art for clock generator that provides improved timing—specifically, a relaxed setup requirement.
- embodiments of the invention provide an integrated circuit device comprising a clock generation circuit that incorporates a timing-improved deskewer and either a waveform generator or a finite state machine. Additional embodiments of the invention further improve upon this clock generation circuit by configuring the improved deskewer so that it is testable.
- one embodiment of the invention comprises a clock generation circuit 300 comprising a waveform generator 315 and an improved deskewer 310 .
- Both the waveform generator 315 and the deskewer 310 are adapted to receive a first clock signal 301 (i.e., a “clock in” signal).
- the waveform generator 315 may be implemented by any suitable waveform generator circuit known in the art.
- the waveform generator 315 clocked by this first clock signal 301 is further adapted to generate a waveform signal 350 and to output the generated waveform signal 350 to the deskewer circuit 310 .
- the deskewer circuit 310 is further adapted to receive the waveform signal 350 and to gate the waveform signal 350 with the first clock signal 301 in order to generate a second clock signal 302 that is synchronously linked to the first clock signal (e.g., so that it has a fixed latency with respect to the clock-input signal).
- a second clock signal 302 that is synchronously linked to the first clock signal (e.g., so that it has a fixed latency with respect to the clock-input signal).
- the deskewer 310 delays the waveform signal 350 for one clock cycle in accordance with the clock cycle of the clock-in signal 301 so that the clock-out signal 302 is closely timed with respect to the clock-in signal 301 .
- the deskewer circuit 310 comprises a flip-flop 320 , a latch 330 (e.g., a level-sensitive latch) and a multiplexer 340 .
- the first clock signal 301 i.e., the “clock-in” signal
- the waveform signal 350 from the waveform generator 315 is split such that it is input into both the flip-flop 320 and the latch 330 , which are arranged in parallel between the waveform generator 315 and the multiplexer 340 .
- both the flip-flop 320 and latch 330 receive the waveform signal 350 and the first clock signal 301 .
- the flip-flop 320 processes these signals to output a first output signal 321 and the latch 330 processes these signals to output a second output signal 332 .
- the multiplexer 340 then receives the outputs 321 , 332 from the flip-flop 320 and latch 330 (i.e., the first and second output signals 321 , 332 , respectively) as well as the first clock signal 301 .
- the multiplexer 340 is adapted to gate the first output signal 321 , the second output signal 332 and the first clock signal 301 in order to generate the second clock signal 302 .
- the output multiplexer 340 has been re-drawn (compared to FIG. 1 ) as a single block, indicating that the deskewer function is not dependent upon the implementation of the multiplexer, provided that the multiplexer is “glitch-free.” However, referring to FIG.
- an exemplary multiplexer 340 can, as in FIG. 1 , comprise a plurality of logic circuits 441 - 445 such as 3 two-input AND gates 441 - 443 and a three-input OR gate 445 that have a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), where a comprises the first output signal 321 , b comprises the second output signal 332 and c comprises the first clock signal 301 .
- the clock generation circuit 300 can be incorporated into various types of integrated circuit devices.
- the clock generation circuit 300 can be incorporated into an integrated circuit device 500 with a level-sensitive scan design 560 that is clocked by the second clock signal 302 .
- FIG. 5 illustrates an integrated circuit device 500 in which clock generation circuit 300 is used in a typical level-sensitive scan design 560 , such as an application-specific integrated circuit (ASIC).
- the source of CLOCK IN 301 may be a clock primary input, but is more typically the output of a phase-locked loop (PLL).
- PLL phase-locked loop
- SRL shift-register latch
- a clock splitter at the leaf of the clock re-powering/fan-out tree splits the clock into two complementary phases and re-drives the clock to several SRLs.
- An ASIC with several tens of thousands of SRLs will have several thousands of splitters for splitting and re-powering the clock.
- the SRLs are connected into scan chains by connecting the output of each SRL to the I (scan in) pin of another. Test patterns are scanned through the SRLs by holding Test Clock C low while alternately pulsing Test Clock A and Test Clock B. When capturing the response of a test vector, Test Clocks A and B are typically held low while Test Clock C is pulsed.
- the clock generation logic i.e., the waveform generator 315 , deskewer 310 , and re-powering circuits
- the clock generation logic are statically tested because the generated clock gates the propagation of Test Clock C.
- the clock generation circuit 300 can further comprise another multiplexer 680 adapted to gate the second clock signal 302 and a test clock input signal 685 in order to generate a third clock signal 683 so that this third clock signal 683 can be used to clock an integrated circuit device 600 with an edge-sensitive multiplexer scan design 670 .
- FIG. 6 illustrates an integrated circuit device 600 with a typical edge-sensitive mux-scan design 670 .
- a mux-DFF is used to implement each rising-edge-triggered flip-flop in the design.
- the mux-DFFs are connected into scan chains by connecting the output of each mux-DFF to the scan in pin (SI) of another.
- Test patterns are scanned through the mux-DFFs by holding Test Scan Enable high while pulsing clock signal 683 .
- Test Scan Enable is held low while pulsing the clock.
- clock signal 683 is not a primary input to the chip, a test clock 685 is muxed into the clock, typically at the root of the clock tree. Because the output 302 of the deskewer 310 of the clock generation circuit 300 is not a direct function of its clock input 301 , the test clock 685 must be multiplexed into the clock distribution after the deskewer 310 .
- the additional clock multiplexer 680 is controlled by a Test Mode signal 686 which is active for all scan-based tests of the design.
- test-clock multiplexer 680 may add latency to the clock distribution network. As a result, the uncertainty of the clock arrival time at the flip-flops in the edge-sensitive MUX scan design 670 is increased.
- One solution is to incorporate the test-clock multiplexer into the root-stage driver(s) of the clock re-powering and fan-out network.
- Another solution discussed in greater detail below with regard to FIGS. 9 and 10 , is to incorporate the test-clock multiplexing function into the deskewer circuit 310 .
- another embodiment of the invention comprises a clock generation circuit 700 similar to the clock generation circuit 300 but comprising a finite state machine 716 as opposed to a waveform generator. Both the finite state machine 716 and the improved deskewer 710 of clock generation circuit 700 are adapted to receive a first clock signal 701 (i.e., a “clock in” signal).
- a first clock signal 701 i.e., a “clock in” signal.
- the finite state machine 716 may be implemented by any suitable finite state machine known in the art.
- the finite state machine 716 clocked by this first clock signal 701 is adapted to generate two waveform signals (i.e., a first waveform signal 751 ( p ) and a second waveform signal 752 ( q )) and to output these waveform signals 751 , 752 to the deskewer circuit 710 .
- the finite state machine 716 is configured to operate at a 1 ⁇ clock frequency to separately encode information on two outputs p (i.e., first waveform signal 751 ) and q (i.e., second waveform signal 752 ). This enables the circuit to propagate two clock edges for every clock cycle (e.g., first waveform signal 751 at the first half of the clock cycle and second waveform signal 752 at the second half of the same clock cycle).
- the deskewer circuit 710 is adapted to receive these waveform signals 751 , 752 and to gate the waveform signals 751 , 752 with the first clock signal 701 in order to generate a second clock signal 702 that is synchronously linked to the first clock signal (e.g., so that it has a fixed latency with respect to the clock-input signal).
- skew differences in delay time
- the deskewer circuit 710 delays each of these waveform signals 751 and 752 for one clock cycle, according to the clock cycle of the clock-in signal 701 so that the clock-out signal 702 is closely timed with respect to the clock-in signal 701 .
- the deskewer circuit comprises a flip-flop 720 , a latch 730 (e.g., a level-sensitive latch) and a multiplexer 740 .
- the flip-flop 720 and latch 730 are arranged in parallel between the finite state machine 716 and the multiplexer 740 .
- the first clock signal 701 i.e., the “clock-in” signal
- the first waveform signal 751 from the finite state machine 716 is input into the flip-flop 720 , which processes the first waveform signal 751 and the first clock signal 701 to output a first output signal 721 ( a ).
- the second waveform signal 752 from the finite state machine 716 is input into the latch 730 , which processes the second waveform signal 752 and the first clock signal 701 to output a second output signal 732 ( b ).
- the multiplexer 740 then receives the outputs from the flip-flop 720 and latch 730 (i.e., the first and second output signals 721 , 732 , respectively) as well as the first clock signal 701 .
- the multiplexer 740 is adapted to gate the first output signal 721 , the second output signal 732 and the first clock signal 701 in order to generate the second clock signal 702 .
- the output multiplexer 740 has been re-drawn (compared to FIG. 1 ) as a single block, indicating that the deskewer function is not dependent upon the implementation of the multiplexer, provided that the multiplexer is “glitch-free.”
- an exemplary multiplexer 740 can, as in FIG.
- a comprises the first output signal 721
- b comprises the second output signal 732
- c comprises the first clock signal 701 .
- the clock generation circuit 700 can be incorporated into various types of integrated circuit devices.
- the clock generation circuit 700 can be incorporated into an integrated circuit device 500 with a level-sensitive scan design 560 that is clocked by the second clock signal 702 .
- FIG. 5 illustrates an integrated circuit device 500 in which clock generation circuit 700 is used in a typical level-sensitive scan design 560 , such as an application-specific integrated circuit (ASIC).
- the source of CLOCK IN 701 may be a clock primary input, but is more typically the output of a phase-locked loop (PLL).
- PLL phase-locked loop
- SRL shift-register latch
- a clock splitter at the leaf of the clock re-powering/fan-out tree splits the clock into two complementary phases and re-drives the clock to several SRLs.
- An ASIC with several tens of thousands of SRLs will have several thousands of splitters for splitting and re-powering the clock.
- the SRLs are connected into scan chains by connecting the output of each SRL to the I (scan in) pin of another. Test patterns are scanned through the SRLs by holding Test Clock C low while alternately pulsing Test Clock A and Test Clock B. When capturing the response of a test vector, Test Clocks A and B are typically held low while Test Clock C is pulsed.
- the clock generation logic i.e., the finite state machine 716 , deskewer 710 , and re-powering circuits
- the clock generation logic are statically tested, because the generated clock gates the propagation of Test Clock C.
- the clock generation circuit 700 can further comprise another multiplexer 680 adapted to gate the second clock signal 702 and a test clock input signal 685 in order to generate a third clock signal 683 .
- the clock generation circuit can be used to clock an integrated circuit device with an edge-sensitive multiplexer scan design 670 .
- FIG. 6 illustrates an integrated circuit device 600 with a typical edge-sensitive mux-scan design 670 .
- a mux-DFF is used to implement each rising-edge-triggered flip-flop in the design.
- the mux-DFFs are connected into scan chains by connecting the output of each mux-DFF to the scan in pin (SI) of another.
- Test patterns are scanned through the mux-DFFs by holding Test Scan Enable high while pulsing clock signal 683 .
- Test Scan Enable is held low while pulsing the clock.
- clock signal 683 is not a primary input to the chip, a test clock 685 is muxed into the clock, typically at the root of the clock tree. Because the output 702 of the deskewer 710 of the clock generation circuit 700 is not a direct function of its clock input 701 , the test clock 685 must be multiplexed into the clock distribution after the deskewer 710 .
- the additional clock multiplexer 680 is controlled by a Test Mode signal 686 which is active for all scan-based tests of the design.
- test-clock multiplexer 680 may add latency to the clock distribution network. As a result, the uncertainty of the clock arrival time at the flip-flops in the edge-sensitive MUX scan design 670 is increased.
- One solution would be to incorporate the test-clock multiplexer into the root-stage driver(s) of the clock re-powering and fan-out network.
- Another solution discussed in greater detail below with regard to FIGS. 9 and 10 , is to incorporate the test-clock multiplexing function into the deskewer circuit 710 .
- additional embodiments of the invention further improve upon the clock generation circuits 300 and 700 by configuring each of the clock generation circuits 900 and 1000 , respectively, with an improved deskewer 910 , 1010 that is testable (i.e., a testable deskewer).
- the clock generation circuit 900 of FIG. 9 is similar to clock generation circuit 300 of FIG. 3 in that it comprises the same waveform generator.
- the clock generation circuit 1000 of FIG. 10 is similar to clock generation circuit 700 of FIG. 7 in that it comprises the same finite state machine 716 .
- Both the clock generation circuits 900 and 1000 comprise a testable deskewer 910 , 1010 .
- the testable deskewer 910 , 1010 comprises a flip-flop 920 , 1020 , latch 930 , 1030 and multiplexer 940 , 1040 .
- the testable deskewer 910 , 1010 also comprises a two input AND gate 990 , 1090 disposed between the flip-flop 920 , 1020 and the multiplexer 940 , 1040 .
- This AND gate 990 , 1090 is adapted to receive the first output signal 921 , 1021 from the flip-flop 920 , 1020 as well as a test mode signal 992 , 1092 from a test mode pin that has been added for forcing the output 902 , 1002 to zero during test.
- the AND gate 990 , 1090 couples the first output signal 921 , 1021 and the test mode signal 992 , 1092 to generate a third output signal 993 , 1093 .
- the multiplexer 940 , 1040 instead of gating the first and second output signals with the first clock signal, the multiplexer 940 , 1040 gates the third output signal 993 , 1093 , the second output signal 932 , 1032 , and the first clock signal 901 , 1001 in order to generate the second clock signal 902 , 1002 .
- the test mode signal 992 , 1092 and the first clock signal both to low and gating the first output signal 921 , 1021 with the test mode signal 992 , 1092 the second clock signal 902 , 1002 can be forced to low during testing. Additionally, because the afore-mentioned 2-input gate 990 , 1090 blocks the propagation of the flip-flop 920 , the multiplexer 995 , 1095 in combination with the flip-flop 920 , 1020 allows its state to be observable via scan.
- the testable deskewer 910 , 1010 can further comprise the following additional features: (1) a multiplexer 995 , 1095 disposed between the waveform generator 915 (or the finite state machine 1016 , depending upon the embodiment) and the flip-flop 920 , 1020 ; (2) a Test Scan Enable pin 996 , 1096 for controlling the scan-path multiplexer; (3) Scan in 998 , 1098 and Scan out pins 994 , 1094 for inserting the mux-DFF ( 995 - 920 , 1095 - 1020 ) into a scan path; (4) an OR gate 997 , 1097 inserted either before the D input of the latch 930 , 1030 (as shown) or after the L output (not shown) for ensuring that the clock-on state (1) can propagate (from CLOCK IN 901 , 1001 to CLOCK OUT 902 , 1002 ) when required, such as when scanning downstream flip-flops; and
- the testable deskewer 910 , 1010 can comprise a second multiplexer 995 , 1095 and an OR gate 997 , 1097 .
- the second multiplexer 995 , 1095 can be connected between the waveform generator 915 (or finite state machine 1016 , depending upon the embodiment) and the flip-flop 920 , 1020 .
- the OR gate 997 , 1097 can be connected between the waveform generator 915 (or the finite state machine 1016 , depending upon the embodiment) and the latch 930 , 1030 (as shown in FIGS. 9 and 10 ).
- the OR gate 997 , 1097 can be connected between the latch 930 , 1030 and the multiplexer 940 , 1040 (not shown).
- the second multiplexer 995 , 1095 can be adapted to gate a scan-in signal 998 (i.e., a scan input signal), 1098 with both the waveform signal 950 from the waveform generator 915 (or the first waveform signal 1051 of the finite state machine 1016 , depending upon the embodiment) and a test scan enable signal 996 , 1096 .
- the purpose of the OR gate is to receive a test clock enable signal 999 , 1099 in order to override all other gating.
- the clock generation circuit 900 , 1000 with the testable deskewer may be readily incorporated into an integrated circuit device 1100 with an edge-sensitive multiplexer scan design 1160 clocked without the required addition of another multiplexer for generating a third clock signal (as required when the deskewer is not testable).
- the test-clock multiplexer (and its associated latency) has been removed from the clock path.
- the functional clock, CLOCK IN can be used as the test clock, provided that CLOCK IN is controllable from a primary input.
- the edge-sensitive multiplexer scan design 1160 can be clocked with the second clock signal 1102 .
- an integrated circuit device that comprises a clock generation circuit for generating a clock-out signal that is synchronized to a clock-in signal.
- a clock generation circuit for generating a clock-out signal that is synchronized to a clock-in signal.
- the clock generation circuit incorporates a waveform generator (or finite state machine) and a timing-improved deskewer.
- the waveform generator or finite state machine
- the timing-improved deskewer incorporates a flip-flop, a level-sensitive latch, and a multiplexer.
- the flip-flop and latch are connected in parallel and each receives waveform signals from the waveform generator (or finite state machine) as well as the clock-in signal in order to generate output signals.
- the multiplexer gates the flip-flop and latch output signals with the clock-in signal in order to generate the clock-out signal.
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Nonlinear Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
Disclosed is a clock generation circuit for generating a clock-out signal that has a fixed latency with respect to a clock-input signal. When multiple such clock generation circuits are utilized to feed clock signals to different digital logic circuits within an integrated circuit structure, differences in delay time, referred to as skew, are minimized. An embodiment of the clock generation circuit incorporates a waveform generator and a timing-improved deskewer. The waveform generator is clocked by a clock-in signal. The deskewer comprises a flip-flop, a level-sensitive latch, and a multiplexer. The flip-flop and latch are connected in parallel and each receives waveform signals from the waveform generator as well as the clock-in signal in order to generate output signals. The multiplexer gates the flip-flop and latch output signals with the clock-in signal in order to generate the clock-out signal. A testable deskewer for edge-sensitive multiplexer scan designs is also disclosed.
Description
- 1. Field of the Invention
- The embodiments of the invention generally relate to clock generation circuits and, more particularly, to a clock generation circuit having an improved deskewer.
- 2. Description of the Related Art
- Clock circuits provide precise timing so that digital circuits can function properly. They do so by generating a series of high and low pulses. These high and low pulses are typically generated at a fixed frequency that is measured by the number of high and low transitions that occur per second. The transitions are used as reference for critical actions executed within digital circuits. For example, as discussed by Milton in U.S. Pat. No. 6,507,230, Jan. 14, 2003 (incorporated herein by reference and referred to hereinafter as Milton) clock signals are utilized to synchronize bus cycles of digital logic circuits. Thus, digital logic circuits initiate data operations based on clock signals and, specifically, change their output states in conjunction with the rising and/or falling edge of clock signals.
- Also, as discussed in Milton, when multiple clock generators are utilized to feed clock signals to different digital logic circuits within an integrated circuit structure, a difference in delay time, referred to as skew, may occur among the clock signal inputs to the various digital logic circuits. Therefore, Milton discloses a clock generator that provides for reduced clock skews by incorporating a deskewer into each of the clock generators. However, there remains a need in the art for clock generator that provides improved timing and testability.
- In view of the foregoing, embodiments of the invention provide an integrated circuit device comprising a clock generation circuit that incorporates a timing-improved deskewer and either a waveform generator or a finite state machine. Additional embodiments of the invention further improve upon this clock generation circuit by configuring the improved deskewer so that it is testable.
- More particularly, one embodiment of the invention comprises a waveform generator and an improved deskewer. Both the waveform generator and the deskewer are adapted to receive a first clock signal (i.e., a “clock in” signal). The waveform generator clocked by this first clock signal is further adapted to generate a waveform signal and to output the generated waveform signal to the deskewer circuit. The deskewer circuit is further adapted to receive the waveform signal and to gate the waveform signal with the first clock signal in order to generate a second clock signal that is synchronized to the first clock signal.
- Specifically, the deskewer circuit comprises a flip-flop, a latch (e.g., a level-sensitive latch) and a multiplexer. The first clock signal (i.e., the “clock-in” signal) is split such that it is input into each of these components. The waveform signal from the waveform generator is split such that it is input into both the flip-flop and the latch, which are arranged in parallel between the waveform generator and the multiplexer. Thus, both the flip-flop and latch receive the waveform signal and the first clock signal. The flip-flop processes these signals to output a first output signal and the latch processes these signals to output a second output signal. The multiplexer then receives the outputs from the flip-flop and latch (i.e., the first and second output signals, respectively) as well as the first clock signal. The multiplexer is adapted to gate the first output signal, the second output signal and the first clock signal in order to generate the second clock signal. For example, the multiplexer can comprise a plurality of logic circuits such as 3 two-input AND gates and a three-input OR gate that have a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), where a comprises the first output signal, b comprises the second output signal and c comprises the first clock signal.
- Similarly, another embodiment of the invention comprises a finite state machine and an improved deskewer. Both the finite state machine and the deskewer are adapted to receive a first clock signal (i.e., a “clock in” signal). The finite state machine clocked by this first clock signal is further adapted to generate two waveform signals (i.e., a first waveform signal and a second waveform signal) and to output these waveform signals to the deskewer circuit. The deskewer circuit is further adapted to receive these waveform signals and to gate the waveform signals with the first clock signal in order to generate a second clock signal that is synchronized to the first clock signal.
- Specifically, the deskewer circuit comprises a flip-flop, a latch (e.g., a level-sensitive latch) and a multiplexer. The flip-flop and latch are arranged in parallel between the finite state machine and the multiplexer. The first clock signal (i.e., the “clock-in” signal) is split such that it is input into each of these components. The first waveform signal from the finite state machine is input into the flip-flop, which processes the first waveform signal and the first clock signal to output a first output signal. The second waveform signal from the finite state machine is input into the latch, which processes the second waveform signal and the first clock signal to output a second output signal. The multiplexer then receives the outputs from the flip-flop and latch (i.e., the first and second output signals, respectively) as well as the first clock signal. The multiplexer is adapted to gate the first output signal, the second output signal and the first clock signal in order to generate the second clock signal. For example, the multiplexer can comprise a plurality of logic circuits such as 3 two-input AND gates and a three-input OR gate that have a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), where a comprises the first output signal, b comprises the second output signal and c comprises the first clock signal.
- The clock generation circuits, described above, can each be incorporated into various types of integrated circuit devices. For example, a clock generation circuit, according to the invention, can be incorporated into an integrated circuit device with a level-sensitive scan design that is clocked by the second clock signal. Alternatively, the clock generation circuit, according to the invention, can comprise an additional multiplexer so that it may be incorporated into an integrated circuit device with an edge-sensitive multiplexer scan design. Specifically, the additional multiplexer can be adapted to receive the second clock signal and to gate the second clock signal with a test mode input signal and a test clock input signal in order to generate a third clock signal for clocking the edge-sensitive multiplexer scan design.
- Additional embodiments of the invention further improve upon the clock generation circuits, as described above, by configuring the improved deskewers to be testable (i.e., a testable deskewer). The testable deskewer comprises the flip-flop, latch and multiplexer, described above, and also comprises an AND gate disposed between the flip-flop and the multiplexer. This AND gate is adapted to receive the first output signal from the flip-flop as well as a test mode signal from a test mode pin. The AND gate couples the first output signal and the test mode signal to generate a third output signal. Thus, instead of gating the first and second output signals with the first clock signal, the multiplexer gates the third output signal, the second output signal, and the first clock signal in order to generate the second clock signal. Thus, during testing, the test mode signal can be set low to force the second clock signal low when the first clock is low.
- The testable deskewer can further comprise the following additional features: (1) a scan-path multiplexer disposed between the waveform generator (or the finite state machine, depending upon the embodiment) and the flip-flop; (2) a Test Scan Enable pin for controlling the scan-path multiplexer; (3) Scan in and Scan out pins for inserting the mux-DFF (into a scan path; (4) an OR gate inserted either before the D input of the latch or after the L output for ensuring that the clock-on state (1) can propagate (from CLOCK IN to CLOCK OUT) when required, such as when scanning downstream flip-flops; and (5) a Test Clock Enable pin connected to one of the OR-gate input. More particularly, the testable deskewer can comprise a second multiplexer and an OR gate. The second multiplexer can be connected between the waveform generator (or finite state machine, depending upon the embodiment) and the flip-flop. The OR gate can be connected between the waveform generator (or the finite state machine, depending upon the embodiment) and the latch. Alternatively, the OR gate can be connected between the latch and the multiplexer. The second multiplexer can be adapted to gate a scan-in signal with both the waveform signal from the waveform generator (or the first waveform signal of the finite state machine, depending upon the embodiment) and a test scan enable signal. The purpose of the OR gate is to receive a test clock enable signal in order to override all other gating. Thus, the clock generation circuit with the testable deskewer may be readily incorporated into an integrated circuit device with an edge-sensitive multiplexer scan design clocked without the required addition of another multiplexer for generating a third clock signal.
- These and other aspects of the embodiments of the invention will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following descriptions, while indicating preferred embodiments of the invention and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments of the invention without departing from the spirit thereof, and the embodiments of the invention include all such modifications.
- The embodiments of the invention will be better understood from the following detailed description with reference to the drawings, in which:
-
FIG. 1 illustrates a schematic diagram of a clock generation circuit with a finite state machine and deskewer; -
FIG. 2 is a chart illustrating exemplary waveform transitions exhibited by the circuit ofFIG. 1 ; -
FIG. 3 illustrates a schematic diagram of an embodiment of the clock generation circuit of the invention with a waveform generator and improved deskewer; -
FIG. 4 illustrates a schematic diagram of an exemplary multiplexer that may be incorporated into theclock generation circuits FIGS. 3 and 7 ; -
FIG. 5 illustrates a schematic diagram of an embodiment of the clock generation circuit ofFIGS. 3 and 7 incorporated into an integrated circuit device with a level-sensitive scan design; -
FIG. 6 illustrates a schematic diagram of an embodiment of the clock generation circuit ofFIG. 3 or 7 incorporated into an integrated circuit device with an edge-sensitive MUX-scan design; -
FIG. 7 illustrates a schematic diagram of another embodiment of the clock generation circuit of the invention with a finite state machine and improved deskewer; -
FIG. 8 is a chart illustrating exemplary waveform transitions exhibited by the circuit ofFIG. 7 ; -
FIG. 9 illustrates a schematic diagram of an embodiment of the clock generation circuit of the invention with a testable deskewer; -
FIG. 10 illustrates a schematic diagram of another embodiment of the clock generation circuit of the invention with a testable deskewer; and -
FIG. 11 illustrates a schematic diagram of an embodiment of the clock generation circuit ofFIG. 9 or 10 incorporated into an integrated circuit device with an edge-sensitive MUX-scan design. - The embodiments of the invention and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. It should be noted that the features illustrated in the drawings are not necessarily drawn to scale. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments of the invention. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments of the invention may be practiced and to further enable those of skill in the art to practice the embodiments of the invention. Accordingly, the examples should not be construed as limiting the scope of the embodiments of the invention.
- As mentioned above, clock circuits provide precise timing so that digital circuits can function properly. They do so by generating a series of high and low pulses. These high and low pulses are typically generated at a fixed frequency that is measured by the number of high and low transitions that occur per second. The transitions are used as reference for critical actions executed within digital circuits. For example, as discussed by Milton in U.S. Pat. No. 6,507,230, Jan. 14, 2003 (incorporated herein by reference and referred to hereinafter as Milton) clock signals are utilized to synchronize bus cycles of digital logic circuits. Thus, digital logic circuits initiate data operations based on clock signals and, specifically, change their output states in conjunction with the rising and/or falling edge of clock signals.
- Also, as discussed in Milton, when multiple clock generators are utilized to feed clock signals to different digital logic circuits within an integrated circuit structure, a difference in delay time, referred to as skew, may occur among the clock signal inputs to the various digital logic circuits. Therefore, Milton discloses a clock generator that provides for reduced clock skews by incorporating a finite state machine (or a waveform generator, depending upon the embodiment) and a deskewer. For example, referring to
FIG. 1 , in one embodiment of Milton, theclock deskewer 110 provides minimal latency from CLOCK IN 101 toCLOCK OUT 102, whereby the output waveform z is determined by inputs p and q from afinite state machine 115 clocked by the input clock (CLOCK IN 101). In a simple case, p is tied low and q is tied high, resulting in anoutput clock 102 that is equal to theinput clock 101. In another simple case, p is tied high and q is tied low, resulting in an output clock that is inverted from the input clock. By designing appropriatefinite state machine 115 logic, it is possible to create a clock waveform that transitions only when the input clock transitions. The circuit is useful in integrated circuit designs with multiple clock domains whereby two or more domains have a phase relationship to each other because the two clocks can be generated from the same clock source using two instances of the clock deskewer with two different finite state machines. However, the invention of Milton is limited. The chart ofFIG. 2 illustrates the timing limitation of Milton. Specifically, thedeskewer 110 inputs p and q have different timing requirements. Input p must satisfy setup and hold criteria with respect to the rising edge of the clock, whereas input q must satisfy setup and hold criteria with respect to the falling edge of the clock. In a typical finite state machine design using rising-edge-triggered flip-flops, outputs p and q change state some time after the rising edge of the clock and remain stable until after the next rising edge. In high-speed applications, the delay from the rising clock edge until output q changes state may be so large that it is impossible to meet the setup requirement. Therefore, there remains a need in the art for clock generator that provides improved timing—specifically, a relaxed setup requirement. - In view of the foregoing, embodiments of the invention provide an integrated circuit device comprising a clock generation circuit that incorporates a timing-improved deskewer and either a waveform generator or a finite state machine. Additional embodiments of the invention further improve upon this clock generation circuit by configuring the improved deskewer so that it is testable.
- More particularly, referring to
FIG. 3 , one embodiment of the invention comprises aclock generation circuit 300 comprising awaveform generator 315 and animproved deskewer 310. Both thewaveform generator 315 and thedeskewer 310 are adapted to receive a first clock signal 301 (i.e., a “clock in” signal). Thewaveform generator 315 may be implemented by any suitable waveform generator circuit known in the art. Thewaveform generator 315 clocked by thisfirst clock signal 301 is further adapted to generate awaveform signal 350 and to output the generatedwaveform signal 350 to thedeskewer circuit 310. Thedeskewer circuit 310 is further adapted to receive thewaveform signal 350 and to gate thewaveform signal 350 with thefirst clock signal 301 in order to generate asecond clock signal 302 that is synchronously linked to the first clock signal (e.g., so that it has a fixed latency with respect to the clock-input signal). When multiple such clock generation circuits are utilized to feed clock signals to different digital logic circuits within an integrated circuit structure, differences in delay time, referred to as skew, are minimized, - Specifically, the
deskewer 310 delays thewaveform signal 350 for one clock cycle in accordance with the clock cycle of the clock-insignal 301 so that the clock-out signal 302 is closely timed with respect to the clock-insignal 301. More specifically, thedeskewer circuit 310 comprises a flip-flop 320, a latch 330 (e.g., a level-sensitive latch) and amultiplexer 340. The first clock signal 301 (i.e., the “clock-in” signal) is split such that it is input into each of thesecomponents waveform signal 350 from thewaveform generator 315 is split such that it is input into both the flip-flop 320 and thelatch 330, which are arranged in parallel between thewaveform generator 315 and themultiplexer 340. Thus, both the flip-flop 320 and latch 330 receive thewaveform signal 350 and thefirst clock signal 301. The flip-flop 320 processes these signals to output afirst output signal 321 and thelatch 330 processes these signals to output asecond output signal 332. - The
multiplexer 340 then receives theoutputs flop 320 and latch 330 (i.e., the first and second output signals 321, 332, respectively) as well as thefirst clock signal 301. Themultiplexer 340 is adapted to gate thefirst output signal 321, thesecond output signal 332 and thefirst clock signal 301 in order to generate thesecond clock signal 302. Note also that theoutput multiplexer 340 has been re-drawn (compared toFIG. 1 ) as a single block, indicating that the deskewer function is not dependent upon the implementation of the multiplexer, provided that the multiplexer is “glitch-free.” However, referring toFIG. 4 , anexemplary multiplexer 340 can, as inFIG. 1 , comprise a plurality of logic circuits 441-445 such as 3 two-input AND gates 441-443 and a three-input ORgate 445 that have a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), where a comprises thefirst output signal 321, b comprises thesecond output signal 332 and c comprises thefirst clock signal 301. - The
clock generation circuit 300, described above, can be incorporated into various types of integrated circuit devices. For example, referring toFIG. 5 , theclock generation circuit 300 can be incorporated into anintegrated circuit device 500 with a level-sensitive scan design 560 that is clocked by thesecond clock signal 302. Specifically,FIG. 5 illustrates anintegrated circuit device 500 in whichclock generation circuit 300 is used in a typical level-sensitive scan design 560, such as an application-specific integrated circuit (ASIC). The source of CLOCK IN 301 may be a clock primary input, but is more typically the output of a phase-locked loop (PLL). At the right, a shift-register latch (SRL) pair is used to implement each rising-edge-triggered flip-flop in ASIC. A clock splitter at the leaf of the clock re-powering/fan-out tree splits the clock into two complementary phases and re-drives the clock to several SRLs. An ASIC with several tens of thousands of SRLs will have several thousands of splitters for splitting and re-powering the clock. For level-sensitive scan-based testing, the SRLs are connected into scan chains by connecting the output of each SRL to the I (scan in) pin of another. Test patterns are scanned through the SRLs by holding Test Clock C low while alternately pulsing Test Clock A and Test Clock B. When capturing the response of a test vector, Test Clocks A and B are typically held low while Test Clock C is pulsed. Assuming that CLOCK IN 301 is controllable during test, the clock generation logic (i.e., thewaveform generator 315,deskewer 310, and re-powering circuits) are statically tested because the generated clock gates the propagation of Test Clock C. - Alternatively, referring to
FIG. 6 , theclock generation circuit 300 can further comprise anothermultiplexer 680 adapted to gate thesecond clock signal 302 and a testclock input signal 685 in order to generate athird clock signal 683 so that thisthird clock signal 683 can be used to clock anintegrated circuit device 600 with an edge-sensitivemultiplexer scan design 670. Specifically,FIG. 6 illustrates anintegrated circuit device 600 with a typical edge-sensitive mux-scan design 670. At the right, a mux-DFF is used to implement each rising-edge-triggered flip-flop in the design. For scan-based testing, the mux-DFFs are connected into scan chains by connecting the output of each mux-DFF to the scan in pin (SI) of another. Test patterns are scanned through the mux-DFFs by holding Test Scan Enable high while pulsingclock signal 683. When capturing the response of a test vector, Test Scan Enable is held low while pulsing the clock. Sinceclock signal 683 is not a primary input to the chip, atest clock 685 is muxed into the clock, typically at the root of the clock tree. Because theoutput 302 of thedeskewer 310 of theclock generation circuit 300 is not a direct function of itsclock input 301, thetest clock 685 must be multiplexed into the clock distribution after thedeskewer 310. Theadditional clock multiplexer 680 is controlled by a Test Mode signal 686 which is active for all scan-based tests of the design. Because thedeskewer output 302 is blocked by the test-clock multiplexer 680, test observation logic must be inserted if thedeskewer 310 is to be tested. A disadvantage of this configuration is that the test-clock multiplexer 680 may add latency to the clock distribution network. As a result, the uncertainty of the clock arrival time at the flip-flops in the edge-sensitiveMUX scan design 670 is increased. One solution is to incorporate the test-clock multiplexer into the root-stage driver(s) of the clock re-powering and fan-out network. Another solution, discussed in greater detail below with regard toFIGS. 9 and 10 , is to incorporate the test-clock multiplexing function into thedeskewer circuit 310. - Referring to
FIG. 7 , another embodiment of the invention comprises aclock generation circuit 700 similar to theclock generation circuit 300 but comprising afinite state machine 716 as opposed to a waveform generator. Both thefinite state machine 716 and theimproved deskewer 710 ofclock generation circuit 700 are adapted to receive a first clock signal 701 (i.e., a “clock in” signal). - The
finite state machine 716 may be implemented by any suitable finite state machine known in the art. Thefinite state machine 716 clocked by thisfirst clock signal 701 is adapted to generate two waveform signals (i.e., a first waveform signal 751 (p) and a second waveform signal 752 (q)) and to output these waveform signals 751, 752 to thedeskewer circuit 710. Specifically, thefinite state machine 716 is configured to operate at a 1× clock frequency to separately encode information on two outputs p (i.e., first waveform signal 751) and q (i.e., second waveform signal 752). This enables the circuit to propagate two clock edges for every clock cycle (e.g.,first waveform signal 751 at the first half of the clock cycle andsecond waveform signal 752 at the second half of the same clock cycle). - The
deskewer circuit 710 is adapted to receive these waveform signals 751, 752 and to gate the waveform signals 751, 752 with thefirst clock signal 701 in order to generate asecond clock signal 702 that is synchronously linked to the first clock signal (e.g., so that it has a fixed latency with respect to the clock-input signal). When multiple such clock generation circuits are utilized to feed clock signals to different digital logic circuits within an integrated circuit structure, differences in delay time, referred to as skew, are minimized. Thedeskewer circuit 710 delays each of thesewaveform signals signal 701 so that the clock-out signal 702 is closely timed with respect to the clock-insignal 701. To do so, the deskewer circuit comprises a flip-flop 720, a latch 730 (e.g., a level-sensitive latch) and amultiplexer 740. The flip-flop 720 and latch 730 are arranged in parallel between thefinite state machine 716 and themultiplexer 740. The first clock signal 701 (i.e., the “clock-in” signal) is split such that it is input into each of thesecomponents first waveform signal 751 from thefinite state machine 716 is input into the flip-flop 720, which processes thefirst waveform signal 751 and thefirst clock signal 701 to output a first output signal 721 (a). Thesecond waveform signal 752 from thefinite state machine 716 is input into thelatch 730, which processes thesecond waveform signal 752 and thefirst clock signal 701 to output a second output signal 732 (b). By changing the second flip-flop (DFF2) ofFIG. 1 to a single, level-sensitive latch 730, the setup and hold requirements for both p (751) and q (752) are with respect to the rising edge of the clock. Thus, comparingFIG. 2 toFIG. 8 , by using thelatch 730 in thedeskewer 710 as opposed to a second flip-flop, the input q (752) is allowed to arrive a half cycle later. - The
multiplexer 740 then receives the outputs from the flip-flop 720 and latch 730 (i.e., the first and second output signals 721, 732, respectively) as well as thefirst clock signal 701. Themultiplexer 740 is adapted to gate thefirst output signal 721, thesecond output signal 732 and thefirst clock signal 701 in order to generate thesecond clock signal 702. Note also that theoutput multiplexer 740 has been re-drawn (compared toFIG. 1 ) as a single block, indicating that the deskewer function is not dependent upon the implementation of the multiplexer, provided that the multiplexer is “glitch-free.” However, referring toFIG. 4 , anexemplary multiplexer 740 can, as inFIG. 1 , comprise a plurality of logic circuits 441-445 such as 3 two-input AND gates 441-443 and a three-input ORgate 445 that have a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), where a comprises thefirst output signal 721, b comprises thesecond output signal 732 and c comprises thefirst clock signal 701. - As with the
clock generation circuit 300, theclock generation circuit 700 can be incorporated into various types of integrated circuit devices. For example, referring toFIG. 5 , theclock generation circuit 700 can be incorporated into anintegrated circuit device 500 with a level-sensitive scan design 560 that is clocked by thesecond clock signal 702. Specifically,FIG. 5 illustrates anintegrated circuit device 500 in whichclock generation circuit 700 is used in a typical level-sensitive scan design 560, such as an application-specific integrated circuit (ASIC). The source of CLOCK IN 701 may be a clock primary input, but is more typically the output of a phase-locked loop (PLL). At the right, a shift-register latch (SRL) pair is used to implement each rising-edge-triggered flip-flop in ASIC. A clock splitter at the leaf of the clock re-powering/fan-out tree splits the clock into two complementary phases and re-drives the clock to several SRLs. An ASIC with several tens of thousands of SRLs will have several thousands of splitters for splitting and re-powering the clock. For level-sensitive scan-based testing, the SRLs are connected into scan chains by connecting the output of each SRL to the I (scan in) pin of another. Test patterns are scanned through the SRLs by holding Test Clock C low while alternately pulsing Test Clock A and Test Clock B. When capturing the response of a test vector, Test Clocks A and B are typically held low while Test Clock C is pulsed. Assuming that CLOCK IN 701 is controllable during test, the clock generation logic (i.e., thefinite state machine 716,deskewer 710, and re-powering circuits) are statically tested, because the generated clock gates the propagation of Test Clock C. - Alternatively, referring to
FIG. 6 , theclock generation circuit 700 can further comprise anothermultiplexer 680 adapted to gate thesecond clock signal 702 and a testclock input signal 685 in order to generate athird clock signal 683. So configured the clock generation circuit can be used to clock an integrated circuit device with an edge-sensitivemultiplexer scan design 670. Specifically,FIG. 6 illustrates anintegrated circuit device 600 with a typical edge-sensitive mux-scan design 670. At the right, a mux-DFF is used to implement each rising-edge-triggered flip-flop in the design. For scan-based testing, the mux-DFFs are connected into scan chains by connecting the output of each mux-DFF to the scan in pin (SI) of another. Test patterns are scanned through the mux-DFFs by holding Test Scan Enable high while pulsingclock signal 683. When capturing the response of a test vector, Test Scan Enable is held low while pulsing the clock. Sinceclock signal 683 is not a primary input to the chip, atest clock 685 is muxed into the clock, typically at the root of the clock tree. Because theoutput 702 of thedeskewer 710 of theclock generation circuit 700 is not a direct function of itsclock input 701, thetest clock 685 must be multiplexed into the clock distribution after thedeskewer 710. Theadditional clock multiplexer 680 is controlled by a Test Mode signal 686 which is active for all scan-based tests of the design. Because thedeskewer output 702 is blocked by the test-clock multiplexer 680, test observation logic must be inserted if thedeskewer 710 is to be tested. A disadvantage of this configuration is that the test-clock multiplexer 680 may add latency to the clock distribution network. As a result, the uncertainty of the clock arrival time at the flip-flops in the edge-sensitiveMUX scan design 670 is increased. One solution would be to incorporate the test-clock multiplexer into the root-stage driver(s) of the clock re-powering and fan-out network. Another solution, discussed in greater detail below with regard toFIGS. 9 and 10 , is to incorporate the test-clock multiplexing function into thedeskewer circuit 710. - Referring to
FIGS. 9 and 10 , additional embodiments of the invention further improve upon theclock generation circuits clock generation circuits improved deskewer clock generation circuit 900 ofFIG. 9 is similar toclock generation circuit 300 ofFIG. 3 in that it comprises the same waveform generator. Theclock generation circuit 1000 ofFIG. 10 is similar toclock generation circuit 700 ofFIG. 7 in that it comprises the samefinite state machine 716. Both theclock generation circuits testable deskewer - As with the deskewers of
FIGS. 3 and 7 , thetestable deskewer flop latch multiplexer testable deskewer gate flop multiplexer gate first output signal flop test mode signal output gate first output signal test mode signal third output signal multiplexer third output signal second output signal first clock signal second clock signal test mode signal first output signal test mode signal second clock signal input gate flop 920, themultiplexer flop - Referring again to
FIGS. 9 and 10 , thetestable deskewer multiplexer finite state machine 1016, depending upon the embodiment) and the flip-flop Scan Enable pin OR gate latch 930, 1030 (as shown) or after the L output (not shown) for ensuring that the clock-on state (1) can propagate (from CLOCK IN 901, 1001 toCLOCK OUT 902, 1002) when required, such as when scanning downstream flip-flops; and (5) a TestClock Enable pin Clock Enable pin Scan Enable pin Test Mode pin 992, 1092). - More particularly, the
testable deskewer second multiplexer OR gate second multiplexer finite state machine 1016, depending upon the embodiment) and the flip-flop gate finite state machine 1016, depending upon the embodiment) and thelatch 930, 1030 (as shown inFIGS. 9 and 10 ). Alternatively, theOR gate latch multiplexer 940, 1040 (not shown). Thesecond multiplexer waveform signal 950 from the waveform generator 915 (or thefirst waveform signal 1051 of thefinite state machine 1016, depending upon the embodiment) and a test scan enablesignal signal FIG. 11 , theclock generation circuit integrated circuit device 1100 with an edge-sensitivemultiplexer scan design 1160 clocked without the required addition of another multiplexer for generating a third clock signal (as required when the deskewer is not testable). Note that the test-clock multiplexer (and its associated latency) has been removed from the clock path. Note also that the functional clock, CLOCK IN, can be used as the test clock, provided that CLOCK IN is controllable from a primary input. Thus, the edge-sensitivemultiplexer scan design 1160 can be clocked with thesecond clock signal 1102. - Therefore, disclosed above are embodiments of an integrated circuit device that comprises a clock generation circuit for generating a clock-out signal that is synchronized to a clock-in signal. When multiple such clock generation circuits are utilized to feed clock signals to different digital logic circuits within an integrated circuit structure, differences in delay time, referred to as skew, are minimized. Specifically, the clock generation circuit incorporates a waveform generator (or finite state machine) and a timing-improved deskewer. The waveform generator (or finite state machine) is clocked by the clock-in signal. The timing-improved deskewer incorporates a flip-flop, a level-sensitive latch, and a multiplexer. The flip-flop and latch are connected in parallel and each receives waveform signals from the waveform generator (or finite state machine) as well as the clock-in signal in order to generate output signals. The multiplexer gates the flip-flop and latch output signals with the clock-in signal in order to generate the clock-out signal. By using a latch as opposed to a second flip-flop, the improved deskewer allows the latch input q to arrive a half cycle later. Additional embodiments of the invention further improve upon this clock generation circuit by configuring the improved deskewer so that it is testable and can, thus, be readily incorporated into an edge-sensitive multiplexer scan design.
- The foregoing description of the specific embodiments will so fully reveal the general nature of the invention that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments of the invention have been described in terms of embodiments, those skilled in the art will recognize that the embodiments of the invention can be practiced with modification within the spirit and scope of the appended claims.
Claims (20)
1. An integrated circuit device comprising:
a waveform generator adapted to generate a waveform signal, wherein said waveform generator is clocked by a first clock signal; and
a deskewer circuit adapted to receive and gate said first clock signal and said waveform signal so as to generate a second clock signal such that said second clock signal is synchronously linked to said first clock signal, wherein said deskewer comprises:
a flip-flop adapted to receive said waveform signal and said first clock signal and to generate a first output signal;
a latch in parallel with said flip-flop and adapted to receive said waveform signal and said first clock signal and to generate a second output signal; and
a multiplexer adapted to gate said first output signal, said second output signal and said first clock signal in order to generate said second clock signal.
2. The integrated circuit device of claim 1 , wherein said latch comprises a level-sensitive latch.
3. The integrated circuit device of claim 1 , wherein said multiplexer comprises a plurality of logic circuits having a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), wherein a comprises said first output signal, b comprises said second output signal and c comprises said first clock signal.
4. The integrated circuit device of claim 1 , having a level-sensitive scan design clocked by said second clock signal.
5. The integrated circuit device of claim 1 , having an edge-sensitive multiplexer scan design and further comprising another multiplexer adapted to gate said second clock signal and a test clock input signal to generate a third clock signal to clock said edge-sensitive multiplexer scan design.
6. An integrated circuit device comprising:
a finite state machine adapted to generate a first waveform signal and a second waveform signal, wherein said finite state machine is clocked by a first clock signal; and
a deskewer circuit adapted to receive and gate said first waveform signal, said second waveform signal and said first clock signal so as to generate a second clock signal such that said second clock signal is synchronously linked to said first clock signal, wherein said deskewer comprises:
a flip-flop adapted to receive said first waveform signal and said first clock signal and to generate a first output signal;
a latch in parallel with said flip-flop and adapted to receive said second waveform signal and said first clock signal and to generate a second output signal; and
a multiplexer adapted to gate said first output signal, said second output signal and said first clock signal in order to generate said second clock signal.
7. The integrated circuit device of claim 6 , wherein said latch comprises a level-sensitive latch.
8. The integrated circuit device of claim 6 , wherein said multiplexer comprises a plurality of logic circuits having a Boolean expression of (a AND NOT c) OR (c AND b) OR (b AND a), wherein a comprises said first output signal, b comprises said second output signal and c comprises said first clock signal.
9. The integrated circuit device of claim 6 , having a level-sensitive scan design clocked by said second clock signal.
10. The integrated circuit device of claim 6 , having an edge-sensitive multiplexer scan design and further comprising another multiplexer adapted to gate said second clock signal and a test clock input signal to generate a third clock signal to clock said edge-sensitive multiplexer scan design.
11. An integrated circuit device comprising:
a waveform generator adapted to generate a waveform signal, wherein said waveform generator is clocked by a first clock signal; and
a deskewer circuit adapted to receive and gate said first clock signal and said waveform signal so as to generate a second clock signal such that said second clock signal is synchronously linked to said first clock signal, wherein said deskewer can be tested and comprises: a flip-flop adapted to receive said waveform signal and said first clock signal and to generate a first output signal;
a latch in parallel with said flip-flop and adapted to receive said waveform signal and said first clock signal and to generate a second output signal;
an AND gate adapted to receive said first output signal and a test mode signal from a test mode pin and to generate a third output signal; and
a multiplexer adapted to gate said third output signal, said second output signal, and said first clock signal in order to generate said second clock signal such that when said test mode signal and said first clock signal are both low said second clock signal is low.
12. The integrated circuit device of claim 11 , wherein said latch comprises a level-sensitive latch.
13. The integrated circuit device of claim 11 , further comprising a second multiplexer connected between said waveform generator and said flip-flop, wherein said second multiplexer is adapted to gate said waveform signal, a scan input signal and a test scan enable signal.
14. The integrated circuit device of claim 11 , further comprising an OR gate that is connected between one of said state machine and said latch and said latch and said first multiplexer and that is adapted to receive a test clock enable signal so as to override all other gating.
15. The integrated circuit device of claim 11 , having an edge-sensitive multiplexer scan design clocked by said second clock signal.
16. An integrated circuit device comprising:
a finite state machine adapted to generate a first waveform signal and a second waveform signal, wherein said finite state machine is clocked by a first clock signal; and
a deskewer circuit adapted to receive and gate said first waveform signal, said second waveform signal and said first clock signal so as to generate a second clock signal such that said second clock signal is synchronously linked to said first clock signal, wherein said deskewer comprises:
a flip-flop adapted to receive said first waveform signal and said first clock signal and to generate a first output signal;
a latch in parallel with said flip-flop and adapted to receive said second waveform signal and said first clock signal and to generate a second output signal;
an AND gate adapted to receive said first output signal and a test mode signal from a test mode pin and to generate a third output signal; and
a multiplexer adapted to gate said third output signal, said second output signal, and said first clock signal in order to generate said second clock signal such that when said test mode signal and said first clock signal are both low said second clock signal is low.
17. The integrated circuit device of claim 16 , wherein said latch comprises a level-sensitive latch.
18. The integrated circuit device of claim 16 , further comprising a second multiplexer connected between said finite state machine and said flip-flop, wherein said second multiplexer is adapted to gate said first waveform signal, a scan input signal and a test scan enable signal.
19. The integrated circuit device of claim 16 , further comprising an OR gate that is connected between one of said state machine and said latch and said latch and said first multiplexer and that is adapted to receive a test clock enable signal so as to override all other gating.
20. The integrated circuit device of claim 16 , having an edge-sensitive multiplexer scan design clocked by said second clock signal.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/276,408 US20070200597A1 (en) | 2006-02-28 | 2006-02-28 | Clock generator having improved deskewer |
US12/027,467 US7456674B2 (en) | 2006-02-28 | 2008-02-07 | Clock generator having improved deskewer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/276,408 US20070200597A1 (en) | 2006-02-28 | 2006-02-28 | Clock generator having improved deskewer |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/027,467 Division US7456674B2 (en) | 2006-02-28 | 2008-02-07 | Clock generator having improved deskewer |
Publications (1)
Publication Number | Publication Date |
---|---|
US20070200597A1 true US20070200597A1 (en) | 2007-08-30 |
Family
ID=38443391
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/276,408 Abandoned US20070200597A1 (en) | 2006-02-28 | 2006-02-28 | Clock generator having improved deskewer |
US12/027,467 Expired - Fee Related US7456674B2 (en) | 2006-02-28 | 2008-02-07 | Clock generator having improved deskewer |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/027,467 Expired - Fee Related US7456674B2 (en) | 2006-02-28 | 2008-02-07 | Clock generator having improved deskewer |
Country Status (1)
Country | Link |
---|---|
US (2) | US20070200597A1 (en) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070245191A1 (en) * | 2006-03-30 | 2007-10-18 | Ravikumar C P | At-speed transition fault testing with low speed scan enable |
US20080204081A1 (en) * | 2007-02-28 | 2008-08-28 | Samsung Electronics Co., Ltd. | Clock gated circuit |
US20100306607A1 (en) * | 2009-05-28 | 2010-12-02 | Renesas Electronics Corporation | Semiconductor integrated circuit and method of testing the same |
US20140002167A1 (en) * | 2012-06-27 | 2014-01-02 | International Business Machines Corporation | Differential clock signal generator |
US9503067B1 (en) * | 2015-06-22 | 2016-11-22 | Realtek Semiconductor Corporation | Time shifter and method thereof |
US20170118202A1 (en) * | 2015-10-22 | 2017-04-27 | Oracle International Corporation | End user initiated access server authenticity check |
WO2018132131A1 (en) * | 2017-01-15 | 2018-07-19 | Bao Liu | Optimization system and method for integrated circuits including multi-phase level-sensitive latches |
US10158489B2 (en) | 2015-10-23 | 2018-12-18 | Oracle International Corporation | Password-less authentication for access management |
US10225283B2 (en) | 2015-10-22 | 2019-03-05 | Oracle International Corporation | Protection against end user account locking denial of service (DOS) |
US10250594B2 (en) | 2015-03-27 | 2019-04-02 | Oracle International Corporation | Declarative techniques for transaction-specific authentication |
US10257205B2 (en) | 2015-10-22 | 2019-04-09 | Oracle International Corporation | Techniques for authentication level step-down |
TWI717402B (en) * | 2015-10-21 | 2021-02-01 | 南韓商三星電子股份有限公司 | Clock generation circuit and semiconductor integrated circuit device |
US20220149844A1 (en) * | 2020-11-06 | 2022-05-12 | Stmicroelectronics S.R.L. | Control circuit and corresponding method |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7636803B2 (en) * | 2006-09-28 | 2009-12-22 | Advanced Micro Devices, Inc. | Device and method for transferring data between devices |
TWI323562B (en) * | 2007-01-25 | 2010-04-11 | Realtek Semiconductor Corp | A delay stage selecting circuit and a related method thereof |
US7921318B2 (en) * | 2007-05-17 | 2011-04-05 | Globalfoundries Inc. | Techniques for integrated circuit clock management using pulse skipping |
US7737752B2 (en) * | 2007-05-17 | 2010-06-15 | Globalfoundries Inc | Techniques for integrated circuit clock management |
US8014485B2 (en) * | 2007-05-17 | 2011-09-06 | Advanced Micro Devices, Inc. | Techniques for integrated circuit clock management using multiple clock generators |
JP2010045483A (en) * | 2008-08-11 | 2010-02-25 | Nec Electronics Corp | Clock gating circuit |
KR101666590B1 (en) * | 2009-02-23 | 2016-10-14 | 삼성전자 주식회사 | Shift register having glitch free function in power saving operation |
US8575972B2 (en) * | 2009-03-23 | 2013-11-05 | Advanced Micro Devices, Inc. | Digital frequency synthesizer device and method thereof |
JP2011004196A (en) * | 2009-06-18 | 2011-01-06 | Toshiba Corp | Semiconductor integrated circuit |
US8671320B2 (en) * | 2011-06-21 | 2014-03-11 | Lsi Corporation | Integrated circuit comprising scan test circuitry with controllable number of capture pulses |
US9007106B2 (en) | 2011-06-30 | 2015-04-14 | Cisco Technology Inc. | Jitter suppression in type I delay-locked loops |
US9647495B2 (en) * | 2012-06-28 | 2017-05-09 | Landis+Gyr Technologies, Llc | Power load control with dynamic capability |
US9086457B2 (en) * | 2013-03-26 | 2015-07-21 | International Business Machines Corporation | Scan chain latch design that improves testability of integrated circuits |
KR102511077B1 (en) * | 2015-09-24 | 2023-03-17 | 삼성전자주식회사 | Non-linear spread spectrum profile generator using linarr combination |
KR20220062748A (en) | 2020-11-09 | 2022-05-17 | 삼성전자주식회사 | Semiconductor circuit |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5467464A (en) * | 1993-03-09 | 1995-11-14 | Apple Computer, Inc. | Adaptive clock skew and duty cycle compensation for a serial data bus |
US5517109A (en) * | 1992-11-03 | 1996-05-14 | Thomson Consumer Electronics, Inc. | Apparatus within an integrated circuit for automatically detecting a test mode of operation of the integrated circuit and selecting a test clock signal |
US5627795A (en) * | 1994-04-08 | 1997-05-06 | Kabushiki Kaisha Toshiba | Timing generating device |
US6060939A (en) * | 1998-10-21 | 2000-05-09 | International Business Machines Corporation | Digitally controlled differential delay line circuit and method of controlling same |
US6114881A (en) * | 1997-06-24 | 2000-09-05 | Hyundai Electronics Industries Co., Ltd. | Current mirror type sense amplifier |
US6300809B1 (en) * | 2000-07-14 | 2001-10-09 | International Business Machines Corporation | Double-edge-triggered flip-flop providing two data transitions per clock cycle |
US6362680B1 (en) * | 1999-10-28 | 2002-03-26 | Stmicroelectronics Limited | Output circuit |
US6496050B2 (en) * | 2000-06-21 | 2002-12-17 | Stmicroelectronics Limited | Selective modification of clock pulses |
US6507230B1 (en) * | 2000-06-16 | 2003-01-14 | International Business Machines Corporation | Clock generator having a deskewer |
US6651181B1 (en) * | 2000-03-29 | 2003-11-18 | Cypress Semiconductor Corp. | Clocking scheme for programmable logic device |
US6651231B2 (en) * | 2001-04-23 | 2003-11-18 | Mitsubishi Denki Kabushiki Kaisha | Clock synchronizing circuit and method of designing the same |
US6731142B1 (en) * | 2002-01-11 | 2004-05-04 | Altera Corporation | Circuit for providing clock signals with low skew |
US6754861B2 (en) * | 1998-08-21 | 2004-06-22 | Micron Technology, Inc. | Circuitry for and system and substrate with circuitry for aligning output signals in massively parallel testers and other electronic devices |
US6943605B2 (en) * | 2002-12-31 | 2005-09-13 | Intel Corporation | Scan cell designs for a double-edge-triggered flip-flop |
US7135899B1 (en) * | 2003-06-27 | 2006-11-14 | Cypress Semiconductor Corp. | System and method for reducing skew in complementary signals that can be used to synchronously clock a double data rate output |
US7242235B1 (en) * | 2005-02-25 | 2007-07-10 | Exar Corporation | Dual data rate flip-flop |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100266679B1 (en) * | 1998-04-16 | 2000-09-15 | 김영환 | Pulse generating circuit for dram |
GB9925593D0 (en) * | 1999-10-28 | 1999-12-29 | Sgs Thomson Microelectronics | Clock generator circuit |
US6456146B1 (en) | 2000-12-28 | 2002-09-24 | Intel Corp. | System and method for multiplexing clocking signals |
US7340635B2 (en) | 2003-02-28 | 2008-03-04 | Hewlett-Packard Development Company, L.P. | Register-based de-skew system and method for a source synchronous receiver |
US6861886B1 (en) * | 2003-05-21 | 2005-03-01 | National Semiconductor Corporation | Clock deskew protocol using a delay-locked loop |
US7240266B2 (en) * | 2005-02-18 | 2007-07-03 | International Business Machines Corporation | Clock control circuit for test that facilitates an at speed structural test |
-
2006
- 2006-02-28 US US11/276,408 patent/US20070200597A1/en not_active Abandoned
-
2008
- 2008-02-07 US US12/027,467 patent/US7456674B2/en not_active Expired - Fee Related
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5517109A (en) * | 1992-11-03 | 1996-05-14 | Thomson Consumer Electronics, Inc. | Apparatus within an integrated circuit for automatically detecting a test mode of operation of the integrated circuit and selecting a test clock signal |
US5467464A (en) * | 1993-03-09 | 1995-11-14 | Apple Computer, Inc. | Adaptive clock skew and duty cycle compensation for a serial data bus |
US5627795A (en) * | 1994-04-08 | 1997-05-06 | Kabushiki Kaisha Toshiba | Timing generating device |
US6114881A (en) * | 1997-06-24 | 2000-09-05 | Hyundai Electronics Industries Co., Ltd. | Current mirror type sense amplifier |
US6754861B2 (en) * | 1998-08-21 | 2004-06-22 | Micron Technology, Inc. | Circuitry for and system and substrate with circuitry for aligning output signals in massively parallel testers and other electronic devices |
US6060939A (en) * | 1998-10-21 | 2000-05-09 | International Business Machines Corporation | Digitally controlled differential delay line circuit and method of controlling same |
US6362680B1 (en) * | 1999-10-28 | 2002-03-26 | Stmicroelectronics Limited | Output circuit |
US6651181B1 (en) * | 2000-03-29 | 2003-11-18 | Cypress Semiconductor Corp. | Clocking scheme for programmable logic device |
US6507230B1 (en) * | 2000-06-16 | 2003-01-14 | International Business Machines Corporation | Clock generator having a deskewer |
US6496050B2 (en) * | 2000-06-21 | 2002-12-17 | Stmicroelectronics Limited | Selective modification of clock pulses |
US6300809B1 (en) * | 2000-07-14 | 2001-10-09 | International Business Machines Corporation | Double-edge-triggered flip-flop providing two data transitions per clock cycle |
US6651231B2 (en) * | 2001-04-23 | 2003-11-18 | Mitsubishi Denki Kabushiki Kaisha | Clock synchronizing circuit and method of designing the same |
US6731142B1 (en) * | 2002-01-11 | 2004-05-04 | Altera Corporation | Circuit for providing clock signals with low skew |
US6943605B2 (en) * | 2002-12-31 | 2005-09-13 | Intel Corporation | Scan cell designs for a double-edge-triggered flip-flop |
US7135899B1 (en) * | 2003-06-27 | 2006-11-14 | Cypress Semiconductor Corp. | System and method for reducing skew in complementary signals that can be used to synchronously clock a double data rate output |
US7242235B1 (en) * | 2005-02-25 | 2007-07-10 | Exar Corporation | Dual data rate flip-flop |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070245191A1 (en) * | 2006-03-30 | 2007-10-18 | Ravikumar C P | At-speed transition fault testing with low speed scan enable |
US7640475B2 (en) * | 2006-03-30 | 2009-12-29 | Texas Instruments Incorporated | At-speed transition fault testing with low speed scan enable |
US20080204081A1 (en) * | 2007-02-28 | 2008-08-28 | Samsung Electronics Co., Ltd. | Clock gated circuit |
US7595665B2 (en) * | 2007-02-28 | 2009-09-29 | Samsung Electronics Co., Ltd. | Clock gated circuit |
US20100306607A1 (en) * | 2009-05-28 | 2010-12-02 | Renesas Electronics Corporation | Semiconductor integrated circuit and method of testing the same |
US8055965B2 (en) * | 2009-05-28 | 2011-11-08 | Renesas Electronics Corporation | Semiconductor integrated circuit and method of testing the same |
US20140002167A1 (en) * | 2012-06-27 | 2014-01-02 | International Business Machines Corporation | Differential clock signal generator |
US8736340B2 (en) * | 2012-06-27 | 2014-05-27 | International Business Machines Corporation | Differential clock signal generator |
US10834075B2 (en) | 2015-03-27 | 2020-11-10 | Oracle International Corporation | Declarative techniques for transaction-specific authentication |
US10250594B2 (en) | 2015-03-27 | 2019-04-02 | Oracle International Corporation | Declarative techniques for transaction-specific authentication |
US9503067B1 (en) * | 2015-06-22 | 2016-11-22 | Realtek Semiconductor Corporation | Time shifter and method thereof |
TWI584592B (en) * | 2015-06-22 | 2017-05-21 | 瑞昱半導體股份有限公司 | Time shifter and method thereof |
TWI717402B (en) * | 2015-10-21 | 2021-02-01 | 南韓商三星電子股份有限公司 | Clock generation circuit and semiconductor integrated circuit device |
CN108351933A (en) * | 2015-10-22 | 2018-07-31 | 甲骨文国际公司 | The access server authenticity examination that end user starts |
US10164971B2 (en) * | 2015-10-22 | 2018-12-25 | Oracle International Corporation | End user initiated access server authenticity check |
US10225283B2 (en) | 2015-10-22 | 2019-03-05 | Oracle International Corporation | Protection against end user account locking denial of service (DOS) |
US10257205B2 (en) | 2015-10-22 | 2019-04-09 | Oracle International Corporation | Techniques for authentication level step-down |
US10666643B2 (en) | 2015-10-22 | 2020-05-26 | Oracle International Corporation | End user initiated access server authenticity check |
US20170118202A1 (en) * | 2015-10-22 | 2017-04-27 | Oracle International Corporation | End user initiated access server authenticity check |
US10158489B2 (en) | 2015-10-23 | 2018-12-18 | Oracle International Corporation | Password-less authentication for access management |
US10735196B2 (en) | 2015-10-23 | 2020-08-04 | Oracle International Corporation | Password-less authentication for access management |
WO2018132131A1 (en) * | 2017-01-15 | 2018-07-19 | Bao Liu | Optimization system and method for integrated circuits including multi-phase level-sensitive latches |
US20220149844A1 (en) * | 2020-11-06 | 2022-05-12 | Stmicroelectronics S.R.L. | Control circuit and corresponding method |
US11626880B2 (en) * | 2020-11-06 | 2023-04-11 | Stmicroelectronics S.R.L. | Control circuit and corresponding method |
Also Published As
Publication number | Publication date |
---|---|
US7456674B2 (en) | 2008-11-25 |
US20080122515A1 (en) | 2008-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7456674B2 (en) | Clock generator having improved deskewer | |
US9128154B2 (en) | Apparatus for at-speed testing, in inter-domain mode, of a multi-clock-domain digital integrated circuit according to BIST or SCAN techniques | |
US8775857B2 (en) | Sequential on-chip clock controller with dynamic bypass for multi-clock domain testing | |
US7840864B2 (en) | Functional frequency testing of integrated circuits | |
US7038494B2 (en) | Scan chain element and associated method | |
KR100870037B1 (en) | Easy to test semiconductor device, test method of semiconductor device, test clock generation method and device for semiconductor device test | |
US8065549B2 (en) | Scan-based integrated circuit having clock frequency divider | |
US20060064616A1 (en) | Method and apparatus for at-speed testing of digital circuits | |
US20070245180A1 (en) | Circuitry and method for an at-speed scan test | |
EP1982205A2 (en) | Ic testing methods and apparatus | |
US10520547B2 (en) | Transition scan coverage for cross clock domain logic | |
EP1421397B1 (en) | Delay fault test circuitry and related method | |
US5748645A (en) | Clock scan design from sizzle global clock and method therefor | |
US20050276321A1 (en) | Circuit for PLL-based at-speed scan testing | |
US10205454B2 (en) | Glitch free asynchronous clock multiplexer | |
US9264023B2 (en) | Scannable flop with a single storage element | |
US20070124635A1 (en) | Integration circuit and test method of the same | |
EP1776596B1 (en) | Testing of a circuit that has an asynchronous timing circuit | |
US20050015689A1 (en) | Electronic component and method for measuring its qualification | |
US9600018B1 (en) | Clock stoppage in integrated circuits with multiple asynchronous clock domains | |
Hasib et al. | Exploiting built-in delay lines for applying launch-on-capture at-speed testing on self-timed circuits | |
US8090929B2 (en) | Generating clock signals for coupled ASIC chips in processor interface with X and Y logic operable in functional and scanning modes | |
US6748563B1 (en) | Method and apparatus for testing path delays in a high-speed boundary scan implementation | |
TWI289678B (en) | Method of testing synchronous clock chip and chip capable of synchronously testing clock | |
Cho et al. | A scan cell architecture for inter-clock at-speed delay testing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:OAKLAND, STEVEN F.;REEL/FRAME:017225/0354 Effective date: 20060224 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |