Method for substantially eliminating hold time violations in implementing high speed logic circuits or the like
First Claim
1. A method for preventing hold time violations in a sequential logic circuit being implemented from logic configuration data, said sequential logic circuit including a plurality of user clocked flip-flop devices, each of said user clocked flip-flop devices having a source data path associated therewith and being controlled from a corresponding clock signal, each of said user clocked flip-flop devices including a data input connected to a data signal input node for receiving data signals, a clock input for receiving said corresponding clock signal, and an output, said logic circuit characterized by an undetermined amount of clock skew between said plurality of user clocked flip-flop devices, said method comprising the steps of:
- providing in said source data path associated with each of said user clocked flip-flop devices, a corresponding synchronizer flip-flop device having a data input connected to the data signal input node associated with its corresponding user clocked flip-flop device, an output connected to the data input of its corresponding user clocked flip-flop device, and a clock input;
driving each said synchronizer flip-flop device with a synchronizing clock signal derived from said corresponding clock signal associated with its corresponding user clocked flip-flop device; and
,delaying each of said corresponding clock signals to form a plurality of delayed corresponding clock signals and applying said delayed corresponding clock signals to the clock inputs of each of said user clocked flip-flop devices.
2 Assignments
0 Petitions
Accused Products
Abstract
A method is provided for eliminating hold time violations in implementing high-speed logic circuits specified in circuit configuration data includes the steps of providing a synchronizer flip-flop device or latch corresponding to every flip-flop device or latch specified in the circuit configuration data. The synchronizer flip-flop is provided immediately upstream in the data path from its corresponding original user flip-flop device. A predetermined amount of delay is added to the user'"'"'s original clock and data signals. A synchronizing clock signal generator provides a delayed synchronizer clock for each master clock in the circuit which is provided to each user flip flop.
-
Citations
8 Claims
-
1. A method for preventing hold time violations in a sequential logic circuit being implemented from logic configuration data, said sequential logic circuit including a plurality of user clocked flip-flop devices, each of said user clocked flip-flop devices having a source data path associated therewith and being controlled from a corresponding clock signal, each of said user clocked flip-flop devices including a data input connected to a data signal input node for receiving data signals, a clock input for receiving said corresponding clock signal, and an output, said logic circuit characterized by an undetermined amount of clock skew between said plurality of user clocked flip-flop devices, said method comprising the steps of:
-
providing in said source data path associated with each of said user clocked flip-flop devices, a corresponding synchronizer flip-flop device having a data input connected to the data signal input node associated with its corresponding user clocked flip-flop device, an output connected to the data input of its corresponding user clocked flip-flop device, and a clock input; driving each said synchronizer flip-flop device with a synchronizing clock signal derived from said corresponding clock signal associated with its corresponding user clocked flip-flop device; and
,delaying each of said corresponding clock signals to form a plurality of delayed corresponding clock signals and applying said delayed corresponding clock signals to the clock inputs of each of said user clocked flip-flop devices. - View Dependent Claims (2)
-
-
3. A method for preventing hold time violations in a digital logic circuit being implemented from logic circuit configuration data, said digital logic circuit including a plurality of user clocked transparent latches having a source data path associated therewith and being controlled from a corresponding clock signal having a latching edge, each of said user clocked transparent latches having a data input for receiving data signals from a data signal input node, a clock input for receiving said corresponding clock signal and an output, said logic circuit characterized by an undetermined amount of clock skew between said plurality of user clocked transparent latches, said method comprising the steps of:
-
providing in said source data path associated with each of said user clocked transparent latches, a corresponding synchronizer clocked transparent latch having a data input connected to the data input signal node associated with its corresponding user clocked transparent latch, an output connected to the data input of its corresponding user clocked transparent latch, and a clock input; driving each said synchronizer clocked transparent latch with a synchronizing clock signal derived from said corresponding clock signal associated with each user clocked transparent latch; and
,delaying the latching edge of each of said corresponding clock signals to form a plurality of delayed latching edge corresponding clock signals and applying corresponding ones of said delayed latching edge corresponding clock signals to the clock inputs of each of said user clocked transparent latches. - View Dependent Claims (4, 5)
-
-
6. A method for preventing hold time violations in a sequential logic circuit being implemented from logic configuration data, said sequential logic circuit including a plurality of user clocked flip-flop devices, each of said user clocked flip-flop devices having a source data path associated therewith and being controlled from a corresponding clock signal, each of said user clocked flip-flop devices having a data input for receiving data signals from a data input signal node, a clock input for receiving said corresponding clock signal, and an output, said logic circuit characterized by an undetermined amount of clock skew between said plurality of user clocked flip-flop devices, said method comprising the steps of:
-
providing in said source data path associated with each of said user clocked flip-flop devices, a corresponding synchronizer clocked transparent latch device having a data input connected to the data input signal node associated with its corresponding user clocked flip-flop device, an output connected to the data input of its corresponding user clocked flip-flop device, and a clock input; driving the clock input of each said synchronizer clocked transparent latch device with a synchronizing clock signal derived from said corresponding clock signal associated with its corresponding user clocked flip-flop device; and
,delaying each of said corresponding clock signals to form a plurality of delayed corresponding clock signals and applying said delayed corresponding clock signals to the clock inputs of each of said user clocked flip-flop devices. - View Dependent Claims (7, 8)
-
Specification