JPH10240622A - Memory controller - Google Patents

Memory controller

Info

Publication number
JPH10240622A
JPH10240622A JP4095597A JP4095597A JPH10240622A JP H10240622 A JPH10240622 A JP H10240622A JP 4095597 A JP4095597 A JP 4095597A JP 4095597 A JP4095597 A JP 4095597A JP H10240622 A JPH10240622 A JP H10240622A
Authority
JP
Japan
Prior art keywords
address
read
data
memory
cpu
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.)
Withdrawn
Application number
JP4095597A
Other languages
Japanese (ja)
Inventor
Toru Asaeda
徹 朝枝
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP4095597A priority Critical patent/JPH10240622A/en
Publication of JPH10240622A publication Critical patent/JPH10240622A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)
  • Read Only Memory (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a memory controller capable of a protective processing and an unprotective processing to a flash memory by the normal read access to a CPU. SOLUTION: The CPU 10 supplies the low-order addresses of plural address signals to be supplied to the flash memory 50 at the time of performing the protective processing and the unprotective processing to a low-order address setting register 14 beforehand. Even in the case that the bit width of the internal data bus of the CPU 10 is larger than the bit width of an external data bus and plural addresses are outputted from the CPU 10 in the read access of one time, since the low-order addresses are replaced in an address selection circuit 15, the protective processing or the unprotective processing is performed by the normal read operation of the CPU 10.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、不揮発性メモリ
装置に対するデータの読出/書込動作を制御するメモリ
制御装置に関し、より特定的には、フラッシュメモリに
対するデータの書込許可または書込禁止を制御するメモ
リ制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory control device for controlling a data read / write operation with respect to a nonvolatile memory device, and more particularly, to a data write permission or a write inhibition with respect to a flash memory. The present invention relates to a memory control device for controlling.

【0002】[0002]

【従来の技術】電気的にデータの書込および消去が可能
な不揮発性半導体メモリであるフラッシュメモリに対し
て、 記憶データの消去および書込を行なう際、 誤った書
込を防ぐ目的で設けられている書込禁止機能を解除する
必要がある。 このような処理を以下、 アンプロテクト処
理と呼ぶ。
2. Description of the Related Art When erasing and writing stored data in a flash memory which is a nonvolatile semiconductor memory capable of electrically writing and erasing data, the flash memory is provided to prevent erroneous writing. It is necessary to cancel the write-protection function that has been performed. Such a process is hereinafter referred to as an unprotect process.

【0003】また必要データの書込が終了した後は、 再
び書込禁止機能を働かせる必要がある。 このような処理
を、 以下、 プロテクト処理と呼ぶ。
After the necessary data has been written, the write inhibit function must be activated again. Such processing is hereinafter referred to as protection processing.

【0004】フラッシュメモリのプロテクト処理および
アンプロテクト処理は、 以下に説明するとおり、 所定の
複数のアドレスに対して所定の順序(組合せ)に従っ
て、 読出動作(以下、 リードアクセスと呼ぶ)を実行す
ることにより行なわれる。
In the protection processing and the unprotection processing of the flash memory, as described below, a read operation (hereinafter, referred to as read access) is performed on a plurality of predetermined addresses in a predetermined order (combination). It is performed by

【0005】図3は、中央演算処理装置(以下、CPU
と呼ぶ)10とフラッシュメモリ50を直接接続した場
合のデータのやり取りを概念的に示す図である。
FIG. 3 shows a central processing unit (hereinafter referred to as a CPU).
FIG. 2 is a diagram conceptually showing data exchange when the flash memory 50 is directly connected to the flash memory 50.

【0006】まず、フラッシュメモリ50に対するデー
タの読出または書込動作について、以下、簡単に説明す
る。
First, the operation of reading data from or writing data to the flash memory 50 will be briefly described below.

【0007】CPU10は、データの読出動作において
は、フラッシュメモリ50に対するリード制御信号を活
性とするとともに、フラッシュメモリ50に対してアド
レス信号Add[15..0]を与える。応じて、フラ
ッシュメモリ50はアドレス信号により選択されたメモ
リセルからの読出データをCPU10に対して返すこと
で1回の読出動作が終了する。ただし、後に説明すると
おり、CPUの内部データバスのビット数と、外部デー
タバスのビット数が一致しない場合は、1単位の読込動
作期間には、複数回のデータ読出動作が含まれる。
In a data read operation, the CPU 10 activates a read control signal for the flash memory 50 and also supplies an address signal Add [15. . 0]. In response, flash memory 50 returns read data from the memory cell selected by the address signal to CPU 10, thereby completing one read operation. However, as described later, when the number of bits of the internal data bus of the CPU does not match the number of bits of the external data bus, one unit of the read operation period includes a plurality of data read operations.

【0008】また、CPU10は、データの書込動作に
おいては、フラッシュメモリ50に対するライト制御信
号を活性とするとともに、フラッシュメモリ50に対し
てアドレス信号Add[15..0]を与える。応じ
て、フラッシュメモリ50はアドレス信号により選択さ
れたメモリセルに対して、CPU10から与えられた書
込データを書込むことで1回の読出動作が終了する。
In the data write operation, the CPU 10 activates a write control signal for the flash memory 50 and also sends an address signal Add [15. . 0]. In response, flash memory 50 completes one read operation by writing the write data given from CPU 10 to the memory cell selected by the address signal.

【0009】次に、フラッシュメモリのプロテクト処理
は、 たとえば、 アドレス入力として、 16進数表現でO
x1823番地、 Ox1820番地、 Ox1822番
地、 Ox0418番地、 Ox041B番地、 Ox041
9番地、 Ox040A番地の順でリードアクセスするこ
とで実施される。
Next, the protection processing of the flash memory is performed, for example, by inputting an address as O in hexadecimal notation.
x1823, Ox1820, Ox1822, Ox0418, Ox041B, Ox041
This is implemented by performing read access in the order of address 9, address Ox040A.

【0010】また、 アンプロテクト処理は、 16進数表
現でOx1823番地、 Ox1820番地、 Ox182
2番地、 Ox0418番地、 Ox041B番地、 Ox0
419番地、 Ox041A番地の順でリードアクセスす
ることで実施される。
[0010] The unprotect processing is performed in hexadecimal notation at addresses Ox1823, Ox1820, and Ox182.
Address 2, Ox0418, Address Ox041B, Ox0
This is implemented by performing read access in the order of address 419 and address Ox041A.

【0011】SPARK(Scalable Proc
essor ARChitecture(登録商標))
アーキテクチャのCPUの場合、 内部データバスが32
ビットであるのに対し、 外部データバスが16ビットと
して使用すると、 リードアクセス時においては連続する
アドレスに対して16ビットデータを2回リードするこ
とで、 合計32ビット分のデータが読出される。
SPARK (Scalable Proc)
essor ARArchitecture (registered trademark))
Architecture CPU has 32 internal data buses
On the other hand, if the external data bus is used as 16 bits, a total of 32 bits of data are read by reading 16-bit data twice for consecutive addresses during read access.

【0012】つまり、この場合1単位の読込動作期間中
に2回のデータ読出動作が含まれることになる。
That is, in this case, two data read operations are included in one unit read operation period.

【0013】これは、 CPU内部に存在するキャッシュ
メモリの動作との整合性を保つためにデータのサイズが
8ビットであるか、 または16ビットであるかに関わら
ず、必ず32ビット分のデータの読出を行なう必要があ
るためである。
[0013] In order to maintain consistency with the operation of the cache memory existing in the CPU, the data size of 32 bits must be maintained regardless of whether the data size is 8 bits or 16 bits. This is because reading must be performed.

【0014】このCPUで、 外部データバスを16ビッ
トまたは8ビットとしてフラッシュメモリを接続する場
合、 上述したプロテクト処理またはアンプロテクト処理
のシーケンスを実施しようとする際に、 目的とするアド
レスに対するリードアクセスを行なうと、 連続したアド
レスに対するリードサイクル(合計32ビット分のデー
タ読出を行なうための複数のリードアクセスを称す)も
発生するため、 プロテクト処理およびアンプロテクト処
理を実現することができない。
When the CPU connects a flash memory with an external data bus of 16 bits or 8 bits, the read access to the target address is performed when the above-described sequence of the protect processing or the unprotect processing is performed. If this operation is performed, a read cycle (referred to as a plurality of read accesses for reading data of 32 bits in total) for consecutive addresses also occurs, so that it is impossible to realize the protect processing and the unprotect processing.

【0015】すなわち、 CPU10がフラッシュメモリ
のアドレスOx1823番地からのデータ読出を行なう
サイクルにおいては、 たとえば外部データバスが16ビ
ットの場合はCPUはOx1820番地、 Ox1822
番地の2アドレスを、外部バスが8ビットの場合は、O
x1820番地、 Ox1821番地、 Ox1822番
地、Ox1823番地の4アドレスを連続して出力する
ためである。
That is, in the cycle in which the CPU 10 reads data from the address Ox1823 of the flash memory, for example, when the external data bus has 16 bits, the CPU operates at the addresses Ox1820 and Ox1822.
Address 2 if the external bus is 8 bits
This is because four addresses of x1820, Ox1821, Ox1822, and Ox1823 are continuously output.

【0016】したがって、従来、フラッシュメモリのプ
ロテクト処理/アンプロテクト処理をSPARCアーキ
テクチャのCPUからのリードアクセスにより実現する
ための方法として、以下の2とおりの方法がある。
Therefore, conventionally, there are the following two methods for realizing the protection processing / unprotection processing of the flash memory by read access from the CPU of the SPARC architecture.

【0017】まず、第1には、外部データバスが32ビ
ットであって、CPUの内部データバスと同じ場合は、
CPUのリード動作が1サイクルで終了することを用い
るものである。
First, when the external data bus is 32 bits and is the same as the internal data bus of the CPU,
This is based on the fact that the read operation of the CPU is completed in one cycle.

【0018】図4は、このようなCPU10中の内部デ
ータバスのビット数と、外部データバスビット数とを一
致させるための構成の一例を示す概念図である。
FIG. 4 is a conceptual diagram showing an example of a configuration for matching the number of bits of the internal data bus in the CPU 10 with the number of bits of the external data bus.

【0019】すなわち、フラッシュメモリのデータ入出
力のワード長が8ビットであって、フラッシュメモリ1
個当りのデータバスが8ビットである場合、最低4個の
フラッシュメモリを図4に示すようにCPU10に接続
する。このような構成とすることで、CPU10側から
見た外部データバスのビット長は8×4=32ビットと
なって、内部データバスのビット数と一致する。これに
より、CPU10のリード動作が1サイクルで終了する
こととなり、プロテクト処理またはアンプロテクト処理
のために、CPU10はリード動作において1アドレス
ずつフラッシュメモリ50に与えることが可能となる。
That is, the data length of the data input / output of the flash memory is 8 bits, and the flash memory 1
When the data bus per unit is 8 bits, at least four flash memories are connected to the CPU 10 as shown in FIG. With such a configuration, the bit length of the external data bus as viewed from the CPU 10 is 8 × 4 = 32 bits, which matches the number of bits of the internal data bus. As a result, the read operation of the CPU 10 is completed in one cycle, and the CPU 10 can give the address to the flash memory 50 one address at a time in the read operation for the protection process or the unprotect process.

【0020】しかしながら、このような構成では、フラ
ッシュメモリが複数個必要となり、コストの増大および
実装面積の増大という点で不利である。
However, such a configuration requires a plurality of flash memories, which is disadvantageous in that the cost and the mounting area increase.

【0021】第2には、CPU10が外部データバスの
ビット幅以下のサイズのデータについてライト動作を行
なう場合には、アクセスサイクルが1回しか発生しない
ことを利用するものである。このために、CPU10と
フラッシュメモリの間に、CPU10により制御され
る、以下のような特殊な機能を有するインターフェース
回路を介在させる。
Second, when the CPU 10 performs a write operation on data having a size equal to or less than the bit width of the external data bus, it utilizes the fact that an access cycle occurs only once. For this purpose, an interface circuit having the following special functions controlled by the CPU 10 is interposed between the CPU 10 and the flash memory.

【0022】すなわち、プロテクト処理またはアンプロ
テクト処理を行なう場合は、CPU10からのライト制
御信号のパルスをフラッシュメモリのリード制御入力端
子に切換えて与える構成とするものである。
That is, when performing the protect processing or the unprotect processing, the pulse of the write control signal from the CPU 10 is switched to the read control input terminal of the flash memory and applied.

【0023】しかしながら、このような構成では、CP
U10は外部に対してライト動作を行ない、フラッシュ
メモリは外部に対してリード動作を行なうため、同一の
データバスでCPU10とフラッシュメモリ50とを接
続するとデータの衝突が発生してしまう。このため、上
記インターフェース回路は、フラッシュメモリ50とC
PU10間のデータバスを切断できる回路構成を有する
ことが必要となり、このようなインターフェース回路を
カスタムLSIで実現する際に外部ピンが増加してしま
うという問題がある。
However, in such a configuration, the CP
Since U10 performs a write operation to the outside and the flash memory performs a read operation to the outside, if the CPU 10 and the flash memory 50 are connected by the same data bus, data collision will occur. For this reason, the above-mentioned interface circuit includes the flash memory 50 and C
It is necessary to have a circuit configuration capable of disconnecting the data bus between the PUs 10, and there is a problem that the number of external pins increases when such an interface circuit is realized by a custom LSI.

【0024】本発明は、上記のような問題点を解決する
ためになされたものであって、フラッシュメモリ等の不
揮発性メモリに対するプロテクト処理またはアンプロテ
クト処理をCPUの通常のリード動作により可能とする
メモリ制御装置を提供することである。
SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems, and it is possible to perform a protect process or an unprotect process for a nonvolatile memory such as a flash memory by a normal read operation of a CPU. It is to provide a memory control device.

【0025】この発明の他の目的は、CPUとフラッシ
ュメモリ等をインターフェース接続した場合でも入出力
ピン数の増加を抑制することが可能なメモリ制御装置を
提供することである。
Another object of the present invention is to provide a memory control device capable of suppressing an increase in the number of input / output pins even when an interface between a CPU and a flash memory or the like is connected.

【0026】[0026]

【課題を解決するための手段】請求項1記載のメモリ制
御装置は、データの書込許可指示および書込禁止指示
が、所定の複数アドレスに対する読出動作の所定の組合
せで指定され、入出力データのワード長が第1のビット
数である不揮発性メモリ装置に対するデータの読出動作
および書込動作を制御するメモリ制御装置であって、第
1のビット数よりも大きな第2のビット数の長さの内部
データバスを有し、外部メモリからのデータの取込動作
においては、単位読込動作期間中に外部メモリに対して
与える読出アドレスの下位アドレスを連続的に変化させ
ることで、第2のビット数のデータの取込を行なうよう
に外部メモリの読出動作を制御する演算処理手段と、所
定の複数アドレスの下位アドレスを所定の組合せと対応
させて保持する記憶手段と、演算処理手段が、外部メモ
リとして不揮発性メモリ装置との間でデータの授受を行
なう場合に、書込許可指示および書込禁止指示を与える
ときは、出力される読出アドレスの下位アドレスを単位
読込動作期間ごとに、記憶手段中に保持された所定の複
数アドレスの下位アドレスにより順次置換えるアドレス
置換手段とを備える。
According to a first aspect of the present invention, there is provided a memory control device, wherein a data write enable instruction and a data write inhibit instruction are designated by a predetermined combination of read operations for a plurality of predetermined addresses. A memory control device for controlling a data read operation and a write operation for a nonvolatile memory device having a word length of a first bit number, wherein the length of the second bit number is larger than the first bit number In the operation of fetching data from the external memory, the lower bit of the read address given to the external memory during the unit read operation is continuously changed so that the second bit Arithmetic processing means for controlling the read operation of the external memory so as to take in a number of data, and storage for holding lower addresses of a plurality of predetermined addresses in association with a predetermined combination In the case where the stage and the arithmetic processing means exchange data with a nonvolatile memory device as an external memory, when giving a write enable instruction and a write inhibit instruction, the lower address of the output read address is set. Address replacement means for sequentially replacing by a lower address of a plurality of predetermined addresses held in the storage means for each unit read operation period.

【0027】請求項2記載のメモリ制御装置は、請求項
1記載のメモリ制御装置の構成に加えて、記憶手段は、
所定の組合せに対応するアドレス信号の個数の、少なく
とも下位アドレスのビット数分の記憶容量を有するレジ
スタメモリを含み、アドレス置換手段は、演算処理手段
に制御されて、データの書込許可指示および書込禁止指
示が出力されることを検知し、読出アドレスの下位アド
レスの置換処理を制御する動作モード制御手段と、動作
モード制御手段に制御されて、演算処理手段の単位読込
動作回数を計数し、記憶手段中の対応する下位アドレス
を選択するカウント手段と、動作モード制御手段に制御
されて、演算処理手段からの読出アドレスのうちの下位
アドレスおよび記憶手段中の選択された下位アドレスを
受けて、データの書込許可指示および書込禁止指示が出
力されているかに応じて、いずれかを不揮発性メモリ装
置に出力するアドレス選択手段とを含む。
According to a second aspect of the present invention, in addition to the configuration of the first aspect, the storage means further comprises:
A register memory having a storage capacity of at least the number of bits of the lower address of the number of address signals corresponding to the predetermined combination is provided. Operation mode control means for controlling the replacement of the lower address of the read address and detecting the output of the read inhibit instruction, and counting the number of unit read operations of the arithmetic processing means under the control of the operation mode control means, Counting means for selecting a corresponding lower address in the storage means, and receiving the lower address of the read addresses from the arithmetic processing means and the lower address selected in the storage means under the control of the operation mode control means, An address that outputs one of the data to the nonvolatile memory device according to whether the data write enable instruction or the write inhibit instruction is output. And a select means.

【0028】請求項3記載のメモリ制御装置は、請求項
2記載のメモリ制御装置の構成において、所定の組合せ
に対応するアドレスの下位アドレスは、演算処理手段か
らの書込制御に応じて、記憶手段に対して演算処理手段
から与えられる。
According to a third aspect of the present invention, in the memory controller according to the second aspect, the lower address of the address corresponding to the predetermined combination is stored in accordance with the write control from the arithmetic processing means. The means are provided from the arithmetic processing means.

【0029】[0029]

【発明の実施の形態】図1は、本発明の実施の形態のメ
モリ制御装置1000の構成を示す概略ブロック図であ
る。
FIG. 1 is a schematic block diagram showing a configuration of a memory control device 1000 according to an embodiment of the present invention.

