blob: 08777fdc4fc9582ff66fc1c97568f65a3c0ec3f3 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<am:Amalthea xmlns:am="http://app4mc.eclipse.org/amalthea/2.1.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmi:version="2.0">
<commonElements />
<swModel>
<tasks name="taskA" stimuli="periodic_10us?type=PeriodicStimulus" multipleTaskActivationLimit="0">
<activityGraph>
<items xsi:type="am:RunnableCall" runnable="runnableA?type=Runnable" />
</activityGraph>
</tasks>
<tasks name="taskB" stimuli="periodic_10us?type=PeriodicStimulus" multipleTaskActivationLimit="0">
<activityGraph>
<items xsi:type="am:RunnableCall" runnable="runnableB?type=Runnable" />
</activityGraph>
</tasks>
<runnables name="runnableA" callback="false" service="false">
<activityGraph>
<items xsi:type="am:Ticks">
<default xsi:type="am:DiscreteValueConstant" value="20" />
</items>
<items xsi:type="am:RunnableCall" runnable="runnableA2?type=Runnable" />
<items xsi:type="am:ChannelSend" data="ChannelA?type=Channel" elements="1">
<transmissionPolicy chunkProcessingTicks="0" transmitRatio="1.0" />
</items>
</activityGraph>
</runnables>
<runnables name="runnableA2" callback="false" service="false">
<activityGraph>
<items xsi:type="am:Ticks">
<default xsi:type="am:DiscreteValueConstant" value="10" />
</items>
</activityGraph>
</runnables>
<runnables name="runnableB" callback="false" service="false">
<activityGraph>
<items xsi:type="am:Ticks">
<default xsi:type="am:DiscreteValueConstant" value="5" />
</items>
</activityGraph>
</runnables>
<labels name="" constant="false" bVolatile="false" />
<channels name="ChannelA" defaultElements="0" maxElements="0">
<size value="2" unit="B" />
</channels>
</swModel>
<hwModel>
<definitions xsi:type="am:ProcessingUnitDefinition" name="processingUnitDefinitionA" puType="CPU" features="featureCategoryA/hwFeatureA?type=HwFeature" />
<definitions xsi:type="am:MemoryDefinition" name="MemDef" memoryType="SRAM">
<size value="512" unit="kB" />
<accessLatency xsi:type="am:DiscreteValueConstant" value="1" />
</definitions>
<featureCategories name="featureCategoryA" description="" featureType="performance">
<features name="hwFeatureA" value="2.0" />
<features name="hwFeatureB" value="3.0" />
</featureCategories>
<structures name="ECU1" structureType="System">
<structures name="uC1" structureType="Microcontroller">
<modules xsi:type="am:ProcessingUnit" name="Core1ECU1" frequencyDomain="clock?type=FrequencyDomain" definition="processingUnitDefinitionA?type=ProcessingUnitDefinition">
<ports name="Port1" bitWidth="32" priority="0" portType="initiator" portInterface="custom" />
<accessElements name="AC_MainMem" destination="MainMemECU1?type=Memory">
<readLatency xsi:type="am:DiscreteValueConstant" value="5" />
<writeLatency xsi:type="am:DiscreteValueConstant" value="7" />
</accessElements>
</modules>
<modules xsi:type="am:Memory" name="MainMemECU1" frequencyDomain="clock?type=FrequencyDomain" definition="MemDef?type=MemoryDefinition">
<ports name="MemPort" bitWidth="32" priority="0" portType="responder" portInterface="custom" />
</modules>
</structures>
</structures>
<domains xsi:type="am:FrequencyDomain" name="clock" clockGating="false">
<defaultValue value="200.0" unit="MHz" />
</domains>
</hwModel>
<osModel>
<operatingSystems name="OS1">
<taskSchedulers name="scheduler1" />
</operatingSystems>
</osModel>
<stimuliModel>
<stimuli xsi:type="am:EventStimulus" name="" triggeringEvents="no-name?type=ChannelEvent" />
<stimuli xsi:type="am:PeriodicStimulus" name="periodic_10us">
<recurrence value="10" unit="us" />
</stimuli>
</stimuliModel>
<eventModel>
<events xsi:type="am:ChannelEvent" name="" eventType="send" />
</eventModel>
<mappingModel>
<schedulerAllocation scheduler="scheduler1?type=TaskScheduler" responsibility="Core1ECU1?type=ProcessingUnit" executingPU="Core1ECU1?type=ProcessingUnit" />
<taskAllocation task="taskA?type=Task" scheduler="scheduler1?type=TaskScheduler" affinity="Core1ECU1?type=ProcessingUnit" />
<taskAllocation task="taskB?type=Task" scheduler="scheduler1?type=TaskScheduler" affinity="Core1ECU1?type=ProcessingUnit" />
<memoryMapping abstractElement="ChannelA?type=Channel" memory="MainMemECU1?type=Memory" memoryPositionAddress="0x45" />
</mappingModel>
</am:Amalthea>