بررسی Milk-V Jupiter 2؛ نخستین کامپیوتر تک‌برد با پردازنده‌ی RISC-V سازگار با استاندارد RVA23

معماری متن‌باز RISC-V که این روزها به‌عنوان رقیبی بالقوه برای ARM و x86 مطرح شده، توجه اغلب طراحان پردازنده را به خود جلب کرده است. برد Milk-V Jupiter 2 یکی از نخستین کامپیوترهای تک‌بردی (SBC) است که با یک تراشه‌ی مبتنی‌بر معماری ریسک پنج سازگار با پروفایل RVA23 ساخته شده است.

پروفایل RVA23 چیست و چرا اهمیت دارد

RVA23 یک استاندارد برای پردازنده‌های RISC-V است که تضمین می‌کند تراشه‌های مختلف بتوانند دقیقاً یک نرم‌افزار واحد را بدون نیاز به کامپایل جداگانه برای هر تراشه اجرا کنند. تا پیش از این، هر سازنده‌ی تراشه‌ی RISC-V می‌توانست ترکیب متفاوتی از قابلیت‌های اختیاری این معماری (مانند واحدهای برداری یا مجازی‌سازی) را پیاده‌سازی کند. همین تنوع، ساخت یک توزیع لینوکس یا سیستم‌عامل واحد برای همه‌ی تراشه‌های RISC-V را تقریباً غیرممکن کرده بود.

توزیع‌های تازه‌ی لینوکس، از جمله نسخه‌های جدید اوبونتو، اکنون پشتیبانی از پروفایل RVA23 (که شامل واحد پردازش برداری RVV 1.0 و قابلیت‌های مجازی‌سازی سخت‌افزاری است) را برای اجرا الزامی کرده‌اند. تراشه‌ی به‌کاررفته در برد Milk-V Jupiter 2 یکی از نخستین محصولات تجاری محسوب می‌شود که این استاندارد را به‌طور کامل پیاده‌سازی کرده است.

معماری تراشه‌ی SpacemiT K3

قلب Jupiter 2، تراشه‌ی K3 ساخت شرکت چینی اسپیس‌مایت (SpacemiT) است. این تراشه هشت هسته‌ی پردازشی X100 با فرکانس تا ۲.۴ گیگاهرتز دارد که به‌طور کامل با پروفایل RVA23 سازگارند و طبق آزمون‌های اولیه، عملکردی نزدیک به تراشه‌ی محبوب Rockchip RK3588 (به کار رفته در رزبری پای ۵) در پردازش چندهسته‌ای ارائه می‌دهند. در کنار این هسته‌ها، هشت هسته‌ی دیگر به نام A100 برای شتاب‌دهی هوش مصنوعی و بینایی ماشین تعبیه شده‌اند که توان پردازشی تا ۶۰ ترا عملیات بر ثانیه (TOPS) در دقت INT4 ارائه می‌دهند. طبق گزارش سازنده، این توان برای اجرای مدل‌های زبانی بزرگ تا ۳۰ میلیارد پارامتر کافی است.

پردازش گرافیکی این تراشه بر عهده‌ی واحد Imagination BXM-4-64-MC1 است که از Vulkan 1.3، OpenCL 3.0 و OpenGL ES 3.2 پشتیبانی می‌کند، و واحد پردازش ویدیوی اختصاصی آن، دیکد فرمت‌های H.265/H.264/VP9 تا وضوح ۴K در ۱۲۰ فریم بر ثانیه و رمزگذاری تا ۴K در ۶۰ فریم را ممکن می‌سازد. علاوه بر این، پشتیبانی از RV Hypervisor 1.0 و واحد مدیریت حافظه‌ی ورودی/خروجی (IOMMU) هم مجازی‌سازی سخت‌افزاری کامل CPU، حافظه و ورودی/خروجی را روی این تراشه فراهم می‌کند.

برد SpacemiT K3 RVA23 در فرم‌فاکتور مینی‌آی‌تی‌ایکس
نمای برد مرجع SpacemiT K3 با پروفایل RVA23

طراحی فیزیکی و اتصالات برد

Jupiter 2 در فرم‌فاکتور فشرده‌ی Pico-ITX ساخته شده و در نسخه‌های مختلف با ۸، ۱۶ یا ۳۲ گیگابایت رم LPDDR5 و ۱۲۸ یا ۲۵۶ گیگابایت حافظه‌ی داخلی UFS 2.2 عرضه می‌شود. یک اسلات M.2 با کلید M هم برای افزودن SSD از نوع NVMe (با گذرگاه PCIe نسل سوم و چهار کانال داده) در نظر گرفته شده که در صورت استفاده‌ی هم‌زمان از اسلات دیگر برای ماژول ۴G/5G، به دو خط کاهش می‌یابد.

از نظر شبکه، این برد به یک پورت SFP+ برای اتصال اترنت ۱۰ گیگابیتی نوری یا مسی مجهز است؛ ویژگی‌ای که به‌ندرت در کامپیوترهای تک‌برد دیده می‌شود. در کنار آن، یک پورت اترنت گیگابیتی معمولی، ماژول وای‌فای ۶ و بلوتوث ۵.۲، و یک اسلات نانو-سیم برای اتصال ۴G یا ۵G هم روی برد قرار دارند.

یکی از تصمیم‌های طراحی قابل‌بحث این برد، تمرکز کامل خروجی تصویر روی یک پورت USB-C با قابلیت DisplayPort Alt Mode (تا وضوح ۴K در ۶۰ فریم) است؛ به این معنا که همان پورتی که معمولاً برای تغذیه‌ی برق استفاده می‌شود، تنها راه اتصال مستقیم به یک نمایشگر هم هست، مگر آنکه از یک هاب USB-C میانی استفاده شود. پورت USB-C دوم هم به‌طور اختصاصی برای فلش‌کردن سیستم‌عامل روی حافظه‌ی UFS و اتصال داده‌ی استاندارد در نظر گرفته شده است. چهار پورت USB 2.0 از نوع A و یک رابط eDP برای اتصال مستقیم پنل‌های نمایشگر هم از دیگر گزینه‌های این برد به شمار می‌روند.

برای کاربردهای صنعتی و رباتیک، این برد دو هدر FPC اختصاصی به نام RTI دارد که از پروتکل‌های EtherCAT و CAN-FD برای کنترل حرکتی با تأخیر در حد میکروثانیه پشتیبانی می‌کنند؛ در کنار آن‌ها، رابط‌های UART و PWM و SPI و I2C هم برای اتصال حسگرها و ماژول‌های جانبی در دسترس‌اند. تغذیه‌ی این برد تا ۶۵ وات، از طریق یک کانکتور ATX دوپین با ورودی ۱۲ ولت یا از طریق تحویل توان USB (USB PD) روی پورت USB-C ممکن است.

نمودار بلوکی تراشه‌ی SpacemiT K3
نمودار بلوکی داخلی تراشه‌ی SpacemiT K3

تجربه‌ی نرم‌افزاری Jupiter 2؛ از راه‌اندازی تا استفاده‌ی روزمره

نسخه‌ی از پیش نصب‌شده روی این برد، سیستم‌عامل بیان‌بو (Bianbu) است؛ توزیعی مبتنی بر اوبونتو و بهینه‌شده برای پردازنده‌های RISC-V.

راه‌اندازی نخستین این سیستم تجربه‌ای نسبتاً روان دارد. محیط دسکتاپ این سیستم LXQt است که روی سامانه‌ی پنجره‌ای Wayland و هسته‌ی لینوکس ۶.۱۸ اجرا می‌شود. برنامه‌های از پیش نصب‌شده شامل مرورگر کرومیوم، بسته‌ی نرم‌افزاری LibreOffice، پخش‌کننده‌ی ویدیو VLC و یک برنامه‌ی وبکم هستند. باز‌شدن LibreOffice Writer به‌اندازه‌ی کافی سریع است تا استفاده از این سیستم برای کارهای اداری ساده را واقع‌بینانه جلوه دهد.

نکته‌ی قابل‌توجه، سطح شتاب‌دهی گرافیکی سخت‌افزاری در مرورگر کرومیوم روی این سیستم است؛ رمزگشایی ویدیو و بخش زیادی از پردازش گرافیکی وب، به‌طور کامل روی سخت‌افزار انجام می‌شود. در آزمون دموی WebGL Aquarium، در حالت نمایش همزمان ۱۰۰۰ ماهی، برد Milk-V Jupiter 2 نرخ فریم را در سقف ۵۰ فریم بر ثانیه (محدودیت نرخ تازه‌سازی نمایشگر) نگه می‌دارد و حتی با ۵۰۰۰ ماهی هم بالای ۳۰ فریم بر ثانیه باقی می‌ماند. پخش ویدیوی ۱۰۸۰p و حتی ۴K از یوتیوب هم بدون افت فریم قابل‌توجهی انجام می‌شود، حتی هنگام حرکت‌دادن نشانگر ماوس برای دشوارتر کردن آزمون. سرعت خواندن حافظه‌ی داخلی UFS هم در آزمون ذخیره‌سازی، عدد ۴۸۰ مگابایت بر ثانیه را ثبت می‌کند؛ رقمی قابل‌قبول برای یک حافظه‌ی داخلی روی برد توسعه.

