www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Xilinx Starterkit + USB-Programmierkabel + Linux >:(

Autor: yalu (Gast)
Datum: 19.07.2006 21:09

Wenn ich das Board des Xilinx/Digilent Spartan-3E-Starterkit per
USB-Kabel von meinem Linux-Rechner (2.6.17.1) mit iMPACT (ISE 8.1.03i
oder 8.2.01i) programmieren möchte, poppt beim Verbindungsaufbau (z.B.
über dem Menüpunkt "Cable Setup") folgende Meldung auf:

| 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.
| [  OK  ]

Wenn ich OK klicke, fängt tatsächlich ein Update-Prozess, wie in der
Meldung angekündigt, an. Beim nächsten Versuch erscheint die Meldung
wieder.

Wer hat
- das gleiche Problem,
- das Problem nicht, obwohl er ein Xilinx-Board (vielleicht auch ein
anderes als
  das Spartan-3E) per USB am Linux-Rechner hängen hat oder
- eine Lösung des Problems?

Ein bereits seit Wochen laufender Dialog mit dem Xilinx-Support hat
bisher noch nicht den entscheidenden Durchbruch gebracht. Deswegen
hätte es mich interessiert, ob ich der einzige auf der Welt bin, der
dieses Problem hat oder vielleicht sogar der einzige, der das Board in
dieser Umgebung nutzt.

Hier noch ein paar weitere Infos, die interessant sein könnten:

Unter Windows tritt das Problem nicht auf. Deswegen schließe ich einen
Hardwaredefekt aus.

Wenn ich bei eingeschaltetem Board das USB-Kabel aus- und wieder
einstecke, funktioniert's auch unter Linux. Mit diesem Workaround kann
ich im Moment ganz gut leben, aber nervig ist's trotzdem. Wird das
Board aus- und wieder eingeschaltet, ist das Problem auf's Neue da.

Das Firmware-Update bezieht sich auf das XC2C256-CPLD auf dem Board,
das wohl zusammen mit dem CY7C68013A-Mikrocontroller für die
USB-JTAG-Umsetzung zuständig ist.

iMPACT gibt im Fehlerfall folgendes Log aus:

---------------------------------------------------------------------------
Welcome to iMPACT
// *** BATCH CMD : setMode -bs
// *** BATCH CMD : setMode -bs
// *** BATCH CMD : setCable -port ttyS1 -baud -1
Reusing A10173F5 key.
Reusing 250173F5 key.
Connecting to cable (Usb Port - USB22).
Checking cable driver.
File version of /home/xilinx/bin/lin/xusbdfwu.hex = 1021(dec), 03FD.
File version of /etc/hotplug/usb/xusbdfwu.fw/xusbdfwu.hex = 1021(dec),
03FD.
 Cable PID = 0008.
 Max current requested during enumeration is 150 mA.
 Cable Type = 3, Revision = 0.
 Setting cable speed to 6 MHz.
Cable connection established.
Firmware version = 1021.
CPLD file version = 0012h.
CPLD version = 0000h.
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.
---------------------------------------------------------------------------

Nach Anwendung des Workarounds (Aus-/Einstecken des USB-Kabels) sieht
das Log folgendermaßen aus:

---------------------------------------------------------------------------
--Welcome to iMPACT
// *** BATCH CMD : setMode -bs
// *** BATCH CMD : setMode -bs
// *** BATCH CMD : setCable -port ttyS1 -baud -1
Reusing A10173F5 key.
Reusing 250173F5 key.
Connecting to cable (Usb Port - USB22).
Checking cable driver.
File version of /home/xilinx/bin/lin/xusbdfwu.hex = 1021(dec), 03FD.
File version of /etc/hotplug/usb/xusbdfwu.fw/xusbdfwu.hex = 1021(dec),
03FD.
 Cable PID = 0008.
 Max current requested during enumeration is 280 mA.
 Cable Type = 3, Revision = 0.
 Setting cable speed to 6 MHz.
Cable connection established.
Firmware version = 1021.
CPLD file version = 0012h.
CPLD version = 0012h.
-------------------------------------------------------------------------

Im Fehlerfall gelingt es der Software offensichtlich nicht, die
CPLD-Firmwareversion zu erkennen und wird deswegen als 0000h
angenommen. Da die aktuelle, im ISE-Paket enthaltene Version aber 0012h
ist, wird die Notwendigkeit zum Update gesehen. Im zweiten Fall wird die
Version sofort richtig erkannt (0012h), so dass problemlos
weitergearbeitet werden kann.

Es gibt ein paar wenige Howtos zum Thema ISE+Linux im Netz, die bei
diesem Problem aber auch nicht weiterhelfen.

Meine letzte Hoffnung war ISE 8.2i (+SP1). Diese hat sich gerade eben
zerschlagen :-(
Autor: H. Gregor Molter (Gast)
Datum: 24.07.2006 14:48

Hi,

Bei uns an der Uni müssen wir den "Rausziehen - Reinstecken"
Workaround auch machen (Xilinx XUP Board's)! Mit diversen Distro's
immer das gleiche Problem.

Ein WiMi hatte mal die von Xilinx vorgeschlagene Distro (RedHat, oder
so?) installiert. Da geht es ohne rausziehen und reinstecken direkt.

Haben dann den RedHat Kernel genommen und damit ein Debian gebootet das
hat aber auch nicht geklappt. Liegt also wohl nicht am Kernel sondern an
der "Userspace" Software.

BTW: Weißt Du wann es 64-Bit Treiber für das Impact gibt (xpcdrvr)?
Gruß,
  Gregor
Autor: yalu (Gast)
Datum: 25.07.2006 17:08

@Gregor

Viele Dank für die Info. Jetzt weiß ich wenigstens, dass es nicht an
meiner Selbstbaufrickeldistro liegt.

Irgendwie habe ich das Gefühl, dass es sich dabei um ein Timimg-Problem
bei der ersten Einrichtung des USB-Geräts handelt. Diese geschieht in
mehreren Stufen:

Nach dem Einschalten des Boards hat der Cypress FX2-Mikrocontroller auf
dem Board, der das USB-Interface realisiert, noch keine
anwendungsspezifische Software an Bord. Diese wird vom PC nach Erkennen
des USB-Geräts upgeloadet. Danach wird der FX2 resettet und meldet sich
mit anderen IDs (diesmal als Xilinx-Produkt) erneut am USB an. Dabei
wird es aber immer noch mit 12 Mbit/s eingerichtet, obwohl 480 Mbit/s
auf beiden Seiten möglich wären. Nach dem Aus- und Einstecken werden
dann auch die 480 Mbit/s angezeigt. Die FX2-Software wird dabei nicht
ein zweites Mal upgeloadet und der FX2 nicht nochmals resettet.
Deswegen vermute ich, dass beim ersten Versuch (direkt nach dem Upload)
irgendwas auf dem FX2 noch nicht ganz initialisiert ist, nach dem
Aus-/Einstecken aber sehr wohl, da die Software dabei nicht neu
gestartet wird.

Vielleicht braucht man tatsächlich eine Distro, die sich mit der
Einrichtung der USB-Geräte etwas mehr Zeit lässt.

Es gibt übrigens eine relativ neue Version der FX2-Software unter

  ftp://ftp.xilinx.com/pub/utilities/fpga/xusbdfwu.zip

Diese ist sogar zwei Versionsnummern neuer als die mit 8.2i SP1
mitgelieferte Version und behebt immerhin das 12/480-Mbit/s-Problem.
Aber Aus- und Einstecken muss man immer noch :-(
Autor: yalu (Gast)
Datum: 28.07.2006 14:26

nochmal @Gregor

Entschuldigung, ich hatte ganz verpennt, Deine Frage zu beantworten,
auch wenn dei Antwort Dir wahrscheinlich nicht arg weiterhilft:

Nein, ich weiß leider nicht, wann die 64-Bit-Treiber für Impact kommen.
Aber frag doch mal beim Xilinx-Support nach. Nach dem die Hürden der
Registriererei überwunden sind, sind die Leute dort eigentlich sehr
hilfbereit.
Autor: SiO2 (Gast)
Datum: 16.09.2006 21:05

Kann mal jemand den Link posten, wie beschrieben ist, wie ich die
Treiber fuer das Webpack unter 2.16.7 und neuer erstellen kann? Bei mir
kommt das Problem, daß exportierte Funktionen nur mit GPL-Code laufen,
2.6.16 ist der Kernel der bei mir deswegen läuft (ich weiss, man muss
nicht immer das neueste haben ;) ).

thnx
Autor: Joerg (Gast)
Datum: 21.09.2006 14:51

Hallo zusammen,

ich habe auch mind. eine Woche damit verbracht Impact unter Linux (32
Bit) zum laufen zu bekommen -- alles nur begrenzt erfolgreich.

Ich Benutze jetzt http://inisyn.org/src/xup/ -- das funktioniert ganz
hervorragend...
Autor: SiO" (Gast)
Datum: 21.09.2006 16:15

Danke, werd mir mal ansehen. Ich hab nur 1Tag gebraucht :))), und bin
halt auf 2.6.16 umgestiegen, weils die einzigste moeglichkeit (ausser
nochaelter) war :(((((.
Autor: SiO2 (Gast)
Datum: 21.09.2006 16:53

Ist das WebPack bei euch auch so lahm? (ok unter win ist es das auch ;)
), aber bis impact startet oder gar pace, das ist nicht akzeptabel.
0%systemauslastung, und trotzdem bis zu 1-2 min (grob geschaetzt).
Autor: H. Gregor Molter (Gast)
Datum: 21.09.2006 17:51

Ist der "portmap" gestartet? Falls nicht dauert das starten der Tools
bei mir auch ewig. Ansonsten ist alles fix oben.
Autor: SiO2 (Gast)
Datum: 22.09.2006 16:18

Portmap ist gestartet, aber kein geschwindigkeiitsvorteil. oder muss
noch was configuriert werde? ich nutze gentoo, und habs einfach nur
gestartet, ohne config etc
Autor: Sebastian B. (sfreak)
Datum: 31.10.2006 18:34

Hi!
Ich versuche gerade das Webpack 8.2i zusammen mit dem Spartan-3E Kit
unter Ubuntu (Kernel 2.6.15) zum Laufen zu bringen.

Welche Treiber habt ihr denn installiert? Ich habe den Windriver 802,
aber beim einstecken wird das Board scheinbar nicht erkannt. Brauche ich
irgendwelche weiteren Treiber?

Sebastian
Autor: Rick Dangerus (Gast)
Datum: 31.10.2006 22:06

@Sebastian:

Ich brauchte bei 2.6.17 den WinDriver 8.11, hab allerdings 'nur' das
ParallelCable.

Rick

Antwort schreiben

Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
  • Aussagekräftigen Betreff wählen
  • Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
  • JPEG-Dateien (.jpg) nur für Fotos verwenden, Schaltpläne, Screenshots usw. als PNG oder GIF anhängen

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel





Hinweis: der Originalbeitrag ist mehr als 6 Monate alt.

webmaster@mikrocontroller.netImpressumWerbung auf Mikrocontroller.net