在仿真Vivado IP核時分兩種情況,分為未使用SECURE IP核和使用了SECURE IP核。
對于沒有使用SECURE IP核的IP核仿真,只需要在VCS的命令行加上‘-y’選項,并給出庫文件路徑。這些庫文件在VIVADO_INSTALLER_PATH\\data\\verilog\\src,其中VIVADO_INSTALLER_PATH是VIVADO的安裝路徑,進入對應的版本號,比如2019.2,進入后找到data文件夾依次往下尋找。找到后可以把這些庫文件復制到虛擬機,每個文件夾的庫文件包含的內容不同,然后如下圖:
即可加入對應的庫文件夾。IP核仿真結束。
對于使用了SECURE IP核仿真的情況,除了要包含上面的這些庫文件外,還要把SECURE IP加入到VCS;
首先,找到SECURE IP文件夾,在$VIVADO_INSTALLER_PATH\\data\\secureip,將里面的文件復制到虛擬機。每個文件夾包含的功能不同。
之前的文章講接下來的操作如下:
操作上還是太復雜,這里簡化操作如下。首先,VCS在仿真SECURE IP里面的VP文件時,需要加上一句“+verilog2001ext+.vp”,這句話的意思是將VP文件以verilog2001標準執行。出處在:
這是一份日語版本的UG900(參考資料2),但是在最新的UG900 英文版里(參考資料3),并沒有這相關的內容;我的猜測是Xilinx不推薦獨立仿真的方式,更加主推Vivado和VCS聯合仿真,或者使用“export_simulation”等TCL語句將仿真庫編譯好直接使用的方式。
此外,也不需要我們修改SECURE IP文件夾的vcs_secureip_cell.list.f里面的路徑,在makefile文件里使用如下方法:
使用export命令定義XILINX_VIVADO的路徑,這樣vcs_secureip_cell.list.f會根據這個路徑去查找對應的文件。
注意,SECURE IP是加密之后的IP,而VIVADO在2016版本后更換了加密密鑰,所以VCS2017之前的版本只能使用VIVADO2017之前的SECURE IP。
此外,還有網友提出問題,VIVADO項目(source)IP核文件夾里,哪些東西是對仿真有用的?
首先,IP核文件夾里的IP_NAME_stub.v,IP_NAME是生成IP的名字,這個文件是沒有用的,它只有對IP的端口定義;其次,進行功能仿真時,可以選擇IP_NAME_sim_netlist.v,這個文件注釋專門寫著是為功能仿真準備的,推薦使用這類文件;最后,也可以使用IP_NAME.v,這個文件大多數情況也可以用來仿真。
注意,如果存在IP_NAME_sim_netlist.v和IP_NAME.v時,只能選擇一個文件加入仿真,否則會出現redefine的報錯。因為IP核文件夾里面可能存在多個verilog文件,推薦刪去IP_NAME_stub.v,保留IP_NAME_sim_netlist.v和$IP_NAME.v中的一個,然后在VCS命令里將文件夾的verilog都包含進來。
可能有人就會問,既然項目里的IP文件夾包含了verilog文件,為什么還要加入那些庫;這些庫大部分是作為基礎庫存在,供各類IP核調用,是它們的相同部分,而項目里的IP文件夾是它們之間不同的部分。
-
仿真器
+關注
關注
14文章
1020瀏覽量
84151 -
VHDL語言
+關注
關注
1文章
113瀏覽量
18219 -
TCL
+關注
關注
10文章
1761瀏覽量
89144 -
VCS
+關注
關注
0文章
80瀏覽量
9698 -
虛擬機
+關注
關注
1文章
954瀏覽量
28631
發布評論請先 登錄
相關推薦
評論