نتایج آزمون‌های عملکرد

در آزمون Geekbench (که در زمان این بررسی هنوز نسخه‌ی پیش‌نمایش برای RISC-V را ارائه می‌داد)، این برد امتیاز ۳۴۲ در تک‌هسته و ۱۷۰۳ در چندهسته کسب می‌کند؛ جهشی چشمگیر نسبت به نسل‌های پیشین بردهای RISC-V، هرچند هنوز پایین‌تر از رزبری‌پای ۵ یا یک کامپیوتر مبتنی بر پردازنده‌ی اینتل N100 قرار می‌گیرد.

نتیجه‌ی جالب‌تر در آزمون ردیابی پرتو (Ray Tracing) مرورگرمحور به دست می‌آید، جایی که Jupiter 2 با کسب امتیاز حدود ۵۲۸۴، از رزبری‌پای ۵ پیشی می‌گیرد؛ هرچند همچنان با فاصله از یک سیستم N100 عقب می‌ماند. در آزمون فیلتر گدازه‌ی نرم‌افزار گیمپ (GIMP) روی تصویری با وضوح ۱۹۲۰ در ۱۰۸۰، این برد در ۸.۳ ثانیه کار را به پایان می‌رساند؛ نتیجه‌ای که به‌مراتب بهتر از بردهای RISC-V نسل قبل است، اما هنوز به سطح رزبری‌پای ۵ یا N100 نمی‌رسد.

از نظر مصرف انرژی، این برد در حالت بی‌کاری حدود ۱۴.۴ وات و در بار کامل روی هر هشت هسته‌ی X100 (با ابزار Silverbench) حدود ۲۰.۵ وات مصرف می‌کند. آزمون سرعت حافظه‌ی NVMe روی اسلات M.2 هم عدد چشمگیر ۲۲۰۰ مگابایت بر ثانیه را نشان می‌دهد. شاید مهم‌تر از همه‌ی این اعداد، نصب و اجرای موفق نرم‌افزار ویرایش ویدیوی Kdenlive روی این سیستم باشد؛ نرم‌افزاری که تا پیش از این، روی اغلب بردهای RISC-V دیگر به‌درستی قابل‌استفاده نبوده است. توانایی اجرای این‌چنین نرم‌افزار سنگینی، به‌روشنی نشان می‌دهد پردازش دسکتاپ روی معماری RISC-V، دیگر یک رویای دور نیست.

بازار هدف و قیمت Jupiter 2

باید تأکید کرد که Jupiter 2 سخت‌افزاری برای پیشگامان RISC-V با کاربردهای صنعتی به‌شمار می‌رود و محصول مصرفی آماده‌ای برای بازار عمومی نیست. قیمت این خانواده بسته به منطقه، پیکربندی حافظه، و وجود یا نبود قاب و خنک‌کننده، معمولاً میان ۲۰۰ تا ۳۳۰ دلار متغیر است؛ محدوده‌ای که نزدیک به قیمت کیت‌های توسعه‌ی NVIDIA Jetson Orin Nano با معماری ARM و اکوسیستم نرم‌افزاری به‌مراتب پخته‌تر (از جمله CUDA) قرار می‌گیرد.

جامعه‌ی کاربران RISC-V درباره‌ی این نکته اتفاق‌نظر دارند که در وضعیت فعلی، اگر هدف صرفاً رایانش عمومی یا کار با هوش مصنوعی باشد، انتخاب یک برد ARM یا x86 هنوز منطقی‌تر است. با این حال، ارزش واقعی این برد در جای دیگری نهفته است؛ اثبات اینکه سخت‌افزار RISC-V در حال رسیدن به نقطه‌ای است که کاربردهای واقعی دسکتاپ و لبه، از جمله رباتیک صنعتی با پشتیبانی EtherCAT و CAN-FD، روی آن عملی خواهد بود. شرکت‌های دیگری مانند بنانا‌پای (Banana Pi) و سی‌پید (Sipeed) هم نسخه‌های تقریباً یکسانی از همین طراحی مرجع را عرضه کرده‌اند که نشان می‌دهد این تراشه، فراتر از یک محصول تک‌شرکتی، به گزینه‌ای مرجع برای کل اکوسیستم RISC-V تبدیل شده است.


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *