Changes between Version 3 and Version 4 of tips/configuration_class
- Timestamp:
- Jan 31, 2019, 10:30:18 PM (5 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
tips/configuration_class
v3 v4 8 8 9 9 = はじめに = 10 * BSWモジュールの各コンフィギュレーションパラメータには 、コンフィギュレーションクラスが規定されている10 * BSWモジュールの各コンフィギュレーションパラメータには,コンフィギュレーションクラスが規定されている 11 11 * コンフィギュレーションクラスは大きく3つ存在する 12 12 * プレコンパイルタイム … … 18 18 ---- 19 19 = プレコンパイルタイム = 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モジュールの再コンパイルが必要となる 22 22 * 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)]参照 25 25 * Osの例 26 * {{{OsScalabilityClass}}} 、{{{OsStackMonitoring}}}など26 * {{{OsScalabilityClass}}},{{{OsStackMonitoring}}}など 27 27 * {{{Os_Cfg.h}}}に出力する 28 28 * Comの例 29 * {{{ComConfigurationUseDet}}} 、{{{ComVersionInfoApi}}}など29 * {{{ComConfigurationUseDet}}},{{{ComVersionInfoApi}}}など 30 30 * {{{Com_Cfg.h}}}に出力する 31 31 ---- 32 32 = リンクタイム = 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モジュールの静的コードの再コンパイルは必要ない 36 36 * コンフィギュレーション情報を含むファイルの再コンパイルが必要 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)]参照 39 39 * 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では,プレコンパイルタイムと規定されているパラメータであっても,静的コードのライブラリ提供を可能とするために一部リンクタイムとしている 43 43 * Comの例 44 * {{{ComIPduHandleId}}} 、{{{ComPduIdRef}}}など45 * {{{Com_Lcfg.h}}} 、{{{Com_Lcfg.c}}}に出力する44 * {{{ComIPduHandleId}}},{{{ComPduIdRef}}}など 45 * {{{Com_Lcfg.h}}},{{{Com_Lcfg.c}}}に出力する 46 46 ---- 47 47 = ポストビルドタイム = 48 48 == ローダブル(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)]参照 54 54 * Osは該当パラメータが無い 55 55 * 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では,リンクタイムと規定されているパラメータであっても,実装容易性のためにポストビルドタイムとしている 59 59 == ローダブル(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)] 61 61 * ジェネレータによって直接.hexファイルを生成する 62 62 == セレクタブル == 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モジュールの初期化時に使用するコンフィギュレーションを選択する 65 65 * コンフィギュレーション情報をどういった命名規則で複数のファイルに出力するかは未規定 66 66 ---- 67 67 = コンフィギュレーションクラスの指定 = 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 * 例えばプレコンパイルタイムのパラメータは以下のように,どれを選ばれてもプレコンパイルタイムとする,とされている 72 72 * {{{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)]