WO2011061875A1 - メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法 - Google Patents

メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法 Download PDF

Info

Publication number
WO2011061875A1
WO2011061875A1 PCT/JP2010/004502 JP2010004502W WO2011061875A1 WO 2011061875 A1 WO2011061875 A1 WO 2011061875A1 JP 2010004502 W JP2010004502 W JP 2010004502W WO 2011061875 A1 WO2011061875 A1 WO 2011061875A1
Authority
WO
WIPO (PCT)
Prior art keywords
delay
data signal
unit
latch
drive capability
Prior art date
Application number
PCT/JP2010/004502
Other languages
English (en)
French (fr)
Inventor
馬場貴英
Original Assignee
パナソニック株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Publication of WO2011061875A1 publication Critical patent/WO2011061875A1/ja
Priority to US13/474,154 priority Critical patent/US8344776B2/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/106Data output latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1063Control signal output circuits, e.g. status or busy flags, feedback command signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/109Control signal input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1093Input synchronization

Definitions

  • the present invention relates to a memory interface circuit and a drive capability adjustment method for a memory device, and more particularly to a memory device that outputs a first data signal and a first strobe signal and can change the drive capability for driving the first data signal.
  • the memory interface circuit connected to the.
  • a memory device capable of inputting / outputting data synchronized with a clock, such as SDRAM (Synchronous Random Access Memory), is often used as processing increases.
  • data DQ
  • DQS data strobe signal
  • the effective period of data for the strobe signal tends to be shortened as the operating frequency of the memory device increases. This makes it difficult to input / output stable data in consideration of process characteristics, temperature changes, voltage changes, and fluctuations in the timing relationship between data and strobe signals associated with impedance matching when a memory device is mounted. From such a background, in recent memory systems, a function called ZQ calibration for adjusting the drive capability of a memory device is generally mounted.
  • the memory system described in Patent Document 1 includes a variable delay unit that adjusts a delay amount of a data or strobe signal using a variable delay element.
  • the memory system disclosed in Patent Document 1 realizes stable data input / output by adjusting the timing relationship between the data signal and the stream signal to an appropriate access timing.
  • the possible range of the delay amount of the variable delay element capable of stable data input / output can be increased.
  • a drive capability adjustment function such as the ZQ calibration described above, it is possible to adjust the drive capability in consideration of variations in impedance matching when the memory device is mounted for each chip. Thereby, the memory system can realize more stable data input / output.
  • the variation amount of the access timing must be within the range of the operation margin as the access timing variation during the normal operation.
  • the present invention solves the above-mentioned conventional problems, and an object of the present invention is to provide a memory interface circuit capable of performing a drive capability calibration operation during normal operation.
  • a memory interface circuit outputs a first data signal and is connected to a memory device capable of changing a drive capability for driving the first data signal.
  • a first delay unit that generates a first delayed strobe signal by delaying a first strobe signal output from the memory device by a first delay amount; and a timing indicated by the first delayed strobe signal.
  • the first data latch unit that latches the first data signal as a first latch data signal
  • the second data latch unit that latches the first data signal as a second latch data signal, and the value of the first delay amount
  • a first delay control unit that sequentially changes the first data signal, and the first data latch unit converts the first data signal into the first latch.
  • a first range calculation unit that calculates a first delay range width that is a range of a value range of the first delay amount that can be correctly latched as a data signal; and the memory device of the memory device so that the first delay range width is widened.
  • a drive capacity setting unit for adjusting the drive capacity.
  • FIG. 1 is a block diagram of a memory system according to Embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing a delay range according to Embodiment 1 of the present invention.
  • FIG. 3 is a flowchart of the drive capacity adjustment process according to Embodiment 1 of the present invention.
  • FIG. 4 is a diagram showing drive capability and window width according to the first embodiment of the present invention.
  • FIG. 5 is a diagram showing the drive capability and the window width according to the first embodiment of the present invention.
  • FIG. 6 is a diagram showing a drive capability and a window width according to the first embodiment of the present invention.
  • FIG. 7 is a block diagram of a memory system according to Embodiment 2 of the present invention.
  • FIG. 8 is a block diagram of a memory system according to Embodiment 3 of the present invention.
  • the memory interface circuit according to the first embodiment of the present invention includes a monitoring latch circuit separately from a latch circuit for outputting read data to the outside.
  • the memory interface circuit according to the first embodiment of the present invention calculates the width of the range of the delay amount value by which the monitoring latch circuit can correctly latch the read data, and increases the width of the memory device. Adjust the driving ability of the.
  • the memory interface circuit according to the first embodiment of the present invention can perform the drive capability calibration operation during the normal operation.
  • FIG. 1 is a block diagram showing a configuration of a memory system 100 according to Embodiment 1 of the present invention.
  • the memory system 100 shown in FIG. 1 includes a memory device 101 and a memory interface circuit 114.
  • the memory device 101 and the memory interface circuit 114 are connected to each other by at least the data signal line 102, the strobe signal line 103, and the command signal line 113.
  • the memory device 101 may be an SDR (Single Data Rate) -SDRAM that latches (holds) data on either the rising edge or the falling edge of the strobe signal, and both the rising edge and the falling edge of the strobe signal. It may be a DDR (Double Data Rate) -SDRAM that latches data in
  • the memory device 101 outputs the read data 123 and the strobe signal 129. Further, the memory device 101 can change the drive capability for driving the read data 123 by an external setting.
  • the memory interface circuit 114 writes the write data 121 to the memory device 101.
  • the memory interface circuit 114 reads the read data 123 from the memory device 101 and outputs the read data 123 to the outside as output read data 122. Further, the memory interface circuit 114 has a function of adjusting the timing of the read data 123 and the strobe signal 129 by adjusting a delay amount for delaying the strobe signal 129 during normal operation. Further, the memory interface circuit 114 has a function of adjusting the drive capability of the memory device 101 during normal operation.
  • the data signal line 102 is used to transfer write data 121 written to the memory device 101 from the memory interface circuit 114 and read data 123 read from the memory device 101.
  • the data signal line 102 is generally a bidirectional signal line. In FIG. 1, there is one data signal line 102, but the data signal line 102 may be composed of a plurality of data signal lines corresponding to one strobe signal line 103.
  • the strobe signal line 103 is used to output a write strobe signal from the memory interface circuit 114 to the memory device 101 when the write data 121 is written from the memory interface circuit 114 to the memory device 101.
  • the strobe signal line 103 is used to output a read strobe signal 129 from the memory device 101 to the memory interface circuit 114 when the memory interface circuit 114 reads the read data 123 from the memory device 101.
  • the strobe signal line 103 is generally a bidirectional signal line. In FIG. 1, a circuit for generating the write strobe signal is omitted.
  • the read strobe signal 129 is also simply referred to as a strobe signal 129.
  • the command signal line 113 is generally composed of a plurality of signal lines, and is used for setting operating conditions of the memory device 101 including drive capability setting.
  • the command signal line 113 may also be used as another signal line such as an address signal of the memory device 101 as long as the command signal line 113 is used for setting operation conditions under a certain condition.
  • the memory interface circuit 114 includes a dynamic delay calibration unit 115 and a drive capability setting unit 116.
  • the dynamic delay calibration unit 115 is compared with the direction control unit 104, the operation data latch unit 105, the operation delay control unit 106, the monitoring data latch unit 107, and the monitoring delay control unit 108. It includes a determination unit 109, an operation delay unit 117, and a monitoring delay unit 118.
  • the drive capability setting unit 116 includes a range calculation unit 110, a drive capability control unit 111, and a command generation unit 112.
  • these components in the memory interface circuit 114 correspond to the rising edge and the falling edge of the strobe signal 129 for one strobe signal line 103, respectively.
  • Two sets may be provided. Thereby, the timing adjustment can be performed independently for each of the rising edge and the falling edge of the strobe signal 129.
  • the direction control unit 104 controls whether the write data 121 is transferred from the internal circuit to the data signal line 102 or whether the read data 123 is transferred from the data signal line 102 to the operation data latch unit 105 and the monitoring data latch unit 107. To do.
  • the internal circuit is a circuit that uses the memory device 101 via the memory interface circuit 114.
  • the function of the internal circuit is not limited.
  • An example of the internal circuit is a CPU (Central Processing Unit).
  • the operation delay unit 117 generates the operation strobe signal 124 by delaying the strobe signal 129 output from the memory device 101 to the strobe signal line 103 by the operation delay amount.
  • the monitoring delay unit 118 generates the monitoring strobe signal 125 by delaying the strobe signal 129 output from the memory device 101 to the strobe signal line 103 by the monitoring delay amount.
  • the operation data latch unit 105 latches the read data 123 transmitted through the direction control unit 104 at a timing (rising edge) indicated by the operation strobe signal 124.
  • the operation data latch unit 105 outputs the latched read data 123 as output read data 122 to the internal circuit and outputs the output read data 122 to the comparison determination unit 109.
  • the monitoring data latch unit 107 latches the read data 123 transmitted through the direction control unit 104 at the timing (rising edge) indicated by the monitoring strobe signal 125.
  • the monitoring data latch unit 107 outputs the latched read data 123 as monitoring data 126 to the comparison determination unit 109.
  • the monitoring delay control unit 108 sets the monitoring delay amount used by the monitoring data latch unit 107.
  • the comparison determination unit 109 compares, for example, the value of the output read data 122 latched by the operation data latch unit 105 with the value of the monitoring data 126 latched by the monitoring data latch unit 107 for each read operation. For example, the comparison determination unit 109 determines whether or not the values of the two data match.
  • the operation data latch unit 105 and the monitoring data latch unit 107 are composed of a plurality of bits. Further, the comparison determination unit 109 compares a plurality of bits of data.
  • the range calculation unit 110 uses the determination result by the comparison determination unit 109 to monitor the range of the monitoring delay amount that the monitoring data latch unit 107 can correctly latch the read data 123 as the monitoring data 126 (hereinafter, the delay range 127). ) Is calculated.
  • the delay range 127 is a range of values of the operation delay amount that the operation data latch unit 105 can correctly latch the read data 123 as the output read data 122.
  • FIG. 2 is a diagram showing the delay range 127.
  • the delay range 127 includes a boundary 140 on the side having a smaller delay value that cannot be latched correctly when the delay value is smaller than that, and a boundary on the side having a larger delay value that cannot be latched if the delay value is larger than that.
  • 141 is the range of the delay amount with respect to 141.
  • the monitoring delay control unit 108 sequentially changes the value of the monitoring delay amount for each read access, for example.
  • the comparison determination unit 109 determines whether or not the monitoring data 126 and the output read data 122 match for each value of the monitoring delay amount changed by the monitoring delay control unit 108.
  • the range calculation unit 110 stores the determination result by the comparison determination unit 109 for each value of the monitoring delay amount. Further, the range calculation unit 110 calculates the range of the monitoring delay amount value in which the output read data 122 and the monitoring data 126 match as the delay range 127.
  • the range calculation unit 110 may calculate, as the delay range 127, a range in which a predetermined margin is added to the range of the monitoring delay amount value in which the output read data 122 and the monitoring data 126 match.
  • the delay range 127 may be an inner range by a predetermined value with respect to the range of the monitoring delay amount in which the output read data 122 and the monitoring data 126 match.
  • the operation delay control unit 106 sets the operation delay amount used by the operation delay unit 117 in the delay range 127 calculated by the range calculation unit 110. Specifically, the operation delay control unit 106 calculates an operation delay amount using the delay range 127. For example, the operation delay control unit 106 calculates a delay amount obtained by adding a predetermined margin to the boundary of the delay range 127 as the operation delay amount.
  • the monitoring data latch unit 107 monitors the monitoring data latch unit 107 while continuing the normal operation by latching the output read data 122 by the operation data latch unit 105 through a series of operations by the dynamic delay calibration unit 115.
  • the dynamic delay calibration unit 115 can realize delay amount calibration without interrupting the normal operation.
  • the internal circuit uses the output read data 122 latched by the operation data latch unit 105 and does not use the monitoring data 126 latched by the monitoring data latch unit 107. Therefore, a delay value near the boundary of the delay range 127 is set in the monitoring data latch unit 107, and even if the monitoring data latch unit 107 latches erroneous data, the operation of the internal circuit is not affected.
  • the range calculation unit 110 calculates the range of the delay amount in which the read data 123 can be correctly latched.
  • the range calculation unit 110 has a small delay value that cannot be latched correctly when the delay value becomes smaller than that. Only one of the boundary 140 on the side and the boundary 141 on the larger delay value that cannot be latched when the delay value is larger than that may be calculated.
  • the operation delay control unit 106 may calculate a delay amount obtained by adding a predetermined margin to the boundary calculated by the range calculation unit 110 as the operation delay amount.
  • the dynamic delay calibration unit 115 monitors two sets of monitoring data latch units independently for monitoring a boundary having a smaller delay value and a boundary having a larger delay value. 107, a monitoring delay control unit 108, and a monitoring delay unit 118 may be provided.
  • the range calculation unit 110 calculates a window width 128 indicating the width of the calculated delay range 127.
  • the drive capability setting unit 116 adjusts the drive capability of the memory device 101 so that the window width 128 is widened.
  • the drive capability setting unit 116 sequentially changes the drive capability of the memory device 101.
  • the drive capacity setting unit 116 stores the window width 128 calculated by the range calculation unit 110 for each changed drive capacity.
  • the drive capability setting unit 116 adjusts the drive capability of the memory device 101 to the drive capability of the largest window width 128 among the plurality of stored window widths 128.
  • the drive capability control unit 111 stores the relationship between the window width 128 calculated by the range calculation unit 110 and the drive capability set in the memory device 101. In addition, the drive capability control unit 111 sends the setting value of the updated drive capability to the command generation unit 112.
  • the command generation unit 112 issues a drive capability setting command to the memory device 101 through the command signal line 113 based on the drive capability setting value sent from the drive capability control unit 111.
  • the read data 123, the strobe signal 129, and the window width 128 correspond to the first data signal, the first strobe signal, and the first delay range width of the present invention, respectively.
  • the monitoring delay unit 118, the monitoring delay amount, the monitoring strobe signal 125, the monitoring data latch unit 107, the monitoring data 126, and the monitoring delay control unit 108 are respectively the first delay unit and the first delay unit of the present invention. This corresponds to one delay amount, a first delay strobe signal, a first data latch unit, first latch data, and a first delay control unit.
  • the operation delay unit 117, the operation delay amount, the operation strobe signal 124, the operation data latch unit 105, the output read data 122, and the operation delay control unit 106 are the second delay unit, the second delay of the present invention, and the like.
  • FIG. 3 is a flowchart of the drive capacity adjustment operation by the memory system 100.
  • the range calculation unit 110 calculates the window width 128 (S101).
  • the drive capability control unit 111 determines whether or not the window width 128 calculated by the range calculation unit 110 is equal to or larger than the reference window width 130 (S102).
  • the reference window width 130 indicates the window width 128 that requires readjustment of drive capability because stable access is not possible when the window width 128 becomes narrower than this value when the present apparatus is used.
  • the reference window width 130 may be input from the outside as a condition input, may be generated by a processing unit included in the memory interface circuit 114, or may be stored in a storage unit included in the memory interface circuit 114.
  • the reference window width 130 is a register value set by software.
  • steps S101 and S102 are repeated each time the window width 128 is calculated by the range calculation unit 110 until it is determined that the window width 128 is less than the reference window width 130 (No in S102).
  • step S102 If it is determined in step S102 that the window width 128 is less than the reference window width 130 (No in S102), the drive capability control unit 111 then stores the current window width 128 and the drive capability value ( S103).
  • FIG. 4 is a diagram illustrating an example of the window width 128 and the drive capability value stored in the drive capability control unit 111.
  • the drive capability value 602 is stored as 40 mA
  • the window width 128 at that time is stored as 13 digits.
  • mA which is a drive current value
  • digit which is a management unit of monitoring delay amount in the monitoring delay unit 118
  • Step S104 and subsequent steps are drive capacity calibration operations.
  • the drive capability control unit 111 changes the setting to increase the drive capability value by 1 (S104).
  • the command generation unit 112 increases the drive capability value of the memory device 101 by one.
  • the drive capability value is increased by one. This indicates that when the drive current value is used as the drive capability value, the drive current value is increased by 1 mA.
  • the increase amount of the drive current value corresponding to increasing the drive capability value by 1 may be an arbitrary constant value. That is, the drive capability control unit 111 may increase the drive capability value by n (n is an arbitrary natural number). Further, as described above, the value corresponding to the drive capability value is not limited to the drive current value.
  • step S104 the drive capability of the data signal line 102 of the memory device 101 changes, and the range (window) of the delay value in which the read data 123 can be latched by the monitoring strobe signal 125 changes.
  • the range calculation unit 110 calculates the window width 128 after changing the drive capability (S105).
  • the window width may be narrowed or widened, but this change is detected by the monitoring data latch unit 107. Therefore, if the change amount of the drive capability value is sufficiently small, erroneous data is not latched by the operation data latch unit 105, and normal operation can be continued.
  • the drive capability control unit 111 stores the new drive capability value changed in step S104 and the new window width 128 calculated in step S105 (S106).
  • the drive capability control unit 111 determines whether or not the window width 128 has increased by comparing the new window width 128 stored in step S106 with the previously stored window width 128 (S107). ). If the window width 128 has increased (Yes in S107), the process of step S104 is performed again. Note that there are various criteria for determining whether or not the window width is increased. When the window width 128 is the same, the window width 128 is slightly decreased, or the window width 128 is slightly increased. In this case, the drive capability control unit 111 may determine that the window width 128 has increased.
  • the drive capability control unit 111 subtracts the previously stored window width 128 from the new window width 128 stored in step S106, and if the subtraction result is equal to or greater than a predetermined threshold, the window width 128 increases. If the subtraction result is less than the threshold value, it is determined that the window width 128 has decreased.
  • FIG. 5 is a diagram showing an example of the drive capability value and the window width 128 stored in the drive capability control unit 111 in a state where the operations of the above-described steps S104 to S107 are repeated a plurality of times.
  • the window width 128 increases every time the drive capability value is increased up to the drive capability value 604. However, when the drive capacity value 606 is increased, the window width 128 decreases.
  • the drive capability control unit 111 changes the setting so that the drive capability value is decreased by 1 (S108). As a result, the window width 128 changes.
  • the range calculation unit 110 calculates the window width 128 after changing the drive capability (S109).
  • the drive capability control unit 111 stores the new drive capability value changed in step S108 and the new window width 128 calculated in step S109 (S110).
  • the drive capacity control unit 111 determines whether or not the window width 128 is increased by comparing the new window width 128 stored in step S110 with the previously stored window width 128 ( S111). If the window width 128 has increased (Yes in S111), the process of step S108 is performed again. Note that there are various criteria for determining whether or not the window width is increased. When the window width 128 is the same, the window width 128 is slightly decreased, or the window width 128 is slightly increased. In this case, the drive capability control unit 111 may determine that the window width 128 has increased.
  • the drive capability control unit 111 subtracts the previously stored window width 128 from the new window width 128 stored in step S106, and if the subtraction result is equal to or greater than a predetermined threshold, the window width 128 increases. If the subtraction result is less than the threshold value, it is determined that the window width 128 has decreased.
  • the drive capability control unit 111 determines a drive capability value that maximizes the window width 128 from the stored drive capability value and the window width 128.
  • the drive capacity value to be set is determined (S112). In the example shown in FIG. 5, since the window width 128 of the drive capability value 604 is the largest, this drive capability value 604 is determined as the drive capability value to be set.
  • the command generator 112 sets the drive capability value of the memory device 101 by generating a command for setting the optimum drive capability value determined in step S112 (S113).
  • the drive capability setting unit 116 updates the reference window width 130 used in step S101 according to the newly set drive capability. For example, the drive capacity setting unit 116 sets the window width 128 when the drive capacity is newly set, or a value obtained by adding or subtracting a predetermined value to the window width 128 as the new reference window width 130.
  • the operation of increasing the drive capability value (steps S104 to S107) and then the operation of decreasing the drive capability value (steps S108 to S111) are performed.
  • the drive capability value is decreased.
  • An operation of increasing the drive capability value may be performed after the operation is performed.
  • step S112 the drive capability value determined in step S112 is larger than the drive capability value stored in step S103 has been described as an example, but the drive capability value stored in step S103 is determined in step S112. Even in the case where it is smaller than the capacity value, the optimum drive capacity value can be similarly searched.
  • FIG. 6 is a diagram showing an example of the drive capability value and the window width 128 stored in the drive capability control unit 111 in this case.
  • the number of loop operations in steps S108 to S111 is larger than the number of loop operations in steps S104 to S107.
  • the window width 128 of the capability value 804 is determined as the optimum value.
  • the memory interface circuit 114 is different from the circuit for normal operation (the operation delay unit 117 and the operation data latch unit 105) in addition to the monitoring circuit (the monitoring delay unit). 118 and the monitoring data latch unit 107). Further, the memory interface circuit 114 calculates a delay range 127 in which the read data 123 can be correctly latched by changing the delay amount of the monitoring circuit. Further, the memory interface circuit 114 adjusts the delay amount of the operation delay unit 117 using the calculated delay range 127.
  • the memory interface circuit 114 can calibrate the delay amount by using a monitoring circuit that does not affect the normal operation. Therefore, the memory interface circuit 114 can calibrate the delay amount during the normal operation without interrupting the normal operation.
  • the memory interface circuit 114 calculates the window width 128 from the delay range 127 calculated using the monitoring circuit. In addition, the memory interface circuit 114 adjusts the drive capability of the memory device 101 so that the calculated window width 128 is widened.
  • the memory interface circuit 114 can calibrate the drive capability of the memory device 101 using a monitoring circuit that does not affect the normal operation. Therefore, the memory interface circuit 114 can continuously adjust the drive capability setting of the memory device 101 even during normal operation.
  • the memory interface circuit according to Embodiment 2 of the present invention can improve the accuracy of delay adjustment by adjusting the delay amount independently for each of the plurality of data signals.
  • FIG. 7 is a block diagram of the memory system 200 according to Embodiment 2 of the present invention.
  • symbol is attached
  • differences from the memory system 100 according to the first embodiment will be mainly described, and redundant descriptions will be omitted.
  • the memory system 200 includes a memory device 201 and a memory interface circuit 214.
  • the memory device 201 and the memory interface circuit 214 are different from the first embodiment in that the memory device 201 and the memory interface circuit 214 are connected to each other by two data signal lines 102A and 102B.
  • the configuration of the dynamic delay calibration unit 215 of the memory interface circuit 214 is different from the configuration of the dynamic delay calibration unit 115 according to the first embodiment.
  • the dynamic delay calibration unit 215 includes operation data latch units 105A and 105B instead of the operation data latch unit 105, the operation delay unit 117, and the operation delay control unit 106 illustrated in FIG. And operation delay units 117A and 117B and operation delay control units 106A and 106B.
  • the dynamic delay calibration unit 215 further includes a control unit 250 and selection units 251 and 252.
  • the function of the range calculation unit 210 is different from the function of the range calculation unit 110.
  • the operation delay unit 117A generates the operation strobe signal 124A by delaying the strobe signal 129 by the first operation delay amount.
  • the operation delay unit 117B generates the operation strobe signal 124B by delaying the strobe signal 129 by the second operation delay amount.
  • the operation data latch unit 105A latches the read data 123A at the timing (rising edge) indicated by the operation strobe signal 124A.
  • the operation data latch unit 105A outputs the latched read data 123A as output read data 122A to the internal circuit.
  • the operation data latch unit 105B latches the read data 123B at the timing (rising edge) indicated by the operation strobe signal 124B.
  • the operation data latch unit 105B outputs the latched read data 123B as output read data 122B to the internal circuit.
  • Control unit 250 generates switching signal 261 in response to control signal 260.
  • the control signal 260 is given as a condition input.
  • the control signal 260 may be input from the outside, or may be generated by a processing unit included in the memory interface circuit 214.
  • the control signal 260 is a signal indicating whether or not it is a refresh operation.
  • the control unit 250 inverts the logical value of the switching signal 261 for each refresh operation.
  • the switching signal 261 is a signal for selecting one of the read data 123A (output read data 122A) and the read data 123B (output read data 122B).
  • the selection unit 252 selects one of the read data 123A and 123B according to the logical value of the switching signal 261, and outputs the selected data to the monitoring data latch unit 107 as selected read data 263.
  • the monitoring data latch unit 107 latches the selected read data 263 output from the selection unit 252 at the timing (rising edge) indicated by the monitoring strobe signal 125.
  • the monitoring data latch unit 107 outputs the latched read data 123 as monitoring data 126 to the comparison determination unit 109.
  • the selection unit 251 selects one of the output read data 122A and 122B according to the logical value of the switching signal 261, and outputs the selected data to the comparison determination unit 109 as selection output read data 262.
  • the selection unit 252 selects the read data 123A
  • the selection unit 251 selects the output read data 122A.
  • the selection unit 252 selects the read data 123B
  • the selection unit 251 selects the output read data 122B. To do.
  • the comparison determination unit 109 compares the value of the selection output read data 262 output by the selection unit 251 with the value of the monitoring data 126. For example, the comparison determination unit 109 determines whether or not the values of the two data match.
  • the range calculation unit 210 calculates the delay range 127A or 127B using the determination result by the comparison determination unit 109 according to the logical value of the switching signal 261. Specifically, when the switching signal 261 indicates that the read data 123A (output read data 122A) is selected, the range calculation unit 210 uses the determination result by the comparison determination unit 109 to set the delay range 127A. calculate. Further, when the switching signal 261 indicates that the read data 123B (output read data 122B) is selected, the range calculation unit 210 calculates the delay range 127B using the determination result by the comparison determination unit 109. The details of the calculation method of the delay ranges 127A and 127B by the range calculation unit 210 are the same as the calculation method of the delay range 127 by the range calculation unit 110 according to the first embodiment.
  • the operation delay control unit 106A sets the first operation delay amount used by the operation delay unit 117A within the delay range 127A calculated by the range calculation unit 210.
  • the operation delay control unit 106B sets the second operation delay amount used by the operation delay unit 117B in the delay range 127B calculated by the range calculation unit 210.
  • the detailed operation of the operation delay control units 106A and 106B is the same as the operation of the operation delay control unit 106 described in the first embodiment.
  • the read data 123A and 123B correspond to the first data signal and the second data signal of the present invention, respectively.
  • the delay ranges 127A and 127B correspond to the first delay range and the second delay range of the present invention, respectively.
  • the operation delay units 117A and 117B correspond to the second delay unit and the third delay unit of the present invention, respectively.
  • the first operation delay amount and the second operation delay amount correspond to the second delay amount and the third delay amount of the present invention, respectively.
  • the operation strobe signal 124A and the operation strobe signal 124B correspond to the second delay strobe signal and the third delay strobe signal of the present invention, respectively.
  • the operation data latch units 105A and 105B correspond to the second data latch unit and the third data latch unit of the present invention, respectively, and the output read data 122A and 122B respectively correspond to the second latch data signal of the present invention. And the third latch data signal.
  • the monitoring data 126 corresponds to the first latch data signal and the fourth latch data signal of the present invention.
  • the operation delay control units 106A and 106B correspond to the second delay control unit and the third delay control unit of the present invention.
  • the selection units 252 and 251 correspond to the first selection unit and the second selection unit of the present invention, respectively.
  • the selected read data 263 and the selected output read data 262 correspond to the selected data signal and the selected latch data signal of the present invention, respectively.
  • the memory interface circuit 214 can improve the accuracy of delay adjustment by adjusting the delay amount for each of the plurality of read data 123A and 123B.
  • the memory interface circuit 214 switches the plurality of read data 123A and 123B, which are delay value observation targets, to the plurality of observation targets by switching the selection units 251 and 252, respectively.
  • the monitoring delay unit 118, the monitoring data latch unit 107, the monitoring delay control unit 108, the comparison determination unit 109, and the range calculation unit 210 can be shared.
  • the memory interface circuit 214 can reduce the mounting area of the semiconductor integrated circuit device by switching the observation target.
  • FIG. 8 is a block diagram of a memory system 300 according to Embodiment 3 of the present invention.
  • symbol is attached
  • differences from the memory system 100 according to the first embodiment will be mainly described, and redundant descriptions will be omitted.
  • the memory system 300 includes a memory device 301 and a memory interface circuit 314.
  • the memory device 201 and the memory interface circuit 314 are different from the first embodiment in that they are connected to each other by two data signal lines 102A and 102B and two strobe signal lines 103A and 103B.
  • the memory interface circuit 314 includes dynamic delay calibration units 115A and 115B, a drive capability setting unit 116, and a range calculation unit 370.
  • the dynamic delay calibration units 115A and 115B are processing units similar to the dynamic delay calibration unit 115 shown in FIG.
  • the dynamic delay calibration unit 115A receives the read data 123A output to the data signal line 102A by the memory device 301 and the strobe signal 129A output to the strobe signal line 103A. Further, the read data 123B output to the data signal line 102B by the memory device 301 and the strobe signal 129B output to the strobe signal line 103B are input to the dynamic delay calibration unit 115B. Note that the read data 123A and the read data 123B correspond to the read data 123 shown in FIG. The strobe signals 129A and 129B correspond to the strobe signal 129 shown in FIG.
  • the dynamic delay calibration unit 115A generates a window width 128A
  • the dynamic delay calibration unit 115B generates a window width 128B.
  • the window widths 128A and 128B correspond to the window width 128 shown in FIG.
  • the range calculation unit 370 generates a window width 372 based on the window widths 128A and 128B. For example, the range calculation unit 370 generates a window width 372 that is a value between the window width 128A and the window width 128B. Specifically, range calculation unit 370 calculates an average value of window width 128A and window width 128B, and outputs the calculated average value as window width 372. The range calculator 370 may select the smaller or larger of the window widths 128A and 128B and output the selected window width 128A or 128B as the window width 372.
  • the range calculation unit 370 may selectively perform any one of such multiple types of calculations according to the control signal 371.
  • the drive capability setting unit 116 performs the same processing as in the first embodiment described above, using the window width 372 generated by the range calculation unit 370 instead of the window width 128 shown in FIG.
  • the read data 123A and 123B correspond to the first data signal and the third data signal of the present invention, respectively.
  • the strobe signals 129A and 129B correspond to the first strobe signal and the second strobe signal of the present invention, respectively.
  • the window widths 128A, 128B, and 372 correspond to the first delay range width, the second delay range width, and the third delay range width of the present invention, respectively.
  • the dynamic delay calibration unit 115A includes the monitoring delay unit 118, the monitoring data latch unit 107, the operation data latch unit 105, the monitoring delay control unit 108, and the range calculation unit 110, respectively.
  • the dynamic delay calibration unit 115B includes the monitoring delay unit 118, the monitoring data latch unit 107, the operation data latch unit 105, the monitoring delay control unit 108, and the range calculation unit 110, respectively.
  • the memory interface circuit 314 includes the plurality of dynamic delay calibration units 115A and 115B and the window width 128A generated by the plurality of dynamic delay calibration units 115A and 115B.
  • a range calculator 370 that calculates 128B.
  • the memory interface circuit 314 can simultaneously generate window widths 128A and 128B for the plurality of read data 123A and 123B and the plurality of strobe signals 129A and 129B.
  • the window width is acquired in a time division manner using the memory interface circuit 114 according to the first embodiment described above. Is possible. However, in this case, it is impossible to distinguish between variations in delay values over time and variations in delay values between data signals.
  • the memory interface circuit 314 since the memory interface circuit 314 according to the third embodiment can obtain the window widths 128A and 128B at the same time, only the variation in the delay value between the data signals can be calculated. As a result, the memory interface circuit 314 can set the optimum drive capability for a plurality of data signals with higher accuracy.
  • dynamic delay calibration unit 215 described in Embodiment 2 may be used as the dynamic delay calibration units 115A and 115B.
  • Each processing unit included in the memory interface circuits 114, 214, and 314 according to the first to third embodiments is typically realized as an LSI that is an integrated circuit. These may be individually made into one chip, or may be made into one chip so as to include a part or all of them.
  • circuits are not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor.
  • An FPGA Field Programmable Gate Array
  • reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
  • some or all of the functions of the memory interface circuits 114, 214, and 314 according to the first to third embodiments of the present invention may be realized by a processor such as a CPU executing a program.
  • the present invention may be the above program or a recording medium on which the above program is recorded.
  • the program can be distributed via a transmission medium such as the Internet.
  • the present invention can be realized not only as the above-described memory interface circuits 114, 214, and 314, but also as a method for adjusting the drive capability of the memory device using the characteristic means included in the memory interface circuits 114, 214 and 314 as steps May be.
  • the present invention may be realized as a semiconductor integrated circuit (LSI) that realizes part or all of the functions of the memory interface circuits 114, 214, and 314.
  • LSI semiconductor integrated circuit
  • the present invention may be realized as a memory system 100, 200, or 300 including such a memory interface circuit 114, 214, or 314 and the memory device 101, 201, or 301.
  • the numbers used above are all exemplified for specifically describing the present invention, and the present invention is not limited to the illustrated numbers.
  • the logic levels represented by high / low are exemplified for specifically explaining the present invention, and it is possible to obtain an equivalent result by a combination of logic levels different from the illustrated logic levels. It is.
  • the connection relationship between the components is exemplified for specifically explaining the present invention, and the connection relationship for realizing the function of the present invention is not limited to this.
  • the configuration of the memory interface circuit 114, 214, or 314 is for illustrative purposes only, and the memory interface circuit 114, 214, or 314 according to the present invention has the above configuration. It is not necessary to have everything. In other words, the memory interface circuit 114, 214 or 314 according to the present invention only needs to have a minimum configuration that can realize the effects of the present invention.
  • the memory interface circuits 114, 214, and 314 have both a delay amount calibration function and a memory device drive capability calibration function, but may have only one of them. .
  • the memory device drive capability adjustment method using the memory interface circuit 114, 214, or 314 described above is for illustrating the present invention in detail, and the memory interface circuit 114,
  • the method for adjusting the drive capability of the memory device according to 214 or 314 does not necessarily include all of the above steps.
  • the drive capability adjustment method of the memory device by the memory interface circuit 114, 214 or 314 according to the present invention needs to include only the minimum steps that can realize the effects of the present invention.
  • the order in which the above steps are executed is for illustration in order to specifically describe the present invention, and may be in an order other than the above.
  • a part of the above steps may be executed simultaneously (in parallel) with other steps.
  • the present invention can be applied to a memory interface circuit. Further, the present invention can be applied to a DTV (digital television), a DVD recorder, a BD recorder, a digital still camera, a digital video camera, a mobile phone, and the like equipped with the memory interface circuit.
  • a DTV digital television
  • DVD recorder digital recorder
  • BD recorder digital still camera
  • digital video camera digital video camera
  • mobile phone and the like equipped with the memory interface circuit.

Abstract

 本発明に係るメモリインターフェース回路(114)は、ストローブ信号(129)を第1遅延量分遅延させることにより監視用ストローブ信号(125)を生成する監視用遅延部(118)と、監視用ストローブ信号(125)で示されるタイミングでリードデータ(123)を監視用データ(126)としてラッチする監視用データラッチ部(107)と、リードデータ(123)を出力リードデータ(122)としてラッチする動作用データラッチ部(105)と、監視用データラッチ部(107)がリードデータ(123)を監視用データ(126)として正しくラッチできる第1遅延量の値の範囲の幅であるウィンドウ幅(128)を算出する範囲算出部(110)と、ウィンドウ幅(128)が広くなるように、メモリデバイス(101)のドライブ能力を調整するドライブ能力設定部(116)とを備える。

Description

メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法
 本発明は、メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法に関し、特に、第1データ信号及び第1ストローブ信号を出力するとともに、当該第1データ信号を駆動するドライブ能力を変更可能なメモリデバイスに接続されたメモリインターフェース回路に関する。
 近年のメモリシステムでは、処理の増大に伴って、例えばSDRAM(Synchronous Dynamic Random Access Memory)のような、クロックに同期したデータの入出力が可能なメモリデバイスが用いられることが多い。これらのメモリデバイスでは、データストローブ信号(DQS)の立ち上がり及び立ち下がりのエッジに同期して、データ(DQ)の入出力が行われる。
 特に、近年ではメモリデバイスの動作周波数の高速化に伴って、ストローブ信号に対するデータの有効期間は短くなる傾向にある。これにより、プロセス特性、温度変化、電圧変化、及びメモリデバイス実装時のインピーダンスマッチングに伴うデータとストローブ信号とのタイミング関係の変動を考慮した場合、安定したデータ入出力が困難になってきている。このような背景から、近年のメモリシステムには、ZQキャリブレーションと呼ばれるメモリデバイスのドライブ能力を調整する機能が実装されることが一般的になっている。
 一方で、例えば、特許文献1記載のメモリシステムは、データ又はストローブ信号に対して、可変遅延素子を用いて遅延量を調整する可変遅延部を備える。これにより、特許文献1記載のメモリシステムは、データ信号及びストリーム信号のタイミング関係を適切なアクセスタイミングに調整することで、安定したデータ入出力を実現している。
 これに加え、メモリデバイスのドライブ能力を調整することによって、安定したデータ入出力が可能な可変遅延素子の遅延量の取り得る範囲を大きくできる。例えば、上述したZQキャリブレーションのようなドライブ能力の調整機能を用いることにより、チップ毎に、メモリデバイス実装時のインピーダンスマッチングのばらつきを考慮したドライブ能力の調整が可能になる。これにより、メモリシステムは、より安定したデータ入出力が実現できる。
 また、近年、メモリデバイスの動作周波数はますます高速化が進むため、データの確定時間はさらに短くなる。これにより、アクセスタイミングの調整は、より高精度に行う必要性が増している。
特開2004-074623号公報
 しかしながら、特許文献1記載の従来の遅延量の調整、及び上述したドライブ能力の調整は、通常動作を停止して行う必要がある。このため、温度変化又は電圧変化に伴うデータ信号とストローブ信号とのアクセスタイミングの変動が生じた場合は、いったん通常動作を停止して、キャリブレーション動作をやり直す必要がある。
 よって、従来のメモリシステムでは、このキャリブレーション動作を行ってから次のキャリブレーション動作を行うまでの間のアクセスタイミングの変動を吸収することができない。このため、従来のメモリシステムでは、アクセスタイミングの変動量を通常動作中のアクセスタイミングばらつきとして、動作マージンの範囲内に収めなくてはならない。
 また、メモリデバイスの動作周波数を高速化した場合、データの確定時間が増えるほど動作マージンとして確保できる時間は減少する。このため、通常動作中のアクセスタイミングばらつきを動作マージン内に収めることが困難になる。よって、アクセスタイミングばらつきを小さくするために遅延量、及びドライブ能力のそれぞれのキャリブレーション動作を頻繁に行うことが必要になる。
 しかし、キャリブレーション動作を頻繁に行うと、そのキャリブレーション動作の間、通常動作が行うことができず処理が停止してしまうという問題が発生する。
 本発明は上記従来の問題点を解決するものであり、通常動作中にドライブ能力のキャリブレーション動作を行うことができるメモリインターフェース回路を提供することを目的とする。
 上記目的を達成するために、本発明の一形態に係るメモリインターフェース回路は、第1データ信号を出力するとともに当該第1データ信号を駆動するドライブ能力を変更可能なメモリデバイスに接続されたメモリインターフェース回路であって、前記メモリデバイスにより出力された第1ストローブ信号を第1遅延量分遅延させることにより第1遅延ストローブ信号を生成する第1遅延部と、前記第1遅延ストローブ信号で示されるタイミングで前記第1データ信号を第1ラッチデータ信号としてラッチする第1データラッチ部と、前記第1データ信号を第2ラッチデータ信号としてラッチする第2データラッチ部と、前記第1遅延量の値を順次変更する第1遅延制御部と、前記第1データラッチ部が前記第1データ信号を前記第1ラッチデータ信号として正しくラッチできる前記第1遅延量の値の範囲の幅である第1遅延範囲幅を算出する第1範囲算出部と、前記第1遅延範囲幅が広くなるように前記メモリデバイスの前記ドライブ能力を調整するドライブ能力設定部とを備える。
 本発明によれば、通常動作中にドライブ能力のキャリブレーション動作を行うことができるメモリインターフェース回路を提供できる。
図1は、本発明の実施の形態1に係るメモリシステムのブロック図である。 図2は、本発明の実施の形態1に係る遅延範囲を示す図である。 図3は、本発明の実施の形態1に係るドライブ能力調整処理のフローチャートである。 図4は、本発明の実施の形態1に係るドライブ能力及びウィンドウ幅を示す図である。 図5は、本発明の実施の形態1に係るドライブ能力及びウィンドウ幅を示す図である。 図6は、本発明の実施の形態1に係るドライブ能力及びウィンドウ幅を示す図である。 図7は、本発明の実施の形態2に係るメモリシステムのブロック図である。 図8は、本発明の実施の形態3に係るメモリシステムのブロック図である。
 以下、本発明の実施の形態について、図面を用いて詳細に説明する。
 (実施の形態1)
 本発明の実施の形態1に係るメモリインターフェース回路は、外部にリードデータを出力するためのラッチ回路とは、別に監視用のラッチ回路を備える。また、本発明の実施の形態1に係るメモリインターフェース回路は、この監視用のラッチ回路がリードデータを正しくラッチできる遅延量の値の範囲の幅を算出し、当該幅が広くなるようにメモリデバイスのドライブ能力を調整する。
 これにより、本発明の実施の形態1に係るメモリインターフェース回路は、通常動作中にドライブ能力のキャリブレーション動作を行うことができる。
 まず、本発明の実施の形態1に係るメモリインターフェース回路114の構成を説明する。
 図1は、本発明の実施の形態1に係るメモリシステム100の構成を示すブロック図である。
 図1に示すメモリシステム100は、メモリデバイス101と、メモリインターフェース回路114とを含む。メモリデバイス101及びメモリインターフェース回路114は互いに、少なくともデータ信号線102とストローブ信号線103とコマンド信号線113とにより接続される。
 メモリデバイス101は、ストローブ信号の立ち上がりエッジ又は立下りエッジのいずれか一方でデータをラッチ(保持)するSDR(Single Data Rate)-SDRAMでもよく、また、ストローブ信号の立ち上がりエッジ及び立下りエッジの両方でデータをラッチするDDR(Double Data Rate)-SDRAMでもよい。
 以下では、簡明のため、ストローブ信号の立ち上がりエッジに関係する構成及び動作について説明する。
 メモリデバイス101は、リードデータ123及びストローブ信号129を出力する。また、メモリデバイス101は、リードデータ123を駆動するドライブ能力を、外部からの設定により変更可能である。
 メモリインターフェース回路114は、メモリデバイス101へライトデータ121を書き込む。また、メモリインターフェース回路114は、メモリデバイス101からリードデータ123を読み出し、読み出したリードデータ123を出力リードデータ122として外部に出力する。また、メモリインターフェース回路114は、通常動作中に、ストローブ信号129を遅延させる遅延量を調整することにより、リードデータ123とストローブ信号129とのタイミングを調整する機能を有する。さらに、メモリインターフェース回路114は、通常動作中に、メモリデバイス101のドライブ能力を調整する機能を有する。
 データ信号線102は、メモリインターフェース回路114からメモリデバイス101に書き込むライトデータ121、及びメモリデバイス101から読み出すリードデータ123を転送するために使用される。このデータ信号線102は、一般的には双方向の信号線である。なお、図1ではデータ信号線102は1本であるが、データ信号線102が1本のストローブ信号線103に対応する複数のデータ信号線で構成されていても構わない。
 ストローブ信号線103は、メモリインターフェース回路114からメモリデバイス101にライトデータ121を書き込む場合に、メモリインターフェース回路114からメモリデバイス101へのライトストローブ信号を出力するために使用される。また、ストローブ信号線103は、メモリインターフェース回路114がメモリデバイス101からリードデータ123を読み出す場合には、メモリデバイス101からメモリインターフェース回路114へリードストローブ信号129を出力するために使用される。このストローブ信号線103は、一般的には双方向の信号線である。なお、図1では、ライトストローブ信号を生成する回路については省略している。また、以下では、リードストローブ信号129を単にストローブ信号129とも記す。
 コマンド信号線113は、一般に複数の信号線で構成され、ドライブ能力設定を含むメモリデバイス101の動作条件の設定に用いられる。また、コマンド信号線113は、一定の条件で動作条件設定に用いられていれば、メモリデバイス101のアドレス信号などその他の信号線と兼用されていても構わない。
 メモリインターフェース回路114は、動的遅延キャリブレーション部115と、ドライブ能力設定部116とを備える。また、動的遅延キャリブレーション部115は、方向制御部104と、動作用データラッチ部105と、動作用遅延制御部106と、監視用データラッチ部107と、監視用遅延制御部108と、比較判定部109と、動作用遅延部117と、監視用遅延部118とを含む。ドライブ能力設定部116は、範囲算出部110と、ドライブ能力制御部111と、コマンド生成部112とを含む。
 なお、メモリデバイス101にDDR-SDRAMを用いる場合は、メモリインターフェース回路114におけるこれらの構成要素を、1本のストローブ信号線103に対して、ストローブ信号129の立ち上がりエッジ及び立下りエッジのそれぞれに対応して2組設けてもよい。これにより、ストローブ信号129の立ち上がりエッジ及び立下りエッジのそれぞれについて独立にタイミング調整を行うことができる。
 方向制御部104は、内部回路からライトデータ121をデータ信号線102へ転送するか、データ信号線102から動作用データラッチ部105及び監視用データラッチ部107へリードデータ123を転送するかを制御する。
 内部回路は、メモリインターフェース回路114を介してメモリデバイス101を利用する回路である。本発明では内部回路の機能を限定しない。内部回路は、一例としてはCPU(Central Processing Unit)である。
 動作用遅延部117は、メモリデバイス101がストローブ信号線103に出力したストローブ信号129を動作用遅延量分遅延させることにより、動作用ストローブ信号124を生成する。
 監視用遅延部118は、メモリデバイス101がストローブ信号線103に出力したストローブ信号129を監視用遅延量分遅延させることにより、監視用ストローブ信号125を生成する。
 動作用データラッチ部105は、方向制御部104を通じて伝わったリードデータ123を動作用ストローブ信号124で示されるタイミング(立ち上がりエッジ)でラッチする。また、動作用データラッチ部105は、ラッチしたリードデータ123を出力リードデータ122として、内部回路へ出力するとともに、当該出力リードデータ122を比較判定部109へ出力する。
 監視用データラッチ部107は、方向制御部104を通じて伝わったリードデータ123を監視用ストローブ信号125で示されるタイミング(立ち上がりエッジ)でラッチする。また、監視用データラッチ部107は、ラッチしたリードデータ123を監視用データ126として、比較判定部109へ出力する。
 監視用遅延制御部108は、監視用データラッチ部107が用いる監視用遅延量を設定する。
 比較判定部109は、例えば、リード動作ごとに、動作用データラッチ部105がラッチした出力リードデータ122の値と、監視用データラッチ部107がラッチした監視用データ126の値とを比較する。例えば、比較判定部109は、当該二つのデータの値が一致しているか否かを判定する。
 なお、データ信号線102が複数本である場合、動作用データラッチ部105及び監視用データラッチ部107は複数ビットで構成される。また、比較判定部109は複数ビットのデータを比較する。
 範囲算出部110は、比較判定部109による判定結果を用いて、監視用データラッチ部107がリードデータ123を監視用データ126として正しくラッチできる監視用遅延量の値の範囲(以下、遅延範囲127)を算出する。言い換えると、遅延範囲127は、動作用データラッチ部105がリードデータ123を出力リードデータ122として正しくラッチできる動作用遅延量の値の範囲である。
 図2は、遅延範囲127を示す図である。図2に示すように、遅延範囲127は、それ以下の遅延値になると正しくラッチできなくなる遅延値が小さい側の境界140と、それ以上の遅延値になるとラッチできなくなる遅延値が大きい側の境界141との間の遅延量の範囲である。
 具体的には、監視用遅延制御部108は、監視用遅延量の値を、例えば、リードアクセス毎に、順次変更する。比較判定部109は、監視用遅延制御部108により変更された監視用遅延量の値ごとに、監視用データ126と出力リードデータ122とが一致するか否かを判定する。範囲算出部110は、監視用遅延量の値ごとの比較判定部109による判定結果を記憶する。また、範囲算出部110は、出力リードデータ122と監視用データ126とが一致する監視用遅延量の値の範囲を遅延範囲127として算出する。
 なお、範囲算出部110は、出力リードデータ122と監視用データ126とが一致する監視用遅延量の値の範囲に対して、所定のマージンを加味した範囲を遅延範囲127として算出してもよい。例えば、遅延範囲127は、出力リードデータ122と監視用データ126とが一致する監視用遅延量の値の範囲に対して、予め定められた値分、内側の範囲であってもよい。
 動作用遅延制御部106は、範囲算出部110により算出された遅延範囲127内に、動作用遅延部117が用いる動作用遅延量を設定する。具体的には、動作用遅延制御部106は、遅延範囲127を用いて動作用遅延量を算出する。例えば、動作用遅延制御部106は、遅延範囲127の境界に対して、所定のマージンを加えた遅延量を動作用遅延量として算出する。
 このように、動的遅延キャリブレーション部115による一連の動作により、動作用データラッチ部105で出力リードデータ122をラッチすることで通常動作を継続しながら、監視用データラッチ部107で監視用データ126をラッチすることでリードデータ123を適切にラッチできる遅延量の境界を監視することができる。これにより、動的遅延キャリブレーション部115は、通常動作を中断することなく、遅延量のキャリブレーションを実現できる。
 また、内部回路は動作用データラッチ部105でラッチした出力リードデータ122を用い、監視用データラッチ部107でラッチした監視用データ126は利用しない。よって、監視用データラッチ部107に遅延範囲127の境界付近の遅延値が設定されており、監視用データラッチ部107が仮に誤ったデータをラッチしたとしても内部回路の動作に影響を及ぼさない。
 なお、ここでは、範囲算出部110は、リードデータ123を正しくラッチできる遅延量の範囲を算出しているが、範囲算出部110は、それ以下の遅延値になると正しくラッチできなくなる遅延値が小さい側の境界140と、それ以上の遅延値になるとラッチできなくなる遅延値が大きい側の境界141とのうち一方の境界のみを算出してもよい。この場合、動作用遅延制御部106は、範囲算出部110により算出された境界に対して、所定のマージンを加えた遅延量を動作用遅延量として算出すればよい。
 また、上記のように遅延範囲127を算出する場合に、動的遅延キャリブレーション部115は、遅延値が小さい側の境界と大きい側の境界とを独立に監視する2組の監視用データラッチ部107と監視用遅延制御部108と監視用遅延部118とを備えてもよい。
 これらの動作に加えて、範囲算出部110は、算出した遅延範囲127の幅を示すウィンドウ幅128を算出する。
 ドライブ能力設定部116は、ウィンドウ幅128が広くなるように、メモリデバイス101のドライブ能力を調整する。
 具体的には、ドライブ能力設定部116は、メモリデバイス101のドライブ能力を順次変更する。また、ドライブ能力設定部116は、変更したドライブ能力ごとに、範囲算出部110により算出されたウィンドウ幅128を格納する。また、ドライブ能力設定部116は、格納した複数のウィンドウ幅128のうち最も大きいウィンドウ幅128のドライブ能力にメモリデバイス101のドライブ能力を調整する。
 ドライブ能力制御部111は、範囲算出部110により算出されたウィンドウ幅128と、メモリデバイス101に設定されているドライブ能力との関係を記憶する。また、ドライブ能力制御部111は、更新するドライブ能力の設定値をコマンド生成部112に送る。
 コマンド生成部112は、ドライブ能力制御部111から送られたドライブ能力設定値に基づいてメモリデバイス101にコマンド信号線113を通じてドライブ能力設定コマンドを発行する。
 なお、リードデータ123、ストローブ信号129及びウィンドウ幅128は、それぞれ、本発明の第1データ信号、第1ストローブ信号及び第1遅延範囲幅に相当する。また、監視用遅延部118、監視用遅延量、監視用ストローブ信号125、監視用データラッチ部107、監視用データ126及び監視用遅延制御部108は、それぞれ、本発明の第1遅延部、第1遅延量、第1遅延ストローブ信号、第1データラッチ部、第1ラッチデータ及び第1遅延制御部に相当する。また、動作用遅延部117、動作用遅延量、動作用ストローブ信号124、動作用データラッチ部105、出力リードデータ122及び動作用遅延制御部106は、本発明の第2遅延部、第2遅延量、第2遅延ストローブ信号、第2データラッチ部、第2ラッチデータ及び第2遅延制御部に相当する。
 以下、本発明の実施の形態1に係るメモリシステム100によるドライブ能力調整の動作を説明する。
 図3は、メモリシステム100によるドライブ能力調整の動作のフローチャートである。
 まず、範囲算出部110は、ウィンドウ幅128を算出する(S101)。
 次に、ドライブ能力制御部111は、範囲算出部110により算出されたウィンドウ幅128が基準ウィンドウ幅130以上であるか否かを判定する(S102)。ここで、基準ウィンドウ幅130とは、本装置を用いる際に、この値よりもウィンドウ幅128が狭くなると安定したアクセスができなくなるためドライブ能力の再調整が必要になるウィンドウ幅128を示す。この基準ウィンドウ幅130は、条件入力として外部より入力されてもよいし、メモリインターフェース回路114が備える処理部により生成されてもよいし、メモリインターフェース回路114が備える記憶部に記憶されていてもよい。例えば、基準ウィンドウ幅130は、ソフトウェアによって設定されたレジスタの値である。
 また、ステップS101及びS102の処理は、ウィンドウ幅128が基準ウィンドウ幅130未満であると判定される(S102でNo)まで、範囲算出部110によりウィンドウ幅128が算出される毎に繰り返される。
 ステップS102において、ウィンドウ幅128が基準ウィンドウ幅130未満であると判定された場合(S102でNo)、次に、ドライブ能力制御部111は、現在のウィンドウ幅128とドライブ能力値とを格納する(S103)。
 図4は、ドライブ能力制御部111に格納されるウィンドウ幅128とドライブ能力値との一例を示す図である。ここではドライブ能力値602が40mA、その時のウィンドウ幅128が13digitと格納されている。なお、ここでは、ドライブ能力値の単位として駆動電流値であるmAを用い、ウィンドウ幅128の単位として、監視用遅延部118における監視用遅延量の管理単位であるdigitとを用いるが管理の単位については重要ではなくどのような単位で管理しても構わない。
 ステップS104以降はドライブ能力のキャリブレーション動作である。
 まず、ドライブ能力制御部111は、ドライブ能力値を1増やす方向に設定を変更する(S104)。これにより、コマンド生成部112は、メモリデバイス101のドライブ能力値を1増やす。なお、ここでは、一例として、ドライブ能力値を1増加している。これは、ドライブ能力値として駆動電流値を用いていた場合は、駆動電流値を1mA上げることを表す。ただし、これは一例に過ぎず、ドライブ能力値を1増加することに対応する駆動電流値の上げ幅は任意一定値でもよい。つまり、ドライブ能力制御部111は、ドライブ能力値をn(nは任意の自然数)増加してもよい。また、上述の通り、ドライブ能力値に対応する値は駆動電流値に限られるものではない。
 ステップS104の動作により、メモリデバイス101のデータ信号線102のドライブ能力が変化し、リードデータ123を監視用ストローブ信号125でラッチすることができる遅延値の範囲(ウィンドウ)が変化する。次に、範囲算出部110は、ドライブ能力変更後のウィンドウ幅128を算出する(S105)。
 この場合、ウィンドウ幅が狭くなる場合と広くなる場合が考えられるが、この変化は監視用データラッチ部107で感知される。よって、ドライブ能力値の変更量が十分に小さければ動作用データラッチ部105で誤ったデータがラッチされることはなく、通常動作を継続することができる。
 次に、ドライブ能力制御部111は、ステップS104で変更された新たなドライブ能力値と、ステップS105で算出された新たなウィンドウ幅128とを格納する(S106)。
 次に、ドライブ能力制御部111は、ステップS106で格納した新たなウィンドウ幅128とその前に格納したウィンドウ幅128とを比較することにより、ウィンドウ幅128が増加したか否かを判定する(S107)。ウィンドウ幅128が増加している場合(S107でYes)、再度、ステップS104の処理が行われる。なお、ウィンドウ幅が増加しているか否かの判定基準は多様であり、ウィンドウ幅128が同じ場合、ウィンドウ幅128が微少に減少している場合、又は、ウィンドウ幅128が微少に増加している場合に、ドライブ能力制御部111は、ウィンドウ幅128が増加していると判定してもよい。
 言い換えると、ドライブ能力制御部111は、ステップS106で格納した新たなウィンドウ幅128からその前に格納したウィンドウ幅128を減算し、減算結果が予め定められた閾値以上の場合、ウィンドウ幅128が増加していると判定し、減算結果が上記閾値未満である場合、ウィンドウ幅128が減少していると判定する。
 図5は、上述のステップS104~S107の動作を複数回繰り返し行った状態における、ドライブ能力制御部111に格納されるドライブ能力値とウィンドウ幅128との一例を示す図である。
 ドライブ能力値602からスタートしてループ動作を行った結果、ドライブ能力値604まではドライブ能力値を増やすごとにウィンドウ幅128が増加している。しかし、ドライブ能力値606に増やした時点でウィンドウ幅128は減少している。
 このように、ウィンドウ幅128が減少した場合(S107でNo)、次に、ドライブ能力制御部111は、ドライブ能力値を1減らす方向に設定を変更する(S108)。その結果、ウィンドウ幅128が変化する。
 次に、範囲算出部110は、ドライブ能力変更後のウィンドウ幅128を算出する(S109)。
 次に、ドライブ能力制御部111は、ステップS108で変更した新たなドライブ能力値と、ステップS109で算出された新たなウィンドウ幅128とを格納する(S110)。
 次に、ドライブ能力制御部111は、ステップS110で格納した新たなウィンドウ幅128とその前に格納したウィンドウ幅128とを比較することにより、ウィンドウ幅128が増加しているか否かを判定する(S111)。ウィンドウ幅128が増加している場合(S111でYes)、再度、ステップS108の処理が行われる。なお、ウィンドウ幅が増加しているか否かの判定基準は多様であり、ウィンドウ幅128が同じ場合、ウィンドウ幅128が微少に減少している場合、又は、ウィンドウ幅128が微少に増加している場合に、ドライブ能力制御部111は、ウィンドウ幅128が増加していると判定してもよい。
 言い換えると、ドライブ能力制御部111は、ステップS106で格納した新たなウィンドウ幅128からその前に格納したウィンドウ幅128を減算し、減算結果が予め定められた閾値以上の場合、ウィンドウ幅128が増加していると判定し、減算結果が上記閾値未満である場合、ウィンドウ幅128が減少していると判定する。
 図5に示した例では、ドライブ能力値を606から減らす方向にステップS108~S111の動作が繰り返されると、ドライブ能力値604からドライブ能力値608に更新された時点で、ウィンドウ幅128が縮小する。
 このように、ウィンドウ幅128が減少した場合(S111でNo)、次に、ドライブ能力制御部111は、格納するドライブ能力値とウィンドウ幅128とからウィンドウ幅128が最大になるドライブ能力値を、設定するドライブ能力値に決定する(S112)。図5に示す例では、ドライブ能力値604のウィンドウ幅128が最も大きいので、このドライブ能力値604が設定するドライブ能力値として決定される。
 次に、コマンド生成部112は、ステップS112で決定された最適なドライブ能力値を設定するコマンドを生成することにより、メモリデバイス101のドライブ能力値を設定する(S113)。
 以上により、ドライブ能力のキャリブレーション動作が完了する。また、ドライブ能力設定部116は、新たに設定したドライブ能力に応じて、ステップS101で用いる基準ウィンドウ幅130を更新する。例えば、ドライブ能力設定部116は、新たに設定したドライブ能力時のウィンドウ幅128、又は当該ウィンドウ幅128に所定の値を加算又は減算した値を、新たな基準ウィンドウ幅130として設定する。
 なお、本実施の形態では、一例としてドライブ能力値を増やす動作(ステップS104~S107)を行った後に、ドライブ能力値を減らす動作(ステップS108~S111)を行っているが、ドライブ能力値を減らす動作を行った後にドライブ能力値を増やす動作を行ってもよい。
 また、ここでは、ステップS103で格納したドライブ能力値よりステップS112で決定したドライブ能力値が大きい場合を例に用いて説明したが、ステップS103で格納したドライブ能力値がステップS112で決定されるドライブ能力値よりも小さな場合においても、同様に最適なドライブ能力値を探索できる。
 図6は、この場合のドライブ能力制御部111に格納されるドライブ能力値とウィンドウ幅128との一例を示す図である。
 例えば、図6に示すように、ステップS103でドライブ能力値802を格納した場合、ステップS104~S107のループ動作の回数よりステップS108~S111のループ動作の回数が多くなるため、ステップS112において、ドライブ能力値804のウィンドウ幅128が最適値として決定される。
 以上より、本発明の実施の形態1に係るメモリインターフェース回路114は、通常動作用の回路(動作用遅延部117及び動作用データラッチ部105)とは別に、監視用の回路(監視用遅延部118及び監視用データラッチ部107)を備える。また、メモリインターフェース回路114は、この監視用の回路の遅延量を変更することにより、リードデータ123を正しくラッチできる遅延範囲127を算出する。さらに、メモリインターフェース回路114は、算出した遅延範囲127を用いて動作用遅延部117の遅延量を調整する。
 これにより、メモリインターフェース回路114は、通常動作に影響を与えない監視用の回路を用いて、遅延量のキャリブレーションを行うことができる。よって、メモリインターフェース回路114は、通常動作を中断することなく、通常動作中に遅延量のキャリブレーションを行うことができる。
 さらに、本発明の実施の形態1に係るメモリインターフェース回路114は、監視用の回路を用いて算出された遅延範囲127からウィンドウ幅128を算出する。また、メモリインターフェース回路114は、算出したウィンドウ幅128が広くなるように、メモリデバイス101のドライブ能力を調整する。
 これにより、メモリインターフェース回路114は、通常動作に影響を与えない監視用の回路を用いて、メモリデバイス101のドライブ能力のキャリブレーションを行うことができる。よって、メモリインターフェース回路114は、メモリデバイス101のドライブ能力設定を、通常動作中も継続して調整することができる。
 (実施の形態2)
 本発明の実施の形態2では、データ信号線が複数の場合に対応したメモリインターフェース回路について説明する。
 ここで、データ信号線が複数本である場合、上述した実施の形態1の構成では、遅延調整の精度は複数のデータ信号間のばらつき分悪くなる。これに対して、本発明の実施の形態2に係るメモリインターフェース回路は、複数のデータ信号のそれぞれに対して独立に遅延量を調整することにより、遅延調整の精度を向上できる。
 図7は、本発明の実施の形態2に係るメモリシステム200のブロック図である。なお、図1と同様の要素には同一の符号を付している。また、以下では、実施の形態1に係るメモリシステム100との相違点を主に説明し、重複する説明は省略する。
 本発明の実施の形態2に係るメモリシステム200は、メモリデバイス201と、メモリインターフェース回路214とを含む。ここで、メモリデバイス201及びメモリインターフェース回路214は互いに、2本のデータ信号線102A及び102Bにより接続される点が実施の形態1と異なる。
 また、メモリインターフェース回路214の動的遅延キャリブレーション部215の構成が実施の形態1に係る動的遅延キャリブレーション部115の構成と異なる。具体的には、動的遅延キャリブレーション部215は、図1に示す動作用データラッチ部105と動作用遅延部117と動作用遅延制御部106との代わりに、動作用データラッチ部105A及び105Bと動作用遅延部117A及び117Bと動作用遅延制御部106A及び106Bとを備える。また、動的遅延キャリブレーション部215は、さらに、制御部250と、選択部251及び252とを備える。また、範囲算出部210の機能が範囲算出部110の機能と異なる。
 なお、図7では、図1に示す方向制御部104及びライトデータ121は省略しているが図1と同様の構成である。
 動作用遅延部117Aは、ストローブ信号129を第1動作用遅延量分遅延させることにより、動作用ストローブ信号124Aを生成する。
 動作用遅延部117Bは、ストローブ信号129を第2動作用遅延量分遅延させることにより、動作用ストローブ信号124Bを生成する。
 動作用データラッチ部105Aは、リードデータ123Aを動作用ストローブ信号124Aで示されるタイミング(立ち上がりエッジ)でラッチする。また、動作用データラッチ部105Aは、ラッチしたリードデータ123Aを出力リードデータ122Aとして、内部回路へ出力する。
 動作用データラッチ部105Bは、リードデータ123Bを動作用ストローブ信号124Bで示されるタイミング(立ち上がりエッジ)でラッチする。また、動作用データラッチ部105Bは、ラッチしたリードデータ123Bを出力リードデータ122Bとして、内部回路へ出力する。
 制御部250は、制御信号260に応じて切替信号261を生成する。なお、制御信号260は条件入力として与えられる。例えば、制御信号260は、外部より入力されてもよいし、メモリインターフェース回路214が備える処理部により生成されてもよい。例えば、制御信号260は、リフレッシュ動作であるか否かを示す信号である。この場合、制御部250は、リフレッシュ動作ごとに切替信号261の論理値を反転させる。また、切替信号261は、リードデータ123A(出力リードデータ122A)及びリードデータ123B(出力リードデータ122B)の一方を選択するための信号である。
 選択部252は、切替信号261の論理値に応じて、リードデータ123A及び123Bの一方を選択し、選択したデータを選択リードデータ263として監視用データラッチ部107に出力する。
 監視用データラッチ部107は、選択部252により出力される選択リードデータ263を監視用ストローブ信号125で示されるタイミング(立ち上がりエッジ)でラッチする。また、監視用データラッチ部107は、ラッチしたリードデータ123を監視用データ126として、比較判定部109へ出力する。
 選択部251は、切替信号261の論理値に応じて、出力リードデータ122A及び122Bの一方を選択し、選択したデータを選択出力リードデータ262として比較判定部109に出力する。また、選択部252によりリードデータ123Aが選択される場合、選択部251は出力リードデータ122Aを選択し、選択部252によりリードデータ123Bが選択される場合、選択部251は出力リードデータ122Bを選択する。
 比較判定部109は、選択部251により出力された選択出力リードデータ262の値と、監視用データ126の値とを比較する。例えば、比較判定部109は、当該二つのデータの値が一致しているか否かを判定する。
 範囲算出部210は、切替信号261の論理値に応じて、比較判定部109による判定結果を用いて、遅延範囲127A又は127Bを算出する。具体的には、範囲算出部210は、切替信号261によりリードデータ123A(出力リードデータ122A)を選択することが示される場合には、比較判定部109による判定結果を用いて、遅延範囲127Aを算出する。また、範囲算出部210は、切替信号261によりリードデータ123B(出力リードデータ122B)を選択することが示される場合には、比較判定部109による判定結果を用いて、遅延範囲127Bを算出する。なお、範囲算出部210による遅延範囲127A及び127Bの算出方法の詳細は、実施の形態1に係る範囲算出部110による遅延範囲127の算出方法と同様である。
 動作用遅延制御部106Aは、範囲算出部210により算出された遅延範囲127A内に、動作用遅延部117Aが用いる第1動作用遅延量を設定する。
 動作用遅延制御部106Bは、範囲算出部210により算出された遅延範囲127B内に、動作用遅延部117Bが用いる第2動作用遅延量を設定する。
 なお、動作用遅延制御部106A及び106Bの詳細な動作は、実施の形態1で説明した動作用遅延制御部106の動作と同様である。
 また、リードデータ123A及び123Bは、それぞれ本発明の第1データ信号及び第2データ信号に相当する。また、遅延範囲127A及び127Bは、それぞれ本発明の第1遅延範囲及び第2遅延範囲に相当する。また、動作用遅延部117A及び117Bは、それぞれ本発明の第2遅延部及び第3遅延部に相当する。また、第1動作用遅延量及び第2動作遅延量は、それぞれ本発明の第2遅延量及び第3遅延量に相当する。また、動作用ストローブ信号124A及び動作用ストローブ信号124Bは、それぞれ本発明の第2遅延ストローブ信号及び第3遅延ストローブ信号に相当する。また、動作用データラッチ部105A及び105Bは、それぞれ本発明の第2データラッチ部及び第3データラッチ部に相当する、また、出力リードデータ122A及び122Bは、それぞれ本発明の第2ラッチデータ信号及び第3ラッチデータ信号に相当する。また、監視用データ126は、本発明の第1ラッチデータ信号及び第4ラッチデータ信号に相当する。また、動作用遅延制御部106A及び106Bは、本発明の第2遅延制御部及び第3遅延制御部に相当する。また、選択部252及び251は、それぞれ本発明の第1選択部及び第2選択部に相当する。また、選択リードデータ263及び選択出力リードデータ262は、それぞれ本発明の選択データ信号及び選択ラッチデータ信号に相当する。
 以上により、本発明の実施の形態2に係るメモリインターフェース回路214は、複数のリードデータ123A及び123Bのそれぞれに対して遅延量を調整することにより、遅延調整の精度を向上できる。
 また、本発明の実施の形態2に係るメモリインターフェース回路214は、遅延値の観測対象である複数のリードデータ123A及び123Bのそれぞれを、選択部251及び252で切り換えることで、複数の観測対象に対して監視用遅延部118と監視用データラッチ部107と監視用遅延制御部108と比較判定部109と範囲算出部210とを共用できる。このように、メモリインターフェース回路214は、観測対象を切り換える構成によって、半導体集積回路装置における実装面積を削減できる。
 なお、上記説明では、2本のデータ信号線102A及び102Bを用いる例を説明したが、3本以上の場合にも、本発明を適用できる。
 (実施の形態3)
 図8は、本発明の実施の形態3に係るメモリシステム300のブロック図である。なお、図1と同様の要素には同一の符号を付している。また、以下では、実施の形態1に係るメモリシステム100との相違点を主に説明し、重複する説明は省略する。
 本発明の実施の形態3に係るメモリシステム300は、メモリデバイス301と、メモリインターフェース回路314とを含む。ここで、メモリデバイス201及びメモリインターフェース回路314は互いに、2本のデータ信号線102A及び102Bと、2本のストローブ信号線103A及び103Bにより接続される点が実施の形態1と異なる。
 メモリインターフェース回路314は、動的遅延キャリブレーション部115A及び115Bと、ドライブ能力設定部116と、範囲演算部370とを備える。
 動的遅延キャリブレーション部115A及び115Bは、それぞれ図1に示す動的遅延キャリブレーション部115と同様の処理部である。
 動的遅延キャリブレーション部115Aには、メモリデバイス301によりデータ信号線102Aに出力されたリードデータ123Aと、ストローブ信号線103Aに出力されたストローブ信号129Aが入力される。また、動的遅延キャリブレーション部115Bには、メモリデバイス301によりデータ信号線102Bに出力されたリードデータ123Bと、ストローブ信号線103Bに出力されたストローブ信号129Bが入力される。なお、リードデータ123A及びリードデータ123Bは、図1に示すリードデータ123に相当する。また、ストローブ信号129A及び129Bは、図1に示すストローブ信号129に相当する。
 また、動的遅延キャリブレーション部115Aはウィンドウ幅128Aを生成し、動的遅延キャリブレーション部115Bはウィンドウ幅128Bを生成する。このウィンドウ幅128A及び128Bは、図1に示すウィンドウ幅128に相当する。
 範囲演算部370は、ウィンドウ幅128A及び128Bに基づき、ウィンドウ幅372を生成する。例えば、範囲演算部370は、ウィンドウ幅128Aとウィンドウ幅128Bとの間の値となるウィンドウ幅372を生成する。具体的には、範囲演算部370は、ウィンドウ幅128Aとウィンドウ幅128Bとの平均値を算出し、算出した平均値をウィンドウ幅372として出力する。なお、範囲演算部370は、ウィンドウ幅128A及び128Bのうち小さい方、又は大きい方を選択し、選択したウィンドウ幅128A又は128Bをウィンドウ幅372として出力してもよい。
 また、範囲演算部370は、このような複数種類の演算のうちいずれかを、制御信号371に応じて選択的に行なってもよい。
 ドライブ能力設定部116は、図1に示すウィンドウ幅128の代わりに、範囲演算部370により生成されたウィンドウ幅372を用いて、上述した実施の形態1と同様の処理を行う。
 なお、リードデータ123A及び123Bは、それぞれ本発明の第1データ信号及び第3データ信号に相当する。また、ストローブ信号129A及び129Bは、それぞれ本発明の第1ストローブ信号及び第2ストローブ信号に相当する。また、ウィンドウ幅128A、128B及び372は、それぞれ本発明の第1遅延範囲幅、第2遅延範囲幅及び第3遅延範囲幅に相当する。また、動的遅延キャリブレーション部115Aに含まれる、監視用遅延部118、監視用データラッチ部107、動作用データラッチ部105、監視用遅延制御部108及び範囲算出部110は、それぞれ、本発明の第1遅延部、第1データラッチ部、第2データラッチ部、第1遅延制御部及び第1範囲算出部に相当する。また、動的遅延キャリブレーション部115Bに含まれる、監視用遅延部118、監視用データラッチ部107、動作用データラッチ部105、監視用遅延制御部108及び範囲算出部110は、それぞれ、本発明の第4遅延部、第4データラッチ部、第5データラッチ部、第4遅延制御部及び第2範囲算出部に相当する。
 以上により、本発明の実施の形態3に係るメモリインターフェース回路314は、複数の動的遅延キャリブレーション部115A及び115Bと、複数の動的遅延キャリブレーション部115A及び115Bで生成されたウィンドウ幅128A及び128Bを演算する範囲演算部370とを備える。これにより、メモリインターフェース回路314は、複数のリードデータ123A及び123Bと複数のストローブ信号129A及び129Bとに対するウィンドウ幅128A及び128Bを同時に生成できる。
 ここで、半導体集積回路装置において複数のリードデータ123A及び123Bと複数のストローブ信号129A及び129Bについて、上述した実施の形態1に係るメモリインターフェース回路114を用いて時分割にウィンドウ幅を取得することは可能である。しかし、この場合、時間経過に伴う遅延値のばらつきとデータ信号相互の遅延値のばらつきを区別することができない。
 一方、実施の形態3に係るメモリインターフェース回路314は、ウィンドウ幅128A及び128Bを同時に得ることができるため、データ信号相互の遅延値のばらつきのみを算出することができる。これにより、メモリインターフェース回路314は、複数のデータ信号に対して最適なドライブ能力をより高い精度で設定できる。
 なお、動的遅延キャリブレーション部115A及び115Bに、実施の形態2で説明した動的遅延キャリブレーション部215を用いてもよい。
 また、上記実施の形態1~3に係るメモリインターフェース回路114、214及び314に含まれる各処理部は典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。
 また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
 また、本発明の実施の形態1~3に係る、メモリインターフェース回路114、214及び314の機能の一部又は全てを、CPU等のプロセッサがプログラムを実行することにより実現してもよい。
 さらに、本発明は上記プログラムであってもよいし、上記プログラムが記録された記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
 また、本発明は、上述したメモリインターフェース回路114、214及び314として実現できるだけでなく、メモリインターフェース回路114、214及び314に含まれる特徴的な手段をステップとするメモリデバイスのドライブ能力調整方法として実現してもよい。
 さらに、本発明は、このようなメモリインターフェース回路114、214及び314の機能の一部又は全てを実現する半導体集積回路(LSI)として実現してもよい。
 また、本発明は、このようなメモリインターフェース回路114、214又は314と、メモリデバイス101、201又は301とを含むメモリシステム100、200又は300として実現してもよい。
 また、上記実施の形態1~3に係る、メモリインターフェース回路114、214又は314、及びその変形例の機能のうち少なくとも一部を組み合わせてもよい。
 また、上記で用いた数字は、すべて本発明を具体的に説明するために例示するものであり、本発明は例示された数字に制限されない。さらに、ハイ/ローにより表される論理レベルは、本発明を具体的に説明するために例示するものであり、例示された論理レベルと異なる論理レベルの組み合わせにより、同等な結果を得ることも可能である。また、構成要素間の接続関係は、本発明を具体的に説明するために例示するものであり、本発明の機能を実現する接続関係はこれに限定されない。
 また、上記メモリインターフェース回路114、214又は314の構成は、本発明を具体的に説明するために例示するためのものであり、本発明に係るメモリインターフェース回路114、214又は314は、上記構成の全てを必ずしも備える必要はない。言い換えると、本発明に係るメモリインターフェース回路114、214又は314は、本発明の効果を実現できる最小限の構成のみを備えればよい。
 例えば、上記説明では、メモリインターフェース回路114、214及び314は、遅延量のキャリブレーション機能と、メモリデバイスのドライブ能力のキャリブレーション機能とを両方有しているが、一方のみを有してもよい。
 同様に、上記のメモリインターフェース回路114、214又は314によるメモリデバイスのドライブ能力調整方法は、本発明を具体的に説明するために例示するためのものであり、本発明に係るメモリインターフェース回路114、214又は314によるメモリデバイスのドライブ能力調整方法は、上記ステップの全てを必ずしも含む必要はない。言い換えると、本発明に係るメモリインターフェース回路114、214又は314によるメモリデバイスのドライブ能力調整方法は、本発明の効果を実現できる最小限のステップのみを含めばよい。また、上記のステップが実行される順序は、本発明を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。
 更に、本発明の主旨を逸脱しない限り、本実施の形態に対して当業者が思いつく範囲内の変更を施した各種変形例も本発明に含まれる。
 本発明は、メモリインターフェース回路に適用できる。また、本発明は、当該メモリインターフェース回路を搭載したDTV(デジタルテレビ)、DVDレコーダ、BDレコーダ、デジタルスチルカメラ、デジタルビデオカメラ、及び携帯電話等に適用できる。
 100、200、300 メモリシステム
 101、201、301 メモリデバイス
 102、102A、102B データ信号線
 103、103A、103B ストローブ信号線
 104 方向制御部
 105、105A、105B 動作用データラッチ部
 106、106A、106B 動作用遅延制御部
 107 監視用データラッチ部
 108 監視用遅延制御部
 109 比較判定部
 110、210 範囲算出部
 111 ドライブ能力制御部
 112 コマンド生成部
 113 コマンド信号線
 114、214、314 メモリインターフェース回路
 115、115A、115B、215 動的遅延キャリブレーション部
 116 ドライブ能力設定部
 117、117A、117B 動作用遅延部
 118 監視用遅延部
 121 ライトデータ
 122、122A、122B 出力リードデータ
 123、123A、123B リードデータ
 124、124A、124B 動作用ストローブ信号
 125 監視用ストローブ信号
 126 監視用データ
 127、127A、127B 遅延範囲
 128、128A、128B、372 ウィンドウ幅
 129、129A、129B ストローブ信号
 130 基準ウィンドウ幅
 140、141 境界
 250 制御部
 251、252 選択部
 260、371 制御信号
 261 切替信号
 262 選択出力リードデータ
 263 選択リードデータ
 370 範囲演算部
 602、604、606、608、802、804 ドライブ能力値

Claims (11)

  1.  第1データ信号を出力するとともに当該第1データ信号を駆動するドライブ能力を変更可能なメモリデバイスに接続されたメモリインターフェース回路であって、
     前記メモリデバイスにより出力された第1ストローブ信号を第1遅延量分遅延させることにより第1遅延ストローブ信号を生成する第1遅延部と、
     前記第1遅延ストローブ信号で示されるタイミングで前記第1データ信号を第1ラッチデータ信号としてラッチする第1データラッチ部と、
     前記第1データ信号を第2ラッチデータ信号としてラッチする第2データラッチ部と、
     前記第1遅延量の値を順次変更する第1遅延制御部と、
     前記第1データラッチ部が前記第1データ信号を前記第1ラッチデータ信号として正しくラッチできる前記第1遅延量の値の範囲の幅である第1遅延範囲幅を算出する第1範囲算出部と、
     前記第1遅延範囲幅が広くなるように前記メモリデバイスの前記ドライブ能力を調整するドライブ能力設定部とを備える
     メモリインターフェース回路。
  2.  前記第2データラッチ部は、前記第2ラッチデータ信号を外部に出力する
     請求項1記載のメモリインターフェース回路。
  3.  前記メモリインターフェース回路は、さらに、
     前記第1遅延制御部により変更された第1遅延量の値ごとに、前記第1ラッチデータ信号と前記第2ラッチデータ信号とが一致するか否かを判定する比較判定部を備え、
     前記第1範囲算出部は、前記比較判定部による判定結果を用いて、前記第1ラッチデータ信号と前記第2ラッチデータ信号とが一致する前記第1遅延量の値の範囲の幅を前記第1遅延範囲幅として算出する
     請求項1記載のメモリインターフェース回路。
  4.  前記メモリインターフェース回路は、さらに、
     前記第1ストローブ信号を第2遅延量分遅延させることにより第2遅延ストローブ信号を生成する第2遅延部を備え、
     前記第2データラッチ部は、前記第1データ信号を前記第2遅延ストローブ信号で示されるタイミングで前記第2ラッチデータ信号としてラッチし、
     前記第1範囲算出部は、前記比較判定部による判定結果を用いて、前記第1ラッチデータ信号と前記第2ラッチデータ信号とが一致する前記第1遅延量の値の範囲である第1遅延範囲を判定し、
     前記メモリインターフェース回路は、さらに、
     前記第1遅延範囲内に前記第2遅延量の値を設定する第2遅延制御部を備える
     請求項3記載のメモリインターフェース回路。
  5.  前記ドライブ能力設定部は、
     前記メモリデバイスの前記ドライブ能力を順次変更し、
     変更した前記ドライブ能力ごとに、前記第1範囲算出部により算出された前記第1遅延範囲幅を格納し、格納した複数の第1遅延範囲幅のうち最も大きい第1遅延範囲幅のドライブ能力に前記メモリデバイスの前記ドライブ能力を調整する
     請求項1記載のメモリインターフェース回路。
  6.  前記ドライブ能力設定部は、
     前記メモリデバイスの前記ドライブ能力を第1方向に変更し、
     変更したドライブ能力時の前記第1遅延範囲幅から、当該変更の直前のドライブ能力時の前記第1遅延範囲幅を減算した値が第1閾値未満になるまで、前記ドライブ能力を前記第1方向に変更する処理を繰り返し、
     前記減算した値が前記第1閾値以上になった場合、前記メモリデバイスの前記ドライブ能力を前記第1方向と逆の第2方向に変更し、
     変更したドライブ能力時の前記第1遅延範囲幅から、当該変更の直前のドライブ能力時の前記第1遅延範囲幅を減算した値が第2閾値未満になるまで、前記ドライブ能力を前記第2方向に変更する処理を繰り返し、
     変更した前記ドライブ能力ごとに、前記第1範囲算出部により算出された前記第1遅延範囲幅を格納し、
     格納した複数の第1遅延範囲幅のうち最も大きい第1遅延範囲幅のドライブ能力に前記メモリデバイスの前記ドライブ能力を調整する
     請求項5記載のメモリインターフェース回路。
  7.  前記メモリデバイスは、さらに、第2データ信号を出力するとともに、当該第2データ信号を駆動するドライブ能力を変更可能であり、
     前記メモリインターフェース回路は、さらに、
     前記第1ストローブ信号を第3遅延量分遅延させることにより第3遅延ストローブ信号を生成する第3遅延部と、
     前記第3遅延ストローブ信号で示されるタイミングで前記第2データ信号を第3ラッチデータ信号としてラッチするとともに、当該第3ラッチデータ信号を外部に出力する第3データラッチ部とを備え、
     前記第1データラッチ部は、さらに、前記第1遅延ストローブ信号で示されるタイミングで前記第2データ信号を第4ラッチデータ信号としてラッチし、
     前記比較判定部は、さらに、前記第1遅延制御部により変更された第1遅延量の値ごとに、前記第4ラッチデータ信号と前記第3ラッチデータ信号とが一致するか否かを判定し、
     前記第1範囲算出部は、さらに、前記比較判定部による判定結果を用いて、前記第4ラッチデータ信号と前記第3ラッチデータ信号とが一致する前記第1遅延量の値の範囲である第2遅延範囲を判定し、
     前記メモリインターフェース回路は、さらに、
     前記第2遅延範囲内に前記第3遅延量の値を設定する第2遅延制御部を備える
     請求項4記載のメモリインターフェース回路。
  8.  前記メモリインターフェース回路は、さらに、
     前記第1データ信号及び前記第2データ信号の一方を選択し、選択した前記第1データ信号又は前記第2データ信号を選択データ信号として出力する第1選択部と、
     前記第1選択部により前記第1データ信号が選択される場合、前記第2ラッチデータ信号を選択し、前記第1選択部により前記第2データ信号が選択される場合、前記第3ラッチデータ信号を選択し、選択した前記第2ラッチデータ信号又は前記第3ラッチデータ信号を選択ラッチデータ信号として出力する第2選択部とを備え、
     前記第1データラッチ部は、前記選択データ信号を前記第1ラッチデータ信号又は前記第4ラッチデータ信号としてラッチし、
     前記比較判定部は、前記第1遅延制御部により変更された第1遅延量の値ごとに、前記選択ラッチデータ信号と、前記第1ラッチデータ信号又は前記第4ラッチデータ信号とが一致するか否かを判定する
     請求項7記載のメモリインターフェース回路。
  9.  前記メモリデバイスは、さらに、第3データ信号及び第2ストローブ信号を出力するとともに、当該第3データ信号を駆動するドライブ能力を変更可能であり、
     前記メモリインターフェース回路は、さらに、
     前記第2ストローブ信号を第4遅延量分遅延させることにより第4遅延ストローブ信号を生成する第4遅延部と、
     前記第4遅延ストローブ信号で示されるタイミングで前記第3データ信号を第5ラッチデータ信号としてラッチする第4データラッチ部と、
     前記第3データ信号を第6ラッチデータ信号としてラッチするとともに、当該第6ラッチデータ信号を外部に出力する第5データラッチ部と、
     前記第4遅延量の値を順次変更する第4遅延制御部と、
     前記第4データラッチ部が前記第2データ信号を前記第5ラッチデータ信号として正しくラッチできる前記第4遅延量の値の範囲の幅である第2遅延範囲幅を算出する第2範囲算出部と、
     前記第1遅延範囲幅の値と前記第2遅延範囲幅の値との間の値となる第3遅延範囲幅を生成する範囲演算部とを備え、
     前記ドライブ能力設定部は、前記第3遅延範囲幅が広くなるように、前記メモリデバイスの前記ドライブ能力を調整する
     請求項1記載のメモリインターフェース回路。
  10.  前記第1データラッチ部は、前記第1遅延ストローブ信号の立下りエッジ及び立ち上がりエッジの両方で前記第1データ信号を前記第1ラッチデータ信号としてラッチする
     請求項1記載のメモリインターフェース回路。
  11.  第1データ信号を出力するとともに当該第1データ信号を駆動するドライブ能力を変更可能なメモリデバイスのドライブ能力を調整するメモリデバイスのドライブ能力調整方法であって、
     前記メモリデバイスにより出力された第1ストローブ信号を第1遅延量分遅延させることにより第1遅延ストローブ信号を生成する第1遅延ステップと、
     前記第1遅延ストローブ信号で示されるタイミングで前記第1データ信号を第1ラッチデータ信号としてラッチする第1データラッチステップと、
     前記第1データ信号を第2ラッチデータ信号としてラッチする第2データラッチステップと、
     前記第1遅延量の値を順次変更する第1遅延制御ステップと、
     前記第1データラッチステップで前記第1データ信号を前記第1ラッチデータ信号として正しくラッチできる前記第1遅延量の値の範囲の幅である第1遅延範囲幅を算出する第1範囲算出ステップと、
     前記第1遅延範囲幅が広くなるように、前記メモリデバイスの前記ドライブ能力を調整するドライブ能力設定ステップとを含む
     メモリデバイスのドライブ能力調整方法。
PCT/JP2010/004502 2009-11-20 2010-07-12 メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法 WO2011061875A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/474,154 US8344776B2 (en) 2009-11-20 2012-05-17 Memory interface circuit and drive capability adjustment method for memory device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-265702 2009-11-20
JP2009265702A JP5427564B2 (ja) 2009-11-20 2009-11-20 メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/474,154 Continuation US8344776B2 (en) 2009-11-20 2012-05-17 Memory interface circuit and drive capability adjustment method for memory device

Publications (1)

Publication Number Publication Date
WO2011061875A1 true WO2011061875A1 (ja) 2011-05-26

Family

ID=44059364

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/004502 WO2011061875A1 (ja) 2009-11-20 2010-07-12 メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法

Country Status (3)

Country Link
US (1) US8344776B2 (ja)
JP (1) JP5427564B2 (ja)
WO (1) WO2011061875A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8565033B1 (en) * 2011-05-31 2013-10-22 Altera Corporation Methods for calibrating memory interface circuitry

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298557B2 (en) * 2013-08-26 2016-03-29 Elite Semiconductor Memory Technology Inc. Method of booting system having non-volatile memory device with erase checking and calibration mechanism and related memory device
US9704591B2 (en) 2014-12-17 2017-07-11 Sandisk Technologies Llc Temperature independent reference current generation for calibration
US10026462B1 (en) * 2017-05-16 2018-07-17 Micron Technology, Inc. Apparatuses and methods for providing constant DQS-DQ delay in a memory device
US10347307B2 (en) * 2017-06-29 2019-07-09 SK Hynix Inc. Skew control circuit and interface circuit including the same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004185608A (ja) * 2002-11-21 2004-07-02 Matsushita Electric Ind Co Ltd データのラッチタイミング調整装置
JP2005159702A (ja) * 2003-11-26 2005-06-16 Renesas Technology Corp 半導体装置
WO2010038422A1 (ja) * 2008-10-01 2010-04-08 パナソニック株式会社 メモリインターフェース
JP2010182149A (ja) * 2009-02-06 2010-08-19 Renesas Electronics Corp メモリ制御装置、及びメモリ制御方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1156420B1 (en) * 1998-12-15 2005-07-06 Matsushita Electric Industrial Co., Ltd. Clock phase adjustment method, and integrated circuit and design method therefor
TWI256542B (en) * 2002-03-22 2006-06-11 Via Tech Inc Data latch time control method and device
JP2004074623A (ja) 2002-08-20 2004-03-11 Ricoh Co Ltd 画像形成装置
US6911851B2 (en) 2002-11-21 2005-06-28 Matsushita Electric Industrial Co., Ltd. Data latch timing adjustment apparatus
JP4916699B2 (ja) * 2005-10-25 2012-04-18 エルピーダメモリ株式会社 Zqキャリブレーション回路及びこれを備えた半導体装置
US7755402B1 (en) * 2006-04-28 2010-07-13 Nvidia Calibration of separate delay effects for multiple data strobe signals
JP4959264B2 (ja) * 2006-09-15 2012-06-20 株式会社リコー メモリ制御装置
JP4928232B2 (ja) 2006-11-16 2012-05-09 株式会社大一商会 遊技機
JP2008182516A (ja) * 2007-01-25 2008-08-07 Fujitsu Ltd インタフェース回路および半導体集積回路
JP5056070B2 (ja) * 2007-02-28 2012-10-24 富士通セミコンダクター株式会社 Ddr−sdramインターフェース回路

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004185608A (ja) * 2002-11-21 2004-07-02 Matsushita Electric Ind Co Ltd データのラッチタイミング調整装置
JP2005159702A (ja) * 2003-11-26 2005-06-16 Renesas Technology Corp 半導体装置
WO2010038422A1 (ja) * 2008-10-01 2010-04-08 パナソニック株式会社 メモリインターフェース
JP2010182149A (ja) * 2009-02-06 2010-08-19 Renesas Electronics Corp メモリ制御装置、及びメモリ制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8565033B1 (en) * 2011-05-31 2013-10-22 Altera Corporation Methods for calibrating memory interface circuitry

Also Published As

Publication number Publication date
JP5427564B2 (ja) 2014-02-26
US8344776B2 (en) 2013-01-01
US20120229186A1 (en) 2012-09-13
JP2011108351A (ja) 2011-06-02

Similar Documents

Publication Publication Date Title
JP4629778B2 (ja) チップ性能を最大にするように負荷サイクル回路を自動的に自己較正するための装置及び方法
JP4920512B2 (ja) キャリブレーション回路及びこれを備える半導体装置、並びに、データ処理システム
US8364434B2 (en) Calibration circuit
US7528626B2 (en) Semiconductor memory device with ZQ calibration circuit
JP5427564B2 (ja) メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法
WO2010038422A1 (ja) メモリインターフェース
WO2010137330A1 (ja) 遅延調整装置、遅延調整方法
KR20150050021A (ko) 종단 저항을 보정하는 반도체 메모리 장치 및 그것의 종단 저항 보정 방법
CN101013883A (zh) 数据延迟控制电路及方法
JP6432699B2 (ja) メモリコントローラ
US9257968B2 (en) Duty cycle correction circuit and operation method thereof
JP2008135925A (ja) キャリブレーション回路
US7949080B2 (en) Phase adjusting function evaluating method, transmission margin measuring method, information processing apparatus and computer readable information recording medium
JP2010081577A (ja) 半導体装置およびデータ伝送システム
JP2012129851A (ja) 半導体装置
US20090027093A1 (en) Sampling circuit and method
KR20030087902A (ko) 반도체 기억 장치
US20230350452A1 (en) Semiconductor apparatus including a clock path
US8842485B2 (en) Delay circuit, delay controller, memory controller, and information terminal
US8929173B1 (en) Data strobe control device
US9355707B2 (en) Gapless pattern detection circuit and semiconductor device including the same
US20230282256A1 (en) Semiconductor device for calculating and calibrating delay amount
JP2005167779A (ja) 半導体装置
US9336840B2 (en) Semiconductor apparatus capable of compensating for data output time and method for controlling the same
JP2007148914A (ja) ラッチタイミング調整装置及びその調整方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10831275

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10831275

Country of ref document: EP

Kind code of ref document: A1