Here are 9 simple steps, which will help you to design first-time-running boards:
1) Import/Use/Follow reference schematics & reference boards
When you re-use existing and working schematic, your chance that your board will work is quite high.
2) Add optional circuits and 0R resistors into your schematic
If you are not sure if a part of your circuit will work the way you want, place there optional components (not fitted by default). These 0R resistors or optional circuits will be fitted and will bypass the problematic parts in case of problems.
3) Stay compatible with software / firmware
You really want to stay compatible with existing software or firmware.
4) Think about what will happen and what you are going to do after you power up the board for the very first time
You need to be sure your board will power up & reset correctly, and you need to be sure you know how you are going to load the initial software/firmware and debug it.
5) Check Symbols and Footprints properly
I have seen so many mistakes caused by wrong footprint. Don’t do same mistakes.
6) Take time to browse and check your schematic
Take enough time to browse your schematic to find and correct connection mistakes. I always find some!
7) Once the placement is ready, build a paper model of your PCB
Many boards had to be redesigned because something doesn’t fit.
8 ) Follow design guides and layout recommendations
Good chip manufacturers provides guidelines which help you with layout and to design the board properly. Design guides really help – and you will learn a lot just by reading them.
9) DO NOT DO SILLY MISTAKES!
Most of the time when a board has to be redesigned the reason is simple: a silly mistake. I have seen it so many times! Just be careful and check everything.
The latest prove that following these points really works is our iMX6 Rex project. Both boards, the iMX6 module and Baseboards are sold as the very first prototype. The boards are quite complex with a lot of components (900+), mechanically advanced (stacked boards, a lot of connectors) and high speed interfaces such DDR3 memories, PCIE, SATA, HDMI. You can check the design and download the Schematic and PCB files here >