【0030】図1を参照して、メモリ制御装置1000
は、フラッシュメモリ50に対するデータの読出または
書込動作を制御するCPU10と、後に説明するよう
に、プロテクト処理またはアンプロテクト処理時に、当
該処理時にフラッシュメモリに対して与えるアドレス信
号の下位アドレスAdd[1..0]を、その与える順
番に対応してそれぞれ格納する複数の、たとえば、7個
のレジスタを含む下位アドレス設定レジスタ14と、C
PU10からのリード制御信号が入力されるたびに、そ
の回数を計数し下位アドレス設定レジスタ14中の複数
のレジスタに順次データ出力を指示する読出レジスタ選
択回路12と、CPU10からの下位アドレスAdd
[1..0]と下位アドレス設定レジスタ14から出力
される下位アドレスAdd[1..0]とを受けて、い
ずれかを出力するアドレス選択回路15と、プロテクト
処理またはアンプロテクト処理時のCPU10とフラッ
シュメモリ50とのインターフェース動作を制御し、ア
ドレス選択回路15の下位アドレスの切り替え動作の制
御と読出レジスタ選択回路12のリセット動作の制御を
行なう動作モード制御レジスタ13とを含む。
Referring to FIG. 1, memory control device 1000
The CPU 10 controls the operation of reading or writing data from or to the flash memory 50, and, as will be described later, during a protection process or an unprotect process, a lower address Add [1] of an address signal given to the flash memory during the process. . . 0] are stored in correspondence with the given order, for example, a lower address setting register 14 including seven registers,
Each time a read control signal is input from the PU 10, the read register selection circuit 12 counts the number and sequentially instructs a plurality of registers in the lower address setting register 14 to output data, and a lower address Add from the CPU 10.
[1. . 0] and the lower address Add [1. . 0], and controls an interface operation between the CPU 10 and the flash memory 50 at the time of protection processing or unprotection processing to output one of them, and performs a switching operation of the lower address of the address selection circuit 15. An operation mode control register 13 for controlling and controlling the reset operation of the read register selection circuit 12 is included.

【0031】図2は、図1に示した構成のうち、読出レ
ジスタ選択回路12と下位アドレス設定レジスタ14と
の構成をより詳しく示すブロック図である。
FIG. 2 is a block diagram showing the configuration of the read register selection circuit 12 and the lower address setting register 14 in more detail in the configuration shown in FIG.

【0032】図2を参照して、下位アドレス設定レジス
タ14は、プロテクト処理またはアンプロテクト処理時
にフラッシュメモリ50に対して与えられるアドレスの
下位アドレスAdd[1..0]を記憶保持する複数の
(図2においては7個)レジスタ18〜24と、CPU
10からのライト制御信号およびアドレス信号Add
[2..0]に応じて、CPU10から与えられたデー
タを、アドレス信号Add[2..0]により選択され
たレジスタ18〜24のうちのいずれかに出力するセレ
クタ回路17とを含む。
Referring to FIG. 2, lower address setting register 14 stores a lower address Add [1... Of an address given to flash memory 50 at the time of protect processing or unprotect processing. . 0] and a plurality of (seven in FIG. 2) registers 18 to 24, and a CPU.
10 from the write control signal and the address signal Add.
[2. . 0] in response to the address signal Add [2. . 0], and a selector circuit 17 that outputs the data to any one of the registers 18 to 24 selected by [0].

【0033】読出レジスタ選択回路12は、動作モード
制御レジスタ13により制御されて、CPU10がプロ
テクト処理またはアンプロテクト処理の開始を指示した
場合、動作モード制御レジスタ13からのカウンタリセ
ット信号に応じて計数値をリセットし、CPU10から
のリード制御信号が活性化されるたびに動作モード制御
レジスタ13から出力されるカウントアップ信号の活性
化回数を計数するカウンタ回路26と、カウンタ回路2
6の出力に応じて順番にレジスタ18〜24の出力値を
選択して、アドレス選択回路15に対して出力するセレ
クタ回路15を含む。
The read register selection circuit 12 is controlled by the operation mode control register 13, and when the CPU 10 instructs the start of the protection processing or the unprotection processing, the readout register selection circuit 12 counts the count value according to the counter reset signal from the operation mode control register 13. And a counter circuit 26 for counting the number of times the count-up signal output from the operation mode control register 13 is activated each time the read control signal from the CPU 10 is activated,
6 includes a selector circuit 15 for sequentially selecting the output values of the registers 18 to 24 according to the output of the selector 6 and outputting the selected output value to the address selection circuit 15.

【0034】次に、メモリ制御回路1000の動作につ
いて説明する。まず、CPU10は、プロテクト処理を
行なうのか、アンプロテクト処理を行なうのかに応じ
て、レジスタ18〜24にフラッシュメモリに与えるべ
きアドレスの下位アドレスAdd[1..0]を予め書
込んでおく。
Next, the operation of the memory control circuit 1000 will be described. First, the CPU 10 assigns the lower addresses Add [1... Of the addresses to be given to the flash memory to the registers 18 to 24 depending on whether to perform the protect processing or the unprotect processing. . 0] is written in advance.

【0035】図2に示した例では、レジスタ18〜24
に対して、Ox02、Ox01、Ox03、Ox00、
Ox02、Ox00、Ox03が設定されている。これ
は、8ビットバスにフラッシュメモリに接続した場合に
プロテクト処理において、フラッシュメモリ50に対し
て連続して与える必要のあるアドレス、Ox1823番
地、 Ox1820番地、 Ox1822番地、 Ox041
8番地、 Ox041B番地、 Ox0419番地、 Ox0
40A番地の下位2ビットである。ただし、この対応づ
けは、後に説明するように、Ox040A番地の下位2
ビットがOx02であり、Ox0419番地の下位2ビ
ットがOx01であり、以下同様にして、Ox1823
番地の下位2ビットがOx03というように、順番は逆
に対応している。
In the example shown in FIG.
For Ox02, Ox01, Ox03, Ox00,
Ox02, Ox00, and Ox03 are set. This is because, when the flash memory is connected to the 8-bit bus, in the protection processing, addresses that need to be continuously given to the flash memory 50, addresses Ox1823, Ox1820, Ox1822, and Ox041
8, Ox041B, Ox0419, Ox0
Lower 2 bits of address 40A. However, this association is, as described later, with the lower two addresses of Ox040A.
The bit is Ox02, the lower two bits of address Ox0419 are Ox01, and so on.
The order corresponds in reverse, such as the lower two bits of the address being Ox03.

【0036】CPU10からフラッシュメモリ50に対
して、プロテクト処理またはアンプロテクト処理を行な
う場合、下位アドレス設定レジスタ14中のレジスタ1
8〜24に所定の下位アドレスAdd[1..0]を設
定した後に、CPU10は動作モード制御レジスタ13
の設定を行なう。
When performing a protect process or an unprotect process on the flash memory 50 from the CPU 10, the register 1 in the lower address setting register 14
8 to 24, a predetermined lower address Add [1. . 0], the CPU 10 sets the operation mode control register 13
Make the settings for

【0037】応じて、動作モード制御レジスタ13は、
読出レジスタ選択回路12中のカウンタ26にリセット
動作を指示し、アドレス選択回路15に対して下位アド
レス設定レジスタ14からの出力をフラッシュメモリ5
0に与える状態を選択する指示を与える。
Accordingly, the operation mode control register 13
The reset operation is instructed to the counter 26 in the read register selection circuit 12 and the output from the lower address setting register 14 is sent to the flash memory 5 to the address selection circuit 15.
An instruction to select a state to be given to 0 is given.

【0038】その後、CPU10は、フラッシュメモリ
50に対して、Ox1823番地、Ox1820番地、
Ox1822番地、 Ox0418番地、 Ox041B番
地、Ox0419番地、 Ox040A番地の順のアドレ
スでリード動作を行なう。
Thereafter, the CPU 10 stores the addresses Ox1823, Ox1820,
The read operation is performed in the order of addresses Ox1822, Ox0418, Ox041B, Ox0419, and Ox040A.

【0039】このとき、CPU10は、32ビットのデ
ータを外部から取り込むために、例えば、Ox1823
番地のアドレスに対するリード動作においては、Ox1
820番地、 Ox1821番地、 Ox1822番地、 O
x1823番地の4つのアドレスを連続して出力する。
At this time, the CPU 10 reads, for example, Ox1823 in order to fetch 32-bit data from the outside.
In the read operation for the address of the address, Ox1
820 address, Ox1821 address, Ox1822 address, O
The four addresses of x1823 are continuously output.

【0040】ここで、CPU10から出力されるアドレ
スの下位2ビットAdd[1..0]を、下位アドレス
設定レジスタ14中のレジスタ24からの値であるOx
03に置換える。
Here, the lower two bits Add [1. . 0] is the value from the register 24 in the lower address setting register 14, Ox
Replace with 03.

【0041】次に、CPU10がOx1820番地に対
して読出動作を行なう際には、読出選択レジスタ12中
のカウンタ26の計数値が1だけインクリメントされ、
レジスタ23に保持されたOx00をアドレス信号の下
位2ビットAdd[1..0]に置換えて、フラッシュ
メモリ50に与える。
Next, when the CPU 10 performs a read operation on the address Ox1820, the count value of the counter 26 in the read selection register 12 is incremented by one.
The Ox00 held in the register 23 is stored in the lower two bits Add [1. . 0] to the flash memory 50.

