Ubuntu18.04 安裝配置 Cadence Virtuoso617


之前的Centos7為了使用spectre提供的matlab toolbox,結果不小心刪除了/usr/lib64中的某些動態庫(XXXX.so文件),導致重啟之后內核崩潰。

這里送上忠告:盡量不要使用rm命令,使用mv命令改名備份最好

於是進入了“漫長”的拯救數據行動,這里只給出主要思路:

由於清楚問題出現的原因,我首先是通過安裝盤(U盤)進入拯救模式,然后拷貝了U盤核心中的動態庫到原系統的動態庫。此時原系統可以進入終端模式,但進入圖形界面時登陸賬戶后就黑屏且重新回到登陸界面,並且終端中不能聯網,也無法重新安裝系統核心。看來系統應該很難救回來了,於是使用終端將關鍵數據進行打包,並掛載上移動硬盤將數據拷貝出來,此時數據拯救成功。

Centos系統雖已穩定著稱,但同時也是個磨人的小妖精:常常為了解決各種依賴而耗費大量時間。因此決定轉向支持更完善的Ubuntu系統,目前的使用證明Ubuntu是個老大哥,不再是小妖精了。Ubuntu的官方庫完善,且在國內也能愉快地下載,再加上網絡上已有很多Ubuntu安裝Virtuoso的教程,因此Ubuntu是個不錯的選擇。

安裝Ubuntu18.04

  1. 在Win下進入官網下載Ubuntu18.04,並制作安裝U盤。建議使用UltralSO,點擊即可下載。教程較多,不再贅述。

  2. 安裝Ubuntu,我的分區如下(雙系統)

    掛載點 功能 大小 設置
    swap 內存交換空間 12G 主分區、空間起始位置
    /boot 內核及引導文件位置 1G 邏輯分區、空間起始位置、EXT4
    / 根目錄 40G 主分區、空間起始位置、EXT4
    /opt 第三方軟件安裝目錄(自行安裝) 100G 邏輯分區、空間起始位置、EXT4
    /usr 官方軟件安裝目錄 100G 邏輯分區、空間起始位置、EXT4
    /home 用戶目錄,存儲數據 800G 邏輯分區、空間起始位置、EXT4
  3. 更新內核、軟件、驅動

    # 更新軟件庫
    sudo apt-get update
    # 更新軟件
    sudo apt-get upgrade
    # 更新系統
    sudo apt-get dist-upgrade
    # 自動更新、下載驅動(可以自動安裝Nvidia驅動,方便快捷)
    sudo ubuntu-drivers autoinstall
    

安裝、配置Cadence Virtuoso

不是真正的安裝,是將我Centos系統中的Cadence軟件庫打包並解壓過來的,真正的安裝過程其他的博客講的很清楚啦。

  1. 將軟件包解壓到/opt下

  2. 安裝Virtuoso所需依賴

    sudo apt-get install ksh         ##安裝ksh的shell
    sudo apt-get install csh         ##安裝csh的shell
    sudo apt-get install openjdk-8-jre openjdk-8-jdk    ##安裝openjdk jre等
    sudo apt-get install xterm       ##安裝xterm終端模擬器
    sudo apt-get install libncursesw5-dev    ##安裝libncursesw動態鏈接庫
    sudo apt-get install libxtst6:i386       
    sudo apt-get install libxi6:i386
    sudo apt-get install lib32ncurses5 
    sudo apt-get install lib32stdc++6 
    sudo apt-get install libstdc++5:i386
    
  3. 由於Virtuoso是基於Redhat系設計的,因此需要更改一些環境變量。

    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
    
  4. 還需要讓Virtuoso“認為”自己在Redhat上運行,在/etc中創建文件,

    sudo gedit /etc/redhat-release
    

    然后寫入

    Red Hat Enterprise Linux release 6.12
    

    然后需要更改權限

    sudo chmod 644 /etc/redhat-release
    
  5. 雖然Virtuoso官方文檔建議使用csh配置變量和使用Virtuoso,但Ubuntu的csh使用並不方便,同時我使用csh+.cshrc的配置不能啟動Virtuoso,因此我使用的是.bashrc+bash的配置。我的bashrc文件設置如下,請按需修改。

    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # For proper distributed processing execution using Cadence PVS software, it requires
    # that the following is set as the first line in .bashrc
    # Note: the space between the ! and $prompt is required!
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    if (! $prompt); then
      exit
    fi
    ######################################################################
    #
    #####globe environmental setups######
    #
    ######################################################################
    export OA_UNSUPPORTED_PLAT="linux_rhel50_gcc48x"
    export W3264_NO_HOST_CHECK=1
    
    export CADHOME=/opt/cadence/installs
    export LANG=C
    export CDS_Netlisting_Mode=Analog
    export CDS_LOAD_ENV=CSF
    export MOZILLA_HOME=/usr/bin/firefox
    export CDS=$CADHOME/IC617
    
    export PATH=$PATH:$CDSDIR/tools/dfII/bin:$CDSDIR/tools/plot/bin:$CDSDIR/bin
    export CDS_ENABLE_VMS=1
    
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # Some of these variables are used by various other tools, e.g. foundry's PDK.
    # Set them to be safe
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    export CDSDIR=$CDS
    export CDSHOME=$CDS
    export CADENCE_DIR=$CDS
    export CDS_INST_DIR=$CDS
    export CDS_ROOT=$CDS
    export CDSROOT=$CDS
    
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    #
    #####license setups######
    #
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    export CDS_LIC_FILE=$CADHOME/license.dat
    export CDS_LIC_ONLY=1
    export CDS_AUTO_64BIT=ALL
    
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # Cadence Analog Simulators (MMSIM) - Spectre, SpectreRF, &
    # RelXpert (Reliability Simulator)
    #
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    export MMSIMHOME=$CADHOME/SPECTRE181
    export PATH=$PATH:$MMSIMHOME/bin:$MMSIMHOME/tools/relxpert/bin
    
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # Mentor Graphics Calibre
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    export MGC_HOME=/opt/Mentor_Graphics
    export CALIBRE_HOME=$MGC_HOME/calibre/aoi_cal_2018.4_34.26
    export MGLS_LICENSE_FILE=$CALIBRE_HOME/license.dat
    export PATH=$PATH:$CALIBRE_HOME/bin
    export MGC_LIB_PATH=$CALIBRE_HOME/lib
    
    export CALIBRE_OS_MSG_LEVEL=1
    
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # For 3-step (ncvlog, ncelab, and ncsim) flow to run Virtuoso AMS Designer simulator,
    # the following library path environment variable has to be set.
    # For single-step (irun) running AMS simulator, LD_LIBRARY_PATH is not required.
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # Enable noise analysis in AMS designer
    export AMS_ENABLE_NOISE=YES
    
    #***********************************************************************
    # Enable Calibre RealTime with Cadence Virtuoso
    #***********************************************************************
    export MGC_CALIBRE_REALTIME_VIRTUOSO_ENABLED=1
    
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # This variable enables Calibre Interactive to save all GUI settings including default
    # values to a runset file for future re-run
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    export MGC_CALIBRE_SAVE_ALL_RUNSET_VALUES=1
    
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # Set up socket connection with Virtuoso schematic or layout viewer (using default ports
    # 9199 for schematic and 9189 for layout) in the form of host:port
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    export MGC_CALIBRE_SCHEMATIC_SERVER=harroy:9199
    export MGC_CALIBRE_LAYOUT_SERVER=harroy:9189
    
    #***********************************************************************
    # Set the name of the executable for displaying PDF documentation from Calibre Help
    #***********************************************************************
    export MGC_PDF_READER=evince
    export MGC_FDI_OA_VERSION=22.50
    export W3264_NO_HOST_CHECK=1
    
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # Command on terminal to launch Cadence Virtuoso tools
    #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    # virtuoso &
    
  6. 修改Calibre的liscense.dat,主要是替換物理網卡的mac地址。

    首先找到自己網卡的mac地址

    ifconfig
    

    第一張卡的mac地址復制即可,然后在下面文件中替換mac地址

    sudo gedit /opt/Mentor_Graphics/calibre/aoi_cal_2018.4_34.26/license.dat
    
  7. 重啟bash終端輸入virtuoso即可運行。

遇到的問題和解決方案

該板塊會記錄使用過程中遇到的問題和解決辦法,如有新問題會及時更新。

  • 電路中包含ahdlLib中的模塊時,仿真失敗。錯誤提示:

    ERROR (VACOMP-1008): Cannot compile ahdlcmi module library. Check the log file input.ahdlSimDB/db40e45393110a6b15173cf850657951.diffamp.ahdlcmi/../ahdlcmi.out for details. If the reason for the failure was a syntax error, contact your Cadence Customer Support representative

    觀察ahdlcmi.out,其中報告的錯誤是

     from diffamp.c:20:
    /usr/include/math.h:27:36: fatal error: bits/libc-header-start.h: No such file or directory
     #include <bits/libc-header-start.h>
    

    查詢后發現是由於該項目是在32位機器上生成的項目,若希望在64位機器運行需要安裝gcc的multilib庫,執行下面命令安裝

    sudo apt install gcc-multilib
    

    然后即可完成包含ahdlLib庫的仿真

  • 運行Calibre時出現以下提示(2020.11.20)

    error while loading shared libraries: libXp.so.6: cannot open shared object file: No such file or directory

    搜索后發現是libXp.so.6庫沒有安裝,使用apt安裝時發現不能定位到該軟件包。於是選擇手動安裝。該庫的名字為libxp-dev_1.0.1-2_amd64.deblibxp6_1.0.1-2_amd64.deb。下載好使用dpkg -i 命令安裝即可,若遇到依賴問題可使用以下命令解決,然后重新安裝。

    sudo apt-get install -f
    

    安裝完成后Calibre正常工作。
    運行Calibre后仿PEX時,無法生成原理圖,有以下提示(2021.05.08)

Calibre View generation encountered a fatal Error. Please consult the logfile for messages.

這個問題困擾我一年有余,期間嘗試過各種方法:

  1. 在環境變量中添加:MGC_FDI_OA_VERSION = 22.50
  2. 設置共享文件夾:LD_LIBRARY_PATH
  3. 更換最新版本Calibre

但三種方案都不能解決問題,今日發現新的方案,遂解決,方案如下:

在環境變量中加入一行:

export CALIBRE_ENABLE_SKILL_PEXBA_MODE = 1

重啟VIrtuoso發現問題解決。


免責聲明!

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



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