FPGA-Optimized RISC-V Core VexRiscv ได้รับการยอมรับจากอุตสาหกรรมในด้านความยืดหยุ่นและความเร็วในการพัฒนา

BigGo Editorial Team
FPGA-Optimized RISC-V Core VexRiscv ได้รับการยอมรับจากอุตสาหกรรมในด้านความยืดหยุ่นและความเร็วในการพัฒนา

การพัฒนา RISC-V ในรูปแบบ VexRiscv ได้ก้าวขึ้นมาเป็นผู้เล่นสำคัญในวงการพัฒนา FPGA โดยได้รับความสนใจจากแนวทางที่เป็นนวัตกรรมในการออกแบบ CPU และการประยุกต์ใช้งานจริงในภาคอุตสาหกรรม เขียนด้วย SpinalHDL การพัฒนาโปรเซสเซอร์นี้แสดงให้เห็นถึงการเปลี่ยนแปลงในวิธีที่นักพัฒนาเข้าถึงการอธิบายฮาร์ดแวร์สำหรับ FPGA

คุณสมบัติหลักของ VexRiscv:

  • รองรับชุดคำสั่ง RV32I[M][A][D][J][C]
  • การกำหนดค่าไปป์ไลน์ 2-5+ ขั้นตอน
  • ประสิทธิภาพ 1.44 DMIPS/MHz (แบบ -no-inline)
  • มีตัวเลือกแคชคำสั่งและแคชข้อมูล
  • รองรับส่วนขยายการดีบั๊กผ่าน GDB/OpenOCD
  • สถาปัตยกรรมแบบปลั๊กอินสำหรับการปรับแต่ง

การพัฒนา HDL สมัยใหม่

SpinalHDL ภาษาที่ใช้ในการสร้าง VexRiscv เป็นส่วนหนึ่งของระบบนิเวศของภาษาอธิบายฮาร์ดแวร์สมัยใหม่ซึ่งรวมถึง Chisel, Amaranth และ Clash ในขณะที่ HDL แบบดั้งเดิมอย่าง Verilog ยังคงครองตลาดอุตสาหกรรม เครื่องมือใหม่เหล่านี้กำลังได้รับความนิยมมากขึ้น โดยเฉพาะในการพัฒนา FPGA และสภาพแวดล้อมการวิจัย ผู้เชี่ยวชาญในอุตสาหกรรมรายงานว่าประสิทธิภาพการทำงานเพิ่มขึ้นอย่างมีนัยสำคัญเมื่อใช้ HDL สมัยใหม่เหล่านี้ โดยนักพัฒนาเชิงพาณิชย์ท่านหนึ่งกล่าวว่า:

ไลบรารีมาตรฐาน การใช้งานที่สะดวก ความสามารถในการทดสอบ และรายละเอียดเล็กๆ น้อยๆ เช่น การมีโดเมนนาฬิกาเป็นส่วนหนึ่งของระบบประเภท ทำให้การพัฒนาเร็วขึ้นและลดข้อผิดพลาดได้มาก จนทำให้การลงทุนในการพัฒนาด้วย Verilog ไม่คุ้มค่าอีกต่อไป

สถาปัตยกรรมที่เหมาะสมกับ FPGA

VexRiscv ได้รับการออกแบบให้เหมาะกับ FPGA จากการเลือกใช้สถาปัตยกรรมอย่างรอบคอบ การพัฒนานี้คำนึงถึงข้อจำกัดของฮาร์ดแวร์ FPGA เช่น การใช้บล็อกตัวคูณขนาด 18 บิตหลายตัวแบบขนานแทนการพยายามทำการคูณขนาดใหญ่ในรอบเดียว วิธีนี้ส่งผลให้ได้ความเร็วนาฬิกาสูงสุด (fmax) ที่ดีขึ้นและใช้ทรัพยากรบนแพลตฟอร์ม FPGA ได้อย่างมีประสิทธิภาพมากขึ้น

การประยุกต์ใช้งานจริง

การอภิปรายแสดงให้เห็นว่า CPU แบบซอฟต์อย่าง VexRiscv มีบทบาทสำคัญในการออกแบบ FPGA สมัยใหม่ แทนที่จะเป็นหน่วยประมวลผลหลัก คอร์เหล่านี้มักจะจัดการอุปกรณ์ต่อพ่วง กระบวนการเริ่มต้นระบบ และงานดีบั๊ก พวกมันมีประโยชน์อย่างยิ่งในการจัดการสเตทแมชชีนที่ซับซ้อนและให้ตรรกะควบคุมที่สามารถโปรแกรมได้โดยไม่ต้องสังเคราะห์ FPGA ใหม่เมื่อต้องการแก้ไข

การใช้งานทั่วไป:

  • การควบคุมและจัดการอุปกรณ์ต่อพ่วง
  • การประมวลผลสัญญาณแบบเรียลไทม์
  • การแก้ไขจุดบกพร่องและวิเคราะห์ฮาร์ดแวร์
  • การสร้างระบบสถานะที่ซับซ้อน
  • การควบคุมตรรกะแบบโปรแกรมได้

ผลกระทบต่ออุตสาหกรรมและอนาคต

ในขณะที่ HDL แบบดั้งเดิมยังคงครองตลาดในการผลิต ASIC ปริมาณมาก VexRiscv และ SpinalHDL ได้พบพื้นที่เฉพาะของตนในการประยุกต์ใช้ FPGA เฉพาะทางและโครงการที่มีปริมาณการผลิตต่ำ การออกแบบแบบโมดูลาร์และสถาปัตยกรรมแบบปลั๊กอินทำให้เหมาะสำหรับการทดลองไมโครอาร์คิเทคเจอร์และการวิจัยทางวิชาการ โดยผู้ใช้รายงานว่าสามารถอ่านและบำรุงรักษาโค้ดได้ดีกว่าเมื่อเทียบกับการพัฒนาด้วย Verilog แบบดั้งเดิม

ความสำเร็จของ VexRiscv นำไปสู่โครงการต่อยอดอย่าง VexiiRiscv และ NaxRiscv ซึ่งแสดงให้เห็นถึงระบบนิเวศที่กำลังเติบโตรอบแนวทางการออกแบบ CPU นี้ การพัฒนานี้บ่งชี้ถึงวิวัฒนาการอย่างต่อเนื่องในวิธีที่นักพัฒนาเข้าถึงการพัฒนาโปรเซสเซอร์บน FPGA โดยเฉพาะสำหรับการประยุกต์ใช้งานเฉพาะทางที่ต้องการความยืดหยุ่นและรอบการพัฒนาที่รวดเร็ว

อ้างอิง: SpinalHDL VexRiscv: A FPGA friendly 32 bit RISC-V CPU