You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
广州周立功单片机发展有限公司 Tel (020)38730976 38730916 Fax 38730925 http //www.zlgmcu.com<br />
装载<br />
保存<br />
多路装载<br />
多路保存<br />
另见退出调试状态一节<br />
当 <strong>ARM7TDMI</strong>-S 处理器在一次系统速度访问之后返回调试状态时 扫描链 1 的 bit33 为高电平 bit33<br />
的状态为调试器提供了这样一个信息 即为什么在第一次读取该扫描链时 内核进入调试状态<br />
5.17 退出调试状态<br />
退出调试状态<br />
退出调试状态<br />
退出调试状态包含下列动作<br />
恢复 <strong>ARM7TDMI</strong>-S 处理器的内部状态<br />
下一条指令执行分支指令<br />
返回正常状态<br />
在恢复内部状态之后 必须将一条分支指令装入流水线 详见调试状态中的程序计数器一节<br />
扫描链 1 的 bit33 强制 <strong>ARM7TDMI</strong>-S 处理器与 CLKEN 重新同步 调试指令序列的倒数第二条指令在<br />
bit33 为高时被扫描 调试序列的最后一条指令是分支指令 它在 bit33 为低时被扫描 内核接着将分支指<br />
令装入流水线并且选择 TAP 控制器指定 RESTART 指令<br />
当状态机进入 RUN-TEST/IDLE 状态时 扫描链返回到系统模式 然后 <strong>ARM7TDMI</strong>-S 处理器恢复正常<br />
操作 从存储器中取指 这一延迟 直到状态机处于 RUN-TEST/IDLE 状态为止 使多处理器系统中的其<br />
它器件中的条件建立 但不立即生效 当状态机进入 RUN-TEST/IDLE 状态时 所有处理器同时恢复操作<br />
DBGACK 在 <strong>ARM7TDMI</strong>-S 处理器处于调试状态时通知系统的其余部分 该信息可用于禁止具有实时<br />
特性的外设 例如看门狗定时器 DBGACK 也可屏蔽由调试处理所引起的存储器访问<br />
例如 当 <strong>ARM7TDMI</strong>-S 处理器在一个断点后进入调试状态 指令流水线包含断点指令和其它两个被<br />
预取指的指令 在进入调试状态的入口 流水线被清洗 在退出调试状态时 流水线必须恢复之前的状态<br />
由于调试的处理 对存储器的访问多于正常情况 DBGACK 可禁止任何可能对存储器访问次数敏感的<br />
外设 例如 不管程序运行在调试或者无调试状态下 一个对存储器访问进行计数的外设都必须返回相同<br />
的值 图 5-11 所示为 <strong>ARM7TDMI</strong>-S 处理器在退出调试状态时的状态<br />
CLK<br />
TRANS 内部周期<br />
ADDR[31:0]<br />
DATA[31: 0]<br />
DBGACK<br />
- 52 -<br />
N S S<br />
图 5-11 退出调试的时序<br />
Ab Ab+4 Ab+8<br />
图 5-3 所示为在 DBGACK 变为高电平后的最后一个周期内对存储器的访问 此时周期计数器必须被<br />
禁止 图 5-11 所示为 DBGACK 变为低之后的周期中发生的周期计数器之前没有看到的第一个存储器访问<br />
此时计数器被重新使能<br />
注 从调试状态中产生一个系统速度访问时 <strong>ARM7TDMI</strong>-S 处理器暂时离开调试状态以使 DBGACK<br />
能够变为低电平 如果有外设对存储器访问次数敏感 必须使它们认为 <strong>ARM7TDMI</strong>-S 处理器仍然处于调<br />
试状态 可以编程 EmbeddedICE-RT 控制器寄存器使 DBGACK 强制为高来实现这一点 详见调试状态寄