JPH11232092A - マイクロプロセッサ用制御装置 - Google Patents

マイクロプロセッサ用制御装置

Info

Publication number
JPH11232092A
JPH11232092A JP10046255A JP4625598A JPH11232092A JP H11232092 A JPH11232092 A JP H11232092A JP 10046255 A JP10046255 A JP 10046255A JP 4625598 A JP4625598 A JP 4625598A JP H11232092 A JPH11232092 A JP H11232092A
Authority
JP
Japan
Prior art keywords
data
program data
bit
pseudo
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.)
Pending
Application number
JP10046255A
Other languages
English (en)
Inventor
Koyo Yamakoshi
公洋 山越
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP10046255A priority Critical patent/JPH11232092A/ja
Publication of JPH11232092A publication Critical patent/JPH11232092A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 マイクロプロセッサ用制御装置におけるプロ
グラムデータの不正使用を防止することができるマイク
ロプロセッサ用制御装置を提供することを目的とするも
のである。 【解決手段】 正しいプログラムデータにおけるランダ
ムな位置に疑似データが挿入されている改変プログラム
データをプログラムデータメモリが蓄積し、改変プログ
ラムデータの1つの語における何ビット目が疑似データ
であるかを示す疑似データビット情報を疑似データメモ
リが蓄積し、疑似データメモリからロードした疑似デー
タビット情報に基づいて、プログラムデータメモリから
ロードした改変プログラムデータを、デコーダが正しい
命令コードまたはデータに解読する装置である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラムの不正
使用を防止するマイクロプロセッサ用制御装置に関す
る。
【0002】
【従来の技術】従来のマイクロプロセッサ用制御装置
は、プログラムデータをメモリ装置に予め蓄え、このメ
モリ装置のアドレスを指定することによって、命令コー
ドを読み出し、この読み出された命令コードをデコーダ
が解読し、所定のマイクロ命令を取り出すものである。
【0003】
【発明が解決しようとする課題】上記従来装置におい
て、上記メモリ装置に蓄えられているプログラムデータ
をコピーし、このコピーされたプログラムデータを、別
のマイクロプロセッサ用制御装置のメモリ装置にロード
することによって、元の条件と同一の条件でマイクロプ
ロセッサを動作させることが可能であり、また、この場
合、元の条件と同一の条件でマイクロプロセッサを容易
に動作させることができる。
【0004】したがって、上記従来例においては、マイ
クロプロセッサ用制御装置におけるプログラムの不正使
用を防止することができないという問題がある。
【0005】本発明は、マイクロプロセッサ用制御装置
におけるプログラムデータの不正使用を防止することが
できるマイクロプロセッサ用制御装置を提供することを
目的とするものである。
【0006】
【課題を解決するための手段】本発明は、正しいプログ
ラムデータにおけるランダムな位置に疑似データが挿入
されている改変プログラムデータをプログラムデータメ
モリが蓄積し、改変プログラムデータの1つの語におけ
る何ビット目が上記疑似データであるかを示す疑似デー
タビット情報を疑似データメモリが蓄積し、疑似データ
メモリからロードした疑似データビット情報に基づい
て、プログラムデータメモリからロードした改変プログ
ラムデータを、デコーダが正しい命令コードまたはデー
タに解読するマイクロプロセッサ用制御装置である。
【0007】
【発明の実施の形態および実施例】図1は、本発明の一
実施例であるマイクロプロセッサ用制御装置100を示
すブロック図である。
【0008】マイクロプロセッサ用制御装置100は、
アドレスレジスタ10と、疑似データメモリ20と、バ
ッファレジスタ21と、プログラムデータメモリ30
と、バッファレジスタ31と、デコーダ40とを有す
る。
【0009】アドレスレジスタ10は、メモリ20、3
0から読み出すデータのアドレスを蓄積するレジスタで
ある。
【0010】プログラムデータメモリ30は、正しいプ
ログラムデータにおけるランダムな位置に疑似データが
挿入されている改変プログラムデータを蓄積するメモリ
である。バッファレジスタ31は、プログラムデータメ
モリ30からロードされた改変プログラムデータを蓄積
するレジスタである。
【0011】疑似データメモリ20は、改変プログラム
データの1つの語における何ビット目が疑似データであ
るかを示す疑似データビット情報をアドレス毎に蓄積す
るメモリである。バッファレジスタ21は、疑似データ
メモリ20からロードされた疑似データビット情報を蓄
積するレジスタである。
【0012】デコーダ40は、疑似データメモリ20か
らロードした疑似データビット情報に基づいて、プログ
ラムデータメモリ30からロードした改変プログラムデ
ータを、正しい命令コードまたはデータに解読するデコ
ーダである。
【0013】図2は、上記実施例において、プログラム
データメモリ30に蓄積されている改変プログラムデー
タに疑似データが挿入されている例を示す図である。
【0014】図2に示す例において、改変プログラムデ
ータ中の各アドレスで指定される各語に疑似データが挿
入され、つまり、1ビットの疑似データが、1語中の任
意のビットに、ランダムに挿入されている。すなわち、
プログラムデータメモリ30には、語W1、W2、W
3、……が蓄積され、語W1には、ビットn−1に疑似
データが挿入され、語W2には、ビットnに疑似データ
が挿入され、語W3には、ビット0に疑似データが挿入
されている。
【0015】図3は、上記実施例におけるデコーダ40
の具体例を、バッファレジスタ21、31との関係で示
すブロック図である。
【0016】デコーダ40は、4ビットの正しいプログ
ラムデータに1ビットの疑似データが挿入されている5
ビットの改変プログラムデータを解読する例であり、デ
ータ長情報レジスタ41と、加算器42と、加算器用レ
ジスタ43と、2入力のマルチプレクサ44、45、4
6、47と、デコード部48とを有する。
【0017】データ長情報レジスタ41は、正しいプロ
グラムデータのデータ長を示すデータ長情報を蓄積する
レジスタであり、データ長情報は、1つの「0」+正し
いプログラムにおける1語のビット長と同じ数の「1」
によって構成される情報である。上記実施例において、
正しいプログラムにおける1語のビット長は4ビットで
あるので、このデータ長情報は、「01111」であ
る。
【0018】加算器42は、バッファレジスタ21に蓄
積されている疑似データビット情報とデータ長情報レジ
スタに蓄積されているデータ長情報「01111」とを
加算する加算器である。加算器用レジスタ43は、加算
器42で加算された結果を蓄積するレジスタである。
【0019】2入力のマルチプレクサ44、45、4
6、47は、それぞれ、加算器用レジスタ43に蓄積さ
れているビット3、ビット2、ビット1、ビット0に応
じて、バッファレジスタ31に蓄積されている改変プロ
グラムデータ中のビットを選択するものである。つま
り、マルチプレクサ44は、改変プログラムデータのビ
ット4、ビット3を入力し、加算器用レジスタ43に蓄
積されているビット3が「0」であれば、上位のビット
(ビット4)を選択し、「1」であれば、下位のビット
(ビット3)を選択する。マルチプレクサ45は、改変
プログラムデータのビット3、ビット2を入力し、加算
器用レジスタ43に蓄積されているビット2が「0」で
あれば、上位のビット(ビット3)を選択し、「1」で
あれば、下位のビット(ビット2)を選択する。マルチ
プレクサ46、47も、上記マルチプレクサ44、45
と同様のものである。
【0020】デコード部48は、マルチプレクサ44〜
47によって得られた正しいプログラムデータを解読
し、正しい命令、データを出力するものである。
【0021】次に、上記実施例の動作について説明す
る。
【0022】図3に示す例において、バッファレジスタ
31からロードした改変プログラムデータのビット3に
疑似データが挿入され、これに呼応して、バッファレジ
スタ21に蓄積されている疑似データビット情報のビッ
ト3は、疑似データが存在していることを示す「1」で
あり、バッファレジスタ21に蓄積されている疑似デー
タビット情報のビット4、2、1、0は、疑似データが
存在していないことを示す「0」である。
【0023】ここで、マルチプレクサ44は、バッファ
43からそのビット3の情報「0」を選択信号として入
力し、その選択信号が「0」であるので、入力している
改変プログラムデータのビット4、ビット3のうちの、
上位ビットであるビット4を出力する。マルチプレクサ
45は、バッファ43からそのビット2の情報「1」を
選択信号として入力し、その選択信号が「1」であるの
で、入力している改変プログラムデータのビット3、ビ
ット2のうちの、下位ビットであるビット2を出力す
る。マルチプレクサ46は、バッファ43からそのビッ
ト1の情報「1」を選択信号として入力し、その選択信
号が「1」であるので、入力している改変プログラムデ
ータのビット2、ビット1のうちの、下位ビットである
ビット1を出力する。マルチプレクサ47は、バッファ
43からそのビット0の情報「1」を選択信号として入
力し、その選択信号が「1」であるので、入力している
改変プログラムデータのビット1、ビット0のうちの、
下位ビットであるビット0を出力する。
【0024】つまり、マルチプレクサ44〜47によっ
て、改変プログラムデータのビット4、2、1、0が出
力され、疑似データであるビット3が除去される。
【0025】そして、アドレスが変われば、バッファレ
ジスタ31に蓄積される改変プログラムデータが代わ
り、これに応じて、バッファレジスタ21に蓄積される
疑似データビット情報が代わり、上記と同様に、改変プ
ログラムデータから疑似データが除去される。
【0026】上記のようにすれば、アドレス毎にランダ
ムに疑似データが挿入されている改変プログラムデータ
から、正しい命令コード、データを解読することができ
る。そして、上記実施例において、プログラムデータの
疑似データビット情報として正しい疑似データビット情
報を用いない限り、改変プログラムデータを正しいプロ
グラムデータに変換することができず、したがって、命
令コード、データを正しく解読できず、通常は、プログ
ラムデータの疑似データビット情報として正しい疑似デ
ータビット情報を得ることができないので、マイクロプ
ロセッサ用制御装置におけるプログラムデータの不正使
用を防止することができる。
【0027】上記実施例において、正しいプログラムデ
ータの複数の語について1つの疑似データを挿入するよ
うにしてもよい。なお、1つのアドレスに対応するプロ
グラムデータの1つの語毎に、疑似データを挿入すれ
ば、第三者によるプログラムデータの解読がより困難に
なる。
【0028】また、正しいプログラムデータの1つの語
について、疑似データを1つ挿入するようにしてもよ
く、正しいプログラムデータの1つの語について、疑似
データを複数挿入するようにしてもよい。
【0029】
【発明の効果】本発明によれば、改変プログラムデータ
に関する疑似データビット情報として正しい疑似データ
ビット情報を用いない限り、命令コード、データを正し
く解読できないので、マイクロプロセッサ用制御装置に
おけるプログラムデータの不正使用を防止することがで
きるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施例であるマイクロプロセッサ用
制御装置100を示すブロック図である。
【図2】上記実施例において、プログラムデータメモリ
30に蓄積されている改変プログラムデータに疑似デー
タが挿入されている例を示す図である。
【図3】上記実施例におけるデコーダ40の具体例を、
バッファレジスタ21、31との関係で示すブロック図
である。
【符号の説明】
100…マイクロプロセッサ用制御装置、 10…アドレスレジスタ、 20…疑似データメモリ、 30…プログラムデータメモリ、 40…デコーダ。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 正しいプログラムデータにおけるランダ
    ムな位置に疑似データが挿入されている改変プログラム
    データを蓄積するプログラムデータメモリと;上記改変
    プログラムデータの1つの語における何ビット目が上記
    疑似データであるかを示す疑似データビット情報を蓄積
    する疑似データメモリと;上記疑似データメモリからロ
    ードした上記疑似データビット情報に基づいて、上記プ
    ログラムデータメモリからロードした上記改変プログラ
    ムデータを、正しい命令コードまたはデータに解読する
    デコーダと;を有することを特徴とするマイクロプロセ
    ッサ用制御装置。
  2. 【請求項2】 請求項1において、上記改変プログラム
    データは、1つのアドレスに対応する改変プログラムデ
    ータの1つの語毎に、上記疑似データが挿入されている
    プログラムデータであることを特徴とするマイクロプロ
    セッサ用制御装置。
  3. 【請求項3】 請求項1において、上記改変プログラム
    データは、1つのアドレスに対応する改変プログラムデ
    ータの1つの語に、上記疑似データが1つまたは複数挿
    入されているプログラムデータであることを特徴とする
    マイクロプロセッサ用制御装置。
JP10046255A 1998-02-12 1998-02-12 マイクロプロセッサ用制御装置 Pending JPH11232092A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10046255A JPH11232092A (ja) 1998-02-12 1998-02-12 マイクロプロセッサ用制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10046255A JPH11232092A (ja) 1998-02-12 1998-02-12 マイクロプロセッサ用制御装置

Publications (1)

Publication Number Publication Date
JPH11232092A true JPH11232092A (ja) 1999-08-27

Family

ID=12742089

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10046255A Pending JPH11232092A (ja) 1998-02-12 1998-02-12 マイクロプロセッサ用制御装置

Country Status (1)

Country Link
JP (1) JPH11232092A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002057905A1 (de) * 2001-01-17 2002-07-25 Infineon Technologies Ag Verfahren zur erhöhung der sicherheit einer cpu

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002057905A1 (de) * 2001-01-17 2002-07-25 Infineon Technologies Ag Verfahren zur erhöhung der sicherheit einer cpu

Similar Documents

Publication Publication Date Title
US5214697A (en) Program execution apparatus for ensuring security of a program
EP0083209B1 (en) A microcomputer for processing instructions of different types
US5802541A (en) Method and apparatus in a data processing system for using chip selects to perform a memory management function
JP2003510682A5 (ja)
JPH0156413B2 (ja)
KR960008543A (ko) 프로그램 가능한 메모리 억세스 인터페이스형을 갖는 집적 회로 마이크로 프로세서와 이에 관련된 방법
JP4574994B2 (ja) メモリ外付けマイコン
JP3153155B2 (ja) 半導体メモリ
JPH03171231A (ja) マイクロコンピュータシステム
JPH11232092A (ja) マイクロプロセッサ用制御装置
JP3464738B2 (ja) コピー防止機能付きrom
US20050172108A1 (en) Device and method of switching registers to be accessed by changing operating modes in a processor
JP2624249B2 (ja) 模倣防止機能付プロセッサ
JPH0475137A (ja) データ処理装置
JPH07182304A (ja) マイクロコンピュータ及びその製造方法
JP2689894B2 (ja) マイクロプログラム制御型情報処理装置
KR100468615B1 (ko) 내부 프로그램 코드 보호 장치
JP2001184209A (ja) 命令コード復号装置及びその復号方法
JPH05143366A (ja) 割込制御回路
JPH04319729A (ja) マイクロコンピュータ
JPH09282234A (ja) コピー防止機能付rom
JPH06124204A (ja) メモリの読出しアドレス決定回路
JPH05233270A (ja) マイクロプロセッサ
JP2009223611A (ja) 情報処理装置、情報処理方法、ならびに、プログラム
JPH05173835A (ja) トレース回路