專利名稱:用于基于微控制器的快閃存儲(chǔ)器數(shù)字控制器的固件可擴(kuò)展命令的制作方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及數(shù)字控制器系統(tǒng),且更明確地說(shuō)涉及基于微控制器的快閃存儲(chǔ)器 數(shù)字控制器系統(tǒng)。
背景技術(shù):
存儲(chǔ)器系統(tǒng)及存儲(chǔ)器裝置(例如,數(shù)字快閃存儲(chǔ)器裝置)通常包括用于存儲(chǔ)及檢索 到及來(lái)自存儲(chǔ)器(例如,非易失性快閃存儲(chǔ)器)的數(shù)字信息的數(shù)字控制器。在常規(guī)存儲(chǔ) 器裝置(例如,數(shù)字快閃存儲(chǔ)器裝置)中,在指定及構(gòu)造數(shù)字快閃存儲(chǔ)器裝置時(shí),所 述數(shù)字快閃存儲(chǔ)器裝置所支持的多數(shù)命令序列(例如,讀取、寫(xiě)入、拷貝、擦除等等) 通常是已知的。因此,命令序列通常設(shè)定(及固定)于硬件中(例如,將命令序列硬
連線到狀態(tài)機(jī)中或固定于只讀存儲(chǔ)器(ROM)中)且因此,通常在數(shù)字快閃存儲(chǔ)器裝置 已制成之后便無(wú)法修改命令序列。所述硬連線狀態(tài)機(jī)通常需要記錄對(duì)預(yù)定序列所做的 任何改變,而此操作是昂貴且耗時(shí)的過(guò)程,其需要制作及測(cè)試新的數(shù)字快閃存儲(chǔ)器裝 置。
因此,需要一種用于擴(kuò)充可用來(lái)由常規(guī)存儲(chǔ)器裝置(其包括狀態(tài)機(jī))執(zhí)行(或處 理)的命令的數(shù)目的系統(tǒng)及方法,而經(jīng)擴(kuò)充的命令(在處理時(shí))不需要對(duì)狀態(tài)機(jī)進(jìn)行記 錄。本發(fā)明滿足此需要。
發(fā)明內(nèi)容
一般來(lái)說(shuō),在一個(gè)方面,此說(shuō)明書(shū)描述用于包括命令解碼狀態(tài)機(jī)及微控制器的數(shù) 字控制器系統(tǒng)的操作方法。所述方法包括通過(guò)所述命令解碼狀態(tài)機(jī)解碼第一多個(gè)命 令,且響應(yīng)于所述命令解碼狀態(tài)機(jī)解碼經(jīng)擴(kuò)充的命令,喚醒所述微控制器以處理除 所述第一多個(gè)命令中的命令之外的額外命令。所述經(jīng)擴(kuò)充的命令是通知所述微控制器 將要處理的所述額外命令的命令。
特定實(shí)施方案可包括以下特征中的一者或一者以上。喚醒所述微控制器以處理所 述額外命令可包括喚醒所述微控制器以解碼與所述經(jīng)擴(kuò)充的命令相關(guān)聯(lián)的操作碼???從用戶接收所述額外命令及所述經(jīng)擴(kuò)充的命令。所述命令解碼狀態(tài)機(jī)可操作以獨(dú)立于 所述微控制器來(lái)處理命令。所述數(shù)字控制器系統(tǒng)可進(jìn)一步包括與所述微控制器介接的 存儲(chǔ)器。所述命令解碼狀態(tài)機(jī)可以是用于接收用戶命令及用戶數(shù)據(jù)的用戶接口。所述 存儲(chǔ)器可包含快閃存儲(chǔ)器、動(dòng)態(tài)RAM(DRAM)或靜態(tài)RAM(SRAM)中的一者。所述方法可進(jìn)一步包括響應(yīng)于所述命令解碼狀態(tài)機(jī)解碼經(jīng)定時(shí)的命令而喚醒所述微控制 器以處理所述經(jīng)定時(shí)的命令。所述經(jīng)定時(shí)的命令可以是需要多于一個(gè)時(shí)鐘循環(huán)才能完 全處理的命令。所述方法可進(jìn)一步包括接收所述數(shù)字控制器系統(tǒng)正以測(cè)試模式操作的 指示,以及使用所述經(jīng)擴(kuò)充的命令通知所述微控制器將要在所述測(cè)試模式期間處理的 測(cè)試模式命令。
一般來(lái)說(shuō),在另一方面,此說(shuō)明書(shū)描述一種數(shù)字控制器系統(tǒng)。所述數(shù)字控制器系 統(tǒng)包括可操作以解碼第一多個(gè)命令的命令解碼狀態(tài)機(jī),及微控制器。響應(yīng)于所述命令 解碼狀態(tài)機(jī)解碼經(jīng)擴(kuò)充的命令,所述命令解碼狀態(tài)機(jī)可操作以喚醒所述微控制器來(lái)處 理除所述第一多個(gè)命令中的命令之外的額外命令。所述經(jīng)擴(kuò)充的命令是通知所述微控 制器將要處理的所述額外命令的命令。
特定實(shí)施方案可包括以下特征中的一者或一者以上。所述數(shù)字控制器系統(tǒng)可進(jìn)一 步包括可操作以在所述微控制器處理所述額外命令之前存儲(chǔ)與所述經(jīng)擴(kuò)充的命令相 關(guān)聯(lián)的操作碼的寄存器。所述數(shù)字控制器系統(tǒng)可進(jìn)一步包括指示所述數(shù)字控制器系統(tǒng) 是否正以測(cè)試模式操作的測(cè)試模式信號(hào)。所述額外命令可包含操作碼。所述數(shù)字控制 器系統(tǒng)可進(jìn)一步包括可操作以在所述微控制器處理所述操作碼之前存儲(chǔ)所述操作碼 的寄存器。所述操作碼及所述經(jīng)擴(kuò)充的命令可由所述數(shù)字控制器系統(tǒng)從用戶接收。
一般來(lái)說(shuō),在另一方面,此說(shuō)明書(shū)描述命令解碼器,所述命令解碼器包括命令 解碼狀態(tài)機(jī),其可操作以解碼包括經(jīng)擴(kuò)充的命令的第一多個(gè)命令;及可由微控制器存 取的寄存器,其用于存儲(chǔ)與所述經(jīng)擴(kuò)充的命令相關(guān)聯(lián)的操作碼。所述命令解碼器可操 作以在所述命令解碼狀態(tài)機(jī)解碼所述經(jīng)擴(kuò)充的命令時(shí)喚醒所述微控制器。所述經(jīng)擴(kuò)充 的命令是通知所述微控制器將要處理的所述操作碼的命令。
特定實(shí)施方案可包括以下特征中的一者或一者以上??稍谥谱魉雒罱獯a器時(shí) 將所述第一多個(gè)命令及所述經(jīng)擴(kuò)充的命令硬連線到所述命令解碼狀態(tài)機(jī)中。所述命令 解碼器可進(jìn)一步包括同步邏輯,所述同步邏輯可操作以將所述命令解碼器接收的命令 從第一時(shí)鐘域同步到不同于所述第一時(shí)鐘域的第二時(shí)鐘域。
實(shí)施方案可提供以下優(yōu)點(diǎn)中的一者或一者以上。一種將狀態(tài)機(jī)用作用戶接口且將 微控制器(或協(xié)處理器、微處理器或其它狀態(tài)機(jī))用作到存儲(chǔ)器核心的編程及擦除接口 的混合方法提供編程靈活性、速度及功率之間的折衷。所述基于狀態(tài)機(jī)的命令解碼器 提供用于以下操作的構(gòu)件檢測(cè)及管理用戶命令;管理與命令(例如,地址、數(shù)據(jù)、 操作碼及旗標(biāo))相關(guān)的信息;控制系統(tǒng)時(shí)鐘以及在需要處理復(fù)雜命令(例如,經(jīng)定時(shí)的 命令)時(shí)喚醒所述微控制器。本文描述一種使用軟件可執(zhí)行命令的數(shù)字控制器系統(tǒng)。 在一個(gè)實(shí)施方案中,經(jīng)擴(kuò)充的命令包含單個(gè)特定命令序列??蓪⑺鰡蝹€(gè)命令連同所 述命令解碼器存儲(chǔ)于單獨(dú)操作碼寄存器中的(例如,8位)操作碼一起加以解譯。通過(guò) 實(shí)施8位操作碼寄存器及測(cè)試模式信號(hào),可支持高達(dá)256個(gè)額外用戶命令及256個(gè)額
外測(cè)試模式命令。使用經(jīng)擴(kuò)充的命令及與所述數(shù)字控制器系統(tǒng)相關(guān)聯(lián)的測(cè)試模式引腳 的組合可容易地實(shí)施通過(guò)固件利用微控制器的測(cè)試模式及調(diào)試特征。所述測(cè)試模式引
腳用于防止用戶意外地輸入測(cè)試模式命令,因?yàn)樗鰷y(cè)試引腳(在一個(gè)實(shí)施方案中)并 不接合到發(fā)送到消費(fèi)者的最終封裝部件中。所述測(cè)試模式及調(diào)試特征準(zhǔn)許在不需要單 獨(dú)測(cè)試控制器的情況下測(cè)試數(shù)字控制器(例如,在制造期間)。
圖1是根據(jù)本發(fā)明的一個(gè)實(shí)施方案的包括命令解碼器及微控制器的數(shù)字控制器 系統(tǒng)的框圖。
圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施方案的圖1的命令解碼器的框圖。 圖3圖解說(shuō)明根據(jù)本發(fā)明的一個(gè)實(shí)施方案操作圖1的數(shù)字控制器系統(tǒng)的方法。 圖4圖解說(shuō)明根據(jù)本發(fā)明的一個(gè)實(shí)施方案包括可由圖1的數(shù)字控制器系統(tǒng)執(zhí)行的 測(cè)試模式命令及經(jīng)擴(kuò)充的命令的表。
在各圖式中,相同的參考符號(hào)指示相同的元件。
具體實(shí)施例方式
本發(fā)明通常涉及數(shù)字控制器系統(tǒng),且更明確地說(shuō),涉及基于微控制器的快閃存儲(chǔ) 器數(shù)字控制器系統(tǒng)。呈現(xiàn)以下說(shuō)明以使所屬領(lǐng)域的技術(shù)人員能夠制作且使用本發(fā)明, 且是在專利申請(qǐng)案及其要求的上下文中提供所述說(shuō)明。所屬領(lǐng)域的技術(shù)人員將易知對(duì) 本文所述實(shí)施方案及一般原理和特征的各種修改。因此,并不打算將本發(fā)明限定于所 示的實(shí)施方案,而是賦予其與本文所述原理及特征相一致的最廣泛范圍。
圖1根據(jù)本發(fā)明的一個(gè)實(shí)施方案的包括(數(shù)字)存儲(chǔ)器控制器102及存儲(chǔ)器104 的數(shù)字控制器系統(tǒng)100的框圖。存儲(chǔ)器104可以是非易失性快閃存儲(chǔ)器或例如其它存 儲(chǔ)器,例如,靜態(tài)RAM (SRAM)或動(dòng)態(tài)RAM (DRAM)。存儲(chǔ)器控制器102包括命令 解碼器106、微控制器108及操作碼寄存器110。
在一個(gè)實(shí)施方案中,命令解碼器106用于基于所接收的數(shù)據(jù)(例如,數(shù)據(jù)112)執(zhí) 行(預(yù)定)簡(jiǎn)單命令(或命令序列)的狀態(tài)機(jī)。實(shí)例性簡(jiǎn)單命令包括讀取、寫(xiě)入、拷貝、 擦除等等。因此,在此實(shí)施方案中,當(dāng)狀態(tài)機(jī)執(zhí)行簡(jiǎn)單命令時(shí),微控制器108保持休 眠以節(jié)省功率。在一個(gè)實(shí)施方案中,命令解碼器106是用于根據(jù)用戶時(shí)鐘114從用戶 接收數(shù)據(jù)112的用戶接口。不同于包括狀態(tài)機(jī)的常規(guī)存儲(chǔ)器控制器(或數(shù)字控制器), 存儲(chǔ)器控制器106進(jìn)一步包括微控制器108及操作碼寄存器110 (其準(zhǔn)許存儲(chǔ)器控制 器106處理未被硬連線到狀態(tài)機(jī)中的額外命令)。雖然顯示微控制器(例如,微控制 器108)耦合到命令解碼器106,但還可實(shí)施協(xié)處理器、微處理器或狀態(tài)機(jī)(或微控制器、 協(xié)處理器、微處理器或狀態(tài)機(jī)的組合)以執(zhí)行本文所述的微控制器108的功能。
因此,在一個(gè)實(shí)施方案中,命令解碼器106提供可通過(guò)存儲(chǔ)器控制器102處理的 命令的可擴(kuò)充性。由于將解碼的多數(shù)命令通常是預(yù)定的且被并入到硬件(例如,ROM 或狀態(tài)機(jī))中,因此需要具有將新命令添加到軟件中的能力。在一個(gè)實(shí)施方案中,命
令解碼器106通過(guò)使用一個(gè)或一個(gè)以上經(jīng)擴(kuò)充的命令來(lái)提供此命令可擴(kuò)充性。當(dāng)經(jīng)擴(kuò)
充的命令發(fā)送到命令解碼器106時(shí),(在一個(gè)實(shí)施方案中)用戶也發(fā)生存儲(chǔ)于操作碼寄 存器110中的對(duì)應(yīng)(例如,8位)操作碼。命令解碼器106接著喚醒微控制器108,且通 知微控制器108存在經(jīng)擴(kuò)充的命令。當(dāng)微控制器108發(fā)現(xiàn)命令解碼器106已解碼經(jīng)擴(kuò) 充的命令時(shí),微控制器108讀取存儲(chǔ)于操作碼寄存器110中的操作碼且處理(或執(zhí)行) 所述操作碼。微控制器108可經(jīng)編程以解碼操作碼且執(zhí)行(例如)在構(gòu)造命令解碼器 106時(shí)未曾設(shè)想到的指令序列。在一個(gè)實(shí)施方案中,8位操作碼提供可在存儲(chǔ)器控制 器102巳制成之后(例如,在已設(shè)定及固定狀態(tài)機(jī)之后)添加256個(gè)額外命令的可能 性。此外,在一個(gè)實(shí)施方案中,提供準(zhǔn)許存儲(chǔ)器控制器102支持高達(dá)(例如)256個(gè)額 外測(cè)試模式命令的測(cè)試模式信號(hào)。在此實(shí)施方案中,可使用測(cè)試模式信號(hào)的值來(lái)指示 命令解碼器106是否處于測(cè)試模式中。更一般來(lái)說(shuō),操作碼寄存器可經(jīng)配置以存儲(chǔ)任 何位大小的操作碼,且因此,可支持多于或少于256個(gè)額外命令(包括測(cè)試模式命令)。
在一個(gè)實(shí)施方案中,命令解碼器106可操作以檢測(cè)以下類型的命令-直接用戶命 令、經(jīng)定時(shí)的命令(包括經(jīng)擴(kuò)充的命令)及暫停/恢復(fù)命令。直接用戶命令是通常在微控 制器108休眠時(shí)由命令解碼器106處理的命令。因此,存儲(chǔ)器控制器102可操作以高 速度且具有功率效率地處理直接用戶命令。經(jīng)定時(shí)的命令是無(wú)法在一個(gè)循環(huán)中執(zhí)行的 命令,而是需要發(fā)生一系列事件才能完全執(zhí)行所述命令。在一個(gè)實(shí)施方案中,微控制 器108處理經(jīng)定時(shí)的命令且,因此命令解碼器106喚醒微控制器108以處理經(jīng)定時(shí)的 命令。經(jīng)定時(shí)的命令的實(shí)例包括與以下相關(guān)的命令編程及擦除存儲(chǔ)器104、設(shè)定或 清除非易失性鎖定位、從存儲(chǔ)器104的頁(yè)轉(zhuǎn)移以及各種測(cè)試模式及經(jīng)擴(kuò)充的命令。暫 停命令是中斷當(dāng)前正執(zhí)行的經(jīng)定時(shí)的命令的命令。在一個(gè)實(shí)施方案中,命令解碼器 106在微控制器108正執(zhí)行經(jīng)定時(shí)的命令時(shí)產(chǎn)生針對(duì)微控制器108的中斷。暫停命令 序列可包含在與存儲(chǔ)器控制器102相關(guān)聯(lián)的中斷處理程序中。恢復(fù)命令是喚醒微控制 器108以使得微控制器108可在微控制器108先前停止的點(diǎn)處恢復(fù)對(duì)代碼的執(zhí)行。
圖2圖解說(shuō)明根據(jù)本發(fā)明的一個(gè)實(shí)施方案的命令解碼器106(圖l)的框圖。如圖2 中所示,命令解碼器106包括命令解碼狀態(tài)機(jī)201、暫停/恢復(fù)寄存器202、微控制器 可存取寄存器203及同步邏輯204,同步邏輯204的功能更詳細(xì)地描述于2005年11 月28日申請(qǐng)的序號(hào)為11/288,753且標(biāo)題為"用于基于微控制器的快閃存儲(chǔ)器數(shù)字控 制器系統(tǒng)的命令解碼器(Command Decoder For Microcontroller Based Flash Memory Digital Controller System)"的共同待決美國(guó)專利申請(qǐng)案中,所述專利申請(qǐng)案轉(zhuǎn)讓給 本申請(qǐng)案的受讓人且以引用的方式并入本文中。同步邏輯204的功能進(jìn)一步更詳細(xì)地 描述于2005年8月17日申請(qǐng)的序號(hào)為11/206,474且標(biāo)題為"用于同步存儲(chǔ)器控制器 中不同時(shí)鐘域之間的數(shù)據(jù)的方法及設(shè)備(Method and Apparatus For Synchronizing Data Between Different Clock Domains in a Memory Controller)"的共同待決美國(guó)專利申請(qǐng) 案中,所述申請(qǐng)案轉(zhuǎn)讓給本申請(qǐng)案的受讓人且以引用的方式并入本文中。
一般來(lái)說(shuō),命令解碼狀態(tài)機(jī)201解碼用戶命令并根據(jù)兩個(gè)不同的時(shí)鐘域操作,所
述兩個(gè)不同時(shí)鐘域是(不同步的)用戶時(shí)鐘(例如,用戶時(shí)鐘114)及(同步的)數(shù)字時(shí)鐘(其 與存儲(chǔ)器控制器102相關(guān)聯(lián))。用戶時(shí)鐘以由用戶的存取序列所確定的速度(或頻率) 運(yùn)行。與存儲(chǔ)器控制器102相關(guān)聯(lián)的數(shù)字時(shí)鐘通常以相對(duì)于用戶時(shí)鐘較低的速度(或 頻率)運(yùn)行。所述兩個(gè)時(shí)鐘域允許存儲(chǔ)器控制器102以用戶所需的速度接收命令,而 不必使用戶等待來(lái)自基于循環(huán)的微控制器108的信號(hào)。暫停/恢復(fù)寄存器202存儲(chǔ)暫 停及隨后恢復(fù)命令時(shí)的狀態(tài)信息。微控制器可存取寄存器203包含可由微控制器 108(圖l)存取的多個(gè)寄存器。在一個(gè)實(shí)施方案中,微控制器可存取寄存器203包括用 于存儲(chǔ)待由微控制器108處理的操作碼的操作碼寄存器(例如,圖1的操作碼寄存器 110)。同步邏輯204使所述域同步并確保信號(hào)以確定且有序的方式從用戶域跨越到存 儲(chǔ)器控制器域。在一個(gè)實(shí)施方案中,同步邏輯204還同步喚醒信號(hào)以喚醒微控制器 108來(lái)處理(例如)經(jīng)定時(shí)的命令。
圖3圖解說(shuō)明根據(jù)本發(fā)明的一個(gè)實(shí)施方案操作數(shù)字控制器系統(tǒng)(例如,圖1的數(shù) 字控制器系統(tǒng)100)的方法300。命令解碼器(例如,命令解碼器106)接收命令(步驟302)。 在一個(gè)實(shí)施方案中,所述命令可以是測(cè)試模式命令、經(jīng)定時(shí)的命令、暫停/恢復(fù)命令 或直接用戶命令。作出關(guān)于所述命令是否是測(cè)試模式命令的確定(步驟304)。如果所 述命令是測(cè)試模式命令,那么命令解碼器執(zhí)行測(cè)試模式命令(步驟306)。在一個(gè)實(shí)施 方案中,測(cè)試模式允許在解碼測(cè)試模式命令時(shí)直接存取必要的測(cè)試模式信號(hào)。在一個(gè) 實(shí)施方案中,例如,測(cè)試模式允許直接存取與微控制器108相關(guān)聯(lián)的地址及數(shù)據(jù)總線 上的RAM、 ROM及寄存器。在一個(gè)實(shí)施方案中,僅可在微控制器108休眠時(shí)存取測(cè) 試模式以防止競(jìng)爭(zhēng)。
如果將所述命令確定為經(jīng)定時(shí)的命令(在步驟308中),那么喚醒與數(shù)字控制器系 統(tǒng)相關(guān)聯(lián)的微控制器(例如,微控制器108)(步驟310)。所述微控制器接著執(zhí)行(或處理) 經(jīng)定時(shí)的命令(步驟312)。如上所論述,經(jīng)定時(shí)的命令包括經(jīng)擴(kuò)充的命令。在一個(gè)實(shí) 施方案中,當(dāng)用戶發(fā)送經(jīng)擴(kuò)充的命令時(shí),所述用戶還發(fā)送存儲(chǔ)于操作碼寄存器(例如, 操作碼寄存器IIO)中的(例如,8位)操作碼。命令解碼器喚醒微控制器且所述微控制 器接著執(zhí)行存儲(chǔ)于操作碼寄存器中的操作碼。
如果將所述命令確定為暫?;蚧謴?fù)命令(在步驟314中),那么相應(yīng)地中斷或喚醒 微控制器(步驟316)。因此,如果命令是暫停命令,那么暫停微控制器的命令執(zhí)行(步 驟318)。以類似的方式,如果命令是恢復(fù)命令,那么喚醒微控制器并恢復(fù)命令執(zhí)行(步 驟318)。如果命令是直接用戶命令,那么由命令解碼器執(zhí)行所述命令(步驟320)。
圖4圖解說(shuō)明包括可根據(jù)本發(fā)明的一個(gè)實(shí)施方案通過(guò)圖1的數(shù)字控制器系統(tǒng)100 處理的測(cè)試模式命令及經(jīng)擴(kuò)展的命令的表400。表400圖解說(shuō)明使用經(jīng)擴(kuò)展的命令代 碼的測(cè)試模式命令序列(即,測(cè)試模式命令)的實(shí)例且還圖解說(shuō)明不使用經(jīng)擴(kuò)展的命令 代碼的測(cè)試模式命令序列的實(shí)例??蓮谋?00中看出一些測(cè)試模式命令序列涉及在第 三總線循環(huán)期間將10設(shè)定到經(jīng)擴(kuò)展的命令代碼值。當(dāng)微控制器108(圖l)發(fā)現(xiàn) CMDCODE寄存器(未顯示)指示已接收到經(jīng)擴(kuò)展的命令時(shí),那么微控制器108將從操
作碼寄存器IIO(圖1)以及地址及數(shù)據(jù)寄存器讀取代碼以決定做什么。存儲(chǔ)于操作碼寄 存器110中的代碼可由用戶(例如,在測(cè)試模式命令的情況下為測(cè)試工程師)在第三總 線循環(huán)期間提供于地址總線上。例如,表400中將經(jīng)擴(kuò)展的命令用于測(cè)試目的的第一 命令是"加載修整默認(rèn)"命令。可看出在第三總線循環(huán)期間,在10上驅(qū)動(dòng)EC以指 示在地址總線上提供0x01的經(jīng)擴(kuò)展的命令及操作碼。
對(duì)于使用經(jīng)擴(kuò)展的命令的測(cè)試模式命令,在一個(gè)實(shí)施方案中,由微控制器108 處理基于操作碼、地址及數(shù)據(jù)的命令執(zhí)行。在一個(gè)實(shí)施方案中,對(duì)于具有與其相關(guān)聯(lián) 的特定命令(例如,"進(jìn)入AVR寄存器讀取模式"或"進(jìn)入數(shù)據(jù)SRAM讀取模式") 的測(cè)試模式,命令解碼器106設(shè)定控制各種多路復(fù)用器(未顯示)的內(nèi)部旗標(biāo),因此允 許用戶直接存取寄存器或RAM。另外,如果(例如)在寫(xiě)入到寄存器或讀取及寫(xiě)入 SRAM或ROM時(shí)需要時(shí)鐘,那么使用時(shí)鐘脈沖產(chǎn)生器電路(未顯示)以通過(guò)檢測(cè)地址 總線上的地址改變來(lái)創(chuàng)建時(shí)鐘。
本發(fā)明提供一種用于擴(kuò)充數(shù)字控制器系統(tǒng)的命令集的系統(tǒng)及方法。盡管巳根據(jù)所 示實(shí)施方案描述了本發(fā)明,但所屬領(lǐng)域的技術(shù)人員將容易地認(rèn)識(shí)到,所述實(shí)施方案可 有若干變化形式且任何變化形式都將在本發(fā)明的范圍內(nèi)。例如,可以不同次序執(zhí)行上 述方法且仍可達(dá)到所需的結(jié)果。另外,操作碼寄存器110可經(jīng)配置以存儲(chǔ)任何位大小 的操作碼。因此,所屬領(lǐng)域的技術(shù)人員可在不背離上述權(quán)利要求書(shū)的范圍的情況下對(duì) 本發(fā)明做許多修改。
權(quán)利要求
1、一種用于包括命令解碼狀態(tài)機(jī)及微控制器的數(shù)字控制器系統(tǒng)的操作方法,所述方法包含通過(guò)所述命令解碼狀態(tài)機(jī)解碼第一多個(gè)命令;及響應(yīng)于所述命令解碼狀態(tài)機(jī)解碼經(jīng)擴(kuò)展的命令,喚醒所述微控制器以處理除所述第一多個(gè)命令中的命令之外的額外命令,所述經(jīng)擴(kuò)展的命令是通知所述微控制器將要處理的所述額外命令的命令。
2、 如權(quán)利要求l所述的方法,其中喚醒所述微控制器以處理所述額外命令包括 喚醒所述微控制器以解碼與所述經(jīng)擴(kuò)展的命令相關(guān)聯(lián)的操作碼。
3、 如權(quán)利要求2所述的方法,其中從用戶接收所述額外命令及所述經(jīng)擴(kuò)展的命令。
4、 如權(quán)利要求1所述的方法,其中所述命令解碼狀態(tài)機(jī)可操作以獨(dú)立于所述微 控制器來(lái)處理命令。
5、 如權(quán)利要求l所述的方法,其中所述數(shù)字控制器系統(tǒng)進(jìn)一步包括與所述微控制器介接的存儲(chǔ)器,且其中所述命令解碼狀態(tài)機(jī)是用于接收用戶命令及用戶數(shù)據(jù)的用 戶接口。
6、 如權(quán)利要求5所述的方法,其中所述存儲(chǔ)器包含快閃存儲(chǔ)器、動(dòng)態(tài)RAM (DRAM)或靜態(tài)RAM (SRAM)中的一者。
7、 如權(quán)利要求1所述的方法,其進(jìn)一步包含響應(yīng)于所述命令解碼狀態(tài)機(jī)解碼經(jīng) 定時(shí)的命令,喚醒所述微控制器以處理所述經(jīng)定時(shí)的命令,所述經(jīng)定時(shí)的命令是需要 多于一個(gè)時(shí)鐘循環(huán)才能完全處理的命令。
8、 如權(quán)利要求l所述的方法,其進(jìn)一步包含 接收所述數(shù)字控制器系統(tǒng)正以測(cè)試模式操作的指示;及使用所述經(jīng)擴(kuò)展的命令來(lái)通知所述微控制器在所述測(cè)試模式期間將要處理的測(cè) 試模式命令。
9、 一種數(shù)字控制器系統(tǒng),其包含命令解碼狀態(tài)機(jī),其可操作以解碼第一多個(gè)命令;及 微控制器,其中,響應(yīng)于所述命令解碼狀態(tài)機(jī)解碼經(jīng)擴(kuò)展的命令,所述命令解碼狀態(tài)機(jī)可操 作以喚醒所述微控制器來(lái)處理除所述第一多個(gè)命令中的命令之外的額外命令,所述經(jīng) 擴(kuò)展的命令是通知所述微控制器將要處理的所述額外命令的命令。
10、 如權(quán)利要求9所述的數(shù)字控制器系統(tǒng),其中所述額外命令包含操作碼,且所 述數(shù)字控制器系統(tǒng)進(jìn)一步包含可操作以在所述微控制器處理所述操作碼之前存儲(chǔ)所 述操作碼的寄存器。
11、 如權(quán)利要求10所述的數(shù)字控制器系統(tǒng),其中所述操作碼及所述經(jīng)擴(kuò)展的命 令是由所述數(shù)字控制器系統(tǒng)從用戶接收的。
12、 如權(quán)利要求9所述的數(shù)字控制器系統(tǒng),其中所述命令解碼狀態(tài)機(jī)可操作以獨(dú)立于所述微控制器來(lái)處理命令。
13、 如權(quán)利要求9所述的數(shù)字控制器系統(tǒng),其中所述數(shù)字控制器系統(tǒng)進(jìn)一步包括 與所述微控制器介接的存儲(chǔ)器,且其中所述命令解碼狀態(tài)機(jī)是用于接收用戶命令及用 戶數(shù)據(jù)的用戶接口。
14、 如權(quán)利要求13所述的數(shù)字控制器系統(tǒng),其中所述存儲(chǔ)器包含快閃存儲(chǔ)器、 動(dòng)態(tài)RAM (DRAM)或靜態(tài)RAM (SRAM)中的一者。
15、 如權(quán)利要求9所述的數(shù)字控制器系統(tǒng),其中響應(yīng)于命令解碼狀態(tài)機(jī)解碼經(jīng)定 時(shí)的命令,所述命令解碼狀態(tài)機(jī)可操作以喚醒所述微控制器來(lái)處理所述經(jīng)定時(shí)的命 令,所述經(jīng)定時(shí)的命令是需要多于一個(gè)時(shí)鐘循環(huán)才能完全處理的命令。
16、 如權(quán)利要求9所述的數(shù)字控制器系統(tǒng),其進(jìn)一步包含用以指示所述數(shù)字控制 器系統(tǒng)是否正以測(cè)試模式操作的測(cè)試模式信號(hào)。
17、 一種命令解碼器,其包含命令解碼狀態(tài)機(jī),其可操作以解碼包括經(jīng)擴(kuò)展的命令的第一多個(gè)命令;及 可由微控制器存取的多個(gè)寄存器,其用于存儲(chǔ)與所述經(jīng)擴(kuò)展的命令相關(guān)聯(lián)的操作碼,其中所述命令解碼器可操作以在所述命令解碼狀態(tài)機(jī)解碼所述經(jīng)擴(kuò)展的命令時(shí) 喚醒所述微控制器,所述經(jīng)擴(kuò)展的命令是通知所述微控制器將要處理的所述操作碼的 命令。
18、 如權(quán)利要求17所述的命令解碼器,其中所述第一多個(gè)命令及所述經(jīng)擴(kuò)展的 命令在制作所述命令解碼器時(shí)被硬連線到所述命令解碼狀態(tài)機(jī)中。
19、 如權(quán)利要求17所述的命令解碼器,其中所述命令解碼狀態(tài)機(jī)可操作以獨(dú)立 于所述微控制器處理命令。
20、 如權(quán)利要求17所述的命令解碼器,其中響應(yīng)于所述命令解碼狀態(tài)機(jī)解碼經(jīng) 定時(shí)的命令,所述命令解碼器可操作以喚醒所述微控制器來(lái)處理所述經(jīng)定時(shí)的命令, 所述經(jīng)定時(shí)的命令是需要多于一個(gè)時(shí)鐘循環(huán)才能完全處理的命令。
21、 如權(quán)利要求17所述的命令解碼器,其進(jìn)一步包含一個(gè)或一個(gè)以上暫停寄存 器,所述一個(gè)或一個(gè)以上暫停寄存器用于在所述微控制器的處理被中斷時(shí)存儲(chǔ)與所述 微控制器相關(guān)聯(lián)的狀態(tài)信息。
22、 如權(quán)利要求21所述的命令解碼器,其進(jìn)一步包含同步邏輯,所述同步邏輯 可操作以將所述命令解碼器接收的命令從第一時(shí)鐘域同步到不同于所述第一時(shí)鐘域 的第二時(shí)鐘域。
全文摘要
本發(fā)明提供一種用于擴(kuò)充存儲(chǔ)器控制器的命令集的系統(tǒng)及方法。在一個(gè)實(shí)施方案中,所述方法包括通過(guò)命令解碼狀態(tài)機(jī)解碼第一多個(gè)命令,且響應(yīng)于所述命令解碼狀態(tài)機(jī)解碼經(jīng)擴(kuò)展的命令而喚醒所述微控制器以處理除所述第一多個(gè)命令中的命令之外的額外命令。所述經(jīng)擴(kuò)展的命令是通知所述微控制器將要處理的所述額外命令的命令。
文檔編號(hào)G06F12/00GK101395585SQ200780007506
公開(kāi)日2009年3月25日 申請(qǐng)日期2007年3月2日 優(yōu)先權(quán)日2006年3月2日
發(fā)明者丹尼爾·斯科特·科恩 申請(qǐng)人:愛(ài)特梅爾公司