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.

PCM1774: PCM1774 standby power consumption

Part Number: PCM1774

Dear all,

We're using a PCM1774 in I2C & I2S modes without control over its power supply.

We're following the power down sequence as advised in the datasheet with the exception of the power supply shutting down of course.

We've found out that we can gain a lot of power consumption by performing a reset command at the end.
The strange thing is that the gain is not constant. Sometimes we go from 3.140mA to 2.146mA with the reset and sometimes we end up at 0.942mA.

We've tried a board without the codec soldered and we're a bit below the 0.942mA indicating that in certain cases the codec is in a real good standby mode.
We've checked that there's no activity on the digital IOs. The I2S pins are held low and the I2C pins are held high.
We're of course very interested into getting the lowest consumption all the time but we don't see what the root cause of this difference is.

Has anyone some experience of insight on this?

Note that adding a control over the power supply is far from easy due to size and space of the board and due to the fact that we share the I2C bus with a screen.

Thanks in advance,
Best regards
JC

  • Hi JC,

    Maybe you are not successfully writing to the device? Issuing the reset will set all the blocks to power-down, which you already should have done.  Could you try reading the power down registers back from the device after step 12? 

    Thanks!

    Paul

  • Hi,

    Any updates?
  • Hi,

    Sorry for my late reply, I'm running a lot these days as I'll be out of office for the next 3 weeks.

    I've redone a test printing out what is written to the I2C and what is read back as a verification for every register access.

    Here is the result on the power down sequence:

    PowerOff SEQ
    W[68]=127
    R[68]=127
    W[69]=127
    R[69]=127
    W[88]=17
    R[88]=17
    W[73]=236
    R[73]=236
    W[90]=0
    R[90]=0
    W[74]=0
    R[74]=0
    W[73]=224
    R[73]=224
    W[72]=0
    R[72]=0
    W[86]=0
    R[86]=0
    W[73]=0
    R[73]=0
    W[0]=0
    R[0]=0
    W[64]=64
    R[64]=64
    W[65]=64
    R[65]=64
    W[68]=63
    R[68]=63
    W[69]=63
    R[69]=63
    W[88]=0
    R[88]=0
    W[125]=28
    R[125]=28
    W[85]=128

    The last write is the reset and is not read back of course. I've checked with a digital analyser the values and they match.

    The last value of the power down register (w[73]) is indeed 0x00.
    I've added some more writes after that one to restore the init states of other registers without significant changes on power consumption.

    There's a strange thing about the reset command though.
    As soon as the reset is received, it looks like the codec directly reset the I2C communication block without finalizing the communication till the I2C stop sequence is over.
    The lines goes up right after the ACK in a way that is not consistent with the way it's hapenning with other writes.

    Thanks for your help,

    Best regards,
    JC

  • I will try to test this in the lab on Monday. In the mean time, can you try the following experiment:
    Power on the device and proceed with initial configuration but do not apply I2S signal, then measure IQ.
    Go through the power down routine without issuing reset, measure current IQ.

    I wonder if having applied a I2S signal means that the device has auto configured some internal blocks that are not included in the power down structure.

    Thanks!
  • Hi JC,

    Sorry for the delay on this. I was not able to get hold of the hardware for me to test this. Have you been able to make progress on this issue?

    Thanks
    Paul
  • Hi Paul,

    Sorry for the delay as well, I was on holidays when I received your previous message.

    I initially thought the problem may come from I2S being active or not in some cases.
    I then looked at the signals and found out that the I2S is inactive while not playing audio and that is how I do the tests.
    Not only the audio is not playing but it is not even started.

    From the boot, the only activity on those lines could be when the port is being initialized and the lines take their idle values.
    When the SW reset is being done, I’m sure there’s no activity on the I2S lines.

    Thanks for your help.

    Best regards,
    JC