查看: 2358|回复: 0
收起左侧

Linux系统中VCS、Dve & Verdi的使用

[复制链接]

  离线 

  • TA的每日心情
    奋斗
    2021-1-15 13:53
  • 签到天数: 26 天

    [LV.4]

    发表于 2020-8-18 17:58:27 | 显示全部楼层 |阅读模式

    有人预言,RISC-V或将是继Intel和Arm之后的第三大主流处理器体系。欢迎访问全球首家只专注于RISC-V单片机行业应用的中文网站

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    本帖最后由 新ちゃん 于 2020-8-29 10:08 编辑

    1. 资料来源:

    1)http://bbs.eetop.cn/thread-633801-1-1.html
    2)https://blog.csdn.net/Chi_Hong/article/details/86298048
    3)https://blog.csdn.net/qq_40829605/article/details/85345795


    2. Linux系统中VCS、Dve & Verdi的安装与破解

    具体的安装包在资料来源3)中能找到。按照资料来源1)、2)、3)进行安装和破解。本文主要总结的不是安装与破解的过程,主要总结的是在安装与破解过程中遇到的问题。


    安装的大概步骤:下载安装包-解压-安装-获取license-修改Synopsys.dat文件-设置环境变量-安装lsb-core-激活。


    3. VCS、Dve & Verdi的安装与破解过程中的问题


    1)在激活期间,如果激活失败,多半是27000端口被占用了,所以要使用kill指令干掉占用的程序。

    2)每次使用VCS、Dve & Verdi,都需要开启激活。

    3)若破解后运行VCS报出"/bin/sh illegal option -h"的错误,则需要检查是否安装了sh。若没有安装sh,则需要sudo apt-get install sh。

    4)若在VCS运行期间报以下错误:


    1. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsGroupGetActive'
    2. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `miHeapProf_init'
    3. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `printIclBeginMarker'
    4. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCallocFunc'
    5. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `executeTclProc'
    6. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCheckMallocFromGroupFunc'
    7. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `waitForUserInput'
    8. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `storeSimLogFileHandle'
    9. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsSetOutOfMemoryRoutine'
    10. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `registerPreRestartFunc'
    11. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `initNativeUcli'
    12. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCheckReallocFunc'
    13. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsNamedAllocateGroup'
    14. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `printIclEndMarker'
    15. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCallocFromGroup'
    16. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsSetSmallCaching'
    17. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snps__StrdupFunc'
    18. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsHighMemory'
    19. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsStrdupFunc'
    20. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCheckMallocFunc'
    21. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsGetMemBytes'
    22. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsMallocFunc'
    23. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsReallocFromGroup'
    24. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCheckCallocFromGroupFunc'
    25. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `execMhpiTclCommand'
    26. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsMallocFromGroup'
    27. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsSetHook'
    28. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsFreeFunc'
    29. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsMemSetLogFileHandle'
    30. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsFreeGroup'
    31. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsOutOfMem'
    32. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsNamedPushGroup'
    33. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `miHeapOn'
    34. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `setIclCmd_ResVars'
    35. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `setEnvPair'
    36. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsLowMemory'
    37. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCheckFreeFunc'
    38. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `registerOutOfMemHandle'
    39. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `vcsRunUcliErrorScript'
    40. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `shutDownNativeUcli'
    41. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsMemManagerIsActive'
    42. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsDoStackUnwind'
    43. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `breakNativeTclLoop'
    44. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCheckCallocFunc'
    45. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsNamedPopGroup'
    46. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `storeMiscTfCb'
    47. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCurrentGroup'
    48. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `isUcliEngineStarted'
    49. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsPrintf'
    50. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsCheckStrdupFunc'
    51. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsucli.so: undefined reference to `execMhpiTclCommandNoPrint'
    52. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsGetHook'
    53. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsReallocFunc'
    54. /XXX/synopsys/vcs_2016.06/linux/lib/libvcsnew.so: undefined reference to `snpsGroupSize'
    复制代码

    其中/XXX/是我个人目录,所以不用理会。出现这个问题的原因是gcc版本过高,VCS一般是运行在gcc4.4上。解决办法:安装多个gcc版本。


    4. gcc版本降级

    如果能使用sudo apt-get install gcc - 4.4 g++ - 4.4的可以忽略下面的内容,直接使用sudo apt-get install gcc - 4.4 g++ - 4.4进行安装。
    我的ubuntu系统是16.04的,已经没有gcc - 4.4 g++ - 4.4的安装源,最低的是gcc - 4.8 g++ - 4.8,所以我无法使用上面的方式,因此需要采用以下的方式:


    1)登陆http://old-releases.ubuntu.com/ubuntu/pool/universe/g/,下载
    1.1) g++ - 4.4_4.4.7-8ubuntu1_i386.deb
    1.2) cpp-4.4_4.4.7-8ubuntu1_i386.deb
    1.3) gcc-4.4_4.4.7-8ubuntu1_i386.deb
    1.4) gcc-4.4-base_4.4.7-8ubuntu1_i386.deb
    1.5) libstdc++6-4.4-dev_4.4.7-8ubuntu1_i386.deb
    1.6) libstdc++6-4.4-dbg_4.4.7-8ubuntu1_i386.deb

    2)运行sudo dpkg -i *.deb。

    3)由于某些原因,我不想切换gcc的版本,所以我再VCS运行的脚本中加入了:

    1. vcs -cpp g++-4.4 -cc gcc-4.4
    复制代码

    指定gcc-4.4 g++ - 4.4作为VCS运行的gcc。需要切换的话可以参考以下文章:
    https://blog.csdn.net/researchstep/article/details/50325945


    5. 附加VCS仿真的选项说明
    VCS部分仿真选项的说明:
    https://blog.csdn.net/qq_41394155/article/details/81486760


    本篇完,感谢关注RISC-V单片机中文网




    上一篇:modelsim仿真详细过程(功能仿真与时序仿真)
    下一篇:rocket-chip项目的具体内容
    RISCV作者优文
    全球首家只专注于RISC-V单片机行业应用的中文网站
    回复

    使用道具 举报

    高级模式
    B Color Image Link Quote Code Smilies

    本版积分规则

    关闭

    RISC-V单片机中文网上一条 /2 下一条



    版权及免责声明|RISC-V单片机中文网 |网站地图

    GMT+8, 2024-4-18 21:17 , Processed in 0.848221 second(s), 46 queries .

    快速回复 返回顶部 返回列表