Forum: FPGA, VHDL & Co. Spartan 3AN: Ärger beim Download


von Philipp H. (swissrookie)


Lesenswert?

Hallo

Ich nehme gerade ein kleines FPGA-Bord in Betrieb und bin auf komische 
Probleme gestossen...

Situation:
- FPGA = Spartan 3AN (XC3S50AN)
- Programmer = Parallel -> funktioniert mit anderen Boards die ich 
verwende problemlos
- Boundary Scan findet das Device
- Erase funktioniert
- Blank Check funktioniert
- Get Device ID funktioniert

Ziel:
BIT-File in den internen Flash Speicher laden

"Programm FPGA only" funktioniert. Bei "Program Flash and Load FPGA..." 
bricht er mir bei 61% nach dem Downloaden und dem Verifizieren mit dem 
Kommentar "Done did nit go high" ab.
Mode M[2..0] ist gesetzt auf [0,1,1], also internal Master SPI.


Ich weiss nicht wo weitersuchen... any ideas?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Schon mal in den Optionen von "Generate Programming File" (Rechtsklick)
mit dem Häckchen bei "Drive DONE pin high" herumprobiert?

von Philipp H. (swissrookie)


Lesenswert?

ja, leider ohne Erfolg.


In der Konsole hab ich noch gesehen, dass das Status Register scheinbar 
falsch ausgelesen wird...

'1': Reading status register contents...
CRC error                                         :         0
IDCODE not validated while writing FDRI           :         0
DCM Locked                                        :         1
status of GTS_CFG_B                               :         1
status of GWE                                     :         1
status of GHIGH                                   :         1
value of VSEL pin 0                               :         1
value of VSEL pin 1                               :         1
value of VSEL pin 2                               :         1
value of MODE pin M0                              :         1
value of MODE pin M1                              :         1
value of MODE pin M2                              :         1
value of CFG_RDY (INIT_B)                         :         1
DONEIN input from Done Pin                        :         1
POST_CRC_ERR error                                :         0
SYNC word not found                               :         0


M2 liegt mit einem PullDown an GND, kann ich am Pin auch messen

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> - Programmer = Parallel -> funktioniert mit anderen Boards
Na gut, ich hatte vor etwa 3 Wochen auch den Fall, dass so ein 
Einfach-Programmer nicht richtig getan hat (überall sonstwo funktioniert 
der aber).
Das Verkürzen der Programmierleitungen vom Programmer zum FPGA (<10cm) 
brachte Verbesserung, der Wechsel auf kommerzielle Programmierkabel 
(eines von AVNET (= ParallelCable 3), ein zweites von Digilent (=USB 
Cable)) brachte Abhilfe.

von Philipp H. (swissrookie)


Lesenswert?

Ich verwende das IJC-2 von Memec. Bis zum Board habe ich die bunten, 
losen Kabel: 15cm lang.

von J. S. (engineer) Benutzerseite


Lesenswert?

Die mode Pins checken - gfs musst Du am Jumper mal etwas verstellen.

von Philipp H. (swissrookie)


Lesenswert?

Die Mode Pins hab ich fix auf [0,1,1] (internal Master SPI) gesetzt, 
messe ich auch an den Pins.


Ich verstehe nur nicht wieso ich das FPGA beschreiben kann, obwohl beim 
auslesen des Status Registers nur Blödsinn rauskommt...

von Philipp H. (swissrookie)


Lesenswert?

So, ich bin hier noch die Auflösung schuldig, schliesslich hab ich schon 
ein paar mal von diesem Forum profitiert:

Zuerst hab ich den alten Parallelprogrammer in Rente geschickt und mir 
den USB Programmer von Digilent geholt (kann ich an dieser Stelle 
übrigens empfehlen). Hat aber nichts gebracht ausser das ich schneller 
sah das der Download nicht geklappt hat.

Mit dem Oszzi entdeckte ich dann, dass von einem angeschlossenen 
Baustein die INIT_B Leitung während des Programmiervorganges auf GND 
gehalten wurde.
Seit dem ich das korrigiert habe, läuft alles prima.

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.