DVE使用教程-1

1入門

本章描述了怎樣開始使用DVE

它涵蓋以下內容:

• 基本要求

• 啟用調試

• 調用DVE

• 在命令行運行仿真

• 在GUI界面運行仿真

• 保存會話或佈局圖

• 載入已保存的會話

• 關閉數據庫

• 調用DVE

基本要求

您必須使用相同版本的VCS和DVE,以確保任意仿真中任意問題都能調試。

查詢該DVE版本的三種方法:

• 在命令行選項中鍵入dve –v

• 在DVE的命令行輸入gui_get_version指令。

• 使用Help>About幫助菜單選項。

啟用調試

本節介紹如何調用調試選項來進行仿真。 注: 如果你在一個不能寫入數據的文件夾中運行DVE,DVE將不能夠記錄日誌文件。這種情況下DVE將警告您不能夠寫入DVE文件。

編譯時間選項

-debug

調用UCLI,併為DVE的基本調試建立必要的文件

-debug_all

調用UCLI和DVE,併為進一步的DVE調試建立必要的文檔。它加入了單步調試、內存釋放、和基於斷言的調試。

-debug_pp

創建一個VPD文件(當與VCS系統任務$vcdpluson一起使用的時候)並且用-

debug_pp命令來對design進行後臺處理(post-processing),這樣能夠節省編譯的時間因為它間接的消除了-debug-debug_all的編譯的預處理程序。這樣它能夠最低限度的進行調試以便進行VPD和基於斷言的調試。這個效果在DVE的後臺處理模式下是顯而易見的。

必要文件

DVE啟動它的調試功能需要如下的輸入文件:

• VPD文件 - VPD文件是平臺獨立的,在仿真中你可以在這個根目錄下抽取選定的信號。DVE在這些文件裡可以得到層次化的、改變值的、和一些斷言的信息。基本的調試只用一個VPD文件就能在後臺(post-processing)進行。然而,VPD文件不能保證設計的所有層次都包涵在內,因為用戶可以有選擇地選擇將設計的一些子模塊存放在VPD文件中。 VPD文件是平臺獨立的。 VPD文件是有版本要求的。如果您使用相同版本的VCS和DVE來讀寫VPD文件時是沒有問題的。然而 ,如果你使用DVE從一個比它版本老的VCS中讀取VPD文件時,它就不能保證所有的DVE的功能都能使用或執行正確。注:為了保障DVE調試的功能性,用一個編譯時間選項(-debug,-debug_pp

,和-debug_all).不推薦使用VCD文件並且也不允許調試。

• MDB庫文件。DVE用MDB庫來保證信息的連通性。DVE需要MDB信息為了原理圖和所有的驅動和負載有關的調試。MDB庫文件將被存放在運行模擬的文件夾內。MDB文件是依附於平臺的(因此為了應用DVE必須和MDB庫在同一平臺上運行)。更嚴格地說,為了確保操作的正確性,VPD文件和MDB庫應該都由相同的仿真產生。

• OVA庫。DVE用這個庫是為了進行更高級的斷言調試。當VCS的編譯選項都用的正確並且一個設計中包含了OVA/SVA/PSL的斷言方法時才能生成這個庫。這個庫也是依附於平臺的。

• 覆蓋率數據庫(coverage databases).在DVE中你需要指定3種類型的coverage databases當中的一種來顯示覆蓋信息。如果其他類型的覆蓋也存在,DVE也會將他們打開。

你可以選擇下面2種類型的數據庫中的任意一種:

- 一個代碼覆蓋率的文件夾(被VCS或VCS MX在Verilog頂層設計中默認為simv.cm或者時被VCS MX在VHDL頂層設計中默認為scsim.cm)。

- 一個Open Vera 或SystemVerilog斷言庫文件夾(被VCS默認為

simv.vdb

調用DVE

這節描述了怎樣調用DVE。

dve –help

顯示DVE基本的指令

dve –help all

顯示所有的DVE指令

dve –v|-V

顯示版本信息

64位技術支持平臺

-full64

當你已經指定平臺的時候,在運行時間輸入就能夠啟動64位的DVE功能。為了達到64位的支持,輸入下面指令:

dve –full64

可以輸入下面指令中的一個來指定平臺:

- linux RH3.0 64-bit:

Sentenv VCS_TARGET_ARCH amd64

- SuSE9 64-bit:

Sentenv VCS_TARGET_ARCH suse64

- Solaris 64-bit;

Setenv VCS_TARGET_ARCH sparc64

後臺處理程序

dve

不帶參數,打開並且清空了一切DVE的頂層窗口。在這裡DVE能夠在後臺或交互式的模式下進行使用。

dve –vpd filename

打開DVE並且讀入在命令行給出的VPD文件,併為設計打開一個頂層視圖。

dve –vpd filename –session filename

打開DVE並且讀入在命令行給出的VPD文件,它們打開一個以前保存過的TCL文件的會話。

交互式界面

dve –nogui

啟動了UCLI模式進行調試。DVE的GUI界面是不顯示的。

sim –ucli

運行VCS/VCS MX來幫助UCLI調試,DVE GUI不能被顯示出來。

simv –gui

在simv仿真的0時刻打開DVE。

vcs –gui –R

與上面相同但是是在編譯時調用。

dve –toolexe name –toolargs simulator args

運行一個與模擬器相連的DVE,這個模擬器的名叫name並且運行DVE的時候具有在模擬器中指定的

args屬性.

simv –gui –tbug

調用集成平臺進行調試。

腳本命令(Scripts):

dve –cmd "cmd"

啟動DVE並且執行括在雙引號中的TCL指令。當需要執行多條指令的時候是允許用分隔號的。

dve -script name

啟動DVE並且讀入由name所指定的TCL腳本文件。

dvesession name

啟動DVE並且讀入一個會話文件(session)。如果-session-script選項一起使用的話,先執行會話命令後執行腳本命令。

DVE的日誌文件

調用DVE的時候會在文件夾裡生成下面2個日誌文件(log files)。這些日誌在有問題的情況下反饋給Synopsys公司是非常有用的。

dve_gui.log –包含所有通過控制檯日誌的輸入和輸出。

dve_history.log –包含了發生在調試會話週期中的所有指令。這個文件對記錄腳本再運行是非常有幫助的。

在命令行運行仿真

DVE與VCS, SystemVerilog, 和NTB (OV 和 SV)

運行DVE,你必須在編譯時調用它。你可以用-debug,-debug_all或者-debug_pp屬性來調用DVE,或者將DVE設置成默認的命令行界面。

一起運行DVE和VCS,需要輸入帶有DVE使能的VCS命令行選項。

vcs (-debug | -debug_all | -debug_pp) [-sverilog] [-ntb] [VCS_options] design.v [testbench_files]

simv -gui [runtime_options]

VCS MX和VHDL

純粹的VHDL

運行一個帶有DVE的VHDL仿真,需要輸入一個帶有DVE使能選項的VCS MX指令:

vhdlan design.vhd

scs cfg_tb (-debug | -debug_all)

scsim -gui [runtime_options]

一個擁有Verilog為頂層文件的混合仿真

運行一個Verilog為頂層文件的Verilog/VHDL的混合仿真時,輸入下面帶有DVE使能選項的指令(options enabling DVE):

vcs -mhdl (-debug | -debug_all) [options] design.v

simv -gui [runtime_options]

一個擁有VHDL為頂層文件的混合仿真

運行一個VHDL為頂層文件的Verilog/VHDL混合仿真,輸入下面帶有DVE使能選項的命令:

vlogan Verilog_files [options]

vhdlan vhdl_filename -vlib Verilog

scs cfg_tb (-debug | -debug_all) -verilogcomp "options"

scsim -gui -verilogrun "-q" [options]

檢查點還原的方法

當保存和還原一個仿真的時候,用相同的技術或流程來還原你曾經保存的檢查點(checkpoint),例如:

• 應用UCLI指令保存和還原

• 在DVE中保存和還原

• 應用SCL指令保存和還原

• 應用CLI指令保存和還原

千萬不要將保存和還原的指令相互之間弄混,例如:

• 用UCLI指令保存卻用SCL指令還原

• 在DVE中保存卻用CULI指令還原

• 保存用UCLI指令卻用DVE還原

• 用CLI指令保存卻用UCLI指令還原

並且如果你正在提交一個用VHPI或PLI與VCS MX通信的外部申請,並且已經有文件為了這個申請被打開了,在你還原後你必須在你下次保存或者打開之前將這些文件關掉。

C,C++,和System C代碼

以下步驟主要概括了用UCLI去調試VCS或是VCS MX上的那些含有C,C++,和SystemC的源代碼的仿真。

像通常那樣編譯包含C,C++,和System C模塊的VCS或VCS MX,確保所有的你要調試的C文件都被編譯到。

例如,一個有Verilog在C或C++模塊頂層的設計:

gcc -g [options] -c my_pli_code.c

vcs +vc -debug_all -P my_pli_code.tab my_pli_code.o

或者一個有Verilog在SystemC模塊頂層的設計:

syscan -cflags -g

syscan -cpp g++ -cflags "-g" my_module.cpp:my_module

vcs -cpp g++ -sysc -debug_all top.v

注意你必須用-debug或-debug_all來調用調試功能。

在DVE中打開仿真

Simv –gui

3、選擇Simulator > C/C++ Debugger來啟動C調試器。

在GUI界面運行仿真

你可以在GUI界面打開DVE並且運行仿真。

後臺處理程序(Post-processing)

對於後臺處理程序來會說你可載入並且顯示任何數目的VPD文件。在DVE中打開一個數據庫文件:

做下面兩個操作中的任意一個:

- 在

Menu按鈕下,選擇File>Open Database.

- 在工具欄點擊

DVE使用教程-1

圖標。

打開數據庫文件的對話框就出現了

DVE使用教程-1

2、在打開數據對話框裡,翻閱到並且選擇你要載入的VPD文件。

3、為你的設計輸入或選擇一個名字。

4、輸入時間範圍來載入。默認的是從仿真開始到結束。

5、點擊Open

DVE就載入了所選的VPD文件。

創建並且運行一個交互式的會話

另外為了後臺處理載入的VPD文件,你也可以應用一個編譯過的Verilog,VHDL,或是二者的混合設計,來實時的創建並且交互式的運行一個仿真。

在命令行打開DVE

%dve

選擇Simulator>Setup,然後從模擬器的創建對話框選擇開始仿真。

DVE使用教程-1

翻到一個模擬器的可執行界面(simulator excutable).

輸入模擬器的屬性。

設置這個VPD文件的名字或選擇一個已存在的文件,該文件將會在交互式的會話中被寫入。

點擊OK創建仿真。

運行仿真

這節描述了應用DVE來運行並且控制仿真。

涵蓋了下面的幾方面內容:

-工具欄的應用

-仿真其菜單命令的應用

-命令行選項的應用

工具欄的應用

當開始一個仿真的時候,DVE激活了工具命令行來運行和控制仿真。在模擬器中點擊下面這些圖標來控制仿真。

模擬器(Simulator)菜單命令的應用

在開始仿真後,可以用菜單命令來運行和控制仿真程序。選擇下面的命令來控制仿真:

命令行的應用

用DVE頂層窗口底部的命令行進入DVE,並且統一命令行界面(UCLI)運行並且控制仿真的執行。圖1-2展示了在哪輸入指令並且有結果顯示在命令行上面的日誌文件(Log tab)裡。

DVE使用教程-1

查看DVE的指令可以輸入:

help –gui

應用UCLI時為了得到完整的信息,注意統一的命令語言的用戶嚮導。例如一個快速視圖查看的UCLI指令和它的應用,在DVE命令行快速的輸入:

help –ucli [argument]

當輸入沒有指定屬性的時候,UCLI的指令列表和一個簡短的描述就被顯示出來了。輸入一個命令名作為屬性的時候,描述和指令的規則就被顯示出來了。

UCLI指令和詳細的描述被顯示出來。

保存會話或佈局圖

用保存會話對話框來存儲(preserve)會話數據顯示圖和VPD路徑選項。

1、選擇 Select File>Save Session

DVE使用教程-1

2、在保存會話對話框中為該會話輸入一個文件名

3、在選項上進行選擇來指定會話的類型後保存:

- 所有的會話數據包括佈局圖、波形列表、數據庫和仿真狀態。

- 窗口布局圖保存了窗口協議(arrangement)、外觀(views)、和窗格為了今後的複用。這個選項不會保存任何的數據內容。

- 所有組裡面的全部信號保存了所有信號組的信號列表。

- 對於觀看一個波形或列表來說,只有為了觀看的信號列表保存了信號信號列表。在打開任何必要的模擬器或VPD文件後,這個信號列表能夠用當前的信號列表重新載入一個窗口。

4、為VPD選擇一個路徑選項:

- 對於多個打開的VPD文件來說默認是保存絕對路徑。

- 對於一個打開的VPD文件來說保存的是相對路徑(相對指向於會話文件存儲的文件夾)

- 不要保存打開的VPD文件。如果混合設計被打開了,該選項就被屏蔽掉了。

5、選擇保存內容:

- 僅保存窗口布局圖

- 所有組中的全部信號

- 觀看一個波形或列表,僅保存用來觀看的信號列表

6、點擊保存。

保存一個佈局圖會話

保存一個窗口布局圖,並且保持窗口的位置,窗口的大小,和一些其他的所出現的設置而不保存窗口的內容,進行下面的操作即可:

1、選擇File > Save Layout Session

2、在保存會話對話框為該佈局圖會話輸入一個文件名。

3、點擊保存(Save)。

載入已保存的會話(session)

載入一個保存過的會話:

1、載入一個VPD文件。

2、選擇File>Load Session.

3、在載入會話對話框,導入該會話並且在保存過的會話TCL文件列表中將其選中。

4、點擊載入(Load

關閉數據庫

關閉當前打開的數據庫:

做下面2步中的任意1步

- 選擇File>Close Database

- 在工具欄點擊關閉數據庫圖標

DVE使用教程-1

出現了關閉數據庫對話框。見圖1-3.

DVE使用教程-1

確保選對數據庫,然後點擊OK

退出DVE

選擇File>Exit,退出DVE。


分享到:


相關文章: