ARM中常驻RAM的程序设计方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
维普资讯
A 中 常驻 R R M AM 的程 序设 计方法
■ 华 东 交 通 大 学 梁 占 峰 杨 树 军
引 言
过 去 由 于微 控 制 器 的 寻 址 空 间 以及 R AM 的 价 格 和
2 控 制 目标 文 件 中段 的规 则
#p amaam sc o sr— y e E 一 ] ” a ”] rg r et n[ot tp] E [ nme ] i
[ sr_ y e ” a ” … … ,ot tp 一 n me ]
p e ms to. ( 稿 用) ar e ec o投 专 p@ n. r n n
储区域 。
ARM 中 常 驻
R AM 的 程 序 设 计 方 法 。 通 过 在

AT9 M5 8 0 上 的 运 行 结 果 , 出 了采 用 此 方 法 后 系 统 1 50A 给
性能提高的效果 。
③ 在 C 语 言 的 源 文 件 中 使 用 #p a maam et n rg r sci o
中 C语 言 开 发 环 境 下 生 成 指 定 段 的方 法 。 在 C语 言 的 源 文 件 中控 制 段 的语 法 规 则 是 :
① 在 源 文 件 的 控 制 目标 文 件 中 , 成 代 码 段 和 数 生
据段 ;
② 编写 分 散 加 载 描 述 文 件 , 用 分 散 加 载 机 制 完 成 利 目标 文 件 链 接 过 程 , 到 最 终 的二 进 制 文 件 。 得
而 缩 短 了 微 控 制 器 读 取 指 令 和 数 据 的 时 间 。 ARM 中 实
现 常 驻 RAM 程 序 包 括 2个 现 方 法 后 可 知 , 3种 方 法 比较 第 适 合 于 大 中型 项 目 的 开 发 过 程 。本 文 只 介 绍 第 3种 方 法
1 常驻 R M 程 序 的工 作 原 理 A
常 驻 RAM 程 序 就 是 当 系 统 通 电运 行 后 , 导 程 序 将 引 部 分 程 序 和 数 据 加 载 到 相 应 的 RAM 区域 , 控 制 器 直 接 微
从 RAM 中读 取 该 部 分 指 令 和 数 据 , 不 再 访 问 R 而 OM , 从
不同存储器区域运行结果对比main函数revpin函数常量数组引脚波形序号执行区域执行区域加载位置变化周期msflashflashflash4264sdramramsdram7760sdramramram5880本文介绍的常驻ram的程序设计方法不仅可以按需将目标代码加载到对应存储器区域中缩短了微控制器读取指令的时间而且可以将变量和常量加载到相应的存储器区域中缩短了数据的存取时间
强 。At l 司 的 AR me 公 M7微 控 制 器 AT9 M5 8 0 的 指 1 50 A 令 执 行 速 度 可 以达 到 3 0 MHz以上 , 访 问 F a h时 , 插 在 ls 要
段 (et n sci ) o
变量段
常 量 段 ( d t) r aa o
入 3个 等 待 周 期 和 2 个 数 据 浮 空 输 出 周 期 ; 访 问 而 S RAM 时 , 无 需 插 入 等 待 周 期 和数 据 浮 空 输 出 周 期 。 D 则
于 对 项 目的维 护 。
种 方 法 所 需 要 的 成 本 和 技 术 难 度 都 远 远 大 于 后 一 种 本 文 通 过 实 例 , 细 地 阐 述 了 如 何 用 ADS . 详 1 2实 现
方法 。
② 在 ADS中使 用 一O选 项 , 文 件 经 过 编 译 后 生 成 Z 源 的 目标 文 件 中 , 个 函数 生 成 相 对 应 的 段 。其 优 点 是 实 现 每 最 为 简 单 ; 点 是 不 能 控 制 常 量 表 和 变 量 加 载 到 指 定 的存 缺
或 在 汇 编 语 言 中使 用 a e 定 段 。其 优 点 是 可 以 自 由控 ra指 制 一 个 目标 文 件 中段 的 数 量 和 名 称 , 以为 指 定 的 常 量 或 可 变 量 生 成 常 量 段 或 变 量 段 , 加 载 到 指 定 的存 储 区 域 的 指 并
定地址 。
使 用 ADS开 发 工 具 生 成 的 目标 文 件 中包 含 的段 的种
类 如 图 1所 示 。 由 于分 散 加 载 机 制 的最 小 加 载 单 位 是 段 ,
容 量 的 限 制 , 统 运 行 后 , 控 制 器 不 得 不 频 繁 地 访 问 系 微
R OM 读取 指令 。众 所 周 知 , RAM 的访 问 速 度 比 R OM 快 几 倍 到 十几 倍 。例 如 , me 公 司 的 AT4 B 6 F a h At l 9 V1 2( ls )
的 访 问 时 间 是 7 s 三 星 公 司 的 K6 0 6 S 0n , R4 1 ( DRAM ) 访 的
这 就 要 求 在 源文 件 中对 要 加 载 到 不 同 存 储 器 区域 中 的 代 码 或 数 据 生 成 不 同 的段 。
代码段 (o e cd ) 数据段
问 时 间只 需 1 s 右 , 者 相 差 近 7倍 。 随 着 ARM 微 0n 左 二 控 制 器 的 出现 , 控 制 器 的运 行 速 度 和 寻 址 能 力 都 有 所 增 微
工 作 效 率 。但 是 由于 ROM 的 结 构 和 工 艺 的 原 因 , 用 前 采

① 根据 加 载 区 域 的 不 同划 分 源 文 件 , 文 件 经 过 编 源 译 后 生 成 目标 文 件 , 散 加 载 机 制 以 目标 文 件 的 默 认 段 名 分 进 行 加 载 。其 优 点 是 实 现 较 为 简 单 , 合 于 小 型 开 发 项 目 适 使 用 ; 点 是 破 坏 了项 目 中文 件 结 构 模 块 化 的原则 , 利 缺 不
由 此 可见 , 控 制 器 和 S AM 的访 问速 度 十分 接 近 。 微 DR
图 1 目标 文 件 中 段 的 分类
常用 的控 制 方 法有 以下 几 种 :
通 过 以上 分 析 可 知 , 高 ROM 的访 问 速 度 或 者 将 程 提 序加载到 R AM 中运 行 , 种 方 法 都 可 以提 高 微 控 制 器 的 两
相关文档
最新文档