وبلاگ

استفاده از پردازنده چند هسته ‌ای در سیستم های اویونیک تجاری

پلتفرم نوآری باز کوشا | استفاده از پردازنده چند هسته ‌ای در سیستم های اویونیک تجاری

امروزه به لطف پیشرفت‌های نرم‌افزاری و سخت‌افزاری، تولید کنندگان می‌توانند تا 10 هزار حسگر را روی یک بال هواپیما قرار دهند.

از این طریق مجموعه واحد های کنترل زمینی می‌توانند علاوه بر بررسی ایمنی هواپیما، مصرف سوخت را نیز کاهش دهند.

یکی از مهم‌ترین عوامل این پیشرفت‌ها، دستیابی به راه کارهای نرم‌افزاری جدید و استفاده از پردازشگرهای چند هسته ‌ای است.

اولین گواهینامه‌های صادر شده برای سیستم‌های نرم‌افزاری اویونیک، مربوط به تجهیزات یکپارچه‌ای بودند که روی پردازنده ‌های تک ‌هسته ‌ای میزبانی می‌شد.

اما با رشد سریع پردازش چند هسته ‌ای در صنایع مختلف از جمله رایانه‌ها و تلفن‌های همراه هوشمند، مهندسان به فکر استفاده از این فناوری در صنایع هوایی افتادند.

بخش هوانوردی نظامی خیلی زود توانست از قابلیت‌های خاص این فناوری در هوا گردهای مختلف و به طور ویژه در هواپیماهای بدون سرنشین استفاده کند.

اما ورود این پردازنده ‌ها به عرصه هوانوردی تجاری به دلیل مباحث صدور گواهینامه ایمنی پرواز با تاخیر انجام شده است.

چالش‌های پیش روی صنعت هوایی در استفاده از تراشه‌های چند هسته ‌ای

معماری‌های چند هسته ‌ای با وجود کارایی بالا در برنامه‌های کاربردی چند ‌منظوره، برای استفاده در سیستم‌های ایمنی- بحرانی چالش‌هایی را پیش ‌رو دارند.

برنامه‌های اویونیک اغلب نیازمندی‌های خاصی از جمله ایزوله بودن و جبرگرایی دارند.

این درحالی است که چنین مواردی جزو ملاحظات شرکت‌های نیمه‌هادی در هنگام طراحی یک پردازنده چند هسته ای نیست.

تحقیقات انجام شده توسط دانشگاه‌ها، صنعت اویونیک و مراجع صدور گواهینامه نشان می‌دهد که بین طراحی‌های پردازش چند هسته ‌ای تفاوت‌هایی وجود دارد.

این تفاوت‌ها می‌تواند به دلیل اثربخشی در ایزوله بودن و جبرگرایی، بر قابلیت‌ استفاده از آن‌ها در برنامه‌های اویونیک تاثیرگذار باشد.

در ادامه این بخش به برخی از چالش‌های مهم استفاده از پردازنده های چند هسته ‌ای در سیستم های اویونیک اشاره می‌کنیم.

استفاده مشترک از منابع

برای دستیابی به کارایی بالا، طراحی‌های پردازنده های چند هسته ‌ای از اشتراک ‌گذاری منابع روی یک دستگاه استفاده می‌کنند.

برای مثال هسته ‌ها ممکن است از کنترل‌کننده حافظه، گذرگاه داده یا حافظه کش سطح 2 به طور مشترک استفاده کنند (شکل 1).

در نتیجه، اجرای چند برنامه در هسته های مختلف و به طور همزمان خطر انسداد منابع را ایجاد کرده و ممکن است منجر به تداخل هسته‌ها شود.

همچنین استفاده از چند هسته برای اجرای برنامه‌ها، تحلیل رفتار و بررسی بدترین زمان اجرای (WCET[1]) برنامه‌ها را پیچیده و دشوار می‌کند.

چند هسته ‌ای

شکل 1- معماری حافظه چند هسته ‌ای با اشتراک گذاری حافظه کش سطح 2

افزایش سطح تلفیق در پردازنده‌های چند هسته ‌ای SoC باعث یکپارچه‌سازی اجزای بیشتری شده که در نهایت منجر به ساده‌ شدن طرح برد نهایی و کاهش تعداد اجزای روی آن می‌شود.

اما این می‌تواند باعث افزایش پیچیدگی تعاملات و ارتباطات داخلی تراشه برای استفاده از رابط‌های جانبی توسط هسته‌های پردازشگر شود.

تحلیل سخت‌افزاری این تعاملات وابسته به امکان دسترسی به اطلاعات طراحی اختصاصی تراشه از سوی شرکت تولیدکننده است.

در صورت در دسترس نبودن این اطلاعات، ممکن است درک کامل رفتار دستگاه غیرممکن باشد.

تطابق با الزامات ایمنی و امنیتی

سیستم‌های میزبان از برنامه‌های نسل جدید اویونیک نیاز به استفاده از اقدامات ایمنی با قابلیت‌های امنیتی قوی دارند.

این سیستم‌ها نباید جان انسان‌ها را در معرض خطر قرار داده و در عین حال باید به گونه‌ای طراحی شوند که از جهان خارج آسیب‌‌پذیر نباشند.

پیچیدگی معماری امنیت چند‌سطحی و مشخصات راهکارهای چند هسته ‌ای نیازمند استفاده از لایه‌های نرم‌افزاری چندگانه است.

برای یک سیستم‌عامل بلادرنگ، این پیاده‌سازی اغلب به شکل پارتیشن بندی زمان و فضا است که با استفاده از واحد مدیریت حافظه، مجازی‌سازی سخت‌افزار، نرم‌افزارهای قطعی و همچنین ارتباطات محض اجرا می‌شود.

به منظور اثبات جدایی برنامه‌ها، آن‌ها باید روی پارتیشن‌های مختلف اجرا شوند. در این صورت آن‌ها می‌توانند به‌طور مجزا و بدون تاثیرگذاشتن روی سایر بخش‌های سیستم بروزرسانی شوند.

معماری اویونیک ماژولار یکپارچه با نسخه چندهسته‌ای VxWorks 653

شکل 2- معماری اویونیک ماژولار یکپارچه با نسخه چندهسته‌ای VxWorks 653

 

چرخه زمان توسعه

شرکت‌های تولیدکننده تجهیزات اویونیک اغلب با فشار اجرای طرح‌ها در کمترین زمان مواجه هستند.

تبدیل طراحی‌های ساده یک سیستم با طراحی پیچیده مبتنی بر پلتفرم‌های چند هسته ‌ای نسل آینده ممکن است فرایند توسعه سیستم را طولانی کند.

در اینجا راهکارهای تجاری مرسوم در بازار (COTS) نقش مهمی در کاهش ریسک توسعه سیستم بازی می‌کنند.

توان مالی

داشتن چند سطح متفاوت بحرانی و هسته‌های مختلف برای برنامه‌ها و از طرف دیگر رعایت استانداردهای ARINC 653 و DO-178C نیازمند صرف زمان و هزینه زیادی است.

مدارک صدور گواهینامه

به‌طور کلی هنوز یک عدم قطعیت در انتخاب پردازنده ‌های چند هسته ‌ای برای برنامه‌های اویونیک وجود دارد،

زیرا هیچ سیاست رسمی در مورد صدور گواهینامه برای برنامه‌های چند هسته ‌ای منتشر نشده است.

برای سیستم‌های چند هسته ‌ای، اداره هوانوردی فدرال (FAA) استانداردهای سختگیرانه‌ای همچون DO-178C یا DO-297 را ملاک قرار داده است و اسنادی مثل CAST-32A را منتشر کرده است.

سند CAST-32A اهداف 10 گانه‌ای را در رابطه با طرح‌ریزی، استفاده از منابع و مدیریت خطا و نرم‌افزار تعریف می‌کند.

برنامه شرکت کالینز برای استفاده از پردازنده‌های چند هسته ‌ای در سیستم‌های اویونیک تجاری

