Type: Answers



Why does programming of an EPCS or EPCQ device with a .jic file fail when using Cyclone IV E devices?

Description

Due to a problem with the factory default Serial Flash Loader (SFL) files in Quartus® II or Quartus Prime software, you may fail to program a serial configuration (EPCS) device or Quad-Serial Configuration (EPCQ) device with a jtag indirect configuration (.jic) file when using Cyclone® IV E EP4CE75 devices.

Workaround/Fix

Use a user generated SFL design with the following timing constraints instead of the factory default SFL.

create_clock -name {altera_reserved_tck} -period 100.000 -waveform { 0.000 50.000 } [get_ports {altera_reserved_tck}]
create_generated_clock -name {ALTERA_DCLK} -source [get_ports {altera_reserved_tck}] -master_clock {altera_reserved_tck} [get_ports {*altserial_flash_loader_component|\GEN_ASMI_TYPE_1:asmi_inst~ALTERA_DCLK}]

set_input_delay -add_delay  -clock [get_clocks {altera_reserved_tck}]  20.000 [get_ports {altera_reserved_tdi}]
set_input_delay -add_delay  -clock [get_clocks {altera_reserved_tck}]  20.000 [get_ports {altera_reserved_tms}]
set_input_delay -add_delay  -clock [get_clocks {ALTERA_DCLK}]  11.000 [get_ports {*altserial_flash_loader_component|\GEN_ASMI_TYPE_1:asmi_inst~ALTERA_DATA0}]

set_output_delay -add_delay  -clock [get_clocks {altera_reserved_tck}]  20.000 [get_ports {altera_reserved_tdo}]
set_output_delay -add_delay -max -clock [get_clocks {ALTERA_DCLK}]  0.000 [get_ports {*altserial_flash_loader_component|\GEN_ASMI_TYPE_1:asmi_inst~ALTERA_DCLK}]
set_output_delay -add_delay  -clock_fall -clock [get_clocks {ALTERA_DCLK}]  0.000 [get_ports {*altserial_flash_loader_component|\GEN_ASMI_TYPE_1:asmi_inst~ALTERA_DCLK}]
set_output_delay -add_delay  -clock [get_clocks {ALTERA_DCLK}]  13.000 [get_ports {*altserial_flash_loader_component|\GEN_ASMI_TYPE_1:asmi_inst~ALTERA_SCE}]
set_output_delay -add_delay  -clock [get_clocks {ALTERA_DCLK}]  8.000 [get_ports {*altserial_flash_loader_component|\GEN_ASMI_TYPE_1:asmi_inst~ALTERA_SDO}]

remove_clock_groups -all

set_false_path -from [get_ports {altera_reserved_tck}] -through [get_nets {*altserial_flash_loader_component|\ENHANCED_PGM:sfl_inst_enhanced|dclkin~0}] -to [get_keepers {*altserial_flash_loader_component|\GEN_ASMI_TYPE_1:asmi_inst~ALTERA_DCLK}]

This issue will be fixed in a future version of the Quartus Prime software.