Page 133 - Anatomy of a Robot
P. 133
03_200256_CH03/Bergren 4/17/03 12:27 PM Page 118
118 CHAPTER THREE
The size and type of cache memory is also an important feature of a processor. If the
robot’s software has many tight execution loops, then cache can be a very important fea-
ture to have in the selected processor.
Bandwidth
We’ve already discussed bandwidth, and it belongs on this checklist. Be sure to look
into all the different bandwidth limitations of the processor.
Utilization of Resources
In many real-time applications like robots, various processor resources are extensively
used. Very often, as multiple control algorithms execute, they have to share resources
inside the processor. If one of the resources is in great demand, it can become the bot-
tleneck in the system that limits overall performance. The DMA capability of the
processor is a typical example. Some smaller processors have a special-purpose mem-
ory controller (DMA) that can move blocks of memory around. It works in parallel with
the processor when it’s started. If it cannot get its job completed by the next time it’s
needed, then it’s clearly overused. If an inspection of the architecture points to such a
problem in advance, then look for a processor with more capabilities.
Special-Purpose Hardware
We discussed several special-purpose processor types previously, and it’s worth men-
tioning them again on this checklist. Many processors, even general-purpose proces-
sors, have one or two special features worth noting.
Power
Power considerations are one of the most critical features in a robot and in a processor.
Later, when we talk about power control, we’ll get deeper into the details. If the robot
is battery powered, then give considerable attention to power matters. The success of
power conservation efforts very often hinges on the power-saving capability of the
processor and the software available for using its power-saving features.
Cooling
Even if the robot can supply lots of power to a processor, we must take into account the
method of cooling the processor and circuitry. Some processors require heat sinks and
even fans, both of which can cause reliability problems and take up space.