您好!
我们使用 XTDA3SXXBDABFQ1已经有一段时间了、但现在我们需要增加 SBL 的大小、它的大小大于256KB。 在 TDA3X 系列中查找此产品的任何文档时遇到问题。
当读取 CTRL_WKUP_STD_FUSE_DIE_ID_2寄存器时、我接收到该寄存器。 0x98 BD 35 06。 从文档中可以看到、由于0x98、它是 XTDA3SX。
此部件是否具有256KB RAM 或512KB RAM?
在下面、您可以看到 SBL 使用的系统内存映射。 为了使其正常工作、我不能超出地址0x00340000、因此我需要一个小于256KB 的 SBL。 在下面的配置中、我已将 OCMCRAM1_3配置为大于256kB、因为我的新引导加载程序大于256kB。
谢谢
-stack 0x1000 /*软件栈大小*/
堆 0x1000 /*堆区域大小*/
/*指定系统内存映射*/
存储器
{
IRAM_MEM: org = 0x00000000 len = 0x4000 // IPURAM 映射到0x55020000 */
OCMCRAM1_0: org = 0x00300000 len = 0x00000100 // OCMC RAM 映射到0x40300000 */
OCMCRAM1_1: org = 0x00300100 len = 0x00000100 // OCMC RAM 映射到0x40300100 */
OCMCRAM1_2: org = 0x40300200 len = 0x00000100 // OCMC RAM */
OCMCRAM1_4: org = 0x40300300 len = 0x00000100 // OCMC RAM */
OCMCRAM1_INT: org = 0x00300400 len = 0x00000400
OCMCRAM1_VTBL:org = 0x00300800 len = 0x00000800
OCMCRAM1_3: org = 0x00301000 len = (0x00050000 - 16 * 0x00000100)// OCMC RAM 映射到0x40300400 */
}
/*指定段分配到内存中*/
部分
{
.intvecs :load > OCMCRAM1_INT
.intc_text :load > OCMCRAM1_INT
.TI.noinit :加载> OCMCRAM1_VTBL
.SBL_init :LOAD > OCMCRAM1_0
ipu1_init:LOAD > OCMCRAM1_1
init :load > OCMCRAM1_3
.text :load > OCMCRAM1_3 /* code */
.data :load > OCMCRAM1_3 //初始化全局和静态变量*/
.const :load > OCMCRAM1_3 /*全局常量*/
.cinit :LOAD > OCMCRAM1_3
.bss :load > OCMCRAM1_3 //未初始化或零初始化*/
/*全局和静态变量*/
RUN_START (bssStart)
run_end (bssEnd)
.stack :load > OCMCRAM1_3 /*软件系统堆栈*/
RUN_START (stackStart)
RUN_END (stackEnd)
plt :LOAD > OCMCRAM1_3
.sysmem :load > OCMCRAM1_3
Img_HDR :LOAD > OCMCRAM1_2
img_hdr1 :LOAD > OCMCRAM1_4
tesoc_img :load > OCMCRAM1_3
}