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

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

3天內不再提示

一文詳解AWS FPGA優(yōu)勢/特性/工作方式/用途

Hx ? 作者:工程師陳翠 ? 2018-07-08 03:26 ? 次閱讀

一、 FPGA背景介紹

FPGA是Field-Programmable Gate Array的英文縮寫,英文直譯叫做“現場可編程門陣列”,一般都叫做“可編程硅芯片”。計算機的處理器是在預定義的電路中運行軟件應用程序,與此相反,對FPGA進行編程會使芯片內部的線路重新連接,從而直接在硬件中執(zhí)行所需的功能。

每一塊FPGA芯片都是由有限多個帶有可編程連接的預定義源組成,可實現可重配置數字電路和I/O模塊并允許電路接觸外部環(huán)境。

一文詳解AWS FPGA優(yōu)勢/特性/工作方式/用途

FPGA資源說明書中通常介紹了可編程邏輯模塊的數量、固定功能邏輯模塊(如乘法器)的數目及存儲器資源(如嵌入式塊RAM)的大小。FPGA芯片中還有很多其它的部分,但是以上指標通常是在為特定應用選擇和比較FPGA時的最重要參考指標。

可重配置邏輯模塊(configurable logic block, CLB)是FPGA的基礎邏輯單元。CLB有時又稱為片(slice)或邏輯單元,由兩個基本元器件構成:觸發(fā)器和查找表(LUT)。不同FPGA產品系列的區(qū)別在于觸發(fā)器和LUT的組合方式,因此理解觸發(fā)器和LUT是至關重要的。

二、 FPGA作用

在計算加速領域,傳統CPU處理能力的需要突破已經成為共識,目前的途徑主要有以下幾類:

途徑一,ASIC:經歷了幾十年的發(fā)展演變,為專門目的而設計的ASIC,由于面向特定用戶的需求,在加速效率上可圈可點。但是,設計周期長、成本貴、應用范圍窄的通病,使ASIC僅適合于批量很大或者對產品成本不計較的場合。

途徑二,GPU:隨著近年來機器學習等領域的突飛猛進,GPU也早已經不再局限于3D圖形處理,其在浮點運算、并行計算等部分計算方面的特性已經引起業(yè)界越來越多的關注,尤其是目前最大的獨立芯片生產銷售商NVIDIA有些如日中天的感覺,但其在應用廣度上的通用性仍然有待時間的檢驗。

途徑三,FPGA:它作為半定制的ASIC而出現,既解決了定制電路的不足,又在性能與應用廣度上顯示出優(yōu)勢,英特爾已經積極布局,推出CPU+FPGA架構,也有廠商推出了單獨的FPGA架構,這些都使FPGA進入數據中心加速的主角地位。

下面是一個廠商提供的測試數據:

可以看出,這個廠商FPGA與服務器CPU的性能對比,單位功耗性能在機器學習推斷方面提高了11倍;數據分析SQL查詢方面提升了33倍;視頻處理轉碼提高40倍;存儲壓縮提高40倍;網絡vSwitch可提高23倍。

三、 AWS的FPGA

亞馬遜AWS提供了新的EC2實例F1,這種新的EC2實例是具有現場可編程門陣列 (FPGA) 的計算實例。可以進行編程,為應用程序創(chuàng)建自定義硬件加速。F1 實例易于編程,并且配備了開發(fā)、模擬、調試和編譯硬件加速代碼所需的各種資源,包括 FPGA Developer AMI 和硬件開發(fā)工具包 (HDK)。FPGA 設計完成后,您可以將其注冊為 Amazon FPGA Image (AFI),然后將其部署到您的 F1 實例,只需單擊幾下即可完成部署。您可以多次重復使用您的 AFI,并可以根據需要跨多個 F1 實例使用。

Amazon EC2 F1 現已推出預覽版,具有兩種不同的實例大小,且每個實例包含多達八個 FPGA。F1 實例配有最新的 16nm Xilinx UltraScale Plus FPGA。每個 FPGA 都具有 64 GiB 本地 DDR4 ECC 受保護內存,并配有專用 PCIe x16 連接。每個 FPGA 大約包含 250 萬個邏輯元件以及大約 6800 個數字信號處理 (DSP) 引擎。與其他 Amazon EC2 按需實例一樣,您將按小時為 F1 計算容量付費,無需簽訂長期合約,也無須支付預付款。FPGA DeveloperAMI 或 HDK 都是免費的,您可以在您的 F1 實例上根據需要對 FPGA 多次進行編程,無需額外付費。

四、 AWS FPGA的優(yōu)勢

快速部署自定義硬件加速。借助 F1 實例,您只需在 AWS 管理控制臺中單擊幾下,即可在 AWS 上部署自定義 FPGA。F1 實例可以擁有一個或多個與其關聯的 FPGA 設計,使您能夠快速且靈活地在同一個實例上運行多個 AFI。此外,F1 實例還為您提供了編程、模擬、調試和編譯硬件加速代碼所需的易于訪問的工具。

可預測的性能。FPGA 通過一種專用的 PCI Express(PCIe) 結構連接到您的 F1 實例,從而使各個 FPGA能夠共用同一內存空間,并能夠以高達 12GBps 的速度相互通信。PCI Express 結構與其他網絡相隔離,且 FPGA 不會跨實例、用戶或賬戶進行共享。此設計可確保您在使用 FPGA 時只有您的邏輯在其上運行,有助于提供一致的性能。

改變 FPGA 的經濟性。借助 F1 實例,您無需自行購買 FPGA 或購買專門的硬件來運行 FPGA,即可為您的工作負載部署硬件加速,從而大幅降低為應用程序部署硬件加速所需的成本。如此一來,您便能夠將 FPGA 用于更多工作負載,如基因組學研究和財務風險建模。FPGA可以按小時付費,無限次燒寫。

可使用您現有的 FPGA 算法。您可以輕松地將您現有的加速算法引入AWS,并在 F1 實例中使用它們。F1 實例中的 FPGA 及 HDK 中的開發(fā)人員工具與熱門 FPGA 供應商 (如 Xilinx、Altera 和其他供應商) 提供的硬件加速代碼和設計工具兼容。

五、 AWS FPGA的特性

可編程的硬件加速。借助 F1 實例,您可以輕松地使用 FPGA 為您的工作負載部署硬件加速。FPGA 是可編程的集成電路,您可以使用軟件進行配置。與僅使用 CPU 的服務器相比,您可以使用 FPGA 將您的應用程序速度提高達 30 倍。此外,由于 F1 實例中的 FPGA 是可編程的,因此,您可以靈活地更新和優(yōu)化您的硬件加速,且無需重新設計任何硬件。

專用 FPGA。每個 F1 實例都具有多達八個 FPGA,且這些 FPGA 均專用于該實例,不會在實例、用戶或賬戶之間共享。這可確保 FPGA 的全部力量將僅用于該實例,還能通過用戶和賬戶隔離提高安全性。

可重復使用的安全 Amazon FPGA Image (AFI)。您所創(chuàng)建的用于對 FPGA 進行編程的設計被稱為 Amazon FPGA Image (AFI)。AWS 提供了一種用于獲取、管理和加密 AFI 的服務。注冊 AFI 之后,可以將其與 Amazon 系統映像 (AMI) 相關聯,也可以與正在運行的 F1 實例關聯。您可以同時將多個 AFI 與同一個 F1 實例或 AMI相關聯,且一個實例在運行時可在多個 AFI 之間切換,無需重新啟動。如此一來,您便能夠快速地連續(xù)測試和運行多個硬件加速。AFI 與 AMI 相關聯后,您還可以向AWS Marketplace 中的其他客戶提供您的 FPGA 加速。

硬件開發(fā)工具包。AWS 提供了硬件開發(fā)工具包 (HDK),幫助您快速開發(fā)硬件加速。HDK 包括代碼示例、編譯腳本、調試接口以及為 F1 實例開發(fā) FPGA 代碼所需的許多其他工具。您可以在 AWS 提供的 AMI 或您的本地開發(fā)環(huán)境中使用 HDK。

FPGA Developer AMI。FPGADeveloper AMI 包括一個預先打包的工具開發(fā)環(huán)境,其中含有用于模擬 FPGA 設計、編譯代碼及構建和注冊 AFI 的腳本和工具。FPGA Developer AMI 包括用于調試和編譯代碼的工具。您可以在 Amazon EC2 實例上部署 FPGA Developer AMI,并快速預配置您所需的資源,以便編寫和測試您的 FPGA 設計。

六、 AWS FPGA的實例詳情

一文詳解AWS FPGA優(yōu)勢/特性/工作方式/用途

七、 AWS FPGA的工作方式

開發(fā):使用硬件開發(fā)工具包 (HDK) 及一整套設計工具和模擬器來開發(fā)自定義 Amazon FPGA Images (AFI)。

部署:直接在 F1 實例上部署 AFI,并利用 EC2 的所有可擴展性、敏捷性和安全性優(yōu)勢。

提供:在 AWS Marketplace 中為其他客戶提供您設計的AFI。

購買:購買 AWS Marketplace 中列出的構建好的 AFI,從而快速實施常見的硬件加速。

看一個簡單的例子。先登入到開發(fā)環(huán)境AMI,如下圖所示:

一文詳解AWS FPGA優(yōu)勢/特性/工作方式/用途

進入AMI之后,安裝一些依賴包,啟動License管理器,然后就能打開Xilinx的FPGA開發(fā)工具Vivado了。所以所謂的AMI其實就是一個操作系統,包含了Xilinx的FPGA開發(fā)工具和亞馬遜的支持包。

可以使用VHDL和Verilog來編寫FPGA代碼,然后編譯、模擬、并且進行校驗。下面是一段Verilog代碼:

module up_counter(out, enable, clk, reset);

output [7:0] out;

input enable, clk, reset;

reg [7:0] out;

always @(posedge clk)

if (reset) begin

out 《= 8‘b0;

end else if (enable) begin

out 《= out +1;

end

endmodule

通過命令行啟動Vivado,用來圖形化編程:

一文詳解AWS FPGA優(yōu)勢/特性/工作方式/用途

一文詳解AWS FPGA優(yōu)勢/特性/工作方式/用途

寫一段Verilog或者OpenCL代碼,并編譯綜合成硬件邏輯。

一文詳解AWS FPGA優(yōu)勢/特性/工作方式/用途

F1硬件開發(fā)工具包:

一文詳解AWS FPGA優(yōu)勢/特性/工作方式/用途

八、 AWS FPGA的用途

使用 F1 實例部署硬件加速在許多高性能計算 (HPC) 應用程序中非常有用,可解決需要高帶寬、增強型聯網和較高計算能力的復雜科學、工程和業(yè)務問題。F1 實例尤其適用于有時間要求的應用程序,如臨床基因組學、實時視頻處理和財務風險分析。

基因組學研究:必須由基因組學研究人員處理的生物數據的數量和復雜性不斷增加,逐步達到了 PB 級范圍。研究人員和臨床醫(yī)生必須非常快速地處理這些數據集,以滿足醫(yī)生及其患者的需求。對于此類有時間要求的使用案例,F1 實例是理想的解決方案。

財務分析:金融服務行業(yè)對多種應用程序的 HPC 功能需求一直在不斷增加,包括風險建模和分析、針對安全性的事務分析、高頻交易等。金融服務組織可以使用 F1 實例來提高風險建模和分析的準確性,從而顯著改進他們的決策制定流程。

實時視頻處理:高性能廣播級視頻應用程序 (如圖片處理、視頻分析及視頻轉碼和壓縮) 需要使用實時分析功能。F1 實例是滿足這些應用程序要求的理想解決方案,且不會影響視頻質量。

大數據搜索和分析:許多大數據應用程序對數據分析和搜索的數量、多樣性和速度要求不斷提高,導致客戶正在尋求硬件加速來滿足這些要求。對于這些應用程序,客戶可以利用 F1 實例的增強性能來滿足其大數據分析和搜索要求。

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

    關注

    1624

    文章

    21539

    瀏覽量

    600521
  • AWS
    AWS
    +關注

    關注

    0

    文章

    423

    瀏覽量

    24254
