Originally Published MEM Fall 2001
EMBEDDED SYSTEMS
Matching Embedded
PC Boards to Medical Applications
When properly selected, embedded PC boards can reduce the length of a design cycle and increase the performance or number of features in a product.
Glenn S. Kubota
|
With increasing pressures to both reduce the time to market and increase the number of features in their latest models, many medical equipment manufacturers are turning to off-the-shelf PC boards in creating these designs. Using embedded PC boards can dramatically reduce the design time of feature-rich medical equipment, but only if the feature set of the board is matched to the application. Knowing what questions to ask is vital to selecting an embedded PC. By learning more about the features available on embedded PCs, it becomes easier to know which questions to ask. Reasons for Using an Embedded PC In the past, it was more common for designers to select a microprocessor or microcontroller chip, design the supporting circuitry around it, and add the special inputs and outputs required by the application. In many cases, this is still a desirable path to take. It gives the most control over exactly what features are included in the final design. Every part of the circuit in a fully customized design is there for a reason specific to the end application. However, fully customized designs can take substantial time to get from the drawing board to the market. |
![]() |
|
This
embedded PC board has a 486-class cpu, VGA CRT and flat-panel LCD interfaces,
RS-232 and RS-422/RS-485 serial ports, a printer port, digital I/O, a
solid-state disk, and a PC/104 expansion bus.
|
Reducing the time to market is one of the biggest reasons for selecting an off-the-shelf embedded PC for medical applications. If the core processor circuitry is ready to be plugged into a system, it saves on circuit design and debugging time. It also reduces the time spent on developing firmware, because embedded PCs typically already have basic input/output system (BIOS) firmware that initializes the core components, tests critical subsystems, and loads the application program. In an increasingly competitive environment, shaving a few months or even weeks off a product development cycle can affect the success of a product.
Another reason that embedded PCs are being used more often is that the number of features that users expect is increasing. Although alphanumeric liquid-crystal displays (LCDs) are used for some tasks, such as blood sugar monitoring, it is becoming more commonplace for a modern piece of medical equipment to have a full-color graphical display. This allows more information to be conveyed to the user, but at the cost of increasing the amount of computing horsepower required, as well as the complexity of the software. Embedded PCs can help to solve this problem by leveraging the large number of graphics software already available on the desktop PC.
Common Features of Embedded and Desktop PCs
Many embedded PC boards have features in common. Some of these features are also found on desktop PCs (see Table I), whereas other features are unique to embedded PCs. Some of the features that embedded PCs share with desktop PCs are the following:
- x86 microprocessor.
- Chipset, including timers, direct memory access (DMA) controllers, and interrupt controllers.
- Serial ports.
- Printer ports.
- Ethernet connection.
- Video.
When selecting an off-the-shelf embedded PC for medical applications, it is always desirable to find one that has features that fit the design well without requiring a lot of custom circuitry. This will help to reduce the size, cost, and design time. Although many embedded PCs have the same features listed, subtle and not-so-subtle differences can make or break a design.
| Desktop and Embedded PC Feature | Selection Criteria |
| x86 processor |
|
| Chipset |
|
| Serial ports |
|
| Printer ports |
|
| Ethernet connection |
|
| Video |
|
|
Table I. Summary of features shared by desktop and embedded PC boards. |
|
x86 Processor. The x86 family of microprocessors has gone through many changes since the original Intel (Santa Clara, CA) 8086 processor. From the 8086 to the 286, 386, 486, Pentium, Pentium II, Pentium III, and Pentium IV (as well as the 186 family), performance has increased exponentially over the past 20 years. In addition, other cpu manufacturers such as National Semiconductor (Santa Clara, CA), AMD (Sunnyvale, CA), and STMicroelectronics (Geneva, Switzerland) have created x86-compatible processors that have higher levels of integration or lower power consumption. However, the most important factor in determining which cpu to select is whether or not that cpu has the performance to keep up with the application. This is not a simple matter, because it is dependent on the cpu type, clock speed, and other factors such as the amount of cache and the chipset. Benchmarks are generally of little use because they rarely measure the things that are critical to a specific application. In any case, it is always a good idea to get at least twice as much computing power as is thought to be required. This allows for errors in estimation of the processor required, and it allows room to add features later.
If the application requires a great deal of floating-point or long integer arithmetic, a math coprocessor is often required. It is still possible to do these calculations without a coprocessor because this can be emulated in software. However, emulation is much slower than handling these routines in hardware. Math coprocessors are standard in Intel processors from the 486DX and up (except for the 486SX, which was not widely used in embedded PCs). Processors of the 386 variety and lower require an external coprocessor. In most cases, if a coprocessor is required, a 486DX or higher is appropriate because external coprocessors are not widely available and are generally not cost-effective.
Chipset. The chipset in an embedded PC provides much of the glue logic that connects the cpu, the memory, and the I/O together in order to have a functioning PC. The chipset can be a single chip or multiple chips that are separate from the cpu, or it may be integrated into the cpu. The Intel 186 family and 386EX integrate the chipset into the processor. AMD's Elan family, National Semiconductor's Geode, and STMicroelectronics's STPC similarly integrate chipset functionality into the processor. From an application standpoint, this integration does not have an effect on how development takes place. However, it can greatly reduce the number of chips required. This can either reduce the size of the embedded PC board or create room on the board for additional features.
Serial Ports. Serial ports are one of the most commonly used interfaces to an embedded PC. They have the advantage of being a simple, well-defined interface with low- to medium-speed data rates. They can be used to communicate with other pieces of equipment, such as a laptop computer for analyzing and displaying data. Alternatively, the serial communications can take place entirely inside a single piece of equipment, linking together different internal modules.
There are two commonly used universal asynchronous receiver-transmitters (UARTs) in embedded PCs. These are the 16450 and the 16550, which are almost identical. The difference between the two is that the 16550 has 8-byte first in, first outs (FIFOs) at the transmit and receive buffers. This helps if the data rate is high or if the software disables interrupts for a period greater than the time between two characters being received. If the 16450, which has no FIFOs, receives a character in the receive buffer and does not read that character before the next character is received, that first character will be lost.
It is also important that the voltage levels be matched between serial devices. The types that are typically used are RS-232 and RS-422/RS-485. RS-232 is the most common interface and is found on desktop computers and embedded PCs. RS-422/RS-485 is not often found on desktop PCs, but its differential signals have higher noise immunity and are often used for faster communication interfaces with embedded PCs.
Printer Ports. Printer ports on embedded PC boards generally follow the Centronics standard that is common in desktop PCs. Naturally, this can be used to drive an actual printer if the equipment needs to create a hard copy of the output. For example, the results of a treadmill stress test can be printed immediately after running the test. However, in many cases, there is no need for an actual printer in the system because a network printer is used, or simply because no hard copy is required. If the printer port is not used for a printer, it can be used for transistor-transistor logic (TTL)level digital I/O. Typically, a printer port can be used for 8 bidirectional I/O lines, 5 input lines, and 4 output lines.
Ethernet Connection. The prevalence of Ethernet connections on embedded PC boards is due in part to the popularity of Ethernet in desktop PCs. In medical equipment, it can be used for connecting to networks to access patient records, such as in cases where x-ray or magnetic-resonance-imaging graphic files are transferred directly from the equipment to the patient database. Ethernet can also be used for high-speed data transfer between different parts of a single piece of equipment.
The most common types of Ethernet available on embedded PC boards are 10Base-T and 100Base-TX. These both use an unshielded twisted-pair cable to plug into a standard RJ-45 modular connector. The difference between the two is the speed. A 10Base-T connection transfers data at 10 Mb/sec, whereas 100Base-TX transfers data at 100 Mb/sec. Therefore, the main thing to consider in selection is the amount of data to be transferred.
Video. VGA displays are supported by many embedded PC boards. This allows complex displays of information to be presented to the end-user. This can be a graphical user interface or a text display of information updated in real time. For example, some medical equipment uses Microsoft Windows as an operating system in order to provide a familiar interface.
In general, the important parameters are the type of display and the resolution. The major types of displays supported are cathode-ray tubes (CRTs) and flat-panel LCDs. Flat-panel displays can be further classified into thin-film transistor or active-matrix color, supertwist nematic or passive-matrix color, or monochrome. There are other types of flat-panel displays, such as plasma displays, but many of these displays have interfaces that emulate an LCD's signals and thus can be treated the same as LCDs. Each type of display has its own set of advantages and disadvantages with respect to cost, temperature range, brightness, and viewing angle. It is important that the display selection and embedded PC selection are coordinated because each one affects the other.
The resolution will usually drive flat-panel display selection more than it does CRT selection. Most modern VGA CRT monitors are multifrequency and can accommodate many different resolutions. Flat-panel displays, on the other hand, have a fixed resolution and generally increase in price as the resolution goes up.
Embedded PCSpecific Features
There are many reasons, such as product lifetime or size, for using an embedded PC rather than a desktop PC motherboard in a medical application. However, the big reason is that embedded PCs have features that are not found on desktop PCs (see Table II). These features include the following:
- Digital I/O.
- Analog I/O.
- Solid-state disks.
- Different system buses such as PC/104, CompactPCI, etc.
| Embedded PC Feature | Selection Criteria |
| Digital I/O |
|
| Analog I/O |
|
| Solid-state disks |
|
| System bus |
|
|
Table II. Summary of features specific to embedded PC boards. |
|
Digital I/O. Digital I/O is one of the most commonly used features of an embedded PC. It can be used for turning on pumps, reading panel switches, controlling panel light-emitting diodes, interfacing to alphanumeric LCDs, and a host of other purposes. Digital I/O is easy to use from both a hardware and a software point of view. The main characteristics that need to be examined are the voltage level, current source and sink capability, and initialization states. Different things need to be considered in the case of digital inputs and digital outputs.
In the case of digital inputs, the main things to be concerned with are the voltage threshold and the high and low voltage limits. In most embedded PCs, a 0- to 5-V TTL input level is standard, although occasionally there may be some other voltage levels. Interfacing is generally a simple matter of matching the voltages of the source with the digital input and perhaps adding a pull-up or pull-down resistor to avoid floating inputs.
In the case of digital outputs, not only are the voltage levels important, but the current source or sink capability is important as well. A 0- to 5-V TTL output level is generally the standard, but the current-handling capabilities can vary substantially from board to board, or even between digital outputs on the same board. In embedded PCs, an 82C55 chip is often used to provide 24 bits of digital I/O. An 82C55 chip has a source and sink capability of about 2.5 mA. On the other hand, if a chip in the 74ACTxx family of logic is used to provide digital outputs, the current capability will be in the neighborhood of 24 mA. Paying close attention to these numbers will determine whether a digital output can be used directly or must be buffered with off-board circuitry.
One special caution is required in the case of bidirectional I/O pins that are used as digital outputs, as might occur in the case of an 82C55 chip. In most cases, bidirectional pins are configured as floating inputs upon power-up or reset of the board. If a bidirectional pin controls a device that must have a known state on power-up or reset, the pin must have a pull-up or pull-down resistor added to make sure that there is a valid voltage level instead of a floating pin. The resistor should be connected so that it pulls the pin to the same state that it would have when the pin is reconfigured to be an output.
Analog I/O. Analog I/O is often required for interfacing with the real world. Analog inputs can be used to read in temperatures, flow rates, or other parameters by interfacing with thermocouples and other types of sensors. Analog outputs can be used to control heaters or to adjust ultrasound levels. The range of applications is endless. Not all embedded PC boards have analog I/O on them, but if it is needed, it is generally less expensive to buy a board that has analog I/O built in than to buy a separate analog I/O board to interface with the cpu board. The important parameters to examine in both analog outputs and analog inputs are the range, resolution, input type (single ended or differential), and conversion times.
Analog inputs with 12-bit resolution are commonly found on embedded PC boards. If the range is 0 to +5 V, a 12-bit resolution translates to being able to resolve changes of 1.22 mV. This is more than enough resolution for most applications. If higher resolution is required, an add-on analog-input board will most likely need to be installed.
The conversion time is important in applications that need analog inputs sampled at fast rates and at regular intervals. However, a few other parameters can affect the actual sampling rate. The way in which the conversion is started can be important. In some cases, the conversion can be started at regular intervals by using a hardware counter or timer. At the end of the conversion, the hardware triggers an interrupt or DMA cycle to store the data. On other boards where there is no direct counter or timer starting the analog-to-digital (A/D) conversions, the conversions can still be started indirectly by having the counter or timer cause an interrupt at a regular interval and then having the interrupt service routine start the A/D conversion.
Solid-State Disks. On desktop PCs, integrated drive electronics (IDE) drives are currently the dominant drive type because they offer the lowest cost per megabyte of storage. In some embedded PC applications, IDE drives may still be used because of their low cost and high capacity. However, in many applications, IDE drives may not be the best choice because of their physical size, lack of speed, power consumption, or susceptibility to shock or vibration. In these cases, some type of solid-state disk is more suitable.
There are different types of solid-state disks available, with different sets of advantages and disadvantages. They may be based on a resident flash array, in which individual flash components are installed on the board. A solid-state disk can be a flash module, which is installed on the embedded PC board and interfaces using standard memory signals. Another option is to use a removable module such as a PC Card or CompactFlash card.
With a resident flash array, the advantage is low cost, but it typically has less storage capacity than other methods. In addition, it may not be supported by all operating systems. If the size of the application is small enough and if the operating system supports it, a resident flash array is the most cost-effective solid-state disk.
Many embedded PC boards support flash modules that interface to standard memory signals because these boards quite often have Joint Electron Device Engineering Council (JEDEC)standard memory sockets already installed for static random-access memory (SRAM) or erasable programmable read-only memory (EPROM). Again, it is important that the operating system selected has the proper drivers to use such a flash module.
PC Cards or CompactFlash cards are sometimes supported by embedded PC boards because they are readily available and their standard interface, which emulates an IDE drive, is supported by many different operating systems. Because these cards are removable, programs may be easily installed, and stored data may be easily off-loaded. However, the large physical size of these cards may be a hindrance in some applications.
Different System Buses. In desktop PCs, the buses that are available for expansion cards are the peripheral component interconnect (PCI) bus and the industry standard architecture (ISA) bus. In the embedded PC arena, there are some boards that use these buses, but there are also buses designed specifically for embedded applications. The advantage of desktop PC buses is in the variety of low-cost boards available. The disadvantages are that these boards are physically larger and mechanically more susceptible to vibration or shock.
PC/104 boards have a smaller size and a set of bus signals that is compatible with the desktop PC ISA-bus signals. PC/104 boards are available for many different applications such as motor control and sound. The PC/104-plus standard adds a connector with PCI signals in order to support higher-speed boards such as video frame grabbers.
CompactPCI and secondary transmitted-data buses are standards used for embedded PC board applications in which each board is inserted in a slot in a card rack. Although these are very good for applications in which boards need to be easily changeable or in which lots of I/O is required, they can be bulky for some deeply embedded applications.
Other system bus configurations are available, from proprietary buses to busless systems. When evaluating buses, the first thing to determine is whether any type of expansion bus is necessary. If one is necessary for custom I/O, then the bus should be one that supports the needed throughput and a set of signals for which it is easy to design interface circuitry. If standard I/O boards are going to be plugged in, then it should be a bus that has a sufficient variety of boards from which to choose. Finally, the bus should physically fit into the enclosure of the final system.
Conclusion
Embedded PC boards
can drastically reduce the length of a design cycle while increasing the performance
or number of features in a product. Selecting a board that best fits the application
is not a simple task because of the large number of configurations available.
However, by knowing the requirements of the final application and by thoroughly
examining the features of the embedded PC, a good match can be made. This will
lead to a reduced time to market and a more marketable product.
Glenn S. Kubota is an engineering manager for Micro/sys Inc. (Montrose, CA), a manufacturer of embedded PC boards. He can be reached at gkubota@embeddedsys.com.
Bibliography
PC/104 Specification, Version 2.3 (Mountain View, CA: PC/104 Consortium, 1996).
PC/104-Plus Specification, Version 1.1 (Mountain View, CA: PC/104 Consortium, 1997).
"Selecting the Right Computer," in Micro/sys Bolt-in Computer Controller Handbook (Montrose, CA: Micro/sys Inc.), 8-18-6.
Edward Solari, ISA & EISA Theory and Operation (San Diego: Annabooks, 1999).
Technical Reference: Personal Computer AT (Boca Raton, FL: IBM, 1985).
Frank van Gilluwe, The Undocumented PC: A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas (Reading, MA: Addison-Wesley, 1994).
Copyright © 2001 Medical Electronics Manufacturing




