一、介紹
Vivado是Xilinx公司出品的高級綜合工具,是用於FPGA設計的強大工具。在Vivado中,設計師可以使用HDL(硬體描述語言)或圖形界面進行設計。它支持各種FPGA和SoC器件,能夠實現綜合、實現、模擬和驗證等功能。此外,Vivado還支持多媒體和通信等領域的開發。
Vivado在FPGA工程行業中佔據著廣泛的市場,設計人員可以使用它來創建複雜的數字電路,進行實現、驗證和模擬。2017.4版本是Vivado的一個重要更新,提供了許多新的特性和功能。
二、新特性與功能
1.支持機器學習
這個版本為FPGA設計工具添加了對OpenCV和Caffe框架的支持,這使得設計人員能夠通過FPGA實現更高效的機器學習。Vivado可以生成高度定製的FPGA IP,以實現高性能的圖像、視頻和信號處理。這為圖像和視頻處理等領域提供了更好的解決方案。
2. IP支持新特性
此版本的Vivado中添加了許多新的IP(知識產權)和功能模塊。一些新的IP包括:PCIe 4.0,NVMe SSD控制器,DisplayPort 1.4 Tx,10/25/40/50/100GbE MAC和PHY。此外,IP核還可以快速升級、導入和導出。
3. 集成的 Vivado HLS
Vivado 2017.4版本還改進了Vivado HLS的集成,這是一個C代碼的高級綜合器,用於將C代碼轉換為RTL(寄存器傳輸級)代碼。實現了將C代碼直接轉換為IP核,可以大大提高設計速度和開發效率。
4. 更多的設計流程式控制制和Debug能力
此版本添加了新的Design Flows Manager,為設計人員提供了更完整的設計可視化控制流。同時,它還添加了新的Debug IP,提供了設計錯誤的日誌和實時分析。
三、示例代碼
1. Verilog代碼
module counter( input wire clk, input wire rst, output reg [7:0] count ); always @(posedge clk or negedge rst) begin if(!rst) begin count <= 8'd0; end else begin count <= count + 8'd1; end end endmodule
2. VHDL代碼
entity counter is port ( clk: in std_logic; rst: in std_logic; count: out std_logic_vector(7 downto 0) ); end counter; architecture Behavioral of counter is begin process(clk, rst) begin if rst = '0' then count '0'); elsif rising_edge(clk) then count <= count + 1; end if; end process; end Behavioral;
3. Tcl腳本
set_property -dict [list \ CONFIG.PCW_OVERRIDE_BOARD_PART xc7vx485tffg1157-2 \ CONFIG.PCW_BOARD_INTERFACE_TYPE -jtag_cfg \ CONFIG.PCW_OLD_PART_TO_NEW_PART_MAP {xc7vx485tffg1157-2 xc7vx690tffg1761-2}] \ [get_projects v_pro_inst]
四、總結
2017.4版本的Vivado是FPGA設計工具方面的一個重要更新。它添加了許多新的特性和功能,以便設計人員能夠更快速地開發出複雜的數字電路。新的IP核、機器學習和高級綜合器都是Vivado 2017.4的亮點。此外,集成的Design Flows Manager和Debug IP使得開發者能夠更好地流程式控制制和Debug。此外,示例代碼提供了在Vivado平台上使用Verilog、VHDL和Tcl進行FPGA開發的示例。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/231954.html