تسطیح سایش فرآیندی است که برای افزایش عمر دستگاه های ذخیره سازی حالت جامد طراحی شده است.
ذخیره سازی حالت جامد از ریزتراشه هایی تشکیل شده است که داده ها را در بلوک ها ذخیره می کند. هر بلوک می تواند تعداد محدودی از چرخه های برنامه/پاک کردن را قبل از غیرقابل اعتماد شدن تحمل کند. به عنوان مثال، فلاش NAND سلول تک سطحی (SLC) معمولاً بین ۵۰۰۰۰ تا ۱۰۰۰۰۰ چرخه برنامه/پاک کردن رتبه بندی می شود . تراز سایش داده ها را طوری مرتب می کند که چرخه های نوشتن/پاک کردن به طور مساوی بین تمام بلوک های دستگاه توزیع شود.
تراز سایش معمولاً توسط کنترلر فلاش مدیریت می شود، که از یک الگوریتم تراز سایش برای تعیین اینکه هر بار که داده ها برنامه ریزی می شوند، از کدام بلوک فیزیکی استفاده می کند، استفاده می کند.
تراز سایش شاید حتی در دستگاه های فلش NAND سلول چند سطحی (MLC) مهم تر باشد. در جایی که SLC اجازه می دهد یک بیت در یک بلوک حافظه نوشته شود، دو بیت را می توان همزمان در بلوک های MLC نوشت. این به کاهش هزینه درایوهای حالت جامد (SSD) کمک می کند، اما سایش را افزایش می دهد. برای کمک به کاهش افزایش سایش، SSD های سازمانی از MLC سازمانی یا eMLC استفاده می کنند که سرعت نوشتن را کاهش می دهد و نرخ سایش را کاهش می دهد.
تسطیح سایش پویا در مقابل استاتیک
دو نوع سطح سایش SSD وجود دارد: پویا و استاتیک. تسطیح پویا بلوک ها را پاک می کند و بلوک را با کمترین تعداد پاک کردن برای نوشتن بعدی انتخاب می کند. نقطه ضعف تسطیح پویای سایش این است که اگر یک بلوک دادههایی را نگه میدارد که دسترسی به آنها وجود ندارد، هرگز به بلوک دیگری منتقل نمیشود. این تعداد بلوکهایی را که در یک SSD تحت تسطیح سایش قرار میگیرند، محدود میکند.
تسطیح سایش استاتیک مانند تراز سایش پویا عمل میکند، اما همچنین تضمین میکند که بلوکهای دادههای استاتیک زمانی که تعداد حذف بلوکهای آنها به زیر یک آستانه معین میرسد، جابهجا میشوند. این مرحله اضافی از جابجایی دادهها میتواند عملکرد نوشتن را به دلیل سربار روی کنترلکننده فلاش کند کند، اما تراز کردن سایش استاتیک برای افزایش طول عمر دستگاههای حالت جامد به طور قابلتوجهی مؤثرتر از تراز کردن پویا است.
تراز کردن لباس در مقابل TRIM
دستور TRIM تنظیم شده در سیستم عامل کامپیوتر (OS) به دستگاه فلش NAND دستور می دهد زمانی که یک بلوک حافظه دیگر استفاده نمی شود و می توان آن را پاک کرد. اصطلاح TRIM برای SSD های سریال ATA (SATA) به کار می رود. در SSD های مبتنی بر SAS، یک مجموعه دستور مشابه UNMAP نامیده می شود.
از طرف دیگر، سطح پوشیدن توسط کنترلر فلاش مدیریت می شود، نه سیستم عامل. برخلاف TRIM، سایش تراز تنها زمانی عمل میکند که دادهها روی SSD نوشته میشوند و از کنترلکننده فلاش میخواهند مجموعه بلوکهایی را با کمترین تعداد چرخه P/E شناسایی کنند تا بتوان دادهها را روی آنها نوشت. فعالیت TRIM زمانی اتفاق میافتد که به سیستمعامل اطلاع داده شود که یک بلوک حافظه دیگر دادهها را نگه نمیدارد.
TRIM تقریباً توسط تمام سیستم عامل های رایانه و سرور پشتیبانی می شود و از سال ۲۰۱۳ توسط سیستم عامل اندروید موبایل پشتیبانی می شود.
تسطیح پوشاک در مقابل جمع آوری زباله
جمع آوری زباله روش دیگری برای بهبود عمر عملکرد و کارایی نوشتن یک SSD است.
سلولهای حافظه در یک SSD از بلوکها تشکیل شدهاند و هر نمونه از دادهها در هر بلوک در تعدادی صفحه نوشته میشود. صفحات جداگانه را می توان با نوشتن جدید به روز کرد، اما داده های یک سلول فلش NAND باید یک بلوک کامل در یک زمان پاک شوند. این به این معنی است که بهروزرسانیهای دادههای کوچک چرخههای پاک کردن ضایعات را برای صفحات استفاده نشده در یک بلوک انجام میدهند.
در حین جمعآوری زباله، تمام صفحاتی که در یک بلوک روی آن نوشته میشوند به یک بلوک جدید منتقل میشوند و صفحات بدون تغییر در بلوک قبلی پاک میشوند. این به طور کامل بلوک قبلی را برای استفاده در تسطیح سایش آزاد می کند.