نام پژوهشگر: سعید جوادزاده
سعید جوادزاده محمود احمدی
برای غلبه بر نیازهای روز افزون در زمینه الکترونیک و تکنولوژی استفاده از سیستم های چند پردازنده ای یک ضرورت اجتناب ناپذیر شده است. یکی از چالش های اصلی برای سیستم های چند پردازنده ای بحث ارتباطات هسته های پردازشی و حافظه ای می باشد. با پیشرفت تکنولوژی هر روز بر تعداد هسته های موجود در یک تراشه افزوده می شود به طوری که دیگر استفاده از روش های سنتی مانند گذرگاه مشترک یا اتصال نقطه به نقطه کارا و مقرون به صرفه نمی باشند. ایده شبکه روی تراشه برای غلبه بر این مشکل از طریق به کارگیری روش های موجود در شبکه های سنتی برای تراشه ها مطرح شده است. هرچه اندازه ها کوچک تر می شود احتمال بروز اشکال در سیستم ها و تراشه ها نیز بیشتر می شود. این مقوله برای شبکه روی تراشه نیز یک چالش اساسی محسوب می شود. بدین منظور در این پایان نامه به دنبال روش هایی هستیم که در کنار تحمل پذیری اشکال در شبکه روی تراشه پارامترهای کارایی و توان مصرفی را نیز در حد مطلوب حفظ نماییم. تحمل پذیری اشکال با توان و کارایی نسبت معکوس دارد. زیرا غالباً برای تحمل پذیر کردن یک سیستم در مقابل اشکال از افزونه ها استفاده می شود. یعنی بخش هایی از سیستم تکرار می شوند و یا بخش هایی به سیستم اضافه می شود تا در صورت بروز اشکال بخش های اضافه بتوانند عملکرد سیستم را حفظ نمایند. این بخش های اضافه توان را افزایش و کارایی را کاهش می دهند. بنابراین لازم است در بحث تحمل پذیری اشکال از روش هایی استفاده شود و یا تمهیداتی در نظر گرفته شود که تعادلی بین تحمل پذیری با توان و کارایی حاصل شود. در این پروژه این مطلب در نظر گرفته شده و روش هایی برای تحمل پذیری اشکال ارائه شده است که کارایی و توان سیستم را در حد مطلوب حفظ می نماید. برای کسب این هدف تحمل پذیری در هر دو حوزه اشکال دائم و گذرا بررسی شده و راه کارهایی برای هر کدام ارائه شده است. برای اشکال دائم یک الگوریتم مسیریابی جدید معرفی شده است. این الگوریتم از خاصیت ذاتی هم بندی توروس (torus) برای مسیریابی در دو جهت مثبت و منفی بهره می برد. از طریق این قابلیت برای هر انتقال 8 مسیر وجود خواهد داشت که الگوریتم مطرح شده با روش هایی کوتاه ترین مسیر امن از بین این 8 مسیر را انتخاب کرده و برای مسیریابی استفاده می کند. با افزودن متدهایی سربار پردازشی این روش به حداقل ممکن رسیده و در نهایت کارایی سیستم و انرژی مصرفی در حد مطلوب حفظ شده است. مدل اشکال دائم خرابی پورت می باشد. برای اشکال گذرا نیز یک مدل جامع اشکال در سطح سیستم برای شبکه روی تراشه در نظر گرفته شده و با بررسی منشاء هر اشکال راه کارهای مفیدی برای عبور از آن ارائه شده است. روش هایی مثل کد همینگ برای شمارنده بافرها و سرآیند بسته ها، سیگنال دریافت در انتقال ها، کد کشف خطا در کل بسته و شمارنده توالی بسته برای این منظور استفاده شده است. در این بخش نیز سبک بودن روش و حداقل تأثیر منفی بر کارایی و توان مدنظر بوده است. برای ارزیابی از سه شبیه ساز booksim، شبیه ساز خانگی نوشته شده با c# و سوم مدل طراحی شده با زبان توصیف سخت افزار vhdl و شبیه ساز modelsim استفاده شده است. نتایج عملی نشان داد که روش های مذکور کارایی مناسبی داشتند. روش اشکال دائم تا خرابی 10 درصد از کل شبکه عملکرد خود را حفظ نموده و در این حالت تنها 15 درصد سربار تاخیر بر شبکه اضافه می نماید. مقدار بسته های گمشده نیز در ترافیک 20 درصد و 10 درصد خرابی در شبکه کمتر از 2 درصد بوده است. برای اشکال گذرا نیز با تزریق 50 درصد از انواع خطاهای موجود در مدل استفاده شده در ترافیک 30 درصد نرخ بسته های گم شده کمتر از 8 درصد به دست آمده است.