DEENESPTFRRUARHIKOZHNL

Ethernet Driver (Eth)

ModulEth (Ethernet Driver)
BSW-Modul-ID88
Standard-Header#include "Eth.h"
SWS-SpezifikationAUTOSAR_SWS_EthernetDriver.pdf
ClusterEthernet Services

मॉड्यूल गाइडएआई जनित

ईथरनेट कंट्रोलर को AUTOSAR स्टैक से जोड़ता है: आरंभीकरण, मोड, ट्रांसमिशन, रिसेप्शन और डायग्नोस्टिक्स।
एआई-जनित असत्यापित मॉडल: claude-opus-5-5 · प्रयास: high · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 7ed698a8fca3 उद्गम खुले प्रश्न (3)
कारणात्मक एंकर: R20-11 R20-11 से मान्य इस विनिर्देश संस्करण के लिए नए सिरे से संश्लेषित।
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

ईथरनेट कंट्रोलर को AUTOSAR स्टैक से जोड़ता है: आरंभीकरण, मोड, ट्रांसमिशन, रिसेप्शन और डायग्नोस्टिक्स।

Ethernet ड्राइवर Ethernet नियंत्रक को Ethernet Interface से जोड़ता है। यह नियंत्रकों को प्रारंभ करता है, उनके Rx/Tx संचार को अतुल्यकालिक रूप से ETH_MODE_DOWN और ETH_MODE_ACTIVE के बीच स्विच करता है और संकेत ([SWS_Eth_00276]) के माध्यम से परिवर्तन की रिपोर्ट करता है। प्रेषण दो चरणों में होता है: बफ़र का अनुरोध करना, फिर उसे सौंपना। प्रत्येक ट्रांसमिशन की पुष्टि ड्राइवर द्वारा E_OK या E_NOT_OK ([SWS_Eth_00243]) के साथ की जाती है। इसके अतिरिक्त, यह एड्रेस फ़िल्टर के साथ रिसेप्शन, MII एक्सेस, टाइमस्टैम्प और डायग्नोस्टिक काउंटर प्रदान करता है। शटडाउन के समय, अवरुद्ध ट्रांसमिट बफ़र्स को मुक्त किया जाना चाहिए।

Ethernet ड्राइवर Eth Ethernet Interface (EthIf) के लिए एक या अधिक Ethernet नियंत्रकों को अमूर्त करता है। EthIf विभिन्न निर्माताओं के कई ड्राइवरों को बंडल कर सकता है (SWS Eth पृ. 17)। Eth परिणामों की रिपोर्ट EthIf_RxIndication, EthIf_TxConfirmation और EthIf_CtrlModeIndication ([SWS_Eth_00244], [SWS_Eth_00243], [SWS_Eth_00119]) के माध्यम से करता है। अन्य पड़ोसी EthTrcv, EthSwt, DET और DEM हैं ([SWS_Eth_00241], [SWS_Eth_00120])।

kontext EcuM EcuM Eth Eth (Ethernet-Treiber) EcuM->Eth Eth_Init EthIf EthIf (Ethernet Interface) EthIf->Eth Eth_SetControllerMode, Eth_ProvideTxBuffer, Eth_Transmit, Eth_Receive, Eth_TxConfirmation, Eth_WriteMii / Eth_ReadMii Eth->EthIf EthIf_RxIndication, EthIf_TxConfirmation, EthIf_CtrlModeIndication EthTrcv EthTrcv (Transceiver-Treiber) Eth->EthTrcv EthTrcv_WriteMiiIndication, EthTrcv_ReadMiiIndication EthSwt EthSwt (Switch-Treiber) Eth->EthSwt EthSwt_EthRxProcessFrame, EthSwt_EthTxPrepareFrame u. a. Det Det Eth->Det Det_ReportError Dem Dem Eth->Dem Dem_SetEventStatus HW Ethernet-Controller (Hardware) Eth->HW रजिस्टर और बफ़र एक्सेस

संदर्भ आरेख (Context Diagram): ईथरनेट ड्राइवर के कॉलर और कॉलबैक प्राप्तकर्ता। स्रोत: [SWS_Eth_00119], [SWS_Eth_00120], SWS Eth पृ. 17

Eth_Init सभी कॉन्फ़िगर किए गए कंट्रोलर्स के Rx/Tx संचार को निष्क्रिय करता है, उन्हें कॉन्फ़िगर करता है और लंबित अनुरोधों को खारिज करता है ([SWS_Eth_00027], [SWS_Eth_00275])। एसिंक्रोनस Eth_SetControllerMode ETH_MODE_DOWN और ETH_MODE_ACTIVE ([SWS_Eth_91009], [SWS_Eth_00276]) के बीच स्विच करता है। शटडाउन पर, ड्राइवर लॉक किए गए ट्रांसमिशन बफ़र्स को मुक्त करता है ([SWS_Eth_00280])। परिणाम EthIf_CtrlModeIndication के माध्यम से आता है, पोलिंग मोड में Eth_MainFunction ([SWS_Eth_00240]) से।

ट्रांसमिट करने के लिए, ऊपरी परत Eth_ProvideTxBuffer के साथ एक बफ़र का अनुरोध करती है और इसे Eth_Transmit ([SWS_Eth_00077], [SWS_Eth_00087]) के साथ सौंपती है। पुष्टिकरण E_OK या E_NOT_OK ([SWS_Eth_00243], [SWS_Eth_00256]) है। Eth_Receive FIFO से फ्रेम पढ़ता है और रिपोर्ट करता है कि क्या और फ्रेम उपलब्ध हैं ([SWS_Eth_00095], [SWS_Eth_00162])। Eth गैर-मेल खाने वाले गंतव्य पते वाले फ्रेम को छोड़ देता है ([SWS_Eth_00245], [SWS_Eth_00246])।

पोलिंग मोड में फ्रेम भेजनाObere Schicht (UL)EthIfEthEthIf_ProvideTxBuffer(...)Eth_ProvideTxBuffer(CtrlIdx, Priority,BufIdxPtr, BufPtr, LenBytePtr)BUFREQ_OK, BufIdx, BufPtr, स्वीकृत लंबाईBUFREQ_OK, Pufferपेलोड डेटा को बफ़र में कॉपी करेंEthIf_Transmit(...)Eth_Transmit(CtrlIdx, BufIdx, FrameType,TxConfirmation = TRUE, LenByte, PhysAddrPtr)Ethernet-Header bilden,ट्रांसमिशन आरंभ करेंE_OKE_OKUse Case: zyklisch in EthIf_MainFunctionTx()Eth_TxConfirmation(CtrlIdx)altSenden erfolgreichEthIf_TxConfirmation(..., E_OK)Senden fehlgeschlagenEthIf_TxConfirmation(..., E_NOT_OK)UL_TxConfirmation(CtrlIdx, BufIdx)

अनुक्रम आरेख (Sequence Diagram): पोलिंग मोड में बफ़र अनुरोध, ट्रांसमिशन और पुष्टिकरण। स्रोत: [SWS_Eth_00077], [SWS_Eth_00087], [SWS_Eth_00243], SWS EthIf पृ. 87

अतिरिक्त कार्यों में MII एक्सेस शामिल हैं, जो R20-11 में एसिंक्रोनस हैं ([SWS_Eth_00058]), हार्डवेयर टाइमस्टैम्प ([SWS_Eth_00190]), सांख्यिकी सेवाएँ ([SWS_Eth_00233]) और एक वैकल्पिक Credit Based Shaper (DRAFT, [SWS_Eth_00263])। Eth DET ([SWS_Eth_00016]) को विकास त्रुटियों की रिपोर्ट करता है। उत्पादन त्रुटियाँ जैसे ETH_E_ACCESS या ETH_E_RX_FRAMES_LOST DEM ([SWS_Eth_00173], [SWS_Eth_00174]) में जाती हैं।

ईथरनेट स्टैक और सिस्टम सीमा में भूमिका

Ethernet ड्राइवर Eth Ethernet Interface (EthIf) के अंतर्गत एक हार्डवेयर-निकटवर्ती मॉड्यूल के रूप में स्थित होता है। स्टैक की मूल संरचना के आरेख के अनुसार, EthIf विभिन्न निर्माताओं के एक या अधिक Eth ड्राइवरों को उनके संबंधित नियंत्रक प्रकारों के साथ बंडल करता है (SWS Eth पृ. 17)। शीर्ष की ओर, Eth Eth_Init, Eth_SetControllerMode, Eth_ProvideTxBuffer, Eth_Transmit और Eth_Receive जैसी सेवाएँ प्रदान करता है ([SWS_Eth_00027], [SWS_Eth_91009], [SWS_Eth_00077], [SWS_Eth_00087], [SWS_Eth_00095])। यह कॉलबैक EthIf_RxIndication, EthIf_TxConfirmation और EthIf_CtrlModeIndication के माध्यम से परिणामों की रिपोर्ट वापस करता है ([SWS_Eth_00244], [SWS_Eth_00243], [SWS_Eth_00119])।

अन्य पड़ोसी निम्नलिखित मॉड्यूल हैं:

  • ट्रांसीवर ड्राइवर, जो MII संकेतों के माध्यम से जुड़ा हुआ है ([SWS_Eth_00241], [SWS_Eth_00242]);
  • EthSwt_EthRxProcessFrame जैसी अपनी प्रबंधन सेवाओं के साथ स्विच ड्राइवर ([SWS_Eth_00247], [SWS_Eth_00120]);
  • त्रुटि रिपोर्टिंग के लिए DET और DEM ([SWS_Eth_00119], [SWS_Eth_00120])।

यदि कई कंट्रोलर पेरिफेरल संसाधनों को साझा करते हैं, तो Eth ऊपरी परतों के समक्ष स्वतंत्र कंट्रोलर्स का अनुकरण करता है। समन्वय का कार्य तब ऊपरी परतें संभालती हैं ([SWS_Eth_00258])।

kontext EcuM EcuM Eth Eth (Ethernet-Treiber) EcuM->Eth Eth_Init EthIf EthIf (Ethernet Interface) EthIf->Eth Eth_SetControllerMode, Eth_ProvideTxBuffer, Eth_Transmit, Eth_Receive, Eth_TxConfirmation, Eth_WriteMii / Eth_ReadMii Eth->EthIf EthIf_RxIndication, EthIf_TxConfirmation, EthIf_CtrlModeIndication EthTrcv EthTrcv (Transceiver-Treiber) Eth->EthTrcv EthTrcv_WriteMiiIndication, EthTrcv_ReadMiiIndication EthSwt EthSwt (Switch-Treiber) Eth->EthSwt EthSwt_EthRxProcessFrame, EthSwt_EthTxPrepareFrame u. a. Det Det Eth->Det Det_ReportError Dem Dem Eth->Dem Dem_SetEventStatus HW Ethernet-Controller (Hardware) Eth->HW रजिस्टर और बफ़र एक्सेस

संदर्भ आरेख (Context Diagram): Eth को EthIf और EcuM द्वारा कॉल किया जाता है और यह EthIf, EthTrcv, EthSwt, DET और DEM को रिपोर्ट करता है। स्रोत: [SWS_Eth_00119], [SWS_Eth_00120], [SWS_Eth_00241], SWS Eth पृ. 17

Eth_Init से ETH_MODE_ACTIVE तक: स्टार्टअप और कंट्रोलर मोड

Eth_Init पोस्ट-बिल्ड संरचना Eth_ConfigType ([SWS_Eth_00027], [SWS_Eth_00156]) के लिए एक पॉइंटर प्राप्त करता है। वर्तमान EthConfigSet के प्रत्येक कंट्रोलर के लिए, फ़ंक्शन निम्नलिखित चरणों को निष्पादित करता है ([SWS_Eth_00275], DRAFT; पुराना संस्करण [SWS_Eth_00034] अप्रचलित):

  • Rx/Tx संचार को निष्क्रिय करना,
  • लंबित इंटरप्ट साफ़ करना,
  • कंट्रोलर पैरामीटर और ट्रांसमिट/रिसीव संसाधनों को कॉन्फ़िगर करना,
  • लंबित अनुरोधों को खारिज करना।

Eth_StateType ETH_STATE_UNINIT और ETH_STATE_INIT के बीच अंतर करता है और Development Error Detection ([SWS_Eth_00159]) के लिए कार्य करता है। नए संस्करण कॉल नियम को सारांशित करते हैं: Eth_GetVersionInfo और नियोजित फ़ंक्शनों जैसे कि Eth_MainFunction को छोड़कर, सेवाएँ केवल आरंभीकरण के बाद ही अनुमत हैं (SWS Eth पृ. 27)। R20-11 प्रत्येक सेवा के लिए ETH_E_UNINIT की जाँच के माध्यम से इसे नियंत्रित करता है, उदाहरण के लिए [SWS_Eth_00066] में।

