DEENESPTFRRUARHIKOZHNL

FlexRay Network Management (FrNm)

ModulFrNm (FlexRay Network Management)
BSW-Modul-ID32
Standard-Header#include "FrNm.h"
SWS-SpezifikationAUTOSAR_CP_SWS_FlexRayNetworkManagement.pdf, AUTOSAR_SWS_FlexRayNetworkManagement.pdf, AUTOSAR_SWS_FlexrayNM.pdf
Umfang97 Records · 19 Snippets
ClusterFlexRay-Stack

FlexRay Network Management (FrNm)

AUTOSAR Classic Communication Services-Modul FlexRay Network Management (FrNm, Spezifikation: AUTOSAR_CP_SWS_FlexRayNetworkManagement.pdf, AUTOSAR_SWS_FlexRayNetworkManagement.pdf, AUTOSAR_SWS_FlexrayNM.pdf).

Funktionen — Übersicht

Typen — Übersicht

Anforderungen — Übersicht

Funktionen & Typen — Detailansicht

función FrNm_Init [SWS_FrNm_00236] 📄 PDF

void FrNm_Init(const FrNm_ConfigType* nmConfigPtr);

Initializes the Flex Ray NM and its internal state machine.

función FrNm_NetworkRequest [SWS_FrNm_00238] 📄 PDF

Std_ReturnType FrNm_NetworkRequest(NetworkHandleType NetworkHandle);

This function requests the network because the ECU needs to communicate on the bus. Network state shall be changed to 'requested'.

función FrNm_NetworkRelease [SWS_FrNm_00239] 📄 PDF

Std_ReturnType FrNm_NetworkRelease(NetworkHandleType NetworkHandle);

This function releases the network because the ECU doesn't have to communicate on the bus. Network state shall be changed to 'released'.

función FrNm_SetUserData [SWS_FrNm_00240] 📄 PDF

Std_ReturnType FrNm_SetUserData(NetworkHandleType NetworkHandle, const uint8* nmUserDataPtr);

This function sets user data for NM - Data transmitted next on the bus.

función FrNm_GetUserData [SWS_FrNm_00241] 📄 PDF

Std_ReturnType FrNm_GetUserData(NetworkHandleType NetworkHandle, uint8* nmUserDataPtr);

This function gets user da ta from the last successfully received NM message.

función FrNm_RepeatMessageRequest [SWS_FrNm_00243] 📄 PDF

Std_ReturnType FrNm_RepeatMessageRequest(NetworkHandleType NetworkHandle);

This function causes a Repeat Message Request to be transmitted next on the bus.

función FrNm_GetNodeIdentifier [SWS_FrNm_00244] 📄 PDF

Std_ReturnType FrNm_GetNodeIdentifier(NetworkHandleType NetworkHandle, uint8* nmNodeIdPtr);

This function gets the node identifier from the last successfully received NM - message.

función FrNm_GetLocalNodeIdentifier [SWS_FrNm_00245] 📄 PDF

Std_ReturnType FrNm_GetLocalNodeIdentifier(NetworkHandleType NetworkHandle, uint8* nmNodeIdPtr);

This function gets the node identifier configured for the local node.

función FrNm_RequestBusSynchronization [SWS_FrNm_00246] 📄 PDF

Std_ReturnType FrNm_RequestBusSynchronization(NetworkHandleType NetworkHandle);

This function has no functionality - the service is provided only to be compatible to future extensions and to be compatible to the CAN - NM interface.

función FrNm_CheckRemoteSleepIndication [SWS_FrNm_00247] 📄 PDF

Std_ReturnType FrNm_CheckRemoteSleepIndication(NetworkHandleType NetworkHandle, boolean* nmRemoteSleepIndPtr);

This function checks if remote sleep indication has taken place or not.

función FrNm_GetState [SWS_FrNm_00248] 📄 PDF

Std_ReturnType FrNm_GetState(NetworkHandleType NetworkHandle, Nm_StateType* nmStatePtr, Nm_ModeType* nmModePtr);

This function returns the state and the mode of the network management.

función FrNm_TriggerTransmit [SWS_FrNm_00252] 📄 PDF

Std_ReturnType FrNm_TriggerTransmit(PduIdType TxPduId, PduInfoType* PduInfoPtr);

Within this API, the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and upd ate the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.

función FrNm_MainFunction_<FrNmName> [SWS_FrNm_00255] 📄 PDF

void FrNm_MainFunction_< Fr Nm Channel.Short Name>(void);

Main function of Flex Ray NM.

función FrNm_EnableCommunication [SWS_FrNm_00387] 📄 PDF

Std_ReturnType FrNm_EnableCommunication(NetworkHandleType nmChannelHandle);

Enable the NM PDU transmission ability due to a ISO14229 Communication Control (28hex) service

función FrNm_DisableCommunication [SWS_FrNm_00390] 📄 PDF

Std_ReturnType FrNm_DisableCommunication(NetworkHandleType nmChannelHandle);

Disable the NM PDU transmission ability due to a ISO14229 Communication Control (28hex) service

función FrNm_StartupError [SWS_FrNm_00393] 📄 PDF

void FrNm_StartupError(NetworkHandleType NetworkHandle);

This function is called by the Fr SM when synchronization of the Flex Ray cluster could not be achieved.

función FrNm_TxConfirmation [SWS_FrNm_00460] 📄 PDF

void FrNm_TxConfirmation(PduIdType TxPduId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

función <Nm_Network Start Indication> [SWS_FrNm_00470] 📄 PDF

void <Nm_Network Start Indication>(NetworkHandleType nmNetworkHandle);

This API service of an upper layer Nm is called by the Flex Ray Network Management to indicate to this upper layer BSW module that a NM - message was successfully received and the Fr Nm is in the Bus - Sleep Mode.

función <Nm_Pdu RxIndication> [SWS_FrNm_00471] 📄 PDF

void <Nm_Pdu RxIndication>(NetworkHandleType nmNetworkHandle);

This API service of an upper NM is called by the Flex Ray Network Management to indicate to this upper layer BSW module Nm that a NM - message was successfully received (see FRNM190) This function is only available on the definition of _ PDU_ RX_ INDICATION_ ENABLED

función <UL_Remote Sleep Cancellation> [SWS_FrNm_00472] 📄 PDF

void <UL_Remote Sleep Cancellation>(NetworkHandleType nmNetworkHandle);

This API service of an upper layer BSW module <UL> (e.g. Com M) is called by the Flex Ray Network Management to indicate to this upper layer BSW module that the "Remote Sleep" has been cancelled as an NM - message with an indication to keep the bus awake has been received and the Remote Sleep indication has been previously detected .

función <UL_Remote Sleep Indication> [SWS_FrNm_00473] 📄 PDF

void <UL_Remote Sleep Indication>(NetworkHandleType nmNetworkHandle);

This API service of an upper layer BSW module <UL> (e.g. Com M) is called by the Flex Ray Network Management to indicate to this upper layer BSW module that all other nodes in the cluster are ready to sleep (the 'Remote Sleep Indication'), as no NM - messages with an indication to keep the bus awake are rece ived in the Normal Operation State for a configurable amount of time determined by the FRNM_ REMOTE_ SLEEP_ IND_ TIME (configuration parameter).

función <UL_Transmission Timeout Exception> [SWS_FrNm_00474] 📄 PDF

void <UL_Transmission Timeout Exception>(NetworkHandleType nmNetworkHandle);

This API service of an upper layer BSW module <UL> is called by the Flex Ray Network Management when Fr If calls Fr Nm_ Tx Confirmation with result E_ NOT_ OK to indicate to this upper layer BSW module that NM - message could not be transmitted successfully.

función FrNm_RequestSynchronizedPncShutdown [SWS_FrNm_91003] 📄 PDF

Std_ReturnType FrNm_RequestSynchronizedPncShutdown(NetworkHandleType nmChannelHandle, PNCHandleType pncId);

Requests transmission of a NM - PDU with PNSR bit set to 1 (PN shutdown message) Tags: atp.Status=draft

función FrNm_PnLearningRequest [SWS_FrNm_91005] 📄 PDF

Std_ReturnType FrNm_PnLearningRequest(NetworkHandleType NetworkHandle);

Set Repeat Message Request Bit and Partial Network Learning Bit for NM messa ges transmitted next on the bus. This will force all nodes to enter the PNC Learning Phase. This is needed for the optional Dynamic PNC - to - channel - mapping feature. Tags: atp.Status=draft

función FrNm_ActivateTxPnShutdownMsg [SWS_FrNm_91006] 📄 PDF

Std_ReturnType FrNm_ActivateTxPnShutdownMsg(NetworkHandleType nmChannelHandle);

NM indicate to activate the transmission of PN shutdown messages on the given NM - Channel. This results in transmission of a NM - PDU wi th PNSR bit set to 1 (PN shutdown message).

función FrNm_DeactivateTxPnShutdownMsg [SWS_FrNm_91007] 📄 PDF

Std_ReturnType FrNm_DeactivateTxPnShutdownMsg(NetworkHandleType nmChannelHandle);

NM indicate to deactive the transmission of PN shutdown messages on the given NM - Channel. This result in transmission of a usual NM - PDUs with PNSR bit set to 0.

requirement SWS_FrNm_00010 [SWS_FrNm_00010] 📄 PDF

[SWS_FrNm_00010] ⌈The FrNm module shall call the FlexRay Interface function FrIf_Transmit to transmit NM-Vote and NM-Data if the transmission of cyclic NM- messages is started.⌋() Note: The FlexRay Interface module shall call the FrNm module function FrNm_Tx- Confirmation with E_OK when a NM-message is successfully transmitted and a transmit confirmation is supported and configured within the FlexRay Interface. Note: The FlexRay Interface module shall call the FrNm module function FrNm_- RxIndication when a NM-message is received. It is up to the implementation as to how the FrNm module is to handle the data from the NM-message. It can be im- mediately processed (to reduce the memory consumption), or it can be stored to be available to be processed (to reduce computing time).

requirement SWS_FrNm_00013 [SWS_FrNm_00013] 📄 PDF

[SWS_FrNm_00013] ⌈The function FrNm_RxIndication shall handle the data from an NM-message–this means that the function shall copy the received FlexRay NM PDU and store it locally associated with the received FlexRay NM PDU ID.⌋

requirement SWS_FrNm_00021 [SWS_FrNm_00021] 📄 PDF

Type of error Related error code Error value API service used without module initialization FRNM_ E_ UNINIT 0x01 API service called with invalid channel handle FRNM_ E_ INVALID_ CHANNEL 0x02 API service called with Invalid pointer FRNM_ E_ PARAM_ POINTER 0x03 API service called with invalid PDU ID as input parameter FRNM_ E_ PDU_ ID_ INVALID 0x04 Fr Nm initialization has failed, e.g. selected configuration set doesn't exist FRNM_ E_ INIT_ FAILED 0x05

requirement SWS_FrNm_00043 [SWS_FrNm_00043] 📄 PDF

[SWS_FrNm_00043] Upstream requirements: RS_Nm_02503 ⌈If user data handling is enabled for the FrNm module, then the function FrNm_Se- tUserData shall set the user data.⌋

requirement SWS_FrNm_00044 [SWS_FrNm_00044] 📄 PDF

[SWS_FrNm_00044] Upstream requirements: RS_Nm_02504 ⌈If user data handling is enabled for the FrNm module, then the function FrNm_Ge- tUserData shall provide the user data from the last received NM-Data PDU.⌋

requirement SWS_FrNm_00046 [SWS_FrNm_00046] 📄 PDF

[SWS_FrNm_00046] ⌈The function FrNm_GetLocalNodeIdentifier shall pro- vide the node identifier configured for the local host node (FrNmNodeId) if FrNm- SourceNodeIdentifierEnabled is set to TRUE.⌋

requirement SWS_FrNm_00047 [SWS_FrNm_00047] 📄 PDF

[SWS_FrNm_00047] Upstream requirements: RS_Nm_02506 ⌈The function FrNm_GetNodeIdentifier shall provide the node identifier from the most recently received NM-message if FrNmSourceNodeIdentifierEnabled is set to TRUE.⌋

requirement SWS_FrNm_00051 [SWS_FrNm_00051] 📄 PDF

If DET is enabl ed and the FlexRay NM API service is call ed with an invalid handle, then the co rresponding function shall report FRNM_E_INVALID_CHANNEL error to the De fault Error Tracer and it shall return E_NOT_OK.

requirement SWS_FrNm_00056 [SWS_FrNm_00056] 📄 PDF

Development errors shall not be returned by API functions. In case of a development error the corresponding API function shall return E_NOT_OK , if appl icable.

requirement SWS_FrNm_00057 [SWS_FrNm_00057] 📄 PDF

Production errors shall not be returned by API functions. In case of a production error the corresponding API function shall return E_NOT_OK , when applicable.

requirement SWS_FrNm_00104 [SWS_FrNm_00104] 📄 PDF

[SWS_FrNm_00104] Upstream requirements: RS_Nm_00050 ⌈The function FrNm_GetState shall provide consistent information about the current state and the current mode of the NM state machine.⌋ Note: Consistency between the provided values and the current values of the state and mode should be ensured.

requirement SWS_FrNm_00138 [SWS_FrNm_00138] 📄 PDF

[SWS_FrNm_00138] ⌈The function FrNm_PassiveStartUp shall trigger the transi- tion from Bus-Sleep Mode to the Network Mode in Repeat Message State (via the Synchronize State).⌋

requirement SWS_FrNm_00147 [SWS_FrNm_00147] 📄 PDF

[SWS_FrNm_00147] the FlexRay NM is capable of sending NM-Vote and NM-Data independently. Therefore several corresponding PDU formats exist for the NM-Vote and for the NM-Data. To also support an associated transmission of NM- Vote and NM-Data in the static segment the NM-Data PDU contains an optional Voting Bit.

requirement SWS_FrNm_00168 [SWS_FrNm_00168] 📄 PDF

[SWS_FrNm_00168]). Note: The AUTOSAR OS [11] provides the method of Schedule Tables which can be synchronized with a Global Time. These could be used to fulfill the FlexRay NM exe- cution requirements. The AUTOSAR FlexRay NM shall try to use the second absolute timer whenever possible as race conditions might occur between the FlexRay NM ac- cess to the first absolute timer and the FlexRay Interface Job List execution function access to the first absolute timer.

requirement SWS_FrNm_00174 [SWS_FrNm_00174] 📄 PDF

[SWS_FrNm_00174] ⌈The FrNm module shall support the function FrNm_Request- BusSynchronization by returning E_OK without executing any functionality.⌋() Rationale: As the FlexRay Bus is a synchronous bus, the FrNm cannot influence the bus synchronization. This functionality is handled by the FlexRay Controller and FlexRay Driver. Since this function might be used in future extensions (e.g., Gateways) this function shall remain available.

requirement SWS_FrNm_00185 [SWS_FrNm_00185] 📄 PDF

[SWS_FrNm_00185] Upstream requirements: RS_Nm_02509 ⌈The FlexRay NM function FrNm_CheckRemoteSleepIndication shall provide the information about current status of Remote Sleep Indication (i.e., whether a Remote Sleep Indication has already been detected or not).⌋

requirement SWS_FrNm_00220 [SWS_FrNm_00220] 📄 PDF

[SWS_FrNm_00220]. [SWS_FrNm_00220] Upstream requirements: SRS_BSW_00429 ⌈ Module: Dependencies: Nm FlexRay NM provides services to the Generic Network Management Interface (NmIf) PduR FlexRay NM uses services of the PDU Router LSduR FlexRay NM uses services of the L-SDU Router. ▽

requirement SWS_FrNm_00225 [SWS_FrNm_00225] 📄 PDF

The FrNm module’s implementer sh all realize the FlexRay NM co ordinat i on algorithm processor independent, which means the FlexRay NM coordination algorithm shall not rely on any processor specific hardware support and thus shall be realizable on any processor architecture that is in the s cope of AUTOSAR.

requirement SWS_FrNm_00226 [SWS_FrNm_00226] 📄 PDF

[SWS_FrNm_00226] ⌈If the FlexRay NM module’s environment is calling the function FrNm_RepeatMessageRequest in "Bus Sleep Mode" or "Synchronize" no function- ality shall be executed and E_NOT_OK shall be returned.⌋

requirement SWS_FrNm_00235 [SWS_FrNm_00235] 📄 PDF

Module Header File Imported Type Com Stack_ Types Com Stack_ Types.h Network Handle Type Com Stack_ Types.h Pdu Id Type Com Stack_ Types.h Pdu Info Type Com Stack_ Types.h Pdu Length Type Nm Nm Stack_ types.h Nm _ Mode Type Nm Stack_ types.h Nm _ State Type Std Std_ Types.h Std _ Return Type Std_ Types.h Std _ Version Info Type

requirement SWS_FrNm_00256 [SWS_FrNm_00256] 📄 PDF

Fr If _ Get Global Time Fr If.h Wraps the Flex Ray Driver API function Fr_ Get Global Time(). Important Note: Fr If_ Get Global Time may be called within an exclusive area. Fr If _ Transmit Fr If.h Requests transmission of a PDU. Nm _ Bus Sleep Mode Nm.h Notification that the network management has entered Bus - Sleep Mode. Nm _ Network Mode Nm.h Notification that the network management has entered Network Mode. Nm _ Synchronize - Mode Nm.h Notification that the network management has entered Synchronize Mode. Nm _ Tx Timeout - Exception Nm.h Service to indicate that an attempt to send an NM message failed.

requirement SWS_FrNm_00257 [SWS_FrNm_00257] 📄 PDF

Det _ Report Error Det.h Service to report development errors. Fr If _ Get Nm Vector Fr If.h Derives t he Flex Ray NM Vector. Nm _ Car Wake Up - Indication Nm.h This function is called by a <Bus>Nm to indicate reception of a CWU request. Nm _ Coord Ready - To Sleep - Cancellation Nm.h Cancels an indication, when the NM Coordinator Sleep Ready bit in the Control Bit Vector is set back to 0. Nm _ Coord Ready - Nm.h Sets an indication, when the NM Coordinator Sleep Ready bit in the To Sleep Indication Control Bit Vector is set Nm _ Forward - Synchronized Pnc - Shutdown Nm.h Notification that the network management has received a PN shutdown message on a particular NM - channel. This is used to grant a nearly synchronized PNC shutdown across the entire PN topology. Nm _ Network Start - Indication N m.h Notification that a NM - message has been received in the Bus - Sleep Mode, what indicates that some nodes in the network have already entered the Network Mode. Nm _ Pdu Rx - Indication Nm.h Notification that a NM message has been received. Nm _ Pnc Bit Ve ctor - Rx Indication Nm.h Indication that a bus specific network management has received a NM message on a particular NM - channel that contain a PNC bit vector. This is used to aggregate the external PNC requests. The function evaluate if a relevant PNC reque st (PNC bit set to '1') is available in the given PNC bit vector. If a relevant PNC request is available (PNC bit passes the PNC bit vector filter), then the Relevant Pnc Request Detected Ptr refers to a boolean with value set to TRUE. Otherwise refer to b ooelan with value set to FALSE. Relevant Pnc Request Detected Ptr is evaluated by the callee <Bus>Nm module to qualify the further processing of the received NM - PDU. Nm _ Pnc Bit Vector - Tx Confirmation Nm.h Function called by <Bus> Nms to confirm the state of the transmission for the given PNC bit vector on the given NM - Channel. Nm _ Pnc Bit Vector - Tx Indication Nm.h Function called by <Bus>Nms to request the aggregated internal PNC requests for transmission within the Nm message. Nm _ Remote Sleep - Cancellation Nm.h Notification that the network management has detected that not all other nodes on the network are longer ready to enter Bus - Sleep Mode. Nm _ Remote Sleep - Indication Nm.h Notification that the network management has dete cted that all other nodes on the network are ready to enter Bus - Sleep Mode. Nm _ Repeat - Message Indication Nm.h Service to indicate that an NM message with set Repeat Message Re - quest Bit has been received. This is needed for node detection and the Dynam ic PNC - to - channel - mapping feature. Nm _ State Change - Notification Nm.h Notification that the state of the lower layer <Bus>Nm has changed. Nm _ - Synchronization - Point Nm.h Notification to the NM Coordinator functionality that this is a suitable point in time to initiate the coordinated shutdown on. Pdu R _ Fr Nm Trigger - Transmit Pdu R_ Fr Nm.h Within this API, the upper layer module (called module) shall check whether the a vailable data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr. Pdu R _ Fr Nm Tx - Confirmation Pdu R_ Fr Nm.h The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

requirement SWS_FrNm_00258 [SWS_FrNm_00258] 📄 PDF

[SWS_FrNm_00258] ⌈The function FrNm_PassiveStartUp shall initiate the Passive Startup of the FlexRay NM.⌋

requirement SWS_FrNm_00260 [SWS_FrNm_00260] 📄 PDF

[SWS_FrNm_00260] ⌈If the current state is not Bus-Sleep Mode, the function FrNm_ PassiveStartUp shall have no effect on the operation mode of the FrNm module and shall return E_NOT_OK (see [SWS_FrNm_00138]).⌋

requirement SWS_FrNm_00261 [SWS_FrNm_00261] 📄 PDF

[SWS_FrNm_00261] ⌈The function FrNm_NetworkRequest shall be only available if the configuration parameter FrNmPassiveModeEnabled is set to OFF.⌋()

requirement SWS_FrNm_00262 [SWS_FrNm_00262] 📄 PDF

[SWS_FrNm_00262] ⌈The function FrNm_NetworkRelease shall be only available if the configuration parameter FrNmPassiveModeEnabled is set to OFF.⌋

requirement SWS_FrNm_00263 [SWS_FrNm_00263] 📄 PDF

[SWS_FrNm_00263] ⌈The function FrNm_SetUserData shall be only avail- able if the configuration parameter FrNmUserDataEnabled is set as ON (see

requirement SWS_FrNm_00264 [SWS_FrNm_00264] 📄 PDF

[SWS_FrNm_00264] ⌈The function FrNm_GetUserData shall be only avail- able if the configuration parameter FrNmUserDataEnabled is set as ON (see

requirement SWS_FrNm_00269 [SWS_FrNm_00269] 📄 PDF

[SWS_FrNm_00269] ⌈The function FrNm_RequestBusSynchronization shall be only available if the configuration parameter FrNmBusSynchronizationEnabled is set as ON.⌋()

requirement SWS_FrNm_00270 [SWS_FrNm_00270] 📄 PDF

[SWS_FrNm_00270] ⌈The FrNm module and the NmIf module shall be initialized cor- rectly before the FrNm module’s environment is calling the function FrNm_CheckRe- moteSleepIndication.⌋

requirement SWS_FrNm_00271 [SWS_FrNm_00271] 📄 PDF

[SWS_FrNm_00271] ⌈The function FrNm_CheckRemoteSleepIndication shall be only available if the configuration parameter FrNmRemoteSleepIndicationEn- abled is set as ON.⌋

requirement SWS_FrNm_00276 [SWS_FrNm_00276] 📄 PDF

[SWS_FrNm_00276] ⌈The FrIf module, the LSduR module, and the FrNm module must be initialized correctly before the FrNm module’s environment calls the function FrNm_RxIndication.⌋ The function FrNm_RxIndication might be called by the FrNm module’s environ- ment in an interrupt context.

requirement SWS_FrNm_00277 [SWS_FrNm_00277] 📄 PDF

[SWS_FrNm_00277] ⌈The FrIf module, the LSduR module, and the FrNm module shall be initialized correctly before the FrNm module’s environment calls the function FrNm_TriggerTransmit.⌋ Note: The function FrNm_TriggerTransmit might be called by the FrIf via LSduR in an interrupt context.

requirement SWS_FrNm_00297 [SWS_FrNm_00297] 📄 PDF

If the FrNm performs a state change from Synchronize Mode to Network Mode and the previous state change from state Bus Sleep Mode to Sync h ronize was caused by a call of FrNm_NetworkRequest() (due to an active wakeup) and FrNmActiveWakeupBitEnabled is TRUE, the FrNm shall set the ActiveWakeupBit in the CBV

requirement SWS_FrNm_00298 [SWS_FrNm_00298] 📄 PDF

If the FrNm module leaves the Network Mode and FrNmActiveWakeupBitEnabled is TRUE, the FrNm module shall clear th e ActiveWakeupBit in the CBV .

requirement SWS_FrNm_00311 [SWS_FrNm_00311] 📄 PDF

FlexRay NM module shall provide a configuration parameter named Fr NmMainAcrossFrCycle to select adapt the behavior of the FlexRay NM MainFunction to the point in time the FlexRay NM MainFunction is executed (see Figure 7 - 3 ) .

requirement SWS_FrNm_00356 [SWS_FrNm_00356] 📄 PDF

[SWS_FrNm_00356] ⌈The state machine guards, transitions, conditions, and actions should be evaluated at most once in each execution of the FrNm_MainFunction_- <Fr Nm Channel.Short Name>.⌋ 2part of the RTE module

requirement SWS_FrNm_00375 [SWS_FrNm_00375] 📄 PDF

[SWS_FrNm_00375] ⌈The FrNm module shall retrieve the current FlexRay communi- cation cycle via the API FrIf_GetGlobalTime().⌋()

requirement SWS_FrNm_00388 [SWS_FrNm_00388] 📄 PDF

[SWS_FrNm_00388] ⌈The service FrNm_EnableCommunication shall return E_- NOT_OK, if the current mode is not Network Mode.⌋

requirement SWS_FrNm_00389 [SWS_FrNm_00389] 📄 PDF

[SWS_FrNm_00389] ⌈If the module operates in passive mode (FrNmPassiveMod- eEnabled), then the service FrNm_EnableCommunication shall have no effects and directly return E_NOT_OK.⌋

requirement SWS_FrNm_00391 [SWS_FrNm_00391] 📄 PDF

[SWS_FrNm_00391] ⌈The service FrNm_DisableCommunication shall return E_- NOT_OK if the current mode is not Network Mode.⌋

requirement SWS_FrNm_00392 [SWS_FrNm_00392] 📄 PDF

[SWS_FrNm_00392] ⌈If the module operates in passive mode (FrNmPassiveMod- eEnabled), then the service FrNm_DisableCommunication shall have no effect and directly return E_NOT_OK.⌋

requirement SWS_FrNm_00394 [SWS_FrNm_00394] 📄 PDF

OBSOLETE replaced by SWS_ FrNm_00549 If FrNmComUserData Support is set to TRUE FrNm shall call PduR_FrNmTriggerTransmit within the function FrNm_TriggerTransmit called by the FrIf.

requirement SWS_FrNm_00446 [SWS_FrNm_00446] 📄 PDF

If FrNmComUserDataSupport is enabled the API FrNm_SetUserData shall not be available.

requirement SWS_FrNm_00447 [SWS_FrNm_00447] 📄 PDF

When FrNm_SetUserData is called the FrNm module shall set the Ne twork Management user data for the Network Management PDUs transmited next on the bus.

requirement SWS_FrNm_00450 [SWS_FrNm_00450] 📄 PDF

When PduR_FrNmTriggerTransmit () returns E_NOT_OK, the FrNm shall use the last transmitted value for NmUserData.

requirement SWS_FrNm_00452 [SWS_FrNm_00452] 📄 PDF

If FrNmPn Enabled is FALSE , FrNm shall set the value of the P N I bit to 0 in transmitted NM PDUs.

requirement SWS_FrNm_00453 [SWS_FrNm_00453] 📄 PDF

OBSOLETE The range of the PN request information in the NM user data is defined by the parameters FrNmPnInfoOffset and FrNmPnInfoLength . Each b it in the PN range shall have the following meaning: Bit value Meaning: 0 - > The PN is not requested 1 - > The PN is requested Note : FrNmPnInfoOffset + FrNmPnInfoLength shall not exceed the Length of the NM PDU.

requirement SWS_FrNm_00461 [SWS_FrNm_00461] 📄 PDF

OBSOLETE If FrNmPnEiraCalcEnabled is TRUE and FrNmPnEraCalcEnabled is TRUE , the PN status information has to be stored separately for both, the EIRA and ERA information (compare SWS_FrNm_00421 and SWS_FrNm_00432 ) .

requirement SWS_FrNm_00467 [SWS_FrNm_00467] 📄 PDF

The e valuation of the condition RepetitionCycleCompleted and thus the generation of the RepetitionCycleCompleted event (see Figure 7 - 1 ) shall be subject to the following rules: a) If FrNmMainAcrossFrCycle is set to FALSE , then a RepetitionCycleCompleted event shall be generated in the last FlexRay communication cycle of the repetition cycle after we receive all the votes. b) If FrNmMainAcrossFrCycle is set to TRUE , then a RepetitionCycleCompleted event shall be generated if a repetition cycle boundary has been crossed since the previous call of the FlexRay NM MainFunction execution before any vote is transmitted .

requirement SWS_FrNm_00475 [SWS_FrNm_00475] 📄 PDF

When the F rNm module has entered Synchronize Mode, it shall notify the Generic NM Interface module by calling Nm_SynchronizeMode .

requirement SWS_FrNm_00491 [SWS_FrNm_00491] 📄 PDF

If function FrNm_PnLearningRequest is called on a channel where FrNmDynamicPncToCh annelMappingEnabled is set to TRUE and FrNm is in the Network Mode the FrNm module shall set the Repeat Message Bit and the Partial Network Learning Bit in the CBV to 1 on this channel and change to or restart the Repeat Message State at the end of a NM Re petition Cycle.

requirement SWS_FrNm_00492 [SWS_FrNm_00492] 📄 PDF

If the bits Partial Network Learning and Repeat Message Request both are received on a channel where FrNmDynamicPncToChannelMappingEnabled is set to TRUE and FrNm is in the Network Mode the FrNm module shall set the Parti al Network Learning Bit in the CBV to 1 on this channel and change to or restart the Repeat Message State at the end of a NM Repetition Cycle.

requirement SWS_FrNm_00493 [SWS_FrNm_00493] 📄 PDF

If FrNmDynamicPncToChannelMappingSupport is set to TRUE FrNm shall clear the Partial Network Learning Bit when leaving the Repeat Message State.

requirement SWS_FrNm_00495 [SWS_FrNm_00495] 📄 PDF

[SWS_FrNm_00495] ⌈If the function FrNm_PnLearningRequest is called in Syn- chronize Mode or Bus Sleep Mode no functionality shall be executed and E_NOT_OK shall be returned.⌋

requirement SWS_FrNm_00496 [SWS_FrNm_00496] 📄 PDF

[SWS_FrNm_00496] ⌈The function FrNm_PnLearningRequest shall only be avail- able if FrNmDynamicPncToChannelMappingSupport is set to TRUE.⌋

requirement SWS_FrNm_00549 [SWS_FrNm_00549] 📄 PDF

[SWS_FrNm_00549] ⌈If FrNm_TriggerTransmit is called and FrNmComUser- DataSupport is enabled, the FrNm shall collect the NM User Data from the refer- enced NM I-PDU by calling PduR_FrNmTriggerTransmit and copy the data to the user data range of the NM-PDU.⌋

requirement SWS_FrNm_00565 [SWS_FrNm_00565] 📄 PDF

[SWS_FrNm_00565]). This ensure a common handling independent of FrIfImmediate setting (TRUE or FALSE).

requirement SWS_FrNm_00568 [SWS_FrNm_00568] 📄 PDF

[SWS_FrNm_00568] Upstream requirements: RS_Nm_02572 ⌈If FrNmSynchronizedPncShutdownEnabled is set to TRUE the FrNm implemen- tation shall provide the API FrNm_ActivateTxPnShutdownMsg.⌋

requirement SWS_FrNm_00569 [SWS_FrNm_00569] 📄 PDF

[SWS_FrNm_00569] Upstream requirements: RS_Nm_02572 ⌈If FrNmSynchronizedPncShutdownEnabled is set to TRUE and FrNm_Acti- vateTxPnShutdownMsg is called with a valid NM-Channel (nmChannelHandle), then the FrNm module shall set the PNSR bit in the CBV to 1 on the given NM-channel and return with E_OK.⌋

requirement SWS_FrNm_00570 [SWS_FrNm_00570] 📄 PDF

[SWS_FrNm_00570] Upstream requirements: RS_Nm_02572 ⌈If FrNmSynchronizedPncShutdownEnabled is set to TRUE the FrNm implemen- tation shall provide the API FrNm_DeactivateTxPnShutdownMsg.⌋

requirement SWS_FrNm_00572 [SWS_FrNm_00572] 📄 PDF

[SWS_FrNm_00572] Upstream requirements: RS_Nm_02572 ⌈If FrNmSynchronizedPncShutdownEnabled is set to TRUE and FrNm_Deacti- vateTxPnShutdownMsg is called with a valid NM-Channel (nmChannelHandle), then the FrNm module shall set PNSR bit in the CBV to 0 on the given NM-channel and return with E_OK.⌋

requirement SWS_FrNm_91002 [SWS_FrNm_91002] 📄 PDF

Type of error Related error code Error value A NM message with PN Shutdown Request Bit was received on a channel that is actively coordinated by the Com M PNC Ga teway FRNM_ E_ INVALID_ PN_ SYNC_ SHUTDOWN_ REQUEST 0x20

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_FrNm
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_FrNm@rel:R20-11#cc8d89a1
Content hash
cc8d89a1
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_FlexRayNetworkManagement.pdf#nameddest=SWS_FrNm_00236

Mapa de temas

Inicialización y estado

2

Vista de detalle

Selecciona una entrada en el índice.

Inicialización y estado

Returns the version information.

void FrNm_GetVersionInfo(Std_VersionInfoType* NmVerInfoPtr);
FrNm_Init función

Initializes the Flex Ray NM and its internal state machine.

void FrNm_Init(const FrNm_ConfigType* nmConfigPtr);

Servicios

NM indicate to activate the transmission of PN shutdown messages on the given NM - Channel. This results in transmission of a NM - PDU wi th PNSR bit set to 1 (PN shutdown message).

Std_ReturnType FrNm_ActivateTxPnShutdownMsg(NetworkHandleType nmChannelHandle);

This function checks if remote sleep indication has taken place or not.

Std_ReturnType FrNm_CheckRemoteSleepIndication(NetworkHandleType NetworkHandle, boolean* nmRemoteSleepIndPtr);

NM indicate to deactive the transmission of PN shutdown messages on the given NM - Channel. This result in transmission of a usual NM - PDUs with PNSR bit set to 0.

Std_ReturnType FrNm_DeactivateTxPnShutdownMsg(NetworkHandleType nmChannelHandle);

Disable the NM PDU transmission ability due to a ISO14229 Communication Control (28hex) service

Std_ReturnType FrNm_DisableCommunication(NetworkHandleType nmChannelHandle);

Enable the NM PDU transmission ability due to a ISO14229 Communication Control (28hex) service

Std_ReturnType FrNm_EnableCommunication(NetworkHandleType nmChannelHandle);

This function gets the node identifier configured for the local node.

Std_ReturnType FrNm_GetLocalNodeIdentifier(NetworkHandleType NetworkHandle, uint8* nmNodeIdPtr);

This function gets the node identifier from the last successfully received NM - message.

Std_ReturnType FrNm_GetNodeIdentifier(NetworkHandleType NetworkHandle, uint8* nmNodeIdPtr);

Gets PDU data.

Std_ReturnType FrNm_GetPduData(NetworkHandleType NetworkHandle, uint8* nmPduData);
FrNm_GetState función

This function returns the state and the mode of the network management.

Std_ReturnType FrNm_GetState(NetworkHandleType NetworkHandle, Nm_StateType* nmStatePtr, Nm_ModeType* nmModePtr);

This function gets user da ta from the last successfully received NM message.

Std_ReturnType FrNm_GetUserData(NetworkHandleType NetworkHandle, uint8* nmUserDataPtr);

This function releases the network because the ECU doesn't have to communicate on the bus. Network state shall be changed to 'released'.

Std_ReturnType FrNm_NetworkRelease(NetworkHandleType NetworkHandle);

This function requests the network because the ECU needs to communicate on the bus. Network state shall be changed to 'requested'.

Std_ReturnType FrNm_NetworkRequest(NetworkHandleType NetworkHandle);

Initiates the Passive Startup of the Flex Ray NM.

Std_ReturnType FrNm_PassiveStartUp(NetworkHandleType NetworkHandle);

Set Repeat Message Request Bit and Partial Network Learning Bit for NM messa ges transmitted next on the bus. This will force all nodes to enter the PNC Learning Phase. This is needed for the optional Dynamic PNC - to - channel - mapping feature. Tags: atp.Status=draft

Std_ReturnType FrNm_PnLearningRequest(NetworkHandleType NetworkHandle);

This function causes a Repeat Message Request to be transmitted next on the bus.

Std_ReturnType FrNm_RepeatMessageRequest(NetworkHandleType NetworkHandle);

This function has no functionality - the service is provided only to be compatible to future extensions and to be compatible to the CAN - NM interface.

Std_ReturnType FrNm_RequestBusSynchronization(NetworkHandleType NetworkHandle);

Requests transmission of a NM - PDU with PNSR bit set to 1 (PN shutdown message) Tags: atp.Status=draft

Std_ReturnType FrNm_RequestSynchronizedPncShutdown(NetworkHandleType nmChannelHandle, PNCHandleType pncId);

Set the NM Coordinator Sleep Ready bit in t he Control Bit Vector

Std_ReturnType FrNm_SetSleepReadyBit(NetworkHandleType nmChannelHandle, boolean nmSleepReadyBit);

This function sets user data for NM - Data transmitted next on the bus.

Std_ReturnType FrNm_SetUserData(NetworkHandleType NetworkHandle, const uint8* nmUserDataPtr);

This function is called by the Fr SM when synchronization of the Flex Ray cluster could not be achieved.

void FrNm_StartupError(NetworkHandleType NetworkHandle);
FrNm_Transmit función

Requests transmission of a PDU.

Std_ReturnType FrNm_Transmit(PduIdType TxPduId, const PduInfoType* PduInfoPtr);

Callbacks

Indication of a receive d PDU from a lower layer communication interface module.

void FrNm_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr);

Within this API, the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and upd ate the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.

Std_ReturnType FrNm_TriggerTransmit(PduIdType TxPduId, PduInfoType* PduInfoPtr);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

void FrNm_TxConfirmation(PduIdType TxPduId, Std_ReturnType result);

Callouts e interfaces esperadas

Main function of Flex Ray NM.

void FrNm_MainFunction_< Fr Nm Channel.Short Name>(void);

This API service of an upper layer Nm is called by the Flex Ray Network Management to indicate to this upper layer BSW module that a NM - message was successfully received and the Fr Nm is in the Bus - Sleep Mode.

void <Nm_Network Start Indication>(NetworkHandleType nmNetworkHandle);

This API service of an upper NM is called by the Flex Ray Network Management to indicate to this upper layer BSW module Nm that a NM - message was successfully received (see FRNM190) This function is only available on the definition of _ PDU_ RX_ INDICATION_ ENABLED

void <Nm_Pdu RxIndication>(NetworkHandleType nmNetworkHandle);

This API service of an upper layer BSW module <UL> (e.g. Com M) is called by the Flex Ray Network Management to indicate to this upper layer BSW module that the "Remote Sleep" has been cancelled as an NM - message with an indication to keep the bus awake has been received and the Remote Sleep indication has been previously detected .

void <UL_Remote Sleep Cancellation>(NetworkHandleType nmNetworkHandle);

This API service of an upper layer BSW module <UL> (e.g. Com M) is called by the Flex Ray Network Management to indicate to this upper layer BSW module that all other nodes in the cluster are ready to sleep (the 'Remote Sleep Indication'), as no NM - messages with an indication to keep the bus awake are rece ived in the Normal Operation State for a configurable amount of time determined by the FRNM_ REMOTE_ SLEEP_ IND_ TIME (configuration parameter).

void <UL_Remote Sleep Indication>(NetworkHandleType nmNetworkHandle);

This API service of an upper layer BSW module <UL> is called by the Flex Ray Network Management when Fr If calls Fr Nm_ Tx Confirmation with result E_ NOT_ OK to indicate to this upper layer BSW module that NM - message could not be transmitted successfully.

void <UL_Transmission Timeout Exception>(NetworkHandleType nmNetworkHandle);

Tipos

Contains configuration parameters.

Requisitos

SWS_FrNm_00010 requirement

[SWS_FrNm_00010] ⌈The FrNm module shall call the FlexRay Interface function FrIf_Transmit to transmit NM-Vote and NM-Data if the transmission of cyclic NM- messages is started.⌋() Note: The FlexRay Interface module shall call the FrNm module function FrNm_Tx- Confirmation with E_OK when a NM-message is successfully transmitted and a transmit confirmation is supported and configured within the FlexRay Interface. Note: The FlexRay Interface module shall call the FrNm module function FrNm_- RxIndication when a NM-message is received. It is up to the implementation as to how the FrNm module is to handle the data from the NM-message. It can be im- mediately processed (to reduce the memory consumption), or it can be stored to be available to be processed (to reduce computing time).

SWS_FrNm_00013 requirement

[SWS_FrNm_00013] ⌈The function FrNm_RxIndication shall handle the data from an NM-message–this means that the function shall copy the received FlexRay NM PDU and store it locally associated with the received FlexRay NM PDU ID.⌋

SWS_FrNm_00021 requirement

Type of error Related error code Error value API service used without module initialization FRNM_ E_ UNINIT 0x01 API service called with invalid channel handle FRNM_ E_ INVALID_ CHANNEL 0x02 API service called with Invalid pointer FRNM_ E_ PARAM_ POINTER 0x03 API service called with invalid PDU ID as input parameter FRNM_ E_ PDU_ ID_ INVALID 0x04 Fr Nm initialization has failed, e.g. selected configuration set doesn't exist FRNM_ E_ INIT_ FAILED 0x05

SWS_FrNm_00043 requirement

[SWS_FrNm_00043] Upstream requirements: RS_Nm_02503 ⌈If user data handling is enabled for the FrNm module, then the function FrNm_Se- tUserData shall set the user data.⌋

SWS_FrNm_00044 requirement

[SWS_FrNm_00044] Upstream requirements: RS_Nm_02504 ⌈If user data handling is enabled for the FrNm module, then the function FrNm_Ge- tUserData shall provide the user data from the last received NM-Data PDU.⌋

SWS_FrNm_00046 requirement

[SWS_FrNm_00046] ⌈The function FrNm_GetLocalNodeIdentifier shall pro- vide the node identifier configured for the local host node (FrNmNodeId) if FrNm- SourceNodeIdentifierEnabled is set to TRUE.⌋

SWS_FrNm_00047 requirement

[SWS_FrNm_00047] Upstream requirements: RS_Nm_02506 ⌈The function FrNm_GetNodeIdentifier shall provide the node identifier from the most recently received NM-message if FrNmSourceNodeIdentifierEnabled is set to TRUE.⌋

SWS_FrNm_00051 requirement

If DET is enabl ed and the FlexRay NM API service is call ed with an invalid handle, then the co rresponding function shall report FRNM_E_INVALID_CHANNEL error to the De fault Error Tracer and it shall return E_NOT_OK.

SWS_FrNm_00056 requirement

Development errors shall not be returned by API functions. In case of a development error the corresponding API function shall return E_NOT_OK , if appl icable.

SWS_FrNm_00057 requirement

Production errors shall not be returned by API functions. In case of a production error the corresponding API function shall return E_NOT_OK , when applicable.

SWS_FrNm_00077 requirement

[SWS_FrNm_00077]).⌋

SWS_FrNm_00104 requirement

[SWS_FrNm_00104] Upstream requirements: RS_Nm_00050 ⌈The function FrNm_GetState shall provide consistent information about the current state and the current mode of the NM state machine.⌋ Note: Consistency between the provided values and the current values of the state and mode should be ensured.

SWS_FrNm_00138 requirement

[SWS_FrNm_00138] ⌈The function FrNm_PassiveStartUp shall trigger the transi- tion from Bus-Sleep Mode to the Network Mode in Repeat Message State (via the Synchronize State).⌋

SWS_FrNm_00147 requirement

[SWS_FrNm_00147] the FlexRay NM is capable of sending NM-Vote and NM-Data independently. Therefore several corresponding PDU formats exist for the NM-Vote and for the NM-Data. To also support an associated transmission of NM- Vote and NM-Data in the static segment the NM-Data PDU contains an optional Voting Bit.

SWS_FrNm_00168 requirement

[SWS_FrNm_00168]). Note: The AUTOSAR OS [11] provides the method of Schedule Tables which can be synchronized with a Global Time. These could be used to fulfill the FlexRay NM exe- cution requirements. The AUTOSAR FlexRay NM shall try to use the second absolute timer whenever possible as race conditions might occur between the FlexRay NM ac- cess to the first absolute timer and the FlexRay Interface Job List execution function access to the first absolute timer.

SWS_FrNm_00174 requirement

[SWS_FrNm_00174] ⌈The FrNm module shall support the function FrNm_Request- BusSynchronization by returning E_OK without executing any functionality.⌋() Rationale: As the FlexRay Bus is a synchronous bus, the FrNm cannot influence the bus synchronization. This functionality is handled by the FlexRay Controller and FlexRay Driver. Since this function might be used in future extensions (e.g., Gateways) this function shall remain available.

SWS_FrNm_00185 requirement

[SWS_FrNm_00185] Upstream requirements: RS_Nm_02509 ⌈The FlexRay NM function FrNm_CheckRemoteSleepIndication shall provide the information about current status of Remote Sleep Indication (i.e., whether a Remote Sleep Indication has already been detected or not).⌋

SWS_FrNm_00220 requirement

[SWS_FrNm_00220]. [SWS_FrNm_00220] Upstream requirements: SRS_BSW_00429 ⌈ Module: Dependencies: Nm FlexRay NM provides services to the Generic Network Management Interface (NmIf) PduR FlexRay NM uses services of the PDU Router LSduR FlexRay NM uses services of the L-SDU Router. ▽

SWS_FrNm_00225 requirement

