Changes between Version 3 and Version 4 of tips/configuration_class


Ignore:
Timestamp:
Jan 31, 2019, 10:30:18 PM (3 years ago)
Author:
fujisft-shigihara
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • tips/configuration_class

    v3 v4  
    88
    99= はじめに =
    10 * BSWモジュールの各コンフィギュレーションパラメータにはコンフィギュレーションクラスが規定されている
     10* BSWモジュールの各コンフィギュレーションパラメータにはコンフィギュレーションクラスが規定されている
    1111* コンフィギュレーションクラスは大きく3つ存在する
    1212  * プレコンパイルタイム
     
    1818----
    1919= プレコンパイルタイム =
    20 * 概要図:[http://www.autosar.org/fileadmin/files/releases/4-0/methodology-templates/templates/standard/AUTOSAR_TPS_ECUConfiguration.pdf#page=21&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.2)]
    21 * 対象パラメータのコンフィギュレーションが変わるとBSWモジュールの再コンパイルが必要となる
     20* 概要図:[https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_TPS_ECUConfiguration.pdf#page=21&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.2)]
     21* 対象パラメータのコンフィギュレーションが変わるとBSWモジュールの再コンパイルが必要となる
    2222* BSWモジュールのコンパイル時にジェネレータで生成したヘッダファイルが必要になる
    23 * プレコンパイルタイムのコンフィギュレーション情報は{{{<Module name>_Cfg.h}}}(必要なら{{{<Module name>_Cfg.c}}})に出力される
    24   * [http://www.autosar.org/fileadmin/files/releases/4-0/software-architecture/general/standard/AUTOSAR_SRS_BSWGeneral.pdf#page=64&view=fitv AUTOSAR_SRS_BSWGeneral.pdf(BSW00346)]参照
     23* プレコンパイルタイムのコンフィギュレーション情報は{{{<Module name>_Cfg.h}}}(必要なら{{{<Module name>_Cfg.c}}})に出力される
     24  * [https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_SRS_BSWGeneral.pdf#page=64&view=fitv AUTOSAR_SRS_BSWGeneral.pdf(BSW00346)]参照
    2525  * Osの例
    26     * {{{OsScalabilityClass}}}{{{OsStackMonitoring}}}など
     26    * {{{OsScalabilityClass}}}{{{OsStackMonitoring}}}など
    2727    * {{{Os_Cfg.h}}}に出力する
    2828  * Comの例
    29     * {{{ComConfigurationUseDet}}}{{{ComVersionInfoApi}}}など
     29    * {{{ComConfigurationUseDet}}}{{{ComVersionInfoApi}}}など
    3030    * {{{Com_Cfg.h}}}に出力する
    3131----
    3232= リンクタイム =
    33 * 概要図:[http://www.autosar.org/fileadmin/files/releases/4-0/methodology-templates/templates/standard/AUTOSAR_TPS_ECUConfiguration.pdf#page=23&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.3)]
    34 * ジェネレータが生成したコードを別途コンパイルして生成したオブジェクトファイルをリンクすることでコンフィギュレーションを変更する
    35 * 対象パラメータのコンフィギュレーションが変わってもBSWモジュールの静的コードの再コンパイルは必要ない
     33* 概要図:[https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_TPS_ECUConfiguration.pdf#page=23&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.3)]
     34* ジェネレータが生成したコードを別途コンパイルして生成したオブジェクトファイルをリンクすることでコンフィギュレーションを変更する
     35* 対象パラメータのコンフィギュレーションが変わってもBSWモジュールの静的コードの再コンパイルは必要ない
    3636  * コンフィギュレーション情報を含むファイルの再コンパイルが必要
    37 * コンフィギュレーション情報は、{{{<Module name>_Lcfg.h}}}、{{{<Module name>_Lcfg.c}}}に出力される
    38   * [http://www.autosar.org/fileadmin/files/releases/4-0/software-architecture/general/standard/AUTOSAR_SRS_BSWGeneral.pdf#page=64&view=fitv AUTOSAR_SRS_BSWGeneral.pdf(BSW00346)]参照
     37* コンフィギュレーション情報は,{{{<Module name>_Lcfg.h}}},{{{<Module name>_Lcfg.c}}}に出力される
     38  * [https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_SRS_BSWGeneral.pdf#page=64&view=fitv AUTOSAR_SRS_BSWGeneral.pdf(BSW00346)]参照
    3939* Osの例
    40   * {{{OsTaskActivation}}}{{{OsTaskPriority}}}など
    41   * {{{Os_Lcfg.h}}}{{{Os_Lcfg.c}}}に出力する
    42     * TOPPERS/ATK2では、プレコンパイルタイムと規定されているパラメータであっても、静的コードのライブラリ提供を可能とするために一部リンクタイムとしている
     40  * {{{OsTaskActivation}}}{{{OsTaskPriority}}}など
     41  * {{{Os_Lcfg.h}}}{{{Os_Lcfg.c}}}に出力する
     42    * TOPPERS/ATK2では,プレコンパイルタイムと規定されているパラメータであっても,静的コードのライブラリ提供を可能とするために一部リンクタイムとしている
    4343* Comの例
    44   * {{{ComIPduHandleId}}}{{{ComPduIdRef}}}など
    45   * {{{Com_Lcfg.h}}}{{{Com_Lcfg.c}}}に出力する
     44  * {{{ComIPduHandleId}}}{{{ComPduIdRef}}}など
     45  * {{{Com_Lcfg.h}}}{{{Com_Lcfg.c}}}に出力する
    4646----
    4747= ポストビルドタイム =
    4848== ローダブル(1) ==
    49 * 概要図:[http://www.autosar.org/fileadmin/files/releases/4-0/methodology-templates/templates/standard/AUTOSAR_TPS_ECUConfiguration.pdf#page=25&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.4)]
    50 * ジェネレータが生成したコードを別途コンパイルして生成した.hexファイルをECUに配置し別途ECUに配置したBSWモジュールからアクセスする
    51 * 複数の.hexファイルを用意し、配置する.hexを変更することで、動的にコンフィギュレーションを変更できる
    52 * コンフィギュレーション情報は、{{{<Module name>_PBcfg.h}}}、{{{<Module name>_PBcfg.c}}}に出力される
    53   * [http://www.autosar.org/fileadmin/files/releases/4-0/software-architecture/general/standard/AUTOSAR_SRS_BSWGeneral.pdf#page=64&view=fitv AUTOSAR_SRS_BSWGeneral.pdf(BSW00346)]参照
     49* 概要図:[https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_TPS_ECUConfiguration.pdf#page=25&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.4)]
     50* ジェネレータが生成したコードを別途コンパイルして生成した.hexファイルをECUに配置し別途ECUに配置したBSWモジュールからアクセスする
     51* 複数の.hexファイルを用意し,配置する.hexを変更することで,動的にコンフィギュレーションを変更できる
     52* コンフィギュレーション情報は,{{{<Module name>_PBcfg.h}}},{{{<Module name>_PBcfg.c}}}に出力される
     53  * [https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_SRS_BSWGeneral.pdf#page=64&view=fitv AUTOSAR_SRS_BSWGeneral.pdf(BSW00346)]参照
    5454* Osは該当パラメータが無い
    5555* Comの例
    56   * {{{ComIPduDirection}}}{{{ComBitPosition}}}など
    57   * {{{Com_PBcfg.h}}}{{{Com_PBcfg.c}}}に出力する
    58     * TOPPERS/A-COMでは、リンクタイムと規定されているパラメータであっても、実装容易性のためにポストビルドタイムとしている
     56  * {{{ComIPduDirection}}}{{{ComBitPosition}}}など
     57  * {{{Com_PBcfg.h}}}{{{Com_PBcfg.c}}}に出力する
     58    * TOPPERS/A-COMでは,リンクタイムと規定されているパラメータであっても,実装容易性のためにポストビルドタイムとしている
    5959== ローダブル(2) ==
    60 * 概要図:[http://www.autosar.org/fileadmin/files/releases/4-0/methodology-templates/templates/standard/AUTOSAR_TPS_ECUConfiguration.pdf#page=26&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.5)]
     60* 概要図:[https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_TPS_ECUConfiguration.pdf#page=26&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.5)]
    6161* ジェネレータによって直接.hexファイルを生成する
    6262== セレクタブル ==
    63 * 概要図:[http://www.autosar.org/fileadmin/files/releases/4-0/methodology-templates/templates/standard/AUTOSAR_TPS_ECUConfiguration.pdf#page=27&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.6)]
    64 * ジェネレータによって複数のコンフィギュレーション情報を含むファイルを生成しBSWモジュールの初期化時に使用するコンフィギュレーションを選択する
     63* 概要図:[https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_TPS_ECUConfiguration.pdf#page=27&view=fitv AUTOSAR_TPS_ECUConfiguration.pdf(Figure 2.6)]
     64* ジェネレータによって複数のコンフィギュレーション情報を含むファイルを生成しBSWモジュールの初期化時に使用するコンフィギュレーションを選択する
    6565* コンフィギュレーション情報をどういった命名規則で複数のファイルに出力するかは未規定
    6666----
    6767= コンフィギュレーションクラスの指定 =
    68 * ECUコンフィギュレーションではモジュール毎に{{{<IMPLEMENTATION-CONFIG-VARIANT>}}}タグでコンフィギュレーションクラスを指定する
    69   * {{{VARIANT-PRE-COMPILE}}}、{{{VARIANT-LINK-TIME}}}、{{{VARIANT-POST-BUILD}}}の3種類
    70 * このどれを指定されたかによってパラメータをどのように使用するかがパラメータ毎に規定されている
    71   * 例えばプレコンパイルタイムのパラメータは以下のように、どれを選ばれてもプレコンパイルタイムとする、とされている
     68* ECUコンフィギュレーションではモジュール毎に{{{<IMPLEMENTATION-CONFIG-VARIANT>}}}タグでコンフィギュレーションクラスを指定する
     69  * {{{VARIANT-PRE-COMPILE}}},{{{VARIANT-LINK-TIME}}},{{{VARIANT-POST-BUILD}}}の3種類
     70* このどれを指定されたかによってパラメータをどのように使用するかがパラメータ毎に規定されている
     71  * 例えばプレコンパイルタイムのパラメータは以下のように,どれを選ばれてもプレコンパイルタイムとする,とされている
    7272  * {{{Pre-compile time:X | All Variants}}}
    73 * 以下のパラメータの場合、{{{VARIANT-PRE-COMPILE}}}ならプレコンパイルタイムでいいが、{{{VARIANT-LINK-TIME}}}か{{{VARIANT-POST-BUILD}}}を指定されたらリンクタイムとする、という意味となる
    74   * [http://www.autosar.org/fileadmin/files/releases/4-0/software-architecture/communication-stack/standard/AUTOSAR_SWS_COM.pdf#page=128&view=fitv AUTOSAR_SWS_COM.pdf(COM175_Conf)]
     73* 以下のパラメータの場合,{{{VARIANT-PRE-COMPILE}}}ならプレコンパイルタイムでいいが,{{{VARIANT-LINK-TIME}}}か{{{VARIANT-POST-BUILD}}}を指定されたらリンクタイムとする,という意味となる
     74  * [https://www.autosar.org/fileadmin/user_upload/standards/classic/4-0/AUTOSAR_SWS_COM.pdf#page=128&view=fitv AUTOSAR_SWS_COM.pdf(COM175_Conf)]