定義已更改,因此將影響設(shè)計過程。
在最新的周期性發(fā)展熱潮的刺激下,半導(dǎo)體行業(yè)進(jìn)入了定制處理器的新黃金時代,但是這次“定制處理器”意味著不同的東西。
上一個時代,每家主要的半導(dǎo)體公司都擁有內(nèi)部處理器:SuperH,PowerPC,V800,Alpha,MEP,Trimedia等,其中一些在特定領(lǐng)域比其他領(lǐng)域更加專業(yè)。但是,行業(yè)整合和維護(hù)專有架構(gòu)的巨額花費導(dǎo)致其中的許多都逐漸消失,整個行業(yè)進(jìn)入了“標(biāo)準(zhǔn)架構(gòu)”的漫長時期,而定制處理器填補了諸如音頻處理等應(yīng)用領(lǐng)域的空白。
“在過去的幾年中,出現(xiàn)了用于圖像處理、無線基帶、LiDAR、圖形和神經(jīng)網(wǎng)絡(luò)的領(lǐng)域?qū)S脙?nèi)核,” Codasip營銷副總裁Chris Jones說。
這樣,定制處理器已發(fā)展為意味著針對特定任務(wù)類別進(jìn)行了優(yōu)化的處理器。微體系結(jié)構(gòu)和指令集由最終將運行的軟件來確定。如今,對可實現(xiàn)標(biāo)準(zhǔn)ISA專有指令擴展的定制工具的需求很高。
Jones說:“對于設(shè)計團隊來說,這是一種高效而低風(fēng)險的方式,以實現(xiàn)他們的‘秘密配方’?!贝送?,設(shè)計過程現(xiàn)在比以往任何時候都更關(guān)注軟件,這對建模和性能分析工具提出了要求,以簡化自定義體系結(jié)構(gòu)。RISC-V運動為定制化在背后做出了巨大貢獻(xiàn),因為其模塊化架構(gòu)為非標(biāo)準(zhǔn)擴展提供了空間,專有軟件IP技術(shù)可以嵌入在定制指令中,而不會犧牲行業(yè)標(biāo)準(zhǔn)ISA和隨附生態(tài)系統(tǒng)的優(yōu)勢。”
定制處理器曾經(jīng)是指從頭開始設(shè)計的CPU,但是其定義是隨著時間而發(fā)展和擴展的。
“用戶可配置IP的可用性意味著設(shè)計人員可以選擇最適合其目標(biāo)應(yīng)用的總線和寄存器寬度,緩存大小,流水線級數(shù)和其他處理器功能,” OneSpin解決方案產(chǎn)品設(shè)計驗證的專家Nicolae Tusinschi說?!半m然最終的處理器可能不被認(rèn)為是定制的,但大量可能的配置意味著所選的特定功能集可能在所有用戶中都是唯一的。如果處理器IP以RTL形式交付或生成,并且如果許可協(xié)議允許,則用戶可以將設(shè)計更改為真正定制的程度?!?/p>
他同意RISC-V ISA進(jìn)一步擴展了自定義處理器的概念,因為其指令集體系結(jié)構(gòu)定義了不同的數(shù)據(jù)寬度和可選指令的多種類別,包括特權(quán)模式擴展和變體。這些功能的任何選擇均被視為符合ISA。
“由于RISC-V是一種不依賴于單個供應(yīng)商的開放式體系結(jié)構(gòu),因此用戶可以從多個IP供應(yīng)商甚至從開源資源庫中選擇許多不同的處理器。從簡單的控制器到具有亂序執(zhí)行、多級緩存和其他高級功能的并行處理系統(tǒng),RISC-V被明確定義為可以在各種微體系結(jié)構(gòu)上實施?!?Tusinschi說。
Tusinschi說,RISC-V ISA還可以添加用戶定義的擴展,例如新指令,從而為設(shè)計開發(fā)適合最終應(yīng)用的處理器提供了更大的靈活性?!耙虼?,許多RISC-V處理器是真正的定制產(chǎn)品,具有定制的功能選擇,定制的微體系結(jié)構(gòu)和定制的擴展,同時仍符合ISA。這個更復(fù)雜的設(shè)計過程對驗證具有重要意義。僅僅遵守是不夠的。任何RISC-V驗證解決方案都必須處理可選功能,驗證包括微體系結(jié)構(gòu)在內(nèi)的完整設(shè)計,并且足夠靈活以包含用戶擴展。”
同時,消費者、工業(yè)和汽車產(chǎn)品對高性能計算的需求也在不斷增長,以提供創(chuàng)新的“哇”的體驗。
“功率和熱約束推動了除高性能之外對高功率效率(每瓦性能)的需求。” Cadence的Tensilica IP產(chǎn)品管理、市場營銷和業(yè)務(wù)開發(fā)高級總監(jiān)Lazaar Louis指出,“定制處理器有助于滿足這些需求。”
例如,消費者視頻通話產(chǎn)品需要幾個特定領(lǐng)域的處理器,包括音頻、圖像和AI處理,才能提供引人入勝的體驗。同樣,自動駕駛汽車需要信號處理器來預(yù)處理攝像頭、雷達(dá)、激光雷達(dá)和超聲傳感器數(shù)據(jù)。下一步是感知車輛的周圍環(huán)境,包括行人和其他車輛的位置。Louis解釋說,下一步是決策,以估算路徑規(guī)劃和駕駛員協(xié)助。
圖1:自動駕駛汽車處理器。來源:Cadence
過去,許多定制處理器都使用專有指令集。這種方法的缺點是限制了這些處理器的用途。好處是,工具集和體系結(jié)構(gòu)更改由供應(yīng)商維護(hù),他們對確保其可靠和安全有既得利益。由加州大學(xué)伯克利分校的一個小組開發(fā)的RISC-V允許根據(jù)需要擴展開放式指令集。
“定制處理器的主要問題是對定制指令以及基本核心集的驗證,以確保任何定制都不會改變整體功能,” Breker Verification Systems的副總裁兼首席營銷官Dave Kelf說?!岸ㄖ铺幚砥?a target="_blank">公司經(jīng)常為用戶執(zhí)行此驗證過程。RISC-V將需要類似的驗證機制,并且在處理器周圍如雨后春筍般涌現(xiàn)的開源社區(qū)很可能提供了這一點。一個驗證平臺可以自動測試處理器周圍的子系統(tǒng),并且其模塊化程度足以添加必要的指令,從而可以對處理器以及定制指令進(jìn)行全面測試。這樣的系統(tǒng)將大大增加RISC-V擴展的成功?!?/p>
定制化的計算尺
可以肯定的是,人們對定制處理器的理解存在差異,特別是在定制級別的方面。有這么多的選項和用例,定制似乎遵循著按比例擴大的趨勢。如果沒有這些工具,開發(fā)就會變得很復(fù)雜。
Synopsys和其他公司提供了一種工具,使工程團隊可以設(shè)計定制的專有專用處理器。“使用該工具,你可以指定處理器,然后從中生成RTL,軟件開發(fā)套件(至關(guān)重要的的一環(huán)),指令集模擬器,編譯器和調(diào)試器以及整個GUI基礎(chǔ)結(jié)構(gòu),” Synopsys的ASIP工具產(chǎn)品營銷經(jīng)理Markus Willems說。
這些工具具有廣泛的適用性,Willens說?!拔覀兛吹礁鞣N各樣的客戶提出了各種關(guān)于定制他們想做什么的想法。它的范圍從更改給定的ISA和微體系結(jié)構(gòu)的特殊性到下一個級別,在該級別上,給定指令集體系結(jié)構(gòu)得到擴展以添加特殊指令。這總是從給定的ISA作為起點開始,一直到構(gòu)建非常定制的東西,這是一個經(jīng)過很好調(diào)整的ISA,從外部可以看作是RTL的一部分或?qū)S霉δ堋_@可以在普通的固定RTL實現(xiàn)中完成,但是在這里你想用更具可編程性的實體替換狀態(tài)機,以保持一定的靈活性并降低狀態(tài)機的復(fù)雜性。有各種各樣的定制正在發(fā)生?!?/p>
反過來,這也說明了系統(tǒng)架構(gòu)師今天在尋求最佳設(shè)計的道路上必須進(jìn)行的權(quán)衡取舍。Willems越來越多地看到那些架構(gòu)師在如何進(jìn)行權(quán)衡方面取得了清晰的結(jié)果。這種做法已經(jīng)由來已久。
“在上世紀(jì)90年代的處理器設(shè)計歷史中,我們幾乎沒有看到這種創(chuàng)新,至少在指令集本身方面沒有創(chuàng)新,因為在那里僅僅能依靠[制造]流程來進(jìn)行改進(jìn)?!?Willems說,“轉(zhuǎn)到下一個節(jié)點,你將獲得2倍、3倍,并且無需做太多工作即可獲得更高的頻率。但這沒什么用,我們進(jìn)入了多核設(shè)計,起初是異構(gòu)的,因此你只需做多個相同的事情即可。但這導(dǎo)致了一定的飽和度?,F(xiàn)在,我們顯然看到了將多核體系結(jié)構(gòu)調(diào)整為更多專用內(nèi)核的更加專業(yè)化的時代?!?/p>
芯片制造商通常對如何將算法切成什么樣并分別使用何種專用處理器有很好的理解。他們知道哪些組件需要更高的性能,哪些組件必須專門用于滿足特定的吞吐量要求,以及哪些組件最耗電。但是隨之而來的挑戰(zhàn)是弄清楚應(yīng)該將算法的哪些部分以及應(yīng)用程序的哪些部分映射到與之相應(yīng)的事物上。這會影響時序、吞吐量和功耗,這是EDA在幫助工程師在短時間內(nèi)探索各種體系結(jié)構(gòu)(尤其是在C語言可編程級別)的巨大機會。
“沒有人敢說,‘我想為一系列專用處理器做匯編編碼,然后發(fā)現(xiàn)我選錯了處理器。” Willems說到,“各種高級編程語言也是我們在定制處理器中關(guān)心的關(guān)鍵要素,你可以在Cuda圖形處理以及神經(jīng)網(wǎng)絡(luò)處理器中看到這一點,其中編程語言實質(zhì)上就是你所需要的一個形象的切入點。但是對于大多數(shù)人來說,仍然是C和C ++?!?/p>
高度抽象的工作有助于理解性能,因此擁有準(zhǔn)確的處理器模型并在該處理器上運行關(guān)鍵內(nèi)核至關(guān)重要。但是在微體系結(jié)構(gòu)級別還有更多的優(yōu)化可能。
內(nèi)存設(shè)計增加了其他整個優(yōu)化級別?!巴ǔ?,它不是處理器本身,” Willems說。它可以輸入和輸出數(shù)據(jù),并確保數(shù)據(jù)可以及時供不同的處理器使用。不同內(nèi)存架構(gòu)和處理器的I / O接口之間的權(quán)衡是定制處理器設(shè)計的關(guān)鍵要素?!?/p>
定制處理器的設(shè)計挑戰(zhàn)
任何處理器設(shè)計中的關(guān)鍵指標(biāo)都涉及功耗-每次操作每瓦/毫瓦的性能。
“通常情況下,數(shù)字運算很困難,因此你必須分析所有傳感器數(shù)據(jù),并且將信號處理與決策結(jié)合在一起,需要在這些邊緣設(shè)備上進(jìn)行很多工作?!?Willems說“為這種與硬件鏈接的處理器設(shè)計編譯器,和設(shè)計仿真器是一項需要完全不同技能的任務(wù)。你需要將這些技能組合在一起。必須對團隊進(jìn)行相應(yīng)的組織,以便擁有正確的專業(yè)知識。如果你有硬件背景,現(xiàn)在決定要更加專注于定制處理器,那就意味著不能從IP供應(yīng)商處購買。你開始對內(nèi)部進(jìn)行設(shè)計,而軟件開發(fā)套件的主題就是這一舉措的障礙。
在定制處理器的發(fā)展中,為了使跨越整個半導(dǎo)體生態(tài)系統(tǒng)的工程團隊能夠?qū)崿F(xiàn)其目標(biāo),成功歸結(jié)于ISA、工具、團隊和權(quán)衡的進(jìn)步。這種勢頭已經(jīng)轉(zhuǎn)向從可執(zhí)行格式中獲取創(chuàng)意,創(chuàng)建早期仿真模型以及執(zhí)行基于概要的分析,而不是過時的電子表格方法。
但是隨著AI和機器學(xué)習(xí)的激增,專用處理元素的機會在不斷增長。
“你看到的架構(gòu)越多,受到啟發(fā)的人就越多,” Willems說。“整個市場僅憑人們使用更專業(yè)的處理器在市場上取得成功就觸發(fā)了自身的發(fā)展?!?/p>
-
處理器
+關(guān)注
關(guān)注
68文章
19048瀏覽量
228540 -
C語言
+關(guān)注
關(guān)注
180文章
7581瀏覽量
135633 -
AI
+關(guān)注
關(guān)注
87文章
29438瀏覽量
267758
原文標(biāo)題:什么是定制化處理器?
文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論