اطلاعیه

Collapse
No announcement yet.

افزایش write cycle در حافظه های eeprom

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    افزایش write cycle در حافظه های eeprom

    با سلام. میدونیم که تعداد دفعات پاک کردن/نوشتن در حافظه های با قابلیت بازنویسی مثل eeprom ها محدود هست(بعنوان مثال 100 هزار بار) اما از اونجاییکه در اکثر مواقع تعداد زیادی از بایت ها یا بلاکهای حافظه خالی میمونه بنظرم میشه با تقسیم ثبت داده ها در بایت های مختلف عملا تعداد دفعات رو افزایش داد. فرض کنید ما فقط یک بایت اطلاعات رو باید ذخیره کنیم و حافظه ای با 1 کیلو بایت در اختیار داریم. هر بار داده موردنظر رو در یکی از خونه ها مینویسیم و با یک تکنیک بعدن متوجه بشیم که آخرین داده در کجای حافظه هست. کسی ایده یا فایلی در این مورد داره معرفی کنه.
    ساده ترین راهی که به ذهن خودم میرسه اینه که یک آرایه دوستونی داخل eeprom تعریف کنیم. اولین بایت داده مورد نظر و بایت دوم شامل صفر یا 1 منطقی برای اینکه بدونیم کدوم داده آخرین داده هست. هر بار نیاز بشه داده جدیدی ذخیره کنیم بایت دوم داده قبلی رو صفر میکنیم و بایت جدید رو در محل بعدی به همراه 1 منطقی در بایت دومش مینویسم.
    اما احتمالا راه یا الگوریتم بهتری هم برای انجام کار هست.
    جدیدترین ویرایش توسط mojalan; ۱۰:۵۶ ۱۴۰۲/۱۱/۱۶.

    #2
    این ترفند با نام الگوریتم wear leveling شناخته میشه و در حافظه های بزرگ مثل هاردها و فلش ها هم انجام میشه توسط کنترلر حافظه. ایده اصلی اینه که با پخش داده ها در تمام فضای حافظه عملا عمر حافظه رو با وجود محدودیت دفعات سیکل پاک کردن/نوشتن ، افزایش میدن

    دیدگاه

    لطفا صبر کنید...
    X