Check for Hardware Errors in Microcontrollers for Stable PCB Design
Engineers are notorious for skipping the manuals when putting up DIY furniture. I remembered how it took me twenty minutes before realizing that I’ve missed out a piece of wooden support that should have been inserted in the initial stage. I spent another thirty minutes dismantling and reinstalling a multi-tiered shelf, just because I skipped the manual.
In electronics, you’ll have no choice but to pore through manuals and datasheets for various components. Often, you’ll have little issues with the final product. Yet, things could go horribly wrong if you overlooked an important document labeled as errata.
Hardware Errors in Microcontrollers: Errata Documentation
When working on a complicated design, it may take a few iterations until you get a perfect PCB. The same applies to the microcontrollers. Mistakes do happen in IC design and manufacturing processes that may result in a microcontroller behaving differently than stated in the datasheet.
An errata is a document that informs hardware designers of the faults that have been discovered in a specific microcontroller. It highlights specific details of which version of the microcontroller is affected and the specific modules involved.
In some cases, the errata offers a workaround for the faults in the microcontroller’s silicon. But there are occasions where no solutions are available for the faults, and this is when you’ll be in deep trouble if you’ve skipped the errata prior to designing.
Common Problems In Errata That Affect PCB Hardware
I’ve designed with different models of microcontrollers, and I’ve never discovered one free from a single problem. You know what they say about always planning for the worst case scenario and saving the surprise for when things work out better than expected. With that said, I learned the importance of errata from a very painful lesson.
It was in a period where microcontrollers with built-in real-time clock (RTC) were growing in popularity and offered a space-saving alternative to external RTC. What I least expected is the on-chip RTC to have a problem with accuracy in normal operating temperatures. Such inaccuracy was not a problem that could be identified easily during prototyping. And when hundreds of production units are deployed, it is the beginning of an operational nightmare.
Some of the problems highlighted in errata can be addressed by the firmware. Others may affect the hardware and the entire design architecture as a whole. Here are some issues that I’ve encountered in an errata.
1. RTC Battery leakage.
In a well-designed circuit, the battery that is connected to an RTC will last for years. I’ve encountered a defect in one of the microcontrollers where the RTC drains the battery quickly. It would be months before the battery requires a replacement.
The state of RTC battery in a couple of months, drained by a faulty microcontroller.
2. Faulty General Purpose Input Output (GPIO) Pins
It’s frustrating if you can’t turn on a simple LED with the microcontroller. After hours of debugging and troubleshooting, you are torn between suspecting the firmware or hardware. In my case, it turns out that one of the GPIO pins on the microcontroller is faulty and I’ve chosen that particular pin from the others that are working fine.
3. Inaccurate Analog To Digital Converter.
In industrial applications, you’re banking on the microcontroller to provide accurate readings of an analog input. Not so when the internal Analog to Digital Converter (ADC) suffers from the noise introduced by adjacent digital modules. There’s no workaround except inserting an external ADC converter to the design.
These are just some of the problems that you’ll find in an errata. Others may not result in major hardware revision but may restrict the operations limit of the microcontroller.
No Errata, No Problems?
Most microcontrollers are accompanied with errata. But if you can’t seem to find an errata document, chances are, the microcontroller that you’ve selected is a newly released chip. This means you’re stepping into a region of unknown and with no warning of what lies ahead.
Without an errata, you’ll never know if the microcontroller will self-implode.
I was once tempted by a newly released ARM9 microcontroller that I rushed to implement it for a new, high-value project. No errata warned me that the microcontrollers would crash if it operates near its maximum operating temperature. Needless to say, the remedial works involve revising the design with a different microcontroller, hours of code porting and on-site replacements work.
If you’ve had a habit of neglecting errata, start studying the document now and revise your design if you have to. Thankfully, in using OrCAD PCB Designer, I had the tools to help fix my design quickly as well as the constraint manager to plan ahead for future edits and boards.
If you’re looking to learn more about how Cadence has the solution for you, talk to us and our team of experts.