METHODS FOR ADJUSTING MEMORY DEVICE REFRESH RATES BASED ON MEMORY DEVICE TEMPERATURE, AND RELATED MEMORY DEVICES AND SYSTEMS

Information

  • Patent Application
  • 20200402568
  • Publication Number
    20200402568
  • Date Filed
    June 24, 2019
    4 years ago
  • Date Published
    December 24, 2020
    3 years ago
Abstract
Methods of operating a memory device are disclosed. A method may include determining an operating temperature of a memory bank of a memory device. The method may also include adjusting at least one refresh rate for the memory bank based on the operating temperature of the memory bank. Further, the method may include skipping at least one internal auto refresh of the memory bank in response to the operating temperature being less than or equal to a first threshold temperature. A memory device and an electronic system are also described.
Description
TECHNICAL FIELD

Embodiments of the disclosure relate to adjusting one or more refresh rates of a memory device based on memory device temperature and, more specifically, to adjusting an auto refresh rate and/or a row hammer refresh steal rate of a memory device based on an operating temperature of the memory device and/or an number of activations (“an activation number”) associated with the memory device. Yet more specifically, some embodiments relate to methods for such adjusting, and related memory devices and systems.


BACKGROUND

Memory devices are typically provided as internal, semiconductor, integrated circuits in computers or other electronic systems. There are many different types of memory including volatile and non-volatile memory. Volatile memory may require power to maintain its data (e.g., host data, error data, etc.) and includes random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), synchronous dynamic random access memory (SDRAM), content addressable memory (CAM), and thyristor random access memory (TRAM), among others.


A variety of operations are performed in DRAM devices, each of which affects the rate at which the DRAM device consumes power. One operation that tends to consume power at a substantial rate is a refresh of memory cells in the DRAM device. As is well-known in the art, DRAM memory cells, each of which essentially consists of a capacitor, must be periodically refreshed to retain data stored in the DRAM device. A refresh (also referred to herein as an “auto refresh” or a “normal refresh”) is typically performed by essentially reading data bits from the memory cells in each row of a memory cell array and then writing those same data bits back to the same cells in the row. This refresh is generally performed on a row-by-row basis at a rate needed to keep charge stored in the memory cells from leaking excessively between refreshes. The current standard requires that memory cells be refreshed within a 64 millisecond interval, and, at higher temperatures, memory cells may need to be refreshed within a 32 millisecond interval (e.g., to account for a higher charge leakage rate). Since a refresh operation essentially involves reading data bits from and writing data bits to a large number of memory cells, a refresh operation tends to be a particularly power-hungry operation.


Further, as memory density has increased, intermittent failure has appeared in some memory devices, which devices may experience failures due to repeated access to a particular row of memory cells (e.g., cells coupled to an access line). For example, rows physically adjacent a row being frequently accessed have an increased probability of experiencing data corruption. The repeated access of a particular row can be referred to as a “hammering” event, and the hammering of a row may cause issues such as migration across a passgate, for example. Leakage and parasitic currents caused by the hammering of a row may cause data corruption in a non-accessed physically adjacent row, which may be referred to as a neighbor row or victim row. The resulting corruption issue may be referred to as hammer disturb and/or row hammer disturb, for instance.


The row hammer effect is due to the nature of a memory cell, which may include one transistor and one capacitor. The charge state of a capacitor may determine whether a memory cell stores a “1” or “0” as a binary value. In addition, a large number of memory cells are packed tightly together. The closely packed cells may cause an activated capacitor to have an effect on a charge of an adjacent capacitor, especially when one of the cells is rapidly activated (e.g., a row hammer effect). In addition, the capacitors may have a natural discharge rate and may be rewritten (refreshed) in order to compensate for this discharge.


Some approaches to reduce the adverse effects of row hammering on adjacent rows include refreshing adjacent rows responsive to a determination that a hammering event has occurred. For example, responsive to determining that a particular row has been the target of repeated accesses (e.g., the row has undergone more than a threshold number of accesses within a refresh period), its physically adjacent neighbor rows may be selected for a targeted refresh operation, which may be referred to as a row hammer refresh operation.





BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS


FIG. 1 is a block diagram of a memory device, in accordance with at least one embodiment of the present disclosure.



FIG. 2 depicts a table including example refresh rates for memory device temperatures, and associated multi-bit words for programming the refresh rates of a memory device.



FIG. 3 illustrates a table depicting example refresh rates and associated multi-bit words for programming refresh rates of a low power memory device.



FIG. 4 shows a table illustrating selectable example refresh rate ranges for a memory device, according to various embodiments of the present disclosure.



FIG. 5 illustrates a table showing various example refresh rates and associated settings for a memory device, in accordance with various embodiments of the present disclosure.



FIG. 6 depicts a table including various example refresh rates and settings for a memory device operating at various temperatures, in accordance with various embodiments of the present disclosure.



FIG. 7 depicts an example circuit for implementing a variable refresh skip rate for a memory device, according to various embodiments of the disclosure.



FIG. 8 depicts an AND gate configured to receive an external refresh command and an enable signal, according to various embodiments of the disclosure.



FIG. 9 is a timing diagram including a number of internal refresh commands, in accordance with various embodiments of the present disclosure.



FIG. 10 depicts an example controller for generating a row hammer refresh steal rate for a memory device, according to one or more embodiments of the present disclosure.



FIG. 11 shows a table depicting various row hammer refresh steal rates for a number of asserted active signals received at a memory device, in accordance with various embodiments of the present disclosure.



FIG. 12 depicts an example timing diagram illustrating possible values of multi-bit words and associated activity levels of a memory device, according to one or more embodiments of the present disclosure.



FIG. 13 depicts an example controller for setting a row hammer refresh steal rate of a memory device, according to one or more embodiments of the present disclosure.



FIG. 14 depicts a table illustrating example bits of a multi-bit word that may be selected for various temperature ranges of a memory device, in accordance with various embodiments of the present disclosure.



FIG. 15 is a flowchart of an example method of operating a memory device, in accordance with various embodiments of the present disclosure.



FIG. 16 is a simplified block diagram of an example memory device implemented according to one or more embodiments described herein.



FIG. 17 is a simplified block diagram of an example electronic system implemented according to one or more embodiments described herein.





DETAILED DESCRIPTION

As memory density increases, the amount of power required to perform auto refreshers (also referred to herein as “normal refreshes”) and/or row hammer refreshes (RHRs) on a memory device also increases. Various embodiments of the disclosure relate to adjusting auto refresh rates for memory devices. More specifically, in some embodiments, an auto refresh rate of one or more memory banks of a memory device may be independently adjusted based on an operating temperature of the memory device. Alternatively or additionally, according to some embodiments, an auto refresh skip rate for the one or more memory banks may be adjusted. For example, an auto refresh skip rate for a memory bank may be adjusted based an operating temperature of the memory bank and/or an auto refresh rate of the memory bank.


Further, various embodiments of the disclosure relate to adjusting row hammer refresh rates (also referred to herein as “steal rates” or “row hammer refresh steal rates”) for memory devices. More specifically, according to some embodiments, row hammer refresh rates for one or more memory banks of a memory device may be independently adjusted based on temperature of the memory device and an amount of activity (e.g., a number of row accesses) associated with the one or more memory banks. Yet more specifically, according to some embodiments, a temperature of a memory bank may be determined and a number of active signals associated with a memory bank (e.g., a number of activations at the memory bank) may be counted (e.g., during a time interval). Further, a row hammer refresh rate of the memory bank (e.g., for a subsequent time interval) may be adjusted based on the temperature and the number of active signals.


Various embodiments, as disclosed more fully herein, may decrease power consumption and processing overhead of a memory device without substantially decreasing performance and/or reliability of the memory device. More specifically, at least some embodiments may eliminate unnecessary refresh operations, thus reducing power consumption while still mitigating undesirable effects (e.g., leakage and/or row hammer effects).



FIG. 1 is a block diagram of a memory device 100, in accordance with one or more embodiments of the present disclosure. Memory device 100 may include, for example, a DRAM (dynamic random access memory), a SRAM (static random access memory), a SDRAM (synchronous dynamic random access memory), a DDR SDRAM (double data rate DRAM), a SGRAM (synchronous graphics random access memory), or content addressable memory (CAM). Memory device 100, which may be integrated on a semiconductor chip, may include a memory cell array 102.


In the embodiment of FIG. 1, memory cell array 102 is shown as including eight memory banks BANK0-7. More or fewer banks may be included in memory cell array 102 of other embodiments. Each memory bank includes a number of word lines WL, a number of bit lines BL and /BL, and a number of memory cells MC arranged at intersections of the number of word lines WL and the number of bit lines BL and /BL. The selection of a word line WL may be performed by a row decoder 104 and the selection of the bit lines BL and /BL may be performed by a column decoder 106. In the embodiment of FIG. 1, row decoder 104 may include a respective row decoder for each memory bank BANK0-7, and column decoder 106 may include a respective column decoder for each memory bank BANK0-7.


Bit lines BL and /BL are coupled to a respective sense amplifier SAMP. Read data from bit line BL or /BL may be amplified by sense amplifier SAMP, and transferred to read/write amplifiers 107 over complementary local data lines (LIOT/B), transfer gate (TG), and complementary main data lines (MIOT/B). Conversely, write data outputted from read/write amplifiers 107 may be transferred to sense amplifier SAMP over complementary main data lines MIOT/B, transfer gate TG, and complementary local data lines LIOT/B, and written in memory cell MC coupled to bit line BL or /BL.


Memory device 100 may be generally configured to be receive various inputs (e.g., from an external controller) via various terminals, such as address terminals 110, command terminals 112, clock terminals 114, data terminals 116, and data mask terminals 118. Memory device 100 may include additional terminals such as power supply terminals 120 and 122.


During a contemplated operation, one or more command signals COM, received via command terminals 112, may be conveyed to a command decoder 150 via a command input circuit 152. Command decoder 150 may include a circuit configured to generate various internal commands via decoding one or more command signals COM. Examples of the internal commands include an active signal ACT, a read/write signal R/W, and a refresh signal AREF. In some embodiments, refresh signal AREF may include and/or may be based on an external refresh command Aref_ext (see e.g., FIGS. 7 and 8).


Further, one or more address signals ADD, received via address terminals 110, may be conveyed to an address decoder 130 via an address input circuit 132. Address decoder 130 may be configured to supply a row address XADD to row decoder 104 and a column address YADD to column decoder 106. Row address XADD, which may be supplied to a refresh control circuit 140, may be a signal including multiple bits (which may be transmitted in series or in parallel) and may correspond to a specific row of a memory bank (e.g., the memory bank activated by, for example, active signal ACT).


Active signal ACT may include a pulse signal that is activated in response to a command signal COM indicating row access (e.g., an active command). In response to active signal ACT, row decoder 104 of a specified bank address may be activated. As a result, the word line WL specified by row address XADD may be selected and activated.


Read/write signal R/W may include a pulse signal that is activated in response to a command signal COM indicating column access (e.g., a read command or a write command). In response to read/write signal R/W, column decoder 106 may be activated, and the bit line BL specified by column address YADD may be selected.


In response to active signal ACT, a read signal, a row address XADD, and a column address YADD, data may be read from memory cell MC specified by row address XADD and column address YADD. The read data may be output via a sense amplifier SAMP, a transfer gate TG, read/write amplifier 107, an input/output circuit 162, and data terminal 116. Further, in response to active signal ACT, a write signal, a row address XADD, and a column address YADD, write data may be supplied to memory cell array 102 via data terminal 116, input/output circuit 162, read/write amplifier 107, transfer gate TG, and sense amplifier SAMP. The write data may be written to memory cell MC specified by row address XADD and column address YADD.


Refresh signal AREF may include a pulse signal that is activated when a command signal COM includes an auto refresh command (e.g., external refresh command Aref_ext (see e.g., FIGS. 7 and 8)). Refresh signal AREF may be supplied to refresh control circuit 140, which is also configured to receive active signal ACT and row address XADD. In some embodiments, refresh control circuit 140 may also be configured to receive temperature data indicative of an operating temperature of memory device 100. More specifically, for example, refresh control circuit 140 may be configured to receive temperature data from one or more sensors (e.g., temperature sensors) 151 and/or one or more registers (e.g., a mode register (MR)) 153 of memory device 100.


Refresh control circuit 140 is configured to provide a row address RXADD that specifies a particular word line to be refreshed. In some examples, refresh control circuit 140 may provide row address RXADD responsive to sequential refresh commands received from an external controller (not shown in FIG. 1). In some embodiments, refresh control circuit 140 may include a controller and/or a circuit configured to skip one or more auto refreshes during a time interval. Further, refresh control circuit 140 may include a controller configured to “steal” or otherwise preempt a refresh command received from the external controller and replace that refresh command with a row hammer refresh command. In this example, refresh control circuit 140 may provide row address RXADD responsive to a row hammer refresh event.


Clock signals CK and /CK may be received via clock terminals 114. A clock input circuit 170 may generate internal clock signals ICLK based on clock signals CK and /CK. Internal clock signals ICLK may be conveyed to various components of memory device 100, such as command decoder 150 and an internal clock generator 172. Internal clock generator 172 may generate internal clock signals LCLK, which may be conveyed to input/output circuit 162 (e.g., for controlling the operation timing of input/output circuit 162). Further, data mask terminals 118 may receive one or more data mask signals DM. When data mask signal DM is activated, overwrite of corresponding data may be prohibited.



FIG. 2 is a table 200 depicting example refresh rates for example memory device temperatures, and associated multi-bit words for programming (e.g., via a mode register (MR)) the refresh rates of a memory device (e.g., a DDRS). As shown in table 200, for memory device temperatures around 85° Celsius (C) or less, a refresh rate of a memory device (e.g., memory device 100 of FIG. 1) may be equal to 1X, wherein X is a default refresh rate (e.g., such that a refresh occurs every 3.9 microseconds). Further, for memory device temperatures around or above 85° C., a refresh rate of the memory device may be increased to 2X (e.g., a refresh occurs every 1.95 microseconds). Although a refresh rate of a memory device may be increased at higher temperatures (e.g., temperatures greater than 85° C.), in this example, refresh rates are not decreased at lower temperatures (e.g., temperatures around or less than 85° C.). It is noted that in this example, the refresh rates are set by an external controller (e.g., a controller external to memory device 100 of FIG. 1).



FIG. 3 illustrates another table 300 depicting example refresh rates and associated multi-bit words for programming (e.g., via a mode register) refresh rates of a low power (LP) memory device (e.g., LP4). As shown in table 300, the LP memory device may be set to one of five (i.e., 1 of 5) refresh rates tREFi (i.e., a refresh operation occurring every 15.6 microseconds, 7.8 microseconds, 3.9 microseconds, 1.95 microseconds, or 0.975 microseconds). It is noted that in this example, the refresh rates are set by an external controller (e.g., a controller external to memory device 100 of FIG. 1).


Various embodiments of the disclosure relate to programming one or more settings of a memory device to adjust an internal refresh rate of the memory device, a number of wordlines selected for each refresh operation performed by the memory device, and/or a number of a refresh operations to be skipped (i.e., for every X number of refresh commands). In other words, a memory device may be programmed to operate in one of a number of modes (e.g., via one or more internal settings (e.g., register settings)). In comparison to conventional devices, systems, and/or methods, which may adjust a refresh rate (e.g., auto refresh and row hammer refresh rate) based on a signal from an external controller (i.e., external to a memory device), various embodiments may include programming one or more settings internal to a memory device that may allow the memory device to adjust one or more operational rates (e.g., auto refresh rate, auto refresh skip rate, and/or row hammer refresh rate) based on a temperature of the memory device. In some embodiments, one or more settings may be programmed via a test mode fuse. For example, according to some embodiments, an internal setting, referred to herein as “test mode fuse refresh range” (“tmfzRefRange”) may be set to either a logic 1 or a logic 0. Based on the value of tmfzRefRange, a refresh rate range may be set. For example, with reference to a table 400 illustrated in FIG. 4, if tmfzRefRange is set to 0, a refresh rate range may be, for example, 32˜64 milliseconds, and a number of wordlines selected for each refresh may be set to 8. Further, if tmfzRefRange is set to 1, a refresh rate range may be, for example, 64˜128 milliseconds, and a number of wordlines selected for each refresh may be set to 4.


Further, according to various embodiments, another internal setting, referred to herein as “test mode fuse refresh rate” (“tmfzRefRate”) may be set to either a logic 1 or a logic 0. Based on the value of tmfzRefRate and tmfzRefRange, a default refresh rate may be set. For example, with reference to table 500 shown in FIG. 5, if tmfzRefRate and tmfzRefRange are both set to 0, a refresh rate may be, for example, 32 milliseconds, and a number of wordlines selected for each refresh operation may be set to 8. Further, in this example, no refreshes are skipped (e.g., for every 8 refresh commands, 8 refreshes are executed). Further, if tmfzRefRate is set to 1 and tmfzRefRange are is set to 0, a refresh rate may be, for example, 64 milliseconds, and a number of wordlines selected for each refresh operation may be set to 8. Further, in this example, 1 of 2 refreshes are skipped (e.g., for every 8 refresh commands, 4 refreshes are executed).


With continued reference to table 500, if tmfzRefRate is set to 0 and tmfzRefRange is set to 1, a refresh rate may be, for example, 64 milliseconds and a number of wordlines selected for each refresh operation may be set to 4. Further, in this example, no refreshes are skipped (e.g., for every 8 refresh commands, 8 refreshes are executed). Further, if tmfzRefRate and tmfzRefRange are both set to 1, a refresh rate may be, for example, 128 milliseconds, and a number of wordlines selected for each refresh operation may be 4. Further, in this example, 1 of 2 refreshes are skipped (e.g., for every 8 refresh commands, 4 refreshes are executed).


As noted above, various embodiments disclosed herein relate to adjusting one or more refresh rates (e.g., auto refresh rate and/or a row hammer refresh rate) of a memory device based on a temperature of the memory device. FIG. 6 is a table 600 depicting various refresh rates and settings for a memory device at various temperatures. For example, at a first temperature range (e.g., 85° C.>=T>60° C.), tmfzRefRange and tmfzRefRate may be both set to 0, a refresh rate may be 32 milliseconds, and a number of wordlines selected for each refresh operation may be 8. Further, in this example, no refreshes are skipped (e.g., for every 8 refresh commands, 8 refreshes are executed). As another example, at the first temperature range (e.g., 85° C.>=T>60° C.), tmfzRefRange may be set to 0 and tmfzRefRate may be set to 1, a refresh rate may be 64 milliseconds, and a number of wordlines selected for each refresh operation may be 8. Further, in this example, 1 of 2 refreshes are skipped (e.g., for every 8 refresh commands, 4 refreshes are executed).


With continued reference to the first temperature range (e.g., 85° C.>=T>60° C.), in another example, tmfzRefRange may be set to 1 and tmfzRefRate may be set to 0, a refresh rate may be 64 milliseconds, and a number of wordlines selected for each refresh operation may be 4. Further, in this example, no refreshes are skipped. Further, as another example, at the first temperature range (e.g., 85° C.>=T>60° C.), tmfzRefRange and tmfzRefRate may be both set to 1, a refresh rate may be 128 milliseconds, and a number of wordlines (WL) selected for each refresh operation may be 4. Further, in this example, 1 of 2 refreshes are skipped.


For example, at a second temperature range (e.g., 60° C.>=T>45° C.), tmfzRefRange and tmfzRefRate may be both set to 0, a refresh rate may be 48 milliseconds, and a number of wordlines selected for each refresh operation may be 8. Further, in this example, 1 of 3 refreshes are skipped. Further, at the second temperature range (e.g., 60° C.>=T>45° C.), in another example, tmfzRefRange may be set to 0 and tmfzRefRate may be set to 1, a refresh rate may be 96 milliseconds, and a number of wordlines selected for each refresh operation may be 8. Further, in this example, 2 of 3 refreshes are skipped.


With continued reference to the second temperature range (e.g., 60°>=T >)45°,as yet another example, tmfzRefRange may be set to 1 and tmfzRefRate may be set to 0, a refresh rate may be 96 milliseconds, and a number of wordlines selected for each refresh operation may be 4. Further, in this example, 1 of 3 refreshes are skipped. Further, at the second temperature range (e.g., 60° C. >=T>45° C.), as yet another example, tmfzRefRange and tmfzRefRate may be both set to 1, and a refresh rate may be 192 milliseconds, and a number of wordlines selected for each refresh operation may be 4. Further, in this example, 2 of 3 refreshes are skipped.


Moreover, at a third temperature range (e.g., 45° C.>=T), tmfzRefRange and tmfzRefRate may both be set to 0, a refresh rate may be 64 milliseconds, and a number of wordlines selected for each refresh operation may be 8. Further, in this example, 1 of 2 refreshes are skipped. Further, as another example, at the third temperature range (e.g., 45° C.>=T), tmfzRefRange may be set to 0 and tmfzRefRate may be set to 1, a refresh rate may be 128 milliseconds, and a number of wordlines selected for each refresh operation may be 8. Further, in this example, 3 of 4 refreshes are skipped.


With continued reference to the third temperature range (e.g., 45° >=T), in another example, tmfzRefRange may be set to 1 and tmfzRefRate may be set to 0, a refresh rate may be 128 milliseconds, and a number of wordlines selected for each refresh operation may be 4. Further, in this example, 1 of 2 refreshes are skipped. Further, at the third temperature range (e.g., 45° C. >=T), as yet another example, tmfzRefRange and tmfzRefRate may both be set to 1, a refresh rate may be 256 milliseconds, and a number of wordlines selected for each refresh operation may be 4. Further, in this example, 3 of 4 refreshes are skipped.


It is noted that the temperature values, refresh rates, skip rates, and number of selected wordlines disclosed above with reference to FIG. 4-6 are provided as examples, and the disclosure is not limited to any actual values. Rather, other temperature values, refresh rates, skip rates, and/or number of selected wordlines are within the scope of the disclosure.


In various embodiments, a memory device may be programmed (e.g., via one or more internal settings) to operate in one of a number of modes, wherein each mode may be associated with a different auto refresh skip rate. For example, in a first mode, 1 of 3 (or 4 of 12) refresh operations may be skipped. In a second mode, 1 of 2 (or 6 of 12) refresh operations may be skipped. In a third mode, 2 of 3 (or 8 of 12) refresh operations may be skipped, and in a fourth mode, 3 of 4 (or 9 of 12) refresh operations may be skipped.



FIG. 7 depicts an example circuit 700 for implementing a variable refresh skip rate for a memory device, according to various embodiments of the disclosure. In some embodiments, each memory bank of a memory device (e.g., device 100 of FIG. 1) may include a dedicated circuit 700. In other embodiments, circuit 700 may be associated with more than one memory bank of a memory device. For example, refresh control circuit 140 of FIG. 1 may include circuit 700. FIG. 7 further depicts a table 701 illustrating various modes (i.e., Mode A-Mode D) and associated skip rates.


Circuit 700 includes a counter 702, a multiplexer 704, a comparator block 706, and a flip-flop 708. As illustrated, counter 702, which may include an N bit (e.g., 4 bit) counter, is configured to receive a refresh command Aref_ext (e.g., from an external controller) and a reset signal Reset_n. In some embodiments, refresh command Aref_ext may include refresh signal AREF shown in FIG. 1.


An output of counter 702 is coupled to each of multiplexer 704 and comparator block 706. As described more fully below, each of multiplexer 704 and comparator block 706 may be configured based a mode of operation of an associated memory device. An output of comparator block 706, which is configured to generate reset signal Reset_n, is coupled to an input of counter 702. Further, an output of multiplexer 704 is coupled to flip-flop 708, which is configured to generate an enable signal Enable.


During a contemplated operation of circuit 700, counter 702 is configured to generate a count <3:0>, which is incremented for each received refresh command Aref_ext. Count <3:0> may be conveyed to multiplexer 704 and comparator block 706. If the value of count <3:0> is equal to the value of multiplexer 704, multiplexer 704 may generate a pulse signal (e.g., a low pulse signal), which may be received at flip-flop 708. As will be appreciated, a pulse signal received at flip-flop 708 may cause flip-flop 708 to generate a high enable signal Enable. Similarly, if the value of count <3:0>is equal to the value of comparator block 706, comparator block 706 may generate a pulse signal (e.g., a low pulse signal). In response to a pulse signal generated by comparator block 706, counter 706 may be reset via reset signal Reset_n.


Values of multiplexer 704 and comparator block 706 may be set based on a desired mode of operation (e.g., Mode A, Mode B, Mode C, and Mode D shown in table 701). In other words, a value of multiplexer 704 and a value of comparator block 706 may be set based on a desired auto refresh skip rate (e.g., skip 1 of 3, skip 2 of 3, skip 1 of 4, skip 2 of 4, skip 3 of 4, skip 4 of 12, skip 6 of 12, skip 8 of 12, skip 9 of 12, etc.). For example, a value of multiplexer 704 may be set to a number of refreshes to skip (i.e., for a number of desired cycles in a refresh interval). Further, a value of comparator block 706 may be set to the number of desired cycles in the refresh interval. For example, to skip 4 of 12 (i.e., skip 4 refresh operations for every 12 refresh commands; Mode A), a value of multiplexer 704 may be set to 4 (e.g., “0100”), and a value of comparator block 706 may be set to 12 (e.g., “1100”). To skip 6 of 12 (i.e., skip 6 refresh operations for every 12 refresh commands; Mode B), a value of multiplexer 704 may be set to 6 (e.g., “0110”), and a value of comparator block 706 may be set to 12 (e.g., “1100”). To skip 8 of 12 (i.e., skip 8 refresh operations for every 12 refresh commands; Mode C), a value of multiplexer 704 may be set to 8 (e.g., “1000”), and a value of comparator block 706 may be set to 12 (e.g., “1100”). To skip 9 of 12 (i.e., skip 9 refresh operations for every 12 refresh commands; Mode D), a value of multiplexer 704 may be set to 9 (e.g., “1001”), and a value of comparator block 706 may be set to 12 (e.g., “1100”). As another example, to skip 1 of 3 (i.e., skip 1 refresh operations for every 3 refresh commands), a value of multiplexer 704 may be set to 1 (e.g., “0001”), and a value of comparator block 706 may be set to 3 (e.g., “0011”). As yet another example, to skip 3 of 4 (i.e., skip 3 refresh operations for every 4 refresh commands), a value of multiplexer 704 may be set to 3 (e.g., “0011”), and a value of comparator block 706 may be set to 4 (e.g., “0100”).



FIG. 8 depicts an AND gate 800 configured to receive external refresh command Aref_ext and Enable signal. In response to receipt of an asserted external refresh command Aref_ext and an asserted Enable signal, an internal refresh command Aref_internal may be asserted to execute a refresh command. If Enable signal is low upon receipt of an asserted external refresh command Aref_ext, internal refresh command Aref_internal may be low, and thus a refresh operation may be skipped.


An example operation of circuit 700 and AND gate 800 will now be described with reference to FIG. 9, which illustrates a timing diagram 900 including various internal refresh commands, counter values, and enable signal Enable. In this example, counter 702 is a 4-bit counter, and a mode of a memory device is selected such that 4 of 12 refresh commands are skipped. Thus, in this example, a value of multiplexer 704 is set to 4 (i.e., “0100”), and a value of comparator block 706 is set to 12 (i.e., “1100”).


Initially, counter 704 includes a cnt <3:0> of 0000, and thus neither multiplexer 702 nor comparator block 706 generates a pulse (e.g., a low pulse). Accordingly, counter 702 is not reset, enable signal Enable is low, and therefore refresh signal 910 received while cnt <3:0>is 0000 may be skipped. Continuing with this example, upon receipt of refresh signal 910, cnt <3:0>of counter 702 may be incremented to 0001, and thus neither multiplexer 704 nor comparator block 706 generates a pulse. Accordingly, counter 702 is not reset, enable signal Enable is low, and therefore refresh signal 912 received while cnt <3:0>is 0001 may be skipped. Further, upon receipt of refresh signal 912, cnt <3:0>of counter 702 may be incremented to 0010, and thus neither multiplexer 704 nor comparator block 706 generates a low pulse. Accordingly, counter 702 is not reset, enable signal Enable is low, and therefore refresh signal 914 received while cnt <3:0>is 0010 may be skipped. Upon receipt of refresh signal 914, cnt <3:0>of counter 702 may be incremented to 0011, and thus neither multiplexer 704 nor comparator block 706 generates a low pulse. Accordingly, counter 702 is not reset, enable signal Enable is low, and therefore refresh signal 916 received while cnt <3:0>is 0011 may be skipped.


Upon receipt of refresh signal 916, cnt <3:0>of counter 702 may be incremented to 0100. In this example, counter 702 is not reset; however multiplexer 704 generates a pulse (e.g., a low pulse). Accordingly, enable signal Enable transitions high, and therefore refresh signal 918 received while cnt <3:0>is 0100 is not skipped. Further, for each subsequent refresh signal (i.e., refresh signal 920, refresh signal 922, refresh signal 924, and refresh signal 926) prior to counter 702 incrementing to 1100, enable signal Enable may be high, and therefore each subsequent refresh signal (i.e., refresh signal 920, refresh signal 922, refresh signal 924, and refresh signal 926) may not be skipped.


Upon receipt of refresh signal 926, cnt <3:0>of counter 702 may be incremented to 1100, and thus comparator block 706 may generate a pulse (e.g., a low pulse), which may reset counter 702. As illustrated, flip-flop 708 is configured to receive reset signal Reset n, and thus the pulse generated by comparator block 706 may reset flip-flop 708 and enable signal Enable may transition low.


As noted above, some embodiments of the disclosure relate to setting a row hammer refresh steal rate for a memory device based on a temperature of the memory device and/or an amount of activity at the memory device. FIG. 10 depicts an example controller 1000 for setting a steal rate of memory device, according to one or more embodiments of the present disclosure. In some embodiments, each memory bank of a memory device may include a dedicated controller 1000. In other embodiments, controller 1000 may be associated with more than one memory bank of a memory device. For example, refresh control circuit 140 of FIG. 1 may include controller 1000.


Controller 1000 includes a counter 1002, a selector (also referred to herein as a “judge”) 1004, and a steal rate selector 1006. According to some embodiments, counter 1002, which may be configured to receive an active signal ACT and a reset signal Reset, may count a number of asserted active signals ACT (e.g., receive at a memory bank) during a sample period. In some embodiments, counter 1002 may be coupled to registers (not shown in FIG. 10) that store row addresses and may be configured to count a number of times a number of rows of a memory bank have been accessed.


Based on a number of received asserted active signals, selector 1004 may determine an activity level of the memory device, and more specifically, a memory bank of the memory device. The determined activity level may be used by steal rate selector 1006 to select a row hammer refresh steal rate.


As will be appreciated, a maximum number of asserted active signals may occur during a refresh interval tREFi. For example, during a single refresh interval tREFi, a maximum number of asserted active signals may be 98. As other examples, during five refresh intervals (i.e., 5 tREFi), a maximum number of asserted active signals may be 490, and during ten refresh intervals (i.e., 10 tREFi), a maximum number of asserted active signals may be 980. Further, according to some embodiments, a reference number of active signals for one or more refresh intervals (e.g., 1 tREFi, 5 tREFi, 10 tREFi, etc.) may be determined, wherein the reference number is a percentage (e.g., 10%, 20%, 30%) of the maximum number of asserted active signals for the refresh interval. In some embodiments, if a number of received asserted active signals for a refresh interval is less than a reference number for the time interval, a row hammer refresh steal rate may be decreased, and in some embodiments, row hammer refresh operations may be stopped (e.g., for a time period) (i.e., if the number of received asserted active signals for the refresh interval is less than the reference number).


Further, in some embodiments, a row hammer refresh steal rate may be dynamically adjusted based on a number of received active signals during a refresh interval relative to the maximum number of asserted active signals for the refresh interval. For example, if a number of received active signals during a refresh interval is less than ½ of the maximum number of asserted active signals for the refresh interval, a steal rate may be reduced to, for example, ½ of a default steal rate. As another example, if a number of received active signals during a refresh interval is less than ¼ of the maximum number of asserted active signals for the refresh interval, a steal rate may be reduced to, for example, ¼ of a default steal rate. According to various embodiments, a row hammer refresh steal rate for a memory bank may be defined (e.g., set and/or adjusted) via one or more registers (e.g., a mode register) associated with the memory bank.


With reference to FIG. 11, a table 1100, depicting various row hammer refresh steal rates for a number of received asserted active signals, is illustrated. As depicted in table 1100, in response to a number of asserted active signals being less than approximately 64 for a time period (e.g., 5 tREFI), an activity level may be determined (e.g., “Ultra Low”), and a steal rate may be set to (e.g., reduced to) 0X (e.g., via steal rate selector 1006 of FIG. 10), wherein X is a default steal rate. As another example, in response to a number of asserted active signals being between approximately 64 and 128 for the time period (e.g., 5 tREFI), the activity level may be determined (e.g., “Low”), and a steal rate may be set to (e.g., reduced to) 1/4X (e.g., via steal rate selector 1006 of FIG. 10). Further, in response to a number of asserted active signals being between approximately 128 and 256 for the time period (e.g., 5 tREFI), the activity level may be determined (e.g., “Medium”), and a steal rate may be set to (e.g., reduced to) 1/2X (e.g., via steal rate selector 1006 of FIG. 10). As yet another example, in response to a number of asserted active signals being between approximately 256 or greater for the time period (e.g., 5 tREFI), the activity level may be determined (e.g., “High”), and a steal rate may be set to 1X (e.g., via steal rate selector 1006 of FIG. 10). In these embodiments, counter 1002 of FIG. 10 may be reset via a reset signal Reset (e.g., via control logic) (e.g., at the end of a time interval, such as 1 tREFi, 5 tREFi, 10 tREFi, etc.).


As will be appreciated, bits <8:6> of a binary number (i.e., at least an 8 bit number) may be used to represent decimal numbers 64 to 255. According to some embodiments, counter 1002 (of FIG. 10) may counter bits <8:6> of a binary number, and these bits may be used by selector 1004 to identify an amount of activity. For example, FIG. 12 depicts an example timing diagram 1200 illustrating values of counter bit Q<6> (depicted via a waveform 1202), counter bit Q<7> (depicted via a waveform 1204), and counter bit Q<8> (depicted via a waveform 1206). As shown in timing diagram 1200, if each of counter bits Q<6>, Q<7>, and Q<8> are low, the number of received asserted active signals is less than 64 (e.g., for a time period), and the activity level (i.e., the amount of activity) may be “Ultra Low.” Further, if bit Q<6> is high and each of bits Q<7> and Q<8> are low, the number of received asserted active signals is between 64 and 128 (e.g., for the time period), and the activity level may be “Low.” Moreover, if bit Q<7> is high and bit Q<8> is low, the number of received asserted active signals is between 128 and 256 (e.g., for the time period), and the activity level may be “Medium.” In addition, if bit Q<8> is high, the number of received asserted active signals is greater than 256 (e.g., for the time period), and the activity level may be “High.” As noted above, based on the activity level of a memory bank, a steal rate of the memory bank may be set via (e.g., via steal rate selector 1006).


According to some embodiments, a row hammer refresh steal rate of a memory device be adjusted based on a temperature of the memory device. In some examples (e.g., including mobile DRAM), as disclosed herein, a refresh rate (e.g., an auto refresh rate) may be decreased at lower temperatures (e.g., below 85° C.). However, it may still be necessary to perform a certain number of row hammer refresh operations (e.g., due to an activity level of a memory device). Thus, in some embodiments, a row hammer refresh steal rate may be increased at lower temperatures, and therefore, in these embodiments, although an auto refresh rate may be decreased, and adequate number of row hammer refresh operations may still be performed.


In some embodiments, a row hammer fresh steal rate may be defined (e.g., set and/or adjusted) based on an operating temperature of a memory device and a level of activity of the memory device. More specifically, for example, in some embodiments, temperature data of a memory device may be read from, for example, a mode register (e.g., mode register 4 (MR4)) of the memory device. Further, the temperature data may be used to select a subset of bits of a number of counters bits (i.e., from a multi-bit word), and the subset of bits may be used to determine a row hammer refresh steal rate. In these embodiments, although an auto refresh rate is decreased at low temperatures, a row hammer refresh steal rate may be increased due to a lower threshold for activity levels.



FIG. 13 depicts an example controller 1300 for generating a row hammer refresh steal rate of a memory device, according to one or more embodiments of the present disclosure. In some embodiments, each memory bank of a memory device may include a dedicated controller 1300. In other embodiments, controller 1300 may be associated with more than one memory bank of a memory device. For example, refresh control circuit 140 of FIG. 1 may include controller 1300.


Controller 1300 includes a count selector 1302, a selector (also referred to herein as a “judge”) 1304, and a steal rate selector 1306. Count selector 1302 may be configured to receive a multi-bit word. More specifically, count selector 1302 may be configured to receive counter bits Q<10:4> from a counter of the memory device configured to count a number of asserted active signals received at the memory device.


Further, count selector 1302 may be configured to receive data (e.g., a number of bits) from a mode register (e.g., mode register 4 (MR4)) that are indicative of a temperature of the memory device. More specifically, for example, count selector 1302 may receive mode register bits MR4<2:0>. Further, based on the bits of MR4<2:0>, a subset of bits of the counter bits Q may be selected. For example, if the bits of MR4<2:0> indicate that the memory device is at a first temperature, a steal rate for the memory device may be based on a first number of bits of Q (e.g., Q<7:5>), which may be represented by X<2:0>. Further, if the bits of MR4<2:0> indicate that the memory device is at a second, different temperature, a steal rate for the memory device may be based on a second, different number of bits of Q (e.g., Q<10:8>), which may be represented by X<2:0>.



FIG. 14 depicts an example table 1400 illustrating example counter bits Q that may be selected for various temperature ranges of a memory device. For example, if the bits of MR4<2:0> indicate that the memory device is 25° C.˜50° C., bits Q<7:5> (i.e., count value of 32-128 for active signals) may be selected for determining a steal rate of the memory device. As another example, if the bits of MR4<2:0> indicate that the memory device is 100° C.˜125° C., bits Q<9:7> (i.e., count value of 128-512 for active signals) may be selected for determining the steal rate of the memory device. As another example, if the bits of MR4<2:0> indicate that the memory device is <25° C., bits Q<6:4> (i.e., count value of 16-64 for active signals) may be selected for determining the steal rate of the memory device. Thus, for lower temperatures, lower count values may be used to determine the activity levels (e.g., Ultra Low, Low, Medium, High), and therefore a steal rate may be increased for lower temperatures.


Further, with reference again to FIG. 13, similar to selector 1004 of FIG. 10, selector 1304 may identify an activity level (e.g., Ultra Low, Low, Medium, High), which may be used by steal rate selector 1306 to select a steal rate.



FIG. 15 is a flowchart of an example method 1500 of operating a memory device, in accordance with various embodiments of the disclosure. Method 1500 may be arranged in accordance with at least one embodiment described in the present disclosure. Method 1500 may be performed, in some embodiments, by a device or system, such as memory device 100 of FIG. 1, circuit 700 of FIG. 7, controller 1000 of FIG. 1000, controller 1300 of FIG. 13, device 1600 of FIG. 16, and/or system 1700 of FIG. 17, or another device or system. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation.


Method 1500 may begin at block 1502, where an operating temperature of a memory bank of a memory device may be determined, and method 1500 may proceed to block 1503. For example, the operating temperature may be determined via a temperature sensor of the memory device and/or a mode register of the memory device.


In some embodiments, at block 1503, a number of active signals (“activation number”) received at the memory bank may be determined, and method 1500 may proceed to block 1504.


At block 1504, at least one refresh rate for the memory bank may be adjusted based on the operating temperature of the memory bank and possibly the number of active signals, and method 1504 may proceed to block 1506. For example, an auto refresh rate may be adjusted and/or a row hammer refresh steal rate of the memory bank may be adjusted. For example, an auto refresh rate may be adjusted to 32 milliseconds, 48 milliseconds, 64 milliseconds, 96 milliseconds, 128 milliseconds, 192 milliseconds, 256 milliseconds, or any other rate. Further, for example, a row hammer refresh steal rate may be adjusted to zero, ¼ of a default rate, ½ of the default rate, the default rate, or to any other rate. In some embodiments, the operating temperature of the memory bank may be compared to one or more threshold temperatures to determine how to adjust the at least one refresh rate.


At block 1506, at least one internal auto refresh of the memory bank may be skipped in response to the operating temperature being less than or equal to a first threshold temperature. For example only, during a refresh interval including twelve cycles, four internal auto refreshes may be skipped, six internal auto refreshes may be skipped, eight internal auto refreshes may be skipped, or nine internal auto refreshes may be skipped. Further, for example, the first threshold temperature may be approximately 85° C., 60° C., 45° C., or any other temperature.


Modifications, additions, or omissions may be made to method 1500 without departing from the scope of the present disclosure. For example, the operations of method 1500 may be implemented in differing order. Furthermore, the outlined operations and actions are only provided as examples, and some of the operations and actions may be optional, combined into fewer operations and actions, or expanded into additional operations and actions without detracting from the essence of the disclosed embodiment. For example, method may also include an act wherein a skip rate for auto refreshes for the memory bank may be set (e.g., based on the operating temperature and/or a refresh rate (e.g., auto refresh rate, row hammer refresh rate, or both) of the memory bank. Moreover, for example, method 1500 may include an act of programming (e.g., via one or more test fuses, mode registers, etc.) one or more settings of the memory device that may be used to internally adjust, for example, a refresh rate and/or a skip rate of the memory device.


A memory device is also disclosed. According to various embodiments, the memory device may include one or more memory cell arrays, such as memory cell array 102 (see FIG. 1). The one or more memory cell arrays may include a number of memory banks.



FIG. 16 is a simplified block diagram of a memory device 1600 implemented according to one or more embodiments described herein. Memory device 1600, which may include, for example, a semiconductor device, includes a memory array 1602 and controller 1604. Memory array 1602, which may include a number of memory banks, may include a number of memory cells.


Controller 1604 may be operatively coupled with memory array 1602 so as to read, write, or refresh any or all memory cells within memory array 1602. Controller 1604 may be configured for carrying out one or more embodiments disclosed herein. For example, in some embodiments, controller 1604, which may include, for example, circuit 700 of FIG. 7, controller 1000 of FIG. 10, and/or controller 1300 of FIG. 13, may be configured to detect activity associated with a memory bank, determine an operating temperature associated with the memory bank, and/or control (e.g., define, set, and/or adjust) a refresh operation at the memory bank, in accordance with various embodiments disclosed herein.


A system is also disclosed. According to various embodiments, the system may include a memory device including a number of memory banks, each memory bank having an array of memory cells. Each memory cell may include an access transistor and a storage element operably coupled with the access transistor.



FIG. 17 is a simplified block diagram of an electronic system 1700 implemented according to one or more embodiments described herein. Electronic system 1700 includes at least one input device 1702, which may include, for example, a keyboard, a mouse, or a touch screen. Electronic system 1700 further includes at least one output device 1704, such as a monitor, a touch screen, or a speaker. Input device 1702 and output device 1704 are not necessarily separable from one another. Electronic system 1700 further includes a storage device 1706. Input device 1702, output device 1704, and storage device 1706 may be coupled to a processor 1708. Electronic system 1700 further includes a memory device 1710 coupled to processor 1708. Memory device 1710, which may include memory device 1600 of FIG. 16, may include an array of memory cells. Electronic system 1700 may include, for example, a computing, processing, industrial, or consumer product. For example, without limitation, system 1700 may include a personal computer or computer hardware component, a server or other networking hardware component, a database engine, an intrusion prevention system, a handheld device, a tablet computer, an electronic notebook, a camera, a phone, a music player, a wireless device, a display, a chip set, a game, a vehicle, or other known systems.


In contrast to some conventional devices, systems, and methods, various embodiments of the present disclosure may be related to dynamically adjusting one or more rates (e.g., auto refresh rates, auto refresh skip rates, and/or row hammer refresh steal rates) of a memory device based one more operational parameters, such as other refresh rates, operating temperatures, and/or an amount of memory device activity. Various embodiments disclosed herein may reduce power consumption and processing overhead of a memory device without substantially decreasing performance and/or reliability of the memory device.


One or more embodiments of the present disclosure include a method of operating a memory device. The method may include determining an operating temperature of a memory bank of a memory device. The method may also include adjusting at least one refresh rate for the memory bank based on the operating temperature of the memory bank. Further, the method may include skipping at least one internal auto refresh of the memory bank in response to the operating temperature being less than or equal to a first threshold temperature.


Some embodiments of the present disclosure include a memory device. The memory device may include a memory array including at least one memory bank. The memory device may also include at least one controller coupled to the memory array. The at least one controller may be configured to set an auto refresh rate for the memory bank based on an operating temperature of the memory bank. The at least one controller may also be configured to set an auto refresh skip rate for the memory bank based on the operating temperature of the memory bank.


Additional embodiments of the present disclosure include an electronic system. The electronic system may include at least one input device, at least one output device, and at least one processor device operably coupled to the input device and the output device. The electronic system may also include at least one memory device operably coupled to the at least one processor device and comprising a memory array and a controller coupled to the memory array. The controller may be configured to control an auto refresh rate for the memory bank based on an operating temperature of the memory bank. The controller may also be configured to control an auto refresh skip rate for the memory bank based on at least one of the auto refresh rate and the operating temperature of the memory bank.


In accordance with common practice, the various features illustrated in the drawings may not be drawn to scale. The illustrations presented in the present disclosure are not meant to be actual views of any particular apparatus (e.g., device, system, etc.) or method, but are merely idealized representations that are employed to describe various embodiments of the disclosure. Accordingly, the dimensions of the various features may be arbitrarily expanded or reduced for clarity. In addition, some of the drawings may be simplified for clarity. Thus, the drawings may not depict all of the components of a given apparatus (e.g., device) or all operations of a particular method.


As used herein, the term “device” or “memory device” may include a device with memory, but is not limited to a device with only memory. For example, a device or a memory device may include memory, a processor, and/or other components or functions. For example, a device or memory device may include a system on a chip (SOC).


Terms used herein and especially in the appended claims (e.g., bodies of the appended claims) are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including, but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes, but is not limited to,” etc.).


Additionally, if a specific number of an introduced claim recitation is intended, such an intent will be explicitly recited in the claim, and in the absence of such recitation no such intent is present. For example, as an aid to understanding, the following appended claims may contain usage of the introductory phrases “at least one” and “one or more” to introduce claim recitations. However, the use of such phrases should not be construed to imply that the introduction of a claim recitation by the indefinite articles “a” or “an” limits any particular claim containing such introduced claim recitation to embodiments containing only one such recitation, even when the same claim includes the introductory phrases “one or more” or “at least one” and indefinite articles such as “a” or “an” (e.g., “a” and/or “an” should be interpreted to mean “at least one” or “one or more”); the same holds true for the use of definite articles used to introduce claim recitations. As used herein, “and/or” includes any and all combinations of one or more of the associated listed items.


In addition, even if a specific number of an introduced claim recitation is explicitly recited, it is understood that such recitation should be interpreted to mean at least the recited number (e.g., the bare recitation of “two recitations,” without other modifiers, means at least two recitations, or two or more recitations). Furthermore, in those instances where a convention analogous to “at least one of A, B, and C, etc.” or “one or more of A, B, and C, etc.” is used, in general such a construction is intended to include A alone, B alone, C alone, A and B together, A and C together, B and C together, or A, B, and C together, etc. For example, the use of the term “and/or” is intended to be construed in this manner.


Further, any disjunctive word or phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to contemplate the possibilities of including one of the terms, either of the terms, or both terms. For example, the phrase “A or B” should be understood to include the possibilities of “A” or “B” or “A and B.”


Additionally, the use of the terms “first,” “second,” “third,” etc., are not necessarily used herein to connote a specific order or number of elements. Generally, the terms “first,” “second,” “third,” etc., are used to distinguish between different elements as generic identifiers. Absence a showing that the terms “first,” “second,” “third,” etc., connote a specific order, these terms should not be understood to connote a specific order. Furthermore, absence a showing that the terms first,” “second,” “third,” etc., connote a specific number of elements, these terms should not be understood to connote a specific number of elements.


The embodiments of the disclosure described above and illustrated in the accompanying drawings do not limit the scope of the disclosure, which is encompassed by the scope of the appended claims and their legal equivalents. Any equivalent embodiments are within the scope of this disclosure. Indeed, various modifications of the disclosure, in addition to those shown and described herein, such as alternative useful combinations of the elements described, will become apparent to those skilled in the art from the description. Such modifications and embodiments also fall within the scope of the appended claims and equivalents.

Claims
  • 1. A method of operating a memory device, comprising: determining an operating temperature of a memory bank of a memory device;adjusting at least one refresh rate for the memory bank based the operating temperature of the memory banks; andskipping at least one internal auto refresh of the memory bank in response to the operating temperature being less than or equal to a first threshold temperature.
  • 2. The method of claim 1, further comprising setting a skip rate for auto refreshes for the memory bank.
  • 3. The method of claim 2, wherein setting a skip rate comprises setting the skip rate such that for every twelve auto refresh commands one of: four refresh commands are skipped; six refresh commands are skipped; eight refresh commands are skipped; and nine refresh commands are skipped.
  • 4. The method of claim 1, wherein determining the operating temperature of the memory bank comprises determining the operating temperature via at least one of a temperature sensor of the memory device and a mode register of the memory device.
  • 5. The method of claim 4, wherein adjusting the at least one refresh rate for the memory bank comprises adjusting at least one of an auto refresh rate and a row hammer refresh steal rate for the memory bank.
  • 6. The method of claim 1, wherein skipping at least one internal auto refresh comprises: skipping a first number of internal auto refreshes of the memory device for a number of external auto refreshes during a refresh interval in response to the operating temperature being less than or equal to the first threshold temperature;skipping a second number of auto refreshes of the memory device for the number of external auto refreshes in response to the operating temperature being less than or equal to a second threshold temperature, the second threshold temperature less than the first threshold temperature; andskipping a third number of auto refreshes of the memory device for the number of external auto refreshes in response to the operating temperature being less than or equal to a third threshold temperature, the third threshold temperature less than the second threshold temperature.
  • 7. The method of claim 1, wherein adjusting at least one refresh rate for the memory bank comprise adjusting an auto refresh rate for the memory bank, and skipping at least one auto refresh comprises selecting a skip rate based, at least partially on the auto refresh rate for the memory bank.
  • 8. The method of claim 1, wherein adjusting the at least one refresh rate for the memory bank comprises adjusting a row hammer refresh steal rate for the memory bank based the operating temperature of the memory bank and an a number of asserted active signals received at the memory bank.
  • 9. A memory device, comprising: a memory array including at least one memory bank; andat least one controller coupled to the memory array and configured to: set an auto refresh rate for the memory bank based on an operating temperature of the memory bank; andset an auto refresh skip rate for the memory bank based the operating temperature of the memory bank.
  • 10. The memory device of claim 9, wherein the at least one controller is configured to: set the auto refresh skip rate to a first value in response to the operating temperature being less than or equal to a first threshold temperature;set the auto refresh skip rate to a second value in response to the operating temperature being less than or equal to a second threshold temperature, the second threshold temperature less than the first threshold temperature; andset the auto refresh skip rate to a third value in response to the operating temperature being less than or equal to a third threshold temperature, the third threshold temperature less than the second threshold temperature.
  • 11. The memory device of claim 10, wherein the first threshold temperature is approximately 85° Celsius (C), the second threshold temperature is approximately 60° C., and the third threshold temperature is approximately 45° C.
  • 12. The memory device of claim 9, wherein the at least one controller includes: a counter configured to generate a count indicative of a number of refresh commands received from an external device at the memory bank;a multiplexer coupled to an output of the counter and configured to: store a first value based on a selected mode of operation; andgenerate a first pulse signal in response to the count being equal to the first value;a flip-flop coupled to an output of the multiplexer and configured to generate an asserted enable signal in response to the first pulse signal; anda comparator coupled to the output of the counter configured to: store a second value based on a number of desired cycles in a refresh interval; andgenerate a second pulse signal in response to the count being equal to the second value, the second pulse configured to reset the flip-flop and the counter.
  • 13. The memory device of claim 9, wherein the at least one controller is further configured to set a row hammer refresh steal rate for the memory bank based on the operating temperature of the memory bank.
  • 14. The memory device of claim 13, wherein the at least one controller is further configured to set the row hammer refresh steal rate for the memory bank based an amount of activity associated with the memory bank.
  • 15. The memory device of claim 14, wherein the at least one controller includes: a counter configured to generate a count value indicative of a asserted active signals commands received at the memory bank; andat least one circuit configured to set the row hammer refresh steal rate for the memory bank based on the count value.
  • 16. The memory device of claim 15, wherein the at least one controller further includes a counter selector configured to select a subset of bits of the count value based on the operating temperature of the memory bank.
  • 17. An electronic system, comprising: at least one input device;at least one output device;at least one processor device operably coupled to the input device and the output device; andat least one memory device operably coupled to the at least one processor device and comprising: a memory array: anda controller coupled to the memory array and configured to: control an auto refresh rate for the memory array based on an operating temperature of the memory bank; andcontrol an auto refresh skip rate for the memory array based on at least one of the auto refresh rate and the operating temperature of the memory array.
  • 18. The electronic system of claim 17, wherein the controller is further configured to adjust the auto refresh rate in response to the operating temperature being less than a threshold temperature.
  • 19. The electronic system of claim 17, wherein the controller is further configured to adjust the auto refresh skip rate in response to the operating temperature being less than a threshold temperature.
  • 20. The electronic system of claim 17, wherein the controller is further configured to control a row hammer refresh steal rate based on the operating temperature of the memory array.