專利名稱:一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種Nandflash存儲(chǔ)系統(tǒng),尤其涉及一種采用三級(jí)地址查找表的 Nandflash存儲(chǔ)系統(tǒng)。
背景技術(shù):
Nandflash技術(shù)在最近幾年里得到了突飛猛進(jìn)的發(fā)展,由1位/單元的SLC(Single Level Cell,單層式存儲(chǔ))技術(shù)發(fā)展到2位/單元甚至3位/單元的MLC(Multi Level Cell, 多層式存儲(chǔ))技術(shù),同時(shí)Nandflash的生產(chǎn)工藝也不斷進(jìn)步。隨著技術(shù)的發(fā)展和應(yīng)用的需求,Nandflash的容量不斷增大,單位容量的成本也大幅降低,應(yīng)用Nandflash的領(lǐng)域也越來越多。隨著Nandflash存儲(chǔ)系統(tǒng)容量的增大,存儲(chǔ)系統(tǒng)里存放邏輯地址到物理地址映射關(guān)系的地址映射表也隨之增大。當(dāng)前通常采用的方法是將地址映射表存放在Nandflash 里。但是將地址映射表存放在Nandflash中,會(huì)降低Nandflash存儲(chǔ)系統(tǒng)地址映射的效率, 進(jìn)而降低存儲(chǔ)系統(tǒng)的讀寫速度,尤其是隨即讀寫的速度?;谏鲜鰡栴},如何通過提高Nandflash存儲(chǔ)器地址映射的效率來提高多通道 Nandflash存儲(chǔ)系統(tǒng)的讀寫性能成為本發(fā)明要解決的技術(shù)問題。
發(fā)明內(nèi)容
本發(fā)明目的提供一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),采用三級(jí)地址查找表的方式實(shí)現(xiàn)地址映射功能,提高地址映射效率,從而提高Nandflash存儲(chǔ)系統(tǒng)的性能。一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),包含微控制器、系統(tǒng)接口控制器、系統(tǒng)存儲(chǔ)器訪問仲裁邏輯單元、系統(tǒng)存儲(chǔ)器、非易失性存儲(chǔ)器、Nandflash控制器以及 Nandflash 存儲(chǔ)器。微控制器,存儲(chǔ)系統(tǒng)的主控制單元,采用嵌入式處理器,其上運(yùn)行固件,用于實(shí)現(xiàn)整個(gè)系統(tǒng)的控制;系統(tǒng)接口控制器,用于以某種協(xié)議(例如IDE、USB、SATA和PCIE等)和主控端進(jìn)行數(shù)據(jù)傳輸;系統(tǒng)存儲(chǔ)器訪問仲裁邏輯單元,用于仲裁微控制器、系統(tǒng)接口控制器和Nandflash 控制器對(duì)系統(tǒng)存儲(chǔ)器的訪問請(qǐng)求;系統(tǒng)存儲(chǔ)器,用于暫存系統(tǒng)端和Nandflash控制器間傳輸?shù)臄?shù)據(jù),也用于存放當(dāng)前數(shù)據(jù)讀寫所使用的地址映射表;非易失性存儲(chǔ)器,用于在系統(tǒng)斷電時(shí)存放地址映射表查找表在Nandflash存儲(chǔ)器中的存放地址;Nandflash控制器,用于控制和Nandflash陣列之間的數(shù)據(jù)傳輸;Nandflash存儲(chǔ)器,用于存儲(chǔ)用戶數(shù)據(jù)、地址映射表等;
微控制器采用嵌入式處理器,其上運(yùn)行固件。固件主要有兩部分功能一是將主控端的數(shù)據(jù)傳輸協(xié)議轉(zhuǎn)成對(duì)Nandflash存儲(chǔ)系統(tǒng)的操作;二是實(shí)現(xiàn)Nandflash系統(tǒng)的閃存?zhèn)鬏攲?FTL)控制,F(xiàn)TL控制包括地址映射、垃圾塊回收、損耗均衡、壞塊管理等。系統(tǒng)第一次寫某個(gè)邏輯地址時(shí),構(gòu)建地址映射表,并存放于系統(tǒng)存儲(chǔ)器中。當(dāng)系統(tǒng)存儲(chǔ)器用于存放地址映射表的空間用完時(shí),地址映射表寫入Nandflash存儲(chǔ)器,同時(shí)構(gòu)建存放于Nandflash存儲(chǔ)器的地址映射表查找表。地址映射表查找表在系統(tǒng)工作期間始終存放于系統(tǒng)存儲(chǔ)器中,直到系統(tǒng)停止工作。系統(tǒng)停止工作時(shí),系統(tǒng)將地址映射表查找表寫入Nandflash存儲(chǔ)器中,將地址映射表查找表在Nandflash中的存放地址寫入非易失性存儲(chǔ)器。系統(tǒng)讀、寫操作中,首先查看所需的地址映射表是否在系統(tǒng)存儲(chǔ)器中,若在,從系統(tǒng)存儲(chǔ)器中直接讀取地址映射表進(jìn)行邏輯地址到物理地址的地址映射;若不在,從 Nandflash存儲(chǔ)器中讀取一頁(yè)地址映射表,并將其存放于系統(tǒng)存儲(chǔ)器中,再?gòu)南到y(tǒng)存儲(chǔ)器中讀取地址映射表進(jìn)行邏輯地址到物理地址的地址映射。本發(fā)明Nandflash存儲(chǔ)系統(tǒng)進(jìn)行通訊的主控端為SATA (Serial Advanced Technology Attachment,串行高級(jí)技術(shù)接口)、USB、PCIE(Pedpherd Component Interconnect express,PCI 插槽)或PATA(Parallel advanced technology attachment, PATA 接口)。本發(fā)明提供的系統(tǒng)采用三級(jí)地址查找表的方式,第一級(jí)地址查找表存放于非易失性存儲(chǔ)器中,存放地址映射表查找表的起始地址;第二級(jí)地址查找表存放于系統(tǒng)存儲(chǔ)器或Nandflash存儲(chǔ)器中,存放地址映射表查找表;第三級(jí)地址查找表存放于系統(tǒng)存儲(chǔ)器或 Nandflash存儲(chǔ)器中,為邏輯地址到物理地址的地址映射表。本發(fā)明中由于系統(tǒng)存儲(chǔ)器中始終存放部分地址查找表,可減少系統(tǒng)從Nandflash 存儲(chǔ)器中讀取地址查找表的次數(shù),有效提高系統(tǒng)地址映射的效率,從而提高Nandflash存儲(chǔ)系統(tǒng)的讀寫性能。
圖1本發(fā)明提供的采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng)結(jié)構(gòu)圖具體實(shí)施方案以下結(jié)合附圖對(duì)本發(fā)明提出的內(nèi)容進(jìn)行詳細(xì)的描述。圖1為采用三級(jí)地址查找表的Nandflash存儲(chǔ)器系統(tǒng)的結(jié)構(gòu)框圖,圖中標(biāo)示了主控端與整個(gè)系統(tǒng)間的數(shù)據(jù)流向。當(dāng)系統(tǒng)開始工作時(shí),首先從非易失性存儲(chǔ)器中讀取地址映射表查找表在 Nandflash中的存放地址,然后根據(jù)此地址,將地址映射表查找表從Nandflash存儲(chǔ)器中讀入系統(tǒng)存儲(chǔ)器。當(dāng)系統(tǒng)接收到讀Nandflash的請(qǐng)求時(shí),首先查看所需的地址映射表是否在系統(tǒng)存儲(chǔ)器中,若在,從系統(tǒng)存儲(chǔ)器中直接讀取地址映射表進(jìn)行邏輯地址到物理地址的地址映射; 若不在,從Nandflash存儲(chǔ)器中讀取一頁(yè)地址映射表,并將其存放于系統(tǒng)存儲(chǔ)器中,再?gòu)南到y(tǒng)存儲(chǔ)器中讀取地址映射表進(jìn)行邏輯地址到物理地址的地址映射。
當(dāng)系統(tǒng)接收到寫Nandflash的請(qǐng)求時(shí),首先查看所需的地址映射表是否在系統(tǒng)存儲(chǔ)器中,若在,從系統(tǒng)存儲(chǔ)器中直接讀取地址映射表進(jìn)行邏輯地址到物理地址的地址映射; 若不在,從Nandflash存儲(chǔ)器中讀取一頁(yè)地址映射表,并將其存放于系統(tǒng)存儲(chǔ)器中,再?gòu)南到y(tǒng)存儲(chǔ)器中讀取地址映射表進(jìn)行邏輯地址到物理地址的地址映射。當(dāng)寫操作執(zhí)行完成后, 系統(tǒng)將更新系統(tǒng)存儲(chǔ)器中地址映射表。在執(zhí)行讀、寫Nandflash的操作時(shí),若系統(tǒng)存儲(chǔ)器用于存放地址映射表的空間中已用光,系統(tǒng)將系統(tǒng)存儲(chǔ)器中被改寫的地址映射表寫入Nandflash存儲(chǔ)器,同時(shí)更新系統(tǒng)存儲(chǔ)器中的地址映射表查找表。假設(shè)本發(fā)明所述的Nandflash存儲(chǔ)系統(tǒng)具備的特征為(1)支持的邏輯空間為4G 字節(jié);(2)系統(tǒng)采用的Nandflash的頁(yè)大小為4K字節(jié);(3)系統(tǒng)采用的Nandflash每塊含有 128頁(yè),共有8K塊;(4)系統(tǒng)地址映射的單位是1頁(yè),即4K字節(jié)。系統(tǒng)每個(gè)地址映射項(xiàng)占用4個(gè)字節(jié),因此每頁(yè)共有IK項(xiàng)地址映射項(xiàng),對(duì)應(yīng)4M字節(jié)連續(xù)的邏輯地址空間,則地址映射表的大小為IK個(gè)頁(yè),共計(jì)4M字節(jié)。系統(tǒng)地址映射表查找表每項(xiàng)為4個(gè)字節(jié),因此每頁(yè)共有IK項(xiàng),對(duì)應(yīng)4G字節(jié)連續(xù)的邏輯地址空間,則地址映射表查找表的大小為1頁(yè)。地址映射表查找表在Nandflash中的存放地址為4字節(jié),存放在非易失性存儲(chǔ)器中。Nandflash存儲(chǔ)空間功能劃分如下表1中所示
權(quán)利要求
1.一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),其特征在于所述系統(tǒng)包含微控制器、系統(tǒng)接口控制器、系統(tǒng)存儲(chǔ)器訪問仲裁邏輯單元、系統(tǒng)存儲(chǔ)器、非易失性存儲(chǔ)器、 Nandflash控制器以及Nandflash存儲(chǔ)器。
2.如權(quán)利要求1所述的一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),其特征在于所述非易失性存儲(chǔ)器存儲(chǔ)第一級(jí)地址查找表,為地址映射表查找表的起始地址。
3.如權(quán)利要求1所述的一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),其特征在于所述系統(tǒng)存儲(chǔ)器存放地址映射表,存放地址映射表的空間用完時(shí),系統(tǒng)構(gòu)建第二級(jí)地址映射表查找表并存放于Nandflash存儲(chǔ)器內(nèi)。
4.如權(quán)利要求1所述的一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),其特征在于所述第二級(jí)地址映射表查找表在系統(tǒng)工作期間存放于系統(tǒng)存儲(chǔ)器內(nèi)。
5.如權(quán)利要求1所述的一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),其特征在于當(dāng)系統(tǒng)停止工作時(shí),第二級(jí)地址映射表查找表寫入Nandflash存儲(chǔ)器,其存放地址寫入非易失性存儲(chǔ)器內(nèi)。
6.如權(quán)利要求1所述的一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),其特征在于系統(tǒng)讀/寫操作時(shí),當(dāng)所需的地址映射表在系統(tǒng)存儲(chǔ)器中,從系統(tǒng)存儲(chǔ)器中讀取第三級(jí)地址查找表進(jìn)行邏輯地址到物理地址的地址映射;當(dāng)所需的地址映射表不再系統(tǒng)存儲(chǔ)器中時(shí),從Nandflash存儲(chǔ)器中讀取一頁(yè)地址映射表并存放于系統(tǒng)存儲(chǔ)器中,從系統(tǒng)存儲(chǔ)器中讀取第三級(jí)地址查找表進(jìn)行邏輯地址到物理地址的地址映射。
7.如權(quán)利要求1所述的一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),其特征在于與Nandflash存儲(chǔ)系統(tǒng)進(jìn)行通訊的主控端為SATA、USB、PCIE或PATA。
全文摘要
本發(fā)明提供一種采用三級(jí)地址查找表的Nandflash存儲(chǔ)系統(tǒng),由微控制器、系統(tǒng)接口控制器、系統(tǒng)存儲(chǔ)器訪問仲裁邏輯單元、系統(tǒng)存儲(chǔ)器、非易失性存儲(chǔ)器、Nandflash控制器以及Nandflash存儲(chǔ)器構(gòu)成。系統(tǒng)采用三級(jí)地址查找表的方式實(shí)現(xiàn)地址映射功能,由于系統(tǒng)存儲(chǔ)器中始終存放部分地址查找表,可減少系統(tǒng)從Nandflash存儲(chǔ)器中讀取地址查找表的次數(shù),提高了地址映射效率,從而能夠有效提高Nandflash存儲(chǔ)系統(tǒng)的性能。
文檔編號(hào)G06F12/02GK102591782SQ201110009218
公開日2012年7月18日 申請(qǐng)日期2011年1月17日 優(yōu)先權(quán)日2011年1月17日
發(fā)明者遲志剛 申請(qǐng)人:上海華虹集成電路有限責(zé)任公司