CN1936841A - 一种电子系统程序加载方法 - Google Patents
一种电子系统程序加载方法 Download PDFInfo
- Publication number
- CN1936841A CN1936841A CN 200610098908 CN200610098908A CN1936841A CN 1936841 A CN1936841 A CN 1936841A CN 200610098908 CN200610098908 CN 200610098908 CN 200610098908 A CN200610098908 A CN 200610098908A CN 1936841 A CN1936841 A CN 1936841A
- Authority
- CN
- China
- Prior art keywords
- routine
- nonvolatile memory
- application program
- electronic system
- external device
- 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.)
- Granted
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及一种电子系统程序的加载方法。本发明中将启动程序分解成两部分,一部分固化于CPU中,另一部分通过通用串行接口按需从外界设备获得。两部分共同完成对板上非易失存储器中应用程序的加载。由于启动程序的一部分固化于CPU中,另一部分从上位机加载,而不是完全固化于CPU或者完全存储在可能被意外擦除的非易失存储器中,因而,本方法兼具强壮性与灵活性。另外,由于通过通用串行接口而不是JTAG接口,因而整个加载过程中不需要任何时序转换电路,通用性强。
Description
技术领域
本发明属于电子技术领域,特别涉及一种电子系统程序的加载方法。
背景技术
现代电子系统一般包括CPU、非易失存储器和通信接口等部分。应用程序存放于非易失存储器中。在设备的生产、维修和升级的过程中,需要将应用程序加载到非易失存储器中。
目前有如下五种加载方式。
现有方式一:如图1所示,使用编程器将应用程序加载到非易失存储器102中,而后将非易失存储器102安装至设备内部。其缺点是设备的维修和升级过程中如需重新加载应用程序至非易失存储器,则需要开启设备外壳,拆卸非易失存储器,用编程器加载应用程序至该非易失存储器,最后重新安装非易失存储器至设备内部。操作过程繁琐,多次拆装给产品带来不可靠性,而且不适合焊接安装的非易失存储器。
现有方式二:如图2所示,设备内增置一BOOTROM 204,BOOTROM内含启动程序,启动程序通过通信接口203和外界设备205通信,将应用程序加载至非易失存储器202中。其缺点是内置包含启动程序的BOOTROM会显著增加设备成本,而且这一启动程序在设备制造完成之后将不能修改。
现有方式三:如图3所示,外界设备305通过CPU 301内置的JTAG接口控制CPU,将应用程序加载至非易失存储器302中。其缺点是,外界设备,例如个人电脑,由于不具备JTAG接口控制器,因而需要配备专门的时序转换电路306,不适合普通消费者以及销售商使用。
现有方式四:如图4所示,作为方式二的改进,将启动程序和应用程序均存放于非易失存储器402中,与方式二相比,降低了物料成本。其缺点是健壮性欠佳。由于误操作,干扰或突然掉电等原因,非易失存储器中的启动程序容易遭到破坏。非易失存储器中的启动程序一旦容易遭到破坏,则需要通过方式一或者方式三重新加载启动程序,否则设备将无法启动。
现有方式五:如图5所示,将启动程序固化至CPU 501内部。其缺点是,缺乏灵活性,一旦更换了需要不同加载协议的非易失存储器,则此方式失效。
上面所说的外界设备,包括但不限于个人电脑、信息家电和工控计算机。
如上所述,现有的五种方式都有这样那样的缺点,因此有必要寻找一种更加健壮灵活和操作简便的应用程序加载方法。
发明内容
本发明的目的就是针对现有技术的不足,提供一种更加健壮灵活和操作简便的应用程序加载方法。
为了实现上述目的,本发明的电子系统程序加载方法将启动程序分解为两部分,两部分共同完成对非易失存储器中应用程序的加载。
启动程序的第一部分固化于CPU中。启动程序的第二部分不是永久存储于电子系统中,而是在需要时从外界设备获得。
启动程序的第一部分工作流程为:
A.通过通信接口与外界设备通信来判断是否需要对非易失存储器中应用程序进行加载,如不需要则转入步骤B,如需要则转入步骤C;
B.执行非易失存储器中的应用程序;
C.通过通信接口从外界设备接收启动程序的第二部分,存放于RAM中,而后执行启动程序的第二部分。
启动程序的第二部分的工作流程为:
D.通过通信接口从外界设备接收应用程序,并将其写入非易失存储器中;
E.执行非易失存储器中的应用程序。
另外,启动程序的第一部分固化的方法,包括CPU设计制造时使用硬连线、使用掩膜ROM、CPU初次使用时对CPU内部只读存储器加载等方法。
本发明的电子系统程序加载方法具有如下优点:
1.加载过程中使用通信接口,无需开启设备外壳,无需拆装非易失存储器。克服了现有方式一的不足。
2.电路板上无需安装BOOTROM,克服了现有方式二的不足。
3.加载过程中只使用通信接口,无需专用的JTAG时序转换器。克服了现有方式三的不足。
4.启动程序的第一部分固化于CPU中,即使非易失存储器遭到擦除,也可启动并通过通信接口重新加载应用程序至非易失存储器。克服了现有方式四的不足。
5.启动程序的第二部分在需要时从外界设备获得,具有很大的灵活性,可以适应不同的非易失存储器和通信接口。克服了现有方式五的不足,并节省CPU面积。
本发明通过把启动程序分解为两部分,而且启动程序的第二部分在必要时才从外界设备获得,与现有的各种加载方法相比,本发明的电子系统程序加载方法更加健壮,更加灵活,操作更加简便。
附图说明
图1是现有方式一系统结构示意图;
图2是现有方式二系统结构示意图;
图3是现有方式三系统结构示意图;
图4是现有方式四系统结构示意图;
图5是现有方式五系统结构示意图;
图6是本发明的系统结构示意图;
图7是本发明的一种具体实施方式的流程图;
图8是本发明的一种具体实施方式的硬件结构示意图。
具体实施方式
下面结合说明书附图6和7说明本发明的一种具体实施方式。
本具体实施方式涉及一台路由器,其硬件结构包括CPU 801、非易失存储器802、RS232串行通信接口803、SDRAM 806以及若干以太网口807。
本具体实施方式以个人电脑805充当外界设备。
在CPU设计时,在CPU中固化入启动程序A部分,A部分的详细流程如图7中的711~717所示,并会在后文叙述。
在设计电路板时,根据产品定位和器件价格选择特定容量和品牌型号的SDRAM和非易失存储器。并针对该特定容量和品牌型号的SDRAM和非易失存储器编写应用程序和启动程序B部分。
在维修升级过程中,按如下流程加载应用程序至非易失存储器。
1.启动所述电子系统;
2.CPU 801执行固化于CPU内部的启动程序A部分;
3.启动程序A部分初始化RS232串口711;
4.启动程序A部分向外界设备,也就是本具体实施方式中的个人电脑805,发送询问字712;
5.启动程序A部分等待外界设备,也就是本具体实施方式中的个人电脑805,返回应答。如果等待超时(例如没有连接个人电脑)时,或者返回的应答为不需要加载(例如电子系统维护人员认为不需要加载)时,跳转至非易失存储器802,执行应用程序714,启动程序流程结束。如果返回的应答为需要加载则继续执行后续流程;
6.启动程序A部分先接收启动程序B部分的长度715,然后依据长度接收启动程序B部分。将B部分存放于CPU片内的SRAM中716;
7.跳转至CPU片内的SRAM,执行启动程序B部分717;
8.启动程序B部分初始化SDRAM 720;
9.启动程序B部分接收应用程序长度721;
10.启动程序B部分依据长度接收应用程序,并存放于SDRAM中722,由于应用程序长度较大,为检测传输过程中的错误,增加了校验信息;
11.应用程序接收完成后,启动程序B部分对接收到的应用程序进行校验723。如果校验错误,则进行出错处理725,启动程序流程结束。如果校验正确,则继续执行后续流程;
12.启动程序B对非易失存储器进行擦除操作,以便加载新的数据727;
13.启动程序B将SDRAM中的应用程序加载到非易失存储器中728;
14.跳转到非易失存储器中,执行应用程序。启动程序流程结束。
所述的电子系统程序加载方法,具有如下优点:
1.加载过程中使用通信接口,无需开启设备外壳,无需拆装非易失存储器。
2.电路板上无需安装BOOTROM,克服了技术背景中方式二的不足。
3.加载过程中只使用通信接口,无需专用的JTAG时序转换器。
4.启动程序A部分固化于CPU中,即使非易失存储器遭到擦除,也可启动并通过通信接口重新加载应用程序至非易失存储器
5.启动程序A只和RS232串口和CPU片内的SRAM有关,RS232串口也往往集成于CPU内部,因而启动程序A部分在不同设备中是普遍适用的。
6.启动程序B部分在需要时从外界设备获得,具有很大的灵活性。修改电子系统配置,更换不同容量和品牌型号的SDRAM和非易失存储器时,只需要修改启动程序B部分即可适应新的SDRAM和非易失存储器。
总之,所述方法是一种强壮的,灵活的,操作简便的电子系统程序加载方法。
尽管本发明是参照其优选实施例来具体描述的,但本领域的技术人员应该理解,在不脱离有所附权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节的各种修改。
Claims (1)
1、一种电子系统程序加载方法,其特征在于该方法将启动程序分解为两部分,两部分共同完成对非易失存储器中应用程序的加载;
启动程序的第一部分固化于CPU中;启动程序的第二部分不是永久存储于本电子系统中,而是在必要时从外界设备获得;
启动程序的第一部分工作流程为:
A.通过通信接口与外界设备通信来判断是否需要对非易失存储器中应用程序进行加载,如不需要则转入步骤B,如需要则转入步骤C;
B.执行非易失存储器中的应用程序;
C.通过通信接口从外界设备接收启动程序B部分,存放于RAM中,而后执行启动程序的第二部分;
启动程序的第二部分的工作流程为:
D.通过通信接口从外界设备接收应用程序,并将其写入非易失存储器中;
E.执行非易失存储器中的应用程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100989086A CN100375030C (zh) | 2006-07-14 | 2006-07-14 | 一种电子系统程序加载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100989086A CN100375030C (zh) | 2006-07-14 | 2006-07-14 | 一种电子系统程序加载方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1936841A true CN1936841A (zh) | 2007-03-28 |
CN100375030C CN100375030C (zh) | 2008-03-12 |
Family
ID=37954356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100989086A Active CN100375030C (zh) | 2006-07-14 | 2006-07-14 | 一种电子系统程序加载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100375030C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102548053A (zh) * | 2010-12-15 | 2012-07-04 | 盛乐信息技术(上海)有限公司 | 一种基于2.4g的无线路由器及其实现方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10307726A (ja) * | 1997-05-02 | 1998-11-17 | Nec Corp | 起動エラー時におけるファームウェアリカバリ方式 |
CN1124746C (zh) * | 1999-09-11 | 2003-10-15 | 华为技术有限公司 | 单板测式方法和装置 |
CN1168019C (zh) * | 2002-08-30 | 2004-09-22 | 清华大学 | 现场可编程门阵列程序在线升级系统及其实现方法 |
JP2004348677A (ja) * | 2003-05-26 | 2004-12-09 | Sony Corp | プログラムおよび情報処理方法 |
CN100362470C (zh) * | 2004-12-09 | 2008-01-16 | 华为技术有限公司 | 一种bios在线升级装置及方法 |
-
2006
- 2006-07-14 CN CNB2006100989086A patent/CN100375030C/zh active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102548053A (zh) * | 2010-12-15 | 2012-07-04 | 盛乐信息技术(上海)有限公司 | 一种基于2.4g的无线路由器及其实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100375030C (zh) | 2008-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9158723B2 (en) | Expanded protocol adapter for in-vehicle networks | |
CN102095448B (zh) | 车载信息终端生产线自动测试系统及其测试方法 | |
CN103309792B (zh) | 一种日志信息的控制方法及系统 | |
AU2005290227A1 (en) | Method for automatic radio operational mode selection | |
CN103136012A (zh) | 计算机系统及其基本输入输出系统的更新方法 | |
CN103136048A (zh) | 计算机系统 | |
CN100375030C (zh) | 一种电子系统程序加载方法 | |
US20110191573A1 (en) | Multi-motherboard server system | |
EP1887504A3 (en) | Method, program, and system for monitoring supplier capacities | |
CN100395728C (zh) | 单板信息的读写系统与方法 | |
CN102520975A (zh) | 外接设备驱动的智能升级方法、装置及系统 | |
CN102736595A (zh) | 一种基于32位微处理器和rtos的智能配电终端统一平台 | |
US20100138824A1 (en) | Sdr terminal and reconfiguration method | |
CN101593128B (zh) | 基于实时操作系统的atca系统中的ipmc及其构建方法 | |
CN102902518A (zh) | 一种有源usb设备及其工作模式的切换方法 | |
CN105468558A (zh) | 一种实现传统星载设备、载荷即插即用的方法 | |
CN101944072A (zh) | 一种终端设备的启动方式配置方法及设备 | |
JP2006245956A (ja) | 通信機器用の接続装置 | |
WO2006066262A3 (en) | Evalutation unit for single instruction, multiple data execution engine flag registers | |
JP2002208886A (ja) | 携帯端末装置、記憶データ更新方法及びファームウェア更新方法 | |
CN1294489C (zh) | 单片机程序升级方法 | |
CN111224181B (zh) | 电池模组管理系统 | |
CN207459227U (zh) | 分体式卡座 | |
CN201532309U (zh) | 汽车故障诊断装置 | |
CN101281785B (zh) | 复合芯片电路、其使用方法及相关信息设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee | ||
CP03 | Change of name, title or address |
Address after: No. 90, Wensanlu Road, Hangzhou, Zhejiang, Xihu District Patentee after: Hangzhou National Chip Science & Technology Co., Ltd. Address before: 5A, Neusoft building, No. 99 Huaxing Road, Hangzhou, Zhejiang, Xihu District Patentee before: Hangzhou Guoxin Science & Technology Co., Ltd. |