欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

信息處理裝置的制作方法

文檔序號(hào):6656607閱讀:96來源:國知局
專利名稱:信息處理裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種信息處理裝置,并且更具體而言涉及一種能夠降低功耗的信息處理裝置。
背景技術(shù)
近年來,移動(dòng)信息處理裝置已經(jīng)非常普遍。移動(dòng)電話裝置、移動(dòng)個(gè)人計(jì)算機(jī)、移動(dòng)個(gè)人數(shù)字助理等是其中的代表。這些移動(dòng)終端裝置全部在由電池驅(qū)動(dòng)時(shí)工作。因此,為了能夠長時(shí)間使用該裝置,已經(jīng)進(jìn)行開發(fā)來降低功耗。
特別是移動(dòng)電話裝置,隨著板載功能的增加(下文稱為板載功能的種類增加),顯著地提高了CPU的性能。因此,CPU相對(duì)于整個(gè)裝置的功耗比也逐年提高,并由此,需要針對(duì)CPU的節(jié)能技術(shù)。同樣,由于板載功能的種類增加,因此高系統(tǒng)需求和低系統(tǒng)需求之間存在不一致。
例如,諸如移動(dòng)電話裝置的待機(jī)屏保處理、顯示時(shí)鐘處理等正規(guī)處理具有低系統(tǒng)需求。另一方面,諸如顯示活動(dòng)圖像、電視電話等處理的新的附加功能處理具有高的系統(tǒng)需求。通過這些實(shí)例可以看出,具有低系統(tǒng)需求的處理和具有高系統(tǒng)需求的處理之間在CPU處理負(fù)載方面存在顯著的區(qū)別。CPU需要執(zhí)行具有高系統(tǒng)需求的處理也需要執(zhí)行具有低系統(tǒng)需求的處理,因此需要具有滿足所有系統(tǒng)需求的性能。然而,僅有少量功能充分利用了整個(gè)系統(tǒng)中的CPU的性能。
因此,已經(jīng)提出了包括主CPU和功耗低于主CPU的副CPU的信息處理裝置(參見專利文獻(xiàn)1)。在專利文獻(xiàn)1的常規(guī)信息處理裝置中,主CPU和由主CPU控制的外圍裝置直接彼此相連,并且副CPU和由副CPU控制的外圍裝置彼此直接相連。因此,常規(guī)信息處理裝置可以使副CPU執(zhí)行具有較小負(fù)載的處理,例如等待用戶的鍵入、定時(shí)器事件等。因此,在執(zhí)行具有小負(fù)載的處理期間,主CPU不必?zé)o用地執(zhí)行,因此降低了功耗。
專利文獻(xiàn)1日本專利特許公開No.H04-309110。

發(fā)明內(nèi)容
本發(fā)明所要解決的問題然而,在專利文獻(xiàn)1所述的常規(guī)技術(shù)中,每個(gè)CPU直接連接到由其控制的外圍裝置,這樣就固定了用于控制外圍裝置處理的CPU。因此,取決于該裝置的狀態(tài),不能靈活有效地利用兩個(gè)CPU資源。同樣,每次硬件結(jié)構(gòu)改變時(shí),需要重新設(shè)計(jì)CPU和外圍裝置之間的連接。
因此,本發(fā)明的一個(gè)目的是提供一種信息處理裝置,其實(shí)現(xiàn)低功耗并且其中用于執(zhí)行來自外圍裝置的請(qǐng)求的CPU不被固定到主CPU或者副CPU。
解決方案為了實(shí)現(xiàn)上面的目的,本發(fā)明具有以下方面。本發(fā)明的第一方面致力于一種用于控制一個(gè)以上的內(nèi)部或者外部外圍裝置的信息處理裝置,包括主CPU,其能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài);副CPU,其功耗低于所述主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài);以及處理請(qǐng)求確定部分,用于確定使所述主CPU和所述副CPU中的哪一個(gè)來執(zhí)行涉及來自所述外圍裝置中的一個(gè)的請(qǐng)求的處理。所述處理請(qǐng)求確定部分確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài),并且當(dāng)所述主CPU處于休眠狀態(tài)時(shí),確定是否使所述副CPU執(zhí)行所述處理,并且當(dāng)所述主CPU處于操作狀態(tài)時(shí),確定是否能夠使所述主CPU執(zhí)行所述處理,并且根據(jù)所述確定的結(jié)果,使所述主CPU或者所述副CPU執(zhí)行所述處理。
根據(jù)本發(fā)明的第一方面,當(dāng)主CPU處于休眠狀態(tài)時(shí),確定是否可以使副CPU執(zhí)行該處理。因此,當(dāng)可以使副CPU執(zhí)行該處理時(shí),副CPU執(zhí)行該處理。因此,可以使主CPU長時(shí)間處于休眠狀態(tài),從而可以減少功耗。另一方面,當(dāng)主CPU處于操作狀態(tài)時(shí),確定是否可以使主CPU執(zhí)行該處理。因此,當(dāng)可以使主CPU執(zhí)行該處理時(shí),主CPU執(zhí)行該處理。因此,提高了響應(yīng)速度。于是,提供了一種這樣的信息處理裝置,其具有低功耗并且其中執(zhí)行來自外圍裝置的處理請(qǐng)求的CPU沒有固定到主CPU或者副CPU。
優(yōu)選地,當(dāng)主CPU處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分可以使副CPU執(zhí)行該處理。當(dāng)主CPU處于操作狀態(tài)時(shí),該處理請(qǐng)求確定部分可以使主CPU執(zhí)行該處理。
因此,當(dāng)主CPU處于休眠狀態(tài)時(shí),副CPU總是執(zhí)行處理,而當(dāng)主CPU處于操作狀態(tài)時(shí),主CPU總是執(zhí)行處理。
優(yōu)選地,當(dāng)主CPU處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分可以確定副CPU是否可以接受該處理,并且當(dāng)副CPU可以接受該處理時(shí),使副CPU執(zhí)行該處理,并且當(dāng)副CPU不能接受該處理時(shí),使主CPU執(zhí)行該處理。當(dāng)主CPU處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分可以使主CPU執(zhí)行該處理。
因此,當(dāng)副CPU不能接受該處理時(shí),使主CPU執(zhí)行該處理,使得響應(yīng)速度提高。
優(yōu)選地,當(dāng)主CPU處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分可以確定副CPU是否能夠接受該處理,并且當(dāng)副CPU可以接受該處理時(shí),使副CPU執(zhí)行該處理,并且當(dāng)副CPU不能接受該處理時(shí),使主CPU執(zhí)行該處理。當(dāng)主CPU處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分可以確定主CPU是否能夠接受該處理,并且當(dāng)主CPU可以接受該處理時(shí),使主CPU執(zhí)行該處理,并且當(dāng)該主CPU不能接受該處理時(shí),確定是否可以使副CPU執(zhí)行該處理。
因此,當(dāng)主CPU處于操作狀態(tài)時(shí),確定主CPU是否能夠接受該處理。當(dāng)主CPU不能接受該處理時(shí),確定是否使副CPU執(zhí)行該處理。因此,由于主CPU和副CPU可以并行執(zhí)行處理,從而可以降低功耗并且提高響應(yīng)速度。
優(yōu)選地,信息處理裝置可以還包括處理請(qǐng)求目的地指定部分,其與所述外圍裝置中的一個(gè)中的處理相關(guān)聯(lián)地將期望執(zhí)行所述處理的期望CPU預(yù)先定義為指定CPU信息。當(dāng)所述處理請(qǐng)求目的地指定部分的所述指定CPU信息所指定的CPU是所述主CPU時(shí),所述處理請(qǐng)求確定部分確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài)。
因此,當(dāng)指定主CPU中的處理時(shí),確定主CPU是處于休眠狀態(tài)還是操作狀態(tài)。
優(yōu)選地,所述處理請(qǐng)求目的地指定部分還將是否允許使用除了所述指定CPU信息中所定義的所述CPU之外的CPU來執(zhí)行所述處理定義為其它CPU可用性信息,并且當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述處理請(qǐng)求確定部分參考所述其它CPU可用性信息來確定是否允許所述副CPU執(zhí)行所述處理。當(dāng)允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述副CPU執(zhí)行所述處理。當(dāng)不允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述主CPU執(zhí)行所述處理。
因此,當(dāng)主CPU處于休眠狀態(tài)時(shí),可以根據(jù)情況使副CPU執(zhí)行該處理,從而可以降低功耗。
優(yōu)選地,當(dāng)主CPU處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分可以確定主CPU是否可以接受該處理。當(dāng)主CPU可以接受該處理時(shí),處理請(qǐng)求確定部分可以確定使主CPU執(zhí)行該處理。當(dāng)主CPU不能接受該處理時(shí),處理請(qǐng)求確定部分可以參考其它CPU可用性信息來確定是否允許副CPU執(zhí)行該處理。當(dāng)允許副CPU執(zhí)行該處理時(shí),處理請(qǐng)求確定部分可以確定使副CPU執(zhí)行該處理。當(dāng)不允許副CPU執(zhí)行該處理時(shí),處理請(qǐng)求確定部分可以確定使主CPU執(zhí)行該處理。
因此,即使在主CPU處于操作狀態(tài)時(shí),也可以根據(jù)情況使副CPU操作,從而可以降低功耗。
優(yōu)選地,當(dāng)處理請(qǐng)求目的地指定部分的指定CPU信息所指定的CPU是副CPU時(shí),處理請(qǐng)求確定部分可以確定副CPU是處于休眠狀態(tài)還是操作狀態(tài),以確定使主CPU和副CPU中的哪一個(gè)來執(zhí)行該處理。
因此,在指定使用副CPU的情況下,當(dāng)副CPU處于休眠狀態(tài)時(shí),選擇使用副CPU還是主CPU。
優(yōu)選地,處理請(qǐng)求目的地指定部分還可以將是否允許使用除了指定CPU信息中所定義的CPU之外的CPU來執(zhí)行該處理定義為其它CPU可用性信息。當(dāng)副CPU處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分可以參考其它CPU可用性信息以確定是否允許主CPU來執(zhí)行該處理。當(dāng)允許主CPU執(zhí)行該處理時(shí),處理請(qǐng)求確定部分可以確定使主CPU執(zhí)行該處理。當(dāng)不允許主CPU執(zhí)行該處理時(shí),處理請(qǐng)求確定部分可以確定使副CPU執(zhí)行該處理。
因此,當(dāng)副CPU處于休眠狀態(tài)時(shí),可以根據(jù)情況使用主CPU,從而提高響應(yīng)速度。
優(yōu)選地,當(dāng)副CPU處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分可以確定副CPU是否可以接受該處理。當(dāng)副CPU可以接受該處理時(shí),處理請(qǐng)求確定部分可以確定使副CPU執(zhí)行該處理。當(dāng)副CPU不能接受該處理時(shí),處理請(qǐng)求確定部分可以參考其它CPU可用性信息以確定是否允許主CPU執(zhí)行該處理。當(dāng)允許該主CPU執(zhí)行該處理時(shí),處理請(qǐng)求確定部分可以確定使主CPU執(zhí)行該處理。當(dāng)不允許主CPU執(zhí)行該處理時(shí),處理請(qǐng)求確定部分可以確定使副CPU執(zhí)行該處理。
因此,當(dāng)副CPU不能接受該處理時(shí),可以根據(jù)情況使用主CPU,使得可以進(jìn)行并行處理,從而提高響應(yīng)速度。
優(yōu)選地,信息處理裝置還可以包括處理請(qǐng)求目的地指定部分,其與所述外圍裝置中的一個(gè)中的處理相關(guān)聯(lián)地將期望執(zhí)行所述處理的期望CPU預(yù)先定義為指定CPU信息。當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述處理請(qǐng)求確定部分參考所述指定CPU信息來確定是否允許所述副CPU執(zhí)行所述處理。當(dāng)允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分使所述副CPU執(zhí)行所述處理。當(dāng)不允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分使所述主CPU執(zhí)行所述處理。。
因此,當(dāng)主CPU處于休眠狀態(tài)時(shí),確定是否允許副CPU執(zhí)行該處理。
優(yōu)選地,當(dāng)主CPU處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分可以確定主CPU是否可以接受該處理。當(dāng)主CPU不能接受該處理時(shí),處理請(qǐng)求確定部分可以參考指定CPU信息以確定是否允許主CPU執(zhí)行該處理。當(dāng)允許主CPU執(zhí)行該處理時(shí),處理請(qǐng)求確定部分可以使主CPU執(zhí)行該處理。當(dāng)不允許主CPU執(zhí)行該處理時(shí),處理請(qǐng)求確定部分可以使副CPU執(zhí)行該處理。當(dāng)主CPU可以接受該處理時(shí),處理請(qǐng)求確定部分可以使副CPU執(zhí)行該處理。
因此,當(dāng)主CPU處于操作狀態(tài)時(shí),確定是否允許主CPU執(zhí)行該處理。
優(yōu)選地,如果在使副CPU執(zhí)行該處理時(shí)存在喚醒主CPU的請(qǐng)求,則副CPU和主CPU可以執(zhí)行用于使主CPU接管副CPU中執(zhí)行的處理的處理。
因此,主CPU可以接管副CPU中的處理。
本發(fā)明的第二方面致力于一種應(yīng)用在用于控制一個(gè)以上的內(nèi)部或者外部外圍裝置的信息處理裝置中的處理方法,所述信息處理裝置包括主CPU,其能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),以及副CPU,其功耗低于所述主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài)。所述方法包括確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài);當(dāng)所述主CPU處于休眠狀態(tài)時(shí),確定是否可以使所述副CPU執(zhí)行來自所述外圍裝置中的一個(gè)的處理;當(dāng)所述主CPU處于操作狀態(tài)時(shí),確定是否可以使所述主CPU執(zhí)行所述處理;以及根據(jù)所述確定的結(jié)果,使所述主CPU或者所述副CPU執(zhí)行所述處理。
本發(fā)明的第三方面致力于一種用于使用主CPU和副CPU控制一個(gè)以上的內(nèi)部或者外部外圍裝置的集成電路,其中所述主CPU能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),而所述副CPU的功耗低于所述主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài)。所述集成電路確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài)。當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述集成電路確定是否可以使所述副CPU執(zhí)行來自所述外圍裝置中的一個(gè)的處理。當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述集成電路確定是否可以使所述主CPU執(zhí)行所述處理。所述集成電路根據(jù)所述確定的結(jié)果使所述主CPU或者所述副CPU執(zhí)行所述處理。
本發(fā)明的第四方面致力于一種在計(jì)算機(jī)設(shè)備中執(zhí)行的程序,所述計(jì)算機(jī)設(shè)備用于使主CPU和副CPU控制一個(gè)以上的內(nèi)部或者外部外圍裝置,所述主CPU能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),所述副CPU的功耗低于所述主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài)。所述程序使所述計(jì)算機(jī)設(shè)備確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài)。當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述程序使所述計(jì)算機(jī)設(shè)備確定是否可以使所述副CPU執(zhí)行來自所述外圍裝置中的一個(gè)的處理。當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述程序使所述計(jì)算機(jī)設(shè)備確定是否可以使所述主CPU執(zhí)行所述處理。所述程序根據(jù)所述確定的結(jié)果,使用所述計(jì)算機(jī)設(shè)備使所述主CPU或者所述副CPU執(zhí)行所述處理。
發(fā)明效果根據(jù)本發(fā)明的信息處理裝置,在多數(shù)情況下,整個(gè)系統(tǒng)中具有比較小的處理負(fù)載的處理可以由使用具有低功耗的副CPU的低頻操作來執(zhí)行,由此可以使具有高功耗的主CPU長時(shí)間處于休眠狀態(tài)。同樣,當(dāng)主CPU處于操作狀態(tài)時(shí),副CPU可以用作輔助的CPU,由此可以有效地使用信息處理裝置的CPU并降低功耗。因此,根據(jù)本發(fā)明,提供了一種信息處理裝置,其具有低功耗并且用于執(zhí)行來自外圍裝置的處理請(qǐng)求的CPU未被固定到主CPU或者副CPU。
利用結(jié)合附圖時(shí)對(duì)本發(fā)明進(jìn)行的下列具體說明,本發(fā)明的這些和其它目的、特點(diǎn)、方面以及優(yōu)點(diǎn)將變得更加顯而易見。


圖1是說明根據(jù)本發(fā)明的第一實(shí)施例的信息處理裝置100的硬件結(jié)構(gòu)的框圖。
圖2是說明本發(fā)明的第一實(shí)施例的信息處理裝置100的功能結(jié)構(gòu)的框圖。
圖3是第一實(shí)施例的信息處理裝置100的操作流程圖。
圖4是說明根據(jù)本發(fā)明的第二實(shí)施例的信息處理裝置200的功能結(jié)構(gòu)的框圖。
圖5是本發(fā)明的第二實(shí)施例的信息處理裝置200的操作流程圖。
圖6是說明根據(jù)本發(fā)明的第三實(shí)施例的信息處理裝置300的功能結(jié)構(gòu)的框圖。
圖7A是本發(fā)明的第三實(shí)施例的信息處理裝置300的操作流程圖。
圖7B是本發(fā)明的第三實(shí)施例的信息處理裝置300的操作流程圖。
圖7C是本發(fā)明的第三實(shí)施例的信息處理裝置300的操作流程圖。
圖7D是本發(fā)明的第三實(shí)施例的信息處理裝置300的操作流程圖。
圖8是具體說明使主CPU 1b接管副CPU 2b中的處理的示例性方法的順序圖。
圖9是說明根據(jù)本發(fā)明的第四實(shí)施例的信息處理裝置400的功能結(jié)構(gòu)的框圖。
圖10是本發(fā)明的第四實(shí)施例的信息處理裝置400的操作流程圖。
圖11是說明本發(fā)明的第五實(shí)施例的信息處理裝置500的功能結(jié)構(gòu)的框圖。
圖12是說明存儲(chǔ)在處理請(qǐng)求目的地指定部分36中的示例性信息的圖。
圖13A是本發(fā)明的第五實(shí)施例的信息處理裝置500的操作流程圖。
圖13B是本發(fā)明的第五實(shí)施例的信息處理裝置500的操作流程圖。
圖13C是本發(fā)明的第五實(shí)施例的信息處理裝置500的操作流程圖。
圖13D是本發(fā)明的第五實(shí)施例的信息處理裝置500的操作流程圖。
圖14是根據(jù)本發(fā)明的第六實(shí)施例的信息處理裝置的操作流程圖。
圖15是說明定義在處理請(qǐng)求目的地指定部分36中的另一示例性表格的圖。
符號(hào)說明100、200、300、400、500信息處理裝置M1、1、1b、1c、主CPUM2、2、2a、2b 副CPUM3 訪問仲裁電路M4 中斷控制器M5至M7、41至43 外圍裝置M8、M9 RAM11中斷確定部分21中斷確定部分3、3a 處理請(qǐng)求確定部分31主CPU狀態(tài)寄存器32中斷請(qǐng)求寄存器33副CPU狀態(tài)寄存器34副CPU處理請(qǐng)求完成寄存器35主CPU處理請(qǐng)求完成寄存器36處理請(qǐng)求目的地指定部分44主CPU喚醒請(qǐng)求發(fā)送部分51存儲(chǔ)區(qū)確定部分61存儲(chǔ)區(qū)具體實(shí)施方式
(第一實(shí)施例)圖1是說明根據(jù)本發(fā)明的第一實(shí)施例的信息處理裝置100的硬件結(jié)構(gòu)的框圖。在圖1中,信息處理裝置100包括主CPU(M1)、副CPU(M2)、訪問仲裁電路(M3)、中斷控制器(M4)、外圍裝置(M5到M7)以及RAM(M8和M9)。外圍裝置(M5到M7)和RAM(M8和M9)的數(shù)量不限于圖1的這些實(shí)例。
主CPU(M1)是可以采用兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài)的CPU。副CPU(M2)是具有低于主CPU(M1)的功耗并且可以采用兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài)的CPU。當(dāng)同時(shí)發(fā)生來自主CPU(M1)和副CPU(M2)對(duì)總線的訪問時(shí),訪問仲裁電路(M3)管理競爭仲裁。RAM(M8和M9)可以根據(jù)設(shè)置來限制來自主CPU(M1)和副CPU(M2)的訪問。外圍裝置(M5到M7)例如是HDD、定時(shí)器、鍵盤、按鈕開關(guān)、液晶顯示器、MPEG解碼器等,并且經(jīng)由總線連接到主CPU(M1)和副CPU(M2)。在圖1中,外圍裝置(M5到M7)顯示為設(shè)置在信息處理裝置100的內(nèi)部,但是其也可以設(shè)置在信息處理裝置100的外部。
主CPU(M1)和副CPU(M2)都可以訪問外圍裝置(M5到M7)。當(dāng)期望執(zhí)行處理時(shí),外圍裝置(M5到M7)傳送中斷信號(hào)到中斷控制器(M4)。當(dāng)接收到來自外圍裝置(M5到M7)的中斷信號(hào)時(shí),中斷控制器(M4)根據(jù)主CPU(M1)的狀態(tài)將中斷信號(hào)發(fā)送到主CPU(M1)或者副CPU(M2),即,當(dāng)主CPU(M1)處于休眠狀態(tài)時(shí),將中斷信號(hào)發(fā)送到副CPU(M2),并且當(dāng)主CPU(M1)處于操作狀態(tài)時(shí),將中斷信號(hào)發(fā)送到主CPU(M1)。注意如上所述,主CPU(M1)具有操作狀態(tài)和休眠狀態(tài)。每當(dāng)主CPU(M1)的狀態(tài)改變時(shí),中斷控制器(M4)將該狀態(tài)寫入中斷控制器(M4)中的寄存器(主CPU狀態(tài)寄存器)。
圖2是說明本發(fā)明的第一實(shí)施例的信息處理裝置100的功能結(jié)構(gòu)的框圖。在圖2中,信息處理裝置100包括主CPU 1、副CPU 2、處理請(qǐng)求確定部分3以及外圍裝置41到43。主CPU 1對(duì)應(yīng)于圖1的主CPU(M1)。副CPU 2對(duì)應(yīng)于圖1的副CPU(M2)。處理請(qǐng)求確定部分3對(duì)應(yīng)于圖1的中斷控制器(M4)。外圍裝置41到43對(duì)應(yīng)于圖1的外圍裝置(M5到M7)。
主CPU 1包括中斷確定部分11。副CPU 2包括中斷確定部分21。處理請(qǐng)求確定部分3包括主CPU狀態(tài)寄存器31、中斷請(qǐng)求寄存器32和副CPU狀態(tài)寄存器33。
主CPU 1可以采用兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài)。主CPU 1將主CPU 1是處于休眠狀態(tài)還是操作狀態(tài)的通知發(fā)送到主CPU狀態(tài)寄存器31。主CPU狀態(tài)寄存器31存儲(chǔ)該主CPU 1是處于休眠狀態(tài)還是操作狀態(tài)。主CPU狀態(tài)寄存器31通過從主CPU 1的寫入處理改變標(biāo)志值,并且當(dāng)主CPU 1進(jìn)入休眠狀態(tài)時(shí)寫入休眠標(biāo)志,而當(dāng)主CPU 1進(jìn)入操作狀態(tài)時(shí)寫入操作標(biāo)志。
副CPU 2可以采用兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài)。副CPU 2將副CPU 2是處于休眠狀態(tài)還是操作狀態(tài)的通知發(fā)送到副CPU狀態(tài)寄存器33。副CPU狀態(tài)寄存器33存儲(chǔ)該副CPU 2是處于休眠狀態(tài)還是操作狀態(tài)。副CPU狀態(tài)寄存器33通過從副CPU 2的寫入處理改變標(biāo)志值,并且當(dāng)副CPU 2進(jìn)入休眠狀態(tài)時(shí)寫入休眠標(biāo)志,而當(dāng)副CPU 2進(jìn)入操作狀態(tài)時(shí)寫入操作標(biāo)志。
主CPU 1和副CPU 2每個(gè)都能夠控制外圍裝置41至43。
主CPU 1和副CPU 2在完成所需處理時(shí)自動(dòng)進(jìn)入休眠狀態(tài)。當(dāng)中斷信號(hào)從處理請(qǐng)求確定部分3發(fā)送到中斷確定部分11時(shí),主CPU 1執(zhí)行進(jìn)入操作狀態(tài)的處理,并且當(dāng)進(jìn)入操作狀態(tài)時(shí),將操作標(biāo)志寫入主CPU狀態(tài)寄存器31。
中斷請(qǐng)求寄存器32接收來自外圍裝置41到43的中斷信號(hào)并且存儲(chǔ)該中斷信號(hào)。當(dāng)接收到來自外圍裝置41到43的中斷信號(hào)時(shí),處理請(qǐng)求確定部分3確定是否使主CPU 1或者副CPU 2執(zhí)行處理,并且將該中斷信號(hào)發(fā)送到主CPU 1的中斷確定部分11或者副CPU 2的中斷確定部分21。中斷確定部分11檢測(cè)來自處理請(qǐng)求確定部分3的中斷信號(hào)。中斷確定部分21檢測(cè)來自處理請(qǐng)求確定部分3的中斷信號(hào)。
圖3是第一實(shí)施例的信息處理裝置100的操作流程圖。在下文中,將參照?qǐng)D3說明第一實(shí)施例的信息處理裝置100的操作。
當(dāng)外圍裝置41、42和43中的任意一個(gè)發(fā)送中斷信號(hào)時(shí),通過在中斷請(qǐng)求寄存器32的對(duì)應(yīng)于外圍裝置41、42或者43的部分設(shè)定標(biāo)志,該處理請(qǐng)求確定部分3存儲(chǔ)已經(jīng)出現(xiàn)了中斷信號(hào)(步驟S1)。
接下來,處理請(qǐng)求確定部分3通過參考主CPU狀態(tài)寄存器31來確定主CPU 1是否處于休眠狀態(tài)(步驟S2)。
當(dāng)主CPU 1處于休眠狀態(tài)時(shí),該處理請(qǐng)求確定部分3參考副CPU狀態(tài)寄存器33以確定副CPU 2是否處于休眠狀態(tài)(步驟S3)。當(dāng)副CPU2處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3使副CPU 2進(jìn)入操作狀態(tài),使副CPU狀態(tài)寄存器33存儲(chǔ)該副CPU 2處于操作狀態(tài)(步驟S4),并且進(jìn)入步驟S5的操作。另一方面,當(dāng)副CPU 2處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3進(jìn)入步驟S5的操作。
在步驟S5中,處理請(qǐng)求確定部分3發(fā)送中斷信號(hào)到副CPU 2的中斷確定部分21(步驟S5)。響應(yīng)于此,副CPU 2執(zhí)行對(duì)應(yīng)于所發(fā)送中斷信號(hào)的中斷處理(步驟S6),并且進(jìn)入步驟S7的操作。
在步驟S7中,副CPU 2缺人在步驟S6執(zhí)行期間是否有針對(duì)副CPU 2的新中斷請(qǐng)求。當(dāng)存在新的中斷請(qǐng)求時(shí),副CPU 2返回步驟S6的操作,并且執(zhí)行新的中斷處理。另一方面,當(dāng)沒有新的中斷請(qǐng)求時(shí),副CPU 2進(jìn)入休眠狀態(tài)(步驟S8)。副CPU 2通知主CPU狀態(tài)寄存器31該副CPU 2進(jìn)入了休眠狀態(tài)。響應(yīng)于此,主CPU狀態(tài)寄存器31存儲(chǔ)該主CPU 1處于休眠狀態(tài)。
在步驟S2中,當(dāng)確定主CPU 1沒有處于休眠狀態(tài),即處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3發(fā)送中斷信號(hào)到主CPU 1的中斷確定部分11(步驟S9)。主CPU 1執(zhí)行對(duì)應(yīng)于所發(fā)送中斷信號(hào)的中斷處理(步驟S10),并且進(jìn)入步驟S11的操作。
在步驟S11中,主CPU 1確認(rèn)在步驟S10執(zhí)行期間是否有針對(duì)主CPU 1的新中斷請(qǐng)求。當(dāng)存在新的中斷請(qǐng)求時(shí),主CPU 1返回步驟S10的操作,并且執(zhí)行新的中斷處理。另一方面,當(dāng)沒有新的中斷請(qǐng)求時(shí),主CPU 1進(jìn)入休眠狀態(tài)(步驟S12)。主CPU 1通知主CPU狀態(tài)寄存器31該主CPU 1進(jìn)入了休眠狀態(tài)。響應(yīng)于此,主CPU狀態(tài)寄存器31存儲(chǔ)該主CPU 1處于休眠狀態(tài)。
于是,根據(jù)第一實(shí)施例,當(dāng)外圍裝置發(fā)送中斷信號(hào)時(shí),信息處理裝置100確定該主CPU 1是否處于休眠狀態(tài)。當(dāng)主CPU 1處于休眠狀態(tài)時(shí),信息處理裝置100確定可以使該副CPU 2執(zhí)行中斷處理,并且使副CPU 2執(zhí)行中斷處理。因此,如果主CPU 1處于休眠狀態(tài),則信息處理裝置100可以執(zhí)行中斷處理而不喚醒主CPU 1,使得可以使主CPU 1長時(shí)間處于休眠狀態(tài),從而可以降低功耗。另一方面,當(dāng)主CPU 1處于操作狀態(tài)時(shí),信息處理裝置100確定可以使主CPU 1執(zhí)行中斷處理,并且使主CPU 1執(zhí)行該中斷處理。由此,可以提高中斷處理的響應(yīng)速度。于是,在該實(shí)施例中,由于根據(jù)主CPU 1的操作狀態(tài)選擇了要使用的CPU,所以提供了一種這樣的信息處理裝置100,其實(shí)現(xiàn)了低功耗并且其中用于處理來自外圍設(shè)備的請(qǐng)求的CPU不是固定分配的。在該實(shí)施例中,根據(jù)CPU的操作狀態(tài),確定使用哪個(gè)CPU來處理來自外圍裝置的處理請(qǐng)求。因此,與常規(guī)技術(shù)不同,其不需要在CPU和外圍裝置之間進(jìn)行直接連接或者提供其間的清楚對(duì)應(yīng)關(guān)系。因此,即使當(dāng)信息處理裝置具有不同的硬件結(jié)構(gòu)時(shí),如果使用該實(shí)施例的處理請(qǐng)求確定部分3,就提供了這樣一種信息處理裝置,其實(shí)現(xiàn)了低功耗,并且其中用于執(zhí)行來自外圍裝置的處理請(qǐng)求的CPU不被固定到主CPU或者副CPU。
注意在第一實(shí)施例中,中斷確定部分11和21可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3內(nèi)。同樣,主CPU狀態(tài)寄存器31和副CPU狀態(tài)寄存器33可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3內(nèi)。
注意將中斷信號(hào)記錄在中斷請(qǐng)求寄存器32中的方法可以是除上述形式以外的其它形式。
(第二實(shí)施例)在本發(fā)明的第二實(shí)施例中,信息處理裝置具有類似于第一實(shí)施例的硬件結(jié)構(gòu),并由此參照?qǐng)D1。圖4是說明根據(jù)本發(fā)明的第二實(shí)施例的信息處理裝置200的功能結(jié)構(gòu)的框圖。在圖4中,信息處理裝置200包括主CPU 1、副CPU 2a、處理請(qǐng)求確定部分3a以及外圍裝置41到43。在圖4中,具有類似于第一實(shí)施例的功能的部件將由相同的參考標(biāo)記表示并不再說明。處理請(qǐng)求確定部分3a包括主CPU狀態(tài)寄存器31、中斷請(qǐng)求寄存器32、副CPU狀態(tài)寄存器33和副CPU處理請(qǐng)求完成寄存器34。
副CPU處理請(qǐng)求完成寄存器34存儲(chǔ)是否禁止該副CPU 2a發(fā)生中斷。當(dāng)接收到中斷請(qǐng)求時(shí),副CPU 2a將指示副CPU 2a正在執(zhí)行中斷處理的標(biāo)志寫入副CPU處理請(qǐng)求完成寄存器34。當(dāng)完成中斷處理時(shí),副CPU 2a將指示該副CPU 2a沒有在執(zhí)行中斷處理的標(biāo)志寫入副CPU處理請(qǐng)求完成寄存器34。
圖5是本發(fā)明的第二實(shí)施例的信息處理裝置200的操作流程圖。在下文中,將參照?qǐng)D5介紹本發(fā)明的第二實(shí)施例的信息處理裝置200的操作。
當(dāng)外圍裝置41、42和43中的任意一個(gè)發(fā)送中斷信號(hào)時(shí),處理請(qǐng)求確定部分3a通過在對(duì)應(yīng)于中斷請(qǐng)求寄存器32的外圍裝置41、42和43的部分設(shè)定標(biāo)志來存儲(chǔ)已經(jīng)出現(xiàn)了中斷信號(hào)(步驟S21)。
接下來,處理請(qǐng)求確定部分3a參照主CPU狀態(tài)寄存器31來確定主CPU 1是否處于休眠狀態(tài)(步驟S22)。
當(dāng)主CPU 1處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3a進(jìn)入步驟S32的操作。另一方面,當(dāng)主CPU 1處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3a參考副CPU狀態(tài)寄存器33以確定副CPU 2a是否處于休眠狀態(tài)(步驟S23)。當(dāng)副CPU 2a處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3a使副CPU 2a進(jìn)入操作狀態(tài)、重寫副CPU狀態(tài)寄存器33(步驟S24),并且進(jìn)入步驟S25的操作。另一方面,當(dāng)副CPU 2a處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3a進(jìn)入步驟S25的操作。
在步驟S25中,處理請(qǐng)求確定部分3a參考副CPU處理請(qǐng)求完成寄存器34以確定該副CPU 2a是否可以接受中斷請(qǐng)求。當(dāng)副CPU 2a不能接受中斷請(qǐng)求時(shí),即,當(dāng)副CPU 2a正在執(zhí)行中斷請(qǐng)求時(shí),處理請(qǐng)求確定部分3a進(jìn)入步驟S26的操作。另一方面,當(dāng)副CPU 2a可以接受中斷請(qǐng)求時(shí),即,當(dāng)副CPU 2a沒有在執(zhí)行中斷請(qǐng)求時(shí),處理請(qǐng)求確定部分3a進(jìn)入步驟S27的操作。
在步驟S26中,處理請(qǐng)求確定部分3a確定主CPU 1是否處于休眠狀態(tài)。當(dāng)主CPU 1處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3a使主CPU1進(jìn)入操作狀態(tài)、重寫主CPU狀態(tài)寄存器(步驟S31),并且進(jìn)入步驟S32的操作。另一方面,當(dāng)主CPU 1處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3a進(jìn)入步驟S32的操作。
在步驟S27中,處理請(qǐng)求確定部分3a發(fā)送中斷信號(hào)到中斷確定部分21,并且進(jìn)入步驟S28的操作。
在步驟S28中,副CPU 2a執(zhí)行中斷處理。在步驟S28中的中斷處理開始期間,副CPU 2a將指示副CPU 2a正在執(zhí)行中斷處理的標(biāo)志寫入副CPU處理請(qǐng)求完成寄存器34中。在步驟S28的中斷處理結(jié)束期間,副CPU 2a將指示副CPU 2a沒有在執(zhí)行中斷處理的標(biāo)志寫入副CPU處理請(qǐng)求完成寄存器34中。在完成該中斷處理后,確認(rèn)在步驟S28期間是否在副CPU 2a中又發(fā)生中斷(步驟S29)。當(dāng)中斷確定部分21又檢測(cè)到中斷信號(hào)時(shí),處理流返回步驟S28,或者當(dāng)沒有檢測(cè)到中斷信號(hào)時(shí),副CPU 2a進(jìn)入休眠狀態(tài)(步驟S30)。副CPU 2a通知副CPU狀態(tài)寄存器33其進(jìn)入了休眠狀態(tài)。響應(yīng)于此,副CPU狀態(tài)寄存器33存儲(chǔ)副CPU 2a處于休眠狀態(tài)。
在步驟S32中,處理請(qǐng)求確定部分3a發(fā)送中斷信號(hào)到主CPU 1的中斷確定部分11。接下來,主CPU 1執(zhí)行對(duì)應(yīng)于所發(fā)送中斷信號(hào)的中斷處理(步驟S33),并且進(jìn)入步驟S34的操作。在步驟S33中,主CPU 1確定在步驟S33執(zhí)行期間是否存在針對(duì)主CPU 1的新中斷請(qǐng)求。當(dāng)存在新的中斷請(qǐng)求時(shí),主CPU 1返回步驟S33的操作,并執(zhí)行新的中斷處理。另一方面,當(dāng)不存在新的中斷請(qǐng)求時(shí),主CPU 1進(jìn)入休眠狀態(tài)(步驟S35)。主CPU 1通知主CPU狀態(tài)寄存器31其進(jìn)入了休眠狀態(tài)。響應(yīng)于此,主CPU狀態(tài)寄存器31存儲(chǔ)該主CPU 1處于休眠狀態(tài)。
于是,根據(jù)第二實(shí)施例,當(dāng)從外圍裝置發(fā)送中斷信號(hào)時(shí),信息處理裝置200確定主CPU 1是否處于休眠狀態(tài)。當(dāng)主CPU 1處于休眠狀態(tài)時(shí),信息處理裝置200確定是否可以使副CPU 2a執(zhí)行中斷處理。當(dāng)可以使副CPU 2a執(zhí)行中斷處理時(shí),信息處理裝置200使副CPU 2a執(zhí)行中斷處理。因此,如果主CPU 1處于休眠狀態(tài)并且副CPU 2a可以執(zhí)行中斷處理,則中斷處理可以執(zhí)行而不喚醒主CPU 1,使得可以使主CPU 1長時(shí)間處于休眠狀態(tài),從而可以降低功耗。另一方面,當(dāng)主CPU 1處于休眠狀態(tài)并且副CPU 2a不能執(zhí)行中斷處理時(shí),信息處理裝置200使主CPU 1進(jìn)入操作狀態(tài)并且使主CPU 1執(zhí)行中斷處理。同樣,如果主CPU 1處于操作狀態(tài),則信息處理裝置200確定可以使主CPU 1執(zhí)行中斷處理,于是就使主CPU 1執(zhí)行中斷處理。因此,可以提高中斷處理的響應(yīng)速度。于是,在該實(shí)施例中,由于根據(jù)主CPU 1和副CPU 2a的操作狀態(tài)選擇了要被使用的CPU,所以提供了一種這樣的信息處理裝置200,其實(shí)現(xiàn)了低功耗并且其中用于處理來自外圍裝置的請(qǐng)求的CPU不是固定分配的。在該實(shí)施例中,根據(jù)CPU的操作狀態(tài),確定使用哪個(gè)CPU來處理來自外圍裝置的處理請(qǐng)求。因此,與常規(guī)技術(shù)不同,其不需要在CPU和外圍裝置之間進(jìn)行直接連接或者提供其間的清楚對(duì)應(yīng)關(guān)系。因此,即使當(dāng)信息處理裝置具有不同的硬件結(jié)構(gòu)時(shí),如果使用該實(shí)施例的處理請(qǐng)求確定部分3a,就提供了這樣一種信息處理裝置,其實(shí)現(xiàn)了低功耗,并且其中用于執(zhí)行來自外圍裝置的處理請(qǐng)求的CPU也不用固定到主CPU或者副CPU。
注意在第二實(shí)施例中,中斷確定部分11和21可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3a內(nèi)。同樣,主CPU狀態(tài)寄存器31和副CPU狀態(tài)寄存器33可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3a內(nèi)。副CPU處理請(qǐng)求完成寄存器34也可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3a內(nèi)。
注意將中斷信號(hào)記錄在中斷請(qǐng)求寄存器32中的方法可以是除圖2的形式以外的其它形式。
(第三實(shí)施例)在本發(fā)明的第三實(shí)施例中,信息處理裝置具有類似于第一實(shí)施例的硬件結(jié)構(gòu),并由此參照?qǐng)D1。圖6是說明根據(jù)本發(fā)明的第三實(shí)施例的信息處理裝置300的功能結(jié)構(gòu)的框圖。在圖6中,信息處理裝置300包括主CPU 1b、副CPU 2b、處理請(qǐng)求確定部分3b、外圍裝置41到43、主CPU喚醒請(qǐng)求發(fā)送部分44、存儲(chǔ)區(qū)確定部分51以及存儲(chǔ)區(qū)61。在圖6中,具有類似于第一實(shí)施例和第二實(shí)施例的功能的部件將由相同的參考標(biāo)記表示并不再說明。
存儲(chǔ)區(qū)61是主CPU 1和副CPU 2可以參考的存儲(chǔ)區(qū)。存儲(chǔ)區(qū)61對(duì)應(yīng)于圖1的RAM(M8和M9)。
存儲(chǔ)區(qū)確定部分51存儲(chǔ)存儲(chǔ)區(qū)61是否正被副CPU 2b使用。存儲(chǔ)區(qū)確定部分51使用Lock(鎖)變量來管理副CPU 2b所使用的存儲(chǔ)區(qū)61的狀態(tài)。存儲(chǔ)區(qū)確定部分51對(duì)應(yīng)于圖1的RAM(M8和M9)。存儲(chǔ)區(qū)確定部分51在存儲(chǔ)器61正被副CPU 2參考時(shí)將指示存儲(chǔ)區(qū)61正被參考的標(biāo)志存儲(chǔ)在Lock變量中。注意當(dāng)副CPU 2參考存儲(chǔ)區(qū)61時(shí),該標(biāo)志由副CPU 2b設(shè)定。當(dāng)設(shè)定標(biāo)志時(shí),認(rèn)為該Lock變量被鎖定。當(dāng)該標(biāo)志沒有被設(shè)定時(shí),認(rèn)為該Lock變量被釋放。
主CPU喚醒請(qǐng)求發(fā)送部分44發(fā)送用于使主CPU 1b進(jìn)入操作狀態(tài)的中斷信號(hào)。
除了主CPU 1b和副CPU 2b可以訪問存儲(chǔ)區(qū)確定部分51和存儲(chǔ)區(qū)61之外,主CPU 1b和副CPU 2b具有類似于第一和第二實(shí)施例的主CPU 1和副CPU 2和2b的功能。
盡管圖6只說明了一對(duì)相對(duì)應(yīng)的存儲(chǔ)區(qū)61和存儲(chǔ)區(qū)確定部分51,但是可以提供任意對(duì)。
圖7A到7D是本發(fā)明的第三實(shí)施例的信息處理裝置300的操作流程圖。在下文中,將參照?qǐng)D7A到7D說明本發(fā)明的第三實(shí)施例的信息處理裝置300的操作。
當(dāng)外圍裝置41、42和43中的任意一個(gè)發(fā)送中斷信號(hào)時(shí),處理請(qǐng)求確定部分3b通過在中斷請(qǐng)求寄存器32的對(duì)應(yīng)于外圍裝置41、42或者43的部分設(shè)定標(biāo)志來存儲(chǔ)已經(jīng)出現(xiàn)了中斷信號(hào)(步驟S41)。
接著,處理請(qǐng)求確定部分3b參考主CPU狀態(tài)寄存器31以確定主CPU 1b是否處于休眠狀態(tài)(步驟S42)。
當(dāng)主CPU 1處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3b進(jìn)入步驟S49的操作。另一方面,當(dāng)主CPU 1b處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3b參考副CPU狀態(tài)寄存器33以確定副CPU 2b是否處于休眠狀態(tài)(步驟S43)。當(dāng)副CPU 2b處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3b使副CPU 2b進(jìn)入操作狀態(tài)、重寫副CPU狀態(tài)寄存器33(步驟S44),并且進(jìn)入步驟S45的操作。另一方面,當(dāng)副CPU 2b處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3b進(jìn)入步驟S45的操作。
在步驟S45中,處理請(qǐng)求確定部分3b參考副CPU處理請(qǐng)求完成寄存器34以確定副CPU 2b是否可以接受中斷請(qǐng)求。當(dāng)副CPU 2b不能接受中斷請(qǐng)求時(shí),處理請(qǐng)求確定部分3b進(jìn)入步驟S47的操作。另一方面,當(dāng)副CPU 2b可以接受中斷請(qǐng)求時(shí),處理請(qǐng)求確定部分3b進(jìn)入步驟S46的操作。
在步驟S47中,處理請(qǐng)求確定部分3b確定主CPU 1b是否處于休眠狀態(tài)。當(dāng)主CPU 1處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3b使主CPU 1b進(jìn)入操作狀態(tài)、重寫主CPU狀態(tài)寄存器(步驟S48),并且進(jìn)入步驟S49的操作。另一方面,當(dāng)主CPU 1b處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3b進(jìn)入步驟S49的操作。
在步驟S46中,處理請(qǐng)求確定部分3b發(fā)送中斷信號(hào)到副CPU 2b的中斷確定部分21,并且進(jìn)入步驟S100的操作。
在步驟S49中,處理請(qǐng)求確定部分3b發(fā)送中斷信號(hào)到主CPU 1b的中斷確定部分11,并且進(jìn)入步驟S200的操作。
圖7B是信息處理裝置300在圖7A的步驟S100中的操作的流程圖。在下文中,將參照?qǐng)D7B說明信息處理裝置300在圖7A的步驟S100中的操作。
當(dāng)檢測(cè)到中斷信號(hào)時(shí),副CPU 2b開始副CPU中斷例程(步驟S101)、將中斷禁止標(biāo)志寫入副CPU處理請(qǐng)求完成寄存器34(步驟S102),并且執(zhí)行中斷處理(步驟S103)。接著,處理請(qǐng)求確定部分3b確定在副CPU 2b的中斷處理執(zhí)行期間是否存在喚醒主CPU 1b的請(qǐng)求(步驟S104)。當(dāng)存在喚醒主CPU 1b的請(qǐng)求時(shí),處理請(qǐng)求確定部分3b執(zhí)行處理交換例程(步驟S300),并且進(jìn)入步驟S106的操作。另一方面,當(dāng)不存在喚醒主CPU 1b的請(qǐng)求時(shí),在中斷處理完成后處理請(qǐng)求確定部分3b將中斷允許標(biāo)志寫入副CPU處理請(qǐng)求完成寄存器34(步驟S105),并進(jìn)入步驟S106的操作。
在步驟S106中,處理請(qǐng)求確定部分3b確定在中斷處理期間是否出現(xiàn)了針對(duì)副CPU 2的新中斷請(qǐng)求。當(dāng)已經(jīng)出現(xiàn)新中斷請(qǐng)求時(shí),處理請(qǐng)求確定部分3b返回步驟S102的操作。另一方面,當(dāng)沒有出現(xiàn)新中斷請(qǐng)求時(shí),處理請(qǐng)求確定部分3b使副CPU 2b進(jìn)入休眠狀態(tài)(步驟S107),并且結(jié)束副CPU中斷例程(步驟S108)。
圖17C是信息處理裝置300在步驟S200中的操作的流程圖。當(dāng)中斷確定部分11檢測(cè)到中斷信號(hào)時(shí),主CPU 1b開始主CPU中斷例程(步驟S201)。接著,主CPU 1b執(zhí)行對(duì)應(yīng)于該中斷信號(hào)的中斷處理(步驟S202)。主CPU 1b確定在步驟S202期間是否出現(xiàn)了針對(duì)主CPU1b的新中斷請(qǐng)求(步驟S203)。當(dāng)已經(jīng)出現(xiàn)了新中斷請(qǐng)求時(shí),主CPU 1b返回步驟S202并且處理新中斷請(qǐng)求。另一方面,當(dāng)沒有出現(xiàn)新中斷請(qǐng)求時(shí),主CPU 1b進(jìn)入休眠狀態(tài)、將該事件通知主CPU狀態(tài)寄存器(步驟S204),并且結(jié)束主CPU狀態(tài)寄存器中斷例程(步驟S205)。
圖17D是信息處理裝置300在步驟S300中的操作的流程圖。最初,當(dāng)開始處理交換例程時(shí)(步驟S301),副CPU 2b將當(dāng)前副CPU 2b已經(jīng)接受的中斷處理的號(hào)(下文稱為中斷號(hào))傳送到主CPU喚醒請(qǐng)求發(fā)送部分44(步驟S302)。接著,主CPU喚醒請(qǐng)求發(fā)送部分44發(fā)送包括該中斷號(hào)的中斷信號(hào)到處理請(qǐng)求確定部分3b(步驟S303)。接著,處理請(qǐng)求確定部分3b發(fā)送該中斷信號(hào)到主CPU 1b(步驟S304)。根據(jù)該中斷信號(hào),主CPU 1b執(zhí)行忙循環(huán)直到從存儲(chǔ)區(qū)確定部分51獲得Lock變量(步驟S305),并且當(dāng)獲得Lock變量時(shí),開始繼續(xù)進(jìn)行副CPU 2b的處理(步驟S306),并且結(jié)束中斷交換例程(步驟S307)。
圖8是具體說明使主CPU 1b接管副CPU 2b中的處理的示例性方法的順序圖。最初,假設(shè)主CPU 1b處于休眠狀態(tài)(步驟S401)。根據(jù)發(fā)送到副CPU 2b的中斷信號(hào)(步驟S501),副CPU 2b執(zhí)行中斷處理(步驟S502),并且從存儲(chǔ)區(qū)確定部分51獲得Lock變量(步驟S503)。接著,副CPU 2b將用于喚醒主CPU 1b的請(qǐng)求發(fā)送到主CPU喚醒請(qǐng)求發(fā)送部分44(步驟S504)。響應(yīng)于此,主CPU喚醒請(qǐng)求發(fā)送部分44發(fā)送中斷信號(hào)到主CPU 1b,使得執(zhí)行用于喚醒主CPU 1b的中斷(步驟S505)。
根據(jù)中斷信號(hào),主CPU 1b執(zhí)行用于進(jìn)入操作狀態(tài)的喚醒處理(步驟S402)。在完成喚醒處理后,主CPU 1b將主CPU狀態(tài)寄存器31設(shè)置為操作狀態(tài)。當(dāng)主CPU狀態(tài)寄存器31進(jìn)入操作狀態(tài)時(shí),處理請(qǐng)求確定部分3b發(fā)送中斷信號(hào)到主CPU 1b(步驟S601),并且將作為喚醒完成觸發(fā)的主CPU喚醒完成中斷信號(hào)發(fā)送到副CPU 2b(步驟S403)。
根據(jù)喚醒完成觸發(fā),副CPU 2b閃存存儲(chǔ)區(qū)61中存儲(chǔ)的高速緩存數(shù)據(jù)(步驟S506),并且將寄存器信息存儲(chǔ)到存儲(chǔ)區(qū)61中(步驟S507)。
主CPU 1b執(zhí)行忙循環(huán)以獲得Lock變量,直到Lock變量被釋放(步驟S404)。當(dāng)副CPU 2b釋放該Lock變量(步驟S508)時(shí),主CPU 1b走出忙循環(huán)并且獲得該Lock變量(步驟S405),從存儲(chǔ)區(qū)61獲得副CPU 2b所存儲(chǔ)的寄存器信息(步驟S406),并且開始繼續(xù)已經(jīng)在副CPU 2b中執(zhí)行的中斷處理(步驟S407)。這里,上述實(shí)例中所述的主CPU 1b的喚醒完成觸發(fā)通過改變主CPU狀態(tài)寄存器31來實(shí)現(xiàn)。然而,喚醒完成觸發(fā)的事件可以由專門用于通知副CPU 2b該事件的外圍裝置來執(zhí)行。
于是,根據(jù)第三實(shí)施例,當(dāng)外圍裝置發(fā)送中斷信號(hào)時(shí),信息處理裝置300確定主CPU 1b是否處于休眠狀態(tài)。當(dāng)主CPU 1b處于休眠狀態(tài)時(shí),信息處理裝置300確定是否可以使副CPU 2b執(zhí)行中斷處理。當(dāng)可以使副CPU 2b執(zhí)行中斷處理時(shí),信息處理裝置300使副CPU 2b執(zhí)行該中斷處理。因此,如果主CPU 1b處于休眠狀態(tài)并且副CPU 2b可以執(zhí)行中斷處理,則中斷處理可以在不喚醒主CPU 1b的情況下執(zhí)行,使得主CPU 1b可以長時(shí)間處于休眠狀態(tài),從而可以降低功耗。另一方面,當(dāng)主CPU 1b處于休眠狀態(tài)并且副CPU 2b不能執(zhí)行中斷處理時(shí),信息處理裝置300使主CPU 1b進(jìn)入操作狀態(tài)并且使主CPU1b執(zhí)行中斷處理。同樣,如果主CPU 1b處于操作狀態(tài),則信息處理裝置300使主CPU 1b執(zhí)行該中斷處理。從而,可以提高中斷處理的響應(yīng)速度。此外,如果在副CPU 2b執(zhí)行中斷處理期間存在喚醒主CPU1b的請(qǐng)求,則信息處理裝置300如此操作,使得主CPU 1b繼續(xù)執(zhí)行副CPU 2b中的處理。因此,可以進(jìn)一步提高中斷處理的響應(yīng)速度。于是,在該實(shí)施例中,由于根據(jù)主CPU 1b和副CPU 2b的操作狀態(tài)來選擇將要使用的CPU,所以提供了一種這樣的信息處理裝置300,其實(shí)現(xiàn)了低功耗并且其中用于處理來自外圍設(shè)備的請(qǐng)求的CPU不是固定分配的。在該實(shí)施例中,根據(jù)CPU的操作狀態(tài)確定使用哪個(gè)CPU來處理來自外圍裝置的處理請(qǐng)求。因此,這與常規(guī)技術(shù)不同,其不需要在CPU和外圍裝置之間進(jìn)行直接連接或者提供其間的清楚對(duì)應(yīng)關(guān)系。因此,即使當(dāng)信息處理裝置具有不同的硬件結(jié)構(gòu)時(shí),如果使用該實(shí)施例的處理請(qǐng)求確定部分3b,就提供了這樣一種信息處理裝置,其實(shí)現(xiàn)了低功耗,并且其中用于執(zhí)行來自外圍裝置的處理請(qǐng)求的CPU也不用固定到主CPU或者副CPU。
注意在第三實(shí)施例中,中斷確定部分11和21可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3b內(nèi)。同樣,主CPU狀態(tài)寄存器31和副CPU狀態(tài)寄存器33可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3b內(nèi)。副CPU處理請(qǐng)求完成寄存器34也可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3b內(nèi)。
注意將中斷信號(hào)記錄在中斷請(qǐng)求寄存器32中的方法可以是除圖6的形式以外的其它形式。
(第四實(shí)施例)在本發(fā)明的第四實(shí)施例中,信息處理裝置具有類似于第一實(shí)施例的硬件結(jié)構(gòu),并由此參照?qǐng)D1。圖9是說明根據(jù)本發(fā)明的第四實(shí)施例的信息處理裝置400的功能結(jié)構(gòu)的框圖。在圖9中,信息處理裝置400包括主CPU 1c、副CPU 2a、處理請(qǐng)求確定部分3c以及外圍裝置41到43。在圖9中,具有類似于第二實(shí)施例的功能的部件將由相同的參考標(biāo)記表示并不再說明。處理請(qǐng)求確定部分3c包括主CPU狀態(tài)寄存器31、主CPU處理請(qǐng)求完成寄存器35、中斷請(qǐng)求寄存器32、副CPU狀態(tài)寄存器33和副CPU處理請(qǐng)求完成寄存器34。
主CPU處理請(qǐng)求完成寄存器35存儲(chǔ)是否禁止主CPU 1c被中斷。當(dāng)接收到中斷請(qǐng)求時(shí),主CPU 1c將指示主CPU 1c正在執(zhí)行中斷處理的標(biāo)志寫入主CPU處理請(qǐng)求完成寄存器35。當(dāng)結(jié)束該中斷處理時(shí),主CPU 1c將指示主CPU 1c沒有在執(zhí)行中斷的標(biāo)志寫入主CPU處理請(qǐng)求完成寄存器35。于是,第四實(shí)施例的信息處理裝置400具有通過將主CPU處理請(qǐng)求完成寄存器35添加到第二實(shí)施例的信息處理裝置200所獲得的結(jié)構(gòu)。
圖10是本發(fā)明的第四實(shí)施例的信息處理裝置400的操作流程圖。在下文中,將參照?qǐng)D10說明本發(fā)明的第四實(shí)施例的信息處理裝置400的操作。
信息處理裝置400的操作與第二實(shí)施例的信息處理裝置200的操作具有許多共同點(diǎn)。在圖10的流程圖的步驟中,具有類似于第二實(shí)施例的信息處理裝置200的操作的步驟將由類似于圖5的步驟號(hào)來表示并且不對(duì)其進(jìn)行描述。
圖10的流程圖與圖5的第二實(shí)施例的流程圖的不同之處在于在從步驟S22轉(zhuǎn)換到步驟S32的某個(gè)中點(diǎn)處增加了步驟S51的操作。在步驟S22中,當(dāng)確定主CPU 1c處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3c執(zhí)行步驟S51的操作。在步驟S51中,處理請(qǐng)求確定部分3c參考存儲(chǔ)在主CPU處理請(qǐng)求完成寄存器35中的寄存器來確定主CPU1c是否可以接受中斷。當(dāng)主CPU 1c不能接受中斷時(shí),信息處理裝置400進(jìn)入步驟S23的操作。另一方面,當(dāng)主CPU 1c可以接受中斷時(shí),信息處理裝置400進(jìn)入步驟S32的操作。隨后的處理步驟類似于第二實(shí)施例。
于是,根據(jù)第四實(shí)施例,當(dāng)主CPU 1c處于休眠狀態(tài)時(shí),副CPU2a執(zhí)行中斷處理,從而可以使主CPU 1長時(shí)間處于休眠狀態(tài)。另一方面,當(dāng)主CPU 1c處于操作狀態(tài)時(shí),副CPU 2a也可以并行處理中斷處理。與第二實(shí)施例相比,提高了信息處理裝置400的響應(yīng)速度。從而提供了一種實(shí)現(xiàn)低功耗并且其中響應(yīng)速度提高的信息處理裝置。
(第五實(shí)施例)在本發(fā)明的第五實(shí)施例中,信息處理裝置具有類似于第一實(shí)施例的硬件結(jié)構(gòu),并由此參照?qǐng)D1。圖11是說明本發(fā)明的第五實(shí)施例的信息處理裝置500的功能結(jié)構(gòu)的框圖。在圖11中,信息處理裝置500包括主CPU 1c、副CPU 2a、處理請(qǐng)求確定部分3d以及外圍裝置41到43。在圖11中,具有類似于第四實(shí)施例的功能的部件將由相同的參考標(biāo)記表示并不再說明。處理請(qǐng)求確定部分3d包括主CPU狀態(tài)寄存器31、主CPU處理請(qǐng)求完成寄存器35、中斷請(qǐng)求寄存器32、副CPU狀態(tài)寄存器33、副CPU處理請(qǐng)求完成寄存器34以及處理請(qǐng)求目的地指定部分36。
處理請(qǐng)求目的地指定部分36與中斷號(hào)相關(guān)聯(lián)地存儲(chǔ)關(guān)于處理請(qǐng)求確定部分3d應(yīng)該將中斷信號(hào)發(fā)送到主CPU 1c還是副CPU 2a的信息(以下稱為指定CPU信息),和關(guān)于除了指定CPU之外的其它CPU是否可以使用的信息(其它CPU可用性信息)。
圖12是說明存儲(chǔ)在處理請(qǐng)求目的地指定部分36中的示例性信息的圖。在圖12中,例如,作為中斷號(hào),當(dāng)分配了來自外圍裝置41的中斷處理時(shí),定義了處理請(qǐng)求確定部分3d應(yīng)該將中斷信號(hào)發(fā)送到主CPU 1c,并且可以將中斷信號(hào)發(fā)送到副CPU 2a。同樣,例如,作為中斷號(hào),當(dāng)分配了來自外圍裝置42(或者43)的中斷處理時(shí),定義了處理請(qǐng)求確定部分3d應(yīng)該將中斷發(fā)送到副CPU 2a,并且不允許將中斷信號(hào)發(fā)送到主CPU 1c。
例如,在信息處理裝置500的初始化期間,限定處理請(qǐng)求目的地指定部分36的限定內(nèi)容。
圖13A到13D是本發(fā)明的第五實(shí)施例的信息處理裝置500的操作流程圖。在下文中,將參照?qǐng)D13A到13D說明本發(fā)明的第五實(shí)施例的信息處理裝置500的操作。
當(dāng)外圍裝置41、42和43中的任意一個(gè)發(fā)送中斷信號(hào)時(shí),處理請(qǐng)求確定部分3d通過在中斷請(qǐng)求寄存器32的對(duì)應(yīng)于外圍裝置41、42或者43的部分設(shè)定標(biāo)志來存儲(chǔ)已經(jīng)出現(xiàn)了中斷信號(hào)(步驟S61)。
接著,處理請(qǐng)求確定部分3d執(zhí)行處理請(qǐng)求目的地確定功能以確定應(yīng)該執(zhí)行中斷處理的CPU(步驟S700)。
在步驟S700中,當(dāng)將副CPU 2a指定為應(yīng)該執(zhí)行中斷處理的CPU時(shí),處理請(qǐng)求確定部分3d參考副CPU狀態(tài)寄存器33以確定副CPU 2a是否處于休眠狀態(tài)(步驟S62)。當(dāng)副CPU 2a處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3d使副CPU 2a進(jìn)入操作狀態(tài)(步驟S63),并且進(jìn)入步驟S64的操作。另一方面,當(dāng)副CPU 2a處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S64的操作。在步驟S64中,處理請(qǐng)求確定部分3d參考副CPU處理請(qǐng)求完成寄存器34以確定副CPU 2a是否可以接受中斷處理。當(dāng)副CPU 2a不能接受中斷處理時(shí),處理請(qǐng)求確定部分3d返回步驟S64的操作。另一方面,當(dāng)副CPU 2a可以接受中斷處理時(shí),處理請(qǐng)求確定部分3d發(fā)送中斷信號(hào)到中斷確定部分21(步驟S65),并且執(zhí)行副CPU中斷處理例程(步驟S900)。
在步驟S700中,當(dāng)指定主CPU 1c為應(yīng)該執(zhí)行中斷處理的CPU時(shí),處理請(qǐng)求確定部分3d參考主CPU狀態(tài)寄存器31以確定主CPU 1c是否處于休眠狀態(tài)(步驟S66)。當(dāng)主CPU 1c處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3d使主CPU 1c進(jìn)入操作狀態(tài)(步驟S67),并且進(jìn)入步驟S68的操作。另一方面,當(dāng)主CPU 1c處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S68的操作。在步驟S68中,處理請(qǐng)求確定部分3d參考主CPU處理請(qǐng)求完成寄存器35以確定主CPU 1c是否可以接受中斷處理。當(dāng)主CPU 1c不能接受中斷處理時(shí),該處理請(qǐng)求確定部分3d返回步驟S68的操作。另一方面,當(dāng)主CPU 1c可以接受中斷處理時(shí),處理請(qǐng)求確定部分3d發(fā)送中斷信號(hào)到中斷確定部分11(步驟S69),并且執(zhí)行主CPU中斷處理例程(步驟S800)。
圖13B是圖13A的步驟S700的處理的流程圖。在下文,將參考圖13B詳細(xì)介紹圖13A的步驟S700的處理。
當(dāng)處理請(qǐng)求功能開始時(shí)(步驟S701),處理請(qǐng)求確定部分3d參考處理請(qǐng)求目的地指定部分36的指定CPU信息來確認(rèn)針對(duì)該中斷信號(hào)指定哪一個(gè)CPU(步驟S702)。
當(dāng)指定的CPU是主CPU 1c時(shí),處理請(qǐng)求確定部分3d參考主CPU狀態(tài)寄存器31以確定主CPU 1c是否處于休眠狀態(tài)(步驟S707)。當(dāng)主CPU 1c處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S709的操作。另一方面,當(dāng)主CPU 1c處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3d參考處理請(qǐng)求目的地指定部分36的其它CPU可用性信息來確定是否允許將中斷信號(hào)發(fā)送到副CPU 2a(步驟S708)。當(dāng)允許將中斷信號(hào)發(fā)送到副CPU 2a時(shí),處理請(qǐng)求確定部分3d選擇副CPU 2a作為處理請(qǐng)求目的地CPU,并且結(jié)束處理請(qǐng)求目的地確定功能(步驟S711)。另一方面,當(dāng)不允許將中斷信號(hào)發(fā)送到副CPU 2a時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S709的操作。
在步驟S709中,處理請(qǐng)求確定部分3d參考主CPU處理請(qǐng)求完成寄存器35以確定主CPU 1c是否可以接受中斷。當(dāng)主CPU 1c可以接受中斷時(shí),處理請(qǐng)求確定部分3d選擇主CPU 1c作為處理請(qǐng)求目的地CPU,并且結(jié)束處理請(qǐng)求目的地確定功能(步驟S712)。另一方面,當(dāng)主CPU 1c不能接受中斷時(shí),處理請(qǐng)求確定部分3d確定是否允許將中斷信號(hào)發(fā)送到副CPU 2a,這與步驟S708類似(步驟S710)。當(dāng)允許將中斷信號(hào)發(fā)送到副CPU 2a時(shí),處理請(qǐng)求確定部分3d選擇副CPU 2a作為處理請(qǐng)求目的地CPU,并且結(jié)束處理請(qǐng)求目的地確定功能(步驟S711)。另一方面,當(dāng)不允許將中斷信號(hào)發(fā)送到副CPU 2a時(shí),處理請(qǐng)求確定部分3d選擇主CPU 1c作為處理請(qǐng)求目的地CPU,并且結(jié)束處理請(qǐng)求目的地確定功能(步驟S712)。
在步驟S702中,當(dāng)指定的CPU是副CPU 2a時(shí),處理請(qǐng)求確定部分3d參考副CPU狀態(tài)寄存器33以確定副CPU 2a是否處于休眠狀態(tài)(步驟S703)。當(dāng)副CPU 2a處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S705的操作。另一方面,當(dāng)副CPU 2a處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3d參考處理請(qǐng)求目的地指定部分36的其它CPU可用性信息來確定是否允許將中斷信號(hào)發(fā)送到主CPU 1c(步驟S704)。當(dāng)允許將中斷信號(hào)發(fā)送到主CPU 1c時(shí),處理請(qǐng)求確定部分3d選擇主CPU 1c作為處理請(qǐng)求目的地CPU,并且結(jié)束處理請(qǐng)求目的地確定功能(步驟S712)。另一方面,當(dāng)不允許將中斷信號(hào)發(fā)送到主CPU 1c時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S705的操作。
在步驟S705中,處理請(qǐng)求確定部分3d參考副CPU處理請(qǐng)求完成寄存器34以確定副CPU 2a是否可以接受中斷。當(dāng)副CPU 2a可以接受中斷時(shí),處理請(qǐng)求確定部分3d選擇副CPU 2a作為處理請(qǐng)求目的地CPU,并且結(jié)束處理請(qǐng)求目的地確定功能(步驟S711)。另一方面,當(dāng)副CPU 2a不能接受中斷時(shí),處理請(qǐng)求確定部分3d確定是否允許將中斷信號(hào)發(fā)送到主CPU 1c,這與步驟S704類似(步驟S706)。當(dāng)允許將中斷信號(hào)發(fā)送到主CPU 1c時(shí),處理請(qǐng)求確定部分3d選擇主CPU 1c作為處理請(qǐng)求目的地CPU,并且結(jié)束處理請(qǐng)求目的地確定功能(步驟S712)。另一方面,當(dāng)不允許將中斷信號(hào)發(fā)送到主CPU 1c時(shí),處理請(qǐng)求確定部分3d選擇副CPU 2a作為處理請(qǐng)求目的地CPU,并且結(jié)束處理請(qǐng)求目的地確定功能(步驟S711)。
圖13C是圖13A的步驟S800中的主CPU中斷處理例程的具體流程圖。在下文,將參考圖13C詳細(xì)介紹圖13A的步驟S800中的主CPU中斷處理例程。
當(dāng)主CPU中斷處理例程開始并且中斷確定部分11檢測(cè)到中斷信號(hào)時(shí)(步驟S801),主CPU 1c將中斷禁止標(biāo)志寫入主CPU處理請(qǐng)求完成寄存器35(步驟S802),并且執(zhí)行對(duì)應(yīng)于中斷號(hào)的中斷處理(步驟S803)。當(dāng)中斷處理完成時(shí),主CPU 1c將中斷允許標(biāo)志寫入主CPU處理請(qǐng)求完成寄存器35(步驟S804)。接著,主CPU 1c參考中斷確定部分11以確定是否存在中斷請(qǐng)求(步驟S805)。當(dāng)存在中斷請(qǐng)求時(shí),主CPU 1c返回步驟S802的操作。另一方面,當(dāng)不存在中斷請(qǐng)求時(shí),主CPU 1c進(jìn)入休眠狀態(tài)(步驟S806),并且結(jié)束主CPU中斷處理例程(步驟S807)。
圖13D是圖13A的步驟S900中的副CPU中斷處理例程的具體流程圖。在下文,將參考圖13D詳細(xì)介紹圖13A的步驟S900中的副CPU中斷處理例程。
當(dāng)副CPU中斷處理例程開始并且中斷確定部分21檢測(cè)到中斷信號(hào)時(shí)(步驟S901),副CPU 2a將中斷禁止標(biāo)志寫入副CPU處理請(qǐng)求完成寄存器34(步驟S902),并且執(zhí)行對(duì)應(yīng)于中斷號(hào)的中斷處理(步驟S903)。當(dāng)中斷處理完成時(shí),副CPU 2a將中斷允許標(biāo)志寫入副CPU處理請(qǐng)求完成寄存器34(步驟S904)。接著,副CPU 2a參考中斷確定部分21以確定是否存在中斷請(qǐng)求(步驟S905)。當(dāng)存在中斷請(qǐng)求時(shí),副CPU 2a返回步驟S902的操作。另一方面,當(dāng)不存在中斷請(qǐng)求時(shí),副CPU 2a進(jìn)入休眠狀態(tài)(步驟S906),并且結(jié)束副CPU中斷處理例程(步驟S907)。
于是,根據(jù)第五實(shí)施例,可以靈活地確定使哪個(gè)CPU來執(zhí)行針對(duì)每個(gè)中斷的處理,使得例如將具有相對(duì)小處理負(fù)載并且在短周期內(nèi)執(zhí)行的事件分配給副CPU 2a,而將其它事件分配給主CPU 1c,從而可以降低功耗。同樣,在第五實(shí)施例中,當(dāng)通過處理請(qǐng)求目的地指定部分36指定主CPU 1c時(shí),信息處理裝置500最初確定主CPU 1c是否處于休眠狀態(tài)(見圖13B的步驟S707)。當(dāng)主CPU 1c處于休眠狀態(tài)時(shí),信息處理裝置500確定中斷處理是否可以由副CPU 2a執(zhí)行(見圖13B的步驟S708)。當(dāng)中斷處理可以由副CPU 2a執(zhí)行時(shí),信息處理裝置500使副CPU 2a執(zhí)行中斷處理。于是,如果主CPU 1c處于休眠狀態(tài)并且副CPU 2a可以執(zhí)行中斷處理,則中斷處理可以在不喚醒主CPU 1c的情況下進(jìn)行,使得主CPU 1c可以長時(shí)間處于休眠狀態(tài),從而可以降低功耗。另一方面,當(dāng)主CPU 1c處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3d確定中斷處理是否可以由主CPU 1c執(zhí)行。當(dāng)中斷處理可以由主CPU 1c執(zhí)行時(shí),主CPU 1c執(zhí)行該中斷處理,使得響應(yīng)速度提高。
注意在第五實(shí)施例中,中斷確定部分11和21可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3d內(nèi)。同樣,主CPU狀態(tài)寄存器31和副CPU狀態(tài)寄存器33可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3d內(nèi)。副CPU處理請(qǐng)求完成寄存器34也可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3d內(nèi)。
注意將中斷信號(hào)記錄在中斷請(qǐng)求寄存器32中的方法可以是除圖11的形式以外的其它形式。
注意在第五實(shí)施例中,作為接受中斷前的處理,使用如圖13A的步驟S64和S68所示的忙循環(huán)。然而,處理請(qǐng)求確定部分3d可以在諸如隊(duì)列的數(shù)據(jù)結(jié)構(gòu)中按時(shí)間序列積累中斷處理,并且發(fā)送其后的中斷信號(hào),同時(shí)監(jiān)控中斷確定部分11和21。
注意在第五實(shí)施例中,如同在第三實(shí)施例中,可以引入用于使主CPU 1c接管副CPU 2a中的處理的機(jī)制。這可以通過透徹理解第三實(shí)施例的圖7B到7D和圖8所得來的方法來實(shí)現(xiàn)。
注意在第五實(shí)施例中,步驟S709、S703和S705中的至少一個(gè)是非必需的。
(第六實(shí)施例)根據(jù)本發(fā)明的第六實(shí)施例的信息處理裝置具有類似于第五實(shí)施例的部件,并由此參照?qǐng)D1、11和12。
圖14是本發(fā)明的第六實(shí)施例的信息處理裝置的操作流程圖。在下文中,將參照?qǐng)D14來介紹本發(fā)明的第六實(shí)施例的信息處理裝置的操作。
當(dāng)外圍裝置41、42和43中的任意一個(gè)發(fā)送中斷信號(hào)時(shí),處理請(qǐng)求確定部分3d通過在中斷請(qǐng)求寄存器32的對(duì)應(yīng)于外圍裝置41、42或者43的部分設(shè)定標(biāo)志來存儲(chǔ)已經(jīng)出現(xiàn)了中斷信號(hào)(步驟S71)。
接著,處理請(qǐng)求確定部分3b參考主CPU狀態(tài)寄存器31以確定主CPU 1是否處于休眠狀態(tài)(步驟S72)。
在步驟S72中,當(dāng)確定主CPU 1處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3d參考主CPU處理請(qǐng)求完成寄存器35來確定主CPU 1c是否可以接受中斷(步驟S73)。當(dāng)主CPU 1c可以接受中斷時(shí),處理請(qǐng)求確定部分3d參考處理請(qǐng)求目的地指定部分36中所定義的表中的指定CPU信息,根據(jù)是否將主CPU 1c指定為指定CPU來確定是否允許將中斷信號(hào)發(fā)送到主CPU 1c(步驟S74)。這里,作為處理請(qǐng)求目的地指定部分36中所定義的表的實(shí)例,可以使用如圖15以及圖12所示出的表,其中指定CPU信息只與中斷號(hào)相關(guān)聯(lián)地定義。
在步驟S74中,當(dāng)不允許將中斷信號(hào)發(fā)送到主CPU 1c時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S75的操作。另一方面,當(dāng)允許將中斷信號(hào)發(fā)送到主CPU 1c時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S81的操作。
在步驟S75中,處理請(qǐng)求確定部分3d參考副CPU狀態(tài)寄存器33來確定副CPU 2a是否處于休眠狀態(tài)。
當(dāng)副CPU 2a處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3d使副CPU 2a進(jìn)入操作狀態(tài)(步驟S76),并且進(jìn)入步驟S77的操作。另一方面,當(dāng)副CPU 2a沒有處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S77的操作。
在步驟S77中,處理請(qǐng)求確定部分3d參考副CPU處理請(qǐng)求完成寄存器34來確定副CPU 2a是否可以接受中斷信號(hào)。
當(dāng)副CPU 2a不能接受中斷時(shí),處理請(qǐng)求確定部分3d返回步驟S77的操作,并且當(dāng)確定副CPU 2a不能接受中斷時(shí),處理請(qǐng)求確定部分3d執(zhí)行忙循環(huán)來等待,直到副CPU 2a可以接受中斷。當(dāng)副CPU2a可以接受中斷信號(hào)時(shí),處理請(qǐng)求確定部分3d發(fā)送中斷信號(hào)到中斷確定部分21(步驟S78),并且執(zhí)行副CPU中斷處理例程(步驟S900)。該副CPU中斷處理例程類似于第五實(shí)施例的副CPU中斷處理例程,并由此參照?qǐng)D13D,并且不再對(duì)該副CPU中斷處理例程進(jìn)行說明。
在步驟S72中,當(dāng)確定主CPU 1c處于休眠狀態(tài)時(shí),處理請(qǐng)求確定部分3d參考處理請(qǐng)求目的地指定部分36中所定義的表上的指定CPU信息來確定是否允許將中斷信號(hào)發(fā)送到副CPU 2a(步驟S79)。當(dāng)允許將中斷信號(hào)發(fā)送到副CPU 2a時(shí),處理請(qǐng)求確定部分3d進(jìn)入步驟S75的操作。另一方面,當(dāng)確定不允許將中斷信號(hào)發(fā)送到副CPU 2a時(shí),處理請(qǐng)求確定部分3d使主CPU 1c進(jìn)入操作狀態(tài)(步驟S80),并且進(jìn)入步驟S81的操作。
在步驟S81中,處理請(qǐng)求確定部分3d參考主CPU處理請(qǐng)求完成寄存器35來確定主CPU 1c是否可以接受中斷。當(dāng)主CPU 1c不能接受中斷時(shí),處理請(qǐng)求確定部分3d返回步驟S81的操作,并且在主CPU1c可以接受中斷前一直執(zhí)行忙等待。當(dāng)主CPU 1c可以接受中斷時(shí),處理請(qǐng)求確定部分3d發(fā)送中斷信號(hào)到中斷確定部分11(步驟S82),并且執(zhí)行主CPU中斷處理例程(步驟S900)。該主CPU中斷處理例程類似于第五實(shí)施例的主CPU中斷處理例程,并由此可以參考圖13C,并且不再對(duì)主CPU中斷處理例程進(jìn)行說明。
于是,根據(jù)第六實(shí)施例,例如可以靈活地確定使哪個(gè)CPU來執(zhí)行針對(duì)每個(gè)中斷的處理,使得例如將具有較小的處理負(fù)載并且在短周期內(nèi)執(zhí)行的事件分配給副CPU 2,而將其它事件分配給主CPU 1,從而可以降低功耗。同樣,在第六實(shí)施例中,信息處理裝置最初確定主CPU 1c是否處于休眠狀態(tài)(見圖14的步驟S72)。當(dāng)主CPU 1c處于休眠狀態(tài)時(shí),信息處理裝置確定中斷處理是否可以由副CPU 2a執(zhí)行(見圖14的步驟S79)。當(dāng)中斷處理可以由副CPU 2a執(zhí)行時(shí),信息處理裝置使副CPU 2a執(zhí)行中斷處理。因此,如果主CPU 1c處于休眠狀態(tài)并且副CPU 2a可以執(zhí)行中斷處理,則中斷處理可以在不喚醒主CPU 1c的情況下進(jìn)行,使得主CPU 1c可以長時(shí)間處于休眠狀態(tài),從而可以降低功耗。另一方面,當(dāng)主CPU 1c處于操作狀態(tài)時(shí),處理請(qǐng)求確定部分3d確定中斷處理是否可以由主CPU 1c執(zhí)行(圖14的步驟S74)。當(dāng)中斷處理可以由主CPU 1c執(zhí)行時(shí),該信息處理裝置使主CPU1c執(zhí)行中斷處理。從而提高了響應(yīng)速度。
注意在第六實(shí)施例中,中斷確定部分11和21可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3d內(nèi)。同樣,主CPU狀態(tài)寄存器31和副CPU狀態(tài)寄存器33可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3d內(nèi)。副CPU處理請(qǐng)求完成寄存器34也可以設(shè)置在CPU內(nèi)或者處理請(qǐng)求確定部分3d內(nèi)。
注意將中斷信號(hào)記錄在中斷請(qǐng)求寄存器32中的方法可以是除圖11的形式以外的其它形式。
注意在第六實(shí)施例中,作為接受中斷前的處理,使用如圖14的步驟S77和S81所示的忙循環(huán)。然而,處理請(qǐng)求確定部分3d可以在諸如隊(duì)列的數(shù)據(jù)結(jié)構(gòu)中按時(shí)間序列積累中斷處理,并且發(fā)送其后的中斷信號(hào),同時(shí)監(jiān)控中斷確定部分11和21。
注意在第六實(shí)施例中,如同在第三實(shí)施例中,可以引入用于使主CPU 1c接管副CPU 2a中的處理的機(jī)制。這可以通過透徹理解第三實(shí)施例的圖7B到7D所得到的方法來實(shí)現(xiàn)。
注意中斷控制器(M4)可以是通用計(jì)算機(jī)裝置(例如,微型計(jì)算機(jī)等),存儲(chǔ)在存儲(chǔ)器裝置中的程序可以讀入該計(jì)算機(jī)裝置中,并且實(shí)施例中所述的操作可以由該計(jì)算機(jī)裝置執(zhí)行,從而實(shí)現(xiàn)處理請(qǐng)求確定部分。該程序可以預(yù)先并入信息處理裝置中,或者可以后來裝入信息處理裝置中。
注意用于實(shí)現(xiàn)本發(fā)明的信息處理裝置的功能塊(例如,處理請(qǐng)求確定部分)一般可以實(shí)現(xiàn)為集成電路(LSI)??梢詫⒚總€(gè)功能塊分別安裝在一個(gè)芯片上,或者可以將所有功能塊的一部分或者全部安裝在一個(gè)芯片上。這里,使用術(shù)語LSI。LSI也可稱為IC、系統(tǒng)LSI、超級(jí)LSI或者超LSI,這取決于封裝密度。同樣,集成電路不限于LSI。集成電路可以通過專用電路或者通用處理器來實(shí)現(xiàn)。此外,可以使用現(xiàn)場(chǎng)可編程門陣列(FPGA)或者可重配置的處理器,其中FPGA可以在LSI生產(chǎn)后重新編程,可重配置的處理器中,LSI中的電路單元的連接或者設(shè)置可以被重新配置。而且,如果代替LSI的集成電路技術(shù)隨著半導(dǎo)體技術(shù)的進(jìn)步或者來源于半導(dǎo)體技術(shù)的其它技術(shù)的出現(xiàn)而發(fā)展,則可以使用這種技術(shù)來封裝功能塊。生物工藝學(xué)同樣可以適用。
盡管已經(jīng)詳細(xì)介紹了本發(fā)明,但是前述說明在所有方面都是示例性的而非限制性的。應(yīng)該理解,在不脫離本發(fā)明范圍的情況下,可以設(shè)計(jì)許多其它的改進(jìn)和變化。
工業(yè)實(shí)用性本發(fā)明的信息處理裝置可以使用具有低功耗的副CPU來執(zhí)行處理,而不使具有高性能、高功耗的主CPU頻繁進(jìn)入操作狀態(tài)。因此,本發(fā)明的信息處理裝置可用于由電池驅(qū)動(dòng)的移動(dòng)終端等。同樣,本發(fā)明的信息處理裝置還適用于各種家用電器、信息處理裝置、工業(yè)裝置等期望展示功率降低效果的裝置以及移動(dòng)終端裝置。
權(quán)利要求
1.一種用于控制一個(gè)以上的內(nèi)部或者外部外圍裝置的信息處理裝置,包括主CPU,其能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài);副CPU,其功耗低于所述主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài);以及處理請(qǐng)求確定部分,用于確定使所述主CPU和所述副CPU中的哪一個(gè)來執(zhí)行涉及來自所述外圍裝置中的一個(gè)的請(qǐng)求的處理,其中所述處理請(qǐng)求確定部分確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài),并且當(dāng)所述主CPU處于休眠狀態(tài)時(shí),確定是否使所述副CPU執(zhí)行所述處理,并且當(dāng)所述主CPU處于操作狀態(tài)時(shí),確定是否能夠使所述主CPU執(zhí)行所述處理,并且根據(jù)所述確定的結(jié)果,使所述主CPU或者所述副CPU執(zhí)行所述處理。
2.根據(jù)權(quán)利要求1所述的信息處理裝置,其中,當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述處理請(qǐng)求確定部分使所述副CPU執(zhí)行所述處理,以及當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述處理請(qǐng)求確定部分使所述主CPU執(zhí)行所述處理。
3.根據(jù)權(quán)利要求1所述的信息處理裝置,其中,當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述處理請(qǐng)求確定部分確定所述副CPU是否可以接受所述處理,并且當(dāng)所述副CPU可以接受所述處理時(shí),使所述副CPU執(zhí)行所述處理,并且當(dāng)所述副CPU不能接受所述處理時(shí),使所述主CPU執(zhí)行所述處理,以及當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述處理請(qǐng)求確定部分使所述主CPU執(zhí)行所述處理。
4.根據(jù)權(quán)利要求1所述的信息處理裝置,其中,當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述處理請(qǐng)求確定部分確定所述副CPU是否可以接受所述處理,并且當(dāng)所述副CPU可以接受所述處理時(shí),使所述副CPU執(zhí)行所述處理,并且當(dāng)所述副CPU不能接受所述處理時(shí),使所述主CPU執(zhí)行所述處理,以及當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述處理請(qǐng)求確定部分確定所述主CPU是否可以接受所述處理,并且當(dāng)所述主CPU可以接受所述處理時(shí),使所述主CPU執(zhí)行所述處理,并且當(dāng)所述主CPU不能接受所述處理時(shí),確定是否可以使所述副CPU執(zhí)行所述處理。
5.根據(jù)權(quán)利要求1所述的信息處理裝置,還包括處理請(qǐng)求目的地指定部分,其與所述外圍裝置中的一個(gè)中的處理相關(guān)聯(lián)地將期望執(zhí)行所述處理的期望CPU預(yù)先定義為指定CPU信息,其中,當(dāng)所述處理請(qǐng)求目的地指定部分的所述指定CPU信息所指定的CPU是所述主CPU時(shí),所述處理請(qǐng)求確定部分確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài)。
6.根據(jù)權(quán)利要求5所述的信息處理裝置,其中所述處理請(qǐng)求目的地指定部分還將是否允許使用除了所述指定CPU信息中所定義的所述CPU之外的CPU來執(zhí)行所述處理定義為其它CPU可用性信息,并且當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述處理請(qǐng)求確定部分參考所述其它CPU可用性信息來確定是否允許所述副CPU執(zhí)行所述處理,當(dāng)允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述副CPU執(zhí)行所述處理,以及當(dāng)不允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述主CPU執(zhí)行所述處理。
7.根據(jù)權(quán)利要求6所述的信息處理裝置,其中,當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述處理請(qǐng)求確定部分確定所述主CPU是否可以接受所述處理,當(dāng)所述主CPU可以接受所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述主CPU執(zhí)行所述處理,當(dāng)所述主CPU不能接受所述處理時(shí),所述處理請(qǐng)求確定部分參考所述其它CPU可用性信息來確定是否允許所述副CPU執(zhí)行所述處理,當(dāng)允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述副CPU執(zhí)行所述處理,以及當(dāng)不允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述主CPU執(zhí)行所述處理。
8.根據(jù)權(quán)利要求5所述的信息處理裝置,其中,當(dāng)所述處理請(qǐng)求目的地指定部分的所述指定CPU信息所指定的CPU是所述副CPU時(shí),所述處理請(qǐng)求確定部分確定所述副CPU是處于休眠狀態(tài)還是處于操作狀態(tài),以確定使所述主CPU和所述副CPU中的哪一個(gè)執(zhí)行所述處理。
9.根據(jù)權(quán)利要求8所述的信息處理裝置,其中所述處理請(qǐng)求目的地指定部分還將是否允許使用除了所述指定CPU信息中所定義的CPU之外的CPU來執(zhí)行所述處理定義為其它CPU可用性信息,當(dāng)所述副CPU處于休眠狀態(tài)時(shí),所述處理請(qǐng)求確定部分參考所述其它CPU可用性信息來確定是否允許所述主CPU執(zhí)行所述處理,當(dāng)允許所述主CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述主CPU執(zhí)行所述處理,以及當(dāng)不允許所述主CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述副CPU執(zhí)行所述處理。
10.根據(jù)權(quán)利要求9所述的信息處理裝置,其中,當(dāng)所述副CPU處于操作狀態(tài)時(shí),所述處理請(qǐng)求確定部分確定所述副CPU是否可以接受所述處理,當(dāng)所述副CPU可以接受所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述副CPU執(zhí)行所述處理,當(dāng)所述副CPU不能接受所述處理時(shí),所述處理請(qǐng)求確定部分參考所述其它CPU可用性信息來確定是否允許所述主CPU執(zhí)行所述處理,當(dāng)允許所述主CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述主CPU執(zhí)行所述處理,以及當(dāng)不允許所述主CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分確定使所述副CPU執(zhí)行所述處理。
11.根據(jù)權(quán)利要求1所述的信息處理裝置,還包括處理請(qǐng)求目的地指定部分,其與所述外圍裝置中的一個(gè)中的處理相關(guān)聯(lián)地將期望執(zhí)行所述處理的期望CPU預(yù)先定義為指定CPU信息,當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述處理請(qǐng)求確定部分參考所述指定CPU信息來確定是否允許所述副CPU執(zhí)行所述處理,當(dāng)允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分使所述副CPU執(zhí)行所述處理,以及當(dāng)不允許所述副CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分使所述主CPU執(zhí)行所述處理。
12.根據(jù)權(quán)利要求11所述的信息處理裝置,其中,當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述處理請(qǐng)求確定部分確定所述主CPU是否可以接受所述處理,當(dāng)所述主CPU不能接受所述處理時(shí),所述處理請(qǐng)求確定部分參考所述指定CPU信息來確定是否允許所述主CPU執(zhí)行所述處理,當(dāng)允許所述主CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分使所述主CPU執(zhí)行所述處理,當(dāng)不允許所述主CPU執(zhí)行所述處理時(shí),所述處理請(qǐng)求確定部分使所述副CPU執(zhí)行所述處理,以及當(dāng)所述主CPU可以接受所述處理時(shí),所述處理請(qǐng)求確定部分使所述副CPU執(zhí)行所述處理。
13.根據(jù)權(quán)利要求1所述的信息處理裝置,其中,如果在使所述副CPU執(zhí)行所述處理的同時(shí)存在喚醒所述主CPU的請(qǐng)求,則所述副CPU和所述主CPU執(zhí)行使所述主CPU接管在所述副CPU中執(zhí)行的處理的處理。
14.一種應(yīng)用在用于控制一個(gè)以上的內(nèi)部或者外部外圍裝置的信息處理裝置中的處理方法,所述信息處理裝置包括主CPU,其能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),以及副CPU,其功耗低于所述主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),所述方法包括確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài);當(dāng)所述主CPU處于休眠狀態(tài)時(shí),確定是否可以使所述副CPU執(zhí)行來自所述外圍裝置中的一個(gè)的處理;當(dāng)所述主CPU處于操作狀態(tài)時(shí),確定是否可以使所述主CPU執(zhí)行所述處理;以及根據(jù)所述確定的結(jié)果,使所述主CPU或者所述副CPU執(zhí)行所述處理。
15.一種用于使用主CPU和副CPU控制一個(gè)以上的內(nèi)部或者外部外圍裝置的集成電路,其中所述主CPU能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),而所述副CPU的功耗低于所述主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),其中所述集成電路確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài);當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述集成電路確定是否可以使所述副CPU執(zhí)行來自所述外圍裝置中的一個(gè)的處理;當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述集成電路確定是否可以使所述主CPU執(zhí)行所述處理;以及所述集成電路根據(jù)所述確定的結(jié)果使所述主CPU或者所述副CPU執(zhí)行所述處理。
16.一種在計(jì)算機(jī)設(shè)備中執(zhí)行的程序,所述計(jì)算機(jī)設(shè)備用于使主CPU和副CPU控制一個(gè)以上的內(nèi)部或者外部外圍裝置,所述主CPU能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),所述副CPU的功耗低于所述主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài),其中所述程序使所述計(jì)算機(jī)設(shè)備確定所述主CPU是處于休眠狀態(tài)還是處于操作狀態(tài);當(dāng)所述主CPU處于休眠狀態(tài)時(shí),所述程序使所述計(jì)算機(jī)設(shè)備確定是否可以使所述副CPU執(zhí)行來自所述外圍裝置中的一個(gè)的處理;當(dāng)所述主CPU處于操作狀態(tài)時(shí),所述程序使所述計(jì)算機(jī)設(shè)備確定是否可以使所述主CPU執(zhí)行所述處理;以及所述程序根據(jù)所述確定的結(jié)果,使用所述計(jì)算機(jī)設(shè)備使所述主CPU或者所述副CPU執(zhí)行所述處理。
全文摘要
本發(fā)明的信息處理裝置包括主CPU,其能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài);副CPU,其具有低于主CPU的功耗并且能夠采用至少兩種狀態(tài),即操作狀態(tài)和休眠狀態(tài);以及處理請(qǐng)求確定部分,用于確定使主CPU和副CPU中的哪一個(gè)來執(zhí)行涉及來自外圍裝置的請(qǐng)求的處理。該處理請(qǐng)求確定部分確定主CPU是處于休眠狀態(tài)還是操作狀態(tài),并且當(dāng)主CPU處于休眠狀態(tài)時(shí),確定是否可以使副CPU執(zhí)行處理,并且當(dāng)主CPU處于操作狀態(tài)時(shí),確定是否可以使主CPU執(zhí)行處理,并且根據(jù)該確定的結(jié)果,使主CPU或者副CPU執(zhí)行該處理。
文檔編號(hào)G06F9/48GK1993670SQ20058002661
公開日2007年7月4日 申請(qǐng)日期2005年8月2日 優(yōu)先權(quán)日2004年8月5日
發(fā)明者御手洗秀一 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
日照市| 黄山市| 尼勒克县| 涿鹿县| 溧阳市| 稷山县| 湟中县| 龙泉市| 西华县| 海丰县| 元谋县| 子长县| 镇原县| 延津县| 莱芜市| 什邡市| 上高县| 云南省| 花莲市| 峨山| 江口县| 比如县| 永州市| 高淳县| 西贡区| 南漳县| 永登县| 囊谦县| 灵寿县| 宁城县| 安塞县| 越西县| 江北区| 襄城县| 贡嘎县| 乐都县| 施甸县| 泊头市| 丰城市| 靖西县| 四子王旗|