chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

FPGA的簡介發(fā)展歷和使用等基礎(chǔ)知識講解

Wildesbeast ? 來源:今日頭條 ? 作者:晗狄技術(shù)觀 ? 2020-01-19 10:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨著云計算,大數(shù)據(jù)和人工智能技術(shù)應(yīng)用,單靠CPU已經(jīng)無法滿足各行各業(yè)的算力需求。海量數(shù)據(jù)分析、機器學(xué)習(xí)和邊緣計算等場景需要計算架構(gòu)多樣化,需要不同的處理器架構(gòu)和GPU,NPU和FPGA等異構(gòu)計算技術(shù)協(xié)同,滿足特定領(lǐng)域的算法和專用計算需求。今天,筆者帶大家詳細(xì)了解下FPGA技術(shù)。

FPGA是英文Field Programmable Gate Array簡稱,即現(xiàn)場可編程門陣列。它是在PLA、PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路ASIC)領(lǐng)域中的一種半定制電路,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。

1、 FPGA簡介

FPGA普遍用于實現(xiàn)數(shù)字電路模塊,用戶可對FPGA內(nèi)部的邏輯模塊和I/O模塊重新配置,以實現(xiàn)用戶的需求。它還具有靜態(tài)可重復(fù)編程和動態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過編程來修改??梢院敛豢鋸埖闹v,F(xiàn)PGA能完成任何數(shù)字器件的功能,下至簡單的74電路,上至高性能CPU,都可以用FPGA來實現(xiàn)。FPGA如同一張白紙或是一堆積木,工程師可以通過傳統(tǒng)的原理圖輸入法,或是硬件描述語言自由的設(shè)計一個數(shù)字系統(tǒng)。

2、FPGA發(fā)展史

FPGA的發(fā)展歷史如下圖所示。相對于PROM、PAL/GAL、CPLD而言,F(xiàn)PGA規(guī)模更大性能更高。

圖1 FPGA發(fā)展史

FPGA芯片主流生產(chǎn)廠家包括Xilinx、Altera、Lattice、Microsemi,其中前兩家的市場份額合計達(dá)到88%。目前FPGA主流廠商全部為美國廠商。國產(chǎn)FPGA由于研發(fā)起步較美國晚至少20年,目前還處于成長期,僅限于低端,在通信市場還沒有成熟應(yīng)用。

2015年12月,Intel公司斥資167億美元收購了Altera公司。Altera被收購后不久即制定了英特爾處理器與FPGA集成的產(chǎn)品路線圖。這兩種產(chǎn)品集成的好處是可以提供創(chuàng)新的異構(gòu)多核架構(gòu),適應(yīng)例如人工智能等新市場的需求,同時能大幅縮減功耗。

圖2 FPGA在電信領(lǐng)域的應(yīng)用歷史

FPGA在航天、軍工、電信領(lǐng)域有非常成熟和廣泛的應(yīng)用。以電信領(lǐng)域為例,在電信設(shè)備一體機階段,F(xiàn)PGA由于其編程的靈活性以及高性能被應(yīng)用網(wǎng)絡(luò)協(xié)議解析以及接口轉(zhuǎn)換。

在NFV(NetworkFunction Virtualization階段,F(xiàn)PGA基于通用服務(wù)器和Hypervisor實現(xiàn)網(wǎng)元數(shù)據(jù)面5倍的性能提升,同時能夠被通用Openstack框架管理編排。

在云時代,F(xiàn)PGA已經(jīng)被作為基本IaaS資源在公有云提供開發(fā)服務(wù)和加速服務(wù),AWS、華為、BAT均有類似通用服務(wù)提供。

截至目前,Intel的Stratix 10器件已被成功應(yīng)用于微軟實時人工智能云平臺Brainwave項目。

3、兩家主流FPGA公司發(fā)展近況

Xilinx聚焦芯片領(lǐng)先和豐富的加速解決方案,通過開放策略獲得主流云平臺支持,確立了其在數(shù)據(jù)中心的領(lǐng)先地位。其UltraScale+系列FPGA領(lǐng)先友商1年多,使其在云平臺競爭中占領(lǐng)先機,其VU9P器件被大量應(yīng)用于包括AWS、Baidu、Ali、Tencent及華為在內(nèi)的多家公司的云計算平臺。

為滿足加速器領(lǐng)域?qū)PGA芯片日益遞增的性能需求,Xilinx已發(fā)布面向數(shù)據(jù)中心的下一代ACAP芯片架構(gòu)、推出7nm Everest器件。此器件已不屬于傳統(tǒng)的FPGA,它集成了ARM、DSP、Math Engine處理器陣列等內(nèi)核,將于2019年量產(chǎn)。相較于VU9P,Everest支持的AI處理性能將能提升20倍。

