ปัญหานี้อาจเห็นได้ในซอฟต์แวร์ Quartus® Prime Pro Edition เวอร์ชัน 22.1 เมื่อเขียนหน่วยความจําแฟลช Micron QSPI โดยใช้ HAL API ของอินเทอร์เฟซ Generic Serial Flash FPGA IP (GSFI IP)
HAL API สําหรับ GSFI IP มีอยู่ในไฟล์ซอฟต์แวร์ต่อไปนี้:
• intel_generic_serial_flash_interface_top.h
• intel_generic_serial_flash_interface_top.c
นี่คือสาเหตุที่ไม่เหมาะสม polling opcode ใน intel_gsfi_write_block() API สําหรับอุปกรณ์แฟลช Micron QSPI แฟลชอื่นๆ ที่รองรับจะไม่ได้รับผลกระทบจากสิ่งนี้
เมื่อต้องการหลีกเลี่ยงปัญหานี้ ให้ทําตามขั้นตอนเหล่านี้:
- ค้นหาไดรเวอร์/โฟลเดอร์ src ในโปรเจค Board Support Package (BSP) ของคุณ
- ค้นหาไฟล์ซอฟต์แวร์ intel_generic_serial_flash_interface_top.c
- ค้นหา api intel_gsfi_write_block()API
- แก้ไข API จาก CMD_STATUS_REGISTER เป็น CMD_FLAG_STATUS_REGISTER
ตัวอย่าง:
ไลน์ 1244 : ซม. = ((CMD_FLAG_STATUS_REGISTER << 8) | CMD_QUAD_INPUT_FAST_PROGRAM);
สาย 1255 : cmd = ((CMD_FLAG_STATUS_REGISTER << 8) | CMD_PAGE_PROGRAM);
หมายเหตุ: การสร้าง BSP ใหม่จะรีเซ็ต HAL API เป็นสถานะเดิม
ขณะนี้ปัญหานี้ถูกกําหนดให้ได้รับการแก้ไขในซอฟต์แวร์ Quartus® Prime ในอนาคต