WO2022175619A1 - Dispositif memoire pourvu de circuits memoire dram agences de maniere a minimiser la taille d'un bloc memoire permettant la gestion de l'effet de martelage de rang - Google Patents
Dispositif memoire pourvu de circuits memoire dram agences de maniere a minimiser la taille d'un bloc memoire permettant la gestion de l'effet de martelage de rang Download PDFInfo
- Publication number
- WO2022175619A1 WO2022175619A1 PCT/FR2022/050256 FR2022050256W WO2022175619A1 WO 2022175619 A1 WO2022175619 A1 WO 2022175619A1 FR 2022050256 W FR2022050256 W FR 2022050256W WO 2022175619 A1 WO2022175619 A1 WO 2022175619A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- memory
- algorithm
- dram
- protection
- block
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 225
- 230000000694 effects Effects 0.000 title claims abstract description 70
- 230000006870 function Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000004913 activation Effects 0.000 description 14
- 238000001994 activation Methods 0.000 description 14
- 230000003449 preventive effect Effects 0.000 description 10
- 230000000737 periodic effect Effects 0.000 description 7
- 238000000034 method Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000002265 prevention Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 239000002041 carbon nanotube Substances 0.000 description 1
- 229910021393 carbon nanotube Inorganic materials 0.000 description 1
- 230000002301 combined effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011016 integrity testing Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40615—Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/24—Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40618—Refresh operations over multiple banks or interleaving
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40622—Partial refresh of memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4096—Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/02—Disposition of storage elements, e.g. in the form of a matrix array
- G11C5/025—Geometric lay-out considerations of storage- and peripheral-blocks in a semiconductor storage device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/02—Arrangements for writing information into, or reading information out from, a digital store with means for avoiding parasitic signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4076—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
Definitions
- the present invention relates to the field of memories, and in particular the field of dynamic random access memories.
- the present invention relates to the management of the memory row hammering effect (“Row Hammer” according to the Anglo-Saxon terminology).
- the present invention proposes an architecture of a memory device making it possible to manage and prevent the effect of memory rank hammering for large capacity memory devices without penalizing the performance of said devices.
- This effect finds its origin in the repeated activation of a rank of a bank of a DRAM memory. More particularly, when the number of activations of a given rank, called “aggressor rank”, exceeds a critical hammering value, the ranks which are immediately adjacent to it, called “victim ranks”, see some of their bits inverted. In order to prevent the row hammering effect, it can be envisaged, before a row becomes an aggressor, to refresh the two adjacent victim rows according to a preventive refreshing procedure.
- Such a preventive refreshing procedure is, in this respect, described in the document FR 3066842.
- This document discloses in particular a memory device provided with a logic for detecting the triggering of row hammering.
- This detection logic is configured to monitor and/or count the number of activations of each rank of a bank or a sub-bank of the memory device.
- the counting data are, in this respect, stored in one or more tables whose number of entries is directly dependent on the size of the memory device (and in particular its capacity).
- This memory device known from the state of the art is particularly efficient when the critical hammering value remains greater than 40000.
- an aggressor rank of index "i" of a memory bank or sub-bank will affect not only the ranks which are immediately adjacent to it (of indices "i-1" and "i+1") , but also, and to a lesser extent, the index ranks “ik” and “i+k” (with “k” an integer strictly greater than 1).
- this algorithm is generally implemented by means of a block of static random access memory (“SRAM” or “Static Random Access Memory” according to Anglo-Saxon terminology).
- SRAM static random access memory
- an increased capacity of the memory device, and a small size of the geometries used correspondingly increase the size of the tables necessary for the proper execution of the row hammering effect prevention algorithm. These factors therefore make it necessary to consider SRAM memory blocks of greater capacity.
- this type of memory consumes space, and is likely to significantly increase the total cost of the memory system.
- An object of the present invention is to provide a memory device implementing an algorithm for preventing the rank hammering effect and for which the SRAM memory block has a limited size.
- the present invention relates to a memory device and, more particularly, to a memory device whose architecture makes it possible to effectively manage the row hammering effect when the density of said memory device as well as its total capacity increase.
- the memory device comprises memory circuits, of the "DRAM” type, the total capacity of which is divided into a first part, called the “directly protected part”, and a second part, called the “indirectly protected part” of size greater than the first part. .
- the memory device comprises a control circuit which implements two protection algorithms called, respectively, first algorithm and second algorithm.
- control circuit comprises a first block implementing the first algorithm and a second block implementing the second algorithm.
- first algorithm is configured to protect the first part from the rank hammering effect.
- the second algorithm for its part, is configured to protect the second part from the rank hammering effect. It notably implements at least one table saved in the first part, this table being called the main table.
- a memory device comprising: memory circuits, these circuits comprising memories of the "DRAM” type, the total capacity of which is divided into a first part, called the "directly protected part”, and a second part, called “indirectly protected part” larger than the first part;
- control circuit configured to access the memory circuits, the control circuit comprises:
- a first block configured to execute a first algorithm intended to protect the first part from a row hammering effect
- a second block configured to execute a second algorithm intended to protect the second part from a row hammering effect likely to occur, the second algorithm using a main table saved in the first part;
- control circuit comprises a functional block configured to execute calculation functions and programs in the second part, and advantageously also in the first part.
- the first part and the second part are arranged so that the rank hammering effect imposed by a rank of one of the first part or the second part is not felt by the other of the first part or the second part.
- the first part and the second part are configured according to one of the following configurations:
- the first part and the second part are separate so as not to share DRAM memory circuits
- the first part and the second part each comprise banks of DRAM memory circuits which are specific to them;
- each comprise one or more sub-banks which are specific to them, said sub-banks are then arranged so that the hammering effect of row exerted by a row of a sub-bench of the first part is not felt by a sub-bench of the second part and vice versa;
- common bank a DRAM memory circuit bank, called common bank
- said common bank comprising unused memory rows and separating a section of the common bank, associated with the first part, from another section of the common bank, associated with the second part, the number of unused memory ranks being chosen so that no row hammering effect occurs between each of the two sections of the common bank.
- the size of the first part corresponds to less than 0.1% of the size of the second part.
- the first part and the second part are capable of exerting a rank hammering effect on each other, and in which the first algorithm and the second algorithm are configured to prevent the effect of rank hammering of the first part on the second part and vice versa.
- the second block comprises a cache memory intended to store data from the main table used by the second algorithm.
- the first block uses a table called the initial table, this initial table being implemented by the first algorithm, and stored in a memory called the protection memory block.
- the first algorithm is a probabilistic algorithm requiring no initial table.
- PARA Probabilistic Adjacent Row Activation
- the first block comprises a cache memory intended to store data from the initial table used by the first algorithm and located in the protection memory block, the use of such a cache being advantageous when the performance of the memory block protection are limited.
- the protection memory block comprises a memory that is immune to the rank hammering effect, in particular said memory can for example, without limitation, be a memory of the SRAM, MRAM or CNRAM type.
- the protection memory block comprises a DRAM memory, and in which the rows of memory are arranged so as to prevent any row hammering within said block.
- the protection memory block comprises a DRAM memory, in which the refresh rate is increased so as to prevent any row hammering within said block.
- the protection memory block comprises a DRAM memory, in which electrical shielding separates the rows so as to prevent any row hammering within said block.
- the protection memory block comprises a DRAM memory, in which unused ranks separate the used ranks so as to prevent any hammering of rank used within said block.
- the protection memory block comprises a DRAM memory using a technically feasible combination of the 4 preceding methods so as to prevent any rank hammering within said block.
- the DRAM memory comprises a third part and a third block implements a third rank hammering effect prevention algorithm using the second part to implement the table, or tables, that it needs.
- an initial table is used by the first algorithm and the corresponding protection memory block is a DRAM memory protected from the hammering effect according to the present invention.
- the invention also relates to a DRAM memory controller, the controller being intended to configure protection of said DRAM memories against a memory row hammering effect, the protection involving the implementation of a control circuit and a protection memory block of a predetermined capacity, the controller being suitable for:
- the controller divides the total memory capacity DRAM in N parts, N32, say each part i for i ranging from 1 to N, N and i being integer values, and configures the control circuit so that it can execute N protection algorithms against the hammering effect of said rank each algorithm i for i ranging from 1 to N, each algorithm i being intended to protect against the rank hammering effect the part i by means of a table i, each table i, for i ranging from 2 to N being saved in part i-1, while table 1 is saved in the protection memory block, if the total capacity of the DRAM memories does not exceed the threshold size, the controller configures the control circuit so that it protects said DRAM memories using a unique algorithm that implements a table saved in the protection memory block.
- the capacity of the parts i increases for i ranging from 1 to N.
- the protection memory block comprises a memory immune to the memory rank hammering effect, advantageously the protection memory block comprises at least one of the memories chosen from among: an SRAM memory, an MRAM memory , or CNRAM memory. According to one mode of implementation, the protection memory block is included in the controller.
- the protection memory block comprises DRAM memory, advantageously, the protection memory block forms part 0 of the DRAM memories.
- control circuit is included in the controller.
- Figure 1 is an illustration of the architecture of a memory device established according to the principles of the present invention, in particular the memory device comprises a memory part and a control circuit configured to prevent the rank hammering effect in the memory part, the memory part is, for its part, subdivided in order to optimize the management of row hammering, the single and double arrows illustrate the direction of the interactions between the different parts of the memory device;
- Figure 2 is an illustration of another architecture of a memory device established according to the principles of the present invention, the device of Figure 2 differing from that of Figure 1 in that it does not include a block protection memory;
- Figure 3 is an illustration of a DRAM memory controller for configuring a control circuit to protect said DRAM memory from rank hammering effects;
- Figure 4 is an illustration of the principle of operation, and in particular the configuration of the row hammering protection, of the controller.
- the present invention relates to a memory device provided with means for protecting against the rank hammering effect.
- the present invention proposes a memory device whose architecture is optimized to prevent the row hammering effect of the memory circuits.
- FIG. 1 illustrates a first example of a memory device 10 in accordance with the present invention.
- the memory device includes a memory part 100 and a control circuit 200.
- the memory part 100 notably comprises “DRAM” type memory circuits. More particularly, “DRAM” type memory circuits have a total capacity divided into a first part called “directly protected part 102” and a second part called “indirectly protected part 103”.
- the first part 102 has a lower capacity, and more particularly much lower, than the second part 103.
- first part 102 By “very lower”, one can in particular mean a first part 102 whose capacity is less than 0.1% of the capacity of the second part 103.
- the first part 102 can include 100 rows of memory, while the second part 103 can include 100,000.
- the second part 103 can comprise one bank or a plurality of memory banks.
- the bank or banks of memory can be divided into sub-banks.
- a memory bank can comprise R ranks and be divided into N sub-banks of identical sizes, or identical to within 1 rank.
- the number of ranks S or S + 1 of a sub-bank is equal to the integer division of R by N.
- the memory part 100 comprises a protection memory block 101.
- a protection memory block 101 as considered in the state of the art comprises an “SRAM” type memory circuit. However, it will clearly appear in the remainder of the description, and in accordance with the general principles of the present invention, that this protection memory block can equally well comprise an “SRAM” type memory circuit and a “DRAM” type memory circuit.
- the control circuit 200 comprises a first block 201 and a second block 202 configured to protect from a row hammering effect, respectively, the first part 102 and the second part 103.
- the control circuit 200 can also comprise a functional block 300 configured to execute calculation functions and programs in the second part 103, and advantageously also in the first part 102.
- protecting against a rank hammering effect is meant executing an algorithm, implemented according to a non-limiting example by a finite state machine, and which may be intended to control the execution of preventive refreshes of the memory ranks .
- This algorithm can implement monitoring of a number of activations of the ranks of a bank or of a sub-bank, and trigger, as soon as the number of activations exceeds a threshold predetermined, one or more preventive refreshes based on this monitoring.
- the first block 201 protects the first part 102 from the row hammering effect.
- the first block 201 is configured to execute a first algorithm 201A intended to protect against the rank hammering effect the first part 102.
- the first algorithm 201A can implement a so-called initial table table.
- the number of entries of this initial table is, moreover, a function of the size (or the capacity) of the first part 102. More particularly, a decrease in the capacity of the first part leads to a reduction in the number of entries of the initial table.
- the initial table is saved in the protection memory block 101.
- the initial table is implemented by the first algorithm 201A.
- the first algorithm 201A can in particular, and according to a non-limiting example, list the number of activations undergone by the ranks of the first part 102 either at the scale of the rank or at the scale of the bank or of the sub-bank. Based on this monitoring, and on a criterion relating to the number of activations, the first algorithm 201A can command a (preventive) refresh at the level of the first part 102.
- the second block 202 protects the second part 103 from the rank hammering effect.
- the second algorithm 202A can implement a so-called main table table.
- the second block 202 is configured to execute a second algorithm 202A intended to protect against the rank hammering effect of the second part 103.
- the number of entries in this main table is, moreover, a function of the size (or the capacity) of the second part 103.
- the main table is saved in the directly protected part 102.
- the main table is implemented by the second algorithm 202A.
- the second algorithm can in particular, and according to a non-limiting example, identify the number of activations undergone by the rows of the second part 103 either at the scale of the row or at the scale of the bank or of the sub-bank. Based on this monitoring, and on a criterion relating to the number of activations, the second algorithm 202A can command a (preventive) refresh at the level of the second part 103.
- the relatively small size of the first part 102, made of DRAM, can possibly give the latter access performance much higher than that of the second part 103 and possibly simplify the implementation of the algorithm 202A
- the latter generally implements SRAM memory which consumes a lot of space and has a high manufacturing cost. Reducing the size of the first part therefore opens the way to the consideration of an SRAM memory also of reduced size.
- the function block 300 is intended to execute calculation functions and programs capable of accessing the second part 103.
- the functional block 300 is also intended to execute calculation functions and programs capable of accessing the first part 102.
- these programs can be executed for reasons of initial or periodic hardware integrity testing, collection of statistics, detection of computer attacks, debugging or management of hardware failures.
- the first part 102 and the second part 103 are arranged so that the rank hammering effect imposed by a rank of one of the first part 102 and the second part 103 is not felt by the the other of the first part 102 and the second part 103.
- Such an objective can, for example, be achieved by imposing at least one of the following conditions:
- the first part 102 and the second part 103 can each comprise memory banks which are specific to them (the row hammering effect is not felt from one bank to another);
- the first part 102 and the second part 103 within the same memory bank, each comprise one or more their own sub-benches, said sub-benches are then arranged so that the row hammering effect exerted by a row of a sub-bench of the first part is not felt by a sub-bench of the second party and vice versa;
- the first part 102 and the second part 103 have in common a memory bank, called common bank, said common bank comprising unused memory ranks and separating a section of the common bank, associated with the first part 102, from a another section of the common bank, associated with the second part 103, the number of unused memory ranks being chosen so that no rank hammering effect occurs between each of the two sections of the common bank.
- the first part 102 and the second part 103 are capable of exerting a row hammering effect on each other.
- this effect can be predicted, and therefore managed, by the first algorithm 201A and the second algorithm 202A.
- the first algorithm 201A can be configured to take into account the activation of the rows of the second part 103 likely to exert a row hammering at the level of rows of the first part 102.
- the second algorithm 202A can be configured to take into account the activation of the ranks of the first part 102 likely to exert a rank hammering at the level of ranks of the second part 103.
- the second block 202 can comprise a cache memory 202B.
- This cache memory 202B can in particular be implemented to temporarily store data relating to the main table.
- this temporary storage may relate to entries of the main table for which there is recurrent access.
- This consideration thus makes it possible to optimize, or more particularly, to minimize the accesses to the main table located in the first part 102 of the memory.
- the first algorithm 201A and the second algorithm 202A can operate according to similar principles and criteria.
- first algorithm 201A and the second algorithm 202A implement the same execution hardware resources, and differ only in their dimensioning and the possible implementation of a cache memory.
- This other cache memory is in particular implemented according to conditions similar to those of the cache memory 202B.
- the protection memory block 101 can comprise a memory immune against the rank hammering effect.
- the protection memory block 101 can comprise at least one of the memories chosen from: an SRAM memory, an MRAM (“volatile magneto-resistive memory”) memory, a CNRAM (“volatile carbon nanotube memory”) memory.
- the protection memory block 101 because of its small size, can include DRAM memory, as long as it is arranged or refreshed in such a way that it is immune to the rank hammering effect.
- Optimized architecture of the memory device of the present invention for the realization of a DRAM circuit for the realization of a DRAM circuit.
- the memory device 10 can therefore be a DRAM circuit which comprises the first part 102 and the second part 103.
- the DRAM circuit physically comprises the first and the second part and is configured to perform accesses independently on one and/or the other of these two parts.
- the DRAM circuit also includes the protection memory block
- the protection memory block 101 is sized according to the size (or the capacity) of the first part 102. Insofar as the first part
- the first part 102 of the DRAM circuit can have access performances that are much higher than the second part 103, possibly making it possible to simplify the execution of the second algorithm 202A.
- the architecture of the DRAM circuit is also adapted so that the first algorithm 201A and the second algorithm 202A are executed in the background and therefore do not interfere with the normal operation of the DRAM circuit. In particular, only the preventive refresh operations determined by the second algorithm must be inserted into the command traffic intended for the second part of the DRAM memory.
- each periodic refresh command in fact resulting in the refreshing of several ranks instead of just one, it is then possible to transform a significant fraction of the periodic refresh commands into refresh preventive.
- the present invention makes it possible to consider a protection memory block 101 made, because of its small size, of DRAM memory instead of SRAM memory.
- Small size DRAM can be configured to be immune to rank hammering effects.
- Such an objective can, for example, be achieved by imposing at least one of the following conditions: - the implementation of a shield between the ranks of the DRAM memory;
- the memory device as described above is not limited to the sole consideration of a first part, a second part, and a protection memory block.
- DRAM dynamic random access memory
- control circuit can for its part implement N algorithms. More particularly, according to this configuration, algorithm i, implements part i-1, (2 £ i £ N) and protects part i, while part 1 is protected by algorithm 1 and the memory block protection.
- the protection memory block may comprise, at choice, an SRAM memory or a portion of DRAM designed specifically to be immune to the rank hammering effect.
- FIG. 2 illustrates a second example of memory device 10 in accordance with the present invention.
- This second example essentially takes up all the characteristics relating to the first example illustrated in Figure 1. However, in this second example, the memory device has no protection memory block 101, and therefore does not implement a first table as described in the first example.
- the first algorithm 201A comprises a probabilistic algorithm.
- a probabilistic algorithm those skilled in the art wishing to implement a probabilistic algorithm to consult the document Y. Kim et al., "Flipping bits in memory without accessing them: An experimental study of DRAM disturbance errors," 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA), Minneapolis, MN, USA, 2014, pp. 361-372, doi: 10.1109/ISCA.2014.6853210.
- PARA Probabilistic Adjacent Row Activation
- the invention also relates to a controller 1000 of DRAM memories 1100 illustrated in FIG. 3.
- the controller 1000 is intended to configure protection of the DRAM memories 1100 against a memory rank hammering effect.
- the protection involves the implementation of a control circuit 1200 and a protection memory block 1101 of a predetermined capacity.
- the DRAM memories, the control circuit 1200 and the protection memory block 1101 take up most of the characteristics stated in relation to the memory device 10.
- the controller 1000 is in particular suitable for determining the total capacity of the DRAM memories 1100 controlled by the controller 1000. In particular, if the total capacity of the DRAM memories 1100 exceeds a size, called the threshold size, beyond which protection by an algorithm implementing a single table saved in the protection memory block 1101 is impossible, the controller divides the capacity total of the DRAM memories 1100. This occurs in particular when said table has a size greater than the storage capacity of the protection memory block.
- the DRAM memories 1100 can be divided into N parts, with N an integer greater than or equal to 2. Each of these parts is denoted part i for i an integer ranging from 1 to N.
- the capacity of the parts i increases for i ranging from 1 to N.
- the controller 1000 also configures the control circuit 1200 so that it can execute N rank hammering protection algorithms each called algorithm 1200i for i ranging from 1 to N.
- Each algorithm 1200i is in particular intended to protect part i against the rank hammering effect by means of a table i.
- Each table i, for i ranging from 2 to N, is in particular saved in the part i-1, while table 1 is saved in the protection memory block 1101.
- the controller 1000 configures the control circuit 1200 so that it protects the DRAM memories 1100 by means of of a single algorithm which implements a table saved in the protection memory block 1101.
- the protection memory block 1101 can advantageously comprise a memory immune to the memory rank hammering effect.
- the protection memory block 1101 comprises at least one of the memories chosen from: an SRAM memory, an MRAM memory, or CNRAM memory.
- the protection memory block 1101 is included in the controller 1000.
- the protection memory block 1101 comprises DRAM memory, advantageously, the protection memory block 1101 forms part 0 of the DRAM memories 1100.
- controller 1000 may include control circuit 1200.
- Controller 1000 as previously described allows effective configuration of control circuit 1200 to protect against the effects of rank hammering of DRAM memories.
- This controller in particular offers a flexible solution in terms of DRAM memory capacity.
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Retry When Errors Occur (AREA)
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/277,961 US20240233800A9 (en) | 2021-02-22 | 2022-02-11 | Memory device provided with dram memory circuits arranged in such a way as to minimize the size of a memory block allowing management of the row-hammering |
CN202280026421.4A CN117121106A (zh) | 2021-02-22 | 2022-02-11 | 设置有按照使得最小化存储器块大小以允许管理行锤击效应的方式布置的dram存储器电路的存储器设备 |
KR1020237030067A KR20230147646A (ko) | 2021-02-22 | 2022-02-11 | 행-해머링 효과를 관리할 수 있는 메모리 블록의 크기를 최소화하는 것과 같은 방식으로 배열된 dram 메모리 회로를 갖춘 메모리 디바이스 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2101677A FR3120153B1 (fr) | 2021-02-22 | 2021-02-22 | Dispositif mémoire pourvu de circuits mémoire DRAM agences de manière à minimiser la taille d’un bloc mémoire permettant la gestion de l’effet de martelage de rang |
FRFR2101677 | 2021-02-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022175619A1 true WO2022175619A1 (fr) | 2022-08-25 |
Family
ID=76601267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2022/050256 WO2022175619A1 (fr) | 2021-02-22 | 2022-02-11 | Dispositif memoire pourvu de circuits memoire dram agences de maniere a minimiser la taille d'un bloc memoire permettant la gestion de l'effet de martelage de rang |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240233800A9 (fr) |
KR (1) | KR20230147646A (fr) |
CN (1) | CN117121106A (fr) |
FR (1) | FR3120153B1 (fr) |
WO (1) | WO2022175619A1 (fr) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3066842A1 (fr) | 2017-05-24 | 2018-11-30 | Upmem | Logique de correction de row hammer pour dram avec processeur integre |
US20200218469A1 (en) * | 2019-01-03 | 2020-07-09 | SK Hynix Inc. | Memory system and operation method thereof |
US10885966B1 (en) | 2020-06-23 | 2021-01-05 | Upmem | Method and circuit for protecting a DRAM memory device from the row hammer effect |
-
2021
- 2021-02-22 FR FR2101677A patent/FR3120153B1/fr active Active
-
2022
- 2022-02-11 US US18/277,961 patent/US20240233800A9/en active Pending
- 2022-02-11 CN CN202280026421.4A patent/CN117121106A/zh active Pending
- 2022-02-11 KR KR1020237030067A patent/KR20230147646A/ko unknown
- 2022-02-11 WO PCT/FR2022/050256 patent/WO2022175619A1/fr active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3066842A1 (fr) | 2017-05-24 | 2018-11-30 | Upmem | Logique de correction de row hammer pour dram avec processeur integre |
US20200218469A1 (en) * | 2019-01-03 | 2020-07-09 | SK Hynix Inc. | Memory system and operation method thereof |
US10885966B1 (en) | 2020-06-23 | 2021-01-05 | Upmem | Method and circuit for protecting a DRAM memory device from the row hammer effect |
Non-Patent Citations (2)
Title |
---|
SEYEDZADEH SEYED MOHAMMAD ET AL: "Mitigating Wordline Crosstalk Using Adaptive Trees of Counters", 2018 ACM/IEEE 45TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE (ISCA), IEEE, 1 June 2018 (2018-06-01), pages 612 - 623, XP033375523, DOI: 10.1109/ISCA.2018.00057 * |
Y. KIM ET AL.: "Flipping bits in memory without accessing them: An experimental study of DRAM disturbance errors", 2014 ACM/IEEE 41ST INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE (ISCA), MINNEAPOLIS, MN, USA, 2014, pages 361 - 372, XP032619351, DOI: 10.1109/ISCA.2014.6853210 |
Also Published As
Publication number | Publication date |
---|---|
FR3120153A1 (fr) | 2022-08-26 |
FR3120153B1 (fr) | 2024-02-16 |
US20240233800A9 (en) | 2024-07-11 |
US20240135981A1 (en) | 2024-04-25 |
KR20230147646A (ko) | 2023-10-23 |
CN117121106A (zh) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR3066842B1 (fr) | Logique de correction de row hammer pour dram avec processeur integre | |
FR3111730A1 (fr) | Procédé et circuit de protection d’un dispositif de mémoire DRAM de l’effet de martelagede rang | |
FR2910653A1 (fr) | Circuit integre, procede et systeme pour preextraction d'une memoire vive dynamique a une memoire vive statique | |
FR2774209A1 (fr) | Procede de controle du circuit de lecture d'un plan memoire et dispositif de memoire correspondant | |
FR2946787A1 (fr) | Procede de detection d'une attaque par injection de faute d'un dispositif de memoire, et dispositif de memoire correspondant | |
FR3074604A1 (fr) | Memoire sram a effacement rapide | |
FR3025653A1 (fr) | Dispositif a cellules memoires sram comportant des moyens de polarisation des caissons des transistors de lecture des cellules memoires | |
FR2894709A1 (fr) | "detecteur de destruction anormale de secteur memoire" | |
EP3886361A1 (fr) | Dispositif de fonction physiquement non clonable | |
WO2022175619A1 (fr) | Dispositif memoire pourvu de circuits memoire dram agences de maniere a minimiser la taille d'un bloc memoire permettant la gestion de l'effet de martelage de rang | |
EP3080813B1 (fr) | Système de gestion de l'usure d'une mémoire électronique | |
EP3080815B1 (fr) | Système et procédé de gestion de l'usure d'une mémoire électronique | |
EP1691413A1 (fr) | Composant électronique protégé contre les attaques. | |
WO2022207999A1 (fr) | Dispositif memoire et procede de protection d'un dispositif memoire de l'effet de martelage d'un rang | |
FR2955195A1 (fr) | Dispositif de comparaison de donnees dans une memoire adressable par contenu sur seoi | |
FR3006095A1 (fr) | Cellule de memoire tcam et composant integrant une matrice de telles cellules | |
FR2875328A1 (fr) | Cellule memoire sram protegee contre des pics de courant ou de tension | |
EP3382709B1 (fr) | Cellule mémoire sram | |
FR3015103A1 (fr) | Systeme d'ecriture de donnees dans une memoire | |
EP1633074A1 (fr) | Circuit intégré à signal de sécurisation codé, procédé de sécurisation, dispositif et signal de sécurisation codé au moyen d'une clé dynamique correspondants. | |
WO2023104891A1 (fr) | Dispositif mémoire dram mettant en œuvre un mécanisme de gestion du martelage de rang | |
EP2250561B1 (fr) | Dispositif permettant l'utilisation d'un composant programmable dans un environnement radiatif naturel | |
WO2010128068A1 (fr) | Procede de protection de circuits electroniques, dispositif et systeme mettant en œuvre le procede | |
EP3680904B1 (fr) | Circuit de detection de donnee predominante dans une cellule memoire | |
TW202433486A (zh) | 記憶體裝置及其保護方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22708983 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18277961 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 20237030067 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020237030067 Country of ref document: KR |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22708983 Country of ref document: EP Kind code of ref document: A1 |