पहले MII एक्सेस के साथ ईथरनेट ड्राइवर का स्टार्टअपEcuMEthIfEthEthTrcvव्याख्या: EcuM कॉल्स का क्रम;Eth_Init को MII एक्सेस से पहले होना चाहिएEth_Init(CfgPtr)Rx/Tx aller Controller deaktivieren,इंटरप्ट्स साफ़ करें, पैरामीटर और बफ़रकॉन्फ़िगर करें, कार्यों को खारिज करेंEthTrcv_Init(...)EthIf_WriteMii(...)Eth_WriteMii(CtrlIdx, TrcvIdx, RegIdx, RegVal)E_OK (Dienst angenommen)E_OKMII एक्सेस R20-11 में अतुल्यकालिक रूप से चलता हैEthTrcv_WriteMiiIndication(...)EthIf_Init(...)

अनुक्रम आरेख (Sequence Diagram): Eth_Init के साथ स्टार्टअप और ट्रांसीवर ड्राइवर का पहला, एसिंक्रोनस रूप से स्वीकृत MII एक्सेस। स्रोत: [SWS_Eth_00275], [SWS_Eth_00058], [SWS_Eth_00241], SWS EthIf पृ. 84

R20-11 में, Eth_SetControllerMode अतुल्यकालिक, गैर-पुनःप्रवेशी (non-reentrant) संस्करण [SWS_Eth_91009] में लागू होता है; यह [SWS_Eth_00041] को प्रतिस्थापित करता है। दोनों मोड इस तरह कार्य करते हैं ([SWS_Eth_00276]):

  • ETH_MODE_DOWN: ड्राइवर Rx/Tx को निष्क्रिय करता है और सभी बफ़र्स को रीसेट करता है। लॉक किए गए और लंबित ट्रांसमिशन बफ़र्स मुक्त हो जाते हैं ([SWS_Eth_00280], [SWS_Eth_00281])।
  • ETH_MODE_ACTIVE: ड्राइवर सभी बफ़र्स और Rx/Tx संचार को सक्रिय करता है।

Eth एक मोड परिवर्तन के परिणाम की रिपोर्ट EthIf_CtrlModeIndication ([SWS_Eth_00119]) के माध्यम से अतुल्यकालिक रूप से करता है। पोलिंग ऑपरेशन में, Eth_MainFunction परिवर्तन का पता लगाता है और इस कॉलबैक को कॉल करता है ([SWS_Eth_00171], [SWS_Eth_00240])। वर्तमान स्थिति Eth_GetControllerMode ([SWS_Eth_91010], [SWS_Eth_00277]) द्वारा प्रदान की जाती है।

Eth_ModeType अतिरिक्त रूप से ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST को पहचानता है। ETH_MODE_DOWN पर, हार्डवेयर स्लीप प्रक्रिया शुरू कर सकता है, उदाहरण के लिए OA-TC10 हार्डवेयर ([SWS_Eth_91008]) के साथ। हालाँकि, Eth_SetControllerMode का पैरामीटर विवरण केवल ETH_MODE_DOWN और ETH_MODE_ACTIVE ([SWS_Eth_91009]) का उल्लेख करता है।

zustand cluster_init ETH_STATE_INIT (je Controller) start शुरू UNINIT ETH_STATE_UNINIT start->UNINIT DOWN Rx/Tx deaktiviert (Interpretation: entspricht ETH_MODE_DOWN) UNINIT->DOWN Eth_Init: Rx/Tx निष्क्रिय करें, कॉन्फ़िगर करें, कार्यों को खारिज करें ACTIVE ETH_MODE_ACTIVE Rx/Tx aktiv DOWN->ACTIVE Eth_SetControllerMode(ETH_MODE_ACTIVE): Puffer aktivieren, Rx/Tx aktivieren; danach EthIf_CtrlModeIndication ACTIVE->DOWN Eth_SetControllerMode(ETH_MODE_DOWN): Rx/Tx निष्क्रिय करें, बफ़र्स रीसेट करें, लॉक किए गए और लंबित ट्रांसमिट बफ़र्स जारी करें

स्थिति आरेख (State Diagram): ड्राइवर स्थिति UNINIT/INIT और प्रत्येक कंट्रोलर के लिए DOWN और ACTIVE मोड, संक्रमण के समय कर्तव्यों के साथ। स्रोत: [SWS_Eth_00159], [SWS_Eth_00275], [SWS_Eth_00276], [SWS_Eth_00280]

ईथरनेट नियंत्रक का सक्रियणEthSMEthIfEthEthIf_SetControllerMode(CtrlIdx, ETH_MODE_ACTIVE)Eth_SetControllerMode(CtrlIdx, ETH_MODE_ACTIVE)E_OKट्रांसमिट और रिसीव बफ़र्स सक्रिय करें,Rx/Tx-Kommunikation aktivierenoptPolling-BetriebEth_MainFunction(): Moduswechsel erkanntEthIf_CtrlModeIndication(CtrlIdx, ETH_MODE_ACTIVE)EthSM_CtrlModeIndication(CtrlIdx, ETH_MODE_ACTIVE)

अनुक्रम आरेख (Sequence Diagram): सिंक्रोनस स्वीकृति और एसिंक्रोनस मोड संकेत के साथ EthSM द्वारा सक्रियण। स्रोत: [SWS_Eth_91009], [SWS_Eth_00119], [SWS_Eth_00240], SWS EthIf पृ. 85

ट्रांसमिशन पाथ: बफ़र का अनुरोध करना, भेजना, पुष्टि करना

ट्रांसमिशन दो चरणों में होता है। सबसे पहले, Eth_ProvideTxBuffer Priority के आधार पर एक ट्रांसमिट FIFO का चयन करता है। सेवा Eth_BufIdxType प्रकार का एक इंडेक्स, एक बफ़र पॉइंटर और LenBytePtr के माध्यम से प्रदान की गई लंबाई लौटाती है ([SWS_Eth_00077], [SWS_Eth_00175])। संभावित रिटर्न मान BUFREQ_OK, BUFREQ_E_NOT_OK, BUFREQ_E_BUSY और BUFREQ_E_OVFL हैं। बफ़र तब तक लॉक रहता है जब तक कि इस इंडेक्स के साथ Eth_Transmit नहीं आ जाता (SWS Eth पृ. 91)।

इसके बाद, Eth_Transmit FrameType, गंतव्य MAC पते और फ़्लैग TxConfirmation के साथ ट्रांसमिशन शुरू करता है ([SWS_Eth_00087], [SWS_Eth_00160])। ऐसा करते समय, ड्राइवर ईथरनेट हेडर बनाता है (SWS Eth पृ. 93)। Eth_Transmit विभिन्न बफ़र और कंट्रोलर इंडेक्स ([SWS_Eth_00087]) के लिए रीएंट्रेंट है।

यदि पुष्टिकरण का अनुरोध किया जाता है, तो Eth EthIf_TxConfirmation को E_OK के साथ कॉल करता है। इंटरप्ट ऑपरेशन में यह इंटरप्ट रूटीन से होता है, पोलिंग ऑपरेशन में Eth_TxConfirmation ([SWS_Eth_00243], [SWS_Eth_00100]) से। यदि ट्रांसमिशन विफल हो जाता है, तो परिणाम E_NOT_OK ([SWS_Eth_00256]) होता है। ऊपरी परतें इस बात पर निर्भर हो सकती हैं कि प्रत्येक Eth_Transmit के बाद एक पुष्टिकरण आता है (SWS Eth पृ. 32)।

पोलिंग आरेख में, EthIf_MainFunctionTx फ़ंक्शन Eth_TxConfirmation को कॉल करता है (SWS EthIf पृ. 87)। इंटरप्ट ऑपरेशन में, यह कार्य Eth_TxIrqHdlr_<CtrlIdx> द्वारा नियंत्रित किया जाता है (SWS EthIf पृ. 88)। ड्राइवर बफ़र को कब मुक्त करता है, यह कार्यान्वयन पर छोड़ दिया गया है (SWS Eth पृ. 93)।

पोलिंग मोड में फ्रेम भेजनाObere Schicht (UL)EthIfEthEthIf_ProvideTxBuffer(...)Eth_ProvideTxBuffer(CtrlIdx, Priority,BufIdxPtr, BufPtr, LenBytePtr)BUFREQ_OK, BufIdx, BufPtr, स्वीकृत लंबाईBUFREQ_OK, Pufferपेलोड डेटा को बफ़र में कॉपी करेंEthIf_Transmit(...)Eth_Transmit(CtrlIdx, BufIdx, FrameType,TxConfirmation = TRUE, LenByte, PhysAddrPtr)Ethernet-Header bilden,ट्रांसमिशन आरंभ करेंE_OKE_OKUse Case: zyklisch in EthIf_MainFunctionTx()Eth_TxConfirmation(CtrlIdx)altSenden erfolgreichEthIf_TxConfirmation(..., E_OK)Senden fehlgeschlagenEthIf_TxConfirmation(..., E_NOT_OK)UL_TxConfirmation(CtrlIdx, BufIdx)

अनुक्रम आरेख (Sequence Diagram): पोलिंग ऑपरेशन में सफलता और त्रुटि शाखा के साथ बफ़र का अनुरोध करना, भरना, भेजना और पुष्टि करना। स्रोत: [SWS_Eth_00077], [SWS_Eth_00087], [SWS_Eth_00243], [SWS_Eth_00256], SWS EthIf पृ. 87

रिसेप्शन पाथ और एड्रेस फ़िल्टर

Eth_Receive FifoIdx के माध्यम से संबोधित FIFO से एक फ्रेम पढ़ता है। सेवा विभिन्न FIFOs के लिए रीएंट्रेंट है, लेकिन समान FIFO ([SWS_Eth_00095]) के लिए नहीं। RxStatusPtr ETH_RECEIVED, ETH_NOT_RECEIVED या ETH_RECEIVED_MORE_DATA_AVAILABLE ([SWS_Eth_00162]) प्रदान करता है। व्याख्या: जब तक और फ्रेम रिपोर्ट किए जाते हैं, तब तक पोलिंग कॉलर Eth_Receive को दोहरा सकता है। प्रश्न Q-8f1484413f850bda (खुला) पोलिंग मोड में कौन कॉल करता है यह निर्दिष्ट नहीं है; संभवतः यह EthIf है।

Eth EthIf_RxIndication के माध्यम से रिसेप्शन की रिपोर्ट करता है, या तो इंटरप्ट से या Eth_Receive ([SWS_Eth_00244]) से। ब्रॉडकास्ट फ्रेम इस रूप में प्रदर्शित किए जाते हैं ([SWS_Eth_00153])। नए संस्करण पैरामीटर QueueIdx (SWS Eth पृ. 110) का नाम देते हैं।

Eth_SetPhysAddr अपना स्वयं का स्रोत पता सेट करता है; Eth_GetPhysAddr इसे पढ़ता है ([SWS_Eth_00151], [SWS_Eth_00052])। Eth_UpdatePhysAddrFilter ETH_ADD_TO_FILTER के साथ रिसेप्शन फ़िल्टर में मल्टीकास्ट गंतव्य पते जोड़ता है और उन्हें ETH_REMOVE_FROM_FILTER ([SWS_Eth_00152], [SWS_Eth_00163], [SWS_Eth_00150]) के साथ हटा देता है।

यदि गंतव्य पता मेल खाता है, तो Eth ऊपरी परत को सूचित करता है; अन्यथा यह फ्रेम को त्याग देता है ([SWS_Eth_00245], [SWS_Eth_00246])। यदि हार्डवेयर फ़िल्टर नहीं कर सकता है, तो आरंभीकरण प्रॉमिसक्युअस मोड चालू कर देता है ([SWS_Eth_00146])। 00:00:00:00:00:00 पता फ़िल्टर को अपने स्वयं के यूनीकास्ट पते तक कम कर देता है और प्रॉमिसक्युअस मोड ([SWS_Eth_00147]; तुलना करें SWS Eth पृ. 74) को समाप्त कर देता है।

पोलिंग और इंटरप्ट मोड में रिसेप्शनEthIfEthUse Case: Polling-Betriebव्याख्या: EthIf चक्रीय रूप से Eth_Receive को कॉल करता हैloopInterpretation: solange RxStatus == ETH_RECEIVED_MORE_DATA_AVAILABLEEth_Receive(CtrlIdx, FifoIdx, RxStatusPtr)FIFO से फ्रेम पढ़ें,फ़िल्टर के विरुद्ध गंतव्य पते की जाँच करेंaltRahmen empfangen, Adresse passtEthIf_RxIndication(...)पता मेल नहीं खाताRahmen verwerfenRxStatusUse Case: Interrupt-BetriebEmpfangs-InterruptEthIf_RxIndication(...)

अनुक्रम आरेख (Sequence Diagram): संकेत से पहले पता सत्यापन के साथ पोलिंग और इंटरप्ट ऑपरेशन में रिसेप्शन। स्रोत: [SWS_Eth_00095], [SWS_Eth_00162], [SWS_Eth_00244], [SWS_Eth_00246]

filter a Eth_UpdatePhysAddrFilter(CtrlIdx, PhysAddrPtr, Action) z PhysAddrPtr = 00:00:00:00:00:00? a->z reset फ़िल्टर को स्वयं के यूनीकास्ट पते तक सीमित करें, Promiscuous Mode समाप्त करें z->reset हाँ act Action? z->act नहीं rx फ्रेम आता है reset->rx add ETH_ADD_TO_FILTER: पते के लिए रिसेप्शन की अनुमति दें act->add जोड़ें rem ETH_REMOVE_FROM_FILTER: Empfang blockieren act->rem entfernen hw क्या नियंत्रक फ़िल्टर कर सकता है? add->hw rem->hw hwf Hardware-Filter nutzen hw->hwf हाँ swf Filterung in Software (Promiscuous Mode seit Initialisierung) hw->swf नहीं hwf->rx swf->rx m क्या गंतव्य पता फ़िल्टर से मेल खाता है? rx->m ind EthIf_RxIndication m->ind हाँ drop Rahmen verwerfen m->drop नहीं

एक्टिविटी डायग्राम: शून्य पते के विशेष मामले के साथ फ़िल्टर अपडेट, हार्डवेयर या सॉफ़्टवेयर फ़िल्टरिंग, और रिसेप्शन पर स्वीकृति या निरस्तीकरण। स्रोत: [SWS_Eth_00146], [SWS_Eth_00147], [SWS_Eth_00163], [SWS_Eth_00245], [SWS_Eth_00246]

ट्रांसीवर एक्सेस, हार्डवेयर टाइमस्टैम्प और डायग्नोस्टिक काउंटर

Eth_WriteMii और Eth_ReadMii R20-11 में एसिंक्रोनस और गैर-पुनःप्रवेशी हैं ([SWS_Eth_00058], [SWS_Eth_00064])। Eth क्रमशः EthTrcv_WriteMiiIndication या EthTrcv_ReadMiiIndication ([SWS_Eth_00241], [SWS_Eth_00242]) के माध्यम से पूरा होने की रिपोर्ट करता है। Annex 22D के अनुसार रजिस्टर 13 और 14 के माध्यम से क्लॉज 45 रजिस्टरों तक पहुँचा जाता है ([SWS_Eth_00273], [SWS_Eth_00274])। एक्सेस EthCtrlEnableMii ([SWS_Eth_00069]) के माध्यम से सक्षम किया गया है। दूसरी ओर, R24-11 Eth_WriteMii को सिंक्रोनस (SWS Eth पृ. 95) के रूप में वर्णित करता है; R20-11 के लिए एसिंक्रोनस परिभाषा लागू होती है।

टाइमस्टैम्प फ़ंक्शन EthGlobalTimeSupport ([SWS_Eth_00210], [SWS_Eth_00211]) के माध्यम से सक्षम किए जाते हैं। विवरण में निम्नलिखित लागू होता है:

  • Eth_GetCurrentTime हार्डवेयर समय को 48 बिट सेकंड प्लस नैनोसेकंड ([SWS_Eth_00181], [SWS_Eth_00178]) के साथ Eth_TimeStampType के रूप में पढ़ता है।
  • Eth_EnableEgressTimeStamp प्रति बफ़र टाइमस्टैम्पिंग को सक्रिय करता है; निष्क्रिय करने का कोई प्रावधान नहीं है ([SWS_Eth_00186]; SWS Eth पृ. 111)।
  • Eth_GetEgressTimeStamp और Eth_GetIngressTimeStamp क्रमशः TxConfirmation या RxIndication ([SWS_Eth_00190], [SWS_Eth_00195]; SWS Eth पृ. 89) के संदर्भ में टाइमस्टैम्प पढ़ते हैं।

ऊपरी परत ETH_UNCERTAIN या ETH_INVALID गुणवत्ता के टाइमस्टैम्प को खारिज कर देती है ([SWS_Eth_00177])। R23-11 से Eth_GetCurrentTime अप्रचलित है (SWS Eth पृ. 82); R20-11 में यह सेवा मानक है।

ईथरनेट ड्राइवर के माध्यम से ट्रांसमिट टाइमस्टैम्पEthTSynEthIfEth[EthTSynHardwareTimestampSupport == TRUE]EthIf_EnableEgressTimeStamp(CtrlIdx, BufIdx)Eth_EnableEgressTimeStamp(CtrlIdx, BufIdx)EthIf_Transmit(...)Eth_Transmit(...)EthIf_TxConfirmation(CtrlIdx, BufIdx, Result)EthTSyn_TxConfirmation(CtrlIdx, BufIdx, Result)TxConfirmation के संदर्भ में पुनर्प्राप्तिEthIf_GetEgressTimeStamp(CtrlIdx, BufIdx, ...)Eth_GetEgressTimeStamp(CtrlIdx, BufIdx,timeQualPtr, timeStampPtr)E_OK, गुणवत्ता, टाइमस्टैम्पE_OK, गुणवत्ता, टाइमस्टैम्पaltगुणवत्ता == ETH_VALIDZeitstempel verwendenETH_UNCERTAIN या ETH_INVALIDZeitstempel verwerfen

अनुक्रम आरेख (Sequence Diagram): ट्रांसमिट टाइमस्टैम्प को सक्रिय करना, ट्रांसमिट करना और गुणवत्ता जाँच के साथ पुष्टिकरण संदर्भ में पढ़ना। स्रोत: [SWS_Eth_00186], [SWS_Eth_00190], [SWS_Eth_00177], SWS EthTSyn पृ. 70, SWS EthTSyn पृ. 55

चार नैदानिक सेवाएँ प्रत्येक व्यक्तिगत रूप से सक्रिय की जा सकती हैं:

सांख्यिकी सेवाओं के लिए, अधिकतम मान एक अनुपलब्ध काउंटर (SWS Eth पृ. 98) को इंगित करता है।

कॉन्फ़िगरेशन, विभाजन (Partitioning) और SW बफ़र प्रबंधन (CBS)

EthCtrlEnableOffloadChecksumIPv4, EthCtrlEnableOffloadChecksumICMP, EthCtrlEnableOffloadChecksumTCP और EthCtrlEnableOffloadChecksumUDP के साथ, कंट्रोलर हार्डवेयर में चेकसम की गणना करता है। रिसेप्शन पर, यह गलत चेकसम ([SWS_Eth_00216], [SWS_Eth_00217]) वाले फ्रेम को त्याग देता है। बफ़र्स के बेस पते सभी AUTOSAR डेटा प्रकारों ([SWS_Eth_00218]) के संरेखण (alignment) को पूरा करने चाहिए। असमर्थित विभाजन असाइनमेंट को अस्वीकार किया जाना चाहिए। EthCtrlEcucPartitionRef में विभाजन EthEcucPartitionRef का एक उपसमुच्चय होना चाहिए ([SWS_Eth_00257], [SWS_Eth_00260], [SWS_Eth_CONSTR_00001])।

यदि हार्डवेयर में निष्पक्ष शेड्यूलिंग का अभाव है, तो सॉफ़्टवेयर में एक Credit Based Shaper उपलब्ध है (SWS Eth पृ. 38)। R20-11 में, सभी संबंधित आवश्यकताएँ DRAFT हैं। यह प्रक्रिया इस प्रकार काम करती है:

  • इसे EthCtrlConfigSwBufferHandling ([SWS_Eth_00263]) के साथ चालू किया जाता है।
  • प्रत्येक SW-FIFO ठीक एक प्राथमिकता ([SWS_Eth_00265]) से संबंधित है।
  • Eth_ProvideTxBuffer प्राथमिकता को याद रखता है, Eth_Transmit उपयुक्त FIFO ([SWS_Eth_00267], [SWS_Eth_00268]) को बफ़र आवंटित करता है।
  • Eth_MainFunction क्रेडिट्स को अपडेट करता है और संदेशों को HW-FIFO ([SWS_Eth_00270], [SWS_Eth_00266], [SWS_Eth_00271]) में स्थानांतरित करता है।
  • EthTrcvPhysLayerPLCAMaxBurstCount बर्स्ट को सीमित करता है ([SWS_Eth_00272]; SWS Eth पृ. 56)।
cbs mf Eth_MainFunction() (EthCtrlConfigSwBufferHandling = TRUE) c1 प्राथमिकता के अनुसार घटते क्रम में SW-FIFOs: EthCtrlConfigShaperIdleSlope द्वारा क्रेडिट बढ़ाएं (केवल गैर-रिक्त FIFOs) mf->c1 c2 अगला SW-FIFO (उच्चतम प्राथमिकता पहले) c1->c2 q संदेश मौजूद है और क्रेडिट >= EthCtrlConfigShaperMinCredit? c2->q mv पहला संदेश HW-FIFO में ले जाएं, क्रेडिट से संदेश का आकार घटाएं q->mv हाँ more Weitere SW-FIFO? q->more नहीं b EthTrcvPhysLayerPLCAMaxBurstCount = 0? mv->b stop Iteration beenden b->stop हाँ burst बर्स्ट सीमा तक अतिरिक्त संदेश स्थानांतरित करें, प्रति संदेश क्रेडिट घटाएं b->burst नहीं ende Ende stop->ende burst->more व्याख्या: अगले FIFO के साथ जारी रखें more->c2 हाँ more->ende नहीं

एक्टिविटी डायग्राम: क्रेडिट अपडेट, न्यूनतम क्रेडिट जाँच और PLCA बर्स्ट शाखा के साथ Eth_MainFunction में CBS रन। स्रोत: [SWS_Eth_00266], [SWS_Eth_00270], [SWS_Eth_00271], [SWS_Eth_00272], SWS Eth पृ. 56

त्रुटि की स्थिति में व्यवहार

Eth विकास त्रुटियों की रिपोर्ट DET ([SWS_Eth_00120]) को करता है। कोड ETH_E_INV_CTRL_IDX, ETH_E_UNINIT, ETH_E_PARAM_POINTER, ETH_E_INV_PARAM और ETH_E_INV_MODE ([SWS_Eth_00016]) हैं। विशिष्ट जाँचें आरंभीकरण, CtrlIdx और पॉइंटर्स ([SWS_Eth_00066], [SWS_Eth_00067], [SWS_Eth_00068]) से संबंधित हैं। यदि DET बंद है, तो इन मामलों में सांख्यिकी सेवाएँ E_NOT_OK ([SWS_Eth_00228], [SWS_Eth_00236], [SWS_Eth_00248], [SWS_Eth_00254]) लौटाती हैं।

उत्पादन त्रुटियाँ Dem_SetEventStatus के माध्यम से DEM ([SWS_Eth_00119]) को जाती हैं। एक विफल कंट्रोलर एक्सेस का परिणाम DEM_EVENT_STATUS_PREFAILED के साथ ETH_E_ACCESS होता है; Eth_SetControllerMode तब E_NOT_OK ([SWS_Eth_00039], [SWS_Eth_00173], [SWS_Eth_00168]) प्रदान करता है। Eth_MainFunction निम्नलिखित विस्तारित उत्पादन त्रुटियों ([SWS_Eth_00169], [SWS_Eth_00172]) की रिपोर्ट करता है:

ऑपरेशन के दौरान, त्रुटियाँ रिटर्न मानों के माध्यम से भी दिखाई देती हैं। इनमें BUFREQ_E_BUSY और BUFREQ_E_OVFL (SWS Eth पृ. 91) के साथ-साथ एक नकारात्मक ट्रांसमिशन पुष्टिकरण ([SWS_Eth_00256]) शामिल हैं। निष्क्रिय कंट्रोलर के साथ Eth_Receive का व्यवहार रिलीज़ पर निर्भर करता है। R23-11 और R24-11 को ETH_E_INV_MODE (SWS Eth पृ. 94, SWS Eth पृ. 116) की आवश्यकता होती है, R25-11 को तत्काल वापसी (SWS Eth पृ. 110) की आवश्यकता होती है। R20-11 के लिए, [SWS_Eth_00016] के कारण DET संस्करण लागू होना चाहिए। प्रश्न (खुला)

आगे विस्तृत साक्ष्य

पेलोड में विनिर्देश अंशों पर आधारित एआई-जनरेटेड गाइड। R20-11 की लिंक की गई आवश्यकताएँ निर्णायक हैं; अन्य रिलीज़ के दस्तावेज़ अंशों को उसी प्रकार चिह्नित किया गया है।

Ethernet Driver (Eth)

Provides uniform hardware access to Ethernet controller interfaces.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

फ़ंक्शन Eth_Init [SWS_Eth_00027] 📄 PDF

void Eth_Init (const Eth_ConfigType* CfgPtr);

Initializes the Ethernet Driver

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 6639db5c607b उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन Eth_Init Ethernet ड्राइवर [SWS_Eth_00027] को प्रारंभ करने का कार्य करता है। इसे हेडर फ़ाइल Eth.h के माध्यम से घोषित किया गया है, इसका सर्विस-ID 0x01 है और इसका कोई रिटर्न मान (void) नहीं है [SWS_Eth_00027]। इनपुट पैरामीटर के रूप में यह CfgPtr की अपेक्षा करता है, जो प्रकार Eth_ConfigType की कार्यान्वयन-विशिष्ट कॉन्फ़िगरेशन संरचना को इंगित करता है [SWS_Eth_00027]। कॉल तुल्यकालिक रूप से होती है और इसे नॉन-रीएंट्रेंट (Non Reentrant) के रूप में परिभाषित किया गया है [SWS_Eth_00027]।

ऑपरेशनल प्रवाह में, Eth_Init मॉड्यूल के साथ काम करने के लिए मौलिक पूर्व-शर्त बनाता है। अन्य सभी फ़ंक्शंस के लिए अनिवार्य रूप से Eth_Init द्वारा पूर्व नियंत्रक आरंभीकरण की आवश्यकता होती है [SWS_Eth_00070], [SWS_Eth_00167], [SWS_Eth_00185]। ड्राइवर की विभिन्न नियंत्रक सेवाओं के लिए यह निर्भरता बाध्यकारी रूप से निर्धारित है [SWS_Eth_00189], [SWS_Eth_00194], [SWS_Eth_00199], [SWS_Eth_00232]।

अ-आरंभीकृत (uninitialized) एक्सेस की स्थिति में, लक्षित त्रुटि प्रबंधन प्रदान किया गया है: डेवलपमेंट एरर डिटेक्शन (DET) सक्रिय होने पर, ड्राइवर फ़ंक्शंस यह जाँचते हैं कि क्या सर्विस Eth_Init को पहले ठीक से कॉल किया गया था [SWS_Eth_00066]। यदि यह जाँच सफल नहीं होती है, तो वे डेवलपमेंट एरर ETH_E_UNINIT उत्पन्न करते हैं [SWS_Eth_00164], [SWS_Eth_00182], [SWS_Eth_00187], [SWS_Eth_00196]। इसके विपरीत, यदि DET निष्क्रिय है, तो प्रभावित फ़ंक्शंस निष्पादन से इनकार करते हैं और स्थिति E_NOT_OK लौटाकर अमान्य स्थिति का संकेत देते हैं [SWS_Eth_00228], [SWS_Eth_00235], [SWS_Eth_00248], [SWS_Eth_00252]।

यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन Eth_SetControllerMode [SWS_Eth_00041] 📄 PDF

Std_ReturnType Eth_SetControllerMode (uint8 CtrlIdx, Eth_ModeType CtrlMode);

Enables / disables the indexed controller Tags: atp.Status=obsolete

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 58bddef3c196 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन Eth_SetControllerMode पैरामीटर CtrlIdx के माध्यम से एड्रेस किए गए Ethernet कंट्रोलर [SWS_Eth_00041] को सक्रिय (ETH_MODE_ACTIVE) या निष्क्रिय (ETH_MODE_DOWN) करने का कार्य करता है। AUTOSAR Classic R20-11 में, इस सेवा को अप्रचलित (obsolete) के रूप में वर्गीकृत किया गया है [SWS_Eth_00041]।

सेवा का निष्पादन एसिंक्रोनस और नॉन-रीएंट्रेंट (Non Reentrant) है [SWS_Eth_00041]। रिटर्न मान के रूप में, फ़ंक्शन सफल आरंभ पर E_OK लौटाता है या E_NOT_OK यदि ऑपरेटिंग मोड बदला नहीं जा सका [SWS_Eth_00041]। व्याख्या: चूँकि कॉल को एसिंक्रोनस के रूप में निर्दिष्ट किया गया है, लेकिन पेलोड में कोई कॉलबैक परिभाषित नहीं है, फ़ंक्शन की वापसी के बाद ड्राइवर बैकग्राउंड में हार्डवेयर-स्तरीय वास्तविक स्थिति परिवर्तन पूरा होने की संभावना है। प्रश्न Q-d7ec04578e921eb9 (खुला)

यदि कंट्रोलर या उसके ट्रांसमिट और रिसीव संचार को Eth_SetControllerMode के माध्यम से निष्क्रिय किया जाता है, तो अनिवार्य बफ़र क्लीनअप लागू होते हैं:

  • सभी लॉक किए गए ट्रांसमिट बफ़र्स (locked transmit buffers) को मुक्त किया जाना चाहिए [SWS_Eth_00137] [SWS_Eth_00280]।
  • सभी लंबित ट्रांसमिट बफ़र्स (pending transmit buffers) को भी मुक्त किया जाना चाहिए [SWS_Eth_00138] [SWS_Eth_00281]।

गुण Non Reentrant के कारण, फ़ंक्शन को समान या अन्य कंट्रोलर इंस्टेंसों के लिए समवर्ती रूप से निष्पादित नहीं किया जाना चाहिए [SWS_Eth_00041]। कोई विशिष्ट DET या DEM त्रुटि संदेश सूचीबद्ध नहीं हैं; त्रुटि स्थितियाँ रिटर्न मान E_NOT_OK के माध्यम से कॉलर को सूचित की जाती हैं [SWS_Eth_00041]।

यह उपयोग संबंधी निर्देश AUTOSAR Classic R20-11 के विनिर्देश डेटा के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन Eth_SetControllerMode [SWS_Eth_91009] 📄 PDF

Std_ReturnType Eth_SetControllerMode (uint8 CtrlIdx, Eth_ModeType CtrlMode);

Enables / Disables Rx/ Tx communication of the indexed controller Tags: atp.Status=draft

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 45ebc5b270a4 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन Eth_SetControllerMode (सर्विस ID 0x03, Eth.h के माध्यम से प्रदान की गई) किसी विशिष्ट Ethernet कंट्रोलर के प्राप्त और प्रेषित संचार (Rx/Tx) को सक्रिय और निष्क्रिय करने का कार्य करता है [SWS_Eth_91009]।

उपयोग और कॉल शर्तें

फ़ंक्शन का निष्पादन एसिंक्रोनस रूप से होता है और इसे नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_Eth_91009]। कॉल करते समय दो पैरामीटर पास किए जाते हैं:

  • CtrlIdx: Ethernet ड्राइवर के संदर्भ में संबंधित कंट्रोलर का इंडेक्स [SWS_Eth_91009]।
  • CtrlMode: कंट्रोलर के लिए लक्षित मोड, या तो Rx/Tx संचार को सक्रिय करने के लिए ETH_MODE_ACTIVE या इसे निष्क्रिय करने के लिए ETH_MODE_DOWN [SWS_Eth_91009]।

रिटर्न मान के रूप में, फ़ंक्शन Std_ReturnType स्थिति लौटाता है: E_OK सफल निष्पादन का संकेत देता है, जबकि E_NOT_OK इंगित करता है कि कंट्रोलर का मोड बदला नहीं जा सका [SWS_Eth_91009]।

परस्पर क्रिया और बफ़र प्रबंधन

यदि इंडेक्स किए गए कंट्रोलर का Rx/Tx संचार Eth_SetControllerMode (मोड ETH_MODE_DOWN) के माध्यम से निष्क्रिय किया जाता है, तो ट्रांसमिट बफ़र्स के लिए क्लीनअप क्रियाएँ अनिवार्य रूप से की जानी चाहिए:

  • सभी लॉक किए गए ट्रांसमिट बफ़र्स (locked transmit buffers) को मुक्त किया जाना चाहिए [SWS_Eth_00280]।
  • सभी लंबित ट्रांसमिट बफ़र्स (pending transmit buffers) को भी मुक्त किया जाना चाहिए [SWS_Eth_00281]।

लॉक और लंबित बफ़र्स को मुक्त करने के वर्तमान प्रावधान और स्वयं फ़ंक्शन परिभाषा "ड्राफ्ट" स्थिति रखते हैं [SWS_Eth_91009], [SWS_Eth_00280], [SWS_Eth_00281]। वे ऐतिहासिक रूप से पूर्ववर्ती आवश्यकताओं [SWS_Eth_00137] और [SWS_Eth_00138] को प्रतिस्थापित करते हैं, जिन्हें अप्रचलित के रूप में वर्गीकृत किया गया है।

यह पाठ AUTOSAR विनिर्देशों के आधार पर AI द्वारा तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन Eth_GetPhysAddr [SWS_Eth_00052] 📄 PDF

void Eth_GetPhysAddr (uint8 CtrlIdx, uint8* PhysAddrPtr);

Obtains the physical source address used by the indexed controller

फ़ंक्शन Eth_SetPhysAddr [SWS_Eth_00151] 📄 PDF

void Eth_SetPhysAddr (uint8 CtrlIdx, const uint8* PhysAddrPtr);

Sets the physical source address used by the indexed controller

फ़ंक्शन Eth_UpdatePhysAddrFilter [SWS_Eth_00152] 📄 PDF

Std_ReturnType Eth_UpdatePhysAddrFilter (uint8 CtrlIdx, const uint8* PhysAddrPtr, Eth_FilterActionType Action);

Update the physica l source address to/ from the indexed controller filter. If the Ethernet Controller is not capable to do the filtering, the software has to do this.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 3be26284fad7 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

तुल्यकालिक इंटरफ़ेस Eth_UpdatePhysAddrFilter हेडर फ़ाइल Eth.h के माध्यम से प्रदान किया जाता है और इसका सर्विस-ID 0x12 है [SWS_Eth_00152]। यह फ़ंक्शन किसी अनुक्रमित (indexed) Ethernet नियंत्रक के फ़िल्टर में एक भौतिक पता जोड़ने या उससे हटाने का कार्य करता है [SWS_Eth_00152]।

फ़ंक्शन के पैरामीटर्स में तीन इनपुट मान शामिल हैं [SWS_Eth_00152]:

  • CtrlIdx: ड्राइवर संदर्भ के भीतर संबंधित Ethernet नियंत्रक का इंडेक्स निर्धारित करता है [SWS_Eth_00152]।
  • PhysAddrPtr: नेटवर्क बाइट क्रम में भौतिक गंतव्य पते (MAC पते) वाले मेमोरी क्षेत्र का पॉइंटर; यह लेयर-2 Ethernet पैकेट का मल्टीकास्ट गंतव्य पता है [SWS_Eth_00152]।
  • Action: एन्यूमिरेशन प्रकार Eth_FilterActionType के माध्यम से निर्दिष्ट करता है कि क्या दिए गए पते को नियंत्रक के फ़िल्टर में जोड़ा जाना है या उससे हटाया जाना है [SWS_Eth_00152]।

फ़ंक्शन प्रकार Std_ReturnType की स्थिति लौटाता है: E_OK फ़िल्टर के सफल परिवर्तन की पुष्टि करता है, जबकि E_NOT_OK रिपोर्ट करता है कि फ़िल्टर को बदला नहीं जा सका [SWS_Eth_00152]। यदि Ethernet नियंत्रक हार्डवेयर स्तर पर स्वतंत्र रूप से फ़िल्टरिंग करने में सक्षम नहीं है, तो फ़िल्टरिंग कार्य सॉफ़्टवेयर द्वारा कार्यान्वित किया जाना चाहिए [SWS_Eth_00152]।

निष्पादन के लिए एक सख्त रीएंट्रेंसी प्रतिबंध लागू होता है: फ़ंक्शन समान नियंत्रक इंडेक्स (CtrlIdx) के लिए नॉन-रीएंट्रेंट है, लेकिन इसे परस्पर भिन्न नियंत्रक इंडेक्स के लिए समवर्ती और रीएंट्रेंट रूप से कॉल किया जा सकता है [SWS_Eth_00152]।

यह उपयोग नोट विनिर्देश AUTOSAR Classic R20-11 के आधार पर एक AI प्रणाली द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन Eth_WriteMii [SWS_Eth_00058] 📄 PDF

Std_ReturnType Eth_WriteMii (uint8 CtrlIdx, uint8 TrcvIdx, uint8 RegIdx, uint16 RegVal);

Configures a transceiver register or triggers a function offered by the receiver

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 59aa765351e8 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन Eth_WriteMii MII इंटरफ़ेस के माध्यम से Ethernet ट्रांसीवर के रजिस्टर को कॉन्फ़िगर करने या ट्रांसीवर द्वारा प्रदान किए गए फ़ंक्शन को ट्रिगर करने का कार्य करता है [SWS_Eth_00058]। घोषणा हेडर Eth.h के माध्यम से उपलब्ध है [SWS_Eth_00058]।

उपयोग और पैरामीटर

कॉल सर्विस-ID 0x05 के साथ की जाती है और यह चार इनपुट पैरामीटर्स को प्रोसेस करती है [SWS_Eth_00058]:

  • CtrlIdx: ईथरनेट ड्राइवर [SWS_Eth_00058] के संदर्भ में ईथरनेट नियंत्रक का इंडेक्स।
  • TrcvIdx: MII इंटरफ़ेस पर ट्रांसीवर का इंडेक्स [SWS_Eth_00058]।
  • RegIdx: MII पर लिखे जाने वाले ट्रांसीवर रजिस्टर का इंडेक्स [SWS_Eth_00058]।
  • RegVal: वह 16-बिट मान, जिसे संबोधित रजिस्टर में लिखा जाना है [SWS_Eth_00058]।

सेवा का निष्पादन अतुल्यकालिक रूप से निर्दिष्ट है [SWS_Eth_00058]। इसका तात्पर्य यह है कि हार्डवेयर इंटरफ़ेस के माध्यम से वास्तविक लेखन प्रक्रिया आमतौर पर पृष्ठभूमि में निष्पादित की जा सकती है, जबकि अनुरोध स्वीकार करने के बाद फ़ंक्शन तुरंत वापस लौट आता है। प्रश्न Q-0f9a9e682985d796 (खुला)

रिटर्न मान और प्रतिबंध

रिटर्न मान के रूप में फ़ंक्शन प्रकार Std_ReturnType लौटाता है [SWS_Eth_00058]:

  • E_OK: लेखन अनुरोध सफलतापूर्वक स्वीकार कर लिया गया [SWS_Eth_00058]।
  • E_NOT_OK: सेवा को अस्वीकार कर दिया गया [SWS_Eth_00058]।

समवर्तीता (concurrency) के संबंध में, Eth_WriteMii को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_Eth_00058]। इसलिए, कॉलर द्वारा उचित सिंक्रोनाइज़ेशन के बिना समवर्ती रूप से कॉल निष्पादित नहीं किए जाने चाहिए।

यह उपयोग नोट AUTOSAR विनिर्देश R20-11 के आधार पर एक AI द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन Eth_ReadMii [SWS_Eth_00064] 📄 PDF

Std_ReturnType Eth_ReadMii (uint8 CtrlIdx, uint8 TrcvIdx, uint8 RegIdx, uint16* RegValPtr);

Reads a transceiver register

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 6906f4ae5194 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और पैरामीटर

फ़ंक्शन Eth_ReadMii (सर्विस ID 0x06) MII इंटरफ़ेस के माध्यम से एक ट्रांसीवर रजिस्टर को पढ़ने का कार्य करता है और हेडर फ़ाइल Eth.h के माध्यम से प्रदान किया जाता है [SWS_Eth_00064]। कॉल करते समय, CtrlIdx ड्राइवर संदर्भ में संबंधित Ethernet कंट्रोलर की पहचान करता है, TrcvIdx MII पर संबोधित ट्रांसीवर की और RegIdx विशिष्ट ट्रांसीवर रजिस्टर की पहचान करता है [SWS_Eth_00064]। निर्धारित रजिस्टर मान उस मेमोरी क्षेत्र में लिखा जाता है जिस पर पॉइंटर RegValPtr इंगित करता है [SWS_Eth_00064]।

निष्पादन और समवर्तीता

निष्पादन एसिंक्रोनस रूप से होता है (Asynchronous) [SWS_Eth_00064]। E_OK का रिटर्न मान केवल यह पुष्टि करता है कि सेवा या पढ़ने का अनुरोध सफलतापूर्वक स्वीकार कर लिया गया था (Service accepted), जबकि E_NOT_OK अनुरोध की अस्वीकृति का संकेत देता है (Service denied) [SWS_Eth_00064]। एसिंक्रोनस प्रकृति के कारण, RegValPtr के लिए पास किया गया मेमोरी क्षेत्र पढ़ने के संचालन के अंतिम समापन तक मान्य रहना चाहिए। प्रश्न Q-04a94624b96bf51f (खुला) चूँकि फ़ंक्शन को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में भी वर्गीकृत किया गया है [SWS_Eth_00064], कॉल करने वालों को बाहरी सिंक्रोनाइज़ेशन के बिना विभिन्न टास्क या इंटरप्ट संदर्भों के माध्यम से एक साथ एक्सेस नहीं करना चाहिए।

त्रुटि प्रबंधन

यदि ड्राइवर पढ़ने के अनुरोध को स्वीकार नहीं कर सकता है, तो कॉल को सीधे E_NOT_OK के साथ स्वीकार किया जाता है [SWS_Eth_00064]। विशिष्ट त्रुटि कोड, DET रन-टाइम जाँच या DEM डायग्नोस्टिक इवेंट इस फ़ंक्शन के लिए तत्व-संबंधी विनिर्देश डेटा में नहीं दर्शाए गए हैं।

यह उपयोग निर्देश विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन Eth_GetRxStats [SWS_Eth_00233] 📄 PDF

Std_ReturnType Eth_GetRxStats (uint8 CtrlIdx, Eth_RxStatsType* RxStats);

Returns the following list according to IETF RFC281 9, where the maximal possible value shall denote an invalid value, e.g. if this counter is not available: 1. ether Stats Drop Events 2. ether Stats Octets 3. ether Stats Pkts 4. ether Stats Broadcast Pkts 5. ether Stats Multicast Pkts 6. ether Stats Crc Al ign Errors 7. ether Stats Undersize Pkts 8. ether Stats Oversize Pkts 9. ether Stats Fragments 10. ether Stats Jabbers 11. ether Stats Collisions 12. ether Stats Pkts64Octets 13. ether Stats Pkts65to127Octets 14. ether Stats Pkts128to255Octets 15. ether St ats Pkts256to511Octets 16. ether Stats Pkts512to1023Octets 17. ether

फ़ंक्शन Eth_GetTxStats [SWS_Eth_91005] 📄 PDF

Std_ReturnType Eth_GetTxStats (uint8 CtrlIdx, Eth_TxStatsType* TxStats);

Returns the list of Transmission Statistics out of IETF RFC1213 defined with Eth_ Tx Stats Type, where the maximal possible value shall denote an invalid value, e.g. this counter is not available.

फ़ंक्शन Eth_GetTxErrorCounterValues [SWS_Eth_91006] 📄 PDF

Std_ReturnType Eth_GetTxErrorCounterValues (uint8 CtrlIdx, Eth_TxErrorCounterValuesType* TxErrorCounterValues);

Returns the list of Transmission Error Counters out of IETF RFC1213 and RFC1643 defined with Eth_ Tx Error Counter Values Type, where the maximal possible value shall denote an invalid value, e.g. this counter is not available.

फ़ंक्शन Eth_GetCurrentTime [SWS_Eth_00181] 📄 PDF

Std_ReturnType Eth_GetCurrentTime (uint8 CtrlIdx, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);

Returns a time value out of the HW registers according to the capability of the HW. Is the HW resolution is lower than the Eth_ Time Stamp Type resolution resp. range, than an the remainin g bits will be filled with 0. Important Note: Eth_ Get Current Time may be called within an exclusive area.

फ़ंक्शन Eth_EnableEgressTimeStamp [SWS_Eth_00186] 📄 PDF

void Eth_EnableEgressTimeStamp (uint8 CtrlIdx, Eth_BufIdxType BufIdx);

Activat es egress time stamping on a dedicated message object. Some HW does store once the egress time stamp marker and some HW needs it always before transmission. There will be no "disable" functionality, due to the fact, that the message type is always "time st amped" by network design.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 28883e2189c8 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

तुल्यकालिक फ़ंक्शन Eth_EnableEgressTimeStamp Ethernet ड्राइवर के एक समर्पित संदेश ऑब्जेक्ट के लिए ट्रांसमिट टाइमस्टैम्प (Egress Time Stamping) के अधिग्रहण को सक्रिय करता है [SWS_Eth_00186]। कॉल हेडर Eth.h के माध्यम से सर्विस-ID 0x17 के साथ की जाती है और इसका कोई रिटर्न मान नहीं होता है [SWS_Eth_00186]।

कॉल करते समय निम्नलिखित इनपुट पैरामीटर पास किए जाने चाहिए [SWS_Eth_00186]:

  • CtrlIdx: संबोधित Ethernet नियंत्रक का इंडेक्स [SWS_Eth_00186]।
  • BufIdx: उस संदेश बफ़र का इंडेक्स, जिसके लिए उच्च-स्तरीय एप्लिकेशन egress टाइमस्टैम्प के निर्माण की अपेक्षा करता है [SWS_Eth_00186]।

समवर्तीता के संबंध में, फ़ंक्शन को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_Eth_00186]। इसलिए, समान या अतिरिक्त बफ़र्स के लिए समानांतर कॉल को कॉलर साइड पर सिंक्रोनाइज़ किया जाना चाहिए या इससे बचा जाना चाहिए।

हार्डवेयर का व्यवहार नियंत्रक कार्यान्वयन के आधार पर भिन्न होता है: कुछ हार्डवेयर ट्रांसमिट टाइमस्टैम्प के मार्कर को स्थायी रूप से संग्रहीत करते हैं, जबकि अन्य नियंत्रक प्रत्येक ट्रांसमिशन से पहले अनिवार्य रूप से सक्रियण का अनुरोध करते हैं [SWS_Eth_00186]। व्याख्या: हार्डवेयर-स्वतंत्र नियंत्रण के लिए, इसलिए वांछित बफ़र के प्रत्येक ट्रांसमिशन से पहले फ़ंक्शन को कॉल करना उचित हो सकता है। प्रश्न Q-c2b8d2db03e9d13b (खुला) कोई निष्क्रियकरण इंटरफ़ेस मौजूद नहीं है, क्योंकि नेटवर्क डिज़ाइन के अनुसार संदेश प्रकार हमेशा टाइमस्टैम्प्ड प्रसारित होता है [SWS_Eth_00186]।

यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

फ़ंक्शन Eth_GetEgressTimeStamp [SWS_Eth_00190] 📄 PDF

Std_ReturnType Eth_GetEgressTimeStamp (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);

Reads back the egress time stamp on a dedicated message object. It must be called within the Tx Confirmation() function.

फ़ंक्शन Eth_GetIngressTimeStamp [SWS_Eth_00195] 📄 PDF

Std_ReturnType Eth_GetIngressTimeStamp (uint8 CtrlIdx, const Eth_DataType* DataPtr, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);

Reads back the ingress time stamp on a dedicated message object. It must be called within the Rx Indication() function.

फ़ंक्शन Eth_ProvideTxBuffer [SWS_Eth_00077] 📄 PDF

BufReq_ReturnType Eth_ProvideTxBuffer (uint8 CtrlIdx, uint8 Priority, Eth_BufIdxType* BufIdxPtr, uint8* * BufPtr, uint16* LenBytePtr);

Provides access to a transmit buffer of the FIFO related to the specified priority

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 44e533ef4911 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

तुल्यकालिक फ़ंक्शन Eth_ProvideTxBuffer FIFO के उस Ethernet ट्रांसमिट बफ़र तक एक्सेस प्रदान करता है जो पास की गई प्राथमिकता को सौंपा गया है [SWS_Eth_00077]। यह हेडर Eth.h के माध्यम से प्रदान किया जाता है और रीएंट्रेंट के रूप में निर्दिष्ट है [SWS_Eth_00077]। FIFO चयन के लिए इनपुट पैरामीटर्स के माध्यम से नियंत्रक इंडेक्स CtrlIdx और फ़्रेम प्राथमिकता Priority पास की जाती है [SWS_Eth_00077]। इन-आउट पैरामीटर LenBytePtr वांछित बफ़र आकार पास करता है और कॉल के बाद वास्तव में दिए गए बाइट आकार को लौटाता है [SWS_Eth_00077]। आउटपुट पैरामीटर्स BufIdxPtr (बाद के अनुरोधों के लिए संसाधन इंडेक्स) और BufPtr (बफ़र का पॉइंटर) मेमोरी क्षेत्र के संदर्भ प्रदान करते हैं [SWS_Eth_00077]।

त्रुटि प्रबंधन और रिटर्न मान

फ़ंक्शन प्रकार BufReq_ReturnType के रिटर्न मानों के माध्यम से परिणाम का संकेत देता है [SWS_Eth_00077]:

  • BUFREQ_OK: ट्रांसमिट बफ़र सफलतापूर्वक उपलब्ध कराया गया [SWS_Eth_00077]।
  • BUFREQ_E_BUSY: सभी बफ़र संसाधन वर्तमान में व्यस्त हैं [SWS_Eth_00077]।
  • BUFREQ_E_OVFL: अनुरोधित बफ़र बहुत बड़ा है [SWS_Eth_00077]।
  • BUFREQ_E_NOT_OK: एक डेवलपमेंट त्रुटि का पता चला [SWS_Eth_00077]।

इंटरैक्शन

यदि EthCtrlConfigSwBufferHandling को TRUE पर कॉन्फ़िगर किया गया है, तो आंतरिक रूप से BufIdxPtr को पास किए गए सॉफ़्टवेयर बफ़र पूल के बफ़र इंडेक्स और निर्दिष्ट प्राथमिकता Priority से बना एक टुपल संग्रहीत किया जाता है [SWS_Eth_00267]।

यदि इसके बाद Eth_Transmit() को कॉल किया जाता है, तो दिया गया बफ़र इंडेक्स उस सॉफ़्टवेयर FIFO को सौंपा जाता है जिसका कॉन्फ़िगरेशन EthCtrlConfigEgressFifoPriorityAssignment पहले Eth_ProvideTxBuffer() में पास की गई प्राथमिकता से मेल खाता है [SWS_Eth_00268]।

यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन Eth_Transmit [SWS_Eth_00087] 📄 PDF

Std_ReturnType Eth_Transmit (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Eth_FrameType FrameType, boolean TxConfirmation, uint16 LenByte, const uint8* PhysAddrPtr);

Triggers transmission of a previously filled transmit buffer

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 964b3772cde6 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल संदर्भ

तुल्यकालिक इंटरफ़ेस Eth_Transmit पहले से उपलब्ध कराए गए और भरे गए Ethernet ट्रांसमिट बफ़र के लिए ट्रांसमिशन प्रक्रिया को ट्रिगर करता है [SWS_Eth_00087]। यह निम्नलिखित पैरामीटर्स स्वीकार करता है:

  • CtrlIdx: ड्राइवर के संदर्भ में Ethernet नियंत्रक का इंडेक्स [SWS_Eth_00087]।
  • BufIdx: प्रसारित किए जाने वाले बफ़र संसाधन का इंडेक्स [SWS_Eth_00087]।
  • FrameType: विशिष्ट Ethernet फ़्रेम प्रकार [SWS_Eth_00087]।
  • TxConfirmation: ट्रांसमिशन पुष्टिकरण को सक्रिय करने के लिए स्विच [SWS_Eth_00087]।
  • LenByte: पेलोड की डेटा लंबाई बाइट्स में [SWS_Eth_00087]।
  • PhysAddrPtr: नेटवर्क बाइट क्रम में भौतिक गंतव्य पते (MAC पते) का पॉइंटर [SWS_Eth_00087]।

प्रकार Std_ReturnType का रिटर्न मान E_OK के साथ प्रसारण के सफल आरंभ और E_NOT_OK के साथ विफलता का संकेत देता है [SWS_Eth_00087]।

परस्पर क्रिया और बफ़र प्रबंधन

ट्रांसमिशन प्रक्रिया के हिस्से के रूप में, Eth_Transmit बफ़र पॉइंटर BufIdx को उस सॉफ़्टवेयर FIFO को सौंपता है जिसका कॉन्फ़िगरेशन तत्व EthCtrlConfigEgressFifoPriorityAssignment पहले Eth_ProvideTxBuffer() पर निर्धारित प्राथमिकता से मेल खाता है [SWS_Eth_00268]। कॉल के साथ, संबंधित संदेश सॉफ़्टवेयर FIFOs से हार्डवेयर FIFO में स्थानांतरित हो जाते हैं [SWS_Eth_00269]।

संगामिति

यह फ़ंक्शन भिन्न बफ़र इंडेक्स (BufIdx) के साथ-साथ भिन्न नियंत्रक इंडेक्स (CtrlIdx) के साथ कॉल के लिए रीएंट्रेंट है [SWS_Eth_00087]।

यह उपयोग नोट AUTOSAR विनिर्देश R20-11 के आधार पर स्वचालित रूप से तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन Eth_Receive [SWS_Eth_00095] 📄 PDF

void Eth_Receive (uint8 CtrlIdx, uint8 FifoIdx, Eth_RxStatusType* RxStatusPtr);

Receive a frame from the related fifo.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: aeb0a2bc1424 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

तुल्यकालिक फ़ंक्शन Eth_Receive Ethernet नियंत्रक के एक विशिष्ट FIFO बफ़र से Ethernet फ़्रेम प्राप्त करने का कार्य करता है [SWS_Eth_00095]। इसका कोई रिटर्न मान नहीं है, लेकिन यह क्वेरी का परिणाम प्रकार Eth_RxStatusType के पॉइंटर RxStatusPtr के माध्यम से कॉलर को लौटाता है [SWS_Eth_00095]। यह आउटपुट पैरामीटर इंगित करता है कि क्या कोई फ़्रेम सफलतापूर्वक प्राप्त हुआ था और क्या संबंधित FIFO बफ़र के लिए अभी और फ़्रेम पुनर्प्राप्ति के लिए उपलब्ध हैं [SWS_Eth_00095]।

पैरामीटर और कॉल संदर्भ

इनपुट पैरामीटर के रूप में, फ़ंक्शन को Ethernet ड्राइवर के भीतर नियंत्रक इंडेक्स CtrlIdx और पढ़े जाने वाले FIFO के इंडेक्स FifoIdx की आवश्यकता होती है [SWS_Eth_00095]। फ़ंक्शन हेडर फ़ाइल Eth.h में घोषित किया गया है [SWS_Eth_00095]। यह कॉल आमतौर पर उच्च-स्तरीय ड्राइवर या इंटरफ़ेस परतों द्वारा पोलिंग तंत्र के हिस्से के रूप में समय-समय पर की जा सकती है। प्रश्न Q-f5ec0693a5887bcf (खुला)

समवर्तीता और प्रतिबंध

समवर्तीता के संबंध में, Eth_Receive को भिन्न FIFOs के लिए रीएंट्रेंट के रूप में कार्यान्वित किया गया है, लेकिन समान FIFO के लिए यह नॉन-रीएंट्रेंट है [SWS_Eth_00095]। एक ही नियंत्रक के समान FIFO को क्वेरी करने वाली समवर्ती कॉल अस्वीकार्य हैं और कॉलिंग सॉफ़्टवेयर द्वारा इन्हें रोका जाना चाहिए।

Ethernet इंटरफ़ेस के साथ परस्पर क्रिया

पोलिंग मोड में, सफल प्राप्ति प्रक्रिया के मामले में Ethernet ड्राइवर आगे के प्रसंस्करण के लिए ऊपरी परत को प्राप्त फ़्रेम की रिपोर्ट करने हेतु रूटीन Eth_Receive से सीधे फ़ंक्शन EthIf_RxIndication को कॉल करने के लिए बाध्य है [SWS_Eth_00244]।

यह पाठ विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन Eth_TxConfirmation [SWS_Eth_00100] 📄 PDF

void Eth_TxConfirmation (uint8 CtrlIdx);

Triggers frame transmission confirmation

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 72b1ce9d790c उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल संदर्भ

हेडर Eth.h के माध्यम से उपलब्ध फ़ंक्शन Eth_TxConfirmation भेजे गए Ethernet फ़्रेमों के लिए ट्रांसमिशन पावती को लक्षित रूप से ट्रिगर करने का कार्य करता है [SWS_Eth_00100]। इसमें सर्विस ID 0x0C है और इसे सिंक्रोनस रूप से निष्पादित किया जाता है [SWS_Eth_00100]। एकमात्र पासिंग पैरामीटर के रूप में, फ़ंक्शन CtrlIdx की अपेक्षा करता है, जो Ethernet ड्राइवर के इंस्टेंस के भीतर संबोधित किए जाने वाले कंट्रोलर के लॉजिकल इंडेक्स को निर्धारित करता है [SWS_Eth_00100]। कोई रिटर्न मान मौजूद नहीं है (void), और कोई आउटपुट पैरामीटर पास नहीं किए जाते हैं [SWS_Eth_00100]।

ट्रांसमिशन प्रवाह में इंटरैक्शन

परतों के इंटरैक्शन में, Eth_TxConfirmation ट्रांसमिट स्थिति को उच्च-स्तरीय Ethernet इंटरफ़ेस पर अग्रेषित करता है। यदि संबंधित अधिसूचना सक्रिय की गई है, तो Ethernet ड्राइवर सफल ट्रांसमिशन का संकेत देने के लिए परिणाम मान E_OK के साथ EthIf_TxConfirmation को कॉल करने के लिए बाध्य है [SWS_Eth_00243]। पोलिंग मोड में, यह कॉल स्पष्ट रूप से रूटीन Eth_TxConfirmation के संदर्भ से की जाती है, जबकि इंटरप्ट-नियंत्रित मोड में इसे वैकल्पिक रूप से सीधे इंटरप्ट रूटीन से निष्पादित किया जाता है [SWS_Eth_00243]।

समवर्ती और निष्पादन स्थितियाँ

निष्पादन के लिए, यह प्रतिबंध लागू होता है कि Eth_TxConfirmation को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में परिभाषित किया गया है [SWS_Eth_00100]। इसलिए उसी कंट्रोलर के लिए एक साथ किए जाने वाले कॉलों को कॉलर द्वारा रोका जाना चाहिए। पोलिंग ऑपरेशन में कॉल आमतौर पर उच्च-स्तरीय नियंत्रण प्रवाह द्वारा चक्रीय रूप से की जानी चाहिए। प्रश्न Q-c19295838459b689 (खुला) फ़ंक्शन विनिर्देश में विशिष्ट त्रुटि कोड और DET या DEM संदेशों के विनिर्देश नहीं दिए गए हैं, यही वजह है कि एक अलग त्रुटि प्रबंधन लागू नहीं होता है।

यह पाठ एक AI द्वारा तैयार किया गया था; संदर्भित विनिर्देश आधिकारिक है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन Eth_MainFunction [SWS_Eth_00171] 📄 PDF

void Eth_MainFunction (void);

The function checks for controller errors and lost frames. Used for polling state changes. Calls Eth If_ Ctrl Mode Indication when the controller mode changed.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 395137d99dcb उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल संदर्भ

फ़ंक्शन Eth_MainFunction का सिग्नेचर void Eth_MainFunction(void) है और इसे हेडर फ़ाइल SchM_Eth.h के माध्यम से प्रदान किया जाता है [SWS_Eth_00171]। इससे यह व्याख्या की जा सकती है: कॉल संभवतः शेड्यूल मैनेजर (SchM) द्वारा टास्क-आधारित संदर्भ में चक्रीय रूप से की जानी चाहिए, क्योंकि कोई पासिंग पैरामीटर या रिटर्न मान परिभाषित नहीं हैं। प्रश्न Q-690a2dc372d49c6a (खुला)

कार्यात्मक दायरा और पोलिंग

फ़ंक्शन का मुख्य कार्य स्थिति परिवर्तनों की पोलिंग करना और कंट्रोलर त्रुटियों तथा खोए हुए Ethernet फ़्रेमों की जाँच करना है [SWS_Eth_00171]। यदि फ़ंक्शन पाता है कि Ethernet कंट्रोलर का मोड बदल गया है, तो यह स्थिति परिवर्तन के बारे में उच्च-स्तरीय परत को सूचित करने के लिए फ़ंक्शन EthIf_CtrlModeIndication को कॉल करता है [SWS_Eth_00171]।

ट्रांसमिट पाथ में निष्पादन क्रम

Eth_MainFunction() के संदर्भ में, सॉफ़्टवेयर FIFO के प्रसंस्करण के लिए एक निश्चित क्रम निर्दिष्ट किया गया है [SWS_Eth_00270]:

  • सबसे पहले, सभी SW-FIFOs को पुनरावृत्त किया जाता है और उनके क्रेडिट खातों (Credits Account) को अद्यतन किया जाता है [SWS_Eth_00270]।
  • इसके बाद, सभी SW-FIFOs को फिर से पुनरावृत्त किया जाता है और भेजने के लिए तैयार संदेशों के लिए जाँच की जाती है [SWS_Eth_00270]।
  • प्रत्येक पुनरावृत्त SW-FIFO के लिए फिर ट्रांसमिशन का प्रयास किया जाता है [SWS_Eth_00270]।

यह उपयोग निर्देश AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

टाइप Eth_ConfigType [SWS_Eth_00156] 📄 PDF

Implementation specific structure of the post build configuration

टाइप Eth_ModeType [SWS_Eth_00158] 📄 PDF

This is an generic type and used in the layers of the Ethernet communication stack (e.g. EthIf, Eth, EthSwt, EthTrcv) to enable and disable, resp ectively, the Ethernet communcation channel and set the corresponding hardware (e.g. Ethernet controller, Ethernet Switch port, Ethernet transceiver) to an lowpower sleep and power on mode, respectively. Tags: atp.Status=obsolete

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 12ea280a995a उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

जेनेरिक एन्यूमिरेशन प्रकार Eth_ModeType का उपयोग Ethernet संचार स्टैक की परतों (जैसे EthIf, Eth, EthSwt और EthTrcv) में Ethernet संचार चैनल को सक्रिय या निष्क्रिय करने के साथ-साथ संबंधित हार्डवेयर (जैसे Ethernet कंट्रोलर, Ethernet स्विच पोर्ट या Ethernet ट्रांसीवर) को लो-पावर स्लीप स्थिति या सक्रिय मोड में बदलने के लिए किया जाता है [SWS_Eth_00158]।

यह प्रकार हेडर फ़ाइल Eth_GeneralTypes.h के माध्यम से उपलब्ध है और निम्नलिखित मान श्रेणियों को परिभाषित करता है [SWS_Eth_00158]:

  • ETH_MODE_DOWN (0x00): Ethernet संचार चैनल को निष्क्रिय करता है और संबंधित हार्डवेयर को लो-पावर स्लीप मोड (Low-Power Sleep Mode) में डालता है [SWS_Eth_00158]।
  • ETH_MODE_ACTIVE (0x01): Ethernet संचार चैनल को सक्रिय करता है और हार्डवेयर को ऑपरेटिंग मोड (Power-On Mode) में डालता है [SWS_Eth_00158]।

