<dd id="cv9gz"><big id="cv9gz"></big></dd>
  • <progress id="cv9gz"></progress>

      <tbody id="cv9gz"></tbody>
          1. 集成電路技術分享

             找回密碼
             我要注冊

            QQ登錄

            只需一步,快速開始

            搜索
            查看: 2046|回復: 9
            打印 上一主題 下一主題

            基于ISE的仿真

            [復制鏈接]
            跳轉到指定樓層
            1#
            小舍YZ 發表于 2017-6-29 17:03:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
            基于ISE的仿真

            在代碼編寫完畢后,需要借助于測試平臺來驗證所設計的模塊是否滿足要求。ISE提供了兩種測試平臺的建立方法,一種是使用HDL Bencher的圖形化波形編輯功能編寫,另一種就是利用HDL語言。由于后者使用簡單、功能強大,所以本節主要介紹基于Verolog語言的測試平臺建立方法。

            1.測試波形法

            在ISE中創建testbench波形,可通過HDL Bencher修改,再將其和仿真器連接起來,再驗證設計功能是否正確。首先在工程管理區將Sources for設置為Behavioral Simulation,然后在任意位置單擊鼠標右鍵,在彈出的菜單中選擇“New Source”命令,然后選中“Test Bench WaveForm”類型,輸入文件名為“test_bench”,點擊Next進入下一頁。這時,工程中所有Verilog Module的名稱都會顯示出來,設計人員需要選擇要進行測試的模塊。由于本工程只有一個模塊,所以只列出了test,如圖4-30所示。

            圖4-30 選擇待測模塊對話框

            本帖子中包含更多資源

            您需要 登錄 才可以下載或查看,沒有賬號?我要注冊

            x
            2#
             樓主| 小舍YZ 發表于 2017-6-29 17:04:26 | 只看該作者
            用鼠標選中test,點擊“Next”后進入下一頁,直接點擊“Finish”按鍵。此時HDL Bencher程序自動啟動,等待用戶輸入所需的時序要求,如圖4-31所示。
            圖4-31 時序初始化窗口

            本帖子中包含更多資源

            您需要 登錄 才可以下載或查看,沒有賬號?我要注冊

            x
            3#
             樓主| 小舍YZ 發表于 2017-6-29 17:05:23 | 只看該作者
            時鐘高電平時間和時鐘低電平時間一起定義了設計操作必須達到的時鐘周期,輸入建立時間定義了輸入在什么時候必須有效,輸出有效延時定義了有效時鐘延時到達后多久必須輸出有效數據。默認的初始化時間設置如下:
            &#8226;        時鐘高電平時間(Clock High Time):100ns
            &#8226;         時鐘低電平時間(Clock Low Time):100ns
            &#8226;        輸入建立時間(Input Setup):15ns
            &#8226;        輸出有效時間(Output Valid):15ns
            &#8226;        偏移時間(Offset):100ns
            單擊“OK”按鈕,接受默認的時間設定。測試矢量波形顯示如圖4-32所示。
            圖4-32 測試矢量波形


            本帖子中包含更多資源

            您需要 登錄 才可以下載或查看,沒有賬號?我要注冊

            x
            4#
             樓主| 小舍YZ 發表于 2017-6-29 17:06:16 | 只看該作者
            接下來,初始化輸入(注:灰色的部分不允許用戶修改),修改的方法為:選中信號,在其波形上單擊,從該點擊所在周期開始,在往后所有的時間單元內該信號電平反相。點擊din信號前面的“+”號,在din[7]的第2個時鐘周期內單擊,使其變高;在din[6]的第3個時鐘周期內單擊,使其變高;同樣的方法修改din[5]~din[0]信號,使其如圖4-33所示。
            圖4-33 初始化輸入

            本帖子中包含更多資源

            您需要 登錄 才可以下載或查看,沒有賬號?我要注冊

            x
            5#
             樓主| 小舍YZ 發表于 2017-6-29 17:08:03 | 只看該作者
            然后將testbench文件存盤,則ISE會自動將其加入到仿真的分層結構中,在代碼管理區會列出剛生成的測試文件test_bench.tbw,如圖4-34所示。
            圖4-34 測試文件列表

            本帖子中包含更多資源

            您需要 登錄 才可以下載或查看,沒有賬號?我要注冊

            x
            6#
             樓主| 小舍YZ 發表于 2017-6-29 17:08:58 | 只看該作者
            選中test_bench.tbw文件,然后雙擊過程管理區的“Simulate Behavioral Model”,即可完成功能仿真。同樣,可在“Simulate Behavioral Model”選項上單擊右鍵,設置仿真時間等。例4-3的仿真結果如圖4-35所示。從中,可以看出,dout信號等于din信號加1,功能正確。
            圖4-35 功能仿真結果

            本帖子中包含更多資源

            您需要 登錄 才可以下載或查看,沒有賬號?我要注冊

            x
            8#
            FPGA_one 發表于 2017-7-14 09:42:19 | 只看該作者
            學到東西了呀         
            9#
             樓主| 小舍YZ 發表于 2017-7-14 18:58:58 | 只看該作者

                           那就好                                 
            10#
            zxopenljx 發表于 2023-2-13 09:41:36 | 只看該作者
            基于ISE的仿真
            您需要登錄后才可以回帖 登錄 | 我要注冊

            本版積分規則

            關閉

            站長推薦上一條 /1 下一條

            QQ|小黑屋|手機版|Archiver|集成電路技術分享 ( 京ICP備20003123號-1 )

            GMT+8, 2023-5-15 04:03 , Processed in 0.071774 second(s), 20 queries .

            Powered by Discuz! X3.4

            © 2001-2023 Discuz! Team.

            快速回復 返回頂部 返回列表
            久久久亚洲
            <dd id="cv9gz"><big id="cv9gz"></big></dd>
          2. <progress id="cv9gz"></progress>

              <tbody id="cv9gz"></tbody>