| <?xml version="1.0" encoding="UTF-8"?> |
| <am:Amalthea xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:am="http://app4mc.eclipse.org/amalthea/1.2.0"> |
| <swModel> |
| <tasks xmi:id="TaskA1?type=Task" name="TaskA1" multipleTaskActivationLimit="0"/> |
| <tasks xmi:id="TaskB1?type=Task" name="TaskB1" multipleTaskActivationLimit="0"/> |
| <tasks xmi:id="TaskC1?type=Task" name="TaskC1" multipleTaskActivationLimit="0"/> |
| <tasks xmi:id="TaskD1?type=Task" name="TaskD1" multipleTaskActivationLimit="0"/> |
| <tasks xmi:id="TaskA2?type=Task" name="TaskA2" multipleTaskActivationLimit="0"/> |
| <tasks xmi:id="TaskB2?type=Task" name="TaskB2" multipleTaskActivationLimit="0"/> |
| <tasks xmi:id="TaskC2?type=Task" name="TaskC2" multipleTaskActivationLimit="0"/> |
| <tasks xmi:id="TaskD2?type=Task" name="TaskD2" multipleTaskActivationLimit="0"/> |
| </swModel> |
| <hwModel> |
| <definitions xsi:type="am:ProcessingUnitDefinition" xmi:id="Core_Definition?type=ProcessingUnitDefinition" name="Core_Definition" puType="CPU"/> |
| <structures xmi:id="System?type=HwStructure" name="System" structureType="System"> |
| <structures xmi:id="ECU?type=HwStructure" name="ECU" structureType="ECU"> |
| <modules xsi:type="am:ProcessingUnit" xmi:id="CoreA?type=ProcessingUnit" name="CoreA" frequencyDomain="Main_Freq_Domain?type=FrequencyDomain" definition="Core_Definition?type=ProcessingUnitDefinition"/> |
| <modules xsi:type="am:ProcessingUnit" xmi:id="CoreB?type=ProcessingUnit" name="CoreB" frequencyDomain="Main_Freq_Domain?type=FrequencyDomain" definition="Core_Definition?type=ProcessingUnitDefinition"/> |
| </structures> |
| </structures> |
| <domains xsi:type="am:FrequencyDomain" xmi:id="Main_Freq_Domain?type=FrequencyDomain" name="Main_Freq_Domain" clockGating="false"> |
| <defaultValue value="200.0" unit="MHz"/> |
| </domains> |
| </hwModel> |
| <osModel> |
| <operatingSystems name=""> |
| <taskSchedulers xmi:id="Priority+Based+Round+Robin?type=TaskScheduler" name="Priority Based Round Robin"> |
| <schedulingAlgorithm xsi:type="am:PriorityBasedRoundRobin"/> |
| </taskSchedulers> |
| <taskSchedulers xmi:id="OSEKA?type=TaskScheduler" name="OSEKA"> |
| <schedulingAlgorithm xsi:type="am:OSEK"/> |
| <parentAssociation parent="Priority+Based+Round+Robin?type=TaskScheduler"> |
| <schedulingParameters priority="20"/> |
| </parentAssociation> |
| </taskSchedulers> |
| <taskSchedulers xmi:id="OSEKB?type=TaskScheduler" name="OSEKB"> |
| <schedulingAlgorithm xsi:type="am:OSEK"/> |
| <parentAssociation parent="Priority+Based+Round+Robin?type=TaskScheduler"> |
| <schedulingParameters priority="15"/> |
| </parentAssociation> |
| </taskSchedulers> |
| <taskSchedulers xmi:id="OSEKC?type=TaskScheduler" name="OSEKC"> |
| <schedulingAlgorithm xsi:type="am:OSEK"/> |
| <parentAssociation parent="Priority+Based+Round+Robin?type=TaskScheduler"> |
| <schedulingParameters priority="5"/> |
| </parentAssociation> |
| </taskSchedulers> |
| <taskSchedulers xmi:id="OSEKD?type=TaskScheduler" name="OSEKD"> |
| <schedulingAlgorithm xsi:type="am:OSEK"/> |
| <parentAssociation parent="Priority+Based+Round+Robin?type=TaskScheduler"> |
| <schedulingParameters priority="10"/> |
| </parentAssociation> |
| </taskSchedulers> |
| </operatingSystems> |
| </osModel> |
| <mappingModel> |
| <schedulerAllocation scheduler="Priority+Based+Round+Robin?type=TaskScheduler" responsibility="CoreA?type=ProcessingUnit CoreB?type=ProcessingUnit" executingPU="CoreA?type=ProcessingUnit"/> |
| <schedulerAllocation scheduler="OSEKA?type=TaskScheduler" responsibility="CoreA?type=ProcessingUnit" executingPU="CoreA?type=ProcessingUnit"/> |
| <schedulerAllocation scheduler="OSEKB?type=TaskScheduler" responsibility="CoreA?type=ProcessingUnit" executingPU="CoreA?type=ProcessingUnit"/> |
| <schedulerAllocation scheduler="OSEKC?type=TaskScheduler" responsibility="CoreB?type=ProcessingUnit" executingPU="CoreB?type=ProcessingUnit"/> |
| <schedulerAllocation scheduler="OSEKD?type=TaskScheduler" responsibility="CoreB?type=ProcessingUnit" executingPU="CoreB?type=ProcessingUnit"/> |
| <taskAllocation task="TaskA1?type=Task" scheduler="OSEKA?type=TaskScheduler"> |
| <schedulingParameters priority="5"/> |
| </taskAllocation> |
| <taskAllocation task="TaskA2?type=Task" scheduler="OSEKA?type=TaskScheduler"> |
| <schedulingParameters priority="15"/> |
| </taskAllocation> |
| <taskAllocation task="TaskB1?type=Task" scheduler="OSEKB?type=TaskScheduler"> |
| <schedulingParameters priority="10"/> |
| </taskAllocation> |
| <taskAllocation task="TaskB2?type=Task" scheduler="OSEKB?type=TaskScheduler"> |
| <schedulingParameters priority="50"/> |
| </taskAllocation> |
| <taskAllocation task="TaskC1?type=Task" scheduler="OSEKC?type=TaskScheduler"> |
| <schedulingParameters priority="40"/> |
| </taskAllocation> |
| <taskAllocation task="TaskC2?type=Task" scheduler="OSEKC?type=TaskScheduler"> |
| <schedulingParameters priority="20"/> |
| </taskAllocation> |
| <taskAllocation task="TaskD1?type=Task" scheduler="OSEKD?type=TaskScheduler"> |
| <schedulingParameters priority="25"/> |
| </taskAllocation> |
| <taskAllocation task="TaskD2?type=Task" scheduler="OSEKD?type=TaskScheduler"> |
| <schedulingParameters priority="55"/> |
| </taskAllocation> |
| </mappingModel> |
| </am:Amalthea> |