Vivado如何清理工程並保證不缺失必要文件

一、 Vivado如何清理工程並保證不缺失必要文件

前言

vivado和ISE的使用差別很大,Vivado是專門針對7系列和以後系列的FPGA/AP SOC進行高效設計的工具,特別是最近提出的UltraFast設計方法,能夠極大地提高開發效率。ISE在支持老版本器件的基礎上,目前也支持7系列/ZYNQ的設計,但是效率不能和Vivado相比。關於vivado的基本使用這裏不多說,主要把一些問題點整理成“錯題集”,把一些小技巧進行歸納。

清理/壓縮工程

實際使用vivado的過程中,由於vivado會自動產生一系列文件,有些是不必要時刻保存的中間文件,有些是加快效率的文件(比如編譯IP核後產生的文件)。但是在上傳svn或者自己做備份的時候希望備份佔用儘量少的空間。然而由於vivado不會自動清理,所以這時候就需要我們做手動清理了,很多人採用的方法是根據經驗刪除沒用的文件和文件夾,這種對於不熟悉的人很容易犯下不可挽回的錯誤。也有人寫好了批處理文件可以直接幫助刪除的,但是這都不太適合初學者。其實vivado是有tcl命令可以幫助清理的。

reset_project

reset_projec是vivado一個tcl命令,輸入後會發現所有的IP全部清掉了編譯後的文件,工程的綜合和實現也被清理掉了,所以會減少空間,下面我們用一個簡單的工程來對比下前後會少多少。
在這裏插入圖片描述
下圖爲某工程運行完成之後佔用的資源,佔用了176M。
在這裏插入圖片描述
對工程運行reset_project命令後如下圖所示,資源佔用105M,直接減少72M,也就是減少了40%!這個壓縮量還是比較可觀的。

在這裏插入圖片描述

復位後的影響

復位後是什麼效果呢?其實復位就是把裏面的綜合實現清空,包括ooc下面的IP核等都清掉,這樣就只保留了最必要的文件,從而壓縮了佔用 空間。但是這樣也帶來一個問題,如果要重新產生一個可用的版本,需要的時間會更長,這個操作實際上也就是用空間換取了時間,所以大家使用前要衡量下,不要隨便用,比較工程大了跑一次可能一天就沒了。



二、使用tcl命令保存vivado工程成.tcl文件和使用.tcl文件恢復vivado工程的方法

把vivado工程保存成.tcl文件,有兩種方法,分別是:

  1. 使用tcl命令:在打開的vivado工程中,在tcl命令輸入行,輸入如下命令,write_project_tcl { d:/work/system.tcl},即可把工程保存成.tcl文件。其中d:/work/是.tcl文件保存的路徑,可根據實際使用的需要更改,system.tcl是保存的文件名。

  2. 使用GUI操作:在打開的vivado工程中,依次點擊 File —》 Write Project to Tcl ,在Write Project To Tcl 界面設置相關參數(主要是tcl文件的保存路徑和文件名),即可把工程保存成.tcl文件。

使用.tcl文件恢復vivado工程,需要注意以下事項:

  1. 首先要打開.tcl文件,查看此.tcl文件是用哪個版本的vivado創建的,然後必須使用同樣版本的vivado軟件來運行此.tcl文件。因爲不同版本的vivado用的IP核可能不同,所以vivado版本必須先一致。
  2. 查看.tcl文件中的NOTE,把NOTE中提到的全部文件找到,並按相關提示修改.tcl文件中相關文件的路徑爲當前路徑。

使用.tcl文件恢復vivado工程,有以下兩種方法:

  1. 使用tcl命令:啓動vivado,在tcl console下,用cd命令將工作路徑指定到目標路徑,例如 cd d:/work/vivado_Project,在此路徑下保存有.tcl文件,然後輸入TCL命令 source ./system.tcl,即可完成恢復vivado工程。
  2. 啓動vivado,在vivado界面tools下,運行run tcl script,路徑指到system.tcl的保存路徑即可。

可以使用pwd命令來查看當前路徑。

參考鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章