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.

AM5748: Bandgap ADC Temperature Data

Part Number: AM5748

Hi,

I have a question regarding MPU's junction temperature sensor. In TRM, the ADC value only goes to 945 which corresponds to 125 deg. C.

I can read from CTRL_CORE_TEMP_SENSOR_MPU register (0x4A00232C) at temperature above 125 C but the data has no corresponding values in the table. 

Why does the table not provide temperature values above 125C?

What is the operating temperature range of this sensor? Is it usable above 125C? 

Thanks,
Louis

  • Louis,

    Have you manually disabled TSHUT?  The part should reset itself at 123 C.

    Assuming you disabled TSHUT, then you can extrapolate the temp sensors values above 125 with reasonable results.

    That said, the AM5748 is spec'ed to a max Tj of 105C, so you're operating out of spec in any case.

    Regards,

    Kyle

  • Hi Kyle,

    Can we actually disable TSHUT manually? What I did is, I set TSHUT to 150C. Yes, I extrapolated the results beyond 125, however, is it still a linear trend? Also, can you tell me the accuracy of the sensor above 125? 

    I tested multiple processors, above 125C, they reboot at different sensor values. Some reboot at extrapolated 141C, some at 138C, but none rebooting close to 150C. Which raised the question, if we can trust this extrapolated values.

    Thanks!

    Louis

  • Louis,

    We don't have any char data above 125 to predict how the temp sensors will behave.  You're operating the device out of spec so even basic functionality of the device is not guaranteed.

    How are you judging the temp to say it's 141, 138, etc?  Is that the value reported by the temp sensors (including extrapolation?).  

    Regardless of how you extrapolate or the accuracy of the temp sensors ... the actual temp sensor value will be compared to the TSHUT value and when those cross then the reset would be asserted.  So if you're saying the reported Tj was only 141, 138 you may be seeing a functional failure rather than a TSHUT reset.

    Regards,

    Kyle

  • Kyle,

    So what I did is, I read the temperature data in 0x4A00232C (MPU temperature sensor). It gives me hex values e.g. 0x3B1 (corresponding to 945 ADC value in table 19.11 in sec. 19.4.6.2.7 in TRM. Then I use the table to lookup the temperature value corresponding to the ADC value.

    For  values higher than 0x3B1, e.g. 0x3D0 (976 ADC value), I must extrapolate it using the linear trend that I got by plotting the whole table 19.11 in Excel. With this trend, extrapolating 0x3D0 = 139.5C.

    We set TSHUT for MPU at 0x3FF (150C).

    So now, if the processor reboots at 0x3D0 (139.5C), what can we say about this?  The comparison is wrong (unlikely)? Or sensor reading can't be trusted at this temperature? Or MPU just very quickly shoots up in power consumption and temperature reaches 150C before the next sensor reading?

    Thanks!

    Louis 

  • Louis,

    After the reset/failure, can you read this register: 

     PRM_RSTST

    That will tell you the cause of reset, and includes bits to indicate that TSHUT was the cause of the most recent reset.

    Re: these scenarios: 

    > if the processor reboots at 0x3D0 (139.5C), what can we say about this?  The comparison is wrong (unlikely)?

    Agree, unlikely.

    > Or sensor reading can't be trusted at this temperature?

    Possible, but it read 139.5 so it's basically doing its job.

    Or MPU just very quickly shoots up in power consumption and temperature reaches 150C before the next sensor reading?

    What is your polling interval?  I wouldn't expect the sensor to literally jump to 150 between two internal samples. But if you're polling slowly you may miss a quick rise.  Note that the processor leakage current increases exponentially at high temp, so it is possible that you'll shoot through the roof at some point above 125.

    Regards,

    Kyle

  • Kyle,

    Thanks, I will try reading PRM_RSTST.

    so basically, if we set TSHUT to be at 0x3FF (150C), processor will not reboot until it reads 0x3FF right? 

    Do you have any idea of how we can make sure that the sensor is reading correctly? 

    My polling interval is 1 minute. Every 1 minute, I read current from PMIC for the 5 critical cores (SMPS12, 3, 45, 6 and 8) and lastly temperature of MPU (only). From what I observe, the temperature shoots up during PMIC current reading.

    Thanks,

    Louis

  • Louis,

    Can you summarize what you're trying to debug or accomplish?  

    I suppose this is related to this other thread:

     RE: AM5748: stuck at high temperature

    > If we set TSHUT to be at 0x3FF (150C), processor will not reboot until it reads 0x3FF right? 

    Right ... just for the heck of it, you might try setting to 0x3FE in case the logic has some strange behavior on roll-over or saturation.

    > Do you have any idea of how we can make sure that the sensor is reading correctly? 

    You might gain confidence by reading all 5 of the temp sensors in a tighter loop (say 1x/second) and plot the results over time.  You'll probably see the results hockey stick up above 125 C.  

    Regards,

    Kyle

  • Hi Kyle,

    Thanks for the suggestion, I will try the 1x/second sampling. 

    Yes it is related tp the other thread but indirectly. In this thread, we are trying to get the credibility of the temperature sensor. What we are trying to do is manually disabling TSHUT comparison. Since this can't be done, we want to set a setpoint higher than 125C. However, above 125C, no char data is supplied in TI TRM. So, we are not sure if we can even trust the data I read from the sensor. 

    For example: 

    If we read 0x3FE, is the temperature really corresponding to 0x3FE? Or is it actually reading a lower temperature?

    Secondly, will sensors in different processors have the same trend above 125C? For example:

    - soc#1 MPU temperature = 0x3FE,

    - soc#2 MPU temperature = 0x3FE.

    Will they have the same extrapolation trend (y = mx +b) and give the same temperature reading?

     

    It becomes a difficult question because we don't know if we can trust the temperature reading. 

    I am fully aware that setting it higher than 125C is not recommended and out of the processor spec.

    Regards,

    Louis