This application claims the priority benefit of Taiwan application serial no. 112122796,filed on Jun. 17, 2023. The entirety of the above-mentioned patent application is hereby incorporated by reference herein and made a part of this specification.
The invention relates to an electronic device and a control method for memory refresh operation thereof, and particularly relates to an electronic device capable of avoiding unnecessary refresh operations and a control method for memory refresh operation thereof.
In a dynamic random access memory, in order to ensure correctness of stored data, memory cells need to perform refresh operations regularly. In the conventional technology, the refresh operations may be divided into two types: an internal self-refresh (SR) operation and an auto-refresh (AR) operation. Regardless of the type of the refresh operation, in the prior art, the refresh operations are performed on all word lines in the memory based on the strictest conditions. Namely, in the conventional technical field, the practice of performing the refresh operations on all word lines regardless of data retentions may cause power consumption due to multiple unnecessary refresh operations, and affect an access bandwidth of the memory, thereby reducing the overall efficiency of the electronic device.
The invention is directed to an electronic device and a control method for memory refresh operation thereof, which are adapted to avoid unnecessary refresh operations of a memory through intelligent refresh operations, reduce power consumption, and improve a performance of the refresh operations. The control method is adapted to be used for both of an internal self-refresh (SR) operation and an auto-refresh (AR) operation.
The invention provides an electronic device including a memory and a controller. The memory includes a plurality of timers, a plurality of buffers and an interrupt signal generator. The buffers are respectively coupled to the timers, and each of the buffers is configured to store at least one word line information, and generate a refresh word line information according to a timing result trigger signal of each corresponding timer. The interrupt signal generator generates an interrupt signal corresponding to an auto-refresh operation according to the timing result trigger signals of the timers, a non-internal self-refresh mode signal and a non-access state. The controller is coupled to the memory, and receives the interrupt signal and transmits an auto-refresh command to the memory according to the interrupt signal to enable the memory to perform the auto-refresh operation.
The invention provides a control method for memory refresh operation including: setting a plurality of buffers and a plurality of timers respectively corresponding to the buffers in a memory; using each buffer to store at least one word line information, and generate a refresh word line information according to a timing result trigger signal of each corresponding timer; generating an interrupt signal corresponding to an auto-refresh operation by the memory according to the timing result trigger signals of the timers, a non-internal self-refresh mode signal and a non-access state; making a controller outside the memory to receive the interrupt signal and transmit an auto-refresh command to the memory according to the interrupt signal to enable the memory to perform the auto-refresh operation.
Based on the above description, the memory of the invention may actively generate the interrupt signal, so that the controller may generate an auto-refresh command according to the interrupt signal, and drive the memory to perform the auto-refresh operation. The memory in the embodiment of the invention includes multiple word line groups, and refresh operations are performed on the different word line groups based on different refresh frequencies, which may avoid unnecessary refresh operations, reduce unnecessary power consumption and improve memory access performance.
Referring to
In the embodiment of the invention, the buffers Q1-QN may respectively correspond to a plurality of different data retentions. For example, the buffer Q1 may be used to store related word line information of the word line group with the lowest data retention; the buffer Q2 may be used to store related word line information of the word line group with the secondary lowest data retention. Deduced by analogy, the buffer QN may be used to store the related word line information of the word line group with the highest data retention.
The timers TM1-TMN may be respectively set corresponding to the buffers Q1-QN. The timers TM1-TMN may respectively have a plurality of different timing target values. Taking the timer TM1 as an example, in response to a timing value of the timer TM1 being equal to the corresponding timing target value, the timer TM1 may generate a timing result trigger signal TR1 to enable the corresponding buffer Q1 to generate corresponding refresh word line information RWL1. In addition, taking the timer TMN as an example, in response to the timing value of the timer TMN being equal to the corresponding timing target value, the timer TMN generates a timing result trigger signal TRN to enable the corresponding buffer QN to generate corresponding refresh word line information RWLN.
The memory 110 may perform an internal self-refresh (SR) operation for the memory cells on the corresponding word lines according to the refresh word line information RWL1-RWLN.
The word line information in each of the buffers Q1-QN is stored in a queue. Therefore, each time in response to the timers TM1-TMN triggering the timing result trigger signals TR1-TRN (i.e., the timing value is equal to the corresponding timing target value), each of the buffers Q1-QN may output one of the stored at least one word line information according to the timing result trigger signals TR1-TRN triggered by each of the corresponding timers TM1-TMN, so as to generate each of the refresh word line information RWL1-RWLN. Here, if the buffer Q1 corresponds to a word line group with a relatively low data retention, the timer TM1 corresponding to the buffer Q1 has a relatively low timing target value. If the buffer QN corresponds to a word line group with a relatively high data retention, the timer TMN corresponding to the buffer QN has a relatively high timing target value. It may be clearly understood here that the timing result trigger signal TR1 of the timer TM1 may have a relatively high trigger frequency. Therefore, the memory cells on the word line corresponding to the word line information recorded in the buffer Q1 may have a relatively high frequency to execute a refresh operation, and effectively maintain correctness of data. Comparatively, the timing result trigger signal TRN of the timer TMN may have a relatively low trigger frequency. Therefore, the memory cells on the word line corresponding to the word line information recorded in the buffer QN may have a relatively low frequency to execute the self-refresh operation, which may effectively reduce unnecessary power consumption.
The timing target values of the timers TM1-TMN may be set according to data retention time of the word line groups in the corresponding buffers Q1-QN. Each timing target value may be lower than the data retention time of the corresponding word line group. For example, if the data retention time of the word line group is between 60 and 64 ms, the corresponding timing target value may be set to 30 ms.
It should be noted that, in the embodiment of the invention, the interrupt signal generator 111 may generate an interrupt signal INT corresponding to an auto-refresh operation according to the timing result trigger signals TR1-TRN of the timers TM1-TMN, a non-self-refresh mode signal Non_SRM and a non-access state Non-WRT. Where, the interrupt signal generator 111 may learn whether the memory 110 is performing an internal self-refresh operation according to an internal self-refresh mode signal SRM. The interrupt signal generator 111 may learn whether the memory 110 is accessed (data is written or read) according to an access state WRT. The timing result trigger signals TR1-TRN of the timers TM1-TMN may respectively indicate whether a timing action of each of the timers TM1-TMN is in a time-out state. The interrupt signal generator 111 may generate the interrupt signal INT corresponding to the auto-refresh operation in response to at least one of the timers TM1-TMN being suspended in a state that the memory 110 is not performing a self-refresh operation and is not being accessed.
It should be noted that the memory 110 may transmit the actively generated interrupt signal INT to the controller 120 outside the memory 110. The controller 120 may send a refresh command RCMD to the memory 110 according to the interrupt signal INT, so that the memory 110 performs a refresh operation. In the embodiment, the refresh command RCMD is, for example, an auto-refresh command.
In the embodiment, the memory 110 transmits the interrupt signal INT to the controller 120 under the condition that the auto-refresh operation may be performed. The controller 120 may send the auto-refresh command to the memory 110 according to the interrupt signal INT, so that the memory 110 may effectively perform the auto-refresh operation. In this way, the performance of the auto-refresh operation of the memory 110 may be improved, and reliability of data stored in the memory 110 may be effectively maintained.
It should be noted that the controller 120 may be a processor with a computing power outside the memory, or the controller 120 may be a hardware circuit designed through a hardware description language (HDL) or any other digital circuit design methods known to those skilled in the art, and implemented through a field programmable gate array (FPGA), a complex programmable logic device (CPLD) or an application-specific integrated circuit (ASIC).
Referring to
In response to the power of the memory being turned on, according to a refresh operation command CMD, a counter 211 may be activated for counting. Along with the counting operation of the counter 211, the tags corresponding to the word lines 0-8192 in the lookup table 210 may be gradually read out. The related word line information corresponding to the word line whose tag TG is equal to logic 0 may be stored in a first buffer (such as the buffer Q1 of
Referring to
A data terminal D of the flip-flop DFF1 may receive a power supply voltage VDD of logic 1, a clock terminal of the flip-flop DFF1 receives the refresh word line information RWL1, and an output terminal Q of the flip-flop DFF1 is coupled to an input terminal of an inverter IV3, and an output terminal of the inverter IV3 is coupled to a setting terminal SE of the latch LA1. The latch LA1 is a set-reset latch (SR latch). The latch LA1 is composed of NAND gates NA1 and NA2, and an output terminal of the latch LA1 is used to generate the trigger signal RTG1. The delay circuit 331 is coupled to the output terminal of the latch LA1 to delay the trigger signal RTG1, and the delayed trigger signal is further inverted by the inverter IV1 to generate a reset signal, and the reset signal is transmitted to a reset terminal R of the flip-flop DFF1 and a reset terminal RE of the latch LA1.
A data terminal D of the flip-flop DFF2 may receive the power supply voltage VDD of logic 1, a clock terminal of the flip-flop DFF2 receives the refresh word line information RWL2, and an output terminal Q of the flip-flop DFF2 is coupled to an input terminal of an inverter IV4, and an output terminal of the inverter IV4 is coupled to a setting terminal SE of the latch LA2. The latch LA2 is a set-reset latch (SR latch). The latch LA2 is composed of NAND gates NA3 and NA4, and an output terminal of the latch LA2 is used to generate the trigger signal RTG2. The delay circuit 332 is coupled to the output terminal of the latch LA2 to delay the trigger signal RTG2, and the delayed trigger signal is further inverted by the inverter IV2 to generate a reset signal, and the reset signal is transmitted to a reset terminal R of the flip-flop DFF2 and a reset terminal RE of the latch LA2.
In terms of operation details, taking the first trigger signal generating circuit as an example, in response to the refresh word line information RWL1 being triggered according to the time-out state of the timing result trigger signal TR1, the flip-flop DFF1 may generate an output signal. The latch LA1 may set the trigger signal RTG1 according to the output signal of the flip-flop DFF1 and trigger the refresh operation of the corresponding word line.
After a delay time of the trigger signal RTG1, the delay circuit 331 and the inverter IV1 may generate a reset signal according to the trigger signal RTG1, and enable the flip-flop DFF1 and the latch LA1 to perform a reset operation.
The operation details of the second trigger signal generating circuit are similar to those of the first trigger signal generating circuit, which are not repeated here.
Referring to
Where, the timing result trigger signals TR1, TR2 are used to indicate whether the corresponding timers are in the time-out state, and in response to one of the timers being in the time-out state, the logic gate 411 may output logic 1, otherwise output logic 0. The non-internal self-refresh mode signal Non_SRM indicates whether the memory is operating in a non-internal self-refresh mode, and the non-access state Non_WRT indicates whether the memory is not being accessed. In response to the memory being operating in the non-internal self-refresh mode, and operated in a non-read/write mode, the logic gate 412 may output logic 1, otherwise output logic 0.
In the embodiment, the logic gate 411 may be an OR gate, or an equivalent logic circuit, and the logic gates 412 and 413 may be AND gates, or equivalent logic circuits.
Namely, the logic operator 410 outputs the auto-refresh request signal ARQ in response to the memory being operating in the non-internal self-refresh mode and in the non-read/write mode, and there is a timer that has completed the timing action and triggers the timer result trigger signals TR1-TRN.
A data terminal of the flip-flop DFF41 receives the power voltage VDD, and a clock terminal receives the auto-refresh request signal ARQ. In response to the auto-refresh request signal ARQ being triggered, an output terminal of the flip-flop DFF41 may output the interrupt signal INT equal to logic 1. On the other hand, a logic gate 421 in the logic operator 420 may receive the interrupt signal INT and an auto-refresh command ARCMD. The logic gate 421 performs an AND logic operation on the interrupt signal INT and the auto-refresh command ARCMD, and generates a reset signal AR_RST through an inverter IV43. In response to both of the interrupt signal INT and the auto-refresh command ARCMD being logic 1, the flip-flop DFF41 may be reset. The logic gate 421 may be an AND gate, or an equivalent logic circuit.
In the embodiment, the interrupt signal INT in the memory may be sent to an external controller. The controller may send the auto-refresh command ARCMD to the memory according to the interrupt signal INT. The memory may perform an auto-refresh operation according to the auto-refresh command ARCMD. Correspondingly, after the memory receives the auto-refresh (AR) command ARCMD, the interrupt signal INT may be reset to logic 0.
In addition, in
Referring to
Referring to
In the embodiment, the logic circuit 621, the controller 622, and the memories 611-614 are all implemented in the form of chips, and are stacked to form a three-dimensional structure. The single controller 622 may control the refresh operation of the memories 611-614. Control details of the refresh operation have been described in the aforementioned embodiments and implementations, which will not be repeated below.
Referring to
The implementation details of the above-mentioned steps have been described in detail in the aforementioned multiple embodiments and implementations, and details thereof will not be repeated here.
In summary, the memory of the invention may actively generate an interrupt signal to notify the controller when the auto-refresh operation needs to be performed, so that the controller may send an auto-refresh command to enable the memory to effectively execute the auto-refresh operation. In the embodiment of the invention, the memory may group word lines with different data retentions, and perform timing on the multiple word line groups separately to serve as a basis for triggering the refresh operation, so as to avoid the unnecessary refresh operations, which not only saves the power consumption required by the refresh operations but also improves usage performance of the memory.
Number | Date | Country | Kind |
---|---|---|---|
112122796 | Jun 2023 | TW | national |