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.
Different memory cells may lose information at different rates (e.g., different rates of memory decay). To preserve information, the rate at which memory cells are refreshed may be based on the rate of the memory cells with the fastest anticipated information decay. However, this may be inefficient, as some memory cells may be over refreshed, and the memory may spend time refreshing which is not necessary, and which could have been spend performing other functions.
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 memory cells associated with the wordline to restore their initial states. The auto-refresh operations may be performed on the wordlines of the memory in a sequence.
The rate at which the refresh operations are performed may be chosen to prevent the loss of information, ideally such that each memory cell is refreshed before the information stored in that memory cell is lost. Different memory cells (e.g., different rows of memory) may lose information at different rates. For example some rows (due to variances in manufacturing, variances in location on the chip, etc.) may decay faster than others. It may be useful to group rows together (e.g., binning) into groups based on the expected rate of data decay such that different groups may be refreshed at different rates. For example a bin of identified ‘weak’ rows with a high rate of information decay may be refreshed more frequently than a bin of identified ‘normal’ rows with a lower rate of information decay. However it may be inefficient if information about binning is stored separately for each row of the memory. It may be desirable to use data structures which allow for more efficient recording of which rows belong to which bins.
The present disclosure is drawn to sketch circuits for refresh binning. A sketch circuit represents a data structure which may be useful for recording information in a manner which does not require a separate storage space for each row. A sketch circuit includes a storage structure which includes a table of entries each of which are indexed by a hash function and a value output by that hash function. For example, a first hash generator (which uses a first hash operation) may provide a first value based on an address, which may be associated with a first entry in the table indexed by the first value and the first hash function. A second hash generator (which uses a second hash operation) may provide a second value based on the address, which may be associated with a second entry and so forth. Since each hash function may include collisions (e.g., each hash value may be associated with several row addresses), each row of entries (e.g., each set of entries associated with a given hash function) may contain many fewer entries than there are row addresses. The use of multiple ‘rows’ (e.g., multiple hash functions) may help preserve information despite the number of collisions on a given row.
In an example refresh operation using a refresh circuit, a refresh address generator may generate an address as part of a refresh operation (e.g., by using a counter to generate a sequence of addresses). It may provide the address to multiple hash generators, each of which may generate a hash value associated with that address. Each value (and hash circuit) may be used to index an entry in the storage structure. Accordingly a number of entries (one for each hash circuit) may be retrieved. The values of these entries may be used to determine which refresh bin the address belongs to. For example there may be two bins (normal and weak rows) and each entry in the storage structure may be a binary bit, with a logical high representing a weak row and a logical low representing a normal row. The row may be judged to be a weak row if any of the entries retrieved from the storage structure is a logical high. A refresh control circuit may refresh weak rows more frequently than normal rows. For example, the refresh control circuit may cycle through all memory addresses as part of a refresh cycle, and on every other cycle, may only refresh rows identified as weak rows.
Although collisions between different row addresses in the hash circuits may cause rows to be falsely identified as belonging to a ‘weak’ bin, the use of a sketch circuit may tend to overestimate the number of rows in a ‘weak’ bin, which may be safer than a structure which allows for false negatives. The use of binning may also allow for increased performance, as the rate at which ‘normal’ rows are refreshed may be lower than in a conventional memory where the refresh rate is set based on the rate needed for the weakest rows. This may free up bandwidth for the memory to perform other tasks and reduce the power consumption of the memory.
The storage structure may be loaded with information indicating which rows belong to which refresh groups. For example, the memory may be tested and weak rows may be identified. The weak row addresses may be fed into the hash generators and those values may be used to index the entries in the storage structure. In some embodiments, the storage structure may include non-volatile memory elements (e.g., fuses, anti-fuses, etc.). Accordingly, the entries associated with the identified weak row may be changed (e.g., the fuses may be blown). In some embodiments, this testing and setting of the storage structure may be done in a factory. In some embodiments, the memory may be able to perform post-package repair (PPR) to change the entries in the field. In some embodiments, a controller may include the storage structure and may dynamically alter the entries based on error detection. This may allow the controller to adjust the rates at which different word lines are refreshed dynamically.
The semiconductor device 100 includes a memory array 118. The memory array 118 is shown as including a plurality of memory banks. In the embodiment of
The semiconductor device 100 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.
The clock terminals are supplied with external clocks CK and /CK that are provided to an input circuit 112. The external clocks may be complementary. The input circuit 112 generates an internal clock ICLK based on the CK and /CK clocks. The clock is provided to the command decoder 110 and to an internal clock generator 114. The internal clock generator 114 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 122 to time operation of circuits included in the input/output circuit 122, for example, to data receivers to time the receipt of write data.
The C/A terminals may be supplied with memory addresses. The memory addresses supplied to the C/A terminals are transferred, via a command/address input circuit 102, to an address decoder 104. The address decoder 104 receives the address and supplies a decoded row address XADD to the row decoder 108 and supplies a decoded column address YADD to the column decoder 110. The address decoder 104 may also supply a decoded bank address BADD, which may indicate the bank of the memory array 118 containing the decoded row address XADD and column address YADD. The C/A terminals may be supplied with commands. 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 106 via the command/address input circuit 102. The command decoder 106 includes circuits to decode the internal command signals to generate various internal signals and commands for performing operations. For example, the command decoder 106 may provide a row command signal to select a word line and a column command signal to select a bit line.
The device 100 may receive an access command which is a read command. 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 118 corresponding to the row address and column address. The read command is received by the command decoder 106, which provides internal commands so that read data from the memory array 118 is provided to the read/write amplifiers 120. The read data is output to outside from the data terminals DQ via the input/output circuit 122.
The device 100 may receive an access command which is a write command. 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 118 corresponding to the row address and column address. The write command is received by the command decoder 106, which provides internal commands so that the write data is received by data receivers in the input/output circuit 122. 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 122. The write data is supplied via the input/output circuit 122 to the read write amplifiers 120, and by the read/write amplifiers 120 to the memory array 118 to be written into the memory cell MC.
The device 100 may also receive commands 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 100. 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 106 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 100 to return to an idle state and/or resume other operations.
The refresh signal AREF is supplied to the refresh control circuit 116. The refresh control circuit 116 supplies a refresh row address RXADD to the row decoder 108, 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 108. 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 116 may control a timing of the refresh operation, and may generate and provide the refresh address RXADD. The refresh control circuit 116 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 116 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 108 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. For example, a counter may be used to increment or otherwise ‘count through’ possible row address values for RXADD. The refresh control circuit 116 may cycle through the sequence of auto-refresh addresses at a rate determined by AREF. A refresh cycle may represent the auto-refresh address generator refreshing each row of the memory (e.g., providing each value of the auto-refresh address). 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.
Different row addresses of the memory array 118 may have different rates of data decay. Accordingly, some word lines may need to be refreshed more frequently than other word lines to preserve their information. The different word lines may be sorted into different groups or bins, based on their performance characteristics (e.g., the rate of information decay). For example, a first bin may include word lines which have been identified as ‘weak’ (e.g., they have an information decay time below a certain threshold) while a second bin may include a remainder of the word lines (e.g., a ‘normal’ bin). More bins may be used in other examples. While performing auto-refresh operations, the auto-refresh address may be checked to see what bin the word line associated with that address belongs to, and the rate at which that word line is refreshed may be determined based on the bin. For example, during every other refresh cycle (e.g., cycling through all possible values of the auto-refresh address) only the auto-refresh addresses identified as part of the ‘weak’ bin may be provided as the refresh address RXADD. Other patterns of varying the rates of refresh operations between bins are possible in other embodiments. As described in more detail herein, the memory device 100 may store the binning information in a sketch circuit.
Since the refresh control circuit 116 stores information binning the rows into groups based on their expected rate of information decay, the refresh rate for each bin may be set based on the fasted expected rate of information loss in that group. Accordingly, this may allow rows which are grouped in ‘stronger’ (e.g., normal) bins to be refreshed less often than the weak rows. Since it may generally be expected that there are many more ‘normal’ rows than ‘weak’ rows, this may reduce the overall rate of refresh operations in the memory device 100. This, in turn, may improve the performance of the memory 100, for example by reducing the power consumption used to refresh the memory 100 and/or by increasing bandwidth by freeing up more time for the memory 100 to perform non-refresh operations.
The refresh control circuit 116 may also determine targeted refresh addresses which are addresses that require refreshing (e.g., victim addresses corresponding to victim rows) based on the access pattern of nearby addresses (e.g., aggressor addresses corresponding to aggressor rows) in the memory array 118. The refresh control circuit 116 may use one or more signals of the device 100 to calculate the targeted refresh address RXADD. For example, the refresh address RXADD may be a calculated based on the row addresses XADD provided by the address decoder.
In some embodiments, the refresh control circuit 116 may sample the current value of the row address XADD provided by the address decoder 104 along a row address bus, and determine a targeted refresh address based on one or more of the sampled addresses. The sampled addresses may be stored in a data storage unit of the refresh control circuit. When a row address XADD is sampled, it may be compared to the stored addresses in the data storage unit. In some embodiments, the aggressor address may be determined based on the sampled and/or stored addresses. For example, the comparison between the sampled address and the stored addresses may be used to update a count value (e.g., an access count) associated with the stored addresses and the aggressor address may be calculated based on the count values. The refresh addresses RXADD may then be used based on the aggressor addresses.
While in general the present disclosure refers to determining aggressor and victim wordlines and addresses, it should be understood that as used herein, an aggressor wordline does not necessarily need to cause data degradation in neighboring wordlines, and a victim wordline does not necessarily need to be subject to such degradation. The refresh control circuit 116 may use some criteria to judge whether an address is an aggressor address, which may capture potential aggressor addresses rather than definitively determining which addresses are causing data degradation in nearby victims. For example, the refresh control circuit 116 may determine potential aggressor addresses based on a pattern of accesses to the addresses and this criteria may include some addresses which are not aggressors, and miss some addresses which are. Similarly, victim addresses may be determined based on which wordlines are expected to be effected by aggressors, rather than a definitive determination of which wordlines are undergoing an increased rate of data 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 124. The internal voltage generator circuit 124 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 108, the internal potentials VOD and VARY are mainly used in the sense amplifiers SAMP included in the memory array 118, 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 122. 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 122 so that power supply noise generated by the input/output circuit 122 does not propagate to the other circuit blocks.
The refresh control circuit 200 includes a refresh cycle generator 202, which receives the refresh signal AREF and determines the timing of refresh operations based the refresh signal AREF. The refresh control circuit 202 also determines if an auto-refresh operation or a targeted refresh operation should be performed and provides signals such as a targeted refresh signal RHR and an internal refresh signal IREF which indicate what type of refresh operation should be performed. The refresh control circuit 204 includes a refresh address generator 204, which generates a refresh address RXADD based, in part on the signals received from the refresh cycle generator 202. During a targeted refresh operation, a targeted refresh address generator 206 of the refresh address generator 204 may provide a targeted refresh address as RXADD. During an auto-refresh operation, an auto-refresh generator 208 of the refresh address generator 204 may generate an auto-refresh address Pre_RXADD and provide it to a refresh binning circuit 210, which may indicate which bin the auto-refresh address Pre_RXADD is part of. Based on that information, the refresh address generator 204 may determine whether to provide the auto-refresh address Pre_RXADD as the refresh address RXADD or not.
The refresh cycle generator 202 may receive the refresh signal AREF and may provide internal refresh signals IREF and/or RHR with timing based on the refresh signal AREF. The signals IREF and RHR may be used to indicate which type of refresh operation should be performed. For example in some embodiments IREF being active but RHR being inactive may indicate an auto-refresh operation, while both IREF and RHR being active may indicate a targeted refresh operation. Other patterns of signals may be used in other embodiments. Responsive to an activation of the refresh signal AREF, the refresh cycle generator 202 may indicate that one or more refresh operations should be performed. In some embodiments, responsive to a single activation of AREF, the refresh cycle generator 202 may perform a number of ‘pumps’ each associated with a refresh operation. In an example operation, when AREF is activated, the refresh cycle generator 202 may perform 2, 4, 6, or 8 pumps, each associated with a refresh operation. More or fewer refresh operations per activation of AREF may also be used. The refresh cycle generator 202 may use internal logic to determine whether each refresh operation should be a targeted refresh operation or an auto-refresh operation.
The refresh address generator 204 may include circuits for generating the refresh address RXADD when a targeted refresh operation is called for (e.g., when both IREF and RHR are active). The targeted refresh address generator 206 may generate targeted refresh addresses and provide them as RXADD. For example the targeted address generator 206 may track aggressor word lines, and may provide addresses associated with the victim word lines of those aggressor word lines as the refresh address RXADD. For example, the refresh address may represent word lines which are adjacent to the aggressor (e.g., R+1 and R−1). Other relationships (e.g., R+/−2, R+/−3, etc.) may also be used.
The refresh address generator 204 may include an auto-refresh address generator 208 which may provide an auto-refresh address Pre_RXADD as the refresh address responsive to an auto-refresh operation (e.g., IREF being active and RHR being inactive). The auto-refresh address may generated from a sequence of refresh addresses. For example, a counter may be used to count through the values of Pre_RXADD so that over the course of a refresh cycle, all word lines are refreshed. In some embodiments, the auto-refresh address Pre_RXADD may be associated with more than one word line. For example, the auto-refresh address may be truncated compared to a normal row address (e.g., XADD in
The refresh binning control circuit 210 uses a sketch data structure to store information about which rows are part of which refresh bins. The refresh binning circuit 210 uses a data storage structure 214 which stores a table of values which indicate if a given row is in a particular bin or not. As explained in more detail with respect to
The refresh binning control circuit 210 includes a number of hash circuits 212. Each hash circuits 212 (Hash0 to HashM) may receive the auto-refresh address Pre-RXADD in common and provide a respective value Value0 to ValueM. The hash circuits 212 may receive the address Pre_RXADD as an input value and provide the respective value based on the address Pre_RXADD. The address Pre_RXADD may have a first number of bits (e.g., 17 bits). The value may have a second number of bits which is smaller than the first number. Accordingly, there may be fewer total possible states of the value than there are states of the address Pre_RXADD. There may thus be collisions between input states (e.g., values of Pre_RXADD) and output states (e.g., values of Value) provided by each hash circuit 212. For example, each state of Value may represent 8, 16, 32, or some other number of possible values of Pre_RXADD. In some embodiment, each of the values output by the hash circuits 212 may have the same number of bits. If there are N total possible values each hash circuit 212 can provide, and there are M total hash circuits 212, then the storage structure 214 may hold N×M total entries.
Each of the refresh circuits 212 may hash the input value (e.g., Pre_RXADD) differently by implementing a different hash operation. In some embodiments, that may be due to each hash circuit 210 implementing a different hash function. In some embodiments, the differences may be due to different seed values input to each of the hash circuits 212. For example, each hash circuit 212 may have the same hash function, but may be seeded differently. In some embodiments, a mix of different hash functions and seeds may be used to vary the hash operations between the hash circuits 212.
The entries associated with (e.g., indexed by) the provided values Value0 to ValueM (and the hash circuits which provided those values) may be retrieved and provided to a logic circuit 216. The logic circuits 216 may use the entries to determine which bin the provided address Pre_RXADD belongs to and may provide a signal Bin to the refresh address generator 204. In some embodiments, there may be only two bins (e.g., normal and weak rows) and the bin signal Bin may be a binary signal. In some embodiments, the bin signal may have more states (e.g., more bits) to indicate more bins.
In some embodiments, the storage structure 214 may represent non-volatile storage. For example, the storage structure 214 may include non-volatile storage elements such as fuses or anti-fuses. In some embodiments, the entries in the storage structure 214 may be set as part of a testing procedure (e.g., in a factory). In some embodiments, the memory may be capable of changing entries in storage structure 214 as part of a post package repair (PPR) operation. For example if a row is determined to be weak in the field, a PPR operation may be used to change one or more entries in the storage structure 214. The loading of entries in the storage structure is discussed in more detail in
In an example embodiment, there may be two bins, and the refresh address generator 204 may refresh the addresses in the weak bin twice as often as the addresses in the normal bin. For example on a first refresh cycle, the bin information may be ignored and all addresses Pre_RXADD may be refreshed. After completing the first refresh cycle, a flag may be set. While the flag is set, during a second refresh cycle, the address Pre_RXADD may only be provided as RXADD and refreshed if the signal Bin indicates that the address Pre_RXADD is a weak row. At the end of the second refresh cycle, the flag may be unset, and the behavior of the first refresh cycle may be repeated. In this manner the refresh control circuit 200 may alternate between refreshing every row and only refreshing rows in the weak bin on each refresh cycle.
In some embodiments, the refresh control circuit 200 may include two auto-refresh address generators. The different auto-refresh generators may each generate addresses in a manner similar to auto-refresh address generator 208. The first auto-refresh address generator may provide its address as the refresh address when the bin signal is active, while the second auto-refresh address generator may provide its address as the refresh address when the bin signal is inactive. The refresh cycle generator may operate the two auto-refresh address generators at different rates (e.g., using internal signals) to refresh the weak row addresses and non-weak row addresses at different rates. If more than two bins are used (e.g., the Bin signal has more than two states) additional auto-refresh address generators may be provided, for example, one for each state of the signal Bin.
The table 300 shows an example situation where an address (e.g., Pre-RXADD) has been provided and hashed into 3 values by each of 3 hash circuits, Hash0, Hash1, and Hash2. Each hash circuit has independently generated a value which in this case is different for each of the hash circuits. So Hash0 has provided a value of 4, Hash1 has provided a value of 1 and Hash2 and provided a value of 0. As indicated by the shaded entries in the table 300, each hash value and its output may be used to index an entry of the table 300. Accordingly, the entries retrieved in this example would 1, 0, and 1.
The example embodiment of
To consider another example, a second address may cause Hash0 to provide a value of 2, Hash1 may provide a value 1 (indicating a collision between the first and second address in the hash circuit Hash1), and Hash2 may provide a value 2. Since all of these entries are 0, the overall bin signal may be 0, indicating a normal row.
The method 400 may generally begin with box 410 which describes generating an address. The address may be an auto-refresh address (e.g., Pre_RXADD of
Box 410 may generally be followed by box 420, which describes generating a plurality of hash values based on the address. The method 400 may include providing the generated address in common to each of a plurality of hash circuits. The method 400 may include performing, with each of the hash circuits, a different hash operation on the address and providing a respective one of the plurality of hash values based on the hashed address.
Box 420 may generally be followed by box 430 which describes checking selected entries in a data storage structure based on the plurality of hash values. The data storage structure may include entries logically organized in a table indexed by hash function and hash value. Box 420 may include reading each of the selected entries by indexing each of the plurality of hash values and the hash circuit associated with that hash value.
Box 430 may generally be followed by box 440, which describes determining whether to provide the address as a refresh address based, in part, on the values of the selected entries. For example box 430 may include comparing the selected entries read from the data storage structure (e.g., with logic circuit 216) to determine if any of the selected entries indicate that the address is associated with a weak row (e.g., any of the selected entries are a high logical level), and providing a bin signal at an active level if so. A refresh control circuit (e.g., 116 of
The memory 502 includes a memory array 504 (e.g., 118 of
The tester 510 may be an external apparatus which is coupled to the memory 502 in order to perform various tests on the memory 502. For example, the tester may locate defective rows, measure the retention time (e.g., rate of information decay) of rows, perform various other tests and combinations thereof. For the sake of brevity, the tester 510 will only be discussed in terms of testing the retention time of rows for the sake of determining which refresh bin to put the row in. It should be understood that the tester may perform any number of tests, and may include additional components not shown in
In the example view of
The test logic 512 may perform one or more test procedures to measure a retention time of a given row, in order to determine how quickly information is lost in that row. For example, the test logic 512 may write test data to a row specified by the address Test_XADD, wait a period of time, and then read the test data from that row. The read test data may be compared to the written test data to determine if there are any differences. If there is a difference, then the test logic 512 may determine that the tested row Test_XADD failed to retain the data for at least the period of time. In some embodiments, the test logic 512 may repeat this process for different lengths of time and determine the maximum tested amount of time the row holds information for. Based on that length of time, the row may be judged to be a weak row or not. In some embodiments, the test logic 512 may test a single length of time and determine if a row is a weak row or normal row based on if the read information has any errors or not.
The hash circuits 514 may receive identified weak rows Weak_XADD from the test logic 512. The hash circuits 514 may match the operation of the hash circuits in the memory (e.g., hash circuits 212 of
The hash values generated by the hash circuits 514 may be provided to the fuse logic circuit 516, which may write those values to the storage structure 506. For example, the fuse logic 516 may blow fuses (and/or anti-fuses) in the storage structure 506 to set the value of the entry to a location indexed by the hash circuit and value.
In some embodiments, rather than an external tester 510, the memory 502 may use internal test logic (e.g., a built-in test circuit or BIST). The internal test logic may perform a test and determine that one or more rows are weak (e.g., fail a criterion for memory retention). The memory 502 may then carry out a post-package operation (similar to a post-package repair or PPR operation) to change the state of one or more entries in the storage structure 506. In this manner, weak rows which are identified in the field (or which become weak after factory testing) may have their binning information added to the storage structure 506.
Table 610 shows the entries for a first identified weak address Weak_XADD0 being written to storage structure. In this example, as represented by the shaded entries, the first hash value is 4, the second hash value is 1 and the third hash value is 0. Accordingly, the entries indexed by these values may be changed. In this case, a fuse indexed by the value and hash function may be blown (e.g., as indicated by a value of 1) to indicate that those entries are associated with a weak row (e.g., Weak_XADD0).
Table 620 shows a second identified weak address Weak_XADD1, which has a first hash value of 2, a second hash value of 3 and a third hash value of 0. The entries indexed by Hash0 and a value of 2 and indexed by Hash1 and Value 3 may both be changed (e.g., blown). In this case there is collision in the third hash function between the first address Weak_XADD0 and second address Weak_XADD1 (e.g., they both yield values of 0). Since this entry was already changed, it may be maintained.
Table 630 shows a third identified weak address Weak_XADD2 which has a first hash value of 3, a second hash value of 2, and a third hash value of 5. These entries may be changed. Note that even though the 3 addresses have been loaded into the storage structure, due to collisions, there are not necessarily 3 changed entries on each row.
The method 700 may generally begin with box 710, which describes testing rows of a, memory array. The testing may include measuring an information retention time of the rows. In some embodiments, rather than perform a specific testing operation, the box 710 may include detecting errors in information read from the memory.
Box 710 may generally be followed by box 720, which describes identifying a weak row address based on the testing. The weak row address may be associated with a weak word line. The weak row address may be identified based on a measure of the information retention time exceeding a threshold.
Box 720 may generally be followed by box 730, which describes generating hash values based on the weak row address. For example, the weak row address may be provided to a set of hash circuits, each of which may perform a different hash operation on the weak row address. The hash operations may be different hash functions, receive different seeds, or combinations thereof. The hash operations may match hash operations on the memory, which are used to retrieve information (e.g., the hash circuits 212 of
Box 730 may generally be followed by box 740, which describes changing entries in a storage structure based on the hash values. For example, the entries may be part of table which is indexed by the different hash operations (e.g., the different hash circuits) and by the hash value generated by that hash operation. In some embodiments, the entries may be stored using non-volatile storage elements. In some embodiments, the entries may be binary, and the entry may be set to an active level (or maintained at an active level) if the hash values associated with the weak row address indicate that entry.
In some embodiments, the steps of the method 700 may be performed by a tester which is external to the memory device. For example the method 700 may be performed as part of testing of the memory device in a factory. In some embodiments the steps of the method 700 may be performed by the memory itself. For example, a built-in self-test circuit may perform the testing and a process similar to a post-package repair may be used to change the entries in the storage structure.
In some embodiments, the steps of method 700 may be performed by a controller which operates a memory device. The controller may test the memory as part of a specific test operation and/or may test the memory by monitoring error detection circuits. For example, if an error is detected in data read from a particular row, it may indicate that row is a weak row. The controller may then update the storage structure, which may be located on the controller. The storage structure may include volatile storage elements, and may be dynamically updated over time. In this manner, the method 700 may include dynamically assigning rows to different bins by writing entries to the storage structure.
The controller 800 includes an error detection circuit 820. The error detection circuit 820 may determine if information read from the memory array 804 of the memory 802 includes an error. In some embodiments, the error detection circuit 820 may be coupled to an error correction code (ECC) circuit, which may be on the memory 804 or controller 800. The error detection circuit 820 may count a number of times that errors are detected in information read from a wordline. When that count meets or exceeds a threshold (which may be 1), then the error detection circuit 820 may flag that row address as being a weak row. The error detection circuit 820 may also use other criteria to identify weal rows. For example, the error detection circuit 820 may be coupled to various testing circuits (e.g., a built-in self-test circuit of the memory 802) which may carry out tests operations to locate weak rows. The identified weak row Err_XADD may be provided to a refresh binning control circuit 810.
The refresh binning control circuit 810 may generate a number of hash values (e.g., Value0 to ValueM) from each a number of hash circuits 812, each of which may implement a different hash operation. The values may be used to index a storage structure and retrieve a number of entries. A logic circuit 816 may then change these entries to indicate that they are associated with an identified weak row address Err_XADD. In the embodiment of
The refresh control circuit 822 may generate auto-refresh addresses Pre_XADD and retrieve bin information from the refresh binning control circuit 810 in a manner generally similar to the operation described in
In some situations, it may be advantageous to have the refresh binning control 810 and refresh control circuit 812 on the controller 800. The controller 800 is aware of when an address is going to be provided as the refresh address RXADD or not. The overall rate of refresh operations may be decreased since weak rows are identified and there is no need to set the overall rate of refresh operations based on the retention time of the weakest row. The reduced rate of refresh operations may allow for the controller 800 to perform more access operations on the memory 802, increasing the bandwidth of the system.
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.
Number | Name | Date | Kind |
---|---|---|---|
1158364 | Bibb | Oct 1915 | A |
3633175 | Harper | Jan 1972 | A |
5291198 | Dingwall et al. | Mar 1994 | A |
5299159 | Balistreri et al. | Mar 1994 | A |
5422850 | Sukegawa et al. | Jun 1995 | A |
5638317 | Tran | Jun 1997 | A |
5699297 | Yamazaki et al. | Dec 1997 | A |
5768196 | Bloker et al. | Jun 1998 | A |
5933377 | Hidaka | Aug 1999 | A |
5943283 | Wong et al. | Aug 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 |
6212118 | Fujita | Apr 2001 | B1 |
6310806 | Higashi et al. | Oct 2001 | B1 |
6317381 | Gans et al. | Nov 2001 | B1 |
6373738 | Towler et al. | Apr 2002 | B1 |
6392952 | Chen et al. | May 2002 | B1 |
6424582 | Ooishi | Jul 2002 | B1 |
6434064 | Nagai | Aug 2002 | B2 |
6452868 | Fister | Sep 2002 | B1 |
6480931 | Buti et al. | Nov 2002 | B1 |
6515928 | Sato et al. | Feb 2003 | B2 |
6567340 | Nataraj et al. | May 2003 | B1 |
6950364 | Kim | Sep 2005 | B2 |
7027343 | Sinha et al. | Apr 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 |
7283380 | Srinivasan et al. | Oct 2007 | B1 |
7319602 | Srinivasan et al. | Jan 2008 | B1 |
7444577 | Best et al. | Oct 2008 | B2 |
7551502 | Dono et al. | Jun 2009 | B2 |
7565479 | Best et al. | Jul 2009 | B2 |
7830742 | Han | Nov 2010 | B2 |
7870362 | Hong et al. | Jan 2011 | B2 |
7872907 | Okayama et al. | Jan 2011 | B2 |
8174921 | Kim et al. | May 2012 | B2 |
8400805 | Yoko | Mar 2013 | B2 |
8451677 | Okahiro et al. | May 2013 | B2 |
8625360 | Iwamoto et al. | Jan 2014 | B2 |
8676725 | Lin | Mar 2014 | B1 |
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 |
9058900 | Kang | Jun 2015 | B2 |
9087554 | Park | Jul 2015 | B1 |
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 |
9251885 | Greenfield et al. | Feb 2016 | B2 |
9286964 | Halbert et al. | Mar 2016 | B2 |
9299457 | Chun et al. | Mar 2016 | B2 |
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 |
9412432 | Narui 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 |
9646672 | Kim | 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 |
9818469 | Kim et al. | Nov 2017 | B1 |
9847118 | Won | Dec 2017 | B1 |
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 |
10032501 | Ito et al. | Jul 2018 | B2 |
10083737 | Bains et al. | Sep 2018 | B2 |
10090038 | Shin | Oct 2018 | B2 |
10134461 | Bell et al. | Nov 2018 | B2 |
10147472 | Jones et al. | Dec 2018 | B2 |
10153031 | Akamatsu | Dec 2018 | B2 |
10170174 | Ito et al. | Jan 2019 | B1 |
10176860 | Mylavarapu | Jan 2019 | B1 |
10210925 | Bains et al. | Feb 2019 | B2 |
10297305 | Moon et al. | May 2019 | B1 |
10339994 | Ito et al. | Jul 2019 | B2 |
10381327 | Ramachandra et al. | Aug 2019 | B2 |
10387276 | Ryu et al. | Aug 2019 | B2 |
10446216 | Oh et al. | Oct 2019 | B2 |
10490251 | Wolff | Nov 2019 | B2 |
10600462 | Augustine et al. | Mar 2020 | B2 |
10600491 | Chou et al. | Mar 2020 | B2 |
10607686 | Akamatsu | Mar 2020 | B2 |
10629286 | Lee et al. | Apr 2020 | B2 |
10679710 | Hirashima et al. | Jun 2020 | B2 |
10705900 | Jin | Jul 2020 | B2 |
10770127 | Shore et al. | Sep 2020 | B2 |
10811066 | Jones et al. | Oct 2020 | B2 |
10832792 | Penney et al. | Nov 2020 | B1 |
10861519 | Jones et al. | Dec 2020 | B2 |
10867660 | Akamatsu | Dec 2020 | B2 |
10930335 | Bell et al. | Feb 2021 | B2 |
10943636 | Wu et al. | Mar 2021 | B1 |
10950289 | Ito et al. | Mar 2021 | B2 |
10964378 | Ayyapureddi et al. | Mar 2021 | B2 |
11011215 | Parry et al. | May 2021 | B1 |
11043254 | Enomoto et al. | Jun 2021 | B2 |
11139015 | Brown et al. | Oct 2021 | B2 |
11152050 | Morohashi et al. | Oct 2021 | B2 |
11158364 | Penney et al. | Oct 2021 | B2 |
11158373 | Penney et al. | Oct 2021 | B2 |
11200942 | Jenkinson et al. | Dec 2021 | B2 |
11222682 | Enomoto et al. | Jan 2022 | B1 |
11257535 | Shore et al. | Feb 2022 | B2 |
11264096 | Schreck et al. | Mar 2022 | B2 |
11322192 | Morohashi et al. | May 2022 | B2 |
20010008498 | Ooishi | Jul 2001 | A1 |
20020007476 | Kishino | Jan 2002 | A1 |
20020078311 | Matsuzaki et al. | Jun 2002 | A1 |
20020080677 | Watanabe et al. | Jun 2002 | A1 |
20020181301 | Takahashi et al. | Dec 2002 | A1 |
20030063512 | Takahashi et al. | Apr 2003 | A1 |
20030067825 | Shimano et al. | Apr 2003 | A1 |
20030090400 | Barker | May 2003 | A1 |
20030123301 | Jang et al. | Jul 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 |
20040052142 | Ikehashi et al. | Mar 2004 | A1 |
20040114446 | Takahashi et al. | Jun 2004 | A1 |
20040130959 | Kawaguchi | Jul 2004 | A1 |
20040174757 | Garverick et al. | Sep 2004 | A1 |
20040184323 | Mori et al. | Sep 2004 | A1 |
20040213035 | Cavaleri et al. | Oct 2004 | A1 |
20040218431 | Chung et al. | Nov 2004 | A1 |
20050041502 | Perner | Feb 2005 | A1 |
20050105315 | Shin et al. | May 2005 | A1 |
20050243629 | Lee | Nov 2005 | A1 |
20050265104 | Remaklus et al. | Dec 2005 | A1 |
20060083099 | Bae et al. | Apr 2006 | A1 |
20060087903 | Riho et al. | Apr 2006 | A1 |
20060176744 | Stave | Aug 2006 | A1 |
20060262616 | Chen | Nov 2006 | A1 |
20070008799 | Dono et al. | Jan 2007 | A1 |
20070014174 | Ohsawa | Jan 2007 | A1 |
20070028068 | Golding et al. | Feb 2007 | A1 |
20070030746 | Best et al. | Feb 2007 | A1 |
20070033339 | Best et al. | Feb 2007 | A1 |
20070133330 | Ohsawa | Jun 2007 | A1 |
20070230264 | Eto | Oct 2007 | A1 |
20070237016 | Miyamoto et al. | Oct 2007 | A1 |
20070297252 | Singh | Dec 2007 | A1 |
20080028260 | Oyagi et al. | Jan 2008 | A1 |
20080031068 | Yoo et al. | Feb 2008 | A1 |
20080062742 | Wang | Mar 2008 | A1 |
20080126893 | Harrand et al. | May 2008 | A1 |
20080130394 | Dono et al. | Jun 2008 | A1 |
20080181048 | Han | Jul 2008 | A1 |
20080224742 | Pomichter | Sep 2008 | A1 |
20080253212 | Iida et al. | Oct 2008 | A1 |
20080266990 | Loeffler | Oct 2008 | A1 |
20080288720 | Atwal et al. | Nov 2008 | A1 |
20080301362 | Cavanna et al. | Dec 2008 | A1 |
20080313494 | Hummler et al. | Dec 2008 | A1 |
20080316845 | Wang et al. | Dec 2008 | A1 |
20090021999 | Tanimura et al. | Jan 2009 | A1 |
20090059641 | Jeddeloh | Mar 2009 | A1 |
20090077571 | Gara et al. | Mar 2009 | A1 |
20090161457 | Wakimoto | Jun 2009 | A1 |
20090168571 | Pyo et al. | Jul 2009 | A1 |
20090185440 | Lee | Jul 2009 | A1 |
20090201752 | Riho et al. | Aug 2009 | A1 |
20090213675 | Shino | Aug 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 |
20100054011 | Kim | Mar 2010 | A1 |
20100074042 | Fukuda et al. | Mar 2010 | A1 |
20100080074 | Ohmaru et al. | Apr 2010 | A1 |
20100110809 | Kobayashi et al. | May 2010 | A1 |
20100110810 | Kobayashi | May 2010 | A1 |
20100131812 | Mohammad | May 2010 | A1 |
20100157693 | Iwai et al. | Jun 2010 | A1 |
20100182863 | Fukiage | Jul 2010 | A1 |
20100329069 | Ito et al. | Dec 2010 | A1 |
20110026290 | Noda et al. | Feb 2011 | A1 |
20110051530 | Kushida | Mar 2011 | A1 |
20110055495 | Remaklus, Jr. et al. | Mar 2011 | A1 |
20110069572 | Lee et al. | Mar 2011 | A1 |
20110122987 | Neyer | May 2011 | A1 |
20110216614 | Hosoe | Sep 2011 | A1 |
20110225355 | Kajigaya | Sep 2011 | A1 |
20110286271 | Chen | Nov 2011 | A1 |
20110310648 | Iwamoto et al. | Dec 2011 | A1 |
20110317462 | Gyllenhammer et al. | Dec 2011 | A1 |
20120014199 | Narui | Jan 2012 | A1 |
20120059984 | Kang et al. | Mar 2012 | A1 |
20120151131 | Kilmer et al. | Jun 2012 | A1 |
20120213021 | Riho et al. | Aug 2012 | A1 |
20120254472 | Ware et al. | Oct 2012 | A1 |
20130003467 | Klein | Jan 2013 | A1 |
20130003477 | Park et al. | Jan 2013 | A1 |
20130057173 | Yao et al. | Mar 2013 | A1 |
20130107623 | Kavalipurapu et al. | May 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 |
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 |
20140050004 | Mochida | Feb 2014 | A1 |
20140078841 | Chopra | Mar 2014 | A1 |
20140078842 | Oh et al. | Mar 2014 | A1 |
20140078845 | Song | Mar 2014 | A1 |
20140089576 | Bains 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 |
20140136763 | Li et al. | May 2014 | A1 |
20140143473 | Kim et al. | May 2014 | A1 |
20140177370 | Halbert et al. | Jun 2014 | A1 |
20140177376 | Song | Jun 2014 | A1 |
20140189215 | Kang | Jul 2014 | A1 |
20140189228 | Greenfield et al. | Jul 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 |
20140269021 | Yang et al. | Sep 2014 | A1 |
20140281206 | Crawford et al. | Sep 2014 | A1 |
20140281207 | Mandava et al. | Sep 2014 | A1 |
20140292375 | Angelini et al. | Oct 2014 | A1 |
20140293725 | Best et al. | Oct 2014 | A1 |
20140317344 | Kim | Oct 2014 | A1 |
20140355332 | Youn et al. | Dec 2014 | A1 |
20140369109 | Lee et al. | Dec 2014 | A1 |
20140379978 | Kim | Dec 2014 | A1 |
20150049567 | Chi | Feb 2015 | A1 |
20150055420 | Bell et al. | Feb 2015 | A1 |
20150078112 | Huang | Mar 2015 | A1 |
20150089326 | Joo et al. | Mar 2015 | A1 |
20150155027 | Abe 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 |
20150213877 | Darel | Jul 2015 | A1 |
20150228341 | Watanabe et al. | Aug 2015 | A1 |
20150243339 | Bell et al. | Aug 2015 | A1 |
20150255140 | Song | Sep 2015 | A1 |
20150262652 | Igarashi | Sep 2015 | A1 |
20150279441 | Greenberg et al. | Oct 2015 | A1 |
20150279442 | Hwang | Oct 2015 | A1 |
20150294711 | Gaither et al. | Oct 2015 | A1 |
20150340077 | Akamatsu | Nov 2015 | A1 |
20150356048 | King | 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 |
20160078845 | Lin et al. | Mar 2016 | A1 |
20160078911 | Fujiwara et al. | Mar 2016 | A1 |
20160078918 | Hyun et al. | Mar 2016 | A1 |
20160086649 | Hong et al. | Mar 2016 | A1 |
20160086651 | Kim | Mar 2016 | A1 |
20160093402 | Kitagawa et al. | Mar 2016 | A1 |
20160099043 | Tu | Apr 2016 | A1 |
20160111140 | Joo et al. | Apr 2016 | A1 |
20160125931 | Doo et al. | May 2016 | A1 |
20160133314 | Hwang et al. | May 2016 | A1 |
20160140243 | Adams et al. | May 2016 | A1 |
20160163372 | Lee et al. | Jun 2016 | A1 |
20160172056 | Huh | 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 |
20160211008 | Benedict et al. | Jul 2016 | A1 |
20160225433 | Bains et al. | Aug 2016 | A1 |
20160225461 | Tuers et al. | Aug 2016 | A1 |
20160336060 | Shin | Nov 2016 | A1 |
20160343423 | Shido | Nov 2016 | A1 |
20170011792 | Oh et al. | Jan 2017 | A1 |
20170076779 | Bains et al. | Mar 2017 | A1 |
20170092350 | Halbert et al. | Mar 2017 | A1 |
20170117030 | Fisch et al. | Apr 2017 | A1 |
20170133085 | Kim et al. | May 2017 | A1 |
20170139641 | Cha et al. | May 2017 | A1 |
20170140807 | Sun et al. | May 2017 | A1 |
20170140811 | Joo | 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 |
20170287547 | Ito et al. | Oct 2017 | A1 |
20170323675 | Jones et al. | Nov 2017 | A1 |
20170352399 | Yokoyama et al. | Dec 2017 | A1 |
20170371742 | Shim et al. | Dec 2017 | A1 |
20170372767 | Kang et al. | Dec 2017 | A1 |
20180000257 | Lee et al. | Jan 2018 | A1 |
20180005690 | Morgan et al. | Jan 2018 | A1 |
20180025770 | Ito et al. | Jan 2018 | A1 |
20180060194 | Ryu et al. | Mar 2018 | A1 |
20180061483 | Morgan | Mar 2018 | A1 |
20180082737 | Lee | Mar 2018 | A1 |
20180084314 | Koyama | Mar 2018 | A1 |
20180090199 | Kim et al. | Mar 2018 | A1 |
20180096719 | Tomishima et al. | Apr 2018 | A1 |
20180102776 | Chandrasekar et al. | Apr 2018 | A1 |
20180107417 | Shechter et al. | Apr 2018 | A1 |
20180114561 | Fisch et al. | Apr 2018 | A1 |
20180114565 | Lee | Apr 2018 | A1 |
20180158504 | Akamatsu | Jun 2018 | A1 |
20180182445 | Lee et al. | Jun 2018 | A1 |
20180203621 | Ahn et al. | Jul 2018 | A1 |
20180218767 | Wolff | Aug 2018 | A1 |
20180261268 | Hyun et al. | Sep 2018 | A1 |
20180294028 | Lee et al. | Oct 2018 | A1 |
20180308539 | Ito et al. | Oct 2018 | A1 |
20180341553 | Koudele et al. | Nov 2018 | A1 |
20180366182 | Hyun | Dec 2018 | A1 |
20190013059 | Akamatsu | Jan 2019 | A1 |
20190043558 | Suh et al. | Feb 2019 | A1 |
20190051344 | Bell et al. | Feb 2019 | A1 |
20190066759 | Nale | Feb 2019 | A1 |
20190066762 | Koya | Feb 2019 | A1 |
20190088315 | Saenz et al. | Mar 2019 | A1 |
20190088316 | Inuzuka et al. | Mar 2019 | A1 |
20190096492 | Cai et al. | Mar 2019 | A1 |
20190103147 | Jones et al. | Apr 2019 | A1 |
20190130961 | Bell et al. | May 2019 | A1 |
20190139599 | Ito et al. | May 2019 | A1 |
20190147941 | Qin et al. | May 2019 | A1 |
20190147964 | Yun et al. | May 2019 | A1 |
20190161341 | Howe | May 2019 | A1 |
20190172518 | Chen et al. | Jun 2019 | A1 |
20190196730 | Imran | Jun 2019 | A1 |
20190198078 | Hoang et al. | Jun 2019 | A1 |
20190198090 | Lee | Jun 2019 | A1 |
20190198099 | Mirichigni et al. | Jun 2019 | A1 |
20190205253 | Roberts | Jul 2019 | A1 |
20190207736 | Ben-tovim et al. | Jul 2019 | A1 |
20190228810 | Jones et al. | Jul 2019 | A1 |
20190228813 | Nale et al. | Jul 2019 | A1 |
20190228815 | Morohashi et al. | Jul 2019 | A1 |
20190237132 | Morohashi | Aug 2019 | A1 |
20190243708 | Cha et al. | Aug 2019 | A1 |
20190252020 | Rios et al. | Aug 2019 | A1 |
20190267077 | Ito et al. | Aug 2019 | A1 |
20190279706 | Kim | Sep 2019 | A1 |
20190333573 | Shin et al. | Oct 2019 | A1 |
20190348100 | Smith et al. | Nov 2019 | A1 |
20190348102 | Smith et al. | Nov 2019 | A1 |
20190348103 | Jeong et al. | Nov 2019 | A1 |
20190348107 | Shin et al. | Nov 2019 | A1 |
20190349545 | Koh et al. | Nov 2019 | A1 |
20190362774 | Kuramori et al. | Nov 2019 | A1 |
20190371391 | Cha et al. | Dec 2019 | A1 |
20190385661 | Koo et al. | Dec 2019 | A1 |
20190385667 | Morohashi et al. | Dec 2019 | A1 |
20190386557 | Wang et al. | Dec 2019 | A1 |
20200005857 | Ito et al. | Jan 2020 | A1 |
20200075106 | Tokutomi et al. | Mar 2020 | A1 |
20200082873 | Wolff | Mar 2020 | A1 |
20200090760 | Purahmad et al. | Mar 2020 | A1 |
20200135263 | Brown et al. | Apr 2020 | A1 |
20200194050 | Akamatsu | Jun 2020 | A1 |
20200194056 | Sakurai et al. | Jun 2020 | A1 |
20200201380 | Murali et al. | Jun 2020 | A1 |
20200202921 | Morohashi et al. | Jun 2020 | A1 |
20200211626 | Hiscock et al. | Jul 2020 | A1 |
20200211633 | Okuma | Jul 2020 | A1 |
20200211636 | Hiscock et al. | Jul 2020 | A1 |
20200251158 | Shore et al. | Aug 2020 | A1 |
20200294576 | Brown et al. | Sep 2020 | A1 |
20200302994 | Enomoto et al. | Sep 2020 | A1 |
20200321049 | Meier et al. | Oct 2020 | A1 |
20200349995 | Shore et al. | Nov 2020 | A1 |
20200365208 | Schreck et al. | Nov 2020 | A1 |
20200381040 | Penney et al. | Dec 2020 | A1 |
20200395072 | Penney et al. | Dec 2020 | A1 |
20210005229 | Hiscock et al. | Jan 2021 | A1 |
20210005240 | Brown et al. | Jan 2021 | A1 |
20210020223 | Ayyapureddi et al. | Jan 2021 | A1 |
20210020262 | Penney et al. | Jan 2021 | A1 |
20210026732 | Park et al. | Jan 2021 | A1 |
20210057012 | Ayyapureddi et al. | Feb 2021 | A1 |
20210057013 | Jenkinson et al. | Feb 2021 | A1 |
20210057021 | Wu et al. | Feb 2021 | A1 |
20210065755 | Kim et al. | Mar 2021 | A1 |
20210065764 | Cheng et al. | Mar 2021 | A1 |
20210142852 | Schreck et al. | May 2021 | A1 |
20210158851 | Ayyapureddi et al. | May 2021 | A1 |
20210158860 | Wu et al. | May 2021 | A1 |
20210158861 | Jeong et al. | May 2021 | A1 |
20210201984 | Khasawneh et al. | Jul 2021 | A1 |
20210225432 | Enomoto et al. | Jul 2021 | A1 |
20210241810 | Hollis et al. | Aug 2021 | A1 |
20210265504 | Ishizu et al. | Aug 2021 | A1 |
20210343324 | Brown et al. | Nov 2021 | A1 |
20210350844 | Morohashi et al. | Nov 2021 | A1 |
20210398592 | Penney et al. | Dec 2021 | A1 |
20210407583 | Penney et al. | Dec 2021 | A1 |
20220165347 | Pan | May 2022 | A1 |
Number | Date | Country |
---|---|---|
1144434 | Mar 1997 | CN |
1195173 | Oct 1998 | CN |
101038785 | Sep 2007 | CN |
101067972 | Nov 2007 | CN |
101331554 | Dec 2008 | CN |
101458658 | Jun 2009 | CN |
101622607 | Jan 2010 | CN |
102113058 | Jun 2011 | CN |
102483952 | May 2012 | CN |
104350546 | Feb 2015 | CN |
106710621 | May 2017 | CN |
107871516 | Apr 2018 | CN |
H0773682 | Mar 1995 | JP |
2005-216429 | Aug 2005 | JP |
2011-258259 | Dec 2011 | JP |
4911510 | Jan 2012 | JP |
2013-004158 | Jan 2013 | JP |
20150002783 | Jan 2015 | KR |
20170058022 | May 2017 | KR |
1020180064940 | Jun 2018 | KR |
1020180085184 | Jul 2018 | KR |
20190048049 | May 2019 | KR |
2014120477 | Aug 2014 | WO |
2015030991 | Mar 2015 | WO |
2017171927 | Oct 2017 | WO |
2019222960 | Nov 2019 | WO |
2020010010 | Jan 2020 | WO |
2020191222 | Sep 2020 | WO |
2021003085 | Jan 2021 | WO |
Entry |
---|
US 11,264,075 B2, 03/2022, Bell et al. (withdrawn) |
U.S. Appl. No. 17/446,710 titled “Apparatuses, Systems, and Methods for Determining Extremum NumericalValues”, filed Sep. 1, 2021. |
U.S. Appl. No. 17/470,883 titled “Apparatuses and Methods for Tracking Victim Rows”, filed Sep. 9, 2021. |
International Application No. PCT/US20/23689, titled “Semiconductor Device Having Cam That Stores Address Signals”, dated Mar. 19, 2020, pp. all. |
U.S. Appl. No. 15/884,192 entitled ‘Semiconductor Device Performing Row Hammer Refresh Operation’, filed Jan. 30, 2018, pp. all. |
U.S. Appl. No. 16/797,658, titles “Apparatuses and Methods for Controlling Refresh Operations”, filed Feb. 21, 2020, pp. all. |
U.S. Appl. No. 16/818,981 titled “Apparatuses and Methods for Staggered Timing of Targeted Refresh Operations”, filed Mar. 13, 2020, pp. all. |
U.S. Appl. No. 16/824,460, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, dated Mar. 19, 2020, pp. all. |
U.S. Appl. No. 16/025,844, titled “Apparatus and Methods for Triggering Row Hammer Address Sampling”, filed Jul. 2, 2018, pp. all. |
U.S. Appl. No. 16/783,063, titled “Apparatus and Methods for Triggering Row Hammer Address Sampling”, dated Feb. 5, 2020, pp. all. |
U.S. Appl. No. 16/805,197, titled “Apparatuses and Methods for Calculating Row Hammer Refresh Addresses in a Semiconductor Device”, dated Feb. 28, 2020, pp. all. |
U.S. Appl. No. 16/232,837, titled “Apparatuses and Methods for Distributed Targeted Refresh Operations”, filed Dec. 26, 2018, pp. all. |
U.S. Appl. No. 16/818,989, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, dated Mar. 13, 2020, pp. all. |
U.S. Appl. No. 16/268,818, titled “Apparatuses and Methods for Managing Row Access Counts”, filed Feb. 6, 2019, pp. all. |
U.S. Appl. No. 16/286,187 titled “Apparatuses and Methods for Memory Mat Refresh Sequencing”, filed Feb. 26, 2019, pp. all. |
U.S. Appl. No. 16/084,119, titled “Apparatuses and Methods for Pure-Time, Self Adopt Sampling for Row Hammer Refresh Sampling”, filed Sep. 11, 2018, pp. all. |
U.S. Appl. No. 16/886,284 titled “Apparatuses and Methods for Access Based Refresh Timing”, filed May 28, 2020, pp. all. |
U.S. Appl. No. 16/886,284, titled “Apparatuses and Methods for Access Based Refresh Timing”, dated May 28, 2020, pp. all. |
U.S. Appl. No. 16/358,587, titled “Semiconductor Device Having Cam That Stores Address Signals”, dated Mar. 19, 2019, pp. all. |
U.S. Appl. No. 16/375,716 titled “Apparatuses and Methods for Staggered Timing of Targeted Refresh Operations”, filed Apr. 4, 2019; pp. all. |
U.S. Appl. No. 16/936,297 titled “Apparatuses and Methods for Managing Row Access Counts”, filed Jul. 22, 2020, pp. all. |
U.S. Appl. No. 16/411,573 titled “Apparatuses, Systems, and Methods for a Content Addressable Memory Cell”, filed May 14, 2019, pp. all. |
U.S. Appl. No. 16/428,625 titled “Apparatuses and Methods for Tracking Victim Rows”, filed May 31, 2019, pp. all. |
U.S. Appl. No. 16/513,400 titled “Apparatuses and Methods for Tracking Row Accesses”, filed Jul. 16, 2019, pp. all. |
U.S. Appl. No. 17/060,403 titled “Apparatuses and Methods for Adjusting Victim Data”, filed Oct. 1, 2020, pp. all. |
U.S. Appl. No. 16/548,027 titled “Apparatuses, Systems, and Methods for Analog Row Access Rate Determination”, filed Aug. 22, 2019, pp. all. |
U.S. Appl. No. 16/549,942 titled “Apparatuses and Methods for Lossy Row Access Counting”, filed Aug. 23, 2019, pp. all. |
U.S. Appl. No. 16/546,152 titled “Apparatuses and Methods for Analog Row Access Tracking”, filed Aug. 20, 2019, pp. all. |
U.S. Appl. No. 16/549,411 titled “Apparatuses and Methods for Dynamic Refresh Allocation”, filed Aug. 23, 2019, pp. all. |
U.S. Appl. No. 16/655,110 titled “Apparatuses and Methods for Dynamic Targeted Refresh Steals”, filed Oct. 16, 2019, pp. all. |
International Application No. PCT/US19/40169 titled “Apparatus and Methods for Triggering Row Hammer Address Sampling” filed Jul. 1, 2019, pp. all. |
International Application No. PCT/US19/64028, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, dated Dec. 2, 2019, pp. all. |
International Application No. PCT/US20/26689, titled “Apparatuses and Methods for Staggered Timing of Targeted Refresh Operations”, dated Apr. 3, 2020, pp. all. |
International Application No. PCT/US20/40077, titled “Apparatuses and Methods for Monitoring Word Line Accesses”, dated Jun. 29, 2020, pp. all. |
U.S. Appl. No. 16/788,657, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, dated Feb. 12, 2020, pp. all. |
U.S. Appl. No. 15/881,256 entitled ‘Apparatuses and Methods for Detecting a Row Hammer Attack With a Bandpass Filter’, filed Jan. 26, 2018, pp. all. |
U.S. Appl. No. 16/425,525 titled “Apparatuses And Methods For Tracking All Row Accesses”, filed May 29, 2019, pp. all. |
U.S. Appl. No. 16/427,105 titled “Apparatuses And Methods For Priority Targeted Refresh Operations”, filed May 30, 2019, pp. all. |
U.S. Appl. No. 16/427,140 titled “Apparatuses And Methods For Tracking Row Access Counts Between Multiple Register Stacks”, filed May 30, 2019, pp. all. |
U.S. Appl. No. 16/437,811 titled “Apparatuses, Systems, And Methods For Determining Extremum Numerical Values”, filed Jun. 11, 2019, pp. all. |
U.S. Appl. No. 16/537,981 titled “Apparatuses and Methods for Controlling Targeted Refresh Rates”, filed Aug. 12, 2019, pp. all. |
U.S. Appl. No. 17/154,945 titled “Apparatuses, Systems, and Methods for a Content Addressable Memory Cell”, filed Jan. 21, 2021, pp. all. |
U.S. Appl. No. 17/168,036 titled “Apparatuses and Methods for Analog Row Access Tracking”, filed Feb. 4, 2021, pp. all. |
U.S. Appl. No. 17/170,616 titled “Apparatuses, Systems, and Methods for Analog Row Access Rate Determination”, filed Feb. 8, 2021, pp. all. |
U.S. Appl. No. 17/201,941 titled “Apparatuses and Methods for Sketch Circuits for Refresh Binning”, filed Mar. 15, 2021, pp. all. |
U.S. Appl. No. 17/301,533 titled “Semiconductor Device Having Cam That Stores Address Signals”, filed Apr. 6, 2021, pp. all. |
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, pp. all. |
U.S. Appl. No. 16/020,863, titled “Semiconductor Device”, filed Jun. 27, 2018, pp. all. |
U.S. Appl. No. 16/112,471 titled “Apparatuses and Methods for Controlling Refresh Operations”, filed Aug. 24, 2018, pp. all. |
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, pp. all. |
U.S. Appl. No. 16/208,217, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, filed Dec. 3, 2018, pp. all. |
U.S. Appl. No. 16/230,300, titled “Apparatuses and Methods for Staggered Timing of Targeted Refresh Operations”, filed Dec. 21, 2018, pp. all. |
U.S. Appl. No. 16/231,327 titled “Apparatuses and Methods for Selective Row Refreshes”, filed Dec. 21, 2018, pp. all. |
U.S. Appl. No. 16/237,291, titled “Apparatus and Methods for Refreshing Memory”, filed Dec. 31, 2018, pp. all. |
U.S. Appl. No. 16/290,730, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, filed Mar. 1, 2019, pp. all. |
U.S. Appl. No. 16/374,623, titled “Semiconductor Device Performing Row Hammer Refresh Operation”, filed Apr. 3, 2019, pp. all. |
U.S. Appl. No. 16/411,698 title “Semiconductor Device”, filed May 14, 2019, pp. all. |
U.S. Appl. No. 16/427,330 titled “Apparatuses and Methods for Storing Victim Row Data”, filed May 30, 2019, pp. all. |
U.S. Appl. No. 16/431,641 titled “Apparatuses and Methods for Controlling Steal Rates”, filed Jun. 4, 2019, pp. all. |
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, pp. all. |
U.S. Appl. No. 17/102,266, titled “Apparatuses and Methods for Tracking Word Line Accesses”, dated Nov. 23, 2020, pp. all. |
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, pp. all. |
International Application No. PCT/US20/32684, titled “Apparatuses, Systems, and Methods for a Content Addressable Memory Cell”, dated May 13, 2020, pp. all. |
U.S. Appl. No. 15/656,084, titled: Apparatuses And Methods For Targeted Refreshing Of Memory, filed Jul. 21, 2017, pp. all. |
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. 16/459,507 titled “Apparatuses and Methods for Adjusting Victim Data”, filed Jul. 1, 2019, pp. all. |
U.S. Appl. No. 15/281,818, entitled: “Semiconductor Device”, filed Sep. 30, 2016, pp. all. |
Kim, et al., “Flipping Bits in MemoryWithout Accessing Them: An Experimental Study of DRAM Disturbance Errors”, IEEE, Jun. 2014, 12 pgs. |
Stout, Thomas et al., “Voltage Source Based Voltage-to-Time Converter”, IEEE, downloaded Jul. 2020, p. All. |
U.S. Appl. No. 17/007,069 titled “Apparatuses and Methods for Providing Refresh Addresses”, filed Aug. 31, 2020, pp. all. |
U.S. Appl. No. 17/375,817 titled “Apparatuses and Methods for Monitoring Word Line Accesses”, filed Jul. 14, 2021, pp. all. |
U.S. Appl. No. 17/443,056 titled “Apparatuses and Methods for Multiple Row Hammer Refresh Address Sequences”, filed Jul. 20, 2021, pp. all. |
U.S. Appl. No. 17/456,849 titled “Apparatuses, Systems, and Methods for Main Sketch and Slim Sketch Circuitfor Row Address Tracking”, filed Nov. 29, 2021. |
U.S. Appl. No. 17/565,119 titled “Apparatuses and Methods for Row Hammer Counter Mat”, filed Dec. 29, 2021. |
U.S. Appl. No. 17/565,187 titled “Apparatuses and Methods for Row Hammer Counter Mat”, filed Dec. 29, 2021. |
U.S. Appl. No. 17/444,925 titled “Apparatuses and Methods for Countering Memory Attacks”, filed Aug. 12, 2021. |
Zheng, Bin , et al., “Design of Built-in DRAM for TFT-LCD Driver Chip ”LCD and display,“ Issue 4”, Aug. 15, 2009. |
Number | Date | Country | |
---|---|---|---|
20220293166 A1 | Sep 2022 | US |