Arsitektur GPU Open-Source Berbasis RISC-V (RV64X)
Sebelompok insinyur sedang mengembangkan seperangkat instruksi grafis baru yang dioptimalkan untuk rendering 3D dan pemrosesan media. Instruksi ini memperluas basis vektor ISA RISC-V dengan tipe data khusus grafis dan ekstensi berlapis, yang mencakup vektor, matematika trancenden, manipulasi piksel, tekstur, dan operasi buffer Z/frame. Proposal, yang disebut RV64X, menggunakan instruksi 64-bit untuk menyediakan ISA CPU-GPU terpadu yang kuat.
Mengapa Sekarang?
GPU komersial unggul dalam beban kerja mainstream tetapi seringkali kurang untuk tugas-tugas niche seperti pemotongan frustum 3D dua fase, HPC yang dapat disesuaikan (misalnya, FFT profunditas bit arbitrary), dan SLAM hardware. Standar terbuka yang didorong komunitas dapat mengurangi siklus pengembangan 10–20 tahun, memfasilitasi verifikasi lintas, dan menyediakan solusi fleksibel serta dapat diskalakan untuk berbagai aplikasi yang lebih luas.
Visi tim adalah inti yang kompak dan efisien area yang menawarkan pemrograman kustom serta ekstensi. Ini akan tersedia sebagai IP open-source gratis untuk target FPGA dan ASIC, dengan target awal mikrokontroler daya rendah. Desain akan mengikuti standar Vulkan, dengan dukungan masa depan untuk OpenGL, DirectX, dan API lainnya.
Hardware akhir akan menjadi inti RISC-V dengan unit fungsional GPU terintegrasi. Bagi programmer, ini menyajikan satu himpunan instruksi 64-bit; opcode skalar diapit dengan konteks vektor, memungkinkan kompiler menghasilkan instruksi SIMD di balik layar. Arsitektur mendukung variabel issue, SIMD bersyarat, front-end vektor, pengecualian presisi, bayang-bayang cabang, dan lebih banyak. Tidak diperlukan lapisan RPC/IPC terpisah untuk komunikasi CPU-GPU. Ini akan mendukung titik tetap 16-bit (ideal untuk FPGA) dan floating point 32-bit (ASIC atau FPGA).
Desain ini memanfaatkan format Vblock dari upaya Libre GPU:
- Struktur VLIW seperti bit yang menandai instruksi skalar dengan konteks register
- Sub-blok menyediakan panjang vektor, swizzling, override lebar, dan predikasi
- Tidak ada opcode vektor terpadu; mode vektor diaktifkan ketika opcode skalar merujuk register yang ditandai vektor
- Eksekusi for-loop tingkat hardware untuk beberapa operasi skalar kontigu, diimplementasikan sebagai SIMD, multi-issue, atau eksekusi tunggal tergantung pada pilihan vendor
Tipe data yang didukung mencakup skalar fixed dan floating point 8-, 16-, 24-, dan 32-bit, serta fungsi trancenden (sincos, atan, pow, exp, log, rcp, rsq, sqrt, dll.). Vektor RV32-V mendukung operasi 2- hingga 4-elemen dengan elemen 8-, 16-, atau 32-bit, dan instruksi khusus untuk pipeline grafis 3D: titik (XYZW), piksel (RGBA), texel (UVW), dan koefisien material.
- Titik XYZW (fixed dan float 64- dan 128-bit)
- Piksel RGBA (8-, 16-, 24-, dan 32-bit)
- Texel UVW (8-, 16-bit per komponen)
- Parameter material (Ia, ka, Id, kd, Is, ks…)
Dukungan matriks 2×2, 3×3, dan 4×4 asli disertakan, disimpan sebagai 4×4 untuk kesederhanaan.
Manfaat dari ISA CPU-GPU yang terpadu mencakup pipeline grafis yang didorong mikrokode, dukungan shader kustom, ekstensi ray-tracing, dan dukungan vektor integer 8-bit untuk beban kerja AI dan pembelajaran mesin.
Rasterizer kustom—seperti permukaan berbasis spline, patch subdivisi, dan teselator khusus—dapat diimplementasikan. Arsitektur sepenuhnya dapat dikonfigurasi, memungkinkan tahap pipeline yang ditentukan pengguna, operasi geometri/piksel/buffer-frame, dan instancing.

Diagram blok RV64X
Implementasi referensi akan mencakup:
- Cache SRAM Instruksi/Data 32 KB
- SRAM Mikrokode 8 KB
- Decoder Instruksi Dual-Fungsi
- Dukungan hardwired RV32V dan RV64X
- Decoder mikrokode untuk ekstensi kustom
- ALU Vektor Kuad (fixed/float 32-bit)
- Berkas Register 136-bit (1 K elemen)
- Unit Fungsi Khusus
- Unit Tekstur
- Buffer Frame Lokal yang Dapat Dikonfigurasi
Skalabilitas tertanam dalam arsitektur, seperti ditunjukkan di bawah.

Desain terukur RV64X
Inovasi kunci mencakup ISA CPU-GPU terpadu, register yang dapat dikonfigurasi untuk tipe data kustom, dan mikro-kode berbasis SRAM yang ditentukan pengguna untuk ekstensi spesifik aplikasi—tahap rasterizer kustom, ray tracing, pembelajaran mesin, dan visi komputer.
Inti yang sama dapat berfungsi sebagai mikrokontroler grafis mandiri atau unit shader terukur, mendukung implementasi FPGA-native dan ASIC.
Mengapa Grafis Open-Source?
GPU saat ini terutama menargetkan pasar high-end—gaming, HFT, visi, dan ML—meninggalkan celah untuk perangkat mainstream seperti kisok, papan iklan, kasino gaming, mainan, robotika, perangkat wearable, HMI industri, infotainment, dan kluster otomotif. Intis grafis terukur dan terbuka untuk RISC-V akan mengurangi beban multi-bahasa dan mendorong inovasi di seluruh domain ini.
Langkah Selanjutnya
Spesifikasi masih awal dan berkembang. Tim berencana meluncurkan forum diskusi, membangun simulator himpunan instruksi, dan mengembangkan prototipe FPGA menggunakan IP open-source. Benchmark dan demo sedang berlangsung. Pengembang yang tertarik harus menghubungi Atif Zafar untuk bergabung dalam upaya ini.
Secara paralel, inisiatif GPU 3D Libre-RISC-V bertujuan menciptakan SoC hybrid CPU/VPU/GPU—bukan GPU terpadu—menyediakan prosesor lengkap berlisensi Libre untuk berbagai aplikasi terbenam.
Konteks Industri
Ekosistem GPU saat ini mencakup lebih dari sepuluh pemain besar: Apple, Qualcomm, AMD, Nvidia, Arm, Intel, Think-Silicon, DMP, Jingjia Micro, VeriSilicon, Imagination Technologies, dan komunitas Grafis RISC-V yang berkembang.
Kasus penggunaan potensial untuk GPU gratis dan fleksibel melampaui grafis, mencakup penambangan cryptocurrency dan beban komputasi berat lainnya.
Pengadopsi kemungkinan akan memerlukan setidaknya dua tahun. Xilinx, yang saat ini mengintegrasikan Mali Arm di baris Zynq-nya, dan beberapa vendor China adalah early adopter yang wajar.
► Artikel ini awalnya dipubliker di situs kami yang serupa, EE Times.
Jon Peddie, pionir industri grafis dan presiden Jon Peddie Research.
Untuk konten terbenam lainnya, langganan newsletter harian Embedded.