2013年12月29日 星期日

Split Netlists

#!/usr/bin/perl


open(tempfile,"<u028lschpmvbdhrlt.cir");
open(h2,">temp.cir");


while(<tempfile>){


chop $_;
@ary=split(" ",$_);
if (($ary[0] eq ".subckt") || ($ary[0] eq ".SUBCKT"))
{
$cell_name = $ary[1] ;
#rename("temp.cir",$cell_name.".cir");
#open(h2,">temp.cir");
}
print h2 $_;
print h2 "\n";


if (($ary[0] eq ".ends") || ($ary[0] eq ".ENDS"))
{
close(h2);
rename("temp.cir",$cell_name.".cir");
open(h2,">temp.cir");
}
}
close (tempfile);
close (h2);


2013年9月22日 星期日

Split cell - RC put in another subckt

#!/usr/bin/perl


        open(tempfile,"<u055lsclpmvbbr.cir");
        open(h2,">temp.cir");
 $add_header = 0;
 $first_cell = 1;
 $cell_counter=0;
               
 while(<tempfile>){


                chop $_;
  @ary=split(" ",$_);
  @rc_subckt=split("_",$_);
                if (($ary[0] eq ".subckt") && (@rc_subckt[0] ne ".subckt PM") && ($first_cell == 0))
   {
   print "$cell_name \n";
           close(h2);
                        rename("temp.cir",$cell_name.".cir");
                        open(h2,">temp.cir");
                        $end_of_file=0;
                        $add_header=0;
   }


                if ($add_header==0){
                print h2 ".option scale = 0.9 \n";
                print h2 ".param mismatch=1 sigma=3 \n";
                $add_header=1;}



                print h2 $_;
                print h2 "\n";


                if (($ary[0] eq ".subckt") && (@rc_subckt[0] ne ".subckt PM"))
                        {
     $cell_counter++ ;
                          $cell_name= $ary[1];
                        if ($cell_counter>0)
                                {$first_cell=0;}}
}
        close (tempfile);
        close (h2);


2013年6月17日 星期一

這些英文千萬別不懂裝懂

◆Lover 情人(不是:愛人) 
◆Sporting house 妓院(不是:體育室) 
◆Dead president 美鈔(不是:死了的總統) 
◆Service station 加油站(不是:服務站) 
◆Rest room 廁所(不是:休息室) 
◆Busboy 餐館勤雜工(不是:公汽售票員) 
◆Dry goods 紡織品 穀物(不是:乾貨) 
◆Heart man 換心人(不是:有心人) 
◆Tea shop 茶館;小吃店(不是:茶葉店) 
◆Senior citizen 老年人(不是:高級公民) 
◆Wash one’s hands 上廁所(不是:洗手) 
◆A busy body 愛管閒事的人(不是:忙人) 
◆A black sheep 害群之馬(不是:一隻黑羊) 
◆Be taken in 受騙,上當(不是:被接納) 
◆Pull sb’s leg 開玩笑(不是:拖後腿) 
◆African American 美國黑人(不是:非洲美國人) 
◆Eat one’s words 收回前言,改正錯話(不是:食言) 
◆Mad doctor 精神病科醫生(不是:發瘋的醫生) 
◆Eleventh hour 最後時刻(不是:十一點) 
◆Personal remark 人身攻擊(並非個人評論) 
◆Sweet water 淡水(不是:糖水或者甜水) 
◆Confidence man 騙子(不是:信得過的人) 
◆Criminal lawyer 刑事律師(不是:犯罪的律師) 
◆Dressing room 化粧室(不是:試衣間或者更衣室) 
◆Horse sense 常識(不是:馬的感覺) 
◆Capital idea 好主意(不是:資本主義思想) 
◆Familiar talk 庸俗的交談(不是:熟悉的談話) 
◆Black tea紅茶 (不是:黑茶) 
◆Green hand 新手 (不是:綠手) 
◆Have a fit 勃然大怒(不是:試穿) 
◆Black art 妖術(不是:黑色藝術) 
◆White coal (作動力來源用的)水 
◆Chinese dragon 麒麟(不是:中國龍) 
◆Red tape 官僚習氣(不是:紅色帶子) 
◆China policy 對華政策(不是:中華政策) 
◆White man 忠實可靠的人(不是:皮膚白色的人) 
◆Black stranger 完全陌生的人(不是:陌生的黑人) 
◆Eat ones words 收回前言(不是:食言) 
◆An apple of love 番茄(不是:愛情之果) 
◆Handwriting on the wall 不祥之兆(不是:大字報) 
◆Bring down the house 博得滿堂喝彩(不是:推倒房子) 
◆Blind date(由第三者安排的)男女初次見面(並非盲目的約會或者是瞎 
約會) 
◆Roadside business 汽車飯店;汽車旅館;汽車影院(不是:路邊店 ) 
◆American Dream 美國的生活方式,美國人的自由民主觀念(不是:美國夢) 
◆Yellow book 黃皮書(法國政府報告書,以黃紙為封,不是:黃色書籍) 
◆Blue stocking 女學者,女才子(不是:藍色長筒襪) 
◆American beauty 一種玫瑰,名叫美麗動人(不是:美國美女) 
◆English disease 軟骨病(不是:英國病) 
◆Indian summer 愉快寧靜的晚年(不是:印度的夏日) 
◆Greek gift 害人的禮品(不是:希臘的禮物) 
◆Spanish athlete 吹牛的人(不是:西班牙的運動員) 
◆French chalk 滑石粉(不是:法國粉筆) 
◆In ones birthday suit 赤身裸體(不是:穿著生日禮服) 
◆Make ones hair stand on end 令人毛骨悚然,恐懼(不是:令人髮指,氣憤) 
◆Think a great deal of oneself 高看或者看重自己(不是:為自己想的很多) 
◆Pull up ones socks 鼓起勇氣(不是:提上襪子) 
◆Have the heart to do 用於否定句,忍心做(不是:有心做或者有意做) 
◆What a shame 多可惜,真遺憾(不是:多可恥) 
◆You don’t say 是嗎?(不是:你別說) 
◆You can say that again 說的好(不是:你別說) 
◆I haven’t slept better 我睡得很好(不是:我從未睡好過)

2013年4月24日 星期三

更改檔案與include file名稱

#!/usr/bin/perl


#use strict;
#use warnings;


$dir = "TYP";


    opendir(DIR, $dir) or die $!;


    while (my $file = readdir(DIR)) {


        # Use a regular expression to ignore files beginning with a period
        next if ($file =~ m/^\./);
        print "$file\n";
        @ary=split("_",$file);
        print "$ary[0]\n";
        $current_file_name="$dir/$file/change_cell.dist";
        print "$current_file_name\n";
        open(tempfile,"<$current_file_name");
        open(h2,">temp.cir");


                while( ){
                chop $_;
                print $_;
                s/change_cell.dist.pex/$ary[0].dist.pex/g ;
                s/ P / pmos_33 /g ;
                s/ N / nmos_33 /g ;
                print h2 $_;
                print h2 "\n";


}
                close(h2);
                rename("temp.cir",$ary[0].".cir");
                open(h2,">temp.cir");


$src = "$dir/$file/change_cell.dist.pex";
$dst = "$ary[0].dist.pex";
use File::Copy;
copy($src, $dst);
    }


        close (tempfile);
        close (h2);
    closedir(DIR);
    exit 0;


標籤