ปัญหาสำคัญ
เนื่องจากปัญหาในซอฟต์แวร์ SoC EDS เวอร์ชั่น 16.0 และก่อนหน้า อาจพบเห็นข้อผิดพลาดของข้อมูลบน Cyclone® V SoC และ Arria®อินเทอร์เฟซ V SoC HPS SDRAM ในโหมด LPDDR2
อินเทอร์เฟส LPDDR2 แบบแข็งหรือซอฟต์ในตรรกะ FPGA (ไม่ใช่ HPS) จะไม่ได้รับผลกระทบ
ทําตามขั้นตอนด้านล่างเพื่อแก้ไขปัญหานี้ในซอฟต์แวร์ SoC EDS เวอร์ชั่น 16.0 และก่อนหน้า
การแก้ไขปัญหานี้จะกําหนดค่าในเชิงลบด้วยตนเองสําหรับการแก้ไขปัญหาการอ่านและอ่านการเขียนสําหรับคอนโทรลเลอร์ HPS SDRAM Altera ในโหมด LPDDR2 ซึ่งอาจลดประสิทธิภาพลง
1. เปิด ไฟล์ต่อไปนี้จาก HPS Preloader BSP: u-boot-socfpga/arch/arm/cpu/armv7/socfpga/sdram.c
2. เพิ่ม รหัสการแก้ไขปัญหาด้านล่างหลังจากบรรทัดที่ 1345 (u-boot 2013):
COMPARE_FAIL_ACTION
}
}
#endif
/***** เริ่มการแก้ไขปัญหาเพื่อตั้งค่าการอ่านเพื่ออ่านและอ่านเพื่อเขียนหน่วงเวลา ******
ดีบัก ("การกําหนดค่าการอ่านด้วยตนเองเพื่อเขียนความล่าช้าในการตอบสนอง \n")
register_offset = 0x501c;
/* อ่านมูลค่าลงทะเบียนเดิม */
reg_value = readl(SOCFPGA_SDR_ADDRESS register_offset);
reg_value = 0x44400000;
if (sdram_write_verify(register_offset, reg_value) == 1) {
สถานะ = 1;
COMPARE_FAIL_ACTION
}
/***** วิธีแก้ไขปัญหาชั่วคราว*******
/* คืนค่าการลงทะเบียน SDR PHY หากถูกต้อง */
if (sdr_phy_reg != 0xffffffff)
writel(sdr_phy_reg, SOCFPGA_SDR_ADDRESS
3. สร้าง ตัวโหลดซอฟต์แวร์ใหม่โดยเรียกใช้งานทําให้สะอาดแล้วตามด้วยเรียกใช้งาน
ปัญหานี้ได้รับการกําหนดให้แก้ไขในซอฟต์แวร์ SoC EDS ในอนาคต