TI中文支持网
TI专业的中文技术问题搜集分享网站

PROCESSOR-SDK-OMAPL138: 求Changing Cache Configuration During Run-Time(运行中改变cache的配置)相关应用代码

Part Number:PROCESSOR-SDK-OMAPL138

在文档《https://www.ti.com.cn/cn/lit/ug/sprug82a/sprug82a.pdf》的

2.7 Changing Cache Configuration During Run-Time

章节中,提到了运行中改变cache配置的方法,但是里面提供的是一个思路,实际拷贝出来是无法编译的。

请有实现过的专家,给个能编译执行的参考例子,万分感谢!!

主要问题点是:

1、代码运行中获得函数地址、函数长度

2、运行中获得段如.external的地址、段长度

3、DAT_xxx相关函数的实现

笨办法:编译后获得1、2的相关数据,在程序中写数组记录,再重新编译

有聪明的方法吗?

Shine:

可以考虑用#progama伪指令把data/code分配到固定的地址。#pragma CODE_SECTION (symbol , "section name ")https://www.ti.com/lit/ug/sprui04b/sprui04b.pdf

,

Kevin Le82:

分配到固定地址,这个应该没有问题;就是没法办法获得【长度】这个值,难道每次都按最大值移动?

,

Kevin Le82:

有一个想法,有几组函数分别放置到段.func1、.func2、.func3等,但是这些段不会同时被使用;

段内包含多个实现此功能集的相关函数;

如果在L2中分配出L2ram假设128K;L2ram存不下所有的.funcX段,怎样配置使得.funcX这些段的起始都是L2ram段?

程序中根据用户选择功能,动态加载.funX段到L2ram空间去。

文档中的例子的cmd文件无法用于这个想法

,

Shine:

cmd文件里有union伪指令,可以让几个函数共用一段run address。请参考下面的汇编手册。8.5.7 Using GROUP and UNION Statementshttps://www.ti.com/lit/ug/sprui03b/sprui03b.pdf

,

Kevin Le82:

粗略的看了这个文档,这个文档有所有的解答;实现起来有点难度。一时半会还不好做,对于使用c++开发的面向对象的程序

,

Shine:

是的,这种用法用得不多。

,

Kevin Le82:

Shine,非常感谢。各种文档太多了,现在开发都是用到什么有问题了再寻求帮助;幸好你们都能及时回复和提供参考文档,不然就是大海捞针了。

,

Shine:

不客气~ 随时欢迎到论坛上提问,大家互相学习!

赞(0)
未经允许不得转载:TI中文支持网 » PROCESSOR-SDK-OMAPL138: 求Changing Cache Configuration During Run-Time(运行中改变cache的配置)相关应用代码
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1