專利名稱:嵌入式系統(tǒng)及其接口裝置與非易失性存儲器的更新方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式系統(tǒng),特別涉及對嵌入式系統(tǒng)的非易失性存儲器進(jìn)行 初始化或讀寫數(shù)據(jù)操作的裝置和方法。
背景技術(shù):
在一個(gè)具有非易失性存儲器(non-volatile memory),例如為快閃存儲器 (flashmemory)的嵌入式系統(tǒng)(embeddedsystem)中,在其系統(tǒng)正常的工作狀態(tài) 下,此非易失性存儲器需要有一個(gè)正確的初始值,以便于使用者可以正確地 讀寫此非易失性存儲器內(nèi)的數(shù)據(jù)。其中,此正確的初始值是在量產(chǎn)過程中就 已寫入于非易失性存儲器內(nèi)的 一初始化程序代碼。
一般而言,當(dāng)非易失性存儲器不具有正確的初始化程序代碼,并于此時(shí) 需讀寫數(shù)據(jù)到此非易失性存儲器時(shí),以現(xiàn)今所提供的技術(shù)而言,大致可分為兩種技術(shù)手段用于跟嵌入式系統(tǒng)內(nèi)的存儲器控制模塊溝通,然后才能對此非 易失性存儲器執(zhí)行讀寫數(shù)據(jù)的操作。其中,第一種技術(shù)手段是使用主動通訊 方式,例如利用仿真器(In-Circuit Emulation, ICE)來實(shí)行,而第二種技術(shù)手 段為使用4皮動通訊方式,例如利用串行接口 RS-232來實(shí)行。
圖1所示為已知的在非易失性存儲器不具有正確的初始化程序代碼時(shí), 使用主動通訊方式來讀寫數(shù)據(jù)到非易失性存儲器的嵌入式系統(tǒng)的框圖。請參 照圖1,對于此第一種技術(shù)手段而言,其是利用仿真器(ICE)101來完全控制 嵌入式系統(tǒng)100內(nèi)的微處理器103,并由存儲器控制模塊105提供一固定程 序代碼(也就是非易失性存儲器所需的初始化程序代碼)以供微處理器103執(zhí) 行,接著再通過總線107傳輸數(shù)據(jù)至非易失性存儲器控制器109轉(zhuǎn)換后,才能對非易失性存儲器111執(zhí)行讀寫數(shù)據(jù)的操作。
圖2所示為已知的在非易失性存儲器不具有正確的初始化程序代碼時(shí), 通過使用被動通訊方式來讀寫數(shù)據(jù)到非易失性存儲器的嵌入式系統(tǒng)的框圖。請參照圖2,對于此第二種技術(shù)手段而言,其是通過將存儲器控制模塊207 內(nèi)的一初始化程序代碼通過非易失性存儲器控制器203的轉(zhuǎn)換后,利用總線 205傳輸并儲存于非易失性存儲器控制器203中,接著再由微處理器209執(zhí) 行此初始化程序代碼后,以處理外部電腦主機(jī)211通過串行接口 213對非易 失性存儲器201下達(dá)讀寫數(shù)據(jù)的操作指令。
然而,值得一提的是,在第一種技術(shù)手段所使用的仿真器(ICE)并不是 每一個(gè)嵌入式系統(tǒng)都會具備,所以如果使用者要利用此技術(shù)手段時(shí),就必需 增設(shè)仿真器及其仿真器接口(也就是ICE的硬件控制模塊),因此對某些設(shè)計(jì) 理念而言,其并不符合設(shè)計(jì)成本的需求。此外,假若使用者要使用第二種技 術(shù)手段時(shí),則需要在嵌入式系統(tǒng)的微處理器執(zhí)行初始化程序代碼后,使用者 才能對非易失性存儲器執(zhí)行讀寫數(shù)據(jù)的操作,但在量產(chǎn)非易失性存儲器的過 程中,如生產(chǎn)過程中機(jī)板上的非易失存儲器尚未寫入數(shù)據(jù)時(shí),其內(nèi)部的初始 化程序代碼是不存在的,所以此時(shí)運(yùn)用此技術(shù)手段,無法達(dá)成預(yù)期的效果。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的就是提供了 一種接口裝置及其所應(yīng)用的嵌入式 系統(tǒng),其通過在具有通用串行總線接口的嵌入式系統(tǒng)加入指令解釋器,以達(dá) 到不需通過嵌入式系統(tǒng)的微處理器,即能直接對嵌入式系統(tǒng)的非易失性存儲 器執(zhí)行初始化及讀寫數(shù)據(jù)的操作。
本發(fā)明的另一目的就是提供一種非易失性存儲器的更新方法,其通過直 接解釋外部裝置所下達(dá)的特定格式指令,以對嵌入式系統(tǒng)的非易失性存儲器
執(zhí)行初始化或讀寫數(shù)據(jù)的操作。
基于上述及其他目的,本發(fā)明所提供的接口裝置適用于嵌入式系統(tǒng),且 此嵌入式系統(tǒng)具有一非易失性存儲器,而本發(fā)明的接口裝置包括通用串行總 線物理層、指令解釋器,以及總線主控制器。其中,通用串行總線物理層是 用于接收外部裝置所提供的通用串行總線時(shí)序信號,并將其轉(zhuǎn)換后輸出特定 格式指令。指令解釋器是用于直接解釋通用串行總線物理層所輸出的特定格 式指令,并產(chǎn)生操作信號??偩€主控制器是用于依據(jù)指令解釋器所輸出的操 作信號,并通過總線以對嵌入式系統(tǒng)的非易失性存儲器進(jìn)行初始化或讀寫數(shù)
據(jù)的操作。
從另一觀點(diǎn)來看,本發(fā)明提供一種嵌入式系統(tǒng),其包括非易失性存儲器 與接口裝置,其中此接口裝置是用于接收解釋外部裝置所下達(dá)的特定格式指 令,并據(jù)以對非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操作。
在本發(fā)明一實(shí)施例中,上述嵌入式系統(tǒng)的接口裝置包括通用串行總線物 理層、指令解釋器,以及總線主控制器。其中,通用串行總線物理層是用于 接收外部裝置所提供的通用串行總線時(shí)序信號,并將其轉(zhuǎn)換后輸出特定格式 指令。指令解釋器是用于直接解釋通用串行總線物理層所輸出的特定格式指 令,并據(jù)以產(chǎn)生操作信號。總線主控制器是用于依據(jù)指令解釋器所輸出的操 作信號,并通過總線以對非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操作。
再從另一觀點(diǎn)來看,本發(fā)明提供一種非易失性存儲器的更新方法,其適
用于具有通用串行總線功能的嵌入式系統(tǒng),而此更新方法包括下列步驟首 先,a.接收外部裝置所下達(dá)的特定格式指令。接著,b.直接解釋上述特定格 式指令后,而據(jù)以對非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的搡作。
在本發(fā)明一實(shí)施例中,在上述步驟a中還包括a-l.轉(zhuǎn)換外部裝置所提供 的通用串行總線時(shí)序信號,而產(chǎn)生上述特定格式指令。
在本發(fā)明一實(shí)施例中,在上迷步驟b中還包括b-l.依據(jù)上述特定格式指 令而產(chǎn)生一操作信號。接著,b-2.依據(jù)上述操作信號以對非易失性存儲器進(jìn) 行初始化或讀寫數(shù)據(jù)的操作。
本發(fā)明所提供的接口裝置,其可以適用于具有通用串行總線接口與非易 失性存儲器的嵌入式系統(tǒng)中,因?yàn)榇私涌谘b置是通過指令解釋器以直接解釋 通用串行總線物理層所轉(zhuǎn)換過后的外部裝置的特定格式指令,故不需再通過 嵌入式系統(tǒng)的微處理器的處理,即可以達(dá)到直接對嵌入式系統(tǒng)的非易失性存 儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操作。除此之外,本發(fā)明所提供的非易失性存 儲器的更新方法,其是通過直接解釋外部裝置所下達(dá)的特定格式指令后,并 據(jù)以對非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操作,由此以達(dá)到直接對非 易失性存儲器做更新的操作。
為讓本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉本發(fā)明較佳實(shí)施例,并配合附圖,作詳細(xì)說明如下。
圖1為已知的在非易失性存儲器不具有正確的初始化程序代碼時(shí),使用
主動通訊方式來讀寫數(shù)據(jù)到非易失性存儲器的嵌入式系統(tǒng)的框圖2為已知的在非易失性存儲器不具有正確的初始化程序代碼時(shí),使用 被動通訊方式來讀寫數(shù)據(jù)到非易失性存儲器的嵌入式系統(tǒng)的框圖3為依照本發(fā)明較佳實(shí)施例的嵌入式系統(tǒng)框圖4為依照本發(fā)明較佳實(shí)施例的非易失性存儲器的更新方法的流程圖。
具體實(shí)施例方式
圖3所示為依照本發(fā)明較佳實(shí)施例的嵌入式系統(tǒng)300的框圖。請參照圖 3,本實(shí)施例的嵌入式系統(tǒng)300包括外部裝置301、接口裝置303、總線305、 微處理器(micro-controller) 307、非易失性存儲器控制器(non-volatile memory controller) 309,以及非易失性存儲器(non-volatile memory) 311。其中,接口 裝置303包括通用串行總線物理層(USB device / PHY) 303a、指令解釋器 303b,以及總線主控制器(bus master) 303c。
于本實(shí)施例中,外部裝置301例如可以為電腦主機(jī)(PC host)或通用串行 總線控制器(USB controller),而非易失性存儲器311例如可以為快閃存儲器 (flash memory),故非易失性存儲器控制器309即為快閃存儲器控制器(flash memory controller),但并不限制其為此,使用者可視實(shí)際需求,以不同非易 失性存儲器來實(shí)行。
于本實(shí)施例中,當(dāng)接口裝置303的通用串行總線物理層303a接收外部 裝置301所提供的通用串行總線時(shí)序信號USBCS后,會將其轉(zhuǎn)換以輸出特 定格式指令SFC。接著,由指令解釋器303b解釋此特定格式指令SFC,并 據(jù)以產(chǎn)生一操作信號OS。之后,總線主控制器303c再依據(jù)此操作信號OS 而主導(dǎo)總線305的行為,并通過總線305將其信號內(nèi)容提供至非易失性存儲 器控制器309轉(zhuǎn)換,根據(jù)信號內(nèi)容,進(jìn)而對非易失性存儲器311執(zhí)行初始化(initialize)或讀寫數(shù)據(jù)的搡作(執(zhí)行初始化之后,就可以執(zhí)行正常的讀寫操作)。
故依據(jù)上述內(nèi)容可知,本實(shí)施例的接口裝置303在運(yùn)作時(shí),并不需要通過微處理器307的管理,即可直接對非易失性存儲器311執(zhí)行初始化或讀寫 數(shù)據(jù)的操作,其是因?yàn)榻涌谘b置303內(nèi)的指令解釋器303b已代替原先微處 理器307所需執(zhí)行的工作,故此時(shí)僅需由外部裝置301通過通用串行總線物 理層303a下達(dá)指令(也就是特定格式指令SFC)至指令解釋器303b解釋,再 據(jù)以控制總線主控制器303c以主導(dǎo)總線305的行為后,即可直接控制非易失性存儲器控制器309,而對非易失性存儲器311初始化或讀寫數(shù)據(jù)。
此外,值得一提的是,當(dāng)接口裝置303運(yùn)作完畢后,嵌入式系統(tǒng)300將會回到正常的工作模式,也就是由微處理器307接續(xù)管理嵌入式系統(tǒng)300的 整體運(yùn)作方式,而此時(shí)通用串行總線物理層303a就可以提供對其他通用串行總線主控制器或通用串行總線裝置的存取搡作。
圖4所示為依照本發(fā)明較佳實(shí)施例的非易失性存儲器的更新方法。請參照圖4,本實(shí)施例的非易失性存儲器(例如可以為快閃存儲器)的更新方法適 用于具有通用串行總線功能的嵌入式系統(tǒng),而此更新方法包括下列步驟首先,于步驟S401中,接收外部裝置(例如可以為電腦主機(jī)或通用串行總線主控制器)所下達(dá)的特定格式指令,其中上述的特定格式指令是通過轉(zhuǎn)換外部裝置所提供的通用串行總線時(shí)序信號所產(chǎn)生的。
接著,在步驟S403中,直接解釋上述特定格式指令后,而據(jù)以對非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的搡作。于此步驟中,解釋特定格式指令后會產(chǎn)生一操作信號,而此操作信號是用于對非易失性存儲器進(jìn)行初始化或 讀寫數(shù)據(jù)的操作。
在本實(shí)施例中,當(dāng)上述步驟S403執(zhí)行完畢后,也就是對非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操作結(jié)束后,嵌入式系統(tǒng)的微處理器會接續(xù)管理嵌入式系統(tǒng)的整體運(yùn)作方式。
綜上所述,本發(fā)明是提供一種接口裝置,其適用于具有通用串行總線(USB)接口與非易失性存儲器的嵌入式系統(tǒng)中。本發(fā)明的接口裝置因?yàn)橥ㄟ^指令解釋器解釋外部裝置所下達(dá)的指令,故不需再通過嵌入式系統(tǒng)的微處理
器的處理,即可直接對非易失性存儲器執(zhí)行初始化或讀寫數(shù)據(jù)的操作,由此 得以解決先前技術(shù)所碰到的技術(shù)瓶頸。除此之外,本發(fā)明所提供的非易失性 存儲器的更新方法是通過直接解釋外部裝置所下達(dá)的特定格式指令后,據(jù)以 對非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操作,由此以達(dá)到直接對非易失 性存儲器做更新的動作。
雖然本發(fā)明已以較佳實(shí)施例揭露如上,然其并非用以限定本發(fā)明,任何 本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許更動與潤飾, 因此本發(fā)明的保護(hù)范圍當(dāng)視后附權(quán)利要求所界定者為準(zhǔn)。
權(quán)利要求
1. 一種接口裝置,其適于一嵌入式系統(tǒng),該嵌入式系統(tǒng)具有一非易失性存儲器,而該接口裝置包括一通用串行總線物理層,用以接收一外部裝置所提供的一通用串行總線時(shí)序信號,并將前述通用串行總線時(shí)序信號轉(zhuǎn)換后產(chǎn)生一特定格式指令;一指令解釋器,耦接該通用串行總線物理層,用以直接解釋該特定格式指令,并據(jù)以產(chǎn)生一操作信號;以及一總線主控制器,耦接該指令解釋器,用以依據(jù)該操作信號,并通過一總線以對該非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操作。
2、 如權(quán)利要求1所述的接口裝置,在該嵌入式系統(tǒng)中,還包括一非易 失性存儲器控制器,耦接于該總線與該非易失性存儲器之間,用以轉(zhuǎn)換該總 線上的數(shù)據(jù),并據(jù)以初始化或讀寫數(shù)據(jù)于該非易失性存儲器。
3、 如權(quán)利要求1所述的接口裝置,其中該外部裝置為電腦主機(jī)或通用 串行總線主控制器。
4、 如權(quán)利要求1所述的接口裝置,其中該非易失性存儲器為一快閃存 儲器。
5、 一種嵌入式系統(tǒng),包括 一非易失性存儲器; 一外部裝置;以及一接口裝置,耦接該非易失性存儲器,用以直接解釋該外部裝置所下達(dá) 的一特定格式指令,并據(jù)以對該非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操 作。
6、 如權(quán)利要求5所述的嵌入式系統(tǒng),其中該接口裝置包括一通用串行總線物理層,用以接收該外部裝置所提供的一通用串行總線 時(shí)序信號,并將前述通用串行總線時(shí)序信號轉(zhuǎn)換后產(chǎn)生該特定格式指令;一指令解釋器,耦接該通用串行總線物理層,用以直接解釋該特定格式 指令,并據(jù)以產(chǎn)生一操作信號;以及 一總線主控制器,耦接該指令解釋器,用以依據(jù)該操作信號,并通過一 總線以對該非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的搡作。
7、 如權(quán)利要求5所述的嵌入式系統(tǒng),還包括一非易失性存儲器控制器, 耦接于該總線與該非易失性存儲器之間,用以轉(zhuǎn)換該總線上的數(shù)據(jù),并據(jù)以 初始化或讀寫數(shù)據(jù)于該非易失性存儲器。
8、 如權(quán)利要求5所述的嵌入式系統(tǒng),還包括一微處理器,其是用以當(dāng) 該接口裝置運(yùn)作完畢后,以接續(xù)管理該嵌入式系統(tǒng)的整體運(yùn)作方式。
9、 如權(quán)利要求5所述的嵌入式系統(tǒng),其中該外部裝置為電腦主機(jī)或通 用串行總線主控制器。
10、 一種非易失性存儲器的更新方法,其適用于具有通用串行總線功能 的一嵌入式系統(tǒng),而該更新方法包括下列步驟a. 接收一外部裝置所下達(dá)的一特定格式指令;以及b. 直接解釋該特定格式指令后,而據(jù)以對該非易失性存儲器進(jìn)行初始化 或讀寫數(shù)據(jù)的操作。
11、 如權(quán)利要求10所述的非易失性存儲器的更新方法,其中在步驟a 中還包括a-l.轉(zhuǎn)換該外部裝置所提供的一通用串行總線時(shí)序信號,而產(chǎn)生該特定 格式指令。
12、 如權(quán)利要求10所述的非易失性存儲器的更新方法,其中在步驟b 中還包括b-l.依據(jù)該特定格式指令而產(chǎn)生一操作信號;以及 b-2.依據(jù)該操作信號以對該非易失性存儲器進(jìn)行初始化或讀寫數(shù)據(jù)的操作。
13、 如權(quán)利要求IO所述的非易失性存儲器的更新方法,其中在該步驟 b執(zhí)行結(jié)束后,該嵌入式系統(tǒng)的一微處理器接續(xù)管理該嵌入式系統(tǒng)的整體運(yùn) 作方式。
14、 如權(quán)利要求10所述的非易失性存儲器的更新方法,其中該外部裝 置為電腦主機(jī)或通用串行總線主控制器。
全文摘要
一種接口裝置與非易失性存儲器的更新方法,本發(fā)明的接口裝置可以適用于具有通用串行總線接口與非易失性存儲器的嵌入式系統(tǒng)中,因?yàn)榇私涌谘b置是通過指令解釋器以直接解釋通用串行總線物理層所轉(zhuǎn)換過后的外部裝置的特定格式指令,故不需再通過嵌入式系統(tǒng)微處理器的處理,即可達(dá)到直接對嵌入式系統(tǒng)的非易失性存儲器執(zhí)行初始化或讀寫數(shù)據(jù)的動作。
文檔編號G06F13/12GK101206620SQ20061017024
公開日2008年6月25日 申請日期2006年12月21日 優(yōu)先權(quán)日2006年12月21日
發(fā)明者楊穎智 申請人:凌陽科技股份有限公司