اگر تا به حال بررسیهای آنلاین SSDهای NVMe را دیده باشید، احتمالاً متوجه شدهاید که در برخی از آنها به وجود DRAM در داخل SSD اشاره میشود. شاید این سؤال برایتان پیش آمده باشد که چرا یک SSD باید حافظه RAM داشته باشد؟
در عمل، وجود DRAM نهتنها رایج است، بلکه در بسیاری از موارد نقش بسیار مهمی دارد. در ادامه دلیل آن توضیح داده میشود.
چرا SSD به RAM نیاز دارد؟
وجود DRAM در SSD، در صورت پشتیبانی، یکی از اجزای بسیار مهم آن به شمار میرود. البته نقش این حافظه دقیقاً مشابه RAM سیستم نیست. مهمترین وظیفه DRAM در SSD ذخیره جدول «نگاشت منطقی به فیزیکی» یا همان لایه ترجمه آدرسهاست.
زمانی که سیستمعامل فایلی را ذخیره میکند، به آن یک آدرس منطقی اختصاص میدهد. اما SSD دادهها را بهصورت خطی ذخیره نمیکند، بلکه برای افزایش سرعت، آنها را بین چندین تراشه NAND پخش میکند. بدون DRAM اختصاصی، کنترلر SSD مجبور میشود برای هر بار دسترسی به فایل، این اطلاعات را از حافظه NAND که بسیار کندتر است جستوجو کند. این کار باعث افزایش تأخیر و افت محسوس عملکرد میشود.
در مقابل، زمانی که این جدول نگاشت در DRAM ذخیره میشود، کنترلر میتواند محل دادهها را تقریباً بهصورت آنی پیدا کند و تجربهای سریعتر و روانتر ارائه دهد.
DRAM همچنین بهعنوان یک بافر حیاتی برای عملیات نوشتن عمل میکند. حافظه فلش NAND قوانین سختگیرانهای برای نوشتن و پاکسازی دادهها دارد و نوشتن قطعههای کوچک داده بهطور مستقیم روی آن، هم ناکارآمد است و هم به فرسودگی سریعتر منجر میشود. DRAM این دادههای کوچک و پراکنده را موقتاً نگه میدارد و آنها را به بلوکهای بزرگتر و پیوسته تبدیل میکند؛ فرایندی که «تجمیع نوشتن» نام دارد.
این روش میزان «تقویت نوشتن» را کاهش میدهد؛ حالتی که در آن SSD مجبور میشود بیش از حجم واقعی دادههای ورودی، عملیات نوشتن داخلی انجام دهد. در نتیجه، تعداد چرخههای پاکسازی و نوشتن کمتر شده و عمر سلولهای NAND افزایش مییابد.
حذف DRAM باعث کاهش هزینه تولید میشود، اما وجود آن عامل اصلی پایداری سرعت بالا و دوام SSD در استفادههای سنگین و طولانیمدت است.
SSDهای بدون DRAM چگونه کار میکنند؟
اگرچه DRAM بسیار مفید است، اما وجود آن الزامی نیست. به همین دلیل SSDهای بدون DRAM نیز در بازار وجود دارند. این مدلها معمولاً از قابلیتی به نام Host Memory Buffer (HMB) استفاده میکنند.
HMB که با استاندارد NVMe 1.2 معرفی شد، به SSD اجازه میدهد بخش کوچکی از RAM سیستم (معمولاً کمتر از ۱۰۰ مگابایت) را برای ذخیره جدول نگاشت آدرسها قرض بگیرد. بهجای استفاده از DRAM اختصاصی روی خود SSD، کنترلر از طریق رابط PCIe به حافظه سیستم دسترسی پیدا میکند.
این روش نسبت به DRAM داخلی کمی تأخیر بیشتری دارد، اما همچنان بسیار سریعتر از مراجعه مستقیم به حافظه NAND است و مانع افت شدید عملکرد در عملیات پیچیده میشود.
برای عملیات نوشتن نیز این SSDها به کش SLC متکی هستند. بیشتر SSDهای امروزی از فلش TLC یا QLC استفاده میکنند که نوشتن روی آنها کندتر است. برای جبران این موضوع، بخشی از حافظه بهصورت موقت در حالت SLC (تکبیتی) عمل میکند که سرعت بالاتری دارد. دادهها ابتدا در این بخش سریع نوشته میشوند و در زمانهای بیکاری به حافظه اصلی منتقل میگردند.
اگر این کش در هنگام انتقال فایلهای بسیار حجیم پر شود، سرعت SSD بهشدت کاهش مییابد و به سرعت ذاتی فلش NAND میرسد. با این حال، برای کارهای روزمره، ترکیب HMB و کش SLC میتواند تا حد زیادی ضعف نبود DRAM را پنهان کند.
آیا خرید SSD دارای DRAM منطقی است؟
پاسخ این سؤال به نوع استفاده و بودجه بستگی دارد. فاصله قیمتی بین SSDهای دارای DRAM و بدون DRAM در سالهای اخیر کمتر شده، اما با توجه به کمبود جهانی حافظه RAM، احتمال افزایش دوباره قیمتها وجود دارد.
اگر SSD قرار است بهعنوان درایو اصلی سیستم استفاده شود، مدلهای دارای DRAM انتخاب بهتری هستند. سیستمعامل دائماً هزاران عملیات کوچک پسزمینه انجام میدهد و DRAM این نوع بار کاری را بسیار روانتر مدیریت میکند. همچنین با جذب نوشتنهای کوچک، فرسودگی حافظه فلش کاهش یافته و طول عمر SSD افزایش مییابد.
در مقابل، برای ذخیره فایلهایی مانند عکس، ویدئو یا اسناد، تفاوت چندانی احساس نخواهد شد. سرعت خواندن ترتیبی در SSDهای بدون DRAM اغلب مشابه مدلهای مجهز به DRAM است. علاوه بر این، در شرایطی که قیمت SSDهای دارای DRAM افزایش یافته باشد، گزینههای بدون DRAM میتوانند انتخابی قابلقبول باشند.












