Forum Discussion

PhilipJ451's avatar
PhilipJ451
Icon for New Contributor rankNew Contributor
2 years ago

Cyclone 10 power-up latches up

Hi all,

we have a number of designs that use the Cyclone 10CL025YE144 device. They are programmed by a Host CPU using PS mode.

Occasionally we run up against a batch of devices that appear to get into some kind of "latch up" condition when powering up where pins all seem to be actively pulled low. I say this because one of the IO pins has an LED (cathode) connected to it and this LED lights up, this surprises me because I thought that all IO pins remain Hi-Z until the chip is programmed.

In addition the nSTATUS line remains low where it is said that it should go high after a high-low--high transition of the nCONFIG line.

I have read the available data and as far as I can see it says that the supply voltages (3V3, 2V5 and 1V2) can come up in any order just so long as tey are monotonic and have reasonable rise time (between 50uS and 50mS) which ours do...

Does anyone have any advice or experience of this condition ?

Suggestions will be gratfully received

PhilipJ

18 Replies

    • PhilipJ451's avatar
      PhilipJ451
      Icon for New Contributor rankNew Contributor

      Hello,

      thank you for your reply, I have read the document you point to and I agree, it says the Cyclone 10 "is immune from latch up during hot-socketing".

      _BUT_

      we are definitely seeing an issue with our products were about 1 in 10 units presents a condition after power-up but before any programming takes place, were an IO pin that is connected to an LED (LED anode is connected to VCCIO, 3.3V with current limiting resistor) causes the LED to illuminate. The data states that "The Intel® Cyclone® 10 LP device family does not drive out until the device is configured and working" so this LED illumination can only happen if the IO pin is sinking current to Ground.

      We are checking our production quality but it would be a stretch to think that 1 in 10 boards could all have a similar manufacturing "short-circuit" that would cause an effect like this.

      The chip is also giving a constant low level output on the nSTATUS pin. The datasheet for PS programming mode states that it should go high after we toggle the nCONFIG line low and then high again. The nSTATUS pin also has a 10k pull-up resistor so something is pulling this line low as well.

      Combining these 2 symptoms, we have to suspect that it is something going wrong with the 10CL025YE144I7G device.

      Is there anything that you or your colleagues can suggest that we check to try and determine what is going on with these chips?

      Are there tests that can be performed with the Quartus software and a JTAG device connected to the chip, to examine internal status ?

      Thank you for your time and attention

      Kind regards

      PhilipJ

    • PhilipJ451's avatar
      PhilipJ451
      Icon for New Contributor rankNew Contributor

      Hi Again,

      thank you for the information.

      I am familiar with Signal Tap, I use it quite often to examine what is going on in my logic design.

      My problem is that the FPGA is not allowing me to program it and as Signal Tap is compiled into my design I cannot get Signal Tap into the chip in order to debug with it.

      My question was, are there any "chip status" registers within the JTAG part of the chip that can be read via the USB-Blaster before the chip has been programmed to determine why the nSTATUS line (and it would seem all the other IO pins) remain low and sink current when the data-sheet says they should all remain in Hi-Z state.

      regards

      PhilipJ

  • AqidAyman_Altera's avatar
    AqidAyman_Altera
    Icon for Regular Contributor rankRegular Contributor

    As far from my concern, I am not aware of any registers within the JTAG part of the chip that can be read before the configuration happened.


    How about the conf_done signal? Is it high or not after the nstatus remain low? Can you share the snapshot of the signals?


    Regards,

    Aqid


    • PhilipJ451's avatar
      PhilipJ451
      Icon for New Contributor rankNew Contributor

      Hi,

      once again thank you for your time and interest in my problem.

      The conf_done line also remains low. In fact I think all the pins of the chip (except for the power pins of course) appear to be low and sinking current which is why I thought it might be some kind of problem with the chip latching up during power-up.

      I have added an image that shows the rise of the 3 power rails at power up:

      Orange is 3V3

      Blue is 2V5

      Purple is 1V2

      Do they look ok to you?

      I think I read something about "if an IO pin has a high signal on it, before power is applied to the chip this may cause a latch-up". Do you know if this is correct?

      Many of the IO pins of the FPGA are connected to other devices in the design and I have not checked all pins to ensure that the above does not happen. The 3 power lines for the FPGA are themselves derived from a 5V PSU and it is possible that other devices which power directly from this 5V (although with 3V3 IO) may "come up" faster than the FPGA's own power lines.

      Should I be concerned for this?

      Kind regards

      PhilipJ

      • GLees's avatar
        GLees
        Icon for Contributor rankContributor

        I had a similar-sounding problem with the MAX10 which has a known bug; some outputs are driven during configuration. The work-around was to check the box labelled "Enable real-time ISP to allow background programming when available" in the programming tool. Maybe this will work for you.

    • PhilipJ451's avatar
      PhilipJ451
      Icon for New Contributor rankNew Contributor

      I haven't because I have been rather tied up with other projects.

      Also the suggestion of "setting an option in the programming tool..." is confusing.

      The programming tool is out Host CPU that programs the chip using the PS method.

      However it has prompted me to think, "would these chips also fail to program if I were using a ByteBlaster?" which I will try as soon as I get a bit of time.

      Thanks to all for the continuing interest in my problem

      regards

      PhilipJ

    • PhilipJ451's avatar
      PhilipJ451
      Icon for New Contributor rankNew Contributor

      Sadly, nothing helpful.

      I tried using the USB blaster but it just couldn't find the JTAG chain in the chip so no further progress.

      regards

      PhilipJ

      • GLees's avatar
        GLees
        Icon for Contributor rankContributor

        The fact that your Blaster can't identify the JTAG chain suggests there's a problem lurking somewhere that needs to be fixed. Whether or not it's related to your "latch-up" problem remains to be seen.

        I won't tell you how to do your job, but I will tell you what I would do in your situation. I would first resolve the JTAG situation and see if it has any bearing on your problem. If not, then at least you're in a position to try the USB Blaster and see if you learn anything. Either it does or doesn't help, with or without the check-box, etc. These kinds of problem often take a lot of banging around before they get resolved. It's not a linear process. I'll quote my favorite line from the movie "Twelve Monkeys";

        "Science ain't an exact science".

  • AqidAyman_Altera's avatar
    AqidAyman_Altera
    Icon for Regular Contributor rankRegular Contributor

    Hi PhilipJ,


    No worries. You can always post a new thread in this community forum if you have any progress or when you identify the real issue behind this.


    • PhilipJ451's avatar
      PhilipJ451
      Icon for New Contributor rankNew Contributor

      Hi,

      I'm back on this problem again. Based on a previous reply I thought that I would look into why the Blaster (programmer) couldn't identify the chip and I captured the JTAG waveforms but the TDO pin is just outputting a constant low.

      I have checked all the chips power pins and they all have correct voltages on them.

      I have checked the GND pins and again they all seem to be soldered ok.

      The only thing I can't check is, it would seem from the PCB layout drawing that there is a "heat spreader plate" on the underside of the chip we are using (10CL025YE144C8G). Our PCB design appears to allow for this to be soldered to the GND plane.

      What would happen if this was not soldered to GND ? We have had some cases in the past (other designs) where our manufacturing sub-contractor makes a mistake and this pad is not solder pasted.

      Does any of the internal circuitry connect through this pad instead of the normal GND pins ?

      thanks

      PhilipJ

      • GLees's avatar
        GLees
        Icon for Contributor rankContributor

        I had a problem years ago with (as I recall) a Cyclone III part that wouldn't configure. In that family at least the thermal pad on the FPGA HAD to be grounded. After reworking the board to ground the pad, everything configured properly. I would search through the "pin connection guideline" document for your part and see if the thermal pad must be grounded.

  • 12349's avatar
    12349
    Icon for New Contributor rankNew Contributor

    Did you ever find the cause for this? We have a couple of boards doing the same thing.

  • FvM's avatar
    FvM
    Icon for Super Contributor rankSuper Contributor

    Hi,
    I read the latest posts so that not connected exposed pad of E144 package is the reason for observed behaviour.

    Missing connection of exposed pad is known to cause erratic FPGA behaviour.

    Regards
    Frank