This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Part Number: TDA3MV
We have an ambiguity in the datasheet, TI header and Memory Map view of HW registers for AVS on TDA3
In TI header file #include "hw_ctrl_core.h", we have the register name as mentioned in the datasheet
#define CTRL_CORE_STD_FUSE_OPP_VMIN_DSPEVE_2 (0x4e0U) but the offset is different.
The memory map view shows a different register name altogether with the same physical address as mentioned in datasheet.
CTRL_MODULE_CORE_CTRL_CORE_STD_FUSE_OPP_VMIN_DSPEVE_2 = 0x420025E0;
The same is for all the other registers.
So should we read the registers with memory address from the memory map view of the TDA3 HW
CTRL_MODULE_CORE_CTRL_CORE_STD_FUSE_OPP_VMIN_DSPEVE_2 = 0x420025E0; and
CTRL_MODULE_CORE_CTRL_CORE_STD_FUSE_OPP_VMIN_CORE_2 = 0x420025F4;
Values Read from these registers
By datasheet you mean TRM (Technical Reference Manual) right? Anyway, in the header file you are stating, looks like the base address for all registers is 0x4A00 2100 while in TRM the offset is 0x4A00 2000. Then when you make the calculations, you will see that the same register appears on that address for both TRM/Memory View and header file.
Bottom line, it should be the same register everywhere whether you look at TRM, Memory View, or source code header files.
Note1, the memory view just adds a prefix for the instance "CTRL_MODULE_CORE", the root register name is the same "CTRL_MODULE_CORE_*CTRL_CORE_STD_FUSE_OPP_VMIN_DSPEVE_2*"
Note2, there is also a register view(slightly different from Memory View) in CCS, there you can also clearly see the addresses that match TRM.
Be sure to read the Forum Guidelines and FAQ.
We are glad that we were able to resolve this issue, and will now proceed to close this thread.
If you have further questions related to this thread, you may click "Ask a related question" below. The newly created question will be automatically linked to this question.
Yep, that was it, here is the #define I found in the soc.h
#define SOC_CTRL_MODULE_CORE_CORE_REGISTERS_BASE (0x4a002100U)
So all addresses match in the end.
In reply to Alex Bashkov:
Thanks for the reply. The naming of the registers in the hw_ctrl_core.h caused the ambiguity.
This makes everything clear now.Note1, the memory view just adds a prefix for the instance "CTRL_MODULE_CORE", the root register name is the same "CTRL_MODULE_CORE_*CTRL_CORE_STD_FUSE_OPP_VMIN_DSPEVE_2*"
In reply to Richard Lobo:
OK, glad it's clear now. If you don't have additional related questions, would you mind marking this post verified to close this issue?
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.