CA1271988A - Integrated circuit clock bus system - Google Patents
Integrated circuit clock bus systemInfo
- Publication number
- CA1271988A CA1271988A CA000541046A CA541046A CA1271988A CA 1271988 A CA1271988 A CA 1271988A CA 000541046 A CA000541046 A CA 000541046A CA 541046 A CA541046 A CA 541046A CA 1271988 A CA1271988 A CA 1271988A
- Authority
- CA
- Canada
- Prior art keywords
- clock
- distribution
- delay
- conductor
- clock bus
- 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.)
- Expired - Fee Related
Links
Classifications
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Manipulation Of Pulses (AREA)
- Information Transfer Systems (AREA)
Abstract
INTEGRATED CIRCUIT CLOCK BUS
ABSTRACT OF THE DISCLOSURE
A clock bus system fabricated on an integrated circuit for distributing a train of clock pulses to circuit elements on the integrated circuit. An input terminal is connected to receive a train of clock pulses. All of the circuit elements are circumscribed by a clock bus which is also coupled to each of the circuit elements. A plurality of distribution legs which include clock bus drivers are coupled to the input terminal by conductors and provide the train of clock pulses to the clock bus at spaced-apart locations. The distribution legs coupled to the input terminal by shorter conductors include delay elements for delaying the clock pulse train by time periods corresponding to the delay inherent in longer conductors. The clock pulse trains provided to the clock bus by the distribution legs are thereby synchronized with respect to each other.
ABSTRACT OF THE DISCLOSURE
A clock bus system fabricated on an integrated circuit for distributing a train of clock pulses to circuit elements on the integrated circuit. An input terminal is connected to receive a train of clock pulses. All of the circuit elements are circumscribed by a clock bus which is also coupled to each of the circuit elements. A plurality of distribution legs which include clock bus drivers are coupled to the input terminal by conductors and provide the train of clock pulses to the clock bus at spaced-apart locations. The distribution legs coupled to the input terminal by shorter conductors include delay elements for delaying the clock pulse train by time periods corresponding to the delay inherent in longer conductors. The clock pulse trains provided to the clock bus by the distribution legs are thereby synchronized with respect to each other.
Description
!
INTEGRATED CIRCUIT CLOCK BUS SYSTEM
BACKGROUND OF THE I~ENTION
1. Field of the Invention.
¦ The present invention is a clock bus system 05 for use on very large-scale integrated (VLSI) circuits.
INTEGRATED CIRCUIT CLOCK BUS SYSTEM
BACKGROUND OF THE I~ENTION
1. Field of the Invention.
¦ The present invention is a clock bus system 05 for use on very large-scale integrated (VLSI) circuits.
2. Description of the Prior Art.
Modern digital computers are formed by hundreds of thousands and even millions of logic elements. In computer architectuxes which are highly integrated, these logic elements are fabricated on very large-scale integrated (VLSI) circuit chips known as gate arrays. The gate arrays themselves are organized onto a plurality of major function circuit boards which are dedicated to the performance of specific tasks. A supercomputer, for example, can ¦~ include a central processing unit (CPU), memory interface, and input/output (I/O) major function ~ circuit boards. Each of these circuit boards will ¦ - 20 typically be formed by hundreds of gate arrays.
~ In order to achieve a high data throughput, ¦ operations are distributed throughout the computer and performed in "parallel." Processed data and microinstructions are communicated between individual ¦ 25 gate arrays and between major function circuit boards. It is extremely important, therefore, that all microinstructions and data transfers executed by the gate arrays be synchronized with those of other gate arrays. To this end, the computer includes a ¦ 30 central clock distribution system for providing a clock signal in the form of a synchronized train of clock pulses to all gate arrays. A cloc~ system of .~
, ,,: , ~ ' -;
. , 1~71~8 this type i6 disclosed ln an application entitled "Electronic Clock Tuning System", Serial No.
06/814,654, filed December 30, 1985, an assigned to the same assignee as the present invention.
05 Once the clock signal is received from the central clock distribution system, a clock bus system on each gate array distributes the clock signal to each individual circuit element. For the very same reasons that each gate array must receive synchronized clock signals from the central clock distribution system, it is imperative that each circuit element on the gate array receive a synchroniYed train of clock pulses from the clock bus system.
Even minute discrepancies between the phases of clock pulse trains arriving at different circuit elements on a gate array can have disastrous consequences on computer operation. These discrepancies, or skews, are the product of numerous factors. Possibly the most significant factor contributing to skews introduced by the clock bus system are differing conductor path lengths between the terminal on the gate array at which the clock signal is received from the clock distribution system, and the individual circuit elements. Other factors such as operating temperature, supply voltage, component tolerance, and variables due to manufacturing processes also contribute to skew between the clock pulse trains.
The higher the frequency of the clock pulse train, the faster the computer can process data.
Frequency of the clock pulse train, however, is ,, limited by the uncertainty, or maximum skew, introduced between clock pulse trains supplied to various circuit elements on th~ gate array. Simply put, computer performance can be greatly increased by 05 reducing skews introduced by the clock bus system.
Presently, little attention is paid to reducing the skews introduced by clock bus systems.
One reason for this lack of attention is the fact that commonly used integrated circuits are relatively small, with the physical distance between the terminal on the circuit at which the clock signal is received, and all circuit elements thereon which require the clock signal, is relatively short. Small differences in length between the conductors therefor introduce lit~le skew.
In one common clock bus system, the clock signal is branched out to all circuit elements on the gate array through a tree-type network formed by a plurality of buffers. The network is made large enough to provide a clock signal to each circuit element which requires it. Still another prior art clock bus structure includes a clock bus which circumscribes all circuit elements on the gate array. Although this clock bus structure permits shorter interconnections between the clock bus and individual circuit elements, delays are introduced by the clock bus itself.
It is evident that there is a continuing need for improved clock bus structures for VLSI
circuits. As the size of these circuits continues to increase, the distance between the terminal on the integrated circuit at which the train of~clock pulses ~71~38 is received, and each of the circuit elements, can vary widely enough to introduce skews which detract from computer performanc~. The clock bus system must be capable of providing synchronized trains of clock 05 pulses to all circuit elements on the integrated clrcuit .
SUM~RY OF THE INVEN~ION
The present invention i8 a clock bus system for distributing a train of clock pulses to a plurality of circuit elements. A train of clock pulses is received by input means. Clock bus means for propagating the train of clock pulses substantially circumscribe the circuit elements.
Each circuit element is coupled to the clock bus means. A plurality of distribution leg means are coupled to the input means by conductors, and provide the train of clock pulses to the clock bus means at spaced-apart locations.
In preferred embodiments, the clock bus system is fabricated on an integrated circuit. Each distribution leg means also includes a clock bus driver. The conductors which couple the distribution leg means to the input means delay the clock pulse train by conductor delay periods, and at least some of the conductor delay periods differ. At least some of the distribution leg means include delay means for delaying the clock pulse trains by predetermined time periods. The predetermined time periods of the delay means of each distribution leg correspond to a difference between a greatest conductor delay period, and the conductor delay period of the particular distribution leg means.
~7~3~3~
The clock bus system is well suited for fabrication on very large-scale integrated circuits used as compon nts of supercomputers. Since the clock bus circumscribes all circuit elements, it can 05 be coupled to the circuit elements by conductors of relatively uniform length, thereby reducing clock bus-to-circuit element skews. The clock bus is also driven at several spaced-apart locations by synchronized clock pulse trains. Skews introduced by the clock bus itself are therefore reduced increasing overall computer performance.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a block diagram representation of the clock bus system of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
.
An integrated circuit 10 which includes clock bus system 12 of the present invention is illustrated generally in Figure 1. A plurality of circuit elements 14 (flip-flops are shown for purposes of example) are fabricated on a main body portion 18 of integrated circuit 10 in accordance with any known circuit technology. In one embodiment, clock bus system 12 is fabricated on a 20K CMOS gate array.
Clock bus system 12 includes buffer 19, a plurality of distribution legs 20, 22, 24, and 26, and clock bus 30. Clock bus system 10 provides synchronized system clock signals in the form of trains of clock pulses to circuit elements 14. Clock bus 30 is a conductor such as metal foil which substantially surrounds, or circumscribes, all circuit elements 14 which require a system clock ~L~7~9~
signal. In the embodiment shown in Figure 1, clock bus 30 is rectangular in shape, closed, and complete y circumscribes body portion 18 of integrated circuit 10. Clock bus 30 has an extended 05 length, and is typically positioned near the periphery of integrated circuit 10. The term "substantially" is used to characterize the term "circumscribe" since a clock bus 30 which is open and surrounds less than all of circuit elements 14 does not technically circumscribe the circuit elements, yet provides most all of the advantages of that shown in Figure 1. Clock bus 30 need only provide a convenient point of interconnection to circuit elements from several sides of body portion 18.
All circuit elements 14 on integrated circuit 10 which require a system clock signal have their clock terminal (indicated by a sideways "v" on the flip-flops) coupled to receive the system clock signal from clock bus 30 by conductors 31. Since clock bus 30 circumscribes circuit elements 14, they are all physically located near at least one side of clock bus 30. Short conductors 31 of relatively uniform length can therefore be used to interconnect circuit elements 14 to clock bus 30. Skews introduced by conductors 31 are thereby kept to a minimum.
A train of clock pulses provided by a central clock distribution system such as that described in an application entitled "Electronic Clock Tuning System", Serial No. 06/814,654, which is assigned to the same assignee as the present invention, is coupled to integrated circuit 10 .. . .
:. ~ .. .
.;::: .
.
~ ~71~8 through input terminal 32 and applied to buffer 19.
Buffer 19 isolates other elements of clock bus system 2 from the central clock distribution system.
Distribution legs 20, 22, 24, and 26 are 05 coupled to receive the clock pulse train from buffer 19, and supply the clock pulse train to clock bus 30 at several spaced-apart locations. In the embodiment shown in Figure 1, the clock pulse train is coupled to distribution legs 20 and 26 by conductor 34, with conductor section 34A interconnecting buffer 19 and distribution leg 20, and conductor section 34B
coupling conductor section 34A to distribution leg 26. In a similar manner, conductor 36 has a first section 36A which couples buffer 19 to distribution leg 22, and a second section 36B which interconnects conductor section 36A to distribution leg 24.
In the embodiment shown in ~igure 1, distribution legs 20, 22, 24, and 26 each supply the clock pulse train to points on clock bus 30 which are equidistant from one another, and spaced ninety degrees apart. Distribution legs 20, 22, 24 and 26 preferably include drivers 40, 42, 44, and 46, respectively. Drivers 40-46 are common circuit elements which convert the electrical characteristics of the clock pulse train received from buffer 19 to those required to drive all circuit elements 14 on integrated circuit 10. In one embodiment, drivers 40-46 are programmable devices, the load drive capability of which can be adjusted depending upon whether clock bus 30 is heavily or lightly loaded by circuit elements 14.
~'71~38 The physical distance between distribution legs 20, 22, 24, and 26 and buffer 19 differs since some of these distribution legs are located on integrated circuit 10 at points more distant from 05 buffer 19 than others. Clock pulses which are provided to distribution leg 26, for example, must be propagated through conductor sections 34A and 34B, while the clock pulses provided to distribution leg are propagated only through conductor section 34A. As a result of inherent delays associated with the additional lengths of conductor sections 34B and 36B, the clock pulse trains supplied to clock bus 30 through distribution legs 24 and 26 would be skewed with respect to those provided by distribution legs 20 and 22. To compensate for these delays, at least some of distribution legs 20, 22, 24 and 26 of clock bus system 12 include delay elem~nts to insure minimum skew between the clock pulse trains provided by these distribution legs to clock bus 30.
In the embodiment shown in Figure 1, conductor sections 34A and 36A are fabricated in such a manner that they have nearly identical lengths.
The clock pulse trains provided to by distribution legs 20 and 22 will therefore both be delayed by the same amount of time, and be synchronized with respect to each other. Conductor sections 34B and 36B are also nearly identical in length. As a result, the clock pulse trains provided to distribution legs 24 and 26 will also be synchronized with respect to each other, although these clock pulse trains will be skewed with respect to those provided to distribution g legs 20 and 22 due to the additional propagation delay of conductor sections 34B and 36B.
To compensate for the delay or skew introduced by conductor sections 34B and 36B, 05 distribution legs 20 and 22 include delay elements 48 and 50, respectively. Delay elements 48 and 50 delay the clock pulse trains provided to clock bus 30 by distribution legs 20 and 22, respectively, by a delay period equal to the propagation delay, or conductor delay period, of conductor sections 34B and 36B.
Delay elements 48 and 50 therefore delay the clock pulse trains provided to distribution legs 20 and 22, respectively, by time periods corresponding to a difference between the delay imposed by the longest conductor (both sections A and B of conductors 34 and 36) and the delay imposed by conductor sections 34A
and 36B which couple distribution legs 20 and 22, respectively, to buffer 19. In one preferred embodiment, delay elements 48 and 50 are comprised of resistors which together with the input capacitance of drivers 40 and 42, respectively, function as RC
networks and delay the clock pulse trains by the desired period. The clock pulse trains provided to clock bus 30 by distribution legs 20-26 will therefore all be synchronized with respect to each other.
In one embodjment of the present invention, delay elements 48 and 50 both delay the clock pulse train received thereby by approximately 300 picoseconds to compensate for the propagation delay of conductor sections 34B and 36B, respectively.
Skews between clock pulse trains provided to clock 12~1~8~3 bus 30 by distribution legs 20-26 can be kept to within 200 picoseconds. Skews between clock bus 30 and circuit elements 14 caused by conductors 31 can be kept to within 200-300 picoseconds. As a result, 05 skews between the clock pulse trains provided to circuit elements 14 can be reduced to 400-500 picoseconds using clock bus system 12. This is an improvement of 600-1200 picoseconds over that of prior art techniques implemented on an integrated circuit with a similar clock frequency. This improvement amounts to appro~imately 5%-10% of the system clock period.
Although the present invention has been described with reference to preferred embodiments, workers skilled in the art will recognize that changes may be made in form and detail without departing from the spirit and scope of the invention.
Modern digital computers are formed by hundreds of thousands and even millions of logic elements. In computer architectuxes which are highly integrated, these logic elements are fabricated on very large-scale integrated (VLSI) circuit chips known as gate arrays. The gate arrays themselves are organized onto a plurality of major function circuit boards which are dedicated to the performance of specific tasks. A supercomputer, for example, can ¦~ include a central processing unit (CPU), memory interface, and input/output (I/O) major function ~ circuit boards. Each of these circuit boards will ¦ - 20 typically be formed by hundreds of gate arrays.
~ In order to achieve a high data throughput, ¦ operations are distributed throughout the computer and performed in "parallel." Processed data and microinstructions are communicated between individual ¦ 25 gate arrays and between major function circuit boards. It is extremely important, therefore, that all microinstructions and data transfers executed by the gate arrays be synchronized with those of other gate arrays. To this end, the computer includes a ¦ 30 central clock distribution system for providing a clock signal in the form of a synchronized train of clock pulses to all gate arrays. A cloc~ system of .~
, ,,: , ~ ' -;
. , 1~71~8 this type i6 disclosed ln an application entitled "Electronic Clock Tuning System", Serial No.
06/814,654, filed December 30, 1985, an assigned to the same assignee as the present invention.
05 Once the clock signal is received from the central clock distribution system, a clock bus system on each gate array distributes the clock signal to each individual circuit element. For the very same reasons that each gate array must receive synchronized clock signals from the central clock distribution system, it is imperative that each circuit element on the gate array receive a synchroniYed train of clock pulses from the clock bus system.
Even minute discrepancies between the phases of clock pulse trains arriving at different circuit elements on a gate array can have disastrous consequences on computer operation. These discrepancies, or skews, are the product of numerous factors. Possibly the most significant factor contributing to skews introduced by the clock bus system are differing conductor path lengths between the terminal on the gate array at which the clock signal is received from the clock distribution system, and the individual circuit elements. Other factors such as operating temperature, supply voltage, component tolerance, and variables due to manufacturing processes also contribute to skew between the clock pulse trains.
The higher the frequency of the clock pulse train, the faster the computer can process data.
Frequency of the clock pulse train, however, is ,, limited by the uncertainty, or maximum skew, introduced between clock pulse trains supplied to various circuit elements on th~ gate array. Simply put, computer performance can be greatly increased by 05 reducing skews introduced by the clock bus system.
Presently, little attention is paid to reducing the skews introduced by clock bus systems.
One reason for this lack of attention is the fact that commonly used integrated circuits are relatively small, with the physical distance between the terminal on the circuit at which the clock signal is received, and all circuit elements thereon which require the clock signal, is relatively short. Small differences in length between the conductors therefor introduce lit~le skew.
In one common clock bus system, the clock signal is branched out to all circuit elements on the gate array through a tree-type network formed by a plurality of buffers. The network is made large enough to provide a clock signal to each circuit element which requires it. Still another prior art clock bus structure includes a clock bus which circumscribes all circuit elements on the gate array. Although this clock bus structure permits shorter interconnections between the clock bus and individual circuit elements, delays are introduced by the clock bus itself.
It is evident that there is a continuing need for improved clock bus structures for VLSI
circuits. As the size of these circuits continues to increase, the distance between the terminal on the integrated circuit at which the train of~clock pulses ~71~38 is received, and each of the circuit elements, can vary widely enough to introduce skews which detract from computer performanc~. The clock bus system must be capable of providing synchronized trains of clock 05 pulses to all circuit elements on the integrated clrcuit .
SUM~RY OF THE INVEN~ION
The present invention i8 a clock bus system for distributing a train of clock pulses to a plurality of circuit elements. A train of clock pulses is received by input means. Clock bus means for propagating the train of clock pulses substantially circumscribe the circuit elements.
Each circuit element is coupled to the clock bus means. A plurality of distribution leg means are coupled to the input means by conductors, and provide the train of clock pulses to the clock bus means at spaced-apart locations.
In preferred embodiments, the clock bus system is fabricated on an integrated circuit. Each distribution leg means also includes a clock bus driver. The conductors which couple the distribution leg means to the input means delay the clock pulse train by conductor delay periods, and at least some of the conductor delay periods differ. At least some of the distribution leg means include delay means for delaying the clock pulse trains by predetermined time periods. The predetermined time periods of the delay means of each distribution leg correspond to a difference between a greatest conductor delay period, and the conductor delay period of the particular distribution leg means.
~7~3~3~
The clock bus system is well suited for fabrication on very large-scale integrated circuits used as compon nts of supercomputers. Since the clock bus circumscribes all circuit elements, it can 05 be coupled to the circuit elements by conductors of relatively uniform length, thereby reducing clock bus-to-circuit element skews. The clock bus is also driven at several spaced-apart locations by synchronized clock pulse trains. Skews introduced by the clock bus itself are therefore reduced increasing overall computer performance.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a block diagram representation of the clock bus system of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
.
An integrated circuit 10 which includes clock bus system 12 of the present invention is illustrated generally in Figure 1. A plurality of circuit elements 14 (flip-flops are shown for purposes of example) are fabricated on a main body portion 18 of integrated circuit 10 in accordance with any known circuit technology. In one embodiment, clock bus system 12 is fabricated on a 20K CMOS gate array.
Clock bus system 12 includes buffer 19, a plurality of distribution legs 20, 22, 24, and 26, and clock bus 30. Clock bus system 10 provides synchronized system clock signals in the form of trains of clock pulses to circuit elements 14. Clock bus 30 is a conductor such as metal foil which substantially surrounds, or circumscribes, all circuit elements 14 which require a system clock ~L~7~9~
signal. In the embodiment shown in Figure 1, clock bus 30 is rectangular in shape, closed, and complete y circumscribes body portion 18 of integrated circuit 10. Clock bus 30 has an extended 05 length, and is typically positioned near the periphery of integrated circuit 10. The term "substantially" is used to characterize the term "circumscribe" since a clock bus 30 which is open and surrounds less than all of circuit elements 14 does not technically circumscribe the circuit elements, yet provides most all of the advantages of that shown in Figure 1. Clock bus 30 need only provide a convenient point of interconnection to circuit elements from several sides of body portion 18.
All circuit elements 14 on integrated circuit 10 which require a system clock signal have their clock terminal (indicated by a sideways "v" on the flip-flops) coupled to receive the system clock signal from clock bus 30 by conductors 31. Since clock bus 30 circumscribes circuit elements 14, they are all physically located near at least one side of clock bus 30. Short conductors 31 of relatively uniform length can therefore be used to interconnect circuit elements 14 to clock bus 30. Skews introduced by conductors 31 are thereby kept to a minimum.
A train of clock pulses provided by a central clock distribution system such as that described in an application entitled "Electronic Clock Tuning System", Serial No. 06/814,654, which is assigned to the same assignee as the present invention, is coupled to integrated circuit 10 .. . .
:. ~ .. .
.;::: .
.
~ ~71~8 through input terminal 32 and applied to buffer 19.
Buffer 19 isolates other elements of clock bus system 2 from the central clock distribution system.
Distribution legs 20, 22, 24, and 26 are 05 coupled to receive the clock pulse train from buffer 19, and supply the clock pulse train to clock bus 30 at several spaced-apart locations. In the embodiment shown in Figure 1, the clock pulse train is coupled to distribution legs 20 and 26 by conductor 34, with conductor section 34A interconnecting buffer 19 and distribution leg 20, and conductor section 34B
coupling conductor section 34A to distribution leg 26. In a similar manner, conductor 36 has a first section 36A which couples buffer 19 to distribution leg 22, and a second section 36B which interconnects conductor section 36A to distribution leg 24.
In the embodiment shown in ~igure 1, distribution legs 20, 22, 24, and 26 each supply the clock pulse train to points on clock bus 30 which are equidistant from one another, and spaced ninety degrees apart. Distribution legs 20, 22, 24 and 26 preferably include drivers 40, 42, 44, and 46, respectively. Drivers 40-46 are common circuit elements which convert the electrical characteristics of the clock pulse train received from buffer 19 to those required to drive all circuit elements 14 on integrated circuit 10. In one embodiment, drivers 40-46 are programmable devices, the load drive capability of which can be adjusted depending upon whether clock bus 30 is heavily or lightly loaded by circuit elements 14.
~'71~38 The physical distance between distribution legs 20, 22, 24, and 26 and buffer 19 differs since some of these distribution legs are located on integrated circuit 10 at points more distant from 05 buffer 19 than others. Clock pulses which are provided to distribution leg 26, for example, must be propagated through conductor sections 34A and 34B, while the clock pulses provided to distribution leg are propagated only through conductor section 34A. As a result of inherent delays associated with the additional lengths of conductor sections 34B and 36B, the clock pulse trains supplied to clock bus 30 through distribution legs 24 and 26 would be skewed with respect to those provided by distribution legs 20 and 22. To compensate for these delays, at least some of distribution legs 20, 22, 24 and 26 of clock bus system 12 include delay elem~nts to insure minimum skew between the clock pulse trains provided by these distribution legs to clock bus 30.
In the embodiment shown in Figure 1, conductor sections 34A and 36A are fabricated in such a manner that they have nearly identical lengths.
The clock pulse trains provided to by distribution legs 20 and 22 will therefore both be delayed by the same amount of time, and be synchronized with respect to each other. Conductor sections 34B and 36B are also nearly identical in length. As a result, the clock pulse trains provided to distribution legs 24 and 26 will also be synchronized with respect to each other, although these clock pulse trains will be skewed with respect to those provided to distribution g legs 20 and 22 due to the additional propagation delay of conductor sections 34B and 36B.
To compensate for the delay or skew introduced by conductor sections 34B and 36B, 05 distribution legs 20 and 22 include delay elements 48 and 50, respectively. Delay elements 48 and 50 delay the clock pulse trains provided to clock bus 30 by distribution legs 20 and 22, respectively, by a delay period equal to the propagation delay, or conductor delay period, of conductor sections 34B and 36B.
Delay elements 48 and 50 therefore delay the clock pulse trains provided to distribution legs 20 and 22, respectively, by time periods corresponding to a difference between the delay imposed by the longest conductor (both sections A and B of conductors 34 and 36) and the delay imposed by conductor sections 34A
and 36B which couple distribution legs 20 and 22, respectively, to buffer 19. In one preferred embodiment, delay elements 48 and 50 are comprised of resistors which together with the input capacitance of drivers 40 and 42, respectively, function as RC
networks and delay the clock pulse trains by the desired period. The clock pulse trains provided to clock bus 30 by distribution legs 20-26 will therefore all be synchronized with respect to each other.
In one embodjment of the present invention, delay elements 48 and 50 both delay the clock pulse train received thereby by approximately 300 picoseconds to compensate for the propagation delay of conductor sections 34B and 36B, respectively.
Skews between clock pulse trains provided to clock 12~1~8~3 bus 30 by distribution legs 20-26 can be kept to within 200 picoseconds. Skews between clock bus 30 and circuit elements 14 caused by conductors 31 can be kept to within 200-300 picoseconds. As a result, 05 skews between the clock pulse trains provided to circuit elements 14 can be reduced to 400-500 picoseconds using clock bus system 12. This is an improvement of 600-1200 picoseconds over that of prior art techniques implemented on an integrated circuit with a similar clock frequency. This improvement amounts to appro~imately 5%-10% of the system clock period.
Although the present invention has been described with reference to preferred embodiments, workers skilled in the art will recognize that changes may be made in form and detail without departing from the spirit and scope of the invention.
Claims (6)
1. An integrated circuit, including:
terminal means for receiving a train of clock pulses;
a plurality of circuit elements;
clock bus means substantially circumscribing the circuit elements for propagating the train of clock pulses, wherein the circuit elements are coupled to the clock bus means;
a plurality of distribution legs, each coupling the train of clock pulses to the clock bus means at spaced-apart locations;
conductors coupling the distribution legs to the terminal means, each conductor character-ized by a conductor delay period, and wherein at least some of the conductor delay periods differ; and delay means associated with each of at least some of the distribution legs, for delaying the clock pulse train by a predetermined time delay period, wherein the predetermined time delay period of the delay means corresponds to a difference between a greatest conductor delay period and the conductor delay period of the conductor coupling the clock pulse train to the distribution leg with which the delay means is associated.
terminal means for receiving a train of clock pulses;
a plurality of circuit elements;
clock bus means substantially circumscribing the circuit elements for propagating the train of clock pulses, wherein the circuit elements are coupled to the clock bus means;
a plurality of distribution legs, each coupling the train of clock pulses to the clock bus means at spaced-apart locations;
conductors coupling the distribution legs to the terminal means, each conductor character-ized by a conductor delay period, and wherein at least some of the conductor delay periods differ; and delay means associated with each of at least some of the distribution legs, for delaying the clock pulse train by a predetermined time delay period, wherein the predetermined time delay period of the delay means corresponds to a difference between a greatest conductor delay period and the conductor delay period of the conductor coupling the clock pulse train to the distribution leg with which the delay means is associated.
2. The integrated circuit of claim 1 wherein the clock bus means is closed and completely circum-scribes the circuit elements.
3. The integrated circuit of claim 1 wherein the plurality of distribution legs consist of first, second, third, and fourth distribution legs coupling the train of clock pulses to the clock bus means at locations spaced apart by approximately 90°.
4. The integrated circuit of claim 3 wherein:
the conductors consist of a first conductor coupling the first distribution leg to the terminal means, a second conductor coupling the second distri-bution leg to the terminal means, a third conductor coupling the third distribution leg to the second distribution leg, and a fourth conductor coupling the fourth distribution leg to the first distribution leg; the first and second conductors are approxi-mately equal in length;
the third and fourth conductors are approxi-mately equal in length; and the delay means of the first and second distribution legs delay the clock pulse train by a delay period corresponding to a delay inherent in the third and fourth conductors.
the conductors consist of a first conductor coupling the first distribution leg to the terminal means, a second conductor coupling the second distri-bution leg to the terminal means, a third conductor coupling the third distribution leg to the second distribution leg, and a fourth conductor coupling the fourth distribution leg to the first distribution leg; the first and second conductors are approxi-mately equal in length;
the third and fourth conductors are approxi-mately equal in length; and the delay means of the first and second distribution legs delay the clock pulse train by a delay period corresponding to a delay inherent in the third and fourth conductors.
5. The integrated circuit of claim 1 wherein each distribution leg includes a clock bus driver.
6. The integrated circuit of claim 1 wherein the distribution means includes clock bus drivers.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/883,829 US4769558A (en) | 1986-07-09 | 1986-07-09 | Integrated circuit clock bus layout delay system |
US883,829 | 1986-07-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA1271988A true CA1271988A (en) | 1990-07-24 |
Family
ID=25383413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA000541046A Expired - Fee Related CA1271988A (en) | 1986-07-09 | 1987-06-24 | Integrated circuit clock bus system |
Country Status (5)
Country | Link |
---|---|
US (1) | US4769558A (en) |
EP (1) | EP0258975A3 (en) |
JP (1) | JPS6341918A (en) |
AU (1) | AU589789B2 (en) |
CA (1) | CA1271988A (en) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0736422B2 (en) * | 1988-08-19 | 1995-04-19 | 株式会社東芝 | Clock supply circuit |
US5291043A (en) * | 1990-02-07 | 1994-03-01 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor integrated circuit device having gate array |
US5077676A (en) * | 1990-03-30 | 1991-12-31 | International Business Machines Corporation | Reducing clock skew in large-scale integrated circuits |
JP2507677B2 (en) * | 1990-06-28 | 1996-06-12 | 富士通株式会社 | Distributed data processor |
JP3026387B2 (en) * | 1991-08-23 | 2000-03-27 | 沖電気工業株式会社 | Semiconductor integrated circuit |
JP3048471B2 (en) * | 1992-09-08 | 2000-06-05 | 沖電気工業株式会社 | Clock supply circuit and clock skew adjustment method |
US5467033A (en) * | 1993-07-02 | 1995-11-14 | Tandem Computers Incorporated | Chip clock skew control method and apparatus |
US5448208A (en) * | 1993-07-15 | 1995-09-05 | Nec Corporation | Semiconductor integrated circuit having an equal propagation delay |
JPH0737990A (en) * | 1993-07-16 | 1995-02-07 | Nec Corp | Clock distribution system |
US5481209A (en) * | 1993-09-20 | 1996-01-02 | Lsi Logic Corporation | Clock distribution and control in an integrated circuit |
JP3112784B2 (en) * | 1993-09-24 | 2000-11-27 | 日本電気株式会社 | Clock signal distribution circuit |
US5652529A (en) * | 1995-06-02 | 1997-07-29 | International Business Machines Corporation | Programmable array clock/reset resource |
US5570045A (en) * | 1995-06-07 | 1996-10-29 | Lsi Logic Corporation | Hierarchical clock distribution system and method |
US5717229A (en) * | 1996-03-26 | 1998-02-10 | Intel Corporation | Method and apparatus for routing a clock tree in an integrated circuit package |
US6305001B1 (en) * | 1998-06-18 | 2001-10-16 | Lsi Logic Corporation | Clock distribution network planning and method therefor |
US6513149B1 (en) | 2000-03-31 | 2003-01-28 | International Business Machines Corporation | Routing balanced clock signals |
KR100338779B1 (en) | 2000-08-28 | 2002-05-31 | 윤종용 | Memory module preventing skew of signal lines |
JP3767520B2 (en) | 2002-06-12 | 2006-04-19 | 日本電気株式会社 | Integrated circuit device |
US7622965B2 (en) * | 2006-01-31 | 2009-11-24 | International Business Machines Corporation | Dual-edge shaping latch/synchronizer for re-aligning edges |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3171981A (en) * | 1962-07-02 | 1965-03-02 | Ibm | Clock pulse generation and distribution circuit |
US3418498A (en) * | 1965-10-29 | 1968-12-24 | Westinghouse Electric Corp | Delay line timing circuit for use with computer or other timed operation devices |
US3633113A (en) * | 1969-12-22 | 1972-01-04 | Ibm | Timed pulse train generating system |
US3725793A (en) * | 1971-12-15 | 1973-04-03 | Bell Telephone Labor Inc | Clock synchronization arrangement employing delay devices |
US3753012A (en) * | 1972-02-17 | 1973-08-14 | Motorola Inc | Circuit for providing precise time delay |
US4208724A (en) * | 1977-10-17 | 1980-06-17 | Sperry Corporation | System and method for clocking data between a remote unit and a local unit |
US4241418A (en) * | 1977-11-23 | 1980-12-23 | Honeywell Information Systems Inc. | Clock system having a dynamically selectable clock period |
DE2853523C2 (en) * | 1978-12-12 | 1981-10-01 | Ibm Deutschland Gmbh, 7000 Stuttgart | Decentralized generation of clock control signals |
US4321687A (en) * | 1979-10-01 | 1982-03-23 | International Business Machines Corporation | Timing pulse generation |
US4414637A (en) * | 1981-01-13 | 1983-11-08 | Honeywell Information Systems Inc. | Adjustable clock system having a dynamically selectable clock period |
US4447876A (en) * | 1981-07-30 | 1984-05-08 | Tektronix, Inc. | Emulator control sequencer |
JPS5835963A (en) * | 1981-08-28 | 1983-03-02 | Fujitsu Ltd | Integrated circuit device |
JPS58101525A (en) * | 1981-12-14 | 1983-06-16 | Fujitsu Ltd | Logical circuit |
US4412342A (en) * | 1981-12-18 | 1983-10-25 | Gte Automatic Electric Labs Inc. | Clock synchronization system |
US4482826A (en) * | 1982-02-16 | 1984-11-13 | Lecroy Research Systems Corporation | Programmable delay device |
DE3211595A1 (en) * | 1982-03-30 | 1983-10-06 | Gewerk Eisenhuette Westfalia | BREAK AND OFFSET SHIELDING OF A LEMNIS CAT SHIELD |
US4479216A (en) * | 1982-12-22 | 1984-10-23 | At&T Bell Laboratories | Skew-free clock circuit for integrated circuit chip |
JPS59190022A (en) * | 1983-04-11 | 1984-10-27 | Mitsui Mining & Smelting Co Ltd | Locking device for ventilation window blind of car |
US4639615A (en) * | 1983-12-28 | 1987-01-27 | At&T Bell Laboratories | Trimmable loading elements to control clock skew |
EP0173521A3 (en) * | 1984-08-29 | 1988-05-11 | Unisys Corporation | Automatic signal delay adjustment apparatus |
JPS6182525A (en) * | 1984-09-29 | 1986-04-26 | Toshiba Corp | Semiconductor integrated circuit device |
-
1986
- 1986-07-09 US US06/883,829 patent/US4769558A/en not_active Expired - Lifetime
-
1987
- 1987-06-24 CA CA000541046A patent/CA1271988A/en not_active Expired - Fee Related
- 1987-07-01 EP EP87305816A patent/EP0258975A3/en not_active Withdrawn
- 1987-07-07 AU AU75290/87A patent/AU589789B2/en not_active Ceased
- 1987-07-09 JP JP62172036A patent/JPS6341918A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP0258975A2 (en) | 1988-03-09 |
AU589789B2 (en) | 1989-10-19 |
JPS6341918A (en) | 1988-02-23 |
EP0258975A3 (en) | 1989-07-12 |
AU7529087A (en) | 1988-01-14 |
US4769558A (en) | 1988-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA1271988A (en) | Integrated circuit clock bus system | |
US5696949A (en) | System for PCI slots expansion using asynchronous PCI-to-PCI bridge with clock generator for providing clock signal to the expansion mother board and expansion side of bridge | |
US6239387B1 (en) | Sinusoidal radio-frequency clock distribution system for synchronization of a computer system | |
US6378080B1 (en) | Clock distribution circuit | |
US5086427A (en) | Clocked logic circuitry preventing double driving on shared data bus | |
US20010005146A1 (en) | Signal transmission system | |
US6420895B1 (en) | High-sensitivity, self-clocked receiver for multi-chip superconductor circuits | |
EP0362691A3 (en) | Anti-clock skew distribution apparatus | |
US3745472A (en) | Synchronous digital system having a clock distribution system | |
US20060031697A1 (en) | Method and system for reducing the effects of simultaneously switching outputs | |
US6535048B1 (en) | Secure asynchronous clock multiplexer | |
US4839604A (en) | Integrated circuit with clock distribution means for supplying clock signals | |
US5767718A (en) | High speed conditional synchronous one shot circuit | |
US6587907B1 (en) | System and method for generating a clock delay within an interconnect cable assembly | |
US5994924A (en) | Clock distribution network with dual wire routing | |
US6005428A (en) | System and method for multiple chip self-aligning clock distribution | |
US6341326B1 (en) | Method and apparatus for data capture using latches, delays, parallelism, and synchronization | |
US5771372A (en) | Apparatus for delaying the output of data onto a system bus | |
US6172528B1 (en) | Charge sharing circuit for fanout buffer | |
US4918331A (en) | Logic circuits with data resynchronization | |
USH1796H (en) | Method and circuit for eliminating hold time violations in synchronous circuits | |
KR940009333B1 (en) | Integrated electronic multiplex circuit | |
US8166438B2 (en) | Low RC local clock distribution | |
EP1374033B1 (en) | Improved high speed data capture circuit for a digital device | |
JPS62217632A (en) | Semiconductor integrated circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MKLA | Lapsed |