Agenda 1. Why ISOLAR-AB? 2. Basic AUTOSAR toolchain & workflow 3. Software Component(SWC) description 4. Software Compositions 5. RTE Contract Phase 6. System Template 7. RTE Configuration i. Map SWCs to ECUs ii. System Data Mapping iii. Map Runnables to Tasks iv. System Extract – ECU Extract 8. RTE Generation Phase 9. Additional Inputs (SWCDs, BSWMDs) 10. Basic Software Configuration and Generation. 11. Common ISOLAR-AB workflow 2 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. About the training Prerequisites: - AUTOSAR Overview Training Related documents: - AUTOSAR_TPS_SoftwareComponentTemplate.pdf - AUTOSAR_TPS_SystemTemplate.pdf Important!!! - Go through ISOLAR*_GettingStartedGuide.pdf to get used to the ISOLAR-AB GUI and standard workflow. This slide aims at providing basic explanation on important notes, definitions and term when working with ISOLAR-AB 3 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 1. Why ISOLAR-AB? − A single-tool solution to support all the configuration requirements for AUTOSAR based projects. ISOLAR-AB is ISOLAR-A + ISOLAR-B ISOLAR-A: Integrated SOLution for AutosaR – Application Software ISOLAR-B: Integrated SOLution for AutosaR – Basic Software − AUTOSAR authoring tool Eclipse based ARTOP – AUTOSAR Tool Platform −Open and extensible architecture “Plug-and-play” user extensions RTE Interface to ETAS RTA-RTE −Graphical creation and visualization of AUTOSAR XML (.arxml) −Dbc, Ldf, Fibex importer -> System Description. ISOLAR-AB is mainly used for: a. Designing software components (SWCs) & compositions a. Describing AUTOSAR systems and ECU instances a. Configure systems for RTE generation (key features!) b. Manual configuration and automatic generation of BSW modules. b. BSW code generation. 4 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 2. Basic AUTOSAR toolchain & Workflow Figure to be added 5 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Software Components (SWCs) are the building blocks of AUTOSAR can be combined to create a complete system Software Components Types - Application SWC: H/W independent component - Sensor Actuator SWC: located on the same ECU as the sensor/actuator (physical value <-> AUTOSAR signal) - Service SWC: mostly comes from BSW Service Layer (BswM, ComM, EcuM, Dcm,…) - Complex Device Driver SWC: Has direct access to HW on an ECU … SWC SWCs contain Ports (PPorts, Rports) Internal Behavior - Runnable Entities - Events - PerInstanceMemory - SWC Service Dependency… 6 SWC SWC Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Ports SWCs communicate through ports SWC R - PPorts: used by a SWC to provide data or services to other SWC. - RPorts: used by SWC to require data or services from other SWC. P P SWC P R P R 7 SWC Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. R 3. SWC Descriptions SWC Communication via Ports Sender/Receiver (S/R) communication A SWC send data to another SWC Receiver SWC Client/Server (C/S) communication A SWC trigger the execution of code on another SWC. Usually, the Server sends back some result Server SWC Sender Client SWC 8 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions From VFB to RTE The connections between SWCs are mapped onto a Virtual Function Bus (VFB). The VFB implementation is known as the Run-Time Environment (RTE). The RTE manages all aspects of communication between SWCs. The RTE Generator reads the ECU description to generate code to implement the VFB. 9 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Interfaces C/S and S/R are communication methods. Interfaces determine how ports are defined: The ‘shape’ of each port is defined by its interface, this includes its communication method. An interface can be thought of as the port’s ‘type’. Ports defined by compatible interfaces can be connected. Sender/Receiver Interface - A S/R interface contains typed Data Elements. - Data Elements are independent from each other - Each data element is sent or received separately SR_Interface uint8 DE_1 uint16 DE_2 uint32 DE_3 Each Data Element has a Data Type (which should be a familiar concept, Ex: Speed(km/h), Distance(km), …) 10 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Client Server Interface - A C/S interface contains Operations. - An Operation is an executable piece of code which runs on the server. - Operations may take arguments, and can return a result Client Server Interfaces use Data Types in the arguments of operations. C/S arguments also have a direction(IN, OUT, IN-OUT) 11 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Data Types Application Data Level • An ApplicationDataType is an abstract type at the SWC design stage (at VFB level), describe ‘real-world’ types (Unit (SI Units), Physical Dimension,…) • An ImplementationDataType conceptually corresponds Implementat to the level of (C) source code ion Data Level Base Type Level • A SwBaseType provides the platform-dependent part of an ImplementationDataType The SW developer must map each ApplicationDataType onto an ImplementationDataType Data Type Mapping 12 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Data Types Example As an example, we’ll use an Application Data Type called STATE_LIGHT which has two values ON OFF For its Implementation Data Type, we will use a boolean. Application Data Types do not appear in the C code 13 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions SWC Internal Behavior Runnable Entities (runnables): executable code written by developers Runnables make API calls for communication Runnables are triggered by RTE Events. SWC Internal Behavior Runnable RTE Event can be: • Timing Event • Data-received Event • Server-call Event, Operation Invoked Event,… 14 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Data Access Points (S/R Communication) Comm unicati on When to use Acces s Data Access Point type Action RTE API Implicit Some runnables access the same S/R data, it may be more efficient to use a local copy of the data item read dataReadAccess Read from local copy of data item Rte_IRead write dataWriteAccess Write to local copy of data item Rte_IWrite Direct Read and Write access. Normally used read dataReceivePoint ByArgument Data pointer needs to be provided to get the data Rte_Read read dataReceivePoint ByValue Function return the data. Rte_DRead write dataSendPoint Direct call to lower layer service (Com_SendSignal) Rte_Write read dataReceivePoint ByArgument TBD Rte_Receive write dataSendPoint TBD Rte_Send Explicit (nonqueued ) Explicit (queue d) 15 Adding a SwImplPolicy of QUEUED to the Data Element in the S/R interface Need to add also a QueuedSenderComspec in the P-Port’s definition Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Server Call Points (C/S Communication) Communicatio n Variable Access Attribute RTE API Client/Server client call serverCallPoint Rte_Call client call asynchronousServerCallResultPo int Rte_Result Client/Server communication can be synchronous or asynchronous, API is identical (Rte_Call) - Synchronous call only returns when the server has responded - Asynchronous call returns immediately Result from call is retrieved later using Rte_Result. It is an error for a client to have more than one Asynchronous call outstanding to the same server RTE_E_LIMIT error 16 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Per-Instance Memory (PIM) − Runnables are typically short lived – if more persistent storage is required, a Per-Instance Memory (PIM) is used. − For example, counting the number of invocations of a runnable − Normally used as a RAM mirrors of NvM Blocks − PIMs can be defined with − AUTOSAR types (AR-Typed PIMs) − C Types (C-typed PIMs) 17 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Hints: More detailed information can be found in the AUTOSAR specification of the software component template AUTOSAR_TPS_SoftwareComponentTemplate.pdf An efficient way to find out which sub-elements define an AUTOSAR element is to open the „Create Child“ context menu of the AUTOSAR element, i.e. a software component, in ISOLAR-AB 18 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 3. SWC Descriptions Application SWC overall workflow 19 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 4. Software Composition A Software Composition assembles a Composition group of SWCs into a communicating system Compositions are built from: - SWC Prototypes - Assembly Connector (intra-SWCs connection) Compositions can have ports: - Delegation Connector is used to connect a port within a composition to a port on the composition boundary - Compositions can then be incorporated into larger compositions hierarchies Important!!! - Connected ports must be compatible. - Port interface elements must be compatible (type-based) 20 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 4. Software Composition Port Mapping - Can be done manually / automatically using AR Compatibility algorithm(see ISOLAR-AB Getting Start Guide) - Or automatically “Using Naming Rules” i. Specify the rule as describe in the figure ii. Then tick to choose a list of rules to be used, “Next” and see the list of proposed connections. 21 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 5. RTE Contract Phase Contract Phase generates a set of information about a SWC: Input: Interface definitions SWC Definition Output: Application header file for a SWC type. Type definitions for the SWC. The generated files define the contract between a component and the RTE. 22 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template - Create System Description [Communication Matrix] + Clusters, ECU Instances, Frames, PDUs, and Signals + Association of Frames and Signals to ECU + Association of ECUs to Clusters Can be manually configure using AR Explorer, but a large amount of work and competence is required. Can use existing Legacy Format files (DBC-CAN, FIBEXFLEXRAY, LDF-LIN) 23 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template - Intra and Inter-ECU Communication Inter-ECU Communication Intra-ECU Communication Two SWCs exchange information between different ECUs Data flow: SW-C 1 -> RTE(ECU1) -> BSW&Driver(ECU1) -> Physical Bus -> BSW&Driver(ECU2) -> RTE(ECU2) -> SW-C 2 Two SWCs can exchange information on one ECU Data flow: SW-C 1 -> RTE -> SW-C 2 24 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template Inter-ECU Communication System signal: - Unique pieces of data transferred between SWC instances - 1 system signal : 1 AUTOSAR signal Isignal (Interaction Signal): - Are use to distribute data to multiple receivers - 1 system signal : n Isignal - Support Signal fan-out (same data sent to multiple receivers) IPdu: - Interaction Protocol Data Unit - Assembled and dis-assembled in COM NPdu: - Network Protocol Data Unit - assembled and dis-assembled in a Transport Protocol module LPdu: - Data Link Protocol Data Unit - Assembled and dis-assembled in AUTOSAR Hardware Abstraction layer Frame: - A piece of information that is exchanged over the communication channels 25 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template 26 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template Mapping 1. SWC to ECU mapping Figure: Block diagram of the Inter-ECU example Figure: The corresponding SWC to ECU mapping of this system. Source: ISOLAR-AB GettingStartGuide 27 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template Mapping 2. System Data mapping When a SWC send data across a network, an additional configuration task is required: data element to signal mapping In this configuration step, a data element that belongs to a SWC port will be mapped onto a System Signal 28 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template Mapping 2. System Data mapping When the number of Data mapping is huge, auto signal mapping should be useful, the mapping rule is gotten from DataElement name(VariableDataPrototype Name in S/R Interfaces) and Signal Name 29 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template System Extract Subsystem view on the complete system description Contain information of one or more ECUs SWCs, composition, communication matrix, data type 30 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 6. System Template ECU Extract The RTE is generated for a single ECU at a time ECU extract contains all the information needed by the RTE generator for that ECU 31 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 7. RTE Configuration Mapping Runnables to Tasks Isolar-AB supports creation of OsTasks, mapping RTE Events to Task. Note!!! The properties of OsTasks will then be generated into osNeeds.arxml by RTE. This file is included in OS configuration and generation. Higher number = higher priority Based on the number, position and period of Events mapped in OsTask, OsTasks’ bodied will be generated by RTE Note!!! OsTask ‘s period is automatically defined by RTE Gen, based on Events’ period in the task 32 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 8. RTE Generation Phase For the list of possible Additional Commands and their description, please read “RTA-RTE Reference Manual.pdf” (RTE installation folder) 33 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 8. RTE Generation Phase RTE log file(rte.log) contains some useful information: - Command line option, list of input files - Error/Warning/Info if any (Error Code) - “Configuration information -- Counter Rte_TickCounter must be ticked at 1 ms.” IncrementCounter(Rte_TickCounter) needs to be called with correct period (every 1ms) For fixing a RTE Gen error, get the corresponding Error Code and find the “Description & Solution” for that error in RTA-RTE Error Description.pdf (RTE installation folder) 34 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 9. Additional Inputs (SWCDs, BSWMDs) RTE Gen in most of Projects requires also SoftwareComponentDescription (SWCD), and BSW Module Description(BSWMD) arxml files. - Generated by BSW Code Generation scripts - Dependent on BSW configuration. SWCDs: Service Software Components Description - Implementation Data Types for the corresponding module - Interface for provided services - Completed Service Software Component (Internal Behavior, Ports, Runnables, Events,…) BSWMDs: - BswInternalBehaviors - Schedulable Entities, BswTimingEvent (normally for BswModules’ Mainfunction) used for OsTask mapping. 35 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. Exercise Getting Start Guide from ISOLAR-AB v4.0 Find in C:\Program Files\ETAS\ISOLAR-AB4.0\Documentation\ISOLARA_V10.0_GettingStartedGuide.pdf - Go through the standard workflow described in Chapter 5. ISOLAR-AB v4.0 tool (Choose to install ISOLAR-AB, not ISOLAR-A with BCT): \\bosch.com\dfsRB\DfsVN\LOC\Hc\RBVH\20_ENG\10_ENG1\01_Internal\50_Public\Tools\ISOLA R-B\ISOLAR-A_V10.0_ISOLAR-B_V4.0_signed_released_(M20180504-1800_DVD).zip 36 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10. Basic Software Configuration and Generation 37 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10. Basic Software Configuration and Generation Some important definitions from AUTOSAR ParamDef: Parameters Definition file. That defines which container/parameter is defined and can be configurable in a BSW module. The paramdef should follow chapter 10, of modules’ AR Specification. EcucValues: All the containers, parameters for 1 or more modules are saved to a file called EcucValues. (Ex: BswM_EcucValues.armxl) 1 project can have more than 1 EcucValue file Container: (Ex: CanIfPublicCfg, CanIfDispatchCfg,…), contain the configuration parameters Parameter: lowest configuration level, can be Integer, String, Boolean, Enum,… (can see this definition in “Category” attribute, “ECU Conf Documentation” view) Multiplicity: (Lower Multiplicity…Upper Multiplicity) can be seen in “ECU Conf Documentation” view. It defines the number of containers/parameters that we can configure. 0…0: not configurable 0…1: is not mandatory, but can not configure more than 1 0…*: is not mandatory, and can have as many configuration as we want. 1…1: mandatory, not more than 1 1…*: at least 1 configuration of it 38 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10. Basic Software Configuration and Generation A BSW module normally contains: - api: static header files - scripts: ParamDef of the module, CodeGen script - *.bamf file: define actions (GenerateId, Forward, Validate, Generate) in CodeGen phase of the module. - *.oaw, *.xpt, *.ext, *.chk: implementation of CodeGen script, for doing the actions. - src: static *.c source - template: template files required by the module. The files in this folder can be changed depending on integrators’ purpose 39 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10.1. Basic Software Configuration Generation BSW modules configurations for CAN/LIN/MEM stacks can be automatically generated using importer script. (Refer Section 5.2.3 of ISOLAR-B_GettingStartedGuide.pdf) Input: ECU System Description Output: EcucValues file that contains the configuration of the whole stack. (Project_EcucValues.arxml) Note!!! This feature is replaced by RTA-BSW Configuration Generation 40 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10.2. Build Control View Build Control View is used for running the actions defined in bamf files. This is known as CodeGen phase Input: modules’ configuration in EcucValues files. Output: - Cfg.c/.h: dynamic code of modules based on their configurations. - <module>_Cfg_BSWMD.armxl: BSW module description - <module>_Cfg_SWCD.arxml: service SWC description (DataType, interfaces, SWC, ports…) Build Control View can be initiated like this Note!!! These generated BSWMD and SWCD file is then the input of RTE configuration. 41 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10.2. Build Control View The actions listed in Build Control View are in one of following types: - Prepare/GenerateId: Prepare/Generate the missing configuration, that can be autofilled by scripts. - Forward: forward configuration to other modules - Validate: (*.chk, *.ext) check if there is any wrong configuration. If yes, throw errors with description on how to fix. - Generate: (*.xpt, *.ext) generate _Cfg.c/.h dynamic code. After CodeGen, static and dynamic code together defines a module (according to specific project’s configuration) 42 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10.2. Build Control View 2 common ways to trigger codeGen - “build”: run all available actions listed in “Action name” column - “partial build”: run only the chosen actions in “Activated in partial build” column Note!!! When running partial build, “BctStart” and BctEnd need to be chosen. Note!!! Build Control View can be replaced by using RTA-BSW CodeGeneration 43 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10.3. Some new features ISOLAR-AB provides some new features as compared to ISOLAR-A/BCT BSW Overview: Display all configured modules according to AR defined layered architecture PDU Trace View: PDU flow between layers in BSW Com-Stack Channel Trace View: For Mode Management … See ISOLAR-B_GettingStartGuide for more detailed information. 44 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 10.4. ISOLAR-B Exercise Getting Start Guide from ISOLAR-AB v4.0 Find in C:\Program Files\ETAS\ISOLAR-AB4.0\Documentation\ISOLAR-B_GettingStartedGuide.pdf - Go through the standard workflow described in Chapter 5. 45 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights. 11. Common ISOLAR-AB workflow 46 Vo Ngoc Nhan (RBVH/ENG1) | 2018-09-07 © Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as i n the event of applications for industrial property rights.