Forum: FPGA, VHDL & Co. Problem mit dem xcf04s Flash


von alex (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

ich habe ein Problem beim Flashen des xcf04s Flashes auf dem Spartan 3e 
Starter Kit.
Ein Projekt erstellt, erfolgreich kompiliert, "Synthesize XST" ok, 
"Implement Design" ok, "Generate Programming File" ok. Unter "Generate 
Programming File" starte ich "Configure Device (iMPACT)" - iMPACT 
startet irgendwann mal, führt Boundary Scan durch und zeigt mir die 
Bausteine, die an einer JTAG Kette dranhängen: xc3s500e, xcf04s und 
xc2c64a. Mit dem "PROM File Formatter" im iMPACT erstelle ich aus einer 
bit-Datei für den xc3s500e eine mcs-Datei für den xcf04s 
(prom_xcf04s.mcs). Diese weise ich dem Flash zu und starte "Program". 
Der Flash-Vorgang startet, bricht aber dann mit der Fehlermeldung ab:

Command: Program -p 1 -e -v -defaultVersion 0
// *** BATCH CMD : Program -p 2 -e -v -defaultVersion 0
PROGRESS_START - Starting Operation.
Chain TCK freq = 10000000.
Validating chain...
Boundary-scan chain validated successfully.
'2': Erasing device...
Erasure completed successfully.
'2': Programming device...
done.
'2': Putting device in ISP mode...done.
'2': Putting device in ISP mode...done.
'2': Verifying device...Failed at address, 0'2': Verification Terminated
Programming of user selected options failed.
PROGRESS_END - End Operation.
Elapsed time =     12 sec.

Wie es aussieht, scheitert er am Verifizieren.
Kann mir jemand bitte einen Tip geben, was ich da falsch machen könnte, 
worauf ich achten sollte?
Was ist eigentlich diese "Chain TCK freq = 10000000"? 10 MHz? Ist das ok 
so? Der Flash geht, glaube ich, bis 25 MHz, falls sich die 10 MHz 
irgendwie zum Ansteuern des Flashes benutzt werden, müsste das ok sein.
Habe noch Readback des Bausteins durchgeführt und die mcs-Datei mit der 
originalen verglichen - und tatsächlich gibt es periodisch alle 20 
Zeilen oder so, Felder, die lauter 0xFFs enthalten, so, als ob diese 
Fleder nicht geflasht wurden... Was mache ich falsch?
Im Dateianhang habe ich die beiden Dateien eingefügt. Die Datei 
prom_xcf04s.mcs ist das, was ich flashen möchte, die Datei 
prom_xcf04s_rb.mcs ist das, was ich nach dem gescheiterten Flashvorgang 
aus dem Baustein ausgelesen habe (mit der Opertation "Readback" in 
iMPACT)...

von alex (Gast)


Lesenswert?

Hallo,

neulich hat mich die Experimentierlust neu gepackt und so habe ich das 
mit dem Flashen des xcf04s hingekriegt:
- zunächst wie gewohnt mit dem "PROM File Formatter" im iMPACT eine 
mcs-Datei erstellen
- beide Jumper vom J11 auf dem Starterkit entfernen
- die erstellte mcs-Datei dem xcf04s im iMPACT zuweisen und "Program" 
ausführen
- es erscheint ein Fenster, wo man bei "Erase before programming" einen 
Haken setzen muss, danach bestätigen und abwarten bis der 
Programmiervorgang wie erwartet bei 53% mit einer Fehlermeldung 
abbricht...
- wieder "Program" ausführen und diesmal keinen Haken bei "Erase before 
programming" setzen und bestätigen (einfach mal "drüber flashen")
- der Vorgang wird erfolgreich abgeschlossen, "Verify" ... ok!

Merkwürdig, aber es geht...
Was läuft da falsch, verstehe die Welt nicht mehr...

von alex (Gast)


Lesenswert?

Hallo,

wie es aussieht, tritt das Problem nach der Installation von ISE 8.2i 
gar nicht mehr auf. Hatte bisher ISE 8.1i installiert, was auf der 
mitgelieferten CD mit dem Starter-Kit dabei war...
Nach dem "Initialize Chain" meldete iMPACT:

WARNING:iMPACT:2356 - Platform Cable USB firmware must be updated. This 
operation may take up to 10 minutes on a USB 2.0 port
 or up to 30 minutes on a USB 1.1 port. Please do not stop the process 
or disconnect the cable prior to completion. The cable
 STATUS LED will be RED for the duration of the update process.

So war es auch, die LED leuchtete tatsächlich rot, kurze Zeit später 
wieder grün. Danach die mcs-Datei dem xcf04s zugewiesen und erfolgreich 
geflasht. Verify... ok. Readback ..ok, Dateien mit WinMerge verglichen - 
sind gleich (außer dem langen Feld von FFs am Ende). Get Device Checksum 
...ok. Blank check ... Part is not Blank - ok.
Die Welt ist wieder in Ordnung :)

von Falk B. (falk)


Lesenswert?

@ alex

>wie es aussieht, tritt das Problem nach der Installation von ISE 8.2i
>gar nicht mehr auf. Hatte bisher ISE 8.1i installiert, was auf der

AUA!!!!!
Die ewige Rumgepatche ist der reinste Irrsinn!

>WARNING:iMPACT:2356 - Platform Cable USB firmware must be updated. This
>operation may take up to 10 minutes on a USB 2.0 port
> or up to 30 minutes on a USB 1.1 port. Please do not stop the process

Und was soll dieser Müll? Seit wann dauert das Runterlanden von eine 
paar dutzend kB-Firmware 30 Minuten? Und vor allem warum muss ein 
"dummes Kabel" mit neuer Firmware gepatcht werden? Ich versteh die Welt 
immer weniger . . . :-(

MfG
Falk

P.S. Da lob ich mir mein altes, langsames, aber garantiert 
patchunbedürftiges Parallel-Cable-III, handmade.

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.