SSD NVMe چیست و آیا برای لپتاپ و کامپیوتر ارزش خرید دارد؟
SSD NVMe چیست؟ با تفاوت NVMe و SATA، M.2، PCIe و کاربرد NVMe در لپتاپ و کامپیوتر آشنا شوید و ببینید آیا خرید SSD NVMe برای شما ارزش دارد.
SSD یا Solid State Drive نوعی حافظه ذخیرهسازی است که اطلاعات را برخلاف هارددیسکهای مکانیکی، روی حافظه فلش NAND ذخیره میکند. در SSD خبری از دیسک چرخان، هد مکانیکی و موتور برای جابهجایی هد نیست؛ به همین دلیل دسترسی به دادهها با تأخیر بسیار کمتری انجام میشود.
اما سرعت SSD فقط به حذف قطعات مکانیکی محدود نمیشود. ساختار داخلی آن شامل NAND Flash، کنترلر، Firmware، مدارهای مدیریت و در بعضی مدلها حافظه DRAM است که با همکاری یکدیگر عملیات خواندن، نوشتن، مدیریت خطا و توزیع فرسایش سلولهای حافظه را انجام میدهند.
در این مقاله بررسی میکنیم SSD دقیقاً چیست، اطلاعات چگونه در آن ذخیره میشوند، کنترلر چه نقشی دارد، NAND Flash چگونه کار میکند و فناوریهایی مانند TRIM، Garbage Collection و Wear Leveling چگونه به عملکرد و دوام SSD کمک میکنند.
SSD مخفف Solid State Drive و به معنی «درایو حالت جامد» است. این وسیله یک حافظه ذخیرهسازی غیر فرار است؛ یعنی دادههای ذخیرهشده با قطع برق بهطور معمول باقی میمانند.
مهمترین تفاوت SSD با HDD در فناوری ذخیرهسازی است:
| ویژگی | SSD | HDD |
|---|---|---|
| فناوری ذخیرهسازی | NAND Flash | صفحات مغناطیسی |
| قطعات متحرک | ندارد | دارد |
| هد مکانیکی | ندارد | دارد |
| زمان دسترسی | بسیار کم | بیشتر |
| مقاومت در برابر ضربه | معمولاً بیشتر | معمولاً کمتر |
| صدای مکانیکی | ندارد | دارد |
| وابستگی به حرکت مکانیکی | ندارد | دارد |
در HDD اطلاعات روی صفحات مغناطیسی ذخیره میشوند و هد باید برای دسترسی به بخش موردنظر جابهجا شود. در SSD، دادهها مستقیماً توسط کنترلر و آرایه NAND Flash مدیریت میشوند.
بنابراین SSD برای اجرای سیستمعامل، نرمافزارها، بازیها و بسیاری از عملیات ذخیرهسازی که به دسترسی سریع نیاز دارند، عملکرد بسیار سریعی ارائه میکند.
به زبان ساده، زمانی که سیستمعامل میخواهد اطلاعاتی را ذخیره یا بازیابی کند، درخواست مربوطه از طریق رابط ذخیرهسازی به SSD ارسال میشود.
کنترلر SSD این درخواست را دریافت میکند، مشخص میکند داده در کدام بخش حافظه NAND قرار دارد یا باید در کجا نوشته شود و سپس عملیات موردنظر را مدیریت میکند.
فرآیند کلی را میتوان به این شکل تصور کرد:
سیستمعامل → رابط ذخیرهسازی → کنترلر SSD → NAND Flash
در هنگام خواندن، کنترلر محل داده را پیدا میکند و اطلاعات را از سلولهای NAND دریافت و به سیستم تحویل میدهد.
در هنگام نوشتن، کنترلر داده را به شکل مناسب در NAND قرار میدهد و همزمان وظایفی مانند مدیریت بلوکها، اصلاح خطا و توزیع عملیات نوشتن را نیز انجام میدهد.
بنابراین SSD یک حافظه ساده نیست؛ بلکه یک سیستم کوچک مدیریت داده است که برای کنترل NAND Flash به Firmware و کنترلر وابسته است.
محل اصلی ذخیره اطلاعات در SSD، NAND Flash است.
NAND از سلولهای حافظه تشکیل شده است. هر سلول میتواند بر اساس نوع فناوری NAND، اطلاعات را در حالتهای مختلف ذخیره کند.
سلولها در ساختارهای بزرگتری مانند Page و Block سازماندهی میشوند.
یکی از نکات مهم درباره NAND این است که عملیات خواندن، نوشتن و پاک کردن دقیقاً مانند یک حافظه RAM انجام نمیشود. در NAND، داده معمولاً در صفحات نوشته میشود اما پاکسازی در سطح بلوک انجام میگیرد.
همین تفاوت یکی از دلایلی است که SSD به یک کنترلر هوشمند برای مدیریت عملیات حافظه نیاز دارد.
SSD Controller یکی از مهمترین اجزای داخلی SSD است.
کنترلر بین سیستم و NAND Flash قرار دارد و وظایف متعددی را بر عهده میگیرد، از جمله:
به همین دلیل دو SSD با ظرفیت مشابه الزاماً عملکرد یکسانی ندارند. نوع NAND، کنترلر، Firmware، حافظه کش، رابط ارتباطی و طراحی کلی درایو میتوانند روی عملکرد نهایی تأثیر بگذارند.
وقتی یک برنامه یا سیستمعامل درخواست خواندن یک فایل را ارسال میکند، درخواست از طریق رابط ذخیرهسازی به SSD میرسد.
کنترلر ابتدا باید مشخص کند داده موردنظر در کدام قسمت NAND قرار دارد. سپس اطلاعات موردنیاز را از سلولهای مربوطه دریافت کرده و پس از پردازش لازم به سیستم ارسال میکند.
این فرآیند در مدت بسیار کوتاهی انجام میشود.
در SSDهای سریع، عملکرد فقط به سرعت انتقال ترتیبی محدود نیست. Latency و Random I/O نیز اهمیت زیادی دارند؛ زیرا بسیاری از عملیات روزمره سیستمعامل شامل دسترسی به فایلهای کوچک و پراکنده است.
به همین دلیل هنگام ارزیابی SSD نباید فقط یک عدد مانند «سرعت خواندن ترتیبی» را معیار عملکرد قرار داد.
نوشتن روی NAND پیچیدهتر از یک کپی ساده داده است.
کنترلر باید مشخص کند داده در کدام بلوکها نوشته شود و در صورت وجود داده قبلی، عملیات مربوط به آن را مدیریت کند.
از آنجا که سلولهای NAND تعداد محدودی چرخه Program/Erase دارند، کنترلر تلاش میکند عملیات نوشتن را به شکل متعادل بین سلولها توزیع کند.
این وظیفه با فناوری Wear Leveling انجام میشود.
همچنین SSD از فرآیندهایی مانند Garbage Collection برای آمادهسازی فضای قابل استفاده NAND بهره میبرد. این مدیریت داخلی یکی از دلایل تفاوت عملکرد SSD در شرایط مختلف، بهخصوص زمانی است که ظرفیت زیادی از درایو اشغال شده باشد.
یک SSD معمولی از چند بخش اصلی تشکیل شده است.
NAND محل اصلی ذخیره داده است.
ظرفیت نهایی SSD عمدتاً از تعداد و تراکم تراشههای NAND موجود در آن ناشی میشود.
کنترلر وظیفه مدیریت NAND و ارتباط بین حافظه و سیستم را بر عهده دارد.
Firmware نرمافزار سطح پایینی است که منطق عملکرد SSD را کنترل میکند.
عملکرد کنترلر، مدیریت داده، اصلاح خطا و بسیاری از الگوریتمهای داخلی SSD به Firmware وابستهاند.
برخی SSDها دارای حافظه DRAM هستند که میتواند برای نگهداری اطلاعات مدیریتی و جدولهای Mapping مورد استفاده قرار گیرد.
در مقابل، برخی مدلها DRAM-less هستند و از معماریهای دیگری مانند HMB در سیستمهای سازگار استفاده میکنند.
بنابراین DRAM داشتن یا نداشتن بهتنهایی معیار کافی برای قضاوت درباره کیفیت یک SSD نیست و باید کل معماری درایو بررسی شود.
SSD همچنین دارای مدارهای الکترونیکی لازم برای ارتباط با سیستم، مدیریت توان و کنترل سیگنالها است.
NAND Flash از سلولهایی تشکیل شده است که میتوانند بار الکتریکی را در ساختار خود نگهداری کنند.
کنترلر و مدارهای مربوطه از وضعیت سلولها برای ذخیره و بازیابی اطلاعات استفاده میکنند.
بر اساس تعداد بیتهایی که در هر سلول ذخیره میشود، فناوریهای مختلفی مانند SLC، MLC، TLC و QLC شکل گرفتهاند.
تفاوت اصلی این فناوریها در تعداد بیت قابل ذخیره در هر سلول است:
| نوع NAND | بیت در هر سلول | ویژگی کلی |
|---|---|---|
| SLC | 1 | عملکرد و دوام بالا، هزینه بیشتر |
| MLC | 2 | تعادل مناسبتر بین ظرفیت و عملکرد |
| TLC | 3 | تراکم بالاتر و استفاده گسترده |
| QLC | 4 | تراکم بیشتر و هزینه کمتر به ازای ظرفیت |
هرچه تعداد حالتهای قابل تشخیص یک سلول افزایش پیدا کند، مدیریت آن پیچیدهتر میشود.
به همین دلیل مقایسه SSD فقط بر اساس ظرفیت اشتباه است. نوع NAND، کنترلر، Firmware، کش، عملکرد پایدار و مشخصات استقامت نیز باید در نظر گرفته شوند.
در نسلهای جدید NAND، سلولهای حافظه فقط در یک سطح قرار نمیگیرند و بهصورت عمودی نیز روی یکدیگر ساخته میشوند.
این معماری با نام 3D NAND شناخته میشود.
هدف از 3D NAND افزایش تراکم حافظه، بهبود مقیاسپذیری و امکان تولید ظرفیتهای بالاتر است.
امروزه بسیاری از SSDهای مصرفی از گونههای مختلف 3D NAND استفاده میکنند.
TRIM قابلیتی است که به سیستمعامل اجازه میدهد به SSD اطلاع دهد کدام بخشهای داده دیگر موردنیاز نیستند.
فرض کنید کاربر یک فایل را حذف میکند. حذف فایل از دید سیستمعامل لزوماً به معنی پاک شدن فوری فیزیکی اطلاعات از سلولهای NAND نیست.
TRIM به SSD اعلام میکند کدام محدودهها دیگر حاوی داده معتبر موردنیاز کاربر نیستند.
سپس SSD میتواند از این اطلاعات در فرآیندهای مدیریتی مانند Garbage Collection استفاده کند.
پشتیبانی صحیح از TRIM به سیستمعامل، SSD و پیکربندی سیستم وابسته است. در بسیاری از سیستمهای مدرن، این قابلیت بهصورت معمول پشتیبانی میشود.
Garbage Collection یکی از فرآیندهای داخلی SSD برای مدیریت بلوکهای NAND است.
در طول استفاده از SSD، بخشی از بلوکها ممکن است شامل ترکیبی از دادههای معتبر و دادههایی باشند که دیگر موردنیاز نیستند.
کنترلر میتواند دادههای معتبر را جابهجا کرده و بلوک را برای استفاده مجدد آماده کند.
این فرآیند در پسزمینه انجام میشود و به مدیریت فضای NAND کمک میکند. ترکیب TRIM و Garbage Collection میتواند به حفظ عملکرد SSD در طول استفاده کمک کند.
سلولهای NAND عمر نامحدود ندارند و تعداد چرخههای نوشتن و پاک کردن آنها محدود است.
اگر کنترلر همیشه دادهها را روی یک بخش مشخص از NAND بنویسد، همان سلولها سریعتر فرسوده میشوند.
Wear Leveling برای جلوگیری از این وضعیت طراحی شده است.
کنترلر تلاش میکند عملیات نوشتن را در میان بلوکهای مختلف توزیع کند تا استفاده از NAND متعادلتر شود.
این فناوری یکی از عناصر مهم مدیریت عمر SSD است.
Write Amplification به شرایطی اشاره دارد که مقدار واقعی دادهای که SSD روی NAND مینویسد، از مقدار دادهای که کاربر درخواست کرده بیشتر باشد.
برای مثال ممکن است سیستمعامل درخواست نوشتن مقدار مشخصی داده را ارسال کند، اما SSD برای مدیریت بلوکهای NAND مجبور شود دادههای دیگری را نیز جابهجا یا بازنویسی کند.
این فرآیند میتواند روی عملکرد و میزان فرسایش NAND اثر داشته باشد.
به همین دلیل کنترلر SSD باید تلاش کند عملیات داخلی را تا حد امکان بهینه مدیریت کند.
مهمترین دلیل، حذف وابستگی به حرکت مکانیکی است.
در HDD برای دسترسی به داده، صفحات باید بچرخند و هد مکانیکی در موقعیت مناسب قرار بگیرد.
SSD چنین مکانیزمی ندارد.
در نتیجه SSD میتواند با تأخیر بسیار پایینتری به دادهها دسترسی پیدا کند.
این موضوع مخصوصاً در عملیات تصادفی و دسترسی به فایلهای کوچک اهمیت زیادی دارد.
البته «SSD سریعتر است» به این معنی نیست که همه SSDها عملکرد یکسانی دارند. تفاوت رابط، کنترلر، NAND، Firmware، ظرفیت، معماری داخلی و شرایط کاری میتواند عملکرد مدلها را تغییر دهد.
این سه اصطلاح نباید با یکدیگر یکسان فرض شوند.
SATA یک رابط ارتباطی است که در بسیاری از SSDهای 2.5 اینچی و برخی فرمفاکتورهای دیگر استفاده میشود.
NVMe یک پروتکل ارتباطی است که برای استفاده از حافظههای سریع از طریق PCIe طراحی شده است.
M.2 یک Form Factor یا فرمفاکتور است.
بنابراین:
M.2 لزوماً به معنی NVMe نیست.
یک SSD با فرم M.2 میتواند بسته به طراحی خود از SATA یا PCIe استفاده کند.
این تفاوت هنگام بررسی سازگاری SSD با لپتاپ یا مادربرد اهمیت زیادی دارد.
در واقع صفحههای تجاری هاردسرا نیز این تفکیک را در دستهبندی محصولات در نظر گرفتهاند و SSDهای SATA، NVMe و M.2 را جداگانه ارائه میکنند.
SSD مانند هر حافظه ذخیرهسازی دیگری میتواند در طول زمان دچار فرسودگی یا خرابی شود.
NAND Flash تعداد محدودی چرخه Program/Erase دارد، اما این موضوع به معنی آن نیست که SSD در مدت کوتاهی از کار میافتد.
کنترلر با استفاده از فناوریهایی مانند:
به استفاده پایدارتر از NAND کمک میکند.
طول عمر واقعی SSD به مدل، نوع NAND، میزان داده نوشتهشده، الگوی استفاده، شرایط کاری و طراحی سازنده بستگی دارد.
بنابراین نمیتوان برای تمام SSDها یک عمر ثابت مانند «پنج سال» یا «ده سال» تعیین کرد.
ممکن است عملکرد برخی SSDها در زمان نزدیک شدن به ظرفیت پر، بسته به معماری و میزان فضای آزاد، الگوی متفاوتی پیدا کند.
SSD برای مدیریت داخلی NAND به فضای قابل استفاده نیاز دارد و برخی مدلها نیز بخشی از ظرفیت را برای عملیات داخلی و Over Provisioning اختصاص میدهند.
Over Provisioning میتواند به کنترلر فضای بیشتری برای مدیریت NAND بدهد و در برخی طراحیها به عملکرد و دوام کمک کند.
بنابراین بهتر است SSD را همیشه تا آخرین واحد ظرفیت قابل استفاده پر نکنید، مخصوصاً اگر قرار است حجم زیادی از داده دائماً روی آن نوشته و حذف شود.
خیر.
M.2 فرمفاکتور است و NVMe یک پروتکل ارتباطی است. یک SSD M.2 میتواند SATA یا PCIe/NVMe باشد.
خیر.
ظرفیت، سرعت و معماری داخلی سه مفهوم متفاوت هستند.
خیر.
SSD قطعات مکانیکی ندارد، اما NAND Flash و سایر اجزای الکترونیکی آن همچنان میتوانند دچار فرسودگی یا خرابی شوند.
خیر.
اعداد Sequential Read/Write تنها بخشی از عملکرد SSD را نشان میدهند.
عملکرد Random، Latency، رفتار پس از پر شدن Cache و عملکرد پایدار نیز اهمیت دارند.
خیر.
سازگاری رابط، فرمفاکتور، استاندارد PCIe، نسل مورد پشتیبانی و محدودیتهای دستگاه باید بررسی شود.
بعد از اینکه سازوکار SSD را شناختید، مقایسه مدلها منطقیتر میشود.
مهمترین مشخصات عبارتاند از:
برای مثال، SSD مورد استفاده در یک سیستم اداری ساده الزاماً به همان مشخصاتی نیاز ندارد که یک سیستم تولید محتوا یا ایستگاه کاری حرفهای دارد.
شناخت نحوه کار SSD کمک میکند مشخصات فنی را بهتر تفسیر کنید؛ اما انتخاب یک مدل مشخص، مرحلهای متفاوت از شناخت فناوری است.
اگر بعد از مطالعه این راهنما قصد دارید مدلهای واقعی موجود در بازار را بر اساس ظرفیت، رابط، فرمفاکتور، برند، مشخصات و قیمت با یکدیگر مقایسه کنید، میتوانید فهرست محصولات هاردسرا را بررسی کنید:
در آن صفحه، تمرکز روی محصولات قابل بررسی و انتخاب است؛ در حالی که این مقاله تلاش میکند ابتدا سازوکار SSD را توضیح دهد تا کاربر هنگام مواجهه با مشخصات فنی، درک دقیقتری از آنها داشته باشد.
بله. SSD از حافظه NAND Flash غیر فرار استفاده میکند؛ بنابراین اطلاعات ذخیرهشده با قطع برق بهطور معمول باقی میمانند.
خیر. SSD برخلاف HDD برای ذخیره و بازیابی اطلاعات از صفحات چرخان و هد مکانیکی استفاده نمیکند.
بله. سلولهای NAND تعداد محدودی چرخه Program/Erase دارند، اما کنترلر با فناوریهایی مانند Wear Leveling و مدیریت داخلی NAND به افزایش عمر مفید درایو کمک میکند.
عملکرد میتواند بسته به مدل، میزان فضای آزاد و معماری SSD تغییر کند. به همین دلیل عملکرد یک SSD در حالت کاملاً خالی الزاماً نشاندهنده عملکرد آن در تمام شرایط کاری نیست.
خیر. M.2 فرمفاکتور است و NVMe پروتکل ارتباطی است. SSDهای M.2 میتوانند بسته به مدل از SATA یا PCIe/NVMe استفاده کنند.
خود TRIM فرمانی برای حذف فایل توسط کاربر نیست. سیستمعامل با استفاده از TRIM به SSD اطلاع میدهد که برخی بلوکها دیگر حاوی داده موردنیاز نیستند تا SSD بتواند مدیریت داخلی NAND را بهتر انجام دهد.
بله. تأخیر پایین و عملکرد مناسب در دسترسی تصادفی باعث شده SSD برای اجرای سیستمعامل و نرمافزارها گزینهای بسیار مناسب باشد.
SSD یک حافظه ذخیرهسازی مبتنی بر NAND Flash است که برای مدیریت داده به کنترلر و Firmware متکی است. برخلاف HDD، قطعات متحرک ندارد و به همین دلیل میتواند با تأخیر بسیار پایینتری به دادهها دسترسی پیدا کند.
اما عملکرد SSD فقط به یک عدد مانند سرعت خواندن یا ظرفیت محدود نمیشود. نوع NAND، کنترلر، رابط، پروتکل، فرمفاکتور، Firmware، عملکرد تصادفی، استقامت و طراحی داخلی همگی در رفتار واقعی SSD نقش دارند.
فناوریهایی مانند TRIM، Garbage Collection و Wear Leveling نیز برای مدیریت NAND، حفظ عملکرد و توزیع فرسایش سلولها استفاده میشوند.
بنابراین شناخت ساختار SSD قبل از بررسی مدلهای مختلف اهمیت زیادی دارد؛ زیرا باعث میشود مشخصات فنی را صرفاً بهعنوان چند عدد روی صفحه محصول نبینید و بتوانید ارتباط میان فناوری، عملکرد و کاربرد واقعی را بهتر درک کنید.
برای شروع گفتگو، شماره تماس خود را وارد کنید.