پردازنده گرافیکی رایگان متن باز بر پایه‌ی RISC-V در دست ساخت است

دوشنبه ۱۳ بهمن ۱۳۹۹ - ۱۴:۰۰
مطالعه 3 دقیقه
گروهی به‌ نام RV64X در حال توسعه‌ی پردازنده‌ی گرافیکی متن باز بر پایه‌ی معماری RISC-V هستند که البته تولید آن قطعا چند سال به ‌طول می‌انجامد.
تبلیغات

دوران پردازنده‌های گرافیکی متن باز (Open Source) احتمالا در آینده‌ای نه‌چندان دور از راه خواهد رسید. براساس گزارش تامز هاردور، معماری RISC-V به شرکت‌های کوچک امکان می‌دهد بدون پرداخت هزینه‌‌ای مستقل، پردازنده‌ها و ریزکنترلرهایی برای برخی اهداف شخص توسعه بدهند.

در حال حاضر چندین بلوک ساخت IP رایگان و تجاری برای سیستم-روی-چیپ‌ (SoC) مبتنی‌ بر معماری RISC-V در دسترس شرکت‌ها قرار دارند؛ اما در بین آن‌ها بلوکی برای ساخت پردازنده‌ی گرافیکی دیده نمی‌شود. ظاهرا این شرایط قرار است تا چند سال دیگر دست‌خوش تغییر شود؛ زیرا گروهی از افراد حرفه‌ای به‌تازگی فرایند توسعه‌ی یک ابزار متن باز را شروع کرده‌اند که مبتنی‌ بر معماری RISC-V است و از طریق آن امکان ساخت پردازنده‌ی گرافیکی فراهم می‌شود.

پردازنده‌های گرافیکی مبتنی ‌بر RISC-V هیچ هدفی برای مقابله با پردازنده‌های گرافیکی ساخته‌شده‌ توسط شرکت‌هایی مثل ای ام دی (AMD)، انویدیا، ایمجینیشن (Imagination) و آرم (ARM) در آینده‌ی قابل ‌پیش‌بینی ندارند. به ‌جای رقابت ‌با این شرکت‌ها، افراد مذکور در تلاش هستند واحد CPU-GPU ISA را به ‌شکل مقیاس‌پذیر بسازند؛ این واحد می‌تواند از ریزکنترلرهای ساده تا پردازنده‌های گرافیکی پیشرفته‌ای که از فناوری‌هایی مثل رهگیری پرتو (Ray Traing)، یادگیری ماشین و بینایی رایانه‌ای پشتیبانی می‌کنند پوشش بدهد. 

در سطح بالا، پردازنده‌های گرافیکی طراحی‌شده توسط RV64X از هسته‌ی اصلی RV32I یا RV64I استفاده می‌کنند که می‌توانند از دستورالعمل‌های جدید مبتنی بر مجموعه ‌دستورالعمل‌های برداری (VIS) پشتیبانی کنند. در ابتدا پردازنده‌ی گرافیکی از هسته‌ی RV32I استفاده خواهد کرد؛ اما در نهایت سراغ استفاده از RV64I خواهد رفت؛ زیرا هدف نهایی پروژه ساخت پردازنده‌ای گرافیکی با بهره‌وری زیاد است که بتوان به‌صورت سفارشی آن را برنامه‌ریزی کرد و توسعه داد. 

برای پردازش درست محتوای گرافیکی، هسته‌ی اصلی RISC-V قرار است از مشخصه‌های مدرن گرافیکی و مشخصه‌های یادگیری ماشین پشتیبانی کند. این هسته‌ همچنین سراغ پشتیبانی از بردارها (RV32-V) و ماتریس‌ها (۲×۲، ۳×۳ و ۴×۴) و دستورالعمل‌های بردار/ریاضی، دستورالعمل‌های پیکسل/بافت، دستورالعمل‌های بافر فریم، مجموعه‌ای تخصصی از رجیستر (شامل رجیسترهای برداری ۱۳۶ بیت قابل ‌پیکربندی) و چندین دستورالعمل مختص ‌به پردازش‌های گرافیکی خواهد رفت.

در ابتدا هسته‌ی گرافیکی توانایی پشتیبانی از Vulkan API خواهد داشت؛ اما گروهی که مشغول ساخت پردازنده‌ی گرافیکی هستند، تلاش می‌کنند آن را با دایرکت ایکس (سایه‌زن مدل پنج) و OpenGL/ES سازگار کنند. 

گروه RV64X می‌گوید این پردازنده‌ی گرافیکی قرار است در دستورالعمل‌های ریز (میکروکد) دارای کدهای گرافیکی استاندارد باشد؛ اما میزبان رسترایزرهای (Rasterizer) سفارشی خواهد شد تا بتواند از قابلیت‌هایی پشتیبانی کند که پردازنده‌های گرافیکی تجاری امروزی توانایی پشتیبانی از آن‌ها را ندارند. 

گروه RV64X مدل مرجع RV32X را معرفی کرده است که از یک واحد بافتی سخت‌افزاری، یک واحد با عملکرد خاص، یک حافظه‌ی کش سطح اول ۳۲ کیلوبایتی، یک کش 8K uCode SRAM و چهار DSPs/ALUs سی ‌و ‌دو بیتی استفاده می‌کند و می‌تواند داده‌های FP32 و INT32 را پردازش کند. طراحی مرجع به‌ احتمال زیاد در یک مدار مجتمع دیجیتال برنامه‌پذیر (FPGA) پیاده‌سازی خواهد شد. 

پروژه‌ی RV64X در مراحل اولیه‌ی توسعه قرار دارد و نهایی‌ شدن مشخصات آن و سپس ظهور سخت‌افزارها حداقل چند سال به ‌طول می‌انجامد. مشخصاتی که به آن‌ها اشاره کردیم ممکن است درادامه‌ی مسیر، به ‌خاطر برخی عوامل تغییر پیدا کنند. به ‌همین دلیل خیلی زود است که بخواهیم درباره‌ی قدرت پردازشی این پردازنده‌ی گرافیکی صحبت کنیم. 

تصویر اصلی مقاله ارتباطی به پردازنده‌ی گرافیکی گروه RV64X ندارد. 

تبلیغات
داغ‌ترین مطالب روز

نظرات

تبلیغات