NXP JN5189 内存分析工具 Gawk

Posted Calvin Chan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NXP JN5189 内存分析工具 Gawk相关的知识,希望对你有一定的参考价值。

一、Gawk

        gawk 是 GNU 的 awk,具有很强的文本处理功能,简洁优美。

        awk 是一个程式语言,对于文本处理具有很强的功能。对于文字档案里的资料做修改、比对、抽取等的处理,awk 能够以很短的程式轻易地完成。

        awk 能够依照使用者的定义格式来分解输入,也可依照使用者定义的格式来打印输出。

        gawk 的主要功能是针对档案的每一行(line)搜寻指定的 patterns。当一行里有符合指定的 patterns,gawk 就会在此一行执行被指定的 actions。 gawk 依此方式处理输入档案的每一行直到输入档案结束

        在 MCUXpresso 中安装 Gawk

二、Application Note 中 Gawk 的使用

这里以 JN-AN-1243 为例

1、配置 gawk 工具

打开 Makefile 文件,配置工具路径

2、配置 awk 文件


3、查看编译工程输出结果

文件输出目录



.html 文件就是 gawk 分析 .map 文件输出的内存分析文件

三、查看内存分析结果

打开编译输出的 .html 文件

一些单元格的颜色编码如下:

黄色
        表示意外的开始或结束地址。这些通常是由编译器覆盖相同数据以减少内存使用量引起的,并且是有意的。这在只读(rodata)符号中最常见,这些符号通常是存储在闪存中的字符串。由于此文件列出了所有分配的符号,因此计算的总数可能会超出预期值。
红色
        表示意外的总大小或百分比。这些通常是编译器覆盖相同数据的连锁反应,并不一定表示存在问题。

1、Memories

        JN5189 具有 640 KB 嵌入式闪存(Flash640)和 152 KB RAM (RAM0+RAM1)存储器。

        主 SRAM 由总共 152 KB 的片上静态 RAM 存储器组成。 主 SRAM 实现为多个 SRAM 实例,以便在需要较少 SRAM(2×4 KB 实例、2×8 KB 实例和 4×16 KB 实例)时对电源使用进行更多控制。 每个 SRAM 都有单独的时钟控制和电源开关。

2、RAM0

RAM0 有 Banks、Sections、Files、Symbols、Folders、Tree、Map 的内容,由于太多只截一部分内容。

RAM0 分为不同大小的物理内存组。 当 RAM 保持休眠时,将根据链接器配置保留不同的 bank。 在睡眠期间保留更多 RAM 会消耗更多功率。



3、Flash640

RAM0 有 Banks、Sections、Files、Symbols、Folders、Tree、Map 的内容,由于太多只截一部分内容。


四、附 JN5189 System memory map

以上是关于NXP JN5189 内存分析工具 Gawk的主要内容,如果未能解决你的问题,请参考以下文章

NXP JN5189 ZigBee 3.0开发环境搭建(续)

NXP JN5189 ZigBee 3.0开发环境搭建

在 BeyondStudio for NXP 使用 Gawk(for JN5169)

在 BeyondStudio for NXP 使用 Gawk(for JN5169)

在 BeyondStudio for NXP 使用 Gawk(for JN5169)

JN5189使用SDK 2.6.4编译JN-AN-1243/1246等项目报undefined reference to `BOARD_CpuClockUpdate32MhzFro`错误