此帖出自DSP 与 ARM 处理器论坛
最新回复
等待状态发生器控制寄存器(WSGR)
说明:0=总读为0;R=可读;W=可写;破折号后的值为WSGR的复位值。
第15~12位:保留位,总是为0。
第11~9位:ISWS-I/O空间待状态位,决定用于片外I/O空间的读/写待状态数(0~7).
第8~6位:DSWS-数据空间等待状态位,决定用于片外数据空间的读/写等待状态数。
第5~3位:PSUWS-高端程序空等待状态位,决定用于片外高端程序空间的读/写等待状态数。
第2~0位:PSLWS-低端程序空间等待状态位,决定用于片外低端程序空间的读/写等待状态数。
在具体应用中,程序员可根据实际用到的片外资源灵活调整WSGR相关位的值。
为实现TMS320F206与慢速外部逻辑和存储器的接口,等待状态是十分必要的。当CPU对慢速存储器或端口进行读写时,通过增加等待状态,可延长CPU等待外部存储器或外部I/O端口的时间以便更好地响应。为此,CPU为每个待状态提供了1个额外的周期。为避免总线冲突,所有向外部地址的写操作均需要至少2个周期。
在程序的调试过程中,我们常用设置断点的方法判断局部功能模块能否实现。若发现程序在尚未到达断点时就随机地停止运行,或仿真窗口出现“Time out waiting for device”红色告警字样的,可优先考虑调整待状态发生器控制寄存器(WSGR)的设置。
许多初学者在学习例程时发现其中的WSGR值均设为0000h(零等待状态),就误以为在任何情况下都可行,这是很不可取的。笔者在初次调试大型程序时,曾因为这个问题耗时多日后来试着将WSGR值由0000h改为0002h就顺利解决了(将片外低端程序空间的读/写等状态数设为2)。
[ 本帖最后由 xinzai 于 2008-6-12 14:40 编辑 ]
详情
回复
发表于 2008-6-12 14:39
| ||
|
||
此帖出自DSP 与 ARM 处理器论坛
| ||
|
||
EEWorld Datasheet 技术支持