Class: SystemRDL::Evaluator::AddrMapDefinition
Instance Attribute Summary
#definitions, #id
Attributes included from Common
#component, #parent, #token_range
Instance Method Summary
collapse
#assign_default_property, #connect, #create_instances, #find_default_property, #initialize, #revalidate, #upper_layers
Methods included from Common
#connect, #initialize
Instance Method Details
#evaluate(instance, **optargs) ⇒ Object
9
10
11
12
13
14
15
|
# File 'lib/systemrdl/evaluator/addrmap.rb', line 9
def evaluate(instance, **optargs)
if instance.root?
create_instance(instance, @id, nil, nil, nil, **optargs)
else
super
end
end
|
#finalize(instance) ⇒ Object
25
26
27
28
|
# File 'lib/systemrdl/evaluator/addrmap.rb', line 25
def finalize(instance)
allocate_addresses(instance)
check_overlapping_regs(instance)
end
|
#layer ⇒ Object
30
31
32
|
# File 'lib/systemrdl/evaluator/addrmap.rb', line 30
def layer
:addrmap
end
|
#validate(instance) ⇒ Object
17
18
19
20
21
22
23
|
# File 'lib/systemrdl/evaluator/addrmap.rb', line 17
def validate(instance)
check_structural_component_instances(instance)
check_alignment(instance)
check_endianness_exclusivity(instance)
check_rsvdset_exclusivity(instance)
check_bit_ordering_exclusivity(instance)
end
|