# ========== Copyright Header Begin ==========================================
# OpenSPARC T2 Processor File: rsyn,1.0
# Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES.
# The above named program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public
# License version 2 as published by the Free Software Foundation.
# The above named program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
# You should have received a copy of the GNU General Public
# License along with this work; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
# ========== Copyright Header End ============================================
#######################################################################
#######################################################################
$SIG{__DIE__} = \&sighandler ;
#######################################################################
#######################################################################
$blk_list = $ENV{DV_ROOT};
$blk_list .= "/design/sys/synopsys/block.list";
$run_scr = $ENV{DV_ROOT};
$run_scr .= "/design/sys/synopsys/script/run.scr";
#######################################################################
# Check command line options
#######################################################################
} elsif (($argv =~ /-h/) or ($argv =~ /-help/))
} elsif ($argv =~ /-syn_q_command/)
$syn_q =~ s/-syn_q_command=(.*)/$1/ ;
open (BLK_IN, "< $blk_list") or die ("DIE. could not open $blk_list");
push @block_list, $line ;
print "$prg: Running synthesis for all $count modules\n";
my @all_blocks = <BLK_IN>;
foreach my $block (@blocks)
my (@search) = grep (/$block/, @all_blocks);
foreach my $line (@search)
push @block_list, $line ;
print "$prg: Running synthesis for $count modules\n";
print "$prg: No matching modules found.\n";
foreach my $block (@block_list) {
print "$prg: Running synthesis for $block\n";
$blk_dir = $ENV{DV_ROOT};
$blk_dir .= "/design/sys/iop/$block/synopsys";
die ("DIE. Could not remove dc_shell.log file.") if ($?);
$cmd .= " $ENV{DV_ROOT}/tools/bin/syn_command";
#######################################################################
print "\n$prg : Run Synthesis for OpenSPARC T2\n\n";
print " -all \n\tto run synthesis for all blocks\n";
print " -h or -help\n\tto print usage instruction\n";
print " -syn_q_command='Your job Queue command'\n\tto specify submit command for job queue\n";
print " block_list :\n\tspecify list of blocks to synthesize\n\n";
print " $prg -syn_q_cmd=drmsubmit db0 exu sio\n\n";
#######################################################################