chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

FPGA入門之綜合和仿真

jf_78858299 ? 來源:CSDN ? 作者:原來如此呀 ? 2023-03-21 10:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

2.1 綜合

Verilog 是硬件描述語言,顧名思義,就是用代碼的形式描述硬件的功能,最終在硬件電路上實現(xiàn)該功能。 在 Verilog 描述出硬件功能后需要使用綜合器對 Verilog 代碼進行解釋并將代碼轉(zhuǎn)化成實際的電路來表示,最終產(chǎn)生實際的電路, 也被稱為網(wǎng)表。這種 將 Verilog 代碼轉(zhuǎn)成網(wǎng)表的工具就是綜合器 。

上圖左上角是一段 Verilog 代碼,該代碼實現(xiàn)了一個加法器的功能。 在經(jīng)過綜合器解釋后該代碼被轉(zhuǎn)化成一個加法器電路。 QUARTUS、 ISE 和 VIVADO 等 FPGA 開發(fā)工具都是綜合器, 而在集成電路ASIC設(shè)計領(lǐng)域常用的綜合器是 DC。

2.2 仿真

在 FPGA 設(shè)計的過程中,不可避免會出現(xiàn)各種 BUG。如果在編寫好代碼、 綜合成電路、 燒寫到FPGA 后才發(fā)現(xiàn)問題,此時再去定位問題就會非常地困難。 而在綜合前, 設(shè)計師可以在電腦里通 過仿真軟件對代碼進行仿真測試, 檢測出 BUG 并將其解決,最后再將程序燒寫進 FPGA。一般情況下可以認為沒有經(jīng)過仿真驗證的代碼,一定是存在 BUG 的。

為了模擬真實的情況,需要編寫測試文件。該文件也是用 Verilog 編寫的, 其描述了仿真對象的輸入激勵情況。該激勵力求模仿最真實的情況,產(chǎn)生最接近的激勵信號,將該信號的波形輸入給仿真對象,查看仿真對象的輸出是否與預(yù)期一致。需要注意的是: 在仿真過程中沒有將代碼轉(zhuǎn)成電路,仿真器只是對代碼進行仿真驗證。至于該代碼是否可轉(zhuǎn)成電路,仿真器并不關(guān)心。

由此可見, Verilog 的代碼不僅可以描述電路,還可以用于測試。事實上, Verilog 定義的語法非常之多,但絕大部分都是為了仿真測試來使用的, 只有少部分才是用于電路設(shè)計,詳細可以參考本書的“可綜合邏輯設(shè)計”一節(jié)。 Verilog 中用于設(shè)計的語法是學習的重點, 掌握好設(shè)計的語法并熟練應(yīng)用于各種復(fù)雜的項目是技能的核心。 而其他測試用的語法, 在需要時查找和參考就已經(jīng)足夠了。

2.3 可綜合設(shè)計

Verilog 硬件描述語言有類似高級語言的完整語法結(jié)構(gòu)和系統(tǒng),這些語法結(jié)構(gòu)的應(yīng)用給設(shè)計描述帶來很多方便。但是, Verilog 是描述硬件電路的, 其建立在硬件電路的基礎(chǔ)之上。而有些語法結(jié)構(gòu)只是以仿真測試為目的,是不能與實際硬件電路對應(yīng)起來的。 也就是說在使用這些語法時, 將一個語言描述的程序映射成實際硬件電路中的結(jié)構(gòu)是不能實現(xiàn)的,也稱為不可綜合語法。

綜合就是把編寫的 rtl 代碼轉(zhuǎn)換成對應(yīng)的實際電路。比如編寫代碼 assign a=b&c; EDA 綜合工具就會去元件庫里調(diào)用一個二輸入與門, 將輸入端分別接上 b 和 c,輸出端接上 a。

同樣地,如果設(shè)計師編寫了一些如下所示的語句:

綜合工具就會像搭積木一樣把這些“邏輯”電路用一些“門”電路來搭起來。當然,工具會對必要的地方做一些優(yōu)化,比如編寫一個電路 assing a=b&~b,工具就會將 a 恒接為 0,而不會去調(diào)用一個與門來搭這個電路。

綜述所述,“綜合”要做的事情有:編譯 rtl 代碼,從庫里選擇用到的門器件,把這些器件按照“邏輯”搭建成“門”電路。

不可綜合,是指找不到對應(yīng)的“門”器件來實現(xiàn)相應(yīng)的代碼。比如“ #100”之類的延時功能,簡單的門器件是無法實現(xiàn)延時 100 個單元的, 還有打印語句等,也是門器件無法實現(xiàn)的。在設(shè)計的時候要確保所寫的代碼是可以綜合的,這就依賴于設(shè)計者的能力,知道什么是可綜合的代碼,什么是不可綜合的代碼。對于初學者來說,最好是先記住規(guī)則,遵守規(guī)則,先按規(guī)則來設(shè)計電路并在這一過程中逐漸理解,這是最好的學習路徑。

下面表格中列出了 不可綜合或者不推薦使用的代碼 。

1679365800(1).png

下表為 推薦使用的設(shè)計代碼 。

1679365822(1).png

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    讀《FPGA入門教程》

    成的邏輯連接,輸出門級網(wǎng)表文件。門級仿真(綜合仿真) 在綜合后通過后仿真來檢查綜合結(jié)果是否與原
    發(fā)表于 03-29 16:42

    FPGA入門資料

    本帖最后由 eehome 于 2013-1-5 09:55 編輯 哪位大俠有FPGA入門級的資料,跪求?。?!關(guān)于FPGA可以實現(xiàn)哪些功能,進行哪些方面的功能擴展,比如內(nèi)嵌硬核、
    發(fā)表于 07-22 08:45

    FPGA入門:基本開發(fā)流程概述

    FPGA入門:基本開發(fā)流程概述 本文節(jié)選自特權(quán)同學的圖書《FPGA/CPLD邊練邊學——快速入門Verilog/VHDL》書中代碼請訪問網(wǎng)盤:http://pan.baidu.com/
    發(fā)表于 02-09 20:14

    Xilinx FPGA無痛入門,海量教程免費下載

    用notepad++的關(guān)聯(lián)設(shè)置Lesson07 特權(quán)Xilinx FPGA SF-SP6入門指南 -- ISE與Modelsim聯(lián)合仿真庫編譯Lesson08 特權(quán)Xilinx
    發(fā)表于 07-22 11:49

    Xilinx FPGA入門連載13:PWM蜂鳴器驅(qū)動綜合、實現(xiàn)與配置文件產(chǎn)生

    `Xilinx FPGA入門連載13:PWM蜂鳴器驅(qū)動綜合、實現(xiàn)與配置文件產(chǎn)生特權(quán)同學,版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/s/1jGjAh
    發(fā)表于 10-16 10:48

    Xilinx FPGA入門連載74:波形發(fā)生器IP核CORDIC(正弦波)功能仿真

    `Xilinx FPGA入門連載74:波形發(fā)生器IP核CORDIC(正弦波)功能仿真特權(quán)同學,版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/s/1jG
    發(fā)表于 04-25 08:33

    功能仿真、綜合仿真與時序仿真

    功能仿真:可以驗證代碼的邏輯性,不加任何的時延信息。仿真工具為modelsim(組合邏輯和時序邏輯都可以功能仿真),modelsim不能綜合。在modelsim中添加相應(yīng)的激勵信號,調(diào)
    發(fā)表于 08-23 16:57

    FPGA的邏輯仿真以及邏輯綜合的一些原則

    apex20ke_atoms.v編譯到其中。2:在圖形界面中的Load Design對話框中裝入仿真設(shè)計時,在Verilog 標簽下指定預(yù)編譯庫的完整路徑。(見下圖)邏輯綜合目前可用的FPGA
    發(fā)表于 05-15 07:00

    入門筆記:FPGA不是單片機

    按鈕,一口氣從綜合做到PAR(ISE和QuartusII都能一個按鈕跑整個flow),然后仿真仿真OK?皆大歡喜。不OK?改code。咋改?不清楚。 這個過程中最大的問題在于把FPGA
    發(fā)表于 11-02 17:27

    綜合仿真設(shè)計指南

    綜合仿真設(shè)計指南提供了使用硬件描述語言(HDL)設(shè)計FPGA。它包括為HDL設(shè)計新手提供設(shè)計提示,以及為第一次使用FPGA做設(shè)計的經(jīng)驗豐富的工程師。在使用
    發(fā)表于 11-02 10:06 ?43次下載

    FPGA入門技術(shù)教程

    FPGA入門技術(shù)教程,適合新手剛入門的時候看
    發(fā)表于 01-24 16:29 ?49次下載

    C2837x入門:系統(tǒng)的調(diào)試仿真

    C2837x入門指南(十五)—系統(tǒng)設(shè)計調(diào)試仿真
    的頭像 發(fā)表于 08-23 00:06 ?3139次閱讀

    FPGA入門:第一個工程實例之功能仿真平臺搭建

    FPGA入門:第一個工程實例之功能仿真平臺搭建 本文節(jié)選自特權(quán)同學的圖書《FPGA/CPLD 邊練邊學——快速入門Verilog/VHDL
    發(fā)表于 12-28 00:07 ?1113次閱讀

    FPGA基礎(chǔ)HLS

    實現(xiàn),無縫的將硬件仿真環(huán)境集合在一起,使用軟件為中心的工具、報告以及優(yōu)化設(shè)計,很容易的在 FPGA 傳統(tǒng)的設(shè)計工具中生成 IP。 傳統(tǒng)的 FPGA 開發(fā),首先寫 HDL 代碼,然后做行為仿真
    的頭像 發(fā)表于 12-02 12:30 ?6586次閱讀

    FPGA入門FPGA 開發(fā)流程

    硬件電路描述方法。其中,運用 HDL 設(shè)計方法具有更好的移植性、通用性以及利于模塊劃分的特點,在工作學習中被廣泛使用。典型 FPGA 的開發(fā)流程一般如下圖所示, 其包括功能定義/器件選型、設(shè)計輸入、功能仿真、綜合優(yōu)化、
    的頭像 發(fā)表于 03-21 10:26 ?3777次閱讀