在本次的CES 2018上,地平線攜帶了2款人工智能專用芯片驚艷亮相,推出基于Intel FPGA的自動駕駛系統原型。記者對地平線創始人兼CEO余凱進行了采訪,了解一下地平線研發芯片的經驗和未來的發展。
CES 2018是這家成立兩年半的公司第二次參加CES。上屆CES,地平線與Intel合作推出基于Arria FPGA的ADAS原型。因為原型所展現出的高性能、低功耗以及團隊敏捷的開發效率,這年地平線獲得了Intel Capital領投的上億美金的A+輪融資。
而后今年的拉斯維加斯,地平線在第二代BPU架構的基礎上再次推出基于Intel FPGA的自動駕駛系統原型。更重要的是,他們還帶來了數月前流片成功的2款人工智能專用芯片。
征程1.0處理器
本屆CES開始前,記者再次采訪了地平線創始人兼CEO余凱,請他聊一聊過去2年地平線研發芯片的經驗,以及芯片發布之后應用和落地的思考。
打造嵌入式人工智能專用處理器
在剛剛過去的12月,地平線于北京召開盛大的發布會,對外展示的正是2款嵌入式人工智能專用處理器:面向智能駕駛應用的征程1.0和面向攝像頭應用的旭日1.0。兩款處理器均是基于地平線的第一代BPU架構——高斯架構。關鍵性能指標分別是:可實時處理1080P@30的視頻,每幀中可同時對200個目標進行檢測、跟蹤、識別,典型功耗1.5W,每幀延時小于30ms。
對外,地平線早在一年多前就公布了3代BPU架構設計的路線圖:高斯架構 - 伯努利架構 - 貝葉斯架構。三代架構,性能與功耗比依次提升,工藝也從40nm演進到16nm。在內部,自2015年10月招募第一位芯片工程師開始,地平線今天組建了一支60人左右的專業芯片團隊。
針對地平線芯片的發布,國內人工智能領域泰斗張鈸院士的評價是,用算法和軟件來定義硬件,專門面向深度學習算法的硬件極大地提高了計算效率,這為硬件的發展提供了新思路。而對地平線來說,這也恰恰是2款芯片研發的難點,需要團隊同時具備軟件算法和硬件兩個領域的經驗思考。
按照原定的研發規劃,地平線會在去年的5月份進行芯片的流片。余凱當時正在底特律出差,5月的深夜他與芯片團隊溝通,決定推遲流片排期。
余凱向我們解釋:一般來講,在對芯片硬件開始設計前,芯片的整個軟件架構需要完全確定。但實際上,針對深度學習優化的人工智能專用芯片很少有人做過,在研發的過程中算法和軟件團隊會修改甚至推翻一些小的決策點,于是這對于硬件團隊來說造成了非常大的挑戰,導致在原定的芯片排期內仿真做得不夠。好在推遲排期后,他們又與臺積電積極協調,爭取一個月內重新安排了流片。
地平線給自己設計的定位是具有自主芯片IP,提供完整開放嵌入式人工智能解決方案的供應商,而這兩年,地平線主要的業務領域是自動駕駛和IoT。如何面向自動駕駛和廣泛的IoT領域提供一個通用的優化過的計算架構,使得芯片開發有很高的效率,同時針對垂直應用場景又有很好的效果,這可能是芯片研發的第二個難點。
這也是為什么這次發布的2款處理器都是視覺處理器。2款處理器都是基于高斯架構,但針對不同的應用場景做了不同的封裝。同樣團隊配置上,地平線在60來人的芯片團隊之外,建立了一個100 - 200人之間的應用開發團隊,負責自動駕駛和IoT兩個方向。
自動駕駛的落地與產品化
2016年,地平線向博世授權了一份與ADAS相關的軟件,這也是公司當年一項重要的業務。而隨著高斯架構的確立,地平線先后在GPU、ARM、FPGA等多個平臺上實現了基于自主IP架構的解決方案。比如CES 2017上,地平線采用Intel FPGA搭建基于高斯架構的ADAS系統,并就這個系統在與一部分的車企和供應商開展合作,正在功能驗證的階段。
眼下,征程1.0是一顆工業級的芯片,余凱說團隊希望在未來1年之內推出車規級的芯片。同時,面向車輛前裝的周期是漫長的。地平線目前可以向行業客戶提供基于征程1.0的Level 2級別的ADAS解決方案。基于其在本屆CES上展示的第二代BPU架構原型系統,之后也陸續會推出Level 3和限定場景下L4的解決方案。
余凱說,今年內,基于第二代BPU架構的征程2.0將會推出,相比于征程1.0會有長足的提升。征程2.0會面向自動駕駛做更多的優化,并且會實現基于像素級別的識別框架,計算復雜性也會更高。
發布會上,地平線還對外公布了與2家車企的合作,一家是奧迪,一家是長安。今年,地平線將與兩家在自主BPU架構的基礎上,各自進行自動駕駛的聯合開發和驗證。
附上:記者在CES前采訪的對話節選,小編做了不改變原意的刪減。
記者:地平線剛剛發布了旭日1.0和征程1.0,兩款芯片在硬件上有多大的差異?
余凱:這兩款芯片在硬件上,其實主要是封裝得不太一樣,里面的主要器件單元是一樣的。因為它在不同的場景下使用,它的模型復雜度不太一樣。
我們是使用同一代架構,高斯架構,采用不同的封裝。業界比如像NVIDIA是每三年一代架構,上一代架構Pascal,這一代架構Volta,然后基于Volta架構的話,他們也會推出不同場景下不同的處理器,主要是一些接口都不一樣,比如說在車載的情況下,它對實時性的要求更高。
記者:我們是什么時候決定說把它分裝成兩個不同的芯片?
余凱:應該說,我們應該從一開始就瞄準這兩個不同的市場。我們會根據這一代的架構,也會演化成不同的產品。我們也在考慮可能會基于這一代的架構,推出支持語音識別的芯片。
一般來講的話,架構迭代的時間都是比較長的,一代架構會根據不同的應用封裝成不同的芯片,有不同的接口,這在業界都是常見的形式。
記者:像這一代芯片為什么選用的是40納米的工藝?
余凱:因為我們比較強調軟件跟算法的結合,我們不會追求純粹的半導體制程上的先進性。我們會強調因為我們有更強大的軟件,即使用比別人更低的工藝,但是我們的整個系統性能也可以做到足夠好,甚至比別人更好。就像Mobileye其實很長一段時間也是用50納米的工藝。所以,這個就是軟硬結合的做法跟純粹做硬件思路不太一樣的地方。
Mobileye的EyeQ4是28納米的,其實跟我們下一代的,今年年底要推出來的新的一代芯片是差不多的。因為EyeQ4是面向L3級和L4級自動駕駛,我們這一代芯片主要是面向L2級的ADAS,所以跟EyeQ3是對標的。
記者:40納米跟28納米相比,在成本或者排期上會有多大的優勢?
余凱:光流片費就會節省幾百萬美金。
記者:地平線的芯片團隊現在大概有多大?
余凱:我們整個的芯片架構、芯片設計、芯片驗證,然后再加上系統軟件固件團隊的話,現在有五六十人。
記者:根據地平線12月公布的幾個解決方案,一個方向是自動駕駛,一個是零售,還有一個是安防三個應用領域。那么芯片和算法的底層開發,與幾個方向的應用開發怎樣協調?
余凱:圍繞應用,我們現在內部定義的其實是兩個方向,一個是智能IOT,一個就是自動駕駛。兩個方向的應用開發會由兩個團隊負責,芯片算法是一個公共的底層平臺團隊。應用開發的團隊現在加起來有100到200號人之間,自動駕駛這塊會多一些。
記者:你們的芯片,之后是一年會進行一次迭代?
余凱:對,一開始是這樣,一年迭代一次架構。我們可能往第二代架構去迭代的速度會更快一點,第二代會比第一代更加強大。
記者:基于高斯架構,會有多個面向應用的芯片。隨著架構的迭代,芯片越來越專用化,會不會變成不同的架構?
余凱:我們盡量不希望這樣,這樣做的話會讓我們的底層資源變得太分散,我們會盡量通過軟件來面對不同的應用場景。
記者:之前講到你們的芯片特點是高性能、低功耗、低成本,相比之下,低成本大概是多低呢?
余凱:跟端上面處理的GPU比的話,我們希把成本至少做低一個數量級。
記者:怎樣跟基于EyeQ3的ADAS比較?
余凱:目前征程1.0的話,其實是一個工業級的處理器,不是車規級的。所以我們一開始會去做ADAS的后裝市場。我們也有計劃,把我們的處理器推向車規級。
記者:發布會上,地平線也公布了與奧迪、長安的合作,具體是怎樣的?
余凱:我們跟奧迪在聯合研發自動駕駛技術,明年的話,我們會有聯合研發的樣車出來;長安的話,我們是成立一個聯合實驗室,也是面向自動駕駛,雙方共同去聯合研發。
記者:比如會基于征程有一些合作嗎?
余凱:其實會遠超征程的范圍,也可以理解為是基于征程的二代處理器,他們提出應用場景,我們提供軟件跟處理器。
記者:目前征程1.0是一個工業級的芯片,比如現在有一家汽車廠商希望合作,一般是怎樣去開展?
余凱:其實一般都是這樣的。Mobileye跟它的合作伙伴,一開始的芯片也都是工業級的,然后會跟客戶先完成功能測試,功能測試通常都要三年的時間,然后在這個三年時間里,不斷地去完成車規級和系統級的功能安全驗證。
記者:像這樣提前兩年去定義一款芯片,難點會在哪里?
余凱:兩年前這個定義芯片的話,那個時候你好多決定,其實都是需要在不是很確定的情況下去做的。打個比方,你的輪子還沒有在裝的過程中,你車就開始跑了,所以這個風險很大。好在我們一次性流便成功了,這是我們覺得很興奮的一件事情。
不是很確定的情況,比如說,你不知道芯片所支持的算法架構,是不是能夠去滿足未來應用的需求。比如說15年的時候幾乎沒有人做深度神經網絡的定制化優化,我們自己做了,然后還做得比較激進,那么現在看起來的話,這個策略是非常對的。
記者:像你們的芯片流程,跟傳統的芯片設計流程會有什么不一樣?
余凱:很多不一樣。一般來講,一個典型的芯片,在開始設計之前,整個軟件框架一定要定下來,一旦開始的話就不能再改了。
我們是在2015年那么早的情況下做這個事情,然后我們有一些小的一些決策點,可能會不斷地推翻。所以當時的話硬件的同學已經開始著手了,結果這邊軟件還時不時修改,所以其實是搞的硬件的設計人員挺抓狂的。
做算法研發的同學的思維是,軟件我可以隨時改,有一個新的idea的話就可以改,但硬件,你就什么東西都得固定下來,一行代碼不能改。因為硬件一點點的改動,其實就意味著整個的巨大的工作量,會導致時間排期的不確定性。
我們做第二代的時候,會在軟件上做一些調整。因為硬件的改動,而導致驗證不充分的話,最后芯片研發會有很大的風險。從我們這種做軟件背景的人來講,其實就是真正地對硬件研發有敬畏之心。
評論
查看更多