收藏 人收藏

    評論

    相關推薦

    單片機中的定時計數器的四種工作方式詳解

    /定時器。定時/計數器的四種工作方式講解方式0為13位計數器,由TL(1/0)的低5位和TH(0/1)的8位組成,,此時TL(1/0)的高3位未用。M1、M0:定時/計數器共有四種工作方式
    發(fā)表于 04-30 06:30

    51單片機定時器工作方式

    51單片機定時器工作方式1、2的詳解:寫在前面知識填充方式工作原理初值的設定代碼實現方式
    發(fā)表于 07-14 07:03

    鼠標的工作方式

    鼠標的工作方式 工作方式是指鼠標采用什么工作原理或方式進行工作。常見的鼠標工作方式有滾輪式和光
    發(fā)表于 12-28 11:38 ?823次閱讀

    Wifi模塊的工作方式功能是什么?

    Wifi模塊的工作方式是什么呢,Wifi模塊的主要功能又有哪些呢?本文主要介紹了有關Wifi模塊的基礎知識即:Wifi模塊的工作方式、主要功能及應用領域。
    發(fā)表于 06-12 14:22 ?5851次閱讀

    步進電機及驅動電路工作原理及工作方式介紹

    步進電機及驅動電路工作原理及工作方式介紹
    發(fā)表于 05-11 18:00 ?0次下載

    詳解PLC的工作方式

    眾所周知,PLC的工作方式為: 循環(huán)掃描:也就是從程序的首端到底端、從左端到右端,逐行掃描,不斷地重復! 行字看起來很簡單,也很好理解,可實際編程中還是錯誤多多,這是因為基礎不夠扎實。那PLC的循環(huán)掃描具體是如何運作的呢?我們可以引用
    的頭像 發(fā)表于 01-21 09:55 ?1.4w次閱讀
    <b class='flag-5'>一</b>圖<b class='flag-5'>詳解</b>PLC的<b class='flag-5'>工作方式</b>

    看懂矩陣鍵盤的特點及工作方式

    矩陣鍵盤是單片機外部設備中所使用的排布類似于矩陣的鍵盤組。本文首先介紹了矩陣鍵盤特點,其次闡述了矩陣鍵盤構成與工作方式,最后介紹了矩陣鍵盤的原理。
    發(fā)表于 02-24 14:20 ?3.8w次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>看懂矩陣鍵盤的特點及<b class='flag-5'>工作方式</b>

    總結藍牙模塊的工作方式匯總,很全值得收藏!

    藍牙模塊的工作方式有哪些呢?資料總結了藍牙模塊的常見的7種工作方式,需要的親可以收藏下
    發(fā)表于 04-26 15:05 ?15次下載
    <b class='flag-5'>一</b><b class='flag-5'>文</b>總結藍牙模塊的<b class='flag-5'>工作方式</b>匯總,很全值得收藏!

    8255a有哪幾種工作方式?8251a的工作方式工作原理

    本文首先介紹了8255芯片的概念與特性,其次介紹了8255A引腳圖及功能,最后介紹了8255a的幾種工作方式工作原理。
    的頭像 發(fā)表于 05-23 14:40 ?6.3w次閱讀
    8255a有哪幾種<b class='flag-5'>工作方式</b>?8251a的<b class='flag-5'>工作方式</b>及<b class='flag-5'>工作</b>原理

    ups不間斷電源工作方式

    本視頻主要詳細介紹了ups不間斷電源工作方式,分別是正常運行方式、電池工作方式、旁路運行方式以及旁路維護方式
    的頭像 發(fā)表于 06-26 14:38 ?7210次閱讀

    AD級聯的工作方式配置和AD雙排序的工作方式配置詳細說明

    本文檔的主要內容詳細介紹的是AD級聯的工作方式配置和AD雙排序的工作方式配置詳細說明
    發(fā)表于 12-23 08:00 ?2次下載
    AD級聯的<b class='flag-5'>工作方式</b>配置和AD雙排序的<b class='flag-5'>工作方式</b>配置詳細說明

    51單片機定時器工作方式1、2原理詳解

    51單片機方式1、2的詳解:寫在前面知識填充方式工作原理初值的設定代碼實現方式
    發(fā)表于 11-10 20:06 ?12次下載
    51單片機定時器<b class='flag-5'>工作方式</b>1、2原理<b class='flag-5'>詳解</b>

    最常見的直流負載工作方式

    見的直流負載工作方式。 1. 固定電阻負載 固定電阻負載是最簡單和最常見的直流負載方式。它由個或多個電阻器組成,用于產生個恒定的電阻
    的頭像 發(fā)表于 01-18 15:12 ?618次閱讀

    斬波器的定頻調寬工作方式?

    斬波器的定頻調寬工作方式種電力電子控制技術,用于調節(jié)輸出電壓或電流。
    的頭像 發(fā)表于 05-24 16:12 ?492次閱讀

    PLC的CPU工作方式詳解

    Processing Unit,中央處理器)作為其核心組件,其工作方式直接影響到PLC的性能和穩(wěn)定性。本文將詳細探討PLC的CPU工作方式,包括其工作原理、主要模式以及實際應用中的注意事項,以期為相關技術人員提供參考和借鑒。
    的頭像 發(fā)表于 06-13 18:20 ?1359次閱讀