Page 129 - The Art of Designing Embedded Systems
P. 129

1 16  THE ART OF  DESIGNING EMBEDDED SYSTEMS


                       the electrical specs page-you  know, the section without coffee spills or
                       solder stains. Skip over those 300 tattered pages about programming in-
                       ternal peripherals, bypass the pizza-smeared pinout section, and really look
                       at those one or two pristine pages of DC specifications.
                           Most CPUs accept TTL-level data and control inputs. Few are happy
                       with TTL on the clock and/or  reset  inputs. Each chip has different re-
                       quirements, but in a quick look through the data books I came up with the
                       following:
                              8086: Minimum Vih on clock: Vcc - 0.8
                              386: Minimum Vih on clock: Vcc - 0.8 at 20 MHz, 3.7 volts at 25
                              and 33 MHz
                              280: Minimum Vih on clock: Vcc - 0.6
                              805 1: Minimum Vih on clock and reset: 2.5 volts
                            In other words, connect your clock and maybe reset input to a normal
                       TTL driver, and the CPU is out of spec. The really bad news is that these
                       chips are manufactured to behave far better than the specs, so often they’ll
                       run fine despite illegal inputs. If only they failed immediately on any vio-
                       lation of specifications! Then, we’d find these elusive problems in the lab,
                       long before shipping a thousand units into the field.
                            Fully 75% of the systems I see that use a clock oscillator (rather than
                       a crystal) violate the clock minimum high-voltage requirement. It’s scary
                       to think we’re building a civilization around embedded systems that, well,
                       may be largely misdesigned.
                            If you drive your processor’s clock with the output of a gate or flip-
                       flop, be sure to use a device with true CMOS voltage levels. 74HCT or
                       74ACTECT are good choices. Don’t even consider using 74LS without at
                       least a heavy-duty pull-up resistor.
                            Those little 14-pin silver cans containing a complete oscillator are a
                       good choice . . . if you read the data sheet first. Many provide TTL levels
                       only. I’m not trying to be alarmist here, but look in the latest DigiKey cat-
                       alog-they  sell dozens of varieties of CMOS and TTL parts.
                            Clocks must be clean. Noise will cause all sorts of grief on this most
                       important signal. It’s natural to want to use a Thevenin termination to more
                       or less match impedance on a clock routed over a long PCB trace or even
                       off board. Beware! Thevenin terminations  (typically a 220-ohm resistor
                       to +5 and a 270 to ground) will convert your carefully crafted CMOS level
                       to TTL.
                            Use series damping resistors to reduce the edge rate if noise is a prob-
                       lem. A pull-up might help with impedance matching if the power supply
                       has a low impedance (as it should).
   124   125   126   127   128   129   130   131   132   133   134