(57)【特許請求の範囲】
【請求項１】
外部から与えられたデータを転送するインタフェース手段と、
前記データを記憶する不揮発性の半導体メモリ、及び該データを該半導体メモリに書込むために一時的に保持するバッファメモリをそれぞれ有する複数のメモリチップと、
前記インタフェース手段を介して転送されてきたデータを対応する前記メモリチップに出力するとともに、外部からの指定に基づいて対応する該メモリチップ内のデータを読出して該インタフェース手段に出力する制御手段とを備えた不揮発性半導体ディスク装置において、
前記制御手段は、前記複数のメモリチップ毎にその所要書込み時間に基づいて設定される所定時間を計測する複数のタイマを有するメモリ制御タイマと、
同時に書込み処理を行う前記複数のメモリチップの個数が設定される個数管理部とを更に有しており、
前記制御手段は、前記複数のメモリチップの同時書込み数が前記個数管理部に設定された個数を超えないように監視し、該同時書込み数が前記個数未満のときには外部から与えられたデータを空き状態のメモリチップに出力するとともに、該データが出力されたメモリチップについては、該データを該メモリチップに出力してから前記所定時間を経過した後、該メモリチップに対する書込み完了の監視を開始することを特徴とする不揮発性半導体ディスク装置。
【請求項２】
前記個数管理部は、書込み処理が行われているメモリチップのアドレスが格納される複数のレジスタを更に有しており、
前記個数は複数のレジスタの個数に応じて設定されることを特徴とする請求項１記載の不揮発性半導体ディスク装置。
【請求項３】
前記メモリ制御タイマは、前記メモリチップでの所要書込み時間を計測する計測タイマを更に有していることを特徴とする請求項１または２のいずれか1項に記載の不揮発性半導体ディスク装置。
【請求項４】
前記不揮発性半導体ディスク装置は、カード状を成し、前記インタフェース手段によって外部の処理装置に着脱自在に接続されることを特徴とする請求項１〜３のいずれか1項に記載の不揮発性半導体ディスク装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、パーソナル・コンピュータ（以下、「ＰＣ」という）等の周辺機能拡張用カードの１つである不揮発性半導体ディスク装置（以下、「ディスクカード」という）、特にその書込み制御に関するものである。
【０００２】
【従来の技術】
ディスクカードは、ＰＣの周辺装置としてデータを記憶するとともに、電源を必要とせずにその記憶内容を保持することができるものである。ディスクカードの記憶媒体としては、例えばフラッシュメモリ等の不揮発性の半導体メモリが使用されるが、フレキシブル・ディスクやハード・ディスクのようなディスク装置と同様に、セクタ等と呼ばれる一定サイズにフォーマット化された形式でデータを記憶するようになっている。半導体メモリの記憶容量の飛躍的な増加により、名刺サイズのカードに、例えば数１０Ｍバイトのデータを記憶することができるようになった。
このような小形で大容量、かつ電源を切っても記憶内容が保持されるディスクカードのメリットを生かし、例えば、ディジタルカメラで撮影した画像データの記憶用として使用されている。ディスクカードを使用すれば、撮影済みのディスクカードをディジタルカメラから取り外し、ＰＣにセットして記憶された画像データを読出してディジタル的に処理することができる。
【０００３】
図２は、従来のディスクカードの一例を示す構成図である。
このディスクカードは、ディジタルカメラやＰＣ等の処理装置１に接続するためのインタフェース部１０、この処理装置１との間で各種の制御信号の送受信を行うとともにディスクカード内の全体制御を行う中央処理装置（以下、「ＣＰＵ」という）２０、処理装置１との間でのデータの転送制御を行うディスク制御部３０、ディスクカード内部のデータ転送を行うための内部バス４０、及びデータの記憶を行う記憶部５０を備えている。
ディスク制御部３０は、処理装置１から与えられたセクタ単位の情報を一旦保持するためのバッファメモリ３１を有している。セクタは、例えば５１２バイトのデータに、そのセクタの有効性等の情報を持つヘッダ部とエラー訂正用の誤り訂正符号とが付加された５３６バイトの一定の形式を有する情報である。ディスク制御部３０は、インタフェース部１０を介して与えられたアドレス信号に基づいて、セクタ単位の情報を内部バス４０を介して対応する記憶部５０に書込む動作と、この記憶部５０に格納されているデータをセクタ単位に読出す動作とを行う機能を有している。
【０００４】
記憶部５０は、内部バス４０によって共通接続された複数（例えば、１５個）のメモリチップ５０ａ，５０ｂ，…，５０ｎで構成されている。これらのメモリチップ５０ａ〜５０ｎは、それぞれ異なるアドレスが付与されているが、いずれも同一構成であり、セクタ単位の情報を一旦保持するためのバッファメモリ５１、及びセクタ単位のデータを格納するための不揮発性の半導体メモリ５２を有している。半導体メモリ５２は、電源の供給が停止しても記憶内容がそのまま保持されるものである。更に各メモリチップ５０ａ〜５０ｎは、バッファメモリ５１と半導体メモリ５２との間でセクタ単位のデータの転送制御を行うメモリ制御部５３を有している。
このようなディスクカードに対して、処理装置１からデータの書込み命令が出されると、書込み用のデータは、インタフェース部１０を介してディスク制御部３０内のバッファメモリ３１に一旦保持される。バッファメモリ３１に保持されたデータは、内部バス４０を介して、そのアドレスに対応するメモリチップ５０ｉ（但し、ｉ＝ａ〜ｎ）内のバッファメモリ５１へ転送されて保持される。メモリチップ５０ｉ内のバッファメモリ５１に保持されたデータは、メモリ制御部５３からの制御に従って、半導体メモリ５２の所定の記憶領域に書込まれる。
【０００５】
この時、処理装置１からインタフェース部１０、及びバッファメモリ３１を介してバッファメモリ５１に転送されるデータの転送時間は、例えば、数１００μｓ程度である。一方、バッファメモリ５１に一旦保持されたデータを半導体メモリ５２に書込むためには、例えば、数ｍｓ程度の時間を必要とする。
このため、記憶部５０を複数のメモリチップ５０ａ〜５０ｎに分割し、それぞれのメモリチップ５０ａ等に、バッファメモリ５１及び半導体メモリ５２を設けることにより、各バッファメモリ５１からそれぞれの半導体メモリ５２に、独立して書込み動作が行われるようにしている。これにより、処理装置１からディスクカードに対して、ほぼ等価的に高速度の書込み処理が可能になる。
一方、処理装置１からデータの読出し命令が出されると、ＣＰＵ２０からの制御により、読出し対象のデータが記憶されたメモリチップ５０ａ等に読出し指令が出され、対応する記憶領域の半導体メモリ５２のデータがセクタ単位で読出される。読出されたデータは、バッファメモリ５１に一旦保持された後、内部バス４０を介してディスク制御部３０内のバッファメモリ３１に保持される。バッファメモリ３１に書込まれたデータは、更に、インタフェース部１０を介して処理装置１に転送される。
【０００６】
【発明が解決しようとする課題】
しかしながら、従来のディスクカードでは、次のような課題があった。
即ち、ディスクカードは、インタフェース部１０においてほぼ等価的に高速度の書込み及び読出しのアクセス速度を保持するために、記憶部５０を複数のメモリチップ５０ａ〜５０ｎに分割するとともに、各メモリチップ５０ａ〜５０ｎにそれぞれバッファメモリ５１を設けている。そして、各メモリチップ５０ａ〜５０ｎで並行して書込み動作を行わせることにより、ほぼ等価的に高速書込み動作を可能にしている。
メモリチップ１個当たりの書込み動作時の所要電流は、例えば、１５ｍＡ程度である。しかし、同時に書込み動作をするメモリチップ５０ａ〜５０ｎの数が多くなると、その合計の動作電流は大きくなる。従って、１０個のメモリチップ５０ｉが同時に書込み動作を行うと、記憶部５０のみで１５０ｍＡ程度の電流が必要になる。このため、処理装置１側には、それを考慮した電流容量を有する電源を備えておかなければならなかった。
このようなディスクカードは、単にＰＣの周辺装置として使用されるだけでなく、例えば、ディジタルカメラに装着されて撮影した画像データの記憶用にも用いられる。ディジタルカメラは、電池で駆動されるため、画像データの書込み時に大電流を供給することには限界があった。
本発明は、前記従来技術が持っていた課題を解決し、同時に書込み動作をするメモリチップ５０ａ〜５０ｎの数を限定することにより、大きな電源電流を必要としないディスクカードを提供するものである。
【０００７】
【課題を解決するための手段】
前記課題を解決するため、本発明は、外部から与えられたデータを転送するインタフェース手段と、前記データを記憶する不揮発性の半導体メモリ、及び該データを該半導体メモリに書込むために一時的に保持するバッファメモリをそれぞれ有する複数のメモリチップと、前記インタフェース手段を介して転送されてきたデータを対応する前記メモリチップに出力するとともに、外部からの指定に基づいて対応する該メモリチップ内のデータを読出して該インタフェース手段に出力する制御手段とを備えたディスクカードにおいて、前記制御手段を次のように構成している。
即ち、この制御手段は、前記複数のメモリチップ毎にその所要書込み時間に基づいて設定される所定時間を計測する複数のタイマを有するメモリ制御タイマと、同時に書込み処理を行う前記複数のメモリチップの個数が設定される個数管理部とを更に有している。また、この制御手段は、前記複数のメモリチップの同時書込み数が前記個数管理部に設定された個数を超えないように監視し、該同時書込み数が前記個数未満のときには外部から与えられたデータを空き状態のメモリチップに出力するとともに、該データが出力されたメモリチップについては、該データを該メモリチップに出力してから前記所定時間を経過した後、該メモリチップに対する書込み完了の監視を開始することを特徴としている。
【０００９】
本発明によれば、以上のようにディスクカードを構成したので、次のような作用が行われる。
処理装置からインタフェース手段を介してデータが転送されてくると、制御手段によって、現在書込み処理を行っているメモリチップの数が調べられる。書込み処理中のメモリチップの数が所定数未満であれば、該当するメモリチップに対してデータが出力される。そして、所要書込み時間に相当する一定時間経過後に、書込みが完了したか否かの監視が開始される。
一方、書込み処理中のメモリチップの数が所定数であれば、同時書込み数が所定数未満になるまで、該当するメモリチップに対してデータの出力は行われない。そして、書込み完了の監視の結果、同時書込み数が所定数未満になっていれば、そのデータがメモリチップへ出力され、メモリチップ内の半導体メモリに書き込まれる。
【００１０】
【発明の実施の形態】
第１の実施形態
図１は、本発明の第１の実施形態を示すディスクカードの構成図であり、図２の従来のディスクカードと共通の要素には共通の符号が付されている。
このディスクカードは、ディジタルカメラ等に装着可能なように、名刺サイズのカード状を形状を有しており、インタフェース手段（例えば、インタフェース部）１０、制御手段（例えば、ＣＰＵ２０及びディスク制御部３０Ａ）、内部バス４０、及び記憶部５０を備えている。
インタフェース部１０は、従来のディスクカードと同様に、ディジタルカメラやＰＣ等の処理装置１に接続するためのものであり、例えば、米国ＩＢＭ社が提唱したハードディスク用の規格であるＡＴＡ（Advanced Technology Attachment）規格に準拠して、処理装置１との間の接続、並びにデータ及び各種の制御信号の送受信を行うものである。インタフェース部１０には、従来と同様にディスクカード内の全体制御を行うＣＰＵ２０、及び従来とは機能の異なるディスク制御部３０Ａが接続されている。
【００１１】
このディスク制御部３０Ａは、処理装置１から与えられたセクタ単位の情報（例えば、５３６バイト）を一旦記憶させるために、複数セクタ分の記憶容量を有するバッファメモリ３１を備えている。このため、処理装置１からのセクタ単位の情報を記憶部５０の動作状態にかかわらず、バッファメモリ３１に空きセクタが存在する限り、入力することが可能になっている。
ディスク制御部３０Ａは、以上の従来の機能に追加して、記憶部５０内のメモリチップ５０ａ〜５０ｎの同時動作数を監視し、所定数以上のメモリチップ５０ｉ（但し、ｉ＝ａ〜ｎ）が同時に書込み動作をしないように制御するための個数管理部３２を有している。個数管理部３２は、例えば、図示しない３個のレジスタ３２ａを持ち、このレジスタ３２ａに書込み動作中のメモリチップ５０ｉのアドレスが登録されるようになっている。
内部バス４０は、ディスク制御部３０Ａと記憶部５０との間でのデータ転送を行う共通バスであり、アドレス線、データ線、及び制御線で構成されている。
【００１２】
記憶部５０は、従来と同様に、内部バス４０によって共通接続された複数（例えば、１５個）のメモリチップ５０ａ〜５０ｎで構成されている。これらのメモリチップ５０ａ〜５０ｎは、それぞれ異なるアドレスが付与されているが、いずれも同一構成であり、セクタ単位の情報を一旦蓄積するためのバッファメモリ５１、及びセクタ単位のデータを格納するための不揮発性の半導体メモリ５２を有している。各半導体メモリ５２は、例えば８Ｍビットの記憶容量を持ち、電源の供給が停止しても記憶内容がそのまま保持されるものである。更に、各メモリチップ５０ａ〜５０ｎは、バッファメモリ５１と半導体メモリ５２との間でセクタ単位のデータの転送制御を行うメモリ制御部５３を有している。
次に、このように構成されたディスクカードの動作を説明する。
処理装置１からデータの書込み命令が出されると、書込みデータは、インタフェース部１０を介してディスク制御部３０Ａ内のバッファメモリ３１に一旦書込まれる。個数管理部３２内の３個のレジスタ３２ａには、書込み動作中のメモリチップ５０ｉのアドレスが登録されており、データの書込み命令が与えられた時に、個数管理部３２によって、これらの３個のレジスタ３２ａの内容がチェックされる。
【００１３】
もし、アドレスが登録されていない空き状態のレジスタ３２ａが存在すれば、その空き状態のレジスタ３２ａに書込み対象のメモリチップ５０ｉのアドレスが登録されるとともに、そのメモリチップ５０ｉに、書込みデータが出力される。これにより、メモリチップ５０ｉ内において、データの書込み動作が開始される。書込みデータが出力された後、ディスク制御部３０Ａによって、３個のレジスタ３２ａに登録された書込み動作中のメモリチップ５０ｉに対する定期的な状態監視が行われて、書込みの完了が監視される。状態監視では、メモリチップ５０ｉに、例えば読出し命令を発して、その応答がビジー状態であれば書込み動作が未完了であると判断する。
一方、処理装置１からデータの書込み命令が出された時に、３個のレジスタ３２ａがすべて使用中であれば、たとえデータの書込み対象のメモリチップ５０ｉが書込み動作を行っていなくても、ディスク制御部３０Ａから、そのメモリチップ５０ｉに対する書込みデータの出力は、３個のレジスタ３２ａに登録されているメモリチップ５０ｉの書込み動作の完了まで停止される。
【００１４】
そして、状態監視によってメモリチップ５０ｉの書込み動作の完了が検出されると、その空いたレジスタ３２ａにメモリチップ５０ｉのアドレスが登録されるとともに、メモリチップ５０ｉに対して書込み命令が出される。
このように、この第１の実施形態のディスクカードは、ディスク制御部３０Ａ内に、メモリチップ５０ａ〜５０ｎの同時動作数を監視するための個数管理部３２を設けたので、この個数管理部３２で設定された個数以上のメモリチップ５０ｉが同時に書込み動作を行うことがない。従って、メモリチップ５０ｉの書込み時に必要となる記憶部５０の消費電流は、個数管理部３２で設定された個数に対する消費電流が最大値となる。このため、例えば、ディジタルカメラ等の処理装置１に大容量の電源を用意する必要がなくなるという利点がある。更に、ディスク制御部３０Ａ内には、処理装置１からの複数のデータを一時的に保持することができるバッファメモリ３１を備えているので、たとえメモリチップ５０ｉの書込み動作が制限されても、処理装置１からのデータを受取ることが可能であり、処理装置１側の処理に対する影響を軽減している。
【００１５】
第２の実施形態
図３は、本発明の第２の実施形態を示すディスクカードにおけるディスク制御部の構成図であり、図１中の要素と共通の要素には共通の符号が付されている。
このディスク制御部３０Ｂは、図１中のディスク制御部３０Ａに代えて用いられるものであり、ディスク制御部３０Ａにメモリ制御タイマ３３を付加した構成になっている。
メモリ制御タイマ３３は、メモリチップ５０ｉでの所要書込み時間を計測するための計測タイマ３３ａを有している。計測タイマ３３ａは、ディスクカードが最初に書込み動作をするときに、その書込みに必要とする時間を計測するためのタイマである。計測タイマ３３ａの出力側には、この計測タイマ３３ａで計測した時間を、所要書込み時間にほぼ相当する時間として記憶するための時間保存レジスタ３３ｂが接続されている。そして、時間保存レジスタ３３ｂの出力側には、個数管理部３２で同時書込み個数の管理に使用する３個のレジスタ３２ａに対応して、３個のカウントダウン・タイマ３３ｃ，３３ｄ，３３ｅが接続されている。
【００１６】
カウントダウン・タイマ３３ｃ〜３３ｅは、時間保存レジスタ３３ｂからロードされた所要書込み時間を、時間の経過に従ってカウントダウンし、その値が０になったときに、該当するメモリチップ５０ｉに対して書込みの完了の監視を開始するためのものである。
このようなディスクカードにおいて、処理装置１からデータの書込み命令が出されると、書込み用のデータは、インタフェース部１０を介してディスク制御部３０Ｂ内のバッファメモリ３１に一旦書込まれる。個数管理部３２内の３個のレジスタ３２ａ中に空きレジスタが発生した時点で、その空き状態のレジスタ３２ａに書込み対象のメモリチップ５０ｉのアドレスが登録され、そのメモリチップ５０ｉに書込みデータが転送される。更に、そのレジスタ３２ａに対応するカウントダウン・タイマ３３ｊ（但し、ｊ＝ｃ〜ｅ）等に、時間保存レジスタ３３ｂの内容がロードされる。これにより、メモリチップ５０ｉ内において、データの書込み動作が開始され、同時に、カウントダウン・タイマ３３ｊのカウントダウン動作が開始される。
【００１７】
カウントダウン・タイマ３３ｊの値が０になると、その旨がディスク制御部３０Ｂに伝えられ、ディスク制御部３０Ｂによって、該当するメモリチップ５０ｉの状態監視が行われる。
このように、この第２の実施形態のディスクカードは、ディスク制御部３０内にメモリ制御タイマ３３を有しており、書込みが完了する時点でこのメモリ制御タイマ３３からの通知が行われるので、書込みに必要な所定の時間内はメモリチップ５０ｉに対する書込み完了の監視を行う必要がない。これにより、状態監視のための動作をほとんど行う必要がなくなり、その動作に伴う消費電力の低減が可能になるという利点がある。
なお、本発明は、上記実施形態に限定されず、種々の変形が可能である。この変形例としては、例えば、次の（ａ）〜（ｅ）のようなものがある。
【００１８】
（ａ）  ディスクカードは、ディジタルカメラ等に装着可能なように、名刺サイズのカード状を成しているが、カード状のものに限定するものではない。
（ｂ）  インタフェース部１０はＡＴＡ規格のものに限定されず、一定のフォーマットに従ったデータを転送することができるものであればよい。
（ｃ）  メモリチップ５０ａ〜５０ｎの数、記憶容量、転送速度、及び転送データのサイズ等は、実施形態で説明した数値に限定するものではない。
（ｄ）  個数管理部３２では、メモリチップ５０ｉの同時動作数を３個に制限しているが、電源容量、データ量、所要書込み時間等の兼ね合いによって、任意の数に設定することができる。
（ｅ）  図３のメモリ制御タイマ３３は、計測タイマ３３ａによって、最初にメモリチップ５０ｉの所要書込み動作時間を測定するようになっているが、概略の所要書き込み動作時間を予め時間保存レジスタ３３ｂに記憶させておけば、計測タイマ３３ａを省くことができる。
【００１９】
以上詳細に説明したように、本発明によれば、複数のメモリチップに対する書込みデータの出力を管理することにより、このメモリチップの同時に書込み動作を制限する制御手段を設けている。このため、一時的に大きな電源電流が流れることを防止することが可能になり、電源容量を小さくすることができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態を示すディスクカードの構成図である。
【図２】従来のディスクカードの構成図である。
【図３】本発明の第２の実施形態を示すディスクカードにおけるディスク制御部の構成図である。
【符号の説明】
１                        処理装置
１０                      インタフェース部
２０                      ＣＰＵ
３０，３０Ａ，３０Ｂ      ディスク制御部
３１，５１                バッファメモリ
３２                      個数管理部
３３                      メモリ制御タイマ
４０                      内部バス
５０                      記憶部
５０ａ〜５０ｎ            メモリチップ
５２                      半導体メモリ
５３                      メモリ制御部
【図１】
0003821536.tif 000002
【図２】
0003821536.tif 000003
【図３】
0003821536.tif 000004