Nexys4 mit xc3sprog verwenden

Gast #3802614
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.
Gast #3802818
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren