如今,航空電子系統(tǒng)架構(gòu)師在做出設(shè)計(jì)決策時經(jīng)常因一個代價高昂的問題而感到沮喪 - 由于現(xiàn)有系統(tǒng)缺乏支持更新所需的靈活性,因此必須執(zhí)行實(shí)質(zhì)性的重新設(shè)計(jì)。設(shè)計(jì)過程中的這種不靈活的障礙可以通過使用新的、高度集成的多核處理器來克服,這些處理器可以提供長期的系統(tǒng)靈活性。現(xiàn)在,多核處理器不僅被用于解決新單核處理器可用性下降的問題,而且還利用增加的吞吐量,同時保持同等的功耗。
對各種多核操作系統(tǒng)(OS)架構(gòu)的討論經(jīng)常得出一個共同的錯誤結(jié)論:它們都提供類似的功能,降低了架構(gòu)在設(shè)計(jì)選擇中的重要性。更詳細(xì)的檢查突出顯示了一些關(guān)鍵的多核操作系統(tǒng)體系結(jié)構(gòu)之間的顯著差異。仔細(xì)考慮這些差異有助于防止當(dāng)今的多核操作系統(tǒng)架構(gòu)選擇成為未來系統(tǒng)更新的數(shù)百萬美元的障礙。
背景
在單核系統(tǒng)中,多個應(yīng)用程序可以通過在托管應(yīng)用程序之間對內(nèi)存、資源和處理器時間進(jìn)行可靠分區(qū)來共享計(jì)算資源。時間分區(qū)的常見方法是將固定時間間隔劃分為一系列固定子間隔,稱為“分區(qū)時間窗口”。為每個應(yīng)用程序分配一個或多個分區(qū)時間窗口,窗口的長度和數(shù)量是應(yīng)用程序最壞情況執(zhí)行時間 (WCET) 和所需重復(fù)率的因素。操作系統(tǒng)確保每個應(yīng)用程序在其分配的時間內(nèi)都可以訪問處理器。
任何系統(tǒng)都需要考慮如何考慮應(yīng)用程序的增長,特別是對于范圍傾向于擴(kuò)展的系統(tǒng)(例如,飛行管理或機(jī)載維護(hù))。單核系統(tǒng)的方法包括使用未分配的時間,轉(zhuǎn)移和/或縮短其他應(yīng)用程序的時間分配,以及將應(yīng)用程序移動到功能更強(qiáng)大的計(jì)算平臺。多核平臺的端口應(yīng)繼續(xù)支持這些方法,并允許在單核架構(gòu)下不可行的技術(shù)。
多核 – 并發(fā)調(diào)度
在最基本的層面上,多核處理器的內(nèi)核可以分配給并發(fā)執(zhí)行獨(dú)立的應(yīng)用程序或同時執(zhí)行應(yīng)用程序內(nèi)的多個線程。必須考慮通過兩個或多個內(nèi)核共享的資源(如主內(nèi)存或系統(tǒng)互連)可能發(fā)生的任何爭用。遺憾的是,今天的 COTS 多核處理器目前缺乏允許管理對所有共享資源的訪問的硬件控制。
SMP 多核架構(gòu)
對稱多處理 (SMP) 是一種基于多核的架構(gòu),其中單個操作系統(tǒng)控制所有資源,包括將內(nèi)核分配給應(yīng)用程序。“對稱”是指所有內(nèi)核被視為平等,允許操作系統(tǒng)利用任何內(nèi)核來執(zhí)行應(yīng)用程序線程。即使應(yīng)用程序可能被設(shè)計(jì)為多線程,這并不意味著當(dāng)多個內(nèi)核可用時,它將執(zhí)行相同的操作。對于可靠的分區(qū),操作系統(tǒng)應(yīng)包括支持配置將哪些內(nèi)核分配給應(yīng)用程序以及線程將具有要執(zhí)行的關(guān)聯(lián)性。
借助 SMP 支持,在將一組應(yīng)用程序從單核處理器移植到多核處理器時,可以采取保守的方法,包括保留現(xiàn)有分區(qū)計(jì)劃。通過確保所有線程對同一內(nèi)核具有關(guān)聯(lián),線程將像在單核處理器上一樣執(zhí)行。如圖 1 所示,現(xiàn)在可以根據(jù)需要并行化特定應(yīng)用程序以獲得吞吐量,選擇每個線程將在哪個內(nèi)核上運(yùn)行,從而實(shí)現(xiàn)應(yīng)用程序增長。新應(yīng)用程序可以專門設(shè)計(jì)為同時利用多個內(nèi)核,可能具有更短的時間分配。此外,將擴(kuò)展連續(xù)內(nèi)置測試(BIT)應(yīng)用程序,以確認(rèn)所有內(nèi)核和共享資源的正確性。
圖1:使用 SMP 的應(yīng)用程序增長注意事項(xiàng)
AMP多核架構(gòu)
在移植應(yīng)用程序(即使是多線程應(yīng)用程序)時,可以并行有效使用多少個內(nèi)核可能存在實(shí)際限制。非對稱多處理 (AMP) 是一種基于多核的架構(gòu),其中每個內(nèi)核基本上作為單獨(dú)的計(jì)算資源運(yùn)行,允許并發(fā)調(diào)度。這種體系結(jié)構(gòu)被稱為“非對稱”,因?yàn)樗试S(但不要求)實(shí)現(xiàn)使用不同類型的處理器內(nèi)核和/或操作系統(tǒng)。由于多個不同的操作系統(tǒng)不能全部以最高的處理器權(quán)限級別運(yùn)行,因此可能存在一個監(jiān)視器功能(有時稱為“虛擬機(jī)監(jiān)控程序”)在所有內(nèi)核上提供此支持。AMP 架構(gòu)的優(yōu)勢在于,不同的應(yīng)用程序可以在可用內(nèi)核上同時運(yùn)行。通過一定程度的虛擬化支持(例如,作為監(jiān)控功能的一部分),這包括不同操作環(huán)境(如Linux或?qū)S胁僮飨到y(tǒng))的應(yīng)用程序。
將應(yīng)用從單核處理器移植到 AMP 架構(gòu)時,可以采用與 SMP 架構(gòu)類似的方法。但是,在解決爭用問題之前,可以實(shí)際分析的并發(fā)執(zhí)行內(nèi)核(例如 WCET)的數(shù)量將受到限制。如圖 2 所示,由于應(yīng)用程序相互依賴性,服務(wù)器應(yīng)用程序(如文件系統(tǒng))即使在爭用的情況下也可能是并行性的良好候選項(xiàng)。假設(shè)可以考慮對共享資源的爭用,則可以將AMP架構(gòu)中的每個內(nèi)核配置為運(yùn)行獨(dú)立的應(yīng)用程序計(jì)劃或完全不同的環(huán)境,例如來賓操作系統(tǒng)。與運(yùn)行獨(dú)立計(jì)劃相關(guān)的一個困難是,仍然需要跨計(jì)劃分析資源利用率。如果不能及時協(xié)調(diào)獨(dú)立的計(jì)劃,則可能無法分析和考慮資源可用性和協(xié)調(diào)的硬件 BIT。如果其中一個內(nèi)核正在運(yùn)行虛擬化操作系統(tǒng)(例如 Linux),則操作系統(tǒng)上缺乏保證活動以及無法協(xié)調(diào)硬件 BIT 可能會導(dǎo)致并行運(yùn)行的內(nèi)容受到嚴(yán)重限制。
當(dāng)應(yīng)用程序更新需要的帶寬超過其當(dāng)前核心可以支持的帶寬時,可以將應(yīng)用程序移植到其他核心之一。這種移植會因 AMP 架構(gòu)固有的幾個因素而變得復(fù)雜。例如,帶寬必須全部來自一個內(nèi)核,移植可能會破壞有關(guān)應(yīng)用程序執(zhí)行順序的假設(shè),并且傳輸延遲可能會因開/關(guān)內(nèi)核通信機(jī)制的差異而受到影響。這些復(fù)雜性與流行的想法相矛盾,即 AMP 架構(gòu)由于調(diào)度不那么復(fù)雜,因此更容易認(rèn)證。
圖2:AMP 的應(yīng)用增長注意事項(xiàng)
來自綠山軟件的 tuMP 多核架構(gòu)
其他架構(gòu)包括異構(gòu)多處理(HMP – 單個內(nèi)核靜態(tài)劃分為獨(dú)立的 AMP 或 SMP 子系統(tǒng),每個子系統(tǒng)都有自己的操作系統(tǒng))和統(tǒng)一多處理(UMP – 單個內(nèi)核在應(yīng)用程序基礎(chǔ)上靜態(tài)劃分為子系統(tǒng),但具有單個“統(tǒng)一”操作系統(tǒng))。AMP、SMP 和其他類似架構(gòu)的一個常見限制是,核心使用情況在執(zhí)行期間是固定的,并且在分配后不會更改。這一限制通過Green Hills Software開發(fā)的多核架構(gòu)得到解決,該架構(gòu)目前正在進(jìn)行DO-178B A級認(rèn)證工作,作為INTEGRITY-178產(chǎn)品線的一部分。這種架構(gòu)被稱為“時變統(tǒng)一多處理”(tuMP),顯著提高了處理器內(nèi)核利用方式的靈活性。(tuMP 是 Green Hills Software 的注冊商標(biāo)。tuMP 架構(gòu)的可行性通過其作為 INTEGRITY-178 單核產(chǎn)品的更新的實(shí)施得到了證明,保留了 12 年的安全和安保保證譜系和產(chǎn)品服務(wù)歷史。
tuMP 架構(gòu)的好處是它保留了所有 AMP 和 SMP 調(diào)度功能,同時解決了它們的重大限制。tuMP 體系結(jié)構(gòu)通過稱為“地緣組”的新可調(diào)度實(shí)體提供靈活性,該實(shí)體是應(yīng)用程序、核心和調(diào)度特征的關(guān)聯(lián)。只有分配給地緣組的應(yīng)用程序才能在其計(jì)劃的時間范圍內(nèi)使用分配給同一地緣組的核心。通過創(chuàng)建多個子系統(tǒng)調(diào)度,可以同時調(diào)度獨(dú)立的關(guān)聯(lián)組(即應(yīng)用程序和內(nèi)核的非重疊使用),并且不受時間窗口必須在所有內(nèi)核之間對齊的限制。此外,通過為每個組合創(chuàng)建唯一的地緣組,應(yīng)用程序可以在不同的內(nèi)核集上運(yùn)行。借助 tuMP,可以完全靈活地利用可用內(nèi)核進(jìn)行并發(fā)應(yīng)用程序和并發(fā)線程執(zhí)行,并在需要時更改這些關(guān)系(即時變)。
tuMP 體系結(jié)構(gòu)稱為“統(tǒng)一”,因?yàn)橥ㄓ貌僮飨到y(tǒng)控制所有內(nèi)核的調(diào)度和應(yīng)用程序之間的整體通信。此特性解決了在內(nèi)核之間移動時的 AMP 應(yīng)用程序移植問題;可以使用相同的機(jī)制在相同或不同內(nèi)核上的應(yīng)用程序之間進(jìn)行通信。
單核處理器的分區(qū)調(diào)度端口可以通過為綁定到同一核心的每個應(yīng)用程序創(chuàng)建具有關(guān)聯(lián)組的相同子系統(tǒng)調(diào)度來實(shí)現(xiàn)。如果某些應(yīng)用程序需要額外的吞吐量,則可以將其他內(nèi)核分配給其地緣組,也可以從任何內(nèi)核分配未使用的時間。
在 AMP 系統(tǒng)中(如圖 2 所示),通過并行運(yùn)行文件系統(tǒng)應(yīng)用程序與相互依賴的應(yīng)用程序來實(shí)現(xiàn)一定程度的并行性。如果應(yīng)用程序需要比文件系統(tǒng)更高的吞吐量,則文件系統(tǒng)不會充分利用其核心。如圖 3 所示,tuMP 通過創(chuàng)建一個將文件系統(tǒng)與依賴于它的應(yīng)用程序(例如飛行管理)組合在一起的關(guān)聯(lián)組,并為其分配多個內(nèi)核,從而解決了利用率不足的問題。在此方案中,文件系統(tǒng)可以與特定核心具有相關(guān)性,應(yīng)用程序在未用于文件系統(tǒng)操作時也會使用該核心。
當(dāng)其他應(yīng)用程序(例如 BIT)需要同時控制所有內(nèi)核或現(xiàn)有應(yīng)用程序不能容忍并行運(yùn)行的其他應(yīng)用程序時,在內(nèi)核上集成來賓操作系統(tǒng)是一項(xiàng)設(shè)計(jì)挑戰(zhàn)。在 tuMP 中,可以將來賓操作系統(tǒng)關(guān)聯(lián)性組分配給多個分區(qū)時間窗口,這些時間窗口會分解核心的使用以支持這些其他要求。現(xiàn)在,可以為 BIT 應(yīng)用程序的地緣組分配所有內(nèi)核,以便它可以執(zhí)行必要的硬件測試。
在 AMP 系統(tǒng)中,如果另一個內(nèi)核有足夠的未分配時間來支持更新的應(yīng)用程序,則可以支持其核心吞吐量不足以支持更新的應(yīng)用程序。借助 tuMP,應(yīng)用程序(例如,板載維護(hù))可以分布在與多個內(nèi)核關(guān)聯(lián)的時間窗口上,而不僅僅是一個內(nèi)核。
圖3:使用 tuMP 的應(yīng)用程序增長注意事項(xiàng)
集成多核處理器
航空電子認(rèn)證工作需要徹底了解使用這些技術(shù)的復(fù)雜性和后果。系統(tǒng)設(shè)計(jì)人員在將多核處理器集成到其航空電子平臺設(shè)計(jì)中時,應(yīng)牢記謹(jǐn)慎選擇架構(gòu)的重要性。系統(tǒng)設(shè)計(jì)人員應(yīng)考慮根據(jù)其系統(tǒng)靈活性選擇多核架構(gòu),以優(yōu)化核心使用并管理認(rèn)證風(fēng)險(xiǎn)。就用戶而言,他們應(yīng)該明白,他們的供應(yīng)商今天的選擇將影響未來軟件擴(kuò)展的經(jīng)濟(jì)可行性。
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
19813瀏覽量
233613 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
7097瀏覽量
124969
發(fā)布評論請先 登錄
電鉆改裝新潮流:航空插頭的魅力所在

從零開始學(xué)MOS管:揭秘現(xiàn)代電子設(shè)備的“心臟”

電線連接的藝術(shù):航空插頭如何征服了連接領(lǐng)域

航空插頭的靈活舞者——壓接款的優(yōu)勢與應(yīng)用

揭秘航空插頭版數(shù)據(jù)連接器:電子設(shè)備的“空中橋梁” ?

航空插頭的力量之源:廠家的核心競爭力解碼

航空插頭的可靠性揭秘

航空插頭的“守護(hù)者”:揭秘絕緣材料之謎
無處不在的守護(hù)者:航空插頭連接器的跨界之旅

艾畢勝電子全自動跟拍智能云臺驅(qū)動板方案的神秘面紗

用智能DAC揭開醫(yī)療報(bào)警設(shè)計(jì)的神秘面紗

北斗衛(wèi)星時鐘——揭開“授時”的神秘面紗

xAI公司將在八月揭開其新Grok-2大語言模型的神秘面紗
揭開Pluto XZU20的神秘面紗—探尋未來緊湊而強(qiáng)大的FPGA解決方案

評論