United Business Media EE Times


Search

HOMEMARKET INTELLIGENCE UNITFORUMSDESIGNNEW PRODUCTSCAREERSBLOGSCONTACTEVENTSSIGN UP!RSSMost Popular contentTrusted Sources

 


NPU software challenges
Print this article Email this article Reprints RSS Digital Edition

EE Times


GWENNAP_LINLEY At its developers' forum last month, Intel announced its IXP2800 network processor, featuring a powerful and flexible new architecture. This design bucks the trend in high-end NPUs, which has been toward reducing flexibility.

Many early NPUs, particularly Intel's popular IXP1200, perform most packet processing in software running on one of several packet engines. This method provides the flexibility of implementing new protocols and algorithms. When scaling NPUs from 1 to 10 Gbits/second, however, designers found it difficult to provide enough programmable horsepower. At 200 MHz, a 10-Gbit/s NPU would require at least 64 packet engines.

As a result, most high-end NPU designers have offloaded portions of the packet-processing task into fixed-function units. These on-chip coprocessors function with little software intervention.

For example, AMCC's nP7510 has just six packet engines at 330 MHz. It uses an external search engine for classification, an on-chip policing engine and an external traffic-management chip set for queuing. A packet engine executes only about 70 instructions to fully process a packet.

At the far end of this continuum lie networking ASICs like Marvell's Prestera. Such ASICs are configurable for a variety of protocols and algorithms, but are not programmable.

The IXP2800 is at the other end of this scale: Nearly all of its performance comes from its programmable engines. To solve the scalability problem, Intel custom-designed a 1.4-GHz packet engine. With 16 of them, the IXP2800 generates a whopping 22,400 Mips. This performance is necessary, however: To fully process a packet entirely in software requires roughly 700 IXP instructions, 10 times as many as in the AMCC architecture.

The advantage of Intel's approach is its flexibility. The IXP can handle not only protocols and algorithms but completely different services, such as TCP offload, that do not map well onto fixed-function coprocessors. The programmer can arrange the engines in parallel or in a software pipeline or any combination thereof.

But the IXP programmer must choose and implement the software architecture. The nP7510, in contrast, presents a simple single-processor programming model and requires far less code. The Prestera requires almost no code.

OEMs choosing an NPU must now decide whether Intel's flexible programming model is a burden or a boon.

Founder and Principal Analyst of the Linley Group, Linley Gwennap is Coauthor of "A Guide to Network Processors, Second Edition" www.linleygroup.com/npu.

http://www.eetimes.com/





The views and opinions expressed in this column are strictly those of the author and should not be taken as an editorial position of EE Times or any of its other editors, publications or Web sites.


  Free Subscription to EE Times
First Name Last Name
Company Name Title
Email address
  Click here for your Free Subscription to EETimes Europe
 
CAREER CENTER
Looking for a new job?
SEARCH JOBS
SPONSOR

RECENT JOB POSTINGS
CAREER NEWS
SRC Expands R&D Centers
The Semiconductor Research Corp has added a new center to its university R&D efforts.

For more great jobs, career related news, features and services, please visit EETimes' Career Center.


All White Papers »   

 
Education and
Learning


Learn Now:












Home | About | Editorial Calendar | Feedback | Subscriptions | Newsletter | Media Kit | Contact | Reprints|  RSS|   Digital|  Mobile
Network Websites
International
Network Features




All materials on this site Copyright © 2009 TechInsights, a Division of United Business Media LLC All rights reserved.
Privacy Statement | Terms of Service | About