شنبه 30 دی 1396 | Saturday 20 th of January 2018 صفحه اصلی گروه الکترونیکی کامپیوتر
4-3-4- ارزیابی سودمندی مدار

یک بخش مهم در برنامه نویسی ژنتیکی، فراهم کردن روشی برای ارزیابی برنامه ها، با توجه به محدودیت هایی که در ان مسئله وجود دارد، می باشد. در این مسئلۀ بهینه سازی 3 محدودیت وجود دارد:

اول اینکه: مشخصات مدار باید رفتار ورودی/خروجی را به طور کامل تبعیت کند. این مشخصات در جدولی به نام جدول درستی در ج می شود. (این جدول به عنوان یک مشخصۀ مدار از جمله پارامتر های است که از کاربر دریافت می شود.)

دوم اینکه: سایز مدار چه از نظر تعداد گیت چه از نظر تعداد ترانزیستور  باید کاهش یابد. این کار سبب می شود که مدارهای پیچیده، قدری ساده تر و کم حجم تر شوند.

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

برای اینکه مداری ایجاد کنیم که از نظر فضا و زمان پاسخ بهینه باشد و همچنین به درستی عمل کند، مدار را با استفاده از رهیافت بهینه سازی چند هدفی[1]  ارزیابی می کنیم. در این روش چندین تابع هدف وجود دارد . که این چند تابع را به یک هدف تبدیل می کنیم. این عمل معمولاً با استفاده از فرمول زیر صورت می گیرد:

 (4-1

                      در این فرمول  ها، وزن و  ها، توابع ما هستند. این معادله یکی از روش های تبدیل چند تابع به یک تابع تکی می باشد[1].

 

 (4-2)

تابع اول، تابع penalty()می باشد. این تابع، خروجی مدار تولید شده را به ازای تمامی مقادیر ممکن ورودی توسط تابع  funcc()محاسبه می کند. و بعد خروجی بدست امده را با خروجی مورد انتظار مدار که در جدول درستی درج شده است مقایسه می کند، به ازای هر یک بیت خطا در خروجی جریمه ای برای مدار در نظر می گیریم. مقدار جریمه باید انقدر سنگین باشد که در صورت بروز خطا، نامناسب بودن مدار مشخص شود. به همین خاطر مقدار جریمه برای مداری با niورودی و nlخروجی به صورت زیر خواهد بود:

تابع دوم، تابع gateEquiv()می باشد. این تابع، مجموع تعداد گیت های معادل موثر در مدار را به عنوان خروجی برگرداند (تعداد گیت های معادل یگ گیت، در ارایه ای به نام geذخیره شده است) .

تابع سوم، تابعmaxdelay()می باشد. این تابع در هر سطح، تأخیر انتشار مربوط به گیتی که در بین گیت های ان سطح بیشترین تأخیر انتشار را دارد را پیدا کرده، و بعد مجموع ماکزیمم تأخیر انتشار های تمام سطوح را محاسبه می کند.و بدین تر تیب ماکزیمم تأخیر انتشار در کل مدار حاصل می شود. در نتیجه تابع سودمندی را به صورت یک تابع چند هدفی به صورت زیر تعریف می کنیم:

(4-3)

(4-3)

که در ان w1=1و مقادیر w2و w3به گونه ای میباشد که w2 + w3 = 1

توجهداشته باشید که هر چه مقدار تابع سودمندی کمتر باشد مدار ما مناسب تر و کاراتر خواهد بود.


[1]Multi-objective optimization(MOO) 

Compatability by:
آخرین به روز رسانی سایت: سه شنبه, 22 اسفند 1391 - 00:26