Multiphase clocking systems with ring bus architecture
First Claim
1. A system comprising:
- a plurality of digital circuit components;
a bidirectional ring bus which includes a plurality of latches, wherein each of the latches is coupled to a corresponding one of the digital circuit components to enable the digital circuit components to transmit and receive data on the bus; and
a timing system which is configuredto generate a plurality of clock signals, wherein each of the clock signals is phase-shifted with respect to the remainder of the clock signals, andto provide each of the clock signals to a different one of the digital circuit components;
wherein each of the latches is clocked based on the clock signal provided to the digital circuit component associated with the latch;
wherein the system comprises a multiprocessor and the digital circuit components comprise processor cores, wherein each of the processor cores includes a controller that receives the clock signal associated with the processor core, wherein the controller is coupled to the latch associated with the processor core; and
wherein the bidirectional ring bus has a first data path on which data is transferred in a clockwise direction and a second data path on which data is transferred in a counterclockwise direction;
further comprising an arbiter coupled to each of the processor cores and configured to control data transfers on the bidirectional ring bus, wherein the arbiter is configured to provide the clock signals to the processor cores in a manner that causes non-adiacent ones of the processor cores to be fired consecutively, and wherein the arbiter is coupled to each controller and is configured to cause each controller to selectively modify the received clock signal and to provide the modified clock signal to the associated latch.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for transferring data using a ring bus architecture in a system that implements multi-phase clocking. In one embodiment, the system is a multiprocessor having multiple processor cores coupled to the ring bus. The bus may be a bidirectional bus having a first data path on which data is transferred in a clockwise direction and a second data path on which data is transferred in a counterclockwise direction. Controllers within the processor cores provide phase-shifted signals to the latches to clock data into them. Data transfers on the bus may be controlled by an arbiter which is coupled to the processor cores'"'"' controllers. The arbiter may schedule data transfers on the bus based on data transfer speeds associated with left-to-right and right-to-left data transfer directions. The arbiter may cause the phases of the clock signals to be selectively varied, or may cause the clock signals to be gated.
12 Citations
13 Claims
-
1. A system comprising:
-
a plurality of digital circuit components; a bidirectional ring bus which includes a plurality of latches, wherein each of the latches is coupled to a corresponding one of the digital circuit components to enable the digital circuit components to transmit and receive data on the bus; and a timing system which is configured to generate a plurality of clock signals, wherein each of the clock signals is phase-shifted with respect to the remainder of the clock signals, and to provide each of the clock signals to a different one of the digital circuit components; wherein each of the latches is clocked based on the clock signal provided to the digital circuit component associated with the latch; wherein the system comprises a multiprocessor and the digital circuit components comprise processor cores, wherein each of the processor cores includes a controller that receives the clock signal associated with the processor core, wherein the controller is coupled to the latch associated with the processor core; and wherein the bidirectional ring bus has a first data path on which data is transferred in a clockwise direction and a second data path on which data is transferred in a counterclockwise direction; further comprising an arbiter coupled to each of the processor cores and configured to control data transfers on the bidirectional ring bus, wherein the arbiter is configured to provide the clock signals to the processor cores in a manner that causes non-adiacent ones of the processor cores to be fired consecutively, and wherein the arbiter is coupled to each controller and is configured to cause each controller to selectively modify the received clock signal and to provide the modified clock signal to the associated latch. - View Dependent Claims (2)
-
-
3. A system comprising:
-
a plurality of digital circuit components; a bidirectional ring bus which includes a plurality of latches, wherein each of the latches is coupled to a corresponding one of the digital circuit components to enable the digital circuit components to transmit and receive data on the bus; a timing system which is configured to generate a plurality of clock signals, wherein each of the clock signals is phase-shifted with respect to the remainder of the clock signals, and to provide each of the clock signals to a different one of the digital circuit components; and an arbiter coupled to each of the digital circuit components and configured to control data transfers on the bidirectional ring bus; wherein each of the latches is clocked based on the clock signal provided to the digital circuit component associated with the latch. - View Dependent Claims (4, 5, 6, 7, 8)
-
-
9. A method implemented in a system having a plurality of digital circuit components coupled to corresponding latches in a bidirectional ring bus, the method comprising:
-
generating a plurality of clock signals, wherein each of the clock signals is phase-shifted with respect to the remainder of the clock signals; providing each of the clock signals to a different one of the digital circuit components; and clocking data into the latch corresponding to one of the digital circuit components based on the clock signal provided to the digital circuit component; wherein the clock signals are provided to the digital circuit components in a manner that causes non-adjacent ones of the digital circuit components to be fired consecutively. - View Dependent Claims (10, 11, 12, 13)
-
Specification