علمی : زمانبندی وظایف در سیستم های تعبیه شده بی درنگ برداشتگر انرژی با …

then

  1. SIm= SI– 1
  2. end if
  3. end if
  4. ftm= Stm+ wm / S(SIm)
  5. end for
  6. end for

شکل 3-3 : شبهکد الگوریتم HA_DVFS قسمت تنظیم بارکاری پردازنده و انتخاب پویای ولتاژ و فرکانس ]19[
شکل 5شکل 3-3 : شبه¬کد الگوریتم HA_DVFS قسمت تنظیم بارکاری پردازنده و انتخاب پویای ولتاژ و فرکانس
مرحله 3 : بررسی انرژی
در دو مرحله قبل، به ازای هر وظیفه یک زمان شروع و خاتمه و فرکانس اجرایی مشخص شد. در این قسمت نوبت به بررسی انرژی میرسد. بعبارتی با توجه به دو مرحله قبل و دانشی که از انرژی برداشت شده از محیط و موجودیت انرژی در باطری دارد، الگوریتم به بررسی کافی بودن انرژی برای اجرای هر وظیفه میپردازد و در صورت عدم وجود انرژی کافی، الگوریتم، باتوجه به اینکه سیستم در حین اجرا، قابلیت برداشت و ذخیره انرژی را دارد، به محاسبه زمان تأخیر برای اجرای وظیفه جاری میپردازد. این زمان تأخیر به گونهای است که درصورتیکه زمان شروع مشخص شده برای وظیفه به این زمان تأخیر، اضافه شود سیستم، قادر به برداشت و ذخیره انرژی خواهد بود. سپس چک میکند آیا این تأخیر میتواند موجب نقض سررسید خود وظیفه و یا سایر وظایف شود؟ درصورت منفی بودن جواب، این تاخیر در زمان شروع اجرای وظیفه، اعمال شده و در زمان بدست آمده، وظیفه جاری، اجرا میشود و در غیر اینصورت وظیفه از صف آماده حذف میگردد.
مرحله 4: جلوگیری از سرریز باطری و انتقال زمان آرامش
انرژی برداشت شده از محیط، ممکن است بدلیل ظرفیت محدود ذخیرهساز انرژی، سبب سرریز در آن، و درنتیجه، باعث اتلاف انرژی شود. یک الگوریتم مدیریت توان خوب باید قادر به تشخیص سرریز بوده و بتواند در جهت جلوگیری از اتلاف انرژی حاصل از سرریز انرژی، تلاش کند. در این بخش از الگوریتم، نویسندگان سعی در استفاده از انرژی اتلاف شده برای افزایش کارایی سیستم و ذخیرهسازی بیشتر انرژی در زمانهای آتی را دارند.
 
شکل 63-4 : زمانبندی دو وظیفه
شکل 3-4 : زمانبندی دو وظیفه ]19[
در این الگوریتم بیان میشود، درصورتیکه دو وظیفه مطابق شکل 3-4، داشته باشیم و در فاصله زمانی بین Stو Stm+1، در ذخیرهساز انرژی، سرریز رخ دهد، این انرژی سرریز شده قبل از زمان Stm+1، نمیتواند برای بهبود کارایی سیستم به کار برده شود مگر اینکه دو شرط زیر برقرار باشد:
سرریز انرژی در زمانی رخ دهد که وظیفه mτ، شروع به اجرا شده باشد.
وظیفه m+1 τ ، باید بتواند بعد از اینکه انرژی سرریز شده برای سرعت بخشیدن به اجرای وظیفه mτ، استفاده شد، زمان آرامش بیشتری برای اجرا بگیرد بعبارتی باید داشته باشیم :
Stm+1 ≠ am+1
(29)
Stm+1 > am+1.
در الگوریتم HA_DVFS ، فقط بر روی سرریزی با چنین مشخصاتی تمرکز شده و از شرایط گفته شده در جهت بهرهوری از انرژی سرریز شده و افزایش کارایی سیستم، استفاده شده است. و درصورتیکه در شرایطی غیر از شرایط گفته شده، سرریز رخ دهد، الگوریتم، قادر به جلوگیری از اتلاف انرژی نخواهد بود.
شکل 3-5 ، شبهکد الگوریتم بهرهوری از انرژی سرریز شده را نشان میدهد. در این الگوریتم فرض میشود که وظیفه mτ، با فاکتور کاهش سرعت SIm ، زمانبندی شدهاست. اگر مطابق با آنچه گفته شد، در نقطهای بین (Stm , ftm) سرریز رخ دهد میزان مقدار انرژی سرریز شده از باطری E، تا زمان خاتمه وظیفه جاری یعنی ftm، بصورت زیر محاسبه میشود :
EO = EC(Stm) + EH(Stm , ftm) – ED (Stm , ftm) – Ecap (30)
بصورت ایدهآل، برای جلوگیری از سرریز باطری، فرکانس اجرایی وظیفه mτ، طوری باید افزایش یابد که، فقط انرژی سرریز E، مصرف شود اما بدلیل مجزا و مشخص بودن سطوح فرکانس پردازنده گاهی ممکن است دقیقا این میزان انرژی مصرف نشود پس باید سعی کرد تا مصرف انرژی در فرکانس جدید، مقداری بیشتر از E، باشد درنتیجه خواهیم داشت :
ED(St, wm/f(SIm,new) ) – ED(St, wm/f(SIm) ) ≥ EO (31)
فرکانس انتخابی جدید، f(SIm,new) ، باید بیشترین مقدار ممکن، باشد طوریکه اگر یک سطح کمتر از آن انتخاب شود، سرریز انرژی در باطری، رخ دهد. بنابراین خواهیم داشت :
ED(St, wm/f(SIm,new)-1 ) – ED(St, wm/f(SIm)-1 ) < EO (32)
اما با این وجود گاهی حالاتی رخ میدهد که حتی اگر وظیفه جاری در بیشترین سرعت پردازنده یعنی fmax ، نیز اجرا شود باز هم در باطری، سرریز داریم در اینصورت طبق الگوریتم وظیفه جاری mτ، در فرکانس بیشینه fmax ، اجرا میشود.
Require : The workload Balanced Schedule for M task in Q

دانلود متن کامل پایان نامه در سایت jemo.ir موجود است

  1. if( EC(Stm) + EH(Stm , ftm) – ED(Stm , ftm) > ECap & am+1 < ftm )