जीवन चक्र और उपयोग के संबंध में, यह ध्यान दिया जाना चाहिए कि Release R20-11 में Eth_ModeType को obsolete स्थिति के साथ चिह्नित किया गया है [SWS_Eth_00158]। इसलिए नए विकास में इस प्रकार के उपयोग से बचा जाना चाहिए, क्योंकि भविष्य के मानकों में अप्रचलित इंटरफ़ेस प्रकारों को आमतौर पर अधिक आधुनिक नियंत्रण संरचनाओं द्वारा प्रतिस्थापित किया जाता है।

यह उपयोग नोट स्वचालित रूप से तैयार किया गया था। विनिर्देश संदर्भ विशेष रूप से प्रदान किए गए आवश्यकता संदर्भ से संबंधित हैं।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप Eth_ModeType [SWS_Eth_91008] 📄 PDF

This is an generic type and used in the layers of the Ethernet commun ication stack (e.g. Eth If, Eth, Eth Swt, Eth Trcv) to enable and disable, respectively, the Ethernet communcation channel and set the corresponding hardware (e.g. Ethernet controller, Ethernet Switch port, Ethernet transceiver) to an lowpower sleep and po wer on mode, respectively. The type also support to transfer a wake - up request from the services layer (Com M) to the communication drivers (Eth Trcv). This could be used e.g. for Ethernet hardware that has the capability to wake - up and sleep on data line (see OA TC10) Tags: atp.Status=draft

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: bd78c0f35c62 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

एन्यूमिरेशन प्रकार Eth_ModeType को Eth_GeneralTypes.h के माध्यम से घोषित किया जाता है और यह AUTOSAR Ethernet संचार स्टैक ([SWS_Eth_91008]) में क्रॉस-लेयर मोड प्रकार के रूप में कार्य करता है। इसका उपयोग EthIf, Eth, EthSwt और EthTrcv जैसे मॉड्यूलों में संचार चैनलों को चुनिंदा रूप से सक्रिय या निष्क्रिय करने और संबंधित हार्डवेयर घटक (Ethernet नियंत्रक, स्विच पोर्ट या ट्रांसीवर) को ऊर्जा-बचत स्लीप मोड और सक्रिय ऑपरेटिंग मोड के बीच स्विच करने के लिए किया जाता है ([SWS_Eth_91008])।

प्रकार में मोड नियंत्रण के लिए तीन स्थितियाँ शामिल हैं ([SWS_Eth_91008]):

  • ETH_MODE_DOWN (0x00): Rx और Tx संचार को निष्क्रिय करता है और संबंधित हार्डवेयर को लो-पावर स्लीप मोड में डालता है। यदि हार्डवेयर इसका समर्थन करता है, तो एक साथ स्लीप प्रक्रिया भी शुरू की जाती है (उदाहरण के लिए OPEN Alliance TC10 के अनुसार डेटा लाइन पर स्लीप का अनुरोध करना)।
  • ETH_MODE_ACTIVE (0x01): Rx और Tx संचार को सक्रिय करता है और संबंधित हार्डवेयर को नियमित ऑपरेटिंग मोड (Power-on) में स्विच करता है।
  • ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST (0x02): Rx और Tx संचार को सक्रिय करता है, हार्डवेयर को ऑपरेटिंग मोड में डालता है और नेटवर्क पर अतिरिक्त वेक-अप अनुरोध को ट्रिगर करता है, बशर्ते हार्डवेयर में वेक-अप क्षमताएं हों (जैसे OPEN Alliance TC10 के अनुसार डेटा लाइन पर Wake-up)।

स्टैक इंटरैक्शन में, Eth_ModeType विशेष रूप से सेवा परत (ComM) से मध्यवर्ती परतों के माध्यम से संचार ड्राइवरों (EthTrcv) तक वेक-अप अनुरोधों को आगे बढ़ाने का समर्थन करता है, जिससे आवश्यकतानुसार डेटा लाइन पर Wake-up और Sleep कार्यक्षमता वाले हार्डवेयर को नियंत्रित किया जाता है ([SWS_Eth_91008])।

यह उपयोग नोट विनिर्देश SWS_Eth_91008 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप Eth_StateType [SWS_Eth_00159] 📄 PDF

Status supervision used for Development Error Detection. The state shall be available for debugging.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: c3ab864e1cec उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

एन्यूमिरेशन प्रकार Eth_StateType हेडर Eth_GeneralTypes.h के माध्यम से प्रदान किया जाता है और [SWS_Eth_00159] के अनुसार Ethernet ड्राइवर की स्थिति की निगरानी का कार्य करता है। इसका उद्देश्य डेवलपमेंट त्रुटियों का पता लगाने (Development Error Detection) का समर्थन करना है, जहाँ विनिर्देश के अनुसार वर्तमान स्थिति डिबगिंग उद्देश्यों के लिए उपलब्ध होनी चाहिए ([SWS_Eth_00159])।

स्थिति प्रबंधन के लिए Eth_StateType दो असतत गणना मानों को परिभाषित करता है ([SWS_Eth_00159]):

  • ETH_STATE_UNINIT (मान 0x00): इंगित करता है कि Ethernet ड्राइवर अभी तक कॉन्फ़िगर नहीं किया गया है ([SWS_Eth_00159])।
  • ETH_STATE_INIT (मान 0x01): इंगित करता है कि Ethernet ड्राइवर सफलतापूर्वक कॉन्फ़िगर किया गया है ([SWS_Eth_00159])।

त्रुटि प्रबंधन और इंटरैक्शन के संबंध में, यह स्थिति प्रकार आंतरिक त्रुटि पहचान का आधार बनता है। यह माना जा सकता है कि ड्राइवर API इस स्थिति को क्वेरी करते हैं और कॉलों को अस्वीकार करते हैं जब तक कि ड्राइवर अन-इनिशियलाइज़्ड स्थिति ETH_STATE_UNINIT में रहता है ([SWS_Eth_00159])। प्रश्न Q-35a17e3267274d70 (खुला) ड्राइवर के स्थिति ETH_STATE_INIT में परिवर्तित होने के बाद ही, इसे कॉन्फ़िगर और संचालन के लिए तैयार माना जाता है ([SWS_Eth_00159])। चूँकि प्रकार परिभाषा Eth_GeneralTypes.h में स्थित है, यह ड्राइवरों में सार्वभौमिक रूप से उपलब्ध है ([SWS_Eth_00159])।

यह पाठ AUTOSAR CP R20-11 विनिर्देश के आधार पर एक AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप Eth_FrameType [SWS_Eth_00160] 📄 PDF

This type defines the Ethernet frame type used in the Ethernet frame header

टाइप Eth_DataType [SWS_Eth_00161] 📄 PDF

This type defines the Ethernet data type used for data transmission. Its definition depends on the used CPU.

टाइप Eth_RxStatusType [SWS_Eth_00162] 📄 PDF

Used as out parameter in Eth_ Receive() indicates whether a frame has been received and if so, whether more frames are available or frames go t lost.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 91a81f4cdad3 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और मान श्रेणी

एन्यूमिरेशन प्रकार Eth_RxStatusType [SWS_Eth_00162] के अनुसार हेडर फ़ाइल Eth_GeneralTypes.h में परिभाषित किया गया है। यह फ़ंक्शन Eth_Receive() में आउट पैरामीटर (out parameter) के रूप में कार्य करता है, जिसके माध्यम से Ethernet ड्राइवर सूचित करता है कि क्या कोई Ethernet फ़्रेम प्राप्त हुआ था और क्या बाद में बफ़र में अतिरिक्त फ़्रेम मौजूद हैं या डेटा खो गया है [SWS_Eth_00162]।

विनिर्देश इस प्रकार के लिए तीन असतत (discrete) एन्यूमिरेशन मान परिभाषित करता है [SWS_Eth_00162]:

  • ETH_RECEIVED (0x00): एक Ethernet फ़्रेम प्राप्त हुआ था; नियंत्रक में कोई और फ़्रेम उपलब्ध नहीं है।
  • ETH_NOT_RECEIVED (0x01): कोई Ethernet फ़्रेम प्राप्त नहीं हुआ था; कोई अतिरिक्त फ़्रेम मौजूद नहीं है।
  • ETH_RECEIVED_MORE_DATA_AVAILABLE (0x02): एक Ethernet फ़्रेम प्राप्त हुआ था, और पुनर्प्राप्ति के लिए अतिरिक्त फ़्रेम उपलब्ध हैं।

फ़्रेम प्रोसेसिंग में परस्पर क्रिया

Eth_Receive() को कॉल करते समय, कॉलिंग लेयर प्रकार Eth_RxStatusType के वेरिएबल का एक पॉइंटर पास करती है। इस आउटपुट पैरामीटर का मूल्यांकन प्राप्ति चक्र के आगे के प्रवाह को नियंत्रित करता है: रिटर्न मान ETH_RECEIVED_MORE_DATA_AVAILABLE संभवतः कॉलर के लिए Eth_Receive() को तुरंत फिर से कॉल करने के मानदंड के रूप में काम कर सकता है, ताकि प्राप्ति बफ़र से शेष फ़्रेमों को तेज़ी से संसाधित किया जा सके [SWS_Eth_00162]। प्रश्न Q-4ed309522aa004f8 (खुला) इसके विपरीत, स्थितियाँ ETH_RECEIVED और ETH_NOT_RECEIVED संकेत देती हैं कि बफ़र समाप्त हो चुका है और प्रसंस्करण के लिए कोई अतिरिक्त डेटा लंबित नहीं है। Eth_GeneralTypes.h के माध्यम से प्रावधान सभी मॉड्यूलों में एक सुसंगत प्रकार के उपयोग को सुनिश्चित करता है [SWS_Eth_00162]।

यह पाठ एक AI द्वारा जनरेट किया गया था और यह विशेष रूप से AUTOSAR R20-11 के विनिर्देश डेटा पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप Eth_FilterActionType [SWS_Eth_00163] 📄 PDF

The Enumeration Type Eth_ Filter Action Type describes the action to be taklen for the MAC address given in *Phys Addr Ptr.

टाइप Eth_TimeStampQualType [SWS_Eth_00177] 📄 PDF

Depending on the HW, quality information regarding the evaluated time stamp might be supported. If not supported, the value shall be always Valid. For Uncertain and Invalid values, the upper layer shall discard the time stamp.

टाइप Eth_TimeStampType [SWS_Eth_00178] 📄 PDF

Variables of this type are used for expressing time stamps including relative time and absolute calendar time. The absolute time starts at 1970 - - 01. 0 to 281474976710655s == 3257812230d [0x FFFF FFFF FFFF] 0 to 999999999ns [0x3B9A C9FF] invalid value in nanoseconds: [0x3B9A CA00] to [0x3FFF FFFF] Bit 30 and 31 reserved, default: 0

टाइप Eth_TimeIntDiffType [SWS_Eth_00179] 📄 PDF

Variables of this type are used to express time differences.

टाइप Eth_RateRatioType [SWS_Eth_00180] 📄 PDF

Variables of this type are used to express frequency ratios.

टाइप Eth_MacVlanType [SWS_Eth_91001] 📄 PDF

This type is used to read out addresses from the address resolution logic (A RL) table of the switch. typedef struct { uint8 Mac Addr[6U]; uint16 Vlan Id; uint32 Switch Port; } Eth_ Mac Vlan Type; In case of Macaddr contains a Multicast Address Mac Vlan Type.Switch Port shall be handled as Bitmask, each bit represents a Switch Port , Bit 0 represents Eth Swicht Port Idx = 0 , Bit 1 represents Eth Swicht Port Idx = 1 and so on. In case of Macaddr contains not a Multicast Address Mac Vlan Type.Switch Port shall be handled as a value representing the Eth Switch Port Idx.

टाइप Eth_TxErrorCounterValuesType [SWS_Eth_91004] 📄 PDF

Type Eth_TxErrorCounterValuesType.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: cf651d8e65c0 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और उद्देश्य

डेटा प्रकार Eth_TxErrorCounterValuesType [SWS_Eth_91004] के अनुसार Ethernet ड्राइवर में डायग्नोस्टिक उद्देश्यों के लिए सांख्यिकीय काउंटरों की एक संरचना के रूप में निर्दिष्ट है। परिभाषा हेडर फ़ाइल Eth_GeneralTypes.h के माध्यम से उपलब्ध है। यह संरचना कई 32-बिट काउंटरों (uint32) को बंडल करती है, जो इंटरफ़ेस स्तर पर विशिष्ट ट्रांसमिशन स्थितियों और ट्रांसमिशन बाधाओं को मैप करते हैं।

संरचना घटक और सिमेंटिक्स

