Lattice JED File Formats and Device Type ID Code

I have a .jed file for a design in an XP device. These devices have
gone EOL and I am trying to extend my options. The .jed file is for a C
type device, specifically the LFXP3C-3TQFP100. I need to adapt this
file to use with the LFXP3E-3TQFP100.
My understanding is that the same die is used for both devices with a
pad bonded to ground or something to indicate the internal voltage
regulators should be bypassed in the E version. It also flips one bit
in the device ID code to 0x01254043 from 0x01255043 for the C version.
A Lattice FAE told me this although he didn't seem to want to be
considered authoritative.
The .jed file does not seem to contain the ID code value anywhere in hex
or in binary. It is possible this is split over two lines which would
be very hard to search for without writing a program to read it in and
do the search.
I do see where the device name is listed in the "NOTE" section of the
file. Otherwise there is no mention of the device this goes into. As a
first attempt, I tried changing the part name in the NOTE field but that
didn't seem to work. The error reported is
Device#1 LFXP3C: Failed to verify the ID
(Expected: 0x01255043 Read: 0x01254043).
Any idea where the programmer is getting the device ID code it is using
to compare to the ID code read from the part? Is it possible it is
getting this from some other file that is in this directory? I should
try copying the JED file to a separate directory.
Any other ideas?
Just so you know, if I absolutely have to, I can recreate the .jed file
by compiling from sources. But this will be a new "design" according to
my customer and it will require the board to go through certification
again and possibly EMI testing. If I just program the E version of the
FPGA I think we can bypass all that.

Rick C
Reply to
Loading thread data ...
Just some thoughts from my side (I have not used Lattice for quite some time myself):;
If you have still the same version of the compiler, you should be able to get the same bitfile (for the same device).
Then you can compile it for the new device - hopefully you get again the same bitfile with only the device ID different (and possible some checksum).
Otherwise you can still try to figure out the changes in the header of both files, as this is where I would expect this ID info.
Or as you already suggested, maybe the programmer is using some "programmer config file" and the ID is not in the bit-file at all...
formatting link
- Home of EEBlaster and JPEG-Codec
Reply to
Yes, if I had the tools from 8 years ago on a running machine I would try that. But I don't.
I've looked at the .JED file header. That's where I found the device name. But changing that does not affect the programmer.
Lattice has a Programming File Utility which lets you compare two .JED files. When I compare the original file to one with the part number changed in the Note field, it reports the two as identical and does not list anything in the Notes section. So I assume that is ignored. The device specification must be in the .XCF file which I believe can be changed. The test fixture is 150 miles away so I have to wait for the factory to try the things I come up with.

Rick C
Reply to
That was it. The JED file was fine, the tech was using the same .XCF file which specifies the part number to the programming tool. Once that was changed it worked like a champ!

Rick C
Reply to

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.