the C-5e network processor's QMU. When packets or cells must be routed to different embedded processors (one of the CPs, the XP, or the FP), this is effectively done through the Q-5 TMC, which is always using the descriptors as proxies for the corresponding individual packets. Descriptors are transferred as part of the enqueue operation (both unicast and mul- ticast) and are returned as part of the dequeue operation. As mentioned earlier, the Q-5 TMC stores the payload descriptors when they are received. It then forwards these descriptors individually to the appropriate processor for subsequent payload-related processing through the network processor's QMU. This means that when a descriptor reaches its tination processor (the CP, the XP, or the FP), the payload data that is associated with this descriptor will be pulled from the temporary storage under the supervision of the BMU and forwarded to the corresponding destination, which is now the processor that possesses the descriptor. The following section discusses how to program QoS-related services with C-Ware APIs. DEVELOPING SOFTWARE FOR THE C-PORT FAMILY OF NETWORK PROCESSORS Motorola is offering a powerful toolset and development system for the overall development of soft- ware in conjunction with new hardware engineering. The C-Ware Applications Library and the C-Ware API enable the timely development of rich NPU source code that can be tested and analyzed by the toolset, simulation, and performance analysis environments. The C-Ware Simulation vironment enables the fast and performance-accurate simulation of all aspects of hardware in the C-Port family of NPUs, traffic managers, and even adapters. The environment further provides open interfaces for system simulation creation (including the host CPU, the control plane, the fabric, and any potential coprocessors). The C-Ware iPerformance Analyzer offers an advanced integrated graphical user interface (GUI) with capabilities for monitoring per CP or per thread, and it enables graphical C-language-level debugg