FPGA的HLS案例開發|基於Kintex-7、Zynq-7045_7100開發板
前 言
本文基於創龍科技TLK7-EVM開發板,是一款基於Xilinx Kintex-7系列FPGA設計的高端評估板,由核心板和評估底板組成。核心板經過專業的PCB Layout和高低溫測試驗證,穩定可靠,可滿足各種工業應用環境。
評估板接口資源豐富,引出FMC、SFP+、PCIe、SATA、HDMI等接口,方便用戶快速進行產品方案評估與技術預研。
圖1 TLK7-EVM評估板
開發案例主要包括:
l CameraLink、SDI、HDMI、PAL視頻輸入/輸出案例
l 高速AD(AD9613)採集+高速DA(AD9706)輸出案例
l AD9361軟件無線電案例
l UDP(10G)光口通信案例
l UDP(1G)光口通信案例
l Aurora光口通信案例
l PCIe通信案例
l 案例源碼、產品資料(用戶手冊、核心板硬件資料、產品規格書):site.tronlong.com/pfdownload
本文主要介紹HLS案例的使用說明,適用開發環境:Windows 7/10 64bit、Xilinx Vivado 2017.4、Xilinx VivadoHLS 2017.4、Xilinx SDK 2017.4。
Xilinx Vivado HLS(High-Level Synthesis,高層次綜合)工具支持將C、C++等語言轉化成硬件描述語言,同時支持基於OpenCL等框架對Xilinx可編程邏輯器件進行開發,可加速算法開發的進程,縮短產品上市時間。
HLS基本開發流程如下:
(1) HLS工程新建/工程導入
(2) 編譯與仿真
(3) 綜合
(4) IP核封裝
(5) IP核測試
HLS案例位於產品資料“4-軟件資料\Demo\FPGA-HLS-demos\”目錄下,案例目錄詳細說明如下表。
表1
hls_ip_demo |
bin |
IP核測試程序可執行文件 |
project |
IP核測試程序Vivado工程 |
|
vivado_hls |
ip_package |
IP核 |
poject |
solution1 |
仿真方案 |
src |
HLS工程源碼 |
|
test_bench |
HLS工程仿真程序或測試文件 |
|
vivado_hls.app |
HLS工程文件 |
HLS詳細開發說明可參考產品資料“6-開發參考資料\Xilinx官方參考文檔\”目錄下的《ug871-vivado-high-level-synthesis-tutorial.pdf》和《ug902-vivado-high-level-synthesis.pdf》。
編譯和仿真C代碼
仿真程序位於工程的test_bench目錄下,用於驗證src目錄下的HLS工程源碼。
導入HLS工程後,點擊(Run C Simulation)進行編譯與仿真。
圖5
彈出如下界面,勾選“Launch Debugger”,並點擊OK。
圖6
編譯完成後即可全速或單步運行仿真代碼。
圖7
綜合
本小節演示將C/C++等程序綜合成爲RTL設計,並生成綜合報告。
點擊界面右上角Synthesis返回至工程界面,然後點擊進行綜合。
圖8
圖9
綜合完成後,報表文件將自動打開。
圖10
通過報表文件可查看本設計的時延、資源佔用等信息。
圖11
HLS工程導入
雙擊桌面如下圖標打開Xilinx Vivado HLS 2017.4,並在彈出的界面中點擊“Open Project”選擇案例“vivado_hls\project\”目錄,然後點擊“確定”導入HLS工程。
圖2
圖3
圖4
亦可新建HLS工程,並使用C/C++等語言進行程序編寫。
IP核封裝
綜合完成後,點擊生成IP核。
圖12
圖13
圖14
運行完成後,將會在案例“vivado_hls\project\solution1\impl\ip\”目錄下生成IP核。
圖15
圖16
IP核測試
進入案例“hls_ip_demo\project\”的IP核測試程序Vivado工程目錄,雙擊.xpr文件打開工程,工程默認已添加待測試的IP核。
圖17
如需自行導入IP核,請參考如下步驟。
(1) 請點擊“IP Catalog -> User Repository -> Add IP to Repository…”,在彈出的界面中選擇IP核後點擊OK。
圖18
圖19
(2) 右擊“User Repository”後點擊“Refresh Repository”,即可看到添加的IP核。
圖20
圖21
(3) 如需添加Vivado自帶的IP核,點擊“Open Block Design”,在彈出的界面中點擊,並選擇所需IP核將其導入工程。
圖22
圖23
點擊Vivado界面左側的“Generate Bitstream”選項,在彈出的界面中點擊OK進行IP核測試程序Vivado工程編譯。
圖24
圖25
編譯完成後,將會在工程“led_flash.runs\impl_1\”目錄下生成.bit和.bin格式可執行文件。
圖26
請參考基於Vivado的FPGA程序加載與固化手冊加載.bit格式可執行文件,即可看到評估底板的LED2進行閃爍。