ubuntu18.04安装cadence virtuoso

原创
2020/02/14 22:47
阅读数 5.1W

最近需要做一些集成电路设计相关的工作,研究了一下,还挺复杂。不过千里之行,始于足下,再复杂的东西也是一步步由简单的东西构建而成的。根据工作需要 ,安装了全定制集成电路设计软件IC617,下面记录一下过程。

 

由于virtuoso不支持windows系统,因此先安装了ubuntu18.04系统,并安装好jdk。如果懒得下载oracle jdk的,可以如下直接apt安装openjdk。

sudo apt-get install openjdk-8-jdk openjdk-8-jre

 

除此以外,还需要安装如下软件包

sudo 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

然后在/etc文件夹中新增文件redhat-release,其内容为如下一句话

Red Hat Enterprise Linux release 6.12

这是为了让软件认为自己运行在red hat enterprice linux上。注意在/etc中创建文件需要root权限,因此完成后最好把权限修改为644

sudo chmod 644 /etc/redhat-release

 

接下来就可以开始安装了。首先下载安装文件,所有安装文件可在如下地址下载

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

提取码为:eern

注意下载后的文件是按安装在虚拟机上准备的,因此有一些文件是没必要的,实际上用得到的只有从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 -

解压后得到如下文件

在此目录下执行如下语句即可开始安装。注意网上的帖子均安装在/opt目录下,因此需要root权限创建文件夹并修改权限。此处我直接装在当前用户目录下,故不需要root权限,而且以后的操作也都不再需要root权限。

iscape/bin/iscape.sh

选择IC617解压后所在目录,直接点击continue

选择要安装的程序,点击next

在安装过程中,配置环节会跳出窗口进行配置,可以按如下方式处理

安装完成后,点击done,回到主界面,此时可以点击cancel,重新选择软件包路径,继续安装MMSIM

接下来的安装步骤和之前安装IC617几乎完全一样。

同样在配置时会跳出窗口进行配置

至此安装完成,可如下查看当前系统安装的软件,然后退出iscape。此时,IC617和MMSIM都被安装到用户目录cadence/installs目录下。

 

接下来安装calibre,可以看到,解压后的calibre是个单独的exe文件。

由于运行该文件会直接把calibre安装在当前目录下,因此在cadence目录下创建一个calibre2015目录,将该exe文件复制或剪切进去。

接下来进入该目录下,运行如下指令

chmod u+x aoi_cal_2015.2_36.27_mib.exe
./aoi_cal_2015.2_36.27_mib.exe

第一句将文件变为可执行,然后第二句直接运行,按如下操作输入,即可完成安装。

如果出现下面的错误提示,mgc_install: not found,说明安装文件解压有问题。

可在如下网址下载install.ixl.zip文件,解压后和安装文件 aoi_cal_2015.2_36.27_mib.exe 放在同一目录下,更改权限为777(chmod 777 install.ixl),然后重新运行安装文件即可。

https://download.csdn.net/download/u014559935/12187860

 

至此IC617, MMSIM和Calibre2015均安装完成,接下来分别为其安装补丁。先进入07.cadence_patch解压后的文件夹,如下所示

执行如下指令打补丁

chmod u+x cadence.pat cadence_patch.sh sfk
./cadence_patch.sh /home/praise/cadence/installs/IC617
./cadence_patch.sh /home/praise/cadence/installs/MMSIM151

第一句为几个文件增加可执行权限,后面两句分别为IC617和MMSIM打补丁,注意./cadence_patch.sh后面是IC617和MMSIM的安装目录,不同的用户安装目录可能不同,要根据自己的情况修改。另外就是执行完后,可能会显示有几个错误(errors),不用理会,这是由于IC617目录中有链接到系统文件,打补丁时没权限所致,如果看着别扭,可以用sudo执行即可。

 

为calibre打补丁的过程类似,解压后的文件如下所示

将这几个文件复制到calibre安装目录下(此处为/home/praise/cadence/calibre2015),然后进入该目录执行如下指令对calibre打补丁(注意calibre的补丁必须复制到安装目录下运行,不能像IC617和MMSIM那样在解压后的目录下也可以直接运行)

chmod u+x patch_calibre sfk
./patch_calibre aoi_cal_2015.2_36.27

同样可能出现errors,但此处是由于无法对二进制文件(sfk和之前的安装文件aoi_cal_2015.2_36.27_mib.exe)进行读写所致,同样不用理会。

 

接下来安装license文件,解压后的cadence_license文件夹如下

直接将其中的license.dat文件复制到IC617 的license目录下即可(此处为/home/praise/cadence/installs/IC617/share/license)

 

同样的,将解压后的calibre_license目录下license.dat文件复制到calibre的license目录下(此处为/home/praise/cadence/calibre2015/aoi_cal_2015.2_36.7/shared/license),需要注意的是,此时license目录不存在,需要自己建一个。

打开该license.dat文件,将其中的HOSTID=000c294756b0替换为自己的mac地址。ubuntu18.04默认没安装ifconfig工具,可用如下方式查看自己的mac地址

ip address
# 或者
cat /sys/class/net/enp0s3/address

如果使用第二种方法的话,注意enp0s3是对应的网卡,可能每台机器的名字不一样,需根据自己的情况修改。

 

至此,就算安装完成了,只需要设置一些环境变量即可运行了。但为了不污染系统本来的环境变量,采用脚本的方式来执行。将09.bashrc解压后文件夹中的bashrc文件复制到合适的位置(比如新建一个工程目录project放进去或者放在用户bin目录下),改个名字(此处改为run_virtuoso)。

将该文件改为可执行

chmod u+x run_virtuoso

然后打开文件,修改其中的路径,主要修改的有如下几处(按照自己机器上的路径来设置)

注意上面倒数第二个图中(417,418行)的praise-VirtualBox是主机名,可用hostname命令查看。此外可以看出,该脚本实际上为多个软件设置了环境变量,其中有一些用不到,另外一些虽然将来会用到,但现在暂时先不理会,在后续文章中再处理。

 

此时,我们可以通过运行run_virtuoso来启动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文件夹下的失效链接tmp,重新创建一个tmp文件夹

接下来在新建的project01文件夹中运行run_virtuoso,即可启动virtuoso。

展开阅读全文
打赏
3
5 收藏
分享
加载中
博主,我已经按你的这篇博文成功安装了cadence virtuoso。我发现在终端输入spectre显示没有此命令,cadence virtuoso应该自带spectre仿真器,有什么方法可以把spectre当成命令添加到ubuntu里面,使得可以在终端使用spectre命令吗,谢谢博主!
2021/12/23 20:52
回复
举报
propagator博主
spectre默认没有被添加到系统路径里,你可以建一个软链接 ln -s /home/xxxx/cadence/MMSIM151/bin/spectre /home/xxxx/bin/spectre 重启一下就可以用了。xxxx是你的用户名,第一个/home/xxxx/cadence/MMSIM151是你安装MMSIM的路径,第二个/home/xxxx/bin是你用户目录下的bin目录,注意如果没有这个目录,可自行创建。
2021/12/24 08:39
回复
举报
博主你好,我按照博主的方法建立了软连接,运行spectre命令会报出以下错误: WARNING: HOST DOES NOT APPEAR TO BE A CADENCE SUPPORTED LINUX CONFIGURATION. For More Info, Please Run '/tools.lnx86/bin/checkSysConf' . /home/fabulous/cadence/installs/MMSIM151/tools.lnx86/spectre/bin/32bit/spectre: error while loading shared libraries: libelf.so.1: cannot open shared object file: No such file or directory 我看了以下,libelf.so.1文件在/usr/lib/x86_64-linux-gnu目录下,这个报错该怎么解决呢。我还运行了一下/home/fabulous/cadence/installs/MMSIM151/tools.lnx86/spectre/bin/64bit/spectre下的spectre可执行文件,这个64bit的也报错,报错信息是: ./spectre: error while loading shared libraries: libmkl_intel_lp64.so: cannot open shared object file: No such file or directory 现在我这种情况该怎么解决,让spectre命令成功运行起来呢,谢谢博主!
2021/12/26 12:27
回复
举报
propagator博主
第一个报错是因为没有安装32位的libelf.so库,你可以尝试apt-get install libelf1:i386。一开始的Warning先不用管。或者你也可以执行spectre -64直接运行64位spectre试试。
2021/12/27 10:09
回复
举报
谢谢博主,我安装完这个库之后可以执行spectre命令了,但是执行“spectre -raw ../psf input.scs”想仿真时,报出 Fatal error found by spectre. FATAL: Failed to initialize license API! lmStatus: ERROR (LMC-01902): License call failed. The license server search path is defined as . Can't find license file. 看起来像是license搜寻路径没有设置,这个怎么解决呢?或者说这个virtuoso自带的spectre就是没法终端跑仿真。 谢谢博主!
2021/12/29 16:33
回复
举报
propagator博主
看我前面一条说明,我之前回复了两条,可能你只看到一条。要查看run_virtuoso里关于MMSIM和CDC_LICENSE_FILE环境变量的设置,然后在终端里执行相应的语句,比如export CDC_LICENSE_FILE=xxxxxx。xxxxxx就是你的license文件路径,在博文中有描述。MMSIM那一部分的环境变量也要在终端里设置,之后就可以运行了。
2021/12/30 14:18
回复
举报
回复 @propagator : 我好像明白博主的意思了,其实就是把export CDC_LICENSE_FILE=xxxxxx语句在终端执行一下是不是,spectre命令好像运行成功了,谢谢博主!
2021/12/30 21:57
回复
举报
propagator博主
另外需要注意一些环境变量的设置,主要是查看run_virtuoso里关于MMSIM和CDC_LICENSE_FILE这两块的设置。
2021/12/27 10:42
回复
举报
楼主,装好这个之后还要装其他配件,但是目录下内存已经满了,我要是把安装包这一部分就是03....04...这些删了,会影响软件正常使用吗
2021/08/03 18:10
回复
举报
propagator博主
不会
2021/08/04 14:29
回复
举报
root@ecs-f02e:~/project01# ~/project/run_virtuoso
WARNING: HOST <ecs-f02e> DOES NOT APPEAR TO BE A CADENCE SUPPORTED LINUX CONFIGURATION.
For More Info, Please Run '<cdsroot>/tools.lnx86/bin/checkSysConf' <productId>.

\e Display :2 Error "BadAtom (invalid Atom parameter)"
\e request 20 error 5 serial 218
*ERROR* (DB-320001): Unable to obtain the 'Cadence(R) Design Framework II' license. Run 'lmstat -f 111' to see license, server, and usage information. For more information, see the sections related to license maintenance in the 'Cadence License Manager' manual.

请问这是什么情况呢?是因为license没有搞好吗?
2021/04/16 20:35
回复
举报
成功了,是patch部分操作错了,缺少libstc++的时候不应该认为就是楼主说的错误,应该安装所确实的包,再进行patch操作
2021/04/17 10:24
回复
举报
propagator博主
解决了就好。^_^
2021/04/19 22:31
回复
举报
/opt/Cadence/IC617/tools/bin/cdsGetOABinPath: 1: basename: Too many levels of symbolic links
/opt/Cadence/IC617/tools/bin/cdsGetOABinPath: 1: basename: Too many levels of symbolic links
ERROR: can't determine installation root.
can't find executable "/opt/Cadence/IC617/tools/bin/"
ERROR: Could not find Cadence installation root for
/opt/Cadence/IC617/tools/bin/
Make sure that is part of the Cadence installation.
virtuoso: ERROR: No proper OA2.2 installation found. Fix the errors reported by cdsGetOABinPath.
virtuoso: INFO: Note that OpenAccess (OA) requires running the Configure phase.
virtuoso: See the "OpenAccess Installation and Configuration Guide" before
virtuoso: you complete the configuration step. This manual is included with
virtuoso: the Cadence product documentation.

请问发生这种情况要怎么办呢,大佬帮忙看一哈
2021/04/14 16:37
回复
举报
propagator博主
从直观上来看,你的路径不对。是不是没有在运行脚本中修改cadence安装路径。 请按照我文中的顺序来安装,并且设置相应的路径。
2021/04/14 17:30
回复
举报
cadence/installs/IC617/tools/lib/64bit/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /lib/x86_64-linux-gnu/libGLU.so.1)
我是这样的错误,大佬帮忙看看。
2021/03/23 14:05
回复
举报
propagator博主
你这个问题比较麻烦,简单说就是你的cadence版本太低,而系统版本太高,高版本的系统需要的CXXABI版本在cadence自带的libstdc++.so.6里没有,所以会报这种错。一个可能的简单解决方法是,用系统中自带的libstdc++.so.6替换cadence目录中的那个,然后执行试一下。但很大可能性会出来新的问题,所以最好的办法是不要装那么新的系统或者找个更新版本的cadence。
2021/03/23 21:06
回复
举报
直接删掉libstdc++.so.6再安装就好了
2021/03/24 14:45
回复
举报
propagator博主
如果没遇到新问题,能这样解决也挺好。
2021/03/24 19:44
回复
举报
谢谢博主
启动cadence时的字体警告使用博主说的“sudo apt-get install xfonts-75dpi xfonts-100dpi ”并没有消除,我使用的是ubuntu20.04.20,有什么解决办法吗
2021/03/21 18:10
回复
举报
propagator博主
能否把错误信息全文贴出来我看一下?
2021/03/22 10:45
回复
举报
我现在又换到了ubuntu18.04,之前ubuntu20.04不想用了,在ubuntu18.04上安装完字体得重启才好使(我比较小白,不知道安装完字体还要重启……),谢谢博主
2021/10/09 16:25
回复
举报
楼主你好请问有innovus的安装包吗
2021/01/28 01:02
回复
举报
propagator博主
感谢关注。但不好意思,我没用innovus做数字PR,没有下载。你可以在网上找找看。^_^
2021/01/28 10:04
回复
举报
该评论暂时无法显示,详情咨询 QQ 群:912889742
楼主你好,感觉所有的步骤都是挺顺利的。最后面运行run_virtuoso之后,结果也和你给的图示一样,但是就是没有运行到最后一张Virtuoso的软件出来。请问是什么问题呢
2021/01/18 03:33
回复
举报
propagator博主
你命令行终端有什么输出吗?最后一张图要打开或者新建才会出来,你只要出来倒数第二张就可以了。
2021/01/18 10:17
回复
举报
成功解决了,可以打开了,谢谢楼主!
2021/01/18 21:06
回复
举报
楼主你好,其他的都正常,在运行run_virtuoso后在teminal里出现了
\e Display :10.0 Error "BadAtom (invalid Atom parameter)"
\e request 20 error 5 serial 228
的提示,虽然暂时不影响使用,但是不知道什么原因。
搜索了半天好像说要安装hotfix请问楼主知道么
2020/11/17 17:58
回复
举报
propagator博主
不好意思,确实有类似提示,但我没装补丁,懒得折腾了。
2020/11/18 13:37
回复
举报
好的,感谢回答
2020/11/19 09:02
回复
举报
更多评论
打赏
74 评论
5 收藏
3
分享
返回顶部
顶部