Better Digital Signal Processing Performance; Lower Costs With Innovative IntervalZero RTX Real-time Platform

Similar documents
White Paper. Intel Sandy Bridge Brings Many Benefits to the PC/104 Form Factor

evm Virtualization Platform for Windows

Design and Implementation of the Heterogeneous Multikernel Operating System

Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines

Medical Device Design: Shorten Prototype and Deployment Time with NI Tools. NI Technical Symposium 2008

Chapter 12. Development Tools for Microcontroller Applications

A White Paper By: Dr. Gaurav Banga SVP, Engineering & CTO, Phoenix Technologies. Bridging BIOS to UEFI

Computer Automation Techniques. Arthur Carroll

BUILD VERSUS BUY. Understanding the Total Cost of Embedded Design.

x64 Servers: Do you want 64 or 32 bit apps with that server?

COMPUTING. SharpStreamer Platform. 1U Video Transcode Acceleration Appliance

GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

BLM 413E - Parallel Programming Lecture 3

Programación de Sistemas Empotrados y Móviles (PSEM)

Figure 1 FPGA Growth and Usage Trends

GE Intelligent Platforms. PACSystems High Availability Solutions

White Paper. Real-time Capabilities for Linux SGI REACT Real-Time for Linux

Achieving Real-Time Performance on a Virtualized Industrial Control Platform

Chapter 1. Introduction to ios Development. Objectives: Touch on the history of ios and the devices that support this operating system.

Special FEATURE. By Heinrich Munz

Configuring Memory on the HP Business Desktop dx5150

Chapter 13 Embedded Operating Systems

The integrated HMI-PLC

What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.

Advanced Core Operating System (ACOS): Experience the Performance

Embedded Software development Process and Tools: Lesson-4 Linking and Locating Software

Straton and Zenon for Advantech ADAM Copalp integrates the straton runtime into the ADAM-5550 device from Advantech

Lecture 11: Multi-Core and GPU. Multithreading. Integration of multiple processor cores on a single chip.

Visual Programming of Logic, Motion, and Robotics

Notes and terms of conditions. Vendor shall note the following terms and conditions/ information before they submit their quote.

Real-time processing the basis for PC Control

Achieving Mainframe-Class Performance on Intel Servers Using InfiniBand Building Blocks. An Oracle White Paper April 2003

SuperIOr Controller. Digital Dynamics, Inc., 2014 All Rights Reserved. Patent Pending. Rev:

The Benefits of POWER7+ and PowerVM over Intel and an x86 Hypervisor

Windows Embedded Security and Surveillance Solutions

Client/Server Computing Distributed Processing, Client/Server, and Clusters

How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself

Embedded Development Tools

Removing Performance Bottlenecks in Databases with Red Hat Enterprise Linux and Violin Memory Flash Storage Arrays. Red Hat Performance Engineering

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design

Siemens and National Instruments Deliver Integrated Automation and Measurement Solutions

Parallels Virtuozzo Containers

Embedded Software development Process and Tools:

The Microsoft Windows Hypervisor High Level Architecture

