JP6401070B2 - Software rewriting device - Google Patents
Software rewriting device Download PDFInfo
- Publication number
- JP6401070B2 JP6401070B2 JP2015018066A JP2015018066A JP6401070B2 JP 6401070 B2 JP6401070 B2 JP 6401070B2 JP 2015018066 A JP2015018066 A JP 2015018066A JP 2015018066 A JP2015018066 A JP 2015018066A JP 6401070 B2 JP6401070 B2 JP 6401070B2
- Authority
- JP
- Japan
- Prior art keywords
- software
- data
- address
- memory
- written
- 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
- 238000003466 welding Methods 0.000 claims description 44
- 238000000034 method Methods 0.000 description 27
- 230000008569 process Effects 0.000 description 25
- 230000008859 change Effects 0.000 description 5
- 239000004065 semiconductor Substances 0.000 description 4
- 230000007257 malfunction Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Description
本発明は、メモリにソフトウェアを書き込むソフトウェア書き換え装置に関する。 The present invention relates to a software rewriting apparatus for writing software in a memory.
近年、組み込みシステムによって機器を動作させることが一般的になってきている。そのような組み込みシステムにおいては、制御ソフトウェアを更新する際に、新たなソフトウェアをフラッシュROM等のメモリに書き込むことが行われる。また、そのようなソフトウェアの書き込みにおいて、正常に書き込まれたかどうかをチェックすることも行われている。例えば、先頭に値が書き込まれているか、また終端に正常な値が書き込まれているかを判断することが行われている。 In recent years, it has become common to operate devices with embedded systems. In such an embedded system, when the control software is updated, new software is written in a memory such as a flash ROM. Further, in such software writing, it is also checked whether or not the software has been written normally. For example, it is determined whether a value is written at the beginning and whether a normal value is written at the end.
なお、関連する技術として、データの書き込み途中にシステムダウン等が発生し、終端処理が適切に行われていない場合に、ファイルの終端を認識できるようにする技術が知られている(例えば、特許文献1参照)。 As a related technique, there is known a technique that makes it possible to recognize the end of a file when a system down or the like occurs during data writing and the end processing is not properly performed (for example, patents). Reference 1).
従来のソフトウェアの書き換えにおいて、終端のアドレスが固定である場合には、書き込み対象のソフトウェアの容量は変わりうるため、想定される最大のアドレスを終端アドレスとすることが行われていた。そのような場合には、ソフトウェアの書き込み時に、その固定の終端アドレスまでのすべての領域にデータを書くことになるため、ソフトウェアの書き込みに非常に時間がかかるという問題があった。例えば、組み込みシステムが溶接電源であり、作業者が100台の溶接電源のソフトウェアを書き換えなくてはならない場合には、1台あたりの書き換え時間が1分長くなるだけで、全体としては作業時間が1時間40分長くなることになる。したがって、ソフトウェアの書き込み時間を少しでも短くしたいという要望があった。 In the conventional software rewriting, when the end address is fixed, the capacity of the software to be written can be changed, so that the assumed maximum address is used as the end address. In such a case, at the time of software writing, data is written in all areas up to the fixed end address, so there is a problem that it takes a very long time to write software. For example, if the built-in system is a welding power source and the operator has to rewrite the software of 100 welding power sources, the rewriting time per unit is increased by 1 minute, and the overall work time It will be 1 hour and 40 minutes long. Therefore, there has been a demand for shortening the software writing time as much as possible.
また、ソフトウェアの書き込みが不適切であった場合には、そのソフトウェアを実行することによって動作する溶接電源等の装置が想定外の動作を行う可能性があるため、ソフトウェアの書き込みが正常に行われたかどうかを判断したいという要望もあった。 In addition, when software writing is inappropriate, devices such as a welding power source that operates by executing the software may perform unexpected operations, so software writing is performed normally. There was also a request to judge whether or not.
本発明は、上記課題を解決するためになされたものであり、メモリへのソフトウェアの書き込み時間を短縮できると共に、ソフトウェアの書き込みが正常に行われたかどうかを判断することができるソフトウェア書き換え装置を提供することを目的とする。 The present invention has been made to solve the above-described problem, and provides a software rewriting device capable of reducing the time for writing software to the memory and determining whether the software has been written normally. The purpose is to do.
上記目的を達成するため、本発明によるソフトウェア書き換え装置は、ソフトウェアが記憶されるメモリと、メモリへの書き込み対象のソフトウェアを受け付ける受付部と、受付部が受け付けたソフトウェアをメモリに書き込む記録部と、記録部によるソフトウェアの書き込みが正常であるかどうか判断する判断部と、を備え、記録部は、メモリにおける書き込み対象のソフトウェアの終端にあらかじめ決められた値を書き込み、あらかじめ決められた値のアドレスである終端アドレスをメモリの特定のアドレスに書き込み、判断部は、特定のアドレスのデータがメモリの範囲内のアドレスであり、データで示される終端アドレスのデータがあらかじめ決められた値である場合に、ソフトウェアの書き込みが正常であると判断する、ものである。
このような構成により、固定の終端アドレスまでデータを書き込む必要がないため、ソフトウェアの書き込みに要する時間を短縮することができる。また、ソフトウェアの書き込みが正常に行われたかどうかを判断することによって、例えば、正常に書き込まれた場合にのみ、そのソフトウェアを実行するようにすることもできる。また、その判断において、特定のアドレスのデータがメモリの範囲内のアドレスであるかどうか判断するため、例えば、そのデータがメモリの範囲外のアドレスである場合に、そのメモリの範囲外のアドレスのデータを読み出そうとすることによって、CPU等の実行部が誤動作する可能性を低減することができる。
To achieve the above object, a software rewriting apparatus according to the present invention includes a memory in which software is stored, a reception unit that receives software to be written to the memory, a recording unit that writes software received by the reception unit into the memory, And a determination unit that determines whether the writing of software by the recording unit is normal. The recording unit writes a predetermined value at the end of the software to be written in the memory, and uses an address of the predetermined value. A certain end address is written to a specific address in the memory, and the determination unit determines that when the data at the specific address is an address within the range of the memory and the data at the end address indicated by the data is a predetermined value, It is determined that the software writing is normal. .
With such a configuration, since it is not necessary to write data up to a fixed end address, the time required for software writing can be shortened. Further, by determining whether or not the software has been normally written, for example, the software can be executed only when the software has been normally written. In the determination, in order to determine whether the data at a specific address is an address within the memory range, for example, when the data is an address outside the memory range, By trying to read data, the possibility that an execution unit such as a CPU malfunctions can be reduced.
また、本発明によるソフトウェア書き換え装置では、判断部は、メモリの先頭アドレスにデータが書き込まれており、特定のアドレスのデータがメモリの範囲内のアドレスであり、データで示される終端アドレスのデータがあらかじめ決められた値である場合に、ソフトウェアの書き込みが正常であると判断してもよい。
このような構成により、メモリの先頭アドレスにデータが書き込まれているかどうかも判断するため、より厳密な判断を行うことができる。
Further, in the software rewriting device according to the present invention, the determination unit has data written at the start address of the memory, the data at the specific address is an address within the range of the memory, and the data at the end address indicated by the data is When the value is determined in advance, it may be determined that the software writing is normal.
With such a configuration, since it is also determined whether or not data is written at the start address of the memory, a more strict determination can be made.
また、本発明によるソフトウェア書き換え装置では、記録部は、メモリの複数の特定のアドレスに終端アドレスを書き込み、判断部は、複数の特定のアドレスのデータが一致しない場合に、ソフトウェアの書き込みが正常でないと判断してもよい。
このような構成により、終端アドレスが書き込まれる箇所について冗長化することができ、より厳密な判断を行うことができる。
In the software rewriting apparatus according to the present invention, the recording unit writes the end address to a plurality of specific addresses in the memory, and the determination unit writes the software incorrectly when the data of the plurality of specific addresses do not match. You may judge.
With such a configuration, it is possible to make redundant the location where the end address is written, and to make a more strict determination.
また、本発明によるソフトウェア書き換え装置では、あらかじめ決められた値は、メモリにおける書き込み対象のソフトウェアの終端の連続している複数のアドレスに書き込まれるものであり、判断部は、終端アドレスを含む連続している複数のアドレスのデータがあらかじめ決められた値でない場合に、ソフトウェアの書き込みが正常でないと判断してもよい。
このような構成により、終端アドレスに対応するあらかじめ決められた値をより長いデータにすることが可能となり、そのあらかじめ決められた値が、偶然、他のデータと一致する可能性を低減させることができる。
Further, in the software rewriting device according to the present invention, the predetermined value is written to a plurality of consecutive addresses at the end of the software to be written in the memory, and the determination unit includes a continuous address including the end address. If the data at the plurality of addresses is not a predetermined value, it may be determined that the software writing is not normal.
With such a configuration, it becomes possible to make a predetermined value corresponding to the end address longer data, and it is possible to reduce the possibility that the predetermined value coincides with other data by chance. it can.
また、本発明によるソフトウェア書き換え装置では、ソフトウェアは、溶接電源の制御に関するソフトウェアであってもよい。
このような構成により、溶接電源のソフトウェアを書き換える際に、ソフトウェアの書き込みに要する時間を短縮することができると共に、ソフトウェアが正常に書き込まれたかどうかを判断することができる。そして、例えば、正常に書き込まれた場合にのみ、書き換え後のソフトウェアを実行することによって、溶接電源の安全性を向上させることができる。
Moreover, in the software rewriting apparatus according to the present invention, the software may be software related to the control of the welding power source.
With such a configuration, when rewriting the software of the welding power source, it is possible to reduce the time required for writing the software and to determine whether the software has been normally written. And, for example, the safety of the welding power source can be improved by executing the rewritten software only when it is normally written.
本発明によるソフトウェア書き換え装置によれば、ソフトウェアの書き込みに要する時間を短縮できる。また、ソフトウェアの書き込みが正常に行われたかどうかを判断するため、例えば、正常に書き込まれた場合にのみ、そのソフトウェアを実行するようにすることもできる。 According to the software rewriting apparatus of the present invention, the time required for software writing can be shortened. Further, in order to determine whether or not the software has been normally written, for example, the software can be executed only when the software has been normally written.
以下、本発明によるソフトウェア書き換え装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態によるソフトウェア書き換え装置は、メモリで記憶されているソフトウェアを書き換えるものである。 Hereinafter, a software rewriting apparatus according to the present invention will be described using embodiments. In the following embodiments, components and steps denoted by the same reference numerals are the same or equivalent, and repetitive description may be omitted. The software rewriting apparatus according to the present embodiment rewrites software stored in a memory.
図1は、本実施の形態による溶接電源1の構成を示すブロック図である。本実施の形態による溶接電源1は、アーク溶接等の溶接を行うための電力を供給する装置であり、ソフトウェア書き換え装置2と、電源11と、実行部12とを備える。ソフトウェア書き換え装置2は、メモリ21と、受付部22と、記録部23と、判断部24とを備えている。
FIG. 1 is a block diagram showing a configuration of a welding power source 1 according to the present embodiment. A welding power source 1 according to the present embodiment is a device that supplies electric power for performing welding such as arc welding, and includes a software rewriting device 2, a power source 11, and an
メモリ21では、ソフトウェア(プログラム)が記憶される。そのソフトウェアは、溶接電源1の制御に関するソフトウェアである。そのソフトウェアに応じて溶接電源1が動作することによって、溶接の制御や処理が実行されることになる。メモリ21は、例えば、フラッシュROM(フラッシュメモリ)であってもよく、その他の不揮発性の半導体メモリであってもよく、または、その他の不揮発性の記録媒体であってもよい。本実施の形態では、メモリ21が、フラッシュROMである場合について主に説明する。
In the
受付部22は、メモリ21への書き込み対象のソフトウェアを受け付ける。受付部22は、例えば、所定の記録媒体(例えば、光ディスクや磁気ディスク、USBメモリ等の半導体メモリなど)から読み出されたソフトウェアを受け付けてもよく、有線または無線の通信回線を介して送信されたソフトウェアを受信してもよい。なお、受付部22は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、または含まなくてもよい。また、受付部22は、ハードウェアによって実現されてもよく、または所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
The accepting
記録部23は、受付部22が受け付けたソフトウェアをメモリ21に書き込む。そのソフトウェアの書き込みにおいて、記録部23は、メモリ21における書き込み対象のソフトウェアの終端にあらかじめ決められた値が書き込まれ、そのあらかじめ決められた値のアドレスである終端アドレスがメモリ21の特定のアドレスに書き込まれるようにするものとする。例えば、図4Aのアドレスマップで示されるように、書き込み対象のソフトウェアは、先頭アドレス0x00000000から、終端アドレスの直前のアドレス0x000FFFFBまでのうち、特定のアドレス0x00000050以外の領域に書き込まれ、終端アドレス0x000FFFFCには、あらかじめ決められた値0x12345678が書き込まれ、特定のアドレス0x00000050には、その終端アドレス0x000FFFFCが書き込まれてもよい。なお、特定のアドレスは、通常、図4Aで示されるように、ソフトウェアが書き込まれるメモリ21の領域における先頭から終端までのいずれかのアドレスであるが、そうでなくてもよい。その特定のアドレスは、固定値であることが好適である。また、終端アドレスに書き込まれるあらかじめ決められた値は、例えば、0x12345678のように、固定値であってもよく、書き込み対象のソフトウェアのチェックサムであってもよく、または、その他の値であってもよい。したがって、「あらかじめ決められた」とは、装置等の設計時や組立時に決められたことであってもよく、または、ソフトウェアの書き込み時に決められたことであってもよい。また、特定のアドレスは、図示しない記録媒体において記憶されていてもよい。また、あらかじめ決められた値が固定値である場合にも、その値が図示しない記録媒体において記憶されていてもよい。また、あらかじめ決められた値がチェックサム等である場合には、その値を決めるルール等が図示しない記録媒体において記憶されていてもよい。そして、記録部23は、その記録媒体にアクセスすることによって、特定のアドレス等を取得してもよい。なお、記録部23は、ソフトウェア等を書き込む前に、メモリ21のデータを消去してもよい。その消去は、メモリ21の全体に対して行われてもよく、または、そうでなくてもよい。後者の場合には、例えば、記録部23は、特定のアドレスに格納されている終端アドレスを読み出し、先頭アドレスから、その終端アドレスまでのデータを消去してもよく、または、書き込み対象のソフトウェアに関する終端アドレスまでのデータを消去してもよい。前者の場合には、現在、記憶されているソフトウェアに関するデータが消去されることになり、後者の場合には、書き込み対象のソフトウェアが書き込まれる範囲のデータが消去されることになる。なお、そのデータの消去において、メモリ21が、ブロック単位でデータを消去する記録媒体である場合には、記録部23は、消去したいデータを含むすべてのブロックについて消去の処理を行うようにしてもよい。
The recording unit 23 writes the software received by the
判断部24は、記録部23によるソフトウェアの書き込みが正常であるかどうか判断する。判断部24は、書き込み対象のソフトウェアが格納される領域における先頭のアドレスにデータが書き込まれており、かつ、特定のアドレスのデータがメモリ21の範囲内のアドレスであり、かつ、そのデータで示される終端アドレスのデータがあらかじめ決められた値である場合に、ソフトウェアの書き込みが正常であると判断する。したがって、判断部24は、例えば、書き込み対象のソフトウェアが格納される領域における先頭のアドレスにデータが書き込まれていない場合に、ソフトウェアの書き込みが正常でないと判断してもよい。また、判断部24は、例えば、特定のアドレスのデータがメモリ21の範囲内のアドレスでない場合に、ソフトウェアの書き込みが正常でないと判断してもよい。また、判断部24は、例えば、特定のアドレスのデータで示される終端アドレスのデータがあらかじめ決められた値でない場合に、ソフトウェアの書き込みが正常でないと判断してもよい。
The
なお、その判断において、判断部24は、終端アドレスのデータがあらかじめ決められた値であるかどうかを判断する前に、特定のアドレスのデータがメモリ21の範囲内のアドレスであるかどうかを判断することが好適である。そして、特定のアドレスのデータがメモリ21の範囲内のアドレスでない場合には、判断部24は、その特定のアドレスのデータである終端アドレスのデータを読みにいかなくてもよい。そのようにすることで、例えば、ソフトウェアの書き込みが正常に終了しておらず、特定のアドレスのデータが、メモリ21のアドレス範囲外を示すものである場合に、誤ってその範囲外のデータを読みにいくことを回避でき、誤動作を防止することができる。
In the determination, the
また、書き込み対象のソフトウェアが格納される領域における先頭のアドレスは、メモリ21の先頭アドレスであってもよい。その場合には、書き込み対象のソフトウェアが格納される領域における先頭のアドレスにデータが書き込まれているかどうかの判断は、メモリ21の先頭アドレスにデータが書き込まれているかどうかの判断となる。本実施の形態では、書き込み対象のソフトウェアが格納される領域における先頭のアドレスは、メモリ21の先頭アドレスである場合について主に説明する。
Further, the head address in the area where the software to be written is stored may be the head address of the
また、前述のように、フラッシュROM等のメモリ21にデータを書き込む際には、はじめにデータを消去してから書き込むことになる。したがって、判断部24は、書き込み対象のソフトウェアが格納される領域における先頭のアドレスのデータが、消去されたデータ(例えば、0xFFFFFFFF)でない場合に、そのアドレスにデータが書き込まれていると判断してもよい。また、書き込み対象のソフトウェアが格納される領域における先頭のアドレスに所定の値が書き込まれると決まっている場合には、判断部24は、書き込み対象のソフトウェアが格納される領域における先頭のアドレスにデータが書き込まれているかどうかの判断に代えて、そのアドレスに所定の値が書き込まれているかどうかを判断してもよい。
Further, as described above, when data is written to the
また、判断部24による判断のタイミングは問わないが、例えば、ソフトウェアの書き込み後に溶接電源1が起動されたタイミングで判断が行われてもよく、ソフトウェアの書き込み後に判断が行われてもよい。なお、溶接電源1の動作時に誤ってメモリ21のデータを書き換える可能性もあるため、判断部24は、溶接電源1の起動時(電源投入時)ごとに、その判断を行うようにしてもよい。本実施の形態では、その場合について主に説明する。
Further, the timing of determination by the
電源11は、溶接に必要な電力を供給するための電源である。その電源11は、通常、アーク溶接等のための高電圧、高電流を供給する。
実行部12は、判断部24による判断結果によって、ソフトウェアが正常に書き込まれたことが示される場合に、メモリ21に記憶されているソフトウェアを読み出して実行する。その実行部12は、例えば、CPUやMPUであってもよい。なお、そのソフトウェアは、溶接電源1の制御に関するソフトウェアであるため、そのソフトウェアが実行されることによって、電源11に関する制御が行われることになる。
The power source 11 is a power source for supplying electric power necessary for welding. The power supply 11 normally supplies a high voltage and a high current for arc welding or the like.
The
なお、判断部24は、例えば、ハードウェアによって実現されてもよく、または、ソフトウェアを実行することによって実現されてもよい。後者の場合に、そのソフトウェアを実行するCPU等は、実行部12を実現するCPU等と同じであってもよく、または、そうでなくてもよい。
Note that the
次に、溶接電源1の動作について図2のフローチャートを用いて説明する。図2のフローチャートは、溶接電源1の電源が投入されてから、電源が落とされるまでの処理を示すフローチャートである。
(ステップS101)判断部24は、電源が投入された後に、メモリ21で記憶されているソフトウェアが、正常に書き込まれたかどうか判断する。なお、この判断の処理の詳細については、図3のフローチャートを用いて後述する。
Next, operation | movement of the welding power supply 1 is demonstrated using the flowchart of FIG. The flowchart of FIG. 2 is a flowchart showing processing from when the power source of the welding power source 1 is turned on to when the power source is turned off.
(Step S101) The
(ステップS102)実行部12は、ステップS101の判断結果によって、ソフトウェアが正常に書き込まれたことが示されるかどうか判断する。そして、ソフトウェアが正常に書き込まれたことが判断結果によって示される場合には、ステップS103に進み、そうでない場合には、溶接電源1の起動を終了して電源を落とす。
(Step S102) The
(ステップS103)実行部12は、メモリ21で記憶されているソフトウェアを読み出して実行する。その結果、溶接電源1が、溶接のための電力を供給する装置として動作することになる。
(Step S103) The
(ステップS104)実行部12は、溶接電源1が外部からの指示等の入力を受け付けたかどうか判断する。そして、受け付けた場合には、ステップS105に進み、そうでない場合には、ステップS106に進む。その入力は、例えば、ユーザによって行われてもよく、または、溶接ロボットの制御装置等によって行われてもよい。
(Step S104) The
(ステップS105)実行部12は、受け付けられた入力に応じた処理を行う。そして、ステップS104に戻る。その処理は、例えば、入力された指示に応じた電圧、電流の出力を行うように電源11を制御することであってもよい。
(Step S105) The
(ステップS106)受付部22は、書き換え対象のソフトウェアを受け付けたかどうか判断する。そして、受け付けた場合には、ステップS107に進み、そうでない場合には、ステップS108に進む。
(Step S106) The accepting
(ステップS107)記録部23は、図5で示されるように、受け付けられたソフトウェアに対して、そのソフトウェアの終端にあらかじめ決められた終端データを付加し、また、特定のアドレスに終端データのアドレスである終端アドレスを付加した記録対象のデータを構成し、その記録対象のデータをメモリ21に書き込む。なお、図5におけるソフトウェアデータ1、2は、受け付けられたソフトウェアデータが分割されたデータである。その書き込みが終了すると、実行部12は、溶接電源1を再起動する。そして、ステップS101に戻る。
(Step S107) As shown in FIG. 5, the recording unit 23 adds predetermined termination data to the end of the received software, and also adds an address of the termination data to a specific address. The data to be recorded to which the end address is added is configured, and the data to be recorded is written into the
(ステップS108)実行部12は、溶接電源1の処理を終了するかどうか判断する。そして、処理を終了する場合には、溶接電源1の電源を落とす。一方、処理を終了しない場合には、ステップS104に戻る。なお、実行部12は、例えば、溶接電源1の電源を落とす旨の指示をユーザから受け付けた場合に、処理を終了すると判断してもよく、または、所定のエラー等が発生し、処理を継続できなくなった場合に、処理を終了すると判断してもよい。
(Step S108) The
図3は、図2のフローチャートにおける判断処理(ステップS101)の詳細を示すフローチャートである。
(ステップS201)判断部24は、メモリ21の先頭アドレスにデータが書き込まれているかどうか判断する。そして、書き込まれている場合には、ステップS202に進み、そうでない場合には、ステップS205に進む。
FIG. 3 is a flowchart showing details of the determination process (step S101) in the flowchart of FIG.
(Step S <b> 201) The
(ステップS202)判断部24は、特定のアドレスに格納されているデータを読み出し、そのデータが、メモリ21のアドレス範囲内であるかどうか判断する。そして、そのデータがメモリ21のアドレス範囲内である場合には、ステップS203に進み、そうでない場合には、ステップS205に進む。
(Step S <b> 202) The
(ステップS203)判断部24は、特定のアドレスに格納されているデータで示される終端アドレスに格納されている終端データを読み出し、その終端データが、あらかじめ決められた値であるかどうか判断する。そして、終端データがあらかじめ決められた値である場合には、ステップS204に進み、そうでない場合には、ステップS205に進む。
(Step S203) The
(ステップS204)判断部24は、メモリ21へのソフトウェアの書き込みが正常であると判断する。そして、図2のフローチャートに戻る。
(Step S <b> 204) The
(ステップS205)判断部24は、メモリ21へのソフトウェアの書き込みが正常でないと判断する。そして、図2のフローチャートに戻る。
なお、図2のフローチャートにおける処理の順序は一例であり、ステップS202の処理が、ステップS203の処理よりも以前に行われ、同様の結果を得ることができるのであれば、各ステップの順序を変更してもよい。
(Step S205) The
Note that the order of processing in the flowchart of FIG. 2 is an example, and if the processing in step S202 is performed before the processing in step S203 and the same result can be obtained, the order of the steps is changed. May be.
次に、本実施の形態による溶接電源1の動作について、具体例を用いて説明する。この具体例では、特定のアドレスが0x00000050であり、あらかじめ決められた値(終端データ)が0x12345678であるとする。また、メモリ21のアドレス範囲は、0x00000000から0x00200000であるとする。
Next, operation | movement of the welding power supply 1 by this Embodiment is demonstrated using a specific example. In this specific example, it is assumed that the specific address is 0x00000050 and the predetermined value (termination data) is 0x12345678. The address range of the
溶接電源1が動作している状態において、ソフトウェアの書き換えを行う作業者が、新しいソフトウェアの記録されているUSBメモリを溶接電源1に装着したとする。すると、受付部22は、そのことを検知し、そのUSBメモリからソフトウェアを読み出して記録部23に渡す(ステップS106)。記録部23は、ソフトウェアを受け取ると、図5で示されるように、特定のアドレスの位置に所定の格納領域を確保した上で、ソフトウェアデータの終端に、終端データ0x12345678を付加する。そして、その終端データのアドレスである終端アドレスを、特定のアドレスの位置に付加した記録対象のデータを構成する。また、記録部23は、その記録対象のデータをメモリ21に書き込む前に、メモリ21の各アドレスに対応するデータをすべて消去する。具体的には、各データをすべて0xFFFFFFFFにする。その後、記録部23は、メモリ21の先頭アドレスから順番に、記録対象のデータを書き込んでいく。その結果、メモリ21に書き込まれたデータとアドレスとの関係は、図4Aで示されるようになったとする(ステップS107)。
Assume that an operator who rewrites software attaches a USB memory in which new software is recorded to the welding power source 1 while the welding power source 1 is operating. Then, the
次に、実行部12は、溶接電源1を再起動する。その再起動時に、判断部24は、ソフトウェアが正常に書き込まれたかどうかの判断を行う(ステップS101)。具体的には、判断部24は、メモリ21の先頭アドレス0x00000000のデータが0xFFFFFFFFであるかどうか判断する(ステップS201)。この場合には、0x469500CDであり、0xFFFFFFFFではないため、先頭アドレスにデータが書き込まれていることになる。したがって、判断部24は、特定のアドレス0x00000050に格納されているデータ0x000FFFFCを読み出し、それがメモリ21のアドレス範囲内であるかどうか判断する(ステップS202)。この場合には、そのデータ0x000FFFFCが、アドレス範囲0x00000000〜0x00200000に含まれるため、特定のアドレスのデータが、メモリ21のアドレス範囲内であることになる。したがって、判断部24は、その終端アドレス0x000FFFFCのデータ0x12345678を読み出し、そのデータがあらかじめ決められた値0x12345678であるかどうか判断する(ステップS203)。この場合には、その読み出したデータはあらかじめ決められた値であるため、終端アドレスのデータがあらかじめ決められた値であることになる。したがって、判断部24は、ソフトウェアの書き込みが正常に行われたと判断し、その判断結果を実行部12に渡す(ステップS204)。すると、実行部12は、メモリ21に書き込まれたソフトウェアを実行し、その結果として、溶接電源1において、溶接のための電力を供給する処理が行われることになる(ステップS103〜S105)。
Next, the
なお、例えば、先頭アドレス0x00000000のデータが0xFFFFFFFFである場合、特定のアドレスに格納されている終端アドレスがメモリ21のアドレス範囲外(0x00000000〜0x00200000の範囲外)である場合、または、終端データが0x12345678以外のデータ(例えば、0x23456789)である場合には、判断部24は、ソフトウェア書き換えが正常に行われなかったと判断する(ステップS205)。その場合には、例えば、ソフトウェアの書き換え途中に電源が落ちるなどの何らかの不具合の発生していることが考えられる。
For example, when the data of the start address 0x00000000 is 0xFFFFFFFF, the end address stored in the specific address is out of the address range of the memory 21 (out of the range of 0x00000000 to 0x00200000), or the end data is 0x12345678. If the data is other than (for example, 0x23456789), the
以上のように、本実施の形態によるソフトウェア書き換え装置2によれば、ソフトウェアを書き換える際に、先頭アドレスから終端アドレスまでにデータを書き込めばよいため、終端アドレスが固定である場合と比較して、書き込み時間が短縮される。また、ソフトウェアの書き込みが正常に行われたと判断された場合にのみ、そのソフトウェアを実行することにより、正常に書き込まれたソフトウェアが実行されることになり、溶接電源1が適切に動作することになる。また、その判断において、特定のアドレスのデータである終端アドレスが、メモリ21の範囲内のアドレスであるかどうかを確認してから、その終端アドレスのデータを読み出すため、ソフトウェアが適切に書き込まれておらず、その終端アドレスがメモリ21の範囲外のアドレスである場合でも、誤動作が起こらないようにすることができる。また、その特定のアドレスに書き込まれた終端アドレスを用いて、ソフトウェアの終端にあらかじめ決められた値を格納する終端処理が適切に行われたかどうかを確認できるため、上述のように、終端アドレスが固定でなくてもよいことになる。また、上記特許文献1では、ファイルの終端を認識できるようにするため、各レコードに識別符号を付加しているが、本実施の形態によるソフトウェア書き換え装置2では、そのような識別符号を付加する必要がないため、より多くのデータをメモリ21に書き込むことができるようになる。
As described above, according to the software rewriting device 2 according to the present embodiment, when rewriting software, it is only necessary to write data from the start address to the end address. Therefore, compared to the case where the end address is fixed, Write time is shortened. Also, only when it is determined that the software has been written normally, by executing the software, the software that has been written normally is executed, and the welding power source 1 operates appropriately. Become. Further, in the determination, after confirming whether or not the end address which is the data of the specific address is an address within the range of the
なお、本実施の形態では、終端アドレスの格納される特定のアドレスが1個である場合について説明したが、そうでなくてもよい。記録部23は、メモリ21の複数の特定のアドレスに終端アドレスを書き込んでもよい。その特定のアドレスの個数は限定されないが、例えば、2個や3個などであってもよい。その場合には、例えば、図4Bで示されるように、第1の特定のアドレス0x00000050と、第2の特定のアドレス0x00000200とに終端アドレスが書き込まれてもよい。なお、そのように、複数の特定のアドレスに終端アドレスが書き込まれる場合には、判断部24は、例えば、その複数の特定のアドレスのデータ(終端アドレス)がすべて一致しており、かつ、書き込み対象のソフトウェアが格納される領域における先頭のアドレスにデータが書き込まれており、かつ、特定のアドレスのデータがメモリ21の範囲内のアドレスであり、かつ、そのデータで示される終端アドレスのデータがあらかじめ決められた値である場合に、ソフトウェアの書き込みが正常であると判断してもよい。すなわち、判断部24は、その複数の特定のアドレスのデータが一致しない場合に、ソフトウェアの書き込みが正常でないと判断してもよい。複数の特定のアドレスのデータが一致しない場合とは、複数の特定のアドレスのデータの少なくとも一部が一致しない場合であってもよい。具体的には、第1から第3の特定のアドレスにそれぞれ格納されている第1から第3のデータのうち、第1のデータと第2のデータとは一致するが、第1のデータと第3のデータとは一致しない場合には、判断部24によって、ソフトウェアの書き込みが正常でないと判断されてもよい。
In the present embodiment, the case where there is one specific address in which the termination address is stored has been described, but this need not be the case. The recording unit 23 may write the end address to a plurality of specific addresses in the
また、本実施の形態では、あらかじめ決められた値である終端データが、一のアドレスに対応する領域に格納される場合、すなわち、上記具体例では終端データが4バイトである場合について説明したが、そうでなくてもよい。その終端データは、メモリ21における書き込み対象のソフトウェア終端の連続した複数のアドレスに書き込まれてもよい。すなわち、その終端データは、4バイトを超えるデータ量であってもよい。その場合には、例えば、図4Cで示されるように、終端アドレス0x000FFFFCと、その次のアドレス0x000FFFFDとのデータ0x12345678,0x9ABCDEF0が、あらかじめ決められた値(終端データ)であってもよい。すなわち、終端データは、例えば8バイトのデータであってもよい。終端データのデータ量を大きくすることによって、ソフトウェアの書き込みが正常に行われていない場合に、終端アドレスに応じたデータが偶然、あらかじめ決められた値と一致する可能性を低減させることができる。このように、あらかじめ決められた値が、メモリ21における書き込み対象のソフトウェアの終端の連続している複数のアドレスに書き込まれるものである場合には、判断部24は、例えば、書き込み対象のソフトウェアが格納される領域における先頭のアドレスにデータが書き込まれており、かつ、特定のアドレスのデータがメモリ21の範囲内のアドレスであり、かつ、そのデータで示される終端アドレスを含む連続している複数のアドレスのデータが、あらかじめ決められた値である場合に、ソフトウェアの書き込みが正常であると判断してもよい。すなわち、判断部24は、特定のアドレスに格納されている終端アドレスを含む連続している複数のアドレスのデータが、あらかじめ決められた値でない場合に、ソフトウェアの書き込みが正常でないと判断してもよい。
Further, in the present embodiment, the case where the end data, which is a predetermined value, is stored in the area corresponding to one address, that is, the case where the end data is 4 bytes has been described in the above specific example. It does n’t have to be. The end data may be written to a plurality of consecutive addresses at the end of the software to be written in the
なお、図4Cでは、終端データのアドレスである連続した複数のアドレスの先頭アドレスが、特定のアドレスに格納される場合について示しているが、そうでなくてもよい。例えば、終端データのアドレスである連続した複数のアドレスの後端アドレスが、特定のアドレスに格納されていてもよく、終端データのアドレスである連続した複数のアドレスの先頭アドレスでもなく後端アドレスでもないアドレスが、特定のアドレスに格納されていてもよい。 Although FIG. 4C shows the case where the head addresses of a plurality of consecutive addresses, which are the addresses of the termination data, are stored at specific addresses, this need not be the case. For example, the rear end addresses of a plurality of consecutive addresses that are end data addresses may be stored in a specific address, and may be the start address or the rear end address of a plurality of consecutive addresses that are end data addresses. No address may be stored at a specific address.
また、本実施の形態では、判断部24が、書き込み対象のソフトウェアが格納される領域における先頭のアドレスにデータが書き込まれているかどうかを判断する場合について説明したが、そうでなくてもよい。判断部24は、その判断を行わなくてもよい。その場合には、判断部24は、例えば、特定のアドレスのデータがメモリ21の範囲内のアドレスであり、かつ、そのデータで示される終端アドレスのデータがあらかじめ決められた値である場合に、ソフトウェアの書き込みが正常であると判断してもよい。
Further, in the present embodiment, a case has been described in which the
また、本実施の形態において、ソフトウェアの書き込み後に、正常に書き込まれたかどうか判断し、正常に書き込まれた場合には、その書き込み対象のソフトウェアそのものを、メモリ21の別の領域に格納するようにしてもよい。その別の領域に格納されるソフトウェアは、バックアップとして用いられる。したがって、例えば、その後にソフトウェアを書き換えた際に、正常に書き込むことができなかった場合には、そのバックアップ領域に格納されているソフトウェアを用いることができるようになり、少なくとも、溶接電源1がまったく動作しなくなる事態を回避することができる。なお、その後、ソフトウェアが正常に書き換えられた場合には、バックアップ領域のソフトウェアも、その書き換え後のソフトウェアと同じ内容となるように書き換えられることになる。例えば、図4Dで示されるように、アドレス0x00000000から0x000FFFFCまでに一連のソフトウェアが正常に書き込まれたと判断部24によって判断された場合に、記録部23は、そのソフトウェアを、メモリ21におけるソフトウェアのバックアップ領域にも書き込むものとする。なお、そのソフトウェアのバックアップ領域においても、特定のアドレスに、バックアップ領域における終端アドレスが書き込まれてもよく、または、そうでなくてもよい。後者の場合には、バックアップ領域の終端アドレスが、バックアップ領域と異なる領域において記憶されていてもよい。また、バックアップ領域を特定できるようにするため、バックアップ領域の先頭アドレスは固定であってもよく、または、その先頭アドレスがバックアップ領域以外の領域に記憶されていてもよい。また、正常に書き込まれたソフトウェアのバックアップは、メモリ21とは異なる記録媒体に書き込まれてもよい。
In the present embodiment, it is determined whether or not the software has been written normally after the software has been written. If the software has been written normally, the software to be written is stored in another area of the
また、本実施の形態では、ソフトウェア書き換え装置2が、溶接電源1に含まれる場合について説明したが、そうでなくてもよい。溶接電源1以外の組み込み装置に、ソフトウェア書き換え装置2が含まれていてもよい。その場合であっても、そのソフトウェア書き換え装置2を含む装置は、判断部24によって、ソフトウェア書き換えが正常に行われたと判断された場合に、メモリ21に書き込まれたソフトウェアを実行することが好適である。そのソフトウェアの実行は、通常、ソフトウェア書き換え装置2を含む装置の制御や動作等のために行われることになる。
Moreover, although the case where the software rewriting apparatus 2 was included in the welding power supply 1 was demonstrated in this Embodiment, it may not be so. The software rewriting device 2 may be included in an embedded device other than the welding power source 1. Even in such a case, it is preferable that the device including the software rewriting device 2 executes the software written in the
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。 In the above embodiment, each process or each function may be realized by centralized processing by a single device or a single system, or may be distributedly processed by a plurality of devices or a plurality of systems. It may be realized by doing.
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う2個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う2個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。 In the above embodiment, the information exchange between the components is performed by one component when, for example, the two components that exchange the information are physically different from each other. It may be performed by outputting information and receiving information by the other component, or when two components that exchange information are physically the same, one component May be performed by moving from the phase of the process corresponding to to the phase of the process corresponding to the other component.
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。 In the above embodiment, information related to processing executed by each component, for example, information received, acquired, selected, generated, transmitted, or received by each component In addition, information such as threshold values, mathematical formulas, addresses, and the like used by each constituent element in processing may be temporarily or for a long time held in a recording medium (not shown), even if not specified in the above description. Further, the storage of information on the recording medium (not shown) may be performed by each component or a storage unit (not shown). Further, reading of information from the recording medium (not shown) may be performed by each component or a reading unit (not shown).
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。 In the above embodiment, when information used by each component, for example, information such as a threshold value, an address, and various setting values used by each component may be changed by the user, Even if it is not specified in the description, the user may be able to change the information as appropriate, or may not be so. If the information can be changed by the user, the change is realized by, for example, a not-shown receiving unit that receives a change instruction from the user and a changing unit (not shown) that changes the information in accordance with the change instruction. May be. The change instruction received by the receiving unit (not shown) may be received from an input device, information received via a communication line, or information read from a predetermined recording medium, for example. .
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現されうる。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。また、そのプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。また、そのプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。 In the above-described embodiment, each component may be configured by dedicated hardware, or a component that can be realized by software may be realized by executing a program. For example, each component can be realized by a program execution unit such as a CPU reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory. At the time of execution, the program execution unit may execute the program while accessing the storage unit or the recording medium. The program may be executed by being downloaded from a server or the like, or may be executed by reading a program recorded on a predetermined recording medium (for example, an optical disk, a magnetic disk, a semiconductor memory, or the like). Good. Further, this program may be used as a program constituting a program product. Further, the computer that executes the program may be singular or plural. That is, centralized processing may be performed, or distributed processing may be performed.
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。 Further, the present invention is not limited to the above-described embodiment, and various modifications are possible, and it goes without saying that these are also included in the scope of the present invention.
以上より、本発明によるソフトウェア書き換え装置によれば、メモリに格納されているソフトウェアの書き換えを高速化できるという効果が得られ、例えば、組み込みシステムで用いられるソフトウェアを書き換える装置等として有用である。 As described above, according to the software rewriting apparatus of the present invention, the effect of speeding up the rewriting of software stored in the memory can be obtained, which is useful as an apparatus for rewriting software used in an embedded system, for example.
1 溶接電源
2 ソフトウェア書き換え装置
11 電源
12 実行部
21 メモリ
22 受付部
23 記録部
24 判断部
DESCRIPTION OF SYMBOLS 1 Welding power supply 2 Software rewriting apparatus 11
Claims (3)
前記メモリへの書き込み対象のソフトウェアを受け付ける受付部と、
前記受付部が受け付けたソフトウェアを前記メモリに書き込む記録部と、
前記記録部によるソフトウェアの書き込みが正常であるかどうか判断する判断部と、を備え、
前記記録部は、前記メモリにおける前記書き込み対象のソフトウェアの終端にあらかじめ決められた値を書き込み、前記あらかじめ決められた値のアドレスである終端アドレスを前記メモリの複数の特定のアドレスに書き込み、
前記判断部は、前記特定のアドレスのデータが前記メモリの範囲内のアドレスであり、当該データで示される終端アドレスのデータがあらかじめ決められた値である場合に、ソフトウェアの書き込みが正常であると判断し、前記複数の特定のアドレスのデータが一致しない場合に、ソフトウェアの書き込みが正常でないと判断する、ソフトウェア書き換え装置。 A memory for storing software;
A reception unit for receiving software to be written to the memory;
A recording unit for writing the software received by the receiving unit into the memory;
A determination unit that determines whether writing of software by the recording unit is normal,
The recording unit writes a predetermined value at the end of the software to be written in the memory, writes a terminal address that is an address of the predetermined value to a plurality of specific addresses in the memory,
The determination unit determines that the software writing is normal when the data at the specific address is an address within the range of the memory and the data at the end address indicated by the data is a predetermined value. A software rewriting device that determines and determines that software writing is not normal when the data at the plurality of specific addresses do not match .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015018066A JP6401070B2 (en) | 2015-02-02 | 2015-02-02 | Software rewriting device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015018066A JP6401070B2 (en) | 2015-02-02 | 2015-02-02 | Software rewriting device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016143208A JP2016143208A (en) | 2016-08-08 |
JP6401070B2 true JP6401070B2 (en) | 2018-10-03 |
Family
ID=56568807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015018066A Active JP6401070B2 (en) | 2015-02-02 | 2015-02-02 | Software rewriting device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6401070B2 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04167139A (en) * | 1990-10-31 | 1992-06-15 | Nec Corp | Program down loading system |
JP3937598B2 (en) * | 1998-07-14 | 2007-06-27 | 株式会社デンソー | Electronic control unit |
JP3506935B2 (en) * | 1998-12-21 | 2004-03-15 | 三菱電機株式会社 | Data processing device |
JP2005063120A (en) * | 2003-08-11 | 2005-03-10 | Ricoh Co Ltd | Program rewriting device |
JP4229896B2 (en) * | 2004-10-14 | 2009-02-25 | シャープ株式会社 | Rewritable nonvolatile memory, electronic device, rewriteable nonvolatile memory rewrite method, and rewrite program |
JP5435780B2 (en) * | 2009-09-18 | 2014-03-05 | 株式会社ダイヘン | Welding control program update setting device |
-
2015
- 2015-02-02 JP JP2015018066A patent/JP6401070B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016143208A (en) | 2016-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3200077B1 (en) | Vehicle control device, reprogramming system | |
JP2008198310A (en) | Method for repairing bit error and information processing system | |
US10475516B2 (en) | Data storage device and data erasing method wherein after erasing process, predetermined value is written to indicate completion of said erasing method | |
JP6543122B2 (en) | INFORMATION PROCESSING APPARATUS, METHOD OF INITIALIZING NONVOLATILE STORAGE DEVICE BY THE INFORMATION PROCESSING APPARATUS, AND PROGRAM | |
JPWO2004031966A1 (en) | Method for controlling nonvolatile memory device | |
JP2010140266A (en) | Electronic device system and electronic device | |
JPWO2009004674A1 (en) | Storage device, disk device, write determination method, control device | |
JP4843222B2 (en) | Semiconductor memory device control method, memory card, and host device | |
US8819332B2 (en) | Nonvolatile storage device performing periodic error correction during successive page copy operations | |
US10509565B2 (en) | Apparatuses, methods, and computer-readable non-transitory recording mediums for erasure in data processing | |
JP2010086009A (en) | Storage device and memory control method | |
JP2010015316A (en) | Numerical control apparatus | |
JP5884663B2 (en) | Electronic control device and data rewriting system | |
US8046529B2 (en) | Updating control information in non-volatile memory to control selection of content | |
JP6401070B2 (en) | Software rewriting device | |
JP6301820B2 (en) | Reprogramming system | |
JP2014089497A (en) | Information processing device | |
JP2010113630A (en) | Serial bus system | |
JP4452158B2 (en) | Nonvolatile memory system | |
JP2013103411A (en) | Image forming apparatus, image forming system, and image forming program | |
JP4239754B2 (en) | Nonvolatile memory system | |
JP4602387B2 (en) | MEMORY CARD, NONVOLATILE MEMORY, NONVOLATILE MEMORY DATA WRITE METHOD AND DATA WRITE DEVICE | |
CN109147847B (en) | Semiconductor device and flash memory control method | |
JP2009276883A (en) | Semiconductor auxiliary storage device | |
US20140281226A1 (en) | Memory card and host device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180620 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180727 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180803 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180831 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180906 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6401070 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |