Page 185 - The Art of Designing Embedded Systems
P. 185
172 THE ART OF DESIGNING EMBEDDED SYSTEMS
Avoid taking notes on scraps of paper. The best solution is a meticu-
lously maintained engineering notebook. Write everything down, clearly
and concisely. The good nuns of my grammar school all but committed
suicide over their failed attempts to teach me penmanship, so such clarity
is a particular headache for me. I’ve learned to slow down and print, since
most of the time I can’t read my own script.
Some engineers document directly into a computer file. If your envi-
ronment is so perfect that you can always seamlessly switch to the editor,
perhaps this works-if you keep backups. In most cases, though, being
stuck in a program you can’t exit forces you to make notes on paper.
Use one set of schematics to record changes. This is your master de-
velopment drawing set. Staple them together and clearly label them as
your masters.
When creating the schematics, go ahead and add comments, just as
we do in the code. For example, document how things work.
For all off-page connections, document what page the connection
goes to.
Whenever you add a part whose Vcc and GND connections are not
obvious, provide a comment that indicates how power and ground connect.
Power connections are as important as the logic, so someone who’s trou-
bleshooting will surely need to check these at some time. Without on-
schematic notes they’ll be forced to go to the databooks.
Similarly, for those nasty parts with pins protruding on all four sides,
add a schematic note that indicates where pin 1 is located, and how the part
is numbered (CW or CCW). Also, add tick-marks on the silk screen for
every fifth pin on large parts. It makes it so much easier to find pin 143. . . .
Assumptions
A misspent youth of blaring rock ’n’ roll left my hearing somewhat
impaired, but helped formulate, of all things, my philosophy of trou-
bleshooting digital systems. The title of the Firesign Theatre’s “Every-
thing You Know Is Wrong’’ album should be our modern anthem for
making progress in the lab.
I hate getting called into a troubleshooting session and finding that
the engineer “knows” that x, y, and z are not part of the problem at hand.
Everything you know is wrong! Is that 5-volt supply really 5 volts at the
PCB? What makes you think ground goes to the chips-when a single part
has 5 or 10 ground connections, make sure all of them are connected.
Could the system be dead because there’s no clock signal? Are you sure
the design isn’t really working-could your experiment be flawed?

