前言
由於某種不可抗拒因素,本信安人不得不安裝配置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系統。
- 打開命令行終端:
開始安裝之前,先建立安裝目錄(或者直接手動直接建立安裝目錄,但是要注意是下面的路徑):
在桌面點擊鼠標右鍵,
點擊,打開命令行終端。
輸入如下命令:
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集成成功