Forum: FPGA, VHDL & Co. Nexys4 mit xc3sprog verwenden


von Ralf (Gast)


Lesenswert?

Hallo Forum!

Ich möchte das Digilent Nexys4 [1] mit xc3sprog [2] konfigurieren.
Und zwar unter MacOS X.

Auf dem Board ist als integrierter Programmer ein FTDI-Chip (FT2232H) 
verbaut, auch wenn die Seite (Seite 6) im Schaltplan [3] wieder mal 
'geschwärzt' ist.

Der Chip/Programmer wird vom System erstmal erkannt:
1
$ system_profiler SPUSBDataType 
2
...
3
        Digilent USB Device:
4
5
          Product ID: 0x6010
6
          Vendor ID: 0x0403  (Future Technology Devices International Limited)
7
          Version:  7.00
8
          Serial Number: 210xxxxxxxxx
9
          Speed: Up to 480 Mb/sec
10
          Manufacturer: Digilent
11
          Location ID: 0x26200000 / 3
12
          Current Available (mA): 500
13
          Current Required (mA): 94
14
...

xc3sprog ließ sich auch irgendwie compilieren (neuste Version aus dem 
SVN), auch wenn da irgendwas mit libftd2xx nicht ganz passt:
1
$ cmake ..
2
-- checking for module 'libftd2xx'
3
--   package 'libftd2xx' not found
4
-- Configuring done
5
-- Generating done

Die Kerneltreiber für FTDI wurden deaktiviert:
1
$ sudo kextunload -b  com.FTDI.driver.FTDIUSBSerialDriver
2
$ sudo kextunload -b  com.apple.driver.AppleUSBFTDI

