国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

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

一文帶你了解FPGA

電子工程師 ? 來源:FPGA設計論壇 ? 作者:FPGA設計論壇 ? 2020-09-28 11:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

大家好,又到了每日學習的時候了。自1985年問世以來,FPGA這種可編程邏輯器件憑借在性能、上市時間、成本、穩(wěn)定性和長期維護方面的優(yōu)勢,在通信、醫(yī)療、工控和安防等領域占有一席之地。特別是近兩年,隨著云計算、高性能計算和人工智能的繁榮,擁有先天優(yōu)勢的FPGA更是得到了前所未有的關注。近幾年隨著國家開始大力發(fā)展實業(yè),國內(nèi)集成電路行業(yè)發(fā)展越來越好,隨之由于用戶對性能的要求越來越高,F(xiàn)PGA的可編程、高速度、低功耗、較低的二次開發(fā)成本的優(yōu)越特性,帶動了FPGA行業(yè)的發(fā)展,有很多同學們開始自學FPGA。

首先,先來了解一下FPGA,F(xiàn)PGA:Field-Programmable Gate Array,中文名字:現(xiàn)場可編程門陣列。FPGA由六部分組成:可編程輸入/輸出單元、基本可編程邏輯單元、嵌入式塊RAM、豐富的布線資源、底層嵌入功能單元和內(nèi)嵌專用硬核。英特爾首席執(zhí)行官科再奇曾這樣描述:“你可以把FPGA想象成一堆gate,能夠隨時編程。FPGA可以用作多個領域的加速器,例如在加密的同時進行面部搜索,并能在微秒內(nèi)重新編程。其成本遠低于大規(guī)模單個定制部件,并具有更高的靈活性。”

FPGA是可編程器件,與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,具有不同的結(jié)構,F(xiàn)PGA利用小型查找表(16×1RAM)來實現(xiàn)組合邏輯,每個查找表連接到一個D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動其他邏輯電路或驅(qū)動I/O,由此構成了既可實現(xiàn)組合邏輯功能又可實現(xiàn)時序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲單元加載編程數(shù)據(jù)來實現(xiàn)的,存儲在存儲器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實現(xiàn)的功能,F(xiàn)PGA允許無限次的編程。

下圖為四輸入查找表結(jié)構。


下圖為FPGA的結(jié)構

關于FPGA概念以及結(jié)構等等的介紹就到這里,如果大家還想要詳細了解,可以自己去查閱資料。接下來,咱們就來聊聊初學FPGA時需要注意哪些知識點或者小細節(jié),希望對大家的學習有所幫助。 區(qū)別一下軟硬件幾種類型

通用應用軟件
a. 軟件匯編語言(Assembly Language)是面向機器的程序設計語言。
b. 主要關心邏輯和抽象,關心代碼量大了之后復雜度可控。硬件資源較多,硬件性能差別較大,不需要針對特定資源設計。
c. 邏輯分層較多,來源于抽象的性能損耗可以接受。甚至于現(xiàn)在很多主流語言構建在虛擬機和解釋器上。
d. 非實時。
e. 不需要了解底層硬件原理。

嵌入式軟件(面向硬件編程)
a. 時序可控。大部分場景要求實時,因為要滿足硬件時序。非搶占的任務調(diào)度和中斷隊列都會引入定時的偏差。
b. 資源開銷可控。因為嵌入式硬件環(huán)境大多只有有限的 RAM 和 Flash 資源。
c. 針對特定硬件環(huán)境設計。
d. 所有代碼上的抽象和優(yōu)化都必須是零損耗或者損耗可控(可以參考 rust 語言)。比較典型的是 GC 會引入嚴重的時序和資源不可控,所以系統(tǒng)語言很少使用。

數(shù)字邏輯電路設計(硬件描述性語言)
a. 數(shù)字電路設計不是編程,是設計的時候先有電路,再用語言描述出來。
b. 時序要求更嚴,需要考慮建立時間和保持時間,及隨之而來的亞穩(wěn)態(tài)。
c. Coding style 會明顯的影響電路性能。邏輯都一樣,但是 DFF 的位置不一樣,就可能導致時序不滿足。
d. 并行化。執(zhí)行順序不再是 CPU 的順序執(zhí)行,而是多個并行的流水線。比如快速傅立葉 FFT。比如路由器的 CAM,單次動作完成整表查表。

