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以上。 處理器至少分配兩個。

image

image

image

image

image

image
點擊完成

之后對安裝好的虛擬機的資源配置可以進行更改,更改后如下:
image
總結就是:可以上網,硬盤120G以上,內存和處理器盡可能多。

ubuntu18.04安裝cadence virtuoso

打開虛擬機,用剛才設置的賬號密碼登錄Ubuntu系統。

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

輸入如下命令:

mkdir -p /opt/cadence/installscape

mkdir -p /opt/mentor/Calibre

建立root用戶:
輸入:

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

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

等到提示:

passwd: password updated successfully

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

之后安裝以來包:

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,才可以直接復制粘貼)。

image

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

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

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

全部解壓后如下:
image

進入解壓后的03.InstallScape,可看到如下壓縮文件,image

該文件可用如下方法解壓:

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

解壓后得到如下文件:
image

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

iscape/bin/iscape.sh

設置默認安裝路徑:
image

image

安裝Cadence IC617
點擊“Local directory/Media install”----“Browse”並選擇安裝文件所在的文件夾04.IC06.17.700_Base,確認路徑的正確然后點“Continue>”

image

image

image

image

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

image

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

image

image

image
image

安裝完成后,點擊done,回到主界面,此時可以點擊cancel,重新選擇軟件包路徑,繼續安裝MMSIM

image

image

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

image
image

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

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

至此安裝完成,可如下查看當前系統安裝的軟件:
image

接下來安裝calibre,可以看到,解壓后的calibre是個單獨的exe文件:
image

由於運行該文件會直接把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”,等待安裝完成:
image

image

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

image

執行如下指令打補丁:

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打補丁的過程類似,解壓后的文件如下所示
image
將這幾個文件復制到calibre安裝目錄下(此處為/opt/mentor/Calibre),然后進入該目錄執行如下指令對calibre打補丁(注意calibre的補丁必須復制到安裝目錄下運行,不能像IC617和MMSIM那樣在解壓后的目錄下也可以直接運行)
同樣可能出現errors,但此處是由於無法對二進制文件(sfk和之前的安裝文件aoi_cal_2015.2_36.27_mib.exe)進行讀寫所致,同樣不用理會。

接下來安裝license文件,解壓后的cadence_license文件夾如下:
image

直接將其中的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

image
將其中的:號去掉。

至此,就算安裝完成了,只需要設置一些環境變量即可運行了。但為了不污染系統本來的環境變量,采用腳本的方式來執行。將09.bashrc解壓后文件夾中的bashrc文件復制到合適的位置(比如新建一個工程目錄project01放進去),改個名字(此處改為run_virtuoso)。
image

將該文件改為可執行:


chmod 777 run_virtuoso

然后打開文件,修改其中的路徑,主要修改的有如下幾處(按照自己機器上的路徑來設置):

image

image

image

image

ubuntu是主機名,可用hostname命令查看。

image

此時,我們可以通過在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。

image

image
calibre集成成功


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM