對于FPGA工程師除了日常的調試工作以外,批量生產時候指導生成人員下載我們生成的固化文件也是我們的工作,所以今天講一講FPGA單獨下載<固化文件>的幾種方式。
批量生產-先下載后焊接
批量生產產品沒什么好選擇的,都是將文件直接固化到FLASH中,然后在貼片時候再焊接,這樣是最簡單“暴力”的解決方案,這里就過多贅述了。
小批量生產(10套以內)-手動下載
小批量生產時候,基本不會有外場人員參與,本身程序也不一定是最優的,這個時候那就沒得選擇,手動下載固化,手動調試吧。
中大型批量生產-借助下載軟件下載
這種情況是比較常見的,處于批量生產前的試生產階段,可以選擇先下載后焊接,但是這個階段如果發現BUG,修改完畢后就要協調生成人員進行下載,今天的核心內容就是這部分內容,下面介紹幾種方式(以AMD-XILINX為例):
借助官方離線下載器+Xilinx JTAG下載
各家的EDA工具基本都是N多工具的集合體,其中下載軟件基本都有單獨的版本,Xilinx FPGA也提供了這樣的工具,叫做 Vivado Lab Edition即實驗室版本,下載位置在下面界面:
https://www.xilinx.com/support/download.html
先選擇要下載的版本:
Vivado Archive是2021.1前的版本。
我們這里選擇2019.1版本,之后向下翻動頁面,選擇下圖中位置,即實驗室版本的Vivado,僅包含下載和調試功能,并且不需要License:
點擊圖中箭頭就可以下載,2019.1版本大約700M左右,2022.2版本大約1.5G,2018.3版本只有500M左右,我也下載了常見的幾個版本的,下載方式見文章最后。
當然你也可以只下載Hardware Server,大小又可以減小一半左右。
安裝過程和Vivado類似,就不展示了,簡單截幾張圖看看:
?
安裝完成后,桌面會生成一個圖標:
雙擊打開后和Vivado一樣,其中的圖上的工程不是我們說的Vivado工程,而是這個軟件專用的Lab工程。
和我們今天有關的是Open Hardware Manager,點擊后界面如下:
這就沒啥好介紹的了,剩下的和Vivado操作完全一致了,第一個工具就介紹完畢了。
借助ISE IMPCAT+Xilinx JTAG下載
這個其實比較落后了,就簡單說一下,IMPCAT是ISE自帶的下載器,可以單獨使用下載固化文件,但是沒辦法調試,可以對7系列FPGA進行下載。
借助第三方軟件下載
JTAG 全稱“Joint Test Action Group”,既是個標準也是個組織,這是個由幾家主要的電子制造商(IBM、AT&T、TI、Philips 等)成立于 1985 年的組織,這個組織成立的目的是發起制訂一種 PCB和芯片測試標準。
JTAG 標準于 1990 年被 IEEE 批準為IEEE1149.1 測試訪問端口和邊界掃描結構標準。
所以不論嵌入式、單片機甚至FPGA都要執行這一標準,不同點在于上位機,上位機會識別JTAG芯片中特定碼,然后上位機才讓你用JATG對自己許可的芯片進行編程下載。所以你只要知道上位機怎么識別JTAG下載器的,你只需要一個下載器就能玩遍所有芯片。
接下倆就介紹一個開源的上位機-OpenOCD,這是一個可以給單片機、嵌入式和FPGA進行下載調試的上位機(非常牛逼!)。
詳細的介紹就不說了,我對這方面只是入門,可以看下面的鏈接,是用FT2232+OpenOCD下載FPGA的詳細介紹文章:
https://blog.csdn.net/u012780083/article/details/125489210
上面的文章當然不是我們的主角,這么復雜的操作估計會有80%的人不會嘗試,接下來介紹一個超簡單的基于OpenOCD的下載方式。
CH347+CH347FPGATool超小體積下載器
沁恒CH347芯片,USB 2.0高速設備,支持 USB轉I2C/SPI/UART/JTAG/GPIO,下面是一個開源硬件:
https://github.com/wuxx/USB-HS-Bridge/blob/master/README_cn.md
但是沒開源PCB,我自己制作了一版,開源地址:
https://oshwhub.com/openfpga/ch347-esp32-shuang-jtag
上面的硬件已經送去打板還未驗證,同步集成了ESP32,用于無線WIFI下載調試。
上位機才是核心,在下面開源項目中提供了基于OpenOCD的CH347FPGATool上位機:
https://github.com/WCHSoftGroup/ch347
下載后文件大小僅120M:
注意:使用前需要下載安裝CH347驅動(https://www.wch.cn/downloads/CH341PAR_EXE.html)。
打開后的上位機如下:
支持的FPGA列表如下:
詳細的使用手冊:
https://github.com/WCHSoftGroup/ch347/tree/main/CH347FPGATool
全中文難度不大,有BUG需要多理解。
總結
今天針對不同階段的產品FPGA代碼固化簡單說了一下,針對FPGA單獨下載<固化文件>重點說明,介紹的幾種方式推薦順序從上到下,優先使用官方解決方案,最后的方式適合開發者玩玩,批量使用還有不穩定性。
最后關于Vivado Lab下載方式優先推薦使用官網下載,我這邊提供幾個常用版本供大家使用,獲取方式:
編輯:黃飛
?
評論
查看更多