在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

為什么說學好FPGA,首先要掌握HDL

lPCU_elecfans ? 來源:互聯網 ? 作者:佚名 ? 2018-05-28 09:09 ? 次閱讀

入門首先要掌握HDL(HDL=verilog+VHDL)

第一句話是:還沒學數電的先學數電。然后你可以選擇verilog或者VHDL,有C語言基礎的,建議選擇VHDL。因為verilog太像C了,很容易混淆,最后你會發現,你花了大量時間去區分這兩種語言,而不是在學習如何使用它。當然,你思維能轉得過來,也可以選verilog,畢竟在國內verilog用得比較多。

接下來,首先找本實例抄代碼。抄代碼的意義在于熟悉語法規則和編譯器(這里的編譯器是硅編譯器又叫綜合器,常用的編譯器有:Quartus、ISE、Vivado、Design Compiler 、Synopsys的VCS、iverilog、Lattice的Diamond、Microsemi/Actel的Libero、Synplify pro),然后再模仿著寫,最后不看書也能寫出來。編譯完代碼,就打開RTL圖,看一下綜合出來是什么樣的電路。

HDL是硬件描述語言,突出硬件這一特點,所以要用數電的思維去思考HDL,而不是用C語言或者其它高級語言,如果不能理解這句話的,可以看《什么是硬件以及什么是軟件》。在這一階段,推薦的教材是《Verilog傳奇》、《Verilog HDL高級數字設計》或者是《用于邏輯綜合的VHDL》。不看書也能寫出個三段式狀態機就可以進入下一階段了。

此外,你手上必須準備Verilog或者VHDL的官方文檔,《verilog_IEEE官方標準手冊-2005_IEEE_P1364》、《IEEE Standard VHDL Language_2008》,以便遇到一些語法問題的時候能查一下。

獨立完成中小規模的數字電路設計

現在,你可以設計一些數字電路了,像交通燈、電子琴、DDS等等,推薦的教材是夏老《Verilog 數字系統設計教程》(第三版)。在這一階段,你要做到的是:給你一個指標要求或者時序圖,你能用HDL設計電路去實現它。這里你需要一塊開發板,可以選Altera的cyclone IV系列,或者Xilinx的Spantan 6。還沒掌握HDL之前千萬不要買開發板,因為你買回來也沒用。這里你沒必要每次編譯通過就下載代碼,咱們用modelsim仿真(此外還有QuestaSim、NC verilog、Diamond的Active-HDL、VCS、Debussy/Verdi等仿真工具),如果仿真都不能通過那就不用下載了,肯定不行的。在這里先掌握簡單的testbench就可以了。推薦的教材是《WRITING TESTBENCHESFunctional Verification of HDL Models》。

掌握設計方法和設計原則

你可能發現你綜合出來的電路盡管沒錯,但有很多警告。這個時候,你得學會同步設計原則、優化電路,是速度優先還是面積優先,時鐘樹應該怎樣設計,怎樣同步兩個異頻時鐘等等。推薦的教材是《FPGA權威指南》、《IP核芯志-數字邏輯設計思想》、《Altera FPGA/CPLD設計》第二版的基礎篇和高級篇兩本。學會加快編譯速度(增量式編譯、LogicLock),靜態時序分析(timequest),嵌入式邏輯分析儀(signaltap)就算是通關了。如果有不懂的地方可以暫時跳過,因為這部分還需要足量的實踐,才能有較深刻的理解。

學會提高開發效率

因為Quartus和ISE的編輯器功能太弱,影響了開發效率。所以建議使用Sublime text編輯器中代碼片段的功能,以減少重復性勞動。Modelsim也是常用的仿真工具,學會TCL/TK以編寫適合自己的DO文件,使得仿真變得自動化,推薦的教材是《TCL/TK入門經典》。你可能會手動備份代碼,但是專業人士都是用版本控制器的,所以,為了提高工作效率,必須掌握GIT。文件比較器Beyond Compare也是個比較常用的工具。此外,你也可以使用System Verilog來替代testbench,這樣效率會更高一些。如果你是做IC驗證的,就必須掌握System Verilog和驗證方法學(UVM)。推薦的教材是《Writing Testbenches usingSystemVerilog》、《The UVM Primer》、《System Verilog1800-2012語法手冊》。

