عبارت Avionic به سیستمهایی هوائی اطلاق میگردد که جهت عملکرد خود به مدارات الکترونیکی وابستهاند. بخشهای الکترونیکی، در حکم مغز سیستم، نقش هدایت، اندازهگیری پارامترها و انجام ماموریت را برعهده دارند. با توجه به پرهزینه بودن پروژههای هوائی، بخشهای الکترونیکی بایستی دارای قابلیت اطمینان بالائی باشند. استفاده از FPGA در چند سال اخیر با استقبال فراوانی روبهرو شده است. در این مقاله ضمن مقایسه کاربرد FPGA ، DSP و GPP در سیستمهای نظامی، دلیل گسترش استفاده از FPGAها توضیح داده شده و سپس به بررسی شرایط محیطی سیستمهای هوائی پرداخته و پارامترهای موثر در انتخاب قطعات در این سیستمها بررسی میشود. در انتها به معرفی و مقایسه چند نوع FPGA در سیستمهای هوائی میپردازد.
کلید واژه- فضاپیماها و هواپیماها، سیستم اویونیک، FPGA ، DSP و GPP
مقدمه
واژه اویونیک از ترکیب دو کلمه Aviation و Electronics گرفته شده است. عبارت Avionic به سیستمهایی اطلاق میگردد که جهت عملکرد خود به مدارات الکترونیکی یا الکترومکانیکی وابستهاند. برای مثال سیستم کنترل پرواز، جهت عملکرد خود به کامپیوترهای دیجیتال وابسته است؛ گرچه اِلمانهای دیگری نیز در این سیستم استفاده میشود. شرکتهای فعال در زمینه اویونیک جز شرکتهای چند میلیون دلاری دنیا میباشند و قطعات و وسایل اویونیکی روی هواپیماهای نظامی و تجاری نوین در حدود 30% کل هزینه هواپیما است. این نسبت برای هواپیماهای گشت Maritime Patrol/Anti Submarine یا بالگردها میتواند به 40% و برای هواپیماهای جاسوسی مثل AWACS میتواند به 75% نیز برسد. در یک سیستم اویونیک به بیش از 1010 عملیات در ثانیه نیاز است. یکی از مسائل مهم در طراحی هر سیستم اویونیکی تعیین platformی است که سیستم قرار است روی آن پیادهسازی شود. امروزه انتخاب DSP، GPP یا FPGA برای محیط پیادهسازی، جزو اولین چالشهائی است که باید قبل از شروع طراحی کلی سیستم، به آن پاسخ داده شود.
موضوع این مقاله، بررسی FPGAهای مورد استفاده در سیستمهای نظامی و بالاخص در سیستمهای هوائی است. در بخش دوم مقاله بررسی میشود که چرا بجای انتخابهای متداول DSP و GPP میتوان از FPGA استفاده کرد. در بخش سوم، پارامترهائی که در محیطهای نظامی و هوائی در انتخاب Platform مناسب، موثر هستند، نام برده میشود. قابلیت تست، مقاومت تشعشعی، هزینه، مشخصات فیزیکی و قابلیت اطمینان از فاکتورهای اساسی در انتخاب میباشند. سپس به بررسی FPGAهائی میپردازیم که توسط شرکتهای مطرح سازنده FPGA مانند، Altera، Xilinx و Actel برای این منظور ساخته شده است و در انتها نتیجهگیری تحقیقات انجام شده، آورده شده است.
FPGAها و انقلابی در طراحی دیجیتال
پارهای از مواردی که قابلیت و توانایی FPGAها را بالا برده است، در زیر آورده شده است:
امکان تعریف هر یک از پایههای تراشه به صورت ورودی یا خروجی یا هر دو.
امکان تعریف وضعیت عملکرد هر پایه در هنگام استفاده یا عدم استفاده.
امکان تشخیص تغییرات سطوح یا لبههای پایین رونده یا بالارونده منطقی اعمال شده به هر پایه.
امکان برنامهریزی از طریق پایههای برنامهریزی JTAG.
امکان تغییر متناوب معماری داخلی با استفاده از سریهای Bootable
محدود گستردهای از پایههای قابل استفاده با حجم گیت داخلی متفاوت.
کاهش حجم مدار و یکپارچهسازی در ابعادی به مساحت چند سانتیمتر مربع.
یکسانسازی عناصر طراحی و از میان بردن تمامی مشکلات ناشی از عدم تطابق استانداردهای مختلف.
از میان بردن تمام نویزهای ناشی از وجود قطعات مختلف در مدار.
کاهش چشمگیر توان مصرفی و اتلاف توان.
افزایش سرعت پردازش و کاهش خطاهای انتشار.
امکان کار با سطوح ولتاژ متفاوت.
ضریب ایمنی بالا به دلیل عدم امکان دستیابی به محتوای داخلی و سادهسازی و فشردهسازی پیچیده.
و بسیاری از قابلیتهای دیگر که امکان انجام یک طراحی مجتمع، کمحجم، بهینه و سریع را فراهم میآورد.
GPP، DSP یا FPGA
برای پیادهسازی یک سیستم پردازش سیگنال از چندین روش میتوان استفاده کرد[1]، [2] :
پردازندههای همهمنظوره: این پردازندهها معمولاً برای هر کاری مناسبند، ولی برای کاربرد خاصی بهینه نشدهاند. در کاربردهائی که قابلیتها و حجم پردازش بالایی از سیستم توقع نمیروند، این پردازندهها مناسب هستند. ساختار آنها استاندارد و نرمافزارها و لوازم جانبی زیادی برای آنها وجود دارد که باعث تسریع پیادهسازی طرح خواهد شد.
FPGA یا ASIC: در کاربردهایی که پردازشهای سنگین، با بلوکهائی با کارکرد همزمان مورد نیاز باشد یا کاربردهایی که ورودی و خروجیهایی متعدد یا زمانبندی دقیق و گاه همزمان دارند، میتوان ازاین روش استفاده کرد. در چنین کاربردهایی، استفاده از این روش ارزانتر و با مصرف توان پایینتر همراه خواهد بود.
پردازندههایسیگنال(Digital Signal Processor:DSP): این پردازندهها دارای ساختار میکرو پروسسوری بهینه شده برای محاسبات و پردازشهای سیگنال هستند. مثلاً برای انجام FFT در این پردازندهها، ملاحظات خاص Bit Reversed Addressing پیشبینی شده و همچنین ضربکنندههای سرعت بالایی را در خود دارند. گاه در این پردازندهها، سختافزارهای خاصی تعبیه شده که از طریق نرمافزار قابل کنترل هستند و کارایی بالایی دارند. برای مثال در یکی از خانوادههای این پردازندهها Viterbi Decoder وجود دارد که با سرعت و قابلیت بالا عمل میکند و بوسیله نرمافزار کنترل میشود. این پردازندهها در کاربردهایی استفاده میشوند که سرعت و حجم بالایی مورد نیاز نباشد و همچنین پردازشها نیز خیلی سبک نباشند. طبعاً استفاده از این پردازندهها مشکلتر از پردازندههای همهمنظوره و سادهتر از طراحی سخت افزار است. DSPها و GPPها دارای واحدهای محاسباتی ممیز شناور بسیار خوبی، جهت افزایش دقت میباشند، بنابراین برای الگوریتمهای ممیز شناور پیچیده، بهترین گزینه برای انتخاب هستند.
FPGAها به عنوان کمکپردازندههای متصل به DSPها یا GPPها، مفید میباشند. کاربردهایی مانند، شکلدهی پرتو و فیلترینگ پرسرعت، میتوانند بطور موثر در یک FPGA اجرا شوند. بنابراین، داشتن یک FPGA که با قابلیت جمعآوری اطلاعات همراه شده، معماری سیستم را سادهتر میکند. در جدول(1) مقایسهای بین دو نمونه متداول DSP و FPGA صورت گرفته و به صورت عددی، این دو روش پیادهسازی با یکدیگر مقایسه شده است.
جدول (1): مقایسه FPGA وDSP
خرابی و ایجاد خطا در سیستمهای هوائی
خرابیهایی که در سیستمها بوجود میآیند، را میتوان به دو دسته گذرا و ماندگار تقسیم کرد. در خرابی ماندگار قطعه بطور کامل خراب شده و نیاز به تعویض دارد. خرابی گذرا بطور موقت عملکرد بخشی از سیستم را مختل کرده، اما قطعه را تخریب نمیکند. ذرات آلفا و پرتوهای کیهانی، یکی از منابعی است که باعث ایجاد خرابی در سیستمهای الکترونیکی میشود. خرابیهایی که به این روش بوجود میآیند را Signal Event Upset: SEU مینامند که به معنای تغییر سطح ولتاژ یک عنصر دیجیتال است. این واقعه محتملترین اتفاق برای سیستم کامپیوتری واقع در فضا است و حتی در سطح زمین نیز مشاهده میشود. دو روش برای پرهیز از خرابی سیستم وجود دارد: جلوگیری از بروز خرابی(Fault Aviodance) و افزایش تحمل سیستم در مقابل آن (Fault Tolerance). روش اول سعی در کاهش احتمال وقوع خرابی دارد، در حالی که تحملپذیری سعی میکند تا با پذیرش خرابی، تاثیر آن را بر عملکرد سیستم و ایجاد خطا کاهش دهد. در واقع در این روش خرابی باعث ایجاد نقص میشود، اما این نقص قبل از آنکه عملکرد سیستم را مختل نماید آشکار گردیده و رفع میشود. از آنجایی که احتمال وقوع خرابی را نمیتوان بطور کامل از بین برد، در سیستمهای بحرانی معمولاً از تکنیکهای تحملپذیری برای افزایش اطمینان استفاده میشود. تکنیک تحملپذیری، بر اساس افزونگی بنا شده است. افزونگی یا با بکارگرفتن تجهیزات بیشتر حاصل میشود که در این صورت افزونگی سختافزاری است و یا با بکارگرفتن زمان اجرای بیشتر میسر میشود که در این صورت افزونگی زمانی خواهد بود و یا ترکیبی از این دو است. یکی از روشهای تحملپذیری، EDAC (Error Detection And Correction) یا باس تصحیح خطا است که مستقیما به حافظه استاتیکی و FLASH متصل میشود. روشهای EDAC و قابلیت هر کدام در جدول (2) آورده شده است.
جدول (2) : روشهای EDAC و قابلیتهای آن
هزینه، فضای پیادهسازی، وزن، سرعت و تغذیه مصرفی مواردی هستند که برای تکنیکهای مذکور محدودیت بوجود میآورند.
تشعشع و خطرات محیط فضا
بیشترین عامل خرابی در فضا، عامل تشعشع و اثراتی است که ذرات پر انرژی بر سیستمهای کامپیوتری میگذارند. مهمترین تاثیر تشعشع، تغییر در ولتاژ خروجی نیمه هادیها است. از ترانزیستورها در نقاط مختلف سیستم استفاده میشود اما تعدد و آسیبپذیری آنها در بخش حافظه بسیار بیشتر است[14]، [13].
بطور کلی تشعشع را میتوان به دو دسته اصلی تقسیم کرد:
ذرات پرانرژی مانند: الکترونها، پروتونها، نوترونها، ذرات آلفا و یونهای سنگین.
تشعشع الکترومغناطیسی مانند: اشعه ایکس، اشعه گاما و اشعه ماورا بنفش.
هر کدام از گونههای ذکر شده در محیطهای گوناگون و به میزان متفاوت وجود دارند.
محیطهای تشعشی را میتوان به دو دسته تقسیم کرد: محیطهای زمینی و محیطهای فرا زمینی.
دو منبع اصلی تشعشع روی زمین وجود دارد، یکی مواد رادیواکتیویته و دیگری پرتوهای کیهانی. ذرات آلفا که از تجزیه رادیواکتیوها به وجود میآیند، میتوانند مدارهای الکترونیکی را تحت تاثیر قرار دهند. به عنوان مثال رد پای مواد رادیواکتیویتهای مانند پلوتونیوم 210، اورانیوم 238و توریم 32 در پوسته سرامیکی تراشههای الکترونیکی و دیگر اجزا الکترونیکی دیده شده است. پرتوهای کیهانی نیز میتوانند منبعی برای تشعشعات در روی زمین باشند. این پرتوها از منابع بسیار دور کهکشان میآیند (مثلاً از ستارههای دوردست یا انفجارهای کهکشانی). این پرتوها پس از برخورد با مولکولهای جو زمین باعث ایجاد ذراتی موسوم به مولفه دوم پرتوهای کیهانی میشوند. میزان این ذرات با ارتفاع تناسب مستقیم دارد، به این ترتیب که اجسامی که در ارتفاع بالا پرواز میکنند (مانند هواپیما) میزان پرتوهایی تا 100 برابر میزان پرتو در سطح دریا را تجربه میکنند. همچنین میزان تشعشع به محل جغرافیایی نیز بستگی دارد.
زمین لایهی بسیار خوب برای حفاظت از پرتوهای رادیواکتیو به نام مگنتوسفر دارد اما فضاپیماها و ماهوارههایی که در خارج از این لایه محافظ قرار دارند از این حیث در مخاطرهاند. محافظتی که این لایه بوجود میآورد، به موقعیت جسم فضایی نسبت به زمین بستگی دارد. سه منبع اصلی برای تشعشعات رادیواکتیو در فضای بین سیارهایی وجود دارد که به ترتیب اهمیت عبارتند از:
کمربندهای ون آلن
بادهای خورشیدی
پرتوهای کیهانی
ویژگیهای سختافزارهای فضاپیماها
در سیستم الکترونیکی فضایی از محصولات و قطعات سختافزاری و نرمافزاری معمولی استفاده نمیشود و از نوعی که به محصولات فضایی معروفند، استفاده میگردد [12]. خاصیت عمده اینگونه محصولات، قابلیت اطمینان آنها است که با استفاده از تکنیکهای پیشگیری از خطا بوجود آمده است. در مقابل این گونه محصولات گرانقیمت، محصولات تجاری نیز وجود دارند که از قابلیتهای بیشتر و قیمت کمتری برخوردارند. آزمایشهائی جهت سنجش عملی بودن استفاده از محصولات تجاری در فضا انجام شده است. برای مثال، در ساخت ماهوارههایی در دانشگاه Surry بریتانیا، از محصولات تجاری استفاده میشود. در پروژه دیگری در دانشگاه استنفورد، در ماهواره ARGOS بردهای فضایی و تجاری در کنار یکدیگر قرار گرفت و ماهواره به فضا پرتاب شد تا عملکرد این دو برد با یکدیگر مقایسه شود.
کامپیوترهای فضایی بایستی کارایی بالاتری در خصوص راندمان، حجم حافظه، اصلاح/تشخیص خطا، قابلیت اطمینان، فرمان بازیابی و زمان ماموریت داشته باشند[3]. نیازمندیهای پایهای برای پردازنده فضایی عبارتند از:
معماری بر اساس استاندارد MILSTD-1750A
سازگاری EMI : Electro Magnetic Interface و EMC : Electro Magnetic Compatibility
محافظت و مقاومت در برابر تشعشع
کنترلSEU و مقاومت در برابر خطا
قابلیت اطمینان بالا با توجه به مدت زمان ماموریت
EDAC : Error Detection and Correction جهت تشخیص، ایزولاسیون و تصحیح خطا در حافظه
کاراییباMIPS : Million Instructions Per Second بالاتر
وزن و توان مصرفی پایین و زمان بازیابی کوتاه
فاکتورهای مهم در طراحی فضاپیماها در جدول (3) ذکر شده است.
جدول (3) : فاکتورهای مهم در طراحی کامپیوتر فضاپیما
در زیر تدابیری در مورد انتخاب قطعات ذکر شده است:
قطعات GaAs ایمنتر از نوع Si هستند.
خازنهای بزرگتر مقاومت اضافی در SRAMها تولید میکنند.
در Layout ایزولاسیون اکسیدی مفید است ولی گران قیمت میباشد.
بجای بستهبندی سرامیکی یا سربی، تکنولوژیهائی مانند PBGA: Plastic Ball Grid Array که از پلاستیک استفاده میکنند، معرفی شده است. این بستهبندی، قطعات را از جذب رطوبت و تخریب تشعشعی محافظت میکنند[8]، [7].
نتیجهگیری
مشخصههای مهم سیستمهای اویونیک فعلی، شامل افزایش ایمنی، برآورده کردن ملزومات و احتیاجات کنترل ترافیک هوایی، عملکرد در شرائط مختلف آب و هوایی، کاهش مصرف سوخت، بهبود کارائی وکنترل هواپیما، و کاهش در هزینههای تعمیرات و نگهداری میباشند. در انتخاب بین DSP و FPGA، زبان برنامهنویسی ساده، امکان برنامهنویسی float و انجام عملیاتهای محاسباتی پردازش سیگنال، جزو مزایای DSPها و سرعت پردازش بالا، امکان انجام چندین عملیات به صورت موازی، وجود تعداد زیادی پورت ورودی و خروجی و کنترل دقیق تایمینگ از مزایای FPGAها به شمار میروند. در سیستمهای هوائی، برای انتخاب پردازنده مناسب، فاکتورهائی مانند راندمان، حجم حافظه، اصلاح/تشخیص خطا، قابلیت اطمینان، تحمل خطا، فرمان بازیابی، زمان ماموریت و مقاومت در برابر تشعشع موثر میباشند. یک پیادهسازی مناسب باید قابلیت مقاومت در برابر خطا یا تحملپذیری خطا را داشته باشند. به این منظور از روشهای کدینگ مانند Reed Solomon یا CRC در ارسال داده استفاده میشود. همچنین Platform باید کمترین احتمال خطا را داشته باشد. مثلاً انتخاب FPGAهای Antifuse از انتخاب FPGAهای مبتنی بر SRAM به دلیل مقاومت بهتر در برابر تشعشع، بهترند.
از سه شرکت معروف ساخت FPGA، ابتدا محصولات Actel معرفی شدند. دیدیم ماهیت غیرفرار FPGAهای Actel موجب میشوند که پیکربندی آنها بدون نیاز به حافظه خارجی، حفظ شود. بنابراین دیگر نیازی به بارگذاری داده در زمان شروع کار سیستم وجود ندارد. علاوه بر این، عدم نیاز به حافظه خارجی، باعث صرفهجویی در هزینهها و فضای بورد میشود. برخلاف تراشههای با کاربرد خاص، FPGAهای Actel به راحتی و با سرعت قابل برنامهریزی هستند و مراحل طولانی فرایند ساخت ASICها و هزینههای هنگفت طراحی مجدد هر طرح را مرتفع میکنند. شرکت Xilinxهای و Altera نیز تعداد زیادی محصول با کاربری در زمینه سیستمهای هوائی و نظامی دارند. در تحقیق انجام شده که خلاصهای از آن در این مقاله آورده شده است، مزایای FPGAهای Altera و Xilinx با توجه به آشنایی دانشجویان با آنها، ذکر نشده است.
بررسی FPGAهای موجود نشان داد که بسیاری از مشخصات این تراشهها بسیار به یکدیگر شباهت دارند و الزامات یک سیستم اویونیک را برآورده میسازند. در نتیجه آنچه که باید در انتخاب FPGAها مد نظر قرار بگیرد، دسترسی، محبوبیت و سابقه سازنده آن، آشنایی طراحان سیستم با محیطهای طراحی و پیادهسازی آن و تجربه کار باتراشههای آن سازنده میباشد. همچنین باید به طور دقیق مشخص شود که چه کاربردی از سیستم قرار است توسط FPGA پیادهسازی شود، تا بتوان علاوه بر بررسی امکانپذیری پیادهسازی، در هزینه نیز صرفهجوئی کرد.
مراجع
Peter Cavill, “FPGA or DSP for military applications? Both have their place”, DSP-FPGA.com Product Resource Guide, 2005.
B. Ames, “FPGAs and DSPs square off in military designs, Military & Aerospace Electronics”, 2004.
J. Ryan Kenny, Bryce Mackin, “FPGA coprocessing architectures for military applications”, Military Embedded Systems, September/October 2007.
Tapan A.Mehta, Altera and Joel Rotem,MangoDSP " FPGA co-processing solutions for signal processing applications", SOC DESIGN Conf., Feb. 2005
Actel “FPGAs for Military, Avionics,and High Reliability Applications”, 2007
M. Littlefield, M. Uhm,“Future-Proofing Military Applications Using FPGAs” Military Embedded Systems magazine, July 2007
Altera White Paper,” Military Productivity Factors in Large FPGA Designs”
Actel Paper “Military/Aerospace FPGA Package and Selector Guide”
بهزاد خنجریان، "رویکردی نو بر پردازندههای سیگنال"، کنفرانس هوا-فضا ، 1385
محمود نعمت ا.. زاده، علی اکبر جمشیدی فر"بررسی تشعشع در محیط های فضائی"، مجله فضا، صص 15- 21، 1387
محمود نعمت ا.. زاده، علی اکبر جمشیدی فر"“تاثیر ذرات باردار پرانرژی بر جو و سیستم های کامپیوتری ماهواره ها"، مجله فضا، صص 17- 22، 1387