Electronic Design

Xscale Module Kit Delivers PCI And VGA Support

Kontron’s X-board is a tiny (49 mm by 6 mm) SIMM-style module (see Fig. 1) that contains a 32-bit ARM-compatible XScale 80219 microcontroller with 32 kbytes of integrated instruction and data cache. It is available in a number of configurations, including 400-MHz and 600-MHz versions with up to 64 Mbytes of on-module flash and 128 Mbytes of PC200 DDR-SDRAM. It also supports off-module memory.

The module is extremely powerful. It supports a PCI Version 2.1-compliant bus as well as a range of peripheral interfaces (see Fig. 2). Some of the peripheral support is provided by Silicon Motion’s SM501 with 8 to 16 Mbytes of external SDRAM. Peripherals include a pair of serial ports, an I2C interface, an IDE interface, two USB 2.0 host interfaces, a USB 1.1. host/device interface, 10/100-MHz Ethernet, and parallel I/O. Multimedia interfaces include AC’97 audio and VGA or LCD (TFT or STN) video with resolutions up to 1280 x 1024 pixels. There is also an 8-bit video capture port. JTAG debugging is supported, but most developers can forgo JTAG for application-level debugging. The system also has DMA support.

The X-board modules come in a number of flavors. The common denominator is the connector that brings out the peripheral interfaces and the form factor. As with most modules, the X-board is designed to plug into a host or base board that provides additional hardware or peripheral connectors. In this case, the eval board (see Fig. 3) is delivered as part of the kit.

The eval board supports the range of peripherals that an X-board can handle. There are two PCI slots, but make sure they are only 3.3-V cards, not the 5-V boards. This is, after all, for delivering a low-power solution.

Multimedia support includes an on-board amplifier with the usual collection of audio input and output jacks. There is also a simple buzzer if that is all that is required. The VGA connector handles VGA monitors and LCD displays while an LCD cable connection is for more conventional TFT or STN embedded solutions. Composite video output is also provided. On the communication side are three RS-232 serial ports (one for debugging), a 10/100 Etherenet RJ-45 jack, and an I2C header. There is no patch area, but most of the signals are easily accessible via headers so it is relatively easy to cable the board to another with custom hardware.

The entire package comes in a hard-plastic carrying case that fits the board and the power supply. The latter is a small, standard AT-style power brick. You can see the standard AT power-supply connector on the eval board. The eval board is designed for installation within a case, but you can add plastic feet if it will be used without a case.

Getting Started: Windows CE
The kit comes with support for Windows CE 5.0 and Linux 2.6. The CD includes only the board support files and documentation, so you need to supply your own development and diagnostic tools. Most developers can use the on-module monitor (RedBoot) and bypass JTAG support unless low-level device drivers or operating system customization is being performed.

Because this version of the kit for the is relatively new, some of the documentation is preliminary. A general kit overview seems to be missing from the CD. I had to do a bit of searching to find the various README files that contain the real information. It is not a lack of information but rather organization. There are number of PDF files that detail everything from the eval board to the X-board standard. It just took an afternoon of exploring to find all the details. I didn’t want to plug anything in until I knew what went where.

After wading through the CD I was pleasantly surprised to find that plugging things together in a logical fashion was the right approach. Plug in a keyboard, VGA monitor, and power to get things started. A little reading determined how the jumper settings and button usage were implemented. A serial link to a PC running a terminal emulator provides debug information.

The X-board is delivered with Windows CE 5.0 installed in the module’s flash memory. The latter also contains a copy of the RedBoot boot loader. You need to be a little patient as the Windows CE interface takes a while to come up. This is because RedBoot starts first and lets you stop the boot process to access the RedBoot command line interface via the serial port. This gets us to the first plateau. The system works and Windows CE is very functional, so it is easy to test the hardware (for example, the the audio support).

The implementation of RedBoot does not contain all the functionality of the latest version of RedBoot, but the commands are relatively consistent, although they are a subset. Still, there is more than sufficient support for Ethernet and external flash memory, from which RedBoot updates can be loaded. The Ethernet takes a little reconfiguration from the default to be useable, but this is documented and relatively simple.

The kit comes with a run-time license for Windows CE. If you are doing application programming and the standard Windows CE image is sufficient, then you do not have to get the Windows CE development package from Microsoft. However, you still need an application development environment like Microsoft Visual Studio 2005 or a third-party development product.

The kit includes the BSP (board support package) for Windows CE 5.0. Getting this platform-specific definition to work Microsoft’s Platform Builder is straightforward if you have used Platform Builder already. If not, check out the Microsoft documentation first. It is not a complex process and setup is done once. You can then rebuild the Windows CE image with your desired drivers and applications being limited only by flash memory capacity.

Starting from scratch, it will take a day or two to get everything running. The time is much shorter if Microsoft’s development tools have been installed already.

Getting Started: Linux
Getting Linux up and running is harder than Windows CE, but this is due mainly to the fact that Kontron installed Windows CE support in the module’s flash memory. There is only enough memory in most configurations to have one or the other operating system installed, and it is unlikely that anyone would build a dual boot system. That’s more of a PC approach than an embedded development-platform approach.

The Linux side of the system included all of the source files in addition to images. The latter let you get up and running quickly, although the user interface is not as functional as Windows CE by default. Of course, the mix of default applications tends to be very different. You can build up whatever is necessary for your environment. The Linux interface is consistent with a PC so most Linux developers will be very comfortable once a Linux image is loaded into flash. As with Windows CE, work via the Ethernet port is preferable. Because an Ethernet stack is part of the Kontron package, it is essentially there once the image is loaded.

Kontron has done a fair job for the out-of-the-box experience. The hardware is solid and installation of Windows CE makes initial testing simple. Unfortunately, there still needs to be some polish added to the documentation. Likewise, you need to be prepared with your development tools of choice prior to doing application work. If you are already targeting Windows CE or Linux, then reaching plateau 2 or 3 will be relatively trivial. If not, plan on at least a week or two of hands-on experience to get comfortable with the hardware and setting up your PC for cross-platform development. Don’t expect the kit to provide this for you.

Also keep in mind the added cost for the development tools. The Kontron kit is a bit more than the others in this roundup, and it is only for the hardware and BSP. Even so, this is a bargain considering the quality of the hardware. If you are on a budget, then you might be able to make due with some free open-source tools off the Internet. Longer term development, however, will typically require open-source tools with service and support contracts or proprietary tools. There are a wide range of vendors that provide XScale tools and most will work with the X-board.

The X-board will support other operating systems, but I did not consider any as the software CD did not come with any additional drivers or support for other operating systems. Check Kontron’s website for the latest information.

Still, I can highly recommend both the X-board and this development kit for use in the embedded space. It’s clear that the hardware is very robust and the interfaces for cross development are well established. Just be a little patient and wade through the online documentation. Here’s to hoping the next iteration of the software CD includes a few documents to tie everything together. An even better present would be a Windows CE or Linux package that included development tools and applications so that setup could be more automatic.

Read next review: Lighting A Coldfire With Netburner

Related Links
ECOS Redboot



Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.