JP2000306389A - 不揮発性半導体メモリを用いた記憶装置 - Google Patents

不揮発性半導体メモリを用いた記憶装置

Info

Publication number
JP2000306389A
JP2000306389A JP11113197A JP11319799A JP2000306389A JP 2000306389 A JP2000306389 A JP 2000306389A JP 11113197 A JP11113197 A JP 11113197A JP 11319799 A JP11319799 A JP 11319799A JP 2000306389 A JP2000306389 A JP 2000306389A
Authority
JP
Japan
Prior art keywords
sector
host computer
data
sector data
read
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
JP11113197A
Other languages
English (en)
Inventor
Takayuki Tamura
隆之 田村
Kazuo Nakamura
一男 中村
Kunihiro Katayama
国弘 片山
Shinya Iguchi
慎也 井口
Tomihisa Hatano
富久 幡野
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP11113197A priority Critical patent/JP2000306389A/ja
Publication of JP2000306389A publication Critical patent/JP2000306389A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Read Only Memory (AREA)

Abstract

(57)【要約】 【課題】フラッシュメモリなどの不揮発性半導体メモリ
を用いた記憶装置において、セクタリード・コマンドに
対し、高速な記憶装置を提供する。 【解決手段】ホストコンピュータ2が読み出さないセク
タデータもデータバッファ13に格納する。続けて、ホ
ストコンピュータ2がセクタデータの読み出しを行う
と、既にデータバッファ13にセクタデータが格納され
ているので、フラッシュメモリ17からのデータ転送時
間を短縮でき、高速なセクタリードを提供できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、不揮発性半導体メ
モリを記憶媒体として用いた記憶装置に係り、特に、セ
クタデータ読み出しの高速化を図った記憶装置に関す
る。
【0002】
【従来の技術】不揮発性半導体メモリを用いた記憶装置
として、フラッシュメモリを用いた記憶装置がある。こ
の従来例として、特開平5−27924号公報に示され
る「半導体メモリを用いた外部記憶システム及びその制
御方法」がある。従来の記憶装置では、ホストコンピュ
ータが書き込んだコマンドおよびこのコマンドと一緒に
ホストコンピュータが書き込むセクタアドレスを基に、
セクタデータの書き込みや読み出し等を行っている。
【0003】また、記憶装置にセクタデータを格納する
パーソナルコンピュータなどのホストコンピュータは、
連続したセクタデータを読み出すときに、複数のセクタ
リード・コマンドに分割する。例えば、64Kバイト
(128セクタ)単位にセクタデータを読み出すホスト
コンピュータが128Kバイト(256セクタ)のセク
タデータを読み出すとき、ホストコンピュータは128
セクタのセクタリード・コマンドを2回発行して、12
8Kバイトのセクタデータを読み出す。
【0004】
【発明が解決しようとする課題】上記従来技術は、ホス
トコンピュータによるセクタデータの読み出しの際に、
連続したホストコンピュータからのセクタリード・コマ
ンドに対して配慮がなされておらず、セクタデータ読み
出しに対する高速化に問題がある。
【0005】本発明の目的は、ホストコンピュータが連
続してセクタリード・コマンドを発行した場合に、セク
タデータ読み出しの高速化を図ることである。
【0006】
【課題を解決するための手段】上記目的を達成するため
に、本発明の記憶装置は、まず、ホストコンピュータが
読み出すセクタデータがデータバッファに格納されてい
るかどうかを判別する。データバッファにホストコンピ
ュータが読み出すセクタデータが格納されている場合に
は、記憶装置は即座に、ホストコンピュータに対してセ
クタデータの読み出しが可能であることを通知し、デー
タバッファに格納されているセクタデータをホストコン
ピュータに読み出させる。
【0007】また、ホストコンピュータが一つのセクタ
データを読み出すときには、ホストコンピュータが読み
出すセクタデータが含まれているフラッシュメモリ内の
ブロック全部をデータバッファに読み出す。
【0008】さらに、ホストコンピュータが複数のセク
タデータを読み出すとき、ホストコンピュータが最後に
読み出すセクタデータが格納されているフラッシュメモ
リ内のブロック全部をデータバッファに読み出す。
【0009】そして、ホストコンピュータが最後に読み
出すセクタデータが、フラッシュメモリ内のブロックに
おける最後のセクタデータと一致する場合には、ホスト
コンピュータが読み出すセクタデータの次のセクタアド
レスのセクタデータが格納されているブロックをフラッ
シュメモリからデータバッファに読み出す。
【0010】これにより、ホストコンピュータが連続し
たセクタデータを読み出すために、続けてセクタリード
・コマンドを発行した場合、本発明の記憶装置は、ホス
トコンピュータが最初に読み出すセクタデータを準備す
るための時間を大幅に削減できる。
【0011】以上のように、ホストコンピュータが読み
出すセクタデータを予め準備することにより、セクタデ
ータの読み出しに対する高速化が可能になる。
【0012】
【発明の実施の形態】以下、本発明に係る不揮発性半導
体メモリを用いた記憶装置の実施例について説明する。
【0013】図1に、本発明の一実施例である記憶装置
の構成をコンピュータの記憶装置への適用を例にとり示
す。
【0014】図1において、1は不揮発性半導体メモリ
を用いた記憶装置であり、ホストコンピュータ2の記憶
装置である。ホストコンピュータ2は、記憶装置1に対
してセクタデータの書き込みや読み出しを行う。ホスト
コンピュータ2の例として、パーソナルコンピュータ
(PC)や、デジタルスチルカメラなどがある。
【0015】記憶装置1は、不揮発性半導体メモリとし
てフラッシュメモリを用いていることからフラッシュメ
モリカードと呼ばれる。以下、記憶装置1をフラッシュ
メモリカード1と称する。
【0016】フラッシュメモリカード1は、PCMCI
Aバス21を介してホストコンピュータ2からのコマン
ドの受け付けやセクタデータの授受を行う。図1では、
PCMCIAインタフェースに準拠したPCMCIAバ
ス21を例に説明する。PCMCIAバスの他に、ID
E(ATA)インタフェースやSCSIインタフェース
など様々なインタフェースがあり、外部記憶装置を必要
とするホストコンピュータ2と間のプロトコルの取り決
めを有するものであれば特に限定はない。
【0017】フラッシュメモリカード1において、11
は、ホストコンピュータ2とのインタフェースを司るホ
ストインタフェース部である。
【0018】12は、ホストコンピュータ2とデータバ
ッファ13間、および、データバッファ13とフラッシ
ュメモリ17間におけるセクタデータ転送を制御するデ
ータバッファ制御部である。
【0019】13は、フラッシュメモリカード1とホス
トコンピュータ2との間でセクタデータの授受を行うと
き、セクタデータを一時格納するためのデータバッファ
である。
【0020】15は、フラッシュメモリ17とのインタ
フェースを司るフラッシュインタフェース部である。
【0021】16は、マイクロコンピュータ(以下、マ
イコンと略す)であり、ホストコンピュータ2が書き込
むコマンドの解析や制御、ホストコンピュータ2が書き
込むセクタデータの管理、そして、フラッシュメモリ1
7の管理を行う。
【0022】17は、ホストコンピュータ2が書き込む
セクタデータを格納するためのフラッシュメモリであ
る。フラッシュメモリ17は、フラッシュバス106に
よって、フラッシュインタフェース部15に接続されて
いる。図3に、フラッシュメモリ17の内部構成を示
す。フラッシュメモリ17は、四つのセクタで一つのブ
ロックを構成している。ここで、一つのブロックは、同
時に一括消去が可能である。
【0023】図3に示すフラッシュメモリ17では、ブ
ロックアドレスBA(k)のブロックデータには、セク
タアドレスSA(4n)、SA(4n+1),SA(4
n+2),SA(4n+3)の四つのセクタデータが格
納されている。また、ブロックアドレスBA(m)のブ
ロックデータには、セクタアドレスSA(4n+4)、
SA(4n+5),SA(4n+6),SA(4n+
7)の四つのセクタデータが格納されている。セクタア
ドレスは、ホストコンピュータ2がアドレッシングする
セクタデータのアドレスである。ブロックアドレスは、
フラッシュメモリ17に格納されているブロックデータ
をアクセスするためのアドレスである。セクタアドレス
とブロックアドレスの関係は、マイコン16によって制
御される。
【0024】図2は、図1に示すフラッシュメモリカー
ド1の動作フローの概略を示している。まず、ステップ
S201において、フラッシュメモリカード1は、ホス
トコンピュータ2によるコマンドの書き込みを待つ。ホ
ストコンピュータ2が書き込むコマンドは、ホストイン
タフェース部11に書き込まれる。ホストインタフェー
ス部11は、ホストコンピュータ2がコマンドを書き込
んだ時、マイコンバス105を通して、マイコン16に
通知する。
【0025】次いで、ステップS202において、コマ
ンドの種類を判定する。マイコン16は、マイコンバス
105を通して、ホストインタフェース部11に書き込
まれているコマンドを読み出し、解析する。
【0026】ホストコンピュータ2がセクタデータを書
き込むコマンドである「セクタライト・コマンド」を書
き込むと、フラッシュメモリカード1は「セクタライト
処理(ステップS203)」を実行する。ステップS2
03のセクタライト処理は、ホストコンピュータ2が書
き込んだセクタデータをフラッシュメモリカード1のフ
ラッシュメモリ17に格納する処理を行う。
【0027】ホストコンピュータ2がセクタデータを読
み出すコマンドである「セクタリード・コマンド」を書
き込むと、フラッシュメモリカード1は「セクタリード
処理(ステップS204)」を実行する。ステップS2
04のセクタリード処理では、フラッシュメモリ17に
格納されているセクタデータをホストコンピュータ2に
出力する。
【0028】ホストコンピュータ2がセクタデータの転
送を行わないコマンドである「非データ転送コマンド」
を書き込むと、フラッシュメモリカード1は「非データ
転送処理(ステップS205)」を実行する。ここで、
セクタデータの転送を行わないコマンドとは、フラッシ
ュメモリカード1の状態を読み出したり、フラッシュメ
モリカード1に対するパワー制御などの指示を行うコマ
ンドである。
【0029】ここで、図2におけるステップS202で
は、コマンドの種類の判定となっているが、同時に、ホ
ストコンピュータ2がアクセスするセクタデータの先頭
アドレスやセクタ数も判定する。
【0030】次に、ステップS204のセクタリード処
理の詳細を説明する。
【0031】図13は、図2のセクタリード処理(ステ
ップS204)の一実施例である。ここで、ホストコン
ピュータ2が読み出すセクタデータをセクタデータHR
と呼ぶ。セクタデータHRは常に変化し、同一のセクタ
データを示しているわけではない。例えば、ホストコン
ピュータ2がセクタアドレスSA(n)とセクタアドレ
スSA(4n+1)の二つのセクタデータを連続(同一
コマンド)で読み出す時には、ホストコンピュータ2が
読み出す一つ目のセクタデータHRは、セクタアドレス
SA(4n)のセクタデータであり、ホストコンピュー
タ2が読み出す二つ目のセクタデータHRはセクタアド
レスSA(4n+1)のセクタデータとなる。
【0032】まず、ステップS301において、データ
バッファ13に、ホストコンピュータ2が読み出すセク
タデータHRが格納されているかどうかを確認する。デ
ータバッファ13にセクタデータHRが格納されていな
い(No)場合には、ステップS302に進む。データ
バッファ13にセクタデータHRが格納されている(Y
es)時には、ステップS307に進む。
【0033】ステップS302では、フラッシュメモリ
17からデータバッファ13へ、セクタデータHRを含
むブロックデータの転送が実行中であるかどうかを確認
している。セクタデータHRを含むブロックデータの転
送中でない(No)場合には、ステップS303に進
む。セクタデータHRを含むブロックデータのデータ転
送中である(Yes)場合には、ステップS306に進
む。
【0034】ステップS303では、セクタデータHR
を含まないブロックデータの転送中であるかどうかを確
認している。セクタデータHRを含まないブロックのデ
ータ転送が実行中(Yes)ならば、ブロックデータ転
送を中断(ステップS304)し、その後、セクタデー
タHRを含むブロックのデータ転送を開始させる(ステ
ップS305)。セクタデータHRを含まないブロック
のデータ転送が実行されていない(No)ならば、セク
タデータHRを含むブロックのデータ転送を開始させる
(ステップS305)。
【0035】次いで、ステップS306では、フラッシ
ュメモリ17からデータバッファ13へのセクタデータ
HRのデータ転送が終了したかどうかを確認している。
セクタデータHRのデータ転送が終了するとステップS
307に進む。
【0036】ステップS307では、データバッファ1
3にホストコンピュータ2が読み出すセクタデータHR
が格納されたことをホストコンピュータ2に知らせるた
めに、ホストコンピュータ2に対するデータ・レディを
出力する。
【0037】ホストコンピュータ2は、フラッシュメモ
リカード1がデータ・レディを出力すると、セクタデー
タHRの読み出しを開始する。
【0038】次いで、ステップS308(図14)にお
いて、フラッシュメモリカード1は、ホストコンピュー
タ2が読み出しているセクタデータがホストコンピュー
タ2が最後に読み出すセクタデータであるかどうかを確
認する。ホストコンピュータ2が最後に読み出すセクタ
データである場合(Yes)には、ステップS310に
進む。ホストコンピュータ2が最後に読み出すセクタデ
ータでない場合(No)には、ステップS309に進
む。
【0039】ステップS310では、ホストコンピュー
タ2が最後に読み出すセクタデータが、フラッシュメモ
リ17のブロックにおける最後のデータであるかどうか
を判定している。例えば、図3を例に説明すると、ホス
トコンピュータ2が読み出すセクタデータがセクタアド
レスSA(4n+3)ならば、Yesとなり、ステップ
S311に進む。ホストコンピュータ2が読み出すセク
タデータがセクタアドレスSA(4n)〜SA(4n+
2)ならば、Noとなり、セクタリード処理は終了す
る。
【0040】ステップS311では、次のセクタデータ
が格納されているブロックのデータ転送を開始してい
る。例えば、ホストコンピュータ2が読み出すセクタデ
ータが図3におけるセクタアドレスSA(4n+3)な
らば、ブロックアドレスBA(m)のデータをデータバ
ッファ13に転送することになる。
【0041】また、ステップS309では、フラッシュ
メモリカード1は、ホストコンピュータ2によるセクタ
データの読み出し終了を待つ。ホストコンピュータ2に
よるセクタデータの読み出しが終了する(Yes)と、
ステップS301に戻り、同一の処理を繰り返す。
【0042】次に、図13と図14で説明したセクタリ
ード処理のフローに関して、具体的な例を用いて、以下
に説明する。
【0043】図4は、ホストコンピュータ2がセクタア
ドレスSA(4n+1)とSA(4n+2)を読み出す
ときのタイミングを示したタイミングチャートである。
【0044】時間t001において、ホストコンピュー
タ2が「セクタリードコマンド1」を書き込むと、マイ
コン16はこれを検出し、コマンドの種類を解析する。
これは、図2におけるステップS201およびS202
に対応している。「セクタリードコマンド1」は、ホス
トコンピュータ2がセクタアドレスSA(4n+1)と
SA(4n+2)を読み出すコマンドである。
【0045】コマンドの種類が確定した後、ホストコン
ピュータ2が読み出すセクタデータがデータバッファ1
3に格納されているかどうかの判定を行う(図13のス
テップS301)。
【0046】ここで、図4は、データバッファ13にホ
ストコンピュータ2が読み出すセクタデータが格納され
ていない時を示している。
【0047】次に、時間t002において、マイコン1
6は、コマンドの種類の判定の結果から、フラッシュメ
モリ17にブロックデータの読み出しを行うために「フ
ラッシュリードコマンド1」を発行する(図13のステ
ップS305)。「フラッシュリードコマンド1」は、
フラッシュメモリ17のブロックアドレスBA(k)の
セクタアドレスSA(4n+1)以降を読み出すフラッ
シュメモリ17へのコマンドである。フラッシュメモリ
17へのコマンドは、フラッシュインタフェース部15
からフラッシュメモリ17に発行される。
【0048】時間t003でフラッシュメモリ17から
データバッファ13への実際のデータ転送が開始され
る。セクタアドレスSA(4n+1)の転送が時間t0
04において終了すると、ホストコンピュータ2に対し
てデータ・レディを出力する(図13のステップS30
7)。ホストコンピュータ2は、データ・レディを受け
て、時間t005において、セクタアドレスSA(4n
+1)のセクタデータの読み出しを開始する。
【0049】ここで、図6に、時間t004におけるデ
ータバッファ13の状態を示す。本実施例におけるデー
タバッファ13は、131〜134の四つのセクタデー
タを格納できる容量を持っている。ただし、データバッ
ファの容量はフラッシュメモリ17のブロックと同一ま
たはより大きい容量であれば良い。時間t004におけ
るデータバッファ13は、132にセクタアドレスSA
(4n+1)のセクタデータが格納される。131、1
33そして134は空き状態となる。
【0050】ホストコンピュータ2によるセクタアドレ
スSA(4n+1)のセクタデータの読み出しは、ホス
トコンピュータ2による最後のセクタデータの読み出し
ではないので、フラッシュメモリカード1は、ホストコ
ンピュータ2によるセクタアドレスSA(4n+1)の
セクタデータの読み出しが終了するまで待つ(図14の
ステップS309)。
【0051】ホストコンピュータ2によるセクタアドレ
スSA(4n+1)のセクタデータの読み出しが終了し
た後、セクタアドレスSA(4n+2)のセクタデータ
がフラッシュメモリ17からデータバッファ13に転送
されているので、時間t007において、ホストコンピ
ュータ2に対してデータ・レディを出力する(図13の
ステップS307)。ホストコンピュータ2は、データ
・レディを受けて、時間t005において、セクタアド
レスSA(4n+2)のセクタデータの読み出しを開始
する。また、ホストコンピュータ2によるセクタアドレ
スSA(4n+2)のセクタデータの読み出しは、ホス
トコンピュータ2による最後のセクタデータの読み出し
なので、「セクタリードコマンド1」に対する処理が終
了する。
【0052】ここで、図7は、図4の時間t008にお
けるデータバッファ13の内容を示している。132〜
134にセクタアドレスSA(4n+1)〜SA(4N
+3)のセクタデータが格納されている。
【0053】図5は、ホストコンピュータ2がセクタア
ドレスSA(4n+3)のセクタデータを読み出すとき
のタイミングを示したタイミングチャートである。ま
た、図5のタイミングチャートは、図4に示したホスト
コンピュータ2による「セクタリードコマンド1」に続
いて、セクタアドレスSA(4n+3)のセクタデータ
を読み出している。
【0054】まず、時間t009において、ホストコン
ピュータ2は「セクタリードコマンド2」を書き込む
と、マイコン16はこれを検出し、コマンドの種類を解
析する(図2のステップS201およびS202)。
「セクタリードコマンド2」は、ホストコンピュータ2
がセクタアドレスSA(4n+3)を読み出すコマンド
である。
【0055】図5のホストコンピュータ2によるセクタ
データの読み出しは、図4の読み出しに続いての動作で
あるので、セクタアドレスSA(4n+3)のセクタデ
ータはデータバッファ13の134に格納されている。
したがって、セクタアドレスSA(4n+3)のセクタ
データは、フラッシュメモリ17からデータバッファ1
3に転送する必要はない。
【0056】つまり、コマンドの種類が確定した後、ホ
ストコンピュータ2が読み出すセクタデータがデータバ
ッファ13に格納されているので、ホストコンピュータ
2に対してデータ・レディを出力する(図13のステッ
プS307)。ホストコンピュータ2は、データ・レデ
ィを受けて、時間t010において、セクタアドレスS
A(4n+3)のセクタデータの読み出しを開始する。
【0057】次いで、セクタアドレスSA(4n+3)
のセクタデータは、ホストコンピュータ2が最後に読み
出すセクタデータであり、ブロックBA(k)内の最後
のセクタデータであるので、図14のステップS311
が実行される。時間t011が、図14のステップS3
11であり、ここでは、ホストコンピュータ2が最後に
読み出すセクタデータ(セクタアドレスSA(4n+
3)のセクタデータ)の次のセクタデータが含まれるブ
ロック(図3では、ブロックアドレスBA(m))を読
み出すための「フラッシュリードコマンド2」をフラッ
シュメモリ17に発行している。
【0058】時間t012からt016の間において、
フラッシュメモリ17のブロックアドレスBA(m)の
ブロックデータがデータバッファ13に転送される。
【0059】ここで、図8に時間t013におけるデー
タバッファ13の内容と、図9に時間t016における
データバッファ13の内容を示す。図9に示すように、
図5に示すセクタアドレスSA(4n+3)のセクタデ
ータの読み出しの後、さらにホストコンピュータ2によ
るセクタアドレスSA(4n+4)のセクタデータの読
み出しが新たに発生した場合、セクタアドレスSA(4
n+4)のセクタデータは既にデータバッファ13に格
納されているので、フラッシュメモリ17からの読み出
しの時間を見かけ上ゼロとすることができる。
【0060】このように、ホストコンピュータ2が読み
出すセクタデータを予めデータバッファ13に格納して
おくことにより、ホストコンピュータ2が読み出すセク
タデータに対するフラッシュメモリ17からデータバッ
ファ13への転送時間を見かけ上ゼロとすることが可能
となり、セクタデータの読み出しの高速化が図られる。
【0061】次に、本発明における他の実施例につい
て、図10を用いて説明する。
【0062】まず、時間t101において、ホストコン
ピュータ2は、PCMCIAバスを使用して、「セクタ
リードコマンド1」をフラッシュメモリカード1に書き
込む。「セクタリードコマンド1」は、図4と同一であ
り、セクタアドレスSA(4n+1)およびSA(4n
+2)の二つのセクタデータの読み出しを行うためのコ
マンドである。また、図4での説明と同様に、「セクタ
リードコマンド1」を書き込んだ時、データバッファ1
3には、セクタアドレスSA(4n+1)およびSA
(4n+2)の二つのセクタデータは格納されていない
こととして説明する。
【0063】図10は、図4に示すタイミングチャート
とほぼ同一である。ただし、ホストコンピュータ2に対
するデータ・レディを出力するタイミングが、図4では
セクタアドレスSA(4n+1)のセクタデータがデー
タバッファ13に転送された直後であったが、図10で
はセクタアドレスSA(4n+1)からSA(4n+
3)の三つセクタデータがデータバッファ13に転送さ
れた直後となっている。つまり、ブロックアドレスBA
(k)のブロックデータが転送された後に、ホストコン
ピュータ2のデータ転送が開始される。
【0064】これにより、フラッシュメモリ17とデー
タバッファ13の間のデータ転送と、ホストコンピュー
タ2とデータバッファ13の間のデータ転送をそれぞれ
別々に実行することができるので、制御を簡単にでき
る。
【0065】また、図10のタイミングチャートで示す
セクタアドレスSA(4n+1)およびSA(4n+
1)のセクタデータの読み出しの後に、セクタアドレス
SA(4n+3)のセクタデータの読み出しが発生した
場合、図5と同一のタイミングチャートとなる。したが
って、ホストコンピュータ2が読み出すセクタデータを
予めデータバッファ13に格納しておくことにより、ホ
ストコンピュータ2が読み出すセクタデータに対するフ
ラッシュメモリ17からデータバッファ13への転送時
間を見かけ上ゼロとすることが可能となり、セクタデー
タの読み出しの高速化が図られる。
【0066】さらに、本発明における他の実施例を図1
1を用いて説明する。
【0067】まず、時間t201において、ホストコン
ピュータ2は、PCMCIAバスを使用して、「セクタ
リードコマンド1」をフラッシュメモリカード1に書き
込む。「セクタリードコマンド1」は、図4と同一であ
り、セクタアドレスSA(4n+1)およびSA(4n
+2)の二つのセクタデータの読み出しを行うためのコ
マンドである。また、図4での説明と同様に、「セクタ
リードコマンド1」を書き込んだ時、データバッファ1
3には、セクタアドレスSA(4n+1)およびSA
(4n+2)の二つのセクタデータは格納されていない
こととして説明する。
【0068】図11では、図4での「フラッシュリード
コマンド1」に変わり、「フラッシュリードコマンド
3」をフラッシュメモリ17に発行している(時間t2
02)。「フラッシュリードコマンド3」は、フラッシ
ュメモリ17のブロックアドレスBA(k)のブロック
データを全てデータバッファ13に転送するコマンドで
ある。
【0069】時間t204において、セクタアドレスS
A(4n+1)のセクタデータがデータバッファ13に
転送されると、ホストコンピュータ2が時間t205か
らセクタアドレスSA(4n+1)のセクタデータの読
み出しを開始する。以後、図4と同様な動作を行う。
【0070】また、図11のタイミングチャートで示す
セクタアドレスSA(4n+1)およびSA(4n+
1)のセクタデータの読み出しの後に、セクタアドレス
SA(4n+3)のセクタデータの読み出しが発生した
場合、図5と同一のタイミングチャートとなる。したが
って、ホストコンピュータ2が読み出すセクタデータを
予めデータバッファ13に格納しておくことにより、ホ
ストコンピュータ2が読み出すセクタデータに対するフ
ラッシュメモリ17からデータバッファ13への転送時
間を見かけ上ゼロとすることが可能となり、セクタデー
タの読み出しの高速化が図られる。
【0071】最後に、本発明における他の実施例を図1
2を用いて説明する。
【0072】まず、時間t301において、ホストコン
ピュータ2は、PCMCIAバスを使用して、「セクタ
リードコマンド1」をフラッシュメモリカード1に書き
込む。「セクタリードコマンド1」は、図4と同一であ
り、セクタアドレスSA(4n+1)およびSA(4n
+2)の二つのセクタデータの読み出しを行うためのコ
マンドである。また、図4での説明と同様に、「セクタ
リードコマンド1」を書き込んだ時、データバッファ1
3には、セクタアドレスSA(4n+1)およびSA
(4n+2)の二つのセクタデータは格納されていない
こととして説明する。
【0073】図11では、図10での「フラッシュリー
ドコマンド1」に変わり、「フラッシュリードコマンド
3」をフラッシュメモリ17に発行している(時間t3
02)。「フラッシュリードコマンド3」は、フラッシ
ュメモリ17のブロックアドレスBA(k)のブロック
データを全てデータバッファ13に転送するコマンドで
ある。
【0074】時間t305において、セクタアドレスS
A(4n)からSA(4n+3)のセクタデータがデー
タバッファ13に転送されると、ホストコンピュータ2
が時間t306からセクタアドレスSA(4n+1)の
セクタデータの読み出しを開始する。以後、図10と同
様な動作を行う。
【0075】また、図12のタイミングチャートで示す
セクタアドレスSA(4n+1)およびSA(4n+
1)のセクタデータの読み出しの後に、セクタアドレス
SA(4n+3)のセクタデータの読み出しが発生した
場合、図5と同一のタイミングチャートとなる。したが
って、ホストコンピュータ2が読み出すセクタデータを
予めデータバッファ13に格納しておくことにより、ホ
ストコンピュータ2が読み出すセクタデータに対するフ
ラッシュメモリ17からデータバッファ13への転送時
間を見かけ上ゼロとすることが可能となり、セクタデー
タの読み出しの高速化を図ることができる。
【0076】さらに、図11および図12では、それぞ
れのホストコンピュータ2によるセクタデータの読み出
しの後に、セクタアドレスSA(4n)のセクタデータ
の読み出しが発生した場合でも、セクタアドレスSA
(4n)のセクタデータに対するフラッシュメモリ17
からデータバッファ13への転送時間を見かけ上ゼロと
することが可能となり、セクタデータの読み出しの高速
化を図ることができる。
【0077】
【発明の効果】以上説明したように、本発明によれば、
フラッシュメモリなどの不揮発性半導体メモリを用いた
記憶装置において、セクタデータの読み出しの高速化を
実現する記憶装置を提供できる効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例を示す記憶装置の構成を示す
ブロック図である。
【図2】本発明の記憶装置の処理手順を示すフローチャ
ートである。
【図3】フラッシュメモリ17の構成例を示す図であ
る。
【図4】記憶装置からのセクタデータの読み出しを示す
タイミングチャートである。
【図5】記憶装置からのセクタデータの読み出しを示す
タイミングチャートである。
【図6】ある時間におけるデータバッファ13の内容の
一例を示す図である。
【図7】ある時間におけるデータバッファ13の内容の
一例を示す図である。
【図8】ある時間におけるデータバッファ13の内容の
一例を示す図である。
【図9】ある時間におけるデータバッファ13の内容の
一例を示す図である。
【図10】記憶装置からのセクタデータの読み出しを示
すタイミングチャートである。
【図11】記憶装置からのセクタデータの読み出しを示
すタイミングチャートである。
【図12】記憶装置からのセクタデータの読み出しを示
すタイミングチャートである。
【図13】本発明の記憶装置のセクタリード処理手順を
示すフローチャートである。
【図14】本発明の記憶装置のセクタリード処理手順を
示すフローチャートである。
【符号の説明】
1…フラッシュメモリカード(記憶装置)、2…ホスト
コンピュータ(PC等)、11…ホストインタフェース
部、12…データバッファ制御部、13…データバッフ
ァ、15…フラッシュインタフェース部、16…マイク
ロコンピュータ(マイコン)、17…フラッシュメモ
リ、21…PCMCIAバス、105…マイコンバス、
106…フラッシュバス。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 片山 国弘 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 井口 慎也 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 幡野 富久 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 Fターム(参考) 5B005 JJ12 KK12 MM22 NN01 NN22 UU12 5B025 AD04 AD05 AD08 AE05 5B060 AC20 CA04 CA06

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】ホストコンピュータに接続可能な記憶装置
    であって、該記憶装置は、該ホストコンピュータが書き
    込むセクタデータを格納するための不揮発性半導体メモ
    リと、該ホストコンピュータとの接続手段と、該不揮発
    性半導体メモリの制御手段と、該ホストコンピュータに
    よるセクタデータの読み出しおよび書き込みにおいて一
    時的に使用されるデータバッファを有し、該不揮発性半
    導体メモリは、多数の不揮発性メモリセルから構成さ
    れ、該メモリセルの集合によって一つのブロックを構成
    し、該ブロックにおいて一括消去可能であり、該ブロッ
    クは複数のセクタデータを格納可能であり、該ホストコ
    ンピュータによるセクタデータの読み出しにおいて、該
    不揮発性半導体メモリの該ブロックに格納されている全
    セクタデータを常に一つのコマンドで読み出すことを特
    徴とする不揮発性半導体メモリを用いた記憶装置。
  2. 【請求項2】請求項1に記載の記憶装置において、該デ
    ータバッファに、該ホストコンピュータが読み出すセク
    タデータが既に格納されている場合には、該セクタデー
    タを該ホストコンピュータに読み出させることを特徴と
    する不揮発性半導体メモリを用いた記憶装置。
  3. 【請求項3】請求項1に記載の記憶装置において、該ホ
    ストコンピュータが最後に読み出すセクタデータが、該
    フラッシュメモリの該ブロックの最後のセクタデータで
    ある場合には、該ホストコンピュータが読み出す該最後
    のセクタデータの次のセクタアドレスのセクタデータを
    含む該フラッシュメモリのブロックの全セクタデータを
    該データバッファに読み出すことを特徴とする不揮発性
    半導体メモリを用いた記憶装置。
  4. 【請求項4】ホストコンピュータに接続可能な記憶装置
    であって、該記憶装置は、該ホストコンピュータが書き
    込むセクタデータを格納するための不揮発性半導体メモ
    リと、該ホストコンピュータとの接続手段と、該不揮発
    性半導体メモリの制御手段と、該ホストコンピュータに
    よるセクタデータの読み出しおよび書き込みにおいて一
    時的に使用されるデータバッファを有し、該不揮発性半
    導体メモリは、多数の不揮発性メモリセルから構成さ
    れ、該メモリセルの集合によって一つのブロックを構成
    し、該ブロックにおいて一括消去可能であり、該ブロッ
    クは一つ以上のセクタデータを格納可能であり、該ホス
    トコンピュータによる一つのセクタデータの読み出しに
    おいて、該ホストコンピュータが読み出すセクタデータ
    が格納されている該不揮発性半導体メモリのブロックに
    格納されている全セクタデータをデータバッファに読み
    出すことを特徴とする不揮発性半導体メモリを用いた記
    憶装置。
  5. 【請求項5】請求項4に記載の記憶装置において、該デ
    ータバッファに、該ホストコンピュータが読み出すセク
    タデータが既に格納されている場合には、該セクタデー
    タを該ホストコンピュータに読み出させることを特徴と
    する不揮発性半導体メモリを用いた記憶装置。
  6. 【請求項6】請求項4に記載の不揮発性半導体メモリを
    用いた記憶装置において、該ホストコンピュータが最後
    に読み出すセクタデータが、該フラッシュメモリの該ブ
    ロックの最後のセクタデータである場合には、該ホスト
    コンピュータが読み出す該最後のセクタデータの次のセ
    クタアドレスのセクタデータを含む該フラッシュメモリ
    のブロックの全セクタデータを該データバッファに読み
    出すことを特徴とする不揮発性半導体メモリを用いた記
    憶装置。
  7. 【請求項7】ホストコンピュータに接続可能な記憶装置
    であって、該記憶装置は、該ホストコンピュータが書き
    込むセクタデータを格納するための不揮発性半導体メモ
    リと、該ホストコンピュータとの接続手段と、該不揮発
    性半導体メモリの制御手段と、該ホストコンピュータに
    よるセクタデータの読み出しおよび書き込みにおいて一
    時的に使用されるデータバッファを有し、該不揮発性半
    導体メモリは、多数の不揮発性メモリセルから構成さ
    れ、該メモリセルの集合によって一つのブロックを構成
    し、該ブロックにおいて一括消去可能であり、該ブロッ
    クは複数のセクタデータを格納可能であり、該ホストコ
    ンピュータによるセクタデータの読み出しにおいて、該
    不揮発性半導体メモリの該ブロックに格納されている全
    セクタデータを常に一つのコマンドで読み出すことを特
    徴とする該不揮発半導体メモリからのセクタデータ読み
    出し方式であることを特徴とする不揮発性半導体メモリ
    を用いた記憶装置。
  8. 【請求項8】ホストコンピュータに接続可能な記憶装置
    であって、該記憶装置は、該ホストコンピュータが書き
    込むセクタデータを格納するための不揮発性半導体メモ
    リと、該ホストコンピュータとの接続手段と、該不揮発
    性半導体メモリの制御手段と、該ホストコンピュータに
    よるセクタデータの読み出しおよび書き込みにおいて一
    時的に使用されるデータバッファを有し、該不揮発性半
    導体メモリは、多数の不揮発性メモリセルから構成さ
    れ、該メモリセルの集合によって一つのブロックを構成
    し、該ブロックにおいて一括消去可能であり、該ブロッ
    クは一つ以上のセクタデータを格納可能であり、該ホス
    トコンピュータによる一つのセクタデータの読み出しに
    おいて、該ホストコンピュータが読み出すセクタデータ
    が格納されている該不揮発性半導体メモリのブロックに
    格納されている全セクタデータをデータバッファに読み
    出すことを特徴とする該不揮発半導体メモリからのセク
    タデータ読み出し方式であることを特徴とする不揮発性
    半導体メモリを用いた記憶装置。
JP11113197A 1999-04-21 1999-04-21 不揮発性半導体メモリを用いた記憶装置 Pending JP2000306389A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11113197A JP2000306389A (ja) 1999-04-21 1999-04-21 不揮発性半導体メモリを用いた記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11113197A JP2000306389A (ja) 1999-04-21 1999-04-21 不揮発性半導体メモリを用いた記憶装置

Publications (1)

Publication Number Publication Date
JP2000306389A true JP2000306389A (ja) 2000-11-02

Family

ID=14606024

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11113197A Pending JP2000306389A (ja) 1999-04-21 1999-04-21 不揮発性半導体メモリを用いた記憶装置

Country Status (1)

Country Link
JP (1) JP2000306389A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005524170A (ja) * 2002-04-30 2005-08-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 不揮発性メモリを備える集積回路及び前記メモリからのデータをフェッチするための方法
JP2006099600A (ja) * 2004-09-30 2006-04-13 Casio Comput Co Ltd フラッシュrom制御装置、フラッシュrom制御方法及びプログラム
US7302517B2 (en) 2003-01-09 2007-11-27 Samsung Electronics Co., Ltd. Apparatus and method for controlling execute-in-place (XIP) in serial flash memory, and flash memory chip using the same
JP2008033425A (ja) * 2006-07-26 2008-02-14 Tdk Corp システムコントローラ、システムコントローラを有するフラッシュメモリシステム、およびフラッシュメモリモジュールの制御方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005524170A (ja) * 2002-04-30 2005-08-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 不揮発性メモリを備える集積回路及び前記メモリからのデータをフェッチするための方法
US7302517B2 (en) 2003-01-09 2007-11-27 Samsung Electronics Co., Ltd. Apparatus and method for controlling execute-in-place (XIP) in serial flash memory, and flash memory chip using the same
JP2006099600A (ja) * 2004-09-30 2006-04-13 Casio Comput Co Ltd フラッシュrom制御装置、フラッシュrom制御方法及びプログラム
JP2008033425A (ja) * 2006-07-26 2008-02-14 Tdk Corp システムコントローラ、システムコントローラを有するフラッシュメモリシステム、およびフラッシュメモリモジュールの制御方法

