TKScope仿真/烧录BootLoader方法

发布时间:2010-10-9 10:26    发布者:eetech
关键词: bootloader , TKScope , 仿真 , 烧录
ARM9内核的开发中,烧录和仿真BootLoader程序一直是研发工程师头痛的事情。原因是没有高效的BootLoader下载程序和模仿BootLoader加载的仿真。因此整个BootLoader的调试开发效率不高。

TKScope支持ARM芯片不同形式的BootLoader仿真/烧录。例如,NXP公司LPC3000系列芯片可选择从不同的外部设备启动:NAND Flash、SPI存储器、USB、UART或静态存储器。其中,NAND Flash、SPI存储器启动方法比较常用。本文以LPC3000系列芯片为例,详细讲解TK-Scope仿真/烧录NAND Flash、SPI存储器的启动方法。LPC3000系列芯片NAND Flash、SPI存储器启动原理是一样的:芯片上电复位后,通过片内BootLoader把外部存储设备中的程序装载到内部的RAM中执行。

1 实现NAND Flash启动仿真/烧录方法

TKScope仿真之前需要正确地设置工作参数,用户可参考使用指南,这里只强调需要特别注意的两项设置。

①[主要设置]选项。如图1所示,要特别注意的是复位恢复时间的设置。图1中的复位恢复时间就是Boot-Loader把NAND Flash中的程序装载到芯片内部RAM中的时间。时间值由用户根据程序的大小来设定。



②[程序烧写]选项。如图2所示,要特别注意的是Flash算法的选择。LPC3000系列芯片内部无Flash,所以编程算法中没有Flash算法文件。选择NAND Flash启动,需要添加外部NAND Flash算法文件。



单击[添加算法]按钮,打开TKScope驱动安装目录下的ExtFlash文件夹,找到LPC3000系列芯片NANDFlash启动算法文件(路径为 TKScope\configuration\Ext-Flash),如图3所示。可以看到NAND Flash算法文件有2种,用户需要根据实际使用的NAND Flash类型来选择。其中:LPC3000_NAND_2KBytesPage.flm为大页NAND Flash算法文件;LPC3000_NAND_512BytesPage.flm为小页NAND Flash算法文件。NAND Flash算法文件添加完毕后,界面如图4所示。注意:此时,Flash起始地址默认为0x80000000,需要手动修改为0x00000000。





程序烧写的最终界面如图5所示,NAND Flash起始地址为Ox00000000。注意:[编程Flash]、[验证Flash]一定要选中,否则程序无法下载到Flash中。同时,选择[扇区擦除]选项。至此,TKScope仿真器工作参数设置完毕,可以开始进行仿真。



Keil RealView MDK软件为例,点击XX进入仿真状态,进入之后点击XX退出;然后,再次点击XX进入到仿真状态,此时就可以正确地进行仿真调试了。也就是说,TK- Scope仿真NAND Flash启动,需要连续2次进入仿真状态,第2次进入仿真状态才可正常、正确地调试。这种操作方法是由LPC3000系列芯片NAND Flash启动原理决定的:第1次进入仿真,主要任务是下载烧录程序代码到NAND Flash中,可以看到图6所示的Flash编程提示框;第2次进入仿真,主要任务是将LPC3000系列芯片复位,BootLoader把NAND Flask中的程序装载到内部RAM中。



用户可以根据实际仿真需求,采用全速、单步、设置断点等多种仿真方式来调试程序;同时,可以打开相应的窗口观察仿真结果。仿真界面如图7所示。



2 实现SPI存储器启动仿真/烧录方法

TKScope实现SPI存储器启动的仿真步骤及设置方法与NAND Flash启动是一样的。这里只强调选择Flash算法的不同之处。

用户打开TKScope驱动安装目录下的ExtFlash文件夹,找到LPC3000系列芯片SPI存储器启动外部Flash算法文件(路径为 TKScope\configuration\ExtFlash),如图8所示。SPI接口的Flash存储器有几种类型,TKScope仿真器会陆续提供相应的算法文件,存放在图8所示的Ext-Flash文件夹内。本文所用Flash为SST25VF512,故选择 LPC3000_SST25xFxxx.flm。



同样,TKScope仿真SPI存储器启动,也需要连续2次进入到仿真状态,第2次进入仿真状态才可正常、正确地调试。这种操作方法同样是由 LPC3000系列芯片SPI存储器启动原理决定的:第1次进入仿真,主要任务是下载烧录程序代码到SPI存储器中,可以看到Flash编程提示框;第2 次进入仿真,主要任务是将LPC3000系列芯片复位,BootLoader把SPI存储器中的程序装载到内部RAM中。

TKScope同样可以实现其他公司芯片的BootLoader仿真。例如,Samsung公司的S3C2410/S3C2440芯片NAND Flash启动,TKScope完全可以仿真,实现原理和操作方法与LPC3000系列基本相同。
本文地址:https://www.eechina.com/thread-30985-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表