Class: SystemRDL::Evaluator::RegFileDefinition

Inherits:
ComponentDefinition show all
Includes:
BlockComponent, InstTypeAwareComponent
Defined in:
lib/systemrdl/evaluator/regfile.rb

Instance Attribute Summary

Attributes inherited from ComponentDefinition

#definitions, #id

Attributes included from Common

#component, #parent, #token_range

Instance Method Summary collapse

Methods inherited from ComponentDefinition

#assign_default_property, #connect, #create_instances, #evaluate, #find_default_property, #initialize, #revalidate, #upper_layers

Methods included from Common

#connect, #initialize

Constructor Details

This class inherits a constructor from SystemRDL::Evaluator::ComponentDefinition

Instance Method Details

#finalize(instance) ⇒ Object



14
15
16
17
18
# File 'lib/systemrdl/evaluator/regfile.rb', line 14

def finalize(instance)
  allocate_addresses(instance)
  check_address_operations(instance)
  check_overlapping_address_ranges(instance)
end

#layerObject



20
21
22
# File 'lib/systemrdl/evaluator/regfile.rb', line 20

def layer
  :regfile
end

#support_inst_type?(_inst_type) ⇒ Boolean

Returns:



24
25
26
# File 'lib/systemrdl/evaluator/regfile.rb', line 24

def support_inst_type?(_inst_type)
  true
end

#validate(instance) ⇒ Object



9
10
11
12
# File 'lib/systemrdl/evaluator/regfile.rb', line 9

def validate(instance)
  check_structural_component_instances(instance)
  check_alignment_property(instance)
end