Similar Documents

Publication Publication Date Title
JP3898305B2 (ja) 半導体記憶装置、半導体記憶装置の制御装置及び制御方法
JP4141581B2 (ja) フラッシュメモリを搭載する記憶装置
JP3105092B2 (ja) 半導体メモリ装置
US9122611B2 (en) Method for giving read commands and reading data, and controller and storage system using the same
KR100725271B1 (ko) 복수개의 dma 채널을 갖는 usb-sd 저장 장치 및 그저장 방법
JP2000067574A (ja) 半導体記憶装置
US6366977B1 (en) Semiconductor storage device employing cluster unit data transfer scheme and data management method thereof
JP5090819B2 (ja) メモリーカード及び該データ格納方法
JPH08263361A (ja) フラッシュメモリカード
US7610442B2 (en) Dual journaling store method and storage medium thereof
US10733122B2 (en) System and method for direct memory access in a flash storage
JP2003508861A (ja) セクタ書き込み操作時間を効果的に減少させるための不揮発性メモリユニット内のブロックの構成
WO1999030239A1 (fr) Memoire et procede d'acces
JPH1131102A (ja) データ記憶システム及び同システムに適用するアクセス制御方法
US20090307427A1 (en) Memory card and method of writing data
JP2000306389A (ja) 不揮発性半導体メモリを用いた記憶装置
JPH08221312A (ja) メモリカード装置
KR100761374B1 (ko) 플래시 메모리 제어 방법 및 장치
CN210639608U (zh) 一种ospi控制装置
JPS6232494B2 (ja)
JP4794949B2 (ja) メモリコントローラ、不揮発性記憶装置及び不揮発性記憶システム
US8166228B2 (en) Non-volatile memory system and method for reading and storing sub-data during partially overlapping periods
JPH11203885A (ja) 記憶装置
JP2006127401A (ja) 媒体記憶装置、媒体記憶装置のキャッシュセグメント切り替え方法、及び媒体記憶システム
JPH06309527A (ja) Icカード

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040401

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040401

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060920

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070206