No software Quartus® II e ip versão 11.0, há um problema ao acessar os registros de controle e status no controlador de memória baseado no UniPHY.
O manual mais recente da Interface de memória externa (EMIF) mostra o mapa de registro do UniPHY e o mapa do registro do controlador como endereços de 9 bits (UniPHY em 0x000 e Controlador em 0x100). Na implementação real, a largura do endereço CSR do controlador é de 19 bits e os endereços dos mapas de registro especificados no manual EMIF estão incorretos. A tabela a seguir descreve os mapas de registro corretos para 11.0:
Mapa de registro uniphy
Endereço incorreto do manual EMIF |
Endereço correto |
Descrição |
0x001 |
0x0_0004 |
Reservados |
0x004 |
0x0_0010 |
Registro de status uniphy 0 |
0x005 |
0x0_0014 |
Registro de status uniphy 1 |
0x006 |
0x0_0018 |
Registro de status uniphy 2 |
0x007 |
0x0_001C |
UniPHY Memory Init Param Reg 0 |
Mapa do registro do controlador
Endereço incorreto do manual EMIF |
Endereço correto |
Descrição |
0x100 |
0x4_0000 |
Registro de status/controle ALTMEMPHY |
0x110 |
0x4_0040 |
Registro de status/config do controlador |
0x120 |
0x4_0080 |
Registro de tamanho do endereço de memória 0 |
0x121 |
0x4_0084 |
Registro de tamanho do endereço de memória 1 |
0x122 |
0x4_0088 |
Registro do tamanho do endereço de memória 2 |
0x123 |
0x4_008C |
Registro do parâmetro de sincronização de memória 0 |
0x124 |
0x4_0090 |
Registro de parâmetros de sincronização de memória 1 |
0x125 |
0x4_0094 |
Registro do parâmetro de sincronização de memória 2 |
0x126 |
0x4_0098 |
Registro de parâmetros de sincronização de memória 3 |
0x130 |
0x4_00C0 |
Registro de controle ECC |
0x131 |
0x4_00C4 |
Registro de status do ECC |
0x132 |
0x4_00C8 |
Registro de endereço de erro ECC |
Este problema é corrigido no software Quartus II versão 11.1.