CN103677885B - 一种arm flash简易程序烧写的方法 - Google Patents
一种arm flash简易程序烧写的方法 Download PDFInfo
- Publication number
- CN103677885B CN103677885B CN201210356963.6A CN201210356963A CN103677885B CN 103677885 B CN103677885 B CN 103677885B CN 201210356963 A CN201210356963 A CN 201210356963A CN 103677885 B CN103677885 B CN 103677885B
- Authority
- CN
- China
- Prior art keywords
- programming
- program
- target board
- flash
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及一种ARM FLASH简易程序烧写的方法,J‑LINK仿真器将PC端与NAND目标板进行连接,将制作好烧写程序的U盘连接到NAND目标板上,步骤如下:1)PC端将初始化程序下载至目标板的CPU片内的SRAM中,初始化目标板的CPU片外的SDRAM内存;2)PC端将加载程序下载至目标板的CPU片外的SDRAM中,自动读取目标文件,完成烧写。PC与J‑LINK可以用于另一套目标板的烧写工作,节约成本,提高了生产维护效率。程序的烧写由板卡自动完成,不再利用J‑LINK直接对目标板进行烧写,解决了非主流处理不支持利用J‑LINK直接烧写的缺点,通用性大大增强,具有极大的推广意义与价值。
Description
技术领域
本发明涉及一种程序烧写固化到存储介质的领域,更具体地说,涉及一种ARMFLASH简易程序烧写的方法。
背景技术
NAND FLASH以其大存储量和低成本特点广泛替代了NOR FLASH,然而ARM9板载NAND FLASH程序的烧写非常困难。
目前,大多数烧写程序到NAND FLASH的方法主要有以下三种:
第一种是通过H-JTAG工具把需要烧写的固件直接固化到NAND FLASH中;
第二种是运行开发套件如(ADS1.2)软件,通过AXD调试接口把程序直接固化到NANDFLASH中;
第三种是通过NAND FLASH专业烧写工具将购买的芯片固化程序后,再焊接使用。
以上三种方法都存在一定的缺点:
第一种方法的缺点是:(1)烧写速度慢,特别是烧写大文件时速度更慢;(2)另外由于NAND FLASH在出厂是有部分坏块,而H-JTAG工具不能检测坏块,从而导致烧写不成功。
第二种方法的缺点是:(1)烧写速度慢,特别是烧写大文件时速度更慢;(2)另外由于NAND FLASH在出厂是有部分坏块,不能检测坏块,从而导致烧写不成功;(3)需要生产人员熟练使用该软件,而且操作繁琐,效率低。
第三种方法的缺点是:购买芯片的成本较高。
中国发明专利申请201210132951.5公开了一种基于J-LINK间接烧写程序到NANDFLASH的方法,包括如下步骤:(1)、根据嵌入式主板机的硬件特性编写一个特制程序,所述特制程序具有NAND FLASH读写命令,并可以与计算机进行通讯;(2)、编写一个J-LINK软件批处理命令脚本;(3)、使用J-LINK软件将所述的特制程序下载到嵌入式主板机内存中运行;(4)、嵌入式主板机与计算机进行信息交互;(5)、通过命令将目标文件从计算机下载至嵌入式主板机内存;(6)、通过所述特制程序中的NAND FLASH读写命令,将嵌入式主板机内存中的目标文件固化到NAND FLASH中。
与现有技术相比,上述发明提供的基于J-LINK间接烧写程序到NAND FLASH的方法,不仅速度加快、操作简单、成本低,而且该方法能够识别NAND FLASH坏块,从而避开坏块达到稳定烧写的目的。
但是,对于主流的处理器,J-LINK对其烧写有直接的支持,但烧写速度很慢,且每个板载NAND烧写过程至始至终都需要独享一套PC+J-LINK与之交互,该方式严重影响了生产维护效率。对于非主流的处理器,J-LINK不支持直接对其NAND进行烧写。
发明内容
本发明的目的在于克服现有技术的不足,提供一种烧写速度快、对PC与J-LINK的依赖程度低、生产效率高、几乎适用于所有处理器的通用的ARM FLASH简易程序烧写的方法。
本发明的技术方案如下:
一种ARM FLASH简易程序烧写的方法,J-LINK仿真器将PC端与NAND目标板进行连接,将制作好烧写程序的U盘连接到NAND目标板上,步骤如下:
1)PC端将初始化程序下载至目标板的CPU片内的SRAM中,初始化目标板的CPU片外的SDRAM内存;
2)PC端将加载程序下载至目标板的CPU片外的SDRAM中,自动读取目标文件,完成烧写。
作为优选,步骤1)具体为:
1.1)PC端通过J-LINK软件命令行RCE/WCE写ARM9体系结构处理器的R15寄存器,使能ITCM;
1.2)将初始化程序下载至目标板的CPU片内的SRAM中;
1.3)运行初始化程序,初始化CPU时钟,然后初始化目标板的CPU片外的SDRAM内存。
作为优选,步骤2)中,PC端将加载程序下载至目标板的CPU片内的SRAM后,目标板脱离PC端的控制。
作为优选,步骤2)中所述的加载程序的流程如下:
2.1)初始化***定时器、通用异步接收/发送装置;
2.2)初始化USB子***;
2.3)初始化FAT32子***;
2.4)初始化NAND FLASH;
2.5)读取U盘中的配置文件;
2.6)读取U盘中的目标文件至SDRAM中;
2.7)将SDRAM中的目标文件拷贝至NAND FLASH中。
作为优选,步骤2.5)具体为:
2.5.1)在读取配置文件的阶段,在SDRAM保存配置文件副本;
2.5.2)扫描所述的副本,获取目标文件的名称、下载地址,保存为升级参数。
作为优选,加载程序根据配置文件,自动下载目标文件,并拷贝至NAND FLASH相应的的地址,完成NAND FLASH的烧写。
作为优选,所述的目标文件包括开机载入程序、内核文件、根文件***。
作为优选,步骤1)、步骤2)包含在一个批处理命令脚本中。
本发明的有益效果如下:
与现有技术相比,对PC与J-LINK的依赖仅仅在向目标板拷贝初始化程度,之后的步骤均能在目标上自动完成。PC与J-LINK可以用于另一套目标板的烧写工作,节约成本,提高了生产维护效率。通过J-LINK初始化内存后,引导内存中的程序,直接从U盘将目标代码一次性的拷进NAND FLASH中,为板载NAND FLASH的烧写提供了一个快捷方便的方法,提高了生产效率。
程序的烧写由板卡自动完成,不再利用J-LINK直接对目标板进行烧写,解决了非主流处理不支持利用J-LINK直接烧写的缺点,通用性大大增强,具有极大的推广意义与价值。
附图说明
图1是本发明所述的方法对应的设备连接示意图;
图2是加载程序的流程示意图;
图中:1是PC端,2是目标板,3是U盘。
具体实施方式
以下结合附图及实施例对本发明进行进一步的详细说明。
如图1所示,J-LINK仿真器将PC端1与目标板2进行连接,将制作好烧写程序的U盘3连接到目标板2上。
一种ARM FLASH简易程序烧写的方法,基本步骤如下:
1)PC端将初始化程序下载至目标板的CPU片内的SRAM中,初始化目标板的CPU片外的SDRAM内存;
2)PC端将加载程序下载至目标板的CPU片外的SDRAM中,自动读取目标文件,完成烧写。
其中,步骤1)具体为:
1.1)PC端通过J-LINK软件命令行RCE/WCE写ARM9体系结构处理器的R15寄存器,使能ITCM;
1.2)将初始化程序下载至目标板的CPU片内的SRAM中;所述的初始化程序是预先做好的2K初始化代码,所述的2K代码为精减的初始化代码,其主要功能是初始化片外的SDRAM内存,以供后续能够加载进更大的内存版的加载程序;
1.3)运行初始化程序,初始化CPU时钟,然后初始化目标板的CPU片外的SDRAM内存。
步骤2)中,PC端将加载程序下载至目标板的CPU片内的SRAM后,目标板脱离PC端的控制。PC端通过J-LINK软件的命令将特殊定制内存版的加载程序下载至目标板SDRAM中,并把控制权转交给加载程序,此后目标板将脱离PC和J-LINK的控制,自动完成程序烧写工作。所述的加载程序为特殊定制的内存版程序,其主要功能是初始化USB***,识别U盘目标文件,识别并初始化板载NAND FLASH,根据U盘配置文件要求完成NAND FLASH的烧写工作。
如图2所示,步骤2)中所述的加载程序的流程如下:
2.1)初始化***定时器、通用异步接收/发送装置(UART);
2.2)初始化USB子***;
2.3)初始化FAT32子***;
2.4)初始化NAND FLASH;
2.5)读取U盘中的配置文件;
2.6)读取U盘中的目标文件至SDRAM中;
2.7)将SDRAM中的目标文件拷贝至NAND FLASH中。
加载程序根据配置文件,自动下载目标文件,并拷贝至NAND FLASH相应的的地址,完成NAND FLASH的烧写。加载程序启用U盘,读取U盘中的配置文件,根据配置文件自动下载镜像文件IMAGE,包括UBOOT+KERNEL+ROOTFS,即目标文件,包括开机载入程序、内核文件、根文件***。并拷贝至NAND FLASH相应的的地址,完成板载NAND FLASH的自动烧写。
步骤2.5)具体为:
2.5.1)在读取配置文件的阶段,在SDRAM保存配置文件副本;
2.5.2)扫描所述的副本,获取目标文件的名称、下载地址,保存为升级参数。
步骤1)、步骤2)包含在一个批处理命令脚本中。
上的述步骤1)、步骤2)可写成批处理过程,启动该批处理即可自动完成上述功能,完成上述操作后,目标板即可断开J-LINK与目标板的连接,J-LINK可继续对其他目标板进行操作,此过程耗时在5s之内。
自动烧写所耗时间是由NAND FLASH读写速度和USB的传输速度共同决定的,烧写32M镜像到NAND FLASH中耗时只在5分钟之内。
上述实施例仅是用来说明本发明,而并非用作对本发明的限定。只要是依据本发明的技术实质,对上述实施例进行变化、变型等都将落在本发明的权利要求的范围内。
Claims (7)
1.一种ARM FLASH简易程序烧写的方法,其特征在于,J-LINK仿真器将PC端与目标板进行连接,将制作好烧写程序的U盘连接到目标板上,步骤如下:
1)PC端将初始化程序下载至目标板的CPU片内的SRAM中,初始化目标板的CPU片外的SDRAM内存;
2)PC端通过J-LINK软件的命令将特殊定制内存版的加载程序下载至目标板SDRAM中,并把控制权转交给加载程序,目标板脱离PC端和J-LINK仿真器的控制;加载程序启用U盘,读取U盘中的配置文件,加载程序根据配置文件,自动下载目标文件,包括开机载入程序、内核文件、根文件***,并拷贝至NAND FLASH相应的地址,完成烧写。
2.根据权利要求1所述的ARM FLASH简易程序烧写的方法,其特征在于,步骤1)具体为:
1.1)PC端通过J-LINK软件命令行RCE/WCE写ARM9体系结构处理器的R15寄存器,使能ITCM;
1.2)将初始化程序下载至目标板的CPU片内的SRAM中;
1.3)运行初始化程序,初始化CPU时钟,然后初始化目标板的CPU片外的SDRAM内存。
3.根据权利要求1所述的ARM FLASH简易程序烧写的方法,其特征在于,步骤2)中所述的加载程序的流程如下:
2.1)初始化***定时器、通用异步接收/发送装置;
2.2)初始化USB子***;
2.3)初始化FAT32子***;
2.4)初始化NAND FLASH;
2.5)读取U盘中的配置文件;
2.6)读取U盘中的目标文件至SDRAM中;
2.7)将SDRAM中的目标文件拷贝至NAND FLASH中。
4.根据权利要求3所述的ARM FLASH简易程序烧写的方法,其特征在于,步骤2.5)具体为:
2.5.1)在读取配置文件的阶段,在SDRAM保存配置文件副本;
2.5.2)扫描所述的副本,获取目标文件的名称、下载地址,保存为升级参数。
5.根据权利要求4所述的ARM FLASH简易程序烧写的方法,其特征在于,加载程序根据配置文件,自动下载目标文件,并拷贝至NAND FLASH相应的地址,完成NAND FLASH的烧写。
6.根据权利要求5所述的ARM FLASH简易程序烧写的方法,其特征在于,所述的目标文件包括开机载入程序、内核文件、根文件***。
7.根据权利要求1所述的ARM FLASH简易程序烧写的方法,其特征在于,步骤1)、步骤2)包含在一个批处理命令脚本中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210356963.6A CN103677885B (zh) | 2012-09-21 | 2012-09-21 | 一种arm flash简易程序烧写的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210356963.6A CN103677885B (zh) | 2012-09-21 | 2012-09-21 | 一种arm flash简易程序烧写的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103677885A CN103677885A (zh) | 2014-03-26 |
CN103677885B true CN103677885B (zh) | 2019-03-05 |
Family
ID=50315547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210356963.6A Active CN103677885B (zh) | 2012-09-21 | 2012-09-21 | 一种arm flash简易程序烧写的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103677885B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677376A (zh) * | 2014-11-19 | 2016-06-15 | 中兴通讯股份有限公司 | 引导程序传输方法、嵌入式***及引导程序传输*** |
CN104461644A (zh) * | 2014-12-18 | 2015-03-25 | 山东超越数控电子有限公司 | 一种国产计算机平台烧录ec固件的方法 |
CN104679565B (zh) * | 2015-03-12 | 2018-01-02 | 烽火通信科技股份有限公司 | 一种光通信设备生产中闪存的烧写***及方法 |
CN106933612A (zh) * | 2015-12-29 | 2017-07-07 | 珠海优特电力科技股份有限公司 | 程序文件下载方法和*** |
CN105677429A (zh) * | 2016-01-14 | 2016-06-15 | 北京天诚盛业科技有限公司 | 程序烧写方法、处理器和电子电路 |
CN108021385A (zh) * | 2017-12-29 | 2018-05-11 | 北京神州龙芯集成电路设计有限公司 | 一种板载SPI Flash的烧写***和方法 |
CN109062562A (zh) * | 2018-07-27 | 2018-12-21 | 四川长虹电器股份有限公司 | Mcu固件程序的下载方法 |
CN109710277B (zh) * | 2018-12-21 | 2022-04-01 | 深圳开阳电子股份有限公司 | 一种板载SPI Flash存储器的烧写方法和*** |
CN109800012A (zh) * | 2019-03-01 | 2019-05-24 | 四川长虹电器股份有限公司 | 一种mcu固件升级方法 |
CN111552501A (zh) * | 2020-04-29 | 2020-08-18 | 珠海趣印科技有限公司 | 一种windows矢量字体烧录工具及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1624665A (zh) * | 2003-12-02 | 2005-06-08 | 深圳创维-Rgb电子有限公司 | 一种烧写e2prom的方法和装置 |
CN102368218A (zh) * | 2011-10-14 | 2012-03-07 | 烽火通信科技股份有限公司 | 自动批量烧写Flash的方法 |
CN102629212A (zh) * | 2012-04-28 | 2012-08-08 | 广东宝莱特医用科技股份有限公司 | 一种基于j-link间接烧写程序到nandflash的方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6943575B2 (en) * | 2002-07-29 | 2005-09-13 | Micron Technology, Inc. | Method, circuit and system for determining burn-in reliability from wafer level burn-in |
CN102231852B (zh) * | 2011-05-06 | 2014-05-28 | 深圳市九洲电器有限公司 | 一种机顶盒序列号烧写方法及装置 |
-
2012
- 2012-09-21 CN CN201210356963.6A patent/CN103677885B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1624665A (zh) * | 2003-12-02 | 2005-06-08 | 深圳创维-Rgb电子有限公司 | 一种烧写e2prom的方法和装置 |
CN102368218A (zh) * | 2011-10-14 | 2012-03-07 | 烽火通信科技股份有限公司 | 自动批量烧写Flash的方法 |
CN102629212A (zh) * | 2012-04-28 | 2012-08-08 | 广东宝莱特医用科技股份有限公司 | 一种基于j-link间接烧写程序到nandflash的方法 |
Non-Patent Citations (1)
Title |
---|
"一种新的烧写BootLoader的方法";顾明飞;《软件导刊》;20110120;第09卷(第03期);正文第17-18页 |
Also Published As
Publication number | Publication date |
---|---|
CN103677885A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103677885B (zh) | 一种arm flash简易程序烧写的方法 | |
CN103049375B (zh) | 一种摄像头在线调试方法 | |
TW201301028A (zh) | 用於串列式快閃記憶體之同時讀寫方法 | |
US20100095044A1 (en) | Motherboard system, storage device for booting up thereof and connector | |
CN102917242A (zh) | 一种多格式视频解码器的测试***和测试方法 | |
CN100403246C (zh) | 模拟硬盘的装置及其方法 | |
CN112379895A (zh) | 通过1553b升级zynq fpga程序的方法 | |
CN101515436B (zh) | 嵌入式led显示屏控制*** | |
CN102043638A (zh) | 计算机***以及计算机启动设定方法 | |
CN102629212A (zh) | 一种基于j-link间接烧写程序到nandflash的方法 | |
CN112230962B (zh) | 一种用于处理器平台的bios配置保存方法及*** | |
JP2017503294A (ja) | アウトオブオーダープロセッサの書き込み結合メモリ領域アクセスに依存するロードリプレイを除外する装置及び方法 | |
CN101527161B (zh) | 一种快速烧写NAND flash的方法和装置 | |
CN103197933A (zh) | 计算机及其快速启动方法 | |
CN110366038B (zh) | 多版本软件设备兼容多种技术状态的方法 | |
TW201933091A (zh) | 資料儲存裝置之測試系統與資料儲存裝置之測試方法 | |
CN104459515A (zh) | 一种主板生产测试方法 | |
CN106951268A (zh) | 一种申威平台支持NVMe硬盘启动的实现方法 | |
CN105045624A (zh) | PowerPC主机板及烧写方法 | |
CN202394528U (zh) | 一种用于存储板的烧写装置 | |
CN102034543B (zh) | 在单任务中实现同时烧写多片nandflash的方法 | |
CN208722090U (zh) | 带有内存参数精确配置功能的嵌入式终端 | |
US8117427B2 (en) | Motherboard, storage device and controller thereof, and booting method | |
CN112000235A (zh) | 一种用于si测试工具的虚拟键盘***和设计方法 | |
CN201345105Y (zh) | 无线物流终端机 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |