新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > PicoBlaze軟核的仿真與調試

        PicoBlaze軟核的仿真與調試

        作者: 時間:2013-01-25 來源:網絡 收藏

        2 程序快速更新方法

        編譯后的程序存儲在FPGA中的BRAM單元中,在基于的項目時,若采用傳統的方法,那么每次改變PicoBlaze的匯編程序時都要重新綜合、布局布線,生成新的比特文件,往往需要幾分鐘到十幾分鐘,耗時耗力;而采用JTAG Loader進行則無需重新綜合、布局布線,可通過JTAG接口直接修改PicoBlaze的程序BRAM,只需幾秒即可完成,大大加快了調試進度[2]。JTAG Loader程序更新接口示意圖如圖2所示。

        圖2 JTAG Loader程序更新接口示意圖

        由圖2可知,JTAG Loader通過JTAG接口直接修改程序BRAM,達到更新PicoBlaze程序的目的。整個過程簡便迅速,并且Xilinx公司提供了相應的JTAG_Loader_ROM_form.vhd模板和批處理文件,用戶在初次使用時設置好相關參數后,只需運行批處理文件即可實現PicoBlaze程序的一鍵更新。JTAG Loader的使用步驟如下:

        ① 將JTAG_Loader_ROM_form.vhd重命名為ROM_form.vhd,并替換原工程目錄下的ROM_form.vhd。

        ② 用kcpsm3.exe重新編譯程序。

        ③ 將程序ROM的reset端連接到PicoBlaze的復位端。

        ④ 將JTAG Loader文件夾下的hex2svf.exe、hex2svfsetup.exe、playxsvf.exe、svf2xsvf.exe和jtag_loader.bat復制到工程目錄下。

        ⑤ 編輯jtag_loader.bat文件。

        (a) 并口下載電纜方式。打開jtag_loader.bat文件,輸入下列內容:

        if exist .hex2svf.cnf goto one

        echo Need to set up jtag chain first

        hex2svfsetup.exe

        echo jtag chain set up

        pause

        :one

        hex2svf %1.hex %1.svf

        svf2xsvf d i %1.svf o %1.xsvf

        playxsvf %1.xsvf

        將jtag_loader.bat中的1%替換為.psm的文件名,例如led.psm,則將1%替換為led。

        (b) USB下載電纜方式。打開jtag_loader.bat文件,輸入下列內容:

        if exist .hex2svf.cnf goto one

        echo Need to set up jtag chain first

        hex2svfsetup.exe

        echo jtag chain set up

        pause

        :one

        hex2svf %1.hex %1.svf

        svf2xsvf d i %1.svf o %1.xsvf

        @echo setMode bscanimpact_batch_commands.cmd

        @echo setCable port usb21 baud 1impact_batch_commands.cmd

        @echo addDevice position 1 file .%1.xsvfimpact_batch_commands.cmd

        @echo playimpact_batch_commands.cmd

        @echo quitimpact_batch_commands.cmd

        impact batch impact_batch_commands.cmd

        將jtag_loader.bat中的1%替換為.psm的文件名,例如led.psm,則將1%替換為led即可。

        ⑥ 運行jtag_loader.bat,按提示進行即可實現程序更新。值得注意的是,第一次運行jtag_loader.bat時,需輸入IR_Length參數,該參數可以在ISE安裝目錄下查到,如:D:Xilinx10.1ISEacecfdataxccace.bsd文件中的attribute INSTRUCTION_LENGTH of XCCACE : entity is 8。其他器件的查閱方法類似。

        本方法已在Xilinx XUP VirtexII PRO開發板上進行了驗證,取得了良好的效果,整個程序過程僅需幾秒,即可實現程序的一鍵更新。

        結語

        8位嵌入式處理器PicoBlaze應用靈活方便。本文介紹的基于pBlazIDE的PicoBlaze匯編程序調試方法和基于JTAG Loader的PicoBlaze程序快速更新方法簡便可行,可明顯提高PicoBlaze項目調試效率,具有較高的應用價值。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 宿迁市| 宜昌市| 千阳县| 青海省| 车致| 元阳县| 鹰潭市| 肇庆市| 交口县| 金寨县| 确山县| 湄潭县| 酉阳| 阿瓦提县| 寿光市| 云霄县| 汪清县| 新民市| 崇礼县| 阿瓦提县| 甘肃省| 咸丰县| 凌源市| 新营市| 利川市| 安新县| 恩平市| 临江市| 延安市| 政和县| 屏山县| 开原市| 吉安市| 兴文县| 稷山县| 嫩江县| 禹城市| 登封市| 河池市| 巧家县| 通海县|