專(zhuān)利名稱(chēng):具有本地執(zhí)行功能和存儲(chǔ)功能的大容量存儲(chǔ)設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于具有本地執(zhí)行功能和存儲(chǔ)功能的移動(dòng)電話(huà)的大 容量存儲(chǔ)設(shè)備,尤其涉及一種用于具有本地執(zhí)行功能和存儲(chǔ)功能的移動(dòng) 電話(huà)的大容量存儲(chǔ)設(shè)備,其中NAND閃存被劃分為用于執(zhí)行程序代碼的 本地執(zhí)行(execute-in-place, XIP)區(qū)域和用于存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)區(qū) 域,并實(shí)現(xiàn)了用于直接仲裁和控制本地執(zhí)行功能和存儲(chǔ)控制功能的控制 器,從而能夠在一個(gè)NAND閃存中實(shí)現(xiàn)NOR閃存和NAND閃存中每一 種功能。
背景技術(shù):
通常,閃存是一種非易失性存儲(chǔ)器,例如ROM (Read only memory),
其中在沒(méi)有供電的情況下也能保存記錄一次的內(nèi)容并提供寫(xiě)入功能。閃 存分為NOR閃存和NAND閃存,其中NOR閃存具有在位線(xiàn)和地線(xiàn)之間 并行布置的基本單元,而NAND閃存具有串行布置的基本單元。
NOR閃存通過(guò)與基本單元順序無(wú)關(guān)地讀寫(xiě)任意地址的隨機(jī)存取方 式在bite單元中訪(fǎng)問(wèn)。但是,由于每個(gè)基本單元需要接觸電極,因此與 NAND閃存相比具有基本單元區(qū)域很大的缺陷。
在NAND閃存中,選擇相應(yīng)的塊,然后,讀取相互串聯(lián)連接的每一 個(gè)基本單元。因此,在塊單元中可以訪(fǎng)問(wèn)NAND閃存。
這里,在NAND閃存中,"塊"表示通過(guò)一次刪除操作能夠刪除的 單元,"頁(yè)"表示能夠在讀/寫(xiě)操作過(guò)程中能夠讀或?qū)懙臄?shù)據(jù)大小。
4同NOR閃存相比,NAND閃存具有快速、低價(jià)和大容量的優(yōu)點(diǎn),由 此可以作為大容量存儲(chǔ)設(shè)備廣泛應(yīng)用。但是,其不可能在bite單元中訪(fǎng) 問(wèn),并且無(wú)法提供能夠直接執(zhí)行所記錄數(shù)據(jù)而不用將其移動(dòng)到主存儲(chǔ)器 的本地執(zhí)行功能。
因此,NAND閃存用作輔助數(shù)據(jù)存儲(chǔ)設(shè)備,而將用于系統(tǒng)引導(dǎo)的引 導(dǎo)代碼存儲(chǔ)在具有本地執(zhí)行功能的NOR閃存中。
圖1是表示用于移動(dòng)電話(huà)的常規(guī)大容量存儲(chǔ)設(shè)備的框圖。
在圖1中所示,如上所述,NAND閃存200用作輔助數(shù)據(jù)存儲(chǔ)設(shè)備, 而將在CPU100 (Central Processing Unit)中用于系統(tǒng)引導(dǎo)的引導(dǎo)代碼和 用于控制作為存儲(chǔ)設(shè)備的NAND閃存的軟件存儲(chǔ)在NOR閃存中。
DRAM400是用于該程序和系統(tǒng)操作中的主存儲(chǔ)器。這里,將用于 控制NAND閃存的程序移到DRAM400中執(zhí)行。
但是,傳統(tǒng)大容量存儲(chǔ)設(shè)備存在的缺陷為為了存儲(chǔ)程序而需要價(jià) 格高、容量低的一個(gè)單獨(dú)的NOR閃存。
為了解決該問(wèn)題,申請(qǐng)?zhí)枮?0 — 2001 — 54988的韓國(guó)專(zhuān)利公開(kāi)了將 例如引導(dǎo)代碼等程序代碼存入NAND閃存中,然后程序執(zhí)行過(guò)程中將相 應(yīng)程序代碼復(fù)制到主存儲(chǔ)器中并在bite單元中讀出,由此執(zhí)行該程序。
但是,在上述技術(shù)中,由于在系統(tǒng)引導(dǎo)過(guò)程中為了執(zhí)行該引導(dǎo)代碼 需要將引導(dǎo)代碼移到主存儲(chǔ)器中,因此存在執(zhí)行時(shí)間延遲的問(wèn)題。同時(shí), 由于引導(dǎo)代碼被移到主存儲(chǔ)器中,減少了主存儲(chǔ)器的可使用存儲(chǔ)空間。
為了解決該問(wèn)題,韓國(guó)專(zhuān)利號(hào)10 — 493884公開(kāi)了具有預(yù)定存儲(chǔ)容量 的串行閃存控制器設(shè)備,該設(shè)備可以訪(fǎng)問(wèn)到串行閃存以讀取屬于必要數(shù) 據(jù)的整頁(yè),以便將所需數(shù)據(jù)傳輸?shù)街骺刂破骰蛘邎?zhí)行該所需數(shù)據(jù)以支持 在串行閃存中的本地執(zhí)行功能。
在該韓國(guó)專(zhuān)利中,由于NAND閃存能夠用作NOR閃存,因此在降 低成本和提高執(zhí)行速度方面具有很大優(yōu)點(diǎn)。但是,仍然存在需要分別制造用于存儲(chǔ)程序代碼的存儲(chǔ)器和用于存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)器的問(wèn)題。
因此,急需一種能夠在一個(gè)存儲(chǔ)器中存儲(chǔ)程序代碼和大容量數(shù)據(jù)的 大容量存儲(chǔ)設(shè)備。
發(fā)明內(nèi)容
技術(shù)問(wèn)題
因此本發(fā)明用以解決現(xiàn)有技術(shù)中存在的上述問(wèn)題,本發(fā)明的目的在 于提供一種用于具有本地執(zhí)行功能和存儲(chǔ)功能的移動(dòng)電話(huà)的大容量存儲(chǔ)
設(shè)備,其中將NAND閃存劃分成用于執(zhí)行程序代碼的本地執(zhí)行區(qū)域和用 于存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)區(qū)域,并實(shí)現(xiàn)了用于直接仲裁和控制本地執(zhí)行 功能和存儲(chǔ)控制功能的控制器,由此能夠在一個(gè)NAND閃存中實(shí)現(xiàn)NOR 閃存和NAND閃存的這兩種功能。 技術(shù)方案
為了實(shí)現(xiàn)該目的,本發(fā)明提供一種具有本地執(zhí)行功能和存儲(chǔ)功能的 大容量存儲(chǔ)設(shè)備,其包括
NAND閃存,其劃分為存儲(chǔ)程序代碼的本地執(zhí)行(execute-in-place, XIP)區(qū)域和存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)區(qū)域;和
控制器,其用于控制本地執(zhí)行區(qū)域,使得在來(lái)自主機(jī)的隨機(jī)存取請(qǐng) 求下主機(jī)可以通過(guò)NOR接口端口訪(fǎng)問(wèn)本地執(zhí)行區(qū)域,并執(zhí)行存儲(chǔ)接口功 能,使得在來(lái)自主機(jī)的塊單元存取請(qǐng)求下主機(jī)可以通過(guò)存儲(chǔ)接口訪(fǎng)問(wèn)在 塊單元中的存儲(chǔ)區(qū)域。
優(yōu)選地,該控制器包括
本地執(zhí)行存儲(chǔ)控制器,其通過(guò)NOR接口連接到主驅(qū)動(dòng)器,用于控制 本地執(zhí)行區(qū)域,使得在來(lái)自主機(jī)的隨機(jī)存取請(qǐng)求下使主機(jī)能夠訪(fǎng)問(wèn)本地 執(zhí)行區(qū)域;
高速緩沖存儲(chǔ)器,其用于暫時(shí)存儲(chǔ)從主機(jī)和本地執(zhí)行區(qū)域接收的數(shù)據(jù);
存儲(chǔ)控制器,其通過(guò)存儲(chǔ)接口連接到主機(jī)執(zhí)行存儲(chǔ)接口功能,使得 在來(lái)自主機(jī)的塊單元隨機(jī)存取請(qǐng)求下主機(jī)可以訪(fǎng)問(wèn)塊單元中的存儲(chǔ)區(qū) 域;
磁盤(pán)緩沖器,其用于暫時(shí)存儲(chǔ)從主機(jī)和存儲(chǔ)區(qū)域接收的數(shù)據(jù);
系統(tǒng)控制器,其用于根據(jù)從主機(jī)請(qǐng)求的數(shù)據(jù)存取方式選擇性地驅(qū)動(dòng) 本地執(zhí)行存儲(chǔ)控制器和存儲(chǔ)控制器,并控制整個(gè)電路操作;以及
NAND控制器,其插在系統(tǒng)控制器和NAND閃存之間,根據(jù)NAND 接口方式控制NAND閃存。
優(yōu)選地,該本地執(zhí)行存儲(chǔ)器控制器包括
NOR主驅(qū)動(dòng)器,其用于支持在NOR閃存接口的請(qǐng)求下的任何操作, 為了實(shí)現(xiàn)本地執(zhí)行更新存儲(chǔ)管理器列表;和
本地執(zhí)行管理器,其用于將主機(jī)請(qǐng)求的存取地址轉(zhuǎn)換為物理地址, 并在壞塊上執(zhí)行存儲(chǔ)管理操作;
該存儲(chǔ)控制器包括
存儲(chǔ)主驅(qū)動(dòng)器,其用于管理與存儲(chǔ)相關(guān)的協(xié)議并將與存儲(chǔ)相關(guān)的信 息轉(zhuǎn)換成適于NAND閃存的任何數(shù)據(jù)形式,以及
存儲(chǔ)管理器,其用于將主機(jī)請(qǐng)求的存取地址轉(zhuǎn)換成邏輯單元號(hào) (Logical Unit Number, LUN),并在壞塊上執(zhí)行存儲(chǔ)管理操作;
系統(tǒng)控制器,其用于將從本地執(zhí)行存儲(chǔ)控制器接收的物理地址以及 從存儲(chǔ)控制器接收的邏輯單元號(hào)轉(zhuǎn)換成要發(fā)送到NAND控制器的塊頁(yè)地址。
優(yōu)選地,該NAND控制器包括閃存轉(zhuǎn)換層,其用于將請(qǐng)求的物理 地址和邏輯單元號(hào)轉(zhuǎn)換成I/O命令和塊地址,并管理和控制NAND閃存 物理狀態(tài)。
優(yōu)選地,在NOR接口和存儲(chǔ)接口中,地址端口的分線(xiàn)、數(shù)據(jù)線(xiàn)、輸出驅(qū)動(dòng)線(xiàn)和寫(xiě)驅(qū)動(dòng)線(xiàn)可以共用。
優(yōu)選地,該NOR接口和存儲(chǔ)接口進(jìn)一步包括等待信號(hào)線(xiàn),其用于
解決主機(jī)數(shù)據(jù)讀取時(shí)間和NAND閃存塊單元中數(shù)據(jù)存取時(shí)間之間的差。
有益效果
因此,將NAND閃存劃分成用于執(zhí)行程序代碼的本地執(zhí)行區(qū)域和用 于存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)區(qū)域,并實(shí)現(xiàn)了用于直接仲裁和控制本地執(zhí)行 功能和存儲(chǔ)控制功能的控制器,由此能夠在一個(gè)NAND閃存中實(shí)現(xiàn)NOR 閃存和NAND閃存中的每一種功能。
通過(guò)在下文中結(jié)合附圖的具體描述,本發(fā)明的上述以及其它目的、
特征和優(yōu)點(diǎn)將更清楚,其中
圖1是表示用于移動(dòng)電話(huà)的常規(guī)大容量存儲(chǔ)設(shè)備的框圖2是表示根據(jù)本發(fā)明一實(shí)施例的用于移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè)備
的框圖3是表示根據(jù)本發(fā)明另一實(shí)施例的用于移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè) 備的框圖4是表示本發(fā)明接口結(jié)構(gòu)的框圖5是從CPU的角度表示本發(fā)明用于移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè)備結(jié) 構(gòu)的原理圖6是表示根據(jù)本發(fā)明控制器的示意性結(jié)構(gòu)的分層視圖; 圖7是表示圖6的控制器的具體結(jié)構(gòu)的框圖;和 圖8是表示根據(jù)本發(fā)明控制的信號(hào)的波形圖。
具體實(shí)施例方式
下面將參照附圖具體介紹本發(fā)明的優(yōu)選實(shí)施例。圖2是表示根據(jù)本發(fā)明一實(shí)施例的用于移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè)備 的框圖。
如圖2所示,本發(fā)明一實(shí)施例的用于移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè)備包
括CPUIO、 NAND閃存30、插入CPU 10和NAND閃存30之間的控制 器20,以及作為主存儲(chǔ)器直接連到CPU 10的DRAM35(Dynamic Random Access Memory )。
本發(fā)明的NAND閃存30劃分為用于存儲(chǔ)例如引導(dǎo)代碼等程序代碼 的本地執(zhí)行區(qū)域31和用于存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)區(qū)域33。這里,可以根 據(jù)條件或其目的改變本地執(zhí)行區(qū)域31和存儲(chǔ)區(qū)域33的劃分比率。
控制器20用于控制本地執(zhí)行區(qū)域31,使得在來(lái)自CPU10的隨機(jī)存 取請(qǐng)求下使CPU 10訪(fǎng)問(wèn)本地執(zhí)行區(qū)域31。同樣,該控制器還以如下方 式執(zhí)行存儲(chǔ)接口功能,使得在來(lái)自CPU 10的塊單元隨機(jī)存取請(qǐng)求下使 CPU 10訪(fǎng)問(wèn)存儲(chǔ)區(qū)域33。其具體結(jié)構(gòu)將在下面圖6和圖7中說(shuō)明進(jìn)行介 紹。
以多片封裝形式將控制器20和NAND閃存30安裝在一個(gè)半導(dǎo)體封 裝中。在該大容量存儲(chǔ)設(shè)備中,由于不需要單獨(dú)的主驅(qū)動(dòng)器控制NAND 閃存30,因此可以對(duì)用戶(hù)的使用提供便利。
圖3是表示根據(jù)本發(fā)明另一實(shí)施例的用于移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè) 備的框圖。
如圖3所示,NAND閃存30和DRAM35通過(guò)控制器20連接到CPU10 (主機(jī))上。在這種大容量存儲(chǔ)設(shè)備的結(jié)構(gòu)中,同樣以多片封裝的形式 將控制器20和NAND閃存30安裝在一個(gè)半導(dǎo)體封裝中。此外,因?yàn)椴?需要單獨(dú)的主驅(qū)動(dòng)器控制NAND閃存30,由此可以對(duì)用戶(hù)的使用提供便利。
圖4是表示本發(fā)明接口結(jié)構(gòu)框圖。
如圖4所示,根據(jù)本發(fā)明的控制器20包括用于和CPU IO連接的NOR接口 40、存儲(chǔ)接口 50、以及用于和NAND閃存30連接的NAND接口 60。
該NOR接口 40包括作為訪(fǎng)問(wèn)程序代碼接口的執(zhí)行本地執(zhí)行功能的 片選端口 (CS—XIP),輸出控制端口 (OE),用于在NAND閃存30中記 錄數(shù)據(jù)的寫(xiě)控制端口 (WE),用于輸入讀入或記錄地址數(shù)據(jù)的地址端口 (ADDR),用于輸入和輸出讀出或記錄數(shù)據(jù)的數(shù)據(jù)端口 (DQ),以及用 于為了解決在CPU 10的數(shù)據(jù)讀取時(shí)間和NAND閃存30中塊單元的數(shù)據(jù) 存取時(shí)間之間差別而向CPU 10發(fā)送等待信號(hào)的等待端口 (WAIT)。
該存儲(chǔ)接口 50包括用于通過(guò)CPU IO執(zhí)行存儲(chǔ)接口控制功能的片選 端口 (CS—IDE),用于執(zhí)行DMA (Direct Memory Access)功能的DMA 請(qǐng)求端口 (DREQ),以及DMA確認(rèn)端口 (DACK)等。
在該存儲(chǔ)接口 50中,可以使用不同配置的大容量存儲(chǔ)接口,例如 IDE/ATA、硬盤(pán)方式、SD (Security Digital)卡接口、多媒體卡(MMC) 接口、存儲(chǔ)條接口等。
在本發(fā)明的實(shí)施例中,采用IDE/ATA協(xié)議。IDE/ATA協(xié)議包括用作 硬件接口標(biāo)準(zhǔn)的IDE (intelligent drive electronics)和用作協(xié)議標(biāo)準(zhǔn)的ATA (advanced technology attachment)。
在存儲(chǔ)接口50中,輸出控制端口 (OE)、等待控制端口 (WE)、地 址端口分線(xiàn)(ADDR)、數(shù)據(jù)端口 (DQ)和等待端口 (WAIT)在NOR 接口端口中可以共用,由此可以減少連接端口的數(shù)量并且能夠提高運(yùn)行 效率。
對(duì)于地址端口 ,提供本地執(zhí)行功能的NOR接口 40具有26條地址線(xiàn), 而使用IDE/ATA接口的存儲(chǔ)接口 50僅將地址線(xiàn)中的3條線(xiàn)(0至2)用 于尋址軌道和扇區(qū)。
NAND接口 60包括作為NAND閃存存取接口的片選端口 ( CE), 用于輸入和輸出地址、數(shù)據(jù)和命令的輸入/輸出端口 (1/0 0-7),用于鎖定通過(guò)輸入/輸出端口輸入的命令的命令鎖定驅(qū)動(dòng)端口 (CLE),用于鎖定通 過(guò)輸入/輸出端口 (I/O0-7)輸入的地址的地址鎖定驅(qū)動(dòng)端口 (ALE),用 于將通過(guò)輸入/輸出端口 (I/O 0-7)輸入的數(shù)據(jù)記錄到NAND閃存30中 的寫(xiě)驅(qū)動(dòng)端口 (WE),用于傳輸通過(guò)輸入/輸出端口 (I/O 0-7)輸出的數(shù) 據(jù)的讀驅(qū)動(dòng)端口 (RE),以及用于顯示當(dāng)前NADN閃存30的準(zhǔn)備狀態(tài)的 可用和占用端口 (R/B)。
圖5是從CPU的角度表示本發(fā)明用于移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè)備結(jié) 構(gòu)的原理圖。
如圖5所示,其中CPU 10連接到根據(jù)本發(fā)明的用于移動(dòng)電話(huà)的大 容量存儲(chǔ)設(shè)備,由于CPU IO是分別通過(guò)NOR接口和存儲(chǔ)接口連接到本 地執(zhí)行區(qū)域31和存儲(chǔ)區(qū)域33,所以CUP 10將該大容量存儲(chǔ)器識(shí)別為兩 個(gè)設(shè)備,即一個(gè)用于本地執(zhí)行的閃存和一個(gè)用于硬盤(pán)。
換句話(huà)說(shuō),CPU 10將本地執(zhí)行區(qū)域31和存儲(chǔ)區(qū)域33識(shí)別為相互間 物理上完全獨(dú)立。因此,本發(fā)明的特征在于不同的兩個(gè)閃存(NOR閃存 和NAND閃存)視為存在于使用一個(gè)NAND閃存的存儲(chǔ)設(shè)備中。
圖6是表示根據(jù)本發(fā)明控制器的示意性結(jié)構(gòu)的分層視圖,而圖7是 表示圖6的控制器的具體結(jié)構(gòu)的框圖。
如圖所示,根據(jù)本發(fā)明的控制器20包括內(nèi)部時(shí)鐘產(chǎn)生部分21,本 地執(zhí)行存儲(chǔ)控制器22,高速緩沖存儲(chǔ)器23,系統(tǒng)控制器24,存儲(chǔ)控制器 25,硬盤(pán)緩沖器26, NAND控制器27和閃存管理器28。
本地執(zhí)行存儲(chǔ)控制器22,通過(guò)NOR接口 40連接到CPU 10上,用 于控制本地執(zhí)行區(qū)域31使得CPU 10在CPU IO的隨機(jī)存取請(qǐng)求下訪(fǎng)問(wèn) 本地執(zhí)行區(qū)域31。
本地執(zhí)行存儲(chǔ)控制器22由片選信號(hào)(nCS一XIP)驅(qū)動(dòng)。同時(shí),本地 執(zhí)行存儲(chǔ)控制器22還用作將通過(guò)地址端口 (ADDR)輸入的地址數(shù)據(jù)轉(zhuǎn) 換為物理地址并將其發(fā)送到系統(tǒng)控制器24。如圖6所示,在本地執(zhí)行存儲(chǔ)控制器22中,本地執(zhí)行的本地執(zhí)行主驅(qū)動(dòng)器70和本地執(zhí)行管理器75 用于控制軟件程序或與芯片的硬連接安裝。本地執(zhí)行主驅(qū)動(dòng)器70用于在 NOR閃存接口的請(qǐng)求下支持任一操作(讀、寫(xiě)、刪除等)。同時(shí),本地 執(zhí)行(NOR)主驅(qū)動(dòng)器70還是產(chǎn)生和控制用于本地執(zhí)行的存儲(chǔ)管理器列 表的任一程序。本地執(zhí)行管理器75用于將請(qǐng)求地址轉(zhuǎn)換成物理地址,在 產(chǎn)生壞塊時(shí)控制本地執(zhí)行存儲(chǔ)控制器22的操作,并根據(jù)NAND閃存的 種類(lèi)執(zhí)行控制和管理操作。此外,本地執(zhí)行管理器75用于通過(guò)與存儲(chǔ)管 理器85的信息交換來(lái)執(zhí)行對(duì)優(yōu)先順序的確定功能。
在本地執(zhí)行存儲(chǔ)管理器22中,把從NAND閃存30的本地執(zhí)行區(qū) 域31中讀出的塊單元數(shù)據(jù)傳輸?shù)礁咚倬彌_存儲(chǔ)器23中并僅將從高速緩 沖存儲(chǔ)器23中讀出的執(zhí)行程序代碼傳輸?shù)阶鳛橹鞔鎯?chǔ)器的DRAM35中。 同時(shí),在本地執(zhí)行存儲(chǔ)管理器22中,將從NAND閃存30的本地執(zhí)行區(qū) 域31中讀出的數(shù)據(jù)以及存儲(chǔ)在高速緩沖存儲(chǔ)器23中的數(shù)據(jù)和其存儲(chǔ)信 息記錄在特定位置,并在相同數(shù)據(jù)的請(qǐng)求下將存儲(chǔ)在高速緩沖存儲(chǔ)器23 中的數(shù)據(jù)傳輸?shù)紻RAM35中,由此縮短了數(shù)據(jù)存取時(shí)間。
存儲(chǔ)控制器25通過(guò)存儲(chǔ)接口 50連接到CPU 10并執(zhí)行存儲(chǔ)接口功 能,使得在來(lái)自CPU10的塊單元存取請(qǐng)求下使CPU10訪(fǎng)問(wèn)該塊單元中 的存儲(chǔ)區(qū)域33。該存儲(chǔ)控制器25由片選信號(hào)(ncs—IDE)驅(qū)動(dòng)。同時(shí), 該存儲(chǔ)控制器25用于將通過(guò)地址線(xiàn)中的三條線(xiàn)輸入的地址數(shù)據(jù)轉(zhuǎn)換成邏 輯單元號(hào)并將其傳輸?shù)较到y(tǒng)控制器24。
如圖6所示,在存儲(chǔ)控制器25中,通過(guò)軟件或與芯片硬連接安裝用 于存儲(chǔ)接口的存儲(chǔ)主驅(qū)動(dòng)器80和存儲(chǔ)管理器85。存儲(chǔ)主驅(qū)動(dòng)器80是用 于支持和解釋與存儲(chǔ)相關(guān)的協(xié)議并將與中斷管理和存儲(chǔ)相關(guān)的信息轉(zhuǎn)換 成任何適于NAND閃存形式任一數(shù)據(jù)的任一程序。該存儲(chǔ)管理器85用 于將請(qǐng)求地址轉(zhuǎn)換為邏輯單元號(hào)并執(zhí)行在壞塊上管理操作,用于電源緊 急中斷的數(shù)據(jù)保護(hù),以及根據(jù)NAND閃存的種類(lèi)控制和管理操作等。此外,該存儲(chǔ)管理器85還用于通過(guò)與本地執(zhí)行管理器75的信息交換而執(zhí)
行對(duì)優(yōu)先順序的確定功能。
在存儲(chǔ)控制器25中,將從NAND閃存30的存儲(chǔ)區(qū)域33中讀出的 塊單元數(shù)據(jù)暫時(shí)存儲(chǔ)在磁盤(pán)緩沖器26中,然后傳輸給CPU 10。
系統(tǒng)控制器24用于根據(jù)來(lái)自CPU 10請(qǐng)求的數(shù)據(jù)存取方式選擇性地 驅(qū)動(dòng)本地執(zhí)行存儲(chǔ)控制器22和存儲(chǔ)控制器25,并控制整個(gè)電路操作。同 時(shí),系統(tǒng)控制器24還用于將從本地執(zhí)行存儲(chǔ)控制器接收的物理地址和從 存儲(chǔ)控制器25接收的邏輯單元號(hào)轉(zhuǎn)換成將要傳輸?shù)絅AND控制器27的 能夠在NAND控制器27中處理的塊頁(yè)地址,由此可以同時(shí)在兩個(gè)接口, 即NOR接口和存儲(chǔ)接口中使用該NAND閃存33 。
與此同時(shí),系統(tǒng)控制器24用于將控制信號(hào)發(fā)送到多路輸出選擇器以 選擇性地輸出必要的數(shù)據(jù),其中將高速緩沖存儲(chǔ)器23和緩沖器26的數(shù) 據(jù)線(xiàn)輸入到該多路輸出選擇器中。例如,當(dāng)系統(tǒng)控制器24的控制信號(hào)為 "0"時(shí),選擇輸出高速緩沖存儲(chǔ)器23的數(shù)據(jù)。同樣,在系統(tǒng)控制器24 的控制信號(hào)為"1"時(shí),選擇輸出磁盤(pán)緩沖器26的數(shù)據(jù)。
同時(shí),系統(tǒng)控制器24還通過(guò)輸出等待信號(hào)(nWAIT)控制定時(shí)。這 將在圖8的解釋中進(jìn)行說(shuō)明。
NAND控制器27插入系統(tǒng)控制器24和NAND閃存30之間,其用 于根據(jù)NAND接口方法控制NAND閃存30。 g卩,NAND控制器27在從 系統(tǒng)控制器24接收的塊頁(yè)地址的基礎(chǔ)上用于讀出和記錄來(lái)自NAND閃 存30的數(shù)據(jù)。
如圖6所示,在NAND控制器27中,用于管理和控制NAND閃存 30的閃存轉(zhuǎn)換層90 (Flash Translation Layer, FTL)通過(guò)軟件程序或硬連
接安裝。
閃存轉(zhuǎn)換層90用于將所請(qǐng)求的物理地址和邏輯單元號(hào)轉(zhuǎn)換成I/O命 令和塊地址,并保存和管理壞塊上的信息。同時(shí),閃存轉(zhuǎn)換層90還用于在NAND閃存的讀取、編程和刪除過(guò)程中分配其操作,并控制NAND閃 存的物理狀態(tài),由此保護(hù)用戶(hù)數(shù)據(jù)而免受壞塊的侵害。 圖8是表示根據(jù)本發(fā)明控制的信號(hào)的波形圖。
在普通NAND閃存30中,執(zhí)行塊單元的數(shù)據(jù)讀取。其中,由于CPU 10的編碼單元很小,因此在它們之間產(chǎn)生時(shí)間差。為了解決這種時(shí)間差, 提供了等待信號(hào)(圖8的標(biāo)號(hào)"WAIT")。因此,當(dāng)在CPU10的命令代 碼執(zhí)行過(guò)程中沒(méi)有等待時(shí)間的情況下執(zhí)行代碼讀取時(shí),通過(guò)從存儲(chǔ)設(shè)備 產(chǎn)生的等待信號(hào)導(dǎo)致CPU 10的代碼執(zhí)行等待。這里,當(dāng)用于執(zhí)行該代碼 的CPU 10的內(nèi)存條無(wú)法接收該等待信號(hào)時(shí),可以將該等待信號(hào)用作CPU 10中的特殊處理信號(hào)。
正如在上文中可以看到的,在用于具有本地執(zhí)行功能和存儲(chǔ)功能的 移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè)備中,NAND閃存被劃分成用于執(zhí)行程序代碼 的本地執(zhí)行區(qū)域和用于存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)區(qū)域,并且實(shí)現(xiàn)了用于直 接仲裁和控制該本地執(zhí)行功能和存儲(chǔ)控制功能的控制器,由此可以在一 個(gè)NAND閃存中實(shí)現(xiàn)NOR閃存和NAND閃存中每 一 種功能。
盡管己經(jīng)連同當(dāng)前被視為最實(shí)用和優(yōu)選的實(shí)施例對(duì)本發(fā)明進(jìn)行了介 紹,但是應(yīng)當(dāng)理解本發(fā)明并不限于所述的實(shí)施例和附圖,恰恰相反,各 種修改和變化希望覆蓋在所附權(quán)利要求書(shū)的精神和范圍內(nèi)。
工業(yè)實(shí)用性
NAND閃存被劃分成用于執(zhí)行程序代碼的本地執(zhí)行區(qū)域和用于存儲(chǔ) 大容量數(shù)據(jù)的存儲(chǔ)區(qū)域,并且實(shí)現(xiàn)了用于直接仲裁和控制該本地執(zhí)行功 能和存儲(chǔ)控制功能的控制器,由此可以在一個(gè)NAND閃存中實(shí)現(xiàn)NOR 閃存和NAND閃存中每一種功能。
權(quán)利要求
1.一種具有本地執(zhí)行功能和存儲(chǔ)功能的大容量存儲(chǔ)設(shè)備,其特征在于,包括NAND閃存,其分為用于存儲(chǔ)程序代碼的本地執(zhí)行區(qū)域和用于存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)區(qū)域;和控制器,其用于控制本地執(zhí)行區(qū)域使得在來(lái)自主機(jī)的隨機(jī)存取請(qǐng)求下使主機(jī)通過(guò)NOR接口訪(fǎng)問(wèn)本地執(zhí)行區(qū)域,并執(zhí)行存儲(chǔ)接口功能使得在來(lái)自主機(jī)的塊單元存取請(qǐng)求下使主機(jī)通過(guò)存儲(chǔ)接口訪(fǎng)問(wèn)在塊單元中的存儲(chǔ)區(qū)域。
2. 如權(quán)利要求1所述的具有本地執(zhí)行功能和存儲(chǔ)功能的大容量存儲(chǔ) 設(shè)備,其特征在于,所述控制器包括本地執(zhí)行存儲(chǔ)控制器,其通過(guò)NOR接口連接到主機(jī)上,用于控制本 地執(zhí)行區(qū)域,使得在來(lái)自主機(jī)的隨機(jī)存取請(qǐng)求下使主機(jī)訪(fǎng)問(wèn)本地執(zhí)行區(qū) 域;高速緩沖存儲(chǔ)器,其用于暫時(shí)存儲(chǔ)從主機(jī)和本地執(zhí)行區(qū)域所接收的 數(shù)據(jù);存儲(chǔ)控制器,其通過(guò)存儲(chǔ)接口連接到主機(jī),用于執(zhí)行存儲(chǔ)接口功能, 使得在來(lái)自主機(jī)的塊單元隨機(jī)存取請(qǐng)求下使主機(jī)訪(fǎng)問(wèn)塊單元中的存儲(chǔ)區(qū) 域;磁盤(pán)緩沖器,其用于暫時(shí)存儲(chǔ)從主機(jī)和存儲(chǔ)區(qū)域接收到的數(shù)據(jù); 系統(tǒng)控制器,其用于根據(jù)主機(jī)請(qǐng)求的數(shù)據(jù)存取方式選擇性地驅(qū)動(dòng)本地執(zhí)行存儲(chǔ)控制器和存儲(chǔ)控制器,并控制整個(gè)電路操作;和NAND控制器,其插入系統(tǒng)控制器和NAND閃存之間,用于根據(jù)NAND接口方式控制NAND閃存。
3. 如權(quán)利要求2所述的具有本地執(zhí)行功能和存儲(chǔ)功能的大容量存儲(chǔ) 設(shè)備,其特征在于,所述本地執(zhí)行存儲(chǔ)控制器包括NOR主驅(qū)動(dòng)器,其用于支持在NOR閃存接口的請(qǐng)求下的任何操作, 為本地執(zhí)行產(chǎn)生、更新存儲(chǔ)管理器列表;及本地執(zhí)行管理器,用于將主機(jī)請(qǐng)求的存取地址轉(zhuǎn)換為物理地址,在 壞塊上執(zhí)行存儲(chǔ)管理操作;所述存儲(chǔ)控制器包括存儲(chǔ)主驅(qū)動(dòng)器,用于管理與存儲(chǔ)相關(guān)的協(xié)議并將與存儲(chǔ)相關(guān)的信息轉(zhuǎn)換成適于NAND閃存的任何數(shù)據(jù)形式;以及存儲(chǔ)管理器,用于將主機(jī)請(qǐng)求的存取地址轉(zhuǎn)換為邏輯單元號(hào),并在壞塊上執(zhí)行存儲(chǔ)管理操作;系統(tǒng)控制器,用于將從本地執(zhí)行存儲(chǔ)控制器接收的物理地址以及從 存儲(chǔ)控制器接收的邏輯單元號(hào)轉(zhuǎn)換成要發(fā)送到NAND控制器的塊頁(yè)地址。
4. 如權(quán)利要求2所述的具有本地執(zhí)行功能和存儲(chǔ)功能的大容量存儲(chǔ) 設(shè)備,其特征在于,所述NAND控制器包括閃存轉(zhuǎn)換層,用于將請(qǐng)求的 物理地址和邏輯單元號(hào)轉(zhuǎn)換成輸入輸出命令和塊地址,并管理和控制 NAND閃存物理狀態(tài)。
5. 如權(quán)利要求2所述的具有本地執(zhí)行功能和存儲(chǔ)功能的大容量存儲(chǔ) 設(shè)備,其特征在于,在所述NOR接口和存儲(chǔ)接口中,地址端口的分線(xiàn)、 數(shù)據(jù)線(xiàn)、輸出驅(qū)動(dòng)線(xiàn)和寫(xiě)驅(qū)動(dòng)線(xiàn)可以共用。
6. 如權(quán)利要求2所述的具有本地執(zhí)行功能和存儲(chǔ)功能的大容量存儲(chǔ) 設(shè)備,其特征在于,所述NOR接口和存儲(chǔ)接口進(jìn)一歩包括等待信號(hào)線(xiàn), 其用于解決主機(jī)數(shù)據(jù)讀取時(shí)間和NAND閃存塊單元中數(shù)據(jù)存取時(shí)間差。
全文摘要
本發(fā)明涉及一種用于具有本地執(zhí)行功能和存儲(chǔ)功能的移動(dòng)電話(huà)的大容量存儲(chǔ)設(shè)備。這種具有本地執(zhí)行本地執(zhí)行功能和存儲(chǔ)功能的大容量存儲(chǔ)設(shè)備包括劃分為用于存儲(chǔ)程序代碼的本地執(zhí)行區(qū)域和用于存儲(chǔ)大容量數(shù)據(jù)的存儲(chǔ)區(qū)域的NAND閃存;和控制器,用于控制本地執(zhí)行區(qū)域,使得在來(lái)自主機(jī)的隨機(jī)存取請(qǐng)求下,主機(jī)可以通過(guò)NOR接口訪(fǎng)問(wèn)本地執(zhí)行區(qū)域,并執(zhí)行存儲(chǔ)接口功能,使得在來(lái)自主機(jī)的塊單元存取請(qǐng)求下,主機(jī)可以通過(guò)存儲(chǔ)接口訪(fǎng)問(wèn)在塊單元中的存儲(chǔ)區(qū)域。
文檔編號(hào)G06F13/14GK101297276SQ200680039965
公開(kāi)日2008年10月29日 申請(qǐng)日期2006年8月17日 優(yōu)先權(quán)日2005年10月27日
發(fā)明者徐蕓植 申請(qǐng)人:愛(ài)存株式會(huì)社