- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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:
- Not using a fully synchronous design structure (e.g. having gated clocks)
- Not debouncing / registering inputs, especially if they go to multiple places in a design or into state machines.
- Using the part outside of its limits (e.g., clock frequency, input setup times)
- Not including a global reset
I hope this is helpful
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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:
- Not using a fully synchronous design structure (e.g. having gated clocks)
- Not debouncing / registering inputs, especially if they go to multiple places in a design or into state machines.
- Using the part outside of its limits (e.g., clock frequency, input setup times)
- Not including a global reset
I hope this is helpful
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks, This was very helpful. After reviewing and improving the reset for synchronous de-assertion it seems to be working correctly.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
![](/skins/images/7B0AB6865064EAE32B30EC9A4E94B48A/responsive_peak/images/icon_anonymous_message.png)
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page