WO2010100685A1 - Memory device and memory control device - Google Patents
Memory device and memory control device Download PDFInfo
- Publication number
- WO2010100685A1 WO2010100685A1 PCT/JP2009/004199 JP2009004199W WO2010100685A1 WO 2010100685 A1 WO2010100685 A1 WO 2010100685A1 JP 2009004199 W JP2009004199 W JP 2009004199W WO 2010100685 A1 WO2010100685 A1 WO 2010100685A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- memory
- unit
- command
- memory device
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4076—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/022—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in I/O circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/023—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
- G11C7/222—Clock generating, synchronizing or distributing circuits within memory device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2254—Calibration
Definitions
- the present invention relates to a memory device and a memory control device capable of adjusting an access timing accompanying an increase in speed in a system using the memory device.
- Memory devices such as SDRAM (Synchronous Dynamic Random Access Memory) and memory control devices that send and receive data to and from memory devices use technology that performs data transfer in a source-synchronous manner in response to requests for faster data transfer. ing.
- a strobe signal is transmitted and received together with data.
- the strobe signal and the data timing are adjusted so that the valid period of the data can be received by the strobe signal.
- timing adjustment As the frequency of data transfer increases, the effective range of data for stably receiving data becomes smaller when receiving data with a strobe signal. Furthermore, since the relationship between the data and the strobe signal fluctuates due to factors such as process characteristics, temperature changes, and voltage changes, it is necessary to perform the above timing adjustment flexibly.
- the strobe signal is delayed by a delay element and the timing with the data is adjusted so that the delay amount at the delay element can be variably controlled.
- the delay amount at the delay element can be variably controlled.
- data is written to a memory device, the data is read, and whether the read data matches the written data, the corresponding delay amount is It is determined whether the amount of delay is enough for data transfer.
- a delay amount range (Window) in which data can be stably transferred is detected.
- the conventional system has adopted a method of determining uniquely for each system and a method of determining by searching for an optimum delay amount at the start of operation for each individual.
- the range of the delay amount for stably transferring data varies even in time series due to the various factors described above, there is a case where the delay amount searched at the start of operation cannot stably transmit / receive data. It has become.
- a strobe signal delayed by a different delay amount is provided in addition to a strobe signal delayed by a delay amount at the time of normal data reception in a data receiving circuit in a memory control device.
- normal data reception and delay amount search can be performed simultaneously, and delay amount search is performed without interfering with data transmission / reception of system application operations.
- the memory control device when configured to receive data by delaying one strobe signal by a plurality of delay amounts, it is difficult to match the delay characteristics in the respective data reception paths. Therefore, the accuracy of the delay value search with the increase in speed is reduced. In addition, since there are a plurality of data receiving circuits, there is a problem that the circuit scale increases.
- An object of the present invention is to provide a highly accurate delay amount that enables stable data transfer without interfering with data transfer to a memory device required for application operation even during operation of an application that requires real-time performance.
- An object of the present invention is to provide a memory device and a memory control device capable of performing a search.
- the memory device of the present invention at least one memory cell, at least one storage means (register set, SRAM), an input / output buffer, the storage means, and the memory cell, Detecting the detection by detecting a command indicating access to the storage means issued to the memory device, a selector for connecting the input / output buffer indicated by a predetermined selection signal, and the memory device
- a special command detection unit for outputting a signal, and a data path for outputting to the selector as a selection signal a signal indicating that the selector selects the storage means for a certain period of time in accordance with the detection signal from the special command detection unit
- a management unit for managing the detection by detecting a command indicating access to the storage means issued to the memory device.
- the storage means is specifically a register set, for example. Further, the storage means may be SRAM (Static Random Access Memory).
- a storage means (register set) is provided.
- data transfer for searching for a delay amount can be performed during a period in which the data bus cannot be used due to a memory device control rule such as a refresh operation of the memory device. For this reason, a delay amount search can be performed during the operation of the application without hindering the data transfer necessary for the original application operation.
- This memory device has the following configuration.
- storage means register set
- the data bus can be used by accessing the storage means (register set) during a period in which the data bus cannot be used according to the conventional memory control rules.
- the memory control device of the present invention includes a command issuing unit that issues a read command that instructs a predetermined memory device to read data from a predetermined storage unit included in the memory device, and the memory
- a data transmission / reception unit for delaying a strobe signal output from the device and receiving storage data stored in a memory cell included in the memory device from the memory device using the delayed strobe signal;
- the data read from the storage means is compared with the expected value data held in advance, and when the stored data stored in the memory cell is received, the strobe is determined by the delay time specified by the comparison result.
- a delay control unit that delays the signal by the data transmission / reception unit.
- the control rule of access to the storage means (register set) is interpreted.
- a period during which the data bus cannot be used in the conventional control rule is used.
- a function for searching for a delay amount by transmitting / receiving data to / from the storage means (register set) is provided.
- timing adjustment for stably performing high-speed data transfer can be performed with high accuracy without affecting the execution of an application that requires real-time performance.
- FIG. 1 is a block diagram illustrating a configuration example of a memory device and a memory control device.
- FIG. 2 is a flowchart showing an operation example in the configuration example of FIG.
- FIG. 3 is a timing chart showing a specific example of register read in the configuration example of FIG.
- FIG. 4 is a flowchart showing an operation example in the configuration example of FIG.
- a register set 102 is provided in the memory device 100 (FIG. 1) separately from the memory cell 101. Then, the memory control device 110 (FIG. 1) accesses the register set 102 during a period in which the memory cell 101 cannot be accessed. As a result, the memory controller 110 can perform timing adjustment by data transfer with the register set 102. As a result, timing can be adjusted with high accuracy without affecting the execution of an application that requires real-time performance.
- FIG. 1 is a diagram illustrating the memory device 100 and the memory control device 110.
- the memory device 100 includes a memory cell 101, a register set 102, a selector 103, an input / output buffer 104, a special command detection unit 105, and a data path management unit 106. Note that the memory device 100 may further include other components other than these components as appropriate.
- the memory device 100 usually receives a command from the memory control device 110 through a command bus, and transmits / receives data mainly from the memory cell 101 to / from the memory control device 110 through the input / output buffer 104 according to the contents of the command. .
- the special command detection unit 105 When the special command detection unit 105 detects a special command for accessing the register set 102 among the commands received by the memory device 100, the special command detection unit 105 sends a detection signal indicating the detection to the data path management unit 106. Output.
- the data path management unit 106 notifies the selector 103 of a selection signal, which will be described in detail later, according to the command content of the detected special command.
- the selection signal is a signal for selecting one of the register set 102 and the memory cell 101.
- the selector 103 causes the selected device to connect to the input / output buffer 104.
- the selector 103 has a function of selecting either the register set 102 or the memory cell 101 and causing the selected device to connect to the input / output buffer 104. That is, the selector 103 selects one of the two paths of the register set 102 and the memory cell 101 based on the notification (previously described) from the data path management unit 106. Then, the data path management unit 106 selects one of the register set 102 and the memory cell 101 (selection side) indicated by the notified selection signal, and selects the input / output buffer 104 and the selection side as a selector. 103.
- the register set 102 can have a plurality of registers. Then, the special command detection unit 105 may notify the register set 102 of address information included in the detected command of the special command. Then, the special command detection unit 105 selects the register of the address indicated by the address information to be notified, that is, the corresponding register in the register set 102 by this notification, and the selected register and the input / output buffer 104 are selected. Connect. That is, when the former is selected from among the register set 102 and the memory cell 101, more specifically, a register is selected from a plurality of registers in the register set 102.
- the input / output buffer 104 transmits / receives data and a strobe signal to / from the memory control device 110 in synchronization with the internal clock signal. For this reason, of the two paths, the path from the memory device 100 to the memory controller 110 passing through the memory cell 101 and the selector 103 and the path to the memory controller 110 passing through the register set 102 and the selector 103. The memory control device 110 cannot recognize the path difference.
- the memory control device 110 includes a data transmission / reception unit 111, a delay control unit 112, a memory state management unit 113, a command issue unit 114, and a command management unit 115.
- the data transmission / reception unit 111 includes a delay unit 116 and a data reception circuit 117.
- the delay control unit 112 includes a data comparison unit 118, a delay value management unit 119, an expected value 120, and an address information addition unit 121.
- the memory state management unit 113 manages the memory state of the memory device 100 according to the control rules of the memory device 100.
- the command management unit 115 outputs a command to the memory device 100 to the command issuing unit 114 in accordance with the information from the memory state management unit 113. That is, the command management unit 115 issues a command to the memory device 100 by the command issuing unit 114 by outputting the command to the command issuing unit 114.
- the command issuing unit 114 issues the command received from the command management unit 115 to the memory device 100.
- the data transmission / reception unit 111 When the data transmission / reception unit 111 receives data from the memory device 100, the data transmission / reception unit 111 delays the strobe signal by the delay unit 116 according to the delay value information from the delay value management unit 119. Then, the data transmitting / receiving unit 111 receives data from the memory device 100 by the data receiving circuit 117 using the delayed strobe signal.
- the delay control unit 112 compares the data and notifies the delay value management unit 119 of the comparison result. Specifically, the delay control unit 112 includes predetermined data (register data) received by the data transmission / reception unit 111 from the memory device 100 by the data reception circuit 117 and an expected value 120 of the delay control unit 112. And compare. More specifically, the delay control unit 112 performs this comparison using the data comparison unit 118. Then, the delay control unit 112 notifies the delay value management unit 119 of the comparison result. Note that the delay control unit 112 includes, for example, an expected value storage unit that stores the expected value 120. Note that the symbol “120” may be understood to indicate the expected value storage unit.
- the delay value management unit 119 determines, based on the notified comparison result, whether the currently output delay value is a delay value at which data transfer is possible. That is, if the notified comparison result is the same comparison result, the delay value management unit 119 determines that the current delay value is a delay value that allows data transfer. Then, the delay value management unit 119 outputs delay value information (described above) to the delay unit 116 based on the determination result of this determination.
- the delay control unit 112 determines whether the register data from the memory device 100 and the expected value 120 are the same by the data comparison unit 118. Then, the delay control unit 112 specifies the delay value information to be output based on the determination result of the determination by the delay value management unit 119, and the delay value information is specified by the delay value management unit 119. To output.
- the delay unit 116 of the data transmission / reception unit 111 may include two parts. That is, for example, the delay unit 116 may include not only the first delay unit for the strobe signal but also the second delay unit for the data signal, and the data receiving circuit 117 also has the configuration described above. Another configuration may be used.
- FIG. 2 is a flowchart showing an operation example in the configuration example of FIG. 1, and the operation will be described below with reference to FIG.
- step Sa after the operation of the system 1 is started and the initialization operation of the memory device 100 is completed, the delay control unit 112 starts searching for a range of delay values in which data can be received.
- this search may be a search using the register set 102, but here, an example of a search using the memory cell 101 will be described.
- the delay value management unit 119 issues a write command to the command management unit 115 in order to write the same value as the expected value 120 into the memory cell 101.
- the command management unit 115 confirms whether or not a write command may be issued based on information from the memory state management unit 113, and issues a write command to the command issue unit 114.
- the command issuing unit 114 issues the write command received from the command management unit 115 to the memory device 100.
- the memory device 100 interprets the write command received from the memory control device 110, and stores the expected value data received from the memory control device 110 via the input / output buffer 104 in the memory cell 101.
- the data path management unit 106 issues a notification that the selector 103 normally selects the memory cell 101.
- the delay value management unit 119 sets the delay value to the minimum value, and the delay control unit 112 issues a read command to the command management unit 115.
- the memory device 100 interprets the read command received from the memory control device 110, reads data from the memory cell 101, and outputs expected value data via the input / output buffer 104.
- the data transmitting / receiving unit 111 delays the strobe signal by the delay unit 116 by the delay value which is the minimum value, and receives the data by the data receiving circuit 117.
- the received data is compared with the expected value 120 by the data comparison unit 118, and the result of the comparison is notified to the delay value management unit 119.
- the delay value management unit 119 determines that the minimum delay value is a data receivable delay value.
- the minimum delay value is not data receivable. Judge that.
- the delay value management unit 119 can know the range of the delay value in which data can be received.
- the intermediate value is determined as the delay value at which data can be received most stably, and the intermediate value is output to the delay unit 116 by the delay value management unit 119.
- the delay value search method in step Sa is not limited to this embodiment, and may be a statically set range or a search method using another algorithm. Further, in order to determine the delay value at which data can be received most stably, a value obtained by another calculation formula may be used instead of the intermediate value of the delay value range.
- step Sb the system 1 performs normal system operation.
- data transmission / reception from the memory control device 110 to the memory device 100 is also performed by the system 1.
- step Sc the delay control unit 112 manages the timing at which the delay value search should be performed every certain period, and determines whether it is the timing. If it is not the timing, the system 1 continues the normal operation of step Sb (step Sc: No), and if it is the timing, the system 1 proceeds to step Sd (step Sc: Yes).
- step Sc a case where it is determined here that the timing of the refresh operation of the memory device 100 is the timing of performing a delay value search will be described. That is, for example, in step Sc, the delay control unit 112 detects that the memory device 100 has started refreshing based on information from the memory state management unit 113, and determines that it is the timing of the delay value search (step Sc). : Yes).
- step Sd the delay control unit 112 determines whether there is time to process a read command for searching for a delay value. The determination here is performed in order to confirm whether or not there is an influence on data transmission / reception of a normal application by executing a read command for delay value search.
- step Sc: Yes since the start of the refresh is detected and the process proceeds to step Sd (step Sc: Yes), it can be determined in advance that there is no data transmission / reception for the normal application for a certain period after the refresh. Therefore, it can be determined that the normal application is not affected (step Sd: Yes).
- step Sd No
- step Sf Yes
- step Sf the delay value search is not performed for all delay values, but the reception of data in the vicinity of the minimum value and the vicinity of the maximum value only in the currently known delay value range (Window) is determined. A method of updating the value and the maximum value will be described. In addition, the method after step Sf is not limited to this description, You may search all the delay values, and you may use another algorithm.
- step Sf the delay value management unit 119 outputs the maximum value of the window currently grasped to the delay unit 116.
- step Sg in order to receive the expected value data from the register set 102, the command management unit 115 issues a special register read command different from the read command to the memory cell 101 by the command issuing unit 114.
- the delay value management unit 119 may cause the command management unit 115 to issue it.
- a data pattern suitable for delay value adjustment is stored in the expected value 120 and the register set 102, and a plurality of data patterns may be used.
- the address information adding unit 121 A data pattern can be selected by including address information in the register read command.
- the memory state management unit 113 grasps a control rule for the read command to the register set 102 different from the control rule for the read command to the memory cell 101.
- step Sg the memory device 100 that has received the register read command interprets the special command detection unit 105 as a read command to the register set 102. After the interpretation, the special command detection unit 105 notifies the register set 102 of address information and a read instruction, and notifies the data path management unit 106 to select the register set 102.
- step Sg the data path management unit 106 instructs the selector 103 to select the register set 102 at the timing when the data is output from the register set 102. Select. Data output from the register set 102 is output to the memory control device 110 via the input / output buffer 104.
- step Sh the delay unit 116 delays the strobe signal by the delay value set to the maximum value of the window, and the data receiving circuit 117 receives the data.
- the data comparison unit 118 compares the received data with the expected value 120 and notifies the delay value management unit 119 of the result.
- step Sh: Yes the delay value management unit 119 proceeds to step Si, determines that the maximum value of the window is still valid, and further increases the delay value by one. In order to confirm whether or not this is the next time, the maximum value information of the grasped window is increased by one and the maximum value information is updated. On the other hand, if the comparison results do not match (step Sh: No), the delay value management unit 119 proceeds to step Sj, determines that the maximum value of the window is invalid, and determines a smaller value as the maximum value of the window. Therefore, the maximum value information is reduced by one and the maximum value information is updated.
- step Sk using the updated maximum value information and separately acquired minimum value information, the intermediate value is determined to be the delay value at which data can be received most stably at present, and the intermediate value is delayed.
- the delay value management unit 119 outputs to the unit 116.
- step Sd the operation from step Sd to step Sk is replaced by the minimum value instead of the maximum value of the window, and the detailed description is omitted.
- Step Sq and Step Sr since the minimum value of Window is updated, it is decreased by 1 when the comparison result is coincident, and is incremented by 1 when the comparison result is not coincident.
- step Ss After step Ss, return to step Sb again.
- FIG. 3 shows an example of a timing diagram when the register read command is issued in FIG. 2 (see step Sg and step So).
- the command issuing unit 114 issues a refresh command to the memory device 100.
- the delay control unit 112 determines that it is the window detection timing of step Sc in FIG. 2 (step Sc: Yes), and at the same time, determines that it is the timing at which register read is possible at step Sd. (Step Sd: Yes).
- the command issuing unit 114 issues a register read command (step Sg), and then the output signal from the data path management unit 106 selects the register set 102 from the signal for selecting the memory cell 101. Switch to signal.
- the delay value management unit 119 sets the delay value to the delay unit 116 to the maximum value of the window (step Sf).
- switching timing of the output signal from the data path management unit 106 and the timing (C) are not limited to the present description, and may be in the reverse order or the same timing.
- the comparison result of the comparison by the data comparison unit 118 with respect to the received data reaches the delay value management unit 119, and in this case, it is notified that they match.
- a comparison result a plurality of data are received, and when all these data match the expected value, a comparison result that matches is sent.
- the number of data is not limited to this description.
- a register read command may be issued a plurality of times, and the result of comparing all the expected values may be used.
- the data path management unit 106 returns the output signal to the output signal of the output value for selecting the memory cell 101.
- the delay value management unit 119 receives the comparison result of coincidence, and increases the maximum value information of the window by one (step Si in FIG. 2).
- the numerical value 0x40 was first grasped as the maximum value, it is assumed that the value is updated to 0x41.
- the delay value management unit 119 resets the intermediate value 0x30 to the delay unit 116 (step Sk).
- the intermediate value is calculated by the round-down method, but it may be rounded up. Or, since it is not possible to determine here whether or not 0x41 is a valid delay value in the intermediate value calculation with the maximum value increased by one, even if it is determined that truncation is safer than rounding up Good.
- step So it is determined that there is still room for executing the register read command, and the register read command is issued at timing (G) (step So).
- the data path management unit 106 changes the output signal so as to select the register set 102.
- the delay value management unit 119 next outputs the minimum value of the window to the delay unit 116 (step Sn).
- step Sn the minimum value information is increased by one from 0x20 to 0x21 (step Sr).
- step Sr the delay value to the delay unit 116 is set to the intermediate value 0x31 (step Ss).
- the data path management unit 106 changes the output signal so as to select the memory cell 101 at the timing when the data output from the register set 102 is completed.
- the register read command is issued twice (step Sg and the like) during the refresh operation after the normal application read operation (step Sb) and the read operation thereafter. Since this register read command uses the data bus that was originally unavoidable for the refresh operation, it does not affect the read operation due to the normal application operation.
- the register read command may be executed several times by changing the data pattern, may be executed only once, or the determination of the maximum value and the minimum value may be performed twice or more.
- a special register read command is used.
- the special command detection unit 105 interprets the refresh command as a read command to the register set 102 and converts the data from the register set 102 to the memory control device. 110 may be output. In that case, whether the special command detection unit 105 interprets the refresh command as a read command to the register set 102 may be set in a mode, or may be determined by an address signal or the like.
- FIG. 4 shows an embodiment (second embodiment) of a memory device and a memory control device.
- an example of writing data to the register set 102 in the configuration of FIG. 1 will be described with reference to a timing chart of FIG.
- the delay control unit 112 detects that there is a timing for transmitting data to the register set 102 based on information from the memory state management unit 113.
- the command management unit 115 (delay control unit 112). ) Can be determined (see step Sc in FIG. 2).
- the command management unit 115 issues a special register write command to the register set 102 to the memory device 100 by the command issuing unit 114.
- the delay control unit 112 causes the command management unit 115 to issue it.
- the data to be written by this issue is selected from the expected value 120.
- the address information adding unit 121 can include address information for designating which register to write.
- the delay control unit 112 determines that a read command to the register set 102 can be issued (see step Sd), and issues a register read command.
- the description of the comparison of the expected value after that will be omitted, but when the output data from the register set 102 is output to the memory control device 110 via the input / output buffer 104, the output of the data path management unit 106 is the memory cell. 101 is selected.
- a read command by a normal application is issued to the memory device 100 by the memory control device 110, and data from the memory cell 101 of the memory device 100 is output to the memory control device 110 by the memory device 100.
- data can be stored in the register set 102 without interfering with normal application operation.
- various data patterns are used when searching for a delay value, or an expected value comparison is performed using a data pattern other than the initial value of the register set 102.
- the command management unit 115 may issue a command while viewing the information of the memory state management unit 113 so that the access between the memory cell 101 and the register set 102 does not collide. By performing such issuance, priority can be given to access to the register set 102 for searching for delay values over normal applications.
- the memory device (memory device 100) which is an embodiment for carrying out the present invention is constituted by the first embodiment and the second embodiment, respectively.
- the memory device includes a memory cell (memory cell 101).
- the memory cell stores storage data that a predetermined application stores in the memory device by a predetermined memory control device (memory control device 110).
- the stored data is received by the memory control device when a strobe signal output from the memory device to the memory control device is used in the memory control device.
- the stored data is stored when a predetermined transmission / reception is impossible (for example, when the memory device is in a mode in which data is not input / output from the memory cell, a refresh command is issued to the memory device). And when the memory device is in a refresh mode or when the data bus is not used due to a bank conflict), the memory device transmits to the memory control device and the memory control device to the memory device. And / or receiving data is impossible data.
- the time when the transmission / reception is disabled may be, for example, a time determined by a standard for the memory device.
- the memory cell may be, for example, a DRAM (Dynamic Random Access Memory) memory cell including a capacitor (capacitor) that stores charges representing information to be stored.
- a DRAM Dynamic Random Access Memory
- the charge of the capacitor is gradually lost due to the leakage current. Therefore, in such a DRAM memory cell, an operation (refresh) is necessary to replenish the charge lost due to the leakage current.
- the storage data of the memory cell to be refreshed cannot be received or transmitted.
- the memory device further includes a register set (register set 102).
- the register set stores register data.
- the stored register data is data that can be transmitted by the memory device to the memory control device when the transmission / reception is impossible.
- the memory device includes a special command detection unit, a data path management unit, and a selector. Then, when a special command issued by the memory controller to the memory device is detected by the special command detection unit, and the detection is performed, the data path management unit and the selector perform appropriate operations, so that the register data is Communication is performed between the memory device and the memory control device (steps Sg and So).
- the memory device includes an input / output buffer.
- the input / output buffer performs buffering of data to be communicated so that data (memory cell data and register data) communicated between the memory device and the memory control device is appropriately communicated.
- the memory control device (memory control device 110), which is an embodiment when the present invention is implemented, is configured.
- This memory control device includes a delay unit (delay unit 116), a data reception unit (data transmission / reception unit 111), a determination unit (data comparison unit 118), a control unit (delay control unit 112, command management unit 115), Is provided.
- the delay unit delays the strobe signal output from the predetermined memory device (memory device 100) to the memory control device by a predetermined delay time.
- the data receiving unit receives storage data stored in the memory device by a predetermined application from the memory device using the strobe signal delayed by the delay unit.
- the data receiving unit receives register data (stored expected value 120) stored in a predetermined memory cell (memory cell 101) included in the memory device from the memory device.
- the data receiving unit receives register data from the memory device when a predetermined transmission / reception is impossible, in which at least one of reception and transmission by the memory control device of the storage data of the memory device is impossible. Is received (steps Sg, So).
- the determination unit determines whether or not the content (expected value 120) of the register data stored in the memory device is the same as the received register data. For example, the determination unit obtains the content of the stored register data from an expected value storage unit that stores the content of the register data, and performs a determination between the stored content and the received register data.
- the control unit uses the delay unit to output the strobe signal when the stored data of the application is received by the data reception unit. Delay by the delay time. Further, when it is determined that they are not the same, the control unit causes the delay unit to perform a delay for the second delay time when the stored data is received.
- the first delay time is a predetermined time in the vicinity of the delay time (determination delay time) at the time of reception of the register data received at the time of determination.
- the second delay time is a time that is not included in the vicinity of the determination delay time.
- the vicinity of the determination delay time is, for example, the determination delay time is one end (for example, the maximum time), the center value of the time range that is a predetermined other end (for example, the minimum time), This is a range between the determination delay time.
- the first delay time is the time of the center value
- the second delay time is a predetermined time closer to the other end than the center value. At this time, in the second delay time, the time difference from the first delay time to the determination delay time is larger than the time difference from the first delay time to the determination delay time.
- system 1 including the memory device and the memory control device is configured.
- the delay time when the stored data is received is appropriately selected by the control unit from the first delay time and the second delay time.
- an appropriate delay time is selected as the delay time when the stored data is received, for example, according to the ambient temperature of the memory system.
- the memory device includes the memory cell. Thus, by using this memory cell, communication necessary for determination is performed when the transmission / reception is impossible.
- an appropriate delay time is selected as the delay time when the stored data is received, it is possible to avoid that the access of the memory device by the application is hindered. This makes it possible to both select an appropriate delay time and avoid an access hindrance by the application. As a result, the delay time can be adjusted with high accuracy without affecting the execution of an application that requires real-time performance.
- the memory cell can be configured in accordance with the standard. As a result, the system configuration can be simplified.
- At least one memory cell (memory cell 101), at least one register set (register set 102, storage unit), and input / output buffer (input / output buffer), respectively.
- a selector (selector 103) that connects the register set and the memory cell indicated by a predetermined selection signal and the input / output buffer, and is issued to the memory device
- a special command detection unit (special command detection unit 105) that detects a command for accessing the register set and outputs a detection signal indicating the detection, and according to the detection signal from the special command detection unit, A signal indicating that the selector selects the register set for a certain period is used as the selection signal.
- Memory device is formed comprising data path management unit for outputting a selector and a (data path management unit 106). For example, the data path management unit may continue outputting the signal for a certain period, and the selector may select the register set while the output continues.
- the memory cell is, for example, an SDRAM memory cell, and when the transmission / reception is disabled, communication of stored data stored in the memory cell is impossible.
- the data of the register set (register data) is data that can be communicated when such transmission / reception is impossible.
- the command is detected by the special command detection unit, and the selector connects the register set to the input / output buffer, whereby the register data is communicated through the input / output buffer.
- the special command detection unit detects a read command to the register set, and the special command detection unit outputs a detection signal indicating that the register set has detected the read command to the data path management unit. After that, the register value stored in the register set is output, and after the register value is output from the register set, the selector selects the one that is not the register set, that is, the memory cell. Is configured.
- the special command detection unit detects a write command to the register set, and the special command detection unit outputs a detection signal indicating that the register set has detected the write command to the data path management unit.
- the selector set After the data is input from the outside of the memory device (the input expected value 120) is stored in the register set, the selector set stores the data input from the outside, The memory device is configured to select the one that is not the register set, that is, the memory cell.
- the register set includes a plurality of registers, and the special command detection unit outputs address information (for example, a register number) included in the detected command to the register set, and the register set includes the register Based on the address information output by the set, a memory device is configured to select a register for reading from and writing to the register from the plurality of registers. That is, the register set selects a register specified by the address information as a register for reading and writing.
- address information for example, a register number
- a command issuing unit that issues a read command that instructs the memory device (memory device 100) to read data from a predetermined register set (register set 102) of the memory device.
- Issuance unit 114) and a strobe signal output from the memory device is delayed by a delay unit 116, and storage data stored in a memory cell included in the memory device is transmitted from the memory device using the delayed strobe signal.
- Data transmitting / receiving unit to be received data transmitting / receiving unit 111
- data read from the register set of the memory device read register data
- expected value data expected value 120 held in advance
- the strobe signal is sent to the delay of the data transmitting / receiving unit for a delay time specified by the comparison result (either the first delay time or the second delay time).
- a memory control device having a delay control unit (delay control unit 112) for delaying by the unit.
- the delay control unit adds address information for selecting one register from a plurality of registers included in the register set to the read command, and further includes a plurality of sets of expected value data,
- a memory control device is configured to compare data read from a memory device and expected value data corresponding to a register selected by the address information among the plurality of sets of expected value data .
- a data transmission / reception unit that transmits / receives data to / from a predetermined memory device; and a write that instructs the memory device to write data to a predetermined register set (register set 102) of the memory device
- a memory control device having a command issuing unit (command issuing unit 114) for issuing a command is configured.
- the command issuing unit acquires, from the command management unit 115, a command for accessing the register set issued by the command management unit 115 to the command issuing unit, and sends the acquired command to the memory device. Issue.
- a memory state management unit (memory state management unit 113) for detecting the mode of the memory device, and the memory device to the command issuing unit based on the mode of the memory device notified from the memory state management unit.
- a command management unit (command management unit 115) for instructing the issuance of a command to the memory unit, and the command management unit is configured to transfer the register set to the register set when the memory device does not input / output data from the memory cell.
- a memory control device is configured to instruct the command issuing unit to issue a command for instructing reading or writing of data.
- the command management unit instructs the command issuing unit to issue a command for reading or writing data to the register set when the memory device is in a refresh mode. Composed.
- the command management unit instructs the command issuing unit to issue a command to instruct reading or writing of data to the register set when the data bus is not used due to a bank conflict in the memory device.
- a memory control device is configured.
- the command management unit detects whether or not transmission / reception is disabled as described above, and sends a command to access the register set only when it is detected that transmission / reception is disabled. May be issued to the memory device.
- the data transmitting / receiving unit includes a delay unit that delays the strobe signal based on delay value information from the delay control unit, and receives data from the memory device using the delayed strobe signal.
- a memory control device is configured.
- the delay control unit is a value for delaying the strobe signal in a range where the data (register data) read from the memory device matches the expected value data (expected value 120) held in advance. (For example, holding range value specifying information for specifying the range), and executing the read command using a value larger than the upper limit value of the matching range as the value to be delayed.
- the memory control device is configured to update the range of the held delay value.
- updating the range means, for example, changing the held range from the range before the update to the range after the update.
- the updated range is a range obtained by adding a predetermined neighborhood of the delay value when data (register data) is read to the range before the update.
- the delay control unit holds a value for delaying the strobe signal in a range in which the data read from the memory device matches the expected value data held in advance, and the delay control unit The read command is executed using a value smaller than the upper limit value of the matching range, and the data read from the memory device by the execution does not match the expected value data held in advance.
- the memory control device is configured to update the range of the delay value.
- the range after the update by the update is a range in which a predetermined neighborhood of the delay value when the data (register data) is read is excluded from the range before the update.
- the delay control unit holds a value for delaying the strobe signal in a range in which the data read from the memory device matches the expected value data held in advance, and the delay control unit The read command is executed using a value smaller than the lower limit value of the matching range, and the data read from the memory device by the execution matches the expected value data held in advance.
- the memory control device is configured to update the range of the delay value.
- the updated range is a range obtained by adding a predetermined neighborhood of the delay value when data (register data) is read to the range before the update.
- the delay control unit holds a value for delaying the strobe signal in a range in which the data read from the memory device matches the expected value data held in advance, and the delay control unit , Execute the read command using a value larger than the lower limit value of the matching range, and hold when the data read from the memory device by the execution does not match the expected value data held in advance
- the memory control device is configured to update the range of the delay value.
- the range after the update by the update is a range in which a predetermined neighborhood of the delay value when the data (register data) is read is excluded from the range before the update.
- an integrated circuit including each part of the memory device may be configured.
- the above memory device may be configured as an integrated circuit.
- an integrated circuit including each part of the memory control device may be configured.
- the above description shows a control method for controlling the delay time of the strobe signal by including the steps performed by the memory device and the memory control device.
- an operation method of the memory device including only a part performed by the memory device is shown in each process.
- an operation method of the memory control device including only a part performed by the above-described memory control device in each process is shown.
- the memory device and the memory control device according to the present invention can perform timing adjustment for data transfer with high accuracy even during execution of an application that requires real-time performance. It can be suitably used.
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
Abstract
Data transmission for adjusting timing for stable data transmission/reception may prevent data transmission required for an application operation. To cope with this, a register set (102) is arranged in a memory device (100) separately from a memory cell (101) and the register set (102) is accessed during an access-disabled period to the memory cell (101) so as to enable timing adjustment. Thus, it is possible to perform timing adjustment without affecting execution of an application.
Description
本発明は、メモリ装置を用いるシステムにおいて、高速化に伴うアクセスタイミングの調整を行うことが可能な、メモリ装置およびメモリ制御装置に関するものである。
The present invention relates to a memory device and a memory control device capable of adjusting an access timing accompanying an increase in speed in a system using the memory device.
SDRAM(Synchronous Dynamic Random Access Memory)などのメモリ装置、およびメモリ装置とのデータ送受信を行うメモリ制御装置では、データ転送の高速化要求に対して、ソースシンクロナス方式でデータ転送を行う技術が用いられている。ソースシンクロナス方式では、データとともにストローブ信号を送受信する。
Memory devices such as SDRAM (Synchronous Dynamic Random Access Memory) and memory control devices that send and receive data to and from memory devices use technology that performs data transfer in a source-synchronous manner in response to requests for faster data transfer. ing. In the source synchronous method, a strobe signal is transmitted and received together with data.
ソースシンクロナス方式でデータ転送を行うシステムでは、例えば、メモリ制御装置がメモリ装置からのデータを受信する場合、データの有効期間をストローブ信号で受け取れるようにストローブ信号とデータのタイミングを調整する。
In a system that performs data transfer by the source synchronous method, for example, when the memory control device receives data from the memory device, the strobe signal and the data timing are adjusted so that the valid period of the data can be received by the strobe signal.
このタイミング調整において、データ転送の高周波数化に伴い、ストローブ信号でデータを受け取る際に、安定してデータを受信するためのデータの有効範囲が小さくなる。さらに、プロセス特性、温度変化、電圧変化等の要因で、データとストローブ信号との関係が変動するため、上記のタイミング調整を柔軟に行う必要が生じている。
In this timing adjustment, as the frequency of data transfer increases, the effective range of data for stably receiving data becomes smaller when receiving data with a strobe signal. Furthermore, since the relationship between the data and the strobe signal fluctuates due to factors such as process characteristics, temperature changes, and voltage changes, it is necessary to perform the above timing adjustment flexibly.
このため、従来のデータ受信回路では、例えば、ストローブ信号を遅延素子で遅延させ、データとのタイミングを合わせる構成を採り、前記遅延素子での遅延量を可変制御できるようにしている。一般的に、データ転送を安定して行える遅延量を探索するために、メモリ装置にデータを書き込み、そのデータを読み出し、読み出したデータが書き込んだデータと一致するかどうかで、該当遅延量が、データ転送可能な遅延量かどうかを判断する。そして、この動作を繰り返すことで、安定してデータ転送が可能な遅延量の範囲(Window)を検出する。
For this reason, in the conventional data receiving circuit, for example, the strobe signal is delayed by a delay element and the timing with the data is adjusted so that the delay amount at the delay element can be variably controlled. Generally, in order to search for a delay amount that allows stable data transfer, data is written to a memory device, the data is read, and whether the read data matches the written data, the corresponding delay amount is It is determined whether the amount of delay is enough for data transfer. By repeating this operation, a delay amount range (Window) in which data can be stably transferred is detected.
この遅延量の決定に際して、従来システムでは、システム別に一意に決定する方法や、固体別に、動作開始時に最適な遅延量探索を行って決定する方法などが採られてきた。しかし、データを安定して転送するための遅延量の範囲が、前記様々な要因で時系列でも変動するため、動作開始時に探索した遅延量では、安定してデータを送受信できない場合があり、問題となっている。
In the determination of the delay amount, the conventional system has adopted a method of determining uniquely for each system and a method of determining by searching for an optimum delay amount at the start of operation for each individual. However, since the range of the delay amount for stably transferring data varies even in time series due to the various factors described above, there is a case where the delay amount searched at the start of operation cannot stably transmit / receive data. It has become.
このため、システムの動作中においても遅延量の探索を行うことで、安定してデータ転送が可能な遅延量を探索する必要があるが、遅延量の探索のためにメモリ装置へのデータ送受信が必要となり、本来、システムのアプリケーション動作に必要であったデータ送受信を妨げてしまうことになる。
For this reason, it is necessary to search for a delay amount capable of stably transferring data by performing a search for the delay amount even during operation of the system. This is necessary and obstructs data transmission / reception that was originally necessary for the application operation of the system.
ある従来技術によれば、メモリ制御装置でのデータ受信回路で、通常のデータ受信時の遅延量で遅延させたストローブ信号とは別に、異なる遅延量で遅延させたストローブ信号を設ける。そして、それぞれのストローブ信号で受け取ったデータを、互いに比較することで、通常のデータ受信と、遅延量探索を同時に行うことを可能とし、システムのアプリケーション動作のデータ送受信を妨げることなく、遅延量探索を行っている(特許文献1参照)。
According to a certain prior art, a strobe signal delayed by a different delay amount is provided in addition to a strobe signal delayed by a delay amount at the time of normal data reception in a data receiving circuit in a memory control device. By comparing the data received by each strobe signal with each other, normal data reception and delay amount search can be performed simultaneously, and delay amount search is performed without interfering with data transmission / reception of system application operations. (See Patent Document 1).
なお、ここでは、ソースシンクロナス方式でのデータ転送を例に挙げた説明を行ったが、本発明はこれに限定するものではなく、遅延量の調整が必要なシステムすべてに当てはめることができる。
Note that, here, the explanation has been given by taking the data transfer in the source synchronous method as an example, but the present invention is not limited to this, and can be applied to all systems that require adjustment of the delay amount.
しかし、上記のように、メモリ制御装置で、複数の遅延量で、1つのストローブ信号をそれぞれ遅延させて、データを受け取る構成を採る場合、それぞれのデータ受信経路での遅延特性を合わせることが困難であり、高速化に伴う遅延値探索の精度が落ちてしまう。また、データ受け取り回路を複数持つため、回路規模も大きくなってしまうという課題がある。
However, as described above, when the memory control device is configured to receive data by delaying one strobe signal by a plurality of delay amounts, it is difficult to match the delay characteristics in the respective data reception paths. Therefore, the accuracy of the delay value search with the increase in speed is reduced. In addition, since there are a plurality of data receiving circuits, there is a problem that the circuit scale increases.
本発明の目的は、リアルタイム性を必要とするアプリケーションの動作中においても、アプリケーション動作に必要なメモリ装置へのデータ転送を妨げることなく、安定したデータ転送を可能にする、精度の高い遅延量の探索を行うことの可能なメモリ装置およびメモリ制御装置を提供することにある。
An object of the present invention is to provide a highly accurate delay amount that enables stable data transfer without interfering with data transfer to a memory device required for application operation even during operation of an application that requires real-time performance. An object of the present invention is to provide a memory device and a memory control device capable of performing a search.
上記目的を達成するため、本発明のメモリ装置では、少なくとも1つのメモリセルと、少なくとも1つの記憶手段(レジスタセット、SRAM)と、入出力バッファと、前記記憶手段および前記メモリセルのうちで、予め定められた選択信号が示す方と、前記入出力バッファとを接続するセレクタと、当該メモリ装置へと発行された、前記記憶手段へのアクセスを行うコマンドを検出し、検出したことを示す検出信号を出力する特殊コマンド検出部と、前記特殊コマンド検出部からの前記検出信号に応じて一定期間前記セレクタが前記記憶手段を選択することを示す信号を前記選択信号として前記セレクタに出力するデータパス管理部とを備える。
To achieve the above object, in the memory device of the present invention, at least one memory cell, at least one storage means (register set, SRAM), an input / output buffer, the storage means, and the memory cell, Detecting the detection by detecting a command indicating access to the storage means issued to the memory device, a selector for connecting the input / output buffer indicated by a predetermined selection signal, and the memory device A special command detection unit for outputting a signal, and a data path for outputting to the selector as a selection signal a signal indicating that the selector selects the storage means for a certain period of time in accordance with the detection signal from the special command detection unit And a management unit.
ここで、記憶手段は、具体的には、例えばレジスタセットである。また、記憶手段は、SRAM(Static Random Access Memory)でもよい。
Here, the storage means is specifically a register set, for example. Further, the storage means may be SRAM (Static Random Access Memory).
つまり、メモリセルの他に、記憶手段(レジスタセット)を備える。これにより、メモリ装置のリフレッシュ動作など、メモリ装置の制御ルール上、データバスを使用できない期間に、遅延量探索のためのデータ転送を行うことができる。このため、本来のアプリケーション動作に必要なデータ転送を妨げずに、アプリケーションの動作中に遅延量探索を行うことができる。
That is, in addition to the memory cell, a storage means (register set) is provided. As a result, data transfer for searching for a delay amount can be performed during a period in which the data bus cannot be used due to a memory device control rule such as a refresh operation of the memory device. For this reason, a delay amount search can be performed during the operation of the application without hindering the data transfer necessary for the original application operation.
このメモリ装置では、次の構成が採られる。つまり、リフレッシュ動作など内部のメモリセルへのアクセスができないことに起因するメモリ制御上のルールから生じるデータバスの不使用期間を使えるようにするために、メモリセルとは別に記憶手段(レジスタセット)を持つ構成が採られる。この構成は、従来のメモリ制御のルール上、データバスが使用できなかった期間に、前記記憶手段(レジスタセット)とのアクセスをすることで、データバスを使用できるようにする構成である。
This memory device has the following configuration. In other words, in order to be able to use the unused period of the data bus resulting from memory control rules due to the inability to access internal memory cells such as refresh operations, storage means (register set) separate from the memory cells The structure with is taken. In this configuration, the data bus can be used by accessing the storage means (register set) during a period in which the data bus cannot be used according to the conventional memory control rules.
また、本発明のメモリ制御装置は、予め定められたメモリ装置に対して、当該メモリ装置が有する予め定められた記憶手段からのデータ読み出しを指示するリードコマンドを発行するコマンド発行部と、前記メモリ装置が出力するストローブ信号を遅延すると共に、前記メモリ装置が備えるメモリセルに記憶された記憶データを、遅延されたストローブ信号を用いて当該メモリ装置から受信するデータ送受信部と、前記メモリ装置の前記記憶手段から読み出されたデータと、予め保持している期待値データとを比較し、前記メモリセルに記憶された前記記憶データの受信に際して、当該比較の結果より特定される遅延時間だけ前記ストローブ信号を前記データ送受信部により遅延させる遅延制御部とを有する。
In addition, the memory control device of the present invention includes a command issuing unit that issues a read command that instructs a predetermined memory device to read data from a predetermined storage unit included in the memory device, and the memory A data transmission / reception unit for delaying a strobe signal output from the device and receiving storage data stored in a memory cell included in the memory device from the memory device using the delayed strobe signal; The data read from the storage means is compared with the expected value data held in advance, and when the stored data stored in the memory cell is received, the strobe is determined by the delay time specified by the comparison result. A delay control unit that delays the signal by the data transmission / reception unit.
つまり、メモリ制御装置においても、従来のメモリ装置の制御ルールに加えて、記憶手段(レジスタセット)へのアクセスの制御ルールを解釈する。そして、従来の制御ルールではデータバスが使用できなかった期間を用いる。そして、記憶手段(レジスタセット)へのデータ送受信で遅延量の探索を行う機能を設ける。
That is, in the memory control device, in addition to the control rule of the conventional memory device, the control rule of access to the storage means (register set) is interpreted. A period during which the data bus cannot be used in the conventional control rule is used. A function for searching for a delay amount by transmitting / receiving data to / from the storage means (register set) is provided.
本発明によれば、リアルタイム性を必要とするアプリケーションの実行へ影響することなく、高速なデータ転送を安定して行うためのタイミング調整を高精度で行うことができる。
According to the present invention, timing adjustment for stably performing high-speed data transfer can be performed with high accuracy without affecting the execution of an application that requires real-time performance.
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
近年では次の問題がある。すなわち、メモリ装置とのデータ転送を高速に行うメモリ制御装置において、データ転送の高速化に伴い、データ送受信を安定して行うためのタイミング調整を、システムのアプリケーションの動作中にも行う必要がある。しかし、タイミング調整のためのデータ転送を行うと、本来のアプリケーション動作に必要なデータ転送を妨げてしまい、例えば、リアルタイム性の必要なアプリケーション動作の保証が困難になる。
In recent years, there are the following problems. That is, in a memory control device that performs high-speed data transfer with a memory device, it is necessary to perform timing adjustment for stable data transmission / reception during operation of the system application as data transfer speeds up. . However, when data transfer for timing adjustment is performed, data transfer necessary for original application operation is hindered, and for example, it is difficult to guarantee application operation that requires real-time performance.
そこで、以下の実施の形態では、メモリ装置100(図1)内にメモリセル101とは別に、レジスタセット102を設ける。そして、メモリセル101へのアクセス不可期間に、レジスタセット102へのアクセスをメモリ制御装置110(図1)が行う。これにより、レジスタセット102とのデータ転送によって、タイミング調整をメモリ制御装置110が行うことが可能になる。これにより、リアルタイム性を必要とするアプリケーションの実行に影響を与えないで、高精度にタイミング調整できる。
Therefore, in the following embodiment, a register set 102 is provided in the memory device 100 (FIG. 1) separately from the memory cell 101. Then, the memory control device 110 (FIG. 1) accesses the register set 102 during a period in which the memory cell 101 cannot be accessed. As a result, the memory controller 110 can perform timing adjustment by data transfer with the register set 102. As a result, timing can be adjusted with high accuracy without affecting the execution of an application that requires real-time performance.
以下、詳しく説明される。
The details will be described below.
<第1の実施形態>
図1は、メモリ装置100およびメモリ制御装置110を示す図である。 <First Embodiment>
FIG. 1 is a diagram illustrating the memory device 100 and the memory control device 110.
図1は、メモリ装置100およびメモリ制御装置110を示す図である。 <First Embodiment>
FIG. 1 is a diagram illustrating the memory device 100 and the memory control device 110.
図1において、メモリ装置100は、メモリセル101、レジスタセット102、セレクタ103、入出力バッファ104、特殊コマンド検出部105、データパス管理部106を備える。なお、メモリ装置100は、これらの構成要素以外の他の構成要素をさらに適宜備えてもよい。
1, the memory device 100 includes a memory cell 101, a register set 102, a selector 103, an input / output buffer 104, a special command detection unit 105, and a data path management unit 106. Note that the memory device 100 may further include other components other than these components as appropriate.
メモリ装置100は、通常、コマンドバスを通してメモリ制御装置110よりコマンドを受け取り、そのコマンドの内容に応じて、主にメモリセル101からのデータを、入出力バッファ104を通じて、メモリ制御装置110と送受信する。
The memory device 100 usually receives a command from the memory control device 110 through a command bus, and transmits / receives data mainly from the memory cell 101 to / from the memory control device 110 through the input / output buffer 104 according to the contents of the command. .
特殊コマンド検出部105は、メモリ装置100により受け取られる各コマンドのなかに、レジスタセット102へのアクセスをするための特殊コマンドを検出すると、検出したことを示す検出信号を、データパス管理部106に出力する。
When the special command detection unit 105 detects a special command for accessing the register set 102 among the commands received by the memory device 100, the special command detection unit 105 sends a detection signal indicating the detection to the data path management unit 106. Output.
データパス管理部106は、検出された特殊コマンドのコマンド内容に応じて、セレクタ103に対して、後で詳しく説明される選択信号を通知する。選択信号は、レジスタセット102と、メモリセル101とのうちから、一方を選択する信号である。
The data path management unit 106 notifies the selector 103 of a selection signal, which will be described in detail later, according to the command content of the detected special command. The selection signal is a signal for selecting one of the register set 102 and the memory cell 101.
セレクタ103は、入出力バッファ104との接続を選択した装置に行わせる。具体的には、セレクタ103は、レジスタセット102とメモリセル101とのどちらかを選択して、選択した装置に、入出力バッファ104との接続を行わせる機能を持つ。すなわち、セレクタ103は、データパス管理部106からの通知(先述)により、レジスタセット102のパスと、メモリセル101のパスとの2つのパスから、どちらかのパスを選択する。そして、データパス管理部106は、レジスタセット102と、メモリセル101とのうちで、通知された選択信号により示される方(選択側)を選択し、入出力バッファ104と選択側とを、セレクタ103に接続させる。
The selector 103 causes the selected device to connect to the input / output buffer 104. Specifically, the selector 103 has a function of selecting either the register set 102 or the memory cell 101 and causing the selected device to connect to the input / output buffer 104. That is, the selector 103 selects one of the two paths of the register set 102 and the memory cell 101 based on the notification (previously described) from the data path management unit 106. Then, the data path management unit 106 selects one of the register set 102 and the memory cell 101 (selection side) indicated by the notified selection signal, and selects the input / output buffer 104 and the selection side as a selector. 103.
なお、レジスタセット102は、複数のレジスタを持つことができる。そして、特殊コマンド検出部105は、検出した特殊コマンドのコマンド内に含まれるアドレス情報を、レジスタセット102に通知してもよい。そして、特殊コマンド検出部105は、この通知をすることで、レジスタセット102内の、通知するアドレス情報が示すアドレスのレジスタ、すなわち該当レジスタを選択して、選択したレジスタと入出力バッファ104との接続を行う。つまり、レジスタセット102とメモリセル101とのうちで前者が選択される際に、より具体的には、レジスタセット102の複数のレジスタからレジスタが選択される。
Note that the register set 102 can have a plurality of registers. Then, the special command detection unit 105 may notify the register set 102 of address information included in the detected command of the special command. Then, the special command detection unit 105 selects the register of the address indicated by the address information to be notified, that is, the corresponding register in the register set 102 by this notification, and the selected register and the input / output buffer 104 are selected. Connect. That is, when the former is selected from among the register set 102 and the memory cell 101, more specifically, a register is selected from a plurality of registers in the register set 102.
入出力バッファ104では、内部クロック信号によって同期して、メモリ制御装置110と、データ、およびストローブ信号をそれぞれ送受信する。このため、メモリセル101とセレクタ103とを通る、メモリ装置100からメモリ制御装置110までの経路と、レジスタセット102とセレクタ103とを通るメモリ制御装置110までの経路との2つの経路のうちでの経路の差は、メモリ制御装置110からは認識できないようになっている。
The input / output buffer 104 transmits / receives data and a strobe signal to / from the memory control device 110 in synchronization with the internal clock signal. For this reason, of the two paths, the path from the memory device 100 to the memory controller 110 passing through the memory cell 101 and the selector 103 and the path to the memory controller 110 passing through the register set 102 and the selector 103. The memory control device 110 cannot recognize the path difference.
一方、メモリ制御装置110は、データ送受信部111、遅延制御部112、メモリ状態管理部113、コマンド発行部114およびコマンド管理部115を備える。ここで、データ送受信部111は、遅延部116およびデータ受け取り回路117を備える。また、遅延制御部112は、データ比較部118、遅延値管理部119、期待値120およびアドレス情報付加部121を備える。
Meanwhile, the memory control device 110 includes a data transmission / reception unit 111, a delay control unit 112, a memory state management unit 113, a command issue unit 114, and a command management unit 115. Here, the data transmission / reception unit 111 includes a delay unit 116 and a data reception circuit 117. The delay control unit 112 includes a data comparison unit 118, a delay value management unit 119, an expected value 120, and an address information addition unit 121.
メモリ状態管理部113は、メモリ装置100の制御ルールに従って、メモリ装置100のメモリ状態を管理する。
The memory state management unit 113 manages the memory state of the memory device 100 according to the control rules of the memory device 100.
コマンド管理部115は、メモリ状態管理部113からの情報に従って、メモリ装置100へのコマンドをコマンド発行部114に出力する。つまり、コマンド管理部115は、コマンド発行部114にコマンドを出力することによって、コマンド発行部114によって、そのコマンドをメモリ装置100に対して発行する。
The command management unit 115 outputs a command to the memory device 100 to the command issuing unit 114 in accordance with the information from the memory state management unit 113. That is, the command management unit 115 issues a command to the memory device 100 by the command issuing unit 114 by outputting the command to the command issuing unit 114.
コマンド発行部114は、コマンド管理部115から受け取ったコマンドを、メモリ装置100に対して発行する。
The command issuing unit 114 issues the command received from the command management unit 115 to the memory device 100.
データ送受信部111は、メモリ装置100からのデータを受信する際、ストローブ信号を、遅延値管理部119からの遅延値情報に従って、遅延部116により遅延させる。そして、データ送受信部111は、データ受け取り回路117によって、その遅延されたストローブ信号で、メモリ装置100からのデータを受け取る。
When the data transmission / reception unit 111 receives data from the memory device 100, the data transmission / reception unit 111 delays the strobe signal by the delay unit 116 according to the delay value information from the delay value management unit 119. Then, the data transmitting / receiving unit 111 receives data from the memory device 100 by the data receiving circuit 117 using the delayed strobe signal.
遅延制御部112は、データの比較を行い、その比較の結果を遅延値管理部119に通知する。具体的には、遅延制御部112は、データ送受信部111が、データ受け取り回路117によってメモリ装置100から受け取った、予め定められたデータ(レジスタデータ)と、この遅延制御部112が有する期待値120とを比較する。そして、遅延制御部112は、さらに具体的には、データ比較部118により、この比較をする。そして、遅延制御部112は、その比較結果を遅延値管理部119に通知する。なお、遅延制御部112は、例えば、期待値120を記憶する期待値記憶部を備える。なお、符号「120」は、この期待値記憶部を指すと理解されてもよい。
The delay control unit 112 compares the data and notifies the delay value management unit 119 of the comparison result. Specifically, the delay control unit 112 includes predetermined data (register data) received by the data transmission / reception unit 111 from the memory device 100 by the data reception circuit 117 and an expected value 120 of the delay control unit 112. And compare. More specifically, the delay control unit 112 performs this comparison using the data comparison unit 118. Then, the delay control unit 112 notifies the delay value management unit 119 of the comparison result. Note that the delay control unit 112 includes, for example, an expected value storage unit that stores the expected value 120. Note that the symbol “120” may be understood to indicate the expected value storage unit.
遅延値管理部119は、通知された比較結果によって、現在出力している遅延値が、データ転送が可能な遅延値かを判断する。つまり、遅延値管理部119は、通知された比較結果が、同一であるとの比較結果である場合、現在の遅延値が、データ転送が可能な遅延値と判断する。そして、遅延値管理部119は、この判断の判断結果に基づき、遅延値情報(先述)を遅延部116へと出力する。
The delay value management unit 119 determines, based on the notified comparison result, whether the currently output delay value is a delay value at which data transfer is possible. That is, if the notified comparison result is the same comparison result, the delay value management unit 119 determines that the current delay value is a delay value that allows data transfer. Then, the delay value management unit 119 outputs delay value information (described above) to the delay unit 116 based on the determination result of this determination.
すなわち、遅延制御部112は、データ比較部118により、メモリ装置100からのレジスタデータと、期待値120とが同一か否かを判断する。そして、遅延制御部112は、遅延値管理部119によって、この判断の判断結果に基づいて、出力する遅延値情報を特定し、遅延値管理部119によって、特定された遅延値情報を遅延部116へと出力する。
That is, the delay control unit 112 determines whether the register data from the memory device 100 and the expected value 120 are the same by the data comparison unit 118. Then, the delay control unit 112 specifies the delay value information to be output based on the determination result of the determination by the delay value management unit 119, and the delay value information is specified by the delay value management unit 119. To output.
なお、図1に示す構成例は一例であって、本発明を限定するものではない。例えば、データ送受信部111の遅延部116は、2つの部分からなってもよい。すなわち、遅延部116は、例えば、ストローブ信号用の第1の遅延部だけでなく、データ信号用の第2の遅延部もあってもよく、データ受け取り回路117も、上述した説明の構成とは別の構成であってもよい。
Note that the configuration example shown in FIG. 1 is an example, and does not limit the present invention. For example, the delay unit 116 of the data transmission / reception unit 111 may include two parts. That is, for example, the delay unit 116 may include not only the first delay unit for the strobe signal but also the second delay unit for the data signal, and the data receiving circuit 117 also has the configuration described above. Another configuration may be used.
図2は、図1の構成例における動作例を示すフロー図であり、以下、図2を用いて動作を説明する。
FIG. 2 is a flowchart showing an operation example in the configuration example of FIG. 1, and the operation will be described below with reference to FIG.
ステップSaでは、システム1の動作が開始して、メモリ装置100の初期化動作が完了した後、遅延制御部112が、データ受信が可能な遅延値の範囲の探索を開始する。なお、この探索では、レジスタセット102を用いての探索でもよいが、ここではメモリセル101を用いての探索の例を説明する。
In step Sa, after the operation of the system 1 is started and the initialization operation of the memory device 100 is completed, the delay control unit 112 starts searching for a range of delay values in which data can be received. Note that this search may be a search using the register set 102, but here, an example of a search using the memory cell 101 will be described.
遅延値管理部119は、期待値120と同じ値をメモリセル101に書き込むために、ライトコマンドをコマンド管理部115に発行する。
The delay value management unit 119 issues a write command to the command management unit 115 in order to write the same value as the expected value 120 into the memory cell 101.
コマンド管理部115は、メモリ状態管理部113からの情報を元に、ライトコマンドを発行してもよいかを確認し、コマンド発行部114にライトコマンドを発行する。
The command management unit 115 confirms whether or not a write command may be issued based on information from the memory state management unit 113, and issues a write command to the command issue unit 114.
コマンド発行部114は、コマンド管理部115から受け取ったライトコマンドをメモリ装置100に発行する。
The command issuing unit 114 issues the write command received from the command management unit 115 to the memory device 100.
以下では、コマンド発行時におけるメモリ状態管理部113、コマンド発行部114、コマンド管理部115の動作の詳しい説明は省略する。
In the following, detailed description of the operations of the memory state management unit 113, the command issue unit 114, and the command management unit 115 at the time of command issue will be omitted.
メモリ装置100は、メモリ制御装置110から受け取ったライトコマンドを解釈し、入出力バッファ104を介してメモリ制御装置110から受け取った期待値データを、メモリセル101に格納する。
The memory device 100 interprets the write command received from the memory control device 110, and stores the expected value data received from the memory control device 110 via the input / output buffer 104 in the memory cell 101.
なお、このとき、データパス管理部106は、セレクタ103が通常はメモリセル101を選択するように通知を出しているものとする。
At this time, it is assumed that the data path management unit 106 issues a notification that the selector 103 normally selects the memory cell 101.
メモリセル101への期待値データの書き込みが完了すると、遅延値管理部119が遅延値を最小値に設定し、遅延制御部112がコマンド管理部115にリードコマンドを発行する。
When the writing of the expected value data to the memory cell 101 is completed, the delay value management unit 119 sets the delay value to the minimum value, and the delay control unit 112 issues a read command to the command management unit 115.
メモリ装置100は、メモリ制御装置110から受け取ったリードコマンドを解釈し、メモリセル101からデータを読み出し、入出力バッファ104を介して、期待値データを出力する。
The memory device 100 interprets the read command received from the memory control device 110, reads data from the memory cell 101, and outputs expected value data via the input / output buffer 104.
データ送受信部111は、最小値である遅延値によって遅延部116でストローブ信号を遅延させ、データ受け取り回路117でデータを受け取る。
The data transmitting / receiving unit 111 delays the strobe signal by the delay unit 116 by the delay value which is the minimum value, and receives the data by the data receiving circuit 117.
受け取ったデータがデータ比較部118で期待値120と比較され、その比較の結果が遅延値管理部119に通知される。
The received data is compared with the expected value 120 by the data comparison unit 118, and the result of the comparison is notified to the delay value management unit 119.
遅延値管理部119は比較結果が一致の場合は、その最小値の遅延値がデータ受信可能な遅延値だと判断し、比較結果が不一致の場合は、その最小値の遅延値がデータ受信不能だと判断する。
When the comparison result is coincident, the delay value management unit 119 determines that the minimum delay value is a data receivable delay value. When the comparison result is disagreement, the minimum delay value is not data receivable. Judge that.
この動作を遅延値が最小値から最大値になるまで繰り返すことで、遅延値管理部119はデータ受信が可能な遅延値の範囲を知ることができる。
繰 り 返 す By repeating this operation until the delay value reaches the maximum value from the minimum value, the delay value management unit 119 can know the range of the delay value in which data can be received.
最後に検出した遅延値範囲のうち、中間値を、最も安定してデータ受信が可能な遅延値と判断し、遅延部116に対して、その中間値を遅延値管理部119は出力する。
Among the delay value ranges detected at the end, the intermediate value is determined as the delay value at which data can be received most stably, and the intermediate value is output to the delay unit 116 by the delay value management unit 119.
なお、ステップSaでの遅延値探索方法は、本実施の形態に限定されるものではなく、静的に設定された範囲であっても、別のアルゴリズムによる探索方法でもよい。また、最も安定してデータ受信が可能な遅延値と判断するのに、遅延値範囲の中間値ではなく、別の計算式で求めた値を使ってもよい。
Note that the delay value search method in step Sa is not limited to this embodiment, and may be a statically set range or a search method using another algorithm. Further, in order to determine the delay value at which data can be received most stably, a value obtained by another calculation formula may be used instead of the intermediate value of the delay value range.
ステップSbでは、通常のシステム動作をシステム1は行う。ここではメモリ装置100へのメモリ制御装置110からのデータ送受信もシステム1により行われる。
In step Sb, the system 1 performs normal system operation. Here, data transmission / reception from the memory control device 110 to the memory device 100 is also performed by the system 1.
ステップScでは、遅延制御部112が、ある期間ごとに遅延値探索を行うべきタイミングを管理し、そのタイミングであるかどうかを判断する。そのタイミングではない場合は、ステップSbの通常動作をシステム1は継続し(ステップSc:No)、そのタイミングである場合は、ステップSdに進む(ステップSc:Yes)。
In step Sc, the delay control unit 112 manages the timing at which the delay value search should be performed every certain period, and determines whether it is the timing. If it is not the timing, the system 1 continues the normal operation of step Sb (step Sc: No), and if it is the timing, the system 1 proceeds to step Sd (step Sc: Yes).
なお、このステップScのより具体的な内容について、ここでは一例として、メモリ装置100のリフレッシュ動作のタイミングを、遅延値探索を行うタイミングだと判断する場合を説明する。すなわち、例えば、このステップScで、遅延制御部112は、メモリ状態管理部113からの情報により、メモリ装置100がリフレッシュを開始したことを検知し、遅延値探索のタイミングだと判断する(ステップSc:Yes)。
Note that, as a more specific content of step Sc, a case where it is determined here that the timing of the refresh operation of the memory device 100 is the timing of performing a delay value search will be described. That is, for example, in step Sc, the delay control unit 112 detects that the memory device 100 has started refreshing based on information from the memory state management unit 113, and determines that it is the timing of the delay value search (step Sc). : Yes).
ステップSdでは、遅延値探索のためのリードコマンドを処理する時間があるかを例えば遅延制御部112が判断する。ここでの判断は、遅延値探索のためのリードコマンドを実行することにより、通常アプリケーションのデータ送受信に影響がないかを確認するために行う。ここで、本例では、リフレッシュを開始したことを検出してステップSdにきているため(ステップSc:Yes)、リフレッシュ後の一定期間は通常アプリケーション用のデータ送受信がないことが予め判断できるので、通常アプリケーションに影響がないと判断することができる(ステップSd:Yes)。
In step Sd, for example, the delay control unit 112 determines whether there is time to process a read command for searching for a delay value. The determination here is performed in order to confirm whether or not there is an influence on data transmission / reception of a normal application by executing a read command for delay value search. Here, in this example, since the start of the refresh is detected and the process proceeds to step Sd (step Sc: Yes), it can be determined in advance that there is no data transmission / reception for the normal application for a certain period after the refresh. Therefore, it can be determined that the normal application is not affected (step Sd: Yes).
なお、ステップScで、リフレッシュ以外で遅延値探索のタイミングを検出する場合は、通常アプリケーションに影響がある可能性があるので、その場合は影響がなくなるまでステップSeで通常動作を続けることになる(ステップSd:No)。影響がないことが確認できた場合、ステップSfに進む(ステップSd:Yes)。
Note that if the delay value search timing other than refresh is detected in step Sc, there is a possibility that the normal application may be affected. In this case, the normal operation is continued in step Se until the influence disappears ( Step Sd: No). If it is confirmed that there is no influence, the process proceeds to step Sf (step Sd: Yes).
ステップSf以降では、遅延値探索を全遅延値で行うのではなく、現状把握している遅延値範囲(Window)における最小値付近と最大値付近のみのデータ受信を判定することで、Windowの最小値、最大値を更新していく方法を説明する。なお、ステップSf以降の方法は、本説明に限定されるものではなく、全遅延値を探索してもよいし、別のアルゴリズムを用いてもよい。
After step Sf, the delay value search is not performed for all delay values, but the reception of data in the vicinity of the minimum value and the vicinity of the maximum value only in the currently known delay value range (Window) is determined. A method of updating the value and the maximum value will be described. In addition, the method after step Sf is not limited to this description, You may search all the delay values, and you may use another algorithm.
ステップSfでは、遅延値管理部119は、現状把握しているWindowの最大値を遅延部116に出力する。
In step Sf, the delay value management unit 119 outputs the maximum value of the window currently grasped to the delay unit 116.
ステップSgでは、レジスタセット102からの期待値データの受信を行うために、メモリセル101へのリードコマンドとは異なる、特別なレジスタリードコマンドを、コマンド管理部115がコマンド発行部114によって発行する。例えば、遅延値管理部119がコマンド管理部115に発行させてもよい。なお、ここで、期待値120とレジスタセット102には遅延値調整に適したデータパターンが格納されているものとし、複数のデータパターンを用いてもよく、その場合は、アドレス情報付加部121がレジスタリードコマンドにアドレス情報を含めることで、データパターンを選択することができる。また、メモリ状態管理部113はメモリセル101へのリードコマンドに対する制御ルールとは別のレジスタセット102へのリードコマンドに対する制御ルールを把握している。
In step Sg, in order to receive the expected value data from the register set 102, the command management unit 115 issues a special register read command different from the read command to the memory cell 101 by the command issuing unit 114. For example, the delay value management unit 119 may cause the command management unit 115 to issue it. Here, it is assumed that a data pattern suitable for delay value adjustment is stored in the expected value 120 and the register set 102, and a plurality of data patterns may be used. In this case, the address information adding unit 121 A data pattern can be selected by including address information in the register read command. Further, the memory state management unit 113 grasps a control rule for the read command to the register set 102 different from the control rule for the read command to the memory cell 101.
そして、このステップSgにおいて、レジスタリードコマンドを受け取ったメモリ装置100は、特殊コマンド検出部105で、レジスタセット102へのリードコマンドだと解釈する。そして、特殊コマンド検出部105、この解釈の後に、レジスタセット102に対してアドレス情報と読み出し指示の通知を行い、また、データパス管理部106に、レジスタセット102を選択するように通知を行う。
In step Sg, the memory device 100 that has received the register read command interprets the special command detection unit 105 as a read command to the register set 102. After the interpretation, the special command detection unit 105 notifies the register set 102 of address information and a read instruction, and notifies the data path management unit 106 to select the register set 102.
そして、このステップSgにおいては、データパス管理部106は、レジスタセット102からデータが出力されるタイミングで、セレクタ103に対して、レジスタセット102を選択するよう指示を出し、セレクタ103はレジスタセット102を選択する。レジスタセット102から出力されたデータは入出力バッファ104を介して、メモリ制御装置110に出力される。
In step Sg, the data path management unit 106 instructs the selector 103 to select the register set 102 at the timing when the data is output from the register set 102. Select. Data output from the register set 102 is output to the memory control device 110 via the input / output buffer 104.
ステップShでは、遅延部116は、Windowの最大値に設定された遅延値でストローブ信号を遅延させ、データ受け取り回路117がデータを受け取る。受け取ったデータをデータ比較部118が期待値120と比較し、その結果を遅延値管理部119に通知する。
In step Sh, the delay unit 116 delays the strobe signal by the delay value set to the maximum value of the window, and the data receiving circuit 117 receives the data. The data comparison unit 118 compares the received data with the expected value 120 and notifies the delay value management unit 119 of the result.
遅延値管理部119は、比較結果が一致の場合は(ステップSh:Yes)、ステップSiに進み、そのWindowの最大値がまだ有効であると判断し、さらに1つ大きな遅延値も有効であるかを次回で確認するために、把握しているWindowの最大値情報を1つだけ増やして、最大値情報を更新する。他方、遅延値管理部119は、比較結果が不一致の場合は(ステップSh:No)、ステップSjに進み、そのWindowの最大値が無効であると判断し、1つ小さな値をWindowの最大値にするために最大値情報を1つだけ減らして、最大値情報を更新する。
If the comparison result is the same (step Sh: Yes), the delay value management unit 119 proceeds to step Si, determines that the maximum value of the window is still valid, and further increases the delay value by one. In order to confirm whether or not this is the next time, the maximum value information of the grasped window is increased by one and the maximum value information is updated. On the other hand, if the comparison results do not match (step Sh: No), the delay value management unit 119 proceeds to step Sj, determines that the maximum value of the window is invalid, and determines a smaller value as the maximum value of the window. Therefore, the maximum value information is reduced by one and the maximum value information is updated.
ステップSkでは、更新された最大値情報と、別途把握している最小値情報を用いて、その中間値を現在最も安定してデータ受信ができる遅延値だと判断して、その中間値を遅延部116に遅延値管理部119が出力する。
In step Sk, using the updated maximum value information and separately acquired minimum value information, the intermediate value is determined to be the delay value at which data can be received most stably at present, and the intermediate value is delayed. The delay value management unit 119 outputs to the unit 116.
ステップSlからステップSsまでは、ステップSdからステップSkの動作をWindowの最大値ではなく最小値に置き換えたもので、詳しい説明は割愛する。ただし、ステップSq、ステップSrでは、Windowの最小値の更新であるので、比較結果が一致の場合は1だけ減らし、比較結果が不一致の場合は1だけ増やすものとする。
From step S1 to step Ss, the operation from step Sd to step Sk is replaced by the minimum value instead of the maximum value of the window, and the detailed description is omitted. However, in Step Sq and Step Sr, since the minimum value of Window is updated, it is decreased by 1 when the comparison result is coincident, and is incremented by 1 when the comparison result is not coincident.
ステップSsの後、再度ステップSbに戻る。
After step Ss, return to step Sb again.
次に図3では、図2におけるレジスタリードコマンド発行時(ステップSg、ステップSo参照)のタイミング図の例を示している。
Next, FIG. 3 shows an example of a timing diagram when the register read command is issued in FIG. 2 (see step Sg and step So).
タイミング(A)では、メモリ装置100に対してリフレッシュコマンドをコマンド発行部114が発行する。そして、このタイミング(A)で、遅延制御部112は、図2のステップScのWindow検出タイミングだと判断し(ステップSc:Yes)、同時にステップSdの、レジスタリードが可能なタイミングだとの判断をする(ステップSd:Yes)。
At timing (A), the command issuing unit 114 issues a refresh command to the memory device 100. At this timing (A), the delay control unit 112 determines that it is the window detection timing of step Sc in FIG. 2 (step Sc: Yes), and at the same time, determines that it is the timing at which register read is possible at step Sd. (Step Sd: Yes).
タイミング(B)では、コマンド発行部114がレジスタリードコマンドを発行し(ステップSg)、その後、データパス管理部106からの出力信号が、メモリセル101を選択する信号から、レジスタセット102を選択する信号に切り替わる。
At timing (B), the command issuing unit 114 issues a register read command (step Sg), and then the output signal from the data path management unit 106 selects the register set 102 from the signal for selecting the memory cell 101. Switch to signal.
また、タイミング(C)で、遅延値管理部119は、遅延部116への遅延値を、Windowの最大値に設定する(ステップSf)。
Further, at timing (C), the delay value management unit 119 sets the delay value to the delay unit 116 to the maximum value of the window (step Sf).
なお、前記データパス管理部106からの出力信号の切り替わりタイミングと、タイミング(C)は、本説明に限定されるものではなく、逆の順番であっても同タイミングであってもよい。
Note that the switching timing of the output signal from the data path management unit 106 and the timing (C) are not limited to the present description, and may be in the reverse order or the same timing.
タイミング(D)で、受け取ったデータに対するデータ比較部118による比較の比較結果が、遅延値管理部119に到達し、この場合は一致だと通知される。比較結果としては、複数のデータを受け取り、これらすべてのデータが期待値と一致した場合に、一致したという比較結果を送るものとする。
At timing (D), the comparison result of the comparison by the data comparison unit 118 with respect to the received data reaches the delay value management unit 119, and in this case, it is notified that they match. As a comparison result, a plurality of data are received, and when all these data match the expected value, a comparison result that matches is sent.
なお、ここで、データの個数は本説明に限定されるものではない。またレジスタリードコマンドも複数回数発行して、そのすべての期待値比較をした結果を用いてもよい。レジスタセット102からの出力が終わったタイミングで、データパス管理部106は、その出力信号を、メモリセル101を選択する出力値の出力信号に戻す。
Here, the number of data is not limited to this description. Also, a register read command may be issued a plurality of times, and the result of comparing all the expected values may be used. At the timing when the output from the register set 102 ends, the data path management unit 106 returns the output signal to the output signal of the output value for selecting the memory cell 101.
タイミング(E)で、遅延値管理部119は、一致という比較結果を受け取り、Windowの最大値情報を1つだけ増やす(図2のステップSi)。ここでは、最初に0x40という数値を最大値として把握していたので、0x41に更新するものとする。
At timing (E), the delay value management unit 119 receives the comparison result of coincidence, and increases the maximum value information of the window by one (step Si in FIG. 2). Here, since the numerical value 0x40 was first grasped as the maximum value, it is assumed that the value is updated to 0x41.
タイミング(F)では、この更新後に、遅延部116に対して、遅延値管理部119が、中間値である0x30を再設定する(ステップSk)。なお、ここでは中間値を切り捨て方式で計算しているが、切り上げでもよい。もしくは、最大値を1つだけ増やしての中間値計算で、0x41が有効な遅延値かどうかがここでは判断できないため、切り上げよりも切り捨ての方が安全だと判断しての切り捨てを行ってもよい。
At timing (F), after this update, the delay value management unit 119 resets the intermediate value 0x30 to the delay unit 116 (step Sk). Here, the intermediate value is calculated by the round-down method, but it may be rounded up. Or, since it is not possible to determine here whether or not 0x41 is a valid delay value in the intermediate value calculation with the maximum value increased by one, even if it is determined that truncation is safer than rounding up Good.
次に、まだレジスタリードコマンドを実行する余裕があると判断して、タイミング(G)でレジスタリードコマンドを発行する(ステップSo)。データパス管理部106は、レジスタセット102を選択するように出力信号を変化させる。
Next, it is determined that there is still room for executing the register read command, and the register read command is issued at timing (G) (step So). The data path management unit 106 changes the output signal so as to select the register set 102.
タイミング(H)で、遅延値管理部119は、次はWindowの最小値を遅延部116に対して出力する(ステップSn)。タイミング(I)で、今度は不一致の結果を受け取り、タイミング(J)で、最小値情報を1つだけ増やして0x20から0x21とする(ステップSr)。その後、タイミング(K)で、遅延部116への遅延値を中間値の0x31に設定する(ステップSs)。また、データパス管理部106は、レジスタセット102からのデータ出力が完了したタイミングでメモリセル101を選択するように出力信号を変化させる。
At timing (H), the delay value management unit 119 next outputs the minimum value of the window to the delay unit 116 (step Sn). At timing (I), this time, a mismatch result is received, and at timing (J), the minimum value information is increased by one from 0x20 to 0x21 (step Sr). Thereafter, at timing (K), the delay value to the delay unit 116 is set to the intermediate value 0x31 (step Ss). Further, the data path management unit 106 changes the output signal so as to select the memory cell 101 at the timing when the data output from the register set 102 is completed.
図3では、通常アプリケーションのリード動作(ステップSb)の後にリフレッシュ動作、その後にリード動作をしている間に、レジスタリードコマンドを2回発行している(ステップSg等)。そして、このレジスタリードコマンドは、もともとリフレッシュ動作のために空けざるを得なかったデータバスを使用しているため、通常アプリケーションの動作によるリード動作に影響を与えていない。
In FIG. 3, the register read command is issued twice (step Sg and the like) during the refresh operation after the normal application read operation (step Sb) and the read operation thereafter. Since this register read command uses the data bus that was originally unavoidable for the refresh operation, it does not affect the read operation due to the normal application operation.
以上により、通常アプリケーションのデータ転送を妨げることなく、遅延値の探索を行うことで、アプリケーションの動作中にもWindowの変動を検出して、それに追従したタイミング調整を可能にすることで、常に安定してデータ送受信を行えることを説明した。
As described above, by searching for the delay value without interfering with normal application data transfer, it is possible to detect window fluctuations even while the application is running, and to adjust the timing accordingly. Explained that data can be sent and received.
なお、図3で説明したタイミングは一例であり、本発明をこれに限定するものではない。レジスタリードコマンドはデータパターンを変えて数回実施してもよいし、1回だけでもよく、また最大値、最小値の判定を2回以上行ってもよい。また、今回は特別なレジスタリードコマンドを用いた例を示したが、特殊コマンド検出部105がリフレッシュコマンドをレジスタセット102へのリードコマンドだと解釈して、レジスタセット102からのデータをメモリ制御装置110に出力してもよい。その場合、特殊コマンド検出部105がリフレッシュコマンドをレジスタセット102へのリードコマンドだと解釈するかどうかをモード設定可能にしてもよいし、アドレス信号などで判別するようにしてもよい。
Note that the timing described in FIG. 3 is an example, and the present invention is not limited to this. The register read command may be executed several times by changing the data pattern, may be executed only once, or the determination of the maximum value and the minimum value may be performed twice or more. In this example, a special register read command is used. However, the special command detection unit 105 interprets the refresh command as a read command to the register set 102 and converts the data from the register set 102 to the memory control device. 110 may be output. In that case, whether the special command detection unit 105 interprets the refresh command as a read command to the register set 102 may be set in a mode, or may be determined by an address signal or the like.
<第2の実施形態>
図4は、メモリ装置およびメモリ制御装置の一実施形態(第2の実施形態)を示している。本実施の形態では、図1の構成において、レジスタセット102へのデータ書き込みをする例を図4のタイミング図を用いて説明する。 <Second Embodiment>
FIG. 4 shows an embodiment (second embodiment) of a memory device and a memory control device. In the present embodiment, an example of writing data to the register set 102 in the configuration of FIG. 1 will be described with reference to a timing chart of FIG.
図4は、メモリ装置およびメモリ制御装置の一実施形態(第2の実施形態)を示している。本実施の形態では、図1の構成において、レジスタセット102へのデータ書き込みをする例を図4のタイミング図を用いて説明する。 <Second Embodiment>
FIG. 4 shows an embodiment (second embodiment) of a memory device and a memory control device. In the present embodiment, an example of writing data to the register set 102 in the configuration of FIG. 1 will be described with reference to a timing chart of FIG.
遅延制御部112は、メモリ状態管理部113からの情報により、レジスタセット102へのデータ送信をするためのタイミングがあることを検出する。
The delay control unit 112 detects that there is a timing for transmitting data to the register set 102 based on information from the memory state management unit 113.
タイミング(A)では、メモリ装置100に対してリフレッシュコマンドをメモリ制御装置110が発行したことを検知して、一定期間は通常アプリケーションによるデータバスの使用がないとコマンド管理部115(遅延制御部112)が判断できる(図2のステップSc参照)。
At timing (A), it is detected that the memory control device 110 has issued a refresh command to the memory device 100, and if there is no use of the data bus by a normal application for a certain period, the command management unit 115 (delay control unit 112). ) Can be determined (see step Sc in FIG. 2).
タイミング(B)では、レジスタセット102への特別なレジスタライトコマンドをコマンド管理部115がコマンド発行部114によってメモリ装置100に対して発行する。例えば、遅延制御部112がコマンド管理部115に発行させる。また、この発行で書き込むデータは、期待値120から、該当するものを選択する。レジスタライトコマンドには、レジスタセット102に複数のレジスタが含まれる場合は、アドレス情報付加部121が、どのレジスタへ書き込むかを指定するためにアドレス情報を含めることができる。レジスタライトコマンドを特殊コマンド検出部105が検出した後、データパス管理部106の出力は、レジスタセット102を選択するように変更される。メモリ制御装置110から出力されたライトデータがレジスタセット102に格納された後、タイミング(D)で、データパス管理部106の出力はメモリセル101を選択するように戻る。
At timing (B), the command management unit 115 issues a special register write command to the register set 102 to the memory device 100 by the command issuing unit 114. For example, the delay control unit 112 causes the command management unit 115 to issue it. In addition, the data to be written by this issue is selected from the expected value 120. In the register write command, when the register set 102 includes a plurality of registers, the address information adding unit 121 can include address information for designating which register to write. After the special command detection unit 105 detects the register write command, the output of the data path management unit 106 is changed to select the register set 102. After the write data output from the memory control device 110 is stored in the register set 102, the output of the data path management unit 106 returns to select the memory cell 101 at timing (D).
その後、タイミング(E)で、遅延制御部112は、レジスタセット102へのリードコマンドを発行できると判断して(ステップSd参照)、レジスタリードコマンドを発行する。その後の期待値比較の説明は割愛するが、その後、レジスタセット102からの出力データが入出力バッファ104を介してメモリ制御装置110へ出力された時点で、データパス管理部106の出力はメモリセル101を選択するように変更される。その後、タイミング(F)で、通常アプリケーションによるリードコマンドがメモリ制御装置110によりメモリ装置100へと発行され、メモリ装置100のメモリセル101からのデータがメモリ制御装置110へとメモリ装置100により出力される。
Thereafter, at timing (E), the delay control unit 112 determines that a read command to the register set 102 can be issued (see step Sd), and issues a register read command. The description of the comparison of the expected value after that will be omitted, but when the output data from the register set 102 is output to the memory control device 110 via the input / output buffer 104, the output of the data path management unit 106 is the memory cell. 101 is selected. Thereafter, at timing (F), a read command by a normal application is issued to the memory device 100 by the memory control device 110, and data from the memory cell 101 of the memory device 100 is output to the memory control device 110 by the memory device 100. The
以上により、レジスタセット102へのデータ格納も、通常アプリケーションの動作を妨げることなく実施できることを説明した。レジスタセット102へのデータ書き込みにおいては、遅延値探索を行う際に、様々なデータパターンを用いたり、レジスタセット102の初期値以外のデータパターンで期待値比較を行いたいときに用いる。また、本説明では、通常アプリケーションの動作を妨げない範囲で、レジスタセット102へのアクセスをする場合を説明した。一方、コマンド管理部115が、メモリセル101とレジスタセット102とのアクセスが衝突しないように、メモリ状態管理部113の情報を見ながらコマンド発行を行ってもよい。このような発行を行うことで、通常アプリケーションよりも、遅延値探索のためのレジスタセット102へのアクセスを優先させることも可能である。
As described above, it has been explained that data can be stored in the register set 102 without interfering with normal application operation. In writing data to the register set 102, various data patterns are used when searching for a delay value, or an expected value comparison is performed using a data pattern other than the initial value of the register set 102. In this description, the case where the register set 102 is accessed within a range that does not interfere with the operation of the normal application has been described. On the other hand, the command management unit 115 may issue a command while viewing the information of the memory state management unit 113 so that the access between the memory cell 101 and the register set 102 does not collide. By performing such issuance, priority can be given to access to the register set 102 for searching for delay values over normal applications.
このようにして、第1の実施形態および第2の実施形態により、それぞれ、本発明を実施するための一実施形態であるメモリ装置(メモリ装置100)が構成される。
Thus, the memory device (memory device 100) which is an embodiment for carrying out the present invention is constituted by the first embodiment and the second embodiment, respectively.
この一実施形態のメモリ装置は、メモリセル(メモリセル101)を備える。メモリセルは、予め定められたアプリケーションが予め定められたメモリ制御装置(メモリ制御装置110)によって当該メモリ装置に記憶させる記憶データを記憶する。ここで、記憶される前記記憶データは、当該メモリ装置が前記メモリ制御装置に出力するストローブ信号が前記メモリ制御装置に用いられることにより、当該メモリ制御装置に受信される。そして、記憶される前記記憶データは、予め定められた送受信不能時(例えば、前記メモリ装置が、前記メモリセルからのデータ入出力をしないモードである時、前記メモリ装置にリフレッシュコマンドが発行された時、前記メモリ装置がリフレッシュモードの時、又は、バンクコンフリクトによってデータバスが不使用である時)には、当該メモリ装置による前記メモリ制御装置への送信と、前記メモリ制御装置から当該メモリ装置への受信とのうちの両方又は一方が不能なデータである。
The memory device according to this embodiment includes a memory cell (memory cell 101). The memory cell stores storage data that a predetermined application stores in the memory device by a predetermined memory control device (memory control device 110). Here, the stored data is received by the memory control device when a strobe signal output from the memory device to the memory control device is used in the memory control device. The stored data is stored when a predetermined transmission / reception is impossible (for example, when the memory device is in a mode in which data is not input / output from the memory cell, a refresh command is issued to the memory device). And when the memory device is in a refresh mode or when the data bus is not used due to a bank conflict), the memory device transmits to the memory control device and the memory control device to the memory device. And / or receiving data is impossible data.
なお、上記送受信不能時とは、例えば、メモリ装置についての規格により定められた時間であってもよい。また、上記メモリセルは、例えば、記憶する情報を表す電荷を蓄えるキャパシタ(コンデンサ)を備えるDRAM(Dynamic Random Access Memory)のメモリセルであってもよい。ここで、このようなDRAMのメモリセルにおいては、キャパシタの電荷は漏れ電流によって次第に失われる。このため、このような、DRAMのメモリセルにおいては、漏れ電流により失われた電荷を補充するため操作(リフレッシュ)が必要である。そして、このリフレッシュがされる間は、リフレッシュがされるメモリセルの記憶データの受信および送信が不能である。
Note that the time when the transmission / reception is disabled may be, for example, a time determined by a standard for the memory device. In addition, the memory cell may be, for example, a DRAM (Dynamic Random Access Memory) memory cell including a capacitor (capacitor) that stores charges representing information to be stored. Here, in such a DRAM memory cell, the charge of the capacitor is gradually lost due to the leakage current. Therefore, in such a DRAM memory cell, an operation (refresh) is necessary to replenish the charge lost due to the leakage current. During the refresh, the storage data of the memory cell to be refreshed cannot be received or transmitted.
そして、メモリ装置は、さらに、レジスタセット(レジスタセット102)を備える。レジスタセットは、レジスタデータを記憶する。そして、記憶されるレジスタデータは、前記送受信不能時に、前記メモリ制御装置に対して当該メモリ装置が送信可能なデータである。
The memory device further includes a register set (register set 102). The register set stores register data. The stored register data is data that can be transmitted by the memory device to the memory control device when the transmission / reception is impossible.
そして、より具体的には、メモリ装置は、特殊コマンド検出部と、データパス管理部と、セレクタとを備える。そして、メモリ装置にメモリ制御装置が発行した特殊コマンドが特殊コマンド検出部により検出されて、この検出がされた場合に、データパス管理部およびセレクタがそれぞれ適切な動作をすることにより、レジスタデータがメモリ装置とメモリ制御装置との間で通信される(ステップSg、So)。
More specifically, the memory device includes a special command detection unit, a data path management unit, and a selector. Then, when a special command issued by the memory controller to the memory device is detected by the special command detection unit, and the detection is performed, the data path management unit and the selector perform appropriate operations, so that the register data is Communication is performed between the memory device and the memory control device (steps Sg and So).
なお、さらに詳細には、メモリ装置は、入出力バッファを備える。入出力バッファは、メモリ装置と、メモリ制御装置との間で通信されるデータ(メモリセルのデータ、および、レジスタデータ)が、適切に通信されるよう、通信されるデータのバッファリングを行う。
In more detail, the memory device includes an input / output buffer. The input / output buffer performs buffering of data to be communicated so that data (memory cell data and register data) communicated between the memory device and the memory control device is appropriately communicated.
また、このようにして、本発明を実施する際の一実施形態であるメモリ制御装置(メモリ制御装置110)が構成される。このメモリ制御装置は、遅延部(遅延部116)と、データ受信部(データ送受信部111)と、判定部(データ比較部118)と、制御部(遅延制御部112、コマンド管理部115)とを備える。
Also, in this way, the memory control device (memory control device 110), which is an embodiment when the present invention is implemented, is configured. This memory control device includes a delay unit (delay unit 116), a data reception unit (data transmission / reception unit 111), a determination unit (data comparison unit 118), a control unit (delay control unit 112, command management unit 115), Is provided.
遅延部は、予め定められたメモリ装置(メモリ装置100)がこのメモリ制御装置に出力するストローブ信号を予め定められた遅延時間だけ遅延させる。
The delay unit delays the strobe signal output from the predetermined memory device (memory device 100) to the memory control device by a predetermined delay time.
データ受信部は、予め定められたアプリケーションが前記メモリ装置に記憶させた記憶データを、当該メモリ装置から、前記遅延部により遅延されたストローブ信号を用いて受信する。
The data receiving unit receives storage data stored in the memory device by a predetermined application from the memory device using the strobe signal delayed by the delay unit.
また、データ受信部は、前記メモリ装置が備える予め定められたメモリセル(メモリセル101)に記憶されたレジスタデータ(記憶された期待値120)を、当該メモリ装置から受信する。そして、より詳しくは、データ受信部は、前記メモリ装置の前記記憶データの、当該メモリ制御装置による受信および送信のうちの少なくとも一方が不能である予め定められた送受信不能時に、メモリ装置からレジスタデータを受信する(ステップSg、So)。
Also, the data receiving unit receives register data (stored expected value 120) stored in a predetermined memory cell (memory cell 101) included in the memory device from the memory device. In more detail, the data receiving unit receives register data from the memory device when a predetermined transmission / reception is impossible, in which at least one of reception and transmission by the memory control device of the storage data of the memory device is impossible. Is received (steps Sg, So).
判定部は、前記メモリ装置に記憶されたレジスタデータの内容(期待値120)と、受信された前記レジスタデータとが同一か否かを判定する。判定部は、例えば、レジスタデータの内容を記憶する期待値記憶部から、記憶されたレジスタデータの内容を取得し、記憶された内容と、受信されたレジスタデータとの間での判定を行う。
The determination unit determines whether or not the content (expected value 120) of the register data stored in the memory device is the same as the received register data. For example, the determination unit obtains the content of the stored register data from an expected value storage unit that stores the content of the register data, and performs a determination between the stored content and the received register data.
制御部は、前記判定部により、同じとの判定がされた場合には、前記アプリケーションの前記記憶データが前記データ受信部に受信される際における前記ストローブ信号を、前記遅延部により、第1の遅延時間だけ遅延させる。また、制御部は、同じではないとの判定がされた場合には、記憶データが受信される際に、第2の遅延時間だけ遅延部により遅延を行わせる。ここで、前記第1の遅延時間は、判定に際して受信された前記レジスタデータの受信の際の前記遅延時間(判定遅延時間)の予め定められた近傍の時間である。他方、前記第2の遅延時間は、この判定遅延時間の上記近傍には含まれない時間である。ここで、上記判定遅延時間の近傍は、例えば、判定遅延時間が一端(例えば最大の時間)であり、予め定められた他端(例えば最小の時間)である時間の範囲の中心値と、その判定遅延時間との間の範囲である。そして、第1の遅延時間は、上記中心値の時間であり、第2の遅延時間は、この中心値よりも、より上記他端に近い予め定められた時間である。このとき、第2の遅延時間は、判定遅延時間までの時間差が、第1の遅延時間から判定遅延時間までの時間差よりも大きい。
When the determination unit determines that the same is the same, the control unit uses the delay unit to output the strobe signal when the stored data of the application is received by the data reception unit. Delay by the delay time. Further, when it is determined that they are not the same, the control unit causes the delay unit to perform a delay for the second delay time when the stored data is received. Here, the first delay time is a predetermined time in the vicinity of the delay time (determination delay time) at the time of reception of the register data received at the time of determination. On the other hand, the second delay time is a time that is not included in the vicinity of the determination delay time. Here, the vicinity of the determination delay time is, for example, the determination delay time is one end (for example, the maximum time), the center value of the time range that is a predetermined other end (for example, the minimum time), This is a range between the determination delay time. The first delay time is the time of the center value, and the second delay time is a predetermined time closer to the other end than the center value. At this time, in the second delay time, the time difference from the first delay time to the determination delay time is larger than the time difference from the first delay time to the determination delay time.
こうして、上記メモリ装置および上記メモリ制御装置を備えるシステム(システム1)が構成される。
Thus, a system (system 1) including the memory device and the memory control device is configured.
このような実施の形態により、記憶データが受信される際の遅延時間が、上記第1の遅延時間と上記第2の遅延時間とから適切に制御部により選択される。これにより、記憶データが受信される際の遅延時間として、例えばメモリシステムの周囲の温度などに応じた、適切な遅延時間が選択される。そして、上記メモリ装置は上記メモリセルを備えている。これにより、このメモリセルを用いることで、上記送受信不能時に、判定に際して必要な通信が行われる。これにより、記憶データが受信される際の遅延時間として適切な遅延時間が選択される一方で、アプリケーションによるメモリ装置のアクセスが阻害されることを回避できる。これにより、適切な遅延時間を選択することと、アプリケーションによるアクセスの阻害を回避することとを両立できる。これにより、リアルタイム性を必要とするアプリケーションの実行へ影響することなく、遅延時間を高精度に調整できる。
According to such an embodiment, the delay time when the stored data is received is appropriately selected by the control unit from the first delay time and the second delay time. As a result, an appropriate delay time is selected as the delay time when the stored data is received, for example, according to the ambient temperature of the memory system. The memory device includes the memory cell. Thus, by using this memory cell, communication necessary for determination is performed when the transmission / reception is impossible. Thus, while an appropriate delay time is selected as the delay time when the stored data is received, it is possible to avoid that the access of the memory device by the application is hindered. This makes it possible to both select an appropriate delay time and avoid an access hindrance by the application. As a result, the delay time can be adjusted with high accuracy without affecting the execution of an application that requires real-time performance.
また、上記送受信不能時にまで上記メモリセルの記憶データが通信されるようにする必要がない。このため、例えばメモリセルを規格通りのありふれた構成にできる。これにより、ひいては、システムの構成を簡単にできる。
Also, it is not necessary to communicate the data stored in the memory cell until the transmission / reception is disabled. For this reason, for example, the memory cell can be configured in accordance with the standard. As a result, the system configuration can be simplified.
上記のようにして、実施の形態1、2において、それぞれ、少なくとも1つのメモリセル(メモリセル101)と、少なくとも1つのレジスタセット(レジスタセット102、記憶部)と、入出力バッファ(入出力バッファ104)と、前記レジスタセットおよび前記メモリセルのうちで、予め定められた選択信号が示す方と、前記入出力バッファとを接続するセレクタ(セレクタ103)と、当該メモリ装置へと発行された、前記レジスタセットへのアクセスを行うコマンドを検出し、検出したことを示す検出信号を出力する特殊コマンド検出部(特殊コマンド検出部105)と、前記特殊コマンド検出部からの前記検出信号に応じて、前記セレクタが前記レジスタセットを一定期間選択することを示す信号を、前記選択信号として前記セレクタに出力するデータパス管理部(データパス管理部106)とを備えるメモリ装置が構成される。なお、データパス管理部は、例えば、一定期間上記信号の出力を継続し、セレクタは、その出力が継続する間は、レジスタセットを選択するものとしてもよい。
As described above, in the first and second embodiments, at least one memory cell (memory cell 101), at least one register set (register set 102, storage unit), and input / output buffer (input / output buffer), respectively. 104), a selector (selector 103) that connects the register set and the memory cell indicated by a predetermined selection signal and the input / output buffer, and is issued to the memory device, A special command detection unit (special command detection unit 105) that detects a command for accessing the register set and outputs a detection signal indicating the detection, and according to the detection signal from the special command detection unit, A signal indicating that the selector selects the register set for a certain period is used as the selection signal. Memory device is formed comprising data path management unit for outputting a selector and a (data path management unit 106). For example, the data path management unit may continue outputting the signal for a certain period, and the selector may select the register set while the output continues.
これにより、レジスタセットを備えていて、送受信不能時にレジスタデータが送信できる。このため、送受信不能時にレジスタデータが送信されることにより、メモリセルに記憶される記憶データの受信に用いるストローブ信号の遅延時間の調整ができる。これにより、アプリケーションによる記憶データの通信を阻害することなく、遅延時間の調整ができる。
This makes it possible to transmit register data when a register set is provided and transmission / reception is not possible. For this reason, by transmitting the register data when transmission / reception is impossible, the delay time of the strobe signal used for receiving the storage data stored in the memory cell can be adjusted. As a result, the delay time can be adjusted without hindering communication of stored data by the application.
ここで、先述のように、メモリセルは、例えばSDRAMのメモリセルであり、上記送受信不能時には、当該メモリセルに記憶された記憶データの通信が不能である。そして、レジスタセットのデータ(レジスタデータ)は、このような送受信不能時に通信が可能なデータである。具体的には、上記特殊コマンド検出部により上記コマンドが検出されて、上記セレクタが、レジスタセットを入出力バッファに接続することにより、レジスタデータの通信が入出力バッファを介して行われる。
Here, as described above, the memory cell is, for example, an SDRAM memory cell, and when the transmission / reception is disabled, communication of stored data stored in the memory cell is impossible. The data of the register set (register data) is data that can be communicated when such transmission / reception is impossible. Specifically, the command is detected by the special command detection unit, and the selector connects the register set to the input / output buffer, whereby the register data is communicated through the input / output buffer.
そして、前記特殊コマンド検出部は、前記レジスタセットへの読み出しコマンドを検出し、前記レジスタセットは、当該読み出しコマンドを検出したことを示す検出信号が前記特殊コマンド検出部により前記データパス管理部に出力された後、当該レジスタセットが記憶するレジスタ値を出力し、前記セレクタは、前記レジスタセットから前記レジスタ値が出力された後、前記レジスタセットではない方、即ち前記メモリセルを選択することを特徴とするメモリ装置が構成される。
The special command detection unit detects a read command to the register set, and the special command detection unit outputs a detection signal indicating that the register set has detected the read command to the data path management unit. After that, the register value stored in the register set is output, and after the register value is output from the register set, the selector selects the one that is not the register set, that is, the memory cell. Is configured.
そして、前記特殊コマンド検出部は、前記レジスタセットへの書き込みコマンドを検出し、前記レジスタセットは、当該書き込みコマンドを検出したことを示す検出信号が前記特殊コマンド検出部によって前記データパス管理部に出力された後、当該メモリ装置の外部から入力されたデータ(入力された期待値120)を当該レジスタセットに格納し、前記セレクタは、前記レジスタセットが外部から入力された前記データを格納した後、前記レジスタセットではない方、即ち前記メモリセルを選択することを特徴とするメモリ装置が構成される。
The special command detection unit detects a write command to the register set, and the special command detection unit outputs a detection signal indicating that the register set has detected the write command to the data path management unit. After the data is input from the outside of the memory device (the input expected value 120) is stored in the register set, the selector set stores the data input from the outside, The memory device is configured to select the one that is not the register set, that is, the memory cell.
そして、前記レジスタセットは、複数のレジスタを備え、前記特殊コマンド検出部は、前記検出したコマンドに含まれるアドレス情報(例えばレジスタの番号)を前記レジスタセットに出力し、前記レジスタセットは、当該レジスタセットによって出力される前記アドレス情報を基に、前記レジスタに対する読み出し、書き込みを行うレジスタを、前記複数のレジスタのなかから選択することを特徴とするメモリ装置が構成される。すなわち、前記レジスタセットは、当該アドレス情報により特定されるレジスタを、読み出し、書き込みを行うレジスタとして選択する。
The register set includes a plurality of registers, and the special command detection unit outputs address information (for example, a register number) included in the detected command to the register set, and the register set includes the register Based on the address information output by the set, a memory device is configured to select a register for reading from and writing to the register from the plurality of registers. That is, the register set selects a register specified by the address information as a register for reading and writing.
そして、予め定められたメモリ装置(メモリ装置100)に対して、当該メモリ装置が有する予め定められたレジスタセット(レジスタセット102)からのデータ読み出しを指示するリードコマンドを発行するコマンド発行部(コマンド発行部114)と、前記メモリ装置が出力するストローブ信号を遅延部116によって遅延すると共に、前記メモリ装置が備えるメモリセルに記憶された記憶データを、遅延されたストローブ信号を用いて当該メモリ装置から受信するデータ送受信部と(データ送受信部111)と、前記メモリ装置の前記レジスタセットから読み出されたデータ(読み出されたレジスタデータ)と、予め保持している期待値データ(期待値120)とをデータ比較部118により比較し、前記メモリセルに記憶された前記記憶データの受信に際して、当該比較の結果より特定される遅延時間(上記第1の遅延時間又は、上記第2の遅延時間のうちの何れか)だけ前記ストローブ信号を前記データ送受信部の前記遅延部により遅延させる遅延制御部(遅延制御部112)とを有することを特徴とするメモリ制御装置が構成される。
Then, a command issuing unit (command) that issues a read command that instructs the memory device (memory device 100) to read data from a predetermined register set (register set 102) of the memory device. Issuance unit 114) and a strobe signal output from the memory device is delayed by a delay unit 116, and storage data stored in a memory cell included in the memory device is transmitted from the memory device using the delayed strobe signal. Data transmitting / receiving unit to be received (data transmitting / receiving unit 111), data read from the register set of the memory device (read register data), and expected value data (expected value 120) held in advance Are compared by the data comparison unit 118 and stored in the memory cell. When receiving stored data, the strobe signal is sent to the delay of the data transmitting / receiving unit for a delay time specified by the comparison result (either the first delay time or the second delay time). A memory control device having a delay control unit (delay control unit 112) for delaying by the unit.
そして、前記遅延制御部は、前記レジスタセットが有する複数のレジスタのうちから1つのレジスタを選択するためのアドレス情報を前記リードコマンドに付加し、さらに、前記期待値データを複数セット有し、前記メモリ装置から読み出されたデータと、前記複数セットの期待値データのうち、前記アドレス情報により選択されたレジスタに対応する期待値データとを比較することを特徴とするメモリ制御装置が構成される。
The delay control unit adds address information for selecting one register from a plurality of registers included in the register set to the read command, and further includes a plurality of sets of expected value data, A memory control device is configured to compare data read from a memory device and expected value data corresponding to a register selected by the address information among the plurality of sets of expected value data .
そして、予め定められたメモリ装置とデータの送受信を行うデータ送受信部と、前記メモリ装置に対して、前記メモリ装置が有する予め定められたレジスタセット(レジスタセット102)へのデータ書き込みを指示するライトコマンドを発行するコマンド発行部(コマンド発行部114)とを有することを特徴とするメモリ制御装置が構成される。コマンド発行部は、このコマンド発行部に対してコマンド管理部115が発行する、レジスタセットにアクセスをするためのコマンドを、コマンド管理部115から取得して、取得されたコマンドをメモリ装置に対して発行する。
A data transmission / reception unit that transmits / receives data to / from a predetermined memory device; and a write that instructs the memory device to write data to a predetermined register set (register set 102) of the memory device A memory control device having a command issuing unit (command issuing unit 114) for issuing a command is configured. The command issuing unit acquires, from the command management unit 115, a command for accessing the register set issued by the command management unit 115 to the command issuing unit, and sends the acquired command to the memory device. Issue.
そして、前記メモリ装置のモードを検知するメモリ状態管理部(メモリ状態管理部113)と、前記メモリ状態管理部から通知された前記メモリ装置のモードに基づき、前記コマンド発行部に対して前記メモリ装置へのコマンドの発行を指示するコマンド管理部(コマンド管理部115)とを有し、前記コマンド管理部は、前記メモリ装置が前記メモリセルからのデータ入出力がないモード時に、前記レジスタセットへのデータの読み出しまたは書き込みを指示するコマンドの発行を、前記コマンド発行部に指示することを特徴とするメモリ制御装置が構成される。
And a memory state management unit (memory state management unit 113) for detecting the mode of the memory device, and the memory device to the command issuing unit based on the mode of the memory device notified from the memory state management unit. A command management unit (command management unit 115) for instructing the issuance of a command to the memory unit, and the command management unit is configured to transfer the register set to the register set when the memory device does not input / output data from the memory cell. A memory control device is configured to instruct the command issuing unit to issue a command for instructing reading or writing of data.
そして、前記コマンド管理部は、前記メモリ装置がリフレッシュモード時に、前記レジスタセットへのデータの読み出しまたは書き込みを指示するコマンドの発行を、前記コマンド発行部に指示することを特徴とするメモリ制御装置が構成される。
The command management unit instructs the command issuing unit to issue a command for reading or writing data to the register set when the memory device is in a refresh mode. Composed.
そして、前記コマンド管理部は、前記メモリ装置がバンクコンフリクトによってデータバスが不使用である時に、前記レジスタセットへのデータの読み出しまたは書き込みを指示するコマンドの発行を、前記コマンド発行部に指示することを特徴とするメモリ制御装置が構成される。
The command management unit instructs the command issuing unit to issue a command to instruct reading or writing of data to the register set when the data bus is not used due to a bank conflict in the memory device. A memory control device is configured.
なお、コマンド管理部は、例えば、現在が、上記した送受信不能時か否かを検知して、送受信不能時であると検知される場合にのみ、レジスタセットへのアクセスのコマンドを、コマンド発行部によって、メモリ装置に対して発行するものとしてもよい。
Note that the command management unit, for example, detects whether or not transmission / reception is disabled as described above, and sends a command to access the register set only when it is detected that transmission / reception is disabled. May be issued to the memory device.
そして、前記データ送受信部は、前記遅延制御部からの遅延値情報を基に、前記ストローブ信号を遅延させる遅延部を有し、前記遅延させたストローブ信号で前記メモリ装置からのデータを受信することを特徴とするメモリ制御装置が構成される。
The data transmitting / receiving unit includes a delay unit that delays the strobe signal based on delay value information from the delay control unit, and receives data from the memory device using the delayed strobe signal. A memory control device is configured.
そして、前記遅延制御部は、前記メモリ装置から読み出されたデータ(レジスタデータ)と、予め保持している期待値データ(期待値120)とが一致する範囲の、前記ストローブ信号を遅延させる値を保持し(例えば、その範囲を特定する範囲値特定情報を保持し)、前記遅延させる値として、前記一致する範囲の上限値より大きな値を用いて前記リードコマンドを実行し、当該実行により前記メモリ装置から読み出されたデータと予め保持している前記期待値データとが一致する場合、保持している遅延値の範囲を更新することを特徴とするメモリ制御装置が構成される。なお、ここで、範囲を更新するとは、例えば、保持される範囲を、更新前の範囲から、更新後の範囲へ変更することである。なお、ここで、更新後の範囲は、更新前の範囲に対して、さらに、データ(レジスタデータ)が読み出された際の遅延値の予め定められた近傍を加えた範囲である。
The delay control unit is a value for delaying the strobe signal in a range where the data (register data) read from the memory device matches the expected value data (expected value 120) held in advance. (For example, holding range value specifying information for specifying the range), and executing the read command using a value larger than the upper limit value of the matching range as the value to be delayed. When the data read from the memory device matches the expected value data held in advance, the memory control device is configured to update the range of the held delay value. Here, updating the range means, for example, changing the held range from the range before the update to the range after the update. Here, the updated range is a range obtained by adding a predetermined neighborhood of the delay value when data (register data) is read to the range before the update.
そして、前記遅延制御部は、前記メモリ装置から読み出されたデータと、予め保持している期待値データとが一致する範囲の、前記ストローブ信号を遅延させる値を保持し、前記遅延させる値として、前記一致する範囲の上限値より小さな値を用いて前記リードコマンドを実行し、当該実行により前記メモリ装置から読み出されたデータと予め保持している前記期待値データとが一致しない場合、保持している遅延値の範囲を更新することを特徴とするメモリ制御装置が構成される。なお、ここで、この更新による更新後の範囲は、データ(レジスタデータ)が読み出された際の遅延値の予め定められた近傍が、更新前の範囲から除かれた範囲である。
The delay control unit holds a value for delaying the strobe signal in a range in which the data read from the memory device matches the expected value data held in advance, and the delay control unit The read command is executed using a value smaller than the upper limit value of the matching range, and the data read from the memory device by the execution does not match the expected value data held in advance. The memory control device is configured to update the range of the delay value. Here, the range after the update by the update is a range in which a predetermined neighborhood of the delay value when the data (register data) is read is excluded from the range before the update.
そして、前記遅延制御部は、前記メモリ装置から読み出されたデータと、予め保持している期待値データとが一致する範囲の、前記ストローブ信号を遅延させる値を保持し、前記遅延させる値として、前記一致する範囲の下限値より小さな値を用いて前記リードコマンドを実行し、当該実行により前記メモリ装置から読み出されたデータと予め保持している前記期待値データとが一致する場合、保持している遅延値の範囲を更新することを特徴とするメモリ制御装置が構成される。なお、ここで、更新後の範囲は、更新前の範囲に対して、さらに、データ(レジスタデータ)が読み出された際の遅延値の予め定められた近傍を加えた範囲である。
The delay control unit holds a value for delaying the strobe signal in a range in which the data read from the memory device matches the expected value data held in advance, and the delay control unit The read command is executed using a value smaller than the lower limit value of the matching range, and the data read from the memory device by the execution matches the expected value data held in advance. The memory control device is configured to update the range of the delay value. Here, the updated range is a range obtained by adding a predetermined neighborhood of the delay value when data (register data) is read to the range before the update.
そして、前記遅延制御部は、前記メモリ装置から読み出されたデータと、予め保持している期待値データとが一致する範囲の、前記ストローブ信号を遅延させる値を保持し、前記遅延させる値として、前記一致する範囲の下限値より大きな値を用いて前記リードコマンドを実行し、当該実行により前記メモリ装置から読み出されたデータと予め保持している前記期待値データとが一致しない場合、保持している遅延値の範囲を更新することを特徴とするメモリ制御装置が構成される。なお、ここで、この更新による更新後の範囲は、データ(レジスタデータ)が読み出された際の遅延値の予め定められた近傍が、更新前の範囲から除かれた範囲である。
The delay control unit holds a value for delaying the strobe signal in a range in which the data read from the memory device matches the expected value data held in advance, and the delay control unit , Execute the read command using a value larger than the lower limit value of the matching range, and hold when the data read from the memory device by the execution does not match the expected value data held in advance The memory control device is configured to update the range of the delay value. Here, the range after the update by the update is a range in which a predetermined neighborhood of the delay value when the data (register data) is read is excluded from the range before the update.
また、上記のメモリ装置の各部分を備える集積回路を構成してもよい。例えば、上記のメモリ装置は、集積回路として構成してもよい。同様に、上記のメモリ制御装置の各部分を備える集積回路を構成してもよい。また、上記の説明により、上記のメモリ装置および上記のメモリ制御装置が行う各工程を備えることで、ストローブ信号の遅延時間を制御する制御方法が示される。また、その各工程のうちで、上記のメモリ装置が行う部分のみを備えるメモリ装置の動作方法が示される。同様に、その各工程のうちで、上記のメモリ制御装置が行う部分のみを備えるメモリ制御装置の動作方法が示される。
In addition, an integrated circuit including each part of the memory device may be configured. For example, the above memory device may be configured as an integrated circuit. Similarly, an integrated circuit including each part of the memory control device may be configured. In addition, the above description shows a control method for controlling the delay time of the strobe signal by including the steps performed by the memory device and the memory control device. Also, an operation method of the memory device including only a part performed by the memory device is shown in each process. Similarly, an operation method of the memory control device including only a part performed by the above-described memory control device in each process is shown.
なお、上記の説明において、互いに離れた複数の箇所の技術事項により、それらの技術事項が組み合わせられた形態も示される。
In the above description, a form in which the technical matters are combined by the technical matters at a plurality of locations separated from each other is also shown.
以上説明してきた通り、本発明に係るメモリ装置およびメモリ制御装置は、リアルタイム性を必要とするアプリケーションの実行中においてもデータ転送のためのタイミング調整を精度高く行うことができるので、システムLSI等に好適に利用できる。
As described above, the memory device and the memory control device according to the present invention can perform timing adjustment for data transfer with high accuracy even during execution of an application that requires real-time performance. It can be suitably used.
100 メモリ装置
101 メモリセル
102 レジスタセット
103 セレクタ
104 入出力バッファ
105 特殊コマンド検出部
106 データパス管理部
110 メモリ制御装置
111 データ送受信部
112 遅延制御部
113 メモリ状態管理部
114 コマンド発行部
115 コマンド管理部
116 遅延部
117 データ受け取り回路
118 データ比較部
119 遅延値管理部
120 期待値 DESCRIPTION OF SYMBOLS 100 Memory device 101 Memory cell 102 Register set 103 Selector 104 Input / output buffer 105 Special command detection unit 106 Data path management unit 110 Memory control device 111 Data transmission / reception unit 112 Delay control unit 113 Memory state management unit 114 Command issue unit 115 Command management unit 116 Delay Unit 117 Data Receiving Circuit 118 Data Comparison Unit 119 Delay Value Management Unit 120 Expected Value
101 メモリセル
102 レジスタセット
103 セレクタ
104 入出力バッファ
105 特殊コマンド検出部
106 データパス管理部
110 メモリ制御装置
111 データ送受信部
112 遅延制御部
113 メモリ状態管理部
114 コマンド発行部
115 コマンド管理部
116 遅延部
117 データ受け取り回路
118 データ比較部
119 遅延値管理部
120 期待値 DESCRIPTION OF SYMBOLS 100 Memory device 101 Memory cell 102 Register set 103 Selector 104 Input / output buffer 105 Special command detection unit 106 Data path management unit 110 Memory control device 111 Data transmission / reception unit 112 Delay control unit 113 Memory state management unit 114 Command issue unit 115 Command management unit 116 Delay Unit 117 Data Receiving Circuit 118 Data Comparison Unit 119 Delay Value Management Unit 120 Expected Value
Claims (16)
- 少なくとも1つのメモリセルと、
少なくとも1つの記憶手段と、
入出力バッファと、
前記記憶手段および前記メモリセルのうちで、予め定められた選択信号が示す方と、前記入出力バッファとを接続するセレクタと、
当該メモリ装置へと発行された、前記記憶手段へのアクセスを行うコマンドを検出し、検出したことを示す検出信号を出力する特殊コマンド検出部と、
前記特殊コマンド検出部からの前記検出信号に応じて、一定期間前記セレクタが前記記憶手段を選択することを示す信号を、前記選択信号として前記セレクタに出力するデータパス管理部とを備えるメモリ装置。 At least one memory cell;
At least one storage means;
An input / output buffer;
Of the storage means and the memory cell, a selector that connects a direction indicated by a predetermined selection signal and the input / output buffer;
A special command detection unit that detects a command issued to the memory device to access the storage unit and outputs a detection signal indicating detection;
A memory device comprising: a data path management unit that outputs a signal indicating that the selector selects the storage unit for a certain period of time according to the detection signal from the special command detection unit as the selection signal to the selector. - 請求項1に記載のメモリ装置において、
前記特殊コマンド検出部は、前記記憶手段への読み出しコマンドを検出し、
前記記憶手段は、当該読み出しコマンドを検出したことを示す検出信号が前記特殊コマンド検出部により前記データパス管理部に出力された後、当該記憶手段が記憶するレジスタ値を出力し、
前記セレクタは、前記記憶手段から前記レジスタ値が出力された後、前記メモリセルを選択するメモリ装置。 The memory device according to claim 1,
The special command detection unit detects a read command to the storage means,
The storage means outputs a register value stored in the storage means after a detection signal indicating that the read command has been detected is output to the data path management section by the special command detection section,
The selector is a memory device that selects the memory cell after the register value is output from the storage means. - 請求項1に記載のメモリ装置において、
前記特殊コマンド検出部は、前記記憶手段への書き込みコマンドを検出し、
前記記憶手段は、当該書き込みコマンドを検出したことを示す検出信号が前記特殊コマンド検出部によって前記データパス管理部に出力された後、当該メモリ装置の外部から入力されたデータを当該記憶手段に格納し、
前記セレクタは、前記記憶手段が外部から入力された前記データを格納した後、前記メモリセルを選択するメモリ装置。 The memory device according to claim 1,
The special command detection unit detects a write command to the storage means,
The storage unit stores data input from the outside of the memory device in the storage unit after a detection signal indicating that the write command is detected is output to the data path management unit by the special command detection unit. And
The selector is a memory device that selects the memory cell after the storage unit stores the data input from the outside. - 請求項2に記載のメモリ装置において、
前記記憶手段は、複数のレジスタを備えるレジスタセットであり、
前記特殊コマンド検出部は、前記検出した読み出しコマンドに含まれるアドレス情報を前記記憶手段に出力し、
前記記憶手段は、当該記憶手段へ出力される前記アドレス情報を基に、読み出しを行うレジスタを、前記複数のレジスタのなかから選択するメモリ装置。 The memory device according to claim 2, wherein
The storage means is a register set including a plurality of registers,
The special command detection unit outputs address information included in the detected read command to the storage unit,
The memory unit is a memory device that selects a register to be read out of the plurality of registers based on the address information output to the memory unit. - 請求項3に記載のメモリ装置において、
前記記憶手段は、複数のレジスタを備えるレジスタセットであり、
前記特殊コマンド検出部は、前記検出した書き込みコマンドに含まれるアドレス情報を前記記憶手段に出力し、
前記記憶手段は、当該記憶手段へ出力される前記アドレス情報を基に、書き込みを行うレジスタを、前記複数のレジスタのなかから選択するメモリ装置。 The memory device according to claim 3.
The storage means is a register set including a plurality of registers,
The special command detection unit outputs address information included in the detected write command to the storage means,
The memory unit is a memory device that selects a register to be written from among the plurality of registers based on the address information output to the memory unit. - 予め定められたメモリ装置に対して、当該メモリ装置が有する予め定められた記憶手段からのデータ読み出しを指示するリードコマンドを発行するコマンド発行部と、
前記メモリ装置が出力するストローブ信号を遅延すると共に、前記メモリ装置が備えるメモリセルに記憶された記憶データを、遅延されたストローブ信号を用いて当該メモリ装置から受信するデータ送受信部と、
前記メモリ装置の前記記憶手段から読み出されたデータと、予め保持している期待値データとを比較し、前記メモリセルに記憶された前記記憶データの受信に際して、当該比較の結果より特定される遅延時間だけ前記ストローブ信号を前記データ送受信部により遅延させる遅延制御部とを有するメモリ制御装置。 A command issuing unit that issues a read command for instructing data reading from a predetermined storage unit included in the memory device to a predetermined memory device;
A data transmission / reception unit that delays a strobe signal output from the memory device and receives storage data stored in a memory cell included in the memory device from the memory device using the delayed strobe signal;
The data read from the storage means of the memory device is compared with the expected value data held in advance, and is specified from the result of the comparison when the stored data stored in the memory cell is received A memory control device comprising: a delay control unit that delays the strobe signal by the data transmitting / receiving unit by a delay time. - 請求項6に記載のメモリ制御装置であって、
前記遅延制御部は、
前記記憶手段が有する複数のレジスタのうちから1つのレジスタを選択するためのアドレス情報を前記リードコマンドに付加し、
さらに、前記期待値データを複数セット有し、前記メモリ装置から読み出されたデータと、前記複数セットの期待値データのうち、前記アドレス情報により選択されたレジスタに対応する期待値データとを比較するメモリ制御装置。 The memory control device according to claim 6, comprising:
The delay control unit
Adding address information for selecting one of the plurality of registers of the storage means to the read command;
Further, a plurality of sets of the expected value data are provided, and the data read from the memory device is compared with the expected value data corresponding to the register selected by the address information among the plurality of sets of expected value data. Memory control device. - 請求項6記載のメモリ制御装置であって、
予め定められたメモリ装置とデータの送受信を行うデータ送受信部と、
前記メモリ装置に対して、前記メモリ装置が有する予め定められた記憶手段へのデータ書き込みを指示するライトコマンドを発行するコマンド発行部とを有するメモリ制御装置。 The memory control device according to claim 6, comprising:
A data transmitter / receiver for transmitting / receiving data to / from a predetermined memory device;
A memory control device comprising: a command issuing unit that issues a write command for instructing the memory device to write data to a predetermined storage means included in the memory device. - 請求項6に記載のメモリ制御装置であって、
前記メモリ装置のモードを検知するメモリ状態管理部と、
前記メモリ状態管理部から通知された前記メモリ装置のモードに基づき、前記コマンド発行部に対して前記メモリ装置へのコマンドの発行を指示するコマンド管理部とを有し、
前記コマンド管理部は、前記メモリ装置が前記メモリセルからのデータ入出力がないモード時に、前記記憶手段へのデータの読み出しまたは書き込みを指示するコマンドの発行を、前記コマンド発行部に指示するメモリ制御装置。 The memory control device according to claim 6, comprising:
A memory state management unit for detecting a mode of the memory device;
A command management unit for instructing the command issuing unit to issue a command to the memory device based on the mode of the memory device notified from the memory state management unit;
The command management unit instructs the command issuing unit to issue a command for instructing reading or writing of data to the storage unit when the memory device is in a mode in which no data is input / output from the memory cell. apparatus. - 請求項9に記載のメモリ制御装置であって、
前記コマンド管理部は、前記メモリ装置がリフレッシュモード時に、前記記憶手段へのデータの読み出しまたは書き込みを指示するコマンドの発行を、前記コマンド発行部に指示するメモリ制御装置。 The memory control device according to claim 9, comprising:
The command management unit is a memory control device that instructs the command issuing unit to issue a command instructing reading or writing of data to the storage unit when the memory device is in a refresh mode. - 請求項9に記載のメモリ制御装置であって、
前記コマンド管理部は、前記メモリ装置がバンクコンフリクトによってデータバスが不使用である時に、前記記憶手段へのデータの読み出しまたは書き込みを指示するコマンドの発行を、前記コマンド発行部に指示するメモリ制御装置。 The memory control device according to claim 9, comprising:
The command management unit instructs the command issuing unit to issue a command for instructing reading or writing of data to the storage unit when the data bus is not used due to a bank conflict in the memory device. . - 請求項6記載のメモリ制御装置であって、
前記データ送受信部は、前記遅延制御部からの遅延値情報を基に、前記ストローブ信号を遅延させる遅延部を有し、遅延させた前記ストローブ信号で前記メモリ装置からのデータを受信するメモリ制御装置。 The memory control device according to claim 6, comprising:
The data transmission / reception unit includes a delay unit that delays the strobe signal based on delay value information from the delay control unit, and receives data from the memory device using the delayed strobe signal. . - 請求項12に記載のメモリ制御装置であって、
前記遅延制御部は、
前記メモリ装置から読み出されたデータと、予め保持している期待値データとが一致する範囲の、前記ストローブ信号を遅延させる値を保持し、
前記遅延させる値として、前記一致する範囲の上限値より大きな値を用いて前記リードコマンドを実行し、当該実行により前記メモリ装置から読み出されたデータと予め保持している前記期待値データとが一致する場合、保持している遅延値の範囲を更新するメモリ制御装置。 The memory control device according to claim 12, comprising:
The delay control unit
Holds a value for delaying the strobe signal in a range where the data read from the memory device matches the expected value data held in advance,
As the value to be delayed, the read command is executed using a value larger than the upper limit value of the matching range, and the data read from the memory device by the execution and the expected value data held in advance are A memory control device that updates a range of held delay values when they match. - 請求項12に記載のメモリ制御装置であって、
前記遅延制御部は、
前記メモリ装置から読み出されたデータと、予め保持している期待値データとが一致する範囲の、前記ストローブ信号を遅延させる値を保持し、
前記遅延させる値として、前記一致する範囲の上限値より小さな値を用いて前記リードコマンドを実行し、当該実行により前記メモリ装置から読み出されたデータと予め保持している前記期待値データとが一致しない場合、保持している遅延値の範囲を更新するメモリ制御装置。 The memory control device according to claim 12, comprising:
The delay control unit
Holds a value for delaying the strobe signal in a range where the data read from the memory device matches the expected value data held in advance,
As the value to be delayed, the read command is executed using a value smaller than the upper limit value of the matching range, and the data read from the memory device by the execution and the expected value data held in advance are: A memory control device that updates a range of held delay values if they do not match. - 請求項12に記載のメモリ制御装置であって、
前記遅延制御部は、
前記メモリ装置から読み出されたデータと、予め保持している期待値データとが一致する範囲の、前記ストローブ信号を遅延させる値を保持し、
前記遅延させる値として、前記一致する範囲の下限値より小さな値を用いて前記リードコマンドを実行し、当該実行により前記メモリ装置から読み出されたデータと予め保持している前記期待値データとが一致する場合、保持している遅延値の範囲を更新するメモリ制御装置。 The memory control device according to claim 12, comprising:
The delay control unit
Holds a value for delaying the strobe signal in a range where the data read from the memory device matches the expected value data held in advance,
As the value to be delayed, the read command is executed using a value smaller than the lower limit value of the matching range, and the data read from the memory device by the execution and the expected value data held in advance are A memory control device that updates a range of held delay values when they match. - 請求項12に記載のメモリ制御装置であって、
前記遅延制御部は、
前記メモリ装置から読み出されたデータと、予め保持している期待値データとが一致する範囲の、前記ストローブ信号を遅延させる値を保持し、
前記遅延させる値として、前記一致する範囲の下限値より大きな値を用いて前記リードコマンドを実行し、当該実行により前記メモリ装置から読み出されたデータと予め保持している前記期待値データとが一致しない場合、保持している遅延値の範囲を更新するメモリ制御装置。 The memory control device according to claim 12, comprising:
The delay control unit
Holds a value for delaying the strobe signal in a range where the data read from the memory device matches the expected value data held in advance,
As the value to be delayed, the read command is executed using a value larger than the lower limit value of the matching range, and the data read from the memory device by the execution and the expected value data held in advance are A memory control device that updates a range of held delay values if they do not match.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010531189A JPWO2010100685A1 (en) | 2009-03-03 | 2009-08-28 | Memory device and memory control device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009-049957 | 2009-03-03 | ||
JP2009049957 | 2009-03-03 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010100685A1 true WO2010100685A1 (en) | 2010-09-10 |
Family
ID=42709265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/004199 WO2010100685A1 (en) | 2009-03-03 | 2009-08-28 | Memory device and memory control device |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2010100685A1 (en) |
WO (1) | WO2010100685A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016532978A (en) * | 2013-09-04 | 2016-10-20 | インテル・コーポレーション | Periodic training for mismatch signal receivers |
US10978133B2 (en) | 2019-07-11 | 2021-04-13 | Samsung Electronics Co., Ltd. | Memory device and memory system comprising the same |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050163203A1 (en) * | 2004-01-28 | 2005-07-28 | Rambus, Inc. | Communication channel calibration for drift conditions |
US20070168631A1 (en) * | 2006-01-19 | 2007-07-19 | Samsung Electronics Co., Ltd. | Semiconductor memory device and methods thereof |
US20070226529A1 (en) * | 2006-03-21 | 2007-09-27 | Mediatek Inc. | Memory controller and device with data strobe calibration |
US20080130811A1 (en) * | 2006-06-30 | 2008-06-05 | Samsung Electronics Co., Ltd. | Circuit and method for removing skew in data transmitting/receiving system |
US7447862B2 (en) * | 2003-07-11 | 2008-11-04 | Samsung Electronics Co., Ltd. | Memory system and timing control method of the same |
-
2009
- 2009-08-28 WO PCT/JP2009/004199 patent/WO2010100685A1/en active Application Filing
- 2009-08-28 JP JP2010531189A patent/JPWO2010100685A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7447862B2 (en) * | 2003-07-11 | 2008-11-04 | Samsung Electronics Co., Ltd. | Memory system and timing control method of the same |
US20050163203A1 (en) * | 2004-01-28 | 2005-07-28 | Rambus, Inc. | Communication channel calibration for drift conditions |
US20070168631A1 (en) * | 2006-01-19 | 2007-07-19 | Samsung Electronics Co., Ltd. | Semiconductor memory device and methods thereof |
US20070226529A1 (en) * | 2006-03-21 | 2007-09-27 | Mediatek Inc. | Memory controller and device with data strobe calibration |
US20080130811A1 (en) * | 2006-06-30 | 2008-06-05 | Samsung Electronics Co., Ltd. | Circuit and method for removing skew in data transmitting/receiving system |
Non-Patent Citations (1)
Title |
---|
"Draft Standard for A High-Speed Memory Interface (SyncLink)", DRAFT 0.99 IEEE P1596.7- 199X, 1996, pages 1 - 56 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016532978A (en) * | 2013-09-04 | 2016-10-20 | インテル・コーポレーション | Periodic training for mismatch signal receivers |
US10978133B2 (en) | 2019-07-11 | 2021-04-13 | Samsung Electronics Co., Ltd. | Memory device and memory system comprising the same |
Also Published As
Publication number | Publication date |
---|---|
JPWO2010100685A1 (en) | 2012-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3522164B1 (en) | Memory device adjusting duty cycle and memory system having the same | |
EP2189986B1 (en) | Delay adjustment device, semiconductor device and delay adjustment method | |
US8593897B2 (en) | Memory controller, semiconductor storage device, and memory system including the memory controller and the semiconductor storage device for outputting temperature value in low power consumption mode | |
US10990322B2 (en) | Memory buffer chip, memory system and method of controlling the memory buffer chip | |
US7827431B2 (en) | Memory card having memory device and host apparatus accessing memory card | |
WO2009110040A1 (en) | Memory device, memory system, and access timing adjusting method in memory system | |
US10713114B2 (en) | Memory module and operation method of the same | |
JP2010165422A (en) | Semiconductor storage device and read latency adjustment method therefor, memory system, and semiconductor device | |
KR100891301B1 (en) | Semiconductor memory apparatus for transmitting data in high speed | |
US8140803B2 (en) | Structure for reducing latency associated with read operations in a memory system | |
WO2010100685A1 (en) | Memory device and memory control device | |
US20210295929A1 (en) | Semiconductor integrated circuit, memory controller, and memory system | |
JP2014063279A (en) | Semiconductor device and method of controlling memory | |
KR20120021158A (en) | Host controlloer, semiconductor device, and method for setting sampling phase | |
US7210017B2 (en) | Information processing apparatus, memory, information processing method, and program | |
US8107302B2 (en) | Semiconductor integrated circuit device for controlling a sense amplifier | |
WO2012060066A1 (en) | Delay circuit, delay controller, memory controller, and information terminal | |
US11049583B2 (en) | Semiconductor system with a training operation | |
US10339992B2 (en) | Semiconductor system | |
JP2013008112A (en) | Memory controller and delay adjustment method | |
US9128511B2 (en) | Semiconductor device and operation method thereof | |
CN118796735B (en) | High-speed memory bus time sequence self-adapting method | |
JP2008257776A (en) | Semiconductor storage device and control method thereof | |
US12026107B2 (en) | Mitigating interference between commands for different access requests in LPDDR4 memory system | |
US9378786B2 (en) | Memory controller with phase adjusted clock for performing memory operations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 2010531189 Country of ref document: JP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09841051 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: 09841051 Country of ref document: EP Kind code of ref document: A1 |