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

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

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

3天內不再提示

【學習FPGA必看】一個FPGA小白的自述

潘文明 ? 來源:明德揚吳老師 ? 作者:明德揚吳老師 ? 2022-12-15 11:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

知道明德揚科教是一個偶然,但后來耐心看完明德揚知識大串講系列視頻卻是一個必然。因為做得用心,所以看得放心。

本人是一個純FPGA小白,就連FPGA這個名詞我都是最近才知道,所以如果你也正想入門學習FPGA的話,請耐心看下去吧,相信你看完絕對不會后悔。

因為最近參加了一個集成電路類的比賽,需要用FPGA進行功能的實現,無奈我們專業目前還沒有開設這門課,于是就只能自己開始著手自學了。經過我們老師的推薦,我第一次了解到了明德揚科教,了解到這樣一個這么純粹做技術和教育的機構,免費看完潘老師知識大串講系列視頻后頗有感觸,下面我來向大家分享一下作為一個FPGA小白的學習經歷吧!

首先大家可能會疑問學習FPGA需要什么基礎知識,實話告訴你,基本不需要。我在學習FPGA之前除我們專業開設的模擬電子技術課外,自己只是自學了一下51單片機開發和數字電子技術的一些最簡單基礎的東西,最后發現用到的就是一個二進制和一些基本的門級電路知識,其次就是一種編程思維的培養,但我相信作為想學FPGA的你應該也多少具備一些這類知識吧。如果沒有的話不妨簡單看看吧。

75eb627b3b7a4405bcd4b3475fe29d50~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=Y1LZ56gmnUXxUmgbMi3TZax5sNU%3D

視頻的六個部分

知識大串講系列視頻一共由六個部分組成,分別是:學習誤區、FPGA知識大串講、組合邏輯、D觸發器、時序邏輯和FPGA時序。每個視頻針對性地講一個小點,條理清楚,邏輯清晰,由淺入深,循序漸進,非常適合新手入門。這套視頻不像其他有些視頻一樣很冗長,讓人一看到視頻的時長就望而卻步,這套視頻最長的不過半個小時,最短的也就五分半,讓人看著不會覺得很枯燥。日常刷一個小視頻的時間而已,而且還能學會很多東西,何樂而不為呢?

4dedaf2d316c4ef18c3fca42ddd9af81~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=ngMg1ZeQOvMQPfQf15JziMbiiPI%3D

明德揚知識大串講系列視頻的知識體系

大家可能還會疑惑一個問題:在這么短的時間內真的能學到知識嗎?

誠然,在如此短的時間內想要掌握一門技術有些不太實際,但我看完視頻的經歷告訴我,這套視頻只要你認真看,理解潘老師講的每一個細節,看不明白的地方就反復看看,再結合自己的理解思考一下,有些問題你就會恍然大悟。而且視頻中有些言語非常地道幽默,所以也很讓人容易理解接受。另外潘老師每個視頻只針對一個小點進行講解和分析,所以也很容易聽懂,當然大家也不要有會聽不懂的顧慮了。當然,對于能力比較強的初學者來說1.5倍速播放可能更適合你!

大家都知道,一個工程的好壞不在于代碼量的多少,不是說實現一個功能用的代碼越少越好。評價一個工程的好壞要看綜合出來的電路,如果一個工程所在效率滿足的前提下,所調用的資源最少、可維護性高、拓展性強、代碼精簡便于閱讀,那么這就是一個好的工程。關于代碼,潘老師在視頻中也詳細教了一些方法和思維,以下是我學習后的一些思考和總結。

不要試圖用軟件思維去編寫代碼。因為軟件思維是在單片機編寫程序時運用廣泛的一種思維,主要通過一些串行或并行輸出的代碼去控制單片機處理一些問題,這樣就會涉及到一些諸如延時和初始化這樣的代碼,但在FPGA中則不一樣,在FPGA中是電路的反應,只要一通電就開始執行。在FPGA中也沒有for循環和while循環、高阻態和不定態的說法。關于時序的功能都是通過時鐘來實現的。FPGA是使用Verilog語言進行編寫的,Verilog中文翻譯又叫硬件描述語言,不是一種設計語言。所以我們在做一個FPGA設計之前,其實已經有硬件的電路結構在頭腦里面了,我們只是用Verilog語言把它描述出來而已,絕不是用Verilog設計一門電路出來,這個思維模式是完全不一樣的。

2c377c37cbb14c61917cffeac75d8568~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=bru3ajUGbvVQB1cdJx%2BGa1n%2B0iY%3D

FPGA中是電路的反應

軟件思維編寫的代碼可讀性較差,而且和硬件思維編寫的代碼比起來運行的時候更耗時。

以下是兩者實現一個攝像頭輸入模塊采集功能的代碼對比:

c3e828c80a2f42b3adae0cbc4f36084a~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=%2BkrhAcO18FVUgLLDWVqtzU5RMRE%3D

軟件思維編寫的代碼

31cbf6b5b0154cf8bffcb956093544f1~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=uZGxXzM%2FdnbbLLq4TeCvIIm9OmA%3D

明德揚規范的代碼

可以看出,兩種思維的代碼相形見絀。用軟件思維寫出的代碼不僅結構冗長、可讀性差,而且理解起來也比較麻煩。同樣是實現一個攝像頭輸入模塊采集功能,攝像頭輸入過來有三個信號:時鐘、使能和數據。數據分別用兩個字節的二進制數的值來表示一個像素點中RGB的值,我們主要做的就是把這兩個值通過一個16bit的總線輸入到下一個模塊。軟件思維就是定義一個變量進行加一運算,而明德揚規范中就用一個取反就解決了。這只是一個簡單的例子,如果不夠明顯的話,接下來我們來看一個稍微復雜一點的例子。

現在我們需要實現一個幀頻率的計算,統計兩秒鐘內輸入幀的個數,然后把得到的數除以2就得到一秒鐘的幀頻率。下面我們來一起看看這個功能用兩種不同代碼實現的區別:

2e05b61b58ba425090c92fee03e074bd~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=tPd%2Bnp2XTvrGEij5U5FGLsZhNAs%3D

軟件思維寫出的代碼

b2037715a0e541219e953c5ccf621f4e~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=MeQPfyBFAWHzpKb5byyc4QJbS3w%3D

明德揚規范的代碼

大家不難看出,用軟件思維寫出的代碼不僅繁雜,理解起來也比較困難,而明德揚規范的代碼則顯得更簡潔、高效,效率也是不可同日而語的。

另外我們還不難發現一點,潘老師和明德揚規范的代碼結構和語法非常簡單,很多語法幾乎都只是用得到了if和else這些最簡單的語句,所以我們在學習語法上其實不用花費太多的時間,這也為我們新手入門降低了很多難度,節省了很多寶貴的時間。

b0b04bd1c123485c87b4cdefdd8912ca~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=D%2Bn6FgM%2FZK7WJBV9Blx0pJ9Hols%3D

明德揚規范的代碼結構和語法

另外潘老師個人講課也比較有特點,雖然潘老師普通話不是特別標準,但這并不影響我們對于知識和思維的學習。

潘老師研發經驗非常豐富,曾在華為這種世界500強的公司工作過,做過很多項目的開發,所以實戰經驗豐富,講的很多東西實用性比較強。特別是對于我這種是抱著參加競賽的小白來說幫助很大。

我們都知道,想要提要時鐘頻率就要減小時鐘周期,但因為D觸發器和線路之間傳遞的那部分延時是由物理器件決定的跟器件的工藝和材料等因素有關,我們沒辦法進行修改,我們能做的就是對組合邏輯那部分電路的延時減到最小。這條把延時減到最小的路徑也叫關鍵路徑。

0a10c77efe3b4d11bc5ac25bcdc3b364~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=gKZJLFR8OlAC1BVCCw7iGItU9rQ%3D

關鍵路徑

老師在一開始就講過在FPGA里面的電路是一通電就可以工作,指的是對于最基本的門電路而言的。于是老師就舉了他在海思里面做項目的一個例子:要把一個集成電路跑到2G的頻率!可想而知這需要多么小的時鐘周期,他們的方法就是把所有能拆的組合邏輯都拆成了基本的門電路,甚至連選擇器他們也不放過,只為了一步步提高頻率。就這樣一直不停地拆,直至把任何兩個寄存器之間的延時縮小到最小最小,從而達到就可以達到提高時鐘頻率的目標,這個方法也叫流水線設計。

f712445c22c44dfba4e2c5a200016481~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=vT6EzIXrcYiurv6CzKN8N8VAMLg%3D

減小時鐘周期

潘老師講課還善于聯系現實生活進行分析。在講到關于狀態機的設計時,為了將狀態機設計的目和過程一目了然,于是便聯系生活講到了我們日常生活中常見的自動售貨機的設計。

e78aee5629d746ae8125a699e0b8d332~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=TTs635q03zi7JUHp%2BTpQ%2Bn43kc4%3D

自動售貨機的設計

并且還就這個例子講到了代碼設計的三段論格式,讓設計代碼顯得非常實用高效,便于分析。

d940cab35f1c47f3b74a53ea7d31f03c~noop.image?_iz=58558&from=article.pc_detail&x-expires=1671677963&x-signature=qNHdsb2uQoT5ibjR3FYu0ucZc7c%3D

自動售貨機代碼的設計

總而言之,看完整套視頻后,作為一個小白的我感覺對于FPGA有了一個大概的了解了,讓原本在門外徘徊的我慢慢地就走進了門里。在這里常感謝明德揚科教提供的這個讓我免費學習的機會。

以上就是我看完明德揚知識大串講系列視頻后的一些收獲和總結,希望能給同樣熱愛學習的你帶來一些啟發!也讓我們在學習FPGA的道路上共同進步吧!

