From c8e364d699f8fab6e5b98c932a236b5865d573cb Mon Sep 17 00:00:00 2001 From: Cahit Date: Sat, 15 Mar 2014 07:59:07 +0100 Subject: [PATCH] changed compile scripts for better placement reporting --- 32PinAddOn/compile_periph_gsi.pl | 70 +++++++------------------------ ADA_Addon/compile_periph_gsi.pl | 70 +++++++------------------------ wasa/compile_periph_gsi.pl | 71 +++++++------------------------- 3 files changed, 45 insertions(+), 166 deletions(-) diff --git a/32PinAddOn/compile_periph_gsi.pl b/32PinAddOn/compile_periph_gsi.pl index a11327c..3cceff2 100755 --- a/32PinAddOn/compile_periph_gsi.pl +++ b/32PinAddOn/compile_periph_gsi.pl @@ -168,65 +168,25 @@ if($map==1 || $all==1){ $c=qq|map -retime -split_node -a $FAMILYNAME -p $DEVICENAME -t $PACKAGE -s $SPEEDGRADE "$TOPNAME.ngd" -pr "$TOPNAME.prf" -o "$tpmap.ncd" -mp "$TOPNAME.mrp" "$TOPNAME.lpf"|; execute($c); - $fh = new FileHandle("$TOPNAME.mrp"); + $c=qq|htmlrpt -mrp $TOPNAME.mrp $TOPNAME|; + execute($c); + + $fh = new FileHandle("<$TOPNAME"."_mrp.html"); @a = <$fh>; $fh -> close; - my $fileSize = @a; - my $isParError = 0; - - open (DEBUG, '>par.log'); - for (my $i=0; $i<$fileSize; ) + foreach (@a) { - my @line = split(' ', $a[$i]); - if (@line && ($line[0] =~ /WARNING/)) + if(/FC_|HitInvert|ff_en_/) { - my $warning = $a[$i]; - chomp $warning; - my $k = 1; - my @nextLine = split(' ', $a[$i+$k]); - if(!@nextLine) - { - $k+=10; - @nextLine = split(' ', $a[$i+$k]); - } - while (!($nextLine[0] =~ /WARNING/)) - { - my $b = $a[$i+$k]; - chomp $b; - $b =~ s/^\s+//; - $warning = join (' ', $warning, $b); - $k++; - @nextLine = split(' ', $a[$i+$k]); - if(!@nextLine) - { - $k+=10; - @nextLine = split(' ', $a[$i+$k]); - } - if ($k>20) - { - last; - } - } - #open my $keywords, '<', '../keywords.txt' or die "Can't open keywords: $!"; - if ($warning =~ /FC_|HitInvert|ff_en_/) - { - print DEBUG $warning."\n\n"; - $isParError = 1; - } + print "\n\n"; + print "#################################################\n"; + print "# !!!Possible Placement Errors!!! #\n"; + print "#################################################\n\n"; + + my $c="egrep \"WARNING|FC_|HitInvert|ff_en_\" par.log"; + system($c); + last; } - $i++; - } - close (DEBUG); - - if ($isParError) - { - print "\n\n"; - print "#################################################\n"; - print "# !!!Possible Placement Errors!!! #\n"; - print "#################################################\n\n"; - - my $c="egrep \"FC_|HitInvert|ff_en_\" par.log"; - system($c); } } @@ -281,7 +241,7 @@ if($par==1 || $all==1){ } -if($timing==1 || $all==1){ +if($timing==1){ # IOR IO Timing Report $c=qq|iotiming -s "$TOPNAME.ncd" "$TOPNAME.prf"|; execute($c); diff --git a/ADA_Addon/compile_periph_gsi.pl b/ADA_Addon/compile_periph_gsi.pl index 4a5e1c3..6099b1a 100755 --- a/ADA_Addon/compile_periph_gsi.pl +++ b/ADA_Addon/compile_periph_gsi.pl @@ -168,65 +168,25 @@ if($map==1 || $all==1){ $c=qq|map -retime -split_node -a $FAMILYNAME -p $DEVICENAME -t $PACKAGE -s $SPEEDGRADE "$TOPNAME.ngd" -pr "$TOPNAME.prf" -o "$tpmap.ncd" -mp "$TOPNAME.mrp" "$TOPNAME.lpf"|; execute($c); - $fh = new FileHandle("$TOPNAME.mrp"); + $c=qq|htmlrpt -mrp $TOPNAME.mrp $TOPNAME|; + execute($c); + + $fh = new FileHandle("<$TOPNAME"."_mrp.html"); @a = <$fh>; $fh -> close; - my $fileSize = @a; - my $isParError = 0; - - open (DEBUG, '>par.log'); - for (my $i=0; $i<$fileSize; ) + foreach (@a) { - my @line = split(' ', $a[$i]); - if (@line && ($line[0] =~ /WARNING/)) + if(/FC_|HitInvert|ff_en_/) { - my $warning = $a[$i]; - chomp $warning; - my $k = 1; - my @nextLine = split(' ', $a[$i+$k]); - if(!@nextLine) - { - $k+=10; - @nextLine = split(' ', $a[$i+$k]); - } - while (!($nextLine[0] =~ /WARNING/)) - { - my $b = $a[$i+$k]; - chomp $b; - $b =~ s/^\s+//; - $warning = join (' ', $warning, $b); - $k++; - @nextLine = split(' ', $a[$i+$k]); - if(!@nextLine) - { - $k+=10; - @nextLine = split(' ', $a[$i+$k]); - } - if ($k>20) - { - last; - } - } - #open my $keywords, '<', '../keywords.txt' or die "Can't open keywords: $!"; - if ($warning =~ /FC_|HitInvert|ff_en_/) - { - print DEBUG $warning."\n\n"; - $isParError = 1; - } + print "\n\n"; + print "#################################################\n"; + print "# !!!Possible Placement Errors!!! #\n"; + print "#################################################\n\n"; + + my $c="egrep \"WARNING|FC_|HitInvert|ff_en_\" par.log"; + system($c); + last; } - $i++; - } - close (DEBUG); - - if ($isParError) - { - print "\n\n"; - print "#################################################\n"; - print "# !!!Possible Placement Errors!!! #\n"; - print "#################################################\n\n"; - - my $c="egrep \"FC_|HitInvert|ff_en_\" par.log"; - system($c); } } @@ -281,7 +241,7 @@ if($par==1 || $all==1){ } -if($timing==1 || $all==1){ +if($timing==1){ # IOR IO Timing Report $c=qq|iotiming -s "$TOPNAME.ncd" "$TOPNAME.prf"|; execute($c); diff --git a/wasa/compile_periph_gsi.pl b/wasa/compile_periph_gsi.pl index 098ea33..634a660 100755 --- a/wasa/compile_periph_gsi.pl +++ b/wasa/compile_periph_gsi.pl @@ -168,69 +168,28 @@ if($map==1 || $all==1){ $c=qq|map -retime -split_node -a $FAMILYNAME -p $DEVICENAME -t $PACKAGE -s $SPEEDGRADE "$TOPNAME.ngd" -pr "$TOPNAME.prf" -o "$tpmap.ncd" -mp "$TOPNAME.mrp" "$TOPNAME.lpf"|; execute($c); - $fh = new FileHandle("$TOPNAME.mrp"); + $c=qq|htmlrpt -mrp $TOPNAME.mrp $TOPNAME|; + execute($c); + + $fh = new FileHandle("<$TOPNAME"."_mrp.html"); @a = <$fh>; $fh -> close; - my $fileSize = @a; - my $isParError = 0; - - open (DEBUG, '>par.log'); - for (my $i=0; $i<$fileSize; ) + foreach (@a) { - my @line = split(' ', $a[$i]); - if (@line && ($line[0] =~ /WARNING/)) + if(/FC_|HitInvert|ff_en_/) { - my $warning = $a[$i]; - chomp $warning; - my $k = 1; - my @nextLine = split(' ', $a[$i+$k]); - if(!@nextLine) - { - $k+=10; - @nextLine = split(' ', $a[$i+$k]); - } - while (!($nextLine[0] =~ /WARNING/)) - { - my $b = $a[$i+$k]; - chomp $b; - $b =~ s/^\s+//; - $warning = join (' ', $warning, $b); - $k++; - @nextLine = split(' ', $a[$i+$k]); - if(!@nextLine) - { - $k+=10; - @nextLine = split(' ', $a[$i+$k]); - } - if ($k>20) - { - last; - } - } - #open my $keywords, '<', '../keywords.txt' or die "Can't open keywords: $!"; - if ($warning =~ /FC_|HitInvert|ff_en_/) - { - print DEBUG $warning."\n\n"; - $isParError = 1; - } + print "\n\n"; + print "#################################################\n"; + print "# !!!Possible Placement Errors!!! #\n"; + print "#################################################\n\n"; + + my $c="egrep \"WARNING|FC_|HitInvert|ff_en_\" par.log"; + system($c); + last; } - $i++; - } - close (DEBUG); - - if ($isParError) - { - print "\n\n"; - print "#################################################\n"; - print "# !!!Possible Placement Errors!!! #\n"; - print "#################################################\n\n"; - - my $c="egrep \"FC_|HitInvert|ff_en_\" par.log"; - system($c); } } - if($par==1 || $all==1){ system("rm $TOPNAME.ncd"); #$c=qq|mpartrce -p "../$TOPNAME.p2t" -log "$TOPNAME.log" -o "$TOPNAME.rpt" -pr "$TOPNAME.prf" -tf "$TOPNAME.pt" "|.$TOPNAME.qq|_map.ncd" "$TOPNAME.ncd"|; @@ -281,7 +240,7 @@ if($par==1 || $all==1){ } -if($timing==1 || $all==1){ +if($timing==1){ # IOR IO Timing Report $c=qq|iotiming -s "$TOPNAME.ncd" "$TOPNAME.prf"|; execute($c); -- 2.43.0