The FrNm module’s implementer sh all realize the FlexRay NM co ordinat i on algorithm processor independent, which means the FlexRay NM coordination algorithm shall not rely on any processor specific hardware support and thus shall be realizable on any processor architecture that is in the s cope of AUTOSAR.

SWS_FrNm_00226 requirement

[SWS_FrNm_00226] ⌈If the FlexRay NM module’s environment is calling the function FrNm_RepeatMessageRequest in "Bus Sleep Mode" or "Synchronize" no function- ality shall be executed and E_NOT_OK shall be returned.⌋

SWS_FrNm_00235 requirement

Module Header File Imported Type Com Stack_ Types Com Stack_ Types.h Network Handle Type Com Stack_ Types.h Pdu Id Type Com Stack_ Types.h Pdu Info Type Com Stack_ Types.h Pdu Length Type Nm Nm Stack_ types.h Nm _ Mode Type Nm Stack_ types.h Nm _ State Type Std Std_ Types.h Std _ Return Type Std_ Types.h Std _ Version Info Type

SWS_FrNm_00256 requirement

Fr If _ Get Global Time Fr If.h Wraps the Flex Ray Driver API function Fr_ Get Global Time(). Important Note: Fr If_ Get Global Time may be called within an exclusive area. Fr If _ Transmit Fr If.h Requests transmission of a PDU. Nm _ Bus Sleep Mode Nm.h Notification that the network management has entered Bus - Sleep Mode. Nm _ Network Mode Nm.h Notification that the network management has entered Network Mode. Nm _ Synchronize - Mode Nm.h Notification that the network management has entered Synchronize Mode. Nm _ Tx Timeout - Exception Nm.h Service to indicate that an attempt to send an NM message failed.

SWS_FrNm_00257 requirement

Det _ Report Error Det.h Service to report development errors. Fr If _ Get Nm Vector Fr If.h Derives t he Flex Ray NM Vector. Nm _ Car Wake Up - Indication Nm.h This function is called by a <Bus>Nm to indicate reception of a CWU request. Nm _ Coord Ready - To Sleep - Cancellation Nm.h Cancels an indication, when the NM Coordinator Sleep Ready bit in the Control Bit Vector is set back to 0. Nm _ Coord Ready - Nm.h Sets an indication, when the NM Coordinator Sleep Ready bit in the To Sleep Indication Control Bit Vector is set Nm _ Forward - Synchronized Pnc - Shutdown Nm.h Notification that the network management has received a PN shutdown message on a particular NM - channel. This is used to grant a nearly synchronized PNC shutdown across the entire PN topology. Nm _ Network Start - Indication N m.h Notification that a NM - message has been received in the Bus - Sleep Mode, what indicates that some nodes in the network have already entered the Network Mode. Nm _ Pdu Rx - Indication Nm.h Notification that a NM message has been received. Nm _ Pnc Bit Ve ctor - Rx Indication Nm.h Indication that a bus specific network management has received a NM message on a particular NM - channel that contain a PNC bit vector. This is used to aggregate the external PNC requests. The function evaluate if a relevant PNC reque st (PNC bit set to '1') is available in the given PNC bit vector. If a relevant PNC request is available (PNC bit passes the PNC bit vector filter), then the Relevant Pnc Request Detected Ptr refers to a boolean with value set to TRUE. Otherwise refer to b ooelan with value set to FALSE. Relevant Pnc Request Detected Ptr is evaluated by the callee <Bus>Nm module to qualify the further processing of the received NM - PDU. Nm _ Pnc Bit Vector - Tx Confirmation Nm.h Function called by <Bus> Nms to confirm the state of the transmission for the given PNC bit vector on the given NM - Channel. Nm _ Pnc Bit Vector - Tx Indication Nm.h Function called by <Bus>Nms to request the aggregated internal PNC requests for transmission within the Nm message. Nm _ Remote Sleep - Cancellation Nm.h Notification that the network management has detected that not all other nodes on the network are longer ready to enter Bus - Sleep Mode. Nm _ Remote Sleep - Indication Nm.h Notification that the network management has dete cted that all other nodes on the network are ready to enter Bus - Sleep Mode. Nm _ Repeat - Message Indication Nm.h Service to indicate that an NM message with set Repeat Message Re - quest Bit has been received. This is needed for node detection and the Dynam ic PNC - to - channel - mapping feature. Nm _ State Change - Notification Nm.h Notification that the state of the lower layer <Bus>Nm has changed. Nm _ - Synchronization - Point Nm.h Notification to the NM Coordinator functionality that this is a suitable point in time to initiate the coordinated shutdown on. Pdu R _ Fr Nm Trigger - Transmit Pdu R_ Fr Nm.h Within this API, the upper layer module (called module) shall check whether the a vailable data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr. Pdu R _ Fr Nm Tx - Confirmation Pdu R_ Fr Nm.h The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

SWS_FrNm_00258 requirement

[SWS_FrNm_00258] ⌈The function FrNm_PassiveStartUp shall initiate the Passive Startup of the FlexRay NM.⌋

SWS_FrNm_00260 requirement

[SWS_FrNm_00260] ⌈If the current state is not Bus-Sleep Mode, the function FrNm_ PassiveStartUp shall have no effect on the operation mode of the FrNm module and shall return E_NOT_OK (see [SWS_FrNm_00138]).⌋

SWS_FrNm_00261 requirement

[SWS_FrNm_00261] ⌈The function FrNm_NetworkRequest shall be only available if the configuration parameter FrNmPassiveModeEnabled is set to OFF.⌋()

SWS_FrNm_00262 requirement

[SWS_FrNm_00262] ⌈The function FrNm_NetworkRelease shall be only available if the configuration parameter FrNmPassiveModeEnabled is set to OFF.⌋

SWS_FrNm_00263 requirement

[SWS_FrNm_00263] ⌈The function FrNm_SetUserData shall be only avail- able if the configuration parameter FrNmUserDataEnabled is set as ON (see

SWS_FrNm_00264 requirement

[SWS_FrNm_00264] ⌈The function FrNm_GetUserData shall be only avail- able if the configuration parameter FrNmUserDataEnabled is set as ON (see

SWS_FrNm_00269 requirement

[SWS_FrNm_00269] ⌈The function FrNm_RequestBusSynchronization shall be only available if the configuration parameter FrNmBusSynchronizationEnabled is set as ON.⌋()

SWS_FrNm_00270 requirement

[SWS_FrNm_00270] ⌈The FrNm module and the NmIf module shall be initialized cor- rectly before the FrNm module’s environment is calling the function FrNm_CheckRe- moteSleepIndication.⌋

SWS_FrNm_00271 requirement

[SWS_FrNm_00271] ⌈The function FrNm_CheckRemoteSleepIndication shall be only available if the configuration parameter FrNmRemoteSleepIndicationEn- abled is set as ON.⌋

SWS_FrNm_00276 requirement

[SWS_FrNm_00276] ⌈The FrIf module, the LSduR module, and the FrNm module must be initialized correctly before the FrNm module’s environment calls the function FrNm_RxIndication.⌋ The function FrNm_RxIndication might be called by the FrNm module’s environ- ment in an interrupt context.

SWS_FrNm_00277 requirement

[SWS_FrNm_00277] ⌈The FrIf module, the LSduR module, and the FrNm module shall be initialized correctly before the FrNm module’s environment calls the function FrNm_TriggerTransmit.⌋ Note: The function FrNm_TriggerTransmit might be called by the FrIf via LSduR in an interrupt context.

SWS_FrNm_00297 requirement

If the FrNm performs a state change from Synchronize Mode to Network Mode and the previous state change from state Bus Sleep Mode to Sync h ronize was caused by a call of FrNm_NetworkRequest() (due to an active wakeup) and FrNmActiveWakeupBitEnabled is TRUE, the FrNm shall set the ActiveWakeupBit in the CBV

SWS_FrNm_00298 requirement

If the FrNm module leaves the Network Mode and FrNmActiveWakeupBitEnabled is TRUE, the FrNm module shall clear th e ActiveWakeupBit in the CBV .

SWS_FrNm_00311 requirement

FlexRay NM module shall provide a configuration parameter named Fr NmMainAcrossFrCycle to select adapt the behavior of the FlexRay NM MainFunction to the point in time the FlexRay NM MainFunction is executed (see Figure 7 - 3 ) .

SWS_FrNm_00356 requirement

[SWS_FrNm_00356] ⌈The state machine guards, transitions, conditions, and actions should be evaluated at most once in each execution of the FrNm_MainFunction_- <FrNmChannel.ShortName>.⌋ 2part of the RTE module

SWS_FrNm_00375 requirement

[SWS_FrNm_00375] ⌈The FrNm module shall retrieve the current FlexRay communi- cation cycle via the API FrIf_GetGlobalTime().⌋()

SWS_FrNm_00388 requirement

[SWS_FrNm_00388] ⌈The service FrNm_EnableCommunication shall return E_- NOT_OK, if the current mode is not Network Mode.⌋

SWS_FrNm_00389 requirement

[SWS_FrNm_00389] ⌈If the module operates in passive mode (FrNmPassiveMod- eEnabled), then the service FrNm_EnableCommunication shall have no effects and directly return E_NOT_OK.⌋

SWS_FrNm_00391 requirement

[SWS_FrNm_00391] ⌈The service FrNm_DisableCommunication shall return E_- NOT_OK if the current mode is not Network Mode.⌋

SWS_FrNm_00392 requirement

[SWS_FrNm_00392] ⌈If the module operates in passive mode (FrNmPassiveMod- eEnabled), then the service FrNm_DisableCommunication shall have no effect and directly return E_NOT_OK.⌋

SWS_FrNm_00394 requirement

OBSOLETE replaced by SWS_ FrNm_00549 If FrNmComUserData Support is set to TRUE FrNm shall call PduR_FrNmTriggerTransmit within the function FrNm_TriggerTransmit called by the FrIf.

SWS_FrNm_00446 requirement

If FrNmComUserDataSupport is enabled the API FrNm_SetUserData shall not be available.

SWS_FrNm_00447 requirement

When FrNm_SetUserData is called the FrNm module shall set the Ne twork Management user data for the Network Management PDUs transmited next on the bus.

SWS_FrNm_00450 requirement

When PduR_FrNmTriggerTransmit () returns E_NOT_OK, the FrNm shall use the last transmitted value for NmUserData.

SWS_FrNm_00452 requirement

If FrNmPn Enabled is FALSE , FrNm shall set the value of the P N I bit to 0 in transmitted NM PDUs.

SWS_FrNm_00453 requirement

OBSOLETE The range of the PN request information in the NM user data is defined by the parameters FrNmPnInfoOffset and FrNmPnInfoLength . Each b it in the PN range shall have the following meaning: Bit value Meaning: 0 - > The PN is not requested 1 - > The PN is requested Note : FrNmPnInfoOffset + FrNmPnInfoLength shall not exceed the Length of the NM PDU.

SWS_FrNm_00461 requirement

OBSOLETE If FrNmPnEiraCalcEnabled is TRUE and FrNmPnEraCalcEnabled is TRUE , the PN status information has to be stored separately for both, the EIRA and ERA information (compare SWS_FrNm_00421 and SWS_FrNm_00432 ) .

SWS_FrNm_00467 requirement

The e valuation of the condition RepetitionCycleCompleted and thus the generation of the RepetitionCycleCompleted event (see Figure 7 - 1 ) shall be subject to the following rules: a) If FrNmMainAcrossFrCycle is set to FALSE , then a RepetitionCycleCompleted event shall be generated in the last FlexRay communication cycle of the repetition cycle after we receive all the votes. b) If FrNmMainAcrossFrCycle is set to TRUE , then a RepetitionCycleCompleted event shall be generated if a repetition cycle boundary has been crossed since the previous call of the FlexRay NM MainFunction execution before any vote is transmitted .

SWS_FrNm_00475 requirement

When the F rNm module has entered Synchronize Mode, it shall notify the Generic NM Interface module by calling Nm_SynchronizeMode .

SWS_FrNm_00491 requirement

If function FrNm_PnLearningRequest is called on a channel where FrNmDynamicPncToCh annelMappingEnabled is set to TRUE and FrNm is in the Network Mode the FrNm module shall set the Repeat Message Bit and the Partial Network Learning Bit in the CBV to 1 on this channel and change to or restart the Repeat Message State at the end of a NM Re petition Cycle.

SWS_FrNm_00492 requirement

If the bits Partial Network Learning and Repeat Message Request both are received on a channel where FrNmDynamicPncToChannelMappingEnabled is set to TRUE and FrNm is in the Network Mode the FrNm module shall set the Parti al Network Learning Bit in the CBV to 1 on this channel and change to or restart the Repeat Message State at the end of a NM Repetition Cycle.

SWS_FrNm_00493 requirement

If FrNmDynamicPncToChannelMappingSupport is set to TRUE FrNm shall clear the Partial Network Learning Bit when leaving the Repeat Message State.

SWS_FrNm_00495 requirement

[SWS_FrNm_00495] ⌈If the function FrNm_PnLearningRequest is called in Syn- chronize Mode or Bus Sleep Mode no functionality shall be executed and E_NOT_OK shall be returned.⌋

SWS_FrNm_00496 requirement

[SWS_FrNm_00496] ⌈The function FrNm_PnLearningRequest shall only be avail- able if FrNmDynamicPncToChannelMappingSupport is set to TRUE.⌋

SWS_FrNm_00549 requirement

[SWS_FrNm_00549] ⌈If FrNm_TriggerTransmit is called and FrNmComUser- DataSupport is enabled, the FrNm shall collect the NM User Data from the refer- enced NM I-PDU by calling PduR_FrNmTriggerTransmit and copy the data to the user data range of the NM-PDU.⌋

SWS_FrNm_00565 requirement

[SWS_FrNm_00565]). This ensure a common handling independent of FrIfImmediate setting (TRUE or FALSE).

SWS_FrNm_00568 requirement

[SWS_FrNm_00568] Upstream requirements: RS_Nm_02572 ⌈If FrNmSynchronizedPncShutdownEnabled is set to TRUE the FrNm implemen- tation shall provide the API FrNm_ActivateTxPnShutdownMsg.⌋

SWS_FrNm_00569 requirement

[SWS_FrNm_00569] Upstream requirements: RS_Nm_02572 ⌈If FrNmSynchronizedPncShutdownEnabled is set to TRUE and FrNm_Acti- vateTxPnShutdownMsg is called with a valid NM-Channel (nmChannelHandle), then the FrNm module shall set the PNSR bit in the CBV to 1 on the given NM-channel and return with E_OK.⌋

SWS_FrNm_00570 requirement

[SWS_FrNm_00570] Upstream requirements: RS_Nm_02572 ⌈If FrNmSynchronizedPncShutdownEnabled is set to TRUE the FrNm implemen- tation shall provide the API FrNm_DeactivateTxPnShutdownMsg.⌋

SWS_FrNm_00572 requirement

[SWS_FrNm_00572] Upstream requirements: RS_Nm_02572 ⌈If FrNmSynchronizedPncShutdownEnabled is set to TRUE and FrNm_Deacti- vateTxPnShutdownMsg is called with a valid NM-Channel (nmChannelHandle), then the FrNm module shall set PNSR bit in the CBV to 0 on the given NM-channel and return with E_OK.⌋

SWS_FrNm_91002 requirement

Type of error Related error code Error value A NM message with PN Shutdown Request Bit was received on a channel that is actively coordinated by the Com M PNC Ga teway FRNM_ E_ INVALID_ PN_ SYNC_ SHUTDOWN_ REQUEST 0x20