FPGARelated.com
Forums

Xilinx ISP JTAG progaramming (XCF32P using GPIO from V4FX12)

Started by cpope September 12, 2007
I'm trying to do something I think should be simple. I've seen several posts
about building custom jtag programmers using byte blaster emulators or
xilinx jdrive software, etc. so I hope somebody has already solved this.

I have 4 user I/O pins on my V4FX12 device attached to my JTAG scan chain. I
want to drive these lines to reprogram the XCF32P prom which my fpga boots
from. I am running Linux on the PPC inside the FX12 so I'm thinking I can
just cross compile some existing programmer and replace some low level
functions (set tdo, read tdi, set/clear tms).

Does anyone have something like this? Or can suggest what programmer code is
most likely to work in this application?

Thanks,
Clark


On Sep 12, 7:12 pm, "cpope" <cep...@nc.rr.com> wrote:
> I have 4 user I/O pins on my V4FX12 device attached to my JTAG scan chain. I > want to drive these lines to reprogram the XCF32P prom which my fpga boots > from. I am running Linux on the PPC inside the FX12 so I'm thinking I can > just cross compile some existing programmer and replace some low level > functions (set tdo, read tdi, set/clear tms). > > Does anyone have something like this? Or can suggest what programmer code is > most likely to work in this application?
That is what xsvf and svf are for http://www.xilinx.com/bvdocs/appnotes/xapp503.pdf You download a little source code from xilinx, modify the low level code to twiddle the tdi, tdi, tms and tck correctly and replay the programming sequence generated by impact. xsvf is simply a binary coded svf to save some space. jdrive is similar software, but much more bloated C++ code. On Altera, you do the same thing with jam player. http://www.altera.com/support/devices/tools/jam/tls-jam.html Alan Nishioka
"Alan Nishioka" <alan@nishioka.com> wrote in message
news:1189692355.310776.149490@k79g2000hse.googlegroups.com...
> On Sep 12, 7:12 pm, "cpope" <cep...@nc.rr.com> wrote: > > I have 4 user I/O pins on my V4FX12 device attached to my JTAG scan
chain. I
> > want to drive these lines to reprogram the XCF32P prom which my fpga
boots
> > from. I am running Linux on the PPC inside the FX12 so I'm thinking I
can
> > just cross compile some existing programmer and replace some low level > > functions (set tdo, read tdi, set/clear tms). > > > > Does anyone have something like this? Or can suggest what programmer
code is
> > most likely to work in this application? > > > That is what xsvf and svf are for > http://www.xilinx.com/bvdocs/appnotes/xapp503.pdf > > You download a little source code from xilinx, modify the low level > code to twiddle the tdi, tdi, tms and tck correctly and replay the > programming sequence generated by impact. > > xsvf is simply a binary coded svf to save some space. > > jdrive is similar software, but much more bloated C++ code. > > On Altera, you do the same thing with jam player. > http://www.altera.com/support/devices/tools/jam/tls-jam.html > > Alan Nishioka >
Thanks. So you don't recommend using the jdrive code?
On Sep 13, 12:17 pm, "cpope" <cep...@nc.rr.com> wrote:
> "Alan Nishioka" <a...@nishioka.com> wrote in message > > news:1189692355.310776.149490@k79g2000hse.googlegroups.com... > > > > > On Sep 12, 7:12 pm, "cpope" <cep...@nc.rr.com> wrote: > > > I have 4 user I/O pins on my V4FX12 device attached to my JTAG scan > chain. I > > > want to drive these lines to reprogram the XCF32P prom which my fpga > boots > > > from. I am running Linux on the PPC inside the FX12 so I'm thinking I > can > > > just cross compile some existing programmer and replace some low level > > > functions (set tdo, read tdi, set/clear tms). > > > > Does anyone have something like this? Or can suggest what programmer > code is > > > most likely to work in this application? > > > That is what xsvf and svf are for > >http://www.xilinx.com/bvdocs/appnotes/xapp503.pdf > > > You download a little source code from xilinx, modify the low level > > code to twiddle the tdi, tdi, tms and tck correctly and replay the > > programming sequence generated by impact. > > > xsvf is simply a binary coded svf to save some space. > > > jdrive is similar software, but much more bloated C++ code. > > > On Altera, you do the same thing with jam player. > >http://www.altera.com/support/devices/tools/jam/tls-jam.html > > > Alan Nishioka > > Thanks. So you don't recommend using the jdrive code?
No. I tried it and it seems to work at a higher level than svf. It knows more about the JTAG protocol and reads BSDL files, whereas impact handles this when it creates an svf. But svf is simpler to use and implement and I use it exclusively. Alan Nishioka
"cpope" <cepope@nc.rr.com> writes:

> from. I am running Linux on the PPC inside the FX12 so I'm thinking
How do you get the bitstream (xsvf or whatever) into the FX12? Petter -- A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing on usenet and in e-mail?
"Petter Gustad" <newsmailcomp6@gustad.com> wrote in message
news:87abrqb8b8.fsf@gustad.com...
> "cpope" <cepope@nc.rr.com> writes: > > > from. I am running Linux on the PPC inside the FX12 so I'm thinking > > How do you get the bitstream (xsvf or whatever) into the FX12? > > Petter > -- > A: Because it messes up the order in which people normally read text. > Q: Why is top-posting such a bad thing? > A: Top-posting. > Q: What is the most annoying thing on usenet and in e-mail?
I'm running a linux OS so I have several options: ftp, usb thumb drive, or serial. I am worried about the size of the svf file as I only have about 32MB free space internal. -Clark
On 14 Sep, 13:10, "cpope" <cep...@nc.rr.com> wrote:
> "Petter Gustad" <newsmailco...@gustad.com> wrote in message > > news:87abrqb8b8.fsf@gustad.com... > > > "cpope" <cep...@nc.rr.com> writes: > > > > from. I am running Linux on the PPC inside the FX12 so I'm thinking > > > How do you get the bitstream (xsvf or whatever) into the FX12? > > > Petter > > -- > > A: Because it messes up the order in which people normally read text. > > Q: Why is top-posting such a bad thing? > > A: Top-posting. > > Q: What is the most annoying thing on usenet and in e-mail? > > I'm running a linux OS so I have several options: ftp, usb thumb drive, or > serial. I am worried about the size of the svf file as I only have about > 32MB free space internal. > > -Clark
There is one nice advantage of using the jdrive for the XCFxxP devices, and that is the erase time. For the XSVF/SVF player there is a fixed erase time of 140 seconds, which is the maximum time it can take to erase an XCF32P. The jdrive software can sit in a loop polling a bit to see when the erase really completes, if you look in the IEE1532 BSDL file for the XCFxxP device you will see what I mean. There is also a similar issue with the programming time, but since that is a much shorter delay you don't notice it quite so much. Neill.
"cpope" <cepope@nc.rr.com> writes:

> I'm running a linux OS so I have several options: ftp, usb thumb > drive, or serial. I am worried about the size of the svf file as I > only have about 32MB free space internal.
Then you could program on the fly as you transfer the data using any of the above methods. Petter -- A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing on usenet and in e-mail?
<neilla@pipstechnology.co.uk> wrote in message
news:1189772963.643390.40040@22g2000hsm.googlegroups.com...
> On 14 Sep, 13:10, "cpope" <cep...@nc.rr.com> wrote: > > "Petter Gustad" <newsmailco...@gustad.com> wrote in message > > > > news:87abrqb8b8.fsf@gustad.com... > > > > > "cpope" <cep...@nc.rr.com> writes: > > > > > > from. I am running Linux on the PPC inside the FX12 so I'm thinking > > > > > How do you get the bitstream (xsvf or whatever) into the FX12? > > > > > Petter > > > -- > > > A: Because it messes up the order in which people normally read text. > > > Q: Why is top-posting such a bad thing? > > > A: Top-posting. > > > Q: What is the most annoying thing on usenet and in e-mail? > > > > I'm running a linux OS so I have several options: ftp, usb thumb drive,
or
> > serial. I am worried about the size of the svf file as I only have about > > 32MB free space internal. > > > > -Clark > > There is one nice advantage of using the jdrive for the XCFxxP > devices, and that is the erase time. For the XSVF/SVF player there is > a fixed erase time of 140 seconds, which is the maximum time it can > take to erase an XCF32P. The jdrive software can sit in a loop > polling a bit to see when the erase really completes, if you look in > the IEE1532 BSDL file for the XCFxxP device you will see what I mean. > There is also a similar issue with the programming time, but since > that is a much shorter delay you don't notice it quite so much. > > Neill. >
Has anyone looked at xapp975 from xilinx? This is a lightweight version of the programming which claims to not have the erase problem you cite. Would be perfect for my application except: 1. the xcf32p has to be on its own jtag chain - how many times would you have that in a design? 2. the byte interface is not very friendly - would work better if they made it an OPB peripheral 3. revisioning is not supported I'm still going to pursue it as I expect all of these issues could be resolved, it's just that the first version of this came out last month. -Clark