TWI699651B - 記憶體裝置及其操作方法 - Google Patents
記憶體裝置及其操作方法 Download PDFInfo
- Publication number
- TWI699651B TWI699651B TW107105673A TW107105673A TWI699651B TW I699651 B TWI699651 B TW I699651B TW 107105673 A TW107105673 A TW 107105673A TW 107105673 A TW107105673 A TW 107105673A TW I699651 B TWI699651 B TW I699651B
- Authority
- TW
- Taiwan
- Prior art keywords
- page table
- data
- memory
- array
- address
- Prior art date
Links
Images
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/1009—Address translation using page tables, e.g. page table structures
-
- 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- 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
- 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]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- 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/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- 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
- G06F2212/651—Multi-level translation tables
-
- 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
- G06F2212/652—Page size control
-
- 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/68—Details of translation look-aside buffer [TLB]
- G06F2212/684—TLB miss handling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本發明揭示一種例示性記憶體頁面表格尋選,其可包含使用經組態以儲存一頁面表格之一記憶體胞陣列。該頁面表格尋選可包含使用經耦合至該陣列之感測電路。該頁面表格尋選可包含使用經耦合至該陣列之一控制器。該控制器可經組態以操作該感測電路以藉由存取該記憶體胞陣列中之該頁面表格而判定資料之一部分之一實體位址。該控制器可經組態以操作該感測電路將資料之該部分儲存於一緩衝器中。
Description
本發明大體上係關於半導體記憶體及方法,且更特定言之,係關於與頁面表格相關之裝置及方法。
記憶體器件通常被提供為計算系統中之內部、半導體、積體電路。存在諸多不同類型之記憶體,其等包含揮發性記憶體及非揮發性記憶體。揮發性記憶體可需要電力以維持其資料(例如,主機資料、錯誤資料等)且包含隨機存取記憶體(RAM)、動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(SRAM)、同步動態隨機存取記憶體(SDRAM)及閘流體隨機存取記憶體(TRAM)等等。非揮發性記憶體可藉由在未供電時留存所儲存資料而提供永久性資料且可包含NAND快閃記憶體、NOR快閃記憶體及電阻可變記憶體,諸如相變隨機存取記憶體(PCRAM)、電阻性隨機存取記憶體(RRAM))及磁阻性隨機存取記憶體(MRAM)(諸如自旋力矩轉移隨機存取記憶體(STT RAM))等等。
計算系統通常包含數個處理資源(例如,一或多個處理器),其等可擷取及執行指令且將所執行指令之結果儲存至一合適位置。一處理資源可包括數個功能單元,諸如算術邏輯單元(ALU)電路、浮點單元(FPU)電路及一組合邏輯區塊,例如,該等功能單元可用於藉由對資料(例如,一或多
個運算元)執行諸如及(AND)、或(OR)、非(NOT)、反及、反或及互斥或(XOR)邏輯運算及逆(例如,反轉)邏輯運算而執行指令。例如,功能單元電路可用於經由數個邏輯運算對運算元執行諸如加法、減法、乘法及除法之算術運算。
在將指令提供至功能單元電路以供執行中可涉及一計算系統中之數個組件。例如,指令可由諸如一控制器及/或主機處理器之一處理資源執行。資料(例如,將對其執行指令之運算元)可儲存於可藉由功能單元電路存取之一記憶體陣列中。指令及資料可自記憶體陣列擷取且可在功能單元電路開始對資料執行指令之前序列化及/或緩衝。此外,由於可透過功能單元電路在一或多個時脈循環中執行不同類型之運算,故亦可序列化及/或緩衝指令及資料之中間結果。
在諸多例項中,處理資源(例如,處理器及/或相關聯之功能單元電路)可使用虛擬位址來存取實體位址。可使用一轉譯旁看緩衝器(translation lookaside buffer;TLB)來將一虛擬位址映射至一實體位址。回應於一TLB中不含虛擬位址映射,可執行一頁面表格尋選以便判定與虛擬位址相關聯之實體位址。可由一控制器起始及/或控制一頁面表格尋選,其中頁面表格尋選之各運算可包含控制器接收中間結果且發送針對頁面表格尋選之一下一運算之額外指令。在整個頁面表格尋選程序中,頁面表格尋選可消耗控制器之大量操作資源,諸如電力。
100:計算系統
110:主機
120:記憶體器件
122:中央處理單元(CPU)
124:邏輯單元
126:轉譯旁看緩衝器(TLB)
128:CPU快取區
130:記憶體陣列
134:頁面表格
140:控制器
142:位址電路
144:I/O電路
146:列解碼器
148:寫入電路
150:感測電路
152:行解碼器
154:匯流排
156:I/O匯流排
230:實體記憶體
232:虛擬位址
233至233-N:有效位元
234:頁面表格
235:PTE項目
235-1至235-P:PTE項目
237至237-Q:實體位址
334-1:第一級頁面表格
334-2:粗略頁面表格
339:轉譯表格基址
339-1:虛擬位址
339-2:藉由VA[19:12]索引
339-3:藉由VA[15:0]索引
339-4:藉由VA[11:0]索引
341-1:基址
341-2:基址
341-3:基址
343-1:大頁面
343-2:小頁面
345-1:無效位元
345-2:無效位元
451:輸入位址
453:轉譯表格基址暫存器
455:描述符位址
457:第一級表格描述符
459:描述符位址
461:第二級表格描述符
463:描述符位址
465:第三級表格描述符
467-1:第一資料部分
467-2:第二資料部分
467-3:第三資料部分
471:第一級查找
475:第二級查找
479:第三級查找
481:輸出位址
502-1:電晶體
502-2:電晶體
503-1:電容器
503-2:電容器
504-X:字線
504-Y:字線
505-1:資料線/感測線
505-2:資料線/感測線
506:感測放大器
507-1:傳遞閘極
507-2:傳遞閘極
512-1:參考電壓
512-2:供應電壓
513:邏輯運算選擇邏輯
514:平衡電路
515:鎖存器
517-1:節點
517-2:節點
524:電晶體
525-1:電晶體
525-2:電晶體
526:平衡(EQ)控制信號線
527-1:NMOS電晶體
527-2:NMOS電晶體
529-1:PMOS電晶體
529-2:PMOS電晶體
530:陣列
531:計算組件
550:感測電路
564:鎖存器
605-1:互補感測線
605-2:互補感測線
606:感測放大器
607-1:傳遞閘極
607-2:傳遞閘極
613-6:邏輯運算選擇邏輯
631:計算組件
642:交換閘極/交換電晶體
650-1:隔離電晶體
650-2:隔離電晶體
652:邏輯選擇電晶體
654:邏輯選擇電晶體
662:邏輯選擇電晶體
664:邏輯選擇電晶體
681:第一右移位電晶體
682:第二右移位控制線
683:控制線
686:第二右移位電晶體
687:第一反相器
688:第二反相器
689:第一左移位電晶體
690:第二左移位電晶體
691:第一左移位控制線
692:第二左移位控制線
744:起始資料值
745:起始資料值
747:列
756:行
770:行
771:行
775:連接路徑
776:列
777:列
778:列
779:列
780:標題
801:發信
901:發信
SF1:節點
SF2:節點
ST1:節點
ST2:節點
圖1係根據本發明之實施例之呈包含一記憶體器件之一計算系統之形式之一裝置之一方塊圖。
圖2係繪示根據本發明之實施例之一記憶體系統之一示意圖。
圖3係繪示根據本發明之實施例之頁面表格定址之一示意圖。
圖4係繪示根據本發明之實施例之一頁面表格尋選之一實例之一示意圖。
圖5係繪示根據本發明之實施例之感測電路之一示意圖。
圖6係繪示根據本發明之實施例之具有可選邏輯運算選擇邏輯之感測電路之一示意圖。
圖7係繪示根據本發明之實施例之藉由一感測電路實施之可選邏輯運算結果之一邏輯表。
圖8繪示根據本發明之實施例之與使用感測電路執行一邏輯運算及一移位運算相關聯之一時序圖。
圖9繪示根據本發明之實施例之與使用感測電路執行一邏輯運算及一移位運算相關聯之一時序圖。
本發明包含與一記憶體陣列頁面表格尋選相關之裝置及方法。一例示性裝置包括一記憶體胞陣列。例示性裝置可包括耦合至陣列之感測電路。一控制器可經耦合至陣列且控制器可經組態以操作感測電路以使一頁面表格儲存於陣列中。控制器可經組態以藉由存取記憶體胞陣列中之頁面表格而判定資料之一部分之一實體位址。控制器可經組態以操作感測電路以使資料之該部分儲存於一緩衝器中。
在至少一項實施例中,一主機可存取一轉譯旁看緩衝器(TLB)以判定與一已知虛擬位址相關聯之一實體位址。回應於TLB中不存在至實體位址之虛擬位址映射,可執行一頁面表格尋選以判定實體位址。例如,使用虛
擬記憶體之一作業系統給人該記憶體係記憶體之一較大、連續區段之印象。在實體上,記憶體可跨實體記憶體之不同區域散佈。當由主機操作之一程序請求對記憶體中之資料之存取時,作業系統可被賦予將由程序提供之虛擬位址映射至定位或儲存資料之實體記憶體之一實體位址的任務。一轉譯旁看緩衝器(TLB)可為用於改良至實體位址之虛擬位址轉譯之一快取區。TLB可經實施為一內容可定址記憶體(CAM)。CAM之搜尋鍵可為虛擬位址且搜尋結果可為實體位址。若TLB中存在所請求虛擬位址,則TLB可指示一匹配且擷取對應實體位址。若所請求位址非定位於TLB中(指示為一未命中),則可藉由使用一頁面表格來執行遍及頁面表格之一頁面表格尋選而將虛擬位址轉譯成實體位址。一頁面表格係作業系統用來儲存虛擬位址至實體位址之映射之一表格,其中各映射被稱為一頁面表格項目(PTF)。TLB可儲存虛擬至實體位址之更易存取轉譯,而頁面表格尋選可需要額外時間及資源來判定對應實體位址。
在一些先前方法中,主機可發送命令至一記憶體陣列之一主機控制器以供頁面表格尋選之一第一運算,自第一運算接收輸入,且發送額外命令以供頁面表格尋選之一額外運算。如此,主機控制器可在頁面表格尋選之各運算期間自主機接收命令及/或發送命令至主機。在頁面表格尋選期間的主機與頁面表格之間的往返可係費時且耗能的。在本發明之至少一項實施例中,如下文描述,頁面表格可經儲存於一記憶體陣列中且記憶體陣列可由一記憶體控制器操作以獨立於自記憶體陣列發送中間結果至主機(例如,至主機控制器)(例如,在未發送的情況下)且在未自主機發送中間指令至記憶體陣列的情況下執行頁面表格尋選運算。例如,記憶體陣列可包含在各中間指令期間未來回於主機發送輸入及/或輸出資料的情況下執
行記憶體內之一頁面表格尋選之各運算。如此,可釋放主機控制器資源及/或電力以便使用主機控制器以供額外運算。
例如,請求一已知虛擬位址之一實體位址之一命令可自一主機控制器發送至一記憶體陣列。可執行實體位址是否在一轉譯旁看緩衝器(TLB)中之一判定。回應於TLB中不存在虛擬至實體映射,記憶體陣列可執行記憶體陣列內之一頁面表格尋選且在頁面表格尋選完成時發送實體位址至控制器。記憶體中之頁面表格尋選之運算可包含數個記憶體中處理運算(如下文相關聯於圖5至圖9描述),以便執行記憶體中之頁面表格尋選。
在本發明之以下詳細描述中,參考形成本發明之一部分且其中藉由繪示展示可如何實踐本發明之一或多項實施例之隨附圖式。足夠詳細地描述此等實施例以使一般技術者能夠實踐本發明之實施例,且應理解,可利用其他實施例且在不脫離本發明之範疇之情況下可做出程序、電及/或結構改變。如在本文中使用,諸如「n」之標示符(尤其關於圖式中之參考數字)指示可包含如此指定之數個特定特徵。如在本文中使用,「數個」特定事物指代一或多個此等事物(例如,數個記憶體陣列可指代一或多個記憶體陣列)。「複數個」意在指代超過一個此等事物。
本文中之圖遵循一編號慣例,其中首位或前幾位數字對應於圖式圖號且剩餘數字識別圖式中之一元件或組件。可藉由使用類似數字識別不同圖之間的類似元件或組件。例如,134可參考圖1中之元件「34」,且一類似元件可在圖2中參考為234。如將暸解,可添加、交換及/或消除在本文之各種實施例中展示之元件,以便提供本發明之數個額外實施例。另外,如將暸解,在圖式中提供之元件之比例及相對尺寸旨在圖解說明本發明之特定實施例,且不應被視為一限制意義。
圖1係根據本發明之數項實施例之呈包含一記憶體器件120之一計算系統100之形式之一裝置之一方塊圖。如在本文中使用,一記憶體器件120、一記憶體陣列130、一控制器140及/或感測電路150亦可被單獨視為一「裝置」。
計算系統100可包含經耦合至記憶體器件120之一主機110,包含一計算記憶體器件110(例如,包含一記憶體陣列111及/或感測電路150)。記憶體器件120可充當一習知記憶體及/或一計算記憶體。主機110可為一主機系統,諸如一個人膝上型電腦、一桌上型電腦、一數位相機、一行動電話或一記憶體卡讀取器以及各種其他類型之主機。主機110可包含一系統主機板及/或背板且可包含數個處理資源(例如,一或多個處理器、微處理器或一些其他類型之控制電路),諸如中央處理單元(CPU)122。一大容量儲存器(未繪示)可用作一儲存器件或無法由CPU 122直接存取之其他媒體,諸如硬碟機、固態磁碟機、光碟機,且可為非揮發性記憶體。在一些實施例中,大容量儲存器可在主機110外部。主機110可經組態為具有一作業系統。作業系統係管理硬體資源且對在作業系統上運行之其他可執行指令(應用程式)提供服務之可執行指令(軟體)。作業系統可實施一虛擬記憶體系統。
CPU 122可包含經耦合至一轉譯旁看緩衝器(TLB)126及CPU快取區128之一邏輯單元124。一邏輯單元124之一實例係一算術邏輯單元(ALU),其係可對二進位整數執行算術及按位元邏輯運算之一電路。數個ALU可用於用作一浮點單元(FPU)(其係對浮點數進行運算之一電路)及/或一圖形處理單元(GPU)(其係加速預期用於輸出至一顯示器之一圖框緩衝器中之影像之產生之一電路)。TLB 126係記憶體管理硬體可用來改良虛
擬位址轉譯速度之一快取區。TLB 126可為一內容可定址記憶體,其中搜尋鍵係一虛擬位址且搜尋結果係一實體位址。TLB 126可包含作業系統頁面表格項目,其等將虛擬位址映射至實體位址,且作業系統頁面表格可經儲存於記憶體中(例如,記憶體陣列130中)。CPU快取區128可為相對更快之暫存器與相對更緩慢之主記憶體(未特定繪示)之間的一中間階段。待由CPU 122運算之資料可在被放置在一暫存器中之前被複製至CPU快取區128,其中該等運算可藉由邏輯單元124實現。雖然未特定繪示,但CPU快取區128可為一多級階層快取區。
計算系統100可包含單獨積體電路,或主機110及記憶體陣列130及感測電路150皆可位於相同積體電路上。計算系統100可(例如)為一伺服器系統及/或一高效能計算系統及/或其之一部分。儘管在圖1中展示之實例繪示具有一范紐曼(Von Neumann)架構之一系統,但本發明之實施例可以非范紐曼架構(例如,一杜林機(Turing machine),其可不包含通常與一范紐曼架構相關聯之一或多個組件(例如,CPU、ALU等))實施。
為明確起見,系統100已經簡化以集中於與本發明特定相關之特徵。例如,記憶體陣列130可為DRAM陣列、SRAM陣列、STT RAM陣列、PCRAM陣列、TRAM陣列、RRAM陣列、NAND快閃陣列及/NOR快閃陣列。陣列130可包括配置成藉由存取線(在本文中可被稱為字線或選擇線)耦合之列及藉由感測線耦合之行之記憶體胞。儘管在圖1中展示一單一陣列130,但實施例並不如此受限制。例如,記憶體器件120可包含數個陣列130(例如,數個DRAM胞組)。相關聯於圖2描述一例示性DRAM陣列。
記憶體器件120包含位址電路142以鎖存經由一I/O匯流排156(例
如,一資料匯流排)透過I/O電路144提供之位址信號。位址信號亦可經接收至控制器140(例如,經由位址電路142及/或經由匯流排154)。藉由一列解碼器146及一行解碼器152接收及解碼位址信號以存取記憶體陣列130。可藉由使用感測電路150感測資料線上之電壓及/或電流改變而自記憶體陣列130讀取資料。感測電路150可讀取及鎖存來自記憶體陣列130之一頁(例如,列)資料。I/O電路144可用於經由I/O匯流排156與主機110之雙向資料通信。寫入電路148用於將資料寫入至記憶體陣列130。
控制器140解碼藉由控制匯流排154自主機110提供之信號。此等信號可包含用於控制對記憶體陣列130執行之操作(包含資料讀取、資料寫入及資料擦除操作)之晶片啟用信號、寫入啟用信號及位址鎖存信號。在各種實施例中,控制器140負責執行來自主機110之指令。控制器140可為一狀態機、一定序器或一些其他類型之控制電路。控制器140可以硬體、韌體及/或軟體實施。控制器140亦可控制移位電路,其可根據各種實施例實施於(例如)感測電路150中。
在下文進一步描述感測電路150之實例。舉例而言,在數項實施例中,感測電路150可包括數個感測放大器(例如,在圖5中展示為506且在圖6中展示為606之感測放大器)及可用於執行邏輯運算(例如,諸如對與互補資料線相關聯之資料之頁面表格尋選運算)之數個計算組件(例如,在圖5中展示為531且在圖6中展示為631之計算組件)。感測放大器可包括(例如)一靜態鎖存器,其可在本文中被稱為主鎖存器。計算組件531可包括(例如)一動態及/或靜態鎖存器,其可在本文中被稱為次鎖存器,且其可充當且被稱為一累加器。
在數項實施例中,感測電路(例如,150)可用於使用儲存於陣列130
中之資料作為輸入執行邏輯運算(例如,頁面表格尋選運算)且在不經由一感測線位址存取傳送資料(例如,不觸發一行解碼信號)之情況下將邏輯運算之結果儲存回至陣列130。因而,各種邏輯功能可使用感測電路150執行且在感測電路150內執行而非(或相關聯於)藉由感測電路外部之處理資源(例如,藉由與主機110相關聯之一處理器及/或定位於器件120上(諸如在控制器140上或別處)之其他處理電路,諸如ALU電路)執行。
在各種先前方法中,例如,與一運算元相關聯之資料將經由感測電路自記憶體讀取且經由I/O線(例如,經由本地I/O線及/或全域I/O線)提供至外部ALU電路。外部ALU電路可包含數個暫存器且將使用運算元執行邏輯功能,且結果將經由I/O線傳送回至陣列(例如,130)。相比之下,在本發明之數項實施例中,感測電路(例如,150)經組態以對儲存於記憶體(例如,陣列130)中之資料執行邏輯運算且在不啟用耦合至感測電路之一I/O線(例如,一本地I/O線)(其可形成於與陣列之記憶體胞之間距上)之情況下將結果儲存回至記憶體。啟用一I/O線可包含啟用(例如,開啟)具有耦合至一解碼信號(例如,一行解碼信號)之一閘極及耦合至I/O線之一源極/汲極之一電晶體。實施例不限於此。例如,在數項實施例中,感測電路(例如,150)可用於在不啟用陣列之行解碼線之情況下執行邏輯運算;然而,可啟用(若干)本地I/O線以便將一結果傳送至除返回至陣列以外之一合適位置(例如,至一外部暫存器)。
因而,在數項實施例中,由於感測電路150可在不使用一外部處理資源之情況下執行適當邏輯運算以執行此等計算功能,故在陣列130及感測電路150外部之各種電路(例如,與一ALU相關聯之外部暫存器)無需執行邏輯功能。因此,感測電路150可用於(至少在一定程度上)補充及/或替換
此一外部處理資源(或至少此一外部處理資源之頻寬)。然而,在數項實施例中,感測電路150可用於執行除藉由一外部處理資源(例如,主機110)執行之邏輯運算以外之邏輯運算(例如,執行指令)。例如,主機110及/或感測電路150可限於僅執行特定邏輯運算及/或特定數目個邏輯運算。
在至少一項實施例中,主機110可判定一虛擬位址是否定位於主機110之TLB 126中。回應於TLB 126包含虛擬位址,對應實體位址可經定位於TLB 126中且用於定位與原始虛擬位址相關聯之資料。回應於TLB 126不包含虛擬位址(例如,由TLB 126指示之一未命中),主機110可發送一命令至記憶體器件120以定位記憶體陣列130之一頁面表格134中之虛擬位址。可在記憶體中執行如下文描述之數個記憶體中處理運算以執行一頁面表格尋選以定位頁面表格134中之實體位址。
圖2係繪示根據本發明之數項實施例之一記憶體系統之一示意圖。圖2包含一虛擬位址232、一頁面表格234及一實體記憶體230(例如,諸如圖1中之記憶體陣列130)。實體記憶體230可將資料儲存在實體位址237-1、237-2、237-3、...、237-Q。在一些實例中,一控制器(例如,圖1中之控制器140)可使用一虛擬位址(諸如虛擬位址232)判定資料之一部分之一實體位置。例如,可請求由控制器使用與虛擬位址232相關聯之資料之一部分以執行數個運算。資料之該部分可經定位於一記憶體230中之一實體位置處。虛擬位址232可用於判定資料之該部分之實體位置。
一虛擬位址232可指示儲存資料之一部分之一對應實體頁面。虛擬位址232可用於搜尋一頁面表格234(例如,一查找頁面表格)。一頁面表格234可為用於在一虛擬位址(例如,虛擬位址232)與儲存於實體記憶體230中之資料之一實體位址(例如,實體位址237-3)之間映射之一資料結構。
在至少一項實施例中,由系統100執行之一程序可請求存取與虛擬位址232相關聯之資料之一部分。可藉由硬體或更具體言之藉由一RAM系統使用對應於虛擬位址232之一實體位址。回應於頁面表格指示與虛擬位址232相關聯之資料之該部分非定位於記憶體陣列230中,資料之該部分可經定位於一額外記憶體陣列(例如,不在記憶體器件120上之一外部記憶體陣列)中。頁面表格234可包含數個頁面表格項目(PTE)235。例如,一第一PTE項目235-1可為一虛擬位址至一實體位址237-3之一第一映射。一有效位元「1」233-1可指示第一PTE 235-1經定位於實體記憶體230中。一第二PTE項目235-2可為一虛擬位址至一實體位址237-1之一第二映射,藉由一有效位元「1」233-2指示為定位於實體記憶體230中。一實體位址237-2經繪示為不與頁面表格234中之一PTE相關聯。
各對應PTE項目235可與一有效位元233相關聯。第二PTE項目235-2可與一有效位元233-2相關聯。有效位元233-2可為一「1」且可指示一對應虛擬位址經映射至一有效實體位址。一第三PTE項目235-3可與一有效位元233-3相關聯。有效位元233-3可為一「0」且可指示一對應虛擬位址未映射至一有效實體位址(由一對應實體位址237位置中之「INVALID」指示)。頁面表格234可包含在自一第一PTE項目235-1至一第P PTE項目235-P之範圍中之P個PTE項目及一第N有效位元233-N。
圖3係繪示根據本發明之數項實施例之頁面表格定址之一示意圖。一頁面表格可包含用於將一虛擬位址映射至一實體位址之多個級。一轉譯表格基址(translation table base)339可指示一第一級頁面表格334-1內之一位置以開始將一虛擬位址映射至一實體位址。第一級頁面表格334-1可藉由在位址位元31至20之範圍(例如,「31:20」)中之虛擬位址339-1索引。
一無效位元345-1可指示一特定虛擬位址未映射至一實體位址。與一有效位元「01」相關聯之一虛擬位址可指示一粗略頁面表格334-2內之一特定位置。
來自第一級頁面表格334-1之虛擬位址(VA)之一基址341-1(例如,「L1D[31:10]」,指示在位元31至10之範圍中之第一級資料)可指示一粗略頁面表格334-2內之一位置以繼續判定一實體位址。粗略頁面表格334-2可藉由該位址之位元19至12(例如,「19:12」)339-2索引。一無效位元345-2(例如,「00」)可指示一特定虛擬位址未映射至粗略頁面表格334-2中之一實體位址,其藉由粗略頁面表格334-2與大頁面343-1之間不存在箭頭所指示。VA之一基址341-2來自粗略頁面表格334-2(例如,「L2D[31:16]」,指示在位元31至16之範圍中之第二級資料)。
粗略頁面表格334-2之一中間位元「01」可指示一虛擬位址經定位於資料之一大頁面(例如,64KB)343-1內。大頁面343-1可藉由虛擬位址之位元15至0(例如,「15:0」)339-3索引。粗略頁面表格334-2之一上位元「1XN」可指示一虛擬位址經定位於一小頁面(例如,4KB擴展小頁面)343-2內。VA之一基址341-3來自粗略頁面表格334-2(例如,「L2D[31:12]」,指示在位元31至12之範圍中之第二級資料)。小頁面343-2可藉由虛擬位址之位元11至0(例如,「11:0」)339-4索引。
在至少一項實施例中,一頁面表格可經儲存於記憶體(例如,圖1中之記憶體陣列130)中。使用記憶體中之頁面表格來從一虛擬位址判定一實體位置之指令可從一主機(例如,主機110)發送至一記憶體(例如,130),使得記憶體可在記憶體內執行一頁面表格尋選。如此,記憶體可在無來自主機之完成頁面表格尋選的額外指令及/或控制的情況下使用記憶體內之
一頁面表格來執行頁面表格尋選。
在記憶體中執行之一頁面表格尋選之一實例在下文由以下虛擬程式碼(pseudocode)繪示:1. 1st Level page table deference:a. Store virtual address in register R1;b. Mask bits 0...19 of R1 and store in R2;c. Store translation base address in register R3;d. Perform AND on R2 and R3 and store in R4;e. Read address indicated by R4 and store result in R4;2. 2nd Level page table dereference:a. Mask bits 0...11, 20...31 of R1 and store in R2;b. Perform AND on R2 and R4 and store result in R4;作為用於執行一頁面表格尋選之以上虛擬程式碼之一實例,可提領(de-reference)一第一級頁面表格。與虛擬程式碼1.a(例如,「Store virtual address in register R1」)相關聯,一虛擬位址可經儲存於一第一暫存器(例如,與ROW Y相關聯之記憶體胞之一第一列,如在下文圖5中繪示)中。與虛擬程式碼1.b(例如,「Mask bits 0...19 of R1 and store in R2」)相關聯,可遮蔽儲存於第一暫存器中之虛擬位址之第0位元(例如,一最低有效位元)至一第19位元(例如,第19最高有效位元)。因此,第20至第31位元(如在圖3中之實例中繪示)可保持未經遮蔽,如圖3中針對第一級頁面表格334-1之「INDEXED BY VA[31:20]」339-1指示。此外,具有經遮蔽之第0至第19位元之虛擬位址可經儲存於一第二暫存器(例如,陣列530中之第二列記憶體胞,未繪示)中。
與虛擬程式碼1.c(例如,「Store translation base address in register R3」)相關聯,一轉譯表格基址(例如,圖3中之BASE ADDRESS FROM
L1D[31:10]341-1)可經儲存於一第三暫存器(例如,陣列530中之第三列記憶體胞,未繪示)中。一轉譯表格基址可指示含有區段或頁面描述符或兩者之實體記憶體中之一表格之一基址。一頁面描述符可提供(例如)含有用於大頁面抑或小頁面存取之第二級描述符之一頁面表格之一基址。與虛擬程式碼1.d(例如,「Perform AND on R2 and R3 and store in R4」)相關聯,可對儲存於第二暫存器中之經遮蔽虛擬位址執行一AND運算,且可將轉譯表格基址儲存於第三暫存器中。與虛擬程式碼1.e(例如,讀取由R4指示之位址且將結果儲存於R4中)相關聯,儲存於第四暫存器「R4」(例如,陣列530中之第四列記憶體胞,未繪示)中之資料可指示待使用之一讀取位址,且可讀取儲存在讀取位址位置處之資料且將其儲存於第四暫存器中。
與虛擬程式碼2.(例如,「2nd Level page table dereference」)相關聯,可提領一第二級頁面表格。與虛擬程式碼2.a(例如,「Mask bits 0...11,20...31 of R1 and store in R2」)相關聯,可遮蔽第0位元(例如,最低有效位元)至第11位元且可遮蔽第20位元至第31位元。藉此,第12位元至第19位元保持未經遮蔽(例如,如由圖3中之「INDEXED BY VA[19:12]」339-2指示)。具有經遮蔽之第0至第11位元及第20至第31位元之位址可經儲存於一第二暫存器(例如,陣列530中之第二列記憶體胞)中。與虛擬程式碼2.b(例如,「Perform AND on R2 and R4 and store result in R4」)相關聯,可對儲存於第二暫存器及第四暫存器中之資料執行一AND運算。例如,可使用包含在虛擬程式碼2.a之運算期間經遮蔽之第0至第11位元及第20至第31位元之資料對在虛擬程式碼1.e之運算期間儲存於第四暫存器中之讀取位址進行AND運算。可將AND運算之結果儲存於第
四暫存器中。
雖然此實例繪示具有一第一級及一第二級頁面表格提領之實例,但實例不限於此。例如,可執行一第三級頁面表格提領等等。重點在於可由一主機傳輸自一虛擬位址識別一實體位址之指令且可由記憶體自身執行在記憶體中執行頁面表格尋選之運算,而非在執行頁面表格尋選整個過程中自主機接收額外指令。例如,如下文相關聯於圖5至圖9描述,可在記憶體中執行數個運算(包含AND及OR運算)。
圖4係繪示根據本發明之數項實施例之一頁面表格尋選之一實例之一示意圖。如在圖4中繪示,可對一全關聯快取區執行頁面表格尋選。一全關聯快取區係指其中來自任何位址之資料可經儲存於任何快取位置中之一快取區。一整個位址被用作標籤且所有標籤同時(相關聯地)與一所請求位址比較。回應於匹配所請求位址,存取一相關聯之資料。此可解決對快取位置之爭用,因為在整個快取區已滿時可清除一區塊,且可以一更效率之方式選擇待清除之一區塊。
頁面表格尋選可包含一輸入位址451之一第一資料部分467-1、一第二資料部分467-2及一第三資料部分467-3。第一資料部分467-1可包含輸入位址451之一第30位元。第一資料部分467-1可用於判定一描述符位址455之一部分。由第一資料部分467-1判定之描述符位址455之該部分可包含描述符位址455之第n-1位元。如469所示,一轉譯表格基址暫存器453(包含一第0位元至一第63位元)可用於判定描述符位址455之一第n位元至一第39位元。描述符位址455可用作一第一級查找471以判定第一級表格描述符457。
第二資料部分467-2可包含輸入位址451之一第21位元至一第29位
元。第二資料部分467-2可用於判定一第一級表格描述符457之一描述符位址459之一部分。第一級表格描述符457之描述符位址459之該部分可包含描述符位址459之一第3位元至一第11位元。如473所示,第一級表格描述符457之一第12位元至一第39位元可用於判定描述符459之一第12位元至一第39位元。描述符位址459可用作一第二級查找475以判定第二級表格描述符461。
第三資料部分467-3可包含輸入位址451之一第12位元至一第20位元。第三資料部分467-3可用於判定一第二級表格描述符461之一描述符位址463之一部分。第二級表格描述符461之描述符位址463之該部分可包含描述符位址463之一第3位元至一第11位元。如477所示,第二級表格描述符461之一第12位元至一第39位元可用於判定該描述符位址463之一第12位元至一第39位元。描述符位址463可用作一第三級查找479以判定第三級表格描述符465。第三級表格描述符465之一輸出位址481可用於判定最初用作輸入位址451之虛擬位址之實體位址。可回應於接收請求一實體位址之一主機命令在記憶體中執行此頁面表格尋選。可在無指示如何在記憶體中執行頁面表格尋選之主機之進一步指令的情況下執行頁面表格。記憶體可用於執行運算以完成頁面表格尋選。例如,如相關聯於圖3描述,可執行數個遮蔽運算及/或AND運算以便判定第一級457、第二級461及/或第三級463表格描述符。雖然圖4中之實例包含額外標記(例如,「IGNORED」等等),但額外標記被用作一頁面表格尋選描述之一實例且不限於此等額外標記及/或描述。另外,雖然輸入位址451包含位元0至39,但實施例不限於此且可包含任何數目個位元。同樣地,描述符位址455、459、463及表格描述符457、461、465之大小不限於在此實例中繪
示且描述之彼等。
圖5係繪示根據本發明之數項實施例之感測電路之一示意圖。一記憶體胞包括一儲存元件(例如,電容器)及一存取器件(例如,電晶體)。例如,電晶體502-1及電容器503-1包括一記憶體胞,且電晶體502-2及電容器503-2包括一記憶體胞等等。在此實例中,記憶體陣列530係ITIC(一個電晶體一個電容器)記憶體胞之一DRAM陣列。在數項實施例中,記憶體胞可為破壞性讀取記憶體胞(例如,讀取儲存於記憶體胞中之資料破壞資料,使得最初儲存於胞中之資料在被讀取之後被刷新)。
記憶體陣列530之胞配置成藉由字線504-X(ROW X)、504-Y(ROW Y)等等耦合之列及藉由互補感測線對(例如,資料線DIGIT(n)/DIGIT(n)_)耦合之行。對應於各對互補感測線之個別感測線亦可分別被稱為資料線505-1(D)及505-2(D_)。儘管在圖5中僅展示一對互補資料線(例如,一個行),但本發明之實施例不限於此,且一記憶體胞陣列可包含額外記憶體胞行及/或資料線(例如,4,096個、8,192個、16,384個等等)。
記憶體胞可耦合至不同資料線及/或字線。例如,一電晶體502-1之一第一源極/汲極區可耦合至資料線505-1(D),電晶體502-1之一第二源極/汲極區可耦合至電容器503-1,且一電晶體502-1之一閘極可耦合至字線504-Y。一電晶體502-2之一第一源極/汲極區可耦合至資料線505-2(D_),電晶體502-2之一第二源極/汲極區可耦合至電容器503-2,且一電晶體502-2之一閘極可耦合至字線504-X。如在圖5中展示,胞板可耦合至電容器503-1及503-2之各者。胞板可為一共同節點,在各種記憶體陣列組態中可將一參考電壓(例如,接地)施加至該節點。
根據本發明之數項實施例,記憶體陣列530經耦合至感測電路550。
在此實例中,感測電路550包括對應於記憶體胞之各自行(例如,耦合至各自互補資料線對)之一感測放大器506及一計算組件531。感測電路550可對應於(例如)在圖1中展示之感測電路150。感測放大器506可耦合至互補感測線505-1及505-2對。計算組件531可經由傳遞閘極507-1及507-2耦合至感測放大器506。傳遞閘極507-1及507-2之閘極可耦合至邏輯運算選擇邏輯513。
邏輯運算選擇邏輯513可經組態以包含:傳遞閘極邏輯,其用於控制耦合未在感測放大器506與計算組件531之間轉置之互補感測線505-1及505-2對之傳遞閘極(如在圖5中展示);及/或交換閘極邏輯,其用於控制耦合在感測放大器506與計算組件531之間轉置之互補感測線對之交換閘極。邏輯運算選擇邏輯513亦可耦合至該對互補感測線505-1及505-2。邏輯運算選擇邏輯513可經組態以基於一選定邏輯運算控制傳遞閘極507-1及507-2(例如,控制傳遞閘極507-1及507-2處於一導電狀態或一不導電狀態),如下文針對邏輯運算選擇邏輯513之各種組態詳細描述。
可操作感測放大器506以判定儲存於一選定記憶體胞中之一資料值(例如,邏輯狀態)。感測放大器506可包括一交叉耦合鎖存器,其在本文中可被稱為一初級鎖存器。在圖5中繪示之實例中,對應於感測放大器506之電路包括一鎖存器515,其包含耦合至該對互補資料線505-1及505-2之四個電晶體。然而,實施例不限於此實例。鎖存器515可為一交叉耦合鎖存器(例如,一對電晶體(諸如n通道電晶體(例如,NMOS電晶體)527-1及527-2)之閘極與另一對電晶體(諸如p通道電晶體(例如PMOS電晶體)529-1及529-2)之閘極經由節點517-1及517-2交叉耦合)。
在操作中,當感測(例如,讀取)一記憶體胞時,資料線505-1(D)或
505-2(D_)之一者上之電壓將略大於資料線505-1(D)或505-2(D_)之另一者上之電壓。一ACT信號可被驅動為高且一RNL*信號可被驅動為低以啟用(例如,觸發)感測放大器506。具有較低電壓之資料線505-1(D)或505-2(D_)將接通PMOS電晶體529-1或529-2之一者至比PMOS電晶體529-1或529-2之另一者更大的程度,藉此將具有較高電壓之資料線505-1(D)或505-2(D_)驅動為高至比被驅動為高之資料線505-1(D)或505-2(D_)更大的程度。
類似地,具有較高電壓之資料線505-1(D)或505-2(D_)將接通NMOS電晶體527-1或527-2之一者至比NMOS電晶體527-1或527-2之另一者更大的程度,藉此將具有較低電壓之資料線505-1(D)或505-2(D_)驅動為低至比另一資料線505-1(D)或505-2(D_)被驅動為低更大的程度。因此,在一短暫延遲後,具有略大電壓之資料線505-1(D)或505-2(D_)(例如,透過一源極電晶體(未展示))被驅動至供應電壓VDD之電壓,且另一資料線505-1(D)或505-2(D_)被驅動至參考電壓(例如,透過一汲入電晶體(未展示)被驅動至接地(GND))之電壓。因此,交叉耦合之NMOS電晶體527-1及527-2及PMOS電晶體529-1及529-2充當一感測放大器對,其等放大資料線505-1(D)及505-2(D_)上之差分電壓且操作以鎖存自選定記憶體胞感測之一資料值。
實施例不限於在圖5中繪示之感測放大器506組態。作為一實例,感測放大器506可為電流模式感測放大器及/或單端感測放大器(例如,耦合至一個資料線之感測放大器)。而且,本發明之實施例不限於諸如在圖5中展示之一摺疊資料線架構。
感測放大器506可連同計算組件531一起操作以使用來自一陣列之資
料作為輸入而執行各種邏輯運算。在數項實施例中,可將一邏輯運算之結果儲存回至陣列而不經由一資料線位址存取傳送資料(例如,不觸發一行解碼信號,使得經由本端I/O線將資料傳送至陣列及感測電路外部之電路)。因而,本發明之數項實施例可實現使用少於各種先前方法之電力執行與其相關聯之邏輯運算。另外,由於數項實施例可免除跨I/O線傳送資料以便執行邏輯功能(例如,在記憶體與離散處理器之間)的需要,故與先前方法相比,數項實施例可實現增大的平行處理能力。
感測放大器506可進一步包含平衡電路514,該平衡電路514可經組態以平衡資料線505-1(D)及505-2(D_)。在此實例中,平衡電路514包括耦合於資料線505-1(D)與505-2(D_)之間的一電晶體524。平衡電路514亦包括各具有耦合至一平衡電壓(例如,VDD/2)之一第一源極/汲極區之電晶體525-1及525-2,其中VDD係與陣列相關聯之一供應電壓。電晶體525-1之一第二源極/汲極區可耦合資料線505-1(D),且電晶體525-2之一第二源極/汲極區可耦合資料線505-2(D_)。電晶體524、525-1及525-2之閘極可耦合在一起,且耦合至一平衡(EQ)控制信號線526。因而,啟動EQ啟用電晶體524、525-1及525-2,此將資料線505-1(D)及505-2(D_)有效地短接在一起且短接至平衡電壓(例如,VDD/2)。
儘管圖5展示包括平衡電路514之感測放大器506,但實施例不限於此,且平衡電路514可與感測放大器506離散地實施、以不同於在圖5中展示之一組態實施或完全不實施。
如下文進一步描述,在數項實施例中,可操作感測電路(例如,感測放大器506及計算組件531)以執行一選定邏輯運算且最初將結果儲存於感測放大器506或計算組件531之一者中,而不經由一I/O線自感測電路傳送
資料(例如,不經由例如一行解碼信號之啟動執行一資料線位址存取)。
邏輯運算之執行(例如,涉及資料值之布林(Boolean)邏輯函數)係基本且常用的。在諸多更高階函數中使用布林邏輯函數。因此,可使用改良邏輯運算實現之速度及/或功率效率,此可轉化為具有高階功能性之速度及/或功率效率。本文中描述用於在不經由一輸入/輸出(I/O)線傳送資料的情況下及/或在不傳送資料至陣列外部之一控制組件的情況下執行邏輯運算之裝置及方法。取決於記憶體陣列架構,用於執行邏輯運算之裝置及方法可不需要一感測線(例如,資料線、數位線、位元線)對之放大。
如在圖5中展示,計算組件531亦可包括一鎖存器564,該鎖存器564在本文中可被稱為一次級鎖存器。次級鎖存器564可以類似於在上文關於初級鎖存器515描述之一方式組態及操作,惟包括次級鎖存器之交叉耦合p通道電晶體(例如,PMOS電晶體)對可使其等各自源極耦合至一供應電壓512-2(例如,VDD)且次級鎖存器之交叉耦合n通道電晶體(例如,NMOS電晶體)對可使其等各自源極選擇性地耦合至一參考電壓512-1(例如,接地「GND」),使得次級鎖存器被連續啟用除外。計算組件之組態不限於在圖5中展示為531之組態,且在下文進一步描述各種其他實施例。
圖6係繪示根據本發明之數項實施例之具有可選邏輯運算選擇邏輯之感測電路之一示意圖。圖6展示耦合至各自互補感測線605-1及605-2對之數個感測放大器606及經由傳遞閘極607-1及607-2耦合至感測放大器606之對應數目個計算組件631。可藉由一邏輯運算選擇邏輯信號PASS控制傳遞閘極607-1及607-2之閘極。例如,邏輯運算選擇邏輯613-6之一輸出可耦合至傳遞閘極607-1及607-2之閘極。
根據在圖6中繪示之實施例,計算組件631可包括經組態以向左及向
右移位資料值之一可載入移位暫存器之各自階(例如,移位胞)。根據一些實施例,計算組件631可具有雙向移位能力。根據本發明之各種實施例,計算組件631可包括經組態以在多個方向上(例如,向右及向左)移位之一可載入移位暫存器(例如,具有充當一各自移位階之各計算組件631)。根據本發明之各種實施例,計算組件631可包括經組態以在一個方向上移位之一可載入移位暫存器之各自階(例如,移位胞)。可載入移位暫存器可經耦合至互補感測線605-1及605-2對,其中各階之節點ST2經耦合至傳送一真資料值之感測線(例如,DIGIT(n))且其中各階之節點SF2經耦合至傳送一互補(例如,假)資料值之感測線(例如,DIGIT(n)_)。
根據一些實施例且如在圖6中繪示,移位暫存器之各計算組件631(例如,階)包括一對右移位電晶體681及686、一對左移位電晶體689及690以及一對反相器687及688。可將信號PHASE 1R、PHASE 2R、PHASE 1L及PHASE 2L施加至各自控制線682、683、691及692以相關聯於根據本文中描述之實施例執行邏輯運算及/或使資料移位而啟用/停用對應計算組件631之鎖存器上之回饋。在下文關於圖8及圖9進一步描述使資料移位(例如,自一特定計算組件631移位至一相鄰計算組件631)之實例。
可載入移位暫存器之計算組件631(例如,階)可包括具有經耦合至一第一右移位控制線680之一閘極(例如,「PHASE 1R」)之一第一右移位電晶體681及具有經耦合至一第二右移位控制線682之一閘極(例如,「PHASE 2R」)之一第二右移位電晶體686。可載入移位暫存器之各階之節點ST2經耦合至一第一反相器687之一輸入。第一反相器687之輸出(例如,節點SF1)經耦合至第二右移位電晶體686之一個源極/汲極,且第二右移位電晶體686之另一源極/汲極經耦合至一第二反相器688之一輸入(例
如,節點SF2)。第二反相器688之輸出(例如,節點ST1)經耦合至第一右移位電晶體681之一個源極/汲極,且第一右移位電晶體681之另一源極/汲極針對一相鄰計算組件631耦合至一第二反相器之一輸入(例如,節點SF2)。鎖存器電晶體685具有經耦合至一LATCH控制信號684之一閘極。鎖存器電晶體685之一個源極/汲極經耦合至節點ST2,且鎖存器電晶體685之另一源極/汲極經耦合至節點ST1。
感測放大器606可經耦合至各自互補感測線605-1及605-2對,且對應計算組件631可經由各自傳遞閘極607-1及607-2耦合至感測放大器606。可藉由各自邏輯運算選擇邏輯信號「Passd」及「Passdb」控制傳遞閘極607-1及607-2之閘極,該等信號可自邏輯運算選擇邏輯(為清楚起見未展示)輸出。
一第一左移位電晶體689經耦合於一個可載入移位暫存器之節點SF2與對應於一相鄰計算組件631之一可載入移位暫存器之節點SF1之間。第二左移位電晶體690之通道自節點ST2耦合至節點ST1。第一左移位電晶體689之閘極經耦合至一第一左移位控制線691(例如,「PHASE 1L」),且第二左移位電晶體690之閘極經耦合至一第二左移位控制線692(例如,「PHASE 2L」)。
邏輯運算選擇邏輯613-6包含交換閘極642以及控制傳遞閘極607-1及607-2及交換閘極642之邏輯。邏輯運算選擇邏輯613-6包含四個邏輯選擇電晶體:邏輯選擇電晶體662,其耦合在交換電晶體642之閘極與一TF信號控制線之間;邏輯選擇電晶體652,其耦合在傳遞閘極607-1及607-2之閘極與一TT信號控制線之間;邏輯選擇電晶體654,其耦合在傳遞閘極607-1及607-2之閘極與一FT信號控制線之間;及邏輯選擇電晶體664,其
耦合在交換電晶體642之閘極與一FF信號控制線之間。透過隔離電晶體650-1(具有耦合至一ISO信號控制線之一閘極)將邏輯選擇電晶體662及652之閘極耦合至真感測線。透過隔離電晶體650-2(亦具有耦合至一ISO信號控制線之一閘極)將邏輯選擇電晶體664及654之閘極耦合至互補感測線。圖8及圖9繪示與使用在圖6中展示之感測電路執行邏輯運算及移位運算相關聯之時序圖。
可藉由使傳遞閘極607-1及607-2導電(諸如藉由使Passd控制信號升高)而將各自互補感測線605-1及605-2對上之資料值載入至對應計算組件631(例如,可載入移位暫存器)中。受控制以具有連續性(例如,通過一通道之電連續性)之閘極係導電的,且可在本文中被稱為OPEN。受控制不具有連續性(例如,通過一通道之電連續性)之閘極據稱係不導電的,且可在本文中被稱為CLOSED。例如,連續性係指其中一閘極導電之一低電阻條件。可藉由感測放大器606強於(overpower)對應計算組件631(例如,覆寫計算組件631中之一現有資料值)及/或藉由關閉PHASE 1R及PHASE 2R控制信號680及682及LATCH控制信號684而將資料值載入至各自計算組件631中。一第一鎖存器(例如,感測放大器)可經組態以在由第一鎖存器提供且呈遞給一第二鎖存器(例如,計算組件)之電流足以翻轉第二鎖存器時強於第二鎖存器。
感測放大器606可經組態以藉由將互補感測線605-1及605-2對上之電壓驅動至對應於一資料值之最大電力供應電壓(例如,將互補感測線605-1及605-2對驅動至導軌)而強於計算組件631,此可改變儲存於計算組件631中之資料值。根據數項實施例,計算組件631可經組態以在不將互補感測線605-1及605-2對之電壓驅動至導軌(例如,至VDD或GND)的情況下傳送
一資料值至互補感測線605-1及605-2對。因而,計算組件631可經組態以不強於感測放大器606(例如,來自計算組件631之互補感測線605-1及605-2對上之資料值不會改變儲存於感測放大器606中之資料值,直至啟用感測放大器)。
一旦將一資料值載入可載入移位暫存器之一計算組件631中,便藉由第一反相器687分離真資料值與互補資料值。可藉由第一右移位電晶體681及第二右移電晶體686之交替運算而將資料值移位至右(例如,至一相鄰計算組件631),此可在第一右移位控制線680及第二右移控制線682具有彼此異相升高之週期性信號(例如,彼此異相180度之不重疊交替矩形波)時實現。可啟動LATCH控制信號684以使鎖存器電晶體685導電,藉此將資料值鎖存於可載入移位暫存器之一對應計算組件631中(例如,同時信號PHASE 1R保持低且PHASE 2R保持高以使資料值維持鎖存於計算組件631中)。
圖7係繪示根據本發明之數項實施例之藉由一感測電路(例如,在圖5中展示之感測電路550)實施之可選邏輯運算結果之一邏輯表格。四個邏輯選擇控制信號(例如,TF、TT、FT及FF)連同存在於互補感測線上之一特定資料值可用於選擇複數個邏輯運算之一者以實施涉及儲存於感測放大器506及計算組件531中之起始資料值。四個控制信號(例如,TF、TT、FT及FF)連同存在於互補感測線上(例如,節點S及S*上)之一特定資料值控制傳遞閘極607-1及607-2及交換電晶體642,此繼而影響觸發之前/之後的計算組件631及/或感測放大器606中之資料值。可選擇地控制交換電晶體642之能力促進實施尤其涉及反相資料值(例如,反相運算元及/或反相結果)之邏輯運算。
在圖7中繪示之邏輯表格7-1展示儲存於計算組件531中之起始資料值(在744處之行A中展示)及儲存於感測放大器506中之起始資料值(在745處之行B中展示)。邏輯表格7-1中之其他3個行標題係指傳遞閘極507-1及507-2及交換電晶體542之狀態,其等可取決於四個邏輯選擇控制信號(例如,TF、TT、FT及FF)之狀態連同當ISO控制信號經確證時存在於該對互補感測線505-1及505-2上之一特定資料值而分別經控制為OPEN或CLOSED。「NOT OPEN」行756對應於傳遞閘極507-1及507-2及交換電晶體542皆處於一不導電條件中,「OPEN TRUE」行770對應於傳遞閘極507-1及507-2處於一導電條件中,且「OPEN INVERT」行771對應於交換電晶體542處於一導電條件中。對應於傳遞閘極507-1及507-2及交換電晶體542皆處於一導電條件中之組態未在邏輯表格7-1中反映,此係由於此導致感測線短接在一起。
經由傳遞閘極507-1及507-2及交換電晶體542之選擇性控制,邏輯表格7-1之上部之三個行之各者可與邏輯表格7-1之下部之三個行之各者組合以提供對應於九個不同邏輯運算之九個(例如,3x3)不同結果組合,如藉由在775處展示之各種連接路徑指示。在邏輯表格7-2中總結可藉由感測電路550實施之九個不同可選邏輯運算。
邏輯表格7-2之行展示一標題780,該標題780包含邏輯選擇控制信號(例如,FF、FT、TF、TT)之狀態。舉例而言,在列776中提供一第一邏輯選擇控制信號(例如,FF)之狀態,在列777中提供一第二邏輯選擇控制信號(例如,FT)之狀態,在列778中提供一第三邏輯選擇控制信號(例如,TF)之狀態,且在列779中提供一第四邏輯選擇控制信號(例如,TT)之狀態。在列747中總結對應於結果之特定邏輯運算。
圖8繪示根據本發明之數項實施例之與使用感測電路執行一邏輯AND運算及一移位運算相關聯之一時序圖。圖8包含對應於信號EQ、ROW X、ROW Y、SENSE AMP、TF、TT、FT、FF、PHASE 1R、PHASE 2R、PHASE 1L、PHASE 2L、ISO、Pass、Pass*、DIGIT及DIGIT_之波形。EQ信號對應於與一感測放大器相關聯之一平衡信號(例如,在圖5中展示之EQ 226)。ROW X及ROW Y信號對應於施加至各自存取線(例如,在圖5中展示之存取線504-X及504-Y)以存取一選定胞(或胞之列)之信號。SENSE AMP信號對應於用於啟用/停用一感測放大器(例如,感測放大器606)之一信號。TF、TT、FT及FF信號對應於諸如在圖6中展示之邏輯選擇控制信號(例如,耦合至邏輯選擇電晶體662、652、654及664之信號)。PHASE 1R、PHASE 2R、PHASE 1L及PHASE 2L信號對應於提供至在圖6中展示之各自控制線682、683、691及692之控制信號(例如,時脈信號)。ISO信號對應於耦合至在圖6中展示之隔離電晶體650-1及650-2之閘極之信號。PASS信號對應於耦合至在圖6中展示之傳遞電晶體607-1及607-2之閘極之信號,且PASS*信號對應於耦合至交換電晶體642之閘極之信號。DIGIT及DIGIT_信號對應於存在於各自感測線605-1之信號(例如,DIGIT(n))及605-2上之信號(例如,DIGIT(n)_)。
在圖8中展示之時序圖與對儲存於一陣列之一第一記憶體胞中之一資料值及儲存於一第二記憶體胞中之一資料值執行一邏輯AND運算相關聯。記憶體胞可對應於一陣列之一特定行(例如,包括一對互補感測線之一行)且可耦合至各自存取線(例如,ROW X及ROW Y)。在描述圖8中展示之邏輯AND運算時,將參考在圖5中描述之感測電路。例如,在圖8中描述之邏輯運算可包含:將ROW X記憶體胞之資料值(例如,「ROW X
資料值」)儲存於對應計算組件631(其可被稱為累加器631)之鎖存器中(例如,「A」資料值);將ROW Y記憶體胞之資料值(例如,「ROW Y資料值」)儲存於對應感測放大器606之鎖存器中(例如,「B」資料值);及對ROW X資料值及ROW Y資料值執行一選定邏輯運算(例如,此實例中之一邏輯AND運算),其中將選定邏輯運算之結果儲存於計算組件631之鎖存器中。
如在圖8中展示,在時間T1,停用感測放大器606之平衡(例如,EQ降低)。在時間T2,ROW X升高以存取(例如,選擇)ROW X記憶體胞。在時間T3,啟用感測放大器606(例如,SENSE AMP升高),此回應於ROW X資料值(例如,如藉由DIGIT及DIGIT_信號展示)而將互補感測線605-1及605-2驅動至適當導軌電壓(例如,VDD及GND),且將ROW X資料值鎖存於感測放大器606中。在時間T4,PHASE 2R及PHASE 2L信號降低,此停用計算組件631之鎖存器上之回饋(例如,藉由分別關斷電晶體686及690),使得可在邏輯運算期間覆寫儲存於計算組件中之值。而且,在時間T4,ISO降低,此停用隔離電晶體650-1及650-2。在時間T5,啟用TT及FT(例如,升高),此導致PASS升高(例如,由於電晶體652抑或654將取決於節點ST2(對應於圖5中的節點「S」)或節點SF2(對應於圖5中的節點「S*」)之哪一者在時間T4停用ISO時為高而導電)(回想起當ISO停用時,節點ST2及SF2之電壓動態地駐存於各自啟用電晶體652及654之閘極上)。PASS升高啟用傳遞電晶體607-1及607-2,使得將對應於ROW X資料值之DIGIT及DIGIT_信號提供至各自計算組件節點ST2及SF2。在時間T6,停用TT及FT,此導致PASS降低,從而停用傳遞電晶體607-1及607-2。注意,由於TF及FF信號保持低,故PASS*在時間T5與T6之間保持低。
在時間T7,停用ROW X,且啟用PHASE 2R、PHASE 2L及ISO。在時間T7啟用PHASE 2R及PHASE 2L啟用計算組件631之鎖存器上之回饋,使得ROW X資料值鎖存於其中。在時間T7啟用ISO再次將節點ST2及SF2耦合至啟用電晶體652、654、662及664之閘極。在時間T8,啟用平衡(例如,EQ升高,使得DIGIT及DIGIT_經驅動至諸如VDD/2之一平衡電壓)且停用感測放大器606(例如,SENSE AMP降低)。
在ROW X資料值鎖存於計算組件631中之情況下,停用平衡(例如,EQ在時間T9降低)。在時間T10,ROW Y升高以存取(例如,選擇)ROW Y記憶體胞。在時間T11,啟用感測放大器606(例如,SENSE AMP升高),此回應於ROW Y資料值(例如,如藉由DIGIT及DIGIT_信號展示)而將互補感測線605-1及605-2驅動至適當導軌電壓(例如,VDD及GND),且將ROW Y資料值鎖存於感測放大器606中。在時間T12,PHASE 2R及PHASE 2L信號降低,此停用計算組件631之鎖存器上之回饋(例如,藉由分別關斷電晶體686及690),使得可在邏輯運算期間覆寫儲存於計算組件中之值。而且,在時間T12,ISO降低,此停用隔離電晶體650-1及650-2。由於此實例中之所要邏輯運算係一AND運算,故在時間T13,啟用TT而TF、FT及FF保持停用(如在表7-2中展示,FF=0,FT=0,TF=0且TT=1對應於一邏輯AND運算)。啟用TT是否導致PASS升高取決於當ISO在時間T12停用時儲存於計算組件631中之值。例如,若節點ST2在停用ISO時為高,則啟用電晶體652將導電,且若節點ST2在時間T12停用ISO時為低,則啟用電晶體將不導電。
在此實例中,若PASS在時間T13升高,則啟用傳遞電晶體607-1及607-2,使得將對應於ROW Y資料值之DIGIT及DIGIT_信號提供至各自
計算組件節點ST2及SF2。因而,儲存於計算組件631中之值(例如,ROW X資料值)可取決於DIGIT及DIGIT_之值(例如,ROW Y資料值)而翻轉。在此實例中,若PASS在時間T13保持低,則不啟用傳遞電晶體607-1及607-2,使得對應於ROW Y資料值之DIGIT及DIGIT_信號保持與計算組件631之節點ST2及SF2隔離。因而,計算組件中之資料值(例如,ROW X資料值)將保持相同。
在時間T14,停用TT,此導致PASS降低(或保持低),使得停用傳遞電晶體607-1及607-2。注意,由於TF及FF信號保持低,故PASS*在時間T13與T14之間保持低。在時間T15,停用ROW Y,且啟用PHASE 2R、PHASE 2L及ISO。在時間T15啟用PHASE 2R及PHASE 2L啟用計算組件631之鎖存器上之回饋,使得AND運算(例如,「A」AND「B」)之結果鎖存於其中。在時間T15啟用ISO再次將節點ST2及SF2耦合至啟用電晶體652、654、662及664之閘極。在時間T16,啟用平衡(例如,EQ升高,使得DIGIT及DIGIT_經驅動至一平衡電壓)且停用感測放大器606(例如,SENSE AMP降低)。
可經由I/O線將AND運算之結果(在此實例中,其最初儲存於計算組件631中)傳送回至記憶體陣列(例如,至經由互補感測線耦合至ROW X、ROW Y及/或一不同列之一記憶體胞)及/或至一外部位置(例如,一外部處理組件)。
圖8亦包含(例如,在801處)與移位資料(例如,自一計算組件631至一相鄰計算組件631)相關聯之發信。在圖8中展示之實例繪示兩個左移位,使得儲存於對應於行「N」之一計算組件中之一資料值向左移位至對應於行「N-2」之一計算組件。如在時間T16展示,停用PHASE 2R及
PHASE 2L,此停用計算組件鎖存器上之回饋,如在上文描述。為執行一第一左移位,在時間T17啟用PHASE 1L且在時間T18停用PHASE 1L。啟用PHASE 1L導致電晶體689導電,此導致節點SF1處之資料值向左移動至一左相鄰計算組件631之節點SF2。隨後在時間T19啟用PHASE 2L且在時間T20停用PHASE 2L。啟用PHASE 2L導致電晶體690導電,此導致來自節點ST1之資料值向左移動至節點ST2以完成一左移位。
上述序列(例如,啟用/停用PHASE 1L且隨後啟用/停用PHASE 2L)可經重複以達成所要數目個左移位。例如,在此實例中,藉由在時間T21啟用PHASE 1L且在時間T22停用PHASE 1L而執行一第二左移位。隨後在時間T23啟用PHASE 2L以完成第二左移位。繼第二左移位之後,PHASE 2L保持啟用且PHASE 2R經啟用(例如,在時間T24),使得啟用回饋以將資料值鎖存於計算組件鎖存器中。
圖9繪示根據本發明之數項實施例之與使用感測電路執行一邏輯XOR運算及一移位運算相關聯之一時序圖。圖9包含在上文圖8中描述之相同波形。然而,在圖9中展示之時序圖與對一ROW X資料值及一ROW Y資料值執行一邏輯XOR運算(例如,而非一邏輯AND運算)相關聯。將再次參考在圖6中描述之感測電路。
針對圖9在時間T0至T9指示之發信相同於圖8且將不在此處重複。因而,在時間T9,停用EQ,其中將ROW X資料值鎖存於計算組件631中。在時間T10,ROW Y升高以存取(例如,選擇)ROW Y記憶體胞。在時間T11,啟用感測放大器606(例如,SENSE AMP升高),此回應於ROW Y資料值(例如,如藉由DIGIT及DIGIT_信號展示)而將互補感測線605-1及605-2驅動至適當導軌電壓(例如,VDD及GND),且將ROW Y資料值鎖存
於感測放大器606中。在時間T12,PHASE 2R及PHASE 2L信號降低,此停用計算組件531之鎖存器上之回饋(例如,藉由分別關斷電晶體686及690),使得可在邏輯運算期間覆寫儲存於計算組件631中之值。而且,在時間T12,ISO降低,此停用隔離電晶體650-1及650-2。由於此實例中之所要邏輯運算係一XOR運算,故在時間T13,啟用TF及FT而TT及FF保持停用(如在表7-2中展示,FF=0,FT=1,TF=1且TT=0對應於一邏輯XOR(例如,「AXB」)運算)。啟用TF及FT是否導致PASS或PASS*升高取決於當在時間T12停用ISO時儲存於計算組件631中之值。例如,若節點ST2在停用ISO時為高,則啟用電晶體662將導電,且若節點ST2在時間T12停用ISO時為低,則啟用電晶體662將不導電。類似地,若節點SF2在停用ISO時為高,則啟用電晶體654將導電,且若節點SF2在停用ISO時為低,則啟用電晶體654將不導電。
在此實例中,若PASS在時間T13升高,則啟用傳遞電晶體607-1及607-2,使得將對應於ROW Y資料值之DIGIT及DIGIT_信號提供至各自計算組件節點ST2及SF2。因而,儲存於計算組件631中之值(例如,ROW X資料值)可取決於DIGIT及DIGIT_之值(例如,ROW Y資料值)而翻轉。在此實例中,若PASS在時間T13保持低,則不啟用傳遞電晶體607-1及607-2,使得對應於ROW Y資料值之DIGIT及DIGIT_信號保持與計算組件631之節點ST2及SF2隔離。因而,計算組件中之資料值(例如,ROW X資料值)將保持相同。在此實例中,若PASS*在時間T13升高,則啟用交換電晶體642,使得以一轉置方式將對應於ROW Y資料值之DIGIT及DIGIT_信號提供至各自計算組件節點ST2及SF2(例如,DIGIT(n)上之「真」資料值將被提供至節點SF2且DIGIT(n)_上之「互補」資料值將被
提供至節點ST2)。因而,儲存於計算組件631中之值(例如,ROW X資料值)可取決於DIGIT及DIGIT_之值(例如,ROW Y資料值)而翻轉。在此實例中,若PASS*在時間T13保持低,則不啟用交換電晶體642,使得對應於ROW Y資料值之DIGIT及DIGIT_信號保持與計算組件631之節點ST2及SF2隔離。因而,計算組件中之資料值(例如,ROW X資料值)將保持相同。
在時間T14,停用TF及FT,此導致PASS及PASS*降低(或保持低),使得停用傳遞電晶體607-1及607-2以及交換電晶體642。在時間T15,停用ROW Y,且啟用PHASE 2R、PHASE 2L及ISO。在時間T15啟用PHASE 2R及PHASE 2L啟用計算組件631之鎖存器上之回饋,使得XOR運算(例如,「A」XOR「B」)之結果鎖存於其中。在時間T15啟用ISO再次將節點ST2及SF2耦合至啟用電晶體652、654、662及664之閘極。在時間T16,啟用平衡(例如,EQ升高,使得DIGIT及DIGIT_經驅動至一平衡電壓)且停用感測放大器606(例如,SENSE AMP降低)。
可經由I/O線將XOR運算之結果(在此實例中,其最初儲存於計算組件631中)傳送回至記憶體陣列(例如,至經由互補感測線耦合至ROW X、ROW Y及/或一不同列之一記憶體胞)及/或至一外部位置(例如,一外部處理組件)。
圖9亦包含(例如,在901處)與移位資料(例如,自一計算組件631至一相鄰計算組件631)相關聯之發信。在圖9中展示之實例繪示兩個右移位,使得儲存於對應於行「N」之一計算組件中之一資料值向右移位至對應於行「N+2」之一計算組件。如在時間T16展示,停用PHASE 2R及PHASE 2L,此停用計算組件鎖存器上之回饋,如在上文描述。為執行一
第一右移位,在時間T17啟用PHASE 1R且在時間T18停用PHASE 1R。啟用PHASE 1R導致電晶體681導電,此導致節點ST1處之資料值向右移動至一右相鄰計算組件631之節點ST2。隨後在時間T19啟用PHASE 2R且在時間T20停用PHASE 2R。啟用PHASE 2R導致電晶體686導電,此導致來自節點SF1之資料值向右移動至節點SF2以完成一右移位。
上述序列(例如,啟用/停用PHASE 1R且隨後啟用/停用PHASE 2R)可經重複以達成所要數目個右移位。例如,在此實例中,藉由在時間T21啟用PHASE 1R且在時間T22停用PHASE 1R而執行一第二右移位。隨後在時間T23啟用PHASE 2R以完成第二右移位。繼第二右移位之後,PHASE 1R保持停用,PHASE 2R保持啟用且PHASE 2L經啟用(例如,在時間T24),使得啟用回饋以將資料值鎖存於計算組件鎖存器中。
儘管在圖8及圖9中描述之實例包含儲存於計算組件(例如,631)中之邏輯運算結果,但根據本文中描述之實施例之感測電路可經操作以執行邏輯運算,其中將結果最初儲存於感測放大器中(例如,如在圖8中繪示)。而且,實施例不限於在圖8及圖9中分別描述之「AND」及「XOR」邏輯運算實例。例如,根據本發明之實施例之感測電路(例如,在圖6中展示之650)可經控制以執行諸如在表7-2中展示之各種其他邏輯運算。
雖然已在本文中繪示及描述包含感測電路、感測放大器、計算組件、動態鎖存器、隔離器件及/或移位電路之各種組合及組態之例示性實施例,但本發明之實施例不限於本文中明確敘述之該等組合。本文揭示之感測電路、感測放大器、計算組件、動態鎖存器、隔離器件及/或移位電路之其他組合及組態明確包含於本發明之範疇內。
儘管已在本文中繪示且描述特定實施例,但一般技術者將暸解,經
計算以達成相同結果之一配置可取代展示之特定實施例。本發明旨在涵蓋本發明之一或多項實施例之調適或變動。應理解,已以一闡釋性方式而非一限制性方式做出上述描述。熟習此項技術者在檢視以上描述後將明白上述實施例之組合及在本文中未具體描述之其他實施例。本發明之一或多項實施例之範疇包含其中使用上述結構及方法之其他應用。因此,應參考隨附發明申請專利範圍以及此等發明申請專利範圍所授權之等效物之全範圍判定本發明之一或多項實施例之範疇。
在前述實施方式中,出於簡化本發明之目的,將一些特徵集中於一單一實施例中。本發明之此方法不應被解釋為反映本發明之所揭示實施例必須使用多於各發明申請專利範圍中明確敘述之特徵之一意圖。實情係,如以下發明申請專利範圍反映,本發明標的物在於少於一單一所揭示實施例之所有特徵。因此,藉此將以下發明申請專利範圍併入實施方式中,其中各發明申請專利範圍獨立地作為一單獨實施例。
451:輸入位址
453:轉譯表格基址暫存器
455:描述符位址
457:第一級表格描述符
459:描述符位址
461:第二級表格描述符
463:描述符位址
465:第三級表格描述符
467-1:第一資料部分
467-2:第二資料部分
467-3:第三資料部分
471:第一級查找
475:第二級查找
479:第三級查找
481:輸出位址
Claims (24)
- 一種記憶體裝置,其包括:一陣列,其包括經配置成藉由存取線耦合之列及藉由感測線耦合之行之記憶體胞;感測電路,其耦合至該陣列且包括:感測放大器,該等感測放大器之各者對應於不同感測線;及計算組件,該等計算組件之各者對應於不同感測線;及一記憶體控制器,其經耦合至該陣列,其中該記憶體控制器經組態以操作該感測電路以:引起將一頁面表格儲存於該陣列中;藉由存取該頁面表格而於該陣列中且在未發送資料至該陣列外之情況下判定資料之一部分之一實體位址;及引起將資料之該部分儲存於一緩衝器中。
- 如請求項1之裝置,其中該緩衝器係一轉譯旁看緩衝器(TLB)。
- 如請求項1之裝置,其中該控制器經組態以操作該感測電路以判定該實體位址包括該控制器經組態以獨立於自一主機接收執行一頁面尋選之中間指令而進行遍及該陣列中之該頁面表格之該頁面表格尋選。
- 如請求項3之裝置,其中該控制器經組態以引起將該頁面表格儲存於該陣列中包括該控制器經組態以使用指示資料之該部分之一位置之分層級 來儲存一系列描述符。
- 如請求項4之裝置,其中該等分層級之各者係對該等分層級之一隨後下一級之一子區段之一指標。
- 如請求項5之裝置,其中該等分層級之一最後分層級指示資料之該部分之該實體位址。
- 如請求項1之裝置,其中該記憶體胞陣列經組態以儲存該頁面表格而非與該記憶體胞陣列相關聯之一主記憶體。
- 一種用於操作一記憶體裝置之方法,該方法包括:搜尋對應於一轉譯旁看緩衝器(TLB)中之一虛擬位址之一實體位址;判定該虛擬位址非定位於該TLB中;在包括經配置成藉由存取線耦合之列及藉由感測線耦合之行之記憶體胞之一記憶體陣列中執行一頁面表格尋選,其中該頁面表格尋選之執行係:在獨立於來自一主機之中間頁面表格尋選指令且在未發送資料至該記憶體陣列外之情況下;及以感測線為基礎藉由使用該記憶體陣列之感測電路之計算組件執行數個邏輯運算之各者於一感測線上,其中該等計算組件對應於不同個別感測線;及基於該頁面表格尋選定位該實體位址。
- 如請求項8之方法,其中執行該頁面表格尋選包括解析該頁面表格之一第一級以判定該頁面表格之一第二級中之一位置。
- 如請求項9之方法,其包括解析該第二級以判定該頁面表格之一第三級中之一位置。
- 如請求項10之方法,其包括解析該頁面表格之該第三級以判定該頁面表格之一第四級中之一位置。
- 如請求項11之方法,其包括解析該頁面表格之該第四級以判定對應於該虛擬位址之該實體位址。
- 如請求項8之方法,其中回應於判定該實體位址,發送定位在待儲存於該TLB中之該實體位址處之資料之一部分。
- 如請求項8之方法,其中執行該頁面表格尋選包括同時比較該虛擬位址與該頁面表格之複數個元素之各者。
- 如請求項14之方法,其中比較該虛擬位址與該複數個元素之各者包括使用複數個第一感測組件來比較該虛擬位址與該複數個元素之一第一者。
- 如請求項15之方法,其中所使用之該複數個第一感測組件係對應於該虛擬位址及該複數個元素之該第一者之一長度之一數量。
- 如請求項15之方法,其中比較該虛擬位址與該複數個元素之各者包括與比較該虛擬位址與該複數個元素之該第一者同時使用複數個第二感測組件來比較該虛擬位址與該複數個元素之一第二者。
- 如請求項17之方法,其中該方法包含將該記憶體陣列及該感測電路用作一全關聯快取區以在解析一頁面表格之級的同時定位該實體位址。
- 一種記憶體裝置,其包括:一記憶體胞陣列,其經組態以儲存一頁面表格且經配置成藉由存取線耦合之列及藉由感測線耦合之行;感測電路,其耦合至該陣列且包括:感測放大器,該等感測放大器之各者對應於不同感測線;及計算組件,該等計算組件之各者對應於不同感測線;及一控制器,其經耦合至該陣列,其中該控制器經組態以操作該感測電路以:搜尋一轉譯旁看緩衝器(TLB)中之一位址,其中該位址與資料之一部分相關聯;回應於該TLB中不存在該位址,在未發送資料至該陣列外之情況下執行遍及該頁面表格之一尋選; 基於該頁面表格尋選而判定資料之該部分之一實體位址;及引起將資料之該部分儲存於該TLB中。
- 如請求項19之裝置,其中該記憶體胞陣列及該感測電路經組態為一全關聯快取區以判定該實體位址。
- 如請求項19之裝置,其中該控制器經組態以回應於資料之該部分不在該記憶體胞陣列中而指示一主機在一額外記憶體位置中定位資料之該部分。
- 一種用於操作一記憶體裝置之方法,該方法包括:回應於判定與資料之一部分相關聯之一虛擬位址非定位於一轉譯旁看緩衝器(TLB)中而對儲存於一記憶體陣列中之一頁面表格執行一頁面表格尋選以判定與資料之該部分相關聯之一實體位址,其中該記憶體陣列包括經配置成藉由存取線耦合之列及藉由感測線耦合之行;其中執行該頁面表格尋選包括解析頁面表格級同時:以感測線為基礎使用一感測電路之計算組件以執行數個邏輯運算之各者於一感測線上,其中該等計算組件對應於不同個別感測線;且在未發送資料至該記憶體陣列外之情況下。
- 如請求項22之方法,其中使用該感測電路同時解析該等頁面表格級包括比較該虛擬位址與該頁面表格中之複數個元素之各者。
- 如請求項23之方法,其中在比較該虛擬位址與該複數個元素之各者時,儲存於該記憶體陣列中之該頁面表格用作一全關聯快取區。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/437,982 US10402340B2 (en) | 2017-02-21 | 2017-02-21 | Memory array page table walk |
US15/437,982 | 2017-02-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201835767A TW201835767A (zh) | 2018-10-01 |
TWI699651B true TWI699651B (zh) | 2020-07-21 |
Family
ID=63167250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107105673A TWI699651B (zh) | 2017-02-21 | 2018-02-14 | 記憶體裝置及其操作方法 |
Country Status (5)
Country | Link |
---|---|
US (4) | US10402340B2 (zh) |
EP (1) | EP3586238A4 (zh) |
CN (2) | CN111949571B (zh) |
TW (1) | TWI699651B (zh) |
WO (1) | WO2018156377A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10402340B2 (en) * | 2017-02-21 | 2019-09-03 | Micron Technology, Inc. | Memory array page table walk |
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 |
DE102020105628A1 (de) | 2019-03-11 | 2020-09-17 | Samsung Electronics Co., Ltd. | Verfahren zur Durchführung interner Verarbeitungsvorgänge mit vordefinierter Protokollschnittstelle einer Speichervorrichtung |
CN111679785A (zh) * | 2019-03-11 | 2020-09-18 | 三星电子株式会社 | 用于处理操作的存储器装置及其操作方法、数据处理系统 |
US11094371B2 (en) | 2019-03-11 | 2021-08-17 | Samsung Electronics Co., Ltd. | Memory device for processing operation and method of operating the same |
US11360768B2 (en) | 2019-08-14 | 2022-06-14 | Micron Technolgy, Inc. | Bit string operations in memory |
US11061820B2 (en) * | 2019-08-30 | 2021-07-13 | Microsoft Technology Licensing, Llc | Optimizing access to page table entries in processor-based devices |
US11163695B2 (en) | 2019-12-03 | 2021-11-02 | International Business Machines Corporation | Methods and systems for translating virtual addresses in a virtual memory based system |
US11461237B2 (en) | 2019-12-03 | 2022-10-04 | International Business Machines Corporation | Methods and systems for translating virtual addresses in a virtual memory based system |
US11227641B1 (en) | 2020-07-21 | 2022-01-18 | Micron Technology, Inc. | Arithmetic operations in memory |
US11704238B1 (en) * | 2022-03-14 | 2023-07-18 | Silicon Motion, Inc. | Method and apparatus for accessing L2P address without searching group-to-flash mapping table |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4435793A (en) * | 1979-07-26 | 1984-03-06 | Tokyo Shibaura Denki Kabushiki Kaisha | Semiconductor memory device with dummy word line/sense amplifier activation |
US5680565A (en) * | 1993-12-30 | 1997-10-21 | Intel Corporation | Method and apparatus for performing page table walks in a microprocessor capable of processing speculative instructions |
US20160140048A1 (en) * | 2014-11-14 | 2016-05-19 | Cavium, Inc. | Caching tlb translations using a unified page table walker cache |
US20160147667A1 (en) * | 2014-11-24 | 2016-05-26 | Samsung Electronics Co., Ltd. | Address translation in memory |
US20160283396A1 (en) * | 2015-03-24 | 2016-09-29 | Arm Limited | Memory management |
Family Cites Families (322)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4380046A (en) | 1979-05-21 | 1983-04-12 | Nasa | Massively parallel processor computer |
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 |
EP0446721B1 (en) | 1990-03-16 | 2000-12-20 | Texas Instruments Incorporated | Distributed processing memory |
US5034636A (en) | 1990-06-04 | 1991-07-23 | Motorola, Inc. | Sense amplifier with an integral logic function |
US5210850A (en) | 1990-06-15 | 1993-05-11 | Compaq Computer Corporation | Memory address space determination using programmable limit registers with single-ended comparators |
JP3361825B2 (ja) | 1990-08-22 | 2003-01-07 | テキサス インスツルメンツ インコーポレイテツド | メモリ・アレイ・アーキテクチャ |
JPH06103599B2 (ja) | 1990-11-16 | 1994-12-14 | 三菱電機株式会社 | 半導体集積回路装置 |
US5325519A (en) | 1991-10-18 | 1994-06-28 | Texas Microsystems, Inc. | Fault tolerant computer with archival rollback capabilities |
FR2685973B1 (fr) | 1992-01-03 | 1994-02-25 | France Telecom | Point memoire pour memoire associative. |
KR950005095Y1 (ko) | 1992-03-18 | 1995-06-22 | 문정환 | 양방향성 그로벌 비트 라인을 갖는 dram |
KR940004434A (ko) | 1992-08-25 | 1994-03-15 | 윌리엄 이. 힐러 | 스마트 다이나믹 랜덤 억세스 메모리 및 그 처리방법 |
KR950004854B1 (ko) | 1992-10-08 | 1995-05-15 | 삼성전자 주식회사 | 반도체 메모리 장치 |
US5485373A (en) | 1993-03-25 | 1996-01-16 | Taligent, Inc. | Language-sensitive text searching system with modified Boyer-Moore process |
US5440482A (en) | 1993-03-25 | 1995-08-08 | Taligent, Inc. | Forward and reverse Boyer-Moore string searching of multilingual text having a defined collation order |
US5754478A (en) | 1993-04-20 | 1998-05-19 | Micron Technology, Inc. | Fast, low power, write scheme for memory circuits using pulsed off isolation device |
US5369622A (en) | 1993-04-20 | 1994-11-29 | Micron Semiconductor, Inc. | Memory with isolated digit lines |
JP2663838B2 (ja) | 1993-07-27 | 1997-10-15 | 日本電気株式会社 | 半導体集積回路装置 |
JP3252306B2 (ja) | 1993-08-10 | 2002-02-04 | 株式会社日立製作所 | 半導体不揮発性記憶装置 |
JP3904244B2 (ja) | 1993-09-17 | 2007-04-11 | 株式会社ルネサステクノロジ | シングル・チップ・データ処理装置 |
JP3251421B2 (ja) | 1994-04-11 | 2002-01-28 | 株式会社日立製作所 | 半導体集積回路 |
US5655113A (en) | 1994-07-05 | 1997-08-05 | Monolithic System Technology, Inc. | Resynchronization circuit for a memory system and method of operating same |
JPH0831168A (ja) | 1994-07-13 | 1996-02-02 | Hitachi Ltd | 半導体記憶装置 |
US5481500A (en) | 1994-07-22 | 1996-01-02 | International Business Machines Corporation | Precharged bit decoder and sense amplifier with integrated latch usable in pipelined memories |
US5615404A (en) | 1994-10-31 | 1997-03-25 | Intel Corporation | System having independently addressable bus interfaces coupled to serially connected multi-ported signal distributors generating and maintaining frame based polling schedule favoring isochronous peripherals |
US5638128A (en) | 1994-11-08 | 1997-06-10 | General Instrument Corporation Of Delaware | Pixel interpolation filters for video decompression processor |
US5724366A (en) | 1995-05-16 | 1998-03-03 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor memory device |
KR0146530B1 (ko) | 1995-05-25 | 1998-09-15 | 김광호 | 단속제어회로를 구비한 반도체 메모리 장치와 제어방법 |
US7301541B2 (en) | 1995-08-16 | 2007-11-27 | Microunity Systems Engineering, Inc. | Programmable processor and method with wide operations |
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 |
US8452912B2 (en) | 2007-10-11 | 2013-05-28 | Super Talent Electronics, Inc. | Flash-memory system with enhanced smart-storage switch and packed meta-data cache for mitigating write amplification by delaying and merging writes until a host read |
JP4627103B2 (ja) | 2000-01-18 | 2011-02-09 | 富士通セミコンダクター株式会社 | 半導体記憶装置及びその制御方法 |
WO2001057875A1 (fr) | 2000-02-04 | 2001-08-09 | Hitachi, Ltd. | Dispositif semi-conducteur |
US20010042069A1 (en) | 2000-02-29 | 2001-11-15 | Petrov Peter D. | Method and apparatus for building a memory image |
JP3983969B2 (ja) | 2000-03-08 | 2007-09-26 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US7028170B2 (en) | 2000-03-08 | 2006-04-11 | Sun Microsystems, Inc. | Processing architecture having a compare capability |
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 |
KR100872213B1 (ko) | 2000-07-07 | 2008-12-05 | 모사이드 테크놀로지스, 인코포레이티드 | 메모리 소자에서의 읽기 명령 수행 방법 |
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 |
EP1195546B1 (en) | 2000-10-03 | 2004-09-29 | Kabushiki Kaisha Kobe Seiko Sho | Valve device |
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 |
US7546438B2 (en) | 2001-07-19 | 2009-06-09 | Chung Shine C | Algorithm mapping, specialized instructions and architecture features for smart memory computing |
US6807614B2 (en) | 2001-07-19 | 2004-10-19 | Shine C. Chung | Method and apparatus for using smart memories in computing |
ITRM20010531A1 (it) | 2001-08-31 | 2003-02-28 | Micron Technology Inc | Dispositivo rilevatore a bassa potenza e alta tensione per memorie ditipo flash. |
US7260672B2 (en) | 2001-09-07 | 2007-08-21 | Intel Corporation | Using data stored in a destructive-read memory |
US7062689B2 (en) | 2001-12-20 | 2006-06-13 | Arm Limited | Method and apparatus for memory self testing |
US20040073773A1 (en) | 2002-02-06 | 2004-04-15 | Victor Demjanenko | Vector processor architecture and methods performed therein |
US6707729B2 (en) | 2002-02-15 | 2004-03-16 | Micron Technology, Inc. | Physically alternating sense amplifier activation |
AU2003221680A1 (en) | 2002-04-09 | 2003-10-27 | The Research Foundation Of State University Of New York | Multiplier-based processor-in-memory architectures for image and graphics processing |
JP2003331598A (ja) | 2002-05-13 | 2003-11-21 | Mitsubishi Electric Corp | 半導体記憶装置 |
US7406494B2 (en) | 2002-05-14 | 2008-07-29 | Texas Instruments Incorporated | Method of generating a cycle-efficient bit-reverse index array for a wireless communication system |
JP2003346484A (ja) | 2002-05-23 | 2003-12-05 | Mitsubishi Electric Corp | 不揮発性半導体記憶装置 |
US6789099B2 (en) | 2002-06-10 | 2004-09-07 | International Business Machines Corporation | Sense-amp based adder with source follower evaluation tree |
US7054178B1 (en) | 2002-09-06 | 2006-05-30 | Etron Technology, Inc. | Datapath architecture for high area efficiency |
US6987693B2 (en) | 2002-09-24 | 2006-01-17 | Sandisk Corporation | Non-volatile memory and method with reduced neighboring field errors |
US7079407B1 (en) | 2002-10-18 | 2006-07-18 | Netlogic Microsystems, Inc. | Content addressable memory (CAM) device including match line sensing |
US6765834B2 (en) | 2002-11-19 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | System and method for sensing memory cells of an array of memory cells |
KR100546307B1 (ko) | 2002-12-05 | 2006-01-26 | 삼성전자주식회사 | 글로벌 입출력라인을 프리차지 및/또는 이퀄라이징하기위한 프리차지 회로를 구비하는 반도체 장치 및프리차지 및/또는 이퀄라이즈하는 트랜지스터의 레이아웃 |
US6731542B1 (en) | 2002-12-05 | 2004-05-04 | Advanced Micro Devices, Inc. | Circuit for accurate memory read operations |
US6888372B1 (en) | 2002-12-20 | 2005-05-03 | Altera Corporation | Programmable logic device with soft multiplier |
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 |
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 |
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 |
JP3898152B2 (ja) | 2003-05-27 | 2007-03-28 | ローム株式会社 | 演算機能付き記憶装置および演算記憶方法 |
US7117290B2 (en) * | 2003-09-03 | 2006-10-03 | Advanced Micro Devices, Inc. | MicroTLB and micro tag for reducing power in a processor |
CN1846278B (zh) | 2003-09-04 | 2010-04-28 | Nxp股份有限公司 | 集成电路和高速缓冲存储器的重新映射方法 |
US6956770B2 (en) | 2003-09-17 | 2005-10-18 | Sandisk Corporation | Non-volatile memory and method with bit line compensation dependent on neighboring operating modes |
US7177183B2 (en) | 2003-09-30 | 2007-02-13 | Sandisk 3D Llc | Multiple twin cell non-volatile memory array and logic block structure and method therefor |
US7913125B2 (en) | 2003-11-04 | 2011-03-22 | Lsi Corporation | BISR mode to test the redundant elements and regular functional memory to avoid test escapes |
US6950771B1 (en) | 2003-12-09 | 2005-09-27 | Xilinx, Inc. | Correlation of electrical test data with physical defect data |
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 |
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 |
US7509474B2 (en) * | 2005-06-08 | 2009-03-24 | Micron Technology, Inc. | Robust index storage for 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 |
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 |
US7885119B2 (en) | 2006-07-20 | 2011-02-08 | Sandisk Corporation | Compensating for coupling during programming |
US7443729B2 (en) | 2006-07-20 | 2008-10-28 | Sandisk Corporation | System that compensates for coupling based on sensing a neighbor using coupling |
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 |
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 |
US8352705B2 (en) * | 2008-01-15 | 2013-01-08 | Vmware, Inc. | Large-page optimization in virtual memory paging systems |
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 |
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 | 삼성전자 주식회사 | 개선된 로컬 입출력라인 프리차아지 스킴을 갖는 반도체 메모리 장치 |
US20100162038A1 (en) | 2008-12-24 | 2010-06-24 | Jared E Hulbert | Nonvolatile/Volatile Memory Write System and Method |
TWI413931B (zh) | 2009-01-15 | 2013-11-01 | Phison Electronics Corp | 快閃記憶體資料之存取方法及其儲存系統與控制系統 |
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 |
WO2010123304A2 (en) * | 2009-04-24 | 2010-10-28 | Samsung Electronics Co., Ltd. | Multiplexing large payloads of control information from user equipments |
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 | 株式会社東芝 | 半導体記憶装置 |
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 |
US20120246380A1 (en) | 2009-10-21 | 2012-09-27 | Avidan Akerib | Neighborhood operations for parallel processing |
US9477636B2 (en) | 2009-10-21 | 2016-10-25 | Micron Technology, Inc. | Memory having internal processors and data communication methods in memory |
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 |
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 |
US20120331265A1 (en) * | 2011-06-24 | 2012-12-27 | Mips Technologies, Inc. | Apparatus and Method for Accelerated Hardware Page Table Walk |
US8706958B2 (en) | 2011-09-01 | 2014-04-22 | Thomas Hein | Data mask encoding in data bit inversion scheme |
DE112011105706T5 (de) | 2011-10-28 | 2014-07-10 | Hewlett-Packard Development Company, L.P. | Zeilenverschiebender verschiebbarer Speicher |
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 |
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 |
US9213649B2 (en) * | 2012-09-24 | 2015-12-15 | Oracle International Corporation | Distributed page-table lookups in a shared-memory system |
KR102062301B1 (ko) | 2013-01-03 | 2020-01-03 | 삼성전자주식회사 | 메모리 장치의 페이지 복사 방법 및 메모리 시스템의 페이지 관리 방법 |
US20140215185A1 (en) | 2013-01-29 | 2014-07-31 | Atmel Norway | Fetching instructions of a loop routine |
US9158667B2 (en) | 2013-03-04 | 2015-10-13 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9171153B2 (en) | 2013-05-17 | 2015-10-27 | Hewlett-Packard Development Company, L.P. | Bloom filter with memory element |
US8964496B2 (en) | 2013-07-26 | 2015-02-24 | Micron Technology, Inc. | Apparatuses and methods for performing compare operations using sensing circuitry |
US9939935B2 (en) * | 2013-07-31 | 2018-04-10 | Apple Inc. | Scan engine for touch controller architecture |
US8971124B1 (en) | 2013-08-08 | 2015-03-03 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9153305B2 (en) | 2013-08-30 | 2015-10-06 | Micron Technology, Inc. | Independently addressable memory array address spaces |
US9019785B2 (en) | 2013-09-19 | 2015-04-28 | Micron Technology, Inc. | Data shifting via a number of isolation devices |
US9449675B2 (en) | 2013-10-31 | 2016-09-20 | Micron Technology, Inc. | Apparatuses and methods for identifying an extremum value stored in an array of memory cells |
US9430191B2 (en) | 2013-11-08 | 2016-08-30 | Micron Technology, Inc. | Division operations for memory |
US20150270015A1 (en) | 2014-03-19 | 2015-09-24 | Micron Technology, Inc. | Memory mapping |
US9934856B2 (en) | 2014-03-31 | 2018-04-03 | Micron Technology, Inc. | Apparatuses and methods for comparing data patterns in memory |
WO2015171914A1 (en) | 2014-05-08 | 2015-11-12 | Micron Technology, Inc. | Hybrid memory cube system interconnect directory-based cache coherence methodology |
EP3140749B1 (en) | 2014-05-08 | 2021-01-13 | Micron Technology, INC. | In-memory lightweight coherency |
US9910787B2 (en) | 2014-06-05 | 2018-03-06 | Micron Technology, Inc. | Virtual address table |
US9449674B2 (en) | 2014-06-05 | 2016-09-20 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9786335B2 (en) | 2014-06-05 | 2017-10-10 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US10074407B2 (en) | 2014-06-05 | 2018-09-11 | Micron Technology, Inc. | Apparatuses and methods for performing invert operations using sensing circuitry |
US9711206B2 (en) | 2014-06-05 | 2017-07-18 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9455020B2 (en) | 2014-06-05 | 2016-09-27 | Micron Technology, Inc. | Apparatuses and methods for performing an exclusive or operation using sensing circuitry |
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 |
US9496023B2 (en) | 2014-06-05 | 2016-11-15 | Micron Technology, Inc. | Comparison operations on logical representations of values in memory |
US9704540B2 (en) | 2014-06-05 | 2017-07-11 | Micron Technology, Inc. | Apparatuses and methods for parity determination using sensing circuitry |
US9830999B2 (en) | 2014-06-05 | 2017-11-28 | Micron Technology, Inc. | Comparison operations in memory |
JP6221981B2 (ja) * | 2014-07-25 | 2017-11-01 | 株式会社デンソー | 回転電機の制御装置 |
GB2528842B (en) * | 2014-07-29 | 2021-06-02 | Advanced Risc Mach Ltd | A data processing apparatus, and a method of handling address translation within a data processing apparatus |
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 |
US9740607B2 (en) | 2014-09-03 | 2017-08-22 | Micron Technology, Inc. | Swap operations in memory |
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 |
US9589602B2 (en) | 2014-09-03 | 2017-03-07 | Micron Technology, Inc. | Comparison operations in memory |
US9747961B2 (en) | 2014-09-03 | 2017-08-29 | Micron Technology, Inc. | Division 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 |
US10073635B2 (en) | 2014-12-01 | 2018-09-11 | Micron Technology, Inc. | Multiple endianness compatibility |
US9747960B2 (en) | 2014-12-01 | 2017-08-29 | Micron Technology, Inc. | Apparatuses and methods for converting a mask to an index |
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 |
US9741399B2 (en) | 2015-03-11 | 2017-08-22 | Micron Technology, Inc. | Data shift by elements of a vector in memory |
US9898253B2 (en) | 2015-03-11 | 2018-02-20 | Micron Technology, Inc. | Division operations on variable length elements in memory |
WO2016144726A1 (en) * | 2015-03-12 | 2016-09-15 | 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 |
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 |
US9892058B2 (en) * | 2015-12-16 | 2018-02-13 | Advanced Micro Devices, Inc. | Centrally managed unified shared virtual address space |
US10402340B2 (en) * | 2017-02-21 | 2019-09-03 | Micron Technology, Inc. | Memory array page table walk |
US10642751B2 (en) * | 2017-07-20 | 2020-05-05 | Vmware, Inc. | Hardware-assisted guest address space scanning in a virtualized computing system |
US11042485B2 (en) * | 2018-06-20 | 2021-06-22 | Vmware, Inc. | Implementing firmware runtime services in a computer system |
US11573904B2 (en) * | 2018-10-12 | 2023-02-07 | Vmware, Inc. | Transparent self-replicating page tables in computing systems |
US10929295B2 (en) * | 2019-01-23 | 2021-02-23 | Vmware, Inc. | Accelerating replication of page tables for multi-socket machines |
-
2017
- 2017-02-21 US US15/437,982 patent/US10402340B2/en active Active
-
2018
- 2018-02-13 CN CN202010849431.0A patent/CN111949571B/zh active Active
- 2018-02-13 EP EP18757312.6A patent/EP3586238A4/en not_active Withdrawn
- 2018-02-13 CN CN201880012922.0A patent/CN110325972B/zh active Active
- 2018-02-13 WO PCT/US2018/017901 patent/WO2018156377A1/en unknown
- 2018-02-14 TW TW107105673A patent/TWI699651B/zh active
-
2019
- 2019-08-30 US US16/556,989 patent/US11182304B2/en active Active
-
2021
- 2021-11-19 US US17/531,551 patent/US11663137B2/en active Active
-
2023
- 2023-05-30 US US18/203,143 patent/US20230401158A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4435793A (en) * | 1979-07-26 | 1984-03-06 | Tokyo Shibaura Denki Kabushiki Kaisha | Semiconductor memory device with dummy word line/sense amplifier activation |
US5680565A (en) * | 1993-12-30 | 1997-10-21 | Intel Corporation | Method and apparatus for performing page table walks in a microprocessor capable of processing speculative instructions |
US20160140048A1 (en) * | 2014-11-14 | 2016-05-19 | Cavium, Inc. | Caching tlb translations using a unified page table walker cache |
US20160147667A1 (en) * | 2014-11-24 | 2016-05-26 | Samsung Electronics Co., Ltd. | Address translation in memory |
US20160283396A1 (en) * | 2015-03-24 | 2016-09-29 | Arm Limited | Memory management |
Also Published As
Publication number | Publication date |
---|---|
CN110325972A (zh) | 2019-10-11 |
US20180239712A1 (en) | 2018-08-23 |
US10402340B2 (en) | 2019-09-03 |
WO2018156377A1 (en) | 2018-08-30 |
US11663137B2 (en) | 2023-05-30 |
CN111949571B (zh) | 2024-04-26 |
EP3586238A1 (en) | 2020-01-01 |
CN110325972B (zh) | 2020-09-15 |
US20230401158A1 (en) | 2023-12-14 |
US20220075733A1 (en) | 2022-03-10 |
US20190384721A1 (en) | 2019-12-19 |
US11182304B2 (en) | 2021-11-23 |
EP3586238A4 (en) | 2021-01-13 |
TW201835767A (zh) | 2018-10-01 |
CN111949571A (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI699651B (zh) | 記憶體裝置及其操作方法 | |
US11726791B2 (en) | Generating and executing a control flow | |
US11163495B2 (en) | Processing in memory | |
US20200357467A1 (en) | Apparatuses and methods for comparing data patterns in memory | |
US20200219544A1 (en) | Longest element length determination in memory | |
US10540144B2 (en) | Signed division in memory | |
US20180366165A1 (en) | Apparatuses and methods for performing logical operations using sensing circuitry | |
US20170316817A1 (en) | Performing logical operations using sensing circuitry | |
US20240170047A1 (en) | Processing in memory | |
US10622034B2 (en) | Element value comparison in memory | |
US11404109B2 (en) | Logical operations using memory cells | |
US10043570B1 (en) | Signed element compare in memory |