1. 程式人生 > 其它 >Cadence IC設計環境搭建(在Ubuntu上進行)

Cadence IC設計環境搭建(在Ubuntu上進行)

前言

由於某種不可抗拒因素,本信安人不得不安裝配置Cadence IC設計環境(IC617+MMSIM151+Calibre2015)(雖然我不用學這些)。由於本人摸索了幾天才搭建好本環境,於是覺得對此進行記錄,為下次重灌節省時間。
參考:
https://zhuanlan.zhihu.com/p/354374816

https://my.oschina.net/propagator/blog/3166272

https://blog.csdn.net/qq_40987215/article/details/104722352

由於Cadence Virtuoso執行在linux系統上,本人所用系統是window系統,所以需要先安裝虛擬機器linux系統,在linux系統上安裝搭建Cadence IC設計環境

安裝VMware

安裝VMware Workstation 14,這個網上下載安裝,找註冊碼破解即可,很簡單,無需記錄

安裝VMware Tools

VMware Tools用於支援滑鼠移入移出、檔案共享、視窗自適應等實用功能,為了方面實用必裝。

安裝Ubuntu 18.04

網上搜索Ubuntu的iso檔案,通過別人分享的百度網盤下載速度最快,其次使用國內的映象源網站下載速度也較快,不建議直接官網下載,速度極慢。下載完Ubuntu 18.04的iso的檔案(ubuntu-18.04.4-desktop-amd64.iso)後,在VMware安裝Ubuntu虛擬機器。注意:該虛擬機器需要配置為:可以上網,分配虛擬機器硬碟一定要足夠大,最好120G以上,至少80G以上。 處理器至少分配兩個。


點選完成

之後對安裝好的虛擬機器的資源配置可以進行更改,更改後如下:

總結就是:可以上網,硬碟120G以上,記憶體和處理器儘可能多。

ubuntu18.04安裝cadence virtuoso

開啟虛擬機器,用剛才設定的賬號密碼登入Ubuntu系統。

  1. 開啟命令列終端:
    開始安裝之前,先建立安裝目錄(或者直接手動直接建立安裝目錄,但是要注意是下面的路徑):
    在桌面點選滑鼠右鍵,

    點選,開啟命令列終端。

輸入如下命令:

mkdir -p /opt/cadence/installscape

mkdir -p /opt/mentor/Calibre

建立root使用者:
輸入:

$ sudo passwd root
輸入新的 UNIX 口令: <輸入新密碼> 
重新輸入新的 UNIX 口令:<重新輸入新密碼>

然後按照提示輸入兩次密碼,一次為新密碼,一次為確認密碼,

等到提示:

passwd: password updated successfully

看著這句話說明密碼更改成功了,然後使用su - root後輸入剛剛新修改的密碼即可 進入root使用者。

之後安裝以來包:

apt-get install openjdk-8-jdk openjdk-8-jre
apt-get install ksh csh xterm libncursesw5-dev libxtst6:i386 libxi6:i386 lib32ncurses5 lib32stdc++6 libstdc++5:i386

由於virtuoso支援的redhat enterprice linux和ubuntu還是有些不同,因此還需要做一些修改才能順利安裝。首先建立如下軟連結:



sudo ln -s /usr/bin/mawk /bin/awk
sudo ln -s /usr/bin/basename /bin/basename
sudo ln -s /lib/x86_64-linux-gnu/libncursesw.so.5.9 /lib/libtermcap.so.2

還需要讓Virtuoso“認為”自己在Redhat上執行,在/etc中建立檔案:

sudo gedit /etc/redhat-release

然後寫入:

Red Hat Enterprise Linux release 6.12

點選“save”進行儲存。
然後需要更改許可權:

sudo chmod 644 /etc/redhat-release

接下來就可以開始安裝了。首先下載安裝檔案,所有安裝檔案可在如下地址下載:

https://pan.baidu.com/s/1Pq_ofvvDoV8u5jz1wZyQIg

