JPH11167525A - Nonvolatile-memory mixedly mounted microcomputer and nonvolatile memory rewriting method thereof, and recording medium where nonvolatile memory rewriting program of nonvolatile-memory mixedly mounted microcomputer is recorded - Google Patents
Nonvolatile-memory mixedly mounted microcomputer and nonvolatile memory rewriting method thereof, and recording medium where nonvolatile memory rewriting program of nonvolatile-memory mixedly mounted microcomputer is recordedInfo
- Publication number
- JPH11167525A JPH11167525A JP33323197A JP33323197A JPH11167525A JP H11167525 A JPH11167525 A JP H11167525A JP 33323197 A JP33323197 A JP 33323197A JP 33323197 A JP33323197 A JP 33323197A JP H11167525 A JPH11167525 A JP H11167525A
- Authority
- JP
- Japan
- Prior art keywords
- nonvolatile memory
- address
- program
- password
- memory
- 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.)
- Abandoned
Links
Landscapes
- Storage Device Security (AREA)
- Microcomputers (AREA)
- Read Only Memory (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、不揮発性メモリを
混載した1チップマイコンに関し、特に、その不揮発性
メモリに格納されたプログラムの書換え方法に関する。[0001] 1. Field of the Invention [0002] The present invention relates to a one-chip microcomputer in which a nonvolatile memory is embedded, and more particularly to a method of rewriting a program stored in the nonvolatile memory.
【0002】[0002]
【従来の技術】マイクロコンピュータはLSI技術の進歩
とともに高集積化、高性能、高機能になっており、いま
ではパーソナルコンピュータ、ワークステーションのよ
うな情報処理製品はもとより、家庭電化製品、自動車な
どのあらゆる産業、民生製品に使用されている。中で
も、メモリと入出力制御機能が同一チップ上に構成され
ている1チップマイコンは小規模製品に適しており、今
後の更なる発展が期待されている。2. Description of the Related Art Microcomputers have become highly integrated, high-performance, and highly functional with the development of LSI technology. Today, not only information processing products such as personal computers and workstations, but also home appliances, automobiles, Used in all industrial and consumer products. Among them, a one-chip microcomputer having a memory and an input / output control function on the same chip is suitable for a small-scale product, and further development is expected in the future.
【0003】近年、この1チップマイコンに不揮発性メ
モリ(nonvolatile memory)、特にフラッシュメモリ(fla
sh memory)を混載した不揮発性メモリ混載マイコンが広
く使用されてきている。一般に、不揮発性メモリとは、
電気的に自由にデータの書換えができ、電源を切っても
データを保持することのできるLSIメモリのことであ
り、中でもフラッシュメモリは高密度、高集積化ととも
に磁気ディスクをも置き換える可能性を秘めており、大
きく期待されているメモリでもある。In recent years, nonvolatile memories, especially flash memories (flags) have been added to the one-chip microcomputers.
Microcomputers with embedded non-volatile memory embedded with sh memory) have been widely used. Generally, a non-volatile memory is
An LSI memory that can electrically rewrite data freely and retain data even when the power is turned off.In particular, flash memory has the potential to replace magnetic disks with high density and high integration. It is also a highly promising memory.
【0004】この電気的に書き込み・消去が可能なフラ
ッシュメモリを混載した1チップマイコンは、上述した
ように、家庭電化製品や自動車等に搭載され、それらの
制御を行うものであるが、かかる制御に用いられる制御
プログラムが上記不揮発性メモリに書き込まれることに
なる。The one-chip microcomputer in which the electrically rewritable and erasable flash memory is mounted, as described above, is mounted on home appliances, automobiles and the like, and controls them. Is written into the non-volatile memory.
【0005】ここで、不揮発性メモリに書き込まれた制
御プログラムは、最初から必ずしも正常動作するものと
は限らず、例えば、書き込まれた後にバグの存在が発見
される場合がある。このような場合には、不揮発性メモ
リに書き込まれている制御プログラムを正常なものに書
き換える必要が生じる。また、書き込まれている制御プ
ログラムが正常であるか否かを確認したり、開発目的な
どからプログラムをデバッグするために不揮発性メモリ
の中身を検証し、場合によっては書換えが必要となるこ
ともある。さらに、最近のナビゲーションシステムにお
いては、新規のプログラムを例えばCD-ROMやメモリーカ
ードを用いて読み込ませることにより不揮発性メモリに
書き込まれているプログラムを書換え、バージョンアッ
プを行うという状況もある。Here, the control program written in the nonvolatile memory does not always operate normally from the beginning. For example, a bug may be found after being written. In such a case, it is necessary to rewrite the control program written in the nonvolatile memory to a normal one. In addition, it is necessary to check whether the written control program is normal or to verify the contents of the nonvolatile memory to debug the program for development purposes, etc., and in some cases, it may be necessary to rewrite it. . Furthermore, in recent navigation systems, there is also a situation in which a new program is read using, for example, a CD-ROM or a memory card, thereby rewriting the program written in the nonvolatile memory and performing a version upgrade.
【0006】このように一旦不揮発性メモリに書き込ま
れたプログラムを書換えなければならない場合が発生し
得る。この際、重要な事柄となるのは、不揮発性メモリ
に格納されているプログラムの漏洩防止である。つま
り、書換えが可能であるということは、逆に第三者にそ
の内容を不法に読み出すことを可能にしてしまうおそれ
があるからである。通常、このようなプログラムの書換
えは、予め用意されているプログラム(ここでは、BOOT
(ブート)プログラムと呼ぶ)を実行させることで行われ
る。すなわち、従来の不揮発性メモリ混載マイコンは、
所定の複数の処理を行うためのBOOTプログラムを予め備
えており、その処理の一つに不揮発性メモリのデータ書
換え作業がある。かかるBOOTプログラムは、所定のBOOT
モードが設定されると実行されるものであり、通常は読
み出し専用のメモリであるROM(通常、マスクROMが用い
られる)に格納され、一切の変更を不可能としている。
また、上記不揮発性メモリの一定領域をBOOTプログラム
格納領域として確保し、そこに格納される場合もある。[0006] In some cases, the program once written in the nonvolatile memory must be rewritten. At this time, an important matter is prevention of leakage of the program stored in the nonvolatile memory. In other words, the fact that rewriting is possible may cause a third party to illegally read the contents. Usually, such program rewriting is performed by using a prepared program (here, BOOT
(Called a (boot) program). In other words, the conventional microcomputer with embedded nonvolatile memory,
A BOOT program for performing a plurality of predetermined processes is provided in advance, and one of the processes is a data rewriting operation of the nonvolatile memory. Such a BOOT program will be
This mode is executed when a mode is set, and is normally stored in a ROM (usually a mask ROM is used) which is a read-only memory, so that no change is possible.
There is also a case where a fixed area of the non-volatile memory is secured as a BOOT program storage area and stored there.
【0007】実際に上記BOOTプログラムを用いて不揮発
性メモリのプログラム書換えを行う場合には、最初に、
上記BOOTモードが設定されると、BOOTプログラムが起動
し、次に、不揮発性メモリの書換えを要求する所定のコ
マンドが入力されると、BOOTプログラムが実行され、不
揮発性メモリの書換え作業が行われる。ここで、第三者
によって上記動作が行われると、不揮発性メモリに格納
されている制御プログラムが読み出されてしまう危険性
がある。そのため、かかる書換え作業においては、新た
なプログラムを書き込む前に不揮発性メモリに格納され
ているプログラムを一旦一括消去するように上記BOOTプ
ログラムは組まれている。従って、上記BOOTプログラム
の実行以外では不揮発性メモリに格納されているプログ
ラムの書換えを行うことができないようにすることで、
第三者に不法に格納されているプログラムの内容を知ら
れてしまうことを防止することができる。When actually rewriting a program in a nonvolatile memory using the BOOT program, first,
When the BOOT mode is set, the BOOT program starts, and when a predetermined command requesting rewriting of the non-volatile memory is input, the BOOT program is executed and rewriting of the non-volatile memory is performed. . Here, if the above operation is performed by a third party, there is a risk that the control program stored in the non-volatile memory may be read. For this reason, in the rewriting operation, the BOOT program is designed so that the program stored in the nonvolatile memory is temporarily erased before writing a new program. Therefore, by making it impossible to rewrite the program stored in the non-volatile memory except for the execution of the BOOT program,
It is possible to prevent a third party from knowing the contents of the program stored illegally.
【0008】[0008]
【発明が解決しようとする課題】しかしながら、不揮発
性メモリの書換え作業が上記BOOTプログラムによる方法
ではユーザの要求を十分に満足させることができない場
合があり、ユーザの要求に見合った他の書換え方法を装
備することも現実には必要となる場合が多い。そのた
め、実際にはユーザが用意した不揮発性メモリ書換え用
プログラムを外部から送信し、そのプログラムを実行さ
せることによりユーザ独自の書換え作業を行うことが可
能となるものである。具体的には、上記と同様に、BOOT
モードが設定されると、BOOTプログラムが起動し、次
に、所定のコマンドが入力されると、BOOTプログラムが
実行され、ユーザの用意したプログラムを内蔵RAMにロ
ードされる。そして、ユーザのプログラムが実行される
ことでユーザの要求通りの書換え作業が行われることに
なる。However, the rewriting operation of the non-volatile memory may not be able to sufficiently satisfy the user's request by the method using the above-described BOOT program, and another rewriting method that meets the user's request may be used. It is often necessary to equip it. Therefore, in practice, the user can transmit a non-volatile memory rewriting program prepared by the user from the outside and execute the program to perform a user-specific rewriting operation. Specifically, as described above, BOOT
When the mode is set, the BOOT program is started. Next, when a predetermined command is input, the BOOT program is executed and the program prepared by the user is loaded into the built-in RAM. Then, by executing the user's program, the rewriting operation as requested by the user is performed.
【0009】ところが、このことは、第三者に対しても
その要求通りの作業を実行することを可能とするもので
ある。すなわち、不揮発性メモリに格納されているプロ
グラムを読み出すためのプログラムを上記と同様にロー
ドし、実行させれば、容易に格納されているプログラム
の内容を第三者は不法に知ることことができるからであ
る。However, this makes it possible for a third party to perform the required work. That is, if a program for reading a program stored in the nonvolatile memory is loaded and executed in the same manner as described above, a third party can easily and illegally know the contents of the stored program. Because.
【0010】そこで、本発明は、上記事情に鑑みて成さ
れたものであり、その目的は、予測困難なパスワードを
導入することにより、第三者に不法にプログラムを知ら
れることなく、ユーザ独自の書換え作業を容易に行うこ
とができる不揮発性メモリ混載マイコン及びその不揮発
性メモリ書換え方法を提供することである。Accordingly, the present invention has been made in view of the above circumstances, and has as its object to introduce a password which is difficult to predict, thereby preventing a third party from illegally knowing the program and making the program unique to the user. The present invention is to provide a microcomputer with a built-in nonvolatile memory and a method for rewriting the nonvolatile memory, which can easily perform the rewriting operation of the nonvolatile memory.
【0011】[0011]
【課題を解決するための手段】上記目的を達成するため
に、本発明は、各種の制御を行うCPU3と、随時読み出
し・書き込みが可能なRAM5と、外部コントローラ11
とのインターフェースをとる周辺I/O13と、CPU3が実
行するプログラムを格納する不揮発性メモリ(フラッシ
ュメモリ)7と、予め定められた処理を行うためのBOOT
プログラムとを具備する一般的な不揮発性メモリ混載マ
イコン1において、前記BOOTプログラムの実行により外
部コントローラ11から周辺I/O13を介してユーザ独
自の不揮発性メモリ書換え用プログラムをRAM5に転送
した後、該不揮発性メモリ書換え用プログラムの実行に
より不揮発性メモリ7の書換えを行う場合に、前記転送
の前にパスワードの一致を要求することにより、パスワ
ードの知らない第三者が独自のプログラム、例えば不揮
発性メモリ読み出しプログラムを転送し、それの実行に
より不法に不揮発性メモリ内のプログラムを読み出すこ
とを防止するものである。In order to achieve the above object, the present invention provides a CPU 3 for performing various controls, a RAM 5 that can be read and written at any time, and an external controller 11.
Peripheral I / O 13 interfacing with the CPU, a non-volatile memory (flash memory) 7 for storing a program to be executed by the CPU 3, and a BOOT for performing a predetermined process.
In a general nonvolatile memory-equipped microcomputer 1 including a program, a user-specific nonvolatile memory rewriting program is transferred from the external controller 11 to the RAM 5 via the peripheral I / O 13 by executing the BOOT program. When rewriting the non-volatile memory 7 by executing the non-volatile memory rewriting program, by requesting a password match before the transfer, a third party who does not know the password can use a unique program such as the non-volatile memory. It is intended to prevent the illegal reading of the program in the nonvolatile memory by transferring the read program and executing the read program.
【0012】さらに、本発明では、上記パスワードとし
て不揮発性メモリに書き込まれているプログラムのデー
タを用いているので、よりパスワードの一致が困難とな
るように成っている。具体的には、パスワードの数を、
不揮発性メモリ7の任意のアドレスである第1のアドレ
ス(パスワード数格納先アドレス)に格納されているデー
タから決定し、パスワードの内容を、不揮発性メモリ7
の任意のアドレスである第2のアドレス(パスワード比
較開始アドレス)及びパスワード比較開始アドレスを含
めて前記パスワード数だけ連続するアドレスそれぞれに
格納されているデータから決定するものである。上記パ
スワード数格納先アドレス及びパスワード比較開始アド
レスは任意であり、セキュリティーの必要性に応じてユ
ーザが独自に決定することができる。Further, in the present invention, since the data of the program written in the nonvolatile memory is used as the password, it is more difficult to match the passwords. Specifically, the number of passwords,
The content of the password is determined from the data stored at the first address (address for storing the number of passwords) which is an arbitrary address of the nonvolatile memory 7 and the content of the password is determined.
The password is determined from the data stored in each of the addresses consecutive by the number of passwords including the second address (password comparison start address) which is an arbitrary address and the password comparison start address. The password number storage destination address and the password comparison start address are arbitrary, and can be independently determined by the user according to security needs.
【0013】[0013]
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を用いて説明する。Embodiments of the present invention will be described below with reference to the drawings.
【0014】まず最初に、一般的な不揮発性メモリ混載
マイコンの構成について説明する。図1は、一般的な不
揮発性メモリ混載マイコンの構成を示す図である。同図
に示すように、一般的な不揮発性メモリ混載マイコン1
は、各種の制御をCPU(central processing unit)3と、
外部コントローラから転送される各種のプログラムを一
時的に保持する、読み出し・書き込みの可能なRAM(rand
om access memory)5と、マイコン1の制御プログラム
を格納する不揮発性メモリ(フラッシュメモリ)7と、BO
OTプログラムを格納する読み出し専用のROM(read only
memory)9と、外部コントローラ11とのシリアルイン
ターフェースを取る周辺I/O13と、各種のデータのや
り取りを行うデータバス15と、から構成されている。First, the configuration of a general nonvolatile memory mixed microcomputer will be described. FIG. 1 is a diagram showing a configuration of a general microcomputer with embedded nonvolatile memory. As shown in FIG.
Is a CPU (central processing unit) 3
A readable / writable RAM (rand) that temporarily holds various programs transferred from the external controller
om access memory) 5, a nonvolatile memory (flash memory) 7 for storing a control program for the microcomputer 1,
Read-only ROM for storing OT programs (read only
memory) 9, a peripheral I / O 13 that performs a serial interface with the external controller 11, and a data bus 15 that exchanges various data.
【0015】また、従来技術で述べたように、上記不揮
発性メモリ7の一定領域をBOOTプログラム格納領域とし
て確保し、そこにBOOTプログラムを格納する場合には、
上記ROM9は不要となる。なお、ここでは、BOOTプログ
ラムが上記ROM9に格納される場合について説明する。Further, as described in the prior art, when a certain area of the nonvolatile memory 7 is secured as a BOOT program storage area and the BOOT program is stored therein,
The ROM 9 becomes unnecessary. Here, a case where the BOOT program is stored in the ROM 9 will be described.
【0016】このような構成である不揮発性メモリ混載
マイコン1は、従来技術で説明したように、家庭電化製
品や自動車等に搭載され、フラッシュメモリ7に格納さ
れている制御プログラムによってそれらの制御を行うも
のである。As described in the related art, the microcomputer 1 with the nonvolatile memory having the above-described configuration is mounted on a home appliance, a car, or the like, and controls them by a control program stored in the flash memory 7. Is what you do.
【0017】そして、従来技術で説明したように、フラ
ッシュメモリ7に格納されている制御プログラムの書換
えが必要となった場合には、ROM9に予め格納されてい
るBOOTプログラムが起動され、一旦フラッシュメモリ7
内の制御プログラムは一括消去される。その後、外部コ
ントローラ11から送信される新たな制御プログラムが
周辺I/O13を介してフラッシュメモリ7に転送され、
その結果フラッシュメモリ7のデータ書換えが実行され
る。When the control program stored in the flash memory 7 needs to be rewritten, the BOOT program stored in advance in the ROM 9 is started, and the flash 7
Are erased collectively. Thereafter, a new control program transmitted from the external controller 11 is transferred to the flash memory 7 via the peripheral I / O 13,
As a result, data rewriting of the flash memory 7 is executed.
【0018】次に、本実施の形態に係る、ユーザが用意
したユーザプログラムである、不揮発性メモリ7の書換
え用プログラムの実行による不揮発性メモリ書換え方法
について説明する。Next, a method of rewriting the nonvolatile memory by executing a program for rewriting the nonvolatile memory 7, which is a user program prepared by the user, according to the present embodiment will be described.
【0019】従来技術では、外部から転送するユーザプ
ログラムによりユーザ独自の制御、例えば上記不揮発性
メモリ7の書換えを可能にした場合、そのことは逆に第
三者にも自由な制御を可能としてしまうものであり、不
法に不揮発性メモリ7内のデータを知られてしまうおそ
れがあった。In the prior art, when user-specific control, for example, rewriting of the non-volatile memory 7 is made possible by a user program transferred from the outside, the control can be freely performed by a third party. Therefore, there is a possibility that data in the nonvolatile memory 7 may be illegally known.
【0020】本実施の形態では、外部コントローラ11
からユーザプログラムをRAM5に転送し、ユーザ独自の
制御を行う場合に、その転送前にパスワード(password)
の一致を要求することにより、パスワードが一致しない
第三者のユーザプログラムの転送を防止し、それにより
不法に第三者がマイコンの制御を行うことを不可能とす
るものである。さらに、本実施の形態では、不揮発性メ
モリ7の所定のアドレス及びそれに格納されているデー
タの内容を用いて上記パスワードを作成することによ
り、不法にマイコンの制御を試みる(特に、不揮発性メ
モリ7の内容を読み出そうとする)第三者に対してパス
ワードの一致を非常に困難なものとすることが可能とな
る。In this embodiment, the external controller 11
To transfer the user program to the RAM 5 and perform user-specific control, the password (password) before the transfer
By requesting that the password match, the transfer of the user program of a third party whose password does not match is prevented, thereby making it impossible for a third party to control the microcomputer illegally. Further, in the present embodiment, the password is created using a predetermined address of the nonvolatile memory 7 and the contents of the data stored therein, thereby attempting to control the microcomputer illegally (especially, the nonvolatile memory 7). It is possible to make it very difficult for a third party to match the password.
【0021】パスワードの設定は例えば次のようにして
行われる。図2は、図1の不揮発性メモリ7におけるパ
スワードエリアの概念図である。図2に示すように、パ
スワードを指定できるエリアは、通常、不揮発性メモリ
7の所定のエリアに限定され、ここでは、10000H
番地から12000H番地まで及び2DFFFH番地か
ら2FFFFH番地までのエリアは除かれ、12000
H番地から2DFFFH番地までがパスワード指定可能
なエリアとして規定されている。The setting of the password is performed, for example, as follows. FIG. 2 is a conceptual diagram of a password area in the nonvolatile memory 7 of FIG. As shown in FIG. 2, the area in which the password can be specified is usually limited to a predetermined area of the nonvolatile memory 7, and here, 10000H
The area from address to address 12000H and the area from address 2DFFFH to address 2FFFFH are excluded.
The area from address H to address 2DFFFH is defined as an area in which a password can be specified.
【0022】この指定可能なパスワードエリア(ここで
は、指定可能パスワードエリアと呼ぶ)に対して、まず
第1に、パスワード数格納先アドレス(PNSA)を設定す
る。ここで設定されたアドレスに格納されているデータ
の内容によって、比較を行うパスワードの数(N)を決定
する。例えば、パスワード数格納先アドレスに格納され
ているデータが2バイト(N=2個)を示せば、後述する
パスワード比較開始アドレス(PCSA)から数えて2バイト
(N=2個)分だけパスワードの比較が行われる。ここ
で、パスワード数格納先アドレスは、パスワード数を決
定するためのデータを格納するためのものとして予め確
保しておいてもよく、また、本来不揮発性メモリ7に格
納されるプログラムの所定のアドレスに格納されている
データのうち、例えば2バイトを示しているものを選び
出し、そのアドレスをパスワード数格納先アドレスとし
てもよい。さらに、上記では、パスワード数(N)を2バ
イト(個)としたが、これに限られることはなく、パスワ
ード数をもっと多くし、セキュリティーの向上を図って
もよい。但し、セキュリティーの観点からはあまり少な
いのは問題であり、予め最小パスワード数を設定してお
き、この数よりは大きくなるようにパスワード数を決定
するのが望ましい。First, a password number storage destination address (PNSA) is set for this specifiable password area (here, referred to as a specifiable password area). The number (N) of passwords to be compared is determined based on the contents of the data stored at the address set here. For example, if the data stored in the password number storage destination address indicates 2 bytes (N = 2), 2 bytes counted from the password comparison start address (PCSA) described later
(N = 2) password comparisons are performed. Here, the password number storage destination address may be reserved in advance for storing data for determining the number of passwords, or a predetermined address of a program originally stored in the nonvolatile memory 7. Out of the data stored in the password may be selected, and the address may be used as the password number storage destination address. Further, in the above description, the number of passwords (N) is 2 bytes (pieces). However, the present invention is not limited to this, and the number of passwords may be further increased to improve security. However, it is a problem that the number is too small from the viewpoint of security, and it is desirable to set a minimum number of passwords in advance and determine the number of passwords to be larger than this number.
【0023】第2に、パスワード比較開始アドレス(PCS
A)を設定する。ここで設定されたアドレスからパスワー
ドの比較が開始し、上記パスワード数格納先アドレスに
より決定された上記パスワード数の分だけ比較が行われ
る。すなわち、(パスワード比較開始アドレス)から(パ
スワード比較開始アドレス+N−1)までのエリアでパ
スワードの比較が行われ、このエリアが実際にユーザに
よって指定されたパスワードエリアとなる。Second, the password comparison start address (PCS
Set A). The comparison of the passwords starts from the address set here, and the comparison is performed by the number of passwords determined by the password number storage destination address. That is, the passwords are compared in the area from (password comparison start address) to (password comparison start address + N-1), and this area becomes the password area actually specified by the user.
【0024】次に、本実施の形態に係る、不揮発性メモ
リ混載マイコンの上記BOOTプログラムを用いた不揮発性
メモリ書換え方法について説明する。図3、図4は、本
実施の形態に係る不揮発性メモリ書換え方法の処理手順
を示すフローチャートである。なお、この処理の事前に
は、所定のBOOTモードが設定され、BOOTプログラムが起
動しているものとする。また、以下に述べる一連の処理
は、かかるBOOTプログラムの実行により行われるもので
ある。Next, a description will be given of a method of rewriting the nonvolatile memory using the BOOT program of the microcomputer with the nonvolatile memory according to the present embodiment. FIGS. 3 and 4 are flowcharts showing the processing procedure of the nonvolatile memory rewriting method according to the present embodiment. It is assumed that a predetermined BOOT mode has been set and the BOOT program has been activated before this process. Further, a series of processes described below are performed by executing the BOOT program.
【0025】図3に示すように、ステップ1において、
まず最初にパスワード数格納先アドレス(PNSA)を入力す
る。As shown in FIG. 3, in step 1,
First, a password number storage address (PNSA) is input.
【0026】次に、ステップ2において、外部から入力
されたパスワード数格納先アドレスが予め設定されてい
る指定可能パスワードエリア内に存在するか否かが判断
される。入力されたパスワード数格納先アドレスが指定
可能パスワードエリア内に存在しないと判断された場
合、つまり正しいパスワード数格納先アドレスを知らな
い不当な第三者が不正確なアドレスを入力した場合に
は、図4に示すステップ3に進み、外部には何も送信せ
ずに無限ループに入り、そのまま終了する。Next, in step 2, it is determined whether or not the password-number storage address input from the outside exists in a preset specifiable password area. If it is determined that the input password number storage address is not in the specifiable password area, that is, if an unauthorized third party who does not know the correct password number storage address inputs an incorrect address, The process proceeds to step 3 shown in FIG. 4, enters an infinite loop without transmitting anything to the outside, and ends as it is.
【0027】次に、上記ステップ2で入力されたパスワ
ード数格納先アドレスが指定可能パスワードエリア内に
存在すると判断された場合には、ステップ4において、
上記パスワード数格納先アドレスに格納されているデー
タの内容によって決定されるパスワード数Nが予め決め
られている最小パスワード数よりも大きいか否かが判断
される。入力されたパスワード数格納先アドレスに格納
されているデータの内容から決定されるパスワード数N
が最小パスワードよりも小さいと判断された場合、つま
り上記ステップ2と同様正しいパスワード数格納先アド
レスを知らない不当な第三者が不正確なアドレスを入力
した場合には、図4に示すステップ3に進み、外部には
何も送信せずに無限ループに入り、そのまま終了する。Next, if it is determined in step 2 that the password number storage destination address entered exists in the specifiable password area, in step 4
It is determined whether or not the number of passwords N determined by the contents of the data stored in the password number storage destination address is larger than a predetermined minimum number of passwords. The number of passwords N determined from the contents of the data stored at the input address of the number of input passwords storage destination
If the password is determined to be smaller than the minimum password, that is, if an unauthorized third party who does not know the correct password number storage destination address inputs an incorrect address as in step 2 above, step 3 shown in FIG. To enter an infinite loop without sending anything to the outside, and the process ends.
【0028】次に、上記ステップ4で入力されたパスワ
ード数格納先アドレスに格納されているデータの内容か
ら決定されるパスワード数Nが最小パスワードよりも大
きいと判断された場合には、パスワード比較開始アドレ
ス(PCSA)の入力が可能となる。そして、ステップ5にお
いてパスワード比較開始アドレスを入力する。Next, when it is determined that the number N of passwords determined from the contents of the data stored in the password number storage destination address input in step 4 is larger than the minimum password, password comparison starts. Address (PCSA) input becomes possible. Then, in step 5, a password comparison start address is input.
【0029】次に、ステップ6において、外部から入力
されたパスワード比較開始アドレスが予め設定されてい
る指定可能パスワードエリア内に存在するか否かが判断
される。入力されたパスワード比較開始アドレスが指定
可能パスワードエリア内に存在しないと判断された場
合、つまり正しいパスワード比較開始アドレスを知らな
い不当な第三者が不正確なアドレスを入力した場合に
は、図4に示すステップ3に進み、外部には何も送信せ
ずに無限ループに入り、そのまま終了する。Next, at step 6, it is determined whether or not the password comparison start address input from the outside exists in a preset specifiable password area. When it is determined that the input password comparison start address does not exist in the specifiable password area, that is, when an unauthorized third party who does not know the correct password comparison start address inputs an incorrect address, FIG. The process proceeds to step 3 shown in (1), enters an infinite loop without sending anything to the outside, and ends as it is.
【0030】次に、上記ステップ5で入力されたパスワ
ード比較開始アドレスが指定可能パスワードエリア内に
存在すると判断された場合には、実際にパスワードの入
力が始まる。具体的には、(パスワード比較開始アドレ
ス)から(パスワード比較開始アドレス+N−1)までの
エリアでパスワードの比較が順に行われる。まず、ステ
ップ7において、アドレス(PCSA+n-1)に格納されてい
るデータ(パスワード)と比較されるパスワードを外部よ
り入力する。ここで、nは1以上N以下の任意の整数で
あり、例えば、n=1の場合には(PCSA+n-1)はパスワ
ード比較開始アドレスそのものを示し、n=Nの場合に
は(PCSA+n-1)はパスワード比較開始アドレスからパス
ワード数N分だけ比較する最後のアドレスを示してい
る。Next, when it is determined in step 5 that the password comparison start address entered exists in the specifiable password area, the password input actually starts. More specifically, password comparisons are sequentially performed in the area from (password comparison start address) to (password comparison start address + N-1). First, in step 7, a password to be compared with the data (password) stored at the address (PCSA + n-1) is input from outside. Here, n is an arbitrary integer from 1 to N. For example, when n = 1, (PCSA + n−1) indicates the password comparison start address itself, and when n = N, (PCSA + n−1) + n-1) indicates the last address to be compared by the password number N from the password comparison start address.
【0031】次に、ステップ8において、上記ステップ
7で入力されたパスワードとそれに対応するアドレスに
格納されたデータ(パスワード)とが一致したか否かが判
断される。入力されたパスワードが対応するアドレスに
格納されたデータ(パスワード)と一致しないと判断され
た場合、つまり正しいパスワードを知らない不当な第三
者が不正確なパスワードを入力した場合には、図4に示
すステップ3に進み、外部には何も送信せずに無限ルー
プに入り、そのまま終了する。Next, at step 8, it is determined whether or not the password input at step 7 matches the data (password) stored at the corresponding address. If it is determined that the input password does not match the data (password) stored at the corresponding address, that is, if an unauthorized third party who does not know the correct password inputs the incorrect password, FIG. The process proceeds to step 3 shown in (1), enters an infinite loop without sending anything to the outside, and ends as it is.
【0032】次に、上記ステップ8で入力されたパスワ
ードが対応するアドレスに格納されたデータ(パスワー
ド)と一致すると判断された場合には、ステップ9にお
いて、n=Nであるか否かが判断される。すなわち、す
べてのパスワードの一致の判断が終了したか否かが確認
されるステップである。従って、n=Nでない場合に
は、まだすべてのパスワードの一致の判断が成されてい
ないので、nに1を加えて再び上記ステップ7に戻り、
同様にステップ8、ステップ9を実行する。一方、n=
Nである場合には、すべてのパスワードの一致の確認が
終了したことになる。Next, when it is determined in step 8 that the input password matches the data (password) stored in the corresponding address, it is determined in step 9 whether n = N. Is done. That is, this is a step in which it is confirmed whether or not the determination of the coincidence of all the passwords is completed. Therefore, if n = N is not satisfied, all of the passwords have not yet been determined to match, so 1 is added to n and the process returns to step 7 again.
Steps 8 and 9 are executed similarly. On the other hand, n =
If the answer is N, it means that the confirmation of matching of all the passwords has been completed.
【0033】そして、上記ステップ9ですべてのパスワ
ードの一致の確認が終了したと判断された場合、すなわ
ち、すべてのパスワードが一致した場合には、ステップ
10において、従来同様BOOTプログラム実行により、外
部から送信される不揮発性メモリ7の書換え用プログラ
ムをRAM5にロードし、そのロードされたプログラムに
より具体的な書換え処理が実行されることになる。If it is determined in step 9 that the confirmation of the agreement of all the passwords has been completed, that is, if all the passwords match, in step 10, the BOOT program is executed as in the prior art from the outside to The rewriting program of the nonvolatile memory 7 to be transmitted is loaded into the RAM 5, and a specific rewriting process is executed by the loaded program.
【0034】このように本実施の形態では、ユーザ独自
の制御プログラムを内蔵RAMにロードし、該制御プログ
ラムの実行により、ユーザ独自の処理を行う場合におい
て、その制御プログラムのロードの際にパスワードの一
致を要求するものである。従って、本実施の形態によれ
ば、ユーザ独自の書換え用プログラムをロードし、かか
るプログラムに実行によりユーザの要求通りの処理を行
う場合においては、パスワードを知っている正当なユー
ザであれば何ら問題なく、外部から所定の書換え用プロ
グラムをロードすることが可能である。一方、パスワー
ドの知らない第三者が不法に不揮発性メモリ内のデータ
を読み出そうとして、外部から読み出し用プログラムを
ロードしようとしても、パスワードの不一致によりロー
ドは不可能となる。従って、不揮発性メモリ内のデータ
を読み出すことはできない。As described above, in the present embodiment, when a user-specific control program is loaded into the built-in RAM and the user-specific processing is performed by executing the control program, the password is not loaded when the control program is loaded. It requires a match. Therefore, according to the present embodiment, when a user-specific rewriting program is loaded and the program is processed as requested by the user by executing the program, no problem occurs if the legitimate user knows the password. Instead, it is possible to load a predetermined rewriting program from the outside. On the other hand, even if a third party who does not know the password illegally reads the data in the nonvolatile memory and tries to load the reading program from the outside, the loading becomes impossible due to the password mismatch. Therefore, data in the nonvolatile memory cannot be read.
【0035】さらに、本実施の形態では、上記パスワー
ドとして、不揮発性メモリの任意のアドレス、及びその
アドレスに格納されているデータの組み合わせを用いて
いるので、パスワードの知らない第三者にとっては非常
に予測困難であり、第三者による不法なマイコンの制御
を不可能としている。Further, in the present embodiment, an arbitrary address of the non-volatile memory and a combination of data stored at the address are used as the password, so that a third party who does not know the password is very difficult. It is difficult to predict, and it is impossible for a third party to control the microcomputer illegally.
【0036】ここで、上述した不揮発性メモリの書換え
方法を実現するためのプログラムはコンピュータ読み取
り可能な記録媒体に保存することができる。この記録媒
体をコンピュータシステムによって読み込ませ、前記プ
ログラムを実行してコンピュータを制御しながら上述し
た書換え方法を実現することができる。記録媒体として
は、メモリ装置、磁気ディスク装置、光ディスク装置
等、プログラムを記録することができるような装置が含
まれる。Here, a program for realizing the above-described method for rewriting the nonvolatile memory can be stored in a computer-readable recording medium. The recording medium can be read by a computer system, and the above-mentioned rewriting method can be realized while controlling the computer by executing the program. Examples of the recording medium include devices capable of recording a program, such as a memory device, a magnetic disk device, and an optical disk device.
【0037】[0037]
【発明の効果】以上説明したように、本発明によれば、
外部から転送したユーザプログラムの実行により独自の
制御を行う場合において、その転送前にパスワード(pas
sword)の一致を要求することにより、パスワードが一致
しない第三者のユーザプログラムの転送を防止し、それ
により不法に第三者がマイコンの制御を行うことを防止
することができる。As described above, according to the present invention,
When performing unique control by executing a user program transferred from outside, password (pas
Requesting the matching of the sword) prevents the transfer of the user program of the third party whose password does not match, thereby preventing the third party from illegally controlling the microcomputer.
【0038】さらに、本発明によれば、不揮発性メモリ
の任意のアドレス及びそれに格納されているデータの内
容を用いて上記パスワードを作成することにより、不法
に不揮発性メモリの内容を読み出そうとする第三者に対
してパスワードの一致を非常に困難なものとすることが
可能となる。Further, according to the present invention, it is possible to illegally read the contents of the nonvolatile memory by creating the password using an arbitrary address of the nonvolatile memory and the contents of data stored therein. This makes it very difficult for a third party to match the password.
【0039】そして、本発明によれば、ユーザのセキュ
リティーに対する負担を軽減することが可能となる。According to the present invention, the burden on the user for security can be reduced.
【図1】一般的な不揮発性メモリ混載マイコンの構成を
示す図である。FIG. 1 is a diagram showing a configuration of a general microcomputer with embedded nonvolatile memory.
【図2】図1の不揮発性メモリ7におけるパスワードエ
リアの概念図である。FIG. 2 is a conceptual diagram of a password area in the nonvolatile memory 7 of FIG.
【図3】本実施の形態に係る不揮発性メモリ書換え方法
の処理手順を示すフローチャートである(その1)。FIG. 3 is a flowchart showing a processing procedure of a nonvolatile memory rewriting method according to the present embodiment (part 1).
【図4】本実施の形態に係る不揮発性メモリ書換え方法
の処理手順を示すフローチャートである(その2)。FIG. 4 is a flowchart showing a processing procedure of a nonvolatile memory rewriting method according to the present embodiment (part 2).
1 不揮発性メモリ混載マイコン 3 CPU 5 RAM 7 不揮発性メモリ(フラシュメモリ) 9 ROM 11 外部コントローラ 13 周辺I/O 15 データバス 1 Microcomputer with embedded nonvolatile memory 3 CPU 5 RAM 7 Nonvolatile memory (flash memory) 9 ROM 11 External controller 13 Peripheral I / O 15 Data bus
Claims (6)
と、 前記CPUが実行するプログラムを格納する不揮発性メモ
リと、 予め定められた処理を行うためのBOOTプログラムとを具
備する不揮発性メモリ混載マイコンにおいて、 前記BOOTプログラムの実行により外部から不揮発性メモ
リ書換え用プログラムを前記RAMに転送した後、該不揮
発性メモリ書換え用プログラムの実行により前記不揮発
性メモリの書換えを行う場合には、 前記転送の前にパスワードの一致を要求することを特徴
とする不揮発性メモリ混載マイコン。1. A CPU that performs various controls, a RAM that can be read and written at any time, and a peripheral I / O that interfaces with an external controller
A nonvolatile memory that stores a program to be executed by the CPU; and a nonvolatile memory mixed microcomputer that includes a BOOT program for performing a predetermined process. After rewriting the non-volatile memory by executing the non-volatile memory rewriting program after transferring the non-volatile memory rewriting program to the RAM, requesting a password match before the transfer is performed. Memory embedded microcomputer.
モリの任意のアドレスである第1のアドレスに格納され
ているデータから決定されると共に、 前記パスワードの内容は、前記不揮発性メモリの任意の
アドレスである第2のアドレス及び該第2のアドレスを
含めて前記パスワード数だけ連続するアドレスそれぞれ
に格納されているデータであることを特徴とする請求項
1記載の不揮発性メモリ混載マイコン。2. The number of passwords is determined from data stored at a first address which is an arbitrary address of the nonvolatile memory, and the content of the password is determined by an arbitrary address of the nonvolatile memory. 2. The microcomputer with embedded nonvolatile memory according to claim 1, wherein the data is stored in a second address which is an address and in addresses including the second address, the addresses being continuous by the number of passwords.
ログラムを備え、該BOOTプログラムの実行により、外部
から不揮発性メモリ書換え用プログラムを転送した後、
該不揮発性メモリ書換え用プログラムの実行により前記
不揮発性メモリの書換えを行う不揮発性メモリ混載マイ
コンの不揮発性メモリ書換え方法において、 前記転送の前にパスワードの一致を要求することを特徴
とする不揮発性メモリ混載マイコンの不揮発性メモリ書
換え方法。3. A boot program for performing a predetermined process is provided, and after executing the boot program, a nonvolatile memory rewriting program is externally transferred,
A non-volatile memory rewriting method for a non-volatile memory embedded microcomputer that rewrites the non-volatile memory by executing the non-volatile memory rewriting program, wherein a password match is required before the transfer. Rewriting method of nonvolatile memory of embedded microcomputer.
モリの任意のアドレスである第1のアドレスに格納され
ているデータから決定されると共に、 前記パスワードの内容は、前記不揮発性メモリの任意の
アドレスである第2のアドレス及び該第2のアドレスを
含めて前記パスワード数だけ連続するアドレスそれぞれ
に格納されているデータであることを特徴とする請求項
3記載の不揮発性メモリ混載マイコンの不揮発性メモリ
書換え方法。4. The number of passwords is determined from data stored at a first address which is an arbitrary address of the nonvolatile memory, and the content of the password is determined by an arbitrary address of the nonvolatile memory. 4. The nonvolatile memory according to claim 3, wherein the data is stored in a second address that is an address, and data that is stored in each of the addresses that are consecutive by the number of passwords including the second address. Memory rewriting method.
ログラムの実行により、外部から不揮発性メモリ書換え
用プログラムを転送した後、該不揮発性メモリ書換え用
プログラムの実行により前記不揮発性メモリの書換えを
行う不揮発性メモリ混載マイコンの不揮発性メモリ書換
えプログラムを記録した記録媒体において、 前記転送の前にパスワードの一致を要求することを特徴
とする不揮発性メモリ混載マイコンの不揮発性メモリ書
換えプログラムを記録した記録媒体。5. A nonvolatile memory rewriting program is externally transferred by executing a BOOT program for performing a predetermined process, and then the nonvolatile memory is rewritten by executing the nonvolatile memory rewriting program. A recording medium on which a nonvolatile memory rewriting program of a microcomputer with embedded nonvolatile memory is recorded, wherein a password match is requested before the transfer. Medium.
モリの任意のアドレスである第1のアドレスに格納され
ているデータから決定されると共に、 前記パスワードの内容は、前記不揮発性メモリの任意の
アドレスである第2のアドレス及び該第2のアドレスを
含めて前記パスワード数だけ連続するアドレスそれぞれ
に格納されているデータであることを特徴とする請求項
5記載の不揮発性メモリ混載マイコンの不揮発性メモリ
書換えプログラムを記録した記録媒体。6. The number of passwords is determined from data stored at a first address which is an arbitrary address of the nonvolatile memory, and the content of the password is determined by an arbitrary address of the nonvolatile memory. 6. The non-volatile memory according to claim 5, wherein the data is stored in a second address that is an address, and data that is stored in each of the addresses that are consecutive by the number of passwords including the second address. A recording medium on which a memory rewriting program is recorded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33323197A JPH11167525A (en) | 1997-12-03 | 1997-12-03 | Nonvolatile-memory mixedly mounted microcomputer and nonvolatile memory rewriting method thereof, and recording medium where nonvolatile memory rewriting program of nonvolatile-memory mixedly mounted microcomputer is recorded |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33323197A JPH11167525A (en) | 1997-12-03 | 1997-12-03 | Nonvolatile-memory mixedly mounted microcomputer and nonvolatile memory rewriting method thereof, and recording medium where nonvolatile memory rewriting program of nonvolatile-memory mixedly mounted microcomputer is recorded |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11167525A true JPH11167525A (en) | 1999-06-22 |
Family
ID=18263796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33323197A Abandoned JPH11167525A (en) | 1997-12-03 | 1997-12-03 | Nonvolatile-memory mixedly mounted microcomputer and nonvolatile memory rewriting method thereof, and recording medium where nonvolatile memory rewriting program of nonvolatile-memory mixedly mounted microcomputer is recorded |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11167525A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760787B2 (en) | 1998-08-04 | 2004-07-06 | Miscrosoft Corporation | Recoverable methods and systems for processing input/output requests including virtual memory addresses |
JP2006505841A (en) * | 2002-11-07 | 2006-02-16 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | Method for reliably checking the memory area of a microcontroller in a control device and control device with a protected microcontroller |
KR100667096B1 (en) * | 2005-01-21 | 2007-01-12 | 삼성전자주식회사 | A booting method of a DVD recorder |
JP2008090415A (en) * | 2006-09-29 | 2008-04-17 | Nec Personal Products Co Ltd | Determination device, determination method and program |
-
1997
- 1997-12-03 JP JP33323197A patent/JPH11167525A/en not_active Abandoned
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760787B2 (en) | 1998-08-04 | 2004-07-06 | Miscrosoft Corporation | Recoverable methods and systems for processing input/output requests including virtual memory addresses |
JP2006505841A (en) * | 2002-11-07 | 2006-02-16 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | Method for reliably checking the memory area of a microcontroller in a control device and control device with a protected microcontroller |
KR100667096B1 (en) * | 2005-01-21 | 2007-01-12 | 삼성전자주식회사 | A booting method of a DVD recorder |
JP2008090415A (en) * | 2006-09-29 | 2008-04-17 | Nec Personal Products Co Ltd | Determination device, determination method and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7890726B1 (en) | Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller | |
JP4545378B2 (en) | Pre-boot authentication system | |
JP3710671B2 (en) | One-chip microcomputer, IC card using the same, and access control method for one-chip microcomputer | |
JP2682700B2 (en) | IC card | |
US6148441A (en) | Method for reprogramming flash ROM in a personal computer implementing an EISA bus system | |
US7421534B2 (en) | Data protection for non-volatile semiconductor memory using block protection flags | |
US6453397B1 (en) | Single chip microcomputer internally including a flash memory | |
WO2005114537A1 (en) | Portable veterinary medical record apparatus and method of use | |
US5828831A (en) | System for preventing unauthorized use of a personal computer and a method therefore security function, and methods of installing and detaching a security device to/from a computer | |
JPH09500469A (en) | Memory card and operating method thereof | |
US6804730B1 (en) | Access control device, access control method, recording medium, and computer data signal for controlling allowance of access to storage area using certification data | |
US8607061B2 (en) | Flash device security method utilizing a check register | |
JP2001356963A (en) | Semiconductor device and its control device | |
JP2004005679A (en) | Computer system, memory structure, and method of executing program | |
US7836219B1 (en) | System and method for authentication of embedded RAID on a host RAID card | |
JP2002024046A (en) | Microcomputer, its memory contents changing system and memory contents changing method | |
US6594727B1 (en) | Entertainment system which includes an information processing unit capable of communicating with detachable portable storage device even after insertion of a different portable storage device | |
JPH11167525A (en) | Nonvolatile-memory mixedly mounted microcomputer and nonvolatile memory rewriting method thereof, and recording medium where nonvolatile memory rewriting program of nonvolatile-memory mixedly mounted microcomputer is recorded | |
JP4199121B2 (en) | Method and apparatus for changing the contents of a revision identification register | |
EP1079340A2 (en) | Integrated circuit card protected from unauthorized access | |
JPS62245353A (en) | Prevention circuit for data rewriting of eeprom | |
JPH0935018A (en) | Portable information recording medium and its access method | |
JP2003141481A (en) | Removable storage card with security function and method of authenticating the storage card | |
JPH11167484A (en) | Nonvolatile memory mixed-loaded microcomputer, its program changing history managing method and recording medium recording program changing history managing program of its microcomputer | |
JP2005157684A (en) | Memory card and memory determining method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041130 |
|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20050120 |