用modelsim對每一個新的工程進行仿真時,都要進行仿真參數的設置,感覺挺不方便的。那么能不能把這些參數的設置和啟動仿真做成一鍵式完成呢?在vivado中完全是可以實現的,不得不承認它的強大啊。呵呵,接下來看它是如何實現一鍵式仿真的。
選擇菜單“Tools”——>“Customize Commands”——>“Customize Commands...”命令,如圖1所示。
圖1 選擇“Customize Commands...”命令
在彈出的對話框中,點擊“+”號,輸入一個菜單名稱modelsim_sim,按確定完成定制命令的添加,如圖2和圖3所示。
圖2 添加定制命令modelsim_sim之一
圖3 添加定制命令modelsim_sim之二
在定制命令的編輯中,可以設置命令的快捷鍵(這里不設置),輸入tcl命令或tcl文件(這里選擇事先準備好的tcl文件),勾選“添加到工具欄”,工具提示為“function simulation with modelsim”,并選擇一個圖標,如圖4所示。
圖4 定制命令編輯
點擊“Apply”、“OK”完成命令的定制。
其中,simulation.tcl的內容如程序清單1所示。
程序清單1
set_property target_simulator ModelSim [current_project] set_property compxlib.compiled_library_dir C:/modeltech64_10.2c/vivado2014_lib [current_project] launch_simulation
以上三條命令的意思分別為選擇仿真工具modelsim、設置器件庫路徑和啟動仿真。
定制命令完成后,該命令將出現在菜單欄和工具欄中,如圖5和圖6所示。
圖5 定制命令在菜單欄
圖6 定制命令在工具欄
以后對設計進行仿真直接點擊工具欄的圖標就可以了。
Xilinx文檔的數量非常多。即使全職從事FPGA相關工作,沒有幾年時間不可能對器件特性、應用、注意事項等等有較為全面的了解。本文記錄了我自使用Xilinx系列FPGA以來或精讀、或翻閱、或查詢過的文檔,及其主要內容。如果有新的會隨時補錄進來。以下按照個人理解對文檔進行了分類,不一定恰當,也會有重疊的情況,歡迎提出意見。
ds180:7系列器件概述,介紹不同器件的資源、IO分布、工作頻率、收發器數量、DSP類型、IO電壓等等。
ds190:Zynq-7000系列器件概述。
ug471:7系列器件SelectIO的技術手冊,內容包括SelectIIO資源(電平標準、DCI、匹配等)、IDELAY、IDELAYCTRL、ISERDESE2、OSERDESE2等等。
ug472:該手冊詳細描述了7系列器件的時鐘資源,如時鐘架構、時鐘布線資源、時鐘管理等等。
ug473:詳細介紹7系列器件的Block RAM資源。
ug474:詳細介紹7系列器件的可配置邏輯塊(CLB)的結構、特點、應用、分布等等。
ug475:詳細介紹7系列器件的封裝、尺寸、管腳分布、熱特性等等。
ug479:7系列器件中DSP單元的架構、使用方法、應用等。
ug480:7系列器件內置XADC的詳細介紹。
ug953:7系列器件設計庫,包含7系列器件幾乎所有的Macro和Primitive。
UltraScale系列器件
ds890:ultrascale系列器件概述。
ds891:UltraScale+ Zynq器件概述。
ds892:KU器件概述。
ds893:VU器件概述。
ds923:VU+器件概述。
pg188:High Speed SelectIO Wizard,UltraScale和UltraScale+系列器件SelectIO使用向導,其實就是ISERDES和OSERDES的使用向導。
ug571:UltraScale系列器件SelectIO的技術手冊,內容包括SelectIO資源(電平標準、DCI、匹配等)、IDELAY、IDELAYCTRL、ISERDESE2、OSERDESE2等等。
ug572:該手冊詳細描述了UltraScale系列器件的時鐘資源,如時鐘架構、時鐘布線資源、時鐘管理等等。
ug573:詳細介紹UltraScale系列器件的Block RAM資源。
ug574:詳細介紹UltraScale系列器件的可配置邏輯塊(CLB)的結構、特點、應用、分布等等。和7系列的區別挺大。
ug575:詳細介紹UltraScale系列器件的封裝、尺寸、管腳分布、熱特性等等。
ug580:UltraScale Architecture System Monitor,其實和ug480講的內容差不多,主要是內置XADC的詳細介紹。
ug974:UltraScale系列器件設計庫,包含7系列器件幾乎所有的Macro和Primitive。
ds181、ds182、ds183、ds187:分別詳細介紹A7、K7、V7和Zynq-7000系列器件的電氣特性,如直流電平、交流特性、上電順序、收發器電氣特性、eFUSE編程等等。
ug470:詳細介紹7系列器件的多種配置方法和電路。
xapp520:如何將7系列器件HP IO與2.5V/3.3V的I/O標準互連。
7_Series_Schematic_Review_Recommendations_xart_040714.xls:7系列器件原理圖設計自查/復查建議表,做設計時可以對著檢查,130多條。
XTP031:FPGA System Design Checklist,與上面的excel文檔作用相似。
xapp583:介紹使用微處理器,通過Slave Serial或Slave Select MAP方式配置7系列FPGA的方法。
xapp586:介紹如何使用SPI Flash配置7系列FPGA。
ug483:7系列FPGA PCB設計指南。
ug583:UltraScale系列FPGA PCB設計指南。
ds892、ds893、ds923:分別介紹Kintex UltraScale、Virtex UltraScale和Virtex UltraScale+系列器件的電氣特性。
ug570:詳細介紹UltraScale系列器件的多種配置方法和電路。
嵌入式設計
pg116:MicroBlaze Micro Controller System,介紹MicroBlaze Micro Controller System(MCS)。
pg201:Zynq UltraScale+ MPSoC Processing System產品手冊。
ug898:Vivado Design Suite User Guide: Embedded Processor Hardware Design,介紹Zynq-7000類SoC和MicroBlaze的設計和使用,包含硬件設計和軟件設計。
ug984:MicroBlaze Processor Reference Guide。
ug1043:Embedded System Tools Reference Manual。基于Cortex A9 arm處理器和MicroBlaze介紹嵌入式系統工具和嵌入式設計流程的框架。
ug1209:Zynq UltraScale+ MPSoC: Embedded Design Tutorial,是MPSoC比較重要的上手指南,入門可以用這個。
ug129:PicoBlaze 8-bit Embedded Microcontroller User Guide,非常輕量級的一個8bit嵌入式微控制器,省資源,挺好用。
ug908:Vivado Design Suite User Guide,Programming and Debugging。介紹基于Vivado的編程和調試步驟和方法。
ug835:Vivado Design Suite Tcl Command Reference Guide,Vivado使用的Tcl腳本指令參考手冊。
ug871:Vivado HLS的幫助文檔。
ug892:Vivado設計流程概述。
ug893:Vivado IDE環境幫助文檔。
ug894:Vivado Design Suite User Guide: Using Tcl Scripting,介紹Tcl腳本語言的作用和使用方法。
ug896:介紹Vivado中IP的使用,以及基于IP的設計方法。
ug899:介紹在Vivado中如何進行IO和時鐘planning。
ug900:介紹在Vivado中如何進行邏輯仿真。
ug908:介紹在Vivado中如何進行編程和調試,主要講Vivado IDE的使用。
ug909:主要將partial reconfiguration,就是PR,目前挺火的,我只是有很膚淺的了解。
ug910:Vivado Getting Started。
ug911:介紹如何將設計向Vivado遷移。
ug912:屬性參考手冊,這里的屬性包括BEL/CELL/NET/PIN/PORT/SITE這樣的對象,也包括ASYNC_REG/BEL/CLOCK_ROOT/DC-_CASCADE/DIFF_TERM/DONT_TOUCH/PBLOCK/VCCAUX_IO這一類的屬性,非常有用。
7series_hdl:7系列器件HDL設計庫,包括所有可用的Macros和Primitives。比如BRAM_SINGLE_macro、ADDSUB_MACRO、BUFG、CARRY4、FDRE、GTHE2_CHANNEL、IBUF、LUT4、MMCME2_ADV、PHASER_IN、RAMB36E1等等。
ug936:一個使用Vivado進行編程和調試的手把手的教程。
ug947:一個使用Vivado進行PR設計的手把手的教程。
ug949:UltraFast設計方法指南。這是一個非常全面的文檔,部分內容比較深入,部分內容只是介紹。主要是一些方法、流程、工具、概念的介紹。比如HLS設計、基于IP的設計方法、仿真、Project和Non-Project比較、板級設計、PCB設計、編碼風格等等。
ug975:Vivado Quick Reference。非常非常有用的一個速查手冊,涉及各個方面,主要包括Tcl介紹(索引)和文檔介紹。隨便列幾個大的條目:Getting Help、Simulation Commands、Main Reporting Commands、Design Object Query Commands、Timing-based Query Commands、Filtering、Tcl Examples、Batch Mode Script Examples、Timing Constraints。
ug994:Designing IP Subsystems Using IP Integrator。
ug908:Vivado Design Suite User Guide,Programming and Debugging。介紹基于Vivado的編程和調試步驟和方法。
pg172:ILA,介紹如何應用Integrated Logic Analyzer進行調試。
ug904:Vivado Design Suite User Guide,Implementation。
ug905:Hierarchical Design設計方法。Hierarchical設計要用好不容易,對FPGA器件、設計方法學、架構要有非常深入的了解。曾經用過,但是對我參與的項目不適用(主要是沒見過世面),所以放棄。
ug901:介紹如何進行設計綜合,內容包括綜合策略選擇、綜合技巧、設計原則等等。
ug903:介紹如何使用約束,包括IO位置約束、延時約束、時序約束、物理約束、CDC約束等等。
ug906:介紹如何對自己的工程進行分析和改進,進而實現時序收斂。
ug1292:UltraFast Design Methodology Timing Closure Quick Reference Guide,實現Ultra器件時序收斂的快速參考,非常有用。
pg021:AXI DMA手冊,用于實現AXI4 memory map和AXI4-Stream接口之間的高帶寬傳輸。可應用于基于處理器(CPU)的系統中。
pg022:AXI DataMover手冊,用于實現AXI4 memory map和AXI4-Stream的高帶寬數據傳輸,主要包含S2MM和MM2S兩個接口。
pg034:AXI CDMA手冊,使用AXI4協議實現memory map地址之間的DMA。
pg059:AXI Interconnect手冊,AXI系統設計中最常用的IP,用于實現任何AXI Master和Slave之間的智能互聯,可自動實現協議轉換(AXI4, AXI3, or AXI4-Lite)和時鐘域轉換。
pg067:AXI Chip2Chip手冊。AXI Chip2Chip可以通過AXI接口實現兩個器件之間的無縫互聯。
pg078:AXI Block RAM Controller手冊,可以實現AXI系統與器件內部BRAM的互聯,支持單次讀寫和突發讀寫。
pg144:AXI GPIO手冊。
pg164:Processor System Reset Module手冊,實現整個系統(包括processor、interconnect和peripheral)的復位。
pg247:SmartConnect手冊,實現類似多個memory map master和多個memory map slave之間的互聯,我還沒有用過。
pg288:AXI Multichannel Direct Memory Access手冊,我還沒有用過。
ug761:AXI Reference Guide用戶手冊,介紹AXI協議的關鍵概念、概述AXI的使用、如何將現有設計遷移到AXI下。
ug1037:Vivado Design Suite: AXI Reference Guide,與ug761相似,增加了UltraScale器件以及在Vivado中的使用介紹。
pg066:JESD204接口IP。
pg198:JESD204物理層IP。
pg057:Fifo Generator。
pg058:Block Memory Generator。
ug586:7 Series FPGAs Memory Interface Solutions,介紹存儲器接口使用,包含例化、使用方法、PCB設計等等,存儲器類型包括DDR3、DDR2、QDRII+、RLDRAM II/III、LPDDR2等。
xtp359-memory-ip-ultrascale-design-checklist.xlsm:UltraScale器件存儲器接口設計自查表。
pg054:7系列FPGA的PCIe接口IP說明文檔,內容包括PCIe接口概述、電氣特性、使用方法、設計步驟、仿真調試等等。
pg023:Virtex7器件PCIe Gen3接口的產品手冊。
pg054:7系列器件PCIe接口產品手冊。
pg195:DMA/Bridge Subsystem for PCI Express,就是XDMA的產品手冊。
AR# 58495:Xilinx PCI Express Interrupt Debugging Guide,調試PCIe中斷用得上。
AR# 65444:XDMA驅動和軟件使用。(數字簽名真煩人)。
xapp888:7系列器件中MMCM和PLL的動態重配置。
ug476:7系列器件收發器的用戶手冊,內容涵蓋收發器內部資源的詳細描述和使用方法,硬件電路設計注意事項,收發器應用等等。
ug576:UltraScale系列器件GTH收發器的用戶手冊。
ug578:UltraScale系列器件GTY收發器的用戶手冊。
pg074:Aurora接口產品手冊。
pg196:UltraScale系列GTY Ibert的產品手冊,在收發器調試中非常有用,值得擁有!
pg173:UltraScale系列GTH Ibert的產品手冊。
ug429:介紹如何將設計從Virtex6移植到7系列器件。
————————————————
版權聲明:本文為CSDN博主「小蒼蠅別鬧」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/yinyeyy/article/details/104566824