US20150349764A1 - Flip-Flop Having Integrated Selectable Hold Delay - Google Patents
Flip-Flop Having Integrated Selectable Hold Delay Download PDFInfo
- Publication number
- US20150349764A1 US20150349764A1 US14/291,936 US201414291936A US2015349764A1 US 20150349764 A1 US20150349764 A1 US 20150349764A1 US 201414291936 A US201414291936 A US 201414291936A US 2015349764 A1 US2015349764 A1 US 2015349764A1
- Authority
- US
- United States
- Prior art keywords
- delay
- flop
- flip
- circuit
- selectable
- 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
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/13—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
- H03K5/14—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of delay lines
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/02—Generators characterised by the type of circuit or by the means used for producing pulses
- H03K3/027—Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
- H03K3/037—Bistable circuits
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10T—TECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
- Y10T29/00—Metal working
- Y10T29/49—Method of mechanical manufacture
- Y10T29/49002—Electrical device making
- Y10T29/49005—Acoustic transducer
Definitions
- An integrated circuit generally includes a number of different circuit elements and components that are selected and placed in the integrated circuit based on the functionality desired.
- a flip-flop is one type of circuit element that is used in many different integrated circuit applications to receive a value, store the value for a period of time, and then transition state to another value.
- a customized flip-flop instance typically includes one or more delay elements configured to delay the signal either before or after traversing the flip-flop. The delay can be implemented in a number of different ways. One way to implement the delay is to incorporate one or more signal buffers along with the flip-flop. Ordinarily, a flip-flop and the desired number of buffers are selected from a library and implemented in the circuit design when developing the integrated circuit. Unfortunately, implementing different delays typically requires implementing different configurations of flip-flops and buffers having different circuit layout details and different external connections, which leads to difficulties with circuit placement and signal routing.
- a circuit comprises a flip-flop and a delay circuit integrated with the flip-flop, the delay circuit comprising at least one delay element, the flip-flop and delay circuit having a predefined architecture such that a delay provided by the delay circuit may have a selectable value while the flip-flop remains within the predefined architecture.
- FIG. 1A is a schematic view illustrating an example of a conventional flip-flop.
- FIG. 1B is a basic timing diagram of the flip-flop of FIG. 1A .
- FIG. 2A is a schematic diagram illustrating an exemplary embodiment of a flip-flop having an integrated selectable hold delay.
- FIG. 2B is a basic timing diagram of the flip-flop of FIG. 2A .
- FIG. 3A is a schematic diagram illustrating another exemplary embodiment of a flip-flop having an integrated selectable hold delay.
- FIG. 3B is a basic timing diagram of the flip-flop of FIG. 3A .
- FIG. 4A is a schematic diagram illustrating another exemplary embodiment of a flip-flop having an integrated selectable hold delay.
- FIG. 4B is a basic timing diagram of the flip-flop of FIG. 4A .
- FIG. 5 is a schematic diagram illustrating a latch circuit having an exemplary embodiment of a flip-flop having an integrated selectable hold delay.
- FIG. 6 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay of FIG. 2A .
- FIG. 7 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay of FIG. 3A .
- FIG. 8 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay of FIG. 4A .
- FIG. 9 is a block diagram showing the flip-flop having an integrated selectable hold delay of FIG. 2A placed in an integrated circuit.
- FIG. 10 is a block diagram showing the flip-flop having an integrated selectable hold delay of FIG. 3A placed in the integrated circuit of FIG. 9 .
- FIG. 11 is a flow chart describing an exemplary method for using a flip-flop having an integrated selectable hold delay.
- the flip-flop having an integrated selectable hold delay can be implemented in any integrated circuit where it is desirable to have a flip-flop with a variable and selectable hold delay and in which it is desirable to maintain the same footprint from flip-flop to flip-flop, regardless of the hold delay.
- floorplan and “footprint” refer to a circuit layout in which the flip-flop is to be implemented.
- integrated selectable hold delay refers to a configurable delay circuit that can be implemented inside of a flip-flop to provide a range of delay values to a signal propagating through the flip-flop.
- FIG. 1A is a schematic view illustrating an example of a conventional flip-flop.
- the flop-flop 102 comprises a data “D” input 106 , and enable “EN” input 107 , and a “Q” output 108 .
- the “Q bar” output is not shown.
- FIG. 1B is a basic timing diagram of the flip-flop of FIG. 1A .
- the EN signal is shown on trace 122
- the D input is shown as trace 124
- the Q output is shown as trace 126 .
- the D input is provided through the flip-flop 102 causing the Q output to transition state from logic low to logic high.
- the flip-flop 102 may also be configured to transition state on the falling edge of the EN signal 122 .
- the D input signal should remain stable around the rising edge of the EN signal.
- the minimum time the D input should remain stable before the rising edge of the EN signal is known as the “setup time,” while the minimum time the D input should remain stable after the rising edge of the EN signal is known as the “hold time”.
- a typical hold time is depicted by the hold delay “d” in FIG. 1B . If the hold delay “d” is not managed correctly, it is possible that a wrong state may appear at the “Q” output at the rising edge of the “EN” signal. This condition is referred to as a “hold error” or “hold violation”, which is what is sought to be mitigated to avoid timing errors.
- FIG. 2A is a schematic diagram 200 illustrating an exemplary embodiment of a flip-flop having an integrated selectable hold delay.
- the flop-flop 202 comprises a data “D” input 206 , and enable “EN” input 207 , and a “Q” output 208 .
- the “Q bar” output is not shown.
- the flip-flop 202 also comprises a variable delay element 250 .
- the variable delay element 250 is schematically illustrated as having a delay element 255 a and a delay element 255 n .
- the variable delay element 250 may comprise more than two delay elements 255 .
- the D input on connection 206 is illustrated as bypassing the delay elements 255 and being coupled directly to the Q output on connection 208 .
- Illustrative exemplary embodiments of the flip-flop 202 having the variable delay element 250 can comprise identical external connections, regardless of the delay provided by the variable delay element 250 .
- FIG. 2B is a basic timing diagram of the flip-flop of FIG. 2A .
- the EN signal is shown on trace 222
- the D input is shown as trace 224
- the Q output is shown as trace 226 .
- the D input is provided through the flip-flop 202 causing the Q output to transition state from logic low to logic high.
- the flip-flop 202 may also be configured to transition state on the falling edge of the EN signal 222 .
- FIG. 3A is a schematic diagram 300 illustrating an exemplary embodiment of a flip-flop having an integrated selectable hold delay.
- the flop-flop 302 comprises a data “D” input 306 , an enable “EN” input 307 , and a “Q” output 308 .
- the “Q bar” output is not shown.
- the flip-flop 302 also comprises a variable delay element 350 .
- the variable delay element 350 is an alternative embodiment of the variable delay element 250 of FIG. 2A , and in this embodiment is schematically illustrated as having a delay element 355 a and a delay element 355 n .
- the variable delay element 350 may comprise more than two delay elements 355 .
- the D input on connection 306 is illustrated as being coupled to the delay element 355 a and then to the Q output on connection 308 so that the D input signal on connection 306 experiences one delay period, that is, the delay provided only by the delay element 355 a .
- variable delay element 350 and the flip-flop 302 has the same area, circuit layout and space requirements as the flip-flop 202 in FIG. 2A . Accordingly, the illustrative exemplary embodiment of the flip-flop 302 having the variable delay element 350 can comprise identical external connection as the flip-flop 202 having the variable delay element 250 .
- FIG. 3B is a basic timing diagram of the flip-flop of FIG. 3A .
- the EN signal is shown on trace 322
- the D input is shown as trace 324
- the Q output is shown as trace 326 .
- the D input is provided through the flip-flop 302 causing the Q output to transition state from logic low to logic high.
- the flip-flop 302 may also be configured to transition state on the falling edge of the EN signal 322 .
- FIG. 4A is a schematic diagram 400 illustrating an exemplary embodiment of a flip-flop having an integrated selectable hold delay.
- the flop-flop 402 comprises a data “D” input 406 , an enable “EN” input 407 , and a “Q” output 408 .
- the “Q bar” output is not shown.
- the flip-flop 402 also comprises a variable delay element 450 .
- the variable delay element 450 is an alternative embodiment of the variable delay element 250 of FIG. 2A , and in this embodiment is schematically illustrated as having a delay element 455 a and a delay element 455 n .
- the variable delay element 450 may comprise more than two delay elements 455 .
- the D input on connection 406 is illustrated as being coupled to the delay element 455 a and to the delay element 455 n , and then to the Q output on connection 408 so that the D input signal on connection 406 experiences two delay periods, that is, the delay provided by both the delay element 455 a and the delay element 455 n .
- variable delay element 450 and the flip-flop 402 has the same area, circuit layout and space requirements as the flip-flop 202 in FIG. 2A and the flip-flop 302 in FIG. 3A .
- the illustrative exemplary embodiment of the flip-flop 402 having the variable delay element 450 can comprise identical external connection as the flip-flop 202 having the variable delay element 250 and the flip-flop 302 having the variable delay element 350 .
- FIG. 4B is a basic timing diagram of the flip-flop of FIG. 4A .
- the EN signal is shown on trace 422
- the D input is shown as trace 424
- the Q output is shown as trace 426 .
- the D input is provided through the flip-flop 402 causing the Q output to transition state from logic low to logic high.
- the flip-flop 402 may also be configured to transition state on the falling edge of the EN signal 422 .
- FIG. 5 is a schematic diagram illustrating a latch circuit 500 having an exemplary embodiment of a flip-flop having an integrated selectable hold delay.
- the latch circuit 500 comprises a flip-flop 502 having an integrated variable delay element 550 .
- the flip-flop 502 comprises a data “D” input 506 , an enable “EN” input 507 , a “Q” output 508 and a “Q bar” output 509 .
- the “Q bar” output 509 comprises the opposite polarity of the “Q” output 508 so that as the Q output transitions from logic low to logic high, the Q bar output transitions from logic high to logic low.
- the flip-flop 502 is constructed using NAND gates 562 , 564 , 566 and 568 .
- the NAND gate 569 operates as an inverter to reset the latch 500 to drive the Q output 508 to logic low if the D input 506 is logic high and the EN signal 507 is logic high.
- FIG. 6 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay of FIG. 2A .
- the flip-flop 602 comprises a variable delay element 650 and circuitry 660 .
- the circuitry 660 may comprise the logic elements that comprise the flip-flop 602 and are omitted for simplicity of illustration.
- the flip-flop 602 comprises a D input 606 , which is provided to an external connection 632 and a Q output 608 that is provided to an external connection 634 .
- the external connection 632 and the external connection 634 are two illustrative examples of the external connections on the flip-flop 602 that couple the flip-flop 602 to the circuit in which it is being implemented. In this example, only two external connections are shown; however, external connections for the EN signal and the Q bar signal, along with other external connections, may also be provided.
- variable delay element 650 comprises a delay element 655 a (D 1 ) and a delay element 655 n (D 2 ).
- the delay element 655 a comprises electrically conductive traces 642 , and metal bumper elements 682 and 684 .
- the metal bumper elements 682 and 684 are electrically non-conductive and are sometimes referred to a metal blocking elements.
- the flip-flop 602 also comprises electrically conductive interconnections 672 and 674 .
- the delay element 655 n comprises electrically conductive traces 644 , and metal bumper elements 686 and 688 .
- the flip-flop 602 also comprises electrically conductive interconnections 676 and 678 .
- the electrically conductive interconnections 672 , 674 , 676 and 678 are in place so that the D input signal from connection 606 is coupled to the electrically conductive traces 646 and 648 so that the D input signal bypasses the delay element 655 a and the delay element 655 n .
- the metal bumper elements 682 , 684 , 686 and 688 ensure that there is no electrical connection from the external connection 632 to the delay element 655 a or the delay element 655 n.
- FIG. 7 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay of FIG. 3A .
- the flip-flop 702 comprises a variable delay element 750 and circuitry 760 .
- the circuitry 760 may comprise the logic elements that comprise the flip-flop 702 and are omitted for simplicity of illustration.
- the flip-flop 702 comprises a D input 706 , which is provided to an external connection 732 and a Q output 708 that is provided to an external connection 734 .
- the external connection 732 and the external connection 734 are two illustrative examples of the external connections on the flip-flop 702 that couple the flip-flop 702 to the circuit in which it is being implemented. In this example, only two external connections are shown; however, external connections for the EN signal and the Q bar signal, along with other external connections, would be provided.
- the locations of the external connections 732 and 734 on the flip-flop 702 are in the same locations relative to the external connections 632 and 634 on the flip-flop 602 regardless of the delay period provided by the variable delay element 750 .
- variable delay element 750 comprises a delay element 755 a (D 1 ) and a delay element 755 n (D 2 ).
- the delay element 755 a comprises electrically conductive traces 742 and electrically conductive interconnections 772 and 774 .
- the flip-flop 702 also comprises metal bumper elements 782 and 784 , which are electrically non-conductive.
- the delay element 755 n comprises electrically conductive traces 744 and metal bumper elements 786 and 788 .
- the flip-flop 702 also comprises electrically conductive interconnections 776 and 778 .
- the electrically conductive interconnections 772 , 774 , 776 and 778 are in place so that the D input signal from connection 706 travels through the delay element 755 a and is then coupled to the electrically conductive traces 745 and 748 so that the D input signal bypasses only the delay element 755 n .
- the metal bumper elements 786 and 788 ensure that there is no electrical connection from the delay element 755 a to the delay element 755 n.
- FIG. 8 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay of FIG. 4A .
- the flip-flop 802 comprises a variable delay element 850 and circuitry 860 .
- the circuitry 860 may comprise the logic elements that comprise the flip-flop 802 and are omitted for simplicity of illustration.
- the flip-flop 802 comprises a D input 806 , which is provided to an external connection 832 and a Q output 808 that is provided to an external connection 834 .
- the external connection 832 and the external connection 834 are two illustrative examples of the external connections on the flip-flop 802 that couple the flip-flop 802 to the circuit in which it is being implemented. In this example, only two external connections are shown; however, external connections for the EN signal and the Q bar signal, along with other external connections, would be provided.
- the locations of the external connections 832 and 834 on the flip-flop 802 are in the same locations relative to the external connections 632 and 634 on the flip-flop 602 , and in the same locations relative to the external connections 732 and 734 on the flip-flop 702 regardless of the delay period provided by the variable delay element 850 .
- variable delay element 850 comprises a delay element 855 a (D 1 ).
- the delay element 855 a comprises electrically conductive traces 842 and electrically conductive interconnections 872 and 874 .
- the flip-flop 802 also comprises metal bumper elements 882 and 884 .
- the metal bumper elements 882 and 884 are electrically non-conductive.
- the delay element 855 n comprises electrically conductive traces 844 and electrically conductive interconnections 876 and 878 .
- the flip-flop 802 also comprises metal bumper elements 886 and 888 , which are electrically non-conductive.
- the electrically conductive interconnections 872 , 874 , 876 and 878 are in place so that the D input signal from connection 806 travels through the delay element 855 a and the delay element 855 n .
- the metal bumper elements 882 , 884 , 886 and 888 ensure that there is no electrical connection from the external connection 832 to the conductive traces 846 and 848 .
- variable delay elements 650 , 750 and 850 are designed to provide a range of different delay values, while the artwork of each of the flip-flop cells have the same geometric dimensions, port locations and metal blockages so that they are footprint compatible with each other and easily interchanged. In actual design use, it allows an existing flip-flop having an integrated selectable hold delay to be exchanged with another flip-flop having a different delay by exchanging the flip-flop in a circuit without having to rework the existing circuit placement and route connections, and without causing design-rule violations.
- FIG. 9 is a block diagram showing the flip-flop having an integrated selectable hold delay of FIG. 2A placed in an integrated circuit.
- the integrated circuit 900 comprises circuitry 910 and circuitry 920 .
- the circuitry 910 and the circuitry 920 can be any circuitry located within the integrated circuit 900 .
- the flip-flop 202 of FIG. 2A is placed in the integrated circuit 900 between the circuitry 910 and the circuitry 920 .
- the circuitry 910 is coupled to the flip-flop 202 at a node, or point 905 and the circuitry 920 is coupled to the flip-flop 202 at a node, or point 915 .
- the flip-flop 202 has a variable delay element 250 having a first selectable delay.
- FIG. 10 is a block diagram showing the flip-flop having an integrated selectable hold delay of FIG. 3A placed in the integrated circuit of FIG. 9 .
- the flip-flop 302 has a variable delay element 350 , which has a second selectable delay that is different than the first selectable delay of the variable delay element 250 in FIG. 9 .
- the circuitry 910 is coupled to the flip-flop 302 at the node, or point 905 and the circuitry 920 is coupled to the flip-flop 302 at a node, or point 915 . In this manner flip-flops having different selectable delays can be incorporated into an integrated circuit 900 using identical connection points, which, in this example, are the nodes 905 and 915 .
- FIG. 11 is a flow chart describing an exemplary method for using a flip-flop having an integrated selectable hold delay.
- a first flip-flop having a first selectable hold delay is placed in a circuit.
- a performance test is performed on the circuit to determine timing. If the circuit passes the performance test, the process ends.
- the first flip-flop having the first selectable hold delay is replaced with another flip-flop having a second selectable hold delay.
- the performance test is performed on the circuit to determine timing. If the circuit passes the performance test, the process ends. If the circuit still does not pass the performance test, the process returns to block 1106 where the second flip-flop having the second selectable delay is replaced with another flip-flop having another selectable delay. The process repeats until the performance test is passed.
Landscapes
- Physics & Mathematics (AREA)
- Nonlinear Science (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
Description
- An integrated circuit generally includes a number of different circuit elements and components that are selected and placed in the integrated circuit based on the functionality desired. A flip-flop is one type of circuit element that is used in many different integrated circuit applications to receive a value, store the value for a period of time, and then transition state to another value. A customized flip-flop instance typically includes one or more delay elements configured to delay the signal either before or after traversing the flip-flop. The delay can be implemented in a number of different ways. One way to implement the delay is to incorporate one or more signal buffers along with the flip-flop. Ordinarily, a flip-flop and the desired number of buffers are selected from a library and implemented in the circuit design when developing the integrated circuit. Unfortunately, implementing different delays typically requires implementing different configurations of flip-flops and buffers having different circuit layout details and different external connections, which leads to difficulties with circuit placement and signal routing.
- Therefore, it would be desirable to have a way of implementing a flip-flop with a selectable delay without requiring circuit placement and routing changes for the different delays.
- In an embodiment, a circuit comprises a flip-flop and a delay circuit integrated with the flip-flop, the delay circuit comprising at least one delay element, the flip-flop and delay circuit having a predefined architecture such that a delay provided by the delay circuit may have a selectable value while the flip-flop remains within the predefined architecture.
- Other embodiments are also provided. Other systems, methods, features, and advantages of the invention will be or will become apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional systems, methods, features, and advantages be included within this description, be within the scope of the invention, and be protected by the accompanying claims.
- The invention can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present invention. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.
-
FIG. 1A is a schematic view illustrating an example of a conventional flip-flop. -
FIG. 1B is a basic timing diagram of the flip-flop ofFIG. 1A . -
FIG. 2A is a schematic diagram illustrating an exemplary embodiment of a flip-flop having an integrated selectable hold delay. -
FIG. 2B is a basic timing diagram of the flip-flop ofFIG. 2A . -
FIG. 3A is a schematic diagram illustrating another exemplary embodiment of a flip-flop having an integrated selectable hold delay. -
FIG. 3B is a basic timing diagram of the flip-flop ofFIG. 3A . -
FIG. 4A is a schematic diagram illustrating another exemplary embodiment of a flip-flop having an integrated selectable hold delay. -
FIG. 4B is a basic timing diagram of the flip-flop ofFIG. 4A . -
FIG. 5 is a schematic diagram illustrating a latch circuit having an exemplary embodiment of a flip-flop having an integrated selectable hold delay. -
FIG. 6 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay ofFIG. 2A . -
FIG. 7 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay ofFIG. 3A . -
FIG. 8 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay ofFIG. 4A . -
FIG. 9 is a block diagram showing the flip-flop having an integrated selectable hold delay ofFIG. 2A placed in an integrated circuit. -
FIG. 10 is a block diagram showing the flip-flop having an integrated selectable hold delay ofFIG. 3A placed in the integrated circuit ofFIG. 9 . -
FIG. 11 is a flow chart describing an exemplary method for using a flip-flop having an integrated selectable hold delay. - In an exemplary embodiment, the flip-flop having an integrated selectable hold delay can be implemented in any integrated circuit where it is desirable to have a flip-flop with a variable and selectable hold delay and in which it is desirable to maintain the same footprint from flip-flop to flip-flop, regardless of the hold delay.
- As used herein, the terms “floorplan” and “footprint” refer to a circuit layout in which the flip-flop is to be implemented.
- As used herein, the term “integrated selectable hold delay” refers to a configurable delay circuit that can be implemented inside of a flip-flop to provide a range of delay values to a signal propagating through the flip-flop.
-
FIG. 1A is a schematic view illustrating an example of a conventional flip-flop. The flop-flop 102 comprises a data “D”input 106, and enable “EN”input 107, and a “Q”output 108. There may also be a “Q bar” output, which has the opposite polarity of the “Q” output. The “Q bar” output is not shown. -
FIG. 1B is a basic timing diagram of the flip-flop ofFIG. 1A . The EN signal is shown ontrace 122, the D input is shown astrace 124 and the Q output is shown astrace 126. In this example, at the rising edge of the EN signal, the D input is provided through the flip-flop 102 causing the Q output to transition state from logic low to logic high. The flip-flop 102 may also be configured to transition state on the falling edge of theEN signal 122. - To ensure that the correct data is captured by the flip-flop, the D input signal should remain stable around the rising edge of the EN signal. The minimum time the D input should remain stable before the rising edge of the EN signal is known as the “setup time,” while the minimum time the D input should remain stable after the rising edge of the EN signal is known as the “hold time”. A typical hold time is depicted by the hold delay “d” in
FIG. 1B . If the hold delay “d” is not managed correctly, it is possible that a wrong state may appear at the “Q” output at the rising edge of the “EN” signal. This condition is referred to as a “hold error” or “hold violation”, which is what is sought to be mitigated to avoid timing errors. -
FIG. 2A is a schematic diagram 200 illustrating an exemplary embodiment of a flip-flop having an integrated selectable hold delay. The flop-flop 202 comprises a data “D”input 206, and enable “EN”input 207, and a “Q”output 208. There may also be a “Q bar” output, which has the opposite polarity of the “Q” output. The “Q bar” output is not shown. - The flip-
flop 202 also comprises avariable delay element 250. Thevariable delay element 250 is schematically illustrated as having adelay element 255 a and adelay element 255 n. Thevariable delay element 250 may comprise more than two delay elements 255. InFIG. 2A , the D input onconnection 206 is illustrated as bypassing the delay elements 255 and being coupled directly to the Q output onconnection 208. Illustrative exemplary embodiments of the flip-flop 202 having thevariable delay element 250 can comprise identical external connections, regardless of the delay provided by thevariable delay element 250. -
FIG. 2B is a basic timing diagram of the flip-flop ofFIG. 2A . The EN signal is shown ontrace 222, the D input is shown astrace 224 and the Q output is shown astrace 226. In this example, at the rising edge of the EN signal, the D input is provided through the flip-flop 202 causing the Q output to transition state from logic low to logic high. The flip-flop 202 may also be configured to transition state on the falling edge of theEN signal 222. There is a slight hold delay “d” from the time the EN signal transitions to the time the D signal transitions. In the embodiment shown inFIGS. 2A and 2B , there is no additional delay applied to the D input onconnection 206 by thevariable delay element 250. -
FIG. 3A is a schematic diagram 300 illustrating an exemplary embodiment of a flip-flop having an integrated selectable hold delay. The flop-flop 302 comprises a data “D”input 306, an enable “EN”input 307, and a “Q”output 308. There may also be a “Q bar” output, which has the opposite polarity of the “Q” output. The “Q bar” output is not shown. - The flip-
flop 302 also comprises avariable delay element 350. Thevariable delay element 350 is an alternative embodiment of thevariable delay element 250 ofFIG. 2A , and in this embodiment is schematically illustrated as having adelay element 355 a and adelay element 355 n. Thevariable delay element 350 may comprise more than two delay elements 355. InFIG. 3A , the D input onconnection 306 is illustrated as being coupled to thedelay element 355 a and then to the Q output onconnection 308 so that the D input signal onconnection 306 experiences one delay period, that is, the delay provided only by thedelay element 355 a. Although the embodiment shown inFIG. 3A applies a delay period to the D input that is larger than a delay period applied to the D input signal by the flip-flop 202 inFIG. 2A , thevariable delay element 350 and the flip-flop 302 has the same area, circuit layout and space requirements as the flip-flop 202 inFIG. 2A . Accordingly, the illustrative exemplary embodiment of the flip-flop 302 having thevariable delay element 350 can comprise identical external connection as the flip-flop 202 having thevariable delay element 250. -
FIG. 3B is a basic timing diagram of the flip-flop ofFIG. 3A . The EN signal is shown ontrace 322, the D input is shown astrace 324 and the Q output is shown astrace 326. In this example, at the rising edge of the EN signal, the D input is provided through the flip-flop 302 causing the Q output to transition state from logic low to logic high. The flip-flop 302 may also be configured to transition state on the falling edge of theEN signal 322. As shown by theD trace 324, there is an additional delay “n” provided by thedelay element 355 a to the D input signal from the time the EN signal transitions to the time the D signal transitions. -
FIG. 4A is a schematic diagram 400 illustrating an exemplary embodiment of a flip-flop having an integrated selectable hold delay. The flop-flop 402 comprises a data “D”input 406, an enable “EN”input 407, and a “Q”output 408. There may also be a “Q bar” output, which has the opposite polarity of the “Q” output. The “Q bar” output is not shown. - The flip-
flop 402 also comprises avariable delay element 450. Thevariable delay element 450 is an alternative embodiment of thevariable delay element 250 ofFIG. 2A , and in this embodiment is schematically illustrated as having adelay element 455 a and adelay element 455 n. Thevariable delay element 450 may comprise more than two delay elements 455. InFIG. 4A , the D input onconnection 406 is illustrated as being coupled to thedelay element 455 a and to thedelay element 455 n, and then to the Q output onconnection 408 so that the D input signal onconnection 406 experiences two delay periods, that is, the delay provided by both thedelay element 455 a and thedelay element 455 n. Although the embodiment shown inFIG. 4A applies two delay periods to the D input that is larger than a delay applied to the D input signal by the flip-flop 202 or the flip-flop 302, inFIGS. 2A and 3A , respectively, thevariable delay element 450 and the flip-flop 402 has the same area, circuit layout and space requirements as the flip-flop 202 inFIG. 2A and the flip-flop 302 inFIG. 3A . Accordingly, the illustrative exemplary embodiment of the flip-flop 402 having thevariable delay element 450 can comprise identical external connection as the flip-flop 202 having thevariable delay element 250 and the flip-flop 302 having thevariable delay element 350. -
FIG. 4B is a basic timing diagram of the flip-flop ofFIG. 4A . The EN signal is shown ontrace 422, the D input is shown astrace 424 and the Q output is shown astrace 426. In this example, at the rising edge of the EN signal, the D input is provided through the flip-flop 402 causing the Q output to transition state from logic low to logic high. The flip-flop 402 may also be configured to transition state on the falling edge of theEN signal 422. As shown by theD trace 424, there is an additional delay “2n” provided by thedelay element 455 a and thedelay element 455 n to the D input signal from the time the EN signal transitions to the time the D signal transitions. -
FIG. 5 is a schematic diagram illustrating alatch circuit 500 having an exemplary embodiment of a flip-flop having an integrated selectable hold delay. Thelatch circuit 500 comprises a flip-flop 502 having an integratedvariable delay element 550. The flip-flop 502 comprises a data “D”input 506, an enable “EN”input 507, a “Q”output 508 and a “Q bar”output 509. The “Q bar”output 509 comprises the opposite polarity of the “Q”output 508 so that as the Q output transitions from logic low to logic high, the Q bar output transitions from logic high to logic low. - The flip-
flop 502 is constructed usingNAND gates NAND gate 569 operates as an inverter to reset thelatch 500 to drive theQ output 508 to logic low if theD input 506 is logic high and the EN signal 507 is logic high. -
FIG. 6 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay ofFIG. 2A . The flip-flop 602 comprises avariable delay element 650 andcircuitry 660. Thecircuitry 660 may comprise the logic elements that comprise the flip-flop 602 and are omitted for simplicity of illustration. - The flip-
flop 602 comprises aD input 606, which is provided to anexternal connection 632 and aQ output 608 that is provided to anexternal connection 634. Theexternal connection 632 and theexternal connection 634 are two illustrative examples of the external connections on the flip-flop 602 that couple the flip-flop 602 to the circuit in which it is being implemented. In this example, only two external connections are shown; however, external connections for the EN signal and the Q bar signal, along with other external connections, may also be provided. - In an exemplary embodiment, the
variable delay element 650 comprises adelay element 655 a (D1) and adelay element 655 n (D2). Thedelay element 655 a comprises electricallyconductive traces 642, andmetal bumper elements 682 and 684. Themetal bumper elements 682 and 684 are electrically non-conductive and are sometimes referred to a metal blocking elements. The flip-flop 602 also comprises electricallyconductive interconnections delay element 655 n comprises electricallyconductive traces 644, andmetal bumper elements flop 602 also comprises electricallyconductive interconnections - In the example shown in
FIG. 6 , the electricallyconductive interconnections connection 606 is coupled to the electricallyconductive traces delay element 655 a and thedelay element 655 n. Themetal bumper elements external connection 632 to thedelay element 655 a or thedelay element 655 n. -
FIG. 7 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay ofFIG. 3A . The flip-flop 702 comprises avariable delay element 750 andcircuitry 760. Thecircuitry 760 may comprise the logic elements that comprise the flip-flop 702 and are omitted for simplicity of illustration. - The flip-
flop 702 comprises aD input 706, which is provided to anexternal connection 732 and aQ output 708 that is provided to anexternal connection 734. Theexternal connection 732 and theexternal connection 734 are two illustrative examples of the external connections on the flip-flop 702 that couple the flip-flop 702 to the circuit in which it is being implemented. In this example, only two external connections are shown; however, external connections for the EN signal and the Q bar signal, along with other external connections, would be provided. The locations of theexternal connections flop 702 are in the same locations relative to theexternal connections flop 602 regardless of the delay period provided by thevariable delay element 750. - In an exemplary embodiment, the
variable delay element 750 comprises adelay element 755 a (D1) and adelay element 755 n (D2). Thedelay element 755 a comprises electricallyconductive traces 742 and electricallyconductive interconnections 772 and 774. - The flip-
flop 702 also comprisesmetal bumper elements 782 and 784, which are electrically non-conductive. Thedelay element 755 n comprises electricallyconductive traces 744 and metal bumper elements 786 and 788. The flip-flop 702 also comprises electricallyconductive interconnections - In the example shown in
FIG. 7 , the electricallyconductive interconnections connection 706 travels through thedelay element 755 a and is then coupled to the electricallyconductive traces 745 and 748 so that the D input signal bypasses only thedelay element 755 n. The metal bumper elements 786 and 788 ensure that there is no electrical connection from thedelay element 755 a to thedelay element 755 n. -
FIG. 8 is a diagram illustrating an embodiment of a layout of the flip-flop having an integrated selectable hold delay ofFIG. 4A . The flip-flop 802 comprises avariable delay element 850 andcircuitry 860. Thecircuitry 860 may comprise the logic elements that comprise the flip-flop 802 and are omitted for simplicity of illustration. - The flip-
flop 802 comprises aD input 806, which is provided to anexternal connection 832 and aQ output 808 that is provided to anexternal connection 834. Theexternal connection 832 and theexternal connection 834 are two illustrative examples of the external connections on the flip-flop 802 that couple the flip-flop 802 to the circuit in which it is being implemented. In this example, only two external connections are shown; however, external connections for the EN signal and the Q bar signal, along with other external connections, would be provided. The locations of theexternal connections flop 802 are in the same locations relative to theexternal connections flop 602, and in the same locations relative to theexternal connections flop 702 regardless of the delay period provided by thevariable delay element 850. - In an exemplary embodiment, the
variable delay element 850 comprises adelay element 855 a (D1). Thedelay element 855 a comprises electricallyconductive traces 842 and electricallyconductive interconnections 872 and 874. The flip-flop 802 also comprisesmetal bumper elements metal bumper elements conductive traces 844 and electricallyconductive interconnections 876 and 878. The flip-flop 802 also comprisesmetal bumper elements - In the example shown in
FIG. 8 , the electricallyconductive interconnections connection 806 travels through thedelay element 855 a and the delay element 855 n. Themetal bumper elements external connection 832 to theconductive traces - The
variable delay elements -
FIG. 9 is a block diagram showing the flip-flop having an integrated selectable hold delay ofFIG. 2A placed in an integrated circuit. In an exemplary embodiment, theintegrated circuit 900 comprisescircuitry 910 andcircuitry 920. Thecircuitry 910 and thecircuitry 920 can be any circuitry located within theintegrated circuit 900. In an exemplary embodiment, the flip-flop 202 ofFIG. 2A is placed in theintegrated circuit 900 between thecircuitry 910 and thecircuitry 920. Thecircuitry 910 is coupled to the flip-flop 202 at a node, orpoint 905 and thecircuitry 920 is coupled to the flip-flop 202 at a node, orpoint 915. The flip-flop 202 has avariable delay element 250 having a first selectable delay. -
FIG. 10 is a block diagram showing the flip-flop having an integrated selectable hold delay ofFIG. 3A placed in the integrated circuit ofFIG. 9 . The flip-flop 302 has avariable delay element 350, which has a second selectable delay that is different than the first selectable delay of thevariable delay element 250 inFIG. 9 . In accordance with an exemplary embodiment, thecircuitry 910 is coupled to the flip-flop 302 at the node, orpoint 905 and thecircuitry 920 is coupled to the flip-flop 302 at a node, orpoint 915. In this manner flip-flops having different selectable delays can be incorporated into anintegrated circuit 900 using identical connection points, which, in this example, are thenodes -
FIG. 11 is a flow chart describing an exemplary method for using a flip-flop having an integrated selectable hold delay. - In
block 1102, a first flip-flop having a first selectable hold delay is placed in a circuit. - In
block 1104, a performance test is performed on the circuit to determine timing. If the circuit passes the performance test, the process ends. - If the circuit does not pass the performance test, then in
block 1106, the first flip-flop having the first selectable hold delay is replaced with another flip-flop having a second selectable hold delay. - In
block 1108, the performance test is performed on the circuit to determine timing. If the circuit passes the performance test, the process ends. If the circuit still does not pass the performance test, the process returns to block 1106 where the second flip-flop having the second selectable delay is replaced with another flip-flop having another selectable delay. The process repeats until the performance test is passed. - This disclosure describes the invention in detail using illustrative embodiments. However, it is to be understood that the invention defined by the appended claims is not limited to the precise embodiments described.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/291,936 US20150349764A1 (en) | 2014-05-30 | 2014-05-30 | Flip-Flop Having Integrated Selectable Hold Delay |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/291,936 US20150349764A1 (en) | 2014-05-30 | 2014-05-30 | Flip-Flop Having Integrated Selectable Hold Delay |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150349764A1 true US20150349764A1 (en) | 2015-12-03 |
Family
ID=54702967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/291,936 Abandoned US20150349764A1 (en) | 2014-05-30 | 2014-05-30 | Flip-Flop Having Integrated Selectable Hold Delay |
Country Status (1)
Country | Link |
---|---|
US (1) | US20150349764A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050084003A1 (en) * | 2003-10-21 | 2005-04-21 | Mark Duron | Full-duplex radio frequency echo cancellation |
US20120068866A1 (en) * | 2010-09-20 | 2012-03-22 | Raytheon Company | Compensation of clock jitter in analog-digital converter applications |
US20150243595A1 (en) * | 2014-02-27 | 2015-08-27 | Mediatek Inc. | Semiconductor chip and semiconductor chip package |
-
2014
- 2014-05-30 US US14/291,936 patent/US20150349764A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050084003A1 (en) * | 2003-10-21 | 2005-04-21 | Mark Duron | Full-duplex radio frequency echo cancellation |
US20120068866A1 (en) * | 2010-09-20 | 2012-03-22 | Raytheon Company | Compensation of clock jitter in analog-digital converter applications |
US20150243595A1 (en) * | 2014-02-27 | 2015-08-27 | Mediatek Inc. | Semiconductor chip and semiconductor chip package |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI590089B (en) | Semiconductor device and synthesis method | |
US6239611B1 (en) | Circuit and method for testing whether a programmable logic device complies with a zero-hold-time requirement | |
US9727684B2 (en) | Method and apparatus for physical-aware hold violation fixing | |
US9495501B1 (en) | Large cluster persistence during placement optimization of integrated circuit designs | |
US9754062B2 (en) | Timing adjustments across transparent latches to facilitate power reduction | |
WO2018076735A1 (en) | Method and device for repairing hold time violation, and computer storage medium | |
US20180267102A1 (en) | Implementing enhanced diagnostics with intelligent pattern combination in automatic test pattern generation (atpg) | |
US9418201B1 (en) | Integration of functional analysis and common path pessimism removal in static timing analysis | |
US20180225401A1 (en) | Single-ended-mode to mixed-mode transformer spice circuit model for high-speed system signal integrity simulations | |
US9196329B1 (en) | Combinatorial flip flop with off-path scan multiplexer | |
US20150349764A1 (en) | Flip-Flop Having Integrated Selectable Hold Delay | |
US9582388B2 (en) | Dynamic multi-purpose external access points connected to core interfaces within a system on chip (SOC) | |
US8643421B1 (en) | Implementing low power, single master-slave elastic buffer | |
US9160322B2 (en) | Clock edge detection device and method | |
KR102076770B1 (en) | Semiconductor device | |
US8793545B2 (en) | Apparatus and method for clock glitch detection during at-speed testing | |
US10664636B2 (en) | Pin number definition based analytics | |
US9990456B1 (en) | Routing process including dynamically changing pad sizes | |
US9405871B1 (en) | Determination of path delays in circuit designs | |
NL2029028B1 (en) | Device under test board with offset connection to host board | |
US10156610B2 (en) | On-chip sequence profiler | |
US9569573B1 (en) | RAS evaluation for circuit element | |
US10277206B2 (en) | Integrated circuit with an oscillating signal-generating assembly | |
MORO | Study and Design of a UVM Verification Environment for SpaceWire Codec Intellectual Property Macrocell | |
US9240788B2 (en) | Semiconductor device and communication interface circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHUA, CHUN-KIAT;MILLER, BRIAN C.;REEL/FRAME:032999/0509 Effective date: 20140529 |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:037808/0001 Effective date: 20160201 Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:037808/0001 Effective date: 20160201 |
|
AS | Assignment |
Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD., SINGAPORE Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:041710/0001 Effective date: 20170119 Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:041710/0001 Effective date: 20170119 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |