OpenCores
URL https://opencores.org/ocsvn/soc_maker/soc_maker/trunk

Subversion Repositories soc_maker

[/] [soc_maker/] [trunk/] [lib/] [soc_maker/] [component.rb] - Diff between revs 6 and 7

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

Rev 6 Rev 7
Line 187... Line 187...
      serr_if( ifc == nil,
      serr_if( ifc == nil,
            'Interface not defined',
            'Interface not defined',
            instance:   @name+":"+ifc_name.to_s )
            instance:   @name+":"+ifc_name.to_s )
 
 
      serr_if( !ifc.is_a?( SOCMaker::IfcDef ),
      serr_if( !ifc.is_a?( SOCMaker::IfcDef ),
            'Interface definition is not SOCMaker::IfcDef (use SOCM_IFC)',
            'Interface definition is not SOCMaker::IfcDef (please use SOCM_IFC)',
            instance: @name+":"+ifc_name.to_s )
            instance: @name+":"+ifc_name.to_s )
    end
    end
 
 
    # check instance parameters
    # check instance parameters
    @inst_parameters.each do |name, param |
    @inst_parameters.each do |name, param |
      serr_if( param == nil,
      serr_if( param == nil,
            'Instance parameter not defined',
            'Instance parameter not defined',
            instance:   @name+":"+name.to_s )
            instance:   @name+":"+name.to_s )
 
 
      serr_if( !param.is_a?( SOCMaker::Parameter ),
      serr_if( !param.is_a?( SOCMaker::Parameter ),
            'Instance parameter not SOCMaker::Parameter (use SOCM_PARAM)',
            'Instance parameter not SOCMaker::Parameter (please use SOCM_PARAM)',
            instance: @name+":"+name.to_s )
            instance: @name+":"+name.to_s )
    end
    end
 
 
    # check instance parameters
    # check instance parameters
    @static_parameters.each do |name, sparam |
    @static_parameters.each do |name, sparam |
      serr_if( sparam == nil,
      serr_if( sparam == nil,
            'Static parameter not defined',
            'Static parameter not defined',
            instance:   @name+":"+name.to_s )
            instance:   @name+":"+name.to_s )
 
 
      serr_if( !sparam.is_a?( SOCMaker::SParameter ),
      serr_if( !sparam.is_a?( SOCMaker::SParameter ),
            'Static parameter not SOCMaker::Parameter (use SOCM_SPARAM)',
            'Static parameter not SOCMaker::Parameter (please use SOCM_SPARAM)',
            instance: @name+":"+name.to_s )
            instance: @name+":"+name.to_s )
    end
    end
 
 
 
  end
 
 
 
 
 
  def consistency_check
 
 
  end
  end
 
 
 
 
  def get_files
  def get_files
Line 319... Line 321...
 
 
    end
    end
 
 
  end
  end
 
 
  def implements_port?( ifc_name, port_spec_name )
 
    tmp = @interfaces[ ifc_name.to_sym ].
 
        ports.select{ |key,hash| hash.defn == port_spec_name.to_s }.keys
 
 
 
    perr_if( tmp.size > 1,
 
      "The port #{port_spec_name} of interface #{ifc_name} is implemented
 
      multiple times" )
 
 
 
    return tmp.size == 1
 
  end
#  def implements_port?( ifc_name, port_spec_name )
 
#    tmp = @interfaces[ ifc_name.to_sym ].
 
#        ports.select{ |key,hash| hash.defn == port_spec_name.to_s }.keys
 
 
 
#    perr_if( tmp.size > 1,
 
#      "The port #{port_spec_name} of interface #{ifc_name} is implemented
 
#      multiple times" )
 
 
 
#    return tmp.size == 1
 
#  end
 
 
  def param_ok?( param_name, param_value )
  def param_ok?( param_name, param_value )
    param = inst_parameters[ param_name.to_sym ]
    param = inst_parameters[ param_name.to_sym ]
    param = static_parameters[ param_name.to_sym ] if param == nil
    param = static_parameters[ param_name.to_sym ] if param == nil
    return false if param == nil
    return false if param == nil
  end
  end
 
 
 
 
 
 
  def verify( is_soc = false )
 
 
 
    # check interfaces
 
    @interfaces.each do |ifc_name, ifc|
 
      ifc.verify
 
    end
 
 
 
    # check instance parameters
 
    @inst_parameters.each do |name, param |
 
      param.verify
 
    end
 
 
 
    # check instance parameters
 
    @static_parameters.each do |name, sparam |
 
      sparam.verify
 
    end
 
 
 
  end
 
 
 
  def ==(o)
  def ==(o)
 
 
    tmp    = ( o.class   == self.class )
    tmp    = ( o.class   == self.class )
    return tmp if !tmp
    return tmp if !tmp
 
 

powered by: WebSVN 2.1.0

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