【0042】同様のリードアクセスを、合計7回繰り返
すことでフラッシュメモリのアドレス入力に対してプロ
テクト/アンプロテクトに必要な読出アドレスを与える
ことができ、フラッシュメモリ50をCPU10のデー
タバスに直接つないだ場合でも、プロテクト処理または
アンプロテクト処理実現することが可能となる。
By repeating the same read access a total of seven times, a read address necessary for protection / unprotection can be given to the address input of the flash memory, and the flash memory 50 is directly connected to the data bus of the CPU 10. Even in this case, it is possible to realize the protection processing or the unprotection processing.

【0043】[0043]

【発明の効果】以上説明したとおり、本発明によれば、
フラッシュメモリ等の不揮発性メモリをCPUのデータ
バスに直接接続し、プロテクト処理/アンプロテクト処
理を、通常のCPUのリードアクセスで実現することが
可能となる。
As described above, according to the present invention,
By connecting a non-volatile memory such as a flash memory directly to the data bus of the CPU, the protection processing / unprotection processing can be realized by ordinary CPU read access.

【0044】さらに、CPUとフラッシュメモリ等のイ
ンターフェースをASIC(特定用途向けIC)で構成
した場合も入出力ピン数の削減を図ることが可能であ
る。
Further, the number of input / output pins can be reduced even when the interface between the CPU and the flash memory is constituted by an ASIC (IC for specific use).

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明のメモリ制御装置1000の構成を示す
概略ブロック図である。
FIG. 1 is a schematic block diagram showing a configuration of a memory control device 1000 of the present invention.

【図2】図1に示した読出レジスタ制御回路12および
下位アドレス設定レジスタ14の構成を示すブロック図
である。
FIG. 2 is a block diagram showing a configuration of a read register control circuit 12 and a lower address setting register 14 shown in FIG.

【図3】従来のCPU10とフラッシュメモリ50との
インターフェースの構成を示す概念図である。
FIG. 3 is a conceptual diagram showing a configuration of a conventional interface between a CPU 10 and a flash memory 50.

【図4】従来のCPU10の通常のリードアクセスでプ
ロテクト処理を可能とする構成を示す概略ブロック図で
ある。
FIG. 4 is a schematic block diagram showing a configuration that enables a protection process with normal read access of a conventional CPU 10.

【符号の説明】[Explanation of symbols]

