Ubuntu18.04 安装 synopsys2018 EDA工具(vcs、verdi)记录

1 准备

1.1 系统版本

在这里插入图片描述

1.2 软件版本

在这里插入图片描述

Synopsys Installer:v5.0
SCL(Synopsys Common Licensing): v2018.06
VCS: 2018.09
verdi: 2018.09

原来装好环境的linux电脑无了,这次我详细记录一下自己在Ubuntu 18.04 虚拟机上的环境配置过程,不然下次安装又忘记了,主要值得参考的是遇到一些环境问题的解决过程,内容仅供参考 😃。

关于软件版本的说明:在正常使用2018.09之前,我还安装过2016.06版本,我个人测试2016.06版本是用不了的,虽然能正常安装和打开软件,但是在编译的时候会报链接库的错,一直解决不了所以才换的2018.09。

关于注册机时间失效了的解决办法:进入到scl_keygen文件夹中,开synopsys.src文件,将其中的2020全部替换成2030,就可以到2030。或者改好的:链接

2 安装过程

2.1 安装installer

  1. 为各软件创建好子文件夹:
a473@a473-ubuntu:~/Desktop/synopsys$ sudo mkdir -p /edaTools/synopsys/
[sudo] password for a473: 
a473@a473-ubuntu:~/Desktop/synopsys$ sudo mkdir -p /edaTools/synopsys/installer 
  1. 安装installer
  • 改变所有安装文件的权限sudo chmod 777 -R ./
  • 运行installer安装包所在路径下的SynopsysInstaller_v3.3.run文件:``
    在这里插入图片描述

2.2 安装SCL

sh命令运行installer安装路径所在路径下的setup.sh文件:
2016版本 直接运行,提示语法错误:
在这里插入图片描述

打开setup.sh一看,使用的是C shell(csh)。

#! /bin/csh -f

安装csh:

sudo apt-get install csh

重新使用csh命令运行setup.sh文件:
提示不可以使用root运行:
在这里插入图片描述
2018版本从这开始就行:
需要先改变目的文件夹的权限:

sudo chmod -R 777 /edatools/synopsys/

运行setup.sh文件:
在这里插入图片描述

随便填写信息,next:
在这里插入图片描述

点击browser按钮选择需要安装的软件的SCL安装包.spf文件的路径,选好之后点击done,next:
在这里插入图片描述

选择安装路径:
在这里插入图片描述

一路next:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

accept,install:
在这里插入图片描述

finish。

2.3 安装VCS

首先将shell从dash换为bash,不然会报错/bin/sh: 0: illegal option -h
首先ls -al /bin/sh查看当前sehll。一般默认为dash,执行sudo dpkg-reconfigure dash然后选择取消就行。
在这里插入图片描述

安装VCS_mx_vO
在这里插入图片描述

安装VCS_vO
在这里插入图片描述

2.4 安装verdi

在这里插入图片描述

3 激活

  1. 获取linux环境的hostname:
    在这里插入图片描述

  2. 获取linux环境的MAC地址:
    安装net-tools:

    sudo apt-get install net-tools
    

    使用ifconfig,得到mac地址:
    在这里插入图片描述

  3. windows系统运行破解软件,填写对应信息,生成License
    在这里插入图片描述

点击generate产生licence:程序所在路径下的Synopsys.dat
修改Synopsys.dat第二行为自己安装的scl的snpslmd软件所在路径:
在这里插入图片描述

  1. 将Licence文件放在[scl安装路径]/admin/licence下
    在这里插入图片描述

  2. 激活
    以下部分是以前安装2016版本激活遇到的问题,与2018是差不多的。
    首先重启电脑。
    先开放设置license需要的27000端口,然后查看27000端口是否空闲,如果不空闲,则要结束使用这个端口的进程:

    sudo ufw allow 27000   
    sudo ufw enable   
    sudo ufw reload  
    sudo ufw status  
    netstat -ap | grep 27000  
    # kill -9 XXX(使用27000端口的进程ID)  
    

    在这里插入图片描述

    此时环境变量还没有设置,所以我们使用绝对路径运行licence管理器。
    2016版本:

    /edaTools/synopsys/scl/2018.06/linux64/bin/lmgrd -c /edaTools/synopsys/scl/admin/license/Synopsys.dat
    

    2018版本:

    /edaTools/synopsys/scl/2018.06/linux64/bin/lmgrd -c /edaTools/synopsys/scl/2018.06/admin/license/Synopsys.dat
    

    此时显示no such file and directory:
    在这里插入图片描述

    这是因为缺少依赖包,先在Softwore & Updates软件中切换软件源为国内源,不然非常慢。安装lsb-core:

    sudo apt-get install lsb-core
    

    再次执行lmgrd命令, 出错:
    (snpslmd) Can't make directory /usr/tmp/.flexlm, errno: 2(No such file or directory)
    在这里插入图片描述

    没这个路径,我们自己新建一个,记得改权限,不然一会又说禁止访问了:

    sudo mkdir /usr/tmp/
    sudo chmod 777 /usr/tmp/
    

    再次尝试执行lmgrd命令,报错:
    (lmgrd) Failed to open the TCP port number in the license.
    这是因为刚才执行第一次的时候占用端口了,所以它打开TCP端口出错了,所以我们要关闭这个进程:

    netstat -ap | grep 27000  
    # kill -9 XXX(使用27000端口的进程ID) 
    

    直到没有进程占用了,再次尝试执行lmgrd命令,成功:

    /edaTools/synopsys/scl/amd64/bin/lmgrd -c /edaTools/synopsys/scl/admin/license/Synopsys.dat
    

    在这里插入图片描述

    打开verdi测试一下是否破解成功:

    /edaTools/synopsys/verdi/bin/verdi  
    

    欸。报错::

    /edaTools/synopsys/verdi/platform/LINUXAMD64/bin/Novas: error while loading shared libraries: libjpeg.so.62: cannot open shared object file: No such file or directory

    又是没文件,没有库文件,那就安装libjpeg62-dev,Development files for the IJG JPEG library (version 6.2):
    这个网站有介绍,安装一下:

    sudo apt-get install libjpeg62-dev
    

    再次运行Verdi,还会报一个错:
    /edaTools/synopsys/verdi/platform/LINUXAMD64/bin/Novas: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory

    我装,我装还不行嘛,ubuntu14开始不支持libpng12,所以需要自己下载安装:
    增加软件源,双击/etc/apt/source.list,打开软件和更新界面:
    在其他软件加上源ppa:linuxuprising/libpng12(这种源随时保不齐失效,没用就要找其他的)
    如果失效了可以在https://ppa.launchpad.net/linuxuprising/libpng12/ubuntu/pool/main/libp/libpng/下载安装。
    在这里插入图片描述

    安装libpng12:

    sudo apt update
    sudo apt install libpng12-0
    

    以下是虚拟机遇到的问题,实体主机没遇到:
    在这里插入图片描述

    运行[verdi路径]/verdi -licdebug
    在这里插入图片描述

    可见,licence的路径并不正确。
    不过先执行后面的配置运行环境之后就好了。猜测是LM_LICENSE_FILE环境变量的问题。
    再次执行verdi。成功:

    /edaTools/synopsys/verdi/bin/verdi  
    

    在这里插入图片描述

    2018:
    在这里插入图片描述

4 配置运行环境

用绝对路径启动太不方便,加一下环境变量:
打开~/.bashrc(如果看不见,按ctrl+h显示隐藏文件), 然后加入一些路径变量以及命令重命名:
在这里插入图片描述

2016版本:

export SynopsysList=/edaTools/synopsys
export DVE_HOME=$SynopsysList/vcs/gui/dve
export VCS_HOME=$SynopsysList/vcs/
export VERDI_HOME=$SynopsysList/verdi
#dve
export PATH=$PATH:$VCS_HOME/gui/dve/bin
alias dve='dve -full64'
#VCS
export PATH=$PATH:$VCS_HOME/bin
alias vcs='vcs'
#VERDI
export PATH=$PATH:$VERDI_HOME/bin
alias verdi='verdi'
#scl
export PATH=$PATH:$SynopsysList/scl/amd64/bin
export VCS_ARCH_OVERRIDE=linux
#LICENCE
export LM_LICENSE_FILE=27000@a473-ubuntu
alias lmg_vcs='lmgrd -c $SynopsysList/scl/admin/license/Synopsys.dat'

2018版本:

export SynopsysList=/edaTools/synopsys
export DVE_HOME=$SynopsysList/vcs/O-2018.09-SP2/gui/dve/
export VCS_HOME=$SynopsysList/vcs/O-2018.09-SP2/
export VERDI_HOME=$SynopsysList/verdi/Verdi_O-2018.09-SP2/
#dve
export PATH=$PATH:$VCS_HOME/gui/dve/bin
alias dve='dve -full64'
#VCS
export PATH=$PATH:$VCS_HOME/bin
alias vcs='vcs'
#VERDI
export PATH=$PATH:$VERDI_HOME/bin
alias verdi='verdi'
#scl
export PATH=$PATH:$SynopsysList/scl/2018.06/linux64/bin/
export VCS_ARCH_OVERRIDE=linux
#LICENCE
export LM_LICENSE_FILE=27000@ming-ubuntu
alias lmg_vcs='lmgrd -c $SynopsysList/scl/2018.06/admin/license/Synopsys.dat'

下次电脑启动之后,执行lmg_vcs, 就可以直接用verdi命令以及其他工具了。

5 测试

5.1 hello_world

拷贝一份[vcs安装路径]/doc/examples/uvm/simple路径下的hello_world工程。
切换到工程路径,执行make命令:

make

报错:
在这里插入图片描述

可以看到路径中的linux,我们实际是linux64才有这些文件,64位系统的问题,工程路径下的mkefile加上-full64
在这里插入图片描述

再次make, 报错
在这里插入图片描述

这篇博客给出了解决方案:
vcs命令加上选项: -full64 -cpp g++ -cc gcc -LDFLAGS -no-pie -LDFLAGS -Wl,--no-as-needed -CFLAGS -fPIE
在这里插入图片描述

再次make, 报错
make: simv: Command not found
在这里插入图片描述

原因:simv是hello_world下的文件,由于没有设置环境变量,不能直接使用simv命令。makefile中改为相对路径:
在这里插入图片描述

再次make, 成功
在这里插入图片描述

5.2 自己的工程测试

有了hello_world的经验,就可以试着自己新建一个工程进行测试。
运行
报错
在这里插入图片描述

试了很多方法,最后只能试试改变gcc版本为6.2。但是编译gcc6.2一直出问题。

只能换版本了。
我换成了2018.09版,这时只要按相同的方式安装软件就好了,环境都是好的。
在这里插入图片描述

synopsys软件简介《一》 2007-08-09 一 Astro  Astro是Synopsys为超深亚微米IC设计进行设计优化、布局、布线的设计环境。Astro可以满足5千万门、时钟频率GHz、在0.10及以下工艺线生产的SoC设计的工程和技术需求。Astro高性能的优化和布局布线能力主要归功于Synopsys在其中集成的两项最新技术:PhySiSys和Milkyway DUO结构。 二 DFT DFT Compiler提供独创的“一遍测试综合”技术和方案。它和Design Compiler 、Physical Compiler系列产品集成在一起的,包含功能强大的扫描式可测性设计分析、综合和验证技术。DFT Compiler可以使设计者在设计流程的前期,很快而且方便的实现高质量的测试分析,确保时序要求和测试覆盖率要求同时得到满足。DFT Compiler同时支持RTL级、门级的扫描测试设计规则的检查,以及给予约束的扫描链插入和优化,同时进行失效覆盖的分析。 三 TetraMAX TetraMAX ATPG是业界功能最强、最易于使用的自动测试向量生成工具。针对不同的设计,TetraMAX可以在最短的时间内,生成具有具有最高故障覆盖率的最小的测试向量集。TetraMAX支持全扫描、或不完全扫描设计,同时提供故障仿真和分析能力。 四 Vera Vera验证系统满足了验证的需要,允许高效、智能、高层次的功能验证。Vera验证系统已被Sun、NEC、Cisco等公司广泛使用以验证其实际的产品,从单片ASIC到多片ASIC组成的计算机和网络系统,从定制、半定制电路到高复杂度的微处理器。Vera验证系统的基本思想是产生灵活的并能自我检查的测试向量,然后将其结合到test-bench中以尽可能充分测试所设计的电路。Vera验证系统适用于功能验证的各个层次,它具有以下特点:与设计环境的紧密集成、启发式及全随机测试、数据及协议建模、功能代码覆盖率分析。 五 VCS VCS是编译型Verilog模拟器,它完全支持OVI标准的Verilog HDL语言、PLI和SDF。 VCS具有目前行业中最高的模拟性能,其出色的内存管理能力足以支持千万门级的ASIC设计,而其模拟精度也完全满足深亚微米ASIC Sign-Off的要求。VCS结合了节拍式算法和事件驱动算法,具有高性能、大规模和高精度的特点,适用于从行为级、RTL到Sign-Off等各个阶段。VCS已经将CoverMeter中所有的覆盖率测试功能集成,并提供VeraLite、CycleC等智能验证方法。VCS和Scirocco也支持混合语言仿真。VCS和Scirocco都集成了Virsim图形用户界面,它提供了对模拟结果的交互和后处理分析。 六 Power Compiler Power Compiler?提供简便的功耗优化能力,能够自动将设计的功耗最小化,提供综合前的功耗预估能力,让设计者可以更好的规划功耗分布,在短时间内完成低功耗设计。Power Compiler嵌入Design Compiler/Physical Compiler之上,是业界唯一的可以同时优化时序、功耗和面积的综合工具
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lu-ming.xyz

觉得有用的话点个赞吧 :)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值