인텔® Quartus® Prime Pro Edition 소프트웨어 버전 21.3 이전의 문제로 인해 빠른 입력 레지스터, 빠른 출력 레지스터 또는 빠른 출력 활성화 레지스터 할당과 함께 양방향 핀을 사용할 때 내부 오류가 발생할 수 있습니다. 빠른 레지스터가 활성화되어 있는 경우, 모든 레지스터를 활성화해야 합니다.
실패한 사례의 예:
입력 레지스터는 빠른 입력 레지스터에 할당되지만 OE/출력 레지스터는 빠른 OE 레지스터 및 빠른 출력 레지스터로 할당되지 않습니다. 다음 내부 오류 메시지가 생성됩니다.
내부 오류: 하위 시스템: 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.0.ioereg_top_5_gpio_wrapper_0.gpio_reg pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.0.ioereg_top_5_.gpio_wrapper_0.gpio_reg.mode!= BIDIR_MODE || pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.0.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.0.ioereg_top_5_gpio_wrapper_0.gpio_reg.xio_gpio_oreg.mode 내부 {DDR_MODE_FR,SDR_MODE}
입력 변수 및 해당 값:
pio_1_1.x0.fmio96_core_inst.fmio48tile_bot.x3.u1_0.0.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.0.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.0.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 -~< 등록 경로>
출력은 레지스터 패킹을 활성화합니다: set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to < 등록 경로>
옵션 3:
다음 과제를 사용하여 모든 레지스터를 포장하십시오. .qsf 파일에 다음 줄을 추가합니다.
set_global_assignment -name OPTIMIZE_IOC_REGISTER_PLACEMENT_FOR_TIMING "모든 IO 레지스터 팩"
인텔® Quartus® Prime Pro Edition 소프트웨어 버전 21.3에서 이미 수정되었습니다.