Table of Contents
ثبت نام عناصر کنترل اساسی در واحدهای کنترل الکترونیکی خودرو (ECUs)، حاکم بر همه چیز از زمان موتور برای ترمز عمل، ثبت نام یک ثبت نام پیکربندی شده منفرد می تواند آبشار را به شکست سیستم، خواندن سنسور نامنظم، و یا حتی ایمنی خودرو به خطر افتاده است. Debugging ثبت نام سوء پیکربندی نیاز به یک روش چند لایه ای ترکیب تجزیه و تحلیل سخت افزار، بازرسی و تکنیک های تولید پیشرفته است.
درک پیکربندی های غلط در ECU های خودرو
ثبت نام به عنوان مکان های حافظه پیکربندی عمل می کند که نشان می دهد که چگونه ماژول های محیطی - مانند مبدل های آنالوگ به دیجیتال، ژنراتور های PWM یا کنترل کننده های CAN، زمانی که ارزش نوشته شده به یک ثبت نام با حالت عملیاتی مورد نظر مطابقت ندارد، اغلب ناشی از:
- (فَلَهُمَهُمَهُمَهُمَهُمَهُمَهُمَهُمَهُمَهُوا مَنَهُمَهُمَهُوا مَنَهُمْهُمَهُمَهُمَهُمَهُوا مَهُمَهُمَهُمَهُمَهُوا مَهُوا مَهُمْهُوا مِهُمْهُوا مَهُمْهُمَهُمَهُمْهُمْهُمْهُوَهُمْهُمَهُمَهُوا مَهُوا مَهُمَهُوا مَهُمَهُمَهُمَهُوا مَهُمَهُمَهُمَهُوَهُمَهُوَهُوَهُمَهُوَهُمَهُوَهُمَ
- شرایط تهدید که در آن چندین وظیفه یا وقفه نوشتن به همان ثبت نام بدون هماهنگ سازی مناسب.
- ]Voltage یا تداخل الکترومغناطیسی[ [FLT 1] باعث می شود که در ثبت نام های با کد های اصلاح خطا محافظت نشود.
- خطای چارچوب بندی در اتوبوس های زنجیره ای (CAN، LIN، FlexRay) که دستورات نوشتن فاسد را ثبت می کنند.
- نسخه های ناسازگار [FLT 1] که در آن آدرس های ثبت نام و یا بیت فیلد تغییر بین تجدید نظر سخت افزار.
سیستم عامل Debugging Workflow
قبل از غواصی در ابزارهای خاص، یک جریان کاری تکراری را اتخاذ کنید: obaran @ انزوا را جدا کنید → بازجویی درست → تأیید با جمع آوری علائم بدون تغییر سیستم، سپس دامنه خطا را محدود کنید، به طور مستقیم ثبت نام، اصلاح، و در نهایت تغییر را بررسی کنید.
Oscilloscopeoscope و تکنیک های تجزیه و تحلیل منطقی
oscilloscopes با سرعت بالا (تراف باند فولی) ثبت سیگنال در اشپیگل، I2C یا خطوط دسترسی ثبت نام موازی.به دنبال glitches، زیر شاخه، یا تنظیم / نقض زمان تجزیه و تحلیل منطقی با پروتکل رمزگذاری (به عنوان مثال، CAN، LIN) نشان می دهد که آیا ثبت نام صحیح و داده های ظاهر شده در مثال اتوبوس، برای ثبت نام یک آدرس غیر قابل استفاده از دست رفته است.
هنگامی که دیگ دیفاف ری یا CAN، از یک oscilloscope ترکیبی برای ارتباط سیگنال های لایه فیزیکی با فریم های پروتکل استفاده کنید، بررسی کنید که شناسه CAN با جدول نقشه برداری ثبت نام ECU مطابقت دارد.در یک مطالعه موردی اخیر، واحد کنترل انتقال خودرو به نمایش گذاشته شده در صفحه چرخ دنده متناوب؛ تجزیه و تحلیل یک چرخه ی مخرب Flex را نشان داد که یک ثبت نام را به تاخیر انداخت، یک نمایه ی تغییر ناپذیر منجر شد.
۲- JTAG و In-Circuit Emulation
JTAG کنفدراسیون (به عنوان مثال، Lauterbach، Segger J-Link) اجازه می دهد دسترسی مستقیم به ثبت نام حافظه در حالی که CPU متوقف شده یا در حال اجرا است.
- همه ثبت نام ها را از یک ماژول جانبی مشکوک و مقایسه در برابر جدول پیکربندی مورد انتظار بررسی کنید.
- نقاط سخت افزاری را در آدرس های ثبت نام ثبت نام کنید تا مسیر دقیق کد را که ثبت نام می کند، بگیرید.
- [[۱] [۱۰] [۱۰] [۱۰] [۱] [۱۰] [۱]] [[۱۰]]] [[۳]]] برای ثبت هر ثبت نام بیش از هزاران چرخه، آشکار کردن فساد پراکنده ناشی از قطع محتوا.
عایق های مدار (ICE) با شبیه سازی رابط کوچک کنترل کننده (میکروکنترل کننده) ادامه می دهند، شما را قادر می سازد تا خطاهای را تزریق کنید یا رفتار سخت افزاری را نادیده بگیرید، این امر به ویژه برای تست دسترسی ثبت شده در شرایط دمای شدید یا ولتاژ ارزشمند است. NXP] راهنمای برای دیکس کردن S32K ثبت نام از طریق JTAG [F]
۳- خطای باینری با IDEs
IDE های مدرن جاسازی شده (IAR جاسازی شده Workbench، MCUXpresso، Keil MDK) ارائه پنجره های ساعت متغیر زمان واقعی و بازرس ثبت نام خط کد اولیه با خط، مشاهده چگونگی تغییر ارزش ثبت نام پس از هر تماس کتابخانه محیطی توجه ویژه به:
- (اگر در این هنگام، به صورت مستقیم به ثبت نام پرداخت، به صورت زیر اشاره می شود و یا به صورت زیر به صورت زیر به آن اشاره می شود.
- [[۱] [۱۰] [۱] [۱] [۱] برای حافظه فلش [۱] - حالت های انتظار نادرست] می توانند در طول پیش بینی، فساد ثبت نام تصادفی ایجاد کنند.
- ثبت نام اولویت [FLT 1] - وقفه های لانه ممکن است یک راه اندازی چند راه حل را خالی کند، و محیط را در یک حالت متناقض قرار دهد.
به گزارش ایسنا، اضافه کردن اظهارات دفاعی که ارزش های ثبت نام را در برابر ماسک های مورد انتظار پس از هر نوشتن بررسی می کنند. می تواند بلافاصله در طول توسعه، پیکربندی نادرستی را به دست آورد.
۴- تحلیل پروتکل ارتباطات
بسیاری از پیکربندی های ثبت نام از خطاهای سطح اتوبوس سرچشمه می گیرد.استفاده از یک تجزیه و تحلیل اتوبوس CAN (به عنوان مثال، Vector CANalyzer، Kvaser Memorator) برای ضبط و رمزگشایی پیام ها.
- عدم تطابق - یک ثبت نام انتظار 4 بایت اما ارسال تنها 2 خواهد بود ثبت نام تا حدودی به روز.
- ] بررسی یا خطای بین المللی [[FLT 1 ] در درخواست های تشخیصی (UDS سرویس 0x2E ،Write ByIdentifier)
- [[۱] [۱۰] [۱] [۱۰] [۱] [۱]] [۱] [۱] [۱] [۱]] [۱] [۱]] [۱] [۱] [۱] [۱۰] [۱]] [۱] [۱] [۱]] [۱] [۱] [۱]] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱]] [۱] [۱] [۱] [۱] [۱]]]]] [۱]]]] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱]]] [۱] [۱] [۱] [۱] [۱
برای شبکه های LIN، تأیید کنید که ماتریس Master ECU، شکاف و شناسه صحیح را ارسال می کند. [۱] یک فریم پیکربندی نشده LIN ممکن است به فهرست ثبت نام اشتباه نوشته شود. CAN در منابع اتوماسیون در دسترسی ثبت نام بیش از CAN جزئیات مشکلات رایج است.
۵- شبیه سازی و توسعه مدل
قبل از اینکه سخت افزار در دسترس باشد، از نمونه های مجازی مجازی (به عنوان مثال، Synopsys Virtualizer، QEMU با پسوندهای خودرو) برای شبیه سازی رفتار ثبت نام استفاده کنید.
- [در این باره] [در قرآن] به شرح زیر اشاره شده است.
- [در این باره] [خطاب:] [و] نقض [[۱]] [۱۰] [۱] [۱] [۱] [۱] که در آن یک کتاب ثبت شده قبل از نوشتن قبلی رخ می دهد، اثر می کند.
- [[۱] [۱۰] [۱] [۱] [۱] [۱] [۱]] [[۳]]] [[۳]]] [[۳]]] [[۳]]] [[۳]]] [۱]] [[[۳]]]] [[۳]] [۱]] [۱] [۱] [۱] [۱] [۱]] [۳] [۳] [۳] [۱] [۱] [۳] [۱] [۱] [۱] [۱] [۱] [۳] [۱] [۳] [۳] [۱] [۱] [۱]]]] [۱]]] [۱] [۱] [۳] [۱] [۱] [۳] [۱] [۱] [۳] [۱] [۱] [۱] [۳] [۳] [۱] [بر [۳] [بر [بر [۳] [بر [بر [۱] [بر [بر [۱] [بر [۳] [۳] [۳] [۳] [براى [۳] [که [براى [براى [براى [بر
شبیه سازی را با ابزارهای تأیید رسمی ترکیب کنید که الگوهای دسترسی ثبت نام را مطابق با مشخصات نشان می دهند.شرکت هایی مانند آنتی شرلوک تجزیه و تحلیل حالت شکست سطح ثبت نام را ارائه می دهند.
بهترین روش ها برای جلوگیری از پیکربندی های غلط
پیشگیری فعال باعث کاهش تلاش های دیپلکس می شود.در ادامه فرآیند توسعه خود:
ثبت نام برای تست (DFT)
یک مجموعه از وضعیت خواندن و ثبت نام ID را که در معرض پیکربندی فعلی قرار می دهد، شامل یک "آرژستر CRC" است که تمام ارزش های ثبت نام بحرانی را جمع آوری می کند؛ یک ناسازگاری بلافاصله فساد را به نمایش می گذارد.
ثبت نام اتمی Sequences
برای پیکربندی های چند بیتی یا چند بیتی، وقفه های اطراف توالی نوشتن را غیرفعال می کند و از دستورالعمل های تک استفاده می کند (به عنوان مثال، فروشگاه 32 بیتی) که در آن ممکن است. بسیاری از خودروهای MCU دستورالعمل های فروشگاه دو کلمه ای را ارائه می دهند که در سطح اتوبوس اتمی هستند.
Redundant Configuration Storage
ذخیره تنظیمات ثبت نام انتقادی در دو مکان حافظه جداگانه (به عنوان مثال، آینه رم و پشتیبان گیری در EEPROM) پس از تنظیم مجدد، مقایسه هر دو؛ اگر آنها متفاوت، منجر به ورود امن دولت و ورود به درگیری.
نظارت بر بهداشت و درمان
پیاده سازی یک کار پس زمینه که به طور دوره ای ثبت های کلیدی را خوانده و آنها را با مقادیر مورد انتظار مقایسه می کند، اگر یک دیسک همچنان ادامه داشته باشد، یک شمارنده خطا را افزایش دهید، پس از بیش از آستانه، ECU وارد حالت ایمنی شکست می شود، این به ویژه برای سیستم های ایزو 26262 آس لیتر مهم است.
مستند سازی جامع و کنترل نسخه
یک صفحه گسترده یا فایل XML را در مخزن سیستم عامل نگه دارید.استفاده از ابزارهای خودکار (به عنوان مثال، SVDConv، CMSIS-SVD) برای تولید فایل های هدر به طور مستقیم از مشخصات، حذف خطاهای رونویسی دستی هنگامی که کد به یک نوع میکروکنترلر جدید منتقل می شود.
مطالعه موردی: حذف یک خطای ثبت نام PWM
کنترل کننده موتور هیبریدی، صدای زنگ و کاهش بهره وری را نشان داد. اندازه گیری Oscilloscopeoscopeوسکوپ در خروجی زمان PWM نشان داد که یک چرخه وظیفه فرکانس ثابت علی رغم کنترل الگوریتم فرمان دادن به دستور متغیر متغیر متغیر متغیر است.با استفاده از JTAG کنفدراسیون، تیم ثبت زمان سنج را بررسی کرد و متوجه شد که نوشتن آن به آدرس اشتباه است.
نتیجه گیری
Debugging ثبت نام در تنظیمات الکترونیک خودرو نیاز به ترکیبی از سخت افزار تست، بازرسی نرم افزار و تجزیه و تحلیل پروتکل با استفاده از oscilloscope برای یکپارچگی سیگنال، JTAG برای دسترسی مستقیم ثبت نام، IDE کنفدراسیون برای تجزیه و تحلیل جریان کد، و تجزیه و تحلیل کنندگان پروتکل برای گسل های سطح اتوبوس، مهندسان می توانند به طور موثر و صحیح مسائل مربوط به پیکربندی - به ذخیره سازی خودکار، و تجزیه و تحلیل نسل اول، به خطا.