व्यक्तिगत काउंटर [SWS_Eth_91004] के अनुसार मानकीकृत नेटवर्क MIB परिभाषाओं पर आधारित हैं:

  • Tx Dropped No Error Pkts: आउटगोइंग पैकेटों की संख्या जिन्हें त्रुटिहीन स्थिति के बावजूद छोड़ दिया गया था, उदाहरण के लिए बफ़र मेमोरी को खाली करने के लिए (RFC1213 ifOutDiscards)।
  • Tx Dropped Error Pkts: उन पैकेटों की संख्या जिन्हें उत्पन्न हुई त्रुटियों के कारण प्रेषित नहीं किया जा सका (RFC1213 ifOutErrors)।
  • Tx Deferred Trans: उन frames की संख्या, जिनका पहला ट्रांसमिशन प्रयास इसलिए विलंबित हुआ क्योंकि ट्रांसमिशन माध्यम व्यस्त था (RFC1643 dot3StatsDeferredTransmissions)।
  • Tx Single Collision और Tx Multiple Collision: सफलतापूर्वक ट्रांसमिट किए गए frames, जिनका ट्रांसमिशन क्रमशः ठीक एक या एकाधिक टकरावों के कारण विलंबित हुआ था (RFC1643)।
  • Tx Late Collision: टकराव, जो पैकेट ट्रांसमिशन शुरू होने के 512 बिट-समय से अधिक समय बाद पहचाने गए थे (RFC1643 dot3StatsLateCollisions)।
  • Tx Excessive Collison: उन ट्रांसमिशनों की संख्या, जो अत्यधिक टकरावों के परिणामस्वरूप अंततः विफल हो गए (RFC1643 dot3StatsExcessiveCollisions)।

कॉल संदर्भ और सीमाएँ

Interpretation: चूंकि विनिर्देश उद्धरण में कोई संबद्ध API फ़ंक्शन सूचीबद्ध नहीं है, इसलिए यह डायग्नोसिस प्रकार संभवतः काउंटर क्वेरी के लिए संगत ड्राइवर फ़ंक्शनों को पॉइंटर के माध्यम से आउटपुट पैरामीटर के रूप में पास किया जाएगा। प्रश्न Q-2bfbe59d1fb81938 (खुला) स्रोतों में इस शुद्ध डेटा संरचना के लिए त्रुटि प्रबंधन, DET संदेशों या समवर्तीता (concurrency) संबंधी विशिष्ट आवश्यकताएं परिभाषित नहीं हैं।

यह पाठ AUTOSAR CP R20-11 विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।

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

Record
AUTOSAR/AP/record/CP_MOD_Eth
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_Eth@rel:R20-11#90eac588
Content hash
90eac588
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_EthernetDriver.pdf#nameddest=SWS_Eth_00027

आरंभीकरण और स्थिति

Eth_GetVersionInfo फ़ंक्शन

Returns the version information of this module

void Eth_GetVersionInfo (Std_VersionInfoType* VersionInfoPtr);
Eth_Init फ़ंक्शन

Initializes the Ethernet Driver

void Eth_Init (const Eth_ConfigType* CfgPtr);

सेवाएँ · Get…

Eth_GetControllerMode फ़ंक्शन

Obtains the state of the indexed controller Tags: atp.Status=obsolete

Std_ReturnType Eth_GetControllerMode (uint8 CtrlIdx, Eth_ModeType* CtrlModePtr);
Eth_GetControllerMode#2 फ़ंक्शन

Obtains the communication state of the indexed controller Tags: atp.Status=draft

Std_ReturnType Eth_GetControllerMode (uint8 CtrlIdx, Eth_ModeType* CtrlModePtr);
Eth_GetCounterValues फ़ंक्शन

Reads a list with drop counter values of the corresponding controller. The meaning of these values is described at Eth_ Counter Type.

Std_ReturnType Eth_GetCounterValues (uint8 CtrlIdx, Eth_CounterType* CounterPtr);
Eth_GetCurrentTime फ़ंक्शन

Returns a time value out of the HW registers according to the capability of the HW. Is the HW resolution is lower than the Eth_ Time Stamp Type resolution resp. range, than an the remainin g bits will be filled with 0. Important Note: Eth_ Get Current Time may be called within an exclusive area.

Std_ReturnType Eth_GetCurrentTime (uint8 CtrlIdx, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);
Eth_GetEgressTimeStamp फ़ंक्शन

Reads back the egress time stamp on a dedicated message object. It must be called within the Tx Confirmation() function.

Std_ReturnType Eth_GetEgressTimeStamp (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);
Eth_GetIngressTimeStamp फ़ंक्शन

Reads back the ingress time stamp on a dedicated message object. It must be called within the Rx Indication() function.

Std_ReturnType Eth_GetIngressTimeStamp (uint8 CtrlIdx, const Eth_DataType* DataPtr, Eth_TimeStampQualType* timeQualPtr, Eth_TimeStampType* timeStampPtr);
Eth_GetPhysAddr फ़ंक्शन

Obtains the physical source address used by the indexed controller

void Eth_GetPhysAddr (uint8 CtrlIdx, uint8* PhysAddrPtr);
Eth_GetRxStats फ़ंक्शन

Returns the following list according to IETF RFC281 9, where the maximal possible value shall denote an invalid value, e.g. if this counter is not available: 1. ether Stats Drop Events 2. ether Stats Octets 3. ether Stats Pkts 4. ether Stats Broadcast Pkts 5. ether Stats Multicast Pkts 6. ether Stats Crc Al ign Errors 7. ether Stats Undersize Pkts 8. ether Stats Oversize Pkts 9. ether Stats Fragments 10. ether Stats Jabbers 11. ether Stats Collisions 12. ether Stats Pkts64Octets 13. ether Stats Pkts65to127Octets 14. ether Stats Pkts128to255Octets 15. ether St ats Pkts256to511Octets 16. ether Stats Pkts512to1023Octets 17. ether

Std_ReturnType Eth_GetRxStats (uint8 CtrlIdx, Eth_RxStatsType* RxStats);
Eth_GetTxErrorCounterValues फ़ंक्शन

Returns the list of Transmission Error Counters out of IETF RFC1213 and RFC1643 defined with Eth_ Tx Error Counter Values Type, where the maximal possible value shall denote an invalid value, e.g. this counter is not available.

Std_ReturnType Eth_GetTxErrorCounterValues (uint8 CtrlIdx, Eth_TxErrorCounterValuesType* TxErrorCounterValues);
Eth_GetTxStats फ़ंक्शन

Returns the list of Transmission Statistics out of IETF RFC1213 defined with Eth_ Tx Stats Type, where the maximal possible value shall denote an invalid value, e.g. this counter is not available.

Std_ReturnType Eth_GetTxStats (uint8 CtrlIdx, Eth_TxStatsType* TxStats);

सेवाएँ · Set…

Eth_SetControllerMode फ़ंक्शन

Enables / disables the indexed controller Tags: atp.Status=obsolete

Std_ReturnType Eth_SetControllerMode (uint8 CtrlIdx, Eth_ModeType CtrlMode);
Eth_SetControllerMode#2 फ़ंक्शन

Enables / Disables Rx/ Tx communication of the indexed controller Tags: atp.Status=draft

Std_ReturnType Eth_SetControllerMode (uint8 CtrlIdx, Eth_ModeType CtrlMode);
Eth_SetPhysAddr फ़ंक्शन

Sets the physical source address used by the indexed controller

void Eth_SetPhysAddr (uint8 CtrlIdx, const uint8* PhysAddrPtr);

सेवाएँ · अन्य

Eth_EnableEgressTimeStamp फ़ंक्शन

Activat es egress time stamping on a dedicated message object. Some HW does store once the egress time stamp marker and some HW needs it always before transmission. There will be no "disable" functionality, due to the fact, that the message type is always "time st amped" by network design.

void Eth_EnableEgressTimeStamp (uint8 CtrlIdx, Eth_BufIdxType BufIdx);
Eth_ProvideTxBuffer फ़ंक्शन

Provides access to a transmit buffer of the FIFO related to the specified priority

BufReq_ReturnType Eth_ProvideTxBuffer (uint8 CtrlIdx, uint8 Priority, Eth_BufIdxType* BufIdxPtr, uint8* * BufPtr, uint16* LenBytePtr);
Eth_ReadMii फ़ंक्शन

Reads a transceiver register

Std_ReturnType Eth_ReadMii (uint8 CtrlIdx, uint8 TrcvIdx, uint8 RegIdx, uint16* RegValPtr);
Eth_Receive फ़ंक्शन

Receive a frame from the related fifo.

void Eth_Receive (uint8 CtrlIdx, uint8 FifoIdx, Eth_RxStatusType* RxStatusPtr);
Eth_Transmit फ़ंक्शन

Triggers transmission of a previously filled transmit buffer

Std_ReturnType Eth_Transmit (uint8 CtrlIdx, Eth_BufIdxType BufIdx, Eth_FrameType FrameType, boolean TxConfirmation, uint16 LenByte, const uint8* PhysAddrPtr);
Eth_UpdatePhysAddrFilter फ़ंक्शन

Update the physica l source address to/ from the indexed controller filter. If the Ethernet Controller is not capable to do the filtering, the software has to do this.

Std_ReturnType Eth_UpdatePhysAddrFilter (uint8 CtrlIdx, const uint8* PhysAddrPtr, Eth_FilterActionType Action);
Eth_WriteMii फ़ंक्शन

Configures a transceiver register or triggers a function offered by the receiver

Std_ReturnType Eth_WriteMii (uint8 CtrlIdx, uint8 TrcvIdx, uint8 RegIdx, uint16 RegVal);

कॉलबैक

Eth_TxConfirmation फ़ंक्शन

Triggers frame transmission confirmation

void Eth_TxConfirmation (uint8 CtrlIdx);

चक्रीय

Eth_MainFunction फ़ंक्शन

The function checks for controller errors and lost frames. Used for polling state changes. Calls Eth If_ Ctrl Mode Indication when the controller mode changed.

void Eth_MainFunction (void);

टाइप

Eth_BufIdxType टाइप

Ethernet buffer identifier type.

Eth_ConfigType टाइप

Implementation specific structure of the post build configuration

Eth_CounterType टाइप

Type Eth_CounterType.

Eth_DataType टाइप

This type defines the Ethernet data type used for data transmission. Its definition depends on the used CPU.

The Enumeration Type Eth_ Filter Action Type describes the action to be taklen for the MAC address given in *Phys Addr Ptr.

Eth_FrameType टाइप

This type defines the Ethernet frame type used in the Ethernet frame header

Eth_MacVlanType टाइप

This type is used to read out addresses from the address resolution logic (A RL) table of the switch. typedef struct { uint8 Mac Addr[6U]; uint16 Vlan Id; uint32 Switch Port; } Eth_ Mac Vlan Type; In case of Macaddr contains a Multicast Address Mac Vlan Type.Switch Port shall be handled as Bitmask, each bit represents a Switch Port , Bit 0 represents Eth Swicht Port Idx = 0 , Bit 1 represents Eth Swicht Port Idx = 1 and so on. In case of Macaddr contains not a Multicast Address Mac Vlan Type.Switch Port shall be handled as a value representing the Eth Switch Port Idx.

Eth_ModeType टाइप

This is an generic type and used in the layers of the Ethernet communication stack (e.g. EthIf, Eth, EthSwt, EthTrcv) to enable and disable, resp ectively, the Ethernet communcation channel and set the corresponding hardware (e.g. Ethernet controller, Ethernet Switch port, Ethernet transceiver) to an lowpower sleep and power on mode, respectively. Tags: atp.Status=obsolete

Eth_ModeType#2 टाइप

This is an generic type and used in the layers of the Ethernet commun ication stack (e.g. Eth If, Eth, Eth Swt, Eth Trcv) to enable and disable, respectively, the Ethernet communcation channel and set the corresponding hardware (e.g. Ethernet controller, Ethernet Switch port, Ethernet transceiver) to an lowpower sleep and po wer on mode, respectively. The type also support to transfer a wake - up request from the services layer (Com M) to the communication drivers (Eth Trcv). This could be used e.g. for Ethernet hardware that has the capability to wake - up and sleep on data line (see OA TC10) Tags: atp.Status=draft

Eth_RateRatioType टाइप

Variables of this type are used to express frequency ratios.

Eth_RxStatsType टाइप

Type Eth_RxStatsType.

Eth_RxStatusType टाइप

Used as out parameter in Eth_ Receive() indicates whether a frame has been received and if so, whether more frames are available or frames go t lost.

Eth_StateType टाइप

Status supervision used for Development Error Detection. The state shall be available for debugging.

Eth_TimeIntDiffType टाइप

Variables of this type are used to express time differences.

Depending on the HW, quality information regarding the evaluated time stamp might be supported. If not supported, the value shall be always Valid. For Uncertain and Invalid values, the upper layer shall discard the time stamp.

Eth_TimeStampType टाइप

Variables of this type are used for expressing time stamps including relative time and absolute calendar time. The absolute time starts at 1970 - - 01. 0 to 281474976710655s == 3257812230d [0x FFFF FFFF FFFF] 0 to 999999999ns [0x3B9A C9FF] invalid value in nanoseconds: [0x3B9A CA00] to [0x3FFF FFFF] Bit 30 and 31 reserved, default: 0

Type Eth_TxErrorCounterValuesType.

Eth_TxStatsType टाइप

Statistic counter for diag nostics.