TWI359376B - Memory device and method having on-board address p - Google Patents
Memory device and method having on-board address p Download PDFInfo
- Publication number
- TWI359376B TWI359376B TW97130737A TW97130737A TWI359376B TW I359376 B TWI359376 B TW I359376B TW 97130737 A TW97130737 A TW 97130737A TW 97130737 A TW97130737 A TW 97130737A TW I359376 B TWI359376 B TW I359376B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- protection
- bank
- address
- signal
- Prior art date
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/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/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- 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/0844—Multiple simultaneous or quasi-simultaneous cache accessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Storage Device Security (AREA)
Description
1359376 九、發明說明: 【發明所屬之技術領域】 本發明大體而言係關於記憶體裝置,且更特定言之,係 關於促進由多重記憶體存取裝置進行之存取的記憶體裝置 及方法’以及使用該等記憶體裝置之記憶體系統及電腦系 統。 【先前技術】 隨著電腦及電腦系統架構繼續演進,處理核心及核心内 之線緒的數目呈幾何級增長。此幾何級增長預期會繼續, 即使是對於簡單、相對廉價之電腦系統而言。對於伺服器 系統,以處理器之數目量測之系統大小以甚至更快之速率 增加。 雖然核心及線緒之數目之此快速增加增強了電腦系統之 效能’但其亦具有使得難以將增加之並行性應用至單一應 用之影響。此限制甚至對於本質上自身幫助並行處理之高 端處理任務(諸如,天氣預測)亦存在。此限制之主要原因 中之一者在於處理器、核心及線緒之間的通信路徑之數目 與將任務劃分為愈來愈小之片段的次數不成比例地增加。 在概念上’可將此問題類推說明為由3D立方體之體積表示 的處理之大小。每次將此體積劃分為較小立方體,表示必 須在工作於子立方體上之處理器之間傳達之資料的立方體 之總表面積增加。每次處理器之數目以因數八增長,待於 較大數目之處理器之間傳達的資訊之總量加倍。 由增加之並行性引起之此等問題的一個原因在於大多數 133495.doc 1359376 2 =處理器之間發送訊息而非共用記憶體來通信》 門顳w 了簡化一些複雜系統架構、作業系統及編譯器 問題’但其導致高延時及高 軟體附加項。不幸的是,隨著 仃*丨程度增加’系統中之處理器到達其所做之一切係管 理訊息訊務而非實際進行有用工作之點。 因此存在對可減少軟體附加項且消除或至少減少效能瓶 _此以相對低之成本改良系統效能及架構可縮放性之系 統及方法的需要。
【實施方式】 圖1中展示根據一實施例之電腦系統1〇。電腦系統1〇包 括連接至制處理器匯流排16之若干並行處ίΐ||ΐ4ι_Ν。亦 連接至處理器匯流排16的是系統控制器2〇及2階(「[2」) 快取記憶體24。如此項技術中所熟知,處理器141^中之每 一者可包括一 1階(「L1」)快取記憶體。 系統控制器2 0經由可包括習知設計之圖形處理器及圖形 記憶體之圖形加速器28而驅動顯示器26。亦連接至系統_ 制器20的是諸如周邊組件互連(「PCI」)匯流排之輸入 出(「I/O」)匯流排30,鍵盤32'諸如硬碟機之大容量儲存 裝置34及其他周邊裝置36連接至該輸入/輸出匯流排3〇。 當然’亦可存在諸如祠服器之系統’其不具有(例如)直接 連接之鍵盤、圖形或顯示能力。 電腦系統10亦包括可為動態隨機存取記憶體 (「DRAM」)裝置或該等裝置之集合的系統記憶體4〇。由 系統控制器20中之記憶體控制器電路44經由通常包括命令/ 133495.doc 1359376
狀態匯流排、位址匿流排及資料匯流排之記憶體匯流排牝 控制系統記憶體40。亦存在直接於處理器Ic内實施系統及 δ己憶體控制器的系統。如至此所描述,電腦系統為習知 的。然而,系統記憶體40藉由在系統記憶體4〇中包括增強 並行處理器14α以有效低延時方式存取系統記憶體4〇之能 力的位址保護系統50而不同於習知系統。亦應理解,系統 50可用於電腦或不同於^中所示之電腦系統⑺之其他基 於處理器之系統中的記憶體裝置中。舉例而言,伺服器及 其他高端系統通常將不包括圖形加速器28、顯示㈣、鍵 盤32等等’但將具有磁碟系統或簡單地連接至具有所附著 之記憶體之其他類似處理器的網路。 可在系統記憶體40中實施保護系統5〇或根據某一具他霄 施例之處理系、统’同時將記憶體系統之内部組織保持為盥 在習,系統:憶體中大體上相同。舉例而言,記憶_ 序及e己憶體貧料速率
頁抖迷羊了大體上相同。另外,系統50無需特 別迅逮,因為所需操作通常為簡單的且適合 之記憶體時脈速率。使用伴噌$ ^ 預期 用保"蒦系統5 0以防止處理器j 4 尹 =少:些在給定時間存取系統記憶體4〇,同時允許處理 ;魅之至 >—者存取系統記憶體4G。保護系統5〇因此 題。舉例而言,當多個虚: 問題的資料連貫性問 g « A 處理序需更新共同資料時,更新必 ^ ^ ^ ϋ ^ ^ 串仃地執行更新。向高端系統添 加複雜硬體及軟體以啟 h ^ .L ^ ^ Q ^動作。較廉價之電腦系統中之 及軟體的缺乏可為增加該等電腦系統中之並行 133495.doc 1359376 性的主要阻礙。保護系統藉由產… 而使此連貫性能夠以 又保護」記憶體位置 之方式發生。除提伊處理=要求具有最小影響的自然直接 可使資料能夠在某:=:之間的連貫性以外,保護系統 而操作對於其他處理序呈現處得以更新, 理序更新該資科時參考該資科。刀在於防止其在其他處
琢-實施例的可用於系統記 Π保護系統60的部分。使用保護系統6。:防= …中之至少一些在給定時間存取系 處 理器14丨_N中之至少一去六免么 w遛40且允許處 援多虚理1❽ 系統記憶體4G。保護系統60支 夕處理盗多線緒連貫性以使得若參考受保 特定受保護位址的過程中 ’、》 ,彳在參考 J α枉T义須使用經修改之命 + 體位址「受保護」時,處理器〜必須發布受保護之參考 ^使得其可存取並修改資料,而試圖以正常記憶體命令參 考或修改彼資料項之其他處理器14!_ν被阻止存取受保護資 料。記憶體位址受保護或未受保護可提供處理器及處理序 之間的連貫性協調。一處理器14|ν可保護一記憶體位置。 其他處理器14ΝΝ接著可使用對彼位置之未受保護參考以等 待保護被丟棄,因此充當旗標及排序機構。此保護協定既 而為可由應用及OS軟體以多種方式使用之非常通用的通信 及連貫性實施之基礎。 參看圖2,保護系統60包括保護邏輯μ,其自保護位元 暫存器66接收位址位元。在將保護命令提供至保護邏輯64 的同時將諸如一列的受保護位置之位址提供至保護位元暫 133495.doc 1359376 存器保護位元暫存器66接著繼續將受保護位址施加至 保。董邏輯64直至由提供至保護系統6〇之相應命令釋放保護 為止。保護邏輯64通常將信號導引至允許發生由命令減 之記憶體操作的記憶體庫68。舉例而言,可經由保護邏輯 64「導引通常導引至記憶體庫以啟用其操作的晶片選擇 (cs」)信號。若由保護邏輯64偵測賴受保護位址之存 取,則邏輯64不將CS信號輕接至記憶體庫68。可以類似方 式替代地封鎖其他命令。舉例而言,若偵測到對受保護位 置之存取,則可封鎖用以指定讀取或寫入命令之信號的組 合與記憶體庫68。 在操作中,#使用經修改之命令來參考受保護位址,則 執仃該命令(通常為讀取或寫入)。若進行對受保護位址之 ,常(未受保護)參考’則㈣邏輯64防止執行參考且返回 指示參考被拒絕的信號。若進行對未受保護位址之受保護 參考,則其亦被拒絕》下文較為詳細地描述用於連貫性操 作之此保護能力。在受保護操作之支援下,可在記憶體匯 流排46(圖υ中提供另一線路,其指示參考嘗試已違背保護 協定。藉由使記憶體裝置40提供受保護存取,記,隐體控制 器44之設計較之在控制器44將支援保護及連貫性之情況下 會需要的設計得以簡化。記憶體控制器44無需將受保護資 料之每一項的複本保持為活動且(可能地)實際實施原子操 作,或甚至留意保護哪些位址。記憶體控制器料可使特定 位址與特定執行線緒相關聯,返回資料至保持對此位址之 原子權利的線緒或自該線緒接受資料(若處理器14〗-Ν不可 133495.doc 1359376 藉由自身容易地產生受保護參考),且可忽略其他線緒進 行的對受保護位址之其他參考,而依賴於記憶體裝置4〇來 防止存取。 當進行對記憶體控制器44之參考(其來自當前具有連貫 及/或原子存取之線緒)時,記憶體控制器44可將命令修改 為爻保護參考命令。然而,記憶體控制器44較佳地獲得對 於連貫及遠端原子參考之不同參考類型,從而簡化記憶體 控制器44之設計。當控制器44偵測到不同參考類型時,其 產生不同於未受保護之參考的受保護參考且將其發送至記 憶體裝置40。若進行對未受保護之位址的受保護參考,則 拒絕參考,此與對受保護位址進行標準參考時之情況相 同。接著將請求之拒絕/接受狀態傳遞回請求處理器。然 而’在-些實施例中’記憶體控制器44處理對受保護位址 之衝突存取以使得減少傳至記憶體裝置4〇之訊務且使得其 可用於其他參考。 八
右圮憶體裝置40包括快取記憶體7〇(儘管不需要快取記 憶體),則保護系統60亦可用。替代保護對記憶體庫心 存取,保護邏輯64可暂代地或額外地以與上文所描述相同 的方式保護對快取記憶體7()之存取。更具體言之每 :取線路中之位置時’此線路變得鎖定於快取記憶: X且不可在正f快取參考中被逐出。若進行僅經鎖定之 ==出之快取未命中參考,則進行對記憶體庫 一、取所參考之線路。快取記憶體70中之每一 線路可具有具有保護之多個位址。舉例而言,每一快取線 133495.doc 1359376 路可具有256至1024之鎖定範圍。每一個別鎖定保護此特 定鎖定之位址範圍内的所有參考。若在快取線路中存在 256個鎖定位置且線路大小為1千位元組,則每一鎖定覆蓋 快取線路中之4個位元組/32個位元。若對於一記憶體參考 存取16x4個部分,則由每一鎖定覆蓋16χ32個位元=5 a個 位元=6 4個位元組。
在另一實施例中,相對小數目(諸如,四個)之暫存器與 每一快取線路相關聯,其中每一暫存器保持此線路之一行 位址。當進行參考時,比較暫存器中之每一者與請求位址 之相應位元。匹配任何暫存器内容指示受保護位址。既 而,設定鎖定及釋放涉及輸入及清除或無效化保護暫存 器。可將暫存器實施為下推堆疊(push-d〇wn stack)。此將 允許向下至個別轉遞層(transfer level)之保護,但將鎖定 之數目限制為遠小於具有個別位元鎖定。
在其他實施例中,子快取記憶體中之每一暫存器亦載有 當設定鎖定時儲存之ID碼。由於受保護參考始終為對快取 3己憶體7 0的參考,因此可將列位址位元中之一些用作個別 鎖定之識別符(「ID碼」)。記憶體控制器44儲存接著可用 以防止來自一程式之鎖定干擾另一程式之鎖定的ID碼。 在操作中’記憶體控制器44首先將設定鎖定函式發送至 s己憶體裝置40。可針對已處於快取記憶體7〇中之位址或針 對如規則未命令序列的必須自記憶體庫68取出之位址而設 定鎖定。接著將受保護讀取或寫入參考發送至記憶體裝置 40且將受保護狀態及位址儲存於保護位元暫存器66中。進 133495.doc 1359376 行受保護參考指示必須找到對應於所請求之位址之鎖定保 4可對又保”蒦範圍中之位址進行所要次數之受保護讀取 及寫入。在已完成存取之後,記憶體控制器44將釋放鎖定 函式發送至保護邏輯64,因為不再需要對經鎖定之位址之 保護。記憶體控制器44因此將關於同-位址之其他請求按 次序保持對每-記憶體位址之參考。因此在發送釋放鎖 定之後的任何請求將為未受保護之參考》 在以下表1中展示可由記憶體控制器44發送的命令函式 之映射之一實例,皇中「γ 社-「/立,丄 〃 f X」W「任意值」位元。使用記 憶體控制器44通常傳輸至記憶體裝置40之RAS、㈤及· 信號來對命令函式進行編碼,且由添加至系統記憶體40中 之函式解碼邏輯的邏輯且由保護邏輯64對其加以解碼。在 保護活動之情況下,修改由此等信號指示之正常函式。 表1
參看表1,將釋放鎖定函式視為受保護參 ^ ’ 右寥考位 址處於快取記憶體70中但未受保護,則不進行任何動 且記憶體裝置40返回「拒絕/命中」指示。若所參考, 址不處於快取記憶體70中,則記憶體裝 之位 ,., 返回「拒絕/ 未命中」指示。若所參考之位址成功提供對快取記憶體川 133495.doc 12 之存取,則記憶體裝置40返回「接受/命中」指示,且呓 憶體控制器44接著清除保護。 。 進—步參看表1’,設定鎖定函式為未受保護參考。若參 考位址之資料儲存於快取記憶體中且受保護則不進行任 何動作’且記憶體裝置40返回「拒絕/命中」指示。若所 參考之位址之資料未儲存於快取記憶體中’則開始未命中 j且返回接文/未命中」指示。在此狀況下,當將 線路载^至其子快取記憶體令時,所參考之位址將具有受 保護狀態。若位址存在且未受保護,則記憶體裝置40連同 讀取資料返回「接受/命中」指*,且保護被設定。當進 订對又保。蒦位址之受保護參考時,執行該函式且記憶體裝 置40除任何讀取資料以外返回「接受/命中」指示。若所 ,考之位址之資料存在但未受保護,則記憶體裝置扣返回 拒絕/命中」指示。啟動函式使記憶體線路被載入至快 取記憶體70中且因此既非受保護亦非未受保護。最後,若 參考未命中但在快取記憶體7〇中無線路可用於被逐出,則 記憶體控制器44將請求轉變為非快取記憶體參考。將請求 發送至記憶體裝置44,該記憶體裝置44將線路寫入至記作 體庫68且進行記憶體參考,“在不進行快取之情況下執 行所需函式。 自前述内容將瞭解,雖'然已在本文中出於說明之目的描 述了本發明之特定實施例’但可在不偏離本發明之精神及 範嘴的情況下進行各種修改。因此,本發明除由所附申請 專利範圍限制以外不受限制。 133495.doc 13 1359376 【圖式簡單說明】 圖1為根據一實施例之電腦系統之方塊圖。 記憶體 U之電 圖2為含有根據一實施例之位址保護系統的系統 裝置之一部分之方塊圖,該位址保護系統可用於S 腦系統中。 【主要元件符號說明】 10 電腦系統 1 4 1 _N 並行處理器 16 共同處理器匯流排 20 系統控制器 24 層級2(「L2」)快昂 26 顯示器 28 圖形加速器 32 鍵盤 34 大容量儲存裝置 36 周邊裝置 40 系統記憶體 44 記憶體控制器電路 50 位址保護系統 60 位址保護系統 64 保護邏輯 66 保護位元暫存器 68 記憶體庫 70 快取記憶體 133495.doc
Claims (1)
1359376 十、申請專利範圍: i —種記憶體裝置,其包含: 至少一記憶體庫之記憶體單元; 定址電路,其耦接於外部端子與該至少一記情體 記憶體單元之間 ^ μ 一資料路徑,其耦接於外部端子與該至少—記憶體庫 之記憶體單元之間; 〜
。一命令解碼器,其耦接至外部端子,該命令解碼器可 操作以產生控制信號來控制該記憶體裝置之操作丨及 一保護系統,其搞接至該至少一記憶體庫之記憶體單 元’該保㈣統可操作以回應於來自複數個記憶體請求 器中之另一者的一信號而防止該等記憶體請求器中之至 少一者存取該至少一記憶體庫之記憶體單元。 2,如睛求項1之記憶體裝置,其中該保護系統包含: 一保護位元暫存器’其耦接至該定址電路,該保護位 元暫存器可操作以接收並儲存位址位元,該等位址位元 指示該至少一記憶體庫之記憶體單元中之一待受保護之 位址;及 保護邏輯,其可操作以接收至少一控制信號,該至少 一控制信號提供對該至少一記憶體庫之記憶體單元之存 取,該保護邏輯進一步可操作以自該保護位元暫存器接 收指示一受保護位址的信號,該保護邏輯可操作以回應 於接收到指示對該至少一記憶體庫之記憶體單元中之二 受保護位址之一存取的位址信號而使該至少—控制俨說 133495.doc 1359376 選擇性地耦接至該至少一記憶體庫之記憶體單元。 如明求項2之記憶體裝置,其中該至少一控制信號包含 一晶片選擇信號。 如吻求項1之記憶體裝置,其中該記憶體裝置進一步包 含一快取記憶體,且其中該保護系統進一步可操作以回 應於來自該等記憶體請求器中之另一者的一信號而防止 該等圮憶體請求器中之至少一者存取該快取記憶體。 一種電腦系統,其包含: 複數個處理器,其並行操作以執行並行處理函式; —系統控制器,其耦接至該等處理器,該系統控制器 包括一記憶體控制器;及 系統記憶體裝置,其耦接至該記憶體控制器,該系 統記憶體裝置包含: 至少一記憶體庫之記憶體單元; 一定址電路,其耦接至該記憶體控制器,該定址電 路可操作以回應於自該記憶體控制器接收之位址信號而 定址該至少一記憶體庫之記憶體單元; 一資料路徑,其耦接至該記憶體控制器,該資料路 徑可操作以耦接來自該記憶體控制器之寫入資料且將來 自該至少一記憶體庫之讀取資料耦接至該記憶體控制 器; 一命令解碼器,其耦接至該記憶體控制器,該命令 解碼器可操作以回應於自該記憶體控制器接收之記憶體 命令信號而產生控制信號來控制該記憶體裝置之操作;及 133495.doc 6. …7保護系統,其輕接至該至少一記憶體庫之記憶體 ^ ’該保護系統可操作以回應於來自複數個該等處理 窃中之另一者的一信號而防止該等處理器中之至少一者 存取該至少一記憶體庫之記憶體單元。 如請求項5之電腦系統,其中該保護系統包含: ;保濩位兀暫存器,其耦接至該記憶體控制器,該保 «蔓位7G暫存器可操作以接收並儲存自該記憶體控制器接 收的位址位元’該等位址位元指示該至少一記憶體庫之 記憶體單元中之一待受保護之位址;及 保護邏輯,彡可操作以接收至少一控制信號該至少 -控制信號提供對該至少一記憶體庫t記龍單元之存 取,該保護邏輯進一步可操作以自該保護位元暫存器接 收私示一欠保濩位址的該等信號,該保護邏輯可操作以 僅在該保護邏輯接收到一指示該等處理器中之一選定一 者已發起對該至少一記憶體庫之記憶體單元之該存取的 信號之情況下回應於自該記憶體控制器接收到指示對該 至少一記憶體庫之記憶體單元中之一受保護位址之一存 取的位址信號而使該至少一控制信號耦接至該至少一記 憶體庫之記憶體單元,該保護邏輯可操作以在該保護邏 輯接收到一指示該等處理器中之另一者已發起對該至少 一記憶體庫之記憶體單元之該存取的信號之情況下回應 於自該記憶體控制器接收到指示對該至少一記憶體庫之 記憶體早元中之'一受保s蔓位址之一存取的位址信號而抑 制將該至少一控制信號耦接至該至少一記憶體庫之記憶 133495.doc 體單元。 7. ::求項6之電腦系統,其中該至少一控 晶片選擇信號。 8. ::月求項5之電腦系統,其中該記憶體裝置進一步包含 :取記憶體,且其中該保護系統進一步可操作以回應 „。 器中之另一者的一信號而防止該等處理 盗之至少一者存取該快取記憶體。 9’ 7種在-積體電路記憶體裝置中增強該記憶體裝置與一 並行處理器介面遠垃夕$ 士々七、冬 接之能力之方法,該方法包含在該積 體電路記憶體裳置哮 置該s己隐體裝置内防止複數個記憶體請 ^ 之—者存取至少一記憶體庫之記憶體單元,同時 允許該複數個記憶體請求器中之另_者存取該至少 憶體庫之記憶體單元。 10.如請求項9之古、1 一 法,其中防止複數個記憶體請求器中之 一者存取至少一記憶體庫之記憶體單元的該動作包含. 僅在該存取_-預定位址之存取之情況下防止複數個 3己憶體請求φ > # #中之該-者存取該至少—記憶體庫之記憶 骚早兀。 1 1 ·如請求項9夕古*、、上 ^ , 一 方法,其中防止複數個記憶體請求器中之 者存取至少—記憶體庫之記憶體單元的該動作包含: 抑制該積體電路兮暗_ 接。 °己隐體裝置内之至少一控制信號的耦 12.如β奢求項11之方法,盆由分 万去,其中該至少一控制信號包含— 選擇信號。 片 133495.doc 1359376
13.如請求項9之方法,其中該積體電路記憶體裝置記憶體 裝置進一步包含一快取記憶體,且其中該方法進一步包 含防止複數個記憶體請求器中之一者存取該快取記憶 體,同時允許該複數個記憶體請求器中之另一者存取該 快取記憶體。 133495.doc
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/893,590 US8291174B2 (en) | 2007-08-15 | 2007-08-15 | Memory device and method having on-board address protection system for facilitating interface with multiple processors, and computer system using same |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200915178A TW200915178A (en) | 2009-04-01 |
TWI359376B true TWI359376B (en) | 2012-03-01 |
Family
ID=40351433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW97130737A TWI359376B (en) | 2007-08-15 | 2008-08-12 | Memory device and method having on-board address p |
Country Status (3)
Country | Link |
---|---|
US (2) | US8291174B2 (zh) |
TW (1) | TWI359376B (zh) |
WO (1) | WO2009023629A2 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8291174B2 (en) | 2007-08-15 | 2012-10-16 | Micron Technology, Inc. | Memory device and method having on-board address protection system for facilitating interface with multiple processors, and computer system using same |
US7822911B2 (en) * | 2007-08-15 | 2010-10-26 | Micron Technology, Inc. | Memory device and method with on-board cache system for facilitating interface with multiple processors, and computer system using same |
US8055852B2 (en) | 2007-08-15 | 2011-11-08 | Micron Technology, Inc. | Memory device and method having on-board processing logic for facilitating interface with multiple processors, and computer system using same |
WO2012010930A2 (en) * | 2010-07-21 | 2012-01-26 | Freescale Semiconductor, Inc. | Integrated circuit device, data storage array system and method therefor |
US10026458B2 (en) | 2010-10-21 | 2018-07-17 | Micron Technology, Inc. | Memories and methods for performing vector atomic memory operations with mask control and variable data length and data unit size |
US8996814B2 (en) * | 2010-12-21 | 2015-03-31 | Microsoft Technology Licensing, Llc | System and method for providing stealth memory |
US8645633B2 (en) * | 2011-05-17 | 2014-02-04 | International Business Machines Corporation | Facilitating data coherency using in-memory tag bits and faulting stores |
US8656121B2 (en) | 2011-05-17 | 2014-02-18 | International Business Machines Corporation | Facilitating data coherency using in-memory tag bits and tag test instructions |
US9280377B2 (en) * | 2013-03-29 | 2016-03-08 | Citrix Systems, Inc. | Application with multiple operation modes |
US9690703B1 (en) * | 2012-06-27 | 2017-06-27 | Netapp, Inc. | Systems and methods providing storage system write elasticity buffers |
KR102004849B1 (ko) * | 2012-08-02 | 2019-07-29 | 삼성전자 주식회사 | 동적 메모리 재할당 관리 방법과 상기 방법을 수행할 수 있는 장치 |
US9727113B2 (en) | 2013-08-08 | 2017-08-08 | Linear Algebra Technologies Limited | Low power computational imaging |
US10001993B2 (en) | 2013-08-08 | 2018-06-19 | Linear Algebra Technologies Limited | Variable-length instruction buffer management |
US9146747B2 (en) * | 2013-08-08 | 2015-09-29 | Linear Algebra Technologies Limited | Apparatus, systems, and methods for providing configurable computational imaging pipeline |
US11768689B2 (en) | 2013-08-08 | 2023-09-26 | Movidius Limited | Apparatus, systems, and methods for low power computational imaging |
US9910675B2 (en) | 2013-08-08 | 2018-03-06 | Linear Algebra Technologies Limited | Apparatus, systems, and methods for low power computational imaging |
US9471511B2 (en) * | 2013-11-24 | 2016-10-18 | Truly Protect Oy | System and methods for CPU copy protection of a computing device |
CN104765699B (zh) * | 2014-01-02 | 2018-03-27 | 光宝科技股份有限公司 | 处理系统及其操作方法 |
US20160019153A1 (en) * | 2014-07-18 | 2016-01-21 | Elliptic Technologies Inc. | Pre-loading cache lines |
US9645825B2 (en) * | 2015-01-15 | 2017-05-09 | Texas Instruments Deutschland Gmbh | Instruction cache with access locking |
US9678681B2 (en) * | 2015-06-17 | 2017-06-13 | International Business Machines Corporation | Secured multi-tenancy data in cloud-based storage environments |
US9779798B1 (en) * | 2017-01-06 | 2017-10-03 | Qualcomm Incorporated | Systems, methods, and computer programs for providing row tamper protection in a multi-bank memory cell array |
US11024361B2 (en) | 2017-01-06 | 2021-06-01 | Qualcomm Incorporated | Coincident memory bank access via cross connected shared bank resources |
JP6386611B1 (ja) * | 2017-03-24 | 2018-09-05 | テイ・エス テック株式会社 | 乗物用シート |
US11115383B2 (en) * | 2018-05-24 | 2021-09-07 | Texas Instruments Incorporated | System on chip firewall memory architecture |
US11010210B2 (en) * | 2019-07-31 | 2021-05-18 | International Business Machines Corporation | Controller address contention assumption |
CN112860595B (zh) * | 2021-03-12 | 2022-10-14 | 湖南国科微电子股份有限公司 | Pci设备或pcie设备、数据存取方法及相关组件 |
Family Cites Families (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4177474A (en) * | 1977-05-18 | 1979-12-04 | Energy Conversion Devices, Inc. | High temperature amorphous semiconductor member and method of making the same |
US5067071A (en) | 1985-02-27 | 1991-11-19 | Encore Computer Corporation | Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus |
US4789925A (en) | 1985-07-31 | 1988-12-06 | Unisys Corporation | Vector data logical usage conflict detection |
US4787041A (en) * | 1985-08-01 | 1988-11-22 | Honeywell | Data control system for digital automatic flight control system channel with plural dissimilar data processing |
JP2736380B2 (ja) * | 1987-08-11 | 1998-04-02 | 株式会社豊田中央研究所 | 炭化珪素質材料の製造方法及び原料組成物 |
US4796232A (en) | 1987-10-20 | 1989-01-03 | Contel Corporation | Dual port memory controller |
US5034355A (en) * | 1987-10-28 | 1991-07-23 | Kabushiki Kaisha Toyota Chuo Kenkyusho | Tough silicon carbide composite material containing fibrous boride |
US4975878A (en) | 1988-01-28 | 1990-12-04 | National Semiconductor | Programmable memory data protection scheme |
US5464699A (en) * | 1988-04-18 | 1995-11-07 | Alloy Surfaces Co. Inc. | Pyrophoric materials and methods for making the same |
US5420994A (en) | 1990-08-06 | 1995-05-30 | Ncr Corp. | Method for reading a multiple byte data element in a memory system with at least one cache and a main memory |
US5163139A (en) | 1990-08-29 | 1992-11-10 | Hitachi America, Ltd. | Instruction preprocessor for conditionally combining short memory instructions into virtual long instructions |
US5457482A (en) | 1991-03-15 | 1995-10-10 | Hewlett Packard Company | Method and apparatus for utilizing off-screen memory as a simultaneously displayable channel |
KR940004434A (ko) | 1992-08-25 | 1994-03-15 | 윌리엄 이. 힐러 | 스마트 다이나믹 랜덤 억세스 메모리 및 그 처리방법 |
US5524225A (en) | 1992-12-18 | 1996-06-04 | Advanced Micro Devices Inc. | Cache system and method for providing software controlled writeback |
EP0681240B1 (en) | 1994-05-03 | 2001-01-10 | Hewlett-Packard Company | Duplicate cache tag memory system |
US5488583A (en) | 1994-09-22 | 1996-01-30 | Micron Technology, Inc. | Memory integrated circuits having on-chip topology logic driver, and methods for testing and producing such memory integrated circuits |
FR2728363A1 (fr) | 1994-12-20 | 1996-06-21 | Sgs Thomson Microelectronics | Dispositif de protection de l'acces a des mots memoires |
US5682344A (en) * | 1995-09-11 | 1997-10-28 | Micron Technology, Inc. | Destructive read protection using address blocking technique |
US5802541A (en) | 1996-02-28 | 1998-09-01 | Motorola, Inc. | Method and apparatus in a data processing system for using chip selects to perform a memory management function |
US5835925A (en) | 1996-03-13 | 1998-11-10 | Cray Research, Inc. | Using external registers to extend memory reference capabilities of a microprocessor |
US6092155A (en) | 1997-07-10 | 2000-07-18 | International Business Machines Corporation | Cache coherent network adapter for scalable shared memory processing systems |
US6026478A (en) | 1997-08-01 | 2000-02-15 | Micron Technology, Inc. | Split embedded DRAM processor |
US6081876A (en) | 1997-09-22 | 2000-06-27 | Hewlett-Packard Company | Memory error containment in network cache environment via restricted access |
US5958324A (en) * | 1998-02-06 | 1999-09-28 | Dow Corning Corporation | Method for formation of crystalline boron-doped silicon carbide and amorphous boron silicon oxycarbide fibers from polymer blends containing siloxane and boron |
US6049487A (en) | 1998-03-16 | 2000-04-11 | Actel Corporation | Embedded static random access memory for field programmable gate array |
JPH11354820A (ja) * | 1998-06-12 | 1999-12-24 | Sharp Corp | 光電変換素子及びその製造方法 |
US6378049B1 (en) | 1998-11-16 | 2002-04-23 | Infineon Technologies A.G. | Universal memory controller |
US6526481B1 (en) | 1998-12-17 | 2003-02-25 | Massachusetts Institute Of Technology | Adaptive cache coherence protocols |
JP3807582B2 (ja) | 1999-02-18 | 2006-08-09 | 株式会社ルネサステクノロジ | 情報処理装置及び半導体装置 |
EP1050884A1 (en) * | 1999-05-03 | 2000-11-08 | STMicroelectronics SA | A multiport memory system with write conflict detection |
EP1056139A3 (en) * | 1999-05-28 | 2007-09-19 | Sharp Kabushiki Kaisha | Method for manufacturing photoelectric conversion device |
US6321314B1 (en) | 1999-06-09 | 2001-11-20 | Ati International S.R.L. | Method and apparatus for restricting memory access |
US6100587A (en) * | 1999-08-26 | 2000-08-08 | Lucent Technologies Inc. | Silicon carbide barrier layers for porous low dielectric constant materials |
US6563754B1 (en) | 2001-02-08 | 2003-05-13 | Integrated Device Technology, Inc. | DRAM circuit with separate refresh memory |
US6775750B2 (en) | 2001-06-29 | 2004-08-10 | Texas Instruments Incorporated | System protection map |
US7032082B1 (en) * | 2001-08-31 | 2006-04-18 | Juniper Networks, Inc. | Centralized memory allocation with write pointer drift correction |
US7085955B2 (en) | 2001-09-14 | 2006-08-01 | Hewlett-Packard Development Company, L.P. | Checkpointing with a write back controller |
US6757784B2 (en) | 2001-09-28 | 2004-06-29 | Intel Corporation | Hiding refresh of memory and refresh-hidden memory |
US7174429B2 (en) | 2001-12-28 | 2007-02-06 | Intel Corporation | Method for extending the local memory address space of a processor |
US7546446B2 (en) | 2002-03-08 | 2009-06-09 | Ip-First, Llc | Selective interrupt suppression |
US20040193837A1 (en) | 2003-03-31 | 2004-09-30 | Patrick Devaney | CPU datapaths and local memory that executes either vector or superscalar instructions |
KR100543447B1 (ko) | 2003-04-03 | 2006-01-23 | 삼성전자주식회사 | 에러정정기능을 가진 플래쉬메모리장치 |
JP4563715B2 (ja) | 2003-04-29 | 2010-10-13 | 三星電子株式会社 | パーシャルコピーバック動作モードを有するフラッシュメモリ装置 |
US7320100B2 (en) | 2003-05-20 | 2008-01-15 | Cray Inc. | Apparatus and method for memory with bit swapping on the fly and testing |
US6868019B2 (en) | 2003-07-02 | 2005-03-15 | Micron Technology, Inc. | Reduced power redundancy address decoder and comparison circuit |
US6903361B2 (en) | 2003-09-17 | 2005-06-07 | Micron Technology, Inc. | Non-volatile memory structure |
US7281079B2 (en) | 2003-12-31 | 2007-10-09 | Intel Corporation | Method and apparatus to counter mismatched burst lengths |
US7082075B2 (en) * | 2004-03-18 | 2006-07-25 | Micron Technology, Inc. | Memory device and method having banks of different sizes |
US20050277302A1 (en) * | 2004-05-28 | 2005-12-15 | Nguyen Son V | Advanced low dielectric constant barrier layers |
GB2417577A (en) * | 2004-08-25 | 2006-03-01 | Imagination Tech Ltd | Memory controller with randomised bank selection |
US20080189557A1 (en) * | 2005-01-19 | 2008-08-07 | Stmicroelectronics S.R.I. | Method and architecture for restricting access to a memory device |
US20060159170A1 (en) | 2005-01-19 | 2006-07-20 | Ren-Wei Chiang | Method and system for hierarchical search with cache |
US7209405B2 (en) * | 2005-02-23 | 2007-04-24 | Micron Technology, Inc. | Memory device and method having multiple internal data buses and memory bank interleaving |
US7274594B2 (en) | 2005-04-11 | 2007-09-25 | Stmicroelectronics S.R.L. | Non-volatile memory electronic device with NAND structure being monolithically integrated on semiconductor |
JP4989872B2 (ja) | 2005-10-13 | 2012-08-01 | ルネサスエレクトロニクス株式会社 | 半導体記憶装置および演算処理装置 |
US8279877B2 (en) | 2005-11-22 | 2012-10-02 | Freescale Semiconductor, Inc. | Method for processing ATM cells and a device having ATM cell processing capabilities |
US7509463B2 (en) | 2005-12-01 | 2009-03-24 | Sony Computer Entertainment, Inc. | Cell processor atomic compare and swap using dedicated synergistic processor element |
US20070150671A1 (en) | 2005-12-23 | 2007-06-28 | Boston Circuits, Inc. | Supporting macro memory instructions |
KR100782594B1 (ko) | 2006-07-14 | 2007-12-06 | 엠텍비젼 주식회사 | 데이터 처리 기능을 구비한 메모리 장치 |
US7759241B2 (en) * | 2006-09-15 | 2010-07-20 | Intel Corporation | Group II element alloys for protecting metal interconnects |
US7574576B2 (en) * | 2006-12-22 | 2009-08-11 | Spansion Llc | Semiconductor device and method of controlling the same |
US20080183984A1 (en) | 2007-01-31 | 2008-07-31 | Dale Beucler | Memory system with read-modify-write |
US7797503B2 (en) | 2007-06-26 | 2010-09-14 | International Business Machines Corporation | Configurable memory system and method for providing atomic counting operations in a memory device |
US8291174B2 (en) | 2007-08-15 | 2012-10-16 | Micron Technology, Inc. | Memory device and method having on-board address protection system for facilitating interface with multiple processors, and computer system using same |
US7822911B2 (en) | 2007-08-15 | 2010-10-26 | Micron Technology, Inc. | Memory device and method with on-board cache system for facilitating interface with multiple processors, and computer system using same |
US8055852B2 (en) | 2007-08-15 | 2011-11-08 | Micron Technology, Inc. | Memory device and method having on-board processing logic for facilitating interface with multiple processors, and computer system using same |
US20090138680A1 (en) | 2007-11-28 | 2009-05-28 | Johnson Timothy J | Vector atomic memory operations |
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 |
US9342471B2 (en) | 2010-01-29 | 2016-05-17 | Mosys, Inc. | High utilization multi-partitioned serial memory |
US10026458B2 (en) | 2010-10-21 | 2018-07-17 | Micron Technology, Inc. | Memories and methods for performing vector atomic memory operations with mask control and variable data length and data unit size |
-
2007
- 2007-08-15 US US11/893,590 patent/US8291174B2/en active Active
-
2008
- 2008-08-11 WO PCT/US2008/072784 patent/WO2009023629A2/en active Application Filing
- 2008-08-12 TW TW97130737A patent/TWI359376B/zh active
-
2012
- 2012-09-14 US US13/619,873 patent/US9032145B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2009023629A2 (en) | 2009-02-19 |
US20090049264A1 (en) | 2009-02-19 |
US20130013876A1 (en) | 2013-01-10 |
US8291174B2 (en) | 2012-10-16 |
TW200915178A (en) | 2009-04-01 |
US9032145B2 (en) | 2015-05-12 |
WO2009023629A3 (en) | 2009-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI359376B (en) | Memory device and method having on-board address p | |
JP7553478B2 (ja) | 書き込みミスエントリのドレインをサポートする犠牲キャッシュ | |
US7698508B2 (en) | System and method for reducing unnecessary cache operations | |
JP6696987B2 (ja) | 仮想アドレスを使用してアクセスされるキャッシュ | |
USRE45078E1 (en) | Highly efficient design of storage array utilizing multiple pointers to indicate valid and invalid lines for use in first and second cache spaces and memory subsystems | |
US5715428A (en) | Apparatus for maintaining multilevel cache hierarchy coherency in a multiprocessor computer system | |
US6839816B2 (en) | Shared cache line update mechanism | |
CN110312997B (zh) | 使用缓存行锁定来实现原子原语 | |
US7908439B2 (en) | Method and apparatus for efficient replacement algorithm for pre-fetcher oriented data cache | |
US8195881B2 (en) | System, method and processor for accessing data after a translation lookaside buffer miss | |
JP3963372B2 (ja) | マルチプロセッサ・システム | |
US9892039B2 (en) | Non-temporal write combining using cache resources | |
US20100318741A1 (en) | Multiprocessor computer cache coherence protocol | |
US20130254491A1 (en) | Controlling a processor cache using a real-time attribute | |
JP2010507160A (ja) | データ処理装置の共有メモリへの書込みアクセス要求の処理 | |
US9244851B2 (en) | Cache coherency protocol for allowing parallel data fetches and eviction to the same addressable index | |
US10877890B2 (en) | Providing dead-block prediction for determining whether to cache data in cache devices | |
TWI451330B (zh) | 快取記憶體系統以及快取資料取代之方法 | |
US7386670B2 (en) | Processing of self-modifying code in multi-address-space and multi-processor systems | |
WO2016160159A1 (en) | Memory controller for multi-level system memory with coherency unit | |
CN113892090A (zh) | 多级高速缓存安全性 | |
CN113874845A (zh) | 多请求者存储器存取管线和仲裁器 | |
EP2339472B1 (en) | Arithmetic processing unit, information processing device, and cache memory control method | |
US10387314B2 (en) | Reducing cache coherence directory bandwidth by aggregating victimization requests | |
US20050289300A1 (en) | Disable write back on atomic reserved line in a small cache system |