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

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

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

3天內不再提示

一個簡單的FPGA設計Flow流程示意圖

電子工程師 ? 來源:lq ? 2018-12-20 13:46 ? 次閱讀

今天再啰嗦點玄學 - fpga的設計流程,因為“流程”我們學習任何一門技術都必須事先清楚的重要信息

還是先劃一下重點 - 我們應該學什么?想一下如果你要去駕校學開車,什么是你的重點?開車的一系列要領和技術還是你用來學習駕駛的車的按鈕的操作?顯然是前者,雖然市場上的車有幾十上百個不同的型號,多數的駕校都用桑塔納來當教練車,基于的前提就是所有的車支持你在路上行駛的功能(換擋、加速、剎車、后視鏡、方向盤)都是齊備的,主要的不同點在于這些功能按鈕擺放的位置不同。

因此當你要駕駛一輛從未摸過的車,你心里并不緊張,因為你已經學會了駕駛,而且知道所有的車操作起來都大同小異,只要花5分鐘看一下說明書,熟悉一下各個功能的按鈕在哪里就可以上路了。

設計FPGA和畫PCB道理也是如此 - 我們要清楚地知道你需要掌握的技術是什么?運用這些技術需要的步驟、流程是什么?包括哪些環節?把這些搞清楚了,無論你用哪家的平臺、哪家的工具,就像換一輛不同品牌的車一樣都可以在簡單地對應之后從容操作。

因此,要學習設計FPGA,第一件要做的事情就是FPGA設計和使用要經歷哪些環節、流程?每個環節的注意事項是什么?

下面是一個簡單的FPGA設計Flow(流程)示意圖。

我們來看看每一步都要做什么事情:

設計定義:雖然貌似跟器件還沒打交道,這一步卻是整個過程中最重要的,它是將你的需求轉化為具體的邏輯功能實現的過程。比如你要設計一個交通燈的控制邏輯,我建議你去馬路邊蹲十分鐘,仔細觀察十字路口的交通燈的變化方式,用你自己的語言把每個狀態以及各個狀態之間的轉換方式、導致這些轉換的條件等描述清楚,將這些用筆在紙上畫出來,不漏掉任何一個細節,做到這點,你的邏輯其實已經出來了。后面的步驟都是工具要做的事情 - 將你腦子里的邏輯轉變成用FPGA芯片執行的邏輯,并通過板子上的按鍵、LED指示燈等表現出來而已。復雜的任務就需要進行分解,就像你有一個團隊,團隊中的每一個角色承擔不同的職能,既要定義好每個角色的功能,又要定義好他們之間的關聯方式,也就是你需要將要實現的邏輯功能自上而下(Top Down)地分解為多個功能模塊(module),把每個模塊之間的接口信號及相應的時序關系定義清楚;

告訴機器該怎么做:將你紙上畫好的邏輯關系用計算機工具軟件能夠理解的語言方式撰寫清楚,這個過程叫邏輯輸入,使用的方式可以是原理圖(最古老、直觀的方式)或者一些硬件描述語言 - Verilog、System Verilog、VHDL、System C等。在我們的教程中用的是Verilog這種硬件描述語言(HDL),做過PCB設計的同學肯定會覺得這個過程很類似繪制原理圖;

通過驗證確保機器的理解跟你想的一致:在用這些機器語言表述你的邏輯的時候你要確保機器理解的跟你自己理解的是一致的,如何才能做到這一點?我們聰明的工程師發明了“Simulation(仿真)”這么個過程,給出一些輸入條件,看機器理解的結果是不是如你預期的一樣,如果有出入,那就是你們之間的溝通有問題,也就是你用它的語言表述的不夠清晰、準確,你需要進行調整;類比PCB設計,這個過程類似你設計了一個模擬電路之后需要運行Spice工具對你設計的電路以及相應的參數進行驗證一樣。很多人省去了這個過程,把風險留給了后面;

讓機器生成一個“它”理解的邏輯,這一步叫邏輯綜合,當然得到的結果是機器能夠理解的抽象的關系圖,基于這個關系圖機器就可以在下一步自動根據FPGA的內部資源進行具體的功能分配了。到現在為止還沒有跟具體的FPGA器件發生任何關系,這就類似PCB設計中基于繪制的原理圖生成了Netlist一樣。

針對具體的FPGA器件進行資源分配 - 我們叫Implementation,也可以叫Place & Route(中文意思是布局布線,跟PCB中的過程類似)。這個過程就與你選用的哪家的器件、哪個類別的器件、哪個型號的器件,乃至哪個速度等級的器件都有關系了,在資源分配的過程中你一定要給出讓計算機分配資源的約束條件,除了你選用的具體的器件本身的資源限制以外,你要指定在邏輯中的哪個信號對應在哪個管腳上,從一個管腳到另一個管腳之間的最大延時是多少等等,這就類似PCB布局布線的時候你一定要根據加工廠提供的需求設定每根走線的寬度、線間距、過孔的大小等design rule一樣。道理都是一致的,面對具體的器件,你不能隨心所欲。

每次完成布局布線,因為不同廠商的不同型號的器件其內部的構成架構是不同的,因此需要再次驗證將你的邏輯映射到具體的器件的具體資源里面以后,它干的活是不是滿足你的要求,不僅要求其實現你需要的功能,更要要求其滿足你要求的性能,也就是說內部的這些功能塊乃至每個門之間的時序配合要滿足你的要求,否則在實際的系統中就會出亂子的。這就像國慶閱兵,每個部隊在拉到長安街之前要經過嚴格的演練,要做各種演習,驗證你的每一個環節都配合得天衣無縫。

