مطالعه جامع استانداردهاي حافظه GDDR و HBM؛ تفاوتها و ويژگيها
تاريخچهي كارتهاي گرافيك انويدياقسمت اولقسمت دومقسمت سوم
اين روزها با عرضهي كارتهاي گرافيك قدرتمندي از سوي دو رقيب ديرين يعني انويديا و AMD، جدال بر سر فناوريهاي گرافيكي از هميشه جديدتر شده است. يكي از آوردگاههاي اين رقابت نفسگير، موضوع حافظههاي گرافيكي است. رقابتي كه در آن، ميزان حافظهي گرافيكي همراهبا پردازندهي گرافيكي تنها پارامتر داراي اهميت نيست؛ بلكه پارامتري به نام پهناي باند حافظه نقش تعيينكنندهاي دارد و اين دو رقيب تراشهساز تمام تلاش خود را ميكنند تا اعداد و ارقام مربوطبه اين پارامتر را ارتقاء دهند.
انويديا دركنار معرفي و عرضهي معماري گرافيكي جديد خود با نام تورينگ و ارائهي قابليتهايي مانند رهگيري پرتو (Ray Tracing) و آنتيآلياسينگ مبتني بر هوش مصنوعي (DLSS)، حافظههاي گرافيكي نوظهور GDDR6 را وارد كارتهاي گرافيك خود كرده است تا از حداكثر سرعت دسترسي به دادهها و پهناي باند ارائهشده در حافظه هاي GDDR تا به امروز نهايت بهرهبرداري را كرده باشد. اين شركت در كارت پرچمدار خود Geforce RTX 2080 با بهكارگيري ۸ گيگابايت از اين نوع حافظهي سريع گرافيكي، حداكثر پهناي باند را به ۴۴۸ گيگابايت بر ثانيه رسانده است.
تاريخچهي كارتهاي گرافيك AMD/ATIقسمت اولقسمت دوم
در سوي ديگر اين آوردگاه AMD قرار دارد كه با بهكارگيري ۱۶ گيگابايت حافظهي بسيار سريع و پهنباند HBM2 در كارت گرافيك پرچمدار خود Radeon VII، رقابت تنگاتنگي را با شركت انويديا در پيش گرفته و اين بار پهناي باند حافظهي گرافيكي را به بيش از يك ترابايت بر ثانيه افزايش داده است.
در ادامهي اين مقاله، ابتدا نگاهي خواهيم داشت به مفهوم پهناي باند حافظهي گرافيكي و اصطلاحات متخصص مربوطه و سپس بهسراغ مطالعه موشكافانهي دو نوع حافظهي گرافيكي GDDR6 و HBM ميرويم و ويژگيهاي آنها را با يكديگر مقايسه خواهيم كرد.
پهناي باند حافظه چيست؟
سرعت تبادل دادهها ميان حافظه و پردازندهي گرافيكي يا بهعبارت ديگر سرعت خواندن داده از حافظهي گرافيكي يا نوشتن روي آن توسط پردازندهي گرافيكي، پهناي باند حافظهي گرافيكي خوانده ميشود. پس پهناي باند حافظه حاكي از سرعت ذخيرهي اطلاعات روي حافظه يا بازخواني اطلاعات از حافظه توسط تراشهي گرافيكي اصلي يا همان GPU است. پارامتر پهناي باند حافظه با واحد بايت بر ثانيه (Byte/s) يا واحدهاي بزرگتر از آن (در اين مقاله با واحد GB/s) بيان ميشود. معمولاً پهناي باند حافظه كه براي يك تراشهي حافظهي خاص اطلاعرساني و تبليغ ميشود، حداكثر پهناي باند انديشه متخصصيني آن تراشه است و پهناي باند واقعي اندازهگيريشده زير بار پردازش گرافيكي نظير بازيها كمتر از اين عدد است.
پهناي باند حافظهي گرافيكي تابعي از پارامترهاي مختلف به شرح زير است:
پهناي باند با دراختيار داشتن مقادير فوق ازطريق رابطهي زير محاسبه ميشود:
n*b*s)/8)
رقابت اصلي در زمينه حافظههاي گرافيكي نه بر سر حجم، بلكه بر سر مجموع پهناي باند تراشههاي حافظه است
در رابطهي فوق، براي رسيدن به واحد استاندارد پهناي باند حافظه (گيگابايت بر ثانيه) حاصلضرب سه پارامتر n و b و s تقسيم بر عدد ۸ شده است. همانطور كه از اين رابطه پيدا است، پهناي باند حافظه در يك كارت گرافيكِ بهخصوص، از تعداد تراشههاي گرافيكي موجود، سرعت هر تراشهي حافظه (كه بستگي به نوع آن حافظه اعم از GDDR5، GDDR5X، GDDR6 و ... دارد) و پهناي باس هر تراشه تأثير ميپذيرد.
براي مثال، شكل زير تصوير برد اصلي Geforce RTX 2080، كارت گرافيك پرچمدار انويديا با معماري تورينگ را نشان ميدهد. همانطور كه ديده ميشود، ۸ تراشهي حافظه از نوع GDDR6 (هريك با چگالي 1GB)، پردازندهي گرافيكي TU104 را احاطه كردهاند كه پهناي باس هر تراشه ۳۲ بيت و سرعت انتقال دادهي هر يك 14Gbps است.
برد اصلي كارت گرافيك Geforce RTX 2080 پرچمدار فعلي انويديا
بنابر رابطهي فوق، پهناي باند حافظهي گرافيكي در اين كارت برابر است با ۴۴۸GBps يا بهعبارتي:
گيگابايت بر ثانيه ۴۴۸=۸/(۳۲×۱۴×۸)
حال براي مقايسه ميخواهيم پهناي باند حافظهي كارت گرافيك GTX 1080 را محاسبه كنيم. در تصوير زير برد اصلي اين كارت كه پرچمدار معماري پاسكال است را مشاهده ميكنيد. ديده ميشود كه ۸ تراشهي گرافيكي از نوع GDDR5X با پهناي باس ۳۲ بيتي (هر تراشه ازطريق ۳۲ مسير داده با پردازنده در ارتباط است) و سرعت 10Gbps پردازندهي گرافيكي GP104 را در اين برد احاطه كرده است.
برد اصلي كارت گرافيك Geforce GTX 1080 پرچمدار معماري پاسكال
بنابراين مجموع پهناي باند بنا به رابطهي فوق عبارت است از:
گيگابايت بر ثانيه ۳۲۰=۸/(۱۰×۳۲×۸)
همانطور كه مشخص است، پهناي باند حافظه در كارت گرافيك پرچمدار با معماري پاسكال بسيار كمتر از كارت پرچمدار تورينگ است.
حافظههاي GDDR
در حافظههاي GDDR تراشههاي حافظه و پردازندهي گرافيكي هر دو به يك PCB (برد مدار چاپي يا Substrate) متصل شده است و مسيرهاي ارتباطي نازكي با تعداد مشخص (كانكشنها) از هر تراشه به GPU رفته و باعث ايجاد ارتباط ميان پردازنده و حافظهي گرافيكي ميشود. عموما ۳۲ مسير ارتباطي ميان هر تراشهي GDDR و پردازندهي گرافيكي تعبيه شده است كه از آن به پهناي باس ۳۲ بيتي تعبير ميشود.
قبل از آنكه به مطالعه دقيق حافظهي GDDR6 و ويژگيهاي آن بپردازيم، خوب است نگاهي كوتاه به مهمترين نسلهاي حافظهي GDDR كه تا به امروز در كارتهاي گرافيك مختلف به كار رفته، داشته باشيم. معروفترين انواع حافظههاي GDDR عبارتاند از:
GDDR5
حافظههاي GDDR5 پركاربردترين حافظههاي پرسرعتي است كه در نسل كنوني كارتهاي گرافيك ديده ميشود. GDDR5 حافظهي گرافيكي با پهناي باند وسيعتر و توان مصرفي كمتر نسبت به پيشينيان خود است. سرعت انتقال داده (سرعت حافظه) در اين حافظهها به 8Gbps ميرسد. از اين نوع حافظه در كارتهاي گرافيك مشهوري نظير GTX 1060، GTX 1070 و Radeon RX 480 استفاده شده است. هاينكيس، ELPIDA، مايكرون و سامسونگ از مهمترين سازندگان تراشههاي GDDR5 هستند. چگالي حافظه در هر تراشهي GDDR5 معمولا ۴ يا ۸ گيگابيت و محدودهي ولتاژ كاري اين تراشهها از ۱/۳۵ تا ۱/۵ ولت متغير است.
GDDR5X
GDDR5X درواقع نسخهي بهبود يافتهي حافظههاي GDDR5 است. GDDR5X نسبت به برادر بزرگتر خود دو برابر سرعت بيشتري دارد و ميتواند به نرخ انتقال دادهاي از ۱۰ تا حداكثر 14Gbps در سطح هر پين تراشه دستپيداكند. انويديا سرعت تراشههاي GDDR5X را در كارتهاي گرافيك خود روي عدد 11/4Gbps تنظيم كرده است. در حال حاضر تراشههاي GDDR5X تنها توسط شركت ميكرون توليد ميشود.
GDDR5X با ولتاژ كاري ۱/۳۵ ولت، توان مصرفي كمتري نسبت به GDDR5 داشته و در ظرفيتهاي ۴، ۶، ۸، و ۱۶ گيگابيتي به ازاي هر تراشه در دسترس است. بايد توجه كرد كه روي يك PCB امكان جايگزين كردن حافظههاي GDDR5 با GDDR5X وجود ندارد؛ چرا كه اين دو نوع حافظه از تعداد پينهاي متفاوتي استفاده ميكنند. درحاليكه تراشهي GDDR5 از ۱۷۰ پين براي اتصال به زيرلايه استفاده ميكند، تعداد پينها در GDDR5X براي هر تراشه ۱۹۰ پين است. كارت گرافيك پرچمدار و قدرتمند GTX 1080 انويديا پذيراي ۸ گيگابايت از اين حافظههاي سريع است. كارتهاي گرافيك ديگري نظير Nvidia TITAN X و شتابدهندههاي گرافيكي وركاستيشن نظير Nvidia Quadro P5000 از اين حافظهي گرافيكي بهرهمند است.
مروري بر حافظهي گرافيكي GDDR6
پهناي باند حافظه هميشه چالشي براي كارتهاي گرافيك بوده است؛ چالشي كه با گذر زمان، سختتر و سختتر ميشود. بهلطف قانون مور نسل به نسل بر تعداد ترانزيستورهاي پردازندههاي گرافيكي (و البته تعداد هستههاي مختلف در آن) افزوده ميشود. اين درحالي است كه حافظههاي DRAM كه پهناي باند آن تابع اين قانون نيست، روند پيشرفت بسيار كندتري را تجربه ميكند.
برآيند خالص چنين روالي اين است كه رقم پهناي باند حافظهي در دسترس به ازاي توان محاسباتي پردازندهي گرافيكي (برحسب فلاپس)، به ازاي حجم و كيفيت بافتهاي گرافيكي و به ازاي آميزهي پيكسلها بهتدريج افت ميكند. در چنين شرايطي براي حفظ سطح عملكرد پردازندهي گرافيكي و ممانعت از ايجاد گلويي (Bottleneck)، سازندگان تراشههاي گرافيكي و انواع حافظه هر دو بايد به فكر راهي براي افزايش پهناي باند حافظه در مسير آينده باشند و در عين حال از ميزان پهناي باند مورد استفادهي اپليكيشنهاي گرافيكي با روشهايي نظير فشردهسازي دادهها در حافظه بكاهند. با اينكه هيچكدام از اين دو راهحل بهآساني به نتيجه نميرسد، انويديا، غول تراشههاي گرافيكي توانسته است در يك دههي گذشته در هر دو زمينه موفق عمل كند. در جدول زير افزايش نسل به نسل پهناي باند حافظه در كارتهاي گرافيكي اين شركت و ميزان پهناي باند به ازاي هر فلاپ توان محاسباتي پردازندهي گرافيكي (برحسب بيت) ارائه شده است.
پردازنده گرافيكي | توان محاسباتي (ترافلاپس) | نوع حافظهي گرافيكي | پهناي باند به ازاي هر واحد فلاپ (بيت) | پهناي باند كلي حافظه گرافيكي |
---|---|---|---|---|
RTX 2080 | 10.06 | GDDR6 | 0.36 | 448GB/sec |
GTX 1080 | 8.87 | GDDR5X | 0.29 | 320GB/sec |
GTX 980 | 4.98 | GDDR5 | 0.36 | 224GB/sec |
GTX 680 | 3.25 | GDDR5 | 0.47 | 192GB/sec |
GTX 580 | 1.58 | GDDR5 | 0.97 | 192GB/sec |
انويديا با ارائهي معماري تورينگ و تمركز بسيار بر رهگيري پرتو و پردازش شبكهي عصبي، جهشي سريع در پهناي باند حافظه رقم زده است. اگر پهناي باند را صرفا برحسب سطح عملكرد هستههاي CUDA مورد مطالعه قرار دهيم، مقدار اين پارامتر به ازاي هر فلاپ در معماري تورينگ در مقايسه با پاسكال واقعا افزايش يافته است؛ چرا كه توان عملياتي هستههاي كودا در پردازندهي گرافيكي RTX 2080 نسبت به GTX 1080 افزايش چشمگيري نداشته است. اما پردازندهي گرافيكي RTX 2080 هستههاي انحصاري و متعددي براي اجراي رهگيري پرتو و آنتي آلياسينگ مبتني بر هوش مصنوعي (DLSS) دارد كه هر يك به روش خود پهناي باند حافظهي بالايي را اشغال ميكند. در مجموع، مشاهده ميشود كه در مباحثه محاسبات اعشاري FP32 ميزان پهناي باند در دسترس براي هر هسته قدري افزايش يافته است. اما اگر از جنبهي ساختار كلي پردازندهي گرافيكي به موضوع نگاه كنيم، ميزان نزاع انواع هستههاي گرافيكي نيز براي داشتن پهناي باند بيشتر، فراتر از گذشته است.
نسلهاي مختلف پردازندههاي گرافيكي شامل پردازندههاي ۱۴ يا ۱۶ نانومتري از ديرباز تا بهامروز با گسترهاي از حافظههاي گرافيكي متنوع كار كردهاند. حافظهي گرافيكي GDDR5 در حدود يك دهه در كارتهاي گرافيك بهكار رفته و زمان جايگزين كردن آن با حافظههايي سريعتر فرا رسيده است. مؤسسهي استاندارد JEDEC كه تدوين استانداردهاي مشترك حافظه را بر عهده دارد، جايگزين كردن حافظههاي GDDR5 را از دو مسير پيگيري كرده است. مسير اول توسعه و بهبود فناوري GDDR5 بوده كه با نام استاندارد GDDR5X شناخته ميشود و راهكار بعدي فناوري ديگري با عنوان حافظههاي HBM يا حافظه با پهناي باند بالا است كه در بخش ديگري از اين مقاله در مورد آن بهتفصيل توضيح خواهيم داد.
انويديا بهدليل هزينهبر بودن و دشواريهاي توليد در روش دوم، از حافظههاي HBM تنها در مدلهاي محدودي از كارتهاي گرافيك سرور خود، از جمله Quadro GP100 و Quadro GV100 استفاده كرده است. در ساير موارد، اين شركت حافظههاي گرافيكي GDDR5X را ترجيح داده و جايگزين نسل قبلي كرده است. از سوي ديگر، حافظههاي GDDR5X هرگز مقبوليت عام برادر بزرگتر خود GDDR5 را پيدا نكردند. اين نوع حافظه تنها توسط شركت ميكرون توليد و تنها توسط انويديا در برخي مدلهاي ردهبالا نظير كارت پرچمدار سري پاسكال، GTX 1080 مورد استفاده قرار گرفت.
اينجا بود كه نسل بعدي فناوري GDDR پا به ميدان گذاشت. GDDR6 آخرين و بزرگترين فناوري حافظههاي GDDR است. اين حافظه برخلاف GDDR5X مقبوليت ويژهاي يافته و توسط سه توليدكنندهي بزرگ حافظه يعني سامسونگ، هاينكس و ميكرون توليد ميشود. دراينميان شركت انويديا بهعنوان تنها شركتي كه تاكنون از حافظههاي GDDR6 در كارتهاي گرافيك خود استفاده كرده است. انويديا ماژولهاي ۱۶ گيگابيتي ساخت سامسونگ را در كارتهاي كوادروي خود تعبيه كرده و از ماژول هاي ۸ گيگابيتي ميكرون در كارتهاي جديد GeForce RTX با معماريِ بهروز تورينگ استفاده ميكند. انويديا همچنين در ساخت كارت گرافيك GTX 1660 Ti كه كارتي با معماري تورينگ اما فاقد ويژگيهاي اختصاصي سري RTX همانند رهگيري پرتو است نيز از حافظههاي GDDR6 استفاده ميكند. پيش از اين در اخبار تخصصي، علمي، تكنولوژيكي، فناوري مرجع متخصصين ايران به مطالعه جامع مشخصات كارت گرافيك GTX 1660 Ti پرداختهايم. زمزمههايي در مورد بهكارگيري حافظههاي GDDR6 در كارتهاي گرافيك AMD Navi كه در آيندهي نزديك عرضه خواهد شد نيز به گوش ميرسد. سرعت حافظههاي GDDR6 بالغ بر ۱۴ گيگابيتبرثانيه بوده و قرار است نسل آيندهي اين تراشهها به سرعت 16Gbps يا بالاتر از آن دست يابد.
پهناي باند و سرعت حافظهي GDDR6 در مقايسه با GDDR5 افزايش زيادي يافته، اما در مقايسه با استاندارد بهبوديافتهي GDDR5X چندان قابلتوجه نيست
فناوري حافظهي GDDR6 در مقايسه با GDDR5X به نسبت گذشته گام چندان بزرگي به شمار نميرود. بسياري از فناوريهاي بهكاررفته در ساخت حافظههاي GDDR6 در استاندارد پيشين GDDR5X نيز گنجانده شده بودند. در سري كارتهاي گرافيك xx70 انويديا (مانند GTX 1070)، جايگزيني تراشههاي GDDR6 بهجاي حافظههاي GDDR5 باعث جهش بزرگي در ميزان پهناي باند تنها با يك نسل اختلاف ميشود. اما براي كارتهاي گرافيك xx80، مسئله كمي متفاوت است. در اين سري محصولات انويديا اگرچه جايگزين كردن حافظههاي GDDR5X با حافظههاي سريعتر GDDR6 تا حدي باعث افزايش پهناي باند ميشود، اما درهرصورت اين افزايش يك جهش بزرگ به حساب نميآيد.
افزايش پهناي باند تراشههاي حافظهي GDDR6 نسبت به GDDR5 ناشي از ايجاد دو تغيير بنيادين در نسل جديد اين حافظهها است.
۱- حافظههاي GDDR5 ميراثدار ويژگيهاي حافظهي DDR يا Double Data Rate است. در اين حافظه دو واحد داده در هر سيكل كلاك جابهجا و از تراشهي حافظه به كنترلر واقع در پردازندهي گرافيكي يا بالعكس منتقل ميشود. درحاليكه باس حافظهي GDDR5 امكان انتقال ۲ واحد داده را در هر كلاك نوشتن (WCK) ميدهد، در حافظههاي GDDR6 و همچنين GDDR5X اين ميزان به ۴ واحد داده در هر سيكل كلاك (Quad Data Rate) افزايش مييابد. چنانچه همهي پارامترهاي ديگر ميان دو نسل حافظه ثابت نگه داشته شود، حافظهي GDDR6 در هر سيكل كلاك دو برابر داده را نسبت به برادر بزرگترش جابهجا ميكند. انجام چنين كاري در عمل اصلا ساده نيست و براي افزايش باس حافظه، الزامات يكپارچگي سيگنال سختتري بايد لحاظ شود. براي افزايش ميزان نقل و انتقال داده در هر سيكل سيگنال حافظه، در عمل كارهاي زيادي روي كنترلر حافظه، خود تراشههاي حافظه و PCB بايد انجام داد.
در گراف آناليز سيگنال ارائهشده توسط انويديا براي حافظههاي GDDR6 (شكل فوق)، سيگنالي تميز و پكپارچه ديده ميشود كه در آن فاصلهي جابجايي ميان دو واحد داده بر حسب زمان 70ps است. انويديا ميگويد آنها توانستهاند كراستاك سيگنال را تا ۴۰ درصد كاهش دهند كه اين خود باعث افزايش يكپارچگي سيگنال و در نتيجه سيگنالدهي سريعتر حافظههاي GDDR6 است.
۲- تغيير اساسي دوم در حافظههاي جديد GDDR6 روش فراخواني اطلاعات از سلولهاي DRAM است. براي نسلهاي متمادي اطلاعات بهصورت رشتههاي سري بزرگ و بزرگتر از درون اين سلولها خوانده و واكشي (Prefetch) ميشد. در شكل زير روش واكشي داده از آرايهي حافظه در نسلهاي مختلف حافظه GDDR ديده ميشود.
در حافظهي GDDR5 تعداد دادههاي واكشيشده در هر سيكل ۸ واحد ۳۲ بيتي و در حافظهي GDDR5X اين ميزان به ۱۶ واحد ۳۲ بيتي ميرسد. اگرچه افزايش حجم دادههاي واكشيشده در هر سيكل به ۲۵۶ و ۵۱۲ بيت در اين دو نوع حافظه روند رو به افزايشي را نشان ميدهد، اما با تسريع پردازندههاي گرافيكي اين ميزان داده براي عملياتهاي كوچك حافظه از ميزان بهينه دور و دورتر ميشود. در حافظههاي GDDR6 ميزان دادهي واكشيشده در هر سيكل برابر با استاندارد GDDR5X است؛ اما روش واكشي داده متفاوت است.
در حافظههاي GDDR5 و GDDR5X از يك كانال واحد ۳۲ بيتي براي واكشي داده از هر تراشه استفاده ميشود، اما حافظهي GDDR6 از دو كانال موازي ۱۶ بيتي براي اين كار استفاده ميكند. اين بدان معنا است كه در هر سيكل كلاكِ تراشهي حافظه، ۶۴ بايت داده (۵۱۲ بيت) ازطريق دو كانال ۳۲ بايتي فراخوان ميشود. پس حجم دادههاي واكشيشده در هر سيكل كلاك حافظهي GDDR6 دو برابر حجم متناظر در حافظهي GDDR5 است كه البته اينبار بهصورت يك رشتهي پيوستهي دادهها منتقل نميشود. در نتيجه هر تراشهي حافظه GDDR6 ميتواند شبيه به دو تراشهي مجزا عمل كند و سرعت دسترسي به دادهها را افزايش دهد و از ميزان تأخير بكاهد.
در كارتهاي گرافيك امروزي پردازندهي گرافيكي ميزان قابلتوجهي داده را بهصورت موازي و پيدرپي با RAM سيستم تبادل ميكند و تغييرات معماري يادشده در حافظههاي گرافيكي تأثير چنداني بر ميزان عملكرد كلي ندارد. با اين وجود تجزيهي مسيرهاي دسترسي به داده به كانالهاي كوچكتر در استاندارد GDDR6 كارايي دسترسي تصادفي را در مقايسه با GDDR5X و حجم دادهي در دسترس ۶۴ بايتي آن بهبود ميبخشد.
اما تغييرات تراشههاي حافظه GDDR6 به آنچه گفته شد، خلاصه نميشود. در اين حافظهها توان مصرفي نسبت به نسلهاي قبل كاهش يافته يا بهتر است بگوييم كه از ادامهي رشد توان مصرفي در حافظههاي گرافيكي نسل جديد ممانعت ميشود. ولتاژ كاري استاندارد حافظهي GDDR6 معادل ۱.۳۵ ولت است كه برابر با استاندارد GDDR5X و كمتر از مقدار ۱.۵ ولت در استاندارد GDDR5 است. انويديا ميگويد بازدهي تواني را نسبت به حافظهي GDDR5X و معماري پاسكال تا ۲۰ درصد بهبود داده و بي شك اين ميزان بهبود نسبت به استاندارد حافظهي GDDR5 در معماري پاسكال بيشتر نيز هست.
در جدول زير، مشخصات حافظهي گرافيكي از نسلهاي مختلف در برخي از كارتهاي گرافيك انويديا ارائه شده است.
مشخصات | GeForce RTX 2080 Ti (GDDR6) | GeForce RTX 2080 (GDDR6) | Geforce RTX 2070 (GDDR6) | GeForce GTX 1080 (GDDR5X) | Geforce GTX 1070 (GDDR5) |
---|---|---|---|---|---|
ميزان حافظهي گرافيكي (GB) | 11 | 8 | 8 | 8 | 8 |
پهناي باند به ازاي هر پين (Gb/s) | 14 | 14 | 14 | 11 | 8 |
ظرفيت تراشهي حافظه (GB) | 1 | 1 | 1 | 1 | 1 |
تعداد تراشهها در كارت | 11 | 8 | 8 | 8 | 8 |
پهناي باس حافظه (bit) | 352 | 256 | 256 | 256 | 256 |
مجموع پهناي باند (GB/s) | 616 | 448 | 448 | 352 | 256.3 |
ولتاژ كاري تراشه (V) | 1.35 | 1.35 | 1.35 | 1.35 | 1.5 |
مروري بر حافظهي HBM
HBM يا حافظه با پهناي باند بالا (High Bandwith Memory) حافظهي غيرصفحهاي با ساختاري سهبعدي به شكل مكعب يا مكعب مستطيل است. براي ساخت اين حافظهها چند تراشهي حافظه يكي پس از ديگري با روشهاي لحيمكاري خاص روي هم انباشته شده و تشكيل يك تودهي مكعبي را ميدهند. اين نوع طراحي باعث اشغال فضاي كمتر روي PCB شده و حتي ميتوان آن را در مجاورت كامل پردازندهي گرافيكي قرار داد. بسته به نوع طراحي، يك يا چند تودهي حافظه (Stack)، پردازندهي گرافيكي را احاطه ميكند. هر تودهي حافظهي HBM مستقل از تودهي ديگر است، اما همه تودهها در ارتباط با يكديگر كار ميكنند. حافظههاي HBM بهدليل فرم فاكتور كوچكتر با اسامي ديگري نظير حافظهي فشرده و حافظهي تودهاي نيز شناخته ميشود.
روش ايجاد ارتباط ميان حافظههاي HBM و پردازنده كاملاً متفاوت با حافظههاي GDDR است. در اينجا از لايهي اضافي ديگري با نام اينترپوزر (Interposer) براي افزايش تعداد اتصالات ميان پردازنده و حافظهي گرافيكي استفاده ميشود. يك تودهي حافظه HBM متشكل از چهار تراشهي DRAM متصل به هم (يا تعداد ۸ تراشهي حافظه در HBM2) است كه روي يك تراشهي منطقي (Logic Die) و كل اين پكيج روي اينترپوزر (Interposer) قرار گرفته است. پردازندهي گرافيكي نيز روي همين لايه تعبيه شده و با تودههاي حافظه ازطريق اتصالات ظريف پرتعدادي كه از درون اينترپوزر ميگذرد، در ارتباط است.
اينترپوزر يك Die سيليكون است كه با استفاده از فرآيندهاي ساخت قديميتر و بزرگتر توليد ميشود. اين لايه كاملاً پسيو است و ترانزيستور فعالي در خود ندارد و از آن بهعنوان لايهاي كه در بردارندهي تمامي مسيرهاي ارتباطي يا كانكشنها ميان پردازندهي گرافيكي و تودههاي حافظه است، استفاده ميشود. اين لايه هماهنگي و يكپارچگي نزديكتري ميان تراشههاي DRAM و GPU ايجاد ميكند. يك تراشهي پكيج ارگانيك (Package Substrate) در زير لايهي اينترپوزر قرار گرفته كه درواقع همان PCB بوده و وظيفهي آن تبادل داده با رابط PCI Express، خروجي تصوير و اينترفيسهاي ديگر با فركانس پايين است. تمامي ارتباطات پرسرعت مابين پردازندهي گرافيكي و تراشههاي حافظه در لايهي اينترپوزر صورت ميپذيرد. باتوجهبه اينكه اينترپوزر يك تراشهي سيليكون است، در مقايسه با لايهي Package Substrate بسيار چگالتر بوده و دربرگيرندهي اتصالات و كانكشنهاي بسيار بيشتر در يك ناحيهي مفروض است. تعداد بسيار بيشتر اين كانكشنها بهمعناي پهناي باند بيشتر در مقايسه با حافظههاي GDDR است.
خلاقيت اصلي در ساخت حافظهي HBM، پيكربندي چند سطحي تراشههاي حافظه است
با وجود ظرفيت سنگين ارتباطي لايهي اينترپوزر، خلاقيت اصلي در پيكربندي HBM تعبيهي تودههاي حافظه است. هر تودهي حافظه HBM حداقل شامل پنج تراشه است؛ ۴ تراشهي DRAM و يك Die منطقي واحد كه كنترل اين چهار تراشه را بر عهده دارد. اين ۵ تراشه ازطريق اتصالات عمودي ويژهاي با نام Through-Silicon Vias يا TSVبه يكديگر متصل شده است. اين مسيرهاي ارتباطي با تعبيهي سوراخهايي در ضخامت تراشههاي ذخيرهسازي ايجاد ميشود. تراشههاي ذخيرهسازي با ضخامتي در حدود ۱۰۰ ميكرون به طرز شگفتانگيزي باريك است و اگر يكي از آنها را در دست بگيريم، مثل يك برگ كاغذ انعطافپذير است. گردههاي فلزي لحيم ما بين لايههاي تودهي HBM ميكروبامپ (Microbump) نام داشته و ستونهايي عمودي را كه درواقع مسير ارتباطي نسبتاً كوتاهي از Die منطقي به هر يك از تراشههاي DRAM است، شكل ميدهد.
هر يك از تراشههاي DRAM در برگيرندهي نوع جديدي از حافظه است كه براي بهرهگيري از مزاياي جانمايي فيزيكي متمايز استاندارد HBM به كار ميرود. شركت سامسونگ و هاينكس در حال حاضر به توليد اين تراشهها ميپردازند. از اين نوع حافظه در ساخت برد كارت گرافيك Radeon Fury X ساخت AMD استفاده شده كه نحوهي جانمايي حافظه در اطراف پردازندهي گرافيكي در شكل زير مشخص است. اين كارت دربرگيرندهي ۴ گيگابايت حافظهي گرافيكي HBM با مجموع پهناي باند 512GB/s است.
ولتاژ كاري استاندارد حافظهي HBM در مقايسه با GDDR5 نسبتاً كمتر (۱.۳ ولت در مقابل ۱.۵ ولت) است و با فركانس كلاك كمتري (۵۰۰ مگاهرتز در مقابل ۱۷۵۰ مگاهرتز) كار ميكند. سرعت استاندارد انتقال دادهي تراشهي HBM (يا همانطور كه پيش از اين گفته شد، پهناي باند به ازاي هر پين) ۱ گيگابيتبرثانيه است كه در مقايسه با سرعت حافظهي GDDR5 معادل ۷ گيگابيتبرثانيه به ميزان چشمگيري پايينتر است؛ اما باتوجهبه وجود اتصالات بسيار بيشتري ميان پردازنده و تراشههاي حافظه به واسطهي وجود لايهي اينترپوزر، پهناي باند حافظهي HBM به مراتب بيشتر است. البته سرعت تراشههاي HBM در نسل دوم (HBM2) باز هم افزايش يافته كه در ادامهي اين مقاله پيرامون آن صحبت خواهيم كرد. در شكل زير مقايسهي بهتري ميان پارامترهاي استاندارد دو نوع حافظهي HBM و GDDR5 ارائه شده است.
هر تراشهي DRAM در پيكربندي HBM ازطريق دو كانال با پهناي باس ۱۲۸ بيت با منابع بيروني ارتباط برقرار ميكند. بنابراين هر تودهي متشكل از چهار تراشهي DRAM در مجموع پهناي باسي برابر با ۱۰۲۴ بيت دارد كه در مقابل پهناي باس ۳۲ بيتي هر تراشهي GDDR5 بارها بيشتر است. در چنين شرايطي اگر سرعت استاندارد هر تراشهي HBM معادل 1Gb/s باشد، پهناي باند هر تودهي حافظه 128GB/s خواهد بود (دقت شود كه ميزان پهناي باند هر توده مستقل از حجم حافظهي به كار رفته در آن است). طبق رابطهي بيان شده در ابتداي اين مقاله پهناي باند به شكل زير محاسبه ميشود:
128bit*2 channels*1 Gbps*4)/8=128 GB/s)
در نسل دوم حافظههاي HBM يا HBM2 سرعت استاندارد هر تراشهي DRAM به 2Gb/s ميرسد. در اين حالت پهناي باند هر توده ازطريق رابطهي زير به دست ميآيد:
128bit*2 channels*2 Gbps*4)/8=256 GB/s)
لذا پهناي باند هر توده حافظهي HBM2 رقمي معادل ۲۵۶ گيگابايت بر ثانيه است. اگر پيكربندي حافظهاي مشابه كارت گرافيك Radeon VII در دست باشد كه در آن ۴ توده حافظهي HBM2 پردازندهي گرافيكي را روي اينترپوزر احاطه كرده است، در اين شرايط حداكثر پهناي باند بالغ بر يك ترابايت بر ثانيه است كه رقمي بهراستي شگفتانگيز است. اين رقم در مقايسه با پهناي باند حافظهي گرافيكي GDDR6 در كارت گرافيك پرچمدار GeForce RTX 2080 انويديا برابر با ۳۵۱ گيگابايت بر ثانيه، به ميزان چشمگيري بيشتر است. البته بايستي توجه داشت كه ميزان زيادي از اين پهناي باند ممكن است در بيشتر اپليكيشن ها و محيطهاي گرافيكي بلا استفاده بماند كه در ادامهي اين مقاله در مورد آن بيشتر صحبت خواهيم كرد. گفتني است تراشههاي حافظه HBM مورد استفاده در اين كارت گرافيك AMD ساخت شركت هاينكس بوده و تراشهي اينترپوزر را شركت UMC توليد كرده است. AMD حافظههاي HBM2 را در ساخت كارتهاي گرافيك Radeon RX Vega 64 و Radeon VII به كار برده است. در شكل زير، خصوصيات پردازندهي گرافيكي اين دو كارت با يكديگر مقايسه شده است.
مقايسه HBM و HBM2
مهمترين تفاوت نسل اول و دوم حافظههاي HBM در سرعت انتقال دادهي تراشهي DRAM و تعداد تراشههاي قابل انباشت در هر توده است. در استاندارد HBM2 امكان انباشت ۸ تراشهي DRAM در هر توده وجود دارد و چگالي حافظه در هر توده حداكثر ۸ گيگابايت است. اين در حالي است كه در نسل اول اين استاندارد هر تودهي حافظهي HBM شامل ۴ تراشهي DRAM با حداكثر چگالي ۱ گيگابايت به ازاي هر توده است. همانطور كه گفته شد سرعت استاندارد تراشه در حافظهي HBM معادل 1Gb/s و پهناي باند به ازاي هر توده 128GB/s است. سرعت هر تراشهي DRAM در استاندارد نسل دوم HBM2 رقمي معادل 2Gb/s است و پهناي باند قابل دستيابي در تودهي ۸ سطحي ذخيرهسازي (8Hi) بالغ بر 307GB/s است. هماينك از اين حافظهها دركارتهاي گرافيك وركاستيشن با ظرفيت ۳۲ گيگابايت و پهناي باند سرسام آوري بالغ بر ۱.۲ ترابايت بر ثانيه استفاده ميشود.
نسل دوم حافظههاي HBM2 ساخت سامسونگ با نام Aquavolt بهصورت تودههاي ۸ سطحي و با سرعت 2.4Gb/s در ولتاژ ۱.۲ ولت توليد ميشود. براي مقايسه بهتر است بدانيم حداكثر سرعت قابل دستيابي در حافظههاي نسل اول HBM در ولتاژ كاري ۱.۲ ولت، ۱.۶ گيگابيتبرثانيه و در ولتاژ ۱.۳۵ ولت، حداكثر ۲ گيگابيتبرثانيه است؛ بنابراين حافظههاي HBM2 سرعت بسيار بالاتري را ارائه ميدهد. سامسونگ با بهينهسازي اتصالات TSV و پايش حرارتي بهتر تراشههاي HBM2 سطح عملكرد آنها را نسبت به سطوح استاندارد ارتقاء چشمگيري داده است. برايناساس، اين شركت موفق به ساخت تودههاي ۸ سطحي با تراشههاي DRAM با ظرفيت ۸ گيگابايت شده است كه با بيش از پنج هزار TSV به ازاي هر تراشه، بهصورت عمودي با يكديگر در ارتباط هستند. اين شركت بامپهاي بيشتري در فضاي ميان تراشهها براي دفع بهتر حرارت مازاد ايجاد كرده و لايهي محافظي به همين روش در زير تودهي تراشهها ايجاد كرده است.
سامسونگ در كنفرانس اخير فناوري پردازندههاي گرافيكي انويديا (GTC)، حافظههاي پهنباند HBM جديد خود با نام فلشبولت (Flashbolt) را نيز رونمايي كرد. حافظهي فلشبولت اولين محصول صنعتي است كه منطبق بر مشخصههاي استاندارد بهبوديافتهي HBM2E است. HBM2E استانداردي است كه در آن پهناي باند بهازاي هر پين تا ۳۳ درصد افزايش مييابد و از ۲.۴ به ۳.۲ گيگابيتبرثانيه ميرسد. در اين استاندارد، ظرفيت هر تراشهي DRAM حداكثر ۱۶ گيگابيت (۲ گيگابايت) است كه اين ميزان، دوبرابر استاندارد قبلي HBM2 است. بدينترتيب هر تودهي حافظهي فلشبولت با پهناي باس ۱۰۲۴ بيتي و پهناي باندي تا ۴۱۰ گيگابايتبرثانيه به ازاي هر توده و ۱۶ گيگابايت حافظه در پيكربندي ۸ سطحي (8Hi) ارائه خواهد شد.
گفتني است نسل سوم حافظههاي HBM يا HBM3 نيز در آيندهي نزديك عرضه خواهد شد كه ميزان حافظه را در كارتهاي گرافيك به ۶۴ گيگابايت رسانده و پهناي باند در آن به ازاي هر توده به رقم حيرتآور ۵۱۲ گيگابايت بر ثانيه خواهد رسيد. قرار است اين حافظهها در سال ۲۰۲۰ توسط شركتهاي بزرگي مانند سامسونگ به توليد انبوه رسيده است و در كارتهاي گرافيك ردهبالا مورد استفاده قرار گيرد.
مزاياي حافظههاي HBM
شايد اصليترين مزيت حافظههاي HBM در مقايسه با GDDR5 حداكثر نرخ انتقال دادهي بالاتر حافظههاي HBM در توان مصرفي معين است. حافظهي GDDR5 به ازاي هر وات توان مصرفي قادر است 10.66GB/s را انتقال دهد، اين رقم در حافظهي HBM به ازاي هر وات توان مصرفي بيش از 35GB/s است.
حافظهي HBM بيتهاي بسيار بيشتري را نسبت به GDDR5 در فضاي كوچكتري فشرده ميكند. يك گيگابايت حافظهي HBM تنها ۳۵ ميليمتر مربع فضا اشغال ميكند. در مقابل هر تراشهي GDDR5 مساحتي معادل ۶۷۲ ميليمتر مربع دارد. برايناساس، نسلهاي مختلف حافظهي HBM راهكاري بهمراتب فشردهتر را براي استفاده در فضاهاي محدودتر نظير بردهاي گرافيكي فراهم ميكند. بهانديشه متخصصين ميرسد حافظههاي HBM باتوجهبه مزاياي متعددي كه دارد، بهتدريج راه خود را در ساير راهكارهاي سختافزاري نيز باز كند.
تأخير دسترسي به دادهها در حافظههاي HBM نيز كمتر از ديگر حافظههاي گرافيكي است. بهدليل آنكه مسير حركت دادهها بهطور عمودي از ميان توده ميگذرد، ميزان جابهجايي افقي روي هر تراشهي DRAM بسيار كوچك است. با وجود كانالها و بانكهاي بيشتر، حافظههاي HBM رفتار دسترسي تصادفي كاذب بسيار بهتري نيز دارند. همچنين زيرسيستمهاي كلاكينگ در اين حافظههاي پهنباند سادهتر بود و تأخيرهاي كمتري را تحميل ميكند.
مزيت ديگر حافظهي HBM اين است كه فضاي Die كمتري را دركنار پردازندهي گرافيكي ميزبان در مقايسه با GDDR اشغال ميكند. رابطهاي فيزيكي (PHY) روي تراشه سادهتر هستند و باعث حفظ فضاي بيشتري ميشود. اتصالات خارجي اين تراشهها در اينترپوزر با گامهاي بسيار ظريفتري نسبت به يك Substrate سنتي ارگانيك چيده شده؛ چرا كه اينترپوزر يك تراشهي فشردهي بسيار چگال است. با هرچه ظريفتر شدن رشتههاي اتصال در يك فضاي فشردهي اينچنيني، تعداد بسيار بيشتري از اين اتصالات قابل طراحي و تعبيه است.
GDDR6 يا HBM2؟
در مقايسهي دو نوع حافظهي GDDR6 و HBM2 بيش از آنكه بهدنبال برتري يكي در سطح عملكرد خالص نسبت به ديگري باشيم، بايستي بهدنبال دادوستدهاي هر طراحي كه تيم مهندسي در پي اجراي آن بوده است، باشيم. همانطور كه گفته شد، پهناي باند حافظهي HBM در مقايسه با استاندارد GDDR5 يك مزيت غيرقابلانكار به شمار ميرود. از آنجايي كه در آخرين نسل حافظههاي GDDR يا GDDR6 پهناي باند حافظه براي گيمينگ و محيطهاي گرافيكي در سطح مطلوبي است، مقايسهي آخرين استانداردهاي GDDR و HBM از انديشه متخصصين ميزان پهناي باند در درجهي كمتري از اهميت قرار دارد. باوجوداين، حافظهي HBM2 از وجوهي نسبت به GDDR6 برتري و رجحان دارد.
اگرچه سرعت جابجايي داده به ازاي هر پين در حافظههاي GDDR6 با رقمي معادل ۱۴ گيگابيتبرثانيه نسبت به حافظهي HBM2 با سرعتي معادل ۲ گيگابيتبرثانيه بسيار بيشتر است، اما بايستي در انديشه متخصصين داشت كه تعداد پينهاي حافظهي GDDR6 بسيار كمتر از رقيب پهنباند خود است. به اين مورد بايستي مصرف توان كمتر حافظههاي HBM2 را نيز اضافه كرد.
باوجود مزايايي كه استفاده از حافظهي HBM2 در كارتهاي گرافيك به همراه دارد، تمايل زيادي به استفاده از اين نوع حافظهها در ميان قطعهسازان اصلي ديده نميشود. پيچيدگيهاي فرايند طراحي و هزينهي بالاتر اين حافظهها مانعِ استفاده از آنها در كارتهاي پايينرده ميشود. حافظههاي HBM2 بيشتر در جايي متخصصد دارند كه نياز به پهناي باند بسيار بالا است و درعينحال، توان مصرفي و هزينههاي مرتبط با آن با محدوديتهايي روبهرو باشد. پردازندههاي گرافيكي مركز داده كه بر محاسبات هوش مصنوعي متمركز است يا تراشههاي محاسباتي بسيار چگال كه در كلاسترهاي HPC كار ميكند، نمونههايي از اين متخصصدها است.
استفاده از حافظههاي HBM2 بار كاري RAM سيستم را در محاسبات گرافيكي كاهش ميدهد و بدين ترتيب مقدار زيادي از ظرفيت سيستم بلااستفاده ميماند. به انديشه متخصصين ميرسد كه حافظههاي HBM2 با وجود حافظههاي پهن باند و ارزان GDDR6 چندان در سختافزارهاي مصرفي مورد استقبال قرار نگيرد.
شواهدي وجود دارد كه AMD قصد دارد در كارتهاي گرافيك ۷ نانومتري Navi از حافظهي گرافيكي GDDR6 استفاده كند. بنابراين با وجود اينكه AMD در ساخت كارت گرافيك ۷ نانومتري پيشين خود يعني Radeon VII از ۱۶ گيگابايت حافظهي HBM2 استفاده كرد، ممكن است در توليد كارتهاي گيمينگ ردهبالاي آيندهي خود، استفاده از اين نوع حافظه را متوقف كند.
هم انديشي ها