FPGARelated.com
Forums

Argh! Need help debugging Xilinx .xsvf Player (XAPP058)

Started by Bob ●May 1, 2008
I'm trying to get the .xsvf player in XAPP058 to work, but I haven't
been able to do so.  I have been able to do port.c, and I see signals
that seem quite reasonable.  But the FPGA DONE bit never gets
asserted.

If I enable debugging output, and "play"  a  simple GetIdCode .xsvf
file, I see the chip (Xilinx Spartan-3) responding with the correct
value (0x01434093), so it seems things are more or less okay.

I can play my .xsvf files (which are generated by the svf2xsvf utility
from the app note, downloaded yesterday) in iMPACT, and they work just
fine.

When I Googled it, I found one thread titled "Configuration via JTAG
using an Embedded Controller" from December, but there was not
resolution.  The one responder suggested that if DONE doesn't go high,
then there's a problem; they also guessed that a "post-amble" is
missing, and to re-read the documentation, but I'm not sure what
documentation is being referred to!  I haven't been able to find any
mention of it in XAPP058 nor XAPP503!

Okay, but I'm not sure where to look for this!  I've played the file
using iMPACT, and it works - so it would seem iMPACT adds such a "post-
amble" automagically?  How do I get this into my svf (and hence, xsvf)
files?

Thanks!
-Bob
"Bob" <rsg.uClinux@gmail.com> wrote in message 
news:294e5ba1-814c-4e98-a4fd-d331ec15ab7e@w74g2000hsh.googlegroups.com...
> > Okay, but I'm not sure where to look for this! I've played the file > using iMPACT, and it works - so it would seem iMPACT adds such a "post- > amble" automagically? How do I get this into my svf (and hence, xsvf) > files?
Bob, Try creating xsvf directly from iMPACT. Simply choose XSVF file in the output menu. When finished writing go to the same menu and choose Finish Writing. This works for me... /Mikhail
> Bob, > > Try creating xsvf directly from iMPACT. Simply choose XSVF file in the > output menu. When finished writing go to the same menu and choose Finish > Writing. This works for me...
Mikhail, Thanks for the idea, and I just tried it, but sadly, no joy - it still doesn't work! Any other ideas, anyone? Thanks, Bob
On May 1, 11:13 pm, Bob <rsg.uCli...@gmail.com> wrote:
> > Bob, > > > Try creating xsvf directly from iMPACT. Simply choose XSVF file in the > > output menu. When finished writing go to the same menu and choose Finish > > Writing. This works for me... > > Mikhail, > > Thanks for the idea, and I just tried it, but sadly, no joy - it still > doesn't work! > > Any other ideas, anyone? > > Thanks, > Bob
When you use iMpact instead of your xsvf player, do you see a warning about changing the startup clock? Make sure that the startup clock is set to JTAG in the configuration settings when you build the bit file. Also check the startup options to check how many clocks you need at the end of configuration to set the DONE output. This may be the "postamble" mentioned in the other thread. Theoretically just adding a few more cycles of TCK at the end of the configuration process should fix this unless your startup clock is incorrectly configured to use the CCLK pin instead. HTH, Gabor
On May 2, 8:30 am, Gabor <ga...@alacron.com> wrote:
> When you use iMpact instead of your xsvf player, do you see a warning > about changing the startup clock? Make sure that the startup clock is > set to JTAG in the configuration settings when you build the bit file. > Also check the startup options to check how many clocks you need at > the end of configuration to set the DONE output. This may be the > "postamble" mentioned in the other thread. Theoretically just > adding a few more cycles of TCK at the end of the configuration > process should fix this unless your startup clock is incorrectly > configured to use the CCLK pin instead.
Hi Gabor, Yes, I do see that warning, at least sometimes. I've always been a little confused about that message, but given that it has always "worked" before, meaning that iMPACT seemed happy to make things work. Seems this could well be it. Looking at the Properties dialog for the "Generate Programming File" process, I see "FPGA Start-Up Clock" under "Startup Options" , which is indeed set to CCLK - seems this is the default setting, is that true? So you are suggesting I change this to "JTAG Clock", right? I'm asking this detail because I won't be able to try this until Sunday, and I don't want to miss something stupid on my part! And just in case, where do I "check the startup options to check how many clocks you need"? Is this in the data sheet? Thanks, Gabor, I'll let everyone know how it goes! -Bob
Bob,

The startup clock problem didn't occur to me because I am actually 
programming a Platform Flash rather than FPGA, thus CCLK is the correct 
clock in my case....

> Looking at the Properties dialog for the "Generate Programming File" > process, I see "FPGA Start-Up Clock" under "Startup Options" , which > is indeed set to CCLK - seems this is the default setting, is that > true? So you are suggesting I change this to "JTAG Clock", right?
That's what you have to do.
> And just in case, where do I "check the startup options to check how > many clocks you need"? Is this in the data sheet?
Under the same "Start Options" you can see Done (output Events) set to probably 4 and Release Write Enable set to probably 6. The last number I believe is the number of extra clocks required after the bitstream has been shifted in the chip. However, I don't think this is your problem as I am sure iMPACT adds all the required cycles to your xsvf file. I am pretty sure your problem is with the startup clock as Gabor noticed. /Mikhail
On 2 Mai, 19:32, "MM" <mb...@yahoo.com> wrote:
> Bob, > > The startup clock problem didn't occur to me because I am actually > programming a Platform Flash rather than FPGA, thus CCLK is the correct > clock in my case.... > > > Looking at the Properties dialog for the "Generate Programming File" > > process, I see "FPGA Start-Up Clock" under "Startup Options" , which > > is indeed set to CCLK - seems this is the default setting, is that > > true? So you are suggesting I change this to "JTAG Clock", right? > > That's what you have to do. > > > And just in case, where do I "check the startup options to check how > > many clocks you need"? Is this in the data sheet? > > Under the same "Start Options" you can see Done (output Events) set to > probably 4 and Release Write Enable set to probably 6. The last number I > believe is the number of extra clocks required after the bitstream has been > shifted in the chip. However, I don't think this is your problem as I am > sure iMPACT adds all the required cycles to your xsvf file. I am pretty sure > your problem is with the startup clock as Gabor noticed. > > /Mikhail
impact DOES NOT and CAN NOT change startup clock if playing back already generated xsvf files. just think about it. it can not do it. so if the xscv played with impact work, then it is valid (also correct startup clock) Antti
On May 2, 1:32 pm, "MM" <mb...@yahoo.com> wrote:
> Bob, > > The startup clock problem didn't occur to me because I am actually > programming a Platform Flash rather than FPGA, thus CCLK is the correct > clock in my case.... > > > Looking at the Properties dialog for the "Generate Programming File" > > process, I see "FPGA Start-Up Clock" under "Startup Options" , which > > is indeed set to CCLK - seems this is the default setting, is that > > true? So you are suggesting I change this to "JTAG Clock", right? > > That's what you have to do.
Double argh! This still doesn't work. I set the JTAG clock and it still doesn't work! Any _other_ ideas? Thanks! -Bob
"Bob" <rsg.uClinux@gmail.com> wrote in message 
news:87f1d4cf-1a31-4218-8c60-7da009716ee1@j22g2000hsf.googlegroups.com...
> > Double argh! This still doesn't work. I set the JTAG clock and it > still doesn't work! > > Any _other_ ideas? >
I guess Antti is right... Anyway, which version of the tools are you using? What is you microcontroller? Do you have any external pullups? Do you disconnect the cable when running your player? There is a number of Answer Records on Xilinx site, which might be relevant to your problem. e.g. http://www.xilinx.com/support/answers/22255.htm /Mikhail
On May 2, 11:34 pm, "MM" <mb...@yahoo.com> wrote:

> I guess Antti is right... Anyway, which version of the tools are you using?
9.2i
> What is you microcontroller?
Freescale MCF5234 Coldfire
> Do you have any external pullups?
No.
> Do you disconnect the cable when running your player?
Yes
> There is a number of Answer Records on Xilinx site, which might be relevant to your problem. > e.g.http://www.xilinx.com/support/answers/22255.htm
I've looked, but I can't seem to find one that helps... I need to get this working by Friday, so I hope someone has some ideas? Thanks, -Bob