ID บทความ: 000085927 ประเภทข้อมูล: การแก้ไขปัญหา การตรวจสอบครั้งล่าสุด: 15/12/2015

ทําไมคําสั่งที่กําหนดเองของสแควร์จุดลอย Nios® II ไม่ทํางานสําหรับการกําหนดค่าบางอย่างใน Intel® MAX® 10 FPGAs

สิ่งแวดล้อม

    Intel® Quartus® II Subscription Edition
    จุดลอยตัว
BUILT IN - ARTICLE INTRO SECOND COMPONENT
คำอธิบาย

เนื่องจากข้อกําหนดสําหรับตารางค้นหา ROM/RAM ที่เติมไว้ล่วงหน้าในทุกเวอร์ชันของส่วนประกอบฮาร์ดแวร์จุดลอยตัว 2 คําสั่งที่กําหนดเอง Nios® II สําหรับรูทสี่เหลี่ยมลอยตัวจะล้มเหลวในการออกแบบ Intel® MAX® 10 FPGA โดยใช้โหมดการกําหนดค่าการเตรียมใช้งาน RAM ล่วงหน้าซึ่งรวมถึง "ภาพบีบอัดคู่" "ภาพที่บีบอัดเดี่ยว"และ "ภาพที่ไม่มีการบีบอัดเดี่ยว"

ในโหมดเหล่านี้ แฟลชไม่ใหญ่พอที่จะรองรับการเริ่มต้น RAM ล่วงหน้า ดังนั้นคําสั่ง sqrt จึงล้มเหลว ซอฟต์แวร์ Quartus® II เวอร์ชั่น 15.1 และก่อนหน้านี้อาจมีข้อผิดพลาดในการคอมไพล์หาก FPCI2 ถูกสร้างอินสแตนซ์และปิดใช้งานการเริ่มต้นหน่วยความจําเนื่องจากตั้งค่าโหมดการกําหนดค่าสําหรับ Intel MAX 10 FPGA หรือเหตุผลอื่น

ข้อผิดพลาด (16031): โหมดการกําหนดค่าภายในปัจจุบันไม่รองรับการเริ่มต้นหน่วยความจําหรือ ROM โหมด Select Internal Configuration กับ ERAM

ความละเอียด

หากต้องการแก้ไขปัญหานี้ในซอฟต์แวร์ Quartus II เวอร์ชั่น 15.0 และก่อนหน้า ให้ทําตามขั้นตอนเหล่านี้:

  1. ไปที่ fpoint2_multi_datapath.vhd และ แสดงความคิดเห็น เกี่ยวกับการสร้างอินสแตนซ์ FPSqrt ที่บรรทัดที่ 168 ถึง 174

sqrt: แผนที่พอร์ต FPSqrt (
x => dataa,
r => fsqrts
clk => clk
reset_req => reset_req
areset =>รีเซ็ต
);

  1. คอมไพล์ การออกแบบของคุณอีกครั้งในซอฟต์แวร์ Quartus II
  2. ไปที่ altera_nios_custom_instr_floating_point_2.c ที่อยู่ในโฟลเดอร์ HAL ของ bsp ของคุณ เพิ่ม "#undef sqrtf" หลังจากที่มี "altera_nios_custom_instr_floating_point_2.h" รวมอยู่ในรหัส C เพื่อปิดใช้งานการใช้คําสั่งที่กําหนดเอง sqrtf โดยซอฟต์แวร์

รหัส:

#include "altera_nios_custom_instr_floating_point_2.h"
#undef sqrtf

  1. สร้าง ซอฟต์แวร์และไลบรารีแอปพลิเคชันใหม่ทั้งหมดด้วยการเปลี่ยนแปลงเหล่านี้

หากต้องการแก้ไขปัญหานี้ในซอฟต์แวร์ Quartus II เวอร์ชัน 15.0 และใหม่กว่า ให้ทําตามขั้นตอนนี้:

  1. ใช้ช่องทําเครื่องหมายเพื่อลบคําสั่งที่กําหนดเอง sqrt จาก FPH2 ใน Platform Designer GUI

ปัญหานี้ได้รับการแก้ไขในซอฟต์แวร์ Quartus II v16.0

ผลิตภัณฑ์ที่เกี่ยวข้อง

บทความนี้จะนำไปใช้กับ 1 ผลิตภัณฑ์

Intel® MAX® 10 FPGA

1

เนื้อหาในหน้านี้เป็นการผสมผสานระหว่างการแปลเนื้อหาต้นฉบับภาษาอังกฤษโดยมนุษย์และคอมพิวเตอร์ เนื้อหานี้จัดทำขึ้นเพื่อความสะดวกของคุณและเพื่อเป็นข้อมูลทั่วไปเท่านั้นและไม่ควรอ้างอิงว่าสมบูรณ์หรือถูกต้อง หากมีความขัดแย้งใด ๆ ระหว่างเวอร์ชันภาษาอังกฤษของหน้านี้กับคำแปล เวอร์ชันภาษาอังกฤษจะมีผลเหนือกว่าและควบคุม ดูเวอร์ชันภาษาอังกฤษของหน้านี้