DEENESPTFRRUARHIKOZHNL

AUTOSAR Classic General & Standard Types

Die Standard- und Plattformtypen definieren die grundlegenden C-Typen, Rückgabewerte und Kommunikationsdatenstrukturen der AUTOSAR Classic Architektur. Sie stellen hardwareunabhängige Portabilität für Basissoftware und Applikations-SW-Cs sicher.

क्लस्टर गाइडएआई जनित

सभी BSW मॉड्यूल के लिए हार्डवेयर-स्वतंत्र बुनियादी प्रकार, स्थिति वापसी मान और संचार बफ़र संरचनाएं प्रदान करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 747da3f739d7 उद्गम
कारणात्मक एंकर: R20-11 R20-11 से मान्य इस विनिर्देश संस्करण के लिए नए सिरे से संश्लेषित।
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सभी BSW मॉड्यूल के लिए हार्डवेयर-स्वतंत्र बुनियादी प्रकार, स्थिति वापसी मान और संचार बफ़र संरचनाएं प्रदान करता है।

मॉड्यूल क्लस्टर General & Standard Types हेडर Platform_Types.h, Std_Types.h और ComStack_Types.h के माध्यम से Classic Platform के सभी डेटा प्रकारों, स्थिति प्रतिक्रियाओं और संचार बफ़र्स के लिए हार्डवेयर-स्वतंत्र आधार प्रदान करता है (AUTOSAR_SRS_BSWGeneral पृ. 62)। यह एंडियननेस मॉडल जैसी मूलभूत आर्किटेक्चरल विशेषताओं, Std_ReturnType जैसे मानकीकृत वापसी मानों और PduInfoType जैसी संचार संरचनाओं को मानकीकृत करता है ([SWS_Std_00005], [SWS_COMTYPE_00008])। चूंकि ये निष्पादन योग्य कोड के बिना केवल हेडर परिभाषाएं हैं, इसलिए क्लस्टर को न तो रनटाइम कॉन्फ़िगरेशन की आवश्यकता होती है और न ही इसके अपने कोई टास्क या सक्रिय त्रुटि प्रबंधन होता है (SWS_StandardTypes पृ. 27)।

मॉड्यूल क्लस्टर General & Standard Types में तीन बुनियादी हेडर platform (Platform_Types.h), std (Std_Types.h) और comstack (ComStack_Types.h) शामिल हैं। केवल प्रकार परिभाषाओं के रूप में, उनमें कोई निष्पादन योग्य कोड नहीं होता है और उन्हें किसी कॉन्फ़िगरेशन की आवश्यकता नहीं होती है (SWS_StandardTypes पृ. 27)। वे हार्डवेयर-स्वतंत्र टाइपिंग के लिए प्लेटफ़ॉर्म-व्यापी नींव बनाते हैं, कंपाइलर और हार्डवेयर विशिष्टताओं को मानकीकृत करते हैं, और सुसंगत डेटा संरचनाओं के साथ सभी BSW मॉड्यूल और RTE की आपूर्ति करते हैं (AUTOSAR_SRS_BSWGeneral पृ. 62)।

TypesArchitecture PlatformTypes Platform_Types.h (platform) boolean, TRUE, FALSE CPU_BIT_ORDER, CPU_BYTE_ORDER ConstVoidPtr, C99-Elementartypen StdTypes Std_Types.h (std) Std_ReturnType (E_OK, E_NOT_OK) STD_ON/OFF, STD_HIGH/LOW, STD_ACTIVE/IDLE Std_VersionInfoType, Std_TransformerError PlatformTypes->StdTypes इसके द्वारा शामिल किया जाता है ComStackTypes ComStack_Types.h (comstack) PduIdType, PduLengthType, PduInfoType BufReq_ReturnType, RetryInfoType NetworkHandleType, PNCHandleType StdTypes->ComStackTypes इसके द्वारा शामिल किया जाता है BSWModules BSW & RTE Schichten CanIf, PduR, CanTp, SoAd, Dcm, SecOC, RTE StdTypes->BSWModules इसके द्वारा आयात किया जाता है ComStackTypes->BSWModules इसके द्वारा आयात किया जाता है

आर्किटेक्चर आरेख: निर्यात किए गए प्रकार इंटरफ़ेस के साथ मॉड्यूल क्लस्टर 'General & Standard Types' का स्थिर स्तरित और समावेशन आर्किटेक्चर। स्रोत: AUTOSAR_SRS_BSWGeneral पृ. 62, [SWS_Std_00005], [SWS_COMTYPE_00005]

समावेशन पदानुक्रम क्रमिक रूप से एक दूसरे पर बनता है: Platform_Types.h प्लेटफ़ॉर्म-विशिष्ट विशेषताओं जैसे कि C99 प्रकार boolean ([SWS_Platform_00027]), सार्वभौमिक बफ़र पॉइंटर्स जैसे कि ConstVoidPtr ([SWS_Platform_91002]), साथ ही रजिस्टर बिट क्रम के लिए प्रतीक CPU_BIT_ORDER ([SWS_Platform_00038]) और मेमोरी बाइट क्रम CPU_BYTE_ORDER ([SWS_Platform_00039]) को समाहित करता है। इसके आधार पर, Std_Types.h सार्वभौमिक मानक स्थिरांक जैसे कि STD_ON/STD_OFF ([SWS_Std_00010]), Std_VersionInfoType ([SWS_Std_00015]) के माध्यम से मॉड्यूल संस्करण संरचनाएं, साथ ही E_OK और E_NOT_OK के साथ मौलिक स्थिति प्रणाली Std_ReturnType प्रदान करता है ([SWS_Std_00005], [SWS_Std_00006])।

AUTOSAR संचार स्टैक के लिए, ComStack_Types.h PduIdType ([SWS_COMTYPE_00005]), NetworkHandleType ([SWS_COMTYPE_00038]) और केंद्रीय बफ़र संरचना PduInfoType ([SWS_COMTYPE_00008]) जैसे सभी क्रॉस-प्रोटोकॉल इंटरफ़ेस प्रकारों को परिभाषित करता है। खंडित परिवहन प्रोटोकॉल (जैसे CanTp या DoIP) में, वापसी प्रकार BufReq_ReturnType RetryInfoType के साथ मिलकर BSW परतों के बीच समकालिक बफ़र आरक्षण और डेटा प्रतिलिपि को नियंत्रित करता है (SWS_DiagnosticCommunicationManager पृ. 291, [SWS_COMTYPE_00012])।

