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.

TAS2557: Power down and mute for 16khz tuning mode

Part Number: TAS2557

Hello! I have configured my TAS2557 with 16kHz, 16bit tuning mode and I use TAS2557 to generate WCLK and BCLK from MCLK which is generated by me (12MHz). I have a problem regarding power up after powering down the device. Sometimes there is no sound coming out of my speaker, but when I look at the I2S communication, everything looks fine. Sometimes rebooting the system will make everything work again. All the configurations i use are generated from PPC3, apart from making the device generate BCLK and WLCK, DAC_GAIN is lowered to 11dB and BST_ILIM is set at 1.5A.

Power down sequence:
{0x7f, 0x00}, //switch to book0
{0x07, 0x03}, //Mute Analog Blocks
{0x04, 0x20}, //Power down DSP and clock dividers (except Ndivider)
{0x05, 0x00}, //Power down Analog Blocks
{0x00, 0x00}, //NOP
{0x04, 0x00} //Power down Ndivider

Power up sequence:
{0x00, 0x00}, //Page-0
{0x7f, 0x00}, //Book-0
{0x05, 0xA0}, // Power up Analog Blocks
{0x04, 0xF2}, // Power up DSP and clock dividers and PLL
{0x07, 0x00}, // Unmute Analog Blocks
{0x7f, 0x64}, // switch to book100
{0x07, 0x00}, // Soft stepped unmute of audio playback
// PLL begins
{0x00, 0x00},
{0x7f, 0x00},
{0x00, 0x01},
{0x73, 0x0f},
{0x74, 0x0d},
{0x00, 0x00},
{0x7f, 0x64},
{0x1b ,0x01},
{0x1c, 0x06},
{0x1d, 0x05},
{0x1e, 0xa0},
{0x20, 0x03},
{0x22, 0x08},
{0x02, 0x10},
{0x21, 0x08},
{0x01, 0x08},
{0x2b, 0x00},
{0x2c, 0x40},
{0x1f, 0x20},
{0x2a, 0x00},
{0x00, 0x00},
{0x7f, 0x00},
{0x00, 0x01},
{0x01, 0x00}, //I2S // 16-bit
{0x0d, 0x01}, //BDIV input = DAC_MOD_CLK
{0x0e, 0x86}, //BDIV enabled and set to 6
{0x0f, 0xA0}, //WDIV enabled and set to 32
{0x10, 0x00}, //ASI1 BCLK & WCLK from BDIV & WDIV
{0x3d, 0x0d}, //GPIO1 (BCLK) output from ASI1_BCLK_OUT
{0x3e, 0x0c} //GPIO2 (WCLK) output from ASI1_WCLK_OUT

Is there something that I have missed or done wrong?

Thank you in advance,
Viktor

  • Hi Viktor,

    You mention you look at I2S and confirm its OK. Are you using a scope to measure BCLK and WCLK frequencies? What are their values?

    You also mention using PPC3 to generate configuration files, but I would expect more command lines than the above. Are you using another set of commands for initialization and then these only for power up?

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators

  • Hello Ivan,

    Yes, I am using a scope and the values are BCLK: 512kHz, WCLK: 16kHz. I did use PPC3, but i could not find any sequence for power down/up among the configuration files. The command lines that I posted comes from the datasheet, plus a few commands provided by you to make the device generate BCLK and WCLK. The values of these commands are the same as in my initialization.

    Where can i find a complete set of power up/down sequence? 

    Thank you,
    /Viktor

  • Hey Ivan, 

    Have you considered my question about power up/down sequences?

    /Viktor

  • Hi Viktor,

    I would suggest that you generate a configuration file using PPC3, you can do this from End System Integration panel and should select your clock settings, although SBCLK lower than 1MHz is not supported.

    Regarding power up and down commands, once the device is initialized, you can use these snippets from data sheet:

    Power Up:

    ################### CHANNEL POWER UP ####################################################
    w 98 05 A3 # Power up Analog Blocks
    w 98 04 B8 # Power up DSP and clock dividers
    w 98 07 00 # Unmute Analog Blocks
    w 98 7f 64 # switch to book100
    w 98 07 00 # Soft stepped unmute of audio playback ############################################################################################

    Power Down:

    ################### CHANNEL POWER DOWN ####################################################
    w 98 07 01 # Soft stepped mute of audio playback
    d 10 # wait for DSP to mute classD after soft step down of audio
    # instead of delay alternatively status flag B120_P15_R120_R121_R122_R123 polling can be done and wait till R122_D0 = '1'.
    w 98 7f 00 # switch to book0
    w 98 07 03 # Mute Analog Blocks
    w 98 04 20 # Power down DSP and clock dividers (except Ndivider)
    w 98 05 00 # Power down Analog Blocks
    w 98 00 00 # NOP
    w 98 04 00 # Power down Ndivider
    #############################################################################################
    #optional(ending the script in B0_P0) w 98 00 00 # page 0 w 98 7f 00 # book 0 #############################################################################################

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators

  • Hi Ivan!

    I have used PPC3 to generate my configurations, i only added the following section to set the device in "master mode", where TAS2557 will generate WCLK and BCLK:

    {0x00, 0x00},
    {0x7f, 0x00},
    {0x00, 0x01},
    {0x01, 0x00}, //I2S // 16-bit
    {0x0d, 0x01}, //BDIV input = DAC_MOD_CLK
    {0x0e, 0x86}, //BDIV enabled and set to 6
    {0x0f, 0xA0}, //WDIV enabled and set to 32
    {0x10, 0x00}, //ASI1 BCLK & WCLK from BDIV & WDIV
    {0x3d, 0x0d}, //GPIO1 (BCLK) output from ASI1_BCLK_OUT
    {0x3e, 0x0c} //GPIO2 (WCLK) output from ASI1_WCLK_OUT

    I will provide you with my configuration file and maybe you can help me locate the power up/down sequence?

    /Viktor7077.combined_configuration_0_TuningMode_16KHz.cfg

  • Hi Viktor,

    The device is powered up after the # Configuration ends line.
    Registers 0x05 and 0x04 are used to power up the internal blocks of the device, and register 0x07 is used to unmute.

    After loading the cfg file you attached, the device will be powered up and unmuted. If you want to power it down you can use the commands I added in my previous comment.

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators