Page 69 - Embedded Microprocessor Systems Real World Design
P. 69

However, the decision to use DRAM implies a considerable increase in the cost and
                   complexity of a design; you should consider it carefully to determine whether it is
                   necessary.
                      This section has been a lengthy discussion of connecting memory to a micro-
                   processor and calculating the worst-case timings, but it is important because the
                   timing  of  all  other  peripherals  is  calculated  in  the  same  way.  The  foregoing
                   information  is  based  on  the  assumption  that  the  designer  will  use  worst-case
                   numbers.  Some  manufacturers  provide  a  table  or  other  information  that  in-
                   dicates the memory speed needed for a specific clock rate. However, if  it is  not
                   specified  in  that  way,  assume  the  worst-case  timing  scenario  eventually  will
                   happen.
                      One last note about timing calculations: They are straightforward to do with a
                   calculator, but a number of timing analysis programs for PCs will do the calcula-
                   tions, display the resulting waveform on the screen, and even highlight problem
                   areas in  red. An  example is  Timing Diagrammer Pro from Synapticad. These pro-
                   grams typically include libraries of microprocessors and other parts, including the
                   timing parameters, so you need not even look up the worst-case parameters on the
                   data sheets. The program does all the calculations for you and you can print out
                   a  timing  diagram  that  can  be  included  in  the  board  specifications  or  other
                   documentation.








                   The entire point of an embedded microprocessor is  to monitor or control some
                   real-world event. To do this, the microprocessor must have 1/0 capability. Like a
                   desktop computer without a monitor, printer, or keyboard, an embedded micro-
                   processor without 1/0 is just a paperweight.
                      The  1/0 from  an  embedded  control  system falls into  two broad  categories:
                   digital and analog. However, at the microprocessor level, all I/O  is digital.  (Some
                   microprocessor  ICs  have  built-in ADCs, but  the  processor  itself  still works with
                   digital values.) The simplest form of 1/0 is a register that the microprocessor can
                   write to or a buffer that it can read. Figure 2.12 illustrates these two implementa-
                   tions. When the microprocessor performs a read to the address of  the 74AC244,
                   the decoding logic produces a read strobe, and the 74AC244 outputs are enabled
                   onto the microprocessor data bus. Similarly, a write to the address of the 74AC374
                   generates a write strobe that clocks the data bus value into the 74AC374. The input
                   bits to the 74AC244 could be switch contacts, a temperature  sensor, comparator
                   outputs, or any other digital information. The 74AC374 outputs could drive LEDs,
                   a relay, or other logic. The decoding logic to generate the strobe signal can be
                   implemented with PLDs, discrete logic, or demultiplexers such as the 74AC138/


                   54                                              Embedded Microprocessor Systems
   64   65   66   67   68   69   70   71   72   73   74