JPH11353223A - Flash memory controller and access method of flash memory controller - Google Patents

Flash memory controller and access method of flash memory controller

Info

Publication number
JPH11353223A
JPH11353223A JP10161146A JP16114698A JPH11353223A JP H11353223 A JPH11353223 A JP H11353223A JP 10161146 A JP10161146 A JP 10161146A JP 16114698 A JP16114698 A JP 16114698A JP H11353223 A JPH11353223 A JP H11353223A
Authority
JP
Japan
Prior art keywords
flash memory
data
memory
processor
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10161146A
Other languages
Japanese (ja)
Inventor
Naohiro Hosokawa
直洋 細川
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP10161146A priority Critical patent/JPH11353223A/en
Publication of JPH11353223A publication Critical patent/JPH11353223A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To execute a program and data processes by simple control procedures and to greatly improve software development efficiency by providing a memory control means which gains access to a flash memory according to data and addresses from a processor. SOLUTION: To the flash memory 203, an address bus, a data bus, and a control signal are connected through ASIC 202, which performs its own control over the flash memory 203. Namely, a data selector 107 selects either of data generated by a data generation block 300 or data on a CPU data bus 101. Then an access request from the CPU 201 to the flash memory 203 is recognized and while a specific command is generated to have transition to a program cycle, a memory control means executes specific memory access according to data and addresses from the CPU 201.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、プロセッサによる
フラッシュメモリに対するアクセスを制御するフラッシ
ュメモリ制御装置およびフラッシュメモリ制御装置のア
クセス方法に関するものである。
The present invention relates to a flash memory control device for controlling access to a flash memory by a processor and a method of accessing the flash memory control device.

【0002】[0002]

【従来の技術】従来、この種のフラッシュメモリアクセ
ス装置におけるメモリアクセス制御は、主にソフトウエ
アで行っていた。
2. Description of the Related Art Heretofore, memory access control in this type of flash memory access device has been performed mainly by software.

【0003】[0003]

【発明が解決しようとする課題】しかしながら、上記従
来例では、ソフトウエアで制御を行っていたため、ソフ
トウエアの処理の負荷の増大や、速度的に劣るという問
題点が生じていた。
However, in the above-mentioned conventional example, since control is performed by software, there has been a problem that the load of software processing increases and the speed is inferior.

【0004】本発明は、上記の問題点を解決するために
なされたもので、本発明の目的は、プロセッサからフラ
ッシュメモリに対するアクセス要求を認識して、所定の
コマンドを生成してプログラムサイクルに遷移させなが
ら、プロセッサからのデータとアドレスに基づいて所定
のメモリアクセスを実行することにより、プロセッサが
フラッシュメモリをあたかもROM,RAM等の汎用メ
モリデバイスと同様の制御でアクセスでき、フラッシュ
メモリを介して実行すべきプログラムやデータ処理を簡
便な制御手順で実行可能となり、ソフトウエア開発効率
を格段に向上できるフラッシュメモリ制御装置およびフ
ラッシュメモリ制御装置のアクセス方法を提供すること
である。
SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to recognize a request for access to a flash memory from a processor, generate a predetermined command, and transition to a program cycle. By executing predetermined memory access based on data and addresses from the processor, the processor can access the flash memory as if it were a general-purpose memory device such as a ROM or a RAM, and execute the memory via the flash memory. An object of the present invention is to provide a flash memory control device and an access method of the flash memory control device, which can execute a program and data processing to be executed by a simple control procedure, and can significantly improve software development efficiency.

【0005】[0005]

【課題を解決するための手段】本発明に係る第1の発明
は、プロセッサによるフラッシュメモリに対するアクセ
スを制御するフラッシュメモリ制御装置であって、前記
プロセッサによる前記フラッシュメモリに対する動作要
求を認識する認識手段と、前記認識手段により認識され
た動作要求に基づいて前記フラッシュメモリを所定のメ
モリサイクルに遷移させるコマンドを生成するコマンド
生成手段と、前記フラッシュメモリの動作状態を検出し
て前記プロセッサに通知する通知手段と、前記プロセッ
サからのデータ,アドレスに基づいて前記フラッシュメ
モリに対するメモリアクセスを実行するメモリ制御手段
とを有するものである。
A first invention according to the present invention is a flash memory control device for controlling access to a flash memory by a processor, and a recognizing means for recognizing an operation request for the flash memory by the processor. Command generation means for generating a command for causing the flash memory to transition to a predetermined memory cycle based on the operation request recognized by the recognition means; and a notification for detecting an operation state of the flash memory and notifying the processor. Means and memory control means for executing memory access to the flash memory based on data and addresses from the processor.

【0006】本発明に係る第2の発明は、前記プロセッ
サからのデータを保持するための第1のFIFOメモリ
と、前記プロセッサからのアドレスを保持するための第
2のFIFOメモリとを有し、前記メモリ制御手段は、
前記第1,第2のFIFOメモリに先読みされるデー
タ,アドレスに基づいて前記フラッシュメモリに対する
メモリアクセスを実行するものである。
A second invention according to the present invention has a first FIFO memory for holding data from the processor, and a second FIFO memory for holding an address from the processor, The memory control means,
A memory access to the flash memory is executed based on data and addresses prefetched into the first and second FIFO memories.

【0007】本発明に係る第3の発明は、プロセッサに
よるフラッシュメモリに対するアクセスを制御するフラ
ッシュメモリ制御装置のアクセス方法であって、前記プ
ロセッサによる前記フラッシュメモリに対する動作要求
を認識し、該認識された動作要求に基づいて前記フラッ
シュメモリを所定のメモリサイクルに遷移させるコマン
ドを生成し、該コマンドの生成後、前記プロセッサから
のデータ,アドレスに基づいて前記フラッシュメモリに
対するメモリアクセスを実行するものである。
A third invention according to the present invention is an access method of a flash memory control device for controlling access to a flash memory by a processor, wherein the operation request of the processor for the flash memory is recognized, and the recognized request is recognized. A command for causing the flash memory to transition to a predetermined memory cycle based on an operation request is generated, and after the command is generated, a memory access to the flash memory is performed based on data and addresses from the processor.

【0008】本発明に係る第4の発明は、前記フラッシ
ュメモリの動作状態を検出して前記プロセッサに通知す
るものである。
A fourth invention according to the present invention is to detect an operation state of the flash memory and notify the processor of the operation state.

【0009】[0009]

【発明の実施の形態】〔第1実施形態〕図1は、本発明
の第1実施形態を示すメモリ制御装置の構成を説明する
ブロック図である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS [First Embodiment] FIG. 1 is a block diagram illustrating a configuration of a memory control device according to a first embodiment of the present invention.

【0010】図において、101はデータバス(CPU
data bus)で、マイクロプロセッサ(CP
U)と接続される。102はFIFOメモリで、フラッ
シュメモリに書き込まれるデータを蓄える。103、1
04、105はレジスタで、フラッシュメモリに対し
て、書き込みコマンドを発行する際に使用されるデータ
D1、データD2、データD3をラッチする。
Referring to FIG. 1, reference numeral 101 denotes a data bus (CPU
data bus) and a microprocessor (CP
U). Reference numeral 102 denotes a FIFO memory which stores data to be written to a flash memory. 103, 1
Registers 04 and 105 latch data D1, data D2, and data D3 used when a write command is issued to the flash memory.

【0011】106はCPUデータバッファ(data
buffer)で、FIFOメモリ102から出力さ
れたデータを一時蓄える。107はデータセレクタで、
データバス101、レジスタ103〜106から1つの
データを選択する。108はフラッシュメモリ(fla
sh memory)と接続されるデータバス(fla
sh memory data buffer)であ
る。
Reference numeral 106 denotes a CPU data buffer (data).
buffer), the data output from the FIFO memory 102 is temporarily stored. 107 is a data selector.
One data is selected from the data bus 101 and the registers 103 to 106. 108 is a flash memory (flat
sh memory) and a data bus (fla)
sh memory data buffer).

【0012】111は(CPU)アドレスバス(add
ress bus)で、マイクロプロセッサと接続され
る。112はアドレスFIFOメモリで、フラッシュメ
モリに書き込まれるアドレス(address)を蓄え
る。113はレジスタで、フラッシュメモリに対して、
書き込みコマンドを発行する際に使用されるアドレスA
D1をラッチする。114はレジスタで、フラッシュメ
モリに対して、書き込みコマンドを発行する際に使用さ
れるアドレスAD2をラッチする。115はレジスタ
で、フラッシュメモリに対して、書き込みコマンドを発
行する際に使用されるアドレスAD3をラッチする。
Reference numeral 111 denotes a (CPU) address bus (add)
connection with the microprocessor. An address FIFO memory 112 stores addresses to be written to the flash memory. Reference numeral 113 denotes a register for the flash memory.
Address A used when issuing a write command
Latch D1. A register 114 latches an address AD2 used when a write command is issued to the flash memory. A register 115 latches an address AD3 used when a write command is issued to the flash memory.

【0013】116はCPUアドレスバッファ(add
ress buffer)で、FIFOメモリ112か
ら出力されたアドレスを一時蓄える。117はアドレス
セレクタで、CPUアドレスバス111、レジスタ11
3〜115、CPUアドレスバッファ116から1つの
アドレスを選択する。118はアドレスバス(addr
ess bus)で、フラッシュメモリと接続される。
Reference numeral 116 denotes a CPU address buffer (add)
The address output from the FIFO memory 112 is temporarily stored in a “resuffer buffer”. Reference numeral 117 denotes an address selector which includes a CPU address bus 111, a register 11
3 to 115, one address is selected from the CPU address buffer 116. 118 is an address bus (addr)
(ESS BUS), and is connected to the flash memory.

【0014】120はライト(CPU WR)信号で、
マイクロプロセッサからの該ライト信号120は信号作
成回路122に入力される。121はフラッシメモリチ
ップセレクト(flash memory CS)信号
で、マイクロプロセッサから該フラッシメモリチップセ
レクト信号121は、信号作成回路122に入力され
る。なお、信号作成回路122は内部コントロール信号
を作成する。
Reference numeral 120 denotes a write (CPU WR) signal.
The write signal 120 from the microprocessor is input to the signal generation circuit 122. Reference numeral 121 denotes a flash memory chip select (flash memory CS) signal. The flash memory chip select signal 121 is input from the microprocessor to the signal generation circuit 122. Note that the signal creation circuit 122 creates an internal control signal.

【0015】123はライト(write)信号で、信
号作成回路122から出力され、CPUがフラッシュメ
モリに書き込みを行ったことを認識して、ライトデータ
専用のFIFOをイネーブルにしてデータを取り込むた
めに生成される。124はFIFOFULLステータス
(FIFOFULL)信号で、FIFOメモリの空き情
報をタイミングコントローラ130に対して知らせる。
Reference numeral 123 denotes a write signal, which is output from the signal generation circuit 122 and generated to recognize the fact that the CPU has written to the flash memory and to enable a FIFO dedicated to write data to capture data. Is done. Reference numeral 124 denotes a FIFO FULL status (FIFO FULL) signal, which notifies the timing controller 130 of empty information of the FIFO memory.

【0016】125はFIFOステータス(statu
s)レジスタで、CPUから読むことのできるFIFO
メモリの空き情報をステータスFIFO status
として知らせる。126はCPUライトリクエスト(C
PU write request)信号で、信号作成
回路122よりタイミングコントローラ130に対して
出力される。なお、タイミングコントローラ130は、
フラッシュメモリコントローラの動作シーケンスを決定
する。また、タイミングコントローラ130には、クロ
ック(CLK)131,CPUからのリード信号(CP
U RD)132,CPUに対するウエイト(CPU
wait*)信号133が入力される。
Reference numeral 125 denotes a FIFO status (status)
s) FIFO which can be read from CPU by register
Status memory status information
Inform as 126 is a CPU write request (C
A PU write request signal is output from the signal creation circuit 122 to the timing controller 130. Note that the timing controller 130
Determine the operation sequence of the flash memory controller. Further, the timing controller 130 receives a clock (CLK) 131 and a read signal (CP) from the CPU.
URD) 132, weight for CPU (CPU
wait *) signal 133 is input.

【0017】134はフラッシュメモリより出力される
RDY/BUSY*信号であり、この信号が「1」のと
き、フラッシュメモリが読み出し可能または、新しいコ
マンド受付可能状態を示す。逆に、RDY/BUSY*
信号134が「0」のときは、フラッシュメモリが、プ
ログラムサイクルまたは、イレース動作中であることを
示す。
Reference numeral 134 denotes an RDY / BUSY * signal output from the flash memory. When this signal is "1", it indicates that the flash memory can be read or a new command can be accepted. Conversely, RDY / BUSY *
When the signal 134 is “0”, it indicates that the flash memory is performing a program cycle or an erase operation.

【0018】135はセレクタコントロール(Sele
ctor Control)信号で、データセレクタ1
07,アドレスセレクタ117のセレクタをコントロー
ルする。136はリード(read)信号で、FIFO
メモリ102,112に対して、データを取り出す際に
タイミングコントローラ130より出力される。
Reference numeral 135 denotes a selector control (SELELE).
ctor Control) signal and the data selector 1
07, the selector of the address selector 117 is controlled. 136 is a read (read) signal, FIFO
The data is output from the timing controller 130 when data is extracted from the memories 102 and 112.

【0019】140はタイミング作成回路(タイミング
ジェネレータ)で、実際のフラッシュメモリに対しての
コントロール信号を作成する。141は複数の駆動信号
で、タイミングコントローラ130より出力される。1
42はフラッシュメモリに出力されるリード(flas
h memory RD)信号である。143はフラッ
シュメモリに出力されるライト(flash memo
ry WR)信号である。144はフラッシュメモリに
出力されるチップセレクト(flash memory
CS)信号である。以下、実際の動作について説明す
る。
Reference numeral 140 denotes a timing generation circuit (timing generator) which generates a control signal for an actual flash memory. Reference numeral 141 denotes a plurality of drive signals which are output from the timing controller 130. 1
Reference numeral 42 denotes a read (flash) output to the flash memory.
h memory RD) signal. Reference numeral 143 denotes a write (flash memo) output to the flash memory.
ry WR) signal. 144 is a chip select (flash memory) output to the flash memory.
CS) signal. Hereinafter, the actual operation will be described.

【0020】電源立ち上げ後、CPUは、まず、データ
レジスタ103〜105、アドレスレジスタ113〜1
15をセットする。例えば、AMD社製のフラッシュメ
モリの場合は、データレジスタ103には「AAH」,
データレジスタ104には、「55H」、データレジス
タ105には、「A0H」、そしてアドレスレジスタ1
13には「5555h」、アドレスレジスタl14には
「2AAAh」、アドレスレジスタ115には「555
5H」をセットすることとなる。
After the power is turned on, the CPU first operates the data registers 103 to 105 and the address registers 113 to 1.
Set 15 For example, in the case of a flash memory manufactured by AMD, "AAH",
"55H" is stored in the data register 104, "A0H" is stored in the data register 105, and the address register 1
13 is “5555h”, the address register 114 is “2AAAh”, and the address register 115 is “555”.
5H "will be set.

