專利名稱:具有在庫式存儲器中的線性存儲器的微控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集成式微控制器,且更確切地說,涉及微控制器的存儲器存取。
背景技術(shù):
可線性存取的數(shù)據(jù)存儲器空間需要大量存儲器字節(jié)(例如,隨機存取存儲器 (RAM)字節(jié))在地址空間中相連地放置且為可尋址的。線性存儲器可于是經(jīng)由長度取決于 RAM的大小的地址而完全尋址。具有長指令的微控制器(例如,32位微控制器或具有多個指令字的微控制器)可將此長地址容易地嵌入于指令的運算碼(op-code)內(nèi)。然而,較小架構(gòu)(例如,具有有效的有限指令長度的8位架構(gòu))通常使用(例如)10個位至15個位的指令大小,所述指令大小不允許存儲長地址。即使多個字指令可容納較長地址,此情形仍阻遏壓縮編碼,這些處理器架構(gòu)可能不能夠?qū)Υ缶€性地址空間直接尋址。因此,存儲器編庫 (memory banking)為對較大存儲器提供完全存取的有效方式。在存儲器編庫中,僅有限量 (即,單一存儲器庫)通過指針而可用。指令可于是含有存取選定存儲器庫內(nèi)的所有存儲器位置的足夠位。為了切換到選定庫外的存儲器位置,需要修改指針。舉例來說,許多RISC架構(gòu)微控制器可僅經(jīng)由其指令直接存取存儲器的有限量的字節(jié)(例如,32或64個字節(jié))。通過使用32或64個字節(jié)的多個庫,可存取額外存儲器。 微控制器大體上為單一芯片上的具有外圍裝置的微處理器或中央處理單元(CPU)與存儲器的組合。因此,使用存儲器編庫概念的微控制器另外面對以下問題用于(例如)控制這些外圍裝置及內(nèi)部功能的許多特殊功能寄存器需要由指令集存取。因此,這些特殊功能寄存器通過將其映射到數(shù)據(jù)存儲器中而可用。因為對一些特殊功能寄存器的存取在執(zhí)行程序時為關(guān)鍵的,所以在許多微控制器中,這些特殊功能寄存器中的一些需要始終為可用的。舉例來說,如果特殊功能寄存器僅可經(jīng)由存儲器存取,則用于選擇存儲器庫的特殊功能寄存器需要始終為可存取的,否則,用戶將陷于并未使此寄存器可用的存儲器庫中。為適應(yīng)此情形,在許多微控制器中,數(shù)據(jù)存儲器映射將最小數(shù)目個這些特殊功能寄存器(SFR)放置于存儲器的每一庫中。然而,此情形致使數(shù)據(jù)存儲器不相連,因為未經(jīng)映射的存儲器塊由經(jīng)存儲器映射的寄存器分開。
發(fā)明內(nèi)容
因此,需要一種具有庫式存儲器的微控制器,所述庫式存儲器還提供比存儲器庫
4大的線性存儲器空間。根據(jù)一實施例,一種微控制器可包含數(shù)據(jù)存儲器,其被劃分成多個存儲器庫;地址多路復(fù)用器,其用于將地址提供到所述數(shù)據(jù)存儲器;指令寄存器,其將第一部分地址提供到所述地址多路復(fù)用器的第一輸入端;未映射到所述數(shù)據(jù)存儲器的庫選擇寄存器,其用于將第二部分地址提供到所述地址多路復(fù)用器的第一輸入端;及多個特殊功能寄存器,其映射到所述數(shù)據(jù)存儲器,其中所述多個特殊功能寄存器包含與所述地址多路復(fù)用器的第二輸入端耦合的間接存取寄存器,且其中所述數(shù)據(jù)存儲器包含形成線性數(shù)據(jù)存儲器的塊的未被映射特殊功能寄存器的所述多個存儲器庫中的一個以上存儲器庫。根據(jù)另一實施例,所述數(shù)據(jù)存儲器可包含η個存儲器庫,且m個存儲器庫形成線性數(shù)據(jù)存儲器的所述塊。根據(jù)另一實施例,η = 8且m = 4。根據(jù)另一實施例,所述特殊功能寄存器可存儲器映射到除所述m個存儲器庫外的所有存儲器庫的下方部分。根據(jù)另一實施例,除所述m個存儲器庫外的所有存儲器庫的偶數(shù)存儲器庫及奇數(shù)存儲器庫各自可含有不同組的經(jīng)存儲器映射的特殊功能寄存器。根據(jù)另一實施例,所述特殊功能寄存器可包含虛擬寄存器,且其中對所述虛擬寄存器的讀取或?qū)懭氪嫒∈褂盟鲩g接存取寄存器而引起間接數(shù)據(jù)存儲器存取。根據(jù)另一實施例,所述特殊功能寄存器可包含用于執(zhí)行快閃存儲器的編程的寄存器。根據(jù)另一實施例,所述特殊功能寄存器可選自由以下各者組成的群組程序計數(shù)器寄存器、狀態(tài)寄存器、定時器寄存器、端口寄存器、振蕩器校準(zhǔn)寄存器。根據(jù)另一實施例,所述微控制器可為使用12位指令字的8位微控制器。根據(jù)又一實施例,一種用于對微控制器的存儲器(其中所述存儲器被劃分成多個存儲器庫)尋址的方法可包含以下步驟僅經(jīng)由存儲器映射而提供對特殊功能寄存器的存取,其中間接尋址寄存器映射到至少一個存儲器庫;在無寄存器映射的情況下,在所述存儲器內(nèi)提供多個存儲器庫,借此形成線性存儲器塊;提供未經(jīng)存儲器映射的庫選擇寄存器; 其中對于直接尋址通過所述庫選擇寄存器選擇存儲器庫;及通過由指令寄存器提供的地址對所述選定存儲器庫尋址;且其中對于間接尋址使用由所述經(jīng)存儲器映射的間接尋址寄存器提供的地址。根據(jù)另一實施例,所述數(shù)據(jù)存儲器可包含η個存儲器庫,且m個存儲器庫可形成所述線性存儲器塊。根據(jù)另一實施例,η = 8且m = 4。根據(jù)另一實施例,所述方法可進一步包含將所述特殊功能寄存器存儲器映射到除所述m個存儲器庫外的所有存儲器庫的下方部分的步驟。根據(jù)另一實施例,除所述m個存儲器庫外的所有存儲器庫的偶數(shù)存儲器庫及奇數(shù)存儲器庫各自可含有不同組的經(jīng)存儲器映射的特殊功能寄存器。根據(jù)另一實施例,間接尋址可由對虛擬寄存器的讀取或?qū)懭氪嫒?zhí)行。根據(jù)另一實施例,所述特殊功能寄存器可包含用于執(zhí)行快閃存儲器的編程的寄存器。根據(jù)另一實施例,所述特殊功能寄存器可選自由以下各者組成的群組程序計數(shù)器寄存器、狀態(tài)寄存器、定時器寄存器、端口寄存器、振蕩器校準(zhǔn)寄存器。根據(jù)另一實施例,所述微控制器可為使用12位指令字的8位微控制器。根據(jù)又一實施例,一種微控制器可包含數(shù)據(jù)存儲器,其被劃分成多個存儲器庫, 其中所述存儲器內(nèi)的多個存儲器庫無經(jīng)映射的特殊功能寄存器,借此形成線性存儲器塊; 特殊功能寄存器,其映射到所述數(shù)據(jù)存儲器,所述特殊功能寄存器可僅經(jīng)由所述存儲器由所述微控制器存取,其中間接尋址寄存器映射到至少一個存儲器庫;未經(jīng)存儲器映射的庫選擇寄存器;其中所述微控制器針對直接尋址可操作以通過所述庫選擇寄存器選擇存儲器庫;且通過由指令寄存器提供的地址對所述選定存儲器庫尋址;且針對間接尋址可操作以使用由所述經(jīng)存儲器映射的間接尋址寄存器提供的地址。根據(jù)另一實施例,所述數(shù)據(jù)存儲器可包含8個存儲器庫,且四個存儲器庫形成所述線性存儲器塊。根據(jù)另一實施例,所述特殊功能寄存器可存儲器映射到除所述四個存儲器庫外的所有存儲器庫的下方部分。根據(jù)另一實施例,除所述四個存儲器庫外的所述所有存儲器庫的偶數(shù)存儲器庫及奇數(shù)存儲器庫各自可含有不同組的經(jīng)存儲器映射的特殊功能寄存器。
圖1展示常規(guī)微控制器的框圖;圖2展示根據(jù)一實施例的示范性微控制器的框圖;圖3為展示常規(guī)庫式存儲器的框圖;圖4展示偶數(shù)庫及奇數(shù)庫各自含有不同組的特殊功能寄存器的示范性映射;圖5展示根據(jù)一實施例的存儲器映射;及圖6展示根據(jù)一實施例的256字節(jié)數(shù)據(jù)存儲器的示范性映射。
具體實施例方式根據(jù)本發(fā)明的教示,提供未經(jīng)存儲器映射的庫選擇寄存器(BSR)以用于選擇用于直接尋址的多個存儲器庫中的一者。存儲器映射寄存器用于獨立于選定存儲器庫的間接尋址。特殊化編庫指令(例如,“將文字移動到BSR寄存器(MOVLB) ”)的添加允許存儲器的庫中的所有數(shù)據(jù)字節(jié)用于通用數(shù)據(jù),且因此,允許進行跨越不含有任何經(jīng)映射的特殊功能寄存器的多個存儲器庫的相連尋址。因此,選擇作用中存儲器庫的BSR寄存器未在數(shù)據(jù)寄存器中映射,但可能可通過特殊化命令存取。因此,可獲得其中并不具有或需要特殊寄存器的多個存儲器庫。此情形允許經(jīng)由間接尋址寄存器(FSR)對存儲器的相鄰庫間接尋址,而不必擔(dān)心或需要每一存儲器庫中的特殊功能寄存器(SFR)。此情形允許進行(例如)用作緩沖器、表、高速暫存存儲器區(qū) (scratch pad area)等的存儲器的較大塊的尋址??梢虼藢嵤┦褂帽葞焓酱鎯ζ鞔笮〈蟮臄?shù)據(jù)結(jié)構(gòu)的任何功能。圖1展示具有可通過編庫機制存取的數(shù)據(jù)存儲器的常規(guī)微控制器的簡化框圖。程序存儲器110存儲形成可執(zhí)行程序的多個指令。程序計數(shù)器115可被設(shè)計成具有(例如) 用于對業(yè)線性程序存儲器進行尋址的11個位??商峁┒褩?20以在執(zhí)行子例程時存儲程序計數(shù)器值。所展示的示范性微控制器為通過存儲于程序存儲器110中的12位指令字操作的8位哈佛(Harvard)型微控制器。因此,中央8位數(shù)據(jù)總線105可用以耦合所述微控制器內(nèi)的各種功能元件,例如,定時器單元0及外部端口 B 130。數(shù)據(jù)存儲器125與此總線 105耦合并從地址多路復(fù)用器140接收(例如)8位地址。對于直接尋址,地址多路復(fù)用器 140組合來自由指令寄存器135供應(yīng)的地址數(shù)據(jù)與由特殊功能寄存器145供應(yīng)的地址數(shù)據(jù)的地址。在直接尋址模式中,指令寄存器135因此供應(yīng)下方5個位,且特殊功能寄存器145 供應(yīng)上方3個位。因此,根據(jù)一實施例,特殊功能寄存器145作為能夠選擇8個不同存儲器庫中的一者的庫選擇寄存器而操作。在間接尋址中,特殊功能寄存器145提供具有所有位0至7的完整地址。通過存取為虛擬寄存器且因此并非為物理寄存器的特殊功能寄存器 INDF來實施間接尋址。對此寄存器INDF的任何讀取或?qū)懭氪嫒∑仁菇?jīng)由特殊功能寄存器 145將間接存取應(yīng)用于數(shù)據(jù)存儲器125。因此,替代讀取或?qū)懭爰拇嫫鱅NDF,執(zhí)行間接數(shù)據(jù)存儲器存取。根據(jù)各種實施例,指令寄存器135從程序存儲器110直接接收指令且(例如)經(jīng)由另一內(nèi)部8位總線與指令解碼及控制單元180耦合。指令解碼及控制單元180此外與由單元175提供的特定內(nèi)部功能耦合。舉例來說,此功能單元175可包括裝置復(fù)位定時器、開機復(fù)位件(power-on reset)、監(jiān)視定時器、內(nèi)部RC時鐘等??杉善渌δ芗?或可省略特定功能。時序產(chǎn)生單元185可提供內(nèi)部時序信號且也可與單元175耦合。圖1中所展示的常規(guī)8位微控制器核心具有與狀態(tài)寄存器150耦合的算術(shù)邏輯單元160 (ALU)。ALU 160 進一步與工作寄存器165耦合且一方面經(jīng)由多路復(fù)用器155從指令寄存器135及8位數(shù)據(jù)總線接收數(shù)據(jù),且另一方面從工作寄存器165接收數(shù)據(jù)。圖1因此僅展示微控制器核心的一些本質(zhì)結(jié)構(gòu)。其它內(nèi)部結(jié)構(gòu)為可能的且可與圖2中所展示的特定實施例組合,如將在下文中更詳細地解釋。圖3展示常規(guī)微控制器中的數(shù)據(jù)存儲器125的結(jié)構(gòu)及映射。如上文所提及,因為至少某一特殊功能寄存器必須始終為可用的,所以所有存儲器庫的地址OOh至(Fh中的最先16個數(shù)據(jù)字節(jié)含有16個特殊功能寄存器的值。這些特殊功能寄存器可與存儲器物理上分離。然而,映射架構(gòu)將此16個特殊功能寄存器映射到所有存儲器庫。在圖2中所展示的實施例中,每個存儲器庫在地址OOh至(Fh中含有相同特殊功能寄存器。然而,由于一些特殊功能寄存器較不關(guān)鍵,因此其可僅在每隔一個庫中存取。因此,可將16個以上的特殊功能寄存器映射到最先16個地址中。舉例來說,所有偶數(shù)庫及所有奇數(shù)庫分別具有同一映射結(jié)構(gòu)。圖4展示偶數(shù)庫及奇數(shù)庫各自含有不同組的特殊功能寄存器的示范性映射。舉例來說,所有偶數(shù)庫可具有映射到地址OOh至06h的以下特殊功能寄存器INDF-如果經(jīng)存取,則FSR用以間接對數(shù)據(jù)存儲器尋址。TMRO-定時器0模塊寄存器PCL-存儲程序計數(shù)器的低階位STATUS-含有CPU的典型狀態(tài)位FSR-庫選擇寄存器,含有3個位以選擇八個存儲器頁中的一者OSCCAL-振蕩器校準(zhǔn)寄存器PORTB-端口 B 寄存器可將以下寄存器映射到所有奇數(shù)存儲器庫的地址OOh至06h OOh-INDF-如果經(jīng)存取,則FSR用以間接對數(shù)據(jù)存儲器尋址。Olh-EECON-快閃存儲器的配置位02h-PCL-存儲程序計數(shù)器的低階位03h-STATUS-含有CPU的典型狀態(tài)位04h-FSR-庫選擇寄存器,含有3個位以選擇存儲器頁05h-EEDATA-快閃存儲器的自寫入數(shù)據(jù)寄存器06h-EEADR-快閃存儲器的自寫入地址
剩余地址07h至OFh對于偶數(shù)及奇數(shù)存儲器庫均為相同的。如圖3中所展示,每一庫的上方地址IOh至1 包含個別通用寄存器。然而,其形成個別小存儲器塊且不形成存儲器的一個線性塊。因此,如果(例如)表比一個庫中的通用寄存器的最大大小大,則所述表必須分散到一個以上庫,且要存取此表必須進行繁瑣的編程。圖2展示克服此限制的微控制器的一示范性實施例。大體來說,類似元件具有同一參考符號。圖2中所展示的數(shù)據(jù)存儲器RAM 225可與如圖1中所展示的存儲器相同。然而,不同參考符號用以指示以不同方式映射此RAM 225,如將在下文中更詳細地解釋。此數(shù)據(jù)存儲器現(xiàn)在包含由特殊功能寄存器未被映射到的多個連續(xù)存儲器庫組成的線性存儲器塊。提供額外庫選擇寄存器(BSI ) 210,其中此寄存器可經(jīng)由專用指令存取且因此未經(jīng)存儲器映射。此寄存器210的內(nèi)容提供由地址多路復(fù)用器220提供的地址的上方3個位,所述地址多路復(fù)用器220從指令寄存器135接收下方5個位。特殊功能寄存器FSR 145現(xiàn)在可為可獨立于當(dāng)前選定存儲器庫而用于整個線性數(shù)據(jù)存儲器的間接尋址的8位寄存器。在其它實施例中,可通過將位7永久設(shè)定成“1”而限制此寄存器以存取形成所述線性數(shù)據(jù)存儲器的上方4個庫。然而,此寄存器自身不再提供庫選擇功能。僅通過將相應(yīng)庫編號寫入到未經(jīng)存儲器映射的庫選擇寄存器210中而實現(xiàn)庫選擇。因此,即使當(dāng)選擇線性存儲器塊內(nèi)的存儲器庫時,專用指令仍允許改變成任何其它存儲器庫。圖5展示可如何將特殊功能寄存器映射到數(shù)據(jù)存儲器225的實施例。在此實施例中,僅下方四個庫用以提供對特殊功能寄存器的存取,而上方四個庫現(xiàn)在提供線性的相連數(shù)據(jù)存儲器空間。圖4還展示如何執(zhí)行直接及間接尋址。此處,未經(jīng)存儲器映射的寄存器 BSR 210提供庫選擇信息,借此將上方三個地址位提供給地址多路復(fù)用器220。指令寄存器提供下方5個地址位。多路復(fù)用器220組合此兩個地址數(shù)據(jù)部分以形成用以對數(shù)據(jù)存儲器 225進行尋址的8位地址。在其它實施例中,更多或更少位可用以形成地址。如果庫選擇寄存器210選擇下方四個存儲器庫中的一者,則可將所有地址OOh至(Fh映射回到庫0或交替地映射回到庫0或庫1,如將在圖6中更詳細地解釋。如上文所提及,上方四個存儲器庫不具有映射到其的特殊功能寄存器,且因此形成相連的線性數(shù)據(jù)存儲器。仍可使用庫選擇寄存器210及指令運算碼中所提供的地址信息經(jīng)由直接尋址來存取此線性存儲器塊。然而,直接尋址被限于僅在當(dāng)前選定庫內(nèi)執(zhí)行。因此,可或者經(jīng)由特殊功能寄存器FSR 245間接存取線性存儲器塊,所述特殊功能寄存器FSR 245現(xiàn)在可存儲能夠獨立于選定存儲器庫對數(shù)據(jù)存儲器225進行完全尋址的8位地址。因此,舉例來說,可簡單地經(jīng)由間接尋址存取具有(例如)1 個條目的表、高速暫存存儲器或緩沖器。通過此特殊功能寄存器245對整個數(shù)據(jù)存儲器進行的存取可經(jīng)由特殊指令來執(zhí)行或如果未實施此指令,則經(jīng)由對特殊功能寄存器INDF的讀取或?qū)懭氪嫒韴?zhí)行,如上文所解釋。由于庫選擇寄存器210未經(jīng)存儲器映射的事實,如上文所提及,保留特殊運算碼以執(zhí)行關(guān)于此寄存器的讀取及寫入功能。一個或一個以上專用指令提供對未經(jīng)存儲器映射的庫選擇寄存器210的直接存取。舉例來說,單一指令“將文字移動到BSR寄存器”(MOVLB) 可用以將數(shù)據(jù)傳送到庫選擇寄存器210中。庫選擇寄存器210的可用位取決于數(shù)據(jù)存儲器劃分成的存儲器庫的數(shù)目。在圖5及圖6中所展示的實例中,將數(shù)據(jù)存儲器劃分成八個存儲器庫,每一庫具有32個字節(jié)。因此,此實施例提供256個數(shù)據(jù)存儲器字節(jié),其中上方四個庫提供形成未由經(jīng)映射的特殊功能寄存器中斷的線性存儲器塊的1 個字節(jié)。
指令MOVLB在被解碼時提供對庫選擇寄存器的直接存取且(例如)將文字直接寫入到寄存器210中,其中(例如)僅傳送所述文字的下方3個位??墒褂闷渌幋a,且一個以上指令可用以對庫選擇寄存器210進行讀取及/或?qū)懭?。在其它實施方案中,可提供更多存儲器庫,且?guī)爝x擇寄存器210可具有能夠?qū)λ袔鞂ぶ返?個以上位。可提供其它額外專用指令。舉例來說,可提供讀取指令,或任何類型的算術(shù)或邏輯修改指令,例如,遞增及遞減、遮蔽或布爾函數(shù)(Boolean function) 0為此,可提供特殊功能寄存器210與ALU 160 的額外耦合,如由圖2中的點線所指示。圖6展示庫0及2各自含有與庫1及3不同組的特殊功能寄存器的256字節(jié)數(shù)據(jù)存儲器的示范性映射。舉例來說,可將以下特殊功能寄存器映射到庫0及2的地址OOh至 06h OOh-INDF-如果經(jīng)存取,則FSR用以間接對數(shù)據(jù)存儲器尋址。Olh-TMRO-定時器0模塊寄存器02h-PCL-存儲程序計數(shù)器的低階位03h-STATUS-含有CPU的典型狀態(tài)位04h-FSR-庫選擇寄存器,含有3個位以選擇存儲器頁
05h-0SCCAL-振蕩器校準(zhǔn)寄存器06h-P0RTB-端口 B 寄存器可將以下寄存器映射到庫1及3的地址OOh至06h OOh-INDF-如果經(jīng)存取,則FSR用以間接對數(shù)據(jù)存儲器尋址。Olh-EECON-快閃存儲器的配置位02h-PCL-存儲程序計數(shù)器的低階位03h-STATUS-含有CPU的典型狀態(tài)位04h-FSR-庫選擇寄存器,含有3個位以選擇一存儲器頁05h-EEDATA-快閃存儲器的自寫入數(shù)據(jù)寄存器06h-EEADR-快閃存儲器的自寫入地址哪一特殊功能寄存器映射到下方四個庫的選擇取決于特定實施方案且可變化。 且,存儲器庫的數(shù)目可更小或更大,用以形成線性存儲器塊的庫的數(shù)目亦然。雖然本發(fā)明的實施例已加以描繪、描述且參考本發(fā)明的實例實施例得以界定,但這些參考并非暗示對本發(fā)明的限制,且不應(yīng)推斷出此限制。所屬領(lǐng)域的技術(shù)人員將想到,且受益于本發(fā)明,所揭示的標(biāo)的物能夠在形式及功能上進行相當(dāng)大的修改、更改及等效物。本發(fā)明的所描繪并描述的實施例僅為實例,且并非對本發(fā)明的范圍的詳盡描述。
權(quán)利要求
1.一種微控制器,其包含數(shù)據(jù)存儲器,其被劃分成多個存儲器庫; 地址多路復(fù)用器,其用于將地址提供到所述數(shù)據(jù)存儲器; 指令寄存器,其將第一部分地址提供到所述地址多路復(fù)用器的第一輸入端; 未映射到所述數(shù)據(jù)存儲器的庫選擇寄存器,其用于將第二部分地址提供到所述地址多路復(fù)用器的所述第一輸入端;以及多個特殊功能寄存器,其映射到所述數(shù)據(jù)存儲器,其中所述多個特殊功能寄存器包含與所述地址多路復(fù)用器的第二輸入端耦合的間接存取寄存器,且其中所述數(shù)據(jù)存儲器包含形成無特殊功能寄存器被映射到的線性數(shù)據(jù)存儲器塊的所述多個存儲器庫中的一個以上存儲器庫。
2.根據(jù)權(quán)利要求1所述的微控制器,其中所述數(shù)據(jù)存儲器包含η個存儲器庫,且m個存儲器庫形成所述線性數(shù)據(jù)存儲器塊。
3.根據(jù)權(quán)利要求2所述的微控制器,其中η= 8且m = 4。
4.根據(jù)權(quán)利要求2所述的微控制器,其中所述特殊功能寄存器被存儲器映射到除所述 m個存儲器庫外的所有存儲器庫的下方部分。
5.根據(jù)權(quán)利要求4所述的微控制器,其中除所述m個存儲器庫外的所有存儲器庫的偶數(shù)存儲器庫及奇數(shù)存儲器庫各自含有一組不同的經(jīng)存儲器映射的特殊功能寄存器。
6.根據(jù)權(quán)利要求1所述的微控制器,其中所述特殊功能寄存器包含虛擬寄存器,且其中對所述虛擬寄存器的讀取或?qū)懭氪嫒∫鹗褂盟鲩g接存取寄存器的間接數(shù)據(jù)存儲器存取。
7.根據(jù)權(quán)利要求1所述的微控制器,其中所述特殊功能寄存器包含用于執(zhí)行快閃存儲器的編程的寄存器。
8.根據(jù)權(quán)利要求1所述的微控制器,其中所述特殊功能寄存器是選自由以下各者組成的群組程序計數(shù)器寄存器、狀態(tài)寄存器、定時器寄存器、端口寄存器、振蕩器校準(zhǔn)寄存器。
9.根據(jù)權(quán)利要求1所述的微控制器,其中所述微控制器為使用12位指令字的8位微控制器。
10.一種用于對微控制器的存儲器進行尋址的方法,其中所述存儲器被劃分成多個存儲器庫,所述方法包含以下步驟僅經(jīng)由存儲器映射而提供對特殊功能寄存器的存取,其中間接尋址寄存器被映射到至少一個存儲器庫;在無寄存器映射的情況下,在所述存儲器內(nèi)提供多個存儲器庫,借此形成線性存儲器塊;提供未經(jīng)存儲器映射的庫選擇寄存器; 其中對于直接尋址通過所述庫選擇寄存器選擇存儲器庫,以及通過由指令寄存器提供的地址對所述選定存儲器庫進行尋址;且其中對于間接尋址使用由所述經(jīng)存儲器映射的間接尋址寄存器提供的地址。
11.根據(jù)權(quán)利要求10所述的方法,其中所述數(shù)據(jù)存儲器包含η個存儲器庫,且m個存儲器庫形成所述線性存儲器塊。
12.根據(jù)權(quán)利要求11所述的方法,其中η= 8且m = 4。
13.根據(jù)權(quán)利要求11所述的方法,其包含將所述特殊功能寄存器存儲器映射到除所述 m個存儲器庫外的所有存儲器庫的下方部分的步驟。
14.根據(jù)權(quán)利要求13所述的方法,其中除所述m個存儲器庫外的所有存儲器庫的偶數(shù)存儲器庫及奇數(shù)存儲器庫各自含有一組不同的經(jīng)存儲器映射的特殊功能寄存器。
15.根據(jù)權(quán)利要求10所述的方法,其中通過對虛擬寄存器的讀取或?qū)懭氪嫒?zhí)行間接尋址。
16.根據(jù)權(quán)利要求10所述的方法,其中所述特殊功能寄存器包含用于執(zhí)行快閃存儲器的編程的寄存器。
17.根據(jù)權(quán)利要求10所述的方法,其中所述特殊功能寄存器是選自由以下各者組成的群組程序計數(shù)器寄存器、狀態(tài)寄存器、定時器寄存器、端口寄存器、振蕩器校準(zhǔn)寄存器。
18.根據(jù)權(quán)利要求10所述的方法,其中所述微控制器為使用12位指令字的8位微控制ο
19.一種微控制器,其包含數(shù)據(jù)存儲器,其被劃分成多個存儲器庫,其中所述存儲器內(nèi)的多個存儲器庫無經(jīng)映射的特殊功能寄存器,借此形成線性存儲器塊;特殊功能寄存器,其映射到所述數(shù)據(jù)存儲器,所述特殊功能寄存器可僅經(jīng)由所述存儲器由所述微控制器存取,其中間接尋址寄存器被映射到至少一個存儲器庫;未經(jīng)存儲器映射的庫選擇寄存器;其中所述微控制器可針對直接尋址操作以通過所述庫選擇寄存器選擇存儲器庫,且通過由指令寄存器提供的地址對所述選定存儲器庫進行尋址;且可針對間接尋址操作以使用由所述經(jīng)存儲器映射的間接尋址寄存器提供的地址。
20.根據(jù)權(quán)利要求19所述的微控制器,其中所述數(shù)據(jù)存儲器包含8個存儲器庫,且四個存儲器庫形成所述線性存儲器塊。
21.根據(jù)權(quán)利要求20所述的微控制器,其中所述特殊功能寄存器被存儲器映射到除所述四個存儲器庫外的所有存儲器庫的下方部分。
22.根據(jù)權(quán)利要求21所述的微控制器,其中除所述四個存儲器庫外的所述所有存儲器庫的偶數(shù)存儲器庫及奇數(shù)存儲器庫各自含有一組不同的經(jīng)存儲器映射的特殊功能寄存器。
全文摘要
一種微控制器具有數(shù)據(jù)存儲器,其被劃分成多個存儲器庫;地址多路復(fù)用器,其用于將地址提供到所述數(shù)據(jù)存儲器;指令寄存器,其將第一部分地址提供到所述地址多路復(fù)用器的第一輸入端;未映射到所述數(shù)據(jù)存儲器的庫選擇寄存器,其用于將第二部分地址提供到所述地址多路復(fù)用器的所述第一輸入端;及多個特殊功能寄存器,其映射到所述數(shù)據(jù)存儲器,其中所述多個特殊功能寄存器包含與所述地址多路復(fù)用器的第二輸入端耦合的間接存取寄存器,且其中所述數(shù)據(jù)存儲器包含形成無特殊功能寄存器被映射到的線性數(shù)據(jù)存儲器塊的所述多個存儲器庫中的一個以上存儲器庫。
文檔編號G06F12/06GK102282539SQ201080004731
公開日2011年12月14日 申請日期2010年2月10日 優(yōu)先權(quán)日2009年2月11日
發(fā)明者約瑟夫·朱利謝爾, 維維安·德爾波特, 肖恩·斯蒂德曼, 齊克·R·倫德斯特魯姆 申請人:密克羅奇普技術(shù)公司