ds87c520/ds83c520 非易失存储器/只读存储器 高-速 微控制器
10 的 45
记忆 resources
像 这 8051, 这 ds87c520/ds83c520 使用 三 记忆 areas. 这 总的 记忆 配置 的 这
ds87c520/ds83c520 是 16kb 的 只读存储器, 1kb 的 数据 sram和 256 字节 的 scratchpad 或者 直接 内存.
这 1kb 的 数据 空间 sram 是 读/写 accessible 和 是 记忆 编排. 这个 在-碎片 sram 是
reached 用 这 movx 操作指南. 它 是 不 使用 为executable 记忆. 这 scratchpad 范围 是 256 字节
的 寄存器 编排 内存 和 是 完全同样的 至 这 ram 建立 在 这 80c52. 那里 是 非 conflict 或者 overlap
among 这 256 字节 和 这 1kb 作 它们 使用 different 寻址 模式 和独立的 说明.
运算的 仔细考虑
这 erasure window 的 这 windowed cerdip应当 是 covered 没有 关于 至 这
编写程序/unprogrammed 状态 的 这 非易失存储器. otherwise, 这 设备 将 不 满足 这 交流 和 直流
参数 列表 在 这 数据 薄板.
程序 记忆 进入
在-碎片 只读存储器 begins 在 地址 0000h 和 是 contiguous 通过 3fffh (16kb). exceeding 这
最大 地址 的 在-碎片 rom 将 导致 这 设备 至 进入 止-碎片 记忆. 不管怎样, 这
最大 在-碎片 解码 地址 是 可选择的 用软件 使用 这 romsize 特性. 软件 能
导致 这 ds87c520/ds83c520 至 behave像 一个 设备 和 较少 在-碎片 记忆. 这个 是 beneficial
当 overlapping 外部 记忆, 此类 作 flash, 是 使用. 这 最大 记忆 大小 是 dynamically
能变的. 因此 一个 portion 的 记忆 能 是 移除 从 这 记忆 编排 至 进入 止-碎片 记忆,
和 然后 restored 至 进入 在-碎片 记忆. 在 事实,所有 的 这 在-碎片 记忆 能 是 移除 从 这
记忆 编排 准许 这 全部 64kb 记忆 空间至 是 addressed 从 止-碎片 记忆. 只读存储器
地址 那 是 大 比 这 选择 最大 是 automatically fetched 从 外部 这 部分 通过
端口 0 和 2. 一个 depiction 的 这 只读存储器记忆 编排 是 显示 在 图示 2.
这 romsize 寄存器 是 使用 至 选择 这 最大 在-碎片 解码 地址 为 只读存储器. 位 rms2,
rms1, rms0 有 这 下列的 效应.
RMS2 RMS1 RMS0 最大 在-碎片 只读存储器 地址
0 0 0 0kB
0 0 1 1kb/03ffh
0 1 0 2kb/07ffh
0 1 1 4kb/0fffh
1 0 0 8kb/1fffh
1 0 1 16kb (default)/3fffh
1 1 0 Invalid—reserved
1 1 1 Invalid—reserved
这 重置 default 情况 是 一个 最大 在-碎片 rom 地址 的 16kb. 因此非 action 是 必需的 如果
这个 特性 是 不 使用. 当 accessing 外部 程序 记忆, 这 第一 16kb 将 是 inaccessible.
至 选择 一个 小 有效的 只读存储器 大小, 软件 必须 改变 位 rms2–rms0. altering 这些 位
需要 一个 安排时间-进入 procedure 作 explained 后来的.
小心 应当 是 带去 所以 那 changing 这 romsize 寄存器 做 不 corrupt 程序 执行. 为
例子, 假设 那 这 ds87c520/ds83c520 是 executing 说明 从 内部的 程序
记忆 near 这 12kb boundary (~3000h) 和 那 这romsize 寄存器 是 目前 配置 为 一个
16kb 内部的 程序 空间. 如果 软件 reconfigures 这 romsize 寄存器 至 4kb (0000h–0fffh) 在
这 电流 状态, 这 设备 将 立即 jump 至外部 程序 执行 因为 程序 代号