TWI534615B - 串列周邊介面控制器、串列周邊介面快閃記憶體及其存取方法和存取控制方法 - Google Patents
串列周邊介面控制器、串列周邊介面快閃記憶體及其存取方法和存取控制方法 Download PDFInfo
- Publication number
- TWI534615B TWI534615B TW102145500A TW102145500A TWI534615B TW I534615 B TWI534615 B TW I534615B TW 102145500 A TW102145500 A TW 102145500A TW 102145500 A TW102145500 A TW 102145500A TW I534615 B TWI534615 B TW I534615B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- flash memory
- stream
- page
- peripheral interface
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
Description
本發明係關於一種記憶體裝置,特別關於一種串列快閃記憶體(serial flash memory)裝置。
快閃記憶體裝置通常用於電子應用,如個人電腦、個人數位助理(Personal Digital Assistants,PDAs)、數位相機及行動電話。通常,快閃記憶體裝置分為平行快閃記憶體(parallel flash memory)裝置及串列快閃記憶體裝置。與平行快閃記憶體相比,串列快閃記憶體具有更少的傳輸線(transmission lines)和接腳(pin)數目。因此,串列快閃記憶體的封裝尺寸可相對減小,以及串列快閃記憶體可作為可攜式電子裝置之主導記憶體(dominant memory)。
一個傳統8接腳(8-pin)串列周邊介面(Serial Peripheral Interface,SPI)NAND快閃記憶體包含晶片選擇接腳CS#、串列時脈接腳SCK、串列資料輸入/串列資料輸入和輸出接腳SI/SO0、串列資料輸出/串列資料輸入和輸出接腳
SO/SO1、寫入保護/串列資料輸入和輸出接腳WP#/SO2、保持/串列資料輸入和輸出接腳HOLD#/SO3、電力供應接腳VCC和接地接腳GND。在該說明書中,簡潔起見,串列資料輸入/串列資料輸入和輸出接腳SI/SO0、串列資料輸出/串列資料輸入和輸出接腳SO/SO1、寫入保護/串列資料輸入和輸出接腳WP#/SO2及保持/串列資料輸入和輸出接腳HOLD#/SO3也可稱為串列輸入和輸出接腳。記憶體透過晶片選擇接腳CS#接收晶片選擇信號。當晶片選擇信號變為低位準時,記憶體處於有效電力模式(active power mode)下。當晶片選擇信號變為高位準時,記憶體失能(disabled),以及串列資料輸出接腳SO置於高阻抗狀態High-z。記憶體透過串列時脈接腳SCK接收串列時脈信號,用於為記憶體提供串列介面時序。位址資訊、指令及資料在串列時脈信號之上升邊緣鎖存(latch)或擷取(retrieve),以及資料的輸出係於串列時脈信號之下降邊緣之後所觸發。
第1A圖、第1B圖及第1C圖顯示上述傳統SPI NAND快閃記憶體之頁面讀取操作之時序圖。頁面讀取操作係執行用以將NAND快閃陣列中之資料傳送至快取記憶體(cache)。首先,當晶片選擇信號已賦能(enabled)後,記憶體透過串列資料輸入接腳SI接收頁面讀取指令CMD-PR。然後,記憶體接收區塊/頁面位址ADD-P。當區塊/頁面位址ADD-P已註冊(registered)後,記憶體開始由NAND快閃陣列中傳送資料至快取記憶體,且工作(busy)持續時長tCS。此後,發起(issue)獲取特徵指令CMD-GF以檢測操作狀態。基於接收到的狀態暫存器位址ADD-SR,由狀態暫存器(register)中讀取指示操作狀態的狀態
暫存器資料D-SR,然後透過串列資料輸出接腳SO輸出。
在成功完成狀態後,發起隨機資料讀取操作以讀取快取記憶體中之資料。隨機資料讀取操作可為單一讀取操作(single read operation)、雙重讀取操作(dual read operation)或四重讀取操作(quad read operation)。在單一讀取操作中,串列輸入和輸出接腳SI/SO0用於輸入指令,以及串列輸入和輸出接腳SO/SO1用於輸出讀取資料,因而輸出資料流之帶寬為2位元(bits)。此外,在四重讀取操作中,串列輸入和輸出接腳SI/SO0、SO/SO1、WP#/SO2及HOLD#/SO3全部使用,以輸出讀取資料,因而輸出資料流之帶寬為4位元。
第2A圖和第2B圖顯示上述傳統SPI NAND快閃記憶體之四重讀取操作之時序圖。在四重讀取操作中,記憶體在晶片選擇信號已賦能後透過串列輸入和輸出接腳SI/SO0接收四重讀取指令CMD-RC。當三個虛擬位元DB及計劃選擇位元PS之後,記憶體接收行位址(column address)ADD-C。然後,在一虛擬位元組DBy後,根據行位址ADD-C,記憶體透過串列輸入和輸出接腳SI/SO0、SO/SO1、WP#/SO2和HOLD#/SO3將快取記憶體中之已讀取資料(如第2B圖中之位元組B1、B2、B3及B4)輸出。
然而,在具備處理多個資料流能力之電子裝置中,當電子裝置經由在不同資料流之間進行切換以由SPI NAND快閃記憶體中讀取資料或向SPI NAND快閃記憶體中寫入資料時,有可能存在許多等待週期(wait cycles)。例如,當透過第一資料流讀取資料時,執行有關第一頁面之頁面讀取操
作及隨機資料讀取操作,以由記憶體中讀取資料。當切換至透過第二資料流讀取資料時,執行有關第二頁面之頁面讀取操作及隨機資料讀取操作。此後,當切換回透過第一資料流讀取資料時,由於快取記憶體當前儲存了第二頁面之資料,需要再次執行有關第一頁面之頁面讀取操作,以將第一頁面之資料讀取至快取記憶體,然後執行隨機資料讀取操作以讀取快取記憶體中之資料。換言之,有可能再次發起頁面讀取指令、區塊/頁面位址、獲取特徵指令、狀態暫存器位址及行位址。因此,由於增加了等待週期以及重複發送一些資訊(如位址、指令、先前已讀取資料等等)而不加以重複使用,特別是在經由在不同資料流之間頻繁切換而執行存取之條件下,有可能浪費許多時間及存取資源。
有鑑於此,本發明提供至少一種串列周邊介面控制器、串列周邊介面快閃記憶體及其存取方法和存取控制方法。
本發明提供一種存取方法,用於一串列周邊介面快閃記憶體,其中該串列周邊介面快閃記憶體包含一快閃記憶體陣列並支援多個資料流,該存取方法包含:接收一流啟動(stream initiate)指令,用於該多個資料流中之一資料流,其中該流啟動指令包含該資料流之一存取類型及識別碼;接收位址資訊,其中該位址資訊包含該快閃記憶體陣列之一頁面之頁面位址及一位址指標(address pointer);以及根據該流啟動指令及該頁面位址,由該快閃記憶體陣列中讀取資料至對應於該資料
流之一流暫存器,或根據該流啟動指令,將欲寫入該快閃記憶體陣列之資料儲存入對應於該資料流之該流暫存器中。
本發明另提供一種存取控制方法,用於一串列周邊介面快閃記憶體,其中該串列周邊介面快閃記憶體包含一快閃記憶體陣列並支援多個資料流,該存取方法包含:發送一流啟動指令至該串列周邊介面快閃記憶體,其中該流啟動指令用於該多個資料流中之一資料流,且該流啟動指令包含該資料流之一存取類型及一識別碼;發送位址資訊至該串列周邊介面快閃記憶體,其中該位址資訊包含該快閃記憶體陣列之一頁面之一頁面位址及一位址指標;以及根據該流啟動指令及該頁面位址,控制該串列周邊介面快閃記憶體由該快閃記憶體陣列中讀取資料至對應於該資料流之一流暫存器,或根據該流啟動指令,控制該串列周邊介面快閃記憶體將欲寫入該記憶體陣列之資料儲存入對應於該資料流之該流暫存器。
本發明另提供一種串列周邊介面快閃記憶體,支援多個資料流,該串列周邊介面快閃記憶體包含:一快閃記憶體陣列;多個流暫存器,每個流暫存器對應於該多個資料流中之一者;以及一控制邏輯,耦接於該快閃記憶體陣列及該多個流暫存器,接收用於該多個資料流中之一資料流之一流啟動指令及位址資訊,其中該流啟動指令包含該資料流之一存取類型及一識別碼,以及該位址資訊包含該快閃記憶體陣列之一頁面之一頁面位址及一位址指標;其中,資料係根據該流啟動指令及該頁面位址由該快閃記憶體陣列中讀取至對應於該資料流之一流暫存器,或資料係根據該流啟動指令儲存入對應於該資
料流之該流暫存器中。
本發明另提供一種串列周邊介面控制器,耦接於一串列周邊介面快閃記憶體,以控制該串列周邊介面快閃記憶體之存取操作,其中該串列周邊介面快閃記憶體包含一快閃記憶體陣列,並支援多個資料流,該串列周邊介面控制器包含:一控制邏輯,發送用於該多個資料流中之一資料流之一流啟動指令及位址資訊至該串列周邊介面快閃記憶體,其中該流啟動指令包含該資料流之一存取類型及一識別碼,以及該位址資訊包含該快閃記憶體陣列之一頁面之一頁面位址及一位址指標,以及該控制邏輯根據該流啟動指令及該頁面位址控制該串列周邊介面快閃記憶體由該快閃記憶體陣列中讀取資料至對應於該資料流之一流暫存器,或該控制邏輯根據該流啟動指令將欲寫入該快閃記憶體陣列之資料儲存入對應於該資料流之該流暫存器。
利用本發明所提供之串列周邊介面控制器、串列周邊介面快閃記憶體及其存取方法和存取控制方法,可實現資料流存取之高效操作,並縮短處理時間。
30‧‧‧主處理器
35‧‧‧主處理器匯流排
40‧‧‧主記憶體
50‧‧‧SPI控制器
56‧‧‧SPI匯流排
60‧‧‧SPI快閃記憶體
410、420、480‧‧‧資料緩衝器
500、600‧‧‧控制邏輯
510、610‧‧‧流暫存器組
511、512、518、611、612、618‧‧‧流暫存器
521、522、523、620‧‧‧多工器
530‧‧‧串列/平行轉換器
531‧‧‧平行至QPI轉換器
532‧‧‧QPI至平行轉換器
540、640‧‧‧輸入/輸出緩衝器
541、642‧‧‧三態緩衝器
542、641‧‧‧緩衝器
630‧‧‧頁面快取記憶體
650‧‧‧指令暫存器
660‧‧‧位址暫存器
670‧‧‧資料暫存器
680‧‧‧記憶體核心
682‧‧‧快閃記憶體陣列
684‧‧‧列解碼器
686‧‧‧行解碼器
ADD、ADD_I‧‧‧位址資訊
ADD_C‧‧‧行位址
ADD_P‧‧‧區塊/頁面位址
ADD_SR‧‧‧狀態暫存器位址
B1、B2、B3、B4‧‧‧位元組
CMD-GF‧‧‧獲取特徵指令
CMD-ID‧‧‧連續讀取指令
CMD-PR‧‧‧頁面讀取指令
CMD-RC‧‧‧四重讀取指令
CMD-SI‧‧‧流啟動指令
CS#‧‧‧晶片選擇接腳
D-SR‧‧‧狀態暫存器資料
DB‧‧‧虛擬位元
DBy‧‧‧虛擬位元組
High-z‧‧‧高阻抗狀態
PS‧‧‧計劃選擇位元
SCK‧‧‧串列時脈接腳
SI/SO0、SO/SO1、WP#/SO2、HOLD#/SO3‧‧‧串列輸入和輸出接腳
第1A圖、第1B圖及第1C圖顯示傳統SPI NAND快閃記憶體之頁面(page)讀取操作之時序圖。
第2A圖和第2B圖顯示傳統SPI NAND快閃記憶體之四重讀取操作之時序圖。
第3A圖和第3B圖顯示根據本發明一實施例之SPI NAND快
閃記憶體之流啟動操作之時序圖。
第4圖顯示根據本發明一實施例之SPI NAND快閃記憶體之連續讀取操作之時序圖。
第5圖顯示根據本發明一實施例之SPI控制器50之區塊示意圖。
第6圖顯示根據本發明一實施例之SPI記憶體60之區塊示意圖。
在說明書及申請專利範圍當中使用了某些詞彙來指稱特定組件。所屬領域中具有通常知識者應可理解,硬體製造商可能會用不同名詞來稱呼同一個組件。本說明書及申請專利範圍並不以名稱之差異來作為區分組件之方式,而是以組件在功能上之差異來作為區分之準則。在通篇說明書及申請專利範圍當中所提及之「包含」為一開放式用語,故應解釋成「包含但不限定於」。「大致」是指在可接受之誤差範圍內,所屬領域中具有通常知識者能夠在一定誤差範圍內解決所述技術問題,基本達到所述技術效果。此外,「耦接」一詞在此包含任何直接及間接之電性連接手段。因此,若文中描述一第一裝置耦接於一第二裝置,則代表該第一裝置可直接電性連接於該第二裝置,或透過其他裝置或連接手段間接地電性連接至該第二裝置。說明書後續描述為實施本發明之較佳實施方式,然該描述乃以說明本發明之一般原則為目的,並非用以限定本發明之範圍。本發明之保護範圍當視所附之申請專利範圍所界定者為準。
本發明之一實施例提供一種存取方法,用於SPI快閃記憶體。SPI快閃記憶體包含快閃記憶體陣列並支援多個資料流。SPI快閃記憶體進一步包含多個流暫存器,每個流暫存器對應於多個資料流中之一者。該存取方法包含流啟動操作、頁面存取操作及連續存取(continuous access)操作,其中流啟動操作用於啟動多個資料流中之一者。上述資料流之數目可為4至8。
第3A圖和第3B圖顯示根據本發明一實施例之SPI NAND快閃記憶體之流啟動操作之時序圖。首先,接收用於多個資料流中之一資料流(如Xth資料流)之流啟動指令CMD-SI。流啟動指令CMD-SI包含資料流之存取類型及資料流之識別碼。存取類型可為讀取類型或寫入類型,其中讀取類型指示資料流之存取操作為讀取操作,寫入類型指示資料流之存取類型為寫入操作,且對於單一資料流而言只有一個存取類型。資料流之存取類型及識別碼可根據流啟動指令CMD-SI之指令字(command word)來決定。例如,指令字4Xh指示用於Xth資料流並執行讀取操作之流啟動指令。然後,接收位址資訊ADD-I。位址資訊ADD-I包含快閃記憶體陣列之頁面之頁面位址及位址指標。存取類型及接收到的位址資訊ADD-I可儲存於對應於資料流之流暫存器中,以及位址指標用於指向儲存於流暫存器中之資料。因此,位址資訊ADD-I可為第1A圖和第1B圖中之頁面位址ADD-P與2A圖中之行位址ADD-C之組合。當SPI快閃記憶體接收到用於資料流之流啟動指令和位址資訊,以及存取類型已儲存入對應之流暫存器之後,資料流之啟動完成,換言之,
流啟動操作結束。
頁面存取操作緊隨流啟動操作,用於根據流啟動指令及頁面位址由快閃記憶體陣列中讀取頁面資料至對應於資料流之流暫存器,或根據流啟動指令將欲寫入快閃記憶體之資料儲存入對應於資料流之流暫存器。用於資料流之頁面存取操作在用於資料流之流啟動結束之後自發(spontaneously)執行。例如,若第一流啟動指令指示用於第一資料流並執行讀取操作之流啟動操作,則當第一資料流啟動之後,根據位址資訊中之頁面位址由快閃記憶體中讀取頁面資料,並將讀取的頁面資料儲存入對應於第一資料流之SPI快閃記憶體之第一流暫存器中。若第二流啟動指令指示用於第二資料流之流啟動指令並執行寫入操作之流啟動指令,則當第二資料流啟動後,發送欲寫入快閃記憶體陣列之頁面資料,並將其儲存入對應於第二資料流之SPI快閃記憶體之第二流暫存器中。
連續存取操作緊隨頁面存取操作,用於根據位址指標由流暫存器中輸出已讀取之頁面資料(連續讀取操作),或根據位址指標將流暫存器中之頁面資料寫入快閃記憶體陣列(連續寫入操作)。在連續存取操作中,首先接收用於資料流之連續存取指令。連續存取指令包含資料流之識別碼。在連續讀取操作中,根據位址指標,將對應於資料流之流暫存器中之已讀取頁面資料由SPI快閃記憶體中讀出,其中流暫存器可根據資料流之識別碼來決定,以及位址指標在資料輸出後增加。在連續寫入操作中,根據頁面位址及位址指標,將對應於資料流之流暫存器中之頁面資料寫入快閃記憶體,其中流暫存
器可根據資料流之識別碼來決定,以及位址指標在資料寫入後增加。
第4圖顯示根據本發明一實施例之SPI NAND快閃記憶體之連續讀取操作之時序圖。首先,接收包含資料流之識別碼之連續讀取指令CMD-ID。例如,指令字5Xh指示用於Xth資料流之連續讀取指令。然後,根據儲存於Xth流暫存器中之位址指標,將Xth流暫存器中之已讀取頁面資料(如第4圖中之輸出資料位元組B1、B2、B3及B4)由SPI快閃記憶體中讀出,以及儲存於Xth流暫存器中之位址指標在Xth流暫存器中之已讀取頁面資料輸出後增加。例如,在用於Xth資料流之流啟動操作中接收到之Xth資料流之最初之位址指標指向Xth流暫存器中之已讀取頁面資料之第一位元組。在由Xth流暫存器中輸出第一位元組、第二位元組、第三位元組及第四位元組之後,儲存於Xth資料流中之位址指標增加至指向Xth流暫存器中已讀取頁面資料之第五位元組。因此,當Xth流暫存器中之已讀取頁面資料之四個位元組已輸出後,若SPI快閃記憶體由Xth資料流切換至另一資料流,然後再切換回Xth資料流,則Xth流暫存器中之已讀取頁面資料之第五位元組可根據位址指標直接輸出,而無需發送行位址。更進一步,當Xth資料流啟動後,由於用於Xth資料流之已讀取頁面資料儲存於Xth流暫存器中,因而當切換回Xth資料流時無需再次發起頁面位址及頁面讀取操作。相應地,上述存取操作相比先前技術所耗費之處理時間更少。
另外,在連續存取操作期間,若儲存於流暫存器中之位址指標進入儲存於流暫存器中之頁面之頁面邊界區域
(boundary zone)時,預取(pre-fetch)靠近該頁面之另一頁面之資料,因而當跨越頁面邊界時資料可連續存取,而無需在頁面邊界處等待頁面等待週期。頁面邊界區域可為頁面邊界前方之N位元。例如,N可為16或32。
在一個實施例中,用於多個資料流之流啟動操作可依次(successively)發起。用於該多個資料流之啟動之操作順序及頁面存取操作可基於流啟動指令之接收順序來決定。此外,在用於資料流之啟動及頁面存取操作結束之前,用於資料流之連續存取操作無法執行。另外,若用於資料流之連續存取操作發起時,該資料流之流啟動操作及頁面存取操作尚未完成,則可由SPI快閃記憶體中輸出一暫停向量(pending vector),告知SPI控制器及/或主處理器(host processor)操作未完成。如上所述,例如,用於第一資料流之流啟動操作、用於第二資料流之流啟動操作、用於第三資料流之流啟動操作、用於第一資料流之連續存取操作、用於第二資料流之連續存取操作、用於第一資料流之連續存取操作、用於第三資料流之連續存取操作及用於第一資料流之連續存取操作依次發起。因此,與先前技術相比,多個資料流之操作之發起更加高效,且處理時間相對縮短。
第5圖顯示根據本發明一實施例之SPI控制器50之區塊示意圖,其中SPI控制器50執行用於SPI快閃記憶體60之存取控制方法。SPI控制器50透過主處理器匯流排35耦接於主處理器30,SPI控制器50耦接於主記憶體40,並透過SPI匯流排56耦接於SPI快閃記憶體60。SPI快閃記憶體60包含快閃記憶體陣
列並支援多個資料流(在本實施例中為8個資料流)。SPI控制器50可整合於主處理器30中,或可整合於耦接於主處理器30之外部SPI介面之一部分。SPI控制器50接收來自主處理器30之存取指令,以控制SPI快閃記憶體60之存取操作。SPI控制器50將欲寫入之資料(如來自主記憶體40之寫入資料WD)發送至SPI快閃記憶體60,或將SPI快閃記憶體60中讀取之資料發送至主處理器30。
SPI控制器50包含控制邏輯500、流暫存器組510、多工器(multiplexers)521、522及523、串列/平行轉換器530及輸入/輸出緩衝器540,其中流暫存器組510包含流暫存器511~518,串列/平行轉換器530包含平行至四重周邊介面(Quad Peripheral Interface,QPI)轉換器531及QPI至平行轉換器532,輸入/輸出緩衝器540包含三態緩衝器(tri-state buffer)541及緩衝器542。流暫存器組510之每個流暫存器儲存多個資料流之對應資料流之指令、狀態及位址資訊。流暫存器組510之每個流暫存器中所儲存之指令耦接於多工器521,以及儲存於流暫存器組510之每個流暫存器中所儲存之位址資訊耦接於多工器522。多工器521輸出已選擇之指令/狀態CS至控制邏輯500,以及多工器522輸出已選擇之位址資訊ADD至多工器523之輸入端。多工器523之另一輸入端接收來自主記憶體40之欲寫入SPI快閃記憶體60之寫入資料WD。主記憶體40可包含用於多個資料流之資料緩衝器,如資料緩衝器410~480。多工器523之輸出耦接於平行至QPI轉換器531,以及平行至QPI轉換器531耦接於三態緩衝器541。控制邏輯500耦接於多工器521、522及523,
以根據來自主處理器30之存取指令選擇多個資料流之指令、狀態、位址資訊及寫入資料。控制邏輯500也控制串列/平行轉換器530及三態緩衝器541。來自SPI快閃記憶體60之已讀取資料透過SPI匯流排56發送至緩衝器542,並於此後發送至QPI至平行轉換器532。QPI至平行轉換器532輸出已讀取資料RD,且已讀取資料RD透過主處理器匯流排35發送至主處理器30。
控制邏輯500控制SPI控制器50之組件以控制SPI快閃記憶體60之存取操作。控制邏輯500發送用於多個資料流中之一資料流之流啟動指令及該資料流之位址資訊至SPI快閃記憶體60,以控制SPI快閃記憶體60根據流啟動指令及位址資訊執行用於該資料流之流啟動操作及頁面存取操作。流啟動指令包含資料流之存取類型及資料流之識別碼。位址資訊包含SPI快閃記憶體60之快閃記憶體陣列之頁面之頁面位址及位址指標。當資料流之存取類型指示讀取操作時,根據流啟動指令及頁面位址,控制邏輯500控制SPI快閃記憶體60由快閃記憶體中讀取資料至對應於該資料流之SPI快閃記憶體60中之流暫存器。可選地,當資料流之存取類型指示寫入操作時,根據流啟動指令,控制邏輯500控制SPI快閃記憶體60將欲寫入快閃記憶體陣列之資料儲存入對應於該資料流之SPI快閃記憶體60中之流暫存器。流啟動操作與頁面存取操作之細節已描述如上,簡潔起見,此處不再贅述。
控制邏輯500進一步發送用於資料流之連續存取指令至SPI快閃記憶體60,以控制SPI快閃記憶體60執行用於資料流之連續存取操作。連續存取指令包含資料流之識別碼。當
資料流之存取類型指示讀取操作時,根據對應於該資料流之SPI快閃記憶體60中之流暫存器中所儲存之位址指標,控制邏輯500控制SPI快閃記憶體60由對應於該資料流之SPI快閃記憶體60中之流暫存器中輸出資料至SPI控制器50,且位址指標在資料輸出後增加。可選地,當資料流之存取類型指示寫入操作時,根據對應於該資料流之SPI快閃記憶體60中之流暫存器中所儲存之頁面位址及位址指標,控制邏輯500控制SPI快閃記憶體60將對應於該資料流之SPI快閃記憶體60中之流暫存器中所儲存之資料寫入快閃記憶體陣列,以及位址指標在資料寫入後增加。連續存取操作及位址指標之細節已描述如上,簡潔起見,此處不再贅述。
當對應於該資料流之SPI快閃記憶體60中之流暫存器中所儲存之位址指標進入該頁面之頁面邊界區域時,控制邏輯500可進一步控制SPI快閃記憶體60預取靠近對應於該資料流之SPI快閃記憶體60中之流暫存器中所儲存之頁面之另一頁面之資料。因此,當跨越頁面邊界時資料可連續存取,無需在頁面邊界處等待頁面等待週期。頁面邊界區域可為頁面邊界前方之N位元。例如,N可為16或32。
請注意,第5圖中之SPI控制器50僅為較佳舉例,本發明並不以此為限。例如,SPI控制器50可進一步包含用於產生信號之信號產生單元,如串列時脈信號產生單元。
第6圖顯示根據本發明一實施例之SPI記憶體60之區塊示意圖。SPI記憶體60支援多個資料流(在本實施例中為8個資料流),並包含控制邏輯600、流暫存器組610、多工器620、
頁面快取記憶體630、輸入/輸出緩衝器640、指令暫存器650、位址暫存器660、資料暫存器670及記憶體核心680,其中流暫存器組610包含流暫存器611~618,輸入/輸出緩衝器640包含緩衝器641及三態緩衝器642,記憶體核心680包含快閃記憶體陣列682、列(row)解碼器684及行(column)解碼器686。控制邏輯600根據接收自SPI控制器50之指令及資訊控制SPI快閃記憶體60之組件執行存取操作。輸入/輸出緩衝器640耦接於SPI匯流排56。指令暫存器650、位址暫存器660及資料暫存器670耦接於緩衝器641。位址暫存器660及資料暫存器670進一步耦接於記憶體核心680。接收自SPI控制器50之用於資料流之指令暫時儲存於指令暫存器650中,然後再發送並儲存至流暫存器組610中之對應流暫存器。接收自SPI控制器50之資料流之位址資訊暫時儲存於位址暫存器660中,然後再發送並儲存至流暫存器組610中之對應流暫存器。當用於資料流之連續存取操作發起時,對應於該資料流之流暫存器中所儲存之位址資訊發送至位址暫存器660,因而連續存取操作可根據該位址資訊執行。接收自SPI控制器50之欲寫入快閃記憶體陣列682之資料暫時儲存於資料暫存器670中,然後再發送並儲存至流暫存器組610中之對應流暫存器。當用於資料流之連續寫入操作發起時,對應於該資料流之流暫存器中所儲存之資料發送至資料暫存器670中,以寫入快閃記憶體陣列682。
控制邏輯60接收來自SPI控制器50之用於多個資料流中之一資料流之流啟動指令及用於該資料流之位址資訊,並根據該流啟動指令及位址資訊控制SPI快閃記憶體60之
組件執行用於該資料流之流啟動操作及頁面存取操作。流啟動指令包含該資料流之存取類型及該資料流之識別碼。位址資訊包含快閃記憶體陣列682之頁面之頁面位址及位址指標。存取類型及接收到之位址資訊儲存於對應於該資料流之流暫存器組610中之流暫存器。當存取類型指示讀取操作時,根據流啟動指令及頁面位址,控制邏輯600控制SPI快閃記憶體60由快閃記憶體陣列682中讀取資料至頁面快取記憶體630,然後,根據該資料流之識別碼,頁面快取記憶體630中之頁面資料發送並儲存至對應於該資料流之流暫存器組610中之流暫存器。可選地,當存取類型指示寫入操作時,根據流啟動指令,控制邏輯600控制SPI快閃記憶體60將欲寫入快閃記憶體陣列682之資料儲存入對應於該資料流之流暫存器組610中之流暫存器。流啟動操作及頁面存取操作之細節已描述如上,簡潔起見,此處不再贅述。
控制邏輯600進一步接收來自SPI控制器50之用於資料流之連續存取指令,並控制SPI快閃記憶體60執行用於該資料流之連續存取操作。連續存取指令包含資料流之識別碼。當資料流之存取類型指示讀取操作時,根據對應於該資料流之流暫存器組610中之流暫存器中所儲存之位址指標,控制邏輯600控制SPI快閃記憶體60由對應於該資料流之流暫存器組610中之流暫存器中輸出資料至三態緩衝器642,以及控制邏輯600在資料輸出後增加位址指標。可選地,當存取類型指示寫入操作時,根據對應於該資料流之流暫存器組610中之流暫存器中所儲存之頁面位址及位址指標,控制邏輯600控制SPI快閃記憶
體60將對應於該資料流之流暫存器組610中之流暫存器中所儲存之資料寫入快閃記憶體陣列682。連續存取操作及位址指標已描述如上,簡潔起見,此處不再贅述。
當儲存於流暫存器中之位址指標進入流暫存器中所儲存之頁面之頁面邊界區域時,靠近該頁面之另一頁面之資料預取入流暫存器。因此,當跨越頁面邊界時資料可連續存取,而無需在頁面邊界處等待頁面等待週期。頁面邊界區域可為頁面邊界前方之N位元。例如,N可謂16或32。
請注意,上述SPI快閃記憶體及SPI控制器反向相容(backward compatible)。例如,在一實施例中,大資料流量(data traffic)之存取操作,如有關啟動(booting)之存取操作及有關多個資料區塊之資料下載或資料複製(copy),可根據上述存取協定來執行,其他小資料流量之存取操作可根據已知存取協定來執行。
如上所述,本發明提供了多資料流串列快閃記憶體裝置及其多資料流存取協定,以高效發起資料流之操作並縮短處理時間。
雖然本發明已以實施例揭露於上,然其並非用以限定本發明,任何熟習此項技藝者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
60‧‧‧SPI快閃記憶體
600‧‧‧控制邏輯
610‧‧‧流暫存器組
611、612、...、618‧‧‧流暫存器
620‧‧‧多工器
630‧‧‧頁面快取記憶體
640‧‧‧輸入/輸出緩衝器
641‧‧‧緩衝器
642‧‧‧三態緩衝器
650‧‧‧指令暫存器
660‧‧‧位址暫存器
670‧‧‧資料暫存器
680‧‧‧記憶體核心
682‧‧‧快閃記憶體陣列
684‧‧‧列解碼器
686‧‧‧行解碼器
Claims (12)
- 一種存取方法,用於一串列周邊介面快閃記憶體,其中該串列周邊介面快閃記憶體包含一快閃記憶體陣列並支援多個資料流,該存取方法包含:接收一流啟動指令,用於該多個資料流中之一資料流,其中該流啟動指令包含該資料流之一存取類型及一識別碼;接收位址資訊,其中該位址資訊包含該快閃記憶體陣列之一頁面之一頁面位址及一位址指標;以及根據該流啟動指令及該頁面位址,由該快閃記憶體陣列中讀取資料至對應於該資料流之一流暫存器,或根據該流啟動指令,將欲寫入該快閃記憶體陣列之資料儲存入對應於該資料流之該流暫存器中。
- 如申請專利範圍第1項所述之存取方法,其進一步包含:接收一連續存取指令,用於該資料流,其中該連續存取指令包含該資料流之該識別碼;以及根據該存取類型及該位址指標,將該資料由對應於該資料流之該流暫存器中輸出,或將該資料寫入該快閃記憶體陣列;其中該位址指標在該資料輸出或寫入後增加。
- 如申請專利範圍第2項所述之存取方法,其進一步包含:當該位址指標進入該頁面之一頁面邊界區域時,預取靠近該頁面之另一頁面之資料。
- 一種存取控制方法,用於一串列周邊介面快閃記憶體,其中該串列周邊介面快閃記憶體包含一快閃記憶體陣列並支 援多個資料流,該存取方法包含:發送一流啟動指令至該串列周邊介面快閃記憶體,其中該流啟動指令用於該多個資料流中之一資料流,且該流啟動指令包含該資料流之一存取類型及一識別碼;發送位址資訊至該串列周邊介面快閃記憶體,其中該位址資訊包含該快閃記憶體陣列之一頁面之一頁面位址及一位址指標;以及根據該流啟動指令及該頁面位址,控制該串列周邊介面快閃記憶體由該快閃記憶體陣列中讀取資料至對應於該資料流之一流暫存器,或根據該流啟動指令,控制該串列周邊介面快閃記憶體將欲寫入該記憶體陣列之資料儲存入對應於該資料流之該流暫存器。
- 如申請專利範圍第4項所述之存取控制方法,其進一步包含:發送一連續存取指令至該串列周邊介面快閃記憶體,其中該連續存取指令用於該資料流,且該連續存取指令包含該資料流之該識別碼;以及根據該存取類型及該位址指標,控制該串列周邊介面快閃記憶體由對應於該資料流之該流暫存器中輸出該資料,或將該資料寫入該快閃記憶體陣列;其中,該位址指標在該資料輸出或寫入後增加。
- 如申請專利範圍第5項所述之存取控制方法,其進一步包含:當該位址指標進入該頁面之一頁面邊界區域時,控制該串 列周邊介面快閃記憶體預取靠近該頁面之另一頁面之資料。
- 一種串列周邊介面快閃記憶體,支援多個資料流,該串列周邊介面快閃記憶體包含:一快閃記憶體陣列;多個流暫存器,每個流暫存器對應於該多個資料流中之一者;以及一控制邏輯,耦接於該快閃記憶體陣列及該多個流暫存器,接收用於該多個資料流中之一資料流之一流啟動指令及一位址資訊,其中該流啟動指令包含該資料流之一存取類型及一識別碼,以及該位址資訊包含該快閃記憶體陣列之一頁面之一頁面位址及一位址指標;其中,資料係根據該流啟動指令及該頁面位址由該快閃記憶體陣列中讀取至對應於該資料流之一流暫存器,或該資料係根據該流啟動指令儲存入對應於該資料流之該流暫存器中。
- 如申請專利範圍第7項所述之串列周邊介面快閃記憶體,其中該控制邏輯進一步接收用於該資料流之一連續存取指令,該連續存取指令包含該資料流之該識別碼,其中,該資料係根據該存取類型及該位址指標由對應於該資料流之該流暫存器中輸出或寫入該快閃記憶體陣列,以及該控制邏輯在該資料輸出或寫入後增加該位址指標。
- 如申請專利範圍第8項所述之串列周邊介面快閃記憶體,其中,靠近該頁面之另一頁面之資料係當該位址指標進入該 頁面之一頁面邊界區域時預取。
- 一種串列周邊介面控制器,耦接於一串列周邊介面快閃記憶體,以控制該串列周邊介面快閃記憶體之存取操作,其中該串列周邊介面快閃記憶體包含一快閃記憶體陣列,並支援多個資料流,該串列周邊介面控制器包含:一控制邏輯,發送用於該多個資料流中之一資料流之一流啟動指令及位址資訊至該串列周邊介面快閃記憶體,其中該流啟動指令包含該資料流之一存取類型及一識別碼,以及該位址資訊包含該快閃記憶體陣列之一頁面之一頁面位址及一位址指標,以及該控制邏輯根據該流啟動指令及該頁面位址控制該串列周邊介面快閃記憶體由該快閃記憶體陣列中讀取資料至對應於該資料流之一流暫存器,或該控制邏輯根據該流啟動指令將欲寫入該快閃記憶體陣列之資料儲存入對應於該資料流之該流暫存器。
- 如申請專利範圍第10項所述之串列周邊介面控制器,其中該控制邏輯進一步發送用於該資料流之一連續存取指令至該串列周邊介面快閃記憶體,其中該連續存取指令包含該資料流之該識別碼,以及該控制邏輯根據該存取類型及該位址指標控制該串列周邊介面快閃記憶體由對應於該資料流之該流暫存器中輸出該資料至該串列周邊介面控制器或將該資料寫入該快閃記憶體陣列,其中該位址指標在該資料輸出或寫入後增加。
- 如申請專利範圍第11項所述之串列周邊介面控制器,其中,當該位址指標進入該頁面之一頁面邊界區域時,該控 制邏輯控制該串列周邊介面快閃記憶體預取靠近該頁面之另一頁面之資料。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN2016MU2013 IN2013MU02016A (zh) | 2013-06-13 | 2013-06-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201447573A TW201447573A (zh) | 2014-12-16 |
TWI534615B true TWI534615B (zh) | 2016-05-21 |
Family
ID=52227126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102145500A TWI534615B (zh) | 2013-06-13 | 2013-12-11 | 串列周邊介面控制器、串列周邊介面快閃記憶體及其存取方法和存取控制方法 |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN104238957B (zh) |
BR (1) | BR102013022935A2 (zh) |
IN (1) | IN2013MU02016A (zh) |
TW (1) | TWI534615B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105804734B (zh) * | 2016-04-12 | 2018-10-16 | 中国石油天然气集团公司 | 一种利用核磁共振测井识别稠油储层的方法 |
TWI608356B (zh) * | 2016-07-20 | 2017-12-11 | 聯陽半導體股份有限公司 | 週邊介面晶片及其資料傳送方法 |
CN108197502A (zh) * | 2018-01-11 | 2018-06-22 | 苏州国芯科技有限公司 | 一种spi传输方法、装置、控制器、加密芯片及通信设备 |
TWI727449B (zh) * | 2018-10-17 | 2021-05-11 | 旺宏電子股份有限公司 | 非循序頁面連續讀取 |
TWI688955B (zh) * | 2019-03-20 | 2020-03-21 | 點序科技股份有限公司 | 記憶體裝置以及記憶體的存取方法 |
CN111816627B (zh) * | 2020-09-09 | 2020-12-08 | 武汉新芯集成电路制造有限公司 | 一种存储封装芯片及其引脚复用方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101740102B (zh) * | 2008-11-11 | 2014-03-26 | 西安奇维测控科技有限公司 | 一种多通道闪存芯片阵列结构及其写入和读出方法 |
CN101819560B (zh) * | 2009-02-27 | 2012-05-30 | 杭州晟元芯片技术有限公司 | 一种spi接口存储器执行程序方法和装置 |
CN102193888B (zh) * | 2010-03-12 | 2013-06-05 | 新唐科技股份有限公司 | 数据传输***与可编程串行***设备接口控制器 |
US8135881B1 (en) * | 2010-09-27 | 2012-03-13 | Skyworks Solutions, Inc. | Dynamically configurable serial data communication interface |
CN202003346U (zh) * | 2010-12-22 | 2011-10-05 | 上海宇芯科技有限公司 | 一种多通道的nand flash控制器 |
CN102945213B (zh) * | 2012-09-24 | 2016-08-10 | 无锡众志和达数据计算股份有限公司 | 一种基于fpga的乱序内存控制器及其实现方法 |
-
2013
- 2013-06-13 IN IN2016MU2013 patent/IN2013MU02016A/en unknown
- 2013-09-06 BR BRBR102013022935-0A patent/BR102013022935A2/pt not_active Application Discontinuation
- 2013-12-11 TW TW102145500A patent/TWI534615B/zh not_active IP Right Cessation
- 2013-12-23 CN CN201310712743.7A patent/CN104238957B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN104238957A (zh) | 2014-12-24 |
BR102013022935A2 (pt) | 2015-07-28 |
CN104238957B (zh) | 2018-03-09 |
IN2013MU02016A (zh) | 2015-06-05 |
TW201447573A (zh) | 2014-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI534615B (zh) | 串列周邊介面控制器、串列周邊介面快閃記憶體及其存取方法和存取控制方法 | |
CN106716383B (zh) | 存储器装置和控制存储器装置的方法、存储器*** | |
TWI493350B (zh) | 用於周邊組件之高優先權命令佇列 | |
CN107305781B (zh) | 存储器装置、存储器***和控制存储器装置的方法 | |
KR100708128B1 (ko) | 낸드 플래시 메모리 제어 장치 및 방법 | |
KR100913279B1 (ko) | 버스를 통해 메모리 프리패치 명령들을 전송하기 위한 방법 및 장치 | |
US8266369B2 (en) | Flash memory interface | |
TWI446356B (zh) | 具有輸出控制之記憶體及其系統 | |
KR102170644B1 (ko) | 낮은 레벨 프로그래밍 가능한 시퀀서와 조합한 범용 프로그래밍 가능한 프로세서를 사용한 비휘발성 메모리 채널 제어 | |
KR20180035173A (ko) | 반도체 기억장치 및 이를 위한 연속 판독 방법 | |
US20130282945A1 (en) | Apparatus and method emulating a parallel interface to effect parallel data transfer from serial flash memory | |
MX2012005183A (es) | Linea de espera de comandos para componente periferico. | |
TW201305821A (zh) | 控制快閃記憶體介質系統的方法、裝置及固態記憶體件 | |
TW200826104A (en) | Modular command structure for memory and memory system | |
JP2008041098A (ja) | メモリーカード及び該データ格納方法 | |
GB2500082A (en) | Delaying the transmission of data from a memory device until the output buffer of the memory device contains the data for the transfer | |
JP2008009817A (ja) | 半導体装置及びデータ転送方法 | |
JP2006113689A (ja) | バスブリッジ装置およびデータ転送方法 | |
TWI471731B (zh) | 記憶體存取方法、記憶體存取控制方法、spi快閃記憶體裝置以及spi控制器 | |
US20030217218A1 (en) | Interface for devices having different data bus widths and data transfer method using the interface | |
CN110851073A (zh) | 储存装置及巨集指令的执行方法 | |
CN105608033B (zh) | 半导体装置及其操作方法 | |
TWI740092B (zh) | 儲存裝置及巨集指令的執行方法 | |
WO2016053146A1 (ru) | Компьютерная система | |
JP2022002164A (ja) | 非順次的ページ連続リード |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |