如何使用腳本對Xilinx FPGA編程
最近在做一個GUI的項目,想試著用FPGA實現(xiàn)一個簡單的GUI。硬件基本模塊和整個硬件系統(tǒng)已經(jīng)完成設計,但是軟件程序上還處在調試階段,由于程序比較大,FPGA內(nèi)部的BRAM已經(jīng)完全不夠用了,只能將運行的程序放到DDR DRAM中,這就導致了對FPGA編程分為兩步走:
本文引用地址:http://butianyuan.cn/article/201710/365664.htm1.使用Impact先將Download.bit文件下載到FPGA中(Download.bit文件只含有bootloop.elf)
2.通過XMD將executable.elf文件下載到DDR SDRAM中,然后運行程序
因為每次程序的修改都需要重新下載,往往是需要在EDKshell或者在XMD的終端中輸入同樣的命令。
重復性很強的工作為什么不讓計算機完成呢?
下面給出了一個解決方案,盡管不完善,但是對我調試來說已經(jīng)足夠了。具體步驟如下:
編寫用于下載bistream文件至FPGA的的腳本,當然腳本肯定是基于Impact的,這里暫且將該腳本文件,download.cmd
腳本的內(nèi)容如下:
setMode -bscan
setCable -p auto
idenTIfy
assignfile -p 3 -file download.bit
program -p 3
quit
編寫通過XMD下載可執(zhí)行文件至內(nèi)存中或者BRAM中的腳本,命名為xmd.opt
腳本的內(nèi)容如下:
connect mb mdm;
dow executable.elf;
con;
將download.bit, executable.elf,xmd.opt和download.cmd放在一個文件夾中
打開EDK Shell,cd至剛才創(chuàng)建的文件夾目錄下,然后運行如下命令:
$impact –batch download.cmd xmd –opt xmd.opt
5. 編輯一個download.tcl文件,內(nèi)容如下
impact –batch download.cmd;
xmd –opt xmd.opt;
然后在EDKshell下運行如下命令 :
$source download.tcl
總結一下:
分別編輯三個腳本文件
用 impact 運行的批處理文件(.cmd)
用XMD運行的腳本文件(.opt)
用source運行的通用腳本(.tcl)
最后再EDK Shell下運行
至于腳本的每條命令,這里不做解釋了,有興趣可以參考如下的文檔:
Impact 用戶手冊
XMD 操作手冊 ~helinski/files/ECE344/T1_XMD%20commands%20REFERENCE%20V2.pdf
Revesion
v0.1 2010.12.08 KiKi file created
V0.2 2010.12.14 KiKi add content related tcl script
評論