ADAU1701 NOP instruction 0x0000000001 vs 0xFFFFFFFFFF
Sigma Studio always tells me there are 5120 eight bit program bytes (1024 forty bit instructions) when clearly many are simply NOP's. (in my case more then 1/2 are NOP's.)
So, in order to conserve space in my uC internal FLASH (where I am storing the ADAU code and parameters,)...
Question #1:
Can I use the first instruction that encodes as 0x0000000001 to reliably detect the end of the schematic? Or will I have to back examine the Sigma Studio hex file looking for the first non 0x0000000001 instruction word?
Knowing the end of the actual program, I can program only those words that do work into my uC FLASH and fill the rest of the ADAU code with NOP's
Question #2:
Do any instructions encode to all f's? (i.e. 0xFFFFFFFFFF)
Knowing this will make it easier for the algorithm in the uC to detect the end of the ADAU code.
This will have two advantages...
#1), The uC erased flash is all 1's. If I don't have to program all 1024 words each time, I can save FLASH burning time each development cycle as the debugger doesn't waste time burning 1's.
#2, The unused FLASH in the uC can be used for other things.
Question #3:
Similarly, is there a reliable way to tell the end of the parameter RAM (other then looking through the *_PARAMS.h file looking for the largest address used?
I have already written a small conversion program that converts the Sigma Studio output into something my uC can use. I can easily change it to stop at the first NOP.
Thanks,
Mark.
Audio Signal Processors
NOP
program
SigmaDSP Audio Processors
adau1701
Please log in to reply.