[ixp1200] ME-ME Ring

Abhijeet Joglekar abhijeet at cs.utah.edu
Thu Oct 23 12:13:43 EDT 2003


Chris,

Can you get the archives of this list? Some part of this was discussed
earlier on this list.

SDK 2.0 defines rings for each of the output ports and also for
communicating between the MEs and SA. If you want to pass packets between
your processing MEs, you can create additional rings in the Core
component of your MicroAce and then patch them in your processing
microcode. You can adapt the Enqueue/Dequeue macros of SDK 2.0
in your microcode.

Some places to look at:
	* Archives of this list.
	* Understand how output port rings work
	(Look at where these rings are created in the core, how they
	are patched, and used. Then adapt it for your application
	rings.)
	* Look at FifoSource[] macro in egress for example of
	 how dequeue works.

-- abhijeet

On Tue, 21 Oct 2003, Christopher S Hall wrote:

> I'm trying to write code that passes packets between microengines hopefully
> using ucode macros provided by the SDK.  Right now, I have the Ingress ace
> running on ME's 0 and 1 (1 Gigabit port), Intermediate processing code on
> ME's 2, 3, 4, and the Egress ace running on ME 5.  I need to pass packets from
> ME's 0,1 to ME's 2,3,4 (The egress side isn't to important right now).  The
> DL_MESink macro seems to queue the packets up, but I'm unsure how to dequeue
> the packets at the other end.  Can the ME-ME rings provided by the SDK be used
> for this, and, if so, how are packets dequeued?
>
> Thanks, Chris
>





More information about the ixp1200 mailing list