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

芯片部件管理任務(wù)中斷方法、芯片及包括所述芯片的組件的制作方法

文檔序號(hào):6546017閱讀:155來源:國(guó)知局
芯片部件管理任務(wù)中斷方法、芯片及包括所述芯片的組件的制作方法
【專利摘要】本發(fā)明涉及一種芯片部件管理任務(wù)中斷方法、芯片及包括所述芯片的組件。一種集成電路芯片,包括服務(wù)引擎,其適于管理芯片的一個(gè)或多個(gè)部件并包括:處理引擎;數(shù)據(jù)存儲(chǔ)器,存儲(chǔ)任務(wù)中的當(dāng)前執(zhí)行任務(wù)的當(dāng)前狀態(tài);接口,用于接收?qǐng)?zhí)行任務(wù)中的另一任務(wù)的請(qǐng)求,當(dāng)前執(zhí)行任務(wù)具有第一優(yōu)先級(jí),另一任務(wù)具有第二優(yōu)先級(jí);時(shí)鐘,適于測(cè)量接收所述請(qǐng)求與當(dāng)前時(shí)間之間已經(jīng)過的時(shí)間間隔;控制引擎,適于在以下情況中斷當(dāng)前執(zhí)行任務(wù)并觸發(fā)所請(qǐng)求任務(wù)的執(zhí)行:a)第二優(yōu)先級(jí)高于第一優(yōu)先級(jí),及b1)所存儲(chǔ)的當(dāng)前狀態(tài)指示當(dāng)前任務(wù)可正常中斷;和/或b2)所測(cè)量的時(shí)間間隔超過閾值,由此在b2)中執(zhí)行中斷和觸發(fā)而不考慮當(dāng)前執(zhí)行的任務(wù)是否可被或已被正常終止。
【專利說明】芯片部件管理任務(wù)中斷方法、芯片及包括所述芯片的組件

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及集成電路芯片領(lǐng)域。更具體地說,本發(fā)明涉及芯片部件管理任務(wù)的中 斷控制。

【背景技術(shù)】
[0002] 現(xiàn)在的集成電路芯片包括大量需要管理的功能和部件。一般而言,使用充當(dāng)服務(wù) 模塊并可與某些片上傳感器和控制元件互操作的專用芯片硬件部件執(zhí)行所述管理。
[0003] 有些管理任務(wù)必須比其它任務(wù)更迫切地被執(zhí)行,例如,用于防止不一致或有害的 系統(tǒng)狀態(tài)的任務(wù)。存在兩種方法和對(duì)應(yīng)的芯片體系結(jié)構(gòu)來確保更快地執(zhí)行高度緊急的任 務(wù):A)包括單個(gè)管理單元的芯片,這種芯片使用當(dāng)前執(zhí)行的任務(wù)的無條件中斷,其適于緊 急任務(wù),以及B)包括兩個(gè)或更多管理單元的芯片,其中選擇性地保留至少一個(gè)管理單元來 執(zhí)行低優(yōu)先級(jí)任務(wù),并且其中選擇性地保留至少一個(gè)另一管理單元來執(zhí)行被請(qǐng)求的高優(yōu)先 級(jí)任務(wù)。
[0004] 根據(jù)方法A),芯片使用單個(gè)管理單元執(zhí)行芯片部件管理任務(wù),此時(shí)一次只能執(zhí)行 一個(gè)任務(wù)。在需要執(zhí)行緊急任務(wù)的情況下,所述緊急任務(wù)立即由管理單元執(zhí)行,并且可能突 然終止當(dāng)前正在所述時(shí)刻執(zhí)行的其它所有任務(wù)。此類芯片制造成本低,但是突然中斷當(dāng)前 執(zhí)行的任務(wù)可能導(dǎo)致不一致的系統(tǒng)狀態(tài),甚至可能損壞芯片部件。這種芯片體系結(jié)構(gòu)不支 持正常終止,因?yàn)檫x擇正常終止會(huì)承受當(dāng)前執(zhí)行的任務(wù)陷入無限循環(huán)的風(fēng)險(xiǎn),當(dāng)前任務(wù)可 能再也不能正常終止,因此緊急任務(wù)再也無法執(zhí)行。當(dāng)緊急任務(wù)是為了防止損壞芯片部件 時(shí),無法執(zhí)行緊急任務(wù)可能導(dǎo)致?lián)p壞芯片。
[0005] 根據(jù)方法B),芯片包括多個(gè)管理單元。在這種體系結(jié)構(gòu)中,低優(yōu)先級(jí)任務(wù)被選擇 性地分配給所述管理單元中的一個(gè),而緊急任務(wù)被選擇性地分配給所述管理單元中的另一 個(gè)。因?yàn)獒槍?duì)緊急任務(wù)獨(dú)占地保留一個(gè)管理單元,所以可確保立即執(zhí)行緊急任務(wù)。這種方 法的缺點(diǎn)是為緊急任務(wù)保留的管理單元多數(shù)時(shí)間處于空閑狀態(tài)。因此,可用硬件資源的利 用率不高。而且,此類多管理單元芯片的制造成本更高。
[0006] 例如,US8347158B2公開了一種跨功能總線傳輸請(qǐng)求的方法。此方法無法保證所 請(qǐng)求的事務(wù)獲取最大服務(wù)時(shí)間。
[0007] US7984247B2對(duì)入站請(qǐng)求設(shè)置優(yōu)先級(jí),但不提供能夠確保正常地執(zhí)行其它任務(wù)作 業(yè)終止的系統(tǒng)。


【發(fā)明內(nèi)容】

[0008] 本發(fā)明的各實(shí)施例的目標(biāo)是提供在不對(duì)芯片或其部件造成損害的情況下,及時(shí)執(zhí) 行緊急任務(wù)的改進(jìn)型芯片和對(duì)應(yīng)的方法。
[0009] 所述目標(biāo)通過獨(dú)立權(quán)利要求的主題解決。從屬權(quán)利要求中描述有利的實(shí)施例。如 果未明確指出,則實(shí)施例的特征可自由地彼此組合。
[0010] 如此處使用的那樣,"服務(wù)引擎"是用于管理(即,啟動(dòng)、監(jiān)視和/或控制)芯片的 一個(gè)或多個(gè)部件的微控制器。優(yōu)選地,所述服務(wù)引擎單純地包括硬件、固件,或者包括硬件 和固件的組合。根據(jù)各優(yōu)選實(shí)施例,所述服務(wù)引擎被實(shí)現(xiàn)為片上部件。這可提供能夠自引 導(dǎo)和/或包括片上電源管理、維護(hù)、監(jiān)視、計(jì)時(shí)、錯(cuò)誤識(shí)別和錯(cuò)誤恢復(fù)邏輯的"智能"芯片。在 兩個(gè)或更多請(qǐng)求實(shí)例同時(shí)請(qǐng)求特定部件的情況下,所述服務(wù)引擎的任務(wù)是判定首先服務(wù)于 哪一個(gè)請(qǐng)求,以及為哪個(gè)對(duì)應(yīng)的請(qǐng)求者分配所請(qǐng)求的部件作為資源。
[0011] 如在此使用的那樣,"集成電路芯片"、"微芯片"或"芯片"是一個(gè)半導(dǎo)體材料(一 般為硅)板("芯片")上的一組電子電路。該芯片在制作上可遠(yuǎn)小于使用單獨(dú)部件制成的 分離電路。這些芯片可用于計(jì)算機(jī)、移動(dòng)電話、家用數(shù)字電器以及多種其它設(shè)備。此處使用 的芯片的一個(gè)實(shí)例為IBM PowerProcessor芯片系列的處理器芯片。
[0012] 如此處使用的那樣,芯片"部件"可以是基于任何種類的硬件和/或固件的芯片部 件,例如存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、總線接口、網(wǎng)絡(luò)控制器、微處理器、GPS模塊、密碼模塊、處理器 等。部件可包括或可連接到用于讀出部件狀態(tài)信息(例如,溫度、可用內(nèi)存量等),以及用于 將此信息報(bào)告給所述服務(wù)引擎的傳感器元件。所述信息可由所述服務(wù)引擎評(píng)估并用作執(zhí)行 某些芯片部件管理任務(wù)時(shí)的輸入。部件還可包括或連接到控制單元,這些控制單元可操作 以從所述服務(wù)引擎接收控制命令,所述控制命令指示所述部件是否應(yīng)該被啟動(dòng)、關(guān)閉或者 應(yīng)該以特定方式執(zhí)行操作。
[0013] 如在此使用的那樣,"任務(wù)"是在所述服務(wù)引擎的固件和/或硬件元件中實(shí)現(xiàn)的數(shù) 據(jù)處理例程。根據(jù)所述實(shí)施例,可具有用于引導(dǎo)芯片的任務(wù),用于關(guān)閉芯片的任務(wù),用于將 特定芯片部件分配給芯片內(nèi)部或芯片外部請(qǐng)求實(shí)例的任務(wù),用于切換芯片部件操作模式的 任務(wù),維護(hù)、錯(cuò)誤恢復(fù)和部件監(jiān)視任務(wù)等。
[0014] 如在此使用的那樣,"寄存器"是作為芯片一部分的數(shù)據(jù)存儲(chǔ)部件。所述寄存器可 包括靜態(tài)或動(dòng)態(tài)RAM。所述寄存器可實(shí)現(xiàn)為位于處理器存儲(chǔ)層次結(jié)構(gòu)頂部的處理器寄存器, 或者實(shí)現(xiàn)為主要功能是充當(dāng)所述服務(wù)引擎或另一芯片部件的數(shù)據(jù)存儲(chǔ)的單獨(dú)寄存器。
[0015] 任務(wù)的"優(yōu)先級(jí)"指示開始執(zhí)行所述任務(wù)的迫切性。所述迫切性可完全或至少部 分地反映技術(shù)要求,例如防止系統(tǒng)不一致的要求,防止損壞芯片硬件的要求和/或防止數(shù) 據(jù)丟失的要求。損壞或數(shù)據(jù)丟失例如可由芯片過熱導(dǎo)致。根據(jù)所述實(shí)施例,可在對(duì)特定任 務(wù)的請(qǐng)求中或在所請(qǐng)求的任務(wù)中例如采取屬性值的形式顯式地指定所述優(yōu)先級(jí)。備選地, 任務(wù)的優(yōu)先級(jí)可隱含地給出,例如,根據(jù)所請(qǐng)求的任務(wù)類型、已提交任務(wù)請(qǐng)求的部件類型, 或者與所述服務(wù)引擎中實(shí)現(xiàn)的對(duì)應(yīng)優(yōu)先化邏輯結(jié)合的任務(wù)或任務(wù)請(qǐng)求的其它某些特征。
[0016] 如此處使用的那樣,表達(dá)"正常終止任務(wù)"包含以可控的方式或突然終止所述任 務(wù),其中這種執(zhí)行狀態(tài)保證所述終止不會(huì)使芯片及其部件處于不一致和/或有害的狀態(tài)。 以可控的方式退出任務(wù)暗示該任務(wù)本身,或者服務(wù)引擎或芯片部件的其它任何例程所執(zhí)行 的某些處理例程保證所述服務(wù)引擎管理的芯片部件都不會(huì)被所述終止轉(zhuǎn)換為不一致和/ 或有害的狀態(tài)。
[0017] 在一方面,本發(fā)明涉及一種包括服務(wù)引擎的集成電路芯片。所述服務(wù)引擎適于經(jīng) 由一個(gè)或多個(gè)任務(wù)管理所述芯片的一個(gè)或多個(gè)部件。所述服務(wù)引擎包括適于執(zhí)行所述一個(gè) 或多個(gè)任務(wù)的處理引擎。所述服務(wù)引擎進(jìn)一步包括存儲(chǔ)所述任務(wù)中的一個(gè)當(dāng)前執(zhí)行的任務(wù) 的當(dāng)前狀態(tài)的數(shù)據(jù)存儲(chǔ)器。
[0018] 所述服務(wù)引擎進(jìn)一步包括用于接收?qǐng)?zhí)行所述任務(wù)中的另一任務(wù)的請(qǐng)求的接口。所 述請(qǐng)求可以接收自所述部件中的一個(gè),或者接收自位于所述芯片外部的請(qǐng)求者。所述當(dāng)前 執(zhí)行的任務(wù)具有第一優(yōu)先級(jí),另一所請(qǐng)求的任務(wù)具有另一優(yōu)先級(jí),該優(yōu)先級(jí)在此被稱為"第 二優(yōu)先級(jí)"。
[0019] 所述服務(wù)引擎包括適于測(cè)量接收所述請(qǐng)求與當(dāng)前之間經(jīng)過的時(shí)間間隔的時(shí)鐘。
[0020] 所述服務(wù)引擎進(jìn)一步包括適于在以下情況下中斷當(dāng)前執(zhí)行的任務(wù)并觸發(fā)所請(qǐng)求 的任務(wù)的執(zhí)行的控制引擎:
[0021] a)所述第二優(yōu)先級(jí)高于所述第一優(yōu)先級(jí),以及
[0022] bl)所存儲(chǔ)的當(dāng)前狀態(tài)指示當(dāng)前任務(wù)可正常中斷;和/或b2)所測(cè)量的時(shí)間間隔 超過閾值,由此在b2)的情況下執(zhí)行所述中斷和所述觸發(fā),而不考慮所述當(dāng)前執(zhí)行的任務(wù) 是否可被正常終止或者是否已被正常終止。
[0023] 所述特征可以是有利的,因?yàn)樗鼈兛稍试S使用單線程服務(wù)引擎,這種引擎對(duì)于低 優(yōu)先級(jí)和高優(yōu)先級(jí)任務(wù)而言制造成本均很低,由此可幾乎始終正常終止低優(yōu)先級(jí)任務(wù),并 確保最遲在經(jīng)過時(shí)間閾值之后保證啟動(dòng)高優(yōu)先級(jí)任務(wù)。
[0024] 所述特征可允許通知所述服務(wù)引擎在執(zhí)行當(dāng)前的低優(yōu)先級(jí)任務(wù)期間,是否以及何 時(shí)可以安全地中斷所述任務(wù)以開始執(zhí)行高優(yōu)先級(jí)任務(wù)。
[0025] 根據(jù)各實(shí)施例,通過接收請(qǐng)求而觸發(fā)所述時(shí)間間隔的測(cè)量。
[0026] 如果所述第一優(yōu)先級(jí)高于所述第二優(yōu)先級(jí),并且在所存儲(chǔ)的狀態(tài)指示所述當(dāng)前任 務(wù)在所經(jīng)過的時(shí)長(zhǎng)尚未超過所述閾值的同時(shí)不可中斷的情況下,所述服務(wù)引擎可通過所述 處理引擎觸發(fā)所述當(dāng)前執(zhí)行的任務(wù)的正常終止。成功的正常終止之后,所存儲(chǔ)的當(dāng)前狀態(tài) 值被更新為指示所述當(dāng)前任務(wù)"可中斷"的值。只要尚未經(jīng)過所測(cè)量的時(shí)間間隔,所述服務(wù) 引擎便可持續(xù)并重復(fù)地評(píng)估當(dāng)前狀態(tài)值,并且在判定所更新的當(dāng)前狀態(tài)值等于"可中斷"時(shí) 開始執(zhí)行所請(qǐng)求的任務(wù)。
[0027] 根據(jù)各實(shí)施例,所述處理引擎僅可操作以一次執(zhí)行一個(gè)任務(wù)。換言之,所述處理引 擎和對(duì)應(yīng)的服務(wù)引擎可以是單線程引擎。這樣,具有單線程服務(wù)引擎的低制造成本芯片可 在保證高優(yōu)先級(jí)任務(wù)服務(wù)時(shí)間方面提供與多線程服務(wù)引擎芯片相同的功能,并且不會(huì)不正 常地終止低優(yōu)先級(jí)任務(wù)。
[0028] 根據(jù)各實(shí)施例,所述芯片僅包括用于管理芯片部件的單服務(wù)引擎。這進(jìn)一步降低 了制造成本。
[0029] 根據(jù)各實(shí)施例,所述請(qǐng)求包括指示所請(qǐng)求的任務(wù)優(yōu)先級(jí)的屬性值。這可以是有利 的,因?yàn)檎?qǐng)求實(shí)例具有影響任務(wù)優(yōu)先級(jí)別的裝置,這樣可影響有關(guān)當(dāng)前執(zhí)行的任務(wù)是否可 中斷的決策。
[0030] 備選地,每個(gè)任務(wù)的優(yōu)先級(jí)作為屬性值連同其相應(yīng)任務(wù)一起存儲(chǔ)在存儲(chǔ)部件中。 任務(wù)的優(yōu)先級(jí)還可根據(jù)任務(wù)類型給出。在這種情況下,所述服務(wù)引擎的決策邏輯使用所請(qǐng) 求任務(wù)的類型以及當(dāng)前執(zhí)行的任務(wù)類型來判定是否應(yīng)該中斷當(dāng)前執(zhí)行的任務(wù)。該實(shí)施例可 能對(duì)于僅需維護(hù)少量任務(wù)的簡(jiǎn)單芯片體系結(jié)構(gòu)尤其有利。例如,可能僅支持用于持續(xù)監(jiān)視 芯片部件狀態(tài)參數(shù)的第一任務(wù)(正常情況下應(yīng)該一天運(yùn)行24小時(shí))和用于在所監(jiān)視的芯 片溫度超過閾值時(shí)關(guān)閉部件的第二任務(wù)。該第二任務(wù)可能僅偶爾被請(qǐng)求以防止有害的系統(tǒng) 狀態(tài)。每當(dāng)可操作以識(shí)別當(dāng)前執(zhí)行的任務(wù)類型和所請(qǐng)求的任務(wù)類型的服務(wù)引擎接收到針對(duì) 第二任務(wù)的任務(wù)請(qǐng)求時(shí),將正常終止持續(xù)執(zhí)行的第一任務(wù)(如果可能)。
[0031] 根據(jù)各實(shí)施例,所請(qǐng)求的任務(wù)是多個(gè)第一任務(wù)中的一個(gè),當(dāng)前執(zhí)行的任務(wù)是多個(gè) 第二任務(wù)中的一個(gè)。所述第一任務(wù)負(fù)責(zé)引導(dǎo)、初始化和/或關(guān)閉所述芯片的處理器核,負(fù)責(zé) 防止所述處理器核過熱,和/或負(fù)責(zé)管理所述處理器核的供電。所述第二任務(wù)負(fù)責(zé)監(jiān)視所 述部件,具體地說,負(fù)責(zé)監(jiān)視所述芯片的處理器核,負(fù)責(zé)對(duì)所述部件計(jì)時(shí),負(fù)責(zé)創(chuàng)建使用統(tǒng) 計(jì)信息,和/或負(fù)責(zé)識(shí)別所述部件的錯(cuò)誤和無效狀態(tài)。每個(gè)第一任務(wù)的優(yōu)先級(jí)高于所述第 二任務(wù)中的任一個(gè)。所述特征可以是有利的,因?yàn)樗龇?wù)引擎可提供一般維護(hù)任務(wù),但是 可以正常中斷它們以開始執(zhí)行所述第二任務(wù)中的任何一個(gè)更重要的任務(wù),因?yàn)榭赡苄枰@ 些任務(wù)以防止損壞所述芯片和/或其部件。
[0032] 根據(jù)各實(shí)施例,所述處理引擎適于持續(xù)監(jiān)視所述當(dāng)前執(zhí)行的任務(wù)的當(dāng)前狀態(tài),并 且適于相應(yīng)地更新存儲(chǔ)在所述數(shù)據(jù)存儲(chǔ)器中的所述當(dāng)前狀態(tài)。例如,所述服務(wù)引擎可以在 有限時(shí)長(zhǎng)內(nèi)執(zhí)行低優(yōu)先級(jí)監(jiān)視任務(wù)。該任務(wù)可以完成其執(zhí)行并在不被其它任務(wù)進(jìn)行任何中 斷的情況下正常終止。所述服務(wù)引擎將識(shí)別該任務(wù)已終止并存儲(chǔ)當(dāng)前狀態(tài)值"可中斷"(盡 管因?yàn)楫?dāng)前任務(wù)已經(jīng)終止,當(dāng)前根本沒有任何任務(wù)執(zhí)行)。根據(jù)另一實(shí)例,可以請(qǐng)求中等優(yōu) 先級(jí)任務(wù)。在開始所述中等優(yōu)先級(jí)任務(wù)之時(shí),所述服務(wù)引擎將當(dāng)前狀態(tài)值"不可中斷"存儲(chǔ) 到存儲(chǔ)介質(zhì),從而阻止所述任務(wù)被所請(qǐng)求的具有較高優(yōu)先級(jí)的任務(wù)立刻中斷(低優(yōu)先級(jí)任 務(wù)在任何情況下均不會(huì)中斷中等優(yōu)先級(jí)任務(wù))。所述中等優(yōu)先級(jí)任務(wù)的當(dāng)前狀態(tài)值"不可 中斷"只能在以下情況下被高優(yōu)先級(jí)任務(wù)中斷:其被所述服務(wù)引擎正常中斷,或者從接收到 對(duì)應(yīng)于高優(yōu)先級(jí)任務(wù)的任務(wù)請(qǐng)求以來所經(jīng)過的時(shí)長(zhǎng)超過時(shí)間閾值。
[0033] 作為補(bǔ)充或備選,所述當(dāng)前執(zhí)行的任務(wù)包括可執(zhí)行指令,當(dāng)被執(zhí)行時(shí),所述可執(zhí)行 指令將所述數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)的所述當(dāng)前狀態(tài)設(shè)為在所述指令中指定的值。
[0034] 例如,特定任務(wù)可在不損害任一部件或者不導(dǎo)致任一部件出現(xiàn)不一致的情況下隨 時(shí)中斷。在開始執(zhí)行所述任務(wù)時(shí),所述服務(wù)引擎將值"可中斷"存儲(chǔ)到所述數(shù)據(jù)存儲(chǔ)器。
[0035] 或者,例如,任務(wù)可以包括在突然中斷時(shí)可導(dǎo)致芯片損壞的第一子任務(wù),以及包括 在突然中斷時(shí)不導(dǎo)致任何損壞的第二子任務(wù)。在開始所述第一子任務(wù)時(shí),所述服務(wù)引擎存 儲(chǔ)值"不可中斷"。在已經(jīng)終止所述第一子任務(wù)并開始執(zhí)行所述第二子任務(wù)時(shí),所述服務(wù)引 擎將值"可中斷"存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器。這樣,有關(guān)何時(shí)將當(dāng)前狀態(tài)值更改為"可中斷"或"不 可中斷"的決策應(yīng)該由某些作為任務(wù)一部分的指令做出,和/或由將所述當(dāng)前執(zhí)行的任務(wù)的 優(yōu)先級(jí)與所請(qǐng)求的任務(wù)的優(yōu)先級(jí)以及其它因素(例如,已存儲(chǔ)的當(dāng)前狀態(tài)值、已經(jīng)過的時(shí) 間等)相比較的所述服務(wù)引擎做出。所述特征可提供高度靈活的細(xì)粒度規(guī)范,指定是否以 及何時(shí)可中斷特定任務(wù)。
[0036] 根據(jù)各實(shí)施例,中斷所述當(dāng)前執(zhí)行的任務(wù)包括觸發(fā)所述當(dāng)前執(zhí)行的任務(wù)的正常終 止或者等待所述當(dāng)前執(zhí)行的任務(wù)自己主動(dòng)正常終止。在完成所述正常終止之后或期間,將 所述當(dāng)前狀態(tài)"可中斷"存儲(chǔ)到所述數(shù)據(jù)存儲(chǔ)器。所述狀態(tài)值"可中斷"指示所述當(dāng)前執(zhí)行 的任務(wù)已經(jīng)終止或者可以在不導(dǎo)致?lián)p壞的情況下立刻終止(即,甚至可由中間中斷正常終 止)。這使得所述控制引擎能夠根據(jù)情況bl)觸發(fā)所請(qǐng)求的任務(wù)的執(zhí)行。例如,在判定所請(qǐng) 求的任務(wù)的優(yōu)先級(jí)高于當(dāng)前執(zhí)行的任務(wù)的優(yōu)先級(jí)時(shí),所述處理引擎可跳到當(dāng)前任務(wù)指令內(nèi) 指定所述任務(wù)的某些正常退出命令的部分。通過執(zhí)行所述指令,正常終止當(dāng)前任務(wù)。
[0037] 被設(shè)為"可中斷"的任務(wù)狀態(tài)值指示當(dāng)前執(zhí)行的任務(wù)已經(jīng)被正常終止或者指示其 立即終止不會(huì)導(dǎo)致芯片或其部件發(fā)生錯(cuò)誤或不一致。
[0038] 根據(jù)各實(shí)施例,在所測(cè)量的時(shí)間間隔超過所述閾值的情況下,所述服務(wù)引擎適于 將所述數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)的所述當(dāng)前狀態(tài)設(shè)為"可中斷",而不考慮所述當(dāng)前執(zhí)行的任務(wù)是 否已正常終止或是否可正常終止。這使得所述控制引擎能夠根據(jù)b2)觸發(fā)所請(qǐng)求的任務(wù)的 執(zhí)行。
[0039] 根據(jù)某些實(shí)施例,所述請(qǐng)求是所述服務(wù)引擎支持的多個(gè)請(qǐng)求中的一個(gè),每個(gè)所述 支持的請(qǐng)求對(duì)應(yīng)于所述任務(wù)中的一個(gè)。每個(gè)所述請(qǐng)求可被分配一個(gè)請(qǐng)求特定的閾值。備選 地,所述任務(wù)特定的閾值可與相應(yīng)任務(wù)的標(biāo)識(shí)符一起存儲(chǔ)在所述芯片的數(shù)據(jù)存儲(chǔ)器中。相 對(duì)于特定于所述請(qǐng)求的閾值而執(zhí)行所測(cè)量的時(shí)間間隔是否超過所述閾值的判定。這可允許 所述服務(wù)引擎執(zhí)行靈活可變的細(xì)粒度任務(wù)管理和任務(wù)中斷邏輯。
[0040] 備選地,可針對(duì)所支持的任務(wù)中的每一個(gè)使用單個(gè)閾值。
[0041] 根據(jù)各實(shí)施例,所述服務(wù)引擎支持的任何種類任務(wù)都存儲(chǔ)在所述集成電路芯片的 存儲(chǔ)介質(zhì)上,即,采取匯編指令的形式。
[0042] 根據(jù)各實(shí)施例,所述執(zhí)行特定任務(wù)的請(qǐng)求由所述部件中的一個(gè)或片上部件管理單 元產(chǎn)生。所述請(qǐng)求可以包括其請(qǐng)求特定的閾值。所述請(qǐng)求還可以接收自位于所述芯片外部 的請(qǐng)求者,例如接收自外部硬盤控制器等。
[0043] 所述服務(wù)引擎可被實(shí)現(xiàn)為片上微控制器。所述部件可包括硬件和/或固件或它們 的組合。所述任務(wù)是所述芯片上存儲(chǔ)的計(jì)算機(jī)可解釋指令,例如,以匯編程序語言或其它可 輕松轉(zhuǎn)換為操作碼的語言編寫的程序指令。所述服務(wù)部件的指令集可通過極為高效地執(zhí)行 所有支持的任務(wù)(具體地說,高優(yōu)先級(jí)任務(wù))的方式改編。所述特征可以是有利的,因?yàn)橛?件實(shí)現(xiàn)的方法的執(zhí)行速度遠(yuǎn)快于類似基于軟件的方法。此外,基于軟件的程序邏輯的執(zhí)行 可能因?yàn)槠渌谲浖某绦蜻壿嬈问?、?zhí)行操作系統(tǒng)失敗等原因而停止。在根據(jù)上 述任一實(shí)施例的服務(wù)引擎的基于硬件和/或固件實(shí)現(xiàn)中不可能發(fā)生此情況。
[0044] 根據(jù)各實(shí)施例,包括所述當(dāng)前狀態(tài)的所述數(shù)據(jù)存儲(chǔ)是以單個(gè)位值的形式存儲(chǔ)所述 當(dāng)前狀態(tài)的寄存器。所存儲(chǔ)的當(dāng)前狀態(tài)為"可中斷"或"不可中斷"。所述特征可以是有利 的,因?yàn)榧拇嫫骱蜖顟B(tài)的單個(gè)位表示減小所用的存儲(chǔ)空間,同時(shí)縮短讀取和評(píng)估所存儲(chǔ)的 當(dāng)前狀態(tài)值的時(shí)間。
[0045] 根據(jù)各實(shí)施例,所存儲(chǔ)的當(dāng)前狀態(tài)為"可中斷"或"不可中斷"或"可有條件地中 斷"。所存儲(chǔ)的狀態(tài)值為"可有條件地中斷"的當(dāng)前執(zhí)行的任務(wù)的中斷使得所述控制引擎能 夠在所請(qǐng)求的任務(wù)或所述芯片的部件滿足額外條件的情況下中斷所述當(dāng)前執(zhí)行的任務(wù)。此 類額外條件可包括所述服務(wù)引擎的操作模式、隨所述請(qǐng)求接收的附件參數(shù)、當(dāng)前時(shí)間和日 期、用戶ID以及根據(jù)用戶與云服務(wù)提供商之間合約的服務(wù)水平信息等。這樣,例如當(dāng)在云 基礎(chǔ)設(shè)施內(nèi)使用所述芯片及其處理能力時(shí),與特定用戶的服務(wù)水平協(xié)議和/或特定時(shí)間和 日期的預(yù)期處理負(fù)荷可能影響狀態(tài)為"可有條件地中斷"的特定任務(wù)是否為了滿足所請(qǐng)求 的任務(wù)而被中斷。
[0046] 例如,第一用戶與云服務(wù)提供商之間的處理能力服務(wù)水平協(xié)議所涵蓋的服務(wù)質(zhì)量 和/或服務(wù)數(shù)量可能小于第二用戶與所述提供商之間的服務(wù)水平協(xié)議,"可有條件地中斷" 狀態(tài)可指示可以為了滿足第二用戶所請(qǐng)求的任務(wù)而中斷所述第一用戶的任務(wù)。在某些用例 情景中,所述芯片的特定部件或資源至少可被臨時(shí)分配給不同的用戶(例如,取決于服務(wù) 水平協(xié)議),并且有關(guān)用戶ID的信息可被包括在所述部件或資源提交給所述服務(wù)引擎的任 何任務(wù)請(qǐng)求內(nèi)。這樣,云服務(wù)提供商可利用能夠以多種不同的值表示和存儲(chǔ)的狀態(tài)所提供 的細(xì)粒度中斷控制機(jī)制。
[0047] 根據(jù)各實(shí)施例,所述服務(wù)引擎包括用戶接口,例如圖形界面或命令行接口,從而允 許用戶配置時(shí)間閾值和/或任務(wù)的優(yōu)先級(jí)。
[0048] 在另一方面,本發(fā)明涉及一種包括根據(jù)上述實(shí)施例之一的多個(gè)集成電路芯片的組 件。每個(gè)芯片包括一個(gè)服務(wù)引擎以及一個(gè)或多個(gè)要由所述服務(wù)引擎管理的部件。每個(gè)芯片 的部件包括一個(gè)處理器核。所述核由其相應(yīng)服務(wù)引擎管理。例如,可提供包括多個(gè)芯片的 大型機(jī),其中所述芯片具有各自的處理核。每個(gè)所述芯片的處理核可作為所述芯片的部件 由相應(yīng)的片上服務(wù)引擎管理。
[0049] 在另一方面,本發(fā)明涉及一種用于經(jīng)由一個(gè)或多個(gè)任務(wù)管理集成電路芯片的一個(gè) 或多個(gè)部件的計(jì)算機(jī)實(shí)現(xiàn)的方法。所述芯片包括服務(wù)引擎。所述方法由所述服務(wù)引擎執(zhí)行 并包括:
[0050] -執(zhí)行一個(gè)或多個(gè)任務(wù)中的一個(gè)當(dāng)前任務(wù);
[0051] -在所述芯片的數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)當(dāng)前執(zhí)行的任務(wù)的當(dāng)前狀態(tài);
[0052] -從所述部件之一接收?qǐng)?zhí)行所述任務(wù)中的另一任務(wù)的請(qǐng)求,所述當(dāng)前執(zhí)行的任務(wù) 具有第一優(yōu)先級(jí),所述另一任務(wù)具有第二優(yōu)先級(jí);
[0053] -測(cè)量接收所述請(qǐng)求與當(dāng)前時(shí)間之間已經(jīng)過的時(shí)間間隔;
[0054] -在以下情況下中斷所述當(dāng)前執(zhí)行的任務(wù)并觸發(fā)所請(qǐng)求的任務(wù)的執(zhí)行:
[0055] a)所述第一優(yōu)先級(jí)高于所述第二優(yōu)先級(jí),以及
[0056] bl)所存儲(chǔ)的當(dāng)前狀態(tài)指示當(dāng)前任務(wù)可正常中斷;和/或b2)所測(cè)量的時(shí)間間隔 超過閾值,由此在b2)的情況下執(zhí)行所述中斷和所述觸發(fā),而不考慮所述當(dāng)前執(zhí)行的任務(wù) 是否被正常終止。