شرکت راکول کالینز را می‌توان از پیشتازان توسعه سیستم‌عامل‌ چند-پارتیشنی دانست که اجازه اجرای ایمن چند تابع با سطوح تضمین طراحی مختلف (DAL[2]) را روی یک تک پردازنده می‌دهد.

این فناوری توسط کالینز به سطح بلوغ خود رسیده است و تاکنون روی چند نوع هواپیمای نظامی و تجاری مورد استفاده قرار گرفته است.

در دو سال گذشته این شرکت گام‌های بزرگی در مسیر توسعه پلتفرم های پردازش چند هسته ‌ای که قابلیت دریافت گواهی داشته باشند، برداشته است.

این پلتفرم ها توانایی اجرای کامل چند تابع با ترکیبی از سطوح تضمین ایمنی را روی هسته‌های مختلف یک پردازنده SoC (سیستم روی تراشه) دارند.

این پروژه کالینز را می‌توان یک گام بلند به سوی بهبود کارایی و عملکرد سیستم‌های پردازشی دانست که از طریق افزایش سطح تلفیق سامانه‌ها داخل یک دستگاه بدست می‌آید.

کالینز بر اساس مطالعات و تجربیات آزمایشگاهی، تصمیم دارد مراحل دریافت گواهینامه برای پردازش چند هسته ‌ای را توسط پردازنده‌های معماری پاور Freescale/NXP QorIQ دنبال کند.

این پردازنده‌ها سطح قابل توجهی از افزایش عملکرد را فراهم می‌کنند.

این ویژگی در حالی است که مصرف توان توسط پردازنده‌ها افزایش نیافته و می‌توانند ویژگی های ارزشمندی را برای پشتیبانی از تلفیق امن و قطعی در همه هسته‌ها به کاربر عرضه کنند.

مجازی‌سازی

بهتر است در این قسمت ابتدا مروری کوتاه بر بحث مجازی‌سازی سخت ‌افزار در سیستم‌های تعبیه شده داشته باشیم.

مجازی‌سازی به ساخت نمونه مجازی و غیرواقعی از چیزهایی همچون پلتفرم سخت افزاری، سیستم‌عامل، وسایل ذخیره‌سازی یا منابع شبکه گفته می‌شود.

ماشین مجازی به سیستمی گفته می‌شود که اجرای سیستم مجازی را بر عهده گرفته است.

هر ماشین مجازی می‌تواند شامل سیستم‌عامل، سخت‌افزار و نرم‌افزار اختصاصی خود باشد. ماشین‌های مجازی، مستقل از پلتفرم سخت‌افزاری یا سیستم‌عامل اولیه به فعالیت خود ادامه می‌دهند.

این به دلیل یک لایه جدید به نام Hypervisor است.

در اغلب سیستم های مجازی ‌ساز، یک لایه جدا کننده به نام هایپروایزر (فوق ناظر) بین سیستم عامل مهمان (ماشین مجازی) و سخت‌افزار یا منابع فیزیکی موجود حائل می‌شود.

کار هایپروایزر ایجاد یک دید مستقل مجازی از سخت‌افزار یا منابع است.

هایپروایزر باعث می‌شود ماشین‌های مجازی از دید یکدیگر پنهان بمانند و هر ماشین مجازی تصور کند تمام سخت‌افزار یا منابع لازم را در اختیار گرفته است.

انتخاب پردازنده مناسب

شرکت کالینز در سال ‌های گذشته یک تحقیق چند جانبه در رابطه با انتخاب پردازشگر برای پروژه خود انجام داده است.

در این مطالعه که با هدف صدور گواهینامه برای حضور پردازشگرهای چند هسته ‌ای در عرصه اویونیک تجاری صورت گرفته است،

جنبه‌هایی از جمله امکان بهره‌مندی از سیستم عامل های بلا درنگ با سطح تضمین طراحی A (مطابق استاندارد DO-178C)، پشتیبانی از مجازی‌سازی، عملکرد شبکه در تراشه و همچنین نوع ابزار جانبی موجود در تراشه در نظر گرفته شده است.

بلوک دیاگرام پردازنده T2080 ساخت شرکت NXP

شکل 3- بلوک دیاگرام پردازنده T2080 ساخت شرکت NXP

گروه کارشناسی کالینز در ابتدا تراشه NXP P3041 را انتخاب کردند، اما پس از اینکه شرکت NXP پردازنده‌های خانواده سری T خود را منتشر کرد، گروه کارشناسی ارزیابی‌های خود را مجددا آغاز کرد.

در نهایت این گروه تراشه NXP T2080 را به دلیل ویژگی‌های بهبود یافته نسبت به خانواده سری P برای انجام برنامه خود انتخاب کرد.

از جمله مزایای این تراشه نسبت به P3041 می‌توان به استفاده از هسته اصلی مدل e6500، توانایی بالا در محاسبات نقطه شناور و قابلیت dual-threading بدون مصرف توان اضافی اشاره کرد.

 

مشخصات تراشه NXP P3041 با NXP T2080

جدول مقایسه مشخصات تراشه NXP P3041 با NXP T2080

مهم‌ترین نیازمندی‌ها برای یک پلتفرم ایمنی- بحرانی

شرکت کالینز نیازمندی‌هایی را برای یک پلتفرم ایمنی- بحرانی مبتنی بر پردازنده T2080 تعریف کرد. در ادامه به برخی از مهم‌ترین این نیازمندی‌ها اشاره شده است.

پشتیبانی از چند سیستم‌عامل مهمان

برای کالینز مهم است که پلتفرم طراحی شده بتواند قابلیت مجازی‌سازی و اجرای چند سیستم‌ عامل مهمان (Guest OS) روی ماشین‌های مجازی ایجاد شده را داشته باشد.

این ویژگی معماری سیستم باز به کالینز و مشتریانش در کاهش هزینه‌های تلفیق و یکپارچه‌سازی سیستم کمک زیادی می‌کند.

چنین قابلیتی برای حذف هزینه توسعه میلیون ‌های خط کد منبع، جمع‌آوری مدارک تضمین طراحی و تهیه بسیاری از برنامه‌های کاربردی مهم است.

یک پلتفرم مبتنی بر DO-178C با قابلیت تفکیک برنامه‌هایی با سطوح تضمین طراحی (DAL) مختلف

به منظور استفاده از قابلیت بهینه اندازه، وزن و توان (SWaP) پردازنده، پلتفرم مجازی‌سازی باید از سطوح A تا E تضمین طراحی (در نسخه‌های 23، 24 و 34 مجله DAL و سطوح مختلف آن تشریح شده است) روی پردازنده خود استفاده کند.

این ویژگی به هر برنامه اجازه می‌دهد بدون نگرانی در مورد رفتار سایر برنامه‌ها در پارتیشن ‌های دیگر، به طور کاملا ایزوله اجرا شود.

مجازی‌سازی کارآمد

شرکت کالینز یک پلتفرم با قابلیت تنظیم‌های بالا نیاز دارد که مزایای مجازی‌سازی و پیکر‌‌بندی سخت‌افزار را داشته باشد.

پشتیبانی از رابط‌های برنامه‌نویسی اپلیکیشن (APIs) استاندارد باز

مشتریان کالینز به پشتیبانی از استانداردهای باز همچون POSIX، ARINC 653 و FACE نیاز دارند.

مدل کسب و کار انعطاف ‌پذیر

پلتفرم نهایی باید دارای یک مدل کسب‌و‌کار و لایسنس باشد تا بتوان از آن در محصولات مختلف (نمایشگرهای چندمنظوره، واحد‌های کنترل، کامپیوترهای عملیات و غیره) و توسط مشتریان متفاوت، بدون نیاز به فعالیت خاص برای لایسنس استفاده کرد.

انتخاب سیستم‌عامل مناسب برای گواهینامه چند هسته ‌ای

در سال 2002 شرکت ویندریور گام‌های اول برای توسعه VxWorks 653 را برداشت.

این محصول مبتنی بر سیستم‌عامل بلادرنگ VxWorks بوده و مطابق با شاخص‌های استاندارد ARINC-653 است و می‌توان از آن به‌طور ویژه در معماری نرم‌افزار اویونیک ماژولار یکپارچه (IMA) استفاده کرد.

رویکرد IMA باعث شده است سامانه‌هایی که قبلا در قالب LRU در یک معماری وابسته ساخته‌ می‌شدند، اکنون به صورت برنامه‌های کاربردی روی سخت‌افزار مشترک اجرا شوند.

این معماری مدرن باعث بهینه‌سازی در وزن، اندازه و توان مصرفی هواپیما می‌شود و نتیجه آن کاهش آلودگی و مصرف سوخت و در نهایت صرفه‌جویی در هزینه‌ها است. سیستم‌عامل VxWorks 653 توانایی اجرای انواع مختلفی از برنامه‌ها را روی پارتیشن‌های متفاوت دارد.

این برنامه‌ها می‌توانند شامل پردازش‌های ARINC 653 APEX، POSIX threads، وظایف VxWorks و/یا وظایف Ada باشند. شرکت ویندریور در واکنش به نیازمندی‌های بازار، یک بسته کامل از مدارک صدور گواهینامه DO-178 به‌صورت COTS را تهیه کرده است.

در سال 2014 شرکت ویندریور شروع به توسعه نسخه چند هسته ‌ای از سیستم‌عامل VxWorks 653 کرد. این شرکت اهداف مختلفی را از این پروژه دنبال می‌کرد که از مهم‌ترین آن‌ها می‌توان به موارد زیر اشاره کرد.

 

اهداف :

  • توسعه مدارک گواهینامه سطح تضمین طراحی A برای استاندارد DO-178C
  • پشتیبانی از چند سطح تضمین طراحی مختلف روی چند هسته
  • محدودسازی و ایزولاسیون خطا (نظارت بر سلامت)
  • اجرای استاتیک پیکر‌بندی
  • توسعه برنامه‌های IMA منطبق بر استاندارد DO-297
  • پارتیشن‌بندی قوی محیط برنامه‌ها و سیستم‌عامل برای سهولت در بروزرسانی‌ها و کاهش بار دریافت گواهینامه
پلتفرم چند هسته ای سیستم عامل

شکل 4- امکان اجرای سیستم‌عامل‌های مهمان و برنامه‌هایی با سطوح تضمین طراحی متفاوت روی هسته‌های مختلف یک پلتفرم با نسخه چند هسته ‌ای سیستم عامل VxWorks 653

این اهداف سطح بالا باعث شده است پلتفرم چند هسته ‌ای VxWorks 653 گزینه‌ مناسبی برای بسیاری از مشتریان در کاربردهای اویونیک و حتی محیط‌های غیر ایمنی- بحرانی باشد.

ویندریور برای این سیستم‌عامل یک هایپروایزر نوع 1 در نظر گرفته است.

این انتخاب به این دلیل بوده است که هایپروایزرهای نوع 1 توانایی کنترل چند هسته پردازنده را به‌صورت نظارت سبک (تاثیر کم در عملکرد سیستم) دارند.

این هایپروایزر توانایی میزبانی از برنامه‌ها و سیستم عامل های توسعه‌یافته قدیمی روی پلتفرم چند هسته‌ای را دارد (شکل 4).

این قابلیت باعث می‌شود امکان استفاده مجدد از برنامه‌های قدیمی گواهی ‌شده بدون نیاز به سفارشی ‌سازی خاص فراهم شود.

پلتفرم مجازی‌سازی VxWorks 653 برای جدیدترین معماری‌های PowerPC، اینتل و Arm معتبر است.

تطابق با سند CAST-32A

اداره هوانوردی فدرال و آژانس ایمنی هوایی اروپا (EASA) هنوز یک سیاست یا راهنمای رسمی برای استفاده از پردازنده‌های چند‌ هسته ‌ای منتشر نکرده‌اند.

دلیل این موضوع را هم می‌توان ادامه‌دار بودن تحقیقات برای ورود این فناوری به سیستم‌های اویونیک دانست.

با این وجود گروه نرم‌افزاری تنظیم گواهینامه FAA در سال 2016 یک سند راهنما برای پردازنده‌های چند‌ هسته ‌ای با عنوان CAST-32A منتشر کرد.

این سند توسط نمایندگان مراکز صدور گواهینامه در آمریکای شمالی و جنوبی، اروپا و آسیا نوشته شده است.

در سند CAST-32A تعدادی هدف تعریف شده است که یک توسعه‌ دهنده اویونیک برای استفاده از پردازنده‌های چند هسته ‌ای باید آن‌ها را برآورده کند.

اهداف این سند به جنبه‌های ایمنی در حوزه‌های سخت‌افزار، سیستم عامل، نرم‌افزار پلتفرم، نرم‌افزار برنامه‌های اویونیک و یکپارچه‌سازی سیستم اشاره دارد.

بنابراین می‌توان گفت این سند با یک دید از بالا، جنبه‌های مختلف طراحی یک پلتفرم چند هسته ‌ای را از منظر ایمنی هدف قرار داده است.

ویندریور سعی کرده است در کنار برآورده ‌سازی نیازمندی‌های استاندارد DO-178C، اهداف در نظر گرفته شده در سند CAST-32A را نیز در طراحی سیستم عامل VxWorks 653 اعمال کند.

مراجع صلاحیت پرواز نظامی نیز به دلیل نگرانی‌های مشابه در مورد سیستم ‌های چند هسته ‌ای، به دنبال راهکارهایی برای ورود این فناوری به حوزه‌های مربوط به خود هستند.

اخیرا شرکت کالینز در این رابطه چند جلسه با سازمان‌های نظامی و دفاعی ایالات متحده داشته و توانسته است نظر مثبت آن‌ها را در رابطه با روش‌های مدنظر خود برای ورود تراشه‌های چند هسته ‌ای به عرصه اویونیک کسب کند.

رویکرد کالینز برای دستیابی به گواهینامه چند هسته ‌ای

شرکت کالینز یک رویکرد چند جانبه را برای رسیدن به گواهینامه ایمنی پردازنده‌های چند هسته ‌ای در پیش گرفته است.

تلاش اصلی مهندسان این شرکت در تطابق دادن نیازمندی‌های خود با ملاحظات گواهی‌نامه و اهداف ذکر شده در سند CAST-32A متمرکز شده است.

آنها از اسناد رسمی همچون DO-178C برای جزئیات نرم‌افزاری و DO-254 برای جزئیات سخت‌افزاری صدور گواهینامه استفاده می‌کنند.

طرح مفهومی از معماری نرم‌افزار چند هسته ‌ای

شکل 5- طرح مفهومی از معماری نرم‌افزار چندهسته‌ای

مهندسان کالینز به منظور اعمال سند CAST-32A به تمام جنبه‌های طراحی خود، یک ماتریس تهیه کرده‌اند که اهداف ده‌گانه این سند را به فعالیت‌های مختلف سخت‌افزاری، نرم‌افزاری، یکپارچه‌سازی سیستم و همچنین جمع‌آوری مدارک طراحی تخصیص می‌دهد.

همچنین 5 تحلیل بحرانی برای تایید برآورده‌سازی اهداف CAST-32A در نظر گرفته شده است. این تحلیل‌ها به این شرح هستند:

  • تحلیل پیکر‌بندی
  • تحلیل کانال تداخلات
  • تحلیل پارتیشن‌بندی
  • تحلیل حافظه اشتراکی
  • تحلیل خرابی

 

تحلیل پیکر‌بندی

تحلیل پیکر‌بندی روی تنظیمات بحرانی پیکر‌بندی SoC که دسترسی قابلیت‌های پردازشی را برای برنامه‌های کاربردی تعیین می‌کند، تمرکز دارد.

این تنظیمات می‌توانند بر عملکرد هسته‌های پردازشی، منابع اختصاص‌یافته به هر هسته، عملکرد ابزار جانبی SoC و همچنین استفاده SoC از منابع مشترک تاثیرگذار باشند.