Intel則提供從硬件到平臺到應(yīng)用的全棧解決方案,不開放硬件和平臺設(shè)計以避免生態(tài)碎片化,投入巨大但進展緩慢。

圖3 Xilinx產(chǎn)品系列圖

圖4 Intel(以Stratix系列為例)產(chǎn)品工藝年代

FPGA在數(shù)據(jù)中心服務(wù)器市場的實際應(yīng)用中存在一定技術(shù)難點,具體包括如下幾方面:

1、編程門檻較高:硬件描述語言不同于軟件開發(fā)語言,需要開發(fā)者對底層硬件有著較深刻的認(rèn)識;因此人才也就成為限制FPGA應(yīng)用的一個重要因素。據(jù)了解,目前國內(nèi)從事FPGA開發(fā)的人員初步估計大約兩萬多人。

2、集成難度較大:FPGA開發(fā)與應(yīng)用需要軟硬件的協(xié)同,包括使用高級語言的系統(tǒng)建模、硬件代碼(電路)設(shè)計、硬件代碼仿真、底層驅(qū)動軟件與硬件邏輯的聯(lián)調(diào)等等。

3、開發(fā)周期相對軟件要長:硬件開發(fā)比軟件開發(fā)過程復(fù)雜,調(diào)試周期也被拉長。

4、很難獲取獨立邏輯IP。

4、FPGA整體結(jié)構(gòu)

FPGA架構(gòu)主要包括可配置邏輯塊CLB(Configurable Logic Block)、輸入輸出塊IOB(Input Output Block)、內(nèi)部連線(Interconnect)和其它內(nèi)嵌單元四個部分。

CLB是FPGA的基本邏輯單元。實際數(shù)量和特性會依器件的不同而改變,但是每個CLB都包含一個由4或6個輸入、若干選擇電路(多路復(fù)用器等)和觸發(fā)器組成的可配置開關(guān)矩陣。開關(guān)矩陣具有高度的靈活性,經(jīng)配置可以處理組合型邏輯、移位寄存器或 RAM。

FPGA可支持許多種I/O標(biāo)準(zhǔn),因而可以為系統(tǒng)設(shè)計提供理想的接口橋接。FPGA 內(nèi)的I/O按bank分組,每個bank能獨立支持不同的I/O標(biāo)準(zhǔn)。目前最先進的FPGA提供了十多個I/O bank,能夠提供靈活的I/O支持。

CLB 提供了邏輯性能,靈活的互連布線則負(fù)責(zé)在CLB和I/O之間傳遞信號。布線有幾種類型,從設(shè)計用于專門實現(xiàn) CLB 互連(短線資源)、到器件內(nèi)的高速水平和垂直長線(長線資源)、再到時鐘與其它全局信號的全局低skew布線(全局性專用布線資源)。一般,各廠家設(shè)計軟件會將互連布線任務(wù)隱藏起來,用戶根本看不到,從而大幅降低了設(shè)計復(fù)雜性。

內(nèi)嵌硬核單元包括RAM、DSP、DCM(數(shù)字時鐘管理模塊)及其它特定接口硬核等,F(xiàn)PGA器件內(nèi)部結(jié)構(gòu)如下示意圖。

圖5 FPGA器件內(nèi)部結(jié)構(gòu)圖

一般來說,器件型號數(shù)字越大,表示器件能提供的邏輯資源規(guī)模越大。在FPGA器件選型時,用戶需要對照此表格,根據(jù)業(yè)務(wù)對邏輯資源(CLB)、內(nèi)部BlockRAM、接口(高速Serdes對數(shù))、數(shù)字信號處理(DSP硬核數(shù))以及今后擴展等多方面的需求,綜合考慮項目最合適的邏輯器件。

5、FPGA開發(fā)流程

FPGA的設(shè)計流程就是利用EDA開發(fā)軟件和編程工具對FPGA芯片進行開發(fā)的過程。FPGA的開發(fā)流程一般如下圖所示,包括功能定義/器件選型、設(shè)計輸入、功能仿真、邏輯綜合、布局布線與實現(xiàn)、編程調(diào)試等主要步驟。

1、功能定義/器件選型:在FPGA設(shè)計項目開始之前,必須有系統(tǒng)功能的定義和模塊的劃分,另外就是要根據(jù)任務(wù)要求,如系統(tǒng)的功能和復(fù)雜度,對工作速度和器件本身的資源、成本、以及連線的可布性等方面進行權(quán)衡,選擇合適的設(shè)計方案和合適的器件類型。

2、 設(shè)計輸入:設(shè)計輸入指使用硬件描述語言將所設(shè)計的系統(tǒng)或電路用代碼表述出來。最常用的硬件描述語言是Verilog HDL。

3、 功能仿真:功能仿真指在邏輯綜合之前對用戶所設(shè)計的電路進行邏輯功能驗證。仿真前,需要搭建好測試平臺并準(zhǔn)備好測試激勵,仿真結(jié)果將會生成報告文件和輸出信號波形,從中便可以觀察各個節(jié)點信號的變化。如果發(fā)現(xiàn)錯誤,則返回設(shè)計修改邏輯設(shè)計。常用仿真工具有Model Tech公司的ModelSim、Sysnopsys公司的VCS等軟件。

4、 邏輯綜合:所謂綜合就是將較高級抽象層次的描述轉(zhuǎn)化成較低層次的描述。綜合優(yōu)化根據(jù)目標(biāo)與要求優(yōu)化所生成的邏輯連接,使層次設(shè)計平面化,供FPGA布局布線軟件進行實現(xiàn)。就目前的層次來看,綜合優(yōu)化是指將設(shè)計輸入編譯成由與門、或門、非門、RAM、觸發(fā)器等基本邏輯單元組成的邏輯連接網(wǎng)表,而并非真實的門級電路。

真實具體的門級電路需要利用FPGA制造商的布局布線功能,根據(jù)綜合后生成的標(biāo)準(zhǔn)門級結(jié)構(gòu)網(wǎng)表來產(chǎn)生。為了能轉(zhuǎn)換成標(biāo)準(zhǔn)的門級結(jié)構(gòu)網(wǎng)表,HDL程序的編寫必須符合特定綜合器所要求的風(fēng)格。常用的綜合工具有Synplicity公司的Synplify/Synplify Pro軟件以及各個FPGA廠家自己推出的綜合開發(fā)工具。

5、布局布線與實現(xiàn):布局布線可理解為利用實現(xiàn)工具把邏輯映射到目標(biāo)器件結(jié)構(gòu)的資源中,決定邏輯的最佳布局,選擇邏輯與輸入輸出功能鏈接的布線通道進行連線,并產(chǎn)生相應(yīng)文件(如配置文件與相關(guān)報告);實現(xiàn)是將綜合生成的邏輯網(wǎng)表配置到具體的FPGA芯片上。由于只有FPGA芯片生產(chǎn)商對芯片結(jié)構(gòu)最為了解,所以布局布線必須選擇芯片開發(fā)商提供的工具。

6、編程調(diào)試:設(shè)計的最后一步就是編程調(diào)試。芯片編程是指產(chǎn)生使用的數(shù)據(jù)文件(位數(shù)據(jù)流文件,Bitstream Generaon),將編程數(shù)據(jù)加載到FPGA芯片中;之后便可進行上板測試。最后將FPGA文件(如.bit文件)從電腦下載到單板上的FPGA芯片中。

6、如何使用FPGA

FPGA開發(fā)完畢,最終得到驗證好的加載文件。輸出加載文件后,即可開始正常業(yè)務(wù)處理和驗證(以軟件加載方式為例,描述整個過程)

1、邏輯加載;

2、單板軟件加載邏輯后,需要復(fù)位邏輯;

3、復(fù)位完成后,軟件需等待等待一段時間至邏輯鎖相環(huán)工作穩(wěn)定;

4、軟件啟動對邏輯的外部RAM、內(nèi)部Block RAM、DDRC等的自檢操作;

5、軟件完成自檢以后,對邏輯所有可寫RAM空間及寄存器進行初始化操作;

6、初始化完畢,軟件參考邏輯芯片手冊配置表項及寄存器;

7、邏輯準(zhǔn)備好,可以開始處理業(yè)務(wù)。

7、FPGA適用場景

FPGA適合非規(guī)則性多并發(fā)、密集計算及協(xié)議解析處理場景,例如人工智能、基因測序、視頻編碼、數(shù)據(jù)壓縮、圖片處理、網(wǎng)絡(luò)處理等各領(lǐng)域的加速。

聲明:本文內(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)注

    1645

    文章

    22050

    瀏覽量

    618618
  • 云計算
    +關(guān)注

    關(guān)注

    39

    文章

    7976

    瀏覽量

    140111
  • 人工智能
    +關(guān)注

    關(guān)注

    1807

    文章

    49029

    瀏覽量

    249603
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    DAQ基礎(chǔ)知識簡介

    DAQ基礎(chǔ)知識簡介.
    發(fā)表于 10-29 19:34

    DAQ基礎(chǔ)知識簡介

    DAQ基礎(chǔ)知識簡介
    發(fā)表于 11-01 20:53

    FPGA基礎(chǔ)知識簡介

    FPGA基礎(chǔ)知識簡介 FPGA技術(shù)的發(fā)展歷史縱觀數(shù)字集成電路的發(fā)展歷史,經(jīng)歷了從電子管、晶體管
    發(fā)表于 02-09 08:34 ?1373次閱讀

    C++語言基礎(chǔ)知識講解

    C++語言基礎(chǔ)知識講解,喜歡的朋友可以下載來學(xué)習(xí)。
    發(fā)表于 01-14 15:30 ?22次下載

    FPGA教程之CPLD與FPGA基礎(chǔ)知識說明

    本文檔詳細(xì)介紹的是FPGA教程之CPLD與FPGA基礎(chǔ)知識說明主要內(nèi)容包括了:一、復(fù)雜可編程邏輯器件簡介二、CPLD的組成與特點三、FPGA
    發(fā)表于 02-27 17:09 ?38次下載
    <b class='flag-5'>FPGA</b>教程之CPLD與<b class='flag-5'>FPGA</b>的<b class='flag-5'>基礎(chǔ)知識</b>說明

    C語言基礎(chǔ)知識講解

    C語言基礎(chǔ)知識講解
    發(fā)表于 05-19 17:39 ?15次下載

    EMC的原理基礎(chǔ)知識講解

    EMC的原理基礎(chǔ)知識講解免費下載。
    發(fā)表于 05-28 16:54 ?45次下載

    華為防雷接地基礎(chǔ)知識講解

    華為防雷接地基礎(chǔ)知識講解
    發(fā)表于 06-03 10:24 ?23次下載

    Oracle數(shù)據(jù)庫基礎(chǔ)知識講解

    Oracle數(shù)據(jù)庫基礎(chǔ)知識講解(肇慶理士電源技術(shù)有限公司圖片)-該文檔為Oracle數(shù)據(jù)庫基礎(chǔ)知識講解文檔,是一份不錯的參考文檔,感興趣的可以看看,,,,,,,,,
    發(fā)表于 09-28 13:39 ?10次下載
    Oracle數(shù)據(jù)庫<b class='flag-5'>基礎(chǔ)知識</b><b class='flag-5'>講解</b>

    FPGA基礎(chǔ)知識----FPGA 簡介

    1. FPGA 簡介第1節(jié) 什么是 FPGAFPGA 的全稱為 Field-Programmable Gate Array,即現(xiàn)場可編程門陣列。 FPGA 是在 PAL、 GAL、
    發(fā)表于 11-30 17:21 ?45次下載
    <b class='flag-5'>FPGA</b><b class='flag-5'>基礎(chǔ)知識</b>----<b class='flag-5'>FPGA</b> <b class='flag-5'>簡介</b>

    量子力學(xué)基礎(chǔ)知識講解

    量子力學(xué)基礎(chǔ)知識講解免費下載。
    發(fā)表于 03-07 16:02 ?0次下載

    CAN總線的基礎(chǔ)知識詳細(xì)講解

    CAN總線的基礎(chǔ)知識詳細(xì)講解。
    發(fā)表于 04-02 17:44 ?14次下載

    基于FPGA的加速基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《基于FPGA的加速基礎(chǔ)知識.pdf》資料免費下載
    發(fā)表于 09-18 10:12 ?0次下載
    基于<b class='flag-5'>FPGA</b>的加速<b class='flag-5'>基礎(chǔ)知識</b>

    FPGA基礎(chǔ)知識介紹

    電子發(fā)燒友網(wǎng)站提供《FPGA基礎(chǔ)知識介紹.pdf》資料免費下載
    發(fā)表于 02-23 09:45 ?34次下載

    FPGA基礎(chǔ)知識及設(shè)計和執(zhí)行FPGA應(yīng)用所需的工具

    本文將首先介紹FPGA基礎(chǔ)知識,包括FPGA的工作原理以及為什么要使用FPGA,然后討論設(shè)計和執(zhí)行F
    的頭像 發(fā)表于 11-11 11:29 ?1821次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>基礎(chǔ)知識</b>及設(shè)計和執(zhí)行<b class='flag-5'>FPGA</b>應(yīng)用所需的工具