COMPENTITY - A Higher Level Architecture Entity

Syntax

COMPENTITY entity_type_name (
DESCENDANTS ( descendant, ... )
DESCRIPTION ("description")
PARAMS ( reference_parameter, ... )
PORTS ( port, ... )
)

Synopsis

The COMPENTITY declaration enables the creation of higher level architecture components. This is used to group entities and/or other higher level entities together along with their interconnections into one entity, allowing the operation of the lower level components to be abstracted out.

Example

COMPENTITY Computer (
DESCENDANTS ( CHILD ( Mem, main_mem )
CHILD ( CPU, processor )
LINK ( CPU.processor[to_mem]->Mem.main_mem[from_proc], 3)
)
DESCRIPTION ( "A basic computer" )
PARAMS ( RARRAY ( Memory, cache_contents )
RINT ( access_time, 2 )
RENUM ( Associativity, cache_assoc, 0 )
)
PORTS ( PORT ( to_cpu, LinkData, SOURCE )
PORT ( from_cpu, LinkData, DESTINATION )
PORT ( to_main_mem, LinkData, SOURCE )
PORT ( from_main_mem, LinkData, DESTINATION )
)
)