久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 785|回復(fù): 0
收起左側(cè)

FPGA 開發(fā)專題 | 初識(shí) FPGA 開發(fā)流程和仿真工具

[復(fù)制鏈接]
ID:723674 發(fā)表于 2023-8-22 11:31 | 顯示全部樓層 |閱讀模式
本帖最后由 電子愛好者沒錯(cuò) 于 2023-8-22 20:07 編輯

FPGA 開發(fā)專題 | 初識(shí) FPGA 開發(fā)流程和仿真工具
目錄:
  • 一、FPGA 開發(fā)流程
  • 二、FPGA 仿真工具
  • 三、開設(shè) FPGA 專題咯D:\Xzhao\Documents\OfficialAccounts\Article\2023.07.01\photos\Apolong_at_Shougang_Jiaohuachang_(20230322140939).jpg

sss.jpg
圖:北京首鋼園內(nèi)的無人駕駛小巴士

全文 2031 字,閱讀大約需要 4 分鐘


第一臺(tái)真正意義上的自動(dòng)駕駛汽車最早可追溯至 1980 年代,隨著近年來人工智能和新型傳感器(硬件)的快速發(fā)展,自動(dòng)駕駛相關(guān)行業(yè)迅速進(jìn)入紅海。盡管相關(guān)技術(shù)已經(jīng)逐步趨于成熟,但如何更快地識(shí)別路況、提高系統(tǒng)判別實(shí)時(shí)性一直是學(xué)術(shù)界和工業(yè)界追求的目標(biāo)。

FPGA 作為一種半定制化電路,具有 ASCII 芯片所沒有的可編程的靈活性,又具有一般 CPU 所不具備的硬件層并行數(shù)據(jù)處理的優(yōu)勢(shì),廣泛用于圖像處理、機(jī)器視覺、無人駕駛等領(lǐng)域。在某種程度上,F(xiàn)PGA 可兼顧人工智能的大量計(jì)算需求和工業(yè)應(yīng)用中低延時(shí)的要求。從前幾年神經(jīng)網(wǎng)絡(luò)軟件算法的爆火到近些年來 “用 FPGA 加速神經(jīng)網(wǎng)絡(luò) ” 逐漸火出圈,讓我們看到了技術(shù)發(fā)展自上而下的革新,從軟件到硬件,從高層抽象到底層電路,硬件的天花板作用越發(fā)彰顯。


本文首發(fā)于在下石同學(xué) 未經(jīng)授權(quán) 不得轉(zhuǎn)載

文 | 在下石同學(xué)



一、FPGA 開發(fā)流程

FPGA (Field Programmable Gate Array),即現(xiàn)場(chǎng)可編程邏輯陣列。


現(xiàn)場(chǎng)可編程邏輯門陣列Field Programmable Gate Array,縮寫為FPGA),它以PALGALCPLD可編程邏輯器件為技術(shù)基礎(chǔ)發(fā)展而成。作為特殊應(yīng)用集成電路中的一種半定制電路,它既彌補(bǔ)全定制電路不足,又克服原有可編程邏輯控制器邏輯門數(shù)有限的缺點(diǎn)。


TE0720-03-2IF_1.jpg

圖:ZYNQ-7020 核心板


FPGA 作為一種半定制化電路,具有 ASCII 芯片所沒有的可編程的靈活性,又具有一般 CPU 所不具備的硬件層并行數(shù)據(jù)處理的優(yōu)勢(shì),廣泛用于圖像處理、機(jī)器視覺、無人駕駛等領(lǐng)域。在某種程度上,F(xiàn)PGA 可兼顧人工智能的大量計(jì)算需求和工業(yè)應(yīng)用中低延時(shí)的要求。從前幾年神經(jīng)網(wǎng)絡(luò)軟件算法的爆火到近些年來 “用 FPGA 加速神經(jīng)網(wǎng)絡(luò) ” 逐漸火出圈,讓我們看到了技術(shù)發(fā)展自上而下的革新,從軟件到硬件,從高層抽象到底層電路,硬件的天花板作用越發(fā)彰顯。