انتخاب مناسب این تنظیمات می‌تواند برای رسیدن به جبرگرایی و بیشینه عملکرد تراشه تاثیرگذار باشد و ایجاد تغییرات در آن‌ها روی رفتار SoC و دورکردن آن از نیازمندی‌های طراحی موثر است.

تحلیل پیکر‌‌بندی یک استراتژی برای محافظت از سیستم در مقابل تغییر غیرمنتظره این تنظیمات توصیف می‌کند.

اشتراک منابع موقعیت‌های بالقوه‌ای را برای بروز تداخلات ایجاد می‌کند.

 

تحلیل کانال تداخلات

تحلیل کانال تداخلات میزان تاثیرگذاری تداخل را محدود می‌کند. شرکت کالینز آزمایش‌هایی را پیش‌بینی کرده‌ است که میزان تاثیرگذاری هر نوع تداخل را در هنگام اجرای برنامه‌ اندازه‌گیری می‌کند.

این شرکت از ابزارهای تخصصی برای تولید سطوح بالایی از تداخلات (بیشتر از مقادیر عادی) استفاده می‌کند.

 

تحلیل پارتیشن بندی

تحلیل پارتیشن بندی وضعیت معماری نرم‌افزار را از لحاظ پارتیشن‌بندی زمان، فضا و منابع تایید می‌کند.

موقعیت‌های بالقوه‌ای وجود دارد که یک رویداد برنامه ممکن است موجب هدر رفتن زمان پردازشی اختصاص یافته به برنامه‌های دیگر شود.

برای مثال یک وقفه ممکن است در زمان اجرای یک برنامه رخ دهد.

طراح باید اطمینان حاصل کند که با رسیدگی به درخواست وقفه، اجرای برنامه در زمان از پیش تعیین شده خود به پایان می‌رسد. تحلیل پارتیشن‌بندی تمام رویدادهایی که روی زمان اجرای برنامه‌ها تاثیرگذار است را مشخص و اندازه‌گیری می‌کند.

نتیجه این تحلیل به‌طور مستقیم در زمان‌بندی برنامه‌ها هنگام فرایند یکپارچه‌سازی سیستم به‌کار گرفته می‌شود.

تحلیل حافظه اشتراکی تمامی استفاده‌ها از حافظه مشترک را مشخص کرده و اطمینان حاصل می‌کند که رفتار معماری نرم‌افزار مطابق انتظار است.

ساختار داده‌های اشتراکی مورد تحلیل قرار گرفته تا نشان داده شود ارتباطات قطعی تامین شده است.

تحلیل خرابی به بررسی خرابی‌ها و مشکلات گزارش شده از سوی کارشناسان یا شرکت سازنده SoC می‌پردازد.

مهندسان نرم‌افزار و سخت‌افزار اطلاعات گزارش شده را بررسی و اقدامات لازم برای رفع و جلوگیری از وقوع اتفاق مشابه را اجرا می‌کنند.

در نهایت نتایج تحلیل‌های ذکر شده به عنوان داده‌های طراحی و با نام سند تحلیل جبرگرایی آماده می‌شود.

این سند رفتار قطعی و جبرگرایانه سیستم نهایی را تضمین می‌کند.

لازم به ذکر است شرکت کالینز در اوایل سال 2019 میلادی تمامی اسناد و مدارک طراحی خود را برای FAA ارسال کرده است تا بتواند موافقت این سازمان را برای استفاده از پردازنده‌های چند هسته ‌ای در بخش هوانوردی تجاری کسب کند.

منابع:

https://www.windriver.com

[1]  Worst-Case Executing Timing

[2]  Design Assurance Levels

منبع: پژوهشکده اویونیک

هسته پژوهشی کوشا شما را به چالش افزایش دقت در اصابت پرتابه های منحنی زن دعوت می کند.

 

پلتفرم نوآوری باز کوشا از علاقمندان به شرکت در مسابقات ایده یابی دعوت می‌کند تا در مسابقات فناوری و نوآوری ما شرکت نمایید.

 

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

ضبط پیام صوتی

زمان هر پیام صوتی 5 دقیقه است