ปัญหาสำคัญ
ปัญหานี้มีผลต่อผลิตภัณฑ์ DDR2 และ DDR3
การออกแบบ DDR2 และ DDR3 โดยใช้ตัวควบคุมหน่วยความจําฮาร์ดบน อุปกรณ์ Arria V หรือ Cyclone V อาจไม่ปิดเวลา
วิธีแก้ไขปัญหาต่อไปนี้เป็นไปได้:
การแก้ไขปัญหาที่หนึ่ง:
เพิ่มพาธเท็จต่อไปนี้ไปยังไฟล์ UniPHY SDC (submodules/<
core_name>_p0.sdc
):
set_false_path -from *|*c0|hmc_inst~FF_* -to *p0|*umemphy|*lfifo~LFIFO_IN_READ_EN_DFF
set_false_path -from *|*p0|*umemphy|hphy_inst~FF_* -to *p0|*umemphy|*vfifo~INC_WR_PTR_DFF
set_false_path -from *|*c0|hmc_inst~FF_* -to *p0|*umemphy|*vfifo~QVLD_IN_DFF
set_false_path -from *|*p0|*umemphy|hphy_inst~FF_* -to *p0|*umemphy|*altdq_dqs2_inst|phase_align_os~DFF*
พาธข้างต้นเป็นการถ่ายโอนแบบแข็งซึ่งจะทํางานได้อย่างถูกต้อง ตัดเส้นทางเหล่านี้ sidesteps โมเดลความล่าช้าที่ไม่ถูกต้อง
การแก้ไขปัญหาที่สอง:
ในการลดความถี่โดเมนสัญญาณนาฬิกาของตัวจัดลําดับ (clock_pll_avl_clk
)
เปิด submodules/<
core_name>_p0_parameters.tcl
เข้า
ตัวแก้ไขข้อความและเพิ่มจํานวนหลักที่สําคัญที่สุดหนึ่ง ::GLOBAL_dut_if0_p0_pll_div(5)
หลัก
ตัวอย่างเช่น เปลี่ยนรายการต่อไปนี้:
set ::GLOBAL_dut_if0_p0_pll_mult(5) 5333333�
set ::GLOBAL_dut_if0_p0_pll_div(5) 6000000�
ตามรายการต่อไปนี้:
set ::GLOBAL_dut_if0_p0_pll_mult(5) 5333333�
set ::GLOBAL_dut_if0_p0_pll_div(5) 7000000�
เปิดโมเดลย่อย/_pll0.sv ในเครื่องมือแก้ไขข้อความ และ เปลี่ยนค่าของ PLL_NIOS_CLK_FREQ_STR เพื่อให้ตรงกับคํานําหน้า ขั้น ตอน
ตัวอย่างเช่น เปลี่ยนรายการต่อไปนี้:
parameter PLL_NIOS_CLK_FREQ_STR = "88.888883 MHz";�
ตามรายการต่อไปนี้:
parameter PLL_NIOS_CLK_FREQ_STR = "76.190476 MHz";�
ปัญหานี้จะได้รับการแก้ไขในเวอร์ชันในอนาคต