Page 118 - Anatomy of a Robot
P. 118

03_200256_CH03/Bergren  4/17/03  12:27 PM  Page 103
                                                                               COMPUTER HARDWARE 103
                            INPUT/OUTPUT (I/O)
                            No matter how good a processor is, it’s useless if it cannot communicate with the out-
                            side world. A computer can only process information as fast as the slowest link in its
                            communication chain. Besides traditional input/output (I/O), which we’ll get to in a
                            moment, other communication paths within a computer can slow it down. If the mem-
                            ory is too slow for the processor, everything slows down. When designing a robot sys-
                            tem the first time, be very careful to analyze the required communication bandwidths
                            throughout the computer circuitry.
                              Think of a person who is blind. A blind person can certainly think fast and figure
                            things out, but might take longer than most to assimilate visual or printed matter
                            through Braille. As such, a blind person might not be the best choice to be an air traf-
                            fic controller. I know I’m going to get into trouble for that statement, but it’s true. The
                            world is put together to suit sighted people and thus often puts blind people at a disad-
                            vantage. However, blind people might have advantages in situations where their spe-
                            cially trained hearing skills come to the fore.
                              So, too, certain processors have more I/O bandwidth than others. If the robot’s sys-
                            tem architecture calls for a processor to digest and process all the bytes coming in a
                            1000BT LAN interface at full speed, it’s a pretty good bet there won’t be any 8-bit
                            processors that can handle it.
                              We must evaluate many places inside the computer hardware to determine if enough
                            bandwidth will be able to handle the contemplated design. The list of considerations
                            includes the following computer components.


                            Buses

                            A bus is a communication path within the computer that carries data from one place
                            to another. Generally, a bus is a collection of wire traces on the PCB with a protocol
                            that defines the meaning of the signals on the traces. It is not possible to put more data
                            across the bus than the protocol claims it can handle. In fact, it is rare that the full,
                            raw bandwidth capability of the bus can ever be achieved. While planning the design
                            of the system, it is wise to derate the bus to 50 to 80 percent of the advertised band-
                            width. This is likely the fastest speed at which we will be able to drive bytes across
                            the bus.
                              Buses are generally designed by industry committees to solve particular data trans-
                            fer problems. Often, the bus will have been designed to enable multiple manufacturers
                            to build compatible equipment. Buses have characteristics such as width (analogous to
                            word length), bandwidth in bytes per second, voltages, and loading. Loading defines
                            the number of separate devices that can be connected to the bus at the same time.
   113   114   115   116   117   118   119   120   121   122   123