Aber xc3sprog findet keine JTAG-Chain :-(
1
$ ./xc3sprog -v -c ftdi
2
XC3SPROG (c) 2004-2011 xc3sprog project $Rev: 768 $ OS: Darwin
3
Free software: If you contribute nothing, expect nothing!
4
Feedback on success/failure/enhancement requests:
5
  htttp://sourceforge.net/mail/?group_id=170565 
6
Check Sourceforge for updates:
7
  htttp://sourceforge.net/projects/xc3sprog/develop
8
9
Using built-in device list
10
Using built-in cable list
11
Cable ftdi type ftdi VID 0x0403 PID 0x6010 dbus data 00 enable 0b cbus data 00 data 00
12
Using Libftdi, Using JTAG frequency   1.500 MHz from undivided clock
13
No JTAG Chain found
14
USB transactions: Write 5 read 2 retries 0

Die Variante mit dem Digilent-HS1-Kabel sieht so aus:
1
$ ./xc3sprog -v -c jtaghs1
2
XC3SPROG (c) 2004-2011 xc3sprog project $Rev: 768 $ OS: Darwin
3
Free software: If you contribute nothing, expect nothing!
4
Feedback on success/failure/enhancement requests:
5
  htttp://sourceforge.net/mail/?group_id=170565 
6
Check Sourceforge for updates:
7
  htttp://sourceforge.net/projects/xc3sprog/develop
8
9
Using built-in device list
10
Using built-in cable list
11
Cable jtaghs1 type ftdi VID 0x0403 PID 0x6010 Desc "Digilent Adept USB Device" dbus data 80 enable 8b cbus data 00 data 00
12
Could not open FTDI device (using libftdi): device not found
13
FTD2XX Open failed
14
usage:  xc3sprog -c cable [options] <file0spec> <file1spec> ...
15
  List of known cables is given with -c follow by no or invalid cablename
16
  filespec is filename:action:offset:style:length
17
  action on of 'w|W|v|r|R'
18
....


Unter Windows mit Impact bzw. Vivado funktioniert natürlich alles.

Hat jemand eine Idee, was ich noch probieren könnte?

Grüße,
Ralf



[1] 
http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,1184&Prod=NEXYS4
[2] http://sourceforge.net/projects/xc3sprog/
[3] http://www.digilentinc.com/Data/Products/NEXYS4/Nexys%204_sch.pdf

P.S.: Ein paar Links wurden wegen dem Spamschutzfilter auf htttp 
geändert.

von Christian R. (supachris)


Lesenswert?

Wahrscheinlich stimmt an den Settings für das Enable was nicht, bei dem 
HS1 Versuch stimmt die Bezeichnung nicht.

von Ralf (Gast)


Lesenswert?

Christian R. schrieb:
> Versuch stimmt die Bezeichnung nicht.
Du bekommst ein Freigetränk Deiner Wahl!

Ich hab einen neuen Eintrag in die cablelist.txt gemacht:
1
nexys4        ftdi    6000000 0x0403:0x6010:Digilent USB Device:0:0xe8:0xeb:0x00:0x60

Jetzt sieht das Ganze so aus:
1
$ xc3sprog -v -c nexys4
2
XC3SPROG (c) 2004-2011 xc3sprog project $Rev: 760 $ OS: Darwin
3
Free software: If you contribute nothing, expect nothing!
4
Feedback on success/failure/enhancement requests:
5
  htttp://sourceforge.net/mail/?group_id=170565 
6
Check Sourceforge for updates:
7
  htttp://sourceforge.net/projects/xc3sprog/develop
8
9
Using built-in device list
10
Using cablelist.txt
11
Cable nexys4 type ftdi VID 0x0403 PID 0x6010 Desc "Digilent USB Device" dbus data e8 enable eb cbus data 00 data 60
12
Using Libftdi, Using JTAG frequency   6.000 MHz from undivided clock
13
Cannot find device having IDCODE=3631093 Revision B
14
JTAG loc.:   0  IDCODE: 0x13631093  not found in 'built-in device list'.
15
USB transactions: Write 6 read 3 retries 0

Jetzt noch fix die devlist.txt ergänzt:
1
03631093      6    0x9 XC7A100T

Und schon fluppt das:
1
$ xc3sprog -v -c nexys4 nexys4.bit 
2
XC3SPROG (c) 2004-2011 xc3sprog project $Rev: 760 $ OS: Darwin
3
Free software: If you contribute nothing, expect nothing!
4
Feedback on success/failure/enhancement requests:
5
  htttp://sourceforge.net/mail/?group_id=170565 
6
Check Sourceforge for updates:
7
  htttp://sourceforge.net/projects/xc3sprog/develop
8
9
Using devlist.txt
10
Using cablelist.txt
11
Cable nexys4 type ftdi VID 0x0403 PID 0x6010 Desc "Digilent USB Device" dbus data e8 enable eb cbus data 00 data 60
12
Using Libftdi, Using JTAG frequency   6.000 MHz from undivided clock
13
JTAG chainpos: 0 Device IDCODE = 0x13631093  Desc: XC7A100T
14
Created from NCD file: nexys4.ncd;UserID=0xFFFFFFFF
15
Target device: 7a100tcsg324
16
Created: 2014/09/07 18:43:02
17
Bitstream length: 30606304 bits
18
done. Programming time 5219.4 ms
19
USB transactions: Write 1880 read 9 retries 8

Super, die done-LED geht an, jetzt kann ich mich wieder dem Designen 
widmen...

Vielen Dank!
Ralf

von Christian R. (supachris)


Lesenswert?

Ralf schrieb:
> Du bekommst ein Freigetränk Deiner Wahl!

Dann bitte eine Hopfenkaltschale in der grünen Longneck Flasche aus 
einer norddeutschen Stadt mit J.

Das hätteste aber aiuch selber sehen können :)

von Ralf (Gast)


Lesenswert?

Christian R. schrieb:
> Dann bitte eine Hopfenkaltschale in der grünen Longneck Flasche aus
> einer norddeutschen Stadt mit J.
Ok. Treffpunkt 20:00 Uhr am Artesischen Bunnen am Eingang der Neuse?
Die Lokalität bestimmst Du. Mit den Hopfenkaltschalen habe ich es nicht 
so.

Grüße,
Ralf

von Christian R. (supachris)


Lesenswert?

Ralf schrieb:
> Ok. Treffpunkt 20:00 Uhr am Artesischen Bunnen am Eingang der Neuse?

Danke fürs Angebot, aber ich hab hier zwei kleine Kinder...

von Ralf (Gast)


Lesenswert?

Christian R. schrieb:
> Danke fürs Angebot, aber ich hab hier zwei kleine Kinder...
Nagut. Dann im Mutzelhaus. Obwohl, da gibt es die grünen Flaschen nicht.
Egal. Bin ab Montag allerdings unterwegs im Urlaub, muß also warten...

Grüße,
Ralf

von Christian R. (supachris)


Lesenswert?

Na dann schönen Urlaub. Im Mutzelhaus bin ich tatsächlich ab und an.

von Uwe Bonnes (Gast)


Lesenswert?

Habe das nexys4 in cablelist.txt in Sourceforge SVN aufgenommen.

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.