This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6678 MAC & IP

Hi,

I have a few questions about C6678 network coprocessor:

1. Does C6678 support 8 MAC address ?

2. Does C6678 support 8 IP address ?  

3. Does C6678 multicores share the 1000M bandwith or has standalone bandwith?

 

Regards,

dp 

  • Hi DP,

    First I suggest going over the UGs of NetCP found in http://www.ti.com/product/tms320c6678. UGs: NetCP (SRPUGZ6), PA (SPRUGS4A), SA (SRPUGY6A), GBE (SPRUGV9B).

    It depends on what exactly do you refer to supporting 8 MAC/IP addresses? As you will see in the UG's PA has Look up tables (LUT) that can hold up to 64 L2/L3 (i.e. MAC/IP) addresses each. There also LUT's for L4 (i.e. UDP/TCP) classficiation which hold up to 8K entries.

    As for the gigabit bandwidth, I suggest you read the Throughput Applicaiton note (sprabh2a), also found in the link above. But, in a nutshell you could say it is "shared" between multiple cores. However core  access to NetCP is non-blocking thanks to the PKTDMA. Cores need only to push packets into dedicated queues that PKTDMA reads to forward data inside NetCP (either to PA, SA or GBE). But taking the Gigabit ethernet as an example, the load pushed into it (i.e. all packets pushed by all cores into TX Q 648) will share the gigabit bandwidth. The entire queue should be unloaded at a rate of 1gbps. Please refer to the document above for more information on throughput data.

    Sincerely,

    Javier

  • Thanks Javier,

    Another question:

    Comparing C6678 with C6657, there is no switch subsystem but only an emac and sgmii in C6657.

    How do the two cores of c6657 use the emac ? Does C6657 support two mac address and ip address ? 

    Regards,

    dp 

  • Hi DP,

    That is correct C6657 does not have a NetCP and no switch sub-system. This emac is fairly similar to those present in the C64x family. This only has its MAC address. It does not have an Address Lookup Engine nor forwarding table as is only one port.

    I suggest going over the UG spruhh1 on http://www.ti.com/product/tms320c6657

    Regards,

    Javier

     

  • Hi, Javier

    I have questions about 6678's MAC, too. If a have two C6678, and i want to send packet from one to the other, how should I set the packet's MAC address?  Take PA_multicoreExample_exampleProject as an example. In Init_Cpsw (), there is 3 mac addresses for port 0,1 and 2. Moreover ,there are two macSrcAddress for each mac port in function Init_MAC. I am confused that how do these mac addresses connect to each other?  What's the relationship between port and mac port? Should they address be the same? And finally, if I am gonna send a packet from DSP1 to DSP2's port 1, how should i set the packets destination mac address, DSP2's port1 or DSP2's port0(host port)?

    Best regards,

    David

  • Hi, Javier

    Further on, if I want to connect 2 c6678 EVM board together via RJ45 port, how should I do? Do I need  a  single network cable or a Ethernet switch? And how shall I modify the program, take PA_multicoreExample_exampleProject as example.

    Best regards

    David

  • Hi David,

    I saw your original forum post. I replied to that one. Let me know if you have more questions.

    Regards,

    Javier

  • Hi, Javier.

    Thank you for your answer. Still, I have questions about the mac address in ALE table and in Init_MAC(). How do all these mac address work together? For me it seems that the mac addresses in Init_MAC() doesn't have much meaning, for ALE table does all the job. Can you throw some light on that,thanks.

    Regards,

    David

  • Hi Javier,

    I have't got my own board to try yet, so I still have the mac address problem.In Init_Cpsw (), there is 3 mac addresses for port 0,1 and 2. Moreover ,there are two macSrcAddress for each mac port in function Init_MAC. I am confused that how do these mac addresses connect to each other?  What's the relationship between port and mac port? Should they address be the same? And finally, if I am gonna send a packet from DSP1 to DSP2's port 1, how should i set the packets destination mac address, DSP2's port1 or DSP2's port0(host port)?

    Really looking forward to hearing from you, thanks!

    Regards,

    David