How To Write A Windows Operating System (Windows) (For Linux) (Windows 2) (Programming) (Operating System) (Permanent) (Powerbook) (Unix) (Amd64) (Win2) (X

CHAPTER 2: HARDWARE BASICS: INSIDE THE BOX

VxWorks Guest OS Programmer's Guide for Hypervisor 1.1, 6.8. VxWorks GUEST OS PROGRAMMER'S GUIDE FOR HYPERVISOR

Multicore Programming with LabVIEW Technical Resource Guide

WAYNE FUSION FORECOURT SYSTEM. Meet the new face of. forecourt control.

Intel Application Software Development Tool Suite 2.2 for Intel Atom processor. In-Depth

Installation Guide for RTX 2011 with Service Pack 1

Performance Comparison of Fujitsu PRIMERGY and PRIMEPOWER Servers

TI Linux and Open Source Initiative Backgrounder

Security Overview of the Integrity Virtual Machines Architecture

Fault Tolerant Servers: The Choice for Continuous Availability

Unisys ClearPath Forward Fabric Based Platform to Power the Weather Enterprise

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

The top 10 advantages of a Windows based PBX

Building Applications Using Micro Focus COBOL

Inside the Erlang VM

Applying Multi-core and Virtualization to Industrial and Safety-Related Applications

Network connectivity controllers

Four Keys to Successful Multicore Optimization for Machine Vision. White Paper

Outline. Introduction. Multiprocessor Systems on Chip. A MPSoC Example: Nexperia DVP. A New Paradigm: Network on Chip

Tablets in Data Acquisition

White Paper Utilizing Leveling Techniques in DDR3 SDRAM Memory Interfaces

Am186ER/Am188ER AMD Continues 16-bit Innovation

INTRODUCTION ADVANTAGES OF RUNNING ORACLE 11G ON WINDOWS. Edward Whalen, Performance Tuning Corporation

7a. System-on-chip design and prototyping platforms

Virtualization is set to become a key requirement

INTEL PARALLEL STUDIO XE EVALUATION GUIDE

GPU System Architecture. Alan Gray EPCC The University of Edinburgh

Comparing Multi-Core Processors for Server Virtualization

White Paper Solarflare High-Performance Computing (HPC) Applications

Hardware and Software Requirements. Release 7.5.x PowerSchool Student Information System

Choosing a Computer for Running SLX, P3D, and P5

High Performance Tier Implementation Guideline

ARM Processors for Computer-On-Modules. Christian Eder Marketing Manager congatec AG

Introduction to Embedded Systems. Software Update Problem

Virtualised MikroTik

Going Linux on Massive Multicore

Component Based Software Design using CORBA. Victor Giddings, Objective Interface Systems Mark Hermeling, Zeligsoft

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications

Fastboot Techniques for x86 Architectures. Marcus Bortel Field Application Engineer QNX Software Systems

Midsize retailers can now relax the nightmare of trying to keep up with the

The Motherboard Chapter #5

Oracle Database Scalability in VMware ESX VMware ESX 3.5

Software INTERACT. MachineLogic. The Shortest Distance Between Man and Machine

Networking Remote-Controlled Moving Image Monitoring System

Chapter 2 Logic Gates and Introduction to Computer Architecture

Chapter 3: Operating-System Structures. Common System Components

Networking Virtualization Using FPGAs

Virtualization: Hypervisors for Embedded and Safe Systems. Hanspeter Vogel Triadem Solutions AG

Plug and Play for Windows 2000

Transcription:

White Paper Better Digital Signal Performance; Lower Costs With Innovative IntervalZero RTX Real-time Platform I. Overview Digital Signal Processors (s) have specialized architectures that are optimized for heavy math computations and they have dominated the real-time digital signal processing market as a cost-effective solution for many complex designs. Although s remain a viable choice for many systems, developers are finding that proprietary s are no longer required to perform real-time digital signal processing. Instead, developers are migrating to the IntervalZero RTX Real-time Platform, which comprises multi-core x86 general purpose processors (GPPs), the Windows operating system and RTX real-time software to outperform s, to significantly reduce costs, and to streamline development cycles. This paper compares -based systems with systems based on the RTX Real-time Platform and provides an overview of the economic and operational benefits that are catalysts for the increasing migration from s. IntervalZero s symmetric multiprocessingenabled RTX software provides hard real-time functionality for Windows operating systems, including the breakthrough Windows 7 with its touch and gesture capabilities. II. System Diagrams a. -Based Platform Duo System Diagram 1 - Traditional System Design 1 2 /FPGA Subsystem 3 s rely on specialized architectures designed for heavy math computations, but not for general processing. Because of s computational focus, GPPs are used for human machine interface (HMI) and general purpose functions such as input and output (Diagram 1). Additionally, it should be noted that s require separate memory devices for each device and separate buses are needed for all interprocessor communications (i.e. PCIe or Serial). b. RTX Real-time Platform World Class User Interface Windows Kernel 0 Atom (Now) X Diagram 2 - RTX RTX Platform Application Platform RTX Platform X+1 Hardware Options Application Windows Kernel Extension - RTX X+2 x86 Single or Multicore (Now)... X+31 x64 Multicore (2011) The RTX Real-time Platform takes a different approach, with the multiple cores divided up for dedicated realtime processing and general purpose processing. Diagram 2 illustrates a multi-core x86 device with cores dedicated for Windows and cores dedicated to RTX for real-time signal processing functions. Unlike the design, memory is shared using the same high-speed bus, allowing for data sharing and interprocessor communications. The following chart shows a comparison of the two architectures and in the sections that follow, this paper will discuss the merits of the architectures in detail. Page 1

III. Comparison Chart: vs. RTX Real-time Platform Category Platform RTX Real-time Platform RTX Benefit Hardware Design Custom board design Long development cycle Difficult to modify hardware Requires In Circuit Emulators (ICE) (COTS) Short development cycle Easy to change hardware Local Debug no ICE needed Reduced Cost Reduced Risk Faster Time To Market Drivers / BSP Custom Drivers device specific Standard Drivers Cost Productivity System Communication Custom protocol Custom buses Shared memory Standard APIs Ease of use Future proof Memory Chip Down hard to change Limited selection Limited memory reach (1GB) No MMU PnP/COTS Modules easy to change Large selection Large memory reach (>4GB) MMU Virtual memory Reduced system size, cost and complexity RTOS Proprietary winapi Familiar API Development Environment Proprietary Tools Manufacture specific Proprietary Compilers Standard x86 Tools Microsoft Visual Studio Intel and Microsoft Compilers Common tool chain throughout the product Code Base Assembly and C Architecture specific C, C++, C# Universal / Portable Uses other higher level languages for non real-time Libraries libraries from OEM Intel supplied IPP library Other 3rd party libraries No requirement to use OEM proprietary libraries. Benchmarks 1.25 GHz - Max core speed 20 GFLOPS / Device Max 3.0 GHz - Max core speed >50 GFLOPS / Device Max Faster Higher performing IV. Hardware Design: The x86/x64 multi-core advances from Intel and AMD are changing the way systems developers meet real-time signal processing needs. New GPPs not only have multiple cores with extremely high clock speeds, but also perform complex math efficiently. They deliver several times the performance of standard s, as can be seen from the benchmarks in the comparison chart. Additionally, multi-core x86 devices are delivered with Commercial off the Shelf (COTS) hardware, which is not usually an option for users. COTS hardware rather than custom hardware translates into reduced costs, shorter time to market, and less risk. a) Processor Selection When replacing s with x86 multi-core, attention should be focused on the number of cores needed, as well as which x86 processor family best fits the system requirements. As a rough guideline, there can be a 1:1 relationship between s and x86 cores. Because of the extremely high clock speeds with the x86 cores, the design will likely require fewer cores, but the 1:1 ratio is a conservative start, with room for optimization. Both Intel and AMD have different processor families based on cost and power. For example, Intel s Atom and AMD s Fusion devices are focused on embedded systems requiring low power and cost minimization. b) Board Design In -based systems, engineers spend a great deal of time selecting the right processor so that the board can be designed and built in time for the software. Having to make hardware commitments early in the design often creates challenges and any miscalculation can lead to a hardware redesign, which will have a negative impact on the delivery schedule. When using the RTX Real-time Platform there are no strict deadlines for choosing and designing the hardware. Because RTX is x86 based, standard COTS hardware is available for both development and production. With no custom boards or drivers required for development, the final hardware selection is performed later in the design cycle. This reduces risk and greatly improves the chances of releasing products on time. Page 2

Also, because RTX is based on an x86 Windows architecture, engineers can use PCs as both development and target machines. No separate target system with specialized in circuit emulators is needed to develop and debug code. As the comparison chart shows, RTX s use of COTS hardware reduces both engineering costs and risks. c) Communication -based systems rely on custom hardware and software interfaces when communicating between devices. Serial lines and sometimes PCI buses are used for inter-processor communications. These custom interfaces are troublesome to design on custom hardware and can be difficult to upgrade as requirements change. The RTX Real-time Platform uses shared memory and formalized APIs to communicate between the processes. Because everything is running on a single device, it is easy to share data and messages between threads running on different cores. This communication architecture makes programming easy and scalable. d) Memory Selection While s require separate memory devices, with the RTX Platform memory is consolidated into a single memory device. Also, the x86-based platform can use standard off-the-shelf memory modules (i.e. 4GB SDRAM DIMM) and memory modules can be easily changed as system requirements dictate. s require on-board memory chips because of strict timing and routing requirements. Switching out memory chips is difficult and requires board changes to add or remove memory. The -based approach is more costly, complex and less flexible than the RTX Platform. V. Software Design: Software advances have also had significant impact on -based systems. The demand for standardized tooling in lieu of the proprietary tool sets is a recent change for many developers. Programming s requires proprietary tools and lower-level languages such as C and Assembly. Many engineering teams find that proprietary tools and low-level languages require specialized expertise, which is often very difficult to find and expensive to acquire. The use of standardized development tools and higherlevel languages, such as Visual Studio and C++, not only increases productivity but also greatly reduces engineering costs. a) General Purpose OS: The demand for complex graphical user interfaces (GUIs) has also impacted - based systems. Customers are increasingly seeking elaborate touch-and-gesture-based user interfaces on top of a real-time subsystem. s have never had the GUI and I/O support to satisfy most complex system requirements. That is why GPP s running general purpose operating systems are typically found next to s to handle all of the I/O and the complex user interfaces. As a result of the strong demand for powerful GUIs, Windows is becoming the preferred operating system because of its abundant tools support and its standardization. The use of standardized tools like Visual Studio and the large support structure of Microsoft s Developers Network make transitioning from s to RTX straight forward. b) Real-time Operating System: s use proprietary RTOSs from device manufacturers such as /BIOS from Texas Instruments (TI) or VDK from Analog Devices (ADI). These -based RTOSs are quite capable, but have significant limitations because of the lack of communications among the different cores. Each runs its own application and very little inter-processor communication is used. The RTX Real-time Platform implements a single symmetric multiprocessing scheduler across all of the cores in the real-time subsystem (Diagram 3). Instead of a separate RTOS and application running on each real-time core, the RTX Platform uses a single real-time scheduler to schedule threads across a number of different cores. The flexible SMP scheduling model makes synchronization Page 3

and communications among the different cores/ threads simple and easy to implement. Load balancing can be easily implemented from the APIs provided by the RTX Subsystem. The RTX APIs enable threads to be moved between processors during runtime. Diagram 3 RTX SMP-enabled Scheduler This scalability translates well when moving the application to systems with different core configurations. When cores are either added or removed from a system, the user can easily use logic within their application to load balance threads as needed. c) Development Tools manufactures provide proprietary tools such as Code Composer Studio from TI and Visual++ from ADI. While these tools are very useful for developing -based applications, market demand and cost pressures are providing impetus for more standardized tooling. Additionally, s low-level tooling and proprietary coding practices do not promote code reuse and portability. This translates into longer development times and higher risks. Many developers are finding that working with proprietary tools is not only challenging, but also costly to maintain. RTX uses Microsoft s Visual Studio which is the industry standard tool for x86/x64- based programming. Finding engineering talent for Microsoft tools is easier and more cost effective than is the case with s. Leveraging the support and robustness of Visual Studio and the Microsoft Developers Network (MSDN) makes for increased productivity and reduced costs. Most engineering teams prefer the use of standardized tools for their robustness and their support. d) Code Base Migrating code base to the RTX Platform is straight forward. When considering a port, the developer needs to be aware that there are two parts to an RTX application. First, there is the general purpose, or non real-time processing and then there is the /real-time processing. The non real-time/general purpose code will directly port over using a standard Visual Studio project and will run on the Windows operating system. The /real-time code will also be built using Visual Studio, but it will be running on the RTX controlled cores (real-time subsystem). s are usually programmed in both C and Assembly. While the Assembly code is not portable and will need to be written in C or C++, the C code can be ported over using Visual Studio. The RTX Platform enables real-time users to code efficiently in C++ rather than having to start with C and Assembly programming. While s do have some C++ support, object-oriented languages lose too much efficiency to be useful when compiled for architectures. The RTX Platform s strong support for C++ is a distinct advantage. Through RTX s use of powerful x86 devices, programmers can use C++ to increase productivity. By keeping the code base in higher level languages like C/C++, portability and code reuse can be leveraged to reduce costs and risks. e) Libraries Texas Instruments and Analog Devices both provide optimized libraries to help developers with performance and time to market. To take the place of these libraries Intel created the Integrated Performance Primitives (IPP). The IPP library is essentially a collection of optimized functions (i.e., imaging, video, etc.) for the multi-core x86 architectures. The IPP library helps to increase productivity and performance by providing optimized routines for the most common -based functions. Page 4

VI. Benchmarks: There are a number of ways to measure performance between processors. Because the focus is on s, measuring the number of floating point operations per second (GFLOPS) is used in this comparison. Benchmarks 1.25 GHz - Max core speed 20 GFLOPS / Intel Multi-core 3.0 GHz - Max core speed 32 GFLOPS / The comparison above is between ac66xx multi-core from Texas Instruments and an Intel i7 Sandy Bridge device. The TI C66xxx @ 1.25 GHz outputs 20 Single Precision GFLOPS per core. The Intel i7 Sandy Bridge processor outputs 32 Double Precision GFLOPS per core. Although the GFLOPS performance is very strong with the TI, it does not match the raw performance and speed of the Intel processors. VII. Summary: The RTX Real-time Platform marries the powerful Windows 7 interface with the real-time signal processing capabilities of Intel s and AMDs multi-core architectures. Using standardized COTS hardware and standardized tooling greatly simplifies the engineering effort and reduces cost. The RTX Platform increases innovation, portability and scalability while also reducing costs. There will always be a need for digital signal processing, but because of the many hardware and software advances, dedicated s are an option, but not a requirement. For complex systems requiring powerful graphical user interfaces along with real-time signal processing, there are higher-performing, more-scalable, less costly options. IntervalZero.com Copyright 2011 IntervalZero, Inc. All rights reserved. All trademarks, trade names, service marks and logos referenced herein belong to their respective companies