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

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /an-fpga-implementation-of-low-latency-noc-based-mpsoc/trunk/mpsoc/perl_gui/lib/perl
    from Rev 29 to Rev 30
    Reverse comparison

Rev 29 → Rev 30

/emulate_ram_gen.pl
5,7 → 5,7
require "widget.pl";
 
 
use constant SIM_RAM_GEN => 1;
use constant SIM_RAM_GEN => 0;
 
use constant JTAG_RAM_INDEX => 128;
use constant JTAG_DONE_RESET_INDEX => 127;
/mpsoc_gen.pl
181,7 → 181,7
my %param_value;
my $top=$mpsoc->mpsoc_get_soc($soc_name);
my @insts=$top->top_get_all_instances();
my @exceptions=('ni0');
my @exceptions=get_NI_instance_list($top);
@insts=get_diff_array(\@insts,\@exceptions);
foreach my $inst (@insts){
my @params=$top->top_get_parameter_list($inst);
221,8 → 221,8
my @instance_list=$top->top_get_all_instances();
#check if the soc has ni port
foreach my $instanc(@instance_list){
my $module=$top->top_get_def_of_instance($instanc,'module');
if($module eq 'ni')
my $category=$top->top_get_def_of_instance($instanc,'category');
if($category eq 'NoC')
{
my $name=$soc->object_get_attribute('soc_name');
$mpsoc->mpsoc_add_soc($name,$top);
251,6 → 251,20
 
 
}
 
 
sub get_NI_instance_list {
my $top=shift;
my @nis;
my @instance_list=$top->top_get_all_instances();
#check if the soc has ni port
foreach my $instanc(@instance_list){
my $category=$top->top_get_def_of_instance($instanc,'category');
push(@nis,$instanc) if($category eq 'NoC') ;
}
return @nis;
}
 
####################
# get_conflict_decision
###########################
419,7 → 433,7
my @insts=$top->top_get_all_instances();
my @exceptions=('ni0');
my @exceptions=get_NI_instance_list($top);
@insts=get_diff_array(\@insts,\@exceptions);
foreach my $inst (@insts){
my @params=$top->top_get_parameter_list($inst);
964,7 → 978,7
$type="Check-box";
$content=$v;
$info="Select the permitted VCs which the message class $i can be sent via them.";
$row=noc_param_widget ($mpsoc,$label,$param, $default,$type,$content,$info, $table,$row,$adv_set,'noc_param',undef);
$row=noc_param_widget ($mpsoc,$label,$param, $default,$type,$content,$info, $table,$row,$adv_set,'class_param',undef);
 
 
}
993,7 → 1007,7
$type="Check-box";
$content=1;
$default="1\'b0";
$info="If ebabled it adds a pipline register at the output port of the router.";
$info="If enabeled it adds a pipline register at the output port of the router.";
$row=noc_param_widget ($mpsoc,$label,$param, $default,$type,$content,$info, $table,$row,$adv_set,'noc_param');
1177,7 → 1191,9
#update NoC param
#my %nocparam = %{$mpsoc->object_get_attribute('noc_param',undef)};
my $nocparam =$mpsoc->object_get_attribute('noc_param',undef);
$soc->soc_add_instance_param('ni0' ,$nocparam );
my $top=$mpsoc->mpsoc_get_soc($soc_name);
my @nis=get_NI_instance_list($top);
$soc->soc_add_instance_param($nis[0] ,$nocparam );
#foreach my $p ( sort keys %nocparam ) {
# print "$p = $nocparam{$p} \n";
/mpsoc_verilog_gen.pl
179,6 → 179,11
my $class=$mpsoc->object_get_attribute('noc_param',"C");
my $str;
if( $class > 1){
for (my $i=0; $i<=$class-1; $i++){
my $n="Cn_$i";
my $val=$mpsoc->object_get_attribute('class_param',$n);
add_text_to_string (\$param_v,"\tlocalparam $n=$val;\n");
}
$str="CLASS_SETTING={";
for (my $i=$class-1; $i>=0;$i--){
$str=($i==0)? "${str}Cn_0};\n " : "${str}Cn_$i,";
438,8 → 443,9
# ni parameter
my $top=$mpsoc->mpsoc_get_soc($soc_name);
my @noc_param=$top->top_get_parameter_list('ni0');
my $inst_name=$top->top_get_def_of_instance('ni0','instance');
my @nis=get_NI_instance_list($top);
my @noc_param=$top->top_get_parameter_list($nis[0]);
my $inst_name=$top->top_get_def_of_instance($nis[0],'instance');
#other parameters
my %params=$top->top_get_default_soc_param();

powered by: WebSVN 2.1.0

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