在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 24929|回复: 39

[资料] 数字标准单元库cdl网表转成原理图

[复制链接]
发表于 2016-8-22 17:22:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本文目的在于将工艺厂提供标准单元库的cdl网表转成对应的原理图。通常cdl网表中器件参数如下。如果直接使用原始网表,转成原理图后器件的symbol参数和器件的属性参数不对应。因此需要使用程序在原始网表后面添加一项参数fw,添加后的网表如下。
MM41 net115 xo net78 VPW N15LL W=200.00n L=130.00n(原始参数)
MM41 net115 xo net78 VPW N15LL W=200.00n L=130.00n fw=200.00n(添加后)
需要将整个原始的cdl网表都做转换,新建个空白文件,命名change_cdl,转换程序如下:
%%工艺厂提供的标准单元库中,电源和地使用了全局变量使用程序如下
$read_in = "./origin.cdl"; #原始网表
$write_out = "./output.cdl"; #生成网表
open (IN, "< $read_in") or die "Can't open original file: $!\n";
open (OUT, "> $write_out") or die "Can't open output file: $!\n";
while (<IN>) {
if (/^\.subckt/) {
    chomp;
    $_ .= " VDD VSS";     #VDD和VSS为电源和地名
    print OUT "$_\n";}
elsif (/^M.*W=(\S+)/) {  chomp;
     $_ .= " fw=$1";
     print OUT "$_\n";
   }
   else {
     print OUT $_;
   }
}
close IN;
close OUT;
open (TEST, "<$write_out") or die "can not open the file: $!\n";
while ( <TEST> ) {
       print;
}
close TEST;

%%工艺厂提供的标准单元库中,电源和地没有使用了全局变量使用程序如下
$read_in = "./origin.cdl"; #原始网表
$write_out = "./output.cdl"; #生成网表
open (IN, "< $read_in") or die "Can't open original file: $!\n";
open (OUT, "> $write_out") or die "Can't open output file: $!\n";
while (<IN>) {
if (/^\.subckt/) {
    chomp;
  }
elsif (/^M.*W=(\S+)/) {  chomp;
     $_ .= " fw=$1";
     print OUT "$_\n";
   }
   else {
     print OUT $_;
   }
}
close IN;
close OUT;
open (TEST, "<$write_out") or die "can not open the file: $!\n";
while ( <TEST> ) {
       print;
}
close TEST;

打开终端,输入  ./change_cdl,就生成了可以转换的cdl网表。之后
cadence主界面 file—import—spice
1、第一个界面有四个位置修改
(1)新生成的cdl库位置
(2)选择cdl
(3)参考库选择pdk对应的基本库
(4)将device mapping 打对号
1.png
2、第二个界面有一个位置要修改
(1)添加输出库,其余默认。
2.png
3、第三个界面默认
4、第四个界面
(1)file导入写好的映射文件如下,因为我们不要使用二极管和电阻,因此此处没有研究二极管和电阻写法。将新生成的output.cdl 网表中的 NMOS名字(N15LL)替换成nfet,PMOS名字(P15LL)替换成pfet。
devSelect := nfet n15ll (n15ll是PDK库中对应的器件名称)

propMatch := subtype N

propMap := L l W w Fw fw M m (参数对应,如果顺序有问题去查cdf文件
                                中的promap,主界面tools—cdf--edit)

addProp := model n15ll
devSelect := pfet p15ll (n15ll是PDK库中对应的器件名称)

propMatch := subtype P

propMap := L l W w Fw fw M m

addProp := model p15ll
(2)可以通过面板修改参数
(3)实在不懂,可以help文件。
4.png

5、第五个界面默认。之后OK开始转换,一定注意报告的log文件
发表于 2016-8-24 17:00:26 | 显示全部楼层
非常有用的东西,谢谢!
发表于 2016-8-24 19:58:16 | 显示全部楼层
看看~!
发表于 2016-8-24 20:14:26 | 显示全部楼层
收藏了先
发表于 2016-9-9 09:22:55 | 显示全部楼层
学习学习,谢谢楼主分享
发表于 2016-10-10 09:00:25 | 显示全部楼层
收藏先,备用。
发表于 2017-4-11 14:53:54 | 显示全部楼层
学习学习,谢谢!
发表于 2018-7-2 17:26:43 | 显示全部楼层
没有转成功
发表于 2018-7-3 10:37:06 | 显示全部楼层
gooood  joooob!!
发表于 2018-7-5 08:51:53 | 显示全部楼层
多谢楼主,管子可以转了,电阻还没成功,继续研究
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-21 22:43 , Processed in 0.030522 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表