From: Griffin on

> > Secondly, if I understand correctly, the pins of my custom peripheral
> > are being removed from the project. I've looked around the internet a
> > bit and suspect this might be done due to auto-optimization, but
> > considering that these pins are, indeed, being used in the user_logic
>
> It's not enough for a signal to be used by a process.
> If a top level output port is not driven by a process -- no output pin.
> If a top input input  port is not read by a process   -- no input pin..

Thanks, it was something along those lines; there was a missing 'in'
declaration in one part of my project that EDK wasn't catching as it
compiled; it was just optimizing that part out. Thanks!

> > file, and the registers that they store their values in are being read
> > out by my application C code,
>
> correctly or all zeros?


Actually, at this point, it's neither. It's a bit of a dumb thing, but
I haven't figured out how to actually run my firmware on my FPGA
board. I'm using the ML402 (Virtex-4), which has a compact flash card
that can store bitstreams or ACE files to configure the FPGA with, but
I haven't been able to work out how to do it just yet (my compact
flash reader being on backorder doesn't help either).

I'm trying to figure out how to program the ML402 using ONLY the JTAG
connector, but there are a whole bunch of settings (ACE, Linear Flash,
Platform Flash, and 8 DIP switches for a 'configuration address') that
I can't seem to find the right combination of.

Has anyone got any experience programming the ML402 using only JTAG?
Is it even possible?

Thanks!

Sean.


From: Ed McGettigan on
On Jan 10, 8:28 pm, Griffin <captain.grif...(a)gmail.com> wrote:
> > > Secondly, if I understand correctly, the pins of my custom peripheral
> > > are being removed from the project. I've looked around the internet a
> > > bit and suspect this might be done due to auto-optimization, but
> > > considering that these pins are, indeed, being used in the user_logic
>
> > It's not enough for a signal to be used by a process.
> > If a top level output port is not driven by a process -- no output pin.
> > If a top input input  port is not read by a process   -- no input pin.
>
> Thanks, it was something along those lines; there was a missing 'in'
> declaration in one part of my project that EDK wasn't catching as it
> compiled; it was just optimizing that part out. Thanks!
>
> > > file, and the registers that they store their values in are being read
> > > out by my application C code,
>
> > correctly or all zeros?
>
> Actually, at this point, it's neither. It's a bit of a dumb thing, but
> I haven't figured out how to actually run my firmware on my FPGA
> board. I'm using the ML402 (Virtex-4), which has a compact flash card
> that can store bitstreams or ACE files to configure the FPGA with, but
> I haven't been able to work out how to do it just yet (my compact
> flash reader being on backorder doesn't help either).
>
> I'm trying to figure out how to program the ML402 using ONLY the JTAG
> connector, but there are a whole bunch of settings (ACE, Linear Flash,
> Platform Flash, and 8 DIP switches for a 'configuration address') that
> I can't seem to find the right combination of.
>
> Has anyone got any experience programming the ML402 using only JTAG?
> Is it even possible?
>
> Thanks!
>
> Sean.

It's not that complicated. Just hook up the JTAG cable to the JTAG
connector on the board and start iMPACT. The LinearFlash, PROM, and
SystemACE settings are for power-on configuration only.

Ed McGettigan
--
Xilinx Inc.
From: Anssi Saari on
Griffin <captain.griffin(a)gmail.com> writes:

> Has anyone got any experience programming the ML402 using only JTAG?
> Is it even possible?

Well, sure. You can always program just the FPGA over JTAG and worry
about permanent storage later.