微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > SOC时序分析中的跳变点

SOC时序分析中的跳变点

时间:08-15 来源:本站整理 点击:

er than the INTERCONNECT delay \n";}}}

  if ($correct_value1_IOPATH[0] == $correct_value2_IOPATH[0] && $correct_value1_IOPATH[1] == $correct_value2_IOPATH[1] && $correct_value1_IOPATH[2] == $correct_value2_IOPATH[2]) { # Print these values only if they are differnet from the already printed values for the IOPATH

  } else {

  print file1 " ($correct_value2_IOPATH[0]:$correct_value2_IOPATH[1]:$correct_value2_IOPATH[2])";

  }

  }

  else{print file1 "$value_IOPATH[1] ";} # This is to print empty brackets in case rise and fall triplets are empty

  for ($m=2;$m<=$value_IOPATH_width;$m++) {

  if (exists $value_IOPATH[$m]) {

  $value_IOPATH[$m] =~ s/\)+/\)/; # To account for the brackets

  print file1 " $value_IOPATH[$m]";

  }

  }

  if ($array4[0] =~ "COND" ) { ## Extra bracket for COND statements

  print file1 "))\n";

  } else {print file1 ")\n";}

  }

  }

  else

  {print file1 "$line1";} #######DUMPING OUT OF SDF IN FILE1######################

  }

  else

  {print file1 "$line1";}

  }

  close(file1);

  close(fileA);

  open(FILEA,$ARGV[0]) || die ("ERROR:: SDF file $ARGV[0] cannot be opened for reading\n");

  print "\n\n#############REPORTING INSTANCES WHOSE DEFINITION IS NOT THERE IN THE SDF#############\n";

  while()

  {

  $line2 = $_;

  $line2 =~ s/^\s+//g ;

  if ( $line2 =~ "INTERCONNECT.*-[0-9]")

  { @array4 = split(/\s+/,$line2);

  $instance_name3 = $array4[2];

  $instance_name3 =~ s/\/[^(.*\/)][A-Z0-9a-z_\[0-9\]+]*$//g;

  if(exists $instance_definition{$instance_name3})

  {}

  else

  {print "$line2";}

  }

  }

  close(fileA);

  print "\n";

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top