In a December 14th, 2010 E-cast entitled "Take your Design to the Next Level with Intel® Atom™” sponsored by the Intel® Embedded Alliance, experts from Advantech and Adeneo presented hardware and software details on the first Intel® architecture processor created specifically for embedded designs.
Curt Schwaderer, Technology Editor, moderated the event for OpenSystems Media. Speakers were Charlie Wu, Product Manager for Advantech’s Embedded Single Board Computer Product Line and Joe Broxson, Senior Embedded Engineer at Adeneo Embedded.
Curt opened the E-cast by pointing out the wide range of embedded systems in use today and the one thing they all have in common: the need for higher performance and shorter development times. In response to these needs, Intel® has developed the Atom™ processor with a high performance level and flexible I/O while keeping thermal and board footprints within range for embedded requirements. Curt mentioned an ARC Advisory Group report naming the Intel® Atom™ as a key market driver for improving the performance of future embedded systems.
Charlie Wu of Advantech then presented a detailed description of the Intel® Atom™ processor E6xx series including features such as low power, scalable performance, flexible I/O, extended temperature, and a large software ecosystem. Charlie noted that the E6xx series is available in a wide range of off-the-shelf modules and industrial PCs to simplify and shorten embedded design projects. He also presented technical information on two new Advantech modules designed around the E6xx series: The SOM-6764 COM Express 95 x 95 mm module with type 2 pin-out for compact/rugged applications and the PCM-9364 3.5” single board computer for vehicle, signage, and industrial control applications.
Next, Curt introduced a pre-recorded video entitled “Getting to Market Quickly with Windows Embedded Standard 7 and the Intel® Atom™ Processor E6xx Series” hosted by Joe Broxson of Adeneo Embedded on behalf of Microsoft. During the video presentation Joe demonstrated the startup and customization options available with Windows Embedded Standard. He went through the step-by-step process necessary to create a custom firmware image for a digital signage application. The Windows Embedded development toolset allows the designer to pick from predesigned templates or create a completely unique software configuration.
Register to view the archived event with slides, video, and audio at http://bit.ly/fHQvdw. After the presentations, the question and answer portion of the E-cast began with panel discussion of questions submitted by the attendees. Joining the speakers for this session was Joe Sunga, Application Manager for Advantech. Following are excerpts from that session:
CS: Are there certain board form factors that are better or standard for certain embedded markets? For example, is there any advantage to using COM Express vs. PC/104?
CW: There are a few different form factors that Advantech offers in single board computers such as the PC/104 in 3.5 inch and also 5 ¼ inch. The COM Express is more for custom design purposes. You can use COM Express for virtually anything that you want to design. We have seen vehicle computers, medical applications, and embedded signage applications using COM Express. The PC/104 in particular, or that interface connection, is more for traditional Industrial control or ruggedized applications like transportation applications. It is also very popular for machining applications.
CS: So if I needed a board for some kind of reference design, I could take a COM Express board from Advantech and use that for software development. Is that an option?
CW: Yes, that is an option. With the COM Express board, we also offer a standard carrier board that you can use to do your development on and it will come with most of the standard PC I/O functions.
CS: OK, and is that how I would add my own I/O to the board if I need I/O interfaces that didn’t show up on it?
CW: Once you have been developing your application software using the carrier development board then you can either start doing your own design using the carrier board that you like using the form factor and functionality, or Advantech will also help develop the carrier board for you if you specified.
CS: What if I need 64 bit support for my embedded application. Is that available?
JB: Yes, it is available with Windows Embedded Standard 7 and you just have to take the same precautions that you would with the desktop, meaning that you have to insure that you have all of the correct 64 bit drivers. But once you have done that you can use both 64 and 32 bit applications on the Windows Embedded Standard system.
CS: In terms of the build environment that we saw in the video, do users have the option of activating specific devices?
JB: Here you are talking about Windows activation. When you buy a new version of Windows and install in on a computer, it ask you if you would like to activate using a key. With Windows Embedded Standard 7 there is no product activation. You are issued a key from Microsoft when you sign up for licensing and you use that key when you create your image. If you use that key when you create the image, there is nothing else to do. You simply create the image, deploy it, and then you work with a licensed distributor to purchase stickers that you apply to your devices and those stickers are the license. You don’t have to do activation like you would with the retail version of Windows that you bought off the shelf.
CS: They say they make their devices for a regulated industry. Does the tool chain integrate with source control?
JB: Yes, it is very common if you are in a regulated environment making devices that have to be certified for FDA or for other areas, you need to make sure that your systems are controlled as far as change control. With Windows Embedded Standard 7 it is very easy to do that. We have this thing called a distribution share which is simply a directory that contains all the different components, or packages that you can apply or use within your system as well as drivers or other things. That entire directory can be checked in as source control as well as your project files that define which different files packages or settings are included in your device. So it is extremely easy to do source control with Windows Embedded Standard 7. This is a large improvement over previous versions of Windows Embedded Standard.
CS: What is the status of the Windows 7 support for the Advantech boards? Are the drivers ready specifically for the E6xx series and your circuit boards and how much off the shelf software is there for the Advantech form factor?
JS: Based on Intel®’s roadmap, most of the drivers are available for Windows 7 but some of them are not including the graphic driver. That’s currently still in beta stage and what they are predicting is that everything will be ready by early 2011.
CS: There’s a question about Bluetooth and its importance to things such as in-car applications. Does the Atom™ support that and are the drivers there or does the developer have to worry about creating their own drivers to enable the I/O that they need?
JS: Basically, the Atom™ does not support Bluetooth but it has a bunch of I/O expandabilities through the PCI Express bus where someone could actually use a Bluetooth adapter with PCI Express and they could develop their drivers for that. Or if they are actually using an IOH there is also the option of using the UART. They could interface their Bluetooth through the serial bus and the drivers would be inherent to the serial bus. I think there are also seven USB 2.0 ports on there so you could also interface through USB.
CS: Another I/O capability that you mentioned was CANbus. What is that I/O capability for and where can they get more information on CANbus.
CW: The CANbus has been used mostly in the vehicle applications and more recently we found that the CAN bus has been used in medical applications as well. My understanding is that the CAN bus is used for communications on specific measurements on vehicle sensors. We currently have PC/104 modules specifically to support CANbus. And of course the great thing with the Atom™ E6xx processor is that we can now start supporting CANbus directly on the board.
CS: Here’s a question about video and resolution and frame rates planned to be ported onto the E6xx platform for both encoding and decoding.
JB: I can answer on the software side. There is no limitation imposed by Windows 7 and I turn it over to Advantech to answer for the hardware side.
JS: There is basically a display controller that utilizes the Atom™ graphics engine and from there the controller will support 18 bit and 24 bit single channel LVDS. The maximum resolution is 1280 x 768 at 60 Hz or you can utilize the SDVO output which has a maximum resolution of 1280 x 1024 at 85 Hz. And if you are talking about frame rate for video encode that can be done at up to 720p at 30 frames per second using the H.264 codec or MPEG-4. Other codecs can actually be done up to 1080p at 60 frames per second and 720p at 60 frames per second.
CS: Regarding the iManager and the SUSI interface from Advantech, can you give a flavor for the kind of service APIs that are available and what functions they offer. And what kind of operating systems are available for it? Can you run Linux, Windows 7, and other embedded operating systems?
CW: First I would like to answer that the iManager is an embedded controller to monitor the system input voltage and other power management signals like S3, S4 and then accurately program and control the power on sequence logic for the chipset. That makes the power sequencing more accurate and also makes the power on more reliable. It also has additional features such as watchdog timer, hardware monitor, and GPIO controlled SMBus. The SUSI on the other hand is the software interface for the iManager at this point. The features include the monitoring portion which I mentioned: watchdog timer, hardware monitor, and hardware control. The control portion is SMBus, I2C Bus, and GPIO. The display portion includes brightness control, on/off control, etc. Currently the operating system support that we have is Windows XP Embedded. Soon we will have Windows 7 or Windows 7 Embedded. It also supports Windows CE and Linux.
CS: Why should we use the Windows 7 Embedded operating system instead of the desktop Windows 7?
JB: The primary reason that people prefer the Windows 7 Embedded Standard is that it is broken down into these packages where you can only pick the portions of the OS that you need. You can actually create an operating system image that is as small as 600 megabytes. However if you are going through the OEM channel and using the standard OEM OS image it is upwards of 16 gigabytes because of the items that it includes. You get other options for customization such as the unbranded startup screen as well as other embedded enabling features mentioned in the video. In addition, the licensing cost is typically lower for the Embedded Standard than it is for full OEM SKUs or the desktop retail SKUs. The other benefits there include the lack of activation. You don’t have to activate each device. You just have to put your key in once and download the image to a thousand devices and you are ready to go. Another reason is that you don’t have to use the Windows shell. As you saw in the demo, there is no startup; it starts with what you want to see in your embedded application.
CS: In terms of things that users know and love from Windows such as the Winsock API, and standard Windows APIs for graphics: Are those available on Windows Embedded and how hard is it to take a Windows desktop application and port it to Windows Embedded?
JB: The difficulty in porting is minimal. The API set is identical however the operating system is broken down into these modules that have to be selected. So as long as you have all the dependencies that are required then your application will just run. For example if you have an application the uses the .NET Framework 3.5 you have to include that in your image.
CS: Current design requirements are for RAM on a single board computer. Does Advantech have and E6xx board with both RAM and flash included on the SBC? If not, is there a way to get Flash through an I/O interface?
CW: Regarding the design requirement on the memory on the SBC, currently the 2.5 inch single board computer and the PC/104 form factor computer we have CFast design, not on board, but through a CFast socket. At this moment we do not have a product that has both memory and flash on board but this is something that we can investigate.
CS: Are there default builder packages that you can plug into the Windows Embedded environment. So if I want an Advantech SBC part number xyz, I could load it into this builder and take in or out the components that I want or do I need to build this up myself?
JS: Depending on the Advantech model number and software, say for Windows Embedded Standard 7, we have a board support package that can be worked through so you can get an idea of what kind of components are utilized on that board. And from there if a custom design were needed, then you could basically depopulate what components that you do not use. That board support package has everything for the components that are on the Advantech board. On some boards we have an expansion slot and if the designer adds something there he would have to add to the board support package.
JB: The way it works with Embedded Standard is that we have a tool that will analyze the target and identify what drivers are needed on it and so on. What you can do is take the output file from that and import it into the tool and then do your minimal configuration. Just the things you need to get the OS booted. There is a component called eCore that goes along with that. You have eCore and all the drivers required and you save that as a template. The templates were shown on the left in the video. You can actually save that project as a new template. And by doing that it gives you the ability to use that as a starting point. Let’s say you were working with a specific board then you would save that base model as a template and whenever you want to start on a new project you would just start up the tool, load up the template for that board. On top of that you can load the template for some sort of display device or set top box or whatever you are trying to create. You just load the template on top of that and go ahead and build it. Creating a custom template is no harder than creating a project. You just save that project in the right place and it becomes a new template.
CS: If you have a board with multiple configurations, how do you handle that in a template environment?
JB: There are multiple ways to handle that. Just ensure that all of the drivers for all the different components are available in the image. It is a bit of an advanced step as to how the phases work but you would simply specify that all of those drivers would be added during this off line servicing phase. All of the drivers are on the hard drive, so that whenever the device comes up, any other components will be recognized during plug and play and then they will be available on the system. Then you have your base image with all these optional drivers that are also available on the system when you install that image. If the hardware is there it will automatically be installed by the Windows installer the first time the image boots.
CS: Can you give a few more details on how to create and install a custom splash screen for branding purposes.
JB: There are two pieces to it. The first is the standard boot screen and you can go with the Windows flowering screen if you like or you can switch it to a black screen like I did in the video. The one piece that you didn’t see in the video the way I had it configured is a second screen that comes up. Now that second screen is typically the log on screen and you have the ability to add a package to your image that allows you to change the background and all the things seen there with your own. You would supply a PNG file that would become the background and all the Windows messages would appear on top of that. You have a lot of control over that startup process and what you see there.
CS: For Advantech. What are the I/O hub options? Are there any third party companion chips if they are needed?
JS: Intel® developed the chip codenamed Topcliff which is essentially the EG20T. That is what they utilize for the I/O hub on this. The I/O has two SATA II ports, seven USB 2.0 ports, a gigabit Ethernet, one CANbus, one I2C, and one SPI bus. It also has eight general purpose I/O ports, four UARTs and also options for two SD or MMC interfaces. Intel® does not normally certify third party I/O but there are IOH vendors out there such as OKI Semiconductor, STmicroelectronics, and Realtek. The thing makes it easier for this processor is that there is no front side bus. It just uses a standard PCI Express bus so you can basically install anything using that standard.
CS: In terms of the 1080 HD video, via the SDVO, is there any documentation available to support this design requirement?
CW: At this moment, I am not aware that there is a readily available document, however we do have reference designs where we take SDVO and we turn that in various signal outputs including LVDS, HDMI and also DVI-D. So as long as the video output can support the 1080p and we have a reference design available to our customer who wants to make a custom design we can provide the 1080 SDVO video support.
CS: How do you use the video encoder/decoder hardware on the board?
JS: I know for video decode, the application software must be compliant with GStreamer or MPlayer framework. The application must use the API provided by those frameworks to utilize a video decoder. For video encoding, the application must also be compliant with the GStreamer framework.
JB: Windows 7 does provide the same encoding and decoding pipelines on the embedded as it does on the others. So as long as the device drivers and the codecs that take care of handling hardware acceleration are available for a piece of hardware, then Windows 7 can absolutely take advantage of it.
CS: Is Advantech doing any boards with Tunnel Creek only and no Topcliff or any other OIH solution?
CW: At this moment, for the single board computers, functional in PC/104 form factors, we don’t have that offering because it is more general purpose and they will all come with Topcliff, the EG20T which is the I/O hub. However, we do have the computer modules for the SOM product line in work and we will have a couple of products in the future to support the Tunnel Creek only or E6xx series only without the Topcliff IOH. Basically the Atom™ E6xx series can stand alone and IOH is usually required to provide lower level functions. The IOH at this moment provides connectivity to storage solutions, the USB client functions, CANbus, I2C, and the general purpose I/Os. If the customer is developing portable applications, they will usually want to incorporate the storage connectivity such as SD, SDIO, or the MMC card. It is not necessary to add an EG20T or a third party I/O hub unless one of the functions mentioned are required for the application.
OpenSystems Media®, by special arrangement with Intel® Embedded Alliance
Advantech is a Premier member of the by Intel® Embedded Alliance. Microsoft is an Associate member, OKI Semiconductor is an Affiliate member, and Adeneo is a General member of the Alliance.