Problema crítico
Há algum problema conhecido com as configurações de registro contidas no arquivo "c3_reconfig.c" geradas pelo exemplo de design de reconfiguração dinâmica de IP rígido de bloco E para Intel® Stratix® 10 FPGA operando nos modos "Protocolo Ethernet 25G para CPRI", "Protocolo Ethernet 10G/25G" ou nos modos "Protocolo CPRI"?
Sim. Devido a um problema nas versões Intel® Quartus® Prime Pro Edition 20.3 e anteriores, o arquivo "c3_reconfig.c" gerado pelo exemplo de design de reconfiguração dinâmica de IP rígido de E Intel® Stratix® 10 FPGA operando no "Protocolo Ethernet 25G para CPRI", "Protocolo Ethernet 10G/25G" ou "Protocolo CPRI" contém gravações de registro incorretas no endereço de registro do transceptor 0x30E , bit [7]. Essas gravações podem ser encontradas nas seguintes funções:
"Protocolo Ethernet 25G para CPRI"
• c3_ehiplane_rcfg_25gptpfec_to_9p8gcpri
• c3_ehiplane_rcfg_25gptpfec_to_4p9gcpri
• c3_ehiplane_rcfg_25gptpfec_to_2p4gcpri
• c3_ehiplane_rcfg_10gcpri_to_9p8gcpri
"Protocolo Ethernet 10G/25G"
• c3_ehiplane_rcfg_25gptpfec_to_1gptp
• c3_ehiplane_rcfg_10gptp_to_1gptp
• c3_ehiplane_rcfg_25gptpnofec_to_1gptp
"Protocolo CPRI"
• c3_cpriphy_rcfg_grp_a_to_grp_b
• c3_cpriphy_rcfg_grp_a_to_grp_c
Dentro de cada uma dessas funções, os seguintes acessos de registro estão incorretos:
HIP OSC CLK SCG EN
rdata0 = IORD(xcvr_base_addr, 0x30E);
wdata = (rdata0 e 0xFFFFFF7F) | 0x80.
IOWR (xcvr_base_addr, 0x30E, wdata);
Para resolver este problema, execute as seguintes etapas:
- Navegue até o diretório "/software/dynamic_reconfiguration_hardware/".
- Abra o arquivo "c3_reconfig.c".
- Localize as funções citadas na descrição acima.
- Comente as seguintes (3) seções do código:
HIP OSC CLK SCG EN
rdata0 = IORD(xcvr_base_addr, 0x30E);
wdata = (rdata0 e 0xFFFFFF7F) | 0x80.
IOWR (xcvr_base_addr, 0x30E, wdata);
- Salve o arquivo 'c3_reconfig.c'.
- Re-construa o Nios software para obter um novo arquivo .elf.