91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

FPGA設(shè)計流程及原理

e9Zb_gh_8734352 ? 來源:FPGA技術(shù)聯(lián)盟 ? 作者:FPGA技術(shù)聯(lián)盟 ? 2020-11-12 18:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

01

FPGA的設(shè)計流程

FPGA是可編程芯片,因此FPGA的設(shè)計內(nèi)容包括硬件設(shè)計和軟件設(shè)計兩部分。硬件包括FPGA芯片電路、 存儲器、輸入輸出接口電路以及其他設(shè)備,軟件即是相應(yīng)的HDL程序以及最新才流行的嵌入式C程序。

FPGA的開發(fā)流程即是利用EDA開發(fā)軟件以及編程工具對FPGA芯片進行開發(fā)的過程。EDA ( Electronic Design Automation,電子設(shè)計自動化)是充分發(fā)揮LSI性能的關(guān)鍵技術(shù)。理論上,一款FPGA所能達到的性能上限是由制程等物理因素決定的,而在實際應(yīng)用中用戶電路的性能很大程度上取決于器件的架構(gòu)和EDA工具。這就像汽車一樣,無論引擎(制程)多么強勁,都需要配合適當?shù)能圀w(架構(gòu))和駕駛技術(shù)( EDA工具)才能發(fā)揮出極限速度。尤其是與電路實現(xiàn)直接相關(guān)的EDA工具,其對性能的影響不可估量。

FPGA的設(shè)計流程由HDL源代碼的邏輯綜合開始,經(jīng)過工藝映射、邏輯打包、布局布線等過程,最終生成比特流。邏輯綜合將HDL描述轉(zhuǎn)換為門級網(wǎng)表,工藝映射將這個網(wǎng)表轉(zhuǎn)換為查找表級別的網(wǎng)表。邏輯打包是將多個查我表和觸發(fā)器集合到一個邏輯塊的過程。布局布線工具先決定邏輯塊在器件上的位置,然后通過布線結(jié)構(gòu)實現(xiàn)邏輯塊之間的連接。最終,基于這些布局布線信息可以決定FPGA中各個開關(guān)的連接關(guān)系,以此生成比特流。

器件上查找表的輸入數(shù)是既定的(查找表能實現(xiàn)輸人數(shù)不大于自己的任意邏輯),而FPGA的設(shè)計就是要從目標電路的邏輯函數(shù)中不斷分離出既定輸入數(shù)之內(nèi)的邏輯,并將其映射到查找表上。然后將這些查找表通過布線相連, 就可以在FPGA 上實現(xiàn)目標電路。

FPGA和ASIC的區(qū)別在于,ASIC通過組合使用標準單元庫中的邏輯實現(xiàn)電路,而FPGA則使用統(tǒng)一構(gòu)造的查找表。這種區(qū)別也體現(xiàn)在了EDA工具上。下面我們就對這種不同于ASIC的EDA技術(shù)原理進行詳細介紹,具體包括上述的工藝映射、邏輯打包、布局布線。

02

工藝映射

工藝映射是指將不依賴于任何工藝的門級網(wǎng)表轉(zhuǎn)換為由特定FPGA邏輯單元所表示的網(wǎng)表的過程。這里所說的邏輯單元依賴于特定的FPGA架構(gòu),是由查找表或MUX等邏輯電路實現(xiàn)的FPGA上的最小邏輯單位。工藝映射是從HDL開始的邏輯轉(zhuǎn)換的最后一步,因此對最終電路實現(xiàn)的質(zhì)量(面積、速度、功耗等)至關(guān)重要。下面我們就通過工藝映射最具代表性的工具FlowMap,來講解工藝映射的原理。Flow Map是由加州大學(xué)洛杉磯分校叢京生教授(Jason Cong)的研究團隊開發(fā)的工藝映射算法。將目標電路網(wǎng)表轉(zhuǎn)換到k輸入的查找表(k-LUT)的工藝映射過程由下面兩個步驟組成。

(1)分解:門級網(wǎng)標實際上都是以布爾網(wǎng)絡(luò)的形式來表示的。先將布爾網(wǎng)絡(luò)的各個節(jié)點不斷分解,直至輸人數(shù)小于查找表的輸人數(shù)k。

(2)覆蓋:基于過程(1)所得到的布爾網(wǎng)絡(luò),使用某種基準對輸入進行切分,使用k-LUT覆蓋多個節(jié)點。

FlowMap第(2)步的覆蓋過程,是一種可以在多項式時間內(nèi)找到邏輯層數(shù)最優(yōu)解的方法。

03

3、邏輯打包

目前,主流FPGA的邏輯塊都具有多個查找表,因此將查找表高效地打包到邏輯塊的過程是不可或缺的。邏輯打包主要有兩個要點:第一,邏輯塊內(nèi)部布線(局部布線)和邏輯塊外部布線(布線通道中的布線)的延遲相差很大;第二,如果邏輯塊中有查找表空閑,資源使用率就會降低(增加邏輯塊的使用量),因此要盡量在每個邏輯塊內(nèi)填裝更多邏輯。

之前世界上出現(xiàn)了許多可以實現(xiàn)多種性能優(yōu)化的打包工具,但他們的裝箱算法都只能處理單一的查找表結(jié)構(gòu)。近些年的邏輯塊包含了自適應(yīng)查找表等更為復(fù)雜的結(jié)構(gòu)。自適應(yīng)查找表不僅需要在工藝映射時選擇最佳輸入數(shù)的查找表,對裝箱算法也有很大影響。比如,在打包自適應(yīng)查找表的網(wǎng)表時為了改善布通率和延遲,不能只考慮邏輯塊中查找表的數(shù)量,還要考慮主輸入數(shù)量、邏輯塊所允許的查找表模式組合等因素。因此要找到同時滿足邏輯塊數(shù)最少、延遲最小、布線數(shù)最少的解是非常困難的。

VTR(Verilog-to-Routing)中集成的AAPack(ArchitectureAware Packer)就是為了挑戰(zhàn)這個問題而誕生的。VTR系統(tǒng)使用XML的形式建立器件的架構(gòu)模型。其架構(gòu)的定義分為單元結(jié)構(gòu)( physical block,相當于邏輯塊內(nèi)的邏輯單元)和布線結(jié)構(gòu)( interconnect,相當于physical block間的連接關(guān)系和連接方式)。單元結(jié)構(gòu)的描述方式為嵌套式,可以描還含有多個邏輯單元的邏輯塊。使用模式單元還可以表達具有多種模式的結(jié)構(gòu),例如將多輸入查找表拆分為多個少輸人的查找表(多種模式)等。

AAPack實現(xiàn)了對上述架構(gòu)模型的支持,其裝箱算法如下所示。

(1)如果有未打包的查找表,則選其作為種子并確定要插入的邏輯塊。

(2)按照如下算法向當前邏輯塊填裝查找表。

(a)尋找可填裝的候補查找表。

(b)將選擇的查找表填入邏輯塊。

(c)如果邏輯塊還有空位,返回到步驟(2)的(a)。

(3)將裝箱完畢的邏輯塊輸出到文件,返回到步驟(1)。

綜上,AAPack可以對結(jié)構(gòu)復(fù)雜的邏輯塊實現(xiàn)查找表打包功能。

04

布局布線

布局布線是FPGA設(shè)計流程的最后一個步驟——在物理上確定邏輯塊的位置和信號連接路徑。一般來說首先會確定邏輯塊的布局,然后再對邏輯塊間的連接進行布線。

多數(shù)FPGA的邏輯塊都呈二維陣列狀排列,因此邏輯塊布局問題可以視為標準的二次分配問題。然而,此類問題也被公認為是NP問題,通常只能使用SA ( Simulated Annealing)等算法獲取近似解。

布線過程中主要使用兩種布線方法:全局布線和詳細布線。全局布線階段主要決定線網(wǎng)的布線路徑,例如通過哪些通道形成連接。詳細布線則基于全局布線所得的信息,確定路徑具體使用了哪些布線資源、通過了哪些開關(guān)等。

下面我們使用由多倫多大學(xué)開發(fā)、在學(xué)術(shù)界被廣泛應(yīng)用的布局布線工具VPR(Versatile Place and Route)進行介紹。VPR的布線過程如下。

(1)先將邏輯塊、I/O塊隨機放置。

(2)計算當前布局的布線擁擠度。

(3)隨機選擇兩個邏輯塊并對調(diào)其位置。

(4)計算對調(diào)后的布線擁擠度。

(5)比較對調(diào)前后擁擠度的數(shù)值,決定是否接受新的布局。

目前,作為最主要的開源FPGA設(shè)計框架,VPR已經(jīng)發(fā)展到了7.0的版本了,其中也加入了一些更加實用的功能和工具,例如支持進位信號等專用連接、多時鐘域時序分析、功耗分析等。

責任編輯:xj

原文標題:FPGA設(shè)計原理

文章出處:【微信公眾號:FPGA技術(shù)聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

    關(guān)注

    463

    文章

    54024

    瀏覽量

    466355
  • FGPA
    +關(guān)注

    關(guān)注

    1

    文章

    27

    瀏覽量

    16503

原文標題:FPGA設(shè)計原理

文章出處:【微信號:gh_873435264fd4,微信公眾號:FPGA技術(shù)聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    【ALINX 教程】FPGA Multiboot 功能實現(xiàn)——基于 ALINX Artix US+ AXAU25 開發(fā)板

    至安全鏡像(Golden Image)。 適用對象 已掌握 FPGA 基礎(chǔ)開發(fā)(會寫Verilog、會生成bitstream) 熟悉 Vivado 工程流程FPGA 配置機制尚不深入,希望進入
    的頭像 發(fā)表于 01-05 15:41 ?1252次閱讀
    【ALINX 教程】<b class='flag-5'>FPGA</b> Multiboot 功能實現(xiàn)——基于 ALINX Artix US+ AXAU25 開發(fā)板

    使用TinyFPGA-Bootloader將比特流加載到FPGA

    FPGA 設(shè)計中,一個常見但略顯繁瑣的環(huán)節(jié)是:如何方便地將新的比特流加載到 FPGA。尤其是在沒有專用 USB-JTAG/編程芯片或者在低成本板卡中,傳統(tǒng)的編程方式可能需要額外硬件或較復(fù)雜流程
    的頭像 發(fā)表于 12-19 15:20 ?4984次閱讀
    使用Tiny<b class='flag-5'>FPGA</b>-Bootloader將比特流加載到<b class='flag-5'>FPGA</b>

    借助 AI 從流程可視化到流程優(yōu)化的 6 個步驟

    借助 Minitab Solution Center與 Simul8,將日常流程損耗轉(zhuǎn)化為可量化的效能提升 生活各處都看到流程的影子,無論是逛雜貨店、排隊買咖啡,還是收拾行李準備度假。你是否曾發(fā)現(xiàn)
    的頭像 發(fā)表于 12-16 13:51 ?244次閱讀

    MarketsandMarkets FPGA行業(yè)報告,2026~2030 FPGA市場洞察

    2025年10月,全球知名市場研究與商業(yè)洞察權(quán)威咨詢機構(gòu) MarketsandMarkets 發(fā)布?Field-Programmable Gate Array (FPGA) MarketSize
    的頭像 發(fā)表于 11-20 13:20 ?501次閱讀
    MarketsandMarkets <b class='flag-5'>FPGA</b>行業(yè)報告,2026~2030 <b class='flag-5'>FPGA</b>市場洞察

    基于瑞芯微 RK3588 的 ARM 與 FPGA 交互通信實戰(zhàn)指南

    本文圍繞創(chuàng)龍科技研發(fā)的 TL3588-EVM 評估板,詳解瑞芯微 RK3588 與 FPGA 基于 PCIe 總線的通信案例,包括 DMA 與非 DMA 兩種方式。涵蓋案例功能、測試流程、編譯步驟
    的頭像 發(fā)表于 11-04 16:09 ?627次閱讀
    基于瑞芯微 RK3588 的 ARM 與 <b class='flag-5'>FPGA</b> 交互通信實戰(zhàn)指南

    FPGA板下載運行調(diào)試流程

    今天主要介紹一下整個FPGA板下載運行調(diào)試流程。 1、首先,參考網(wǎng)址https://doc.nucleisys.com/hbirdv2/soc_peripherals/ips.html#gpio 第
    發(fā)表于 10-29 06:57

    FPGA板下載調(diào)試流程

    今天主要介紹一下整個FPGA板下載運行調(diào)試流程。 1、首先,參考網(wǎng)址https://doc.nucleisys.com/hbirdv2/soc_peripherals/ips.html#gpio 第
    發(fā)表于 10-29 06:37

    京微齊力新版福晞軟件工具全面優(yōu)化FPGA設(shè)計環(huán)境

    FPGA 設(shè)計開發(fā)過程中,軟件是工程師必不可少的工具,好的軟件開發(fā)環(huán)境可以簡化設(shè)計者的設(shè)計流程,縮短開發(fā)時間,提升整體設(shè)計效率。
    的頭像 發(fā)表于 10-23 17:48 ?4943次閱讀
    京微齊力新版福晞軟件工具全面優(yōu)化<b class='flag-5'>FPGA</b>設(shè)計環(huán)境

    一文詳解xilinx 7系列FPGA配置技巧

    本文旨在通過講解不同模式的原理圖連接方式,進而配置用到引腳的含義(手冊上相關(guān)引腳含義有四、五頁,通過本文理解基本上能夠記住所有引腳含義以及使用場景),熟悉xilinx 7系列配置流程,以及設(shè)計原理圖時需要注意的一些事項,比如flash與FPGA的上電時序。
    的頭像 發(fā)表于 08-30 14:35 ?1.1w次閱讀
    一文詳解xilinx 7系列<b class='flag-5'>FPGA</b>配置技巧

    Altera Agilex? 3 FPGA和SoC FPGA

    Altera Agilex? 3 FPGA和SoC FPGA Altera/Intel Agilex? 3 FPGA和SoC FPGA使創(chuàng)新者能夠?qū)⒊杀緝?yōu)化的設(shè)計提升到更高的性能水平。
    的頭像 發(fā)表于 08-06 11:41 ?4163次閱讀
    Altera Agilex? 3 <b class='flag-5'>FPGA</b>和SoC <b class='flag-5'>FPGA</b>

    智多晶FPGA設(shè)計工具HqFpga接入DeepSeek大模型

    在 AI 賦能工程設(shè)計的時代浪潮中,智多晶率先邁出關(guān)鍵一步——智多晶正式宣布旗下 FPGA 設(shè)計工具 HqFpga 接入 DeepSeek 大模型,并推出 FPGA 設(shè)計專屬 AI 助手——晶小助!這是
    的頭像 發(fā)表于 06-06 17:06 ?1558次閱讀

    適用于Versal的AMD Vivado 加快FPGA開發(fā)完成Versal自適應(yīng)SoC設(shè)計

    設(shè)計、編譯、交付,輕松搞定。更快更高效。 Vivado 設(shè)計套件提供經(jīng)過優(yōu)化的設(shè)計流程,讓傳統(tǒng) FPGA 開發(fā)人員能夠加快完成 Versal 自適應(yīng) SoC 設(shè)計。 面向硬件開發(fā)人員的精簡設(shè)計流程
    的頭像 發(fā)表于 05-07 15:15 ?1337次閱讀
    適用于Versal的AMD Vivado  加快<b class='flag-5'>FPGA</b>開發(fā)完成Versal自適應(yīng)SoC設(shè)計

    FPGA芯片選型的核心原則

    本文總結(jié)了FPGA選型的核心原則和流程,旨在為設(shè)計人員提供決策依據(jù),確保項目成功。
    的頭像 發(fā)表于 04-30 10:58 ?1687次閱讀

    國產(chǎn)FPGA往事

    首先,這篇文章的后半部分,會有一個廣告:我去年和紫光同創(chuàng)原廠的技術(shù)專家寫了一本書——《國產(chǎn)FPGA權(quán)威開發(fā)指南》,我想送一些書給到熟悉的、曾經(jīng)熟悉的、或者還未熟悉的FPGA開發(fā)者同行,請各位開發(fā)者
    的頭像 發(fā)表于 04-14 09:53 ?825次閱讀
    國產(chǎn)<b class='flag-5'>FPGA</b>往事

    CAN報文流程解析

    CAN報文流程解析,直流充電樁上的CAN通訊解析過程
    發(fā)表于 03-24 14:03 ?10次下載