JP4663162B2 - Semiconductor device - Google Patents

Semiconductor device Download PDF

Info

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
Application number
JP2001191749A
Other languages
Japanese (ja)
Other versions
JP2003006050A (en
Inventor
孝誠 藤阪
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2001191749A priority Critical patent/JP4663162B2/en
Publication of JP2003006050A publication Critical patent/JP2003006050A/en
Application granted granted Critical
Publication of JP4663162B2 publication Critical patent/JP4663162B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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】

Figure 0004663162
【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, reference numeral 901 denotes a ROM. The ROM 901 outputs information stored at an address specified by the address information to the data bus 903 based on address information supplied from the address bus 902. The address counter 904 counts the number of pulses supplied from the outside and supplies the count value to the address bus 902. When the counting for the size of the ROM 901 is completed, the address control circuit 905 outputs a count end signal as output means. To send. The comparator 906 as a comparison unit compares the information read from the ROM 901 to the data bus 903 with the information EX supplied from the outside, and if the comparison result does not match, sets a mismatch flag 907 as a storage unit. set. When receiving the count end signal from the address counter 904, the output control circuit 905 outputs the contents of the mismatch flag 907 to the outside.
[0005]
Therefore, when the semiconductor device having the output control circuit 905, the comparator 906, and the mismatch flag 907 is inspected for information stored in the ROM 901, if the pulse is supplied from the outside and the address counter 904 is incremented, the comparator 906 compares information sequentially read from the ROM 901 with normal information EX supplied from the outside, and if the information in the ROM 901 does not match the external information, the mismatch flag 907 is set, and if they match, the mismatch flag 907 is not set. . Since the information of the mismatch flag 907 is read in response to the count end signal, the suitability of the information stored in the ROM 901 can be determined externally, but the content of the information cannot be determined, so the confidentiality of the information is maintained.
[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 semiconductor device 1 according to an embodiment of the present invention. A PROM 11 is connected to an address bus 101 and an N-bit data bus 103. Reference numeral 2 denotes a data control circuit, which converts and outputs data on the data bus 103 when receiving an output from the signal line 106, and outputs data on the data bus 103 otherwise. A comparison circuit 12 compares N-bit data input from the outside of the semiconductor device through the data bus 102 with data on the data bus 103, and outputs a mismatch signal to the signal line 105 if the comparison result does not match. Reference numeral 3 denotes a memory control circuit that controls whether the signal (rewrite signal) of the signal line 104 input from the outside is output to the signal line 107 or the signal line 108 according to the output of the comparison circuit 12. . The memory control circuit 3 outputs a switching signal to the signal line 106 when the mismatch signal of the comparison circuit 12 is input.
[0013]
In this embodiment, the data handled by the data bus 102 and the data bus 103 are configured with the same number of bits for convenience of explanation. It need not be a number.
[0014]
The address signal input to the address bus 101 is automatically incremented after a certain period of time, and data is sequentially input to the data bus 102 in synchronization therewith. In addition, as a rewrite signal input from the signal line 104, a pulse signal of “1” data is input only once during an address signal input. Further, when “1” data is input from the signal line 107, the PROM 11 outputs the data stored in the area designated by the address bus 101 to the data bus 103 and receives “1” data from the signal line 108. Then, the data in the area designated on the address bus 101 is rewritten to the data on the data bus 103.
[0015]
Each embodiment based on a more specific configuration of the data control circuit 2 and the memory control circuit 3 in the basic configuration as described above will be described below with reference to the drawings.
[0016]
(Embodiment 1)
FIG. 2 shows a block diagram of the data control circuit 2 and the memory control circuit 3 used in the semiconductor device in the first embodiment.
[0017]
First, the data control circuit 2 will be described. Reference numeral 21 denotes a tri-state buffer. When “1” data is received from the signal line 106, data on the data bus 102 is output to the data bus 103, and otherwise, “Hi-z” is output. Therefore, the comparison circuit 12 compares the data on the data buses 102 and 103 when the output of the signal line 106 is other than “1”. Here, in the embodiment of the present invention, it is assumed that the tri-state buffer 21 is actually provided with N bits (not shown).
[0018]
Next, the memory control circuit 3 will be described. The AND circuit 31 ANDs the data of the signal line 105 and the signal line 104. When receiving the output signal of the AND circuit 31, the flip-flop 32 outputs “1” data to the signal line 106 in synchronization with the rising edge. The switching circuit 33 outputs the signal on the signal line 104 to the signal line 108 when the data on the signal line 106 is “1”, and outputs it to the signal line 107 otherwise. Here, it is assumed that the flip-flop 32 is reset to the initial value “0” data from the semiconductor device or the outside.
[0019]
The operation of the data control circuit 2 and the memory control circuit 3 configured as described above will be described.
[0020]
First, the operation when the data supplied from the outside and the data in the PROM 11 match will be described. The PROM 11 is supplied with a data signal and a rewrite signal to be compared with an arbitrary address signal from the outside. Since the flip-flop 32 is set to the initial value “0”, the switching circuit 33 outputs the signal on the signal line 104 to the signal line 107. Further, when the address signal is input, the PROM 11 outputs the data at the designated address to the data bus 103. At this time, since the output of the flip-flop 32 is “0” and the data control circuit 21 outputs “Hi-z”, the data on the data bus 103 is supplied to the comparison circuit 12. Therefore, the comparison circuit 12 compares the data on the data bus 102 supplied from the outside with the data on the PROM 11. Since the compared data match, the comparison circuit 12 outputs “0” data to the signal line 105. Since the AND circuit 31 outputs “0”, the flip-flop 32 continues to output the initial value “0” even after the data comparison is completed. As a result, the data comparison is normally performed, and the same operation is repeated until the data comparison does not match even if the addresses are sequentially incremented.
[0021]
Next, the operation when the data supplied from the outside and the data in the PROM 11 do not match will be described. When the data mismatch occurs, the comparison circuit 12 outputs “1” data to the signal line 105. Since the AND circuit 31 outputs “1”, the flip-flop 32 outputs “1” data in synchronization with the rising edge, and continues to hold the value thereafter. The switching circuit 33 outputs a rewrite signal for the signal line 104 to the signal line 108. The tristate buffer 21 outputs the data on the data bus 102 to the data bus 103. As a result, the data bus 103 is converted into data different from the original data. When “1” data is input from the signal line 108, the converted data of the data bus 103 is written in an area designated by the address signal of the PROM 11. Thereafter, when the address signal is sequentially incremented, if the data on the data bus 102 and the data on the data bus 103 are different, the data on the PROM 11 is rewritten with the data on the data bus 102.
[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 memory control circuit 3 in the second embodiment. The data control circuit 2 is the same as that described in the first embodiment.
[0024]
The timing generation circuit 36 outputs a clock signal to the signal lines 301, 302, and 303. The AND circuit 31 ANDs the data of the signal line 105 and the signal line 104. When the data of the signal line 303 is “1”, the flip-flop 32 receives the output signal of the AND circuit 31 and outputs “1” data in synchronization with the rising edge. When the signal line 105 receives the signal on the signal line 301 when the signal line 105 is “1”, the flip-flop 34 stores “1” data in synchronization with the rising edge. Similarly, when the signal line 105 receives a signal on the signal line 302 when the signal line 105 is “1”, the flip-flop 35 stores “1” data in synchronization with the rising edge thereof. The decoder 37 receives the outputs of the flip-flops 32, 34, and 35, and simultaneously outputs a switching signal to the signal line 106 and outputs a decoded signal to the signal line 109.
[0025]
The switching circuit 33 outputs the signal on the signal line 104 to the signal line 108 when the data on the signal line 106 is “1”, and outputs it to the signal line 107 otherwise.
[0026]
FIG. 4 shows a timing chart of the timing generation circuit 36. When the first address is input to the PROM 11, the timing generation circuit 36 outputs a pulse signal to the signal line 301 only once (part (A) in the figure). Does not output pulses. Similarly, when the second address is input, a pulse signal is output to the signal line 302 only once (part (B) in the figure). Further, when the third and subsequent addresses are input, a pulse signal is output only to the signal line 303, and a signal on the signal line 104 can be output. The decoder 37 is a decoding circuit that can obtain the decoding results shown in Table 1.
[0027]
[Table 1]
Figure 0004663162
[0028]
Further, it is assumed that the flip-flops 32, 34 and 35 have been reset to the initial value “0” data from the semiconductor device or from the outside.
[0029]
The operation of the embodiment of the present invention using the memory control circuit 3 configured as described above will be described.
[0030]
First, as a first operation example, an operation when data supplied from the outside and the data in the PROM 11 match will be described. FIG. 5 shows a timing chart in that case.
[0031]
An arbitrary address signal, a data signal to be compared, and a rewrite signal are supplied to the PROM 11 from the outside. When an address signal is input, the PROM 11 outputs data at a specified address to the data bus 103. The comparison circuit 12 compares the data on the data bus 102 supplied from the outside with the data on the PROM 11. Since the data match at this time ((A) to (D) in the figure), the signal line 105 is “0”, and a clock signal is generated from the timing generation circuit 36 to the signal lines 301, 302 and 303. In addition, the flip-flops 32, 34 and 35 maintain the initial value “0”. Therefore, as shown in Table 1, the decoder 37 outputs “0, 0” to the signal line 109 and “0” to the signal line 106.
[0032]
The switching circuit 33 outputs a rewrite signal for the signal line 104 to the signal line 107. At this time, since the switching signal of the decoder 37 is “0” and the data control circuit 21 outputs “Hi-z”, the data output from the PROM 11 is compared until the next address signal is input. It is supplied to the circuit 12. As described above, even when the data comparison is performed and the addresses are sequentially incremented, the same operation is repeated until the data comparison becomes inconsistent.
[0033]
Next, as a second operation example, an operation when the first data supplied from the outside and the first data of the PROM 11 do not match will be described.
[0034]
FIG. 6 shows a timing chart in that case. When data mismatch occurs (timing (F) in the figure), the comparison circuit 12 outputs “1” data to the signal line 105. At this time, the flip-flop 34 stores the “1” data of the signal line 105 in synchronization with the rising edge of the clock signal output from the timing generation circuit 36 and holds the output thereafter. The decoder 37 outputs “0, 0” and “1” to the signal line 109 and the signal line 106, respectively (Table 1). The switching circuit 33 receives “1” data on the signal line 106 and outputs a rewrite signal on the signal line 104 to the signal line 108. The tri-state buffer 21 receives “1” data on the signal line 106 and converts the data on the data bus 103 into data on the data bus 102. As a result, the PROM 11 receives a rewrite signal from the signal line 108, and the data in the designated address area is rewritten to data on the data bus 102 different from the original. Since the “1” data of the signal line 106 continues to be maintained, data verification is not performed even if the address signal is incremented thereafter, and the PROM 11 is sequentially rewritten with data given from the outside.
[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 decoder 37 is positioned as “no processing error”, it is not possible to recognize that the processing is wrong except for an authorized user.
[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 PROM 11 do not match will be described. FIG. 7 shows a timing chart in that case. Since the first data match, the flip-flop 34 holds the initial value “0”. When the second data mismatch occurs, the comparison circuit 12 outputs “1” data to the signal line 105. At this time, the flip-flop 35 stores "1" data of the signal line 105 in synchronization with the rising edge of the clock signal output from the timing generation circuit 36, and holds the output thereafter (timing (D) in the figure). The decoder 37 outputs “0, 1” and “0” to the signal line 109 and the signal line 106, respectively (Table 1). The switching circuit 33 receives “0” data on the signal line 106 and outputs a rewrite signal on the signal line 104 to the signal line 107. The tri-state buffer 21 receives “0” data on the signal line 106 and outputs “Hi-z”. As a result, when a signal is input from the signal line 107, the PROM 11 outputs the data in the designated address area to the data bus 103. Since the flip-flops 34 and 35 hold data, the decoder 37 also holds an output. Therefore, even though the second data is determined to be inconsistent, data rewriting is not performed even if the address signal is incremented thereafter.
[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 decoder 37 is positioned as “processing error”, the authorized user can immediately grasp the situation.
[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 PROM 11 will be described.
[0039]
FIG. 8 shows a timing chart in that case. Since the first and second data match, the flip-flops 34 and 35 hold the initial value “0”, respectively. When the third and subsequent data mismatch occurs, the comparison circuit 12 outputs “1” data to the signal line 105. At this time, the flip-flop 32 stores the “1” data of the signal line 105 in synchronization with the rising edge of the signal of the signal line 104 and holds the output thereafter (timing (F) in the figure). The decoder 37 outputs “1, 0” and “1” to the signal line 109 and the signal line 106, respectively (Table 1). The switching circuit 33 receives “1” data on the signal line 106 and outputs a rewrite signal on the signal line 104 to the signal line 108. The tri-state buffer 21 receives “1” data on the signal line 106 and converts the data on the data bus 103 into data on the data bus 102. As a result, the PROM 11 receives a rewrite signal from the signal line 108, and the data in the designated address area is rewritten to data on the data bus 102 different from the original. Since the “1” data of the signal line 106 continues to be maintained, data verification is not performed even if the address signal is incremented thereafter, and the PROM 11 is sequentially rewritten with data given from the outside.
[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 decoder 37 is positioned as “processing error”, the authorized user can immediately grasp the situation.
[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 SYMBOLS 1 Semiconductor device 2 Data control circuit 3 Memory control circuit 11 PROM
12 comparison circuit 21 tristate buffer 31 AND circuits 32, 34, 35 flip-flop 33 switching circuit 36 timing generation circuit 37 decoder 101 address bus 102 data bus 103 data bus 104 to 109 signal lines 301, 302, 303 signal line 901 ROM
902 Address bus 903 Data bus 904 Address counter 905 Output control circuit 906 Comparator 907 Mismatch flag

Claims (1)

外部からデータが供給される第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 .
JP2001191749A 2001-06-25 2001-06-25 Semiconductor device Expired - Fee Related JP4663162B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (7)

* Cited by examiner, † Cited by third party
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