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.

TAS5805M: Audio forum

Part Number: TAS5805M
Other Parts Discussed in Thread: TAS5805, ,

I’m seeing a significant 48KHz component at the output.

My input is 96K sps.  Plotting points, the signal is a monotonic rise/fall.

I’m not using the internal DSP.  LC filter, not ferrite bead.

It is acting as if my 96K input is being decimated and processed at 48K. Is this the case?

How might I reduce the 48KHz component? Alternate component?

Thanks.

 

  • Hi Sam,

    Please share me your all I2C configurations and schematic to TAS5805. By the way, can you also capture your I2S (BCLK/LRCLK) waveform here for double check too?

    BR

    Alix Wan

  • Alix,

     

    Schematic / PCB:

    TAS5805MEVM

    Ports 1/2 - replaced ferrite beads with the same LC filter as ports 3/4

    All ports show the same issue.  Muting left or right - no change.

     

    I2C config: (same for ports 1/2 and 3/4)

    /* reset DSP, volume ramping */

    REG_CTRL2, DIS_DSP | CTRL2_MUTE

    /* 384k switching freq, btl, bd mode */

    REG_CTRL1, FSW_SEL_384K | DAMP_BTL | DAMP_MOD_bd

    /* 64 bit/frame, 96k sample rate */

    REG_SIG_CH_CTRL, BCK_RATIO_CONFIGURE_64FS | FS_MODE_96K

    /* LTJ, 32 bit */

    REG_SAP_CTRL1, DATA_FORMAT_LTJ | WORD_LENGTH_32

     

    Excel plot of input points:

     

    LRCLK/SCLK:

     

    Thanks!

  • Hi Sam,

    It seems that you are using EVM board and find this issue. Then it would be easier for me to reproduce this issue in my lab.

    Please share:

    1. PPC3 source file. In PPC3 GUI, file -- save as
    2. PVDD voltage
    3. Your input audio source

    Thanks!

    BR,

    Alix Wan.

  • Alix,

    1. Yes, I am using the EVM. However, I’ve hacked it a bit to run with a PSOC 6 EVM. So, I don’t have a PPC3 file. If I made one, I could not verify it.

    In summary:

    For device B (LC filter)

    Register 0x02, data 0x10 // Fsw 384kHz, BTL, bd

    Register 0x03, data 0x03 // play

    Register 0x28, data 0x5b // 64FS, 96K sample rate

    Register 0x33, data 0x03 // I2S format, 32 bit word

         (I’m using LTJ, since seems to be an 1 bit alignment bug between PSOC 6 and the 5805 in I2S mode. The 48kHz artifact is there in both modes)

    I don’t know if there are any other registers that need to be set with the xmos sourcing the I2S.

    2. PVDD - 24V Reducing the voltage clips the signal, but the region that is still linear has the same huge 48kHz artifact.

    3. It happens regardless of waveform. A 10kHz sine is representative.

    4. I’ve also tried it with the DC blocking disabled. Same trouble.


    Thanks!
    Sam

  • I was incorrect. Waveform seems to make all of the difference.

     

    PROBLEM:

    huge 48kHz artifact

     

    5805 output:

     

    WAV, IN TO 5805

    The wave infinitely repeats.  Values as follows:

    2022845
    14721432
    5338095
    -2734122
    -9689566
    -15672646
    -20822330
    -25254702
    -30254636
    -13148731

    Graph form:

    CONFIGURATION

    For 5805EVM device B (LC filter)

    Register 0x02, data 0x10 // Fsw 384kHz, BTL, bd

    Register 0x03, data 0x03 // play

    Register 0x28, data 0x5b // 64FS, 96K sample rate

    Register 0x33, data 0x03 // I2S format, 32 bit word

    PVDD = 24V

     

    CONFIRMED WORKING

    A 10kHz sine (and other freqs) looks exactly like what I’d expect. And, has only the expected artifacts.

     

    NO EFFECT

    WAV amplitude

    48 vs 96kHz sample rate

    PVDD

    THEORIES

    5805 DSP is eating the signal.  Why?

  • Hi Sam,

    I can understand your configuration to TAS5805M and it turns out that 10K is checked to be ok.

    Now, can you share a .wav or .mp3 file for my reproduce of the issue. I cannot understand you waveform description below:

    WAV, IN TO 5805

    The wave infinitely repeats. Values as follows:

    2022845
    14721432
    5338095
    -2734122
    -9689566
    -15672646
    -20822330
    -25254702
    -30254636
    -13148731

    BR,

    Alix Wan

  • Alix,

    Here's a 2 channel 96kHz WAV that should be playable from a PC.  The above values repeat for several seconds.  You should see something like the previous scope capture.

    Thanks,
    Sam

  • Hello Sam,

    From your audio source, it turns out to be 10K "square wave" as below. With ~9.6KHz and its harmanoics.

    As it is 96K Fs, TAS5805M is needed to choose 96K process flow and it can output waveform as below:

    Please check your configurations and measure again. Tips below are for your reference:

    • audio source is 96K, but PC itself is also needed to configured as 96K

                   

    • Please choose 96K process flow with commands below:

                tas5805_96K_Flow_I2C_Configuraton_Files.h

    BR,

    Alix Wan.

  • Unfortunately, I’ve only got digital audio on my PC, so I was not able to verify levels. Here’s a new file, with the level shifted by 8 bits. Alternatively, can you adjust the volume on your end, until there is no clipping?

     

    Sorry for the trouble.

     

    Thanks again.

  • Hello Sam,

    Can you install Audacity (free) to check your audio source file? On my side, even with your updated audio source file, it is a clipped square wave.

    As a matter of fact, my volume is quite low (-24dB) and it won't cause clipping. Thanks!

    BR,

    Alix Wan.

      

  • Thanks!  My bad.  This looks correct in Audacity.

  • Hi Sam,

    From your audio source, firstly, DC component can be found as well as 9.6K and its 2rd, 3rd, 4rd harmonics 

    TAS5805M's data can be output from Sdout pin and my recorded Sdout data is as below:

    As can be seen above, just DC block module filter out DC component while keeping all other components as DSP runs at a 96K processing clock.

    Further, analog output is 

    Different harmonic has different group delay, which leads to a little distortion. Further, 96K processing flow will attenuate ~40KHz harmonics a little. Hence, the output may be a little distortion.

    BR,

    Alix Wan.

  • Alix,

    Thanks for trying this out.

    Assuming it is high frequency group delay, it would seem that this is in excess of 180 degrees. Particularly, it is so bad it is taking a monotonic input signal and producing a non-monotonic output.

    How do I disable the feature that is causing the excessive group delay / phase inversion at ~40kHz? I don’t require any DSP processing.

    Thanks!

    Sam

  • Hi Sam,

    Maybe you can do some tuning about LC filter design, which aims to achieve higher cut-off frequency. 

    Further, from 96K process flow, 48K bandwidth, on my side, non-linear phase near Fs/2 (group delay is not a constant value) is normal on my side. 

    But please try for your application and let me know if you have further issue.

    BR.

    Alix Wan.