ADAU1401: Saving more than 8 lookup tables within SigmaStudio
I have a need to have more than 8 lookup tables' index stored into memory. Since the register limit of ADAU1401 is 8 , how can I save or more efficiently store within the register area. Since the tables only contain between 15 & 35 index values each, can multiple index lookups be stored within a single or 2 registers.
Thanks
Audio Signal Processors
adau1401
SigmaDSP Audio Processors
Are you talking about saving values in interface register to be recalled during the next selfboot? This is a limit set in the ADAU1401 hardware, so it can't be expanded beyond the 8 available interface registers. Each of these registers can only be used to save and recall a single value, so you can't use one register to store multiple values. Even though you may only be using a few of the bits to index your settings, this data is saved as a 28-bit parameter like all other parameters.
If you need the ability to control, save, and recall more than the 8 parameters that can be saved using the interface registers, you may want to consider using a microcontroller in your design to boot and control the ADAU1401. The selfboot feature isn't intended to completely replace the flexibility of control that a micro will give you. It sounds like you're running up against the limits of what the ADAU1401 can do in selfboot mode.
Yes. Any way to value mask the a small 4 or 5 bit data then add them
together and save into a single register ?
While reviewing compiler output.txt , I also noticed I already consumed
722 instructions out of 1024. I'm not finished with the features aII I
want and only have 300 or so instructs left. Any suggestions to make more
efficient ?
I still have to add 4 channels of delay, a 5th LF output stage and high
pass filters for 4 channels and lowpass for the sub. Then add a licensed
function.
Is this too much to expect from 1401 ?
Thanks
#####################################################################################
This e-mail message has been scanned for Viruses and Content and cleared
by MailMarshal
The interface registers are special-purpose registers that will only write their values back to a single parameter RAM address, so I don't think that there's a way that you could mask multiple values into one word to save extra data.
If you are using a lot of filters, a quick way to reclaim some instructions is by changing some of your filters from double to single precision. Double precision will typically only make much of a difference for high-Q or very low frequency filters. You could probably safely implement all of your filters with center frequencies above 500-1000 Hz in single precision and not hear a difference. A single precision filter uses 6 instructions, while a double precision filter uses 9.
This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.
Thank you,
EZ Admin
Please log in to reply.