【0021】次に、フラッシュメモリをソフトウエア制
御により、内容を消去しておく。これで書き込み前の準
備は終了することとなる。
Next, the contents of the flash memory are erased by software control. Thus, the preparation before writing is completed.

【0022】一方、書き込み動作を行う場合には、CP
Uは、通常のライト動作を本コントローラに対して行
う。この際、信号作成回路122は、ライト信号120
とチップセレクト信号121の信号状態から、フラッシ
ュメモリに対する書き込み動作を検出し、書き込みタイ
ミングに合わせて、FIFOメモリ102,112をイ
ネーブルにしてアドレスおよびデータを取り込む。
On the other hand, when performing a write operation,
U performs a normal write operation on this controller. At this time, the signal creation circuit 122 outputs the write signal 120
Then, a write operation to the flash memory is detected from the signal state of the chip select signal 121 and the FIFO memories 102 and 112 are enabled in accordance with the write timing to fetch addresses and data.

【0023】そして、該取り込まれたデータは、CPU
データバッファ106へと送られてラッチされる。ま
た、該取り込まれたアドレスは、CPUアドレスバッフ
ァ116ヘと送られてラッチされる。
The fetched data is stored in a CPU.
The data is sent to the data buffer 106 and latched. The fetched address is sent to the CPU address buffer 116 and latched.

【0024】また、信号作成回路122はフラッシュメ
モリに書き込み動作を始めるための起動信号であるCP
Uライトリクエスト信号126をタイミングコントロー
ラ130に対して出力する。
The signal creation circuit 122 is a start signal CP for starting a write operation to the flash memory.
A U write request signal 126 is output to the timing controller 130.

【0025】この起動信号により、動作を開始したタイ
ミングコントローラ130は、データセレクタ107を
制御してデータレジスタ103のデータD1を選択する
とともに、動作を開始したタイミングコントローラ13
0は、アドレスセレクタ117を制御してアドレスレジ
スタ113のアドレスAD1を選択する。
In response to this start signal, the timing controller 130 that has started operation controls the data selector 107 to select the data D1 of the data register 103, and the timing controller 13 that has started operation.
0 controls the address selector 117 to select the address AD1 of the address register 113.

【0026】また、同時に、タイミングジェネレータ1
40を起動し、この選ばれたアドレス,データに対し
て、使用するフラッシュメモリに必要なタイミングで、
コントロール信号142〜144を出力し、1回目のラ
イトサイクルを行う。このサイクル終了後、タイミング
コントローラ130は次のライトサイクルを行う。
At the same time, the timing generator 1
Activate the selected address and data at the timing required for the flash memory to be used.
The control signals 142 to 144 are output, and the first write cycle is performed. After this cycle ends, the timing controller 130 performs the next write cycle.

【0027】次に、タイミングコントローラ130は、
データセレクタ107を制御してデータレジスタ104
のデータD2を選択するとともに、動作を開始したタイ
ミングコントローラ130は、アドレスセレクタ117
を制御してアドレスレジスタ114のアドレスAD2を
選択する。
Next, the timing controller 130
By controlling the data selector 107, the data register 104
The timing controller 130 that has started the operation while selecting the data D2 of the
To select the address AD2 of the address register 114.

【0028】また、同時に、タイミングジェネレータ1
40を起動し、この選ばれたアドレスAD22、データ
D2に対して、使用するフラッシュメモリに必要なタイ
ミングで、コントロール信号142〜144を出力し、
2回目のライトサイクルを行う。
At the same time, the timing generator 1
40, and outputs control signals 142 to 144 for the selected address AD22 and data D2 at a timing necessary for the flash memory to be used.
The second write cycle is performed.

【0029】このサイクル終了後、タイミングコントロ
ーラ130は次のライトサイクルを行う。
After this cycle, the timing controller 130 performs the next write cycle.

【0030】次に、タイミングコントローラ130は、
データセレクタ107を制御してデータレジスタ105
のデータD3を選択するとともに、動作を開始したタイ
ミングコントローラ130は、アドレスセレクタ117
を制御してアドレスレジスタ115のアドレスAD3を
選択する。
Next, the timing controller 130
By controlling the data selector 107 and the data register 105
The timing controller 130 that has started the operation while selecting the data D3 of the
To select the address AD3 of the address register 115.

【0031】また、同時に、タイミングジェネレータ1
40を起動し、この選ばれたアドレスAD3、データD
3に対して、使用するフラッシュメモリに必要なタイミ
ングで、コントロール信号142〜144を出力し、3
回目のライトサイクルを行う。これで、フラッシュメモ
リは、プログラムサイクルに入るためのコマンド設定は
終了したこととなる。
At the same time, the timing generator 1
40 and activates the selected address AD3 and data D
3, the control signals 142 to 144 are output at the timing required for the flash memory to be used.
Perform the second write cycle. This means that the flash memory has completed the command setting for entering the program cycle.

【0032】次に、実際にプログラムを開始する。Next, the program is actually started.

【0033】まず、タイミングコントローラ130は、
セレクタ107を制御してデータ線は、CPUデータバ
ッファ106を選択するとともに、アドレスセレクタ1
17を制御してCPUアドレスバッファ116を選択す
る。
First, the timing controller 130
By controlling the selector 107, the data line selects the CPU data buffer 106 and the address selector 1
17 to select the CPU address buffer 116.

【0034】また、同時に、タイミングジェネレータ1
40を起動し、この選ばれたアドレス、データに対し
て、使用するフラッシュメモリに必要なタイミングで、
コントロール信号142〜144を出力し、4回目のラ
イトサイクルを行う。
At the same time, the timing generator 1
Activate the selected address and data at the timing required for the flash memory to be used.
The control signals 142 to 144 are output, and the fourth write cycle is performed.

【0035】実際のプログラム終了は、フラッシュメモ
リより出力されるRDY/BUSY*信号134が
「1」になったことで判断するため、この信号が「0」
の間は、タイミングコントローラ130はウエイト状態
となる。
Since the end of the actual program is determined by the fact that the RDY / BUSY * signal 134 output from the flash memory has become "1", this signal becomes "0".
During this period, the timing controller 130 is in the wait state.

【0036】またこの時、CPUよりフラッシュメモリ
に対して、リード要求があった場合、タイミングコント
ローラ130は、CPUに対してCPU wait*信
号133を出力して待機させることとなる。
At this time, when there is a read request from the CPU to the flash memory, the timing controller 130 outputs a CPU wait * signal 133 to the CPU and causes the CPU to wait.

【0037】本実施形態のフラッシュメモリコントロー
ラは、FIFOメモリ102とFIFOメモリ112の
データおよびアドレスFIFOを有しているため、前回
のプログラム動作が終了しなくても、FIFOメモリに
空きがある限りCPUは次の値をFIFOメモリに書き
込むことができる。
Since the flash memory controller of this embodiment has the data and address FIFOs of the FIFO memory 102 and the FIFO memory 112, even if the previous program operation is not completed, as long as there is free space in the FIFO memory, the CPU Can write the next value to the FIFO memory.

【0038】FIFOメモリステータス125からFI
FOメモリ102にデータが残っている場合に、リード
信号136を出力して、次のプログラムデータおよびそ
のアドレスを取り出し、CPUデータバッファ106と
CPUアドレスバッファ116のバッファに転送し該転
送後は、前述のプログラム動作を繰り返すこととなる。
From the FIFO memory status 125 to FI
When data remains in the FO memory 102, a read signal 136 is output, the next program data and its address are taken out, transferred to the buffers of the CPU data buffer 106 and the CPU address buffer 116, and after the transfer, Will be repeated.

【0039】図2は、図1に示したフラッシュメモリコ
ントローラが内蔵されたカスタムIC(以下ASICと
称す)とその周辺回路との対応を説明するブロック図で
ある。
FIG. 2 is a block diagram for explaining the correspondence between a custom IC (hereinafter referred to as an ASIC) incorporating the flash memory controller shown in FIG. 1 and its peripheral circuits.

【0040】図において、201はCPU、202はA
SICで、フラッシュメモリコントローラが内蔵されて
いる。203はフラッシュメモリである。203のフラ
ッシュメモリはアドレスバス、データバス、コントロー
ル信号をすべて、ASIC202を介して接続されてお
り、ASIC202は独自のコントロールをフラッシュ
メモリに対して行えるような構成となっている。
In the figure, 201 is a CPU, 202 is A
A flash memory controller is built in the SIC. 203 is a flash memory. The flash memory 203 is connected to an address bus, a data bus, and control signals via an ASIC 202, and the ASIC 202 is configured to perform its own control on the flash memory.

【0041】図3は、図2に示したASIC202の詳
細構成を説明するブロック図であり、図1と同一のもの
には同一の符号を付してある。
FIG. 3 is a block diagram for explaining the detailed configuration of the ASIC 202 shown in FIG. 2, and the same components as those in FIG. 1 are denoted by the same reference numerals.

【0042】図において、300は前記フラッシュメモ
リ203に対するデータを作成するデータ作成ブロック
(data generator)で、作成されたデー
タとCPUデータバス101上のデータのいずれかがデ
ータセレクタ107により選択される。
In the figure, reference numeral 300 denotes a data creation block (data generator) for creating data for the flash memory 203, and one of the created data and data on the CPU data bus 101 is selected by the data selector 107.

【0043】310は前記フラッシュメモリ203に対
するアドレスを作成するアドレスレス作成部(data
generator)で、作成したアドレスとCPU
アドレスバス111上のアドレスのいずれかがアドレス
セレクタ117により選択される。320はCPU(C
PU controll)コントロール信号であり、バ
スコントローラ(bus controller)32
1に対して送出される。322は前記フラッシュメモリ
203に対するコントロール信号で、バスコントローラ
321より送出される。
Reference numeral 310 denotes an addressless creation unit (data) for creating an address for the flash memory 203.
generator), the created address and CPU
One of the addresses on the address bus 111 is selected by the address selector 117. 320 is a CPU (C
PU control) and a bus controller 32
Sent for one. Reference numeral 322 denotes a control signal for the flash memory 203, which is sent from the bus controller 321.

【0044】〔第2実施形態〕図4は、本発明の第2実
施形態を示すメモリ制御装置の要部構成を説明するブロ
ック図であり、図1と同一のものには同一の符号を付し
てある。
[Second Embodiment] FIG. 4 is a block diagram for explaining a main configuration of a memory control device according to a second embodiment of the present invention. In FIG. I have.

【0045】図において、400はデータセットで、図
1に示したレジスタ103〜105のライトコマンド発
行用のデータD1がセットされる。401はデータセッ
トで、追加された、イレースコマンド発行用のデータD
2がセットされる。402は消去一時停止用のデータセ
ットで、消去一時停止用のデータD3がセットされる。
403は消去開始用のデータセットで、消去開始用のデ
ータD4がセットされる。
In the figure, reference numeral 400 denotes a data set in which data D1 for issuing a write command of the registers 103 to 105 shown in FIG. 1 is set. Reference numeral 401 denotes a data set which is added data D for issuing an erase command.
2 is set. Reference numeral 402 denotes a data set for temporarily stopping erasing, in which data D3 for temporarily stopping erasing is set.
Reference numeral 403 denotes a data set for starting erasing, in which data D4 for starting erasing is set.

【0046】410はアドレスセットで、図1に示した
レジスタ113〜ll5のライトコマンド発行用のアド
レスAD1がセットされる。411はイレースコマンド
発行用のアドレスセットで、追加されたイレースコマン
ド発行用のアドレスAD2がセットがセットされる。
An address set 410 is used to set an address AD1 for issuing a write command of the registers 113 to 115 shown in FIG. An address set 411 for issuing an erase command is set with an added address AD2 for issuing an erase command.

【0047】450はイレースセクタアドレス(era
se sector address)で、アドレスセ
ット411のうちイレースしたいセクタのアドレスであ
る。451は比較回路(コンパレータ)で、イレースセ
クタアドレス450とCPUアドレスバス111とを比
較する。452はイレースセクタヒット(erases
ector hit)信号で、コンパレータ451での
比較結果が一致したときに出力される。
450 is an erase sector address (era)
(sector address), which is the address of the sector to be erased in the address set 411. A comparison circuit (comparator) 451 compares the erase sector address 450 with the CPU address bus 111. 452 is an erase sector hit (erases
(Elector hit) signal, which is output when the comparison result of the comparator 451 matches.

【0048】なお、信号作成回路122には、CPUリ
ード(CPU RD)信号420が追加入力されCPU
がフラッシュメモリをリードするときに、CPUリード
リクエスト(CPU read request)信号
421を出力する回路が追加されている。また、タイミ
ングコントローラ130には、イレースリクエスト信号
(erase request)430が追加されてい
る。以下、図5を参照してフラッシュメモリコントロー
ラの動作シーケンスについて説明する。
Note that a CPU read (CPU RD) signal 420 is additionally input to the
A circuit for outputting a CPU read request signal 421 when the CPU reads a flash memory is added. In addition, an erase request signal (erase request) 430 is added to the timing controller 130. Hereinafter, an operation sequence of the flash memory controller will be described with reference to FIG.

【0049】図5は、図4に示したタイミングコントロ
ーラ130の動作を説明する図である。なお、501〜
509は各ステートを示す。
FIG. 5 is a diagram for explaining the operation of the timing controller 130 shown in FIG. In addition, 501-
509 indicates each state.

【0050】ステート501は、リセット(rese
t)ステートであり、電源ON後は、ここの状態からス
タートする。ステート502は、初期化(initia
lize)ステートである。まず、データセット400
〜402にデータをセットするとともに、アドレスセッ
ト410〜411にアドレスをセットし、CPUより実
際の値を書き込む。
The state 501 includes a reset (rese
t) state, and starts from this state after the power is turned on. State 502 is an initialization (initia)
(Lize) state. First, the data set 400
In addition to setting data in .about.402, an address is set in address sets 410 to 411, and an actual value is written from the CPU.

【0051】この初期化終了後、ステート503のノー
マルステート(normal)に移行する。ここでは、
フラッシュメモリコントローラ自体は、全く動作してい
ない。
After the completion of the initialization, the state shifts to the normal state (normal) of the state 503. here,
The flash memory controller itself is not operating at all.

【0052】ここで、CPUからフラッシュメモリに対
して、リード動作が行われた場合、ステート505のリ
ード(read)ステートに移行する。フラッシュメモ
リのすべての信号線は、本フラッシメモリコントローラ
を介して出力されるため、このステートにおいては、以
下に示す信号処理がなされる。
Here, when a read operation is performed from the CPU to the flash memory, the state shifts to a read state of state 505. Since all signal lines of the flash memory are output via the flash memory controller, the following signal processing is performed in this state.

【0053】まず、第1段階で、データセレクタ107
は、出力をディセーブルとし、本図には示していない
が、フラッシュメモリのデータが直接CPUデータバス
101に出力される。第2段階で、アドレスセレクタ1
17は、CPUアドレスバス111を選択し、フラッシ
ュメモリに出力する。
First, in the first stage, the data selector 107
Disables the output, and although not shown in the figure, data of the flash memory is directly output to the CPU data bus 101. In the second stage, address selector 1
17 selects the CPU address bus 111 and outputs it to the flash memory.

【0054】次に第3段階で、信号作成回路122は、
フラッシュメモリヘのリードサイクルを認識して、CP
Uリードリクエスト421を出力する。次の、第4段階
で、タイミングコントローラ130は、CPUリードリ
クエスト信号421を受けて、実際のリード信号をつく
らせるための起動信号141を出力する。そして、第5
段階で、タイミングジェネレータ140は、起動信号1
41を受け、クロック131を基本パルスとして、フラ
ッシュメモリのリードサイクルに合わせたコントロール
信号142〜144を作成する。このよにして、第1段
階から第5段階の動作すべて終了後、ステート503の
ノーマルステートに復帰する。
Next, in the third stage, the signal creation circuit 122
Recognizing the read cycle to the flash memory,
A U read request 421 is output. In the next, fourth step, the timing controller 130 receives the CPU read request signal 421 and outputs a start signal 141 for generating an actual read signal. And the fifth
In the stage, the timing generator 140
41, the control signals 142 to 144 are generated in accordance with the read cycle of the flash memory using the clock 131 as a basic pulse. In this manner, the state 503 returns to the normal state after all the operations in the first to fifth steps are completed.

【0055】また、CPUからフラッシメモリに対して
ライト動作が行われた場合、ステート504のライトス
テートに移行する。この場合以下のような動作を行う。
When a write operation is performed from the CPU to the flash memory, the state shifts to a write state 504. In this case, the following operation is performed.

【0056】まず、第1段階で、データセレクタ107
は、データセット400を順次選択して出力する。第2
段階で、アドレスセレクタ117は、アドレスセット4
10を順次選択して出力する。そして、第3段階で、信
号作成回路122は、フラッシュメモリヘのライトサイ
クルを認識して、ライトリクエスト126を出力する。
First, in the first stage, the data selector 107
Sequentially selects and outputs the data sets 400. Second
At this stage, the address selector 117 sets the address set 4
10 are sequentially selected and output. Then, in the third stage, the signal creation circuit 122 recognizes a write cycle to the flash memory and outputs a write request 126.

【0057】次に、第4段階で、タイミングコントロー
ラ130は、リクエスト信号126を受けて、プログラ
ム動作を行うためセレクタコントロール信号135を切
り替えながら、実際のライト信号をつくらせるための複
数回の起動信号141を出力する。そして、第5段階
で、タイミング作成回路140は、起動信号141を受
け、クロック131を基本パルスとして、フラッシュメ
モリのライトサイクルに合わせたコントロール信号14
2〜144を作成する。この動作は、プログラム動作を
行うのに必要な回数繰り返えされる。このようにして第
1段階から第5段階の上記動作をすべて終了した後、ス
テート503のノーマルステートに復帰する。
Next, in a fourth stage, upon receiving the request signal 126, the timing controller 130 switches the selector control signal 135 to perform a program operation, and performs a plurality of start signals for generating an actual write signal. 141 is output. Then, in the fifth stage, the timing generation circuit 140 receives the start signal 141 and uses the clock 131 as a basic pulse to generate the control signal 14 corresponding to the write cycle of the flash memory.
Create 2-144. This operation is repeated as many times as necessary to perform the program operation. After all of the above-described operations in the first to fifth stages are completed, the state returns to the normal state 503.

【0058】また、CPUからフラッシュメモリに対し
てイレース動作が行われた場合、ステート506のイレ
ース(erase)ステートに移行する。この場合以下
の第1段階から第5段階のような動作を行う。
When an erase operation is performed from the CPU to the flash memory, the state shifts to an erase state of state 506. In this case, the following operations from the first stage to the fifth stage are performed.

【0059】まず、第1段階で、データセレクタ107
は、データセット400を順次選択して出力する。第2
段階で、アドレスセレクタ117は、アドレスセット4
10を順次選択して出力する。第3段階で、タイミング
コントローラ130は、イレースリクエスト信号430
を受けて、イレース動作を行うためセレクタコントロー
ル信号136を切り替えながら、実際のライト信号をつ
くらせるための複数回の起動信号141を出力する。
First, in the first stage, the data selector 107
Sequentially selects and outputs the data sets 400. Second
At this stage, the address selector 117 sets the address set 4
10 are sequentially selected and output. In the third stage, the timing controller 130 sends the erase request signal 430
In response to this, while switching the selector control signal 136 to perform the erase operation, the activation signal 141 for generating the actual write signal is output a plurality of times.

【0060】そして、第4段階で、タイミングジェネレ
ータ140は、起動信号141を受け、クロック131
を基本パルスとして、フラッシュメモリのライトサイク
ルに合わせたコントロール信号142〜144を作成す
る。この動作はイレース動作を行うのに必要な回数繰り
返えされる。このようにして第1段階から第4段階の上
記動作をすべて終了した後、実際のイレース動作が始ま
り、イレース動作を終了した時に、ステート503のノ
ーマルステートに復帰する。
Then, in the fourth stage, the timing generator 140 receives the start signal 141 and receives the clock 131
Are used as basic pulses to generate control signals 142 to 144 in accordance with the write cycle of the flash memory. This operation is repeated as many times as necessary to perform the erase operation. After all the above operations in the first to fourth stages have been completed in this way, the actual erase operation starts, and when the erase operation ends, the state returns to the normal state 503.

【0061】なお、イレース動作中に、リードリクエス
ト421が入り、かつ、その時のアドレスが現在イレー
ス中のセクタである場合、比較回路451はイレースセ
クタヒット信号452は出力する。このとき、CPUに
対してタイミングコントローラ130はウエイト信号1
33を出し続け、イレース動作が終了したとき、ステー
ト505のリードステートに移り、リード動作を実行す
る。
When the read request 421 is received during the erase operation and the address at that time is the sector currently being erased, the comparison circuit 451 outputs the erase sector hit signal 452. At this time, the timing controller 130 sends the wait signal 1 to the CPU.
When the erase operation is completed, the process proceeds to the read state of the state 505 and the read operation is executed.

【0062】また、イレース動作中に、リードリクエス
ト信号421が入り、かつ、その時のアドレスが現在イ
レース中のセクタでない場合、比較回路451はイレー
スセクタヒット信号452は出力しない。このとき、タ
イミングコントローラ130は、ステート507のサス
ペンド(suspend)ステートに入る。この場合、
以下のような第1段階,第2段階の動作を行う。
If the read request signal 421 is input during the erase operation and the address at that time is not the sector currently being erased, the comparison circuit 451 does not output the erase sector hit signal 452. At this time, the timing controller 130 enters a suspend state of the state 507. in this case,
The following first-stage and second-stage operations are performed.

【0063】まず、第1段階で、データセレクタ107
は、データセット402を選択して出力する。第2段階
で、タイミングコントローラ130は、CPUリードリ
クエスト信号421を受けて、イレース動作を中止する
ためセレクタコントロール信号135を切り替えなが
ら、実際のライト信号を作らせるための起動信号141
を出力し、サスペンドコマンドを発行する。
First, in the first stage, the data selector 107
Selects the data set 402 and outputs it. In the second stage, the timing controller 130 receives the CPU read request signal 421, and switches the selector control signal 135 to stop the erase operation, while activating the activation signal 141 for generating the actual write signal.
Is output and a suspend command is issued.

【0064】ここで、タイミングコントローラ130
は、イレース動作の停止をRDY/BUSY*信号13
4をモニタすることで判断し、イレース動作を停止した
後、ステート508のリードステートに入る。このステ
ートにおける動作は、ステート505のリードステート
と全く同様である。
Here, the timing controller 130
Indicates the stop of the erase operation by the RDY / BUSY * signal 13
4 is monitored, the erase operation is stopped, and the process enters the read state 508. The operation in this state is exactly the same as the read state of state 505.

【0065】そして、ステート508のリードステート
終了後、タイミングコントローラ130は、ステート5
09のリスタートステートに入る。この場合は以下のよ
うな第1段階と第2段階の動作を行う。
After the end of the read state of the state 508, the timing controller 130 sets the state 5
Enter the restart state 09. In this case, the following first and second stage operations are performed.

【0066】まず、第1段階で、データセレクタ107
は、データセット403を選択して、出力する。第2段
階で、タイミングコントローラ130は、セレクタコン
トロール信号135を切リ替えながら、実際のライト信
号をつくらせるための起動信号141を出力し、リスタ
ートコマンドを発行し、ステート506のイレースステ
ートに戻る。
First, in the first stage, the data selector 107
Selects the data set 403 and outputs it. In the second stage, the timing controller 130 outputs a start signal 141 for generating an actual write signal while switching the selector control signal 135, issues a restart command, and returns to the erase state of the state 506. .

【0067】以下、本実施形態の特徴的構成について図
1等を参照して説明する。
Hereinafter, a characteristic configuration of the present embodiment will be described with reference to FIG.

【0068】上記のように構成されたプロセッサ(CP
U201)によるフラッシュメモリ203に対するアク
セスを制御するフラッシュメモリ制御装置であって、前
記プロセッサによる前記フラッシュメモリに対する動作
要求を認識する認識手段(信号作成回路122)と、前
記認識手段により認識された動作要求に基づいて前記フ
ラッシュメモリを所定のメモリサイクルに遷移させるコ
マンドを生成するコマンド生成手段(レジスタ103〜
105,レジスタ113〜115,セレクタ107,1
17)と、前記フラッシュメモリの動作状態を検出して
前記プロセッサに通知する通知手段(タイミングコント
ローラ130)と、前記プロセッサからのデータ,アド
レスに基づいて前記フラッシュメモリに対するメモリア
クセスを実行するメモリ制御手段(タイミングコントロ
ーラ130,タイミングジェネレータ140)とを有す
るので、プロセッサによるフラッシュメモリアクセス要
求を認知して高速にアクセスできるともに、プロセッサ
によるアクセス処理負担を大幅に軽減することができ
る。
The processor (CP) configured as described above
U201) for controlling access to the flash memory 203, comprising: a recognition unit (signal creation circuit 122) for recognizing an operation request for the flash memory by the processor; and an operation request recognized by the recognition unit. Command generation means (registers 103 to 103) for generating a command for causing the flash memory to transition to a predetermined memory cycle based on
105, registers 113 to 115, selectors 107, 1
17), notifying means (timing controller 130) for detecting the operating state of the flash memory and notifying the processor, and memory controlling means for executing memory access to the flash memory based on data and addresses from the processor (Timing controller 130, timing generator 140), the flash memory access request by the processor can be recognized and high-speed access can be performed, and the access processing load on the processor can be greatly reduced.

【0069】また、前記プロセッサからのデータを保持
するための第1のFIFOメモリ(FIFO102)
と、前記プロセッサからのアドレスを保持するための第
2のFIFOメモリ(FIFO112)とを有し、前記
メモリ制御手段は、第1,第2のFIFOメモリに先読
みされるデータ,アドレスに基づいて前記フラッシュメ
モリに対するメモリアクセスを実行するので、プロセッ
サからのフラッシュメモリに対するアクセス要求をフラ
ッシュメモリの動作状態に依存することなく蓄積させな
がら順次処理でき、プロセッサのメモリアクセス要求と
フラッシュメモリに対するアクセス状態の同期負担がな
くなり、プロセッサのデータ処理効率を格段に向上させ
つつ、意図するメモリアクセスを確実に行える。
A first FIFO memory (FIFO 102) for holding data from the processor.
And a second FIFO memory (FIFO 112) for holding an address from the processor, wherein the memory control means is configured to read the first and second FIFO memories based on data and addresses. Since the memory access to the flash memory is executed, the access request from the processor to the flash memory can be sequentially processed while accumulating without depending on the operation state of the flash memory. And the intended memory access can be reliably performed while significantly improving the data processing efficiency of the processor.

【0070】さらに、プロセッサによるフラッシュメモ
リに対するアクセスを制御するフラッシュメモリ制御装
置のアクセス方法であって、前記プロセッサ(CPU2
01)による前記フラッシュメモリ203に対する動作
要求を認識し、該認識された動作要求に基づいて前記フ
ラッシュメモリを所定のメモリサイクルに遷移させるコ
マンドを生成し、該コマンドの生成後、前記プロセッサ
からのデータ,アドレスに基づいて前記フラッシュメモ
リに対するメモリアクセスを実行するので、プロセッサ
によるフラッシュメモリアクセス要求を認知して高速に
アクセスできるともに、プロセッサによるアクセス処理
負担を大幅に軽減することができる。
Further, there is provided an access method of a flash memory control device for controlling access to a flash memory by a processor, wherein the processor (CPU 2
01), a command for transitioning the flash memory to a predetermined memory cycle based on the recognized operation request is generated, and after the command is generated, data from the processor is generated. Since the memory access to the flash memory is performed based on the address, the flash memory access request by the processor can be recognized and the access can be performed at a high speed, and the access processing load on the processor can be greatly reduced.

【0071】また、前記フラッシュメモリの動作状態を
検出して前記プロセッサに通知するので、プロセッサが
フラッシュメモリコントローラ中におけるフラッシュメ
モリに動作状態を正確に認知することができる。
Further, since the operating state of the flash memory is detected and notified to the processor, the processor can accurately recognize the operating state of the flash memory in the flash memory controller.

【0072】なお、本実施形態では、AMD社製のフラ
ッシュメモリ(MBM29F400系)を例として説明
しているので、ASIC202は、所定のアドレスとデ
ータとをデータセット103〜105およびアドレスセ
ット113〜115により、例えばデータ書込みシーケ
ンス時に生成されるコマンド例:データ「555H」/
アドレス「AAH」,データ「2AAH」/アドレス
「55Hh」,データ「555H」/アドレス「A0
H」)やチップイレーズコマンド(チップイレーズシー
ケンス時に生成されるコマンド例:データ「555H」
/アドレス「AAH」,データ「2AAH」/アドレス
「55Hh」,データ「555H」/アドレス「80
H」,データ「555H」/アドレス「AAH」,デー
タ「2AAH」/アドレス「55Hh」,データ「55
5H」/アドレス「10H」等を自動生成して前記フラ
ッシュメモリ203に対する所定のコマンドを自動生成
することが可能に構成されている。また、上記コマンド
シーケンスは、6回のバス動作により実行されるが、書
込みシーケンスは、4回のバス動作により実行される。
In the present embodiment, the flash memory (MBM29F400 series) manufactured by AMD is described as an example. Therefore, the ASIC 202 stores predetermined addresses and data in the data sets 103 to 105 and the address sets 113 to 115. Example of a command generated in a data write sequence, for example: data "555H" /
Address “AAH”, data “2AAH” / address “55Hh”, data “555H” / address “A0
H ") and a chip erase command (example of command generated during chip erase sequence: data" 555H ")
/ Address "AAH", data "2AAH" / address "55Hh", data "555H" / address "80
H, data "555H" / address "AAH", data "2AAH" / address "55Hh", data "55
5H "/ address" 10H "or the like is automatically generated, and a predetermined command for the flash memory 203 can be automatically generated. The command sequence is executed by six bus operations, while the write sequence is executed by four bus operations.

【0073】上記各実施形態によれば、マイクロプロセ
ッサが、フラッシュメモリに対して、書き込み動作を行
う場合、本フラッシュメモリコントローラの、前記マイ
クロプロセッサのフラッシュメモリに対する動作を認識
する手段が、書き込み動作を検出してフラッシュメモリ
に書き込み動作を行うことを決定し、次に本フラッシュ
メモリコントローラが、フラッシュメモリを制御する際
のコマンド生成手段に対して、書き込み動作を行うため
に必要なコマンドを送信する。
According to each of the above embodiments, when the microprocessor performs a write operation on the flash memory, the means of the flash memory controller for recognizing the operation of the microprocessor on the flash memory performs the write operation. The flash memory is detected and determined to perform a write operation to the flash memory, and then the flash memory controller transmits a command necessary for performing the write operation to a command generation unit for controlling the flash memory.

【0074】一方、コマンド送信中及び書き込み動作中
であることを、前記マイクロプロセッサに対して、本フ
ラッシュメモリコントローラのフラッシュメモリの状態
を前記マイクロプロセッサに知らせる手段が情報を提供
することで、前記マイクロプロセッサはフラッシュメモ
リに対して最適化された動作を行うこととなる。
On the other hand, means for informing the microprocessor of the status of the flash memory of the flash memory controller to the microprocessor that a command is being transmitted and a write operation is being performed provides the microprocessor with information. The processor performs an operation optimized for the flash memory.

【0075】これにより、CPUの動作を本フラッシュ
メモリコントローラか自動認識して、フラッシュメモリ
特有のコマンドを発行する機能を持っため、CPUは、
フラッシュメモリに対して、通常のRAMやROMと同
様のアクセスを行うことができる。そのため、ソフトウ
エアの作成も非常に簡略化される。
As a result, the flash memory controller has a function of automatically recognizing the operation of the CPU and issuing a command specific to the flash memory.
The same access to the flash memory as that of a normal RAM or ROM can be performed. Therefore, creation of software is also greatly simplified.

【0076】また、プログラム動作や、イレース動作
は、フラッシュメモリのRDY/BSY*信号から、即
座に判断されてハードウエアにて行われるため、ソフト
ウエアにて行う今までの制御よりも高速化がはかれる。
Further, since the program operation and the erase operation are immediately determined from the RDY / BSY * signal of the flash memory and are performed by hardware, the speed is higher than the conventional control performed by software. To be peeled off.

【0077】更に、本フラッシュメモリコントローラ
は、コマンドの発行を、ハードウエアによる自動発行に
よって行うため、CPUの負荷は全くなく、システム全
体のスループット向上がはかれる。
Further, since the flash memory controller issues commands automatically by hardware, there is no load on the CPU and the throughput of the entire system can be improved.

【0078】[0078]

【発明の効果】以上説明したように、本発明に係る第1
の発明によれば、プロセッサによるフラッシュメモリに
対するアクセスを制御するフラッシュメモリ制御装置で
あって、前記プロセッサによる前記フラッシュメモリに
対する動作要求を認識する認識手段と、前記認識手段に
より認識された動作要求に基づいて前記フラッシュメモ
リを所定のメモリサイクルに遷移させるコマンドを生成
するコマンド生成手段と、前記フラッシュメモリの動作
状態を検出して前記プロセッサに通知する通知手段と、
前記プロセッサからのデータ,アドレスに基づいて前記
フラッシュメモリに対するメモリアクセスを実行するメ
モリ制御手段とを有するので、プロセッサによるフラッ
シュメモリアクセス要求を認知して高速にアクセスでき
るともに、プロセッサによるアクセス処理負担を大幅に
軽減することができる。
As described above, the first embodiment according to the present invention is described.
According to the invention, there is provided a flash memory control device for controlling access to a flash memory by a processor, comprising: recognition means for recognizing an operation request for the flash memory by the processor; and an operation request based on the operation request recognized by the recognition means. Command generation means for generating a command for causing the flash memory to transition to a predetermined memory cycle, a notifying means for detecting an operation state of the flash memory and notifying the processor of the operation state,
A memory control unit for executing a memory access to the flash memory based on the data and address from the processor; therefore, the flash memory access request by the processor can be recognized and the access can be performed at a high speed, and the access processing load on the processor is greatly reduced. Can be reduced.

【0079】第2の発明によれば、前記プロセッサから
のデータを保持するための第1のFIFOメモリと、前
記プロセッサからのアドレスを保持するための第2のF
IFOメモリとを有し、前記メモリ制御手段は、前記第
1,第2のFIFOメモリに先読みされるデータ,アド
レスに基づいて前記フラッシュメモリに対するメモリア
クセスを実行するので、プロセッサからのフラッシュメ
モリに対するアクセス要求をフラッシュメモリの動作状
態に依存することなく蓄積させながら順次処理でき、プ
ロセッサのメモリアクセス要求とフラッシュメモリに対
するアクセス状態の同期負担がなくなり、プロセッサの
データ処理効率を格段に向上させつつ、意図するメモリ
アクセスを確実に行える。
According to the second invention, the first FIFO memory for holding data from the processor and the second FIFO memory for holding an address from the processor.
An IFO memory, and the memory control means executes a memory access to the flash memory based on data and addresses prefetched into the first and second FIFO memories. Requests can be sequentially processed while accumulating irrespective of the operation state of the flash memory, eliminating the burden of synchronizing the memory access request of the processor and the access state to the flash memory, and significantly improving the data processing efficiency of the processor. Memory access can be performed reliably.

【0080】第3の発明によれば、プロセッサによるフ
ラッシュメモリに対するアクセスを制御するフラッシュ
メモリ制御装置のアクセス方法であって、前記プロセッ
サによる前記フラッシュメモリに対する動作要求を認識
し、該認識された動作要求に基づいて前記フラッシュメ
モリを所定のメモリサイクルに遷移させるコマンドを生
成し、該コマンドの生成後、前記プロセッサからのデー
タ,アドレスに基づいて前記フラッシュメモリに対する
メモリアクセスを実行するので、プロセッサによるフラ
ッシュメモリアクセス要求を認知して高速にアクセスで
きるともに、プロセッサによるアクセス処理負担を大幅
に軽減することができる。
According to a third aspect of the present invention, there is provided an access method of a flash memory control device for controlling access to a flash memory by a processor, wherein the operation request to the flash memory by the processor is recognized, and the recognized operation request is recognized. Generating a command to cause the flash memory to transition to a predetermined memory cycle based on the command. After the command is generated, a memory access to the flash memory is performed based on data and an address from the processor. The access request can be recognized at a high speed by recognizing the access request, and the access processing load on the processor can be greatly reduced.

【0081】第4の発明によれば、前記フラッシュメモ
リの動作状態を検出して前記プロセッサに通知するの
で、プロセッサがフラッシュメモリコントローラ中にお
けるフラッシュメモリに動作状態を正確に認知すること
ができる。
According to the fourth aspect, since the operating state of the flash memory is detected and notified to the processor, the processor can accurately recognize the operating state of the flash memory in the flash memory controller.

【0082】従って、プロセッサがフラッシュメモリを
あたかもROM,RAM等の汎用メモリデバイスと同様
の制御でアクセスでき、フラッシュメモリを介して実行
すべきプログラムやデータ処理を簡便な制御手順で実行
可能となり、ソフトウエア開発効率を格段に向上できる
等の効果を奏する。
Therefore, the processor can access the flash memory as if it were a general-purpose memory device such as a ROM or a RAM, and can execute programs and data processing to be executed through the flash memory with simple control procedures. This has the effect of significantly improving the software development efficiency.

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

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

【図2】図1に示したフラッシュメモリコントローラが
内蔵されたカスタムICとその周辺回路との対応を説明
するブロック図である。
FIG. 2 is a block diagram illustrating the correspondence between a custom IC incorporating the flash memory controller shown in FIG. 1 and its peripheral circuits.

【図3】図2に示したASICの詳細構成を説明するブ
ロック図である。
FIG. 3 is a block diagram illustrating a detailed configuration of an ASIC illustrated in FIG. 2;

【図4】本発明の第2実施形態を示すメモリ制御装置の
要部構成を説明するブロック図である。
FIG. 4 is a block diagram illustrating a main configuration of a memory control device according to a second embodiment of the present invention.

【図5】図4に示したタイミングコントローラの動作を
説明する図である。
FIG. 5 is a diagram illustrating the operation of the timing controller shown in FIG.

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

101 データバス 102 FIFOメモリ 106 CPUデータバッファ 107 データセレクタ 108 データバス 111 アドレスバス 112 FIFOメモリ 116 CPUアドレスバッファ 117 アドレスセレクタ 118 アドレスバス 122 信号作成回路 130 タイミングコントローラ 140 タイミングジェネレータ Reference Signs List 101 data bus 102 FIFO memory 106 CPU data buffer 107 data selector 108 data bus 111 address bus 112 FIFO memory 116 CPU address buffer 117 address selector 118 address bus 122 signal generation circuit 130 timing controller 140 timing generator

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 プロセッサによるフラッシュメモリに対
するアクセスを制御するフラッシュメモリ制御装置であ
って、 前記プロセッサによる前記フラッシュメモリに対する動
作要求を認識する認識手段と、 前記認識手段により認識された動作要求に基づいて前記
フラッシュメモリを所定のメモリサイクルに遷移させる
コマンドを生成するコマンド生成手段と、 前記フラッシュメモリの動作状態を検出して前記プロセ
ッサに通知する通知手段と、 前記プロセッサからのデータ,アドレスに基づいて前記
フラッシュメモリに対するメモリアクセスを実行するメ
モリ制御手段と、を有することを特徴とするフラッシュ
メモリ制御装置。
1. A flash memory control device for controlling access to a flash memory by a processor, comprising: recognition means for recognizing an operation request for the flash memory by the processor; and, based on the operation request recognized by the recognition means. Command generation means for generating a command for causing the flash memory to transition to a predetermined memory cycle; notification means for detecting an operation state of the flash memory and notifying the processor; data based on data and addresses from the processor; A flash memory control device, comprising: memory control means for executing a memory access to a flash memory.
【請求項2】 前記プロセッサからのデータを保持する
ための第1のFIFOメモリと、 前記プロセッサからのアドレスを保持するための第2の
FIFOメモリとを有し、 前記メモリ制御手段は、前記第1,第2のFIFOメモ
リに先読みされるデータ,アドレスに基づいて前記フラ
ッシュメモリに対するメモリアクセスを実行することを
特徴とする請求項1記載のフラッシュメモリ制御装置。
A first FIFO memory for holding data from the processor; and a second FIFO memory for holding an address from the processor. 2. The flash memory control device according to claim 1, wherein a memory access to the flash memory is executed based on data and an address pre-read into the second FIFO memory.
【請求項3】 プロセッサによるフラッシュメモリに対
するアクセスを制御するフラッシュメモリ制御装置のア
クセス方法であって、 前記プロセッサによる前記フラッシュメモリに対する動
作要求を認識し、該認識された動作要求に基づいて前記
フラッシュメモリを所定のメモリサイクルに遷移させる
コマンドを生成し、 該コマンドの生成後、前記プロセッサからのデータ,ア
ドレスに基づいて前記フラッシュメモリに対するメモリ
アクセスを実行することを特徴とするフラッシュメモリ
制御装置のアクセス方法。
3. An access method of a flash memory control device for controlling an access to a flash memory by a processor, wherein the flash memory controller recognizes an operation request of the processor for the flash memory, and based on the recognized operation request, Generating a command that causes a transition to a predetermined memory cycle, and after generating the command, executing a memory access to the flash memory based on data and an address from the processor. .
【請求項4】 前記フラッシュメモリの動作状態を検出
して前記プロセッサに通知することを特徴とする請求項
3記載のフラッシュメモリ制御装置のアクセス方法。
4. The access method according to claim 3, wherein an operation state of the flash memory is detected and notified to the processor.
JP10161146A 1998-06-09 1998-06-09 Flash memory controller and access method of flash memory controller Pending JPH11353223A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10161146A JPH11353223A (en) 1998-06-09 1998-06-09 Flash memory controller and access method of flash memory controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10161146A JPH11353223A (en) 1998-06-09 1998-06-09 Flash memory controller and access method of flash memory controller

Publications (1)

Publication Number Publication Date
JPH11353223A true JPH11353223A (en) 1999-12-24

Family

ID=15729476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10161146A Pending JPH11353223A (en) 1998-06-09 1998-06-09 Flash memory controller and access method of flash memory controller

Country Status (1)

Country Link
JP (1) JPH11353223A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017215742A (en) * 2016-05-31 2017-12-07 富士通株式会社 Electronic instrument and beacon

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017215742A (en) * 2016-05-31 2017-12-07 富士通株式会社 Electronic instrument and beacon

Similar Documents

Publication Publication Date Title
KR970008187B1 (en) Processor controlled interface with instruction streaming
JP4643729B2 (en) Interleave control device, interleave control method, and memory system
US7197590B2 (en) Method and apparatus for connecting LPC bus and serial flash memory
JP4111760B2 (en) Access to the memory unit of the data processor
WO2006098135A1 (en) Bus controller
JPH11353223A (en) Flash memory controller and access method of flash memory controller
JP3061106B2 (en) Bus bridge and computer system having the same
JP2000056970A (en) Look-ahead method for instruction and data, micro controller, pseudo instruction detection circuit and recording medium
EP0415351A2 (en) Data processor for processing instruction after conditional branch instruction at high speed
JP2006268857A (en) Method of writing data from data processor to register storage system, data register, and register access system
EP0359232A2 (en) Computer system and method for setting recovery time
JP3169878B2 (en) Memory control circuit
JP2005038203A (en) Memory control method and device
JPH07210454A (en) High-speed processor
JPH06348592A (en) Write buffer control system
JP2002244916A (en) Microcontroller
JPH10187119A (en) Display control device
JPH09198305A (en) Memory controller
JPH11353170A (en) Flash memory controller and memory access method of flash memory controller
JPS61237145A (en) Controlling system for store buffer
JP2002222115A (en) Memory system
JPS58205258A (en) Data processor
JPS59189433A (en) Data erasing system by direct memory access
JPH04246764A (en) Data processor
JPH0877061A (en) Information processor