Forum: FPGA, VHDL & Co. ICE40 Radiant Programmer Error


von Julian (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mir vor einiger Zeit ein Evalboard mit ICE40UP5K gekauft und 
kurz darauf, nachdem der VHDL-Code lief, meine eigene Platine gebastelt.

Ich habe die Schaltung des Evalboards 1 zu 1 umgesetzt, auch den 
gleichen Flash-Speicher genommen, nur ein anderes Package.

Leider erhalte ich beim Programmieren meiner Platine immer die Meldung, 
dass die ID nicht gelesen werden kann. Je nachdem welchen FTDI-Port ich 
auswähle, ob FTUSB-0 oder FTUSB1 erhalte ich als ID x"ff" oder x"00". 
Die Screenshots habe ich oben angehängt.
Egal, wie ich den Teiler einstelle oder sonst etwas, das Ergebnis ist 
immer das selbe.

---------------------------------------
Zur Schaltung:
Die Pins WP-FLASH und HOLD-Flash werden nirgendwo auf GND oder VCC 
gezogen.

---------------------------------------
Was ich bisher versucht habe:
FTDI-Treiber aktualisiert
MOSI und MISO getauscht
Clock-Divider für Program-Speed angepasst

---------------------------------------
Mit meinen gemachten Leitungen kann ich von dem einen ICE40-Evalboard 
ein anderes programmieren. Daher muss der Fehler irgendwo anderst 
liegen.


---------------------------------------
Wisst ihr was ich falsch mache?
Ich freue mich schon auf eure Antworten.

Viele Grüße
Julian

von Julian (Gast)


Lesenswert?

Habs gelöst.

MISO und MOSI waren tatsächlich doppelt verdreht.
Zudem darf man sich nicht irritieren lassen von der Meldung mit der ID. 
Der Radiant-Programmer neigt wohl dazu, dass man mal den FTD-USB1 oder 
den FTD-USB0 braucht. Einer funktioniert dann.

von Duke Scarring (Gast)


Lesenswert?

Ist auf dem Evalboard am FTDI noch ein EEPROM dran?

von Julian (Gast)


Lesenswert?

Genau, es befindet sich noch ein EEPROM am FTDI.

https://www.farnell.com/datasheets/3216753.pdf
Seite 25

von Duke Scarring (Gast)


Lesenswert?

Julian schrieb:
> Genau, es befindet sich noch ein EEPROM am FTDI.
Und wurde der auf dem eigenen Board auch verbaut und genauso 
programmiert wie auf dem Evalboard?
Dort steckt (indirekt) die Konfiguration für den FTDI drin.

von Julian (Gast)


Lesenswert?

Genau, diesen habe ich von einem Evalboard heruntergelötet und auf meine 
Platine wieder eingelötet.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Julian schrieb:
> Der Radiant-Programmer neigt wohl dazu, dass man mal den FTD-USB1 oder
> den FTD-USB0 braucht.

Das stieß mir dazumals auch recht sauer auf.

Irgendwann habe ich dann meinen Workflow auf so eine 
Opensource-Toolchain umgestellt, die den Programmer bedient. Die hat 
nicht solche Macken und denkt auch nicht erst Dutzende von Sekunden 
nach, bevor sie endlich anfängt. Name ist mir gerade entfallen, könnte 
ich aber rausfinden.

von Duke Scarring (Gast)


Lesenswert?

Julian schrieb:
> Genau, diesen habe ich von einem Evalboard heruntergelötet und auf meine
> Platine wieder eingelötet.
Ja, so ähnlich haben wir das bei einem anderen Lattice-Evalboard auch 
gemacht.
Zwischendrin wurde vom EEPROM-Inhalt noch ein Backup gemacht ;-)

Der Spaß mit ID0 und ID1 ist mir dort nicht aufgefallen. Aber die 
Gedenkminute, bevor es losgeht habe ich auch. Wenn 'pgrcmd' direkt aus 
Diamond gestartet wird geht es schneller...

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.