CLASSIC
Modul: comm
Rolle: constitutive
Konfidenz: 95%
SNIP_CLASSIC_COMM_SECTION_7_1_3_ComM_PNC_state_machine
Wortlaut
7.1.3 ComM PNC state machine
[SWS_ComM_00953] Execute PNC functionality upfront to ComMChannel related actions Upstream requirements: SRS_ModeMgm_09243
⌈If the PNC functionality is enabled using the configuration parameter ComMPncEnabled set to TRUE, all actions related to PNC changes shall be executed before the channel related actions (channel related actions, see Chapter 7.3).⌋
[SWS_ComM_00909] Upstream requirements: SRS_ModeMgm_09247
⌈For every Partial Network Cluster, only one PNC state machine shall be implemented (i.e. one PNC state machine per PNC, independent of the amount of ComMChannels).⌋
[SWS_ComM_00920] Upstream requirements: SRS_ModeMgm_09247
⌈The ComM module shall support up to 504 PNC state machines.⌋
[SWS_ComM_00924] Upstream requirements: SRS_ModeMgm_09247
⌈The PNC state machine shall consist of the two main states COMM_PNC_FULL_COMMUNICATION and COMM_PNC_NO_COMMUNICATION.⌋
[SWS_ComM_00907] Upstream requirements: SRS_ModeMgm_09247
⌈The PNC main state COMM_PNC_FULL_COMMUNICATION shall consist of the sub states COMM_PNC_PREPARE_SLEEP, COMM_PNC_READY_SLEEP and COMM_PNC_REQUESTED.⌋
[SWS_ComM_00908] Upstream requirements: SRS_ModeMgm_09251
⌈Every state change (listed within the ComM_PncModeType), excluding entering of the main state COMM_PNC_NO_COMMUNICATION coming from PowerOff, shall be notified by the API call BswM_ComM_CurrentPNCMode with the entered PNC state.⌋
[SWS_ComM_00978] Upstream requirements: SRS_ModeMgm_09247
⌈State transitions of the PNC state machines in ComM, triggered by a call to ComM_RequestComMode() shall be executed in the ComM_MainFunction_<Channel.ShortName> only.⌋ Comment: Every PNC activation triggers sending of the PNC bit vector n-times, thus it would increase the busload without debouncing.
[SWS_ComM_00972] Upstream requirements: SRS_ModeMgm_09246
⌈The trigger "ComMUser" represents a notification about a communication request of a ComMUser by calling the API ComM_RequestComMode().⌋
[SWS_ComM_00987] Upstream requirements: SRS_ModeMgm_09243
⌈Within the ComM_MainFunction_<Channel.ShortName> of a channel that is mapped to one or more PNCs, the requested state shall be handled in the following order:
1. ComM user requests of ComM users mapped to one or more PNCs of that channel
2. ComM user requests of ComM users mapped to that channel
3. ERA (if the configuration switch ComMPncGatewayEnabled is set to TRUE)
4. EIRA
⌋
Comment: Requests are handled in main functions of those channels they affect.
[SWS_ComM_00827] Upstream requirements: SRS_ModeMgm_09243, SRS_ModeMgm_09246
⌈ComM channel requests originating from a PNC state machine shall be treated like user requests for the according channels. This includes impact on ComM channel state machine which comes along with "Communication allowed" (see CommunicationAllowed boolean flag) and "Communication inhibition")⌋ Note: Please refer to (see Chapter 7.4.1 for details regarding communication inhibition COMM_PNC_FULL_COMMUNICATION COMM_PNC_NO_COMMUNICATION PowerOff COMM_PNC_REQUESTED COMM_PNC_READY_SLEEP COMM_PNC_PREPARE_SLEEP ComM_RequestComMode() OR ComM_Nm_UpdateERA() [ComMUser = FullCom OR (PNC bit within ERAn=1 AND ComMPNCGatewayEnabled = TRUE AND ComMPncGatewayType is set) ] /BswM_ComM_CurrentPNCMode() Nm_UpdateIRA() Channel Full Communication Request() Stop ComMPncPrepareSleepTimer ComM_EcuM_PNCWakeUpIndication() /BswM_ComM_CurrentPNCMode() Start ComMPncPrepareSleepTimer ComM_Nm_Update_EIRA() [PNC bit within EIRA = 1] /BswM_ComM_CurrentPNCMode() ComM_EcuM_WakeUpIndication() [ComMSynchronousWakeUp = TRUE] /BswM_ComM_CurrentPNCMode() Start ComMPncPrepareSleepTimer ComM_RequestComMode() OR ComM_Nm_UpdateERA() [ComMUser = NoCom AND (NOT (PNC bit within ERAn=1 AND ComMPNCGatewayEnabled = TRUE AND ComMPncGatewayType is set))] /BswM_ComM_CurrentPNCMode() Nm_UpdateIRA() Release Channel Full Communication Request ComM_RequestComMode() OR ComM_Nm_UpdateERA() [ComMUser = FullCom OR (PNC bit within ERAn=1 AND ComMPNCGatewayEnabled = TRUE AND ComMPncGatewayType is set) ] /BswM_ComM_CurrentPNCMode() Nm_UpdateIRA() Channel Full Communication Request() ComM_RequestComMode() OR ComM_Nm_UpdateERA() [ComMUser = FullCom OR (PNC bit within ERAn=1 AND ComMPNCGatewayEnabled = TRUE AND ComMPncGatewayType is set) ] /BswM_ComM_CurrentPNCMode() Nm_UpdateIRA() Channel Full Communication Request() ComM_Nm_UpdateEIRA() [PNC bit within EIRA = 0] /BswM_ComM_CurrentPNCMode() Start ComMPNCPrepareSleepTimer ComM_Nm_Update_EIRA() [PNC bit within EIRA = 1] /BswM_ComM_CurrentPNCMode() Stop ComMPncPrepareSleepTimer ComMPncPrepareSleepTimer [expired] /BswM_ComM_CurrentPNCMode() Figure 7.1: PNC State Machine
Versionen & Provenienz · Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.
Begründung & Zuweisungs-Evidenz
Cited verbatim in the snippet (deterministic citation).
Dokumenten-Herkunft & Rückverfolgbarkeit
| Spezifikations-Dokument | SWS_COMManager.pdf |
|---|---|
| Dokumentseite | Seite 35 |
| Ziel-Modul | comm (classic) |
| Ziel-Anforderung | SWS_ComM_00987 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.95 |