Forum: FPGA, VHDL & Co. Spartan 3A DSP Config-Problem


von Eraser (Gast)


Lesenswert?

Hallo

Ich bin gerade dabei einen Spartan 3A DSP 1800 in Betrieb zu nehmen, 
bekomme aber das Programm nicht ins FPGA.
In der "Boundary Scan" werden sowohl das FPGA als auch der FLASH 
(Xcf16P) erkannt. Beim programmieren des FPGA mit dem Bitfile schlägt 
die Verifikation fehl (There are 6422 different); es sind immer 6422 
Unterschiede egal wie oft ich es versuche, da können also keine äußeren 
Störeinflüsse vorhanden sein.
Das Flash kann ich problemlos programmieren, jedoch läuft das FPGA da 
auch nicht los nachdem ich den reset-Button gedrückt hatte.

Ist dieses Problem bekannt?
Muss ich da evt irgendwo noch was einstellen?
Ich hatte vorher immer mit Spartan 3E gearbeitet, dieses Problem hatte 
ich jedoch noch nicht.

von J. S. (engineer) Benutzerseite


Lesenswert?

Hast Du den richtigen FPGA eingestellt? Ich meine ja, weil Du sonst 
einen anderen Fehler erhieltest.

Was macht der FPGA done Pin nach dem Laden?
Was zeigt die JTAG-chain an?
Poste doch mal den report.
Gfs ist der FPGA nicht richtig beschaltet. Eigene Schaltung?

von Eraser (Gast)


Lesenswert?

Hallo Jürgen

Ich hatte noch einen Fehler auf der Platine, der Prog-Eingang war 
dauerhaft auf Masse. Habe ich korrigiert, aber immer noch keine Änderung 
des Problems. Der Done Pin geht zwischen dem Programmieren und dem 
Verifizieren kurz auf high, das Verifizieren schlägt aber fehl und das 
Programm läuft nicht los.
Die Beschaltung habe ich nach dem Datenblatt UG332 Seite 81 (Master 
Serial Mode) erstellt. VCCAUX ist auf 3,3V, Im UCF habe ich die Zeile 
"CONFIG VCCAUX = 3,3V" hinzugefügt. Interne Pullups sind aktiviert.

hier der report:

PROGRESS_START - Starting Operation.
'1': Programming device...
done.
'1': Reading status register contents...
CRC error                                         :         0
IDCODE not validated while writing FDRI           :         0
DCM matched                                       :         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                              :         0
value of MODE pin M1                              :         0
value of MODE pin M2                              :         0
value of CFG_RDY (INIT_B)                         :         1
DONEIN input from Done Pin                        :         1
SEU error                                         :         0
SYNC word not found                               :         0
INFO:iMPACT:2219 - Status register values:
INFO:iMPACT - 0011 1111 1000 1100
'1': Verifying  device...INFO:iMPACT:2495 - Readback Size is 8195680.
ERROR:Bitstream:98 - There are 5074385 differences.
ERROR:iMPACT:395 - The number of difference is 5074385
'1': Verification terminated.
done.
'1': Programming terminated due to errors.
PROGRESS_END - End Operation.
Elapsed time =     31 sec.

von Eraser (Gast)


Lesenswert?

Ich hab noch einen Fehler entdeckt:
Die REV_SEL-pins des PROMS waren per Pullup auf High. Ich hab die jetzt 
auf LOW gesetzt und jetzt lädt das FPGA aus dem Flash. Der DONE-Pin geht 
auf high aber das FPGA läuft nicht richtig.

Wenn ich das FPGA direkt per JTAG lade scheint das zu funktionieren 
(DONE geht auf high) aber die Verifikation schlägt fehl. Die Anzahl der 
Unterschiede ist immer konstant (4 stellige Zahl) sooft ich es probiere.
Merkwürdig ist das der DONE-Pin während der Verifikation auf HIGH 
bleibt, ist das korrekt so?

von Rudolph (Gast)


Lesenswert?

Eraser schrieb:
> Der DONE-Pin geht auf high aber das FPGA läuft nicht richtig.

Was heißt "läuft nicht richtig"?

Eraser schrieb:
> Wenn ich das FPGA direkt per JTAG lade scheint das zu funktionieren
> (DONE geht auf high) aber die Verifikation schlägt fehl.

WIMRE geht ein Verify des FPGAs gar nicht, Impact bietet diese Option 
deshalb auch nicht an. Welche Software benutzt Du für die 
JTAG-Programmierung?

von Eraser (Gast)


Lesenswert?

Rudolph schrieb:
> Was heißt "läuft nicht richtig"?

Ich habe einige LED auf feste Werte gesetzt, aber da leuchtet nichts. 
Ausserdem gehen viele Ausgänge auf LOW, obwohl das nicht sein dürfte. Es 
sieht danach aus das das bitfile nicht richtig ist oder nicht richtig 
geladen wird.
Für die Programierung benutze ich IMPACT im Boundary Scan Modus.
Verify ist da möglich.

von Christian R. (supachris)


Lesenswert?

Verify vom Flash ist möglich, ja, aber nicht vom FPGA selber. Wenn DONE 
auf High geht, ist das Bitfile korrekt geladen. Was dann passiert, ist 
eine andere Frage, da hast du wohl was falsch beschrieben. Was sagt denn 
die Simulation und die Warnungen im ISE? Vielleicht hat der einfach 
alles mögliche wegoptimiert. Weiterer Hardware-Fehler ausgeschlossen? 
Alle VCCO angeschossen?

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.