I am currently working with an Analog Devices Blackfin DSP and trying to work with external SDRAM.
I know that there's an XML file stored under <CrossCore Embedded Studio directory>\System\ArchDef\.
Furthermore you can create a custom XML file (refered to as "custom board support file") which can be set in the "Custom Board Support" tab of a debug configuration.
My questions are:
1) How often are the register settings applied? Possible answers could be: only once when a debug sessions is started, for every debug step, ...? Does the behaviour vary for the kind of register sets (e.g. CGU0* vs. DMC0 registers)?
2) There may be some code which inits the DMC at startup. I guess the XML file may potentially overwrite (and therefore corrupt) valid DMC settings after startup, if they are not identical. Am I correct?
3) If those settings do not match, would the following approach work (assuming I do not want to access the external memory directly from within CCES)? Approach: Copy the default XML file from the ArchDef folder or modify the custom board support file and remove the DMC0* register values, i.e. the DMC settings will not be touched by the debugging process.
4) Where should/can the DMC registers be set? In startup code, a boot loader, the application itself, ...?