CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): wang (Chip쟁이)
날 짜 (Date): 2002년 12월 10일 화요일 오후 03시 22분 15초
제 목(Title): Re: perl 질문입니다.



#!/bin/perl -w

if($#ARGV < 1){
 print "usage: convert inputfile outpufile\n";
}

$ifile = $ARGV[0];
$ofile = $argv[1];

open IFILE, "$ifile" or die "Cannot open $ifile\n";
open OFILE, ">$ofile" or die "Cannot open $ofile\n";

while(<IFILE>){
  chomp;
  if(/\\\S*\[/){
    ($sig,$_) =~ s/^.*\\(\S*)\[\d*\].*$/$1/;
    ($num,$_) =~ s/^.*\[(\d*)\].*$/$1/;
    if(exist $hash{$sig}){
      if($num eq "0"){
        $_ =~ s/,/};/;
      }
    }else{
      $hash{$sig} = 1;
      print "wire [$num:0] $sig;\n";
      print "assign $sig = {\n";
    }
    print "\t\t\t$_\n";
  }
  print "$_\n";
}

close IFILE;
close OFILE;



# wire [x:0] signal = (blahblah)는 일부 툴에서 동작하지 않습니다.

[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.