亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

具有可指派通用寄存器組的處理器的制作方法

文檔序號(hào):6348499閱讀:174來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):具有可指派通用寄存器組的處理器的制作方法
技術(shù)領(lǐng)域
本申請(qǐng)案涉及微處理器,例如微控制器,且特定來(lái)說(shuō)涉及微處理器或微控制器中所使用的中斷控制器。
背景技術(shù)
微處理器且特定來(lái)說(shuō)微控制器使用中斷控制器來(lái)管理多個(gè)可能中斷源及程序異常處置。中斷通常在程序的順序處理中請(qǐng)求異常。如果處置此中斷請(qǐng)求,那么將發(fā)生中斷服務(wù)例程(ISR)的執(zhí)行。ISR允許程序恰當(dāng)?shù)靥幹孟鄳?yīng)中斷源,因此移除中斷的請(qǐng)求。然而,進(jìn)入及退出相應(yīng)ISR需要上下文保存及恢復(fù)。上下文保存及恢復(fù)將稱(chēng)作由所述程序執(zhí)行以確保微處理器以與其在發(fā)生中斷請(qǐng)求之前相同的狀態(tài)返回到所述程序的順序處理的任何操作。此上下文保存及恢復(fù)還將稱(chēng)作中斷延遲,且將測(cè)量為從上下文保存或恢復(fù)的第一操作發(fā)生的時(shí)間開(kāi)始且在上下文保存及恢復(fù)的最后操作發(fā)生時(shí)結(jié)束的時(shí)間的單位。ISR 內(nèi)容保存將稱(chēng)作報(bào)頭且上下文恢復(fù)將稱(chēng)作后同步信號(hào)。特定來(lái)說(shuō),報(bào)頭可包括與微處理器或微控制器的中央處理單元(CPU)相關(guān)聯(lián)的寄存器組。寄存器組或寄存器堆通常與CPU的算術(shù)邏輯單元(ALU)組合使用以對(duì)這些寄存器中所存儲(chǔ)的數(shù)據(jù)或地址執(zhí)行算術(shù)及/或邏輯以及數(shù)據(jù)/地址移動(dòng)操作。因此,即使此種寄存器組通常被視為CPU的一部分,但出于此申請(qǐng)案的目的,可將術(shù)語(yǔ)寄存器組或寄存器堆與術(shù)語(yǔ)CPU分開(kāi)使用。然而,不應(yīng)從使用這些術(shù)語(yǔ)的方式推斷出任何限制。寄存器組可在CPU內(nèi)或外部。ISR的報(bào)頭或后同步信號(hào)可具有變化程度的延遲。因此,具有高ISR延遲的高頻率中斷請(qǐng)求可消耗大量處理器時(shí)間。為減少I(mǎi)SR延遲,微處理器或微控制器可具有用于ISR的單獨(dú)寄存器組,其稱(chēng)作影子寄存器組。舉例來(lái)說(shuō),微芯片(Microchip)制造的32位微控制器PIC32MX3XX/4XX具有每當(dāng)服務(wù)最高可指派中斷優(yōu)先級(jí)時(shí)自動(dòng)切換到影子寄存器組的處理器核心。然而,此已知系統(tǒng)不靈活且可難以調(diào)適用于控制管理多個(gè)中斷源的系統(tǒng)。因此,需要一種更靈活的系統(tǒng)。

發(fā)明內(nèi)容
根據(jù)一實(shí)施例,一種處理器可包含中央處理單元(CPU);第一 CPU寄存器組;第二 CPU寄存器組;多路復(fù)用器邏輯,其用于將所述第一或所述第二 CPU寄存器組與所述CPU 耦合;及控制邏輯,其用于控制所述多路復(fù)用器邏輯以在接收到多個(gè)中斷信號(hào)中的至少一者后即刻從所述第一 CPU寄存器組切換到所述第二 CPU寄存器組,其中多個(gè)中斷信號(hào)中的所述至少一者必須滿足可編程于所述控制邏輯內(nèi)的條件。
根據(jù)另一實(shí)施例,所述條件可為中斷優(yōu)先級(jí)。根據(jù)又一實(shí)施例,所述條件可為中斷識(shí)別。根據(jù)再一實(shí)施例,所述處理器可包含多個(gè)第二CPU寄存器組。根據(jù)另一實(shí)施例,所述多路復(fù)用器可選擇所述第一 CPU寄存器組或所述第二 CPU寄存器組中的一者。根據(jù)又一實(shí)施例,所述處理器可進(jìn)一步包含用以選擇所述多個(gè)第二 CPU寄存器組中的一者的另一多路復(fù)用器。根據(jù)再一實(shí)施例,所述處理器可進(jìn)一步包含用于確定所述條件的可編程配置寄存器。根據(jù)另一實(shí)施例,所述處理器可進(jìn)一步包含用于確定多個(gè)條件的多個(gè)可編程配置寄存器。根據(jù)又一實(shí)施例,所述處理器可進(jìn)一步包含用于選擇多個(gè)預(yù)定指派中的一者的至少兩個(gè)可編程配置寄存器,每一指派將所述多個(gè)第二 CPU寄存器組中的一者與一條件相關(guān)聯(lián)。 根據(jù)再一實(shí)施例,所述第一配置寄存器可啟用或停用可編程數(shù)目個(gè)可用第二寄存器組且所述第二寄存器組確定所述多個(gè)第二寄存器組中的至少一者的指派。根據(jù)又一實(shí)施例,所述處理器可為具有八個(gè)寄存器堆組的微控制器。根據(jù)另一實(shí)施例,一種用于提供具有中央處理單元(CPU)寄存器組的處理器的方法可包含以下步驟編程用于從第一 CPU寄存器組切換到第二 CPU寄存器組的條件;選擇所述第一 CPU寄存器組;及在接收到多個(gè)中斷信號(hào)中的至少一者之后選擇所述第二 CPU寄存器組,其中多個(gè)中斷信號(hào)中的所述至少一者滿足所述條件。根據(jù)所述方法的又一實(shí)施例,所述條件可為中斷優(yōu)先級(jí)。根據(jù)所述方法的再一實(shí)施例,所述條件可為中斷識(shí)別。根據(jù)所述方法的又一實(shí)施例,所述選擇所述第二 CPU寄存器組的步驟包含選擇多個(gè)第二 CPU寄存器組中的一者。根據(jù)所述方法的再一實(shí)施例,所述編程條件的步驟可包含將數(shù)據(jù)寫(xiě)入到至少一個(gè)配置寄存器中。根據(jù)所述方法的又一實(shí)施例, 所述編程條件的步驟可包含將數(shù)據(jù)寫(xiě)入到多個(gè)配置寄存器中。根據(jù)所述方法的再一實(shí)施例,所述方法可進(jìn)一步包含確定第二 CPU寄存器組到條件的多個(gè)指派且依據(jù)至少第一參數(shù)及所述條件選擇所述指派中的一者的步驟。根據(jù)所述方法的又一實(shí)施例,所述方法可進(jìn)一步包含第二參數(shù),其中所述第一參數(shù)確定可用第二寄存器組的數(shù)目且所述第二參數(shù)確定所述多個(gè)第二寄存器組中的至少一者的指派。根據(jù)所述方法的再一實(shí)施例,所述處理器為具有八個(gè)寄存器堆組的微控制器。


通過(guò)結(jié)合附圖參照下文說(shuō)明可獲得對(duì)本發(fā)明及其優(yōu)點(diǎn)的更全面理解,附圖中圖1是具有可指派影子寄存器組的微處理器或微控制器的第一實(shí)施例的示意性框圖;圖2是多個(gè)影子寄存器組的可能實(shí)施方案的示意性框圖;圖3是多個(gè)影子寄存器組的另一可能實(shí)施方案的示意性框圖;圖4是用于選擇影子寄存器組的可能控制邏輯的示意性框圖;圖5是顯示依據(jù)配置寄存器的內(nèi)容的可能指派的指派表。雖然已參照本發(fā)明的實(shí)例性實(shí)施例描繪、描述及界定了本發(fā)明的各實(shí)施例,但此參照并不意味著限定本發(fā)明,且不應(yīng)推斷出存在此限定。所揭示的標(biāo)的物能夠在形式及功能上具有大量修改、替代及等效形式,所屬領(lǐng)域的技術(shù)人員將會(huì)聯(lián)想到這些修改、替代及等效形式并受益于本發(fā)明。所描繪及所描述的本發(fā)明的各實(shí)施例僅為實(shí)例,而并非是對(duì)本發(fā)明范圍的窮盡性說(shuō)明。
具體實(shí)施例方式根據(jù)各種實(shí)施例,微處理器或微控制器可裝備有用于多個(gè)影子寄存器組的選擇系統(tǒng)以改善系統(tǒng)性能且降低裝置功率。根據(jù)本發(fā)明的教示,用戶可指派哪一可指派中斷優(yōu)先級(jí)將接收影子寄存器組。可在(但不限于)編譯時(shí)間選擇影子組指派以允許編譯器產(chǎn)生與優(yōu)先級(jí)相關(guān)聯(lián)的正確序言及結(jié)尾。具有一個(gè)以上通用寄存器組的集成電路裝置(例如,微控制器)可使用至少一個(gè)可指派通用寄存器組,以用于允許軟件開(kāi)發(fā)者將通用寄存器組與中斷優(yōu)先級(jí)等級(jí)相關(guān)聯(lián)。 通過(guò)能夠?qū)⑼ㄓ眉拇嫫鹘M與中斷優(yōu)先級(jí)等級(jí)相關(guān)聯(lián),相關(guān)聯(lián)通用寄存器(寄存器組)能夠減少中斷延遲,而不管中斷優(yōu)先級(jí)等級(jí)如何。此對(duì)于處置以高頻率發(fā)生但可能未被指派最高優(yōu)先級(jí)的中斷可非常有用。圖1顯示具有可指派影子寄存器組的微處理器或微控制器的第一實(shí)施例。中央處理單元(CPU) 110借助多路復(fù)用器邏輯150耦合到主寄存器組120或影子寄存器組130。此外,中斷控制器140根據(jù)所指派的優(yōu)先級(jí)處置多個(gè)中斷源??山?jīng)由一個(gè)或一個(gè)以上控制線 160將優(yōu)先級(jí)用信號(hào)發(fā)送到CPU 110。使用控制信號(hào)160來(lái)控制多路復(fù)用器邏輯150。此外,使用一個(gè)或一個(gè)以上信號(hào)170來(lái)將一個(gè)或一個(gè)以上相應(yīng)中斷信號(hào)饋送到CPU 110。可使用軟件來(lái)配置一組影子寄存器130以將優(yōu)先級(jí)等級(jí)映射到一個(gè)或一個(gè)以上通用寄存器影子組。為此,可使用配置寄存器180來(lái)個(gè)別地將優(yōu)先級(jí)等級(jí)指派給一個(gè)或一個(gè)以上影子寄存器堆130。舉例來(lái)說(shuō),當(dāng)中斷到達(dá)中斷控制器140時(shí),多路復(fù)用器邏輯150 依據(jù)配置寄存器180的編程將用戶指定的影子組130呈現(xiàn)給CPU 110以用于服務(wù)到達(dá)的中斷。舉例來(lái)說(shuō),第一中斷可正在以IMHz的速率發(fā)生且另一中斷可正在以5kHz的速率發(fā)生。根據(jù)一個(gè)情景,所述5kHz中斷必須能夠中斷所述1MHz,因此必須被設(shè)定到較高優(yōu)先級(jí)等級(jí)。為節(jié)約CPU 110帶寬,例如通過(guò)在序言/結(jié)語(yǔ)期間于主寄存器組120與影子寄存器組130之間切換,用戶可期望將影子寄存器組130指派給所述IMHz中斷的相同優(yōu)先級(jí)。在此情景中應(yīng)注意,將所述IMHz中斷升高到最高優(yōu)先級(jí)等級(jí)在此情況下并非選項(xiàng)。在常規(guī)系統(tǒng)中,僅所述5kHz中斷將能夠使用影子寄存器堆。然而,根據(jù)各種實(shí)施例,可使影子寄存器堆130的使用與優(yōu)先級(jí)等級(jí)同步。根據(jù)另一實(shí)施例,使用配置寄存器來(lái)特定識(shí)別中斷源,例如特定中斷向量,當(dāng)執(zhí)行此中斷源的相應(yīng)ISR時(shí)會(huì)將影子寄存器堆指派給所述中斷源。根據(jù)此實(shí)施例,僅單個(gè)中斷將致使切換到影子寄存器堆組130,而當(dāng)使用優(yōu)先級(jí)等級(jí)時(shí),此種切換將針對(duì)被指派到相應(yīng)優(yōu)先級(jí)的任一中斷發(fā)生。圖2顯示提供多個(gè)影子寄存器堆組135a. . η的另一實(shí)施例。此處,可使用額外多路復(fù)用器邏輯240來(lái)選擇影子寄存器堆組13 中的一者或可擴(kuò)展多路復(fù)用器邏輯140以選擇主寄存器堆組120或所述多個(gè)影子寄存器堆組135a. . η中的一者。在此實(shí)施例中,可使用用于每一寄存器堆組135a. . η的多個(gè)配置寄存器^Oa. . η或用于預(yù)界定指派的一組寄存器,如下文將更詳細(xì)地解釋。圖3顯示其中影子寄存器堆組130且任選地主寄存器堆組120體現(xiàn)于包含多個(gè)寄存器堆組頁(yè)330a. . η的存儲(chǔ)器310內(nèi)的又一實(shí)施例。在此實(shí)施例中,使用可含有一個(gè)或一個(gè)以上配置寄存器的控制單元340來(lái)設(shè)定寄存器堆指針320。在此實(shí)施例中,頁(yè)330a可經(jīng)配置以形成主寄存器堆組且頁(yè)330b. . η可形成多個(gè)影子寄存器堆??刂茊卧?40依據(jù)中斷源或中斷優(yōu)先級(jí)等級(jí)自動(dòng)將寄存器堆指針320切換到經(jīng)預(yù)先編程的頁(yè),如上文所描述。圖4顯示控制多個(gè)影子寄存器堆的特定指派的另一實(shí)施例。在此實(shí)施例中,使用與選擇邏輯430耦合的停用或啟用寄存器410及選擇寄存器420。選擇邏輯430進(jìn)一步從中斷控制器接收優(yōu)先級(jí)信息且輸出控制信號(hào)供多路復(fù)用器選擇所述影子寄存器組中的一者。 借助停用/啟用寄存器410,舉例來(lái)說(shuō),可限制可使用影子寄存器堆組的數(shù)目。舉例來(lái)說(shuō),如果體現(xiàn)八個(gè)額外影子寄存器堆組,那么可使用八位寄存器410的每一位來(lái)特定啟用或停用所述多個(gè)影子堆寄存器組中的一者。接著可使用選擇寄存器420將可用寄存器特定指派給特定優(yōu)先級(jí)等級(jí)。根據(jù)一個(gè)實(shí)施例,舉例來(lái)說(shuō),可使用依據(jù)可用寄存器的數(shù)目的某些固定指派且可使用選擇寄存器420來(lái)選擇不同指派。圖5顯示供在具有八個(gè)中斷優(yōu)先級(jí)等級(jí)0到7及八個(gè)額外影子堆寄存器組0到7 的系統(tǒng)中使用的可能指派表。停用/啟用寄存器410可具有用以啟用1、2、4或八個(gè)影子寄存器堆組的3個(gè)位[2:0]。在此實(shí)施例中,值“111”選擇單個(gè)影子寄存器堆,“110”選擇兩個(gè)影子寄存器堆組,“ 100”選擇四個(gè)影子寄存器堆組,且“000”選擇八個(gè)影子寄存器堆組。 選擇寄存器也可具有三個(gè)位[2:0]以提供八個(gè)不同指派。根據(jù)此實(shí)施例,使用選擇寄存器 420及停用寄存器410來(lái)選擇經(jīng)預(yù)先編程的指派,如圖5中所示。根據(jù)另一實(shí)施例,可以不同方式布置所述表。舉例來(lái)說(shuō),所述指派可根據(jù)特定要求而不同。在其它實(shí)施例中,所述表可不包括如圖5中所示的第一及最后行。如果可用影子組的數(shù)目為1,如通過(guò)設(shè)定停用寄存器410 =“111”所示,那么任何優(yōu)先級(jí)等級(jí)將導(dǎo)致切換到影子寄存器堆組0。如果可用影子寄存器堆組的數(shù)目為2,如通過(guò)設(shè)定停用寄存器410 =“110”所示,那么此實(shí)施例允許八個(gè)不同設(shè)定,其中每一設(shè)定將影子寄存器堆組1指派給單個(gè)優(yōu)先級(jí),而所有其它優(yōu)先級(jí)使用影子堆寄存器組0。如果可用影子組的數(shù)目為4,如通過(guò)設(shè)定停用寄存器410 = “ 100”所示,那么此實(shí)施例允許六個(gè)不同設(shè)定,其中每一設(shè)定具有優(yōu)先級(jí)等級(jí)6及7分別到影子寄存器堆組2及3的固定指派及影子寄存器堆組0及1的可變指派。此處,可將影子寄存器堆組1指派給優(yōu)先級(jí)0到5中的一者,而剩余優(yōu)先級(jí)使用影子堆寄存器組0。最后,如果可用影子組的數(shù)目為8,如通過(guò)設(shè)定停用寄存器410 = “000”所示,那么每一優(yōu)先級(jí)等級(jí)0到7將導(dǎo)致切換到相應(yīng)影子寄存器堆組0到7。應(yīng)注意,舉例來(lái)說(shuō),如果優(yōu)先級(jí)等級(jí)0表示主程序,那么影子寄存器堆組0可為主寄存器堆。因此,主寄存器堆與影子寄存器堆之間沒(méi)有必要存在差別。此外,如在圖5中可見(jiàn),即使所示表特別有用,但其僅給出提供優(yōu)先級(jí)等級(jí)到不同影子寄存器堆組的不同更多或更少固定指派的一個(gè)特定實(shí)例。此表可太具限制性或太復(fù)雜且可根據(jù)各種其它實(shí)施例設(shè)計(jì)更復(fù)雜或較不復(fù)雜的指派。因此,本發(fā)明極適于實(shí)施所述目標(biāo)并獲得所提及以及那些其中固有的結(jié)果及優(yōu)點(diǎn)。雖然所屬領(lǐng)域的技術(shù)人員可做出眾多改變,但此些改變均涵蓋于所附權(quán)利要求書(shū)所界定的本發(fā)明的精神內(nèi)。
權(quán)利要求
1.一種處理器,其包含中央處理單元(CPU);第一 CPU寄存器組;第二 CPU寄存器組;多路復(fù)用器邏輯,其用于將所述第一或所述第二 CPU寄存器組與所述CPU耦合;控制邏輯,其用于控制所述多路復(fù)用器邏輯以在接收到多個(gè)中斷信號(hào)中的至少一者后即刻從所述第一 CPU寄存器組切換到所述第二 CPU寄存器組,其中多個(gè)中斷信號(hào)中的所述至少一者必須滿足可編程于所述控制邏輯內(nèi)的條件。
2.根據(jù)權(quán)利要求1所述的處理器,其中所述條件為中斷優(yōu)先級(jí)。
3.根據(jù)權(quán)利要求1所述的處理器,其中所述條件為中斷識(shí)別。
4.根據(jù)權(quán)利要求1所述的處理器,其包含多個(gè)第二CPU寄存器組。
5.根據(jù)權(quán)利要求4所述的處理器,其中所述多路復(fù)用器選擇所述第一CPU寄存器組或選擇所述第二 CPU寄存器組中的一者。
6.根據(jù)權(quán)利要求4所述的處理器,其進(jìn)一步包含用以選擇所述多個(gè)第二CPU寄存器組中的一者的另一多路復(fù)用器。
7.根據(jù)權(quán)利要求1所述的處理器,其進(jìn)一步包含用于確定所述條件的可編程配置寄存ο
8.根據(jù)權(quán)利要求4所述的處理器,其進(jìn)一步包含用于確定多個(gè)條件的多個(gè)可編程配置寄存器。
9.根據(jù)權(quán)利要求4所述的處理器,其進(jìn)一步包含用于選擇多個(gè)預(yù)定指派中的一者的至少兩個(gè)可編程配置寄存器,每一指派將所述多個(gè)第二 CPU寄存器組中的一者與一條件相關(guān)聯(lián)。
10.根據(jù)權(quán)利要求9所述的處理器,其中所述第一配置寄存器啟用或停用可編程數(shù)目個(gè)可用第二寄存器組且所述第二寄存器組確定所述多個(gè)第二寄存器組中的至少一者的指派。
11.根據(jù)權(quán)利要求10所述的處理器,其中所述處理器為具有八個(gè)寄存器堆組的微控制O
12.一種用于提供具有中央處理單元(CPU)寄存器組的處理器的方法,其包含以下步驟編程用于從第一 CPU寄存器組切換到第二 CPU寄存器組的條件;選擇所述第一 CPU寄存器組;及在接收到多個(gè)中斷信號(hào)中的至少一者之后選擇所述第二 CPU寄存器組,其中多個(gè)中斷信號(hào)中的所述至少一者滿足所述條件。
13.根據(jù)權(quán)利要求12所述的方法,其中所述條件為中斷優(yōu)先級(jí)。
14.根據(jù)權(quán)利要求12所述的方法,其中所述條件為中斷識(shí)別。
15.根據(jù)權(quán)利要求12所述的方法,其中所述選擇所述第二CPU寄存器組的步驟包含選擇多個(gè)第二 CPU寄存器組中的一者。
16.根據(jù)權(quán)利要求12所述的方法,其中所述編程條件的步驟包含將數(shù)據(jù)寫(xiě)入到至少一個(gè)配置寄存器中。
17.根據(jù)權(quán)利要求15所述的方法,其中所述編程條件的步驟包含將數(shù)據(jù)寫(xiě)入到多個(gè)配置寄存器中。
18.根據(jù)權(quán)利要求15所述的方法,其進(jìn)一步包含確定第二CPU寄存器組到一條件的多個(gè)指派且依據(jù)至少第一參數(shù)及所述條件選擇所述指派中的一者的步驟。
19.根據(jù)權(quán)利要求18所述的方法,其進(jìn)一步包含第二參數(shù),其中所述第一參數(shù)確定可用第二寄存器組的數(shù)目且所述第二參數(shù)確定所述多個(gè)第二寄存器組中的至少一者的指派。
20.根據(jù)權(quán)利要求19所述的方法,其中所述處理器為具有八個(gè)寄存器堆組的微控制ο
全文摘要
本發(fā)明揭示一種處理器,其具有中央處理單元(CPU);第一CPU寄存器組;第二CPU寄存器組;多路復(fù)用器邏輯,其用于將所述第一或所述第二CPU寄存器組與所述CPU耦合;及控制邏輯,其用于控制所述多路復(fù)用器邏輯以在接收到多個(gè)中斷信號(hào)中的至少一者后即刻從所述第一CPU寄存器組切換到所述第二CPU寄存器組,其中多個(gè)中斷信號(hào)中的所述至少一者必須滿足可編程于所述控制邏輯內(nèi)的條件。
文檔編號(hào)G06F13/26GK102334108SQ201080009765
公開(kāi)日2012年1月25日 申請(qǐng)日期2010年4月12日 優(yōu)先權(quán)日2009年4月13日
發(fā)明者泰勒·奈·博迪, 約瑟夫·特斯, 羅伯特·肖恩·賈斯蒂斯 申請(qǐng)人:密克羅奇普技術(shù)公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1