Changes between Version 7 and Version 8 of spec/Com


Ignore:
Timestamp:
Jul 15, 2015, 11:19:30 AM (9 years ago)
Author:
fujisft-shigihara
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • spec/Com

    v7 v8  
    1818    * 当然、MainFunctionの呼出し間隔より短い時間を設定しても、時間管理を実現できない
    1919    * 設定値が、MainFunctionの呼出し間隔の倍数になっていない場合、厳密な時間を実現できない
     20* TMS(Transmission Mode Selector)
     21  * IPDUを送信する周期などのタイミング(送信モード)の設定は、1IPDU毎に2種類(TRUEとFALSEで区別)設定できる
     22    * この仕組みをTMSと呼ぶ
     23  * IPDUに所属するシグナルに対するフィルタリングの結果で、TMSが切り替わる
     24  * IPDUに所属するシグナルのフィルタリング結果が1つでもTRUEの場合は、TMSはTRUEとなる
    2025
    2126* API一覧
     
    5964  * [#ComConfig ComConfig]
    6065    * [#ComConfigurationId ComConfigurationId]
    61     * [#ComGwMapping ComGwMapping]
    62       * [#ComGwDestination ComGwDestination]
    63         * [#ComGwDestinationDescription ComGwDestinationDescription]
    64           * [#ComBitPosition ComBitPosition]
    65           * [#ComSignalEndianness ComSignalEndianness]
    66           * [#ComSignalInitValue ComSignalInitValue]
    67           * [#ComTransferProperty ComTransferProperty]
    68           * [#ComUpdateBitPosition ComUpdateBitPosition]
    69           * [#ComGwIPduRef ComGwIPduRef]
    70           * [#ComFilter ComFilter]
    71             * [#ComFilterAlgorithm ComFilterAlgorithm]
    72             * [#ComFilterMask ComFilterMask]
    73             * [#ComFilterMax ComFilterMax]
    74             * [#ComFilterMin ComFilterMin]
    75             * [#ComFilterOffset ComFilterOffset]
    76             * [#ComFilterPeriod ComFilterPeriod]
    77             * [#ComFilterX ComFilterX]
    78         * [#ComGwSignal ComGwSignal]
    79           * [#ComGwSignalRef ComGwSignalRef]
    80       * [#ComGwSource ComGwSource]
    81         * [#ComGwSignal ComGwSignal]
    82           * [#ComGwSignalRef ComGwSignalRef]
    83         * [#ComGwSourceDescription ComGwSourceDescription]
    84           * [#ComBitPosition ComBitPosition]
    85           * [#ComBitSize ComBitSize]
    86           * [#ComSignalEndianness ComSignalEndianness]
    87           * [#ComSignalLength ComSignalLength]
    88           * [#ComSignalType ComSignalType]
    89           * [#ComUpdateBitPosition ComUpdateBitPosition]
    90           * [#ComGwIPduRef ComGwIPduRef]
    9166    * [#ComIPdu ComIPdu]
    9267      * [#ComIPduCallout ComIPduCallout]
     
    190165          * [#ComFilterPeriod ComFilterPeriod]
    191166          * [#ComFilterX ComFilterX]
     167    * [#ComGwMapping ComGwMapping]
     168      * [#ComGwDestination ComGwDestination]
     169        * [#ComGwDestinationDescription ComGwDestinationDescription]
     170          * [#ComBitPosition ComBitPosition]
     171          * [#ComSignalEndianness ComSignalEndianness]
     172          * [#ComSignalInitValue ComSignalInitValue]
     173          * [#ComTransferProperty ComTransferProperty]
     174          * [#ComUpdateBitPosition ComUpdateBitPosition]
     175          * [#ComGwIPduRef ComGwIPduRef]
     176          * [#ComFilter ComFilter]
     177            * [#ComFilterAlgorithm ComFilterAlgorithm]
     178            * [#ComFilterMask ComFilterMask]
     179            * [#ComFilterMax ComFilterMax]
     180            * [#ComFilterMin ComFilterMin]
     181            * [#ComFilterOffset ComFilterOffset]
     182            * [#ComFilterPeriod ComFilterPeriod]
     183            * [#ComFilterX ComFilterX]
     184        * [#ComGwSignal ComGwSignal]
     185          * [#ComGwSignalRef ComGwSignalRef]
     186      * [#ComGwSource ComGwSource]
     187        * [#ComGwSignal ComGwSignal]
     188          * [#ComGwSignalRef ComGwSignalRef]
     189        * [#ComGwSourceDescription ComGwSourceDescription]
     190          * [#ComBitPosition ComBitPosition]
     191          * [#ComBitSize ComBitSize]
     192          * [#ComSignalEndianness ComSignalEndianness]
     193          * [#ComSignalLength ComSignalLength]
     194          * [#ComSignalType ComSignalType]
     195          * [#ComUpdateBitPosition ComUpdateBitPosition]
     196          * [#ComGwIPduRef ComGwIPduRef]
    192197    * [#ComTimeBase ComTimeBase]
    193198      * [#ComGwTimeBase ComGwTimeBase]
     
    219224* 引数configで与えたポインタが指すコンフィギュレーションデータを使用して初期化される
    220225  * [wiki:tips_configuration_class#%E3%83%9D%E3%82%B9%E3%83%88%E3%83%93%E3%83%AB%E3%83%89%E3%82%BF%E3%82%A4%E3%83%A0 ポストビルド]のパラメータは本初期化により設定値を変更できる
     226* [wiki:spec_CANInterface CanIf]のCanIf_Initでは、引数にNULLを与えた場合、デフォルトのコンフィギュレーションが設定される仕様となっていることから、TOPPERS/A-COMではCom_Initも同様にNULLが与えられた場合、デフォルトのコンフィギュレーション([#ComConfigurationId ComConfigurationId]が0)を設定するように実装している
    221227
    222228== Com_DeInit ==
     
    225231}}}
    226232* Comモジュールの未初期化を行い、Comモジュールが提供するサービスを終了する
    227 * [http://www.autosar.org/fileadmin/files/releases/4-0/software-architecture/communication-stack/standard/AUTOSAR_SWS_COM.pdf#page=87&view=fitv AUTOSAR_SWS_COM.pdfのCaveats]では、Com_DeinitがComモジュールのAPIに割り込んで呼び出されるような使い方を考慮しなくてよいと書かれている
     233* [http://www.autosar.org/fileadmin/files/releases/4-0/software-architecture/communication-stack/standard/AUTOSAR_SWS_COM.pdf#page=87&view=fitv AUTOSAR_SWS_COM.pdfのCaveats of Com_DeInit]では、Com_DeinitがComモジュールのAPIに割り込んで呼び出されるような使い方を考慮しなくてよいと書かれている
    228234
    229235== Com_IpduGroupControl ==
     
    448454* 型:Container
    449455* 多重度:1
     456* [#Com_Init Com_Init]により設定されるコンフィギュレーション全体のコンテナ
     457* TOPPERS/A-COMでは、[wiki:tips_configuration_class#%E3%83%9D%E3%82%B9%E3%83%88%E3%83%93%E3%83%AB%E3%83%89%E3%82%BF%E3%82%A4%E3%83%A0 ポストビルド]による複数のコンフィギュレーション定義に対応するため、多重度を1..*として本コンテナを複数定義可能としている
    450458
    451459== ComConfigurationId ==
     
    455463* 型:IntegerParam
    456464* 多重度:1
    457 
    458 == ComGwMapping ==
    459 {{{
    460 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping
     465* [#Com_Init Com_Init]で設定したコンフィギュレーションを識別するID
     466* TOPPERS/A-COMでは、処理速度向上のため、0から連番とする制約を設けている
     467
     468== ComIPdu ==
     469{{{
     470/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu
    461471}}}
    462472* 型:Container
    463473* 多重度:0..*
    464 
    465 == ComGwDestination ==
    466 {{{
    467 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination
    468 }}}
    469 * 型:Container
    470 * 多重度:1..*
    471 
    472 == ComGwDestinationDescription ==
    473 {{{
    474 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription
    475 }}}
    476 * 型:Container
    477 * 多重度:0..1
    478 
    479 == ComBitPosition ==
    480 {{{
    481 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComBitPosition
    482 }}}
    483 * 型:IntegerParam
    484 * 多重度:1
    485 
    486 == ComSignalEndianness ==
    487 {{{
    488 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComSignalEndianness
    489 }}}
    490 * 型:EnumerationParam
    491 * 多重度:1
    492 
    493 == ComSignalInitValue ==
    494 {{{
    495 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComSignalInitValue
    496 }}}
    497 * 型:StringParam
    498 * 多重度:0..1
    499 
    500 == ComTransferProperty ==
    501 {{{
    502 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComTransferProperty
    503 }}}
    504 * 型:EnumerationParam
    505 * 多重度:0..1
    506 
    507 == ComUpdateBitPosition ==
    508 {{{
    509 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComUpdateBitPosition
    510 }}}
    511 * 型:IntegerParam
    512 * 多重度:0..1
    513 
    514 == ComGwIPduRef ==
    515 {{{
    516 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComGwIPduRef
    517 }}}
    518 * 型:Reference
    519 * 多重度:1
    520 
    521 == ComFilter ==
    522 {{{
    523 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter
    524 }}}
    525 * 型:Container
    526 * 多重度:0..1
    527 
    528 == ComFilterAlgorithm ==
    529 {{{
    530 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterAlgorithm
    531 }}}
    532 * 型:EnumerationParam
    533 * 多重度:1
    534 
    535 == ComFilterMask ==
    536 {{{
    537 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMask
    538 }}}
    539 * 型:IntegerParam
    540 * 多重度:0..1
    541 
    542 == ComFilterMax ==
    543 {{{
    544 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMax
    545 }}}
    546 * 型:IntegerParam
    547 * 多重度:0..1
    548 
    549 == ComFilterMin ==
    550 {{{
    551 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMin
    552 }}}
    553 * 型:IntegerParam
    554 * 多重度:0..1
    555 
    556 == ComFilterOffset ==
    557 {{{
    558 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterOffset
    559 }}}
    560 * 型:IntegerParam
    561 * 多重度:0..1
    562 
    563 == ComFilterPeriod ==
    564 {{{
    565 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterPeriod
    566 }}}
    567 * 型:IntegerParam
    568 * 多重度:0..1
    569 
    570 == ComFilterX ==
    571 {{{
    572 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterX
    573 }}}
    574 * 型:IntegerParam
    575 * 多重度:0..1
    576 
    577 == ComGwSignal ==
    578 {{{
    579 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwSignal
    580 }}}
    581 * 型:Container
    582 * 多重度:0..1
    583 
    584 == ComGwSignalRef ==
    585 {{{
    586 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwSignal/ComGwSignalRef
    587 }}}
    588 * 型:Reference
    589 * 多重度:1
    590 
    591 == ComGwSource ==
    592 {{{
    593 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource
    594 }}}
    595 * 型:Container
    596 * 多重度:1
    597 
    598 == ComGwSignal ==
    599 {{{
    600 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSignal
    601 }}}
    602 * 型:Container
    603 * 多重度:0..1
    604 
    605 == ComGwSignalRef ==
    606 {{{
    607 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSignal/ComGwSignalRef
    608 }}}
    609 * 型:Reference
    610 * 多重度:1
    611 
    612 == ComGwSourceDescription ==
    613 {{{
    614 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription
    615 }}}
    616 * 型:Container
    617 * 多重度:0..1
    618 
    619 == ComBitPosition ==
    620 {{{
    621 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComBitPosition
    622 }}}
    623 * 型:IntegerParam
    624 * 多重度:1
    625 
    626 == ComBitSize ==
    627 {{{
    628 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComBitSize
    629 }}}
    630 * 型:IntegerParam
    631 * 多重度:0..1
    632 
    633 == ComSignalEndianness ==
    634 {{{
    635 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalEndianness
    636 }}}
    637 * 型:EnumerationParam
    638 * 多重度:1
    639 
    640 == ComSignalLength ==
    641 {{{
    642 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalLength
    643 }}}
    644 * 型:IntegerParam
    645 * 多重度:0..1
    646 
    647 == ComSignalType ==
    648 {{{
    649 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalType
    650 }}}
    651 * 型:EnumerationParam
    652 * 多重度:1
    653 
    654 == ComUpdateBitPosition ==
    655 {{{
    656 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComUpdateBitPosition
    657 }}}
    658 * 型:IntegerParam
    659 * 多重度:0..1
    660 
    661 == ComGwIPduRef ==
    662 {{{
    663 /AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComGwIPduRef
    664 }}}
    665 * 型:Reference
    666 * 多重度:1
    667 
    668 == ComIPdu ==
    669 {{{
    670 /AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu
    671 }}}
    672 * 型:Container
    673 * 多重度:0..*
     474* IPDUを設定するコンテナ
    674475
    675476== ComIPduCallout ==
     
    679480* 型:FunctionName
    680481* 多重度:0..1
     482* 下位モジュール([wiki:spec_PDURouter PduR])からIPDUを受信した直後に呼び出すコールアウト関数名
     483* コールアウト関数は以下のシンタックスで定義する
     484{{{
     485boolean Com_RxIpduCallout(PduIdType Id, const uint8* IpduData)
     486}}}
    681487
    682488== ComIPduCancellationSupport ==
     
    686492* 型:BooleanParam
    687493* 多重度:0..1
     494* IPDU通信要求キャンセルのサポート有無
    688495
    689496== ComIPduDirection ==
     
    692499}}}
    693500* 型:EnumerationParam
    694 * 多重度:1
     501  * SEND:送信
     502  * RECEIVE:受信
     503* 多重度:1
     504* IPDUの通信の方向
    695505
    696506== ComIPduHandleId ==
     
    700510* 型:IntegerParam
    701511* 多重度:0..1
     512* IPDUのID
     513* 下位モジュール([wiki:spec_PDURouter PduR])との受信通知、送信完了通知において、IPDUを識別するために使用される
     514* 多重度は0..1であるが、送信完了通知と受信通知のどちらも使用しないIPDUが想定されないため、TOPPERS/A-COMでは、多重度1としている
     515* TOPPERS/A-COMでは、処理速度向上のため、0から連番とする制約を設けている
    702516
    703517== ComIPduSignalProcessing ==
     
    706520}}}
    707521* 型:EnumerationParam
    708 * 多重度:1
     522  * DEFERRED:周期関数([#Com_MainFunctionRx Com_MainFunctionRx]、[#Com_MainFunctionTx Com_MainFunctionTx])でシグナルの送信完了通知、受信通知を行う
     523  * IMMEDIATE:コールバック関数([#Com_RxIndication Com_RxIndication]、[#Com_TxConfirmation Com_TxConfirmation])でシグナルの送信完了通知、受信通知を行う
     524* 多重度:1
     525* シグナルに対する処理タイミングを指定する
     526* 受信の場合、IMMEDIATEを設定すれば受信したタイミングでIPDUからシグナルをアンパッキングするため、すぐに最新値を取り出せるが、コールバック関数の処理時間が長くなる
    709527
    710528== ComIPduTriggerTransmitCallout ==
     
    714532* 型:FunctionName
    715533* 多重度:1
     534* IPDUトリガ送信時に呼び出されるコールアウト関数名
     535* Comモジュールから下位モジュール([wiki:spec_PDURouter PduR])にIPDUを通信する直前に呼び出すコールアウト関数名
     536* コールアウト関数は以下のシンタックスで定義する
     537{{{
     538boolean Com_TxIpduCallout(PduIdType Id, uint8* IpduData)
     539}}}
    716540
    717541== ComIPduType ==
     
    720544}}}
    721545* 型:EnumerationParam
    722 * 多重度:1
     546  * NORMAL:通常のIPDU
     547  * TP:TP通信のIPDU(TP:Transport)
     548* 多重度:1
     549* IPDUの種別
    723550
    724551== ComIPduGroupRef ==
     
    728555* 型:Reference
    729556* 多重度:0..*
     557* 所属するIPDUグループへの参照
    730558
    731559== ComIPduSignalGroupRef ==
     
    735563* 型:Reference
    736564* 多重度:0..*
     565* IPDUに所属するシグナルグループへの参照
    737566
    738567== ComIPduSignalRef ==
     
    742571* 型:Reference
    743572* 多重度:0..*
     573* IPDUに所属するシグナルへの参照
    744574
    745575== ComPduIdRef ==
     
    749579* 型:Reference
    750580* 多重度:1
     581* システム全体として同一IPDUを識別するためのIPDU(グローバルIPDU)への参照
     582* 詳細は[wiki:tips_pdu_id モジュール間のPDU-IDの関係]を参照
    751583
    752584== ComIPduCounter ==
     
    812644* 型:Container
    813645* 多重度:0..1
     646* 送信IPDUを設定するコンテナ
    814647
    815648== ComMinimumDelayTime ==
     
    819652* 型:FloatParam
    820653* 多重度:0..1
     654* 最小遅延時間
     655* 本パラメータで指定した時間未満であれば、送信要求が来ても送信せず遅延させる
     656* 単位は秒
    821657
    822658== ComTxIPduClearUpdateBit ==
     
    825661}}}
    826662* 型:EnumerationParam
    827 * 多重度:0..1
     663  * CONFIRMATION:送信完了通知を受け取った際にクリア
     664  * TRANSMIT:[wiki:spec_PDURouter#PduR_User:UpTransmit PduR_ComTransmit]を呼び出した際にクリア
     665  * TRIGGER_TRANSMIT:[#Com_TriggerTransmit Com_TriggerTransmit]が呼び出された際にクリア
     666* 多重度:0..1
     667* 送信IPDUに所属するシグナルおよびシグナルグループのアップデートビットをクリアするタイミング
    828668
    829669== ComTxIPduUnusedAreasDefault ==
     
    833673* 型:IntegerParam
    834674* 多重度:1
     675* IPDU内でシグナルやアップデートビットで使用していない領域に設定する値
    835676
    836677== ComTxModeFalse ==
     
    840681* 型:Container
    841682* 多重度:0..1
     683* TMSがFALSEの場合の送信モードを設定するコンテナ
    842684
    843685== ComTxMode ==
     
    847689* 型:Container
    848690* 多重度:1
     691* 送信モードを設定するコンテナ
     692* [#ComTxModeTrue ComTxModeTrue]側にも同じコンテナが含まれる
    849693
    850694== ComTxModeMode ==
     
    853697}}}
    854698* 型:EnumerationParam
    855 * 多重度:1
     699  * DIRECT:即時送信(+N回リピート送信)
     700  * PERIODIC:周期送信
     701  * MIXED:DIRECT+PERIODIC
     702  * NONE:送信しない
     703* 多重度:1
     704* 送信モードを選択する
    856705
    857706== ComTxModeNumberOfRepetitions ==
     
    861710* 型:IntegerParam
    862711* 多重度:0..1
     712* [#ComTxModeMode ComTxModeMode]がDIRECT、MIXEDの場合に、即時送信に加え、リピート送信する場合の回数(N回)
    863713
    864714== ComTxModeRepetitionPeriod ==
     
    868718* 型:FloatParam
    869719* 多重度:0..1
     720* [#ComTxModeMode ComTxModeMode]がDIRECT、MIXEDの場合に、即時送信に加え、リピート送信する場合の送信間隔
     721* 単位は秒
    870722
    871723== ComTxModeTimeOffset ==
     
    875727* 型:FloatParam
    876728* 多重度:0..1
     729* [#ComTxModeMode ComTxModeMode]がPERIODIC、MIXEDの場合の、周期送信開始時のオフセット値
     730* 単位は秒
    877731
    878732== ComTxModeTimePeriod ==
     
    882736* 型:FloatParam
    883737* 多重度:0..1
     738* [#ComTxModeMode ComTxModeMode]がPERIODIC、MIXEDの場合の、周期送信間隔
     739* 単位は秒
    884740
    885741== ComTxModeTrue ==
     
    889745* 型:Container
    890746* 多重度:0..1
     747* TMSがTRUEの場合の送信モードを設定するコンテナ
    891748
    892749== ComTxMode ==
     
    896753* 型:Container
    897754* 多重度:1
     755* [#ComTxMode ComTxMode]と同じ
    898756
    899757== ComTxModeMode ==
     
    903761* 型:EnumerationParam
    904762* 多重度:1
     763* [#ComTxModeMode ComTxModeMode]と同じ
    905764
    906765== ComTxModeNumberOfRepetitions ==
     
    910769* 型:IntegerParam
    911770* 多重度:0..1
     771* [#ComTxModeNumberOfRepetitions ComTxModeNumberOfRepetitions]と同じ
    912772
    913773== ComTxModeRepetitionPeriod ==
     
    917777* 型:FloatParam
    918778* 多重度:0..1
     779* [#ComTxModeRepetitionPeriod ComTxModeRepetitionPeriod]と同じ
    919780
    920781== ComTxModeTimeOffset ==
     
    924785* 型:FloatParam
    925786* 多重度:0..1
     787* [#ComTxModeTimeOffset ComTxModeTimeOffset]と同じ
    926788
    927789== ComTxModeTimePeriod ==
     
    931793* 型:FloatParam
    932794* 多重度:0..1
     795* [#ComTxModeTimePeriod ComTxModeTimePeriod]と同じ
    933796
    934797== ComIPduGroup ==
     
    938801* 型:Container
    939802* 多重度:0..*
     803* IPDUグループを設定するコンテナ
    940804
    941805== ComIPduGroupHandleId ==
     
    945809* 型:IntegerParam
    946810* 多重度:1
     811* IPDUグループのID
     812* TOPPERS/A-COMでは、処理速度向上のため、0から連番とする制約を設けている
    947813
    948814== ComIPduGroupGroupRef ==
     
    952818* 型:Reference
    953819* 多重度:0..*
     820* 所属するIPDUグループ参照
     821* IPDUグループはネストすることが可能
    954822
    955823== ComSignal ==
     
    959827* 型:Container
    960828* 多重度:0..*
     829* シグナルを設定するコンテナ
    961830
    962831== ComBitPosition ==
     
    966835* 型:IntegerParam
    967836* 多重度:1
     837* 多重度:1
     838* IPDU内のシグナルの開始ビット位置
     839* 0~(IPDUのサイズ-1)の間で指定する
    968840
    969841== ComBitSize ==
     
    973845* 型:IntegerParam
    974846* 多重度:0..1
     847* シグナルのビットサイズ
    975848
    976849== ComDataInvalidAction ==
     
    979852}}}
    980853* 型:EnumerationParam
    981 * 多重度:0..1
     854  * NOTIFY:無効値受信通知用コールバック関数([#ComInvalidNotification ComInvalidNotification])を呼び出す
     855  * REPLACE:初期値に置き換える
     856* 多重度:0..1
     857* シグナルの無効値を受信した場合の処理を選択する
    982858
    983859== ComErrorNotification ==
     
    987863* 型:FunctionName
    988864* 多重度:0..1
     865* エラー発生を通知するコールバック関数名
     866* [#Com_IpduGroupControl Com_IpduGroupControl]の呼び出しによって無効化された送信IPDUに対して,送信完了通知が届いていない場合に、所属するシグナルに設定された本コールバック関数が呼び出される
     867* コールバック関数は以下のシンタックスで定義する
     868{{{
     869void Com_CbkTxErr(void)
     870}}}
    989871
    990872== ComFirstTimeout ==
     
    994876* 型:FloatParam
    995877* 多重度:0..1
     878* 受信デッドラインモニタリングにおける1回目のタイムアウト時間
     879* 単位は秒
    996880
    997881== ComHandleId ==
     
    1001885* 型:IntegerParam
    1002886* 多重度:1
     887* シグナルのID
     888* TOPPERS/A-COMでは、処理速度向上のため、0から連番とする制約を設けている
    1003889
    1004890== ComInvalidNotification ==
     
    1008894* 型:FunctionName
    1009895* 多重度:0..1
     896* シグナルの無効値受信を通知するコールバック関数名
     897* コールバック関数は以下のシンタックスで定義する
     898{{{
     899void Com_CbkInv(void)
     900}}}
    1010901
    1011902== ComNotification ==
     
    1015906* 型:FunctionName
    1016907* 多重度:0..1
     908* シグナルの送信完了通知または受信通知のコールバック関数名
     909* コールバック関数は以下のシンタックスで定義する
     910{{{
     911void Com_CbkTxAck(void)
     912}}}
     913{{{
     914void Com_CbkRxAck(void)
     915}}}
    1017916
    1018917== ComRxDataTimeoutAction ==
     
    1021920}}}
    1022921* 型:EnumerationParam
    1023 * 多重度:0..1
     922  * NONE:何もしない
     923  * REPLACE:初期値に置き換える
     924* 多重度:0..1
     925* シグナルの受信デッドラインモニタリングでタイムアウトが発生した場合の処理
    1024926
    1025927== ComSignalDataInvalidValue ==
     
    1029931* 型:StringParam
    1030932* 多重度:0..1
     933* シグナルの無効値
    1031934
    1032935== ComSignalEndianness ==
     
    1035938}}}
    1036939* 型:EnumerationParam
    1037 * 多重度:1
     940  * LITTLE_ENDIAN:リトルエンディアン
     941  * BIG_ENDIAN:ビッグエンディアン
     942  * OPAQUE:オペーク(UINT8_N型で使用する)
     943* 多重度:1
     944* IPDUにシグナルをパッキングする際のエンディアン(バイトオーダー)
     945  * 詳細は[wiki:tips_signal_data シグナルデータの取り扱い]を参照
    1038946
    1039947== ComSignalInitValue ==
     
    1043951* 型:StringParam
    1044952* 多重度:0..1
     953* シグナルの初期値
     954* 周期送信されるシグナルであれば、[#Com_SendSignal Com_SendSignal]実行前でも初期値が送信される
     955* 他のECUからデータを受信する前に[#Com_ReceiveSignal Com_ReceiveSignal]を実行すると初期値が返る
    1045956
    1046957== ComSignalLength ==
     
    1050961* 型:IntegerParam
    1051962* 多重度:0..1
     963* シグナルの長さ
     964* 単位はバイト
     965* [#ComSignalType ComSignalType]がUINT8_NまたはUINT8_DYNの場合に使用する
    1052966
    1053967== ComSignalType ==
     
    1056970}}}
    1057971* 型:EnumerationParam
    1058 * 多重度:1
     972  * BOOLEAN:boolean
     973  * UINT8:符号なし整数(8bit)
     974  * UINT16:符号なし整数(16bit)
     975  * UINT32:符号なし整数(32bit)
     976  * SINT8:符号あり整数(8bit)
     977  * SINT16:符号あり整数(16bit)
     978  * SINT32:符号あり整数(32bit)
     979  * FLOAT32:浮動小数点(32bit)
     980  * FLOAT64:浮動小数点(64bit)
     981  * UINT8_N:配列(8bit×N)
     982  * UINT8_DYN:可変長配列(8bit×N)
     983* 多重度:1
     984* シグナルのデータ型
    1059985
    1060986== ComTimeout ==
     
    1064990* 型:FloatParam
    1065991* 多重度:0..1
     992* デッドラインモニタリングにおけるタイムアウト時間
     993* 単位は秒
    1066994
    1067995== ComTimeoutNotification ==
     
    1071999* 型:FunctionName
    10721000* 多重度:0..1
     1001* デッドラインモニタリングにおいてタイムアウト発生を通知するコールバック関数名
     1002* コールバック関数は以下のシンタックスで定義する
     1003{{{
     1004void Com_CbkTxTOut(void)
     1005}}}
     1006{{{
     1007void Com_CbkRxTOut(void)
     1008}}}
    10731009
    10741010== ComTransferProperty ==
     
    10771013}}}
    10781014* 型:EnumerationParam
    1079 * 多重度:0..1
     1015  * PENDING:シグナルの書き込みが発生しても,所属IPDUを即時送信しない
     1016  * TRIGGERED:シグナル書き込みが発生した場合,所属IPDUを即時送信する
     1017  * TRIGGERED_WITHOUT_REPETITION:シグナルの書込みが発生した場合,所属IPDUを繰り返しなしで即時送信する
     1018  * TRIGGERED_ON_CHANGE:シグナルの書き込みが発生し,書き込んだ値が前回値と異なる場合,所属IPDUを即時送信する
     1019  * TRIGGERED_ON_CHANGE_WITHOUT_REPETITION:シグナルの書き込みが発生し,書き込んだ値が前回値と異なる場合,所属IPDUを繰り返しなしで即時送信する
     1020* 多重度:0..1
     1021* シグナルの送信プロパティ
    10801022
    10811023== ComUpdateBitPosition ==
     
    10851027* 型:IntegerParam
    10861028* 多重度:0..1
     1029* IPDU内のシグナルのアップデートビット位置
     1030* シグナルデータが格納される位置とオーバーラップしないように注意する必要がある
    10871031
    10881032== ComSystemTemplateSystemSignalRef ==
     
    10921036* 型:Reference
    10931037* 多重度:0..1
     1038* システムシグナルへの参照
     1039* この参照情報により、異なるECU間で通信するシグナルの情報を関連付けることができる
    10941040
    10951041== ComFilter ==
     
    10991045* 型:Container
    11001046* 多重度:0..1
     1047* シグナルに対するフィルタを設定するコンテナ
    11011048
    11021049== ComFilterAlgorithm ==
     
    11051052}}}
    11061053* 型:EnumerationParam
    1107 * 多重度:1
     1054  * ALWAYS:常にTRUE
     1055  * NEVER:常にFALSE
     1056  * MASKED_NEW_DIFFERS_MASKED_OLD:(今回値 & [#ComFilterMask ComFilterMask]) != (前回値 & [#ComFilterMask ComFilterMask])
     1057  * MASKED_NEW_DIFFERS_X:(今回値 & [#ComFilterMask ComFilterMask]) != [#ComFilterX ComFilterX]
     1058  * MASKED_NEW_EQUALS_X:(今回値 & [#ComFilterMask ComFilterMask]) == [#ComFilterX ComFilterX]
     1059  * NEW_IS_OUTSIDE:(今回値 ≦ [#ComFilterMin ComFilterMin]) !|| ([#ComFilterMax ComFilterMax] ≦ 今回値)
     1060  * NEW_IS_WITHIN:[#ComFilterMin ComFilterMin] ≦ 今回値 ≦ [#ComFilterMax ComFilterMax]
     1061  * ONE_EVERY_N:(フィルタリング回数 % [#ComFilterPeriod ComFilterPeriod]) == [#ComFilterOffset ComFilterOffset]
     1062* 多重度:1
     1063* フィルタのアルゴリズム
     1064* 各アルゴリズムの計算結果によって、フィルタリングの結果が、TRUEかFALSEとして判定される
     1065* 送信も受信も同じアルゴリズムを使用する
    11081066
    11091067== ComFilterMask ==
     
    11131071* 型:IntegerParam
    11141072* 多重度:0..1
     1073* フィルタに設定するマスク値
     1074* [#ComFilterAlgorithm ComFilterAlgorithm]がMASKED_NEW_DIFFERS_MASKED_OLD、MASKED_NEW_DIFFERS_X、MASKED_NEW_EQUALS_Xの場合のみ使用する
    11151075
    11161076== ComFilterMax ==
     
    11201080* 型:IntegerParam
    11211081* 多重度:0..1
     1082* フィルタに設定する最大値
     1083* [#ComFilterAlgorithm ComFilterAlgorithm]がNEW_IS_OUTSIDE、NEW_IS_WITHINの場合のみ使用する
    11221084
    11231085== ComFilterMin ==
     
    11271089* 型:IntegerParam
    11281090* 多重度:0..1
     1091* フィルタに設定する最小値
     1092* [#ComFilterAlgorithm ComFilterAlgorithm]がNEW_IS_OUTSIDE、NEW_IS_WITHINの場合のみ使用する
    11291093
    11301094== ComFilterOffset ==
     
    11341098* 型:IntegerParam
    11351099* 多重度:0..1
     1100* フィルタに設定するオフセット
     1101* [#ComFilterAlgorithm ComFilterAlgorithm]がONE_EVERY_Nの場合のみ使用する
    11361102
    11371103== ComFilterPeriod ==
     
    11411107* 型:IntegerParam
    11421108* 多重度:0..1
     1109* フィルタに設定する周期
     1110* [#ComFilterAlgorithm ComFilterAlgorithm]がONE_EVERY_Nの場合のみ使用する
    11431111
    11441112== ComFilterX ==
     
    11481116* 型:IntegerParam
    11491117* 多重度:0..1
     1118* フィルタに設定するXの値
     1119* [#ComFilterAlgorithm ComFilterAlgorithm]がMASKED_NEW_DIFFERS_X、MASKED_NEW_EQUALS_Xの場合のみ使用する
    11501120
    11511121== ComSignalGroup ==
     
    11551125* 型:Container
    11561126* 多重度:0..*
     1127* シグナルグループを設定するコンテナ
     1128* サブコンテナに含まれるパラメータはシグナルのものと同じである
    11571129
    11581130== ComDataInvalidAction ==
     
    13731345* 多重度:0..1
    13741346
     1347== ComGwMapping ==
     1348{{{
     1349/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping
     1350}}}
     1351* 型:Container
     1352* 多重度:0..*
     1353* シグナルゲートウェイ設定のコンテナ
     1354
     1355== ComGwDestination ==
     1356{{{
     1357/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination
     1358}}}
     1359* 型:Container
     1360* 多重度:1..*
     1361
     1362== ComGwDestinationDescription ==
     1363{{{
     1364/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription
     1365}}}
     1366* 型:Container
     1367* 多重度:0..1
     1368
     1369== ComBitPosition ==
     1370{{{
     1371/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComBitPosition
     1372}}}
     1373* 型:IntegerParam
     1374
     1375== ComSignalEndianness ==
     1376{{{
     1377/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComSignalEndianness
     1378}}}
     1379* 型:EnumerationParam
     1380* 多重度:1
     1381
     1382== ComSignalInitValue ==
     1383{{{
     1384/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComSignalInitValue
     1385}}}
     1386* 型:StringParam
     1387* 多重度:0..1
     1388
     1389== ComTransferProperty ==
     1390{{{
     1391/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComTransferProperty
     1392}}}
     1393* 型:EnumerationParam
     1394* 多重度:0..1
     1395
     1396== ComUpdateBitPosition ==
     1397{{{
     1398/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComUpdateBitPosition
     1399}}}
     1400* 型:IntegerParam
     1401* 多重度:0..1
     1402
     1403== ComGwIPduRef ==
     1404{{{
     1405/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComGwIPduRef
     1406}}}
     1407* 型:Reference
     1408* 多重度:1
     1409
     1410== ComFilter ==
     1411{{{
     1412/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter
     1413}}}
     1414* 型:Container
     1415* 多重度:0..1
     1416
     1417== ComFilterAlgorithm ==
     1418{{{
     1419/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterAlgorithm
     1420}}}
     1421* 型:EnumerationParam
     1422* 多重度:1
     1423
     1424== ComFilterMask ==
     1425{{{
     1426/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMask
     1427}}}
     1428* 型:IntegerParam
     1429* 多重度:0..1
     1430
     1431== ComFilterMax ==
     1432{{{
     1433/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMax
     1434}}}
     1435* 型:IntegerParam
     1436* 多重度:0..1
     1437
     1438== ComFilterMin ==
     1439{{{
     1440/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMin
     1441}}}
     1442* 型:IntegerParam
     1443* 多重度:0..1
     1444
     1445== ComFilterOffset ==
     1446{{{
     1447/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterOffset
     1448}}}
     1449* 型:IntegerParam
     1450* 多重度:0..1
     1451
     1452== ComFilterPeriod ==
     1453{{{
     1454/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterPeriod
     1455}}}
     1456* 型:IntegerParam
     1457* 多重度:0..1
     1458
     1459== ComFilterX ==
     1460{{{
     1461/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterX
     1462}}}
     1463* 型:IntegerParam
     1464* 多重度:0..1
     1465
     1466== ComGwSignal ==
     1467{{{
     1468/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwSignal
     1469}}}
     1470* 型:Container
     1471* 多重度:0..1
     1472
     1473== ComGwSignalRef ==
     1474{{{
     1475/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwSignal/ComGwSignalRef
     1476}}}
     1477* 型:Reference
     1478* 多重度:1
     1479
     1480== ComGwSource ==
     1481{{{
     1482/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource
     1483}}}
     1484* 型:Container
     1485* 多重度:1
     1486
     1487== ComGwSignal ==
     1488{{{
     1489/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSignal
     1490}}}
     1491* 型:Container
     1492* 多重度:0..1
     1493
     1494== ComGwSignalRef ==
     1495{{{
     1496/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSignal/ComGwSignalRef
     1497}}}
     1498* 型:Reference
     1499* 多重度:1
     1500
     1501== ComGwSourceDescription ==
     1502{{{
     1503/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription
     1504}}}
     1505* 型:Container
     1506* 多重度:0..1
     1507
     1508== ComBitPosition ==
     1509{{{
     1510/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComBitPosition
     1511}}}
     1512* 型:IntegerParam
     1513* 多重度:1
     1514
     1515== ComBitSize ==
     1516{{{
     1517/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComBitSize
     1518}}}
     1519* 型:IntegerParam
     1520* 多重度:0..1
     1521
     1522== ComSignalEndianness ==
     1523{{{
     1524/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalEndianness
     1525}}}
     1526* 型:EnumerationParam
     1527* 多重度:1
     1528
     1529== ComSignalLength ==
     1530{{{
     1531/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalLength
     1532}}}
     1533* 型:IntegerParam
     1534* 多重度:0..1
     1535
     1536== ComSignalType ==
     1537{{{
     1538/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalType
     1539}}}
     1540* 型:EnumerationParam
     1541* 多重度:1
     1542
     1543== ComUpdateBitPosition ==
     1544{{{
     1545/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComUpdateBitPosition
     1546}}}
     1547* 型:IntegerParam
     1548* 多重度:0..1
     1549
     1550== ComGwIPduRef ==
     1551{{{
     1552/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComGwIPduRef
     1553}}}
     1554* 型:Reference
     1555* 多重度:1
     1556
    13751557== ComTimeBase ==
    13761558{{{
     
    13791561* 型:Container
    13801562* 多重度:1
     1563* 周期関数の時間に関する設定を行うコンテナ
    13811564
    13821565== ComGwTimeBase ==
     
    13861569* 型:FloatParam
    13871570* 多重度:0..1
     1571* [#Com_MainFunctionRouteSignals Com_MainFunctionRouteSignals]の起動周期
     1572* 単位は秒
    13881573
    13891574== ComRxTimeBase ==
     
    13931578* 型:FloatParam
    13941579* 多重度:0..1
     1580* [#Com_MainFunctionRx Com_MainFunctionRx]の起動周期
     1581* 単位は秒
    13951582
    13961583== ComTxTimeBase ==
     
    14001587* 型:FloatParam
    14011588* 多重度:0..1
     1589* [#Com_MainFunctionTx Com_MainFunctionTx]の起動周期
     1590* 単位は秒
    14021591
    14031592== ComGeneral ==
     
    14071596* 型:Container
    14081597* 多重度:1
     1598* Comモジュールの全般的な設定を行うコンテナ
    14091599
    14101600== ComConfigurationUseDet ==
     
    14141604* 型:BooleanParam
    14151605* 多重度:0..1
     1606* [wiki:spec_DevelopmentErrorTracer]の使用有無
    14161607
    14171608== ComEnableMDTForCyclicTransmission ==
     
    14211612* 型:BooleanParam
    14221613* 多重度:0..1
     1614* 周期送信における[#ComMinimumDelayTime ComMinimumDelayTime]の使用有無
    14231615
    14241616== ComRetryFailedTransmitRequests ==
     
    14281620* 型:BooleanParam
    14291621* 多重度:0..1
     1622* 失敗送信要求のリトライの使用有無
    14301623
    14311624== ComSupportedIPduGroups ==
     
    14351628* 型:IntegerParam
    14361629* 多重度:1
     1630* IPDUグループ数の最大値
    14371631
    14381632== ComVersionInfoApi ==
     
    14421636* 型:BooleanParam
    14431637* 多重度:1
    1444 
    1445 
     1638* [#Com_GetVersionInfo Com_GetVersionInfo]の使用有無
     1639