DEENESPTFRRUARHIKOZHNL

Ethernet Driver (Eth)

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

دليل الوحدةمولَّد بالذكاء الاصطناعي

يربط وحدات تحكم Ethernet بحزمة AUTOSAR: التهيئة، الأوضاع، الإرسال، الاستقبال والتشخيص.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: claude-opus-5-5 · الجهد: high · درجة الحرارة: غير قابل للتحكم · الموجّه: 7ed698a8fca3 المصدر أسئلة مفتوحة (3)
المرساة السببية: R20-11 صالح اعتبارًا من R20-11 مُركَّب حديثًا لهذا الإصدار من المواصفة.
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يربط وحدات تحكم Ethernet بحزمة 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 واحدة أو أكثر لصالح Ethernet Interface (EthIf). ويمكن لـ 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 الوصول إلى السجلات وذاكرة التخزين المؤقت

مخطط السياق: المتصلون ومستلمو الاستدعاء المرجعي لبرنامج تشغيل Ethernet. المصادر: [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، وفي وضع الاستقصاء (Polling) من 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]).

إرسال إطار في وضع الاستقصاء (Polling)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)

مخطط التتابع: طلب المخزن المؤقت، الإرسال والتأكيد في وضع الاستقصاء. المصادر: [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 وحدود النظام

يقع برنامج تشغيل 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]).

تتضمن الوحدات المجاورة الأخرى الوحدات التالية:

إذا تشاركت وحدات تحكم متعددة في موارد الأجهزة الطرفية، فإن 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 الوصول إلى السجلات وذاكرة التخزين المؤقت

مخطط السياق: يتم استدعاء 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].

بدء تشغيل مشغل Ethernet مع أول وصول MIIEcuMEthIfEthEthTrcvتفسير: ترتيب استدعاءات EcuM؛يجب أن يتم Eth_Init قبل عمليات وصول MIIEth_Init(CfgPtr)Rx/Tx aller Controller deaktivieren,مسح المقاطعات، وتكوين المعلماتوذاكرات التخزين المؤقت، وإلغاء المهامEthTrcv_Init(...)EthIf_WriteMii(...)Eth_WriteMii(CtrlIdx, TrcvIdx, RegIdx, RegVal)E_OK (Dienst angenommen)E_OKوصول MII يعمل بشكل غير متزامن في R20-11EthTrcv_WriteMiiIndication(...)EthIf_Init(...)

مخطط التتابع: بدء التشغيل باستخدام Eth_Init والوصول الأول إلى MII لبرنامج تشغيل جهاز الإرسال والاستقبال والمؤكد بشكل غير متزامن. المصادر: [SWS_Eth_00275]، [SWS_Eth_00058]، [SWS_Eth_00241]، SWS EthIf ص. 84

في R20-11، ينطبق Eth_SetControllerMode في نسخته غير المتزامنة وغير القابلة لإعادة الدخول [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، يمكن للعتاد بدء عملية سكون (Sleep)، كما هو الحال في عتاد 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 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، وإعادة ضبط ذاكرات التخزين المؤقت، وتحرير ذاكرات الإرسال المؤقتة المحجوزة والمعلقة

مخطط الحالة: حالة برنامج التشغيل UNINIT/INIT والأوضاع DOWN وACTIVE لكل وحدة تحكم مع الالتزامات أثناء الانتقال. المصادر: [SWS_Eth_00159]، [SWS_Eth_00275]، [SWS_Eth_00276]، [SWS_Eth_00280]

تفعيل وحدة تحكم EthernetEthSMEthIfEthEthIf_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)

مخطط التتابع: التنشيط بواسطة 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]). أثناء ذلك، يقوم برنامج التشغيل بإنشاء ترويسة Ethernet (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).

إرسال إطار في وضع الاستقصاء (Polling)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)

مخطط التتابع: طلب المخزن المؤقت، ملؤه، إرساله وتأكيده في وضع الاستقصاء، مع مسار النجاح والخطأ. المصادر: [SWS_Eth_00077]، [SWS_Eth_00087]، [SWS_Eth_00243]، [SWS_Eth_00256]، SWS EthIf ص. 87

مسار الاستقبال ومرشح العناوين

يقرأ Eth_Receive إطاراً من FIFO المحددة عبر FifoIdx. الخدمة قابلة لإعادة الدخول لمختلف الـ 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]). وتُعرض أطر البث العام (Broadcast) على هذا النحو ([SWS_Eth_00153]). وتسمي الإصدارات الأحدث المعلمة QueueIdx (SWS Eth ص. 110).

يضبط Eth_SetPhysAddr عنوان المصدر الخاص به؛ ويقرأه Eth_GetPhysAddr ([SWS_Eth_00151]، [SWS_Eth_00052]). يُدرج Eth_UpdatePhysAddrFilter عناوين وجهة البث المتعدد (Multicast) في مرشح الاستقبال باستخدام ETH_ADD_TO_FILTER ويزيلها باستخدام ETH_REMOVE_FROM_FILTER ([SWS_Eth_00152]، [SWS_Eth_00163]، [SWS_Eth_00150]).

إذا تطابق عنوان الوجهة، يُخطر Eth الطبقة العليا؛ وإلا فإنه يسقط الإطار ([SWS_Eth_00245]، [SWS_Eth_00246]). إذا تعذر على الأجهزة التصفية، تُفعّل التهيئة Promiscuous Mode ([SWS_Eth_00146]). ويقلص العنوان 00:00:00:00:00:00 المرشح إلى عنوان البث الفردي (Unicast) الخاص به وينهي Promiscuous Mode ([SWS_Eth_00147]؛ قارن SWS Eth ص. 74).

الاستقبال في وضع الاستقصاء (Polling) ووضع المقاطعة (Interrupt)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(...)

مخطط التتابع: الاستقبال في وضع الاستقصاء ووضع المقاطعة مع التحقق من العنوان قبل الإشارة. المصادر: [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]). يتم الوصول إلى سجلات Clause-45 عبر السجلين 13 و14 وفقاً لـ Annex 22D ([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 وقت الأجهزة كـ Eth_TimeStampType مع 48 بت ثوانٍ بالإضافة إلى النانو ثانية ([SWS_Eth_00181]، [SWS_Eth_00178]).
  • يُفعّل 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 تكون الخدمة معيارية.

الطابع الزمني للإرسال عبر مشغل EthernetEthTSynEthIfEth[EthTSynHardwareTimestampSupport == TRUE]EthIf_EnableEgressTimeStamp(CtrlIdx, BufIdx)Eth_EnableEgressTimeStamp(CtrlIdx, BufIdx)EthIf_Transmit(...)Eth_Transmit(...)EthIf_TxConfirmation(CtrlIdx, BufIdx, Result)EthTSyn_TxConfirmation(CtrlIdx, BufIdx, Result)الاسترداد في سياق TxConfirmationEthIf_GetEgressTimeStamp(CtrlIdx, BufIdx, ...)Eth_GetEgressTimeStamp(CtrlIdx, BufIdx,timeQualPtr, timeStampPtr)E_OK، الجودة، الطابع الزمنيE_OK، الجودة، الطابع الزمنيaltالجودة == ETH_VALIDZeitstempel verwendenETH_UNCERTAIN أو ETH_INVALIDZeitstempel verwerfen

مخطط التتابع: تفعيل طابع وقت الإرسال، الإرسال والقراءة في سياق التأكيد مع التحقق من الجودة. المصادر: [SWS_Eth_00186]، [SWS_Eth_00190]، [SWS_Eth_00177]، SWS EthTSyn ص. 70، SWS EthTSyn ص. 55

يمكن تفعيل أربع خدمات تشخيص بشكل فردي:

في خدمات الإحصاء، تشير القيمة القصوى إلى عداد غير متوفر (SWS Eth ص. 98).

التكوين، والتقسيم وإدارة المخزن المؤقت البرمجي (CBS)

باستخدام EthCtrlEnableOffloadChecksumIPv4 وEthCtrlEnableOffloadChecksumICMP وEthCtrlEnableOffloadChecksumTCP وEthCtrlEnableOffloadChecksumUDP، تحسب وحدة التحكم مجاميع التحقق في الأجهزة. وعند الاستقبال، تسقط الأطر ذات مجموع التحقق الخاطئ ([SWS_Eth_00216]، [SWS_Eth_00217]). ويجب أن تفي العناوين الأساسية للمخازن المؤقتة بمحاذاة جميع أنواع بيانات AUTOSAR ([SWS_Eth_00218]). يجب رفض تعيينات الأقسام غير المدعومة. ويجب أن تكون الأقسام في EthCtrlEcucPartitionRef مجموعة فرعية من EthEcucPartitionRef ([SWS_Eth_00257]، [SWS_Eth_00260]، [SWS_Eth_CONSTR_00001]).

إذا كان الجدولة العادلة مفقودة في الأجهزة، يتوفر Credit Based Shaper في البرمجيات (SWS Eth ص. 38). في R20-11، جميع المتطلبات ذات الصلة هي DRAFT. تعمل العملية على النحو التالي:

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 نقل رسائل إضافية حتى حد الاندفاع (Burst)، وخصم الائتمانات لكل رسالة b->burst لا ende Ende stop->ende burst->more تفسير: المتابعة مع FIFO التالية more->c2 نعم more->ende لا

مخطط النشاط: تشغيل CBS في Eth_MainFunction مع تحديث الرصيد، وفحص الحد الأدنى للرصيد وتفرع اندفاع PLCA. المصادر: [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]). وينتج عن فشل الوصول إلى وحدة التحكم ETH_E_ACCESS مع DEM_EVENT_STATUS_PREFAILED؛ ثم يُرجع 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، يُرجح تطبيق متغير DET بسبب [SWS_Eth_00016]. سؤال (مفتوح)

أدلة تفصيلية إضافية

دليل تم إنشاؤه بواسطة الذكاء الاصطناعي استناداً إلى مقتطفات المواصفات في الحمولة. المرجع الحاسم هو متطلبات 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، وتملك معرّف الخدمة 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].

في حالة حدوث وصول غير مهيأ، يتم توفير معالجة مستهدفة للأخطاء: عند تفعيل اكتشاف أخطاء التطوير (Development Error Detection, 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.

دليل المنفِّذ قيد الإعداد (التعقيد 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 لتفعيل (ETH_MODE_ACTIVE) أو تعطيل (ETH_MODE_DOWN) وحدة تحكم Ethernet المعنونة عبر المعامل CtrlIdx [SWS_Eth_00041]. وفي AUTOSAR Classic R20-11، صُنفت هذه الخدمة على أنها مهملة (obsolete) [SWS_Eth_00041].

تنفيذ الخدمة غير متزامن وغير قابل لإعادة الدخول (Non Reentrant) [SWS_Eth_00041]. وتُعيد الدالة E_OK كقيمة إرجاع عند بدء التشغيل بنجاح أو E_NOT_OK إذا تعذر تبديل وضع التشغيل [SWS_Eth_00041]. تفسير: نظرًا لتحديد الاستدعاء على أنه غير متزامن دون تعريف رد اتصال (callback) في حمولة البيانات، فمن المحتمل أن يكتمل اعتماد الحالة الفعلي قريبًا من العتاد في خلفية المشغل بعد عودة الدالة. سؤال Q-d7ec04578e921eb9 (مفتوح)

إذا تم تعطيل وحدة التحكم أو اتصالات الإرسال والاستقبال الخاصة بها عبر Eth_SetControllerMode، تُطبّق عمليات إلزامية لتنظيف المخزن المؤقت:

بسبب الخاصية 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 (معرّف الخدمة Service-ID 0x03، المقدمة عبر Eth.h) لتفعيل وإلغاء تفعيل اتصال الاستقبال والإرسال (Rx/Tx) لوحدة تحكم Ethernet محددة [SWS_Eth_91009].

الاستخدام وشروط الاستدعاء

يتم تنفيذ الدالة بشكل غير متزامن ومحددة بأنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_Eth_91009]. عند الاستدعاء، يتم تمرير معلمتين:

  • CtrlIdx: فهرس وحدة التحكم المعنية في سياق برنامج تشغيل Ethernet [SWS_Eth_91009].
  • CtrlMode: الوضع المستهدف لوحدة التحكم، إما ETH_MODE_ACTIVE لتفعيل اتصال Rx/Tx أو 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].

الأحكام الحالية لتحرير المخازن المؤقتة المقفلة والمعلقة بالإضافة إلى تعريف الدالة نفسه تحمل الحالة «draft» [SWS_Eth_91009]، [SWS_Eth_00280]، [SWS_Eth_00281]. وهي تحل محل المتطلبات السابقة تاريخيًا [SWS_Eth_00137] و[SWS_Eth_00138]، والتي تم تصنيفها على أنها مهملة.

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفات AUTOSAR.

دليل المنفِّذ قيد الإعداد (التعقيد 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، وتملك معرّف الخدمة 0x12 [SWS_Eth_00152]. تُستخدم الدالة لإضافة عنوان فعلي إلى مرشح وحدة تحكم Ethernet مفهرسة أو لإزالته منه [SWS_Eth_00152].

تتضمن معاملات الدالة ثلاث قيم دخل [SWS_Eth_00152]:

  • CtrlIdx: يحدد فهرس وحدة تحكم Ethernet المعنية داخل سياق برنامج التشغيل [SWS_Eth_00152].
  • PhysAddrPtr: مؤشر إلى نطاق الذاكرة الذي يحتوي على العنوان الفعلي للوجهة (عنوان MAC) بترتيب بايتات الشبكة؛ وهو عنوان وجهة البث المتعدد لحزمة Ethernet من الطبقة 2 (Layer 2)‏ [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.

دليل المنفِّذ قيد الإعداد (التعقيد 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 لتهيئة سجل خاص بجهاز إرسال واستقبال Ethernet عبر واجهة MII، أو لتشغيل دالة يوفرها جهاز الإرسال والاستقبال [SWS_Eth_00058]. التصريح متاح عبر ملف الرأس Eth.h [SWS_Eth_00058].

الاستخدام والمعلمات

يتم الاستدعاء باستخدام معرّف الخدمة 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]:

فيما يتعلق بالتزامن، تم تحديد Eth_WriteMii على أنها غير متكررة الدخول (Non Reentrant) [SWS_Eth_00058]. لذلك، لا يجوز تنفيذ الاستدعاءات بشكل متزامن دون مزامنة ملائمة من قِبل المتصل.

تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد 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 (معرف الخدمة 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 لهذه الدالة في بيانات المواصفات المتعلقة بالعنصر.

تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على المواصفة.

دليل المنفِّذ قيد الإعداد (التعقيد 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 تسجيل الطوابع الزمنية للإرسال (Egress Time Stamping) لكائن رسالة مخصص لبرنامج تشغيل Ethernet‏ [SWS_Eth_00186]. يتم الاستدعاء عبر ملف الرأس Eth.h بمعرّف الخدمة 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.

دالة 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 إمكانية الوصول إلى مخزن إرسال مؤقت لـ Ethernet خاص بـ FIFO المخصص للأولوية الممررة [SWS_Eth_00077]. ويتم توفيرها عبر ملف الرأس Eth.h، وتُحدد على أنها متكررة الدخول [SWS_Eth_00077]. ويتم عبر معاملات الدخل تمرير فهرس وحدة التحكم CtrlIdx وكذلك أولوية الإطار Priority لتحديد FIFO‏ [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() بعد ذلك، فسيتم تعيين فهرس المخزن المؤقت المحدد إلى Software-FIFO الذي يتطابق تكوينه EthCtrlConfigEgressFifoPriorityAssignment مع الأولوية التي تم تمريرها سابقًا في Eth_ProvideTxBuffer() [SWS_Eth_00268].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد 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 إلى Software-FIFO الذي يتطابق عنصر تكوينه EthCtrlConfigEgressFifoPriorityAssignment مع الأولوية المحددة مسبقًا عند Eth_ProvideTxBuffer() [SWS_Eth_00268]. ومع هذا الاستدعاء، يتم نقل الرسائل المقابلة من Software-FIFOs إلى Hardware-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]. ليس لها قيمة إرجاع، ولكنها تعيد نتيجة الاستعلام عبر المؤشر RxStatusPtr من النوع Eth_RxStatusType إلى المتصل [SWS_Eth_00095]. يوضح معامل الخرج هذا ما إذا كان قد تم استلام إطار بنجاح، وما إذا كانت هناك إطارات إضافية جاهزة للاستلام في المخزن المؤقت لـ FIFO المعني [SWS_Eth_00095].

المعلمات وسياق الاستدعاء

تتطلب الدالة كمعاملات دخل فهرس وحدة التحكم CtrlIdx داخل برنامج تشغيل Ethernet، بالإضافة إلى فهرس FifoIdx الخاص بـ FIFO المراد قراءته [SWS_Eth_00095]. تم التصريح عن الدالة في ملف الرأس Eth.h [SWS_Eth_00095]. ويُرجح عادةً أن يتم الاستدعاء بصورة دورية في إطار آلية استطلاع (Polling) بواسطة طبقات برامج التشغيل أو الواجهات الأعلى. سؤال Q-f5ec0693a5887bcf (مفتوح)

التزامن والقيود

فيما يتعلق بالتزامن، تم تنفيذ Eth_Receive لتكون متكررة الدخول لـ FIFOs المختلفة، ولكنها غير متكررة الدخول لنفس FIFO‏ [SWS_Eth_00095]. الاستدعاءات المتزامنة التي تستعلم عن نفس FIFO لنفس وحدة التحكم غير مسموح بها، ويجب استبعادها بواسطة البرنامج المتصل.

التفاعل مع واجهة Ethernet

في وضع الاستطلاع (Polling)، يلتزم برنامج تشغيل Ethernet، عند نجاح عملية الاستقبال، باستدعاء الدالة EthIf_RxIndication مباشرةً من الروتين Eth_Receive، وذلك لإبلاغ الطبقة العليا بالإطار المستلم لمزيد من المعالجة [SWS_Eth_00244].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على المواصفات.

دليل المنفِّذ قيد الإعداد (التعقيد 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_TxConfirmation المتاحة عبر ملف الرأس Eth.h لإطلاق تأكيد الإرسال لإطارات Ethernet المرسلة بشكل مستهدف [SWS_Eth_00100]. ولها معرف الخدمة 0x0C ويتم تنفيذها بشكل متزامن [SWS_Eth_00100]. وتتوقع الدالة معامل تمرير وحيد هو CtrlIdx، الذي يحدد الفهرس المنطقي لوحدة التحكم المراد مخاطبتها داخل مثيل مشغل Ethernet [SWS_Eth_00100]. ولا توجد قيمة إرجاع (void)، ولا يتم تمرير أي معاملات إخراج [SWS_Eth_00100].

التفاعل في تسلسل الإرسال

في تفاعل الطبقات، يتولى Eth_TxConfirmation تمرير حالة الإرسال إلى واجهة Ethernet العليا. وإذا تم تفعيل الإخطار المقابل، يلتزم مشغل Ethernet باستدعاء EthIf_TxConfirmation مع قيمة النتيجة E_OK للإشارة إلى إرسال ناجح [SWS_Eth_00243]. في وضع الاستعلام (polling mode)، يتم هذا الاستدعاء صراحة من سياق الروتين Eth_TxConfirmation، بينما في الوضع الموجه بالمقاطعة يتم إصداره كبديل مباشرة من روتين المقاطعة [SWS_Eth_00243].

التزامن وشروط التنفيذ

بالنسبة للتنفيذ، يسري القيد المتمثل في أن Eth_TxConfirmation معرفة بأنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_Eth_00100]. لذلك يجب منع الاستدعاءات المتزامنة لنفس وحدة التحكم بواسطة الجهة المستدعية. ويُرجح أن يتم الاستدعاء في وضع الاستعلام دوريًا عادةً عبر آلية تحكم في التسلسل عليا. سؤال Q-c19295838459b689 (مفتوح) لم يتم تحديد رموز أخطاء معينة أو متطلبات لرسائل DET أو DEM في مواصفات الدالة، ولهذا السبب لا توجد معالجة منفصلة للأخطاء.

تم إنشاء هذا النص بواسطة ذكاء اصطناعي؛ وتظل المواصفة المرجعية هي الأساس المعتمد.

دليل المنفِّذ قيد الإعداد (التعقيد 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]. يمكن استنتاج ما يلي من ذلك: يُرجّح أن يتم الاستدعاء دوريًا بواسطة Schedule Manager (SchM) في سياق قائم على المهام، نظراً لعدم تحديد معلمات تمرير أو قيم إرجاع. سؤال Q-690a2dc372d49c6a (مفتوح)

نطاق الوظائف والاستقصاء الدوري (Polling)

تتمثل المهمة الرئيسية للدالة في الاستقصاء الدوري لتغيرات الحالة بالإضافة إلى التحقق من أخطاء وحدة التحكم وإطارات Ethernet المفقودة [SWS_Eth_00171]. إذا تبين للدالة أن وضع وحدة تحكم Ethernet قد تغير، فإنها تستدعي الدالة EthIf_CtrlModeIndication لإبلاغ الطبقة العليا بتغير الحالة [SWS_Eth_00171].

ترتيب المعالجة في مسار الإرسال

في سياق Eth_MainFunction()، تم تحديد ترتيب ثابت لمعالجة برمجيات FIFO (Software-FIFOs) [SWS_Eth_00270]:

  • أولاً، يتم التكرار عبر جميع SW-FIFOs وتحديث حسابات الرصيد الخاصة بها (Credits Account) [SWS_Eth_00270].
  • بعد ذلك، يتم التكرار عبر جميع SW-FIFOs مجددًا والتحقق من وجود رسائل جاهزة للإرسال [SWS_Eth_00270].
  • لكل SW-FIFO تم التكرار عبره، يتم بعد ذلك إجراء محاولة الإرسال [SWS_Eth_00270].

تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي استنادًا إلى مواصفات AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

نوع 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].

فيما يتعلق بدورة الحياة والاستخدام، تجدر الإشارة إلى أن Eth_ModeType تم تمييزه في الإصدار R20-11 بالحالة 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، ويضع العتاد المقابل في وضع السكون منخفض الطاقة (Low-Power-Sleep). وإذا كان العتاد يدعم ذلك، فسيتم أيضًا بدء عملية سكون في نفس الوقت (على سبيل المثال، طلب Sleep على خط البيانات وفقًا لـ OPEN Alliance TC10).
  • ETH_MODE_ACTIVE (0x01): يُفعل اتصالات Rx وTx وينقل العتاد المقترن به إلى وضع التشغيل العادي (Power-on).
  • ETH_MODE_ACTIVE_WITH_WAKEUP_REQUEST (0x02): يُفعل اتصالات Rx وTx، ويضع العتاد في وضع التشغيل، كما يُطلق طلب إيقاظ على الشبكة إذا كان العتاد يدعم إمكانات الإيقاظ (مثل Wake-up عبر خط البيانات وفقاً للمواصفة OPEN Alliance TC10).

في إطار التفاعل داخل الحزمة البرمجية، يدعم 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]).

فيما يتعلق بمعالجة الأخطاء والتفاعل، يشكل نوع الحالة هذا الأساس لاكتشاف الأخطاء الداخلي. ويُرجح افتراض أن واجهات برمجة تطبيقات (APIs) المشغل تستعلم عن هذه الحالة وترفض الاستدعاءات طالما ظل المشغل في الحالة غير المهيأة ETH_STATE_UNINIT ([SWS_Eth_00159]). سؤال Q-35a17e3267274d70 (مفتوح) وفقط عندما ينتقل المشغل إلى الحالة ETH_STATE_INIT، فإنه يُعد مهيأً وجاهزًا للتشغيل ([SWS_Eth_00159]). وبما أن تعريف النوع موجود في Eth_GeneralTypes.h، فإنه متاح عبر المشغلات ([SWS_Eth_00159]).

تم إنشاء هذا النص بواسطة ذكاء اصطناعي استنادًا إلى مواصفات AUTOSAR CP R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد 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. ويُستخدم كمعامل خرج (out parameter) في الدالة Eth_Receive()، والتي يُخطر من خلالها برنامج تشغيل Ethernet بما إذا كان قد تم استلام إطار Ethernet، وما إذا كانت هناك إطارات أخرى متوفرة لاحقًا في المخزن المؤقت أو فُقدت بيانات [SWS_Eth_00162].

تحدد المواصفة ثلاث قيم تعداد منفصلة لهذا النوع [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].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويستند حصريًا إلى بيانات المواصفات من 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_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: عدد الإطارات التي تأخرت محاولة إرسالها الأولى بسبب انشغال وسيط النقل (RFC1643 dot3StatsDeferredTransmissions).
  • Tx Single Collision وTx Multiple Collision: الإطارات المنقولة بنجاح والتي تأخر إرسالها بسبب تصادم واحد تحديدًا أو بسبب عدة تصادمات (RFC1643).
  • Tx Late Collision: التصادمات التي تم اكتشافها بعد مرور أكثر من 512 زمن بت من بدء إرسال الحزمة (RFC1643 dot3StatsLateCollisions).
  • Tx Excessive Collison: عدد عمليات الإرسال التي فشلت نهائيًا نتيجة لكثرة التصادمات (RFC1643 dot3StatsExcessiveCollisions).

سياق الاستدعاء والقيود

تفسير: نظرًا لأن مقتطف المواصفة لا يذكر دالة API مقابلة، يُرجح أن يُمرر هذا النوع التشخيصي كمعامل خرج عبر مؤشر إلى دوال برنامج التشغيل المعنية لاستعلام العدادات. سؤال Q-2bfbe59d1fb81938 (مفتوح) لم يتم في المصادر تحديد متطلبات خاصة بمعالجة الأخطاء أو رسائل DET أو التزامن لهيكل البيانات الصرف هذا.

تم توليد هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR CP R20-11.

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#d5c4446e
Content hash
d5c4446e
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_EthernetDriver.pdf#nameddest=SWS_Eth_00027

التهيئة والحالة

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…

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

Std_ReturnType Eth_GetControllerMode (uint8 CtrlIdx, Eth_ModeType* CtrlModePtr);

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

Std_ReturnType Eth_GetControllerMode (uint8 CtrlIdx, Eth_ModeType* CtrlModePtr);

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);

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);

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);

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);

Obtains the physical source address used by the indexed controller

void Eth_GetPhysAddr (uint8 CtrlIdx, uint8* PhysAddrPtr);

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);

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);

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…

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

Std_ReturnType Eth_SetControllerMode (uint8 CtrlIdx, Eth_ModeType CtrlMode);

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

Std_ReturnType Eth_SetControllerMode (uint8 CtrlIdx, Eth_ModeType CtrlMode);

Sets the physical source address used by the indexed controller

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

الخدمات · أخرى

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);

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);

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);

دوال الاستدعاء الراجع

Triggers frame transmission confirmation

void Eth_TxConfirmation (uint8 CtrlIdx);

دورية

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);

الأنواع

Ethernet buffer identifier type.

Implementation specific structure of the post build configuration

Type Eth_CounterType.

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.

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

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.

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

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

Variables of this type are used to express frequency ratios.

Type Eth_RxStatsType.

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.

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

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.

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.

Statistic counter for diag nostics.