JP4663162B2 - Semiconductor device - Google Patents
Semiconductor device Download PDFInfo
- Publication number
- JP4663162B2 JP4663162B2 JP2001191749A JP2001191749A JP4663162B2 JP 4663162 B2 JP4663162 B2 JP 4663162B2 JP 2001191749 A JP2001191749 A JP 2001191749A JP 2001191749 A JP2001191749 A JP 2001191749A JP 4663162 B2 JP4663162 B2 JP 4663162B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- signal
- output
- signal line
- outputs
- 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.)
- Expired - Fee Related
Links
Images
Description
【0001】
【発明の属する分野】
本発明は半導体装置に関し、特に、PROMのデータの機密保持を可能とした半導体装置に関する。
【0002】
【従来の技術】
従来、読み出し専用メモリ(以下ROMと呼ぶ)やPROMに記憶されているデータの機密保持に関して、あらかじめROMやPROM以外にキーコード(セキュリティコード)を格納しておいて、外部から入力したコードが一致すれば前記ROMあるいはPROMのデータを外部に読み出すことを可能とする技術が知られている。また、特開昭63−108600号公報に示された技術では、ROMに格納されている全データと外部から入力したデータを比較し、その比較結果のみを外部に出力することで、データの機密を保持するようにしている。
【0003】
ここで、従来技術として、特開昭63−108600号公報に開示されている技術について、図面を用いてその動作を説明する。図9は、その従来例を示すブロック図である。
【0004】
図9において、901はROMであり、このROM901は、アドレスバス902から供給されるアドレス情報に基づき、当該アドレス情報で指定されたアドレスに記憶されている情報を、データバス903に出力する。アドレスカウンタ904は、外部から供給されるパルス数を計数してその計数値をアドレスバス902に供給するとともに、ROM901のサイズ分の計数を終了すると、カウント終了信号を出力手段としての出力制御回路905に送出する。比較手段としてのコンパレータ906は、ROM901からデータバス903に読み出された情報を外部から供給された情報EXと比較して、その比較結果が不一致の場合には、記憶手段としての不一致フラグ907をセットする。出力制御回路905は、アドレスカウンタ904からカウント終了信号の供給を受けると、不一致フラグ907の内容を外部に出力する。
【0005】
従って上記の、出力制御回路905、コンパレータ906および不一致フラグ907を有する半導体装置は、ROM901に記憶されている情報の検査に際して、外部からパルスを供給してアドレスカウンタ904を歩進させれば、コンパレータ906が、ROM901から順次読み出される情報を外部から供給される正常な情報EXと比較し、ROM901の情報と外部の情報が不一致の場合不一致フラグ907がセットされ、一致の場合不一致フラグ907はセットされない。この不一致フラグ907の情報はカウント終了信号に応答して読み出されるので、ROM901に記憶されている情報の適否は外部で判断できるものの、情報の内容は判別できないため、情報の機密は保持される。
【0006】
【発明が解決しようとする課題】
しかしながら、従来の技術では、入力データの一致の達成を機密保持の絶対条件としているため、電源の再投入やシステムのリセットを繰り返し、データの照合を何回も実施することが出来る。このためデータの解読が技術的に可能であるという問題があった。また、キーコード等を保持するための記憶素子やキーコードそのものの管理が別途必要となる問題があった。
【0007】
そこで本発明は、僅かな回路を備えることで、特にPROMに格納されている情報を読み出さずに情報の正否を判断可能とするだけでなく、データの照合を一度間違えるとPROMに記憶されている情報を書換え、以後の解読を不可能とすることで、情報の機密を保持する半導体装置を提供することを目的とする。さらに、正規のユーザが情報の正否を判定する際に、誤ってPROMの情報を書きつぶすことがないように、誤書き込み対策を施した半導体装置を提供することを目的とする。
【0008】
【課題を解決するための手段】
上記の課題を解決するため、本発明の半導体装置は、外部からデータが供給される第1のデータバスと、前記第1のデータバスに入力側が接続されたトライステートバッファと、前記トライステートバッファの出力側と接続された第2のデータバスと、前記第2のデータバスと接続された電気的書き換え可能な不揮発性メモリと、前記第1のデータバスのデータと前記第2のデータバスのデータとを比較する比較回路と、前記比較回路の出力と書換え信号との論理積演算を行う論理回路と、前記論理回路の出力をクロック信号として入力し、ハイレベル信号をデータ信号として出力し、その出力で前記トライステートバッファを制御するフリップフロップと、前記書換え信号を前記フリップフロップの出力に基づき、前記不揮発性メモリの読出し許可信号または書換え許可信号として切替えて出力する切替回路とを備える。前記切替回路は、前記比較回路から出力される比較結果が一致である場合、前記読出し許可信号を出力し、前記比較結果が不一致である場合、前記書換え許可信号を出力するように制御され、前記トライステートバッファは、比較結果が一致である場合ハイインピーダンスを出力し、前記比較結果が不一致である場合、前記第1のデータバスのデータを前記第2のデータバスに出力するように制御を行い、前記不揮発性メモリは、前記読出し許可信号が出力されたとき所定アドレスのデータを前記第2のデータバスに出力し、前記書換え許可信号が出力されたとき前記所定アドレスのデータを前記第2のデータバスのデータで書換えることを特徴とする。
【0011】
【発明の実施の形態】
以下本発明の実施の形態について、図面を参照して説明する。
【0012】
図1は、本発明の実施の形態における半導体装置1の基本的な構成を示すブロック図である。11はPROMであり、アドレスバス101とNビットのデータバス103に接続されている。2はデータ制御回路であり、信号線106の出力を受けた場合はデータバス103のデータを変換して出力し、それ以外の場合はデータバス103のデータを出力する。12は比較回路であり、データバス102を通じて半導体装置外部から入力されるNビットのデータとデータバス103のデータを比較し、比較結果が不一致の場合、不一致信号を信号線105に出力する。3はメモリ制御回路であり、比較回路12の出力に応じて、外部から入力される信号線104の信号(書換え信号)を信号線107に出力するか、信号線108に出力するかを制御する。また、メモリ制御回路3は、比較回路12の不一致信号が入力された場合、切替信号を信号線106に出力する。
【0013】
なお本実施の形態では、データバス102とデータバス103で取り扱うデータは、説明の便宜上同一のビット数で構成されるものとするが、実際にはそれぞれ任意のビット数で構成され、必ずしも同じビット数である必要はない。
【0014】
また、アドレスバス101に入力されるアドレス信号は、一定期間経過すると自動的にインクリメントされ、それに同期してデータバス102に順次データが入力される。加えて信号線104から入力される書換え信号は、一回のアドレス信号入力中に一回だけ”1”データのパルス信号が入力されるものとする。さらにPROM11は、信号線107から”1”データが入力されると、アドレスバス101に指定された領域に格納されているデータをデータバス103に出力し、信号線108から”1”データが入力されると、アドレスバス101に指定された領域のデータがデータバス103のデータに書き換えられるものとする。
【0015】
以上のような基本的な構成における、データ制御回路2とメモリ制御回路3の、より具体的な構成に基づく各実施の形態について、以下に図面を用いて説明する。
【0016】
(実施の形態1)
図2に、実施の形態1における半導体装置に用いられるデータ制御回路2とメモリ制御回路3のブロック図を示す。
【0017】
最初に、データ制御回路2について説明する。21はトライステートバッファであり、信号線106から”1”データを受けるとデータバス102のデータをデータバス103に出力し、それ以外は”Hi−z”を出力する。従って、比較回路12は、信号線106の出力が”1”以外の場合は、データバス102と103のデータを比較することになる。ここで、本発明の実施の形態において、トライステートバッファ21は、実際にはNビット分備えられているものとする(図示省略)。
【0018】
次に、メモリ制御回路3について説明する。AND回路31は、信号線105と信号線104のデータをAND出力する。フリップフロップ32は、AND回路31の出力信号を受けると、その立ち上がりエッジに同期して”1”データを信号線106に出力する。切替回路33は信号線104の信号を、信号線106のデータが”1”の場合信号線108に出力し、それ以外の場合は信号線107に出力する。ここでフリップフロップ32は、半導体装置もしくは外部から初期値”0”データにリセットされているものとする。
【0019】
以上のように構成されたデータ制御回路2とメモリ制御回路3について、その動作を説明する。
【0020】
まず、外部から供給されるデータとPROM11のデータが一致している場合の動作について説明する。PROM11には、外部から任意のアドレス信号と比較したいデータ信号と書換え信号が供給される。フリップフロップ32は初期値”0”に設定されているため、切替回路33は信号線104の信号を信号線107に出力する。また、PROM11は、アドレス信号が入力されると指定されたアドレスのデータをデータバス103に出力する。この時、フリップフロップ32の出力が”0”でありデータ制御回路21は”Hi−z”を出力しているため、データバス103のデータは比較回路12に供給されている。従って、比較回路12は、外部から供給されるデータバス102のデータとPROM11のデータを比較する。比較されたデータは一致するので、比較回路12は”0”データを、信号線105に出力する。AND回路31は”0”を出力するので、フリップフロップ32はデータの比較が終了しても初期値”0”を出力し続ける。その結果、データの比較は正常に実施されたことになり、順次アドレスをインクリメントしていっても、データの比較が不一致となるまでは同様の動作が繰り返される。
【0021】
次に、外部から供給されるデータとPROM11のデータが不一致である場合の動作について説明する。データの不一致が発生すると、比較回路12は”1”データを信号線105に出力する。AND回路31は”1”を出力するため、フリップフロップ32はその立ち上がりエッジに同期して”1”データを出力し、以後その値を保持し続ける。切替回路33は、信号線104の書換え信号を信号線108に出力する。トライステートバッファ21はデータバス102のデータをデータバス103に出力する。その結果、データバス103は本来のデータとは異なるデータに変換されることになる。信号線108から”1”データが入力されると、PROM11のアドレス信号で指定された領域には、データバス103の変換されたデータが書き込まれる。以後、順次アドレス信号をインクリメントすると、データバス102のデータとデータバス103のデータが異なる場合は、PROM11のデータがデータバス102のデータに書き換えられることになる。
【0022】
以上のように、外部から供給されるデータとPROMのデータを照合するだけでなく、不一致の場合はPROMのデータそのものを書き換えてしまう。従って、以後データを照合しても、誤ったデータと照合することになるため情報の解読が不可能となる。その結果、データの照合は一度だけになるので、実質正規のユーザ以外が機密データを解読することが不可能である。
【0023】
(実施の形態2)
図3は、実施の形態2におけるメモリ制御回路3のブロック図を示す。データ制御回路2は、実施の形態1で述べたものと同一である。
【0024】
タイミング発生回路36は、クロック信号を信号線301、302、および303に出力する。AND回路31は、信号線105と信号線104のデータをAND出力する。フリップフロップ32は、信号線303のデータが”1”のとき、AND回路31の出力信号を受けると、その立ち上がりエッジに同期して”1”データを出力する。フリップフロップ34は、信号線105が”1”の時信号線301の信号を受けると、その立ち上がりエッジに同期して”1”データを格納する。同様に、フリップフロップ35は、信号線105が”1”の時信号線302の信号を受けると、その立ち上がりエッジに同期して”1”データを格納する。デコーダ37は、フリップフロップ32、34、および35の出力を受けると同時に、切替信号を信号線106に出力するとともに、併せてデコード信号を信号線109に出力する。
【0025】
切替回路33は、信号線106のデータが”1”の場合、信号線104の信号を信号線108に出力し、それ以外の場合は信号線107に出力する。
【0026】
図4にタイミング発生回路36のタイミングチャートを示す。タイミング発生回路36は、最初のアドレスがPROM11に入力されると1回だけパルス信号を信号線301に出力し(図中(A)部)、以後順次アドレスが入力されても信号線301にはパルスを出力しない。同様に2番目のアドレスが入力されると信号線302には1回だけパルス信号が出力される(図中(B)部)。さらに3番目以降のアドレスが入力される時は、信号線303にのみパルス信号が出力され、信号線104の信号を出力することが可能となる。デコーダ37は、表1に示すデコード結果が得られるデコード回路である。
【0027】
【表1】
【0028】
さらに、フリップフロップ32、34および35は、半導体装置もしくは外部から、初期値”0”データにリセットされているものとする。
【0029】
以上のように構成されたメモリ制御回路3を用いた本発明の実施例について、その動作を説明する。
【0030】
まず第1の動作例として、外部から供給されるデータとPROM11のデータが一致している場合の動作について説明する。図5に、その場合のタイミングチャートを示す。
【0031】
PROM11には、外部から任意のアドレス信号と、比較したいデータ信号と、書換え信号が供給される。PROM11は、アドレス信号が入力されると、指定されたアドレスのデータをデータバス103に出力する。比較回路12は、外部から供給されるデータバス102のデータとPROM11のデータを比較する。この時データが一致しているため(図中(A)〜(D))、信号線105は”0”であり、タイミング発生回路36から信号線301、302および303にクロック信号が発生しても、フリップフロップ32、34および35は初期値”0”を維持する。従って表1に示すように、デコーダ37は、信号線109に”0,0”を出力し、信号線106に”0”を出力する。
【0032】
切替回路33は、信号線104の書換え信号を信号線107に出力する。この時、デコーダ37の切替信号は”0”であり、データ制御回路21は”Hi−z”を出力しているため、PROM11から出力されたデータが、次のアドレス信号が入力されるまで比較回路12に供給されている。以上のようにデータの比較が実施され、順次アドレスをインクリメントしていっても、データの比較が不一致となるまでは同様の動作が繰り返される。
【0033】
次に第2の動作例として、外部から供給される最初のデータとPROM11の最初のデータが不一致の場合の動作について説明する。
【0034】
図6にその場合のタイミングチャートを示す。データの不一致が発生すると(図中タイミング(F))、比較回路12は”1”データを信号線105に出力する。この時フリップフロップ34は、タイミング発生回路36から出されるクロック信号の立ち上がりエッジに同期して信号線105の”1”データを格納し、以後出力を保持する。デコーダ37は、それぞれ”0,0”と”1”を信号線109と信号線106に出力する(表1)。切替回路33は、信号線106の”1”データを受け、信号線104の書換え信号を信号線108に出力する。トライステートバッファ21は、信号線106の”1”データを受けデータバス103のデータをデータバス102のデータに変換する。結果として、PROM11は信号線108から書換え信号を入力され、指定されたアドレス領域のデータは、本来とは異なるデータバス102のデータに書き換えられる。信号線106の”1”データは維持されつづけるので、以後、アドレス信号をインクリメントしてもデータの照合は実施されず、PROM11は外部から与えられるデータに順次書き換えられる。
【0035】
このような処理によれば、例えば、データの照合を開始する際に最初のデータをユーザーIDとしておくと、このユーザーIDが不一致の場合は正規のユーザー以外と判断して、無条件にPROMのデータを書換えるという処理ができる。また、デコーダ37のデコード値”0,0”を”処理エラーなし”と位置付けておくと、正規のユーザー以外には処理が誤っていることを認識できない。
【0036】
次に第3の動作例として、外部から供給される2番目のデータとPROM11から読み出される2番目のデータが不一致である場合の動作について説明する。図7にその場合のタイミングチャートを示す。最初のデータは一致しているので、フリップフロップ34は初期値”0”を保持している。2番目のデータの不一致が発生すると、比較回路12は”1”データを信号線105に出力する。この時フリップフロップ35は、タイミング発生回路36から出されるクロック信号の立ち上がりエッジに同期して信号線105の”1”データを格納し、以後出力を保持する(図中タイミング(D))。デコーダ37は、それぞれ”0,1”と”0”を信号線109と信号線106に出力する(表1)。切替回路33は信号線106の”0”データを受け、信号線104の書換え信号を信号線107に出力する。トライステートバッファ21は信号線106の”0”データを受け、”Hi−z”を出力する。結果として、PROM11は信号線107から信号を入力されると、指定されたアドレス領域のデータをデータバス103に出力する。フリップフロップ34と35はデータを保持しているので、デコーダ37も出力を保持する。従って、2番目のデータが不一致判定されたにも関わらず、以後アドレス信号をインクリメントしてもデータの書換えは実施されない。
【0037】
このような処理によれば、例えば、データの照合を開始する際に最初のデータをユーザーID、2番目のデータをROM−IDとしておくと、ユーザーIDが一致してROM−IDが不一致の場合は、正規のユーザーではあるが、誤ってPROMのデータと異なるデータとを照合してしまったと判断して、正しいデータと照合できるまでPROMのデータを保護しておくことが可能である。また、デコーダ37のデコード値”0,1”を”処理エラーあり”と位置付けておくと、正規のユーザーは直に状況を把握することができる。
【0038】
次に第4の動作例として、外部から供給される3番目以降のデータとPROM11から読み出される3番目以降のデータが不一致の場合の動作について説明する。
【0039】
図8に、その場合のタイミングチャートを示す。1番目と2番目のデータは一致しているので、フリップフロップ34と35はそれぞれ初期値”0”を保持している。3番目以降のデータの不一致が発生すると、比較回路12は”1”データを信号線105に出力する。この時フリップフロップ32は、信号線104の信号の立ち上がりエッジに同期して信号線105の”1”データを格納し、以後出力を保持する(図中タイミング(F))。デコーダ37は、それぞれ”1,0”と”1”を信号線109と信号線106に出力する(表1)。切替回路33は、信号線106の”1”データを受け、信号線104の書換え信号を信号線108に出力する。トライステートバッファ21は信号線106の”1”データを受け、データバス103のデータをデータバス102のデータに変換する。結果として、PROM11は信号線108から書換え信号を入力され、指定されたアドレス領域のデータは本来とは異なるデータバス102のデータに書き換えられる。信号線106の”1”データは維持されつづけるので、以後、アドレス信号をインクリメントしてもデータの照合は実施されず、PROM11は外部から与えられるデータに順次書き換えられる。
【0040】
このような処理によれば、仮に、第2、第3の動作例で示したユーザーIDやROM−IDが解読されたとしても、実施の形態1と同様に以降のデータの照合において、一度間違えると二度と照合ができなくなるため、PROMのデータの機密は保持される。また、デコーダ37のデコード値”1,0”を”処理エラーあり”と位置付けておくと、正規のユーザーは直に状況を把握することができる。
【0041】
以上の、第1〜第4の動作例のように、PROMのデータにユーザーIDとROM−IDを設定しておき、データの照合と書換えに対して処理のステップを設けることで、データの機密保持レベルを低下させることなく、正規のユーザーが使用する際に誤ってPROMデータを書換えてしまうことを防止することが可能となる。
【0042】
【発明の効果】
以上のように本発明によれば、PROMに接続されているデータバスを制御するデータ制御回路と比較回路、メモリへの書換え読出しを制御するメモリ制御回路を用いることで、データの照合だけでなく、一度照合を間違えるとPROMに記憶されているデータを書き換えてしまうことにより、以後の照合を不可能とし、より高度にデータの機密を保持することができる。
【0043】
さらに、PROMのデータそのものをセキュリティコード(鍵データ、暗号)として扱うことが可能なので、セキュリティコード記憶素子等の余分な回路や情報を持つ必要がないという効果がある。また、一度の処理で、PROMのデータの読出しと書換えを実施するので、例えば市販されているPROMライター等で前記処理を実行する場合、PROMライター内の制御回路や制御プログラムを簡素化することが可能である。
【0044】
加えて、PROMのデータにユーザーIDとROM−IDを設定しておき、データの照合と書換えに対して処理のステップを設けることで、データの機密保持レベルを低下させることなく、正規のユーザーが使用する際に誤ってPROMデータを書換えてしまうことを防止することが可能となる。
【図面の簡単な説明】
【図1】 本発明の実施の形態における半導体装置の概略構成を示すブロック図
【図2】 実施の形態1におけるデータ制御回路とメモリ制御回路の概略構成を示すブロック図
【図3】 実施の形態2におけるメモリ制御回路の概略構成を示すブロック図
【図4】 実施の形態2におけるタイミング発生回路のタイミングチャート
【図5】 実施の形態2における第1例のタイミングチャート
【図6】 実施の形態2における第2例のタイミングチャート
【図7】 実施の形態2における第3例のタイミングチャート
【図8】 実施の形態2における第4例のタイミングチャート
【図9】 従来例の半導体装置の概略構成を示すブロック図
【符号の説明】
1 半導体装置
2 データ制御回路
3 メモリ制御回路
11 PROM
12 比較回路
21 トライステートバッファ
31 AND回路
32、34、35 フリップフロップ
33 切替回路
36 タイミング発生回路
37 デコーダ
101 アドレスバス
102 データバス
103 データバス
104〜109 信号線
301、302、303 信号線
901 ROM
902 アドレスバス
903 データバス
904 アドレスカウンタ
905 出力制御回路
906 コンパレータ
907 不一致フラグ[0001]
[Field of the Invention]
The present invention relates to a semiconductor device, and more particularly to a semiconductor device capable of maintaining confidentiality of PROM data.
[0002]
[Prior art]
Conventionally, regarding the confidentiality of data stored in read-only memory (hereinafter referred to as ROM) or PROM, key codes (security codes) are stored in advance in addition to ROM and PROM, and the codes entered from outside match. In this case, a technique is known that makes it possible to read the ROM or PROM data to the outside. In the technique disclosed in Japanese Patent Laid-Open No. 63-108600, all data stored in the ROM is compared with data input from the outside, and only the comparison result is output to the outside. To keep.
[0003]
Here, as a conventional technique, the operation of the technique disclosed in Japanese Patent Laid-Open No. 63-108600 will be described with reference to the drawings. FIG. 9 is a block diagram showing a conventional example.
[0004]
In FIG. 9,
[0005]
Therefore, when the semiconductor device having the
[0006]
[Problems to be solved by the invention]
However, in the conventional technique, the achievement of matching of input data is an absolute condition for maintaining confidentiality. Therefore, it is possible to repeatedly check data by repeatedly turning on the power and resetting the system. For this reason, there has been a problem that the data can be technically decoded. Further, there is a problem that it is necessary to separately manage a storage element for holding a key code and the key code itself.
[0007]
Therefore, the present invention is provided with a small number of circuits, so that not only information stored in the PROM can be determined, but also whether or not the information is correct can be determined. An object of the present invention is to provide a semiconductor device that keeps confidential information by rewriting information and making subsequent decryption impossible. It is another object of the present invention to provide a semiconductor device that is provided with a countermeasure against erroneous writing so that an authorized user does not accidentally write down information in a PROM when determining whether the information is correct or not.
[0008]
[Means for Solving the Problems]
In order to solve the above problems, a semiconductor device of the present invention includes a first data bus to which data is supplied from the outside, a tristate buffer having an input connected to the first data bus, and the tristate buffer. A second data bus connected to the output side, an electrically rewritable nonvolatile memory connected to the second data bus, data of the first data bus, and data of the second data bus A comparison circuit that compares data, a logic circuit that performs an AND operation between an output of the comparison circuit and a rewrite signal, an output of the logic circuit is input as a clock signal, and a high-level signal is output as a data signal, A flip-flop that controls the tri-state buffer with its output, and the rewrite signal is read from the nonvolatile memory based on the output of the flip-flop. And a switching circuit for outputting switching as an authorized signal or rewrite permission signal. The switching circuit is controlled to output the read permission signal when the comparison result output from the comparison circuit is identical, and to output the rewrite permission signal when the comparison result is mismatched, The tri-state buffer outputs a high impedance when the comparison result is coincident, and controls to output the data of the first data bus to the second data bus when the comparison result is not coincident. The nonvolatile memory outputs data at a predetermined address to the second data bus when the read permission signal is output, and outputs the data at the predetermined address when the rewrite permission signal is output. It is characterized by rewriting with data on the data bus .
[0011]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings.
[0012]
FIG. 1 is a block diagram showing a basic configuration of a
[0013]
In this embodiment, the data handled by the
[0014]
The address signal input to the
[0015]
Each embodiment based on a more specific configuration of the
[0016]
(Embodiment 1)
FIG. 2 shows a block diagram of the
[0017]
First, the
[0018]
Next, the
[0019]
The operation of the
[0020]
First, the operation when the data supplied from the outside and the data in the
[0021]
Next, the operation when the data supplied from the outside and the data in the
[0022]
As described above, not only the data supplied from the outside and the PROM data are collated, but also the PROM data itself is rewritten if they do not match. Therefore, even if data is collated thereafter, it is collated with incorrect data, so that the information cannot be decoded. As a result, since the data is collated only once, it is impossible for anyone other than a legitimate user to decrypt the confidential data.
[0023]
(Embodiment 2)
FIG. 3 shows a block diagram of the
[0024]
The
[0025]
The switching
[0026]
FIG. 4 shows a timing chart of the
[0027]
[Table 1]
[0028]
Further, it is assumed that the flip-
[0029]
The operation of the embodiment of the present invention using the
[0030]
First, as a first operation example, an operation when data supplied from the outside and the data in the
[0031]
An arbitrary address signal, a data signal to be compared, and a rewrite signal are supplied to the
[0032]
The switching
[0033]
Next, as a second operation example, an operation when the first data supplied from the outside and the first data of the
[0034]
FIG. 6 shows a timing chart in that case. When data mismatch occurs (timing (F) in the figure), the
[0035]
According to such processing, for example, when the first data is set as a user ID when starting data collation, if the user ID does not match, it is determined that the user is not a regular user, and the PROM is unconditionally. Data can be rewritten. Further, if the decode value “0, 0” of the
[0036]
Next, as a third operation example, an operation in the case where the second data supplied from the outside and the second data read from the
[0037]
According to such a process, for example, when the first data is set as the user ID and the second data is set as the ROM-ID when starting data collation, the user ID matches and the ROM-ID does not match. Although it is a legitimate user, it can be determined that the PROM data and the data different from each other are mistakenly verified, and the PROM data can be protected until the correct data can be verified. If the decode value “0, 1” of the
[0038]
Next, as a fourth operation example, an operation when the third and subsequent data supplied from the outside does not match the third and subsequent data read from the
[0039]
FIG. 8 shows a timing chart in that case. Since the first and second data match, the flip-
[0040]
According to such processing, even if the user ID and ROM-ID shown in the second and third operation examples are decrypted, an error is made once in the subsequent data collation as in the first embodiment. In this case, the data in the PROM is kept confidential. If the decode value “1, 0” of the
[0041]
As described above in the first to fourth operation examples, the user ID and the ROM-ID are set in the PROM data, and the processing steps are provided for the data collation and rewriting so that the data is confidential. Without lowering the retention level, it is possible to prevent the PROM data from being rewritten accidentally when used by a legitimate user.
[0042]
【The invention's effect】
As described above, according to the present invention, by using the data control circuit and the comparison circuit for controlling the data bus connected to the PROM, and the memory control circuit for controlling the rewriting / reading to / from the memory, not only data collation can be performed. Once the collation is wrong, the data stored in the PROM is rewritten, so that the subsequent collation is impossible and the confidentiality of the data can be maintained at a higher level.
[0043]
Further, since the PROM data itself can be handled as a security code (key data, encryption), there is an effect that it is not necessary to have an extra circuit or information such as a security code storage element. In addition, since the PROM data is read and rewritten in a single process, for example, when the process is executed by a commercially available PROM writer, the control circuit and control program in the PROM writer can be simplified. Is possible.
[0044]
In addition, by setting the user ID and ROM-ID in the PROM data and providing processing steps for data collation and rewriting, a legitimate user can access the data without lowering the data security level. It is possible to prevent the PROM data from being rewritten accidentally when used.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of a semiconductor device in an embodiment of the present invention. FIG. 2 is a block diagram showing a schematic configuration of a data control circuit and a memory control circuit in the first embodiment. FIG. 4 is a block diagram showing a schematic configuration of a memory control circuit in FIG. 2. FIG. 5 is a timing chart of a timing generation circuit in a second embodiment. FIG. 5 is a timing chart of a first example in the second embodiment. FIG. 7 is a timing chart of the third example of the second embodiment. FIG. 8 is a timing chart of the fourth example of the second embodiment. FIG. 9 is a schematic diagram of a conventional semiconductor device. Block diagram shown [Explanation of symbols]
DESCRIPTION OF
12
902
Claims (1)
前記第1のデータバスに入力側が接続されたトライステートバッファと、
前記トライステートバッファの出力側と接続された第2のデータバスと、
前記第2のデータバスと接続された電気的書き換え可能な不揮発性メモリと、
前記第1のデータバスのデータと前記第2のデータバスのデータとを比較する比較回路と、
前記比較回路の出力と書換え信号との論理積演算を行う論理回路と、
前記論理回路の出力をクロック信号として入力し、ハイレベル信号をデータ信号として出力し、その出力で前記トライステートバッファを制御するフリップフロップと、
前記書換え信号を前記フリップフロップの出力に基づき、前記不揮発性メモリの読出し許可信号または書換え許可信号として切替えて出力する切替回路とを備え、
前記切替回路は、前記比較回路から出力される比較結果が一致である場合、前記読出し許可信号を出力し、前記比較結果が不一致である場合、前記書換え許可信号を出力するように制御され、
前記トライステートバッファは、比較結果が一致である場合ハイインピーダンスを出力し、前記比較結果が不一致である場合、前記第1のデータバスのデータを前記第2のデータバスに出力するように制御を行い、
前記不揮発性メモリは、前記読出し許可信号が出力されたとき所定アドレスのデータを前記第2のデータバスに出力し、前記書換え許可信号が出力されたとき前記所定アドレスのデータを前記第2のデータバスのデータで書換えることを特徴とする半導体装置。 A first data bus to which data is supplied from the outside;
A tri-state buffer having an input connected to the first data bus;
A second data bus connected to the output side of the tri-state buffer;
An electrically rewritable nonvolatile memory connected to the second data bus;
A comparison circuit for comparing the data of the first data bus with the data of the second data bus;
A logic circuit that performs an AND operation between the output of the comparison circuit and a rewrite signal;
A flip-flop that inputs the output of the logic circuit as a clock signal, outputs a high-level signal as a data signal, and controls the tri-state buffer by the output;
A switching circuit that switches and outputs the rewrite signal as a read permission signal or a rewrite permission signal of the nonvolatile memory based on the output of the flip-flop,
The switching circuit is controlled to output the read permission signal when the comparison result output from the comparison circuit is identical, and to output the rewrite permission signal when the comparison result is mismatched,
The tri-state buffer outputs a high impedance when the comparison result is coincident, and controls to output the data of the first data bus to the second data bus when the comparison result is not coincident. Done
The nonvolatile memory outputs data at a predetermined address to the second data bus when the read permission signal is output, and outputs the data at the predetermined address to the second data when the rewrite permission signal is output. A semiconductor device which is rewritten by bus data .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001191749A JP4663162B2 (en) | 2001-06-25 | 2001-06-25 | Semiconductor device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001191749A JP4663162B2 (en) | 2001-06-25 | 2001-06-25 | Semiconductor device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003006050A JP2003006050A (en) | 2003-01-10 |
JP4663162B2 true JP4663162B2 (en) | 2011-03-30 |
Family
ID=19030324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001191749A Expired - Fee Related JP4663162B2 (en) | 2001-06-25 | 2001-06-25 | Semiconductor device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4663162B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008123106A (en) * | 2006-11-09 | 2008-05-29 | Nec Electronics Corp | Microcomputer and debug method for microcomputer |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54156442A (en) * | 1978-05-31 | 1979-12-10 | Toshiba Corp | Data write-in method ror rewritable non-volatile semiconductor memory device |
JPS6175487A (en) * | 1985-05-07 | 1986-04-17 | Noriko Ikegami | Electronic device |
JPS63108600A (en) * | 1986-10-27 | 1988-05-13 | Nec Corp | Semiconductor device |
JPH0467395A (en) * | 1990-07-02 | 1992-03-03 | Sony Corp | Preset data writing controller |
JPH05134930A (en) * | 1991-11-12 | 1993-06-01 | Nippon Telegr & Teleph Corp <Ntt> | Memory protecting device |
JPH10260951A (en) * | 1997-03-19 | 1998-09-29 | Toshiba Corp | Method for nv memory rewriting of nv memory mixedly mounted microcomputer, recording medium where nv memory rewriting program is recorded, and nv memory mixedly mounted microcomputer |
JPH11338762A (en) * | 1998-05-26 | 1999-12-10 | Mitsubishi Electric Corp | Ic memory and operation compatibility discriminating method by the ic memory |
-
2001
- 2001-06-25 JP JP2001191749A patent/JP4663162B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54156442A (en) * | 1978-05-31 | 1979-12-10 | Toshiba Corp | Data write-in method ror rewritable non-volatile semiconductor memory device |
JPS6175487A (en) * | 1985-05-07 | 1986-04-17 | Noriko Ikegami | Electronic device |
JPS63108600A (en) * | 1986-10-27 | 1988-05-13 | Nec Corp | Semiconductor device |
JPH0467395A (en) * | 1990-07-02 | 1992-03-03 | Sony Corp | Preset data writing controller |
JPH05134930A (en) * | 1991-11-12 | 1993-06-01 | Nippon Telegr & Teleph Corp <Ntt> | Memory protecting device |
JPH10260951A (en) * | 1997-03-19 | 1998-09-29 | Toshiba Corp | Method for nv memory rewriting of nv memory mixedly mounted microcomputer, recording medium where nv memory rewriting program is recorded, and nv memory mixedly mounted microcomputer |
JPH11338762A (en) * | 1998-05-26 | 1999-12-10 | Mitsubishi Electric Corp | Ic memory and operation compatibility discriminating method by the ic memory |
Also Published As
Publication number | Publication date |
---|---|
JP2003006050A (en) | 2003-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9514063B2 (en) | Secure compact flash | |
US5214697A (en) | Program execution apparatus for ensuring security of a program | |
JP4913861B2 (en) | Semiconductor device identifier generation method and semiconductor device | |
US7945791B2 (en) | Protected storage of a datum in an integrated circuit | |
EP0707270B1 (en) | Method and apparatus for validating system operation | |
US7260727B2 (en) | Method for secure storage of sensitive data in a memory of an embedded microchip system, particularly a smart card, and embedded system implementing the method | |
TWI313123B (en) | Integrated circuit security and method therefor | |
US6490685B1 (en) | Storage device having testing function and memory testing method | |
US7076667B1 (en) | Storage device having secure test process | |
CN112363956A (en) | Method and device for encrypting and decrypting FLASH memory | |
KR19980032125A (en) | IC memory card | |
EP3780489A1 (en) | Memory device providing data security | |
CN111199023A (en) | Key system and decryption method of MCU program | |
CN112069551A (en) | Electronic circuit | |
KR20070005509A (en) | Detection of a change of the data of a dataset | |
JP4663162B2 (en) | Semiconductor device | |
US20080104396A1 (en) | Authentication Method | |
JP5278813B2 (en) | Real-time clock and electronic device security setting method | |
JP4323527B2 (en) | Semiconductor memory device | |
US20210342076A1 (en) | Method for accessing one-time-programmable memory and associated circuitry | |
JP2000181802A (en) | Semiconductor storage device | |
JP2677342B2 (en) | Portable semiconductor memory device system | |
CN115599407B (en) | Firmware burning method, firmware burning system and memory storage device | |
WO2024066533A1 (en) | Chip assembly and information processing method thereof, and computer readable medium | |
CN116203886A (en) | High-safety circuit applied to FPGA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080508 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101005 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101130 |
|
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: 20101221 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110105 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140114 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |