以下内容以记录一次反相器绘制为例子(数据啥的都不考虑了…因为我是个小萌新)
New->library->name建立一个自己的库 New->Cell view…进入 注意:因为绘制原理图,所以Tool要填写Composer-Schematic,然后View name 自动填写,点击ok。 进入下图界面 每个功能介绍在左边,快捷键是冒号后面的内容。 我们首先用i快捷键放置器件 点Browse选择如下: close->hide,鼠标左键就放置了一个nmos(注意经常按esc取消操作) 单击器件,q键弹出器件信息: 这些东西根据自己设计来定。 同理放置pmos 快捷键w用来连线,如下图所示(F键保持合适窗口、方括号调整大小、鼠标右键拖动选择放大、连线要点不要拖、没有端口的双击为确定) 下一步添加电源和地,按i在analogLib中找(F3键是更改设置,如果不好用要注意自己是不是有Fn功能键转换) 然后点击 为衬底连接 按P(PIN)添加引脚,注意!Direction要选择对应的如(out选择Output)然后再连线 点击第一个Check and save保存 然后生成单元、以供调用 默认配置一顿点OK 生成symbol 保存,退出这个Inv东西的原理图就完成了,但是为了确保好不好用,就像FPGA一样,需要Textbench检测。下面让我们创建INV_TB并进行仿真。 和创建INV开始的步骤并无区别 按i将之前的INV添加进来 当然这一个加上电源、地和信号就可以撤了,但我们为了了解快捷键…多费费时间…单重复制,点击器件按C然后左击选择起点,移动鼠标,再左击确定。 多重复制(删除是delete然后单击) 单击,C,F3 Row填4,单击,鼠标下滑完成 之后和建立INV类似,添加vdd、vdc、gnd 单击vdc,按q将vdc电压设为1.2V 加激励源vpluse设置如下 最后将原理图连接如下: (小技巧,OUT可以一次创建多个同一类型的,设置如下) 然后检查保存 然后创建仿真环境 选择观测点: 回到原理图,点线就是看电压,点端口就是看电流 我选了这几根线,然后点这个看仿真 结果: 点红圈分离 可以看出正确(鼠标选好位置,按M可以看具体数值) 下面介绍一种基于Verilog数模混合的仿真 第一步:选择如下配置创建一个cell 输入如下:
`timescale 1ns/10psmodule vec_gen (out1,out2);output out1,out2;reg out1,out2;initial beginout1=1'b0;#3;out1=1'b1;#4;out1=1'b0;#6;out1=1'b1;endinitial beginout2=1'b0;#2;out2=1'b1;#5;out2=1'b0;#9;out2=1'b1;endendmodule
点两个yes完事 生成symbol,然后同TB一样创建一个CELL,然后调用这个模块,连线如下图所示 最大不同出现了 我们要为它额外在产生一个config创建模拟环境 设置如下 导入信息如下就正确 然后点这个config,如之前一样调出 分别修改input和output 仿真器选择 同tb一样的方式选择瞬时仿真,和时间 同之前一样选观察线 结果如下(期间出现了点小问题,就是vdc的数没了导致波形不对,所以大家复现的时候单击vdc按q看看DC voltage是不是1.2V)