Intel IXA SDK ACE Programming Framework - Department of ...
Intel IXA SDK ACE Programming Framework - Department of ...
Intel IXA SDK ACE Programming Framework - Department of ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Components <strong>of</strong> the <strong>IXA</strong> <strong>SDK</strong> for the IXP1200<br />
— Microcode macros for use in micro<strong>ACE</strong> microblocks and dispatch loops.<br />
l<br />
l<br />
l<br />
System s<strong>of</strong>tware, which includes the following:<br />
— The <strong>ACE</strong> runtimes for each <strong>ACE</strong>, which perform packet handling<br />
— The Object Management System (OMS), which acts as a name server and<br />
resource manager and provides the framework for interobject communication<br />
— The micro<strong>ACE</strong> Resource Manager, which manages micro<strong>ACE</strong> memory and<br />
coordinates communication between the core component and microblock in<br />
micro<strong>ACE</strong>s.<br />
— An embedded operating system (Linux, a widely-used, standard, open-source<br />
system)<br />
— A boot manager that performs power-on initialization<br />
— Device drivers<br />
— A TCP/IP protocol stack<br />
— Run-time libraries that provide execution and management services for the<br />
<strong>ACE</strong> model, name space, data handling, and interobject communication.<br />
S<strong>of</strong>tware development tools:<br />
— Network Classification Language (NCL), which you use to classify packets<br />
and direct actions to be taken.<br />
— An interface definition language, <strong>IXA</strong> IDL, in which you specify the crosscall<br />
interfaces that objects use to communicate through the OMS.<br />
— Linux compilers, assemblers, linkers, loaders, and debuggers for code in the<br />
various languages (C/C++, IDL, and NCL).<br />
— Command-line utilities for working with <strong>ACE</strong>s.<br />
— The IXP1200 Microengine Development Environment, a tool that supports the<br />
development and integration <strong>of</strong> microcode modules targeted for the microengines,<br />
the optimized packet processors on the IXP1200. This includes<br />
IXP1200 microcode, along with compilers, debuggers, and application development<br />
utilities.<br />
Predefined building blocks<br />
Example code and sample applications, reusable and modifiable library <strong>ACE</strong>s,<br />
predefined protocol descriptions, and other elements to make application development<br />
rapid.<br />
18 Introduction and Overview<br />
Revision 3.3, August 2001