Apparatuses and methods for row hammer based cache lockdown

Information

  • Patent Grant
  • 11810612
  • Patent Number
    11,810,612
  • Date Filed
    Wednesday, February 2, 2022
    2 years ago
  • Date Issued
    Tuesday, November 7, 2023
    7 months ago
  • CPC
  • Field of Search
    • US
    • 365 118000
    • CPC
    • G11C11/4078
    • G11C7/24
    • G11C8/20
    • G11C11/408
  • International Classifications
    • G11C11/4078
    • Disclaimer
      This patent is subject to a terminal disclaimer.
Abstract
Apparatuses, systems, and methods for row hammer based cache lockdown. A controller of a memory may include an aggressor detector circuit which determines if addresses are aggressor addresses or not. The controller may include a tracker circuit which may count a number of times an address is identified as an aggressor, and may determine if the aggressor address is a frequent aggressor address based on the count. If the address is a frequent aggressor address, a cache entry associated with the frequent aggressor address may be locked (e.g., for a set amount of time). In some embodiments, the controller may include a second tracker which may determine if the frequent aggressor address is a highly attacked address. An address mapping associated with the highly attacked address may be changed.
Description
BACKGROUND

This disclosure relates generally to semiconductor devices, and more specifically to semiconductor memory devices. In particular, the disclosure relates to volatile memory, such as dynamic random access memory (DRAM). Information may be stored on individual memory cells of the memory as a physical signal (e.g., a charge on a capacitive element). The memory may be a volatile memory, and the physical signal may decay over time (which may degrade or destroy the information stored in the memory cells). It may be necessary to periodically refresh the information in the memory cells by, for example, rewriting the information to restore the physical signal to an initial value.


As memory components have decreased in size, the density of memory cells has greatly increased. Various access patterns to a particular memory cell or group of memory cells (often referred to as an attack) may cause an increased rate of data degradation in nearby memory cells. Memory cells affected by the attack may be identified and refreshed as part of a targeted refresh operation. A controller of the memory, and/or the memory itself, may track access patterns to various memory addresses in order to determine if they involved in an attack, so that they may be refreshed. However it may be useful to take additional actions beyond refreshing to mitigate data degradation.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram of a memory system according to some embodiments of the present disclosure.



FIG. 2 is a block diagram of a semiconductor device according an embodiment of the disclosure.



FIG. 3 is a block diagram of row hammer logic according to some embodiments of the present disclosure.



FIG. 4 is a block diagram of a cache and cache logic according to some embodiments of the present disclosure.



FIG. 5 is a block diagram of a method according to some embodiments of the present disclosure.





DETAILED DESCRIPTION

The following description of certain embodiments is merely exemplary in nature and is in no way intended to limit the scope of the disclosure or its applications or uses. In the following detailed description of embodiments of the present systems and methods, reference is made to the accompanying drawings which form a part hereof, and which are shown by way of illustration specific embodiments in which the described systems and methods may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice presently disclosed systems and methods, and it is to be understood that other embodiments may be utilized and that structural and logical changes may be made without departing from the spirit and scope of the disclosure. Moreover, for the purpose of clarity, detailed descriptions of certain features will not be discussed when they would be apparent to those with skill in the art so as not to obscure the description of embodiments of the disclosure. The following detailed description is therefore not to be taken in a limiting sense, and the scope of the disclosure is defined only by the appended claims.


Information in a volatile memory device may be stored in memory cells (e.g., as a charge on a capacitive element), and may decay over time. The memory cells may be organized into rows (wordlines) and columns (bit lines), in each bank of a memory array. The memory cells may be refreshed on a row-by-row basis. In order to prevent information from being lost or corrupted due to this decay, the memory may carry out a background refresh process, such as auto-refresh operations as part of a self-refresh mode. During a refresh operation, information may be rewritten to the wordline to restore its initial state. The auto-refresh operations may be performed on the wordlines of the memory in a sequence such that over time the wordlines of the memory are refreshed at a rate faster than the expected rate of data degradation.


Various attack patterns, such as repeated access to a particular row of memory (e.g., an aggressor row) may cause an increased rate of decay in neighboring rows (e.g., victim rows) due, for example, to electromagnetic coupling between the rows. The pattern of repeated accesses may be referred to as a ‘row hammer’. These repeated accesses may be part of a deliberate attack against the memory and/or may be due to ‘natural’ access patterns of the memory. The row hammer attack may cause information to decay in the victim rows faster than a rate at which the auto-refresh operations may refresh the victim rows. Accordingly, aggressor rows may need to be monitored so that steps may be taken to mitigate or heal the damage before information is lost in the victim rows.


A controller of the memory may track accesses to different rows to determine if those rows are aggressors or not. An aggressor detector circuit may use one or more schemes to determine if a given address is an aggressor or not. For example, the aggressor detector may determine if a given row is accessed above a threshold number of times (or above a threshold rate) and/or may directly check for errors in the victim rows (e.g., with error correction circuitry). Various steps may be used to prevent and/or repair the damage to the victim rows. For example, a targeted refresh operation may be performed to refresh identified victims. However, targeted refresh operations may consume power and/or take time which could have been used for other operations. Accordingly, it may be desirable to mitigate attack damage through other methods (e.g., instead of or in addition to targeted refresh operations).


The present disclosure is drawn to apparatuses, systems, and methods for row hammer based cache lockdown. The controller (and/or memory) may include a cache. A set of the most recent data accessed from the memory may be stored in the cache, which may allow more rapid access to recently accessed information. Information stored in the cache may not be susceptible to the row hammer effect (or may be less susceptible). The controller may include logic, which may determine a number of times (and/or a rate) at which an identified row of the memory (e.g., an aggressor row) is accessed. If the number of times (and/or rate) is above a first threshold, the controller may manage the entry in the cache associated with an address associated with the identified row. For example, the cache may be managed in such a way as to ensure that the data associated with the identified row remains in the cache for at least a minimum amount of time.


In an example embodiment, the controller may include row hammer logic, which may count a number of times addresses are identified as aggressors. When that count exceeds a threshold (which may represent the row associated with the aggressor address being accessed at least a threshold number of times), the data associated with that aggressor address may be ‘locked’ so that it does not leave the cache even if the cache logic would otherwise evict it from the cache. Accordingly, while it remains locked in the cache, accesses to that aggressor address may access the information in the cache instead. This may reduce accesses to the memory array, and reduce the impact of the row hammer effect (e.g., by allowing time for the victim word lines to be refreshed as part of an auto-refresh operation).


In some embodiments, the controller may take additional steps if the row hammer tracker determines that an aggressor is frequently hammered (e.g., accessed more than a second threshold number of times). In addition to locking that data in the cache, the controller may re-map the physical word line associated with the aggressor address. For example, if the aggressor address was associated with a first word line, the controller may remap the word line so that it is now associated with a second word line, distant from the first word line. This may ensure that the victims (e.g., rows close to the first word line) are now distant from the address which is being hammered. In some embodiments, the remapped aggressor may also have a different distribution of data and/or a different type of memory to further mitigate the row hammer effect.



FIG. 1 is a block diagram of a memory system according to some embodiments of the present disclosure. The memory system 100 includes a controller 102 and a memory 104. The memory 104 includes a memory array 112 with a number of memory cells. The memory cells may be disposed at the intersection of word lines (WL, rows) and bit lines (digit lines, columns). The controller 102 may operate the memory 104 to perform access operations on the memory cells. For example, the controller 102 may write data to specified memory cells of the memory array 112 as part of a write operation and may read data from specified memory cells of the memory array 112 as part of a read operation.


The controller 102 may be coupled to the memory 104 by a number of buses. Shown in FIG. 1 are a data bus DQ and a command/address C/A bus. The controller 102 may include a processor 106 which may operate the memory 104 in part by providing commands and addresses along the C/A bus and sending and receiving data along the DQ bus. For example as part of a write operation, the processor 106 may provide a write command and an address ADD specifying one or more memory cells along the C/A bus, and may provide write data along the DQ bus. The memory 104 may then store that data to the memory cells specified by the address ADD. As part of an example read operation, the processor 106 may provide a read command and read addresses along the C/A bus and may receive read data from the memory cells specified by the address along the DQ bus.


The addresses may be associated with different memory cells of the memory array 112. For example, a column address YADD may specify one or more digit lines, a row address XADD may specify one or more word lines, and a bank address BADD may specify one or more banks of the memory array 112. The processor 106 may be coupled to an address map 108, which may specify which addresses are associated with which physical word lines WL of the memory array 112. For example, the address map 108 may indicate that a first value of the row address XADD is associated with the first word line WL0, a second value of the row address XADD is associated with a second word line WL1, etc.


The controller 102 may include a cache 110, which may be used to store information for rapid access. The cache 110 may include a data storage structure which may store information. The cache 110 may have a higher access speed than the memory 104. In some embodiments, the cache 110 may include a different type of memory cell than the memory cells in the memory 104. The cache 110 may store a set of the most recently accessed data from the memory 104. For example, data may be read from a word line, and that data may be stored in the cache 110. Any subsequent accesses to that data may be re-directed to the data stored in the cache 110 instead. The data may leave the cache (any changes to the data in the cache may be written to the memory 104) when more space is needed and the data is the oldest entry in the cache 110. The cache 110 may include a lock tag associated with the entries in the cache 110. The processor 106 may cause one or more entries in the cache 110 to become locked, in which case the data may remain in the cache until the lock is removed, even if it would otherwise be evicted from the cache.


Although the cache 110 is generally referred to herein as a component of the controller 102, in some embodiments, the cache may be located in the memory 104 (e.g., instead of or in addition to a controller side cache). It should be understood that various embodiments of the invention may also function with a memory-side cache in a manner analogous to the embodiments described with respect to a controller-side cache. For example, to impose a lockdown the controller 102 may provide a lock signal along a bus (e.g., the C/A bus) to the memory-side cache.


The controller 120 may include row hammer (RH) logic 120. The RH logic 120 may track the row addresses provided to the memory 104 as part of access operations, to determine if one or more rows is part of a (real or suspected) row hammer attack. Once the RH logic 120 determines that one or more rows is involved in an attack, it may take one or more steps to mitigate the harm.


For example, the RH logic 120 may identify a particular address of the memory 104 which is associated with a row (e.g., word line) of the memory array 112. For example, the particular address may be an aggressor address, and may be identified based on a number of accesses to the row exceeding a first threshold. The RH logic 120 may also determine the address is a frequent aggressor based, in part, on if a number of accesses to the row exceeds a second threshold (e.g., as determined by a same or different count value as used to track if the address is an aggressor). The RH logic 120 may, in some embodiments, also determine if the address is a highly attacked address based, in part, on if a number of accesses to the row exceeds a third threshold (e.g., as determined by a same or different count value as used to track if the address is a frequent aggressor).


The RH logic 120 may include a RH detector 122. The RH detector 122 may utilize one or more schemes to monitor access patterns to rows to determine if they are aggressors (e.g., targets of a RH attack or not). Embodiments of the present disclosure may use any type, or any combination of types, of row hammer detection. As used herein, the term aggressor row may be used to refer broadly to a row which meets the criteria set forth by the aggressor detector 122 to determine if a row is an aggressor or not. It is not necessary that such aggressor rows actually cause harm to nearby rows (e.g., victim rows). Similarly, as used herein, the term victim row may refer to rows which have some defined relationship to the aggressor row (e.g., adjacency, physical distance, etc.). It is not necessary that the victim rows experience an actual increased rate of data decay.


In some embodiments, the RH detector 122 may monitor a number of accesses and/or a frequency of access to addresses. For example, the RH detector 122 may receive a row address off the C/A bus and check to see if that address is in an aggressor storage structure. If it is not, the received address may be stored. If it is, the received address may be judged to be an aggressor. In some embodiments, if there is a match, a counter associated with the stored may be updated, and once the counter crosses a threshold, the received address may be judged to be an aggressor. In some embodiments, rather than receive every address off the C/A bus, sampling may be used. For example a sampling signal may be activated with random timing, semi-random timing, pseudo-random timing, periodic timing, timing based on one or more other signals, or combinations thereof. When the sampling signal is activated, a next value of address along the C/A bus may be received by the RH detector 122. In some embodiments, the RH detector 122 may check for row hammer events based on actual errors in the data read from the memory 104. For example the memory may include an error correction code (ECC) circuit which may check data for errors. If an error is detected, this may be communicated to the controller 102 and the controller 102 may determine that the data was read from a victim row.


The RH logic 120 may also include an RH tracker 124, which may be used to monitor a number of times (and/or a frequency) at which certain addresses are determined to be aggressors, which in turn may represent a number of times (and/or frequency) at which the certain address is accessed. For example, the RH tracker 124 may include a first data storage structure 126 which may store addresses and count values. When the RH detector 122 determines that an address is an aggressor, the RH tracker 124 may compare the value of the aggressor to the stored addresses. If there is a match, the count value associated with that stored address may be updated (e.g., incremented). If there is not a match, the RH tracker 124 may check to see if there is open space in the first data storage structure 126. If there is, the address may be stored, and the count associated with that address may be initialized (e.g., set to an initial value, such as 0). In some embodiments, a time stamp (not shown) associated with the address may be also be recorded. If there is not open space, then the RH tracker 124 may use one or more criteria to determine what happens (e.g., the stored address with the lowest count may be replaced, the stored address with the oldest time stamp may be replaced, etc.).


The RH tracker 124 may monitor the count values in the first data storage structure 126. The count values may be compared to a first threshold (e.g., each time one of the count values is updated). When the count value exceeds the threshold, the RH tracker 126 may determine that the aggressor address is a frequent aggressor address may provide a lock signal to the cache 110 (e.g., via the processor 106). The cache 110 may lock the data associated with the frequent aggressor row address in the cache 110. This may keep the data in the cache 110, which may prevent subsequent accesses to the memory 104 as long as the lock remains. Since the data is no longer being accessed in the memory 104, the accesses may no longer hammer that word line of the memory 104. The controller 102 may use various criteria to determine when to remove the lock. For example, the lock may be removed after a period of time (e.g., a number of clock cycles) has elapsed. When the data is evicted from the cache 110 (e.g., after the lock expires), if there were any changes to the data (e.g., via write operations), then the updated data may be written back to the memory 104 from the cache 110.


In some embodiments, the RH tracker 124 may also include a secondary data storage structure 128. While the use of a cache lockdown may offer a method of mitigating the row hammer attack for a period of time, in some situations, the attack may be serious enough to warrant a more long-term solution. The secondary data storage structure 128 may track a number of times that a given address is identified as an aggressor address. For example, each time that a count in the first data storage structure 126 exceeds a threshold, that address may be provided to the secondary data storage structure 128. The secondary data storage structure 128 may operate in a manner analogous to the primary data storage structure 126. Each time an address is received, it may be compared to the addresses already stored in the second data storage structure 128, and if there is a match, a count associated with that stored address may be changed (e.g., incremented). If the count exceeds a second threshold, it may indicate that the associated address is a highly attacked address.


In some embodiments, rather than including a secondary data storage structure 128, the RH logic may use the first data storage structure 126 to identify highly attacked addresses. For example, when the count in the first data storage structure 126 passes a first threshold, the associated address may be judged to be a frequent aggressor address. The data storage structure 126 may continue to monitor the count value, and if the count value in the first data storage structure 126 passes a second threshold then the associated address may be determined to be a highly attacked address. In such embodiments, the secondary data storage structure 128 may be omitted.


Responsive to determining that an address is a highly attacked address, the RH logic 120 may provide the highly attacked address to the processor 106. In some embodiments the RH logic 120 may also provide one or more additional signals indicating that the address is a highly attacked address. The processor 106 may alter the address map 108 based on the highly attacked address. The address map 108 may allow the processor 106 to determine where information is stored in the memory array 112. The processor 106 may alter the highly attacked address in the address map 108 in order to mitigate and/or prevent row hammer attacks to that address.


The address map 108 may include a map of virtual addresses. The virtual addresses may be accessible to an operating system which is run on the processor 106. The address map 108 may include a physical address map which may instruct the processor 106 how to generate physical address signals based on the virtual address accessed by the operating system. The address map 108 may include a physical to device map, which may indicate how the physical address is actually distributed across the structure of the memory array 112.


In some embodiments, responsive to a highly attacked address, the processor 106 may change a physical address associated with the highly attacked address. For example, the highly attacked address may a row address XADD2 associated with a word line WL2 in the memory array 112. The processor 106 may alter the physical address map so that the address XADD2 is now associated with a word line WL6, and may copy the data which was previously stored on the word line WL2 onto the word line WL6 (and the data which was on WL6 to WL2). This may move the address XADD2 so that it is accessing a word line which is remote from its previous victims (e.g., WL1 and WL3). The address which was previously associated with the replacement word line WL6 (e.g., XADD6) may be remapped in the address map 108 so that it now is associated with the word line WL2.


In some embodiments, the memory 104 may include a first memory region (e.g., memory array 112) and a second memory region 113. The second memory region 113 may represent a different memory array or a portion of the same memory array. In some embodiments, the address map 108 may be altered to remap a highly attacked address from the first region 112 to the second region 113. In some embodiments, the second memory region 113 may have different properties which make information stored therein less susceptible to the row hammer effect.


For example, the second memory section 113 may include a different type of memory cell than the primary memory array 112. For example the memory array 112 may include a first type of memory cells (e.g., DRAM cells), while the second memory region 113 may include a second type of memory cell (e.g., SRAM, FeRAM, flash, etc. cells). In some embodiments, responsive to a highly attacked address, the processor 106 may alter the address map 108 such that the highly attacked address is remapped from the first type of memory cell (e.g., in memory array 112) to the second type of memory cell (e.g., in second memory region 113).


In some embodiments, the processor 106 may alter the physical to device mapping of a highly attacked address. The memory 104 may include a first section 112 with a first type of physical to device mapping and a second section 113 with a second type of physical to device mapping. The highly attacked address may be remapped from one section to the other. For example, the first memory region 112 may have a first type of striping, and the second memory region 113 may have a second type of striping.



FIG. 2 is a block diagram of a semiconductor device according an embodiment of the disclosure. The semiconductor device 200 may be a semiconductor memory device, such as a DRAM device integrated on a single semiconductor chip. The semiconductor device 200 may, in some embodiments, be included in the memory 104 of FIG. 1.


The semiconductor device 200 includes a memory array 218 (e.g., memory array 112 and/or second memory region 113 of FIG. 1). The memory array 218 is shown as including a plurality of memory banks. In the embodiment of FIG. 1, the memory array 218 is shown as including eight memory banks BANK0-BANK7. More or fewer banks may be included in the memory array 218 of other embodiments. Each memory bank includes a plurality of word lines WL, a plurality of bit lines BL and /BL, and a plurality of memory cells MC arranged at intersections of the plurality of word lines WL and the plurality of bit lines BL and /BL. The selection of the word line WL is performed by a row decoder 208 and the selection of the bit lines BL and /BL is performed by a column decoder 210. In the embodiment of FIG. 1, the row decoder 208 includes a respective row decoder for each memory bank and the column decoder 210 includes a respective column decoder for each memory bank. The bit lines BL and /BL are coupled to a respective sense amplifier (SAMP). Read data from the bit line BL or /BL is amplified by the sense amplifier SAMP, and transferred to read/write amplifiers 220 over complementary local data lines (LIOT/B), transfer gate (TG), and complementary main data lines (MIOT/B). Conversely, write data outputted from the read/write amplifiers 220 is transferred to the sense amplifier SAMP over the complementary main data lines MIOT/B, the transfer gate TG, and the complementary local data lines LIOT/B, and written in the memory cell MC coupled to the bit line BL or /BL.


The semiconductor device 200 may employ a plurality of external terminals that include command and address (C/A) terminals coupled to a command and address bus to receive commands and addresses, and a CS signal, clock terminals to receive clocks CK and /CK, data terminals DQ to provide data, and power supply terminals to receive power supply potentials VDD, VSS, VDDQ, and VSSQ. A controller (e.g., 102 of FIG. 1) may be coupled to various terminals via one or more buses in order to send and receive various signals to or from the memory device 200.


The clock terminals are supplied with external clocks CK and /CK by the controller. The clock signals are provided to an input circuit 212. The external clocks may be complementary. The input circuit 212 generates an internal clock ICLK based on the CK and /CK clocks. The ICLK clock is provided to the command decoder 210 and to an internal clock generator 214. The internal clock generator 214 provides various internal clocks LCLK based on the ICLK clock. The LCLK clocks may be used for timing operation of various internal circuits. The internal data clocks LCLK are provided to the input/output circuit 222 to time operation of circuits included in the input/output circuit 222, for example, to data receivers to time the receipt of write data.


The C/A terminals may be supplied with memory addresses by the controller. The memory addresses supplied to the C/A terminals are transferred, via a command/address input circuit 202, to an address decoder 204. The address decoder 204 receives the address and supplies a decoded row address XADD to the row decoder 208 and supplies a decoded column address YADD to the column decoder 210. The address decoder 204 may also supply a decoded bank address BADD, which may indicate the bank of the memory array 218 containing the decoded row address XADD and column address YADD. The C/A terminals may be supplied with commands by the controller. Examples of commands include timing commands for controlling the timing of various operations, access commands for accessing the memory, such as read commands for performing read operations and write commands for performing write operations, as well as other commands and operations. The access commands may be associated with one or more row address XADD, column address YADD, and bank address BADD to indicate the memory cell(s) to be accessed.


The commands may be provided as internal command signals to a command decoder 206 via the command/address input circuit 202. The command decoder 206 includes circuits to decode the internal command signals to generate various internal signals and commands for performing operations. For example, the command decoder 206 may provide a row command signal to select a word line and a column command signal to select a bit line.


The device 200 may receive an access command which is a read command from the controller. When a read command is received, and a bank address, a row address and a column address are timely supplied with the read command, read data is read from memory cells in the memory array 218 corresponding to the row address and column address. The read command is received by the command decoder 206, which provides internal commands so that read data from the memory array 218 is provided to the read/write amplifiers 220. The read data is output to outside from the data terminals DQ via the input/output circuit 222.


The device 200 may receive an access command which is a write command from the controller. When the write command is received, and a bank address, a row address and a column address are timely supplied with the write command, write data supplied to the data terminals DQ is written to a memory cells in the memory array 218 corresponding to the row address and column address. The write command is received by the command decoder 206, which provides internal commands so that the write data is received by data receivers in the input/output circuit 222. Write clocks may also be provided to the external clock terminals for timing the receipt of the write data by the data receivers of the input/output circuit 222. The write data is supplied via the input/output circuit 222 to the read/write amplifiers 220, and by the read/write amplifiers 220 to the memory array 218 to be written into the memory cell MC.


The device 200 may also receive commands from the controller causing it to carry out one or more refresh operations as part of a self-refresh mode. In some embodiments, the self-refresh mode command may be externally issued to the memory device 200 (e.g., by the controller 102 of FIG. 1). In some embodiments, the self-refresh mode command may be periodically generated by a component of the device. In some embodiments, when an external signal indicates a self-refresh entry command, the refresh signal AREF may also be activated. The refresh signal AREF may be a pulse signal which is activated when the command decoder 206 receives a signal which indicates entry to the self-refresh mode. The refresh signal AREF may be activated once immediately after command input, and thereafter may be cyclically activated at desired internal timing. The refresh signal AREF may be used to control the timing of refresh operations during the self-refresh mode. Thus, refresh operations may continue automatically. A self-refresh exit command may cause the automatic activation of the refresh signal AREF to stop and may cause the device 200 to return to an idle state and/or resume other operations.


The refresh signal AREF is supplied to the refresh control circuit 216. The refresh control circuit 216 supplies a refresh row address RXADD to the row decoder 208, which may refresh one or more wordlines WL indicated by the refresh row address RXADD. In some embodiments, the refresh address RXADD may represent a single wordline. In some embodiments, the refresh address RXADD may represent multiple wordlines, which may be refreshed sequentially or simultaneously by the row decoder 208. In some embodiments, the number of wordlines represented by the refresh address RXADD may vary from one refresh address to another. The refresh control circuit 216 may control a timing of the refresh operation, and may generate and provide the refresh address RXADD. The refresh control circuit 216 may be controlled to change details of the refreshing address RXADD (e.g., how the refresh address is calculated, the timing of the refresh addresses, the number of wordlines represented by the address), or may operate based on internal logic.


The refresh control circuit 216 may selectively output a targeted refresh address (e.g., which specifies one or more victim address based on an aggressor) or an automatic refresh address (e.g., from a sequence of auto-refresh addresses) as the refresh address RXADD. Based on the type of refresh address RXADD (and in some embodiments, one more additional signals indicating the type of operation), the row decoder 208 may perform a targeted refresh or auto-refresh operation. The automatic refresh addresses may be from a sequence of addresses which are provided based on activations of the refresh signal AREF. The refresh control circuit 216 may cycle through the sequence of auto-refresh addresses at a rate determined by AREF. In some embodiments, the auto-refresh operations may generally occur with a timing such that the sequence of auto-refresh addresses is cycled such that no information is expected to degrade in the time between auto-refresh operations for a given wordline. In other words, auto-refresh operations may be performed such that each wordline is refreshed at a rate faster than the expected rate of information decay.


The power supply terminals are supplied with power supply potentials VDD and VSS. The power supply potentials VDD and VSS are supplied to an internal voltage generator circuit 224. The internal voltage generator circuit 224 generates various internal potentials VPP, VOD, VARY, VPERI, and the like based on the power supply potentials VDD and VSS supplied to the power supply terminals. The internal potential VPP is mainly used in the row decoder 208, the internal potentials VOD and VARY are mainly used in the sense amplifiers SAMP included in the memory array 218, and the internal potential VPERI is used in many peripheral circuit blocks.


The power supply terminals are also supplied with power supply potentials VDDQ and VSSQ. The power supply potentials VDDQ and VSSQ are supplied to the input/output circuit 222. The power supply potentials VDDQ and VSSQ supplied to the power supply terminals may be the same potentials as the power supply potentials VDD and VSS supplied to the power supply terminals in an embodiment of the disclosure. The power supply potentials VDDQ and VSSQ supplied to the power supply terminals may be different potentials from the power supply potentials VDD and VSS supplied to the power supply terminals in another embodiment of the disclosure. The power supply potentials VDDQ and VSSQ supplied to the power supply terminals are used for the input/output circuit 222 so that power supply noise generated by the input/output circuit 222 does not propagate to the other circuit blocks.



FIG. 3 is a block diagram of row hammer logic according to some embodiments of the present disclosure. The row hammer logic 300 may, in some embodiments, be included in the row hammer logic 120 of FIG. 1. The row hammer logic 300 represents an embodiment where a count based scheme is used for the aggressor detector and the RH tracker logic. Other methods of detecting aggressor addresses and tracking the frequency (and/or number of times) that those aggressors appear may be used in other example embodiments.


The row hammer logic 300 includes an aggressor detector circuit 310 (e.g., RH detector 122 of FIG. 1). The aggressor detector circuit 310 includes a data storage structure which holds a number of row addresses XADD and a number of counts, each associated with one of the stored row addresses XADD (and/or with one of the storage slots). The aggressor detector circuit 310 also includes detector logic 312, which manages the information stored in the aggressor storage structure 310.


The data storage structure may be organized into slots, each of which may store a row address (e.g., XADD0 to XADDi) and an associated count value (e.g., Count0 to Counti). Each slot may include a number of individual cells, each of which may store a bit of information. In some embodiments, the data storage structure may include content addressable memory (CAM) cells, which may provide a match signal if a provided comparison bit matches the stored bit.


The detector logic 312 may receive a row address XADD from the row address bus. The row address XADD may be associated with an access operation that the controller (e.g., controller 102) is performing on the memory (e.g., 104 of FIG. 1). The detector logic 312 may compare the received address to the stored addresses XADD0 to XADDi. If the received address matches one of the stored addresses, the count associated with that stored address may be changed (e.g., incremented). If there is not a match, the detector logic 312 may store the received address XADD in the storage structure. For example, if there is an open slot in the data storage structure, the address XADD may be stored in that open slot. If there is not an open slot, then one or more criteria may be used to determine which of the stored addresses should be replaced (e.g., the one with the lowest count value). In some embodiments, when a new address is stored in the data storage structure, the count value may be reset to an initial value (e.g., 0). In some embodiments, if the new address replaces a previously stored address, the count value associated with the previously stored address may be kept.


After updating a count value, the detector logic 312 may compare the updated count value to a first threshold Thresh1. If the updated count value exceeds the threshold Thresh1 (or if it meets or exceeds the threshold Thresh1), then the detector logic 312 may determine that the received row address XADD represents an aggressor address HitXADD. The aggressor address HitXADD may be provided to the memory (and/or a signal indicating that the address is an aggressor may be provided), so that the memory may perform a targeted refresh operation on victim word lines associated with that aggressor address (e.g., HitXADD+1, HitXADD−1, HitXADD+2, HitXADD−2, etc.). Responsive to determining that the row address XADD, and its stored counterpart, was an aggressor, the detector logic 312 may change the count value associated with the aggressor address. For example, the count value may be reduced (e.g., by the threshold Thresh1) or may be reset (e.g., to 0). In some embodiments, the stored address may be cleared responsive to being provided as the aggressor address HitXADD.


In some embodiments, the threshold Thresh1 may be inherent to the structure used to hold the count value. For example, the count may be stored as an N-bit number, with 2{circumflex over ( )}N possible states. Each time there is a match, the count value may be incremented. When it reaches its maximum value, it may ‘roll-over’ back to an initial value (e.g., 0). The detector logic 312 may treat the rolling over as the count exceeding the threshold, and thus the maximum value of the count may act as the threshold.


In some embodiments, the aggressor detector 310 may sample row addresses XADD off the row address bus rather than receiving every row address XADD. An optional sample timing circuit 302 may provide a sample timing signal ArmSample. When the sampling signal ArmSample is activated, the detector logic 312 may capture the next value of XADD (e.g., the next time ACT is provided). The sample timing circuit 302 may provide the signal ArmSample with random timing, semi-random timing, pseudo-random timing, periodic timing, timing based off of one or more other signals (e.g., counts of ACT), or combinations thereof.


Other forms of aggressor detection may be used in other example embodiments. For example, rather than including a data storage structure and count values, the aggressor detector 310 may store addresses, and may provide the address XADD as the aggressor address HitXADD if the address XADD matches one of the stored addresses. In some embodiments, the aggressor detector 310 may provide any sampled address XADD as the address HitXADD. Other aggressor detection schemes may be used in other example embodiments.


The row hammer logic 300 also includes a first tracker circuit 320 and a second tracker circuit 330 (e.g., 126 and 128 respectively of FIG. 1). The tracker circuits 320 and 330 may generally be analogous to the aggressor detector 310, and so for the sake of brevity, features and operations already described with respect to the aggressor detector 310 will not be repeated for the tracker circuits 320 and 330.


The first tracker circuit 320 receives the aggressor address HitXADD and determines if the aggressor address HitXADD is a frequent aggressor address FreqHitXADD. The first tracker circuit 320 may store received aggressor addresses HitXADD along with associated count values, and determine if an address is a frequent aggressor address FreqHitXADD based, in part, on a comparison of the count value to a threshold Thresh2.


The identified frequent aggressor addresses FreqHitXADD may be provided to a processor (and/or a signal may be provided indicating that a frequent aggressor has been located), and the processor may lock the data in the cache associated with the frequent aggressor address. Since subsequent accesses to that data will be in the cache rather than in the memory array, this may mitigate hammering of the word line in the memory array.


The second tracker circuit 330 may receive the frequent aggressor address FreqHitXADD and determine if the frequent aggressor address FreqHitXADD is a highly attacked address VHAXADD. The second tracker circuit 330 may store received frequent aggressor addresses FreqHitXADD from the second tracker circuit 320, and may store the received frequent aggressor addresses along with associated count values. The second tracker circuit 330 may determine if the frequent aggressor address FreqHitXADD is a highly attacked address VHAXADD based, in part, on a comparison of the associated count value to a threshold Thresh3.


The identified highly attacked address VHAXADD may be provided to a processor (and/or a signal may be provided indicating that a highly attacked address has been located), and the processor may alter the address map to change a word line associated with the address VHAXADD. For example, the address VHAXADD may be remapped to a different wordline that is distant from the word line originally associated with VHAXADD. In some embodiments, the address VHAXADD may be remapped to a different section of the memory array, which may be less susceptible to the row hammer effect. For example the new section may have different physical to device mapping (e.g., different striping), may include different types of memory cell, or combinations thereof.


In some embodiments, the second tracker circuit 330 may be omitted and the row hammer tracker 300 may not detect highly attacked addresses.


In some embodiments, the second tracker circuit 330 may be omitted and the first tracker circuit 320 may identify both the frequent aggressor addresses FreqHitXADD and the highly attacked addresses VHAXADD. For example, the tracker logic 322 may include two threshold values (e.g., Thresh2 and Thresh3). When the count value exceeds the threshold Thresh2, the address HitXADD may be judged to be a frequent aggressor FreqHitXADD and the count value may be maintained. If the count value then exceeds a second threshold (e.g., Thresh3), then the address may be judged to be a highly attacked address VHAXADD.


In some embodiments, the tracker circuits 320 and/or 330 may include a time stamp associated with each address and count value. When a new address is written to the trackers 320 and/or 330, either in an open slot or overwriting a previous entry, the tracker logic 322 or 332 respectively may write a time stamp which represents a time when that entry was added. If there are no open slots, then when a new entry needs to be added, the entry with the oldest time stamp may be replaced with the new entry.



FIG. 4 is a block diagram of a cache and cache logic according to some embodiments of the present disclosure. The cache 402 may, in some embodiments, be included in the cache 110 of FIG. 1. The cache logic 404 may, in some embodiments, represent one or more operations of a processor (e.g., 106 of FIG. 1) and/or other logic circuits of the controller (e.g., 102 of FIG. 1).


The cache 402 may include a data storage structure, which may temporarily store data retrieved from a memory. For example, when the controller issues a read command to the memory, the data retrieved as part of that read operation may be stored in the cache 402. Subsequent accesses to that data may access the data stored in the cache 402 rather than accessing the word line in the memory. The data storage structure may include a number of slots, each of which may store data, and an address Addr, a time stamp Time, and a lock flag Lock associated with that data.


The cache logic 404 shows various components which may manage the contents of the cache 402. For example, read/write logic 406 may determine if data is accessed from the cache 402 or if that data should be accessed from the memory. The cache management logic 408 may manage entries in the cache 402.


When data is retrieved from the memory, the cache management logic 408 may store that data stored in the cache 402 along with a time stamp Time which indicates when that data was accessed. If the cache 402 is full, the cache management logic 408 may check the time stamps in the cache 402 and the data in the cache 402 which has the oldest time stamp may be replaced. When data is added to the cache, the RAY logic 406 may indicate that accesses to the address(es) associated with that data should be redirected to the cache 402 rather than the memory.


For example read operations may be performed by receiving an address. The R/W logic 406 may check the address against the addresses in the cache 402 (and/or an address map may indicate that the data is in the cache) and the data associated with that address may be read out from the cache 402. Similarly a write operation may be performed by writing information to the entry in the cache 402. When data leaves the cache 402, the RAY logic 406 may determine if any changes were made to the data in the cache 402 (e.g., due to write operations) and may write the changed data back to the memory.


The cache logic 404 may include lock logic 410 which may manage lock operations in the cache 402. For example, each slot of the cache 402 may include a lock flag. In some example embodiments, the lock flag may be a single bit, which may be active to indicate the entry in that slot is locked, and inactive to indicate the entry in that slot is not locked. When a particular slot is locked, the normal criteria for removing entries from the cache 402 may be overridden, and the locked entry may remain in the cache 402. For example, when a new entry is received and there are no open slots in the cache 402, the cache management logic 408 may check the time stamps and locate the slot which is associated with the oldest time stamp. However, if the lock flag of that slot is active (e.g., the data is locked in the cache), then the cache management logic 408 may proceed to the slot with the next oldest time stamp which has an inactive lock flag.


The lock logic 410 may use various criteria to determine when to activate the lock flag of a given entry, and when to inactivate an active lock flag. For example, responsive to receiving a frequent aggressor address FreqHitXADD, the lock logic 410 may activate the lock flag in the cache slot associated with the frequent aggressor address FreqHitXADD. The lock logic 410 may include a timer, and may maintain the lock on the entry associated with FreqHitXADD for at least a set period of time. Once the timer indicates that the amount of time has elapsed (e.g., based on a comparison of the current time with the time stamp associated with the entry), the lock logic 410 may inactivate the lock associated with the entry.



FIG. 5 is a block diagram of a method according to some embodiments of the present disclosure. The method 500 may, in some embodiments, be implemented on one or more of the apparatuses or systems described herein (e.g., in FIGS. 1-4). The method 500 shows a particular arrangement of steps, however other arrangements of steps may be used in other embodiments.


The method 500 may generally begin with box 505, which describes identifying a row of memory associated with a particular address, for example by determining if an address is an aggressor address. The address may be part of an access operation performed by a controller on a memory. The controller (e.g., 102 of FIG. 1) may provide the address along with a command along a command address (C/A) bus to the memory. The address may specify one or more organizational levels of the memory. For example, a row address may specify one or more rows (word lines) of the memory.


The controller may use one or more criteria to determine if the address is an aggressor address. Any scheme or combination or schemes to detect an aggressor address may be used. For example, the controller may monitor a number of times that a given address is provided, a frequency of accesses to the address, or combinations thereof. In some embodiments, the controller may use error tracking to determine when an address is an aggressor address.


Box 505 may generally be followed by box 510 which describes determining if the aggressor address is a frequent aggressor address. The controller may monitor a number of times and/or a frequency at which an aggressor address is identified (e.g., a number and/or frequency of accesses to the row associated with the aggressor address) and then may determine if the aggressor address is a frequent aggressor address based on the number and/or frequency. Box 510 shows a particular implementation of how to determine if the aggressor is a frequent aggressor address (e.g., boxes 515-535) however other implementations may be used in other embodiments.


Box 515 describes comparing the particular address (e.g., the aggressor) to a plurality of stored addresses and changing a count value based, in part, on that comparison. For example, box 515 may describe determining if the aggressor address is present in a row hammer (RH) tracker circuit (e.g., 124 of FIG. 1). The RH tracker circuit may include a data structure (e.g., 126 of FIG. 1) which may store aggressor addresses along with various other information associated with that aggressor address. The aggressor address may be compared to the addresses already stored in the data storage structure.


If there is a match, the method may proceed to box 520, which describes storing the aggressor address in the RH tracker circuit. For example, if there is an open slot in the data storage structure, the aggressor address may be stored and a count value associated with the aggressor address may be initialized. In some embodiments, a time stamp may be stored indicating when the aggressor address was stored. If there is not an open slot in the data storage structure, an existing entry may be overwritten. For example, the entry with the lowest count value or the oldest time stamp may be overwritten.


If there is a match between the aggressor address and one of the stored addresses, then the box 515 may be followed by box 525, which describes changing a count value associated with the stored aggressor address. For example, the count value may be incremented.


Box 525 may generally be followed by box 530, which describes determining if the row of the memory (associated with the aggressor address) has been accessed at least a threshold number of times based, in part, on the count value. For example, box 520 may describe determining if the count value is greater than a first threshold value. If the count value is not, then the aggressor may be judged to not be a frequent aggressor address and the method 500 may return to box 505. If the count value is greater than the threshold, then the aggressor address may be judged to be a frequent aggressor address and box 525 may be followed by box 530.


Box 530 describes managing a cache entry associated with the particular address based, in part, on the determination that the row of the memory has been accessed at least the threshold number of times. For example box 530 may describe locking a cache entry associated with the frequent aggressor address. For example, cache logic may activate a lock flag associated with the cache entry. While the lock flag is active, the data may remain in the cache, which may override other criteria used to determine when the data leaves the cache. The method 500 may include deactivating the lock flat a set time after activating the lock flag.


The method 500 may include retrieving data from a memory array of the memory and storing the data in the cache (which may be part of the memory or part of the controller). While the data is in the cache, the method 500 may include directing accesses to that data to the cache rather than to the memory array. The method 500 may include evicting the data from the cache, which may include writing the evicted data back to the memory. The method 500 may include preventing data from being evicted while the lock flag associated with the data is active.


Block 510 may generally be followed by block 540 if the aggressor address is determined to be a frequent aggressor address. Block 540 describes determining if the frequent aggressor address is a highly attacked address. The method 500 may include tracking a number of times and/or a frequency at which a given address is identified as a frequent aggressor address and then determining that the frequent aggressor address is a highly attacked address based on the number and/or frequency. For example block 540 may describe describes determining if the row of the memory has been accessed at least a second threshold number of times.


Various methods may be used to determine if the frequent aggressor address is a highly attacked address. For example, in a manner analogous to the method described in boxes 515-530, the RH tracker circuit may include a second data structure (e.g., 128 of FIG. 1) which may store frequent addresses along with various other information associated with that frequent aggressor address. A count value may be changed based on a comparison of the frequent aggressor address to the stored frequent aggressor addresses and comparing the count to a second threshold may determine if the frequent aggressor address is a highly attacked address.


If the frequent aggressor address is not a highly attacked address, the method may return to box 505. If the frequent aggressor address is determined to be a highly attacked address, then box 540 may generally be followed by box 545, which describes remapping the highly attacked address. For example, the method 500 may include remapping the highly attacked address from a first memory region with a first type of striping to a second memory region with a second type of striping.


As used herein, an activation of a signal may refer to any portion of a signals waveform that a circuit responds to. For example, if a circuit responds to a rising edge, then a signal switching from a low level to a high level may be an activation. One example type of activation is a pulse, where a signal switches from a low level to a high level for a period of time, and then back to the low level. This may trigger circuits which respond to rising edges, falling edges, and/or signals being at a high logical level. One of skill in the art should understand that although embodiments may be described with respect to a particular type of activation used by a particular circuit (e.g., active high), other embodiments may use other types of activation (e.g., active low).


Of course, it is to be appreciated that any one of the examples, embodiments or processes described herein may be combined with one or more other examples, embodiments and/or processes or be separated and/or performed amongst separate devices or device portions in accordance with the present systems, devices and methods.


Finally, the above-discussion is intended to be merely illustrative of the present system and should not be construed as limiting the appended claims to any particular embodiment or group of embodiments. Thus, while the present system has been described in particular detail with reference to exemplary embodiments, it should also be appreciated that numerous modifications and alternative embodiments may be devised by those having ordinary skill in the art without departing from the broader and intended spirit and scope of the present system as set forth in the claims that follow. Accordingly, the specification and drawings are to be regarded in an illustrative manner and are not intended to limit the scope of the appended claims.

Claims
  • 1. An apparatus comprising: a cache configured to store data associated with an address in a cache entry; andcache logic configured to change a count value based on a number of accesses associated with the address and configured to lock the cache entry based on the count value, wherein the cache logic is configured to activate a lock flag to lock the cache entry, and wherein the cache logic is configured to store a stored address and increase the count value each time the address matches the stored address.
  • 2. The apparatus of claim 1, wherein the cache logic is configured to lock the cache entry for an amount of time.
  • 3. The apparatus of claim 1, further comprising a processor configured to provide the address as part of an access operation on a memory.
  • 4. An apparatus comprising: a cache configured to store data associated with an address in a cache entry; andcache logic configured to change a count value based on a number of accesses associated with the address and configured to lock the cache entry based on the count value, wherein the cache logic is configured to activate a lock flag to lock the cache entry, and wherein the cache logic is configured to change a second count value each time the address is accessed, change the count value each time the second count value crosses a threshold, and lock the cache entry when the count value crosses a threshold.
  • 5. An apparatus comprising: a cache configured to store data associated with an address in a cache entry; andcache logic configured to change a count value based on a number of accesses associated with the address and configured to lock the cache entry based on the count value, wherein the cache logic is configured to activate a lock flag to lock the cache entry, and wherein the cache logic is configured to change a second count value each time the count value is changed, and configured to remap the address when the second count value exceeds a threshold.
  • 6. A method comprising: changing a count value based on a number of times an address is accessed, wherein the address is compared to a plurality of stored addresses and the count value is changed if the address matches one of the stored addresses;storing data associated with the address in a cache entry; andlocking the cache entry based on the count value, wherein locking the cache entry includes activating a lock flag.
  • 7. The method of claim 6, further comprising locking the cache entry for an amount of time.
  • 8. The method of claim 6, further comprising accessing memory cells of a memory array based on the address.
  • 9. The method of claim 6, further comprising storing the address as one of the plurality of stored addresses if the address does not match any of the plurality of stored addresses.
  • 10. A method comprising: changing a count value based on a number of times an address is accessed;storing data associated with the address in a cache entry;locking the cache entry based on the count value, wherein locking the cache entry includes activating a lock flag;changing a second count value each time the address is accessed;changing the count value each time the second count value crosses a threshold; andlocking the cache each time the count value crosses a second threshold.
  • 11. A method comprising: changing a count value based on a number of times an address is accessed;storing data associated with the address in a cache entry;locking the cache entry based on the count value, wherein locking the cache entry includes activating a lock flag;changing a second count value each time the count value crosses a first threshold; andremapping the address responsive to the second count value crossing a second threshold.
  • 12. An apparatus comprising: a first data storage structure configured to store a first plurality of addresses and to change a first count value each time an address matches one of the first plurality of addresses and provide a first command signal when the first count value crosses a first threshold;a second data storage structure configured to store a second plurality of addresses and change a second count value each time the address provided by the first data storage structure matches one of the second plurality of addresses, and configured to provide the address when the second count value crosses a second threshold; anda cache configured to store data associated with the address in a cache entry, wherein the cache entry is locked responsive to the address being provided by the second data storage structure.
  • 13. The apparatus of claim 12, further comprising: a third data storage structure configured to store a third plurality of addresses and to change a third count value each time the address provided by the second data storage structure matches one of the third plurality of count values, and configured to provide the address when the third count signal crosses a third threshold.
  • 14. The apparatus of claim 13, wherein the address is remapped in an address map responsive to the address being provided by the third data storage structure.
  • 15. The apparatus of claim 12, further comprising a sample timing circuit configured to provide a sampling signal, and wherein first data storage structure is configured to receive the address responsive to the sampling signal.
  • 16. The apparatus of claim 12, wherein the cache entry is locked for set amount of time.
  • 17. The apparatus of claim 12, wherein the address is remapped in an address map responsive to the second count value crossing a third threshold.
CROSS REFERENCE TO RELATED APPLICATION(S)

This application is a continuation of U.S. patent application Ser. No. 17/127,654 filed Dec. 18, 2020 and issued as U.S. Pat. No. 11,264,079 on Mar. 1, 2022. The aforementioned application, and issued patent, are incorporated herein by reference, in their entirety, for any purpose.