【專利附圖】

【附圖說明】
[0057] 通過結(jié)合附圖閱讀下面對(duì)本發(fā)明實(shí)施例的更多具體描述,可以更好地理解本發(fā)明 的上述及其它內(nèi)容、特征和優(yōu)點(diǎn),這些附圖是:
[0058] 圖1是包括服務(wù)引擎和多個(gè)部件的芯片的框圖,
[0059] 圖2是包括多個(gè)芯片的組件,
[0060] 圖3是由服務(wù)引擎或其部件執(zhí)行的方法的流程圖。

【具體實(shí)施方式】
[0061] 圖1公開包括多個(gè)部件114、116、118和120的芯片102。所述部件例如可以是存 儲(chǔ)器或存儲(chǔ)部件、總線接口、中央處理單元、網(wǎng)絡(luò)控制器等。該芯片進(jìn)一步包括充當(dāng)管理芯 片部件114-120的服務(wù)引擎104的微控制器。該服務(wù)引擎包括單線程處理引擎106,該處理 引擎可操作以一次執(zhí)行一個(gè)任務(wù)。
[0062] 根據(jù)圖1,處理引擎當(dāng)前執(zhí)行任務(wù)T4。服務(wù)引擎支持的每個(gè)任務(wù)T1-T5可實(shí)現(xiàn)為 在服務(wù)引擎的固件和/或硬件中體現(xiàn)的計(jì)算機(jī)可執(zhí)行指令,例如,采取匯編指令的形式。每 個(gè)任務(wù)具有優(yōu)先級(jí)P1-P5??筛鶕?jù)任務(wù)類型,或者例如根據(jù)結(jié)合相應(yīng)任務(wù)存儲(chǔ)的屬性值或根 據(jù)對(duì)特定任務(wù)的請(qǐng)求中包含的屬性值而給出任務(wù)的優(yōu)先級(jí)。服務(wù)引擎包括存儲(chǔ)當(dāng)前執(zhí)行的 任務(wù)T4的當(dāng)前狀態(tài)的寄存器112。該狀態(tài)例如可以是"可中斷"、"不可中斷"或者"可有條 件地中斷"。
[0063] 服務(wù)引擎104包括接口 122,其用于從芯片部件114-120中的一個(gè)或從芯片外部的 部件接收請(qǐng)求R。根據(jù)圖1,部件116經(jīng)由接口 122將執(zhí)行任務(wù)Τ1的請(qǐng)求發(fā)送到服務(wù)引擎。 根據(jù)所述請(qǐng)求的結(jié)果,服務(wù)引擎的時(shí)鐘108開始監(jiān)視自接收以來已經(jīng)過的時(shí)長(zhǎng)。
[0064] 服務(wù)引擎包括優(yōu)先級(jí)裝置10,該裝置可操作以將當(dāng)前執(zhí)行的任務(wù)Τ4的優(yōu)先級(jí)與 所請(qǐng)求的任務(wù)Τ1的優(yōu)先級(jí)Ρ1相比較。服務(wù)引擎包括寄存器112或在操作上與其相連,寄 存器112存儲(chǔ)當(dāng)前執(zhí)行的任務(wù)的當(dāng)前狀態(tài)值CS。當(dāng)從部件116接收到請(qǐng)求R時(shí),優(yōu)先級(jí)裝 置110將所請(qǐng)求的任務(wù)Τ1的優(yōu)先級(jí)Ρ1與當(dāng)前執(zhí)行的任務(wù)Τ4的優(yōu)先級(jí)Ρ4相比較。此外, 服務(wù)引擎評(píng)估寄存器中存儲(chǔ)的當(dāng)前狀態(tài)值CS。
[0065] 在優(yōu)先級(jí)Ρ1超過優(yōu)先級(jí)Ρ4的情況下以及在CS值為"可中斷"的情況下,服務(wù)引 擎觸發(fā)處理引擎以立即開始執(zhí)行所請(qǐng)求的任務(wù)Τ1。在當(dāng)前狀態(tài)值CS應(yīng)該指示當(dāng)前任務(wù) Τ4 "不可中斷"的情況下,服務(wù)引擎將命令發(fā)送到處理引擎以觸發(fā)任務(wù)Τ4的正常終止。備 選地,不是發(fā)送所述觸發(fā)命令,而是服務(wù)引擎只需等待當(dāng)前執(zhí)行的任務(wù)自己主動(dòng)終止,從而 將當(dāng)前狀態(tài)值CS設(shè)為"可中斷"。只要當(dāng)前執(zhí)行的任務(wù)將CS值設(shè)為"可中斷",便立即停止 任務(wù)Τ4并開始所請(qǐng)求的任務(wù)Τ1的執(zhí)行。此類中斷在此也稱為"正常中斷",很明顯,任務(wù)Τ4 下方的程序指令僅將當(dāng)前狀態(tài)值設(shè)為"可中斷",前提是根據(jù)已執(zhí)行以及即將執(zhí)行的指令的 特性,確保在該特定執(zhí)行點(diǎn)上突然終止所述任務(wù)不會(huì)對(duì)系統(tǒng)造成任何損害。一旦任務(wù)Τ4正 常終止,CS值便被設(shè)為"可中斷"并執(zhí)行所請(qǐng)求的任務(wù)Τ1。僅在任務(wù)Τ4的正常終止未在預(yù) 定時(shí)長(zhǎng)(從接收到請(qǐng)求R開始測(cè)量)內(nèi)完成的情況下,服務(wù)引擎才會(huì)強(qiáng)制終止任務(wù)Τ4以確 保執(zhí)行高優(yōu)先級(jí)任務(wù)Τ1。
[0066] 例如,當(dāng)前執(zhí)行的任務(wù)Τ4可以是24/后臺(tái)任務(wù),S卩,應(yīng)該一周運(yùn)行7天,一天持續(xù) 運(yùn)行24小時(shí)的任務(wù)。后臺(tái)任務(wù)具有低優(yōu)先級(jí)并且用于持續(xù)監(jiān)視芯片部件的狀態(tài),例如,用 于計(jì)算使用統(tǒng)計(jì)信息。如果可能,任務(wù)T4應(yīng)被持續(xù)執(zhí)行并且僅應(yīng)針對(duì)緊急錯(cuò)誤糾正或T1 之類的維護(hù)任務(wù)而被中斷。所請(qǐng)求的任務(wù)T1可以是需要在短時(shí)間間隔內(nèi)執(zhí)行以防損壞芯 片的電源管理任務(wù)。
[0067] 為確保高優(yōu)先級(jí)任務(wù)T1可盡快中斷低優(yōu)先級(jí)任務(wù)T4并且為確保T4在T1終止之 后立即繼續(xù)執(zhí)行,部件120 (可以是監(jiān)視微控制器)可持續(xù)將執(zhí)行任務(wù)T4的請(qǐng)求發(fā)送到服 務(wù)引擎。此類請(qǐng)求不會(huì)中斷當(dāng)前執(zhí)行的任務(wù)T1,因?yàn)閷?duì)低優(yōu)先級(jí)任務(wù)T4的請(qǐng)求的優(yōu)先級(jí)不 高于當(dāng)前執(zhí)行的任務(wù)T1的優(yōu)先級(jí)。但是,只要T1完成執(zhí)行并且服務(wù)引擎接收到對(duì)任務(wù)T4 的請(qǐng)求,服務(wù)引擎便重新開始執(zhí)行T4。
[0068] 備選地,為確保高優(yōu)先級(jí)任務(wù)T1可盡快中斷低優(yōu)先級(jí)任務(wù)T4,當(dāng)前執(zhí)行的任務(wù)T4 可包括在所述任務(wù)終止時(shí)立即觸發(fā)執(zhí)行另一任務(wù)(例如,在請(qǐng)求R中指定的當(dāng)前請(qǐng)求的任 務(wù)T1或在任務(wù)T4的已執(zhí)行指令中指定的另一任務(wù))的程序指令。所述方法可具有以下優(yōu) 點(diǎn):即,不需要重復(fù)地執(zhí)行開始執(zhí)行T4的請(qǐng)求,從而減小服務(wù)引擎的計(jì)算負(fù)荷。
[0069] 優(yōu)選地,任務(wù)T1包括某些用于在開始T1時(shí)將CS值設(shè)為"不可中斷",并且在終止 T1時(shí)將CS值設(shè)為"可中斷"的指令。這樣,只要高優(yōu)先級(jí)任務(wù)T1完成執(zhí)行,從部件120接 收對(duì)低優(yōu)先級(jí)任務(wù)T4的請(qǐng)求的服務(wù)引擎便開始監(jiān)視任務(wù)T4。根據(jù)某些實(shí)施例,服務(wù)引擎可 包括進(jìn)一步的程序邏輯和用于臨時(shí)存儲(chǔ)已中斷的低優(yōu)先級(jí)任務(wù)的中間結(jié)果的存儲(chǔ)器,并且 在中斷的高優(yōu)先級(jí)任務(wù)完成執(zhí)行之后使用所述中間結(jié)果恢復(fù)低優(yōu)先級(jí)任務(wù)。
[0070] 任務(wù)的優(yōu)先級(jí)可根據(jù)屬性顯式指定或者可根據(jù)任務(wù)類型隱含地提供。任務(wù)類型可 由發(fā)送對(duì)應(yīng)任務(wù)請(qǐng)求的部件類型指示。例如,部件116可以是電源管理控制器并且所述部 件提交的任何請(qǐng)求(包括請(qǐng)求R)可被服務(wù)引擎識(shí)別為具有高優(yōu)先級(jí)的電源管理請(qǐng)求。
[0071] 圖2示出圖1中分別更詳細(xì)描述的包括多個(gè)芯片102. 1-102. 4的組件202。每個(gè) 芯片包括一個(gè)或多個(gè)部件以及單線程服務(wù)引擎104. 1-104. 4。此類組件可構(gòu)成多核處理器 大型機(jī),其中每個(gè)"核"對(duì)應(yīng)于芯片之一。
[0072] 圖3示出要由根據(jù)本發(fā)明的一個(gè)實(shí)施例的服務(wù)引擎或其某些部件執(zhí)行的方法。在 步驟302,服務(wù)引擎104執(zhí)行一個(gè)或多個(gè)任務(wù)T1-T5中的一個(gè)當(dāng)前任務(wù)T4。在步驟304,服 務(wù)引擎將當(dāng)前執(zhí)行的任務(wù)的當(dāng)前狀態(tài)存儲(chǔ)到芯片102的數(shù)據(jù)存儲(chǔ)器112。在步驟306,服務(wù) 引擎從多個(gè)部件116中的一個(gè)接收?qǐng)?zhí)行特定任務(wù)T1的請(qǐng)求R。當(dāng)前執(zhí)行的任務(wù)T4具有第 一優(yōu)先級(jí)P4,所請(qǐng)求的任務(wù)T1具有第二優(yōu)先級(jí)P1。在接收到請(qǐng)求R時(shí),時(shí)鐘108開始在步 驟308持續(xù)測(cè)量自接收到請(qǐng)求R以來已經(jīng)過的時(shí)間。借助優(yōu)先級(jí)裝置110,服務(wù)引擎在步驟 310判定第一優(yōu)先級(jí)P4是否高于第二優(yōu)先級(jí)P1。如果結(jié)果為否,則繼續(xù)像步驟318所述的 那樣執(zhí)行當(dāng)前任務(wù)T4并且服務(wù)引擎等待進(jìn)一步的請(qǐng)求。
[0073] 在優(yōu)先級(jí)P1高于P4的情況下,服務(wù)引擎在步驟312 (路徑bl)計(jì)算所存儲(chǔ)的當(dāng)前 狀態(tài)CS是否指示當(dāng)前執(zhí)行的任務(wù)T4可正常中斷。如果可正常中斷,則服務(wù)引擎突然中斷 T4(在T4仍運(yùn)行的情況下)并在步驟316. 1開始執(zhí)行T1。
[0074] 如果所存儲(chǔ)的狀態(tài)指示當(dāng)前任務(wù)不可中斷,則服務(wù)引擎在步驟317觸發(fā)當(dāng)前執(zhí)行 的任務(wù)Τ4的正常終止或者等待當(dāng)前執(zhí)行的任務(wù)自己主動(dòng)將當(dāng)前狀態(tài)值CS設(shè)為"可中斷", 然后觸發(fā)立即(正常)終止Τ4并觸發(fā)執(zhí)行任務(wù)Τ1 (由此,服務(wù)引擎不會(huì)不確定地"等待", 如果自接收到針對(duì)更高優(yōu)先級(jí)任務(wù)的請(qǐng)求R以來經(jīng)過的時(shí)間超過閾值,則不正常地終止當(dāng) 前執(zhí)行的任務(wù))。
[0075] 在任何情況下,當(dāng)正常終止任務(wù)Τ4時(shí),所存儲(chǔ)的Τ4的當(dāng)前狀態(tài)被更新為"不可中 斷",并且針對(duì)更新后的值重復(fù)步驟312。此時(shí),服務(wù)引擎將判定所存儲(chǔ)的當(dāng)前狀態(tài)指示當(dāng)前 任務(wù)可正常中斷并且將執(zhí)行步驟316. 1,該步驟包括中斷當(dāng)前執(zhí)行的任務(wù)(如果有)并開始 執(zhí)行所請(qǐng)求的任務(wù)。
[0076] 在判定優(yōu)先級(jí)Ρ1超過Ρ4的情況下,服務(wù)引擎將(獨(dú)立于路徑bl)重復(fù)地執(zhí)行決 策步驟314(路徑b2)以判定所測(cè)量的自接收到請(qǐng)求R以來的時(shí)間間隔是否超過閾值。如 果結(jié)果為是,服務(wù)引擎將中斷當(dāng)前執(zhí)行的任務(wù)T4并觸發(fā)執(zhí)行所請(qǐng)求的任務(wù)T1,而不考慮當(dāng) 前執(zhí)行的任務(wù)是否已被正常終止。只需忽略所存儲(chǔ)的當(dāng)前狀態(tài)值CS或強(qiáng)制將所述值設(shè)為 "可中斷"并執(zhí)行步驟312便可實(shí)現(xiàn)上述目的。如果結(jié)果為否,則服務(wù)引擎的時(shí)鐘將繼續(xù)執(zhí) 行步驟308。
【權(quán)利要求】
1. 一種包括服務(wù)引擎(104)的集成電路芯片(102),所述服務(wù)引擎(104)適于經(jīng)由一 個(gè)或多個(gè)任務(wù)(T1-T5)管理所述芯片的一個(gè)或多個(gè)部件(114、116、118、120),所述服務(wù)引 擎包括: -處理引擎(106),其適于執(zhí)行所述一個(gè)或多個(gè)任務(wù); 其特征在于,所述服務(wù)引擎進(jìn)一步包括: -數(shù)據(jù)存儲(chǔ)器(112),其存儲(chǔ)所述任務(wù)中的一個(gè)當(dāng)前執(zhí)行的任務(wù)(T4)的當(dāng)前狀態(tài) (CS); -接口(122),其用于接收?qǐng)?zhí)行所述任務(wù)中的另一任務(wù)(T1)的請(qǐng)求(R),所述當(dāng)前執(zhí)行 的任務(wù)(T4)具有第一優(yōu)先級(jí)(P4),所述另一任務(wù)(T1)具有第二優(yōu)先級(jí)(P1); -時(shí)鐘(108),其適于測(cè)量接收所述請(qǐng)求與當(dāng)前時(shí)間之間已經(jīng)過的時(shí)間間隔; -控制引擎,其適于在以下情況下中斷所述當(dāng)前執(zhí)行的任務(wù)并觸發(fā)所請(qǐng)求的任務(wù)的執(zhí) 行: a)所述第二優(yōu)先級(jí)(P1)高于所述第一優(yōu)先級(jí),以及 bl)所存儲(chǔ)的當(dāng)前狀態(tài)指示當(dāng)前任務(wù)可正常中斷;和/或b2)所測(cè)量的時(shí)間間隔超過 閾值,由此在b2)的情況下執(zhí)行所述中斷和所述觸發(fā),而不考慮所述當(dāng)前執(zhí)行的任務(wù)是否 可被正常終止或者是否已被正常終止。
2. 根據(jù)權(quán)利要求1的集成電路芯片,其中所述請(qǐng)求包括指示所請(qǐng)求的任務(wù)的優(yōu)先級(jí)的 屬性值。
3. 根據(jù)權(quán)利要求1的集成電路芯片,其中根據(jù)每個(gè)任務(wù)的類型給出該任務(wù)的優(yōu)先級(jí)。
4. 根據(jù)任一上述權(quán)利要求的集成電路芯片, -其中所請(qǐng)求的任務(wù)是多個(gè)第一任務(wù)中的一個(gè),并且所述當(dāng)前執(zhí)行的任務(wù)是多個(gè)第二 任務(wù)中的一個(gè); -其中所述第一任務(wù)負(fù)責(zé)引導(dǎo)、初始化和/或關(guān)閉所述芯片的處理器核,負(fù)責(zé)防止所述 處理器核過熱,和/或負(fù)責(zé)管理所述處理器核的供電; -其中所述第二任務(wù)負(fù)責(zé)監(jiān)視所述部件,具體地說,負(fù)責(zé)監(jiān)視所述芯片的處理器核,負(fù) 責(zé)對(duì)所述部件計(jì)時(shí),負(fù)責(zé)創(chuàng)建使用統(tǒng)計(jì)信息,和/或負(fù)責(zé)識(shí)別所述部件的錯(cuò)誤和無效狀態(tài); -其中每個(gè)第一任務(wù)的優(yōu)先級(jí)高于所述第二任務(wù)中的任一任務(wù)。
5. 根據(jù)任一上述權(quán)利要求的集成電路芯片, -其中所述處理引擎適于持續(xù)監(jiān)視所述當(dāng)前執(zhí)行的任務(wù)的所述當(dāng)前狀態(tài),并且適于相 應(yīng)地更新存儲(chǔ)在所述數(shù)據(jù)存儲(chǔ)器中的所述當(dāng)前狀態(tài);和/或 -其中所述當(dāng)前執(zhí)行的任務(wù)包括可執(zhí)行指令,當(dāng)被執(zhí)行時(shí),所述可執(zhí)行指令將存儲(chǔ)在所 述數(shù)據(jù)存儲(chǔ)器中的所述當(dāng)前狀態(tài)設(shè)為在所述指令中指定的值。
6. 根據(jù)任一上述權(quán)利要求的集成電路芯片,其中中斷所述當(dāng)前執(zhí)行的任務(wù)包括: -觸發(fā)所述當(dāng)前執(zhí)行的任務(wù)的正常終止或者等待所述任務(wù)自己主動(dòng)正常終止;以及 -在完成所述正常終止之后或在完成所述正常終止期間,將所述當(dāng)前狀態(tài)"可中斷"存 儲(chǔ)到所述數(shù)據(jù)存儲(chǔ)器(112),從而使得所述控制引擎能夠根據(jù)情況bl)觸發(fā)所請(qǐng)求的任務(wù) 的執(zhí)行。
7. 根據(jù)任一上述權(quán)利要求的集成電路芯片, -其中在所測(cè)量的時(shí)間間隔超過所述閾值的情況下,所述服務(wù)引擎適于將存儲(chǔ)在所述 數(shù)據(jù)存儲(chǔ)器中的所述當(dāng)前狀態(tài)設(shè)為"可中斷",而不考慮所述當(dāng)前執(zhí)行的任務(wù)是否已被正 常終止或是否可被正常終止,從而使得所述控制引擎能夠根據(jù)b2)觸發(fā)所請(qǐng)求的任務(wù)的執(zhí) 行。
8. 根據(jù)任一上述權(quán)利要求的集成電路芯片,其中所述請(qǐng)求是所述服務(wù)引擎所支持的多 個(gè)請(qǐng)求中的一個(gè),每個(gè)所支持的請(qǐng)求對(duì)應(yīng)于所述任務(wù)中的一個(gè),每個(gè)所述請(qǐng)求被分配一個(gè) 請(qǐng)求特定的閾值,其中相對(duì)于特定于所述請(qǐng)求的閾值而執(zhí)行所測(cè)量的時(shí)間間隔是否超過所 述閾值的判定。
9. 根據(jù)權(quán)利要求8的集成電路芯片,其中由所述部件中的一個(gè)或片上部件管理單元生 成所述請(qǐng)求,所述請(qǐng)求包括其請(qǐng)求特定的閾值。
10. 根據(jù)任一上述權(quán)利要求的集成電路芯片,其中所述服務(wù)引擎是片上微控制器,其中 所述部件包括硬件和/或固件,并且其中所述任務(wù)是存儲(chǔ)在所述芯片上的計(jì)算機(jī)可解釋指 令。
11. 根據(jù)任一上述權(quán)利要求的集成電路芯片,其中所述處理引擎僅可操作以一次執(zhí)行 一個(gè)任務(wù)。
12. 根據(jù)任一上述權(quán)利要求的集成電路芯片,其中包括所述當(dāng)前狀態(tài)的所述數(shù)據(jù)存儲(chǔ) 器是以單個(gè)位值的形式存儲(chǔ)所述當(dāng)前狀態(tài)的寄存器,所述當(dāng)前狀態(tài)為"可中斷"或"不可中 斷"。
13. 根據(jù)上述權(quán)利要求1-11中的任一權(quán)利要求的集成電路芯片,其中所存儲(chǔ)的當(dāng)前狀 態(tài)為"可中斷"或"不可中斷"或"可有條件地中斷",其中所存儲(chǔ)的狀態(tài)值為"可有條件地中 斷"的當(dāng)前執(zhí)行的任務(wù)的中斷使得所述控制引擎能夠在所請(qǐng)求的任務(wù)或所述芯片的部件滿 足額外條件的情況下中斷該當(dāng)前執(zhí)行的任務(wù)。
14. 一種包括根據(jù)任一上述權(quán)利要求的多個(gè)集成電路芯片(102. 1-102.4)的組件 (202),每個(gè)芯片包括一個(gè)服務(wù)引擎(104. 1-104. 4),每個(gè)芯片的部件包括一個(gè)由其相應(yīng)服 務(wù)引擎管理的處理器核(116. 1-116. 4)。
15. -種用于經(jīng)由一個(gè)或多個(gè)任務(wù)管理集成電路芯片(102)的一個(gè)或多個(gè)部件(114、 116、118、120)的計(jì)算機(jī)實(shí)現(xiàn)的方法,所述芯片包括服務(wù)引擎(104),所述方法由所述服務(wù) 引擎執(zhí)行并且包括: -執(zhí)行一個(gè)或多個(gè)任務(wù)(T1-T5)中的一個(gè)當(dāng)前任務(wù); -在所述芯片的數(shù)據(jù)存儲(chǔ)器(112)中存儲(chǔ)當(dāng)前執(zhí)行的任務(wù)(T4)的當(dāng)前狀態(tài)(CS); -從所述部件之一接收?qǐng)?zhí)行所述任務(wù)中的另一任務(wù)(T1)的請(qǐng)求(R),所述當(dāng)前執(zhí)行的 任務(wù)(T4)具有第一優(yōu)先級(jí)(P4),所述另一任務(wù)(T1)具有第二優(yōu)先級(jí)(P1); -測(cè)量接收所述請(qǐng)求與當(dāng)前時(shí)間之間已經(jīng)過的時(shí)間間隔; -在以下情況下中斷所述當(dāng)前執(zhí)行的任務(wù)并觸發(fā)所請(qǐng)求的任務(wù)的執(zhí)行: a)所述第一優(yōu)先級(jí)高于所述第二優(yōu)先級(jí),以及 bl)所存儲(chǔ)的當(dāng)前狀態(tài)指示當(dāng)前任務(wù)可正常中斷;和/或b2)所測(cè)量的時(shí)間間隔超過 閾值,由此在b2)的情況下執(zhí)行所述中斷和所述觸發(fā),而不考慮所述當(dāng)前執(zhí)行的任務(wù)是否 被正常終止。
【文檔編號(hào)】G06F9/48GK104156263SQ201410195247
【公開日】2014年11月19日 申請(qǐng)日期:2014年5月9日 優(yōu)先權(quán)日:2013年5月14日
【發(fā)明者】A·柯尼格, C·里徹特納, P·M·洛博, B·C·布洛克, T·戈洛克勒 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
长白| 兴城市| 平舆县| 双流县| 收藏| 武乡县| 墨玉县| 庆城县| 五指山市| 什邡市| 太康县| 石嘴山市| 麻江县| 大余县| 盐源县| 乌什县| 留坝县| 香港| 抚远县| 凭祥市| 手游| 岫岩| 元朗区| 河池市| 翁源县| 安庆市| 塘沽区| 漯河市| 九江县| 安西县| 西安市| 和平县| 蒲城县| 武定县| 山西省| 杭锦旗| 定边县| 文成县| 克拉玛依市| 西畴县| 三亚市|