CN104412237A - 外围设备、外围设备的控制方法、固件的下载系统以及程序 - Google Patents

外围设备、外围设备的控制方法、固件的下载系统以及程序 Download PDF

Info

Publication number
CN104412237A
CN104412237A CN201380032294.XA CN201380032294A CN104412237A CN 104412237 A CN104412237 A CN 104412237A CN 201380032294 A CN201380032294 A CN 201380032294A CN 104412237 A CN104412237 A CN 104412237A
Authority
CN
China
Prior art keywords
identifying information
epigyny device
rewriting
peripherals
download 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.)
Granted
Application number
CN201380032294.XA
Other languages
English (en)
Other versions
CN104412237B (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.)
Nidec Sankyo Corp
Original Assignee
Nidec Sankyo Corp
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 Nidec Sankyo Corp filed Critical Nidec Sankyo Corp
Publication of CN104412237A publication Critical patent/CN104412237A/zh
Application granted granted Critical
Publication of CN104412237B publication Critical patent/CN104412237B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • G06F12/0653Configuration or reconfiguration with centralised address assignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer
    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本案提供外围设备、外围设备的控制方法、固件的下载系统以及程序,该外围设备能防止与旧型外围设备对应的程序数据被从上位装置下载,且能避免具有外围设备的系统停机。例如,若存储于上位装置(20)的下载文件(23)包含用于允许重写为程序数据的重写许可数据,则外围设备(30A)将程序数据重写为从上位装置(20)发送的程序数据,并将数据重写的正常结束应答返回至上位装置(20),若不包含重写许可数据,则不将存储于外围设备(30A)的程序数据重写为从上位装置(20)发送的程序数据,就将数据重写的正常结束应答返回至上位装置(20),并将包含于下载文件的其识别信息存储于外围设备(30A)的识别信息存储部(32A)。

Description

外围设备、外围设备的控制方法、固件的下载系统以及程序
技术领域
本发明涉及一种外围设备,该外围设备与上位装置连接且能够从上位装置下载使外围设备工作的固件的程序数据。并且,本发明涉及一种该外围设备的控制方法以及具有能够与外围设备连接的上位装置的固件的下载系统以及程序。
背景技术
有一种固件的下载方法,用于从上位装置向读卡器下载固件的程序数据(例如,参考专利文献1)。
在专利文献1所记载的下载方法中,包含程序数据的下载文件存储在上位装置中,在存储在上位装置中的下载文件的版次信息与上位装置向读卡器下达的版次获取命令的响应不一致的情况下,从上位装置向读卡器下载程序数据。
现有技术文献
专利文献
专利文献1:日本特开2004-13782号公报
发明内容
发明所要解决的课题
但是,为了提高与上位装置连接的读卡器的功能或应对使用中的部件的制造中止问题,有时从旧型读卡器更换为新型读卡器。
但是,不能确保存储在上位装置中的固件的程序数据就是与新型读卡器对应的程序数据。例如,在存储在上位装置中的固件的程序数据是与旧型读卡器对应的程序数据的情况下,有时将新型读卡器与上位装置连接。
在将新型读卡器与上位装置连接且与旧型读卡器对应的程序数据存储在上位装置中的情况下,若利用专利文献1所记载的下载方法进行下载,则有可能导致与旧型读卡器对应的程序数据被下载至新型读卡器。即,存在以下问题:根据存储在上位装置中的程序数据而导致与旧型读卡器对应的程序数据被下载至为了提高功能或为了应对使用部件的制造中止问题而生产的新型读卡器。
其结果是,尽管将与上位装置连接的读卡器更换为新型读卡器,也有可能无法提高其功能,或无法应对使用部件的制造中止问题。并且,若与旧型读卡器对应的程序数据被下载至新型读卡器,则有可能导致新型读卡器无法工作。
为了防止与旧型读卡器对应的程序数据被下载至新型读卡器,在与旧型读卡器对应的程序数据存储在上位装置中的情况下,新型读卡器只要拒绝下载与旧型读卡器对应的程序数据即可。即,只要新型读卡器对来自上位装置的程序数据的下载命令等返回下载拒绝应答即可。
但是,若新型读卡器返回下载拒绝应答,则无法正常结束上位装置侧的下载处理,有可能导致具有上位装置的系统停机,即有可能导致系统整体的工作停止。
本发明的目的在于提供一种能够防止与旧型外围设备对应的程序数据被从上位装置下载且能够避免具有外围设备的系统停机的外围设备、外围设备的控制方法、固件的下载系统以及程序。
用于解决课题的方法
本发明的第一方面的外围设备与上位装置连接,且能够从所述上位装置下载包含使所述外围设备工作的固件的程序数据的下载文件,所述外围设备的特征在于,包括:识别信息存储部,所述识别信息存储部能够存储所述下载文件的识别信息;程序存储部,所述程序存储部至少将程序数据以可重写的方式存储;以及控制部,所述控制部对存储在所述程序存储部中的所述程序数据的重写进行控制,所述下载文件具有所述下载文件的识别信息以及重写许可数据中的至少所述识别信息,所述重写许可数据用于允许所述控制部对存储在所述程序存储部中的程序数据进行重写,在所述下载文件中包含所述重写许可数据的情况下,所述控制部进行正常重写,将存储在所述程序存储部中的所述程序数据重写为从所述上位装置发送来的所述程序数据,并将所述数据重写的正常结束应答返回至所述上位装置,在所述下载文件中不包含所述重写许可数据的情况下,所述控制部进行虚拟重写,不将存储在所述程序存储部中的所述程序数据重写为从所述上位装置发送来的所述程序数据,就将数据重写的正常结束应答返回至所述上位装置,并且,所述控制部将所述下载文件的所述识别信息存储在所述识别信息存储部中。
本发明的第二方面的外围设备的控制方法,所述外围设备与上位装置连接,且所述外围设备能够从所述上位装置下载包含使所述外围设备工作的固件的程序数据的下载文件,所述外围设备的控制方法的特征在于,包括如下步骤:重写许可判別步骤,所述重写许可判別步骤判别重写许可数据是否包含于从所述上位装置下载的下载文件,所述重写许可数据用于允许将存储在所述外围设备中的所述程序数据重写为存储在所述上位装置中的所述程序数据;正常重写步骤,在所述重写许可判別步骤中判别出所述重写许可数据包含于所述下载文件的情况下,所述正常重写步骤将存储在所述外围设备中的所述程序数据重写为从所述上位装置发送来的所述程序数据,并将数据重写的正常结束应答返回至所述上位装置;虚拟重写步骤,在所述重写许可判別步骤中判别出所述重写许可数据不包含于所述下载文件的情况下,所述虚拟重写步骤不将存储在所述外围设备中的所述程序数据重写为从所述上位装置发送来的所述程序数据,就将数据重写的正常结束应答返回至所述上位装置;识别信息存储步骤,所述识别信息存储步骤将包含于所述下载文件的该下载文件的识别信息存储在所述外围设备的识别信息存储部中;以及识别信息返回步骤,在从所述上位装置接收到所述识别信息的发送要求时,所述识别信息返回步骤将存储在所述识别信息存储部中的所述识别信息返回至所述上位装置。
本发明的第三方面的固件的下载系统的特征在于,所述固件的下载系统包括:至少一个外围设备;以及上位装置,所述上位装置与所述外围设备连接,且所述上位装置能够将包含使所述外围设备工作的固件的程序数据的下载文件下载至所述外围设备,所述外围设备至少由上述外围设备构成。
一种执行外围设备的控制处理的控制部的程序,所述外围设备能够从所述上位装置下载包含程序数据的下载文件,所述程序的特征在于,包括如下处理:重写许可判別处理,所述重写许可判別处理判别重写许可数据是否包含于从所述上位装置下载的下载文件,所述重写许可数据用于允许将存储在所述外围设备中的所述程序数据重写为存储在所述上位装置中的所述程序数据;正常重写处理,在所述重写许可判別处理中判别出所述重写许可数据包含于所述下载文件的情况下,所述正常重写处理将存储在所述外围设备中的所述程序数据重写为从所述上位装置发送来的所述程序数据,并将数据重写的正常结束应答返回至所述上位装置;虚拟重写处理,在所述重写许可判別处理中判别出所述重写许可数据不包含于所述下载文件的情况下,所述虚拟重写处理不将存储在所述外围设备中的所述程序数据重写为从所述上位装置发送来的所述程序数据,就将数据重写的正常结束应答返回至所述上位装置;识别信息存储处理,所述识别信息存储处理将包含于所述下载文件的该下载文件的识别信息存储在所述外围设备的识别信息存储部中;以及识别信息返回处理,在从所述上位装置接收到所述识别信息的发送要求时,所述识别信息返回处理将存储在所述识别信息存储部中的所述识别信息返回至所述上位装置。
发明效果
根据本发明,能够防止与旧型外围设备对应的程序数据被从上位装置下载,且能够避免具有外围设备的系统停机。
附图说明
图1是示出本发明的实施方式所涉及的固件的下载系统的概略结构的框图。
图2是示出存储在图1所示的上位装置中的下载文件的数据结构的一例的示意图。
图3是用于说明连接于图1所示的上位装置的读卡器与存储在上位装置中的下载文件的组合模式的示意图。
图4是示出在图1所示的上位装置中下载固件时的处理流程的一例的流程图。
图5是示出在图1所示的读卡器中下载固件时的处理流程的一例的流程图。
图6是示出本发明的另一实施方式所涉及的下载文件的数据结构的一例的示意图。
图7是示出在本发明的另一实施方式所涉及的读卡器中下载固件时的处理流程的一例的流程图。
图8是示出本发明的另一实施方式所涉及的固件的下载系统的概略结构的框图。
图9是示出本发明的又一实施方式所涉及的固件的下载系统的概略结构的框图。
具体实施方式
以下,结合附图对本发明的实施方式进行说明。
<固件的下载系统的结构>
图1是示出本发明的实施方式所涉及的固件的下载系统10的概略结构的框图。图2是示出存储在图1所示的上位装置20中的下载文件的数据结构的一例的示意图。图3是用于说明连接于图1所示的上位装置20的读卡器30与存储在上位装置20中的下载文件的组合模式的示意图。
如图1所示,本实施方式的固件的下载系统10(以下称“下载系统10”)包括主机等上位装置20以及以能够与上位装置20进行通信的方式与上位装置20连接的作为外围设备的读卡器30(30A、30B)。上位装置20与读卡器30以能够借助RS232C和USB(Universal Serial Bus)等通信接口进行通信的方式连接。该下载系统10从上位装置20向读卡器30下载使作为外围设备的读卡器30工作的固件的程序数据231(参考图2)。
在本实施方式的下载系统10中,作为一例,能够将为了提高功能或应对使用中的部件的制造中止问题而制造的新型读卡器30即第一读卡器30A以及比第一读卡器30A老式的读卡器30即第二读卡器30B与上位装置20连接。在本实施方式中,例如第一读卡器30A和第二读卡器30B中的任一台与上位装置20连接。本实施方式的第一读卡器30A相当于外围设备(第一外围设备),第二读卡器30B相当于第二外围设备。
[上位装置的构成例]
上位装置20包括下载控制部21以及硬盘驱动器等外部存储部22。下载控制部21包括上位装置20内的通信功能部和控制用程序等。下载控制部21进行用于将程序数据231(图2)下载至读卡器30的控制。
并且,在外部存储部22内存储有包含程序数据231的下载文件23。
在本实施方式中,作为一例,在上位装置20的外部存储部22内存储有包含与第一读卡器30A对应的程序数据231的下载文件23A(参考图3(A)、图3(C))和包含与第二读卡器30B对应的程序数据231的下载文件23B(参考图3(B)、图3(D))中的任意一个。
<下载文件的构成例>
在此,结合图2对本实施方式所涉及的下载文件23的构成例进行说明。
在图2的例子中,在下载文件23中除了记述(记载)有程序数据231之外,还记述有第一行的版次信息(版头)232、第二行的删除命令233、配置于第三行之后的各行程序数据231的最前头的下载命令234以及最后一行的文件结束标记(EOF:End Of File mark,文件结束符)235。
即,在图2的例子中,在下载文件23中,版次信息232被记述在下载文件23的第一行,删除命令233被记述在下载文件23的第二行。下载命令234以及程序数据231被记述在下载文件23的第三行之后,文件结束标记235被记述在下载文件23的最后一行。
版次信息232是下载文件23中的程序数据231的修订信息。版次信息232的格式例如与在上位装置20向读卡器30下达程序数据的版次获取命令时获得的来自读卡器30的响应(应答)的格式相同。版次获取命令是用于获取存储在读卡器30中的程序数据的版次信息的命令。
另外,下载文件23的初始行(第一行)的版次信息(版头)232是上位装置20用的信息,基本上不会发送至作为外围设备的读卡器30。
删除命令233是用于消除(删除)读卡器30的作为后述程序存储部的固件存储部中的指定区域的命令。
下载文件23中的第三行之后的各行程序数据231分别被事先整理成适合上位装置20与读卡器30之间的通信协议的规定的数据形式以及数据长度,并被设定为下载命令234。
并且,在图2的例子中,例如在第三行的程序数据231中(作为程序数据在第一行中)记述有重写许可数据236,所述重写许可数据236允许在作为下载端的读卡器30中进行程序数据的重写。
在本实施方式中,在包含例如与第一读卡器30A对应的程序数据231的下载文件23A中的第三行的程序数据231中记述有重写许可数据236,所述重写许可数据236用于允许读卡器侧的重写控制部将存储在读卡器30A中的程序数据重写为存储在外部存储部22中的下载文件23A的程序数据231。而在包含与第二读卡器30B对应的程序数据231的下载文件23B中的第三行的程序数据231中未记述有该重写许可数据236。
另外,重写许可数据236既可以通过经加密的密文记述在程序数据231中,也可以通过未加密的明文记述在程序数据231中。
并且,在图2的例子中,在第五行的程序数据231中(作为程序数据在第三行中)记述(记载)有将要下载的下载文件23的识别信息(识别用ID)237。另外,识别信息237既可以通过经加密的密文记述在程序数据231中,也可以通过未加密的明文记述在程序数据231中。
在本实施方式中,版次信息(版头)232与识别信息(识别用ID)237使用相同的数据。
图2仅是一个例子,被记述在程序数据231中的重写许可数据236和识别信息237配置在预先设定的规定位置即可,优选配置在程序数据231的最前侧,以便能够在上位装置20或读卡器30侧提早识别并获取。
在本实施方式中,在从上位装置20向读卡器30下载程序数据231时,在从下载文件23的第一行读入的版次信息232与读卡器30侧的作为版次获取命令的应答接收的程序数据的版次不一致时,下载控制部21执行下载处理。之后,下载控制部21确认读卡器30侧是否过渡至下载模式,若确认到过渡至下载模式,则按每一行读入下载文件23的第二行之后的行,并将所读入的一行作为命令下达至读卡器30。若所读入的一行例如是下载文件23的第二行,则下载控制部21向读卡器30下达删除命令233。并且,若所读入的一行是下载文件23的第三行之后的行,则下载控制部21将下载命令234与被整理的程序数据231一同下达至读卡器30。下载控制部21根据读卡器30的应答并按照有无接收到正常结束应答来判断是否正常执行了命令。
关于与写入许可数据236以及识别信息237的下载相关的应用在后面进行详细叙述。
并且,本实施方式的下载控制部21具有根据情况将最前头的版次信息(版头)行命令化,并作为识别信息(识别用ID)发送命令发送的功能。在本实施方式中,在下载文件的程序数据231的规定位置配置有识别信息(识别用ID),但若考虑其他外围设备在内,则其配置位置并不全部统一。因此,在本实施方式中,重新设置目前不发送至外围设备的将识别信息(识别ID)文本化的识别用ID通知命令。下载控制部21进行生成这种发送命令的处理等并发送该命令,并通过接收正常应答来实现为该命令。
[读卡器(外围设备)的构成例]
读卡器30例如由手动式读卡器或卡片搬运式读卡器构成,所述手动式读卡器是以手动方式使卡片移动并对记录于卡片的磁数据进行读取等的读卡器,所述卡片搬运式读卡器是通过卡片的搬运机构搬运卡片并对记录于卡片的磁数据进行读取等的读卡器。
读卡器30基本上包括读卡器控制部31以及识别信息存储部32作为主构成要素。读卡器控制部31包括只读存储器(ROM)、随机存取存储器(RAM)、非易失性存储器等存储构件和中央处理器(CPU)等运算构件等,对读卡器30整体的工作等进行控制。如图1所示,读卡器控制部31具有作为程序存储部的固件存储部311以及重写控制部312。固件存储部311中存储有包含程序数据的固件。固件存储部311由存储器等构成,以可重写的方式存储程序数据。并且,固件存储部311对已存储的程序数据的版次信息进行存储。重写控制部312对存储在固件存储部311中的程序数据的重写进行控制。识别信息存储部32以包含在读卡器控制部31内的形式配置,在读卡器控制部31的控制下,在本实施方式中在重写控制部312的控制下,以可消除的方式存储有记述在下载文件23中的识别信息。关于该控制在后面进行叙述。
以上是读卡器30的基本的构成例,但无论是新型的第一读卡器30A和旧型的第二读卡器30B,都包括基本上相同的功能。但是,在旧型的第二读卡器30B中没有配置识别信息存储部32。
即,读卡器30A包括读卡器控制部31A以及识别信息存储部32A作为主构成要素。读卡器控制部31A包括只读存储器(ROM)、随机存取存储器(RAM)、非易失性存储器等存储构件和中央处理器(CPU)等运算构件等,对读卡器30A整体的工作等进行控制。如图1所示,读卡器控制部31A具有作为程序存储部的固件存储部311A以及重写控制部312A。固件存储部311A中存储有包含程序数据的固件。固件存储部311A由存储器等构成,以可重写的方式存储程序数据。并且,固件存储部311A对已存储的程序数据的版次信息进行存储。重写控制部312A对存储在固件存储部311A中的程序数据的重写进行控制。识别信息存储部32A以包含在读卡器控制部31A内的形式配置,在读卡器控制部31A的控制下,在本实施方式中在重写控制部312A的控制下,以可消除的方式存储有记述在下载文件23中的识别信息。
同样地,读卡器30B具有读卡器控制部31B作为主构成要素。读卡器控制部31B包括只读存储器(ROM)、随机存取存储器(RAM)、非易失性存储器等存储构件和中央处理器(CPU)等运算构件等,对读卡器30B整体的工作等进行控制。如图1所示,读卡器控制部31B具有作为程序存储部的固件存储部311B以及重写控制部312B。固件存储部311B中存储有包含程序数据的固件。固件存储部311B由存储器等构成,以可重写的方式存储程序数据。并且,固件存储部311B对已存储的程序数据的版次信息进行存储。重写控制部312B对存储在固件存储部311B中的程序数据的重写进行控制。
另外,存储识别信息237的识别信息存储部32(A)由例如闪速存储器等非易失性存储器构成。并且,在图1的例子中,固件存储部311(A、B)以包含在读卡器控制部31(A、B)内这样的结构示出,但只要是在读卡器控制部31(A、B)的重写控制部312的控制下即可,不限定于图1的结构。并且,由读卡器控制部31(A)以及重写控制部312(A)中的至少一个构成了本发明所涉及的控制部。
接着,以读卡器30为例,对本实施方式所涉及的读卡器30侧的下载文件的下载的控制处理进行说明。
在从上位装置20下载的下载文件23中包含重写许可数据236的情况下,读卡器30的读卡器控制部31进行下一个处理,所述重写许可数据236允许重写控制部312对存储在固件存储部311中的程序数据进行重写。此时,读卡器控制部31进行正常重写,将存储在作为程序存储部的固件存储部311中的程序数据重写为从上位装置20发送的程序数据231,并将数据重写的正常结束应答返回至上位装置20。
在从上位装置20下载的下载文件23中不包含重写许可数据的情况下,读卡器控制部31进行下一个处理。此时,读卡器控制部31进行虚拟重写,不将存储在作为程序存储部的固件存储部311中的程序数据重写为从上位装置20发送的程序数据,就将数据重写的正常结束应答返回至上位装置20。
读卡器控制部31与重写处理并列地获取(提取)记述在接收到的下载文件23中的识别信息237,并存储在识别信息存储部32中。在本实施方式中,读卡器控制部31在进行上述的虚拟重写时,获取包含在下载文件23中的识别信息237,并存储在识别信息存储部32中。并且,读卡器控制部31在从上位装置20接收到识别信息的发送要求时,将存储在识别信息存储部32中的识别信息返回至上位装置20。
并且,在本实施方式中,读卡器控制部31在进行上述的正常重写时,消除在正常接收到从上位装置20下载的下载文件23的情况下存储在识别信息存储部32中的识别信息。另外,在此,消除在正常接收到从上位装置20下载的下载文件23的情况下存储在识别信息存储部32中的识别信息是作为一例而举出的。在该情况下,只要能够设成无法获取(读取)存储在识别信息存储部32中的识别信息即可,除了消除以外,还有禁止以后访问识别信息的存储区域等各种形态。读卡器控制部31在进行正常重写的情况下,在从上位装置20接收到识别信息的发送要求时,将正确的(通常的)识别信息返回至上位装置20。
即,在本实施方式的读卡器30中,读卡器控制部31在进行下载文件的下载时进行以下控制。
(1)在接收到具有下载可能性的旧规格用(旧型)的下载文件的情况下,不仅向上位装置20虚拟地返回正常接收到命令的响应(应答),而且从接收数据中提取(获取)其无效的识别信息237,并保持在作为外围设备的读卡器30内的非易失性存储器等识别信息存储部32内。之后,在识别信息存储部32中存储有无效的识别信息时,根据要求将其作为识别信息加以返回。
(2)在正常接收新规格用的下载文件时,首先,消除识别信息存储部32的无效的识别信息的存储位置。即,若在起动时消除了无效的识别信息的存储位置,则根据要求返回通常的识别信息。
(3)并且,在接收到的下载文件23的规定位置没有识别信息的情况下,如上所述,利用新的发送命令将下载文件23的上位装置20能够识别的识别信息发送至作为外围设备的读卡器30。读卡器30将例如通过新命令接收到的识别信息存储并保持在非易失性存储器等识别信息存储部32内。
<读卡器30中的下载的具体控制处理>
[非本实施方式的通常处理的情况]
通常情况下,首先,通过接收“删除”命令消除固件存储部311的存储有程序数据的重写区域,通过接收“下载”命令进行写入。
[本实施方式的处理]
在本实施方式中,进行如以下(1)至(5)所示的处理。
(1)在接收“删除”命令时,不消除固件存储部311的存储有程序数据的重写区域,在接收最初的“下载”命令时,根据编入在该命令的程序数据231内的重写许可数据(匹配用ID数据)236进行判定。之后,若确认该程序数据231的正确性(正常重写的情况),则消除固件存储部311的重写区域的程序数据以及非易失性存储器等识别信息存储部32的识别信息,写入最初的“下载”命令的程序数据。
(2)在通过根据重写许可数据(匹配用ID数据)进行的判定无法确认正确性的情况下,在本实施方式中,判断为不是应写入的下载文件,不会根据“删除”和“下载”命令进行重写,只返回正常应答。即,不进行与该命令对应的处理,进行虚拟重写处理。
(3)在该虚拟重写处理的过程中,获取编入在接收到的下载文件23的规定位置的识别信息(识别用ID),并暂时保持在内部。
(4)以该虚拟重写处理像正常下载那样进行至最后。若至最后结束,则将暂时保持的识别信息(识别用ID)存储在非易失性存储器等识别信息存储部32中。
(5)实施下载后,在非易失性存储器等识别信息存储部32中记录有识别信息(识别用ID)的情况下,相对于来自上位装置20的发送要求返回该识别信息(识别用ID)作为应答。
在本实施方式中,通过如此进行利用识别信息的下载处理,具有以下优点。即使在上位装置20未被替换为新规格用(新型)的下载文件的情况下,也关于已发送的下载文件进行虚拟重写,而且在从上位装置20接收到识别信息(识别用ID)的发送要求时,返回经虚拟重写的无效的下载文件的识别信息(识别用ID),因此无需起动之后的下载处理,从而能够缩短处理。在从上位装置20接收到识别信息(识别用ID)的发送要求时,即使在刚下载之后也返回经虚拟重写的下载文件的识别信息(识别用ID),因此能够避免系统停止。由于从上位装置20排除无法应用的下载文件的应用指示,因此能够保持自身的工作环境,并继续使用。
<连接于上位装置20的读卡器30与存储在上位装置20中的下载文件23的组合>
但是,在本实施方式中,如上所述,能够将第一读卡器30A以及第二读卡器30B与上位装置20连接。并且,在外部存储部22中存储有包含与第一读卡器30A对应的程序数据231的下载文件23A或包含与第二读卡器30B对应的程序数据231的下载文件23B。因此,作为连接于上位装置20的读卡器30与存储在上位装置20的下载文件23的组合,可以想到图3所示的四个模式。
即,如图3(A)所示,可以想到在上位装置20连接有第一读卡器30A且在外部存储部22中存储有下载文件23A的模式。如图3(B)所示,可以想到在上位装置20连接有第一读卡器30A且在外部存储部22中存储有下载文件23B的模式。如图3(C)所示,可以想到在上位装置20连接有第二读卡器30B且在外部存储部22中存储有下载文件23A的模式。并且,如图3(D)所示,可以想到在上位装置20连接有第二读卡器30B且在外部存储部22中存储有下载文件23B的模式。
另外,在外部存储部22中存储有下载文件23A的情况下,例如如图3(A)、图3(C)所示,包含在下载文件23A中的程序数据231的版次是“Rev.B”。并且,在外部存储部22中存储有下载文件23B的情况下,例如如图3(B)、图3(D)所示,包含在下载文件23B中的程序数据231的版次是“Rev.b”。并且,例如如图3(A)、图3(B)所示,存储在第一读卡器30A的固件存储部311A中的程序数据的版次是“Rev.A”。例如如图3(C)、图3(D)所示,存储在第二读卡器30B的固件存储部311B中的程序数据的版次是“Rev.a”。
并且,在本实施方式中,即使在与第一读卡器30A对应的程序数据231被下载至第二读卡器30B的情况下,第二读卡器30B也正常工作。另一方面,若与第二读卡器30B对应的程序数据231被下载至第一读卡器30A,则第一读卡器30A不正常工作。
以下,结合流程图,分在上位装置20中的处理和在作为外围设备的读卡器30中的处理分别对本实施方式的固件的下载处理进行说明。
<固件的下载处理:上位装置中的处理>
首先,结合图4对在上位装置20中的下载处理进行说明。
图4是示出在图1所示的上位装置20中下载固件时的处理流程的一例的流程图。
在从上位装置20向读卡器30下载程序数据231时,首先,下载控制部21读入下载文件23的第一行,以读取版次信息232(步骤ST1),并向读卡器30下达版次获取命令(步骤ST2)。之后,下载控制部21对从下载文件23读取的版次信息232与读卡器30针对版次获取命令作出的应答进行比较(步骤ST3)。即,在步骤ST3中,对包含于存储在上位装置20(具体是外部存储部22)中的下载文件23的程序数据231的版次与存储在读卡器30的固件存储部311中的程序数据的版次进行比较。
在步骤ST3中,在包含于存储在上位装置20中的下载文件23的程序数据231的版次与存储在固件存储部311(A、B)中的程序数据的版次不一致的情况下(在步骤ST3中为“否”的情况),下载控制部21为了执行下载处理,向读卡器30下达初始化命令(步骤ST4)。
即,例如如图3(A)所示,在包含于存储在上位装置20(具体是外部存储部22)中的下载文件23A的程序数据231的版次是“Rev.B”,且存储在固件存储部311A中的程序数据的版次是“Rev.A”的情况下,下载控制部21下达初始化命令。并且,如图3(B)所示,在包含于存储在上位装置20中的下载文件23B的程序数据231的版次是“Rev.b”,且存储在固件存储部311A中的程序数据的版次是“Rev.A”的情况下,下载控制部21下达初始化命令。并且,如图3(C)所示,在包含于存储在上位装置20中的下载文件23A的程序数据231的版次是“Rev.B”,且存储在固件存储部311B中的程序数据的版次是“Rev.a”的情况下,下载控制部21下达初始化命令。并且,如图3(D)所示,在包含于存储在上位装置20中的下载文件23B的程序数据231的版次是“Rev.b”,且存储在固件存储部311B中的程序数据的版次是“Rev.a”的情况下,下载控制部21下达初始化命令。
在如上所述的情况下,由于包含于存储在上位装置20中的下载文件23的程序数据231的版次与存储在固件存储部311(A、B)中的程序数据的版次不一致,因此在步骤ST4中下载控制部21向读卡器30下达初始化命令。
之后,下载控制部21根据读卡器30对该初始化命令的响应(应答)判断读卡器30是否为能够下载程序数据231的状态的下载模式(步骤ST5)。在步骤ST5中,若读卡器30不是下载模式(在步骤ST5中为“否”的情况),则下载控制部21向读卡器30下达模式切换命令(步骤ST6),使读卡器30过渡至下载模式之后,返回至步骤ST4。
另一方面,在步骤ST5中,若读卡器30是下载模式(在步骤ST5中为“是”的情况),下载控制部21按每一行读入下载文件23的第二行之后的行(步骤ST7),判断所读入的一行是否为最后一行(文件结束标记235)(步骤ST8)。
在步骤ST8中,若所读入的一行不是最后一行(在步骤ST8中为“否”的情况),下载控制部21将该读入的下载文件23的一行作为命令下达至读卡器30。例如,若所读入的一行是下载文件23的第二行,则向读卡器30下达删除命令233。并且,若所读入的一行是下载文件23的第三行之后的行,则将下载命令234与经整理的程序数据231一同下达至读卡器30。
之后,下载控制部21根据读卡器30的应答判断是否正常执行了命令(步骤ST10)。若读卡器30的应答是正常应答(在步骤ST10中为“是”的情况),则返回至步骤ST7,读入下载文件23的下一行。另一方面,若读卡器30的应答是异常应答(在步骤ST10中为“否”的情况),则下载控制部21判断为程序数据231的下载失败,结束下载处理。另外,在该情况下,下载系统10有时会停机(导致下载系统10的工作停止)。
并且,在步骤ST8中,若从下载文件23读入的一行是最后一行(在步骤ST8中为“是”的情况),则程序数据231的下载正常结束。
并且,在步骤ST3中,在存储在上位装置20中的程序数据231的版次与存储在固件存储部311(A、B)中的程序数据的版次一致的情况下(在步骤ST3中为“是”的情况),下载控制部21判断为不需要下载程序数据231,结束下载处理。例如,在图3(A)中,在存储在上位装置20中的程序数据231的版次是“Rev.A”的情况下,由于存储在上位装置20中的程序数据231的版次与存储在固件存储部311A中的程序数据的版次一致,因此下载控制部21结束下载处理。
<固件的下载处理:在读卡器中的处理>
接着,结合图5对作为本实施方式所涉及的外围设备的读卡器30中的下载处理进行说明。图5是示出在图1所示的读卡器30中下载固件时的处理流程的一例的流程图。
如图3(C)、图3(D)所示,在上位装置20连接有第二读卡器30B的情况下,无论下载文件23A和下载文件23B中的哪一个存储在上位装置20中,在第二读卡器30B中下载固件时,都进行与通常的(例如在上述专利文献1中记载的)读卡器的处理相同的处理。
即,若在上述步骤ST7中读入的一行是下载文件23的第二行,则读卡器控制部31B根据在步骤ST9中下达的删除命令233执行删除命令233。具体地说,重写控制部312B消除固件存储部311B中的指定的区域。更具体地说,重写控制部312B消除固件存储部311B内的与程序数据231对应的程序数据。并且,读卡器控制部31B将正常执行了删除命令233的正常应答返回至下载控制部21。
并且,若在步骤ST7中读入的一行是下载文件23的第三行之后的行,则读卡器控制部31B根据在步骤ST9中下达的下载命令234执行下载命令234。具体地说,重写控制部312B将从上位装置20发送来的程序数据231存储在固件存储部311B中的指定的区域中。即,重写控制部312B将从上位装置20发送来的程序数据231写入到固件存储部311B中。并且,重写控制部312B将正常执行了下载命令234的正常应答返回至下载控制部21。
另一方面,如图3(A)、图3(B)所示,在上位装置20连接有第一读卡器30A的情况下,在第一读卡器30A中下载固件时,进行与通常的(例如在上述专利文献1中记载的读卡器)的处理不同的处理。具体地说,在第一读卡器30A中,按照图5所示的流程如下进行处理。
在上述步骤ST7中读入的一行是下载文件23的第二行,重写控制部312A接收在步骤ST9中下达的下载文件23的第二行,即删除命令233(步骤ST21)。重写控制部312A不执行该第二行的删除命令233,就将正常执行了删除命令233的正常应答返回至下载控制部21(步骤ST22)。即,在步骤ST22中,重写控制部312A不消除存储在固件存储部311A中的程序数据,就将正常执行了删除命令233的正常应答返回至下载控制部21。
之后,重写控制部312A接收在步骤ST9中下达的下载文件23的第三行即下载命令234以及程序数据231(步骤ST23)。重写控制部312A判断在第三行的程序数据231中是否记述有重写许可数据236(步骤ST24)。即,在步骤ST24中,重写控制部312A判别存储在上位装置20中的程序数据231是否为与第一读卡器30A对应的程序数据231。
例如如图3(A)所示,在上位装置20中存储有下载文件23A且在步骤ST24中判断出在第三行的程序数据231中记述有重写许可数据236的情况下,读卡器控制部31A以及重写控制部312A进行下一个处理。即,在下载文件23A中包含重写许可数据236的情况下(在步骤ST24中为“是”的情况),读卡器控制部31A的重写控制部312A消除作为非易失性存储器的识别信息存储部32A的识别信息(识别用ID)的存储区域(步骤ST25)。在该情况下,可以是读卡器控制部31A或重写控制部312A以在识别信息存储部32A中实际存储有识别信息(识别用ID)时进行消除的方式构成和以无条件地消除识别信息存储部32A的识别信息的存储区域的方式构成等各种形态。
然后,重写控制部312A根据在下载文件23中包含重写许可数据236的情况执行下载文件23A的第二行的命令以及第三行的命令,即删除命令233以及下载命令234。并且,重写控制部312A将正常执行了下载命令234的正常应答返回至下载控制部21(步骤ST26)。具体地说,在步骤ST26中,重写控制部312A消除存储在固件存储部311A中的程序数据,并且将从上位装置20发送来的程序数据231存储在固件存储部311A中的指定的区域中,并将正常应答返回至下载控制部21。
另外,在步骤ST25中对识别信息存储部32A的消除处理和在步骤ST26中应答下载文件23A的第二行的删除命令233的对固件存储部311A的规定区域的消除处理中的任一个在前或在后都可以。
之后,重写控制部312A依次接收下载文件23A的第四行之后的行(步骤ST27),并依次执行接收到的行的下载命令234(步骤ST28)。即,重写控制部312A将从上位装置20发送来的程序数据231存储在固件存储部311A中的指定的区域中,并将正常执行了下载命令234的正常应答返回至下载控制部21(步骤ST28)。
另一方面,如图3(B)所示,在上位装置20中存储有下载文件23B且在步骤ST24中在第三行的程序数据231中未记述有重写许可数据236的情况下,读卡器控制部31A以及重写控制部312A进行下一个处理。即,在下载文件23B中不包含重写许可数据236的情况下(在步骤ST24中为“否”的情况),重写控制部312A不执行下载文件23B的第三行的命令即下载命令234,就将正常执行了下载命令234的正常应答返回至下载控制部21(步骤ST29)。具体地说,在步骤ST29中,重写控制部312A不将从上位装置20发送来的程序数据231存储在固件存储部311A中,就将正常应答返回至下载控制部21。
之后,重写控制部312A依次接收下载文件23B的第四行之后的行(步骤ST30)。接着,重写控制部312A判别在接收到的下载文件23B中是否具有(是否包含)识别信息237(步骤ST31)。在下载文件23B中包含识别信息237的情况下(在步骤ST31中为“是”的情况),重写控制部312A从接收到的程序数据231中提取并获取识别信息(识别用ID)237(步骤ST32),并暂时保持在内部的存储器和寄存器等(步骤ST33)。在此,获取并保持的下载文件23B的识别信息237是对第一读卡器30A无效的下载文件23B的识别信息。
在步骤ST33的处理后或者在下载文件23B中不包含识别信息237的情况下(在步骤ST31中为“否”的情况),重写控制部312A不执行接收到的行的下载命令234,而是进行虚拟的重写处理,并将正常执行了下载命令234的正常应答(虚拟应答)返回至下载控制部21(步骤ST34)。
之后,重写控制部312A在步骤ST34中将上述虚拟重写处理进行至下载文件23B的最后一行,并将正常执行了下载命令234的正常应答(虚拟应答)返回至下载控制部21,之后,将在步骤ST33中暂时保持在内部的无效的识别信息237存储在识别信息存储部32A中(步骤ST35)。
例如,在步骤ST35的处理之后从上位装置20接收到识别信息的发送要求时(步骤ST36),读卡器控制部31A或重写控制部312A将存储在识别信息存储部32A中的无效的识别信息返回至上位装置20(步骤ST37)。并且,在步骤ST36中没有从上位装置20发出的发送要求的情况下(在步骤ST36中为“否”的情况),不执行步骤ST37的处理,而是等待来自上位装置20的下一个步骤。
并且,在步骤ST28的处理之后从上位装置20接收到识别信息的发送要求时(步骤ST38),此时,在识别信息存储部32A中未存储有识别信息,读卡器控制部31A或重写控制部312A将记述在正常的下载文件23A中的正确的识别信息返回至上位装置20(步骤ST39)。并且,在步骤ST38中没有从上位装置20发出的发送要求的情况下(在步骤ST38中为“否”的情况),不执行步骤ST39的处理,而是等待来自上位装置20的下一个步骤。
本实施方式的步骤ST24是判别重写许可数据236是否包含在下载文件23中的重写许可判別步骤。并且,本实施方式的步骤ST26、ST28是在下载文件23中包含重写许可数据236的情况下,将存储在读卡器30中的程序数据重写为从上位装置20发送来的程序数据231,并将数据重写的正常结束应答返回至上位装置20的正常重写步骤。本实施方式的步骤ST29、ST34是在下载文件23中不包含重写许可数据236的情况下,不将存储在读卡器30中的程序数据重写为从上位装置20发送来的程序数据231,就将数据重写的正常结束应答返回至上位装置20的虚拟重写步骤。并且,本实施方式的步骤ST35是将包含于下载文件23的该下载文件的识别信息237存储在读卡器30的识别信息存储部32中的识别信息存储步骤。本实施方式的步骤ST37是在从上位装置20接收到识别信息的发送要求时,将存储在识别信息存储部32中的识别信息返回至上位装置20的识别信息返回步骤。
<本实施方式的主要效果>
如以上说明,通过本实施方式,在下载文件23中包含重写许可数据236的情况下,存储在读卡器30中的程序数据被重写为从上位装置20发送来的程序数据231。另一方面,在下载文件23中不包含重写许可数据236的情况下,存储在读卡器30中的程序数据不被重写为从上位装置20发送来的程序数据231。即,通过本实施方式,基本上在与第一读卡器30A对应的程序数据231存储在上位装置20中的情况下,存储在第一读卡器30A中的程序数据被重写为从上位装置20发送来的程序数据231。另一方面,在与第二读卡器30B对应的程序数据231存储在上位装置20的情况下,存储在第一读卡器30A中的程序数据不被重写为从上位装置20发送来的程序数据231。因此,通过本实施方式,能够防止与旧型的第二读卡器30B对应的程序数据231被从上位装置20下载至新型的第一读卡器30A。因此,通过本实施方式,能够避免与旧型的第二读卡器30B对应的程序数据231被下载至第一读卡器30A而导致第一读卡器30A无法正常工作的不良情况。
通过本实施方式,即使在下载文件23中不包含重写许可数据236且存储在第一读卡器30A中的程序数据不被重写为从上位装置20发送来的程序数据231的情况下,也就是说,即使在重写控制部312不执行删除命令233以及下载命令234的情况下,重写控制部312也将数据重写的正常结束应答返回至上位装置20。因此,即使不从上位装置20向第一读卡器30A下载程序数据231,也能够使上位装置20的下载处理正常结束。因此,在本实施方式中,能够避免下载系统10停机。
通过本实施方式,在上位装置20连接有第二读卡器30B的情况下,第二读卡器30B不判别在下载文件23中是否包含重写许可数据236,就将存储在第二读卡器30B中的程序数据重写为从上位装置20发送来的程序数据231。因此,在与第一读卡器30A对应的程序数据231存储在上位装置20中的情况下,能够通过该程序数据231使第二读卡器30B工作。即,通过本实施方式,能够通过与第一读卡器30A对应的一个程序数据231使第一读卡器30A以及第二读卡器30B工作。
并且,在与第二读卡器30B对应的程序数据231存储在上位装置20中的情况下,该程序数据231虽然被下载至第二读卡器30B,但不被下载至第一读卡器30A。因此,能够通过与第一读卡器30A对应的程序数据使第一读卡器30A工作,并且通过与第二读卡器30B对应的程序数据使第二读卡器30B工作。因此,通过本实施方式,即使存储在上位装置20中的程序数据231是一个,也能够使第一读卡器30A以及第二读卡器30B恰当地工作。
如此,通过本实施方式,即使存储在上位装置20中的程序数据231是一个,也能够使第一读卡器30A以及第二读卡器30B恰当地工作。因此,无需根据上位装置20与第一读卡器30A连接还是与第二读卡器30B连接而变更上位装置20。因此,在本实施方式中,能够提高使用下载系统10的用户的便利性。
并且,通过本实施方式,在下载文件23的程序数据231中除了记述(记载)有重写许可数据236以外,还记述(记载)有识别信息(识别用ID)237,在读卡器30中进行下载文件的下载时,读卡器控制部31进行以下控制。即,在接收到具有下载可能性的旧规格用(旧型)的下载文件的情况下,不仅虚拟地向上位装置20返回正常接收到命令的响应(应答),而且从接收数据中提取其无效的识别信息237,并保持在作为外围设备的读卡器30内的非易失性存储器等识别信息存储部32内。并且,在识别信息存储部32中存储有无效的识别信息时,根据来自上位装置20的识别信息的发送要求作为识别信息加以返回。在正常接收新规格用(新型)的下载文件时,首先,消除识别信息存储部32的无效的识别信息的存储位置。即,只要在起动时消除无效的识别信息的存储位置,就能够根据来自上位装置20的识别信息的发送要求,向上位装置20返回通常的(正确的)识别信息。
因此,通过本实施方式,能够进一步获得以下效果。即,即使在上位装置不被替换为新规格用的下载文件的情况下,对已发送的下载文件23进行虚拟重写并返回正常应答,而且在从上位装置20接收到识别信息(识别用ID)的发送要求时,返回经虚拟重写的下载文件的识别信息(识别用ID),因此无需起动之后的下载处理,从而能够缩短处理。在从上位装置20接收到识别信息(识别用ID)的发送要求时,即使在刚下载之后也返回经虚拟重写的下载文件的识别信息(识别用ID),因此能够避免系统停止。由于从上位装置20排除无法应用的下载文件的应用指示,因此能够保持自身的工作环境并继续使用。
并且,通过本实施方式,在接收到的下载文件23的规定位置没有识别信息的情况下,如上所述,利用新的发送命令将上位装置20能够识别的下载文件23的识别信息发送至作为外围设备的读卡器30。读卡器30将利用新的命令接收到的识别信息存储并保持在非易失性存储器等识别信息存储部32内。在本实施方式中,基本上在下载文件的规定位置配置有识别信息(识别用ID),但若考虑其他外围设备在内,则其配置位置有时并不全部统一,因此能够应用于这种情况。
<下载文件以及下载方法的变形例>
接着,作为另一实施方式,对下载文件以及下载方法的变形例进行说明。图6是示出本发明的另一实施方式所涉及的下载文件23的数据结构的一例的示意图。
在上述的实施方式中,如图2所示,在下载文件23中不包含重写匹配命令238,所述重写匹配命令238用于判别是否可以将存储在读卡器30中的程序数据重写为存储在上位装置20中的程序数据231。与此相对,在该另一实施方式中,如图6所示,也可以在下载文件23(C)中包含重写匹配命令238。在图6的例子中,在程序数据231中未记述有重写许可数据236。在该情况下,例如向重写匹配命令238附加用于允许读卡器30侧的重写控制部312将存储在读卡器30中的程序数据重写为存储在外部存储部22中的程序数据231的重写许可数据。并且,附加于与第一读卡器30A对应的下载文件23A的重写匹配命令238的重写许可数据同附加于与第二读卡器30B对应的下载文件23B的重写匹配命令238的重写许可数据不同。
在该变形例所涉及的下载文件23(C)中,如图6所示,重写匹配命令238被记述在下载文件23(C)的第二行,删除命令233被记述在下载文件23的第三行,下载命令234以及程序数据231被记述在下载文件23(C)的第四行之后。并且,在重写控制部312A中存储有与附加于下载文件23A的重写匹配命令238的重写许可数据一致或者与该重写许可数据一对一对应的许可数据。在重写控制部312B中存储有与附加于下载文件23B的重写匹配命令238的重写许可数据一致或者与该重写许可数据一对一对应的许可数据。
<在该另一实施方式的读卡器30中下载的具体控制处理>
[非另一实施方式的通常处理的情况]
通常情况下,首先,利用“匹配”命令进行重写(写入)匹配,若实现了匹配,则通过接收“删除”命令而消除固件存储部311的存储有程序数据的重写区域,并通过接收“下载”命令进行写入。
[该另一实施方式的处理]
在本实施方式中,进行如以下(1)至(6)所示的处理。
(1)在“匹配”命令实现了重写(写入)匹配的情况下(正常重写的情况下),在接收“删除”命令时,消除固件存储部311的存储有程序数据的重写区域,并且消除非易失性存储器等识别信息存储部32的识别信息,利用下一个“下载”命令进行程序数据的写入。
(2)在“匹配”命令未能实现重写(写入)匹配且由读卡器控制部31判断为是指定旧型产品(旧型读卡器)的下载文件的情况下,判断为不是应写入的下载文件,不利用下一个“删除”和“下载”命令进行重写,只返回正常应答。即,不进行与该命令对应的处理,而是进行虚拟重写处理。
(3)在该虚拟重写处理的过程中,获取编入在接收到的下载文件23的规定位置的识别信息(识别用ID),并暂时保持在内部。
(4)以该虚拟重写处理像正常下载那样进行至最后。若至最后结束,则将暂时保持的识别信息(识别用ID)存储在非易失性存储器等识别信息存储部32中。
(5)实施下载后,在非易失性存储器等识别信息存储部32中记录有识别信息(识别用ID)的情况下,返回该识别信息(识别用ID)作为应答。
(6)在“匹配”命令未能实现重写(写入)匹配且还不是旧型机种用的情况下,向上位装置20返回异常应答。
<在另一实施方式中下载固件的处理:在读卡器中的处理>
接着,结合图7对作为该另一实施方式所涉及的外围设备的读卡器30中的下载处理进行说明。图7是示出在本发明的另一实施方式所涉及的读卡器30中下载固件时的处理流程的一例的流程图。
在该另一实施方式的变形例中,首先,如图7所示,读卡器控制部31A以及重写控制部312A接收在上述的步骤ST9(图4)中下达的下载文件23的第二行,即重写匹配命令238(步骤ST41)。重写控制部312A判断附加于重写匹配命令238的重写许可数据是否与存储在重写控制部312A中的许可数据一致(或者是否与该许可数据对应)(步骤ST42)。即,重写控制部312A在步骤ST42中判断是否实现了重写匹配。
在上位装置20中存储有下载文件23A且在步骤ST42中实现了重写匹配的情况下(在步骤ST42中为“是”的情况),读卡器控制部31A以及重写控制部312A将实现重写匹配的正常应答返回至下载控制部21(步骤ST43)。之后,随着实现重写匹配且返回正常应答,读卡器控制部31A以及重写控制部312A进行下一个处理。即,读卡器控制部31A的重写控制部312A消除作为非易失性存储器的识别信息存储部32A的识别信息(识别用ID)的存储区域(步骤ST44)。在该情况下,也可以是读卡器控制部31A或重写控制部312A以在识别信息存储部32A中实际存储有识别信息(识别用ID)的情况下进行消除的方式构成和以无条件地消除识别信息存储部32A的识别信息的存储区域的方式构成等各种形态。
之后,重写控制部312A执行接收到的下载文件23A的第三行的命令以及第四行的命令,即删除命令233以及下载命令234。并且,重写控制部312A将正常执行了下载命令234的正常应答返回至下载控制部21(步骤ST45)。具体地说,在步骤ST45中,重写控制部312A消除存储在固件存储部311A中的程序数据,并且将从上位装置20发送来的程序数据231存储在固件存储部311A中的指定的区域中,将正常应答返回至下载控制部21。
另外,在步骤ST44中对识别信息存储部32A的消除处理和在步骤ST45中应答下载文件23A的第三行的删除命令233的对固件存储部311A的规定区域的消除处理中的任一个在前或在后都可以。
之后,重写控制部312A依次接收下载文件23A的第五行之后的行(步骤ST45),并依次执行接收到的行的下载命令234(步骤ST46)。即,重写控制部312A将从上位装置20发送来的程序数据231存储在固件存储部311A中的指定的区域中,并将正常执行了下载命令234的正常应答返回至下载控制部21(步骤ST46)。
另一方面,在步骤ST42中,在未能实现重写匹配的情况下(在步骤ST42中为“否”的情况),重写控制部312A进行下一个处理。重写控制部312A判断附加于重写匹配命令238的重写许可数据是附加于下载文件23B的重写匹配命令238的重写许可数据,还是附加于不同机种的读卡器等的下载文件的重写匹配命令的重写许可数据(步骤ST47)。即,在步骤ST47中,重写控制部312A判断存储在上位装置20中的程序数据是与旧型的第二读卡器30B对应的数据,还是与不同机种的读卡器等对应的数据。
在步骤ST47中,在存储在上位装置20中的程序数据与第二读卡器30B对应的情况下,即,在上位装置20中存储有下载文件23B的情况下(在步骤ST47中为“是”的情况),重写控制部312A虽然未能实现重写匹配,但仍将实现了重写匹配的正常应答返回至下载控制部21(步骤ST48)。之后,重写控制部312A依次接收下载文件23B的第三行之后的行(步骤ST49)。
接着,重写控制部312A判别在接收到的下载文件23B中是否具有(是否包含)识别信息237(步骤ST50)。在下载文件23B中包含识别信息237的情况下(在步骤ST50中为“是”的情况),重写控制部312A从接收到的程序数据231中提取并获取识别信息(识别用ID)237(步骤ST51),并暂时保持在内部的存储器和寄存器等(步骤ST52)。在此,获取并保持的下载文件23B的识别信息237是对第一读卡器30A无效的下载文件23B的识别信息。
在步骤ST52的处理后或者在下载文件23B中不包含识别信息237的情况下(在步骤ST50中为“否”的情况),重写控制部312A不执行接收到的行的下载命令234,而是进行虚拟的重写处理,并将正常执行了下载命令234的正常应答(虚拟应答)返回至下载控制部21(步骤ST53)。
之后,重写控制部312A在步骤ST53中将上述虚拟重写处理进行至下载文件23B的最后一行,并将正常执行了下载命令234的正常应答(虚拟应答)返回至下载控制部21,之后,将在步骤ST52中暂时保持在内部的无效的识别信息237存储在识别信息存储部32A中(步骤S54)。
并且,在步骤ST47中,在存储在上位装置20中的程序数据与不同机种的读卡器等对应的情况下(在步骤ST47中为“否”的情况),重写控制部312A将异常应答返回至下载控制部21(步骤ST55)。接收到异常应答的下载控制部21判断为程序数据231的下载失败,结束下载处理。
并且,例如在步骤ST54的处理之后从上位装置20接收到识别信息的发送要求的情况下(步骤ST56),读卡器控制部31A或者重写控制部312A将存储在识别信息存储部32A中的识别信息返回至上位装置20(步骤ST57)。并且,在步骤ST56中没有来自上位装置20的发送要求的情况下(在步骤ST56中为“否”的情况),不执行步骤ST57的处理,而是等待来自上位装置20的下一个步骤。
并且,在步骤ST46的处理之后从上位装置20接收到识别信息的发送要求的情况下(步骤ST58),此时在识别信息存储部32A中没有存储有识别信息,读卡器控制部31A或重写控制部312A将被记述在正常的下载文件23A中的正确的识别信息返回至上位装置20(步骤ST59)。并且,在步骤ST58中没有来自上位装置20的发送要求的情况下(在步骤ST58中为“否”的情况),不执行步骤ST59的处理,而是等待来自上位装置20的下一个步骤。
在该变形例中,也能够获得与上述方式相同的效果。并且,在该变形例中,由于无需在程序数据231中包含重写许可数据236,因此能够简化程序数据231的结构的一部分。另外,在程序数据231中包含重写许可数据236的情况下,即使在下载文件23中不包含重写匹配命令238的情况或者读卡器30不接收重写匹配命令238的情况下,也能够判别在下载文件23中是否包含重写许可数据。
并且,在该另一实施方式中,通过如此利用重写匹配命令以及识别信息进行下载处理,能够获得与前述的实施方式相同的效果。即,即使在上位装置未被替换为新规格用的下载文件的情况下,也关于已发送的下载文件进行虚拟重写,而且在从上位装置20接收到识别信息(识别用ID)的发送要求时,返回进行了虚拟重写的无效的下载文件的识别信息(识别用ID),因此无需起动之后的下载处理,从而能够缩短处理。在从上位装置20接收到识别信息(识别用ID)的发送要求时,即使在刚下载之后也返回进行了虚拟重写的下载文件的识别信息(识别用ID),因此能够避免系统停止。由于从上位装置排除无法应用的下载文件的应用指示,因此能够保持自身的工作环境,并继续使用。
另外,该变形例中的步骤ST42是判别在下载文件23(C)中是否包含重写许可数据的重写许可判別步骤,所述重写许可数据用于允许重写控制部312A将存储在第一读卡器30A中的程序数据重写为存储在上位装置20中的程序数据231。并且,步骤ST46是在下载文件23(C)中包含用于允许重写控制部312A将存储在第一读卡器30A中的程序数据重写为存储在上位装置20中的程序数据231的重写许可数据的情况下,将存储在第一读卡器30A中的程序数据重写为从上位装置20发送来的程序数据231,并将数据重写的正常结束应答返回至上位装置20的正常重写步骤。并且,步骤ST53是在下载文件23(C)中不包含用于允许重写控制部312A将存储在第一读卡器30A中的程序数据重写为存储在上位装置20中的程序数据231的重写许可数据的情况下,不将存储在第一读卡器30A中的程序数据重写为从上位装置20发送来的程序数据231,就将数据重写的正常结束应答返回至上位装置20的虚拟重写步骤。并且,本实施方式的步骤ST54是将包含于下载文件23(C)中的该下载文件的识别信息237存储在读卡器30的识别信息存储部32中的识别信息存储步骤。本实施方式的步骤ST57是在从上位装置20接收到识别信息的发送要求时,将存储在识别信息存储部32中的识别信息返回至上位装置20的识别信息返回步骤。
<其他实施方式>
上述的实施方式以及变形例是本发明的优选的实施方式的一例,但不限定于此,在不变更本发明的宗旨的范围内,能够进行各种变形。
在上述的实施方式中,以上位装置20与一个读卡器30(30A或者30B)连接的方式构成。作为另一实施方式,如图8所示,还能够以上位装置20与多个同型读卡器30并列连接,并从上位装置20向各读卡器30下载使作为外围设备的各读卡器30工作的固件的程序数据231的方式构成。
并且,在上述的实施方式中,以使识别信息存储部32包含在读卡器控制部31中的方式构成。但是,作为又一实施方式,如图9所示,还能够采用将识别信息存储部32配置在读卡器控制部31的外部的结构。在该情况下,识别信息存储部32可以是读卡器控制部31直接进行访问控制的重写控制部312进行访问控制等各种形态。另外,图9示出了与图1的结构对应的另一实施方式,但在与图8对应的情况下等,也同样如图9中标注括号示出那样,能够采用将识别信息存储部32配置在读卡器控制部31的外部的结构。
在上述的实施方式中,重写许可数据236被记述在下载文件23A中的第三行的程序数据231中。除此之外,例如还可以将重写许可数据236记述在下载文件23A中的第四行之后的第n行的程序数据231中。在该情况下,重写控制部312在判断重写许可数据236是否被记述在第n行的程序数据231中之后,执行第二行至第n行的命令并将正常应答返回至下载控制部21,或者不执行第二行至第n行的命令就将正常应答返回至下载控制部21。
并且,在本实施方式中,如图2以及图6所示,关于识别信息大致利用了两种下载文件形式。初始行的版次信息(版头)基本上是上位装置用的信息,不被发送至外围设备。在本实施方式中,根据在下载文件内有无重写许可数据和“匹配”命令,判断下载文件是否正规的构件发生变化,但在不接收“匹配”命令的产品的情况下,在程序数据内包含重写许可数据(匹配用ID)以及识别信息(识别用ID)。即使记述有相当于“匹配”命令的重写许可数据,也不马上设成无法下载,只有在判断为旧型产品时,在实际执行了命令的虚拟重写过程中,获取识别信息(识别用ID)。作为应用例,虽然也有已叙述的部分,但还能够举出通过密文记载识别信息(识别用ID)或者通过明文记载识别信息(识别用ID)的例子。对此也在前面进行了叙述,但还能够以将最前头的版头行命令化并作为识别用ID发送命令发送的方式构成。在本实施方式中,在下载文件的规定位置配置有识别信息(识别用ID),但若考虑其他外围设备在内,则其配置位置并不全部统一。因此,既能重新设置目前不发送至外围设备的将识别信息(识别用ID)文本化识别信息(识别用ID)通知命令,还能够以只有在下载控制部21部正常接收到该命令时进行生成这种发送命令的处理等的方式构成。
并且,在上述的实施方式中,以版次信息(版头)232与识别信息(识别用ID)237使用了相同的数据的例子进行了说明,但两个数据也可以不是相同的数据,一般来讲,识别信息(识别用ID)237的数据(量)比版次信息232多而详细。
在上述的实施方式中,以能够与上位装置20通信的方式与上述装置20连接的外围设备、第二外围设备是读卡器30,但以能够与上位装置20通信的方式与上位装置20连接的外围设备、第二外围设备也可以是卡片打印机等除了读卡器30以外的各种装置。
另外,以上详细说明的方法还能够形成为根据上述顺序进行的程序,并以利用中央处理器(CPU)等计算机执行的方式构成。并且,这种程序能够构成为通过半导体存储器、磁盘、光盘、软盘(floppy disk(注册商标))等记录介质、组装有该记录介质的计算机进行访问并执行上述程序。
符号说明
10、10A、10B 下载系统(固件的下载系统)
20 上位装置
21 下载控制部
22 外部存储部
23 下载文件
231 程序数据
232 版次信息
233 删除命令
234 下载命令
235 文件结束标记
236 重写许可数据
237 识别信息
238 重写匹配命令
30 读卡器(外围设备)
31 读卡器控制部
311 固件存储部(程序存储部)
312 重写控制部
32 识别信息存储部(非易失性存储器(NVM))
30A 第一读卡器(外围设备、第一外围设备)
31A 读卡器控制部
311A 固件存储部(程序存储部)
312A 重写控制部
32A 识别信息存储部(非易失性存储器(NVM))
30B 第二读卡器(外围装第二外围设备)
31B 读卡器控制部
311B 固件存储部(程序存储部)
312B 重写控制部。

Claims (13)

1.一种外围设备,其与上位装置连接,且能够从所述上位装置下载包含使所述外围设备工作的固件的程序数据的下载文件,所述外围设备的特征在于,包括:
识别信息存储部,所述识别信息存储部能够存储所述下载文件的识别信息;
程序存储部,所述程序存储部至少将程序数据以可重写的方式存储;以及
控制部,所述控制部对存储在所述程序存储部中的所述程序数据的重写进行控制,
所述下载文件具有所述下载文件的识别信息以及重写许可数据中的至少所述识别信息,所述重写许可数据用于允许所述控制部对存储在所述程序存储部中的程序数据进行重写,
在所述下载文件中包含所述重写许可数据的情况下,所述控制部进行正常重写,将存储在所述程序存储部中的所述程序数据重写为从所述上位装置发送来的所述程序数据,并将所述数据重写的正常结束应答返回至所述上位装置,
在所述下载文件中不包含所述重写许可数据的情况下,所述控制部进行虚拟重写,不将存储在所述程序存储部中的所述程序数据重写为从所述上位装置发送来的所述程序数据,就将数据重写的正常结束应答返回至所述上位装置,
并且,所述控制部将所述下载文件的所述识别信息存储在所述识别信息存储部中。
2.根据权利要求1所述的外围设备,其特征在于,
所述控制部在进行所述虚拟重写时,获取包含于所述下载文件的识别信息,并存储在所述识别信息存储部中。
3.根据权利要求1或2所述的外围设备,其特征在于,
所述控制部在从所述上位装置接收到所述识别信息的发送要求时,将存储在所述识别信息存储部中的所述识别信息返回至所述上位装置。
4.根据权利要求1至3中任一项所述的外围设备,其特征在于,
所述控制部在进行所述正常重写时,将在正常接收到所述下载文件的情况下存储在所述识别信息存储部中的识别信息设成无法获取。
5.根据权利要求1至4中任一项所述的外围设备,其特征在于,
所述识别信息记载于所述下载文件的程序数据的规定位置。
6.根据权利要求1至4中任一项所述的外围设备,其特征在于,
在接收到的所述下载文件内不包含识别信息的情况下,所述控制部能够接收来自所述上位装置的新的命令作为识别信息。
7.一种外围设备的控制方法,所述外围设备与上位装置连接,且所述外围设备能够从所述上位装置下载包含使所述外围设备工作的固件的程序数据的下载文件,所述外围设备的控制方法的特征在于,包括如下步骤:
重写许可判別步骤,所述重写许可判別步骤判别重写许可数据是否包含于从所述上位装置下载的下载文件,所述重写许可数据用于允许将存储在所述外围设备中的所述程序数据重写为存储在所述上位装置中的所述程序数据;
正常重写步骤,在所述重写许可判別步骤中判别出所述重写许可数据包含于所述下载文件的情况下,所述正常重写步骤将存储在所述外围设备中的所述程序数据重写为从所述上位装置发送来的所述程序数据,并将数据重写的正常结束应答返回至所述上位装置;
虚拟重写步骤,在所述重写许可判別步骤中判别出所述重写许可数据不包含于所述下载文件的情况下,所述虚拟重写步骤不将存储在所述外围设备中的所述程序数据重写为从所述上位装置发送来的所述程序数据,就将数据重写的正常结束应答返回至所述上位装置;
识别信息存储步骤,所述识别信息存储步骤将包含于所述下载文件的该下载文件的识别信息存储在所述外围设备的识别信息存储部中;以及
识别信息返回步骤,在从所述上位装置接收到所述识别信息的发送要求时,所述识别信息返回步骤将存储在所述识别信息存储部中的所述识别信息返回至所述上位装置。
8.根据权利要求7所述的外围设备的控制方法,其特征在于,
在处理所述虚拟重写步骤时,并列进行所述识别信息存储步骤。
9.根据权利要求7或8所述的外围设备的控制方法,其特征在于,
所述的外围设备的控制方法具有存储信息无法获取步骤,所述存储信息无法获取步骤在所述正常重写步骤中将在正常接收到所述下载文件的情况下存储在所述识别信息存储部中的识别信息设成无法获取。
10.根据权利要求7至9中任一项所述的外围设备的控制方法,其特征在于,
所述识别信息记载于所述下载文件的程序数据的规定位置。
11.根据权利要求7至9中任一项所述的外围设备的控制方法,其特征在于,
在接收到的所述下载文件内不包含识别信息的情况下,能够接收来自所述上位装置的新的命令作为识别信息。
12.一种固件的下载系统,其特征在于,所述固件的下载系统包括:
至少一个外围设备;以及
上位装置,所述上位装置与所述外围设备连接,且所述上位装置能够将包含使所述外围设备工作的固件的程序数据的下载文件下载至所述外围,
所述外围设备由权利要求1至6中任一项所述的外围设备构成。
13.一种使计算机执行外围设备的控制处理的程序,所述外围设备与上位装置连接,且所述外围设备能够从所述上位装置下载包含使所述外围设备工作的固件的程序数据的下载文件,所述程序的特征在于,包括如下处理:
重写许可判別处理,所述重写许可判別处理判别重写许可数据是否包含于从所述上位装置下载的下载文件,所述重写许可数据用于允许将存储在所述外围设备中的所述程序数据重写为存储在所述上位装置中的所述程序数据;
正常重写处理,在所述重写许可判別处理中判别出所述重写许可数据包含于所述下载文件的情况下,所述正常重写处理将存储在所述外围设备中的所述程序数据重写为从所述上位装置发送来的所述程序数据,并将数据重写的正常结束应答返回至所述上位装置;
虚拟重写处理,在所述重写许可判別处理中判别出所述重写许可数据不包含于所述下载文件的情况下,所述虚拟重写处理不将存储在所述外围设备中的所述程序数据重写为从所述上位装置发送来的所述程序数据,就将数据重写的正常结束应答返回至所述上位装置;
识别信息存储处理,所述识别信息存储处理将包含于所述下载文件的该下载文件的识别信息存储在所述外围设备的识别信息存储部中;以及
识别信息返回处理,在从所述上位装置接收到所述识别信息的发送要求时,所述识别信息返回处理将存储在所述识别信息存储部中的所述识别信息返回至所述上位装置。
CN201380032294.XA 2012-12-27 2013-10-11 外围设备、外围设备的控制方法以及固件的下载系统 Expired - Fee Related CN104412237B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012-285599 2012-12-27
JP2012285599A JP6101073B2 (ja) 2012-12-27 2012-12-27 周辺装置、周辺装置の制御方法、ファームウェアのダウンロードシステム、およびプログラム
PCT/JP2013/077702 WO2014103473A1 (ja) 2012-12-27 2013-10-11 周辺装置、周辺装置の制御方法、ファームウェアのダウンロードシステム、およびプログラム

Publications (2)

Publication Number Publication Date
CN104412237A true CN104412237A (zh) 2015-03-11
CN104412237B CN104412237B (zh) 2017-05-10

Family

ID=51020573

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380032294.XA Expired - Fee Related CN104412237B (zh) 2012-12-27 2013-10-11 外围设备、外围设备的控制方法以及固件的下载系统

Country Status (5)

Country Link
US (1) US9361138B2 (zh)
JP (1) JP6101073B2 (zh)
CN (1) CN104412237B (zh)
BR (1) BR112014032634A2 (zh)
WO (1) WO2014103473A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107870882A (zh) * 2016-09-27 2018-04-03 联想企业解决方案(新加坡)有限公司 用于管理外围设备的数据协议

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106068481B (zh) * 2014-03-14 2020-03-10 欧姆龙株式会社 控制设备、控制系统、支援装置以及控制设备的维护的管理方法
JP6181009B2 (ja) * 2014-07-31 2017-08-16 東芝テック株式会社 プリンタ及びそのファームウェア更新制御プログラム
EP3238151A4 (en) 2014-12-22 2018-06-06 Capital One Services, LLC A system, method and apparatus for reprogramming a transaction card
US11347983B2 (en) * 2015-05-29 2022-05-31 Hive Technology Method and apparatus for selecting a wireless reader action as a result of an output data received from a wireless identification device
TWI710953B (zh) * 2019-05-31 2020-11-21 緯創資通股份有限公司 韌體更新裝置以及韌體更新方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09223075A (ja) * 1996-02-19 1997-08-26 Nec Corp Pcカード
CN1455343A (zh) * 2003-05-30 2003-11-12 威盛电子股份有限公司 防止覆写dmi数据中外围端子的mac地址的方法
JP2004013782A (ja) * 2002-06-11 2004-01-15 Sankyo Seiki Mfg Co Ltd ファームウェアのダウンロード方法
US20040030877A1 (en) * 2002-08-06 2004-02-12 Aleksandr Frid Using system BIOS to update embedded controller firmware
JP2004259244A (ja) * 2003-02-26 2004-09-16 Toshiki Suzuki Rom・ram兼用メモリー
US7010624B1 (en) * 2002-04-01 2006-03-07 Adaptec, Inc. System and method of software/firmware uploading and upgrading for peripheral devices
US7082603B2 (en) * 2001-01-03 2006-07-25 Intel Corporation Upgrading peripheral devices
US7178141B2 (en) * 2001-07-30 2007-02-13 International Business Machines Corporation Method and system for identifying compatibility between firmware images
JP2007293514A (ja) * 2006-04-24 2007-11-08 Canon Inc バージョン管理および自動アップデート機能
US7555657B2 (en) * 2003-03-28 2009-06-30 Ricoh Company, Ltd. Communication device, software update device, software update system, software update method, and program
US7730295B1 (en) * 2006-09-05 2010-06-01 Western Digital Technologies, Inc. Updating firmware of a peripheral device
CN103765389A (zh) * 2011-09-01 2014-04-30 日本电产三协株式会社 外围设备、外围设备的控制方法以及固件的下载系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6930785B1 (en) * 2000-03-17 2005-08-16 Hewlett-Packard Development Company, L.P. Automatic remote firmware upgrade
US7146412B2 (en) * 2001-08-27 2006-12-05 Hewlett-Packard Development Company, L.P. System and methods for the automatic discovery, notification and installation of firmware upgrades
JP3880407B2 (ja) * 2002-01-25 2007-02-14 キヤノン株式会社 情報処理装置およびユーザインターフェースを制御する方法
US20030217357A1 (en) * 2002-05-14 2003-11-20 Parry Travis J. Monitoring firmware
JP2004259224A (ja) * 2003-02-28 2004-09-16 Canon Inc 周辺装置
US20050027807A1 (en) * 2003-07-30 2005-02-03 Lynda Fengler Systems and methods for facilitating peripheral device firmware installation
US7770165B2 (en) * 2006-08-25 2010-08-03 Microsoft Corporation Providing firmware updates to portable media devices
US8122447B2 (en) * 2007-07-31 2012-02-21 Hewlett-Packard Development Company, L.P. Firmware installation
US8713559B2 (en) * 2010-11-15 2014-04-29 Schneider Electric It Corporation System and method for updating firmware
US8745614B2 (en) * 2011-05-13 2014-06-03 Lsi Corporation Method and system for firmware upgrade of a storage subsystem hosted in a storage virtualization environment

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09223075A (ja) * 1996-02-19 1997-08-26 Nec Corp Pcカード
US7082603B2 (en) * 2001-01-03 2006-07-25 Intel Corporation Upgrading peripheral devices
US7178141B2 (en) * 2001-07-30 2007-02-13 International Business Machines Corporation Method and system for identifying compatibility between firmware images
US7010624B1 (en) * 2002-04-01 2006-03-07 Adaptec, Inc. System and method of software/firmware uploading and upgrading for peripheral devices
JP2004013782A (ja) * 2002-06-11 2004-01-15 Sankyo Seiki Mfg Co Ltd ファームウェアのダウンロード方法
US20040030877A1 (en) * 2002-08-06 2004-02-12 Aleksandr Frid Using system BIOS to update embedded controller firmware
WO2004017195A1 (en) * 2002-08-06 2004-02-26 Phoenix Technologies Ltd. Using system bios to update embedded controller firmware
JP2004259244A (ja) * 2003-02-26 2004-09-16 Toshiki Suzuki Rom・ram兼用メモリー
US7555657B2 (en) * 2003-03-28 2009-06-30 Ricoh Company, Ltd. Communication device, software update device, software update system, software update method, and program
CN1455343A (zh) * 2003-05-30 2003-11-12 威盛电子股份有限公司 防止覆写dmi数据中外围端子的mac地址的方法
JP2007293514A (ja) * 2006-04-24 2007-11-08 Canon Inc バージョン管理および自動アップデート機能
US7730295B1 (en) * 2006-09-05 2010-06-01 Western Digital Technologies, Inc. Updating firmware of a peripheral device
CN103765389A (zh) * 2011-09-01 2014-04-30 日本电产三协株式会社 外围设备、外围设备的控制方法以及固件的下载系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107870882A (zh) * 2016-09-27 2018-04-03 联想企业解决方案(新加坡)有限公司 用于管理外围设备的数据协议
CN107870882B (zh) * 2016-09-27 2021-12-03 联想企业解决方案(新加坡)有限公司 用于管理外围设备的数据协议

