USB Download Cable for Lattice Devices

R

rickman

Guest
I am looking to incorporate the download capability for the Lattice USB
download cable into a design. I found an app note on this but it uses a
slightly old chip the FT2232D. FTDI refers to this chip as "Please note
that the FT2232D is not an new generation of device." I assume they are
indicating that you shouldn't start a new design with this chip, but I'm
not sure.

Looking at the XP2 development kit they seem to use the FT2232H with a
slightly different schematic. They omit an analog switch which is used
as a multiplexer to use the same pins for two different functions, JTAG
and I2C. I guess in the XP2 design they don't need the I2C interface.

Does anyone know which design is in the Lattice HW-USBN-2A cable?

I also followed a number of links I found in the searches on this and
found several projects for open source debugging cables using FTDI
devices. One is OOCDLink with not so much documentation. Another is
usbjtag which seems to be nothing but dead links at this point. There
are others also.

Looks like this FTDI chip could be a useful tool for JTAG debugging, but
it is a little hard to corral the hardware.

--

Rick
 
On Mon, 01 Jul 2013 00:58:08 -0400, rickman wrote:

I am looking to incorporate the download capability for the Lattice USB
download cable into a design. I found an app note on this but it uses a
slightly old chip the FT2232D. FTDI refers to this chip as "Please note
that the FT2232D is not an new generation of device." I assume they are
indicating that you shouldn't start a new design with this chip, but I'm
not sure.

Looking at the XP2 development kit they seem to use the FT2232H with a
slightly different schematic. They omit an analog switch which is used
as a multiplexer to use the same pins for two different functions, JTAG
and I2C. I guess in the XP2 design they don't need the I2C interface.

Does anyone know which design is in the Lattice HW-USBN-2A cable?

I also followed a number of links I found in the searches on this and
found several projects for open source debugging cables using FTDI
devices. One is OOCDLink with not so much documentation. Another is
usbjtag which seems to be nothing but dead links at this point. There
are others also.

Looks like this FTDI chip could be a useful tool for JTAG debugging, but
it is a little hard to corral the hardware.

I did something similar in a 2009 design; I had an embedded x86 that
needed to configure a Xilinx FPGA, so I put an FT2232H on the board as a
USB-JTAG converter.

Avoid the FT2232D if you can; you need the -H or one of the newer parts
to get 480Mb/s USB 2.0. 12Mb/s seems so slow these days.

I'm an X and A guy (no experience with Lattice) but I would hazard a
guess that many different types of JTAG probes would work with your FPGA,
given suitable driver software. Reverse engineer a few and find one with
a design you like. There's nothing restricting you to a design from a
(clearly old) Lattice app note.

Regards,
Allan
 
On 7/1/2013 8:02 AM, Allan Herriman wrote:
On Mon, 01 Jul 2013 00:58:08 -0400, rickman wrote:

Looks like this FTDI chip could be a useful tool for JTAG debugging, but
it is a little hard to corral the hardware.


I did something similar in a 2009 design; I had an embedded x86 that
needed to configure a Xilinx FPGA, so I put an FT2232H on the board as a
USB-JTAG converter.

Avoid the FT2232D if you can; you need the -H or one of the newer parts
to get 480Mb/s USB 2.0. 12Mb/s seems so slow these days.

I'm an X and A guy (no experience with Lattice) but I would hazard a
guess that many different types of JTAG probes would work with your FPGA,
given suitable driver software. Reverse engineer a few and find one with
a design you like. There's nothing restricting you to a design from a
(clearly old) Lattice app note.
Yes, that is what I am thinking. But I'm looking for hard info to
minimize my development time. The "suitable driver software" means
using the Lattice software which should just work. Once we are finished
testing the next batch of boards I will pry open the JTAG cable Lattice
sells. Although I bought it back in 2008 so it likely has the 2232D
design.

I'm concerned about the software not liking what I build. It *is*
pretty touchy software and there is a small flash part that needs to be
programmed just right.

What did you have to do to get yours to work with the X part? Where did
you get the flash programming file?

--

Rick
 
On Mon, 01 Jul 2013 18:04:35 -0400, rickman wrote:

On 7/1/2013 8:02 AM, Allan Herriman wrote:
On Mon, 01 Jul 2013 00:58:08 -0400, rickman wrote:

Looks like this FTDI chip could be a useful tool for JTAG debugging,
but it is a little hard to corral the hardware.


I did something similar in a 2009 design; I had an embedded x86 that
needed to configure a Xilinx FPGA, so I put an FT2232H on the board as
a USB-JTAG converter.

Avoid the FT2232D if you can; you need the -H or one of the newer parts
to get 480Mb/s USB 2.0. 12Mb/s seems so slow these days.

I'm an X and A guy (no experience with Lattice) but I would hazard a
guess that many different types of JTAG probes would work with your
FPGA,
given suitable driver software. Reverse engineer a few and find one
with a design you like. There's nothing restricting you to a design
from a (clearly old) Lattice app note.

Yes, that is what I am thinking. But I'm looking for hard info to
minimize my development time. The "suitable driver software" means
using the Lattice software which should just work. Once we are finished
testing the next batch of boards I will pry open the JTAG cable Lattice
sells. Although I bought it back in 2008 so it likely has the 2232D
design.

I'm concerned about the software not liking what I build. It *is*
pretty touchy software and there is a small flash part that needs to be
programmed just right.

What did you have to do to get yours to work with the X part? Where did
you get the flash programming file?

I got it to work by kicking it over the wall to the software guy.

He said that he found a generic driver (in source form) for the FTDI part
and modified it to do exactly what was required.

The "small flash part" was actually an EEPROM (IIRC, may be wrong) and we
used some VID/PID values out of a range that was allocated to us by FTDI.
The actual values didn't matter as we controlled the software.

It's also possible to use port numbers to identify devices rather than
VID/PID. That's what we do on a freshly manufactured board with blank
eeproms. Some software identifies each USB device on the board from its
location then programs the appropriate VID/PID into it.



[OT] This reminds me of the first time I put a USB 3.0 host controller in
a product. The device was a first generation part and it needed to load
its firmware from an external flash. We weren't able to source the
contents (that worked) from the manufacturer.
When USB3 cards started appearing in shops [in 2010?] we bought one and
cloned its flash.

Allan
 
On 7/1/2013 12:58 AM, rickman wrote:
I am looking to incorporate the download capability for the Lattice USB
download cable into a design. I found an app note on this but it uses a
slightly old chip the FT2232D. FTDI refers to this chip as "Please note
that the FT2232D is not an new generation of device." I assume they are
indicating that you shouldn't start a new design with this chip, but I'm
not sure.

Looking at the XP2 development kit they seem to use the FT2232H with a
slightly different schematic. They omit an analog switch which is used
as a multiplexer to use the same pins for two different functions, JTAG
and I2C. I guess in the XP2 design they don't need the I2C interface.

Does anyone know which design is in the Lattice HW-USBN-2A cable?

I also followed a number of links I found in the searches on this and
found several projects for open source debugging cables using FTDI
devices. One is OOCDLink with not so much documentation. Another is
usbjtag which seems to be nothing but dead links at this point. There
are others also.

Looks like this FTDI chip could be a useful tool for JTAG debugging, but
it is a little hard to corral the hardware.
I took the dare and opened the case on my current HW-USBN-2A and it is
not an FTDI chip at all. It is a Cypress chip! So if I want to try
using an FTDI chip it won't be duplicating the existing factory cable at
all. I'm a little confused as I thought the FT2232D was what they said
the USB cable had in it and the FT2232H was on the XP2 eval board.

No worries. I still want to look into the FT2232x cable once I get the
current shipment out of the way.

--

Rick
 

Welcome to EDABoard.com

Sponsor

Back
Top