CN101488091A - 一种嵌入式系统中固化程序的方法 - Google Patents
一种嵌入式系统中固化程序的方法 Download PDFInfo
- Publication number
- CN101488091A CN101488091A CNA2008100077510A CN200810007751A CN101488091A CN 101488091 A CN101488091 A CN 101488091A CN A2008100077510 A CNA2008100077510 A CN A2008100077510A CN 200810007751 A CN200810007751 A CN 200810007751A CN 101488091 A CN101488091 A CN 101488091A
- Authority
- CN
- China
- Prior art keywords
- interface
- jtag
- embedded system
- pin
- jtag interface
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供了一种嵌入式系统中固化程序的方法,包括步骤:用接口转换线缆连接嵌入式系统的联合测试行动小组JTAG接口与PC机并行接口,使并行接口的相应管脚分别对应JTAG接口的引脚:测试模式选择TMS、测试时钟TCK、测试数据输入TDI和测试数据输出TDO,通过写低写高所述并行接口的管脚实现JTAG接口的高低信号;之后由PC机通过JTAG接口向嵌入式系统的闪存器件装入引导程序,使嵌入式系统从闪存器件直接启动。本发明在嵌入式系统中不用BOOT存储器的情况下通过嵌入式微处理器的JTAG接口完成FLASH存储器的在线升级,使嵌入式系统可以直接从FLASH启动。
Description
技术领域
本发明涉及一种嵌入式系统中固化程序的方法,尤其涉及通讯领域中的低成本终端设备在实际应用中固化程序的方法。
背景技术
随着Internet的发展和相关业务的不断扩张,以太网交换机在实际应用中已经越来越普及。
在以太网交换机产品的实际设计中通常采用嵌入式系统来实现,嵌入式系统是指以应用为核心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。作为嵌入式系统的核心,嵌入式微处理器,目前常采用Power PC以及ARM的微处理器。嵌入式应用系统的设计包含硬件系统的设计和软件系统设计两个部分,并且这两部分的设计是互相关联、密不可分的,嵌入式应用系统的设计经常需要在硬件和软件的设计之间进行权衡与折中。一种常用的嵌入式系统的主要硬件组成如图1所示。电源电路通常选用DC-DC转换器,给嵌入式系统及其他需要电源的外围电路供电;有源晶振为系统提供工作时钟,通过微处理器片内PLL电路倍频作为微处理器的工作时钟;JTAG接口可对芯片内部的所有部件进行访问,通过该接口可对系统进行调试、编程等;系统总线扩展引出了数据总线、地址总线和必须的控制总线,便于用户根据自身的特定需求,扩展外围电路;闪存FLASH存储器可存放已调试好的用户应用程序、嵌入式操作系统或其他在系统掉电后需要保存的用户数据等,FLASH存储器大小为8MB,封装为TSOP48;SDRAM存储器作为系统运行时的主要区域,系统及用户数据、堆栈均位于SDRAM存储器中,SDRAM存储器大小为32MB,封装为TSOP54;BOOT存储器存放系统自举程序Bootrom,Bootrom软件完成加载操作系统映像,使其正常启动,对于存放bootrom软件的Flash来说,通常要求大小为512KB,这样就需要考虑到容量的限制,而且要在保证提供网口功能的情况下,系统提供的bootrom软件小于512KB,BOOT存储器的封装为PLCC32。
如图1所示的应用中,通常先在通用编程器上对BOOT存储器进行编程,然后插到嵌入式系统的单板上,系统上电后由BOOT存储器加载存放在FLASH存储器中的操作系统映像到SDRAM存储器中,从而启动系统运行,系统运行后根据需要可以完成BOOT存储器和FLASH存储器的在线升级等特殊需求。对于交换产品而言,其成本控制是非常严格的,尤其在低端以太网交换机产品大量出货的情况下其成本控制更为迫切。
发明内容
本发明要解决的技术问题是提供一种嵌入式系统中固化程序的方法,在嵌入式系统中不用BOOT存储器的情况下通过嵌入式微处理器的JTAG接口完成FLASH存储器的在线升级,使嵌入式系统直接从FLASH启动。
为了解决上述问题,本发明提供了一种嵌入式系统中固化程序的方法,包括步骤:
用接口转换线缆连接嵌入式系统的联合测试行动小组JTAG接口与PC机并行接口,使并行接口的相应管脚分别对应JTAG接口的引脚:测试模式选择TMS、测试时钟TCK、测试数据输入TDI和测试数据输出TDO,通过写低写高所述并行接口的管脚实现JTAG接口的高低信号;
之后由PC机通过JTAG接口向嵌入式系统的闪存器件装入引导程序,使嵌入式系统从闪存器件直接启动;
进一步的,所述JTAG接口采用标准的14针JTAG接口或20针JTAG接口;
进一步的,并行接口的管脚3、管脚4、管脚5、管脚11分别对应JTAG接口的引脚:TMS、TCK、TDI、TDO;
进一步的,在JTAG接口与PC机并行接口连接后,使用PC机内安装软件,通过JTAG接口对嵌入式系统的闪存器件进行编程时,首先在软件中根据并行接口的管脚与JTAG接口的对应关系进行配置,之后再装入引导程序;
进一步的,所述嵌入式系统将调试过的用户应用程序、保存的用户数据存放在闪存器件中;
进一步的,通过JTAG接口对闪存器件进行烧写,完成闪存器件的在线升级。
与现有技术相比,本发明所述方法,在嵌入式系统中不用BOOT存储器的情况下通过嵌入式微处理器的JTAG接口完成FLASH存储器的在线升级,使嵌入式系统直接从FLASH启动,由于该方法不使用BOOT存储器,所以大大降低了终端设备的材料成本,是对低成本终端设备在实际系统应用中的一种实现。该方法降低了产品成本,对整个产品的后续批量生产、用户维护和后续开发都奠定了一个良好的基础。
附图说明
图1为现有技术中嵌入式系统的硬件框图;
图2为现有技术中JTAG接口插座;
图3为本发明实施例中改进后的嵌入式系统硬件框图;
图4为本发明实施例中电缆制作连接示意图;
图5为本发明实施例中参考连线示意图;
图6为本发明实施例中文件下载示意图;
图7为本发明实施例中文件下载完成后示意图;
图8为本发明实施例中flash烧录方法流程图。
具体实施方式
本发明为了解决传统技术方案存在的弊端,通过以下具体实施例进一步阐述本发明所述的一种嵌入式系统中固化程序的方法,以下对具体实施方式进行详细描述,但不作为对本发明的限定。
本发明的核心思路是:
利用现有嵌入式微处理器的JTAG接口,使用电缆连接嵌入式系统的JTAG接口和PC机的并行接口,之后在PC机内安装软件,通过JTAG接口向嵌入式系统的Flash装入引导程序,直接启动嵌入式系统,并完成Flash的在线升级。
JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议,主要用于芯片内部测试及对系统进行仿真、调试,JTAG技术是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路TAP(Test AccessPort,测试访问口),通过专用的JTAG测试工具对内部节点进行测试。目前大多数比较复杂的器件都支持JTAG协议,如ARM、DSP、FPGA器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为测试模式选择、测试时钟、测试数据输入和测试数据输出。
JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。JTAG接口还常用于实现ISP(In-SystemProgrammable在系统编程)功能,本方案就是利用JTAG接口对FLASH器件进行编程。
本方案中的JTAG接口可以采用标准14针接口或者20针接口。
标准14针接口,其引脚定义如表1所示:
引脚 | 名称 | 描述 |
1、13 | VCC | 接电源 |
2、4、6、8、10、14 | GND | 接地 |
3 | nTRST | 测试系统复位信号 |
5 | TDI | 测试数据串行输入 |
7 | TMS | 测试模式选择 |
9 | TCK | 测试时钟 |
11 | TDO | 测试数据串行输出 |
12 | NC | 未连接 |
表1 14针JTAG接口定义
标准20针接口,其引脚定义如表2所示:
引脚 | 名称 | 描述 |
1 | VTref | 目标板参考电压,接电源 |
2 | VCC | 接电源 |
3 | nTRST | 测试系统复位信号 |
4、6、8、10、12、14、16、18、20 | GND | 接地 |
5 | TDI | 测试数据串行输入 |
7 | TMS | 测试模式选择 |
9 | TCK | 测试时钟 |
11 | RTCK | 测试时钟返回信号 |
13 | TDO | 测试数据串行输出 |
15 | nRESET | 目标系统复位信号 |
17、19 | NC | 未连接 |
表2 20针JTAG接口定义
并口的pin3,pin4,pin5,pin11分别对应JTAG的引脚:TMS(pin7),TCK(pin9),TDI(pin5),TDO(pin11);以下仅以采用标准14针接口进行说明,JTAG接口与PC机的并行接口间电缆的制作连接如图2所示。
如图3所示为改进后的嵌入式系统硬件框图,由图3可见,与图1相比,改进后的嵌入式系统中去掉了BOOT存储器,降低了终端设备的材料成本。Flash除了装入引导程序,直接启动嵌入式系统外,还可存放已调试好的用户应用程序、嵌入式操作系统或其他在系统掉电后需要保存的用户数据等。
对并口的具体操作,由H-JTAG软件完成,而具体烧写软件的运行控制由ADS完成,运行软件vxworks实现的功能就是通过tftp下载bootrom.bin到内存,并更新到flash中去。
如图4所示,为本发明实施例的方法流程图。以ARM系列的微处理器为例,具体的烧写flash的步骤为:
步骤S1,制作连接电缆,也可以选用厂商的成品下载线缆;
如图5所示,并口的pin3,pin4,pin5,pin11分别对应JTAG的引脚:TMS,TCK,TDI,TDO;
如图6所示的连线图,进行连线,通过并行接口转JTAG口的线缆,一端连PC的并口,一端连交换机的JTAG口,通过并行接口的操作来操作JTAG口,即通过对并口的这些管脚写低写高来实现JTAG所需的高低信号;
步骤S2,在PC上安装软件;
包括安装并口驱动,安装ADS(ARM developer suite),安装H-JTAG,安装完成后会在桌面上生成两个快捷方式:H-JTAG和H-Flasher;
步骤S3,配置H-JTAG和ADS;
根据自己的实际情况配置:点桌面上的H-JTAG快捷键,选择settings->Jtag Settings,按图5所示的连接关系配置对应关系,点ok;
步骤S4,开始下载文件;
在ADS主菜单中,点File->Load Image...,选择vxworks文件,此时AXD会出现下载进度条,可以看到如图7所示的文件下载示意图;
步骤S5,flash烧录完成;
下载完成后可以看到被烧入bootrom.bin文件的版本和日期。在串口终端会看到如下图8所示,就OK了。此时关电重启后,交换机就可以直接从flash启动了。
根据需要通过JTAG接口对闪存器件烧写,完成FLASH存储器的在线升级(对其内应用程序等等)等特殊需求。
用本发明所描述的嵌入式系统中固化程序的方法,已经在实际产品中成功实现,操作很方便。由于该方法使嵌入式系统直接从FLASH启动,节省了BOOT存储器,所以大大降低了终端设备的材料成本,有一定的推广价值。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (6)
1、一种嵌入式系统中固化程序的方法,其特征在于,包括步骤:
用接口转换线缆连接嵌入式系统的联合测试行动小组JTAG接口与PC机并行接口,使并行接口的相应管脚分别对应JTAG接口的引脚:测试模式选择TMS、测试时钟TCK、测试数据输入TDI和测试数据输出TDO,通过写低写高所述并行接口的管脚实现JTAG接口的高低信号;
之后由PC机通过JTAG接口向嵌入式系统的闪存器件装入引导程序,使嵌入式系统从闪存器件直接启动。
2、如权利要求1所述的方法,其特征在于,所述JTAG接口采用标准的14针JTAG接口或20针JTAG接口。
3、如权利要求1或2所述的方法,其特征在于,并行接口的管脚3、管脚4、管脚5、管脚11分别对应JTAG接口的引脚:TMS、TCK、TDI、TDO。
4、如权利要求3所述的方法,其特征在于,在JTAG接口与PC机并行接口连接后,使用PC机内安装软件,通过JTAG接口对嵌入式系统的闪存器件进行编程时,首先在软件中根据并行接口的管脚与JTAG接口的对应关系进行配置,之后再装入引导程序。
5、如权利要求1所述的方法,其特征在于,所述嵌入式系统将调试过的用户应用程序、保存的用户数据存放在闪存器件中。
6、如权利要求1所述的方法,其特征在于,通过JTAG接口对闪存器件进行烧写,完成闪存器件的在线升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100077510A CN101488091A (zh) | 2008-03-07 | 2008-03-07 | 一种嵌入式系统中固化程序的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100077510A CN101488091A (zh) | 2008-03-07 | 2008-03-07 | 一种嵌入式系统中固化程序的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101488091A true CN101488091A (zh) | 2009-07-22 |
Family
ID=40890997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008100077510A Pending CN101488091A (zh) | 2008-03-07 | 2008-03-07 | 一种嵌入式系统中固化程序的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101488091A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102130951A (zh) * | 2011-03-14 | 2011-07-20 | 浪潮(北京)电子信息产业有限公司 | 一种服务器及其可编程逻辑器件的远程升级方法 |
CN104793971A (zh) * | 2015-04-17 | 2015-07-22 | 浪潮电子信息产业股份有限公司 | 一种灵活高效的bmc在线烧录cpld程序的方法 |
CN105045624A (zh) * | 2015-07-17 | 2015-11-11 | 天津市英贝特航天科技有限公司 | PowerPC主机板及烧写方法 |
US9703556B2 (en) | 2010-10-18 | 2017-07-11 | Continental Automotive France | Method for controlling an integrated circuit, integrated circuit and computer including an integrated circuit |
CN107450935A (zh) * | 2016-05-30 | 2017-12-08 | 北京信威通信技术股份有限公司 | 一种芯片的bootrom启动配置方法及装置 |
CN111240726A (zh) * | 2018-11-29 | 2020-06-05 | 株洲中车时代电气股份有限公司 | 一种嵌入式数据处理系统 |
-
2008
- 2008-03-07 CN CNA2008100077510A patent/CN101488091A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9703556B2 (en) | 2010-10-18 | 2017-07-11 | Continental Automotive France | Method for controlling an integrated circuit, integrated circuit and computer including an integrated circuit |
CN102130951A (zh) * | 2011-03-14 | 2011-07-20 | 浪潮(北京)电子信息产业有限公司 | 一种服务器及其可编程逻辑器件的远程升级方法 |
CN102130951B (zh) * | 2011-03-14 | 2014-12-17 | 浪潮(北京)电子信息产业有限公司 | 一种服务器及其可编程逻辑器件的远程升级方法 |
CN104793971A (zh) * | 2015-04-17 | 2015-07-22 | 浪潮电子信息产业股份有限公司 | 一种灵活高效的bmc在线烧录cpld程序的方法 |
CN105045624A (zh) * | 2015-07-17 | 2015-11-11 | 天津市英贝特航天科技有限公司 | PowerPC主机板及烧写方法 |
CN107450935A (zh) * | 2016-05-30 | 2017-12-08 | 北京信威通信技术股份有限公司 | 一种芯片的bootrom启动配置方法及装置 |
CN111240726A (zh) * | 2018-11-29 | 2020-06-05 | 株洲中车时代电气股份有限公司 | 一种嵌入式数据处理系统 |
CN111240726B (zh) * | 2018-11-29 | 2024-02-20 | 株洲中车时代电气股份有限公司 | 一种嵌入式数据处理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102609286B (zh) | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 | |
CN101488091A (zh) | 一种嵌入式系统中固化程序的方法 | |
CN102567203B (zh) | 一种测试分布式文件系统性能的方法及系统 | |
CN106201590B (zh) | 一种fpga配置文件加载方法和系统 | |
CN102565671B (zh) | 一种集成电路测试仪在线编程的动态配置方法 | |
CN102183726A (zh) | 一种基于fpga的集成电路芯片测试系统与方法 | |
CN102073517A (zh) | 一种嵌入式系统的升级、备份方法和装置 | |
US11250193B1 (en) | Productivity platform using system-on-chip with programmable circuitry | |
CN101615128B (zh) | 一种单片机在线升级的方法及装置 | |
CN101510161A (zh) | 一种引导程序的实现方法、装置和便携式电子设备 | |
CN105630559B (zh) | 板卡固件烧录方法及其系统 | |
CN103605542A (zh) | Fpga配置文件的在线升级装置 | |
CN100498708C (zh) | 一种通过个人计算机进行固件下载的方法及装置 | |
CN103309693A (zh) | 复杂可编程逻辑器件更新方法及系统 | |
CN113608940B (zh) | 智能网卡的生产测试方法、系统、装置及可读存储介质 | |
CN114064458A (zh) | 接口可扩展的通用性的jtag调试方法及系统 | |
CN104572394A (zh) | 进程监控方法及装置 | |
CN102866948A (zh) | 一种嵌入式基础软件测试平台及其测试方法 | |
CN110554938A (zh) | 一种基于脚本集合的bios测试方法、系统、终端及存储介质 | |
CN103514014A (zh) | 一种嵌入式终端设备引导系统的设计方法 | |
CN104572225A (zh) | 一种新型测试bios在线更新稳定性的方法 | |
CN101930373A (zh) | 一种片上系统启动的方法和装置 | |
CN110297749B (zh) | 一种测试新功能的方法及终端 | |
CN203250312U (zh) | 一种接口形式可扩展的通用核心处理子板 | |
US10474610B1 (en) | Hardware trace and introspection for productivity platform using a system-on-chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090722 |