OpenCores
URL https://opencores.org/ocsvn/an-fpga-implementation-of-low-latency-noc-based-mpsoc/an-fpga-implementation-of-low-latency-noc-based-mpsoc/trunk

Subversion Repositories an-fpga-implementation-of-low-latency-noc-based-mpsoc

[/] [an-fpga-implementation-of-low-latency-noc-based-mpsoc/] [trunk/] [mpsoc/] [perl_gui/] [lib/] [perl/] [simulator.pl] - Diff between revs 48 and 53

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 48 Rev 53
Line 946... Line 946...
                $discrete_sv="\t localparam DISCRETE_PCK_SIZ_NUM=$i;
                $discrete_sv="\t localparam DISCRETE_PCK_SIZ_NUM=$i;
\t rnd_discrete_t rnd_discrete [DISCRETE_PCK_SIZ_NUM-1: 0];\n".$discrete_sv;
\t rnd_discrete_t rnd_discrete [DISCRETE_PCK_SIZ_NUM-1: 0];\n".$discrete_sv;
        }
        }
 
 
        my $modelsim_bin=  $ENV{MODELSIM_BIN};
        my $modelsim_bin=  $ENV{MODELSIM_BIN};
                        if(! defined $modelsim_bin){
        my $vsim = (! defined $modelsim_bin)? "vsim" : "$modelsim_bin/vsim";
                                add_colored_info($info, "Error: Path to modelsim bin directory is not defined in ProNoC setting\n",'red');
 
                                show_setting(0);
 
                                return;
 
                        }
 
 
 
        my $cpu_num = $simulate->object_get_attribute('compile', 'cpu_num');
        my $cpu_num = $simulate->object_get_attribute('compile', 'cpu_num');
        $cpu_num = 1 if (!defined $cpu_num);
        $cpu_num = 1 if (!defined $cpu_num);
 
 
        my $thread_num = $simulate->object_get_attribute('compile', 'thread_num');
        my $thread_num = $simulate->object_get_attribute('compile', 'thread_num');
Line 1028... Line 1027...
quit
quit
";
";
 
 
                        save_file ("$out/model.tcl",$tcl);
                        save_file ("$out/model.tcl",$tcl);
 
 
                        my $cmd="cd $out; rm -Rf rtl_work; $modelsim_bin/vsim -do $out/model.tcl ";
                        my $cmd="cd $out; rm -Rf rtl_work; $vsim -do $out/model.tcl ";
                        save_file ("$out/run.sh",'#!/bin/bash'."
                        save_file ("$out/run.sh",'#!/bin/bash'."
                        sed -i \"s/ INJRATIO=\[\[:digit:\]\]\\+/ INJRATIO=\$1/\" $out/sim_param.sv
                        sed -i \"s/ INJRATIO=\[\[:digit:\]\]\\+/ INJRATIO=\$1/\" $out/sim_param.sv
                        ".$cmd);
                        ".$cmd);
                        add_info($info, "model.tcl is created in $out\n");
                        add_info($info, "model.tcl is created in $out\n");
                }#for           
                }#for           
Line 1052... Line 1051...
                my $cmd;
                my $cmd;
 
 
                if ($simulator eq 'Modelsim'){
                if ($simulator eq 'Modelsim'){
                        add_info($info, "Run $bin with  injection ratio of $ratio_in \% \n");
                        add_info($info, "Run $bin with  injection ratio of $ratio_in \% \n");
                        my $out="$out_path/modelsim/work$c";
                        my $out="$out_path/modelsim/work$c";
                        $cmd="  xterm -e bash -c '      cd $out; sed -i \"s/ INJRATIO=\[\[:digit:\]\]\\+/ INJRATIO=$ratio_in/\" $out/sim_param.sv;  rm -Rf rtl_work; $modelsim_bin/vsim -c -do $out/model.tcl -l $out_path/sim_out$ratio_in;' &\n       ";
                        $cmd="  xterm -e bash -c '      cd $out; sed -i \"s/ INJRATIO=\[\[:digit:\]\]\\+/ INJRATIO=$ratio_in/\" $out/sim_param.sv;  rm -Rf rtl_work; $vsim -c -do $out/model.tcl -l $out_path/sim_out$ratio_in;' &\n    ";
 
 
                }elsif ($simulator eq 'Modelsim gui'){
                }elsif ($simulator eq 'Modelsim gui'){
                        add_info($info, "Run $bin with  injection ratio of $ratio_in \% \n");
                        add_info($info, "Run $bin with  injection ratio of $ratio_in \% \n");
                        my $out="$out_path/modelsim/work$c";
                        my $out="$out_path/modelsim/work$c";
                        $cmd="cd $out; sed -i \"s/ INJRATIO=\[\[:digit:\]\]\\+/ INJRATIO=$ratio_in/\" $out/sim_param.sv;  rm -Rf rtl_work; $modelsim_bin/vsim  -do $out/model.tcl -l $out_path/sim_out$ratio_in;        ";
                        $cmd="cd $out; sed -i \"s/ INJRATIO=\[\[:digit:\]\]\\+/ INJRATIO=$ratio_in/\" $out/sim_param.sv;  rm -Rf rtl_work; $vsim  -do $out/model.tcl -l $out_path/sim_out$ratio_in;     ";
 
 
                }else{
                }else{
                        add_info($info, "Run $bin with  injection ratio of $ratio_in \% \n");
                        add_info($info, "Run $bin with  injection ratio of $ratio_in \% \n");
                        $cmd="$bin -t \"$patern\"   $pck_size -T $thread_num  -n  $PCK_NUM_LIMIT  -c    $SIM_CLOCK_LIMIT   -i $ratio_in $classes  $hotspot $custom > $out_path/sim_out$ratio_in & ";
                        $cmd="$bin -t \"$patern\"   $pck_size -T $thread_num  -n  $PCK_NUM_LIMIT  -c    $SIM_CLOCK_LIMIT   -i $ratio_in $classes  $hotspot $custom > $out_path/sim_out$ratio_in & ";
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.