เนื่องจากปัญหาในซอฟต์แวร์ Intel® Quartus® Prime Pro Edition เวอร์ชั่น 21.3 และก่อนหน้า คุณอาจพบข้อผิดพลาดภายในเมื่อใช้พินสองทิศทางกับการลงทะเบียนอินพุตด่วน, การลงทะเบียนด่วน หรือการมอบหมาย Fast Output Enable Register หากมีการเปิดใช้งานการลงทะเบียนด่วนใดๆ คุณจําเป็นต้องเปิดใช้งานการลงทะเบียนทั้งหมด
ตัวอย่างของกรณีที่ล้มเหลว:
มีการกําหนดการลงทะเบียนอินพุตให้กับการลงทะเบียนอินพุตด่วน แต่ไม่ได้กําหนดการลงทะเบียน OE/Output เป็น Fast OE Register และ Fast Output Register ข้อความแสดงข้อผิดพลาดภายในต่อไปนี้ถูกสร้างขึ้น:
ข้อผิดพลาดภายใน: ระบบย่อย: U2B2_GENERIC, ไฟล์: /quartus/db/u2b2_generic/u2b2_generic_translator.cpp, บรรทัด: 353
ไม่พบโซลูชันสําหรับ pio_1_1
กฎ: fmgpio_reg:io_gpio_reg_rule @ pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.x0.ioereg_top_5_.gpio_wrapper_0.gpio_reg pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.x0.ioereg_top_5_gpio_wrapper_0.gpio_reg.mode != BIDIR_MODE || pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.x0.ioereg_top_5_gpio_wrapper_0.gpio_reg.xio_gpio_ireg.mode != REG_MODE || pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.x0.ioereg_top_5_gpio_wrapper_0.gpio_reg.xio_gpio_oreg.mode inside {DDR_MODE_FR,SDR_MODE}
ตัวแปรอินพุตและค่าของตัวแปร:
pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.x0.ioereg_top_5_gpio_wrapper_0.gpio_reg.xio_gpio_ireg.mode == REG_MODE
pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.x0.ioereg_top_5_gpio_wrapper_0.gpio_reg.xio_gpio_oreg.mode == COMBI_MODE
pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.x0.ioereg_top_5_gpio_wrapper_0.gpio_reg.mode == BIDIR_MODE
ตัวเลือกที่ 1:
ห้ามตั้งค่าการลงทะเบียนใดๆ เป็น Fast * Register
ตัวเลือกที่ 2:
กําหนดอินพุต/OE/เอาต์พุตทั้งหมดให้รวดเร็ว * ลงทะเบียน ตัวอย่างเช่น เพิ่มบรรทัดต่อไปนี้ในไฟล์ .qsf:
การบรรจุหีบห่อลงทะเบียนอินพุต: set_instance_assignment -name FAST_INPUT_REGISTER ON -to
การบรรจุหีบห่อลงทะเบียนเอาต์พุต: set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to
เอาต์พุตเปิดใช้งานการบรรจุหีบห่อลงทะเบียน: set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to
ตัวเลือกที่ 3:
ใช้การบ้านต่อไปนี้เพื่อรวบรวมการลงทะเบียนทั้งหมด เพิ่มบรรทัดต่อไปนี้ไปยังไฟล์ .qsf:
set_global_assignment -name OPTIMIZE_IOC_REGISTER_PLACEMENT_FOR_TIMING "PACK ALL IO REGISTERS"
ซึ่งได้รับการแก้ไขแล้วในซอฟต์แวร์ Intel® Quartus® Prime Pro Edition เวอร์ชั่น 21.3