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
rickman
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...

Regards,

Thomas

formatting link
- Home of EEBlaster and JPEG-Codec

Reply to
thomas.entner99

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
rickman

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
rickman

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.