Embodiments of the invention relate generally to semiconductor memory, and more specifically, in one or more described embodiments, to signal paths and adjusting the timing of command signals through the signal path.
In semiconductor memory, proper operation of the memory is based on the correct timing of various internal command and clock signals. For example, in reading data from the memory, internal clock signals that clock data path circuitry to provide (e.g. output) the read data may need to be provided substantially concurrently with internal read command signals to properly enable the data path circuitry to output the read data. If the timing of the internal read command signal is not such that the data path circuitry is enabled at the time the internal clock signal clocks the data path circuitry to output the read data at an expected time, the read command may be inadvertently ignored or the read data provided by the memory may not be correct (e.g., the data associated with another read command). Likewise, in writing data to memory internal clock signals that clock data path circuitry to latch write data may need to be provided with specific timing relationships with internal write command signals to properly enable the data path circuitry to provide the latched write data for writing to memory. Inaccurate timing of the internal command and clock signals could result in the write command being inadvertently ignored or incorrect write data being provided to the memory may (e.g., the write data is associated with another write command). Another example of a command that may require the correct timing of internal clock signals and the command for proper operation include, for example, on-die termination enable commands.
Moreover, as known, a “latency” may be selected (e.g., programmed, desired, used, given, etc.) to set a time, typically in numbers of clock periods tCK, between receipt of a read command by the memory and when the data is output by the memory. A “write latency” may also be selected to set a time, also typically in numbers of tCK, between receipt of a write command by the memory and when the write data is provided to the memory. The latencies may be selected, for example, to accommodate clock signals of different frequencies (i.e., different clock periods).
Complicating the generating of correctly timed internal clock and command signals is the relatively high frequency of memory clock signals. For example, memory clock signals can exceed 1 GHz. Further complicating the matter is that multi-data rate memories may provide and receive data at a rate higher than the memory clock signal, which may represent the rate at which commands may be executed. As a result, the timing domains of command and clock signals may need to be crossed in order to maintain proper timing. An example of a multi-data rate memory is one that outputs read data at a rate twice that of the clock frequency, such as outputting data synchronized with clock edges of the memory clock signal. Further complicating the timing of internal clock and command signals with relatively high frequency clock signals is minimum forward path delay through a signal path. That is, in some instances, the minimum forward path delay of a signal path may prevent internal command signals from being provided for operation according to a selected latency.
An example conventional approach of timing internal command and clock signals is modeling both the clock path and the command path to have the same propagation delay. This may require, however, that delays and/or counter circuitry run continuously. As a result, power consumption may be higher than desirable. Additionally, the propagation delay of the various internal clock and command paths can often vary due to power, voltage, and temperature conditions. For clock and command paths having relatively long propagation delay or additional delay circuitry, the variations due to operating conditions may negatively affect the timing of the internal signals to such a degree that the memory does not operate properly.
Certain details are set forth below to provide a sufficient understanding of embodiments of the invention. However, it will be clear to one skilled in the art that embodiments of the invention may be practiced without these particular details. Moreover, the particular embodiments of the present invention described herein are provided by way of example and should not be used to limit the scope of the invention to these particular embodiments. In other instances, well-known circuits, control signals, timing protocols, and software operations have not been shown in detail in order to avoid unnecessarily obscuring the invention.
The clock circuit 120 is configured to provide a clock signal DLLCLK having a delayed phase relationship to an input clock signal CLKIN. The delay added to the CLKIN signal is adjustable and adjusted to be an amount suitable to substantially synchronize an operation to the CLKIN signal. The DLLCLK signal is provided to the signal path 110, and a delay adjustment signal DELADJ is provided as well. The DELADJ signal may result from determining a suitable amount of delay to add to the CLKIN signal in providing a DLLCLK signal for synchronous operation. The DELADJ signal may be based at least in part on a delay adjustment made in the clock circuit 120. In some embodiments, the DELADJ signal may reflect an amount of adjustable delay added to the CLKIN signal in providing the DLLCLK signal. An example of a clock circuit that may be used for the clock circuit 120 is a delay-locked loop (DLL). Other clock circuits may be used as well.
The forward path measurement circuit 130 is configured to measure a minimum forward path delay for the signal path 110. The forward path delay of the signal path 110 is the propagation delay of the signal path 110. A minimum forward path delay results from the inherent propagation delays of circuits in the signal path 110, and without any additional delay that may be added. As previously discussed, additional delay may be added to adjust the timing of a signal propagating through the signal path 110, as well as to provide the signal path 110 with a propagation delay to accommodate a selected latency. The forward path measurement circuit 130 provides a count N of clock cycles that is representative of the minimum forward path delay of the signal path 110. In some embodiments, for example, the embodiment of
The signal path 110 of the apparatus of
In operation, a command represented by the CMDIN signal is provided to the signal path 110 and propagated through the buffer 140, adjustable delay circuit 144, buffer 148, and shift circuits 152, 156 to the signal distribution network 160. The variable shift circuit 152 adds clock cycles of the DLLCLK signal to the propagating CMDIN signal to provide a resulting propagation delay for the signal path 110 that will accommodate the selected latency.
At time T2 an (n+1)-pulse of the DLLCLK signal has a rising edge corresponding to a rising edge of the (n+1)-pulse of the CLKIN signal. The (n+1)-pulse of the DLLCLK signal latches (e.g., captures) the CMDDEL signal in the variable shift circuit 152. The DLLCLK signal clocks the variable shift circuit 152 to further delay the CMDDEL signal by a number of clock cycles of the DLLCLK to provide a resulting propagation delay for the signal path 110 that will accommodate the selected latency
As previously discussed, the number of additional clock cycles added to a command propagating through the signal path 110 may be based at least in part on a selected latency (e.g., CL and/or CWL) and the N count. An adjustment factor may also be considered. As also previously discussed, examples of calculating the number of additional clock cycles from at least CL/CWL and the N count are (CWL-N-4) clock cycles of the DLLCLK signal for write commands and ODT commands, and (CL-N-3) clock cycles of the DLLCLK signal for read commands. It can be seen from the example calculations of additional clock cycles that the number of additional clock cycles may be negative for some combinations of latency and N count. Generally, such situations may occur where the selected latency (in number of clock cycles) is low and the N count is high (e.g., the clock frequency is relatively high resulting in a relatively high N count for the minimum forward path delay of the signal path 110).
A maximum N count Nmax may be calculated for various latencies at which the number of additional clock cycles becomes negative. For example, using the example calculation with reference to CWL:
With reference to CL:
In some embodiments of the invention, when an Nmax for a respective latency is exceeded, a signal path may be adjusted (e.g., modified, altered, changed, etc.) to provide a reduced (e.g., decreased, shorter, etc.) minimum forward path delay. As a result, an N count greater than Nmax for a respective latency may be accommodated.
In addition to a buffer 140, an adjustable delay circuit 144, a buffer 148, a variable shift circuit 152, a shift circuit 156, and a signal distribution network 160, the signal path 300 further includes a delay circuit 310 coupled to buffers 140 and 148 and delay control logic 320 coupled to the delay circuit 310 and adjustable delay circuit 144. The delay control logic 320 is provided the selected latency (e.g., CL and/or CWL) and the N count. The control logic 320 is configured to cause the delay circuit 310 to delay the buffered CMDIN signal CMDBUF from the buffer 140 when the N count exceeds the Nmax for a respective latency, rather than having the CMDBUF signal delayed by the delay of the adjustable delay circuit 144. The delay circuit 310 is provided the DELADJ signal and the selected latency (e.g., CL and/or CWL). The selected latency may be provided by the control logic 320, as in the embodiment of
In some embodiments, the CMDBUF signal is delayed through the delay circuit 310 rather than through the adjustable delay circuit 144 by disabling the adjustable delay circuit when the N count is greater than Nmax. In other embodiments, the CMDBUF signal may be provided to the delay circuit 310 and not to the adjustable delay circuit 144, for example, through switches or logic (not shown).
In order to accommodate a situation when the N count is greater than Nmax for a selected latency, the minimum forward path delay may be reduced. In some embodiments, the minimum forward path delay is reduced by removing the propagation delay of the adjustable delay circuit 144. Shown in
Removing the propagation delay of the adjustable delay circuit 144, however, may reduce the minimum forward path delay of the signal path 300 by an amount that may result in the (n−1)-pulse at time T6 unintentionally latching the CMDDEL signal, that is, one clock cycle earlier than expected. This may result in erroneous operation. A delay less than the propagation delay of the adjustable delay circuit 144 may be added to the minimum forward path delay to delay the CMDDEL signal to provide sufficient margin to avoid unintentionally latching the CMDDEL signal earlier than expected, but still allowing the CMDDEL signal to be active early enough so that the n-pulse at time T3 may be used to latch the CMDDEL signal into the variable shift circuit 152. The delay circuit 310 may be used to provide this delay. Illustrated in
In some embodiments, the delay added to the minimum forward path delay (without the propagation delay of the adjustable delay circuit 144) should be different for different latencies. As known, a latency is often selected based on a frequency of the CLKIN signal, for example, a longer latency may be selected for higher CLKIN frequencies, and conversely, a lower latency may be selected for a lower CLKIN frequency. The CLKIN frequency may affect the amount of delay added to the CLKIN signal to provide the DLLCLK signal (e.g., by a clock circuit). As previously discussed, an amount of adjustable delay added by the clock circuit in providing the DLLCLK signal may be represented by the DELADJ signal. As such, the amount of delay added to the minimum forward path delay, for example, by the delay circuit 310 may be different for different latencies.
The CMDBUF1 signal provided to the delay stage 520 is further delayed by delays 522, 524, 526 before being provided to a respective multiplexer 532, 534, 536. The CMDBUF1 signal is also provided to the multiplexers 532, 534, 536 without adding delay. Selection of the delayed or undelayed signal by each of the multiplexers 532, 534, 536 to be provided as a respective CMDBUF2 signal to the multiplexer 540 is based at least in part on the amount of delay added to the CLKIN signal to provide the DLLCLK signal. For example, the multiplexers 532, 534, 536 select the delayed signal when the delay added to the CLKIN signal is relatively long and select the undelayed signal when the delay added to the CLKIN signal is relative short. In some embodiments, the amount of delay added to the CLKIN signal may represented by the DELADJ signal from the clock circuit (e.g., clock circuit 120).
The delay length of each delay 512, 514, 516, and delays 522, 524, 526 may be based, for example, on the number of delay units in an adjustable delay of the clock circuit, the delay length of each delay unit, and the range of clock frequencies of CLKIN that may be provided. Other factors may be considered as well. Generally, however, the total delay provided through the delays 512, 514, 516, and delays 522, 524, 526 should be a non-zero delay that is less than the propagation delay of the adjustable delay circuit 144.
The CMDBUF2 signals are provided to the multiplexer 540 which selects one of the CMDBUF2 signals to be provided as the CMDBUFD signal based at least in part on the selected latency. For example, the CMDBUF2(5) signal provided by the multiplexer 532 may be selected by the multiplexer 540 to be provided as the CMDBUFD signal when a first latency is selected, the CMDBUF2(6) signal provided by, the multiplexer 534 may be selected when a second latency is used, and the CMDBUF2(7) signal provided by the multiplexer 536 may be selected when a third latency is selected.
In operation, a CMDBUF signal is delayed by the delays 512, 514, 516, one of which is selected by the multiplexer 518 to be provided as the CMDBUF1 signal based on the selected latency. The selected signal is provided to the delay stage 520 and delayed by the delays 522, 524, 526 and provided to respective multiplexers 532, 534, 536. The undelayed CMDBUF1 signal is also provided to the multiplexers 532, 534, 536. Each of the multiplexers 532, 534, 536 provide the respective delayed signal or undelayed signal as a respective CMDBUF2 signal based on the amount of delay added to the CLKIN signal to provide the DLLCLK signal (e.g., as represented by the DELADJ signal). Generally, the delayed signal is selected when the delay added to the CLKIN signal is relatively long. The CMDBUF2 signals are provided to the multiplexer 540 to be selected and provided as the CMDBUFD signal based on the selected latency. The selected CMDBUF2 signal will be delayed by an appropriate amount to provide sufficient margin to avoid being unintentionally latched earlier than expected but early enough to be latched one clock pulse earlier.
In addition to a buffer 140, an adjustable delay circuit 144, a buffer 148, a variable shift circuit 152, a shift circuit 156, and a signal distribution network 160, the signal path 600 further includes a switch circuit 610 and bypass path 620. A controller (not shown) may provide the SW signal to the switch circuit 610. The switch circuit 610 is controlled by a switch signal SW to provide the CMDDEL signal to the variable shift circuit 152 or to the bypass path 620. The switch circuit 610 provides the CMDDEL signal to the bypass path 620 to bypass the variable shift circuit 152 when the N count exceeds the Nmax for a selected latency, thereby removing any propagation delay through the variable shift circuit 152 from the signal path 600. The variable shift circuit 152 may have a minimum propagation delay of one clock cycle. As a result of removing the propagation delay of the variable shift circuit 152, the forward path delay of the signal path 600 is reduced by the propagation delay of the variable shift circuit 152. In order to accommodate a situation when the N count is greater than Nmax for a selected latency, the minimum forward path delay may be reduced. In some embodiments, the minimum forward path delay is reduced by bypassing the variable shift circuit 152. By reducing the minimum forward path delay, the CMDDEL signal may be provided to the signal distribution network 160 earlier, for example, by a clock cycle of the DLLCLK signal.
At time T2 an (n+1)-pulse of the DLLCLK signal has a rising edge corresponding to a rising edge of the (n+1)-pulse of the CLKIN signal. As previously discussed with reference to
In some embodiments, a signal path may combine the embodiments of the signal path 300 of
The row and column addresses are provided by the address latch 810 to a row address decoder 822 and a column address decoder 828, respectively. The column address decoder 828 selects bit lines extending through the array 802 corresponding to respective column addresses. The row address decoder 822 is connected to word line driver 824 that activates respective rows of memory cells in the array 802 corresponding to received row addresses. The selected data line (e.g., a bit line or bit lines) corresponding to a received column address are coupled to a read/write circuitry 830 to provide read data to an input/output data block 834 via an input-output data bus 840. Write data are provided to the memory array 802 through the I/O data block 834 and the memory array read/write circuitry 830. The I/O data block 834 may include clocked circuitry that operate responsive to an internal clock signal DLLCLK and an internal command signal CMDOUT, for example.
The memory 800 further includes clock circuit 812, forward path measurement circuit 813, and signal path 814. The clock circuit 812 receives a input clock signal CLKIN and propagates the internal clock signal DLLCLK which is based at least in part on the CLKIN signal to the I/O data block 834. The forward path measurement circuit 813 measures a forward path delay in number of clock cycles of the DLLCLK signal and provides a count N to the signal path 814. The signal path 814 further receives a latency signal CL, CWL and the DLLCLK. The signal path 814 may be configured to adjust a minimum forward path delay to accommodate circumstances when the N count is greater than a Nmax count for a latency. The signal path 814 may be implemented using a signal path according to an embodiment of the invention. The signal path 814, which is shown in
From the foregoing it will be appreciated that, although specific embodiments of the invention have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. Accordingly, the invention is not limited except as by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5004933 | Widener | Apr 1991 | A |
6111810 | Fujita | Aug 2000 | A |
6219384 | Kliza et al. | Apr 2001 | B1 |
6260128 | Ohshima et al. | Jul 2001 | B1 |
6275077 | Tobin et al. | Aug 2001 | B1 |
6424592 | Maruyama | Jul 2002 | B1 |
6438055 | Taguchi et al. | Aug 2002 | B1 |
6459313 | Godbee et al. | Oct 2002 | B1 |
6489823 | Iwamoto | Dec 2002 | B2 |
6510095 | Matsuzaki et al. | Jan 2003 | B1 |
6636110 | Ooishi et al. | Oct 2003 | B1 |
6687185 | Keeth et al. | Feb 2004 | B1 |
6710726 | Kim et al. | Mar 2004 | B2 |
6744285 | Mangum et al. | Jun 2004 | B2 |
6781861 | Gomm et al. | Aug 2004 | B2 |
6839288 | Kim et al. | Jan 2005 | B1 |
6861901 | Prexl et al. | Mar 2005 | B2 |
6914798 | Kwon et al. | Jul 2005 | B2 |
6930955 | Johnson et al. | Aug 2005 | B2 |
6973008 | Krause | Dec 2005 | B2 |
6980479 | Park | Dec 2005 | B2 |
6988218 | Drexler | Jan 2006 | B2 |
7042799 | Cho | May 2006 | B2 |
7046060 | Minzoni et al. | May 2006 | B1 |
7058799 | Johnson | Jun 2006 | B2 |
7061941 | Zheng | Jun 2006 | B1 |
7065001 | Johnson et al. | Jun 2006 | B2 |
7111185 | Gomm et al. | Sep 2006 | B2 |
7119591 | Lin | Oct 2006 | B1 |
7170819 | Szczypinski | Jan 2007 | B2 |
7187599 | Schnell et al. | Mar 2007 | B2 |
7209396 | Schnell | Apr 2007 | B2 |
7248512 | Shin | Jul 2007 | B2 |
7268605 | Fang et al. | Sep 2007 | B2 |
7269754 | Ramaswamy et al. | Sep 2007 | B2 |
7280430 | Lee | Oct 2007 | B2 |
7336752 | Vlasenko et al. | Feb 2008 | B2 |
7340632 | Park | Mar 2008 | B2 |
7375560 | Lee et al. | May 2008 | B2 |
7411852 | Nishioka et al. | Aug 2008 | B2 |
7443216 | Gomm et al. | Oct 2008 | B2 |
7451338 | Lemos | Nov 2008 | B2 |
7463534 | Ku et al. | Dec 2008 | B2 |
7489172 | Kim | Feb 2009 | B2 |
7509517 | Matsumoto et al. | Mar 2009 | B2 |
7590013 | Yu et al. | Sep 2009 | B2 |
7593273 | Chu et al. | Sep 2009 | B2 |
7609584 | Kim et al. | Oct 2009 | B2 |
7616040 | Motomura | Nov 2009 | B2 |
7631248 | Zakharchenko et al. | Dec 2009 | B2 |
7643334 | Lee et al. | Jan 2010 | B1 |
7656745 | Kwak | Feb 2010 | B2 |
7660187 | Johnson et al. | Feb 2010 | B2 |
7663946 | Kim | Feb 2010 | B2 |
7671648 | Kwak | Mar 2010 | B2 |
7698589 | Huang | Apr 2010 | B2 |
7715260 | Kuo et al. | May 2010 | B1 |
7716510 | Kwak | May 2010 | B2 |
7751261 | Cho | Jul 2010 | B2 |
7773435 | Cho | Aug 2010 | B2 |
7822904 | LaBerge | Oct 2010 | B2 |
7826305 | Fujisawa | Nov 2010 | B2 |
7826583 | Jeong et al. | Nov 2010 | B2 |
7872924 | Ma | Jan 2011 | B2 |
7885365 | Hagleitner et al. | Feb 2011 | B2 |
7913103 | Gold et al. | Mar 2011 | B2 |
7945800 | Gomm et al. | May 2011 | B2 |
7948817 | Coteus et al. | May 2011 | B2 |
7969813 | Bringivijayaraghavan et al. | Jun 2011 | B2 |
7983094 | Roge et al. | Jul 2011 | B1 |
8004884 | Franceschini et al. | Aug 2011 | B2 |
8018791 | Kwak | Sep 2011 | B2 |
8030981 | Kim | Oct 2011 | B2 |
8144529 | Chuang et al. | Mar 2012 | B2 |
8321714 | Wu et al. | Nov 2012 | B2 |
8358546 | Kim et al. | Jan 2013 | B2 |
8392741 | Kim et al. | Mar 2013 | B2 |
8509011 | Bringivijayaraghavan | Aug 2013 | B2 |
8644096 | Bringivijayaraghavan | Feb 2014 | B2 |
8788896 | Tekumalla | Jul 2014 | B2 |
9001955 | Lamanna et al. | Apr 2015 | B2 |
20010015924 | Arimoto et al. | Aug 2001 | A1 |
20020057624 | Manning | May 2002 | A1 |
20030117864 | Hampel et al. | Jun 2003 | A1 |
20050024107 | Takai et al. | Feb 2005 | A1 |
20050047222 | Rentschler | Mar 2005 | A1 |
20050132043 | Wang et al. | Jun 2005 | A1 |
20050270852 | Dietrich et al. | Dec 2005 | A1 |
20060062341 | Edmondson et al. | Mar 2006 | A1 |
20060155948 | Ruckerbauer | Jul 2006 | A1 |
20060182212 | Hwang et al. | Aug 2006 | A1 |
20060193194 | Schnell | Aug 2006 | A1 |
20070033427 | Correale, Jr. et al. | Feb 2007 | A1 |
20070046346 | Minzoni | Mar 2007 | A1 |
20070088903 | Choi | Apr 2007 | A1 |
20070192651 | Schoch | Aug 2007 | A1 |
20070291558 | Joo | Dec 2007 | A1 |
20080080267 | Lee | Apr 2008 | A1 |
20080080271 | Kim | Apr 2008 | A1 |
20080082707 | Gupta et al. | Apr 2008 | A1 |
20080137471 | Schnell et al. | Jun 2008 | A1 |
20080144423 | Kwak | Jun 2008 | A1 |
20090232250 | Yamada et al. | Sep 2009 | A1 |
20090315600 | Becker et al. | Dec 2009 | A1 |
20100001762 | Kim | Jan 2010 | A1 |
20100066422 | Tsai | Mar 2010 | A1 |
20100124090 | Arai | May 2010 | A1 |
20100124102 | Lee et al. | May 2010 | A1 |
20100165769 | Kuroki | Jul 2010 | A1 |
20100165780 | Bains et al. | Jul 2010 | A1 |
20100195429 | Sonoda | Aug 2010 | A1 |
20100199117 | Kwak | Aug 2010 | A1 |
20100232213 | Hwang et al. | Sep 2010 | A1 |
20100254198 | Bringivijayaraghavan et al. | Oct 2010 | A1 |
20110047319 | Jeon et al. | Feb 2011 | A1 |
20110055671 | Kim et al. | Mar 2011 | A1 |
20110102039 | Shin | May 2011 | A1 |
20110228625 | Bringivijayaraghavan et al. | Sep 2011 | A1 |
20110238866 | Zitlaw | Sep 2011 | A1 |
20110238941 | Xu et al. | Sep 2011 | A1 |
20110298512 | Kwak | Dec 2011 | A1 |
20110314324 | Ozdemir | Dec 2011 | A1 |
20120084575 | Flores et al. | Apr 2012 | A1 |
20120124317 | Mirichigni et al. | May 2012 | A1 |
20120212268 | Kim | Aug 2012 | A1 |
20130141994 | Ito et al. | Jun 2013 | A1 |
20130250701 | Bringivijayaraghavan et al. | Sep 2013 | A1 |
20130321052 | Huber et al. | Dec 2013 | A1 |
20130329503 | Bringivijayaraghavan | Dec 2013 | A1 |
20140010025 | Bringivijayaraghavan | Jan 2014 | A1 |
20140035640 | Kwak et al. | Jan 2014 | A1 |
20140055184 | Vankayala | Feb 2014 | A1 |
20140119141 | Tamlyn et al. | May 2014 | A1 |
20140176213 | Rylov | Jun 2014 | A1 |
20140177359 | Kumar et al. | Jun 2014 | A1 |
20140258764 | Kwak | Sep 2014 | A1 |
Entry |
---|
Related U.S. Appl. No. 13/543,698, filed Jul. 6, 2012. |
Related U.S. Appl. No. 13/074,972, filed Mar. 29, 2011. |
Related U.S. Appl. No. 13/093,640, filed Apr. 25, 2011. |
Related U.S. Appl. No. 13/364,198, filed Feb. 1, 2012. |
Related U.S. Appl. No. 13/486,674, filed Jun. 1, 2012. |
“Interfacing DDR SDRAM with Stratix II Devices”, Version 3.2, Altera Corp, Sep. 2008. |
Lee, “How to Implement DDR SGRAM in Graphic System”, Samsung Electric, 1998. |
Related U.S. Appl. No. 13/592,244, filed Aug. 22, 2012. |
Number | Date | Country | |
---|---|---|---|
20130342254 A1 | Dec 2013 | US |