هیچ بعید نیست که شما هم یک SSD پرسرعت تهیه کرده باشید اما با گذر زمان متوجه کند شدن ssd و افت کارایی آن شده باشید. اما آیا واقعاً SSDها با گذر زمان کُند می شوند؟ در این صورت دلایل افت کارایی آنها چیست؟ در نوشتار پیش رو به این پرسش شما پاسخ می دهیم.
همانطور که احتمالاً می دانید، تعداد دفعات (چرخه) نوشتن/پاک سازی (P/E) تراشه های NAND مورد استفاده در SSDها کاملاً محدود است و همین امر موجب کند شدن ssd شده و دوام آنها به تعداد چرخه های نوشتن/پاک سازی تراشه های حافظه بکار رفته وابسته است. مطمئناً هرچه تعداد چرخه های نوشتن/ پاکسازی بیشتر باشد، به بهتر شدن عمر و جلوگیری از ضعیف شدن آن کمک میکند.
تنزل شدید کارایی در یک SSD با گذر زمان
چرا حافظه SSD سیستم کند شده است؟
در سال های ابتدایی معرفی SSD به صنعت کامپیوترهای شخصی، شاهد تراشه های حافظه NAND با دوام ۵۰۰۰ چرخه نوشتن/پاک کردن بودیم، کمی که گذشت دوام تراشه هایی که تولید می شدند به ۳۰۰۰ چرخه کاهش پیدا کرد.
ظرف یک الی دو سال دوام تراشه های حافظه به ۱۰۰۰ چرخه کاهش پیدا کرد و کمی بیشتر که گذشت، این مقدار به تنها ۵۰۰ چرخه رسید. با مهاجرت از تراشه های MLC NAND به TLC NAND تعداد چرخه های نوشتن/پاک سازی از این هم بدتر شد و دوام تراشه های بکار رفته در بسیاری از SSDهای ارزان قیمت امروزی از ۱۰۰ چرخه فراتر نمی رود!
پیشرفت ها در فناوری تصحیح خطا (error correction) کنترلرها این امکان را به سازندگان SSD بخشید تا از تراشه های حافظه ارزان تر و کم دوام تر در SSDهای مقرون به صرفه تر استفاده کرده و از کند شدن ssd جلوگیری کنند.
در حقیقت هرچه که فناوری ساخت (لیتوگرافی) تراشه های حافظه NAND مورد استفاده SSDها کوچکتر می شود، تعداد چرخه های نوشتن/ پاک کردن آنها نیز کاهش می یابد و در نهایت باعث پایین آمدن سرعت ssd میشود. اما پس چه دلیلی برای اصرار به کوچکتر کردن فناوری ساخت وجود دارد؟
فناوری ساخت کوچکتر این امکان را فراهم می کند تا تراشه های حافظه با چگالی بالاتر تولید کرد که در نهایت به کاهش تعداد تراشه های حافظه مورد نیاز برای ساخت SSDها می انجامد.
برای نمونه به جای استفاده از چهار تراشه ۴۰ نانومتری ۲۵۶ گیگابیتی در یک SSD با ظرفیت ۱۲۸ گیگابایت، می توان از تنها دو تراشه ۱۵ نانومتری ۵۱۲ گیگابیتی استفاده کرد که به وضوح به کاهش هزینه تمام شده کمک می کند.
تاثیر فناوری تصحیح خطای NANDXtend کنترلرهای Silicon Motion
احتمالاً اکنون می پرسید چگونه سازندگان با استفاده از تراشه های حافظه NAND کم دوام تر مشکلی ندارند، مگر به کاهش دوام محصولات آنها نمی انجامد؟ خب پاسخ به این پرسش فراتر از تنها یک کلمه است.
آنچه که باعث شده تا سازندگان با بکارگیری تراشه های NAND با دوام پایین تر مشکلی نداشته باشند، ظهور فناوری های افزایش دهنده دوام در سمت کنترلرها است.
سازندگان کنترلرها روش هایی ابداع کرده اند که به افزایش دوام تراشه های با دوام پایین تر کمک می کند، البته این روش ها چیزی فراتر از الگوریتم های معمول کاهنده حجم نوشتن است.
تکنیک تصحیح خطا (LDPC) در SSD
اغلب سازندگان کنترلرها با نام اختصاصی خود از این فناوری ها یاد می کنند اما در کنترلرهای امروزی اغلب مبتنی بر تکنیک تصحیح خطا Low-Density Parity-Check code (LDPC) است که از کسر کوچکی از حافظه برای نگه داری کد تصحیح خطا استفاده می شود.
اگر بخواهیم کارکرد LDPC را به دور از پیچیدگی های فنی بیان کنیم، به ازای داده هایی که در تعداد مشخصی از سلول های حافظه نوشته می شوند، یک کد اطمینان تولید می کند که رابطه منطقی با مقدار همان سلول ها دارد، کد اطمینان در یک جدول اختصاصی نگه داری می شود تا موقع خواندن اطلاعات از آن برای پی بردن به بروز خطا و تصحیح آن استفاده کرد.
درباره علت کند شدن حافظه ssd میتوان گفت که در موقع خواندن داده ها، در صورتی داده های یک یا چند بیت به هر علتی خراب شده باشد، موتور تصحیح خطا ضمن متوجه شدن، با تکیه بر کد اطمینان تولید شده مختص به همان سلول ها، مقدار سلول یا سلول های معیوب را محاسبه و جایگذاری می کند.
بدین ترتیب به رغم خراب شدن بخشی از داده های سلول های حافظه، داده های اصلی بدون مشکل خوانده می شوند و بروز خطا در سطح سلول های حافظه به خرابی داده ها و کاهش سرعت SSD منجر نمی شود.
وجود موتور تصحیح خطا باعث می شود تا به رغم بروز خطا بتوان از SSD استفاده کرد و شاهد افت سرعت SSD نبود که نهایتاً به افزایش دوام و بهینه سازی آنها می انجامد. معمولاً موتورهای تصحیح خطا قدرتمند دوام نهایی SSD را بین ۱٫۵ تا ۳ برابر افزایش می دهند. برای مثال ممکن است دوام تراشه های حافظه از ۱۰۰۰ چرخه نوشتن/پاک کردن به ۱۵۰۰ و حتی ۲۰۰۰ چرخه افزایش یابد.
افزایش دوام ناشی از بکارگیری فناوری تصحیح خطا
در وجود کنترلرهای مجهز به موتور تصحیح خطا، سازندگان SSD می توانند با بالا بردن طول عمر حافظه SSD از تراشه های NAND با دوام پایین تر (که مطمئناً ارزان تر نیز هستند) بدون اینکه دوام اسمی محصول را کاهش دهند، استفاده کنند.
اغلب کنترلرهای امروزی از کد BCH برای تصحیح بیت های معیوب موقع خواندن داده ها استفاده می کنند. با این حال سازندگان کنترلرها تغییراتی را در الگوریتم ها اعمال می کنند که به افزایش کارایی و دوام هرچه بیشتر SSD کمک می کند، برخی سازندگان نیز چندین روش تصحیح خطا مختلف را به طور هم زمان به خدمت می گیرند که به دوام هرچه بیشتر کمک می کند.
در حالی که پیاده سازی تکنیک های تصحیح خطا مفید به نظر می رسد موجب افزایش سرعت حافظه SSD خواهد شد، اما هنگامی که یک بیت خراب می شود، کنترلر باید عملیات تصحیح خطا را اجرا کند که باعث بروز تاخیر و افزایش مصرف انرژی می شود و این همان راز کُندی SSDها و معیوب شدن با گذر زمان است.
با گذر زمان و خرابی هرچه بیشتر سلولهای حافظه، کار تصحیح خطا شدت می گیرد و روز به روز SSD کندتر می شود، چرا که در کنار کارهای معمول خواندن، باید عملیات تصحیح خطا و بهبود عملکرد SSD نیز اجرا شود.
با این حال کُند شدن تنها نگرانی موجود نیست و میزان خطای قابل تصحیح توسط کنترلر محدود است که با عبور از آن دیگر کنترلر قادر به تصحیح خطا نیست و داده ها به طور برگشت ناپذیر خراب می شوند، اینجاست که دیگر SSD به پایان عمر خود نزدیک می شود.
در این زمان ممکن است کنترلر به عنوان یکی از راه های بهبود سرعت حافظه SSD ، تلاش کند بلاک های دارای سلول معیوب را نادیده بگیرد و از آنها استفاده نکند یا بلاک های یدک را جایگزین کند اما هنگامی که تعدادی زیادی سلول حافظه بمیرند، موجب کند شدن ssd شده و در واقع دیگر SSD به پایان راه خود رسیده است.
چگونه از ssd استفاده کنیم که کُند نشود؟
استفاده از نرمافزارهای مدیریت SSD نظیر SSD Fresh موجب خواهد شد تا میزان خواندن و نوشتن بر روی این حافظه کاهش یافته و به طول عمر دستگاه کمک شایانی کرده و از کند شدن ssd جلوگیری کند.