Cadence 中调用 Spice 子电路的方法


在 IC 设计中有时会用到提第三方提供的模型,如外接的功率 MOSFET,肖特基二极管等,这些大都是基于 spice 的 model,其中有些可以直接在 Cadence 中调用,更多的则需要在 Cadence 中做些工作才能调用,这里把一般的 Cadence ADE 中调用这样的 spice 模型(子电路)的流程介绍一下。

首先,对需要调用的电路添加 symbol(如下图中所示,以功率管为例),这里注意 pin 脚的一致。之后将此 symbol view 同时另存为 spectre view

调用电路添加symbol

接着,在 Cadence 的 CIW 打开 CDF 菜单Tool—>CDF—>Edit, 如下图中所示

CDF菜单

在下面对话框中,将 CDF type 选为Base, 然后选择调用的电路,并在更新的菜单中的元件参数栏(Component Parameters)选择 Add 添加参数

CDF菜单对话框

可以看到此时出现添加参数的窗口,这里我们添加一个名为 model 的参数,具体的设置可以参考下图,parameter: string, parseAsnumber: no, parseAsCEL: yes, strobeDefault: no …

添加参数

完成之后,回到上级对话框,可以看到元件参数栏下出现的我们设置的 model 这个参数。

添加参数后的CDF菜单

之后,编辑仿真信息Simulation Infomation,可以看到下面的对话框。首先将 simulator 选为spectre, 之后在 otherParameters 栏目中设为 model,在 termOrder 中依次填入元件的 pin 脚, 注意顺序与调用的 spice 文件中的一致。

Simulation Infomation 菜单

在完成这些 cdf 的设置后,我们就可以在电路中调用所需的 spice 子电路。在下图的仿真电路中,我们调用了之前的功率管,选择编辑其属性,在 CDF 参数的 model 这一栏填入 spice 文件中的 model(或子电路名);并将此 spice 文件加入 model path 中,就可对其调用仿真。

调用spice子电路

仿真结果

上面就是 Cadence 仿真环境中调用这样的 spice 子电路的流程,主要参考了这里的方法,感兴趣的同学可以去看看。


版权声明: 本站文章版权所有,转载须以超链接形式标明文章原始出处和版权信息。

Cadence 中调用 Spice 子电路的方法》有14个想法

  1. SLIJ

    ERROR (SFE-841): “21XXYY.lib” 129: Unexpected character `{‘ in netlist.
    ERROR (SFE-874): “21XXYY.lib” 129: Unexpected closing parenthesis.
    Expected end of file or end of line.
    ERROR (SFE-1016): “21XXYY.lib” 130: Model `ncg’, the expected number of value followed by `dev/uniform’ is 1, but found 0.
    ERROR (SFE-874): “21XXYY.lib” 137: Unexpected string value “.05%”. Expected end of file or end of line.
    请问 仿真的时候报这个错是什么原因?

    回复
  2. 王健健

    LZ,我现在想把用SPICE网表描述的一款器件模型导入cadence,看您文章中有写 首先,对需要调用的电路添加symbol,请问这句话怎么理解,对需要调用的电路添加symbol,是SPICE网表描述模型所用的宏电路,还是对什么电路添加symbol呀,求助 谢谢

    回复
      1. chen

        我没有模型,只有一个.cir的文件,所以也存在这个问题,请问一开始是直接创建一个symbol然后加pin就可以了吗

        回复
    1. 苏许

      你好 你是有做铁电电容吗 有一些问题想请教一下你 我的联系方式是QQ2150423558谢谢

      回复
  3. James

    为什么我的不能成功呢?编辑仿真信息(Simulation Infomation)这一步填写好 PIN的顺序之后,点击OK,就出错
    SYNTAX ERROR found at line 1 column 6 of file *string*
    *Error* lineread/read: syntax error encountered in input
    搞不明白怎么回事,有大侠帮助我么?十分感谢

    回复
  4. asdf

    LZ请问,下载下来的spice文件需要在转化为.scs文件吗?我试了不能转换。然后直接调用的spice model。可是仿真得到的波形和datasheet上面的差别很大。。。

    回复
  5. l

    非常感谢博主能写下这个过程,但是我按照这个过程做时最后一个环节,把于spice的模型的文件路径指定后显示有错。就无法仿真了。希望博主能把后面如何添加spice文件和仿真的方法也说一下好吗?非常感谢,急需

    回复
      1. l

        谢谢你,我已经解决了,主要是symbol的pin名字没有设对,所以出现了错误。再一次感谢您

        回复

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注