Network processor

Network processors are typically software programmable devices and would have generic characteristics similar to general purpose central processing units that are commonly used in many different types of equipment and products.

The newer circuits are programmable and thus allow a single hardware IC design to undertake a number of different functions, where the appropriate software is installed.

FlexNIC[4] attempts to apply this model to Network Interface Controllers allowing servers to send and receive packets at high speeds while maintaining protocol flexibility and without increasing the CPU overhead.

In the generic role as a packet processor, a number of optimised features or functions are typically present in a network processor, which include: In order to deal with high data-rates, several architectural paradigms are commonly used: Additionally, traffic management, which is a critical element in L2-L3 network processing and used to be executed by a variety of co-processors, has become an integral part of the network processor architecture, and a substantial part of its silicon area ("real estate") is devoted to the integrated traffic manager.

Such networks can be used as an alternative facility for the efficient inter-core communication aside of the standard use of shared memory.

Intel FWIXP422BB
RMP Pipeline Description