溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真

發(fā)布時間:2021-10-21 17:40:25 來源:億速云 閱讀:163 作者:柒染 欄目:互聯(lián)網(wǎng)科技

今天就跟大家聊聊有關Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據(jù)這篇文章可以有所收獲。

VCS和Verdi是IC設計中常用的兩款開發(fā)工具。VCS是Synopsys公司的產(chǎn)品,和大家所熟知的ModeSim一樣的都是EDA仿真工具。Verdi是Nocas公司(已經(jīng)被Synopsys收購)的產(chǎn)品,早前的版本叫Debussy,是一款十分優(yōu)秀的Debug工具。雖然VCS中的DVE也能查看波形和Debug,但是Verdi則顯得更專業(yè)一些。唯一讓很多初學者感到不舒服的就是他們都需要在Linux環(huán)境中才能使用,這對于習慣了Windows環(huán)境下操作的人來說非常不友好,但在公司開發(fā)項目時常常都是Linux環(huán)境,方便大型項目開發(fā)時的管理和團隊協(xié)作,即便是FPGA的開發(fā)也是如此,學會了這兩款工具后我們也同樣可以用于FPGA開發(fā)。

值得慶幸的是網(wǎng)上已經(jīng)有很多朋友做好了一套IC學習的開源鏡像,如圖1所示為我使用的其中一個開源鏡像介紹,我們下載鏡像包后只需要用虛擬機(我所安裝的虛擬機版本為VMware14)打開“EDA.vmx”文件即可使用已經(jīng)安裝好的全套IC開發(fā)工具。即便是這樣免去了眾多軟件安裝繁瑣易出錯的過程,而在使用中依然還會遇到很多麻煩,下面我就要給大家講一下我最近遇到的關于VCS2014和Verdi2015聯(lián)合仿真遇到的困難,也在此感謝幫助我解決該問題的所有朋友。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真

圖1

因為VCS和Verdi這兩個工具的開發(fā)者最初并不是一家公司,所以他們之間的聯(lián)合使用并不友好,VCS所產(chǎn)生的“.vpd”文件Verdi并不能直接使用,而是需要轉化為Verdi可識別的“.fsdb”文件才行,所以我們要先生成“.fsdb”文件,就是這個過程折騰了我很久。

我是用一個簡單狀態(tài)機的例子來進行的驗證,先寫好四個所需的文件,名為“moore.v”的RTL代碼,名為“moore_tb.v”的Testbench,一個包含各種命令的“Makefile”文件和一個“file_list.f”設計列表文件。在此之前已經(jīng)在VCS上的DVE進行了Debug,也可以單獨打開Verdi,現(xiàn)在需要將他們通過“.fsdb”文件聯(lián)合起來Debug。經(jīng)查閱資料知道,要生成“.fsdb”文件需要在Testbench中加入圖2所示的幾行用于產(chǎn)生“.fsdb”文件代碼。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖2

然后運行如圖3所示的Makefile文件中的“com”編譯命令。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖3

在“Terminal”中輸入“make com”后出現(xiàn)如圖4所示的錯誤,閱讀錯誤信息可以知道大概的意思,大概意思是系統(tǒng)沒有找到在Testbench文件中新添加的系統(tǒng)函數(shù)。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖4

如圖5所示,經(jīng)查閱資料在Makefile中添加了“-fsdb”。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖5

然后繼續(xù)在Terminal中輸入“make com”命令,如圖6所示又報出來新的錯誤,意思大概是沒有在環(huán)境變量中“NOVAS_HOME”。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖6

    我們用GVIM打開環(huán)境變量設置文件進行設置,如圖7所示在Terminal中輸入“gvim ~/.bashrc”命令打開環(huán)境變量設置文件指定“NOVAS_HOME”的路徑。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真

圖7

如圖8所示,我們找到Verdi2015的安裝路徑,然后在圖9中相應的位置進行更改。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真

圖8

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖9

繼續(xù)在Terminal中輸入“make com”命令,發(fā)現(xiàn)還是報出和圖6一樣的錯誤,說明我們設置的環(huán)境變量沒有起作用,一直懷疑了很久自己是不是在環(huán)境變量的設置上出了問題,終于在朋友的幫助下經(jīng)過多次嘗試發(fā)現(xiàn)每次設置完環(huán)境變量后需要重新啟動虛擬機,否則環(huán)境變量的設置將無效,一定要記住。

    重啟虛擬機后,如圖10所示再次輸入“make com”命令發(fā)現(xiàn)果然有變化了,但又是一個新的錯誤,大概意思是說版本不支持相關的問題,還提到了庫路徑,真讓人頭大。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖10

然后趕緊查閱網(wǎng)上的資料,其中有說到,只需要添加如圖11所示的兩個文件就可以了。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖11

但是令人失望的是報出了如圖12所示的錯誤,意思大概是我裝的VCS是32位的,和64位的Verdi不兼容,天呢,這錯誤太離譜了,我又到處開始找答案,最終證實我使用的VCS是64位的,沒問題。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖12

經(jīng)過朋友的指點,刪除了網(wǎng)上查找的內容(可能也是對的但是不能解決我遇到的這種情況),然后改成如圖13所示的內容,即在原來“-fsdb”命令的基礎上再添加一個“-full64”,表示在64-bit模式下編譯,生成64-bit模式仿真的可執(zhí)行文件,然后繼續(xù)輸入“make com”命令。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖13

這次真的是出現(xiàn)了奇跡,沒有任何報錯,我趕緊輸入“l(fā)s”命令如圖14所示有編譯后的文件生成,OK,編譯正確,然后繼續(xù)輸入“make sim”命令生成“.fsdb”文件,這才是最關鍵的一步。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖14

依然沒有報錯,如圖15所示還出現(xiàn)了我在Testbench中寫的打印信息,然后我滿懷期待的輸入“l(fā)s”,果然這次沒有讓我失望,生成了“.fsdb”文件,非常激動,我趕緊輸入“make run_verdi”啟動Verdi軟件。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖15

圖16為在Makefile中用Verdi軟件打開“.fsdb”文件的命令。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真

圖16

如圖17所示,驚喜的一幕出現(xiàn)了,Verid軟件打開了,折騰了幾天終于實現(xiàn)了VCS和Verdi的聯(lián)合。(有朋友說Verdi2016開始可以直接使用kdb,就像在VCS中直接使用DVE一樣方便,大家可以嘗試一下)。

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖17

這雖然是一個很小的問題,但是如果對于沒有經(jīng)驗的新手來說可能會困擾很久,而對于經(jīng)歷過的人來說可能就是一分鐘的事兒。遇到問題一定不能輕易放棄,要耐心、虛心請教,感謝幫我解決這個問題的很多熱心朋友,我也會用同樣的熱情幫助更多的人!

添加信號Get All signal

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真 

圖18

Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真

圖19 仿真結果

看完上述內容,你們對Linux下如何進行VCS2014和Verdi2015的聯(lián)合仿真有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI