欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

快閃存儲器儲存裝置、其控制器與寫入管理方法

文檔序號:6599611閱讀:154來源:國知局
專利名稱:快閃存儲器儲存裝置、其控制器與寫入管理方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種快閃存儲器的應(yīng)用,特別是涉及一種管理快閃存儲器的寫入操作的方法以及使用此方法的快閃存儲器控制器與快閃存儲器儲存裝置。
背景技術(shù)
一般來說,快閃存儲器儲存裝置中的快閃存儲器芯片(chip)會被劃分為多個實(shí)體區(qū)塊(block),而每個實(shí)體區(qū)塊還被劃分為多個實(shí)體頁面(page)。其中,實(shí)體區(qū)塊是快閃存儲器的最小擦除(erase)單位,實(shí)體頁面則是快閃存儲器的最小寫入(program)單位。由于在對快閃存儲器的存儲單元進(jìn)行編程時,僅能將存儲單元的值由1編程為0, 因此無法將數(shù)據(jù)直接寫入已被編程過的實(shí)體頁面。換句話說,必須先將已儲存有數(shù)據(jù)的頁面擦除之后才可重新編程該頁面。然而,正因快閃存儲器的擦除是以實(shí)體區(qū)塊為單位,故在需要對存有舊數(shù)據(jù)的實(shí)體頁面執(zhí)行擦除運(yùn)作時,必須將此實(shí)體頁面所屬的整個實(shí)體區(qū)塊進(jìn)行擦除。基于快閃存儲器是以實(shí)體頁面作為寫入單元,并以實(shí)體區(qū)塊作為擦除單元的這項特性,快閃存儲器芯片中的實(shí)體區(qū)塊大致上會被區(qū)分為數(shù)據(jù)區(qū)(data area)與備用區(qū) (spare area)。其中,屬于數(shù)據(jù)區(qū)的實(shí)體區(qū)塊是已被用來儲存數(shù)據(jù)的實(shí)體區(qū)塊,而屬于備用區(qū)的實(shí)體區(qū)塊則是未被使用的實(shí)體區(qū)塊。當(dāng)主機(jī)欲將數(shù)據(jù)寫入至快閃存儲器儲存裝置時, 快閃存儲器儲存裝置的控制電路會從備用區(qū)中提取實(shí)體區(qū)塊來寫入數(shù)據(jù),并且將所提取的實(shí)體區(qū)塊關(guān)聯(lián)至數(shù)據(jù)區(qū)。并且,在將對數(shù)據(jù)區(qū)的實(shí)體區(qū)塊執(zhí)行擦除運(yùn)作之后,將已擦除的實(shí)體區(qū)塊關(guān)聯(lián)至備用區(qū)。

發(fā)明內(nèi)容
本發(fā)明提供一種快閃存儲器的寫入管理方法,用以確保寫入指令能在規(guī)定的時限內(nèi)完成。本發(fā)明提供一種快閃存儲器儲存裝置,其所執(zhí)行的快閃存儲器的寫入管理方法能確保寫入指令可在規(guī)定的時限內(nèi)完成。本發(fā)明提供一種快閃存儲器控制器,其所執(zhí)行的快閃存儲器的寫入管理方法能確保寫入指令能在規(guī)定的時限內(nèi)完成。本發(fā)明提出一種快閃存儲器的寫入管理方法,用于至少存在第一執(zhí)行線程與第二執(zhí)行線程的快閃存儲器儲存裝置,此快閃存儲器儲存裝置包括快閃存儲器芯片。此方法包括定義預(yù)設(shè)寫入單位,接收第一寫入指令。此方法還包括當(dāng)判斷負(fù)責(zé)執(zhí)行第一寫入指令的是第一執(zhí)行線程時,將快閃存儲器芯片的控制權(quán)分配至第一執(zhí)行線程。在第一執(zhí)行線程完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)。在本發(fā)明的一范例實(shí)施例中,其中在分配快閃存儲器芯片的控制權(quán)至第一執(zhí)行線程的步驟之后,此方法還包括若在第一執(zhí)行線程進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,接收到需由第二執(zhí)行線程負(fù)責(zé)執(zhí)行的第二寫入指令,則在第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)后,將快閃存儲器芯片的控制權(quán)分配至第二執(zhí)行線程。在第二執(zhí)行線程將第二寫入指令所對應(yīng)的第二寫入數(shù)據(jù)寫入至快閃存儲器芯片后,令第二執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)。在本發(fā)明的一范例實(shí)施例中,其中在令第二執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)的步驟之后,此方法還包括判斷第一執(zhí)行線程是否已完成第一寫入指令所對應(yīng)的第一寫入數(shù)據(jù)的寫入動作。若否,則將快閃存儲器芯片的控制權(quán)分配至第一執(zhí)行線程,在第一執(zhí)行線程完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)。在本發(fā)明的一范例實(shí)施例中,其中在分配快閃存儲器芯片的控制權(quán)至第一執(zhí)行線程的步驟之后,此方法還包括若在第一執(zhí)行線程進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,未接收到其它寫入指令,則在第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)后,判斷第一執(zhí)行線程是否已完成第一寫入指令所對應(yīng)的第一寫入數(shù)據(jù)的寫入動作。若否,則將快閃存儲器芯片的控制權(quán)分配至第一執(zhí)行線程,并在第一執(zhí)行線程完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)。在本發(fā)明的一范例實(shí)施例中,其中第一執(zhí)行線程用以執(zhí)行智能卡(smartcard)應(yīng)用程序。此方法還包括在第一寫入指令為應(yīng)用程序協(xié)議數(shù)據(jù)單元(Application Protocol Data Unit,APUD)指令時,判定負(fù)責(zé)執(zhí)行第一寫入指令的是第一執(zhí)行線程。在本發(fā)明的一范例實(shí)施例中,其中第二執(zhí)行線程用以執(zhí)行安全數(shù)字Gecure Digital, SD)卡讀寫應(yīng)用程序。在本發(fā)明的一范例實(shí)施例中,其中預(yù)設(shè)寫入單位所包括的實(shí)體頁面數(shù)量小于快閃存儲器芯片中實(shí)體區(qū)塊所包括的實(shí)體頁面數(shù)量。從另一個觀點(diǎn)來看,本發(fā)明提出一種快閃存儲器儲存裝置。其中,至少有第一執(zhí)行線程與第二執(zhí)行線程存在于此快閃存儲器儲存裝置。此快閃存儲器儲存裝置包括快閃存儲器芯片、連接器,以及快閃存儲器控制器。連接器是用以耦接主機(jī),并接收主機(jī)下達(dá)的寫入指令。快閃存儲器控制器耦接至快閃存儲器芯片與連接器,用以定義預(yù)設(shè)寫入單位。其中, 在連接器接收到主機(jī)下達(dá)的第一寫入指令后,快閃存儲器控制器在判斷負(fù)責(zé)執(zhí)行第一寫入指令的是第一執(zhí)行線程時,將快閃存儲器芯片的控制權(quán)分配至第一執(zhí)行線程,并在第一執(zhí)行線程完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。在本發(fā)明的一范例實(shí)施例中,其中若在第一執(zhí)行線程進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,連接器接收到主機(jī)下達(dá)且需由第二執(zhí)行線程負(fù)責(zé)執(zhí)行的第二寫入指令,快閃存儲器控制器在第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)后,將快閃存儲器芯片的控制權(quán)分配至第二執(zhí)行線程,并在第二執(zhí)行線程將第二寫入指令所對應(yīng)的第二寫入數(shù)據(jù)寫入至快閃存儲器芯片后,令第二執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)。在本發(fā)明的一范例實(shí)施例中,其中在令第二執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)后,快閃存儲器控制器在判斷第一執(zhí)行線程尚未完成第一寫入指令所對應(yīng)的第一寫入數(shù)據(jù)的寫入動作時,將快閃存儲器芯片的控制權(quán)分配至第一執(zhí)行線程,并在第一執(zhí)行線程完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)。在本發(fā)明的一范例實(shí)施例中,其中在分配快閃存儲器芯片的控制權(quán)至第一執(zhí)行線程后,若在第一執(zhí)行線程進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,連接器未接收到主機(jī)下達(dá)的其它寫入指令,快閃存儲器控制器在第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)后,判斷第一執(zhí)行線程是否已完成第一寫入指令所對應(yīng)的第一寫入數(shù)據(jù)的寫入動作。若第一執(zhí)行線程尚未完成第一寫入數(shù)據(jù)的寫入動作,快閃存儲器控制器將快閃存儲器芯片的控制權(quán)分配至第一執(zhí)行線程,并在第一執(zhí)行線程完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)。在本發(fā)明的一范例實(shí)施例中,其中第一執(zhí)行線程用以執(zhí)行智能卡應(yīng)用程序,快閃存儲器控制器在第一寫入指令為應(yīng)用程序協(xié)議數(shù)據(jù)單元指令時,判定負(fù)責(zé)執(zhí)行第一寫入指令的是第一執(zhí)行線程。在本發(fā)明的一范例實(shí)施例中,其中第二執(zhí)行線程用以執(zhí)行安全數(shù)字卡讀寫應(yīng)用程序。在本發(fā)明的一范例實(shí)施例中,其中預(yù)設(shè)寫入單位所包括的實(shí)體頁面數(shù)量小于快閃存儲器芯片中實(shí)體區(qū)塊所包括的實(shí)體頁面數(shù)量。從又一觀點(diǎn)來看,本發(fā)明提出一種快閃存儲器控制器,配置于耦接至主機(jī)的快閃存儲器儲存裝置中。此快閃存儲器儲存裝置至少存在第一執(zhí)行線程與第二執(zhí)行線程,并包括快閃存儲器芯片??扉W存儲器控制器包括微處理器單元、快閃存儲器芯片接口單元、主機(jī)接口單元以及資源分配單元??扉W存儲器芯片接口單元耦接至微處理器單元,用以耦接至快閃存儲器芯片。主機(jī)接口單元耦接至微處理器單元,用以耦接至主機(jī)。資源分配單元耦接至微處理器單元,用以定義預(yù)設(shè)寫入單位。其中,主機(jī)接口單元接收主機(jī)下達(dá)的第一寫入指令,資源分配單元在判斷負(fù)責(zé)執(zhí)行第一寫入指令的是第一執(zhí)行線程時,將快閃存儲器芯片的控制權(quán)分配至第一執(zhí)行線程,并在第一執(zhí)行線程完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)?;谏鲜?,對于同時具有智能卡應(yīng)用程序以及安全數(shù)字卡讀寫應(yīng)用程序這兩種執(zhí)行線程的快閃存儲器儲存裝置來說,本發(fā)明使得智能卡應(yīng)用程序?qū)扉W存儲器芯片進(jìn)行的數(shù)據(jù)寫入動作可被安全數(shù)字卡讀寫應(yīng)用程序中斷。據(jù)此,確保安全數(shù)字卡讀寫應(yīng)用程序在執(zhí)行來自主機(jī)的寫入指令時,不會超過安全數(shù)字卡規(guī)范所定義的寫入指令完成時限。為使本發(fā)明的上述特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉實(shí)施例,并結(jié)合附圖詳細(xì)說明如下。


圖IA是根據(jù)本發(fā)明的一范例實(shí)施例所繪示的使用快閃存儲器儲存裝置的主機(jī)系統(tǒng)。圖IB是根據(jù)本發(fā)明范例實(shí)施例所繪示的計算機(jī)、輸入/輸出裝置與快閃存儲器儲存裝置的示意圖。圖IC是根據(jù)本發(fā)明另一范例實(shí)施例所繪示的主機(jī)系統(tǒng)與快閃存儲器儲存裝置的示意圖。圖ID是繪示的圖IA所示的快閃存儲器儲存裝置的概要方塊圖。圖2是根據(jù)本發(fā)明另一范例實(shí)施例所繪示的快閃存儲器控制器的方塊圖。圖3是繪示的圖IA所示的快閃存儲器儲存裝置的運(yùn)作示意圖。
圖4ム、48、4〔是根據(jù)本發(fā)明ー范例實(shí)施例所繪示的合并實(shí)體區(qū)塊的操作的示意 圖。圖5是根據(jù)本發(fā)明的ー范例實(shí)施例所繪示的快閃存儲器的寫入管理方法的流程 圖。圖6是根據(jù)本發(fā)明又ー范例實(shí)施例所繪示的快閃存儲器儲存裝置的概要方塊圖。附圖符號說明1000 主機(jī)系統(tǒng)1100:計算機(jī)1102:微處理器1104:隨機(jī)存取存儲器1106:輸入/輸出裝置1108:系統(tǒng)總線1110:數(shù)據(jù)傳輸接ロ1202:鼠標(biāo)1204 鍵盤1206 顯示器1208 打印機(jī)1212:隨身盤1214 存儲卡1216:固態(tài)硬盤1310 數(shù)位相機(jī)1312 :SD 卡1314:MMC +1316 存儲棒1318:CF +1320 嵌入式儲存裝置100.600 快閃存儲器儲存裝置102 連接器104、104,、604 快閃存儲器控制器1042:主機(jī)接ロ單元1044 微處理器單元1046 資源分配單元1048:快閃存儲器芯片接ロ單元106 快閃存儲器芯片2002 緩沖存儲器2004 錯誤校正單元2006 電源管理單元310 第ー執(zhí)行線程320 第ニ執(zhí)行線程
A(0)、A(1)、AQ)、B(0)、B(1)、B(2)頁面510 590 本發(fā)明的一范例實(shí)施例所述的快閃存儲器的寫入管理方法的各步驟6041:智能卡接口單元607:智能卡芯片
具體實(shí)施例方式圖IA是根據(jù)本發(fā)明的范例實(shí)施例所繪示的使用快閃存儲器儲存裝置的主機(jī)系統(tǒng)的示意圖。主機(jī)系統(tǒng)1000包括計算機(jī)1100與輸入/輸出anput/Output,I/O)裝置1106。 計算機(jī)1100包括微處理器1102、隨機(jī)存取存儲器(Random AccessMemory, RAM) 1104、系統(tǒng)總線1108以及數(shù)據(jù)傳輸接口 1110。輸入/輸出裝置1106包括如圖IB所示的鼠標(biāo)1202、 鍵盤1204、顯示器1206與打印機(jī)1208。必須了解的是,圖IB所示的裝置不限于輸入/輸出裝置1106,輸入/輸出裝置1106可還包括其它裝置。在本發(fā)明范例實(shí)施例中,快閃存儲器儲存裝置100是通過數(shù)據(jù)傳輸接口 1110與主機(jī)系統(tǒng)1000的其它組件耦接。藉由微處理器1102、隨機(jī)存取存儲器1104與輸入/輸出裝置 1106的處理主機(jī)系統(tǒng)1000可將數(shù)據(jù)寫入至快閃存儲器儲存裝置100,或從快閃存儲器儲存裝置100中讀取數(shù)據(jù)。例如,快閃存儲器儲存裝置100可以是如圖IB所示的存儲卡1214、 隨身盤 1212、或固態(tài)硬盤(Solid State Drive,SSD) 1216。—般而言,主機(jī)系統(tǒng)1000為可儲存數(shù)據(jù)的任意系統(tǒng)。雖然在本范例實(shí)施例中,主機(jī)系統(tǒng)1000是以計算機(jī)系統(tǒng)來作說明,然而,在本發(fā)明另一范例實(shí)施例中,主機(jī)系統(tǒng)1000 亦可以是數(shù)字相機(jī)、攝影機(jī)、通訊裝置、音訊播放器或視訊播放器等系統(tǒng)。例如,在主機(jī)系統(tǒng)為數(shù)字相機(jī)1310時,快閃存儲器儲存裝置則為其所使用的安全數(shù)字(Secure Digital, SD) 卡 1312、多媒體存儲(Multimedia Card,MMC)卡 1314、存儲棒(Memory Stick) 1316、CF 卡 1318或嵌入式儲存裝置1320(如圖IC所示)。嵌入式儲存裝置1320包括嵌入式多媒體卡 (Embedded MMC,eMMC)。值得一提的是,嵌入式多媒體卡是直接耦接于主機(jī)系統(tǒng)的基板上。圖ID是繪示的圖IA所示的快閃存儲器儲存裝置100的方塊圖。請參照圖1D,快閃存儲器儲存裝置100包括連接器102、快閃存儲器控制器104與快閃存儲器芯片106。連接器102耦接至快閃存儲器控制器104并且用以耦接至主機(jī)系統(tǒng)1000。在本范例實(shí)施例中,連接器102所支持的傳輸接口種類為安全數(shù)字接口。然而在其它范例實(shí)施例中,連接器102的傳輸接口種類也可以是多媒體儲存卡(Multimedia Card, MMC) 接口、序列先進(jìn)附件(Serial AdvancedTechnology Attachment, SATA)接口、平行先進(jìn)附件(Parallel AdvancedTechnology Attachment, PATA)接口、電氣和電子工程師協(xié)會 (Institute ofElectrical and Electronic Engineers,IEEE) 1394 接口、高速周邊零件連接接□ (Peripheral Component Interconnect Express, PCI Express)接□、通用序列總線(Universal Serial Bus,USB)接口、存儲棒(Memory Stick,MS)接口、小型快閃(Compact Flash, CF)接口,或整合驅(qū)動電子(Integrated DriveElectronics, IDE)接口等任何適用的接口,在此并不加以限制。快閃存儲器芯片106用以儲存如文件配置表(File Allocation Table, FAT),增強(qiáng)型文件系統(tǒng)(New Technology File System, NTFS)等文件系統(tǒng)信息,以及儲存如影音文件、文字文件等一般性數(shù)據(jù)??扉W存儲器控制器104會執(zhí)行以硬件型式或固件型式實(shí)作的多個邏輯門或控制指令,并根據(jù)主機(jī)系統(tǒng)1000的指令在快閃存儲器芯片106中進(jìn)行數(shù)據(jù)的寫入、讀取與擦除等運(yùn)作??扉W存儲器控制器104包括主機(jī)接口單元1042、微處理器單元1044、資源分配單元1046,以及快閃存儲器芯片接口單元1048。主機(jī)接口單元1042用以通過連接器102來耦接至主機(jī)系統(tǒng)1000。在本范例實(shí)施例中,主機(jī)接口單元1042具有SD接口,而在其它范例實(shí)施例中,主機(jī)接口單元1042也可以是符合 MMC 接口、SATA 接口、PATA 接口、IEEE 1394 接口、PCI Express 接口、USB 接口、MS 接口、CF接口、IDE接口或其它接口標(biāo)準(zhǔn)的接口單元??扉W存儲器芯片接口單元1048用以使快閃存儲器控制器104耦接至快閃存儲器芯片106。據(jù)以使快閃存儲器控制器104對快閃存儲器芯片106進(jìn)行相關(guān)運(yùn)作。如圖ID所示,主機(jī)接口單元1042、資源分配單元1046以及快閃存儲器芯片接口單元1048均耦接至微處理器單元1044,而微處理器單元1044是快閃存儲器控制器104的主控單元,用以和主機(jī)接口單元1042、快閃存儲器芯片接口單元1048以及資源分配單元1046 等組件協(xié)同合作,以進(jìn)行快閃存儲器芯片106的各種運(yùn)作。資源分配單元1046用以在快閃存儲器儲存裝置100耦接至主機(jī)系統(tǒng)1000時分配快閃存儲器芯片106的讀寫控制權(quán)。而資源分配單元1046的詳細(xì)運(yùn)作方式將于以下再作詳細(xì)說明。在本范例實(shí)施例中,資源分配單元1046例如是實(shí)時操作系統(tǒng)(Real TimeOperation System,RT0S)。在另一范例實(shí)施例中,資源分配單元1046也能以固件形式實(shí)作于快閃存儲器控制器104。例如,將包括多個控制指令的資源分配單元1046燒錄至一程序存儲器(例如只讀存儲器(Read 0nlyMemory,R0M)),并且將此程序存儲器嵌入在快閃存儲器控制器104。在快閃存儲器儲存裝置100運(yùn)作時,微處理器單元1044將執(zhí)行資源分配單元1046的多個控制指令,據(jù)以完成快閃存儲器芯片106的讀寫控制權(quán)分配機(jī)制。在本發(fā)明的另一范例實(shí)施例中,快閃存儲器儲存裝置100中的快閃存儲器控制器還包括其它功能模塊。圖2是依照本發(fā)明的另一范例實(shí)施例所繪示的快閃存儲器控制器的方塊圖,請參照圖2。在快閃存儲器控制器104’中,除了包括主機(jī)接口單元1042、微處理器單元1044、資源分配單元1046以及快閃存儲器芯片接口單元1048之外,另外還包括緩沖存儲器2002、錯誤校正單元2004,以及電源管理單元2006。詳細(xì)地說,緩沖存儲器2002耦接至微處理器單元1044,用以暫存來自于主機(jī)系統(tǒng) 1000的數(shù)據(jù),或暫存來自于快閃存儲器芯片106的數(shù)據(jù)。錯誤校正單元2004耦接至微處理器單元1044,用以執(zhí)行一錯誤校正程序以確保數(shù)據(jù)的正確性。具體來說,當(dāng)快閃存儲器控制器104’接收到來自主機(jī)系統(tǒng)1000的寫入指令時,錯誤校正單元2004會為對應(yīng)此寫入指令的寫入數(shù)據(jù)產(chǎn)生相應(yīng)的錯誤校正碼(Error Correcting Code, ECC),而此寫入數(shù)據(jù)與相應(yīng)的錯誤校正碼將被一并寫入至快閃存儲器芯片106。而當(dāng)快閃存儲器控制器104’接收到來自主機(jī)系統(tǒng)1000的讀取指令時,則會從快閃存儲器芯片106中讀取對應(yīng)此讀取指令的數(shù)據(jù)及其錯誤校正碼。此時,錯誤校正單元2004 會依據(jù)此錯誤校正碼對所讀取的數(shù)據(jù)執(zhí)行錯誤校正程序。電源管理單元2006耦接至微處理器單元1044,用以控制快閃存儲器儲存裝置100的電源。在本范例實(shí)施例中,至少有第一執(zhí)行線程與第二執(zhí)行線程同時存在于快閃存儲器儲存裝置100 (如圖3所示的第一執(zhí)行線程310與第二執(zhí)行線程320)。亦即,存儲器儲存裝置100是采用多執(zhí)行線程架構(gòu)。第一執(zhí)行線程310與第二執(zhí)行線程320均可通過快閃存儲器芯片接口單元1048來讀寫快閃存儲器芯片106。舉例而言,本范例實(shí)施例的快閃存儲器芯片106至少被劃分為第一分割區(qū)106A與第二分割區(qū)106B,其中第一執(zhí)行線程310負(fù)責(zé)管理第一分割區(qū)106A,第二執(zhí)行線程320則負(fù)責(zé)管理第二分割區(qū)106B,唯有用以管理該分割區(qū)的執(zhí)行線程才能對該分割區(qū)進(jìn)行數(shù)據(jù)的讀寫動作。值得一提的是,第一執(zhí)行線程310與第二執(zhí)行線程320個別具有不同的快閃存儲器管理規(guī)則,因此在接收來自主機(jī)系統(tǒng)1000的寫入指令后,第一執(zhí)行線程310與第二執(zhí)行線程320所采取的邏輯區(qū)塊與實(shí)體區(qū)塊間的轉(zhuǎn)換規(guī)則也可以不同。由于第一執(zhí)行線程310與第二執(zhí)行線程320都必須通過快閃存儲器芯片接口單元 1048來讀寫快閃存儲器芯片106,因此需要資源分配單元1046對快閃存儲器芯片106的控制權(quán)進(jìn)行管理與分配,以確保第一執(zhí)行線程310與第二執(zhí)行線程320均有機(jī)會存取快閃存儲器芯片106。在本范例實(shí)施例中,資源分配單元1046定義有一預(yù)設(shè)寫入單位,此預(yù)設(shè)寫入單位所包括的實(shí)體頁面數(shù)量小于快閃存儲器芯片106中實(shí)體區(qū)塊所包括的實(shí)體頁面數(shù)量。例如,預(yù)設(shè)寫入單位可以是一個實(shí)體頁面。在第一執(zhí)行線程310已取得快閃存儲器芯片106 的控制權(quán)的情況下,資源分配單元1046會在第一執(zhí)行線程310每次完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,決定下一個能取得快閃存儲器芯片106控制權(quán)的是哪個執(zhí)行線程。具體來說,在主機(jī)接口單元1042接收主機(jī)系統(tǒng)1000下達(dá)的第一寫入指令后,微處理器單元1044可根據(jù)第一寫入指令的種類、內(nèi)容或欲寫入數(shù)據(jù)的邏輯地址來判斷負(fù)責(zé)執(zhí)行第一寫入指令的是哪個執(zhí)行線程。當(dāng)判斷負(fù)責(zé)執(zhí)行第一寫入指令的是第一執(zhí)行線程310 時,微處理器單元1044將第一寫入指令傳送至第一執(zhí)行線程310,同時資源分配單元1046 將快閃存儲器芯片106的控制權(quán)分配至第一執(zhí)行線程310。此時,第一執(zhí)行線程310可通過快閃存儲器芯片接口單元1048將數(shù)據(jù)寫入快閃存儲器芯片106的第一分割區(qū)106A。然而無論第一寫入指令所對應(yīng)的第一寫入數(shù)據(jù)是否已被完整地寫入至快閃存儲器芯片106,一旦第一執(zhí)行線程310完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作,資源分配單元1046便會令第一執(zhí)行線程310釋放快閃存儲器芯片106的控制權(quán)。接著,資源分配單元1046決定是否要將能存取快閃存儲器芯片106的權(quán)力轉(zhuǎn)交至第二執(zhí)行線程320,或者是將快閃存儲器芯片106的控制權(quán)再次分配給第一執(zhí)行線程310。倘若在第一執(zhí)行線程310進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,主機(jī)接口單元1042接收到主機(jī)系統(tǒng)1000下達(dá)且需由第二執(zhí)行線程320負(fù)責(zé)執(zhí)行的第二寫入指令,資源分配單元1046會在第一執(zhí)行線程310釋放快閃存儲器芯片106的控制權(quán)后,將快閃存儲器芯片106的控制權(quán)分配至第二執(zhí)行線程320。此時第二執(zhí)行線程320可通過快閃存儲器芯片接口單元1048將數(shù)據(jù)寫入快閃存儲器芯片106的第二分割區(qū)106B。待第二執(zhí)行線程 320將第二寫入指令所對應(yīng)的第二寫入數(shù)據(jù)寫入至快閃存儲器芯片106后,資源分配單元 1046才令第二執(zhí)行線程320釋放快閃存儲器芯片106的控制權(quán)。爾后,若判斷第一執(zhí)行線程310尚未完成第一寫入指令所對應(yīng)的第一寫入數(shù)據(jù)的寫入動作,資源分配單元1046將快閃存儲器芯片106的控制權(quán)再次分配給第一執(zhí)行線程310。同樣地,一旦第一執(zhí)行線程310 完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作,資源分配單元1046便令第一執(zhí)行線程310釋放快閃存儲器芯片106的控制權(quán)。倘若在第一執(zhí)行線程310進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,主機(jī)接口單元1042并未接收到主機(jī)系統(tǒng)1000下達(dá)的其它寫入指令,資源分配單元1046則會在第一執(zhí)行線程310釋放快閃存儲器芯片106的控制權(quán)后,判斷第一執(zhí)行線程310是否已完成第一寫入指令所對應(yīng)的第一寫入數(shù)據(jù)的寫入動作。若否,資源分配單元1046將快閃存儲器芯片 106的控制權(quán)重新分配給第一執(zhí)行線程310。而在第一執(zhí)行線程310完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,資源分配單元1046令第一執(zhí)行線程310釋放快閃存儲器芯片106的控制權(quán)。如上所述,第一執(zhí)行線程310 —次只會寫入符合預(yù)設(shè)寫入單位大小的數(shù)據(jù),隨后便釋放快閃存儲器芯片106的控制權(quán),并由資源分配單元1046判斷接著能存取快閃存儲器芯片106的是哪個執(zhí)行線程。若在第一執(zhí)行線程310進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,快閃存儲器儲存裝置100接獲主機(jī)系統(tǒng)1000下達(dá)的另一寫入指令,且該寫入指令需由第二執(zhí)行線程320負(fù)責(zé)執(zhí)行,由于第二執(zhí)行線程320具有較高的快閃存儲器芯片106使用優(yōu)先權(quán),因此即便第一執(zhí)行線程310尚未完成其所接收的寫入指令的動作(亦即,此時第一執(zhí)行線程310與第二執(zhí)行線程320都需要將數(shù)據(jù)寫入快閃存儲器芯片106),資源分配單元1046仍會將快閃存儲器芯片106的控制權(quán)交付給第二執(zhí)行線程320。也因為第一執(zhí)行線程310的寫入動作可被第二執(zhí)行線程320中斷,因此在第一執(zhí)行線程310負(fù)責(zé)的寫入指令尚未完成之前,需使用至少兩個實(shí)體區(qū)塊來記錄處理中的數(shù)據(jù)。詳細(xì)地說,假設(shè)預(yù)設(shè)寫入單位為一個實(shí)體頁面。在接獲需由第一執(zhí)行線程310負(fù)責(zé)執(zhí)行的第一寫入指令后,若第一寫入指令所欲寫入的實(shí)體區(qū)塊A中第0至2個實(shí)體頁面已儲存有數(shù)據(jù),且第一寫入指令是要更新第2個頁面的內(nèi)容。在第一執(zhí)行線程310取得快閃存儲器芯片106的控制權(quán)后,如圖4A所示,需自快閃存儲器芯片106的備用區(qū)提取一個新的實(shí)體區(qū)塊B,并將位于實(shí)體區(qū)塊A的頁面A (0)中的數(shù)據(jù)寫入實(shí)體區(qū)塊B的頁面B (0), 隨后釋放快閃存儲器芯片106的控制權(quán)。若第一執(zhí)行線程310在將位于實(shí)體區(qū)塊A的頁面A(O)的數(shù)據(jù)寫入實(shí)體區(qū)塊B的頁面B (0)的過程中,快閃存儲器儲存裝置100并未接獲主機(jī)系統(tǒng)1000傳來的其它寫入指令, 由于第一寫入指令的動作尚未完成,因此資源分配單元1046再度將快閃存儲器芯片106的控制權(quán)分配給第一執(zhí)行線程310。接下來如圖4B所示,第一執(zhí)行線程310將位于實(shí)體區(qū)塊 A的頁面A(I)中的數(shù)據(jù)寫入實(shí)體區(qū)塊B的頁面B⑴,隨后釋放快閃存儲器芯片106的控制權(quán)。倘若在第一執(zhí)行線程310將位于實(shí)體區(qū)塊A的頁面A (1)的數(shù)據(jù)寫入實(shí)體區(qū)塊B 的頁面B (1)的過程中,快閃存儲器儲存裝置100接獲需由第二執(zhí)行線程320負(fù)責(zé)執(zhí)行的第二寫入指令,那么在第一執(zhí)行線程310釋放快閃存儲器芯片106的控制權(quán)后,快閃存儲器芯片106的控制權(quán)會被轉(zhuǎn)移至第二執(zhí)行線程320。待第二執(zhí)行線程320完成第二寫入指令,資源分配單元1046才令第二執(zhí)行線程320釋放快閃存儲器芯片106的控制權(quán)。此時由于第一寫入指令尚未完成,因此資源分配單元1046接著將快閃存儲器芯片106的控制權(quán)交付給第一執(zhí)行線程310。如圖4C所示,第一執(zhí)行線程310在將欲更新的新數(shù)據(jù)寫入至實(shí)體區(qū)塊B的頁面BQ)后,第一寫入指令便已完成。由于第一執(zhí)行線程310 一次只做一個頁面的數(shù)據(jù)寫入動作,因此必需等待完成第一寫入指令之后,才能擦除實(shí)體區(qū)塊A中的舊數(shù)據(jù),并將實(shí)體區(qū)塊A邏輯地關(guān)聯(lián)為備用區(qū)。此外,在另一范例實(shí)施例中一旦微處理器單元1044將需由第一執(zhí)行線程310負(fù)責(zé)的工作指令(如寫入、讀出或擦除數(shù)據(jù))交由第一執(zhí)行線程310執(zhí)行,無論該工作指令是否完成,在主機(jī)系統(tǒng)1000詢問時,快閃存儲器控制器104都將響應(yīng)主機(jī)系統(tǒng)1000接收到工作指令的回復(fù)訊息,爾后在第一執(zhí)行線程310完成工作指令時不再另外產(chǎn)生其它回復(fù)訊息。 然而,針對需由第二執(zhí)行線程320負(fù)責(zé)執(zhí)行的工作指令(如寫入、讀出或擦除數(shù)據(jù)),則必須在第二執(zhí)行線程320完全地完成該工作指令后(例如完成寫入指令的數(shù)據(jù)寫入動作),待主機(jī)系統(tǒng)1000發(fā)出詢問時才響應(yīng)主機(jī)系統(tǒng)1000已完成工作的回復(fù)訊息。此外,在又一范例實(shí)施例中,第一或第二執(zhí)行線程可在接收到工作指令后,主動回復(fù)主機(jī)系統(tǒng)1000已接收到一工作指令,且第一或第二執(zhí)行線程亦可在完成工作指令后,主動回復(fù)主機(jī)系統(tǒng)1000該工作已完成。圖5是根據(jù)本發(fā)明的一范例實(shí)施例所繪示快閃存儲器的寫入管理方法的流程圖。請參閱圖5,在步驟510中,快閃存儲器儲存裝置100接收來自主機(jī)系統(tǒng)1000的第一寫入指令。如步驟520所示,當(dāng)判斷負(fù)責(zé)執(zhí)行第一寫入指令的是第一執(zhí)行線程310時,快閃存儲器控制器104中的資源分配單元1046將快閃存儲器芯片106的控制權(quán)分配給第一執(zhí)行線程310。在步驟530中,資源分配單元1046判斷第一執(zhí)行線程310是否已完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作。若是,則在步驟MO中,資源分配單元1046令第一執(zhí)行線程310釋放快閃存儲器芯片106的控制權(quán)。接著在步驟550中,資源分配單元1046判斷在第一執(zhí)行線程310進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,快閃存儲器儲存裝置100是否接收到主機(jī)系統(tǒng)1000下達(dá)且需由第二執(zhí)行線程320負(fù)責(zé)執(zhí)行的第二寫入指令。若在第一執(zhí)行線程310進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,快閃存儲器儲存裝置100并未接收需由第二執(zhí)行線程320負(fù)責(zé)執(zhí)行的第二寫入指令,則本范例實(shí)施例所述的流程將進(jìn)入步驟580。若在第一執(zhí)行線程310進(jìn)行預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,快閃存儲器儲存裝置100有接收到需由第二執(zhí)行線程320負(fù)責(zé)執(zhí)行的第二寫入指令,則在步驟560中,資源分配單元1046將快閃存儲器芯片106的控制權(quán)分配給第二執(zhí)行線程320,并如步驟570 所示,在第二執(zhí)行線程320將第二寫入指令所對應(yīng)的第二寫入數(shù)據(jù)寫入至快閃存儲器芯片 106后,資源分配單元1046令第二執(zhí)行線程320釋放快閃存儲器芯片106的控制權(quán),接著進(jìn)入步驟580。在步驟580中,資源分配單元1046判斷第一執(zhí)行線程310是否已完成第一寫入指令所對應(yīng)的第一寫入數(shù)據(jù)的寫入動作。若是,則完成此快閃存儲器的寫入管理方法的流程。 若否,則如步驟590所示,資源分配單元1046將快閃存儲器芯片106的控制權(quán)分配給第一執(zhí)行線程310。接下來此快閃存儲器的寫入管理方法的流程將回到步驟530,并反復(fù)執(zhí)行步驟530至步驟590直到第一執(zhí)行線程310完成第一寫入指令為止。
圖6是根據(jù)本發(fā)明又一范例實(shí)施例所繪示的快閃存儲器儲存裝置的概要方塊圖。 請參閱圖6,快閃存儲器儲存裝置600與圖ID所示的快閃存儲器儲存裝置100相似,差別在于快閃存儲器儲存裝置600的快閃存儲器控制器604中,除了主機(jī)接口單元1042、微處理器單元1044、資源分配單元1046,以及快閃存儲器芯片接口單元1048之外,還包括智能卡芯片接口單元6041。且快閃存儲器控制器604除了藉由快閃存儲器芯片接口單元1048耦接快閃存儲器芯片106之外,另外通過智能卡芯片接口單元6041耦接至智能卡芯片607。在本范例實(shí)施例中,智能卡芯片接口單元6041符合ISO 7816規(guī)范。快閃存儲器儲存裝置600至少同時存在第一執(zhí)行線程與第二執(zhí)行線程。其中,第一執(zhí)行線程用以執(zhí)行針對特定目的所開發(fā)的應(yīng)用程序,例如智能卡(smartcard)應(yīng)用程序,而第二執(zhí)行線程用以執(zhí)行安全數(shù)字卡(Secure Digital Card)讀寫應(yīng)用程序。一般來說,智能卡應(yīng)用程序的數(shù)據(jù)存取量會小于安全數(shù)字卡讀寫應(yīng)用程序,且智能卡應(yīng)用程序的存取速度也較慢。智能卡應(yīng)用程序用以和智能卡芯片607溝通,同時也能存取快閃存儲器芯片106 中的數(shù)據(jù)。安全數(shù)字卡讀寫應(yīng)用程序則是用以存取快閃存儲器芯片106中的數(shù)據(jù)。其中, 安全數(shù)字卡讀寫應(yīng)用程序具有較高的快閃存儲器芯片106使用優(yōu)先權(quán)。若主機(jī)接口單元1042所接收的第一寫入指令欲更新快閃存儲器芯片106中的數(shù)據(jù),微處理器單元1044在第一寫入指令為應(yīng)用程序協(xié)議數(shù)據(jù)單元(Application Protocol Data Unit,APUD)指令時,判定負(fù)責(zé)執(zhí)行第一寫入指令的是智能卡應(yīng)用程序,并將第一寫入指令傳至智能卡應(yīng)用程序。資源分配單元1046亦會將快閃存儲器芯片106的控制權(quán)分配給智能卡應(yīng)用程序。由于智能卡應(yīng)用程序一次只能執(zhí)行預(yù)設(shè)寫入單位(本范例實(shí)施例假設(shè)預(yù)設(shè)寫入單位為一個實(shí)體頁面)的數(shù)據(jù)寫入動作。在完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,便必須釋放快閃存儲器芯片106的控制權(quán)。倘若在智能卡應(yīng)用程序完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,主機(jī)系統(tǒng)1000下達(dá)了需由安全數(shù)字卡讀寫應(yīng)用程序執(zhí)行的第二寫入指令,接下來便會由安全數(shù)字卡讀寫應(yīng)用程序取得快閃存儲器芯片106的控制權(quán)。由于快閃存儲器儲存裝置600的詳細(xì)運(yùn)作方式與快閃存儲器儲存裝置100相同或相似,故在此不再贅述。在此范例實(shí)施例中,假設(shè)在快閃存儲器芯片106中每個實(shí)體區(qū)塊包括1 個實(shí)體頁面,而每個實(shí)體頁面大小為4K字節(jié)(byte)。那么在寫入指令會伴隨合并(merge)實(shí)體區(qū)塊的情況下,完成該寫入指令所需要的時間大約為150毫秒(ms)。其中,一個頁面的平均讀寫時間約為1. 15ms。目前,在安全數(shù)字卡的規(guī)范中,已規(guī)定每個寫入指令的完成時間都必須小于 250ms。在本范例實(shí)施例中,由于智能卡應(yīng)用程序一次只能執(zhí)行一個實(shí)體頁面的數(shù)據(jù)寫入動作(亦即,實(shí)體區(qū)塊的合并動作需分次完成),即便是在智能卡應(yīng)用程序正在寫數(shù)據(jù)時,快閃存儲器儲存裝置600接收到需由安全數(shù)字卡讀寫應(yīng)用程序負(fù)責(zé)的第二寫入指令且執(zhí)行第二寫入指令需合并實(shí)體區(qū)塊,安全數(shù)字卡讀寫應(yīng)用程序完成第二寫入指令的時間也不會超過安全數(shù)字卡規(guī)范所定義的250ms。詳細(xì)地說,安全數(shù)字卡讀寫應(yīng)用程序完成第二寫入指令的時間是智能卡應(yīng)用程序?qū)懭胍粋€實(shí)體頁面的數(shù)據(jù)的時間與安全數(shù)字卡讀寫應(yīng)用程序?qū)⒌诙懭胫噶钏鶎?yīng)的第二寫入數(shù)據(jù)寫入至快閃存儲器芯片106的時間的總和。其中, 安全數(shù)字卡讀寫應(yīng)用程序?qū)⒌诙懭霐?shù)據(jù)寫入至快閃存儲器芯片106的時間最多不超過 150ms ο
必需特別說明的是,在上述范例實(shí)施例中雖然是以同時存在兩個執(zhí)行線程的快閃存儲器儲存裝置來對本發(fā)明進(jìn)行說明,然而在本發(fā)明的其它范例實(shí)施例中,快閃存儲器儲存裝置也可同時存在兩個以上的執(zhí)行線程,在此并不對執(zhí)行線程的種類與數(shù)量加以限制。綜上所述,本發(fā)明所述的快閃存儲器儲存裝置、其控制器與寫入管理方法適用于同時存在至少兩個執(zhí)行線程的快閃存儲器儲存裝置。本發(fā)明令其中的一特定執(zhí)行線程每完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后便釋放快閃存儲器芯片的控制權(quán),進(jìn)而讓其它執(zhí)行線程有機(jī)會獲得快閃存儲器芯片的控制權(quán),以減少等待特定執(zhí)行線程完成寫入動作的時間。雖然本發(fā)明已以實(shí)施例揭示如上,然其并非用以限定本發(fā)明,本領(lǐng)域的技術(shù)人員, 在不脫離本發(fā)明的精神和范圍的前提下,可作若干的更動與潤飾,故本發(fā)明的保護(hù)范圍是以本發(fā)明的權(quán)利要求為準(zhǔn)。
權(quán)利要求
1.一種快閃存儲器的寫入管理方法,用于至少存在一第一執(zhí)行線程與一第二執(zhí)行線程的一快閃存儲器儲存裝置,該快閃存儲器儲存裝置包括一快閃存儲器芯片,該方法包括定義一預(yù)設(shè)寫入單位;接收一第一寫入指令;當(dāng)判斷負(fù)責(zé)執(zhí)行該第一寫入指令的是該第一執(zhí)行線程時,分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程;以及在該第一執(zhí)行線程完成該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
2.如權(quán)利要求1所述的快閃存儲器的寫入管理方法,其中在分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程的步驟之后,該方法還包括若在該第一執(zhí)行線程進(jìn)行該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,接收到一需由該第二執(zhí)行線程負(fù)責(zé)執(zhí)行的一第二寫入指令,則在該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)后,分配該快閃存儲器芯片的控制權(quán)至該第二執(zhí)行線程;以及在該第二執(zhí)行線程將該第二寫入指令所對應(yīng)的一第二寫入數(shù)據(jù)寫入至該快閃存儲器芯片后,令該第二執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
3.如權(quán)利要求2所述的快閃存儲器的寫入管理方法,其中在令該第二執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)的步驟之后,該方法還包括判斷該第一執(zhí)行線程是否已完成該第一寫入指令所對應(yīng)的一第一寫入數(shù)據(jù)的寫入動作;若否,則分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程;以及在該第一執(zhí)行線程完成該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
4.如權(quán)利要求1所述的快閃存儲器的寫入管理方法,其中在分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程的步驟之后,該方法還包括若在該第一執(zhí)行線程進(jìn)行該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,未接收到其它寫入指令,則在該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)后,判斷該第一執(zhí)行線程是否已完成該第一寫入指令所對應(yīng)的一第一寫入數(shù)據(jù)的寫入動作;若否,則分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程;以及在該第一執(zhí)行線程完成該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
5.如權(quán)利要求1所述的快閃存儲器的寫入管理方法,其中該第一執(zhí)行線程用以執(zhí)行一智能卡應(yīng)用程序,該方法還包括若該第一寫入指令為一應(yīng)用程序協(xié)議數(shù)據(jù)單元指令,則判定負(fù)責(zé)執(zhí)行該第一寫入指令的是該第一執(zhí)行線程。
6.如權(quán)利要求1所述的快閃存儲器的寫入管理方法,其中該第二執(zhí)行線程用以執(zhí)行一安全數(shù)字卡讀寫應(yīng)用程序。
7.如權(quán)利要求1所述的快閃存儲器的寫入管理方法,其中該預(yù)設(shè)寫入單位所包括的實(shí)體頁面數(shù)量小于該快閃存儲器芯片中一實(shí)體區(qū)塊所包括的實(shí)體頁面數(shù)量。
8.一種快閃存儲器儲存裝置,至少有一第一執(zhí)行線程與一第二執(zhí)行線程存在于該快閃存儲器儲存裝置,該快閃存儲器儲存裝置包括一快閃存儲器芯片;一連接器,用以耦接一主機(jī),并接收該主機(jī)下達(dá)的寫入指令;以及一快閃存儲器控制器,耦接至該快閃存儲器芯片與該連接器,用以定義一預(yù)設(shè)寫入單位,其中在該連接器接收到該主機(jī)下達(dá)的一第一寫入指令后,該快閃存儲器控制器在判斷負(fù)責(zé)執(zhí)行該第一寫入指令的是該第一執(zhí)行線程時,分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程,并在該第一執(zhí)行線程完成該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
9.如權(quán)利要求8所述的快閃存儲器儲存裝置,其中若在該第一執(zhí)行線程進(jìn)行該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,該連接器接收到該主機(jī)下達(dá)且需由該第二執(zhí)行線程負(fù)責(zé)執(zhí)行的一第二寫入指令,該快閃存儲器控制器在該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)后,分配該快閃存儲器芯片的控制權(quán)至該第二執(zhí)行線程,并在該第二執(zhí)行線程將該第二寫入指令所對應(yīng)的一第二寫入數(shù)據(jù)寫入至該快閃存儲器芯片后,令該第二執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
10.如權(quán)利要求9所述的快閃存儲器儲存裝置,其中在令該第二執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)后,該快閃存儲器控制器在判斷該第一執(zhí)行線程尚未完成該第一寫入指令所對應(yīng)的一第一寫入數(shù)據(jù)的寫入動作時,分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程,并在該第一執(zhí)行線程完成該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
11.如權(quán)利要求8所述的快閃存儲器儲存裝置,其中在分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程后,若在該第一執(zhí)行線程進(jìn)行該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作的期間,該連接器未接收到該主機(jī)下達(dá)的其它寫入指令,該快閃存儲器控制器在該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)后,判斷該第一執(zhí)行線程是否已完成該第一寫入指令所對應(yīng)的一第一寫入數(shù)據(jù)的寫入動作,若該第一執(zhí)行線程尚未完成該第一寫入數(shù)據(jù)的寫入動作,該快閃存儲器控制器分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程,并在該第一執(zhí)行線程完成該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
12.如權(quán)利要求8所述的快閃存儲器儲存裝置,其中該第一執(zhí)行線程用以執(zhí)行一智能卡應(yīng)用程序,該快閃存儲器控制器在該第一寫入指令為一應(yīng)用程序協(xié)議數(shù)據(jù)單元指令時, 判定負(fù)責(zé)執(zhí)行該第一寫入指令的是該第一執(zhí)行線程。
13.如權(quán)利要求8所述的快閃存儲器儲存裝置,其中該第二執(zhí)行線程用以執(zhí)行一安全數(shù)字卡讀寫應(yīng)用程序。
14.如權(quán)利要求8所述的快閃存儲器儲存裝置,其中該預(yù)設(shè)寫入單位所包括的實(shí)體頁面數(shù)量小于該快閃存儲器芯片中一實(shí)體區(qū)塊所包括的實(shí)體頁面數(shù)量。
15.一種快閃存儲器控制器,配置于耦接至一主機(jī)的一快閃存儲器儲存裝置中,該快閃存儲器儲存裝置至少存在一第一執(zhí)行線程與一第二執(zhí)行線程,并包括一快閃存儲器芯片, 該快閃存儲器控制器包括一微處理器單元;一快閃存儲器芯片接口單元,耦接至該微處理器單元,用以耦接至該快閃存儲器芯片;一主機(jī)接口單元,耦接至該微處理器單元,用以耦接至該主機(jī);以及一資源分配單元,耦接至該微處理器單元,用以定義一預(yù)設(shè)寫入單位, 其中該主機(jī)接口單元接收該主機(jī)下達(dá)的一第一寫入指令,在該微處理器單元判斷負(fù)責(zé)執(zhí)行該第一寫入指令的是該第一執(zhí)行線程時,該資源分配單元分配該快閃存儲器芯片的控制權(quán)至該第一執(zhí)行線程,并在該第一執(zhí)行線程完成該預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令該第一執(zhí)行線程釋放該快閃存儲器芯片的控制權(quán)。
全文摘要
一種快閃存儲器儲存裝置、其控制器與寫入管理方法,用于至少存在第一執(zhí)行線程與第二執(zhí)行線程的快閃存儲器儲存裝置,且此快閃存儲器儲存裝置包括快閃存儲器芯片。此方法包括定義預(yù)設(shè)寫入單位、接收主機(jī)下達(dá)的第一寫入指令。此方法還包括當(dāng)判斷負(fù)責(zé)執(zhí)行第一寫入指令的是第一執(zhí)行線程時,將快閃存儲器芯片的控制權(quán)分配至第一執(zhí)行線程,以及在第一執(zhí)行線程完成預(yù)設(shè)寫入單位的數(shù)據(jù)寫入動作后,令第一執(zhí)行線程釋放快閃存儲器芯片的控制權(quán)。
文檔編號G06F3/06GK102193745SQ20101013003
公開日2011年9月21日 申請日期2010年3月5日 優(yōu)先權(quán)日2010年3月5日
發(fā)明者詹清文 申請人:群聯(lián)電子股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
鹿邑县| 南丰县| 宜丰县| 武邑县| 九寨沟县| 民县| 微山县| 长汀县| 扬州市| 怀仁县| 平安县| 横山县| 太康县| 贵德县| 永新县| 汽车| 永修县| 大安市| 达日县| 彝良县| 崇礼县| 大埔区| 巨鹿县| 久治县| 溧阳市| 兴海县| 阳春市| 惠安县| 四子王旗| 新竹县| 西乌珠穆沁旗| 万安县| 望城县| 图们市| 德钦县| 兴仁县| 互助| 宾川县| 泗水县| 新兴县| 湄潭县|