WO2024148755A1 - Refresh circuit and method, and memory - Google Patents
Refresh circuit and method, and memory Download PDFInfo
- Publication number
- WO2024148755A1 WO2024148755A1 PCT/CN2023/098294 CN2023098294W WO2024148755A1 WO 2024148755 A1 WO2024148755 A1 WO 2024148755A1 CN 2023098294 W CN2023098294 W CN 2023098294W WO 2024148755 A1 WO2024148755 A1 WO 2024148755A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- signal
- refresh
- address
- weak
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- 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/406—Management or control of the refreshing or charge-regeneration cycles
-
- 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/402—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 with charge regeneration individual to each memory cell, i.e. internal refresh
Definitions
- the present disclosure relates to, but is not limited to, a refresh circuit, a refresh method, and a memory.
- DRAM Dynamic Random Access Memory
- ECC Error Check and Correct
- ECS Error Check and Scrub
- the present disclosure provides a refresh circuit, method and memory.
- an embodiment of the present disclosure provides a refresh circuit, including:
- a refresh command counting module configured to count refresh commands to generate a first count value; if the first count value is less than a first threshold, output a refresh address selection signal at a first level; if the first count value is greater than or equal to the first threshold, output the refresh address selection signal at a second level;
- a refresh address generator configured to output a row address signal and update the row address signal based on a refresh operation
- a weak address generator connected to the refresh command counting module, configured to receive the refresh address selection signal, and output a plurality of weak address signals based on each refresh command when the refresh address selection signal is at a second level; wherein the weak address signal is row address information recorded in performing an error check and clear (ECS) operation;
- ECS error check and clear
- a refresh module is connected to the refresh command counting module, the refresh address generator and the weak address generator, and is configured to, when the received refresh address selection signal is at a first level, sequentially perform a refresh operation on the storage rows corresponding to the row address signal in response to the received refresh command signal; or, when the received refresh address selection signal is at a second level, sequentially perform a refresh operation on the storage rows corresponding to the multiple weak address signals in response to the received refresh command signal.
- the refresh command counting module is specifically configured to receive the refresh command signal; each time a refresh command signal is received, the first count value is incremented by one;
- the first count value When the first count value reaches a second threshold, the first count value is reset; wherein the second threshold is greater than the first threshold.
- the refresh module is further configured to output a refresh clock signal; wherein, during each refresh operation, the refresh clock signal generates a refresh pulse;
- the refresh address generator is further configured to receive the refresh clock signal; and to update and output the row address signal in sequence according to each refresh pulse on the refresh clock signal.
- the refresh address generator is further configured to receive the refresh address selection signal, and when the refresh address selection signal is at a first level, to sequentially update and output the row address signal according to each refresh pulse on the refresh clock signal, and when the refresh address selection signal is at a second level, to shield the refresh clock signal.
- the first count value includes M-bit sub-signals, and the first threshold is 2 (N-1) ;
- the refresh command counting module includes M triggers cascaded in sequence, the input end of each level of the trigger is connected to its own inverting output end, the positive output end of the i-th level of the trigger is used to output the i-th bit sub-signal of the first count value, and the first level of the trigger is connected to the positive output end of the trigger.
- the clock end of the trigger is used to receive the refresh command signal, and the clock end of the trigger of the i+1th level is connected to the inverting output end of the trigger of the ith level;
- the Nth bit sub-signal output of the first count value is the refresh address selection signal
- M is an integer greater than 1
- i is an integer greater than or equal to 1 and less than M
- N is an integer greater than 1 and less than or equal to M.
- the second threshold is 2 (L-1) +2 (N-1) , where L is a positive integer less than or equal to N;
- the refresh command counting module also includes a first AND gate, a first input end of the first AND gate is connected to the positive phase output end of the Nth trigger, a second input end of the first AND gate is connected to the positive phase output end of the Lth trigger, and an output end of the first AND gate is connected to the reset ends of all the triggers.
- the weak address generator includes a first logic unit and a first-in first-out register, and the first-in first-out register stores a plurality of the weak address signals, wherein:
- the first logic unit is configured to receive the refresh command signal and the refresh address selection signal, perform logic processing on the refresh command signal and the refresh address selection signal, and output a weak address clock signal; wherein, when the refresh address selection signal is at the second level, each time a refresh command signal is received, a pulse is generated on the weak address clock signal;
- the first-in first-out register is configured to receive the weak address clock signal and output a plurality of the weak address signals according to each pulse of the weak address clock signal.
- the weak address signal refers to a storage row having an error bit greater than a third threshold in the ECS mode
- the weak address generator is further configured to receive a current ECS operation row address signal and a corresponding storage flag signal, and when the storage flag signal is valid, store the current ECS operation row address signal as the weak address signal; wherein the storage flag signal indicates whether an error bit of the storage row corresponding to the current ECS operation row address signal is greater than a third threshold.
- the weak address generator further includes a latch, an address comparator, and a second logic unit, wherein:
- the latch is configured to latch the weak address signal stored last time
- the address comparator is configured to receive the current ECS operation row address signal and the weak address signal stored last time; when the current ECS operation row address signal and the weak address signal stored last time are different, output a valid update flag signal;
- the second logic unit is configured to receive the storage flag signal and the update flag signal; when both the storage flag signal and the update flag signal are valid, output a valid load clock signal;
- the latch is further configured to receive the loading clock signal and the current ECS operation row address signal; when the loading clock signal is valid, latch the current ECS operation row address signal as the weak address signal to be stored;
- the FIFO register is further configured to receive the loading clock signal delayed by a first preset time and the weak address signal to be stored, and store the weak address signal to be stored based on the loading clock signal.
- the second logic unit includes a second AND gate and a pulse generator, wherein:
- the first input end of the second AND gate receives the storage flag signal
- the second input end of the second AND gate receives the update flag signal
- the output end of the second AND gate is connected to the input end of the pulse generator, and the output end of the pulse generator is used to output the loading clock signal.
- the pulse generator includes a first NOT gate, a delay unit and a third AND gate, wherein:
- the input end of the first NOT gate is connected to the output end of the second AND gate, the output end of the first NOT gate is connected to the input end of the delay unit, the output end of the delay unit is connected to the second input end of the third AND gate, the first input end of the third AND gate is connected to the output end of the second AND gate, and the output end of the third AND gate is used to output the loading clock signal.
- the refresh module includes a control subunit, a selection subunit and a refresh subunit, wherein:
- the control subunit is configured to receive the refresh address selection signal; when the refresh address selection signal is at a second level, based on the refresh clock signal, generate and output a selection signal group; the selection subunit is configured to receive the selection signal group, the refresh address selection signal, the row address signal and a plurality of the weak address signals; when the refresh address selection signal is at a first level, output the row address signal as the address signal to be refreshed; when the refresh address selection signal is at a second level, based on the selection signal group, output the plurality of the weak address signals in sequence as the address signal to be refreshed;
- the refresh subunit is configured to receive the refresh command signal and the address signal to be refreshed, and in response to the refresh command signal, sequentially perform a refresh operation on the storage rows indicated by the address signal to be refreshed.
- control subunit includes a fourth AND gate, a pulse counting unit, a third logic unit and a fourth logic unit, wherein:
- the input end of the fourth AND gate receives the refresh address selection signal and the refresh clock signal; the output end of the fourth AND gate is connected to the input end of the pulse counting unit, and the output end of the pulse counting unit outputs a counting signal group;
- the input end of the third logic unit performs a first decoding process on the counting signal group to output the selection signal group;
- the input end of the fourth logic unit performs a second decoding process on the counting signal group to output a reset signal of the pulse counting unit.
- the selection signal group includes X-bit selection sub-signals
- the third logic unit includes X NAND gates, wherein:
- Each of the NAND gates has m input terminals for receiving m target counting signals or inverted signals thereof, and the output terminals of the X NAND gates correspond one-to-one to the X-bit selection sub-signals; wherein the target counting signals are the m counting signals in the counting signal group, and any two of the NAND gates do not have exactly the same inputs;
- X is a positive integer
- m is an integer greater than or equal to 2.
- the number of the weak address signals output based on each refresh command is X;
- the selection subunit includes X+1 cascaded selectors:
- the first input terminal of the first-stage selector receives the X-th weak address signal
- the second input terminal of the first-stage selector receives the ground signal
- the control terminal of the first-stage selector receives the X-th selection sub-signal
- the first input end of the j-th selector receives the X+1-j-th weak address signal
- the second input end of the j-th selector is connected to the output end of the j-1-th selector
- the control end of the j-th selector receives the X+1-j-th selection sub-signal; wherein j is an integer greater than or equal to 2 and less than or equal to X;
- the first input end of the selector of the X+1th level receives the row address signal
- the second input end of the selector of the X+1th level is connected to the output end of the selector of the Xth level
- the control end of the selector of the X+1th level receives the refresh address selection signal
- the output end of the selector of the X+1th level outputs the address signal to be refreshed.
- the clock terminal of the trigger of the first level is connected to the output terminal of the fourth AND gate, the input terminal of the trigger of the first level is connected to its own inverting output terminal, and the positive phase output terminal of the trigger of the first level is used to output the first bit sub-signal of the counting signal group;
- the clock terminal of the trigger of the second level is connected to the inverting output terminal of the trigger of the first level;
- the input terminal of the trigger of the second level is connected to its own inverting output terminal, and the positive phase output terminal of the trigger of the second level is used to output the second bit sub-signal of the counting signal group;
- the first input end of the first NAND gate is connected to the inverting output end of the first-stage trigger, the second input end of the first NAND gate is connected to the inverting output end of the second-stage trigger, and the output end of the first NAND gate outputs the first-bit selection sub-signal;
- the first input end of the second NAND gate is connected to the positive-phase output end of the first-stage trigger, the second input end of the second NAND gate is connected to the inverting output end of the second-stage trigger, and the output end of the second NAND gate outputs the second-bit selection sub-signal;
- the first input end of the third NAND gate is connected to the inverting output end of the first-stage trigger, the second input end of the third NAND gate is connected to the positive-phase output end of the second-stage trigger, and the output end of the third NAND gate outputs the third-bit selection sub-signal;
- the first input end of the selector of the first level receives the third weak address signal, the second input end of the selector of the first level receives the ground signal, and the control end of the selector of the first level receives the third selection sub-signal;
- the first input end of the selector of the second level receives the second weak address signal, the second input end of the selector of the second level is connected to the output end of the selector of the first level, and the control end of the selector of the second level receives the second selection sub-signal;
- the first input end of the selector of the third level receives the first weak address signal, the second input end of the selector of the third level is connected to the output end of the selector of the second level, and the control end of the selector of the third level receives the first selection sub-signal;
- the first input end of the selector of the fourth level receives the row address signal, the second input end of the selector of the fourth level is connected to the output end of the selector of the third level, the control end of
- the refresh circuit further includes an ECS module and a threshold module, wherein:
- the ECS module is configured to output the current ECS operation row address signal and a second count value; wherein the second count value refers to the number of error bits of the storage row corresponding to the current ECS operation row address signal;
- the threshold module is configured to receive the second count value, and output the valid storage flag signal when the second count value is greater than the third threshold value; and output the invalid storage flag signal when the second count value is less than or equal to the third threshold value;
- the weak address generator is further configured to receive the storage flag signal and the current ECS operation row address signal, and store the current ECS operation row address signal as the weak address signal when the storage flag signal is valid.
- the threshold module is further configured to receive a threshold setting signal, and determine the third threshold based on the threshold setting signal.
- an embodiment of the present disclosure provides a refresh method, which is applied to the refresh circuit as described in the first aspect, and the method includes:
- the first count value is incremented by one
- refresh operations are performed on weak storage rows in sequence; wherein the weak storage row refers to a storage row whose error bit is greater than a third threshold in the ECS mode, and the second threshold is greater than the first threshold.
- the method further includes: when the first count value is equal to the second threshold, resetting the first count value.
- an embodiment of the present disclosure provides a memory, which includes the refresh circuit as described in the first aspect.
- FIG1 is a schematic diagram showing the principle of an ECC mode provided by an embodiment of the present disclosure
- FIG2 is a structural schematic diagram 1 of a refresh circuit provided by an embodiment of the present disclosure.
- FIG3 is a second structural diagram of a refresh circuit provided by an embodiment of the present disclosure.
- FIG4 is a structural schematic diagram 1 of a refresh command counting module provided by an embodiment of the present disclosure.
- FIG5 is a second structural diagram of a refresh command counting module provided by an embodiment of the present disclosure.
- FIG6 is a first structural diagram of a weak address generator provided by an embodiment of the present disclosure.
- FIG7 is a second structural diagram of a weak address generator provided by an embodiment of the present disclosure.
- FIG8 is a third structural diagram of a weak address generator provided by an embodiment of the present disclosure.
- FIG9 is a fourth structural diagram of a weak address generator provided by an embodiment of the present disclosure.
- FIG10 is a structural schematic diagram 1 of a refresh module provided in an embodiment of the present disclosure.
- FIG11 is a second structural diagram of a refresh module provided in an embodiment of the present disclosure.
- FIG12 is a third structural diagram of a refresh module provided in an embodiment of the present disclosure.
- FIG13 is a fourth structural diagram of a refresh module provided in an embodiment of the present disclosure.
- FIG14 is a fifth structural diagram of a refresh module provided in an embodiment of the present disclosure.
- FIG15 is a third structural diagram of a refresh circuit provided by an embodiment of the present disclosure.
- FIG16 is a schematic flow chart of a refreshing method provided in an embodiment of the present disclosure.
- FIG. 17 is a schematic diagram of the composition structure of a memory provided in an embodiment of the present disclosure.
- first ⁇ second ⁇ third involved in the embodiments of the present disclosure are only used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that “first ⁇ second ⁇ third” can be interchanged in a specific order or sequence where permitted, so that the embodiments of the present disclosure described here can be implemented in an order other than that illustrated or described here.
- DRAM Dynamic Random Access Memory
- SDRAM Synchronous Dynamic Random Access Memory
- LPDDR Low Power DDR
- ECS Error Check and Scrub
- EpRC Error per Row Counter
- DDR5 DDR5 DRAM
- On-Die ECC On-Die ECC
- DDR5 also introduces ECS operation.
- the ECS operation will perform a complete error check and clearing of DRAM at least once within 24 hours, including error checking of all DRAM storage groups (Bank Group, BG), storage blocks (Bank, BA), storage rows (Row) and storage columns (Column, Col).
- the ECS operation can record the address of a row with the most data failures in a complete ECS cycle, and send it to the mode register (Mode Register, MR) for the memory controller (Controller) to read.
- Mode Register Mode Register
- ECS address generator ECS Address Counters
- ECC error correction logic module ECC Correction Logic
- EpRC error counter per row
- the comparison module The block (Compare) compares the current row error count with the maximum row error count (Previous High Error Count).
- the current row error count and the storage row address of the detection object will replace the maximum row error count and the maximum row error address (Previous High Error Count Row/Bank Address) and be saved in MR; if the current row error count is not greater than the maximum row error count, the maximum row error count and the maximum row error address will always be saved in MR. In particular, the error counter will be reset (Reset) every time the row address changes.
- the maximum row error address will be saved in the mode register MR ⁇ 16:18>, and the maximum row error count will be saved in MR19.
- the row/code word error count REC[5:0] (Row/Word Code Error Count, REC) recorded by MR is displayed as a row/code word error count within the range, and the row error count threshold (Row Error Threshold Count, RETC) can mask the code word error count that is less than the set threshold.
- RETC Row Error Threshold Count
- the default value of RETC in DDR5 is 4. It should be understood that Figure 1 is from the industry standard document of the Solid State Technology Association. Those skilled in the art can refer to SPEC to understand the meaning of the various terms and abbreviations involved therein, and this part of the content does not affect the understanding of the embodiments of the present disclosure, so it will not be described in detail here.
- the limitation of the ECC verification method (Hamming code) commonly used in DRAM is that it can only correct single-bit failures. If the memory has a double-bit failure (Double-Bit Fail) or a multi-bit failure (Multi-Bit Fail), it will cause the memory to read data errors.
- the ECS mode has a check cycle of 24 hours and only records the row address with the most failed bits. Other storage rows with multiple errors detected in the ECS mode will not be recorded, which cannot fundamentally improve the phenomenon of single-bit failures.
- an embodiment of the present disclosure provides a refresh circuit, which performs a refresh operation based on a normal row address signal or ECS operation to detect a storage row with multiple errors, and can additionally insert a refresh operation for the storage row corresponding to the weak address signal in the normal refresh operation, thereby improving storage stability and improving data failure.
- FIG. 2 a schematic diagram of the composition structure of a refresh circuit 10 provided in an embodiment of the present disclosure is shown.
- the refresh circuit 10 includes:
- the refresh command counting module 101 is configured to count the refresh commands to generate a first count value; if the first count value is less than a first threshold, output a refresh address selection signal at a first level; if the first count value is greater than or equal to the first threshold, output a refresh address selection signal at a second level;
- a refresh address generator 102 configured to output a row address signal and update the row address signal based on a refresh operation
- a weak address generator 103 is connected to the refresh command counting module 101 and is configured to receive a refresh address selection signal and output a plurality of weak address signals based on each refresh command when the refresh address selection signal is at a second level; wherein the weak address signal is row address information recorded in performing an error check and clear (ECS) operation;
- ECS error check and clear
- the refresh module 104 is connected to the refresh command counting module 101, the refresh address generator 102 and the weak address generator 103, and is configured to perform a refresh operation on the storage rows corresponding to the row address signal in sequence in response to the received refresh command signal when the received refresh address selection signal is at a first level; or to perform a refresh operation on the storage rows corresponding to multiple weak address signals in sequence in response to the received refresh command signal when the received refresh address selection signal is at a second level.
- the refresh circuit 10 of the embodiment of the present disclosure can be applied to but not limited to memories, such as DRAM, SDRAM, DDR, etc.
- the refresh circuit 10 provided by the embodiment of the present disclosure can improve storage stability.
- the refresh operation must be performed at regular intervals.
- the main function of the refresh module 104 is to continuously read and write the data stored in the DRAM, which is equivalent to repeatedly charging the capacitor so that the discharged charge is replenished to ensure that the data is not lost.
- weak cells are the data retention time of some storage cells in the storage device. It should be noted that if the data retention time of some storage cells in the storage device does not meet the specified reference time, they are called "weak cells".
- the above-mentioned weak address signal is the address signal corresponding to the storage cell with multiple errors detected by the ECS operation. Since ultra-high integration requires at least tens of millions of storage cells to be integrated into one chip, the probability of weak cells existing will also increase. Therefore, increasing the refresh frequency of weak cells can ensure the integrity of stored data.
- row address signal, refresh address selection signal, weak address signal, and refresh command signal in Figure 2 are respectively represented by Normal REF Addr, Address Exchange Flag, Out Address, and REF AB CMD in the subsequent explanation.
- a refresh command can perform multiple refresh operations, where the number of times can be 1 or any value greater than 1.
- the main function of the refresh command counting module 101 is to count the number of external refresh commands and generate a first count value, and output a refresh address selection signal (Addr Exchange Flag) based on the relationship between the first count value and the first threshold.
- the refresh module 104 performs a refresh operation on the storage row corresponding to the row address signal (Normal REF Addr) or a refresh operation on the storage row corresponding to the weak address signal (Out Address) according to the level state of the refresh address selection signal (Addr Exchange Flag).
- the first level refers to a low level state (0)
- the second level refers to a high level state (1).
- the refresh address selection signal (Addr Exchange Flag) is 0, the refresh module 104 performs a refresh on the storage row corresponding to the row address signal (Normal REF Addr); when the refresh address selection signal (Addr Exchange Flag) is 1, the refresh module 104 performs a refresh on the storage row corresponding to the weak address signal (Out Address) generated by the weak address generator 103.
- the refresh address selection signal (Addr Exchange Flag) is controlled by the level state to determine the row address signal (Normal REF Addr). REF Addr) or weak address signal (Out Address) for refreshing.
- the refresh address selection signal (Addr Exchange Flag) can also be set to a high level (1) as the first level and a low level (0) as the second level. Designers can determine this based on the internal structure of the circuit and the function of the signal in the specific circuit.
- the refresh module 104 will select the storage row corresponding to the row address signal (Normal REF Address) or the weak address signal (Out Address) as the next refresh object based on the level state of the refresh address selection signal (Addr Exchange Flag).
- the refresh operation of the weak cell/weak address is inserted into the normal refresh mechanism to avoid the failure of the storage row corresponding to the weak address signal and improve the data stability.
- the refresh command counting module 101 is specifically configured to receive a refresh command signal (REF AB CMD); each time a refresh command signal (REF AB CMD) is received, the first count value is incremented by one;
- the first count value When the first count value reaches a second threshold, the first count value is reset; wherein the second threshold is greater than the first threshold.
- the refresh command counting module 101 counts the refresh command signal (REF AB CMD) to generate a first count value.
- the refresh address selection signal (Addr Exchange Flag) is at a first level, and the refresh module 104 executes a refresh of the storage row corresponding to the row address signal (Normal REF Addr);
- the refresh address selection signal (Addr Exchange Flag) is at a second level, and the refresh module 104 executes a refresh of the storage row corresponding to the weak address signal (Out Address);
- the refresh command counting module 101 is reset, and the refresh address selection signal (Addr Exchange Flag) at this time is restored to the first level, and the refresh command counting module 101 performs the next cycle.
- the third threshold and the first threshold are pre-set fixed values, and the first threshold and the third threshold are related to the number of refresh command signals (REF AB CMD) counted by the refresh command counting module 101; while the number of weak address signals (Out Address) in the memory is uncertain and has nothing to do with the first threshold and the second threshold, and the number of weak address signals (Out Address) is related to the performance of the memory and the environmental parameters of the current ECS test.
- the difference between the second threshold and the first threshold is the number of weak address signals (Out Address) sequentially output by the weak address generator 103 to the refresh module 104 to perform the refresh operation, which may not match the number of weak address signals (Out Address) stored in the weak address generator 103.
- the difference between the second threshold and the first threshold may be greater than the number of weak address signals (Out Address), or may be less than the number of weak address signals (Out Address). Therefore, it is necessary for circuit designers to modify the first threshold and the second threshold according to actual conditions to improve the above mismatch, better improve the refresh frequency of the weak address signal (Out Address), and ensure the stability of the memory.
- the refresh module 104 is further configured to output a refresh clock signal (CBR_CLK); wherein, after each refresh operation, the refresh clock signal (CBR_CLK) generates a refresh pulse;
- the refresh address generator 102 is also configured to receive a refresh clock signal (CBR_CLK); and to update and output a row address signal (Normal REF Addr) in sequence according to each refresh pulse on the refresh clock signal (CBR_CLK).
- CBR_CLK refresh clock signal
- Normal REF Addr row address signal
- the refresh pulse on the refresh clock signal (CBR_CLK) is used to update the row address signal (Normal REF Addr) for refresh; in some embodiments, a refresh pulse can be generated on the refresh clock signal (CBR_CLK) before each refresh operation, and the row address signal (Normal REF Addr) for refresh is updated and output according to the refresh pulse generated before the refresh operation, and the current refresh operation refreshes the updated row address signal (Normal REF Addr); in other embodiments, a refresh pulse can be generated on the refresh clock signal (CBR_CLK) at each refresh operation or after each refresh operation, and the row address signal (Normal REF Addr) for refresh is updated and output according to the generated refresh pulse, and the next refresh operation refreshes the updated row address signal (Normal REF Addr); the present disclosure takes the latter "generating a refresh pulse on the refresh clock signal (CBR_CLK) at each refresh operation or after each refresh operation" as an example for explanation.
- the refresh address selection signal (Addr Exchange Flag) is at the first level
- the refresh address selection signal (Addr Exchange Flag) is connected to the first input terminal of the AND gate through the NOT gate
- the second input terminal of the AND gate receives the refresh clock signal (CBR_CLK)
- the output terminal of the AND gate serves as the counting clock of the refresh address generator 102 to update the address information of the automatic refresh.
- the embodiment of the present disclosure utilizes the refresh address generator 102 to count the number of refresh operations inside the memory and generate a row address signal (Normal REF Addr), and the row address signal (Normal REF Addr) indicates the next address to be refreshed in the auto refresh (AR) mechanism.
- the refresh address generator 102 is a counter inside the SDRAM that automatically generates row addresses in sequence in the auto refresh mode. For AR, since the refresh is performed on all storage bodies in a row, there is no need for column addressing, or the column address selection (CAS) is valid before the row address selection (RAS). Therefore, AR is also called CBR (CAS Before RAS, column positioning in advance of row) refresh.
- each refresh operation has an internal refresh command, and each refresh operation not only refreshes one row, but can refresh multiple rows of the Bank at the same time.
- each refresh command allows the memory to perform multiple refresh operations, which is determined by the refresh circuit designed for each DRAM product.
- the refresh address generator 102 is further configured to receive a refresh address selection signal (Addr Exchange Flag), when the refresh address selection signal (Addr Exchange Flag) is at a first level, the row address signal (Normal REF Addr) is updated and output in sequence according to each refresh pulse on the refresh clock signal (CBR_CLK), and when the refresh address selection signal (Addr Exchange Flag) is at a second level, the refresh clock signal (CBR_CLK) is shielded.
- a refresh address selection signal (Addr Exchange Flag)
- the refresh address selection signal (Addr Exchange Flag) is at the second level
- the weak address generator 103 outputs a weak address signal (Out Address).
- the refresh clock signal (CBR_CLK) will not be input to the refresh address generator 102, and the refresh address generator 102 stops counting, that is, the automatic refresh address does not change.
- the refresh address generator 102 outputs a row address signal (Normal REF Addr) corresponding to the order of automatic refresh and the pulse of the refresh clock signal.
- the first count value includes M-bit sub-signals, and the first threshold is 2 (N-1) ;
- the refresh command counting module 101 includes M triggers cascaded in sequence, the input end of each stage of the trigger is connected to its own inverting output end, the positive phase output end of the i-th stage trigger is used to output the i-th bit sub-signal of the first count value, the clock end of the 1st stage trigger is used to receive the refresh command signal (REF AB CMD), and the clock end of the i+1th stage trigger is connected to the inverting output end of the i-th stage trigger;
- the Nth sub-signal output of the first count value is a refresh address selection signal (Addr Exchange Flag)
- M is an integer greater than 1
- i is an integer greater than or equal to 1 and less than M
- N is an integer greater than 1 and less than or equal to M.
- the embodiment of the present disclosure uses 12 D flip-flops to form an asynchronous binary counter 20.
- each D flip-flop is connected to the input terminal (D) and to the clock terminal (CLK) of the next-level D flip-flop.
- the positive output terminal (Q) of each D flip-flop serves as the counting terminal, and the reset terminal (RST) is reset after receiving the reset signal to start the next round of counting.
- the clock terminal (CLK) of the first-stage D flip-flop 201 is used to receive the refresh command signal (REF AB CMD), the first-stage D flip-flop 201 has a first counting terminal for outputting REF AB_CNT ⁇ 0>; the second-stage D flip-flop 202 has a second counting terminal for outputting REF AB_CNT ⁇ 1>; the third-stage D flip-flop 203 has a third counting terminal for outputting REF AB_CNT ⁇ 2>...
- the eleventh-stage D flip-flop 211 has an eleventh counting terminal for outputting REF AB_CNT ⁇ 10>; the twelfth-stage D flip-flop 212 has a twelfth counting terminal for outputting REF AB_CNT ⁇ 11>.
- the refresh command counting module 101 further includes a first buffer 21 and a first AND gate 22.
- the input end of the first buffer 21 is connected to the positive phase output end of the 12th level flip-flop, and the output end of the first buffer 21 outputs a refresh address selection signal (Addr Exchange Flag);
- the second threshold is 2 (L-1) +2 (N-1) , where L is a positive integer less than or equal to N;
- the refresh command counting module 101 also includes a first AND gate 22, a first input terminal of the first AND gate 22 is connected to the positive phase output terminal of the Nth trigger, a second input terminal of the first AND gate 22 is connected to the positive phase output terminal of the Lth trigger, and an output terminal of the first AND gate 22 is connected to the reset terminals of all triggers.
- the refresh command counting module 101 further includes a multiplexer 23, the input end of the multiplexer 23 is connected to the positive phase output end of the Nth to Mth triggers, and the multiplexer 23 outputs a refresh address selection signal (Addr Exchange Flag) based on a selection control signal (Choose Control).
- the first threshold and the second threshold can be adjusted by the multiplexer 23.
- the multiplexer 23 can select the data bit of the first count value output as the refresh address selection signal (Addr Exchange Flag), that is, select the first count value (first threshold) that needs to be satisfied when outputting the refresh address selection signal (Addr Exchange Flag).
- the first input end of the first AND gate 22 can output the N+1th bit of the first count value as the refresh address selection signal (Addr Exchange Flag) through the selection control signal (Choose Control) of the multiplexer, or output the N+2th bit of the first count value as the refresh address selection signal (Addr Exchange Flag)..
- the first threshold can be 2N /2 (N+1) /2 (N+2) .../2 (M-1) , so that the (N+1)/(N+2).../Mth bit of the first count value can select which bit sub-signal to output as the refresh address selection signal (Addr Exchange Flag) via the multiplexer 23 through the selection control signal (Choose Control) to adjust the first threshold. Therefore, by adjusting the time interval of the refresh address selection signal (Addr Exchange Flag) switching from the first level to the second level, the refresh frequency of the weak address signal (Out Address) can be controlled.
- the select control signal (Choose Control) has a default initial value and can also be modified through the parameters of the mode register in the test mode.
- the data bit of the first count value can also be selected as the reset flag signal output through the multiplexer, that is, the reset flag signal is selected to be output
- the first count value (second threshold) that needs to be met when the signal is reset.
- the second input terminal (REFAB CNT ⁇ L-1>) of the first AND gate can also be selected and output by the selection control signal (Choose Control) of the multiplexer to control the second threshold.
- the multiplexer can use the L+1th bit of the first count value as an input of the reset flag signal, or use the L+2th bit of the first count value as an input of the reset flag signal...
- the second threshold can be (2 (M-1) +2 L )/(2 (M-1) +2 (L+1) )/(2 (M-1) +2 (L+2) )...
- the (L+1)/(L+2)... bit of the first count value can be selected by the selection control signal (Choose Control) of the multiplexer to output which bit of the sub-signal as another input data bit of the reset flag signal to control the second threshold.
- the selection control signal Choose Control
- the weak address generator 103 includes a first logic unit 30 and a first-in first-out register (FIFO Register) 31, and the first-in first-out register 31 stores a plurality of weak address signals (Out Address), wherein:
- the first logic unit 30 is configured to receive a refresh command signal (REF AB CMD) and a refresh address selection signal (Addr Exchange Flag), perform logic processing on the refresh command signal (REF AB CMD) and the refresh address selection signal (Addr Exchange Flag), and output a weak address clock signal (Out_CLK); wherein, when the refresh address selection signal (Addr Exchange Flag) is at a second level, each time a refresh command signal (REF AB CMD) is received, a pulse is generated on the weak address clock signal (Out_CLK);
- the first-in first-out register 31 is configured to receive a weak address clock signal (Out_CLK) and output multiple weak address signals (Out Address) according to each pulse on the weak address clock signal (Out_CLK).
- the number of weak address signals (Out Address) can be multiple.
- the weak address clock signal (Out Address) generates a pulse
- the multiple weak address signals (Out Address) in the first-in first-out register 31 can be output in sequence.
- the embodiment of the present disclosure is described by taking the first logic unit as an AND gate as an example.
- the main function of the first logic unit 30 is to perform logical AND processing on the refresh command signal (REF AB CMD) and the refresh address selection signal (Addr Exchange Flag) to generate a weak address clock signal (Out_CLK).
- the output of the weak address clock signal (Out_CLK) can also be achieved through a NAND gate, a NOR gate or an XOR gate.
- the two gate circuits of the NAND gate and the NOR gate can realize the functions of all other gate circuits.
- the function of the AND gate is realized by the NAND gate, the two input ends of a NAND gate are connected together, and then a dual-input NAND gate is connected to its input end; if the function of the AND gate is realized by the NOR gate, the NOR gate with two input ends connected together is used as the two inputs of another NOR gate; the XOR gate can also be used to realize the AND gate, but it is rarely used and will not be described in detail here.
- the FIFO register 31 responds to each pulse of the weak address clock signal (Out_CLK) and outputs X weak address signals at the same time, where X is the number of refresh operations performed for each refresh command signal (REF AB CMD) (in some cases, for example, each refresh operation refreshes multiple rows of a Bank at the same time, and X is the number of refreshable rows corresponding to each refresh command signal).
- X is the number of refresh operations performed for each refresh command signal (REF AB CMD) (in some cases, for example, each refresh operation refreshes multiple rows of a Bank at the same time, and X is the number of refreshable rows corresponding to each refresh command signal).
- the refresh address selection signal (Addr Exchange Flag) is at the second level and each time a refresh command signal (REF AB CMD) is received, a pulse is generated on the weak address clock signal (Out_CLK) output by the first logic unit 30, and the first logic unit 30 outputs the weak address clock signal (Out_CLK) to the first-in first-out register 31 according to the refresh command signal (REF AB CMD) and the refresh address selection signal (Addr Exchange Flag), so that the first-in first-out register 31 outputs a plurality of weak address signals (Out Address) in sequence based on the weak address clock signal (Out_CLK), so as to perform refresh operations on the storage rows corresponding to the plurality of weak address signals (Out Address) in turn.
- the refresh address selection signal (Addr Exchange Flag) when the refresh address selection signal (Addr Exchange Flag) is at the first level or the refresh command signal (REF AB CMD) is not received, no pulse is generated on the weak address clock signal (Out_CLK), and multiple weak address signals (Out Address) will be stored in the first-in first-out register 31; when the refresh address selection signal (Addr Exchange Flag) is at the second level and the refresh command signal (REF AB CMD) is received, the first-in first-out register 31 will output the stored multiple weak address signals (Out Address) in sequence according to each pulse on the weak address clock signal (Out_CLK) for subsequent refresh operations on the weak address signals (Out Address).
- the weak address signal (Out Address) refers to a storage row in which the error bit is greater than a third threshold in the ECS mode
- the weak address generator 103 is further configured to receive a current ECS operation row address signal (Row Address) and a corresponding storage flag signal (Bigger_Flag), and when the storage flag signal (Bigger_Flag) is valid, store the current ECS operation row address signal (Row Address) as a weak address signal (Out Address); wherein the storage flag signal (Bigger_Flag) indicates whether an error bit of a storage row corresponding to the current ECS operation row address signal (Row Address) is greater than a third threshold.
- the third threshold may be a fixed value or a value range.
- the third threshold When performing ECS operations in the memory, the third threshold generally has a set default value to more efficiently detect weak storage rows and improve the error detection efficiency of ECS.
- the storage flag signal (Bigger_Flag) valid refers to a low level (0), and invalid refers to a high level (1).
- the storage flag signal (Bigger_Flag) when the storage flag signal (Bigger_Flag) is at a low level, it means that the error bit of the storage row corresponding to the current ECS operation row address signal (Row Address) is less than or equal to the third threshold, then the current ECS operation row address signal (Row Address) is not a weak address signal (Out Address), and the weak address generator 103 will not store it; when the storage flag signal (Bigger_Flag) is at a high level, it means that the error bit of the storage row corresponding to the current ECS operation row address signal (Row Address) is greater than the third threshold, then the current The ECS operation row address signal (Row Address) is a weak address signal (Out Address), which will be stored by the weak address generator 103 .
- the weak address generator 103 further includes a latch 32 , an address comparator 33 , and a second logic unit 34 , wherein:
- Latch 32 configured to latch the weak address signal (Weak_Addr_ECS_) stored last time
- the address comparator 33 is configured to receive the current ECS operation row address signal (Row Address) and the weak address signal (Weak_Addr_ECS_) stored last time; when the current ECS operation row address signal (Row Address) and the weak address signal (Weak_Addr_ECS_) stored last time are different, output a valid update flag signal (Diff_Flag);
- the second logic unit 34 is configured to receive a storage flag signal (Bigger_Flag) and an update flag signal (Diff_Flag); when both the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag) are valid, output a valid load clock signal (IN_CLK);
- the latch 32 is further configured to receive a loading clock signal (IN_CLK) and a current ECS operation row address signal (Row Address); when the loading clock signal (IN_CLK) is valid, the current ECS operation row address signal (Row Address) is latched as a weak address signal (Out Address) to be stored;
- the first-in-first-out register 31 is also configured to receive a loading clock signal (IN_CLK) delayed by a first preset time and a weak address signal to be stored (Out Address), and to store the weak address signal to be stored (Out Address) based on the loading clock signal (IN_CLK).
- the weak address generator 103 also includes a clock delay unit 35.
- the clock delay unit 35 is used to delay the loading clock signal (IN_CLK) to ensure that the weak address signal (Out Address) enters the first-in first-out register 31 first. In this way, when the rising edge of the loading clock signal (IN_CLK) arrives, the weak address signal (Out Address) can be stored.
- the weak address generator 103 receives the current ECS operation row address signal (Row Address), it first compares it with the last stored ECS operation weak address signal (Weak_Addr_ECS_); if the two are the same, the latch (Latch) does not need to latch and store the current ECS operation row address signal (Row Address); if the two are different, the latch (Latch) will re-latch the current ECS operation row address signal (Row Address), and send the current ECS operation row address signal (Row Address) as the weak address signal (Out Address) to be stored into the first-in first-out register 31. In this way, not only can the weak address signal (Out Address) be better latched to prepare for the next comparison, but also the weak address signal (Out Address) to be stored is provided to the latch 32.
- the work of the first-in first-out register 31 is to access the address.
- the loading clock signal (IN CLK) is valid
- the weak address signal to be stored (Out Address) is stored.
- the weak address signal to be stored (Out Address) is output.
- the first-in first-out register 31 will store or output multiple weak address signals (Out Address) stored.
- the weak address signal (Out Address) received first will be stored or output first, realizing the data input and output at the same time, and improving the transmission efficiency of the memory.
- first logic unit 30, first-in first-out register 31, latch 32, address comparator 33, second logic unit 34 and clock delay unit 35 together constitute a weak address generator 103, which can realize the latching and output of the weak address signal (Out Address) for subsequent refreshing of the storage row corresponding to the weak address signal (Out Address).
- the second logic unit 34 includes a second AND gate 340 and a pulse generator 341 , wherein:
- the first input end of the second AND gate 340 receives a storage flag signal (Bigger_Flag), the second input end of the second AND gate 340 receives an update flag signal (Diff_Flag), the output end of the second AND gate 340 is connected to the input end of the pulse generator 341, and the output end of the pulse generator 341 is used to output a loading clock signal (IN CLK).
- the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag) are two input terminals of the second AND gate 340, indicating that the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag) are both valid at a high level. It should be understood that for these two signals, it can be valid at a high level or valid at a low level. If the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag) are valid at a low level, then to output a valid load clock signal (IN CLK), the second AND gate 340 needs to be replaced with a NOR gate to realize the relevant functions of the circuit.
- a NAND gate can be used to replace the second AND gate 340 in the embodiment of the present disclosure to realize the original circuit function.
- the pulse generator 341 is used to generate an automatic pulse of 2 nanoseconds (ns) on the loading clock signal (IN CLK), and the latch 32 will latch the weak address signal (Out Address).
- the pulse generator 341 includes a first NOT gate 3410 , a delay unit 3411 and a third AND gate 3412 , wherein:
- An input terminal of the first NOT gate 3410 is connected to an output terminal of the second AND gate 340, an output terminal of the first NOT gate 3410 is connected to an input terminal of a delay unit 3411, an output terminal of the delay unit 3411 is connected to a second input terminal of a third AND gate 3412, a first input terminal of the third AND gate 3412 is connected to an output terminal of the second AND gate 340, and an output terminal of the third AND gate 3412 is used to output a loading clock signal (IN CLK).
- the function of the delay unit 3411 is to ensure that the weak address signal (Out Address) enters the latch first, so that when the rising edge of the loading clock signal (IN CLK) arrives, the weak address signal (Out Address) can be well latched.
- the third AND gate 3412 can also be replaced by a NOR gate to implement the relevant circuit functions.
- the selection is not unique and can be flexibly designed according to circuit requirements.
- first-in first-out register 31, latch 32, address comparator 33, second AND gate 340, pulse generator 341 and clock delay unit 35 together constitute a weak address storage module 1030
- the weak address storage module 1030 and the first logic unit 30 together constitute the weak address generator 103 of the embodiment of the present disclosure.
- the refresh module 104 includes a control subunit 40, a selection subunit 41 and a refresh subunit 42, wherein:
- the control subunit 40 is configured to receive a refresh address selection signal (Addr Exchange Flag); when the refresh address selection signal (Addr Exchange Flag) is at a second level, based on a refresh clock signal (CBR_CLK), generate and output a selection signal group (Addr_SELB ⁇ X:1>);
- the selection subunit 41 is configured to receive a selection signal group (Addr_SELB ⁇ X:1>), a refresh address selection signal (Addr Exchange Flag), a row address signal (Normal REF Addr) and a plurality of weak address signals (Out Address); when the refresh address selection signal (Addr Exchange Flag) is at a first level, the row address signal (Normal REF Addr) is output as an address signal to be refreshed (Refresh Address); when the refresh address selection signal (Addr Exchange Flag) is at a second level, the plurality of weak address signals (Out Address) are sequentially output as an address signal to be refreshed (Refresh Address) based on the selection signal group (Addr_SELB ⁇ X:1>);
- the refresh subunit 42 is configured to receive a refresh command signal (REF AB CMD) and an address signal to be refreshed (Refresh Address), and to perform a refresh operation on a storage row indicated by the address signal to be refreshed (Refresh Address) in response to the refresh command signal (REF AB CMD).
- REF AB CMD refresh command signal
- REfresh Address an address signal to be refreshed
- the selection subunit 41 outputs the row address signal (Normal REF Addr), and the refresh subunit 42 performs a normal refresh of the row address signal (Normal REF Addr);
- the control subunit 40 outputs the selection signal group (Addr_SELB ⁇ X:1>) according to the refresh clock signal (CBR_CLK) generated by the refresh subunit 42, and the selection subunit 41 outputs a plurality of weak address signals (Out Address) in sequence to the refresh subunit 42 according to the selection signal group (Addr_SELB ⁇ X:1>), and performs a refresh operation on the storage row indicated by the weak address signal (Out Address).
- control subunit 40 includes a fourth AND gate 400 , a pulse counting unit 401 , a third logic unit 402 , and a fourth logic unit 403 , wherein:
- the input end of the fourth AND gate 400 receives the refresh address selection signal (Addr Exchange Flag) and the refresh clock signal (CBR_CLK); the output end of the fourth AND gate 400 is connected to the input end of the pulse counting unit 401, and the output end of the pulse counting unit 401 outputs the counting signal group (Addr_MUX_CNT ⁇ Y:0>);
- the input end of the third logic unit 402 performs a first decoding process on the count signal group (Addr_MUX_CNTB ⁇ Y:0>) to output a selection signal group (Addr_SELB ⁇ X:1>);
- the input terminal of the fourth logic unit 403 performs a second decoding process on the counting signal group (Addr_MUX_CNTB ⁇ Y:0>) to output a reset signal (RST) of the pulse counting unit 401 .
- the pulse counting unit 401 is a counter composed of two D flip-flops (that is, the number of signals in the output counting signal group (Addr_MUX_CNTB ⁇ Y:0>) is 2).
- the pulse counting unit 401 includes a first-level trigger 4010 and a second-level trigger 4011.
- the clock terminal of the first-level trigger 4010 is connected to the fourth AND gate 400, the input terminal of the first-level trigger 4010 is connected to its own inverting output terminal, and the positive-phase output terminal of the first-level trigger 4010 is used to output the first-bit sub-signal Addr_MUX_CNT ⁇ 0> of the counting signal group (Addr_MUX_CNTB ⁇ Y:0>);
- the clock terminal of the second-level trigger 4011 is connected to the inverting output terminal of the first-level trigger 4010; the input terminal of the second-level trigger 4011 is connected to its own inverting output terminal, and the positive-phase output terminal of the second-level trigger 4011 is used to output the second-bit sub-signal Addr_MUX_CNT ⁇ 1> of the counting signal group (Addr_MUX_CNTB ⁇ Y:0>).
- the refresh clock signal (CBR_CLK) serves as the clock signal of the pulse counting unit 401.
- the pulse counting unit 401 counts the refresh clock signal (CBR_CLK) and outputs a count value. According to the output count value, it is determined that one of the selection signal groups (Addr_SELB ⁇ X:1>) is in a valid state, so as to refresh multiple weak address signals (Out Address) in sequence.
- the third logic unit 402 includes a first NAND gate 4020, a second NAND gate 4021 and a third NAND gate 4022.
- the first input terminal of the first NAND gate 4020 is connected to the inverting output terminal of the first-stage flip-flop 4010, the second input terminal of the first NAND gate 4020 is connected to the inverting output terminal of the second-stage flip-flop 4011, and the output terminal of the first NAND gate 4020 outputs the first-bit selection sub-signal (Addr_SELB ⁇ 1>); the second input terminal of the second NAND gate 4021 is connected to the inverting output terminal of the second-stage flip-flop 4011.
- the first input terminal of the third NAND gate 4022 is connected to the inverting output terminal of the first-stage flip-flop 4010, the second input terminal of the second NAND gate 4021 is connected to the inverting output terminal of the second-stage flip-flop 4011, and the output terminal of the second NAND gate 4021 outputs the second-bit selection sub-signal (Addr_SELB ⁇ 2>);
- the first input terminal of the third NAND gate 4022 is connected to the inverting output terminal of the first-stage flip-flop 4010, the second input terminal of the third NAND gate 4022 is connected to the positive phase output terminal of the second-stage flip-flop 4011
- the output ends are connected, and the output end of the third NAND gate 4022 outputs the 3rd bit selection sub-signal (Addr_SELB ⁇ 3>).
- the third logic unit 402 is composed of three NAND gates, indicating that the valid state of the selection signal group (Addr_SELB ⁇ 3:1>) is low level valid. Specifically, when the output of the pulse counting unit 401 is 00, the first NAND gate 4020 outputs the first bit selection signal (Addr_SELB ⁇ 1>); when the output of the pulse counting unit 401 is 01, the second NAND gate 4021 outputs the second bit selection signal (Addr_SELB ⁇ 2>); when the output of the pulse counting unit 401 is 10, the third NAND gate 4022 outputs the third bit selection signal (Addr_SELB ⁇ 3>). In this way, different selection signals are used to determine which of the multiple weak address signals (Out Address) is output, so that the multiple weak address signals (Out Address) are refreshed in sequence.
- the fourth logic unit 403 uses an AND gate to achieve the reset of the pulse counting unit 401. That is, when the output of the pulse counting unit 401 is 11, the pulse counting unit 401 starts to reset and restarts the next round of counting.
- the selection signal group (Addr_SELB ⁇ X:1>) includes X-bit selection sub-signals
- the third logic unit 402 includes X NAND gates, where:
- Each NAND gate has m input terminals for receiving m target count signals or their inverted signals, and the output terminals of the X NAND gates correspond one-to-one to the X-bit selector signals; wherein the target count signals are the m count signals in the count signal group (Addr_MUX_CNT ⁇ Y:1>), and any two NAND gates do not have exactly the same inputs; wherein X is a positive integer, and m is an integer greater than or equal to 2.
- the number of NAND gates in the third logic unit 402 corresponds to the number of selection sub-signals.
- the input end of each NAND gate can be a completely different signal or a partially different signal.
- the output end of each NAND gate outputs a selection sub-signal to determine which weak address signal is to be refreshed.
- the control sub-unit 401 realizes the sequential refresh of the weak address signal (Out Address) through the counting signal group (Addr_MUX_CNT ⁇ Y:1>) and the selection signal group (Addr_SELB ⁇ X:1>).
- the number of weak address signals (Out Address) output based on each refresh command (REF AB CMD) is X;
- the selection subunit 41 includes X+1 cascaded selectors:
- the first input terminal of the first stage selector 410 receives the X-th weak address signal (Out Address X), the second input terminal of the first stage selector 410 receives the ground signal (VSS), and the control terminal of the first stage selector 410 receives the X-th selection sub-signal (Addr_SELB ⁇ X>);
- the first input end of the j-th level selector receives the X+1-j-th weak address signal (Out Address), the second input end of the j-th level selector is connected to the output end of the j-1-th level selector, and the control end of the j-th level selector receives the X+1-j-th selection sub-signal (Addr_SELB ⁇ X+1-j>); wherein j is an integer greater than or equal to 2 and less than or equal to X;
- the first input end of the X+1th level selector receives the row address signal (Normal REF Addr), the second input end of the X+1th level selector is connected to the output end of the Xth level selector, the control end of the X+1th level selector receives the refresh address selection signal (Addr Exchange Flag), and the output end of the X+1th level selector outputs the address signal to be refreshed (Refresh Address).
- the first input terminal of the first-level selector 410 receives the third weak address signal (Out Address 3), the second input terminal of the first-level selector 410 receives the ground signal (VSS), and the control terminal of the first-level selector 410 receives the third-bit selection sub-signal (Addr_SELB ⁇ 3>);
- the first input terminal of the second-level selector 411 receives the second weak address signal (Out Address 2), the second input terminal of the second-level selector 411 is connected to the output terminal of the first-level selector 410, and the control terminal of the second-level selector 411 receives the second-bit selection sub-signal (Addr_SELB ⁇ 2>);
- the first input terminal of the third-level selector 412 receives the first weak address signal (Out Address 1), the second input terminal of the third-level selector 412 is connected to the output terminal of the second-level selector 411, and the control terminal of the third-
- the selection subunit 41 outputs the weak address signal (Out Address) or the row address signal (Normal REF Addr) as the address signal to be refreshed (Refresh Address) based on the refresh address selection signal (Addr Exchange Flag) and the selection signal group (Addr_SELB ⁇ 3:1>). If the refresh address selection signal (Addr Exchange Flag) is at the first level (0), the 4th level selector 413 of the selection subunit 41 outputs the row address signal (Normal REF Addr) as the address signal to be refreshed (Refresh Address); if the refresh address selection signal (Addr Exchange Flag) is at the second level (1), the 4th level selector 413 of the selection subunit 41 outputs the weak address signal (Out Address) as the address signal to be refreshed (Refresh Address).
- the third-level selector 412 of the selection sub-unit 41 When the refresh address selection signal (Addr Exchange Flag) is at the second level and the first-bit selection sub-signal (Addr_SELB ⁇ 1>) is at a low level, the third-level selector 412 of the selection sub-unit 41 will output the first weak address signal (Out Address 1) as the address signal to be refreshed (Refresh Address); when the refresh address selection signal (Addr Exchange Flag) is at the second level and the second-bit selection sub-signal (Addr_SELB ⁇ 2>) is at a low level, the second-level selector 411 of the selection sub-unit 41 will output the second weak address signal (Out Address 2) as the address signal to be refreshed (Refresh Address); when the refresh address selection signal (Addr Exchange Flag) is at the second level and the third-bit selection sub-signal (Addr_SELB ⁇ 3>) is at a low level, the first-level selector 410 of the selection sub-unit 41 will output the third weak address signal (Out Address 3) as the address signal
- the selection subunit 41 composed of the cascaded selectors has a unique path to output an address signal as a refresh address signal (Refresh Address) each time, so as to realize the sequential refresh of the storage rows indicated by the address signal.
- the weak address The refresh frequency of the signal (Out Address) can improve the data integrity of the memory.
- the refresh circuit 10 further includes an ECS module 105 and a threshold module 106 , wherein:
- the ECS module 105 is configured to output a current ECS operation row address signal (Row Address) and a second count value (EpRC); wherein the second count value (EpRC) refers to the number of error bits of the storage row corresponding to the current ECS operation row address signal (Row Address);
- the threshold module 106 is configured to receive the second count value (EpRC), and output a valid storage flag signal (Bigger_Flag) when the second count value (EpRC) is greater than a third threshold; and output an invalid storage flag signal (Bigger_Flag) when the second count value (EpRC) is less than or equal to the third threshold;
- the weak address generator 103 is also configured to receive a storage flag signal (Bigger_Flag) and a current ECS operation row address signal (Row Address), and when the storage flag signal (Bigger_Flag) is valid, store the current ECS operation row address signal (Row Address) as a weak address signal (Out Address).
- Bigger_Flag storage flag signal
- Row Address current ECS operation row address signal
- ECS module 105 can be applied to related circuits that perform ECS functions in DRAM DDR5 chips. Its function is to detect weak storage rows in DRAM and store the address signals of the detected weak storage rows to obtain weak address signals (Out Address).
- the threshold module 106 if the error bit of the current operation row address signal (Row Address) is less than or equal to 6, the second count value (EpRC) will be masked by the memory, and the threshold module 106 outputs an invalid storage flag signal (Bigger_Flag), indicating that the current operation row address signal (Row Address) is not a weak address signal (Out Address), and the weak address generator 103 will not store the current ECS operation row address signal (Row Address); if the error bit of the current ECS operation row address signal (Row Address) is greater than 6, the threshold module 106 outputs a valid storage flag signal (Bigger_Flag), indicating that the current ECS operation row address signal (Row Address) is a weak address signal (Out Address), and the weak address generator 103 will store the current ECS operation row address signal (Row Address), and so on.
- Bigger_Flag valid storage flag signal
- the ECS module 105 and the threshold module 106 will continue to output the same row address and a valid storage flag signal (Bigger_Flag) until the row is changed. Therefore, the weak address generator 103 only needs to save the same row address once.
- the threshold module 106 is also configured to receive a threshold setting signal (TM/Fuse Thresholding Setting) and determine a third threshold based on the threshold setting signal (TM/Fuse Thresholding Setting).
- TM/Fuse Thresholding Setting a threshold setting signal
- TM/Fuse Thresholding Setting determines a third threshold based on the threshold setting signal
- the threshold setting signal (TM/Fuse Thresholding Setting) is different, and the corresponding third threshold is also different.
- the threshold can be set according to the specific type of memory to reduce the error rate of the memory and improve the performance of the memory.
- FIG16 a schematic flow chart of a refresh method provided by an embodiment of the present disclosure is shown. As shown in FIG16, the method includes:
- the method further comprises:
- the first count value is reset.
- the refresh address selection signal generated by the refresh command counting module is at the first level, and the memory performs a refresh operation on all row address signals; when the first count value is equal to the first threshold value, the refresh command counting module generates a refresh address selection signal at the second level, indicating that it is time to start refreshing multiple weak address signals in the memory; when the first count value reaches the second threshold value from the first threshold value, it means that the memory has refreshed multiple weak address signals. At this time, the first count value will be reset, indicating that the refresh command counting module will start the next round of counting. In this way, the number of refreshes for weak address signals can be increased in normal refresh operations.
- Fig. 17 shows a schematic diagram of the composition structure of a memory 60 provided by the embodiment of the present disclosure.
- the memory 60 may include the refresh circuit 10 described in any one of the above embodiments.
- the memory 60 may include DRAM.
- the embodiment of the present disclosure improves the refresh frequency of weak cells in DDR5, counts external refresh commands through a refresh command counting module, and takes out a specific number of refresh command signals as refresh address selection signals; before the refresh command signal is less than a specific number (the refresh address selection signal is at the first level), the refresh command counting module will refresh the row address signals output sequentially by the refresh address generator; when the refresh command signal is equal to or exceeds a specific number (the refresh address selection signal is at the second level), the refresh command counting module will refresh multiple weak address signals output sequentially by the weak address generator.
- the refresh of the weak address signal can be inserted into the normal refresh operation, and the refresh frequency of the weak address signal can be increased, thereby ensuring the data integrity of the memory.
- DRAM for DRAM, it can not only comply with memory specifications such as DDR, DDR2, DDR3, DDR4, DDR5, DDR6, etc., but also comply with memory specifications such as LPDDR, LPDDR2, LPDDR3, LPDDR4, LPDDR5, LPDDR6, etc., without any limitation here.
- the memory 60 includes the refresh circuit 10 described in the above embodiment, so that the refresh frequency of the weak storage row can be increased, thereby improving the performance of the memory.
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
Abstract
Description
相关申请的交叉引用CROSS-REFERENCE TO RELATED APPLICATIONS
本公开要求在2023年01月09日提交中国专利局、申请号为202310026121.2、申请名称为“一种刷新电路、方法及存储器”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。This disclosure claims the priority of the Chinese patent application filed with the China Patent Office on January 9, 2023, with application number 202310026121.2 and application name “A refresh circuit, method and memory”, all contents of which are incorporated by reference in this disclosure.
本公开涉及但不限于一种刷新电路、方法及存储器。The present disclosure relates to, but is not limited to, a refresh circuit, a refresh method, and a memory.
动态随机存取存储器(Dynamic Random Access Memory,DRAM)存在错误检查与纠正(Error Check and Correct,ECC)模式与错误检查与清除ECS(Error Check and Scrub,ECS)模式。其中,ECC模式可以对DRAM内失效的单比特位进行自动纠错,ECS模式可以周期性检查和修正数据。目前,由于DRAM体积的逐渐缩减,DRAM中的数据失效现象迅速增加,影响了存储器的稳定性。Dynamic Random Access Memory (DRAM) has Error Check and Correct (ECC) mode and Error Check and Scrub (ECS) mode. Among them, the ECC mode can automatically correct the single bit of failure in DRAM, and the ECS mode can periodically check and correct data. At present, due to the gradual reduction in the size of DRAM, the data failure phenomenon in DRAM has increased rapidly, affecting the stability of the memory.
发明内容Summary of the invention
本公开提供了一种刷新电路、方法及存储器。The present disclosure provides a refresh circuit, method and memory.
本公开的技术方案是这样实现的:The technical solution of the present disclosure is achieved as follows:
第一方面,本公开实施例提供了一种刷新电路,包括:In a first aspect, an embodiment of the present disclosure provides a refresh circuit, including:
刷新命令计数模块,配置为对刷新命令进行计数产生第一计数值;若所述第一计数值小于第一阈值,则输出处于第一电平的刷新地址选择信号;若所述第一计数值大于等于所述第一阈值,则输出处于第二电平的所述刷新地址选择信号;A refresh command counting module, configured to count refresh commands to generate a first count value; if the first count value is less than a first threshold, output a refresh address selection signal at a first level; if the first count value is greater than or equal to the first threshold, output the refresh address selection signal at a second level;
刷新地址发生器,配置为输出行地址信号,并基于刷新操作更新所述行地址信号;a refresh address generator configured to output a row address signal and update the row address signal based on a refresh operation;
弱地址发生器,与所述刷新命令计数模块连接,配置为接收所述刷新地址选择信号,并在所述刷新地址选择信号为第二电平时,基于每个所述刷新命令输出多个弱地址信号;其中,所述弱地址信号是在执行错误检查与清除(ECS)操作中记录的行地址信息;a weak address generator connected to the refresh command counting module, configured to receive the refresh address selection signal, and output a plurality of weak address signals based on each refresh command when the refresh address selection signal is at a second level; wherein the weak address signal is row address information recorded in performing an error check and clear (ECS) operation;
刷新模块,与所述刷新命令计数模块、所述刷新地址发生器和所述弱地址发生器连接,配置为在接收到的所述刷新地址选择信号为第一电平时,响应于接收到的所述刷新命令信号依次对所述行地址信号对应的存储行执行刷新操作;或者,在接收到的所述刷新地址选择信号为第二电平时,响应于接收到的所述刷新命令信号依次对多个所述弱地址信号对应的存储行执行刷新操作。A refresh module is connected to the refresh command counting module, the refresh address generator and the weak address generator, and is configured to, when the received refresh address selection signal is at a first level, sequentially perform a refresh operation on the storage rows corresponding to the row address signal in response to the received refresh command signal; or, when the received refresh address selection signal is at a second level, sequentially perform a refresh operation on the storage rows corresponding to the multiple weak address signals in response to the received refresh command signal.
在一些实施例中,所述刷新命令计数模块,具体配置为接收所述刷新命令信号;每接收到一个所述刷新命令信号时,对所述第一计数值进行加一处理;In some embodiments, the refresh command counting module is specifically configured to receive the refresh command signal; each time a refresh command signal is received, the first count value is incremented by one;
在所述第一计数值达到第二阈值时,对所述第一计数值进行复位处理;其中,所述第二阈值大于所述第一阈值。When the first count value reaches a second threshold, the first count value is reset; wherein the second threshold is greater than the first threshold.
在一些实施例中,所述刷新模块,还配置为输出刷新时钟信号;其中,在每次刷新操作时,所述刷新时钟信号产生一个刷新脉冲;In some embodiments, the refresh module is further configured to output a refresh clock signal; wherein, during each refresh operation, the refresh clock signal generates a refresh pulse;
所述刷新地址发生器,还配置为接收所述刷新时钟信号;并根据所述刷新时钟信号上的每一个刷新脉冲依次更新并输出所述行地址信号。The refresh address generator is further configured to receive the refresh clock signal; and to update and output the row address signal in sequence according to each refresh pulse on the refresh clock signal.
在一些实施例中,所述刷新地址发生器,还配置为接收所述刷新地址选择信号,在所述刷新地址选择信号处于第一电平时,根据所述刷新时钟信号上的每一个刷新脉冲依次更新并输出所述行地址信号,以及在所述刷新地址选择信号处于第二电平时,屏蔽所述刷新时钟信号。In some embodiments, the refresh address generator is further configured to receive the refresh address selection signal, and when the refresh address selection signal is at a first level, to sequentially update and output the row address signal according to each refresh pulse on the refresh clock signal, and when the refresh address selection signal is at a second level, to shield the refresh clock signal.
在一些实施例中,所述第一计数值包括M位子信号,且所述第一阈值为2(N-1);In some embodiments, the first count value includes M-bit sub-signals, and the first threshold is 2 (N-1) ;
所述刷新命令计数模块包括M个依次级联的触发器,每一级所述触发器的输入端均与其自身的反相输出端连接,第i级所述触发器的正相端输出端用于输出所述第一计数值的第i位子信号,第1级所述触 发器的时钟端用于接收所述刷新命令信号,第i+1级所述触发器的时钟端与第i级所述触发器的反相输出端连接;The refresh command counting module includes M triggers cascaded in sequence, the input end of each level of the trigger is connected to its own inverting output end, the positive output end of the i-th level of the trigger is used to output the i-th bit sub-signal of the first count value, and the first level of the trigger is connected to the positive output end of the trigger. The clock end of the trigger is used to receive the refresh command signal, and the clock end of the trigger of the i+1th level is connected to the inverting output end of the trigger of the ith level;
其中,所述第一计数值的第N位子信号输出为所述刷新地址选择信号,M为大于1的整数,i为大于等于1且小于M的整数,N为大于1且小于等于M的整数。Among them, the Nth bit sub-signal output of the first count value is the refresh address selection signal, M is an integer greater than 1, i is an integer greater than or equal to 1 and less than M, and N is an integer greater than 1 and less than or equal to M.
在一些实施例中,所述第二阈值为2(L-1)+2(N-1),L为小于等于N的正整数;In some embodiments, the second threshold is 2 (L-1) +2 (N-1) , where L is a positive integer less than or equal to N;
所述刷新命令计数模块还包括第一与门,所述第一与门的第一输入端与第N个所述触发器的正相输出端连接,所述第一与门的第二输入端与第L个所述触发器的正相输出端连接,所述第一与门的输出端与所有所述触发器的复位端连接。The refresh command counting module also includes a first AND gate, a first input end of the first AND gate is connected to the positive phase output end of the Nth trigger, a second input end of the first AND gate is connected to the positive phase output end of the Lth trigger, and an output end of the first AND gate is connected to the reset ends of all the triggers.
在一些实施例中,所述弱地址发生器包括第一逻辑单元和先入先出寄存器,且所述先入先出寄存器存储有若干个所述弱地址信号,其中:In some embodiments, the weak address generator includes a first logic unit and a first-in first-out register, and the first-in first-out register stores a plurality of the weak address signals, wherein:
所述第一逻辑单元,配置为接收所述刷新命令信号和所述刷新地址选择信号,对所述刷新命令信号和所述刷新地址选择信号进行逻辑处理,输出弱地址时钟信号;其中,在所述刷新地址选择信号处于第二电平时,每接收到一个所述刷新命令信号,在所述弱地址时钟信号上产生一个脉冲;The first logic unit is configured to receive the refresh command signal and the refresh address selection signal, perform logic processing on the refresh command signal and the refresh address selection signal, and output a weak address clock signal; wherein, when the refresh address selection signal is at the second level, each time a refresh command signal is received, a pulse is generated on the weak address clock signal;
所述先入先出寄存器,配置为接收所述弱地址时钟信号,并根据所述弱地址时钟信号上的每一个脉冲,输出多个所述弱地址信号。The first-in first-out register is configured to receive the weak address clock signal and output a plurality of the weak address signals according to each pulse of the weak address clock signal.
在一些实施例中,所述弱地址信号是指ECS模式中错误比特位大于第三阈值的存储行;In some embodiments, the weak address signal refers to a storage row having an error bit greater than a third threshold in the ECS mode;
所述弱地址发生器,还配置为接收当前ECS操作行地址信号和对应的存储标志信号,在所述存储标志信号有效时,将所述当前ECS操作行地址信号存储为所述弱地址信号;其中,所述存储标志信号指示所述当前ECS操作行地址信号对应的存储行的错误比特位是否大于第三阈值。The weak address generator is further configured to receive a current ECS operation row address signal and a corresponding storage flag signal, and when the storage flag signal is valid, store the current ECS operation row address signal as the weak address signal; wherein the storage flag signal indicates whether an error bit of the storage row corresponding to the current ECS operation row address signal is greater than a third threshold.
在一些实施例中,所述弱地址发生器还包括锁存器、地址比较器和第二逻辑单元,其中:In some embodiments, the weak address generator further includes a latch, an address comparator, and a second logic unit, wherein:
所述锁存器,配置为锁存上一次存储的所述弱地址信号;The latch is configured to latch the weak address signal stored last time;
所述地址比较器,配置为接收所述当前ECS操作行地址信号和上一次存储的所述弱地址信号;在所述当前ECS操作行地址信号和上一次存储的所述弱地址信号不同时,输出有效的更新标志信号;The address comparator is configured to receive the current ECS operation row address signal and the weak address signal stored last time; when the current ECS operation row address signal and the weak address signal stored last time are different, output a valid update flag signal;
所述第二逻辑单元,配置为接收所述存储标志信号和所述更新标志信号;在所述存储标志信号和所述更新标志信号均有效时,输出有效的加载时钟信号;The second logic unit is configured to receive the storage flag signal and the update flag signal; when both the storage flag signal and the update flag signal are valid, output a valid load clock signal;
所述锁存器,还配置为接收所述加载时钟信号和所述当前ECS操作行地址信号;在所述加载时钟信号有效时,将所述当前ECS操作行地址信号作为待存储的所述弱地址信号进行锁存;The latch is further configured to receive the loading clock signal and the current ECS operation row address signal; when the loading clock signal is valid, latch the current ECS operation row address signal as the weak address signal to be stored;
所述先入先出寄存器,还配置为接收延迟第一预设时间的所述加载时钟信号和待存储的所述弱地址信号,基于所述加载时钟信号将待存储的所述弱地址信号进行存储。The FIFO register is further configured to receive the loading clock signal delayed by a first preset time and the weak address signal to be stored, and store the weak address signal to be stored based on the loading clock signal.
在一些实施例中,所述第二逻辑单元包括第二与门和脉冲发生器,其中:In some embodiments, the second logic unit includes a second AND gate and a pulse generator, wherein:
所述第二与门的第一输入端接收所述存储标志信号,所述第二与门的第二输入端接收所述更新标志信号,所述第二与门的输出端与所述脉冲发生器的输入端连接,所述脉冲发生器的输出端用于输出所述加载时钟信号。The first input end of the second AND gate receives the storage flag signal, the second input end of the second AND gate receives the update flag signal, the output end of the second AND gate is connected to the input end of the pulse generator, and the output end of the pulse generator is used to output the loading clock signal.
在一些实施例中,所述脉冲发生器包括第一非门、延迟单元和第三与门,其中:In some embodiments, the pulse generator includes a first NOT gate, a delay unit and a third AND gate, wherein:
所述第一非门的输入端与所述第二与门的输出端连接,所述第一非门的输出端与所述延迟单元的输入端连接,所述延迟单元的输出端与所述第三与门的第二输入端连接,所述第三与门的第一输入端与所述第二与门的输出端连接,所述第三与门的输出端用于输出所述加载时钟信号。The input end of the first NOT gate is connected to the output end of the second AND gate, the output end of the first NOT gate is connected to the input end of the delay unit, the output end of the delay unit is connected to the second input end of the third AND gate, the first input end of the third AND gate is connected to the output end of the second AND gate, and the output end of the third AND gate is used to output the loading clock signal.
在一些实施例中,所述刷新模块包括控制子单元、选择子单元和刷新子单元,其中:In some embodiments, the refresh module includes a control subunit, a selection subunit and a refresh subunit, wherein:
所述控制子单元,配置为接收所述刷新地址选择信号;在刷新地址选择信号为第二电平时,基于所述刷新时钟信号,产生并输出选择信号组;所述选择子单元,配置为接收所述选择信号组、所述刷新地址选择信号、所述行地址信号和多个所述弱地址信号;在所述刷新地址选择信号为第一电平时,将所述行地址信号输出为待刷新地址信号;在所述刷新地址选择信号为第二电平时,基于所述选择信号组将多个所述弱地址信号依次输出为所述待刷新地址信号;The control subunit is configured to receive the refresh address selection signal; when the refresh address selection signal is at a second level, based on the refresh clock signal, generate and output a selection signal group; the selection subunit is configured to receive the selection signal group, the refresh address selection signal, the row address signal and a plurality of the weak address signals; when the refresh address selection signal is at a first level, output the row address signal as the address signal to be refreshed; when the refresh address selection signal is at a second level, based on the selection signal group, output the plurality of the weak address signals in sequence as the address signal to be refreshed;
所述刷新子单元,配置为接收所述刷新命令信号和所述待刷新地址信号,响应于所述刷新命令信号依次对所述待刷新地址信号指示的存储行执行一次刷新操作。The refresh subunit is configured to receive the refresh command signal and the address signal to be refreshed, and in response to the refresh command signal, sequentially perform a refresh operation on the storage rows indicated by the address signal to be refreshed.
在一些实施例中,所述控制子单元包括第四与门、脉冲计数单元、第三逻辑单元和第四逻辑单元,其中:In some embodiments, the control subunit includes a fourth AND gate, a pulse counting unit, a third logic unit and a fourth logic unit, wherein:
所述第四与门的输入端接收所述刷新地址选择信号和所述刷新时钟信号;所述第四与门的输出端与所述脉冲计数单元的输入端连接,所述脉冲计数单元的输出端输出计数信号组;The input end of the fourth AND gate receives the refresh address selection signal and the refresh clock signal; the output end of the fourth AND gate is connected to the input end of the pulse counting unit, and the output end of the pulse counting unit outputs a counting signal group;
所述第三逻辑单元的输入端对所述计数信号组进行第一译码处理以输出所述选择信号组;The input end of the third logic unit performs a first decoding process on the counting signal group to output the selection signal group;
所述第四逻辑单元的输入端对所述计数信号组进行第二译码处理以输出所述脉冲计数单元的复位信号。The input end of the fourth logic unit performs a second decoding process on the counting signal group to output a reset signal of the pulse counting unit.
在一些实施例中,所述选择信号组包括X位选择子信号,所述第三逻辑单元包括X个与非门,其中: In some embodiments, the selection signal group includes X-bit selection sub-signals, and the third logic unit includes X NAND gates, wherein:
每个所述与非门有m个输入端,用于接收m个目标计数信号或其反相信号,X个所述与非门的输出端与X位所述选择子信号一一对应;其中,所述目标计数信号为计数信号组中的m个计数信号,且任意两个所述与非门均不具有完全相同的输入;Each of the NAND gates has m input terminals for receiving m target counting signals or inverted signals thereof, and the output terminals of the X NAND gates correspond one-to-one to the X-bit selection sub-signals; wherein the target counting signals are the m counting signals in the counting signal group, and any two of the NAND gates do not have exactly the same inputs;
其中,X为正整数,m为大于等于2的整数。Wherein, X is a positive integer, and m is an integer greater than or equal to 2.
在一些实施例中,基于每个所述刷新命令输出的所述弱地址信号的数量为X;In some embodiments, the number of the weak address signals output based on each refresh command is X;
所述选择子单元包括X+1个级联的选择器:The selection subunit includes X+1 cascaded selectors:
第1级所述选择器的第一输入端接收第X个所述弱地址信号,第1级所述选择器的第二输入端接收地信号,第1级所述选择器的控制端接收第X位所述选择子信号;The first input terminal of the first-stage selector receives the X-th weak address signal, the second input terminal of the first-stage selector receives the ground signal, and the control terminal of the first-stage selector receives the X-th selection sub-signal;
第j级所述选择器的第一输入端接收第X+1-j个所述弱地址信号,第j级所述选择器的第二输入端与第j-1级所述选择器的输出端连接,第j级所述选择器的控制端接收第X+1-j位所述选择子信号;其中,j为大于等于2且小于等于X的整数;The first input end of the j-th selector receives the X+1-j-th weak address signal, the second input end of the j-th selector is connected to the output end of the j-1-th selector, and the control end of the j-th selector receives the X+1-j-th selection sub-signal; wherein j is an integer greater than or equal to 2 and less than or equal to X;
第X+1级所述选择器的第一输入端接收所述行地址信号,第X+1级所述选择器的第二输入端与第X级所述选择器的输出端连接,第X+1级所述选择器的控制端接收所述刷新地址选择信号,第X+1级所述选择器的输出端输出所述待刷新地址信号。The first input end of the selector of the X+1th level receives the row address signal, the second input end of the selector of the X+1th level is connected to the output end of the selector of the Xth level, the control end of the selector of the X+1th level receives the refresh address selection signal, and the output end of the selector of the X+1th level outputs the address signal to be refreshed.
在一些实施例中,在X=3的情况下,所述脉冲计数单元包括第1级触发器和第2级所述触发器,所述第三逻辑单元包括第一与非门、第二与非门和第三与非门,所述选择子单元包括第1级所述选择器、第2级所述选择器、第3级所述选择器和第4级所述选择器;其中,In some embodiments, when X=3, the pulse counting unit includes a first-level trigger and a second-level trigger, the third logic unit includes a first NAND gate, a second NAND gate, and a third NAND gate, and the selection subunit includes a first-level selector, a second-level selector, a third-level selector, and a fourth-level selector; wherein,
第1级所述触发器的时钟端与所述第四与门的输出端连接,第1级所述触发器的输入端与其自身的反相输出端连接,第1级所述触发器的正相端输出端用于输出所述计数信号组的第1位子信号;第2级所述触发器的时钟端与第1级所述触发器的反相输出端连接;第2级所述触发器的的输入端与其自身的反相输出端连接,第2级所述触发器的正相端输出端用于输出所述计数信号组的第2位子信号;The clock terminal of the trigger of the first level is connected to the output terminal of the fourth AND gate, the input terminal of the trigger of the first level is connected to its own inverting output terminal, and the positive phase output terminal of the trigger of the first level is used to output the first bit sub-signal of the counting signal group; the clock terminal of the trigger of the second level is connected to the inverting output terminal of the trigger of the first level; the input terminal of the trigger of the second level is connected to its own inverting output terminal, and the positive phase output terminal of the trigger of the second level is used to output the second bit sub-signal of the counting signal group;
所述第一与非门的第一输入端与第1级所述触发器的反相输出端连接,所述第一与非门的第二输入端与第2级所述触发器的反相输出端连接,所述第一与非门的输出端输出第1位所述选择子信号;所述第二与非门的第一输入端与第1级所述触发器的正相输出端连接,所述第二与非门的第二输入端与第2级所述触发器的反相输出端连接,所述第二与非门的输出端输出第2位所述选择子信号;所述第三与非门的第一输入端与第1级所述触发器的反相输出端连接,所述第三与非门的第二输入端与第2级所述触发器的正相输出端连接,所述第三与非门的输出端输出第3位所述选择子信号;The first input end of the first NAND gate is connected to the inverting output end of the first-stage trigger, the second input end of the first NAND gate is connected to the inverting output end of the second-stage trigger, and the output end of the first NAND gate outputs the first-bit selection sub-signal; the first input end of the second NAND gate is connected to the positive-phase output end of the first-stage trigger, the second input end of the second NAND gate is connected to the inverting output end of the second-stage trigger, and the output end of the second NAND gate outputs the second-bit selection sub-signal; the first input end of the third NAND gate is connected to the inverting output end of the first-stage trigger, the second input end of the third NAND gate is connected to the positive-phase output end of the second-stage trigger, and the output end of the third NAND gate outputs the third-bit selection sub-signal;
第1级所述选择器的第一输入端接收第3个所述弱地址信号,第1级所述选择器的第二输入端接收所述地信号,第1级所述选择器的控制端接收第3位所述选择子信号;第2级所述选择器的第一输入端接收第2个所述弱地址信号,第2级所述选择器的第二输入端与第1级所述选择器的输出端连接,第2级所述选择器的控制端接收第2位所述选择子信号;第3级所述选择器的第一输入端接收第1个所述弱地址信号,第3级所述选择器的第二输入端与第2级所述选择器的输出端连接,第3级所述选择器的控制端接收第1位所述选择子信号;第4级所述选择器的第一输入端接收所述行地址信号,第4级所述选择器的第二输入端与第3级所述选择器的输出端连接,第4级所述选择器的控制端接收所述刷新地址选择信号,第4级所述选择器的输出端输出所述待刷新地址信号。The first input end of the selector of the first level receives the third weak address signal, the second input end of the selector of the first level receives the ground signal, and the control end of the selector of the first level receives the third selection sub-signal; the first input end of the selector of the second level receives the second weak address signal, the second input end of the selector of the second level is connected to the output end of the selector of the first level, and the control end of the selector of the second level receives the second selection sub-signal; the first input end of the selector of the third level receives the first weak address signal, the second input end of the selector of the third level is connected to the output end of the selector of the second level, and the control end of the selector of the third level receives the first selection sub-signal; the first input end of the selector of the fourth level receives the row address signal, the second input end of the selector of the fourth level is connected to the output end of the selector of the third level, the control end of the selector of the fourth level receives the refresh address selection signal, and the output end of the selector of the fourth level outputs the address signal to be refreshed.
在一些实施例中,所述刷新电路还包括ECS模块和阈值模块,其中:In some embodiments, the refresh circuit further includes an ECS module and a threshold module, wherein:
所述ECS模块,配置为输出所述当前ECS操作行地址信号和第二计数值;其中,所述第二计数值是指所述当前ECS操作行地址信号对应的存储行的错误比特位的数量;The ECS module is configured to output the current ECS operation row address signal and a second count value; wherein the second count value refers to the number of error bits of the storage row corresponding to the current ECS operation row address signal;
所述阈值模块,配置为接收所述第二计数值,在所述第二计数值大于所述第三阈值时,输出有效的所述存储标志信号;在所述第二计数值小于等于所述第三阈值时,输出无效的所述存储标志信号;The threshold module is configured to receive the second count value, and output the valid storage flag signal when the second count value is greater than the third threshold value; and output the invalid storage flag signal when the second count value is less than or equal to the third threshold value;
所述弱地址发生器,还配置为接收所述存储标志信号和所述当前ECS操作行地址信号,在所述存储标志信号有效时,将所述当前ECS操作行地址信号存储为所述弱地址信号。The weak address generator is further configured to receive the storage flag signal and the current ECS operation row address signal, and store the current ECS operation row address signal as the weak address signal when the storage flag signal is valid.
在一些实施例中,所述阈值模块,还配置为接收阈值设置信号,基于所述阈值设置信号确定所述第三阈值。In some embodiments, the threshold module is further configured to receive a threshold setting signal, and determine the third threshold based on the threshold setting signal.
第二方面,本公开实施例提供了一种刷新方法,应用于如第一方面所述的刷新电路,所述方法包括:In a second aspect, an embodiment of the present disclosure provides a refresh method, which is applied to the refresh circuit as described in the first aspect, and the method includes:
在所述存储器每次接收到刷新命令时,对第一计数值进行加一处理;Each time the memory receives a refresh command, the first count value is incremented by one;
在所述第一计数值小于第一阈值时,按照自动刷新模式下的刷新顺序对下一存储行进行刷新操作;When the first count value is less than a first threshold, performing a refresh operation on the next storage row according to a refresh sequence in an automatic refresh mode;
在所述第一计数值大于等于第一阈值且小于第二阈值时,对弱存储行依次进行刷新操作;其中,所述弱存储行是指ECS模式中错误比特位大于第三阈值的存储行,且所述第二阈值大于所述第一阈值。When the first count value is greater than or equal to a first threshold and less than a second threshold, refresh operations are performed on weak storage rows in sequence; wherein the weak storage row refers to a storage row whose error bit is greater than a third threshold in the ECS mode, and the second threshold is greater than the first threshold.
在一些实施例中,所述方法还包括:在所述第一计数值等于所述第二阈值时,对所述第一计数值进行复位处理。In some embodiments, the method further includes: when the first count value is equal to the second threshold, resetting the first count value.
第三方面,本公开实施例提供了一种存储器,该存储器包括如第一方面所述的刷新电路。 In a third aspect, an embodiment of the present disclosure provides a memory, which includes the refresh circuit as described in the first aspect.
图1为本公开实施例提供的一种ECC模式的原理示意图;FIG1 is a schematic diagram showing the principle of an ECC mode provided by an embodiment of the present disclosure;
图2为本公开实施例提供的一种刷新电路的结构示意图一;FIG2 is a structural schematic diagram 1 of a refresh circuit provided by an embodiment of the present disclosure;
图3为本公开实施例提供的一种刷新电路的结构示意图二;FIG3 is a second structural diagram of a refresh circuit provided by an embodiment of the present disclosure;
图4为本公开实施例提供的一种刷新命令计数模块的结构示意图一;FIG4 is a structural schematic diagram 1 of a refresh command counting module provided by an embodiment of the present disclosure;
图5为本公开实施例提供的一种刷新命令计数模块的结构示意图二;FIG5 is a second structural diagram of a refresh command counting module provided by an embodiment of the present disclosure;
图6为本公开实施例提供的一种弱地址发生器的结构示意图一;FIG6 is a first structural diagram of a weak address generator provided by an embodiment of the present disclosure;
图7为本公开实施例提供的一种弱地址发生器的结构示意图二;FIG7 is a second structural diagram of a weak address generator provided by an embodiment of the present disclosure;
图8为本公开实施例提供的一种弱地址发生器的结构示意图三;FIG8 is a third structural diagram of a weak address generator provided by an embodiment of the present disclosure;
图9为本公开实施例提供的一种弱地址发生器的结构示意图四;FIG9 is a fourth structural diagram of a weak address generator provided by an embodiment of the present disclosure;
图10为本公开实施例提供的一种刷新模块的结构示意图一;FIG10 is a structural schematic diagram 1 of a refresh module provided in an embodiment of the present disclosure;
图11为本公开实施例提供的一种刷新模块的结构示意图二;FIG11 is a second structural diagram of a refresh module provided in an embodiment of the present disclosure;
图12为本公开实施例提供的一种刷新模块的结构示意图三;FIG12 is a third structural diagram of a refresh module provided in an embodiment of the present disclosure;
图13为本公开实施例提供的一种刷新模块的结构示意图四;FIG13 is a fourth structural diagram of a refresh module provided in an embodiment of the present disclosure;
图14为本公开实施例提供的一种刷新模块的结构示意图五;FIG14 is a fifth structural diagram of a refresh module provided in an embodiment of the present disclosure;
图15为本公开实施例提供的一种刷新电路的结构示意图三;FIG15 is a third structural diagram of a refresh circuit provided by an embodiment of the present disclosure;
图16为本公开实施例提供的一种刷新方法的流程示意图;FIG16 is a schematic flow chart of a refreshing method provided in an embodiment of the present disclosure;
图17为本公开实施例提供的一种存储器的组成结构示意图。FIG. 17 is a schematic diagram of the composition structure of a memory provided in an embodiment of the present disclosure.
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅仅用于解释相关申请,而非对该申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关申请相关的部分。The following will be combined with the drawings in the embodiments of the present disclosure to clearly and completely describe the technical solutions in the embodiments of the present disclosure. It is understood that the specific embodiments described herein are only used to explain the relevant application, rather than to limit the application. It should also be noted that, for the convenience of description, only the parts related to the relevant application are shown in the drawings.
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本公开实施例的目的,不是旨在限制本公开。Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which the present disclosure belongs. The terms used herein are only for the purpose of describing the embodiments of the present disclosure and are not intended to limit the present disclosure.
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.
需要指出,本公开实施例所涉及的术语“第一\第二\第三”仅是用于区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本公开实施例能够以除了在这里图示或描述的以外的顺序实施。It should be pointed out that the terms "first\second\third" involved in the embodiments of the present disclosure are only used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second\third" can be interchanged in a specific order or sequence where permitted, so that the embodiments of the present disclosure described here can be implemented in an order other than that illustrated or described here.
对本公开实施例进行进一步详细说明之前,先对本公开实施例中涉及的名词和术语进行说明,本公开实施例中涉及的名词和术语适用于如下的解释:Before further describing the embodiments of the present disclosure in detail, the nouns and terms involved in the embodiments of the present disclosure are described first. The nouns and terms involved in the embodiments of the present disclosure are subject to the following interpretations:
动态随机存取存储器(Dynamic Random Access Memory,DRAM);Dynamic Random Access Memory (DRAM);
同步动态随机存储器(Synchronous Dynamic Random Access Memory,SDRAM);Synchronous Dynamic Random Access Memory (SDRAM);
双倍速率(Double Data Rate,DDR);Double Data Rate (DDR);
低功率DDR(Low Power DDR,LPDDR);Low Power DDR (LPDDR);
第5代DDR(5th DDR,DDR5);5th generation DDR (5th DDR, DDR5);
错误检查与纠正(Error Check and Correct,ECC);Error Check and Correct (ECC);
错误检查与清除(Error Check and Scrub,ECS);Error Check and Scrub (ECS);
每行错误计数器(Error per Row Counter,EpRC)。Error per Row Counter (EpRC).
随着工艺的微缩,单比特位失效(Single-Bit Fail)的挑战变得越来越严峻。以DDR5DRAM为例,为了应对单比特位失效,引入了片上ECC(On-Die ECC)结构,使DRAM可以对失效的单比特位进行自动纠错。基于On-Die ECC,DDR5同时又引入了ECS操作,ECS操作至少会在24小时内对DRAM进行一次完整的错误检查与清除,其中包括对DRAM所有存储组(Bank Group,BG)、存储块(Bank,BA)、存储行(Row)和存储列(Column,Col)进行错误检查。ECS操作可以记录一次完整的ECS周期内数据失效次数最多的一行地址,并送入模式寄存器(Mode Register,MR)中,供存储器的控制器(Controller)读出。With the miniaturization of the process, the challenge of single-bit failure has become increasingly severe. Taking DDR5 DRAM as an example, in order to cope with single-bit failures, an on-chip ECC (On-Die ECC) structure is introduced, so that DRAM can automatically correct failed single bits. Based on On-Die ECC, DDR5 also introduces ECS operation. The ECS operation will perform a complete error check and clearing of DRAM at least once within 24 hours, including error checking of all DRAM storage groups (Bank Group, BG), storage blocks (Bank, BA), storage rows (Row) and storage columns (Column, Col). The ECS operation can record the address of a row with the most data failures in a complete ECS cycle, and send it to the mode register (Mode Register, MR) for the memory controller (Controller) to read.
ECS的工作过程如图1所示,ECS地址产生器(ECS Address Counters)给出检测对象的存储行地址,ECC纠错逻辑模块(ECC Correction Logic)检测到该存储行中的数据失效后,错误计数器(Error Counter,EC)和每行错误计数器(EpRC)的计数值加一,在读取该存储行中的所有码字(Code Word)后,比较模 块(Compare)将当前行错误计数与最大行错误计数(Previous High Error Count)进行比较,若当前行错误计数大于最大行错误计数,那么当前行错误计数和检测对象的存储行地址会替代最大行错误计数和最大行错误地址(Previous High Error Count Row/Bank Address)保存到MR中;如果当前行错误计数不大于最大行错误计数,那么最大行错误计数和最大行错误地址将会一直保存在MR中。特别的,在每一次行地址换行时都会重置(Reset)错误计数器。The working process of ECS is shown in Figure 1. The ECS address generator (ECS Address Counters) gives the storage row address of the detection object. After the ECC error correction logic module (ECC Correction Logic) detects that the data in the storage row is invalid, the count value of the error counter (EC) and the error counter per row (EpRC) is increased by one. After reading all the code words (Code Word) in the storage row, the comparison module The block (Compare) compares the current row error count with the maximum row error count (Previous High Error Count). If the current row error count is greater than the maximum row error count, the current row error count and the storage row address of the detection object will replace the maximum row error count and the maximum row error address (Previous High Error Count Row/Bank Address) and be saved in MR; if the current row error count is not greater than the maximum row error count, the maximum row error count and the maximum row error address will always be saved in MR. In particular, the error counter will be reset (Reset) every time the row address changes.
在DRAM完成一次完整的ECS操作后,最大行错误地址将会保存在模式寄存器MR<16:18>中,最大行错误计数将会保存在MR19中。同时MR记录的行/码字错误计数REC[5:0](Row/Word Code Error Count,REC)显示为在范围内的行/码字错误计数,行错误计数阈值(Row Error Threshold Count,RETC)可以掩盖小于设定阈值的码字错误计数,在DDR5中RETC的默认值是4。应理解,图1来自于固态技术协会行业标准文件,本领域技术人员可以参照SPEC了解其中涉及各名词及缩写的含义,且该部分内容不影响本公开实施例的理解,所以这里不再详述。After the DRAM completes a complete ECS operation, the maximum row error address will be saved in the mode register MR<16:18>, and the maximum row error count will be saved in MR19. At the same time, the row/code word error count REC[5:0] (Row/Word Code Error Count, REC) recorded by MR is displayed as a row/code word error count within the range, and the row error count threshold (Row Error Threshold Count, RETC) can mask the code word error count that is less than the set threshold. The default value of RETC in DDR5 is 4. It should be understood that Figure 1 is from the industry standard document of the Solid State Technology Association. Those skilled in the art can refer to SPEC to understand the meaning of the various terms and abbreviations involved therein, and this part of the content does not affect the understanding of the embodiments of the present disclosure, so it will not be described in detail here.
但是,DRAM中常用的ECC校验方法(汉明码)的局限是只能纠正失效的单比特位,如果存储器出现双比特位失效(Double-Bit Fail)或多比特位失效(Multi-Bit Fail),将会导致存储器读取数据错误。而ECS模式的检查周期为24小时,并且只记录失效比特位最多的行地址,ECS模式下检查到的其他存在多个错误的存储行并不会被记录,无法从根本上大幅改善单比特位失效的现象。However, the limitation of the ECC verification method (Hamming code) commonly used in DRAM is that it can only correct single-bit failures. If the memory has a double-bit failure (Double-Bit Fail) or a multi-bit failure (Multi-Bit Fail), it will cause the memory to read data errors. The ECS mode has a check cycle of 24 hours and only records the row address with the most failed bits. Other storage rows with multiple errors detected in the ECS mode will not be recorded, which cannot fundamentally improve the phenomenon of single-bit failures.
基于此,为了改善数据失效现象的发生,本公开实施例提供了一种刷新电路,该刷新电路基于正常的行地址信号或ECS操作检测出存在多个错误的存储行执行刷新操作,能够在正常的刷新操作中额外插入对弱地址信号对应的存储行的刷新操作,提高存储稳定性,改善数据失效现象。Based on this, in order to improve the occurrence of data failure, an embodiment of the present disclosure provides a refresh circuit, which performs a refresh operation based on a normal row address signal or ECS operation to detect a storage row with multiple errors, and can additionally insert a refresh operation for the storage row corresponding to the weak address signal in the normal refresh operation, thereby improving storage stability and improving data failure.
下面将结合附图对本公开各实施例进行详细说明。The embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.
本公开的一实施例中,参见图2,其示出了本公开实施例提供的一种刷新电路10的组成结构示意图。该刷新电路10包括:In one embodiment of the present disclosure, referring to FIG. 2 , a schematic diagram of the composition structure of a refresh circuit 10 provided in an embodiment of the present disclosure is shown. The refresh circuit 10 includes:
刷新命令计数模块101,配置为对刷新命令进行计数产生第一计数值;若第一计数值小于第一阈值,则输出处于第一电平的刷新地址选择信号;若第一计数值大于等于所述第一阈值,则输出处于第二电平的刷新地址选择信号;The refresh command counting module 101 is configured to count the refresh commands to generate a first count value; if the first count value is less than a first threshold, output a refresh address selection signal at a first level; if the first count value is greater than or equal to the first threshold, output a refresh address selection signal at a second level;
刷新地址发生器102,配置为输出行地址信号,并基于刷新操作更新行地址信号;A refresh address generator 102 configured to output a row address signal and update the row address signal based on a refresh operation;
弱地址发生器103,与刷新命令计数模块101连接,配置为接收刷新地址选择信号,并在刷新地址选择信号为第二电平时,基于每个刷新命令输出多个弱地址信号;其中,弱地址信号是在执行错误检查与清除(ECS)操作中记录的行地址信息;A weak address generator 103 is connected to the refresh command counting module 101 and is configured to receive a refresh address selection signal and output a plurality of weak address signals based on each refresh command when the refresh address selection signal is at a second level; wherein the weak address signal is row address information recorded in performing an error check and clear (ECS) operation;
刷新模块104,与刷新命令计数模块101、刷新地址发生器102和弱地址发生器103连接,配置为在接收到的刷新地址选择信号为第一电平时,响应于接收到的刷新命令信号依次对行地址信号对应的存储行执行刷新操作;或者,在接收到的刷新地址选择信号为第二电平时,响应于接收到的刷新命令信号依次对多个弱地址信号对应的存储行执行刷新操作。The refresh module 104 is connected to the refresh command counting module 101, the refresh address generator 102 and the weak address generator 103, and is configured to perform a refresh operation on the storage rows corresponding to the row address signal in sequence in response to the received refresh command signal when the received refresh address selection signal is at a first level; or to perform a refresh operation on the storage rows corresponding to multiple weak address signals in sequence in response to the received refresh command signal when the received refresh address selection signal is at a second level.
需要说明的是,本公开实施例的刷新电路10可以应用但不限于存储器,例如DRAM、SDRAM、DDR等。另外,在其他模拟电路/数字电路中,均可通过本公开实施例提供的刷新电路10改善存储稳定性。It should be noted that the refresh circuit 10 of the embodiment of the present disclosure can be applied to but not limited to memories, such as DRAM, SDRAM, DDR, etc. In addition, in other analog circuits/digital circuits, the refresh circuit 10 provided by the embodiment of the present disclosure can improve storage stability.
需要说明的是,由于DRAM的存储单元是利用电容存储电荷的原理来保存信息的,而电容会通过电阻逐渐放电,因此要间隔一定周期进行刷新操作。刷新模块104的主要功能就是对DRAM内存储的数据不断地进行读出和写入,相当于给电容重复充电,以使泄放的电荷得到补充,保证数据不丢失。It should be noted that since the storage unit of DRAM uses the principle of capacitor storing charge to store information, and the capacitor will gradually discharge through the resistor, the refresh operation must be performed at regular intervals. The main function of the refresh module 104 is to continuously read and write the data stored in the DRAM, which is equivalent to repeatedly charging the capacitor so that the discharged charge is replenished to ensure that the data is not lost.
需要说明的是,如果存储器件中的一些存储单元的数据保持时间不满足规定的参考时间,则被称之为“弱单元”(Weak Cell),上述的弱地址信号为ECS操作检测出存在多个错误的存储单元对应的地址信号。由于超高集成度需要将至少几千万个存储单元集成在一个芯片中,因此弱单元存在的概率也会增加。因此,提高对弱单元的刷新频率才能保证存储数据的完整性。It should be noted that if the data retention time of some storage cells in the storage device does not meet the specified reference time, they are called "weak cells". The above-mentioned weak address signal is the address signal corresponding to the storage cell with multiple errors detected by the ECS operation. Since ultra-high integration requires at least tens of millions of storage cells to be integrated into one chip, the probability of weak cells existing will also increase. Therefore, increasing the refresh frequency of weak cells can ensure the integrity of stored data.
需要说明的是,图2中的行地址信号、刷新地址选择信号、弱地址信号、刷新命令信号在之后的解释中分别用Normal REF Addr、Addr Exchange Flag、Out Address和REF AB CMD表示。It should be noted that the row address signal, refresh address selection signal, weak address signal, and refresh command signal in Figure 2 are respectively represented by Normal REF Addr, Address Exchange Flag, Out Address, and REF AB CMD in the subsequent explanation.
还需要说明的是,一个刷新命令可执行多次刷新操作,这里的多次可以为1,也可以为大于1的任意数值。刷新命令计数模块101的主要功能是统计外部刷新命令的次数并产生第一计数值,基于第一计数值和第一阈值之间的关系输出刷新地址选择信号(Addr Exchange Flag),刷新模块104根据刷新地址选择信号(Addr Exchange Flag)的电平状态执行对行地址信号(Normal REF Addr)对应存储行的刷新或者对弱地址信号(Out Address)对应存储行的刷新操作。It should also be noted that a refresh command can perform multiple refresh operations, where the number of times can be 1 or any value greater than 1. The main function of the refresh command counting module 101 is to count the number of external refresh commands and generate a first count value, and output a refresh address selection signal (Addr Exchange Flag) based on the relationship between the first count value and the first threshold. The refresh module 104 performs a refresh operation on the storage row corresponding to the row address signal (Normal REF Addr) or a refresh operation on the storage row corresponding to the weak address signal (Out Address) according to the level state of the refresh address selection signal (Addr Exchange Flag).
示例性地,对于刷新地址选择信号(Addr Exchange Flag)来说,第一电平是指的电平状态为低(0),第二电平是指的电平状态为高(1)。具体来说,当刷新地址选择信号(Addr Exchange Flag)为0时,刷新模块104执行对行地址信号(Normal REF Addr)对应存储行的刷新;当刷新地址选择信号(Addr Exchange Flag)为1时,刷新模块104执行对弱地址发生器103产生的弱地址信号(Out Address)对应存储行的刷新。也就是说,通过控制刷新地址选择信号(Addr Exchange Flag)的电平状态确定对行地址信号(Normal REF Addr)还是弱地址信号(Out Address)进行刷新。应理解,不同电路中对于不同信号电平状态的要求不是一成不变的,刷新地址选择信号(Addr Exchange Flag)也可以设为第一电平为高电平(1),第二电平为低电平(0),设计人员可以根据电路的内部结构以及该信号在具体电路中的功能确定。Exemplarily, for the refresh address selection signal (Addr Exchange Flag), the first level refers to a low level state (0), and the second level refers to a high level state (1). Specifically, when the refresh address selection signal (Addr Exchange Flag) is 0, the refresh module 104 performs a refresh on the storage row corresponding to the row address signal (Normal REF Addr); when the refresh address selection signal (Addr Exchange Flag) is 1, the refresh module 104 performs a refresh on the storage row corresponding to the weak address signal (Out Address) generated by the weak address generator 103. In other words, the refresh address selection signal (Addr Exchange Flag) is controlled by the level state to determine the row address signal (Normal REF Addr). REF Addr) or weak address signal (Out Address) for refreshing. It should be understood that the requirements for different signal level states in different circuits are not fixed. The refresh address selection signal (Addr Exchange Flag) can also be set to a high level (1) as the first level and a low level (0) as the second level. Designers can determine this based on the internal structure of the circuit and the function of the signal in the specific circuit.
这样,刷新模块104会基于刷新地址选择信号(Addr Exchange Flag)的电平状态选择将行地址信号(Normal REF Addr)或弱地址信号(Out Address)对应的存储行作为下一刷新对象。从而,在正常刷新机制中插入对弱单元/弱地址的刷新操作,避免弱地址信号对应的存储行失效,提高数据稳定性。In this way, the refresh module 104 will select the storage row corresponding to the row address signal (Normal REF Address) or the weak address signal (Out Address) as the next refresh object based on the level state of the refresh address selection signal (Addr Exchange Flag). Thus, the refresh operation of the weak cell/weak address is inserted into the normal refresh mechanism to avoid the failure of the storage row corresponding to the weak address signal and improve the data stability.
在一些实施例中,刷新命令计数模块101,具体配置为接收刷新命令信号(REF AB CMD);每接收到一个刷新命令信号(REF AB CMD)时,对第一计数值进行加一处理;In some embodiments, the refresh command counting module 101 is specifically configured to receive a refresh command signal (REF AB CMD); each time a refresh command signal (REF AB CMD) is received, the first count value is incremented by one;
在第一计数值达到第二阈值时,对第一计数值进行复位处理;其中,第二阈值大于第一阈值。When the first count value reaches a second threshold, the first count value is reset; wherein the second threshold is greater than the first threshold.
需要说明的是,刷新命令计数模块101对刷新命令信号(REF AB CMD)进行计数产生第一计数值,当第一计数值小于第一阈值,刷新地址选择信号(Addr Exchange Flag)处于第一电平,刷新模块104执行对行地址信号(Normal REF Addr)对应存储行的刷新;当第一计数值大于等于第一阈值小于第二阈值,刷新地址选择信号(Addr Exchange Flag)处于第二电平,刷新模块104执行对弱地址信号(Out Address)对应存储行的刷新;当第一计数值等于第二阈值,刷新模块104完成存储器中部分或者全部弱地址信号(Out Address)的刷新后,刷新命令计数模块101进行复位,此时的刷新地址选择信号(Addr Exchange Flag)恢复到第一电平,刷新命令计数模块101进行下一循环。也就是说,在刷新过程中,每对存储器中所有正常行地址信号(Normal REF Addr)对应的存储行进行遍历刷新后,插入对弱地址信号(Out Address)的刷新;此外,也可以在部分正常行地址信号(Normal REF Addr)对应的存储行进行遍历刷新后,插入对弱地址信号(Out Address)的刷新;以上两种情况下设置的第一阈值不同。It should be noted that the refresh command counting module 101 counts the refresh command signal (REF AB CMD) to generate a first count value. When the first count value is less than the first threshold, the refresh address selection signal (Addr Exchange Flag) is at a first level, and the refresh module 104 executes a refresh of the storage row corresponding to the row address signal (Normal REF Addr); when the first count value is greater than or equal to the first threshold and less than the second threshold, the refresh address selection signal (Addr Exchange Flag) is at a second level, and the refresh module 104 executes a refresh of the storage row corresponding to the weak address signal (Out Address); when the first count value is equal to the second threshold, after the refresh module 104 completes the refresh of part or all of the weak address signals (Out Address) in the memory, the refresh command counting module 101 is reset, and the refresh address selection signal (Addr Exchange Flag) at this time is restored to the first level, and the refresh command counting module 101 performs the next cycle. That is to say, during the refresh process, after each pair of storage rows corresponding to all normal row address signals (Normal REF Address) in the memory are traversed and refreshed, the refresh of the weak address signal (Out Address) is inserted; in addition, after the storage rows corresponding to some normal row address signals (Normal REF Address) are traversed and refreshed, the refresh of the weak address signal (Out Address) may be inserted; the first threshold value set in the above two cases is different.
需要说明的是,第三阈值和第一阈值是预先设置好的固定值,第一阈值和第三阈值与刷新命令计数模块101统计的刷新命令信号(REF AB CMD)的次数有关;而存储器中弱地址信号(Out Address)的数量并不确定,且与第一阈值和第二阈值无关,弱地址信号(Out Address)的数量与存储器的性能以及当前ECS测试所处的环境参数有关。It should be noted that the third threshold and the first threshold are pre-set fixed values, and the first threshold and the third threshold are related to the number of refresh command signals (REF AB CMD) counted by the refresh command counting module 101; while the number of weak address signals (Out Address) in the memory is uncertain and has nothing to do with the first threshold and the second threshold, and the number of weak address signals (Out Address) is related to the performance of the memory and the environmental parameters of the current ECS test.
具体来说,第二阈值和第一阈值之间的差值为弱地址发生器103依序输出至刷新模块104执行刷新操作的弱地址信号(Out Address)的数量,该数量与弱地址发生器103中存储的弱地址信号(Out Address)的数量可能存在不匹配的情况,第二阈值和第一阈值之间的差值可能大于弱地址信号(Out Address)的数量,也可能小于弱地址信号(Out Address)数量。因此,电路设计人员有必要根据实际情况修改第一阈值和第二阈值,以改善上述不匹配的情况,更好地提高对弱地址信号(Out Address)的刷新频率,保证存储器的稳定性。Specifically, the difference between the second threshold and the first threshold is the number of weak address signals (Out Address) sequentially output by the weak address generator 103 to the refresh module 104 to perform the refresh operation, which may not match the number of weak address signals (Out Address) stored in the weak address generator 103. The difference between the second threshold and the first threshold may be greater than the number of weak address signals (Out Address), or may be less than the number of weak address signals (Out Address). Therefore, it is necessary for circuit designers to modify the first threshold and the second threshold according to actual conditions to improve the above mismatch, better improve the refresh frequency of the weak address signal (Out Address), and ensure the stability of the memory.
在一些实施例中,参见图3,刷新模块104,还配置为输出刷新时钟信号(CBR_CLK);其中,在每次刷新操作后,刷新时钟信号(CBR_CLK)产生一个刷新脉冲;In some embodiments, referring to FIG. 3 , the refresh module 104 is further configured to output a refresh clock signal (CBR_CLK); wherein, after each refresh operation, the refresh clock signal (CBR_CLK) generates a refresh pulse;
刷新地址发生器102,还配置为接收刷新时钟信号(CBR_CLK);并根据刷新时钟信号(CBR_CLK)上的每一个刷新脉冲依次更新并输出行地址信号(Normal REF Addr)。The refresh address generator 102 is also configured to receive a refresh clock signal (CBR_CLK); and to update and output a row address signal (Normal REF Addr) in sequence according to each refresh pulse on the refresh clock signal (CBR_CLK).
需要说明的是,刷新时钟信号(CBR_CLK)上的刷新脉冲用于更新用于刷新的行地址信号(Normal REF Addr);在一些实施例中,可以在每次刷新操作前,在刷新时钟信号(CBR_CLK)产生一个刷新脉冲,依据刷新操作前产生的刷新脉冲更新并输出用于刷新的行地址信号(Normal REF Addr),当前刷新操作对更新后的行地址信号(Normal REF Addr)进行刷新;在另外一些实施例中,可以在每次刷新操作时或者每次刷新操作后,在刷新时钟信号(CBR_CLK)产生一个刷新脉冲,依据产生的刷新脉冲更新并输出用于刷新的行地址信号(Normal REF Addr),下一次刷新操作对更新后的行地址信号(Normal REF Addr)进行刷新;本公开以后者“在每次刷新操作时或者每次刷新操作后,在刷新时钟信号(CBR_CLK)产生一个刷新脉冲”为例进行说明。It should be noted that the refresh pulse on the refresh clock signal (CBR_CLK) is used to update the row address signal (Normal REF Addr) for refresh; in some embodiments, a refresh pulse can be generated on the refresh clock signal (CBR_CLK) before each refresh operation, and the row address signal (Normal REF Addr) for refresh is updated and output according to the refresh pulse generated before the refresh operation, and the current refresh operation refreshes the updated row address signal (Normal REF Addr); in other embodiments, a refresh pulse can be generated on the refresh clock signal (CBR_CLK) at each refresh operation or after each refresh operation, and the row address signal (Normal REF Addr) for refresh is updated and output according to the generated refresh pulse, and the next refresh operation refreshes the updated row address signal (Normal REF Addr); the present disclosure takes the latter "generating a refresh pulse on the refresh clock signal (CBR_CLK) at each refresh operation or after each refresh operation" as an example for explanation.
需要说明的是,如图3所示,当刷新地址选择信号(Addr Exchange Flag)处于第一电平时,刷新地址选择信号(Addr Exchange Flag)通过非门连接与门的第一输入端,与门的第二输入端接收刷新时钟信号(CBR_CLK),与门的输出端作为刷新地址发生器102的计数时钟,更新自动刷新的地址信息。It should be noted that, as shown in Figure 3, when the refresh address selection signal (Addr Exchange Flag) is at the first level, the refresh address selection signal (Addr Exchange Flag) is connected to the first input terminal of the AND gate through the NOT gate, the second input terminal of the AND gate receives the refresh clock signal (CBR_CLK), and the output terminal of the AND gate serves as the counting clock of the refresh address generator 102 to update the address information of the automatic refresh.
还需要说明的是,本公开实施例利用刷新地址发生器102统计存储器内部刷新操作的次数并产生行地址信号(Normal REF Addr),行地址信号(Normal REF Addr)指示自动刷新(Auto Refresh,AR)机制中的下一待刷新地址。刷新地址发生器102是自动刷新模式下,SDRAM内部一个用来自动的依次生成行地址的计数器。对于AR来说,由于刷新是针对一行中的所有存储体进行,所以无需列寻址,或者说列地址选择(Column Address Select,CAS)在行地址选择(Row Address Select,RAS)之前有效。所以,AR又称CBR(CAS Before RAS,列提前于行定位)式刷新。应理解,每次刷新操作都有内部的刷新命令,且每次刷新操作不只刷新一行,可同时刷新Bank的多行。另外,每个刷新命令可让存储器执行多次的刷新操作,这由每个DRAM产品设计的刷新电路决定。It should also be noted that the embodiment of the present disclosure utilizes the refresh address generator 102 to count the number of refresh operations inside the memory and generate a row address signal (Normal REF Addr), and the row address signal (Normal REF Addr) indicates the next address to be refreshed in the auto refresh (AR) mechanism. The refresh address generator 102 is a counter inside the SDRAM that automatically generates row addresses in sequence in the auto refresh mode. For AR, since the refresh is performed on all storage bodies in a row, there is no need for column addressing, or the column address selection (CAS) is valid before the row address selection (RAS). Therefore, AR is also called CBR (CAS Before RAS, column positioning in advance of row) refresh. It should be understood that each refresh operation has an internal refresh command, and each refresh operation not only refreshes one row, but can refresh multiple rows of the Bank at the same time. In addition, each refresh command allows the memory to perform multiple refresh operations, which is determined by the refresh circuit designed for each DRAM product.
在一些实施例中,如图3所示,刷新地址发生器102,还配置为接收刷新地址选择信号(Addr Exchange Flag),在刷新地址选择信号(Addr Exchange Flag)处于第一电平时,根据刷新时钟信号(CBR_CLK)上的每一个刷新脉冲依次更新并输出行地址信号(Normal REF Addr),以及在刷新地址选择信号(Addr Exchange Flag)处于第二电平时,屏蔽刷新时钟信号(CBR_CLK)。In some embodiments, as shown in FIG. 3 , the refresh address generator 102 is further configured to receive a refresh address selection signal (Addr Exchange Flag), when the refresh address selection signal (Addr Exchange Flag) is at a first level, the row address signal (Normal REF Addr) is updated and output in sequence according to each refresh pulse on the refresh clock signal (CBR_CLK), and when the refresh address selection signal (Addr Exchange Flag) is at a second level, the refresh clock signal (CBR_CLK) is shielded.
需要说明的是,当刷新地址选择信号(Addr Exchange Flag)处于第二电平时,弱地址发生器103输出弱地址信号(Out Address)。此时,刷新时钟信号(CBR_CLK)不会输入到刷新地址发生器102,则刷新地址发生器102停止计数,即自动刷新地址不发生改变。直到刷新地址选择信号(Addr Exchange Flag)恢复第一电平时,刷新地址发生器102对应于自动刷新的次序和刷新时钟信号的脉冲,输出行地址信号(Normal REF Addr)。It should be noted that when the refresh address selection signal (Addr Exchange Flag) is at the second level, the weak address generator 103 outputs a weak address signal (Out Address). At this time, the refresh clock signal (CBR_CLK) will not be input to the refresh address generator 102, and the refresh address generator 102 stops counting, that is, the automatic refresh address does not change. Until the refresh address selection signal (Addr Exchange Flag) returns to the first level, the refresh address generator 102 outputs a row address signal (Normal REF Addr) corresponding to the order of automatic refresh and the pulse of the refresh clock signal.
在一些实施例中,如图4所示,第一计数值包括M位子信号,且第一阈值为2(N-1);In some embodiments, as shown in FIG4 , the first count value includes M-bit sub-signals, and the first threshold is 2 (N-1) ;
刷新命令计数模块101包括M个依次级联的触发器,每一级触发器的输入端均与其自身的反相输出端连接,第i级触发器的正相端输出端用于输出第一计数值的第i位子信号,第1级触发器的时钟端用于接收刷新命令信号(REF AB CMD),第i+1级触发器的时钟端与第i级触发器的反相输出端连接;The refresh command counting module 101 includes M triggers cascaded in sequence, the input end of each stage of the trigger is connected to its own inverting output end, the positive phase output end of the i-th stage trigger is used to output the i-th bit sub-signal of the first count value, the clock end of the 1st stage trigger is used to receive the refresh command signal (REF AB CMD), and the clock end of the i+1th stage trigger is connected to the inverting output end of the i-th stage trigger;
其中,第一计数值的第N位子信号输出为刷新地址选择信号(Addr Exchange Flag),M为大于1的整数,i为大于等于1且小于M的整数,N为大于1且小于等于M的整数。Among them, the Nth sub-signal output of the first count value is a refresh address selection signal (Addr Exchange Flag), M is an integer greater than 1, i is an integer greater than or equal to 1 and less than M, and N is an integer greater than 1 and less than or equal to M.
需要说明的是,如图4所示,本公开实施例以12个D触发器构成异步二进制计数器20。在这里,N为12,当第一计数值达到第一阈值211=2048,刷新命令计数模块101将第一计数值的第12位子信号输出为处于第二电平的刷新地址选择信号(Addr Exchange Flag)。It should be noted that, as shown in Fig. 4, the embodiment of the present disclosure uses 12 D flip-flops to form an asynchronous binary counter 20. Here, N is 12, and when the first count value reaches the first threshold 2 11 =2048, the refresh command counting module 101 outputs the 12th bit sub-signal of the first count value as a refresh address selection signal (Addr Exchange Flag) at the second level.
具体地,每一D触发器的反相输出端(QB)与输入端(D)连接,且与下一级D触发器的时钟端(CLK)连接,每一D触发器的正相输出端(Q)作为计数端,复位端(RST)在接收到复位信号后进行复位,开始下一轮的计数。Specifically, the inverting output terminal (QB) of each D flip-flop is connected to the input terminal (D) and to the clock terminal (CLK) of the next-level D flip-flop. The positive output terminal (Q) of each D flip-flop serves as the counting terminal, and the reset terminal (RST) is reset after receiving the reset signal to start the next round of counting.
其中,第一级D触发器201的时钟端(CLK)用于接收刷新命令信号(REF AB CMD),第一级D触发器201具有第一计数端,用于输出REF AB_CNT<0>;第二级D触发器202具有第二计数端,用于输出REF AB_CNT<1>;第三级D触发器203具有第三计数端,用于输出REF AB_CNT<2>……第十一级D触发器211具有第十一计数端,用于输出REF AB_CNT<10>;第十二级D触发器212具有第十二计数端,用于输出REF AB_CNT<11>。Among them, the clock terminal (CLK) of the first-stage D flip-flop 201 is used to receive the refresh command signal (REF AB CMD), the first-stage D flip-flop 201 has a first counting terminal for outputting REF AB_CNT<0>; the second-stage D flip-flop 202 has a second counting terminal for outputting REF AB_CNT<1>; the third-stage D flip-flop 203 has a third counting terminal for outputting REF AB_CNT<2>... the eleventh-stage D flip-flop 211 has an eleventh counting terminal for outputting REF AB_CNT<10>; the twelfth-stage D flip-flop 212 has a twelfth counting terminal for outputting REF AB_CNT<11>.
需要说明的是,如图4所示,刷新命令计数模块101还包括第一缓冲器21和第一与门22。第一缓冲器21的输入端与第12级触发器的正相输出端连接,第一缓冲器21的输出端输出刷新地址选择信号(Addr Exchange Flag);第一与门22的输出端与12个触发器的复位端连接,第一与门22的第一输入端为第十二级D触发器212的计数端,且第一与门22的第二输入端为第七级D触发器207的计数端(即异步二进制计数器20的输出为100001000000)时,即第二阈值为2(7-1)+2(12-1)=2112时,异步二进制计数器20进行复位,这是由计数器的计数规则和DRAM的内部结构确定。It should be noted that, as shown in FIG4 , the refresh command counting module 101 further includes a first buffer 21 and a first AND gate 22. The input end of the first buffer 21 is connected to the positive phase output end of the 12th level flip-flop, and the output end of the first buffer 21 outputs a refresh address selection signal (Addr Exchange Flag); the output end of the first AND gate 22 is connected to the reset end of the 12 flip-flops, the first input end of the first AND gate 22 is the counting end of the 12th level D flip-flop 212, and the second input end of the first AND gate 22 is the counting end of the 7th level D flip-flop 207 (that is, the output of the asynchronous binary counter 20 is 100001000000), that is, when the second threshold is 2 (7-1) +2 (12-1) = 2112, the asynchronous binary counter 20 is reset, which is determined by the counting rule of the counter and the internal structure of the DRAM.
这样,当异步二进制计数器20复位时,第一计数值REF AB_CNT<11:0>=000000000000,每接收到一个刷新命令信号(REF AB CMD),计数值递增一次,即计数值REF AB_CNT按照000000000000、000000000001、000000000010、000000000011……111111111111的顺序进行递增;当异步二进制计数器20复位后,计数值回到000000000000的初始状态。In this way, when the asynchronous binary counter 20 is reset, the first count value REF AB_CNT<11:0>=000000000000, and each time a refresh command signal (REF AB CMD) is received, the count value increases once, that is, the count value REF AB_CNT increases in the order of 000000000000, 000000000001, 000000000010, 000000000011…111111111111; when the asynchronous binary counter 20 is reset, the count value returns to the initial state of 000000000000.
在一些实施例中,请参见图5,第二阈值为2(L-1)+2(N-1),L为小于等于N的正整数;In some embodiments, referring to FIG5 , the second threshold is 2 (L-1) +2 (N-1) , where L is a positive integer less than or equal to N;
刷新命令计数模块101还包括第一与门22,第一与门22的第一输入端与第N个触发器的正相输出端连接,第一与门22的第二输入端与第L个触发器的正相输出端连接,第一与门22的输出端与所有触发器的复位端连接。The refresh command counting module 101 also includes a first AND gate 22, a first input terminal of the first AND gate 22 is connected to the positive phase output terminal of the Nth trigger, a second input terminal of the first AND gate 22 is connected to the positive phase output terminal of the Lth trigger, and an output terminal of the first AND gate 22 is connected to the reset terminals of all triggers.
需要说明的是,如图5所示,刷新命令计数模块101还包括多路选择器23,多路选择器23的输入端与第N至第M个触发器的正相输出端连接,多路选择器23基于选择控制信号(Choose Control))输出刷新地址选择信号(Addr Exchange Flag)。通过多路选择器23可以对第一阈值和第二阈值进行调整。It should be noted that, as shown in FIG5 , the refresh command counting module 101 further includes a multiplexer 23, the input end of the multiplexer 23 is connected to the positive phase output end of the Nth to Mth triggers, and the multiplexer 23 outputs a refresh address selection signal (Addr Exchange Flag) based on a selection control signal (Choose Control). The first threshold and the second threshold can be adjusted by the multiplexer 23.
具体地,多路选择器23可以选择作为刷新地址选择信号(Addr Exchange Flag)输出的第一计数值的数据位,即选择输出刷新地址选择信号(Addr Exchange Flag)时需要满足的第一计数值(第一阈值)。第一与门22的第一输入端可以通过多路选择器的选择控制信号(Choose Control)将第一计数值的的第N+1位作为刷新地址选择信号(Addr Exchange Flag)进行输出,或者将第一计数值的第N+2位作为刷新地址选择信号(Addr Exchange Flag)进行输出……即第一阈值可以为2N/2(N+1)/2(N+2)…/2(M-1),这样,第一计数值的第(N+1)/(N+2)……/M位可通过选择控制信号(Choose Control)选择将哪一位子信号经由多路选择器23输出为刷新地址选择信号(Addr Exchange Flag)以调整第一阈值。因此,通过调整刷新地址选择信号(Addr Exchange Flag)从第一电平切换至第二电平的时间间隔,可以控制对弱地址信号(Out Address)的刷新频率。应理解,选择控制信号(Choose Control)有默认的初始值,也可以在测试模式下通过模式寄存器的参数进行修改。Specifically, the multiplexer 23 can select the data bit of the first count value output as the refresh address selection signal (Addr Exchange Flag), that is, select the first count value (first threshold) that needs to be satisfied when outputting the refresh address selection signal (Addr Exchange Flag). The first input end of the first AND gate 22 can output the N+1th bit of the first count value as the refresh address selection signal (Addr Exchange Flag) through the selection control signal (Choose Control) of the multiplexer, or output the N+2th bit of the first count value as the refresh address selection signal (Addr Exchange Flag)... That is, the first threshold can be 2N /2 (N+1) /2 (N+2) .../2 (M-1) , so that the (N+1)/(N+2).../Mth bit of the first count value can select which bit sub-signal to output as the refresh address selection signal (Addr Exchange Flag) via the multiplexer 23 through the selection control signal (Choose Control) to adjust the first threshold. Therefore, by adjusting the time interval of the refresh address selection signal (Addr Exchange Flag) switching from the first level to the second level, the refresh frequency of the weak address signal (Out Address) can be controlled. It should be understood that the select control signal (Choose Control) has a default initial value and can also be modified through the parameters of the mode register in the test mode.
同理,通过多路选择器也可选择作为复位标志信号输出的第一计数值的数据位,即选择输出复位标志 信号时需要满足的第一计数值(第二阈值)。第一与门的第二输入端(REFAB CNT<L-1>)也可以通过多路选择器的选择控制信号(Choose Control)进行选择输出以控制第二阈值。多路选择器可以将第一计数值的第L+1位作为复位标志信号的一个输入,或者将第一计数值的第L+2位作为复位标志信号的一个输入……即第二阈值可以为(2(M-1)+2L)/(2(M-1)+2(L+1))/(2(M-1)+2(L+2))…这样,第一计数值的第(L+1)/(L+2)…位可通过多路选择器的选择控制信号(Choose Control)选择将哪一位子信号作为复位标志信号的另外一个输入的数据位进行输出以控制第二阈值。这样,可以使计数器满足不同计数要求的电路,提供了更多实际应用的可能性。Similarly, the data bit of the first count value can also be selected as the reset flag signal output through the multiplexer, that is, the reset flag signal is selected to be output The first count value (second threshold) that needs to be met when the signal is reset. The second input terminal (REFAB CNT<L-1>) of the first AND gate can also be selected and output by the selection control signal (Choose Control) of the multiplexer to control the second threshold. The multiplexer can use the L+1th bit of the first count value as an input of the reset flag signal, or use the L+2th bit of the first count value as an input of the reset flag signal... That is, the second threshold can be (2 (M-1) +2 L )/(2 (M-1) +2 (L+1) )/(2 (M-1) +2 (L+2) )... In this way, the (L+1)/(L+2)... bit of the first count value can be selected by the selection control signal (Choose Control) of the multiplexer to output which bit of the sub-signal as another input data bit of the reset flag signal to control the second threshold. In this way, the counter can meet the circuits with different counting requirements, providing more practical application possibilities.
在一些实施例中,如图6所示,弱地址发生器103包括第一逻辑单元30和先入先出寄存器(First In First Out Register,FIFO Register)31,且先入先出寄存器31存储有若干个弱地址信号(Out Address),其中:In some embodiments, as shown in FIG6 , the weak address generator 103 includes a first logic unit 30 and a first-in first-out register (FIFO Register) 31, and the first-in first-out register 31 stores a plurality of weak address signals (Out Address), wherein:
第一逻辑单元30,配置为接收刷新命令信号(REF AB CMD)和刷新地址选择信号(Addr Exchange Flag),对刷新命令信号(REF AB CMD)和刷新地址选择信号(Addr Exchange Flag)进行逻辑处理,输出弱地址时钟信号(Out_CLK);其中,在刷新地址选择信号(Addr Exchange Flag)处于第二电平时,每接收到一个刷新命令信号(REF AB CMD),在弱地址时钟信号(Out_CLK)上产生一个脉冲;The first logic unit 30 is configured to receive a refresh command signal (REF AB CMD) and a refresh address selection signal (Addr Exchange Flag), perform logic processing on the refresh command signal (REF AB CMD) and the refresh address selection signal (Addr Exchange Flag), and output a weak address clock signal (Out_CLK); wherein, when the refresh address selection signal (Addr Exchange Flag) is at a second level, each time a refresh command signal (REF AB CMD) is received, a pulse is generated on the weak address clock signal (Out_CLK);
先入先出寄存器31,配置为接收弱地址时钟信号(Out_CLK),并根据弱地址时钟信号(Out_CLK)上的每一个脉冲,输出多个弱地址信号(Out Address)。The first-in first-out register 31 is configured to receive a weak address clock signal (Out_CLK) and output multiple weak address signals (Out Address) according to each pulse on the weak address clock signal (Out_CLK).
需要说明的是,存储器中可能存在多个弱单元,因此弱地址信号(Out Address)的数量可以为多个。这样,当弱地址时钟信号(Out Address)产生脉冲时,就可以将先入先出寄存器31中的多个弱地址信号(Out Address)进行依次输出。It should be noted that there may be multiple weak units in the memory, so the number of weak address signals (Out Address) can be multiple. In this way, when the weak address clock signal (Out Address) generates a pulse, the multiple weak address signals (Out Address) in the first-in first-out register 31 can be output in sequence.
需要说明的是,如图6所示,本公开实施例以第一逻辑单元是与门为例进行说明。第一逻辑单元30的主要功能是对刷新命令信号(REF AB CMD)和刷新地址选择信号(Addr Exchange Flag)进行逻辑与处理以生成弱地址时钟信号(Out_CLK)。另外,也可以通过与非门、或非门或者异或门实现弱地址时钟信号(Out_CLK)的输出。其中,与非门、或非门这两种门电路可以实现其他所有门电路的功能。具体的,若用与非门实现与门的功能,则将一个与非门的两个输入端连接在一起,然后在其输入端连接一个双输入的与非门;若用或非门实现与门的功能,则将两个输入端连接在一起的或非门分别作为另外一个或非门的两个输入;异或门也可用来实现与门,但较少使用,这里不做详细介绍。It should be noted that, as shown in FIG. 6 , the embodiment of the present disclosure is described by taking the first logic unit as an AND gate as an example. The main function of the first logic unit 30 is to perform logical AND processing on the refresh command signal (REF AB CMD) and the refresh address selection signal (Addr Exchange Flag) to generate a weak address clock signal (Out_CLK). In addition, the output of the weak address clock signal (Out_CLK) can also be achieved through a NAND gate, a NOR gate or an XOR gate. Among them, the two gate circuits of the NAND gate and the NOR gate can realize the functions of all other gate circuits. Specifically, if the function of the AND gate is realized by the NAND gate, the two input ends of a NAND gate are connected together, and then a dual-input NAND gate is connected to its input end; if the function of the AND gate is realized by the NOR gate, the NOR gate with two input ends connected together is used as the two inputs of another NOR gate; the XOR gate can also be used to realize the AND gate, but it is rarely used and will not be described in detail here.
还需要说明的是,先入先出寄存器31响应于弱地址时钟信号(Out_CLK)的每一个脉冲,同时输出X个弱地址信号,X为每个刷新命令信号(REF AB CMD)执行刷新操作的次数(在某些情况下,例如:每次刷新操作同时刷新Bank的多行的情况,X为每个刷新命令信号对应的可刷新的行数)。在刷新地址选择信号(Addr Exchange Flag)处于第二电平的期间,需要遍历X个弱地址信号(Out Address)进行刷新,从而更好的改善所有弱存储单元的稳定性。也就是说,如果刷新地址选择信号(Addr Exchange Flag)处于第二电平且每接收到一个刷新命令信号(REF AB CMD),第一逻辑单元30输出的弱地址时钟信号(Out_CLK)上就产生一个脉冲,第一逻辑单元30根据刷新命令信号(REF AB CMD)和刷新地址选择信号(Addr Exchange Flag)将弱地址时钟信号(Out_CLK)输出至先入先出寄存器31,从而先入先出寄存器31基于弱地址时钟信号(Out_CLK)依序输出多个弱地址信号(Out Address),以依次对多个弱地址信号(Out Address)所对应的存储行执行刷新操作。It should also be noted that the FIFO register 31 responds to each pulse of the weak address clock signal (Out_CLK) and outputs X weak address signals at the same time, where X is the number of refresh operations performed for each refresh command signal (REF AB CMD) (in some cases, for example, each refresh operation refreshes multiple rows of a Bank at the same time, and X is the number of refreshable rows corresponding to each refresh command signal). During the period when the refresh address selection signal (Addr Exchange Flag) is at the second level, it is necessary to traverse X weak address signals (Out Address) for refreshing, thereby better improving the stability of all weak storage cells. That is to say, if the refresh address selection signal (Addr Exchange Flag) is at the second level and each time a refresh command signal (REF AB CMD) is received, a pulse is generated on the weak address clock signal (Out_CLK) output by the first logic unit 30, and the first logic unit 30 outputs the weak address clock signal (Out_CLK) to the first-in first-out register 31 according to the refresh command signal (REF AB CMD) and the refresh address selection signal (Addr Exchange Flag), so that the first-in first-out register 31 outputs a plurality of weak address signals (Out Address) in sequence based on the weak address clock signal (Out_CLK), so as to perform refresh operations on the storage rows corresponding to the plurality of weak address signals (Out Address) in turn.
具体来说,在刷新地址选择信号(Addr Exchange Flag)处于第一电平或者未接收到刷新命令信号(REF AB CMD)时,弱地址时钟信号(Out_CLK)上不产生脉冲,多个弱地址信号(Out Address)会被保存在先入先出寄存器31中;在刷新地址选择信号(Addr Exchange Flag)处于第二电平且接收到刷新命令信号(REF AB CMD)时,先入先出寄存器31会根据弱地址时钟信号(Out_CLK)上的每一个脉冲,将存储的多个弱地址信号(Out Address)依序输出用以后续对弱地址信号(Out Address)的刷新操作。Specifically, when the refresh address selection signal (Addr Exchange Flag) is at the first level or the refresh command signal (REF AB CMD) is not received, no pulse is generated on the weak address clock signal (Out_CLK), and multiple weak address signals (Out Address) will be stored in the first-in first-out register 31; when the refresh address selection signal (Addr Exchange Flag) is at the second level and the refresh command signal (REF AB CMD) is received, the first-in first-out register 31 will output the stored multiple weak address signals (Out Address) in sequence according to each pulse on the weak address clock signal (Out_CLK) for subsequent refresh operations on the weak address signals (Out Address).
在一些实施例中,弱地址信号(Out Address)是指ECS模式中错误比特位大于第三阈值的存储行;In some embodiments, the weak address signal (Out Address) refers to a storage row in which the error bit is greater than a third threshold in the ECS mode;
弱地址发生器103,还配置为接收当前ECS操作行地址信号(Row Address)和对应的存储标志信号(Bigger_Flag),在存储标志信号(Bigger_Flag)有效时,将当前ECS操作行地址信号(Row Address)存储为弱地址信号(Out Address);其中,存储标志信号(Bigger_Flag)指示当前ECS操作行地址信号(Row Address)对应的存储行的错误比特位是否大于第三阈值。The weak address generator 103 is further configured to receive a current ECS operation row address signal (Row Address) and a corresponding storage flag signal (Bigger_Flag), and when the storage flag signal (Bigger_Flag) is valid, store the current ECS operation row address signal (Row Address) as a weak address signal (Out Address); wherein the storage flag signal (Bigger_Flag) indicates whether an error bit of a storage row corresponding to the current ECS operation row address signal (Row Address) is greater than a third threshold.
需要说明的是,第三阈值可以是确定的数值,也可以是一个数值范围,在存储器中执行ECS操作时,第三阈值一般会有设定的默认值,以便更高效地检测出弱存储行,提高ECS的错误检测效率。It should be noted that the third threshold may be a fixed value or a value range. When performing ECS operations in the memory, the third threshold generally has a set default value to more efficiently detect weak storage rows and improve the error detection efficiency of ECS.
还需要说明的是,对于存储标志信号(Bigger_Flag)来说,有效指的是低电平(0),无效指的是高电平(1)。具体来说,当存储标志信号(Bigger_Flag)为低电平时,说明当前ECS操作行地址信号(Row Address)对应的存储行的错误比特位小于等于第三阈值,则当前ECS操作行地址信号(Row Address)不是弱地址信号(Out Address),弱地址发生器103不会将其存储;当存储标志信号(Bigger_Flag)为高电平时,说明当前ECS操作行地址信号(Row Address)对应的存储行的错误比特位大于第三阈值,则当前 ECS操作行地址信号(Row Address)是弱地址信号(Out Address),弱地址发生器103会将其存储。It should also be noted that, for the storage flag signal (Bigger_Flag), valid refers to a low level (0), and invalid refers to a high level (1). Specifically, when the storage flag signal (Bigger_Flag) is at a low level, it means that the error bit of the storage row corresponding to the current ECS operation row address signal (Row Address) is less than or equal to the third threshold, then the current ECS operation row address signal (Row Address) is not a weak address signal (Out Address), and the weak address generator 103 will not store it; when the storage flag signal (Bigger_Flag) is at a high level, it means that the error bit of the storage row corresponding to the current ECS operation row address signal (Row Address) is greater than the third threshold, then the current The ECS operation row address signal (Row Address) is a weak address signal (Out Address), which will be stored by the weak address generator 103 .
在一些实施例中,如图7所示,弱地址发生器103还包括锁存器32、地址比较器33和第二逻辑单元34,其中:In some embodiments, as shown in FIG. 7 , the weak address generator 103 further includes a latch 32 , an address comparator 33 , and a second logic unit 34 , wherein:
锁存器32,配置为锁存上一次存储的弱地址信号(Weak_Addr_ECS_);Latch 32, configured to latch the weak address signal (Weak_Addr_ECS_) stored last time;
地址比较器33,配置为接收当前ECS操作行地址信号(Row Address)和上一次存储的弱地址信号(Weak_Addr_ECS_);在当前ECS操作行地址信号(Row Address)和上一次存储的弱地址信号(Weak_Addr_ECS_)不同时,输出有效的更新标志信号(Diff_Flag);The address comparator 33 is configured to receive the current ECS operation row address signal (Row Address) and the weak address signal (Weak_Addr_ECS_) stored last time; when the current ECS operation row address signal (Row Address) and the weak address signal (Weak_Addr_ECS_) stored last time are different, output a valid update flag signal (Diff_Flag);
第二逻辑单元34,配置为接收存储标志信号(Bigger_Flag)和更新标志信号(Diff_Flag);在存储标志信号(Bigger_Flag)和更新标志信号(Diff_Flag)均有效时,输出有效的加载时钟信号(IN_CLK);The second logic unit 34 is configured to receive a storage flag signal (Bigger_Flag) and an update flag signal (Diff_Flag); when both the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag) are valid, output a valid load clock signal (IN_CLK);
锁存器32,还配置为接收加载时钟信号(IN_CLK)和当前ECS操作行地址信号(Row Address);在加载时钟信号(IN_CLK)有效时,将当前ECS操作行地址信号(Row Address)作为待存储的弱地址信号(Out Address)进行锁存;The latch 32 is further configured to receive a loading clock signal (IN_CLK) and a current ECS operation row address signal (Row Address); when the loading clock signal (IN_CLK) is valid, the current ECS operation row address signal (Row Address) is latched as a weak address signal (Out Address) to be stored;
先入先出寄存器31,还配置为接收延迟第一预设时间的加载时钟信号(IN_CLK)和待存储的弱地址信号(Out Address),基于加载时钟信号(IN_CLK)将待存储的弱地址信号(Out Address)进行存储。The first-in-first-out register 31 is also configured to receive a loading clock signal (IN_CLK) delayed by a first preset time and a weak address signal to be stored (Out Address), and to store the weak address signal to be stored (Out Address) based on the loading clock signal (IN_CLK).
需要说明的是,弱地址发生器103还包括时钟延时单元35,时钟延时单元35是为了对加载时钟信号(IN_CLK)进行延迟,保证弱地址信号(Out Address)先进入到先入先出寄存器31中,这样,在加载时钟信号(IN_CLK)的上升沿到来时,可以将弱地址信号(Out Address)进行存储。It should be noted that the weak address generator 103 also includes a clock delay unit 35. The clock delay unit 35 is used to delay the loading clock signal (IN_CLK) to ensure that the weak address signal (Out Address) enters the first-in first-out register 31 first. In this way, when the rising edge of the loading clock signal (IN_CLK) arrives, the weak address signal (Out Address) can be stored.
需要说明的是,弱地址发生器103接收到当前ECS操作行地址信号(Row Address)后,首先将其和上一次存储的ECS操作弱地址信号(Weak_Addr_ECS_)进行比较;若两者相同,锁存器(Latch)无需对当前ECS操作行地址信号(Row Address)进行锁存和存储;若两者不同,锁存器(Latch)会重新锁存当前ECS操作行地址信号(Row Address),并将当前ECS操作行地址信号(Row Address)作为待存储的弱地址信号(Out Address),送进先入先出寄存器31。这样,不仅能够更好地锁存弱地址信号(Out Address),为下一次的比较作准备,而且为锁存器32提供了待存储的弱地址信号(Out Address)。It should be noted that after the weak address generator 103 receives the current ECS operation row address signal (Row Address), it first compares it with the last stored ECS operation weak address signal (Weak_Addr_ECS_); if the two are the same, the latch (Latch) does not need to latch and store the current ECS operation row address signal (Row Address); if the two are different, the latch (Latch) will re-latch the current ECS operation row address signal (Row Address), and send the current ECS operation row address signal (Row Address) as the weak address signal (Out Address) to be stored into the first-in first-out register 31. In this way, not only can the weak address signal (Out Address) be better latched to prepare for the next comparison, but also the weak address signal (Out Address) to be stored is provided to the latch 32.
需要说明的是,先入先出寄存器31的工作是存取地址,当加载时钟信号(IN CLK)有效时,将待存储的弱地址信号(Out Address)进行存储,当弱地址时钟信号上(Out_CLK)产生脉冲时,将待存储的弱地址信号(Out Address)进行输出。另外,先入先出寄存器31会将存储的多个弱地址信号(Out Address)存储或输出,先接收到的弱地址信号(Out Address)会被优先存储或输出,实现了数据的边进边出,提高了存储器的传输效率。It should be noted that the work of the first-in first-out register 31 is to access the address. When the loading clock signal (IN CLK) is valid, the weak address signal to be stored (Out Address) is stored. When a pulse is generated on the weak address clock signal (Out_CLK), the weak address signal to be stored (Out Address) is output. In addition, the first-in first-out register 31 will store or output multiple weak address signals (Out Address) stored. The weak address signal (Out Address) received first will be stored or output first, realizing the data input and output at the same time, and improving the transmission efficiency of the memory.
还需要说明的是,如图7所示,上述的第一逻辑单元30、先入先出寄存器31、锁存器32、地址比较器33、第二逻辑单元34和时钟延时单元35共同组成了弱地址发生器103,能够实现弱地址信号(Out Address)的锁存和输出,以用于后续对弱地址信号(Out Address)对应的存储行的刷新。It should also be noted that, as shown in Figure 7, the above-mentioned first logic unit 30, first-in first-out register 31, latch 32, address comparator 33, second logic unit 34 and clock delay unit 35 together constitute a weak address generator 103, which can realize the latching and output of the weak address signal (Out Address) for subsequent refreshing of the storage row corresponding to the weak address signal (Out Address).
在一些实施例中,请参见图8,第二逻辑单元34包括第二与门340和脉冲发生器341,其中:In some embodiments, referring to FIG. 8 , the second logic unit 34 includes a second AND gate 340 and a pulse generator 341 , wherein:
所述第二与门340的第一输入端接收存储标志信号(Bigger_Flag),第二与门340的第二输入端接收更新标志信号(Diff_Flag),第二与门340的输出端与脉冲发生器341的输入端连接,脉冲发生器341的输出端用于输出加载时钟信号(IN CLK)。The first input end of the second AND gate 340 receives a storage flag signal (Bigger_Flag), the second input end of the second AND gate 340 receives an update flag signal (Diff_Flag), the output end of the second AND gate 340 is connected to the input end of the pulse generator 341, and the output end of the pulse generator 341 is used to output a loading clock signal (IN CLK).
需要说明的是,如图8所示,存储标志信号(Bigger_Flag)和更新标志信号(Diff_Flag)作为第二与门340的两个输入端,说明存储标志信号(Bigger_Flag)和更新标志信号(Diff_Flag)均为高电平有效。应理解,对于这两个信号来说,可以为高电平有效,也可以为低电平有效。若存储标志信号(Bigger_Flag)和更新标志信号(Diff_Flag)为低电平有效,则要输出有效的加载时钟信号(IN CLK),需要将第二与门340替换为或非门就可以实现电路的的相关功能。同时,若存储标志信号(Bigger_Flag)和更新标志信号(Diff_Flag)这两个信号中的一个为高电平有效,另一个为低电平有效,则可以用一个与非门代替本公开实施例中的第二与门340实现原本的电路功能。It should be noted that, as shown in FIG8 , the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag) are two input terminals of the second AND gate 340, indicating that the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag) are both valid at a high level. It should be understood that for these two signals, it can be valid at a high level or valid at a low level. If the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag) are valid at a low level, then to output a valid load clock signal (IN CLK), the second AND gate 340 needs to be replaced with a NOR gate to realize the relevant functions of the circuit. At the same time, if one of the two signals, the storage flag signal (Bigger_Flag) and the update flag signal (Diff_Flag), is valid at a high level and the other is valid at a low level, then a NAND gate can be used to replace the second AND gate 340 in the embodiment of the present disclosure to realize the original circuit function.
还需要说明的是,脉冲发生器341是为了在加载时钟信号(IN CLK)上产生2纳秒(nanosecond,ns)的自动脉冲,锁存器32就会将弱地址信号(Out Address)进行锁存。It should also be noted that the pulse generator 341 is used to generate an automatic pulse of 2 nanoseconds (ns) on the loading clock signal (IN CLK), and the latch 32 will latch the weak address signal (Out Address).
在一些实施例中,如图9所示,所述脉冲发生器341包括第一非门3410、延迟单元3411和第三与门3412,其中:In some embodiments, as shown in FIG. 9 , the pulse generator 341 includes a first NOT gate 3410 , a delay unit 3411 and a third AND gate 3412 , wherein:
第一非门3410的输入端与第二与门340的输出端连接,第一非门3410的输出端与延迟单元3411的输入端连接,延迟单元3411的输出端与第三与门3412的第二输入端连接,第三与门3412的第一输入端与第二与门340的输出端连接,第三与门3412的输出端用于输出加载时钟信号(IN CLK)。An input terminal of the first NOT gate 3410 is connected to an output terminal of the second AND gate 340, an output terminal of the first NOT gate 3410 is connected to an input terminal of a delay unit 3411, an output terminal of the delay unit 3411 is connected to a second input terminal of a third AND gate 3412, a first input terminal of the third AND gate 3412 is connected to an output terminal of the second AND gate 340, and an output terminal of the third AND gate 3412 is used to output a loading clock signal (IN CLK).
需要说明的是,延迟单元3411的作用是为了保证弱地址信号(Out Address)先进入到锁存器中,这样,在加载时钟信号(IN CLK)的上升沿到来时,弱地址信号(Out Address)能够被很好地锁存。It should be noted that the function of the delay unit 3411 is to ensure that the weak address signal (Out Address) enters the latch first, so that when the rising edge of the loading clock signal (IN CLK) arrives, the weak address signal (Out Address) can be well latched.
还需要说明的是,与上述的第二与门340类似,由于信号的有效和无效可以定义为低电平有效或者高电平有效,因此,第三与门3412也可用或非门代替其实现相关电路功能。在电路的设计中,门电路的 选用不唯一,可以根据电路需求进行灵活设计。It should also be noted that, similar to the second AND gate 340 described above, since the validity and invalidity of the signal can be defined as low level validity or high level validity, the third AND gate 3412 can also be replaced by a NOR gate to implement the relevant circuit functions. The selection is not unique and can be flexibly designed according to circuit requirements.
还需要说明的是,上述的先入先出寄存器31、锁存器32、地址比较器33、第二与门340、脉冲发生器341和时钟延时单元35共同组成了弱地址存储模块1030,弱地址存储模块1030与第一逻辑单元30共同组成了本公开实施例的弱地址发生器103。It should also be noted that the above-mentioned first-in first-out register 31, latch 32, address comparator 33, second AND gate 340, pulse generator 341 and clock delay unit 35 together constitute a weak address storage module 1030, and the weak address storage module 1030 and the first logic unit 30 together constitute the weak address generator 103 of the embodiment of the present disclosure.
在一些实施例中,如图10所示,刷新模块104包括控制子单元40、选择子单元41和刷新子单元42,其中:In some embodiments, as shown in FIG. 10 , the refresh module 104 includes a control subunit 40, a selection subunit 41 and a refresh subunit 42, wherein:
控制子单元40,配置为接收刷新地址选择信号(Addr Exchange Flag);在刷新地址选择信号(Addr Exchange Flag)为第二电平时,基于刷新时钟信号(CBR_CLK),产生并输出选择信号组(Addr_SELB<X:1>);The control subunit 40 is configured to receive a refresh address selection signal (Addr Exchange Flag); when the refresh address selection signal (Addr Exchange Flag) is at a second level, based on a refresh clock signal (CBR_CLK), generate and output a selection signal group (Addr_SELB<X:1>);
选择子单元41,配置为接收选择信号组(Addr_SELB<X:1>)、刷新地址选择信号(Addr Exchange Flag)、行地址信号(Normal REF Addr)和多个弱地址信号(Out Address);在刷新地址选择信号(Addr Exchange Flag)为第一电平时,将行地址信号(Normal REF Addr)输出为待刷新地址信号(Refresh Address);在刷新地址选择信号(Addr Exchange Flag)为第二电平时,基于选择信号组(Addr_SELB<X:1>)将多个弱地址信号(Out Address)依次输出为待刷新地址信号(Refresh Address);The selection subunit 41 is configured to receive a selection signal group (Addr_SELB<X:1>), a refresh address selection signal (Addr Exchange Flag), a row address signal (Normal REF Addr) and a plurality of weak address signals (Out Address); when the refresh address selection signal (Addr Exchange Flag) is at a first level, the row address signal (Normal REF Addr) is output as an address signal to be refreshed (Refresh Address); when the refresh address selection signal (Addr Exchange Flag) is at a second level, the plurality of weak address signals (Out Address) are sequentially output as an address signal to be refreshed (Refresh Address) based on the selection signal group (Addr_SELB<X:1>);
刷新子单元42,配置为接收刷新命令信号(REF AB CMD)和待刷新地址信号(Refresh Address),响应于刷新命令信号(REF AB CMD)对待刷新地址信号(Refresh Address)指示的存储行执行一次刷新操作。The refresh subunit 42 is configured to receive a refresh command signal (REF AB CMD) and an address signal to be refreshed (Refresh Address), and to perform a refresh operation on a storage row indicated by the address signal to be refreshed (Refresh Address) in response to the refresh command signal (REF AB CMD).
需要说明的是,若刷新命令计数模块101输出的刷新地址选择信号(Addr Exchange Flag)处于第一电平,选择子单元41输出行地址信号(Normal REF Addr),刷新子单元42执行对行地址信号(Normal REF Addr)的正常刷新;若刷新命令计数模块101输出的刷新地址选择信号(Addr Exchange Flag)处于第二电平,控制子单元40根据刷新子单元42生成的刷新时钟信号(CBR_CLK)输出选择信号组(Addr_SELB<X:1>),选择子单元41根据选择信号组(Addr_SELB<X:1>)将多个弱地址信号(Out Address)依次输出至刷新子单元42,执行对弱地址信号(Out Address)指示的存储行的刷新操作。这样,通过刷新地址选择信号(Addr Exchange Flag)的电平状态和选择信号组(Addr_SELB<X:1>)的具体数值,可以对多个弱地址信号(Out Address)依次选择输出并对指示的存储行执行刷新操作。It should be noted that, if the refresh address selection signal (Addr Exchange Flag) output by the refresh command counting module 101 is at the first level, the selection subunit 41 outputs the row address signal (Normal REF Addr), and the refresh subunit 42 performs a normal refresh of the row address signal (Normal REF Addr); if the refresh address selection signal (Addr Exchange Flag) output by the refresh command counting module 101 is at the second level, the control subunit 40 outputs the selection signal group (Addr_SELB<X:1>) according to the refresh clock signal (CBR_CLK) generated by the refresh subunit 42, and the selection subunit 41 outputs a plurality of weak address signals (Out Address) in sequence to the refresh subunit 42 according to the selection signal group (Addr_SELB<X:1>), and performs a refresh operation on the storage row indicated by the weak address signal (Out Address). In this way, by refreshing the level state of the address selection signal (Addr Exchange Flag) and the specific value of the selection signal group (Addr_SELB<X:1>), multiple weak address signals (Out Address) can be selected and output in turn and the refresh operation can be performed on the indicated storage rows.
在一些实施例中,参见图11,控制子单元40包括第四与门400、脉冲计数单元401、第三逻辑单元402和第四逻辑单元403,其中:In some embodiments, referring to FIG. 11 , the control subunit 40 includes a fourth AND gate 400 , a pulse counting unit 401 , a third logic unit 402 , and a fourth logic unit 403 , wherein:
第四与门400的输入端接收所述刷新地址选择信号(Addr Exchange Flag)和所述刷新时钟信号(CBR_CLK);第四与门400的输出端与脉冲计数单元401的输入端连接,脉冲计数单元401的输出端输出计数信号组(Addr_MUX_CNT<Y:0>);The input end of the fourth AND gate 400 receives the refresh address selection signal (Addr Exchange Flag) and the refresh clock signal (CBR_CLK); the output end of the fourth AND gate 400 is connected to the input end of the pulse counting unit 401, and the output end of the pulse counting unit 401 outputs the counting signal group (Addr_MUX_CNT<Y:0>);
第三逻辑单元402的输入端对计数信号组(Addr_MUX_CNTB<Y:0>)进行第一译码处理以输出选择信号组(Addr_SELB<X:1>);The input end of the third logic unit 402 performs a first decoding process on the count signal group (Addr_MUX_CNTB<Y:0>) to output a selection signal group (Addr_SELB<X:1>);
第四逻辑单元403的输入端对计数信号组(Addr_MUX_CNTB<Y:0>)进行第二译码处理以输出脉冲计数单元401的复位信号(RST)。The input terminal of the fourth logic unit 403 performs a second decoding process on the counting signal group (Addr_MUX_CNTB<Y:0>) to output a reset signal (RST) of the pulse counting unit 401 .
需要说明的是,脉冲计数单元401输出的计数信号组(Addr_MUX_CNTB<Y:0>)中信号的数量Y+1应当满足2Y+1>X,本公开实施例以X=3、Y=1为例进行说明,如图12所示,脉冲计数单元401是由两个D触发器构成的计数器(即输出的计数信号组中(Addr_MUX_CNTB<Y:0>)信号的数量为2)。脉冲计数单元401包括第1级触发器4010和第2级触发器4011,第1级触发器4010的时钟端与第四与门400连接,第1级触发器4010的输入端与其自身的反相输出端连接,第1级触发器4010的正相端输出端用于输出计数信号组的(Addr_MUX_CNTB<Y:0>)第1位子信号Addr_MUX_CNT<0>;第2级触发器4011的时钟端与第1级触发器4010的反相输出端连接;第2级触发器4011的的输入端与其自身的反相输出端连接,第2级触发器4011的正相端输出端用于输出计数信号组(Addr_MUX_CNTB<Y:0>)的第2位子信号Addr_MUX_CNT<1>。应理解,当刷新地址选择信号(Addr Exchange Flag)处于第二电平时,刷新时钟信号(CBR_CLK)作为脉冲计数单元401的时钟信号,脉冲计数单元401通过对刷新时钟信号(CBR_CLK)计数,输出计数值,根据所输出的计数值确定选择信号组(Addr_SELB<X:1>)中的一个为有效状态,用以对多个弱地址信号(Out Address)进行依次刷新。It should be noted that the number of signals Y+1 in the counting signal group (Addr_MUX_CNTB<Y:0>) output by the pulse counting unit 401 should satisfy 2 Y+1 >X. The embodiment of the present disclosure takes X=3 and Y=1 as an example for explanation. As shown in FIG12 , the pulse counting unit 401 is a counter composed of two D flip-flops (that is, the number of signals in the output counting signal group (Addr_MUX_CNTB<Y:0>) is 2). The pulse counting unit 401 includes a first-level trigger 4010 and a second-level trigger 4011. The clock terminal of the first-level trigger 4010 is connected to the fourth AND gate 400, the input terminal of the first-level trigger 4010 is connected to its own inverting output terminal, and the positive-phase output terminal of the first-level trigger 4010 is used to output the first-bit sub-signal Addr_MUX_CNT<0> of the counting signal group (Addr_MUX_CNTB<Y:0>); the clock terminal of the second-level trigger 4011 is connected to the inverting output terminal of the first-level trigger 4010; the input terminal of the second-level trigger 4011 is connected to its own inverting output terminal, and the positive-phase output terminal of the second-level trigger 4011 is used to output the second-bit sub-signal Addr_MUX_CNT<1> of the counting signal group (Addr_MUX_CNTB<Y:0>). It should be understood that when the refresh address selection signal (Addr Exchange Flag) is at the second level, the refresh clock signal (CBR_CLK) serves as the clock signal of the pulse counting unit 401. The pulse counting unit 401 counts the refresh clock signal (CBR_CLK) and outputs a count value. According to the output count value, it is determined that one of the selection signal groups (Addr_SELB<X:1>) is in a valid state, so as to refresh multiple weak address signals (Out Address) in sequence.
需要说明的是,如图12所示,本公开实施例仍以X=3、Y=1为例进行说明。第三逻辑单元402包括第一与非门4020、第二与非门4021和第三与非门4022,第一与非门4020的第一输入端与第1级触发器4010的反相输出端连接,第一与非门4020的第二输入端与第2级触发器4011的反相输出端连接,第一与非门4020的输出端输出第1位选择子信号(Addr_SELB<1>);第二与非门4021的第一输入端与第1级触发器4010的正相输出端连接,第二与非门4021的第二输入端与第2级触发器4011的反相输出端连接,第二与非门4021的输出端输出第2位选择子信号(Addr_SELB<2>);第三与非门4022的第一输入端与第1级触发器4010的反相输出端连接,第三与非门4022的第二输入端与第2级触发器4011的正相 输出端连接,第三与非门4022的输出端输出第3位选择子信号(Addr_SELB<3>)。It should be noted that, as shown in FIG. 12 , the embodiment of the present disclosure is still described by taking X=3 and Y=1 as an example. The third logic unit 402 includes a first NAND gate 4020, a second NAND gate 4021 and a third NAND gate 4022. The first input terminal of the first NAND gate 4020 is connected to the inverting output terminal of the first-stage flip-flop 4010, the second input terminal of the first NAND gate 4020 is connected to the inverting output terminal of the second-stage flip-flop 4011, and the output terminal of the first NAND gate 4020 outputs the first-bit selection sub-signal (Addr_SELB<1>); the second input terminal of the second NAND gate 4021 is connected to the inverting output terminal of the second-stage flip-flop 4011. The first input terminal of the third NAND gate 4022 is connected to the inverting output terminal of the first-stage flip-flop 4010, the second input terminal of the second NAND gate 4021 is connected to the inverting output terminal of the second-stage flip-flop 4011, and the output terminal of the second NAND gate 4021 outputs the second-bit selection sub-signal (Addr_SELB<2>); the first input terminal of the third NAND gate 4022 is connected to the inverting output terminal of the first-stage flip-flop 4010, the second input terminal of the third NAND gate 4022 is connected to the positive phase output terminal of the second-stage flip-flop 4011 The output ends are connected, and the output end of the third NAND gate 4022 outputs the 3rd bit selection sub-signal (Addr_SELB<3>).
还需要说明的是,第三逻辑单元402由3个与非门构成,表示选择信号组(Addr_SELB<3:1>)的有效状态为低电平有效。具体地,当脉冲计数单元401的输出为00时,第一与非门4020输出第1位选择信号(Addr_SELB<1>);当脉冲计数单元401的输出为01时,第二与非门4021输出第2位选择信号(Addr_SELB<2>);当脉冲计数单元401的输出为10时,第三与非门4022输出第3位选择选择信号(Addr_SELB<3>)。这样,通过不同的选择信号确定将多个弱地址信号(Out Address)中的哪一个进行输出,实现多个弱地址信号(Out Address)的依次刷新。It should also be noted that the third logic unit 402 is composed of three NAND gates, indicating that the valid state of the selection signal group (Addr_SELB<3:1>) is low level valid. Specifically, when the output of the pulse counting unit 401 is 00, the first NAND gate 4020 outputs the first bit selection signal (Addr_SELB<1>); when the output of the pulse counting unit 401 is 01, the second NAND gate 4021 outputs the second bit selection signal (Addr_SELB<2>); when the output of the pulse counting unit 401 is 10, the third NAND gate 4022 outputs the third bit selection signal (Addr_SELB<3>). In this way, different selection signals are used to determine which of the multiple weak address signals (Out Address) is output, so that the multiple weak address signals (Out Address) are refreshed in sequence.
同样,第四逻辑单元403以与门实现脉冲计数单元401的复位。也就是说,当脉冲计数单元401的输出为11时,脉冲计数单元401开始复位,重新开始下一轮的计数。Similarly, the fourth logic unit 403 uses an AND gate to achieve the reset of the pulse counting unit 401. That is, when the output of the pulse counting unit 401 is 11, the pulse counting unit 401 starts to reset and restarts the next round of counting.
在一些实施例中,选择信号组(Addr_SELB<X:1>)包括X位选择子信号,第三逻辑单元402包括X个与非门,其中:In some embodiments, the selection signal group (Addr_SELB<X:1>) includes X-bit selection sub-signals, and the third logic unit 402 includes X NAND gates, where:
每个与非门有m个输入端,用于接收m个目标计数信号或其反相信号,X个与非门的输出端与X位选择子信号一一对应;其中,目标计数信号为计数信号组中(Addr_MUX_CNT<Y:1>)的m个计数信号,且任意两个与非门均不具有完全相同的输入;其中,X为正整数,m为大于等于2的整数。Each NAND gate has m input terminals for receiving m target count signals or their inverted signals, and the output terminals of the X NAND gates correspond one-to-one to the X-bit selector signals; wherein the target count signals are the m count signals in the count signal group (Addr_MUX_CNT<Y:1>), and any two NAND gates do not have exactly the same inputs; wherein X is a positive integer, and m is an integer greater than or equal to 2.
需要说明的是,第三逻辑单元402中与非门的数量与选择子信号的数量一一对应,每一与非门的输入端可以是完全不同的信号,也可以是部分不同的信号,每一与非门的输出端输出一个选择子信号,用以执行对哪个弱地址信号进行刷新。这样,控制子单元401通过计数信号组(Addr_MUX_CNT<Y:1>)和选择信号组(Addr_SELB<X:1>)实现弱地址信号(Out Address)的依次刷新。It should be noted that the number of NAND gates in the third logic unit 402 corresponds to the number of selection sub-signals. The input end of each NAND gate can be a completely different signal or a partially different signal. The output end of each NAND gate outputs a selection sub-signal to determine which weak address signal is to be refreshed. In this way, the control sub-unit 401 realizes the sequential refresh of the weak address signal (Out Address) through the counting signal group (Addr_MUX_CNT<Y:1>) and the selection signal group (Addr_SELB<X:1>).
在一些实施例中,参见图13,基于每个刷新命令(REF AB CMD)输出的弱地址信号(Out Address)的数量为X;In some embodiments, referring to FIG. 13 , the number of weak address signals (Out Address) output based on each refresh command (REF AB CMD) is X;
选择子单元41包括X+1个级联的选择器:The selection subunit 41 includes X+1 cascaded selectors:
第1级选择器410的第一输入端接收第X个弱地址信号(Out Address X),第1级选择器410的第二输入端接收地信号(VSS),第1级选择器410的控制端接收第X位选择子信号(Addr_SELB<X>);The first input terminal of the first stage selector 410 receives the X-th weak address signal (Out Address X), the second input terminal of the first stage selector 410 receives the ground signal (VSS), and the control terminal of the first stage selector 410 receives the X-th selection sub-signal (Addr_SELB<X>);
第j级选择器的第一输入端接收第X+1-j个弱地址信号(Out Address),第j级选择器的第二输入端与第j-1级选择器的输出端连接,第j级选择器的控制端接收第X+1-j位选择子信号(Addr_SELB<X+1-j>);其中,j为大于等于2且小于等于X的整数;The first input end of the j-th level selector receives the X+1-j-th weak address signal (Out Address), the second input end of the j-th level selector is connected to the output end of the j-1-th level selector, and the control end of the j-th level selector receives the X+1-j-th selection sub-signal (Addr_SELB<X+1-j>); wherein j is an integer greater than or equal to 2 and less than or equal to X;
第X+1级选择器的第一输入端接收行地址信号(Normal REF Addr),第X+1级选择器的第二输入端与第X级选择器的输出端连接,第X+1级选择器的控制端接收刷新地址选择信号(Addr Exchange Flag),第X+1级选择器的输出端输出待刷新地址信号(Refresh Address)。The first input end of the X+1th level selector receives the row address signal (Normal REF Addr), the second input end of the X+1th level selector is connected to the output end of the Xth level selector, the control end of the X+1th level selector receives the refresh address selection signal (Addr Exchange Flag), and the output end of the X+1th level selector outputs the address signal to be refreshed (Refresh Address).
需要说明的是,如图14所示,仍以X=3为例。第1级选择器410的第一输入端接收第3个弱地址信号(Out Address 3),第1级选择器410的第二输入端接收地信号(VSS),第1级选择器410的控制端接收第3位选择子信号(Addr_SELB<3>);第2级选择器411的第一输入端接收第2个弱地址信号(Out Address 2),第2级选择器411的第二输入端与第1级选择器410的输出端连接,第2级选择器411的控制端接收第2位选择子信号(Addr_SELB<2>);第3级选择器412的第一输入端接收第1个弱地址信号(Out Address 1),第3级选择器412的第二输入端与第2级选择器411的输出端连接,第3级选择器412的控制端接收第1位选择子信号(Addr_SELB<1>);第4级选择器413的第一输入端接收行地址信号(Normal REF Addr),第4级选择器413的第二输入端与第3级选择器412的输出端连接,第4级选择器413的控制端接收刷新地址选择信号(Addr Exchange Flag),第4级选择器413的输出端输出待刷新地址信号(Refresh Address)。It should be noted that, as shown in FIG14 , X=3 is still taken as an example. The first input terminal of the first-level selector 410 receives the third weak address signal (Out Address 3), the second input terminal of the first-level selector 410 receives the ground signal (VSS), and the control terminal of the first-level selector 410 receives the third-bit selection sub-signal (Addr_SELB<3>); the first input terminal of the second-level selector 411 receives the second weak address signal (Out Address 2), the second input terminal of the second-level selector 411 is connected to the output terminal of the first-level selector 410, and the control terminal of the second-level selector 411 receives the second-bit selection sub-signal (Addr_SELB<2>); the first input terminal of the third-level selector 412 receives the first weak address signal (Out Address 1), the second input terminal of the third-level selector 412 is connected to the output terminal of the second-level selector 411, and the control terminal of the third-level selector 412 receives the 1st-bit selection sub-signal (Addr_SELB<1>); the first input terminal of the fourth-level selector 413 receives the row address signal (Normal REF Addr), the second input terminal of the fourth-level selector 413 is connected to the output terminal of the third-level selector 412, the control terminal of the fourth-level selector 413 receives the refresh address selection signal (Addr Exchange Flag), and the output terminal of the fourth-level selector 413 outputs the address signal to be refreshed (Refresh Address).
这样,选择子单元41基于刷新地址选择信号(Addr Exchange Flag)和选择信号组(Addr_SELB<3:1>)将弱地址信号(Out Address)或者行地址信号(Normal REF Addr)输出为待刷新地址信号(Refresh Address)。若刷新地址选择信号(Addr Exchange Flag)为第一电平(0),选择子单元41的第4级选择器413输出行地址信号(Normal REF Addr)作为待刷新地址信号(Refresh Address);若刷新地址选择信号(Addr Exchange Flag)为第二电平(1),选择子单元41的第4级选择器413会将弱地址信号(Out Address)作为待刷新地址信号(Refresh Address)进行输出。当刷新地址选择信号(Addr Exchange Flag)为第二电平,且第1位选择子信号(Addr_SELB<1>)为低电平,则选择子单元41的第3级选择器412会将第1个弱地址信号(Out Address 1)输出为待刷新地址信号(Refresh Address);当刷新地址选择信号(Addr Exchange Flag)为第二电平,且第2位选择子信号(Addr_SELB<2>)为低电平,则选择子单元41的第2级选择器411会将第2个弱地址信号(Out Address 2)输出为待刷新地址信号(Refresh Address);当刷新地址选择信号(Addr Exchange Flag)为第二电平,且第3位选择子信号(Addr_SELB<3>)为低电平,则选择子单元41的第1级选择器410会将第3个弱地址信号(Out Address 3)输出为待刷新地址信号(Refresh Address)。这样,通过依次级联的选择器构成的选择子单元41每次有唯一路径将一个地址信号输出为待刷新地址信号(Refresh Address),实现地址信号指示存储行的依次刷新。同时,通过改变电路设计可以实现对弱地址 信号(Out Address)的刷新频率,进而提高存储器的数据完整性。In this way, the selection subunit 41 outputs the weak address signal (Out Address) or the row address signal (Normal REF Addr) as the address signal to be refreshed (Refresh Address) based on the refresh address selection signal (Addr Exchange Flag) and the selection signal group (Addr_SELB<3:1>). If the refresh address selection signal (Addr Exchange Flag) is at the first level (0), the 4th level selector 413 of the selection subunit 41 outputs the row address signal (Normal REF Addr) as the address signal to be refreshed (Refresh Address); if the refresh address selection signal (Addr Exchange Flag) is at the second level (1), the 4th level selector 413 of the selection subunit 41 outputs the weak address signal (Out Address) as the address signal to be refreshed (Refresh Address). When the refresh address selection signal (Addr Exchange Flag) is at the second level and the first-bit selection sub-signal (Addr_SELB<1>) is at a low level, the third-level selector 412 of the selection sub-unit 41 will output the first weak address signal (Out Address 1) as the address signal to be refreshed (Refresh Address); when the refresh address selection signal (Addr Exchange Flag) is at the second level and the second-bit selection sub-signal (Addr_SELB<2>) is at a low level, the second-level selector 411 of the selection sub-unit 41 will output the second weak address signal (Out Address 2) as the address signal to be refreshed (Refresh Address); when the refresh address selection signal (Addr Exchange Flag) is at the second level and the third-bit selection sub-signal (Addr_SELB<3>) is at a low level, the first-level selector 410 of the selection sub-unit 41 will output the third weak address signal (Out Address 3) as the address signal to be refreshed (Refresh Address). In this way, the selection subunit 41 composed of the cascaded selectors has a unique path to output an address signal as a refresh address signal (Refresh Address) each time, so as to realize the sequential refresh of the storage rows indicated by the address signal. At the same time, by changing the circuit design, the weak address The refresh frequency of the signal (Out Address) can improve the data integrity of the memory.
在一些实施例中,如图15所示,刷新电路10还包括ECS模块105和阈值模块106,其中:In some embodiments, as shown in FIG. 15 , the refresh circuit 10 further includes an ECS module 105 and a threshold module 106 , wherein:
ECS模块105,配置为输出当前ECS操作行地址信号(Row Address)和第二计数值(EpRC);其中,第二计数值(EpRC)是指当前ECS操作行地址信号(Row Address)对应的存储行的错误比特位的数量;The ECS module 105 is configured to output a current ECS operation row address signal (Row Address) and a second count value (EpRC); wherein the second count value (EpRC) refers to the number of error bits of the storage row corresponding to the current ECS operation row address signal (Row Address);
阈值模块106,配置为接收第二计数值(EpRC),在第二计数值(EpRC)大于第三阈值时,输出有效的存储标志信号(Bigger_Flag);在第二计数值(EpRC)小于等于第三阈值时,输出无效的存储标志信号(Bigger_Flag);The threshold module 106 is configured to receive the second count value (EpRC), and output a valid storage flag signal (Bigger_Flag) when the second count value (EpRC) is greater than a third threshold; and output an invalid storage flag signal (Bigger_Flag) when the second count value (EpRC) is less than or equal to the third threshold;
弱地址发生器103,还配置为接收存储标志信号(Bigger_Flag)和当前ECS操作行地址信号(Row Address),在存储标志信号(Bigger_Flag)有效时,将当前ECS操作行地址信号(Row Address)存储为弱地址信号(Out Address)。The weak address generator 103 is also configured to receive a storage flag signal (Bigger_Flag) and a current ECS operation row address signal (Row Address), and when the storage flag signal (Bigger_Flag) is valid, store the current ECS operation row address signal (Row Address) as a weak address signal (Out Address).
需要说明的是,该ECS模块105可以应用于DRAM DDR5芯片中执行ECS功能的相关电路,其功能是用来检测DRAM中的弱存储行,并对其检测到的弱存储行的地址信号进行存储,以得到弱地址信号(Out Address)。It should be noted that the ECS module 105 can be applied to related circuits that perform ECS functions in DRAM DDR5 chips. Its function is to detect weak storage rows in DRAM and store the address signals of the detected weak storage rows to obtain weak address signals (Out Address).
需要说明的是,以第三阈值是6为例,若当前操作行地址信号(Row Address)的错误比特位小于等于6时,则第二计数值(EpRC)将会被存储器掩盖掉,阈值模块106输出无效的存储标志信号(Bigger_Flag),指示当前操作行地址信号(Row Address)不是弱地址信号(Out Address),弱地址发生器103不会存储当前ECS操作行地址信号(Row Address);若当前ECS操作行地址信号(Row Address)的错误比特位大于6时,则阈值模块106输出有效的存储标志信号(Bigger_Flag),说明当前ECS操作行地址信号(Row Address)为弱地址信号(Out Address),弱地址发生器103会将当前ECS操作行地址信号(Row Address)进行存储,以此类推。只要当前ECS操作行地址信号(Row Address)错误比特位大于6,ECS模块105和阈值模块106会一直输出同一个行地址和有效的存储标志信号(Bigger_Flag),直到换行为止。因此,弱地址发生器103对于同一个行地址只需要保存一次即可。It should be noted that, taking the third threshold value of 6 as an example, if the error bit of the current operation row address signal (Row Address) is less than or equal to 6, the second count value (EpRC) will be masked by the memory, and the threshold module 106 outputs an invalid storage flag signal (Bigger_Flag), indicating that the current operation row address signal (Row Address) is not a weak address signal (Out Address), and the weak address generator 103 will not store the current ECS operation row address signal (Row Address); if the error bit of the current ECS operation row address signal (Row Address) is greater than 6, the threshold module 106 outputs a valid storage flag signal (Bigger_Flag), indicating that the current ECS operation row address signal (Row Address) is a weak address signal (Out Address), and the weak address generator 103 will store the current ECS operation row address signal (Row Address), and so on. As long as the error bit of the current ECS operation row address signal (Row Address) is greater than 6, the ECS module 105 and the threshold module 106 will continue to output the same row address and a valid storage flag signal (Bigger_Flag) until the row is changed. Therefore, the weak address generator 103 only needs to save the same row address once.
在一些实施例中,请参见图15,阈值模块106,还配置为接收阈值设置信号(TM/Fuse Thresholding Setting),基于阈值设置信号(TM/Fuse Thresholding Setting)确定第三阈值。In some embodiments, please refer to Figure 15, the threshold module 106 is also configured to receive a threshold setting signal (TM/Fuse Thresholding Setting) and determine a third threshold based on the threshold setting signal (TM/Fuse Thresholding Setting).
需要说明的是,存储器的具体规格不同,阈值设置信号(TM/Fuse Thresholding Setting)不同,对应的第三阈值也不同。在实际应用中,可以根据存储器的具体类型进行阈值设定,以降低存储器的失误率,提高存储器的性能。It should be noted that the specific specifications of the memory are different, the threshold setting signal (TM/Fuse Thresholding Setting) is different, and the corresponding third threshold is also different. In practical applications, the threshold can be set according to the specific type of memory to reduce the error rate of the memory and improve the performance of the memory.
本公开的另一实施例中,参见图16,其示出了本公开实施例提供的一种刷新方法的流程示意图。如图16所示,该方法包括:In another embodiment of the present disclosure, referring to FIG16, a schematic flow chart of a refresh method provided by an embodiment of the present disclosure is shown. As shown in FIG16, the method includes:
S501:在存储器每次接收到刷新命令时,对第一计数值进行加一处理。S501: Every time the memory receives a refresh command, the first count value is incremented by one.
S502:在第一计数值小于第一阈值时,按照自动刷新模式下的刷新顺序对下一存储行进行刷新操作。S502: When the first count value is less than the first threshold, a refresh operation is performed on the next storage row according to a refresh sequence in the automatic refresh mode.
S503:在第一计数值大于等于第一阈值且小于第二阈值时,对弱存储行依次进行刷新操作;其中,弱存储行是指ECS模式中错误比特位大于第三阈值的存储行,且第二阈值大于第一阈值。S503: When the first count value is greater than or equal to the first threshold and less than the second threshold, refresh the weak storage rows in sequence; wherein the weak storage row refers to a storage row whose error bit is greater than the third threshold in the ECS mode, and the second threshold is greater than the first threshold.
需要说明的是,本公开实施例提供的刷新方法应用于前述实施例提供的刷新电路,对于本公开实施例未披露的细节,请参照前述实施例的描述而理解。It should be noted that the refresh method provided in the embodiment of the present disclosure is applied to the refresh circuit provided in the aforementioned embodiment. For details not disclosed in the embodiment of the present disclosure, please refer to the description of the aforementioned embodiment for understanding.
在一些实施例中,该方法还包括:In some embodiments, the method further comprises:
在第一计数值等于第二阈值时,对第一计数值进行复位处理。When the first count value is equal to the second threshold value, the first count value is reset.
需要说明的是,当第一计数值小于第一阈值,刷新命令计数模块产生的刷新地址选择信号处于第一电平,存储器对所有的行地址信号进行刷新操作;当第一计数值等于第一阈值,刷新命令计数模块产生处于第二电平的刷新地址选择信号,表示要开始对存储器中的多个弱地址信号进行刷新操作;当第一计数值从第一阈值达到第二阈值,说明存储器已经将多个弱地址信号都刷新完毕。此时,第一计数值会复位,指示刷新命令计数模块开始进行下一轮的计数工作。这样,在正常的刷新操作中可以增加对弱地址信号的刷新次数。It should be noted that when the first count value is less than the first threshold value, the refresh address selection signal generated by the refresh command counting module is at the first level, and the memory performs a refresh operation on all row address signals; when the first count value is equal to the first threshold value, the refresh command counting module generates a refresh address selection signal at the second level, indicating that it is time to start refreshing multiple weak address signals in the memory; when the first count value reaches the second threshold value from the first threshold value, it means that the memory has refreshed multiple weak address signals. At this time, the first count value will be reset, indicating that the refresh command counting module will start the next round of counting. In this way, the number of refreshes for weak address signals can be increased in normal refresh operations.
本公开的另一实施例中,参见图17,其示出了本公开实施例提供的一种存储器60的组成结构示意图。如图17所示,该存储器60可以包括前述实施例任一项所述的刷新电路10。In another embodiment of the present disclosure, referring to Fig. 17, it shows a schematic diagram of the composition structure of a memory 60 provided by the embodiment of the present disclosure. As shown in Fig. 17, the memory 60 may include the refresh circuit 10 described in any one of the above embodiments.
在一些实施例中,该存储器60可以包括DRAM。In some embodiments, the memory 60 may include DRAM.
需要说明的是,本公开实施例提高了DDR5中弱单元的刷新频率,通过刷新命令计数模块对外部的刷新命令进行计数,并取出特定数量的刷新命令信号作为刷新地址选择信号;在刷新命令信号小于特定数量之前(刷新地址选择信号处于第一电平),刷新命令计数模块会对刷新地址发生器依次输出的行地址信号进行刷新;在刷新命令信号等于或者超过特定数量时(刷新地址选择信号处于第二电平),刷新命令计数模块会对弱地址发生器依序输出的多个弱地址信号进行刷新。这样,通过控制刷新地址选择信号的电平状态,可以在正常的刷新操作中插入对弱地址信号的刷新,提高对弱地址信号的刷新频率,从而保证存储器的数据完整性。 It should be noted that the embodiment of the present disclosure improves the refresh frequency of weak cells in DDR5, counts external refresh commands through a refresh command counting module, and takes out a specific number of refresh command signals as refresh address selection signals; before the refresh command signal is less than a specific number (the refresh address selection signal is at the first level), the refresh command counting module will refresh the row address signals output sequentially by the refresh address generator; when the refresh command signal is equal to or exceeds a specific number (the refresh address selection signal is at the second level), the refresh command counting module will refresh multiple weak address signals output sequentially by the weak address generator. In this way, by controlling the level state of the refresh address selection signal, the refresh of the weak address signal can be inserted into the normal refresh operation, and the refresh frequency of the weak address signal can be increased, thereby ensuring the data integrity of the memory.
在本公开实施例中,对于DRAM来说,不仅可以符合DDR、DDR2、DDR3、DDR4、DDR5、DDR6等内存规格,还可以符合LPDDR、LPDDR2、LPDDR3、LPDDR4、LPDDR5、LPDDR6等内存规格,这里不作任何限定。In the embodiments of the present disclosure, for DRAM, it can not only comply with memory specifications such as DDR, DDR2, DDR3, DDR4, DDR5, DDR6, etc., but also comply with memory specifications such as LPDDR, LPDDR2, LPDDR3, LPDDR4, LPDDR5, LPDDR6, etc., without any limitation here.
在本公开实施例中,对于该存储器60,由于其包括前述实施例所述的刷新电路10,从而可以提高弱存储行的刷新频率,进而提升存储器的性能。In the embodiment of the present disclosure, the memory 60 includes the refresh circuit 10 described in the above embodiment, so that the refresh frequency of the weak storage row can be increased, thereby improving the performance of the memory.
以上,仅为本公开的较佳实施例而已,并非用于限定本公开的保护范围。The above are only preferred embodiments of the present disclosure and are not intended to limit the protection scope of the present disclosure.
需要说明的是,在本公开中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。It should be noted that in the present disclosure, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "includes a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element.
上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。The serial numbers of the above-mentioned embodiments of the present disclosure are only for description and do not represent the advantages or disadvantages of the embodiments.
本公开所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。The methods disclosed in several method embodiments provided in the present disclosure can be arbitrarily combined without conflict to obtain new method embodiments.
本公开所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。The features disclosed in several product embodiments provided in the present disclosure can be arbitrarily combined without conflict to obtain new product embodiments.
本公开所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。The features disclosed in several method or device embodiments provided in the present disclosure may be arbitrarily combined without conflict to obtain new method embodiments or device embodiments.
以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。 The above are only specific embodiments of the present disclosure, but the protection scope of the present disclosure is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present disclosure, which should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.
Claims (21)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310026121.2 | 2023-01-09 | ||
| CN202310026121.2A CN118351907A (en) | 2023-01-09 | 2023-01-09 | Refreshing circuit, method and memory |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024148755A1 true WO2024148755A1 (en) | 2024-07-18 |
Family
ID=91812820
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/098294 Ceased WO2024148755A1 (en) | 2023-01-09 | 2023-06-05 | Refresh circuit and method, and memory |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN118351907A (en) |
| WO (1) | WO2024148755A1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119626288B (en) * | 2025-02-13 | 2025-05-30 | 浙江力积存储科技有限公司 | Memory refresh circuit, refresh method and memory |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140085999A1 (en) * | 2012-09-24 | 2014-03-27 | Samsung Electronics Co., Ltd. | Semiconductor memory device having adjustable refresh period, memory system comprising same, and method of operating same |
| US20150162065A1 (en) * | 2013-12-09 | 2015-06-11 | Qualcomm Incorporated | Refresh scheme for memory cells with next bit table |
| CN107958682A (en) * | 2016-10-17 | 2018-04-24 | 爱思开海力士有限公司 | Memory device |
| CN112242160A (en) * | 2019-07-16 | 2021-01-19 | 美光科技公司 | Apparatus and method for tracking row accesses |
| CN114242132A (en) * | 2021-12-15 | 2022-03-25 | 海光信息技术股份有限公司 | Memory refreshing counting method and device and memory controller |
-
2023
- 2023-01-09 CN CN202310026121.2A patent/CN118351907A/en active Pending
- 2023-06-05 WO PCT/CN2023/098294 patent/WO2024148755A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140085999A1 (en) * | 2012-09-24 | 2014-03-27 | Samsung Electronics Co., Ltd. | Semiconductor memory device having adjustable refresh period, memory system comprising same, and method of operating same |
| US20150162065A1 (en) * | 2013-12-09 | 2015-06-11 | Qualcomm Incorporated | Refresh scheme for memory cells with next bit table |
| CN107958682A (en) * | 2016-10-17 | 2018-04-24 | 爱思开海力士有限公司 | Memory device |
| CN112242160A (en) * | 2019-07-16 | 2021-01-19 | 美光科技公司 | Apparatus and method for tracking row accesses |
| CN114242132A (en) * | 2021-12-15 | 2022-03-25 | 海光信息技术股份有限公司 | Memory refreshing counting method and device and memory controller |
Also Published As
| Publication number | Publication date |
|---|---|
| CN118351907A (en) | 2024-07-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN115295040B (en) | Control circuit, control method and semiconductor memory | |
| US20040237023A1 (en) | Memory device and memory error correction method | |
| US20250069672A1 (en) | Column control circuits and storage devices | |
| US10733049B2 (en) | Semiconductor device and error management method | |
| JP4627411B2 (en) | Memory device and memory error correction method | |
| KR20060088036A (en) | Memory circuit | |
| WO2024148755A1 (en) | Refresh circuit and method, and memory | |
| CN115223651B (en) | Counting circuit, semiconductor memory and counting method | |
| IL181245A (en) | Register file apparatus and method incorporating read-after-write blocking using detection cells | |
| CN115223615A (en) | Decoding circuit, decoding method and semiconductor memory | |
| US7123542B2 (en) | Memory having internal column counter for compression test mode | |
| WO2024148706A1 (en) | Refresh circuit and method, and memory | |
| CN106407037A (en) | Dual-port memory word line control circuit | |
| CN115995246B (en) | Refreshing circuit, refreshing method and semiconductor memory | |
| EP4205112B1 (en) | Sram with advanced burst mode address comparator | |
| CN118711644A (en) | A storage system, storage chip and error checking and clearing method | |
| US20060155940A1 (en) | Multi-queue FIFO memory systems that utilize read chip select and device identification codes to control one-at-a-time bus access between selected FIFO memory chips | |
| CN119229941B (en) | Internal error checking circuit and memory | |
| CN119207510B (en) | Refresh circuit and memory | |
| CN116153353B (en) | Monitoring circuits, statistical methods, and memories | |
| WO2024187568A1 (en) | Command processing circuit and memory | |
| CN116153352B (en) | Monitoring circuits, statistical methods, and memories | |
| US7835197B2 (en) | Integrated semiconductor memory with generation of data | |
| WO2025020454A1 (en) | Refresh control circuit and memory | |
| CN118675576A (en) | Refreshing circuit, memory and refreshing method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23915518 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |