Page 280 - Embedded Microprocessor Systems Real World Design
P. 280
must be sure the new hardware is compatible, too. Other options for embedded
operating systems include Windows, the real-time version of Windows NT, and
real-time operating systems as covered in Chapter 9.
ISA- and PCI-Based Embedded Boards
Although ISA is obsolete on the desktop, it is still found in various forms in
embedded systems. In PCs, ISA has been replaced with PCI. Boards available
for ISA and PCI buses include digital and analog 1/0 cards, optically isolated
1/0 cards, and boards with relay closure outputs. Specialty cards include inter-
faces to charge coupled device (CCD) cameras and specialized communication
boards.
This chapter so far has focused on the PC as a platform for embedded systems.
In addition to the problems already mentioned, a number of other problems with
using a PC for embedded applications exist. First, as mentioned, ISA is obsolete,
replaced by PCI, USB, and possibly Firewire or Bluetooth. PCI is much faster than
ISA but is more difficult to design for. As PCs need ever-faster peripherals, this
transition makes sense. However, many embedded applications-even those that
require a very fast CPU-do not need high 1/0 speeds. A PC is large and may be
difficult to mount inside your product. Even the form factor of a PC motherboard
is fairly large.
The average PC user will be running some version of Windows instead of an
RTOS and does not need to know how to write drivers for the chipset and periph-
erals on the motherboard. The embedded developer, on the other hand, needs this
information; not being able to get it can make development difficult. Some PCs
have a Plug-and-Play (PnP) BIOS that makes it hard to control how the interrupts
and other features will be allocated.
Implicit in all these characteristics of the PC architecture is complexity. If you
are building a PGbased product, you are virtually forced into using the BIOS on
the motherboard and some kind of operating system. This is because the chipsets
and peripheral functions on the board are complex enough (and sometimes pro-
prietary enough) that it is impractical to write drivers and initialization code
for them-unless you have an enormous development budget and a huge soft-
ware team.
Finally, PCs are not intended for embedded application, so the only flash
memory they have is for the BIOS, and you may not be able to find out how to
program that. To load your code, you are stuck with having a hard disk or floppy
drive that you otherwise might not need.
Industry-Standard Embedded Platjiis 261