審核編輯:湯梓紅

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

    關注

    1660

    文章

    22411

    瀏覽量

    636266
  • 單片機
    +關注

    關注

    6076

    文章

    45495

    瀏覽量

    670291
  • 時序邏輯
    +關注

    關注

    0

    文章

    39

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Microsemi IGLOO2 FPGA與SmartFusion2 SoC FPGA深度剖析

    Microsemi IGLOO2 FPGA與SmartFusion2 SoC FPGA深度剖析 作為名電子工程師,在日常的設計工作中,FPGA與SoC
    的頭像 發表于 02-09 17:20 ?317次閱讀

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

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

    MarketsandMarkets FPGA行業報告,2026~2030 FPGA市場洞察

    , Share & Trends(Report Code:SE 3058)。中國第梯隊 FPGA 開發板和解決方案提供商 ALINX 整理內容如下。 ? FPGA 市場概況 現場可編程門陣列(
    的頭像 發表于 11-20 13:20 ?486次閱讀
    MarketsandMarkets <b class='flag-5'>FPGA</b>行業報告,2026~2030 <b class='flag-5'>FPGA</b>市場洞察

    開源RISC-V處理器(蜂鳥E203)學習(二)修改FPGA綜合環境(移植到自己的Xilinx FPGA板卡)

    定程度上為我們學習提供便利,但反過來說你會忽略很多基本的細節,這部分恰好別人做好的,很多人會陷入學習誤區,使用命令run
    發表于 10-31 08:46

    AI狂飆, FPGA會掉隊嗎? (中)

    在上篇中,我們介紹了FPGA的前面兩特點:硬件可編程、并行與實時,也列舉了這兩特點帶來的諸多機會。在本文中,我們將繼續介紹另外兩特點,以集齊F
    的頭像 發表于 08-08 09:36 ?998次閱讀
    AI狂飆, <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使創新者能夠將成本優化的設計提升到更高的性能水平。
    的頭像 發表于 08-06 11:41 ?4128次閱讀
    Altera Agilex? 3 <b class='flag-5'>FPGA</b>和SoC <b class='flag-5'>FPGA</b>

    FPGA在機器學習中的具體應用

    隨著機器學習和人工智能技術的迅猛發展,傳統的中央處理單元(CPU)和圖形處理單元(GPU)已經無法滿足高效處理大規模數據和復雜模型的需求。FPGA(現場可編程門陣列)作為種靈活且高效的硬件加速平臺
    的頭像 發表于 07-16 15:34 ?2889次閱讀

    怎么結合嵌入式,Linux,和FPGA方向達到均衡發展?

    在嵌入式領域,不少人都懷揣著讓嵌入式、Linux 和 FPGA方向實現均衡發展的夢想,然而實踐中卻面臨諸多挑戰。就像備受矚目的全棧工程師稚暉君,他從大學玩單片機起步,憑借將智能算法融入嵌入式而
    的頭像 發表于 06-25 10:08 ?861次閱讀
    怎么結合嵌入式,Linux,和<b class='flag-5'>FPGA</b>三<b class='flag-5'>個</b>方向達到<b class='flag-5'>一</b><b class='flag-5'>個</b>均衡發展?

    FPGA調試方式之VIO/ILA的使用

    在Vivado中,VIO(Virtual Input/Output)是種用于調試和測試FPGA設計的IP核,它允許設計者通過JTAG接口實時讀取和寫入FPGA內部的寄存器,從而檢查設計的運行狀態并修改其行為。VIO IP核提供
    的頭像 發表于 06-09 09:32 ?3957次閱讀
    <b class='flag-5'>FPGA</b>調試方式之VIO/ILA的使用

    智多晶FPGA設計工具HqFpga接入DeepSeek大模型

    在 AI 賦能工程設計的時代浪潮中,智多晶率先邁出關鍵步——智多晶正式宣布旗下 FPGA 設計工具 HqFpga 接入 DeepSeek 大模型,并推出 FPGA 設計專屬 AI 助
    的頭像 發表于 06-06 17:06 ?1529次閱讀

    FPGA的定義和基本結構

    專用集成電路( ASIC)領域中的種半定制電路而出現的,既解決了定制電路的不足,又克服了原有可編程器件門電路數有限的缺點。 簡而言之, FPGA 就是可以通過編程來改變內部結構的
    的頭像 發表于 05-15 16:39 ?2635次閱讀
    <b class='flag-5'>FPGA</b>的定義和基本結構

    FPGA從0到1學習資料集錦

    :實際上就是乘加器,FPGA 內部可以集成多個乘加器,而般的 DSP 芯片往往每個 core 只有。換言之,FPGA 可以更容易實現多
    發表于 05-13 15:41

    國產FPGA往事

    首先,這篇文章的后半部分,會有廣告:我去年和紫光同創原廠的技術專家寫了本書——《國產FPGA權威開發指南》,我想送些書給到熟悉的、曾
    的頭像 發表于 04-14 09:53 ?803次閱讀
    國產<b class='flag-5'>FPGA</b>往事

    進群免費領FPGA學習資料!數字信號處理、傅里葉變換與FPGA開發等

    進群免費領FPGA學習資料啦!小編整理了數字信號處理、傅里葉變換與FPGA開發等FPGA必看資料,需要的小伙伴可以加小助手(微信:elecf
    發表于 04-07 16:41

    27FPGA實例源代碼

    本資料收集匯總了27FPGA實例源代碼,有需要的可以下載學習! 獲取完整文檔資料可下載附件哦!!??!如果內容有幫助可以關注、點贊、評論支持下哦~
    發表于 03-14 17:31