ट्रांसपोर्ट प्रोटोकॉल (ComStack_Types) में बफ़र वार्ता और डेटा प्राप्तिCanTpPduRDcmUse Case: 1. रिसेप्शन प्रारंभ और बफ़र क्वेरीPduR_CanTpStartOfReception(id, info, TpSduLength, &bufferSizePtr)Dcm_StartOfReception(id, info, TpSduLength, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OK (bufferSizePtr bereitgestellt)BufReq_ReturnType: BUFREQ_OKUse Case: 2. Segmentierter Datentransferloopfuer jedes empfangene N-PDU SegmentPduR_CanTpCopyRxData(id, PduInfoType*, &bufferSizePtr)Dcm_CopyRxData(id, PduInfoType*, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OKBufReq_ReturnType: BUFREQ_OKUse Case: 3. AbschlussbestaetigungPduR_CanTpRxIndication(id, Std_ReturnType: E_OK)Dcm_TpRxIndication(id, Std_ReturnType: E_OK)

अनुक्रम आरेख: ComStack_Types (PduInfoType, BufReq_ReturnType) का उपयोग करते हुए एक परिवहन प्रोटोकॉल का खंडित प्राप्ति और बफ़र पथ। स्रोत: SWS_PDURouter पृ. 112, SWS_DiagnosticCommunicationManager पृ. 273, SWS_DiagnosticCommunicationManager पृ. 274

यद्यपि क्लस्टर का अपना कोई त्रुटि प्रबंधन या DET संदेश नहीं है (SWS_StandardTypes पृ. 27), Std_ReturnType संपूर्ण सिस्टम के त्रुटि प्रबंधन को संरचित करता है: बिट्स 0 से 5 (0x00 से 0x3F) मानक और एप्लिकेशन त्रुटियों के लिए आरक्षित हैं, जबकि बिट्स 6 और 7 विशेष रूप से RTE द्वारा लिए गए हैं ([SWS_Std_00011], AUTOSAR_CP_SWS_StandardTypes पृ. 15)। सभी प्रकार की परिभाषाएं मल्टीटास्किंग और इंटरप्ट संदर्भों में रीएंट्रेंट उपयोग के लिए निर्दिष्ट हैं (SWS_CANInterface पृ. 87)।

सिस्टम आर्किटेक्चर & मॉड्यूल क्लस्टर की भूमिका

मॉड्यूल क्लस्टर General & Standard Types रिलीज़ R20-11 में AUTOSAR Classic Platform की मूलभूत टाइपोलॉजिकल और हार्डवेयर-अमूर्त नींव बनाता है। यह तीन केवल हेडर मॉड्यूल platform ([SWS_Platform_00038]), std ([SWS_Std_00005]) और comstack ([SWS_COMTYPE_00005]) से बना है। BSW आर्किटेक्चर के अनुसार, ये मॉड्यूल न तो अपना स्वयं का निष्पादन योग्य C कोड प्रदान करते हैं और न ही अन्य BSW ड्राइवरों का अनुरोध करते हैं (SWS_StandardTypes पृ. 27)। उनका मुख्य कार्य कंपाइलर और प्रोसेसर निर्भरताओं को समाहित करना, प्लेटफ़ॉर्म-व्यापी एकसमान बुनियादी प्रकार प्रदान करना और संचार परतों के लिए मानकीकृत डेटा संरचनाएं स्थापित करना है।

परत पदानुक्रम एक सख्त, एकदिशात्मक समावेशन क्रम का पालन करता है: फ़ाइल Platform_Types.h अंतर्निहित माइक्रोकंट्रोलर आर्किटेक्चर के गुणों (जैसे रजिस्टर और मेमोरी लेआउट के साथ-साथ C99 प्राथमिक प्रकार) को अमूर्त करती है, जबकि Std_Types.h इस पर आधारित है और सार्वभौमिक वापसी मान और स्थिति स्थिरांक परिभाषित करती है (AUTOSAR_SRS_BSWGeneral पृ. 62)। इसके आधार पर, ComStack_Types.h CAN, FlexRay, LIN और Ethernet जैसे नेटवर्कों के साथ-साथ ISO 15765-2 के अनुसार परिवहन प्रोटोकॉल और ISO 14229 के अनुसार डायग्नोस्टिक प्रोटोकॉल के लिए सभी बस- और क्रॉस-प्रोटोकॉल डेटा प्रकारों को घोषित करता है ([SWS_COMTYPE_00008], [SWS_COMTYPE_00011])। यह डीकपलिंग सुनिश्चित करती है कि रनटाइम एनवायरनमेंट (RTE) और एप्लिकेशन सॉफ़्टवेयर घटक (SWCs) जैसी उच्च परतें पूरी तरह से पोर्टेबल बनी रहें (SWS_RTE पृ. 818)।

TypesArchitecture PlatformTypes Platform_Types.h (platform) boolean, TRUE, FALSE CPU_BIT_ORDER, CPU_BYTE_ORDER ConstVoidPtr, C99-Elementartypen StdTypes Std_Types.h (std) Std_ReturnType (E_OK, E_NOT_OK) STD_ON/OFF, STD_HIGH/LOW, STD_ACTIVE/IDLE Std_VersionInfoType, Std_TransformerError PlatformTypes->StdTypes इसके द्वारा शामिल किया जाता है ComStackTypes ComStack_Types.h (comstack) PduIdType, PduLengthType, PduInfoType BufReq_ReturnType, RetryInfoType NetworkHandleType, PNCHandleType StdTypes->ComStackTypes इसके द्वारा शामिल किया जाता है BSWModules BSW & RTE Schichten CanIf, PduR, CanTp, SoAd, Dcm, SecOC, RTE StdTypes->BSWModules इसके द्वारा आयात किया जाता है ComStackTypes->BSWModules इसके द्वारा आयात किया जाता है

आर्किटेक्चर आरेख: निर्यात किए गए प्रकार इंटरफ़ेस के साथ मॉड्यूल क्लस्टर 'General & Standard Types' का स्थिर स्तरित और समावेशन आर्किटेक्चर। स्रोत: AUTOSAR_SRS_BSWGeneral पृ. 62, [SWS_Std_00005], [SWS_COMTYPE_00005]

मॉड्यूल के बीच परस्पर क्रिया और इंटरैक्शन पथ

क्लस्टर के भीतर परस्पर क्रिया एक स्थिर समावेशन श्रृंखला पर आधारित है: ComStack_Types.h Std_Types.h को शामिल करता है, जो बदले में Platform_Types.h को शामिल करता है (RS_BSWGeneral पृ. 60)। मॉड्यूल platform boolean जैसे मौलिक परिमाणों को परिभाषित करता है, जिसे अनिवार्य रूप से C99 बुनियादी प्रकार _Bool पर मैप किया जाना चाहिए ([SWS_Platform_00027]), और लिटरल्स TRUE और FALSE ([SWS_Platform_00034]) के माध्यम से इसके सख्त मान असाइनमेंट को नियंत्रित करता है। इसके अलावा, ConstVoidPtr जैसे सामान्य बफ़र पॉइंटर्स निर्दिष्ट किए जाते हैं, जिनका उपयोग कॉल किए गए फ़ंक्शन इंटरफ़ेस के लिए अपरिवर्तनीय पासिंग बफ़र्स के लिए किया जाता है ([SWS_Platform_91002])।

इसके अतिरिक्त, platform मानकीकृत प्रीप्रोसेसर प्रतीकों के माध्यम से हार्डवेयर एंडियन को सुसंगत बनाता है: रजिस्टरों में बिट क्रम के लिए, CPU_BIT_ORDER को MSB_FIRST या LSB_FIRST पर सेट किया जाता है ([SWS_Platform_00038], [SWS_Platform_00048], [SWS_Platform_00049])। भौतिक मेमोरी में बाइट क्रम को CPU_BYTE_ORDER के माध्यम से नियंत्रित किया जाता है, जिससे HIGH_BYTE_FIRST (Big Endian, कम पते पर MSB) और LOW_BYTE_FIRST (Little Endian, कम पते पर LSB) के बीच अंतर किया जाता है ([SWS_Platform_00039], [SWS_Platform_00050], [SWS_Platform_00051])।

ByteOrdering cluster_big Big Endian (CPU_BYTE_ORDER = HIGH_BYTE_FIRST) cluster_little Little Endian (CPU_BYTE_ORDER = LOW_BYTE_FIRST) Logical16 Logischer Wert: uint16 (16-Bit) Byte1: MSB (Bits 15..8) Byte0: LSB (Bits 7..0) BigMem Physikalischer Speicher Adresse n: Byte1 (MSB) Adresse n+1: Byte0 (LSB) Logical16->BigMem HIGH_BYTE_FIRST LittleMem Physikalischer Speicher Adresse n: Byte0 (LSB) Adresse n+1: Byte1 (MSB) Logical16->LittleMem LOW_BYTE_FIRST

संरचना आरेख: Big-Endian (HIGH_BYTE_FIRST) बनाम Little-Endian (LOW_BYTE_FIRST) के साथ स्केलर मल्टी-बाइट मानों का मेमोरी मैपिंग। स्रोत: AUTOSAR_CP_SWS_PlatformTypes पृ. 16, AUTOSAR_CP_SWS_PlatformTypes पृ. 15, [SWS_Platform_00050], [SWS_Platform_00051]

अगले अमूर्तन स्तर पर, मॉड्यूल std स्विचिंग अवस्थाओं और तार्किक स्तरों के लिए सार्वभौमिक प्रतीकों को परिभाषित करता है: भौतिक वोल्टेज स्तरों के लिए STD_HIGH (0x01u) और STD_LOW (0x00u) ([SWS_Std_00007]), सक्रियण मोड्स के लिए STD_ON (0x01u) और STD_OFF (0x00u) ([SWS_Std_00010]), तथा तार्किक निष्पादन अवस्थाओं के लिए STD_ACTIVE (0x01u) और STD_IDLE (0x00u) ([SWS_Std_00013])। संदेश प्रोटोकॉल और ट्रांसफ़ॉर्मर के लिए, std लिटरल्स STD_MESSAGETYPE_REQUEST (0x00) और STD_MESSAGETYPE_RESPONSE (0x01) के साथ Std_MessageTypeType ([SWS_Std_91001], [SWS_Std_00017]) के साथ-साथ प्रोटोकॉल हेडर निकालने के लिए फ़ंक्शन पॉइंटर प्रकार Std_ExtractProtocolHeaderFieldsType भी प्रदान करता है ([SWS_Std_91003])।

मॉड्यूल comstack बदले में संचार स्टैक में संपूर्ण बफ़र और डेटा विनिमय को संरचित करने के लिए platform और std के बुनियादी प्रकारों का उपयोग करता है। केंद्रीय इंटरफ़ेस संरचना PduInfoType है, जो डेटा पॉइंटर SduDataPtr (uint8*), मेटाडेटा पॉइंटर MetaDataPtr और PduLengthType प्रकार के बफ़र लंबाई SduLength को बंडल करती है ([SWS_COMTYPE_00008], [SWS_COMTYPE_00011])। I-PDU पहचान PduIdType ([SWS_COMTYPE_00005]) के माध्यम से होती है। संपूर्ण संचार चैनलों और सब-नेटवर्कों के प्रबंधन के लिए, comstack चैनल पहचानकर्ता NetworkHandleType ([SWS_COMTYPE_00038]) और सब-नेटवर्क पहचानकर्ता PNCHandleType ([SWS_COMTYPE_00036]) को परिभाषित करता है, जिनका उपयोग उदाहरण के लिए ComM और Nm के Synchronized PNC Shutdown में किया जाता है (SWS_COMManager पृ. 171)।

खंडित परिवहन प्रोटोकॉल ट्रांसमिशन (TP) में, बफ़र नेगोशिएशन को रिटर्न प्रकार BufReq_ReturnType और संरचना RetryInfoType के माध्यम से नियंत्रित किया जाता है ([SWS_COMTYPE_00012])। CanTp, PduR, DCM, DoIP या SecOC जैसे मॉड्यूल के बीच CopyTxData या CopyRxData जैसे समकालिक प्रतिलिपि कॉल्स के मामले में, BUFREQ_OK सफल प्रतिलिपि प्रक्रिया का संकेत देता है, जबकि BUFREQ_E_BUSY सूचित करता है कि अस्थायी रूप से अपर्याप्त बफ़र उपलब्ध है और एक नया प्रयास किया जा सकता है (SWS_DiagnosticCommunicationManager पृ. 291, SWS_SecureOnboardCommunication पृ. 76)। TP_CONFPENDING या TP_DATACONF जैसे मापदंडों के साथ RetryInfoType के माध्यम से, यह सुनिश्चित किया जाता है कि संभावित पुनरावृत्तियों के लिए डेटा बफ़र में बना रहे या पुष्टि के बाद जारी किया जाए (SWS_IntrusionDetectionSystemManager पृ. 49)।

ट्रांसपोर्ट प्रोटोकॉल (ComStack_Types) में बफ़र वार्ता और डेटा प्राप्तिCanTpPduRDcmUse Case: 1. रिसेप्शन प्रारंभ और बफ़र क्वेरीPduR_CanTpStartOfReception(id, info, TpSduLength, &bufferSizePtr)Dcm_StartOfReception(id, info, TpSduLength, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OK (bufferSizePtr bereitgestellt)BufReq_ReturnType: BUFREQ_OKUse Case: 2. Segmentierter Datentransferloopfuer jedes empfangene N-PDU SegmentPduR_CanTpCopyRxData(id, PduInfoType*, &bufferSizePtr)Dcm_CopyRxData(id, PduInfoType*, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OKBufReq_ReturnType: BUFREQ_OKUse Case: 3. AbschlussbestaetigungPduR_CanTpRxIndication(id, Std_ReturnType: E_OK)Dcm_TpRxIndication(id, Std_ReturnType: E_OK)

अनुक्रम आरेख: ComStack_Types (PduInfoType, BufReq_ReturnType) का उपयोग करते हुए एक परिवहन प्रोटोकॉल का खंडित प्राप्ति और बफ़र पथ। स्रोत: SWS_PDURouter पृ. 112, SWS_DiagnosticCommunicationManager पृ. 273, SWS_DiagnosticCommunicationManager पृ. 274

सिंक्रोनाइज़ेशन, री-एंट्रेंसी और टास्क संदर्भ

चूँकि मॉड्यूल platform, std और comstack बिना निष्पादन योग्य ऑब्जेक्ट फ़ाइलों वाली शुद्ध हेडर फ़ाइलें हैं, इसलिए वे स्वाभाविक रूप से किसी भी चक्रीय MainFunctions को लागू नहीं करते हैं और उनके पास कोई स्वयं का टास्क संदर्भ नहीं होता है (SWS_StandardTypes पृ. 27)। हालाँकि, वे लेयर सीमाओं के पार कॉल किए जाने वाले फ़ंक्शनों के लिए सिग्नेचर और टाइप परिपाटियों को परिभाषित करते हैं। सभी टाइप परिभाषाएँ इस प्रकार डिज़ाइन की गई हैं कि उन्हें बिना किसी प्रतिबंध के रीएंट्रेंट और स्टेटलेस रूप में पास किया जा सकता है (SWS_CANInterface पृ. 87)।

प्रकारों का व्यावहारिक उपयोग अत्यधिक एसिंक्रोनस और समवर्ती परिवेशों में होता है। डेटा प्राप्ति कॉलबैक जैसे CanIf_RxIndication या Dcm_CopyRxData, जो PduInfoType और PduIdType का उपयोग करते हैं, उन्हें स्पष्ट रूप से इंटरप्ट संदर्भ में निष्पादित करने की अनुमति है (SWS_CANInterface पृ. 164, SWS_DiagnosticCommunicationManager पृ. 274)। इसके विपरीत, रूटिंग निर्णय, बफ़र आवंटन या चक्रीय ट्रांसमिशन ऊपरी परतों (उदा. SoAd_MainFunction) के आवधिक कार्यों में संसाधित किए जाते हैं (SWS_SocketAdaptor पृ. 104)। चूँकि PduInfoType जैसी पॉइंटर संरचनाएँ इंटरप्ट स्तर और टास्क स्तर के बीच साझा की जा सकती हैं, अनन्य क्षेत्रों (समवर्तीता से सुरक्षा) के माध्यम से थ्रेड-सुरक्षित सिंक्रोनाइज़ेशन कॉलिंग और कार्यान्वयन करने वाले BSW मॉड्यूल का दायित्व है।

विशिष्ट जीवन चक्र और परिचालन मोड

शुद्ध टाइप परिभाषाएँ किसी रनटाइम जीवनचक्र के अधीन नहीं होती हैं और इनमें न तो इनिशियलाइज़ेशन फ़ंक्शन होते हैं और न ही शटडाउन फ़ंक्शन (SWS_StandardTypes पृ. 27)। उन्हें कंपाइल समय पर सभी प्रसंस्करण मॉड्यूल से पहले स्थिर रूप से शामिल किया जाना चाहिए। हालाँकि, वे अन्य BSW मॉड्यूल के जीवनचक्र की मैपिंग और निगरानी के लिए मानक ढाँचा बनाते हैं: मानकीकृत संस्करण क्वेरी के लिए, std संरचना Std_VersionInfoType को निर्दिष्ट करता है, जिसमें vendorID, moduleID के साथ-साथ सॉफ़्टवेयर संस्करण स्थितियाँ (sw_major_version, sw_minor_version, sw_patch_version) शामिल होती हैं ([SWS_Std_00015])।

इसके अलावा, NetworkHandleType और PNCHandleType जैसे प्रकार स्टार्टअप, सामान्य संचालन, स्लीप और वेकअप जैसे ऑपरेटिंग मोड परिवर्तनों के दौरान उच्च-स्तरीय नेटवर्क और मोड प्रबंधन का समर्थन करते हैं ([SWS_COMTYPE_00036], [SWS_COMTYPE_00038])। इस प्रकार, ComM इन पहचानकर्ताओं के आधार पर सबनेटवर्क क्लस्टर में समन्वित शटडाउन और स्थिति परिवर्तनों को नियंत्रित करता है (SWS_COMManager पृ. 171, SWS_NetworkManagementInterface पृ. 106)।

त्रुटि प्रबंधन, DET ट्रेसिंग और स्थिति कोडिंग

मॉड्यूल क्लस्टर कोई स्वयं का सक्रिय त्रुटि प्रबंधन प्रदान नहीं करता है और न तो DET को विकास त्रुटियों की रिपोर्ट करता है और न ही DEM को उत्पादन त्रुटियों की रिपोर्ट करता है (SWS_StandardTypes पृ. 27)। इसके बजाय, यह प्लेटफ़ॉर्म-व्यापी फ़ीडबैक प्रारूप को मानकीकृत करता है: मौलिक प्रकार Std_ReturnType uint8 पर आधारित है और सभी परतों में सिंक्रोनस कॉल के मानक परिणाम के रूप में कार्य करता है ([SWS_Std_00005], BSWUMLModelModelingGuide पृ. 28)। डिफ़ॉल्ट रूप से, E_OK (0x00u) सफल निष्पादन का प्रतिनिधित्व करता है और E_NOT_OK (0x01u) एक सामान्य त्रुटि का प्रतिनिधित्व करता है ([SWS_Std_00006])। ISO 17356-3 (OSEK OS) के साथ संगतता कारणों से, E_OK को एकाधिक परिभाषाओं से एक सुरक्षा जाँच (STATUSTYPEDEFINED) के माध्यम से सुरक्षित किया जाता है (AUTOSAR_SRS_BSWGeneral पृ. 62)।

Std_ReturnType का बिट लेआउट एक निश्चित रूप से परिभाषित विभाजन का अनुसरण करता है: बिट्स 0 से 5 (श्रेणी 0x00 से 0x3F) क्लाइंट/सर्वर संचालन में मानकीकृत और मॉड्यूल-विशिष्ट रिटर्न मानों या एप्लिकेशन-विशिष्ट ApplicationError कोड के लिए आरक्षित हैं ([SWS_Std_00011], AUTOSAR_CP_SWS_StandardTypes पृ. 15)। मॉड्यूल-विशिष्ट एक्सटेंशन UML मॉडल में स्टीरियोटाइप «extra_literals» वाले वर्ग के रूप में बनाए रखे जाते हैं (BSWUMLModelModelingGuide पृ. 33)। बिट्स 6 और 7 (मान सीमा 0x40, 0x80, 0xC0) सख्ती से RTE की अवसंरचना त्रुटि स्थितियों के लिए आरक्षित हैं (AUTOSAR_CP_SWS_StandardTypes पृ. 15)। RTE में डेटा रूपांतरण के लिए, std इसके अतिरिक्त संरचना Std_TransformerError की घोषणा करता है, जिसमें errorCode ([SWS_Std_00022]) और transformerClass ([SWS_Std_00021]) शामिल हैं, जिससे सीरियलाइज़ेशन या E2E सुरक्षा के दौरान त्रुटि श्रृंखलाओं का निर्बाध रूप से पता लगाया जा सकता है।

यह मार्गदर्शिका StandardTypes, PlatformTypes और CommunicationStackTypes के लिए AUTOSAR Classic Platform रिलीज़ R20-11 के मानक विनिर्देशों पर आधारित है।

ComStack

BufReq_ReturnType टाइप

Variables of this type shall be used to store the result of a buffer request.

typedef enum { BUFREQ_OK, BUFREQ_E_NOT_OK, BUFREQ_E_BUSY, BUFREQ_E_OVFL } BufReq_ReturnType;
NetworkHandleType टाइप

Variables of the type Network Handle Type shall be used to store the identifier of a communication channel.

PduIdType टाइप

This type is used within the entire AUTOSAR Com Stack except for bus drivers.

typedef uint16 PduIdType;
PduInfoType टाइप

Variables of this type shall be used to store the basic information about a PDU of any type, namely a pointer variable pointing to its SDU (payload), a pointer to Meta Data of the PDU, and the corresponding length of the SDU in byt es.

typedef struct { uint8* SduDataPtr; uint8* MetaDataPtr; PduLengthType SduLength; } PduInfoType;
PduLengthType टाइप

This type shall be used within the entire AUTOSAR Com Stack of an ECU except for bus drivers.

PNCHandleType टाइप

Used to store the identifier of a partial network cluster.

RetryInfoType टाइप

Variables of this type shall be used to store the information about Tp buffer handling.

typedef struct { TpDataStateType TpDataState; PduLengthType TxTpDataCnt; } RetryInfoType;
TpDataStateType टाइप

Variables of this type shall be used to store the state of TP buffer.

typedef enum { TP_DATACONF, TP_DATARETRY, TP_CONFPENDING } TpDataStateType;
TPParameterType टाइप

Specify the parameter to which the value has to be changed (BS or STmin).

typedef enum { TP_STMIN, TP_BS, TP_BC } TPParameterType;

Platform

boolean टाइप

This standard AUTOSAR type shall only be used together with the definitions TRUE and FALSE.

typedef unsigned char boolean;
ConstVoidPtr टाइप

This standard AUTOSAR type shall be a void pointer to const. Note: This type shall be used for buffers that are passed to the callee.

typedef const void* ConstVoidPtr;
CPU_BIT_ORDER टाइप

This symbol shall be defined as #define having one of the values MSB_FIRST or LSB_FIRST according to the platform.

CPU_BYTE_ORDER टाइप

This symbol shall be defined as #define having one of the values HIGH_BYTE_FIRST or LOW_ BYTE_FIRST according to the platform.

CPU_TYPE टाइप

This symbol shall be defined as #define having one of the values CPU_TYPE_8, CPU_TYPE_16, CPU_TYPE_32 or CPU_TYPE_64 according to the platform.

float32 टाइप

This standard AUTOSAR type shall follow the 32-bit binary interchange format according to IEEE 754-2008 with encoding parameters specified in chapter 3.6, table 3.5, column "binary32".

typedef float float32;
float64 टाइप

This standard AUTOSAR type shall follow the 64-bit binary interchange format according to IEEE 754-2008 with encoding parameters specified in chapter 3.6, table 3.5, column "binary64".

typedef double float64;
sint16 टाइप

This standard AUTOSAR type shall be of 16 bit signed.

typedef signed short sint16;
sint16_least टाइप

This optimized AUTOSAR type shall be at least 16 bit signed.

typedef signed int sint16_least;
sint32 टाइप

This standard AUTOSAR type shall be 32 bit signed.

typedef signed long sint32;
sint32_least टाइप

This optimized AUTOSAR type shall be at least 32 bit signed.

typedef signed int sint32_least;
sint64 टाइप

This standard AUTOSAR type shall be 64 bit signed.

typedef signed long long sint64;
sint8 टाइप

This standard AUTOSAR type shall be of 8 bit signed.

typedef signed char sint8;
sint8_least टाइप

This optimized AUTOSAR type shall be at least 8 bit signed.

typedef signed int sint8_least;
TRUE_FALSE टाइप

The symbols TRUE and FALSE shall be defined as follows: #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif

uint16 टाइप

This standard AUTOSAR type shall be of 16 bit unsigned.

typedef unsigned short uint16;
uint16_least टाइप

This optimized AUTOSAR type shall be at least 16 bit unsigned.

typedef unsigned int uint16_least;
uint32 टाइप

This standard AUTOSAR type shall be 32 bit unsigned.

typedef unsigned long uint32;
uint32_least टाइप

This optimized AUTOSAR type shall be at least 32 bit unsigned.

typedef unsigned int uint32_least;
uint64 टाइप

This standard AUTOSAR type shall be 64 bit unsigned.

typedef unsigned long long uint64;
uint8 टाइप

This standard AUTOSAR type shall be of 8 bit unsigned.

typedef unsigned char uint8;
uint8_least टाइप

This optimized AUTOSAR type shall be at least 8 bit unsigned.

typedef unsigned int uint8_least;
VoidPtr टाइप

This standard AUTOSAR type shall be a void pointer Note: This type shall be used for buffers that contain data returned to the caller.

typedef void* VoidPtr;

Std

E_OK / E_NOT_OK टाइप

Because E_ OK is already defined within OSEK, the symbol E_ OK has to be shared. To avoid name clashes and redefinition problems, the symbols have to be defined in the following way (approved within implementation): #ifndef STATUSTYPEDEFINED #define STATUSTYPEDEFINED #define E_ OK 0x00u typedef unsigned char Status Type; /* OSEK compliance */ #endif #define E_ NOT_ OK 0x01u

#define E_OK 0x00u #define E_NOT_OK 0x01u

The symbols STD_ ACTIVE and STD_ IDLE shall be defined as follows: #define STD_ ACTIVE 0x01u /* Logical state active */ #define STD_ IDLE 0x00u /* Logical state idle */

#define STD_ACTIVE 0x01u #define STD_IDLE 0x00u

Type for the function pointer to extract the relevant protocol header fields of the message and the type of the message result of a transformer. - At the time being, this is limited to the types used for C/ S communication (i.e., REQUE ST and RESPONSE and OK and ERROR).

typedef Std_ReturnType (* Std_ExtractProtocolHeaderFieldsType)(const uint8* buffer, uint32 bufferLength, Std_MessageTypeType* messageType, Std_MessageResultType* messageResult);
STD_HIGH / STD_LOW टाइप

The symbols STD_ HIGH and STD_ LOW shall be defined as follows: #define STD_ HIGH 0x01u /* Physical state 5V or 3.3V */ #define STD_ LOW 0x00u /* Physical state 0V */

#define STD_HIGH 0x01u #define STD_LOW 0x00u

This type is used to encode different types of results for response messages. - Currently this encoding is limited to the distinction between OK and ERROR responses.

Std_MessageType टाइप

This type is used to encode the different type of messages. - Currently this encoding is limited to the distinction between requests and responses in C/ S c ommunication.

STD_ON / STD_OFF टाइप

The symbols STD_ ON and STD_ OFF shall be defined as follows: #define STD_ ON 0x01u #define STD_ OFF 0x00u

#define STD_ON 0x01u #define STD_OFF 0x00u
Std_ReturnType टाइप

This type can be used as standard API return type which is shared between the RTE and the BSW modules. It shall be defined as follows: typedef uint8 Std_ Return Type;

- Tags: atp.Status=draft

- Tags: atp.Status=draft

Std_VersionInfoType टाइप

This type shall be used to request the version of a BSW module using the _ Get Version Info() function.

typedef struct { uint16 vendorID; uint16 moduleID; uint8 sw_major_version; uint8 sw_minor_version; uint8 sw_patch_version; } Std_VersionInfoType;

Module im Cluster

Compiler Abstraction (Compiler)

AUTOSAR Classic Special Files-Modul Compiler Abstraction (Compiler, Spezifikation: AUTOSAR_SWS_CompilerAbstraction.pdf).

BSW ID 198 Keine C-API · 35 Anforderungen #include "Compiler.h"

Communication Stack Types (ComStack_Types)

Standardized types, PDU identifiers, lengths, and buffer request types (PduIdType, PduLengthType, PduInfoType, BufReq_ReturnType) used across all communication layers.

BSW ID 196 9 APIs (0 Funktionen, 9 Typen) #include "ComStack_Types.h"

Memory Mapping (MemMap)

AUTOSAR Classic Special Files-Modul Memory Mapping (MemMap, Spezifikation: AUTOSAR_CP_SWS_MemoryMapping.pdf, AUTOSAR_SWS_MemoryMapping.pdf).

BSW ID 195 Keine C-API · 32 Anforderungen #include "MemMap.h"

Platform Types (Platform_Types)

Platform-specific fundamental data types (integers, booleans, floating-point numbers) mapped to CPU architecture primitives.

BSW ID 199 23 APIs (0 Funktionen, 23 Typen) #include "Platform_Types.h"

Standard Types (Std_Types)

Standard types, return codes (Std_ReturnType, E_OK, E_NOT_OK), version info structures, and error codes shared across the entire AUTOSAR architecture.

BSW ID 197 13 APIs (0 Funktionen, 13 Typen) #include "Std_Types.h"