一切都完美 - perfect,生成一個最高指示 - bit stream,發送到你選中的fpga芯片配置的PROM中,每次FPGA加上電以后就調用這些PROM中的最高指示,將其內部的資源配置成最高指示想要的模樣,任勞任怨地干活唄。

這個流程清楚了吧?每家的FPGA都得遵循這個過程,無論是其中的貴族還是貧民,因為設計的規則都是一樣的。

還是那話,無論是Lattice的Diamond,IntelQuartus,亦或是Xilinx的Vivado,都是“大同”的 - 都要具備這些功能,都要遵循這些流程,不同的就是有的搞得簡約一些,有得搞得華麗一些,每個按鈕點一點,每個輸出的結果看一看,就清楚他們之間的“小異”了。

不要再宣稱我只會用Xilinx的Vivado、我只會用Altium的AD,這只能說明你沒有真正掌握設計的核心。

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

    關注

    1630

    文章

    21777

    瀏覽量

    604679
  • 機器
    +關注

    關注

    0

    文章

    784

    瀏覽量

    40766
  • 機器語言
    +關注

    關注

    0

    文章

    35

    瀏覽量

    10765

原文標題:從概念到FPGA邏輯實現的設計流程

文章出處:【微信號:xiaojiaoyafpga,微信公眾號:電子森林】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    氯離子結構示意圖和鈉離子結構示意圖

    氯離子結構示意圖和鈉離子結構示意圖
    發表于 05-28 22:34 ?5.5w次閱讀
    氯離子結構<b class='flag-5'>示意圖</b>和鈉離子結構<b class='flag-5'>示意圖</b>

    電腦鍵盤示意圖,計算機鍵盤示意圖

    電腦鍵盤示意圖,計算機鍵盤示意圖
    發表于 03-10 10:51 ?12.7w次閱讀

    飛機示意圖

    飛機示意圖
    發表于 05-26 15:47 ?2338次閱讀

    失會聚示意圖

    失會聚示意圖
    發表于 07-31 12:13 ?1095次閱讀

    順序傳輸制示意圖

    順序傳輸制示意圖
    發表于 07-31 12:18 ?892次閱讀

    混合動力汽車示意圖

    混合動力汽車示意圖插入式混合動力汽車結構示意圖
    發表于 11-21 14:45 ?2085次閱讀

    Altera公司的FPGA選擇示意圖資料免費下載

    本文檔的主要內容詳細介紹的是Altera公司的FPGA選擇示意圖資料免費下載。
    發表于 05-25 08:00 ?21次下載
    Altera公司的<b class='flag-5'>FPGA</b>選擇<b class='flag-5'>示意圖</b>資料免費下載

    螺栓示意圖下載

    螺栓示意圖下載
    發表于 01-10 14:15 ?12次下載

    電子馬達啟動電路的示意圖

    圖中是電子馬達啟動電路的示意圖。該電機啟動器可保護單相電機免受電壓波動和過載的影響。其突出的功能是操作簡單的軟開/關電子開關。
    的頭像 發表于 07-02 09:42 ?5484次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>個</b>電子馬達啟動電路的<b class='flag-5'>示意圖</b>

    5X35023 參考示意圖

    5X35023 參考示意圖
    發表于 03-14 19:28 ?0次下載
    5X35023 參考<b class='flag-5'>示意圖</b>

    9ZX21901 參考示意圖

    9ZX21901 參考示意圖
    發表于 03-21 19:17 ?0次下載
    9ZX21901 參考<b class='flag-5'>示意圖</b>

    9ZX21201 參考示意圖

    9ZX21201 參考示意圖
    發表于 03-21 19:17 ?0次下載
    9ZX21201 參考<b class='flag-5'>示意圖</b>

    9FGV1006 參考示意圖

    9FGV1006 參考示意圖
    發表于 05-19 18:40 ?0次下載
    9FGV1006 參考<b class='flag-5'>示意圖</b>

    9DBL0455 參考示意圖

    9DBL0455 參考示意圖
    發表于 07-05 18:50 ?0次下載
    9DBL0455 參考<b class='flag-5'>示意圖</b>

    9FGV1004 參考示意圖

    9FGV1004 參考示意圖
    發表于 07-07 19:15 ?1次下載
    9FGV1004 參考<b class='flag-5'>示意圖</b>
    主站蜘蛛池模板: 超黄视频网站| 亚洲午夜精品久久久久| 国产精品视频第一区二区三区| 狠狠躁| 中文在线 | 中文| 一区视频免费观看| 国产精品久久久久久久久久妇女 | 一级片成人| 亚洲伊人tv综合网色| 天堂tv在线观看| 最新版天堂资源中文官网| 91大神在线看| 欧美亚洲综合图区在线| 一区在线免费观看| 福利一区二区在线观看| 网女色| 四虎影院最新网址| 亚洲入口无毒网址你懂的| 好深好爽视频| 午夜人成| 农村妇女色又黄一级毛片卡| 国产一级久久免费特黄| 伊人狼人在线| 午夜久久影院| 天天视频免费入口| 天天狠操| 黑人又大又粗又长又深受不了| 免费观看黄色网| 综合色天天| 日本x色视频| 成人在线免费网站| www.a级片| 亚洲444kkk| 国产午夜精品久久久久九九 | 日本高清视频一区| 操久久久| 香蕉久久夜色精品国产小说| 免费网站毛片| 天天爽天天爽天天片a久久网| 国产成人午夜片在线观看| 欧美成人a|