networkZONE Products for the week of August 8, 2005
Arabella Software Says
Arabella's Expedited Fast Path Software Unleashes
"Hidden Cycles" From Freescale's PowerQUICC Processor For 5X-10X
Acceleration In Comms & Networking Apps
Arabella Software, a leading supplier of "Customized Linux Solutions'' for embedded applications based on Freescale processors containing PowerPC cores, today announced its EFP (Expedited Fast Path) Products - a revolutionary line of all software solutions designed to boost system-level throughput 5-10 times that of existing software packages. Based on Arabella's Asymmetrical Multi-Processor architecture and using microcode acceleration blocks for Freescale's communications processor module (CPM) and QUICC Engine, EFP products offer unparalleled performance on standard PowerQUICC_ processors. The first EFP products will include EFP Bridging, a fully integrated bridging solution and EFP-Tri, a triple-play services solution.
Arabella demonstrated the EFP Bridging solution at the Freescale Technology Forum this past June in Orlando. A side-by-side comparison showed the EFP Bridging solution running at 250K packets per second compared to the currently available Linux bridging solution, which runs at only 50K packets per second. This represents a 5 times performance increase on a 400MHz MPC8280 PowerQUICC II processor with 264MHz CPM just by using the EFP Bridging software.
The EFP product line is based on an innovative system-level concept called Asymmetrical Multi-Processing (AMP). AMP exploits the fact that most embedded communications applications can be partitioned into fast-path and slow-path functions. Fast-path operations are implemented in CPM or QUICC Engine microcode and aggressively optimized for maximum performance. The asymmetry of the application (fast/slow-paths) is matched by the asymmetry of the two processors (fast/generic). By aligning these carefully, the EFP products provide functionality and unparalleled levels of performance that were previously only possible on much higher-priced processors.
EFP products can be licensed as complete solutions available under a modified version of Arabella Linux, or they can be licensed separately as components and integrated with other control-plane stacks and/or operating systems. When offered as a complete solution with Arabella Linux, customers know up front what their performance will be and can eliminate the risk associated with combining protocols and operating systems from different vendors.
"Never before has a software solution resulted in such a significant performance gain from an existing communications processor," said Jonathan Masel, President and CEO of Arabella. "The EFP software solutions take greater advantage of the PowerQUICC architecture, enabling it to be used in applications that are currently being addressed by higher priced network processors. This opens up a world of new applications for these processors, whether in new products or as software-only field upgrades."
"Arabella's EFP products are innovative software solutions that
take advantage of the inherent power of the multi-processing architecture
of PowerQUICC processors," said David Perkins, senior vice president
and general manager of Freescale's Networking and Computing Systems Group.
"By providing the EFP solutions, Arabella will enable customers to
extend the use of Freescale's PowerQUICC processors to much higher performance
applications."
analogZONE Says . . .
Arabella's EFP (Expedited Fast Path) software is one of several remarkable hardware and software products which I discovered at this spring's Freescale Developer's Forum that should help richen the diversity of its technical ecosystem and generally make the lives of developers a bunch more productive. At first glance Arabella's claims that their code could boost a PowerQUICC's packet processing performance by as much as 10x reminded me one of those late-night TV infomercials, but after taking a look at how they do it, and watching a live demo, I'm a believer.
The reason that Arabella was able to do this is because of the intimate knowledge of the Power QUICC processors' innards they've gained while developing Linux kernels, specialized device drivers (IPSec, USB, ATM, HDLC, I2C), a complete OS and lots of other enhancements specific to the architecture you won't find in standard Linux packages. This has allowed them to "mine" heretofore unused processing power contained in the Communications Processor Module (CPM), which handles the low-level protocol processing and packet manipulations tasks.
Their code exploits the QUICC's dual-CPU architecture by cleanly splitting networking tasks into so-called "slow path" operations which are run exclusively on the PowerPC core, and "fast path" tasks which are handled by the CPM. Arabella capitalizes on the CPM's specialized architecture and its ability to quickly execute relatively small amounts of hand-written code. This makes it ideal to handle highly-repetitive, high-volume processing tasks involved with L2 - 4 processing while leaving the larger chunks of relatively general-purpose code to the PowerPC core which handles administration, set up, signaling, error handling and other non-routine jobs.
The new CPM microcode makes use of its many hardware acceleration blocks like the CRC engine and HDLC processor to handle line-speed tasks such as header resolution and lookup, header manipulation, QoS control, policing, and queuing/scheduling. For example, the Fast Path code is able to subvert the CPM's hardware CRC generator core to perform the hashing function commonly used in lookup operations. Keeping all the repetitive fast path functions on the CPM allows each CPU to do the tasks its best suited for. It also saves tons of wasted time by eliminating the overhead involved with waiting for handshakes between processors.
For most of the PowerQUICC's history, Motorola/Freescale kept tight control of the CPM code, although they would, for certain customers, provide custom versions to handle specific applications. Arabella is the only company (to my knowledge anyway) that has gotten Freescale's blessing to twiddle with the complex, and unforgiving, machine code that drives the CPM. To speed up the development process (and avoid painful coding disasters) they've developed a quasi-object-oriented approach to creating standardized building blocks of code that perform basic functions and can be strung together as needed. Besides working well with each other through standard interfaces, these blocks also have standardized host interfaces that allow them to talk directly with host software running on the PPC that configures and controls the CPM. This includes routine tasks like updating routing tables and supporting OSPF functionality possible using simple subroutine calls.
Depending on the application you can expect between 5x and 10x worth of speed-up in fast path capacity without any hardware upgrades. One of the more dramatic accelerations occurs in ATM interworking. In the real-word demo (mentioned in Arabella's release above) I saw for myself how an unmodified 400-MHz PQII was able to pass 30 - 50 k packets per second and that adding the fast path software boosted its throughput to significantly over 300 k packets.
Arabella claims that this speed-up can be accurately predicted using their analysis tool which models the deterministic properties of the CPM's state machine to accurately predict how much of a boost to your specific application it will yield before it's actually implemented in your system. This should help you accurately size your CPU's speed to meet the demands of your application without buying more than you need. It should also save lots of costly, painful trial-and error often involved with real-time application development.
Of course, anything this good has its price, and Arabella's software no exception. In exchange for accelerating a handful of specific tasks, you give up most, or all, of the highly-specialized communication processing functions the CPM normally offers such as HDLC/TDM termination. Unfortunately, I neglected to ask whether the code wipes out the ability of the CPM's Universal Communication Controllers (UCCs) to be programmed to serve as MAC functions for nearly any protocol or data format (anything from UARTs to Gigabit Ethernet or high-speed TDM), but it might be a good thing for you to ask if you are considering using this software.
Depending on how much development you want to do yourself, you can buy everything from a simple copy of the CPM microcode (if want to use their own OS on the PPC) to a fully-custom-engineered turnkey design. The most popular option is the system-level development suite that includes the Fast Path code for the CPM, Arabella's industrial-strength Linux for the PowerPC, and the drivers to communicate between both.
Arabella also offers a nice library of "canned" applications which include a package that supports bridging and Ethernet to ATM Interworking. Developers have also warmly received their canned triple-play solution that supports enhanced L2 data services as well as classification for L2 - 4. The package includes multi-scheme queuing, policing, prioritized allocation of buffer and queue capacity, and some level of protection against DoS attacks. While there is no software-only application for this in standard code for comparison, it's interesting to note that a 400-MHz PQII was able to support up to 250 k packets/s worth of traffic. They're also in the middle of developing a reference design for a router that handles IPv4 forwarding (IPv6 to follow) over both Ethernet and ATM interfaces. While it's still in test, Arabella expects speeds of up to 500 k packets per second. Also in development are NAT, security, and mobile applications.
While not suitable for every Power QUICC-based application, Arabella's EFP software has the potential to allow manufacturers to give substantial performance boosts to their current products and to add functions and features not possible before. The extra processing capacity also allows designers to use the QUICC to run support both control and data plane processing in products such as IP-DSLAMs where they had previously been only in the control plane. The software's highly deterministic characteristics also make it a natural in triple-play access systems, voice aggregators and gateways where latency control is critical. And wherever it's used the software will enable designers to get much more processing power per dollar (and per watt) than previously possible with this venerable line of communication processors.
Arabella's EFP products are available now for beta
customers and will be available for general release in Q3 of 2005. EFP licenses
are sold as a one-time fee for each end product in which it will be used.
Alternatively, Arabella offers an annual subscription fee that enables customers
to use EFP with a much-reduced initial payment. All EFP licenses are royalty-free.
Pricing starts at $30 k for a basic application using standard code modules.
|
| ||||