JP3688835B2 - データ記憶システム及び同システムに適用するデータ転送方法 - Google Patents
データ記憶システム及び同システムに適用するデータ転送方法 Download PDFInfo
- Publication number
- JP3688835B2 JP3688835B2 JP34896196A JP34896196A JP3688835B2 JP 3688835 B2 JP3688835 B2 JP 3688835B2 JP 34896196 A JP34896196 A JP 34896196A JP 34896196 A JP34896196 A JP 34896196A JP 3688835 B2 JP3688835 B2 JP 3688835B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- bus
- register
- transfer
- data transfer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000013500 data storage Methods 0.000 title claims description 8
- 238000000034 method Methods 0.000 title claims description 5
- 230000015654 memory Effects 0.000 claims description 53
- 239000000872 buffer Substances 0.000 claims description 51
- 230000004044 response Effects 0.000 claims description 5
- 239000004065 semiconductor Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Bus Control (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、コンピュータシステムに適用し、フラッシュEEPROMから構成される半導体ディスク装置を使用したデータ記憶システムに関する。
【0002】
【従来の技術】
従来、コンピュータシステムでは、メインメモリとは異なり、電源遮断時にデータの保存を維持し、かつ大容量のデータ保存機能を有する外部記憶装置が必要不可欠な構成要素になっている。この外部記憶装置として、磁気ディスク装置や光ディスク装置等と比較して、高速アクセスの可能なフラッシュEEPROM (フラッシュメモリ)から構成される半導体ディスク装置が注目されている。
【0003】
半導体ディスク装置は、概略的には複数のフラッシュEEPROMのメモリチップと、コントローラと、バッファRAMとからなる。コントローラは、ホストシステムと各フラッシュEEPROMとのインターフェースであり、ホストシステムのアクセス要求に応じて各フラッシュEEPROMのリード/ライト制御を実行する。バッファRAMは、ホストシステムとコントローラとのデータ転送を行なうためのバッファメモリであり、ホストシステムから転送されたライトデータを格納し、また各フラッシュEEPROMから読出されたリードデータを格納する。
【0004】
【発明が解決しようとする課題】
前述したように、半導体ディスク装置では、コントローラがホストシステムと各フラッシュEEPROMとのインターフェースを構成し、入出力データ(リード/ライトデータ)の転送を制御する方式である。ところで、コントローラと各フラッシュEEPROMとの間のデータ転送は、通常では1本のデータバスにより行なわれている。
【0005】
フラッシュEEPROMは、データの読出し動作に対して書込み動作(消去動作も含む)が低速である。このため、特にデータの書込み動作時に、1本のデータバスによるデータ転送では、各フラッシュEEPROMを連続的にアクセスする際の処理効率が著しく低下する。
【0006】
そこで、本発明の目的は、半導体ディスク装置を使用したシステムにおいて、各フラッシュEEPROM毎または複数のフラッシュEEPROMからなるグループ毎にデータバスを設けて、各フラッシュEEPROM毎のデータ転送を可能にして、特にデータ書込み動作時のアクセス処理の効率を向上させることにある。
【0007】
【課題を解決するための手段】
本発明は、フラッシュEEPROMから構成される半導体ディスク装置を使用したデータ記憶システムにおいて、例えば1グループが複数のフラッシュEEPROMからなる場合に、各グループ毎に設けられた複数のデータバスと、この各データバスに接続されて各フラッシュEEPROM毎に入出力データの転送を制御するためのコントローラとを備えたシステムである。このような構成により、コントローラは各フラッシュEEPROM毎に独立して、入出力データの転送を行なうことができるため、特にデータ書込み動作におけるアクセス効率を向上させることができる。
【0008】
さらに、本発明は、コントローラとバッファメモリ(バッファRAM)とは1本のバスにより接続された構成を想定している。バッファメモリは、ホストシステムから転送されたデータ(ライトデータ)およびコントローラから転送された各フラッシュEEPROMから読出されたデータ(リードデータ)を格納する。コントローラは、データ書込み動作時に、各フラッシュEEPROM毎のデータバスに独立にデータ転送を実行するが、バッファメモリからは1本のバスによるデータ転送を制御する必要がある。
【0009】
そこで、本発明のコントローラは、各データバス毎に第1と第2のレジスタを組みとするバス用レジスタを有し、各データバス手段毎のデータ転送要求に応じてバッファメモリに接続された1本のバスを時分割転送によるバスアービトレーションを実行する手段を有する。このとき、各データバス毎に設けられた第1と第2のレジスタを交互に使用して、データバスに対するデータ転送制御を実行する。これにより、データ書込み動作時に、各フラッシュEEPROMに対する独立したデータ転送と共に、バッファメモリからは時分割転送制御によるデータ転送を実現して、データ転送効率を向上させて結果的にデータ書込み動作時のアクセス処理の効率を高めることが可能となる。
【0010】
【発明の実施の形態】
以下図面を参照して本発明の実施の形態を説明する。
図1は本発明の実施形態に関係する半導体ディスク装置の要部を示すブロック図である。
(システム構成)
本実施形態の半導体ディスク装置1は大別して、図1に示すように、フラッシュEEPROM(以下フラッシュメモリと称する)2A,2Bと、コントローラ(ディスクコントローラ)4と、バッファRAM(バッファメモリ)8とを有する。ここで、各フラッシュメモリ2A,2Bはそれぞれ、1グループが複数のフラッシュEEPROMからなる場合にグループ単位のメモリチップからなる。
【0011】
各フラッシュメモリ2A,2BはEEPROMのメモリセル以外に、データレジスタ12A,12Bを有し、このデータレジスタ12A,12Bをバッファとして入出力データ(I/O)の転送を行なう。各フラッシュメモリ2A,2Bは、リードアクセスまたはライトアクセスに応じてデータのリード/ライト時にはビジィ(BUSY)信号を出力し、またリード/ライトが可能であればレディ(READY)信号を出力する(R/B信号)。さらに、本発明では、入出力データを転送するためのデータバス3として、各フラッシュメモリ2A,2B毎のデータバスA,Bが設けられている。
【0012】
コントローラ4は大別して、データ転送ブロック5と、マイクロプロセッサ(MPU)ブロック6と、ホストシステムとのインターフェース7とから構成されている。データ転送ブロック5は、MPUブロック(以下単にMPUと称する)6からの制御により、バッファRAM8と各フラッシュメモリ2A,2Bとのデータ転送を実行する。このデータ転送動作に必要な制御信号(R/B信号やチップセレクト信号CEなど)を各フラッシュメモリ2A,2Bとの間で交換する。さらに、データ転送ブロック5は、前記のように、各フラッシュメモリ2A,2Bとはそれぞれ専用のデータバスA,Bを介して、入出力データ(リード/ライトデータ)の転送(シリアルデータ転送)を行なう。また、データ転送ブロック5は、後述するように、1本のバス9を介してバッファRAM8とのデータ転送を行なう。
【0013】
MPU6は半導体ディスク装置1のメイン制御装置であり、図示しないROMに格納されたプログラムを実行することにより、ホストシステムのリード/ライトコマンド処理などの各種の制御動作を実行する(プログラムと共にファームウェアとも呼ばれる)。具体的には、MPU6はホストシステムからのアクセス要求に応じて、データ転送ブロック5、インターフェース7、バッファRAM8を制御して、ホストシステムとのデータ転送を制御する。インターフェース7は、ホストシステムから転送されたデータをバッファRAM8に転送し、またデータ転送ブロック5によりバッファRAM8に格納されたデータをホストシステムに転送する。
【0014】
ホストシステムは、外部バスを介して半導体ディスク装置1などの周辺デバイスと接続されるコンピュータ本体であり、ここでは半導体ディスク装置1を外部記憶装置の周辺デバイスとして使用する場合を想定している。
(本実施形態のデータ転送動作)
前述のようなシステム構成において、コントローラ4では、データ転送ブロック5がMPU6の指示に従って、バッファRAM8と各フラッシュメモリ2A,2Bとの間のデータ転送を実行する。ここで、フラッシュメモリ2A,2Bは便宜的に2個のメモリチップであると想定する。
【0015】
本実施形態では、コントローラ4は、専用のデータバスA,Bを介して、フラッシュメモリ2A,2Bとはそれぞれ独立してデータ転送を実行する。ここで、データ転送ブロック5は、図2に示すように、データ転送動作に必要なレジスタ群を有する。レジスタ群は、データバスA,B毎に設けられており、それぞれバッファRAM8側のデータ開始アドレス用レジスタ20A,20B、フラッシュメモリ側のデータ開始アドレス用レジスタ21A,21B、データ転送方向の指示用レジスタ22A,22B、データ転送監視用レジスタ23A,23Bが含まれている。データ転送監視用レジスタ23A,23Bは、データ転送状態(動作中または終了)を認識するためのフラグ情報を保持するレジスタである。
【0016】
MPU6は、これらのレジスタ群にアドレス、方向の指示、データ転送状態のフラグの各制御情報をセットし、かつセットした各制御情報を参照することによりデータ転送制御を実行する。即ち、データ転送ブロック5は、データバスA,B毎に設けられたレジスタ群を介したMPU6の制御により、データバスA,Bに対して相互に干渉することなく、それぞれ独立してデータ転送を行なう。
【0017】
ここで、フラッシュメモリ2A,2Bの各データバスA,Bは通常では8ビットのバスであるのに対して、バッファRAM8のバス9は2倍の16ビットのバスである。従って、各データバスA,Bはそれぞれ、バッファRAM8のバス9に対して同じサイクルで動作すれば2倍の転送速度差となる。また、前述したように、フラッシュメモリ2A,2Bに対するデータ書込み動作時のデータ転送速度は低速であるため、前記速度差はデータ書込み動作時のデータ転送平均速度差はさらに大きくなる。
【0018】
そこで、本実施形態は、フラッシュメモリ2A,2B毎に専用に設けられたデータバスA,Bにより、それぞれ独立したデータ転送動作を実行する。これにより、従来のように1本のデータバスの場合と比較して、フラッシュメモリ2A,2Bのデータ転送速度を高速化することができる。特に、フラッシュメモリ2A,2Bに対するデータ書込み動作時(ライトアクセス時)では、従来ではバッファRAM8のバス9の転送速度に対するデータ転送平均速度差をかなり縮小することが可能である。
(バッファRAMのバスアービトレーション)
前述したように、本実施形態によればフラッシュメモリ2A,2B毎に専用に設けられたデータバスA,Bにより、それぞれ独立したデータ転送が可能であるため、特にデータ書込み動作時にデータ転送ブロック5とフラッシュメモリ2A,2Bとのデータ転送速度を高速化することができる。
【0019】
ところで、データ書込み動作時には、データ転送ブロック5は、バッファRAM8からライトデータを転送して、フラッシュメモリ2A,2Bに転送する。バッファRAM8は、通常では1本のバス9によりデータ転送ブロック5に接続されている。従って、MPU6は、データバスA,Bに独立してデータを転送する場合に、それらのデータを同一のバス9によりバッファRAM8から転送するため、バス9上の干渉を回避するためのバスアービトレーション(バス調停機能)を行なう必要がある。
【0020】
以下、図3の概念図、図4のタイミングチャート、および図5のフローチャートを参照して、本実施形態のバッファRAM8側のバス9のデータ転送方式を説明する。
【0021】
まず、本実施形態は、図3に示すように、データ転送ブロック5は、データバスA,Bのそれぞれ専用の第1と第2のレジスタを有する。データバスAに対応する第1と第2のレジスタをそれぞれバスA0レジスタとバスA1レジスタとする。同様に、データバスBに対応する第1と第2のレジスタをそれぞれバスB0レジスタとバスB1レジスタとする。各レジスタはいずれも例えば16ワードである。
【0022】
データ転送ブロック5は、仮にデータバスAの転送要求が発生すると、バス9の転送が可能であれば、バッファRAM9からバスA0レジスタにデータの転送を実行する(ステップS1〜S3)。次に、データバスAの転送要求に応じてバス9の転送が可能であれば、バッファRAM9からバスA1レジスタにデータの転送を実行する(ステップS4〜S6)。このとき、データ転送ブロック5は、バスA0レジスタに保持されているデータをデータバスAに転送する(ステップS7)。このような処理は、データバスBの転送要求がなければ、繰り返すことになる。即ち、バスA0レジスタとバスA1レジスタとを交互に使用して、バッファRAM9から転送されたデータをデータバスAに転送する。
【0023】
一方、データバスBの転送要求が発生すると、バス9の転送が可能であれば、バッファRAM9からバスB0レジスタにデータの転送を実行する(ステップS8〜S10)。ここで、図4に示すように、バス9の転送可能時間を時分割で2等分にして、転送可能時間(yesで示す時間)に転送要求があれば、データ転送が実行される。従って、次のデータバスBの転送要求が発生したときに、バスBよう転送可能時間でない時間(noで示す時間)であれば、バッファRAM9からバスB1レジスタへのデータ転送は実行されないことになる(ステップS11,S12のNO)。
【0024】
要するに、図4のタイミングチャートに示すように、2等分に時分割された転送可能時間(yesの時間)に、各データバスA,Bの転送要求が発生すれば、バッファRAM9からバスA0レジスタ、バスA1レジスタ、バスB0レジスタ、バスB1レジスタのいずかに転送されることになる。そして、データバスBも同様に、バスB1レジスタにデータの転送が実行されたときに、データ転送ブロック5は、バスB0レジスタに保持されているデータをデータバスBに転送する(ステップS13,S14)。従って、バスB0レジスタとバスB1レジスタとを交互に使用して、バッファRAM9から転送されたデータをデータバスBに転送する。
【0025】
以上のように本実施形態によれば、フラッシュメモリ2A,2B毎に専用に設けられたデータバスA,Bにより、それぞれ独立したデータ転送動作を実行することができる。従って、特にデータ書込み動作時において、フラッシュメモリ2A,2Bに対する平均転送速度を高速化することができる。これにより、フラッシュメモリ2A,2Bに対するアクセス効率を向上することができる。
【0026】
ここで、バッファRAM8とのデータ転送を1本のバス9に対して、各データバスA,B毎の時分割転送によるバスアービトレーションを実行することにより、各データバスA,Bから独立して転送要求が発生した場合でも、バス9で干渉するような事態を防止し、各データバスA,BにバッファRAM8からのデータを確実に転送することができる。
【0027】
【発明の効果】
以上詳述したように本発明によれば、半導体ディスク装置を使用したシステムにおいて、各フラッシュEEPROM毎にデータバスを設けて、各フラッシュEEPROM毎に独立したデータ転送を実現できる。従って、特にデータ書込み動作時に、各フラッシュEEPROMに対する平均転送速度を高速化して、アクセス処理の効率を向上させることができる。
【図面の簡単な説明】
【図1】本発明の実施形態に関係する半導体ディスク装置の要部を示すブロック図。
【図2】同実施形態に関係するコントローラの内部構成を示す概念図。
【図3】同実施形態に関係するコントローラの内部構成を示す概念図。
【図4】同実施形態に関係する動作を説明するためのタイミングチャート。
【図5】同実施形態に関係する動作を説明するためのフローチャート。
【符号の説明】
1…半導体ディスク装置
2A,2B…フラッシュEEPROM(フラッシュメモリ)
3…データバス(データバスA,B)
4…コントローラ
5…データ転送ブロック
6…MPUブロック
7…インターフェース
8…バッファRAM
9…バス(バッファRAM側バス)
20A,20B…データ開始アドレス用レジスタ(バッファRAM側)
21A,21B…データ開始アドレス用レジスタ(フラッシュメモリ側)
22A,22B…データ転送方向の指示用レジスタ
23A,23B…データ転送監視用レジスタ
【発明の属する技術分野】
本発明は、コンピュータシステムに適用し、フラッシュEEPROMから構成される半導体ディスク装置を使用したデータ記憶システムに関する。
【0002】
【従来の技術】
従来、コンピュータシステムでは、メインメモリとは異なり、電源遮断時にデータの保存を維持し、かつ大容量のデータ保存機能を有する外部記憶装置が必要不可欠な構成要素になっている。この外部記憶装置として、磁気ディスク装置や光ディスク装置等と比較して、高速アクセスの可能なフラッシュEEPROM (フラッシュメモリ)から構成される半導体ディスク装置が注目されている。
【0003】
半導体ディスク装置は、概略的には複数のフラッシュEEPROMのメモリチップと、コントローラと、バッファRAMとからなる。コントローラは、ホストシステムと各フラッシュEEPROMとのインターフェースであり、ホストシステムのアクセス要求に応じて各フラッシュEEPROMのリード/ライト制御を実行する。バッファRAMは、ホストシステムとコントローラとのデータ転送を行なうためのバッファメモリであり、ホストシステムから転送されたライトデータを格納し、また各フラッシュEEPROMから読出されたリードデータを格納する。
【0004】
【発明が解決しようとする課題】
前述したように、半導体ディスク装置では、コントローラがホストシステムと各フラッシュEEPROMとのインターフェースを構成し、入出力データ(リード/ライトデータ)の転送を制御する方式である。ところで、コントローラと各フラッシュEEPROMとの間のデータ転送は、通常では1本のデータバスにより行なわれている。
【0005】
フラッシュEEPROMは、データの読出し動作に対して書込み動作(消去動作も含む)が低速である。このため、特にデータの書込み動作時に、1本のデータバスによるデータ転送では、各フラッシュEEPROMを連続的にアクセスする際の処理効率が著しく低下する。
【0006】
そこで、本発明の目的は、半導体ディスク装置を使用したシステムにおいて、各フラッシュEEPROM毎または複数のフラッシュEEPROMからなるグループ毎にデータバスを設けて、各フラッシュEEPROM毎のデータ転送を可能にして、特にデータ書込み動作時のアクセス処理の効率を向上させることにある。
【0007】
【課題を解決するための手段】
本発明は、フラッシュEEPROMから構成される半導体ディスク装置を使用したデータ記憶システムにおいて、例えば1グループが複数のフラッシュEEPROMからなる場合に、各グループ毎に設けられた複数のデータバスと、この各データバスに接続されて各フラッシュEEPROM毎に入出力データの転送を制御するためのコントローラとを備えたシステムである。このような構成により、コントローラは各フラッシュEEPROM毎に独立して、入出力データの転送を行なうことができるため、特にデータ書込み動作におけるアクセス効率を向上させることができる。
【0008】
さらに、本発明は、コントローラとバッファメモリ(バッファRAM)とは1本のバスにより接続された構成を想定している。バッファメモリは、ホストシステムから転送されたデータ(ライトデータ)およびコントローラから転送された各フラッシュEEPROMから読出されたデータ(リードデータ)を格納する。コントローラは、データ書込み動作時に、各フラッシュEEPROM毎のデータバスに独立にデータ転送を実行するが、バッファメモリからは1本のバスによるデータ転送を制御する必要がある。
【0009】
そこで、本発明のコントローラは、各データバス毎に第1と第2のレジスタを組みとするバス用レジスタを有し、各データバス手段毎のデータ転送要求に応じてバッファメモリに接続された1本のバスを時分割転送によるバスアービトレーションを実行する手段を有する。このとき、各データバス毎に設けられた第1と第2のレジスタを交互に使用して、データバスに対するデータ転送制御を実行する。これにより、データ書込み動作時に、各フラッシュEEPROMに対する独立したデータ転送と共に、バッファメモリからは時分割転送制御によるデータ転送を実現して、データ転送効率を向上させて結果的にデータ書込み動作時のアクセス処理の効率を高めることが可能となる。
【0010】
【発明の実施の形態】
以下図面を参照して本発明の実施の形態を説明する。
図1は本発明の実施形態に関係する半導体ディスク装置の要部を示すブロック図である。
(システム構成)
本実施形態の半導体ディスク装置1は大別して、図1に示すように、フラッシュEEPROM(以下フラッシュメモリと称する)2A,2Bと、コントローラ(ディスクコントローラ)4と、バッファRAM(バッファメモリ)8とを有する。ここで、各フラッシュメモリ2A,2Bはそれぞれ、1グループが複数のフラッシュEEPROMからなる場合にグループ単位のメモリチップからなる。
【0011】
各フラッシュメモリ2A,2BはEEPROMのメモリセル以外に、データレジスタ12A,12Bを有し、このデータレジスタ12A,12Bをバッファとして入出力データ(I/O)の転送を行なう。各フラッシュメモリ2A,2Bは、リードアクセスまたはライトアクセスに応じてデータのリード/ライト時にはビジィ(BUSY)信号を出力し、またリード/ライトが可能であればレディ(READY)信号を出力する(R/B信号)。さらに、本発明では、入出力データを転送するためのデータバス3として、各フラッシュメモリ2A,2B毎のデータバスA,Bが設けられている。
【0012】
コントローラ4は大別して、データ転送ブロック5と、マイクロプロセッサ(MPU)ブロック6と、ホストシステムとのインターフェース7とから構成されている。データ転送ブロック5は、MPUブロック(以下単にMPUと称する)6からの制御により、バッファRAM8と各フラッシュメモリ2A,2Bとのデータ転送を実行する。このデータ転送動作に必要な制御信号(R/B信号やチップセレクト信号CEなど)を各フラッシュメモリ2A,2Bとの間で交換する。さらに、データ転送ブロック5は、前記のように、各フラッシュメモリ2A,2Bとはそれぞれ専用のデータバスA,Bを介して、入出力データ(リード/ライトデータ)の転送(シリアルデータ転送)を行なう。また、データ転送ブロック5は、後述するように、1本のバス9を介してバッファRAM8とのデータ転送を行なう。
【0013】
MPU6は半導体ディスク装置1のメイン制御装置であり、図示しないROMに格納されたプログラムを実行することにより、ホストシステムのリード/ライトコマンド処理などの各種の制御動作を実行する(プログラムと共にファームウェアとも呼ばれる)。具体的には、MPU6はホストシステムからのアクセス要求に応じて、データ転送ブロック5、インターフェース7、バッファRAM8を制御して、ホストシステムとのデータ転送を制御する。インターフェース7は、ホストシステムから転送されたデータをバッファRAM8に転送し、またデータ転送ブロック5によりバッファRAM8に格納されたデータをホストシステムに転送する。
【0014】
ホストシステムは、外部バスを介して半導体ディスク装置1などの周辺デバイスと接続されるコンピュータ本体であり、ここでは半導体ディスク装置1を外部記憶装置の周辺デバイスとして使用する場合を想定している。
(本実施形態のデータ転送動作)
前述のようなシステム構成において、コントローラ4では、データ転送ブロック5がMPU6の指示に従って、バッファRAM8と各フラッシュメモリ2A,2Bとの間のデータ転送を実行する。ここで、フラッシュメモリ2A,2Bは便宜的に2個のメモリチップであると想定する。
【0015】
本実施形態では、コントローラ4は、専用のデータバスA,Bを介して、フラッシュメモリ2A,2Bとはそれぞれ独立してデータ転送を実行する。ここで、データ転送ブロック5は、図2に示すように、データ転送動作に必要なレジスタ群を有する。レジスタ群は、データバスA,B毎に設けられており、それぞれバッファRAM8側のデータ開始アドレス用レジスタ20A,20B、フラッシュメモリ側のデータ開始アドレス用レジスタ21A,21B、データ転送方向の指示用レジスタ22A,22B、データ転送監視用レジスタ23A,23Bが含まれている。データ転送監視用レジスタ23A,23Bは、データ転送状態(動作中または終了)を認識するためのフラグ情報を保持するレジスタである。
【0016】
MPU6は、これらのレジスタ群にアドレス、方向の指示、データ転送状態のフラグの各制御情報をセットし、かつセットした各制御情報を参照することによりデータ転送制御を実行する。即ち、データ転送ブロック5は、データバスA,B毎に設けられたレジスタ群を介したMPU6の制御により、データバスA,Bに対して相互に干渉することなく、それぞれ独立してデータ転送を行なう。
【0017】
ここで、フラッシュメモリ2A,2Bの各データバスA,Bは通常では8ビットのバスであるのに対して、バッファRAM8のバス9は2倍の16ビットのバスである。従って、各データバスA,Bはそれぞれ、バッファRAM8のバス9に対して同じサイクルで動作すれば2倍の転送速度差となる。また、前述したように、フラッシュメモリ2A,2Bに対するデータ書込み動作時のデータ転送速度は低速であるため、前記速度差はデータ書込み動作時のデータ転送平均速度差はさらに大きくなる。
【0018】
そこで、本実施形態は、フラッシュメモリ2A,2B毎に専用に設けられたデータバスA,Bにより、それぞれ独立したデータ転送動作を実行する。これにより、従来のように1本のデータバスの場合と比較して、フラッシュメモリ2A,2Bのデータ転送速度を高速化することができる。特に、フラッシュメモリ2A,2Bに対するデータ書込み動作時(ライトアクセス時)では、従来ではバッファRAM8のバス9の転送速度に対するデータ転送平均速度差をかなり縮小することが可能である。
(バッファRAMのバスアービトレーション)
前述したように、本実施形態によればフラッシュメモリ2A,2B毎に専用に設けられたデータバスA,Bにより、それぞれ独立したデータ転送が可能であるため、特にデータ書込み動作時にデータ転送ブロック5とフラッシュメモリ2A,2Bとのデータ転送速度を高速化することができる。
【0019】
ところで、データ書込み動作時には、データ転送ブロック5は、バッファRAM8からライトデータを転送して、フラッシュメモリ2A,2Bに転送する。バッファRAM8は、通常では1本のバス9によりデータ転送ブロック5に接続されている。従って、MPU6は、データバスA,Bに独立してデータを転送する場合に、それらのデータを同一のバス9によりバッファRAM8から転送するため、バス9上の干渉を回避するためのバスアービトレーション(バス調停機能)を行なう必要がある。
【0020】
以下、図3の概念図、図4のタイミングチャート、および図5のフローチャートを参照して、本実施形態のバッファRAM8側のバス9のデータ転送方式を説明する。
【0021】
まず、本実施形態は、図3に示すように、データ転送ブロック5は、データバスA,Bのそれぞれ専用の第1と第2のレジスタを有する。データバスAに対応する第1と第2のレジスタをそれぞれバスA0レジスタとバスA1レジスタとする。同様に、データバスBに対応する第1と第2のレジスタをそれぞれバスB0レジスタとバスB1レジスタとする。各レジスタはいずれも例えば16ワードである。
【0022】
データ転送ブロック5は、仮にデータバスAの転送要求が発生すると、バス9の転送が可能であれば、バッファRAM9からバスA0レジスタにデータの転送を実行する(ステップS1〜S3)。次に、データバスAの転送要求に応じてバス9の転送が可能であれば、バッファRAM9からバスA1レジスタにデータの転送を実行する(ステップS4〜S6)。このとき、データ転送ブロック5は、バスA0レジスタに保持されているデータをデータバスAに転送する(ステップS7)。このような処理は、データバスBの転送要求がなければ、繰り返すことになる。即ち、バスA0レジスタとバスA1レジスタとを交互に使用して、バッファRAM9から転送されたデータをデータバスAに転送する。
【0023】
一方、データバスBの転送要求が発生すると、バス9の転送が可能であれば、バッファRAM9からバスB0レジスタにデータの転送を実行する(ステップS8〜S10)。ここで、図4に示すように、バス9の転送可能時間を時分割で2等分にして、転送可能時間(yesで示す時間)に転送要求があれば、データ転送が実行される。従って、次のデータバスBの転送要求が発生したときに、バスBよう転送可能時間でない時間(noで示す時間)であれば、バッファRAM9からバスB1レジスタへのデータ転送は実行されないことになる(ステップS11,S12のNO)。
【0024】
要するに、図4のタイミングチャートに示すように、2等分に時分割された転送可能時間(yesの時間)に、各データバスA,Bの転送要求が発生すれば、バッファRAM9からバスA0レジスタ、バスA1レジスタ、バスB0レジスタ、バスB1レジスタのいずかに転送されることになる。そして、データバスBも同様に、バスB1レジスタにデータの転送が実行されたときに、データ転送ブロック5は、バスB0レジスタに保持されているデータをデータバスBに転送する(ステップS13,S14)。従って、バスB0レジスタとバスB1レジスタとを交互に使用して、バッファRAM9から転送されたデータをデータバスBに転送する。
【0025】
以上のように本実施形態によれば、フラッシュメモリ2A,2B毎に専用に設けられたデータバスA,Bにより、それぞれ独立したデータ転送動作を実行することができる。従って、特にデータ書込み動作時において、フラッシュメモリ2A,2Bに対する平均転送速度を高速化することができる。これにより、フラッシュメモリ2A,2Bに対するアクセス効率を向上することができる。
【0026】
ここで、バッファRAM8とのデータ転送を1本のバス9に対して、各データバスA,B毎の時分割転送によるバスアービトレーションを実行することにより、各データバスA,Bから独立して転送要求が発生した場合でも、バス9で干渉するような事態を防止し、各データバスA,BにバッファRAM8からのデータを確実に転送することができる。
【0027】
【発明の効果】
以上詳述したように本発明によれば、半導体ディスク装置を使用したシステムにおいて、各フラッシュEEPROM毎にデータバスを設けて、各フラッシュEEPROM毎に独立したデータ転送を実現できる。従って、特にデータ書込み動作時に、各フラッシュEEPROMに対する平均転送速度を高速化して、アクセス処理の効率を向上させることができる。
【図面の簡単な説明】
【図1】本発明の実施形態に関係する半導体ディスク装置の要部を示すブロック図。
【図2】同実施形態に関係するコントローラの内部構成を示す概念図。
【図3】同実施形態に関係するコントローラの内部構成を示す概念図。
【図4】同実施形態に関係する動作を説明するためのタイミングチャート。
【図5】同実施形態に関係する動作を説明するためのフローチャート。
【符号の説明】
1…半導体ディスク装置
2A,2B…フラッシュEEPROM(フラッシュメモリ)
3…データバス(データバスA,B)
4…コントローラ
5…データ転送ブロック
6…MPUブロック
7…インターフェース
8…バッファRAM
9…バス(バッファRAM側バス)
20A,20B…データ開始アドレス用レジスタ(バッファRAM側)
21A,21B…データ開始アドレス用レジスタ(フラッシュメモリ側)
22A,22B…データ転送方向の指示用レジスタ
23A,23B…データ転送監視用レジスタ
Claims (3)
- 複数のフラッシュメモリと、
前記各フラッシュメモリ毎に独立して接続されて、前記各フラッシュメモリ毎に入出力データを転送するための複数のデータバスと、
前記入出力データを格納するバッファメモリと、
前記複数のデータバスと接続し、かつ前記バッファメモリと1本のバッファ用データバスを介して接続し、前記各フラッシュメモリと前記バッファメモリとの間での入出力データの転送を制御するコントローラとを具備し、
前記コントローラは、
前記各データバス毎に設けられて、データ転送用アドレス、データ転送方向、及びデータ転送状態のそれぞれを示す情報を格納するための第1のレジスタ群と、
前記各データバス毎に設けられて、前記各データバスでのデータ転送に従って前記バッファ用データバスによるデータの時分割転送を行なうための第2のレジスタ群とを含むことを特徴とするデータ記憶システム。 - 前記第2のレジスタ群は、前記各データバス毎に第1と第2のレジスタを組とするバス用レジスタを有し、
前記コントローラは、前記バッファメモリから出力されるデータを転送する前記データバスに対応する第1と第2のレジスタを交互に使用して、前記バッファ用データバスによるデータの時分割転送を制御するように構成されていることを特徴とする請求項1に記載のデータ記憶システム。 - 第1及び第2のフラッシュメモリと、前記第1及び第2のフラッシュメモリ毎に独立して接続されて、入出力データを転送するための第1及び第2のデータバスと、前記入出力データを格納するバッファメモリと、
前記第1及び第2のデータバスと接続し、かつ前記バッファメモリと1本のバッファ用データバスを介して接続し、前記第1及び第2のフラッシュメモリと前記バッファメモリとの間での入出力データの転送を制御するコントローラとを有するデータ記憶システムに適用するデータ転送方法であって、
前記コントローラは、
前記第1及び第2の各データバス毎に第1と第2のレジスタを組とするバス用レジスタを有し、
前記バッファ用データバスの使用可能時に、前記第1または第2のデータバスでのデータ転送要求に応じて、前記バッファメモリから出力されるデータを当該データ転送要求に該当する前記第1または第2のデータバスに対応する前記第1のレジスタに格納するステップと、
前記第1または第2のデータバスの前記データ転送要求が連続的に発生したときに、前記バッファメモリから出力されるデータを該当する前記第2のレジスタに格納するステップと、
前記第1または前記第2のレジスタから前記データ転送要求に該当する前記第1または第2のデータバスに、前記第1のレジスタに格納したデータと前記第2のレジスタに格納したデータを交互に転送するステップと
を有する手順を実行することを特徴とするデータ転送方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34896196A JP3688835B2 (ja) | 1996-12-26 | 1996-12-26 | データ記憶システム及び同システムに適用するデータ転送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34896196A JP3688835B2 (ja) | 1996-12-26 | 1996-12-26 | データ記憶システム及び同システムに適用するデータ転送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10187359A JPH10187359A (ja) | 1998-07-14 |
JP3688835B2 true JP3688835B2 (ja) | 2005-08-31 |
Family
ID=18400564
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34896196A Expired - Fee Related JP3688835B2 (ja) | 1996-12-26 | 1996-12-26 | データ記憶システム及び同システムに適用するデータ転送方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3688835B2 (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7904640B2 (en) | 2008-03-01 | 2011-03-08 | Kabushiki Kaisha Toshiba | Memory system with write coalescing |
US8108593B2 (en) | 2008-03-01 | 2012-01-31 | Kabushiki Kaisha Toshiba | Memory system for flushing and relocating data |
US8327065B2 (en) | 2008-12-27 | 2012-12-04 | Kabushiki Kaisha Toshiba | Memory system, controller, and method of controlling memory system |
US8370587B2 (en) | 2009-02-12 | 2013-02-05 | Kabushiki Kaisha Toshiba | Memory system storing updated status information and updated address translation information and managing method therefor |
US8429333B2 (en) | 2008-03-01 | 2013-04-23 | Kabushiki Kaisha Toshiba | Memory system with efficient data search processing |
US8554984B2 (en) | 2008-03-01 | 2013-10-08 | Kabushiki Kaisha Toshiba | Memory system |
US8661191B2 (en) | 2008-03-01 | 2014-02-25 | Kabushiki Kaisha Toshiba | Memory system |
US8706950B2 (en) | 2008-03-01 | 2014-04-22 | Kabushiki Kaisha Toshiba | Memory system |
US8745313B2 (en) | 2008-03-01 | 2014-06-03 | Kabushiki Kaisha Toshiba | Memory system and method for controlling a nonvolatile semiconductor memory |
US8938586B2 (en) | 2008-03-01 | 2015-01-20 | Kabushiki Kaisha Toshiba | Memory system with flush processing from volatile memory to nonvolatile memory utilizing management tables and different management units |
US9280461B2 (en) | 2008-06-20 | 2016-03-08 | Kabushiki Kaisha Toshiba | Memory system with selective access to first and second memories |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002259207A (ja) | 2001-03-02 | 2002-09-13 | Fujitsu Ltd | 情報処理装置及び信号処理装置並びにインタフェース装置 |
JP4059473B2 (ja) | 2001-08-09 | 2008-03-12 | 株式会社ルネサステクノロジ | メモリカード及びメモリコントローラ |
JPWO2005029311A1 (ja) * | 2003-09-18 | 2006-11-30 | 松下電器産業株式会社 | 半導体メモリカード、半導体メモリ制御装置及び半導体メモリ制御方法 |
TW200515147A (en) * | 2003-10-17 | 2005-05-01 | Matsushita Electric Ind Co Ltd | Semiconductor memory device, controller, and read/write control method thereof |
CN101273413B (zh) * | 2005-09-29 | 2011-11-16 | 特科2000国际有限公司 | 使用单层单元和多层单元闪速存储器的便携式数据存储 |
US7567471B2 (en) * | 2006-12-21 | 2009-07-28 | Intel Corporation | High speed fanned out system architecture and input/output circuits for non-volatile memory |
JP2009211192A (ja) | 2008-02-29 | 2009-09-17 | Toshiba Corp | メモリシステム |
JP4745356B2 (ja) * | 2008-03-01 | 2011-08-10 | 株式会社東芝 | メモリシステム |
JP4872996B2 (ja) * | 2008-10-02 | 2012-02-08 | セイコーエプソン株式会社 | 印刷記録材容器の識別システムおよび識別方法 |
KR102670866B1 (ko) * | 2018-11-28 | 2024-05-30 | 삼성전자주식회사 | 복수의 메모리 플레인들을 포함하는 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 |
-
1996
- 1996-12-26 JP JP34896196A patent/JP3688835B2/ja not_active Expired - Fee Related
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9092324B2 (en) | 2008-03-01 | 2015-07-28 | Kabushiki Kaisha Toshiba | Memory system and method for controlling a nonvolatile semiconductor memory |
US9417799B2 (en) | 2008-03-01 | 2016-08-16 | Kabushiki Kaisha Toshiba | Memory system and method for controlling a nonvolatile semiconductor memory |
US8176237B2 (en) | 2008-03-01 | 2012-05-08 | Kabushiki Kaisha Toshiba | Solid state drive with input buffer |
US8762631B2 (en) | 2008-03-01 | 2014-06-24 | Kabushiki Kaisha Toshiba | Memory system |
US8938586B2 (en) | 2008-03-01 | 2015-01-20 | Kabushiki Kaisha Toshiba | Memory system with flush processing from volatile memory to nonvolatile memory utilizing management tables and different management units |
US8429333B2 (en) | 2008-03-01 | 2013-04-23 | Kabushiki Kaisha Toshiba | Memory system with efficient data search processing |
US8554984B2 (en) | 2008-03-01 | 2013-10-08 | Kabushiki Kaisha Toshiba | Memory system |
US8661191B2 (en) | 2008-03-01 | 2014-02-25 | Kabushiki Kaisha Toshiba | Memory system |
US8706950B2 (en) | 2008-03-01 | 2014-04-22 | Kabushiki Kaisha Toshiba | Memory system |
US8745313B2 (en) | 2008-03-01 | 2014-06-03 | Kabushiki Kaisha Toshiba | Memory system and method for controlling a nonvolatile semiconductor memory |
US12032831B2 (en) | 2008-03-01 | 2024-07-09 | Kioxia Corporation | Memory system |
US11409442B2 (en) | 2008-03-01 | 2022-08-09 | Kioxia Corporation | Memory system |
US9213635B2 (en) | 2008-03-01 | 2015-12-15 | Kabushiki Kaisha Toshiba | Memory system |
US9201717B2 (en) | 2008-03-01 | 2015-12-01 | Kabushiki Kaisha Toshiba | Memory system |
US7904640B2 (en) | 2008-03-01 | 2011-03-08 | Kabushiki Kaisha Toshiba | Memory system with write coalescing |
US10901625B2 (en) | 2008-03-01 | 2021-01-26 | Toshiba Memory Corporation | Memory system |
US8108593B2 (en) | 2008-03-01 | 2012-01-31 | Kabushiki Kaisha Toshiba | Memory system for flushing and relocating data |
US10474360B2 (en) | 2008-06-20 | 2019-11-12 | Toshiba Memory Corporation | Memory system with selective access to first and second memories |
US9280461B2 (en) | 2008-06-20 | 2016-03-08 | Kabushiki Kaisha Toshiba | Memory system with selective access to first and second memories |
US10956039B2 (en) | 2008-06-20 | 2021-03-23 | Toshiba Memory Corporation | Memory system with selective access to first and second memories |
US11494077B2 (en) | 2008-06-20 | 2022-11-08 | Kioxia Corporation | Memory system with selective access to first and second memories |
US11836347B2 (en) | 2008-06-20 | 2023-12-05 | Kioxia Corporation | Memory system with selective access to first and second memories |
US8327065B2 (en) | 2008-12-27 | 2012-12-04 | Kabushiki Kaisha Toshiba | Memory system, controller, and method of controlling memory system |
US8370587B2 (en) | 2009-02-12 | 2013-02-05 | Kabushiki Kaisha Toshiba | Memory system storing updated status information and updated address translation information and managing method therefor |
Also Published As
Publication number | Publication date |
---|---|
JPH10187359A (ja) | 1998-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3688835B2 (ja) | データ記憶システム及び同システムに適用するデータ転送方法 | |
JP2829091B2 (ja) | データ処理システム | |
JPH04363746A (ja) | Dma機能を有するマイクロコンピュータシステム | |
JP2568017B2 (ja) | マイクロプロセッサ及びそれを使用したデータ処理システム | |
US20010002481A1 (en) | Data access unit and method therefor | |
US6085297A (en) | Single-chip memory system including buffer | |
JPH0222748A (ja) | 不揮発生メモリ制御回路 | |
JPH0736806A (ja) | Dma方式 | |
JP2912090B2 (ja) | タイムスロットインタチェンジ回路 | |
JPH05113888A (ja) | マイクロプロセツサユニツト | |
JP3063501B2 (ja) | メモリアクセス制御方式 | |
JPS62219153A (ja) | Dmaコントロ−ラ | |
JPH03265057A (ja) | データ転送制御方式 | |
JPH07306825A (ja) | Dmaコントローラ | |
JPH0355642A (ja) | メモリー制御方式 | |
JPH04205452A (ja) | Dmaコントローラ | |
JPH02307149A (ja) | 直接メモリアクセス制御方式 | |
JPH01177151A (ja) | 情報処理システム | |
JPH0316652B2 (ja) | ||
JPH0426744B2 (ja) | ||
JPS6337418B2 (ja) | ||
JPS60142450A (ja) | 記憶システム | |
JPH03260854A (ja) | 付属バスアクセス制御方式 | |
JPS6269347A (ja) | ダイレクトメモリアクセスコントロ−ラ | |
JPH03220654A (ja) | マイクロコンピュータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050329 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050518 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050607 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050609 |
|
LAPS | Cancellation because of no payment of annual fees |