CN1574871A - 通过usb连接的软件更新 - Google Patents

通过usb连接的软件更新 Download PDF

Info

Publication number
CN1574871A
CN1574871A CNA2003101156095A CN200310115609A CN1574871A CN 1574871 A CN1574871 A CN 1574871A CN A2003101156095 A CNA2003101156095 A CN A2003101156095A CN 200310115609 A CN200310115609 A CN 200310115609A CN 1574871 A CN1574871 A CN 1574871A
Authority
CN
China
Prior art keywords
interface
usb
equipment
code
computer
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
Application number
CNA2003101156095A
Other languages
English (en)
Other versions
CN100581207C (zh
Inventor
韦尔·本伊斯梅尔
克里斯特尔·黑泽尔茨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
InterDigital CE Patent Holdings SAS
Original Assignee
Thomson Licensing SAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of CN1574871A publication Critical patent/CN1574871A/zh
Application granted granted Critical
Publication of CN100581207C publication Critical patent/CN100581207C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种电子设备,如调制解调器等,所述电子设备具有在正常操作中以完整协议栈代码进行操作的接口,并且包括如闪速存储器等包含有用于引导所述设备的代码的非易失性存储器。所述设备的特征在于,在所述设备的引导操作期间、通过所述接口更新所述设备的软件,而且所述引导代码包括针对所述接口的轻型协议栈代码,所述轻型协议栈包括完整协议栈的层的子集。

Description

通过USB连接的软件更新
技术领域
本发明涉及一种电子设备,如调制解调器等,所述电子设备具有在正常操作中以完整协议栈代码进行操作的接口,并且包括如闪速存储器等包含有用于引导所述设备的代码的非易失性存储器。
背景技术
目前,存在着几种通过其向用户分布针对电子设备等的软件更新、隐错修正的机制。第一种可能的机制是:技术人员到达需要更新的设备所处的地点,更换需要更新的存储部分。
在全操作模式下更为有效的软件更新也已经是公知的,例如,可以通过通用串行总线(USB)进行。按照一种公知的方法,在完整的操作软件上进行软件更新,其中,首先将新软件下载到SDRAM中,随后下载到闪速存储器中。但是,这样做存在以下风险:如果在下载到闪速存储器中的期间发生任何故障,该设备将变得不能工作。
此外,已经公知的是,通过以太网接口、在引导操作期间下载文件。按照这种解决方案,闪速存储器包含引导代码,通常驻留在闪速存储器的顶部,并通过闪存程序设计工具对其进行编程。在上电设备板时,启动此引导代码,并用于通过以太网接口下载文件。为此目的,引导代码包括用于通过以太网端口发送自引导协议(bootstrapprotocol)(BOOTP)请求的自展协议(BOOTP)和用于通过以太网端口下载文件的普通文件传送协议(TFTP)。这种设备可以具有USB,其中,USB协议栈代码通常在操作软件中提供,而不在引导代码中提供,因为USB代码的规模太大,而不能放入具有如4Mb的通常规模的闪速存储器中。因此,在引导操作期间、通过USB更新软件是不可能的。
发明内容
本申请的目的在于提供一种设备、一种系统和一种方法,其在引导操作期间提供了更广泛的更新选项。
本发明提供了一种电子设备,如调制解调器等,所述电子设备具有在正常操作中以完整协议栈代码进行操作的接口,并且包括如闪速存储器等包含有用于引导所述设备的代码的非易失性存储器,其中,可以在所述设备的引导操作期间、通过所述接口更新所述设备的软件,而且所述引导代码包括针对所述接口的轻型协议栈代码(lightweight protocol stack code),所述轻型协议栈包括完整协议栈的层的子集。
在所述设备的正常操作中,在用于控制此接口的全部操作和处理与此接口相关联的所有协议的操作软件中通常提供了完整的协议栈代码。例如,典型的接口为USB、USB2或防火墙。为了提供更广泛的更新选项,以如下方式组织按照本发明的设备:通过此类接口,在引导操作期间,也可以更新所述设备的软件。
完整的协议栈代码通常占用大量的内存,并不适用于闪速存储器中的引导代码。按照设备的成本价格,希望限制闪速存储器的规模。因此,本发明的另一目的在于,使非易失性存储器中的相关引导代码的规模较小。此目的通过利用只包含了用于在引导操作期间处理接口的轻型协议栈代码的引导代码来实现。
按照本发明的另一实施例,所述引导代码包括用于检测所述接口的控制代码和用于通过所述接口进行传输和接收的协议处理代码。此引导代码能够通过此接口发送数据,可以将该数据放入所述设备的存储器中,以便更新此设备的软件。
在本发明的优选实施例中,所述接口为USB接口。通常在操作软件中提供作为相对较大的协议栈的完整的USB协议栈,然而,只利用轻型协议栈使引导代码较小,即减小存储器规模。
本发明的另一目的涉及一种电子设备,如调制解调器等,所述电子设备具有在正常操作中以完整协议栈代码进行操作的USB接口,其中,通过所述USB接口,在所述设备的引导操作期间,可以对所述设备的软件进行更新。
因此,在本发明的另一方面中,所述引导代码包括关于所述完整协议栈代码的USB映射部分的以太网。此部分并不支持在广域网(WAN)上进行通信所需的AAL5/ATM/USB(ATM:异步传送模式;AAL:ATM适配层)映射。换句话说,去除了一些层。但是,此部分确保了能够向如计算机等至少通过USB端口与所述电子设备相连的适当设备成功传输BOOTP请求必需的封装。更具体地,在引导操作期间使用BOOTP、用户数据报协议(UDP)和因特网协议(IP),以便允许在以太网上的BOOTP/UDP/IP封装。此外,与完整的栈相比,此USB上的以太网协议栈是轻型协议栈,因此,得到了较小的引导代码。
因此,在本发明的另一方面中,第二存储器包括用于在广域网(WAN)上进行通信的完整USB协议栈代码。此代码支持在正常操作期间、在广域网(WAN)上进行通信所需的AAL5/ATM/USB映射。
在优选实施例中,所述调制解调器还包括以太网接口,其中,引导代码包括用于在引导操作期间、通过所述以太网接口进行发射和接收的代码。这样使所述调制解调器能够通过USB接口或者以太网接口进行软件更新。
本发明还涉及一种将文件下载到按照上述实施例之一所述的电子设备中的系统,所述系统包括所述设备和设置有针对所述接口的驱动器的计算机,其中,所述计算机通过所述接口与所述设备相连,所述远程计算机包括可执行程序代码,以便与所述设备进行通信,并提供要被下载的文件。在USB接口的情况下,USB驱动器控制计算机内部的USB硬件,并且计算机上的软件可以通过一组程序接口与此驱动器进行通信。
此可执行程序代码通常在PC上表现为更新向导程序,所述更新向导程序是通过利用一系列对话框的过程、逐步指导用户的程序。
如果所述电子设备包括USB和以太网接口,则所述更新向导程序将能够通过USB或通过以太网端口进行更新。
在通常为计算机的USB主机与USB设备之间的基本通信原语是管道和端点(EP)。端点是USB主机与USB设备内部的一些功能之间的逻辑传输路径。端点通常在于只沿一个方向发送数据,并且将其应用于如管道等更为高级的通信路径。
按照根据本发明的系统的特定实施例,在USB接口的端点(EP)4和5上分别建立连接,以允许向USB设备发送和从USB设备发送的帧。端点与特定协议的应用相关,EP4和EP5的选择与在引导操作期间所使用的轻型协议有关。
为了使此连接成为可能,所述引导代码支持用于控制的EPO、用作块模式中软件下载接口的EP4和用作块模式中确认接口的EP5。其他端点在引导操作中被禁止,并且将除EP4和EP5之外的端点上的所有通信业务丢弃。
本发明也涉及一种用于将文件下载到设置有USB连接的电子设备的存储部分中的方法,所述方法包括以下步骤:
—将所述文件存储在一台或多台计算机中,其中,至少一台计算机设置有USB接口;
—至少通过通用串行总线(USB),将所述设备与一台或多台计算机相连;
—利用与完整USB协议栈相比较的缩减USB协议栈、通过所述USB接口、从所述设备向所述一台或多台计算机至少发送一条引导请求;
—从所述一台或多台计算机向所述设备至少发送一条引导回复;
—从所述设备向所述一台或多台计算机中的一台计算机发送文件传送请求;
—从所述一台计算机向所述设备发送所述存储文件。
按照此方法的优选方面,所述引导请求和引导回复使用BOOTP协议。对所述文件传送请求和所述存储文件的发送最好使用普通文件传送协议(TFTP)来进行。当文件被存储在设备的存储部分中时,方便地,可以根据下载的文件类型,从所述文件进行引导。
在此方法的特定实施例中,所述电子设备也通过以太网连接与至少一台计算机相连。在这种情况下,向USB和以太网接口发送引导请求。按照第一种可能,通过首先接收到引导回复的接口建立文件传送。按照另一种可能,所述设备查看从通过USB接口相连的计算机接收到的引导回复和从通过以太网接口相连的计算机接收到的引导回复。例如,根据要传送的文件的重要性或版本,所述设备可以将优先级赋予两个计算机之一。
附图说明
通过以下参照附图对本发明优选实施例的详细描述,本发明的其他特征和优点将变得更加清楚,其中:
图1是按照本发明的调制解调器系统的主要硬件部件的方框图;
图2按照本发明的方法示出了引导调制解调器系统的过程的流程图;
图3按照本发明的实施例示出了用于本系统的协议栈的方框图;
图4按照本发明的方法描述了在引导操作期间、调制解调器设备与计算机之间的通信过程;
图5是按照本发明示出了调制解调器设备的闪速存储器中不同的软件部件的示意图;
图6是描述了利用按照本发明的方法、通过USB实现软件的更新、包括调制解调器和计算机的系统的方框图;
图7是按照本发明描述了调制解调器的方框图,所述调制解调器通过以太网接口与第一PC相连,并且通过USB接口与第二PC相连。
具体实施方式
参照图1,给出了本发明调制解调器设备1的主要硬件部件的示意图。此硬件体系结构形成了电话线与一台或多台计算机之间的链路。电话线接口3通常为利用RJ-11连接器的DSL终端接口。
ADSL调制解调器设备1还包括第一模块2,第一模块2包含模拟前端和专用集成电路(ASIC),用于端接模拟线路接口,并将来自主控制器4的数字数据转换为模拟带通信号,ASIC将被称为ADSL ASIC。模拟前端模块由以下部分构成:高通滤波器,用于滤除简易老式电话业务(POTS)信号,以及允许ADSL信号通过;混合电路,如无源网络等,执行2线到4线转换,或反向转换,用于在上行和下行信号之间进行分离;上行线路驱动器;以及下行接收机滤波器。ADSL ASIC提供模数(A/D)和数模(D/A)转换。
主控制器4实质上包括数字ADSL调制解调器ASIC、以太网-ATM适配器和微处理器。
数字ADSL调制解调器ASIC包含信号调制器/解调器,利用DMT(数字多音频)调制方法,对来自以太网或USB接口的信号进行调制,并将其传送给ADSL ASIC,并进行相反的操作。
控制器具有联合存储池,由同步动态随机存取存储器5(SDRAM)和闪速电可编程序只读存储器(EPROM)6构成,闪速EPROM6是可以在模块中进行擦除和再次编程的非易失性存储器。闪速EPROM的大小通常为2Mb,可扩展到8Mb。通常具有8Mb大小的SDRAM通过具有如32位等宽度的总线与控制器进行通信。闪速EPROM通常允许16位存取。
以太网接口7通过专用接口与控制器相连。以太网接口7通常是具有RJ-45连接器的10/100BaseT接口。
包括专用USB集成电路的USB接口11通过并行接口与主控制器4相连,例如,并行接口由16位宽的数据总线和1位宽的地址总线构成。
此设备还设置有与内部电源8相连的标准电源插头9。电源在其输出提供了多个电压,例如,12V、3.3V和1.8V。这些电源为硬件部件提供了所需的电能。
此外,此设备通常包括多个视觉指示器——未示出——如LED(发光二极管)等,以给出对此设备不同的硬件部件的行为的指示。
在调制解调器的正常操作期间,此设备如下进行操作。利用封装在AAL5中的特定的虚通道和虚通路组合,从电话线接收ADSL信号,并转换为标准的ATM信元。这些组合确定输入的通信业务是否由操作和维护通信业务构成,或者是由不变地发送给USB或以太网的桥接以太网帧构成,或者是由要转发给USB或以太网的路由IP分组构成,在其由操作和维护通信业务构成的情况下由单板处理器进行路由和处理。
图2示出了引导调制解调器系统的过程的流程图。当板上电时,控制器开始执行来自内部ROM的代码,于是,跳转到闪速存储器中的引导代码的起始地址,这是板支持包(BSP)的入口点。现在,开始执行BSP。
将BSP中仍未执行的部分与引导代码一起复制到SDRAM中,后面是全局变量和初始数据。将程序计数器设置到SDRAM中的代码,并由控制器开始执行。在BSP完成其初始化时,程序跳转到引导代码的入口点。
现在,发送BOOTP请求消息,并开始运行BOOTP响应定时器。将参照图3和图4,对此消息的内容和所使用的协议栈进行详细的描述。之后,此设备等待回复。
在超时或无效回复的情况下,如箭头16所示,发送新的请求。例如,此再次发送的次数可以依赖于指定了在超时或无效回复的情况下重试次数的请求参数。在接收到有效回复消息的情况下,设置IP地址,并检查此回复消息的内容,如检查框17所示。
当回复消息包含文件名时,此过程中接下来的步骤是利用普通文件传送协议(TFTP)的文件下载,如方框18所示。这意味着,从主机向SDRAM传输数据分组,如以下详细描述的那样。
每次下载,均对传送文件的文件头进行检查。例如,文件具有以下格式:
4 0                            1                             2                          3
文件格式标识符
目的地起始地址
数据字段的循环冗余校验和
板类型 标签区域大小
标签代码 数值……(n个字节)
…… ……
文件数据(实际数据) ……
                         表1
表1中的每一行表示4个字节。文件头的前四个字节表示文件格式标识符,例如,包含BLI1,表示引导装入程序图像版本一。
在包含有SDRAM或闪速存储器中的目的地起始地址的接下来的四个字节中可以找到文件的目的地。
标签代码是可选的,并且可以包含所有类型的信息,例如,指定用于从文件进行引导的地址,文件数据总的大小等。
仍然参照图2,根据目的地,或者将数据留在SDRAM中,或者如参考数字22所示,将其闪存在闪速存储器中。在闪存在闪速存储器中的情况下,擦除包括了闪存认证图样的目的地区域,并写入数据;然后,例如,通过重新计算和比较出现在所发送文件的文件头(参见表1)中的循环冗余校验(CRC),对写入的数据进行检查。如果调制解调器所产生的校验数据于所发送的校验数据相同,则写入闪存认证图样。如果不相同,如线24所示,执行重新引导。
由询问框25所确定的过程中接下来的步骤依赖于BOOTP回复消息中的标记。选项为:在特定的文件入口点进行引导,由方框26表示,或者,如果在询问27出现了板支持包(BSP),根据此包执行二次引导,或者如果未出现板支持包,则从开始重新引导。
应当清楚的是,上面的描述只提供了处理中主要的步骤,而且大多数的操作使用了具有循环的超时方法,根据特定类型的调制解调器,可以重复多次。同样,可以执行一些额外的测试。
图3示出了引导代码所使用的协议栈:Init、普通文件传送协议(TFTP)、引导协议(BOOTP)、用户数据协议(UDP)、因特网控制消息协议(ICMP)、IP(因特网协议)、地址解析协议(ARP)、以太网、ETH USB(用于将以太网直接映射到USB的协议)。下面将解释各个协议的任务。
现在,参照图4,是描述了在引导操作期间下载文件并且未发生任何误码时、在调制解调器设备M与计算机PC之间的通信的示意图。首先,从调制解调器设备向PC发送BOOTP请求,如箭头28所示。此消息包含如MAC(媒体访问控制)地址、制造商指定信息等信息,并且在以太网和USB接口上进行发送。
参照图3,现在将解释如何对此BOOTP请求进行格式化。在初始化INIT模块30时,首先构成BOOTP请求的第一字段,并将其传递给BOOTP模块31,BOOTP模块31将构成完整的BOOTP请求,包括如MAC地址等信息。然后,UDP33、IP39和依赖于接口的以太网36或USB-以太网35模块在BOOTP帧向下通过协议栈时,将它们的报头添加在BOOTP帧上。在其到达物理层时,根据有效接口,通过USB和/或以太网网络进行广播。
MAC层34控制对以太网或USB接口的访问,地址解析协议(ARP)38用于将IP地址转换为用于传输帧的物理地址。因特网控制消息协议(ICMP)允许通过发送ICMP消息,考虑如阻塞问题等功能异常。当接收到这种消息时,由IP解决此问题。
在发送BOOTP请求时,调制解调器设备M将开始等待BOOTP回复。有效BOOTP回复必须包含所需信息,例如,分配给调制解调器的IP地址、包含在按照本实施例的PC中的TFTP服务器的信息、具有要下载的全路径的文件名等。当首先从USB接口接收到BOOTP回复时,通过USB接口进行进一步的通信,其中,对于以太网接口也是如此。在此实施例中,首先回复的PC获得优先级。如背景介绍中所解释的那样,其他实现方式是可能的,例如,将优先级赋予存储了最新更新文件的PC。
箭头29和40描述了,在调制解调器设备已经接收到有效BOOTP回复时,调制解调器设备初始化TFTP传送,向处于BOOTP回复中所指定的IP地址的TFTP服务器发送TFTP请求。此请求也可以包含对于8192字节的TFTP块大小的选择协商。
现在,调制解调器等待第一数据分组到达。当数据分组到达时,对文件头进行分析,确定起始地址,该起始地址表示是必须闪存该文件,还是立即放置于SDRAM中的正确地址处,在必须闪存该文件的情况下,必须首先在SDRAM中进行缓存。
在已经将第一分组的数据成功地放置在SDRAM中之后,向计算机发送确认分组(ACK),如箭头42所示。重复这些步骤,直到接收到最后一个分组为止。
图5示意性地示出了驻留在通常具有2Mb大小的闪速存储器中的不同的软件部件。引导代码50通常填充闪速存储器的上128kb,并包括USB代码的以太网协议处理部分(ETH USB)。此区域还使用板支持包(BSP),以访问如LED和定时器等几个硬件部件。
闪速存储器还包括52中的操作软件、针对正常操作目的的文件系统和文件系统所使用的空间。
现在,参照图6,是描述了在调制解调器设备M的软件更新期间所使用的、在通过USB63或以太网62接口与所述调制解调器相连的PC上运行向导61的协议的方框图。当USB接口63有效时,并且在启动向导61时,建立到USB驱动器的连接。
当调制解调器M通过USB接口与向导相连时,向导将监听调制解调器M发送的BOOTP请求。从调制解调器的USB接口通过EP5到达的BOOTP请求将被封装在UDP/IP/ETH/USB帧中。USB驱动器64对此帧进行解封装,解为UDP/IP/ETH帧,因此,将对这些帧进行进一步的解封装,并传送给向导61。
然后,向导61向USB驱动器64发送BOOTP回复,此BOOTP回复将被封装在UDP/IP/ETH中。然后,USB驱动器将所接收到的分组通过EP4转发给USB设备。
以相同的方式,调制解调器M然后发送将被向导61接收到的TFTP请求,依次将通过利用TFTP发送所请求的文件,进行回复。
当调制解调器M通过以太网接口与向导相连时,发生模拟过程。
参照图7,调制解调器M通过以太网接口与第一PC1相连,并通过USB接口68与第二PC2相连。在这种情况下,向导61将只向针对TFTP传送进行了初始化的接口上载软件,而不是向以太网和USB接口都传送。
这里描述和示出的描述性实施例具体地涉及了一种基于PC的操作系统。但是,应当理解的是,本发明并不局限于基于PC的操作系统,也可以利用Unix和Macintosh系统或具有USB接口的任何其他系统,来应用本发明。
尽管这里已经描述和阐述了特定的实施例,应当清楚的是,本发明也包括修改和变化;本发明的范围根据所附权利要求而确定。

Claims (10)

1、一种电子设备,如调制解调器等,所述电子设备具有在正常操作中以完整协议栈代码进行操作的接口,并且包括如闪速存储器等包含有用于引导所述设备的代码的非易失性存储器,其特征在于,在所述设备的引导操作期间、通过所述接口更新所述设备的软件,而且所述引导代码包括针对所述接口的轻型协议栈代码(lightweightprotocol stack code),所述轻型协议栈包括完整协议栈的层的子集。
2、按照权利要求1所述的设备,其特征在于所述引导代码包括用于检测所述接口的控制代码和用于通过所述接口进行传输和接收的协议处理代码。
3、按照前述权利要求之一所述的设备,其特征在于所述接口为USB接口。
4、按照权利要求3所述的设备,其特征在于所述引导代码包括所述完整协议栈代码的以太网在USB上的映射部分。
5、按照权利要求3或4所述的设备,具有第二存储器,其特征在于所述第二存储器包括用于在广域网(WAN)上进行通信的完整USB协议栈代码。
6、按照前述权利要求之一所述的设备,其特征在于还包括以太网接口和用于在引导操作期间、通过所述以太网接口进行传输和接收的代码。
7、一种将文件下载到按照上述实施例之一所述的电子设备中的系统,所述系统包括所述设备和设置有针对所述接口的驱动器的计算机,其特征在于,所述计算机通过所述接口与所述设备相连,其中,所述远程计算机包含可执行程序代码,以便与所述设备进行通信,并提供要被下载的文件。
8、按照权利要求7所述的系统,其中所述接口是USB接口,其特征在于在USB接口的端点(EP)4和5上分别建立连接,以允许向USB设备发送和从USB设备发送帧。
9、一种用于将文件下载到设置有USB连接的电子设备的存储部分中的方法,所述方法包括以下步骤:
—将所述文件存储在一台或多台计算机中,其中,至少一台计算机设置有USB接口;
—至少通过通用串行总线(USB),将所述设备与一台或多台计算机相连;
—利用与完整USB协议栈相比较的缩减USB协议栈、通过所述USB接口、从所述设备向所述一台或多台计算机至少发送一条引导请求;
—从所述一台或多台计算机向所述设备至少发送一条引导回复;
—从所述设备向所述一台或多台计算机中的一台计算机发送文件传送请求;
—从所述一台计算机向所述设备发送所述存储文件。
10、按照权利要求9所述的方法,用于将文件下载到设置有USB和以太网连接的电子设备的存储部分中,其特征在于所述电子设备通过以太网连接与至少一台计算机相连。
CN200310115609A 2002-11-13 2003-11-10 通过usb连接的软件更新 Expired - Lifetime CN100581207C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP02447218A EP1420560A1 (en) 2002-11-13 2002-11-13 Software upgrade over a USB connection
EP02447218.5 2002-11-13

Publications (2)

Publication Number Publication Date
CN1574871A true CN1574871A (zh) 2005-02-02
CN100581207C CN100581207C (zh) 2010-01-13

Family

ID=32116372

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200310115609A Expired - Lifetime CN100581207C (zh) 2002-11-13 2003-11-10 通过usb连接的软件更新

Country Status (6)

Country Link
US (1) US7272706B2 (zh)
EP (1) EP1420560A1 (zh)
JP (2) JP2004178575A (zh)
KR (1) KR101033966B1 (zh)
CN (1) CN100581207C (zh)
MX (1) MXPA03010274A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009012698A1 (fr) * 2007-07-20 2009-01-29 Huawei Technologies Co., Ltd. Modem
CN101470676B (zh) * 2007-12-28 2012-05-30 希姆通信息技术(上海)有限公司 Usb调制解调器自动安装并运行管理软件的方法

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677117B2 (en) * 2003-12-31 2014-03-18 International Business Machines Corporation Remote management of boot application
US7720943B2 (en) * 2004-07-26 2010-05-18 Centillium Communications, Inc. Communication device for obtaining an application image or configuration from a service provider
FR2874440B1 (fr) * 2004-08-17 2008-04-25 Oberthur Card Syst Sa Procede et dispositif de traitement de donnees
US8260968B2 (en) * 2006-01-23 2012-09-04 Lantiq Deutschland Gmbh Method and system for booting a software package on a network processor
US20070255868A1 (en) * 2006-04-26 2007-11-01 Cisco Technology, Inc. (A California Corporation) Method and system for managing a network device using a slave USB interface
CN100456244C (zh) * 2006-08-23 2009-01-28 王悦 基于USB Host的引导、升级和维护的仪器及其方法
US7899090B2 (en) * 2006-12-22 2011-03-01 Dell Products L.P. Remote installation performance over management controllers in monolithic and modular systems
CN101627605A (zh) 2007-03-09 2010-01-13 奥蒂斯电梯公司 在计算机系统中用于执行数据传输的方法及相应的设备
US8140837B2 (en) * 2008-11-05 2012-03-20 International Business Machines Corporation Automatically making selective changes to firmware or configuration settings
US9870220B2 (en) * 2008-12-05 2018-01-16 Advanced Micro Devices, Inc. Memory flash apparatus and method for providing device upgrades over a standard interface
JP2010257367A (ja) * 2009-04-28 2010-11-11 Sanyo Electric Co Ltd プログラムの更新システム、プログラム更新機能付き電子機器
TWI387926B (zh) * 2009-07-10 2013-03-01 Wistron Neweb Corp 更新程式區段之方法
EP2302851B1 (en) * 2009-09-29 2012-04-18 Alcatel Lucent Power supply arrangement for line termination units
CN102291282B (zh) * 2010-06-17 2014-12-31 国基电子(上海)有限公司 电缆调制解调器及其支持多种分组电缆标准的方法
CN102201903A (zh) * 2011-06-07 2011-09-28 合肥华云通信技术有限公司 一种简单可靠的远程文件传输方法
CN103376903A (zh) * 2012-04-28 2013-10-30 鸿富锦精密工业(深圳)有限公司 键盘及具有该键盘的电子装置
US20150169837A1 (en) * 2013-12-18 2015-06-18 Lifescan Scotland Limited Externally powered test meter firmware upgrade
WO2021152654A1 (ja) * 2020-01-27 2021-08-05 三菱電機株式会社 空調サービスシステムおよび空調サービス方法
CN114385217A (zh) * 2021-11-30 2022-04-22 北京微纳星空科技有限公司 一种多路cpu应用程序的升级方法、装置、设备及存储介质
CN115242633B (zh) * 2022-06-23 2024-04-09 惠州华阳通用电子有限公司 一种基于usb以太网的车载设备升级方法及装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5268928A (en) * 1991-10-15 1993-12-07 Racal-Datacom, Inc. Data modem with remote firmware update
US5452454A (en) * 1991-12-10 1995-09-19 Digital Equipment Corporation Generic remote boot for networked workstations by creating local bootable code image
US6031867A (en) * 1993-07-02 2000-02-29 Multi-Tech Systems, Inc. Modem with firmware upgrade feature
US5845077A (en) * 1995-11-27 1998-12-01 Microsoft Corporation Method and system for identifying and obtaining computer software from a remote computer
US6308061B1 (en) * 1996-08-07 2001-10-23 Telxon Corporation Wireless software upgrades with version control
ES2284448T3 (es) * 1997-05-14 2007-11-16 Citrix Systems, Inc. Sistema y procedimiento para transmitir datos desde una aplicacion de servidor a nodos cliente.
US6135651A (en) * 1997-05-29 2000-10-24 Cirrus Logic, Inc. Patching apparatus and method for upgrading modem software code
JP4258579B2 (ja) * 1998-12-21 2009-04-30 株式会社ニコン プログラム書き換え装置
US5974547A (en) * 1998-03-20 1999-10-26 3Com Corporation Technique for reliable network booting of an operating system to a client computer
US6457175B1 (en) * 1998-11-09 2002-09-24 Tut Systems, Inc. Method and apparatus for installing a software upgrade within a memory resource associated with a computer system
AU3397300A (en) * 1999-03-10 2000-09-28 Automation Control Products Llc Methods and systems for reduced configuration dependency in thin client applications
JP2001117778A (ja) * 1999-10-15 2001-04-27 Nec Shizuoka Ltd ファームウェア書き換え機能を備えたusb装置
US6601212B1 (en) * 2000-03-29 2003-07-29 Hewlett-Packard Development Company, Lp. Method and apparatus for downloading firmware to a non-volatile memory
JP2001337936A (ja) * 2000-05-26 2001-12-07 Victor Co Of Japan Ltd クライアント装置
US6735692B1 (en) * 2000-07-11 2004-05-11 International Business Machines Corporation Redirected network boot to multiple remote file servers
FR2815494B1 (fr) 2000-10-12 2003-01-10 Schneider Automation S A Methode de configuration d'un module d'automatisme sur un reseau tcp/ip
JP2002132527A (ja) * 2000-10-26 2002-05-10 Fuji Heavy Ind Ltd 車載用電子制御装置
JP4793798B2 (ja) * 2000-11-10 2011-10-12 オンセミコンダクター・トレーディング・リミテッド マイクロコンピュータ
US20020083362A1 (en) * 2000-12-22 2002-06-27 Objectsoft Corp. System and method for providing unattended personality acquisition, self-recovery and remote maintenance to internet-based end-user devices
JP2002320115A (ja) * 2001-04-24 2002-10-31 Olympus Optical Co Ltd デジタルカメラ、及びデジタル撮像システム
US20040049617A1 (en) * 2002-09-05 2004-03-11 Integrated Circuit Solution Inc. Method of firmware update by USB interface
US7043664B1 (en) * 2002-10-31 2006-05-09 Microsoft Corporation Firmware recovery
US20050268928A1 (en) * 2004-06-04 2005-12-08 Teresa Lane Hair accessory

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009012698A1 (fr) * 2007-07-20 2009-01-29 Huawei Technologies Co., Ltd. Modem
CN101470676B (zh) * 2007-12-28 2012-05-30 希姆通信息技术(上海)有限公司 Usb调制解调器自动安装并运行管理软件的方法

Also Published As

Publication number Publication date
EP1420560A1 (en) 2004-05-19
CN100581207C (zh) 2010-01-13
JP2011146060A (ja) 2011-07-28
KR101033966B1 (ko) 2011-05-11
US20040103177A1 (en) 2004-05-27
KR20040042820A (ko) 2004-05-20
US7272706B2 (en) 2007-09-18
MXPA03010274A (es) 2004-12-06
JP2004178575A (ja) 2004-06-24

Similar Documents

Publication Publication Date Title
CN1574871A (zh) 通过usb连接的软件更新
CN1140090C (zh) 分组网络中的接口及其操作方法
CN1170401C (zh) 给网络接口卡分配互连网络协议地址的装置和方法
CN1123154C (zh) 路由选择动态主机配置协议分组的装置和方法
CN1520556A (zh) 使用本地标识符的端节点分区
CN101778378B (zh) 一种固件节点更新方法、装置和系统
CN1154937C (zh) 远程禁止客户计算机系统的数据处理系统和方法
CN106301959A (zh) 基于windows和linux平台的网关批量升级方法及系统
CN1391677A (zh) 带有诊断功能的自含式网络浏览器
CN1267026A (zh) 允许服务器远程访问计算机系统资产信息的系统和方法
CN103501288B (zh) 一种对二层交换设备实现批量数据升级的方法
CN1926840A (zh) 在至少两台计算设备间建立连接时的地址和端口号提取
CN101782841A (zh) 配置及安装无线打印环境的电子装置及方法
CN1414735A (zh) 一种二层交换设备的数据升级方法
CN104901990B (zh) 基于物联网的传感器柔性接入系统及其柔性接入方法
CN101039217A (zh) 升级控制方法及控制装置
CN110493055B (zh) Fpga卡配置方法、装置、系统及可读存储介质
CN101312412B (zh) 一种基于嵌入式的以太网传输系统
CN1249572C (zh) 一种即插即用的以太网接入系统与方法
CN107426263A (zh) 数据包的发送、接收方法及装置、电子设备
CN1127243C (zh) 远程访问客户系统个别初始化设定的数据处理系统和方法
EP1426860B1 (en) Software upgrade over a USB connection
CN1896976A (zh) 在线刻录系统及其方法
CN1281031C (zh) 将宽带网络用户接入互联网的方法和设备
CN115297187B (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
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: I Si Eli Murli Nor, France

Patentee after: THOMSON LICENSING

Address before: La France

Patentee before: THOMSON LICENSING

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190529

Address after: Paris France

Patentee after: Interactive digital CE patent holding Co.

Address before: I Si Eli Murli Nor, France

Patentee before: THOMSON LICENSING

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20100113