Forum: FPGA, VHDL & Co. Verwirrung und Probleme mit indirektem BPI Flash


von Matthias F. (flint)


Lesenswert?

Hallo,

ich hab jetzt endlich meine Avnet-Boards und jetzt blicke ich bei der 
Konfiguration nicht ganz durch. Der Configuration Flash muss indirekt 
über den FPGA beschrieben werden, soweit ist es mir klar. Es ist jetzt 
allerdings so, dass die Adressleitungen des Flash nicht 1:1 an die 
Adressleitungen des FPGA für den Flash geführt sind sondern auf den 
Flashadressen[23:22] hängen die beiden Revision Select und diese beiden 
Leitungen werden durch PU/PD auf "01" gezogen.

Ich verstehe nicht, ob ich damit bei diesem indirekten Schreiben auf den 
Flash nur die MByte beschreiben kann, die für meine Konfiguration 
notwendig sind und was für ein mcs-File (in welcher Größe) ich dafür 
generieren muss.

Ich habe auch versucht, den Inhalt des Flash zurückzulesen, dabei ist 
mir Impact abgestürzt. Könnte das daran liegen, dass ich einfach 
irgendein mcs-File als configuration file zugewiesen habe (ich habe den 
Speicher dabei aber nicht gelöscht oder sonst irgendwie verändert)?

von Matthias F. (flint)


Lesenswert?

Mit einer anderen ISE Version von einem anderen Rechner stürzt impact 
mal wenigstens nicht ab, wenn ich den Readback starte.

von Matthias F. (flint)


Lesenswert?

Hat schon mal jemand die Verbindung von indirektem zu beschreibendem BPI 
Flash und einer Multiboot Lösung gehabt? Ich habe hier zwei Addresspins 
des Flash auf den Revision Select Pins des FPGA liegen, die mit 
pull-up/pull-down auf "01" gezogen werden und bekomme das ganze nicht 
zum Laufen.


Ich frage mich inzwischen, ob impact beim indirekten Beschreiben des 
Flash die Revision Select überhaupt als Addresspins treibt oder ob ich 
vier Mal durch den selben Addressbereich fahre und über eine vorher 
geschriebene Konfiguration drüberschreibe.


Was dafür spricht ist folgender Ablauf: Ich lösche den Flash und lasse 
anschließend den FPGA konfigurieren. Für ca eine Minute tut sich nichts, 
dann leuchtet die DONE-LED auf und der FPGA wird mit irgendeinem Design 
konfiguriert, das eine hübsche Lichtshow auf den LEDs macht. Das ist 
aber nicht mein Design und wenn wirklich der ganze Flash gelöscht wäre 
sollte da eigentlich überhaupt keine gültige Konfiguration daherkommen.

Erklärungsmodell für dieses Verhalten: Meine Konfiguration ist aus 
irgendeinem Grund fehlerhaft, der Watchdog Timer rennt ab und die 
Fallback Konfiguration wird geladen. Diese liegt auf Adresse 0 und wurde 
nicht gelöscht, weil mich die RS-Pins immer im Addressraum ab 0x400000 
halten.

Kennt sich jemand mit so einer Lösung aus?

Noch eine andere Frage wo mir eine Antwort viel helfen würde: Weiß 
jemand ein Kommando, mit dem ich bei einem bit-File herausfinden kann, 
mit welchen bitgen-Optionen es erzeugt wurde? Insbesondere möchte ich 
sicherstellen, dass ich keinen Fehler bei der Startup-CLock gemacht 
habe.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.