提取碼為:eern
(來自部落格https://my.oschina.net/propagator/blog/3166272)

下載完直接將檔案複製貼上到虛擬機器Ubuntu的資料夾中(前提是安裝了安裝VMware Tools,才可以直接複製貼上)。

注意下載後的檔案是按安裝在虛擬機器上準備的,因此有一些檔案是沒必要的,實際上用得到的只有從03到10。此外,檔案的排列順序也就是實際的安裝順序,在安裝前要對所有檔案進行解壓。因為04的兩個壓縮包是分卷壓縮的,因此解壓需要使用如下方法.

cat 04.IC06.17.700_Base.zip* > 04.IC06.17.700_Base.zip
unzip 04.IC06.17.700_Base.zip

即先將兩個分卷合併,然後再解壓,否則可能遇到無法解壓的情況。

全部解壓後如下:

進入解壓後的03.InstallScape,可看到如下壓縮檔案,

該檔案可用如下方法解壓:

zcat IScape04.23-s010lnx86.t.Z | tar xvf -

解壓後得到如下檔案:

在此目錄下執行如下語句即可開始安裝。

iscape/bin/iscape.sh

設定預設安裝路徑:

安裝Cadence IC617
點選“Local directory/Media install”----“Browse”並選擇安裝檔案所在的資料夾04.IC06.17.700_Base,確認路徑的正確然後點“Continue>”

確認安裝的路徑以及勾選安裝包,點選“Start”開始安裝

在安裝過程中,配置環節會跳出視窗進行配置,可以按如下方式處理:


安裝完成後,點選done,回到主介面,此時可以點選cancel,重新選擇軟體包路徑,繼續安裝MMSIM

接下來的安裝步驟和之前安裝IC617幾乎完全一樣


同樣在配置時會跳出視窗進行配置
不同的地方在於,在這裡OA目錄要設定為之前IC617的OA目錄

其餘步驟一律回車,直至安裝完成。
點選“Done”完成完裝,退出InstallScape

至此安裝完成,可如下檢視當前系統安裝的軟體:

接下來安裝calibre,可以看到,解壓後的calibre是個單獨的exe檔案:

由於執行該檔案會直接把calibre安裝在當前目錄下,因此將該檔案拷貝至/opt/mentor/Calibre目錄下,在該目錄下開啟Terminal執行:

./aoi_cal_2015.2_36.27_mib.exe

若無法執行,可能是許可權的問題:

法一: 改為root使用者進行執行


法二:修改該檔案的許可權:chmod 777 aoi_cal_2015.2_36.27_mib.exe

先輸入“D”,然後再輸入“yes”,等待安裝完成:

至此IC617, MMSIM和Calibre2015均安裝完成,接下來分別為其安裝補丁。先進入07.cadence_patch解壓後的資料夾,如下所示

執行如下指令打補丁:

chmod u+x cadence.pat cadence_patch.sh sfk
./cadence_patch.sh /opt/cadence/IC617

(PS: /opt/cadence/IC617為IC617的安裝路徑)

./cadence_patch.sh /opt/cadence/MMSIM151
(PS: /opt/cadence/MMSIM151為MMSIM151的安裝路徑)

第一句為幾個檔案增加可執行許可權,後面兩句分別為IC617和MMSIM打補丁,注意./cadence_patch.sh後面是IC617和MMSIM的安裝目錄,不同的使用者安裝目錄可能不同,要根據自己的情況修改。另外就是執行完後,可能會顯示有幾個錯誤(errors),不用理會,這是由於IC617目錄中有連結到系統檔案,打補丁時沒許可權所致,如果看著彆扭,可以用sudo執行即可。

calibre打補丁的過程類似,解壓後的檔案如下所示

將這幾個檔案複製到calibre安裝目錄下(此處為/opt/mentor/Calibre),然後進入該目錄執行如下指令對calibre打補丁(注意calibre的補丁必須複製到安裝目錄下執行,不能像IC617和MMSIM那樣在解壓後的目錄下也可以直接執行)
同樣可能出現errors,但此處是由於無法對二進位制檔案(sfk和之前的安裝檔案aoi_cal_2015.2_36.27_mib.exe)進行讀寫所致,同樣不用理會。

接下來安裝license檔案,解壓後的cadence_license資料夾如下:

直接將其中的license.dat檔案複製到IC617 的license目錄下即可:(此處為/opt/cadence/IC617/share/license)

同樣的,將解壓後的calibre_license目錄下license.dat檔案複製到calibre的license目錄下(此處為/opt/mentor/license),需要注意的是,此時license目錄不存在,需要自己建一個。

開啟該license.dat檔案,

sudo gedit /opt/mentor/license/license.dat

將其中的HOSTID=000c294756b0替換為自己的mac地址。ubuntu18.04預設沒安裝ifconfig工具,可用如下方式檢視自己的mac地址:


ip address


將其中的:號去掉。

至此,就算安裝完成了,只需要設定一些環境變數即可運行了。但為了不汙染系統本來的環境變數,採用指令碼的方式來執行。將09.bashrc解壓後文件夾中的bashrc檔案複製到合適的位置(比如新建一個工程目錄project01放進去),改個名字(此處改為run_virtuoso)。

將該檔案改為可執行:


chmod 777 run_virtuoso

然後開啟檔案,修改其中的路徑,主要修改的有如下幾處(按照自己機器上的路徑來設定):

ubuntu是主機名,可用hostname命令檢視。

此時,我們可以通過在Project01目錄下執行run_virtuoso來啟動virtuoso:

.\run_virtuoso


但為了把calibre整合到virtuoso的選單欄裡,還需要用到最後一個壓縮檔案10.Calibre config.zip。該檔案解壓後只包含一個文字檔案calibre config,擷取其中的一段,如下所示,放在新建的檔案.cdsinit中,然後將該檔案放入資料夾project01。

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;
; check CALIBRE_HOME
;
cal_home=getShellEnvVar("CALIBRE_HOME")
if( cal_home==nil then
    cal_home=getShellEnvVar("MGC_HOME")
    if( cal_home!=nil then
        printf("// CALIBRE_HOME environment variable not set; setting it to value of MGC_HOME\n");
    )
)

if( cal_home!=nil && isDir(cal_home) && isReadable(cal_home) then

    ; Load calibre.skl or calibre.4.3.skl, not both!

    ; Load calibre.skl for Cadence versions 4.4 and greater
    load(strcat(cal_home "/lib/calibre.skl"))

;;;;Load calibre.4.3.skl for Cadence version 4.3
;;; load(strcat(cal_home "/lib/calibre.4.3.skl"))

else

    ; CALIBRE_HOME is not set correctly. Report the problem.

    printf("//  Calibre Error: Environment variable ")

    if( cal_home==nil || cal_home=="" then
        printf("CALIBRE_HOME is not set.");
    else
        if( !isDir(cal_home) then
            printf("CALIBRE_HOME does not point to a directory.");
        else
            if( !isReadable(cal_home) then
                printf("CALIBRE_HOME points to an unreadable directory.");
            )
        )
    )
    printf(" Calibre Skill Interface not loaded.\n")

    ; Display a dialog box message about load failure.

    hiDisplayAppDBox(
        ?name           'MGCHOMEErrorDlg
        ?dboxBanner     "Calibre Error"
        ?dboxText       "Calibre Skill Interface not loaded."
        ?dialogType     hicErrorDialog
        ?dialogStyle    'modal
       ?buttonLayout   'Close
    )
)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;





除此以外,還需要刪掉calibre資料夾(/opt/mentor/Calibre/aoi_cal_2015.2_36.27)下的失效連結tmp,重新建立一個tmp資料夾。

接下來在之前新建的project01資料夾中執行run_virtuoso,即可啟動virtuoso。


calibre整合成功