CN104517641B - 用于对具有可变密度的存储器进行寻址的方法和系统 - Google Patents
用于对具有可变密度的存储器进行寻址的方法和系统 Download PDFInfo
- Publication number
- CN104517641B CN104517641B CN201410522570.7A CN201410522570A CN104517641B CN 104517641 B CN104517641 B CN 104517641B CN 201410522570 A CN201410522570 A CN 201410522570A CN 104517641 B CN104517641 B CN 104517641B
- Authority
- CN
- China
- Prior art keywords
- memory
- sector
- component part
- capacity
- storage component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000015654 memory Effects 0.000 title claims abstract description 190
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000003860 storage Methods 0.000 claims abstract description 103
- 239000012634 fragment Substances 0.000 claims abstract description 11
- 230000003416 augmentation Effects 0.000 claims abstract description 4
- 230000005039 memory span Effects 0.000 claims description 34
- 239000011159 matrix material Substances 0.000 claims description 33
- 210000004027 cell Anatomy 0.000 claims 10
- 210000000540 fraction c Anatomy 0.000 claims 2
- 238000009826 distribution Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000000151 deposition Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 101100461812 Arabidopsis thaliana NUP96 gene Proteins 0.000 description 1
- 241000287196 Asthenes Species 0.000 description 1
- 102100027217 CD82 antigen Human genes 0.000 description 1
- 102100032919 Chromobox protein homolog 1 Human genes 0.000 description 1
- 101000637625 Cricetulus griseus GTP-binding protein SAR1b Proteins 0.000 description 1
- 102100032174 GTP-binding protein SAR1a Human genes 0.000 description 1
- 101100166631 Homo sapiens CD82 gene Proteins 0.000 description 1
- 101000797584 Homo sapiens Chromobox protein homolog 1 Proteins 0.000 description 1
- 101000637622 Homo sapiens GTP-binding protein SAR1a Proteins 0.000 description 1
- 101000994792 Homo sapiens Ras GTPase-activating-like protein IQGAP1 Proteins 0.000 description 1
- 101100364863 Solanum lycopersicum SAR2 gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/06—Address interface arrangements, e.g. address buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/10—Decoders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0615—Address space extension
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0615—Address space extension
- G06F12/0623—Address space extension for memory modules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/408—Address circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
Abstract
实施例涉及用于对存储器器件进行简化寻址的系统和方法,所述存储器器件的总存储器容量可通过附加存储器容量或因子扩展至总扩展存储器容量,所述方法包括:将所述附加存储器容量划分成所述总存储器容量的二进制存储器片段的集合,使得所有二进制存储器片段的总和等于所述附加存储器容量,由基于二进制的寻址方案对所述二进制存储器片段中的每个二进制存储器片段进行寻址。
Description
相关申请的引用
本申请要求于2013年10月7日提交的第61/887,650号美国临时申请的优先权。
技术领域
本公开总体涉及用于对具有可变密度的存储器进行寻址的方法和系统,并且更特别地涉及用于具有可变存储器密度的非易失性存储器(换言之,具有可选择的存储器容量的存储器)的灵活且有效的寻址方案。在下文中,出于说明的目的,将参考用于NOR闪存的寻址方案来描述本发明。然而,本公开并不限于此,并且可以结合基于其它存储器技术对具有可变密度的存储器进行寻址而应用。
背景技术
用于NOR闪存架构的高级构思假设:除了以每个存储器单元/闪存单元(存储位置)一位的形式来存储信息的常规方式之外,也可以在两个存储器单元中存储多位,例如三位。然而,在一些应用中,每个存储器单元一位的第一存储器密度和在q个存储器单元中存储p位(其中p>q)的第二存储器密度的两种构思应当实现于相同硬件中,比如相同集成电路器件中。换句话说,基于在相同存储器器件中选择第二存储器密度或者第二存储器容量的存储器容量的扩展在操作期间应当是可选择的。
在相同存储器器件中的可选择性导致针对具有第一存储器密度或者第一存储器容量的存储器器件的第一操作模式、以及具有至少第二存储器密度或第二存储器容量的存储器器件的至少一个第二操作模式来实现简单寻址方案存在问题。
因此,需要用于简化对于具有可选择的或可变的存储器密度的存储器器件的寻址方案的系统和方法。
发明内容
提供了用于对具有可变密度的存储器进行寻址的方法和系统,基本上如在至少一个附图中所示和/或根据至少一个附图所描述的那样,以及如在权利要求中更全面地阐述的那样。
实施例的进一步的特性和优势通过参照附图的以下具体实施方式将变得明显。
附图说明
附图被包括以提供进一步理解,并且被并入且构成该说明书的一部分。附图涉及实施例的示例,并且与描述一起用于解释本公开的原理。其它实施例和实施例的许多预期优点将更容易领会,因为通过参照以下详细描述它们变得更好理解。
图1A示出了具有W=1024个字线和B=4096个位线的存储器模块或阵列以及根据常规存储器架构的每个存储器单元1位(即每个字线4096x1位)的存储器密度的示意图。
图1B示出了具有W=1024个字线和B=4096个位线的存储器模块或阵列以及根据高级存储器架构的每个存储器单元1.5位(即每个字线4096x1.5位)的存储器密度的示意图。
图2示出了用于存储器器件的简化寻址方案的示意图,该存储器器件的512千字节的总存储器容量可通过256千字节的附加存储器容量或可约分数扩展至768千字节的扩展存储器容量,其中256千字节的附加存储器容量被划分为512千字节的总存储器容量的256千字节的二进制存储器片段,从而256千字节的二进制存储器片段等于256千字节的附加存储器容量。
图3示出了用于存储器器件的简化寻址方案的示意图,该存储器器件的512千字节的总存储器容量可通过384千字节的附加存储器容量或可约分数扩展至896千字节的扩展存储器容量,其中384千字节的附加存储器容量被划分为512千字节的总存储器容量的256千字节和128千字节的二进制存储器片段的集合,从而256千字节加上128千字节的二进制存储器片段的总和等于384千字节的附加存储器容量。
图4示出了具有多个扇区的存储器器件的实施例,其中每个扇区的存储器容量根据模式寄存器是可选择的。
图5示出了用于对存储器器件进行简化寻址的方法的流程图,该存储器器件的总存储器容量可通过因子扩展至总扩展存储器容量。
具体实施方式
在以下具体实施方式中,参照附图,附图形成具体实施方式的一部分,并且在附图中通过图示来示出特定实施例。要理解的是,可以利用其它实施例并且可以做出结构或其它改变而不脱离本公开的范围。因此,以下具体描述并不视为限制意义,并且本公开的范围有所附权利要求进行限定。
在本申请的上下文中,存储器或存储器器件可以是可以为每个输入地址A提供专用输出O的器件。输出O通常可以被约束至预定的数值范围D,数值范围D可以由进一步的处理级进行操纵。总体上,NOR结构的存储器器件可以涉及将存储器器件实现为利用二进制数值作为矩阵元素的二维存储矩阵。在这种情况下,存储矩阵的列可以对应于位线,并且存储矩阵的行可以对应于字线。字线和位线可以实现对存储器单元的电访问,存储器单元可对应于存储矩阵的矩阵元素。
在下文中,将针对传统存储器架构的实例来描述寻址方案,其中每个存储器单元存储一位。然而,为了在先进存储器架构中引入整数p和q来描述每个字线通过因子来增加的存储器密度和存储器容量,假定q可以表示每个字线q个存储器单元的集合,且p≥q表示按位的q个存储器单元的一个集合的信息内容。在这种情况下,传统的存储器架构可以被描述为字线的q=1个存储器单元的每个集合存储p=1位的信息内容。
在单个位存储的这一简单实例中,具有W个字线和B个位线的二维存储矩阵的存储器单元可以按如下方式进行寻址:
针对所得到的在一个维度上尺寸为W(其在物理上对应于字线的数目)并且在另一维度上尺寸为B(其在物理上对应于位线的数目)的存储矩阵中的存储器单元的地址A,对于具有0≤A≤B·W-1的有效地址以下内容成立:
字线地址WA可以由A除以B的整数除法(即WA=A div B)定义,而位线地址BA可以由A除以B的整数除法的余数(即BA=A mod B)定义。
也就是说,可以看作在物理上由W个字线和B个位线的交点组织的存储器可以被解释为二维矩阵A(W,B),W个字线和B个位线的交点实现对位于交点处的存储器单元的电访问,二维矩阵A(W,B)的矩阵元素可以采用预定的数值集合,即{0,...,D-1},其中矩阵元素为二进制数值的情况下,D多数情况下等于2。
而且通常,字线数目W和位线数目B可以被选择为等于2的整数次幂(即W=2w以及B=2b),从而在以2为底的典型数值表示中上述整数除法运算(整除和求模)不需要由算术逻辑单元执行,而可以通过仅选择二进制表示的地址A的部分来执行。选择W=2w对于图4中所示的多个扇区存储器是有利的。
假设取消对具有每个存储器单元1位的存储密度的存储器的上述限制,应当同时读出字线的N个存储器单元而非单个存储器单元,其中N一般又可以被选择为等于2的整数次幂(即N=2n)。被同时读出字线的N个存储器单元的单位也可以被称为N位的字。
因此,对可选地具有第一存储器密度(即在第一操作模式中总存储器容量为C=W·B位)或至少一个不同的第二存储器密度(即在至少一个第二操作模式中总扩展存储器容量为其中q=2k、q<p<2q)的相同存储器器件进行操作可以被链接至改变读出字线的字的宽度,即在第一操作模式中1位的字以及在至少一个第二操作模式中N位的字。
为了增加对由于存储器器件中的制造缺陷而导致的硬件错误的可校正性,N位的字的N个位通常不被分配到由物理上相邻的位线寻址的存储器单元。而且,N位的字的N个位向位线的分配可以在字线之上是杂乱的而且在一定程度上是任意的,但是在所有字线之上当然是相同的。
此外,为了存储器器件的可靠性以下实施例是可能的,其中字的宽度可以被增加至P>N位来为错误校正码方案提供一些冗余。同样在该情况下,存储器单元的有效地址A仍然可以是范围0≤A≤W·B-1的一部分。虽然存储矩阵的尺度随后被增加到但是如果P位的字的选择是由N位的字的选择得出的,即矩阵A(W,B)变为则上述寻址方案仍然可以使用。
如果希望在基于尺度为W·B的存储矩阵的存储器器件中,以第二操作模式向可寻址存储器单元中写入更多信息,就会产生关于寻址的问题,在一定程度上因为包含的信息将与具有W·B的存储矩阵的存储结构不同地被地址。这个问题基于如下事实,存储器器件的基本矩阵组织将通常被保持,但是所存储的信息的组织可以改变。因此,在没有其它手段的情况下,将需要在存储矩阵的寻址方案和信息矩阵的寻址方案之间的转换,这会引起计算量,并且因此引起关于对存储器的访问时间的问题。
此外,在一个实施例中,用于在第二操作模式中提供增加的总扩展存储器容量的附加存储器单元沿着原始存储矩阵的字线进行布置。结果,用于第二操作模式的字线数量W通常不变。因此,所得的用于第二操作模式的N位的字的N个存储器单元也将通常被布置在相同字线上,但是未必在字线与相邻位线的交点处,原因在于上述杂乱的功能性。在算术上,存储器容量的扩展起因于沿着字线存储位而不是1·B位。利用冗余对上述P位的字的扩展可以类似地执行。
返回存储矩阵,矩阵A(W,B)或其扩展包括如下矩阵元素,该矩阵元素可以采用预定的数值集合,即{0,...,D-1},其中D可以被视为的函数。现在对于对矩阵A(W,B)的每次访问,可以创建良好定义的选择步骤,该选择步骤选择相同字线(即存储矩阵的行)的N个存储器单元并转换所包含的信息,从而信息结果对应于可以由N个存储器单元(即p位)内的信息内容表达的范围。换句话说,从N个存储器单元中读出的N段信息可以被看作以D为基数的数字。从N个存储器单元中读出的某一数值组合可以被忽略。
在下述示例中,每N=2个存储器单元包含p=3位的信息,且从存储器单元中读出的在范围{0,1,2}中的数值呈现以D=3为基数的数字。在对应于该示例的表1中,示出了从N=2个存储器单元读出的可能值组合以及它们的在从0到7的范围内的对应分配的信息值。因此,信息值可以表示p=3位的信息。在表1的实施例中,“1”和“1”的值组合被忽略以得到合适的数目的2p=8种值组合,这些组合可以被分配到在从0到7的范围内的信息值。
表1
在下文中,示出了针对以下值的二维存储器阵列的简单示例:B=8=23,W=4=23,N=2=21,P=3且最初p=q=1。接着,在没有每个字P-N=1位的冗余的情况下的总存储器容量对应于W·B=25或者24N位的字,从而也对应于24P位的字。因此,为了寻址P位的字,在二进制系统中需要5位数,其中前2位可以表示字线地址而剩余的后3位可以表示P位的字的位线地址。
由于上述增加的可校正性的原因,针对P位的字的位分布,可以假设沿着在位置4·i+j处的字线布置这些位,其中i∈{0,...,P-1}且对于P位的字而言P位的字的所得最远位分布的策略对应于常用手段,因为错误校正方案得益于这种最远分布。
表2示出了P位的字的所得位分布,其中表2中每个元素的第一值对应于地址A divN,每个元素中的第二值对应于P位的字中在范围{0,...,P-1}外的位的数目。
BA
表2
在表2中地址为A div N=11的P位的字被突出显示。它的位可以经由进行寻址,因此对于字线地址WA而言11div 4=2,对于P位的字内的位的位线地址BA而言BA=4·i+(11mod 4)=4·i+3其中i∈{0,1,2}。在表2的其中p=q=1的示例中,需要3个存储器单元来表示这个3位的P位的字。而且,在表2的示例中,每个字线可以存储4个P位的字,例如,具有字线地址WA=0的第一字线存储了地址为A div N=0的字的3个位,所处位线地址分别为BA=0(“0 0”),BA=4(“0 1”)以及BA=8(“0 2”)。
现在,如果对于具有增加的存储器密度的存储器而言p被选择为p=3且q被选择为q=2,则对于每个P位的字而言,只需要两个而不是上述的三个存储器单元,其信息内容如图1中所示必须相应地更高。因此在对应的示例中,所得的表3示出了每个字线可以存储6个P位的字,例如具有字线地址WA=0的第一字线存储了地址为A div N=0的字的3位的信息,所处位线地址分别为BA=0(“0 0”)以及BA=6(“0 1”)。而且,表3示出了根据一个示例的第一方法以同样根据最远分布方案来分布每个字线6个P位的字的位。
BA
表3
然而,表3也示出了作为这种直接的最远分布方案的结果,也在表3中突出显示的地址为A div N=11的P位的字被布置在与表2中不同的字线上,即在表3中位于字线地址为WA=1的字线上,而不是如在表2中字线地址为WA=2的字线上。在表3的示例中,A div N=11的字中的位可以经由的整数部分进行寻址,因此对于字线地址WA而言为在该示例中,存储矩阵的寻址方案和信息矩阵的寻址方案之间的转换中包含的除数p=3会导致运算量,从而导致关于对存储器的访问时间的问题。根据文献,这种除法只能由具有更高位解析度的乘法代替,并且因此增加了复杂性。
然而,在根据表4中所示的实施例的第二方法中,表3的元素被重新布置,使得上至具有地址A div N=15(该地址为表2中的字的最高地址)的字仅被布置在整个存储矩阵的在位线地址为BA=0和位线地址BA=7之间的较低的部分中,而在具有地址A div N=16的字和具有地址A div N=23的字之间的字被重新布置在整个存储矩阵的在位线地址为BA=8和位线地址BA=11之间的上部的部分中。
BA
表4
结果,突出显示的地址为A div N=11的字以及表2中的p=q=1的示例的其它的字再次相对于表2的示例被布置在字线地址为WA=2的相同字线上。甚至地址为A div N=11的字的位的位线地址也相同,即相对于表2中地址为A div N=11的字的两个较低位的BA=3和BA=7。
然而,在根据表4的实施例中,对于在地址为A div N=16的字和A div N=23的字之间的字而言,现在可以应用改良的地址计算,这些字看似只是利用p=3且q=2的总存储器容量的扩展的结果。字线地址可以由确定,例如对于地址为A div N=21的字而言,其结果为WA=(21–16)div 2=2。同样,地址为A div N=16的字和地址为A div N=21的字之间的字内的位的位线地址BA的计算被修改为(21–16)mod 2。后一个表达式可以得出,对于地址为A div N=21(i=0)的字的第一存储器单元而言BA=9,对于地址为A div N=21(i=1)的字的第二存储器单元而言BA=11。由于修改后的运算中的几乎所有项(用于确定在位线地址BA=8和BA=11之间的附加存储器容量的字线和位线)都是2的幂,所以与图3中利用字的直接分布的情况相比运算量大大减小,其表示附加存储器容量并且随后所需的除以3。
在下文中,参照图1A、图1B和图2来说明当通过可约分数(诸如)来扩展总存储器容量时的改良的地址计算。对此,图1A示出了当在第一模式下操作时其中W=1024=210,B=512·8=212=4096的存储器模块,其中每个存储器单元存储1位信息。结果,图1A所示的存储器模块的总存储器容量为W·B=1024·4096bits=512千字节。与此相比,图1B示出了当在第二模式下操作时其中W=1024=210,B=512·8=212=4096的存储器模块,其中每个存储器单元存储位信息。结果,图1B所示的存储器模块的总存储器容量为W·B=1024·4096·1.5bits=768千字节。由上所示,图1B的示例中的存储矩阵地址和信息矩阵地址之间的转换除其它外还需要除以3,这将会减缓对于扩展存储器模块的访问。
现在,图2示出了根据一个实施例替换负载地址转换而可以执行的示意图。很明显,通过可约分数得自存储器扩展的256千字节的附加存储器容量对应于图1A中的原始存储器模块中的存储器容量的二进制部分,即对应于一半原始存储器容量。如果附加存储器容量对应于这样一个二进制部分并且被视为单独的附加存储器模块,则对附加存储器容量的寻址会极大地简化。这基于如下事实,如二进制部分那样,附加存储器模块在逻辑上也可以通过基于二进制的寻址方案进行寻址,其将仅使用位选择过程而不需要地址转换运算。
不同于图2所建议的那样,256千字节的附加存储器容量并不由不同的字线寻址,而是由对512千字节的原始存储器模块寻址的相同的1024个字线寻址。换句话说,附加存储器容量可以使用在512千字节的原始存储器模块以上的位线地址空间。相应地,扩展存储器模块形成有768千字节的总存储器容量,其较低的三分之二对应于512千字节的原始存储器模块,且上部的三分之一对应256千字节的附加存储器模块。
因此,示意图也提出了简化对通过可约分数扩展的原始存储器模块的寻址的通用方法。即,在第一步骤中,存储器容量的第一剩余部分被确定为其超过了原始存储器模块的存储器容量。这样看来,存储器容量的第一剩余部分也可以被视为附加存储器容量,其通过可约分数进行扩展而被加入原始存储器模块的总存储器容量。在p=3且q=2的情况下,第一剩余部分被确定为然后,第一剩余部分被分解为原始存储器模块存储器容量的二进制部分,其少于或等于相应的剩余部分直到当前的剩余部分和当前的二进制部分之间的差为零。这里,存储器容量的第一剩余部分是原始存储器模块存储器容量的第一二进制部分也是从而第一剩余部分和第一二进制部分之间的差的已经为零。进而,在p=3且q=2的情况下,该方法在一次迭代后已经终止。
由于这个原因,图3示出了用于简化对通过可约分数扩展的存储器容量为512千字节的原始存储器模块寻址的另一个示意图,其中p=7且q=4。图3示出了对于更复杂的可约分数如何迭代图2中所示的方法。在这种情况下,第一剩余部分可以被确定为原始存储器模块的存储器容量的少于第一剩余部分的第一二进制部分还是由于第一剩余部分为与第一二进制部分为之差不是零,所以第二剩余部分可以被生成以作为第一剩余部分和第一二进制部分之差,即接着,第二剩余部分可以被分解成原始存储器模块的存储器容量的第二二进制部分,其小于或等于第二剩余部分。第二二进制部分也可以被理解为第二等级的二进制部分,即由于第二剩余部分和第二二进制部分之差为零,该方法在两次迭代后终止。
换句话说,在图3的实施例中,通过因子扩展具有512千字节的存储器容量的原始存储器模块的存储器容量而产生的384千字节的总附加存储器容量可以被分解为原始存储器模块的存储器容量的第一二进制部分(即一半或256千字节)和原始存储器模块的存储器容量的第二二进制部分(即四分之一或128千字节)。
同样在图3的实施例中,对附加存储器容量的寻址基于以下事实而被大大简化,由于第一和第二二进制部分(256千字节和128千字节的附加存储器模块)可以通过基于二进制的寻址方案进行寻址,这仅使用位选择过程而不使用地址转换运算。二进制寻址方案针对通过位分割的地址生成而可以使用决策阶段。
类似于图2,在图3的实施例中,384千字节的附加存储器容量并不由不同的字线寻址,而是由对512千字节的原始存储器模块寻址的相同的1024个字线寻址。换句话说,附加存储器容量使用在512千字节的原始存储器模块以上的位线地址空间。相应地,扩展存储器模块形成有896千字节的总存储器容量,其较低的七分之四部分对应于512千字节的原始存储器模块,居中的七分之二部分对应于256千字节的第一附加存储器模块,其上部的七分之一部分对应于128千字节的第二附加存储器模块。换句话说,图3的实施例中的总扩展存储器模块的位线地址空间相对于在0和4095之间的原始位线地址空间在逻辑上被分割成大小为20,2-1和2-2的部分。因此,附加的位线地址空间覆盖了从4096到(4096+4096/2+4096/4–1)=7167的范围。
在一个更复杂且实际相关的实施例中,存储器器件的参数被选为W=8192=213,B=512·i=212,N=256,P=288。另外,假设对应的存储器器件的总存储器容量被划分为相同存储器容量的8个区域,也称为扇区。在该实施例中,其操作于p=q=1并且总存储器容量为4,194,304位的第一操作模式还是操作于p=3且q=2并且总存储器容量为而无冗余的第二操作模式依赖于扇区。
那么,上述用于对扩展的存储器容量进行寻址的方法可以被概况为将除了具有最低地址的扇区外的每个扇区看作虚拟的单独存储或存储器器件。进一步,算术逻辑单元可以被引入,其可以与所有虚拟存储器器件结合使用。该算术逻辑单元可以确定某一扇区何时被访问并分配对应的访问类型(单位访问还是多位访问),无论哪一个应当用于相应的扇区。
在一个实施例中,如表5中所列的以下设置可以针对操作模式进行选择以用于对应的扇区中:
表5
相应地,对于表5的实施例中的每个扇区的检测可以应用下面的表6:
表6
根据表6中的实施例,C(s)可以指代对应的扇区的总存储器容量,以千字节或256位的字为单位;SA(s)可以指代所产生的对应的扇区的首地址,以常用的十六进制表示法表示;并且SAS(s)可以指代地址的减小的有效部分,其可以被存储用于对应的扇区以减少存储空间需求。这时,字线地址可以根据前面描述的简化寻址方案从减小的地址WR=A–SA(s)得出。
在根据表6的实施例中,扇区0,3和7根据其中p=q=1的第一操作模式操作并且扇区1,2,4,5,6根据其中p=3且q=2的第二操作模式操作,用于沿字线提供信息的连接线可以使用多路复用器来实现,对于p=q=1且256位的字的情况该多路复用器向感测放大器提供512·8/256=16个存储器单元的集合。对于具有冗余的288位的字,该集合应当简单地被扩展到512·8·288/2562=18个存储器单元,该18个存储器单元被提供给感应放大器。对于p=3且q=2的情况,对于288位,仅必须读出个存储器单元。然而,用于第一操作模式的上述16:1的多路复用器变为24:1的多路复用器
在上述实施例中,两种多路复用器系统都应当被实现以使多扇区存储器器件中的预定扇区能够同时操作于第一操作模式和第二操作模式。然后,存储器容量为512千字节的扇区可以传统寻址方案进行寻址,只要对应的扇区的起始地址针对对扇区的访问而被减去。在所描述的实施例中,相关的减数使用5位的宽度,其可以由二进制表示SAS(s)的值所需要的位分辨率得到。对于存储器容量为768千字节的扇区,在减法后的两个上部地址位AT可以用来执行对字线和字节地址的设置,如表7所示:
AT | 字线 | 字节地址 |
0 | 0..0x1FF | 0..0x1FF |
1 | 0x200..0x3FF | |
2 | 0…0x3FF | 0x200..0x2FF |
表7
现在,表7可以按如下理解:在扇区的较低的部分中,读出字线的较低的部分,其中包括所有字线。在扇区的较高的部分中,读出字线的剩余的较高的部分。另外,在后一种情况中,所有字线现在可以利用上部的三分之一位线进行寻址。由于用于以上证明的实施例的数字,所有值可以通过在上述减法之后仅通过从访问地址进行位选择而以简单方式得到。
图4示出了进一步的实施例,其中若干具有可配置的存储器密度的存储器扇区被堆叠。根据图4,四个扇区400,401,402和403的堆叠可以由扇区地址SAR0,SAR1,SAR2和SAR3以及模式寄存器MOD0,MOD1,MOD2和MOD3确定。如上所述的简化寻址方案可以在每个扇区400,401,402和403内执行。
对于每个扇区,模式寄存器可以选择单个位(即第一操作模式)或者多个位(即第二操作模式)。扇区地址的位长可以直接取决于可约分数操作于多位模式的扇区的存储器容量通过该分数进行扩展。
基于扇区地址和模式寄存器,扇区检测可以用简单逻辑来实现。这对于如图3所示实施例中的更复杂的可约分数依然适用,其中p=7且q=4,因此具有更复杂的逻辑。
图5示出了用于对存储器器件进行简化寻址的方法的流程图,该存储器器件的总存储器容量可通过附加存储器容量或因子扩展至总扩展存储器容量。该方法包括将附加存储器容量划分成总存储器容量的二进制存储器部分的步骤,使得所有二进制存储器部分的总和等于附加存储器容量。
在下一步骤中,该方法包括通过基于二进制的寻址方案对每个二进制存储器部分进行寻址。根据一个实施例,该因子对应于可约分数其中q=2k;q<p<2q且p、q、k均为正数。
到目前为止,在所有上述实施例中,已经针对其中q个存储器单元的集合存储p≥q位信息的存储器架构考虑了寻址方案。然而,所提出的寻址方案可以容易地转移到其中q个存储器单元的集合存储p≤q位信息的存储器架构。事实上,对于其中的此类情况适用的寻址方案可以通过简单地选择用于存储器放大的因子而被定义为如上所述的寻址方案中的
当然,在相同存储器器件中可以使用p和q的多组值,该简化寻址方案在此范围内是可扩展的。对只能用特定方式进行删除的非易失性存储器使用该简化寻址方案可能会出现局限。一般地,仅整个字线的存储器单元可以同时被删除。当使用上述简化寻址方案时,删除操作可能导致相对于寻址不连续的范围。对于一些应用,这种情况是不希望发生的。然而,将简化寻址方案应用于非易失性性存储器仅在如下点上受限,根据上述实施例的仅整个扇区可以被删除。然而,这一点由于其它技术原因而可能是需要的(所谓的干扰)。
综上所述,已经提出了一种方法,可以基于该方法管理相对于其存储器单元的内容具有可变信息密度的存储器件,而同时避免关于寻址另外产生的算术问题。基本原理在于,相对于一个存储器单元包含一位的简单操作或存储模式,在该一个简单存储模式之后,在位线上所产生的附加存储器容量在地址空间中被移位。
关于涉及附图的如上所述的实施例,强调实施例基本上用于增加可理解性。除此之外,以下其它实施例试图说明更具体的构思。然而,以下实施例并不视为限制性意义。相反,如之前所述,本公开的范围由所附权利要求限定。
虽然在本文中已经图示和描述了具体实施例,但是本领域技术人员将理解在不背离本公开的范围的情况下,各种备选和/或等效实施方式可以替代所示或所述的具体实施例。本申请旨在覆盖对在本文中所讨论的特定实施例的所有变型或变化。因此,本发明旨在仅由权利要求及其等效物进行限定。
Claims (13)
1.一种用于对存储器器件中的存储器单元进行简化寻址的方法,所述存储器器件被组织在包括W个字线和个位线的存储器矩阵中,其中W、B、p和q是整数,所述存储器器件的存储器容量是在第一操作模式中的C=W·B位的总存储器容量与其中q=2k、q<p<2q的至少一个第二操作模式中的位的总扩展存储器容量之间可选择的;所述方法包括:
将附加存储器容量Ca=Ce–C划分成具有部分存储器容量的存储器部分的集合,所述部分存储器容量对应于所述总存储器容量的二进制分数Ci=W·B/2i,使得所有局部存储器容量的总和等于所述附加存储器容量,以及
由基于二进制的寻址方案对所述存储器部分的集合中的每个存储器部分进行寻址,以避免在所述第二操作模式中对每字线的所述位进行寻址时的算术复杂性。
2.根据权利要求1所述的方法,其中:
所述存储器器件包括多个扇区,其中每个扇区s的存储器容量是根据扇区特定存储器扩展分数可选择的。
3.根据权利要求2所述的方法,进一步包括:
基于扇区特定起始地址SA(sp)根据权利要求1的简化寻址方案来对所述多个扇区中的预定扇区sp中的存储器单元进行寻址,所述扇区特定起始地址SA(sp)取决于所述预定扇区的存储器容量C(sp)以及所述预定扇区的扇区特定存储器扩展分数。
4.根据权利要求1所述的方法,其中:
所述附加存储器容量Ca的所述存储器单元沿着所述W个字线以及从B到的位线范围进行定位。
5.一种存储器器件,所述存储器器件被组织在包括W个字线和 个位线的存储器矩阵中,其中W、B、p和q是整数,所述存储器器件的存储器容量是在第一操作模式中的C=W·B位的总存储器容量与其中q=2k、q<p<2q的至少一个第二操作模式中的位的总扩展存储器容量之间可选择的;所述存储器器件被配置成:
将附加存储器容量Ca=Ce–C划分成具有部分存储器容量的存储器部分的集合,所述部分存储器容量对应于所述总存储器容量的二进制分数Ci=W·B/2i,使得所有局部存储器容量的总和等于所述附加存储器容量,以及
由基于二进制的寻址方案对所述存储器部分的集合中的每个存储器部分进行寻址,以避免在所述第二操作模式中对每字线的所述位进行寻址时的算术复杂性。
6.根据权利要求5所述的存储器器件,包括多个扇区,其中每个扇区s的存储器容量是根据扇区特定存储器扩展分数可选择的。
7.根据权利要求6所述的存储器器件,被配置成:
基于扇区特定起始地址SA(sp)根据如在权利要求5的所述存储器器件中实施的简化寻址方案来对所述多个扇区中的预定扇区sp中的存储器单元进行寻址,所述扇区特定起始地址SA(sp)取决于所述预定扇区的存储器容量C(sp)以及所述预定扇区的扇区特定存储器扩展分数 。
8.根据权利要求5的存储器器件,其中:
所述附加存储器容量Ca的所述存储器单元沿着所述W个字线以及从B到的位线范围进行定位。
9.一种用于对存储器器件进行简化寻址的方法,所述存储器器件的总存储器容量可通过附加存储器容量或因子扩展至总扩展存储器容量,所述存储器器件包括多个存储器单元,所述方法包括:
将所述附加存储器容量划分成所述总存储器容量的二进制存储器片段的集合,使得所有二进制存储器片段的总和等于所述附加存储器容量;
由基于二进制的寻址方案对所述二进制存储器片段中的每个二进制存储器片段进行寻址;以及
将多于一位的信息存储在所述多个存储器单元中的至少一个存储器单元中,以将所述总存储器容量扩展至所述总扩展存储器容量。
10.根据权利要求9所述的方法,其中q个存储器单元的集合存储p≥q位信息,并且所述因子对应于可约分数其中q=2k、q<p<2q且p、q和k为整数。
11.根据权利要求9所述的方法,其中所述存储器器件包括多个扇区,其中每个扇区s的存储器容量是根据扇区特定存储器扩展分数 可选择的。
12.根据权利要求11所述的方法,进一步包括:
基于扇区特定起始地址SA(sp)根据权利要求9的简化寻址方案来对所述存储器器件中的所述多个扇区中的预定扇区sp中的存储器单元进行寻址,所述扇区特定起始地址SA(sp)取决于所述预定扇区的存储器容量C(sp)以及所述预定扇区的扇区特定存储器扩展分数。
13.根据权利要求9所述的方法,其中q个存储器单元的集合存储p≤q位信息,并且所述因子对应于可约分数其中p=2k、p<q<2p且p、q和k为整数。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361887650P | 2013-10-07 | 2013-10-07 | |
US61/887,650 | 2013-10-07 | ||
US14/060,794 US9082462B2 (en) | 2013-10-07 | 2013-10-23 | Methods and systems for addressing memory with variable density |
US14/060,794 | 2013-10-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104517641A CN104517641A (zh) | 2015-04-15 |
CN104517641B true CN104517641B (zh) | 2017-06-30 |
Family
ID=52776839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410522570.7A Active CN104517641B (zh) | 2013-10-07 | 2014-09-30 | 用于对具有可变密度的存储器进行寻址的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9082462B2 (zh) |
CN (1) | CN104517641B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110350922A (zh) * | 2019-07-18 | 2019-10-18 | 南京风兴科技有限公司 | 一种二进制编码的寻址方法及寻址器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5093805A (en) * | 1990-06-20 | 1992-03-03 | Cypress Semiconductor Corporation | Non-binary memory array |
US5315130A (en) * | 1990-03-30 | 1994-05-24 | Tactical Fabs, Inc. | Very high density wafer scale device architecture |
CN102054528A (zh) * | 2009-11-04 | 2011-05-11 | 庆熙大学校产学协力团 | 二进制内容可寻址存储器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5613158A (en) * | 1994-05-25 | 1997-03-18 | Tandem Computers, Inc. | System for specifying addresses by creating a multi-bit ranked ordered anchor pattern and creating next address by shifting in the direction of the superior position |
US6560450B1 (en) * | 1999-01-11 | 2003-05-06 | Nortel Networks Limited | Satellite communications routing and addressing method |
-
2013
- 2013-10-23 US US14/060,794 patent/US9082462B2/en active Active
-
2014
- 2014-09-30 CN CN201410522570.7A patent/CN104517641B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5315130A (en) * | 1990-03-30 | 1994-05-24 | Tactical Fabs, Inc. | Very high density wafer scale device architecture |
US5514884A (en) * | 1990-03-30 | 1996-05-07 | Tactical Fabs, Inc. | Very high density wafer scale device architecture |
US5691949A (en) * | 1990-03-30 | 1997-11-25 | Tactical Fabs, Inc. | Very high density wafer scale device architecture |
US5093805A (en) * | 1990-06-20 | 1992-03-03 | Cypress Semiconductor Corporation | Non-binary memory array |
CN102054528A (zh) * | 2009-11-04 | 2011-05-11 | 庆熙大学校产学协力团 | 二进制内容可寻址存储器 |
Also Published As
Publication number | Publication date |
---|---|
US20150098292A1 (en) | 2015-04-09 |
US9082462B2 (en) | 2015-07-14 |
CN104517641A (zh) | 2015-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Haj-Ali et al. | Efficient algorithms for in-memory fixed point multiplication using magic | |
US9432055B2 (en) | Encoder for quasi-cyclic low-density parity-check codes over subfields using fourier transform | |
US20180358989A1 (en) | Non-volatile Storage Systems With Application-Aware Error-Correcting Codes | |
US20070286327A1 (en) | Implementation-efficient multiple-counter value hardware performance counter | |
US9323662B2 (en) | Flash memory using virtual physical addresses | |
US9734129B2 (en) | Low complexity partial parallel architectures for Fourier transform and inverse Fourier transform over subfields of a finite field | |
US9444493B2 (en) | Encoder with transform architecture for LDPC codes over subfields using message mapping | |
JP2011165305A (ja) | 不揮発性メモリ装置及びそれを含むメモリシステム | |
CN102197436A (zh) | 用于多电平单元存储器的数据路径,用于存储的方法及用于利用存储器阵列的方法 | |
CN102541749B (zh) | 多粒度并行存储系统 | |
US8639891B2 (en) | Method of operating data storage device and device thereof | |
US8441883B2 (en) | Memory arrangement for accessing matrices | |
CN109065096A (zh) | 具有错误校正逻辑的存储模块 | |
US20090204748A1 (en) | Multi-channel flash memory system and access method | |
NL8201081A (nl) | Halfgeleider geheugenorgaan. | |
CN112580791A (zh) | 用于矩阵处理的存储器组织 | |
CN107017030A (zh) | 用于不规则代码的高效ldpc编码器 | |
CN104517641B (zh) | 用于对具有可变密度的存储器进行寻址的方法和系统 | |
CN108231119A (zh) | 用每单元分数比特低延迟读取快闪存储设备的方法和装置 | |
JPH06162227A (ja) | ベクトル並列計算機 | |
US20230305807A1 (en) | Core group memory processsing with mac reuse | |
CN102150130B (zh) | 密码参数的有效存储 | |
CN111341374B (zh) | 存储器的测试方法、装置及可读存储器 | |
US20220100941A1 (en) | Memory device with programmable circuitry | |
CN108053852A (zh) | 一种基于交叉点阵列的阻变存储器的写入方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |