From: Neil Steiner on
A colleague and I were hoping to set up unattended ILA data collection
over long periods and changing conditions. I assumed that the ChipScope
TCL support would provide a way to do that, but when I look more closely
at the ChipScope Engine JTAG Tcl Interface, I find that most of its API
provides only very low-level functionality.

The API in question supports interrogating a device as to its number of
ILA cores, but beyond that, all of the transactions would have to happen
through JTAG data/instruction shift commands. I had hoped that the ICON
or ILA documentation might at least describe the pertinent registers in
those cores, but I seem unable even to find that, and all of my googling
has been fruitless.

Can it really be that nobody else has worked out unattended data
collection with ChipScope? Please dispel that notion for me. Any
pointers or suggestions would be appreciated.
From: emeb on
On Jan 22, 2:59 pm, Neil Steiner <neil.stei...(a)east.isi.edu> wrote:
> A colleague and I were hoping to set up unattended ILA data collection
> over long periods and changing conditions.  I assumed that the ChipScope
> TCL support would provide a way to do that, but when I look more closely
> at the ChipScope Engine JTAG Tcl Interface, I find that most of its API
> provides only very low-level functionality.
>
> The API in question supports interrogating a device as to its number of
> ILA cores, but beyond that, all of the transactions would have to happen
> through JTAG data/instruction shift commands.  I had hoped that the ICON
> or ILA documentation might at least describe the pertinent registers in
> those cores, but I seem unable even to find that, and all of my googling
> has been fruitless.
>
> Can it really be that nobody else has worked out unattended data
> collection with ChipScope?  Please dispel that notion for me.  Any
> pointers or suggestions would be appreciated.

I've been using Chipscope for 5 years now and the lack of high-level
scripting is one of my major complaints (the other being that the UI
bogs down when you create complex projects). It's fairly disappointing
that it's so difficult to build complex testing environments with
Chipscope - it seems like something that wouldn't be too hard to
support.

I ended up creating custom logic blocks to handle this which I
interface via a SPI port to an off-chip ARM processor, then to a PC
via USB. Not nearly as elegant as it could be if Chipscope had a
somewhat higher-level API.

Eric