====== General Guidelines for Hardware Design ====== ===== Architecture ===== Architecture is a big topic. The purpose here is not to cover the entire topic. Want to point it out that it pays to begin with interface and connector choices. ===== Power ===== - Begin with a power tree that include voltage/current requirements. - Keep power sequence in mind for both turn-on and turn-off. - most of the digital ICs don't like to be back biased meaning voltage on any of its pins goes beyond VCC. This can happen during power-on when VCC is low. - Reverse plug-in protection can be a user friendly feature if the power comes from external. ===== Reset ===== - Similar to power, please consider which IC needs to come up first by releasing reset in a specific sequence. - It is also necessary to hold the reset until VCC stabilizes if the IC does not have built-in power-on reset feature (most modern ICs have POR). ===== Clock ===== - Clock tree is a common design document (just like power tree) to document how the clock is generated and distributed. ===== Debug Features ===== - Have clear mind how to program and debug the circuit. JTAG is standard but can be complicated and requires expensive debugger. - DEBUG UART can be much simpler for small MCUs. - It is also common to have two wire proprietary debug interfaces. Consider referencing to EVK how programming/debug is implemented. It is also a cheap way to use EVK debug feature to program/debug your own design without having to purchase a separate debugger. - It is very helpful to have LEDs to show visual sign of life. E.g. to indicate power is up, or to indicate a GPIO can wiggle. - The general bring-up procedure is to check Power, Reset & Clock. ===== Power Measurement Features ===== - MCU power consumption is very much dependent on the program that is running. Characterizing power consumption is a career by itself. - It can be very handy to have instruments built-in to measure power rail voltage/current. ===== ESD Protection ===== - Don't forget to have ESD protection elements for external accessible interfaces. ===== EMI Consideration ===== - Good layout - Filtering - Shielding