ΣSigmaStudio Ask AI Русский Log in

ADAU1466 SPI EEPROM Selfboot Issues

SigmaDSP & SigmaStudio snageli Apr 22, 2020 00:00 1 replies Original on forum ↗
Thread Summary

Thread Summary

The user is experiencing issues with the ADAU1466 DSP writing 0's to the 25AA1024-I/SM SPI EEPROM on a custom board, while the same project works on the development board. The final answer suggests checking for a hardware issue, such as mixed-up MOSI_M and MISO_M pins or soldering/PCB trace issues, and recommends scope captures of the SPI transfer for further debugging.
AI Generated Content
Subscribe
snageli Question
Apr 22, 2020 00:00

I have a board I designed that has the ADAU1466 on it as well as the same SPI EEPROM from the ADAU1466 dev board. The SPI EEPROM is the Microchip 25AA1024-I/SM. I am using Sigma Studio v4.5.

I have used the ADAU1466 selfboot feature on the development board many times and quite familiar with how it works. The issue is with the new board I have. From what I am seeing the DSP appears to be writing 0's into the EEPROM and that is all I read back out of the EEPROM. I have been monitoring between the SS_M, MOSI_M, SCLK_M, and MISO_M lines between the dev board and the new board. I can take the dev board with the exact same .dspproj and write, check, and boot from the EEPROM. Go right over to the new board and do the same thing and just looking at the MOSI_M and MISO_M during selfboot and programming it looks to just be writing 0's. It will also fail a check of the memory. Here is what I have verified:

I can indeed load the .dspproj on the DSP and it run's just fine.

The board indeed has the 25AA1024-I/SM

SS_M is in the high state during power-up and reset so it is using the master port in SPI mode.

The Flash HOLD and WP are both high.

I see SCLK, MISO, MOSI, and CS all operational during the write and read processes. Signals have proper rise and fall times and are at the correct levels.

I have the ability to use a dip-switch to change the state of the Seflboot. I can indeed see it read out the EEPROM on selfboot just reads all 0's. When selfboot is not selected it does not try to boot from EEPROM

My process is Link Compile Download -> Self Boot Memory -> Write Latest Compilation through DSP

Here are my EEPROM properties for the memory. I slowed it to 100kHz during this debugging.

Any feedback or thoughts would be appreciated. One thing I am curious about is if the new board has like a newer version of the ADAU1466 die that may be affecting this that would be different from the ADAU1466 dev board.

Thanks,

Shawn

Audio Signal Processors

processors and dsp

SigmaDSP Audio Processors

Processors and Microcontrollers

adau1466

pastedimage1587606992526v1.png
pastedimage1587606992526v1.png
ADIApproved Reply
Apr 29, 2020 00:00

Hello Shawn,

I missed the notification for this post somehow and I'm just seeing it now. Sorry about that! You've done a great job investigating this. You've gone through everything I would usually suggest for debugging self boot issues.

There have not been any changes to the ADAU1466 die, or any other change that might affect self boot.

If I interpret your post correctly and MOSI_M is completely missing (no edges at all), I suspect a hardware issue. Here are some things to check in that situation:

Is it possible that MOSI_M and MISO_M got mixed up somehow in the SigmaDSP or EEPROM footprint?

Can you place an oscilloscope probe directly on the MOSI_M pin (Pin 27) and see if there are edges? If you can see them there, this would indicate something went wrong with soldering or the PCB trace.

It's also possible that I interpreted your post incorrectly. In that case, some scope captures of the SPI transfer during programming and during self boot would be very helpful.

Joshua