10 CPU 12 読出レジスタ選択回路 13 動作モード制御レジスタ回路 14 下位アドレス設定レジスタ回路 15 アドレス選択回路 17、25 セレクタ回路 18〜24 レジスタ 26 カウンタ回路 50 フラッシュメモリ 1000 メモリ制御装置 DESCRIPTION OF SYMBOLS 10 CPU 12 Read register selection circuit 13 Operation mode control register circuit 14 Lower address setting register circuit 15 Address selection circuit 17, 25 Selector circuit 18-24 Register 26 Counter circuit 50 Flash memory 1000 Memory control device

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 データの書込許可指示および書込禁止指
示が、所定の複数アドレスに対する読出動作の所定の組
合せで指定され、入出力データのワード長が第1のビッ
ト数である不揮発性メモリ装置に対するデータの読出動
作および書込動作を制御するメモリ制御装置であって、 前記第1のビット数よりも大きな第2のビット数の長さ
の内部データバスを有し、外部メモリからのデータの取
込動作においては、単位読込動作期間中に前記外部メモ
リに対して与える読出アドレスの下位アドレスを連続的
に変化させることで、前記第2のビット数のデータの取
込を行なうように前記外部メモリの読出動作を制御する
演算処理手段と、 前記所定の複数アドレスの下位アドレスを前記所定の組
合せと対応させて保持する記憶手段と、 前記演算処理手段が、前記外部メモリとして前記不揮発
性メモリ装置との間でデータの授受を行なう場合に、前
記書込許可指示および前記書込禁止指示を与えるとき
は、出力される読出アドレスの下位アドレスを前記単位
読込動作期間ごとに、前記記憶手段中に保持された前記
所定の複数アドレスの下位アドレスにより順次置換える
アドレス置換手段とを備える、メモリ制御装置。
A nonvolatile memory in which a data write enable instruction and a data write inhibit instruction are designated by a predetermined combination of read operations for a plurality of predetermined addresses, and a word length of input / output data is the first number of bits. A memory control device for controlling a data read operation and a data write operation with respect to a device, comprising: an internal data bus having a length of a second bit number larger than the first bit number; In the fetch operation, the lower address of the read address given to the external memory is continuously changed during the unit read operation, so that the data of the second number of bits is fetched. Arithmetic processing means for controlling a read operation of the external memory; storage means for holding lower addresses of the predetermined plurality of addresses in association with the predetermined combination; When the stage transmits / receives data to / from the non-volatile memory device as the external memory, and gives the write enable instruction and the write inhibit instruction, the lower address of the output read address is A memory control device comprising: an address replacement unit that sequentially replaces the predetermined plurality of addresses stored in the storage unit with lower addresses for each unit read operation period.
【請求項2】 前記記憶手段は、 前記所定の組合せに対応するアドレス信号の個数の、少
なくとも前記下位アドレスのビット数分の記憶容量を有
するレジスタメモリを含み、 前記アドレス置換手段は、 前記演算処理手段に制御されて、データの書込許可指示
および書込禁止指示が出力されることを検知し、前記読
出アドレスの下位アドレスの置換処理を制御する動作モ
ード制御手段と、 前記動作モード制御手段に制御されて、前記演算処理手
段の単位読込動作回数を計数し、前記記憶手段中の対応
する前記下位アドレスを選択するカウント手段と、 前記動作モード制御手段に制御されて、前記演算処理手
段からの読出アドレスのうちの下位アドレスおよび前記
記憶手段中の選択された下位アドレスを受けて、データ
の書込許可指示および書込禁止指示が出力されているか
に応じて、いずれかを前記不揮発性メモリ装置に出力す
るアドレス選択手段とを含む、請求項1記載のメモリ制
御装置。
2. The storage unit includes a register memory having a storage capacity of at least the number of bits of the lower address of the number of address signals corresponding to the predetermined combination. An operation mode control means for detecting the output of a data write enable instruction and a data write inhibit instruction under the control of the means, and controlling a replacement process of a lower address of the read address; Counting means for counting the number of unit read operations of the arithmetic processing means, and selecting the corresponding lower address in the storage means; controlled by the operation mode control means, In response to the lower address of the read addresses and the lower address selected in the storage means, a data write enable instruction and a write Inhibition instruction, depending on whether is output, and an address selecting means for outputting either said non-volatile memory device, the memory control device according to claim 1.
【請求項3】 前記所定の組合せに対応するアドレスの
下位アドレスは、前記演算処理手段からの書込制御に応
じて、前記記憶手段に対して前記演算処理手段から与え
られる、請求項2記載のメモリ制御装置。
3. The arithmetic processing unit according to claim 2, wherein a lower address of an address corresponding to the predetermined combination is provided from the arithmetic processing unit to the storage unit in accordance with write control from the arithmetic processing unit. Memory controller.
JP4095597A 1997-02-25 1997-02-25 Memory controller Withdrawn JPH10240622A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4095597A JPH10240622A (en) 1997-02-25 1997-02-25 Memory controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4095597A JPH10240622A (en) 1997-02-25 1997-02-25 Memory controller

Publications (1)

Publication Number Publication Date
JPH10240622A true JPH10240622A (en) 1998-09-11

Family

ID=12594925

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4095597A Withdrawn JPH10240622A (en) 1997-02-25 1997-02-25 Memory controller

Country Status (1)

Country Link
JP (1) JPH10240622A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7366012B2 (en) * 2004-05-25 2008-04-29 Stmicroelectronics S.R.L. Synchronous memory device with reduced power consumption

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7366012B2 (en) * 2004-05-25 2008-04-29 Stmicroelectronics S.R.L. Synchronous memory device with reduced power consumption

Similar Documents

Publication Publication Date Title
US6542956B1 (en) Latched address multi-chunk write to EEPROM
US5954435A (en) Memory apparatus and data processor using the same
JP5076133B2 (en) Integrated circuit with flash
US20090204847A1 (en) Repairable block redundancy scheme
JPS6259822B2 (en)
JPH10500801A (en) EEPROM array with flash-like core
US8094511B2 (en) Non-volatile memory device having high speed serial interface
US20080209077A1 (en) Memory subsystem capable of using memory bank identification and method thereof
US20060230221A1 (en) Mobile electronic device and data process system utilizing the same
JP2000148590A (en) Device and method for locking cache
US7162563B2 (en) Semiconductor integrated circuit having changeable bus width of external data signal
JPH0748190B2 (en) Microprocessor with cache memory
JPH07114500A (en) Nonvolatile memory device
US7251711B2 (en) Apparatus and methods having a command sequence
JPH10240622A (en) Memory controller
JPH0362243A (en) Apparatus for quickening memory access in information processing system
JPH08235073A (en) Microcomputer
KR20030038320A (en) Semiconductor memory
US6519692B1 (en) Method for updating a pointer to access a memory address in a DSP
JP3190421B2 (en) IC memory card system
JPS6155755A (en) Memory control device
JPH02122344A (en) Buffer memory
JP3147236B2 (en) Cache memory device
JPH11353153A (en) Register setting circuit
JP3824295B2 (en) Nonvolatile semiconductor memory device

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040511