فهرست مطالب

میزان مطالعه

معماری نوآورانه حافظه‌های پهنای‌باند بالا (HBM)و نقش آن‌ها در پاسخ‌گویی به نیازهای فناوری‌های نوین


امروزه فاصله عملکردی بین پردازنده‌ و حافظه به یک چالش قابل توجه در سیستم‌های محاسباتی مدرن تبدیل شده است. سرعت پردازنده‌ها به طور مداوم در حال افزایش بوده است، در حالی که تأخیر حافظه نسبتا ثابت باقی مانده است. اگر زمان قابل توجهی صرف انتظار برای واکشی[1]داده‌ها از حافظه ‌شود، عمکلرد کلی سیستم که با توجه به سرعت جا‌به‌جایی داده‌ها بین پردازنده و حافظه تعیین می‌شود، دچار افت خواهد شد. افزایش تقاضا برای  کاربرد‌های داده‌بر‌[2] مانند هوش مصنوعی، یادگیری ماشین و تحلیل داده‌های بزرگ مشکل تاخیر را نیز تشدید کرده است. در این برنامه‌ها که نیازمند پردازش حجم بزرگی از داده‌ها هستند لازم است که داده‌ها به کرّات بین پردازنده و حافظه  جا‌به‌جا شوند. این جابجایی‌های پرتکرار داده‌ها سبب تاخیری می‌شود که می‌تواند بر عملکرد برنامه‌های داده‌بر‌ تاثیر منفی بگذارد.

از سوی دیگر انرژی مصرف شده برای پردازش و ذخیرۀ موقّت داده‌ها در پردازنده‌های پیشرفته به سطحی رسیده است که یکی از عوامل محدود کننده شده است. به عنوان مثال ریزتراشۀ هوش مصنوعی H100 که توسّط شرکت Nvidia طرّاحی و عرضه شده است در صورتی که بطور متوسّط از 61% قدرت پردازش آن در طول سال استفاده شود، توانی حدود 700 W را مصرف خواهد کرد که تقریباً برابر متوسّط توان مصرفی یک خانواده (متوسّط جمعیّت خانوار 2.51 نفر فرض شده) است. این در حالی است که یک سرور هوش مصنوعی به راحتی ممکن است یه چند هزار ریزتراشۀ H100 نیاز داشته باشد.

علاوه بر این، با آمدن هر نسل جدید از فناوری تولید ریزتراشه‌های منطقی، اجزاء آن کوچکتر شده و می‌توان همان عملکرد را در مساحت کمتری و در ریزتراشۀ کوچکتری داشت به عبارت دیگر تراکم اجزاء ریزتراشه بیشتر می‌شود. این روند تاکنون در پردازنده‌ها تقریباً ثابت بوده است. در گذشته افزایش تراکم در ریزتراشه‌های حافظه سریعتر از پردازنده‌ها بود. لیکن در سالهای اخیر افزایش تراکم در ریزتراشه‌های حافظه با موانع جدّی روبرو شده است و تقریباً متوقّف شده است. این درحالی است که حجم حافظۀ مورد نیاز به سرعت رو به افزایش است. یکی از راهکارهای افزایش تعداد بیتهای حافظه در واحد سطح، پشته کردن چندین ریزتراشۀ حافظه روی هم (شکل 2).

شکل 1. روند افزایش تراکم حافظه DRAM (تعداد بیت بر واحد سطح).

برای رفع مشکلات بالا حافظه با پهنای‌باند بالا[3] که در اصطلاح به آن HBM گفته می‌شود ایجاد شده ‌است. توسعه HBM از سال ۲۰۰۸ توسّط شرکت‌ AMD ایالات متحده و SK Hynix کره‌جنوبی آغاز شد و در سال ۲۰۱۳، این شرکت‌ها مشخصات مربوط به تراشه را در اختیار موسسه  JEDEC، موسسه‌ای که مرجع تدوین ضوابط و استانداردها برای تولید محصولات میکروالکترونیک است، قرار دادند. HBM در واقع همان DRAM است که بسته‌بندی و ارتباط بین آن و پردازشگر مطابق استاندارد JESD238A سازمان JEDEC است. معماری و ساختار حافظه با پهنای‌باند بالا بر پایه یک رویکرد نوآورانه و سه‌بعدی استوار است که به منظور دستیابی به سرعت‌های بالای انتقال داده و کاهش مصرف انرژی طراحی شده است. ساختار HBM از چندین (حداقل 4) لایه تراشه حافظه تصادفی پویا[4] که به اصطلاح DRAM نامیده می‌شوند تشکیل شده است که از طریق کانال‌های عمودی به نام TSV[5]ها (میان‌راه‌های سیلیکانی) به یکدیگر متصل می‌شوند که این لایه‌ها به صورت عمودی روی هم قرار گرفته و یک بلوک سه‌بعدی را تشکیل می‌دهند. TSVها در واقع حفره های کوچکی هستند که درون سیلیکان حفر می‌شود و اجازه ارتباط تراشه روی هم را با سرعت‌های باورنکردنی می‌دهد و باعث به حداقل رسیدن تأخیر می‌شوند. این چند لایه از تراشه‌های حافظه نیز از طریق میان‌راه‌های سیلیکانی به یک دای منطقی[6] متصل می‌شوند که این دای وظیفه‌ی کنترل این تراشه‌ها را بر عهده دارد. کل پکیج ذکر شده (لایه‌های حافظه و دای منطقی) بر روی لایه‌ای به نام اینترپوزر[7] قرار می‌گیرد. اینترپوزر در واقع یک صفحه سیلیکانی است که به عنوان پایه‌ای برای نصب تراشه‌های HBM عمل می‌کند. این قطعه نه تنها به عنوان یک واسط برای اتصال حافظه به پردازنده یا سایر اجزای سیستم عمل می‌کند، بلکه به توزیع یکنواخت حرارت در سراسر بسته حافظه کمک می‌کند، که این امر طول عمر و قابلیت اطمینان سیستم را افزایش می‌دهد. اینترپوزر این امکان را فراهم می‌آورد که DRAMها در نزدیکی بسیار زیادی به GPU/CPU/APU قرار گیرند بدون اینکه در همان دای قرار داشته باشند. این نزدیکی سبب چندین مزیت مهم از قبیل دسترسی به پهنای‌باند بالاتر و مصرف انرژی کم‌تر می‌باشد. هم‌چنین وجود اینرپوزر سبب می‌شود که GPU/CPU/APU و تراشه‌های حافظه بتوانند از نسل‌های مختلف فناوری (به طور مثال پردازنده‌ای از نسل فناوری 28 نانومتر در کنار حافظه‌ای از نسل فناوری 18 نانومتر) باشند. برای اتصال لایه‌های مختلف به یکدیگر نیز از میکروبامپ‌ها (یک برجستگی کوچک برای اتصال دو تراشه به یکدیگر) استفاده می‌شود. در شکل 1 نحوه‌ی چگونه قرار گرفتن لایه‌ها در یک HBM قابل مشاهده است.

می‌توان پشتۀ HBM را مستقیماً روی پردازنده مونتاژ کرد یا چنانکه Nvidia می‌کنند، پردازنده را روی یک Si interposer مونتاژ کرد و پشتۀHBM ها را در اطراف آن روی interposer مونتاژ کرد. قبل از HBM استاندارد graphics double data rate (GDDR6) بود که بیشتر برای کارتهای گرافیکی مورد استفاده در بازیهای رایانه‌ای استفاده می‌شد. امّا GDDR برای هر die نیازمند یک گذرگاه[8] حافظۀ جداگانه بود و اینکار مجتمع کردن تعداد زیادی die در اطراف CPU را غیر ممکن می‌کرد. در سال 2023 شرکت SK Hynix موفّق به تولید HBM3 با 12 لایه و ظرفیت 24 GB شد. نسخۀ قبلی آن، HBM2 در سال 2018 ارائه شده بود و 8 لایه بود. پهنای باند حافظه به فرکانس ساعت و پهنای گذرگاه و حجم داده مبادله شده با هر پالس ساعت بستگی دارد. گذرگاه در HBMها بسیار عریضتر است و امکان انتقال داده‌ها به صورت موازی را فراهم می‌آورد که باعث خواهد شد داده‌های بیشتری به طور هم‌زمان منتقل شوند. در HBM پهنای گذرگاه 1024 بیت به ازاء هر پشته است. امّا در GDDR5  فقط 64 بیت است. به همین دلیل در HBM می‌توان با فرکانس ساعت کمتر، حجم دادۀ بیشتری را جابجا کرد. فرکانس ساعت کمتر منجر به کاهش قابل توجّه برق مصرفی به ازاء هر بیت خوانده یا نوشته شده در حافظه می‌شود. روی‌هم قرار دادن چندین تراشه حافظه به صورت عمودی، سبب کوتاه شدن مسیر‌های ارتباطی می‌شود که موجب افزایش سرعت انتقال داده‌ها خواهد شد. از دیگر تفاوت‌های قابل توجه کم‌تر بودن ولتاژ کاری و مصرفانرژی HBMها نسبت به حافظه‌های سنتی است. به دلیل آنچه ذکر شد، HBM منجر به کاهش حدود 40% مصرف توان و افزایش حدود 65% کارآئی می‌شود.

شکل 2. نحوه‌ی چگونه قرار گرفتن لایه‌ها در یک حافظه با پهنای باند بالا


شکل3. مقایسه‌ی HBM با تراشه حافظه GDDR5

قبل از رواج هوش مصنوعی، سهم HBM از بازار DRAM حدود 1.5% بود. امّا هم‌اکنون بازار HBM به حدود 2 میلیارد دلار در سال رسیده است و تا 2028 به 6.3 میلیارد دلار خواهد رسید. 53% بازار HBM در اختیار SK Hynix است و 38% آن در اختیار سامسونگ است و 9% آن در اختیار شرکت micron است.


[1] fetching

[2] Data intensive application

[3] High Bandwidth Memory(HBM)

[4] Dynamic Random Access Memory(DRAM)

[5] through silicon via

[6] Logic Die

[7] interposer

[8] bus