JPS63266533A - デ−タ処理装置 - Google Patents

デ−タ処理装置

Info

Publication number
JPS63266533A
JPS63266533A JP62099793A JP9979387A JPS63266533A JP S63266533 A JPS63266533 A JP S63266533A JP 62099793 A JP62099793 A JP 62099793A JP 9979387 A JP9979387 A JP 9979387A JP S63266533 A JPS63266533 A JP S63266533A
Authority
JP
Japan
Prior art keywords
instruction
register
code
program
user
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
JP62099793A
Other languages
English (en)
Inventor
Shuichi Ishii
修一 石井
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62099793A priority Critical patent/JPS63266533A/ja
Publication of JPS63266533A publication Critical patent/JPS63266533A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、データ処理技術さらにはマイクロコンピュ
ータシステムにおけるプログラムの機密保護に適用して
特に有効な技術に関し、例えばマイクロプロセッサの命
令解読部に利用して有効な技術に関する。
[従来の技術] 従来のマイクロプロセッサは、ROM (リード・オン
リ・メモリ)のような外部メモリに格納されたプログラ
ムの命令を順次読み出してきて、それをそのまま内部の
命令レジスタに取り込む。そして、取り込んだ命令を命
令デコーダで解読したり、命令コードに対応したマイク
ロアドレスを形成してマイクロプログラムの入ったRO
Mをアクセスして制御語を読み出して制御信号を形成し
、実行ユニットを動作させて命令を実行する方式が一般
的であった([株コ朝倉書店、1981年6月30日発
行、「集積回路応用ハンドブック]第4゜5頁〜第44
9頁参照)。
[発明が解決しようとする問題点] シングルチップマイコンのように、プログラムを格納す
るメモリがプロセッサと同一のチップ上に内蔵されてい
るものにあっては、チップ外部への命令コードの読出し
を禁止することで秘密の保護を図ることができる。とこ
ろが、内部にプログラム用のメモリを有しないマイクロ
プロセッサにあっては、外部のROMに格納されている
プログラムが容易に盗用されてしまい、秘密の保護が図
れない。また、プログラム自身が盗用されなかったとし
ても、所望のプログラムの入ったROMと差し換えるだ
けでシステムが動作されてしまう。
そのため、多大の費用と時間をかけて開発したシステム
の模倣を簡単に許してしまうという問題点があった。
この発明の目的は、マイクロプロセッサの汎用性を損な
うことなく、プログラムの盗用を防止して、ソフトウェ
アの機密保護を図ることにある。
この発明の前記ならびにそのほかの目的と新規な特徴に
ついては、本明細書の記述および添附図面から明らかに
なるであろう。
[問題点を解決するための手段] 本願において開示される発明のうち代表的なものの概要
を説明すれば、下記のとおりである。
すなわち、外部のメモリから読み出された命令コードを
取り込んで保持するマイクロプロセッサ内の命令レジス
タの前段に命令コードの変換手段を設け、かつこのコー
ド変換手段をプログラム可能な構成にしておき、ユーザ
ごとにコード変換方式を変更できるようにするものであ
る。
[作用] 上記した手段によれば、命令レジスタに入る最終的な命
令コードが同一になるようにするには、外部メモリに格
納されるマクロプログラムを構成する命令コードをコー
ド変換方式ごとに、つまりユーザごとに異なるようにし
ておくことが必要になる。これによって、単にプログラ
ムを盗用したりROMを差し換えてもマイクロプロセッ
サ内のコード変換方式とのマツチングがない限り、正し
い命令が実行されなくなって、プログラムの盗用を防止
して、ソフトウェアの機密保護を図るという上記目的を
達成することができる。
[実施例] 以下、本発明をマイクロプロセッサに適用した場合の一
実施例を説明する。
マイクロプロセッサ1内には、外部データバス2を介し
て、ROMのようなプログラムが格納されたメモリから
読み出された命令コードを取り込んで保持する命令レジ
スタ3と、この命令レジスタ3に取り込まれた命令コー
ドを解読して適用な制御信号を形成する制御部4とを有
している。制御部4から出力される制御信号によって各
種汎用レジスタや演算論理ユニット、アキュームレータ
等の専用レジスタからなる実行ユニット5が動作され、
対応する命令が実行される。上記制御部4は、ランダム
ロジック回路または命令コードに対応したマイクロ命令
群からなるマイクロプログラムが格納されたROM (
マイクロプログラムROM)により構成される。
この実施例では、上記命令レジスタ3の前段に、例えば
1命令語長のレジスタ6aと演算器6bとからなる命令
コード変換手段6が設けられている。
そして、上記したレジスタ6aには、命令実行の前に、
予めキーとなるコードが格納されており、上記レジスタ
6a内のキーコードは、データバス2を介して外部より
取り込まれた命令コードとともに、演算器6bに供給さ
れる。演算器6bでは、供給された2つのコード(キー
コードおよび命令コード)に対して排他的論理和のよう
論理演算または、加算、減算等の演算を施し、その結果
を前記命令レジスタ3に格納するようになっている。
ここで、制御部4のハードウェアもしくはマイクロプロ
グラムが、同種のすべてのマイクロプロセッサにおいて
共通であるとすると、命令レジスタ3に入る最終的な命
令コードは上記レジスタ6a内のキーコードにかかわら
ずすべて同一であることを要する。
そこで、この実施例のマイクロプロセッサを使用したシ
ステムでは、命令レジスタ3に入る本来の命令コードに
対して演算器6bで実行される演算と相反する演算を施
したコードを用いて作製したプログラムを、外部のRO
M内に入れておくことにより所望の命令を実行させるよ
うになっている。これによって、上記レジスタ6aに格
納されるキーコードをユーザごとに変えることにより、
ユーザごとに異なる命令コードを使ったプログラムの作
製が可能になり、キーコードさえ秘密にしておけばユー
ザプログラムの機密保護が図れる。
上記レジスタ6aとしては1例えばEPROM素子もし
くはE E P ROM素子あるいはF ROM素子の
ようなプログラム可能な不揮発性素子を使用した不揮発
性のレジスタが最も妥当である。メーカにおいて上記レ
ジスタ6aにキーコードを書き込んでマイクロプロセッ
サをユーザに渡す場合には、キーコードもしくはコード
変換表を付けて渡すことにより、ユーザ側において、正
しくコード変換されるプログラムを作製することができ
る。
また、メーカに対してもプログラムの機密を保護したい
と望むユーザに対しては、演算器6bにおける演算の種
類のみを与え、キーコードの選択およびレジスタ6aへ
のキーコードの書込みをユーザに委ねることによって、
より信頼性の高い機密保護が可能となる。
また、制御部4が書替え可能なEFROMで構成されて
いるような場合には、マイクロプログラムROM内にキ
ーワードを入れておいてレジスタ6aとしては揮発性レ
ジスタを使用し、システムの立上り時等にマイクロプロ
グラムROM内のキーコードをレジスタ6aに入れるよ
うに構成してもよい。要するに、上記実施例ではキーコ
ードがマイクロプロセッサチップ外部に洩れないように
なっていればよい。
さらに、第1図の実施例において、プログラム可能なレ
ジスタ6aの代わりもしくはレジスタ6aとともに、演
算器6bとして複数種類の演算が可能な演算器を使用し
、かつ演算器6bにおける演算を指定するためのレジス
タを設け、ユーザごとに命令コード変換時の演算の種類
を変えるようにしてもよい。この方法をキーコードと併
用した場合には、更に確実な機密保護が可能となる。
第2図には1本発明の他の実施例が示されている。
この実施例のマイクロプロセッサでは、命令コード変換
回路6と命令レジスタ3との間に複数個の命令コードが
格納可能なファーストイン・ファーストアウト方式のキ
ャッシュメモリ7が設けられている。他の構成は第1の
実施例と同様である。
この実施例のマイクロプロセッサにおいては、命令レジ
スタ3内に取り込まれた命令を解読して実行している間
に、その命令に続く次の命令コードを外部のメモリから
読み出して命令コード変換回路6によりコード変換し、
それをキャッシュレジスタ7に貯えておく。このように
することにより、コード変換に要する時間が無視できる
ようになり命令コード変換回路6を有しない従来のマイ
クロプロセッサとほぼ同等の命令実行速度を得ることが
できる。
上記実施例では、命令コード変換回路6が、キーコード
の入るレジスタ6aと演算器6bとで構成されていると
説明したが、それに限定されるものではない。例えば、
命令コード変換回路としてPLA (プログラマブル・
ロジック・アレイ)やプログラム可能なROMを用いて
構成することもできる。
また、命令コード変換手段を、複数の信号経路とその信
号経路の切換えを行なうスイッチ回路と、そのスイッチ
による信号経路の切換えを指定するレジスタとで構成し
、外部のメモリから読み出された命令コードのビット配
列を変換して命令レジスタに供給するようにしてもよい
。さらに、その場合、信号経路の切換えにスイッチを用
いる代わりにマスタスライス法による配線形成時に命令
コードのビット配列を変更して伝送するような信号線を
形成するようにしてもよい。
以上説明したように上記実施例においては、外部のメモ
リから読み出された命令コードを取り込んで保持するマ
イクロプロセッサ内の命令レジスタの前段に命令コード
の変換手段を設け、かつこのコード変換手段をプログラ
ム可能な構成にしておき、ユーザごとにコード変換方式
を変更できるようにしたので、外部メモリに格納される
マクロプログラムを構成する命令コードはコード変換方
式ごとに、つまりユーザごとに異ならしめることができ
るという作用により、単にプログラムを盗用したりRO
Mを差し換えてもマイクロプロセッサ内のコード変換方
式とのマツチングがない限り、正しい命令が実行されな
いようにすることができ。
これによって、プログラムの盗用を防止して、ソフトウ
ェアの機密保護を図ることができるようになるという効
果がある。
しかも、命令コード変換回路を不揮発性記憶素子を用い
てプログラム可能な構成にしたので、命令レジスタ以降
のハードウェアはすべて共通にできるとともに、ユーザ
ごとに簡単にコード変換方式を変更できるという作用に
より、マイクロプロセッサの汎用を損なうことがない。
さらに、命令コード変換手段と、上記命令レジスタとの
間には、コード変換後の命令コードを複数個保持可能な
ファーストイン・ファーストアウト方式のキャッシュレ
ジスタを設けるようにしたので、ある命令の実行中に次
の命令のコード変換を並行して行なえるという作用によ
り、命令実行速度を低下させることなく、プログラムの
盗用を防止して、ソフトウェアの機密保護を図ることが
できるという効果がある。
以上本発明者によってなされた発明を実施例に基づき具
体的に説明したが、本発明は上記実施例に限定されるも
のではなく、その要旨を逸脱しない範囲で種々変更可能
であることはいうまでもない。
以上の説明では主として本発明者によってなされた発明
をその背景となった利用分野であるマイクロプロセッサ
に適用したものについて説明したが、この発明はそれに
限定されるものでなく、外部拡張可能なシングルチップ
マイコンその他命令を取り込んで実行するデータ処理装
置一般に利用することができる。
[発明の効果コ 本願において開示される発明のうち代表的なものによっ
て得られる効果を簡単に説明すれば下記のとおりである
すなわち、ユーザごとにコード変換方式を変更できるよ
うにしたので、命令コードのカムタム化が可能となり、
マイクロプロセッサの汎用性を損なうことなく、プログ
ラムの盗用を防止して、ソフトウェアの機密保護を図る
ことができる。
【図面の簡単な説明】
第1図は、本発明に係るマイクロプロセッサの一実施例
を示すブロック図、 第2図は、本発明に係るマイクロプロセッサの他の実施
例を示す要部のブロック図である。 1・・・・マイクロプロセッサ、2・・・・外部データ
バス、3・・・・命令レジスタ、4・・・・制御部、5
・・・・実行ユニット、6・・・・命令コード変換手段
。 6a・・・・レジスタ、6b・・・・演算器、7・・・
・キャッシュレジスタ。

Claims (1)

  1. 【特許請求の範囲】 1、外部のメモリから読み出された命令コードを取り込
    んで保持する命令レジスタの前段に、プログラム可能な
    命令コード変換手段が設けられ、コード変換後の命令コ
    ードが上記命令レジスタに取り込まれるようにされてな
    ることを特徴とするデータ処理装置。 2、上記命令コード変換手段は、キーとなるコードが格
    納されるレジスタと、このレジスタに格納されたキーコ
    ードと外部のメモリから読み出された命令コードとの演
    算を行なう演算手段とにより構成されてなることを特徴
    と特許請求の範囲第1項記載のデータ処理装置。 3、上記レジスタは、不揮発性記憶素子群により構成さ
    れてなることを特徴とする特許請求の範囲第2項記載の
    データ処理装置。 4、上記命令コード変換手段と、上記命令レジスタとの
    間には、コード変換後の命令コードを複数個保持可能な
    ファーストイン・ファーストアウト方式のキャッシュレ
    ジスタが設けられてなることを特徴とする特許請求の範
    囲第1項、第2項および第3項記載のデータ処理装置。
JP62099793A 1987-04-24 1987-04-24 デ−タ処理装置 Pending JPS63266533A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62099793A JPS63266533A (ja) 1987-04-24 1987-04-24 デ−タ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62099793A JPS63266533A (ja) 1987-04-24 1987-04-24 デ−タ処理装置

Publications (1)

Publication Number Publication Date
JPS63266533A true JPS63266533A (ja) 1988-11-02

Family

ID=14256797

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62099793A Pending JPS63266533A (ja) 1987-04-24 1987-04-24 デ−タ処理装置

Country Status (1)

Country Link
JP (1) JPS63266533A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04149652A (ja) * 1990-10-09 1992-05-22 Mitsubishi Electric Corp マイクロコンピュータ
JPH07295893A (ja) * 1994-04-28 1995-11-10 Nec Corp マイクロプロセッサのメモリ情報読込装置及び読込方法
JP2009182970A (ja) * 2003-03-21 2009-08-13 Gemplus モバイル電話タイプの電気通信端末の保護方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04149652A (ja) * 1990-10-09 1992-05-22 Mitsubishi Electric Corp マイクロコンピュータ
JPH07295893A (ja) * 1994-04-28 1995-11-10 Nec Corp マイクロプロセッサのメモリ情報読込装置及び読込方法
JP2009182970A (ja) * 2003-03-21 2009-08-13 Gemplus モバイル電話タイプの電気通信端末の保護方法
US9313662B2 (en) 2003-03-21 2016-04-12 Gemalto Sa Method of protecting a mobile-telephone-type telecommunication terminal

Similar Documents

Publication Publication Date Title
US5237616A (en) Secure computer system having privileged and unprivileged memories
KR100319677B1 (ko) 메모리액세스제어회로
US6160734A (en) Method for ensuring security of program data in one-time programmable memory
US4523271A (en) Software protection method and apparatus
US8867746B2 (en) Method for protecting a control device against manipulation
JP2007249323A (ja) マイクロコンピュータ
CN1954302A (zh) 数字信号控制器安全存储器分割
CN102047261B (zh) 改编和执行计算机程序的方法及其计算机体系结构
KR20060135467A (ko) 보호된 비휘발성 메모리를 사용하는 시스템 및 방법
JP4312272B2 (ja) 内部メモリへのアクセスを制限するマイクロコントローラ
US7036002B1 (en) System and method for using multiple working memories to improve microprocessor security
JP2005216027A (ja) 暗号化装置及びこれを備えた暗号化システム並びに復号化装置及びこれを備えた半導体システム
US9177111B1 (en) Systems and methods for protecting software
JPH08185361A (ja) 半導体集積回路装置
JPS63266533A (ja) デ−タ処理装置
JPH0475137A (ja) データ処理装置
JP2624249B2 (ja) 模倣防止機能付プロセッサ
JP2006254099A (ja) マイクロプロセッサ
JP2000029790A (ja) データセキュリティシステム
JPH09106690A (ja) コピー防止機能付きrom
KR100239438B1 (ko) 오동작 방지 기능을 갖는 중앙 처리 장치
JPH01232452A (ja) ワンチッププロセッサ
JPS59153240A (ja) シングルチツプマイコンにおけるプログラムの秘密保護方式
JP2004086525A (ja) 半導体装置及びそれを用いたインサーキットエミュレータ
JPH0315961A (ja) データ処理装置