TW201348963A - 外接儲存裝置加速器及其方法 - Google Patents

外接儲存裝置加速器及其方法 Download PDF

Info

Publication number
TW201348963A
TW201348963A TW101117359A TW101117359A TW201348963A TW 201348963 A TW201348963 A TW 201348963A TW 101117359 A TW101117359 A TW 101117359A TW 101117359 A TW101117359 A TW 101117359A TW 201348963 A TW201348963 A TW 201348963A
Authority
TW
Taiwan
Prior art keywords
data
storage device
external storage
control unit
bridge control
Prior art date
Application number
TW101117359A
Other languages
English (en)
Inventor
Szu-Ming Chen
Original Assignee
Innostor Technology Corp
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 Innostor Technology Corp filed Critical Innostor Technology Corp
Priority to TW101117359A priority Critical patent/TW201348963A/zh
Publication of TW201348963A publication Critical patent/TW201348963A/zh

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本發明實施例提供一種外接儲存裝置加速器,包括第一資料傳輸界面、第二資料傳輸界面、快閃儲存單元以及橋接控制單元。第一資料傳輸界面用以供外接儲存裝置加速器與主機裝置連接而第二資料傳輸界面用以供外接儲存裝置加速器與外接儲存裝置連接。快閃儲存單元的至少一部分的記憶空間用以作為快取空間。橋接控制單元連接第一資料傳輸界面、第二資料傳輸界面與快閃儲存單元。當主機裝置欲將一資料儲存於外接儲存裝置時,橋接控制單元會將此一資料同時儲存於外接儲存裝置與快閃儲存單元。

Description

外接儲存裝置加速器及其方法
本發明有關於一種外接儲存裝置,且特別是一種可以加速資料讀取的外接儲存裝置加速器及其方法。
目前市面上的外接儲存裝置大多為輕薄短小的行動式儲存裝置,且可以透過通用序列匯流排(Universal Serial Bus,USB)或序列高技術配置(Serial Advanced Technology Attachment,SATA)連接線與主機裝置進行連結,以擴充主機裝置的儲存空間,並達到資料分享的目的。
然而,目前大容量的外接儲存裝置多半為磁性硬碟或固態硬碟,因此,所述外接儲存裝置的資料讀取速度仍稍嫌不足。為了減少主機裝置進行資料讀取的時間,多數的業者會想辦法改良外接儲存裝置的控制器或者儲存媒介,以提昇資料讀取速度。因此,對於先前已具有舊款外接儲存裝置的使用者而言,若要減少等候資料讀取的時間,則需要另外購買一個新款外接儲存裝置,從而造成消費負擔。
本發明實施例提供一種外接儲存裝置加速器,包括第一資料傳輸界面、第二資料傳輸界面、快閃儲存單元以及橋接控制單元。第一資料傳輸界面用以供外接儲存裝置加速器與主機裝置連接而第二資料傳輸界面用以 供外接儲存裝置加速器與外接儲存裝置連接。快閃儲存單元的至少一部分的記憶空間用以作為快取空間。橋接控制單元連接第一資料傳輸界面、第二資料傳輸界面與快閃儲存單元。當主機裝置欲將一資料儲存於外接儲存裝置時,橋接控制單元會將該資料同時儲存於外接儲存裝置與快閃儲存單元。此外當主機裝置欲自外接儲存裝置讀取該資料時,橋接控制單元判斷該資料是否已儲存於該快取空間中,若該資料已儲存於快取空間中,則橋接控制單元自快取空間中讀取該資料,並將該資料傳送給主機裝置。
本發明實施例提供一種外接儲存裝置加速器,包括第一資料傳輸界面、第二資料傳輸界面、通用序列匯流排介面以及橋接控制單元。第一資料傳輸界面用以供外接儲存裝置加速器與主機裝置連接而第二資料傳輸界面用以供外接儲存裝置加速器與外接儲存裝置連接。通用序列匯流排介面則用以與快閃記憶體裝置連接,其中快閃記憶體的至少一部分記憶空間用以作為快取空間。橋接控制單元連接第一資料傳輸界面、第二資料傳輸界面與通用序列匯流排介面。當主機裝置欲將一資料儲存於外接儲存裝置時,橋接控制單元將該資料同時儲存於外接儲存裝置與外接快閃記憶體裝置之快取空間。當主機裝置欲自外接儲存裝置讀取該資料時,橋接控制單元判斷該資料是否已儲存於快取空間中,若該資料已儲存於快取空間中,則橋接控制單元自快取空間中讀取該資料,並將該資料傳送給該主機裝置。
在本發明其中一個實施例中,上述橋接控制單元另用 以判斷是否可將資料儲存於快取空間,若可將該資料儲存於該快取空間中,則橋接控制單元將該資料儲存於該快取空間中,否則,則將資料直接儲存於外接儲存裝置與/或快閃記憶體裝置及該快閃儲存單元其中之一所組成的一般記憶空間中。
在本發明其中一個實施例中,上述通用序列匯流排界面可以使用通用序列匯流排集線器來實現。
本發明實施例提供一種外接儲存裝置加速方法,適用於外接儲存裝置加速器中,其中外接儲存裝置加速器用以連結主機裝置與外接儲存裝置。此外接儲存裝置加速器具有橋接控制單元,且具有一快閃儲存單元或外接快閃記憶體裝置,以藉此規劃出快取空間。首先,橋接控制單元接收來自主機裝置的資料儲存命令。其次,橋接控制單元將該資料同時儲存於外接儲存裝置與快取空間中。接著,橋接控制單元接收來自於主機裝置的資料讀取命令。而後,橋接控制單元判斷該資料是否已儲存於快取空間中。若該資料已儲存於快取空間中,則橋接控制單元自快取空間中讀取該資料,並將該資料傳送給主機裝置。
本發明實施例提供一種外接儲存裝置加速方法,適用於外接儲存裝置加速器中,其中外接儲存裝置加速器用以連結主機裝置與外接儲存裝置。此外外接儲存裝置加速器具有橋接控制單元,且具有一快閃儲存單元或外接快閃記憶體裝置,以藉此規劃出快取空間與一般記憶空間。首先,橋接控制單元接收來自主機裝置的資料儲存命令。其次,橋接控制單元判斷是否可將該資料儲存 於快取空間中。而後,若可將該資料儲存於該快取空間中,則橋接控制單元將該資料儲存於快取空間中,否則,則將該資料儲存於一般記憶空間中。接著,橋接控制單元接收來自於主機裝置的資料讀取命令。而後,橋接控制單元判斷該資料是否已儲存於該快取空間中。隨後,若該資料已儲存於快取空間中,則橋接控制單元自快取空間中讀取該資料,並將該資料傳送給主機裝置。
綜上所述,本發明實施例所提供的外接儲存裝置加速器與其方法可以透過使用快閃儲存單元或快閃記憶體裝置的快取空間來儲存資料,以增加主機裝置讀取外接儲存裝置之資料的讀取速度。
為使能更進一步瞭解本發明之特徵及技術內容,請參閱以下有關本發明之詳細說明與附圖,但是此等說明與所附圖式僅係用來說明本發明,而非對本發明的權利範圍作任何的限制。
〔外接儲存裝置加速器之實施例〕
請參照圖1,圖1繪示本發明實施例提供之外接儲存裝置加速器的方塊圖。外接儲存裝置加速器10包括橋接控制單元101、第一資料傳輸界面103、第二資料傳輸界面105、通用序列匯流排界面107與快閃儲存單元109。
橋接控制單元101電性連接第一資料傳輸界面103、第二資料傳輸界面105、通用序列匯流排界面107與快閃儲存單元109。第一資料傳輸界面103電性連接主機裝置1,第二資料傳輸界面105電性連接至外接儲存裝置20 ,且通用序列匯流排界面107連接快閃記憶體裝置30。
第一資料傳輸界面103作為主機裝置1與橋接控制單元101之間資料傳遞的界面,第二資料傳輸界面105作為外接儲存裝置20與橋接控制單元101之間資料傳遞的界面,且通用序列匯流排界面107連接於快閃記憶體裝置30作為快閃記憶體裝置30與橋接控制單元101資料傳遞的界面。橋接控制單元101依據主機裝置1所傳送的資料讀取或資料儲存命令控制外接儲存裝置加速器10中之資料傳輸的運作模式,亦即控制資料存取的傳輸方向或路徑。快閃儲存單元109至少一部分的記憶空間被用以作為快取空間。
更進一步地說,快閃儲存單元109的讀取速度較外接儲存裝置20的讀取速度快,因此透過橋接控制單元101的控制,快閃儲存單元109會規劃出快取空間來儲存資料。如此,當主機裝置10要透過第一資料傳輸界面103要求讀取資料時,若此資料也被儲存於快閃儲存單元109,則橋接控制單元101並非透過第二資料傳輸界面105向外接儲存裝置20要求此資料,相反地,橋接控制單元101直接向快閃儲存單元109要求此資料,以藉此增加主機裝置1的資料讀取速度,從而縮短主機裝置1進行資料讀取的時間。
當主機裝置1進行資料儲存時,橋接控制單元101會同時地將資料儲存至外接儲存裝置20與快閃儲存單元109的快取空間中。另外,當主機裝置1進行資料讀取時,若快閃儲存單元109並無此資料儲存於其中且主機裝置1認為此資料可能為之後常用的資料,則橋接控制 單元101自外接儲存裝置20讀取此資料後,除了將此資料送至主機裝置1之外,還會額外地將此資料儲存於快閃儲存單元109的快取空間中。
要說明的是,在其他實施例中,橋接控制單元101亦可以不需判斷此資料是否可能為之後常用的資料,而直接地將此資料儲存至儲存於快閃儲存單元109的快取空間中。
於此實施例中,主機裝置1例如為個人電腦、平板電腦或筆記型電腦。另外,外接儲存裝置20例如為外接磁性硬碟、外接固態硬碟、崁入式多媒體記憶卡(Embedded MultiMediaCard,EMMC)或安全數碼卡(Secure Digital Memory Card,SD),且快閃記憶體裝置30例如為一般的隨身碟。總而言之,主機裝置1、外接儲存裝置20與快閃記憶體裝置30的實施方式並非用以限制本發明。
於此實施例中,第一資料傳輸界面103例如為通用序列匯流排或序列高技術配置界面,且第二資料傳輸界面105依據外接儲存裝置20的種類可例如為序列高技術配置或整合裝置電路(Integrated Device Electronic,IDE)界面。另外,通用序列匯流排界面107可以是由通用序列匯流排集線器來實現,且通用序列匯流排界面107可使用通用序列匯流排3.0(USB 3.0)技術,以配合加速資料傳輸速度。快閃儲存單元109例如可由單層電路元(single-level cell)或多層電路元(multi-level cell)快閃記憶體技術所實現。要說明的是,第一資料傳輸界面103、第二資料傳輸界面105的類型、通用序列匯流排界面 107所使用的規格版本以及通用序列匯流排界面107與快閃儲存單元109的實現方式皆非用以限定本發明。
值得一提的是,實現上述快閃儲存單元109至少一部分的記憶空間作為快取空間的方式可以透過將快取資料存取演算法程式化至橋接控制單元101,或者是將快取資料存取演算法所對應的硬體電路實現於橋接控制單元101。
快取資料存取演算法例如讀取快取及寫入穿透(Read Cache,Write-Through)演算法,甚至快取資料存取演算法還可以包括快取資料存替換演算法,其中快取資料替換演算法例如是先進先出演算法(FIFO)、最少使用演算法(LFU)或最久沒有使用演算法(LRU),以對快閃儲存單元109的記憶空間進行資料管理與控制。總而言之,橋接控制單元101可以透過韌體、軟體或硬體的方式來實現,以控制快閃儲存單元09應儲存那些資料於其快取空間,甚至規劃快閃儲存單元109作為快取空間的記憶空間大小與位址。除此之外,本發明並不限定橋接控制單元101所使用之快取資料替換演算法的種類。
更具體地說,橋接控制單元101會先控制快閃儲存單元109分配其記憶空間。接著,當主機裝置1有資料要儲存至外接儲存裝置20時,橋接控制單元101除了將資料儲存於外接儲存裝置20外,還會將此資料儲存快閃儲存單元109的快取空間中。接著,當主機裝置1要自外接儲存裝置20讀取此資料時,因為此資料也同時儲存於快閃儲存單元109的快取空間中,因此,橋接控制單元101會直接地向快閃儲存單元109的快取空間直接讀取此資 料,而不透過第二資料傳輸界面105向外接儲存裝置20讀取此資料。
然而,因為快閃儲存單元109中作為快取空間的記憶空間有限,因此有外接儲存裝置20中的資料不可能全部都儲存於快閃儲存單元109的快取空間中。因此,橋接控制單元101每隔一段預設時間後或快取空間中已無記憶空間可以儲存資料時,橋接控制單元101會啟動快取資料替換演算法。橋接控制單元101會將儲存於快閃儲存單元109之快取空間中的資料藉由快取資料替換演算法來替換清理快閃儲存單元109之快取空間,以騰出快取空間來儲存主機裝置1目前所要儲存或讀取的資料。
因此,當快閃儲存單元109的快取空間中並無主機裝置1所要讀取的資料時,橋接控制單元101會透過第二資料傳輸界面105向外接儲存裝置20讀取此資料。同時,橋接控制單元101可以判斷此資料是否為之後常用的資料來決定是否也將此資料儲存於快閃儲存單元109的快取空間中。
另外,附帶說明的是,快閃記憶體裝置30可以用來擴充外接儲存裝置20的記憶空間,或者是用來擴充快閃儲存單元109的快取空間。當橋接控制單元101規劃快閃記憶體裝置30至少一部分的記憶空間作為快取空間時,則此部分的記憶空間的用途與快閃儲存單元109的快取空間相同。當橋接控制單元101規劃快閃記憶體裝置30至少一部分的記憶空間作為外接儲存裝置20的記憶空間時,則此部分的記憶空間的用途與外接儲存裝置20 的記憶空間相同。
舉例來說,假設主機裝置1欲由外接儲存裝置20讀取資料DATA_1(資料DATA_1例如為常用文件或系統常駐執行程序等)。橋接控制單元101會先確認資料DATA_1是否已存於快取儲存單元109或快閃記憶體裝置30的快取空間中。若資料DATA_1已存於快閃儲存單元109或快閃記憶體裝置30的快取空間中(亦即Cache Hit),則橋接控制單元101從快閃儲存單元109或快閃記憶體裝置30的快取空間中讀取資料DATA_1至主機裝置1。
若資料DATA_1不存於快閃儲存單元109或快閃記憶體裝置30的快取空間中(亦即Cache Miss),則橋接控制單元101會透過第二資料傳輸界面105由外接儲存裝置20儲存空間讀取資料DATA_1,並將資料DATA_1送至主機裝置1。同時,若橋接控制單元101判斷資料DATA_1為常用的資料,則橋接控制單元101將此資料儲存於快閃儲存單元109或快閃記憶體裝置30的快取空間中。
再舉一例來說,若假設主機裝置1欲將資料DATA_2儲存至外接儲存裝置20,則橋接控制單元101會將資料DATA_2儲存於外接儲存裝置20中。同時,橋接控制單元101會將資料儲存於快閃儲存單元109或快閃記憶體裝置30的快取空間中。
另外,要說明的是,外接儲存裝置加速器10的通用序列匯流排介面107或快閃儲存單元109的其中之一可以移除。當外接儲存裝置加速器10的快閃儲存單元109 移除時,外接儲存裝置加速器10得連接快閃記憶體裝置30,以將快閃記憶體裝置30的至少一部分的記憶空間作為快取空間。
總而言之,藉由上述外接儲存裝置加速器10,主機裝置1向外接儲存裝置20讀取資料的時間將可以有效地縮短。除此之外,因為外接儲存裝置加速器10為獨立的電子裝置,因此使用者可以直接使用外接儲存裝置加速器10來加速其本身所擁有的外接儲存裝置,而不需要透過購買新款外接儲存裝置才可以減少主機裝置1進行資料讀取的時間。當然,外接儲存裝置加速器10亦可以與外接儲存裝置20整合,而成為一個外接儲存裝置產品,而且如前面所述,使用者還可以外接快閃記憶體裝置30來擴充快取空間。
〔外接儲存裝置加速器之另一實施例〕
上述實施例的橋接控制單元101是搭配使用讀取快取及寫入穿透演算法將主機裝置1要儲存的資料儲存於外接儲存裝置20之外,還將資料儲存於快閃儲存單元109的快取空間中,但本發明卻不限定於此。
請同時參照圖1與圖2,圖2繪示本發明實施例提供之外接儲存裝置加速器的快閃儲存單元與外接儲存裝置之記憶空間的分配示意圖。橋接控制單元101可透過韌體程式設計方式將快取儲存單元109與外接儲存裝置20整合為一具有較大記憶空間之硬碟,以擴充快取儲存單元109的記憶空間。
更具體地說,橋接控制單元101可使用零式獨立磁碟冗餘陣列(Redundant Array of Independent Disks 0, RAID-0)技術,將快取儲存單元109與外接儲存裝置20的記憶空間組合起來,使快取儲存單元109與外接儲存裝置20可以組成一個邏輯儲存單元4。換句話說,於邏輯上,快取儲存單元109與外接儲存裝置20的組合可被主機裝置1視為一個單獨的硬碟。
之後,橋接控制單元101會將此邏輯儲存單元4劃分為快取空間41及一般記憶空間43,其中一般記憶空間43僅是單純用以儲存資料。於圖2的實施例中,橋接控制單元101將快閃儲存單元109全部的記憶空間411劃分為快取空間41,且將外接儲存裝置20全部的記憶空間431劃分為一般記憶空間43。一般而言,快取空間41的容量會小於一般記憶空間43。舉例來說,快取空間41的容量可為16G,而一般記憶空間的容量43可為500G。
於此實施例中,當主機裝置1要儲存資料時,橋接控制單元101可依據資料接收的順序、資料的屬性或資料是否為常用的資料來判斷要將此資料儲存至快取空間41或一般記憶空間43。
舉例來說,橋接控制單元101可以依照資料之接收順序將資料儲存至邏輯儲存單元4,亦即先將資料儲存於快取空間41中,且直到快取空間41的記憶空間已無法繼續儲存資料時,接下來的資料才會被儲存至一般記憶空間43。
再舉一例來說,若主機裝置1要儲存的資料為常用的資料,則橋接控制單元101會將資料儲存在快取空間41中。若主機裝置1要儲存的資料並非為常用的資料 ,則橋接控制單元101會將資料儲存在一般記憶空間43中。
另外,當主機裝置1要讀取資料時,橋接控制單元101會判斷此資料是否儲存於快取空間41中。若此資料儲存於快取空間41中,則橋接控制單元101自快閃儲存單元109的快取空間中讀取此資料,並將此資料透過第一資料傳輸界面103送至主機裝置1。
若此資料未儲存於快取空間41中,則橋接控制單元101透過第二資料傳輸界面105自外接儲存裝置20的一般記憶空間43中讀取此資料,並將此資料送至主機裝置1。同時,若此資料為常用的資料,則橋接控制單元101會將此資料自一般記憶空間43移至快取記憶空間41,並且將此資料自一般記憶空間43中移除。
要說明的是,在其他實施例中,橋接控制單元101也可能不判斷此資料是否為常用的資料,而直接地將此資料自一般記憶空間43移至快取記憶空間41,並且將此資料自一般記憶空間43中移除。除此之外,在其他的實施例中,橋接控制單元101也有可能僅將此資料自一般記憶空間43移至快取記憶空間41,但卻不將此資料自一般記憶空間43中移除。
同樣地,橋接控制單元101還可以執行快取資料替換演算法,以可將快取空間41中的資料(此資料例如為已超過一預設時間或不常存取之資料)移至一般記憶空間43中,並將此資料自快取空間41中移除,以藉此騰出快取空間41的記憶空間。
值得一提的是,圖2中之快閃儲存單元109與外接 儲存裝置20之記憶空間的分配方式並非用以限定本發明。除此之外,本發明亦不限定橋接控制單元101如何將快閃儲存單元109與外接儲存裝置20之記憶空間組合成一個邏輯儲存單元4的實現方式。
〔外接儲存裝置加速器之另一實施例〕
請同時參照圖1與圖3,圖3繪示本發明另一實施例提供之外接儲存裝置加速器的快閃儲存單元、快閃記憶體裝置與外接儲存裝置之記憶空間的分配示意圖。如同前面所述,外接儲存裝置加速器10可藉由快閃記憶體裝置30來擴充快取空間。
不同於圖2的實施例,於圖3中,橋接控制單元101將快取儲存單元109、快閃記憶體裝置30與外接儲存裝置20的記憶空間組合成邏輯儲存單元5,其中快取空間51係由快取儲存單元109全部的記憶空間511與快閃記憶體裝置30全部的記憶空間513所組成,且一般記憶空間53則由外接儲存裝置20全部的記憶空間531所組成。
如圖3所示,外接儲存裝置加速器10因快取空間51可藉由快閃記憶體裝置30擴充,因此可以提升快取空間51的容量。一般而言,快取命中率可以隨著快取空間51的容量上升而增加,故透過快閃記憶體裝置30擴充快取空間51,將可以更有效加速主機裝置1之資料讀取速度。
值得一提的是,圖3中之快閃儲存單元109、快閃記憶體裝置30與外接儲存裝置20之記憶空間的分配方式並非用以限定本發明。除此之外,本發明亦不限定橋接控制單元101如何將快閃儲存單元109、快閃記憶體裝 置30與外接儲存裝置20之記憶空間組合成一個邏輯儲存單元5的實現方式。
〔外接儲存裝置加速器之另一實施例〕
請同時參照圖1與圖4,圖4繪示本發明另一實施例提供之外接儲存裝置加速器的快閃儲存單元、快閃記憶體裝置與外接儲存裝置之記憶空間的分配示意圖。如同前面所述,外接儲存裝置加速器10可藉由快閃記憶體裝置30來擴充快取空間與記憶空間,且快閃儲存單元109的記憶空間可劃分為快取空間與一般記憶空間。
不同於圖3的實施例,於圖4中,邏輯儲存單元6中的快取空間61由快取儲存單元109部份的記憶空間611與快閃記憶體裝置30部份的記憶空間613所組成,且邏輯儲存單元6中的一般記憶空間63由快取儲存單元109另一部份的記憶空間631、快閃記憶體裝置30另一部份的記憶空間633與外接儲存裝置20全部的記憶空間635所組成。
值得一提的是,圖4中之快閃儲存單元109、快閃記憶體裝置30與外接儲存裝置20之記憶空間的分配方式並非用以限定本發明。除此之外,本發明亦不限定橋接控制單元101如何將快閃儲存單元109、快閃記憶體裝置30與外接儲存裝置20之記憶空間組合成一個邏輯儲存單元6的實現方式。
〔外接儲存裝置加速方法的實施例〕
接著,請同時參照圖1與圖5,圖5繪示本發明實施例提供之外接儲存裝置加速方法的流程圖。在步驟S100中,橋接控制單元101會接收並判斷主機裝置1 所傳送的指令是否為資料讀取或資料儲存指令。若主機裝置1所傳送的指令為資料讀取指令,則執行步驟S110。相反地,若主機裝置1所傳送的指令為資料儲存指令,則執行步驟S150。
在步驟S110中,橋接控制單元101判斷主機裝置1所欲讀取的資料DATA_R是否已儲存於快閃儲存單元109中的快取空間(例如,透過搜尋快閃儲存單元109之快取空間來進行判斷)。若資料DATA_R已儲存於快閃儲存單元109中的快取空間,則執行步驟S140。相反地,若資料DATA_R並未儲存於快閃儲存單元109中的快取空間,則執行步驟S120。
在步驟S120中,橋接控制單元101自外接儲存裝置20讀取資料DATA_R,且接著將資料DATA_R送至主機裝置1。在步驟S130中,橋接控制單元101將資料DATA_R儲存於快閃儲存單元109中之快取空間。
要說明的是,外接儲存裝置加速方法更可以在步驟S120與S130之間包括使用橋接控制單元101判斷資料DATA_R是否為常用資料的步驟。若資料DATA_R是為常用資料,則才會接著執行步驟S130。相反地,若資料DATA_R並非為常用資料,則不執行步驟S130,而結束外儲存裝置加速方法。
在步驟S140中,橋接控制單元101直接讀取儲存於快閃儲存單元109中之快取空間的資料DATA_R,並接著將資料DATA_R送至主機裝置1。
在步驟S150中,橋接控制單元101自主機裝置1獲得所欲儲存的資料DATA_W,並且於步驟S160將中 此資料DATA_W同時儲存至快閃儲存單元109中之快取空間與外接儲存裝置20。
值得一提的是,外接儲存裝置加速方法在執行步驟S100之前更包括使用橋接控制單元101判斷是否啟動快取資料提換演算法的步驟與執行快取資料替換演算法的步驟。若橋接控制單元101判斷需要啟動快取資料替換演算法,則接著會執行快取資料替換演算法。相反地,若橋接控制單元101判斷不需要啟動快取資料替換演算法,則接著執行步驟S100。另外,使用橋接控制單元101判斷是否啟動快取資料替換演算法的方式如前面所述,故不再贅述。
〔快取資料替換演算法的實施例〕
接者,請參照圖6,圖6繪示本發明實施例提供之外接儲存裝置加速器之快取資料替換演算法的流程圖。如前面所述,快閃儲存單元109所建立的快取空間之容量有限,因此為了增加快取命中率,橋接控制單元101可執行快取資料替換演算法,以替換存於快取空間中的資料。
首先,於步驟S200中,橋接控制單元101判斷存於快取空間中之資料的儲存時間是否大於預設置換時間。若資料之儲存時間大於預設置換時間,則在步驟S210中,橋接控制單元101會將資料自快取空間中移除。
舉例來說,假設預設置換時間為5分鐘,則橋接控制單元101會將目前已儲存於快閃儲存單元109的快取空間中之資料的儲存時間與預設置換時間進行比較 ,並將儲存時間超過5分鐘之資料全部清除。
要說明的是,圖6僅為本發明實施例所述的其中一種快取資料替換演算方法,圖6的實施例並非用以限定本發明。換言之,橋接控制單元101也可使用先進先出演算法、最少使用演算法或最久沒有使用演算法等作為快取資料替換演算法,以隨時更新快閃儲存單元109的快取空間中所儲存的快取資料。
〔外接儲存裝置加速方法之另一實施例〕
請參照圖1、圖4與圖7,圖7繪示本發明另一實施例提供之外接儲存裝置加速方法的流程圖。橋接控制單元101會接收並判斷主機裝置1所傳送的指令是否為資料讀取或資料儲存指令。若主機裝置1所傳送的指令為資料讀取指令,則執行步驟S310。相反地,若主機裝置1所傳送的指令為資料儲存指令,則執行步驟S350。
在步驟S310中,橋接控制單元101判斷主機裝置1所欲讀取的資料DATA_R是否已儲存於快取空間61。若資料DATA_R已儲存於快取空間61,則執行步驟S340。相反地,若資料DATA_R並未儲存於快取空間61,則執行步驟S320。
在步驟S320中,橋接控制單元101自一般記憶空間63讀取資料DATA_R,且接著將資料DATA_R送至主機裝置1。在步驟S330中,橋接控制單元101將資料DATA_R儲存於快取空間61。
要說明的是,外接儲存裝置加速方法更可以在步驟S320與S330之間包括使用橋接控制單元101判斷資 料DATA_R是否為常用資料的步驟。若資料DATA_R是為常用資料,則才會接著執行步驟S330。相反地,若資料DATA_R並非為常用資料,則不執行步驟S330,而結束外儲存裝置加速方法。
在步驟S340中,橋接控制單元101直接讀取儲存於快取空間61的資料DATA_R,並接著將資料DATA_R送至主機裝置1。
在步驟S350中,橋接控制單元101判斷快取空間61是否可以儲存資料DATA_W。若快取空間61仍有記憶空間可以儲存資料DATA_W,則執行步驟S360。若快取空間61已無記憶空間可以儲存資料DATA_W,則執行步驟S370。
在步驟S360中,橋接控制單元101將資料DATA_W儲存於快取空間61。在步驟S370中,橋接控制單元101將資料DATA_W儲存於一般記憶空間63。
值得說明的是,外接儲存裝置加速方法在步驟S300與S350之間更可以包括使用橋接控制單元101判斷資料DATA_W是否為常用資料之步驟。若資料DATA_W為常用資料,則執行步驟S350。相反地,若資料DATA_W並非為常用資料,則執行步驟S370。
除此之外,需要說明的是,外接儲存裝置加速方法在執行步驟S300之前更包括使用橋接控制單元101判斷是否啟動快取資料提換演算法的步驟與執行快取資料替換演算法的步驟。若橋接控制單元101判斷需要啟動快取資料提換演算法,則接著會執行快取資料替換 演算法。相反地,若橋接控制單元101判斷不需要啟動快取資料提換演算法,則接著執行步驟S300。另外,使用橋接控制單元101判斷是否啟動快取資料提換演算法的方式如前面所述,故不再贅述。
〔實施例的可能功效〕
綜上所述,本發明實施例所提供的外接儲存裝置加速器與其方法可以透過使用快閃儲存單元或快閃記憶體裝置的快取空間來儲存資料,以增加主機裝置讀取外接儲存裝置之資料的讀取速度。所述快閃記憶體裝置可以進行更換,因此可以視使用者的需要來對快取空間進行擴充,且在其他實施例中,使用者更可以透過軟體自行規劃所需的快取空間。
除此之外,因外接儲存裝置加速器為獨立的電子裝置,因此使用者可以直接使用外接儲存裝置加速器來加速其本身所擁有的外接儲存裝置,而不需要透過購買新款外接儲存裝置才可以減少主機裝置進行資料讀取的時間。
以上所述僅為本發明之實施例,其並非用以侷限本發明之專利範圍。
1‧‧‧主機裝置
10‧‧‧外接儲存裝置加速器
101‧‧‧橋接控制單元
103‧‧‧第一資料傳輸界面
105‧‧‧第二資料傳輸界面
107‧‧‧通用序列匯流排界面
109‧‧‧快閃儲存單元
20‧‧‧外接儲存裝置
30‧‧‧快閃記憶體裝置
4、5、6‧‧‧邏輯儲存單元
41、51、61‧‧‧快取空間
411、511‧‧‧快閃儲存單元全部的記憶空間
43、53、63‧‧‧一般記憶空間
431、531、635‧‧‧外接儲存裝置全部的記憶空間
513‧‧‧快閃記憶體裝置全部的記憶空間
611‧‧‧快取儲存單元部份的記憶空間
613‧‧‧快閃記憶體裝置部份的記憶空間
631‧‧‧快取儲存單元另一部份的記憶空間
633‧‧‧快閃記憶體裝置另一部份的記憶空間
S100~S160‧‧‧步驟
S200~S210‧‧‧步驟
S300~S370‧‧‧步驟
圖1是本發明實施例提供之外接儲存裝置加速器的方塊圖。
圖2是本發明實施例提供之外接儲存裝置加速器的快閃儲存單元與外接儲存裝置之記憶空間的分配示意圖。
圖3是本發明另一實施例提供之外接儲存裝置加 速器的快閃儲存單元、快閃記憶體裝置與外接儲存裝置之記憶空間的分配示意圖。
圖4本發明另一實施例提供之外接儲存裝置加速器的快閃儲存單元、快閃記憶體裝置與外接儲存裝置之記憶空間的分配示意圖。
圖5是本發明實施例提供之外接儲存裝置加速方法的流程圖。
圖6是本發明實施例提供之外接儲存裝置加速器之快取資料替換演算法的流程圖。
圖7是本發明另一實施例提供之外接儲存裝置加速方法的流程圖。
1‧‧‧主機裝置
10‧‧‧外接儲存裝置加速器
101‧‧‧橋接控制單元
103‧‧‧第一資料傳輸界面
105‧‧‧第二資料傳輸界面
107‧‧‧通用序列匯流排界面
109‧‧‧快閃儲存單元
20‧‧‧外接儲存裝置
30‧‧‧快閃記憶體裝置

Claims (9)

  1. 一種外接儲存裝置加速器,包括:一第一資料傳輸界面,用以供該外接儲存裝置加速器與一主機裝置連接;一第二資料傳輸界面,用以供該外接儲存裝置加速器與一外接儲存裝置連接;一快閃儲存單元,其至少一部分的記憶空間用以作為一快取空間;以及一橋接控制單元,連接該第一資料傳輸界面、該第二資料傳輸界面與該快閃儲存單元,當該主機裝置欲將一資料儲存於該外接儲存裝置時,該橋接控制單元將該資料同時儲存於該外接儲存裝置與該快閃儲存單元;其中當該主機裝置欲自該外接儲存裝置讀取該資料時,該橋接控制單元判斷該資料是否儲存於該快取空間中,若該資料儲存於該快取空間中,則該橋接控制單元自該快取空間中讀取該資料,並將該資料傳送給該主機裝置。
  2. 如申請專利範圍第1項之外接儲存裝置加速器,更包括:一通用序列匯流排界面,連接該橋接控制單元,用以供該外接儲存裝置加速器與一快閃記憶體裝置連 接,該快閃記憶體裝置的至少一部分的記憶空間用以擴充該快取空間。
  3. 一種外接儲存裝置加速器,包括:一第一資料傳輸界面,用以供該外接儲存裝置加速器與一主機裝置連接;一第二資料傳輸界面,用以供該外接儲存裝置加速器與一外接儲存裝置連接;一通用序列匯流排界面,用以與一快閃記憶體裝置連接,該快閃記憶體裝置的至少一部分記憶空間用以作為一快取空間;以及一橋接控制單元,連接該第一資料傳輸界面、該第二資料傳輸界面與該通用序列匯流排界面,當該主機裝置欲將一資料儲存於該外接儲存裝置時,該橋接控制單元將該資料同時儲存於該外接儲存裝置與該快閃記憶體裝置之該快取空間;其中當該主機裝置欲自該外接儲存裝置讀取該資料時,該橋接控制單元判斷該資料是否儲存於該快取空間中,若該資料儲存於該快取空間中,則該橋接控制單元自該快取空間中讀取該資料,並將該資料傳送給該主機裝置。
  4. 一種如申請專利範圍第1至3項任一項的外接儲存裝置加速器,其中該橋接控制單元另用以判斷是否可將該資 料儲存於該快取空間,若可將該資料儲存於該快取空間中,則該橋接控制單元將該資料儲存於該快取空間中,否則,則將該資料直接儲存於該外接儲存裝置與/或該快閃記憶體裝置及該快閃儲存單元其中之一所組成的一一般記憶空間中。
  5. 如申請專利範圍第4項之外接儲存裝置加速器,其中該通用序列匯流排界面是一通用序列匯流排集線器。
  6. 一種外接儲存裝置加速方法,用於一外接儲存裝置加速器中,其中該外接儲存裝置加速器用以連結一主機裝置與一外接儲存裝置,該外接儲存裝置加速器具有一橋接控制單元,且具有一快閃儲存單元或外接一快閃記憶體裝置,以藉此規劃出一快取空間,且該外接儲存裝置加速方法包括:該橋接控制單元接收來自該主機裝置的一資料儲存命令;該橋接控制單元將該資料同時儲存於該外接儲存裝置與該快取空間中;該橋接控制單元接收來自於該主機裝置的一資料讀取命令;該橋接控制單元判斷該資料是否儲存於該快取空間中;以及若該資料儲存於該快取空間中,則該橋接控制單元自 該快取空間中讀取該資料,並將該資料傳送給該主機裝置。
  7. 如申請專利範圍第6項之外接儲存裝置加速方法,更包括:若該資料未儲存於該快取空間中,則該橋接控制單元自該外接儲存裝置讀取該資料,並判斷是否可將該資料儲存於該快取空間中,若可將該資料儲存於該快取空間中,則該橋接控制單元將該資料儲存於該快取空間中。
  8. 一種外接儲存裝置加速方法,用於一外接儲存裝置加速器中,其中該外接儲存裝置加速器用以連結一主機裝置與一外接儲存裝置,該外接儲存裝置加速器具有一橋接控制單元,且具有一快閃儲存單元或外接一快閃記憶體裝置,以藉此規劃出一快取空間與一一般記憶空間,且該外接儲存裝置加速方法包括:該橋接控制單元接收來自該主機裝置的一資料儲存命令;該橋接控制單元判斷是否可將該資料儲存於該快取空間中;若可將該資料儲存於該快取空間中,則該橋接控制單元將該資料儲存於該快取空間中,否則,則將該資料儲存於該一般記憶空間中; 該橋接控制單元接收來自於該主機裝置的一資料讀取命令;該橋接控制單元判斷該資料是否儲存於該快取空間中;以及若該資料儲存於該快取空間中,則該橋接控制單元自該快取空間中讀取該資料,並將該資料傳送給該主機裝置。
  9. 如申請專利範圍第8項之外接儲存裝置加速方法,更包括:若該資料未儲存於該快取空間中,則該橋接控制單元自該外接儲存裝置讀取該資料,並判斷是否可將該資料儲存於該快取空間中,若可將該資料儲存於該快取空間中,則該橋接控制單元將該資料儲存於該快取空間中。
