CN105814637A - 用于存储器的除法运算 - Google Patents

用于存储器的除法运算 Download PDF

Info

Publication number
CN105814637A
CN105814637A CN201480067273.6A CN201480067273A CN105814637A CN 105814637 A CN105814637 A CN 105814637A CN 201480067273 A CN201480067273 A CN 201480067273A CN 105814637 A CN105814637 A CN 105814637A
Authority
CN
China
Prior art keywords
value
memory cell
stored
remainder values
memory
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.)
Granted
Application number
CN201480067273.6A
Other languages
English (en)
Other versions
CN105814637B (zh
Inventor
凯尔·B·惠勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Micron Technology Inc filed Critical Micron Technology Inc
Publication of CN105814637A publication Critical patent/CN105814637A/zh
Application granted granted Critical
Publication of CN105814637B publication Critical patent/CN105814637B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/535Dividing only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/535Indexing scheme relating to groups G06F7/535 - G06F7/5375
    • G06F2207/5353Restoring division

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Dram (AREA)
  • Memory System (AREA)

Abstract

本发明的实例提供用于执行存储器中的除法运算的设备及方法。实例设备包括:第一地址空间,其包括耦合到感测线及第一数目个选择线的第一数目个存储器单元,其中所述第一地址空间存储被除数值。第二地址空间包括耦合到所述感测线及第二数目个选择线的第二数目个存储器单元,其中所述第二地址空间存储除数值。第三地址空间包括耦合到所述感测线及第三数目个选择线的第三数目个存储器单元,其中所述第三地址空间存储余数值。感测电路可经配置以接收所述被除数值及所述除数值,将所述被除数值除以所述除数值,且将余数结果存储于所述第三数目个存储器单元中。

Description

用于存储器的除法运算
技术领域
本发明大体上涉及半导体存储器设备及方法,且更特定来说,涉及与用于存储器的除法运算有关的设备及方法。
背景技术
存储器装置通常被提供为计算机或其它电子系统中的内部半导体集成电路。存在许多不同类型的存储器,包含易失性及非易失性存储器。易失性存储器可能需要电力来维持其数据(例如,主机数据、错误数据等等),且包含随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、同步动态随机存取存储器(SDRAM)与晶闸管随机存取存储器(TRAM)以及其它存储器。非易失性存储器可通过在未经供电时保留所存储的数据而提供持久性数据,且可包含NAND快闪存储器、NOR快闪存储器及电阻可变存储器(例如相变随机存取存储器(PCRAM))、电阻性随机存取存储器(RRAM)及磁阻随机存取存储器(MRAM)(例如自旋力矩转移随机存取存储器(STTRAM))以及其它存储器。
电子系统常常包含若干处理资源(例如,一或多个处理器),所述处理资源可检索及执行指令且将所执行指令的结果存储到合适位置。处理器可包括若干功能单元(例如,本文中称为功能单元电路(FUC)),举例来说,例如算术逻辑单元(ALU)电路、浮点单元(FPU)电路及/或组合逻辑块,可使用所述功能单元以通过对数据(例如,一或多个操作数)执行逻辑运算(例如AND、OR、NOT、NAND、NOR及XOR逻辑运算)而执行指令。
将指令提供到FUC以用于执行时可涉及电子系统中的若干组件。可(例如)通过处理资源(例如控制器及/或主机处理器)产生所述指令。可将数据(例如,将对其执行指令的操作数)存储于存储器阵列中,所述存储器阵列可由FUC存取。可从所述存储器阵列检索所述指令及/或数据,且可在FUC开始对所述数据执行指令之前对所述指令及/或数据进行排序及/或缓冲。此外,由于可通过FUC在一或多个时钟循环中执行不同类型的运算,所以也可对所述指令及/或数据的中间结果进行排序及/或缓冲。
在许多实例中,处理资源(例如,处理器及/或相关联的FUC)可位于存储器阵列外部,且可经由所述处理资源与所述存储器阵列之间的总线存取数据(例如,以执行指令)。可经由总线将数据从存储器阵列移动到所述存储器阵列外部的寄存器。
附图说明
图1是根据本发明的若干实施例的呈包含存储器装置的计算系统的形式的设备的框图。
图2A说明根据本发明的若干实施例的存储器阵列的部分的示意图。
图2B说明根据本发明的若干实施例的与使用感测电路执行若干逻辑运算相关联的时序图。
图2C-1及2C-2说明根据本发明的若干实施例的与使用感测电路执行若干逻辑运算相关联的时序图。
图2D-1及2D-2说明根据本发明的若干实施例的与使用感测电路执行若干逻辑运算相关联的时序图。
图3A说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3B说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3C说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3D说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3E说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3F说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3G说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3H说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3I说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3J说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态的逻辑图。
图3K说明展示根据本发明的若干实施例的位于与执行一系列除法运算相关联的特定阶段处的阵列的部分的单元的状态逻辑图。
具体实施方式
本发明包含与用于存储器的除法运算有关的设备及方法。可存储于位向量中(例如,存储器阵列中)的逻辑值的实例包括第一地址空间,其包括耦合到感测线及第一数目个选择线的存储器单元。所述第一地址空间的所述存储器单元可存储被除数值。第二地址空间包括耦合到所述感测线及第二数目个选择线的存储器单元。所述第二地址空间的所述存储器单元可存储除数值。可将除法运算的结果存储于第三地址空间中,所述第三地址空间包括耦合到所述感测线及第三数目个选择线的存储器单元。所述第三地址空间的所述存储器单元可存储商数值。第四地址空间包括耦合到所述感测线及第四数目个选择线的存储器单元。所述第四地址空间的所述存储器单元可存储余数值。
如本文中所使用,被除数值是将在除法运算中被除的数值。除数值是除法运算中除被除数的值。除法运算的结果可为商数值及余数值。商数值可表示除数值可除被除数值的整数倍。余数值可表示来自除数值可除被除数值的整数倍的余数。举例来说,如果被除数值是11且除数值是5,那么将被除数值(例如,11)除以除数值(例如,5)的结果是商数值2及余数值1。
相比于先前方法,本发明的若干实施例可提供执行若干除法运算(例如,除法功能)中所涉及的计算次数及时间的减少。因为可并行(例如,同时)执行所述若干除法运算,所以可减少计算及时间。并行执行所述若干除法运算可减少执行所述若干除法运算中所涉及的计算。并行执行若干除法运算也可减少在执行若干计算时的电力消耗。例如,若干实施例可提供使用逻辑存储(例如,以二进制形式存储于存储器阵列中的若干存储器单元中)的数据(例如,被除数值及除数值)执行除法功能。所述实施例可在无需经由总线(例如,数据总线、地址总线、控制总线等等)将数据转移出存储器阵列及/或感测电路的情况下执行除法功能。除法功能可涉及执行若干逻辑运算(例如,AND、NOT、NOR、NAND、XOR等等)。然而,实施例并不限于这些实例。
在先前方法中,可(例如,经由包括输入/输出(I/O)线的总线)将数据(例如,被除数值及除数值)从阵列及感测电路转移到若干寄存器,所述寄存器可由处理资源(例如处理器、微处理器及/或计算引擎)使用,所述处理资源可包括经配置以执行适当逻辑运算的ALU电路及/或其它功能单元电路。然而,ALU电路仅可使用单一被除数值及单一除数值以执行单一除法功能(例如,除法运算)。经由总线将数据从寄存器转移到存储器或将数据从存储器转移到寄存器可涉及大量电力消耗及时间需求。即使处理资源定位于与存储器阵列相同的芯片上,在使数据移动离开所述阵列到计算电路时也可能消耗大量电力,这可涉及(例如):执行感测线地址存取(例如,触发一列解码信号)以便将数据从感测线转移到I/O线上;将所述数据移动到阵列外围;及将所述数据提供到与除法功能相关联的寄存器。
在本发明的以下详细描述中,参考形成所述详细描述的一部分的附图,且在附图中借助于说明展示可如何实践本发明的一或多个实施例。充分详细描述这些实施例以使所属领域的一般技术人员能够实践本发明的实施例,且应理解,可利用其它实施例且可在不背离本发明的范围的情况下作出过程、电及/或结构改变。如本文中所使用,指定符“N”,尤其关于图式中的参考数字,指示可包含如此指定的若干特定特征。如本文中所使用,“若干”特定事物可指此类事物中的一或多者(例如,若干存储器阵列可指一或多个存储器阵列)。
本文中的图式遵循编号惯例,其中首位数字或前几位数字对应于图式编号且剩余数字识别图式中的元件或组件。可通过使用类似数字识别不同图之间的类似元件或组件。举例来说,204可指代图2A中的元件“04”,且类似元件可指代为图3A中的304。如将了解,可增加、交换及/或消除本文中的各种实施例中所展示的元件,以便提供本发明的若干额外实施例。此外,如将了解,图中所提供的元件的比例及相对尺度是为了说明本发明的某些实施例,且不应以限制性意义理解。
图1是根据本发明的若干实施例的呈包含存储器装置160的计算系统100的形式的设备的框图。如本文中所使用,存储器装置160、存储器阵列130及/或感测电路150也可被单独视为“设备”。
系统100包含耦合到存储器装置160的主机110,存储器装置160包含存储器阵列130。主机110可为主机系统,例如个人膝上型计算机、桌上型计算机、数码相机、移动电话或存储卡读取器以及各种其它类型的主机。主机110可包含系统主机板及/或底板,且可包含若干处理资源(例如,一或多个处理器、微处理器或一些其它类型的控制电路)。系统100可包含单独集成电路,或主机110及存储器装置160两者都可在相同集成电路上。系统100可为(例如)服务器系统及/或高性能计算(HPC)系统及/或其的一部分。尽管图1中所展示的实例说明具有冯·诺伊曼(VonNeumann)架构的系统,但也可在非冯·诺伊曼架构(例如,图灵机(Turingmachine))中实施本发明的实施例,所述非冯·诺伊曼架构可能并不包含通常与冯·诺伊曼架构相关联的一或多个组件(例如,CPU、ALU等等)。
为清楚起见,系统100已经简化以集中于与本发明特定相关的特征上。存储器阵列130可为(例如)DRAM阵列、SRAM阵列、STTRAM阵列、PCRAM阵列、TRAM阵列、RRAM阵列、NAND快闪存储器阵列及/或NOR快闪存储器阵列。阵列130可包括以由选择线(其在本文中可称为字线或存取线)耦合的行及由感测线(其在本文中可称为数字线或数据线)耦合的列中所布置的存储器单元。尽管图1中展示单一阵列130,但实施例并不如此受限制。例如,存储器装置160可包含若干阵列130(例如,若干DRAM单元库)。结合图2A描述实例DRAM阵列。
存储器装置160包含地址电路142以锁存通过I/O电路144经由I/O总线156(例如,数据总线)提供的地址信号。由行解码器146及列解码器152接收及解码地址信号以存取存储器阵列130。在若干实例中,可由更多或更少个行解码器来解码地址信号。举例来说,存储器装置可包含三个行解码器。如本文中所使用,行解码器可称为选择解码器。可通过使用感测电路150感测感测线上的电压及/或电流变化来从存储器阵列130读取数据。感测电路150可从存储器阵列130读取及锁存一页(例如,行)数据。可使用I/O电路144以经由I/O总线156与主机110进行双向数据通信。使用写入电路148以将数据写入到存储器阵列130。
在若干实例中,术语解码可包含在行解码器146及/或列解码器152中实施的预解码、最终解码及/或任何其它类型的解码。在若干实例中,术语预解码包含电路实施预解码过程使得地址并未被离散寻址。在本文中可使用术语预解码及解码以区分术语可离散寻址的线及/或可个别寻址的线。
在若干实例中,存储器阵列130中的若干选择线及/或感测线可独立于存储器阵列130的其它选择线及/或感测线而被个别寻址及/或解码。如本文中所使用,离散地址可为并不需要解码以便激活特定选择线的地址。举例来说,地址电路142可接收与若干选择线相关联的地址,可在无需解码与所述若干选择线相关联的地址的情况下激活所述选择线。在若干实例中,个别寻址的行及/或离散寻址的行可称为完全解码的行。与存储器阵列130相关联的存储器单元可包括以其它方式用于(例如)DRAM阵列、SRAM阵列、STTRAM阵列、PCRAM阵列、TRAM阵列、RRAM阵列、NAND快闪存储器阵列及/或NOR快闪存储器阵列以及其它存储器配置中的存储器单元。
控制电路140解码由控制总线154从主机110提供的信号。这些信号可包含芯片启用信号、写入启用信号及地址锁存信号,可使用所述信号以控制对存储器阵列130执行的操作,包含数据读取、数据写入及数据擦除操作。在各种实施例中,控制电路140负责执行来自主机110的指令。控制电路140可为状态机、定序器或某种其它类型的控制器。
下文结合图2A及图3A到3K进一步描述感测电路150的实例。例如,在若干实施例中,感测电路150可包括若干感测放大器及若干计算组件,所述计算组件可包括累加器且可使用其以(例如,对与互补感测线相关联的数据)执行逻辑运算。在若干实施例中,可使用感测电路(例如,150)以使用存储于阵列130中的数据作为输入来执行除法运算,及在无需经由感测线地址存取转移的情况下(例如,在无需触发列解码信号的情况下)将所述除法运算的结果存储回到阵列130。在执行除法运算及/或在执行所述除法运算时所涉及的计算期间,存储器阵列130中耦合到选择线及感测线的存储器单元可用作暂时存储装置(例如,寄存器)。因而,可使用感测电路150执行除法功能而非由所述感测电路外部的处理资源(例如,由与主机110相关联的处理器及/或定位于装置160上(例如,定位于控制电路140上或别处)的其它处理电路,例如ALU电路)执行所述除法功能,及/或除了由所述感测电路外部的所述处理资源执行所述除法功能之外,也可使用感测电路150执行所述除法功能。
在各种先前方法中,例如,将经由感测电路从存储器读取与除法运算相关联的数据,且将所述数据提供到外部ALU。所述外部ALU电路将使用操作数执行除法功能,且可经由局部I/O线将结果转移回到阵列。相比之下,在本发明的若干实施例中,感测电路(例如,150)经配置以对存储于存储器阵列130中的存储器单元中的数据执行除法运算且在无需启用耦合到所述感测电路的局部I/O线的情况下将结果存储回到所述阵列130。
因而,在若干实施例中,可能并不需要阵列130及感测电路150外部的寄存器及/或ALU来执行除法功能,这是因为感测电路150可使用存储器阵列130的地址空间执行在执行除法功能时所涉及的适当计算。另外,可在无需使用外部处理资源的情况下执行除法功能。
图2A说明根据本发明的若干实施例的存储器阵列230的部分的示意性图。在此实例中,存储器阵列230是1T1C(一个晶体管一个电容器)存储器单元270-0、270-1、270-2、…、270-N-1、270-N(例如,统称为存储器单元270)的DRAM阵列,所述存储器单元各自由存取装置202(例如,晶体管)及存储元件203(例如,电容器)组成。
在若干实施例中,存储器单元270是破坏性的读取存储器单元(例如,读取存储于单元中的数据破坏所述数据,使得最初存储于单元中的所述数据在读取之后被刷新)。将存储器单元270布置于由选择线204-0(行0)、204-1(行1)、204-2(行2)、…、204-N-1(行N-1)、204-N(行N)耦合的行及由感测线(例如,数字线)205-0(D)及205-1(D_)耦合的列中。在若干实施例中,阵列230可包含耦合到单独电路的地址空间。
在此实例中,每一单元列与一对互补感测线205-0(D)及205-1(D_)相关联。尽管图2A中仅说明存储器单元270的单一列,但实施例并不如此受限制。例如,特定阵列可具有若干单元列及/或感测线(例如,4,096个、8,192个、16,384个等等)。在图2A中,存储器单元270耦合到感测线205-0。特定单元晶体管202的栅极耦合到其对应选择线204-0到204-N(例如,统称为选择线204),第一源极/漏极区域耦合到其对应感测线205-0,且特定单元晶体管的第二源极/漏极区域耦合到其对应电容器203。尽管图2A中并未说明,但感测线205-1也可具有耦合到其的存储器单元。
在若干实例中,耦合到感测线205的存储器单元270可存储位。所述位可表示值及/或若干值(例如,被除数值、除数值、商数值及/或余数值)的逻辑表示。举例来说,被除数值可由四位向量表示,可将所述四位向量存储于存储器单元270-0、存储器单元270-1、存储器单元270-2及存储器单元270-3中。在若干实例中,位向量可由比图2A及图3A到3K中所使用的位更多或更少的位表示。举例来说,被除数值可由8位向量、16位向量及/或32位向量以及其它位向量维数表示。在若干实例中,可沿着感测线205垂直存储值的每一位向量表示,这与沿着选择线204水平存储相反。
可为值的每一位向量逻辑表示编写索引。举例来说,存储于存储器单元270-0中的位可与第一索引相关联,存储于存储器单元270-1中的位可与第二索引相关联,存储于存储器单元270-2中的位可与第三索引相关联,且存储于存储器单元270-3中的位可与第四索引相关联。作为实例,所述第一索引可指示所存储位向量的最高有效位(MSB),且所述第四索引可指示所存储位向量的最低有效位(LSB)。结合图2A所使用的索引编写是说明性的且非限制性。在若干实施例中可采用其它索引系统及/或顺序。举例来说,存储于存储器270-3中的位可与第一索引相关联,存储于存储器单元270-2中的位可与第二索引相关联,存储于存储器单元270-1中的位可与第三索引相关联,且存储于存储器单元270-0中的位可与第四索引相关联。此外,可使用若干不同布局及/或存储器单元定向来执行本文中所描述的运算。
可将若干值存储于存储器阵列230的每一感测线中。举例来说,存储器单元270-0、270-1、270-2、270-3可存储表示第一被除数值的若干位;存储器单元270-4、270-5、270-6、270-7可存储表示第一除数值的若干位;存储器单元270-8、270-9、270-10、270-11可存储表示第一商数值的若干位;且存储器单元270-12、270-13、270-14、270-15可存储表示第一余数值的若干位(例如,图2A中并未说明存储器单元270-3到存储器单元270-15)。存储器单元270-0到270-15可耦合到第一感测线。耦合到不同感测线的存储器单元可存储表示第二被除数值、第二除数值、第二商数值及/或第二余数值的若干位。
在若干实例中,可并行激活耦合到选择线204-0及若干感测线(例如,感测线205-0及感测线205-1)的存储器单元。此外,也可并行激活存储器单元270-0、存储器单元270-1、存储器单元270-2、存储器单元270-3。在若干实例中,可并行激活独立寻址的选择线204及/或感测线205以并行激活若干存储器单元。
感测电路包括感测放大器206及计算组件231。感测电路可为图1中所展示的感测电路150。感测放大器206耦合到对应于特定存储器单元列的互补感测线D、D_。可操作感测放大器206以确定存储于所选择单元(例如,存储器单元270)中的状态(例如,逻辑数据值)。实施例并不限于实例感测放大器206。例如,根据本文中所描述的若干实施例的感测电路可包含电流模式感测放大器及/或单端感测放大器(例如,耦合到一个感测线的感测放大器)。
在若干实施例中,计算组件(例如,231)可包括与感测放大器(例如,206)及/或阵列(例如,230)的存储器单元270的晶体管有节距地形成的若干晶体管,所述晶体管可符合特定特征大小(例如,4F2、6F2等等)。如下文进一步描述,计算组件231可结合感测放大器206一起操作以使用来自阵列230中的存储器单元270的数据作为输入执行除法运算,且在无需经由感测线地址存取转移所述数据的情况下(例如,在无需触发列解码信号使得经由局部I/O线将数据从阵列及感测电路转移到外部电路的情况下)将结果存储回到所述阵列230中的所述存储器单元270。因而,本发明的若干实施例可实现使用低于各种先前方法的电力执行除法运算及与所述除法运算相关联的计算。此外,因为若干实施例无需跨越局部I/O线转移数据以便执行计算功能,所以与先前方法相比较,若干实施例可使用计算组件(例如,231)及存储器单元270实现增强的并行处理能力。
在图2A中所说明的实例中,对应于计算组件231的电路包括耦合到感测线D及D_中的每一者的五个晶体管;然而,实施例并不限于此实例。晶体管207-1及207-2具有分别耦合到感测线D及D_的第一源极/漏极区域,及耦合到交叉耦合锁存器(例如,耦合到一对交叉耦合晶体管(例如耦合到交叉耦合NMOS晶体管208-1及208-2以及交叉耦合PMOS晶体管209-1及209-2)的栅极)的第二源极/漏极区域。如本文中进一步描述,包括晶体管208-1、208-2、209-1及209-2的交叉耦合锁存器可称为次要锁存器(对应于感测放大器206的交叉耦合锁存器在本文中可称为主要锁存器)。
晶体管207-1及207-2可称为传输晶体管,可经由相应信号211-1(Passd)及211-2(Passdb)启用其以便将相应感测线D及D_上的电压或电流传输到包括晶体管208-1、208-2、209-1及209-2的交叉耦合锁存器的输入(例如,次要锁存器的输入)。在此实例中,晶体管207-1的第二源极/漏极区域耦合到晶体管208-1及209-1的第一源极/漏极区域以及耦合到晶体管208-2及209-2的栅极。类似地,晶体管207-2的第二源极/漏极区域耦合到晶体管208-2及209-2的第一源极/漏极区域以及耦合到晶体管208-1及209-1的栅极。
晶体管208-1及208-2的第二源极/漏极区域通常耦合到负控制信号212-1(Accumb)。晶体管209-1及209-2的第二源极/漏极区域通常耦合到正控制信号212-2(Accum)。Accum信号212-2可为供应电压(例如,Vcc),且Accumb信号可为参考电压(例如,接地)。启用信号212-1及212-2激活对应于次要锁存器的包括晶体管208-1、208-2、209-1及209-2的交叉耦合锁存器。经激活的感测放大器对操作以放大共同节点217-1与共同节点217-2之间的差分电压,使得将节点217-1驱动到Accum信号电压及Accumb信号电压中的一者(例如,到Vcc及接地中的一者),且将节点217-2驱动到Accum信号电压及Accumb信号电压中的另一者。如下文进一步描述,信号212-1及212-2被标记为“Accum”及“Accumb”,这是因为次要锁存器可用作累加器,同时使用其以执行逻辑运算(例如,除法运算)。在若干实施例中,累加器包括形成次要锁存器的交叉耦合晶体管208-1、208-2、209-1及209-2以及传输晶体管207-1及208-2。如本文中进一步描述,在若干实施例中,包括耦合到感测放大器的累加器的计算组件可经配置以执行逻辑运算,所述逻辑运算包括对由一对互补感测线中的至少一者上的信号(例如,电压或电流)表示的数据值执行累加运算。
计算组件231还包含反相晶体管214-1及214-2,其具有耦合到相应数字线D及D_的第一源极/漏极区域。晶体管214-1及214-2的第二源极/漏极区域分别耦合到晶体管216-1及216-2的第一源极/漏极区域。晶体管214-1及214-2的栅极耦合到信号213(InvD)。晶体管216-1的栅极耦合到共同节点217-1,晶体管208-2的栅极、晶体管209-2的栅极及晶体管208-1的第一源极/漏极区域也耦合到共同节点217-1。以互补方式,晶体管216-2的栅极耦合到共同节点217-2,晶体管208-1的栅极、晶体管209-1的栅极及晶体管208-2的第一源极/漏极区域也耦合到共同节点217-2。因而,使用启用信号InvD以将存储于次要锁存器中的数据值反相,且将所述经反相的值驱动到感测线205-0及205-1上。
在图2A中,计算组件231经配置以执行除法运算。以下实例将说明可如何使用存储于阵列230中的数据作为输入来执行除法运算,及可如何经由感测电路(例如,感测放大器206及计算组件231)的操作将所述除法运算的结果存储于所述阵列中。所述实例涉及使用存储于耦合到选择线204-0到204-N且通常耦合到感测线205-0的存储器单元270中的位(例如,逻辑1或逻辑0)作为到除法运算的相应输入。可将所述除法运算的结果存储于耦合到感测线205-0的存储器单元中。
作为实例,计算组件231可使用存储于耦合到感测线205-0的若干存储器单元270的第一部分及第二部分中的被除数值及除数值。所述第一部分可包含第一数目个存储器单元。所述第二部分可包含第二数目个存储器单元。可将除法运算的中间结果保存于耦合到感测线205-0的存储器单元的第三部分及/或第四部分中。
除法运算可包含将存储于存储被除数值的存储器单元270-0到270-3中的位复制到存储余数值的存储器单元270-12到270-15的存储器单元270-12中。可将存储于存储器单元270-0到270-3中的位连续(例如,逐个)复制到存储器单元270-12中。与将位存储于存储器单元270-0到270-3中所依的顺序相比,可以反向顺序复制存储于存储器单元270-0到270-3中的所述位。举例来说,在将存储于存储器单元270-2中的位复制到存储器单元270-12之前,可将存储于存储器单元270-3中的位复制到存储器单元270-12。
在若干实例中,可将存储于存储器单元270-0到270-3中的位复制到与余数位向量的第一索引相关联的存储器单元。存储器单元270-12与余数位向量的第一索引相关联,这是因为存储器单元270-12可存储所述余数位向量的第一位。举例来说,等于5的余数值可由位向量[0101]表示。可将所述位向量存储于存储器单元270-12到270-15中。位向量[0101]的第一位可等于1且可将其存储于与第一索引相关联的存储器单元270-12中。位向量[0101]的第二位可等于0且可将其存储于与第二索引相关联的存储器单元270-13中。与第三索引相关联的存储器单元270-14可等于1。与第四索引相关联的存储器单元270-15可等于0。
除法运算可分成若干次计算迭代。如本文中所使用,计算可描述在执行除法运算时所涉及的计算操作。举例来说,复制运算可为计算及/或加法运算可为计算,以及其它计算。每当被除数值的位中的一者被复制到与余数位向量的第一索引相关联的存储器单元时,除法运算的迭代可开始。
每当将位复制到与余数位向量的第一索引相关联的存储器单元时,可产生掩码。掩码可指示除数值是否小于或等于对应余数值。如果所述除数值小于或等于所述余数值,那么所述掩码的对应位可被设置为等于1的值,且可从所述余数值减去所述除数值及可存储及移位所述减法的结果的逻辑表示(例如,位向量),如果复制到与余数位向量的第一索引相关联的存储器单元的位并非待迭代的被除数值的最后位,那么更新余数值,且商数值的逻辑表示(例如,位向量)可累加1。如果所述除数值大于所述余数值,那么所述掩码的对应位被设置为零,且商数值的逻辑表示及所述余数值的逻辑表示可经移位以分别更新所述商数值及所述余数值。将关于图3A到3K进一步解释移位。在图3A到3K中给出以上除法运算作为实例。
本发明的实施例并不限于图2A中所说明的特定感测电路配置。例如,可使用不同计算组件电路以执行根据本文中所描述的若干实施例的逻辑运算。尽管图2A中并未说明,但在若干实施例中,控制电路可耦合到阵列230、感测放大器206及/或计算组件231。可将此类控制电路实施于与阵列及感测电路相同的芯片上及/或实施于外部处理资源(举例来说,例如外部处理器)上,且可控制启用/停用对应于阵列及感测电路的各种信号以便执行如本文中所描述的逻辑运算。此外,尽管图2A中展示单对互补感测线(205-0/205-1),但阵列230还可包含多个互补感测线对。
对执行存储器中的除法运算提供概述的实例伪码给出如下:
在若干实施例中,可使用减法运算、加法运算、比较运算、移位运算及/或复制运算以及可经使用以执行除法运算的其它运算来执行除法运算。可使用布尔(Boolean)运算及非布尔运算来执行所述减法运算、所述加法运算、所述比较运算、所述移位运算及/或所述复制运算。在若干实施例中,可使用逻辑运算(例如,NAND、AND、NOR、OR等等)来执行布尔及非布尔运算。结合计算组件231执行NAND、AND、NOR及OR逻辑运算的实例在图2B、2C-1、2C-1、2D-1及2D-2中给出。
表1给出可经执行以执行加法运算的若干指令的实例。表1中给出的所述实例增加1(一)到存储于存储器阵列230的部分中的值(例如,加数)的逻辑表示(例如,位向量)。位向量“srcdest[p]”是加数的逻辑表示且可将其存储于存储器阵列230中的第一数目个存储器单元中。所述位向量srcdest[p]是将增加1的数值的逻辑表示。P表示与位向量srcdest[p]相关联的索引。举例来说,位向量[011]是值3的逻辑表示,可将所述值3存储于存储器单元270-0到270-2中,使得位srcdest[0]等于1、位srcdest[1]等于1且位srcdest[2]等于0。位向量tmp[p]是存储变量的逻辑表示,且可将其存储于存储器阵列230中的第二数目个存储器单元中。举例来说,可将位向量tmp[p]存储于存储器单元270-3到270-5中。
表1
加法运算可分成两个阶段。“Addone”阶段可将1增加到第一位向量srcdest[p]的逻辑表示。在“Addone”阶段中,“readsrcdest[0]”调用可读取(例如,锁存)位向量srcdest[p]中具有第一索引的位。举例来说,如本文中所描述,可将存储于存储器单元270-0中的位锁存于感测放大器206及/或计算组件231中。“writetmp[0]”调用可通过激活存储器单元270-3而将锁存于感测放大器206及/或计算组件231中的值(例如,位向量tmp[0]的第一索引)存储于存储器单元270-3中。“write-invertedsrcdest[0]”调用可将存储于感测放大器206及/或计算组件231处的位反相,且可通过激活存储器单元270-0而将所述经反相的位存储到存储器单元270-0。
“ForallremainingPbits”阶段可通过对在位向量srcdest[p]中的第一索引之后的每个索引执行表1中的调用而将来自第一阶段的任何余数载送到所述位向量srcdest[p]中的其它位。举例来说,在第一次迭代上,“readsrcdest[p]”调用可通过将存储于存储器单元270-1中的位锁存于感测放大器206及/或计算组件231处来读取存储于存储器单元270-1中的所述位。“ortmp[0]”调用可使用锁存的位(例如,从存储器单元270-1读取的位)及存储于存储器单元270-3中的位作为输入来执行OR运算。可在“readsrcdest[p]”调用之后锁存存储于存储器单元270-3中的所述位。如下文所描述,可在计算组件231中执行所述OR运算。“writetmp[1]”调用可通过激活存储器单元270-4而将所述OR运算的结果存储于存储器单元270-4中。“readsrcdest[p]”调用可将存储于存储器阵列270-1中的位锁存于感测放大器206处。“nandtmp[0]”调用可使用锁存的位(例如,存储于感测放大器206及/或计算组件231中的位)及存储于存储器单元270-3中的位作为输入来执行NAND运算。在“readsrcdest[p]”调用之后,可将存储于存储器单元270-3中的所述位锁存于感测放大器206处且将其提供到计算组件231作为用于NAND运算的输入。“write-invertedtmp[0]”调用可将NAND运算的结果在计算组件231处反相。可通过激活存储器单元270-3而将经反相的位存储于存储器单元270-3中。“andtmp[1]”调用可使用NAND运算的结果及存储于存储器单元270-4中的位作为输入来执行AND运算。“writesrcdest[p]”调用可将所述AND运算的结果存储于存储器单元270-1中。此时,可使用p的第三索引执行第二阶段的第二次迭代。当加法运算到达位向量srcdest[p]的最后索引时,所述加法运算可结束。
表2给出可经执行以执行减法运算的若干指令的实例。可使用表1中所使用的语法来执行表2中所展示的减法运算。所述减法运算可包含三个阶段。“Setup”阶段、“Loop-throughremainingPbits”阶段及“Cleanup”阶段。表2中给出的指令使用位向量minuend[p]、位向量subtrahend[p]、位向量tmp[p]及位向量result[p]。所述位向量subtrahend[p]是减数值的逻辑表示,而所述位向量minuend[p]是被减数值的逻辑表示。在所述减法运算中,从被减数值减去减数值。位向量result[p]是所述减法运算的可被存储于所述位向量result[p]中的结果值的逻辑表示。位向量tmp[p]是在执行减法运算时用作暂时存储装置的值的逻辑表示。可将所述位向量minuend[p]、subtrahend[p]、tmp[p]及result[p]存储于存储器阵列230中的若干存储器单元270中。举例来说,可将位向量minuend[p]存储于存储器单元270-0到270-3中,可将位向量subtrahend[p]存储于存储器单元270-4到270-7中,可将位向量tmp[p]存储于存储器单元270-8到270-11中,且可将位向量result[p]存储于存储器单元270-12到270-15中。减法运算可包含计算减数值的二进制补码及将所述减数值的所述二进制补码增加到被减数值。在将所述减数值的所述二进制补码增加到被减数值的对应位时,可逐位计算所述二进制补码。
表2
表3给出可经执行以执行复制及/或移位运算的若干指令的实例。复制运算可使用输入值作为输入及使用输出值作为输出。位向量input[p]是输入值的逻辑表示。位向量output[p]是输出值的逻辑表示。对于位向量input[p]中的每个索引,通过将对应位锁存于感测放大器206及/或计算组件231处而从对应于所述位向量input[p]的存储器单元读取位。可将所述锁存的对应位存储于对应于具有与位向量input[p]相同的索引的位向量output[p]的存储器单元中。左移位运算可包含在将位存储于对应于位向量output[p]的存储器单元之前,将移位值增加到所述位向量output[p]的索引。举例来说,“readinput[p]”调用可锁存存储于对应于位向量input[p]的存储器单元中的位,所述存储器单元具有来自存储器阵列230的第一部分的第一索引,且“writeoutput[p]”调用可将所述位存储于对应于位向量output[p]的存储器单元中,所述存储器单元具有来自存储器阵列230的第二部分的第二索引。
表3
For each of the P bits
read input[p]
write output[p]
表4给出可经执行以执行比较运算的若干指令的实例。所述比较运算可比较除数值与余数值,以确定所述除数值是否大于所述余数值。位向量divisor[p]是除数值的逻辑表示。位向量remainder[p]是余数值的逻辑表示。如用于“readdivisor[max]”调用中的Max表示与位向量divisor[p]及/或位向量remainder[p]相关联的最高索引。位difference_found_yet[0]及位difference_this_time[0]是用作暂时存储器的变量的逻辑表示。位result[0]是结果变量的逻辑表示。比较运算包含“Setup”阶段、“Loop-throughremainingPbits”阶段及“Cleanup”阶段。所述“Setup”阶段使用位向量divisor[p]及位向量remainder[p]的最大索引。所述“Loop-throughremainingPbits”阶段以比最大索引小1的索引开始,且通过缩减所述索引而循环,直到到达位向量divisor[p]及位向量remainder[p]的第一索引。举例来说,如果最大索引为4,那么“Loop-throughremainingPbits”阶段以等于3的索引开始,且缩减所述索引直到到达等于1的第一索引。“Cleanup”阶段将位result[0]反相且将所述位存储于与位result[0]相关联的存储器单元中。
表4
图2B说明根据本发明的若干实施例的与使用感测电路执行若干逻辑运算相关联的时序图285-1。时序图285-1说明与执行逻辑运算(例如,R输入逻辑运算)的第一运算阶段相关联的信号(例如,电压信号)。图2B中描述的所述第一运算阶段可为(例如)AND、NAND、OR或NOR运算的第一运算阶段。如下文进一步描述,执行图2B中所说明的运算阶段可涉及消耗明显少于(例如,约少一半)先前处理方法的能量,这可涉及在电压轨之间(例如,在供应与接地之间)提供全摆动以执行计算功能。
在图2B中所说明的实例中,对应于互补逻辑值(例如,“1”及“0”)的电压轨是供应电压274(VDD)及接地电压272(Gnd)。在执行逻辑运算之前,可发生平衡使得互补感测线D及D_在平衡电压225(VDD/2)下短接在一起。下文结合图3进一步描述平衡。
在时间t1处,撤销激活平衡信号226,且接着激活所选择行(例如,对应于其数据值将被感测及用作第一输入的存储器单元的行)。信号204-0表示施加到所述所选择行(例如,行204-0)的电压信号。当行信号204-0达到对应于所选择单元的存取晶体管(例如,202)的阈值电压(Vt)时,所述存取晶体管接通且将感测线D耦合到所述所选择存储器单元(例如,如果所述单元是1T1CDRAM单元,那么耦合到电容器203),这在时间t2与t3之间在感测线D与D_之间产生差分电压信号(例如,如分别由信号205-0及205-1指示)。所述所选择单元的电压由信号203表示。归因于能量守恒,在D与D_之间产生差分信号(例如,通过将单元耦合到感测线D)并不消耗能量,这是因为与激活/撤销激活行信号204相关联的能量可在耦合到行的多个存储器单元之间分摊。
在时间t3处,感测放大器(例如,206)激活(例如,正控制信号231变高,且负控制信号228变低),这放大了D与D_之间的差分信号,从而导致对应于逻辑1的电压(例如,VDD)或感测线D上的对应于逻辑0的电压(例如,接地)(且另一电压在互补感测线D_上),使得所感测的数据值被存储于感测放大器206的主要锁存器中。主要能量消耗在将感测线D(205-0)从平衡电压VDD/2充电到轨电压VDD时发生。
在时间t4处,(例如,经由分别施加到控制线211-1及211-2的相应Passd及Passdb控制信号)启用传输晶体管207-1及207-2。控制信号211-1及211-2统称为控制信号211。如本文中所使用,各种控制信号(例如Passd及Passdb)可通过指代信号所施加到的控制线而进行引用。例如,Passd信号可称为控制信号211-1。在时间t5处,经由相应控制线212-1及212-2激活累加器控制信号Accumb及Accum。如下文所描述,累加器控制信号212-1及212-2对于后续运算阶段可保持激活。因而,在此实例中,激活控制信号212-1及212-2激活计算组件231的次要锁存器(例如,累加器)。将存储于感测放大器206中的所感测的数据值转移(例如,复制)到所述次要锁存器。
在时间t6处,停用(例如,断开)传输晶体管207-1及207-2;然而,因为累加器控制信号212-1及212-2保持激活,所以累加的结果被存储(例如,锁存)于次要锁存器(例如,累加器)中。在时间t7处,撤销激活行信号204-0,且在时间t8处撤销激活阵列感测放大器(例如,撤销激活感测放大器控制信号228及231)。
在时间t9处,使感测线D及D_平衡(例如,激活平衡信号226),如由从其相应轨值移动到平衡电压225(VDD/2)的感测线电压信号205-0及205-1所说明。归因于能量守恒定律,所述平衡消耗较少能量。在此实例中,平衡可涉及使互补感测线D及D_在平衡电压(其为VDD/2)下短接在一起。例如,平衡可在存储器单元感测操作之前发生。
图2C-1及2C-2分别说明根据本发明的若干实施例的与使用感测电路执行若干逻辑运算相关联的时序图285-2及285-3。时序图285-2及285-3说明与执行逻辑运算(例如,R输入逻辑运算)的若干中间运算阶段相关联的信号(例如,电压信号)。例如,时序图285-2对应于R输入NAND运算或R输入AND运算的若干中间运算阶段,且时序图285-3对应于R输入NOR运算或R输入OR运算的若干中间运算阶段。举例来说,执行AND或NAND运算可包含继初始运算阶段(例如图2B中所描述的运算阶段)之后执行图2C-1中所展示的运算阶段一或多次。类似地,执行OR或NOR运算可包含继初始运算阶段(例如图2B中所描述的运算阶段)之后执行图2C-2中所展示的运算阶段一或多次。
如时序图285-2及285-3中所展示,在时间t1处,停用平衡(例如,撤销激活平衡信号226),且接着激活所选择行(例如,对应于其数据值将被感测及用作输入(例如第二输入、第三输入等等)的存储器单元的行)。信号204-1表示施加到所述所选择行(例如,列204-1)的电压信号。当行信号204-1达到对应于所选择单元的存取晶体管(例如,202)的阈值电压(Vt)时,所述存取晶体管接通且将感测线D耦合到所述所选择存储器单元(例如,如果所述单元是1T1CDRAM单元,那么耦合到电容器203),这在时间t2与t3之间在感测线D与D_之间产生差分电压信号(例如,如分别由信号205-0及205-1指示)。所述所选择单元的电压由信号203表示。归因于能量守恒,在D与D_之间产生差分信号(例如,通过将所述单元耦合到感测线D)并不消耗能量,这是因为与激活/撤销激活行信号204相关联的能量可在耦合到行的多个存储器单元之间分摊。
在时间t3处,感测放大器(例如,206)激活(例如,正控制信号231变高,且负控制信号228变低),这放大了D与D_之间的差分信号,从而导致对应于逻辑1的电压(例如,VDD)或感测线D上的对应于逻辑0的电压(例如,接地)(且另一电压在互补感测线D_上),使得所感测的数据值被存储于感测放大器206的主要锁存器中。主要能量消耗在将感测线D(205-0)从平衡电压VDD/2充电到轨电压VDD时发生。
如时序图285-2及285-3中所展示,在时间t4处(例如,在感测所选择单元之后),取决于特定逻辑运算,仅激活控制信号211-1(Passd)及211-2(Passdb)中的一者(例如,仅启用传输晶体管207-1及207-2中的一者)。举例来说,因为时序图285-2对应于NAND或AND运算的中间阶段,所以在时间t4处激活控制信号211-1且控制信号211-2保持撤销激活。相反地,因为时序图285-3对应于NOR或OR运算的中间阶段,所以在时间t4处激活控制信号211-2且控制信号211-1保持撤销激活。回顾上文,在图2B中所描述的初始运算阶段期间激活累加器控制信号212-1(Accumb)及212-2(Accum),且其在所述中间运算阶段期间保持激活。
因为先前已激活累加器,所以仅激活Passd(211-1)导致累加对应于电压信号205-0的数据值。类似地,仅激活Passdb(211-2)导致累加对应于电压信号205-1的数据值。举例来说,在其中仅激活Passd(211-1)的实例AND/NAND运算中(例如,时序图285-2),如果存储于所选择存储器单元(例如,在此实例中为行1存储器单元)中的数据值是逻辑0,那么与次要锁存器相关联的累加值断言为低,使得所述次要锁存器存储逻辑0。如果存储于行1存储器单元中的数据值并非逻辑0,那么次要锁存器保留其所存储的行0数据值(例如,逻辑1或逻辑0)。因而,在此AND/NAND运算实例中,次要锁存器用作零(0)累加器。类似地,在其中仅激活Passdb的实例OR/NOR运算中(例如,时序图285-3),如果存储于所选择存储器单元(例如,在此实例中为行1存储器单元)中的数据值是逻辑1,那么与次要锁存器相关联的累加值断言为高,使得所述次要锁存器存储逻辑1。如果存储于行1存储器单元中的数据值并非逻辑1,那么次要锁存器保留其所存储的行0数据值(例如,逻辑1或逻辑0)。因而,在此OR/NOR运算实例中,次要锁存器有效地用作一个(1)累加器,因为D_上的电压信号205-1设置所述累加器的真实数据值。
在中间运算阶段(例如图2C-1及2C-2中所展示的中间运算阶段)结束时,(例如,在时间t5处)撤销激活Passd信号(例如,对于AND/NAND)或Passdb信号(例如,对于OR/NOR),(例如,在时间t6处)撤销激活所选择行,(例如,在时间t7处)撤销激活感测放大器,且(例如,在时间t8处)平衡发生。可重复中间运算阶段(例如图2C-1或2C-2中所说明的中间运算阶段)以便累加来自若干额外行的结果。作为实例,时序图285-2或285-3的序列可被执行:对于行2存储器单元为后续(例如,第二)时间,对于行3存储器单元为后续(例如,第三)时间等等。例如,对于10输入NOR运算,图2C-2中所展示的中间阶段可发生9次以提供所述10输入逻辑运算的9个输入,其中在(例如,如图2B中所描述的)初始运算阶段期间确定第十输入。
图2D-1及2D-2分别说明根据本发明的若干实施例的与使用感测电路执行若干逻辑运算相关联的时序图285-4及285-5。时序图285-4及285-5说明与执行逻辑运算(例如,R输入逻辑运算)的最后运算阶段相关联的信号(例如,电压信号)。例如,时序图285-4对应于R输入NAND运算或R输入NOR运算的最后运算阶段,而时序图285-5对应于R输入AND运算或R输入OR运算的最后运算阶段。举例来说,执行NAND运算可包含继结合图2C-1所描述的中间运算阶段的数次迭代之后执行图2D-1中所展示的运算阶段,执行NOR运算可包含继结合图2C-2所描述的中间运算阶段的数次迭代之后执行图2D-1中所展示的运算阶段,执行AND运算可包含继结合图2C-1所描述的中间运算阶段的数次迭代之后执行图2D-2中所展示的运算阶段,且执行OR运算可包含继结合图2C-2所描述的中间运算阶段的数次迭代之后执行图2D-2中所展示的运算阶段。下面所展示的表5指示对应于根据本文中所描述的若干实施例的与执行若干R输入逻辑运算相关联的运算阶段的序列的图。
表5
结合将R输入逻辑运算的结果存储到阵列(例如,阵列230)的行来描述图2D-1及2D-2的最后运算阶段。然而,如上文所描述,在若干实施例中,除了将结果存储回到阵列之外,也可将结果存储到合适位置(例如,经由I/O线存储到与控制器及/或主机处理器相关联的外部寄存器,存储到不同存储器装置的存储器阵列等等)。
如时序图285-4及285-5中所展示,在时间t1处,停用平衡(例如,撤销激活平衡信号226)使得感测线D及D_浮动。在时间t2处,取决于执行哪一逻辑运算,激活InvD信号213或Passd及Passdb信号211。在此实例中,对于NAND或NOR运算激活InvD信号213(参见图2D-1),且对于AND或OR运算激活Passd及Passdb信号211(参见图2D-2)。
在时间t2处激活InvD信号213(例如,结合NAND或NOR运算)启用晶体管214-1/214-2,且在将感测线D或感测线D_拉低时导致将存储于次要锁存器中的数据值反相。因而,激活信号213将所累加的输出反相。因此,对于NAND运算,如果在先前运算阶段(例如,初始运算阶段及一或多个中间运算阶段)中感测的存储器单元中的任一者存储逻辑0(例如,如果所述NAND运算的R输入中的任一者是逻辑0),那么感测线D_将载送对应于逻辑0的电压(例如,接地),且感测线D将载送对应于逻辑1的电压(例如,供应电压,例如VDD)。对于此NAND实例,如果在先前运算阶段中感测的全部存储器单元存储逻辑1(例如,所述NAND运算的全部R输入是逻辑1),那么感测线D_将载送对应于逻辑1的电压,且感测线D将载送对应于逻辑0的电压。在时间t3处,接着激活感测放大器206的主要锁存器(例如,触发所述感测放大器),驱动D及D_到适当轨电压,且感测线D现载送如从先前运算阶段期间感测的存储器单元确定的相应输入数据值的经NAND运算的结果。因而,如果输入数据值中的任一者是逻辑0,那么感测线D将处于VDD下,且如果全部输入数据值都是逻辑1,那么感测线D将处于接地。
对于NOR运算,如果在先前运算阶段(例如,初始运算阶段及一或多个中间运算阶段)中感测的存储器单元中的任一者存储逻辑1(例如,如果所述NOR运算的R输入中的任一者是逻辑1),那么感测线D_将载送对应于逻辑1的电压(例如,VDD),且感测线D将载送对应于逻辑0的电压(例如,接地)。对于此NOR实例,如果在先前运算阶段中感测的全部存储器单元存储逻辑0(例如,所述NOR运算的全部R输入是逻辑0),那么感测线D_将载送对应于逻辑0的电压,且感测线D将载送对应于逻辑1的电压。在时间t3处,接着激活感测放大器206的主要锁存器,且感测线D现含有如从先前运算阶段期间感测的存储器单元确定的相应输入数据值的经NOR运算的结果。因而,如果输入数据值中的任一者是逻辑1,那么感测线D将处于接地,且如果全部输入数据值是逻辑0,那么感测线D将处于VDD。
参考图2D-2,激活Passd及Passdb信号211(例如,结合AND或OR运算)将存储于计算组件231的次要锁存器中的累加输出转移到感测放大器206的主要锁存器。例如,对于AND运算,如果在先前运算阶段(例如,图2B的第一运算阶段及图2C-1的中间运算阶段的一或多次迭代)中感测的存储器单元中的任一者存储逻辑0(例如,如果所述AND运算的R输入中的任一者是逻辑0),那么感测线D_将载送对应于逻辑1的电压(例如,VDD),且感测线D将载送对应于逻辑0的电压(例如,接地)。对于此AND实例,如果在先前运算阶段中感测的全部存储器单元存储逻辑1(例如,所述AND运算的全部R输入都是逻辑1),那么感测线D_将载送对应于逻辑0的电压,且感测线D将载送对应于逻辑1的电压。在时间t3处,接着激活感测放大器206的主要锁存器,且感测线D现载送如从先前运算阶段期间感测的存储器单元确定的相应输入数据值的经AND运算的结果。因而,如果输入数据值中的任一者是逻辑0,那么感测线D将处于接地,且如果全部输入数据值都是逻辑1,那么感测线D将处于VDD。
对于OR运算,如果在先前运算阶段(例如,图2B的第一运算阶段及图2C-2中所展示的中间运算阶段的一或多次迭代)中感测的存储器单元中的任一者存储逻辑1(例如,如果所述OR运算的R输入中的任一者是逻辑1),那么感测线D_将载送对应于逻辑0的电压(例如,接地),且感测线D将载送对应于逻辑1的电压(例如,VDD)。对于此OR实例,如果在先前运算阶段中感测的全部存储器单元存储逻辑0(例如,所述OR运算的全部R输入是逻辑0),那么感测线D将载送对应于逻辑0的电压,且感测线D_将载送对应于逻辑1的电压。在时间t3处,接着激活感测放大器206的主要锁存器,且感测线D现载送如从先前运算阶段期间感测的存储器单元确定的相应输入数据值的经OR运算的结果。因而,如果输入数据值中的任一者是逻辑1,那么感测线D将处于VDD下,且如果全部输入数据值是逻辑0,那么感测线D将处于接地。
接着,可将R输入AND、OR、NAND及NOR运算的结果存储回到阵列230的存储器单元。在图2D-1及2D-2中所展示的实例中,R输入逻辑运算的结果被存储到耦合到行R(例如,204-R)的存储器单元。将逻辑运算的结果存储到行R存储器单元仅涉及通过激活行R而启用行R存取晶体管202。行R存储器单元的电容器203将被驱动到对应于感测线D上的数据值(例如,逻辑1或逻辑0)的电压,所述电压本质上重写先前存储于行R存储器单元中的任何数据值。应注意,行R存储器单元可为存储用作逻辑运算的输入的数据值的相同存储器单元。例如,逻辑运算的结果可被存储回到行0存储器单元或行1存储器单元。
时序图285-4及285-5说明,在时间t3处,撤销激活正控制信号231及负控制信号228(例如,信号231变高且信号228变低)以激活感测放大器206。在时间t4处,撤销激活在时间t2处激活的相应信号(例如,213或211)。实施例并不限于此实例。例如,在若干实施例中,可继时间t4之后(例如,在撤销激活信号213或信号211之后)激活感测放大器206。
如图2D-1及2D-2中所展示,在时间t5处,激活行R(204-R),这将所选择单元的电容器203驱动到对应于存储于累加器中的逻辑值的电压。在时间t6处,撤销激活行R,在时间t7处,撤销激活感测放大器206(例如,撤销激活信号228及231),且在时间t8处平衡发生(例如,激活信号226且使互补感测线205-0/205-1上的电压达到平衡电压)。
在若干实施例中,感测电路(例如,与存储器单元有节距地形成的电路),例如图2A中所描述的感测电路,可实现并行执行数种逻辑运算。例如,在具有16K列的阵列中,可在无需经由总线转移来自阵列及感测电路的数据的情况下及/或在无需经由I/O线转移来自阵列及感测电路的数据的情况下并行执行16K的逻辑运算。
而且,所属领域的一般技术人员将了解,执行R输入逻辑运算(例如,NAND、AND、NOR、OR等等)的能力可实现更复杂的计算功能的执行,例如加法、减法、乘法及除法以及其它初级数学功能及/或图案比较功能。举例来说,可组合一系列NAND运算以执行全加器功能。作为实例,如果全加器需要12个NAND门以连同进位输入(carryin)及进位输出(carryout)一起增加两个数据值,那么可执行总共384个NAND运算(12x32)以增加两个32位数。也可使用本发明的实施例以执行可为非布尔运算的逻辑运算(例如,复制、比较等等)。
此外,在若干实施例中,到所执行的逻辑运算的输入可能并非为存储于感测电路(例如,150)所耦合的存储器阵列中的数据值。例如,可在不激活阵列(例如,230)的行的情况下由感测放大器(例如,206)来感测到逻辑运算的若干输入。作为实例,可由感测放大器206经由耦合到其的I/O线来接收所述若干输入。可将此类输入(例如,经由适当I/O线)从阵列230外部的源(举例而言,例如从主机处理器(例如,主机110)及/或外部控制器)提供到感测放大器206。作为另一实例,结合执行逻辑运算,可从不同感测放大器及/或计算组件对接收到特定感测放大器(例如,206)及其对应计算组件(例如,231)的输入。例如,可将存储于耦合到第一单元列的第一累加器中的数据值(例如,逻辑结果)转移到与不同单元列相关联的不同(例如,相邻)感测放大器/计算组件对,所述不同单元行可或可不定位于与所述第一列相同的阵列中。
本发明的实施例并不限于图2A中所说明的特定感测电路配置。例如,可使用不同计算组件电路以执行根据本文中所描述的若干实施例的逻辑运算。尽管图2A中并未说明,但在若干实施例中,控制电路可耦合到阵列230、感测放大器206及/或计算组件231。可将此类控制电路实施于与阵列及感测电路相同的芯片上及/或实施于外部处理资源(举例来说,例如外部处理器)上,且可控制启用/停用对应于阵列及感测电路的各种信号以便执行如本文中所描述的逻辑运算。
结合图2A、2B、2C-1、2C-2、2D-1及2D-2所描述的实例逻辑运算阶段涉及累加数据值(例如,从存储器单元感测的数据值及/或对应于感测线的电压或电流的数据值)。归因于能量守恒,在执行逻辑运算阶段中所消耗的能量约等于在将感测线D或D_的电容从VDD/2充电到VDD期间消耗的能量,在激活感测放大器时开始此充电(例如,在如图2B、2C-1、2C-2、2D-1及2D-2中所展示的时间t3处)。因而,执行逻辑运算约消耗将感测线(例如,数字线)从VDD/2充电到VDD所使用的能量。相比之下,各种先前处理方法常常消耗从轨电压到轨电压(例如,从接地到VDD)对感测线充电的至少一定量的能量,所述能量可为相比于本文中所描述的实施例的能量的两倍或更多。
图3A说明展示根据本发明的若干实施例的处于与执行一系列除法运算相关联的特定阶段的阵列330的一部分的单元的状态的逻辑图。图3A包含类似于图2A的存储器阵列230及图1的存储器阵列130的存储器阵列330。存储器阵列330包含感测线305-0、305-1、305-2、305-3、305-4、305-5(例如,整体称为感测线305)。更多或更少条感测线可包含于存储器阵列330中。感测线305中的每一者表示不同除法运算。举例来说,可基于存储于耦合到六条不同感测线的若干存储器单元中的值来(例如,并行)执行六个不同除法运算。
存储器阵列330还包含选择线304-0、304-1、304-2、304-3、304-4、304-5、304-6、304-7、304-8、304-9、304-10、304-11、304-12、304-13、304-14、304-15、304-16(例如,整体称为选择线304)。在图3A中,第一除法运算可由被除数值320-0除以除数值322-0组成。可将所述第一除法运算的结果存储于商数值324-0及余数值326-0中。第二除法运算可由被除数值320-1除以除数值322-1组成。可将所述第二除法运算的结果存储于商数值324-1及余数值326-1中。第三除法运算可由被除数值320-2除以除数值322-2组成。可将所述第三除法运算的结果存储于商数值324-2及余数值326-2中。第四除法运算可由被除数值320-3除以除数值322-3组成。可将所述第四除法运算的结果存储于商数值324-3及余数值326-3中。第五除法运算可由被除数值320-4除以除数值322-4组成。可将所述第五除法运算的结果存储于商数值324-4及余数值326-4中。第六除法运算可由被除数值320-5除以除数值322-5组成。可将所述第六除法运算的结果存储于商数值324-5及余数值326-5中。
被除数值320-0、320-1、320-2、320-3、320-4、320-5(例如,整体称为被除数值320)、除数值322-0、322-1、322-2、322-3、322-4、322-5(例如,整体称为除数值322)、商数值324-0、324-1、324-2、324-3、324-4、324-5及余数值326-0、326-1、326-2、326-3、326-4、326-5可作为位向量被存储于耦合到选择线304及感测线305的存储器单元中。举例来说,存储于若干存储器单元中的被除数值320-0可具有等于5的值。被除数值320-0可由位向量[0101]表示,所述位向量[0101]可被存储于耦合到感测线320-0及选择线304-0、304-1、304-2、304-3的存储器单元中。
图3A展示存储器阵列330中的存储器单元的初始状态。举例来说,可使用表示值0的位向量[0000]初始化存储商数值及余数值的存储器单元。存储被除数值320-0的存储器单元经初始化以存储位向量[0101]。被除数值320-0等于5。存储被除数值320-1的存储器单元经初始化以存储位向量[0111]。被除数值320-1等于7。存储被除数值320-2的存储器单元经初始化以存储位向量[0011]。被除数值320-2等于3。存储被除数值320-3的存储器单元经初始化以存储位向量[0110]。被除数值320-3等于6。存储被除数值320-4的存储器单元经初始化以存储位向量[1000]。被除数值320-4等于8。存储被除数值320-5的存储器单元经初始化以存储位向量[1100]。被除数值320-5等于12。
存储除数值322-0的存储器单元经初始化以存储位向量[0100]。所存储的除数值322-0等于4。存储除数值322-1的存储器单元经初始化以存储位向量[0010]。除数值322-1等于2。存储除数值322-2的存储器单元经初始化以存储位向量[0001]。除数值322-2等于1。存储除数值322-3的存储器单元经初始化以存储位向量[0011]。除数值322-3等于3。存储除数值322-4的存储器单元经初始化以存储位向量[0101]。除数值322-4等于5。存储除数值322-5的存储器单元经初始化以存储位向量[0110]。除数值322-5等于6。
图3A还包含掩码328-0、328-1、328-2、328-3、328-4、328-5(例如,整体称为掩码328)。在图3C中进一步描述掩码328。
图3B到3K说明展示根据本发明的若干实施例的在与执行除法运算相关联的不同阶段期间(例如,在计算之后)的阵列部分330的存储器单元的状态的逻辑图。图3A说明阵列部分330的存储器单元的原始(例如,经初始化的)状态。
图3B说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3A中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
执行除法运算中的第一计算是将存储于与表示被除数值320的位向量的第四索引相关联的存储器单元中的位复制到与表示余数值326的位向量的第一索引相关联的存储器单元。举例来说,将存储于耦合到图3A中存储被除数值320-0的存储器单元的感测线305-0及选择线304-3的存储器单元中的位(例如,0)复制到耦合到存储余数值326-0的存储器单元的感测线305-0及选择线304-12的存储器单元。将存储于耦合到图3A中存储被除数值320-1的存储器单元的感测线305-1及选择线304-3的存储器单元中的位(例如,0)复制到耦合到存储余数值326-1的存储器单元的感测线305-1及选择线304-12的存储器单元。将存储于耦合到图3A中存储被除数值320-1的存储器单元的感测线305-2及选择线304-3的存储器单元中的位(例如,0)复制到耦合到存储余数值326-2的存储器单元的感测线305-2及选择线304-12的存储器单元。将存储于耦合到图3A中存储被除数值320-3的存储器单元的感测线305-3及选择线304-3的存储器单元中的位(例如,0)复制到耦合到存储余数值326-3的存储器单元的感测线305-3及选择线304-12的存储器单元。将存储于耦合到图3A中存储被除数值320-4的存储器单元的感测线305-4及选择线304-3的存储器单元中的位(例如,1)复制到耦合到存储余数值326-4的存储器单元的感测线305-4及选择线304-12的存储器单元。将存储于耦合到图3A中存储被除数值320-5的存储器单元的感测线305-5及选择线304-3的存储器单元中的位(例如,1)复制到耦合到存储余数值326-5的存储器单元的感测线305-5及选择线304-12的存储器单元。因此,在复制运算之后,表示余数值326-0、…、326-5的位向量已分别被更新到[0000]、[0000]、[0000]、[0000]、[0001]及[0001],所述更新的位向量分别表示更新的余数值0、0、0、0、1及1。
图3C说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3B中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3C中,产生若干掩码328。如本文中所使用,掩码可为在比较两个值(例如,比较被除数值与余数值)之后产生的掩码及/或在比较若干值之后产生的掩码。举例来说,掩码328-0可指示除数值322-0与余数值326-0的比较结果。掩码328-1可指示除数值322-1与余数值326-1的比较结果。掩码328-2可指示除数值322-2与余数值326-2的比较结果。掩码328-3可指示除数值322-3与余数值326-3的比较结果。掩码328-4可指示除数值322-4与余数值326-4的比较结果。掩码328-5可指示除数值322-5与余数值326-5的比较结果。比较可确定除数值是否小于或等于余数值。存储掩码328-0、328-1、328-2、328-3、328-4、328-5(例如,整体称为掩码328)的存储器单元在除数值大于余数值时可被设置为零,且在所述除数值小于或等于所述余数值时被设置为1。图3C中的掩码328全部被设置为0,这是因为除数值322均不小于或等于余数值326。举例来说,掩码328-5的存储器单元被设置为0,这是因为除数值322-5(例如,6)大于余数值326-5(例如,1)。
图3D说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3C中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3D中,与具有等于0的值的掩码328相关联的商数值324的逻辑表示(例如,位向量)经移位以更新所述商数值。即,因为除数值322大于余数值326,所以移位商数值324的逻辑表示。在若干实例中,也可将移位表示为左移位及/或向下移位。移位可涉及将存储于存储器单元中的位复制到与大于最初存储所述位的存储器单元的索引相关联的不同存储器单元。举例来说,当将存储于耦合到感测线305-0及选择线304-8的存储器单元中的位(例如,0)复制到耦合到感测线305-0及选择线304-9的存储器单元时,移位发生。在以上实例中,耦合到感测线305-0及选择线304-8的存储器单元与等于1的索引相关联,所述索引低于与耦合到感测线305-0及选择线304-9的存储器单元相关联的等于2的索引。
图3E说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3D中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3E中,全部余数值324的逻辑表示也被移位(以更新余数值324),这是因为掩码328全部都具有等于0的值。举例来说,存储于耦合到感测线305-4及选择线304-12到304-15的存储器单元中的位被移位到耦合到感测线305-4及选择线304-13到304-16的存储器单元。存储于耦合到感测线305-4及选择线304-12的存储器单元中的位被移位(例如,复制)到耦合到感测线305-4及选择线304-13的存储器单元。通过将存储于所述存储器单元中的位设置为等于0而空出耦合到感测线305-4及选择线304-12的存储器单元。凭借移位(例如,从位向量[0001]到位向量[0010]),余数值326-4及326-5经更新以具有为二(2)的值。
这是除法运算的第一次迭代的结束。除法运算的第二次迭代(图3A到3K中并未展示)包含将存储于耦合到感测线305-0到感测线305-5及选择线304-2的存储器单元中的位复制到耦合到感测线305-0到感测线305-5及选择线304-12的存储器单元。所述第二次迭代也可包含重新产生掩码。所述第二次迭代可包含确定掩码是否具有等于1或0的值。所述第二次迭代可包含:如果确定所述掩码具有等于1的值,那么从余数值减去除数值,且将结果的逻辑表示存储为余数值。如果所述掩码具有等于一(1)的值,那么商数值的逻辑表示(位向量)经移位且累加一(1)以更新所述商数值。如果所述掩码具有等于一(1)的值,且如果耦合到感测线305-0到感测线305-5及选择线304-2的存储器单元并不具有第一索引,那么减法运算的结果的逻辑表示经移位以更新余数值。
图3F说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3E中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3F中,将存储于与表示被除数值320的位向量的第一索引相关联的存储器单元中的位复制到与表示余数值326的位向量的第一索引相关联的存储器单元。举例来说,将存储于耦合到感测线320-0到感测线320-5及选择线304-0的存储器单元中的位复制到耦合到感测线320-0到感测线320-5及选择线304-12的存储器单元。
图3G说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3F中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3G中,已重新产生掩码328。举例来说,掩码328-0等于1,这是因为除数值322-0(例如,4)小于余数值326-0(例如,5)。掩码328-3等于0,这是因为除数值322-3(例如,3)大于余数值326-6(例如,0)。
图3H说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3G中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3H中,已从余数值326减去除数值322,其中相关联的掩码等于1。举例来说,在图3G中从余数值326-0(例如,5)减去除数值322-0(例如,4),且将结果存储于如图3H中所说明的存储余数值326-0(例如,1)的存储器单元中。类似地,在图3G中从余数值326-4(例如,8)减去除数值322-4(例如,5),且将减法的结果存储于图3H中存储余数值326-4(例如,3)的存储器单元中。然而,并未从余数值326-3及326-5减去除数值322-3及除数值322-5,这是因为相关联的掩码328-3及掩码328-5等于0。
图3I说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3H中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3I中,商数值324-0、324-1、324-2及324-4的逻辑表示已被左移位且累加1,这是因为对应掩码328-0、328-1、328-2及324-4等于1。举例来说,存储于图3H中存储商数值324-1(例如,1)的存储器单元中的位经向下移位以将所述商数值暂时更新到值2。在图3I中,商数值324-1(例如,暂时为2)的逻辑表示已被累加1以对图3I中的商数值提供等于3的更新值。
在图3I中,尽管相关联的掩码值328-0、328-1、328-2、328-4等于1,但余数值326-0、326-1、326-2、326-4的逻辑表示并未经移位,这是因为图3F中所复制的位是从连接到感测线320-0到感测线320-5及选择线304-0的具有等于1的索引的存储器单元复制。即,不存在更多的位来复制,且余数值326-0、326-1、326-2、326-4是除法运算的最终余数值。同样地,商数值324-0、324-1、324-2、324-4是除法运算的最终商数值。
然而,如图3J及图3K中所展示,将移位与具有等于0的值的掩码相关联的商数值及余数值的逻辑表示。
图3J说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3I中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3J中,左移位商数值324-3、324-5的逻辑表示。举例来说,图3I中的商数值324-3、324-5在其被左移位之前具有等于1的值,且在其被左移位之后具有等于2的值。
图3K说明展示处于与执行除法运算相关联的特定阶段(例如,在继图3J中所展示的阶段之后的阶段)的阵列部分330的单元的状态的逻辑图。
在图3K中,左移位余数值326-3、326-5的逻辑表示。举例来说,图3J中的余数值326-3、326-5在其被左移位之前具有等于0的值,且在其被左移位之后具有等于0的值。所述移位对余数值326-3、326-5无影响,这是因为所述余数值在所述移位之前等于0,且因此所述余数值的0位的移位并不影响所述余数值。
结论
本发明包含用于感测线除法的装置及方法。实例设备包括存储器阵列的第一地址空间,其包括耦合到感测线及第一数目个选择线的第一数目个存储器单元,其中所述第一地址空间存储被除数值。所述存储器阵列的第二地址空间包括耦合到所述感测线及第二数目个选择线的第二数目个存储器单元,其中所述第二地址空间存储除数值。所述存储器阵列的第三地址空间包括耦合到所述感测线及第三数目个选择线的第三数目个存储器单元,其中所述第三地址空间存储余数值。感测电路可经配置以接收所述被除数值及所述除数值,将所述被除数值除以所述除数值,及将除法的余数结果存储于所述第三数目个存储器单元中。
尽管本文中已说明及描述特定实施例,但所属领域的一般技术人员将了解经计算以实现相同结果的布置可替代所展示的特定实施例。本发明希望涵盖本发明的一或多个实施例的调适及变化。应理解,已以说明性方式且非限制性方式作出上文描述。所属领域的技术人员在审阅上文描述之后将明白本文中并未特定描述的上文实施例及其它实施例的组合。本发明的一或多个实施例的范围包含其中使用上文结构及方法的其它应用。因此,本发明的一或多个实施例的范围应参考所附权利要求书连同此类权利要求书所拥有的等效物的完整范围而确定。
在前述具体实施方式中,在单一实施例中出于简化本发明的目的而将一些特征组合在一起。本发明的此方法不应解释为反映以下意向:本发明的所揭示实施例必须使用多于每一权利要求中所明确叙述的特征。而是,如所附权利要求书反映,本发明标的物在于少于单一所揭示实施例的全部特征。因此,所附权利要求书由此被并入具体实施方式中,其中每一权利要求独立作为单独实施例。

Claims (31)

1.一种用于执行除法运算的方法,其包括:
使用存储于耦合到存储器阵列的感测线的若干存储器单元的第一部分中的被除数值的逻辑表示,及存储于耦合到所述存储器阵列的所述感测线的所述若干存储器单元的第二部分中的除数值的逻辑表示来执行除法运算;及
将所述除法运算的结果的商数值的逻辑表示存储于耦合到所述存储器阵列的所述感测线的所述若干存储器单元的第三部分中。
2.根据权利要求1所述的方法,其进一步包括将所述被除数值的所述逻辑表示作为位向量存储于耦合到所述感测线的所述若干存储器单元的所述第一部分中,其中所述若干存储器单元的所述第一部分中的每一存储器单元存储来自所述位向量的相应位。
3.根据权利要求1所述的方法,其进一步包括将所述除数值的所述逻辑表示作为位向量存储于耦合到所述感测线的所述若干存储器单元的所述第二部分中,其中所述若干存储器单元的所述第二部分中的每一存储器单元存储来自所述位向量的相应位。
4.根据权利要求1所述的方法,其中存储所述商数值的所述逻辑表示包括:将所述商数值的所述逻辑表示作为位向量存储于耦合到所述感测线的所述若干存储器单元的所述第三部分中,其中所述若干存储器单元的所述第三部分中的每一存储器单元存储来自所述位向量的相应位。
5.根据权利要求1所述的方法,其中所述商数值是表示所述除数值整除所述被除数值的次数的整数。
6.根据权利要求1到5中任一权利要求所述的方法,其中所述若干存储器单元的所述第一部分包括N个存储器单元,且其中执行所述除法运算包括:
将存储于所述若干存储器单元的所述第一部分的第N存储器单元中的位复制到所述若干存储器单元的第四部分的第一存储器单元中,其中所述若干存储器单元的所述第四部分存储所述除法运算的所述结果的余数值的逻辑表示;及
比较所述除数值与所述余数值。
7.根据权利要求6所述的方法,其进一步包括:如果所述除数值小于或等于所述余数值,那么:
从所述余数值减去所述除数值,且将所得值的逻辑表示作为所述余数值的所述逻辑表示存储于所述若干存储器单元的所述第四部分中;
移位及递增所述商数值的所述逻辑表示以更新所述商数值;及
移位所述余数值的所述逻辑表示以更新所述余数值。
8.根据权利要求7所述的方法,其进一步包括:如果所述除数值大于所述余数值,那么:
移位所述商数值的所述逻辑表示以更新所述商数值;及
移位所述余数值的所述逻辑表示以更新所述余数值。
9.根据权利要求8所述的方法,其进一步包括:
将存储于所述若干存储器单元的所述第一部分的第N-1存储器单元中的位复制到所述若干存储器单元的所述第四部分的所述第一存储器单元中;及
比较所述除数值与所述余数值。
10.根据权利要求8到9中任一权利要求所述的方法,其进一步包括:在将存储于所述若干存储器单元的所述第一部分的所述第N存储器单元中的所述位复制到所述若干存储器单元的所述第四部分的所述第一存储器单元中之前,将所述余数值及所述商数值初始化到0。
11.根据权利要求8到9中任一权利要求所述的方法,其进一步包括响应于所述比较产生掩码,其中所述掩码指示所述除数值是否小于或等于所述余数值,或所述除数值是否大于所述余数值。
12.一种设备,其包括:
存储器阵列的第一地址空间,其包括耦合到感测线及第一数目个选择线的第一数目个存储器单元,其中所述第一地址空间存储被除数值;
所述存储器阵列的第二地址空间,其包括耦合到所述感测线及第二数目个选择线的第二数目个存储器单元,其中所述第二地址空间存储除数值;
所述存储器阵列的第三地址空间,其包括耦合到所述感测线及第三数目个选择线的第三数目个存储器单元,其中所述第三地址空间存储余数值;及
感测电路,其经配置以:
接收所述被除数值及所述除数值;
将所述被除数值除以所述除数值;及
将所述余数值存储于所述第三地址空间中。
13.根据权利要求12所述的设备,其中耦合到所述感测线的所述第一数目个存储器单元包括耦合到所述感测线的N个存储器单元,且其中所述感测电路经配置以将所述被除数值除以所述除数值包括所述感测电路经配置以:
将存储于所述第一数目个存储器单元的所述第N存储器单元中的位复制到所述第三数目个存储器单元的第一存储器单元中;及
比较所述除数值与所述余数值。
14.根据权利要求13所述的设备,其中所述感测电路经配置以将所述余数值存储于所述第三地址空间中包括所述感测电路经配置以:
如果所述除数值小于或等于所述余数值,那么:
从所述余数值减去所述除数值,且将所得值的逻辑表示存储于所述第三数目个存储器单元中;及
移位所述所得值的所述逻辑表示以更新所述余数值,
其中所述感测电路经配置以将所述被除数值除以所述除数值进一步包括所述感测电路经配置以移位及递增存储于所述存储器阵列的第四地址空间中的商数值的逻辑表示。
15.根据权利要求14所述的设备,其中所述感测电路经配置以将所述被除数值除以所述除数值进一步包括所述感测电路经配置以在所述除数值大于所述余数值的情况下移位所述商数值的所述逻辑表示以更新所述商数值。
16.根据权利要求15所述的设备,其中所述感测电路经配置以将所述余数值存储于所述第三地址空间中包括所述感测电路经配置以在所述除数值大于所述余数值的情况下移位所述余数值的逻辑表示以更新所述余数值。
17.根据权利要求16所述的设备,其中所述感测电路经配置以将所述被除数值除以所述除数值进一步包括所述感测电路经配置以响应于所述比较产生掩码,其中所述掩码指示所述除数值是否小于或等于所述余数值,或所述除数值是否大于所述余数值。
18.根据权利要求12到17中任一权利要求所述的设备,其进一步包括所述存储器阵列的第四地址空间,所述第四地址空间包括耦合到所述感测线及第四数目个选择线的第四数目个存储器单元,其中所述第四地址空间且其中所述感测电路经配置以将所述商数值存储于所述第四数目个存储器单元中。
19.根据权利要求12到17中任一权利要求所述的设备,其中所述感测电路包括与所述存储器阵列的所述存储器单元有间距地形成的晶体管。
20.根据权利要求12到17中任一权利要求所述的设备,其中所述感测电路经配置以在无需经由感测线地址存取转移数据的情况下将所述被除数值除以所述除数值。
21.根据权利要求12到17中任一权利要求所述的设备,其中所述感测电路包括计算组件,其包含与所述第一数目个存储器单元、所述第二数目个存储器单元、所述第三数目个存储器单元及所述第四数目个存储器单元有间距的晶体管。
22.一种用于执行若干除法运算的方法,其包括:
将存储于耦合到存储器阵列的若干感测线的存储器单元的若干第一部分中的若干被除数值除以存储于耦合到所述存储器阵列的所述若干感测线的所述存储器单元的若干第二部分中的若干除数值;
将所述若干被除数值除以所述若干除数值的结果的若干商数值存储于耦合到所述存储器阵列的所述若干感测线的所述存储器单元的若干第三部分中;及
将所述若干被除数值除以所述若干除数值的所述结果的若干余数值存储于耦合到所述存储器阵列的所述若干感测线的所述存储器单元的第四部分中;
其中执行所述若干除法运算所使用的计算次数与执行所述若干除法运算中的任一者所使用的计算次数相同。
23.根据权利要求22所述的方法,其中所述存储器单元的所述若干第一部分中的每一者耦合到所述若干感测线中的不同感测线,且其中所述若干被除数值中的每一者被存储于所述若干第一部分的不同第一部分中。
24.根据权利要求23所述的方法,其中所述存储器单元的所述若干第二部分中的每一者耦合到所述若干感测线中的不同感测线,且其中所述若干除数值中的每一者被存储于所述若干第二部分的不同第二部分中。
25.根据权利要求24所述的方法,其中所述若干除法运算中的每一者包括来自所述若干被除数值的相应被除数值除以来自所述若干除数值的相应除数值,其中所述若干除法运算的相应除法运算的所述被除数值及所述除数值被存储于耦合到所述若干感测线的相同感测线的存储器单元中。
26.根据权利要求25所述的方法,其中耦合到若干感测线的存储器单元的所述若干第一部分中的每一者包括耦合到所述若干感测线中的一者的N个存储器单元,且其中将所述若干被除数值除以所述若干除数值包括:
将存储于所述若干存储器单元的所述第一部分的所述第N存储器单元中的每一位复制到所述若干存储器单元的所述第四部分的第一存储器单元中的每一者中;
其中复制存储于所述若干存储器单元的所述第一部分的所述第N存储器单元中的每一位所涉及的计算次数不会改变,无论所述若干被除数值、所述若干除数值及所述若干余数值的大小为何。
27.根据权利要求26所述的方法,其中将所述若干被除数值除以所述若干除数值包括比较所述若干除数值与所述若干余数值。
28.根据权利要求27所述的方法,其进一步包括:针对所述除数值中小于或等于来自所述若干余数值的对应余数值的每一者:
从所述对应余数值减去除数值,及将所得值的逻辑表示作为所述对应余数值的逻辑表示存储于所述若干存储器单元的对应第四部分中;
移位及递增对应商数值的逻辑表示以更新所述对应商数值;
移位所述对应余数值的所述逻辑表示以更新所述对应余数值。
29.根据权利要求28所述的方法,其进一步包括:针对所述除数值中大于来自所述若干余数值的对应余数值的每一者:
移位所述对应商数值的所述逻辑表示以更新所述对应商数值;及
移位所述对应余数值的所述逻辑表示以更新所述对应余数值。
30.根据权利要求29所述的方法,其进一步包括:
将存储于所述若干存储器单元的所述第一部分的所述第N-1存储器单元中的每一位复制到所述若干存储器单元的所述第四部分的所述第一存储器单元中的每一者中;及
比较所述若干除数值与所述若干余数值。
31.根据权利要求30所述的方法,其进一步包括:在将存储于所述若干存储器单元的所述第一部分的所述第N存储器单元中的每一位复制到所述若干存储器单元的所述第四部分的所述第一存储器单元中之前,将所述若干余数值及所述商数值初始化到0。
CN201480067273.6A 2013-11-08 2014-11-04 用于存储器的除法运算 Active CN105814637B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/075,539 US9430191B2 (en) 2013-11-08 2013-11-08 Division operations for memory
US14/075,539 2013-11-08
PCT/US2014/063831 WO2015069628A1 (en) 2013-11-08 2014-11-04 Division operations for memory

Publications (2)

Publication Number Publication Date
CN105814637A true CN105814637A (zh) 2016-07-27
CN105814637B CN105814637B (zh) 2018-06-26

Family

ID=53041991

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480067273.6A Active CN105814637B (zh) 2013-11-08 2014-11-04 用于存储器的除法运算

Country Status (7)

Country Link
US (3) US9430191B2 (zh)
EP (1) EP3066665B1 (zh)
JP (1) JP6216878B2 (zh)
KR (1) KR101862956B1 (zh)
CN (1) CN105814637B (zh)
TW (1) TWI541718B (zh)
WO (1) WO2015069628A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109003635A (zh) * 2017-06-07 2018-12-14 美光科技公司 数据复制

Families Citing this family (137)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9158667B2 (en) 2013-03-04 2015-10-13 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
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
US9934856B2 (en) 2014-03-31 2018-04-03 Micron Technology, Inc. Apparatuses and methods for comparing data patterns in memory
US9449674B2 (en) 2014-06-05 2016-09-20 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9711207B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9779019B2 (en) 2014-06-05 2017-10-03 Micron Technology, Inc. Data storage layout
US10074407B2 (en) 2014-06-05 2018-09-11 Micron Technology, Inc. Apparatuses and methods for performing invert operations using sensing circuitry
US9496023B2 (en) 2014-06-05 2016-11-15 Micron Technology, Inc. Comparison operations on logical representations of values in memory
US9786335B2 (en) 2014-06-05 2017-10-10 Micron Technology, Inc. Apparatuses and methods for 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
US9455020B2 (en) 2014-06-05 2016-09-27 Micron Technology, Inc. Apparatuses and methods for performing an exclusive or operation using sensing circuitry
US9711206B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9910787B2 (en) 2014-06-05 2018-03-06 Micron Technology, Inc. Virtual address table
US9830999B2 (en) 2014-06-05 2017-11-28 Micron Technology, Inc. Comparison operations in memory
US9740607B2 (en) 2014-09-03 2017-08-22 Micron Technology, Inc. Swap operations in memory
US9898252B2 (en) 2014-09-03 2018-02-20 Micron Technology, Inc. Multiplication operations in memory
US10068652B2 (en) 2014-09-03 2018-09-04 Micron Technology, Inc. Apparatuses and methods for determining population count
US9904515B2 (en) 2014-09-03 2018-02-27 Micron Technology, Inc. Multiplication 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
US9747961B2 (en) 2014-09-03 2017-08-29 Micron Technology, Inc. Division operations in memory
US9589602B2 (en) 2014-09-03 2017-03-07 Micron Technology, Inc. Comparison operations in memory
US9836218B2 (en) 2014-10-03 2017-12-05 Micron Technology, Inc. Computing reduction and prefix sum operations in memory
US9940026B2 (en) 2014-10-03 2018-04-10 Micron Technology, Inc. Multidimensional contiguous memory allocation
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
US10061590B2 (en) 2015-01-07 2018-08-28 Micron Technology, Inc. Generating and executing a control flow
US10032493B2 (en) 2015-01-07 2018-07-24 Micron Technology, Inc. Longest element length determination in memory
US9583163B2 (en) 2015-02-03 2017-02-28 Micron Technology, Inc. Loop structure for operations in memory
WO2016126472A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for scatter and gather
CN107408404B (zh) 2015-02-06 2021-02-12 美光科技公司 用于存储器装置的设备及方法以作为程序指令的存储
WO2016126474A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for parallel writing to multiple memory device locations
WO2016144724A1 (en) 2015-03-10 2016-09-15 Micron Technology, Inc. Apparatuses and methods for shift decisions
US9898253B2 (en) * 2015-03-11 2018-02-20 Micron Technology, Inc. Division operations on variable length elements in memory
US9741399B2 (en) 2015-03-11 2017-08-22 Micron Technology, Inc. Data shift by elements of a vector in memory
US10365851B2 (en) 2015-03-12 2019-07-30 Micron Technology, Inc. Apparatuses and methods for data movement
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
US10073786B2 (en) 2015-05-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for compute enabled cache
US9704541B2 (en) 2015-06-12 2017-07-11 Micron Technology, Inc. Simulating access lines
US9921777B2 (en) 2015-06-22 2018-03-20 Micron Technology, Inc. Apparatuses and methods for data transfer from sensing circuitry to a controller
US9996479B2 (en) 2015-08-17 2018-06-12 Micron Technology, Inc. Encryption of executables in computational memory
US9905276B2 (en) 2015-12-21 2018-02-27 Micron Technology, Inc. Control of sensing components in association with performing operations
US9952925B2 (en) * 2016-01-06 2018-04-24 Micron Technology, Inc. Error code calculation on sensing circuitry
US10048888B2 (en) 2016-02-10 2018-08-14 Micron Technology, Inc. Apparatuses and methods for partitioned parallel data movement
US9892767B2 (en) 2016-02-12 2018-02-13 Micron Technology, Inc. Data gathering in memory
US9971541B2 (en) 2016-02-17 2018-05-15 Micron Technology, Inc. Apparatuses and methods for data movement
US10956439B2 (en) 2016-02-19 2021-03-23 Micron Technology, Inc. Data transfer with a bit vector operation device
US9899070B2 (en) 2016-02-19 2018-02-20 Micron Technology, Inc. Modified decode for corner turn
US9697876B1 (en) 2016-03-01 2017-07-04 Micron Technology, Inc. Vertical bit vector shift in memory
US9997232B2 (en) 2016-03-10 2018-06-12 Micron Technology, Inc. Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations
US10262721B2 (en) 2016-03-10 2019-04-16 Micron Technology, Inc. Apparatuses and methods for cache invalidate
US10379772B2 (en) 2016-03-16 2019-08-13 Micron Technology, Inc. Apparatuses and methods for operations using compressed and decompressed data
US9910637B2 (en) * 2016-03-17 2018-03-06 Micron Technology, Inc. Signed division in memory
US10388393B2 (en) 2016-03-22 2019-08-20 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US11074988B2 (en) 2016-03-22 2021-07-27 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US10120740B2 (en) 2016-03-22 2018-11-06 Micron Technology, Inc. Apparatus and methods for debugging on a memory device
US10977033B2 (en) 2016-03-25 2021-04-13 Micron Technology, Inc. Mask patterns generated in memory from seed vectors
US10474581B2 (en) 2016-03-25 2019-11-12 Micron Technology, Inc. Apparatuses and methods for cache operations
US10430244B2 (en) 2016-03-28 2019-10-01 Micron Technology, Inc. Apparatuses and methods to determine timing of operations
US10074416B2 (en) 2016-03-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for data movement
US10453502B2 (en) 2016-04-04 2019-10-22 Micron Technology, Inc. Memory bank power coordination including concurrently performing a memory operation in a selected number of memory regions
US10607665B2 (en) 2016-04-07 2020-03-31 Micron Technology, Inc. Span mask generation
US9818459B2 (en) 2016-04-19 2017-11-14 Micron Technology, Inc. Invert operations using sensing circuitry
US9659605B1 (en) 2016-04-20 2017-05-23 Micron Technology, Inc. Apparatuses and methods for performing corner turn operations using sensing circuitry
US10153008B2 (en) 2016-04-20 2018-12-11 Micron Technology, Inc. Apparatuses and methods for performing corner turn operations using sensing circuitry
US10042608B2 (en) 2016-05-11 2018-08-07 Micron Technology, Inc. Signed division in memory
US9659610B1 (en) 2016-05-18 2017-05-23 Micron Technology, Inc. Apparatuses and methods for shifting data
US10049707B2 (en) 2016-06-03 2018-08-14 Micron Technology, Inc. Shifting data
US10387046B2 (en) 2016-06-22 2019-08-20 Micron Technology, Inc. Bank to bank data transfer
US10037785B2 (en) 2016-07-08 2018-07-31 Micron Technology, Inc. Scan chain operation in sensing circuitry
US10388360B2 (en) 2016-07-19 2019-08-20 Micron Technology, Inc. Utilization of data stored in an edge section of an array
US10733089B2 (en) 2016-07-20 2020-08-04 Micron Technology, Inc. Apparatuses and methods for write address tracking
US10387299B2 (en) 2016-07-20 2019-08-20 Micron Technology, Inc. Apparatuses and methods for transferring data
US9972367B2 (en) 2016-07-21 2018-05-15 Micron Technology, Inc. Shifting data in sensing circuitry
US9767864B1 (en) 2016-07-21 2017-09-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in a sensing circuitry element
US10303632B2 (en) 2016-07-26 2019-05-28 Micron Technology, Inc. Accessing status information
US10468087B2 (en) 2016-07-28 2019-11-05 Micron Technology, Inc. Apparatuses and methods for operations in a self-refresh state
US9990181B2 (en) 2016-08-03 2018-06-05 Micron Technology, Inc. Apparatuses and methods for random number generation
US11029951B2 (en) 2016-08-15 2021-06-08 Micron Technology, Inc. Smallest or largest value element determination
US10606587B2 (en) 2016-08-24 2020-03-31 Micron Technology, Inc. Apparatus and methods related to microcode instructions indicating instruction types
US10466928B2 (en) 2016-09-15 2019-11-05 Micron Technology, Inc. Updating a register in memory
US10387058B2 (en) 2016-09-29 2019-08-20 Micron Technology, Inc. Apparatuses and methods to change data category values
US10014034B2 (en) 2016-10-06 2018-07-03 Micron Technology, Inc. Shifting data in sensing circuitry
US10529409B2 (en) 2016-10-13 2020-01-07 Micron Technology, Inc. Apparatuses and methods to perform logical operations using sensing circuitry
US9805772B1 (en) 2016-10-20 2017-10-31 Micron Technology, Inc. Apparatuses and methods to selectively perform logical operations
CN207637499U (zh) 2016-11-08 2018-07-20 美光科技公司 用于形成在存储器单元阵列上方的计算组件的设备
US10423353B2 (en) 2016-11-11 2019-09-24 Micron Technology, Inc. Apparatuses and methods for memory alignment
US9761300B1 (en) 2016-11-22 2017-09-12 Micron Technology, Inc. Data shift apparatuses and methods
US10402340B2 (en) 2017-02-21 2019-09-03 Micron Technology, Inc. Memory array page table walk
US10403352B2 (en) 2017-02-22 2019-09-03 Micron Technology, Inc. Apparatuses and methods for compute in data path
US10268389B2 (en) 2017-02-22 2019-04-23 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10838899B2 (en) 2017-03-21 2020-11-17 Micron Technology, Inc. Apparatuses and methods for in-memory data switching networks
US10185674B2 (en) 2017-03-22 2019-01-22 Micron Technology, Inc. Apparatus and methods for in data path compute operations
US11222260B2 (en) 2017-03-22 2022-01-11 Micron Technology, Inc. Apparatuses and methods for operating neural networks
US10049721B1 (en) 2017-03-27 2018-08-14 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10147467B2 (en) 2017-04-17 2018-12-04 Micron Technology, Inc. Element value comparison in memory
US10043570B1 (en) 2017-04-17 2018-08-07 Micron Technology, Inc. Signed element compare in memory
US9997212B1 (en) 2017-04-24 2018-06-12 Micron Technology, Inc. Accessing data in memory
US10942843B2 (en) 2017-04-25 2021-03-09 Micron Technology, Inc. Storing data elements of different lengths in respective adjacent rows or columns according to memory shapes
US10236038B2 (en) 2017-05-15 2019-03-19 Micron Technology, Inc. Bank to bank data transfer
US10068664B1 (en) 2017-05-19 2018-09-04 Micron Technology, Inc. Column repair in memory
US10013197B1 (en) 2017-06-01 2018-07-03 Micron Technology, Inc. Shift skip
US10262701B2 (en) 2017-06-07 2019-04-16 Micron Technology, Inc. Data transfer between subarrays in memory
US10318168B2 (en) 2017-06-19 2019-06-11 Micron Technology, Inc. Apparatuses and methods for simultaneous in data path compute operations
US10162005B1 (en) 2017-08-09 2018-12-25 Micron Technology, Inc. Scan chain operations
US10534553B2 (en) 2017-08-30 2020-01-14 Micron Technology, Inc. Memory array accessibility
US10741239B2 (en) 2017-08-31 2020-08-11 Micron Technology, Inc. Processing in memory device including a row address strobe manager
US10416927B2 (en) 2017-08-31 2019-09-17 Micron Technology, Inc. Processing in memory
US10346092B2 (en) 2017-08-31 2019-07-09 Micron Technology, Inc. Apparatuses and methods for in-memory operations using timing circuitry
US10409739B2 (en) 2017-10-24 2019-09-10 Micron Technology, Inc. Command selection policy
US10522210B2 (en) 2017-12-14 2019-12-31 Micron Technology, Inc. Apparatuses and methods for subarray addressing
US10332586B1 (en) 2017-12-19 2019-06-25 Micron Technology, Inc. Apparatuses and methods for subrow addressing
US10614875B2 (en) 2018-01-30 2020-04-07 Micron Technology, Inc. Logical operations using memory cells
US11194477B2 (en) 2018-01-31 2021-12-07 Micron Technology, Inc. Determination of a match between data values stored by three or more arrays
US10437557B2 (en) 2018-01-31 2019-10-08 Micron Technology, Inc. Determination of a match between data values stored by several arrays
US10725696B2 (en) 2018-04-12 2020-07-28 Micron Technology, Inc. Command selection policy with read priority
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
US11184446B2 (en) 2018-12-05 2021-11-23 Micron Technology, Inc. Methods and apparatus for incentivizing participation in fog networks
CN110175017B (zh) * 2019-05-23 2021-07-02 浙江大学 一种基于rram的乘法器及其操作方法
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1561479A (zh) * 2001-09-28 2005-01-05 英特尔公司 蒙哥马利乘法器处理元件中的部件精简
US20050285862A1 (en) * 2004-06-09 2005-12-29 Renesas Technology Corp. Semiconductor device and semiconductor signal processing apparatus
US20070180006A1 (en) * 2006-01-31 2007-08-02 Renesas Technology Corp. Parallel operational processing device
US20080137388A1 (en) * 2006-12-08 2008-06-12 Krishnan Rengarajan S Novel match mismatch emulation scheme for an addressed location in a cam

Family Cites Families (269)

* Cited by examiner, † Cited by third party
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
EP0354265B1 (de) * 1988-08-11 1993-12-29 Siemens Aktiengesellschaft Integrierte Halbleiterschaltung mit einem Speicherbereich
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
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 삼성전자 주식회사 반도체 메모리 장치
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
US5485373A (en) 1993-03-25 1996-01-16 Taligent, Inc. Language-sensitive text searching system with modified Boyer-Moore process
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 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
US6173305B1 (en) 1993-11-30 2001-01-09 Texas Instruments Incorporated Division by iteration employing subtraction and conditional source selection of a prior difference or a left shifted remainder
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
US6385634B1 (en) 1995-08-31 2002-05-07 Intel Corporation Method for performing multiply-add operations on packed data
JP2812262B2 (ja) 1995-08-31 1998-10-22 日本電気株式会社 連想記憶装置
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
US6208544B1 (en) 1999-09-09 2001-03-27 Harris Corporation Content addressable memory cell providing simultaneous read and compare capability
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 富士通セミコンダクター株式会社 半導体記憶装置及びその制御方法
US6687175B1 (en) 2000-02-04 2004-02-03 Renesas Technology Corporation 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
JP2004502267A (ja) 2000-07-07 2004-01-22 モサイド・テクノロジーズ・インコーポレイテッド アクセス待ち時間が均一な高速dramアーキテクチャ
US6466499B1 (en) 2000-07-11 2002-10-15 Micron Technology, Inc. DRAM sense amplifier having pre-charged transistor body nodes
US7302582B2 (en) 2000-08-21 2007-11-27 United States Postal Service 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
US6807614B2 (en) 2001-07-19 2004-10-19 Shine C. Chung Method and apparatus for using smart memories in computing
US7546438B2 (en) 2001-07-19 2009-06-09 Chung Shine C Algorithm mapping, specialized instructions and architecture features for smart memory 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
JP4513305B2 (ja) * 2002-10-15 2010-07-28 ソニー株式会社 メモリ装置
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
US6731542B1 (en) 2002-12-05 2004-05-04 Advanced Micro Devices, Inc. Circuit for accurate memory read operations
KR100546307B1 (ko) 2002-12-05 2006-01-26 삼성전자주식회사 글로벌 입출력라인을 프리차지 및/또는 이퀄라이징하기위한 프리차지 회로를 구비하는 반도체 장치 및프리차지 및/또는 이퀄라이즈하는 트랜지스터의 레이아웃
US6888372B1 (en) 2002-12-20 2005-05-03 Altera Corporation Programmable logic device with soft multiplier
WO2004059651A2 (en) 2002-12-27 2004-07-15 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 ローム株式会社 演算機能付き記憶装置および演算記憶方法
ATE366985T1 (de) 2003-09-04 2007-08-15 Koninkl Philips Electronics Nv Integrierte schaltung und verfahren zum cache- umabbilden
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
US7401281B2 (en) 2004-01-29 2008-07-15 International Business Machines Corporation Remote BIST high speed test and redundancy calculation
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
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
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 삼성전자주식회사 메모리 장치 및 메모리 그 동작 방법
JP4804479B2 (ja) 2005-12-13 2011-11-02 スパンション エルエルシー 半導体装置およびその制御方法
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
US7400532B2 (en) 2006-02-16 2008-07-15 Micron Technology, Inc. Programming method to reduce gate coupling interference for non-volatile memory
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
GB2444790B (en) * 2006-12-16 2011-08-03 David William Fitzmaurice Binary integer divider using numerically associative memory
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
WO2009052525A1 (en) 2007-10-19 2009-04-23 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 ルネサスエレクトロニクス株式会社 半導体信号処理装置
US20090254694A1 (en) 2008-04-02 2009-10-08 Zikbit Ltd. Memory device with integrated parallel processing
US8332580B2 (en) 2008-04-02 2012-12-11 Zikbit Ltd. System, method and apparatus for memory with embedded associative section for computations
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 삼성전자 주식회사 개선된 로컬 입출력라인 프리차아지 스킴을 갖는 반도체 메모리 장치
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
US8238173B2 (en) 2009-07-16 2012-08-07 Zikbit Ltd Using storage cells to perform computation
US9076527B2 (en) 2009-07-16 2015-07-07 Mikamonu Group Ltd. Charge sharing in a TCAM array
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
US9477636B2 (en) 2009-10-21 2016-10-25 Micron Technology, Inc. Memory having internal processors and data communication methods in memory
WO2011048522A2 (en) 2009-10-21 2011-04-28 Zikbit Ltd. 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
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
KR20140085468A (ko) 2011-10-28 2014-07-07 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 행 시프팅 시프트가능 메모리
US8891297B2 (en) 2011-11-01 2014-11-18 Micron Technology, Inc. Memory cell sensing
KR101321481B1 (ko) 2011-11-04 2013-10-28 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이를 위한 테스트 회로
US9830158B2 (en) 2011-11-04 2017-11-28 Nvidia Corporation Speculative execution and rollback
KR20130052971A (ko) 2011-11-14 2013-05-23 삼성전자주식회사 비휘발성 메모리 장치의 동작 방법
WO2013078085A1 (en) 2011-11-22 2013-05-30 Mips Technologies, Inc. Processor with kernel mode access to user space virtual addresses
US9665371B2 (en) 2011-11-30 2017-05-30 Intel Corporation Providing vector horizontal compare functionality within a vector register
CN104011657B (zh) 2011-12-22 2016-10-12 英特尔公司 用于向量计算和累计的装置和方法
KR20130072869A (ko) 2011-12-22 2013-07-02 에스케이하이닉스 주식회사 프리차지 회로 및 비휘발성 메모리 장치
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
US9424031B2 (en) 2013-03-13 2016-08-23 Intel Corporation Techniques for enabling bit-parallel wide string matching with a SIMD register
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
US9430191B2 (en) * 2013-11-08 2016-08-30 Micron Technology, Inc. Division operations for memory
US10838865B2 (en) 2014-05-08 2020-11-17 Micron Technology, Inc. Stacked memory device system interconnect directory-based cache coherence methodology
KR101887797B1 (ko) 2014-05-08 2018-09-10 마이크론 테크놀로지, 인크. 메모리 내 가벼운 일관성
US9747961B2 (en) * 2014-09-03 2017-08-29 Micron Technology, Inc. Division operations in memory
US9898253B2 (en) * 2015-03-11 2018-02-20 Micron Technology, Inc. Division operations on variable length elements in memory
US10073786B2 (en) * 2015-05-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for compute enabled cache
US9910637B2 (en) * 2016-03-17 2018-03-06 Micron Technology, Inc. Signed division in memory
US10042608B2 (en) * 2016-05-11 2018-08-07 Micron Technology, Inc. Signed division in memory

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1561479A (zh) * 2001-09-28 2005-01-05 英特尔公司 蒙哥马利乘法器处理元件中的部件精简
US20050285862A1 (en) * 2004-06-09 2005-12-29 Renesas Technology Corp. Semiconductor device and semiconductor signal processing apparatus
US20070180006A1 (en) * 2006-01-31 2007-08-02 Renesas Technology Corp. Parallel operational processing device
US20080137388A1 (en) * 2006-12-08 2008-06-12 Krishnan Rengarajan S Novel match mismatch emulation scheme for an addressed location in a cam

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109003635A (zh) * 2017-06-07 2018-12-14 美光科技公司 数据复制
CN109003635B (zh) * 2017-06-07 2022-08-02 美光科技公司 用于数据复制的设备及方法

Also Published As

Publication number Publication date
US10579336B2 (en) 2020-03-03
US10055196B2 (en) 2018-08-21
CN105814637B (zh) 2018-06-26
JP6216878B2 (ja) 2017-10-18
US20160306609A1 (en) 2016-10-20
US20150134713A1 (en) 2015-05-14
JP2017503229A (ja) 2017-01-26
KR101862956B1 (ko) 2018-05-30
TWI541718B (zh) 2016-07-11
KR20160082590A (ko) 2016-07-08
EP3066665B1 (en) 2018-10-24
US20180357042A1 (en) 2018-12-13
EP3066665A4 (en) 2017-07-05
EP3066665A1 (en) 2016-09-14
WO2015069628A1 (en) 2015-05-14
US9430191B2 (en) 2016-08-30
TW201531935A (zh) 2015-08-16

Similar Documents

Publication Publication Date Title
CN105814637A (zh) 用于存储器的除法运算
CN107004433B (zh) 用于比较值的方法和设备
US10713011B2 (en) Multiplication operations in memory
US10984841B2 (en) Longest element length determination in memory
US9940981B2 (en) Division operations in memory
US9940985B2 (en) Comparison operations in memory
US9898253B2 (en) Division operations on variable length elements in memory
CN106605204B (zh) 用于确定总体计数的设备及方法
US10147480B2 (en) Sort operation in memory
US10540144B2 (en) Signed division in memory
CN106471582B (zh) 用于使用感测电路来执行逻辑操作的设备及方法
CN114391135A (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