AUTOSAR Generator : Overview of the AUTOSAR Interface : Scope Definition Area

Scope Definition Area

The Scope Definition area supports one AUTOSAR Atomic Software Component Type (SWC). There is always one SWC when opening the profile.

Under a SWC, as part of it, there is one instance of Internal-Behavior (IB). There is always one IB instance when opening the profile.

Note: The name of the SWC and the IB is case-sensitive and may be renamed accessing the right-click pop-up menu. By default, the name of the SWC is atomicSoftwareComponent_1 and the name if the IB is internalBehavior_1.

The following design-attributes for an Internal-Behavior are accessed using the right-click popup menu):

Multiple Instantiation - Defines whether the Software Component described by this Internal Behavior is Multiple Instantiated or not. This determines whether the RTE APIs should use the instance parameter or not.
Group I/O Elements to a Single Port - When set to 'yes', a single port is created for all Input elements of the same R.E. Another port is created for all Output elements of the same R.E. that the “On Interface” is set to “yes”. When set to 'no', each I/O element (i.e., each Input line or Output line) will define a separate port and relating interface.
Runnables Entities run in Exclusive Area - When set to 'yes', all Runnable Entities in the scope will be defined as “Run in Exclusive Area”. In this case, an additional Design Attribute, “Exclusive Area Name”, is opened for setting the Exclusive Area's Name. The default name is Exclusive_Area.
Use '&' For Input Array Parameter - Defines an IN parameter of type array shall be passed using '&' or not.
Use '&' For Output Array Parameter - Defines an OUT parameter of type array shall be passed using '&' or not.

You should add to the scope the Charts containing Activities tagged as Runnable Entities.Those Activities that are Runnable Entities define the implementation of the Internal-Behavior instance of the regarded SWC. After adding the Charts and Activities (that are defined as Runnable Entities) to the scope, double-click on any of the Runnable Entities in the Scope Definition area to display the input and output flowing elements in the lower half of the screen.

The lower half of the screen displays the Inputs (Left hand side) and the Outputs (Right hand side) handled by each of the Runnable Entities. This is referred to as the “I/O Definition Area”. The I/O Definition Area contains two tabs: "Main" and "Client/Server"

 

 

 

 

 

 

 

 

 

The "Main" tab

There are four columns in the the "Main" tab:

Source/Target Activities (Read-Only) - displays the selected Activity, representing a Runnable entity.
Input/Output Data (Read-Only) - The input/output Flow Line to/from the selected Activity. From SAG point of view, the Flow Line represents all the Data Elements (Data Items, Conditions and Events) that it contains, and all the definitions that are set for a the Flow line will effect its Data Elements also.

SAG uses Flow-Lines for defining a Require-Ports (for input) or Provide-Ports (for output), with matching Sender-Receiver Interfaces. More specifically, if an Info-Flow flows on the Flow-Line, the Info-Flow is presented, and a proper interface is defined on a port carrying the same name. When a Data-Item, Condition or Event flows on the Flow-Line, it defines the interface of the relating port.
The user may use an external Interface to type a Port, by setting an interface reference to the design-attribute External Interface Reference, available for Info-Flows (for S-R Interface) and Subroutines (C-S Interface). In this case, the Interface will not be defined in the XML, and the port will refer to the provided reference.
The Design-Attribute "Its Port" of Data-Item, Condition or Event may be used to determine the Port's name. If the value of the Design-Attribute "Its Port" is empty or "none", the Port name will be determined by the Flow-Line label.
Data Exchange Method - This field can get one of the following values:

On SW/C Interface (default) - Notifies that the data is part of the Interface of the Software Component.

Internal - Notifies that the data is internal to the model.

Inter-Runnable Variable - Notifies that the data is used as part of Inter-Runnable Variables.

By Design Attribute - Notifies that the Data Exchange Method is specifically set to each Data-Item, Condition or Event of this port, via the Design-Attribute "Data Exchange Method".

See the following figure:

Data Exchange Behavior - This field can get one of the following values:
(When Data Exchange Method is set to On SW/C Interface - see the following figure):

Data Point (Default) - Notifies that the data is accessed by a Data Receive Point (for input) or a Data Send Point (for output), and is on a Sender-Receiver Interface.

Queued Data Point - Notifies that the data is queued and accessed by a Data Receive Point or a Data Send Point, and is on a Sender-Receiver Interface.

Data Access - Notifies that the data is accessed by a Data Read Access (for input) or a Data Write Access (for output), and is on a Sender-Receiver Interface.

CalPrm Access - Notifies that the data is accessed by a CalPrm Access , and is on a CalPrm-Interface. For Input (left-side) elements only.

By Design Attribute - Notifies that the Data Exchange Behavior is specifically set to each Data-Item, Condition or Event of this port, using the Design-Attribute "Data Exchange Behavior"

 

When Data Exchange Method is set to Internal: N/A.

When Data Exchange Method is set to Inter-Runnable Variable (refer to the following figure):

Explicit Behavior (default) - Notifies that the Inter-Runnable Variable has explicit behavior.

Implicit Behavior - Notifies that the Inter-Runnable Variable has implicit behavior.

By Design Attribute - Notifies that the Data Exchange Behavior is specifically set to each Data-Item, Condition or Event of this port, using the Design-Attribute "Data Exchange Behavior"

 

The following table lists the RTE APIs that are used in the different cases:

 

 

Data Exchange Method

On SW/C Interface

Data Exchange Behav­ior

Data Point

Queued Data Point

Data Access

CalPrm Access

Mode Declaration Group

Input

Rte_Read

Rte_Send

Rte_IRead

Rte_Calprm

Rte_Mode

Output

Rte_Write

Rte_Receive

Rte_IWrite

-

Rte_Switch

Data Exchange Method

Inter-Runnable Variable

Data Exchange Behav­ior

Explicit Behavior

Implicit Behavior

Input

Rte_IrvRead

Rte_ IrvIRead

Output

Rte_IrvWrite

Rte_ IrvIWrite

 

 

 

The "Client/Server" tab

The "Client/Server" tab consists of two parts, the upper part is for adding and defining Required Ports (input, or Client) and the lower part is for Provided-Ports (output, or Server).

Both the Provided Part and the Required Part contain of the following columns:

Port - Allows the user to create a new Provided/Required Port, to be typed by a Client-Server Interface.

External Interrface - Allows the user to select an externally define Client-Server Interface to type the current Port. If the user selects "none", a new Interface will be defined in the generated ARXML.

Operation - Allows the user to select one or more operations from the Statemate model, to be added to the Client-Server Interface.

The Required part contains of the following additional columns:

Communication - Specifies the communication model - Synchronous or Asynchronous (Currently only Synchronous mode is supported by SAG).

Runnables - Specifies the list of Runnable Entities that access a certain operation.

The Provided part contains of the following additional column:

Queue Length - Specifies the list of size of the queue to be used for a certain operation.