當前階段,GPU 配合 CPU 仍然是 AI 芯片的主流,而后隨著視覺、語音、深度學習的算法在 FPGA以及 ASIC芯片上的不斷優化,此兩者也將逐步占有更多的市場份額,從而與GPU達成長期共存的局面。從長遠看,人工智能類腦神經芯片是發展的路徑和方向。本文主要介紹半定制化的FPGA芯片和全定制化的 ASIC芯片。
AI 芯片是人工智能時代的技術核心之一,決定了平臺的基礎架構和發展生態。
芯片發展歷程
AI 芯片按技術架構分類可分為GPU(Graphics Processing Unit,圖形處理單元)、半定制化的 FPGA、全定制化 ASIC和神經擬態芯片等。
各個芯片的特點如下:
GPU 通用性強、速度快、效率高,特別適合用在深度學習訓練方面,但是性能功耗比較低。
FPGA 具有低能耗、高性能以及可編程等特性,相對于 CPU 與 GPU 有明顯的性能或者能耗優勢,但對使用者要求高。
ASIC 可以更有針對性地進行硬件層次的優化,從而獲得更好的性能、功耗比。但是ASIC 芯片的設計和制造需要大量的資金、較長的研發周期和工程周期,而且深度學習算法仍在快速發展,若深度學習算法發生大的變化,FPGA 能很快改變架構,適應最新的變化,ASIC 類芯片一旦定制則難于進行修改。
當前階段,GPU 配合 CPU 仍然是 AI 芯片的主流,而后隨著視覺、語音、深度學習的算法在 FPGA以及 ASIC芯片上的不斷優化,此兩者也將逐步占有更多的市場份額,從而與GPU達成長期共存的局面。從長遠看,人工智能類腦神經芯片是發展的路徑和方向。
本文主要介紹半定制化的FPGA芯片和全定制化的 ASIC芯片。
半定制化的 FPGA
FPGA 是在 PAL、GAL、CPLD 等可編程器件基礎上進一步發展的產物。用戶可以通過燒入 FPGA 配置文件來定義這些門電路以及存儲器之間的連線。這種燒入不是一次性的,比如用戶可以把 FPGA 配置成一個微控制器 MCU,使用完畢后可以編輯配置文件把同一個FPGA 配置成一個音頻編解碼器。因此,它既解決了定制電路靈活性的不足,又克服了原有有可編程器件門電路數有限的缺點。
FPGA 可同時進行數據并行和任務并行計算,在處理特定應用時有更加明顯的效率提升。對于某個特定運算,通用 CPU 可能需要多個時鐘周期;而 FPGA 可以通過編程重組電路,直接生成專用電路,僅消耗少量甚至一次時鐘周期就可完成運算。
此外,由于FPGA的靈活性,很多使用通用處理器或 ASIC難以實現的底層硬件控制操作技術,利用 FPGA 可以很方便的實現。這個特性為算法的功能實現和優化留出了更大空間。同時 FPGA 一次性成本(光刻掩模制作成本)遠低于 ASIC,在芯片需求還未成規模、深度學習算法暫未穩定,需要不斷迭代改進的情況下,利用 FPGA 芯片具備可重構的特性來實現半定制的人工智能芯片是最佳選擇之一。
功耗方面,從體系結構而言,FPGA 也具有天生的優勢。傳統的馮氏結構中,執行單元(如 CPU 核)執行任意指令,都需要有指令存儲器、譯碼器、各種指令的運算器及分支跳轉處理邏輯參與運行,而 FPGA 每個邏輯單元的功能在重編程(即燒入)時就已經確定,不需要指令,無需共享內存,從而可以極大的降低單位執行的功耗,提高整體的能耗比。
由于 FPGA 具備靈活快速的特點,因此在眾多領域都有替代 ASIC 的趨勢。FPGA 在人工智能領域的應用如圖所示。
FPGA在人工智能領域的應用
全定制化的 ASIC
目前以深度學習為代表的人工智能計算需求,主要采用 GPU、FPGA 等已有的適合并行計算的通用芯片來實現加速。在產業應用沒有大規模興起之時,使用這類已有的通用芯片可以避免專門研發定制芯片(ASIC)的高投入和高風險。但是,由于這類通用芯片設計初衷并非專門針對深度學習,因而天然存在性能、功耗等方面的局限性。隨著人工智能應用規模的擴大,這類問題日益突顯。
GPU 作為圖像處理器,設計初衷是為了應對圖像處理中的大規模并行計算。因此,在應用于深度學習算法時,有三個方面的局限性:
第一,應用過程中無法充分發揮并行計算優勢。深度學習包含訓練和推斷兩個計算環節,GPU 在深度學習算法訓練上非常高效,但對于單一輸入進行推斷的場合,并行度的優勢不能完全發揮;
第二,無法靈活配置硬件結構。GPU 采用 SIMT 計算模式,硬件結構相對固定。目前深度學習算法還未完全穩定,若深度學習算法發生大的變化,GPU 無法像 FPGA 一樣可以靈活的配制硬件結構;
第三,運行深度學習算法能效低于 FPGA。
盡管 FPGA 倍受看好,甚至新一代百度大腦也是基于 FPGA 平臺研發,但其畢竟不是專門為了適用深度學習算法而研發,實際應用中也存在諸多局限:第一,基本單元的計算能力有限。為了實現可重構特性,FPGA 內部有大量極細粒度的基本單元,但是每個單元的計算能力(主要依靠 LUT 查找表)都遠遠低于 CPU 和 GPU 中的 ALU 模塊;第二,計算資源占比相對較低。為實現可重構特性,FPGA 內部大量資源被用于可配置的片上路由與連線;第三,速度和功耗相對專用定制芯片(ASIC)仍然存在不小差距;第四,FPGA 價格較為昂貴,在規模放量的情況下單塊 FPGA 的成本要遠高于專用定制芯片。
因此,隨著人工智能算法和應用技術的日益發展,以及人工智能專用芯片ASIC產業環境的逐漸成熟,全定制化人工智能ASIC也逐步體現出自身的優勢,從事此類芯片研發與應用的國內外比較有代表性的公司如表 1 所示。
ASIC 芯片非常適合人工智能的應用場景。
首先,ASIC的性能提升非常明顯。例如英偉達首款專門為深度學習從零開始設計的芯片 Tesla P100 數據處理速度是其 2014 年推出GPU 系列的 12 倍。谷歌為機器學習定制的芯片 TPU 將硬件性能提升至相當于當前芯片按摩爾定律發展 7 年后的水平。正如 CPU 改變了當年龐大的計算機一樣,人工智能 ASIC 芯片也將大幅改變如今 AI 硬件設備的面貌。如大名鼎鼎的 AlphaGo 使用了約 170 個圖形處理器(GPU)和 1200 個中央處理器(CPU),這些設備需要占用一個機房,還要配備大功率的空調,以及多名專家進行系統維護。而如果全部使用專用芯片,極大可能只需要一個普通收納盒大小的空間,,且功耗也會大幅降低。
第二,下游需求促進人工智能芯片專用化。從服務器,計算機到無人駕駛汽車、無人機再到智能家居的各類家電,至少數十倍于智能手機體量的設備需要引入感知交互能力和人工智能計算能力。而出于對實時性的要求以及訓練數據隱私等考慮,這些應用不可能完全依賴云端,必須要有本地的軟硬件基礎平臺支撐,這將帶來海量的人工智能芯片需要。
目前人工智能專用芯片的發展方向包括:主要基于 FPGA 的半定制、針對深度學習算法的全定制和類腦計算芯片 3 個方向。
在芯片需求還未形成規模、深度學習算法暫未穩定,AI 芯片本身需要不斷迭代改進的情況下,利用具備可重構特性的 FPGA 芯片來實現半定制的人工智能芯片是最佳選擇之一。這類芯片中的杰出代表是國內初創公司深鑒科技,該公司設計了“深度學習處理單元”(Deep Processing Unit,DPU)的芯片,希望以 ASIC 級別的功耗達到優于 GPU 的性能,其第一批產品就是基于 FPGA 平臺開發研制出來的。這種半定制芯片雖然依托于 FPGA 平臺,但是抽象出了指令集與編譯器,可以快速開發、快速迭代,與專用的 FPGA 加速器產品相比,也具有非常明顯的優勢。
深度學習算法穩定后,AI 芯片可采用 ASIC 設計方法進行全定制,使性能、功耗和面積等指標面向深度學習算法做到最優。
-
芯片
+關注
關注
456文章
51170瀏覽量
427250 -
自動駕駛
+關注
關注
785文章
13930瀏覽量
167006 -
深度學習
+關注
關注
73文章
5513瀏覽量
121550
原文標題:自動駕駛芯片之——FPGA和ASIC介紹
文章出處:【微信號:IV_Technology,微信公眾號:智車科技】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論