掌握了TCL/TK之后,可以學習虛擬Jtag(ISE也有類似的工具)制作屬于自己的調試工具,此外,有時間的話,最好再學個python。腳本,意味著一勞永逸。

增強理論基礎

這個時候,你已經會使用FPGA了,但是還有很多事情做不了(比如,FIR濾波器、PID算法、OFDM等),因為理論沒學好。我大概地分幾個方向供大家參考,后面跟的是要掌握的理論課。

1、信號處理——信號與系統、數字信號處理、數字圖像處理、現代數字信號處理、盲信號處理、自適應濾波器原理、雷達信號處理

2、接口應用——如:UART、SPI、IIC、USBCAN、PCIE、Rapid IO、DDR、TCP/IP、SPI4.2(10G以太網接口)、SATA、光纖、DisplayPort

3、無線通信——信號與系統、數字信號處理、通信原理、移動通信基礎、隨機過程、信息論與編碼

4、CPU設計——計算機組成原理、單片機、計算機體系結構、編譯原理

5、儀器儀表——模擬電子技術、高頻電子線路、電子測量技術、智能儀器原理及應用

6、控制系統——自動控制原理、現代控制理論、過程控制工程、模糊控制器理論與應用

7、壓縮、編碼、加密——數論、抽象代數、現代編碼技術、信息論與編碼、數據壓縮導論、應用密碼學、音頻信息處理技術、數字視頻編碼技術原理

現在你發現,原來FPGA會涉及到那么多知識,你可以選一個感興趣的方向,但是工作中很有可能用到其中幾個方向的知識,所以理論還是學得越多越好。如果你要更上一層,數學和英語是不可避免的。

學無止境

能到這個境界,說明你已經很厲害了,但是還有很多東西要學的,因為FPGA常常要跟CPU交互,也就是說你得經常跟軟件工程師交流,所以也得懂點軟件方面的知識。比如ARM(Xilinx的ZYNQ和Altera的SOC會用到ARM的硬核,請參考本博客的《如何學習嵌入式軟件》)、DSPLinux、安卓、上位機(QT、C#JAVA)都可以學一下,反正學無止境的。

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

    關注

    1630

    文章

    21781

    瀏覽量

    604913

原文標題:教你學好FPGA,輕松快速實現工程夢

文章出處:【微信號:elecfans,微信公眾號:電子發燒友網】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    學好FPGA掌握的五項基本功

    明確,才能積極主動地參與到工程項目中來。 掌握HDL語言雖然不是FPGA設計的全部,但是HDL語言對FPGA設計的影響貫穿于整個
    發表于 02-28 14:04

    學好FPGA,輕松快速實現工程夢

    1入門首先要掌握HDLHDL=verilog+VHDL)第一句話是:還沒學數電的先學數電。然后你可以選擇verilog或者VHDL,有C語言基礎的,建議選擇VHDL。因為verilo
    發表于 07-16 16:36

    選對方法學習FPGA,快速實現你的工程夢

    入門首先要掌握HDLHDL=verilog+VHDL)
    發表于 05-16 07:00

    教你學好FPGA,輕松快速實現工程夢

    `1.入門首先要掌握HDLHDL=verilog+VHDL)第一句話是:還沒學數電的先學數電。然后你可以選擇verilog或者VHDL,有C語言基礎的,建議選擇VHDL。因為veri
    發表于 07-21 14:45

    fpga需要哪些基礎

    fpga需要哪些基礎,一、入門首先要掌握HDLHDL=verilog+VHDL)。第一句話是:還沒學數電的先學數電。然后你可以選擇ver
    發表于 07-16 08:10

    怎樣去學習FPGA

    一、入門首先要掌握HDLHDL=verilog+VHDL)。第一句話是:還沒學數電的先學數電。然后你可以選擇verilog或者...
    發表于 07-19 06:16

    你能夠出電路板上那些小元件叫做什么,又有什么作用嗎?

    電子技術、無線電維修及SMT電子制造工藝技術絕不是一門容易學好、短時間內就能夠掌握的學科。這門學科所涉及的方方面面很多,各方面又相互聯系,作為初學者,首先要在整體上了解、初步掌握它。無
    發表于 07-27 06:48

    數碼相機充電電池使用首先要注意的地方

    數碼相機充電電池使用首先要注意的地方 1,買來的新電池是否有電呢?分兩種情況,如果是普通的鎳氫電池,買來是沒
    發表于 11-04 16:41 ?897次閱讀

    學習FPGA 首先要知道哪些

    開始了第一個獨立項目的研制,FPGA選型當然是已經固定了,我就圍著這款FPGA給他添油加醋,希望能讓他滿足我所有的設計需求,有了原理圖,后來又出了PCB,和ME的人給他設計了外殼,裝上了實驗平臺開始
    發表于 05-10 13:49 ?4489次閱讀
    學習<b class='flag-5'>FPGA</b> <b class='flag-5'>首先要</b>知道哪些

    如何學好FPGA

    如何學好FPGA呢,很多人很困惑,多數停留在基礎位置徘徊,我就這方面問題給大家談幾點自己的看法。 1.基礎問題 FPGA的基礎就是數字電路和HDL語言,想
    發表于 02-23 15:09 ?601次閱讀

    使用pwm波形發生器 首先要掌握以下知識

    波形發生器在生活中有諸多應用,不過對于波形發生器,大家并非均有所了解。此外,波形發生器種類較多,無法在短時間內全部掌握。本文中,將為大家講解pwm波形發生器,并著重解釋這款波形發生器工作原理。
    發表于 01-28 17:45 ?5402次閱讀
    使用pwm波形發生器 <b class='flag-5'>首先要</b><b class='flag-5'>掌握</b>以下知識

    學習單片機編程首先要學什么

    學習單片機編程,首先要學習基本的模擬電路和數字電路知識。掌握常用電子器件的工作原理和使用方法。
    的頭像 發表于 01-05 09:23 ?1w次閱讀
    學習單片機編程<b class='flag-5'>首先要</b>學什么

    城市交通控制系統發展 首先要了解這三個因素

    控制系統發展至今已經有151年了,1980年我們國內的研發剛起步,在經歷了跟蹤、引進、消化、吸收和創新這一歷程,我們與國外技術基本處在同一個水平上。要了解控制系統,首先要知道控制系統的這三個要素。
    的頭像 發表于 03-11 09:06 ?3186次閱讀

    元器件的布局首先要考慮的一個因素是什么?

    高速系統中的接地和互連線上的傳輸延遲時間也是在系統設計時首先要考慮的因素。信號線上的傳輸時間對總的系統速度影響很大,特別是對高速的ECL電路,雖然集成電路塊本身速度很高,但由于在底板上用普通的互連
    的頭像 發表于 06-30 11:02 ?3674次閱讀

    PLC編程首先要干什么?

    首先要做的是整理該項目所用到的所有傳感器,執行單元,對著電氣圖紙給這些元器件命名,電氣圖紙上如果有的,基本上按照電氣原理圖所畫的命名,分配用處,搞明白他的作用。和他的使用注意事項,最好包括到后來在現場的安裝位置,根據P&ID圖紙標注。
    的頭像 發表于 06-10 10:28 ?2343次閱讀
    主站蜘蛛池模板: 特级一级片| 色伊人网| 日本三区四区免费高清不卡| se01亚洲| 美女把尿口扒开让男人桶出水| 视频一区二区中文字幕| 激情亚洲婷婷| 亚洲综人网| 色综合久久天天综合绕观看| 日本黄色电影在线| 快色视频在线观看| 成人永久免费视频| 天天综合网天天做天天受| 四虎h789fcom| jinv在线视频| 一区二区三区无码高清视频| 成人aaa| 视频免费黄色| 巨大欧美黑人xxxxbbbb| 俺去啦最新网址| 人人爽天天爽夜夜爽曰| 婷婷亚洲五月琪琪综合| 狠狠色噜狠狠狠狠| 深爱婷婷| 国产资源站| 手机看日韩毛片福利盒子| 2021最新久久久视精品爱| 少妇被按摩| 四虎国产精品永久在线| 花怜write. as| 午夜精品网站| 2021国产精品自在拍在线播放| 视频一区二区在线观看| 四虎永久免费在线观看| 韩国黄色三级视频| 天天爽夜夜爽视频| 黄网站视频| 网址色| 国产精品虐乳在线播放| 色3344| 日本a级特黄三级三级三级|