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/] [mpsoc.pm] - Diff between revs 34 and 48

Show entire file | Details | Blame | View Log

Rev 34 Rev 48
Line 1... Line 1...
#! /usr/bin/perl -w
#! /usr/bin/perl -w
use strict;
use strict;
 
use FindBin;
 
use lib $FindBin::Bin;
 
 
package mpsoc;
package mpsoc;
 
 
use ip_gen;
use ip_gen;
 
 
 
 
#use Clone 'clone';
#use Clone 'clone';
 
 
 
sub uniq {
 
  my %seen;
 
  return grep { !$seen{$_}++ } @_;
 
}
 
 
 
 
sub mpsoc_new {
sub mpsoc_new {
    # be backwards compatible with non-OO call
    # be backwards compatible with non-OO call
    my $class = ("ARRAY" eq ref $_[0]) ? "mpsoc" : shift;
    my $class = ("ARRAY" eq ref $_[0]) ? "mpsoc" : shift;
Line 240... Line 245...
}
}
 
 
 
 
sub object_add_attribute_order{
sub object_add_attribute_order{
        my ($self,$attribute,@param)=@_;
        my ($self,$attribute,@param)=@_;
        $self->{'parameters_order'}{$attribute}=[] if (!defined $self->{parameters_order}{$attribute});
        my $r = $self->{'parameters_order'}{$attribute};
        foreach my $p (@param){
        my @a;
                push (@{$self->{parameters_order}{$attribute}},$p);
        @a = @{$r} if(defined $r);
 
        push (@a,@param);
        }
        @a=uniq(@a);
 
        $self->{'parameters_order'}{$attribute} =\@a;
}
}
 
 
sub object_get_attribute_order{
sub object_get_attribute_order{
        my ($self,$attribute)=@_;
        my ($self,$attribute)=@_;
        return @{$self->{parameters_order}{$attribute}};
        return @{$self->{parameters_order}{$attribute}};
}
}
 
 
Line 263... Line 270...
 
 
        }
        }
 
 
}
}
 
 
 
 
 
 
 
 
1
1
 
 
 
 
 No newline at end of file
 No newline at end of file

powered by: WebSVN 2.1.0

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