JPH03276337A - マイクロコントローラ - Google Patents
マイクロコントローラInfo
- Publication number
- JPH03276337A JPH03276337A JP2077447A JP7744790A JPH03276337A JP H03276337 A JPH03276337 A JP H03276337A JP 2077447 A JP2077447 A JP 2077447A JP 7744790 A JP7744790 A JP 7744790A JP H03276337 A JPH03276337 A JP H03276337A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- data
- memory
- user
- user program
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
- G06F12/1441—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/362—Debugging of software
- G06F11/3648—Debugging of software using additional hardware
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の目的〕
(産業上の利用分野)
本発明は、ユーザがプログラムすることが可能なマイク
ロコントローラに関するもので、特にセキュリティを必
要とするICカード、データバンク等に使用されるもの
である。
ロコントローラに関するもので、特にセキュリティを必
要とするICカード、データバンク等に使用されるもの
である。
(従来の技術)
ユーザがプログラムすることが可能な従来のマイクロコ
ントローラにおいては、このマイクロコントローラの製
造時に予めプログラムされるO8等のプログラムを記憶
するメモリ領域と、製造後にユーザによってプログラム
されるプログラムを記憶するユーザプログラマブルメモ
リ領域を分けて使用している。
ントローラにおいては、このマイクロコントローラの製
造時に予めプログラムされるO8等のプログラムを記憶
するメモリ領域と、製造後にユーザによってプログラム
されるプログラムを記憶するユーザプログラマブルメモ
リ領域を分けて使用している。
(発明が解決しようとする課題)
しかし、ユーザがプログラムしたプログラムコードに対
してのチェックが行われていないため、ユーザプログラ
マブルメモリ領域以外のメモリ領域のプログラムが破壊
されたり、改ざんされたりするおそれがあった。
してのチェックが行われていないため、ユーザプログラ
マブルメモリ領域以外のメモリ領域のプログラムが破壊
されたり、改ざんされたりするおそれがあった。
本発明は上記事情を考慮してなされたものであって、プ
ログラム及びデータ等の破壊及び改ざんを可及的に防止
することのできるマイクロコントローラを提供すること
を目的とする。
ログラム及びデータ等の破壊及び改ざんを可及的に防止
することのできるマイクロコントローラを提供すること
を目的とする。
(課題を解決するための手段)
本発明のマイクロコントローラは、製造時に予めプログ
ラムされる基本メインプログラムを記憶する第1のメモ
リと、製造後ユーザによって作成されるユーザプログラ
ムを記憶する第2のメモリと、第1及び第2のメモリに
プログラムを書き込んだり、第1及び第2のメモリに記
憶されたプログラムを読み込んだりすることを制御する
CPUと、このCPUが第2のメモリにユーザプログラ
ムを書き込んだり、第2のメモリに記憶されているユー
ザプログラムを読み込んだりする時に、ユーザプログラ
ムのプログラムコードが適切なものであるかどうかをチ
ェックし、不適切なプログラムコードを排除するチェッ
ク手段とを備えていることを特徴とする。
ラムされる基本メインプログラムを記憶する第1のメモ
リと、製造後ユーザによって作成されるユーザプログラ
ムを記憶する第2のメモリと、第1及び第2のメモリに
プログラムを書き込んだり、第1及び第2のメモリに記
憶されたプログラムを読み込んだりすることを制御する
CPUと、このCPUが第2のメモリにユーザプログラ
ムを書き込んだり、第2のメモリに記憶されているユー
ザプログラムを読み込んだりする時に、ユーザプログラ
ムのプログラムコードが適切なものであるかどうかをチ
ェックし、不適切なプログラムコードを排除するチェッ
ク手段とを備えていることを特徴とする。
(作 用)
このように構成された本発明のマイクロコントローラに
よればCPUがユーザプログラムを書き込んだり読み込
んだりする場合にユーザプログラムのプログラムコード
が適切なものであるかどうかがチェック手段によってチ
ェックされ、不適切なプログラムコードが排除される。
よればCPUがユーザプログラムを書き込んだり読み込
んだりする場合にユーザプログラムのプログラムコード
が適切なものであるかどうかがチェック手段によってチ
ェックされ、不適切なプログラムコードが排除される。
これにより本発明のマイクロコントローラはプログラム
及びデータ等の破壊及び改ざんを可及的に防止すること
ができる。
及びデータ等の破壊及び改ざんを可及的に防止すること
ができる。
(実施例)
第1図に本発明によるマイクロコントローラの一実施例
の構成を示す。この実施例のマイクロコントローラは、
110端子1a、CLOCK端子lb%RESET端子
1c、バッファ2、電圧比較回路4、CPU6、デコー
ダ回路7、チェック回路8,10、フリップフロップ回
路(F/F回路ともいう)11、NOR回路12、禁止
回路14、及びメモリ16.18を備えている。
の構成を示す。この実施例のマイクロコントローラは、
110端子1a、CLOCK端子lb%RESET端子
1c、バッファ2、電圧比較回路4、CPU6、デコー
ダ回路7、チェック回路8,10、フリップフロップ回
路(F/F回路ともいう)11、NOR回路12、禁止
回路14、及びメモリ16.18を備えている。
メモリ16にはマイクロコントローラを駆動するメイン
プログラムの他に、セキュリティ上ユーザが解読したり
改ざんしたりするのを阻止する必要のあるデータが格納
されている。メモリ18の予め設定されたユーザプログ
ラム領域内はユーザによって作成されるユーザプログラ
ム及びデータが格納され、メモリ18のそれ以外の領域
はデータ領域として使用される。
プログラムの他に、セキュリティ上ユーザが解読したり
改ざんしたりするのを阻止する必要のあるデータが格納
されている。メモリ18の予め設定されたユーザプログ
ラム領域内はユーザによって作成されるユーザプログラ
ム及びデータが格納され、メモリ18のそれ以外の領域
はデータ領域として使用される。
バッファ2はRESET端子1cを介して入力されたR
ESET信号が所定値(例えば5V)以下のときにはそ
のまま通過させ、所定値を超えた場合は所定値を超えた
分をカットして出力する。
ESET信号が所定値(例えば5V)以下のときにはそ
のまま通過させ、所定値を超えた場合は所定値を超えた
分をカットして出力する。
電圧比較回路4はRESET信号の値と電源電圧vDD
との大小を比較し、比較結果をチェック回路10に送出
する。デコーダ回路7はCPU6からアドレスバスg1
を介して送られるアドレス信号がユーザプログラムの実
行直前に送られる特定のアドレス信号のときにフリップ
フロップ回路11をトリガさせるトリガ信号を出力する
。フリップフロップ回路11はCPU6からデータバス
p2を介して送出されるデータ及びデコーダ回路7から
のトリが信号に基づいてユーザプログラム実行フラグを
示す信号をチェック回路8.10に対して出力する。こ
のユーザプログラム実行フラグは、ユーザプログラムの
実行中は“1”にセットされ、メモリ16内の基本メイ
ンプログラムの実行中は“0”にセットされる。
との大小を比較し、比較結果をチェック回路10に送出
する。デコーダ回路7はCPU6からアドレスバスg1
を介して送られるアドレス信号がユーザプログラムの実
行直前に送られる特定のアドレス信号のときにフリップ
フロップ回路11をトリガさせるトリガ信号を出力する
。フリップフロップ回路11はCPU6からデータバス
p2を介して送出されるデータ及びデコーダ回路7から
のトリが信号に基づいてユーザプログラム実行フラグを
示す信号をチェック回路8.10に対して出力する。こ
のユーザプログラム実行フラグは、ユーザプログラムの
実行中は“1”にセットされ、メモリ16内の基本メイ
ンプログラムの実行中は“0”にセットされる。
チェック回路8にはユーザがアクセスして解読したり、
改ざんしたりするのを禁止する必要のあるメモリ16内
のデータのアドレス番地がセットされている。そしてこ
のアドレス番地をCPU6がアクセスしようとした場合
、ユーザプログラム実行フラグが“1”のときはそのア
クセスを禁止する信号をチェック回路8がNOR回路1
2及び禁止回路14に送出してアクセスを禁止させ、ユ
ーザプログラム実行フラグがO“のときはそのアクセス
を許可する。
改ざんしたりするのを禁止する必要のあるメモリ16内
のデータのアドレス番地がセットされている。そしてこ
のアドレス番地をCPU6がアクセスしようとした場合
、ユーザプログラム実行フラグが“1”のときはそのア
クセスを禁止する信号をチェック回路8がNOR回路1
2及び禁止回路14に送出してアクセスを禁止させ、ユ
ーザプログラム実行フラグがO“のときはそのアクセス
を許可する。
チェック回路10はCPU6からメモリ16゜18に書
き込まれるプログラムデータが指定命令データであるか
どうかを検出する機能を有しておリ、書き込まれるプロ
グラムデータが指定命令データでない場合は、ロードを
阻止するための信号をNOR回路12及び禁止回路14
に送出する。
き込まれるプログラムデータが指定命令データであるか
どうかを検出する機能を有しておリ、書き込まれるプロ
グラムデータが指定命令データでない場合は、ロードを
阻止するための信号をNOR回路12及び禁止回路14
に送出する。
又、ユーザプログラムの実行時には、メモリ16゜18
から読み出されたプログラムデータが実行の許される命
令であるかどうかを、CPU6から送られてくる命令サ
イクル状態モニタ信号M1と比較しながら検出する機能
も有しており、実行の許される命令でない場合は実行を
阻止するための信号をNOR回路12及び禁止回路14
に送出する。
から読み出されたプログラムデータが実行の許される命
令であるかどうかを、CPU6から送られてくる命令サ
イクル状態モニタ信号M1と比較しながら検出する機能
も有しており、実行の許される命令でない場合は実行を
阻止するための信号をNOR回路12及び禁止回路14
に送出する。
禁止回路14はチェック回路8,10から送出される信
号に基づいてコントロール信号例えば、CESRDSW
R信号を制御してメモリ16゜18へのアクセスを禁止
させる。
号に基づいてコントロール信号例えば、CESRDSW
R信号を制御してメモリ16゜18へのアクセスを禁止
させる。
次に第2図乃至第6図を参照して上記実施例の作用を説
明する。この実施例のマイクロコントローラのCLOC
K端子1bびRESET端子ICを介してCLOCK入
力及びRESET入力が外部から入力されると、バッフ
ァ2を介してフリップフロップ回路11がリセットされ
る(第2図のステップF21.F22.F23参照)。
明する。この実施例のマイクロコントローラのCLOC
K端子1bびRESET端子ICを介してCLOCK入
力及びRESET入力が外部から入力されると、バッフ
ァ2を介してフリップフロップ回路11がリセットされ
る(第2図のステップF21.F22.F23参照)。
次にメモリ16内の基本メインプログラムが実行され、
この基本メインプログラムの実行の最初の部分でマイク
ロコントローラの内部状態がセットアツプされた後、い
くつかのメニューを選択するプログラムが実行される(
ステップF24参照)。選択されるプログラムとしては
メインプログラム実行メニュー、ユーザプログラムロー
ドルーチン、ユーザプログラム実行ルーチン等があり、
メニューの選択については110端子1aを介して所定
の信号を入力することによって実行される(ステップF
25.F26.F41参照)。ここでユーザプログラム
ロードルーチンとユーザプログラム実行ルーチンについ
て説明する。
この基本メインプログラムの実行の最初の部分でマイク
ロコントローラの内部状態がセットアツプされた後、い
くつかのメニューを選択するプログラムが実行される(
ステップF24参照)。選択されるプログラムとしては
メインプログラム実行メニュー、ユーザプログラムロー
ドルーチン、ユーザプログラム実行ルーチン等があり、
メニューの選択については110端子1aを介して所定
の信号を入力することによって実行される(ステップF
25.F26.F41参照)。ここでユーザプログラム
ロードルーチンとユーザプログラム実行ルーチンについ
て説明する。
ユーザプログラムロードルーチンが選択されると(ステ
ップF26参照)、メモリ16内に記憶されているプロ
グラムロードフラグすなわちメモ1J18内にユーザプ
ログラムをロードして良いかどうかを示すロードフラグ
が“0”であるかそれとも′1”であるかをCPU6が
チェックする(ステップF27参照)。このロードフラ
グがユーザプログラムをロードして良いことを示す“0
”であれば、110端子1aを介してユーザの命令コー
ド及びデータコードが入力されて(ステップF2g参照
)、CPU6からチェック回路10にデータバス12を
介して送られる。ロードフラグがm111の場合は、メ
モリ18内にユーザプログラムが既に存在していてロー
ドすることができないのでエラー処理を行う(ステップ
F34参照)。
ップF26参照)、メモリ16内に記憶されているプロ
グラムロードフラグすなわちメモ1J18内にユーザプ
ログラムをロードして良いかどうかを示すロードフラグ
が“0”であるかそれとも′1”であるかをCPU6が
チェックする(ステップF27参照)。このロードフラ
グがユーザプログラムをロードして良いことを示す“0
”であれば、110端子1aを介してユーザの命令コー
ド及びデータコードが入力されて(ステップF2g参照
)、CPU6からチェック回路10にデータバス12を
介して送られる。ロードフラグがm111の場合は、メ
モリ18内にユーザプログラムが既に存在していてロー
ドすることができないのでエラー処理を行う(ステップ
F34参照)。
なお、ロードされるデータが命令コードであるかデータ
コードであるかの判別は、第3図のタイミングチャート
に示すように命令コードに相当するデータ入力時にRE
SET端子1cに電源電源vDD(例えば5V)よりも
高い電圧(例えば10■)が印加されるため、電圧比較
回路4によってRESET端子1cに印加される電圧が
電源電圧vDDと比較され、この比較結果に基づいてチ
ェック回路10によって行われる。
コードであるかの判別は、第3図のタイミングチャート
に示すように命令コードに相当するデータ入力時にRE
SET端子1cに電源電源vDD(例えば5V)よりも
高い電圧(例えば10■)が印加されるため、電圧比較
回路4によってRESET端子1cに印加される電圧が
電源電圧vDDと比較され、この比較結果に基づいてチ
ェック回路10によって行われる。
CPU6からデータバスI2を介してデータが送られく
ると、チェック回路10によって命令コードであるかど
うか判別されるとともに、データが命令コードである場
合にユーザが使用してもよい指定命令コードかどうかチ
ェックされる(第2図ステップF29.F30参照)。
ると、チェック回路10によって命令コードであるかど
うか判別されるとともに、データが命令コードである場
合にユーザが使用してもよい指定命令コードかどうかチ
ェックされる(第2図ステップF29.F30参照)。
そしてデータが指令命令コード又はデータコードである
場合はチェック回路10からメモリ18内のユーザプロ
グラム領域にロードされてセーブされる(第2図ステッ
プF31及び第4図参照)。もしデータが指令命令コー
ド以外の命令コードである場合は、チェック回路10か
らNOR回路12及び禁止回路14にロードを阻止する
ための信号が送られ、禁止回路14によってメモリ18
内のユーザプログラム領域への書き込みが禁止されると
ともに(第4図の期間T3〜T4及びT8〜T9参照)
、NOR回路12を介してCPU6への割込み信号が発
生されてエラー処理が行われる(第2図ステップF35
、F34参照)。メモリ18内のユーザプログラム領域
へのユーザプログラムの書き込みが完了するとプログラ
ムロードフラグが1″にセットされ(第2図ステップF
B2.F33参照)、ユーザプログラムの書き替えが禁
止される。
場合はチェック回路10からメモリ18内のユーザプロ
グラム領域にロードされてセーブされる(第2図ステッ
プF31及び第4図参照)。もしデータが指令命令コー
ド以外の命令コードである場合は、チェック回路10か
らNOR回路12及び禁止回路14にロードを阻止する
ための信号が送られ、禁止回路14によってメモリ18
内のユーザプログラム領域への書き込みが禁止されると
ともに(第4図の期間T3〜T4及びT8〜T9参照)
、NOR回路12を介してCPU6への割込み信号が発
生されてエラー処理が行われる(第2図ステップF35
、F34参照)。メモリ18内のユーザプログラム領域
へのユーザプログラムの書き込みが完了するとプログラ
ムロードフラグが1″にセットされ(第2図ステップF
B2.F33参照)、ユーザプログラムの書き替えが禁
止される。
なお、メモリ16が不揮発性のメモリであれば、プログ
ラムロードフラグは電源が切られた状態でもその値が保
持されることになる。
ラムロードフラグは電源が切られた状態でもその値が保
持されることになる。
次にユーザプログラム実行ルーチンが選択されると、(
第2図ステップF4,1参照)、まずプログラムロード
フラグが“1”にセットされているかどうかがCPU6
によってチェックされる(第2図ステップF42参照)
。プログラムロードフラグが“1#にセットされていな
ければエラー処理を行う(第2図ステップF48参照)
。
第2図ステップF4,1参照)、まずプログラムロード
フラグが“1”にセットされているかどうかがCPU6
によってチェックされる(第2図ステップF42参照)
。プログラムロードフラグが“1#にセットされていな
ければエラー処理を行う(第2図ステップF48参照)
。
プログラムロードフラグが“1”にセットされていれば
、CPU6からデータバス112を介して値が“1“の
データがフリップフロップ回路11のD端子に送られる
とともに、アドレスバスg1を介して特定のアドレス信
号がデコーダ回路7に送られる。するとデコーダ回路7
からトリガ信号が発生してフリップフロップ回路11が
トリガされ、フリップフロップ回路11のQ出力、すな
わちユーザプログラム実行フラグが“1”にセットされ
る(第2図ステップF43参照)。ユーザプログラム実
行フラグが“1”にセットされたことによりチェック回
路8及び10が動作してユーザプログラムが実行される
(ステップF44参照)。
、CPU6からデータバス112を介して値が“1“の
データがフリップフロップ回路11のD端子に送られる
とともに、アドレスバスg1を介して特定のアドレス信
号がデコーダ回路7に送られる。するとデコーダ回路7
からトリガ信号が発生してフリップフロップ回路11が
トリガされ、フリップフロップ回路11のQ出力、すな
わちユーザプログラム実行フラグが“1”にセットされ
る(第2図ステップF43参照)。ユーザプログラム実
行フラグが“1”にセットされたことによりチェック回
路8及び10が動作してユーザプログラムが実行される
(ステップF44参照)。
ユーザプログラムの実行中に、メモリ16内のアクセス
禁止領域にCPU6がアクセスしようとすると、チェッ
ク回路8からアクセス禁止信号がNOR回路12及び禁
止回路14に送られて、メモリ16への読み出し及び書
き込み等の制御信号であるRD’ 、WR’ 、CEが
意味なしくdisable)にされるとともに、CPU
6に割り込み指令信号に送り、その処理が行われる(第
2図ステップF45、F49、F48及び第5図参照)
。
禁止領域にCPU6がアクセスしようとすると、チェッ
ク回路8からアクセス禁止信号がNOR回路12及び禁
止回路14に送られて、メモリ16への読み出し及び書
き込み等の制御信号であるRD’ 、WR’ 、CEが
意味なしくdisable)にされるとともに、CPU
6に割り込み指令信号に送り、その処理が行われる(第
2図ステップF45、F49、F48及び第5図参照)
。
又、ユーザプログラムの実行中においては、命令データ
が実行の許される命令コード以外の命令コードであるか
どうかがチェック回路10によってチェックされ(第2
図ステップF46参照)、実行の許される命令コード以
外の命令コード、例えばメモリ16内のアクセス禁止領
域にアクセスするような命令コードの場合はチェック回
路10から禁止回路14に禁止信号を送って、メモリの
制御信号であるRD’ 、WR’ 、CE等を意味なし
くdisable)にするとともに、チェック回路10
からCPU6へ送るデータをNOP命令のような意味の
ない命令コードにする(第6図参照)。又同時にチェッ
ク回路10からNOR回路12を介してCPUに割り込
み信号を送り、その処理を行う(第2図ステップF49
、F48参照)。
が実行の許される命令コード以外の命令コードであるか
どうかがチェック回路10によってチェックされ(第2
図ステップF46参照)、実行の許される命令コード以
外の命令コード、例えばメモリ16内のアクセス禁止領
域にアクセスするような命令コードの場合はチェック回
路10から禁止回路14に禁止信号を送って、メモリの
制御信号であるRD’ 、WR’ 、CE等を意味なし
くdisable)にするとともに、チェック回路10
からCPU6へ送るデータをNOP命令のような意味の
ない命令コードにする(第6図参照)。又同時にチェッ
ク回路10からNOR回路12を介してCPUに割り込
み信号を送り、その処理を行う(第2図ステップF49
、F48参照)。
以上説明したように本実施例によれば、ユーザプログラ
ムに使用される命令コードがチェック回路10によって
自動的に制限されるとともに、メモリ16内のアクセス
禁止領域へのアクセスが禁止され、これによりプログラ
ム及びデータ等の破壊及び改ざんを可及的に防止するこ
とができる。
ムに使用される命令コードがチェック回路10によって
自動的に制限されるとともに、メモリ16内のアクセス
禁止領域へのアクセスが禁止され、これによりプログラ
ム及びデータ等の破壊及び改ざんを可及的に防止するこ
とができる。
本発明によれば、プログラム及びデータ等の破壊及び改
ざんを可及的に防止することができる。
ざんを可及的に防止することができる。
第1図は本発明の一実施例の構成を示すブロック図、第
2図は実施例の作用を説明するフローチャート、第3図
乃至第6図は本発明のマイクロコントローラの実施例の
作用を説明するタイミングチャートである。 1 a* 1 b+ I C・・・端子、2・・・
バッファ、4・・・電圧比較回路、6・・・CPU、7
・・・デコーダ回路、8.10・・・チェック回路、1
1・・−フリップフロップ回路、12・・・NOR回路
、14・・・禁止回路、16.18・・・メモリ。
2図は実施例の作用を説明するフローチャート、第3図
乃至第6図は本発明のマイクロコントローラの実施例の
作用を説明するタイミングチャートである。 1 a* 1 b+ I C・・・端子、2・・・
バッファ、4・・・電圧比較回路、6・・・CPU、7
・・・デコーダ回路、8.10・・・チェック回路、1
1・・−フリップフロップ回路、12・・・NOR回路
、14・・・禁止回路、16.18・・・メモリ。
Claims (1)
- 製造時に予めプログラムされる基本メインプログラム
を記憶する第1のメモリと、製造後ユーザによって作成
されるユーザプログラムを記憶する第2のメモリと、前
記第1及び第2のメモリにプログラムを書き込んだり、
前記第1及び第2のメモリに記憶されたプログラムを読
み込んだりすることを制御するCPUと、このCPUが
前記第2のメモリにユーザプログラムを書き込んだり、
前記第2のメモリに記憶されているユーザプログラムを
読み込んだりする時に、前記ユーザプログラムのプログ
ラムコードが適切なものであるかどうかをチェックし、
不適切なプログラムコードを排除するチェック手段とを
備えていることを特徴とするマイクロコントローラ。
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2077447A JPH03276337A (ja) | 1990-03-27 | 1990-03-27 | マイクロコントローラ |
| DE69130963T DE69130963T2 (de) | 1990-03-27 | 1991-03-27 | Mikrokontrollierer |
| EP91104882A EP0449255B1 (en) | 1990-03-27 | 1991-03-27 | Micro controller |
| KR1019910004738A KR930008040B1 (ko) | 1990-03-27 | 1991-03-27 | 마이크로 콘트롤러 |
| US08/237,416 US5500949A (en) | 1990-03-27 | 1994-05-03 | Microprocessor system for inhibiting access to memory by checking specific address and specific codes |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2077447A JPH03276337A (ja) | 1990-03-27 | 1990-03-27 | マイクロコントローラ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03276337A true JPH03276337A (ja) | 1991-12-06 |
Family
ID=13634277
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2077447A Pending JPH03276337A (ja) | 1990-03-27 | 1990-03-27 | マイクロコントローラ |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5500949A (ja) |
| EP (1) | EP0449255B1 (ja) |
| JP (1) | JPH03276337A (ja) |
| KR (1) | KR930008040B1 (ja) |
| DE (1) | DE69130963T2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005084721A (ja) * | 2003-09-04 | 2005-03-31 | Renesas Technology Corp | マイクロコンピュータ |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE4341887C2 (de) * | 1993-12-08 | 1996-12-19 | Siemens Ag | Verfahren zum Verhindern einer unberechtigten Datenänderung bei einer Vorrichtung mit einem nichtflüchtigen Speicher |
| DE19508723A1 (de) * | 1995-03-10 | 1996-09-12 | Siemens Ag | Mehrbenutzerdatenverarbeitungsanlage mit Speicherschutz |
| FR2743910B1 (fr) * | 1996-01-19 | 1998-02-27 | Solaic Sa | Procede de mise en oeuvre d'un programme securise dans une carte a microprocesseur et carte a microprocesseur comportant un programme securise |
| US5778199A (en) * | 1996-04-26 | 1998-07-07 | Compaq Computer Corporation | Blocking address enable signal from a device on a bus |
| SE511426C2 (sv) | 1996-10-28 | 1999-09-27 | Ericsson Telefon Ab L M | Anordning och förfarande vid avskärmning av elektronik |
| US5754762A (en) * | 1997-01-13 | 1998-05-19 | Kuo; Chih-Cheng | Secure multiple application IC card using interrupt instruction issued by operating system or application program to control operation flag that determines the operational mode of bi-modal CPU |
| US6493407B1 (en) * | 1997-05-27 | 2002-12-10 | Fusion Micromedia Corporation | Synchronous latching bus arrangement for interfacing discrete and/or integrated modules in a digital system and associated method |
| US5983303A (en) * | 1997-05-27 | 1999-11-09 | Fusion Micromedia Corporation | Bus arrangements for interconnection of discrete and/or integrated modules in a digital system and associated method |
| US6049876A (en) * | 1998-02-09 | 2000-04-11 | Motorola, Inc. | Data processing system and method which detect unauthorized memory accesses |
| DE19835609C2 (de) * | 1998-08-06 | 2000-06-08 | Siemens Ag | Programmgesteuerte Einheit |
| FR2790324B1 (fr) * | 1999-02-25 | 2001-12-28 | St Microelectronics Sa | Dispositif d'acces securise a des applications d'une carte a puce |
| US6292874B1 (en) * | 1999-10-19 | 2001-09-18 | Advanced Technology Materials, Inc. | Memory management method and apparatus for partitioning homogeneous memory and restricting access of installed applications to predetermined memory ranges |
| ATE488815T1 (de) * | 2001-06-04 | 2010-12-15 | Renesas Electronics Corp | Speicherkarte |
| EP1593098B2 (en) † | 2003-01-31 | 2010-09-15 | Panasonic Corporation | Semiconductor memory card, and program for controlling the same |
| US7164611B2 (en) * | 2004-10-26 | 2007-01-16 | Micron Technology, Inc. | Data retention kill function |
| US20110167496A1 (en) * | 2009-07-07 | 2011-07-07 | Kuity Corp. | Enhanced hardware command filter matrix integrated circuit |
| TWI517681B (zh) * | 2013-06-19 | 2016-01-11 | 晨星半導體股份有限公司 | 應用於數位音視頻編解碼技術標準系統之解碼方法及解碼裝置 |
| CN103530555B (zh) * | 2013-10-31 | 2016-09-07 | 浙江云巢科技有限公司 | 防止程序执行恶意操作的方法和装置 |
| CN111966523B (zh) * | 2020-08-07 | 2023-01-06 | 苏州浪潮智能科技有限公司 | 一种管理电器参数的方法、系统、设备以及介质 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58141500A (ja) * | 1982-02-17 | 1983-08-22 | Ricoh Co Ltd | メモリ管理保護方式 |
Family Cites Families (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3659275A (en) * | 1970-06-08 | 1972-04-25 | Cogar Corp | Memory correction redundancy system |
| US3827029A (en) * | 1972-09-25 | 1974-07-30 | Westinghouse Electric Corp | Memory and program protection system for a digital computer system |
| US4087856A (en) * | 1976-06-30 | 1978-05-02 | International Business Machines Corporation | Location dependence for assuring the security of system-control operations |
| US4118789A (en) * | 1977-06-06 | 1978-10-03 | Allen-Bradley Company | Program protection module for programmable controller |
| JPS56140452A (en) * | 1980-04-01 | 1981-11-02 | Hitachi Ltd | Memory protection system |
| NL8201847A (nl) * | 1982-05-06 | 1983-12-01 | Philips Nv | Inrichting voor het beschermen tegen onbevoegd uitlezen van in een geheugen te memoriseren programmawoorden. |
| US4590552A (en) * | 1982-06-30 | 1986-05-20 | Texas Instruments Incorporated | Security bit for designating the security status of information stored in a nonvolatile memory |
| EP0109504A3 (en) * | 1982-11-18 | 1987-03-25 | International Business Machines Corporation | Protection system for storage and input/output facilities and the like |
| US4646234A (en) * | 1984-02-29 | 1987-02-24 | Brigham Young University | Anti-piracy system using separate storage and alternate execution of selected proprietary and public portions of computer programs |
| US4628479A (en) * | 1984-08-30 | 1986-12-09 | Zenith Electronics Corporation | Terminal with memory write protection |
| US4654847A (en) * | 1984-12-28 | 1987-03-31 | International Business Machines | Apparatus for automatically correcting erroneous data and for storing the corrected data in a common pool alternate memory array |
| US4685056A (en) * | 1985-06-11 | 1987-08-04 | Pueblo Technologies, Inc. | Computer security device |
| JPS6382534A (ja) * | 1986-09-26 | 1988-04-13 | Matsushita Electric Ind Co Ltd | メモリ保護装置 |
| US5189610A (en) * | 1986-10-20 | 1993-02-23 | Xerox Corporation | Electronic dictionary with correct and incorrect words |
| JP2514954B2 (ja) * | 1987-03-13 | 1996-07-10 | 三菱電機株式会社 | Icカ−ド |
| US5134700A (en) * | 1987-09-18 | 1992-07-28 | General Instrument Corporation | Microcomputer with internal ram security during external program mode |
| JPH01219982A (ja) * | 1988-02-29 | 1989-09-01 | Hitachi Maxell Ltd | Icカード |
| US5014191A (en) * | 1988-05-02 | 1991-05-07 | Padgaonkar Ajay J | Security for digital signal processor program memory |
| JPH0752388B2 (ja) * | 1988-08-03 | 1995-06-05 | 三菱電機株式会社 | Icメモリカード |
| JPH0812646B2 (ja) * | 1989-03-03 | 1996-02-07 | 三菱電機株式会社 | 半導体集積回路 |
| US5022077A (en) * | 1989-08-25 | 1991-06-04 | International Business Machines Corp. | Apparatus and method for preventing unauthorized access to BIOS in a personal computer system |
-
1990
- 1990-03-27 JP JP2077447A patent/JPH03276337A/ja active Pending
-
1991
- 1991-03-27 EP EP91104882A patent/EP0449255B1/en not_active Expired - Lifetime
- 1991-03-27 DE DE69130963T patent/DE69130963T2/de not_active Expired - Fee Related
- 1991-03-27 KR KR1019910004738A patent/KR930008040B1/ko not_active Expired - Fee Related
-
1994
- 1994-05-03 US US08/237,416 patent/US5500949A/en not_active Expired - Lifetime
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58141500A (ja) * | 1982-02-17 | 1983-08-22 | Ricoh Co Ltd | メモリ管理保護方式 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005084721A (ja) * | 2003-09-04 | 2005-03-31 | Renesas Technology Corp | マイクロコンピュータ |
Also Published As
| Publication number | Publication date |
|---|---|
| KR910017293A (ko) | 1991-11-05 |
| DE69130963D1 (de) | 1999-04-15 |
| KR930008040B1 (ko) | 1993-08-25 |
| EP0449255B1 (en) | 1999-03-10 |
| EP0449255A2 (en) | 1991-10-02 |
| DE69130963T2 (de) | 1999-08-05 |
| US5500949A (en) | 1996-03-19 |
| EP0449255A3 (en) | 1994-10-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH03276337A (ja) | マイクロコントローラ | |
| US6453417B1 (en) | Microcontroller with secure signature extraction | |
| US6587916B2 (en) | Microcomputer with built-in programmable nonvolatile memory | |
| JPH07200413A (ja) | マイクロコンピュータ | |
| JPH05324951A (ja) | 内部プログラムを実行することが可能なマイクロコンピュータ用pcカード | |
| US20060090053A1 (en) | Program-controlled unit | |
| JP3197865B2 (ja) | マイクロコンピュータ | |
| JPS61278951A (ja) | 記憶情報保護回路 | |
| KR100525537B1 (ko) | 인터럽트를 이용한 응용 프로그램의 에러검출장치 및 방법. | |
| US20190212930A1 (en) | Data storage chip and data access method | |
| US20100312978A1 (en) | Computer system, information protection method, and program | |
| JPH01232452A (ja) | ワンチッププロセッサ | |
| JP3918089B2 (ja) | メモリ保護回路 | |
| JPS63279341A (ja) | メモリ集積回路 | |
| JPH02128266A (ja) | 保護機能付レジスタ | |
| JPS6234262A (ja) | 不揮発性メモリアクセス方式 | |
| KR940006823B1 (ko) | 메모리 라이트 보호회로 | |
| JPS63650A (ja) | 半導体メモリ | |
| JPH05173887A (ja) | 記憶装置 | |
| JP3824295B2 (ja) | 不揮発性半導体記憶装置 | |
| JPH081606B2 (ja) | シングルチップマイクロコンピュータ | |
| JPH08185360A (ja) | 内蔵rom読み出し禁止装置 | |
| JPH0778126A (ja) | Icカード用のマイクロコンピュータ | |
| JPS6117474Y2 (ja) | ||
| JPH01261760A (ja) | コンピュータ装置 |