SPRZ426E November   2014  – February 2021 DRA710 , DRA712 , DRA714 , DRA716 , DRA718 , DRA722 , DRA724 , DRA725 , DRA726

 

  1. 1Introduction
    1.     Related Documentation
    2.     Trademarks
    3.     Modules Impacted
  2. 2Silicon Advisories
    1.     Revisions SR 2.1, 2.0, 1.0 - Advisories List
    2.     i202
    3.     i378
    4.     i631
    5.     i694
    6.     i698
    7.     i699
    8.     i709
    9.     i727
    10.     i729
    11.     i734
    12.     i767
    13.     i782
    14.     i783
    15.     i802
    16.     i803
    17.     i807
    18.     i808
    19.     i809
    20.     i810
    21.     i813
    22.     i814
    23.     i815
    24.     i818
    25.     i819
    26.     i820
    27.     i824
    28.     i826
    29.     i829
    30.     i834
    31.     i849
    32.     i856
    33.     i862
    34.     i863
    35.     i867
    36.     i868
    37.     i869
    38.     i870
    39.     i871
    40.     i872
    41.     i874
    42.     i875
    43.     i878
    44.     i879
    45.     i880
    46.     i881
    47.     i882
    48.     i883
    49.     i887
    50.     i889
    51.     i890
    52.     i893
    53.     i895
    54.     i896
    55.     i897
    56.     i898
    57.     i899
    58.     i900
    59.     i903
    60.     i904
    61.     i906
    62.     i913
    63.     i916
    64.     i927
    65.     i928
    66.     i929
    67.     i930
    68.     i932
    69.     i933
    70.     i940
  3. 3Silicon Limitations
    1.     Revisions SR 2.1, 2.0, 1.0 - Limitations List
    2.     i596
    3.     i641
    4.     i833
    5.     i838
    6.     i844
    7.     i845
    8.     i848
    9.     i876
    10.     i877
    11.     i892
    12.     i909
    13.     i917
  4. 4Silicon Cautions
    1.     Revisions SR 2.1, 2.0, 1.0 - Cautions List
    2.     i781
    3. 4.1 93
    4.     i827
    5.     i832
    6.     i836
    7.     i839
    8.     i864
    9.     i885
    10.     i886
    11.     i912
    12.     i918
    13.     i920
    14.     i926
    15.     i931
    16.     i934
    17. 4.2 107
  5. 5Revision History

i868

McASP to EDMA Synchronization Level Event Can Be Lost

CRITICALITY

Medium

DESCRIPTION

The McASP FIFO events to the EDMA or System DMA can be lost depending on the timing between the McASP side activity and the DMA side activity. The problem is most likely to occur in a heavily loaded system which can cause the DMA latency to increase and potentially hit the problematic timing window. When an event is lost, the McASP FIFO Rx path will overflow or the Tx path will underflow. Software intervention is required to recover from this condition.

The issue results due to a state machine boundary condition in the McASP FIFO logic. In normal operation, when "Threshold" (set by the RFIFOCTL[15:8] RNUMEVT and WFIFOCTL[15:8] WNUMEVT registers) words of data are read/written by the DMA then the previous event would be cleared. Similarly, when "Threshold" words of data are written/read from the pins, a new event should be set. If these two conditions occur at the same exact time (within a 2 cycle window), then there is a conflict in the set/clear logic and the event is cleared but is not re-asserted to the DMA.

WORKAROUND

Since the McASP is a real time peripheral, any loss of data due to underflow/overflow should be avoided by eliminating the possibility of DMA read/write completing at the same time as a new McASP Event. Software should configure the system to:

  1. Maximize time until the deadline for the McASP FIFO
  2. Minimize DMA service time for McASP related transfers

In order to maximize time until deadline, the RNUMEVT and WNUMEVT should be set to the largest multiple of "number of serializers active" that is less-than-equal-to 32 words. Since the FIFO is 64-Words deep, this gives the maximum time to avoid the boundary condition.

In order to minimize DMA service time for McASP related transfers multiple options are possible. For example, McASP buffers can be placed in OCMCRAM or DSP's L2 SRAM (since on chip memories provide a more deterministic and lower latency path compared to DDR memory). In addition, a dedicated Queue/TC can be allocated to McASP transfers. At minimum, care should be taken to avoid any long transfers on the same Queue/TC to avoid head-of-line blocking latency.

REVISIONS IMPACTED

DRA72x SR 1.0

TDA2Ex (23mm): 1.0

AM571x: 1.0

DRA72x: 1.0