CN109814813B - 具有多个存储器的装置、控制方法和存储介质 - Google Patents
具有多个存储器的装置、控制方法和存储介质 Download PDFInfo
- Publication number
- CN109814813B CN109814813B CN201811380284.6A CN201811380284A CN109814813B CN 109814813 B CN109814813 B CN 109814813B CN 201811380284 A CN201811380284 A CN 201811380284A CN 109814813 B CN109814813 B CN 109814813B
- Authority
- CN
- China
- Prior art keywords
- data
- firmware
- unrecoverable
- nonvolatile memory
- update
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1218—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
- G06F3/122—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1229—Printer resources management or printer maintenance, e.g. device status, power levels
- G06F3/123—Software or firmware update, e.g. device firmware management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种具有多个存储器的装置、控制方法和存储介质。本发明的目的在于,减少在具有多个非易失性存储器的装置中使用不可恢复数据更新固件数据所花费的时间。本发明提供了一种具有多个非易失性存储器的装置,所述装置包括:获取单元,其被构造为获取固件更新数据,所述固件更新数据用于更新保存在所述多个非易失性存储器中的各个非易失性存储器中的固件数据;以及控制单元,其被构造为进行控制,以并行地进行通过所获取的固件更新数据中包括的不可恢复数据对保存在第一非易失性存储器中的固件数据的更新、以及通过所述不可恢复数据对保存在第二非易失性存储器中的固件数据的更新。
Description
技术领域
本发明涉及用于安全更新固件数据的技术。
背景技术
在安装在嵌入有固件的装置上的非易失性存储器中,保存有代码可执行的固件数据,并且存在固件数据由于诸如问题校正和功能添加等因素而被更新的情况。在更新诸如此类的固件数据时,在执行更新期间发生关机(例如电源故障)的情况下,更新处理被中止,而没有保持写入时的数据一致性。因此,需要减少固件的更新时间的技术。
日本特开2002-189631号公报公开了:通过划分期望写入的数据并将写入多路化(multiplex)到多个非易失性存储器,来减少数据写入时间。
发明内容
这里,存在这样的情况,即,固件数据包括:除非保持一致性否则无法恢复的数据(不可恢复数据);以及即使不保持一致性也可以通过再次执行固件数据更新来恢复的数据(可恢复数据)。
日本特开2002-189631号公报没有考虑不可恢复数据和可恢复数据的概念。因此,通过多路化写入来减少固件数据的总更新时间,但是特别希望减少的、使用不可恢复数据更新固件数据所花费的时间有可能不会改变。
因此,鉴于上述问题,本发明的目的在于,减少在具有多个非易失性存储器的装置中使用不可恢复数据更新固件数据所花费的时间。
根据本发明的一方面,提供了一种具有多个非易失性存储器的装置,所述装置包括:获取单元,其被构造为获取固件更新数据,所述固件更新数据用于更新保存在所述多个非易失性存储器中的各个非易失性存储器中的固件数据;以及控制单元,其被构造为进行控制,以并行地进行通过所获取的固件更新数据中包括的不可恢复数据对保存在第一非易失性存储器中的固件数据的更新、以及通过所述不可恢复数据对保存在第二非易失性存储器中的固件数据的更新。
根据下面参考附图对示例性实施例的描述,本发明的其他特征将变得显而易见。
附图说明
图1是在本发明的实施例中的打印装置处于待机状态的情况下的图;
图2是本发明的实施例中的打印装置的控制构造图;
图3是第一实施例中的打印引擎单元的详细构造图;
图4A和图4B是第一实施例中的正常模式和固件更新模式下的操作的说明图;
图5A和图5B是固件更新数据的结构的说明图;
图6是第一实施例中的固件数据的更新处理的流程图;以及
图7是第二实施例中的固件数据的更新处理的流程图。
具体实施方式
图1是本实施例中使用的喷墨打印装置1(下文中,打印装置1)的内部构造图。在图1中,x方向表示水平方向,y方向(垂直于纸面的方向)表示喷射口在稍后将描述的打印头8中排列的方向,并且z方向表示垂直方向。
打印装置1是包括打印单元2和扫描器单元3的MFP(多功能外围设备),并且能够单独地通过打印单元2和扫描器单元3,或者通过打印单元2和扫描器单元3的互锁方式,来执行与打印操作和读取操作有关的各种处理。扫描器单元3包括ADF(自动原稿进给器)和FBS(平板扫描器),并且能够读取通过ADF自动进给的原稿和读取(扫描)用户放置在FBS的原稿台上的原稿。本实施例是具有打印单元2和扫描器单元3两者的MFP,但MFP可以是不包括扫描器单元3的方面。图1示出了打印装置1处于待机状态的情况,在待机状态下打印装置1既不执行打印操作也不执行读取操作。
在打印单元2中,在主体4的竖直向下方向的底部,用于存储打印介质(切割的片材)S的第一盒5A和第二盒5B以可附装和可拆卸的方式安装。在第一盒5A中,以堆积的方式存储直到A4尺寸的相对较小的打印介质,并且在第二盒5B中,以堆积的方式存储直到A3尺寸的相对大的打印介质。在第一盒5A的附近,设置第一进给单元6A,用于通过逐个分离来进给所存储的打印介质。类似地,在第二盒5B附近,设置第二进给单元6B。在执行打印操作的情况下,从这些盒中的一个盒中选择性地进给打印介质S。
传送辊7、排出辊12、夹紧辊7a、齿轮7b、引导件18、内引导件19和挡板11是用于沿预定方向引导打印介质S的传送机构。传送辊7布置在打印头8的上游侧,并且是由未示意性示出的传送电机驱动的驱动辊。夹紧辊7a是从动辊,其与传送辊7一起夹持并旋转打印介质S。排出辊12布置在打印头8的下游侧,并且是由未示意性示出的传送辊驱动的驱动辊。齿轮7b与排出辊12一起将打印介质S夹在中间并传送。
引导件18设置在打印介质S的传送路径中,并沿预定方向引导打印介质S。内引导件19是在y方向上延伸的构件且具有弯曲的侧表面,并且沿着侧表面引导打印介质S。挡板11是用于在双面打印操作时切换传送打印介质S的方向的构件。排出托盘13是用于装载和保持完成打印操作并且由排出辊12排出的打印介质S的托盘。
本实施例的打印头8是全线型的彩色喷墨打印头,并且其中沿着图1中的y方向排列有多个喷射口,以对应于打印介质S的宽度,根据打印数据从所述多个喷射口喷射墨。在打印头8处于待机位置的情况下,打印头8的喷射口表面8a由盖单元10盖住,如图1所示。在通过将稍后描述的打印控制器202执行打印操作的情况下,改变打印头8的方向,使得喷射口表面8a面对压板9。压板9由沿y方向延伸的平板构成,并从后侧支撑打印介质S,由打印头8对打印介质S执行打印操作。
图2是示出打印装置1中的控制构造的框图。控制构造包括:打印引擎单元200,其被构造为主要集中控制打印单元2;扫描器引擎单元300,其被构造为集中控制扫描器单元3;以及控制器单元100,其被构造为集中控制整个打印装置1。打印控制器202根据控制器单元100的主控制器101的指令控制打印引擎单元200的各种机构。扫描器引擎单元300的各种机构由控制器单元100的主控制器101控制。下面说明控制构造的细节。
在控制器单元100中,包括CPU的主控制器101根据存储在ROM 107中的程序和各种参数,通过使用RAM 106作为工作区来控制整个打印装置1。例如,在经由主机IF 102或无线IF 103从主机装置400输入打印作业的情况下,根据主控制器101的指令对由图像处理单元108接收到的图像数据执行预定的图像处理。然后,主控制器101经由打印引擎IF 105将已经执行了图像处理的图像数据发送到打印引擎单元200。在本说明书中,IF是接口的缩写。
打印装置1可以经由无线通信或有线通信从主机装置400获取图像数据,或者可以从连接到打印装置1的外部存储设备(USB存储器等)获取图像数据。用于无线通信或有线通信的通信方法不受限制。例如,作为用于无线通信的通信方法,可以应用Wi-Fi(无线保真)(注册商标)和蓝牙(注册商标)。此外,作为用于有线通信的通信方法,可以应用USB(通用串行总线)等。此外,例如,在从主机装置400输入读取命令的情况下,主控制器101经由扫描器引擎IF 109将该命令发送到扫描器引擎单元300。
操作面板104是用户对打印装置1进行输入和输出的机构。用户可以经由操作面板104给出关于诸如复印和扫描的操作的指令,以设置打印模式、识别关于打印装置1的信息等。
在打印引擎单元200中,包括CPU的打印控制器202根据存储在ROM 203中的程序和各种参数通过使用RAM 204作为工作区来控制打印单元2中包括的各种机构。在经由控制器IF 201接收到各种命令和图像数据的情况下,打印控制器202将它们临时保存在RAM 204中。打印控制器202使图像处理控制器205将保存的图像数据转换成打印数据,使得打印头8可以用于打印操作。在生成打印数据的情况下,打印控制器202经由头IF 206使打印头8基于打印数据执行打印操作。此时,打印控制器202通过经由传送控制单元207驱动图1所示的进给单元6A和6B、传送辊7、排出辊12和挡板11来传送打印介质S。根据打印控制器202的指令,通过互锁打印介质S的传送操作来执行打印头8的打印操作,从而执行打印处理。这里,示出了其中打印引擎单元200分别包括一个控制器IF 201、包括CPU的一个打印控制器202、一个ROM 203和一个RAM 204的构造。然而,打印引擎单元200也可以包括多个组件。
头托架控制单元208根据打印装置1的操作状态(例如维护状态和打印状态)改变打印头8的方向和位置。墨供应控制单元209控制墨供应单元15,使得供应到打印头8的墨的压力被调节在适当的范围内。在对打印头8执行维护操作时,维护控制单元210控制维护单元16中的盖单元10和擦拭单元17的操作。
在扫描器引擎单元300中,主控制器101根据存储在ROM 107中的程序和各种参数通过使用RAM 106作为工作区来控制扫描器控制器302的硬件资源。由此,控制包括在扫描器单元3中的各种机构。例如,通过主控制器101经由控制器IF 301控制扫描器控制器302内的硬件资源,由用户安装在ADF上的原稿经由传送控制单元304传送并由传感器305读取。然后,扫描器控制器302将读取的图像数据保存在RAM 303中。打印控制器202可以通过将如上所述获取到的图像数据转换成打印数据而使打印头8基于扫描器控制器302读取的图像数据执行打印操作。
[第一实施例]
<关于打印引擎单元>
在下文中,通过使用图3来说明本实施例中的打印引擎单元200的详细构造。图3是用于说明本实施例中的打印引擎单元200的详细构造的框图。
本实施例中的打印引擎单元200包括第一SoC(片上系统)基板280和第二SoC基板290。第一SoC基板280具有控制器引擎IF 201x、串行ROM(以下简称为SROM)203x、RAM 204x和CPU 211x。控制器引擎IF 201x包括PCI Express(以下简称为PCIe)、USB、以太网等。在SROM 203x中,提供了布置有不可恢复数据的不可恢复数据区域505x和布置有可恢复数据的可恢复数据区域506x。将在解释图4A和图4B时详细描述不可恢复数据和可恢复数据的细节。
第二SoC基板290也具有与第一SoC基板280相同的构造。即,第二SoC基板290具有控制器引擎IF 201y、SROM 203y、RAM 204y和CPU 211y,并且在SROM 203y中,提供了不可恢复数据区域505y和可恢复数据区域506y。如上所述,打印引擎单元200包括具有相同构造的两个SoC基板。在本实施例中,维护单元16中的盖单元10和擦拭单元17连接到第一SoC基板280,并且传送控制单元207和头IF 206连接到第二SoC基板290。通过进行这样的构造,可以通过两个SoC基板执行与机构控制、图像处理等有关的各种处理的分布式处理。
本实施例中的主机装置400是将用于更新保存在打印装置1中的固件数据的数据(下文中,称为固件更新数据)发送到打印装置1的发送源。将通过打印装置1发送的固件更新数据变成包。在下文中,解释了如下情况:在固件更新数据中,包括第一SoC基板280的不可恢复数据501和可恢复数据502、以及第二SoC基板290的不可恢复数据503和可恢复数据504。稍后将详细描述变成包的固件更新数据(的结构)(参见图5A和图5B)。此外,这里,描述了主机装置400将固件更新数据发送到打印装置1的情况,但是打印装置1获取固件更新数据的方面不限于此。例如,打印装置1还可以通过使用其中保存固件更新数据的存储介质(例如USB和CD-ROM)来获取固件更新数据。
由主机装置400发送到打印装置1的固件更新数据经由控制器单元100被传送到打印引擎单元200。最后,在固件更新数据中,用于第一SoC基板280的不可恢复数据501被布置在不可恢复数据区域505x中,并且,可恢复数据502被布置在可恢复数据区域506x中。此外,在固件更新数据中,用于第二SoC基板290的不可恢复数据503被布置在不可恢复数据区域505y中,并且可恢复数据504被布置在可恢复数据区域506y中。
<关于固件数据的更新处理>
在本实施例中,通过在如下两种模式之间切换来执行固件数据的更新处理:正常模式和固件更新模式。正常模式是打印装置1由保存在SROM 203x和SROM 203y中的当前固件数据控制的模式。与此相对,固件更新模式是通过从主机装置400发送的固件更新数据更新保存在SROM 203x和203y中的固件数据的模式,在下文中,通过使用图4A和图4B来解释正常模式和固件更新模式。图4A是在正常模式下激活时的操作的说明图,并且图4B是固件更新模式下的操作的说明图。
首先,通过使用图4A解释在正常模式下激活时的操作。在打印装置1以正常模式激活的情况下,第一SoC基板280的CPU 211x和第二SoC基板290的CPU 211y通过接收来自高阶控制器单元100的命令同时分别开始操作。操作的开始定时可能会有所偏移。然后,第一SoC基板280的CPU 211x执行保存在SROM 203x中的引导程序,并且第二SoC基板290的CPU 211y执行保存在SROM 203y中的引导程序。由此,执行用于使SoC基板280和SoC基板290操作的初始化。
此后,保存在SROM 203x中的加载器程序被加载到RAM 204x上,并且保存在SROM203y中的加载器程序被加载到RAM 204y上。因此,程序计数器被移动到RAM区域侧。
此后,通过CPU 211x执行加载到RAM 204x上的加载器程序,保存在SROM 203x中的主固件被加载到RAM 204x上。此时,程序计数器的值变为预定地址(主固件的地址)。类似地,通过CPU 211y执行加载到RAM 204y上的加载器程序,保存在SROM 203y中的主固件被加载到RAM 204y上。
此后,CPU 211x执行加载到RAM 204x上的主固件,并且CPU 211y执行加载到RAM204y上的主固件。由此,使SoC基板之间的引擎IF(在本实施例中,PCIe)导通,并且建立芯片之间的连接,然后,执行属于各SoC基板的电源、致动器和传感器的初始化,并且,进入可以执行打印操作的状态。
继上文之后,通过使用图4B解释固件更新模式下的操作。在固件更新模式中,SoC基板280的CPU 211x和SoC基板290的CPU 211y通过接收来自高阶控制器单元100的命令同时分别开始操作。操作的开始定时可能会有所偏移。然后,第一SoC基板280的CPU 211x执行保存在SROM 203x中的引导程序,并且第二SoC基板290的CPU 211y执行保存在SROM 203y中的引导程序。由此,执行用于使SoC基板280和SoC基板290操作的初始化处理。
此后,保存在SROM 203x中的加载器程序被加载到RAM 204x上,并且保存在SROM203y中的加载器程序被加载到RAM 204y上。因此,程序计数器被移动到RAM区域侧。
此后,通过CPU 211x执行加载到RAM 204x上的加载器程序,将保存在SROM 203x中的下载器程序加载到RAM 204x上。此时,程序计数器的值变为预定地址(下载器程序的地址)。类似地,通过CPU 211y执行加载到RAM 204y上的加载器程序,保存在SROM 203y中的下载器程序被加载到RAM 204y上。
SoC基板280的CPU 211x执行加载到RAM 204x上的下载器程序,并且SoC基板290的CPU 211y执行加载到RAM 204y上的下载器程序。由此,使SoC基板280和SoC基板290之间的引擎IF导通,建立两个SoC基板之间的通信,并且SoC基板280和SoC基板290进入能够接收来自高阶控制器单元100的固件更新数据的状态。
通过CPU 211x执行加载到RAM 204x上的下载器程序,使得第一SoC基板280可以经由引擎IF将由第一SoC基板280自身接收到的固件更新数据的部分或全部传送到第二SoC基板290。
讨论了这样的情况,其中,在固件数据更新处理期间(即,在正在重写ROM中保存的主固件时),打印装置1的电源因电源故障等而断开。在这种情况下,在不破坏引导程序、加载器程序和下载器程序的条件下,虽然不能在正常模式下激活,但是可以在固件更新模式下再次激活打印装置1。因此,可以再次执行固件数据的更新处理。
鉴于上述内容,在本说明书中,引导程序、加载器程序和下载器程序被表示为“不可恢复数据”,另一方面,主固件被表示为“可恢复数据”。此外,其中布置了诸如引导程序、加载器程序和下载器程序之类的不可恢复数据的SROM区域被表示为“不可恢复数据区域”,另一方面,其中布置了主固件的SROM区域被表示为“可恢复数据区域”。在不可恢复数据被写入不可恢复数据区域的同时由于电源故障等而断开打印装置1的电源的情况下,固件更新模式下的激活在此后接通电源时失败,并且再也无法再写入固件数据了。
还可以说不可恢复数据是进入固件更新模式所必需的程序。也就是说,为了进入固件更新模式,引导程序、加载器程序和下载器程序是必需的,因此,在本实施例中,这些程序对应于不可恢复数据。另一方面,还可以说可恢复数据是进入固件更新模式不必要的程序。也就是说,在本实施例中,主固件对应于可恢复数据。
在更新不可恢复数据期间断开电源的情况下,可能需要进行基板的替换等。
<关于变成包的固件更新数据的结构>
下面,解释本实施例中的固件更新数据的结构。在本实施例中用于更新固件数据的数据(固件更新数据)被变成包并且包括多个包数据(package data)。图5A是示出可以在本实施例中使用的固件更新数据的结构示例的图。打印引擎单元200预先具有与诸如此类的固件更新数据的结构相关的定义信息(数据的阵列方面等),并且CPU 211x和211y可以基于该定义信息解释固件更新数据。
图5A中所示的固件更新数据包括从顶部开始按包数据A1、包数据A2、……、包数据A7的顺序布置的七个包数据。作为关于包数据的定义信息,有标签名称(TagName)、数据写入目标(Target)、数据类型(DataType)、起始地址(StartAddress·4字节)和数据大小(Length,长度)。
包数据A1仅包括指示固件更新数据的开始的开始标签。
包数据A2的标签名称(标签名称值)是TYPE(3),目标值是PrintEngine(3)。这些值意味着包数据A2是打印引擎单元200的数据。
包数据A3的标签名称是DATA(4),其是指示包括实际写入SROM的数据(称为实际数据)的值。此外,包数据A3的写入目标是第一SoC基板280的SROM 203x,因为目标值是SoC1SROM(1)。包数据A3的数据类型是不可恢复数据,因为数据类型值是Recovery:NG(0)。包数据A3的起始地址是0xFFFF0000,大小是0x6000。
包数据A4的标签名称是DATA(4),其是指示包括实际数据的值。此外,包数据A4的写入目标是第一SoC基板280的SROM 203x,因为目标值是SoC1 SROM(1)。包数据A4的数据类型是可恢复数据,因为数据类型值是Recovery:OK(1)。包数据A4的起始地址是0xF0000000,大小是0x30000。
包数据A5的标签名称是DATA(4),其是指示包括实际数据的值。此外,包数据A5的写入目标是第二SoC基板290的SROM 203y,因为目标值是SoC 2SROM(2)。包数据A5的数据类型是可恢复数据,因为数据类型值是Recovery:OK(1)。包数据A5的起始地址是0xF0000000,大小是0x36000。
包数据A6的标签名称是DATA(4),其是指示包括实际数据的值。此外,包数据A6的写入目标是第二SoC基板290的SROM 203y,因为目标值是SoC2 SROM(2)。包数据A6的数据类型是不可恢复数据,因为数据类型值是Recovery:NG(0)。包数据A6的起始地址是0xFFFF0000,大小是0x6000。包数据A3至A6中的各包数据具有这样的结构,其中在指示尺寸的长度值之后,布置与尺寸相对应的实际数据,但是在图5A中,未示意性地示出实际数据。
包数据A7仅包括指示固件更新数据结束的结束标签。
<关于打印引擎单元中的固件数据的更新处理>
用户(管理员等)操作操作面板104并给出指令以转变到固件更新模式。在给出转变到固件更新模式的指令的情况下,控制器单元100、打印引擎单元200和扫描器引擎单元300分别执行终止处理以终止正常激活模式,并转变进入固件更新模式。由此,打印装置1进入等待经由主机IF 102从主机装置400发送的固件更新数据的状态(称为数据接收状态)。
在打印装置1进入数据接收状态之后,用户从主机装置400发送固件更新数据。即,在这种情况下,主机装置400预先获取固件更新数据。这里,解释使用图5A所示的固件更新数据的情况。此外,作为固件更新的另一种方法,存在利用网络的更新方法。也就是说,打印装置1周期性地访问预先确定的服务器并确定服务器中是否存在固件更新数据。这里,在确定服务器中存在固件更新数据的情况下,打印装置1在打印装置1的操作面板上显示关于是否获取固件更新程序的询问。然后,打印装置1也可以通过用户给出获取用于查询的程序的指令来从服务器获取固件更新数据。控制器单元100经由主机IF 102开始接收固件更新数据,并且将接收到的固件更新数据临时保存在RAM 106中。控制器单元100的主控制器101确定接收到的固件更新数据是用于打印引擎单元200,因为包数据A2的目标值是PrintEngine(3)。因此,此后,主控制器101经由打印引擎IF 105和控制器引擎IF 201x将固件更新数据传送到打印引擎单元200的第一SoC基板280。传送的固件更新数据临时保存在第一SoC基板280的RAM 204x中。
图6是在本实施例中在打印引擎单元200侧执行的固件数据的更新处理的流程图。
在步骤S601,第一SoC基板280将经由控制器引擎IF 201x接收到的固件更新数据临时保存在RAM 204x中。这里,解释使用图5A所示的固件更新数据的情况。如上所述,固件更新数据被变成包并且包括包数据A1至A7。
在步骤S602,第一SoC基板280的CPU 211x检查关于保存在RAM 204x中的固件更新数据中包括的所有包数据的定义信息。然后,CPU 211x导出各个包数据的写入目标和数据类型。
在步骤S603,CPU 211x基于步骤S602的结果,来确定在固件更新数据内是否存在数据类型是不可恢复数据但写入目标不同的两个或更多个包数据。在步骤S603的确定结果是肯定的情况下,处理进入步骤S604。另一方面,在确定结果是否定的情况下,处理进入步骤S605。在使用图5A中所示的固件更新数据的情况下,包数据A3的数据类型是不可恢复数据,且其写入目标是第一SoC基板280的SROM 203x。此外,包数据A6的数据类型是不可恢复数据,且其写入目标是第二SoC基板290的SROM 203y。因此,存在数据类型是不可恢复数据但其写入目标不同的两个包数据,因此,处理进入步骤S604。
在步骤S604,第一SoC基板280的CPU 211x和第二SoC基板290的CPU 211y执行控制,使得同时通过满足步骤S603的条件的包数据更新固件数据。具体地,通过CPU 211x的控制,同时执行固件数据的更新。
详细解释在步骤S604的固件数据的同时更新处理。首先,第一SoC基板280的CPU211x经由控制器引擎IF 201x和201y将在步骤S601中保存在RAM 204x中的固件更新数据的部分传送到第二SoC基板290。这里传送的固件更新数据具体是如下包数据,其写入目标是满足步骤S603的条件的包数据的SROM 203y。传送到第二SoC基板290的固件更新数据被临时保存在RAM 204y中。在数据传送之后,CPU 211x删除保存在不可恢复数据区域505x中的数据,并将临时保存在RAM 204x中的不可恢复数据写入不可恢复数据区域505x。此外,与此同时,CPU 211x向CPU 211y给出删除保存在不可恢复数据区域505y中的数据和将临时保存在RAM 204y中的不可恢复数据写入不可恢复数据区域505y的指令。以上是固件数据的同时更新处理的内容。
在使用图5A中所示的固件更新数据的情况下,基本上在同一定时给出将包数据A3写入SROM 203x的指令和将包数据A6写入SROM 203y的指令。因此,基本上在同一定时开始向各SROM写入数据,并且数据的大小相同,因此,基本上在同一定时完成对各SROM的数据写入。仅需要执行步骤S604的处理,以便执行对SROM 203x的写入处理和对SROM 203y的写入处理,其中至少一部分并行执行。
在步骤S605,CPU 211x确定在不满足步骤S603的条件的包数据中是否存在写入目标不同的两个或更多个包数据。在步骤S605的确定结果是肯定的情况下,处理进入步骤S606。另一方面,在确定结果是否定的情况下,处理进入步骤S607。在使用图5A所示的固件更新数据的情况下,包数据A4的写入目标是第一SoC基板280的SROM 203x,并且包数据A5的写入目标是第二SoC基板290的SROM 203y。因此,在不满足步骤S603的条件的包数据中,存在写入目标不同的两个包数据,因此处理进入步骤S606。
在步骤S606,第一SoC基板280的CPU 211x和第二SoC基板290的CPU 211y执行控制,使得同时通过满足步骤S605的条件的包数据更新固件数据。在该步骤中固件数据的同时更新处理与在步骤S604中固件数据的同时更新处理相同。在使用图5A中所示的固件更新数据的情况下,基本上在同一定时给出将包数据A4写入SROM 203x的指令和将包数据A5写入SROM 203y的指令。
在步骤S607,在存在剩余包数据的情况下,CPU 211x和CPU 211y执行控制,以便通过剩余包数据执行固件数据的更新处理,并且完成一系列处理。这里所指的剩余包数据是既不满足步骤S603的条件也不满足步骤S605的条件的包数据。在使用图5A中所示的固件更新数据的情况下,不存在与其对应的包数据,因此,不执行该步骤的固件数据的更新处理。以上是本实施例中的固件数据的更新处理的内容。
<关于本实施例的效果、变型示例等>
在本实施例中,通过基于数据类型对多个ROM同时执行数据的重写来更新固件数据。由此,可以减少可能不再可能通过断开电源来激活打印装置1的时区,具体地说,将不可恢复数据写入ROM的时间。在本实施例中,如上所述,按照不可恢复数据、可恢复数据的顺序执行ROM中的数据的重写。然而,通过假设用户打算在执行固件数据的更新处理之后取消操作并且断开打印装置的电源的场景,也可以按照可恢复数据、不可恢复数据的顺序执行ROM中的数据的重写。
此外,在本实施例中,通过使用数据是不可恢复数据的条件和写入目标不同的条件,确定是否可以同时更新不同ROM中的固件数据(图6中的步骤S603)。这里,除了那些条件之外,还可以通过考虑写入各包数据所需的时间来确定更新的定时。通过这样做,可以对用来减少可能不再可能通过断开电源来激活打印装置1的时区的任务,执行更严格的控制。
具体地说,在图6中的步骤S603中,在检查各包数据的写入目标和数据类型时,还检查各包数据的大小(长度值)。
写入所需的时间是基于写入目标的设备和数据大小计算的预测值。在对多个ROM执行写入并且各ROM中的写入速度相同的情况下,可以仅基于数据大小来计算写入所需的时间。此外,写入所需的时间除了写入数据所需的时间之外还可以包括删除数据所需的时间。
在步骤S603,在可以掌握写入所需时间的情况下,不一定需要同时开始向多个ROM写入数据。仅需要调整写入定时等,以便在具有最长更新时间的ROM的更新时间内完成其他ROM的更新。
在步骤S603还可以确定被确定不执行同时更新的包数据的写入顺序,使得更新时间基于写入所需的时间和写入目标设备而变得最短。由此,可以进一步减少固件数据的更新处理所需的时间。
[第二实施例]
在第一实施例中,第一SoC基板280的CPU 211x分析固件更新数据(图6中的步骤S602)并确定是否执行固件数据的同时更新(图6中的步骤S603,然后是步骤S605)。与此相反,在本实施例中,解释了省略确定是否执行固件数据的同时更新的方法。
<关于固件更新数据>
图5B是示出可以在本实施例中使用的固件更新数据的结构示例的图。图5B中所示的固件更新数据包括从顶部开始按包数据B1、包数据B2、……、包数据B7的顺序布置的七个包数据。图5B所示的固件更新数据包括与图5A所示的固件更新数据相同的内容,但是,数据的布置顺序与图5A所示的固件更新数据的布置顺序不同。
<关于固件数据的更新处理>
在下文中,通过使用图7解释本实施例中的固件数据的更新处理。
在步骤S701,第一SoC基板280将经由控制器引擎IF 201x接收到的固件更新数据临时保存在对应于SROM 203x的RAM 204x中。该步骤与第一实施例的步骤S601相同。
在步骤S702,针对对应于SROM 203y的RAM 204y,CPU 211x和CPU 211y在步骤S701复制并保存临时保存在RAM 204x中的固件更新数据。该处理通过CPU 211x经由控制器引擎IF 201x和201y将在步骤S701中保存在RAM 204x中的固件更新数据传送到第二SoC基板290来实现。
在RAM 204上复制固件更新数据时,存在如下可能:通过仅选择和复制第二SoC基板290的数据,可以减少数据复制所需的时间和所使用的RAM量。然而,另外需要选择数据的时间,因此,数据复制所需的时间与数据选择所需的时间之间的关系是权衡关系。因此,在本实施例中,假设数据传输速度高,因此,固件更新数据(即,包括在固件更新数据中的所有包数据)在RAM 204y上被原样地复制,而没有执行数据选择。
在完成将保存在RAM 204x中的固件更新数据复制到RAM 204y之后,CPU 211x从CPU 211y接收到完成固件数据的更新准备的通知。此后,CPU 211x指示CPU 211y开始在第二SoC基板290中更新,并且在此之后,立即给出在第一SoC基板280中开始更新的指令。然后,在下面的步骤S703到步骤S706,执行分别对第一SoC基板280和第二SoC基板290中的固件数据的更新。
在步骤S703,第一SoC基板280的CPU 211x关注保存在RAM 204x中的固件更新数据的一条未处理的包数据(关注的包数据的设置)。类似地,第二SoC基板290的CPU 211y关注保存在RAM 204y中的固件更新数据的一条未处理的包数据。在该步骤中关注的包数据的设置是根据固件更新数据内的阵列(从顶部开始的顺序)来执行的。
在步骤S704,第一SoC基板280的CPU 211x确定关注的包数据的标签名称是否是指示固件更新数据的结束的END(2)。在该步骤的确定结果是肯定的情况下,该系列处理终止。另一方面,在确定结果是否定的情况下,处理进入步骤S705。类似地,第二SoC基板290的CPU211y确定关注的包数据的标签名称是否是指示固件更新数据的结束的END(2)。
在步骤S705,第一SoC基板280(的CPU 211x)基于关注的包数据的目标值确定关注的包数据的写入目标是否是第一SoC基板280自身的SROM 203x。在该步骤的确定结果是肯定的情况下,处理进入步骤S706。另一方面,在确定结果是否定的情况下,处理返回到步骤S703。第二SoC基板290(的CPU 211y)类似地基于关注的包数据的目标值确定关注的包数据的写入目标是否是第二SoC基板290自身的SROM 203y。
在步骤S706,CPU 211x通过满足步骤S705的条件的关注的包数据执行固件数据的更新处理,具体地,将关注的包数据的内容写入SROM 203x。类似地,CPU 211y通过满足步骤S705的条件的关注的包数据执行固件数据的更新处理,具体地,将关注的包数据的内容写入SROM 203y。接下来,处理返回到步骤S703。以上是本实施例中的固件数据的更新处理的内容。
<关于固件数据的更新处理的具体示例>
在下文中,解释通过使用图5B中所示的固件更新数据来执行本实施例中的固件数据的更新处理的情况。
在这种情况下,针对第一SoC基板280的SROM 203x依次执行使用包数据B3的写入和使用包数据B5的写入。此外,针对第二SoC基板290的SROM 203y依次执行使用包数据B4的写入和使用包数据B6的写入。结果,基本上在同一定时开始和终止使用包数据B3执行写入和使用包数据B4执行写入。
如上所述,在本实施例中,设计了固件更新数据内的数据布置顺序。具体地,在固件更新数据内,数据按照不可恢复数据、可恢复数据的顺序(具体地,按照包数据B3、B4、B5和B6的顺序)布置。通过将所有不可恢复数据布置得比可恢复数据更靠近顶侧,使得可以在不同SROM中通过不可恢复数据同步更新固件数据,即,使通过不可恢复数据的更新的开始定时尽可能相同。如上所述,通过设计固件更新数据内的数据布置顺序,在不执行确定是否执行同时更新的处理的方面中,也可以获得与第一实施例相同的效果。
<关于本实施例的效果、变型示例等>
通过本实施例,可以减少可能不再可能通过断开电源来激活打印装置1的时区,具体地说,将不可恢复数据写入ROM的时区。
在上述实施例中,解释了打印装置安装多个SoC基板的构造,但是打印装置中包括的SoC基板的数量不限于两个或更多个,而且可以是一个。也就是说,可以将本发明应用于包括多个非易失性存储器并且能够并行执行写入非易失性存储器的任何打印装置。
此外,在上述实施例中,解释了将本发明应用于喷墨打印装置的情况,但是也可以将本发明应用于除喷墨打印装之外的信息处理装置。也就是说,可以将本发明应用于包括多个非易失性存储器的信息处理装置(例如,汽车,工业设备,移动电子设备,服务器等)。
(其它实施例)
本发明的(多个)实施例也可以通过如下实现:一种系统或装置的计算机,该系统或装置读出并执行在存储介质(其也可被更充分地称为“非暂态计算机可读存储介质”)上记录的计算机可执行指令(例如,一个或多个程序),以执行上述(多个)实施例中的一个或多个的功能,并且/或者,该系统或装置包括用于执行上述(多个)实施例中的一个或多个的功能的一个或多个电路(例如,专用集成电路(ASIC));以及由该系统或者装置的计算机执行的方法,例如,从存储介质读出并执行计算机可执行指令,以执行上述(多个)实施例中的一个或多个的功能,并且/或者,控制所述一个或多个电路以执行上述(多个)实施例中的一个或多个的功能。所述计算机可以包括一个或更多处理器(例如,中央处理单元(CPU),微处理单元(MPU)),并且可以包括分开的计算机或分开的处理器的网络,以读出并执行所述计算机可执行指令。所述计算机可执行指令可以例如从网络或存储介质被提供给计算机。例如,存储介质可以包括如下中的一个或多个:硬盘,随机存取存储器(RAM),只读存储器(ROM),分布式计算系统的存储器,光盘(例如,压缩盘(CD),数字多功能光盘(DVD),或蓝光光盘(BD)TM),闪速存储器装置,存储卡,等等。
本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(CPU)、微处理单元(MPU)读出并执行程序的方法。
根据本发明,在具有多个非易失性存储器的装置中,可以减少使用不可恢复数据更新固件数据所需的时间。
虽然针对示例性实施例描述了本发明,但是,应该理解,本发明不限于公开的示例性实施例。下述权利要求的范围应当被赋予最宽的解释,以便涵盖所有这类变型以及等同的结构和功能。
Claims (21)
1.一种具有多个非易失性存储器的装置,所述装置包括:
获取单元,其被构造为获取固件更新数据,所述固件更新数据用于更新保存在所述多个非易失性存储器中的各个非易失性存储器中的固件数据;
确定单元,其被构造为确定保存在第一非易失性存储器中的第一不可恢复数据和保存在不同于所述第一非易失性存储器的第二非易失性存储器中的第二不可恢复数据是否包括在所述固件更新数据中;以及
控制单元,其被构造为,在确定保存在所述第一非易失性存储器中的第一不可恢复数据和保存在不同于所述第一非易失性存储器的所述第二非易失性存储器中的第二不可恢复数据包括在所述固件更新数据中的情况下,进行控制,以并行地进行通过所获取的固件更新数据中包括的所述第一不可恢复数据对保存在所述第一非易失性存储器中的固件数据的更新、以及通过所述第二不可恢复数据对保存在所述第二非易失性存储器中的固件数据的更新。
2.根据权利要求1所述的装置,其中
所述固件更新数据包括多个包数据,
作为关于包数据的定义信息,有标签名称、写入目标、数据类型、起始地址和数据大小,并且
数据类型指示第一不可恢复数据、第二不可恢复数据或可恢复数据。
3.根据权利要求2所述的装置,其中
控制单元给出删除保存在第一非易失性存储器中的固件数据并将第一不可恢复数据写入第一非易失性存储器的指令,并且与所述指令并行地给出删除保存在第二非易失性存储器中的固件数据并将第二不可恢复数据写入第二非易失性存储器的指令。
4.根据权利要求2所述的装置,其中
控制单元基于构成固件更新数据的各个包数据的写入目标和数据类型,来进行控制。
5.根据权利要求4所述的装置,其中
控制单元基于针对各个包数据进行对多个非易失性存储器的写入所需的时间,来进行控制。
6.根据权利要求5所述的装置,所述装置还包括:
计算单元,其被构造为基于各个包数据的数据大小和写入目标来计算时间。
7.根据权利要求6所述的装置,其中
控制单元进行控制,使得通过第一不可恢复数据对保存在第一非易失性存储器中的固件数据的更新时间小于,通过第二不可恢复数据对保存在第二非易失性存储器中的固件数据的更新时间。
8.根据权利要求2所述的装置,其中
控制单元按照第一不可恢复数据、第二不可恢复数据和可恢复数据的顺序,或者按照可恢复数据、第一不可恢复数据和第二不可恢复数据的顺序,来更新固件数据。
9.根据权利要求2所述的装置,其中
在固件更新数据内,第一不可恢复数据和第二不可恢复数据被布置得比可恢复数据更靠近顶侧。
10.根据权利要求9所述的装置,其中
获取的固件更新数据被保存在与第一非易失性存储器相对应的第一易失性存储器中,并且
保存在第一易失性存储器中的固件更新数据被复制在与第二非易失性存储器相对应的第二易失性存储器中。
11.根据权利要求10所述的装置,其中
控制单元通过保存在第一易失性存储器中的固件更新数据的、写入目标是第一非易失性存储器的包数据,进行对第一非易失性存储器的写入,并通过在第二易失性存储器中复制的固件更新数据的、写入目标是第二非易失性存储器的包数据,进行对第二非易失性存储器的写入。
12.根据权利要求1所述的装置,所述装置还包括:
打印控制单元,其被构造为基于打印数据进行打印处理。
13.根据权利要求1所述的装置,其中所述控制单元在通过所述第一不可恢复数据和所述第二不可恢复数据并行地进行更新后,通过可恢复数据进行更新。
14.一种具有多个非易失性存储器的装置的控制方法,所述控制方法包括:
获取固件更新数据,所述固件更新数据用于更新保存在所述多个非易失性存储器中的各个非易失性存储器中的固件数据;
确定保存在第一非易失性存储器中的第一不可恢复数据和保存在不同于所述第一非易失性存储器的第二非易失性存储器中的第二不可恢复数据是否包括在所述固件更新数据中;以及
在确定保存在所述第一非易失性存储器中的第一不可恢复数据和保存在不同于所述第一非易失性存储器的所述第二非易失性存储器中的第二不可恢复数据包括在所述固件更新数据中的情况下,进行控制,以并行地进行通过所获取的固件更新数据中包括的所述第一不可恢复数据对保存在所述第一非易失性存储器中的固件数据的更新、以及通过所述第二不可恢复数据对保存在所述第二非易失性存储器中的固件数据的更新。
15.根据权利要求14所述的控制方法,其中
所述固件更新数据包括多个包数据,
作为关于包数据的定义信息,有标签名称、写入目标、数据类型、起始地址和数据大小,并且
数据类型指示第一不可恢复数据、第二不可恢复数据或可恢复数据。
16.根据权利要求15所述的控制方法,其中
并行地给出删除保存在第一非易失性存储器中的固件数据并将第一不可恢复数据写入第一非易失性存储器的指令、以及删除保存在第二非易失性存储器中的固件数据并将第二不可恢复数据写入第二非易失性存储器的指令。
17.根据权利要求15所述的控制方法,其中
按照第一不可恢复数据、第二不可恢复数据和可恢复数据的顺序,或者按照可恢复数据、第一不可恢复数据和第二不可恢复数据的顺序,来更新固件数据。
18.根据权利要求15所述的控制方法,其中
在固件更新数据内,第一不可恢复数据和第二不可恢复数据被布置得比可恢复数据更靠近顶侧。
19.根据权利要求18所述的控制方法,其中
获取的固件更新数据被保存在与第一非易失性存储器相对应的第一易失性存储器中,并且
保存在第一易失性存储器中的固件更新数据被复制在与第二非易失性存储器相对应的第二易失性存储器中。
20.根据权利要求14所述的控制方法,所述控制方法还包括:
基于打印数据进行打印处理。
21.一种非暂态计算机可读存储介质,其存储用于使计算机进行具有多个非易失性存储器的装置的控制方法的程序,所述控制方法包括:
获取固件更新数据,所述固件更新数据用于更新保存在所述多个非易失性存储器中的各个非易失性存储器中的固件数据;
确定保存在第一非易失性存储器中的第一不可恢复数据和保存在不同于所述第一非易失性存储器的第二非易失性存储器中的第二不可恢复数据是否包括在所述固件更新数据中;以及
在确定保存在所述第一非易失性存储器中的第一不可恢复数据和保存在不同于所述第一非易失性存储器的所述第二非易失性存储器中的第二不可恢复数据包括在所述固件更新数据中的情况下,进行控制,以并行地进行通过所获取的固件更新数据中包括的所述第一不可恢复数据对保存在所述第一非易失性存储器中的固件数据的更新、以及通过所述第二不可恢复数据对保存在所述第二非易失性存储器中的固件数据的更新。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017-222817 | 2017-11-20 | ||
JP2017222817A JP7058984B2 (ja) | 2017-11-20 | 2017-11-20 | ファームウェア組み込み装置、制御方法、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109814813A CN109814813A (zh) | 2019-05-28 |
CN109814813B true CN109814813B (zh) | 2022-10-18 |
Family
ID=66533050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811380284.6A Active CN109814813B (zh) | 2017-11-20 | 2018-11-20 | 具有多个存储器的装置、控制方法和存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10649762B2 (zh) |
JP (1) | JP7058984B2 (zh) |
CN (1) | CN109814813B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104427119A (zh) * | 2013-09-06 | 2015-03-18 | 展讯通信(上海)有限公司 | 通信终端及其非易失性数据的处理方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002189631A (ja) | 2000-12-22 | 2002-07-05 | Toshiba Corp | 情報書き込み装置、及びこれを有する携帯電子機器 |
JP4804101B2 (ja) | 2005-10-19 | 2011-11-02 | 京セラミタ株式会社 | ファームウェア更新方法及び情報処理装置 |
JP2008197933A (ja) | 2007-02-14 | 2008-08-28 | Matsushita Electric Ind Co Ltd | マイクロコンピュータおよびブートプログラムの書き換え方法 |
WO2010103562A1 (ja) * | 2009-03-09 | 2010-09-16 | 富士通株式会社 | 情報処理装置、情報処理装置の制御方法、及び情報処理装置の制御プログラム |
US9292277B2 (en) * | 2009-12-18 | 2016-03-22 | Hewlett-Packard Development Company, L.P. | Methods and devices for updating firmware of a component using a firmware update application |
JP2012073862A (ja) | 2010-09-29 | 2012-04-12 | Canon Inc | 画像形成装置、そのファームウェア更新制御方法、及びファームウェア更新制御プログラム |
JP2012181578A (ja) | 2011-02-28 | 2012-09-20 | Fuji Xerox Co Ltd | 更新制御装置及びプログラム |
US8954721B2 (en) * | 2011-12-08 | 2015-02-10 | International Business Machines Corporation | Multi-chip initialization using a parallel firmware boot process |
CN102591602B (zh) * | 2011-12-30 | 2014-07-09 | 浙江大学 | 一种基于多核处理器的高速数码印花处理系统及方法 |
JP5821640B2 (ja) | 2012-01-06 | 2015-11-24 | 株式会社リコー | 情報処理装置 |
JP5894495B2 (ja) | 2012-04-27 | 2016-03-30 | キヤノン株式会社 | 情報処理装置、情報処理装置におけるファームウエアの更新方法およびプログラム |
CN103383676B (zh) * | 2012-07-13 | 2016-07-20 | 威盛电子股份有限公司 | 集线器装置以及用以初始化集线器装置的方法 |
JP6265631B2 (ja) * | 2013-06-14 | 2018-01-24 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法、及びプログラム |
JP6185772B2 (ja) * | 2013-06-27 | 2017-08-23 | キヤノン株式会社 | 情報処理装置、その制御方法、及びプログラム |
JP2015022681A (ja) | 2013-07-23 | 2015-02-02 | キヤノン株式会社 | 情報処理装置および情報処理装置におけるソフトウェア更新方法 |
CN104503781A (zh) * | 2014-12-10 | 2015-04-08 | 华为技术有限公司 | 硬盘的固件升级方法和存储系统 |
US9858067B2 (en) * | 2015-10-05 | 2018-01-02 | Samsung Electronics Co., Ltd. | Electronic system with update control mechanism and method of operation thereof |
US9710254B2 (en) * | 2015-10-28 | 2017-07-18 | International Business Machines Corporation | Replacing an accelerator firmware image without operating system reboot |
US10437680B2 (en) * | 2015-11-13 | 2019-10-08 | Kabushiki Kaisha Toshiba | Relay apparatus, relay method, and computer program product |
US10846077B2 (en) | 2015-12-14 | 2020-11-24 | Mitsubishi Electric Corporation | Information processing device, elevator device, and program update method |
KR102395195B1 (ko) * | 2016-01-07 | 2022-05-10 | 삼성전자주식회사 | 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템 |
CN205844831U (zh) * | 2016-07-27 | 2016-12-28 | 广州奥松电子有限公司 | 蓝牙固件升级辅助装置 |
-
2017
- 2017-11-20 JP JP2017222817A patent/JP7058984B2/ja active Active
-
2018
- 2018-11-06 US US16/181,525 patent/US10649762B2/en active Active
- 2018-11-20 CN CN201811380284.6A patent/CN109814813B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104427119A (zh) * | 2013-09-06 | 2015-03-18 | 展讯通信(上海)有限公司 | 通信终端及其非易失性数据的处理方法 |
Non-Patent Citations (3)
Title |
---|
《Communication Quantization for Data-Parallel Training of Deep Neural Networks》;Nikoli Dryden等;《2016 2nd Workshop on Machine Learning in HPC Environments(MLHPC)》;20170130;第1-8页 * |
一种自主恢复的高可靠存储控制器设计;王党辉等;《西北工业大学学报》;20130615(第03期);全文 * |
浅析常见存储介质数据恢复的原理及方法;褚开锋;《通讯世界》;20150512(第09期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109814813A (zh) | 2019-05-28 |
JP2019095905A (ja) | 2019-06-20 |
JP7058984B2 (ja) | 2022-04-25 |
US20190155596A1 (en) | 2019-05-23 |
US10649762B2 (en) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5609436B2 (ja) | 印刷装置におけるデータ記憶処理装置、印刷装置及びデータ記憶処理方法 | |
US9858515B2 (en) | Image forming apparatus, image forming system, image formation control method and image forming method | |
JP7381676B2 (ja) | 印刷装置及びその制御方法 | |
US11579820B2 (en) | Image forming apparatus updating status information to indicate that consumable can be temporarily used in another image forming apparatus | |
US20130187325A1 (en) | Printing apparatus and program | |
US11858280B2 (en) | Printing apparatus with consumable related ordering, ordering system, and control method | |
US9230205B2 (en) | Image forming apparatus, non-transitory computer-readable recording medium storing an image forming program, and image forming method | |
US20230182481A1 (en) | Printing apparatus, printing method, and storage medium | |
JP6769239B2 (ja) | 画像形成装置、画像形成システムおよび制御プログラム | |
CN109814813B (zh) | 具有多个存储器的装置、控制方法和存储介质 | |
KR102065207B1 (ko) | 인쇄 장치, 인쇄 장치의 제어 방법 및 저장 매체 | |
US10705773B2 (en) | Printing apparatus, control method thereof and storage medium | |
JP4577120B2 (ja) | 画像形成システム及び後処理装置 | |
US20200218189A1 (en) | Image forming apparatus and management method of consumable item | |
JP7153190B2 (ja) | 画像形成装置 | |
US10678486B2 (en) | Printing apparatus controlling spooling of image data in volatile and non-volatile memories based on memory capacity | |
JP6319240B2 (ja) | 画像形成装置、画像形成方法および画像形成プログラム | |
JP7016725B2 (ja) | 情報処理装置、制御方法及びプログラム | |
JP2016218741A (ja) | 画像形成装置 | |
JP2017097077A (ja) | 画像形成装置、及びその制御方法 | |
JP2005205803A (ja) | 画像形成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |