ITRS的工序路線圖與新一代嵌入式多核SoC設(shè)計(jì)
(7)支持混合模擬環(huán)境,將周期準(zhǔn)確性和功能準(zhǔn)確性結(jié)合起來,降低軟件開發(fā)的難度,可以提供性能預(yù)測與優(yōu)化。
(8)網(wǎng)絡(luò)系統(tǒng)增強(qiáng)、環(huán)境更重視軟件和虛擬化技術(shù)的參與性增強(qiáng)了多核硬件體系結(jié)構(gòu)的作用。
為了滿足可擴(kuò)展性、基于軟件解決方案并支持多種應(yīng)用程序(從低端到高端)的需求,MC/AE的SoC網(wǎng)絡(luò)平臺包含了一些必要的功能模塊。
多核。在很多多核產(chǎn)品中,多個(gè)內(nèi)核的頻率基本都超過1GHz。這個(gè)平臺的目的是要實(shí)現(xiàn)最高的周期執(zhí)行指令數(shù)(IPC)。及單位面積內(nèi)指定電量條件下達(dá)到最大的頻率。
多核還被設(shè)計(jì)用于減少高性能加速模塊的重復(fù)性與計(jì)算集中性操作,提高吞吐量或者新應(yīng)用和服務(wù)條件下的處理周期數(shù)。
平臺中每個(gè)多核的內(nèi)核都有自己的L2內(nèi)部緩存。內(nèi)部緩存通過一個(gè)專用通道直接連接CPU,可以實(shí)現(xiàn)非常高的應(yīng)用性能。
內(nèi)部緩存能夠滿足全速運(yùn)行CPU的需求,比起按50%比例的“共享總線/共享緩存”體系結(jié)構(gòu)可以大幅減少處理延遲。L2的內(nèi)部緩存還能根據(jù)不同應(yīng)用程序的需要,將緩存的內(nèi)容在指令與數(shù)據(jù)之間進(jìn)行轉(zhuǎn)換,通過大幅減輕CPU負(fù)荷來提高總體性能。
另外,L2內(nèi)部緩存還能減少芯片內(nèi)和主內(nèi)存上的流量,這能夠降低處理延遲,緩解其他用戶的帶寬壓力。
多線程和多處理器是密切相關(guān)的。當(dāng)然,它們之間也是有區(qū)別的:多處理器共享唯一的內(nèi)存和連接資源,而多線程處理器則除了共享這些資源外,還共享指令取出與問題邏輯,這些可能是其他處理器的資源。
一些多線程編程和體系結(jié)構(gòu)模型假定新的線程被分配到不同的處理器上,實(shí)現(xiàn)了很好的并行性。
分級緩存。認(rèn)識到現(xiàn)有處理器結(jié)構(gòu)依賴于共享緩存模型的局限之后,一種使用三級緩存分級技術(shù)的新方法被用于MC網(wǎng)絡(luò)平臺中。
L1緩存依然保留在內(nèi)核之中。如前所述,L2緩存被實(shí)現(xiàn)為內(nèi)部緩存,更靠近內(nèi)核,這可以顯著地提升系統(tǒng)性能。每個(gè)內(nèi)核都有自己的內(nèi)部L2緩存,可以提供:
(1)聚合的帶寬,不會受單個(gè)共享緩存的限制。
(2)通過與前端緩存競爭而降低延遲。
(3)內(nèi)部緩存可以根據(jù)不同的性能、隔離性、優(yōu)先級和QoS(服務(wù)質(zhì)量)要求調(diào)整內(nèi)核計(jì)算策略。
(4)私有緩存比起共享緩存更具獨(dú)立性,并可以作為資源管理的一個(gè)自然單元(例如可以臨時(shí)關(guān)閉以節(jié)約能源)。
此外,還有一些任務(wù)是共享緩存所擅長的。例如處理器間通信與共享數(shù)據(jù)結(jié)果的計(jì)算處理。在這些情況下,我們還可以提供一個(gè)大容量的L3緩存。這種高帶寬、共享緩存技術(shù)讓沖突變得很少,可以提供快速的內(nèi)存輸入輸出訪問和加速器能力。
芯片內(nèi)連接。芯片內(nèi)連接與緩存分級技術(shù)一起工作,實(shí)現(xiàn)緩存兼容與并發(fā)訪問。上述革新的內(nèi)部緩存實(shí)現(xiàn)加上這種芯片內(nèi)連接,能夠全面支持?jǐn)?shù)據(jù)復(fù)制、改良中斷與全硬件兼容的跟蹤。
多核網(wǎng)絡(luò)平臺能夠充分利用芯片內(nèi)連接的高度可擴(kuò)展性和模塊化,這一多年積累的研究開發(fā)結(jié)果可以實(shí)現(xiàn)多個(gè)內(nèi)核之間的緩存兼容、并行與低延遲連接。
與多個(gè)內(nèi)核、內(nèi)存和外圍設(shè)備之間使用共享總線作為互連媒質(zhì)不同的是,這種芯片內(nèi)連接技術(shù)可以減少總線仲裁與沖突,這是其他多核體系結(jié)構(gòu)所面臨的嚴(yán)峻挑戰(zhàn),因?yàn)闀谙到y(tǒng)中引入更多的流量。它就像一個(gè)網(wǎng)狀,允許并行的流量從其中任一點(diǎn)進(jìn)入或者退出系統(tǒng),而不是只有一個(gè)進(jìn)出口點(diǎn)。
由于其天然的可擴(kuò)展性,這種芯片內(nèi)連接能夠在每個(gè)周期都實(shí)現(xiàn)多種、全面兼容的交易,可以很方便地?cái)U(kuò)展到支持更多的內(nèi)核。芯片內(nèi)連接還可以支持異構(gòu)芯片組,從而充分發(fā)揮多核的作用,讓各種能耗和性能設(shè)計(jì)基礎(chǔ)的內(nèi)核可以在一起協(xié)調(diào)工作,相互之間各盡其職、取長補(bǔ)短。
可連接性。多核網(wǎng)絡(luò)平臺整合了各種網(wǎng)絡(luò)與I/O資源,這種設(shè)計(jì)可以支持很高的吞吐量。那些能夠?yàn)橄到y(tǒng)設(shè)計(jì)者提供各種可擴(kuò)展、高性能的資源可以受到特殊關(guān)照。
SOC-MC/AE網(wǎng)絡(luò)平臺的接口與功能模塊
SOC-MC/AE網(wǎng)絡(luò)平臺支持各種接口,包括RGMII、XGMIII與SPI-412等接口控制器,以及一些高速接口,如PCI-X接口與串行RIO接口。
外圍接口。外圍設(shè)備和ROM可以通過各種外圍接口連接多核網(wǎng)絡(luò)平臺。這些端口是使用32位外圍I/O總線及可編程多功能輸入輸出(GPIO)信號的不同組合來創(chuàng)建的。
多核網(wǎng)絡(luò)平臺包含一些必要的標(biāo)準(zhǔn)總線,例如由兩條雙向總線線路組成的標(biāo)準(zhǔn)I2C總線端口、串行數(shù)據(jù)(SD)線與串行時(shí)鐘(SCLK)線。
按需提供的加速引擎。按需提供的加速技術(shù)讓多核網(wǎng)絡(luò)平臺體系結(jié)構(gòu)中的加速引擎在性能和靈活性方面達(dá)到了新的高度。這種異步、共享資源的體系結(jié)構(gòu)可以提供低延遲、多任務(wù)處理,而不會引起線程切換超負(fù)荷。
按需提供的應(yīng)用加速使得多核網(wǎng)絡(luò)平臺的性能優(yōu)勢超過了單核心的處理周期,可以降低能耗,減少硅的使用率,從而降低芯片制造成本。按需提供、高性能的加速引擎技術(shù)包括:
(1)支持深度封裝檢查和全面內(nèi)容處理的模式匹配。
(2)解壓縮和壓縮能力,在使用時(shí)解壓、傳輸時(shí)壓縮。
(3)支持保密、完整與認(rèn)證的加密安全機(jī)制。
(4)包轉(zhuǎn)換和流分類的表查詢技術(shù)。
(5)數(shù)據(jù)分支資源管理,能有效地分配芯片內(nèi)資源。
(6)包分發(fā)與隊(duì)列管理。
混合模擬環(huán)境。SOC-MC/AE網(wǎng)絡(luò)平臺需要全面的系統(tǒng)模擬模型,整合了周期準(zhǔn)確性建模技術(shù)和功能性建模技術(shù)的混合機(jī)制,可以讓使用多核網(wǎng)絡(luò)平臺的客戶應(yīng)用程序在軟件開發(fā)、性能預(yù)測與優(yōu)化方面的難度大幅降低。
使用這種混合的模擬環(huán)境,能夠方便地在功能和周期準(zhǔn)確性模型之間實(shí)現(xiàn)切換,開發(fā)者可以在虛擬的多核網(wǎng)絡(luò)平臺上遷移和分割操作系統(tǒng)、中間件和應(yīng)用程序,方便開發(fā)、調(diào)試和基準(zhǔn)測試,這甚至比使用實(shí)際產(chǎn)品還要方便。
這個(gè)環(huán)境可以進(jìn)行安全而便利的分割、并行、優(yōu)化系統(tǒng)和應(yīng)用程序。軟件開發(fā)人員可以使用“what if”模式來虛擬運(yùn)行環(huán)境,在不受實(shí)際硬件條件約束的情況下調(diào)優(yōu)性能。這種混合模擬器為開發(fā)者提供了硬件視圖,其主要特性包括:
(1)快速而實(shí)用的多核網(wǎng)絡(luò)平臺模型。
(2)詳細(xì)的多核網(wǎng)絡(luò)平臺周期準(zhǔn)確性模型。
(3)包含了基礎(chǔ)架構(gòu)和軟件開發(fā)、代碼分割、調(diào)試、部署及虛擬化等工具的綜合包。
(4)不管是宏觀和微觀,系統(tǒng)狀態(tài)都具有良好的可視性,方便觀察緩存和寄存器管道的狀態(tài)。
(5)執(zhí)行軟件的運(yùn)行時(shí)控制,包括斷點(diǎn)、分布和反向執(zhí)行。
(6)可以重啟多個(gè)操作系統(tǒng)。
這種混合模擬器的一個(gè)重要優(yōu)點(diǎn)是能夠動(dòng)態(tài)地實(shí)現(xiàn)從高速功能性模式到普通的周期準(zhǔn)確性模式之間的來回切換。
這使得軟件開發(fā)人員可以在必要時(shí)快速重啟操作系統(tǒng)或者執(zhí)行關(guān)鍵代碼,然后再切換到普通的周期準(zhǔn)確性模式來分析特定范圍的數(shù)據(jù),而無需等待很長時(shí)間。
作為一個(gè)多核系統(tǒng)的開發(fā)平臺,這種混合的模擬環(huán)境具有很好的靈活性與可擴(kuò)展性,支持一些在操作系統(tǒng)或者應(yīng)用程序中無需執(zhí)行指令的獨(dú)占環(huán)境。軟件開發(fā)人員能夠減少目標(biāo)系統(tǒng)的開發(fā)時(shí)間,從而全面提高其代碼的質(zhì)量。
MC/AE增強(qiáng)環(huán)境
MC/AE網(wǎng)絡(luò)平臺需要軟件工程師花費(fèi)特別多的時(shí)間來考慮軟件體系結(jié)構(gòu)的問題。開發(fā)多核處理器的性能潛力意味著使用并行處理的能力,考慮到很大程度上同步的單核系統(tǒng)具有長期而成功的歷史,這種轉(zhuǎn)變不是一時(shí)半會兒就能夠深入人心的。
網(wǎng)絡(luò)應(yīng)用程序在一定程度上實(shí)現(xiàn)了包處理的并行性,同時(shí)網(wǎng)絡(luò)數(shù)據(jù)通道和控制平面之間的互操作也可以算作是另一種層面的并行。
這些并行性都是很容易想像的,而如果數(shù)據(jù)通道流超過了單CPU的能力,或者單內(nèi)核不能提供足夠的控制平面響應(yīng)時(shí),事情就會變得更加復(fù)雜了。負(fù)載均衡和在同一設(shè)備上實(shí)現(xiàn)非均衡/均衡混合多處理環(huán)境是一種嚴(yán)峻的挑戰(zhàn),而多核網(wǎng)絡(luò)平臺就是被設(shè)計(jì)用來解決這些問題的。
盡管從軟件架構(gòu)上需要考慮任務(wù)的分發(fā),但多核網(wǎng)絡(luò)平臺提供的密集處理能力也可以讓硬件設(shè)計(jì)師想到將功能集中并重新分配,這能夠充分發(fā)揮多個(gè)CPU或者功能模塊的效用。
這些想法與在系統(tǒng)中引入新的服務(wù)和能力產(chǎn)生強(qiáng)烈的共鳴。不管是軟件還是硬件體系結(jié)構(gòu),都需要多核處理器具有良好的靈活性,也需要能夠幫助提升未來架構(gòu)體驗(yàn)的良好機(jī)制。
在SoC-MC/AE網(wǎng)絡(luò)平臺中,每一個(gè)內(nèi)核都具有私有的L2緩存,這也被稱為內(nèi)部緩存。另外,平臺還裝備了按需提供的加速引擎,能夠滿足不同應(yīng)用的需求。
盡管多核平臺被設(shè)計(jì)為能夠滿足很高的性能目標(biāo),但便于使用也是平臺定義的重要指標(biāo)。在目前的多核實(shí)現(xiàn)中,一個(gè)明顯的障礙就是編程的效率和調(diào)試的便利性。下面是兩種假設(shè)的場景:
場景1:2007年主流內(nèi)核個(gè)數(shù)為1,系統(tǒng)性能也是為單核系統(tǒng)設(shè)計(jì)。
在這種情況下,45nm工藝能夠?qū)?5nm工藝的系統(tǒng)性能提高到3.6倍,相當(dāng)于使用3.7個(gè)65nm的內(nèi)核。同樣,32nm工藝的系統(tǒng)性能可以達(dá)到13.5倍,相當(dāng)于7.5個(gè)65nm的內(nèi)核。這個(gè)性能曲線基本是線性的。
場景2:2007年主流內(nèi)核個(gè)數(shù)為4,系統(tǒng)性能也是為4核系統(tǒng)設(shè)計(jì)。
在這種情況下,45nm工藝的系統(tǒng)性能可以達(dá)到65nm工藝的14.7倍。相當(dāng)于10.9個(gè)65nm的內(nèi)核。同樣,32nm工藝可以達(dá)到54倍系統(tǒng)性能,相當(dāng)于30個(gè)65nm的內(nèi)核。這也是線性增長的。
SOC-MC/AE平臺的價(jià)值啟示
今后的網(wǎng)絡(luò)需求將會超越目前這種單核體系結(jié)構(gòu)所能提供的操作頻率。增加內(nèi)核數(shù)量(多核)可以提高性能(摩爾定律)。
但是在封閉空間內(nèi)熱量管理的挑戰(zhàn)甚至超過了提高CPU頻率來提升性能的難度。因此,這需要求助于系統(tǒng)級芯片平臺所帶來的機(jī)會。
另外,還有很多亟待解決的問題:總線帶寬與存儲量沖突、可擴(kuò)展性問題,更糟糕的是由于缺乏編程可視性而帶來處理周期浪費(fèi)等問題。
在SOC-MC/AE網(wǎng)絡(luò)平臺中添加加速引擎,能夠進(jìn)一步提升性能(廣義摩爾定律)。但是,為了與硬件需求相匹配,在軟件及模擬環(huán)境方面還需要更多的投資(超越摩爾定律)。
因此,SOC-MC/AE網(wǎng)絡(luò)平臺不只是為超級性能和提升能源效率而設(shè)計(jì)的,它還能快速而順利地幫助推進(jìn)多核處理器的發(fā)展,為業(yè)界提供一個(gè)可行的環(huán)境。
因此,多核、加速引擎和模擬增強(qiáng)環(huán)境,是變更網(wǎng)絡(luò)執(zhí)行環(huán)境的三個(gè)重要組成部分,能夠提供可擴(kuò)展的、可持續(xù)發(fā)展的性能,以滿足下一代高級應(yīng)用程序及服務(wù)的需求。本文引用地址:http://m.butianyuan.cn/article/151116.htm linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論