Modular CPU Scheme Speeds Designs to Market

By Paul Rosenfeld,Vice President Marketing, Ampro Computers, Inc.


 
The vast majority of commercially available, off-the-shelf single board computers (SBCs) follow one of a dozen or so standard busses and form-factors introduced to the industry over the past 25 years. These include such well-know standards (both published and defacto standards) as VME, CompactPCI, PC/104, EBX and ATX Motherboards. Use of off-the-shelf SBCs is well known to significantly reduce time-to-market (versus a full custom CPU board design) by eliminating the need to design and develop a custom CPU card and, frequently, also eliminating the need to port or configure an operating system. In spite of this, well over 99% of the 100+ million 32-bit and above embedded microprocessors shipped in 2001 were used on custom CPU boards. Why is this?

Consider that most standard form-factor SBCs are designed for use in systems that incorporate a card cage and backplane. This is a critical requirement for systems that integrate a variety of off-the-shelf I/O cards, or need to alter the I/O configuration during the production process based on individual end-customer needs.

But for thousands of products that don't need the flexibility to change I/O configuration during the production process, a complete single board solution is almost always more cost effective. Such solutions can also use off-the-shelf boards such as EBX, an ATX Motherboard, or a single VME or CompactPCI processor board with PMC I/O in a 1U package.

 

I/O Drives Custom Choice. These off-the-shelf solutions are only effective when the system requires a limited amount of standard IO such as 10/100BaseT Ethernet and / or a video controller. When more IO or, more importantly, special purpose custom IO is required for an application, it is particularly difficult to expand these single board systems. This is one of the factors that has lead the vast majority of embedded developers to feel the need to design and build custom single board solutions for their application using commercially available microprocessor components. Other factors driving custom CPU designs include:
  • limited off-the-shelf IO choices
  • limited processor choice
  • cost of off-the-shelf single board computers
  • need for small footprint and / or custom placement of IO connectors
  • and that old standby - the NIH (Not Invented Here) factor

The unfortunate side effect of building a custom single board solution is that such designs take substantially longer to get to market, are faced with much higher technical risk and schedule uncertainty, and are much more costly to develop.

Is there a way to get the time-to-market benefits of an off-the-shelf SBC while achieving the customizable IO content, wide choice of state-of-the-art processors, product costs, and small footprint usually associated with a full custom CPU solution?

 

Recently, several SBC manufacturers have commercialized a concept that has been utilized occasionally in custom designs. The approach involves abstracting the CPU portion of a design into a design element or macro-component that can be attached as a daughter card via standard bus interface to a custom "baseboard". Ampro's EnCore product family, shown in Figure 1, is an excellent example of such a family of CPU "modules". Since the baseboard is a full custom design, there are no constraints regarding the form factor of the baseboard. (Indeed even the form factor of the CPU module itself is virtually irrelevant to the system packaging or overall design.) Baseboard form-factor can be chosen by the developer to match the needs of system packaging, placing connectors at the right locations to eliminate costly internal cabling. Baseboard IO connectors can be chosen to match the particular interface requirements of the application.

This approach provides time-to-market characteristics that approach those found with off-the-shelf SBCs. Since the baseboard does not contain high speed, complex CPU logic, baseboard designs are far simpler and hence easier to design and debug than a full custom CPU, speeding system design and reducing technical and schedule risk. Additionally, since the off-the-shelf CPU "module" usually contains key system-level IO (such as serial ports and Ethernet), the processor subsystem is sufficiently well-defined to enable a standard operating system port to the module, eliminating the need to port or configure an OS for a full custom CPU design. Starting with a working bootable OS baseline can shave weeks or months from a typical custom embedded CPU design project.

Off-the-shelf CPU modules can substantially improve time-to-market versus full custom designs. How does designing with these modules stack up against traditional SBCs with respect to the other criteria listed above?

IO Flexibility. Like traditional SBCs, CPU modules typically provide a generic set of system-level IO that is common to many embedded applications. Ampro's EnCore modules all contain 10/100 BaseT Ethernet, serial and parallel ports, IDE and floppy disk controllers, USB and AC97 sound controllers, IrDA, keyboard and mouse ports. Modules based on Intel (x86) Architecture processors also contain graphics controllers for CRT and flat panel support. Yet, unlike traditional SBCs, CPU modules serve a wide variety of applications, by leaving the remainder of the IO portion of the design to be customized by the developer. After all, it is usually the IO design, not the processor subsystem, which contains the essence of the application's uniqueness and differentiates the product from others.

CPU modules enable custom IO design by interfacing to a custom baseboard using an industry standard bus. Ampro's EnCore modules interface to a baseboard using 32-bit PCI at either 33MHz or 66MHz. This enables the baseboard to serve as a "roll your own" IO board. Any peripheral device or network controller with a standard bus interface can be easily incorporated on a baseboard. A baseboard could even include an FPGA or a microcontroller. Figure 2 shows a block diagram of a system designed around an EnCore module.

Processor Choice. Most SBCs are based on a small set of processors that support a standardized architecture with standard software. The most popular family in this area is the Intel x86 Architecture family, ranging from 486 through Pentium 4. Some VME and CPCI boards use Motorola 68K and PowerPC processors and Sun's SPARC. However, very few standard boards exist with the increasingly popular ARM and MIPS processors. As CPU modules proliferate without ties to the aging ISA bus, it is possible to support a much wider variety of processor architectures. Ampro's EnCore family currently offers modules with Intel x86 architecture, PowerPC and MIPS processor support.

Cost. Traditional off-the-shelf SBCs are built for rugged, reliable long life use. They're also built to serve the largest possible market space, increasingly supporting extremely large amounts of memory, ultra-fast processors with every feature, bell or whistle the designers can conceive. Finally, they need connectors to provide access to every IO device or feature built-into the board. It is not uncommon to find 30% or more of board real estate covered with connectors and jumpers. This is not the way designers build custom single board CPU solutions. Such products are highly optimized for cost, eliminating as many unnecessary features as possible. Processors are chosen to do the job intended and no more.

CPU modules allow the application developer to come much closer to the costs associated with a full custom solution. There are no connectors for cable connections on a CPU module. All IO is brought to the baseboard through a small set of high-density multifunction connections. IO that is required by the end system can then be routed to the external connector of choice at the location of choice on the baseboard. IO that is not required in the end system can be ignored. Having a variety of processor modules that essentially "plug" into the same baseboard "socket" allows the application developer to choose the most cost efficient processor solution for his or her application, perhaps well into the design process. Ampro's EnCore family of CPU modules spans the range from 133MHz to 850MHz solutions.

Footprint Flexibility. This is perhaps the essence of the difference between a traditional single board computer approach and the CPU module approach. Standard form-factors dictate packaging requirements. CPU modules have little impact on packaging. Packaging can be designed to meet the needs and requirements of the application. The baseboard can be designed to meet the needs and requirements of the packaging. Labor cost can be minimized in the assembly process. Many, if not all, internal cable harnesses can be eliminated.

NIH. This is the ultimate "gotcha" that can sink an embedded design project. Many embedded design engineers believe that designing CPU cards is "job enrichment". So, they say, it is the only way to achieve the feature content, cost targets and form factor required by the application. At the same time, a variety of industry studies show that well over half the embedded design projects miss their schedule release date. An alarming number take over 1.5 times as long as originally estimated. As many as 30% are cancelled before they ever reach completion.

This dismal statistic is matched only by the number of projects that reach a conclusion, only to find that the performance of the final product is well below that originally projected. Many of us in the embedded industry bear the scars from project after project which reach an integration phase, only to find that weeks or months must be spent on performance tuning, or, worse yet, getting the marketing folks to identify which features can be removed in order to improve performance.

Whether the use of CPU modules can dramatically change this statistic over time is certainly subject to debate. The facts are that the most complex, difficult and unfamiliar portions of the design have been eliminated.

One intriguing side effect of the CPU module approach is that, within module families, modules are generally interchangeable. For example, with Ampro's EnCore modules, it is possible to replace a Pentium module with a PowerPC module by simply unplugging the Pentium module and plugging the PowerPC module into the same "socket". (Figure 3 shows an EnCore Baseboard "socket".) All pin definitions are functionally and electrically identical. Should the initial CPU selected not have the horsepower to run all the wonderful software that's been created, the design team has a choice of spending days, weeks or months tuning the design, or upgrading instantly to a higher performance CPU and shipping immediately. The "design optimization" becomes, essentially, a cost reduction.

Standard form-factor CPU boards are an essential element in the embedded landscape. Thousands of system integrators depend on these products every day. But for every standard form-factor CPU board delivered, 100 custom CPU boards are designed and built. Custom CPU board designs provide the opportunity to customize the on-board IO, select the right processor, achieve the lowest cost, and pick a footprint to match packaging requirements. They just take a lot longer to get to market. CPU modules provide the industry with a promising new technology that delivers almost all the benefits of a full custom design, but can drastically shorten time-to-market, increasing profitability and the chances for long term success.

 


公司总部地址:北京市海淀区学院路甲38号长城电脑大厦B503室
北京:(010)62042889 上海:(021)62794576 深圳:(0755)83777943
版权所有:北京麦克泰软件技术有限公司