Alteraได้ระบุปัญหาต่อไปนี้ใน Quartus® II 9.0SP1 สําหรับStratix® อุปกรณ์รับส่งสัญญาณ IV การกําหนดค่าโหมด Basic (PMA Direct)
1. ความถี่tx_clkoutในฮาร์ดแวร์คือค่าที่คาดไว้สองเท่าเมื่อความกว้างของช่องสัญญาณอยู่ที่ 16 หรือ 20 บิต (ใช้ได้กับการกําหนดค่า PMA Direct xN เท่านั้น)
2. การตั้งค่าบิตไม่ถูกต้องในการตั้งค่าอินเทอร์เฟซ Fabric ตัวรับส่งสัญญาณ-FPGAในด้านตัวส่งและตัวรับสัญญาณเมื่อความกว้างของช่องสัญญาณอยู่ที่ 16 บิต นําไปสู่ข้อผิดพลาดบิต
3. โมเดลการกําหนดเวลาซอฟต์แวร์เป็นเบื้องต้น ซึ่งอาจส่งผลให้เกิดการละเมิดเวลาสําหรับการออกแบบโดยใช้การกําหนดค่าโหมด Basic (PMA Direct)
หากต้องการแก้ไขปัญหาชั่วคราว 1 และ 2 ให้ติดตั้งโปรแกรมแก้ไขจากลิงก์ต่อไปนี้สําหรับซอฟต์แวร์ Quartus II เวอร์ชัน 9.0SP1 และคอมไพล์การออกแบบใหม่
http://www.altera.com/patches/quartus/90sp1/pc_quartus_ii_90sp1_sivgx_patch_1_25.zip
http://www.altera.com/patches/quartus/90sp1/linux_quartus_ii_90sp1_sivgx_patch_1_25.tar
Linux readme.txt -http://www.altera.com/patches/quartus/90sp1/linux_quartus_ii_90sp1_sivgx_patch_1_25.txt
หากต้องการแก้ไขปัญหาชั่วคราว 3 ให้ทําตามคําแนะนําการออกแบบและข้อจํากัดด้านเวลาที่ระบุไว้ด้านล่าง
แนวทางการออกแบบ
A) เพื่อตอบสนองการตั้งค่าและถือข้อกําหนดด้านเวลาบนอินเตอร์เฟซ receiver-FPGA Fabric
รับข้อมูลแบบขนาน (rx_dataout) โดยใช้ขอบบวกของนาฬิกาที่กู้คืน (rx_clkout) และเพิ่มข้อจํากัดหลายรอบต่อไปนี้ในไฟล์ SDC
set_multicycle_path -setup -จาก [get_registers rx_data_reg*] 0
set_multicycle_path -ถือ -จาก [get_registers rx_data_reg*] 0
rx_data_reg คือรีจิสเตอร์ที่ใช้ในการบันทึกข้อมูล RX จากพอร์ต rx_dataout ของ RX PMA ในคอร์FPGA
หากการออกแบบที่รวบรวมไว้ของคุณโดยใช้ขั้นตอนนี้แสดงการละเมิดเวลา (ขึ้นอยู่กับอัตราข้อมูลตัวรับส่งสัญญาณและการใช้ตรรกะ) ให้ใช้ขอบเชิงลบของ rx_clkoutเพื่อตอกบัตรเข้าข้อมูลแบบขนานและลบข้อจํากัดหลายรอบด้านบนจากไฟล์ SDC
b) เพื่อตอบสนองการตั้งค่าและถือข้อกําหนดเวลาบนอินเทอร์เฟซตัวส่งสัญญาณ fabric FPGA,
ดูหมายเหตุของแอป AN580 -การปิดเวลาในโหมดพื้นฐาน (PMA Direct)
ข้อจํากัดด้านเวลา: เพิ่มข้อจํากัดเหล่านี้ในไฟล์ SDC เฉพาะเมื่อมีการใช้ 9.0SP1 ถอดข้อจํากัดเหล่านี้ออกหากคุณอัปเกรดเป็นเวอร์ชัน Quartus II 9.0SP2
ตั้งค่าpma_direct_variation
foreach_in_collection rxpma_clockout_pin [get_pins -compatibility_mode
*|_alt4gxb_*|receive_pma*|clockout]
{
ตั้งค่าrxpma_clockout [get_pin_info -name ]
regsub "(.*|_alt4gxb_.*|receive_pma\d |) (นาฬิกา)" "\1deserclock[0]" rxpma_clocksrc
create_generated_clock -source -master_clock -name
set_clock_uncertainty -ถือ -จาก -ถึง 1.0
}
เปลี่ยนด้วยชื่อของโมดูล PMA Direct ALTGX