TW101117359A 2012-05-16 2012-05-16 外接儲存裝置加速器及其方法 TW201348963A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW101117359A TW201348963A (zh) 2012-05-16 2012-05-16 外接儲存裝置加速器及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW101117359A TW201348963A (zh) 2012-05-16 2012-05-16 外接儲存裝置加速器及其方法

Publications (1)

Publication Number Publication Date
TW201348963A true TW201348963A (zh) 2013-12-01

Family

ID=50157394

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101117359A TW201348963A (zh) 2012-05-16 2012-05-16 外接儲存裝置加速器及其方法

Country Status (1)

Country Link
TW (1) TW201348963A (zh)

Similar Documents

Publication Publication Date Title
KR102074329B1 (ko) 데이터 저장 장치 및 그것의 데이터 처리 방법
US8775739B2 (en) Memory system including first and second caches and controlling readout of data therefrom
US8639881B2 (en) Information processing apparatus and driver
US8407418B2 (en) Information processing apparatus and driver
US10795599B2 (en) Data migration method, host and solid state disk
US20160266792A1 (en) Memory system and information processing system
TWI610172B (zh) 用於經由集合和通道來靈活地將快取記憶體劃分成分量快取記憶體的方法和裝置
KR101924022B1 (ko) 메모리 시스템 및 그것의 페이지 교체 방법
US20110276746A1 (en) Caching storage adapter architecture
WO2015132877A1 (ja) 計算機およびメモリ制御方法
JP2009205335A (ja) 2種のメモリデバイスをキャッシュに用いるストレージシステム及びそのストレージシステムを制御する方法
KR20140000751A (ko) 데이터 저장 장치의 동작 방법
KR102106261B1 (ko) 메모리 컨트롤러의 작동 방법과 이를 포함하는 장치들의 작동 방법들
KR102595233B1 (ko) 데이터 처리 시스템 및 그것의 동작 방법
TWI710905B (zh) 資料儲存裝置及邏輯至物理位址映射表之載入方法
WO2016160164A1 (en) Improving storage cache performance by using compressibility of the data as a criteria for cache insertion
KR20150055413A (ko) 데이터 저장 장치
JP2014049091A (ja) 情報処理装置
TW202101227A (zh) 閃存實體資源集合管理裝置及方法以及電腦程式產品
WO2019090493A1 (zh) 内存块回收方法和装置
US20130173855A1 (en) Method of operating storage device including volatile memory and nonvolatile memory
JP2020191055A (ja) 瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体
CN111813703A (zh) 数据储存装置及逻辑至物理地址映射表的更新方法
TWI626540B (zh) 一般及垃圾回收的資料存取方法以及使用該方法的裝置
CN112306906A (zh) 存储设备、包括该存储设备的存储系统及其操作方法