FPGARelated.com
Forums

Help with Remote debugging ideas.

Started by Marc Kelly June 4, 2009
Hi,

I have an interesting idea/wish and wonder if anyone has had the same
and found a way to solve it.

I often work away from the physical hardware I am playing with and more
recently I've been having a pain trying to find the best way to do
debugging.

I have a Linux machine at the lab, with usb and parallel jtag pods on
it, hooked up to the hardware. For downloading bit streams I usually scp
them to that machine, and then using VNC or ssh I fire up impact and use
that machine to flash the fpgas.

Now, I also use Identify when things are not quite working as I expect,
and this is a pain to use like that, as it requires the whole design to
be copied over to the machine, and that take way to long over DSL.

I know Impact can run as a server, and I have used that pretty often to
remote flash things. I also notice from digging into the Identify
directory ( identify/CseJtag/bin/lin) that it seems to use a core set of
Impact libraries... and I am sure you can guess my thinking here.. Is it
possible to get Identify to also use the remote Impact?? Or would that
require way to much forward thinking by the Tool makers...

The second solution I thought of was "USB over IP" there are drivers for
this in latest linux, but they seem to fall over with the Xilinx POD, it
gets reset often, falls off the bus and then the tools loose connection..

Ideas are welcome...

-- 
/\/\arc Kelly
..Just your average physicist trying to get by in a world full of normal
people...
Marc Kelly wrote:

> I have an interesting idea/wish and wonder if anyone has had the same > and found a way to solve it. > > I often work away from the physical hardware I am playing with and more > recently I've been having a pain trying to find the best way to do > debugging.
...
> Ideas are welcome...
I use simulation. -- Mike Treseler
Mike Treseler wrote:
> Marc Kelly wrote: > >> I have an interesting idea/wish and wonder if anyone has had the same >> and found a way to solve it. >> >> I often work away from the physical hardware I am playing with and more >> recently I've been having a pain trying to find the best way to do >> debugging. > ... >> Ideas are welcome... > > I use simulation.
> -- Mike Treseler
The full board simulation is fine for the things I can think of, just its just pretty hard to connect the modelsim to a real 1Gig ethenet stream and process real data at line speed looking for the 1 in million packet that is causing problems... the hardware can do it a lot faster but it would be nice if I didn't have to sit with it all day waiting for it to fall over. -- /\/\arc Kelly ..Just your average physicist trying to get by in a world full of normal people...
On Jun 4, 3:30=A0pm, Marc Kelly <phmpk@reverse_this_gro.sndnyd.ranehca>
wrote:
> Mike Treseler wrote: > > Marc Kelly wrote: > > >> I have an interesting idea/wish and wonder if anyone has had the same > >> and found a way to solve it. > > >> I often work away from the physical hardware I am playing with and mor=
e
> >> recently I've been having a pain trying to find the best way to do > >> debugging. > > ... > >> Ideas are welcome... > > > I use simulation. > > =A0 =A0 =A0 =A0-- Mike Treseler > > The full board simulation is fine for the things I can think of, just > its just pretty hard to connect the modelsim to a real 1Gig ethenet > stream and process real data at line speed looking for the 1 in million > =A0packet that is causing problems... the hardware can do it a lot faster > but it would be nice if I didn't have to sit with it all day waiting for > it to fall over. > > -- > /\/\arc Kelly > ..Just your average physicist trying to get by in a world full of normal > people...
Any chance you could move all of the development tools into the lab so you only need to run the PC remotely, and not transfer the files? Regards, Gabor
gabor wrote:

> Any chance you could move all of the development tools into the > lab so you only need to run the PC remotely, and not transfer > the files?
I was just trying to find a away to keep my development on my laptop, where everything is nicely installed. I will probably revert to installing a full development suite onto the desktop in the lab and using rsync to keep it up to date, unless my experiments with USB over IP tomorrow work out. It just struck me that it would be something other people had come across needing to do. If i find a good solution, I shall let people know.. -- /\/\arc Kelly ..Just your average physicist trying to get by in a world full of normal people...
On Jun 4, 1:57=A0am, Marc Kelly <phmpk@reverse_this_gro.sndnyd.ranehca>
wrote:
> Hi, > > I have an interesting idea/wish and wonder if anyone has had the same > and found a way to solve it. > > I often work away from the physical hardware I am playing with and more > recently I've been having a pain trying to find the best way to do > debugging. > > I have a Linux machine at the lab, with usb and parallel jtag pods on > it, hooked up to the hardware. For downloading bit streams I usually scp > them to that machine, and then using VNC or ssh I fire up impact and use > that machine to flash the fpgas. > > Now, I also use Identify when things are not quite working as I expect, > and this is a pain to use like that, as it requires the whole design to > be copied over to the machine, and that take way to long over DSL. > > I know Impact can run as a server, and I have used that pretty often to > remote flash things. I also notice from digging into the Identify > directory ( identify/CseJtag/bin/lin) that it seems to use a core set of > Impact libraries... and I am sure you can guess my thinking here.. Is it > possible to get Identify to also use the remote Impact?? Or would that > require way to much forward thinking by the Tool makers... > > The second solution I thought of was "USB over IP" there are drivers for > this in latest linux, but they seem to fall over with the Xilinx POD, it > gets reset often, falls off the bus and then the tools loose connection.. > > Ideas are welcome... > > -- > /\/\arc Kelly > ..Just your average physicist trying to get by in a world full of normal > people...
"IP over USB" is doable (there are USB network adapters), but "USB over IP" is hard to implement (don't want to get into details why). There are JTAG debuggers with the Ethernet interface, and I used to work with one to debug Linux apps on Freescale processors. It'd be nice if Xilinx adds such a pod to their existing ones with USB and Parallel interfaces. - evgeni -- visit http://outputlogic.com : tools that improve productivity --
Marc Kelly <phmpk@reverse_this_gro.sndnyd.ranehca> writes:


> I have an interesting idea/wish and wonder if anyone has had the same > and found a way to solve it.
It's been a little while since I've been using impact, but with Altera it's pretty easy to set up a remote Linux jtagserver (I've dug out a machine of the recycling can for this purpose) where you can run the fpga programmer as well as run signaltap and the NIOS debugger. I have ssh/kermit running on the machine so I can log in and run kermit to control the serial ports on the DUT-board.
> The second solution I thought of was "USB over IP" there are drivers for > this in latest linux, but they seem to fall over with the Xilinx POD, it > gets reset often, falls off the bus and then the tools loose connection..
I've made my own programmer where I can upload fpga images over ethernet. No driver is required, you simply use tftp. However, I can only program FPGA's and other devices (like flash, microcontrollers etc) this way since I've not yet found any documentation on how to interface to signaltap, chipscope, or identify. I guess it should be possible to interface to the NIOS and Microblaze debuggers since they are wrapped around gdb. 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?
Marc Kelly wrote:
> gabor wrote: > >> Any chance you could move all of the development tools into the >> lab so you only need to run the PC remotely, and not transfer >> the files? > > I was just trying to find a away to keep my development on my laptop, > where everything is nicely installed. I will probably revert to > installing a full development suite onto the desktop in the lab and > using rsync to keep it up to date, unless my experiments with USB over > IP tomorrow work out. > > It just struck me that it would be something other people had come > across needing to do. If i find a good solution, I shall let people know.. >
I evaluated various USB solutions recently. The one that seemed most reliable was USB Redirector (from www.incentivespro.com). We use that on our courses now when people program boards attached to their physical PC, but use tools installed on a virtualized PC. The USB is forwarded from the Virtual PC to the real PC. As other people have mentioned, the Xilinx Cableserver and the Altera Remote JTAG server also seem to work - though I've only tried these in the Linux -> PC direction, i.e. running the server on a PC which had the hardware attached, with the tools installed on Linux. There are problems with the Xilinx CableServer talking Linux -> PC in version 10.1.02 which are partially fixed in 10.1.03 and fully fixed in ISE 11. regards Alan -- Alan Fitch Senior Consultant Doulos &#4294967295; Developing Design Know-how VHDL * Verilog * SystemVerilog * SystemC * PSL * Perl * Tcl/Tk * Project Services Doulos Ltd. Church Hatch, 22 Marketing Place, Ringwood, Hampshire, BH24 1AW, UK Tel: + 44 (0)1425 471223 Email: alan.fitch@doulos.com Fax: +44 (0)1425 471573 http://www.doulos.com ------------------------------------------------------------------------ This message may contain personal views which are not the views of Doulos, unless specifically stated.
If you have access to Chipscope you can run an ILA remotely using the
CSE server. You can do the same thing if using an altera signal tap
core.
Marc Kelly <phmpk@reverse_this_gro.sndnyd.ranehca> writes:

> installing a full development suite onto the desktop in the lab and > using rsync to keep it up to date, unless my experiments with USB over
I've been using git a lot lately to keep track of changes I do on many different locations, e.g. simulate at home, commit and push the RTL changes to the build server in the lab etc. 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?