本篇主要谈两个问题,一是如何按自己的职业或公司的需求安装所需的软件,二是深入谈谈Cadence(以及所有其他使用FlexNet/Flexlm管理license许可证的EDA厂商)的license.dat这个重点问题。
(一)
Cadence出版的软件众多,许多人很可能在这么多软件中不知所措,不清楚自己到底需要安装运行哪些Cadence的软件来完成自己的项目。这儿针对这个做一个比较细致的介绍。如下图所示,Cadence的软件按不同的用途大体上可以分成这几个组合包:
所以,若你的主要职责或公司的主要产品是芯片设计,则就安装IC package;若是电路板的业务,则就安装System package。具体到每个package的组成,参见这个文件的详细说明:http://pan.baidu.com/s/1kT0ytFL ,这里我们是按照2014/2015年度Cadence最新版的为例,所以这里的IC package就包括IC616、MMSIM141、CTOS141、VIPCAT113、INCISIV141、CONFRML141、RC142、ET141、SSV142、Liberate141、EDI142、ASSURA414、PVS141、EXT141这些工具套件来分别完成不同条件下的不同的任务。例如对于90nm以上工艺的芯片设计使用ASSURA414来完成DRC和LVS,但对于90nm以下工艺的芯片设计则要用PVS141来完成DRC和LVS。因为是最新版本,所以一些旧的工具套件被新的工具套件所取代,例如SSV142(Silicon Signoff & Verification,其中包含了Tempus Timing Signoff Solution以及Voltus IC Power Integrity Solution)就取代了ETS131的功能。对各个工具的具体功能参见这个文件的详细列表:http://pan.baidu.com/s/1kTMIYDx
有关Cadence软件的具体安装及设置在此不做进一步说明,详细请参见我以前的教程。下载安装请参见:http://bbs.eetop.cn/thread-457073-1-1.html 设置请参见:http://bbs.eetop.cn/thread-452284-1-1.html(需要参见下面的讨论进行环境变量相应的修改)
(二)
现在来仔细研讨Cadence的license事项。坛上及网上流传的差不多所有Cadence的icense.dat针对最新版工具来说都是不完整有残缺的,有大量新FEATURE都没有包含在内,因此相关功能是不能运行的。此外,我还发现许多人是按照不正确的方式来运行license.dat。
首先我们需要回到原点,搞清楚FlexNet(Flexlm)运行管理license的原理及license.dat的格式及内涵。Cadence所有工具安装完成后,再每个工具目录下都有/share/license这个子目录,其中就有flexlm_enduser.pdf这个FlexNet的用户手册(当前的版本为v11.10,这大体上应该对应FlexNet SDK的版本)。具体到icense的格式是第三章Reading a License File,在这儿指出了license文件主要包含了SERVER行、VENDOR行、FEATURE或INCREMENT行这三部分(另外可以有USE_SERVER这行,这个USE_SERVER在uncounted
features时主要记录server使用状况用,对server运行没有任何影响)。在一些情形中,可以没有SERVER行或/和VENDOR行。由于将要在下面提到的原因,我们不在此对SERVER行以及VENDOR行的格式做进一步说明,因为我们在license.dat中将不需要这两行。Cadence在其license说明中明确指出它只采用FEATURE这个关键词,而不用INCREMENT。
FEATURE行的格式为:
FEATURE feature_name vendor_daemon feat_version exp_date num_lic [optional_attributes] SIGN=”<...>”
此处,
此外FEATURE行还可有一些属性变量[optional_attributes]如DUP_GROUP=、ISSUED=、ISSUER=等等,对于我们来说,最重要的是必须有HOSTID=,这是应对上面那个num_lic所必须设置的,将这个变量设置为HOSTID=ANY,即这个license是浮动license,不固定于某一台机器节点。
所以我们的(Cadence)license.dat中的FEATURE的格式应该是这样的:
FEATURE feature_name cdslmd 1000.000 permanent uncounted HOSTID=ANY SIGN2=签名密码
这个license.dat文件是一个纯由FEATURE行构成没有任何其他lines的文件,因为上面的分析指出了我们不需要SERVER行、VENDOR行这些东西。这又导致我们在设置环境变量CDS_LIC_FILE时需要使用绝对路径指向license.dat,即CDS_LIC_FILE=<IC616_install_dir>/share/license/license.dat,而不是设置成CDS_LIC_FILE=port@hostname。
由此可见,我们只要有工具来生成有效的SIGN2=签名密码就可以完成这个license.dat。本坛上的大侠raychore在回复我的另一贴http://bbs.eetop.cn/thread-469274-1-1.html 中给出了一个经使用证明是有效的工具lmcrypt可以用来生成这个SIGN2密码。我对其中的相关格式及输入文件cadence.txt等做了相应的修改,放在网盘上http://pan.baidu.com/s/1c0xoM3I 使用这个工具你可以生成包含最新features的license.dat ,具体使用请参见其中的README详细说明。参见这个生成的包含大部分(如果不是全部的)最新FEATUREs的有效license.dat网盘下载:http://pan.baidu.com/s/1mg83L4s 设置环境变量及运行指令的shell script为网盘:http://pan.baidu.com/s/1mgFVwTy
在按照上面的步骤完成所有安装设置及生成有效license.dat之后开始运行Cadence软件时,你不需要启动运行Cadence License Server Daemon! 我提供的那个环境变量设置及virtuoso运行指令的shell script中就没有有关启动license server daemon的指令,因为这根本不需要!我上面关于license.dat中针对feature的num_lic说明已经指明了,当这个num_lic被设置为uncounted或者0时,这个feature就不需要license server。所以当我们将license.dat中所有FEATURE都设置为uncounted后,我们就根本不需要启动运行License Server Daemon了!这一点不光对Cadence软件是正确的,对其他所有使用FlexNet(Flexlm)管理license许可证的EDA厂商的软件都是如此。
以上是针对Cadence生成license.dat,对其他EDA如Synopsys、Mentor Graphics、Keysight (Agilent)、NI (AWR)、Ansys (Ansoft)等等等等,都可以照此办理,使用Flexlm SDK制作lmcrypt,然后再生成相应的license.dat
转自:http://bbs.eetop.cn/thread-470308-1-1.html
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删