Forum: FPGA, VHDL & Co. Spartan 3E lädt nicht mehr von selbst


von J. Tagger (Gast)


Lesenswert?

Mit meinem Spartan 3E von Digilent habe ich folgendes Problem:

Nach einigen Downloads eines bit-files habe ich gemerkt, dass die 
werksseitig installierte Funktion nicht mehr gegeben ist. Normalerweise 
sieht man auf dem LCD einen Begrüssungstext. Dieses bleibt tot.

Festzustellen ist, dass die DONE-LED nicht anzugehen scheint. ich 
schliesse daraus, das das Flashladen nicht klappt. Was könnte die 
Ursache sein?

Ich kann ein Flashfile per JTAG auslesen, von daher schein kein Problem 
zu bestehen. Das Flash ist wie auch das FPGA zugreifbar und die ID Codes 
auslesbar. Der bit-download klappt wiederholbar bestens.

Kann es sein, dass das flash durch mein file kapuutgemacht oder 
überschrieben wurde?

Ich benutzt den PMOD-Ausgang und schicke digitale Daten raus, was auch 
funktioniert. Sonst sind alle Ausgänge inaktiv.

von Christian R. (supachris)


Lesenswert?

Aus dem Flash wird nur beim Power-Up bzw. beim Wackeln an der PROG_B 
Leitung gelesen. Und dann muss auch der Boot-Modus auf Master Serial 
(Für den Platform Flash) stehen. Da gibts ja sicherlich einen kleinen 
DIP Schalter.

von uwe (Gast)


Lesenswert?

>Nach einigen Downloads eines bit-files habe ich gemerkt, dass die
>werksseitig installierte Funktion nicht mehr gegeben ist.
>Kann es sein, dass das flash durch mein file kapuutgemacht oder
>überschrieben wurde?

Wurde überschrieben würde ich sagen. Was sagt denn das Handbuch ? 
Normalerweise haben die Flash Speicher mehr Speicher als für eine 
Konfigutration. Ist da nen Mäuseklavier oder nen Mikrocontroller auf dem 
Board ?

von Punkt Setzer (Gast)


Lesenswert?

Google: Digilent Spartan3E Manual  ->
http://www.digilentinc.com/Data/Products/S3EBOARD/S3EStarter_ug230.pdf

Inhaltsverzeichnis: FPGA configuration Options -> S. 25 ff

Tabelle 4.1 Configuration Mode Jumper Settings (J30):

JTAG: 0:1:0
SPI   1:1:0

RTFM,

von Vanilla (Gast)


Lesenswert?

Punkt Setzer schrieb:
> Google: Digilent Spartan3E Manual  ->
> http://www.digilentinc.com/Data/Products/S3EBOARD/S3EStarter_ug230.pdf
>
> Inhaltsverzeichnis: FPGA configuration Options -> S. 25 ff
>
> Tabelle 4.1 Configuration Mode Jumper Settings (J30):
>
> JTAG: 0:1:0
> SPI   1:1:0
>
> RTFM,


JTAG ist auch im SPI Mode nutzbar

RTFDSH

Mfg

Vanilla

von Punkt Setzer (Gast)


Lesenswert?

Vanilla schrieb:
> JTAG ist auch im SPI Mode nutzbar
>
> RTFDSH


Das Ding bootet nicht vom Flash (SPI?)  das ist das Problem.

RTFT,

von Paul B. (Gast)


Lesenswert?

Nun es wäre schon denkbar, dass da ein Jumper abgefallen ist. Oder es 
fehlt die VCCAUX-Spannung für JTAG. Oft ist auch die auf den PCBs 
gejumpered, um flexibel zu sein.

von J. Tagger (Gast)


Lesenswert?

Die Jumper sind noch alle drauf und sie stimmen auch mit der geplanten 
Ladefunktion laut Erklärung in dem Manual überein. Das JTAG Laden ging 
wie erwartet immerzu auch ohne irgendwas.

Ich habe aber nun etwas gefunden: In einem Beispieldesign wird ein 
VGA-Ausgang benutzt und davon unabhängig die PINs für das "Strata Flash" 
bedient, die mit der eigentlichen Funktion nichts zu tun haben. Kann es 
sein, dass man das in jedem eigenen Design machen muss?

Plausibel wäre mir eine Art pauschales disable - wobei nirgends etwas 
derariges dokumentiert ist. (was bei Xilinx ja nun auch wieder nichts 
heissen muss).

von Christian R. (supachris)


Lesenswert?

Für das Booten an sich ist es vollkommen egal was für ein Design eben 
geladen ist bzw. geladen werden soll und was dsas mit den Pins des 
Parallel Flash anstellt. Beim Booten sind entweder alle I/Os hochohmig 
oder mit Pull Up, externe Komponenten sind somit in der Regel 
deaktiviert. Aus welcher Quelle soll denn der FPGA booten? Hast du mal 
ein Verify auf dem Speicher gemacht, die Flash Files sind doch bei den 
Boards meist dabei...

von J. S. (engineer) Benutzerseite


Lesenswert?

Soweit mir in Erinnerung geblieben ist, gab es auf dem Digilent ein 
StrataFlash, das parallel zu irgendwas hing- ich meine, zum 
LCD/Controller. Jedenfalls konnte man das irgendwie alternativ 
ansprechen. Dazu waren die entsprechenden Leitungen zu steuern.

Habe mal rasch in einem alten Projekt nachgesehen. Das waren die 
Steuerleitungen.

NET "FLASH_CE"  LOC = "D16" |IOSTANDARD = LVTTL  |SLEW = SLOW  |DRIVE = 
2 ;
NET "FLASH_OE"  LOC = "C18" |IOSTANDARD = LVTTL  |SLEW = SLOW  |DRIVE = 
2 ;
NET "FLASH_WE"  LOC = "D17" |IOSTANDARD = LVTTL  |SLEW = SLOW  |DRIVE = 
2 ;

Gfs hast Du die falsch angeteuert und das flash überschrieben. Ich bin 
aber nicht sicher, ob das bei dem boar auch das boot flash war. In jedem 
Fall sollte es möglich sein, das boot flash auszulesen und mit verify zu 
prüfen, ob es lesbar und schreibbar ist.

Das Original gibt es bei Xilinx auf der Seite.

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.