Non-deterministic errors on peripherals at start up / power up problem?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Non-deterministic errors on peripherals at start up / power up problem?

397 Views
nplayle
Contributor I

Hi, 

We've been debugging what we thought was a software problem for the past week or two, but now think it might be hardware related. 

We have a custom designed RT1064 board. It is a battery powered application. Testing showed that we had ~600mV on the 3.3V rail when off, the HW design guide says it should be <0.5V. So I fixed that and still have the same issue. The power rails are sequenced per the datasheet, reference manual and HW design guide. There is no bootloader in use for this test. There is code executing from both flash and ITC RAM. 

The board has only a single 3.3V regulator. All 3.3V supplies are fed from this regulator. There is no coin cell power, and 3.3V is tied to VDD_SNVS_IN and VDD_HIGH_IN. We are using an external PMIC which asserts the POR signal to the CPU. 

nplayle_0-1628978883827.png

  1. Yellow = 1.2V SOC 
  2. cyan  = 3.3V rail
  3. magenta = reset signal
  4. dark blue = DCDC_PSWITCH signal

Here is a photo showing the power on sequence. Note this is before the fix to drop the standby voltage to 0V, so the DCDC_PSWITCH voltage and 3.3V rail voltage are around 600mV when 'off'. I don't see anything suspect about this startup - the board boots and the 1.2V regulator goes into overdrive mode so we can get 600MHz core speeds, other peripherals are working fine, etc. I have tested this with 0V on the 3.3V / DCDC_PSWITCH rails and still have the same issue. I have also tested longer and shorter RC delays. They same some effect on the rate that the issue occurs, but nothing concrete. 

In short, the behaviour is roughly as follows:

With varying frequency (seemingly dependent on the board), it will boot with various peripheral issues. Most commonly, the DMA / SAI peripheral has major issues where the DMA IRQs don't fire properly, we don't get a transfer complete IRQ (well, we do, but it's late, and instead of being 8 transfers left it's 7 transfers left). This varies from about 90% of the time on one board to ~10% of the time on another (sample size = 3, all have the issue). 

When this happens, our logic to swap the double buffered SAI transfer fails and causes a loud obnoxious buzzing noise. This does not happen all the time, sometimes the driver works fine and we can play audio as expected. For this reason, I no longer believe our issue is software based. 

Has anyone seen this behaviour before? Any suggestions on what to check? I've sent out an email to see if I can get in touch with an FAE but I'd like to get as much input as possible. 

Thanks,

 

 

Labels (1)
0 Kudos
0 Replies