- Advertisement -
首頁 市場話題 客製化CPU竄起 設計驗證需求重新回溫

客製化CPU竄起 設計驗證需求重新回溫

- Advertisement -

在RISC-V指令集架構(ISA)的帶動下,處理器客製化的風潮有復甦的跡象,但由於過去十多年來,Arm架構已經在嵌入式處理器市場取得絕對主流的地位,目前CPU設計驗證工具幾乎都是針對Arm架構設計,熟悉CPU驗證工作的第一線工程師,很多也只熟悉Arm架構。如何驗證不是Arm架構的CPU設計,變成一門越來越少人熟悉的技藝。

但需求總會創造供給,在RISC-V的聲勢看漲之際,其生態系統也在快速茁壯。許多EDA業者已經成為RISC-V社群的一員,試圖填補這個空白,並掌握相關商機。

CPU設計驗證沒有標準答案

天底下幾乎找不到沒Bug的CPU設計,特別是通用型CPU,因為在CPU上執行的軟體或應用程式太過多樣化,設計驗證工程師幾乎不可能用窮舉法把CPU會遇到的各種可能狀況都模擬一遍,抓出設計上的Bug,因此通用型CPU的設計驗證,不僅是技術問題,同時也是風險管理問題。因為資源有限,驗證團隊往往只能捉大放小,把不可接受、高風險的重大Bug抓出來修正。然而,漏網之魚總是存在,本以為無關痛癢的小Bug,也可能導致災難性後果。所以,設計驗證要做到什麼程度,驗證項目要如何規畫,不只是技術問題,也考驗團隊的風險評估能力。

主流CPU的架構變得日益複雜,也讓CPU設計驗證變得更困難。英特爾(Intel)出身的SiFive總裁暨執行長Naveed Sherwani就表示,如果要對當代的主流處理器進行設計驗證,一定要有龐大的團隊,而且團隊成員必須是有三到五年以上設計經驗的資深工程師,否則很難做好這項工作。相較之下,從教育需求中誕生的RISC-V,因為其架構相對單純很多,所以CPU的設計驗證也比較容易進行。如果是學生專案作業的水準,一個學習RISC-V架構大約半年左右的大學生,就有能力為自己設計的RISC-V核心進行驗證。

當然,學生作業是一回事,商用等級的CPU還是要用更嚴謹的態度來面對。SiFive的研發團隊擁有15年以上的SoC設計經驗,並且對RISC-V有非常深入的研究跟知識,所以能獲得大量知名客戶的信任跟委託,為其實現RISC-V核心的設計跟SoC整合。統計數據會說話,在2020年上半,SiFive設計定案的SoC創下了不良率為0的傲人成績,遠優於公司創立以來的平均值25DPPM,以及業界平均值100~200DPPM。

EDA工具商擴大接觸RISC-V社群

除了公司研發團隊本身的實力之外,EDA工具的支援逐漸到位,也是RISC-V品質提升一個很重要的原因。由於RISC-V的使用族群跟開發者越來越多,許多EDA公司,如新思(Synopsys)、益華(Cadence)與明導(Mentor),都開始對RISC-V提供更多支援。據了解,晶心科技所使用的設計驗證工具,大多都來自明導,但益華近來也很積極地與RISC-V社群有所接觸。

一般來說,要為客製化CPU進行設計驗證,需要用到指令集模擬器(ISS)、RTL模擬器,以及基於FPGA的硬體模擬系統(Emulator)與原型(Prototyping)建構系統這四種工具。在Arm全面主導嵌入式處理器市場的年代,很多EDA業者對指令集模擬器的布局都慢慢淡化,因為Arm的指令集是標準化的,沒有客製化空間,因此指令集模擬器變成無用武之地的技術。至於FPGA Emulator跟Prototype系統,則因為客戶希望壓縮產品開發時程,要用更快的速度完成硬體除錯,並導入軟硬體同步開發的作業流程,還有一定的需求存在。

Cadence資深產品行銷經理Zaid Rodriguez解釋,在IC設計的作業流程中,有兩個環節會涉及到FPGA,一個是設計模擬,另一個則是原型建構。雖然這兩個步驟都會用到FPGA,但使用的目的不同。

設計模擬是設計驗證的一個階段,IC設計工程師將晶片設計的原始碼移植到FPGA上,主要目的是為了進行除錯,晶片的運作效能則不是重點。因此,對模擬工具來說,重點在於提供完善的移植跟除錯工具,讓工程師可以快速地把RTL碼轉換成可以移植到FPGA上的格式,展開硬體除錯作業。

至於原型建構,主要目的則是為了爭取時效,讓韌體/軟體開發工程師可以在還沒有拿到ASIC、SoC的工程樣本時,就開始為晶片撰寫軟體。是故,原型建構工具的使用者,除了同樣需要快速將設計移植到FPGA上之外,對晶片的效能要求會比模擬來得高很多,還需有完整的軟體除錯工具,以及基本的硬體除錯。理論上,當IC設計進行到原型建構這個階段時,硬體本身應該已經沒有太多Bug,但實務上還是難免會遇到有漏網之魚的情況。

但在RISC-V興起與Arm有限度地開放自訂義指令集之後,EDA工具業者應該會加快腳步,填補這些年客製化CPU需求不足,導至CPU驗證工具出現缺口的情況。

可控軟體環境減輕驗證負擔 
然人才需求依然急迫

換個角度來看,CPU的設計驗證之所以困難,跟設計團隊無法預知CPU上將執行什麼軟體有關。但如果設計團隊在開發CPU時,就已經知道在該CPU會執行什麼軟體,情況將大不相同。這正是RISC-V目前的實際應用狀況。

目前大多數的RISC-V應用,都屬於深度嵌入(Deeply Embedded)應用,亦即CPU上不會(或鮮少)執行第三方軟體,而是IC供應商自己開發的軟體或韌體,例如NVIDIA GPU內嵌的Falcon處理器、三星(Samsung)的5G毫米波射頻前端模組,就是典型案例。這使CPU開發團隊面對的是一個「可控」或「可預期」的軟體環境,因此在進行設計驗證的時候,究竟要把哪些項目納入驗證範圍,變得相對明確,進而讓設計團隊有機會窮盡各種可能出現的情況,徹底抓出所有可能存在於CPU設計中的Bug。

但即便如此,要驗證一款客製化CPU,還是一項相當吃重的工作,導致相關人才在客製化CPU蔚為話題的今天,變得非常搶手。例如蘋果(Apple)就持續在台灣開出CPU驗證工程師的職缺,晶心也有相關人才需求。加上EDA產業急於填補過去十多年淡出市場所留下的空白,可以想見的是,擁有CPU設計驗證知識的專業人才,在人力市場上,將變得奇貨可居。

相關文章

- Advertisement -
- Advertisement -

最新文章

- Advertisement -

熱門文章

- Advertisement -

編輯推薦

- Advertisement -