weiqi7777

Cadence使用

0
阅读(3936) 评论(3)

从现在开始,手把手教使用cadence。这里以实现D触发器(上升沿触发)为例程。

这里用的库是TSMC_0.18UM_PDK,0.18的库。从eetop下载的库。此库只可用于学习用。

首先,下载TSMC_0.18UM_PDK到linux下并解压。在用户目录下新建文件夹,这里我用的是lujun命名,然后将TSMC_0.18UM_PDK复制到lujun文件夹目录下。

目录文件如下所示:

clip_image002

目录里面的cds.lib是定义的library的文件。

打开cds.lib,在里面输入以下内容,以定义基本的库。

clip_image004

其中ic5141的目录根据自己安装的目录进行更改。

打开终端,进入到TSMC目录下,然后输入icfb&,打开cadence。

clip_image006

点Tools,选择library manager,进入到库管理界面。

clip_image008

然后就可以看到库了,这些库是在cds.lib里面定义的。

clip_image010

新建library。

clip_image012

输入库的名字,然后OK。在选择第二个attach,关联库。

clip_image013clip_image014

工艺库选择tsmc18rf。就是我们要用的0.18的库。这样就完成建立库了。

clip_image015

接下来,要建立库中的元件了。D触发器,需要传输门和非门,这里我多用了与非门。

首先先建立非门:

选中刚刚建立的库,然后file->new->cell view。然后输入以下右边内容,就建议一个非门元件了。

clip_image016clip_image018

然后弹出画原理图的界面了。

clip_image020

接着就调用0.18库中的器件了,使用快捷键i,弹出界面,

选择browse,然后选择tsmc18rf库,再选择nmos3V_mis,再选择symbol,在回车。

clip_image022

在原理图中放置一个noms管。接着在放置一个pmos管,选中器件,按快捷键q,进入器件属性界面,改变宽长比,然后再连线,最终图如图:

clip_image023

接下来,就要放置电源和地,这里电源用的vdd。Vdd和gnd在analogLib库中,用同样的方法将两个调用在原理图中。

接着按快捷键p,添加pin管教,添加in和out管教,注意in的方向选择input,out的方向选择output。

clip_image025clip_image027

最终图如下所示,记着要连接管子的衬底。

clip_image028

选择左边的第一个,check and save。没有提示错误和警告,住界面显示保存。这样,非门的原理图就创建成功了。

clip_image029

原理图创建后,接着要创建非门的symbol了,因为在原理图中,引用的是元件的symbol。

选择design->create cellview->from cellview。选择OK,在选择OK。

clip_image033

在创建symbol中,先删除自动生成的东西,然后画出下面图形,利用add->shape里面的各种形状进行绘制。此操作 比较简单,这里就不详细说明。记着画完了要保存。

clip_image035

这样就真正完成了非门的原理图和symbol的创建了。可以在库中,看到刚刚之前创建的非门的原理图和symbol。

clip_image037

接下来,就开始创建与非门和传输门,

首先是与非门,结构和symbol如下所示:

clip_image039

clip_image041

然后是传输门:

clip_image043clip_image045

此时可看到我们库中多了与非门的传输门的元件了。

clip_image047

这样,D触发器的基本元件就创建好了。

接着就要创建D触发器的原理图和symbol了。

D触发器的原理图如下所示:

clip_image049

其中标号clk和~clk的,就表示相互之间的连线是连在一起的 。

clip_image051

D触发器的symbol如右所示:

此时库目录如下:

clip_image053

原理图和symbol创建好后,接下来就是仿真了。

以仿真D触发器为例。

一般将仿真的元件和器件的元件分开,因此这里将DFFT复制为sim_DFFT,表示为仿真。如下所示:

clip_image055

在sim_DFFT中新建原理图,内容如下。用快捷键l对图中的线进行网络标号,以方便仿真看结果。

clip_image057

其中v1和v0是analogLib中的元件vpulse。

将v1和v0参数设置如下:

clip_image059clip_image061左边为v1,右边为v0。

clip_image062接着开始仿真,选择tools中的analog environment。

启动仿真界面。

参数设置如下,仿真类型tran,时间为1u。看D,clk,Q的信号。这里的model library是设置好的,不用更改。

clip_image064

接着就开始仿真了,选择右边的netlist and run,就开始仿真了,

clip_image066

从波形图中,可看到是在时钟的上升沿将数据打入输出,证明我们所设计的电路图功能是正确的。

  1. 这学期大作业是D触发的 layout,过lvs drc,考虑栓锁
  2. 俺读书时用过Cadence,跑在UNIX上面,老贵了。

  3. 哈哈,好资料,楼主太辛苦了