曾經看到過一部紅極一時的紀錄片《壽司之神》。
小野二郎是世界上年紀最大的米其林三星主廚,老爺子一輩子就鉆研了一件事:壽司。
在垂直的領域做到世界頂級,靠的就是匠人精神。
如果我們拋開那些外在的包裝和炒作,沉淀下來去觀察他做的事情,就不難發現匠人精神的本質,其實就是專業和堅持。
捏壽司是這樣,各行各業也是這樣,芯片行業也不例外。
推動行業發展的,或許并不是圖靈那樣可遇不可求的天才,而是更多『匠人』對極致的追求,特別是他們在某個小領域不斷地深耕、優化、提升。
打個最簡單的比方,天才創造了開天辟地的理論,就像是1,但需要無數匠人在后面補上0,才能讓這個數變的越來越大。
芯片行業也不例外。
當FPGA在1984年誕生的時候,就像是一個不起眼的1,沒有人會想到這將成為一個價值幾十億美元的產業。不到四十年的時間,后面加了十個0。
這就是指數級的爆發。
摩爾定律描述的就是指數級的規律,而FPGA一直都是體現摩爾定律的最好例子。接下來我們就從FPGA存儲器這個小領域,看看匠人精神是怎么用在這里的。
1、新型存儲架構
英特爾總結過,FPGA現在和未來的發展趨勢只有三個:
傳輸更快,存儲更多,計算更廣。
Move fast, Store more, Process everything.
所以,就像不要覺得壽司只是酸米飯配芥末一樣,再也不要覺得FPGA只是用來做芯片原型驗證的了。FPGA早就被用作高能效的硬件加速單元,去加速你能想到的所有應用了。
FPGA之所以有這樣的能力,是由它本身的結構決定的。比如FPGA有著很強的硬件并行性,能像GPU那樣進行并行運算,但功耗卻低很多;它還能靈活地調整數據的精度,讓神經網絡的壓縮和優化成為現實。
同樣重要的是,FPGA能提供極高的內存帶寬、同時兼顧計算的效率,從而解決很多應用都存在的內存瓶頸問題。
而存儲,就是FPGA上最體現「匠人」功力的地方。
傳統的FPGA存儲單元并不是只有一種結構,而是分成下面兩類:
片上內存:如M20K、MLAB等
片外內存:如DDR5、LPDDR5等
片上內存速度最快、容量最小、造價最高;片外內存速度慢、容量大、造價低。
這樣的結構,并不是某個天才一拍腦門想出來的。最早的FPGA只支持片上內存。但是隨著需要處理的數據越來越多,就慢慢加入了對片外內存的支持,并且逐漸成為了主流FPGA的標配。
匠人精神的本質,就是不斷發現問題、解決問題、并且極致優化的過程。
在這個過程中人們逐漸發現,片上和片外這兩種內存之間,仍然存在著一個巨大而關鍵的缺口:對于很多數據密集型的應用,它們的數據量比片上內存的容量大得多,但對于帶寬的需求又比片外內存能提供的大得多。
這時出現了第三種內存類型:封裝內存。這種內存的最典型代表,就是HBM。
典型的存儲層次結構
它之所以叫「封裝內存」,是因為內存顆粒與FPGA被集成在同一個芯片封裝里了。比如在英特爾最新的Agilex M系列FPGA里,就在芯片的上下兩側通過EMIB技術集成了兩個HBM2e,這也是業界第一個集成了HBM2e高帶寬存儲器的FPGA。這樣不僅減小了芯片的尺寸,還能進一步降低功耗和數據傳輸的時延。
英特爾Agilex-M FPGA平面圖
一個有趣的小知識,Agilex M的“M”,就是Memory存儲器的意思。也就是說,Agilex M就是專門為高性能存儲而優化的FPGA芯片。
和傳統的芯片結構不同,HBM2e是一種三維結構。如果說傳統芯片是平房,那么HBM2e就是大樓。所以在容量這個維度,HBM2e秒殺片上內存。比如它可以包含4層或8層,每層提供2GB內存,再考慮到一個Agilex M里包含兩個HBM2e,這樣FPGA就能提供高達32GB的內存容量,比片上內存多兩個數量級。
從內存帶寬這個維度來看,每個HBM2e能提供410Gbps的內存帶寬,比業界前沿的DDR5和GDDR6分別高18倍、和高7倍,比更加“主流”的DDR4等等更不知道要高到哪里去了。
有了HBM,看起來存儲的問題已經解決了?還遠遠沒有:HBM只是第一步。
2、新型非易失性存儲
對于片外內存,新的問題又出現了。對于很多應用來說,DDR最大的問題并不是慢,而是斷電后數據會消失。這時人們就不得不采用閃存這樣的“非易失性”存儲,來保存那些關鍵數據。但硬幣的另一面,是閃存的性能比DDR還要低。
為了解決這個問題,英特爾提供了一種名叫“傲騰”的新型存儲介質,這種存儲級內存其存儲密度比普通內存高,但存取速度又比閃存快。更重要的是,傲騰技術作為一種持久內存的形態存在時,它獨有的非易失性,使得它里面存的數據在斷電后并不會消失。
與 DRAM 內存相比,持久內存具有更經濟的價格和更大的容量,和固態盤相比則擁有更優的數據響應速度和傳輸速度(接近 DRAM 內存)。正因于此,傲騰也逐漸成為了很多高性能應用里的關鍵存儲單元,多用來做內存的大補充或者為內存密集型應用和延時敏感型應用服務。
3、片上網絡,終于來了
同樣還在進化的,是FPGA的芯片架構。之前的文章里介紹過,Agilex FPGA對芯片布局進行了大修,把各種I/O接口和存儲單元都移到了芯片的上下兩端,把各種高速收發器放在了芯片的左右兩端,這樣芯片中間就成了一個像足球場一樣的特別平整的結構。之前開一個大腳會踢到各種模塊單元,數據跑起來自然就慢?,F在一馬平川,沒有擋路的東西了,數據跑起來就快多了。
可以說,這已經是近幾年來FPGA架構上最有創意的嘗試了。但你以為這樣就完了嗎?
Agilex M最大的架構變化,就是引入了片上網絡Network-on-Chip。這就像在城市規劃里,不僅有道路交通,還有軌道交通。在軌道上運行的地鐵或城鐵,不僅速度可以更快,還能運更多的人。更重要的是,軌道可以建在地上或者地下,不影響在路上跑的汽車自行車摩托車。
Agilex-M的片上網絡NoC結構示意圖
Agilex M的片上網絡專門為存儲設計,也就是說,這是一趟專列。
有了片上網絡,FPGA和各種內存之間的數據傳輸就不用經過FPGA的路由資源了。HBM2e通過UIB接口連接片上網絡、DDR和傲騰這些片外內存則通過IO96子系統連接片上網絡,并且可以實現7.52Tbps的總帶寬。
4、其他架構優化
除了片上網絡,Agilex M還有很多其他的架構優化。I/O方面,它的收發器帶寬可以達到116Gbps,可以支持CXL、PCIe Gen5、400G以太網等等這些數據中心和網絡通信的最新協議和接口。
計算性能方面,Agilex M集成了高達12300個可變精度DSP模塊,可以支持高達18.5TFLOPS的單精度浮點運算、37TFLOPS的半精度浮點運算、以及88.6TOPS的INT8運算。
結語
作為專門針對存儲性能進行優化的FPGA,英特爾 Agilex M已經把優化做到了極致。這樣的優化方式和思路其實有著很強的普適意義:它并不是由某個天才創造出來的突破性成果,而是在各種問題的驅動下,一步一步發展起來的,然后靠一個個擁有「匠人精神」工程師的專注與積累,達到最后的結果。
在大多數情況下,這種方式更加現實,也更加有效。
審核編輯 :李倩
-
FPGA
+關注
關注
1629文章
21729瀏覽量
603044 -
芯片
+關注
關注
455文章
50732瀏覽量
423255 -
存儲器
+關注
關注
38文章
7484瀏覽量
163772
原文標題:為什么芯片設計也需要「匠人精神」?
文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論