Because of the Thanksgiving holiday in the U.S., TI E2E™ design support forum responses may be delayed from November 25 through December 2. Thank you for your patience.

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.

DRA79: TDM32 support

Part Number: DRA79

Dear TI team,

How does it work to support TDM32 on DRA79 processor ?

I do not understand how DRA79 can address 32 channels of TDM32 because it looks like McASP 1 and 2 support only 16 channels.

Does it means that each McASP channel is stereo ?

Is it possible to combine channels from McASP1 and 2 to output TDM32 ?

Regards,

Nicolas PERRIN

  • Hi Nicolas,

    Nicolas PERRIN said:

    I do not understand how DRA79 can address 32 channels of TDM32 because it looks like McASP 1 and 2 support only 16 channels.

    Yes, McASP1 and McASP2 support 16 serializers, the other McASP instances support 4 serializers. Each serializer can be configured as either transmit or receive.

    In master mode, the frame sync duration is defined in terms of the number of TDM slots (configured via TXFMCTL[15:7] XMOD and RXFMCTL[15:7] RMOD). The slots McASP is active on are configured via TXTDM and RXTDM.

    Nicolas PERRIN said:
    Does it means that each McASP channel is stereo ?

    Well, each McASP serializer can be transmitting/receiving two channels if the number of bits set in TXTDM / RXTDM is 2. Generally speaking, each McASP serializer transmits (or receives) "bitcount([T,R]XTDM)" number of channels.

    For instance, for TX direction: if XMOD = 32 and only one serializer is used for transmission, then bitcount(TXTDM) directly determines the number of channels transmitted by McASP. If two serializers were used for transmission, then the two serializers will be active in the TDM slots corresponding to the bits set in TXTDM. And so on.

    The number of channels in the audio frame is then determined by bitcount([T,R]XTDM) x serializers configured in that stream direction.

    Nicolas PERRIN said:
    Is it possible to combine channels from McASP1 and 2 to output TDM32 ?

    In theory, I think it should be possible if both McASP's clocks are synchronous and taking special care of starting the two McASPs at the same time. But I would question if this kind of arrangement is really needed.

  • Hi Misael,
    Thanks for your answer.
    According to your answer, It looks like I am confusing audio channels and serializers.
    If we take as an example McASP1.
    How many Audio mono RX channels can it handle ?
    How many Audio mono TX channels can it handle ?
  • Nicolas PERRIN said:
    According to your answer, It looks like I am confusing audio channels and serializers.

    The serializers are the data lines between McASP <-> audio companion chip (audio codec, DAC, ADC).

    Nicolas PERRIN said:
    If we take as an example McASP1.
    How many Audio mono RX channels can it handle ?
    How many Audio mono TX channels can it handle ?

    If all serializers were configured for TX direction and all 32-TDM slots were active, then the max number of channels is 32x16. Similarly for RX. Obviously, this implies that McASP is fed with new samples fast enough to prevent underruns (and new received samples are read from McASP fast enough to prevent overruns).

    When a TDM slot is marked as active in [T,R]XTDM, all serializers configured for that given stream direction will be actively shifting data in or out.

    TDM32 can be implemented with one serializer in TX mode and another in RX mode. XMOD = 32 and [T,R]XTDM configured according to the slots McASP is to be active (i.e. 0xFFFFFFFF if McASP is active in all slots).

  • Thanks a lot, I understand now what you mean.
    Your answer is really helpfull !