From: Martin Darwin on

Bob wrote:
> In the meantime, in seems there are a number of potential "gotchas"
> with various options that may be applied to the bit file generation
> process. Or to put it another way, I've become quite concerned that
> I'm missing some critical options that may well be documented
> somewhere and I messed it, or perhaps something everyone assumes I
> know when in reality I don't. Can someone who has done this give me a
> concise list of options they used, or what options are critical, or
> can point me to documentation on this (other then XAPP058)? Whatever
> is easy - I'm not asking for anything fancy.
>
> Thanks!
> -Bob
>

I have used XAPP058 to get a working setup. The only thing I struggled
with was getting the DONE pin to go high. I belive the code has two
options for the "RUNTEST" SVF instruction (or something like that): one
is a delay loop and the other puts out clocks. Make sure you pick the
code that puts out the clocks. The delay loop won't work. This was for a
Spartan3A FPGA.

MD
From: Bob on
On May 5, 12:06 pm, "MM" <mb...(a)yahoo.com> wrote:

> I am not sure if this could be your problem, but... normally JTAG signals
> require pullups.

Oh? I've never used them before, but then again, I've only used
iMPACT and the programming cable before...

This one I can't do until Wednesday, but I will try tacking on some
external pull-ups, if possible. Frankly, I don't have a lot of hope
on this, but then again, nothing else seems to work either!

> Bitgen can (and probably does) enable them internally, but
> personally I've never relied upon them and always designed in external
> resistors...

Yes, Bitgen does enable them by default, and I didn't touch these...

> The behaviour with iMPACT might be different because there
> might be some pullups inside of the programming cable and/or simply the
> drivers/receivers are different.

Yeah, who knows?!

>
> /Mikhail

Thanks, but unless the pullups work Wednesday, I'm not sure I'm any
closer. I certainly appreciate all your comments! Any others?

-Bob

From: Bob on
On May 5, 2:48 pm, Martin Darwin <martin.darwin.nos...(a)alcatel-
lucent.com> wrote:
>
> I have used XAPP058 to get a working setup. The only thing I struggled
> with was getting the DONE pin to go high.

Yes, this is exactly my problem!

> I belive the code has two
> options for the "RUNTEST" SVF instruction (or something like that): one
> is a delay loop and the other puts out clocks. Make sure you pick the
> code that puts out the clocks. The delay loop won't work. This was for a
> Spartan3A FPGA.

Okay, but I don't know how to do this. Where do I "pick the code"
that you refer to? I've poked around all the options for the
"Generate Programming File" process, but nothing seems to work, nor
does anything seem to be what you're talking about. It certainly
sounds like you have a great lead, but I don't even know how to follow
it! Can you describe or point me to how exactly do I do this? I
haven't run across it..

Thanks, Martin,
-Bob

From: MM on
"Bob" <rsg.uClinux(a)gmail.com> wrote in message
news:736a625f-4421-4309-a98f-4e645f2b1d7f(a)t54g2000hsg.googlegroups.com...
>
> Okay, but I don't know how to do this. Where do I "pick the code"
> that you refer to?

Martin is talking about the source code for the microcontroller...


/Mikhail


From: Bob on
On May 6, 11:33 am, "MM" <mb...(a)yahoo.com> wrote:
> > Okay, but I don't know how to do this. Where do I "pick the code"
> > that you refer to?
>
> Martin is talking about the source code for the microcontroller...

Oh!!! Do you mean this user-supplied function?

void waitTime(long microsec);

Now we're talking! The version I got suggested three approaches, one
that pulses TCK, one that doesn't, and one that does for short
durations, and doesn't for long ones! Well, I chose the one that
simply delays, as the comments suggested that's okay for Spartan-3; on
the other hand, the default does pulse the TCK! Since this is in
agreement with Martin, I'll try that tonight, and report back...

Thanks, guys!
Bob