emRun Runtime Library ของ SEGGER ที่ได้รับอนุญาตจาก SiFive
ไลบรารีรันไทม์ SEGGER emRun ได้รับอนุญาตจาก SiFive และขณะนี้พร้อมใช้งานโดยเป็นส่วนหนึ่งของการเปิดตัว SiFive 21G1 ที่เพิ่งประกาศเมื่อเร็วๆ นี้
SiFive ได้รับใบอนุญาต emRun ซึ่งเป็นส่วนหนึ่งของ Freedom Tools และแพ็คเกจ Freedom-E-SDK การผสานรวมนี้จะช่วยให้ผู้ออกแบบชิปสามารถบรรลุระดับของประสิทธิภาพที่ดีขึ้น ในขณะที่ลดขนาดโค้ดลงได้ถึง 25% สนับสนุนการมุ่งเน้นของ SiFive ที่การสนับสนุนทูลเชนและไลบรารีที่ลดขนาดโค้ดและลดรอยเท้าของหน่วยความจำ
ไลบรารีรันไทม์ SEGGER emRun จะช่วยให้ลูกค้า SiFive สามารถใช้ความสามารถใหม่ที่สำคัญของพอร์ต SiFive Core IP ที่เร็ว มีประสิทธิภาพมากขึ้น และมีความสามารถมากขึ้น
emRun เป็นไลบรารีรันไทม์ C ที่สมบูรณ์สำหรับใช้กับ toolchain ใดๆ ใช้ใน Embedded Studio IDE ของ SEGGER และได้รับการออกแบบและเขียนขึ้นตั้งแต่ต้นสำหรับอุปกรณ์ฝังตัวเพื่อให้ได้ประสิทธิภาพสูงโดยมีขนาดเล็ก
รูทีนที่สำคัญต่อเวลาถูกเขียนด้วยภาษาแอสเซมบลี และในหลายกรณี ขนาดโค้ดที่ลดลงทำให้สามารถใช้ไมโครคอนโทรลเลอร์ขนาดเล็กลงได้โดยมีหน่วยความจำบนชิปน้อยกว่า ซึ่งอาจส่งผลให้ประหยัดค่าใช้จ่ายได้อย่างมากโดยเฉพาะอุปกรณ์ที่สร้างขึ้นในปริมาณมากสำหรับตลาดมวลชน ในบางกรณี การบันทึกขนาดโค้ดนี้อาจสร้างความแตกต่างระหว่างความสามารถในการใส่หน่วยความจำบนชิปของไมโครคอนโทรลเลอร์ได้หรือไม่
“การสนับสนุนอย่างต่อเนื่องจาก SEGGER ถือเป็นสินทรัพย์ที่ยอดเยี่ยมสำหรับระบบนิเวศ RISC-V” Drew Barbier ผู้อำนวยการอาวุโสฝ่ายการตลาดผลิตภัณฑ์ของ SiFive กล่าว “ SEGGER รองรับ SiFive RISC-V Core IP ตั้งแต่ปี 2017 และไลบรารี emRun แสดงถึงมูลค่าเพิ่มที่ยอดเยี่ยมสำหรับนักพัฒนาแบบฝังที่ทำงานกับ SiFive IP”
องค์ประกอบหลักของ emRun คือ emFloat ซึ่งเป็นไลบรารีจุดลอยตัวที่สอดคล้องกับ IEEE 754 ที่ได้รับการเพิ่มประสิทธิภาพสูงสุด ซึ่งได้รับการออกแบบมาตั้งแต่ต้นสำหรับระบบฝังตัว ได้รับการออกแบบมาให้มีทั้งความเร็วและขนาดเล็กมาก ทำให้มีประสิทธิภาพเหมือน FPU ในซอฟต์แวร์ล้วนๆ แม้ในกรณีที่มี FPU ก็ตาม emFloat ยังช่วยเพิ่มประสิทธิภาพของ FPU สำหรับฟังก์ชันทางคณิตศาสตร์ที่ซับซ้อน
emFloat สามารถกำหนดค่าได้สำหรับขนาดโค้ดที่เล็กหรือเพิ่มความเร็วในการดำเนินการหรือชุดค่าผสม โดยผลลัพธ์ที่คำนวณได้จะเหมือนกันในทุกโหมด