Commit 6dbba410 authored by Maxime Perrotin's avatar Maxime Perrotin

first commit

parents
---------------------------------------------------
-- AADL2.1
-- TASTE type concurrencyview
-- (c)Ellidiss Technologies
-- generated code: do not edit
---------------------------------------------------
PROPERTY SET AI IS
Root_System : AADLSTRING
APPLIES TO(SYSTEM IMPLEMENTATION);
Disabled_Processing_Tools : LIST OF AADLSTRING
APPLIES TO(SYSTEM IMPLEMENTATION);
END AI;
PACKAGE concurrencyview::CV
PUBLIC
WITH AI;
WITH ocarina_processors_x86;
WITH ocarina_processors_x86;
WITH deploymentview::DV::Node1;
WITH deploymentview::DV::Node2;
SYSTEM deployment
END deployment;
SYSTEM IMPLEMENTATION deployment.final
SUBCOMPONENTS
Node1_x86_linux : PROCESSOR ocarina_processors_x86::x86.linux;
Node2_x86_linux : PROCESSOR ocarina_processors_x86::x86.linux;
Node1_App1 : PROCESS Node1_App1.final;
Node2_App2 : PROCESS Node2_App2.final;
PROPERTIES
AI::Root_System => "generated";
Actual_Processor_Binding => (REFERENCE(Node1_x86_linux)) APPLIES TO Node1_App1;
Actual_Processor_Binding => (REFERENCE(Node2_x86_linux)) APPLIES TO Node2_App2;
Scheduling_Protocol => (POSIX_1003_Highest_Priority_First_Protocol) APPLIES TO Node1_x86_linux;
Scheduling_Protocol => (POSIX_1003_Highest_Priority_First_Protocol) APPLIES TO Node2_x86_linux;
END deployment.final;
PROCESS Node1_App1
EXTENDS deploymentview::DV::Node1::App1
END Node1_App1;
PROCESS IMPLEMENTATION Node1_App1.final
SUBCOMPONENTS
Node1_IV_S1_PI_clock : THREAD Node1_IV_S1_PI_clock.final;
Node1_IV_S2_PI_clock : THREAD Node1_IV_S2_PI_clock.final;
Node1_IV_Preproc_PI_clock : THREAD Node1_IV_Preproc_PI_clock.final;
Node1_IV_Preproc_PI_getVal : THREAD Node1_IV_Preproc_PI_getVal.final;
Node1_IV_S1_PI_getVal1 : SUBPROGRAM Node1_IV_S1_PI_getVal1.final;
Node1_IV_S2_PI_getVal2 : SUBPROGRAM Node1_IV_S2_PI_getVal2.final;
END Node1_App1.final;
PROCESS Node2_App2
EXTENDS deploymentview::DV::Node2::App2
END Node2_App2;
PROCESS IMPLEMENTATION Node2_App2.final
SUBCOMPONENTS
Node2_IV_Postproc_PI_clock : THREAD Node2_IV_Postproc_PI_clock.final;
Node2_IV_A1_PI_clock : THREAD Node2_IV_A1_PI_clock.final;
Node2_IV_A2_PI_clock : THREAD Node2_IV_A2_PI_clock.final;
Node2_IV_A1_PI_setVal1 : SUBPROGRAM Node2_IV_A1_PI_setVal1.final;
Node2_IV_A2_PI_setVal2 : SUBPROGRAM Node2_IV_A2_PI_setVal2.final;
END Node2_App2.final;
THREAD Node1_IV_S1_PI_clock
END Node1_IV_S1_PI_clock;
THREAD IMPLEMENTATION Node1_IV_S1_PI_clock.final
PROPERTIES
Dispatch_Protocol => Periodic;
Period => 10ms;
Deadline => 10ms;
Compute_Execution_Time => 2ms..2ms;
ANNEX behavior_specification {**
STATES
s : INITIAL COMPLETE FINAL STATE;
TRANSITIONS
t : s -[ ]-> s {
COMPUTATION ( 1ms )
};
**};
END Node1_IV_S1_PI_clock.final;
THREAD Node1_IV_S2_PI_clock
END Node1_IV_S2_PI_clock;
THREAD IMPLEMENTATION Node1_IV_S2_PI_clock.final
PROPERTIES
Dispatch_Protocol => Periodic;
Period => 10ms;
Deadline => 10ms;
Compute_Execution_Time => 2ms..2ms;
ANNEX behavior_specification {**
STATES
s : INITIAL COMPLETE FINAL STATE;
TRANSITIONS
t : s -[ ]-> s {
COMPUTATION ( 1ms )
};
**};
END Node1_IV_S2_PI_clock.final;
THREAD Node1_IV_Preproc_PI_clock
END Node1_IV_Preproc_PI_clock;
THREAD IMPLEMENTATION Node1_IV_Preproc_PI_clock.final
PROPERTIES
Dispatch_Protocol => Periodic;
Period => 10ms;
Deadline => 10ms;
Compute_Execution_Time => 2ms..2ms;
ANNEX behavior_specification {**
STATES
s : INITIAL COMPLETE FINAL STATE;
TRANSITIONS
t : s -[ ]-> s {
COMPUTATION ( 2ms );
Node1_IV_S1_PI_getVal1 !;
Node1_IV_S2_PI_getVal2 !
};
**};
END Node1_IV_Preproc_PI_clock.final;
THREAD Node1_IV_Preproc_PI_getVal
END Node1_IV_Preproc_PI_getVal;
THREAD IMPLEMENTATION Node1_IV_Preproc_PI_getVal.final
PROPERTIES
Dispatch_Protocol => Sporadic;
Period => 10ms;
Deadline => 0ms;
Compute_Execution_Time => 1ms..1ms;
ANNEX behavior_specification {**
STATES
s : INITIAL COMPLETE FINAL STATE;
TRANSITIONS
t : s -[ ]-> s {
COMPUTATION ( 2ms );
Node1_IV_S1_PI_getVal1 !;
Node1_IV_S2_PI_getVal2 !
};
**};
END Node1_IV_Preproc_PI_getVal.final;
THREAD Node2_IV_Postproc_PI_clock
END Node2_IV_Postproc_PI_clock;
THREAD IMPLEMENTATION Node2_IV_Postproc_PI_clock.final
PROPERTIES
Dispatch_Protocol => Periodic;
Period => 20ms;
Deadline => 20ms;
Compute_Execution_Time => 5ms..5ms;
ANNEX behavior_specification {**
STATES
s : INITIAL COMPLETE FINAL STATE;
TRANSITIONS
t : s -[ ]-> s {
COMPUTATION ( 5ms );
Node2_IV_A1_PI_setVal1 !;
Node2_IV_A2_PI_setVal2 !
};
**};
END Node2_IV_Postproc_PI_clock.final;
THREAD Node2_IV_A1_PI_clock
END Node2_IV_A1_PI_clock;
THREAD IMPLEMENTATION Node2_IV_A1_PI_clock.final
PROPERTIES
Dispatch_Protocol => Periodic;
Period => 15ms;
Deadline => 15ms;
Compute_Execution_Time => 2ms..2ms;
ANNEX behavior_specification {**
STATES
s : INITIAL COMPLETE FINAL STATE;
TRANSITIONS
t : s -[ ]-> s {
COMPUTATION ( 1ms )
};
**};
END Node2_IV_A1_PI_clock.final;
THREAD Node2_IV_A2_PI_clock
END Node2_IV_A2_PI_clock;
THREAD IMPLEMENTATION Node2_IV_A2_PI_clock.final
PROPERTIES
Dispatch_Protocol => Periodic;
Period => 25ms;
Deadline => 25ms;
Compute_Execution_Time => 10ms..10ms;
ANNEX behavior_specification {**
STATES
s : INITIAL COMPLETE FINAL STATE;
TRANSITIONS
t : s -[ ]-> s {
COMPUTATION ( 1ms )
};
**};
END Node2_IV_A2_PI_clock.final;
SUBPROGRAM Node1_IV_S1_PI_getVal1
PROPERTIES
Compute_Execution_Time => 1ms..1ms;
END Node1_IV_S1_PI_getVal1;
SUBPROGRAM IMPLEMENTATION Node1_IV_S1_PI_getVal1.final
END Node1_IV_S1_PI_getVal1.final;
SUBPROGRAM Node1_IV_S2_PI_getVal2
PROPERTIES
Compute_Execution_Time => 1ms..1ms;
END Node1_IV_S2_PI_getVal2;
SUBPROGRAM IMPLEMENTATION Node1_IV_S2_PI_getVal2.final
END Node1_IV_S2_PI_getVal2.final;
SUBPROGRAM Node2_IV_A1_PI_setVal1
PROPERTIES
Compute_Execution_Time => 1ms..1ms;
END Node2_IV_A1_PI_setVal1;
SUBPROGRAM IMPLEMENTATION Node2_IV_A1_PI_setVal1.final
END Node2_IV_A1_PI_setVal1.final;
SUBPROGRAM Node2_IV_A2_PI_setVal2
PROPERTIES
Compute_Execution_Time => 1ms..1ms;
END Node2_IV_A2_PI_setVal2;
SUBPROGRAM IMPLEMENTATION Node2_IV_A2_PI_setVal2.final
END Node2_IV_A2_PI_setVal2.final;
END concurrencyview::CV;
---------------------------------------------------
-- AADL2.1
-- TASTE type deploymentview
-- (c)Ellidiss Technologies
-- generated code: do not edit
---------------------------------------------------
PACKAGE deploymentview::DV::Node1
PUBLIC
WITH ocarina_buses;
WITH ocarina_drivers;
WITH Taste;
WITH Deployment;
WITH TASTE_DV_Properties;
PROCESS App1
END App1;
PROCESS IMPLEMENTATION App1.others
END App1.others;
DEVICE driver
EXTENDS ocarina_drivers::generic_serial
FEATURES
link : REFINED TO REQUIRES BUS ACCESS ocarina_buses::serial.generic {
Taste::coordinates => "113835 67430";
};
PROPERTIES
Taste::Interface_Coordinates => "138660 69107" APPLIES TO link;
Deployment::Help => "Write your ASN.1 configuration here";
END driver;
DEVICE IMPLEMENTATION driver.others
EXTENDS ocarina_drivers::generic_serial.raw
END driver.others;
END deploymentview::DV::Node1;
PACKAGE deploymentview::DV::Node2
PUBLIC
WITH ocarina_buses;
WITH ocarina_drivers;
WITH Taste;
WITH Deployment;
WITH TASTE_DV_Properties;
PROCESS App2
END App2;
PROCESS IMPLEMENTATION App2.others
END App2.others;
DEVICE driver
EXTENDS ocarina_drivers::generic_serial
FEATURES
link : REFINED TO REQUIRES BUS ACCESS ocarina_buses::serial.generic {
Taste::coordinates => "174666 67541";
};
PROPERTIES
Taste::Interface_Coordinates => "148276 69330" APPLIES TO link;
Deployment::Help => "Write your ASN.1 configuration here";
END driver;
DEVICE IMPLEMENTATION driver.others
EXTENDS ocarina_drivers::generic_serial.raw
END driver.others;
END deploymentview::DV::Node2;
PACKAGE deploymentview::DV
PUBLIC
WITH interfaceview::IV::Sensors::S1;
WITH interfaceview::IV::Sensors::S2;
WITH interfaceview::IV::Processing::Preproc;
WITH ocarina_processors_x86;
WITH deploymentview::DV::Node1;
WITH interfaceview::IV::Processing::Postproc;
WITH interfaceview::IV::Actuators::A1;
WITH interfaceview::IV::Actuators::A2;
WITH deploymentview::DV::Node2;
WITH ocarina_buses;
WITH Taste;
WITH Deployment;
WITH interfaceview::IV;
WITH TASTE_DV_Properties;
SYSTEM Node1
FEATURES
driver_serial_generic : REQUIRES BUS ACCESS ocarina_buses::serial.generic;
END Node1;
SYSTEM IMPLEMENTATION Node1.others
SUBCOMPONENTS
IV_S1 : SYSTEM interfaceview::IV::Sensors::S1::S1.others {
Taste::coordinates => "97509 90800 110033 101982";
Taste::FunctionName => "S1";
};
IV_S2 : SYSTEM interfaceview::IV::Sensors::S2::S2.others {
Taste::coordinates => "98627 106678 109139 117413";
Taste::FunctionName => "S2";
};
IV_Preproc : SYSTEM interfaceview::IV::Processing::Preproc::Preproc.others {
Taste::coordinates => "90129 91918 96391 116966";
Taste::FunctionName => "Preproc";
};
App1 : PROCESS deploymentview::DV::Node1::App1.others {
Taste::coordinates => "88619 84547 111386 119724";
Deployment::Port_Number => 0;
};
x86_linux : PROCESSOR ocarina_processors_x86::x86.linux {
Taste::coordinates => "85656 73624 119650 123877";
};
driver : DEVICE deploymentview::DV::Node1::driver.others {
Taste::coordinates => "95720 64410 113835 70001";
};
CONNECTIONS
driver_serial_generic_link : BUS ACCESS driver_serial_generic -> driver.link;
PROPERTIES
Taste::APLC_Binding => (reference (App1)) APPLIES TO IV_S1;
Taste::APLC_Binding => (reference (App1)) APPLIES TO IV_S2;
Taste::APLC_Binding => (reference (App1)) APPLIES TO IV_Preproc;
Actual_Processor_Binding => (reference (x86_linux)) APPLIES TO App1;
Actual_Processor_Binding => (reference (x86_linux)) APPLIES TO driver;
END Node1.others;
SYSTEM Node2
FEATURES
driver_serial_generic : REQUIRES BUS ACCESS ocarina_buses::serial.generic;
END Node2;
SYSTEM IMPLEMENTATION Node2.others
SUBCOMPONENTS
IV_Postproc : SYSTEM interfaceview::IV::Processing::Postproc::Postproc.others {
Taste::coordinates => "172654 91694 178692 118755";
Taste::FunctionName => "Postproc";
};
IV_A1 : SYSTEM interfaceview::IV::Actuators::A1::A1.others {
Taste::coordinates => "182941 90129 192782 101758";
Taste::FunctionName => "A1";
};
IV_A2 : SYSTEM interfaceview::IV::Actuators::A2::A2.others {
Taste::coordinates => "184059 106902 192334 118308";
Taste::FunctionName => "A2";
};
App2 : PROCESS deploymentview::DV::Node2::App2.others {
Taste::coordinates => "170561 85106 195689 121378";
Deployment::Port_Number => 0;
};
x86_linux : PROCESSOR ocarina_processors_x86::x86.linux {
Taste::coordinates => "167018 74742 202443 126560";
};
driver : DEVICE deploymentview::DV::Node2::driver.others {
Taste::coordinates => "174666 64410 195242 70672";
};
CONNECTIONS
driver_serial_generic_link : BUS ACCESS driver_serial_generic -> driver.link;
PROPERTIES
Taste::APLC_Binding => (reference (App2)) APPLIES TO IV_Postproc;
Taste::APLC_Binding => (reference (App2)) APPLIES TO IV_A1;
Taste::APLC_Binding => (reference (App2)) APPLIES TO IV_A2;
Actual_Processor_Binding => (reference (x86_linux)) APPLIES TO App2;
Actual_Processor_Binding => (reference (x86_linux)) APPLIES TO driver;
END Node2.others;
SYSTEM deploymentview
END deploymentview;
SYSTEM IMPLEMENTATION deploymentview.others
SUBCOMPONENTS
Node1 : SYSTEM Node1.others {
Taste::coordinates => "81407 59266 123899 131056";
};
Node2 : SYSTEM Node2.others {
Taste::coordinates => "162590 59937 206871 133963";
};
serial_generic : BUS ocarina_buses::serial.generic {
Taste::coordinates => "138660 64410 148276 104666";
};
interfaceview : SYSTEM interfaceview::IV::interfaceview.others;
CONNECTIONS
Connection1 : BUS ACCESS serial_generic -> Node1.driver_serial_generic {
Taste::coordinates => "113835 67430 126247 67430 126247 69107 138660 69107";
};
Connection2 : BUS ACCESS serial_generic -> Node2.driver_serial_generic {
Taste::coordinates => "174666 67541 161471 67541 161471 69330 148276 69330";
};
PROPERTIES
Actual_Connection_Binding => (reference (serial_generic)) APPLIES TO interfaceview.Processing.Preproc_PI_getVal_Postproc_RI_getVal;
Taste::Coordinates => "142462 76039 144474 89234" APPLIES TO interfaceview.Processing.Preproc_PI_getVal_Postproc_RI_getVal;
END deploymentview.others;
PROPERTIES
Taste::coordinates => "0 0 297000 210000";
Taste::version => "2.0";
Taste::interfaceView => "DemoIV.aadl";
Taste::HWLibraries => ("common/ocarina_components.aadl");
END deploymentview::DV;
---------------------------------------------------
-- AADL2.1
-- TASTE type interfaceview
-- (c)Ellidiss Technologies
-- generated code: do not edit
---------------------------------------------------
PACKAGE interfaceview::IV::Processing::Preproc
PUBLIC
WITH interfaceview::IV::Sensors::S1;
WITH interfaceview::IV::Sensors::S2;
WITH Taste;
WITH DataView;
WITH TASTE_IV_Properties;
SUBPROGRAM PI_clock
PROPERTIES
Taste::Associated_Queue_Size => 1;
END PI_clock;
SUBPROGRAM IMPLEMENTATION PI_clock.others
PROPERTIES
Compute_Execution_Time => 0 ms .. 2 ms;
END PI_clock.others;
SUBPROGRAM PI_getVal
FEATURES
val : OUT PARAMETER DataView::MyInteger {
Taste::encoding => NATIVE;
};
PROPERTIES
Taste::Associated_Queue_Size => 1;
END PI_getVal;
SUBPROGRAM IMPLEMENTATION PI_getVal.others
PROPERTIES
Compute_Execution_Time => 0 ms .. 1 ms;
END PI_getVal.others;
SUBPROGRAM RI_getVal1
FEATURES
val : OUT PARAMETER DataView::MyInteger {
Taste::encoding => NATIVE;
};
END RI_getVal1;
SUBPROGRAM IMPLEMENTATION RI_getVal1.others
END RI_getVal1.others;
SUBPROGRAM RI_getVal2
FEATURES
val : OUT PARAMETER DataView::MyInteger {
Taste::encoding => NATIVE;
};
END RI_getVal2;
SUBPROGRAM IMPLEMENTATION RI_getVal2.others
END RI_getVal2.others;
SYSTEM Preproc
FEATURES
PI_clock : PROVIDES SUBPROGRAM ACCESS interfaceview::IV::Processing::Preproc::PI_clock.others {
Taste::coordinates => "137189 73338";
Taste::RCMoperationKind => cyclic;
Taste::RCMperiod => 10 ms;
Taste::Deadline => 10 ms;
Taste::InterfaceName => "clock";
};
PI_getVal : PROVIDES SUBPROGRAM ACCESS interfaceview::IV::Processing::Preproc::PI_getVal.others {
Taste::coordinates => "139444 83492";
Taste::RCMoperationKind => sporadic;
Taste::RCMperiod => 10 ms;
Taste::Deadline => 0 ms;
Taste::InterfaceName => "getVal";
};
RI_getVal1 : REQUIRES SUBPROGRAM ACCESS interfaceview::IV::Sensors::S1::PI_getVal1.others {
Taste::coordinates => "131243 73338";
Taste::RCMoperationKind => unprotected;
Taste::InterfaceName => "getVal1";
Taste::labelInheritance => "true";
};
RI_getVal2 : REQUIRES SUBPROGRAM ACCESS interfaceview::IV::Sensors::S2::PI_getVal2.others {
Taste::coordinates => "132473 105732";
Taste::RCMoperationKind => unprotected;
Taste::InterfaceName => "getVal2";
Taste::labelInheritance => "true";
};
PROPERTIES
Source_Language => (C);
Taste::Active_Interfaces => any;
END Preproc;
SYSTEM IMPLEMENTATION Preproc.others
END Preproc.others;