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.

AM4376: "Good Rx Frames", "Rx Start of Frame Overruns" and "Rx DMA Overruns" count up conditions

Part Number: AM4376

Hi,

I have qestions about "Good Rx Frames”and ”Rx Start of Frame Overruns”for CPSW.

Q1: When a packet is received in a state that causes DMA Over Flow with the Next Buffer Pointer of the first descriptor of the receiving descriptor is set to NULL and the Owner Ship bit of Flags is turned OFF,
  then "Good Rx Frames" counts up, but "Rx Start of Frame Overruns" does not count up.

  When a packet is received in a state that causes DMA Over Flow with the Next Buffer Pointer of the first descriptor of the receiving descriptor is set to NULL and the Owner Ship bit of Flags is turned ON,
  then "Good Rx Frames" counts up and "Rx Start of Frame Overruns" also counts up.

  Are the following conditions correct for counting up only "Rx Start of Frame Overruns"?
  When Next Buffer Pointer is NULL and Owner Ship bit is ON, or When a receiving FIFO is overflowed.

Q2: The document(TRM) described "Good Rx Frames" as [Overruns have no effect upon this statistic].
  Even if Next Buffer Pointer is set to NULL, Owner Ship bit is set to ON and DMA Over Run occurs, then "Good Rx Frames" is still counting up.
  So, does [Overruns have no effect upon this statistic] refer only to the Overflow of the receive FIFO?

Q3: When The "Rx Start of Frame Overruns" counts up, but the "Rx DMA Overruns" does not count up.
  I understood from the documentation that "Rx DMA Overruns" is the sum of "Rx Start of Frame Overruns" and "Rx Middle of Frame Overruns", is this understanding correct?


Best Regards,
H.U

  • Hi,

    You did not mention which software you are using. 

    I am combining the answer to both Q1 and Q2 here as it appears that you are mostly asking about how the ownership bit affects the overrun statistics. 

    The stats are independent of the bits in the descriptors except an overrun MOF packet will have EOP set with the overrun bit set.

    Q3:

    The Start of Frame (SOF) overruns can be higher than DMA overruns, the reason is because the stats also count drops at the FIFO due to no space available.

    Best Regards,

    Schuyler

  • Hi Schuyler,

    (Regarding Q1 and Q2.)
    I'm not talking about the Descriptor Overrun bit, I'd like to know why "Good Rx Frames" is counted up when DMA Overrun is triggered.
    Doesn't "Good Rx Frames" count up only when dropping by reception FIFO?
    I'm not sure what kind of Overrun the explanation [Overruns have no effect upon this statistic.] is referring to. DMA's OverRun always seems to count up.

    (Regarding Q3)
    When "Rx Start of Frame Overruns" counts up, but "Rx DMA Overruns" remains at 0.  Why is this?

    Best Regards,
    H.U

  • Hello H.U,

    We apologize for the delayed response. I will have more information for you soon.

    Regards,

    Nick

  • Hi Nick,

    I’m sorry to rush you, but my customer are waiting for your reply.

    Best Regards,
    UNA

  • Hi,

    The "Good Rx Frames" counts up when the packet is successfully received into the RX FIFO. The RX DMA Overrun count is counting packets that have to be dropped where there is are not any RX CPDMA descriptors available to move the packet from FIFO to external memory. This section of the TRM 15.3.2.20.1.13 Rx DMA Overruns describes how the count increases.

    When "Rx Start of Frame Overruns" counts up and "Rx DMA Overruns" remains at 0 has to do with where the statistics are captured. The start of frame happens at the entrance to the RX FIFO. The RX DMA Overruns are captured at the exit of the RX FIFO. The overrun errors occurs typically when the packet has moved through the FIFO heading to memory and there is not an RX descriptor available to DMA the packet to memory as described above.

    Best Regards,

    Schuyler