دوستان و همراهان سخت افزار، با شما هستیم به همراه یک مطلب حائز اهمیت در زمینه حافظه های DRAM موجود در درایوهای SSD. محوریت اصلی مطلب مورد نظر، در زمینه سیاست، کارایی و استراتژی آینده این حافظه های بسیار مهم است. حافظه دسترسی تصادفی پویا (Dynamic random-access memory) یا DRAM یک نوع از حافظه دسترسی تصادفی است که هر بیت را در یک خازن جداگانه ذخیره میکند و از تراشهها نیز استفاده نمی کند. کاربرد این نوع از حافظه ها در کامپیوتر بسیار زیاد است؛ از تراشه های میان افزار گرفته تا حافظه های رم (RAM) و درایوهای SSD…
حافظه های سالید یا همان SSD های اولیه بدون حافظه های کش (Cache) اولیه عرضه شدند؛ در نتیجه بر خلاف تصور عامه DRAMless SSD ها محصولات جدیدی نیستند. نخستین SSD های مصرف کننده بدون حافظه های DRAM راهی بازار شدند و به سرعت مشکلاتی در آنها دیده شد. به عنوان مثال بالا رفتن زمان تاخیر (Delay time) در اجرای دستورات ورودی و نقل آنها به خروجی و وجود اشتباهات در “کنترلر” از جمله مشکلاتی بود که حافظه های سالید DRAMless با آنها سر و کار داشته و دارند. اما دلیل استفاده از حافظه های DRAM در درایوهای SSD چیست؟ این حافظه ها بسیار حیاتی و مهم هستند؛ نه تنها به این دلیل که مشکلات گفته شده در بالا را به همراه دارند، بلکه افزایش سرعت، کاهش خطا (پروتکل هایی مانند ECC) و سامانه های حفاظتی نیز وابسته به DRAM ها خواهند بود. حافظه های DRAM را عموما از مدل های DDR3 و DDR2 تولید می کنند؛ ظرفیت و نوع آنها بسته به نوع SSD و قیمت گذاری کمپانی متفاوت است. به عنوان مثال با افزایش ظرفیت و قیمت سالید ها، حافظه های DDR3 با ظرفیت های بالا در آنها تعبیه می شوند. هر چند که همچنان در برخی از نمونه ها شاهد استفاده از حافظه های SDRAM هستیم. در نگاه کلی کارایی این حافظه ها یکسان بوده و تنها سرعت آنها است که تعیین کننده تفاوت و قیمت گذاری است. همانطور که گفته شد، DRAM به عنوان حافظه های کش یا حافظه موقت مورد استفاده قرار می گیرند.
بسته به الگوریتم نرم افزار/سخت افزاری تعامل به حافظه های کش متفاوت است. با توجه به افزایش این حافظه ها در سالید های جدید، می توان با اطمینان از کاربرد آنها سخت گفت. حافظه موقت (Cache) های DRAM حتی از NAND های داخل SSD نیز سریعتر هستند. این حافظه ها عملا Data را در بر نگرفته و به صورت رمزگذاری آدرس های هر بخش (District) از سالید را در خود جای می دهند. اما آدرس های District بر چه اساس و مبنی در کش ذخیره می شوند؟ یکی از الگوریتم های مورد نظر، اساس را بر روی بیشترین فراخوانی ها داده و بیشترین بلوک های حاوی اطلاعات که توسط کاربر یا سیستم عامل و یا نرم افزار فراخوانی می گردد را در خود ذخیره کرده و در فراخوانی های مجدد، به سرعت آنها را به مسیر خروجی هدایت می کند. در نتیجه SSD زمانی را برای جستجوی اطلاعات جدید صرف نکرده و کنترلر نیز با پهنای باندی با ترافیک کمتر در اختیار درایو قرار می گیرد. دومین الگوریتم تعریف شده، خطایابی است. بسیاری از سامانه های رفع خطا در این درایوها بر اساس مانیتورینگ حافظه های DRAM به طور دائم صورت می گیرد. عدم وجود DRAM “تلورانس خطا” را به طور چشمگیری افزایش می دهد. در واقع، سیستم عامل دارای یک نقشه از آدرس های داده است که فکر می کند اطلاعات در آنجا ذخیره شده اند؛ این در حالی است که SSD نقشه فیزیکی خود را نشان می دهد. حافظه های SSD دارای دو نقشه از آدرس های داده هستند و این نقشه ها مرتبا در حال بروزرسانی است. همچنین بد نیست بدانید که تراشه های NAND دارای لایه ترجمه یا FTL هستند. پس از قطع جریان و یا خاموش شدن سیستم، تمامی اطلاعات DRAM پاک می گردد.
از آنجایی که حافظه های DRAM از تراشه های NAND سریعتر هستند، در “گیت ترمینال” اولیت نخست را داشته و مستقیما به اینترفیس متصل هستند و به عنوان آخرین گذرگاه شناخته می شوند. با این تفاسیر از از خود خواهید پرسید که دلیل عدم استفاده از آنها در درایو های SSD چه خواهد بود؟ از جمله این دلایل می توان به قیمت بالای تراشه های DRAM اشاره کرد. افزایش قیمت در سالید های مصرف کننده گاها می تواند بازار رقابت را به نفع یک برند تغییر دهد. متاسفانه عدم آگاهی از حافظه های DRAM در SSD ها و تبیلیغات نه چندان جدی برندها در این زمینه، فاکتور وجود DRAM جهت انتخاب و خرید را به قعر جدول رسانده است. اما پارامتر قیمت تنها دلیل وجود درایوهای DRAMless SSD نیست؛ حافظه های کش DRAM تنها توسط چند برند محدود مانند Samsung، Micron و SK Hynix تولید می گردد و کمپانی های تولید کننده SSD حتی در صورتی که تراشه های NAND را توسط خود تامین نمایند، باز هم نیازمند استفاده از DRAM هایی هستند که توسط برند رقیب تولید می گردد! سومین علت، مصرف انرژی در DRAM ها است. این حافظه ها حتی از تراشه های NAND نیز انرژی بیشتری را تقاضا می کنند. با توجه به این دلایل برخی از تولید کنندگان کمر همت به حذف DRAM ها بسته اند؛ چند روش پیشنهادی برای این حذف وجود دارد؛ به عنوان مثال می توان کنترلرهایی همچون Phison S11 را با مقداری حافظه (32 مگابایت) تراشه SRAM تولید کرد. سپس این حجم به عنوان یک کش فعال عمل نماید. اما از معایب این ایده می توان به ظرفیت پایین حافظه کش اشاره کرد.
تکنیک دیگر فشرده سازی ترجمه گر فلش بر روی لایه های نقشه هایی است که SSD جهت نمایش آدرس های داده از آنها استفاده می کند که اصطلاحا به این روش نیز HMB گفته می شود. اما این اقدام می تواند مقاومت SSD را کاهش دهد. خصوصا اگر از تراشه هایی مانند 2D TLC NAND استفاده شده باشد. با این تفاصیر حذف مطمئن حافظه های نهان یا کش DRAM از SSD ها به این زودی ها محقق نخواهد شد. پیشنهاد دیگری مانند اختصاص بخش از یک تراشه NAND به عنوان RAM وجود دارد که در مراحل اولیه تاکتیکی متوقف شده است. در هنگام خرید به وجود حافظه های DRAM دقت نمائید. امیدواریم این مطلب در شناخت شما عزیزان از این حافظه ها موثر واقع شده باشد.
ممنون :-bd
پیچیده، به شدّت تخصّصی، نامفهوم :-L
ممنون