Products
Intel Press Home
Intel Press
Right Books. Right Time. From the Experts.
IXP1200 Programming      IXP1200 Programming
The Microengine Coding Guide for the Intel® IXP1200 Network Processor Family
by Erik J. Johnson and Aaron Kunze
Register your book with Intel Press
Sample Chapter
Table of Contents
This book shows software engineers how to program the microengines of Intel's IXP1200 family of network processors. Assuming no particular background or experience with Intel® Internet Exchange Architecture (Intel® IXA) components, the book begins with a description of the hardware and development environment. You get an explanation of the right, and sometimes the wrong, approaches to programming the microengines through a series of expanding examples, covering topics such as:

Receiving, processing, and transmitting packets
Synchronizing between hardware threads
Using the hash unit and cyclic-redundancy check instructions
Writing microACEs to help build complex network applications

For readers who have no experience with the Intel IXA, the authors introduce the hardware and development environment. For readers familiar with Intel's earlier network processors, the book cites differences between programming methods for Intel IXP2XXX and Intel IXP12XX product lines.

The programming examples are written in structured microC "microblocks," with microengine assembly code used occasionally for illustration. IXP1200 Programming will show you how to:

Write your first program in microengine C
Use the Developer Workbench tools for compiling and debugging
Optimize and tune your program for the highest performance

A companion CD-ROM contains all the microengine code examples found in the book, plus a complete Intel® IXA Software Development Kit (SDK) 3.0 for building your applications.

About the Authors
Erik J. Johnson and Aaron R. Kunze are both Senior Network Software Engineers at Intel Labs. As part of a team, they designed and implemented the microACE architecture in the Intel IXP1200 Software Development Kit, which helps software engineers create reusable packet-processing modules and combine them into network processor applications. Currently, they are designing reusable Quality of Service (QoS) components for use with the Intel IXP1200 network processor family. Erik and Aaron are the authors of IXP2400/2800 Programming.

Back to Top