新四季網

異構存儲系統及其使用的高速緩存優化方法

2023-07-14 22:04:26

專利名稱:異構存儲系統及其使用的高速緩存優化方法
技術領域:
本發明涉及一種存儲系統,具體涉及一種異構存儲系統及其使用的高速緩存優化 方法。
背景技術:
目前最常用於SSM的半導體存儲介質是DRAM (Dynamic Random Access Memory)和 NAND Flash。其中,DRAM的存儲密度相對較低,且具有易失性,需有定期刷新機制以維持數 據信息,因此以DRAM為介質的固態存儲器的容量極為有限,在新型存儲設備中應用較少。 而NAND Flash是基於與非門的快閃記憶體晶片,存儲密度較高,同時其數據在斷電後依然能夠保 持,應用非常廣泛。但它的控制邏輯比較複雜,直接訪問速度較低,如何根據NAND Flash的 特徵實現存儲陣列的高速訪問是目前學術界和工業界亟待解決的問題。從容量和讀寫速度的角度看,現有的SSM解決方案主要包括例如SAMSUNG、 Toshiba,SANDISK等廠商推出的基於NAND Flash的256GB的大容量固態存儲器,其讀寫速 度最高可達200-220MB/S,但其對於大規模的存儲密集型應用來說還是不夠的。目前針對 SSM的研究主要集中在通過並行技術即通過增加總線寬度的方法來提高存取速度。但是目 前的技術大都受到總線寬度的限制,無法滿足更大規模數據的同時寫入、直接讀取的要求。緩存技術是提高SSM吞吐率的另外一個研究熱點。網絡處理器及其應用的研究以 及多媒體存儲系統,經常採用高速緩存Cache作為高速訪問的媒介。同時在海量數據存取 中緩存技術也是經常採用的優化策略。目前的這些緩存技術的主要缺點是需要對緩存進行 信息讀取來構建索引,從而會引入額外的讀事務而增大系統的開銷。另外一些系統雖然利 用FPGA(Field Programming Gate Array)或者Flash自帶的部分緩存來加速讀寫,但對整 個系統來說緩存資源太少,無法進行整體調度,會導致緩衝的頻繁失效而增大系統的響應 時間。總的來說,目前的固態存儲器優化技術可擴展性較差,無法適用於可變應用的大 容量存儲系統中。因此我們提出了基於交叉循環緩衝的緩存機制,該機制在緩存的基礎上 支持並行讀寫,有很強的擴展性。

發明內容
為了克服背景技術中存在的不足,本發明的一個目的在於提供一種異構存儲系 統,本發明的另一個目的在於提供所述異構存儲系統使用的高速緩存優化方法,本發明可 通過在讀寫時對數據進行高速緩衝和並行讀寫來提高訪問的吞吐率。為解決上述技術方案,實現上述技術目的,本發明通過以下技術方案來實現一種異構存儲系統其包括一 PCI接口,所述PCI接口可與外部訪問源相互通訊,其 還包括至少一組Flash陣列、至少一個靜態SRAM緩衝塊、至少一組交叉矩陣以及用來進行 交叉矩陣連接的總線和對應的控制邏輯,所述Flash陣列、SRAM緩衝塊的數據地址線和所 述外部訪問源都直接與所述交叉矩陣相連以實現不同的工作方式。
進一步的,為了提高所述異構存儲系統對所述Flash陣列中的Flash晶片的訪問 速率並使得所述外部訪問源對所述靜態SRAM緩衝塊的訪問以及所述靜態SRAM緩衝塊與所 述Flash晶片的數據交換兩者之間實現並行,所述Flash陣列的邏輯被分為奇偶兩個個體, 所述奇個體和偶個體各有獨立的數據和地址總線,可以直接進行讀寫操作,所述異構存儲 系統採用雙總線架構,即對外提供兩條總線來提高讀寫Flash晶片的並行度。進一步的,所述SRAM緩衝塊的SRAM晶片與所述Flash陣列中Flash晶片的頁大 小相同作為讀寫操作的統一緩衝。進一步的,所有外部接口與所述Flash陣列通信都通過所述SRAM緩衝塊作為中間 媒介。進一步的,系統對多組SRAM緩衝塊進行循環使用。進一步的,所述交叉矩陣負責進行連接方式的配置。外部訪問源、Flash陣列和 SRAM緩衝塊的數據地址線都直接與交叉矩陣相連以實現不同的工作方式。本發明的異構存儲系統使用的高速緩存優化方法,其包括下步驟(1)在數據讀取時,所述異構存儲系統首先接收外部的讀信號,然後判斷在當前 SRAM緩衝塊中是否存在數據命中;若命中,則直接配置所述交叉矩陣使所述SRAM緩衝塊與 所述外部訪問源相連,讀取數據,同時查看預取標誌位,若需要預取,則同時配置所述交叉 矩陣,將所述Flash晶片中的下一組數據預取到下一組SRAM緩衝塊中;若不命中,則需要配 置所述交叉矩陣,先將數據從所述Flash晶片中讀取到所述SRAM緩衝塊中,然後再配置所 述交叉矩陣從所述SRAM緩衝塊中讀取。(2)在數據寫入時,所述異構存儲系統首先接收外部的寫請求,然後通過所述 SRAM緩衝塊的調度模塊獲得當前要寫入的緩衝組編號,之後配置所述交叉矩陣使所述 SRAM緩衝塊與所述外部訪問源相連;在所述外部訪問源將數據寫滿第一組SRAM緩衝塊之 後,所述緩衝調度模塊獲得下一組緩衝編號,並重新配置所述交叉矩陣使所述外部訪問源 將數據寫入,與此同時,已寫滿的SRAM緩衝塊通過所述交叉矩陣配置與所述Flash陣列相 連,同時進行從SRAM緩衝塊到所述Flash晶片的數據傳輸。與現有技術相比,本發明具有以下顯著的優點1、本發明採用雙總線架構,把存儲陣列從邏輯上分為奇偶兩個體,奇偶兩個個體 可同時並行工作。每個個體中又採取位擴展的策略,使用同一個控制器對他們進行命令控 制,但是傳輸從PCI端來的不同字節的數據。這樣,我們即能達到多片並行,又能減少控制 器邏輯。2、本發明採用高速靜態SRAM作為數據緩存。由於SRAM的讀寫速度比Flash要快 的多,因此在本發明讀寫之前對數據進行緩衝,並掩蓋了 Flash的內部編程時間,可以大大 提高系統的吞吐率。上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段, 並可依照說明書的內容予以實施,以下以本發明的較佳實施例並配合附圖詳細說明如後。 本發明的具體實施方式
由以下實施例及其附圖詳細給出。


圖1是本發明的異構存儲系統一實施例的基於交叉矩陣的緩存架構示意圖。
圖2是本發明的異構存儲系統一實施例的緩存機制的主要讀寫流程示意圖,其 中,a為數據寫入流程示意圖;b為數據讀出流程示意圖。圖3是本發明的異構存儲系統一實施例的讀寫緩衝調度方法示意圖,其中,a為數 據寫時的緩衝調度方法示意圖;b為數據讀時的緩衝調度方法示意圖。
具體實施例方式下面結合附圖對本發明的具體實施作進一步描述如圖1所示,顯示了基於交叉矩陣4的緩存機制的組織架構,包含了多個Flash陣 列2、多組SRAM緩衝塊5、多個交叉矩陣4、以及用來進行交叉矩陣連接的總線3和對應的控 制邏輯,一外部訪問源通過一 PCI接口 1在讀寫Flash陣列2時傳輸的數據都需要在SRAM 緩衝塊5中進行緩衝以達到加速的目的,中間的交叉矩陣4在不同的讀寫階段可以通過配 置實現不同的功能。具體的模塊如下l)Flash 陣列Flash陣列2是構成本發明中存儲子系統的重要組成部分。為了提高系統對Flash 晶片的訪問速率並使得外部訪問源對緩存的訪問以及緩存與Flash晶片的數據交換兩者 之間實現並行,Flash陣列2的邏輯被分為奇偶兩個個體,兩組個體各有獨立的數據和地 址總線,可以直接進行讀寫操作,系統採用雙總線架構,即對外提供兩條總線來提高讀寫 Flash晶片的並行度。通常Flash晶片的地址總線寬度為8位,而通用存儲系統地址總線寬度為32位, 因此本發明採用總線擴展技術,每條總線可以同時對4塊Flash晶片進行並行訪問。綜合 以上兩點,系統的兩條總線總共可以同時對8塊Flash晶片(每條總線同時訪問4塊晶片) 進行同時讀寫的並行訪問。2) SRAM 緩衝塊圖1採用多組SRAM緩衝塊5用作Flash陣列2的循環緩衝。由於Flash晶片的 存儲以頁為最小單位,這意味著按頁編程的效率較高。因此系統中使用多組與Flash頁大 小相同的SRAM晶片作為讀寫操作的統一緩衝。所有外部接口與Flash陣列2的通信都需 要通過SRAM緩衝塊5作為中間媒介,對多組SRAM緩衝塊5進行循環使用。此外,考慮到Flash編程會因壞塊而導致錯誤,系統中使用一塊獨立的SRAM緩衝 塊5用來存放出錯時的緩衝數據,並提供錯誤數據重寫機制,以便在發生錯誤時,能夠不中 斷正常的讀寫訪問操作。3)交叉矩陣外部訪問源、Flash陣列2和SRAM緩衝塊5的數據地址線都直接與交叉矩陣4相 連以實現不同的工作方式。例如,在數據寫入流程中,先通過交叉矩陣4使緩衝與外部訪問 源連接,將數據寫入到緩衝中;隨後再配置交叉矩陣4使之與Flash陣列相連,將緩衝中的 數據轉移到Flash晶片中。數據讀取流程與寫入正好相反,先通過交叉矩陣4與Flash陣 列2相連,將數據讀取到緩衝中,再通知外部訪問源從緩衝中將數據取出。4)控制邏輯圖1中Flash陣列2、交叉矩陣4、SRAM緩衝塊5等均為系統抽象模型,為了保證 系統流程的正常運行,還需要提供專門邏輯對整個系統中各個模型的流程和狀態轉移時序進行控制。該控制邏輯負責外部訪問源的讀寫操作、交叉矩陣4配置和連接、SRAM緩衝塊5 的管理以及緩衝與Flash陣列2的各個狀態更新等。進一步來看,圖2是本發明實施例的緩存機制的主要讀寫流程示意圖;在緩存進 行讀寫之前,均需針對訪問類型進行交叉矩陣的配置,其中寫入過程還涉及到循環緩衝的調度。在數據寫入時,如圖2(a)所示,系統首先接收外部的寫請求,然後通過緩衝調度 模塊獲得當前要寫入的緩衝組編號,之後配置交叉矩陣4使SRAM緩衝塊5與外部訪問源相 連。在訪問源將數據寫滿第一組SRAM緩衝塊5之後,緩衝調度模塊獲得下一組緩衝編號, 並重新配置交叉矩陣4使外部訪問源將數據寫入。與此同時,已寫滿的SRAM緩衝塊5通過 交叉矩陣4配置與Flash陣列2相連,同時進行從緩衝到Flash晶片的數據傳輸。在數據讀取時,如圖2(b)所示,系統首先接收外部的讀信號,然後判斷在當前緩 衝中是否存在數據命中。若命中,則直接配置交叉矩陣4使SRAM緩衝塊5與外部訪問源相 連,讀取數據,同時查看預取標誌位,若需要預取,則同時配置交叉矩陣4,將Flash晶片中 的下一組數據預取到下一組SRAM緩衝塊5中;若不命中,則需要配置交叉矩陣4,先將數據 從Flash晶片中讀取到緩衝中,然後再配置交叉矩陣4從SRAM緩衝塊5中讀取。更進一步的,為提高Flash陣列2的訪問速率,將Flash陣列2在邏輯上分為奇偶 兩個體以提高並行度。整個Flash陣列2對外提供兩套總線,分別擁有各自獨立的控制信 號,在個體內以分列的方式對Flash陣列2進行控制。其中每列8塊晶片,不同列的4塊芯 片進行位擴展為一套總線。Flash晶片的存儲以頁為單位,因此按整頁編程的效率比按字節編程的效率高。設 計中使用多組(每組兩片)和Flash晶片頁大小相同的SRAM晶片作為緩衝。在寫入時, 外部接口直接將數據寫入緩衝。當該組緩衝寫滿後,外部接口換到下一組緩衝進行數據寫 入,同時將剛剛寫滿的數據寫入Flash晶片。在讀過程中,對於未命中的情況首先將數據從 Flash陣列2讀到SRAM緩衝塊5,然後從SRAM緩衝塊5中讀出。考慮到緩衝的組數太多會導致系統的硬體開銷會比較大,若太少則無法進行操作 的流水化,因此本發明在讀寫過程中,使用3組SRAM緩衝塊5作為典型值。調度中使用寫 標誌寄存器WReg和讀標誌寄存器RReg來判斷系統是否空閒。另外有3個地址寄存器存放 3組SRAM緩衝塊5中各自數據的起始地址,用來判斷讀操作是否命中。緩衝調度過程如圖3所示。如圖3(a)所示,在系統接收到寫請求之後,首先比較 讀寫標誌寄存器是否相等,若相等,則表明當前全部緩衝中的數據尚未寫入Flash晶片中, 系統處於繁忙狀態;若不等,則更新寫標記寄存器,標記有新的數據進入緩衝,在將數據寫 入緩衝之後,更新讀寄存器,標記有新的數據需要進行從緩衝到Flash晶片的轉移。同理,如圖3(b)所示,在接收到讀請求之後,通過比較地址寄存器來判斷讀請求 是否命中若命中,則可以直接從緩衝中讀取數據,同時判斷是否要進行數據的預取以提高 效率(若命中的緩衝為剛剛寫入的數據,則不進行預取,理由是剛寫入的數據被讀出,則很 有可能是對數據寫入正確性的驗證),若需要預取,則將Flash晶片中下一塊地址的數據從 Flash陣列2取到下一組SRAM緩衝塊5中;若請求未命中,則需要一定的響應時間使數據 先從Flash陣列2中轉移到SRAM緩衝塊5中,然後從緩衝中傳送給外部訪問源的同時預取 下一塊數據。
由於Flash存儲介質存在壞塊,因此向Flash進行編程有可能失敗,為了在失敗 時不中斷寫入,系統在錯誤反饋的同時將該頁的數據從工作緩衝轉移到錯誤緩衝進行存 儲。為了保證錯誤記錄和處理順序的一致性,錯誤管理採用先來先服務(First Come First Serve)的原則,從緩衝向Flash寫入的時候出現錯誤時,此時讀寫訪問仍在繼續,則需要將 發生錯誤的數據保存,同時將錯誤編號及出錯地址作為反饋給文件系統,等Flash寫入結 束後再將數據由工作緩衝轉移到錯誤緩衝。當接收到文件系統的處理錯誤命令時,再將錯 誤的數據從錯誤緩衝寫入到Flash晶片中。
權利要求
一種異構存儲系統,其包括一PCI接口,所述PCI接口可與外部訪問源相互通訊,其特徵在於還包括至少一組F1ash陣列、至少一個靜態SRAM緩衝塊、至少一組交叉矩陣以及用來進行交叉矩陣連接的總線和對應的控制邏輯,所述Flash陣列、SRAM緩衝塊的數據地址線和所述外部訪問源都直接與所述交叉矩陣相連。
2.根據權利要求1所述的異構存儲系統,其特徵在於所述Flash陣列的邏輯被分為 奇偶兩個個體,所述奇個體和偶個體各有獨立的數據和地址總線。
3.根據權利要求1所述的異構存儲系統,其特徵在於所述SRAM緩衝塊的SRAM晶片 與所述Flash陣列中Flash晶片的頁大小相同。
4.一種根據權利要求1或2或3所述異構存儲系統使用的高速緩存優化方法,其特徵 在於包括以下步驟,(1)在數據讀取時,所述異構存儲系統首先接收外部的讀信號,然後判斷在當前SRAM 緩衝塊中是否存在數據命中;若命中,則直接配置所述交叉矩陣使所述SRAM緩衝塊與所述 外部訪問源相連,讀取數據,同時查看預取標誌位,若需要預取,則同時配置所述交叉矩陣, 將所述Flash晶片中的下一組數據預取到下一組SRAM緩衝塊中;若不命中,則需要配置所 述交叉矩陣,先將數據從所述Flash晶片中讀取到所述SRAM緩衝塊中,然後再配置所述交 叉矩陣從所述SRAM緩衝塊中讀取。(2)在數據寫入時,所述異構存儲系統首先接收外部的寫請求,然後通過所述SRAM緩 衝塊的調度模塊獲得當前要寫入的緩衝組編號,之後配置所述交叉矩陣使所述SRAM緩衝 塊與所述外部訪問源相連;在所述外部訪問源將數據寫滿第一組SRAM緩衝塊之後,所述緩 衝調度模塊獲得下一組緩衝編號,並重新配置所述交叉矩陣使外部訪問源將數據寫入,與 此同時,已寫滿的SRAM緩衝塊通過所述交叉矩陣配置與所述Flash陣列相連,同時進行從 SRAM緩衝塊到所述Flash晶片的數據傳輸。
全文摘要
本發明公開了一種異構存儲系統及其使用的高速緩存優化方法,其系統包括一PCI接口,所述PCI接口可與外部訪問源相互通訊,還包括括至少一組Flash陣列、至少一個靜態SRAM緩衝塊、至少一組交叉矩陣以及用來進行交叉矩陣連接的總線和對應的控制邏輯,所述Flash陣列、SRAM緩衝塊的數據地址線和所述外部訪問源都直接與所述交叉矩陣相連。本發明的系統及其高速緩存優化方法在大容量的前提下極大的擴展了訪問速度和系統吞吐量,同時降低了系統的反應時間。
文檔編號G11C16/06GK101887753SQ201010223718
公開日2010年11月17日 申請日期2010年7月9日 優先權日2010年7月9日
發明者周學海, 張惠臻, 李曦, 王超, 紀金松, 陳香蘭 申請人:中國科學技術大學蘇州研究院

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