Also Published As

Publication number Publication date
WO2014103473A1 (ja) 2014-07-03
BR112014032634A2 (pt) 2017-06-27
JP2014127152A (ja) 2014-07-07
JP6101073B2 (ja) 2017-03-22
US20150293770A1 (en) 2015-10-15
US9361138B2 (en) 2016-06-07
CN104412237B (zh) 2017-05-10

Similar Documents

Publication Publication Date Title
CN104412237A (zh) 外围设备、外围设备的控制方法、固件的下载系统以及程序
US8296752B2 (en) Implementation of in-system programming to update firmware on memory cards
US7340581B2 (en) Method of writing data to non-volatile memory
EP2180408B1 (en) Method for writing and reading data in an electrically erasable and programmable nonvolatile memory
EP1120709A2 (en) Method of rewriting a boot program in a flash micro-computer
US7555602B2 (en) Data processing apparatus and method for restoring a file system
CN104750626A (zh) 数据储存装置以及快闪存储器控制方法
US20140059273A1 (en) Host apparatus and memory device
US20100070707A1 (en) Portable electronic device and data processing method in portable electronic device
CN101431441A (zh) 一种内部植入cpu的fpga系统在线升级的方法
EP1450299A1 (en) Portable information recording medium
US20130067455A1 (en) Memory online update system and method
KR20010086400A (ko) 메모리 관리 테이블 작성 방법 및 메모리 장치
KR100425229B1 (ko) 마이크로컴퓨터 및 플래시 메모리 상에 데이터를재기록하는 방법
JP3385844B2 (ja) 自動販売機
US7025261B2 (en) Method and system for managing data designed to be stored in a programmable smart card
JP4776462B2 (ja) 携帯可能電子装置および携帯可能電子装置の制御方法
JP4460850B2 (ja) Icカードとicカードの処理方法
CN101443739B (zh) 数据存储装置及其初始化方法
US20040076033A1 (en) Access apparatus, data processing system, computer program product and computer data signal
JP3727907B2 (ja) 携帯可能電子媒体の発行システム及び発行方法と携帯可能電子媒体
KR101590275B1 (ko) 주변 장치, 주변 장치의 제어 방법 및 펌웨어의 다운로드 시스템
CN112527341B (zh) 一种车机系统升级方法、车机系统及计算机存储介质
JP3899223B2 (ja) Icカードおよびicカード搭載処理プログラムの変更・追加方法
JP2001167236A (ja) 携帯可能電子装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170510

Termination date: 20211011