【導(dǎo)讀】今天的SoC設(shè)計(jì)變得非常復(fù)雜,包含多種IP單元和處理器,以及軟硬件的集成。因此,設(shè)計(jì)一款芯片以及把它推向市場(chǎng)所需的成本越來(lái)越高。產(chǎn)生這個(gè)現(xiàn)象的主要原因是設(shè)計(jì)方法還沒(méi)改變,大家都還在用JTAG這種有30年歷史的設(shè)計(jì)方法。
現(xiàn)在,數(shù)據(jù)中心和服務(wù)器這些大數(shù)據(jù)的互聯(lián)網(wǎng)公司都在開(kāi)發(fā)自己的芯片去優(yōu)化網(wǎng)絡(luò)。其原因是,根據(jù)調(diào)查,每有100ms延遲就會(huì)使?fàn)I業(yè)收入減少1%。此外,我們也必須考慮符合汽車功能安全,以及網(wǎng)絡(luò)安全,防止黑客攻擊。
Synopsys公司的總裁兼CEO Aart de Geus曾反復(fù)談到系統(tǒng)復(fù)雜性,因?yàn)榻裉斓男酒镉刑嗟膯卧蛙浻布膮f(xié)同。
設(shè)計(jì)開(kāi)發(fā)成本和上市成本越來(lái)越高的原因,是設(shè)計(jì)
工具和設(shè)計(jì)方法都還是很傳統(tǒng),大家都是在單元級(jí)上做開(kāi)發(fā)?,F(xiàn)在每個(gè)單元內(nèi)部都有非常好的成功的工具和方法,但都不是系統(tǒng)級(jí)的解決方案。
UltraSoC是一家總部位于英國(guó)劍橋的小公司,辦公室離徐志摩當(dāng)年戰(zhàn)斗過(guò)的地方很近。他們的IP就是要幫助客戶解決這些芯片設(shè)計(jì)所面臨的最大問(wèn)題。
UltraSoC公司首席執(zhí)行官Rupert Baines日前在媒體溝通會(huì)上告訴記者,UltraSoC的商業(yè)模式和ARM一樣,他們的IP應(yīng)用到Intel、海思、Imagination和Microsemi這些公司的芯片中。
UltraSoC是一家什么樣的公司?為什么能解決芯片設(shè)計(jì)問(wèn)題?
UltraSoC目前還是一家由VC提供資金的公司,共有25名雇員,所有的技術(shù)來(lái)源于大學(xué)。特別是投資陣容很強(qiáng)大,公司的董事長(zhǎng)是加州伯克利大學(xué)分校的一位教授,同時(shí)也是Synopsys和Cadence的聯(lián)合創(chuàng)始人。
UltraSoC幫助客戶解決很多業(yè)務(wù)本質(zhì)的問(wèn)題,包括怎么讓產(chǎn)品更快上市,怎么去優(yōu)化軟硬件的協(xié)同,怎么引入RISC-V等等。
那么,UltraSoC的技術(shù)為什么能解決這些問(wèn)題?他們有一個(gè)庫(kù),這個(gè)庫(kù)大概有30多個(gè)組件。系統(tǒng)設(shè)計(jì)師把這些組件用在SoC設(shè)計(jì)的各個(gè)部分,就能去解決這些問(wèn)題。
“UltraSoC的組件能夠智能地懂得SoC中的各個(gè)單元和軟硬件,包括可以了解ARM、RISC-V和MIPS的軟件,也可以了解硬件,這些組件被叫做互連內(nèi)存控制器。總而言之,UltraSoC可以把SoC的各個(gè)部分放到一個(gè)系統(tǒng)中去,可以全局性地看到SoC設(shè)計(jì)中硬件和軟件的整體狀態(tài)。”Rupert Baines說(shuō)。
下圖是一個(gè)典型的客戶設(shè)計(jì)。這個(gè)手機(jī)處理器中有ARM處理器,也有可以理解ARM軟硬件的組件,同時(shí)也有CEVA的DSP。對(duì)于UltraSoC,他們的軟件也能理解DSP的設(shè)計(jì),同時(shí)也可以作為一個(gè)整體來(lái)進(jìn)行了解。
UltraSoC也有專門針對(duì)硬件的組件,比如針對(duì)總線和芯片互連的組件。同時(shí)它們把所有這些軟硬件分析功能放到一個(gè)整體的分析功能下。
他們的IP可以去解決很多問(wèn)題,比如很常見(jiàn)的一個(gè)問(wèn)題是,在做一個(gè)芯片設(shè)計(jì)的時(shí)候,這個(gè)CPU的確工作,但是速度沒(méi)有其在做產(chǎn)品定義和規(guī)劃的時(shí)候這么快。問(wèn)題出在哪,怎么解決它?UltraSoC就是幫助解決這樣的問(wèn)題。
UltraSoC的系統(tǒng)還可以解決很多系統(tǒng)級(jí)的問(wèn)題。比如系統(tǒng)被掛起或死鎖,是電子系統(tǒng)中很常見(jiàn)的問(wèn)題,每隔一段時(shí)間就會(huì)發(fā)生。“當(dāng)年我在Picochip的時(shí)候(編者注:在加入U(xiǎn)ltraSoC之前,Baines是Picochip的市場(chǎng)營(yíng)銷副總裁。在Picochip被Mindspeed/現(xiàn)并入英特爾收購(gòu)之后,他擔(dān)任Mindspeed的市場(chǎng)營(yíng)銷策略副總裁。),那時(shí)正是TD-SCDMA大發(fā)展的時(shí)候,曾經(jīng)當(dāng)?shù)匾患液献骰锇槊媾R的問(wèn)題是,系統(tǒng)大約每8天就會(huì)死一次機(jī),對(duì)于系統(tǒng)設(shè)計(jì)人員來(lái)說(shuō)是件很頭痛的事情。”Rupert Baines回顧到。
“系統(tǒng)被掛起或死鎖是系統(tǒng)設(shè)計(jì)中一個(gè)非常嚴(yán)峻的挑戰(zhàn)。你去做仿真,剛才說(shuō)的大概每8天死一次機(jī),仿真速度很慢。所以,要做一次仿真,一周接一周地去做,還不一定能找到問(wèn)題,這是個(gè)很麻煩的挑戰(zhàn)。而對(duì)于UltraSoC來(lái)說(shuō),去解決這樣的問(wèn)題非常方便、非???,從而給設(shè)計(jì)人員帶來(lái)很大的方便。”他補(bǔ)充說(shuō)。
下圖列的是UltraSoC片上分析IP的好處。由于其IP是一直處在芯片內(nèi)部的,所以既可以用在實(shí)驗(yàn)室做產(chǎn)品研發(fā)的調(diào)試工作,也可以在產(chǎn)品應(yīng)用現(xiàn)場(chǎng),在不同的應(yīng)用場(chǎng)景下去了解和優(yōu)化芯片設(shè)計(jì)。
另外對(duì)于網(wǎng)絡(luò)安全標(biāo)準(zhǔn)(防止黑客入侵)其汽車ISO26262標(biāo)準(zhǔn),UltraSoC也都提供支持。他們的IP可以觀察芯片是否正常工作。UltraSoC的IP面積很小,只需要不到1%的裸片面積,就可以大大提高性能,同時(shí)減少bug,還可以降低功耗。按照一項(xiàng)研究,它同時(shí)也可以加速產(chǎn)品上市,利潤(rùn)率可以達(dá)到2.3倍。
UltraSoC提供怎樣的解決方案?
UltraSoC的IP包括3個(gè)層面上的解決方案。第一層是大約30種的分析模塊,其功能是能夠理解芯片SoC的不同部分,比如ARM、RISC-V和CEVA的軟件,以及總線、系統(tǒng)互連的狀態(tài)。它們的優(yōu)點(diǎn)是本地化的智能。所有這些模塊都是在本地化工作,就在相關(guān)單元的旁邊以系統(tǒng)級(jí)的速度來(lái)工作,同時(shí)不是侵入性的,在系統(tǒng)內(nèi)不可見(jiàn),不會(huì)影響任何系統(tǒng)的性能。
第二層是互連,它的各個(gè)模塊通過(guò)網(wǎng)絡(luò)進(jìn)行溝通,并可以被動(dòng)態(tài)重新配置。用戶可以設(shè)置if-then關(guān)系,進(jìn)行交叉觸發(fā)。因此,如果處理器有問(wèn)題發(fā)生,就可以終止活動(dòng);如果總線上出現(xiàn)某個(gè)模式,用戶就可以查看處理器當(dāng)時(shí)的狀態(tài)。如前所述,模塊之間的相互依賴關(guān)系是芯片設(shè)計(jì)的一個(gè)問(wèn)題。
最后一部分是他們的連接通信器。這些IP單元和外部世界需要連接到一起,這些通信器可以用芯片設(shè)計(jì)中非常標(biāo)準(zhǔn)的JTAG接口來(lái)做連接,也可以用常用的以太網(wǎng)、PCIe、USB接口把芯片內(nèi)部的分析IP和外部環(huán)境連接到一起。
另外,UltraSoC還有片上工作的模式。比如一個(gè)芯片已經(jīng)發(fā)貨了,這些IP不再需要跟設(shè)計(jì)師做溝通,它們也可以幫助芯片去優(yōu)化性能和功能。
UltraSoC提供所有軟硬件的全面可視化操作系統(tǒng),下圖是UltraSoC的典型操作界面。中間是軟件跟蹤顯示,綠色加亮部分是處理器代碼的一個(gè)斷點(diǎn)。右邊顯示的是硬件。當(dāng)斷點(diǎn)出現(xiàn)的時(shí)候,總線上當(dāng)時(shí)正在做什么操作,有什么信息的溝通?相應(yīng)的硬件行為也可以看到。右邊是統(tǒng)計(jì)數(shù)字,包括內(nèi)部架構(gòu)上的延遲。
如果是軟件開(kāi)發(fā)工具,很多公司都有,而能夠同時(shí)提供軟硬件和相關(guān)統(tǒng)計(jì)數(shù)據(jù)的公司,目前只有UltraSoC。
最左邊是模塊的工作情況。中間是處理器的工作情況,可以支持UltraSoC的IP,目前來(lái)看可以支持客戶開(kāi)發(fā)最多的數(shù)量是256個(gè)核,另外還有客戶正在開(kāi)發(fā)最多4000個(gè)核的芯片。
在絕大多數(shù)SoC芯片或電子系統(tǒng)中,從右上角的統(tǒng)計(jì)數(shù)據(jù)來(lái)看,系統(tǒng)工作都是一開(kāi)始性能慢慢提升,到了一個(gè)高點(diǎn)后,系統(tǒng)性能下降,有可能是你的內(nèi)存出現(xiàn)泄漏,或者總線出現(xiàn)擁堵,或者其它的一些原因。UltraSoC就是幫助你分析和找出具體的是哪些原因。
現(xiàn)在我們看到的是更多的案例,有一個(gè)非常常見(jiàn)的問(wèn)題,就是UltraSoC的緩存問(wèn)題,這個(gè)時(shí)候大家的CPU設(shè)計(jì)并沒(méi)有問(wèn)題,這是一個(gè)軟件的問(wèn)題。你需要去找相關(guān)的軟件問(wèn)題,如果用它們的工具可以很方便的解決這一類的問(wèn)題,緩存的優(yōu)化可以使CPU的性能提升20%。
后面兩種情況是存儲(chǔ)器、控制器的問(wèn)題。這是芯片中非常復(fù)雜的設(shè)計(jì),需要很優(yōu)化的設(shè)計(jì)。在高速存儲(chǔ)數(shù)據(jù)中,存儲(chǔ)器、控制器有可能成為數(shù)據(jù)存取的瓶頸。比如左邊的存儲(chǔ)器的情況,是系統(tǒng)的存儲(chǔ)不平衡;右邊是存儲(chǔ)的流量峰值的波動(dòng)和突發(fā),用UltraSoC就可以很方便的幫助設(shè)計(jì)人員發(fā)現(xiàn)這些問(wèn)題。左下角的案例,如果不用UltraSoC就基本不可能去發(fā)現(xiàn)這些問(wèn)題,但是在系統(tǒng)實(shí)時(shí)工作的情況下,出現(xiàn)一個(gè)小小的問(wèn)題讓Modem崩潰了,用別的工具很難發(fā)現(xiàn),而用UltraSoC就很容易找到這個(gè)原因。
UltraSoC也可以在實(shí)驗(yàn)室作為工程開(kāi)發(fā)工具來(lái)使用,即在芯片流片后拿到樣片,在商業(yè)發(fā)布之前可以在實(shí)驗(yàn)室作為工程開(kāi)發(fā)工具來(lái)使用。同時(shí)UltraSoC在產(chǎn)品生命周期都能用,比如有一家很大的客戶(high-profile, sexy and secret,大家自己去猜)用UltraSoC的片上分析 IP。這家客戶的芯片,在汽車在駕駛的時(shí)候會(huì)不斷監(jiān)測(cè)芯片的狀態(tài),這是可以滿足ISO26262標(biāo)準(zhǔn)的IP,這個(gè)標(biāo)準(zhǔn)在汽車領(lǐng)域是非常難通過(guò)的,也是非常重要。
另外一個(gè)跟安全性(safety)一樣重要的是網(wǎng)絡(luò)安全(cyber security)。UltraSoC的IP是從硬件層面對(duì)芯片狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控,可以發(fā)現(xiàn)任何工作不正常的地方。“因此,我們可以發(fā)現(xiàn)DDoS攻擊,即使CPU無(wú)法工作(忙),也能發(fā)出警報(bào)。”這是因?yàn)閁ltraSoC的IP是在硬件中,是操作系統(tǒng)所看不見(jiàn)的,所以攻擊者不可能阻止或干擾這種監(jiān)控。不像其它的軟件層信息防范工具,黑客進(jìn)攻是可以去停止或欺騙看得見(jiàn)的防范工具。
當(dāng)筆者問(wèn)到,UltraSoC IP在現(xiàn)場(chǎng)使用,如果CPU遭受DDoS攻擊,它都已經(jīng)無(wú)法響應(yīng)了,又怎么去解決問(wèn)題?Baines解釋到:“網(wǎng)絡(luò)安全通常涉及到很多層,非常復(fù)雜?,F(xiàn)在,我們的客戶在使用我們的方案時(shí)是用的2個(gè)CPU:一個(gè)是系統(tǒng)CPU,它運(yùn)行主程序,暴露在外部世界中;一個(gè)是監(jiān)控CPU(supervisor),獨(dú)立于前者,攻擊者訪問(wèn)不到。若有攻擊發(fā)生,監(jiān)控CPU將對(duì)系統(tǒng)復(fù)位,并通過(guò)一個(gè)分離的鏈路發(fā)送警報(bào)。”
互聯(lián)網(wǎng)公司為什么要開(kāi)發(fā)自己的服務(wù)器芯片?
對(duì)于UltraSoC最大的市場(chǎng)是數(shù)據(jù)中心和服務(wù)器。其原因是,這些數(shù)據(jù)大的互聯(lián)網(wǎng)公司都在開(kāi)發(fā)自己的芯片去優(yōu)化網(wǎng)絡(luò)。比如美國(guó)的亞馬遜、微軟、Facebook,中國(guó)的百度、阿里巴巴、騰訊都在做自己的芯片。華為海思、高通這些公司也都在做服務(wù)器和數(shù)據(jù)中心用芯片。
為什么它們要自己開(kāi)發(fā)芯片?因?yàn)橄癜⒗锇桶瓦@樣龐大的營(yíng)業(yè)收入,他們要確保自己的服務(wù)器工作很流暢。亞馬遜有一個(gè)研究,100ms的延遲會(huì)使?fàn)I業(yè)收入減少1%,對(duì)于亞馬遜這么的收入來(lái)說(shuō),1%的收入會(huì)是很大的損失。所以這些互聯(lián)網(wǎng)公司都在努力讓系統(tǒng)工作得很流暢、很正常。(有興趣者可以到UltraSoC的網(wǎng)站去看一下,有一篇白皮書(shū)很全面介紹了互聯(lián)網(wǎng)和服務(wù)器IP之間的關(guān)系。這份谷歌和微軟做的調(diào)查,很詳細(xì)介紹了延遲帶來(lái)的損失。)
總結(jié)來(lái)說(shuō),UltraSoC的IP在客戶的SoC里不斷地對(duì)芯片進(jìn)行分析并收集相關(guān)數(shù)據(jù)。這些數(shù)據(jù)可以被設(shè)計(jì)人員用在不同的地方,比如在開(kāi)發(fā)階段縮短上市時(shí)間,可以去創(chuàng)建更好的產(chǎn)品。除了剛才說(shuō)的開(kāi)發(fā)階段用的數(shù)據(jù)外,還有非常有價(jià)值的信息,可以用在更多的地方,讓芯片可以工作得更好、更可靠,并有更少的問(wèn)題。而且你也可以在產(chǎn)品的整個(gè)生命周期上去使用它們的IP,比如用于ISO26262功能安全以及網(wǎng)絡(luò)安全方面,可以監(jiān)控芯片,防止惡意攻擊。
UltraSoC在RISC-V的整個(gè)生態(tài)里做出了很大貢獻(xiàn)并且也很成功。RISC-V類似于Linux,是一個(gè)開(kāi)源的CPU,當(dāng)然包括商品化的CPU設(shè)計(jì)(類似紅帽Linux)。所以在CPU設(shè)計(jì)領(lǐng)域,用戶可以下載RISC-V的源程序自己做處理器設(shè)計(jì),也可以買SiFive等公司的授權(quán)來(lái)做設(shè)計(jì)。
RISC-V對(duì)中國(guó)市場(chǎng)非常重要,許多中國(guó)公司都在關(guān)注和投入RISC-V的芯片,希望芯片設(shè)計(jì)能夠有更多的本地化。除了很多大客戶,中國(guó)還有很多半導(dǎo)體初創(chuàng)企業(yè),比如很多一些中國(guó)的新創(chuàng)公司去開(kāi)發(fā)很先進(jìn)的應(yīng)用。
UltraSoC是業(yè)內(nèi)唯一一家為RISC-V提供商品化開(kāi)發(fā)環(huán)境的公司,包括監(jiān)測(cè)、追蹤、調(diào)試CPU的運(yùn)行,也可以用在完全開(kāi)源的領(lǐng)域。他們也跟一些做RISC-V IP設(shè)計(jì)的公司有合作。因?yàn)樗麄兊漠a(chǎn)品提供開(kāi)發(fā)環(huán)境,有兩個(gè)層面,如果你完全從開(kāi)源的做起,他們支持運(yùn)行控制,追蹤和調(diào)試。也可以去,這里是全球最領(lǐng)先的幾家做智能駕駛、做RISC-V內(nèi)核開(kāi)發(fā)的公司。
最后,Microsemi最近也購(gòu)買了UltraSoC的通用分析與嵌入式智能平臺(tái)授權(quán),用于其基于RISC-V開(kāi)源處理器架構(gòu)的產(chǎn)品開(kāi)發(fā)。
本文轉(zhuǎn)載自電子技術(shù)設(shè)計(jì)。
推薦閱讀: