Karena masalah di Intel® Quartus® Prime Pro Edition Software versi 21.3 dan sebelumnya, Anda mungkin mengamati galat internal saat menggunakan pin dwiarah dengan Register Input Cepat, Register Output Cepat, atau Penugasan Register Berkemampuan Output Cepat. Jika ada register cepat yang diaktifkan, Anda harus mengaktifkan semuanya.
Contoh kasus yang gagal:
Register input ditetapkan ke Register Input Cepat, tetapi register OE/Output tidak ditetapkan sebagai Register OE Cepat dan Register Output Cepat. Pesan galat internal berikut dihasilkan:
Galat Internal: Sub-sistem: U2B2_GENERIC, File: /quartus/db/u2b2_generic/u2b2_generic_translator.cpp, Baris: 353
Tidak dapat menemukan solusi untuk pio_1_1
Aturan: 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 di dalam {DDR_MODE_FR,SDR_MODE}
Variabel input dan nilainya:
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
Opsi 1:
Jangan atur register apa pun ke Fast * Register.
Opsi 2:
Tetapkan semua Input/OE/Output ke Register * Cepat. Misalnya, tambahkan baris berikut di berkas .qsf:
Paket register input: set_instance_assignment -name FAST_INPUT_REGISTER ON -to
Paket register output: set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to
Output memungkinkan pengemasan register: set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to
Opsi 3:
Gunakan tugas berikut untuk mengemas semua register. Tambahkan baris berikut ke berkas .qsf:
set_global_assignment -name OPTIMIZE_IOC_REGISTER_PLACEMENT_FOR_TIMING "PACK ALL IO REGISTERS"
Ini sudah diperbaiki di Intel® Quartus® Perangkat Lunak Prime Edisi Pro versi 21.3.