Cadence Capture 常见启动故障总结

 Cadence Capture 常见启动故障总结

今天有小伙伴向老wu咨询了个Capture 16.6的启动异常问题,如下图所示

这个问题老wu之前也有遇到过,只是当时没有找到造成该异常的真正原因,所以直接使用了重装操作系统大法解决了。今天再次面对这个启动异常的问题,老wu建议其尝试了清空Spb_data目录,卸载VC++2005运行库之后重装Cadence SPB 自带的VC++2005运行库等修复方法,但启动异常问题依然存在。

 

如果采用重装操作系统大法肯定是能解决问题,但重装完操作系统之后又要重装许多应用软件,也是挺折腾人的事情,所以觉得有必要花时间分析一下,彻底搞定这个启动异常的问题。

该排查的地方也都排查过了,只能是先跟踪下capture的启动过程,看下都调用了哪些配置文件和dll,看看能不能找到些线索。

果然发现了问题点,16.6的Capture.exe 去调用了17.4的dll,所以造成了启动异常。

问题根源找到了,那解决思路就清晰了,Cadence程序的相关dll文件路径是在环境变量里设置的,应该是PATH的读取优先级问题。PATH中的dll读取策略是从PATH中配置的路径头部开始读取,读取到同名的dll文件之后就不会再继续往后读取了,所以这里先把17.4的dll路径往下移降低其读取优先级,将%CDSROOT%对应的路径排在前边即可。

总结一下,这个启动异常的问题是同时安装了多个版本的Cadence SPB造成的,如果先装了高版本的SPB如17.4再装16.6应该不会有问题,而如果先装的16.6后装的高版本,则后装的Cadence相关的库路径会在PATH里排在前边(读取优先级更高),造成16.6读取到了高版本的dll文件所以加载出错了。

另一个常见的多版本共存的问题也是先装16.6后装17.4造成的,如下图所示的cdn_xxx开头的错误。

这是因为后装的高版本Cadence SPB修改了%CDSROOT%这个环境变量,指向了高版的SPB的安装路径造成16.6启动读取dll文件出现版本异常,此时只需手动修改环境变量CDSROOT,指向16.6的安装后的路径即可,如下图所示

还有一个非常常见的问题是16.6的VC++ 2005 运行库造成的问题,如下图所示

这个只需卸载系统里现有的VC++ 2005的运行库后重新安装16.6自带的运行库即可。

Cadence 16.6的VC++ 2005运行库在16.6的安装后的路径『SPB_16.6\tools\msbase』下,vcredist_x86.exe和vcredist_x64.exe都装上即可。

❤️ 如果这篇文章对您有帮助,欢迎打赏支持

微信打赏二维码

扫描上方二维码,用微信打赏

吴川斌

6 Comments

  • 吴老师,Cadence 17.4的Capture打不开,提示如下(附件有有图),帮忙看看是怎么原因?非常感谢!
    Capture Custom Launch
    Capture has detected that it did not launch properlyin the previous session.Click ‘YES’to launch Capture with the followingsettings?Click ‘No’will launch Capture in default mode.
    Capture core features
    Skip Custom TCL scripts
    Skip Encrypted TCL scripts
    Skip Registry workspace settings
    Skip Signal Integrity (SI) plugin
    Skip Testbench plugin
    Skip User INI settings

  • 我只装了16.6

  • pad可以打开

  • 感谢,我也是16.6和17.4同时安装出现这个问题,之后清理注册表又重新装了一次还是一样。确实是PATH优先级的问题,有所不同的是我PATH的环境变量里没有生成D:\Cadence\SPB_16.6\tools\bin,新建了一个放在D:\Cadence\SPB_17.4\tools\bin前面就可以顺利打开了。

  • capture16.6第一个同样的报错。但是确认了环境变量没问题。之前有试过环境变量修改不正确,确实会出现这个报错。现在是第二次出现。另,系统上同时装了16.6和17.4;16.6的capture出现报错,allegro同样打不开,无任何信息,后台进行都是挂起,然后就被杀掉了,pad designer正常打开。17.4的capture无法打开,会提示说当前的打开有问题,然后选yes/no,进入选产品,选完后一样是无任何反应,后台显示一样是被挂起,然后进程被杀掉。但是17.4的allegro、paddesigner正常打开。查看了16.6的capture errorlog,显示是cdn_og1101as.dll无法识别。cadence社区上面也有类似问题,说是系统更新导致。请问可以帮忙排查吗

    • 请问解决了吗,跟你一样16.6只能打开pad designer,PCB没反应,capture打开提示This application has quit unexpectedly

Leave a Reply