Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20641 Discussions

3000A CLDL - occasionally powers on bad ?

BDegu
Novice
466 Views

I have a design that uses the EPM3128ATC100 CPLD.  I have a couple of returned boards with the 3128 that have an odd problem that I need to understand:

When instrument is powered ON the CLPD will either be good and perform as designed, or it powers on in a bad state where the operation does not match the design.  Once powered it is either good, or bad, so it seems like an something with how it is powering up.  I'm a bit puzzled and worked on another issue for the past week but need to get back on this soon.  Any thoughts would be appreciated.

 

Thanks,     Bryan

0 Kudos
1 Solution
cb01810
Novice
428 Views

A quick look at Digikey indicates that many, if not all, of the EPM3128 family members are listed as "obsolete." This may not be a good part to be using in a new design, but check with your Intel rep to be sure.

There are many possibilities for erratic CPLD behaviours, but most fall into these three categories:

  1. Not using a fully synchronous design structure (e.g. having gated clocks)
  2. Not debouncing / registering inputs, especially if they go to multiple places in a design or into state machines.
  3. Using the part outside of its limits (e.g., clock frequency, input setup times)
  4. Not including a global reset

I hope this is helpful

 

View solution in original post

0 Kudos
3 Replies
cb01810
Novice
429 Views

A quick look at Digikey indicates that many, if not all, of the EPM3128 family members are listed as "obsolete." This may not be a good part to be using in a new design, but check with your Intel rep to be sure.

There are many possibilities for erratic CPLD behaviours, but most fall into these three categories:

  1. Not using a fully synchronous design structure (e.g. having gated clocks)
  2. Not debouncing / registering inputs, especially if they go to multiple places in a design or into state machines.
  3. Using the part outside of its limits (e.g., clock frequency, input setup times)
  4. Not including a global reset

I hope this is helpful

 

0 Kudos
BDegu
Novice
344 Views

Thanks, This was very helpful.  After reviewing and improving the reset for synchronous de-assertion it seems to be working correctly.   

0 Kudos
Ash_R_Intel
Employee
351 Views

As suggested by other community user, we recommend you to follow the path. This thread will be transitioned to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you


0 Kudos
Reply