january 25, 2005 s29ws-n_00_g0
37
进步 信息
7.5.4 碎片 擦掉 command sequence
碎片 擦掉 是 一个 六-总线 循环 运作 作 表明 用表格 12.1. 这些 commands invoke 这
embedded 擦掉 algorithm, 这个做 不 需要 这 系统 至preprogram 较早的 至 擦掉. 这
embedded 擦掉 algorithm 自动地cally preprograms 和 核实 这 全部 记忆 为 一个 所有
零 数据 模式 较早的 至 electrical 擦掉. 之后 一个 successful 碎片 擦掉, 所有 locations 的 这 碎片
包含 ffffh. 这 系统 是 不 必需的 至 provide 任何 控制 或者 timings 在 这些 oper-
ations. 这 “command definition” 部分 在 这 附录 显示 这 地址 和 数据
(所需的)东西 为 这 碎片擦掉 command sequence.
当 这 embedded 擦掉 algorithm 是 完全,那 bank returns 至 这 读 模式 和 ad-
dresses 是 非 变长 latched.这 系统 能 决定 这 stat美国 的 这 擦掉 运作 用
使用 dq7 或者 dq6/dq2. 谈及 至 “write 运作 status” 为 信息 在 这些 状态 位.
任何 commands 写 在 这 碎片 擦掉 运作 是 ignored. 不管怎样, 便条 那 一个 hard-
ware 重置 立即 terminates 这 擦掉 operation. 如果 那 occurs,这 碎片 擦掉 command
sequence 应当 是 reinitiated once 那 bank has returned 至 读 排列 数据, 至 确保 数据
integrity.
这 下列的 是 一个 c 源 代号 例子 的 使用 这 碎片 擦掉 函数. 谈及 至 这
span-
sion 低 水平的 驱动器 用户’s 手册
(有 在 www.amd.com 和 www.fujitsu.com) 为
一般 信息 在 spansion flash memory 软件 开发 指导原则.
/* 例子: 碎片 擦掉 command */
/* 便条: 不能 是 suspended */
*( (uint16 *)根基_地址 + 0x555 ) = 0x00aa; /* 写 unlock 循环 1 */
*( (uint16 *)根基_地址 + 0x2aa ) = 0x0055; /* 写 unlock 循环 2 */
*( (uint16 *)根基_地址 + 0x555 ) = 0x0080; /* 写 建制 command */
*( (uint16 *)根基_地址 + 0x555 ) = 0x00aa; /* 写 额外的 unlock 循环 1 */
*( (uint16 *)根基_地址 + 0x2aa ) = 0x0055; /* 写 额外的 unlock 循环 2 */
*( (uint16 *)根基_地址 + 0x000 ) = 0x0010; /* 写 碎片 擦掉 command */
7.5.5 擦掉 suspend/擦掉 重新开始 commands
当 这 擦掉 suspend command 是 写 在这 sector 擦掉 时间-输出, 这 设备 imme-
diately terminates 这 时间-输出 时期 和 suspends 这 擦掉 运作. 这 擦掉 suspend
command 准许 这 系统 至 中断 一个 sector擦掉 运作 和 然后 读 数据 从, 或者
程序 数据 至, 任何 sector 不 selected 为 erasure. 这 bank 一个ddress 是 必需的 当 writing
这个 command. 这个 command 是 有效的 仅有的 在 这 sector 擦掉 运作, 包含 这 最小值-
imum t
SEA
时间-输出 时期 在 这 sector erase command sequence. 这 擦掉 suspend
command 是 ignored 如果 写 在 这 碎片 擦掉 运作.
当 这 擦掉 suspend comm和 是 写 之后 这 t
SEA
时间-输出 时期 有 expired 和 dur-
ing 这 sector 擦掉 运作, the 设备 需要 一个 最大 的 t
ESL
(擦掉 suspend latency) 至
suspend 这 擦掉 运作.
软件 功能 和 样本 代号
表格 7.15. 碎片 擦掉
(lld 函数 = lld_chiperasecmd)
循环 描述 运作 字节 地址 文字 地址 数据
1 Unlock 写 根基 + aaah 根基 + 555h 00AAh
2 Unlock 写 根基 + 554h 根基 + 2aah 0055h
3 建制 command 写 根基 + aaah 根基 + 555h 0080h
4 Unlock 写 根基 + aaah 根基 + 555h 00AAh
5 Unlock 写 根基 + 554h 根基 + 2aah 0055h
6 碎片 擦掉 command 写 根基 + aaah 根基 + 555h 0010h