1. FPGA學習時使用的 VHDL 和 verilog HDL 不是編程語言,而是一種可綜合的硬件描述語言,我們在描述的時候一定要明白所要設計的是一個怎樣的電路。

2. 當今社會做開發(fā)用的 Verilog HDL 語言偏多,Verilog HDL 支持兩種進程 initial 和 always 進程,前者只能用在TB(TestBench)中,后者才是可綜合的。

3. 阻塞與非阻塞指都是相對于進程本身而言的,簡單來講,阻塞用在描述組合邏輯電路,而非阻塞用于時序邏輯電路。

4. 使用進程模塊的電路類型:
組合電路-----對組合邏輯中使用的所有輸入敏感
例子:
always@(a or b or c)

時序電路-----僅對時鐘和控制信號敏感
例子:
always @(posedge clk or negedge rst_n)
always既可以描述組合邏輯,也可以描述時序邏輯。

5. 可以用case語句完成多路選擇器的功能,但是列舉的情況一定要考慮全,否則會產(chǎn)生Latch。

6. verilog中有兩類子程序:
函數(shù)和任務
函數(shù)-----根據(jù)輸入返回一個值
-----產(chǎn)生組合邏輯
-----用在表達式中:assign mult_out=mult(ina,inb);
-----函數(shù)是組合邏輯,不能含有任何延時,事件,或者時序控制聲明,至少有一個輸入變量
總是返回一個變量
-----可以調(diào)用函數(shù),但是不能調(diào)用任務。

任務-----可以是組合或者寄存器
-----以聲明的形式調(diào)用任務:stm_out(nxt,first,sel,filter);
-----與其他編程語言中的任務相似
-----與函數(shù)不同任務不需要傳遞參數(shù),而函數(shù)要傳遞參數(shù)
-----可以調(diào)用任務和函數(shù)。
----- 可以含有任何延時,事件,或者時序控制聲明
-----返回零個或者多個數(shù)值
可綜合的verilog語法子集是指用硬件可以實現(xiàn)的語法。力求用最簡單的語言實現(xiàn)最復雜的硬件電路。

7. 硬件都有相應的輸入輸出的接口,或者是輸入或者是輸出,或者是輸入輸出。

8. reg 型是指時序邏輯里面的一個寄存數(shù)據(jù)(寄存機類型),wire 是組合邏輯里面的一條連線(線型)。

9. define 定義了一個參數(shù),在整個工程里面都是有效地使用。parameter 定義的一個參數(shù)只在當前文件里面進行使用。

10. 各種邏輯操作符,移位操作符,算術操作符大多是可綜合的。

11. assign一般是只針對于組合邏輯,而always語句既可以用于組合邏輯又可以用于時序邏輯,always模塊的敏感表,如果是電平,則為組合邏輯,如果是沿信號posedge或者negedge 則為時序邏輯。

12. begin----end和C語言里面的{}是類似的。

13. for 語句-----循環(huán)因為綜合出來的結(jié)果可能比較浪費資源,所以就一般用的比較少,但是在一些特定的設計中可以起到事半功倍的效果。

14. Total logic element 總共消耗的邏輯單元。

15. 行為級仿真可以理解為功能仿真(前仿真);布局布線后仿真可以理解為時序仿真(后仿真)。

16. 時序邏輯中時鐘和復位信號是必須的。

17. 注意wire賦值的一個問題如下:
wire[2:0] key_an=key_rst_r&(~key_rst)
其相當于如下的一個賦值語句
wire[2:0] key_an;
assign key_an=key_rst_r&(~key_rst);
其實現(xiàn)的效果是一樣的。
此種方法為:脈沖邊沿檢測法。

18. 實際工作中,除了描述仿真測試激勵(Testbench)時使用for循環(huán)語句外,極少在RTL級編碼中使用for循環(huán),這是因為for循環(huán)會被綜合器展開為所有變量情況的執(zhí)行語句,每個變量獨立占用寄存器資源,不能有效的復用硬件邏輯資源,造成巨大的浪費。一般常用case語句代替。

19. FPGA一般觸發(fā)器資源比較豐富,而CPLD組合邏輯資源更豐富。

20. FPGA使用的兩種語言:VHDL 和 verilog HDL 。
VHDL 為美國國防部發(fā)明,用于較多的設計人員合作完成的特大型項目(一百萬門以上),語法/結(jié)構比較嚴謹,因為編寫出的模塊風格清晰。
verilog HDL 第三方支持工具較多,語法結(jié)構比VHDL簡單,學習來比較容易,仿真工具比較好用,測試激勵模塊容易編寫。

21. 時序設計的實質(zhì):電路設計的難點在于時序設計,實質(zhì)就是滿足么一個觸發(fā)器 建立時間/保持時間 的要求。
(備注:建立時間:觸發(fā)器在時鐘上升沿到來之前,其數(shù)據(jù)輸入端的數(shù)據(jù)必須保持不變的最小時間;保持時間:觸發(fā)器在時鐘上升沿到來之后,觸發(fā)器在時鐘上升沿到來之前,其數(shù)據(jù)輸入端的數(shù)據(jù)必須保持不變的最小時間。)

22. 為什么觸發(fā)器要滿足建立時間和保持時間?
因為觸發(fā)器內(nèi)部數(shù)據(jù)的形成是需要一定的時間的,如果不滿足建立和保持時間,觸發(fā)器將進入亞穩(wěn)態(tài),進入亞穩(wěn)態(tài)后觸發(fā)器的輸出將不穩(wěn)定,在0和1之間變化,這時需要經(jīng)過一個恢復時間,其輸出才能 穩(wěn)定,但穩(wěn)定后的值并不一定是你的輸入值。這就是為什么要用兩級觸發(fā)器來同步異步輸入信號。這樣做可以防止由于異步輸入信號對于本級時鐘可能不滿足建立保持時間而使本級觸發(fā)器產(chǎn)生的亞穩(wěn)態(tài)傳播到后面邏輯中,導致亞穩(wěn)態(tài)的傳播。

23. 鎖存器(latch)和觸發(fā)器(flip-flop)區(qū)別?
電平敏感的存儲器件稱為鎖存器。可分為高電平鎖存器和低電平鎖存器,用于不同時鐘之間的信號同步。
有交叉耦合的門構成的雙穩(wěn)態(tài)的存儲原件稱為觸發(fā)器。分為上升沿觸發(fā)和下降沿觸發(fā)。可以認為是兩個不同電平敏感的鎖存器串連而成。前一個鎖存器決定了觸發(fā)器的建立時間,后一個鎖存器則決定了保持時間。

24. and so on.

最后,我們來簡單聊一聊FPGA的應用范圍。FPAG的應用越來越廣泛,航天航空、汽車駕駛、醫(yī)療、廣播、測量測試、消費電子工業(yè)控制、計算機設備、武器裝備等等。從應用場景角度分析,我們可以看到隨著谷歌的阿爾法狗打敗了人類圍棋冠軍后,深度學習已經(jīng)從神壇走下來,越來越多的人開始認識到深度學習可能會改變未來的生活,成為未來科技發(fā)展的方向;而FPGA設計工具使其對深度學習領域經(jīng)常使用的上層軟件兼容性更強,F(xiàn)PGA正是助力深度學習的一大技術。不同于CPU的是,F(xiàn)PGA和GPU內(nèi)都有大量的計算單元,因此它們的計算能力都很強。在進行神經(jīng)網(wǎng)絡運算的時候,兩者的速度會比CPU快很多。但是GPU由于架構固定硬件原生支持的指令固定了,而FPGA則是可編程的。
隨著國家綜合實力越來越強大,國民經(jīng)濟越來越好,F(xiàn)PGA從之前的運用廣泛的軍工行業(yè)在慢慢延伸到民用行業(yè),并且會越來越廣泛。

原文標題:FPGA學習需要注意的知識點

文章出處:【微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

責任編輯:haq

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

    關注

    1660

    文章

    22412

    瀏覽量

    636343

原文標題:FPGA學習需要注意的知識點

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    帶你徹底搞懂K8s網(wǎng)絡

    說實話,K8s 網(wǎng)絡是我見過最讓新手頭疼的知識點,沒有之。記得我剛接觸 K8s 那會兒,看著流量在 Pod、Service、Node 之間穿梭,完全是臉懵逼。后來踩了無數(shù)坑,熬了無數(shù)夜,總算把這套網(wǎng)絡模型摸透了。今天這篇文章,我會用最接地氣的方式,
    的頭像 發(fā)表于 02-06 10:15 ?448次閱讀

    FPGA 入門必看:Verilog 與 VHDL 編程基礎解析!

    很多開發(fā)者第次接觸FPGA,都會有同樣的疑問:FPGA是硬件,不是軟件,怎么寫程序?答案就是用硬件描述語言(HDL),最常用的就是Verilog和VHDL。今天,我們就帶你入門,搞清
    的頭像 發(fā)表于 01-19 09:05 ?454次閱讀
    <b class='flag-5'>FPGA</b> 入門必看:Verilog 與 VHDL 編程基礎解析!

    搞清 BLE 藍牙 UUID

    帶你搞清楚藍牙 UUID ...... 矜辰所致
    的頭像 發(fā)表于 12-18 11:23 ?4264次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>搞清 BLE 藍牙 UUID

    ALM(應用生命周期管理)解析:了解其概念、關鍵階段及Perforce ALM工具推薦

    什么是ALM(應用生命周期管理)?它遠不止是SDLC!了解其概念、關鍵階段以及如何借助Perforce ALM這類工具,實現(xiàn)端到端的可追溯性、加速發(fā)布并保障合規(guī)性。
    的頭像 發(fā)表于 09-19 11:03 ?1849次閱讀
    ALM(應用生命周期管理)解析:<b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>了解</b>其概念、關鍵階段及Perforce ALM工具推薦

    了解sbRIO板卡的使用方法

    NI 的 sbRIO 系列是款高度集成的嵌入式單板控制器,其核心特點是將實時處理器、用戶可編程FPGA和豐富的工業(yè)I/O接口三者緊密結(jié)合在塊緊湊的板卡上。
    的頭像 發(fā)表于 09-05 15:35 ?3786次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>了解</b>sbRIO板卡的使用方法

    帶你了解海凌科毫米波雷達

    什么是毫米波雷達?毫米波雷達有什么特點?毫米波雷達有什么作用?海凌科有哪些系列毫米波雷達?帶你了解!毫米波的定義毫米波是指頻率在30GHz至300GHz之間、波長為1~10毫米的電
    的頭像 發(fā)表于 08-11 12:04 ?1831次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>帶你</b><b class='flag-5'>了解</b>海凌科毫米波雷達

    帶你了解什么是機器視覺網(wǎng)卡

    機器視覺網(wǎng)卡通常指的是在機器視覺系統(tǒng)中用于連接工業(yè)相機到計算機的以太網(wǎng)卡。它的核心作用是實現(xiàn)高速、穩(wěn)定、低延遲的圖像數(shù)據(jù)傳輸。以下是關于機器視覺網(wǎng)卡的關鍵信息:1.核心功能:高速圖像傳輸:處理來自千兆以太網(wǎng)或萬兆以太網(wǎng)相機產(chǎn)生的大量圖像數(shù)據(jù)流。萬兆網(wǎng)卡能提供更高的帶寬,滿足高分辨率、高幀率相機的需求。支持GigEVision協(xié)議:這是機器視覺領域最重要的工業(yè)
    的頭像 發(fā)表于 07-09 16:18 ?668次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>帶你</b><b class='flag-5'>了解</b>什么是機器視覺網(wǎng)卡

    帶你了解電源測試系統(tǒng)的功能!

    在當今電子與電力技術飛速發(fā)展的時代,各類電子設備、電力系統(tǒng)以及新能源相關產(chǎn)品的研發(fā)、生產(chǎn)和維護過程中,電源測試系統(tǒng)扮演著至關重要的角色。本文將帶你了解源儀電子的電源測試系統(tǒng)的功能。
    的頭像 發(fā)表于 07-02 09:10 ?978次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>帶你</b><b class='flag-5'>了解</b>電源測試系統(tǒng)的功能!

    帶你了解嵌入式主板

    嵌入式主板是專為嵌入式系統(tǒng)設計的計算機主板。它與我們常見的臺式機或筆記本電腦主板有著顯著的區(qū)別,核心在于它不是為了通用計算,而是為了執(zhí)行特定任務而設計、集成到更大的設備或系統(tǒng)中。以下是嵌入式主板的關鍵特點和信息:1.核心定義與目的:專用性:設計用于執(zhí)行特定功能(如控制、監(jiān)控、數(shù)據(jù)處理、通信),而不是運行通用操作系統(tǒng)(如Windows)進行各種軟件應用。集成性
    的頭像 發(fā)表于 06-30 16:12 ?709次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>帶你</b><b class='flag-5'>了解</b>嵌入式主板

    了解電壓諧波

    我們經(jīng)常會聽到諧波,到底什么是諧波,怎么定義的?為什么要關注諧波?什么時候關注諧波?諧波如何計算或標準規(guī)定的諧波的算法是怎樣的?GB關于電壓諧波又是如何評估的?帶著諸多的問題,我們一起來了解
    的頭像 發(fā)表于 06-28 17:23 ?4730次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>了解</b>電壓諧波

    帶你了解工業(yè)計算機尺寸

    項艱巨的任務。本博客將指導您了解關鍵的工業(yè)計算機尺寸、使用案例。關鍵工業(yè)計算機外形要素及其使用案例、工業(yè)微型PC尺寸范圍:寬度:100毫米-180毫米深度:10
    的頭像 發(fā)表于 04-24 13:35 ?1045次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>帶你</b><b class='flag-5'>了解</b>工業(yè)計算機尺寸

    帶你了解芯片開封技術

    芯片開封的定義芯片開封,即Decap,是種對完整封裝的集成電路(IC)芯片進行局部處理的工藝。其目的是去除芯片的封裝外殼,暴露出芯片內(nèi)部結(jié)構,同時確保芯片功能不受損。芯片開封是芯片故障分析實驗
    的頭像 發(fā)表于 04-07 16:01 ?1295次閱讀
    <b class='flag-5'>帶你</b><b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>了解</b>芯片開封技術

    帶你全面了解陶瓷電路板厚膜工藝

    陶瓷電路板厚膜工藝是種先進的印刷電路板制造技術,廣泛應用于電子、通信、航空航天等領域。本文將詳細介紹陶瓷電路板厚膜工藝的原理、流程、優(yōu)勢以及應用,帶您全面了解技術……
    的頭像 發(fā)表于 03-17 16:30 ?1412次閱讀

    【干貨】什么是Node-RED?帶你了解

    什么是Node-RED?首先我們來認識下什么是Node-RED。Node-RED是個基于Node.js的開源可視化編程工具,于2013年由IBM公司推出。它可以通過瀏覽器的圖形化界面進行編程
    的頭像 發(fā)表于 03-13 19:32 ?1958次閱讀
    【干貨】什么是Node-RED?<b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>帶你</b><b class='flag-5'>了解</b>!

    帶你了解電氣安規(guī)測試

    電氣安規(guī)測試的重要性電氣安規(guī)測試是產(chǎn)品制造過程中不可或缺的環(huán)節(jié)。盡管它會占用定的生產(chǎn)時間,但其意義遠超過時間成本。通過電氣安規(guī)測試,可以有效降低產(chǎn)品因電氣危害導致召回的風險。在當今競爭激烈
    的頭像 發(fā)表于 03-13 11:08 ?950次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>帶你</b><b class='flag-5'>了解</b>電氣安規(guī)測試