專利名稱:利用nand閃存來開機的開機系統的制作方法
技術領域:
本發明是關于一種數字相機開機的系統,特別是一種利用NAND閃存來當作開機程序代碼儲存媒介的開機系統。
背景技術:
在現有技術當中,數字相機開機時,通常是以只讀存儲器為基礎(ROM-based)的儲存媒介,例如只讀存儲器(ROM)或NOR閃存(NOR Flash)作為開機程序代碼(Boot Code)的儲存媒介。原因在于要利用只讀存儲器或NOR閃存具有隨機存取的功能,來把只讀存儲器或NOR閃存當作數字相機開機時,處理器要讀取開機程序代碼的地方。此種方式又可分為使用主控制芯片外部的只讀存儲器或NOR閃存來開機,或是以開機系統芯片內部的只讀存儲器或NOR閃存來開機。
然而,若使用主控制芯片內部的只讀存儲器或NOR閃存來開機,例如以光罩式只讀存儲器(Mask ROM)當作開機程序代碼的儲存媒介,萬一遇到開機程序代碼有問題或需要更新時,只能重新下單(Tape-out)開設光罩來修改光罩式只讀存儲器內所儲存的開機程序代碼,如此一來就會耗費額外的下單成本及時間風險。同樣地,若以主控制芯片外部的只讀存儲器或NOR閃存來開機,雖然沒有重新下單問題,但是需要外接一顆只讀存儲器或NOR閃存的成本以及主控制芯片需要保留與外接只讀存儲器或NOR閃存所需連接的接腳,這對于數字相機的主控制芯片而言,會比較耗費制造成本。
因此需要一種新的開機程序代碼儲存媒介來解決現有技術的問題。
發明內容
本發明的主要目的是提供一種利用NAND閃存來當做開機程序代碼儲存媒介的數字相機的開機系統。
為達成上述的目的,本發明提供一種數字相機的開機系統。本發明的開機系統包括有NAND閃存、閃存控制模塊、處理器模塊及輸出入橋接器。NAND閃存內包括開機程序代碼、操作系統程序代碼及許可程序代碼。閃存控制模塊用來控制NAND閃存的存取,并與NAND閃存電性耦合。處理器模塊內含高速緩存,利用許可程序代碼來啟動高速緩存,并用高速緩存來讀取及暫存開機程序代碼來讓處理器模塊進行開機。
另外,本發明亦提供一種數字相機開機方法。當數字相機進行開機時,先檢測NAND閃存的良好度,避免NAND閃存有錯誤的區段。接著配合高速緩存的容量分段讀取開機程序代碼暫存,再由處理模塊執行開機程序代碼進行開機。之后高速緩存再讀取新的開機程序代碼直到處理模塊執行完所有的開機程序為止。
圖1是本發明的開機系統的架構示意圖;圖2是本發明的開機系統在數字相機中的架構示意圖;圖3是本發明的數字相機開機方法的步驟流程圖。
組件代表符號說明開機系統10主控制芯片20NAND閃存21處理器模塊22高速緩存221數字影像處理模塊23閃存控制模塊24輸出入橋接器25動態內存控制模塊26直接存取內存模塊27動態內存31開機程序代碼41操作系統程序代碼42許可程序代碼具體實施方式
為能更了解本發明的技術內容,特舉一個較佳具體實施例說明如下。
請先參考圖1是本發明的開機系統10的架構示意圖。在本發明的一實施例中,本發明的開機系統10可供使用于一數字相機,但本發明并不以此為限。
如圖1所示,開機系統10包括NAND閃存21、處理器模塊22、閃存控制模塊24及輸出入橋接器(IO Bridge)25。
NAND閃存21可供儲存開機程序代碼41、操作系統程序代碼42及許可程序代碼43;并且NAND閃存21是與閃存控制模塊24電性耦接。因此,可以通過由閃存控制模塊24來存取及控制NAND閃存21所儲存的開機程序代碼41、操作系統程序代碼42及許可程序代碼43。
通常而言,一般的NAND閃存于出廠時容易存在不良扇區(BadBlock)并且其記憶單元容易有位變動(Bit Flip)等錯誤現象發生。因此,在本發明的一實施中,閃存控制模塊24具有自動除錯功能,可以通過由錯誤修正程序代碼(ECC,Error-CorrectingCode)檢查并修正NAND閃存21中的不良扇區及位變動,以確保可以正確地存取其所儲存的開機程序代碼41、操作系統程序代碼42及許可程序代碼43。
由于一般數字相機系統中通常即設置有NAND閃存以供儲存操作系統程序代碼及參數,因此本發明利用NAND閃存21作為儲存開機程序代碼41的儲存媒介即沒有現有技術需要額外附加儲存媒介而增加成本的問題。再者,當要修改開機程序代碼時,NAND閃存的內部數據寫入較為方便,可避免現有技術的光罩式只讀存儲器,需要花費大量下單的時間與制造成本的問題。
但是另一方面,NAND閃存也具有無法快速執行隨機存取(Random Access)動作的問題。所以為了要解決本發明的NAND閃存21讀取速度的問題,本發明即在執行數字相機開機工作的處理器模塊22內設置了高速緩存221。高速緩存221可執行暫存開機程序代碼41的功能,幫助開機系統10利用NAND閃存21開機時,增加讀取開機程序代碼41的速度。
在本發明的一實施例中,高速緩存221是利用NAND閃存21中的許可程序代碼43來啟動。在數字相機開機時,本發明是先用許可程序代碼43來啟動高速緩存221。接著將要執行的開機程序代碼41,配合高速緩存221的容量,先讀取部分的開機程序代碼41到高速緩存221中并讓處理器模塊22執行。在處理器模塊22執行完部分的開機程序代碼41之后,高速緩存221再繼續讀取剩下的開機程序代碼41,直到把開機程序代碼41執行完為止。
另外,本發明另設置一輸出入橋接器25,其是電性耦接于處理器模塊22與閃存控制模塊24的間,以供在處理器模塊22與閃存控制模塊24的間傳遞數據。
接下來請參考圖2關于本發明的開機系統在數字相機中的架構示意圖。如圖2所示,在本發明的一實施例中,開機系統10可以設置在數字相機中,而與其它模塊整合在一起,但本發明的架構并不以此為限,本發明也可設置在數字相機以外的電子裝置中,而仍能實現本發明的功效。
如圖2所示,在本發明的一實施例中,數字相機包括主控制芯片20、NAND閃存21及動態內存31。
主控制芯片20包括處理器模塊22、數字影像處理模塊23、閃存控制模塊24、輸出入橋接器25、動態內存控制模塊26及直接存取內存模塊27(DMA,Direct Memory Access)。
其中NAND閃存21、處理器模塊22、閃存控制模塊24及輸出入橋接器25是為開機系統10的一部分。
數字影像處理模塊23與處理器模塊22電性耦接。在處理器模塊22利用NAND閃存21中的開機程序代碼41開機之后,處理器模塊22及數字影像處理模塊23就可執行NAND閃存21中的操作系統程序代碼42。并用動態內存控制模塊26來控制動態內存31對于操作系統程序代碼42的存取。
操作系統程序代碼42可以使處理器模塊22的處理速度提升,并使數字影像處理模塊23執行數字相機的拍照、瀏覽相片等功能。但此處所述的技術內容并非本發明的重點,因此不在此贅述。
直接存取內存模塊27則與輸出入橋接器25及動態內存控制模塊26電性耦接。直接存取內存模塊27可作為直接傳遞輸出入橋接器25與動態內存控制模塊26的數據的橋梁,而不必經過處理器模塊22,用來節省系統資源。
本發明另外提供一種數字相機開機方法,以下請參考圖3關于本發明的數字相機開機方法的步驟流程圖。
如圖3所示,當要執行數字相機的開機作業時,本發明先進行步驟301執行NAND閃存21的自動除錯功能。
由于為了避免NAND閃存21有錯誤的區段(例如不良扇區或位變動等),因此在讀取NAND閃存21的開機程序代碼41的前,閃存控制模塊24都要先執行NAND閃存21的自動除錯功能。在本實施例中,閃存控制模塊24中保留有512 byte的內存容量作為自動除錯功能的用,但本發明并不以此為限。
當確定NAND閃存21并無錯誤的區段或是已經將錯誤修正之后,本發明就進行步驟302從NAND閃存21分段讀取開機程序代碼41。
在本實施例中,NAND閃存21先預留64 byte作為啟動高速緩存221的許可程序代碼43的用,但本發明并不以此為限。
啟動高速緩存221之后,高速緩存221就先確定所要讀取開機程序代碼41的地址,接著再讀取適當大小的開機程序代碼41到高速緩存221當中。如此一來就可以解決NAND閃存21讀取速度的問題。
讀取適當大小的開機程序代碼41的原因是為了要配合高速緩存221的容量,避免一次讀取完開機程序代碼41會造成高速緩存221的內存容量不足,而需要增加額外的高速緩存221并增加制造成本。在本實施例中是為先讀取2KB的開機程序代碼41,但本發明并不以此為限。
把部分的開機程序代碼41讀取到高速緩存221后就進行步驟303利用處理器模塊22執行開機程序代碼41進行開機。
處理器模塊22會先執行已經讀取到高速緩存221的部分開機程序代碼41。用這部分的開機程序代碼41開完機之后,高速緩存221就再重復步驟302。從NAND閃存21中讀取新的開機程序代碼41,提供處理器模塊22進行開機,直到完成整個數字相機開機的程序。之后數字相機就可以利用數字影像處理模塊23等模塊執行其它的功能,例如拍照、瀏覽相片等功能。
綜上所陳,本發明無論就目的、手段及功效,均顯示其迥異于現有技術的特征,但應注意的是,上述諸多實施例僅是為了便于說明而舉例而已,本發明所主張的權利范圍自應以申請專利范圍所述為準,而非僅限于上述實施例。
權利要求
1.一種開機系統,是用于一數字相機,其特征在于該開機系統包括一NAND閃存,是用來存放開機所需的一開機程序代碼;一閃存控制模塊,是與該NAND閃存電性耦接,用來控制該NAND閃存;以及一處理器模塊,是與該閃存控制模塊電性耦接,用來從該NAND閃存讀取并執行該開機程序代碼。
2.如權利要求1所述的開機系統,其特征在于,更包括一輸出入橋接器,是與該閃存控制模塊及該處理器模塊電性耦接,用來從該閃存控制模塊傳遞該開機程序代碼至該處理器模塊。
3.如權利要求1所述的開機系統,其特征在于,所述該處理器模塊更包括一高速緩存,是用來暫存該開機程序代碼。
4.如權利要求1所述的開機系統,其特征在于,所述該NAND閃存更存放一操作系統程序代碼。
5.如權利要求3所述的開機系統,其特征在于,所述該NAND閃存更存放一許可程序代碼,該許可程序代碼是用來啟動該高速緩存。
6.如權利要求1所述的開機系統,其特征在于,所述該NAND閃存控制模塊通過由一錯誤修正程序代碼檢查并修正該NAND閃存中發生錯誤的內存區段。
7.一種數字相機的開機方法,是利用一NAND閃存來執行一開機作業,其特征在于,所述該方法包括以下步驟執行該NAND閃存的一自動除錯功能;從該NAND閃存分段讀取一開機程序代碼;以及利用一處理器模塊執行該開機程序代碼,以進行該開機作業。
8.如權利要求7所述的數字相機開機方法,其特征在于,是通過由一高速緩存以從該NAND閃存分段讀取該開機程序代碼。
9.如權利要求8所述的數字相機開機方法,其特征在于,更包括啟動該高速緩存的步驟。
10.如權利要求8所述的數字相機開機方法,其特征在于,更包括利用該高速緩存指定讀取該開機程序代碼的一地址的步驟。
11.如權利要求8所述的數字相機開機方法,其特征在于,更包括配合該高速緩存的一內存容量以分段暫存該開機程序代碼的步驟。
全文摘要
本發明是一種利用NAND閃存來開機的開機系統,是用于數字相機上。開機系統包括NAND閃存、閃存控制模塊、處理器模塊及輸出入橋接器。處理器模塊內具有高速緩存。當數字相機開機時,高速緩存是讀取NAND閃存中所儲存的開機程序代碼來讓處理器模塊執行開機。
文檔編號H04N5/225GK101063943SQ20061007600
公開日2007年10月31日 申請日期2006年4月24日 優先權日2006年4月24日
發明者林伯榮, 陳水淋, 薛家明 申請人:華晶科技股份有限公司