0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

匠人精神是怎么用在FPGA存儲器

OpenFPGA ? 來源:OpenFPGA ? 作者:OpenFPGA ? 2022-06-10 09:06 ? 次閱讀

曾經(jīng)看到過一部紅極一時的紀錄片《壽司之神》。

小野二郎是世界上年紀最大的米其林三星主廚,老爺子一輩子就鉆研了一件事:壽司。

在垂直的領(lǐng)域做到世界頂級,靠的就是匠人精神。


如果我們拋開那些外在的包裝和炒作,沉淀下來去觀察他做的事情,就不難發(fā)現(xiàn)匠人精神的本質(zhì),其實就是專業(yè)和堅持。

捏壽司是這樣,各行各業(yè)也是這樣,芯片行業(yè)也不例外。

推動行業(yè)發(fā)展的,或許并不是圖靈那樣可遇不可求的天才,而是更多『匠人』對極致的追求,特別是他們在某個小領(lǐng)域不斷地深耕、優(yōu)化、提升。

打個最簡單的比方,天才創(chuàng)造了開天辟地的理論,就像是1,但需要無數(shù)匠人在后面補上0,才能讓這個數(shù)變的越來越大。

芯片行業(yè)也不例外。

當(dāng)FPGA在1984年誕生的時候,就像是一個不起眼的1,沒有人會想到這將成為一個價值幾十億美元的產(chǎn)業(yè)。不到四十年的時間,后面加了十個0。

這就是指數(shù)級的爆發(fā)。

摩爾定律描述的就是指數(shù)級的規(guī)律,而FPGA一直都是體現(xiàn)摩爾定律的最好例子。接下來我們就從FPGA存儲器這個小領(lǐng)域,看看匠人精神是怎么用在這里的。

1、新型存儲架構(gòu)

英特爾總結(jié)過,F(xiàn)PGA現(xiàn)在和未來的發(fā)展趨勢只有三個:

傳輸更快,存儲更多,計算更廣。

Move fast, Store more, Process everything.

所以,就像不要覺得壽司只是酸米飯配芥末一樣,再也不要覺得FPGA只是用來做芯片原型驗證的了。FPGA早就被用作高能效的硬件加速單元,去加速你能想到的所有應(yīng)用了。

FPGA之所以有這樣的能力,是由它本身的結(jié)構(gòu)決定的。比如FPGA有著很強的硬件并行性,能像GPU那樣進行并行運算,但功耗卻低很多;它還能靈活地調(diào)整數(shù)據(jù)的精度,讓神經(jīng)網(wǎng)絡(luò)的壓縮和優(yōu)化成為現(xiàn)實。

同樣重要的是,FPGA能提供極高的內(nèi)存帶寬、同時兼顧計算的效率,從而解決很多應(yīng)用都存在的內(nèi)存瓶頸問題。

而存儲,就是FPGA上最體現(xiàn)「匠人」功力的地方。

傳統(tǒng)的FPGA存儲單元并不是只有一種結(jié)構(gòu),而是分成下面兩類:

片上內(nèi)存:如M20K、MLAB等

片外內(nèi)存:如DDR5、LPDDR5等

片上內(nèi)存速度最快、容量最小、造價最高;片外內(nèi)存速度慢、容量大、造價低。

這樣的結(jié)構(gòu),并不是某個天才一拍腦門想出來的。最早的FPGA只支持片上內(nèi)存。但是隨著需要處理的數(shù)據(jù)越來越多,就慢慢加入了對片外內(nèi)存的支持,并且逐漸成為了主流FPGA的標(biāo)配。

匠人精神的本質(zhì),就是不斷發(fā)現(xiàn)問題、解決問題、并且極致優(yōu)化的過程。

在這個過程中人們逐漸發(fā)現(xiàn),片上和片外這兩種內(nèi)存之間,仍然存在著一個巨大而關(guān)鍵的缺口:對于很多數(shù)據(jù)密集型的應(yīng)用,它們的數(shù)據(jù)量比片上內(nèi)存的容量大得多,但對于帶寬的需求又比片外內(nèi)存能提供的大得多

這時出現(xiàn)了第三種內(nèi)存類型:封裝內(nèi)存。這種內(nèi)存的最典型代表,就是HBM。

7f155a12-e855-11ec-ba43-dac502259ad0.png

典型的存儲層次結(jié)構(gòu)

它之所以叫「封裝內(nèi)存」,是因為內(nèi)存顆粒與FPGA被集成在同一個芯片封裝里了。比如在英特爾最新的Agilex M系列FPGA里,就在芯片的上下兩側(cè)通過EMIB技術(shù)集成了兩個HBM2e,這也是業(yè)界第一個集成了HBM2e高帶寬存儲器的FPGA。這樣不僅減小了芯片的尺寸,還能進一步降低功耗和數(shù)據(jù)傳輸?shù)臅r延。

7f4567fc-e855-11ec-ba43-dac502259ad0.png

英特爾Agilex-M FPGA平面圖

一個有趣的小知識,Agilex M的“M”,就是Memory存儲器的意思。也就是說,Agilex M就是專門為高性能存儲而優(yōu)化的FPGA芯片。

和傳統(tǒng)的芯片結(jié)構(gòu)不同,HBM2e是一種三維結(jié)構(gòu)。如果說傳統(tǒng)芯片是平房,那么HBM2e就是大樓。所以在容量這個維度,HBM2e秒殺片上內(nèi)存。比如它可以包含4層或8層,每層提供2GB內(nèi)存,再考慮到一個Agilex M里包含兩個HBM2e,這樣FPGA就能提供高達32GB的內(nèi)存容量,比片上內(nèi)存多兩個數(shù)量級

從內(nèi)存帶寬這個維度來看,每個HBM2e能提供410Gbps的內(nèi)存帶寬,比業(yè)界前沿的DDR5和GDDR6分別高18倍、和高7倍,比更加“主流”的DDR4等等更不知道要高到哪里去了。

有了HBM,看起來存儲的問題已經(jīng)解決了?還遠遠沒有:HBM只是第一步。

2、新型非易失性存儲

對于片外內(nèi)存,新的問題又出現(xiàn)了。對于很多應(yīng)用來說,DDR最大的問題并不是慢,而是斷電后數(shù)據(jù)會消失。這時人們就不得不采用閃存這樣的“非易失性”存儲,來保存那些關(guān)鍵數(shù)據(jù)。但硬幣的另一面,是閃存的性能比DDR還要低。

為了解決這個問題,英特爾提供了一種名叫“傲騰”的新型存儲介質(zhì),這種存儲級內(nèi)存其存儲密度比普通內(nèi)存高,但存取速度又比閃存快。更重要的是,傲騰技術(shù)作為一種持久內(nèi)存的形態(tài)存在時,它獨有的非易失性,使得它里面存的數(shù)據(jù)在斷電后并不會消失。

DRAM 內(nèi)存相比,持久內(nèi)存具有更經(jīng)濟的價格和更大的容量,和固態(tài)盤相比則擁有更優(yōu)的數(shù)據(jù)響應(yīng)速度和傳輸速度(接近 DRAM 內(nèi)存)。正因于此,傲騰也逐漸成為了很多高性能應(yīng)用里的關(guān)鍵存儲單元,多用來做內(nèi)存的大補充或者為內(nèi)存密集型應(yīng)用和延時敏感型應(yīng)用服務(wù)。

3、片上網(wǎng)絡(luò),終于來了

同樣還在進化的,是FPGA的芯片架構(gòu)。之前的文章里介紹過,Agilex FPGA對芯片布局進行了大修,把各種I/O接口和存儲單元都移到了芯片的上下兩端,把各種高速收發(fā)器放在了芯片的左右兩端,這樣芯片中間就成了一個像足球場一樣的特別平整的結(jié)構(gòu)。之前開一個大腳會踢到各種模塊單元,數(shù)據(jù)跑起來自然就慢?,F(xiàn)在一馬平川,沒有擋路的東西了,數(shù)據(jù)跑起來就快多了。

可以說,這已經(jīng)是近幾年來FPGA架構(gòu)上最有創(chuàng)意的嘗試了。但你以為這樣就完了嗎?

Agilex M最大的架構(gòu)變化,就是引入了片上網(wǎng)絡(luò)Network-on-Chip。這就像在城市規(guī)劃里,不僅有道路交通,還有軌道交通。在軌道上運行的地鐵或城鐵,不僅速度可以更快,還能運更多的人。更重要的是,軌道可以建在地上或者地下,不影響在路上跑的汽車自行車摩托車。

7f78d9d4-e855-11ec-ba43-dac502259ad0.png

Agilex-M的片上網(wǎng)絡(luò)NoC結(jié)構(gòu)示意圖

Agilex M的片上網(wǎng)絡(luò)專門為存儲設(shè)計,也就是說,這是一趟專列。

有了片上網(wǎng)絡(luò),F(xiàn)PGA和各種內(nèi)存之間的數(shù)據(jù)傳輸就不用經(jīng)過FPGA的路由資源了。HBM2e通過UIB接口連接片上網(wǎng)絡(luò)、DDR和傲騰這些片外內(nèi)存則通過IO96子系統(tǒng)連接片上網(wǎng)絡(luò),并且可以實現(xiàn)7.52Tbps的總帶寬。

4、其他架構(gòu)優(yōu)化

除了片上網(wǎng)絡(luò),Agilex M還有很多其他的架構(gòu)優(yōu)化。I/O方面,它的收發(fā)器帶寬可以達到116Gbps,可以支持CXL、PCIe Gen5、400G以太網(wǎng)等等這些數(shù)據(jù)中心網(wǎng)絡(luò)通信的最新協(xié)議和接口。

計算性能方面,Agilex M集成了高達12300個可變精度DSP模塊,可以支持高達18.5TFLOPS的單精度浮點運算、37TFLOPS的半精度浮點運算、以及88.6TOPS的INT8運算。

結(jié)語

作為專門針對存儲性能進行優(yōu)化的FPGA,英特爾 Agilex M已經(jīng)把優(yōu)化做到了極致。這樣的優(yōu)化方式和思路其實有著很強的普適意義:它并不是由某個天才創(chuàng)造出來的突破性成果,而是在各種問題的驅(qū)動下,一步一步發(fā)展起來的,然后靠一個個擁有「匠人精神」工程師的專注與積累,達到最后的結(jié)果。

在大多數(shù)情況下,這種方式更加現(xiàn)實,也更加有效。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1629

    文章

    21753

    瀏覽量

    604184
  • 芯片
    +關(guān)注

    關(guān)注

    456

    文章

    50919

    瀏覽量

    424583
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7509

    瀏覽量

    163976

原文標(biāo)題:為什么芯片設(shè)計也需要「匠人精神」?

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    什么是ROM存儲器的定義

    一、ROM存儲器的定義 ROM存儲器是一種在計算機和電子設(shè)備中用于存儲固定數(shù)據(jù)的存儲器。與RAM(隨機存取存儲器)不同,ROM
    的頭像 發(fā)表于 11-04 09:59 ?795次閱讀

    內(nèi)存儲器分為隨機存儲器和什么

    內(nèi)存儲器是計算機系統(tǒng)中用于臨時存儲數(shù)據(jù)和程序的關(guān)鍵部件,它直接影響到計算機的運行速度和性能。內(nèi)存儲器主要分為兩大類:隨機存儲器(RAM,Random Access Memory)和只讀
    的頭像 發(fā)表于 10-14 09:54 ?1200次閱讀

    存儲器中訪問速度最快的是什么

    在探討存儲器中訪問速度最快的是哪一種時,我們首先需要了解計算機存儲系統(tǒng)的層次結(jié)構(gòu)以及各類存儲器的特性和功能。計算機存儲系統(tǒng)通常包括多個層次的存儲器
    的頭像 發(fā)表于 10-12 17:01 ?2133次閱讀

    PLC主要使用的存儲器類型

    PLC(可編程邏輯控制)中的存儲器是其重要組成部分,用于存儲程序、數(shù)據(jù)和系統(tǒng)信息。PLC的存儲器主要分為兩大類:系統(tǒng)存儲器和用戶
    的頭像 發(fā)表于 09-05 10:45 ?2741次閱讀

    外部存儲器有哪些

    外部存儲器是指用于存儲數(shù)據(jù)的獨立設(shè)備,它們通常與計算機或其他電子設(shè)備連接,并提供額外的存儲空間,允許用戶在不改變主設(shè)備內(nèi)部存儲的情況下保存和訪問大量數(shù)據(jù)。常見的外部
    的頭像 發(fā)表于 09-05 10:42 ?2532次閱讀

    內(nèi)部存儲器有哪些

    內(nèi)部存儲器,也稱為內(nèi)存(Memory),是計算機系統(tǒng)中用于暫時存儲程序和數(shù)據(jù)的重要組件。它直接與CPU相連,是CPU處理數(shù)據(jù)的主要來源。內(nèi)部存儲器主要由隨機存取存儲器(RAM)和只讀
    的頭像 發(fā)表于 09-05 10:42 ?1777次閱讀

    ram存儲器和rom存儲器的區(qū)別是什么

    定義: RAM(Random Access Memory):隨機存取存儲器,是一種易失性存儲器,主要用于計算機和其他設(shè)備的臨時存儲。 ROM(Read-Only Memory):只讀存儲器
    的頭像 發(fā)表于 08-06 09:17 ?730次閱讀

    EEPROM存儲器如何加密

    EEPROM(Electrically Erasable Programmable Read-Only Memory,電可擦可編程只讀存儲器)是一種非易失性存儲器,它在斷電后仍能保持數(shù)據(jù)。由于其可
    的頭像 發(fā)表于 08-05 18:05 ?1329次閱讀

    eeprom存儲器為什么會重?zé)?/a>

    EEPROM(Electrically Erasable Programmable Read-Only Memory,電可擦可編程只讀存儲器)是一種非易失性存儲器,可以在不移除芯片的情況下進行
    的頭像 發(fā)表于 08-05 16:59 ?547次閱讀

    內(nèi)存儲器與外存儲器的主要區(qū)別

    在計算機系統(tǒng)中,存儲器是不可或缺的核心部件,它負責(zé)存儲和處理各種數(shù)據(jù)和信息。根據(jù)存儲位置和功能的不同,存儲器可大致分為內(nèi)存儲器(簡稱內(nèi)存)和
    的頭像 發(fā)表于 05-22 18:16 ?5443次閱讀

    存儲器的定義和分類

    存儲器,作為計算機系統(tǒng)中的核心部件之一,扮演著存儲和檢索數(shù)據(jù)的角色。無論是程序的執(zhí)行,還是數(shù)據(jù)的處理,都離不開存儲器的支持。本文將對存儲器進行詳細的介紹,包括其定義、分類、工作原理以及
    的頭像 發(fā)表于 05-12 16:56 ?1394次閱讀

    什么是EEPROM存儲器,EEPROM存儲器的常見故障及預(yù)防措施

    EEPROM存儲器的工作原理是利用電子設(shè)備的泄漏效應(yīng)來進行數(shù)據(jù)的寫入和擦除。當(dāng)EEPROM中的存儲單元被寫入數(shù)據(jù)時,一個高電壓被應(yīng)用在一個特定的柵極上,使得柵極和基極之間的絕緣層產(chǎn)生足夠的電場
    的頭像 發(fā)表于 03-25 13:49 ?7630次閱讀

    淺談存儲器層次結(jié)構(gòu)

    通過多級存儲器的設(shè)計,存儲器層次結(jié)構(gòu)能夠在存儲容量和訪問速度之間找到一個平衡點。高速緩存存儲器和主存儲器提供了快速的訪問速度,而輔助
    發(fā)表于 02-19 13:54 ?852次閱讀
    淺談<b class='flag-5'>存儲器</b>層次結(jié)構(gòu)

    半導(dǎo)體存儲器有哪些 半導(dǎo)體存儲器分為哪兩種

    半導(dǎo)體存儲器(Semiconductor Memory)是一種電子元件,用于存儲和檢索數(shù)據(jù)。它由半導(dǎo)體材料制成,采用了半導(dǎo)體技術(shù),是計算機和電子設(shè)備中最常用的存儲器。 半導(dǎo)體存儲器可以
    的頭像 發(fā)表于 02-01 17:19 ?3172次閱讀

    如何使用SCR XRAM作為程序存儲器和數(shù)據(jù)存儲器

    1) 允許一個物理內(nèi)存(即 XRAM) 可同時作為程序存儲器和數(shù)據(jù)存儲器進行訪問 如何使用 SCR XRAM 作為程序存儲器和數(shù)據(jù)存儲器。 1) 用于
    發(fā)表于 01-30 08:18