CN108541313A - 虚拟寄存器堆 - Google Patents
虚拟寄存器堆 Download PDFInfo
- Publication number
- CN108541313A CN108541313A CN201680024241.7A CN201680024241A CN108541313A CN 108541313 A CN108541313 A CN 108541313A CN 201680024241 A CN201680024241 A CN 201680024241A CN 108541313 A CN108541313 A CN 108541313A
- Authority
- CN
- China
- Prior art keywords
- virtual
- memory device
- register
- memory
- host
- 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
Links
Classifications
-
- 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
- G06F12/109—Address translation for multiple virtual address spaces, e.g. segmentation
-
- 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
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/441—Register allocation; Assignment of physical memory space to logical memory space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
Abstract
本发明涉及一种虚拟寄存器堆。源代码可经编译以针对经受逻辑操作的数据包含对虚拟寄存器堆的参考。可在运行时间将所述参考解参考以根据所述虚拟寄存器堆获得存储器装置元件的物理地址。可在存储器装置中对存储于所述存储器装置元件中的数据执行所述逻辑操作。
Description
技术领域
本发明一般来说涉及半导体存储器及方法,且更特定来说,涉及虚拟寄存器堆。
背景技术
存储器装置通常提供为计算装置或其它电子装置中的内部半导体集成电路。存在许多不同类型的存储器,包含易失性及非易失性存储器。易失性存储器可需要电力以维持其数据(例如,用户数据、错误数据等),且包含随机存取存储器(RAM)、动态随机存取存储器(DRAM)及同步动态随机存取存储器(SDRAM)以及其它。非易失性存储器可通过在未被供电时保留所存储数据而提供持久性数据,且可包含NAND快闪存储器、NOR快闪存储器、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、可擦除可编程ROM(EPROM)及电阻可变存储器,例如相变随机存取存储器(PCRAM)、电阻式随机存取存储器(RRAM)及磁阻式随机存取存储器(MRAM)(例如自旋扭矩转移随机存取存储器(STT RAM))以及其它。
计算系统通常包含若干个处理资源(例如,一或多个处理器),所述处理资源可检索并执行指令且将经执行指令的结果存储到适合位置。处理器可包括若干个功能单元(例如,在本文中称为功能单元电路(FUC)),例如算术逻辑单元(ALU)电路、浮动点单元(FPU)电路及/或组合逻辑区块,举例来说,所述功能单元可执行指令以对数据(例如,一或多个运算元)执行逻辑操作(例如AND、OR、NOT、NAND、NOR及XOR逻辑操作)。
可在将指令提供到功能单元电路以用于执行中涉及计算系统中的若干个组件。举例来说,所述指令可由例如控制器及/或主机处理器的处理资源产生。数据(例如,将对其执行指令以执行逻辑操作的运算元)可经存储于可由FUC存取的存储器阵列中。在FUC开始对数据执行指令之前,可从存储器阵列检索指令及/或数据并对其进行定序及/或缓冲。此外,由于可在一个或多个时钟循环中通过FUC执行不同类型的操作,因此还可对操作及/或数据的中间结果进行定序及/或缓冲。在许多实例中,处理资源(例如,处理器及/或相关联FUC)可在存储器阵列外部,且数据可经存取(例如,经由处理资源与存储器阵列之间的总线)以执行指令。数据可经由总线从存储器阵列移动到在存储器阵列外部的寄存器。
寄存器堆是中央处理单元(CPU)中的处理器寄存器阵列。举例来说,可通过静态随机存取存储器(SRAM)而实施基于集成电路的寄存器堆。CPU的指令集架构可界定用于在存储器与FUC之间集结数据的一组寄存器。寄存器堆可对编程器可见,此与可不对编程器可见的高速缓冲存储器形成对照。
附图说明
图1是根据本发明的若干个实施例的呈包含至少一个存储器系统的计算系统的形式的设备的框图。
图2是根据本发明的若干个实施例的存储器装置的一部分的示意图。
图3是图解说明根据本发明的若干个实施例的虚拟寄存器堆存储器翻译的框图。
具体实施方式
鉴于现代计算机架构的复杂性,软件编程器及软件工具链(例如,编译器、调试器等)可在从目标平台提取高效性能时具有较大难度。添加存储器中处理(PIM)装置可进一步使架构复杂化。大多数现代计算机架构使用寄存器-存储器技术,其中操作在两个单独域中执行。逻辑操作(例如,算术、流控制及组合操作)一般在若干个寄存器堆上执行。存储器操作(例如,下载、存储等)一般在存储器装置上执行。寄存器-存储器架构中的指令利用寄存器索引或存储器地址来指示如何/在何处执行操作。
PIM计算架构及/或装置可被分类为计算架构分类法中的存储器-存储器装置。此意味着逻辑操作及存储器操作两者均在存储器装置原位上执行。存储器-存储器架构中的指令使用物理地址来指示如何/在何处执行操作。
现代应用程序及操作系统使用重新定位及虚拟寻址的概念,此意味着由于实际寻址被虚拟化的事实,因此可将应用程序下载或重新定位到不同物理存储器空间中。应用程序及操作系统驻存于虚拟地址空间中。当进行存储器请求时,硬件及系统架构将这些虚拟地址解参考到其物理地址。然而,包含本身依赖于物理寻址的PIM装置的使用的任何系统架构与虚拟化存储器的概念冲突。
本发明的一些实施例可公开由使用寄存器-存储器层的PIM装置所提供的低级存储器功能性。此层在本文中称为虚拟寄存器堆。提供对PIM装置进行寄存器-存储器存取的能力会显著降低原本将经由优化编译器在用于PIM装置的应用程序中使用的定制水平。否则,将针对包含于系统中的每一不同种类的一或若干PIM装置而定制应用程序。向优化编译器及运行时间系统提供以显现为寄存器-存储器架构的架构为目标的能力可大大简化使用PIM装置的实施方案。使PIM装置的物理寻址机制抽象化使得虚拟寻址可充分存在而无冲突可对于将PIM装置与一般在寄存器-存储器架构上进行操作的系统集成在一起为有益的。
本发明涉及虚拟寄存器堆。源代码可经编译以针对经受逻辑操作的数据包含对虚拟寄存器堆的参考。所述参考可在运行时间被解参考以根据虚拟寄存器堆获得存储器装置元件的物理地址。可在存储器装置中对存储于存储器装置元件中的数据执行逻辑操作。
在本发明的以下详细描述中,参考形成本发明的一部分的所附图式,且图式中以图解说明的方式展示可如何实践本发明的若干个实施例。充分详细地描述这些实施例以使所属领域的技术人员能够实践本发明的实施例,且应理解,可利用其它实施例且可在不背离本发明的范围的情况下做出过程、电及/或结构改变。如本文中所使用,特定来说关于图式中的参考编号的指定符“M”及“N”指示可包含如此指定的若干个特定特征。如本文中所使用,“若干个”特定事物可是指此类事物中的一或多者(例如,若干个存储器装置可是指一或多个存储器装置)。如本文中所使用,术语“第一”及“第二”用于在一个特征与另一特征之间进行区分且未必暗指如此指定的特征之间的次序。
本文中的各图遵循其中第一个数字或前几个数字对应于图式的图编号且其余数字识别图式中的元件或组件的编号惯例。可通过使用类似数字来识别不同图之间的类似元件或组件。举例来说,110可指代图1中的元件“10”,且类似元件可在图2中指代为210。一个图中的多个相似元件可用后续接着连字符及另一数字或字母的参考编号来指代。举例来说,240-1可指代图2中的元件20-1且240-N可指代元件40-N,其可与元件240-1相似。可一般在无需连字符及额外数字或字母的情况下指代此类相似元件。举例来说,元件240-1、…、240-N可一般指代为440。如将了解,可添加、交换及/或消除在本文中的各种实施例中所展示的元件以便提供本发明的若干个额外实施例。另外,如将了解,各图中所提供的元件的比例及相对标度打算图解说明本发明的特定实施例且不应在限制意义上进行理解。
图1是根据本发明的若干个实施例的呈包含至少一个存储器系统104的计算系统100的形式的设备的框图。如本文中所使用,主机102、存储器系统104、存储器装置110、存储器阵列111及/或感测电路124还可单独地被视为“设备”。
计算系统100可包含耦合到存储器系统104的主机102,所述存储器系统包含存储器装置110(例如,包含存储器阵列111及/或感测电路124)。主机102可为主机系统,例如个人膝上型计算机、桌上型计算机、数码相机、移动电话或存储器读卡器以及各种其它类型的主机。主机102可包含系统主板及/或底板且可包含若干个处理资源(例如,一或多个处理器、微处理器或者一些其它类型的控制电路),例如中央处理单元(CPU)106。CPU 106可经由存储器总线116耦合到次要存储装置114及主要存储器112。次要存储装置114可为不可直接由CPU 106存取的存储装置或其它媒体(例如硬盘驱动器、固态驱动器、光盘驱动器),且可为非易失性存储器。主要存储器112可直接由CPU 106存取。主要存储器112可为易失性存储器,例如DRAM。存储器总线116可与控制总线136及I/O总线138相似,但用于CPU 106与主要存储器112之间的通信而非用于主机102与存储器系统104之间的通信。CPU 106可包含耦合到若干个寄存器120及高速缓冲存储器122的逻辑单元118。高速缓冲存储器122可为相对较快寄存器120与相对较慢主要存储器112之间的中间级。将由CPU 106进行操作的数据可在被放置于寄存器120中之前被复制到高速缓冲存储器122,其中操作可受逻辑单元118影响。虽然未具体图解说明,但高速缓冲存储器122可为多电平阶层式高速缓冲存储器。
计算系统100可包含单独集成电路或主机102及存储器系统104两者均可在同一集成电路上。举例来说,计算系统100可为服务器系统及/或高性能计算系统及/或其一部分。虽然图1中所展示的实例图解说明具有冯诺依曼(Von Neumann)架构的系统,但本发明的实施例也可以非冯诺依曼架构(例如,图灵机(Turing machine))实施,所述非冯诺依曼架构可不包含通常与冯诺依曼架构相关联的一或多个组件(例如,CPU、ALU等)。
为清楚起见,计算系统100已经简化以着重于与本发明特定相关的特征上。举例来说,存储器阵列111可为混合存储器立方体(HMC)、存储器中处理随机存取存储器(PIMRAM)阵列、DRAM阵列、SRAM阵列、STT RAM阵列、PCRAM阵列、TRAM阵列、RRAM阵列、NAND快闪阵列及/或NOR快闪阵列。存储器阵列111可包括存储器单元,所述存储器单元经布置成通过存取线(其可在本文中称为字线或选择线)耦合的行及通过感测线(其可在本文中称为数字线或数据线)耦合的列。虽然图1中展示单个存储器装置110,但实施例并不如此受限制。举例来说,存储器系统104可包含若干个存储器装置110(例如,若干个DRAM单元组)。
存储器系统104可包含地址电路126以锁存经由I/O总线138(例如,数据总线)通过I/O电路130提供的地址信号。地址信号可由行解码器128及列解码器134接收并解码以存取存储器装置110。可通过使用感测电路124感测感测线上的电压及/或电流改变而从存储器阵列111读取数据。感测电路124可从存储器阵列111读取并锁存数据页(例如,行)。I/O电路130可用于经由I/O总线138与主机102进行双向数据通信。写入电路132可用于将数据写入到存储器装置110。
控制器108可解码由控制总线136从主机102提供的信号。这些信号可包含用于控制对存储器装置110执行的操作(包含数据读取、数据写入及数据擦除操作)的芯片启用信号、写入启用信号及地址锁存信号。信号还可用于控制对存储器装置110执行的逻辑操作,包含算术、流控制及组合操作以及其它。在各种实施例中,控制器108负责执行来自主机102的指令。控制器108可为状态机、定序器、处理器及/或其它控制电路。
下文与图2相关联地进一步描述感测电路124的实例。举例来说,在若干个实施例中,感测电路124可包括若干个读出放大器及若干个计算组件,所述若干个计算组件可包括锁存器,所述锁存器用作累加器且可用于执行逻辑操作(例如,对与互补感测线相关联的数据)。逻辑操作可包含布尔(Boolean)操作(例如,AND、OR、NOR、XOR等)、用以执行其它数学操作的布尔操作组合以及非布尔操作。在若干个实施例中,感测电路124可用于在不经由感测线地址存取进行传送的情况下(例如,在不发射列解码信号的情况下)使用存储于存储器阵列111中的数据作为输入执行逻辑操作且将逻辑操作的结果往回存储到存储器阵列111。如此,替代及/或除了通过在感测电路124外部的处理资源(例如,通过主机CPU 106及/或位于存储器系统104上(例如位于控制器108上或别处)的例如ALU电路等其它处理电路)执行之外,逻辑操作可使用感测电路124来执行。
在各种先前方法中,举例来说,与逻辑操作相关联的数据将经由感测电路从存储器被读取并提供到与主机CPU 106相关联的寄存器120。主机CPU 106的逻辑单元118将使用寄存器120中的来自存储器阵列111的数据(其可称为运算元或输入)来执行逻辑操作且可经由局部I/O线将结果往回传送到存储器阵列111。相比来说,在本发明的若干个实施例中,感测电路124可经配置以对存储于存储器阵列111中的存储器单元中的数据执行逻辑操作并在不启用耦合到感测电路的局部I/O线且不使用主机CPU 106的寄存器120的情况下将结果往回存储到阵列111。
如此,在若干个实施例中,在存储器阵列111及感测电路124外部的主机CPU 106的寄存器126及/或逻辑单元118可不需要执行逻辑操作,这是因为感测电路124可经操作以使用存储器阵列111的地址空间来执行逻辑操作。另外,可在不使用外部处理资源的情况下执行逻辑操作。
主机102可配置有操作系统。主机102可耦合到存储器装置110(例如,经由控制总线136及/或I/O总线138)。操作系统是可执行指令(软件),所述可执行指令管理硬件资源且提供服务在操作系统上运行的其它可执行指令(应用程序)。操作系统可实施虚拟存储器系统。
根据本发明,CPU 106可执行指令以在主机102的主要存储器112中界定具有足以容纳虚拟寄存器堆(VRF)117的备份存储的空间的缓冲器。指令可经执行以将缓冲器在逻辑上分成共同地界定虚拟寄存器堆117的若干个虚拟向量寄存器(VVR)119、若干个虚拟标量寄存器(VSR)121及若干个虚拟控制寄存器(VCR)123以及如本文中所描述的其它经虚拟化组件。主机102可在运行时间创建虚拟寄存器堆117。这些虚拟寄存器119、121、123可表示CPU 106的针对将在存储器装置110中执行的逻辑操作的若干个寄存器120(例如,物理向量寄存器、物理标量寄存器及/或物理控制寄存器)。虚拟寄存器可在编译时间用到虚拟寄存器堆117的相应索引来表示CPU 106的物理寄存器120,如与图3相关联地所更详细地描述。虚拟寄存器堆117,具体来说虚拟向量寄存器119可存储存储器装置110(例如,图1中所图解说明的PIM存储器装置110)的元件的虚拟地址(例如,基本虚拟地址)。存储器元件(还称为计算元件)存储在一个逻辑操作中被进行操作的一定量的数据。存储器元件可是指存储所述量的数据的若干个存储器单元。存储器-存储器架构可极其难以暴露于高性能软件及编译器实施方案。
在一些实施例中,主机102可包含存储器管理单元(MMU)115。MMU 115为可执行虚拟存储器地址与物理存储器地址之间的翻译的硬件组件。也就是说,MMU 115可将存储于虚拟寄存器堆117中的虚拟存储器地址翻译为存储器装置110的元件的物理地址。因此,虚拟寄存器堆117不存储存储器装置110的元件的物理地址。就此来说,当数据移动于存储器装置110内时,不需要更新虚拟寄存器堆117。此外,不同于与CPU106相关联的针对对存储于主要存储器112中的数据的操作的物理寄存器120,虚拟寄存器堆117中的虚拟寄存器不接收或存储对应于存储器装置110的元件的数据。
图2是根据本发明的若干个实施例的存储器装置210的一部分的示意图。存储器装置210与图1中所图解说明的存储器装置110相似。存储器装置210可包含存储器阵列211,所述存储器阵列包含耦合到存取线242-1、242-2、242-3、242-4、242-5、242-6、242-7、…、242-M的行及感测线244-1、244-2、244-3、244-4、244-5、244-6、244-7、244-8、…、244-N的列的存储器单元240-1、240-2、240-3、240-4、240-5、240-6、240-7、240-8、…、240-N。存储器阵列211并不限于特定数目个存取线及/或感测线,且对术语“行”及“列”的使用并非意指存取线及/或感测线的特定物理结构及/或定向。虽然未画出,但存储器单元的每一列可与对应互补感测线对相关联。
存储器单元的每一列可耦合到感测电路224,所述感测电路可与图1中所图解说明的感测电路124相似。在此实例中,感测电路包含耦合到相应感测线244的若干个读出放大器246-1、246-2、246-3、246-4、246-5、246-6、246-7、246-8、…、246-N。读出放大器246经由存取装置(例如,晶体管)250-1、250-2、250-3、250-4、250-5、250-6、250-7、250-8、…、250-N耦合到输入/输出(I/O)线254(例如,局部I/O线)。在此实例中,感测电路还包含耦合到相应感测线244的若干个计算组件248-1、248-2、248-3、248-4、248-5、248-6、248-7、248-8、…、248-N。列解码线252-1、252-2、252-3、252-4、252-5、252-6、252-7、252-8、…、252-N分别耦合到存取装置250的栅极,且可选择性地经激活以将由相应读出放大器246感测及/或存储于相应计算组件248中的数据传送到次要读出放大器256。在若干个实施例中,计算组件248可与其对应列的存储器单元及/或与对应读出放大器246同间距地形成。
在若干个实施例中,感测电路(例如,计算组件248及读出放大器246)经配置以对存储于阵列211中的元件执行若干个逻辑操作。作为实例,第一多个元件可存储于耦合到特定存取线(例如,存取线242-1)及若干个感测线244的第一存储器单元群组中,且第二多个元件可存储于耦合到不同存取线(例如,存取线242-2)及相应数目个感测线244的第二存储器单元群组中。第一多个元件中的每一元件可与第二多个元件中的相应一者一起被执行逻辑操作,且可将逻辑操作的结果存储(例如,作为位向量)于耦合到特定存取线(例如,存取线242-3)及所述数目个感测线244的第三存储器单元群组中。
图3是图解说明根据本发明的若干个实施例的虚拟寄存器堆存储器翻译的框图。主机(例如,图1中所图解说明的主机102)可利用编译器362来编译源代码360,例如C、C++等。源代码360可经编译以针对经受逻辑操作的数据包含对虚拟寄存器堆317的参考。编译器362可经配置以根据到虚拟寄存器堆317中的虚拟向量寄存器的索引而参考虚拟寄存器堆317发出经编译代码364(例如,机器代码、目标代码等)。源代码360可经编译而以虚拟寄存器堆317为目标来用于进行将在存储器装置310中执行的逻辑操作,仿佛所述逻辑操作是在主机(例如,图1中所图解说明的主机102)上的虚拟寄存器堆317中执行一样。也就是说,可以虚拟寄存器堆317为目标,仿佛所述虚拟寄存器堆为主机装置的物理寄存器(例如,图1中所图解说明的物理寄存器120)一样,即使实际逻辑操作将在存储器系统(例如,图1中所图解说明的存储器系统104)上的存储器装置310中执行。
为向编程器及编译器提供用以产生用于存储器装置310的代码的功能性,将虚拟寄存器堆317界定为用于经虚拟化存储器装置与实际处理及存储器硬件之间的映射的基础。出于安全代码产生的目的,一些先前源代码编译器技术已知晓一组固定易变(可改变)硬件元件或以所述组固定易变(可改变)硬件元件为目标。此硬件将一般包含计算元件(例如,图1中所图解说明的逻辑单元118)及寄存器堆(例如,图1中所图解说明的寄存器120)。然而,存储器装置310不具有易变寄存器堆。将在存储器阵列(例如,图1中所图解说明的存储器阵列111)的物理行与列相交点处或其附近或者在存储器装置(例如,图1中所图解说明的存储器装置110)中的原位存储装置中执行操作。如果存储器装置310将根据一些先前编译器方法起作用,那么存储器装置310中的每一存储器单元将变为易变且可分配硬件元件,此可防止应用程序在虚拟存储器中彼此并排地执行。
虚拟寄存器堆317可使对存储器装置310的存储器单元的存取虚拟化。虚拟寄存器堆317可存储于存储器(例如,图1中所图解说明的主机102的主要存储器112)中的缓冲器中且可类似于寄存器堆起作用,只不过将被进行操作的实际数据并不被传送到虚拟寄存器堆317或甚至主机,这是因为将在运行时间于存储器装置310中执行操作,而非用主机来执行逻辑操作。虚拟寄存器堆317可经配置以存储相应目标元件的地址而非实际数据。不存在使根据一些先前方法使用的物理寄存器虚拟化的动机,这是因为物理寄存器接收将由主机的逻辑单元进行操作的数据。
可在运行时间将虚拟寄存器堆317中的条目从虚拟地址内容翻译为相应物理地址,使得可采取步骤来使用存储器装置310起始逻辑操作。提供虚拟寄存器堆的备份存储的缓冲器的每一元件可具有特定大小(例如,64位),使得缓冲器可根据一些先前方法与寄存器堆相似地被加索引。编译器362可经配置而以虚拟寄存器堆317为目标,与针对将在存储器装置310中执行的操作的物理硬件实体(例如,图1中所图解说明的寄存器120)形成对照。
经编译代码364可包含逻辑操作368及到虚拟寄存器堆317的参考366,然而经编译代码将不包含对应于与虚拟向量寄存器相关联的虚拟地址的物理地址。逻辑操作的一些实例包含加法、减法、乘法等。特定参考366可为到虚拟寄存器堆317的索引(例如,%v0、%v1、…等)。特定索引可指向虚拟寄存器堆317中的虚拟寄存器,例如虚拟向量寄存器、虚拟标量寄存器及/或虚拟控制寄存器以及其它。
到虚拟寄存器堆317的相应索引可表示具有虚拟寄存器堆317的固定量的备份存储的向量寄存器或标量寄存器。到虚拟寄存器堆317的相应索引可表示具有可变量的备份存储的控制寄存器。存储器装置310的元件的虚拟地址可存储于虚拟寄存器堆317的虚拟向量寄存器中。
在运行时间,可将到虚拟寄存器堆的参考解参考(例如,通过虚拟/物理翻译374)以获得存储器装置元件的物理地址。解参考(例如,虚拟/物理翻译374)可包含对存储器装置310的运行时间环境的使用及/或对主机的存储器管理单元(例如,图1中所图解说明的主机102的MMU 115)的使用。可接着在存储器装置310中对存储于存储器装置元件中的数据执行逻辑操作。
在一些实施例中,虚拟寄存器堆317还可用于存储器操作(除了逻辑操作之外)。举例来说,源代码360可经编译以针对经受存储器操作的数据包含对虚拟寄存器堆317的参考。可在运行时间将对虚拟寄存器堆的参考解参考以根据虚拟寄存器堆317获得存储器装置元件的物理地址。
下表图解说明包含索引、助记符及对虚拟寄存器堆的若干个组件的描述的虚拟寄存器堆结构的实例:
表1
虽然在上表中未具体图解说明,但虚拟寄存器堆317可存储对应于存储器装置310的元件的物理地址的虚拟地址。在一些实施例中,虚拟存储器地址可为基本虚拟存储器地址,所述基本虚拟存储器地址与存储器装置元件的所存储跨距及存储器装置元件的长度组合连同经翻译基本虚拟地址一起界定哪些存储器装置元件对应于存储虚拟存储器地址的虚拟向量寄存器。然而,虚拟寄存器堆317不存储存储器装置310的元件的物理地址。
虚拟/物理翻译374可在运行时间根据运行时间库372发生,所述运行时间库可为主机及/或存储器装置310的运行时间环境的一部分。翻译可响应于对将在存储器装置310中执行的逻辑操作进行调用的命令而发生。举例来说,经编译源代码364可经执行以致使逻辑操作在存储器装置中执行。逻辑操作可根据经编译源代码364的对特定虚拟地址进行寻址的一部分来初始化。可在存储器装置310中对存储于对应于特定虚拟地址的特定物理地址中的数据执行逻辑操作。
运行时间库372可通过在主机上运行的应用程序而下载。举例来说,运行时间库372及虚拟寄存器堆317可被下载到主机的主要存储器中。虽然未如此具体图解说明,但运行时间库372可创建及/或含有包含存储器装置元件的虚拟存储器地址的虚拟寄存器堆317。在一些实施例中,每一运行线程可与一个虚拟寄存器堆317相关联。虚拟寄存器堆317可在运行时间被映射到存储器装置310的特定存储器组,但可稍后被映射到不同组。举例来说,存储器装置310可包含多个组,每一组包含若干个子阵列。在主机上运行的应用程序可在不编辑虚拟寄存器堆317的情况下在主机的主要存储器中被重新定位,同时维持由虚拟寄存器堆317提供的功能性。
虽然未如此具体图解说明,但用于存储可执行指令的非暂时性计算装置可读媒体可包含所有形式的易失性及非易失性存储器,包含(以实例方式)半导体存储器装置、DRAM、PIM、HMC、EPROM、EEPROM、快闪存储器装置、磁盘(例如固定磁盘、软磁盘及可装卸式磁盘)、其它磁性媒体(包含磁带、光学媒体,例如光盘(CD)、数字多用盘(DVD)及蓝光光盘(BD))。指令可由ASIC补充或并入ASIC中。举例来说,图1中所图解说明的次要存储装置114、寄存器120、高速缓冲存储器122、主要存储器112及/或存储器阵列111中的任何一或多者可为非暂时性计算装置可读媒体。
虽然本文中已图解说明及描述了特定实施例,但所属领域的技术人员将了解,旨在实现相同结果的布置可替代所展示的特定实施例。本发明打算涵盖本发明的一或多个实施例的更改或变化形式。应理解,已以说明性方式而非限制性方式做出以上描述。在审阅以上描述后,所属领域的技术人员将即刻明了以上实施例的组合及本文中未具体描述的其它实施例。本发明的一或多个实施例的范围包含其中使用以上结构及方法的其它应用。因此,本发明的一或多个实施例的范围应参考所附权利要求书连同此权利要求书授权的等效物的全部范围来确定。
在前述实施方式中,出于简化本发明的目的,将一些特征一起集合于单个实施例中。本发明的此方法不应解释为反映本发明的所揭示实施例必须使用比明确陈述于每一权利要求中更多的特征的意图。而是,如所附权利要求书所反映,发明性标的物在于少于单个所揭示实施例的所有特征。因此,特此将所附权利要求书并入到实施方式中,其中每一权利要求独立地作为单独实施例。
Claims (30)
1.一种方法,其包括:
编译源代码以针对经受逻辑操作的数据包含对虚拟寄存器堆的参考;及
在运行时间将所述参考解参考以根据所述虚拟寄存器堆获得存储器装置元件的物理地址,
其中将在存储器装置中对存储于所述存储器装置元件中的数据执行所述逻辑操作。
2.根据权利要求1所述的方法,其中编译所述源代码包括在耦合到所述存储器装置的主机处编译所述源代码。
3.根据权利要求1所述的方法,其中对所述虚拟寄存器堆的所述参考包括到所述虚拟寄存器堆中的虚拟向量寄存器的索引。
4.根据权利要求3所述的方法,其中所述方法包含将虚拟地址存储于所述虚拟向量寄存器中。
5.根据权利要求1所述的方法,其中所述方法包含在运行时间在所述存储器装置中执行所述逻辑操作。
6.根据权利要求5所述的方法,其中所述逻辑操作不由耦合到所述存储器装置的主机执行。
7.根据权利要求5所述的方法,其中存储于所述物理地址中的所述数据不被传送到耦合到用于执行所述逻辑操作的所述存储器装置的主机。
8.根据权利要求1到7中任一权利要求所述的方法,其中所述方法包含:
编译所述源代码以针对经受存储器操作的数据包含对所述虚拟寄存器堆的参考;及
在运行时间将所述参考解参考以根据所述虚拟寄存器堆获得存储器装置元件的物理地址。
9.一种存储指令的非暂时性计算机可读媒体,所述指令可由处理器执行以:
在主机存储器中界定具有足以容纳虚拟寄存器堆的备份存储的空间的缓冲器;
将所述缓冲器在逻辑上分成共同地构成所述虚拟寄存器堆的虚拟向量寄存器、虚拟标量寄存器及虚拟控制寄存器;及
在编译时间用到所述虚拟寄存器堆的相应索引来表示向量寄存器、标量寄存器及控制寄存器。
10.根据权利要求9所述的媒体,其包含用以针对固定量的所述备份存储用到所述虚拟寄存器堆的相应索引来表示所述向量寄存器及所述虚拟标量寄存器的指令。
11.根据权利要求9所述的媒体,其包含用以针对可变量的所述备份存储用到所述虚拟寄存器堆的相应索引来表示所述控制寄存器的指令。
12.根据权利要求9所述的媒体,其包含用以将存储器装置元件的基本虚拟地址存储于所述虚拟向量寄存器中的指令。
13.根据权利要求12所述的媒体,其包含用以在运行时间将所述基本虚拟地址翻译为物理地址的指令。
14.根据权利要求12所述的媒体,其中包含用以将存储器装置元件的跨距及以存储器装置元件的数目为单位的长度存储于所述虚拟寄存器堆中的指令,所述跨距及所述长度连同所述经翻译基本虚拟地址一起界定哪些存储器装置元件对应于所述虚拟向量寄存器。
15.根据权利要求14所述的媒体,其包含用以在运行时间对存储于所述存储器装置元件中的数据执行逻辑操作的指令,所述逻辑操作对表示所述向量寄存器的所述索引进行寻址。
16.一种方法,其包括:
利用主机装置来编译源代码;及
利用虚拟寄存器堆使对存储器装置的存取虚拟化,所述虚拟寄存器堆存储由所述经编译源代码中的索引进行参考的虚拟地址;及
根据所述经编译源代码的对特定虚拟地址进行寻址的一部分来初始化逻辑操作,
其中将在所述存储器装置中对存储于对应于所述特定虚拟地址的特定物理地址中的数据执行所述逻辑操作。
17.根据权利要求16所述的方法,其中编译源代码包含将经编译代码产生为包含用于逻辑操作的所述索引。
18.根据权利要求17所述的方法,其中编译所述源代码包含将所述经编译代码产生为不包含所述特定物理地址。
19.根据权利要求18所述的方法,其中使对所述存储器装置的存取虚拟化包括以所述虚拟寄存器堆为目标来作为所述主机装置的将在所述存储器装置中执行的所述逻辑操作的寄存器。
20.根据权利要求16到19中任一权利要求所述的方法,其中所述方法包含不将所述特定物理地址存储于所述虚拟寄存器堆中。
21.一种方法,其包括:
在主机上运行应用程序;
在运行时间创建包含存储器装置元件的虚拟存储器地址的虚拟寄存器堆;
在运行时间通过所述应用程序将包含所述虚拟寄存器堆的库下载到所述主机的主要存储器中;及
响应于将在所述存储器装置中执行的逻辑操作将特定虚拟存储器地址翻译为物理地址。
22.根据权利要求21所述的方法,其中所述方法包含不将待被执行所述逻辑操作的数据存储于所述虚拟寄存器堆中且不将所述物理地址存储于所述虚拟寄存器堆中。
23.根据权利要求21所述的方法,其中翻译包括通过所述主机的存储器管理单元进行翻译。
24.根据权利要求21所述的方法,其中翻译包括通过所述存储器装置的运行时间环境进行翻译。
25.根据权利要求21到24中任一权利要求所述的方法,其中所述方法包含在不编辑所述虚拟寄存器堆的情况下在所述主机的所述主要存储器中重新定位所述应用程序。
26.一种设备,其包括:
主机,其包含处理器及主要存储器;及
存储器装置,其耦合到所述主机,其中所述主机经配置以:
在所述主要存储器中界定缓冲器作为存储所述存储器装置的元件的虚拟地址的虚拟寄存器堆;
编译源代码以将所述虚拟寄存器堆为目标来用于进行将在所述存储器装置中执行的逻辑操作,仿佛所述逻辑操作是在所述虚拟寄存器堆中执行一样;及
执行所述经编译源代码以致使所述逻辑操作在所述存储器装置中执行。
27.根据权利要求26所述的设备,其中所述主机经配置以在运行时间创建所述虚拟寄存器堆。
28.根据权利要求26所述的设备,其中所述主机包含存储器管理单元,所述存储器管理单元经配置以将所述虚拟地址翻译为所述存储器装置的所述元件的物理地址。
29.根据权利要求26到28中任一权利要求所述的设备,其中所述虚拟寄存器堆不存储对应于所述存储器装置的所述元件的数据。
30.根据权利要求26到28中任一权利要求所述的设备,其中所述虚拟寄存器堆不存储所述存储器装置的所述元件的物理地址。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562141601P | 2015-04-01 | 2015-04-01 | |
US62/141,601 | 2015-04-01 | ||
US15/085,631 | 2016-03-30 | ||
US15/085,631 US10049054B2 (en) | 2015-04-01 | 2016-03-30 | Virtual register file |
PCT/US2016/025499 WO2016161251A1 (en) | 2015-04-01 | 2016-04-01 | Virtual register file |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108541313A true CN108541313A (zh) | 2018-09-14 |
CN108541313B CN108541313B (zh) | 2020-02-07 |
Family
ID=57004645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680024241.7A Active CN108541313B (zh) | 2015-04-01 | 2016-04-01 | 虚拟寄存器堆 |
Country Status (4)
Country | Link |
---|---|
US (3) | US10049054B2 (zh) |
EP (2) | EP3992784B1 (zh) |
CN (1) | CN108541313B (zh) |
WO (1) | WO2016161251A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113366462A (zh) * | 2019-03-18 | 2021-09-07 | 美光科技公司 | 具有向量第一和多通道配置的向量处理器 |
CN115617274A (zh) * | 2022-10-27 | 2023-01-17 | 亿铸科技(杭州)有限责任公司 | 一种具备坏块管理功能的存内计算装置及操作方法 |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10321167B1 (en) | 2016-01-21 | 2019-06-11 | GrayMeta, Inc. | Method and system for determining media file identifiers and likelihood of media file relationships |
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 |
US10373666B2 (en) | 2016-11-08 | 2019-08-06 | Micron Technology, Inc. | Apparatuses and methods for compute components formed over an array of memory cells |
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 |
US10719492B1 (en) | 2016-12-07 | 2020-07-21 | GrayMeta, Inc. | Automatic reconciliation and consolidation of disparate repositories |
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 |
US10152271B1 (en) | 2017-06-07 | 2018-12-11 | Micron Technology, Inc. | Data replication |
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 |
US10346092B2 (en) | 2017-08-31 | 2019-07-09 | Micron Technology, Inc. | Apparatuses and methods for in-memory operations using timing circuitry |
US10416927B2 (en) | 2017-08-31 | 2019-09-17 | Micron Technology, Inc. | Processing in memory |
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 |
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 |
KR20210106131A (ko) * | 2020-02-20 | 2021-08-30 | 삼성전자주식회사 | 전자 장치 및 그의 제어 방법 |
US11227641B1 (en) | 2020-07-21 | 2022-01-18 | Micron Technology, Inc. | Arithmetic operations in memory |
CN113704091B (zh) * | 2021-07-30 | 2024-02-09 | 郑州云海信息技术有限公司 | 一种逻辑代码调试方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050021925A1 (en) * | 2003-07-25 | 2005-01-27 | Clark Lawrence T. | Accessing in parallel stored data for address translation |
CN103870309A (zh) * | 2012-12-11 | 2014-06-18 | 辉达公司 | 用于集群多级寄存器堆的寄存器分配 |
WO2015021114A1 (en) * | 2013-08-08 | 2015-02-12 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US20150078108A1 (en) * | 2013-09-19 | 2015-03-19 | Micron Technology, Inc. | Data shifting via a number of isolation devices |
US20150086012A1 (en) * | 2013-09-25 | 2015-03-26 | Siddhartha Chhabra | Secure video ouput path |
Family Cites Families (279)
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 |
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 |
DE69132495T2 (de) | 1990-03-16 | 2001-06-13 | Texas Instruments Inc | Verteilter Verarbeitungsspeicher |
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 |
JPH06215160A (ja) | 1992-08-25 | 1994-08-05 | Texas Instr Inc <Ti> | データ処理方法および装置 |
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 |
US5369622A (en) | 1993-04-20 | 1994-11-29 | Micron Semiconductor, Inc. | Memory with isolated digit lines |
US5754478A (en) | 1993-04-20 | 1998-05-19 | Micron Technology, Inc. | Fast, low power, write scheme for memory circuits using pulsed off isolation device |
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 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US5920881A (en) | 1997-05-20 | 1999-07-06 | Micron Electronics, Inc. | Method and system for using a virtual register file in system memory |
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 |
US6178482B1 (en) | 1997-11-03 | 2001-01-23 | Brecis Communications | Virtual register sets |
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 | 富士通セミコンダクター株式会社 | 半導体記憶装置及びその制御方法 |
WO2001057875A1 (fr) | 2000-02-04 | 2001-08-09 | Hitachi, Ltd. | Dispositif semi-conducteur |
AU2001239907A1 (en) | 2000-02-29 | 2001-09-12 | Stephen J. Guerreri | 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 |
CN1307647C (zh) | 2000-07-07 | 2007-03-28 | 睦塞德技术公司 | 动态随机存取存储器、存储器器件及其执行读命令的方法 |
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 |
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 |
US7210026B2 (en) | 2002-06-28 | 2007-04-24 | Sun Microsystems, Inc. | Virtual register set expanding processor internal storage |
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 |
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 |
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 |
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 |
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 |
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 |
US7437532B1 (en) * | 2003-05-07 | 2008-10-14 | Marvell International Ltd. | Memory mapped register file |
JP3898152B2 (ja) | 2003-05-27 | 2007-03-28 | ローム株式会社 | 演算機能付き記憶装置および演算記憶方法 |
EP1665286B8 (en) | 2003-09-04 | 2007-09-12 | Nxp B.V. | Integrated circuit and a method of cache remapping |
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 |
US20050226337A1 (en) * | 2004-03-31 | 2005-10-13 | Mikhail Dorojevets | 2D block processing architecture |
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 |
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 |
US7685365B2 (en) | 2004-09-30 | 2010-03-23 | Intel Corporation | Transactional memory execution utilizing virtual memory |
US20060069849A1 (en) | 2004-09-30 | 2006-03-30 | Rudelic John C | Methods and apparatus to update information in a 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 |
US7196928B2 (en) | 2005-04-05 | 2007-03-27 | Sandisk Corporation | Compensating for coupling during read operations of non-volatile memory |
US7187585B2 (en) | 2005-04-05 | 2007-03-06 | Sandisk Corporation | Read operation for non-volatile storage that includes compensation for coupling |
US7193898B2 (en) | 2005-06-20 | 2007-03-20 | Sandisk Corporation | Compensation currents in non-volatile memory read operations |
US7962731B2 (en) | 2005-10-20 | 2011-06-14 | Qualcomm Incorporated | Backing store buffer for the register save engine of a stacked register file |
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 |
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 |
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 |
US8156299B2 (en) | 2007-10-19 | 2012-04-10 | 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 |
US8555037B2 (en) | 2008-08-15 | 2013-10-08 | Apple Inc. | Processing vectors using wrapping minima and maxima instructions in the macroscalar architecture |
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 |
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 |
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 | 株式会社東芝 | 半導体記憶装置 |
JP5568133B2 (ja) | 2009-08-18 | 2014-08-06 | ダウ コーニング コーポレーション | 多層経皮パッチ |
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 |
EP2564306A4 (en) | 2010-04-27 | 2017-04-26 | Cornell University | 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 |
US20120159193A1 (en) * | 2010-12-18 | 2012-06-21 | Microsoft Corporation | Security through opcode randomization |
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 |
US20130024647A1 (en) * | 2011-07-20 | 2013-01-24 | Gove Darryl J | Cache backed vector registers |
US8706958B2 (en) | 2011-09-01 | 2014-04-22 | Thomas Hein | Data mask encoding in data bit inversion scheme |
US20140247673A1 (en) | 2011-10-28 | 2014-09-04 | Naveen Muralimanohar | 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 | 삼성전자주식회사 | 비휘발성 메모리 장치의 동작 방법 |
WO2013078085A1 (en) | 2011-11-22 | 2013-05-30 | Mips Technologies, Inc. | Processor with kernel mode access to user space virtual addresses |
CN105955704B (zh) | 2011-11-30 | 2018-12-04 | 英特尔公司 | 用于提供向量横向比较功能的指令和逻辑 |
KR20130072869A (ko) | 2011-12-22 | 2013-07-02 | 에스케이하이닉스 주식회사 | 프리차지 회로 및 비휘발성 메모리 장치 |
US20140108480A1 (en) | 2011-12-22 | 2014-04-17 | Elmoustapha Ould-Ahmed-Vall | Apparatus and method for vector compute and accumulate |
KR102036348B1 (ko) * | 2012-02-27 | 2019-10-24 | 삼성전자 주식회사 | 메모리 컨트롤러 및 이의 동작 방법 |
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 |
US9110778B2 (en) * | 2012-11-08 | 2015-08-18 | International Business Machines Corporation | Address generation in an active memory device |
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 |
US20140281366A1 (en) * | 2013-03-15 | 2014-09-18 | Cognitive Electronics, Inc. | Address translation in a system using memory striping |
US9171153B2 (en) | 2013-05-17 | 2015-10-27 | Hewlett-Packard Development Company, L.P. | Bloom filter with memory element |
US10007518B2 (en) * | 2013-07-09 | 2018-06-26 | Texas Instruments Incorporated | Register file structures combining vector and scalar data with global and local accesses |
US8964496B2 (en) | 2013-07-26 | 2015-02-24 | Micron Technology, Inc. | Apparatuses and methods for performing compare operations using sensing circuitry |
US9153305B2 (en) | 2013-08-30 | 2015-10-06 | Micron Technology, Inc. | Independently addressable memory array address spaces |
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 |
EP3140743B1 (en) | 2014-05-08 | 2021-11-24 | Micron Technology, INC. | Hybrid memory cube system interconnect directory-based cache coherence methodology |
CN106415522B (zh) | 2014-05-08 | 2020-07-21 | 美光科技公司 | 存储器内轻量一致性 |
US9104436B1 (en) * | 2014-05-28 | 2015-08-11 | Emc Corporation | Compile directives for memory management |
US10311228B2 (en) * | 2014-09-30 | 2019-06-04 | Apple Inc. | Using a fine-grained address space layout randomization to mitigate potential security exploits |
US9514059B2 (en) * | 2014-12-22 | 2016-12-06 | Texas Instruments Incorporated | Hiding page translation miss latency in program memory controller by selective page miss translation prefetch |
US9851976B2 (en) * | 2014-12-23 | 2017-12-26 | Intel Corporation | Instruction and logic for a matrix scheduler |
ES2773478T3 (es) | 2016-03-01 | 2020-07-13 | Siemens Ag | Procedimiento y sistema para operar una red de suministro de energía autónoma |
-
2016
- 2016-03-30 US US15/085,631 patent/US10049054B2/en active Active
- 2016-04-01 CN CN201680024241.7A patent/CN108541313B/zh active Active
- 2016-04-01 EP EP21214008.1A patent/EP3992784B1/en active Active
- 2016-04-01 WO PCT/US2016/025499 patent/WO2016161251A1/en active Application Filing
- 2016-04-01 EP EP16774290.7A patent/EP3278211B1/en active Active
-
2018
- 2018-08-03 US US16/054,702 patent/US10963398B2/en active Active
-
2021
- 2021-03-26 US US17/214,508 patent/US20210216471A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050021925A1 (en) * | 2003-07-25 | 2005-01-27 | Clark Lawrence T. | Accessing in parallel stored data for address translation |
CN103870309A (zh) * | 2012-12-11 | 2014-06-18 | 辉达公司 | 用于集群多级寄存器堆的寄存器分配 |
WO2015021114A1 (en) * | 2013-08-08 | 2015-02-12 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US20150078108A1 (en) * | 2013-09-19 | 2015-03-19 | Micron Technology, Inc. | Data shifting via a number of isolation devices |
US20150086012A1 (en) * | 2013-09-25 | 2015-03-26 | Siddhartha Chhabra | Secure video ouput path |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113366462A (zh) * | 2019-03-18 | 2021-09-07 | 美光科技公司 | 具有向量第一和多通道配置的向量处理器 |
CN115617274A (zh) * | 2022-10-27 | 2023-01-17 | 亿铸科技(杭州)有限责任公司 | 一种具备坏块管理功能的存内计算装置及操作方法 |
Also Published As
Publication number | Publication date |
---|---|
US20210216471A1 (en) | 2021-07-15 |
EP3278211A1 (en) | 2018-02-07 |
WO2016161251A1 (en) | 2016-10-06 |
US20160292080A1 (en) | 2016-10-06 |
CN108541313B (zh) | 2020-02-07 |
EP3992784B1 (en) | 2023-12-06 |
EP3278211B1 (en) | 2022-01-19 |
EP3278211A4 (en) | 2019-01-02 |
US10963398B2 (en) | 2021-03-30 |
US10049054B2 (en) | 2018-08-14 |
US20180341597A1 (en) | 2018-11-29 |
EP3992784A1 (en) | 2022-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108541313A (zh) | 虚拟寄存器堆 | |
US11782688B2 (en) | Target architecture determination | |
US10817360B2 (en) | Apparatus and methods for debugging on a memory device | |
US11494078B2 (en) | Translation lookaside buffer in memory | |
US10388393B2 (en) | Apparatus and methods for debugging on a host and memory device | |
CN104115129B (zh) | 用于从处理器到存储器子系统智能刷新数据的系统和方法 | |
CN104756090B (zh) | 提供扩展的缓存替换状态信息 | |
CN105453030B (zh) | 向较宽的寄存器进行依赖于模式的部分宽度加载的处理器、方法和系统 | |
JP6928616B2 (ja) | 共有機械学習データ構造 | |
CN107783783A (zh) | 与微代码指令有关的设备及方法 | |
KR20190130664A (ko) | 텐서 메모리 액세스를 촉진할 수 있는 메모리 디바이스 및 방법 | |
Finkbeiner et al. | In-memory intelligence | |
JP2020166828A (ja) | メモリ内で計算操作を実行するためのスケーラブルなアーキテクチャを提供するための技術 | |
CN110574013B (zh) | 存储器形状 | |
US20210043266A1 (en) | Apparatus and methods for debugging on a host and memory device | |
GB2540944A (en) | Vector operand bitsize control | |
Halim | Application Software For Learning CPU Process of Interrupt and I/O Operation |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |