آناتومی حافظه SSD؛ هرآنچه باید درباره ساختار آنها بدانید
آیا میدانید تفاوت حافظه SSD با حافظه HDD چیست؟ چه ساختاری باعث عملکرد بسیار بهتر حافظههای SSD نسبت به حافظههای HDD شده است و چرا این حافظهها نسبت به حافظههای HDD عمر بالاتری دارند؟ در این مطلب قصد داریم به این سؤالها پاسخ داده و آناتومی حافظههای SSD را بهصورت ساده و خلاصه تشریح کنیم تا آشنایی کلی در مورد ساختار این حافظهها به دست آورید.
حافظههای SSD نه مغناطیسی هستند، نه الکترونیکی و فوتونیک هستند، بلکه ساختار کاملاً متفاوتی دارند که آنها را از ساختار انواع حافظه کاملاً متمایز میکند. مطمئناً هر کسی برای ذخیره اطلاعات ارزشمند خود نیازمند حافظه ایمن و پایدار است. اصلیترین حافظههای ذخیرهسازی به سه نوع حافظه HDD و SSD و اپتیکال تقسیم میشوند.
در این مطلب قصد داریم آناتومی حافظههای SDD را که نسبت به دو نوع دیگر حافظه ازنظر سرعت، برتری کامل دارند و آسیبپذیری آنها هم بسیار کمتر است. همانگونه که ترانزیستورها با افزایش سرعت مدارها برای انجام عملیات ریاضی و سوئیچ کردن بین آنها، کامپیوترها را متحول کردند، استفاده از وسایل نیمههادی در حافظههای ذخیرهسازی با هدف ایجاد چنین تحول بزرگی در صنعت ساخت دستگاههای ذخیرهسازی اطلاعات ایجاد شد.
نخستین گامها برای استفاده از قطعات نیمههادی در حافظههای ذخیرهسازی توسط توشیبا برداشته شد که طرح مفهومی فلش مموری را در سال ۱۹۸۰ مطرح کرد. چهار سال بعد نخستین حافظه فلش NOR توسط این شرکت تولید و پس از آن در سال ۱۹۸۷ نخستین حافظه فلش NAND توشیبا نیز روانه بازارشد.
نخستین حافظه ذخیرهسازی تجاری دارای حافظه فلش که امروزه به نام حافظههای SSD یا solid state drive شناخته میشوند، در سال ۱۹۹۱ توسط برند سان دیسک (SunDisk) که همان برند مطرح سن دیسک در زمان کنونی است، روانه بازار شد (امروزه سن دیسک یکی از برندهای بسیار مطرح و شناختهشده در زمینه تولید حافظههای ذخیرهسازی است)
امروزه تقریباً همه مردم با فلش مموریها، کارتهای حافظه یا حتی حافظههای اکسترنال SSD که در زندگی روزمره خود بارها از آن ها استفاده میکند، کاملاً آشنا هستند. تمام این وسایل زیرمجموعه حافظه ذخیرهسازی SSD هستند.
یک تراشه فلش مموری NAND درست مانند تراشه SRAM مورداستفاده در سیپییوها و کارتهای گرافیک کامپیوتر، دارای میلیونها سلول هستند که با ترانزیستورهای شناور تغییردادهشده ساخته شدهاند. ترانزیستورهای گیت شناور از ولتاژ بالا برای انتقال جریان به یک قسمت خاص ساختار خود و جابجایی آن به قسمت دیگری استفاده میشود. در مرحله بعدی زمانی که سلول خوانده میشود، ولتاژ کمی روی همان قسمت از سلول که ولتاژ بالایی را دریافت کرده است، اعمال می شود.
اگر در مرحله اول جریانی در سلول ایجاد نشود، ولتاژ کم اعمالشده روی سلول، باعث ایجاد جریان در آن میشود. زمانی که هیچ جریان در سلول وجود نداشته باشد، سلول در وضعیت صفر (State 0) و زمانی که دارای جریان شود و بهاصطلاح شارژ شود، در وضعیت یک (State 1) قرار میگیرد. چنین ساختاری باعث میشود فلشهای NAND سرعت بالایی در خواندن اطلاعات داشته باشند؛ اما در هنگام خواندن یا پاک کردن اطلاعات چندان سریع نباشد.
در بهترین نوع فلش که single level cells (SLC) یا فلش دارای سلول تک سطحی نام دارد، تنها یک میزان جریان روی بخش خاصی از ترانزیستور اعمال میشود، اما سلولها دارای چند سطح از جریان هستند. به طور کلی این نوع ساختار با عنوان multi-level cells (MLC) یا سلولهای چند سطحی شناخته میشود؛ اما در فلشهای NAND کلمه MLC به چهار سطح از جریان اشاره دارد. چند نوع سلول مشابه سلول دارای این ساختار وجود دارد که شامل triple level (TLC) و quad level (QLC) میشود که در هر کدام به ترتیب ۸ و ۱۶ سطوح متفاوت از جریان وجود دارد.
بهکارگیری انواع مختلفی از سلول ها در حافظه فلش باعث میشود ظریف ذخیرهسازی داده در هر یک از این انواع فلش متفاوت شود. ظرفیت ذخیرهسازی فلشهای دارای سلول های متفاوت به شرح زیر است:
SLC- یک سطح= یک بیت
MLC- جهار سطح= دو بیت
TLC- هشت سطح= سه بیت
QLC- شانزده سطح= چهار بیت
حتماً با خود فکر میکنید فلش QLC بهترین نوع فلش هستند؛ اما متأسفانه این چنین نیست. جریانهای ایجاد شده در فلشها بسیار کم هستند و نسبت به نویز الکتریکی بسیار حساس هستند؛ بنابراین برای اینکه سطوح مختلف جریان در سلولها بهدرستی از یکدیگر متمایز شوند، سلول باید قبل از اینکه دادهها تأیید شوند، چند بار خوانده شوند.
به طور خلاصه باید بگوییم سلولهای SLC سریعترین نوع سلولها هستند؛ اما برای ذخیرهسازی حجم خاصی از داده، نسبت به سایر انواع سلولها بیشترین فضای فیزیکی را اشغال میکنند. در مقابل سلولهای QLC کمترین سرعت را نسبت به سایر انواع سلولها دارد؛ اما از سوی دیگر ظرفیت ذخیرهسازی آنها بیش از سایر انواع سلولها است.
در سلولهای حافظههای فلش برخلاف حافظههای SRAM و DRAM، زمانی که در هنگام اعمال جریان، منبع نیرو قطع میشود، جریان همچنان باقی میماند و با سرعت کم و بهتدریج از بین میرود. در مورد حافظه سیستم باید بگوییم سلولها تنها در چند ثانیه تخلیه میشوند و باید پیوسته شارژ شوند.
متأسفانه استفاده مستمر از ولتاژ و حفظ جریان باعث آسیب دیدن سلولها و فرسایش و از بین رفتن تدریجی حافظههای SSD میشود. برای جلوگیری از این مشکل، فرآیندهای هوشمندانه بهصورت مکرر تکرار میشوند تا فرسایش تدریجی حافظه به حداقل برسد.
این فرآیندها به منظور کسب اطمینان از اعمال نشدن ولتاژ بهصورت مکرر روی یک سلول، انجام میشوند. تراشهای به نام تراشه کنترل این وظیفه را بر عهده دارد. در ضمن این تراشه در تراشه LSI مورداستفاده در حافظههای HDD نیز همین کار را انجام میدهد؛ اما در حافظه HDD برای حافظه کش DRAM و فریمور فلش مموری تراشههای جداگانهای وجود دارد. در کنترلکننده فلش مموریهای USB هم حافظه کش DRAM و هم فریمور حافظه فلش وجود دارد، اما به دلیل اینکه فلش مموری های USB با هدف ارزانقیمت بودن طراحی میشوند، این دو قسمت ظرفیت ذخیرهسازی بالایی ندارند.
فلش مموریها به دلیل عدم برخورداری از قطعات متحرک مطمئناً باید عملکرد بهتری نسبت به حافظههای HDD داشته باشند. ما برای مقایسه حافظههای SSD و HDD از پنچمارک CrystalDiskMark استفاده کردیم.
در نگاه اول نتیجه ناامیدکننده به نظر میرسند؛ زیرا نتایج آزمایش خواندن و نوشتن متوالی اطلاعات و نوشتن تصادفی اطلاعات توسط حافظه SSD ،نسبت به نتایج بهدستآمده از ازمایش هارد HDD، به میزان قابلتوجهی بدتراست؛ البته سرعت خواندن تصادفی اطلاعات در حافظه SSD به میزان زیادی بهتر بود که مزیت فلش مموریها محسوب میشود. در فلش مموریها خواندن اطلاعات با سرعت بالایی انجام میشود؛ اما سرعت نوشتن یا پاک کردن اطلاعات در این حافظههای ذخیرهسازی در مقایسه با حافظههای HDD کم است.
برای مقایسه این دو نوع حافظه باید آزمایشهای بیشتری را انجام دهیم. فلش مموری مورداستفاده در این آزمایش دارای کانکتور یا رابط اتصال USB 2.0 بود که حداکثر سرعت آن برای انتقال اطلاعات به ۶۰ مگابایت در ثانیه میرسد؛ اما در مقابل حافظه HDD دارای کانکتور SATA 3.0 است که امکان انتقال اطلاعات با سرعتی بیش از ۱۰ برابر سرعت فلش مموری را برای این حافظه امکانپذیر میکند. فناوری مورداستفاده در فلش مموری آزمایش شده، یک فناوری کاملاً پایه و ابتدایی محسوب میشود و در آن از سلولهای TLC استفاده شده که به شکل نوارهای طولانی در کنار یکدیگر قرار گرفتهاند. این نوع چیدمان در اصطلاح چیدمان دوبعدی یا سطحی نامیده میشود.
فلش مموری های مورداستفاده در بهترین حافظههای SSD دارای سلولهای SLC یا MLC هستند؛ بنابراین این نوع از حافظهها نسبت به سایر حافظههای مشابه، کمی سریعتر هستند و دیرتر دچار فرسایش میشوند. در این حافظههای نوارهایی که سلولهای تشکیلدهنده، از وسط تا شدهاند و بهصورت عمودی در کنار یکدیگر قرار گرفتهاند و به این صورت آرایش سلولها در این حافظهها بهصورت عمودی یا سهبعدی است.
درضمن در این حافظهها از رابط اتصال Sata 3.0 استفاده شده؛ البته استفاده از سیستم اتصال PCI Express از طریق رابط اتصال NVMe به طور فزایندهای در حال افزایش است.
اجازه دهید یکی از هاردهای دارای نوار تاشده عمودی از سلولها را بررسی کنیم. این حافظه SSD حافظه SSD سامسونگ ۸۵۰ pro با عرض ۶.۳۷ سانتیتری با ضخامت و عرض بسیار کمتر نسبت به حافظههای HDD است. وقتی که این حافظه را باز میکنیم با چنین صحنهای مواجه میشویم
همانطور که در تصویر بالا میبینید هیچ دیسکی، هیچ بازوی متحرکی و هیچ آهنربایی در داخل این حافظه دیده نمیشود و تنها چیزی که در داخل پوسته این هارد وجود دارد، تنها یک برد مدار با تعدادی تراشه است. در تصویر زیر نمای نزدیکتری از برد حافظه SSD را مشاهده میکنید.
تراشههای کوچک مشکی تنظیمکننده ولتاژ هستند و سایر تراشهها هم به شرح زیر هستند:
- تراشه سامسونگ :S4LN045X01-8030 تراشهای ۳ هستهای ARM Cortex R4 که برای مدیریت دستورالعملها، دادهها، تشخیص خطاها و اصلاح دادهها، رمزگذاری و مدیریت فرسایش استفاده میشود.
- تراشه سامسونگ :K4P4G324EQ-FGC2 این تراشه دارای۵۱۲ مگابایت حافظه ذخیرهسازی DDR2 SDRAM که بهعنوان حافظه کش استفاده میشود.
- تراشه سامسونگ :K9PRGY8S7M این تراشه دربردارنده یک فلش مموری NAND با ظرفیت ۶۴ گیگابایت با ۳۲ لایه عمودی سلول است. تعداد این تراشه در این حافظه ۴ عدد است که دو عدد از آنها روی برد و دو عدد دیگر در پشت برد نصب شدهاند.
این حافظه دارای سلولهای دو بیتی، چند تراشه حافظه و تعداد زیادی حافظه کش است. چنین ساختاری نشاندهنده عملکرد خوب حافظه است؛ زیرا همانطور که گفتیم نوشتن اطلاعات روی فلش مموری با سرعت بسیار کمی انجام میشود؛ اما با استفاده از چند تراشه فلش میتوان امکان نوشتن اطلاعات در چند حافظه بهموازات یکدیگر را فراهم کرد.
فلش مموری های USB حافظههای ذخیرهسازی DRAM زیادی که آماده نوشتن اطلاعات باشند، ندارند؛ بنابراین باید یک تراشه مجزای بزرگ برای کمک به افزایش سرعت نوشتن استفاده شود. اجازه دهید بار دیگر آزمایشی را با بنچمارک انجام دهیم.
همانطور که میبینید نتایج در مقایسه با آزمایش قبلی به میزان بسیار زیادی بهبود یافته است. هم سرعت خواندن اطلاعات و هم سرعت نوشتن آنها به میزان قابلتوجهی نسبت به آزمایش قبلی بیشتر شده و تأخیرها هم بهمیزان بسیار زیادی کمتر شده است. حافظههای SSD علاوه بر اینکه دارای سرعت خواندن و نوشتن بسیار بالاتری نسبت به حافظههای HDD هستند، سبکتر و کوچکتر و حتی کممصرف نیز هستند.
البته متأسفانه حافظههای SSD در مقایسه با حافظههای HDD قیمت بسیار بالاتری دارند. شما میتوانید یک هارد HDD با ظرفیت ۱۴ ترابایت را ۳۵۰ دلار بخرید؛ اما با این پول تنها میتوانید یک حافظه SSD یک ترابایتی یا نهایتاً دو ترابایتی بخرید. چنانچه قصد خرید حافظه SSD با ظرفیت ۱۴ ترابایت را دارید، باید بدانید بهترین حافظه SSD با ظرفیت ۱۵.۳۶ در حال حاضر ۴۳۰۰ دلار است!
بهتازگی برخی از سازندگان حافظه ذخیرهسازی، نوع جدیدی از حافظههای ذخیرهسازی به نام حافظه HDD هیبریدی را روانه بازار کردهاند. این نوع از حافظهها نوع استانداردی از هاردها محسوب میشود که دارای تعداد کمی بیت فلش مموری هستند که برای ذخیرهسازی دادههایی که معمولاً روی دیسکهای هارد ها وجود دارند، استفاده می شوند. تصویر زیر متعلق به برد یک حافظهHDD هیبریدی است. در برخی از منابع این نوع از حافظه با نام حافظه SSHD نیز معرفی شده است.
در این حافظه یک تراشه NAND و کنترلر آن در قسمت بالای سمت راست برد دیده میشود و سایر قسمتهای آن درست مانند حافظههای HDD متداول است. این هارد را هم با پنچمارک CrystalDiskMark آزمایش کردیم تا ببینیم آیا استفاده از فلش مموری بهعنوان نوعی از حافظه کش در عملکرد این حال تغییری ایجاد کرده است یا نه؛ البته این مقایسه غیرمنصفانهای است؛ زیرا سرعت چرخش دیسک مورداستفاده در این حافظه ۷۲۰۰ دور در دقیقه و سرعت چرخش دیسک حافظه HDD معمولی مورداستفاده در این آزمایش تنها ۵۴۰۰ دور در دقیقه است.
همانطور که مشاهده میکنید ارقام مربوط به حافظه HDD هیبریدی کمی بهتر است؛ البته شاید سرعت خواندن و نوشتن بالاتر هارد HDD هیبریدی به خاطر سرعت بالاتر چرخش دیسک آن باشد. هرچقدر دیسک یک هارد زیر هدهای مربوط به خواندن و نوشتن اطلاعات سریعتر بچرخد، سرعت انتقال دادهها نیز به همان نسبت سریعتر میشود.
لازم به ذکر است فایلهای ایجاد شده در این بنچمارک در یک الگوریتم مشخص نشدهاند تا دسترسی به آن از راه دور در هر زمانی امکانپذیر شود، بنابراین بعید است که کنترلر بهدرستی از فلش مموری استفاده کند.
البته باید بگویم در آزمایش مشخص شد هارد HDD هیبریدی دارای یک حافظه SSD آنبورد دارای عملکرد کلی بهتری نسبت به هارد HDD متداول است؛ البته نباید فراموش کنیم که فلش مموری های ارزانقیمت در مقایسه با هارد های HDD باکیفیت، عملکرد بسیار ضعیفتری دارند. در ضمن باید یادآور شویم که هاردهای HDD هیبریدی در مقایسه با حافظههای SSD بسیار کمتر موردتوجه قرار گرفتهاند.
باید خاطرنشان کنیم که فلش مموری تنها فناوری مورداستفاده در حافظههای SSD نیست. شرکت میکرون و اینتل با مشارکت یکدیگر سیستمی تحت عنوان ۳D XPoint را ایجاد کردهاند که در آن بهجای واردکردن جریان به سلولها و خارج کردن جریان از آنها برای ایجاد وضعیت صفر و یک، سلولها برای ایجاد این بیتها مقاومت الکتریکی خود را تغییر میدهند.
اینتل این حافظه را با برند optane روانه بازار کرده است و در آزمایش عملکرد مشخص شد عملکرد فوقالعاده خوبی دارد؛ البته این نوع حافظه هم قیمت بالایی دارد و ظرفیت یک ترابایتی آن با قیمت ۱۲۰۰ دلار به فروش میرسد که چهار برابر قیمت یک حافظه SSD دارای فلش مموری با همین ظرفیت است!