本帖最后由 dirtwillfly 于 2016-4-19 20:06 编辑
并行启动模式分析
在上述各种启动模式中,并行启动模式实现简单,速度较快,在实 际系统中应用也最为广泛
当检测完毕串行EEPROM启动模式无效后,Bootloader会转入 8bit/16bit并行启动模式检测。
Bootloader首先从I/O空间地址为0FFFFh处读取一个字的数据,并将 该数据作为启动表在数据空间的起始地址。
启动表起始地址处应包含用于判断8bit/16bit启动模式的关键字:
8bit启动模式关键字为08AAh,放在两个连续的8bit空间;
16bit启动模式关键字为10AAh。
如果Bootloader没有在启动表的起始地址处得到上述关键字,则转 到数据空间0FFFFh处再去读取一个字的数据,再将该数据作为启动表在 数据空间的起始地址,再继续尝试通过该起始地址去读取上述关键字。
因为Bootloader在读取启动表第一个字之前需要检测两个位置,通 过0FFFFh处得到该起始地址的低8bit,通过0FFFEh处得到其高8bit。
根据Bootloader这个特性,启动表与其起始地址烧制到单片EEPROM 中
启动表起始地址为16bit寻址宽度,因此EEPROM可译码在C2000数据 空间从04000h至0FFFFh任一地址范围。
希望屏蔽并行启动模式,可将C2000的D0引脚弱上拉为逻辑1
如果Bootloader在上述两个地方都没检测到有效关键字,则继续检 测下一种模式(标准串口启动)。
|