US Referenced Citations (502)
Number Name Date Kind
5299159 Balistreri et al. Mar 1994 A
5654929 Mote, Jr. Aug 1997 A
5699297 Yamazaki et al. Dec 1997 A
5867442 Kim et al. Feb 1999 A
5933377 Hidaka Aug 1999 A
5943283 Wong et al. Aug 1999 A
5956288 Bermingham et al. Sep 1999 A
5959923 Matteson et al. Sep 1999 A
5970507 Kato et al. Oct 1999 A
5999471 Choi Dec 1999 A
6002629 Kim et al. Dec 1999 A
6011734 Pappert Jan 2000 A
6061290 Shirley May 2000 A
6064621 Tanizaki et al. May 2000 A
6212118 Fujita Apr 2001 B1
6306721 Teo et al. Oct 2001 B1
6310806 Higashi et al. Oct 2001 B1
6310814 Hampel et al. Oct 2001 B1
6363024 Fibranz Mar 2002 B1
6392952 Chen et al. May 2002 B1
6424582 Ooishi Jul 2002 B1
6434064 Nagai Aug 2002 B2
6452868 Fister Sep 2002 B1
6515928 Sato et al. Feb 2003 B2
6535950 Funyu et al. Mar 2003 B1
6535980 Kumar et al. Mar 2003 B1
6567340 Nataraj et al. May 2003 B1
6950364 Kim Sep 2005 B2
7002868 Takahashi Feb 2006 B2
7057960 Fiscus et al. Jun 2006 B1
7082070 Hong Jul 2006 B2
7187607 Koshikawa et al. Mar 2007 B2
7203113 Takahashi et al. Apr 2007 B2
7203115 Eto et al. Apr 2007 B2
7209402 Shinozaki et al. Apr 2007 B2
7215588 Lee May 2007 B2
7444577 Best et al. Oct 2008 B2
7551502 Dono et al. Jun 2009 B2
7565479 Best et al. Jul 2009 B2
7692993 Iida et al. Apr 2010 B2
7830742 Han Nov 2010 B2
8174921 Kim et al. May 2012 B2
8400805 Yoko Mar 2013 B2
8526260 Pyeon Sep 2013 B2
8572423 Isachar et al. Oct 2013 B1
8625360 Iwamoto et al. Jan 2014 B2
8681578 Narui Mar 2014 B2
8756368 Best et al. Jun 2014 B2
8811100 Ku Aug 2014 B2
8862973 Zimmerman et al. Oct 2014 B2
8938573 Greenfield et al. Jan 2015 B2
9032141 Bains et al. May 2015 B2
9047978 Bell et al. Jun 2015 B2
9076499 Schoenborn et al. Jul 2015 B2
9087602 Youn et al. Jul 2015 B2
9117544 Bains et al. Aug 2015 B2
9123447 Lee et al. Sep 2015 B2
9153294 Kang Oct 2015 B2
9190137 Kim et al. Nov 2015 B2
9190139 Jung et al. Nov 2015 B2
9236110 Bains et al. Jan 2016 B2
9251885 Greenfield et al. Feb 2016 B2
9286964 Halbert et al. Mar 2016 B2
9299400 Bains et al. Mar 2016 B2
9311984 Hong et al. Apr 2016 B1
9311985 Lee et al. Apr 2016 B2
9324398 Jones et al. Apr 2016 B2
9384821 Bains et al. Jul 2016 B2
9390782 Best et al. Jul 2016 B2
9396786 Yoon et al. Jul 2016 B2
9406358 Lee Aug 2016 B1
9412432 Narui et al. Aug 2016 B2
9418723 Chishti et al. Aug 2016 B2
9424907 Fujishiro Aug 2016 B2
9484079 Lee Nov 2016 B2
9514850 Kim Dec 2016 B2
9570143 Lim et al. Feb 2017 B2
9570201 Morgan et al. Feb 2017 B2
9646672 Kim et al. May 2017 B1
9653139 Park May 2017 B1
9672889 Lee et al. Jun 2017 B2
9685240 Park Jun 2017 B1
9691466 Kim Jun 2017 B1
9697913 Mariani et al. Jul 2017 B1
9734887 Tavva Aug 2017 B1
9741409 Jones et al. Aug 2017 B2
9741447 Akamatsu Aug 2017 B2
9747971 Bains et al. Aug 2017 B2
9761297 Tomishima Sep 2017 B1
9786351 Lee et al. Oct 2017 B2
9799391 Wei Oct 2017 B1
9805782 Liou Oct 2017 B1
9805783 Ito et al. Oct 2017 B2
9812185 Fisch et al. Nov 2017 B2
9818469 Kim et al. Nov 2017 B1
9831003 Sohn et al. Nov 2017 B2
9865326 Bains et al. Jan 2018 B2
9865328 Desimone et al. Jan 2018 B1
9922694 Akamatsu Mar 2018 B2
9934143 Bains et al. Apr 2018 B2
9953696 Kim Apr 2018 B2
9978430 Seo et al. May 2018 B2
10020045 Riho Jul 2018 B2
10020046 Uemura Jul 2018 B1
10032501 Ito et al. Jul 2018 B2
10049716 Proebsting Aug 2018 B2
10083737 Bains et al. Sep 2018 B2
10090038 Shin Oct 2018 B2
10134461 Bell et al. Nov 2018 B2
10141042 Richter Nov 2018 B1
10147472 Jones et al. Dec 2018 B2
10153031 Akamatsu Dec 2018 B2
10170174 Ito et al. Jan 2019 B1
10192608 Morgan Jan 2019 B2
10210925 Bains et al. Feb 2019 B2
10297305 Moon et al. May 2019 B1
10297307 Raad et al. May 2019 B1
10339994 Ito et al. Jul 2019 B2
10381327 Ramachandra et al. Aug 2019 B2
10446256 Ong et al. Oct 2019 B2
10468076 He et al. Nov 2019 B1
10490250 Ito et al. Nov 2019 B1
10490251 Wolff Nov 2019 B2
10504577 Alzheimer Dec 2019 B1
10510396 Notani et al. Dec 2019 B1
10572377 Zhang et al. Feb 2020 B1
10573370 Ito et al. Feb 2020 B2
10607679 Nakaoka Mar 2020 B2
10685696 Brown et al. Jun 2020 B2
10699796 Benedict et al. Jun 2020 B2
10790005 He et al. Sep 2020 B1
10825505 Rehmeyer Nov 2020 B2
10832792 Penney et al. Nov 2020 B1
10930335 Bell et al. Feb 2021 B2
10943636 Wu et al. Mar 2021 B1
10950289 Ito et al. Mar 2021 B2
10957377 Noguchi Mar 2021 B2
10964378 Ayyapureddi et al. Mar 2021 B2
10978132 Rehmeyer et al. Apr 2021 B2
11017833 Wu et al. May 2021 B2
11069393 Cowles et al. Jul 2021 B2
11081160 Ito et al. Aug 2021 B2
11222683 Rehmeyer Jan 2022 B2
11222686 Noguchi Jan 2022 B1
11227649 Meier et al. Jan 2022 B2
11264079 Roberts Mar 2022 B1
11302374 Jenkinson et al. Apr 2022 B2
11302377 Li et al. Apr 2022 B2
11309010 Ayyapureddi Apr 2022 B2
11309012 Meier et al. Apr 2022 B2
11315619 Wolff Apr 2022 B2
11315620 Ishikawa et al. Apr 2022 B2
11320377 Chen et al. May 2022 B2
11348631 Wu et al. May 2022 B2
11380382 Zhang et al. Jul 2022 B2
11417383 Jenkinson et al. Aug 2022 B2
11532346 Brown et al. Dec 2022 B2
11557331 Mitsubori et al. Jan 2023 B2
11610622 Rehmeyer et al. Mar 2023 B2
11615831 Yamamoto Mar 2023 B2
11626152 Wu et al. Apr 2023 B2
20010008498 Ooishi Jul 2001 A1
20020026613 Niiro Feb 2002 A1
20020181301 Takahashi et al. Dec 2002 A1
20020191467 Matsumoto et al. Dec 2002 A1
20030026161 Yamaguchi et al. Feb 2003 A1
20030063512 Takahashi et al. Apr 2003 A1
20030067825 Shimano et al. Apr 2003 A1
20030081483 De Paor et al. May 2003 A1
20030123301 Jang et al. Jul 2003 A1
20030161208 Nakashima et al. Aug 2003 A1
20030193829 Morgan et al. Oct 2003 A1
20030231540 Lazar et al. Dec 2003 A1
20040004856 Sakimura et al. Jan 2004 A1
20040008544 Shinozaki et al. Jan 2004 A1
20040022093 Lee Feb 2004 A1
20040024955 Patel Feb 2004 A1
20040114446 Takahashi et al. Jun 2004 A1
20040130959 Kawaguchi Jul 2004 A1
20040184323 Mori et al. Sep 2004 A1
20040218431 Chung et al. Nov 2004 A1
20050002268 Otsuka et al. Jan 2005 A1
20050041502 Perner Feb 2005 A1
20050105362 Choi et al. May 2005 A1
20050108460 David May 2005 A1
20050213408 Shieh Sep 2005 A1
20050243627 Lee et al. Nov 2005 A1
20050265104 Remaklus et al. Dec 2005 A1
20060018174 Park et al. Jan 2006 A1
20060083099 Bae et al. Apr 2006 A1
20060087903 Riho et al. Apr 2006 A1
20060104139 Hur et al. May 2006 A1
20060176744 Stave Aug 2006 A1
20060198220 Yoon et al. Sep 2006 A1
20060215474 Hokenmaier Sep 2006 A1
20060233012 Sekiguchi et al. Oct 2006 A1
20060262616 Chen Nov 2006 A1
20060262617 Lee Nov 2006 A1
20060268643 Schreck et al. Nov 2006 A1
20070002651 Lee Jan 2007 A1
20070008799 Dono et al. Jan 2007 A1
20070014175 Min et al. Jan 2007 A1
20070028068 Golding et al. Feb 2007 A1
20070030746 Best et al. Feb 2007 A1
20070033339 Best et al. Feb 2007 A1
20070106838 Choi May 2007 A1
20070147154 Lee Jun 2007 A1
20070165042 Yagi Jul 2007 A1
20070171750 Oh Jul 2007 A1
20070237016 Miyamoto et al. Oct 2007 A1
20070263442 Cornwell et al. Nov 2007 A1
20070297252 Singh Dec 2007 A1
20080028137 Schakel et al. Jan 2008 A1
20080028260 Oyagi et al. Jan 2008 A1
20080031068 Yoo et al. Feb 2008 A1
20080126893 Harrand et al. May 2008 A1
20080130394 Dono et al. Jun 2008 A1
20080181048 Han Jul 2008 A1
20080212386 Riho Sep 2008 A1
20080224742 Pomichter Sep 2008 A1
20080253212 Iida et al. Oct 2008 A1
20080253213 Sato et al. Oct 2008 A1
20080266990 Loeffler Oct 2008 A1
20080270683 Barth et al. Oct 2008 A1
20080306723 De Ambroggi et al. Dec 2008 A1
20080316845 Wang et al. Dec 2008 A1
20090021999 Tanimura et al. Jan 2009 A1
20090052264 Hong et al. Feb 2009 A1
20090059641 Jeddeloh Mar 2009 A1
20090073760 Betser et al. Mar 2009 A1
20090161468 Fujioka Jun 2009 A1
20090168571 Pyo et al. Jul 2009 A1
20090185440 Lee Jul 2009 A1
20090201752 Riho et al. Aug 2009 A1
20090228739 Cohen et al. Sep 2009 A1
20090251971 Futatsuyama Oct 2009 A1
20090296510 Lee et al. Dec 2009 A1
20100005217 Jeddeloh Jan 2010 A1
20100005376 Laberge et al. Jan 2010 A1
20100061153 Yen et al. Mar 2010 A1
20100074042 Fukuda et al. Mar 2010 A1
20100097870 Kim et al. Apr 2010 A1
20100110809 Kobayashi et al. May 2010 A1
20100110810 Kobayashi May 2010 A1
20100124138 Lee et al. May 2010 A1
20100128547 Kagami May 2010 A1
20100131812 Mohammad May 2010 A1
20100141309 Lee Jun 2010 A1
20100157693 Iwai et al. Jun 2010 A1
20100182862 Teramoto Jul 2010 A1
20100182863 Fukiage Jul 2010 A1
20100329069 Ito et al. Dec 2010 A1
20110026290 Noda et al. Feb 2011 A1
20110055495 Remaklus, Jr. et al. Mar 2011 A1
20110069572 Lee et al. Mar 2011 A1
20110122987 Neyer May 2011 A1
20110134715 Norman Jun 2011 A1
20110216614 Hosoe Sep 2011 A1
20110225355 Kajigaya Sep 2011 A1
20110299352 Fujishiro et al. Dec 2011 A1
20110310648 Iwamoto et al. Dec 2011 A1
20120014199 Narui Jan 2012 A1
20120059984 Kang et al. Mar 2012 A1
20120151131 Kilmer et al. Jun 2012 A1
20120155173 Lee et al. Jun 2012 A1
20120155206 Kodama et al. Jun 2012 A1
20120213021 Riho et al. Aug 2012 A1
20120254472 Ware et al. Oct 2012 A1
20120287727 Wang Nov 2012 A1
20120307582 Marumoto et al. Dec 2012 A1
20120327734 Sato Dec 2012 A1
20130003467 Klein Jan 2013 A1
20130003477 Park et al. Jan 2013 A1
20130028034 Fujisawa Jan 2013 A1
20130051157 Park Feb 2013 A1
20130051171 Porter et al. Feb 2013 A1
20130077423 Lee Mar 2013 A1
20130173971 Zimmerman Jul 2013 A1
20130254475 Perego et al. Sep 2013 A1
20130279284 Jeong Oct 2013 A1
20130304982 Jung et al. Nov 2013 A1
20140006700 Schaefer et al. Jan 2014 A1
20140006703 Bains et al. Jan 2014 A1
20140006704 Greenfield et al. Jan 2014 A1
20140013169 Kobla et al. Jan 2014 A1
20140013185 Kobla et al. Jan 2014 A1
20140016422 Kim et al. Jan 2014 A1
20140022858 Chen et al. Jan 2014 A1
20140043888 Chen et al. Feb 2014 A1
20140050004 Mochida Feb 2014 A1
20140078841 Chopra Mar 2014 A1
20140078842 Oh et al. Mar 2014 A1
20140089576 Bains et al. Mar 2014 A1
20140089758 Kwok et al. Mar 2014 A1
20140095780 Bains et al. Apr 2014 A1
20140095786 Moon et al. Apr 2014 A1
20140119091 You et al. May 2014 A1
20140143473 Kim et al. May 2014 A1
20140169114 Oh Jun 2014 A1
20140177370 Halbert et al. Jun 2014 A1
20140181453 Jayasena et al. Jun 2014 A1
20140185403 Lai Jul 2014 A1
20140189228 Greenfield et al. Jul 2014 A1
20140219042 Yu et al. Aug 2014 A1
20140219043 Jones et al. Aug 2014 A1
20140237307 Kobla et al. Aug 2014 A1
20140241099 Seo et al. Aug 2014 A1
20140254298 Dally Sep 2014 A1
20140281206 Crawford et al. Sep 2014 A1
20140281207 Mandava et al. Sep 2014 A1
20140293725 Best et al. Oct 2014 A1
20140321226 Pyeon Oct 2014 A1
20150016203 Sriramagiri et al. Jan 2015 A1
20150036445 Yoshida et al. Feb 2015 A1
20150049566 Lee et al. Feb 2015 A1
20150049567 Chi Feb 2015 A1
20150055420 Bell et al. Feb 2015 A1
20150078112 Huang Mar 2015 A1
20150085564 Yoon et al. Mar 2015 A1
20150089326 Joo et al. Mar 2015 A1
20150092508 Bains Apr 2015 A1
20150109871 Bains et al. Apr 2015 A1
20150120999 Kim et al. Apr 2015 A1
20150134897 Sriramagiri et al. May 2015 A1
20150155025 Lee et al. Jun 2015 A1
20150162064 Oh et al. Jun 2015 A1
20150162067 Kim et al. Jun 2015 A1
20150170728 Jung et al. Jun 2015 A1
20150199126 Jayasena et al. Jul 2015 A1
20150206572 Lim et al. Jul 2015 A1
20150213872 Mazumder et al. Jul 2015 A1
20150243339 Bell et al. Aug 2015 A1
20150255140 Song Sep 2015 A1
20150279442 Hwang Oct 2015 A1
20150294711 Gaither et al. Oct 2015 A1
20150340077 Akamatsu Nov 2015 A1
20150356048 King Dec 2015 A1
20150380073 Joo et al. Dec 2015 A1
20160019940 Jang et al. Jan 2016 A1
20160027498 Ware et al. Jan 2016 A1
20160027531 Jones et al. Jan 2016 A1
20160027532 Kim Jan 2016 A1
20160042782 Narui et al. Feb 2016 A1
20160070483 Yoon et al. Mar 2016 A1
20160078846 Liu et al. Mar 2016 A1
20160078911 Fujiwara et al. Mar 2016 A1
20160086649 Hong et al. Mar 2016 A1
20160093402 Kitagawa et al. Mar 2016 A1
20160125931 Doo et al. May 2016 A1
20160133314 Hwang et al. May 2016 A1
20160155491 Roberts et al. Jun 2016 A1
20160180917 Chishti et al. Jun 2016 A1
20160180921 Jeong Jun 2016 A1
20160196863 Shin et al. Jul 2016 A1
20160202926 Benedict Jul 2016 A1
20160225433 Bains et al. Aug 2016 A1
20160336060 Shin Nov 2016 A1
20160343423 Shido Nov 2016 A1
20170011792 Oh et al. Jan 2017 A1
20170052722 Ware et al. Feb 2017 A1
20170076779 Bains et al. Mar 2017 A1
20170092350 Halbert et al. Mar 2017 A1
20170111792 Correia Fernandes et al. Apr 2017 A1
20170117030 Fisch et al. Apr 2017 A1
20170133085 Kim et al. May 2017 A1
20170133108 Lee et al. May 2017 A1
20170140807 Sun et al. May 2017 A1
20170140810 Choi et al. May 2017 A1
20170140811 Joo May 2017 A1
20170146598 Kim et al. May 2017 A1
20170148504 Saifuddin et al. May 2017 A1
20170177246 Miller et al. Jun 2017 A1
20170186481 Oh et al. Jun 2017 A1
20170213586 Kang et al. Jul 2017 A1
20170221546 Loh et al. Aug 2017 A1
20170263305 Cho Sep 2017 A1
20170269861 Lu et al. Sep 2017 A1
20170287547 Ito et al. Oct 2017 A1
20170323675 Jones et al. Nov 2017 A1
20170345482 Balakrishnan Nov 2017 A1
20170352404 Lee et al. Dec 2017 A1
20180005690 Morgan et al. Jan 2018 A1
20180025770 Ito et al. Jan 2018 A1
20180025772 Lee et al. Jan 2018 A1
20180025773 Bains et al. Jan 2018 A1
20180033479 Lea et al. Feb 2018 A1
20180047110 Blackman et al. Feb 2018 A1
20180061476 Kim Mar 2018 A1
20180061483 Morgan Mar 2018 A1
20180061485 Joo Mar 2018 A1
20180075927 Jeong et al. Mar 2018 A1
20180082737 Lee Mar 2018 A1
20180096719 Tomishima et al. Apr 2018 A1
20180102776 Chandrasekar et al. Apr 2018 A1
20180107417 Shechter et al. Apr 2018 A1
20180108401 Choi et al. Apr 2018 A1
20180114561 Fisch et al. Apr 2018 A1
20180114565 Lee Apr 2018 A1
20180122454 Lee et al. May 2018 A1
20180130506 Kang et al. May 2018 A1
20180137005 Wu et al. May 2018 A1
20180158504 Akamatsu Jun 2018 A1
20180158507 Bang Jun 2018 A1
20180182445 Lee et al. Jun 2018 A1
20180190340 Kim et al. Jul 2018 A1
20180218767 Wolff Aug 2018 A1
20180226119 Kim et al. Aug 2018 A1
20180233197 Laurent Aug 2018 A1
20180240511 Yoshida et al. Aug 2018 A1
20180247876 Kim et al. Aug 2018 A1
20180254078 We et al. Sep 2018 A1
20180261268 Hyun et al. Sep 2018 A1
20180276150 Eckert et al. Sep 2018 A1
20180285007 Franklin et al. Oct 2018 A1
20180294028 Lee et al. Oct 2018 A1
20180308539 Ito et al. Oct 2018 A1
20180341553 Koudele et al. Nov 2018 A1
20190013059 Akamatsu Jan 2019 A1
20190043558 Suh et al. Feb 2019 A1
20190051344 Bell et al. Feb 2019 A1
20190065087 Li et al. Feb 2019 A1
20190066759 Nale Feb 2019 A1
20190066766 Lee Feb 2019 A1
20190088315 Saenz et al. Mar 2019 A1
20190088316 Inuzuka et al. Mar 2019 A1
20190103147 Jones et al. Apr 2019 A1
20190115069 Lai Apr 2019 A1
20190122723 Ito et al. Apr 2019 A1
20190129651 Wuu et al. May 2019 A1
20190130960 Kim May 2019 A1
20190130961 Bell et al. May 2019 A1
20190147964 Yun et al. May 2019 A1
20190161341 Howe May 2019 A1
20190190341 Beisele et al. Jun 2019 A1
20190196730 Imran Jun 2019 A1
20190198078 Hoang et al. Jun 2019 A1
20190198099 Mirichigni et al. Jun 2019 A1
20190205253 Roberts Jul 2019 A1
20190228810 Jones et al. Jul 2019 A1
20190228815 Morohashi et al. Jul 2019 A1
20190252020 Rios et al. Aug 2019 A1
20190267077 Ito et al. Aug 2019 A1
20190279706 Kim Sep 2019 A1
20190294348 Ware et al. Sep 2019 A1
20190333573 Shin et al. Oct 2019 A1
20190347019 Shin et al. Nov 2019 A1
20190348100 Smith et al. Nov 2019 A1
20190348102 Smith et al. Nov 2019 A1
20190348103 Jeong et al. Nov 2019 A1
20190362774 Kuramori et al. Nov 2019 A1
20190385661 Koo et al. Dec 2019 A1
20190385667 Morohashi et al. Dec 2019 A1
20190385668 Fujioka et al. Dec 2019 A1
20190385670 Notani et al. Dec 2019 A1
20190386557 Wang et al. Dec 2019 A1
20190391760 Miura et al. Dec 2019 A1
20190392886 Cox et al. Dec 2019 A1
20200005857 Ito et al. Jan 2020 A1
20200051616 Cho Feb 2020 A1
20200075086 Hou et al. Mar 2020 A1
20200082873 Wolff Mar 2020 A1
20200126611 Riho et al. Apr 2020 A1
20200135263 Brown et al. Apr 2020 A1
20200143871 Kim et al. May 2020 A1
20200176050 Ito et al. Jun 2020 A1
20200185026 Yun et al. Jun 2020 A1
20200194050 Akamatsu Jun 2020 A1
20200194056 Sakurai et al. Jun 2020 A1
20200202921 Morohashi et al. Jun 2020 A1
20200210278 Rooney et al. Jul 2020 A1
20200211632 Noguchi Jul 2020 A1
20200211633 Okuma Jul 2020 A1
20200211634 Ishikawa et al. Jul 2020 A1
20200219555 Rehmeyer Jul 2020 A1
20200219556 Ishikawa et al. Jul 2020 A1
20200265888 Ito et al. Aug 2020 A1
20200273517 Yamamoto Aug 2020 A1
20200273518 Raad et al. Aug 2020 A1
20200279599 Ware et al. Sep 2020 A1
20200294569 Wu et al. Sep 2020 A1
20200294576 Brown et al. Sep 2020 A1
20200321049 Meier et al. Oct 2020 A1
20200381040 Penney et al. Dec 2020 A1
20200388324 Rehmeyer et al. Dec 2020 A1
20200388325 Cowles et al. Dec 2020 A1
20200395063 Rehmeyer Dec 2020 A1
20210057021 Wu et al. Feb 2021 A1
20210057022 Jenkinson et al. Feb 2021 A1
20210118491 Li et al. Apr 2021 A1
20210166752 Noguchi Jun 2021 A1
20210183433 Jenkinson et al. Jun 2021 A1
20210183435 Meier et al. Jun 2021 A1
20210225431 Rehmeyer et al. Jul 2021 A1
20210304813 Cowles et al. Sep 2021 A1
20210335411 Wu et al. Oct 2021 A1
20210406170 Jung Dec 2021 A1
20220059153 Zhang et al. Feb 2022 A1
20220059158 Wu et al. Feb 2022 A1
20220093165 Mitsubori et al. Mar 2022 A1
20220165328 Ishikawa et al. May 2022 A1
20220189539 Li et al. Jun 2022 A1
20220270670 Wu et al. Aug 2022 A1
Foreign Referenced Citations (28)
Number Date Country
1841551 Oct 2006 CN
101026003 Aug 2007 CN
101038785 Sep 2007 CN
101067972 Nov 2007 CN
102301423 Dec 2011 CN
104350546 Feb 2015 CN
104733035 Jun 2015 CN
104981874 Oct 2015 CN
105529047 Apr 2016 CN
106710621 May 2017 CN
107025927 Aug 2017 CN
107871516 Apr 2018 CN
108154895 Jun 2018 CN
2005-216429 Aug 2005 JP
2011-258259 Dec 2011 JP
4911510 Jan 2012 JP
2013-004158 Jan 2013 JP
6281030 Jan 2018 JP
201801079 Jan 2018 TW
2014120477 Aug 2014 WO
2015030991 Mar 2015 WO
2017171927 Oct 2017 WO
2019222960 Nov 2019 WO
2020010010 Jan 2020 WO
2020117686 Jun 2020 WO
2020191222 Sep 2020 WO
2020247163 Dec 2020 WO
2020247639 Dec 2020 WO
Non-Patent Literature Citations (61)
Entry
U.S. Appl. No. 16/797,658, titles “Apparatuses and Methods for Controlling Refresh Operations”, filed Feb. 21, 2020.
U.S. Appl. No. 16/268,818, titled “Apparatuses and Methods for Managing Row Access Counts”, filed Feb. 6, 2019.
U.S. Appl. No. 16/358,587, titled “Semiconductor Device Having Cam That Stores Address Signals”, dated Mar. 19, 2019.
U.S. Appl. No. 16/411,573 titled “Apparatuses, Systems, and Methods for a Content Addressable Memory Cell”, filed May 14, 2019.
U.S. Appl. No. 17/008,396 titled “Apparatuses and Methods for Staggered Timing of Targeted Refresh Operations”, filed Aug. 31, 2020.
U.S. Appl. No. 16/513,400 titled “Apparatuses and Methods for Tracking Row Accesses”, filed Jul. 16, 2019.
U.S. Appl. No. 16/548,027 titled “Apparatuses, Systems, and Methods for Analog Row Access Rate Determination”, filed Aug. 22, 2019.
U.S. Appl. No. 16/549,942 titled “Apparatuses and Methods for Lossy Row Access Counting”, filed Aug. 23, 2019.Pub.
International Application No. PCT/US19/40169 titled “Apparatus and Methods for Triggering Row Hammer Address Sampling” filed Jul. 1, 2019.
International Application No. PCT/US19/64028, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, dated Dec. 2, 2019.
International Application No. PCT/US20/26689, titled “Apparatuses and Methods for Staggered Timing of Targeted Refresh Operations”, dated Apr. 3, 2020.
International Search Report and Written Opinion for PCT/US2020/026689 dated Jul. 22, 2020.
International Search Report and Written Opinion for Application No. PCT/US2019/040169, dated Oct. 25, 2019.
PCT Application No. PCT/US20/32931, titled “Apparatuses and Methods for Controlling Steal Rates”, dated May 14, 2020.
U.S. Appl. No. 16/788,657, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, dated Feb. 12, 2020.
U.S. Appl. No. 17/324,621 titled “Apparatuses and Methods for Pure-Time, Self-Adopt Sampling for Row Hammer Refresh Sampling”, filed May 19, 2021.
U.S. Appl. No. 15/881,256 entitled ‘Apparatuses and Methods for Detecting a Row Hammer Attack With a Bandpass Filter’, filed on Jan. 26, 2018.
U.S. Appl. No. 16/425,525 titled “Apparatuses and Methods for Tracking All Row Accesses”, filed May 29, 2019.
U.S. Appl. No. 16/427,105 titled “Apparatuses And Methods For Priority Targeted Refresh Operations”, filed May 30, 2019.
U.S. Appl. No. 16/427,140 titled “Apparatuses and Methods for Tracking Row Access Counts Between Multiple Register Stacks”, filed May 30, 2019.
U.S. Appl. No. 16/437,811 titled “Apparatuses, Systems, and Methods for Determining Extremum Numerical Values”, filed Jun. 11, 2019.
U.S. Appl. No. 16/537,981 titled “Apparatuses and Methods for Controlling Targeted Refresh Rates”, filed Aug. 12, 2019.
U.S. Appl. No. 16/994,338 titled “Apparatuses, Systems, and Methods for Memory Directed Access Pause”, filed Aug. 14, 2020.
U.S. Appl. No. 16/997,766 titled “Refresh Logic Circuit Layouts Thereof”, filed Aug. 19, 2020.
U.S. Appl. No. 16/997,659 titled “Apparatuses, Systems, and Methods for Refresh Modes”, filed Aug. 19, 2020.
U.S. Appl. No. 17/095,978 titled “Apparatuses and Methods for Controlling Refresh Timing”, filed Nov. 12, 2020.
U.S. Appl. No. 17/175,485 titled “Apparatuses and Methods for Distributed Targeted Refresh Operations”, filed Feb. 12, 2021.
U.S. Appl. No. 15/789,897, entitled “Apparatus and Methods for Refreshing Memory”, filed Oct. 20, 2017; pp. all.
U.S. Appl. No. 15/796,340, entitled: “Apparatus and Methods for Refreshing Memory”, filed Oct. 27, 2017 pp. all.
U.S. Appl. No. 16/012,679, titled “Apparatuses and Methods for Multiple Row Hammer Refresh Address Sequences”, filed Jun. 19, 2018.
U.S. Appl. No. 16/020,863, titled “Semiconductor Device”, filed Jun. 27, 2018.
U.S. Appl. No. 16/112,471 titled “Apparatuses and Methods for Controlling Refresh Operations”, filed Aug. 24, 2018.
U.S. Appl. No. 16/160,801, titled “Apparatuses and Methods for Selective Row Refreshes”, filed Oct. 15, 2018, pp all.
U.S. Appl. No. 16/176,932, titled “Apparatuses and Methods for Access Based Refresh Timing”, filed Oct. 31, 2018.
U.S. Appl. No. 16/208,217, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, filed Dec. 3, 2018.
U.S. Appl. No. 16/230,300, titled “Apparatuses and Methods for Staggered Timing of Targeted Refresh Operations”, filed Dec. 21, 2018.
U.S. Appl. No. 16/231,327 titled “Apparatuses and Methods for Selective Row Refreshes”, filed Dec. 21, 2018.
U.S. Appl. No. 16/237,291, titled “Apparatus and Methods for Refreshing Memory”, filed Dec. 31, 2018.
U.S. Appl. No. 16/290,730, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, filed Mar. 1, 2019.
U.S. Appl. No. 16/374,623, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, filed Apr. 3, 2019.
U.S. Appl. No. 16/411,698 title “Semiconductor Device”, filed May 14, 2019.
U.S. Appl. No. 16/427,330 titled “Apparatuses and Methods for Storing Victim Row Data”, filed May 30, 2019.
U.S. Appl. No. 16/431,641 titled “Apparatuses and Methods for Controlling Steal Rates”, filed Jun. 4, 2019.
U.S. Appl. No. 16/682,606, titled “Apparatuses and Methods for Distributing Row Hammer Refresh Events Across a Memory Device ”, filed Nov. 13 2019.
U.S. Appl. No. 15/876,566 entitled ‘Apparatuses and Methods for Calculating Row Hammer Refresh Addresses in a Semiconductor Device’, filed Jan. 22, 2018.
U.S. Appl. No. 15/656,084 Titled: Apparatuses and Methods for Targeted Refreshing of Memory, filed Jul. 21, 2017.
U.S. Appl. No. 16/459,520 titled “Apparatuses and Methods for Monitoring Word Line Accesses”, filed Jul. 1, 2019, pp. all.
PCT Application No. PCT/US18/55821 “Apparatus and Methods for Refreshing Memory” filed Oct. 15, 2018., pp. all.
U.S. Appl. No. 15/715,846, entitled “Semiconductor Device”, filed Sep. 26, 2017, pp. all.
U.S. Appl. No. 15/888,993, entitled “Apparatuses and Methods for Controlling Refresh Operations”, filed Feb. 5, 2018, pp. all.
U.S. Appl. No. 16/190,627 titled “Apparatuses and Methods for Targeted Refreshing of Memory”, filed Nov. 14, 2018, pp. all.
U.S. Appl. No. 17/030,018, titled “Apparatuses and Methods for Controlling Refresh Operations”, filed Sep. 23, 2020, pp. all.
“U.S. Appl. No. 15/281,818, entitled: “Semiconductor Device”, filed Sep. 30, 2016”.
Kim, et al., “Flipping Bits in MemoryWithout Accessing Them: An Experimental Study of DRAM Disturbance Errors”, IEEE, Jun. 2014, 12 pgs.
U.S. Appl. No. 17/662,733, titled “Apparatuses, Systems, and Methods for Identifying Victim Rows in a Memorydevice Which Cannot be Simultaneously Refreshed”, filed May 10, 2022, pp. all pages of application as filed.
U.S. Appl. No. 17/731,529, titled “Apparatuses and Methods for Access Based Refresh Dperations”, filed Apr. 28, 2022; pp. all pages of the application as filed.
U.S. Appl. No. 17/731,645, titled “Apparatuses and Methods for Access Based Targeted Refresh Operations”, filed Apr. 28, 2022; pp. all pages of application as filed.
U.S. Appl. No. 17/654,035, titled “Apparatuses and Methods for Dynamic Targeted Refresh Steals”, filed Mar. 8, 2022; pp. all pages of application as filed.
U.S. Appl. No. 18/064,773, filed Dec. 12, 2022, titled, “Apparatuses and Methods for Access Based Refresh Timing,” pp. all pages of application as filed.
Kyungbae Park et al. “Experiments and Root Cause Analysis for Active-Precharge Hammering Fault in DDR3 SDRAM Under 3 X NM Technology”; Microelectronics Reliability: An Internet. Journal and World Abstracting Service; vol. 57, Dec. 23, 2015; pp. 39-46.
U.S. Appl. No. 18/356,502, titled “Refresh Modes for Performing Various Refresh Operation Types” filed Jul. 21, 2023.
Related Publications (1)
Number Date Country
20220199144 A1 Jun 2022 US
Continuations (1)
Number Date Country
Parent 17127654 Dec 2020 US
Child 17591319 US