CN116798468A - 用于存储器对准的设备及方法 - Google Patents
用于存储器对准的设备及方法 Download PDFInfo
- Publication number
- CN116798468A CN116798468A CN202310841707.4A CN202310841707A CN116798468A CN 116798468 A CN116798468 A CN 116798468A CN 202310841707 A CN202310841707 A CN 202310841707A CN 116798468 A CN116798468 A CN 116798468A
- Authority
- CN
- China
- Prior art keywords
- memory
- byte
- data
- bits
- allocation
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 338
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000004378 air conditioning Methods 0.000 claims 6
- 238000012545 processing Methods 0.000 description 22
- 230000000295 complement effect Effects 0.000 description 20
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 238000003491 array Methods 0.000 description 5
- 230000011664 signaling Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- 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
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- 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
-
- 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
- G11C7/1012—Data reordering during input/output, e.g. crossbars, layers of multiplexers, shifting or rotating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Dram (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
- Executing Machine-Instructions (AREA)
- Static Random-Access Memory (AREA)
Abstract
本发明包含与存储器对准有关的设备及方法。实例方法包括对基于字节的第一存储器元件及基于字节的第二存储器元件执行对准操作使得所述基于字节的第一存储器元件的填充位在逻辑上邻近所述基于字节的第二存储器元件的填充位且所述基于字节的第一存储器元件的数据位在逻辑上邻近所述基于字节的第二存储器元件的数据位。
Description
分案申请的相关信息
本申请是申请日为2017年11月2日、申请号为“201780069592.4”、发明名称为“用于存储器对准的设备及方法”的发明专利申请的分案申请。
技术领域
本发明大体上涉及半导体存储器及方法,且更特定来说,涉及与存储器对准有关的设备及方法。
背景技术
存储器装置通常提被供作为计算机或其它电子系统中的内部半导体集成电路。存在许多不同类型的存储器,其包含易失性及非易失性存储器。易失性存储器可能需要电力来维持其数据(例如,主机数据、错误数据等)且包含随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、同步动态随机存取存储器(SDRAM)及晶闸管随机存取存储器(TRAM)等。非易失性存储器可通过在不供电时保持所存储的数据而提供持久性数据且可包含NAND快闪存储器、NOR快闪存储器及电阻可变存储器,例如相变随机存取存储器(PCRAM)、电阻性随机存取存储器(RRAM)及磁阻随机存取存储器(MRAM),例如自旋力矩转移随机存取存储器(STTRAM)等。
电子系统通常包含数个处理资源(例如,一或多个处理器),其可检索及执行指令且将所执行指令的结果存储到合适位置。处理器可包括数个功能单元,例如算术逻辑单元(ALU)电路、浮点单元(FPU)电路及组合逻辑块,例如,其可用于通过对数据(例如,一或多个操作数)执行逻辑运算(例如AND、OR、NOT、NAND、NOR及XOR)及反转(invert/inversion)逻辑运算执行指令。举例来说,功能单元电路可用于经由数种逻辑运算对操作数执行算术运算,例如加法、减法、乘法及除法。
将指令提供到功能单元电路以供执行可涉及电子系统中的数个组件。指令可例如通过处理资源执行,例如控制器及/或主机处理器。数据(例如,将对其执行指令的操作数)可被存储于功能单元电路可存取的存储器阵列中。指令及数据可从存储器阵列检索且在功能单元电路开始对数据执行指令之前被定序及/或缓冲。此外,因为不同类型的操作可通过功能单元电路在一或多个时钟循环中执行,所以指令及数据的中间结果也可被定序及/或缓冲。
在许多例子中,处理资源(例如,处理器及/或相关联的功能单元电路)可在存储器阵列外部,且数据经由处理资源与存储器阵列之间的总线被存取以执行一组指令。可改进存储器中处理(PIM)装置中的处理性能,其中处理器可在存储器内部及/或附近实施(例如,直接在与存储器阵列相同的芯片上),这可减小处理时间且还可节省电力。各种存储器装置(例如存储器中处理装置)的阵列及/或子阵列之间及之内的数据移动可影响处理时间及/或电力消耗。
发明内容
本申请实施例涉及一种用于存储器对准的方法。所述方法包括从主机(210)接收包含多个基于字节的存储器元件(130、132、134)的存储器分配(136)的基于字节的存储器元件(130、132、134)的数据的逻辑地址;将所述逻辑地址转译为所述数据的物理地址;以及经由感测电路(270)对所述物理地址处的所述数据执行逻辑运算。所述方法基于以下将所述逻辑地址转译为所述数据的物理地址:所述多个基于字节的存储器元件(130、132、134)中的每一者的数据位(120、122、124)数量;所述多个基于字节的存储器元件(130、132、134)中的每一者的填充位(121、123、125)数量;及从所述存储器分配(136)的起点到所述逻辑地址的基于字节的存储器元件(130、132、134)数量。
本申请实施例涉及一种设备。所述设备包括存储器单元阵列(271),其经配置以存储存储器分配(136)的多个基于字节的存储器元件(130、132、134);控制器(240),其耦合到所述存储器单元阵列(271);以及感测电路(270),其耦合到所述存储器单元阵列(271),且所述感测电路(270)经配置以对所述物理地址处的所述数据执行逻辑运算。所述控制器(240)经配置以使得基于以下将所述存储器分配(136)的基于字节的存储器元件(130、132、134)的数据的逻辑地址转译为所述数据的物理地址:所述多个基于字节的存储器元件(130、132、134)中的每一者的数据位(120、122、124)数量;所述多个基于字节的存储器元件(130、132、134)中的每一者的填充位(121、123、125)数量;及从所述存储器分配(136)的起点到所述逻辑地址的基于字节的存储器元件(130、132、134)数量。
本申请实施例涉及一种系统。所述系统包括主机(210);以及存储器装置(278),其耦合到所述主机(210)。所述存储器装置(278)经配置以从所述主机(210)接收存储在存储器装置(278)上的所述存储器分配(136)的基于字节的存储器元件(130、132、134)的数据的逻辑地址;以及确定所述数据的物理地址。所述确定基于以下内容:所述基于字节的存储器元件(130、132、134)的数据位(120、122、124)数量;所述基于字节的存储器元件(130、132、134)的填充位(121、123、125)数量;及从所述存储器分配(136)的起点到所述逻辑地址的基于字节的存储器元件(130、132、134)数量。
附图说明
图1A到1C是说明根据本发明的数个实施例的将具有基于字节的对准的存储器分配重新对准到具有非基于字节的对准的存储器分配的过程的示意图。
图2是根据本发明的数个实施例的呈包含存储器装置的计算系统形式的设备的框图。
图3是说明根据本发明的数个实施例的具有可选择逻辑运算选择逻辑的感测电路的示意图。
图4展示根据本发明的数个实施例的可与数据左移位相关联的信令。
具体实施方式
数个实施例包含一种用于对准基于字节的存储器元件使得在对数据值执行逻辑运算之前对应于数据值的数据位在逻辑上邻近的方法。
在对准存储器的一些方法中,架构及操作系统(OS)可在指令集架构(ISA)及应用程序二进制接口(ABI)中导出基于字节的寻址构造。如果存储器元件被定义为具有对应于数据值的数据位数量,其中存储器元件的位长度不等于字节的整数数量,那么OS可通过将位添加到存储器元件补齐存储器元件,使得位长度等于字节的整数数目。因此,存储器请求可基于基于字节的对准进行。然而,在富有表现力的存储器装置中,例如PIM装置,在非基于字节的对准中操作数据可能是有用的。此非基于字节的对准可改进整体处理性能且减少数据移动要求。另外,非基于字节的对准可允许优化编译器及运行时间系统以生成指令来对准非基于字节的存储器元件的数据位以进行随后算术、逻辑及组合运算。当主机维持存储器元件的基于字节的对准时,此类操作可在存储器内部执行。根据本发明的数个实施例,程序员可使用C或C++兼容编译器可理解的语言扩展来构造用于异构架构的可移植代码。
本文揭示的实施例可包含可利用与一系列算术、移位及/或旋转操作组合的基于字节的对准以使基于字节的存储器元件在其相应位寻址边界上对准的方法。
本发明的数个实施例可提供相较于一些先前方法(例如具有外部处理器(例如,定位在存储器阵列外部的处理资源,例如在单独集成电路芯片上)的先前PIM装置及系统)的与执行数据移动操作相关联的经改进并行性、经增加速度及/或经减小电力消耗。举例来说,数个实施例可提供在移位寄存器上移动数据同时执行计算功能,例如(举例来说)整数加、减、乘、除及CAM(内容可寻址存储器)功能而无需经由总线(例如,数据总线、地址总线、控制总线)将数据传送出存储器阵列及感测电路。此类计算功能可包含执行数个逻辑运算(例如,逻辑功能,例如AND、OR、NOT、NOR、NAND、XOR等)。然而,实施例不限于这些实例。例如,执行逻辑运算可包含执行数个非布尔逻辑运算,例如比较、销毁等。
在本发明的以下详细描述中,参考形成其一部分且其中通过说明展示可如何实践本发明的一或多个实施例的附图。足够详细地描述这些实施例以使所属领域的一般技术人员能够实践本发明的实施例,且应理解,可利用其它实施例且可在不背离本发明的范围的情况下做出过程、电及/或结构变化。如本文使用,“数个”特定事物可指代此类事物中的一或多者(例如,数个存储器阵列可指代一或多个存储器阵列)。“多个”希望指代此类事物中的一者以上。
本文的图遵循编号惯例,其中第一数字或前几个数字对应于图号且剩余数字识别图式中的元件或组件。如应了解,本文各种实施例中展示的元件可经添加、交换及/或消除以便提供本发明的数个额外实施例。另外,如应了解,图中提供的元件的比例及相对尺度希望说明本发明的某些实施例,且不应以限制意义来理解。
术语“对准操作”是指能够在存储器分配内移动位的操作。对准操作的实例包含移位操作及旋转操作。根据本发明,可对存储于存储器单元阵列中的位执行旋转操作,使得位在旋转操作期间保持在芯片上。
基于字节的存储器元件的旋转操作可将至少最高有效位(MSB)或至少最低有效位(LSB)从基于字节的存储器元件的一个端移动到另一端,就好像基于字节的存储器元件的所述端是耦合在一起一样。旋转操作也可将基于字节的存储器元件的其它位挪开,使得至少所述MSB或LSB可被移动到另一端。因此,旋转操作包含“其它位”的移位操作且包含至少所述MSB或LSB的复制操作、移位操作及反向复制操作,如下文更详细描述。旋转操作可依据旋转操作的定向描述(例如,左旋转操作或右旋转操作)。举例来说,左旋转操作可包含将逻辑定位在基于字节的存储器元件的左端(例如,MSB或LSB)处的位移动到基于字节的存储器元件的右端及将剩余位移位到左端。作为实例,如果是一个字节(例如,八个位)长的基于字节的存储器元件左旋转两个位,那么基于字节的存储器元件的最左两个位变为基于字节的存储器元件的最右两个位。剩余六个位左移位两个位,使得基于字节的存储器元件占据相同的逻辑空间。相比之下,右旋转操作可包含将逻辑定位在基于字节的存储器元件的右端处的位(例如,MSB或LSB)移动到基于字节的存储器元件的左端及将剩余位移位到右端。
对一个字节长的基于字节的存储器元件执行向左移位两个位的移位操作会导致最左的两个位被在逻辑上邻近其的两个位覆写。移位操作还会导致最右的两个位保持相同或用其它数据覆写。执行旋转操作的一个益处可为:信息不会像在移位操作中那样因为位被移动而丢失且不会被覆写。
图1A到1C是说明根据本发明的数个实施例的将具有基于字节的对准的存储器分配重新对准到具有非基于字节的对准的存储器分配的过程的示意图。图1A说明具有基于字节的对准的存储器分配。图1B说明重新对准存储器分配的过程中的中间步骤。图1C说明具有非基于字节的对准的存储器分配。
图1A包含:基于字节的第一存储器元件130,其包括数据部分120(“第一数据部分120”)及填充部分121(“第一填充部分121”);基于字节的第二存储器元件132,其包括数据部分122(“第二数据部分122”)及填充部分123(“第二填充部分123”);及基于字节的第三存储器元件134,其包括数据部分124(“第三数据部分124”)及填充部分125(“第三填充部分125”)。术语“数据部分”是指一或多个数据位,其是对应于数据值的位。术语“填充部分”是指一或多个填充位,其是插入到存储器元件中以增补存储器元件中的数据位的位,使得存储器元件中的位(数据及填充)总数量等于字节的整数数目。
图1A将基于字节的存储器元件130、132及134展示为被后填充,使得填充部分121、123及125在逻辑上是在其相应数据部分120、122及124的右侧。基于字节的存储器元件130、132及134也可被前填充,与被后填充相反,使得填充部分121、123及125在逻辑上是在其相应数据部分120、122及124的左侧。基于字节的第一存储器元件130、基于字节的第二存储器元件132及基于字节的第三存储器元件134在一起可包括存储器分配136。存储器分配的基于字节的存储器元件,例如基于字节的存储器元件130、132及134可为均质的,使得基于字节的存储器元件中的每一者包括相同数据位数量及相同填充位数量。然而,不同分配的基于字节的存储器元件可具有不同数据位及/或填充位数量。
图1B展示重新对准存储器分配136的过程中的中间步骤。在对第一填充部分121及第一数据部分122进行左旋转操作之后,在逻辑上邻近第二数据部分122的数据位的第一填充部分121的填充位现在在逻辑上邻近第二填充部分123的填充位。第二数据部分122已左移位,使得第二数据部分122的数据位现在在逻辑上邻近第一数据部分120的数据位。第二数据部分122已右移位等于第一填充部分121的位数量的位数量。如本文使用,“在逻辑上邻近”是指一位相对于另一位的概念位置,使得两个位被并排定位。在物理上,在逻辑上邻近的两个位被存储于阵列中在物理上邻近彼此的两个存储器单元中。
图1C说明具有非基于字节的对准的存储器分配136。在对第一填充部分121、第二填充部分123及第三数据部分124进行左旋转操作之后,在逻辑上邻近第三数据部分124的数据位的第二填充部分123的填充位现在在逻辑上邻近第三填充部分125的填充位。在逻辑上邻近的第一填充部分121及第二填充部分123的填充位保持在逻辑上邻近。第三数据部分124已左移位等于第一填充部分121的位数量与第二填充部分123的位数量的和的不同位数量。因此,第三数据部分124的数据位现在在逻辑上邻近第二数据部分122的数据位。
尽管在图1A到1C中展示三个基于字节的存储器元件,但存储器分配136可包括任何数目个基于字节的存储器元件。举例来说,基于字节的存储器元件的数目可为用户定义的存储器分配136的长度。在一些实施例中,存储器分配中的基于字节的存储器元件的数目可由在存储器装置内被同时操作的数据位数目定义。举例来说,如果每一基于字节的存储器元件包含30个数据位,且存储器装置一次操作150个位,那么存储器分配可包含五个基于字节的存储器元件。在包括三个以上基于字节的存储器元件的存储器分配136中,可在一系列旋转操作中执行额外旋转操作直到存储器分配136的全部数据位都在逻辑上邻近彼此且存储器分配136的全部填充位都在逻辑上邻近彼此。
非基于字节的对准在PIM装置上可为有用的,这是因为PIM装置可经配置以对并非是字节的整数数目的一定量的数据执行逻辑运算。如果数据被存储于物理邻近的存储器单元中,PIM装置就可更有效地操作数据(例如,无需必须处理分离数据位的填充位)。因此,可仅对基于字节的存储器元件的数据位执行逻辑运算。因此,根据本发明的数个实施例,在逻辑运算之前,可执行将具有基于字节的对准的存储器分配重新对准到具有非基于字节的对准的存储器分配的过程。在逻辑运算之后,可执行将具有非基于字节的对准的存储器分配重新对准到具有基于字节的对准的存储器分配的过程(例如,关于图1A到1C的上述过程可反转)。即,存储器分配可返回到基于字节的对准,尽管数据位的值可能已根据逻辑运算改变。
为了最小化用于将存储器分配(或其部分)从基于字节的对准重新对准到具有非基于字节的对准的存储器分配(或其部分)的旋转操作数量,可响应于存储器元件被后填充,使用一系列左旋转操作,或可响应于存储器元件被前填充,使用一系列右旋转操作。旋转操作方向与存储器分配的前或后填充之间的对应性允许执行少一个旋转操作(与替代方案相比),这是因为最后一存储器元件的填充部分已经在存储器分配的末端。举例来说,在图1A到1C中,未操作第三填充部分125,这是因为第三填充部分125已经在存储器分配136的末端。
可用数学方法表达根据本发明的数个实施例的用于存储器元件对准的方法。对于给定存储器分配,每一数据部分可包含相同数据位数量(b),其不等于字节的整数数量。填充位可被添加到数据位,使得基于字节的存储器元件中的位的总数量(B)等于字节的整数数量。位的总数量(B)因此包含数据位及填充位。添加到非基于字节的存储器元件的填充位的数量可能是最不需要的,使得B是字节的整数数目。举例来说,如果b是三十个位,那么可添加两个填充位,使得B是三十二个位。经受对准操作的存储器元件被循序地编号,从零开始,其中N表示指派到存储器元件的数目。
参考回图1A到1C,假设数据部分120、122及124各自表示三十个数据位(b=30)且填充部分121、123及125各自表示两个填充位(B=32)。还假设基于字节的存储器元件130、132及134被循序地编号,以基于字节的存储器元件130开始(N130=0;N132=1;N134=2)。作为旋转操作的部分,为实现非基于字节的对准,对应存储器元件(N)的数据部分应移位的位数量可表达为QN,其中:
QN=(B-b)×N (1)
参考图1A,对于基于字节的第一存储器元件130的第一数据部分对于基于字节的第二存储器元件132的第二数据部分/>且对于基于字节的第三存储器元件134的第三数据部分/>为了实现图1B中说明的存储器元件对准,第二数据部分122可左移位两个位作为第一左旋转操作的部分。为了实现图1C中说明的存储器元件对准,第三数据部分124可左移位四个位作为第二左旋转操作的部分。尽管图1A到1C说明包含三个基于字节的存储器元件的实例,但实施例不限于此,因为表达式(1)可用于任何数目个基于字节的存储器元件。
根据本发明的数个实施例的用于存储器对准的方法可包含:从主机(其可类同于图2中说明的主机210)接收包含多个基于字节的存储器元件的存储器分配的基于字节的存储器元件的数据的逻辑地址;将所述逻辑地址转译成物理地址;及经由感测电路(其可类同于图2中说明的感测电路270)对所述物理地址处的数据执行逻辑运算。如本文使用,“逻辑地址”是指基于字节的地址,而“物理地址”是指对应于特定存储器单元的基于位的地址。所述逻辑地址可基于多个基于字节的存储器元件中的每一者的数据位的数量、所述多个基于字节的存储器元件中的每一者的填充位的数量及从所述存储器分配的起点到逻辑地址的基于字节的存储器元件的数量经转译成物理地址。
转译所述逻辑地址可包含以等于所述填充位的数量乘以从所述存储器分配的所述起点到所述逻辑地址的所述基于字节的存储器元件的数量的值调整所述逻辑地址。在执行逻辑运算之后,可用填充位数量填充数据且经填充数据可被发送到主机。可在运行时间定义存储器分配。定义所述存储器分配可包含在所述存储器分配的所述基于字节的存储器元件中的每一者中接收用户定义的数据位数量。定义所述存储器分配可包含接收用户定义的存储器分配的长度。
图2是根据本发明的数个实施例的呈包含存储器装置278的计算系统200形式的设备的框图。如本文使用,也可单独地将存储器装置278、存储器阵列271及/或感测电路270视作一“设备”。
计算系统200包含主机210,其耦合(例如,连接)到包含存储器阵列271的存储器装置278。主机210可为主机系统,例如个人膝上型计算机、桌上型计算机、数码相机、智能电话或存储器读卡器以及各种其它类型的主机。主机210可包含系统母板及/或背板且可包含数个处理资源(例如,一或多个处理器、微处理器或某种其它类型的控制电路)。系统200可包含单独的集成电路或主机210及存储器装置278两者都可在同一集成电路上。系统200可为例如服务器系统及/或高性能计算(HPC)系统及/或其一部分。尽管图2中展示的实例说明具有冯·诺依曼(Von Neumann)架构的系统,但本发明的实施例可实施于非冯·诺依曼架构(例如,图灵(Turing)机)中,其可能不包含通常与冯·诺依曼架构相关联的一或多个组件(例如,CPU、ALU等)。
为了清楚起见,系统200已经简化以集中于与本发明特定相关的特征。存储器阵列271可为混合存储器立方体(HMC)、计算存储器,例如存储器中处理随机存取存储器(PIMRAM)阵列,其可包含(例如)DRAM阵列、SRAM阵列、STT RAM阵列、PCRAM阵列、TRAM阵列、RRAM阵列、NAND快闪存储器阵列及/或NOR快闪存储器阵列的一或多者。存储器阵列271可包括布置于通过存取线耦合的行及通过感测线耦合的列中的存储器单元,所述存取线在本文可称为字线或选择线,所述感测线在本文可称为数据线或数字线。尽管在图2中展示单个存储器阵列271,但实施例不限于此。例如,存储器装置278可包含数个存储器阵列271(例如,DRAM单元、NAND快闪存储器单元等的数个库)。
存储器装置278可包含地址电路242以锁存通过输入/输出“I/O”电路244(例如,经由局部I/O线及全局I/O线被提供到外部ALU电路及DRAM DQ)经由I/O总线275(例如,数据总线及/或地址总线)提供的地址信号。可由行解码器246及列解码器272接收及解码地址信号以存取存储器阵列271。可使用感测电路270通过感测感测线上的电压及/或电流变化从存储器阵列271读取数据。感测电路270可读取及锁存来自存储器阵列271的一页(例如,行)数据。I/O电路244可用于经由I/O总线275与主机210进行双向数据通信。写入电路248可用于将数据写入到存储器装置278。控制器240解码由控制总线274从主机210提供的信号。这些信号可包含芯片启用信号、写入启用信号及地址锁存信号,其用于控制对存储器阵列271执行的操作,包含数据读取、数据写入及数据擦除操作。在各种实施例中,控制器240负责执行来自主机210的指令及定序对存储器阵列271的存取。控制器240可为状态机(例如,呈专用集成电路(ASIC)形式的硬件及/或固件)、定序器或某种其它类型的控制器。控制器240可通过控制起始时钟信号的位置及/或时间来控制例如时钟信号生成。举例来说,如本文更详细描述,控制器240可与移位寄存器通信,所述移位寄存器可包括数个感测放大器及/或计算组件以提供时钟信号来移位数据。
感测电路270可与存储器阵列271的感测线有间距地形成。举例来说,存储器阵列单元可具有特定单元大小(例如,4F2或6F2,其中“F”是对应于所述单元的特征大小)。在数个实施例中,对应于感测电路270的感测组件(例如,相应感测放大器与计算组件对)形成与阵列的感测线有相同的间距地形成且可经操作以执行各种计算功能。例如,如果感测线间距是3F,感测组件的晶体管就可安装在相同3F间距内。相比之下,与各种PIM系统的ALU电路相关联的装置(例如,逻辑门)可能不能与感测线有间距地形成,例如,与本发明的数个实施例相比,这可增加芯片大小及/或存储器密度。
因而,在数个实施例中,无需存储器阵列271及感测电路270外部的电路来执行计算功能,这是因为感测电路270可执行适当的逻辑运算以执行此类计算功能而无需使用外部处理资源。在数个实施例中,感测电路270可经操作为数个1位处理资源,其中耦合到存储器阵列271的相应列的感测组件用作相应1位处理元件。因此,感测电路270可用于至少在某一程度上互补及/或取代外部处理资源,例如主机210的ALU电路。
根据本发明的实施例可包括经由包括存储器单元阵列、耦合到所述阵列的感测电路及控制器的设备执行关于图1A到1C描述的将具有基于字节的对准的存储器分配重新对准到具有非基于字节的对准的存储器分配的过程,所述存储器单元阵列可类同于图2中所说明的存储器阵列271,所述感测电路可类同于图2中所说明的感测电路270,所述控制器可类同于图2中所说明的控制器240。控制器240可耦合到存储器阵列271。控制器240可经配置以操作感测电路270以移动存储于阵列中的基于字节的第一存储器元件的填充位及移动存储于阵列中的基于字节的第二存储器元件的数据位。因此,所述基于字节的第一存储器元件的数据位及所述基于字节的第二存储器元件的所述数据位中的一者可被存储于存储器阵列271中在物理上邻近的存储器单元中。控制器240可进一步经配置以操作感测电路270移动基于字节的存储器元件的填充位及基于字节的第二存储器元件的填充位及移动基于字节的第三存储器元件的数据位。因此,所述基于字节的第二存储器元件的不同数据位及所述基于字节的第三存储器元件的所述数据位的一者可被存储于存储器阵列271中在物理上邻近的存储器单元中。控制器240可经配置以操作感测电路270以在执行逻辑运算之后移动填充位及移动数据位,使得数据位中的一者与字节边界对准。
感测电路270可包含与存储器阵列271的一对互补感测线有间距的计算组件。控制器240可经配置以操作计算组件对存储于存储器阵列271中在物理上邻近的存储器单元中的数据位执行逻辑运算。
控制器可导致在无需由主机210进行任何额外动作的情况下执行重新对准存储器分配的过程。从主机210的角度,不会改变基于字节的存储器元件的对准。控制器240可导致在没有来自OS的输入及/或无需OS意识到存储器内部发生的对准操作的情况下执行对准操作。根据本发明,控制器240响应于对存储于多个基于字节的存储器元件中的数据执行逻辑运算的指令,可导致在存储器阵列271中的多个基于字节的存储器元件上执行对准操作,使得多个基于字节的存储器元件的数据位被存储于在物理上邻近的存储器单元中。控制器240可导致在对准操作之后对存储于存储器阵列271中的数据位执行逻辑运算。控制器240可导致在存储器阵列271中执行重新对准操作以在于存储器阵列271中执行逻辑运算之后将数据位返回到基于字节的对准。
存储器装置278可为PIM装置。感测电路270还可包括计算组件,其可类同于下文关于图3所描述的计算组件331。下文进一步描述实例感测电路270。例如,在数个实施例中,感测电路270可包括数个感测放大器及数个计算组件,其可用作且可在本文中称为累加器,且可用于执行逻辑运算(例如,对与互补数字线相关联的数据执行逻辑运算)。在至少一个实施例中,对应于计算组件的存储位置(例如,锁存器)可包括移位寄存器的至少一部分。
在数个实施例中,感测电路270可用于使用存储于存储器阵列271中的数据作为输入执行逻辑运算及将逻辑运算的结果存储回到存储器阵列271而无需经由感测线地址存取传送数据(例如,无需触发列解码信号)。因而,各种计算功能可使用感测电路270执行且在感测电路270内执行而非由感测电路外部的处理资源执行(例如,由与主机210相关联的处理器及/或定位在存储器装置278上(例如,控制器240上或其它地方)的其它处理电路,例如ALU电路)(或与其相关联地)执行。
在各种先前方法中,与操作数相关联的数据(例如)可经由感测电路从存储器读取且经由I/O线(例如,经由局部I/O线及/或全局I/O线)被提供到外部ALU电路。外部ALU电路可包含数个寄存器且可使用操作数执行计算功能,且结果可经由I/O线被传送回到阵列。相比之下,在本发明的数个实施例中,感测电路270经配置以对存储于存储器阵列271中的数据执行逻辑运算及将结果存储回到存储器阵列271而无需启用耦合到感测电路270的I/O线(例如,局部I/O线)。感测电路270可与存储器阵列271的一对互补感测线有间距地形成。
因而,在数个实施例中,不需要存储器阵列271及感测电路270外部的电路来执行计算功能,这是因为感测电路270可执行适当的逻辑运算以执行此类计算功能而无需使用外部处理资源。因此,感测电路270可用于至少在某一程度上补充及/或取代此外部处理资源(或此外部处理资源的至少带宽消耗)。
然而,在数个实施例中,感测电路270可用于执行除了由外部处理资源(例如主机210)执行的逻辑运算外的逻辑运算(例如,执行指令)。例如,主机210及/或感测电路270可限于执行仅某些逻辑运算及/或某一数目个逻辑运算。
启用I/O线可包含启用(例如,接通)晶体管,其具有耦合到解码信号(例如,列解码信号)的栅极及耦合到I/O线的源极/漏极。然而,实施例不限于不启用I/O线。例如,在数个实施例中,感测电路270可用于执行逻辑运算而无需启用阵列的列解码线;然而,局部I/O线可经启用以便将结果传送到合适的位置而非传送回到存储器阵列271(例如,传送到外部寄存器)。
图3是说明根据本发明的数个实施例的具有可选择逻辑运算选择逻辑的感测电路的示意图。图3展示耦合到相应互补感测线对305-1及305-2的数个感测放大器306及经由通过门307-1及307-2耦合到感测放大器306的对应数目个计算组件331。通过门307-1及307-2的栅极可受逻辑运算选择逻辑信号PASS控制。举例来说,逻辑运算选择逻辑313的输出可耦合到通过门307-1及307-2的栅极。计算组件331可与存储器阵列的一对互补感测线305-1及305-2有间距。
根据图3中说明的实施例,计算组件331可包括经配置以左移位及右移位数据值的可加载移位寄存器的相应级(例如,移位单元)。根据一些实施例,计算组件331可具有双向移位能力。根据本发明的各种实施例,计算组件331可包括经配置以在多个方向(例如右及左)上移位的可加载移位寄存器(例如,其中每一计算组件331用作相应移位级)。根据本发明的各种实施例,计算组件331可包括经配置以在一个方向上移位的可加载移位寄存器的相应级。可加载移位寄存器可耦合到互补感测线对305-1及305-2,其中每一级的节点“ST2”耦合到传递真数据值的感测线(例如,DIGIT(n))且其中每一级的节点“SF2”耦合到传递互补(例例如,假)数据值的感测线(例例如,DIGIT(n)_)。
根据一些实施例且如图3中说明,移位寄存器的每一计算组件331(例如,级)包括一对右移位晶体管381及386、一对左移位寄存器389及390及一对反相器387及388。信号“PHASE 1R”、“PHASE 2R”、“PHASE 1L”及“PHASE 2L”可施加到相应控制线382、383、391及392以与根据本文描述的实施例执行逻辑运算及/或移位数据相关联地启用/停用对应计算组件331的锁存器上的反馈。下文关于图4进一步描述移位数据(例如,从特定计算组件331到邻近计算组件331)的实例。
存储器单元可耦合到互补感测线对305-1及305-2中的每一者。计算组件331可经配置以在已如关于图1A到1C描述那样执行对准操作之后对存储于耦合到互补感测线对305-1及305-2的存储器单元中的数据值执行逻辑运算。
可加载移位寄存器的计算组件331包括:第一右移位晶体管381,其具有耦合到第一右移位信号控制线“PHASE 1R”382的栅极;及第二右移位晶体管386,其具有耦合到第二右移位信号控制线“PHASE 2R”383的栅极。可加载移位寄存器中的每一级的节点“ST2”耦合到第一反相器387的输入。节点“S F1”处的第一反相器387的输出耦合到第二右移位晶体管386的一个源极/漏极,且第二右移位晶体管386的另一源极/漏极耦合到节点“SF2”处的第二反相器388的输入。节点“ST1”处的第二反相器388的输出耦合到第一右移位晶体管381的一个源极/漏极,且第一右移位晶体管381的另一源极/漏极耦合到邻近计算组件331的在节点“ST2”处的第一反相器的输入。
感测放大器306可耦合到相应互补感测线对305-1及305-2,且对应计算组件331经由相应通过门307-1及307-2耦合到感测放大器306。通过门307-1及307-2的栅极可受可从逻辑运算选择逻辑(为清楚起见未展示)输出的相应逻辑运算选择逻辑信号“Passd”及“Passdb”控制。
第一左移位晶体管389耦合于一个可加载移位寄存器的节点“SF2”与对应于邻近计算组件331的可加载移位寄存器的节点“SF1”之间。第二左移位晶体管390的通道从节点“ST2”耦合到节点“ST1”。第一左移位晶体管389的栅极耦合到第一左移位信号控制线“PHASE 1L”391,且第二左移位晶体管390的栅极耦合到第二左移位信号控制线“PHASE 2L”392。
逻辑运算选择逻辑313包含交换门342以及控制通过门307-1及307-2及交换门342的逻辑。逻辑运算选择逻辑313包含四个逻辑选择晶体管:逻辑选择晶体管362,其耦合于交换晶体管342的栅极与“TF”信号控制线之间;逻辑选择晶体管352,其耦合于通过门307-1及307-2的栅极与“TT”信号控制线之间;逻辑选择晶体管354,其耦合于通过门307-1及307-2的栅极与“FT”信号控制线之间;及逻辑选择晶体管364,其耦合于交换晶体管342的栅极与“FF”信号控制线之间。逻辑选择晶体管362及352的栅极通过隔离晶体管350-1(具有耦合到“ISO”信号控制线的栅极)耦合到真感测线。逻辑选择晶体管364及354的栅极通过隔离晶体管350-2(也具有耦合到“ISO”信号控制线的栅极)耦合到互补感测线。图4说明与使用图3中展示的感测电路执行移位操作相关联的时序图。
相应互补感测线对305-1及305-2上的数据值可通过导致通过门307-1及307-2导通(例如通过导致“Passd”(未展示)控制信号转高)被加载到对应计算组件331(例如,可加载移位寄存器)中。经控制以具有连续性(例如,具有通过通道的电连续性)的栅极是导通的,且在本文可称为OPEN。经控制以不具有连续性的栅极被认为是不导通的,且在本文可称为CLOSED。例如,连续是指其中栅极是导通的低电阻状况。数据值可通过感测放大器306使对应计算组件331超功率(例如,覆写计算组件331中的现存数据值)及/或通过停用信号控制线“PHASE 1R”382及“PHASE 2R”383被加载到相应计算组件331。第一锁存器(例如,感测放大器)可经配置以在由第一锁存器提供且提供到第二锁存器的电流足以翻转第二锁存器时使第二锁存器(例如,计算组件)超功率。
感测放大器306可经配置以通过将互补感测线对305-1及305-2上的电压驱动到对应于数据值的最大电力供应电压(例如,将互补感测线对305-1及305-2驱动到轨)使计算组件331超功率,这可改变存储于计算组件331中的数据值。根据数个实施例,计算组件331可经配置以将数据值传递到互补感测线对305-1及305-2而无需将互补感测线对305-1及305-2的电压驱动到轨。因而,计算组件331可经配置以不使感测放大器306超功率。举例来说,来自计算组件331的互补感测线对305-1及305-2上的数据值将直到感测放大器被启用才会改变存储于感测放大器306中的数据值。
一旦数据值被加载到可加载移位寄存器的计算组件331中,真数据值通过第一反相器387与互补数据值分离。数据值可通过第一右移位晶体管381及第二右移位晶体管386的交替操作被右移位(例如,右移位到邻近计算组件331),这可在第一右移位信号控制线“PHASE 1R”382及第二右移位信号控制线“PHASE 2R”383具有彼此异相(例如,非重叠交替的方波彼此异相1 80度)转高的周期性信号时实现。数据值可被锁存到可加载移位寄存器的对应计算组件331中,同时信号“PHASE 1R”保持为低且“PHASE 2R”保持为高以维持锁存于计算组件331中的数据值。
可对位群组执行旋转操作,例如基于字节的第一存储器元件的填充位及基于字节的第二存储器元件的数据位。基于字节的第一及第二存储器元件的位可被存储于耦合到存储器阵列的相同存取线(ROW X)的存储器单元中。举例来说,基于字节的每一存储器元件可被后填充且包括一填充位及七个数据位。填充位可类同于图1中说明的基于字节的第一存储器元件130的第一填充部分121。七个数据位可类同于图1中说明的基于字节的第二存储器元件132的第二数据部分122。
旋转操作可包含将填充位从ROW X中的第一存储器单元复制到耦合到不同存取线(ROW Y)但耦合到与第一存储器单元相同的感测线(相同列中)的第二存储器单元。可如下那样将填充位从第一存储器单元复制到第二存储器单元。信号可被施加到对应于ROW X的存取线以存取(例如,选择)第一存储器单元。接着,感测放大器306被启用,这响应于存储于第一存储器单元中的填充值将互补感测线305-1及305-2驱动到适当的轨电压(例如,VDD及GND)。接着,填充值被锁存于感测放大器306中。在填充位被锁存于感测放大器306中之后,其可通过启用感测放大器306及将信号施加到对应于ROWY的存取线被传送到第二存储器单元。如上文描述,旋转操作可包含填充位的复制操作、移位操作及反向复制操作。将填充位从第一存储器单元复制到第二存储器单元包括旋转操作的第一复制操作。
在将填充位从第一存储器单元复制到第二存储器单元之后,填充位可右移位七次(对应于七个数据位)且被存储回到耦合到与耦合到第一及第二存储器单元的感测线不同的感测线的第三存储器单元中的ROW Y中。下文描述用于执行数个右移位的信令。而且,在将填充位从第一存储器单元复制到第二存储器单元之后,七个数据位可在ROW X内左移位一次(对应于一个填充位)。下文描述用于执行数个左移位的信令。在移位七个数据位之后,填充位可从ROW Y中的第三存储器单元被复制到耦合到与第三存储器单元相同(在相同列中)的感测线的ROW X中的第四存储器单元。将填充位从第三存储器单元复制到第四存储器单元包括上文描述的旋转操作的反向复制操作。
图4展示根据本发明的数个实施例的可与位的左移位相关联的信令。举例来说,所述信令可与位从计算组件331到邻近计算组件331的第一左移位相关联,如图3中说明。图4包含对应于可施加到图3中展示的对应信号控制线“PHASE 1R”382、“PHASE 2R”383、“PHASE1L”391及“PHASE 2L”392的信号的波形。
图4中展示的实例说明两个左移位使得存储于对应于列“n”的计算组件331中的值(例如,数据位或填充位)被左移位到对应于列“n-1”的计算组件331。在时间T0处,启用信号控制线“PHASE 2R”383及“PHASE 2L”392”。在时间T0处启用信号控制线“PHASE 2R”383及“PHASE 2L”392启用计算组件331的锁存器上的反馈,使得计算组件331中的值被锁存于其中。如展示,在时间T1处,信号控制线“PHASE 2R”383及“PHASE 2L”392被停用,这停用计算组件331的锁存器上的反馈,如上文描述。接着,在时间T2处启用信号控制线“PHASE 1L”391且在时间T3处停用信号控制线“PHASE 1L”391。启用信号控制线“PHASE 1L”391导致第一左移位晶体管389导通,这导致来自节点“SF1”的值向左移动到节点“SF2”。接着,在时间T4处启用信号控制线“PHASE 2L”392且在时间T5处停用信号控制线“PHASE2L”392。启用信号控制线“PHASE 2L”392导致第二左移位晶体管390导通,这导致节点“ST2”处的值向左移动到节点“ST1”,借此完成从对应于列“n”的计算组件331到对应于列“n-1”的计算组件331的左移位。
上述序列(例如,启用/停用信号控制线“PHASE 1L”391且随后启用/停用信号控制线“PHASE 2L”392)可经重复以实现所要数目个左移位。例如,在此实例中,第二左移位通过在时间T6处启用信号控制线“PHASE 1L”391且在时间T7处停用信号控制线“PHASE 1L”391来执行。随后,在时间T8处启用信号控制线“PHASE 2L”392以完成第二左移位。在第二左移位之后,信号控制线“PHASE 2L”392保持被启用且信号控制线“PHASE 2R”383在时间T9处被启用,使得反馈被启用以将值锁存于计算组件331锁存器中。
尽管图4中未展示,但可执行数个右移位。为了执行第一右移位,在时间T2处启用信号控制线“PHASE 1R”382且在时间T3处停用信号控制线“PHASE 1R”382。启用信号控制线“PHASE 1R”382导致第一右移位晶体管381导通,这导致节点“SF1”处的值向右移动到右邻近计算组件331的节点“ST2”。接着,在时间T4处启用信号控制线“PHASE 2R”382且在时间T5处停用信号控制线“PHASE 2R”382。启用信号控制线“PHASE 2R”383导致第二右移位晶体管386导通,这导致来自节点“SF1”的值向右移动到右节点“SF2”,从而完成右移位。
上述序列(例如,启用/停用信号控制线“PHASE 1R”382且随后启用/停用信号控制线“PHASE 2R”383)可经重复以实现所要数目个右移位。例如,在此实例中,第二右移位通过在时间T6处启用信号控制线“PHASE 1R”382且在时间T7处停用信号控制线“PHASE 1R”382来执行。随后,在时间T8处启用信号控制线“PHASE 2R”383以完成第二右移位。在第二右移位之后,信号控制线“PHASE 1R”382保持被停用,信号控制线“PHASE 2R”383保持被启用,且信号控制线“PHASE 2L”383(例如,在时间T9处)被启用,使得反馈被启用以将值锁存于计算组件331锁存器中。
尽管本文已说明及描述特定实施例,所属领域的一般技术人员应了解,实现相同结果计算的布置可代替展示的特定实施例。本发明希望涵盖本发明的一或多个实施例的调试或变化。应理解,以说明性方式且非限制性方式进行上文描述。所属领域的技术人员在审阅上文描述之后应明白上文实施例的组合及本文未明确描述的其它实施例。本发明的一或多个实施例的范围包含其中使用上文结构及方法的其它应用。因此,应参考所附权利要求书以及此类权利要求有权获得的等效物完整范围确定本发明的一或多个实施例的范围。
在前述具体实施方式中,出于简化本发明的目的,一些特征被一起分组在单个实施例中。本发明的此方法不应被解译为反映本发明的所揭示实施例必须使用比每一权利要求中明确所述的更多的特征的意图。而是,如所附权利要求书反映,本发明标的物在于少于所揭示单个实施例的所有特征。因此,所附权利要求书特此并入到具体实施方式中,其中每一权利要求书自身独立作为单独实施例。
Claims (20)
1.一种用于存储器对准的方法,其包括:
从主机(210)接收包含多个基于字节的存储器元件(130、132、134)的存储器分配(136)的基于字节的存储器元件(130、132、134)的数据的逻辑地址;
基于以下将所述逻辑地址转译为所述数据的物理地址:
所述多个基于字节的存储器元件(130、132、134)中的每一者的数据位(120、122、124)数量;
所述多个基于字节的存储器元件(130、132、134)中的每一者的填充位(121、123、125)数量;及
从所述存储器分配(136)的起点到所述逻辑地址的基于字节的存储器元件(130、132、134)数量;及
经由感测电路(270)对所述物理地址处的所述数据执行逻辑运算。
2.根据权利要求1所述的方法,其中将所述逻辑地址转译为所述物理地址包括以等于所述填充位(121、123、125)数量乘以从所述存储器分配(136)的所述起点到所述逻辑地址的所述基于字节的存储器元件(130、132、134)数量的值调整所述逻辑地址。
3.根据权利要求1到2中任一权利要求所述的方法,其中所述方法进一步包括:
在执行所述逻辑运算之后用所述填充位(121、123、125)数量填充所述数据;及
将所述经填充数据发送到所述主机(210)。
4.根据权利要求1到2中任一权利要求所述的方法,其进一步包括在编译时定义所述存储器分配(136),
其中定义所述存储器分配(136)包含接收在所述存储器分配(136)的所述基于字节的存储器元件(130、132、134)中的每一者中的用户定义的数据位(120、122、124)数量。
5.根据权利要求4所述的方法,其中定义所述存储器分配(136)进一步包含接收用户定义的所述存储器分配(136)的长度。
6.根据权利要求1所述的方法,其进一步包括根据非基于字节的对准方式将逻辑上邻近的位存储在存储器单元阵列的物理上邻近的存储器单元(271)中,其中所述基于字节的存储器元件(130、132、134)是所述存储器分配(136)的基于字节的第一存储器元件(130)并且所述非基于字节的对准包括:
所述基于字节的第一存储器元件(130)的至少一个填充位(121)在逻辑上邻近于所述存储器分配(136)的基于字节的第二存储器元件(132)的至少一个填充位(123);以及
所述基于字节的第一存储器元件(130)的至少一个数据位(120)在不同于字节边界的所述存储器分配(136)的位置处在逻辑上邻近于所述基于字节的第二存储器元件(132)的至少一个数据位(122)。
7.一种设备,其包括:
存储器单元阵列(271),其经配置以存储存储器分配(136)的多个基于字节的存储器元件(130、132、134);
控制器(240),其耦合到所述存储器单元阵列(271),且所述控制器经配置以使得:
基于以下将所述存储器分配(136)的基于字节的存储器元件(130、132、134)的数据的逻辑地址转译为所述数据的物理地址:
所述多个基于字节的存储器元件(130、132、134)中的每一者的数据位(120、122、124)数量;
所述多个基于字节的存储器元件(130、132、134)中的每一者的填充位(121、123、125)数量;及
从所述存储器分配(136)的起点到所述逻辑地址的基于字节的存储器元件(130、132、134)数量;及
感测电路(270),其耦合到所述存储器单元阵列(271),且所述感测电路(270)经配置以对所述物理地址处的所述数据执行逻辑运算。
8.根据权利要求7所述的设备,其中所述控制器(240)经配置以使得以等于所述填充位(121、123、125)的数量乘以从所述存储器分配(136)的所述起点到所述逻辑地址的所述基于字节的存储器元件(130、132、134)的数量的值调整所述逻辑地址。
9.根据权利要求7所述的设备,其中所述控制器(240)经配置以在执行所述逻辑运算之后,使所述填充位(121、123、125)的数量填充所述数据。
10.根据权利要求7所述的设备,其中所述控制器(240)经配置以在编译时接收所述存储器分配(136)的长度。
11.根据权利要求10所述的设备,其中所述存储器分配(136)的所述长度包含所述存储器分配(136)的所述基于字节的存储器元件(130、132、134)的每一者中的用户定义的数据位(120、122、124)数量。
12.据权利要求7所述的设备,其中所述控制器(240)经配置以在编译时接收用户定义的所述存储器分配(136)的长度。
13.一种系统,其包括:
主机(210);以及
存储器装置(278),其耦合到所述主机(210),所述存储器装置(278)经配置以:
从所述主机(210)接收存储在存储器装置(278)上的所述存储器分配(136)的基于字节的存储器元件(130、132、134)的数据的逻辑地址;以及
基于以下确定所述数据的物理地址:
所述基于字节的存储器元件(130、132、134)的数据位(120、122、124)数量;
所述基于字节的存储器元件(130、132、134)的填充位(121、123、125)数量;及
从所述存储器分配(136)的起点到所述逻辑地址的基于字节的存储器元件(130、132、134)数量。
14.据权利要求13所述的系统,其中所述存储器装置(278)经配置以经由感测电路(270)对经确定的所述物理地址处的所述数据执行逻辑操作。
15.据权利要求14所述的系统,其中所述存储器装置(278)经配置以在执行所述逻辑运算之后,用所述填充位(121、123、125)的数量填充所述数据;以及
其中所述主机(210)经配置以接收经填充的数据。
16.据权利要求1 3所述的系统,其中所述存储器装置(278)经配置以:
根据基于字节的对准来存储所述存储器分配(136)的多个基于字节的存储器元件(130、132、134);以及
根据非基于字节的对准来存储所述存储器分配(136)的所述多个基于字节的存储器元件(130、132、134);
其中所述基于字节的存储器元件(130、132、134)是所述存储器分配(136)的基于字节的第一存储器元件(130),并且
其中在所述非基于字节的对准中,所述存储器分配(136)的所述基于字节的第一存储器元件(130)至少一个数据位(120)和基于字节的第二存储器元件(132)的至少一个数据位(122)在除字节边界之外的所述存储器分配(136)的位置处在逻辑上邻近,并被存储于存储器单元阵列(271)的在物理上邻近的存储器单元中。
17.据权利要求16所述的系统,其中所述存储器装置(278)经配置以对所述基于字节的第一存储器元件和所述基于字节的第二存储器元件(132)执行从所述基于字节的对准到所述非基于字节的对准的对准操作。
18.据权利要求17所述的系统,其中所述存储器装置(278)经配置以对所述基于字节的第一存储器元件(130)的所述至少一个填充位(121)以及所述基于字节的第二存储器元件(132)的所述至少一个数据位(122)执行旋转操作以执行所述对准操作。
19.据权利要求18所述的系统,其中所述存储器装置(278)经配置以将所述基于字节的第二存储器元件(132)的所述至少一个数据位(122)移位与所述基于字节的存储器元件(132)的所述填充位(123)数量相等的位数量以执行所述旋转操作。
20.据权利要求16所述的系统,其中所述存储器装置(278)经配置以在执行所述逻辑运算之后,执行重新对准操作以将基于字节的第一存储器元件(130)和基于字节的第二存储器元件(132)返回到所述基于字节的对准。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/349,492 | 2016-11-11 | ||
US15/349,492 US10423353B2 (en) | 2016-11-11 | 2016-11-11 | Apparatuses and methods for memory alignment |
PCT/US2017/059659 WO2018089246A1 (en) | 2016-11-11 | 2017-11-02 | Apparatuses and methods for memory alignment |
CN201780069592.4A CN109937450B (zh) | 2016-11-11 | 2017-11-02 | 用于存储器对准的设备及方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780069592.4A Division CN109937450B (zh) | 2016-11-11 | 2017-11-02 | 用于存储器对准的设备及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116798468A true CN116798468A (zh) | 2023-09-22 |
Family
ID=62107797
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310841707.4A Pending CN116798468A (zh) | 2016-11-11 | 2017-11-02 | 用于存储器对准的设备及方法 |
CN201780069592.4A Active CN109937450B (zh) | 2016-11-11 | 2017-11-02 | 用于存储器对准的设备及方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780069592.4A Active CN109937450B (zh) | 2016-11-11 | 2017-11-02 | 用于存储器对准的设备及方法 |
Country Status (4)
Country | Link |
---|---|
US (4) | US10423353B2 (zh) |
EP (1) | EP3539130B1 (zh) |
CN (2) | CN116798468A (zh) |
WO (1) | WO2018089246A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10402355B2 (en) * | 2017-02-08 | 2019-09-03 | Texas Instruments Incorporated | Apparatus and mechanism to bypass PCIe address translation by using alternative routing |
US10749674B2 (en) * | 2017-09-29 | 2020-08-18 | Micro Focus Llc | Format preserving encryption utilizing a key version |
US10440341B1 (en) | 2018-06-07 | 2019-10-08 | Micron Technology, Inc. | Image processor formed in an array of memory cells |
US10769071B2 (en) | 2018-10-10 | 2020-09-08 | Micron Technology, Inc. | Coherent memory access |
US11175915B2 (en) | 2018-10-10 | 2021-11-16 | Micron Technology, Inc. | Vector registers implemented in memory |
US10483978B1 (en) | 2018-10-16 | 2019-11-19 | Micron Technology, Inc. | Memory device processing |
US10824434B1 (en) * | 2018-11-29 | 2020-11-03 | Xilinx, Inc. | Dynamically structured single instruction, multiple data (SIMD) instructions |
US11184446B2 (en) | 2018-12-05 | 2021-11-23 | Micron Technology, Inc. | Methods and apparatus for incentivizing participation in fog networks |
US10867655B1 (en) | 2019-07-08 | 2020-12-15 | Micron Technology, Inc. | Methods and apparatus for dynamically adjusting performance of partitioned memory |
US11360768B2 (en) | 2019-08-14 | 2022-06-14 | Micron Technolgy, Inc. | Bit string operations in memory |
US11449577B2 (en) | 2019-11-20 | 2022-09-20 | Micron Technology, Inc. | Methods and apparatus for performing video processing matrix operations within a memory array |
US11853385B2 (en) | 2019-12-05 | 2023-12-26 | Micron Technology, Inc. | Methods and apparatus for performing diversity matrix operations within a memory array |
US11227641B1 (en) | 2020-07-21 | 2022-01-18 | Micron Technology, Inc. | Arithmetic operations in memory |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6076136A (en) * | 1998-06-17 | 2000-06-13 | Lucent Technologies, Inc. | RAM address decoding system and method to support misaligned memory access |
US20010048121A1 (en) * | 2000-06-06 | 2001-12-06 | Nagamasa Mizushima | Semiconductor memory device with block alignment function |
US20080175072A1 (en) * | 2007-01-19 | 2008-07-24 | Robert Norman | Fast data access through page manipulation |
US20110264819A1 (en) * | 2010-04-24 | 2011-10-27 | Sudharshan Srinivasan | Binary data serialization system using machine dependant data alignement |
Family Cites Families (316)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4380046A (en) | 1979-05-21 | 1983-04-12 | Nasa | Massively parallel processor computer |
JPS6032911B2 (ja) | 1979-07-26 | 1985-07-31 | 株式会社東芝 | 半導体記憶装置 |
US4435792A (en) | 1982-06-30 | 1984-03-06 | Sun Microsystems, Inc. | Raster memory manipulation apparatus |
US4727474A (en) | 1983-02-18 | 1988-02-23 | Loral Corporation | Staging memory for massively parallel processor |
EP0214718A3 (en) | 1985-07-22 | 1990-04-04 | Alliant Computer Systems Corporation | Digital computer |
US5201039A (en) | 1987-09-30 | 1993-04-06 | Mitsubishi Denki Kabushiki Kaisha | Multiple address-space data processor with addressable register and context switching |
JPH0831168B2 (ja) | 1987-11-06 | 1996-03-27 | 沖電気工業株式会社 | 窓口用自動取引装置 |
US4843264A (en) | 1987-11-25 | 1989-06-27 | Visic, Inc. | Dynamic sense amplifier for CMOS static RAM |
US5276643A (en) | 1988-08-11 | 1994-01-04 | Siemens Aktiengesellschaft | Integrated semiconductor circuit |
JPH0713858B2 (ja) | 1988-08-30 | 1995-02-15 | 三菱電機株式会社 | 半導体記憶装置 |
US5023838A (en) | 1988-12-02 | 1991-06-11 | Ncr Corporation | Random access memory device with integral logic capability |
US4958378A (en) | 1989-04-26 | 1990-09-18 | Sun Microsystems, Inc. | Method and apparatus for detecting changes in raster data |
US5253308A (en) | 1989-06-21 | 1993-10-12 | Amber Engineering, Inc. | Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing |
US5121354A (en) * | 1990-03-12 | 1992-06-09 | International Business Machines Corp. | Random access memory with access on bit boundaries |
EP0446721B1 (en) | 1990-03-16 | 2000-12-20 | Texas Instruments Incorporated | Distributed processing memory |
US5034636A (en) | 1990-06-04 | 1991-07-23 | Motorola, Inc. | Sense amplifier with an integral logic function |
US5210850A (en) | 1990-06-15 | 1993-05-11 | Compaq Computer Corporation | Memory address space determination using programmable limit registers with single-ended comparators |
JP3361825B2 (ja) | 1990-08-22 | 2003-01-07 | テキサス インスツルメンツ インコーポレイテツド | メモリ・アレイ・アーキテクチャ |
JPH06103599B2 (ja) | 1990-11-16 | 1994-12-14 | 三菱電機株式会社 | 半導体集積回路装置 |
US5325519A (en) | 1991-10-18 | 1994-06-28 | Texas Microsystems, Inc. | Fault tolerant computer with archival rollback capabilities |
FR2685973B1 (fr) | 1992-01-03 | 1994-02-25 | France Telecom | Point memoire pour memoire associative. |
KR950005095Y1 (ko) | 1992-03-18 | 1995-06-22 | 문정환 | 양방향성 그로벌 비트 라인을 갖는 dram |
KR940004434A (ko) | 1992-08-25 | 1994-03-15 | 윌리엄 이. 힐러 | 스마트 다이나믹 랜덤 억세스 메모리 및 그 처리방법 |
KR950004854B1 (ko) | 1992-10-08 | 1995-05-15 | 삼성전자 주식회사 | 반도체 메모리 장치 |
US5485373A (en) | 1993-03-25 | 1996-01-16 | Taligent, Inc. | Language-sensitive text searching system with modified Boyer-Moore process |
US5440482A (en) | 1993-03-25 | 1995-08-08 | Taligent, Inc. | Forward and reverse Boyer-Moore string searching of multilingual text having a defined collation order |
US5754478A (en) | 1993-04-20 | 1998-05-19 | Micron Technology, Inc. | Fast, low power, write scheme for memory circuits using pulsed off isolation device |
US5369622A (en) | 1993-04-20 | 1994-11-29 | Micron Semiconductor, Inc. | Memory with isolated digit lines |
JP2663838B2 (ja) | 1993-07-27 | 1997-10-15 | 日本電気株式会社 | 半導体集積回路装置 |
JP3252306B2 (ja) | 1993-08-10 | 2002-02-04 | 株式会社日立製作所 | 半導体不揮発性記憶装置 |
JP3904244B2 (ja) | 1993-09-17 | 2007-04-11 | 株式会社ルネサステクノロジ | シングル・チップ・データ処理装置 |
JP3251421B2 (ja) | 1994-04-11 | 2002-01-28 | 株式会社日立製作所 | 半導体集積回路 |
US5655113A (en) | 1994-07-05 | 1997-08-05 | Monolithic System Technology, Inc. | Resynchronization circuit for a memory system and method of operating same |
JPH0831168A (ja) | 1994-07-13 | 1996-02-02 | Hitachi Ltd | 半導体記憶装置 |
US5481500A (en) | 1994-07-22 | 1996-01-02 | International Business Machines Corporation | Precharged bit decoder and sense amplifier with integrated latch usable in pipelined memories |
US5615404A (en) | 1994-10-31 | 1997-03-25 | Intel Corporation | System having independently addressable bus interfaces coupled to serially connected multi-ported signal distributors generating and maintaining frame based polling schedule favoring isochronous peripherals |
US5638128A (en) | 1994-11-08 | 1997-06-10 | General Instrument Corporation Of Delaware | Pixel interpolation filters for video decompression processor |
US5724366A (en) | 1995-05-16 | 1998-03-03 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor memory device |
KR0146530B1 (ko) | 1995-05-25 | 1998-09-15 | 김광호 | 단속제어회로를 구비한 반도체 메모리 장치와 제어방법 |
US7301541B2 (en) | 1995-08-16 | 2007-11-27 | Microunity Systems Engineering, Inc. | Programmable processor and method with wide operations |
JP2812262B2 (ja) | 1995-08-31 | 1998-10-22 | 日本電気株式会社 | 連想記憶装置 |
US6385634B1 (en) | 1995-08-31 | 2002-05-07 | Intel Corporation | Method for performing multiply-add operations on packed data |
JP2817836B2 (ja) | 1995-11-30 | 1998-10-30 | 日本電気株式会社 | 半導体メモリ装置 |
JP3356612B2 (ja) | 1996-02-29 | 2002-12-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 高速な輪郭スムージング方法及び装置 |
US6092186A (en) | 1996-05-07 | 2000-07-18 | Lucent Technologies Inc. | Apparatus and method for aborting un-needed instruction fetches in a digital microprocessor device |
US5915084A (en) | 1996-09-30 | 1999-06-22 | Advanced Micro Devices, Inc. | Scannable sense amplifier circuit |
US5991209A (en) | 1997-04-11 | 1999-11-23 | Raytheon Company | Split sense amplifier and staging buffer for wide memory architecture |
JP3592887B2 (ja) | 1997-04-30 | 2004-11-24 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US6510098B1 (en) | 1997-05-28 | 2003-01-21 | Cirrus Logic, Inc. | Method and apparatus for transferring data in a dual port memory |
JPH1115773A (ja) | 1997-06-24 | 1999-01-22 | Matsushita Electron Corp | 半導体集積回路、コンピュータシステム、データ処理装置及びデータ処理方法 |
US5935263A (en) | 1997-07-01 | 1999-08-10 | Micron Technology, Inc. | Method and apparatus for memory array compressed data testing |
US6195734B1 (en) | 1997-07-02 | 2001-02-27 | Micron Technology, Inc. | System for implementing a graphic address remapping table as a virtual register file in system memory |
US6181698B1 (en) | 1997-07-09 | 2001-01-30 | Yoichi Hariguchi | Network routing table using content addressable memory |
US6025221A (en) | 1997-08-22 | 2000-02-15 | Micron Technology, Inc. | Processing methods of forming integrated circuitry memory devices, methods of forming DRAM arrays, and related semiconductor masks |
US5991785A (en) | 1997-11-13 | 1999-11-23 | Lucent Technologies Inc. | Determining an extremum value and its index in an array using a dual-accumulation processor |
US5867429A (en) | 1997-11-19 | 1999-02-02 | Sandisk Corporation | High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates |
US6163862A (en) | 1997-12-01 | 2000-12-19 | International Business Machines Corporation | On-chip test circuit for evaluating an on-chip signal using an external test signal |
JP3488612B2 (ja) | 1997-12-11 | 2004-01-19 | 株式会社東芝 | センス増幅回路 |
US5986942A (en) | 1998-01-20 | 1999-11-16 | Nec Corporation | Semiconductor memory device |
JPH11260057A (ja) | 1998-03-13 | 1999-09-24 | Nec Corp | 半導体記憶装置 |
JPH11265995A (ja) | 1998-03-17 | 1999-09-28 | Mitsubishi Electric Corp | 半導体記憶装置 |
JPH11306751A (ja) | 1998-04-22 | 1999-11-05 | Toshiba Corp | 半導体記憶装置 |
US6005799A (en) | 1998-08-06 | 1999-12-21 | Silicon Aquarius | Methods and circuits for single-memory dynamic cell multivalue data storage |
US6141286A (en) | 1998-08-21 | 2000-10-31 | Micron Technology, Inc. | Embedded DRAM architecture with local data drivers and programmable number of data read and data write lines |
US7409694B2 (en) | 1998-09-09 | 2008-08-05 | Microsoft Corporation | Highly componentized system architecture with loadable virtual memory manager |
JP2000173269A (ja) | 1998-12-08 | 2000-06-23 | Mitsubishi Electric Corp | 半導体記憶装置 |
KR100381968B1 (ko) | 1998-12-30 | 2004-03-24 | 주식회사 하이닉스반도체 | 고속동작용디램 |
US6389507B1 (en) | 1999-01-15 | 2002-05-14 | Gigabus, Inc. | Memory device search system and method |
US5999435A (en) | 1999-01-15 | 1999-12-07 | Fast-Chip, Inc. | Content addressable memory device |
US6134164A (en) | 1999-04-22 | 2000-10-17 | International Business Machines Corp. | Sensing circuit for a memory cell array |
US6741104B2 (en) | 1999-05-26 | 2004-05-25 | Micron Technology, Inc. | DRAM sense amplifier for low voltages |
US6157578A (en) | 1999-07-15 | 2000-12-05 | Stmicroelectronics, Inc. | Method and apparatus for accessing a memory device |
TW440750B (en) | 1999-08-23 | 2001-06-16 | Seiko Epson Corp | Original plate for display panel and method for manufacturing the display panel, indication machine |
US6208544B1 (en) | 1999-09-09 | 2001-03-27 | Harris Corporation | Content addressable memory cell providing simultaneous read and compare capability |
US6820195B1 (en) * | 1999-10-01 | 2004-11-16 | Hitachi, Ltd. | Aligning load/store data with big/little endian determined rotation distance control |
US6578058B1 (en) | 1999-10-06 | 2003-06-10 | Agilent Technologies, Inc. | System and method for comparing values from target systems |
US7124221B1 (en) | 1999-10-19 | 2006-10-17 | Rambus Inc. | Low latency multi-level communication interface |
US6418498B1 (en) | 1999-12-30 | 2002-07-09 | Intel Corporation | Integrated system management memory for system management interrupt handler independent of BIOS and operating system |
JP4627103B2 (ja) | 2000-01-18 | 2011-02-09 | 富士通セミコンダクター株式会社 | 半導体記憶装置及びその制御方法 |
AU2000224587A1 (en) | 2000-02-04 | 2001-08-14 | Hitachi Ltd. | Semiconductor device |
US20010042069A1 (en) | 2000-02-29 | 2001-11-15 | Petrov Peter D. | Method and apparatus for building a memory image |
US7028170B2 (en) | 2000-03-08 | 2006-04-11 | Sun Microsystems, Inc. | Processing architecture having a compare capability |
JP3983969B2 (ja) | 2000-03-08 | 2007-09-26 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US6678678B2 (en) | 2000-03-09 | 2004-01-13 | Braodcom Corporation | Method and apparatus for high speed table search |
JP3822412B2 (ja) | 2000-03-28 | 2006-09-20 | 株式会社東芝 | 半導体記憶装置 |
US6965648B1 (en) | 2000-05-04 | 2005-11-15 | Sun Microsystems, Inc. | Source synchronous link integrity validation |
WO2002005281A2 (en) | 2000-07-07 | 2002-01-17 | Mosaid Technologies Incorporated | A high speed dram architecture with uniform access latency |
US6466499B1 (en) | 2000-07-11 | 2002-10-15 | Micron Technology, Inc. | DRAM sense amplifier having pre-charged transistor body nodes |
WO2002017262A2 (en) | 2000-08-21 | 2002-02-28 | United States Postal Services | Delivery point validation system |
US6301164B1 (en) | 2000-08-25 | 2001-10-09 | Micron Technology, Inc. | Antifuse method to repair columns in a prefetched output memory architecture |
US6704828B1 (en) | 2000-08-31 | 2004-03-09 | Micron Technology, Inc. | System and method for implementing data pre-fetch having reduced data lines and/or higher data rates |
US6948056B1 (en) | 2000-09-28 | 2005-09-20 | Intel Corporation | Maintaining even and odd array pointers to extreme values by searching and comparing multiple elements concurrently where a pointer is adjusted after processing to account for a number of pipeline stages |
US6304477B1 (en) | 2001-01-31 | 2001-10-16 | Motorola, Inc. | Content addressable magnetic random access memory |
US6563754B1 (en) | 2001-02-08 | 2003-05-13 | Integrated Device Technology, Inc. | DRAM circuit with separate refresh memory |
US6650158B2 (en) | 2001-02-21 | 2003-11-18 | Ramtron International Corporation | Ferroelectric non-volatile logic elements |
JP2002298572A (ja) | 2001-03-28 | 2002-10-11 | Toshiba Corp | 半導体記憶装置 |
US7127559B2 (en) * | 2001-07-10 | 2006-10-24 | Micron Technology, Inc. | Caching of dynamic arrays |
US7546438B2 (en) | 2001-07-19 | 2009-06-09 | Chung Shine C | Algorithm mapping, specialized instructions and architecture features for smart memory computing |
US6807614B2 (en) | 2001-07-19 | 2004-10-19 | Shine C. Chung | Method and apparatus for using smart memories in computing |
ITRM20010531A1 (it) | 2001-08-31 | 2003-02-28 | Micron Technology Inc | Dispositivo rilevatore a bassa potenza e alta tensione per memorie ditipo flash. |
US7260672B2 (en) | 2001-09-07 | 2007-08-21 | Intel Corporation | Using data stored in a destructive-read memory |
US7062689B2 (en) | 2001-12-20 | 2006-06-13 | Arm Limited | Method and apparatus for memory self testing |
US20040073773A1 (en) | 2002-02-06 | 2004-04-15 | Victor Demjanenko | Vector processor architecture and methods performed therein |
US6707729B2 (en) | 2002-02-15 | 2004-03-16 | Micron Technology, Inc. | Physically alternating sense amplifier activation |
WO2003088033A1 (en) | 2002-04-09 | 2003-10-23 | University Of Rochester | Multiplier-based processor-in-memory architectures for image and graphics processing |
JP2003331598A (ja) | 2002-05-13 | 2003-11-21 | Mitsubishi Electric Corp | 半導体記憶装置 |
US7406494B2 (en) | 2002-05-14 | 2008-07-29 | Texas Instruments Incorporated | Method of generating a cycle-efficient bit-reverse index array for a wireless communication system |
JP2003346484A (ja) | 2002-05-23 | 2003-12-05 | Mitsubishi Electric Corp | 不揮発性半導体記憶装置 |
US6789099B2 (en) | 2002-06-10 | 2004-09-07 | International Business Machines Corporation | Sense-amp based adder with source follower evaluation tree |
US7054178B1 (en) | 2002-09-06 | 2006-05-30 | Etron Technology, Inc. | Datapath architecture for high area efficiency |
US6987693B2 (en) | 2002-09-24 | 2006-01-17 | Sandisk Corporation | Non-volatile memory and method with reduced neighboring field errors |
US7079407B1 (en) | 2002-10-18 | 2006-07-18 | Netlogic Microsystems, Inc. | Content addressable memory (CAM) device including match line sensing |
US6765834B2 (en) | 2002-11-19 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | System and method for sensing memory cells of an array of memory cells |
KR100546307B1 (ko) | 2002-12-05 | 2006-01-26 | 삼성전자주식회사 | 글로벌 입출력라인을 프리차지 및/또는 이퀄라이징하기위한 프리차지 회로를 구비하는 반도체 장치 및프리차지 및/또는 이퀄라이즈하는 트랜지스터의 레이아웃 |
US6731542B1 (en) | 2002-12-05 | 2004-05-04 | Advanced Micro Devices, Inc. | Circuit for accurate memory read operations |
US6888372B1 (en) | 2002-12-20 | 2005-05-03 | Altera Corporation | Programmable logic device with soft multiplier |
AU2002353406A1 (en) | 2002-12-27 | 2004-07-22 | Solid State System Co., Ltd. | Nonvolatile memory unit with specific cache |
US7346903B2 (en) | 2003-02-04 | 2008-03-18 | Sun Microsystems, Inc. | Compiling and linking modules of a cycle-based logic design |
US6768679B1 (en) | 2003-02-10 | 2004-07-27 | Advanced Micro Devices, Inc. | Selection circuit for accurate memory read operations |
US6819612B1 (en) | 2003-03-13 | 2004-11-16 | Advanced Micro Devices, Inc. | Apparatus and method for a sense amplifier circuit that samples and holds a reference voltage |
US6865122B2 (en) | 2003-04-11 | 2005-03-08 | Intel Corporation | Reclaiming blocks in a block-alterable memory |
US7447720B2 (en) | 2003-04-23 | 2008-11-04 | Micron Technology, Inc. | Method for finding global extrema of a set of bytes distributed across an array of parallel processing elements |
US7574466B2 (en) | 2003-04-23 | 2009-08-11 | Micron Technology, Inc. | Method for finding global extrema of a set of shorts distributed across an array of parallel processing elements |
US7454451B2 (en) | 2003-04-23 | 2008-11-18 | Micron Technology, Inc. | Method for finding local extrema of a set of values for a parallel processing element |
US9015390B2 (en) | 2003-04-25 | 2015-04-21 | Micron Technology, Inc. | Active memory data compression system and method |
DE10319271A1 (de) | 2003-04-29 | 2004-11-25 | Infineon Technologies Ag | Speicher-Schaltungsanordnung und Verfahren zur Herstellung |
JP3898152B2 (ja) | 2003-05-27 | 2007-03-28 | ローム株式会社 | 演算機能付き記憶装置および演算記憶方法 |
CN1846278B (zh) | 2003-09-04 | 2010-04-28 | Nxp股份有限公司 | 集成电路和高速缓冲存储器的重新映射方法 |
US6956770B2 (en) | 2003-09-17 | 2005-10-18 | Sandisk Corporation | Non-volatile memory and method with bit line compensation dependent on neighboring operating modes |
US7177183B2 (en) | 2003-09-30 | 2007-02-13 | Sandisk 3D Llc | Multiple twin cell non-volatile memory array and logic block structure and method therefor |
US7913125B2 (en) | 2003-11-04 | 2011-03-22 | Lsi Corporation | BISR mode to test the redundant elements and regular functional memory to avoid test escapes |
US6950771B1 (en) | 2003-12-09 | 2005-09-27 | Xilinx, Inc. | Correlation of electrical test data with physical defect data |
EP1704483A2 (en) | 2003-12-30 | 2006-09-27 | SanDisk Corporation | Non-volatile memory and method with memory planes alignment |
US7631236B2 (en) | 2004-01-29 | 2009-12-08 | International Business Machines Corporation | Hybrid built-in self test (BIST) architecture for embedded memory arrays and an associated method |
US7401281B2 (en) | 2004-01-29 | 2008-07-15 | International Business Machines Corporation | Remote BIST high speed test and redundancy calculation |
JP4819316B2 (ja) | 2004-02-23 | 2011-11-24 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US7088606B2 (en) | 2004-03-10 | 2006-08-08 | Altera Corporation | Dynamic RAM storage techniques |
US7020017B2 (en) | 2004-04-06 | 2006-03-28 | Sandisk Corporation | Variable programming of non-volatile memory |
US7120063B1 (en) | 2004-05-07 | 2006-10-10 | Spansion Llc | Flash memory cell and methods for programming and erasing |
US8522205B2 (en) | 2004-05-18 | 2013-08-27 | Oracle International Corporation | Packaging multiple groups of read-only files of an application's components into multiple shared libraries |
DE602005007216D1 (de) * | 2004-05-27 | 2008-07-10 | Nxp Bv | Mikroprozessor und verfahren zur anweisungsausrichtung |
JP2006127460A (ja) | 2004-06-09 | 2006-05-18 | Renesas Technology Corp | 半導体装置、半導体信号処理装置、およびクロスバースイッチ |
US7061817B2 (en) | 2004-06-30 | 2006-06-13 | Micron Technology, Inc. | Data path having grounded precharge operation and test compression capability |
US7116602B2 (en) | 2004-07-15 | 2006-10-03 | Micron Technology, Inc. | Method and system for controlling refresh to avoid memory cell data losses |
US7434024B2 (en) | 2004-08-30 | 2008-10-07 | Ati Technologies, Inc. | SIMD processor with register addressing, buffer stall and methods |
US20060069849A1 (en) | 2004-09-30 | 2006-03-30 | Rudelic John C | Methods and apparatus to update information in a memory |
US7685365B2 (en) | 2004-09-30 | 2010-03-23 | Intel Corporation | Transactional memory execution utilizing virtual memory |
US20060149804A1 (en) | 2004-11-30 | 2006-07-06 | International Business Machines Corporation | Multiply-sum dot product instruction with mask and splat |
US7230851B2 (en) | 2004-12-23 | 2007-06-12 | Sandisk Corporation | Reducing floating gate to floating gate coupling effect |
KR100673901B1 (ko) | 2005-01-28 | 2007-01-25 | 주식회사 하이닉스반도체 | 저전압용 반도체 메모리 장치 |
US7543119B2 (en) | 2005-02-10 | 2009-06-02 | Richard Edward Hessel | Vector processor |
US7624313B2 (en) | 2005-03-28 | 2009-11-24 | Hewlett-Packard Development Company, L.P. | TCAM BIST with redundancy |
US7187585B2 (en) | 2005-04-05 | 2007-03-06 | Sandisk Corporation | Read operation for non-volatile storage that includes compensation for coupling |
US7196928B2 (en) | 2005-04-05 | 2007-03-27 | Sandisk Corporation | Compensating for coupling during read operations of non-volatile memory |
US7193898B2 (en) | 2005-06-20 | 2007-03-20 | Sandisk Corporation | Compensation currents in non-volatile memory read operations |
KR100720644B1 (ko) | 2005-11-17 | 2007-05-21 | 삼성전자주식회사 | 메모리 장치 및 메모리 그 동작 방법 |
WO2007069295A1 (ja) | 2005-12-13 | 2007-06-21 | Spansion Llc | 半導体装置およびその制御方法 |
JP5129450B2 (ja) | 2006-01-16 | 2013-01-30 | ルネサスエレクトロニクス株式会社 | 情報処理装置 |
US8077533B2 (en) | 2006-01-23 | 2011-12-13 | Freescale Semiconductor, Inc. | Memory and method for sensing data in a memory using complementary sensing scheme |
JP4989900B2 (ja) | 2006-01-31 | 2012-08-01 | ルネサスエレクトロニクス株式会社 | 並列演算処理装置 |
US7400532B2 (en) | 2006-02-16 | 2008-07-15 | Micron Technology, Inc. | Programming method to reduce gate coupling interference for non-volatile memory |
US20070233767A1 (en) * | 2006-03-31 | 2007-10-04 | Jeremy Anderson | Rotator/shifter arrangement |
KR100755370B1 (ko) | 2006-04-17 | 2007-09-04 | 삼성전자주식회사 | 반도체 메모리 장치 |
TW200828333A (en) | 2006-04-28 | 2008-07-01 | Samsung Electronics Co Ltd | Sense amplifier circuit and sense amplifier-based flip-flop having the same |
US7752417B2 (en) | 2006-06-05 | 2010-07-06 | Oracle America, Inc. | Dynamic selection of memory virtualization techniques |
US7372715B2 (en) | 2006-06-14 | 2008-05-13 | Micron Technology, Inc. | Architecture and method for NAND flash memory |
US8069377B2 (en) | 2006-06-26 | 2011-11-29 | Micron Technology, Inc. | Integrated circuit having memory array including ECC and column redundancy and method of operating the same |
US7724559B2 (en) | 2006-07-14 | 2010-05-25 | International Business Machines Corporation | Self-referenced match-line sense amplifier for content addressable memories |
US7443729B2 (en) | 2006-07-20 | 2008-10-28 | Sandisk Corporation | System that compensates for coupling based on sensing a neighbor using coupling |
US7885119B2 (en) | 2006-07-20 | 2011-02-08 | Sandisk Corporation | Compensating for coupling during programming |
US7692466B2 (en) | 2006-08-18 | 2010-04-06 | Ati Technologies Ulc | Sense amplifier based flip-flop |
US7805587B1 (en) | 2006-11-01 | 2010-09-28 | Nvidia Corporation | Memory addressing controlled by PTE fields |
US8151082B2 (en) | 2007-12-06 | 2012-04-03 | Fusion-Io, Inc. | Apparatus, system, and method for converting a storage request into an append data storage command |
US7471536B2 (en) | 2006-12-08 | 2008-12-30 | Texas Instruments Incorporated | Match mismatch emulation scheme for an addressed location in a CAM |
US7460387B2 (en) | 2007-01-05 | 2008-12-02 | International Business Machines Corporation | eDRAM hierarchical differential sense amp |
US7743303B2 (en) | 2007-01-22 | 2010-06-22 | Micron Technology, Inc. | Defective memory block remapping method and system, and memory device and processor-based system using same |
US7937535B2 (en) | 2007-02-22 | 2011-05-03 | Arm Limited | Managing cache coherency in a data processing apparatus |
US7804718B2 (en) | 2007-03-07 | 2010-09-28 | Mosaid Technologies Incorporated | Partial block erase architecture for flash memory |
US7492640B2 (en) | 2007-06-07 | 2009-02-17 | Sandisk Corporation | Sensing with bit-line lockout control in non-volatile memory |
JP2009009665A (ja) | 2007-06-29 | 2009-01-15 | Elpida Memory Inc | 半導体記憶装置 |
US7996749B2 (en) | 2007-07-03 | 2011-08-09 | Altera Corporation | Signal loss detector for high-speed serial interface of a programmable logic device |
US7489543B1 (en) | 2007-07-25 | 2009-02-10 | Micron Technology, Inc. | Programming multilevel cell memory arrays |
US7694195B2 (en) | 2007-08-14 | 2010-04-06 | Dell Products L.P. | System and method for using a memory mapping function to map memory defects |
US7869273B2 (en) | 2007-09-04 | 2011-01-11 | Sandisk Corporation | Reducing the impact of interference during programming |
US7787319B2 (en) | 2007-09-06 | 2010-08-31 | Innovative Silicon Isi Sa | Sense amplifier circuitry for integrated circuit having memory cell array, and method of operating same |
US8042082B2 (en) | 2007-09-12 | 2011-10-18 | Neal Solomon | Three dimensional memory in a system on a chip |
US7965564B2 (en) | 2007-09-18 | 2011-06-21 | Zikbit Ltd. | Processor arrays made of standard memory cells |
US7663928B2 (en) | 2007-10-09 | 2010-02-16 | Ememory Technology Inc. | Sense amplifier circuit having current mirror architecture |
US8200932B2 (en) | 2007-10-19 | 2012-06-12 | Virident Systems Inc. | Managing memory systems containing components with asymmetric characteristics |
US7924628B2 (en) | 2007-11-14 | 2011-04-12 | Spansion Israel Ltd | Operation of a non-volatile memory array |
US7979667B2 (en) | 2007-12-10 | 2011-07-12 | Spansion Llc | Memory array search engine |
US7755960B2 (en) | 2007-12-17 | 2010-07-13 | Stmicroelectronics Sa | Memory including a performance test circuit |
US8495438B2 (en) | 2007-12-28 | 2013-07-23 | Texas Instruments Incorporated | Technique for memory imprint reliability improvement |
US7808854B2 (en) | 2008-02-19 | 2010-10-05 | Kabushiki Kaisha Toshiba | Systems and methods for data transfers between memory cells |
JP5194302B2 (ja) | 2008-02-20 | 2013-05-08 | ルネサスエレクトロニクス株式会社 | 半導体信号処理装置 |
US8332580B2 (en) | 2008-04-02 | 2012-12-11 | Zikbit Ltd. | System, method and apparatus for memory with embedded associative section for computations |
US20090254694A1 (en) | 2008-04-02 | 2009-10-08 | Zikbit Ltd. | Memory device with integrated parallel processing |
US7957206B2 (en) | 2008-04-04 | 2011-06-07 | Micron Technology, Inc. | Read circuitry for an integrated circuit having memory cells and/or a memory cell array, and method of operating same |
US8339824B2 (en) | 2008-07-02 | 2012-12-25 | Cooke Laurence H | Nearest neighbor serial content addressable memory |
US8417921B2 (en) | 2008-08-15 | 2013-04-09 | Apple Inc. | Running-min and running-max instructions for processing vectors using a base value from a key element of an input vector |
US8555037B2 (en) | 2008-08-15 | 2013-10-08 | Apple Inc. | Processing vectors using wrapping minima and maxima instructions in the macroscalar architecture |
US8259509B2 (en) | 2008-08-18 | 2012-09-04 | Elpida Memory, Inc. | Semiconductor memory device and method with auxiliary I/O line assist circuit and functionality |
ITRM20080543A1 (it) | 2008-10-09 | 2010-04-10 | Micron Technology Inc | Architettura e metodo per la programmazione di memorie. |
KR101596283B1 (ko) | 2008-12-19 | 2016-02-23 | 삼성전자 주식회사 | 개선된 로컬 입출력라인 프리차아지 스킴을 갖는 반도체 메모리 장치 |
US8117422B2 (en) * | 2009-02-05 | 2012-02-14 | Texas Instruments Incorporated | Fast address translation for linear and circular modes |
KR101622922B1 (ko) | 2009-03-06 | 2016-05-20 | 삼성전자 주식회사 | 개선된 로컬 입출력라인 프리차아지 스킴을 갖는 반도체 메모리 장치 |
US8484276B2 (en) | 2009-03-18 | 2013-07-09 | International Business Machines Corporation | Processing array data on SIMD multi-core processor architectures |
KR20100134235A (ko) | 2009-06-15 | 2010-12-23 | 삼성전자주식회사 | 반도체 메모리 장치 |
US7898864B2 (en) | 2009-06-24 | 2011-03-01 | Sandisk Corporation | Read operation for memory with compensation for coupling based on write-erase cycles |
US8412987B2 (en) | 2009-06-30 | 2013-04-02 | Micron Technology, Inc. | Non-volatile memory to store memory remap information |
US8412985B1 (en) | 2009-06-30 | 2013-04-02 | Micron Technology, Inc. | Hardwired remapped memory |
US9076527B2 (en) | 2009-07-16 | 2015-07-07 | Mikamonu Group Ltd. | Charge sharing in a TCAM array |
US8238173B2 (en) | 2009-07-16 | 2012-08-07 | Zikbit Ltd | Using storage cells to perform computation |
JP4951041B2 (ja) | 2009-08-06 | 2012-06-13 | 株式会社東芝 | 半導体記憶装置 |
EP2467133B1 (en) | 2009-08-18 | 2014-01-22 | Dow Corning Corporation | Multi-layer transdermal patch |
US8059438B2 (en) | 2009-08-28 | 2011-11-15 | International Business Machines Corporation | Content addressable memory array programmed to perform logic operations |
US8077532B2 (en) | 2009-09-02 | 2011-12-13 | Micron Technology, Inc. | Small unit internal verify read in a memory device |
US8482975B2 (en) | 2009-09-14 | 2013-07-09 | Micron Technology, Inc. | Memory kink checking |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
US8719516B2 (en) * | 2009-10-21 | 2014-05-06 | Micron Technology, Inc. | Memory having internal processors and methods of controlling memory access |
US9477636B2 (en) | 2009-10-21 | 2016-10-25 | Micron Technology, Inc. | Memory having internal processors and data communication methods in memory |
US20120246380A1 (en) | 2009-10-21 | 2012-09-27 | Avidan Akerib | Neighborhood operations for parallel processing |
US8650232B2 (en) | 2009-10-26 | 2014-02-11 | Via Technologies, Inc. | System and method for determination of a horizontal minimum of digital values |
KR101634340B1 (ko) | 2009-11-03 | 2016-06-28 | 삼성전자주식회사 | 반도체 메모리 장치의 프로그램 방법 |
US8583896B2 (en) | 2009-11-13 | 2013-11-12 | Nec Laboratories America, Inc. | Massively parallel processing core with plural chains of processing elements and respective smart memory storing select data received from each chain |
KR20110054773A (ko) | 2009-11-18 | 2011-05-25 | 삼성전자주식회사 | 비트라인 디스털번스를 개선하는 반도체 메모리 장치 |
US8089815B2 (en) | 2009-11-24 | 2012-01-03 | Sandisk Technologies Inc. | Programming memory with bit line floating to reduce channel-to-floating gate coupling |
US8605015B2 (en) | 2009-12-23 | 2013-12-10 | Syndiant, Inc. | Spatial light modulator with masking-comparators |
US8356145B2 (en) * | 2010-01-15 | 2013-01-15 | Qualcomm Incorporated | Multi-stage multiplexing operation including combined selection and data alignment or data replication |
JP2011146102A (ja) | 2010-01-15 | 2011-07-28 | Elpida Memory Inc | 半導体装置及びデータ処理システム |
CN102141905B (zh) | 2010-01-29 | 2015-02-25 | 上海芯豪微电子有限公司 | 一种处理器体系结构 |
US8164942B2 (en) | 2010-02-01 | 2012-04-24 | International Business Machines Corporation | High performance eDRAM sense amplifier |
US8533245B1 (en) | 2010-03-03 | 2013-09-10 | Altera Corporation | Multipliers with a reduced number of memory blocks |
WO2011137189A1 (en) | 2010-04-27 | 2011-11-03 | Cornell Research Foundation | System and methods for mapping and searching objects in multidimensional space |
KR101119371B1 (ko) | 2010-04-29 | 2012-03-06 | 주식회사 하이닉스반도체 | 반도체 메모리 장치 및 이의 동작 방법 |
US8559232B2 (en) | 2010-05-03 | 2013-10-15 | Aplus Flash Technology, Inc. | DRAM-like NVM memory array and sense amplifier design for high temperature and high endurance operation |
US8351278B2 (en) | 2010-06-23 | 2013-01-08 | International Business Machines Corporation | Jam latch for latching memory array output data |
KR101143471B1 (ko) | 2010-07-02 | 2012-05-11 | 에스케이하이닉스 주식회사 | 센스앰프 및 이를 포함하는 반도체 장치 |
US20120017039A1 (en) | 2010-07-16 | 2012-01-19 | Plx Technology, Inc. | Caching using virtual memory |
US8462532B1 (en) | 2010-08-31 | 2013-06-11 | Netlogic Microsystems, Inc. | Fast quaternary content addressable memory cell |
US8347154B2 (en) | 2010-09-21 | 2013-01-01 | International Business Machines Corporation | Use of hashing function to distinguish random and repeat errors in a memory system |
US8904115B2 (en) | 2010-09-28 | 2014-12-02 | Texas Instruments Incorporated | Cache with multiple access pipelines |
US8332367B2 (en) | 2010-10-20 | 2012-12-11 | International Business Machines Corporation | Parallel data redundancy removal |
KR101148352B1 (ko) | 2010-11-02 | 2012-05-21 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그의 동작 방법 |
JP5528987B2 (ja) | 2010-11-11 | 2014-06-25 | ピーエスフォー ルクスコ エスエイアールエル | 半導体装置 |
US8553482B2 (en) | 2010-11-29 | 2013-10-08 | Apple Inc. | Sense amplifier and sense amplifier latch having common control |
WO2012104674A1 (en) | 2011-01-31 | 2012-08-09 | Freescale Semiconductor, Inc. | Integrated circuit device and method for determining an index of an extreme value within an array of values |
KR20120088973A (ko) | 2011-02-01 | 2012-08-09 | 삼성전자주식회사 | 로컬 센스앰프 회로 및 이를 포함하는 반도체 메모리 장치 |
JP2012174016A (ja) | 2011-02-22 | 2012-09-10 | Renesas Electronics Corp | データ処理装置およびそのデータ処理方法 |
JP5259765B2 (ja) | 2011-03-29 | 2013-08-07 | 株式会社東芝 | 不揮発性半導体メモリ |
US8725730B2 (en) | 2011-05-23 | 2014-05-13 | Hewlett-Packard Development Company, L.P. | Responding to a query in a data processing system |
US8706958B2 (en) | 2011-09-01 | 2014-04-22 | Thomas Hein | Data mask encoding in data bit inversion scheme |
WO2013062596A1 (en) | 2011-10-28 | 2013-05-02 | Hewlett-Packard Development Company, L.P. | Row shifting shiftable memory |
US8891297B2 (en) | 2011-11-01 | 2014-11-18 | Micron Technology, Inc. | Memory cell sensing |
US9830158B2 (en) | 2011-11-04 | 2017-11-28 | Nvidia Corporation | Speculative execution and rollback |
KR101321481B1 (ko) | 2011-11-04 | 2013-10-28 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 이를 위한 테스트 회로 |
KR20130052971A (ko) | 2011-11-14 | 2013-05-23 | 삼성전자주식회사 | 비휘발성 메모리 장치의 동작 방법 |
GB2511957B (en) | 2011-11-22 | 2015-02-11 | Mips Tech Inc | Processor with kernel mode access to user space virtual addresses |
CN103959237B (zh) | 2011-11-30 | 2016-09-28 | 英特尔公司 | 用于提供向量横向比较功能的指令和逻辑 |
US20130151820A1 (en) * | 2011-12-09 | 2013-06-13 | Advanced Micro Devices, Inc. | Method and apparatus for rotating and shifting data during an execution pipeline cycle of a processor |
WO2013095592A1 (en) | 2011-12-22 | 2013-06-27 | Intel Corporation | Apparatus and method for vector compute and accumulate |
KR20130072869A (ko) | 2011-12-22 | 2013-07-02 | 에스케이하이닉스 주식회사 | 프리차지 회로 및 비휘발성 메모리 장치 |
US9542307B2 (en) * | 2012-03-02 | 2017-01-10 | Hewlett Packard Enterprise Development Lp | Shiftable memory defragmentation |
WO2013130108A1 (en) * | 2012-03-02 | 2013-09-06 | Hewlett-Packard Development Company , L. P. | Shiftable memory supporting bimodal storage |
US20130286705A1 (en) | 2012-04-26 | 2013-10-31 | David B. Grover | Low power content addressable memory hitline precharge and sensing circuit |
US8938603B2 (en) | 2012-05-31 | 2015-01-20 | Samsung Electronics Co., Ltd. | Cache system optimized for cache miss detection |
US20130332707A1 (en) | 2012-06-07 | 2013-12-12 | Intel Corporation | Speed up big-number multiplication using single instruction multiple data (simd) architectures |
KR102062301B1 (ko) | 2013-01-03 | 2020-01-03 | 삼성전자주식회사 | 메모리 장치의 페이지 복사 방법 및 메모리 시스템의 페이지 관리 방법 |
US20140215185A1 (en) | 2013-01-29 | 2014-07-31 | Atmel Norway | Fetching instructions of a loop routine |
US9158667B2 (en) * | 2013-03-04 | 2015-10-13 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9171153B2 (en) | 2013-05-17 | 2015-10-27 | Hewlett-Packard Development Company, L.P. | Bloom filter with memory element |
US8964496B2 (en) * | 2013-07-26 | 2015-02-24 | Micron Technology, Inc. | Apparatuses and methods for performing compare operations using sensing circuitry |
US8971124B1 (en) * | 2013-08-08 | 2015-03-03 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9153305B2 (en) * | 2013-08-30 | 2015-10-06 | Micron Technology, Inc. | Independently addressable memory array address spaces |
US9019785B2 (en) | 2013-09-19 | 2015-04-28 | Micron Technology, Inc. | Data shifting via a number of isolation devices |
US9449675B2 (en) | 2013-10-31 | 2016-09-20 | Micron Technology, Inc. | Apparatuses and methods for identifying an extremum value stored in an array of memory cells |
US9430191B2 (en) | 2013-11-08 | 2016-08-30 | Micron Technology, Inc. | Division operations for memory |
US20150270015A1 (en) | 2014-03-19 | 2015-09-24 | Micron Technology, Inc. | Memory mapping |
US9934856B2 (en) | 2014-03-31 | 2018-04-03 | Micron Technology, Inc. | Apparatuses and methods for comparing data patterns in memory |
JP6637906B2 (ja) | 2014-05-08 | 2020-01-29 | マイクロン テクノロジー,インク. | ハイブリッドメモリキューブシステム相互接続ディレクトリベースキャッシュコヒーレンス方法 |
KR101887797B1 (ko) | 2014-05-08 | 2018-09-10 | 마이크론 테크놀로지, 인크. | 메모리 내 가벼운 일관성 |
US9449674B2 (en) | 2014-06-05 | 2016-09-20 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9455020B2 (en) | 2014-06-05 | 2016-09-27 | Micron Technology, Inc. | Apparatuses and methods for performing an exclusive or operation using sensing circuitry |
US10074407B2 (en) | 2014-06-05 | 2018-09-11 | Micron Technology, Inc. | Apparatuses and methods for performing invert operations using sensing circuitry |
US9711207B2 (en) | 2014-06-05 | 2017-07-18 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9704540B2 (en) | 2014-06-05 | 2017-07-11 | Micron Technology, Inc. | Apparatuses and methods for parity determination using sensing circuitry |
US9910787B2 (en) | 2014-06-05 | 2018-03-06 | Micron Technology, Inc. | Virtual address table |
US9496023B2 (en) | 2014-06-05 | 2016-11-15 | Micron Technology, Inc. | Comparison operations on logical representations of values in memory |
US9779019B2 (en) | 2014-06-05 | 2017-10-03 | Micron Technology, Inc. | Data storage layout |
US9830999B2 (en) | 2014-06-05 | 2017-11-28 | Micron Technology, Inc. | Comparison operations in memory |
US9711206B2 (en) | 2014-06-05 | 2017-07-18 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9786335B2 (en) | 2014-06-05 | 2017-10-10 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9904515B2 (en) | 2014-09-03 | 2018-02-27 | Micron Technology, Inc. | Multiplication operations in memory |
US9740607B2 (en) | 2014-09-03 | 2017-08-22 | Micron Technology, Inc. | Swap operations in memory |
US9747961B2 (en) | 2014-09-03 | 2017-08-29 | Micron Technology, Inc. | Division operations in memory |
US9847110B2 (en) | 2014-09-03 | 2017-12-19 | Micron Technology, Inc. | Apparatuses and methods for storing a data value in multiple columns of an array corresponding to digits of a vector |
US9589602B2 (en) | 2014-09-03 | 2017-03-07 | Micron Technology, Inc. | Comparison operations in memory |
US10068652B2 (en) | 2014-09-03 | 2018-09-04 | Micron Technology, Inc. | Apparatuses and methods for determining population count |
US9898252B2 (en) | 2014-09-03 | 2018-02-20 | Micron Technology, Inc. | Multiplication operations in memory |
US9940026B2 (en) | 2014-10-03 | 2018-04-10 | Micron Technology, Inc. | Multidimensional contiguous memory allocation |
US9836218B2 (en) | 2014-10-03 | 2017-12-05 | Micron Technology, Inc. | Computing reduction and prefix sum operations in memory |
US10163467B2 (en) | 2014-10-16 | 2018-12-25 | Micron Technology, Inc. | Multiple endianness compatibility |
US10147480B2 (en) | 2014-10-24 | 2018-12-04 | Micron Technology, Inc. | Sort operation in memory |
US9779784B2 (en) | 2014-10-29 | 2017-10-03 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9747960B2 (en) | 2014-12-01 | 2017-08-29 | Micron Technology, Inc. | Apparatuses and methods for converting a mask to an index |
US10073635B2 (en) | 2014-12-01 | 2018-09-11 | Micron Technology, Inc. | Multiple endianness compatibility |
US9478312B1 (en) | 2014-12-23 | 2016-10-25 | Amazon Technologies, Inc. | Address circuit |
US10032493B2 (en) | 2015-01-07 | 2018-07-24 | Micron Technology, Inc. | Longest element length determination in memory |
US10061590B2 (en) | 2015-01-07 | 2018-08-28 | Micron Technology, Inc. | Generating and executing a control flow |
US9583163B2 (en) | 2015-02-03 | 2017-02-28 | Micron Technology, Inc. | Loop structure for operations in memory |
US9741399B2 (en) | 2015-03-11 | 2017-08-22 | Micron Technology, Inc. | Data shift by elements of a vector in memory |
US9898253B2 (en) | 2015-03-11 | 2018-02-20 | Micron Technology, Inc. | Division operations on variable length elements in memory |
US10146537B2 (en) | 2015-03-13 | 2018-12-04 | Micron Technology, Inc. | Vector population count determination in memory |
US10049054B2 (en) | 2015-04-01 | 2018-08-14 | Micron Technology, Inc. | Virtual register file |
US10140104B2 (en) | 2015-04-14 | 2018-11-27 | Micron Technology, Inc. | Target architecture determination |
US9959923B2 (en) | 2015-04-16 | 2018-05-01 | Micron Technology, Inc. | Apparatuses and methods to reverse data stored in memory |
-
2016
- 2016-11-11 US US15/349,492 patent/US10423353B2/en active Active
-
2017
- 2017-11-02 EP EP17869496.4A patent/EP3539130B1/en active Active
- 2017-11-02 CN CN202310841707.4A patent/CN116798468A/zh active Pending
- 2017-11-02 WO PCT/US2017/059659 patent/WO2018089246A1/en unknown
- 2017-11-02 CN CN201780069592.4A patent/CN109937450B/zh active Active
-
2019
- 2019-09-18 US US16/574,847 patent/US11048428B2/en active Active
-
2021
- 2021-06-28 US US17/360,533 patent/US11693576B2/en active Active
-
2023
- 2023-06-29 US US18/343,929 patent/US20230418503A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6076136A (en) * | 1998-06-17 | 2000-06-13 | Lucent Technologies, Inc. | RAM address decoding system and method to support misaligned memory access |
US20010048121A1 (en) * | 2000-06-06 | 2001-12-06 | Nagamasa Mizushima | Semiconductor memory device with block alignment function |
US20080175072A1 (en) * | 2007-01-19 | 2008-07-24 | Robert Norman | Fast data access through page manipulation |
US20110264819A1 (en) * | 2010-04-24 | 2011-10-27 | Sudharshan Srinivasan | Binary data serialization system using machine dependant data alignement |
Also Published As
Publication number | Publication date |
---|---|
US11693576B2 (en) | 2023-07-04 |
CN109937450A (zh) | 2019-06-25 |
EP3539130B1 (en) | 2021-09-15 |
US20200012447A1 (en) | 2020-01-09 |
US20180136871A1 (en) | 2018-05-17 |
WO2018089246A1 (en) | 2018-05-17 |
US20230418503A1 (en) | 2023-12-28 |
US10423353B2 (en) | 2019-09-24 |
EP3539130A4 (en) | 2020-06-24 |
US11048428B2 (en) | 2021-06-29 |
CN109937450B (zh) | 2023-07-18 |
US20210326056A1 (en) | 2021-10-21 |
EP3539130A1 (en) | 2019-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109937450B (zh) | 用于存储器对准的设备及方法 | |
US11768600B2 (en) | Computing reduction and prefix sum operations in memory | |
US10878884B2 (en) | Apparatuses and methods to reverse data stored in memory | |
US11775296B2 (en) | Mask patterns generated in memory from seed vectors | |
US10970218B2 (en) | Apparatuses and methods for compute enabled cache | |
US10460773B2 (en) | Apparatuses and methods for converting a mask to an index | |
US10783942B2 (en) | Modified decode for corner turn | |
US10157019B2 (en) | Apparatuses and methods for data transfer from sensing circuitry to a controller | |
US11842191B2 (en) | Apparatus and methods related to microcode instructions indicating instruction types | |
US10153008B2 (en) | Apparatuses and methods for performing corner turn operations using sensing circuitry | |
US10622034B2 (en) | Element value comparison in memory | |
US10043570B1 (en) | Signed element compare in memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |