Design for Function and Performance
- Check symbol pinouts against the data sheet, paying special attention to the part package (e.g., chips often come in multiple physical packages with different pin numbers)
- Check connector pinouts and orientation (top or bottom of board, inversion of pins)
- Check the data sheet for each part to ensure all support circuitry (e.g., external resistors for configuration) is present
- If an external oscillator or crystal is used, check that all support circuitry is present (e.g., low-ESR X7R capacitors)
- Check that crossing wires that should be connected have a dot at the intersection, and those that should not be connected do not have a dot
- For ICs, check that all power and ground pins are connected
- Run the schematic design rules check and resolve all errors
Design for Reliability
- When using an analog to digital converter, it's a good idea to filter the signal in hardware first with a band pass filter. This helps eliminate spurious noise that can corrupt your readings
- De-bounce all mechanical switches in hardware
- Check that all resistors have a wattage listed, and that wattage has at least a 50% margin
- Check that all capacitors have a working voltage listed, and that working voltage has at least a 25% margin
- Add a fuse to each power rail to help protect the circuit against accidental damage (e.g., shorting power and ground). Buy extra fuses.
- Power supply has a 25% current safety margin over the maximum calculated operating current
For ICs, make sure:
- Bypass/decoupling capacitors are present for each chip. (0.1 uF ceramic for every power pin AND 1 uF, 10 uF, or 100 uF tantalum for every 10 to 20 ICs) (see Bypass Capacitor Basics page)
- Pull up or pull down resistors are used, rather than hardwiring signal pins to power planes
- Pull up or pull down resistors are used on all unused IC inputs. One exception is microcontrollers, which should have unused I/O pins tied to test points
Design for Testing
- Critical signals are connected to headers and/or test points to facilitate easy testing and debugging
- Test points are attached to key signals or unused pins that may be useful in the future (e.g., extra microcontroller I/O pins)
- Zero-ohm resistors are used in series on critical nets (e.g., power nets) to allow easy troubleshooting of circuit subsystems
Design for Manufacturability/Service/Accessibility/Assembly
- Group components into labeled modules matching with the labels on the block diagram
- There is a way to connect power to each board (e.g., a connector)
- Connectors are used for off-board connections. Always include at least one ground wire/signal return path in connections between boards
- Check that in-system programming headers exist and include any required support circuitry (e.g., pull-up resistors). This information can be found in the microcontroller data sheet.
- Check that all components have a real part number (meaning you could copy and paste the part number into a distributor's search engine and return one part). Resistors, capacitors, and inductors can be labeled with their values (e.g., 0.1uF) instead of the full part number.
- Add a surface-mount LED and current-limiting resistor to each power rail to provide a visual indication that the power supplies are on
Thanks for this great post, i find it very interesting and very well thought out and put together. I look forward to reading your work in the future. wy825
ReplyDelete