新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 應用EDA仿真技術解決FPGA設計開發中故障的方法

        應用EDA仿真技術解決FPGA設計開發中故障的方法

        作者: 時間:2010-11-14 來源:網絡 收藏

          將list file另存為文本格式文件即可,如圖4所示。

        應用EDA仿真技術解決FPGA設計開發中故障的方法

          圖4 “另存為”選項界面

          此后可以把這個文本文件中無用的描述刪掉,只留SignalTap抓出來的數據(空格、h等符號也要刪掉),另存為.dat文件供仿真使用。

          有了故障出現時的輸入數據,我們就可以在仿真環境下構建故障出現的條件。

          ②利用.dat文件建立bug出現的條件

          用verilog語言編寫仿真文件(testbench),使用語句$readmemh或$readmemb將.dat文件中的數據存儲到一個設定的ram中,如:$readmemh(“s.dat”,ram)。

          注意$readmemh讀取是按照十六進制數據進行(認為.dat文件中的數據都是十六進制數),會自動將其轉換為4位二進制數存入ram中,所以設定的ram位寬要是.dat文件中數據位寬的4倍;使用$readmemb時,存儲SignalTap所抓信號時,信號都要先設定為binary類型,ram位寬就是.dat文件數據的位寬。ram的深度為.dat文件中數據的個數。

          然后在程序里把ram中數據按照所對應時鐘沿輸出到一個寄存器變量中,ram地址累加即可。

          always@(posedge clk)

          begin

          data=ram[addr];

          addr=addr+1'b1;

          end

          復現bug存在條件時,需將模塊的輸入信號與ram中的數據位相對應,仿真文件調用模塊時,將寄存器data對應位作為輸入接入即可。



        關鍵詞: FPGA EDA仿真

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 富平县| 平果县| 那曲县| 镇雄县| 长顺县| 许昌市| 海城市| 南江县| 普兰县| 太白县| 宿迁市| 德庆县| 宣武区| 健康| 和顺县| 贡山| 色达县| 长寿区| 新化县| 新田县| 民县| 繁峙县| 布尔津县| 察雅县| 石狮市| 尚志市| 革吉县| 金寨县| 历史| 茌平县| 西和县| 海城市| 会理县| 图片| 太和县| 竹溪县| 怀化市| 开阳县| 鹤庆县| 镇巴县| 都匀市|