TW201636843A - 記憶體區塊休息時間決定技術 - Google Patents

記憶體區塊休息時間決定技術 Download PDF

Info

Publication number
TW201636843A
TW201636843A TW104140574A TW104140574A TW201636843A TW 201636843 A TW201636843 A TW 201636843A TW 104140574 A TW104140574 A TW 104140574A TW 104140574 A TW104140574 A TW 104140574A TW 201636843 A TW201636843 A TW 201636843A
Authority
TW
Taiwan
Prior art keywords
memory
memory block
access
block
accessed
Prior art date
Application number
TW104140574A
Other languages
English (en)
Inventor
葛雷格B 雷斯阿特瑞
拿文 穆拉黎曼哈
莉迪亞 華納
Original Assignee
惠普發展公司有限責任合夥企業
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 惠普發展公司有限責任合夥企業 filed Critical 惠普發展公司有限責任合夥企業
Publication of TW201636843A publication Critical patent/TW201636843A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2151Time stamp

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Read Only Memory (AREA)

Abstract

範例實現態樣係關於為記憶體區塊決定休息時間。在範例實現態樣中,一交叉點非依電性記憶體中的已存取記憶體區塊可被追蹤。對於每一已存取記憶體區塊之個別休息時間可被決定。可防止對其中一已存取記憶體區塊發出一存取命令。

Description

