The invention relates to a digital data register with a plurality of parallel matched data paths, each data path having a data input for receiving a digital data input signal, an output driver with a data output providing a digital data output signal for application to an associated memory module, and a flip-flop arranged between the data input and the data output. A preferred application of the data register is the use in a memory system operating at clock frequencies as high as 800 MHz and above.
The purpose of such a data register, also referred to as a “registered data buffer,” is to ensure the correct setup and hold timing for the related memory modules. The register should also have a phase jitter cleaning function for the clock used in the memory system. Both requirements can be met in a straightforward approach with a data register wherein a flip-flop is inserted in each data path and all flip-flops are clocked with a clean clock provided by a phase locked loop (PLL). By adjusting the delay time of a delay element in the clock input path in relation to the propagation delay time (tpd) of the data input path upstream of the flip-flop the appropriate setup and hold timing can be achieved on the pre-register side. On the post-register side, a delay element is inserted in the clock output path so as to move the clock edge to the center of the data eye of the register's data output signal. The clock output driver must be matched with the data output drivers to ensure stable timing conditions on the post-register side over variations of process, supply voltage and temperature (PVT). Likewise, the clock input path should be matched with the data input paths on the pre-register side. In this context, “matched” means similar semiconductor structures on the die so that variations of semiconductor process, supply voltage and temperature have the same effect on the propagation times of matched structures.
The pre-register timing is, however, linked with the post-register timing by the propagation delay time (tpd) from the clock input to the data output. This propagation delay should be small and constant over PVT variations. It is not possible to achieve a PVT invariant propagation delay with the architecture considered above.
The invention provides a digital data register that satisfies the three requirements of: (i) setup and hold timing on the pre-register side, (ii) clock centering on the post-register side, and (iii) constant propagation delay time (tpd) over PVT variations from the clock input to the data output.
The new architecture and the benefits of the inventive digital data register will become apparent from the following detailed description of example embodiments with reference to the appended drawings, wherein:
The digital data register in
By way of an example preferred application,
The address/control signals and the system clock coming from the memory controller need to be routed to every SDRAM device on every DIMM board. However, as the load for these signals would be too heavy and as therefore the signal quality and timing would degrade too much, a registered buffer with PLL clock driver is placed on each DIMM module in order to buffer the incoming address/control signals and to give the address signals out with a “refreshed” waveform. The PLL clock driver has the function to “refresh” or “clean” the system clock signal. The clock signal is cleaned of its clock jitter and applied to every SDRAM on the DIMM board.
As has been discussed above, it is possible with the data register in
The architecture shown in
In
The flip-flops FF1 of the data paths are all clocked by a clock signal CLK_FF1 from the feedback input FB of the PLL. A replica of a delay flip-flop FF1 DELAY and output driver receives the same clock signal CLK_FF1 and provides an output signal Q_Replica which is applied to a first input REF of the phase frequency detector PFD. A second input SYS of the PFD is coupled to the clock output Q_CLKn.
The centering of the clock within the data eye is performed once in a learn mode or continuously, as determined by a control signal “LEARNING MODE 1” applied to the control block CONTROL, by adjusting the phase of the clock output with the phase interpolator.
In this architecture, priority has been put on a constant propagation delay time tpd and on the setup/hold timing. The constant tpd is achieved due to the external feedback path and the matching of signal paths. Since the clock and feedback paths are matched, the tpd from the clock input (CLK) to the clock output (Q_CLKn) and feedback output (Q_FB) is only a function of the operating frequency. The phase difference of the clock output to the feedback output is constant over PVT variations since they are both derived from fixed phase steps of the phase aligner. The tpd from the clock input to the data output (Q_CA/CNTRL) can be changed in small steps and is only a function of the operating frequency.
The approach of the data register in
In a first mode of operation, the “LEARNING MODE 1” signal is always active. The edge of the clock signal Q_CLK is centered in the data eye of the output signal Q_CA/CNTRL irrespective of PVT variations. The control block compensates for differences in clock-tree design and die routing. This mode increases the post-register timing budget for the RAM modules. There is no tpd compensation over PVT variations.
In a second mode of operation, the learning step is carried out only once after the PLL is locked. This will compensate for process variation, but the temperature and supply voltage impact will be compensated only for the learning session. The data eye of the output signal Q_CA/CNTRL may move slightly with changes of temperature and supply voltage while the clock signal Q_CLK remains stable. The memory controller timing will gain due to the stable clock phase while the RAM modules must handle the resulting de-centering. In this mode, the critical timing has been shifted from the memory controller to the RAM modules.
In another example embodiment shown in
The extended functionality of this register allows different delay times for the command/address output signals Q_CA and the control output signals Q_CNTRL to account for the different driver loads. Since the flip-flops FF1 of both groups must have the same clock source (setup/hold requirement), the different delays must be introduced downstream of the flip-flops. To introduce the delays downstream of the flip-flops, a digitally controlled delay element DLY has been inserted in all output driver paths. A second control block CONTROL2 is used in addition to the control block CONTROL1 which corresponds to the control block CONTROL in
An example of a sequence control for the second learning mode is the following:
Those skilled in the art to which the invention relates will appreciate that variations may be made to the described embodiments and other embodiments implemented within the scope of the claimed invention.
Number | Date | Country | Kind |
---|---|---|---|
10 2007 024 955 U | May 2007 | DE | national |
This patent application claims priority from German Patent Application No. 10 2007 024 955.3, filed 30 May 2007, and U.S. Provisional Patent Application No. 61/016,691, filed 26 Dec. 2007, the entireties of which are incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
6310928 | Yunome | Oct 2001 | B1 |
6526374 | Martin | Feb 2003 | B1 |
6687321 | Kada et al. | Feb 2004 | B1 |
20020017939 | Okuda et al. | Feb 2002 | A1 |
20030221044 | Nishio et al. | Nov 2003 | A1 |
20050237117 | Vu et al. | Oct 2005 | A1 |
20050259504 | Murtugh et al. | Nov 2005 | A1 |
Number | Date | Country | |
---|---|---|---|
20080301485 A1 | Dec 2008 | US |
Number | Date | Country | |
---|---|---|---|
61016691 | Dec 2007 | US |