JP5083010B2 - Nonvolatile memory device and LSI device - Google Patents
Nonvolatile memory device and LSI device Download PDFInfo
- Publication number
- JP5083010B2 JP5083010B2 JP2008107205A JP2008107205A JP5083010B2 JP 5083010 B2 JP5083010 B2 JP 5083010B2 JP 2008107205 A JP2008107205 A JP 2008107205A JP 2008107205 A JP2008107205 A JP 2008107205A JP 5083010 B2 JP5083010 B2 JP 5083010B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- security code
- input
- physical
- storage means
- 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
Landscapes
- Storage Device Security (AREA)
Description
本発明は、半導体メモリ全般に適用可能な不揮発性メモリ及びLSI(large-scale integrated circuit)装置に係り、例えば、不正コピーを阻止しつつ、長寿命化を図り得る不揮発性メモリ装置及びLSI装置に関する。 The present invention relates to a non-volatile memory and an LSI (large-scale integrated circuit) device that can be applied to all semiconductor memories. For example, the present invention relates to a non-volatile memory device and an LSI device capable of extending the life while preventing unauthorized copying. .
フラッシュメモリを始めとする不揮発性メモリは、書換え可能機能を特徴とする反面、書き換え回数に制限があることや、セキュリティ上、ぜい弱な部分があるといった不都合な点がある。ここで、セキュリティ上のぜい弱な部分としては、例えば、メモリ内のデータを容易に不正コピーし得ることが挙げられる。 Non-volatile memories such as flash memories are characterized by a rewritable function, but have disadvantages such as a limited number of rewrites and weak points in terms of security. Here, as a security weak part, for example, data in a memory can be easily illegally copied.
この種の不正コピーは、従来のシステムではメモリ周辺機能にセキュリティ機能をもたせる方式が多く、メモリ自体にセキュリティ機能をもたせる方式が無かったため、メモリ自体からデータをコピーすることが容易であることに起因すると考えられる。 This type of illegal copying is due to the fact that in many conventional systems, there are many methods for providing security functions to the memory peripheral functions, and there is no method for providing security functions to the memory itself, so it is easy to copy data from the memory itself. I think that.
これに対し、メモリ内のデータの不正コピーを阻止する観点から、例えば特許文献1,2に記載の技術が提案されている。特許文献1に記載の技術は、暗号化データをメモリ領域に保持しておき、不正な読出処理の際には、復号を行わずに、メモリ領域内の暗号化データを出力するものである。特許文献2に記載の技術は、データをコピーする際に禁止アドレスをアクセスすると所定サイクル後に誤データが出力されるものである。
しかしながら、特許文献1,2に記載の技術は、本発明者の検討によれば、不正コピーを阻止する技術ではあるが、書き換え回数の制限については未だ改善の余地があると考えられる。なお、一般的なメモリ構造では、書換え空間がシステム上、同じ空間を利用するため、書き換え頻度の高い空間のみメモリ寿命が短くなる。
However, although the techniques described in
従って、不揮発性メモリにおいては、前述したような不正コピーを阻止しつつ、さらに、長寿命化を図る必要があると考えられる。 Therefore, in the nonvolatile memory, it is considered necessary to further extend the life while preventing the illegal copy as described above.
本発明は上記実情を考慮してなされたもので、不正コピーを阻止しつつ、長寿命化を図り得る不揮発性メモリ装置及びLSI装置を提供することを目的とする。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a nonvolatile memory device and an LSI device capable of extending the life while preventing unauthorized copying.
本発明の第1の局面は、物理アドレスに対応してデータを保持する読出/書込可能なメモリ部を備えた不揮発性メモリ装置であって、物理先頭アドレスを記憶するためのアドレス記憶手段と、セキュリティコードを記憶するためのセキュリティコード記憶手段と、コード設定命令及びセキュリティコードが入力されると、当該セキュリティコードを前記セキュリティコード記憶手段に書き込む手段と、前記セキュリティコード記憶手段内のセキュリティコードに基づいて前記物理先頭アドレスを決定し、当該決定した物理先頭アドレスを前記アドレス記憶手段に書き込む手段と、入力されたセキュリティコード、論理アドレス及び読出/書込命令を受け付ける手段と、前記入力されたセキュリティコードと前記セキュリティコード記憶手段内のセキュリティコードとを比較する手段と、この比較の結果、両者が一致した場合、前記入力された論理アドレスと前記アドレス記憶手段内の物理先頭アドレスとに基づいて、物理アドレスを算出する手段と、この算出した物理アドレス及び前記入力された読出/書込命令を前記メモリ部に送出する手段と、前記比較の結果、両者が不一致の場合、前記入力された論理アドレス又は偽のアドレスと、前記読出/書込命令とを前記メモリ部に送出する手段と、を備えた不揮発性メモリ装置である。 A first aspect of the present invention is a non-volatile memory device including a readable / writable memory unit that holds data corresponding to a physical address, and an address storage unit for storing a physical head address; A security code storing means for storing a security code, a means for writing the security code in the security code storing means when a code setting command and a security code are input, and a security code in the security code storing means Based on the physical head address, means for writing the determined physical head address to the address storage means, means for receiving the input security code, logical address and read / write command, and the input security Code and security code storage means Means for comparing the security code, and means for calculating a physical address based on the input logical address and the physical head address in the address storage means if they match as a result of the comparison; and The means for sending the calculated physical address and the inputted read / write command to the memory unit, and if the result of the comparison is that they do not match, the inputted logical address or false address, and the read / write Means for sending a write command to the memory unit.
本発明の第2の局面は、物理アドレスに対応してデータを保持する読出/書込可能なメモリ部を備えた不揮発性メモリ装置であって、物理先頭アドレスの各部分が置換されてなる被置換物理先頭アドレスを記憶するためのアドレス記憶手段と、システムコード毎に、配線パターン情報が記憶された配線パターン記憶手段と、入力される切替信号に基づいて配線パターンを切替可能な切替部を有し、当該配線パターン上に送出された物理先頭アドレスの各部分が前記切替部により置換されてなる被置換物理先頭アドレスを前記アドレス記憶手段に伝送するための配線手段と、セキュリティコードを記憶するためのセキュリティコード記憶手段と、コード設定命令及びセキュリティコードが入力されると、当該セキュリティコードを前記セキュリティコード記憶手段に書き込む手段と、システムコードが入力されると、前記入力されたシステムコードに基づいて、前記配線パターン記憶手段から読み出した配線パターン情報に対応する切替信号を前記切替部に入力すると共に、前記セキュリティコード記憶手段内のセキュリティコードに基づいて物理先頭アドレスを決定し、当該決定した物理先頭アドレスを、前記切替信号が入力された配線手段を介して前記被置換物理先頭アドレスとして前記アドレス記憶手段に書き込む手段と、入力されたセキュリティコード、システムコード、論理アドレス及び読出/書込命令を受け付ける手段と、前記入力されたセキュリティコードと前記セキュリティコード記憶手段内のセキュリティコードとを比較する手段と、この比較の結果、両者が一致した場合、前記入力されたシステムコードに基づいて、前記配線パターン記憶手段から読み出した配線パターン情報に対応する切替信号を前記切替部に入力すると共に、前記切替信号が入力された配線手段を介して前記アドレス記憶手段内の被置換物理先頭アドレスを物理先頭アドレスとして読み出す第1の物理アドレス読出手段と、前記第1の物理アドレス読出手段により読み出された物理アドレスと前記入力された論理アドレスとに基づいて、物理アドレスを算出する第1の物理アドレス算出手段と、前記比較の結果、両者が不一致の場合、前記切替信号を入力せずに、前記配線手段を介して前記アドレス記憶手段から被置換物理先頭アドレスを読み出す第2の物理アドレス読出手段と、前記第2の物理アドレス読出手段により読み出された被置換物理先頭アドレスと前記入力された論理アドレスとに基づいて、物理アドレスを算出する第2の物理アドレス算出手段と、前記第1又は第2の物理アドレス算出手段により算出された物理アドレス及び前記入力された読出/書込命令を前記メモリ部に送出する手段と、を備えた不揮発性メモリ装置である。 According to a second aspect of the present invention, there is provided a non-volatile memory device having a readable / writable memory unit for holding data corresponding to a physical address, wherein each part of the physical head address is replaced. Address storage means for storing the replacement physical head address, wiring pattern storage means for storing wiring pattern information for each system code, and a switching unit capable of switching the wiring pattern based on the input switching signal. In order to store the security code and the wiring means for transmitting to the address storage means the replaced physical head address obtained by replacing each part of the physical head address sent on the wiring pattern by the switching unit. Security code storage means, and a code setting command and a security code, the security code is stored in the security code. When a system code is input and a means for writing to the code storage means, a switching signal corresponding to the wiring pattern information read from the wiring pattern storage means is input to the switching section based on the input system code. The physical head address is determined based on the security code in the security code storage means, and the determined physical head address is stored as the replacement physical head address via the wiring means to which the switching signal is input. Means for writing in the means; means for receiving the input security code, system code, logical address and read / write command; means for comparing the input security code with the security code in the security code storage means; As a result of this comparison, both agree The switching signal corresponding to the wiring pattern information read from the wiring pattern storage unit is input to the switching unit based on the input system code, and the switching unit receives the switching signal via the wiring unit to which the switching signal is input. First physical address reading means for reading out a replacement physical head address in the address storage means as a physical head address, a physical address read by the first physical address reading means, and the input logical address Based on the first physical address calculation means for calculating the physical address and, if the result of the comparison is that they do not match, the replacement from the address storage means via the wiring means without inputting the switching signal Read by the second physical address reading means for reading the physical head address and the second physical address reading means. A second physical address calculating means for calculating a physical address based on the replaced physical head address and the inputted logical address; and a physical address calculated by the first or second physical address calculating means; A non-volatile memory device comprising: means for sending the input read / write command to the memory unit.
本発明の第3の局面は、物理アドレスに対応してデータを保持する読出/書込可能なメモリ部を備えた不揮発性メモリ装置であって、論理アドレスに関連付けて物理アドレスを記憶するためのアドレス記憶手段と、セキュリティコードを記憶するためのセキュリティコード記憶手段と、コード設定命令及びセキュリティコードが入力されると、当該セキュリティコードを前記セキュリティコード記憶手段に書き込む手段と、前記セキュリティコード記憶手段内のセキュリティコードに基づいて物理アドレスを決定し、当該決定した物理アドレスを当該物理アドレスとは異なる値の論理アドレスに関連付けるように前記アドレス記憶手段に書き込む手段と、入力されたセキュリティコード、論理アドレス及び読出/書込命令を受け付ける手段と、前記入力されたセキュリティコードと前記セキュリティコード記憶手段内のセキュリティコードとを比較する手段と、この比較の結果、両者が一致した場合、前記入力された論理アドレスを前記アドレス記憶手段に送出して当該アドレス記憶手段から物理アドレスを読み出す手段と、この読み出した物理アドレス及び前記入力された読出/書込命令を前記メモリ部に送出する手段と、前記比較の結果、両者が不一致の場合、前記入力された論理アドレス又は偽のアドレスと、前記読出/書込命令とを前記メモリ部に送出する手段と、を備えた不揮発性メモリ装置。 A third aspect of the present invention is a non-volatile memory device including a readable / writable memory unit that holds data corresponding to a physical address, and stores the physical address in association with the logical address. An address storage means, a security code storage means for storing a security code, a means for writing the security code in the security code storage means when a code setting instruction and a security code are input, and in the security code storage means A physical address is determined based on the security code, and a means for writing to the address storage means so as to associate the determined physical address with a logical address having a value different from the physical address, an input security code, a logical address, and Means for accepting read / write commands; The means for comparing the input security code with the security code in the security code storage means, and if the result of this comparison is that they match, the input logical address is sent to the address storage means to A means for reading a physical address from an address storage means; a means for sending the read physical address and the inputted read / write command to the memory unit; A non-volatile memory device comprising: a logical address or a false address; and a means for sending the read / write command to the memory unit.
本発明の第4の局面は、物理アドレスに対応してデータを保持する読出/書込可能なメモリ部を備えた不揮発性メモリ装置であって、論理アドレスの各部分が置換されてなる被置換論理アドレスに物理アドレスを関連付けて記憶するためのアドレス記憶手段と、システムコード毎に、配線パターン情報が記憶された配線パターン記憶手段と、入力される切替信号に基づいて配線パターンを切替可能な切替部を有し、当該配線パターン上に送出された論理アドレスの各部分が前記切替部により置換されてなる被置換論理アドレスを前記アドレス記憶手段に伝送するための配線手段と、セキュリティコードを記憶するためのセキュリティコード記憶手段と、コード設定命令及びセキュリティコードが入力されると、当該セキュリティコードを前記セキュリティコード記憶手段に書き込む手段と、前記セキュリティコード記憶手段内のセキュリティコードに基づいて物理アドレスを決定し、当該決定した物理アドレスを被置換論理アドレスに関連付けるように前記アドレス記憶手段に書き込む手段と、入力されたセキュリティコード、システムコード、論理アドレス及び読出/書込命令を受け付ける手段と、前記入力されたセキュリティコードと前記セキュリティコード記憶手段内のセキュリティコードとを比較する手段と、この比較の結果、両者が一致した場合、前記入力されたシステムコードに基づいて、前記配線パターン記憶手段から読み出した配線パターン情報に対応する切替信号を前記切替部に入力すると共に、前記入力された論理アドレスを、前記切替信号が入力された配線手段を介して被置換論理アドレスとしてアドレス記憶手段に送出して当該アドレス記憶手段から物理アドレスを読み出す第1の物理アドレス読出手段と、前記比較の結果、両者が不一致の場合、前記切替信号を入力せずに、前記入力された論理アドレスを前記配線手段からアドレス記憶手段に送出して当該アドレス記憶手段から物理アドレスを読み出す第2の物理アドレス読出手段と、前記第1又は第2の物理アドレス読出手段により読み出された物理アドレス及び前記入力された読出/書込命令を前記メモリ部に送出する手段と、を備えた不揮発性メモリ装置である。 According to a fourth aspect of the present invention, there is provided a non-volatile memory device having a readable / writable memory unit for holding data corresponding to a physical address, wherein each part of a logical address is replaced. Address storage means for storing a physical address in association with a logical address, wiring pattern storage means for storing wiring pattern information for each system code, and switching capable of switching a wiring pattern based on an input switching signal A wiring means for transmitting to the address storage means a replacement logical address in which each part of the logical address sent on the wiring pattern is replaced by the switching section, and stores a security code Security code storage means, and a code setting instruction and a security code are input, the security code is Means for writing to the security code storage means; means for determining a physical address based on the security code in the security code storage means; and writing to the address storage means so as to associate the determined physical address with the replacement logical address; Means for receiving the input security code, system code, logical address and read / write command; means for comparing the input security code with the security code in the security code storage means; as a result of this comparison; If they match, based on the input system code, a switching signal corresponding to the wiring pattern information read from the wiring pattern storage means is input to the switching unit, and the input logical address is Wiring with switching signal input The first physical address reading means for sending out the physical address from the address storage means by sending it to the address storage means as a replacement logical address via the stage, and if the comparison results in a mismatch, input the switching signal The second physical address reading means for reading the input logical address from the wiring means to the address storage means and reading the physical address from the address storage means, and the first or second physical address reading. A non-volatile memory device comprising: a physical address read by the means and a means for sending the input read / write command to the memory unit.
なお、第1〜第4の各局面の不揮発性メモリ装置はLSI装置に設けてもよい。ここでいう「LSI装置」の用語は、半導体集積回路の総称として用いており、集積度によるLSIの通常の定義(1000個以上で10万個未満の素子を搭載した半導体集積回路)には限定されず、例えば、IC、SSI、MSI、LSI(通常の定義)、VLSI、ULSI又はMPUなどの上位概念として使用されている。 Note that the nonvolatile memory devices of the first to fourth aspects may be provided in an LSI device. The term "LSI device" here is used as a general term for semiconductor integrated circuits, and is limited to the usual definition of LSIs based on the degree of integration (semiconductor integrated circuits with 1000 or more and less than 100,000 elements mounted). For example, it is used as a general concept such as IC, SSI, MSI, LSI (normal definition), VLSI, ULSI or MPU.
(作用)
第1〜第4の局面によれば、セキュリティコードが一致した場合にアドレス記憶手段から物理先頭アドレス又は物理アドレスを読み出した後に、得られた正しい物理アドレスでメモリ部にアクセスする構成により、不正コピーを阻止することができる。
(Function)
According to the first to fourth aspects, when the security codes match, the configuration is such that after reading the physical head address or physical address from the address storage means, the memory unit is accessed with the correct physical address obtained. Can be prevented.
また、第1〜第4の局面によれば、入力される論理アドレスと、メモリ部内の物理アドレスとが異なるため、メモリ部全体の書き換え頻度を均等にでき、長寿命化を図ることができる。 Further, according to the first to fourth aspects, since the input logical address and the physical address in the memory unit are different, the rewriting frequency of the entire memory unit can be made uniform, and the life can be extended.
以上説明したように本発明によれば、不正コピーを阻止しつつ、長寿命化を図ることができる。 As described above, according to the present invention, it is possible to extend the life while preventing unauthorized copying.
以下、本発明の各実施形態について図面を用いて説明する。
(第1の実施形態)
図1は本発明の第1の実施形態に係るLSI装置の構成を示す模式図であり、図2はこのLSI装置が有する不揮発性メモリ装置の構成を示す模式図である。このLSI装置は、CPU1がアドレスバス2、データバス3及びコントロールバス4を個別に介して不揮発性メモリ装置100に接続されており、各バス2〜4を介して不揮発性メモリ装置100にデータを読出/書込する機能と、通常のプログラム処理機能とをもっている。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(First embodiment)
FIG. 1 is a schematic diagram showing a configuration of an LSI device according to the first embodiment of the present invention, and FIG. 2 is a schematic diagram showing a configuration of a nonvolatile memory device included in the LSI device. In this LSI device, the CPU 1 is individually connected to the
不揮発性メモリ装置100は、フラッシュメモリ部10及びアドレス変換部20を備えている。
The
ここで、フラッシュメモリ部10は、物理アドレスに対応してデータを保持する読出/書込可能な不揮発性のメモリ部であり、アドレス変換部20からアクセス可能となっている。なお、保持データは任意であるが、例えば、通常のファイル等の他、LSI装置の機能を実現させるための基本データ(例、制御値、制御プログラム等)がある。この種の基本データは、LSI装置の動作性能を左右するものであり、システム開発者の独自の技術的知識(ノウハウ)により記述されるから、模倣・盗用を防ぐ観点からもCPU1のみが利用可能とし、外部から不正コピーされないことが望ましい。また、フラッシュメモリ部10としては、不揮発性メモリの一例としてフラッシュメモリを用いているが、これに限らず、例えば読出専用のROM等のように、フラッシュメモリ以外の不揮発性メモリを用いてもよい。
Here, the
アドレス変換部20は、アドレスメモリ21、セキュリティコード保存メモリ22、セキュリティコード設定部23、制御部24及びコード比較部25を備えている。
The
ここで、アドレスメモリ21は、制御部24から読出/書込可能であり、物理先頭アドレスを記憶するためのメモリである。
Here, the
セキュリティコード保存メモリ22は、セキュリティコード設定部23から読出/書込可能であり、コード比較部25から読出可能であって、セキュリティコードを記憶するためのメモリである。
The security
セキュリティコード設定部23は、CPU1からバス4,3を介してコード設定命令及びセキュリティコードが入力されると、当該セキュリティコードをセキュリティコード保存メモリ22に書き込む機能をもっている。
The security
制御部24は、セキュリティコード保存メモリ22内のセキュリティコードに基づいて物理先頭アドレスを決定し、当該決定した物理先頭アドレスをアドレスメモリ21に書き込む機能と、CPU1からバス3,2,4を介して入力されたセキュリティコード、論理アドレス及び読出/書込命令を受け付ける機能と、入力されたセキュリティコードをコード比較部25に送出する機能と、コード比較部25による比較の結果、両セキュリティコードが一致した場合、当該入力された論理アドレスとアドレスメモリ21内の物理先頭アドレスとに基づいて、物理アドレスを算出する機能と、この算出した物理アドレス及び入力された読出/書込命令をフラッシュメモリ部10に送出する機能と、コード比較部25による比較の結果、両セキュリティコードが不一致の場合、当該入力された論理アドレス又は偽のアドレスと、読出/書込命令とをフラッシュメモリ部10に送出する機能とをもっている。
The
なお、論理アドレスと物理先頭アドレスとに基づいて、物理アドレスを算出する機能としては、例えば、論理アドレスと物理先頭アドレスとを互いに加算する機能、又は論理アドレス及び物理先頭アドレスのうちの一方から他方を減算する機能といった任意の演算機能が使用可能となっている。また、論理アドレスと物理先頭アドレスとに基づいて物理アドレスを算出する機能として任意の演算機能を使用可能なことは、他の実施形態でも同様である。 The function for calculating the physical address based on the logical address and the physical head address is, for example, a function of adding the logical address and the physical head address to each other, or one of the logical address and the physical head address. Arbitrary arithmetic functions such as a function of subtracting can be used. The same applies to other embodiments that an arbitrary calculation function can be used as a function of calculating a physical address based on a logical address and a physical head address.
コード比較部25は、制御部24から受けた(CPU1からデータバス3を介して入力された)セキュリティコードとセキュリティコード保存メモリ22内のセキュリティコードとを比較する機能と、この比較結果を制御部24に送出する機能とをもっている。
The
次に、以上のように構成された不揮発性メモリ装置を備えたLSI装置の動作を図3及び図4のフローチャートを用いて初期化時及び読出/書込時の順に説明する。 Next, the operation of the LSI device including the nonvolatile memory device configured as described above will be described in the order of initialization and read / write using the flowcharts of FIGS.
(初期化時)
CPU1は、バス4,3を介してコード設定命令及びセキュリティコードを不揮発性メモリ装置100に入力する。
(At initialization)
The CPU 1 inputs a code setting command and a security code to the
不揮発性メモリ装置100においては、セキュリティコード設定部23が、この入力されたコード設定命令及びセキュリティコード****に基づいて、当該セキュリティコード****をセキュリティコード保存メモリ22に書き込むことにより、セキュリティコードを設定する(ST1)。また、セキュリティコード設定部23は、セキュリティコードの書込完了を制御部24に通知する。
In the
制御部24は、セキュリティコード保存メモリ22内のセキュリティコード****に基づいて物理先頭アドレス****を決定し、当該決定した物理先頭アドレス****をアドレスメモリ21に書き込む(ST2)。
The
これにより、初期化時の動作が完了する。 Thereby, the operation at the time of initialization is completed.
(読出/書込時)
CPU1は、バス3,2,4を介してセキュリティコード****、論理アドレス○○○○及び読出/書込命令を不揮発性メモリ装置100に入力する。なお、読出命令又は書込命令のうち、書込命令の場合には、この後、後述するステップST14に合わせたタイミングでCPU1は書込みデータをデータバス3に送出する。
(When reading / writing)
The CPU 1 inputs the security code ***, the logical address XXX, and the read / write command to the
不揮発性メモリ装置100においては、制御部24が、この入力されたセキュリティコード****、論理アドレス○○○○及び読出/書込命令を受け付けると(ST11)、当該入力されたセキュリティコード****をコード比較部25に送出する。
In the
コード比較部25は、このセキュリティコード****とセキュリティコード保存メモリ22内のセキュリティコード****とを比較し(ST12)、比較結果を制御部24に送出する。
The
制御部24は、コード比較部25による比較の結果、両セキュリティコードが一致した場合、CPU1から入力された論理アドレス○○○○とアドレスメモリ21内の物理先頭アドレス****とに基づいて、正しい物理アドレス※※※※(=****+○○○○)を算出し(ST13)、この正しい物理アドレス※※※※及び入力された読出/書込命令をフラッシュメモリ部10に送出する(ST14)。
As a result of the comparison by the
フラッシュメモリ部10では、読出/書込命令に基づいて、正しい物理アドレス※※※※に対応するデータ△△△△が読出/書込される。
In the
一方、コード比較部25による比較の結果、両セキュリティコードが不一致の場合、制御部24は、CPU1から入力された論理アドレス○○○○又は偽のアドレスと、読出/書込命令とをフラッシュメモリ部10に送出する(ST15)。
On the other hand, as a result of the comparison by the
フラッシュメモリ部10では、読出/書込命令に基づいて、論理アドレス○○○○又は偽のアドレスに対応するデータ(正しい物理アドレス※※※※に対応しないデータ)が読出/書込される。
In the
上述したように本実施形態によれば、セキュリティコードが一致した場合にアドレスメモリ21内の物理先頭アドレスに基づき、算出した正しい物理アドレスでフラッシュメモリ部10にアクセスする構成により、不正コピーを阻止することができる。また、セキュリティコードが不一致の場合、アドレスメモリ21にアクセスせずにフラッシュメモリ部10からデータを読み出すので、本来、意図したデータとは異なるデータが読み出される。
As described above, according to the present embodiment, when the security codes match, unauthorized copying is prevented by the configuration in which the
さらに、本実施形態によれば、入力される論理アドレスと、メモリ部内の物理アドレスとが異なるため、フラッシュメモリ部10全体の書き換え頻度を均等にでき、長寿命化を図ることができる。
Furthermore, according to the present embodiment, since the input logical address and the physical address in the memory unit are different, the rewriting frequency of the entire
例えば、従来技術では、図5に示すように、CPUから入力される論理アドレスと、フラッシュメモリ内の物理アドレスとが同一のため、物理先頭アドレス付近のメモリ領域の書き換え頻度が高いことから、メモリ寿命が短くなる。 For example, in the prior art, as shown in FIG. 5, since the logical address input from the CPU and the physical address in the flash memory are the same, the frequency of rewriting the memory area near the physical head address is high. Life is shortened.
これに対し、本実施形態は、セキュリティコードで決定される物理先頭アドレスの分だけ、図6に示すように、アドレス変換部20に入力される論理アドレスと、フラッシュメモリ部10内の物理アドレスとが異なるため、フラッシュメモリ部10全体に書き換え頻度が分散して均等化されることから、長寿命化を図ることができる。この場合、フラッシュメモリ部10においては、物理アドレス順にデータが配列されず、外見上、ランダムにデータが配列される。このような書き換え頻度の均等化は、例えばデータ毎に異なるセキュリティコードを設定することにより、より一層の向上を図ることができる。
On the other hand, in this embodiment, as shown in FIG. 6, the logical address input to the
(第2の実施形態)
図7は本発明の第2の実施形態に係るLSI装置の構成を示す模式図であり、図8はこのLSI装置が有する不揮発性メモリ装置の構成を示す模式図であって、前述した図面とほぼ同一部分には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。なお、以下の各実施形態も同様にして重複した説明を省略する。
(Second Embodiment)
FIG. 7 is a schematic diagram showing a configuration of an LSI device according to the second embodiment of the present invention. FIG. 8 is a schematic diagram showing a configuration of a nonvolatile memory device included in the LSI device. Substantially the same parts are denoted by the same reference numerals and detailed description thereof is omitted, and different parts are mainly described here. In the following embodiments, the same description is omitted.
すなわち、第2の実施形態は、第1の実施形態の変形例であり、システムコードに応じて攪拌した物理先頭アドレスをアドレスメモリ21aに保持する形態となっている。
That is, the second embodiment is a modification of the first embodiment, and has a form in which the physical head address agitated according to the system code is held in the
これに伴い、アドレス変換部20aは、前述したアドレス変換部20に比べ、アドレスメモリ21及び制御部24に代えて、アドレスメモリ21a、制御部24a、コード対応配線パターンメモリ26及び配線部27を備えた構成となっている。
Accordingly, the
ここで、アドレスメモリ21aは、制御部24aから配線部27を介して読出/書込可能であり、物理先頭アドレスの各部分が置換されてなる被置換物理先頭アドレスを記憶するためのメモリである。
Here, the
コード対応配線パターンメモリ26は、制御部24aから読出/書込可能であり、システムコード毎に、配線部27の配線パターン情報が記憶されたメモリである。
The code corresponding
ここで、配線パターン情報とは、制御部24a側のアドレス線と、アドレスメモリ21a側のアドレス線とが互いに異なる配線パターンを指定する情報である。図8に示す例では、制御部24a側のアドレス線をA0とし、アドレスメモリ21a側のアドレス線をA15とした配線パターンを指定している。但し、これに限らず、配線パターン情報は、制御部24a側のアドレス線とアドレスメモリ21a側のアドレス線とが互いに異なる配線パターンであれば、任意の配線パターンを指定可能となっている。このような配線パターン情報は、他の実施形態でも同様である。
Here, the wiring pattern information is information for designating a wiring pattern in which the address line on the
配線部27は、制御部24aとアドレスメモリ21aとの間のアドレス線の配線パターンと、制御部24aから入力される切替信号に基づいて当該配線パターンを切替可能な切替部とを有し、制御部24aから配線パターン上に送出された物理先頭アドレスの各部分が切替部により置換されてなる被置換物理先頭アドレスをアドレスメモリ21aに伝送するためのものである。ここで、切替部としては、例えばマルチプレクサが使用可能となっている。
The
制御部24aは、CPU1から専用線5を介してシステムコードが入力されると、この入力されたシステムコードに基づいて、コード対応配線パターンメモリ26から読み出した配線パターン情報に対応する切替信号を配線部27の切替部に入力すると共に、セキュリティコード保存メモリ22内のセキュリティコードに基づいて物理先頭アドレスを決定し、当該決定した物理先頭アドレスを、切替信号が入力された配線部27を介して被置換物理先頭アドレスとしてアドレスメモリ21aに書き込む機能と、CPU1からバス3,2,4を介して入力されたセキュリティコード、論理アドレス及び読出/書込命令とCPU1から専用線5を介して入力されたシステムコードとを受け付ける機能と、入力されたセキュリティコードをコード比較部25に送出する機能と、コード比較部25による比較の結果、両セキュリティコードが一致した場合、入力されたシステムコードに基づいて、コード対応配線パターンメモリ26から読み出した配線パターン情報に対応する切替信号を配線部27の切替部に入力すると共に、切替信号が入力された配線部27を介してアドレスメモリ21a内の被置換物理先頭アドレスを物理先頭アドレスとして読み出す第1の物理アドレス読出機能と、第1の物理アドレス読出機能により読み出された物理アドレスとCPU1から入力された論理アドレスとに基づいて、物理アドレスを算出する第1の物理アドレス算出機能と、コード比較部25による比較の結果、両者が不一致の場合、切替信号を入力せずに、配線部27を介してアドレスメモリ21aから被置換物理先頭アドレスを読み出す第2の物理アドレス読出機能と、第2の物理アドレス読出機能により読み出された被置換物理先頭アドレスとCPU1から入力された論理アドレスとに基づいて、物理アドレスを算出する第2の物理アドレス算出機能と、第1又は第2の物理アドレス算出機能により算出された物理アドレス及びCPU1から入力された読出/書込命令をフラッシュメモリ部10に送出する機能とをもっている。
When a system code is input from the CPU 1 via the
次に、以上のように構成された不揮発性メモリ装置を備えたLSI装置の動作を図9及び図10のフローチャートを用いて初期化時及び読出/書込時の順に説明する。 Next, the operation of the LSI device including the nonvolatile memory device configured as described above will be described in the order of initialization and read / write using the flowcharts of FIGS.
(初期化時)
CPU1は、バス4,3を介してコード設定命令及びセキュリティコードを不揮発性メモリ装置100に入力する。
(At initialization)
The CPU 1 inputs a code setting command and a security code to the
不揮発性メモリ装置100においては、セキュリティコード設定部23が、この入力されたコード設定命令及びセキュリティコード****に基づいて、当該セキュリティコード****をセキュリティコード保存メモリ22に書き込むことにより、セキュリティコードを設定する(ST21)。また、セキュリティコード設定部23は、セキュリティコードの書込完了を制御部24aに通知する。
In the
制御部24aは、CPU1から専用線5を介してシステムコード####が入力されると、この入力されたシステムコード####に基づいて、コード対応配線パターンメモリ26から読み出した配線パターン情報に対応する切替信号を配線部27の切替部に入力すると共に(ST22)、セキュリティコード保存メモリ22内のセキュリティコード****に基づいて物理先頭アドレス****を決定し、当該決定した物理先頭アドレス****を、切替信号が入力された配線部27を介して被置換物理先頭アドレス□□□□としてアドレスメモリ21aに書き込む(ST23)。
When the system code #### is input from the CPU 1 via the
これにより、初期化時の動作が完了する。 Thereby, the operation at the time of initialization is completed.
(読出/書込時)
CPU1は、バス3,2,4を介してセキュリティコード****、論理アドレス○○○○及び読出/書込命令を不揮発性メモリ装置100に入力する。なお、読出命令又は書込命令のうち、書込命令の場合には、この後、後述するステップST37に合わせたタイミングでCPU1は書込みデータをデータバス3に送出する。また、CPU1は、専用線5を介してシステムコード####を不揮発性メモリ装置100に入力する。
(When reading / writing)
The CPU 1 inputs the security code ***, the logical address XXX, and the read / write command to the
不揮発性メモリ装置100においては、制御部24aが、この入力されたセキュリティコード****、システムコード####、論理アドレス○○○○及び読出/書込命令を受け付けると(ST31)、当該入力されたセキュリティコード****をコード比較部25に送出する。
In the
コード比較部25は、このセキュリティコード****とセキュリティコード保存メモリ22内のセキュリティコード****とを比較し(ST32)、比較結果を制御部24aに送出する。
The
制御部24aは、コード比較部25による比較の結果、両セキュリティコードが一致した場合、CPU1から入力されたシステムコード####に基づいて、コード対応配線パターンメモリ26から読み出した配線パターン情報に対応する切替信号を配線部27の切替部に入力すると共に、切替信号が入力された配線部27を介してアドレスメモリ21a内の被置換物理先頭アドレス□□□□を物理先頭アドレス****として読み出す(ST33)。
As a result of the comparison by the
また、制御部24aは、ステップST33で読み出された物理先頭アドレス****とCPU1から入力された論理アドレス○○○○とに基づいて、正しい物理アドレス※※※※(=****+○○○○)を算出する(ST34)。
Further, the
一方、制御部24aは、ステップST32における比較の結果、両者が不一致の場合、切替信号を入力せずに、配線部27を介してアドレスメモリ21aから被置換物理先頭アドレス□□□□を読み出す(ST35)。
On the other hand, if the result of comparison in step ST32 is that they do not match, the
また、制御部24aは、ステップST35で読み出された被置換物理先頭アドレス□□□□とCPU1から入力された論理アドレス○○○○とに基づいて、偽の物理アドレス××××(=□□□□+○○○○)を算出する(ST36)。
Further, the
しかる後、制御部24aは、ステップST34で算出した正しい物理アドレス※※※※又はステップST36で算出した偽の物理アドレス××××と、入力された読出/書込命令とをフラッシュメモリ部10に送出する(ST37)。
Thereafter, the
正しい物理アドレス※※※※が送出された場合、フラッシュメモリ部10では、読出/書込命令に基づいて、正しい物理アドレス※※※※に対応するデータ△△△△が読出/書込される。
When the correct physical address *** is sent, the
一方、偽の物理アドレス××××が送出された場合、フラッシュメモリ部10では、読出/書込命令に基づいて、偽の物理アドレス××××に対応するデータ(正しい物理アドレス※※※※に対応しないデータ)が読出/書込される。
On the other hand, when a fake physical address XXX is sent, the
上述したように本実施形態によれば、第1の実施形態と同様に、不正コピーを阻止しつつ、長寿命化を図ることができる。 As described above, according to the present embodiment, as in the first embodiment, it is possible to extend the life while preventing unauthorized copying.
また、正しいセキュリティコードの入力に加え、CPU1が正しいシステムコードを入力しないと、制御部24aが正しい物理アドレスを算出できないので、第1の実施形態に比べ、より確実に、不正コピーを阻止することができる。
Further, if the CPU 1 does not input the correct system code in addition to the correct security code input, the
(第3の実施形態)
図11は本発明の第3の実施形態に係る不揮発性メモリ装置の構成を示す模式図であり、この不揮発性メモリ装置は図1に示したようにLSI装置に設けられている。
(Third embodiment)
FIG. 11 is a schematic diagram showing a configuration of a nonvolatile memory device according to the third embodiment of the present invention, and this nonvolatile memory device is provided in an LSI device as shown in FIG.
第3の実施形態は、第1の実施形態の変形例であり、論理アドレスに対応した物理アドレスをアドレスメモリ21bに保持する形態となっている。
The third embodiment is a modification of the first embodiment, and has a form in which a physical address corresponding to a logical address is held in the
これに伴い、アドレス変換部20bは、前述したアドレス変換部20に比べ、アドレスメモリ21及び制御部24に代えて、アドレスメモリ21b及び制御部24bを備えた構成となっている。
Accordingly, the
ここで、アドレスメモリ21bは、制御部24bから読出/書込可能であり、論理アドレスに関連付けて物理アドレスを記憶するためのメモリである。
Here, the
制御部24bは、セキュリティコード保存メモリ22内のセキュリティコードに基づいて物理アドレスを決定し、当該決定した物理アドレスを当該物理アドレスとは異なる値の論理アドレスに関連付けるようにアドレスメモリ21bに書き込む機能と、CPU1からバス3,2,4を介して入力されたセキュリティコード、論理アドレス及び読出/書込命令を受け付ける機能と、コード比較部25による比較の結果、両セキュリティコードが一致した場合、当該入力された論理アドレスをアドレスメモリ21bに送出して当該アドレスメモリ21bから物理アドレスを読み出す機能と、この読み出した物理アドレス及び入力された読出/書込命令をフラッシュメモリ部10に送出する機能と、コード比較部25による比較の結果、両セキュリティコードが不一致の場合、当該入力された論理アドレス又は偽のアドレスと、読出/書込命令とをフラッシュメモリ部10に送出する機能とをもっている。
The
次に、以上のように構成された不揮発性メモリ装置を備えたLSI装置の動作を図12及び図13のフローチャートを用いて初期化時及び読出/書込時の順に説明する。 Next, the operation of the LSI device including the nonvolatile memory device configured as described above will be described in the order of initialization and read / write using the flowcharts of FIGS.
(初期化時)
CPU1は、バス4,3を介してコード設定命令及びセキュリティコードを不揮発性メモリ装置100に入力する。
(At initialization)
The CPU 1 inputs a code setting command and a security code to the
不揮発性メモリ装置100においては、セキュリティコード設定部23が、この入力されたコード設定命令及びセキュリティコード****に基づいて、当該セキュリティコード****をセキュリティコード保存メモリ22に書き込むことにより、セキュリティコードを設定する(ST41)。また、セキュリティコード設定部23は、セキュリティコードの書込完了を制御部24bに通知する。
In the
制御部24bは、セキュリティコード保存メモリ22内のセキュリティコード****に基づいて物理アドレス※※※※を決定し、当該決定した物理アドレス※※※※をアドレスメモリ21bに書き込む(ST42)。
The
これにより、初期化時の動作が完了する。 Thereby, the operation at the time of initialization is completed.
(読出/書込時)
CPU1は、バス3,2,4を介してセキュリティコード****、論理アドレス○○○○及び読出/書込命令を不揮発性メモリ装置100に入力する。なお、読出命令又は書込命令のうち、書込命令の場合には、この後、後述するステップST54又はST55に合わせたタイミングでCPU1は書込みデータをデータバス3に送出する。
(When reading / writing)
The CPU 1 inputs the security code ***, the logical address XXX, and the read / write command to the
不揮発性メモリ装置100においては、制御部24bが、この入力されたセキュリティコード****、論理アドレス○○○○及び読出/書込命令を受け付けると(ST51)、当該入力されたセキュリティコード****をコード比較部25に送出する。
In the
コード比較部25は、このセキュリティコード****とセキュリティコード保存メモリ22内のセキュリティコード****とを比較し(ST52)、比較結果を制御部24bに送出する。
The
制御部24bは、コード比較部25による比較の結果、両セキュリティコードが一致した場合、当該入力された論理アドレス○○○○をアドレスメモリ21bに送出して当該アドレスメモリ21bから正しい物理アドレス※※※※を読み出す(ST53)。
If the two security codes match as a result of the comparison by the
しかる後、制御部24bは、この正しい物理アドレス※※※※及び入力された読出/書込命令をフラッシュメモリ部10に送出する(ST54)。
Thereafter, the
フラッシュメモリ部10では、読出/書込命令に基づいて、正しい物理アドレス※※※※に対応するデータ△△△△が読出/書込される。
In the
一方、コード比較部25による比較の結果、両セキュリティコードが不一致の場合、制御部24bは、CPU1から入力された論理アドレス○○○○又は偽のアドレスと、読出/書込命令とをフラッシュメモリ部10に送出する(ST55)。
On the other hand, as a result of the comparison by the
フラッシュメモリ部10では、読出/書込命令に基づいて、論理アドレス○○○○又は偽のアドレスに対応するデータ(正しい物理アドレス※※※※に対応しないデータ)が読出/書込される。
In the
上述したように本実施形態によれば、第1の実施形態と同様に、不正コピーを阻止しつつ、長寿命化を図ることができる。 As described above, according to the present embodiment, as in the first embodiment, it is possible to extend the life while preventing unauthorized copying.
これに加え、入力される論理アドレスと、フラッシュメモリ部10内の物理アドレスとは、アドレスメモリ21b内の関連付けに応じて異ならせることができるので、この関連付けに応じて、フラッシュメモリ部10内のデータ配列のランダム性を向上できると共に、書き込み頻度を均等にすることができる。
In addition to this, the input logical address and the physical address in the
(第4の実施形態)
図14は本発明の第4の実施形態に係る不揮発性メモリ装置の構成を示す模式図であり、この不揮発性メモリ装置は図7に示したようにLSI装置に設けられている。
(Fourth embodiment)
FIG. 14 is a schematic diagram showing a configuration of a nonvolatile memory device according to the fourth embodiment of the present invention, and this nonvolatile memory device is provided in an LSI device as shown in FIG.
第4の実施形態は、第2及び第3の実施形態の組合せ例であり、システムコードに応じて攪拌した論理アドレスをアドレスメモリ21cに保持し、且つ論理アドレスに対応した物理アドレスをアドレスメモリ21cに保持する形態となっている。
The fourth embodiment is a combination example of the second and third embodiments. The logical address agitated according to the system code is held in the
これに伴い、アドレス変換部20cは、前述したアドレス変換部20aに比べ、アドレスメモリ21a及び制御部24aに代えて、アドレスメモリ21c及び制御部24cを備えており、且つこのアドレスメモリ21cに接続された配線部27cを備えている。
Accordingly, the
ここで、アドレスメモリ21cは、制御部24cから配線部27cを介して読出/書込可能であり、論理アドレスの各部分が置換されてなる被置換論理アドレスに関連付けて物理アドレスを記憶するためのメモリである。
Here, the
配線部27cは、制御部24cとアドレスメモリ21cとの間のアドレス線の配線パターンと、制御部24cから入力される切替信号に基づいて当該配線パターンを切替可能な切替部とを有し、制御部24cから配線パターン上に送出された論理アドレスの各部分が切替部により置換されてなる被置換論理アドレスをアドレスメモリ21cに伝送するためのものである。ここで、切替部としては、例えばマルチプレクサが使用可能となっている。
The
制御部24cは、セキュリティコード保存メモリ22内のセキュリティコードに基づいて物理アドレスを決定し、当該決定した物理アドレスを被置換論理アドレスに関連付けるようにアドレスメモリ21cに書き込む機能と、CPU1からバス3,2,4を介して入力されたセキュリティコード、論理アドレス及び読出/書込命令とCPU1から専用線5を介して入力されたシステムコードとを受け付ける機能と、入力されたセキュリティコードをコード比較部25に送出する機能と、コード比較部25による比較の結果、両セキュリティコードが一致した場合、入力されたシステムコードに基づいて、コード対応配線パターンメモリ26から読み出した配線パターン情報に対応する切替信号を配線部27cの切替部に入力すると共に、CPU1から入力された論理アドレスを、切替信号が入力された配線部27cを介して被置換論理アドレスとしてアドレスメモリ21cに送出して当該アドレスメモリ21cから物理アドレスを読み出す第1の物理アドレス読出機能と、コード比較部25による比較の結果、両セキュリティコードが不一致の場合、切替信号を入力せずに、当該入力された論理アドレスを配線部27cからアドレスメモリ21cに送出して当該アドレスメモリ21cから物理アドレスを読み出す第2の物理アドレス読出機能と、第1又は第2の物理アドレス読出機能により読み出された物理アドレス及び入力された読出/書込命令をフラッシュメモリ部10に送出する機能とをもっている。
The
次に、以上のように構成された不揮発性メモリ装置を備えたLSI装置の動作を図15及び図16のフローチャートを用いて初期化時及び読出/書込時の順に説明する。 Next, the operation of the LSI device including the nonvolatile memory device configured as described above will be described in the order of initialization and read / write using the flowcharts of FIGS.
(初期化時)
CPU1は、バス4,3を介してコード設定命令及びセキュリティコードを不揮発性メモリ装置100に入力する。
(At initialization)
The CPU 1 inputs a code setting command and a security code to the
不揮発性メモリ装置100においては、セキュリティコード設定部23が、この入力されたコード設定命令及びセキュリティコード****に基づいて、当該セキュリティコード****をセキュリティコード保存メモリ22に書き込むことにより、セキュリティコードを設定する(ST61)。また、セキュリティコード設定部23は、セキュリティコードの書込完了を制御部24aに通知する。
In the
制御部24aは、CPU1から専用線5を介してシステムコード####が入力されると、この入力されたシステムコード####に基づいて、コード対応配線パターンメモリ26から読み出した配線パターン情報に対応する切替信号を配線部27cの切替部に入力すると共に(ST62)、セキュリティコード保存メモリ22内のセキュリティコード****に基づいて物理アドレス※※※※を決定し、当該決定した物理アドレス※※※※を、切替信号が入力された配線部27cを介した被置換論理アドレス□□□□に関連付けてアドレスメモリ21cに書き込む(ST63)。
When the system code #### is input from the CPU 1 via the
これにより、初期化時の動作が完了する。 Thereby, the operation at the time of initialization is completed.
(読出/書込時)
CPU1は、バス3,2,4を介してセキュリティコード****、論理アドレス○○○○及び読出/書込命令を不揮発性メモリ装置100に入力する。なお、読出命令又は書込命令のうち、書込命令の場合には、この後、後述するステップST75に合わせたタイミングでCPU1は書込みデータをデータバス3に送出する。また、CPU1は、専用線5を介してシステムコード####を不揮発性メモリ装置100に入力する。
(When reading / writing)
The CPU 1 inputs the security code ***, the logical address XXX, and the read / write command to the
不揮発性メモリ装置100においては、制御部24cが、この入力されたセキュリティコード****、システムコード####、論理アドレス○○○○及び読出/書込命令を受け付けると(ST71)、当該入力されたセキュリティコード****をコード比較部25に送出する。
In the
コード比較部25は、このセキュリティコード****とセキュリティコード保存メモリ22内のセキュリティコード****とを比較し(ST72)、比較結果を制御部24cに送出する。
The
制御部24cは、コード比較部25による比較の結果、両セキュリティコードが一致した場合、CPU1から入力されたシステムコード####に基づいて、コード対応配線パターンメモリ26から読み出した配線パターン情報に対応する切替信号を配線部27cの切替部に入力すると共に、CPU1から入力された論理アドレス○○○○を、切替信号が入力された配線部27cを介して被置換論理アドレス□□□□としてアドレスメモリ21cに送出して当該アドレスメモリ21cから正しい物理アドレス※※※※を読み出す(ST73)。
As a result of the comparison by the
一方、制御部24aは、ステップST72における比較の結果、両者が不一致の場合、切替信号を入力せずに、当該入力された論理アドレス○○○○を配線部27cからアドレスメモリ21cに送出して当該アドレスメモリ21cから偽の物理アドレス××××を読み出す(ST74)。
On the other hand, if the result of comparison in step ST72 is that they do not match, the
しかる後、制御部24aは、ステップST73で読み出した正しい物理アドレス※※※※又はステップST74で読み出した偽の物理アドレス××××と、入力された読出/書込命令とをフラッシュメモリ部10に送出する(ST75)。
Thereafter, the
正しい物理アドレス※※※※が送出された場合、フラッシュメモリ部10では、読出/書込命令に基づいて、正しい物理アドレス※※※※に対応するデータ△△△△が読出/書込される。
When the correct physical address *** is sent, the
一方、偽の物理アドレス××××が送出された場合、フラッシュメモリ部10では、読出/書込命令に基づいて、偽の物理アドレス××××に対応するデータ(正しい物理アドレス※※※※に対応しないデータ)が読出/書込される。
On the other hand, when a fake physical address XXX is sent, the
上述したように本実施形態によれば、第2及び第3の実施形態と同様に、不正コピーをより確実に阻止しつつ、長寿命化を図ることができる。 As described above, according to the present embodiment, as in the second and third embodiments, it is possible to extend the life while preventing unauthorized copying more reliably.
例えば、正しいセキュリティコードの入力に加え、CPU1が正しいシステムコードを入力しないと、制御部24cがメモリアドレス21cから正しい物理アドレスを読み出せないので、第3の実施形態に比べ、より確実に、不正コピーを阻止することができる。
For example, in addition to the correct security code input, if the CPU 1 does not input the correct system code, the
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。 Note that the method described in the above embodiment includes a magnetic disk (floppy (registered trademark) disk, hard disk, etc.), an optical disk (CD-ROM, DVD, etc.), a magneto-optical disk (MO) as programs that can be executed by a computer. ), And can be distributed in a storage medium such as a semiconductor memory.
また、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。 Further, the present invention is not limited to the above-described embodiments as they are, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. Moreover, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.
1…CPU、2…アドレスバス、3…データバス、4…コントロールバス、5…専用線、10…フラッシュメモリ部、20,20a,20b,20c…アドレス変換部、21,21a,21b,21c…アドレスメモリ、22…セキュリティコード保存メモリ、23…セキュリティコード設定部、24,24a,24b,24c…制御部、25…コード比較部、26…コード対応配線パターンメモリ、27,27c…配線部、100…不揮発性メモリ装置。 DESCRIPTION OF SYMBOLS 1 ... CPU, 2 ... Address bus, 3 ... Data bus, 4 ... Control bus, 5 ... Dedicated line, 10 ... Flash memory part, 20, 20a, 20b, 20c ... Address conversion part, 21, 21a, 21b, 21c ... Address memory, 22... Security code storage memory, 23... Security code setting unit, 24, 24 a, 24 b, 24 c... Control unit, 25... Code comparison unit, 26. ... Non-volatile memory device.
Claims (5)
物理先頭アドレスを記憶するためのアドレス記憶手段と、
セキュリティコードを記憶するためのセキュリティコード記憶手段と、
コード設定命令及びセキュリティコードが入力されると、当該セキュリティコードを前記セキュリティコード記憶手段に書き込む手段と、
前記セキュリティコード記憶手段内のセキュリティコードに基づいて前記物理先頭アドレスを決定し、当該決定した物理先頭アドレスを前記アドレス記憶手段に書き込む手段と、
入力されたセキュリティコード、論理アドレス及び読出/書込命令を受け付ける手段と、
前記入力されたセキュリティコードと前記セキュリティコード記憶手段内のセキュリティコードとを比較する手段と、
この比較の結果、両者が一致した場合、前記入力された論理アドレスと前記アドレス記憶手段内の物理先頭アドレスとに基づいて、物理アドレスを算出する手段と、
この算出した物理アドレス及び前記入力された読出/書込命令を前記メモリ部に送出する手段と、
前記比較の結果、両者が不一致の場合、前記入力された論理アドレス又は偽のアドレスと、前記読出/書込命令とを前記メモリ部に送出する手段と、
を備えたことを特徴とする不揮発性メモリ装置。 A non-volatile memory device including a readable / writable memory unit that holds data corresponding to a physical address,
Address storage means for storing a physical head address;
Security code storage means for storing the security code;
When a code setting instruction and a security code are input, means for writing the security code in the security code storage means;
Means for determining the physical head address based on a security code in the security code storage means, and writing the determined physical head address in the address storage means;
Means for receiving the input security code, logical address and read / write command;
Means for comparing the input security code with a security code in the security code storage means;
As a result of the comparison, if both match, a means for calculating a physical address based on the input logical address and the physical head address in the address storage means;
Means for sending the calculated physical address and the inputted read / write command to the memory unit;
If the result of the comparison is that they do not match, means for sending the input logical address or false address and the read / write command to the memory unit;
A non-volatile memory device comprising:
物理先頭アドレスの各部分が置換されてなる被置換物理先頭アドレスを記憶するためのアドレス記憶手段と、
システムコード毎に、配線パターン情報が記憶された配線パターン記憶手段と、
入力される切替信号に基づいて配線パターンを切替可能な切替部を有し、当該配線パターン上に送出された物理先頭アドレスの各部分が前記切替部により置換されてなる被置換物理先頭アドレスを前記アドレス記憶手段に伝送するための配線手段と、
セキュリティコードを記憶するためのセキュリティコード記憶手段と、
コード設定命令及びセキュリティコードが入力されると、当該セキュリティコードを前記セキュリティコード記憶手段に書き込む手段と、
システムコードが入力されると、前記入力されたシステムコードに基づいて、前記配線パターン記憶手段から読み出した配線パターン情報に対応する切替信号を前記切替部に入力すると共に、前記セキュリティコード記憶手段内のセキュリティコードに基づいて物理先頭アドレスを決定し、当該決定した物理先頭アドレスを、前記切替信号が入力された配線手段を介して前記被置換物理先頭アドレスとして前記アドレス記憶手段に書き込む手段と、
入力されたセキュリティコード、システムコード、論理アドレス及び読出/書込命令を受け付ける手段と、
前記入力されたセキュリティコードと前記セキュリティコード記憶手段内のセキュリティコードとを比較する手段と、
この比較の結果、両者が一致した場合、前記入力されたシステムコードに基づいて、前記配線パターン記憶手段から読み出した配線パターン情報に対応する切替信号を前記切替部に入力すると共に、前記切替信号が入力された配線手段を介して前記アドレス記憶手段内の被置換物理先頭アドレスを物理先頭アドレスとして読み出す第1の物理アドレス読出手段と、
前記第1の物理アドレス読出手段により読み出された物理アドレスと前記入力された論理アドレスとに基づいて、物理アドレスを算出する第1の物理アドレス算出手段と、
前記比較の結果、両者が不一致の場合、前記切替信号を入力せずに、前記配線手段を介して前記アドレス記憶手段から被置換物理先頭アドレスを読み出す第2の物理アドレス読出手段と、
前記第2の物理アドレス読出手段により読み出された被置換物理先頭アドレスと前記入力された論理アドレスとに基づいて、物理アドレスを算出する第2の物理アドレス算出手段と、
前記第1又は第2の物理アドレス算出手段により算出された物理アドレス及び前記入力された読出/書込命令を前記メモリ部に送出する手段と、
を備えたことを特徴とする不揮発性メモリ装置。 A non-volatile memory device including a readable / writable memory unit that holds data corresponding to a physical address,
Address storage means for storing a replacement physical head address obtained by replacing each part of the physical head address;
Wiring pattern storage means for storing wiring pattern information for each system code;
A switching unit capable of switching a wiring pattern based on an input switching signal, and a replacement physical head address obtained by replacing each part of a physical head address sent on the wiring pattern by the switching unit; Wiring means for transmitting to the address storage means;
Security code storage means for storing the security code;
When a code setting instruction and a security code are input, means for writing the security code in the security code storage means;
When the system code is input, based on the input system code, a switching signal corresponding to the wiring pattern information read from the wiring pattern storage unit is input to the switching unit, and in the security code storage unit Means for determining a physical head address based on a security code, and writing the determined physical head address into the address storage means as the replacement physical head address via the wiring means to which the switching signal is input;
Means for receiving the input security code, system code, logical address and read / write command;
Means for comparing the input security code with a security code in the security code storage means;
As a result of the comparison, if both match, based on the input system code, a switching signal corresponding to the wiring pattern information read from the wiring pattern storage means is input to the switching unit, and the switching signal is First physical address reading means for reading out the replacement physical head address in the address storage means as a physical head address via the input wiring means;
First physical address calculating means for calculating a physical address based on the physical address read by the first physical address reading means and the input logical address;
If the result of the comparison is that they do not match, the second physical address reading means for reading the replacement physical head address from the address storage means via the wiring means without inputting the switching signal;
Second physical address calculating means for calculating a physical address based on the replacement physical head address read by the second physical address reading means and the input logical address;
Means for sending the physical address calculated by the first or second physical address calculation means and the inputted read / write command to the memory unit;
A non-volatile memory device comprising:
論理アドレスに関連付けて物理アドレスを記憶するためのアドレス記憶手段と、
セキュリティコードを記憶するためのセキュリティコード記憶手段と、
コード設定命令及びセキュリティコードが入力されると、当該セキュリティコードを前記セキュリティコード記憶手段に書き込む手段と、
前記セキュリティコード記憶手段内のセキュリティコードに基づいて物理アドレスを決定し、当該決定した物理アドレスを当該物理アドレスとは異なる値の論理アドレスに関連付けるように前記アドレス記憶手段に書き込む手段と、
入力されたセキュリティコード、論理アドレス及び読出/書込命令を受け付ける手段と、
前記入力されたセキュリティコードと前記セキュリティコード記憶手段内のセキュリティコードとを比較する手段と、
この比較の結果、両者が一致した場合、前記入力された論理アドレスを前記アドレス記憶手段に送出して当該アドレス記憶手段から物理アドレスを読み出す手段と、
この読み出した物理アドレス及び前記入力された読出/書込命令を前記メモリ部に送出する手段と、
前記比較の結果、両者が不一致の場合、前記入力された論理アドレス又は偽のアドレスと、前記読出/書込命令とを前記メモリ部に送出する手段と、
を備えたことを特徴とする不揮発性メモリ装置。 A non-volatile memory device including a readable / writable memory unit that holds data corresponding to a physical address,
Address storage means for storing a physical address in association with a logical address;
Security code storage means for storing the security code;
When a code setting instruction and a security code are input, means for writing the security code in the security code storage means;
Means for determining a physical address based on a security code in the security code storage means, and writing the address to the address storage means so as to associate the determined physical address with a logical address having a value different from the physical address;
Means for receiving the input security code, logical address and read / write command;
Means for comparing the input security code with a security code in the security code storage means;
As a result of the comparison, if the two match, means for sending the input logical address to the address storage means and reading the physical address from the address storage means;
Means for sending the read physical address and the inputted read / write command to the memory unit;
If the result of the comparison is that they do not match, means for sending the input logical address or false address and the read / write command to the memory unit;
A non-volatile memory device comprising:
論理アドレスの各部分が置換されてなる被置換論理アドレスに物理アドレスを関連付けて記憶するためのアドレス記憶手段と、
システムコード毎に、配線パターン情報が記憶された配線パターン記憶手段と、
入力される切替信号に基づいて配線パターンを切替可能な切替部を有し、当該配線パターン上に送出された論理アドレスの各部分が前記切替部により置換されてなる被置換論理アドレスを前記アドレス記憶手段に伝送するための配線手段と、
セキュリティコードを記憶するためのセキュリティコード記憶手段と、
コード設定命令及びセキュリティコードが入力されると、当該セキュリティコードを前記セキュリティコード記憶手段に書き込む手段と、
前記セキュリティコード記憶手段内のセキュリティコードに基づいて物理アドレスを決定し、当該決定した物理アドレスを被置換論理アドレスに関連付けるように前記アドレス記憶手段に書き込む手段と、
入力されたセキュリティコード、システムコード、論理アドレス及び読出/書込命令を受け付ける手段と、
前記入力されたセキュリティコードと前記セキュリティコード記憶手段内のセキュリティコードとを比較する手段と、
この比較の結果、両者が一致した場合、前記入力されたシステムコードに基づいて、前記配線パターン記憶手段から読み出した配線パターン情報に対応する切替信号を前記切替部に入力すると共に、前記入力された論理アドレスを、前記切替信号が入力された配線手段を介して被置換論理アドレスとしてアドレス記憶手段に送出して当該アドレス記憶手段から物理アドレスを読み出す第1の物理アドレス読出手段と、
前記比較の結果、両者が不一致の場合、前記切替信号を入力せずに、前記入力された論理アドレスを前記配線手段からアドレス記憶手段に送出して当該アドレス記憶手段から物理アドレスを読み出す第2の物理アドレス読出手段と、
前記第1又は第2の物理アドレス読出手段により読み出された物理アドレス及び前記入力された読出/書込命令を前記メモリ部に送出する手段と、
を備えたことを特徴とする不揮発性メモリ装置。 A non-volatile memory device including a readable / writable memory unit that holds data corresponding to a physical address,
Address storage means for associating and storing a physical address with a replacement logical address in which each part of the logical address is replaced;
Wiring pattern storage means for storing wiring pattern information for each system code;
A switching unit that can switch a wiring pattern based on a switching signal that is input, and a logical address to be replaced in which each part of a logical address sent on the wiring pattern is replaced by the switching unit is stored in the address Wiring means for transmitting to the means;
Security code storage means for storing the security code;
When a code setting instruction and a security code are input, means for writing the security code in the security code storage means;
Means for determining a physical address based on a security code in the security code storage means, and writing the address to the address storage means so as to associate the determined physical address with a replacement logical address;
Means for receiving the input security code, system code, logical address and read / write command;
Means for comparing the input security code with a security code in the security code storage means;
As a result of this comparison, when both match, based on the input system code, a switching signal corresponding to the wiring pattern information read from the wiring pattern storage means is input to the switching unit and the input First physical address reading means for sending a logical address to the address storage means as a replacement logical address via the wiring means to which the switching signal is input, and reading the physical address from the address storage means;
As a result of the comparison, if they do not match, the second logical address is read out from the wiring means to the address storage means without inputting the switching signal, and the physical address is read out from the address storage means. Physical address reading means;
Means for sending the physical address read by the first or second physical address reading means and the inputted read / write command to the memory unit;
A non-volatile memory device comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008107205A JP5083010B2 (en) | 2008-04-16 | 2008-04-16 | Nonvolatile memory device and LSI device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008107205A JP5083010B2 (en) | 2008-04-16 | 2008-04-16 | Nonvolatile memory device and LSI device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2009258992A JP2009258992A (en) | 2009-11-05 |
| JP5083010B2 true JP5083010B2 (en) | 2012-11-28 |
Family
ID=41386331
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008107205A Expired - Fee Related JP5083010B2 (en) | 2008-04-16 | 2008-04-16 | Nonvolatile memory device and LSI device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5083010B2 (en) |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6486393A (en) * | 1987-09-28 | 1989-03-31 | Nec Corp | Memory card |
| JPH05130252A (en) * | 1991-11-05 | 1993-05-25 | Hitachi Ltd | Digital signal receiving and supplying system and digital voice signal processing circuit and signal conversion circuit |
| JPH06195268A (en) * | 1992-12-25 | 1994-07-15 | Fujitsu Ltd | IC memory card and data protection method and device thereof |
| JPH0869357A (en) * | 1994-08-26 | 1996-03-12 | Teac Corp | Disc recording / reproducing device |
| JPH1097468A (en) * | 1996-09-19 | 1998-04-14 | Toshiba Corp | Data recording / reproducing apparatus and security management method |
| JP2001117821A (en) * | 1999-10-22 | 2001-04-27 | Sony Corp | Recording medium, editing device, recording system |
| JP2001211162A (en) * | 2000-01-26 | 2001-08-03 | Sony Corp | Data processing system, recording device, data processing method, and program providing medium |
| TW508494B (en) * | 2001-03-28 | 2002-11-01 | Shansun Technology Company | Data protection device capable of self-defining address arrangement sequence in protection area of storage device |
| JP2005149262A (en) * | 2003-11-18 | 2005-06-09 | Renesas Technology Corp | Information processor |
-
2008
- 2008-04-16 JP JP2008107205A patent/JP5083010B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2009258992A (en) | 2009-11-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4160625B1 (en) | Error detection control system | |
| US20060015754A1 (en) | E-fuses for storing security version data | |
| JP4489030B2 (en) | Method and apparatus for providing a secure boot sequence within a processor | |
| US8719595B2 (en) | Semiconductor device including encryption section, semiconductor device including external interface, and content reproduction method | |
| TW449688B (en) | Microcomputer provided with flash memory and method of storing program into flash memory | |
| JP5204997B2 (en) | Gaming machine chips | |
| US6408387B1 (en) | Preventing unauthorized updates to a non-volatile memory | |
| JP2012014416A (en) | Recording device, writing device, reading device, and control method for recording device | |
| JP2006164273A (en) | Security boot apparatus and method | |
| JP4537003B2 (en) | Method for protecting a computer from unauthorized manipulation of register contents and computer for implementing this method | |
| JP5083010B2 (en) | Nonvolatile memory device and LSI device | |
| JP5560463B2 (en) | Semiconductor device | |
| JP2008065430A (en) | Semiconductor device and IC card | |
| JP2008152549A (en) | Memory device, and password storage method for memory device | |
| JP2000181802A (en) | Semiconductor storage device | |
| US20050055530A1 (en) | Method and apparatus for protecting a specific memory section | |
| JP2002189708A (en) | Flash memory mounted type single-chip microcomputer | |
| TWI845325B (en) | Control circuit and control method thereof | |
| US12566868B2 (en) | Apparatus and methods for binding a system on chip and a memory device with a key | |
| JP5494389B2 (en) | Electronic control unit | |
| JP2009217875A (en) | Memory device and control method thereof | |
| JP2011150495A (en) | Storage device | |
| JP2008226442A (en) | Semiconductor memory device | |
| JP2008077273A (en) | Data protection method in semiconductor memory card, and semiconductor memory card | |
| JP2007064762A (en) | Semiconductor device, test mode control circuit |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110322 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120315 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120727 |
|
| 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: 20120807 |
|
| 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: 20120820 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5083010 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150914 Year of fee payment: 3 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |