Author Topic: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05  (Read 1007 times)

abcd

  • Active Member
  • *
  • Posts: 12
I have troubles reprogramming the firmware of the CPLD located on my TE0720-03-1CFA board with lattice diamond. What I actually want is to deactivate the internal pull-ups of the Zynq. For this I have to change the firmware which controls the PUDC pin of the Zynq. I emailed Trenz a while ago and asked for a new firmware and got a *.jed file which should do the job. However, I'm not able to bring this into the CPLD, regardless of what I'm doing I always get an error "Failed to verify the ID (Expected 0x012BA043, Read: ....)
What I did so far:

- Set the DIP-switches: S2-2 is set to OFF, S2-3 is set to ON
- I connected the USB cable and started Lattice Diamond Programmer. When I carry out a JTAG scan I get the screenshot in the attachment. The program finds two "Generic JTAG Devices". I guess this is the two CPLDs (one on the TE0720, one on the TE0703)?
- I manually set the Devices to the ones used on the boards: MachOX2, LCMXO2-1200HC
- I used FLASH Read and Save for both of them (I didn't want to program since I don't know which of the devices is the correct one). Earlier I also tried to program one of the devices with the content of the .jed file. The problem is always the same (wrong device ID).

Any ideas of what I'm doing wrong?  Any help would be appreciated.

(As a side question: Why are the pull-ups activated by default? Does this have some idea behind it? I ask this question since I keep finding this problem with many digital ICs/microcontrollers/LVDS-drivers where the "idle state" seems to be "high". It's extremely annoying for me since I usually do power converters where these signals are the gate signals for some power MOSFETs. If you want to reprogram your converter while your DC-link is still charged and your gate signals go all high you end up with fireworks.)

JH

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1605
Re: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05
« Reply #1 on: March 12, 2020, 07:14:56 AM »
Hi,
I think you see still the Xilinx SoC (2 unkown device are ARM and FPGA part).
How old is your TE0703? Maybe you has an older Firmware on the carrier CPLD. CPLD should be detected automatically (cell show show the name but is yellow, you must only press one time into the cell to verify that it is the correct one)

To get access to the TE0703 CPLD:
https://wiki.trenz-electronic.de/display/PD/TE0703+CPLD+Firmwarehttps://shop.trenz-electronic.de/de/Download/?path=Trenz_Electronic/Modules_and_Module_Carriers/4x5/4x5_Carriers/TE0703/REV06/Firmware
  • Connect MiniUSB cable to J4
  • Set DIP Switch S2-3 in OFF position
  • Power ON the board
After Firmware update of the TE0703, you should be able to select TE0720 CPLD:
https://wiki.trenz-electronic.de/display/PD/TE0720+CPLD+Firmware--> In this case ETH connector LED should permanetly switch the color between orange and green: https://wiki.trenz-electronic.de/display/PD/TE0703+CPLD+-+CC703S#TE0703CPLD-CC703S-LED
 Close also all Xilinx programs, check that hw_server.exe is not running and  connect only this JTAG In case you has still problems, please let me now.

br
John


abcd

  • Active Member
  • *
  • Posts: 12
Re: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05
« Reply #2 on: March 12, 2020, 09:10:29 AM »
Hello John,

thanks for your response, I haven't had the idea that I'm actually seeing the Zynq instead of the CPLD. I just tried to reprogram the TE0703 CPLD but I ran into a similar problem:
- I connected the MiniUSB cable
- Set the DIP switches: S2-1 and S2-4 are ON, S2-2 and S2-3 are OFF
- Started Diamond Programmer and ran a JTAG Scan. Only one device was found and automatically recognized as MachXO2 CPLD with the correct device number
- I chose the .jed file available for download for REV05 from Trenz' homepage and clicked program
- Lattice gave me an error (see attached screenshot): Cannot identify detected device on row 1....

There is also a warning in the console in the lower left corner: WARNING - Scan found MachXO2 on row 1 but cannot identify the package. Please manually select the correct device before proceeding.
However, I don't find any menu where I could set the device package. Row 1 just states "All" in the column for "Device Package".

I don't know exactly how old the TE0703 is, I bought it from digikey approximately 2 years ago. There is a number on some sticker on the board: 490361. The number printed on the silkscreen layer is: TE0703-05.

I also uploaded a screenshot of the programmers Help->About menu to make sure that I have the correct programmer installed. I guess I installed the correct programming software, right?

JH

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1605
Re: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05
« Reply #3 on: March 12, 2020, 09:29:44 AM »
Hi,
your TE703 is older than the firmware update, so you must update firmware of TE0703 at first.

I've lattice Version 3.10.0.111.2 and it works on my place.
Quote
WARNING - Cannot identify detected device on row 1. Please manually select the correct device.
Is OK, on my version I the "device" cell is yellow at first and I must only select this cell one time before I can start programming. See screenshots on the attachment.

There are device properties (right click on the cell with device) can you compare this one with my one from the attachment?
I will install newer version later and also try out.
br
John


JH

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1605
Re: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05
« Reply #4 on: March 12, 2020, 09:38:02 AM »
Hi,
 one question, where did you download Lattice Diamond?
Your version is 3.11.2.446.1, on Lattice Webpage I get 3.11.0.396.4
br
John

abcd

  • Active Member
  • *
  • Posts: 12
Re: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05
« Reply #5 on: March 12, 2020, 09:53:20 AM »
Is OK, on my version I the "device" cell is yellow at first and I must only select this cell one time before I can start programming. See screenshots on the attachment.

I guess I found the problem: after I carried out a JTAG scan, the program automatically found the correct device. I then added the file and tried to program the CPLD which didn't work. It seems that even though the device was correctly recognized (also the device properties you attached as a screenshot were correctly displayed) you have to select the device from the drop-down menu again (clicking on "Device" and choosing the exact device which was already displayed again).
I now managed to program both CPLDs.

Thanks for your responses John :)

JH

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1605
Re: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05
« Reply #6 on: March 12, 2020, 11:11:31 AM »
Hi,

Quote
(clicking on "Device" and choosing the exact device which was already displayed again).
on  3.11.0.396.4 (I've also tried out yet) and older you must only click into the yellow cell, correct device was preselected.
But good to hear that it works.

Just out of self-interest, where did you download your newer diamond version?  You don't have to tell me, it doesn't matter. :-) Maybe it's also a country difference.

br
John
 

abcd

  • Active Member
  • *
  • Posts: 12
Re: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05
« Reply #7 on: March 12, 2020, 11:17:13 AM »
I actually downloaded it from lattice (http://www.latticesemi.com/) directly (yesterday), but only the Diamond Programmer, not the entire Lattice Diamond Software (which is only a few MB instead of GB).

JH

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1605
Re: Unable to program CPLD of TE0720-03-1CFA with carrier board TE0703-05
« Reply #8 on: March 12, 2020, 12:23:50 PM »
Hi,
thanks.

Strange that they provide different software versions for programmer, but it's good to know.

br
John