Forum: FPGA, VHDL & Co. Flash programmieren


von Dennis R. (dennis84)


Angehängte Dateien:

Lesenswert?

Hallo an alle,
mir ist es gelungen mein FPGA mit JTAG zu programmieren. Da dieses 
jedoch nach Deaktivierung der Spannung seine Programmierung verliert, 
habe ich ein Flash dazugebaut. Leider scheitert die Programmierung 
dieses.

Was ich verwende:
- Spartan 6 XC6SLX9 TQG144 ( ab Seite 28 
http://www.xilinx.com/support/documentation/user_guides/ug385.pdf )
- N25Q032A13ESE40F ( 
https://www.micron.com/~/media/Documents/Products/Data%20Sheet/NOR%20Flash/Serial%20NOR/N25Q/n25q_32mb_3v_65nm.pdf 
)
- ISE Project Navigator 14.2
- Beschaltung als Bild beigefügt

Vorgehensweise:
1.) ISE Impact -> Create PROM File
2.) Configure Single FPGA, Storage Device: 32M, Format: MCS, Add-Non 
Configuration Data Files: No
3.) Bit-File ausgewählt, Add Another Device: No
4.) Rechtsklick: Generate File, Generate Succeeded
5.) Unter Boundary Scan: Add Xilinx-Device, ADD SPI/BPI, .mcs-File 
ausgewählt
6.) SPI PROM, N25Q32, Data Width: 1
7.) Programmierverusch: Program Failed, auch ein Erase failed

Fehlermeldung:
INFO:iMPACT - Current time: 05.12.2012 11:17:26
PROGRESS_START - Starting Operation.
Maximum TCK operating frequency for this device chain: 25000000.
Validating chain...
Boundary-scan chain validated successfully.
'1': IDCODE is '000000' (in hex).
'1': ID Check failed.
INFO:iMPACT:2488 - The operation did not complete successfully.
INFO:iMPACT - SPI Device not found.
INFO:iMPACT:2488 - The operation did not complete successfully.
PROGRESS_END - End Operation.
Elapsed time =      0 sec.


Könnt ihr mit weiterhelfen?

von Uwe (Gast)


Lesenswert?

Du mußt in der Chain das FPGA sehen und das PROM. Aber ich blicke grade 
nicht deinen Schaltplan. Kannst du mal schematisch aufzeichen wie du was 
verbunden hast ?

von Christian R. (supachris)


Lesenswert?

Indirekte Programmierung von SPI Flash am Spartan 6 geht in der 14.2 und 
14.3 nicht. Du musst dafür entweder die gesamte ISE auf 14.1 downgraden 
oder die 14.1 Lab Tools parallel installieren.

von User (Gast)


Lesenswert?

Christian R. schrieb:
> Indirekte Programmierung von SPI Flash am Spartan 6 geht in der 14.2 und
> 14.3 nicht.

???
ich verwende 14.3 und bin in der Lage mit iMPACT ein N25Q64-Flash 
'hinter' einem 6SLX16 zu programmieren !

von Dennis R. (dennis84)


Angehängte Dateien:

Lesenswert?

Das Bild im Anhang zeigt wie das bei mir vor dem Programmierversuch 
aussieht.

Verbindungen Flash nach FPGA:
1 -> 38
2 -> 65
3 -> 62
4 an DGND
5 -> 64
6 -> 70 über 22 Ohm
7 -> 61
8 an 3,3 V

Die Aussagen von Christian R. und User(Gast) widersprechen sich. Müssen 
vielleicht bestimmte Einstellungen gemacht werden, die ich oben nicht 
gemacht habe, damit es geht?

von Christian R. (supachris)


Lesenswert?

Bei mir kann ich auch keine SPI Flashes am S6 indirekt programmieren.

http://www.xilinx.com/support/answers/52567.htm

von Dennis R. (dennis84)


Lesenswert?

Ich habe auf einem anderen Rechner die Version 14.1 installiert. Leider 
hat dort die Programmierung auch nicht geklappt. Es muss also noch an 
etwas anderem liegen. Hat jemand noch eine Idee?

@Autor: User (Gast) Datum: 05.12.2012 13:49
Waren hier gesonderte Einstellungen nötig, die von meinen weiter oben 
abweichen?

von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

Was sagt dein Logikanalysator?

von Dennis R. (dennis84)


Lesenswert?

[quote]Was sagt dein Logikanalysator?[/quote]

Während der Programmierung mit ISE Project Navigator 14.2 tat sich an 
den Pins des Flashs das Folgende:

Pin1 von 1,8 V auf 3,3 V kurzzeitig
Pin2 bleibt bei 0 V
Pin3 von 0,0 V auf 3,3 V kurzzeitig
Pin4 bleibt bei 0,0 V
Pin5 bleibt bei 0,0 V
Pin6 bleibt bei 0,0 V
Pin7 bleibt bei 0,0 V
Pin7 bleibt bei 3,3 V

Mit kurrzeitig ist gemeint, dass der Pegel für etwa eine drittel Sekunde 
auf 3,3 V geht und dann wieder auf den Ursprungspegel zurück.

von Christian R. (supachris)


Lesenswert?

Hm, an CCLK sollte schon ein Takt zu sehen sein, und Chip Selct des 
Flash muss auf Low gehen. Mit der 14.1 gehts bei mir bei allen Spartan 6 
problemlos (aber sehr langsam, das fetzt einfach nicht, gerade beim 
LX150 wartet man ja ewig). Ganz sicher alles korrekt verdrahtet? Was 
passiert beim Power On Boot? Versucht der Spartan da was aus dem Flash 
zu lesen, wenn du auf Master SPI stellst? Da müsste ein normaler 
Lese-Zugriff stattfinden...

von Dennis R. (dennis84)


Lesenswert?

Danke für die Antwort, aber wie stelle ich auf Master SPI?

von Duke Scarring (Gast)


Lesenswert?

Christian R. schrieb:
> aber sehr langsam, das fetzt einfach nicht, gerade beim
> LX150 wartet man ja ewig
Hast Du Quad-SPI schon aktiviert? Das bringt ein bissel was.

Duke

von Christian R. (supachris)


Lesenswert?

Duke Scarring schrieb:
> Hast Du Quad-SPI schon aktiviert? Das bringt ein bissel was.

Kann der Flash nicht, und ist auf der Platine nicht passend verdrahtet. 
Naja, Fremdfirma halt, die das gebaut hat.

von Christian R. (supachris)


Lesenswert?

Eventuell hilft es (vorausgesetzt alles ist korrekt verkabelt), die 
Umgebungsvariable XIL_IMPACT_SKIPIDCODECHECK auf 1 zu setzen. Dann 
umgeht Impact den ID Check und programmiert den SPI Flash auch wenn der 
nicht in der Liste auftaucht bzw. die ID nicht stimmt.

von Dennis R. (dennis84)


Lesenswert?

So ich habe es nun hinbekommen mit einem anderen Flash-Baustein. Wer 
damit auch Probleme hat: Mit dem Baustein M25P80 und der ISE Design 
Suite 13.3 klappt es. Die neueren haben einen Bug ( 
http://www.xilinx.com/support/answers/52567.htm ).

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.