設(shè)計人員預(yù)測完成設(shè)計所需的時間和資源、設(shè)備的性能以及何時可以交付給客戶的能力受到影響。即使使用最好的工具,一些 SoC 設(shè)計趨勢也會極大地影響可預(yù)測性,從而影響總體開發(fā)成本,如圖 1 所示。
圖1

導(dǎo)致這種不可預(yù)測性危機的問題分為四大類:
系統(tǒng)復(fù)雜性:盡管設(shè)計人員了解各個 IP 內(nèi)核,但他們?nèi)耘c系統(tǒng)復(fù)雜性作斗爭,這來自 IP 內(nèi)核交互的乘法效應(yīng)以及與其操作相關(guān)的信息流。
抽象級別不當(dāng):用于描述功能塊的語言和技術(shù)沒有規(guī)定來描述系統(tǒng)中的這些功能交互以及這些交互如何影響整個系統(tǒng)。
先進的電源管理技術(shù):使用動態(tài)電壓和頻率縮放對傳統(tǒng)設(shè)計方法施加了額外的限制。
工藝可變性:隨著技術(shù)下降到 65 nm 以下,處理工藝可變性是非常不可預(yù)測的,特別是對于傳統(tǒng)技術(shù)。
系統(tǒng)復(fù)雜性
復(fù)雜性看似隱蔽,因為鑒于先進工藝技術(shù)的能力,它似乎是一個容易解決的問題。隨著今天大量可用的晶體管,似乎可以構(gòu)建任何可以想象的東西。那么為什么處理系統(tǒng)復(fù)雜性如此困難呢?原因是,雖然可用晶體管的數(shù)量大致呈線性增長(不考慮利用率),但引入不確定性并因此帶來可預(yù)測性挑戰(zhàn)的系統(tǒng)交互會因乘法效應(yīng)而增長。這種乘法效應(yīng)基于 SoC 設(shè)計中的幾種復(fù)合趨勢。
多處理器
首先,從單處理器系統(tǒng)到多個異構(gòu)和同構(gòu)處理器的轉(zhuǎn)變正在增加系統(tǒng)交互,從而增加了復(fù)雜性。現(xiàn)代 SoC 通常包含一個或兩個以上的處理器。除了編程挑戰(zhàn)之外,協(xié)調(diào)這些多處理器硬件驅(qū)動的活動給設(shè)計人員帶來了困難。設(shè)計團隊必須了解一些問題,包括:
對共享資源的真正需求是什么?
使用這些共享資源的合理目標是什么?
是否有可能讓處理器忙于一組資源限制?
本地高速緩存過多或過少的總體影響是什么?
是否對所有預(yù)期應(yīng)用程序進行了充分建模,以確保它們在所需的處理器和共享資源集合上按預(yù)期運行?
為了了解并隨后預(yù)測更改對共享資源的影響,一些最先進的 SoC 設(shè)計團隊已經(jīng)使用 SystemC 或類似語言構(gòu)建了完整的系統(tǒng)模型。建立和維護這種復(fù)雜程度的投資可能超出了主流 SoC 設(shè)計團隊的能力范圍。即使使用這種方法,預(yù)測底層硬件的實際行為的能力(避免因后期實施意外而導(dǎo)致的昂貴的迭代周期所必需的)也由于這些建模環(huán)境(有限的準確性)而受到限制。
傳統(tǒng)的 SoC 由人類交互時間和低性能數(shù)據(jù)移動驅(qū)動的輸入和輸出發(fā)生了巨大變化。SoC 上的接口數(shù)量、I/O 流量類型以及與系統(tǒng)中其他功能的 I/O 交互變得更加復(fù)雜。
例如,用于聯(lián)網(wǎng)家庭的設(shè)備可能具有無線網(wǎng)絡(luò)、傳統(tǒng)有線網(wǎng)絡(luò)、進出外部存儲的數(shù)據(jù)移動以及同時運行的視頻和音頻輸出服務(wù)。為每種可能的用途提供最大的能力——全速率千兆以太網(wǎng),同時全速率訪問磁盤控制器、無線以太網(wǎng)控制器和 USB 2.0——并非不合理;問題是這些接口將如何與復(fù)雜的處理功能交互?在此示例中,將 I/O 與處理功能相結(jié)合可能涉及 16 個 I/O 流與六個主要處理功能同時運行,所有這些都共享公共 DRAM。這種情況比任何一種交互本身都復(fù)雜 100 倍。
IP復(fù)用
SoC 設(shè)計團隊可以奢侈地為設(shè)計中的所有 IP 使用單一標準接口的日子已經(jīng)一去不復(fù)返了。幾乎所有 SoC 團隊都面臨著解決內(nèi)部開發(fā)的舊 IP、內(nèi)部開發(fā)的新 IP(通常由不同的組或部門)以及可能遵循不同接口標準的外部來源 IP 的互操作性問題的挑戰(zhàn)。
要使 IP 重用策略取得成功,各種標準之間的自動轉(zhuǎn)換至關(guān)重要。實現(xiàn) IP 重用,包括測試套件、制造設(shè)計/良率設(shè)計和可靠性,排除了針對每個系統(tǒng)使用修改 IP。修改 IP(包括接口)會給設(shè)計進度增加太多風(fēng)險。設(shè)計團隊必須保留大部分 IP,而是對系統(tǒng)中的其他 IP 進行調(diào)整,通常在自定義橋接器和總線適配器中。但是,手動執(zhí)行此操作會使過程不可預(yù)測且不可擴展。一旦接口達到大于 1:1 的對應(yīng)關(guān)系,交互復(fù)雜性就會迅速上升。
具有三種類型接口的簡單系統(tǒng)(對于大多數(shù) SoC 團隊來說是典型的)涉及六種轉(zhuǎn)換:三種用于請求,三種用于響應(yīng)。任何界面特征的變化都會將六種轉(zhuǎn)換乘以必須考慮的不同特征的數(shù)量。人為地限制這些特性是不現(xiàn)實的,因為這樣做會導(dǎo)致簡單功能的過度設(shè)計或妨礙復(fù)雜功能的性能。處理這種復(fù)雜性增加了可預(yù)測性的挑戰(zhàn)。
流量和帶寬
復(fù)雜 SoC 中管理的流量的性質(zhì)和數(shù)量也發(fā)生了很大變化。諸如視頻和音頻之類的速率關(guān)鍵流量通常與面向處理器的流量混合在一起,后者往往具有更嚴格的延遲要求并以突發(fā)形式出現(xiàn)。再加上任何實時要求,例如可能對網(wǎng)絡(luò)流量施加的要求(必須在可用時提供千兆以太網(wǎng)以避免丟失數(shù)據(jù))。在相互交互的各種功能中為這些不同的流量類型提供服務(wù)是很困難的。
然后,數(shù)據(jù)量會加劇這種復(fù)雜性。高清視頻需要至少 6 倍標清視頻的帶寬。在真實硬件的環(huán)境中分析這一點非常耗時,例如,運行足夠長時間的模擬以確定一組特定的 IP 功能及其交互是否可以正確管理視頻幀是不切實際的。因此,SoC 設(shè)計團隊專注于他們認為是最壞情況的幾種情況,并希望一切正常。然而,希望在 SoC 設(shè)計中并不是一個可預(yù)測的數(shù)量。
操作模式
幾乎所有 SoC 都以不同的模式運行。這些操作模式通常涉及以獨特方式交互的各種關(guān)鍵 IP 功能。不同模式的數(shù)量增加了分析和確定如何正確操作一組特定交互的復(fù)雜性。
例如,機頂盒 SoC 可能具有媒體提供兩個多媒體流的模式:一個流向顯示和音頻系統(tǒng)進行處理,另一個存儲在磁盤上。這種模式不同于硬盤提供輸出功能的模式,其中一個媒體輸入被放入存儲信息內(nèi)的圖片窗口中。另一種模式可能會在解碼和顯示一個或兩個媒體輸入時從本地磁盤向網(wǎng)絡(luò)端口提供信息。可以很容易地看出,模式的數(shù)量極大地擴展了互操作功能和數(shù)據(jù)流的集合。確保所有這些模式都能正常運行,這使 SoC 設(shè)計團隊面臨的任務(wù)更加復(fù)雜。
這些系統(tǒng)復(fù)雜性問題相互疊加。即使設(shè)計人員需要重復(fù)設(shè)計、實現(xiàn)或驗證的一部分的可能性很小,但在所有這些問題上累積的小百分比使得通過設(shè)計流程中的一個或多個步驟進行多次迭代幾乎是必然的要求。
抽象級別不當(dāng)
SoC 設(shè)計社區(qū)繼續(xù)依賴于為描述由門組成的各個功能而構(gòu)建的語言和工具。這是一個很大的限制,因為這些語言(Verilog 或 C/C++/SystemC)不包含描述 IP 功能所必需的語法、概念和結(jié)構(gòu),以及復(fù)雜 SoC 中的交互。
如前所述,系統(tǒng)是復(fù)雜功能的組合,這些功能以各種方式進行交互,具體取決于所提供的整體功能。為了正確描述和分析系統(tǒng)交互,設(shè)計人員必須有一種方法來描述對正確操作至關(guān)重要的系統(tǒng)級方面。這可能包括重要時間窗口中的帶寬特征、特定操作模式內(nèi)的流量并發(fā)、構(gòu)成操作模式的不同交互以及交互影響彼此的方式。缺乏將這些方面捕獲為可以驗證的需求的方法會導(dǎo)致手動解釋的硬件的低級表示無法按預(yù)期執(zhí)行的可能性很大。
先進的電源管理技術(shù)
在 65 納米及以下部署的復(fù)雜電源管理方法專注于控制工作頻率,同時改變部分 SoC 的電源電壓。雖然這種能力有巨大的好處,但整個部分可能會完全關(guān)閉以消耗“零”功率,并且對系統(tǒng)級設(shè)計的影響提供了額外程度的復(fù)雜性。
這不僅使時鐘分配和管理變得困難,而且還對必須如何控制數(shù)據(jù)移動施加了限制,具體取決于設(shè)備的哪些部分可能正在運行、未運行或以降低的速率運行。除了關(guān)閉之外,可以以兩種不同速率運行的設(shè)備的一部分使系統(tǒng)交互設(shè)計和分析復(fù)雜化了三倍。至少,子系統(tǒng)隔離、時鐘管理、電源關(guān)閉和適當(dāng)?shù)淖酉到y(tǒng)恢復(fù)所需的附加電路使設(shè)備設(shè)計的所有方面都復(fù)雜化。同時,補充操作點增加了系統(tǒng)分析的復(fù)雜性,類似于或與操作模式復(fù)雜性相一致。
過程可變性
隨著工藝技術(shù)繼續(xù)向 65 nm 以下移動,單個設(shè)備操作的可變性會在本地和整個設(shè)備上引入電路功能和性能的不確定性。雖然統(tǒng)計靜態(tài)時序分析和其他技術(shù)有助于分析可變性影響,但它們不能提供減少可變性影響的解決方案。
為了適應(yīng)可變性,額外的余量用于確保電路在面對可變性時能夠正常工作。這種額外的余量會降低性能或功能增益,否則這些增益可能會通過更高級的流程實現(xiàn)。最終結(jié)果是設(shè)計團隊能夠滿足在設(shè)計開始時設(shè)定的目標的保證較少。當(dāng)然,直到設(shè)計后期才知道這一點,這可能會導(dǎo)致設(shè)計流程中某些步驟的迭代成本高昂。
總之,這些問題在當(dāng)前 SoC 設(shè)計中引入的復(fù)雜性將可能的交互和需要考慮的情況的數(shù)量增加了幾個數(shù)量級。這個因素,加上缺乏適當(dāng)?shù)姆椒▉碇付ㄏ到y(tǒng)級交互并在適當(dāng)?shù)某橄蠹墑e對其進行分析,使得設(shè)計 SoC 成為一項非常冒險、不可預(yù)測且因此成本高昂的業(yè)務(wù)。
審核編輯:郭婷
-
電源
+關(guān)注
關(guān)注
185文章
18841瀏覽量
263530 -
處理器
+關(guān)注
關(guān)注
68文章
20255瀏覽量
252274 -
soc
+關(guān)注
關(guān)注
40文章
4576瀏覽量
229142
發(fā)布評論請先 登錄
新思科技全面駕馭AI芯片設(shè)計復(fù)雜性
解析復(fù)合型熱敏電阻如何保護電路
海上風(fēng)機運維貴 40%?預(yù)測性維護系統(tǒng)砍半成本
Leadway電機方案的適用性
詳解芯片制造中的可測性設(shè)計
醫(yī)療PCB供應(yīng)鏈復(fù)雜性與風(fēng)險管控
MES系統(tǒng)怎么實現(xiàn)數(shù)字化閉環(huán)與設(shè)備預(yù)測性維護?
一文讀懂:嵌入式Linux實時性進階
提供半導(dǎo)體工藝可靠性測試-WLR晶圓可靠性測試
AEC-Q102認證之器件可焊性
提早預(yù)見問題:預(yù)測性維護有效降低企業(yè)停機風(fēng)險
邊緣計算網(wǎng)關(guān)的實時監(jiān)控與預(yù)測性維護都有哪些方面?適合哪些行業(yè)使用?
中小企業(yè)預(yù)測性維護三大策略
Chiplet:芯片良率與可靠性的新保障!
Marvell展示2納米芯片3D堆疊技術(shù),應(yīng)對設(shè)計復(fù)雜性挑戰(zhàn)!
復(fù)雜性對SoC設(shè)計成本和可預(yù)測性的復(fù)合影響
評論