JPH11353170A - フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法 - Google Patents

フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法

Info

Publication number
JPH11353170A
JPH11353170A JP16114598A JP16114598A JPH11353170A JP H11353170 A JPH11353170 A JP H11353170A JP 16114598 A JP16114598 A JP 16114598A JP 16114598 A JP16114598 A JP 16114598A JP H11353170 A JPH11353170 A JP H11353170A
Authority
JP
Japan
Prior art keywords
flash memory
data
cpu
operation mode
state
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
JP16114598A
Other languages
English (en)
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 JP16114598A priority Critical patent/JPH11353170A/ja
Publication of JPH11353170A publication Critical patent/JPH11353170A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 受信するプログラムデータを含む種々のデー
タをフラッシュメモリに対して自在にプログラムした
り、該プログラムの更新や破壊されたデータの復元を自
在に行うことである。 【解決手段】 CPU201を介在することなく、イン
タフェース204を介して受信するデータを直接フラッ
シュメモリに書き込むように受信したデータのCPU2
01により読み出しと受信したデータのフラッシュメモ
リ203への書き込みをASIC202が切り替え制御
する構成を特徴とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、フラッシュメモリ
に対するアクセスを制御するフラッシュメモリ制御装置
およびフラッシュメモリ制御装置のメモリアクセス方法
に関するものである。
【0002】
【従来の技術】従来、この種のメモリ制御装置におい
て、フラッシュメモリに対するメモリアクセス制御は、
主にソフトウエアで行っていた。
【0003】特に、不揮発性のメモリが、フラッシュメ
モリ1個だけの場合、システムを動作させるためのプロ
グラムが必要なため、前以ってメモリ素子に該プログラ
ムを書き込んでおいて、それを基板上に実装させる方法
をとっていた。
【0004】
【発明が解決しようとする課題】しかしながら、上記従
来例では、フラッシュメモリに前以ってプログラムを書
き込まねばならず、この追加手番に対して、コスト上昇
が発生していた。また、この書き込み手番を行った後
に、基板の実装がなされるため、新プログラムリリース
後、実際の製品が組み上がるのに、相当の時間を要して
しまう等の問題点があった。
【0005】また、一度プログラムを書込んだフラッシ
ュメモリは、自らを書き換えるプログラムを有している
ので、プログラムを書き換えることが可能であるが、書
き換え途中に不意に電源オフが発生する等の不測の事態
に遭遇した場合には、フラッシュメモリの内容が破壊さ
れ、素子の付け替えを行わなければならない等の問題点
があった。
【0006】本発明は、上記の問題点を解決するために
なされたもので、本発明の目的は、CPUを介在するこ
となく、インタフェースを介して受信するデータを直接
フラッシュメモリに書き込むように受信したデータのC
PUにより読み出しと受信したデータのフラッシュメモ
リへの書き込みを切り替え制御することにより、フラッ
シュメモリの用途に備えて事前に所望のプログラムを書
き込むような出荷時の煩雑な処理負担を大幅に緩和し
て、受信するプログラムデータを含む種々のデータをフ
ラッシュメモリに対して自在にプログラムしたり、該プ
ログラムの更新や破壊されたデータの復元を自在に行え
るフラッシュメモリ制御装置およびフラッシュメモリ制
御装置のメモリアクセス方法を提供することである。
【0007】
【課題を解決するための手段】本発明に係る第1の発明
は、フラッシュメモリに対するアクセスを制御するフラ
ッシュメモリ制御装置であって、外部からデータを受信
するインタフェース手段と、前記インタフェース手段に
より受信したデータを保持する保持手段と、入力される
動作モードに基づいて前記フラッシュメモリに対する通
常動作モードとプログラム動作モードのいずれかに切り
替えて、前記保持手段に保持されるデータに対するCP
Uの読み出しまたは前記保持手段に保持されるデータの
前記フラッシュメモリへの書き込みを切り替え制御する
制御手段とを有するものである。
【0008】本発明に係る第2の発明は、フラッシュメ
モリに対するアクセスを制御するフラッシュメモリ制御
装置であって、外部からデータを受信するインタフェー
ス手段と、前記インタフェース手段により受信したデー
タを保持する保持手段と、入力される動作モードに基づ
いて前記フラッシュメモリに対する通常動作モードとプ
ログラム動作モードとイレース動作モードとのいずれか
に切り替えて、前記保持手段に保持されるデータに対す
るCPUの読み出しまたは前記保持手段に保持されるデ
ータの前記フラッシュメモリへの書き込みあるいは前記
フラッシュメモリのイレースとを切り替え制御する制御
手段とを有するものである。
【0009】本発明に係る第3の発明は、前記制御手段
は、前記フラッシュメモリに対する所定のコマンドを自
動生成するものである。
【0010】本発明に係る第4の発明は、前記制御手段
は、所定のアドレスとデータとを自動生成して前記フラ
ッシュメモリに対する所定のコマンドを自動生成するも
のである。
【0011】本発明に係る第5の発明は、フラッシュメ
モリに対するアクセスを制御するフラッシュメモリ制御
装置のメモリアクセス方法であって、外部からデータを
受信するインタフェース手段により受信したデータを保
持し、入力される動作モードに基づいて前記フラッシュ
メモリに対する通常動作モードとプログラム動作モード
のいずれかに切り替え、前記保持されるデータに対する
CPUの読み出しまたは前記保持されるデータの前記フ
ラッシュメモリへの書き込みを切り替えるものである。
【0012】本発明に係る第6の発明は、フラッシュメ
モリに対するアクセスを制御するフラッシュメモリ制御
装置のメモリアクセス方法であって、外部からデータを
受信するインタフェース手段により受信したデータを保
持し、入力される動作モードに基づいて前記フラッシュ
メモリに対する通常動作モードとプログラム動作モード
とイレース動作モードとのいずれかに切り替え、前記保
持されるデータに対するCPUの読み出しまたは前記に
保持されるデータの前記フラッシュメモリへの書き込み
あるいは前記フラッシュメモリのイレースとを切り替え
るものである。
【0013】
【発明の実施の形態】〔第1実施形態〕図1は、本発明
の第1実施形態を示すメモリ制御装置の構成を説明する
ブロック図である。
【0014】図において、101はデータバス(CPU
data bus)で、マイクロプロセッサ(CP
U)と接続される。103,104,105はレジスタ
で、フラッシュメモリに対して書き込みコマンドを発行
する際に使用されるデータD1,データD2,データD
3をラッチする。
【0015】107はデータセレクタで、データバス1
01、レジスタ103〜105から1つのデータを選択
する。108はデータバス(flash memory
data bus)で、フラッシュメモリ(flas
h memory)と接続される。111はアドレスバ
スで、マイクロプロセッサと接続される。113、11
4、115はレジスタで、フラッシュメモリに対して書
き込みコマンドを発行する際に使用されるアドレスAD
1、アドレスAD2、アドレスAD3をラッチする。
【0016】117はアドレスセレクタで、アドレスバ
ス111、レジスタ113〜115から1つのアドレス
を選択する。118はアドレスバス(flash me
mory address bus)で、フラッシュメ
モリと接続される。
【0017】130はタイミングコントローラで、フラ
ッシュメモリコントローラのフラッシュメモリに対する
動作シーケンスを決定する。131はクロック(CL
K)で、タイミングコントローラ130に入力される。
132はCPUからのリード(RD)信号で、タイミン
グコントローラ130に入力される。
【0018】133はCPUからのライト(WR)信号
で、タイミングコントローラ130に入力される。13
4はフラッシュメモリに対するCPUからのチップセレ
クト(CS)信号で、タイミングコントローラ130に
入力される。
【0019】135はフラッシュメモリよリ出力される
RDY/BUSY*信号であり、この信号が「1」のと
き、フラッシュメモリが読み出し可能または新しいコマ
ンド受付可能状態を示す。逆に、RDY/BUSY*信
号135が「0」のときは、フラッシュメモリがプログ
ラム中またはイレース動作中であることを示す。
【0020】136はセレクタコントロール(sele
ctor control)信号で、データセレクタ1
07,アドレスセレクタ117をコントロールする。1
37はインタフェースブロックからのライトリクエスト
(write request)信号である。138は
フラッシュメモリに書き込みが終了したことを知らせる
ライトエンド(write end)信号である。
【0021】140はタイミング作成回路(タイミング
ジェネレータ)で、実際のフラッシュメモリに対しての
コントロール信号を作成する。141は複数の起動信号
で、タイミングコントローラ130よりタイミングジェ
ネレータ140に対して出力される。142はフラッシ
ュメモリに出力されるリード(flash memor
y RD)信号である。143はフラッシュメモリに出
力されるライト(flash memory WR)信
号である。144はフラッシュメモリに出力されるチッ
プセレクト(flash memory CS)信号で
ある。
【0022】150はパラレルポートのインタフェース
(I/F)信号線である。151はインタフェース(I
/F)コントローラで、インタフェース信号線150か
らの信号を処理する。152は例えば8ビットのデータ
バス(data bus)で、パラレルポートより受信
したデータを送り出す。
【0023】153はリセット(reset)信号で、
パラレルポートのINIT信号より作られる。154は
バッファフル(buffer full)信号で、イン
タフェースコントローラ151がデータを受信した際に
出力する。155はビジー(busy)信号で、受信し
たデータを本フラッシュメモリコントローラが処理中の
場合に発行して、インタフェースの受信動作をウエイト
させる。
【0024】160はタイミングコントローラで、イン
タフェースコントローラ151とフラッシュメモリコン
トローラとのシーケンスをコントロールするためのタイ
ミングコントローラである。161は割込み(int)
信号で、通常動作時に、インタフェースよりCPUにデ
ータを受信したことを伝えるための信号である。
【0025】162はモード(mode)信号で、本フ
ラッシュメモリコントローラが、受け取ったインタフェ
ースからの受信データを通常のデータとしてCPUに対
して渡す場合と、受け取ったインタフェースからの受信
データをフラッシュメモリのプログラム用のデータとし
てプログラム動作に入る場合とを切り替える。
【0026】163はインタフェースコントローラ部分
のチップセレクト(CS)信号である。164はCPU
からのリード(CPU RD)信号である。165は第
1のバッファライト(buffer write)信号
で、受信した8ビットのデータが16ビットデータの上
位バイトであるときに出力される。166は第2のバッ
ファライト(buffer write)信号で、受信
した8ビットのデータが16ビットデータの下位バイト
であるときに出力される。167は受信したデータをラ
ッチするためのレジスタである。
【0027】168はイネーブル(enable)信号
で、レジスタ167がラッチしたデータをCPUが読み
出しを行う。169はLEDで、本コントローラが自動
書き込み動作を行っている場合に点滅動作を行うことで
プログラム中であることを外部に知らせる。170はリ
セット(reset)信号で、アドレスカウンタ116
に対して出力される。171はクロック(CLK)であ
る。以下、実際の動作について説明する。
【0028】図2は、図1に示したタイミングコントロ
ーラ160の動作を説明する図である。なお、401〜
406は各ステートを示す。
【0029】電源立ち上げ後またはインタフェース信号
でINIT信号がアクティブ状態のときステート401
のリセット(reset)状態から動作は開始する。
【0030】この時、アドレスカウンタ116に対し
て、リセット信号170を出力する。リセット直後に、
ステート402のノーマル(normal)状態へと動
作は移行する。これは、インタフェースよりのデータ待
ちの状態であり、インタフェースコントローラ151が
データを受け、バッファフル信号154を出力すると、
ステート403の第1の受信(receive1)動作
へと移行する。
【0031】ここで、タイミングコントローラ160
は、第1のバッファライト信号165を出力し、レジス
タ167の上位バイトに書き込みを行う。次に、2バイ
ト目のデータが送られて、再び、バッファフル信号15
4が出力されたとき、ステート404の第2の受信(r
eceive2)動作へと進む。
【0032】ここで、タイミングコントローラ160
は、第2のバッファライト信号165を出力し、レジス
タ167の下位バイトに書き込みを行う。この時、モー
ド信号162が、「0」に設定されている場合、通常の
データ受信動作を行いステート405ヘ移行する。
【0033】そして、ステート405、すなわちウエイ
ト(wait)ステートでは、CPUに対して割込み信
号161を出力し、レジスタ167の受信データ読み込
み要求を出力する。CPUが、レジスタ167の受信デ
ータを読み込んだ状態で、タイミングコントローラ16
0は、ステート402のノーマル状態へ戻ることとな
る。
【0034】一方、ステート404の状態で、モード信
号162が、「1」に設定されている場合は、本フラッ
シュメモリコントローラによる自動書き込みモードに設
定されているということで、ステート406に示すプロ
グラム(program)ステートヘ移行する。
【0035】このプログラムステートでは、まず最初
に、タイミングコントローラ160からタイミングコン
トローラ130ヘの起動信号であるライトリクエスト信
号137を出力する。この起動信号を受けて、タイミン
グコントローラ130は、図3に示すステートで書き込
み処理を行う。
【0036】図3は、図1に示したタイミングコントロ
ーラ130の動作を説明する図である。なお、510〜
515は各ステートを示す。
【0037】まず、ステート510は、リセット(re
set)時の最初の状態である。ライトリクエスト信号
137を受けてステート511の第1のライト(wri
te1)ステートに移行する。ここでは、例えばAMD
社製のフラッシュメモリを使用するため、データセレク
タ107をデータレジスタ103に設定し、ここから
「AAh」を出力する。同時に、アドレスセレクタ11
7をアドレスレジスタ113に設定し、ここから「55
55h」を出力する。この時、ライト起動信号141を
出力し、タイミングジェネレータ140は、ライト動作
に合わせた波形のメモリアクセス制御信号としての各信
号142〜144を出力する。
【0038】そして、ステート511の動作終了後は、
ステート512の第2のライト(write2)ステー
トに移行する。
【0039】まず、データセレクタ107を第2のデー
タレジスタ104に設定し、ここから「55h」を出力
する。同時にアドレスセレクタ117を第2のアドレス
レジスタ114に設定し、ここから「2AAAh」を出
力する。この時、ライト起動信号141を出力し、タイ
ミングジェネレータ140は、ライト動作に合わせた波
形のメモリアクセス制御信号としての各信号142〜1
44を出力する。
【0040】ステート512の動作終了後は、ステート
513の第3のライト(write3)ステートに移行
する。
【0041】まず、データセレクタ107を第3のレジ
スタ105に設定し、ここから「A0h」を出力する。
同時にアドレスセレクタ117を第3のアドレスレジス
タ115に設定し、ここから「5555h」を出力す
る。この時、ライト起動信号141を出力し、タイミン
グジェネレータ140は、ライト動作に合わせた波形の
メモリアクセス制御信号としての各信号142〜144
を出力する。
【0042】ステート513の動作終了後は、ステート
514の第4のライト(write4)ステートに移行
する。
【0043】まず、データセレクタ107をレジスタ1
67に設定し、ここから受信したデータを出力する。同
時にアドレスセレクタ117をアドレスカウンタ116
に設定し、ここからカウンタの値を出力する。この時、
ライト起動信号141を出力し、タイミングジェネレー
タ140は、ライト動作に合わせた波形のメモリアクセ
ス制御信号としての各信号142〜144を出力する。
この時点で、1ワードのプログラム動作は終了する。こ
の後、アドレスカウンタ115をカウントアップ、また
ライトリクエスト信号137を出力して、ステート51
0のリセットステートヘ戻る。
【0044】タイミングコントローラ130は、通常の
リード動作もサポートしており、フラッシュメモリのチ
ップセレクト信号134と、CPUリード信号132と
がきたとき、ステート515のリード(read)ステ
ートヘ移行する。
【0045】ここでは、タイミングコントローラ130
からリード起動信号141を出力し、タイミングジェネ
レータ140は、リード動作に合わせた波形のメモリア
クセス制御信号としての各信号142〜144を出力す
る。そして、リード動作終了後は、ステート510のリ
セットステートヘ戻る。
【0046】以上が、図1に示したフラッシュメモリコ
ントローラの動作説明である。
【0047】図4は、図1に示したフラッシュメモリコ
ントローラが内蔵されたカスタムIC(以下ASICと
称す)とその周辺回路との対応を説明するブロック図で
ある。
【0048】図において、201はCPU、202はA
SICで、フラッシュメモリコントローラが内蔵されて
いる。203はフラッシュメモリ(flash mem
ory)、204はパラレルインタフェース(I/F)
である。なお、フラッシュメモリ203はアドレスバ
ス、データバス、コントロール信号をすべて、ASIC
202を介して接続されており、ASIC202は独自
のコントロールをフラッシュメモリ203に対して行え
るような構成となっている。
【0049】また、インタフェースブロックは、直接A
SIC202に接続されており、CPU201を介さず
にフラッシュメモリにデータを転送できる構造となって
いる。
【0050】図5は、図4に示したASIC202の詳
細構成を説明するブロック図であり、図4と同一のもの
には同一の符号を付してある。
【0051】図において、300はデータ作成ブロック
(data generator)で、フラッシュメモ
リ203に対するデータを作成する。310はアドレス
作成ブロック(address generator)
で、フラッシュメモリ203に対してアドレスを作成す
る。320はCPUのコントロール信号であり、バスコ
ントローラ(bus controller)321に
対して出力される。322はフラッシュメモリに対する
コントロール(controll)信号で、フラッシュ
メモリ203に対して出力される。330はインタフェ
ースコントローラ(I/F controller)で
ある。
【0052】以下、本実施形態の特徴的構成について図
1等を参照して説明する。
【0053】上記のように構成されたフラッシュメモリ
203に対するアクセスを制御するフラッシュメモリ制
御装置であって、外部からデータを受信するインタフェ
ース手段(インタフェース204)と、前記インタフェ
ース手段により受信したデータを保持する保持手段(図
1に示したレジスタ167)と、入力される動作モード
に基づいて前記フラッシュメモリに対する通常動作モー
ドとプログラム動作モードのいずれかに切り替えて、前
記保持手段に保持されるデータに対するCPUの読み出
しまたは前記保持手段に保持されるデータの前記フラッ
シュメモリへに書き込みを切り替え制御する制御手段
(ASIC202)とを有するので、入力される動作モ
ード(モード信号162)の設定状態に応じてCPUに
よる受信したデータの読み出しと該CPU201を介在
することなく該受信したデータのフラッシュメモリ20
3への直接書き込みとを自在に切り替えることができ、
フラッシュメモリに何ら書き込みあるいは書き換え用の
プログラムを占有させる必要もなく、外部入力されるデ
ータに従うプログラムの書き込みや更新をCPU201
を介在させることなく容易に行うことができる。
【0054】また、フラッシュメモリ203に対するア
クセスを制御するフラッシュメモリ制御装置のメモリア
クセス方法であって、外部からデータを受信するインタ
フェース手段により受信したデータを保持し、入力され
る動作モードに基づいて前記フラッシュメモリ203に
対する通常動作モードとプログラム動作モードのいずれ
かに切り替え、前記保持されるデータに対するCPUの
読み出しまたは前記保持されるデータの前記フラッシュ
メモリへの書き込みを切り替えるので、入力される動作
モードの設定状態に応じてCPU201による受信した
データの読み出しと該CPU201を介在することなく
該受信したデータのフラッシュメモリへの直接書き込み
とを自在に切り替えることができ、フラッシュメモリに
何ら書き込みあるいは書き換え用のプログラムを占有さ
せる必要もなく、外部入力されるデータに従うプログラ
ムの書き込みや更新をCPU201を介在させることな
く容易に行うことができる。
【0055】さらに、前記制御手段(ASIC202)
は、前記フラッシュメモリ203に対する所定のコマン
ドを自動生成するので、フラッシュメモリの特定アドレ
スに意図する命令を書き込んでデータ書込みコマンドを
自動生成することができる。
【0056】なお、本実施形態におけるフラッシュメモ
リは、例えばAMD社製のMBM29F400系を例と
して説明しているので、コマンドシーケンスは、6回の
バス動作で実行される。ただし、書込みシーケンスは、
4回のバス動作で終了する。
【0057】また、前記制御手段(ASIC202)
は、所定のアドレスとデータとをレジスタ103〜10
5およびレジスタ113〜115により、例えばデータ
書込みシーケンス時に生成されるコマンド例:データ
「555H」/アドレス「AAH」,データ「2AA
H」/アドレス「55Hh」,データ「555H」/ア
ドレス「A0H」)やチップイレーズコマンド(チップ
イレーズシーケンス時に生成されるコマンド例:データ
「555H」/アドレス「AAH」,データ「2AA
H」/アドレス「55Hh」,データ「555H」/ア
ドレス「80H」,データ「555H」/アドレス「A
AH」,データ「2AAH」/アドレス「55Hh」,
データ「555H」/アドレス「10H」等を自動生成
して前記フラッシュメモリ203に対する所定のコマン
ドを自動生成するので、意図するアドレスに基づいて受
信したデータをプログラムとして書き込むことができ
る。
【0058】〔第2実施形態〕上記第1実施形態では、
CPUを介することなく、インタフェースを介してフラ
ッシュメモリに対するプログラムの書き込みを行う場合
について説明したが、フラッシュメモリの内容をイレー
スするモードを設けて、フラッシュメモリの内容を消去
できるように構成してもよい。以下、その実施形態につ
いて説明する。
【0059】図6は、本発明の第2実施形態を示すメモ
リ制御装置の構成を説明するブロック図であり、図1と
同一のものには同一の符号を付してある。
【0060】図において、601はモード(mode
0)信号で、602はモード(mode1)信号であ
り、本実施形態では、動作モードが複数あるため2ビッ
トに拡張されている場合に対応する。
【0061】620はデータセット(data set
1)で、図1に示したレジスタ103からレジスタ10
5のライトコマンド発行用のデータがセットされる。6
21はデータセット(address set1)で、
追加されたイレースコマンド発行用のデータがセットさ
れる。630はアドレスセットで、図1に示したレジス
タ113からレジスタ115のライトコマンド発行用の
アドレスがセットされる。631はアドレスセット(a
ddress set2)で、追加されたイレースコマ
ンド発行用のアドレスがセットされる。
【0062】なお、タイミングコントローラ130に
は、イレースリクエスト(eraserequest)
信号611とイレースエンド(erase end)信
号610がタイミングコントローラ160から入力され
ている。
【0063】以下、図7,図8を参照して、本実施形態
におけるフラッシュメモリコントローラの動作シーケン
スについて説明する。
【0064】図7は、図6に示したタイミングコントロ
ーラ160の動作を説明する図であり、401〜407
は各ステートを示す。また、ステート401〜404ま
での動作は第1実施形態と同様であるのでその説明は省
略する。
【0065】ステート404の状態で、モード信号60
1が「0」で、モード信号602が「0」に設定されて
いる場合は、通常のデータ受信動作を行いステート40
5ヘ移行する。そして、ステート405のウエイトステ
ートでは、CPUに対して割込み信号161を出力し、
レジスタ167に対して受信データ読み込み要求を出
す。CPUが、レジスタ167の受信データを読み込ん
だ状態で、タイミングコントローラ160は、ステート
402のノーマル状態へ戻ることとなる。
【0066】一方、ステート404の状態で、モード信
号601が「0」で、モード信号602が「1」に設定
されている場合は、本フラッシュメモリコントローラに
よる自動書き込みモードに設定されているということ
で、ステート406のプログラムステートヘ移行する。
【0067】このプログラムステートでは、まず、最初
に、タイミングコントローラ130ヘの起動信号である
ライトリクエスト信号137を出力する。この起動信号
を受けて、タイミングコントローラ130は、図8に示
すステートで動作を行う。
【0068】図8は、図6に示したタイミングコントロ
ーラ130の動作を説明する図であり、510〜51
5,801〜806は各ステートを示す。
【0069】ステート510は、リセット時の最初の状
態である。ライトリクエスト信号137を受けて、ステ
ート511の第1のライトステートに移行する。ここで
は、AMD社製のフラッシュメモリを使用するため、デ
ータセレクタ107をデータセット620に設定し、こ
こから「AAh」を出力する。同時に、アドレスセレク
タ117をアドレスセット630の一つに設定し、ここ
から「5555h」を出力する。
【0070】この時、ライト起動信号141を出力し、
タイミングジェネレータ140は、ライト動作に合わせ
た波形の制御信号142〜144を出力する。以降、ス
テート511〜514の動作は、第1実施形態と同様と
なる。そして、ステート514終了後は、ステート51
0のリセットステートヘ戻る。
【0071】この時、アドレスカウンタ116をカウン
トアップ、また、ライトエンド信号138を出力するの
は第1実施形態と同じである。
【0072】図7に示したステート405の状態で、モ
ード信号601が「1」で、モード信号602が「0」
に設定されている場合は、本フラッシュメモリコントロ
ーラによる自動消去モードに設定されているということ
で、ステート407のイレース(erase)ステート
ヘ移行する。
【0073】このイレースステートでは、まず最初に、
タイミングコントローラ160よりタイミングコントロ
ーラ130ヘの起動信号であるイレースリクエスト信号
611を出力する。この起動信号を受けて、タイミング
コントローラ130は、図8に示したステートの動作を
行う。
【0074】ステート510は、リセット時の最初の状
態である。イレースリクエスト信号611であるところ
の起動信号を受けて、ステート801の第1のイレース
(erase1)ステートに移行する。ここでは、AM
D社製のフラッシュメモリを使用するため、データセレ
クタ107をデータセット621に設定し、ここから
「AAh」を出力する。同時に、アドレスセレクタ11
7をアドレスセット631に設定し、ここから「555
5h」を出力する。この時、ライト起動信号141を出
力し、タイミングジェネレータ140は、ライト動作に
合わせた波形の各信号142〜144を出力する。
【0075】ステート801の動作終了後は、ステート
802の第2のイレース(erase2)ステートに移
行する。
【0076】まず、データセレクタ107をデータセッ
ト621に設定し、ここから「55h」を出力する。同
時に、アドレスセレクタ117をアドレスセット631
に設定し、ここから「2AAAh」を出力する。この
時、ライト起動信号141を出力し、タイミングジェネ
レータ140は、ライト動作に合わせた波形の各信号1
42〜144を出力する。
【0077】ステート802の動作終了後は、ステート
803の第3のイレース(erase3)ステートに移
行する。
【0078】まず、データセレクタ107をデータセッ
ト621に設定し、ここから「80h」を出力する。同
時に、アドレスセレクタ117をアドレスセット631
に設定し、ここから「5555h」を出力する。この
時、ライト起動信号141を出力する。
【0079】ステート803の動作終了後は、ステート
804の第4のイレース(erase4)ステートに移
行する。
【0080】まず、データセレクタ107をデータセッ
ト621に設定し、ここから「AAh」を出力する。同
時に、アドレスセレクタ117をアドレスセット631
に設定し、ここから「5555h」を出力する。この
時、ライト起動信号141を出力し、タイミングジェネ
レータ140は、ライト動作に合わせた波形の各信号1
42〜144を出力する。
【0081】ステート804の動作終了後は、ステート
805の第5のイレース(erase5)ステートに移
行する。
【0082】まず、データセレクタ107をデータセッ
ト621に設定し、ここから「55h」を出力する。同
時に、アドレスセレクタ117をアドレスセット631
に設定し、ここから「2AAAh」を出力する。この
時、ライト起動信号141を出力し、タイミングジェネ
レータ140は、ライト動作に合わせた波形の各信号1
42〜144を出力する。
【0083】ステート805の動作終了後は、ステート
806の第6のイレース(erase6)ステートに移
行する。
【0084】まず、データセレクタ107をデータセッ
ト621に設定し、ここから「10h」を出力する。同
時に、アドレスセレクタ117をアドレスセット631
に設定し、ここから「5555h」を出力する。この
時、ライト起動信号141を出力し、タイミングジェネ
レータ140は、ライト動作に合わせた波形の各信号1
42〜144を出力する。この時点で、イレース動作は
終了する。
【0085】この後、RDY/BSY*信号135をモ
ニタして、レディ状態になった時、イレースエンド信号
610を出力して、ステート510のリセットステート
ヘ戻る。以上が、図6に示したフラッシュメモリコント
ローラの動作説明である。
【0086】以下、本実施形態の特徴的構成について図
1等を参照して説明する。
【0087】上記のように構成されたフラッシュメモリ
203に対するアクセスを制御するフラッシュメモリ制
御装置であって、外部からデータを受信するインタフェ
ース手段(インタフェース204)と、前記インタフェ
ース手段により受信したデータを保持する保持手段(レ
ジスタ167)と、入力される動作モード(本実施形態
では、モード信号601,602の設定状態による)に
基づいて前記フラッシュメモリに対する通常動作モード
とプログラム動作モードとイレース動作モードとのいず
れかに切り替えて、前記保持手段に保持されるデータに
対するCPUの読み出しまたは前記保持手段に保持され
るデータの前記フラッシュメモリへの書き込みあるいは
前記フラッシュメモリのイレースとを切り替え制御する
制御手段(ASIC202)とを有するので、入力され
る動作モードの設定状態に応じてCPUによる受信した
データの読み出しと該CPUを介在することなく該受信
したデータのフラッシュメモリ203への直接書き込み
とイレース動作とを自在に切り替えることができ、フラ
ッシュメモリ203に何ら書き込みあるいは書き換えあ
るいはデータ消去用のプログラムを占有させる必要もな
く、外部入力されるデータに従うプログラムの書き込み
や更新さらには書き込みデータのイレースをCPU20
1を介在させることなく容易に行うことができる。
【0088】また、データ書き込み中の不慮の電源オフ
によりフラッシュメモリ203の内容が破壊されても、
フラッシュメモリ203の内容を自在に復元できる。
【0089】また、フラッシュメモリ203に対するア
クセスを制御するフラッシュメモリ制御装置のメモリア
クセス方法であって、外部からデータを受信するインタ
フェース手段(インタフェース204)により受信した
データを保持し、入力される動作モード(本実施形態で
は、モード信号601,602の設定状態による)に基
づいて前記フラッシュメモリに対する通常動作モードと
プログラム動作モードとイレース動作モードとのいずれ
かに切り替え、前記保持されるデータに対するCPU2
01の読み出しまたは前記保持されるデータの前記フラ
ッシュメモリ203への書き込みあるいは前記フラッシ
ュメモリ203のイレースとを切り替えるので、入力さ
れる動作モードの設定状態に応じてCPUによる受信し
たデータの読み出しと該CPU201を介在することな
く該受信したデータのフラッシュメモリ203への直接
書き込みとイレース動作とを自在に切り替えることがで
き、フラッシュメモリ203に何ら書き込みあるいは書
き換えあるいはデータ消去用のプログラムを占有させる
必要もなく、外部入力されるデータに従うプログラムの
書き込みや更新さらには書き込みデータのイレースをC
PUを介在させることなく容易に行うことができる。
【0090】また、データ書き込み中の不慮の電源オフ
によりフラッシュメモリ203の内容が破壊されても、
フラッシュメモリ203の内容を自在に復元できる。
【0091】上記各実施形態によれば、フラッシュメモ
リ203のプログラムをマイクロプロセッサを介さずに
製品の持つ外部インタフェースから直接フラッシュメモ
リをプログラムすることができる。
【0092】すなわち、フラッシュメモリのプログラム
をマイクロプロセッサを介さずに製品の持つ外部インタ
フェースから直接フラッシュメモリをプログラムする特
殊モードに入る手段として、本コントローラは、フラッ
シュメモリのアドレス自動生成回路、プログラムコマン
ドを発生した後に、インタフェースより受け取った受信
データを書き込んで、フラッシュメモリが内部での書き
込みが終了した後、次のデータを書き込むというシーケ
ンスを制御するタイミングコントローラを内蔵して、通
常動作モードと、プログラム動作モードを切り替える手
段を持ち、プログラム動作モードに設定されていると
き、本フラッシュメモリコントローラは内蔵されたハー
ドウエアによるコマンド生成手段を用い、フラッシュメ
モリに対してプログラム動作を行う。このプログラム動
作は、フラッシュメモリの全領域に対して行われる。
【0093】また、もう一つの特殊モードとして、イレ
ースモードもサポートする。これは、何らかの状態で、
フラッシュメモリのプログラムが破壊された場合などに
用い、実装済みのフラッシュメモリに対して全領域をイ
レースする手段を持つので、前記プログラムモードに再
度入ることを可能にするものである。
【0094】これにより、フラッシュメモリのプログラ
ムをマイクロプロセッサを介さずに製品の持つ外部イン
タフェースから直接フラッシュメモリをプログラムする
ことが可能になる。本発明により、フラッシュメモリに
前もってプログラムを書き込む必要がなくなり、新プロ
グラムリリース後、実際の製品が組みあがるのに、時間
を短縮できるようになる。
【0095】また、1度プログラムを行ったフラッシュ
メモリのブートブロック書き換え途中に不意の電源オフ
が発生した場合など、フラッシュメモリの内容が破壊さ
れても、本コントロ−ラを使用することで、モード信号
をイレースモードに合わせ、まずフラッシュメモリの自
動消去を行い、次にインタフェースより自動プログラム
をすることで、素子の付け替え無しで再動作させること
が可能になる。
【0096】さらに、前もってフラッシュメモリをプロ
グラムする必要が無くなるため、工場での素子の判別の
必要が無く、マーキングなど必要が無くなり部品管理が
簡略化される。
【0097】
【発明の効果】以上説明したように、本発明に係る第1
の発明によれば、フラッシュメモリに対するアクセスを
制御するフラッシュメモリ制御装置であって、外部から
データを受信するインタフェース手段と、前記インタフ
ェース手段により受信したデータを保持する保持手段
と、入力される動作モードに基づいて前記フラッシュメ
モリに対する通常動作モードとプログラム動作モードの
いずれかに切り替えて、前記保持手段に保持されるデー
タに対するCPUの読み出しまたは前記保持手段に保持
されるデータの前記フラッシュメモリへの書き込みを切
り替え制御する制御手段とを有するので、入力される動
作モードの設定状態に応じてCPUによる受信したデー
タの読み出しと該CPUを介在することなく該受信した
データのフラッシュメモリへの直接書き込みとを自在に
切り替えることができ、フラッシュメモリに何ら書き込
みあるいは書き換え用のプログラムを占有させる必要も
なく、外部入力されるデータに従うプログラムの書き込
みや更新をCPUを介在させることなく容易に行うこと
ができる。
【0098】第2の発明によれば、フラッシュメモリに
対するアクセスを制御するフラッシュメモリ制御装置で
あって、外部からデータを受信するインタフェース手段
と、前記インタフェース手段により受信したデータを保
持する保持手段と、入力される動作モードに基づいて前
記フラッシュメモリに対する通常動作モードとプログラ
ム動作モードとイレース動作モードとのいずれかに切り
替えて、前記保持手段に保持されるデータに対するCP
Uの読み出しまたは前記保持手段に保持されるデータの
前記フラッシュメモリへの書き込みあるいは前記フラッ
シュメモリのイレースとを切り替え制御する制御手段と
を有するので、入力される動作モードの設定状態に応じ
てCPUによる受信したデータの読み出しと該CPUを
介在することなく該受信したデータのフラッシュメモリ
への直接書き込みとイレース動作とを自在に切り替える
ことができ、フラッシュメモリに何ら書き込みあるいは
書き換えあるいはデータ消去用のプログラムを占有させ
る必要もなく、外部入力されるデータに従うプログラム
の書き込みや更新さらには書き込みデータのイレースを
CPUを介在させることなく容易に行うことができる。
【0099】また、データ書き込み中の不慮の電源オフ
によりフラッシュメモリの内容が破壊されても、フラッ
シュメモリの内容を自在に復元できる。
【0100】第3の発明によれば、前記制御手段は、前
記フラッシュメモリに対する所定のコマンドを自動生成
するので、所定のコマンドをハードウエアにより自動生
成して、フラッシュメモリの特定アドレスに意図する命
令を書き込むことができる。
【0101】第4の発明によれば、前記制御手段は、所
定のアドレスとデータとを自動生成して前記フラッシュ
メモリに対する所定のコマンドを自動生成するので、意
図するアドレスに基づいて受信したデータをプログラム
として書き込むことができる。
【0102】第5の発明によれば、フラッシュメモリに
対するアクセスを制御するフラッシュメモリ制御装置の
メモリアクセス方法であって、外部からデータを受信す
るインタフェース手段により受信したデータを保持し、
入力される動作モードに基づいて前記フラッシュメモリ
に対する通常動作モードとプログラム動作モードのいず
れかに切り替え、前記保持されるデータに対するCPU
の読み出しまたは前記保持されるデータの前記フラッシ
ュメモリへの書き込みを切り替えるので、入力される動
作モードの設定状態に応じてCPUによる受信したデー
タの読み出しと該CPUを介在することなく該受信した
データのフラッシュメモリへの直接書き込みとを自在に
切り替えることができ、フラッシュメモリに何ら書き込
みあるいは書き換え用のプログラムを占有させる必要も
なく、外部入力されるデータに従うプログラムの書き込
みや更新をCPUを介在させることなく容易に行うこと
ができる。
【0103】第6の発明によれば、フラッシュメモリに
対するアクセスを制御するフラッシュメモリ制御装置の
メモリアクセス方法であって、外部からデータを受信す
るインタフェース手段により受信したデータを保持し、
入力される動作モードに基づいて前記フラッシュメモリ
に対する通常動作モードとプログラム動作モードとイレ
ース動作モードとのいずれかに切り替え、前記保持され
るデータに対するCPUの読み出しまたは前記保持され
るデータの前記フラッシュメモリへの書き込みあるいは
前記フラッシュメモリのイレースとを切り替えるので、
入力される動作モードの設定状態に応じてCPUによる
受信したデータの読み出しと該CPUを介在することな
く該受信したデータのフラッシュメモリへの直接書き込
みとイレース動作とを自在に切り替えることができ、フ
ラッシュメモリに何ら書き込みあるいは書き換えあるい
はデータ消去用のプログラムを占有させる必要もなく、
外部入力されるデータに従うプログラムの書き込みや更
新さらには書き込みデータのイレースをCPUを介在さ
せることなく容易に行うことができる。
【0104】また、データ書き込み中の不慮の電源オフ
によりフラッシュメモリの内容が破壊されても、フラッ
シュメモリの内容を自在に復元できる。
【0105】従って、フラッシュメモリの用途に備えて
事前に所望のプログラムを書き込むような出荷時の煩雑
な処理負担を大幅に緩和して、受信するプログラムデー
タを含む種々のデータをフラッシュメモリに対して自在
にプログラムしたり、該プログラムの更新や破壊された
データの復元を自在に行える等の効果を奏する。
【図面の簡単な説明】
【図1】本発明の第1実施形態を示すメモリ制御装置の
構成を説明するブロック図である。
【図2】図1に示したタイミングコントローラの動作を
説明する図である。
【図3】図1に示したタイミングコントローラの動作を
説明する図である。
【図4】図1に示したフラッシュメモリコントローラが
内蔵されたカスタムICとその周辺回路との対応を説明
するブロック図である。
【図5】図4に示したASICの詳細構成を説明するブ
ロック図である。
【図6】本発明の第2実施形態を示すメモリ制御装置の
構成を説明するブロック図である。
【図7】図6に示したタイミングコントローラの動作を
説明する図である。
【図8】図6に示したタイミングコントローラの動作を
説明する図である。
【符号の説明】
101 データバス 107 データセレクタ 108 データバス 117 アドレスセレクタ 118 アドレスバス 130 タイミングコントローラ 131 クロック 140 タイミング作成回路 151 インタフェースコントローラ 152 8ビットデータバス 160 タイミングコントローラ 167 レジスタ 169 LED

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 フラッシュメモリに対するアクセスを制
    御するフラッシュメモリ制御装置であって、 外部からデータを受信するインタフェース手段と、 前記インタフェース手段により受信したデータを保持す
    る保持手段と、 入力される動作モードに基づいて前記フラッシュメモリ
    に対する通常動作モードとプログラム動作モードのいず
    れかに切り替えて、前記保持手段に保持されるデータに
    対するCPUの読み出しまたは前記保持手段に保持され
    るデータの前記フラッシュメモリへの書き込みを切り替
    え制御する制御手段と、 を有することを特徴とするフラッシュメモリ制御装置。
  2. 【請求項2】 フラッシュメモリに対するアクセスを制
    御するフラッシュメモリ制御装置であって、 外部からデータを受信するインタフェース手段と、 前記インタフェース手段により受信したデータを保持す
    る保持手段と、 入力される動作モードに基づいて前記フラッシュメモリ
    に対する通常動作モードとプログラム動作モードとイレ
    ース動作モードとのいずれかに切り替えて、前記保持手
    段に保持されるデータに対するCPUの読み出しまたは
    前記保持手段に保持されるデータの前記フラッシュメモ
    リへの書き込みあるいは前記フラッシュメモリのイレー
    スとを切り替え制御する制御手段と、を有することを特
    徴とするフラッシュメモリ制御装置。
  3. 【請求項3】 前記制御手段は、前記フラッシュメモリ
    に対する所定のコマンドを自動生成することを特徴とす
    る請求項1記載のフラッシュメモリ制御装置。
  4. 【請求項4】 前記制御手段は、所定のアドレスとデー
    タとを自動生成して前記フラッシュメモリに対する所定
    のコマンドを自動生成することを特徴とする請求項1記
    載のフラッシュメモリ制御装置。
  5. 【請求項5】 フラッシュメモリに対するアクセスを制
    御するフラッシュメモリ制御装置のメモリアクセス方法
    であって、 外部からデータを受信するインタフェース手段により受
    信したデータを保持し、 入力される動作モードに基づいて前記フラッシュメモリ
    に対する通常動作モードとプログラム動作モードのいず
    れかに切り替え、前記保持されるデータに対するCPU
    の読み出しまたは前記保持されるデータの前記フラッシ
    ュメモリへの書き込みを切り替えることを特徴とするフ
    ラッシュメモリ制御装置のメモリアクセス方法。
  6. 【請求項6】 フラッシュメモリに対するアクセスを制
    御するフラッシュメモリ制御装置のメモリアクセス方法
    であって、 外部からデータを受信するインタフェース手段により受
    信したデータを保持し、 入力される動作モードに基づいて前記フラッシュメモリ
    に対する通常動作モードとプログラム動作モードとイレ
    ース動作モードとのいずれかに切り替え、 前記保持されるデータに対するCPUの読み出しまたは
    前記に保持されるデータの前記フラッシュメモリへの書
    き込みあるいは前記フラッシュメモリのイレースとを切
    り替えることを特徴とするフラッシュメモリ制御装置の
    メモリアクセス方法。
JP16114598A 1998-06-09 1998-06-09 フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法 Pending JPH11353170A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16114598A JPH11353170A (ja) 1998-06-09 1998-06-09 フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16114598A JPH11353170A (ja) 1998-06-09 1998-06-09 フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法

Publications (1)

Publication Number Publication Date
JPH11353170A true JPH11353170A (ja) 1999-12-24

Family

ID=15729456

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16114598A Pending JPH11353170A (ja) 1998-06-09 1998-06-09 フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法

Country Status (1)

Country Link
JP (1) JPH11353170A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1293460C (zh) * 2003-06-26 2007-01-03 三洋电机株式会社 控制装置以及数据写入方法
CN100373336C (zh) * 2005-01-28 2008-03-05 中兴通讯股份有限公司 一种实现单片机闪存动态更新的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1293460C (zh) * 2003-06-26 2007-01-03 三洋电机株式会社 控制装置以及数据写入方法
CN100373336C (zh) * 2005-01-28 2008-03-05 中兴通讯股份有限公司 一种实现单片机闪存动态更新的方法

Similar Documents

Publication Publication Date Title
US5327531A (en) Data processing system including corrupt flash ROM recovery
US6009496A (en) Microcontroller with programmable embedded flash memory
US5974528A (en) Microcomputer with embedded flash memory having on-chip programming capability and method of programming data into the embedded flash memory
KR100604877B1 (ko) 내장 시스템의 메모리 어드레스의 매핑을 제어하는 장치와방법
US5950222A (en) Microcomputer using a non-volatile memory
JP2003216483A (ja) メモリコントローラおよびメモリシステム装置
TW403880B (en) Relocatable code storage in an integrated circuit with an embedded microcontroller
JPH1063442A (ja) 半導体ディスク装置
KR100223844B1 (ko) 옵션 자동 설정 회로
JPH11353170A (ja) フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法
JPH10333898A (ja) マイクロコンピュータ
CN109147847B (zh) 半导体装置和闪存存储器控制方法
JPH11184724A (ja) インサーキットエミュレータ及び半導体集積回路
JP2000276461A (ja) マイクロコンピュータ
JPH0581145A (ja) Eepromへのデータ書き込み回路
GB2304209A (en) Starting up a processor system
JP2001318907A (ja) フラッシュメモリ内蔵マイクロコンピュータ
JP2000222380A (ja) マイクロコンピュータ
JP2928216B1 (ja) 半導体集積回路
JPH11328089A (ja) Pciバスインタフェース用デバイスにおけるid情報書き込み回路
JPH07193860A (ja) プログラムメモリを有した携帯端末装置
JPH1050086A (ja) Eepromを有するマイクロコンピュータ及びその書換方法
JP2003296198A (ja) 不揮発性メモリの制御回路
JP3439018B2 (ja) マイクロコンピュータ
JPH11353153A (ja) レジスタ設定回路