Membongkar Ekstensi Kustom dalam Desain SoC RISC-V
Pembicara tentang konfigurasi prosesor dasar atau menambahkan ekstensi kustom untuk menyelesaikan trade-off desain hardware-perangkat lunak dalam sistem-on-chip (SoC) telah lama menjadi tonggak nilai proposisi komunitas RISC-V. Artikel terbaru—seperti Panduan untuk mempercepat aplikasi dengan instruksi kustom RISC-V yang tepat—menyoroti manfaat nyata dari perluasan ISA sumber terbuka.
SoC AI dan pembelajaran mesin saat ini dibatasi oleh daya, kinerja, dan luas die, menjadikan ekstensi ISA sebagai tuas yang sering diabaikan tetapi kuat untuk memenuhi tuntutan ini.
Webinar terbaru Quantum Leap Solutions, berjudul Fleksibilitas RISC-V – Kekuatan Ekstensi Kustom, bertujuan untuk membongkar bagaimana ISA RISC-V dapat disesuaikan untuk desain SoC modern. Sesi ini menarik lebih dari 100 peserta dan menampilkan panel para ahli industri.
Diskusi berfokus pada bagaimana ISA yang dimodifikasi dapat mempercepat aplikasi yang muncul dan bagaimana desainer mengevaluasi ekstensi untuk arsitektur RISC-V.
Dimooderasi oleh Mike Ingster, pendiri dan presidente Quantum Leap Solutions, para panelis adalah:
John Min, Direktur FAE di Andes Technology
Larry Lapides, Vice President Penjualan di Imperas Software
Taek Nam, Senior Application Engineer di Mentor
Mike Ingster: Mengapa RISC-V adalah opsi yang lebih baik untuk aplikasi AI dan pembelajaran mesin dibandingkan arsitektur CPU lainnya?
John Min: RISC-V dirancang saat AI menjadi mainstream, dan set instruksi vektor-nya dirancang dengan beban kerja AI dan VR di pikiran.
Larry Lapides: Dalam sistem AI dengan array heterogen prosesor—sebuah arsitektur yang telah kami lihat diimplementasikan berkali-kali—seorang desainer dapat menggabungkan inti skalar dan vektor. RISC-V memungkinkan Anda untuk menghilangkan fitur yang tidak diperlukan sambil mempertahankan instruksi vektor, memberikan PPA (harga-kinerja-luas) yang superior.
Ingster: Dapatkah inti RISC-V dengan ekstensi vektor juga diperluas dengan instruksi kustom?
Min: Ya. Contoh yang umum adalah inti vektor yang menggabungkan ekstensi pelanggan untuk menambahkan buffer tambahan, mencegah stalls karena kekurangan data.
Lapides: Baik Imperas maupun Andes memiliki pelanggan yang telah menerapkan fungsi kustom semacam itu untuk meningkatkan kinerja.
Ingster: Dalam array multiprosesor, apakah semua CPU perlu konfigurasi yang sama, atau dapat memiliki instruksi kustom yang berbeda?
Lapides: Prosesor heterogen adalah hal yang umum. Instruksi kustom dapat bervariasi di seluruh inti, dan bahkan set instruksi dasar dapat berbeda—satu inti mungkin mendukung instruksi vektor sementara inti lainnya tetap skalar, yang memungkinkan eksekusi bergandengan.
Min: Dalam array multiplexed, baik CPU maupun simulator dapat heterogen, yang memungkinkan simulasi multi-core yang efisien.
Ingster: Apakah Anda melihat prosesor RISC-V kelas server di pasar?
Min: Jalur jelas: frekuensi yang lebih tinggi, pipeline yang lebih lebar, eksekusi out-of-order, dan multi-core yang sangat paralel. Elemen-elemen ini sudah muncul dalam inti RISC-V generasi berikutnya untuk beban kerja AI enterprise.
Lapides: Secara historis, RISC-V dimulai dengan SoC konsep bukti 32- dan 64-bit. Sekitar dua tahun lalu kami melihat lonjakan SoC berfokus keamanan dan IoT. Hari ini kami menyaksikan prosesor kelas aplikasi—inti RISC-V 64-bit yang menjalankan RTOS asli dan pipeline out-of-order awal. Chip kelas server pertama diharapkan dalam dua hingga tiga tahun mendatang.
Ingster: Dapatkah ekstensi kustom menyediakan keamanan perangkat dan manajemen siklus hidup?
Min: Tentu saja. Sebuah instruksi kustom dapat melakukan pemeriksaan runtime untuk menegakkan kompatibilitas perangkat lunak, atau port memori khusus dapat mengisolasi data kritis, meningkatkan keamanan dan kontrol siklus hidup.
Taek Nam: Desainer juga dapat memanfaatkan IP analitik tertanam Tessent untuk menyematkan keamanan dan manajemen siklus hidup secara langsung ke dalam SoC dengan ekstensi kustom.
Ingster: Mengapa pendekatan RISC-V terhadap instruksi kustom berbeda dari vendor lain seperti ARC atau Tensilica?
Min: Mekanisme ekstensi formal RISC-V memungkinkan instruksi kustom untuk secara formal diintegrasikan ke dalam standar, memberikan jalur yang jelas untuk adopsi yang lebih luas.
Ingster: Bagaimana seorang pengembang dapat berbagi instruksi kustom dengan pelanggan atau mitra?
Min: Tiga opsi ada: menjadikannya proprietary, mengajukannya ke RISC-V International untuk disertakan (misalnya, ekstensi DSP Andes yang menjadi P-extensions), atau berbagi intrinsics dan file header sambil melindungi implementasi di bawah NDA.
Lapides: Model ekstensi kustom dapat ditawarkan sebagai sumber terbuka atau biner, atau sebagai model prosesor yang akurat instruksi, memfasilitasi pengembangan perangkat lunak pre-silicon sejak awal.
Ingster: Apakah ekstensi kustom akan menyebabkan masalah kompatibilitas dalam komunitas RISC-V?
Min: Ekstensi proprietary tetap terisolasi; jika sebuah ekstensi mendapatkan penggunaan yang luas, dapat diajukan untuk disertakan ke dalam ISA dasar, mencegah fragmentasi.
Ingster: Apakah prosesor vektor didukung oleh kompiler dalam versinya saat ini?
Min: Ekstensi Vektor RISC-V 0.8 stabil dan didukung oleh GCC dan LLVM. Dukungan kompiler akhir akan mengikuti finalisasi spesifikasi resmi.
Ingster: Bagaimana ekstensi kustom didukung dalam rantai alat perangkat lunak?
Lapides: Desainer menyematkan ekstensi ke dalam model RISC-V mereka, menghasilkan simulator set instruksi untuk pengembangan perangkat lunak. GCC dan LLVM dapat diperluas untuk mendukung instruksi baru, dan desainer dapat memberikan implementasi makro.
Ingster: Bagaimana kompiler dibuat sadar akan instruksi kustom yang baru dibuat?
Lapides: Tim perangkat lunak harus mengimplementasikan instruksi di backend kompiler.
Min: Alternatifnya, treat instruksi seperti perpustakaan: berikan file header dan implementasi proprietary opsional, meminimalkan upaya pengembangan sambil masih mendapatkan peningkatan kinerja.
Ingster: Sistem operasi apa yang didukung pada RISC-V, dan apakah ada dukungan untuk Android?
Lapides: Linux, RTOS Zephyr, dan sistem operasi real-time lainnya adalah target utama. Android belum diverifikasi secara resmi pada RISC-V, tetapi upaya porting sedang berlangsung. Situs web RISC-V International mencantumkan semua OS yang didukung.
Ingster: Bagaimana ekstensi kustom diverifikasi?
Lapides: Verifikasi melibatkan penambahan ekstensi ke dalam RTL dan model prosesor. Simulator set instruksi memungkinkan validasi perangkat lunak sejak awal.
Taek: Seorang pelanggan terbaru menggunakan IP analitik tertanam kami untuk melacak dan mengukur keuntungan kinerja dari instruksi kustom, memastikan manfaatnya melalui validasi berbasis data.
Ingster: Berapa luas yang diperlukan untuk menambahkan IP analitik tertanam?
Taek: Biasanya sekitar 1 % dari die, tergantung pada konfigurasi. Setiap desain dievaluasi untuk mengoptimalkan luas sambil memberikan nilai maksimal.
Cuplikan ini diambil dari diskusi panel penuh, yang dihosting oleh Quantum Leap Solutions.