相對(duì)于一般編程語言開發(fā),F(xiàn)PGA 的開發(fā)過程更為繁瑣,盡管 FPGA 也有 Verilog/VHDL 這樣的代碼語言去描述和定義邏輯功能,但 Verilog/VHDL 是硬件描述語言,跟 C/C++ 不同的是,經(jīng)過后續(xù)的綜合以后,可以直接生成對(duì)應(yīng)的電路。

FPGA 的開發(fā)流程主要包括 7 個(gè)部分,如下圖所示:

Snipaste_2023-07-02_11-34-37.png

圖:FPGA 開發(fā)流程

下面簡(jiǎn)要聊聊各個(gè)部分的作用(敲重點(diǎn)!)


  • Verilog/VHDL 代碼:我們使用硬件描述語言去編寫對(duì)應(yīng)的電路模塊,實(shí)現(xiàn)邏輯功能,這部分是整個(gè)設(shè)計(jì)中占比最大的一環(huán)
  • RTL 級(jí)仿真:這部分是功能仿真,類似于 C/C++ 開發(fā)中的 debug 功能,我們需要對(duì)寫好的 Verilog/VHDL 代碼進(jìn)行測(cè)試和檢查,以驗(yàn)證我們的功能模塊沒有出現(xiàn)邏輯錯(cuò)誤,一般會(huì)編寫 Testbench 代碼并編譯生成波形文件,通過波形文件就可以判斷邏輯功能是否有誤
  • 邏輯綜合優(yōu)化:綜合是將上述過程中較為高級(jí)的硬件描述語言轉(zhuǎn)化為更為底層的實(shí)現(xiàn),最終編譯成由與/或/非門、RAM、觸發(fā)器等基本邏輯單元組成的網(wǎng)表,但并不代表真實(shí)的門電路
  • 綜合后仿真:只考慮邏輯和功能的實(shí)現(xiàn)是不嚴(yán)謹(jǐn)?shù)模瑢?shí)際上真實(shí)門電路的信號(hào)傳輸一定伴隨著延時(shí),會(huì)導(dǎo)致各種競(jìng)爭(zhēng)冒險(xiǎn)和時(shí)序紊亂的現(xiàn)象發(fā)生,這部分會(huì)把標(biāo)準(zhǔn)的延時(shí)參數(shù)送入仿真模型中二次核驗(yàn),更加貼近真實(shí)情況
  • 實(shí)現(xiàn)與布局布線:通過以上過程已經(jīng)得到了電路的網(wǎng)表,實(shí)現(xiàn)和布局布線的過程就是把網(wǎng)表配置到具體的 FPGA 芯片中
  • 時(shí)序仿真:也稱為后仿真,時(shí)序仿真把上一步布局布線的延時(shí)都考慮進(jìn)去,并標(biāo)注到網(wǎng)表中,是芯片延時(shí)信息的最真實(shí)、最準(zhǔn)確的反映
  • 板級(jí)仿真與驗(yàn)證:一般用于高速信號(hào),對(duì)信號(hào)完整性等進(jìn)行綜合分析


我們可以看到,F(xiàn)PGA 的開發(fā)過程是非常折騰的,通過 RTL 級(jí)仿真、綜合后仿真、時(shí)序仿真三大仿真實(shí)現(xiàn)從邏輯到門電路時(shí)延的反饋和調(diào)整,好在大部分工作都由 EDA 軟件工具幫我們完成了,實(shí)際上,在大部分開發(fā)中,整個(gè)流程中最核心的還是前兩部分,Verilog/VHDL 代碼和RTL 級(jí)仿真。


二、FPGA 仿真工具

FPGA 的仿真工具有很多,但由于 FPGA 芯片本身專利問題及制造的差異性,基本上某一具體型號(hào) FPGA 芯片的開發(fā)工具和該器件廠商是綁定的,不像 ARM 這種嵌入式通用處理器有更加完善和通用的開發(fā)工具鏈。當(dāng)然,對(duì)于一般 Verilog/VHDL 的 RTL 級(jí)層面仿真,不涉及具體的芯片型號(hào),市面上的仿真工具都可以使用,常見的如大牌廠商 Altera(現(xiàn)已被 Intel 收購)家的 Quartus,Xilinx 家的 Vivado,Mentor Graphics 家的  ModelSim,Cadence 家的 NCSim,開源的 Icarus Verilog 以及一些國產(chǎn)方案等。


注:本文用到的所有軟件相關(guān)參考鏈接都會(huì)附在文末

工具
廠商
說明
Quartus
Altera

Vivado
Xilinx

ModelSim
Mentor Graphics
PE、DE、SE 三個(gè)版本,非常流行
NCSim
Cadence
Incisive 工具套件,用于 ASIC 設(shè)計(jì)
Icarus Verilog
GNU GPL
開源、輕量
TangDynasty
上海安陸科技
國產(chǎn)廠商
Pango Design Suite
紫光同創(chuàng)(深圳)
國產(chǎn)廠商
procise
復(fù)旦微(上海)
國產(chǎn)廠商


Altera 和 Xilinx 家的 FPGA 是市場(chǎng)占有率最高的,涵蓋了 FPGA 設(shè)計(jì)的整個(gè)流程,ModelSim 是 FPGA 仿真最受歡迎的軟件,非常流行, Icarus Verilog 支持 GPL 協(xié)議,開源免費(fèi)且輕量,也是 FPGA 開發(fā)中 RTL 級(jí)仿真值得使用的軟件,搭配 GTKwave,出仿真圖非常方便,功能強(qiáng)大。


三、開設(shè) FPGA 專題咯

本文簡(jiǎn)單介紹了 FPGA 開發(fā)的基本流程和常見的仿真工具,太長(zhǎng)時(shí)間沒更新了所以趕緊水一篇。

開設(shè) FPGA 專題咯,就當(dāng)作 FPGA 專題的開篇吧!

電荷式比心.png


文中涉及 FPGA 軟件工具參考網(wǎng)站:


除了在51黑電子論壇發(fā)帖,大家也可以關(guān)注我的微信公眾號(hào):在下石同學(xué)


讓技術(shù)有深度,讓科普有溫度~ 旨在分享電子電路、嵌入式、編程相關(guān)的筆記和教程,包括:電子電路設(shè)計(jì)、PCB設(shè)計(jì)、通信協(xié)議、嵌入式編程等。還會(huì)不定期分享有趣好玩的開源項(xiàng)目 平時(shí)學(xué)習(xí)工作很忙,偶爾鴿一下~ 會(huì)堅(jiān)持更新的!


微信掃碼可以關(guān)注我的公眾號(hào)(哈哈純技術(shù)分享,不存在任何打廣告行為,放心食用):


Snipaste_2023-08-22_19-56-41.png

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: www.夜夜草| 久久av一区二区三区 | 国产精品久久久久aaaa | 国产视频线观看永久免费 | 国产精品一区二区久久 | 国产精品国产成人国产三级 | 久久精品国产v日韩v亚洲 | 久久一本 | 国产精品免费大片 | 国产黄色免费网站 | 91av在线视频观看 | 99国内精品久久久久久久 | 超碰3| 欧美中文一区 | 1区2区3区视频 | 国产一区二区视频在线 | 免费特级黄毛片 | 黄色免费av | 一级毛片在线播放 | 成人一区二区电影 | 91免费视频 | 亚洲乱码一区二区三区在线观看 | 久久久久久久av麻豆果冻 | www.天天操 | 中文字幕国产精品 | 全部免费毛片在线播放网站 | 欧美区日韩区 | 中文字幕高清一区 | 无码一区二区三区视频 | 亚洲精品乱码久久久久久黑人 | 欧美日韩一卡 | 国产精品一区三区 | 亚洲日本欧美日韩高观看 | 日韩中文字幕在线观看 | 午夜丁香视频在线观看 | 成人在线精品 | japanhdxxxx裸体 | 国产精品成人69xxx免费视频 | 成人三级视频在线观看 | 黄色三级在线播放 | 日韩三级在线观看 |