sunhongwei的个人空间 https://blog.eetop.cn/1708597 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

【转载】pt 转innovus 脚本

已有 622 次阅读| 2024-2-4 17:38 |系统分类:芯片设计

############################################
# edit by wangnengxue 20200911 #
# Email : nengxuew@cadence.com #

###########################################

proc write_eco_change {args} {


 


set output ""
parse_proc_arguments -args $args results
foreach argname [array names results] {
if {[regexp -nocase {\-output} $argname ]} { set output $results($argname) }
}


 


 


write_change -format icctcl -output ${output}_icctcl



set in_icctcl_file [open ${output}_icctcl r+]
set out_innovus_file [open ${output} w]



while {[gets $in_icctcl_file line]>=0} {



if {[regexp {current_instance$} $line ]} {
set hier_inst ""

set hier_inst1 ""
puts $out_innovus_file "#$line"
continue
}



if {[regexp {current_instance\s*(\S+)} $line uselessvar_a hier_inst]} {
set hier_inst1  $hier_inst

set hier_inst $hier_inst/

puts $out_innovus_file "#$line"
continue
}



switch -regexp $line {


{size_cell} {
regexp {size_cell\s*\{(\S+)\}\s*\{(\S+)\}} $line uselessvar_a inst cell_type
puts $out_innovus_file "#$line"
puts $out_innovus_file "ecoChangeCell -inst $hier_inst$inst -cell $cell_type \n"
}


{remove_buffer} {
regexp {remove_buffer\s*\[get_cells\s*\{(\S+)\}\]} $line uselessvar_a inst
puts $out_innovus_file "#$line"
puts $out_innovus_file "ecoDeleteRepeater -inst $hier_inst$inst -nonPhysical \n"
}

{insert_buffer} {
regexp {insert_buffer\s*\[get_pins\s*\{(\S+)\}\]\s*(\S+)\s*-new_net_name\s*\{(\S+)\}\s*-new_cell_name\s*\{(\S+)\}} $line uselessvar_a term cell_type new_netname new_cellname
puts $out_innovus_file "#$line"
puts $out_innovus_file "ecoAddRepeater -term $hier_inst$term -cell $cell_type -new_net_name $new_netname -name $new_cellname  -hinstGuide $hier_inst1   \n"
}
}
}



close $in_icctcl_file
close $out_innovus_file



}


define_proc_arguments write_eco_change -info "User change pt_script format to innovus script format \nExamble: write_eco_change -output ./wangnengxue.innovus.tcl" \
-define_args {\
{-output "Specifies the output script filenane and path"}
}



点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 1

    关注
  • 2

    粉丝
  • 0

    好友
  • 3

    获赞
  • 4

    评论
  • 245

    访问数

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

GMT+8, 2024-11-5 12:19 , Processed in 0.012954 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部