記憶體區塊休息時間決定技術
本發明大體上係有關記憶體區塊休息時間決定技術。
憶阻器記憶體可組織成交叉點陣列以達成高裝置密度。在讀出或寫入資料到一陣列時,電流會被驅動到該陣列,被驅動到一陣列之電流可能產生局部發熱現象。
依據本發明之一可行實作態樣,係特地提出一種系統,其包含:一追蹤模組用以追蹤在一交叉點非依電性記憶體中的已存取記憶體區塊;一休息時間決定模組用以為該等已存取記憶體區塊中之每一者決定一個別的休息時間;以及一存取調解模組,用以在該等已存取記憶體區塊其中之一的前一次存取之後,尚未經過等於該等已存取記憶體區塊中之該一已存取記憶體區塊個別的休息時間之一段時間量時,防止一第一存取命令針對該一已存取記憶體區塊被發出。
100、200‧‧‧系統/範例系統
102、202‧‧‧追蹤模組/模組
104、204‧‧‧休息時間決定模組/模組
306~312、406~416、506~518‧‧‧指令
106、206‧‧‧存取調節模組/模組
300、400、500‧‧‧裝置/範例裝置/系統
208‧‧‧佈局決定模組
210‧‧‧表/指標表
600、700、800‧‧‧方法/範例方法
302、402、502‧‧‧處理器
304、404、504‧‧‧機器可讀儲存媒體
602~608、702~706、802~808‧‧‧方塊
以下詳細描述參照附圖,其中:
圖1係為用以決定記憶體區塊休息時間的一範例系統之方塊圖。
圖2係為用以利用指標表追蹤最近已存取記憶體區塊之一範例系統的方塊圖。
圖3係為包括一機器可讀儲存媒體之一範例裝置的方塊圖,該機器可讀儲存媒體編碼有可讓已存取記憶體區塊強制執行休息時間的指令。
圖4係為包括一機器可讀儲存媒體之一範例裝置的方塊圖,該機器可讀儲存媒體編碼有用以識別最近已存取記憶體區塊的存取類型之指令。
圖5係為包括一機器可讀儲存媒體之一範例裝置的方塊圖,該機器可讀儲存媒體編碼有可決定一記憶體模組的一實體配置之指令。
圖6係為用以追蹤最近已存取記憶體區塊之一範例方法的流程圖。
圖7係為用以決定記憶體區塊休息時間之一範例方法的流程圖;以及圖8係為用以防止一存取命令被發送到一記憶體區塊之一範例方法的流程圖,其中該記憶體區塊係為位於一最近已存取記憶體區塊之一預定實體距離內者。
在讀出或寫入資料到一憶阻器記憶體之一陣列時,電流可能被驅動入該陣列。驅動入一陣列的電流可能對該陣列與附近可能之陣列產生局部發熱現象。因憶阻器 裝置的行為對作業溫度之變化具有高度敏感性,重覆快速連續地存取相同陣列可能會造成該等陣列性能降低(例如,位元可能被意外地翻轉,或讀取不正確)。一惡意存取型樣可藉由重覆存取來癱瘓一給定記憶體位置。
鑑於上述情況,本揭露提供管理記憶體位置之存取,使得局部發熱現象最小化,而提高記憶體裝置在壽命時間內的可靠性。例如,可防止一惡意存取型樣藉由接連多次緊接存取同一陣列試圖癱瘓該陣列。此外,本揭露提供追蹤位在一憶阻器記憶體的相同排組之內的陣列之存取。
現請參照附圖,圖1係為用以決定記憶體區塊休息時間之一範例系統100的方塊圖。例如,系統100可被實作成記憶體控制器。在圖1中,系統100包括追蹤模組102、休息時間決定模組104和存取調節模組106。在本文中使用時,”包括”、”含有”和”包含”等用語是可互換的,且應當被理解為具有相同含義。一模組可包括編碼在機器可讀儲存媒體上且可由一處理器執行之一組指令。此外或作為另一選擇,一模組可包括有包含了用來實現下述功能性之電子電路的一硬體裝置。
追蹤模組102可追蹤一交叉點非依電性記憶體中的已存取記憶體區塊。該交叉點非依電性記憶體可通訊式耦合於系統100。在本文中使用時,”記憶體區塊”一詞應理解為意指包括數個位址之一交叉點非依電性記憶體的一區域。例如,一記憶體區塊可以是一交叉點非依電性記憶體 的其中一列、一行、一陣列、一陣列的一部段、一群組的列、一群組的行、一群組的陣列,或其任一組合。在某些實作態樣中,追蹤模組102可識別出(例如藉由分析讀/寫命令)有位址正在被讀出或寫入的記憶體區塊,且儲存對應到這類位址的位元(例如,全部或一子集合的該等位址位元,或可轉換成一記憶體位置的偏移位元)。
在本文中針對一記憶體區塊使用時,”存取命令”一詞應理解為意指用以從記憶體區塊的一位址獲得資料和/或移動資料到該位址、或對記憶體區塊中之資料執行其它任何操作之一命令。例如,一存取命令可為用來讀取記憶體區塊的一位址(或一群位址)、寫入資料到該記憶體區塊的一位址(或一組位址)、或執行組合操作(例如信號比較和交換、載入和清除、記憶體內比較操作)的一命令。因應一存取命令而從之取得資料、搬移資料進去或操作其中資料的記憶體區塊,在本文可被指為一”受(已)存取記憶體區塊”。包括有因應一存取命令而從之獲取資料、搬移資料進去或在其中操作資料的一位址之一記憶體區塊,在本文中可指為存取命令所”指向”的記憶體區塊。
在某些實作態樣中,追蹤模組102追蹤受存取記憶體區塊時所針對的一交叉點非依電性記憶體,可為一憶阻器記憶體,且該等受存取記憶體區塊可為憶阻器記憶體的陣列。一憶阻器記憶體可含有數個排組,且每一排組可包括數個陣列。在某些實作態樣中,一記憶體區塊可以是憶阻器記憶體中相同排組中的一組陣列。追蹤模組102可 保有數個資料結構(例如暫存器或表)用以追蹤各種個別排組中之受存取記憶體區塊,或使用相同資料結構追蹤所有排組中的所有受存取記憶體區塊。
憶阻器記憶體中的每一排組一次可處理一存取命令。當憶阻器記憶體中的一排組正處理一存取命令(例如,對該排組中的一位址寫入或讀出資料)時,系統100可攔阻指向該排組中任何陣列的額外存取命令,或重新安排時程/延遲此等額外存取命令,直到該排組不再處理一存取命令。幾個排組可並行處理個別的存取命令,例如,系統100可發出一第一存取命令至一憶阻器記憶體中的第一排組,同時一第二存取命令則正在該憶阻器記憶體內的第二排組中被處理。然而,指向此第一或第二排組的一第三存取命令可能被攔阻/延遲/重新排程,直到該第一或第二命令分別處理完成。
休息時間決定模組104可決定每一受存取記憶體區塊個別休息時間。本文中針對一記憶體區塊使用時,”休息時間”一詞應理解為意指該記憶體區塊上執行一存取命令之後,該記憶體區塊不應被存取的一段時間。強制施行休息時間,可允許記憶體區塊在有電流驅動進來用以讀出或寫入一些位址後冷卻,並藉此防止已存取記憶體區塊過熱。某些交叉點非依電性記憶體可延遲給一記憶體控制器的確認/完成通知,以允許可有更多時間讓已存取記憶體區塊冷卻。
在某些實作態樣中,休息時間決定模組104可從 包括已存取記憶體區塊之記憶體模組上的一序列存在檢測(SPD)電氣可抹除可規劃唯讀記憶體(EEPROM)和/或一暫存器讀取休息時間。在某些實作態樣中,休息時間可規劃到系統100的一暫存器(或多個暫存器)內。在某些實作態樣中,記憶體區塊的操作狀況可被監控,而休息時間決定模組104可依據操作狀況調整休息時間。例如,相較於較低平均操作溫度的記憶體區塊,高平均操作溫度的一記憶體區塊將被決定賦予較長的休息時間。在某些實作態樣中,可利用平均磨損或其他技術將存取命令重新映射到不同的實體位址;在這種實作態樣中,休息時間決定模組104可依最終實體位址決定一休息時間。
若已存取記憶體區塊其中之一的前一存取之後,尚未經過等於該一已存取記憶體區塊的個別休息時間之一段時間,存取調節模組106可防止一存取命令被發送給該一已存取記憶體區塊。例如,存取調節模組106可在一記憶體區塊上執行存取命令後啟動一計時器,且將計時器值與該個別休息時間進行比較以決定是否允許發送另一存取命令到該記憶體區塊。在某些實作態樣中,在等於該個別休息時間的該段時間結束之前,存取調節模組106可攔阻額外存取命令。
在某些實作態樣中,存取調節模組106可將額外存取命令重新排程或予以延遲,直到經過等於該個別休息時間的一段時間。例如,若因應一第一存取命令對一第一記憶體區塊所作前一存取動作之後,相當於該第一記憶體 區塊的休息時間之一段時間尚未結束,存取調節模組106可延遲指向該第一記憶體區塊之一第二存取命令,直到經過等同於該休息時間的一段時間。在此同時,存取調節模組106可允許一第三存取命令發送到先前未被存取或個別休息時間已經結束的另一記憶體區塊(在相同排組或在不同排組);該第三存取命令可在第二存取命令前發出,即使該第二存取命令比該第三存取命令較早被系統100接收。該第二存取命令以及其他被延遲的存取命令,可在特定間隔時間後或當沒有其他待處理存取命令時被重新評估。
圖2係為用以藉由一指標表追蹤最近已存取記憶體區塊之一範例系統200的方塊圖。例如,系統200可被實作在一記憶體控制器上。在圖2中,系統200包括追蹤模組202、休息時間決定模組204、存取調節模組206以及佈局決定模組208。圖2的模組202、204和206可執行分別如圖1模組102、104和106某些相同的動作。一模組可包括編碼在一機器可讀儲存媒體上且可由一處理器執行之一組指令。此外或作為另一替代方案,一模組可以包括有包含了用於實現下述功能性之電子電路的一硬體裝置。
追蹤模組202可將一交叉點非依電性記憶體中已存取記憶體區塊中之一預定數目最近已存取記憶體區塊的指標儲存到表210中。例如,追蹤模組202可儲存十個最近已存取記憶體區塊的指標。儲存在表210中的指標可包括,與可供從中獲取資料或移入資料之已存取記憶體區塊 的個別位置相對應之全部位址位元或其子集合,或可轉換成這類位置的偏移位元。在該交叉點非依電性記憶體是一具有數個排組之憶阻器記憶體的實施態樣中,追蹤模組202可針對每一排組維持一不同指標表,或可將所有排組的所有指標儲存在同一表中。
當最近已存取記憶體區塊中的一第一記憶體區塊的個別休息時間在其前一存取後已結束時,追蹤模組202可從表210移除該等指標中與該第一記憶體區塊對應之一指標。在如上述關於圖1的討論,使用一計時器追蹤第一記憶體區塊上執行存取命令後已經過多少時間的實施態樣中,當該計時器的值等於某一特定值時,追蹤模組202可從表210中移除之該一指標。例如,若為正數計時器,當計時器的值等於個別休息時間時,追蹤模組202可從表210中移除其中該一指標。若使用倒數計時器(開始時間等於該個別休息時間),當計時器值等於零,追蹤模組202可從表210中移除其中該一指標。因應從表210移除其中該一指標,追蹤模組202可識別一延遲存取命令,此存取命令係響應於該一指標存在於表210中而被延遲。存取調節模組206可將該識別之遭延遲存取命令發送到該第一記憶體區塊。
在某些實作態樣中,該交叉點非依電性記憶體可包括一記憶體排組,該記憶體排組包括該第一記憶體區塊與未對應到表210中的任何指標的一第二記憶體區塊。當其中的該一指標在該表中時,存取調節模組206可防止 指向該第一記憶體區塊的存取命令被發送到該第一記憶體區塊。當其中的該一指標在該表中時,存取調節模組206可將指向該第二記憶體區塊的一存取命令發送到該第二記憶體區塊。
在某些實作態樣中,存取調節模組206可識別一存取命令指向該交叉點非依電性記憶體中的哪個記憶體區塊。例如,存取調節模組206可識別該存取命令中的位址位元,並決定相對應的記憶體位置是在哪個記憶體區塊內。存取調節模組206可決定所識別記憶體區塊是否在與表210內所儲存指標相對應的記憶體區塊中的任何區塊之一預定實體距離內。例如,該預定實體距離可以是相鄰記憶體區塊之間的距離。存取調節模組206可使用一位址解碼器決定相鄰於所識別記憶體區塊的諸記憶體區塊內諸多位置之位址,並且可決定任何這些位址是否對應到儲存在表210中的指標。在某些實作態樣中,存取調節模組206可從在包括該交叉點非依電性記憶體的一記憶體模組上之一SPD EEPROM和/或暫存器,讀取該預定實體距離。
若所識別記憶體區塊被判定位在與表210內所儲存指標相對應的記憶體區塊中之任一區塊之該預定實體距離內時,存取調節模組206可防止存取命令被發送給該識別記憶體區塊。在某些實作態樣中,存取調節模組206可攔阻該存取命令。在某些實作態樣中,存取調節模組206可將該存取命令重新排程或延遲直到一段等於一適當休息時間的時間量經過之後的一時刻。
在某些實作態樣中,對於已存取記憶體區塊中之一區塊,休息時間決定模組204可從包括該交叉點非依電性記憶體之一記憶體模組讀取一休息因子。在本文中使用時,”休息因子”一詞應理解為是指針對一記憶體區塊計算休息時間時可根據的一值。個別休息因子可因不同記憶體區塊而不同;例如,一給定記憶體區塊的一休息因子可能正比於該給定記憶體區塊的作業溫度(或平均作業溫度)。休息時間決定模組204也可決定已存取記憶體區塊其中一區塊的一存取時間。在本文中使用時,”存取時間”一詞應理解為是指一記憶體區塊處理一存取命令所花的一段時間。一記憶體區塊可能對不同類型的存取命令有不同的存取時間;例如,相較於讀取命令,一記憶體區塊可能需要較長時間來處理寫入命令。休息時間決定模組204可基於休息因子和存取時間推導出休息時間。例如,休息時間決定模組204可將存取時間乘上休息因子來決定該等已存取記憶體區塊中之該一區塊的休息時間。
在某些實作態樣中,休息時間決定模組204可為每一已存取的憶體區塊識別一最近存取類型。一存取類型可對應於回應一存取命令而由/在記憶體區塊上執行之動作。存取類型可以包括例如”讀取”、”寫入”、”讀取一位址”、”寫入一位址”、”讀取範圍”以及”寫入範圍”。休息時間決定模組204可藉由例如分析個別記憶體區塊上執行的最後一個存取命令,或藉由監視個別記憶體區塊上的活動,來識別最近一存取類型。各個已存取記憶體區塊所需 之個別休息時間可依據個別最近存取類型來決定。例如,寫入存取類型之後的休息時間可能比讀存取類型更長,因為比起讀取命令,寫入命令可能需要更多的時間或更多的能量來處理,且因此寫入作業過程中比讀取作業有較多電流驅動進一記憶體區塊,導致寫入作業期間比在讀取作業有更多的熱產生。
佈局決定模組208可決定包括該交叉點非依電性記憶體之記憶體模組的實體佈局。在某些實作態樣中,佈局決定模組208可從記憶體模組上一SPD EEPROM讀取實體佈局資訊。在某些實作態樣中,該記憶體模組的實體佈局可以是一組標準實體佈局其中之一,且在記憶體模組的暫存器所儲存的位元可指出該記憶體模組上是哪個標準實體佈局。在這樣的實作態樣中,佈局決定模組208可讀取適當的暫存器中之該等位元,並決定該等位元對應於哪個標準實體佈局。休息時間決定模組204可依據該記憶體模組之該實體佈局決定記憶體區塊的個別休息時間。例如,比起遠離冷卻元件的記憶體區塊,較接近記憶體模組上的冷卻元件(如散熱器)的記憶體區塊可有較短的休息時間。
圖3係為包括編碼有容許已存取記憶體區塊執行休息時間之指令的機器可讀儲存媒體的範例裝置300的方塊圖。在某些實例中,裝置300可以實作成一記憶體控制器。在圖3中,系統300包括處理器302與機器可讀儲存媒體304。
處理器302可包括一中央處理單元(CPU)、微處 理器(例如基於半導體的微處理器)和/或適合取回和/或執行儲存在機器可讀儲存媒體304中的指令之其他硬體裝置。處理器302可獲取、解碼和/或執行容許如下所述讓已存取記憶體區塊執行休息時間之指令306、308、310和312。作為替代或除了取回和/或執行指令,處理器302可包括有包含用以執行指令306、308、310和/或312的功能之數個電子元件的一電子電路。
機器可讀儲存媒體304可以是含有或者儲存可執行指令的任何適合的電子、磁性、光學或其它物理性儲存裝置。因此,機器可讀儲存媒體304可包括如一隨機存取記憶體(RAM)、一電氣可抹除可規劃唯讀記憶體(EEPROM)、一儲存裝置、一光碟以及類似物。在一些實作態樣中,機器可讀儲存媒體304可包括一非暫態儲存媒體,其中”非暫態”一詞不包含暫時性傳播信號。如下詳述地,機器可讀儲存媒體304可編碼有一組可執行指令306、308、310和312。
指令306可將一交叉點非依電性記憶體中最近已存取記憶體區塊之指標儲存在一表中。儲存在表中的指標可包括例如,對應於最近已存取記憶體區塊中個別位置的全部位址位元或其子集合,或可轉換成這類位置的偏移位元。在該交叉點非依電性記憶體是一具有數個排組之憶阻器記憶體的實作態樣中,指令306可對每一排組保有一不同的指標表,或可將所有排組的所有指標儲存在同一表中。在一些實作態樣中,指令306可儲存交叉點非依電性 記憶體中預定數目之最新近已存取記憶體區塊的指標。例如,指令306可儲存15個最新近已存取記憶體區塊的指標。
指令308可為每一最近已存取記憶體區塊決定個別的休息時間。在一些實作態樣中,指令308可從包括最近已存取記憶體區塊的記憶體模組上的一SPD EEPROM及/或一暫存器讀取休息時間。在一些實作態樣中,休息時間可規劃入裝置300內的一暫存器(或數個暫存器)。在一些實作態樣中,指令308可如上針對圖2討論地,為每一最近已存取記憶體區塊識別一最近存取類型,並可基於個別最近存取類型決定個別的休息時間。在一些實作態樣中,記憶體區塊的操作狀況可被監視,且指令308可依據操作狀況調整休息時間。例如,相較於較低平均操作溫度的記憶體區塊,具有高平均操作溫度的記憶體區塊將被決定賦予較長的休息時間。較接近冷卻元件(例如風扇、散熱器)的記憶體區塊可能有較低的平均操作溫度,且因此,相較於那些離冷卻元件較遠的記憶體區塊,較接近冷卻元件的記憶體區塊可能有較短的休息時間。
在一些實作態樣中,對於最近已存取記憶體區塊中的一區塊,指令308可從包括該等最近已存取記憶體區塊的記憶體模組讀取一休息因子。指令308亦可如上針對圖2所討論地,為已存取記憶體區塊中之該一區塊決定一存取時間。指令308基於休息因子和存取時間可推導出最近已存取記憶體區塊中該一區塊的一休息時間。例如,指 令308可將休息因子乘以存取時間來決定休息時間。
指令310可決定一存取命令的一目標位址是否匹配於表中的任何指標。在本文中針對一存取命令使用時,”目標位址”一詞應理解為是指可回應該存取命令獲得資料的位址或資料要回應該存取命令搬移進入的位址。在一些實作態樣中,指令310可識別一存取命令中的位址或偏移位元,並把該等位元與該表中的指標比較。
指令312可防止一存取命令被發出。例如,若一存取命令的目標位址與表中的任何指標相匹配,指令312可防止該存取命令對包括該目標位址的記憶體區塊發出。在一些實作態樣中,指令312如以上針對圖1和2所討論地,可將存取命令攔阻、重新排程或予以延遲。
圖4係為包括編碼有用以識別最近已存取記憶體區塊之存取類型之指令的一機器可讀儲存媒體的一範例裝置400的方塊圖。在一些實例中,裝置400可實作為一記憶體控制器。在圖4中,系統400包括處理器402及機器可讀儲存媒體404。
如同圖3的處理器302,處理器402可包括一CPU、微處理器(例如基於半導體的微處理器)及/或適於取回及/或執行儲存在機器可讀儲存媒體404中的指令之其他硬體裝置。處理器402可以獲取、解碼及/或執行指令406、408、410、412、414及416。作為替代或除了取回及/或執行指令,處理器402可包括有包含用以執行指令406、408、410、412、414及/或416的功能之數個電子元 件的一電子電路。
如同圖3的機器可讀儲存媒體304,機器可讀儲存媒體404可以是儲存可執行指令的任何適合的物理性儲存裝置。機器可讀儲存媒體404上的指令406、408、410和412分別類似機器可讀儲存媒體304上的指令306、308、310、和312(例如有類似功能及/或元件)。指令406可將一交叉點非依電性記憶體中最近已存取記憶體區塊之指標存在一表中。指令408可為每一最近已存取記憶體區塊決定一個別的休息時間。當最近已存取記憶體區塊中的一記憶體區塊的個別休息時間在其前一次存取後已結束時,指令414可從該表移除該等指標中與該記憶體區塊對應之一指標。如上對於圖2所討論,在一些實作態樣中,一計時器可用來追蹤在記憶體區塊上一存取命令執行後已經經過了多少時間,且當該計時器的值等於一特定值(例如該個別休息時間或零)時,指令414可從該表中移除其中該一指標。在一些實作態樣中,因應從該表移除其中該一指標,先前響應於其中該一指標存在於該表中而被延遲的一存取命令,即可被識別且對該對應的記憶體區塊發送。
指令416可為每一最近已存取記憶體區塊識別一最新近存取類型。指令416藉由例如分析個別記憶體區塊上執行的最後一存取命令,或藉由監視個別記憶體區塊上之活動,來識別一最新近存取類型。指令408可如上針對圖2所討論地基於個別最新近存取類型決定個別休息時間。
圖5係為包括編碼有用以決定記憶體模組之實體 佈局之指令的機器可讀儲存媒體之一範例裝置500的方塊圖。在一些實例中,裝置500可以實作成一記憶體控制器。在圖5中,系統500包括處理器502與機器可讀儲存媒體504。
如同圖3的處理器302,處理器502可以包括一CPU、微處理器(例如基於半導體的微處理器)及/或適於取回及/或執行儲存在機器可讀儲存媒體504中的指令之其他硬體裝置。處理器502可以獲取、解碼和/或執行指令506、508、510、512、514、516和518。作為替代或除了取回和/或執行命令,處理器502可包括有包含用以執行指令506、508、510、512、514、516及/或518的功能之數個電子元件的一電子電路。
如同圖3的機器可讀儲存媒體304,機器可讀儲存媒體504可以是儲存可執行指令的任何合適物理性儲存裝置。機器可讀儲存媒體504上的指令506、508、510和512分別類似機器可讀儲存媒體304上的指令306、308、310和312。指令506可將一交叉點非依電性記憶體中最近已存取記憶體區塊之指標儲存在一表中。指令514可決定包括該交叉點非依電性記憶體之記憶體模組的實體佈局。在一些實作態樣中,指令514可從該記憶體模組上的一SPD EEPROM讀取實體佈局資訊。在一些實作態樣中,指令514如上面對於圖2所討論地,可從該記憶體模組的一暫存器中讀取位元,其指出在該記憶體模組上的是一組標準實體佈局中的哪一種佈局。指令508可依據該實體佈局決 定每一最近已存取記憶體區塊個別的休息時間。例如,較接近冷卻元件(例如散熱器)的記憶體模組上之記憶體區塊所具休息時間,比遠離冷卻元件的記憶體區塊較短。
命令516可識別一存取命令指向該交叉點非依電性記憶體中的哪個記憶體區塊。例如,指令516可識別該存取命令中的位址位元,並決定對應的(多個)記憶體位置在哪個記憶體區塊內。在一些實作態樣中,指令516可識別該存取命令中的偏移位元,將該等偏移位元轉換成(多個)記憶體位置,並決定在該(多個)記憶體位置是在哪個記憶體區塊內。
指令518可決定所識別的記憶體區塊是否在與一表內所儲存指標相對應的記憶體區塊中的任何區塊之一預定實體距離內。例如,該預定實體距離可以是相鄰記憶體區塊之間的一距離。指令518可使用一位址解碼器決定相鄰於所識別記憶體區塊的諸記憶體區塊內諸多位置的位址,並可決定任何這些位址是否對應於儲存在表中的指標。在一些實作態樣中,指令518可以從包括該識別的記憶體區塊的一記憶體模組上之一SPD EEPROM和/或暫存器,讀取該預定實體距離。若所識別記憶體區塊被判定位在與表內所儲存指標相對應的記憶體區塊中之任一區塊之該預定實體距離內時,指令512可防止存取命令對所識別記憶體區塊發出。例如,指令512可將該存取命令攔阻、重新排程或延遲直到等於一適當休息時間的一段時間量經過之後的一時刻。
關於已存取記憶體區塊執行休息時間的方法是針對圖6到8來討論。圖6是用以追蹤最近已存取記憶體區塊之一範例方法600的流程圖。雖然方法600之執行係在以下參考圖4的處理器402來描述,應當理解的是,方法600之執行可由如圖3和5分別顯示的處理器302和502之其它適當裝置來執行。方法600可用儲存在機器可讀儲存媒體上的可執行指令的形式及/或用電子電路的形式來實現。
方法600可開始於方塊602,其中處理器402可將一交叉點非依電性記憶體中最近已存取記憶體區塊之指標儲存在一表中。儲存在表中的指標可包括例如:對應於最近已存取記憶體區塊中個別位置的全部位址位元或其子集合,或可轉換成這類位置的偏移位元。在該交叉點非依電性記憶體是一具有數個排組之憶阻器記憶體的實作態樣中,處理器402可對每一排組保有一不同指標表,或可將所有排組的所有指標儲存在同一表中。在一些實作態樣中,處理器402可儲存交叉點非依電性記憶體中預定數量(例如8個)最新近已存取記憶體區塊的指標。
在方塊604中,處理器402可為每一最近已存取記憶體區塊決定個別的休息時間。在一些實作態樣中,處理器402可從包括最近已存取記憶體區塊的記憶體模組上的一SPD EEPROM及/或一暫存器讀取休息時間。在一些實作態樣中,休息時間可規劃入用以控制對該記憶體模組的存取之一記憶體控制器(例如裝置400)的一(或多個)暫存器。在一些實作態樣中,處理器402可為每一最近已存取 記憶體區塊識別一最新近存取類型,並可基於個別最新近存取類型決定個別的休息時間。在一些實作態樣中,處理器402可如上面針對圖2討論地,基於休息因子和存取時間可推導出一休息時間(例如藉由將休息因子乘以存取時間)。
在方塊606,當最近已存取記憶體區塊中的一第一記憶體區塊的個別休息時間在其前一次存取後已結束時,處理器402可從該表中移除該等指標中與該第一記憶體區塊對應之一指標。如上面針對圖2的討論,在一些實作態樣中,一計時器可用來追蹤在記憶體區塊上一存取命令執行後已經經過了多少時間,且當該計時器的值等於一特定值(例如該個別休息時間或零),處理器402可從該表中移除其中該一指標。
在方塊608,若一存取命令的目標位址與表中的任何指標相匹配,處理器402可防止該存取命令對包括該目標位址的記憶體區塊發出。例如,處理器402可識別一存取命令的位址或偏移位元,並把該等位元與該表中的指標比較。在一些實作態樣中,處理器402如以上針對圖1和2所討論地,可將存取命令攔阻、重新排程或予以延遲。
圖7是用以決定記憶體區塊休息時間之一範例方法700的流程圖。雖然方法700之執行係在以下參照圖5的處理器502來描述,應當理解的是,方法700之執行可由如圖3和4中分別顯示的處理器302和402之其它適當的裝置來執行。方法700的一些方塊可並行地與方法600或在方法 600之後執行。方法700可用儲存在機器可讀儲存媒體上的可執行指令的形式及/或用電子電路的形式來實現。
方法700可開始於方塊702,其中處理器502可決定包括一交叉點非依電性記憶體之一記憶體模組的一實體佈局。在一些實作態樣中,處理器502可從自記憶體模組上之一SPD EEPROM讀取實體佈局資訊。在一些實作態樣中,處理器502如上針對圖2所討論地,可從記憶體模組的一暫存器中讀取位元,其指出在該記憶體模組上的是一組標準實體佈局中的哪一種佈局。
在方塊704中,處理器502可決定使記憶體模組上最近已存取記憶體區塊冷卻之相對容易性。例如,處理器502可識別例如風扇及/或散熱器之冷卻元件相對於該記憶體模組上之最近已存取記憶體區塊的位置。記憶體模組上或是與記憶體模組相同機殼中的冷卻元件,藉由使當電流被驅動入該記憶體區塊(例如在讀取和寫入操作時)而產生的熱消散,可降低記憶體模組上的記憶體區塊之平均操作溫度。相較於離冷卻元件較遠的記憶體區塊,較接近冷卻元件的記憶體區塊可能較容易冷卻(也因此具有較低的操作溫度)。例如,距離設計用來消散因記憶體存取在內部所產生熱量的封裝散熱器較遠之記憶體區塊,比離封裝散熱器較接近的記憶體區塊可能較難冷卻。
在方塊706中,處理器502可藉由計算與個別最近已存取記憶體區塊冷卻的相對容易性成正比的休息時間,為最近已存取記憶體區塊決定個別休息時間。例如, 相較於離冷卻元件較遠的記憶體區塊,較接近冷卻元件的記憶體區塊可能有較短的休息時間。較接近冷卻元件的記憶體區塊比離冷卻元件較遠的記憶體區塊可更迅速、更容易地被冷卻元件冷卻,因此可能可以承受較短的休息時間且不會降低性能。
圖8係為用於防止一存取命令對在一最近已存取記憶體區塊之一預定實體距離內的記憶體區塊發出之一範例方法800的流程圖。雖然方法800之執行在以下係參考圖5的處理器502來描述,應當理解的是,方法800之執行可由如圖3和4分別顯示之處理器302和402之其它適當裝置來執行。方法800的一些方塊可與方法600或700並行或在其後執行。方法800可用儲存在機器可讀儲存媒體上的可執行指令的形式及/或用電子電路的形式來實現。
方法800可開始於方塊802,其中,處理器502可識別一存取命令指向一交叉點非依電性記憶體中的哪個記憶體區塊。例如,處理器502可識別該存取命令中的位址位元,並決定相對應的(多個)記憶體位置是在哪個記憶體區塊內。在一些實作態樣中,處理器502可識別該存取命令中的偏移位元,將該等偏移位元轉換成(多個)記憶體位置,並決定該(多個)記憶體位置是在哪個記憶體區塊內。
在方塊804,處理器502可決定所識別的記憶體區塊是否在與一表內所儲存指標相對應的記憶體區塊中的任何區塊之一預定實體距離內。表中的指標可對應到交叉點非依電性記憶體中的個別最近已存取記憶體區塊。在一 些實作態樣中,預定實體距離可以是相鄰記憶體區塊之間的一距離。處理器502可使用一位址解碼器用以決定相鄰於所識別記憶體區塊的記憶體區塊中的位置之位址,並可決定任何這些位址是否對應到儲存在表中的指標。在一些實作態樣中,處理器502可從在包括所識別記憶體區塊的一記憶體模組上之一SPD EEPROM和/或暫存器,讀取該預定實體距離。
在方塊804中,若處理器502判定所識別記憶體區塊位在與表內所儲存指標相對應的記憶體區塊中之任一區塊之該預定實體距離內時,方法800可前進到方塊806,其中處理器502可防止存取命令發出。在一些實作態樣中,處理器502如以上針對圖1和2所討論地,可將該存取命令攔阻、重新排程或予以延遲。在方塊804中,若處理器502判定所識別記憶體區塊不在與表內所儲存指標相對應的記憶體區塊中之任一區塊之該預定實體距離內時,方法800可前進到方塊808,其中處理器502可對交叉點非依電性記憶體中合適記憶體區塊發出該存取命令。
前述揭露係描述對已存取記憶體區塊執行休息時間之狀況。本文所述的範例實作態樣能獨立於排組存取之外追蹤陣列存取,並將局部發熱現象最小化。因此,記憶體的可靠性和壽命可擴延,並且惡意存取型樣的影響可減少。
100‧‧‧系統/範例系統
102‧‧‧追蹤模組/模組
104‧‧‧休息時間決定模組/模組
106‧‧‧存取調節模組/模組

Claims (15)

  1. 一種系統,包含:用以追蹤一交叉點非依電性記憶體中之已存取記憶體區塊的一追蹤模組;用以為該等已存取記憶體區塊中之每一者決定一個別休息時間的一休息時間決定模組;以及一存取調節模組,用以在該等已存取記憶體區塊其中之一的前一次存取之後,尚未經過等於該等已存取記憶體區塊中之該一已存取記憶體區塊的該個別休息時間之一段時間量時,防止一第一存取命令針對該一已存取記憶體區塊被發出。
  2. 如請求項1之系統,其中該交叉點非依電性記憶體係為一憶阻器記憶體,及其中該等已存取記憶體區塊係為該憶阻器記憶體的陣列。
  3. 如請求項1之系統,進一步包含用以決定包括該交叉點非依電性記憶體的一記憶體模組之一實體佈局的一佈局決定模組,其中該休息時間決定模組係用以基於該實體佈局來決定該等個別休息時間。
  4. 如請求項1之系統,其中該休息時間決定模組係進一步用來:對於該等已存取記憶體區塊中之該一已存取記憶體區塊,從包括該交叉點非依電性記憶體之一記憶體模組讀取一休息因子; 為該等已存取記憶體區塊中之該一已存取記憶體區塊決定一存取時間;以及基於該休息因子和存取時間推導出該等已存取記憶體區塊中之該一已存取記憶體區塊的該休息時間。
  5. 如請求項1之系統,其中該休息時間決定模組進一步用來為該等已存取記憶體區塊中之每一者識別一最新近存取類型,其中該等個別休息時間係基於個別最新近存取類型來決定。
  6. 如請求項1之系統,其中該追蹤模組進一步用來:將該等已存取記憶體區塊中之一預定數目最新近已存取記憶體區塊的指標儲存到一表中;當該等最新近已存取記憶體區塊中的一第一記憶體區塊的個別休息時間在其前一存取後已結束時,從該表中移除與該第一記憶體區塊對應的該等指標中之一指標;及因應從該表移除其中該一指標,識別一被延遲存取命令,此被延遲存取命令係響應於該一指標存在該表中而被延遲,其中該存取調節模組進一步用以對該第一記憶體區塊發出所識別的該被延遲存取命令。
  7. 如請求項6之系統,其中該存取調節模組進一步用來:識別一第二存取命令指向該交叉點非依電性記憶體中的哪個記憶體區塊;決定所識別記憶體區塊是否位在與該表內所儲存指相標對應的該等記憶體區塊中任何記憶體區塊之一預 定實體距離內;及若所識別記憶體區塊被判定位在與該表內所儲存指標相對應的該等記憶體區塊之任何記憶體區塊之該預定實體距離內時,防止該第二存取命令對所識別記憶體區塊發出。
  8. 如請求項6之系統,其中:該交叉點非依電性記憶體含有一記憶體排組,該排組包括:該第一記憶體區塊,以及未與該表中的任何指標對應的一第二記憶體區塊;以及該存取調節模組進一步用來:當該等指標中之該一指標存在該表中,防止指向該第一記憶體區塊的一存取命令對該第一記憶體區塊發出;以及當該等指標中之該一指標存在該表中,將指向該第二記憶體區塊之一存取命令對該第二記憶體區塊發出。
  9. 一種編碼有可由處理器執行的指令之機器可讀儲存媒體,該機器可讀儲存媒體包含:用以將一交叉點非依電性記憶體中之最近已存取記憶體區塊之指標儲存在一表中的指令;用來為該等最近已存取記憶體區塊中之每一者決定一個別休息時間的指令; 用以決定一存取命令之一目標位址是否與該表中的該等指標中之任一指標相匹配的指令;及用以在該存取命令的該目標位址與該表中的該等指標中之任一指標相匹配時,防止該存取命令對包括該目標位址之一記憶體區塊發出的指令。
  10. 如請求項9之機器可讀儲存媒體,進一步包含用以在該等最近已存取記憶體區塊中的一第一記憶體區塊的個別休息時間在其前一存取後已結束時,從該表中刪除與該第一記憶體區塊對應之該等指標中之一指標的指令。
  11. 如請求項9之機器可讀儲存媒體,進一步包含用以決定包括該交叉點非依電性記憶體的一記憶體模組之一實體佈局的指令,其中該等個別休息時間係基於該實體佈局所決定。
  12. 如請求項9之機器可讀儲存媒體,進一步包含:用以識別該存取命令指向該交叉點非依電性記憶體中的哪個記憶體區塊的指令;用以決定所識別記憶體區塊是否位在與該表中所儲存該等指標對應的任何記憶體區塊之一預定實體距離內的指令;及用以在所識別記憶體區塊被判定在與該表中所儲存該等指標對應的任何記憶體區塊的該預定實體距離內,防止該存取命令對所識別記憶體區塊發出的指令。
  13. 一種方法,包含:將一交叉點非依電性記憶體中之最近已存取記憶體 區塊的指標儲存在一表中;為該等最近已存取記憶體區塊中之每一者決定一個別休息時間;當該等最近已存取記憶體區塊中的一第一記憶體區塊的該個別休息時間在其前一存取後已結束時,從該表中移除與該第一記憶體區塊對應之該等指標中的一指標;及若一存取命令的一目標位址與該表中的任何指標對應,防止該存取命令對包括該目標位址的一記憶體區塊發出。
  14. 如請求項13之方法,進一步包含:決定包括該交叉點非依電性記憶體的一記憶體模組之一實體佈局;及決定冷卻該記憶體模組上該等最近已存取記憶體區塊之相對容易性;其中,決定該等個別休息時間包括計算與冷卻該等個別最近已存取記憶體區塊之相對容易性成正比的休息時間。
  15. 如請求項13之方法,進一步包括:識別該存取命令指向該交叉點非依電性記憶體中的哪個記憶體區塊;決定所識別記憶體區塊是否在與該表中所儲存指標相對應的該等記憶體區塊中的任何記憶體區塊之一預定實體距離內;以及 倘若判定所識別記憶體區塊在與該表中所儲存指標相對應的該等記憶體區塊中的任何記憶體區塊之該預定實體距離之內,防止該存取命令對所識別記憶體區塊發出。
TW104140574A 2014-12-12 2015-12-03 記憶體區塊休息時間決定技術 TW201636843A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2014/069973 WO2016093856A1 (en) 2014-12-12 2014-12-12 Determining resting times for memory blocks

Publications (1)

Publication Number Publication Date
TW201636843A true TW201636843A (zh) 2016-10-16

Family

ID=56107865

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104140574A TW201636843A (zh) 2014-12-12 2015-12-03 記憶體區塊休息時間決定技術

Country Status (3)

Country Link
US (1) US20170336976A1 (zh)
TW (1) TW201636843A (zh)
WO (1) WO2016093856A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10592451B2 (en) 2017-04-26 2020-03-17 International Business Machines Corporation Memory access optimization for an I/O adapter in a processor complex
US10572286B2 (en) * 2017-04-26 2020-02-25 International Business Machines Corporation Memory access optimization in a processor complex
US11385906B2 (en) * 2020-04-13 2022-07-12 Silicon Motion, Inc. Computer program product and method and apparatus for controlling access to flash storage

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7743203B2 (en) * 2007-05-11 2010-06-22 Spansion Llc Managing flash memory based upon usage history
US20090240903A1 (en) * 2008-03-20 2009-09-24 Dell Products L.P. Methods and Apparatus for Translating a System Address
KR101507122B1 (ko) * 2008-04-29 2015-04-01 삼성전자주식회사 반도체 메모리 장치 및 그것의 액세스 방법
KR20100041313A (ko) * 2008-10-14 2010-04-22 삼성전자주식회사 데이터 저장 방법, 데이터 저장 장치 및 그 시스템
US20110169136A1 (en) * 2010-01-14 2011-07-14 Pickett Matthew D Crossbar-integrated memristor array and method employing interstitial low dielectric constant insulator
WO2011099963A1 (en) * 2010-02-10 2011-08-18 Hewlett-Packard Development Company, L.P. Identifying a location containing invalid data in a storage media
US20120311228A1 (en) * 2011-06-03 2012-12-06 Advanced Micro Devices, Inc. Method and apparatus for performing memory wear-leveling using passive variable resistive memory write counters
US9015455B2 (en) * 2011-07-07 2015-04-21 Intel Corporation Processsor integral technologies for BIOS flash attack protection and notification
US9146855B2 (en) * 2012-01-09 2015-09-29 Dell Products Lp Systems and methods for tracking and managing non-volatile memory wear
JP5624573B2 (ja) * 2012-02-24 2014-11-12 株式会社東芝 半導体記憶装置及びその制御方法
US8925098B2 (en) * 2012-11-15 2014-12-30 Elwha Llc Data security and access tracking in memory
KR101749466B1 (ko) * 2013-09-23 2017-06-20 인텔 코포레이션 비휘발성 메모리에 대한 데이터의 이벤트 트리거링된 저장

Also Published As

Publication number Publication date
US20170336976A1 (en) 2017-11-23
WO2016093856A1 (en) 2016-06-16

Similar Documents

Publication Publication Date Title
JP6168758B2 (ja) 温度に基づいた装置動作のための装置および方法
KR102250423B1 (ko) 불휘발성 메모리 시스템 및 그것의 동작 방법
JP7213690B2 (ja) フラッシュメモリのためのリフレッシュの管理
KR101386868B1 (ko) 동작 조건들에 따른 임계치들의 동적 갱신
US10782915B2 (en) Device controller that schedules memory access to a host memory, and storage device including the same
KR101687502B1 (ko) 메모리 제어기, 데이터 기억 장치 및 메모리 제어 방법
US20160170642A1 (en) Memory system
EP2778888A1 (en) Selecting between non-volatile memory units having different minimum addressable data unit sizes
TWI569144B (zh) 資料儲存裝置及其斷電事件判斷方法
US20180188981A1 (en) Methods and apparatus for read disturb detection based on logical domain
US11836078B2 (en) Trim setting determination on a memory device
TW201636843A (zh) 記憶體區塊休息時間決定技術
JP2009163647A (ja) ディスクアレイ装置
US9032261B2 (en) System and method of enhancing data reliability
JP2018101301A5 (zh)
TWI584117B (zh) 資料儲存裝置及用於快閃記憶體之資料讀取方法
KR20120120795A (ko) 데이터 저장 시스템 및 그의 데이터 리텐션 방법
US20180197607A1 (en) Overlapping write schemes for cross-point non-volatile memory devices
US20140301132A1 (en) Storage control device, storage device, information processing system, and processing method thereof
US9471227B2 (en) Implementing enhanced performance with read before write to phase change memory to avoid write cancellations
JP2014170523A (ja) データ記憶装置における読み出し期間中にデータをフェッチするためのシステムおよび方法
JP5949224B2 (ja) ストレージ制御装置、該プログラム及び該方法
US9293153B2 (en) Method and system for preserving data of a storage device
US20180218773A1 (en) Block erase schemes for cross-point non-volatile memory devices
JP2013200919A5 (zh)