Memory clock generator and method therefor

Electrical computers and digital processing systems: support – Clock – pulse – or timing signal generation or analysis – Multiple or variable intervals or frequencies

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C327S116000

Reexamination Certificate

active

06550013

ABSTRACT:

TECHNICAL FIELD
The present invention relates in general to data processing systems, and in particular, to the generation of memory clock signals for data processing systems having synchronous memory.
BACKGROUND INFORMATION
A processor chip (which may also be referred to as a central processing unit, or (“CPU”) interfaces to off-chip memory for storage of data and instructions. Modem data processing systems typically employ, as off-chip random access memory synchronous random access memory (SRAM) in which memory transactions are synchronized to edges of a memory clock signal. The memory clock signal is provided by the CPU. An individual value to be stored in memory is asserted on the memory interface by the CPU for only a brief instant, timed by signals derived from the CPU's clock, which signals are also provided to the SRAM as the memory clock.
Conventionally, the values to be stored are transferred through latches to which the timing signals are applied.
FIG. 1
illustrates a portion
100
of a CPU including prior art bus interface mechanisms. Processor clock (“p-clock”) signal
102
is generated via a p-clock generator
104
and distributed throughout the processor chip through one or more p-clock distribution networks
106
. (The p-clock is sometimes referred to as the “GCLK”.) The clock
102
also provides a reference signal to a phase-locked loop (PLL)
108
that controls a voltage controlled oscillator (VCO)
110
that together generate memory clock
112
which is thereby derived from, and phase-locked to, p-clock
102
.
Data transfers to memory are launched from, or transfers from memory are received at, diverse locations on the CPU chip, not merely in one central location. If data transfers were centralized, numerous problems would arise. These include noise from a concentration of near-simultaneous switching, wiring congestion and path length disparities for both the data and clock paths because some locations in the chip would be relatively more remote than others from the central data transfer location. Consequently, data transfers are decentralized, and data is distributed from its source via one or more data distribution networks
114
, and stored in latch pairs, or registers,
116
. Data is generated, and stored, in the processor clock domain.
Data to be stored in memory is distributed to the CPU chip boundary via data distribution networks
114
, and launched onto memory bus
118
. Data is launched in response to memory clock
112
via a plurality of latches
120
which incorporate a master-slave latch pair, denoted latch L
1
and latch L
2
.
Although distributing data transfer locations on the CPU chip does mitigate the aforementioned problems, data signals are typically substantially skewed relative to the timing signals, for example memory clock
112
, at the data transfer locations on the chip boundary. Furthermore, the amount of skew may vary due to the variation in path lengths for the data and timing signals, which variation may be substantial. This is illustrated in the timing diagram in FIG.
1
B. In the embodiment illustrated in
FIG. 1B
, data
122
input to latch
120
is latched on a rising edge of memory clock
112
. Portions “A”, “B”, and “C” are launched at edges t
1
, t
2
, and t
3
, respectively. Due to the skew, T
s
, in the arrival times of data
122
and the corresponding edge of memory clock
112
, a center of the data valid interval for data
122
is shifted relative to the edges of memory clock
112
. As a consequence, data
122
has excessive setup time, T
su
and short hold-up time, T
h
. If the hold-up time becomes too short, shorter than the hold-up time specified by the manufacturer of the SRAM, the memory write may result in erroneous data being stored in memory.
Conventionally, the skew problem has been addressed by tuning of the electrical characteristics associated with the conduction paths to adjust effective path lengths. In this way, the skew of the data and timing signals at the data transfer points on the CPU boundary are controlled. However, advances in CPU technology make this conventional approach increasingly problematic. Higher frequency operation, smaller conductor cross-sections, smaller separation between conductors, and longer conduction paths all exacerbate the limiting of the signal skew using conventional approaches. Moreover, as CPU speeds increase, bus clocks speeds become more important in determining the overall performance of the data processing system. Thus, bus clock speeds must increase in order to keep pace with the increase in CPU performance. This trend in bus clock speeds further increases the constraints on data and timing signals skew. Thus, there is a need in the art for apparatus and methods that mitigate the skew in the data and timing signals in data transfers to memory in data processing systems, as well as mitigating sensitivities to sources of skew arising from manufacturing processes and CPU operation.
SUMMARY OF THE INVENTION
The aforementioned needs are addressed by the present invention. Accordingly, there is provided, in a first form, a memory clock generator. The clock generator contains a shift register operable for inputting a first clock signal, the shift register having a predetermined first set of output taps. The generator also includes first logic circuitry operable for receiving signals from the first set of outputs and a plurality of control signals operable for selecting a ratio of a period of the memory clock to a period of the first clock. The first logic circuitry outputs a second clock signal, the memory clock being output in response to the second clock signal.
There is also provided, in a second form, a method of generating a memory clock. The method includes the steps of shifting a first pulse of a first clock signal through a shift register, and tapping a first predetermined set of outputs off of the shift register. The output signals from the first set of outputs are logically combined with a first plurality of first control signals, wherein the first plurality of first control signals are operable for selecting a ratio of a period of the memory clock to a period of the first clock signal. The memory clock is generated in response to the result of the logical combination.
Additionally, there is provided, in a third form, a data processing system including a central processing unit (CPU), the CPU including a memory clock generator, and a memory operable for storing data and instructions for the CPU. The memory communicates the data and instructions in response to a memory clock from the memory clock generator. The memory clock generator contains a shift register operable for inputting a first clock signal, the shift register having a predetermined first set of output taps, and first logic circuitry operable for receiving signals from the first set of output taps and a plurality of control signals operable for selecting a ratio of a period of the memory clock to a period of the first clock. The first logic circuitry outputs a second clock signal, the memory clock being output in response to the second clock signal.
The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of the invention will be described hereinafter which form the subject of the claims of the invention.


REFERENCES:
patent: 3414720 (1968-12-01), Battarel
patent: 3992612 (1976-11-01), Dunn
patent: 5530387 (1996-06-01), Kim
patent: 5721501 (1998-02-01), Toyoda et al.
patent: 5805912 (1998-09-01), Johnson et al.
patent: 6087864 (2000-07-01), Aoki
patent: 6177823 (2001-01-01), Saeki
IBM Technical Disclosure Bulletin, vol. 32 No. 9A pp. 345-350, Feb. 1990, “Dynamic Clock Frequency Changing for a Memory Controller”.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Memory clock generator and method therefor does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Memory clock generator and method therefor, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Memory clock generator and method therefor will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3076894

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.