專(zhuān)利名稱(chēng):NandFlash的數(shù)據(jù)處理方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通訊技術(shù)領(lǐng)域,特別涉及一種NandFlash的數(shù)據(jù)處理方法及裝置。
背景技術(shù):
目前主控管理NandFlash包括讀寫(xiě)操作,其中寫(xiě)操作是指采用軟件控制外部存儲(chǔ)設(shè)備的接口接收數(shù)據(jù),并啟動(dòng)DMA傳輸?shù)紻MABUFF,再由軟件控制主控經(jīng)過(guò)ECC編碼啟動(dòng)DMA將DMABUFF接收到的數(shù)據(jù)包和算法管理的表格數(shù)據(jù)傳輸至NandFlash中,并在NandFlash中進(jìn)行存儲(chǔ)。由于外部存儲(chǔ)設(shè)備內(nèi)所存儲(chǔ)的數(shù)據(jù)中存在可以壓縮的數(shù)據(jù)包,但在存儲(chǔ)至NandFlash的過(guò)程中未經(jīng)過(guò)打包處理,因此使得存儲(chǔ)至NandFlash的數(shù)據(jù)較大,導(dǎo)致NandFlash寫(xiě)入的數(shù)據(jù)量較低,NandFlash的擦除次數(shù)較高,從而影響NandFlash的使用壽命O
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種NandFlash的數(shù)據(jù)處理方法,旨在提高NandFlash寫(xiě)入的數(shù)據(jù)量,減少NandFlash擦除的次數(shù),延長(zhǎng)NandFlash的使用壽命。為了實(shí)現(xiàn)發(fā)明目的,本發(fā)明提供一種NandFlash的數(shù)據(jù)處理方法,該NandFlash的數(shù)據(jù)處理方法包括以下步驟獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù);檢測(cè)所述數(shù)據(jù)中是否存在能被壓縮的數(shù)據(jù)包;若是,則將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中;若否,則將所述數(shù)據(jù)存儲(chǔ)至NandFlash當(dāng)中。優(yōu)選地,所述獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)具體為通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述數(shù)據(jù)傳輸至直接存儲(chǔ)器的緩存中。優(yōu)選地,所述將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中步驟包括將能被壓縮的數(shù)據(jù)包在壓縮表格中添加一項(xiàng)對(duì)應(yīng)的壓縮數(shù)據(jù)項(xiàng),并更新算法表格;通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述壓縮表格、算法表格及直接存儲(chǔ)器的緩存中的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中。優(yōu)選地,所述NandFlash的數(shù)據(jù)處理方法還包括通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式讀取算法表格和壓縮表格,并將NandFlash中所存儲(chǔ)的未被壓縮的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中;根據(jù)所讀取的算法表格將所述壓縮表格中的被壓縮的數(shù)據(jù)包解壓,并將解壓后的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中;通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述直接存儲(chǔ)器的緩存中的數(shù)據(jù)傳輸至外部存儲(chǔ)設(shè)備當(dāng)中。本發(fā)明還提供一種NandFlash的數(shù)據(jù)處理裝置,該NandFlash的數(shù)據(jù)處理裝置包括獲取模塊、檢測(cè)模塊和處理模塊,其中,獲取模塊,用于獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù);檢測(cè)模塊,用于檢測(cè)所述數(shù)據(jù)中是否存在能被壓縮的數(shù)據(jù)包;若是,則由所述處理模塊將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中;若否,則由所述處理模塊將所述數(shù)據(jù)存儲(chǔ)至NandFlash當(dāng)中。優(yōu)選地,所述獲取模塊用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述數(shù)據(jù)傳輸至直接存儲(chǔ)器的緩存中。優(yōu)選地,所述處理模塊包括更新單元,用于將能被壓縮的數(shù)據(jù)包在壓縮表格中添加一項(xiàng)對(duì)應(yīng)的壓縮數(shù)據(jù)項(xiàng),并更新算法表格;存儲(chǔ)單元,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述壓縮表格、算法表格及直接存儲(chǔ)器的緩存中的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中。優(yōu)選地,所述NandFlash的數(shù)據(jù)處理裝置還包括讀取模塊,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式讀取算法表格和壓縮表格,并將NandFlash中所存儲(chǔ)的未被壓縮的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中;解壓模塊,用于根據(jù)所讀取的算法表格將所述壓縮表格中的被壓縮的數(shù)據(jù)包解壓,并將解壓后的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中;傳輸模塊,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述直接存儲(chǔ)器的緩存中的數(shù)據(jù)傳輸至外部存儲(chǔ)設(shè)備當(dāng)中。本發(fā)明通過(guò)檢測(cè)外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)進(jìn)行是否能被壓縮,并將不能被壓縮的數(shù)據(jù)包直接存儲(chǔ)至NandFlash當(dāng)中,將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮后再存儲(chǔ)至NandFlash當(dāng)中。由于壓縮后的數(shù)據(jù)的減小了存儲(chǔ)的空間量,因此提高了 NandFlash寫(xiě)入的數(shù)據(jù)量,從而減少了 NandFlash擦除的次數(shù),進(jìn)而延長(zhǎng)了 NandFlash使用壽命。
圖1為本發(fā)明NandFlash的數(shù)據(jù)處理方法一實(shí)施例的流程示意圖;圖2為本發(fā)明NandFlash的數(shù)據(jù)處理方法一實(shí)施例中對(duì)存在能被壓縮的數(shù)據(jù)包的數(shù)據(jù)處理的流程示意圖;圖3為本發(fā)明NandFlash的數(shù)據(jù)處理方法另一實(shí)施例的流程示意圖;圖4為本發(fā)明NandFlash的數(shù)據(jù)處理裝置一實(shí)施例的結(jié)構(gòu)示意圖;圖5為圖4中處理模塊的結(jié)構(gòu)示意圖。本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說(shuō)明。
具體實(shí)施例方式應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。參照?qǐng)D1,圖1為本發(fā)明NandFlash的數(shù)據(jù)處理方法一實(shí)施例的流程示意圖。本實(shí)施例提供的NandFlash的數(shù)據(jù)處理方法包括以下步驟步驟S10,獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù);本實(shí)施例中,外部存儲(chǔ)設(shè)備為具有儲(chǔ)存空間電子設(shè)備,如U盤(pán)等。具體地,可通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式(DMA)將外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)傳輸至直接存儲(chǔ)器的緩存(DMABUFF)中。步驟S20,檢測(cè)數(shù)據(jù)中是否存在能被壓縮的數(shù)據(jù)包;若是,則執(zhí)行步驟S30,否則執(zhí)行步驟S40 ;步驟S30,將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中;步驟S40,將數(shù)據(jù)存儲(chǔ)至NandFlash當(dāng)中。本實(shí)施例中,外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)包括能被壓縮的數(shù)據(jù)包和不能被壓縮的數(shù)據(jù)包,在通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)傳輸至直接存儲(chǔ)器的緩存中的傳輸過(guò)程中,可設(shè)置一檢測(cè)模塊,檢測(cè)正在傳輸?shù)臄?shù)據(jù)包是否能夠被壓縮。在傳輸完成后,若存在能夠被壓縮的數(shù)據(jù)包,則將數(shù)據(jù)包壓縮,然后將壓縮后的數(shù)據(jù)和不能被壓縮的數(shù)據(jù)一并傳輸至NandFlash中進(jìn)行儲(chǔ)存。若不存在能夠被壓縮的數(shù)據(jù)包,則將獲取的數(shù)據(jù)傳輸至NandFlash中進(jìn)行存儲(chǔ)。本發(fā)明通過(guò)檢測(cè)外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)進(jìn)行是否能被壓縮,并將不能被壓縮的數(shù)據(jù)包直接存儲(chǔ)至NandFlash當(dāng)中,將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮后再存儲(chǔ)至NandFlash當(dāng)中。由于壓縮后的數(shù)據(jù)的減小了存儲(chǔ)的空間量,因此提高了 NandFlash寫(xiě)入的數(shù)據(jù)量,從而減少了 NandFlash擦除的次數(shù),進(jìn)而延長(zhǎng)了 NandFlash使用壽命。參照?qǐng)D2,圖2為本發(fā)明NandFlash的數(shù)據(jù)處理方法一實(shí)施例中對(duì)存在能被壓縮的數(shù)據(jù)包的數(shù)據(jù)處理的流程示意圖?;谏鲜鰧?shí)施例,本實(shí)施例中上述步驟S30包括步驟S31,將能被壓縮的數(shù)據(jù)包在壓縮表格中添加一項(xiàng)對(duì)應(yīng)的壓縮數(shù)據(jù)項(xiàng),并更新算法表格;步驟S32,通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述壓縮表格、算法表格及直接存儲(chǔ)器的緩存中的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中。參照?qǐng)D3,圖3為本發(fā)明NandFlash的數(shù)據(jù)處理方法另一實(shí)施例的流程示意圖?;谏鲜鰧?shí)施例,本實(shí)施例提供的NandFlash的數(shù)據(jù)處理方法還包括步驟S50,通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式讀取算法表格和壓縮表格,并將NandFlash中所存儲(chǔ)的未被壓縮的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中;步驟S60,根據(jù)所讀取的算法表格將所述壓縮表格中的被壓縮的數(shù)據(jù)包解壓,并將解壓后的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中;步驟S70,通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述直接存儲(chǔ)器的緩存中的數(shù)據(jù)傳輸至外部存儲(chǔ)設(shè)備當(dāng)中。當(dāng)執(zhí)行完上述步驟S30或步驟S40后,即完成了 NandFlash對(duì)數(shù)據(jù)的寫(xiě)操作。本實(shí)施例中,將完成對(duì)NandFlash內(nèi)數(shù)據(jù)的讀取操作。具體地,首先通過(guò)啟動(dòng)DMA從NandFlash中讀取算法表格和壓縮表格,然后查找壓縮數(shù)據(jù)項(xiàng)中的壓縮地址,并根據(jù)算法表格中定義的算法將被壓縮的數(shù)據(jù)包解壓,將解壓后的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中。同時(shí)將NandFlash內(nèi)未被壓縮的數(shù)據(jù)通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式傳輸至直接存儲(chǔ)器,并在直接存儲(chǔ)器的緩存中進(jìn)行暫存。最后通過(guò)啟動(dòng)DMA,將直接存儲(chǔ)器的緩存中的數(shù)據(jù)傳輸至外部存儲(chǔ)設(shè)備當(dāng)中,從而完成對(duì)NandFlash內(nèi)數(shù)據(jù)的讀取操作。本發(fā)明還提供一種NandFlash的數(shù)據(jù)處理裝置,用于實(shí)現(xiàn)上述方法。參照?qǐng)D4,圖4為本發(fā)明NandFlash的數(shù)據(jù)處理裝置一實(shí)施例的結(jié)構(gòu)示意圖。本實(shí)施例提供的NandFlash的數(shù)據(jù)處理裝置包括獲取模塊100、檢測(cè)模塊200和處理模塊300,其中,獲取模塊100,用于獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù);本實(shí)施例中,外部存儲(chǔ)設(shè)備為具有儲(chǔ)存空間電子設(shè)備,如U盤(pán)等。具體地,獲取模塊100可通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式(DMA)將外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)傳輸至直接存儲(chǔ)器的緩存(DMABUFF)中。檢測(cè)模塊200,用于檢測(cè)數(shù)據(jù)中是否存在能被壓縮的數(shù)據(jù)包;若是,則由處理模塊300將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中;若否,貝U由處理模塊300將所述數(shù)據(jù)存儲(chǔ)至NandFlash當(dāng)中。本實(shí)施例中,外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)包括能被壓縮的數(shù)據(jù)包和不能被壓縮的數(shù)據(jù)包,在通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)傳輸至直接存儲(chǔ)器的緩存中的傳輸過(guò)程中,可設(shè)置一檢測(cè)模塊200,由該檢測(cè)模塊200檢測(cè)正在傳輸?shù)臄?shù)據(jù)包是否能夠被壓縮。在傳輸完成后,若存在能夠被壓縮的數(shù)據(jù)包,則由處理模塊300將數(shù)據(jù)包壓縮,然后將壓縮后的數(shù)據(jù)和不能被壓縮的數(shù)據(jù)一并傳輸至NandFlash中進(jìn)行儲(chǔ)存。若不存在能夠被壓縮的數(shù)據(jù)包,則由處理模塊300將獲取的數(shù)據(jù)傳輸至NandFlash中進(jìn)行存儲(chǔ)。本發(fā)明通過(guò)檢測(cè)模塊200檢測(cè)外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)進(jìn)行是否能被壓縮,并由處理模塊300將不能被壓縮的數(shù)據(jù)包直接存儲(chǔ)至NandFlash當(dāng)中,將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮后再存儲(chǔ)至NandFlash當(dāng)中。由于壓縮后的數(shù)據(jù)的減小了存儲(chǔ)的空間量,因此提高了 NandFlash寫(xiě)入的數(shù)據(jù)量,從而減少了 NandFlash擦除的次數(shù),進(jìn)而延長(zhǎng)了NandFlash使用壽命。結(jié)合參照?qǐng)D5,圖5為圖4中處理模塊的結(jié)構(gòu)示意圖。本實(shí)施例中,上述處理模塊300包括更新單元301,用于將能被壓縮的數(shù)據(jù)包在壓縮表格中添加一項(xiàng)對(duì)應(yīng)的壓縮數(shù)據(jù)項(xiàng),并更新算法表格;存儲(chǔ)單元302,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述壓縮表格、算法表格及直接存儲(chǔ)器的緩存中的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中?;谏鲜鰧?shí)施例,本實(shí)施例中,上述NandFlash的數(shù)據(jù)處理裝置還包括讀取模塊400,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式讀取算法表格和壓縮表格,并將NandFlash中所存儲(chǔ)的未被壓縮的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中;解壓模塊500,用于根據(jù)所讀取的算法表格將所述壓縮表格中的被壓縮的數(shù)據(jù)包解壓,并將解壓后的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中;傳輸模塊600,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述直接存儲(chǔ)器的緩存中的數(shù)據(jù)傳輸至外部存儲(chǔ)設(shè)備當(dāng)中。當(dāng)上述處理模塊300執(zhí)行完將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中或?qū)⑺鰯?shù)據(jù)存儲(chǔ)至NandFlash當(dāng)中后,即完成了 NandFlash對(duì)數(shù)據(jù)的寫(xiě)操作。本實(shí)施例中,將完成對(duì)NandFlash內(nèi)數(shù)據(jù)的讀取操作。具體地,首先由讀取模塊400通過(guò)啟動(dòng)DMA從NandFlash中讀取算法表格和壓縮表格,然后由解壓模塊500查找壓縮數(shù)據(jù)項(xiàng)中的壓縮地址,并根據(jù)算法表格中定義的算法將被壓縮的數(shù)據(jù)包解壓,將解壓后的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中。同時(shí)讀取模塊40還將NandFlash內(nèi)未被壓縮的數(shù)據(jù)通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式傳輸至直接存儲(chǔ)器,并在直接存儲(chǔ)器的緩存中進(jìn)行暫存。最后由傳輸模塊600通過(guò)啟動(dòng)DMA,將直接存儲(chǔ)器的緩存中的數(shù)據(jù)傳輸至外部存儲(chǔ)設(shè)備當(dāng)中,從而完成對(duì)NandFlash內(nèi)數(shù)據(jù)的讀取操作。 以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專(zhuān)利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專(zhuān)利保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種NandFlash的數(shù)據(jù)處理方法,其特征在于,包括以下步驟: 獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù); 檢測(cè)所述數(shù)據(jù)中是否存在能被壓縮的數(shù)據(jù)包; 若是,則將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至 NandFlash 當(dāng)中; 若否,則將所述數(shù)據(jù)存儲(chǔ)至NandFlash當(dāng)中。
2.如權(quán)利要求1所述的NandFlash的數(shù)據(jù)處理方法,其特征在于,所述獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù)具體為:通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述數(shù)據(jù)傳輸至直接存儲(chǔ)器的緩存中。
3.如權(quán)利要求2所述的NandFlash的數(shù)據(jù)處理方法,其特征在于,所述將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中步驟包括: 將能被壓縮的數(shù)據(jù)包在壓縮表格中添加一項(xiàng)對(duì)應(yīng)的壓縮數(shù)據(jù)項(xiàng),并更新算法表格;通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述壓縮表格、算法表格及直接存儲(chǔ)器的緩存中的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中。
4.如權(quán)利要求3所述NandFlash的數(shù)據(jù)處理方法,其特征在于,所述NandFlash的數(shù)據(jù)處理方法還包括: 通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式讀取算法表格和壓縮表格,并將NandFlash中所存儲(chǔ)的未被壓縮的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中; 根據(jù)所讀取的算法表格將所述壓縮表格中的被壓縮的數(shù)據(jù)包解壓,并將解壓后的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中; 通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述直接存儲(chǔ)器的緩存中的數(shù)據(jù)傳輸至外部存儲(chǔ)設(shè)備當(dāng)中。
5.一種NandFlash的數(shù)據(jù)處理裝置,其特征在于,包括獲取模塊、檢測(cè)模塊和處理模塊,其中, 獲取模塊,用于獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù); 檢測(cè)模塊,用于檢測(cè)所述數(shù)據(jù)中是否存在能被壓縮的數(shù)據(jù)包; 若是,則由所述處理模塊將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中; 若否,則由所述處理模塊將所述數(shù)據(jù)存儲(chǔ)至NandFlash當(dāng)中。
6.如權(quán)利要求5所述的NandFlash的數(shù)據(jù)處理裝置,其特征在于,所述獲取模塊用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述數(shù)據(jù)傳輸至直接存儲(chǔ)器的緩存中。
7.如權(quán)利要求6所述的NandFlash的數(shù)據(jù)處理裝置,其特征在于,所述處理模塊包括: 更新單元,用于將能被壓縮的數(shù)據(jù)包在壓縮表格中添加一項(xiàng)對(duì)應(yīng)的壓縮數(shù)據(jù)項(xiàng),并更新算法表格; 存儲(chǔ)單元,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述壓縮表格、算法表格及直接存儲(chǔ)器的緩存中的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中。
8.如權(quán)利要求7所述NandFlash的數(shù)據(jù)處理裝置,其特征在于,所述NandFlash的數(shù)據(jù)處理裝置還包括: 讀取模塊,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式讀取算法表格和壓縮表格,并將NandFlash中所存儲(chǔ)的未被壓縮的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中; 解壓模塊,用于根據(jù)所讀取的算法表格將所述壓縮表格中的被壓縮的數(shù)據(jù)包解壓,并將解壓后的數(shù)據(jù)存儲(chǔ)至直接存儲(chǔ)器的緩存中; 傳輸模塊,用于通過(guò)直接內(nèi)存訪(fǎng)問(wèn)的方式將所述直接存儲(chǔ)器的緩存中的數(shù)據(jù)傳輸至外部存儲(chǔ)設(shè)備當(dāng)中。
全文摘要
本發(fā)明公開(kāi)了一種NandFlash的數(shù)據(jù)處理方法及裝置,所述NandFlash的數(shù)據(jù)處理方法包括以下步驟獲取外部存儲(chǔ)設(shè)備中所存儲(chǔ)的數(shù)據(jù);檢測(cè)所述數(shù)據(jù)中是否存在能被壓縮的數(shù)據(jù)包;若是,則將能被壓縮的數(shù)據(jù)包進(jìn)行壓縮,并將壓縮后的數(shù)據(jù)和不能壓縮的數(shù)據(jù)均存儲(chǔ)至NandFlash當(dāng)中;若否,則將所述數(shù)據(jù)存儲(chǔ)至NandFlash當(dāng)中。本發(fā)明提高了NandFlash寫(xiě)入的數(shù)據(jù)量,從而減少了NandFlash擦除的次數(shù),進(jìn)而延長(zhǎng)了NandFlash使用壽命。
文檔編號(hào)G06F3/06GK103076995SQ201210592160
公開(kāi)日2013年5月1日 申請(qǐng)日期2012年12月31日 優(yōu)先權(quán)日2012年12月31日
發(fā)明者李發(fā)生 申請(qǐng)人:深圳市硅格半導(dǎo)體有限公司