Designing Embedded Networking Applications: Essential Insights for Developers of Intel IXP4XX Network Processor Systems

Queue Manager

The IXP4XX network processors contain a silicon block known as the queue manager. The block provides 64 first in, first out (FIFO) hardware queues. The Intel IXP400 software makes use of these queues to transfer information between the Intel XScale core and the NPEs. The information is usually in the form of a descriptor with details of the data to operate on. The queue manager hardware block implements two groups of 32 queues, known as the lower and upper groups. Each queue group (lower and upper) is mapped to a separate Intel XScale core interrupt.

Each Intel IXP400 software access component configures the appropriate queue to generate an event when a specific queue condition occurs, such as when a queue becomes full. Your application is not required to directly configure or modify any of the queues.

The queue manager software component consists of a dispatch loop. The purpose of this dispatch loop is to iterate through the queues. When an event is pending on a queue, the appropriate Intel IXP400 software component is notified of the event. This event may, in turn, trigger a user-level call back, which your application has previously registered. An extremely important point is that all application level callbacks are called in the same stack context as the queue-manager dispatch loop. That is, if the dispatch loop is called from an interrupt handler, the application callbacks are also called at interrupt level.

Your application is responsible for calling or registering the queue manager dispatch...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Embedded Systems Software
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.