Ler ou escrever Intel® Arria® 10 valores de registro IP PCI Express* é um método de depuração eficaz. Siga as etapas abaixo para ler ou gravar os valores de registro nos Intel® Arria® 10 componentes PCI Express IP. A primeira parte mostra como habilitar o ponto final mestre de depuração Altera (ADME) nos canais IP nativo do transceptor Arria 10 transceptor, Intel Arria 10 Transceptor ATX PLL IP Core e Intel Arria 10 transceptor fPLL IP Core. A segunda parte mostra as operações sobre como ler e gravar valores de registro com Intel® Quartus® console do sistema Prime Pro Edition.
Habilitar o recurso ADME.
Arria 10 Transceptor PHY IP nativo
1. Habilitar a ADME no editor de parâmetros PCI Express IP (guia Opções de configuração, depuração e extensão)
2. Gere HDL (no Intel Quartus Prime Pro Edition Platform Designer, clique em "Gerar -> Gerar HDL...")
Arria 10 ATX PLL IP Core (apenas para o modo PCI Express IP Gen3 de 10 Arria 10)
3. Navegue até o diretório que inclui arquivos de projeto PCI Express gerados pelo Platform Designer (por exemplo, \altera_pcie_a10_hip_171\synth)
4. Abra o arquivo 'lcpll_g3xn.v' em um editor de texto
5. Defina os seguintes parâmetros abaixo na instação ATX/LC PLL (altera_xcvr_atx_pll_a10)
.rcfg_jtag_enable (1),
.dbg_embedded_debug_enable (1),
.dbg_capability_reg_enable (1),
.dbg_stat_soft_logic_enable (1),
.dbg_ctrl_soft_logic_enable (1),
6. Afinar o clock de reconfig e redefinir para a mesma instação
.reconfig_clk1 (reconfig_clk0),
.reconfig_reset1 (reconfig_reset0),
7. Salve e feche o arquivo "lcpll_g3xn.v"
Arria núcleo IP de 10 fPLL
8. Abra o arquivo 'fpll_g3.v' em um editor de texto
9. Defina os seguintes parâmetros na instatição fPLL (altera_xcvr_fpll_a10)
.rcfg_jtag_enable (1),
.dbg_embedded_debug_enable (1),
.dbg_capability_reg_enable (1),
.dbg_stat_soft_logic_enable (1),
.dbg_ctrl_soft_logic_enable (1),
10. Ligar o clock de reconfig e redefinir para a mesma instação
.reconfig_clk1 (reconfig_clk0),
.reconfig_reset1 (reconfig_reset0),
11. Salve e feche o arquivo "fpll_g3.v"
12. Iniciar a compilação Quartus
13. Baixe o SOF
Registre a operação de leitura e gravação com o Console do sistema.
1. Iniciar o kit de ferramentas do transceptor Quartus e o design de carga
2. Verifique os escravos conectados
% get_service_paths escravo (esta lista de todos os escravos, incluindo XCVR, ATX PLL e fPLL)
3. Verifique as informações de IP de cada índice escravo e tome nota do IP associado ao índice
% marker_get_info [lindex [get_service_paths escravo] 0]
% marker_get_info [lindex [get_service_paths escravo] 1]
% marker_get_info [lindex [get_service_paths escravo] 2]
% marker_get_info [lindex [get_service_paths escravo] 3]
4. Leitura de/escrita para os registros XCVR ou PLL. Ao escrever, faça leitura-modifique-write. (por exemplo, ATX PLL m_counter)
% set s [lindex [get_service_paths escravo] 3] # índice 3 é ATX PLL
% open_service escravo $s
% set base_addr 0x0000 # usado para acessar canais de transceptor
% set ret [master_read_8 $s [expr $base_addr 0x109*4] 1] # leia o endereço PLL ATX 0x109 (m_counter)
Ret % definido [expr $ret & ~0xf0 | (0x1 <<7)] Bit nº claro[7:4] e bit definido[7] para 1
% master_write_8 $s [expr $base_addr 0x109*4] $ret valor modificado de gravação #
% set ret [master_read_8 $s [expr $base_addr 0x109*4] 1] # verificar lendo novamente
Consulte o Intel Arria 10 Mapa de registro do transceptor para obter os endereços e valores de registro completos.