In der Quartus® II Software und IP-Version 11.0 gibt es ein Problem, das auf die Steuerungs- und Statusregister im UniPHY-basierten Speichercontroller zugreift.
Das neueste Handbuch für das External Memory Interface (EMIF) zeigt die UniPHY-Registerkarte und controller-Register-Karte als 9-Bit-Adressen (UniPHY bei 0x000 und Controller bei 0x100). Bei der tatsächlichen Implementierung beträgt die Csr-Adressbreite des Controllers 19 Bits, und die Adressen für die im EMIF-Handbuch angegebenen Registerkarten sind falsch. Die folgende Tabelle beschreibt die richtigen Registerkarten für 11.0:
UniPHY-Registerkarte
EMIF-Handbuch falsche Adresse |
Korrekte Adresse |
Beschreibung |
0x001 |
0x0_0004 |
Reserviert |
0x004 |
0x0_0010 |
UniPHY-Statusregister 0 |
0x005 |
0x0_0014 |
UniPHY-Statusregister 1 |
0x006 |
0x0_0018 |
UniPHY-Statusregister 2 |
0x007 |
0x0_001C |
UniPHY-Speicher Init Param Reg 0 |
Controller-Register-Karte
EMIF-Handbuch falsche Adresse |
Korrekte Adresse |
Beschreibung |
0x100 |
0x4_0000 |
AltMEMPHY-Status-/Kontrollregister |
0x110 |
0x4_0040 |
Controller-Status/Konfigurationsregister |
0x120 |
0x4_0080 |
Speicheradressen-Größenregister 0 |
0x121 |
0x4_0084 |
Speicheradressen-Größenregister 1 |
0x122 |
0x4_0088 |
Speicheradressen-Größenregister 2 |
0x123 |
0x4_008C |
Speicher-Timing-Parameterregister 0 |
0x124 |
0x4_0090 |
Speicher-Timing-Parameterregister 1 |
0x125 |
0x4_0094 |
Speicher-Timing-Parameterregister 2 |
0x126 |
0x4_0098 |
Speicher-Timing-Parameterregister 3 |
0x130 |
0x4_00C0 |
ECC-Kontrollregister |
0x131 |
0x4_00C4 |
ECC-Statusregister |
0x132 |
0x4_00C8 |
ECC-Fehleradressenregister |
Dieses Problem wurde in der Quartus II Softwareversion 11.1 behoben.