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

ทําไมฉันจึงได้รับผลลัพธ์ที่ไม่ถูกต้องเมื่อใช้เมกะคอร์ ALTFP_CONVERTเพื่อทําการแปลงจุดลอยตัวเป็นจุดคงที่

สิ่งแวดล้อม

BUILT IN - ARTICLE INTRO SECOND COMPONENT
คำอธิบาย

เนื่องจากปัญหากับซอฟต์แวร์ Quartus® II หากอินพุตของALTFP_CONVERมีขนาดเล็กกว่าหมายเลขที่เล็กที่สุดสําหรับรูปแบบเอาต์พุตที่เลือก เอาต์พุตจะให้ผลลัพธ์ที่ผิดพลาด

ตัวอย่างเช่น เมื่อทําการแปลงจุดลอยตัวเป็นจุดคงที่โดยใช้ 32.16 (นั่นคือความกว้าง 32 บิตที่ 16 บิตเป็นเสี้ยว) ตัวเลขที่แทนได้ที่เล็กที่สุดคือ -1.5258789E-5 (0xb7800000)  หากมีอินพุตเดียว

-0.00000762939453125 (0xb7000000) ผลลัพธ์จะแสดง -2147483648 (0xcf000000) ซึ่งไม่ถูกต้อง

ความละเอียด

Alteraแนะนําให้ใช้เมกะคอร์ALTERA_FP_FUNCTIONSใหม่สําหรับการออกแบบในอนาคตซึ่งมีฟังก์ชั่นการใช้งานที่ถูกต้อง

มิเช่นนั้นคุณจะต้องตรวจสอบค่าอินพุตของคุณว่าเป็นเอาต์พุตขนาดเต็มเมื่อใดก็ตามที่อินพุตอยู่ต่ํากว่าค่าที่เล็กที่สุดที่แทนได้

ข้อมูลนี้จะไม่ถูกแก้ไขใน Quartus เวอร์ชันในอนาคต

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

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

Cyclone® V GT FPGA
Stratix® V GS FPGA
Stratix® V GT FPGA
Cyclone® V E FPGA
Cyclone® V GX FPGA
Cyclone® V SE SoC FPGA
Cyclone® V ST SoC FPGA
Cyclone® V SX SoC FPGA
Arria® V GT FPGA
Arria® V GX FPGA
Arria® V GZ FPGA
Arria® V ST SoC FPGA
Stratix® V GX FPGA
Stratix® V E FPGA

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