JP2008310664A - アクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体 - Google Patents

アクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体 Download PDF

Info

Publication number
JP2008310664A
JP2008310664A JP2007159005A JP2007159005A JP2008310664A JP 2008310664 A JP2008310664 A JP 2008310664A JP 2007159005 A JP2007159005 A JP 2007159005A JP 2007159005 A JP2007159005 A JP 2007159005A JP 2008310664 A JP2008310664 A JP 2008310664A
Authority
JP
Japan
Prior art keywords
access
address
storage means
data
access control
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.)
Granted
Application number
JP2007159005A
Other languages
English (en)
Other versions
JP5059493B2 (ja
Inventor
Shinichi Fukunaga
真一 福永
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2007159005A priority Critical patent/JP5059493B2/ja
Publication of JP2008310664A publication Critical patent/JP2008310664A/ja
Application granted granted Critical
Publication of JP5059493B2 publication Critical patent/JP5059493B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】アクセスする記憶装置を切り替えるアクセス制御装置を提供する。
【解決手段】処理制御部300とHDD200とに接続されたアクセス制御装置100であって、NAND FLASH108と、HDD200での格納位置を表す第1アドレスとNAND FLASH108での格納位置を表す第2アドレスとを対応づけた変換テーブルを記憶する変換テーブル記憶部117と、アクセスが要求されたデータの第1アドレスに対応する第2アドレスを変換テーブルから検索して第2アドレスが検索された場合にNAND FLASH108をアクセス対象に決定する対象決定部118と、を備えた。
【選択図】 図1

Description

この発明は、記憶装置に対するアクセスを制御するアクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体に関するものである。
データを格納する記憶装置として広く利用されているハードディスクドライブ(HDD)の長所として、(1)不揮発であること、(2)容量が非常に大きいこと、(3)ビット単価が安いこと、(4)書き換え回数の上限がないこと、(5)連続アクセススピードが高いこと、などが挙げられる。
一方、HDDの短所として、(1)小さい容量で構成されたものが少ないこと、(2)少なくとも$40〜$50のコストがかかること、(3)消費電力が高いこと(数十W)、(4)電源投入後、アクセス可能となるまでに数秒の時間が必要となること、(5)振動衝撃に弱いこと、(6)環境温度条件が厳しいこと、(7)不良率が高いこと、などが挙げられる。
このようなHDDの短所を解消可能な記憶装置として、HDDとは異なる不揮発性メモリの一つであるNAND型フラッシュメモリ(以下、NAND FLASHという)が知られている。
NAND FLASHの長所としては、(1)HDDより小さい容量を構成できること、(2)容量は減少するがHDDのコスト以下でも構成可能であること、(3)消費電力が小さいこと(大きくとも数W)、(4)電源投入後、アクセス可能となるまでに必要な時間は数百μ秒であり、HDDよりも立ち上げ時間が短いこと、(5)振動衝撃に強いこと、(6)対応する温度環境条件が広いこと、(7)不良率がHDDより低いこと、などが挙げられる。
ところで、上述のようなHDDには、一般に各種情報処理装置を制御するためのプログラムデータが記憶されている。このため、情報処理装置に電源を入れて立ち上げる時に、HDDからプログラムを読み出す必要がある。ところが、HDDは電源が投入されてからモーターの回転が安定するまで、データの読み出しができないため、装置が実際に使用可能となるまでに時間がかかるという問題があった。
この問題を解決するため、本来HDDのみが接続されるインターフェースの先に、HDDとは別に、さらに不揮発性RAM(Random Access Memory)を接続し、HDDと不揮発性RAMとを切り替えて使用できるように構成する技術が提案されている(例えば、特許文献1)。特許文献1では、立ち上げ時に必要なプログラムのデータは、ランダムアクセスが可能な不揮発性RAMに蓄積し、立ち上げ時は不揮発性RAMにアクセスするように制御することで、立ち上げ速度の高速化を実現している。
特開2007−26453号公報
特許文献1の方法では、高速にアクセスすべきデータと、その他のデータとを区別し、それぞれ不揮発性RAMとHDDとに分けて事前に格納しておく必要がある。このため、例えば、情報処理装置の用途が変更され、高速にアクセスすべきデータが変更された場合には、当該データを再度不揮発性RAMに格納しなおす必要がある。このように、特許文献1の方法では、アクセスを切り替える記憶装置それぞれに記憶するデータを容易に変更することができないという問題があった。
本発明は、上記に鑑みてなされたものであって、アクセスする記憶装置を切り替えるとともに、各記憶装置に記憶するデータの変更に容易に対応可能なアクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体を提供することを目的とする。
上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、外部装置と、前記外部装置がアクセスするデータを記憶する第1記憶手段とに接続され、前記外部装置からの前記データに対するアクセスを制御するアクセス制御装置であって、前記データを記憶し、起動からアクセス可能になるまでの時間が前記第1記憶手段より短い第2記憶手段と、前記第1記憶手段での前記データの格納位置を表す第1アドレスと、前記第2記憶手段での前記データの格納位置を表す第2アドレスとを対応づけた変換テーブルを記憶する変換テーブル記憶手段と、前記外部装置から前記データのアクセス要求を入力し、アクセスが要求された前記データの前記第1アドレスに対応する前記第2アドレスを前記変換テーブルから検索し、前記第2アドレスが検索された場合に、前記第2記憶手段をアクセス対象に決定する対象決定手段と、を備えたことを特徴とする。
また、請求項2にかかる発明は、請求項1にかかる発明において、前記外部装置の起動時に利用される前記データにアクセスするときに、アクセスする前記データを前記第1記憶手段から前記第2記憶手段にコピーし、コピー元の前記データの前記第1アドレスと、コピー先の前記データの前記第2アドレスとを対応づけた前記変換テーブルを作成するテーブル作成手段をさらに備えたこと、を特徴とする。
また、請求項3にかかる発明は、請求項2にかかる発明において、前記テーブル作成手段は、前記外部装置が起動した後、前記第2記憶手段の空き領域がなくなるまで、アクセスが要求された前記データを前記第1記憶手段から前記第2記憶手段にコピーし、コピー元の前記データの前記第1アドレスと、コピー先の前記データの前記第2アドレスとを対応づけた前記変換テーブルを作成すること、を特徴とする。
また、請求項4にかかる発明は、請求項2にかかる発明において、前記テーブル作成手段は、さらに、作成した前記変換テーブルを検索するときに前記第1記憶手段がアクセス可能か否かを判断し、前記第1記憶手段がアクセス可能となった後にアクセスする前記データについての前記第1アドレスと前記第2アドレスとを、前記変換テーブルから削除すること、を特徴とする。
また、請求項5にかかる発明は、請求項1にかかる発明において、前記対象決定手段は、前記第2アドレスが検索された場合に、さらに、前記アクセス要求が読取りアクセスか書込みアクセスかを判断し、読取りアクセスの場合に、前記第2記憶手段をアクセス対象に決定すること、を特徴とする。
また、請求項6にかかる発明は、請求項5にかかる発明において、前記対象決定手段は、前記アクセス要求が書込みアクセスの場合に、前記第1記憶手段および前記第2記憶手段の両方をアクセス対象に決定すること、を特徴とする。
また、請求項7にかかる発明は、請求項5にかかる発明において、前記対象決定手段は、さらに、前記第2記憶手段へのアクセス時にエラーが発生したか否かを判断し、エラーが発生した場合に、前記第1記憶手段をアクセス対象に決定すること、を特徴とする。
また、請求項8にかかる発明は、請求項1にかかる発明において、前記第2記憶手段は、DRAM(Dynamic Random Access Memory)であり、前記変換テーブル記憶手段は、前記第1記憶手段の領域のうち、前記データを一時的に記憶する領域のアドレスである前記第1アドレスと、前記第2アドレスとを対応づけた前記変換テーブルを記憶すること、を特徴とする。
また、請求項9にかかる発明は、請求項1にかかる発明において、前記第2記憶手段は、DRAM(Dynamic Random Access Memory)であり、主電源から前記DRAMへの電力供給が停止したときに、前記DRAMへの電力供給源を、前記主電源からバックアップ電源に切り替える電源制御手段をさらに備えたこと、を特徴とする。
また、請求項10にかかる発明は、請求項1にかかる発明において、前記第1記憶手段は、ATA規格に準拠したHDD(Hard Disk Drive)であり、前記対象決定手段は、ATA規格に準拠した前記アクセス要求を前記外部装置から入力し、アクセスが要求された前記データの前記第1アドレスに対応する前記第2アドレスを前記変換テーブルから検索し、前記第2アドレスが検索された場合に、前記第2記憶手段をアクセス対象に決定すること、を特徴とする。
また、請求項11にかかる発明は、請求項1にかかる発明において、前記第1記憶手段は、ATA規格に準拠したHDD(Hard Disk Drive)であり、SerialATA、SCSI(Small Computer System Interface)、USB(Universal Serial Bus)、およびIEEE(Institute of Electrical and Electronic Engineers)1394のいずれかの規格に準拠したアクセス要求を前記外部装置から入力し、入力した前記アクセス要求をATA規格に準拠したアクセス要求に変換する変換手段をさらに備え、前記対象決定手段は、変換された前記アクセス要求を入力し、アクセスが要求された前記データの前記第1アドレスに対応する前記第2アドレスを前記変換テーブルから検索し、前記第2アドレスが検索された場合に、前記第2記憶手段をアクセス対象に決定すること、を特徴とする。
また、請求項12にかかる発明は、外部装置と、前記外部装置がアクセスするデータを記憶する第1記憶手段とに接続され、前記外部装置からの前記データに対するアクセスを制御するアクセス制御装置におけるアクセス制御方法であって、前記アクセス制御装置は、前記データを記憶し、起動からアクセス可能になるまでの時間が前記第1記憶手段より短い第2記憶手段と、前記第1記憶手段での前記データの格納位置を表す第1アドレスと、前記第2記憶手段での前記データの格納位置を表す第2アドレスとを対応づけた変換テーブルを記憶する変換テーブル記憶手段と、を備え、対象決定手段によって、前記外部装置から前記データのアクセス要求を入力し、アクセスが要求された前記データの前記第1アドレスに対応する前記第2アドレスを前記変換テーブルから検索し、前記第2アドレスが検索された場合に、前記第2記憶手段をアクセス対象に決定する対象決定ステップを備えたこと、を特徴とする。
また、請求項13にかかる発明は、請求項12にかかる発明において、テーブル作成手段によって、前記外部装置の起動時に利用される前記データにアクセスするときに、アクセスする前記データを前記第1記憶手段から前記第2記憶手段にコピーし、コピー元の前記データの前記第1アドレスと、コピー先の前記データの前記第2アドレスとを対応づけた前記変換テーブルを作成するテーブル作成ステップをさらに備えたこと、を特徴とする。
また、請求項14にかかる発明は、請求項13にかかる発明において、前記テーブル作成ステップは、前記外部装置が起動した後、前記第2記憶手段の空き領域がなくなるまで、アクセスが要求された前記データを前記第1記憶手段から前記第2記憶手段にコピーし、コピー元の前記データの前記第1アドレスと、コピー先の前記データの前記第2アドレスとを対応づけた前記変換テーブルを作成すること、を特徴とする。
また、請求項15にかかる発明は、請求項13にかかる発明において、前記テーブル作成ステップは、さらに、作成した前記変換テーブルを検索するときに前記第1記憶手段がアクセス可能か否かを判断し、前記第1記憶手段がアクセス可能となった後にアクセスする前記データについての前記第1アドレスと前記第2アドレスとを、前記変換テーブルから削除すること、を特徴とする。
また、請求項16にかかる発明は、請求項12にかかる発明において、前記対象決定ステップは、前記第2アドレスが検索された場合に、さらに、前記アクセス要求が読取りアクセスか書込みアクセスかを判断し、読取りアクセスの場合に、前記第2記憶手段をアクセス対象に決定すること、を特徴とする。
また、請求項17にかかる発明は、請求項12にかかる発明において、前記第2記憶手段は、DRAM(Dynamic Random Access Memory)であり、前記変換テーブル記憶手段は、前記第1記憶手段の領域のうち、前記データを一時的に記憶する領域のアドレスである前記第1アドレスと、前記第2アドレスとを対応づけた前記変換テーブルを記憶すること、を特徴とする。
また、請求項18にかかる発明は、請求項12にかかる発明において、前記第2記憶手段は、DRAM(Dynamic Random Access Memory)であり、電源制御手段によって、主電源から前記DRAMへの電力供給が停止したときに、前記DRAMへの電力供給源を、前記主電源からバックアップ電源に切り替える電源制御ステップをさらに備えたこと、を特徴とする。
また、請求項19にかかる発明は、請求項12に記載のアクセス制御方法をコンピュータに実行させるアクセス制御プログラムである。
また、請求項20にかかる発明は、請求項19に記載のアクセス制御プログラムを格納したことを特徴とする記録媒体である。
本発明によれば、アクセスする記憶装置を切り替えるとともに、各記憶装置に記憶するデータの変更に容易に対応することができるという効果を奏する。
また、本発明によれば、必要最小限のデータのみを複数の記憶装置に記憶することにより、アクセス処理を効率化することができるという効果を奏する。
また、本発明によれば、アクセス時のエラーを判定してアクセス先を切り替えることにより、アクセス処理の信頼性を向上させることができるという効果を奏する。
また、本発明によれば、揮発メモリを記憶装置の一つとして利用して使用後のデータ消去処理を不要とすることにより、アクセス処理の性能を向上させることができるという効果を奏する。
以下に添付図面を参照して、この発明にかかるアクセス制御装置の最良な実施の形態を詳細に説明する。なお、以下では、本発明にかかるアクセス制御装置を、CPU(Central Processing Unit)などの制御装置と、ROM(Read Only Memory)やRAM(Random Access Memory)などの記憶装置と、ネットワークに接続して通信を行う通信I/Fと、HDD(Hard Disk Drive)、CD(Compact Disc)ドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置と、各部を接続するバスを備えた、通常のコンピュータに適用した例について説明する。
なお、適用可能な装置はこのようなコンピュータに限られるものではない。HDDなどの不揮発性記憶媒体にデータを格納する装置であれば、例えば、像担持体上に画像を形成する作像部、形成された画像を記録紙に定着する定着部などのデバイスを備えた画像形成装置などのその他のあらゆる電子装置に適用することができる。
(第1の実施の形態)
第1の実施の形態にかかるアクセス制御装置は、HDD内でのデータのアドレスとNAND FLASH内でのデータのアドレスとを対応づけた変換テーブルを参照し、NAND FLASH内のアドレスが存在するデータは、NAND FLASHにアクセスするように制御するものである。
なお、NAND FLASHよりHDDのビット単価が安いため、HDDと同じ容量のNAND FLASHにデータを完全に対応づけることは現実的ではない。HDDの容量と比較してはるかに少ない容量のNAND FLASHを搭載するのが一般的である。すなわち、HDDの一部の領域をNAND FLASHが重複してマッピングすることになる。
この場合、HDDのいずれの領域を重複させるかが問題となる。そこで、第1の実施の形態では、HDDの電源投入時の立ち上がり時間が数秒必要である欠点をカバーすることを考慮して重複マッピングする領域を決定する。すなわち、電源投入直後にアクセスするHDDのLBAの領域を学習して記憶し、立ち上げ時間の短いNAND FLASHに代替することでシステム全体の立ち上げ時間の高速化を実現する。
図1は、第1の実施の形態にかかるアクセス制御装置100を含むPC10の構成を示すブロック図である。図1に示すように、PC10は、アクセス制御装置100と、データを記憶するHDD200と、処理制御部300と、パワーサプライユニット(PSU)400とを備えている。
アクセス制御装置100は、処理制御部300からデータに対するアクセスを要求するコマンドを受けたときに、HDD200または後述するNAND FLASH108等のいずれかをアクセス先とするようにデータへのアクセスを制御する。なお、アクセス制御装置100は、例えば、独立したハードウェア基板などにより構成することができる。
処理制御部300は、HDD200に記憶されたデータを利用して各種処理を実行するものであり、ATAコントローラ301と、CPU302と、DRAM303と、ROM304と、を備えている。
ATAコントローラ301は、ATA規格に準拠した記憶装置へのアクセス制御を実行するものである。ROM304は、PC10上で動作する各種プログラムなどを格納するものである。CPU302は、ROM304内のプログラムに従ってPC10上で動作する各種処理を制御するものである。DRAM303は、CPU302が実行する処理の制御に必要な種々のデータを記憶するものである。
PSU400は、AC電源を元にアクセス制御装置100、HDD200、および処理制御部300にDC電源を供給するものである。
次に、アクセス制御装置100の詳細な構成について説明する。図1に示すように、アクセス制御装置100は、HDD200に記憶されたデータをマッピングして記憶する記憶部として、NAND FLASH108と、NV(Non Volatile)RAM109と、DRAM(Dynamic Random Access Memory)110とを備えている。
NAND FLASH108、NVRAM109、およびDRAM110は、いずれも、電源投入後、アクセス可能となるまでの立ち上げ時間がHDD200より短い記憶装置である。なお、データをマッピングして記憶する記憶部は、NAND FLASH108、NVRAM109、およびDRAM110に限られるものではなく、HDD200より立ち上げ時間の短い記憶媒体であれば、あらゆる記憶媒体を適用できる。
また、アクセス制御装置100は、アクセス制御に関する処理を実行する制御部114と、制御部114と上記各記憶部それぞれとを接続するNAND FLASHコントローラ111と、NVRAMコントローラ112と、DRAMコントローラ113と、PSU400からの電源供給に関する処理を制御する電源制御部115と、を備えている。
なお、アクセス制御装置100は、上記3つの記憶部をすべて備える必要はなく、少なくともいずれか1つを備えるように構成されていればよい。以下では、原則としてNAND FLASH108のみが備えられているものとして説明する。
制御部114は、さらに、主なハードウェア構成として、変換テーブル記憶部117と、ATAコントローラ123とを備え、主なソフトウェア構成として、対象決定部118と、テーブル作成部119と、を備えている。
変換テーブル記憶部117は、HDD200におけるデータのアドレスと、NAND FLASH108における同一のデータのアドレスとを対応づけた変換テーブルを記憶するものである。図2は、変換テーブル記憶部117に記憶された変換テーブルのデータ構造の一例を示す説明図である。
図2に示すように、変換テーブルは、処理制御部300起動後のHDD200に対するアクセス順序と、HDDのアドレスを表すLBA(Logical Block Address)と、NAND FLASH108のLBAとを対応づけて格納している。このように、HDD200は、セクタ(512バイト)を1単位とするLBAによってアクセスが制御される。このため、制御部114は、NAND FLASH108にアクセスするときも、アクセス単位を512バイトに揃えてアクセスする。
このような変換テーブルを参照することにより、アクセスするHDD200内のデータがNAND FLASH108にも格納されているか否かを判断するとともに、NAND FLASH108内でのアドレスを特定することができる。
なお、変換テーブルは後述するテーブル作成部119によって作成され、変換テーブル記憶部117に保存される。テーブル作成部119を用いずに、事前に作成した変換テーブルを保存するように構成してもよい。
ATAコントローラ123は、ATA規格に準拠した記憶装置へのアクセス制御を実行するものである。例えば、ATAコントローラ123は、処理制御部300から送信されたATA規格に準拠したアクセスコマンドを受信し、図示しないRAMに記憶する。
対象決定部118は、変換テーブルを参照して、データをアクセスするアクセス対象を、HDD200またはNAND FLASH108のいずれかに決定するものである。具体的には、対象決定部118は、コマンドでアクセスが要求されたHDD200のアドレス(LBA)に対応するNAND FLASH108のLBAを検索し、NAND FLASH108のLBAが検索できた場合に、アクセス対象をNAND FLASH108に決定する。また、対象決定部118は、NAND FLASH108のLBAが検索できなかった場合に、アクセス対象をHDD200に決定する。
テーブル作成部119は、処理制御部300の最初の起動時に変換テーブルを作成して変換テーブル記憶部117に保存するものである。具体的には、テーブル作成部119は、起動時にアクセスされるHDD200内のデータをアクセス順序に従ってNAND FLASH108にコピーするとともに、コピー元のLBAと、コピー先のLBAとを対応づけて順次変換テーブルに追加する。
上述の図2は、このようにして作成された変換テーブルの一例を示している。同図は、処理制御部300の起動後、HDD200のLBA0、1、2、10、11、12、25、30、50の順にデータがアクセスされた場合に作成される変換テーブルの例を示している。なお、NAND FLASH108には先頭アドレス0から順にデータがコピーされる。
次に、第1の実施の形態のアクセス制御装置100のハードウェア構成について説明する。アクセス制御装置100は、主なハードウェア構成として、上述のNAND FLASH108と、NVRAM109と、DRAM110と、NAND FLASHコントローラ111と、NVRAMコントローラ112と、DRAMコントローラ113と、を備えている。
また、制御部114は、主なハードウェア構成として、CPUと、RAMと、ROMと、上述のATAコントローラ123とを備えている。
ROMは、アクセス制御処理を実行するアクセス制御プログラムや、変換テーブルなどを格納する。CPUは、ROM内のプログラムに従ってアクセス制御装置100の各部を制御する。RAMは、アクセス制御装置100の制御に必要な種々のデータを記憶する。
なお、アクセス制御プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フロッピー(登録商標)ディスク(FD)、DVD等のコンピュータで読み取り可能な記録媒体に記録されて提供されてもよい。
この場合には、アクセス制御プログラムは、アクセス制御装置100で上記記録媒体から読み出して実行することにより制御部114内のCPU上にロードされ、上記ソフトウェア構成で説明した各部が制御部114内のCPU上に生成されるようになっている。
また、本実施の形態のアクセス制御プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
次に、このように構成された第1の実施の形態にかかるアクセス制御装置100によるアクセス制御処理について図3を用いて説明する。図3は、第1の実施の形態におけるアクセス制御処理の全体の流れを示すフローチャートである。
まず、制御部114のATAコントローラ123は、処理制御部300からのデータアクセス要求を入力する(ステップS301)。次に、制御部114は、変換テーブル記憶部117に変換テーブルが存在するか否かを判断する(ステップS302)。例えば、処理制御部300の最初の起動時には変換テーブルが作成されていないため、ステップS302では変換テーブルが存在しないと判断される。
変換テーブルが存在しない場合は(ステップS302:NO)、テーブル作成部119が、データアクセス順に従って変換テーブルを作成する変換テーブル作成処理を実行する(ステップS303)。変換テーブル作成処理の詳細については後述する。
変換テーブル作成処理の後、制御部114は、アクセス要求にしたがってHDD200へのアクセス動作を継続する(ステップS304)。
ステップS302で、変換テーブルが存在すると判断された場合は(ステップS302:YES)、対象決定部118は、アクセスが要求されたHDD200のアドレス(LBA)に対応するNAND FLASH108のアドレス(LBA)を変換テーブルから検索する(ステップS305)。
次に、対象決定部118は、NAND FLASH108のアドレスを取得できたか否かを判断し(ステップS306)、取得できなかった場合は(ステップS306:NO)、HDD200をアクセス対象に決定する。そして、制御部114は、アクセス対象として決定されたHDD200をアクセスする(ステップS307)。
NAND FLASH108のアドレスを取得できた場合は(ステップS306:YES)、対象決定部118は、NAND FLASH108をアクセス対象に決定する。そして、そして、制御部114は、アクセス対象として決定されたNAND FLASH108をアクセスする(ステップS308)。
次に、制御部114は、さらにアクセス要求が入力されたか否かを判断し(ステップS309)、入力されていない場合は(ステップS309:NO)、入力されるまで処理を繰り返す。アクセス要求が入力された場合は(ステップS309:YES)、入力された要求について、アクセス対象決定処理およびアクセス処理を繰り返す(ステップS305〜ステップS308)。
このように、本実施の形態では、最初の起動時に変換テーブルを作成し、作成した変換テーブルにしたがって、アクセス先をHDD200およびNAND FLASH108のいずれかに決定している。このため、処理制御部300の用途やアプリケーション、OSその他のソフトウェアの種類を限定することなく、柔軟に変換テーブルを作成し、アクセス対象を切り替えることができる。
また、起動時のデータを、電源投入後、アクセス可能となるまでに必要な時間がHDD200よりも短いNAND FLASH108に格納しているため、装置の起動処理の高速化を実現できる。すなわち、上述のようなHDD200とNAND FLASH108の欠点を相互に補い、それぞれの長所を生かす記憶装置を実現することができる。
また、従来と同様のATAインターフェース(ATAコントローラ123)を介して接続されているため、処理制御部300のソフトウェアからは、HDD200に直接接続した場合と区別せずにデータにアクセスできる。例えば、アクセス制御装置100を経由してHDD200にアクセスする場合であっても、処理制御部300からは、記憶装置の容量や構成情報は、HDD200に直接接続した場合と同様の内容を認識できる。このため、処理制御部300のソフトウェアを変更する必要がない。
なお、電源投入直後のHDDアクセス順序およびアドレスは、一般にはブート毎に変わるものではない。そこで、本実施の形態のように、初回起動時のみ変換テーブルを作成することにより、2回目以降の起動処理をさらに高速化することができる。
また、電源投入後、HDD300がアクセス可能になるまでの時間がNAND FLASH108の全容量にアクセスする時間より長い場合は、NAND FLASH108にアクセスするデータ量が多いほど高速化が期待できる。すなわち、本実施の形態のようにNAND FLASH108の全容量について変換テーブルを作成することで、高速化の効果がより大きくなる。
次に、ステップS303の変換テーブル作成処理の詳細について図4を用いて説明する。図4は、第1の実施の形態における変換テーブル作成処理の全体の流れを示すフローチャートである。
まず、テーブル作成部119は、NAND FLASH108の記憶容量(以下、容量Aとする)を検知する(ステップS401)。次に、テーブル作成部119は、HDD200の要求されたアドレス(LBA)にアクセスする(ステップS402)。
次に、テーブル作成部119は、アクセスしたHDD200のアドレスと、コピー先となるNAND FLASH108のアドレスとの対応を作成して変換テーブルに保存する(ステップS403)。次に、テーブル作成部119は、HDD200からNAND FLASH108の対応するアドレスにデータをコピーする(ステップS404)。
次に、テーブル作成部119は、HDD200をアクセスした容量(以下、容量Bとする)を算出する(ステップS405)。そして、テーブル作成部119は、ステップS401で検知したNAND FLASH108の容量Aと、算出した容量Bとを比較し、容量Bが容量Aより小さいか否かを判断する(ステップS406)。
容量Bが容量Aより小さい場合は(ステップS406:YES)、テーブル作成部119は、次に要求されたHDD200のアドレスにアクセスし処理を繰り返す(ステップS402)。
容量Bが容量Aより小さくない場合、すなわち、NAND FLASH108にコピーできる領域が存在しない場合は(ステップS406:NO)、テーブル作成部119は、変換テーブル作成処理を終了する。
(変形例)
上記実施の形態では、処理制御部300からATA規格に準拠したアクセスコマンドが送信されることを前提としていた。これに対し、本変形例では、ATA規格以外のSerialATA、SCSI(Small Computer System Interface)、USB(Universal Serial Bus)、およびIEEE(Institute of Electrical and Electronic Engineers)1394のいずれかのインターフェース規格を利用した場合にも、上記と同様のアクセス制御処理を可能とするものである。
図5は、本変形例にかかるアクセス制御装置500を含むPC11の構成を示すブロック図である。図5の処理制御部530は、第1の実施の形態の処理制御部300と異なり、SerialATA、SCSI、USB、およびIEEE1394などのATA以外のインターフェースによってHDD200にアクセスするコントローラ531を備えている。
また、図5に示すように、アクセス制御装置500は、処理制御部530と制御部114のATAコントローラ123との間に、インターフェース変換部521が追加された点が、第1の実施の形態と異なっている。インターフェース変換部521は、処理制御部530が採用するインターフェース規格と、HDD200にアクセスするためのATA規格とを変換するものである。
このような構成により、アクセス制御装置500は、ATA規格以外のインターフェース規格に対応した処理制御部530に対して、上述のようなアクセス制御処理を実行することができる。
このように、第1の実施の形態にかかるアクセス制御装置では、HDDのアドレスとNAND FLASHのアドレスとを対応づけた変換テーブルを参照し、NAND FLASHのアドレスが存在するデータは、NAND FLASHにアクセスするように制御することができる。変換テーブルは初回起動時または事前にHDDの内容に応じて作成することができるため、アクセスする記憶装置を切り替えるとともに、各記憶装置に記憶するデータの変更に容易に対応することができる。
(第2の実施の形態)
第2の実施の形態にかかるアクセス制御装置は、NAND FLASHの全容量にHDDのデータをマッピングするのではなく、HDDがアクセス可能になるまでの時間に相当するデータのみをマッピングするものである。
図6は、第2の実施の形態にかかるアクセス制御装置600を含むPC20の構成を示すブロック図である同図に示すように、アクセス制御装置600は、制御部614の機能、具体的にはテーブル作成部619の機能が、第1の実施の形態と異なっている。その他の構成および機能は、第1の実施の形態にかかるアクセス制御装置100の構成を表すブロック図である図1と同様であるので、同一符号を付し、ここでの説明は省略する。
テーブル作成部619は、NAND FLASH108の全容量分に相当する変換テーブルを作成するのではなく、HDD200がアクセス可能になる時間に対応するデータ量に相当する分の変換テーブルを作成する。具体的には、テーブル作成部619は、まず、第1の実施の形態と同様に最初の起動時に変換テーブル作成処理によって変換テーブルを作成する。そして、テーブル作成部619は、起動時に作成した変換テーブルを参照するときに、HDD200がアクセス可能か否かを判断し、アクセス可能となった時点以降にアクセスするデータについては、対応するアドレスを変換テーブルから削除する。
なお、テーブル作成部619は、HDD200の動作状態を格納したStatusレジスタを参照し、Statusレジスタの値がビジー状態か否かによって、HDD200がアクセス可能か否かを判断する。
図7は、ATAレジスタのアドレス割り当ての一例を示す説明図である。図7では、信号CS1#,CS0#、DA2、DA1、DA0がそれぞれH、L、H、H、Hであり、かつリードアクセスのときに、Statusレジスタにアクセスできることが示されている。
図8は、Statusレジスタ内のBITアサインの一例を示す。図8に示すように、Statusレジスタは8ビットで構成される。また、Statusレジスタの最上位のBIT7によって、HDD200がビジー状態か、アイドル状態かが表される。すなわち、BIT7が0のときアイドル状態、1のときビジー状態を表す。
次に、このように構成された第2の実施の形態にかかるアクセス制御装置600によるアクセス制御処理について説明する。図9は、第2の実施の形態におけるアクセス制御処理の全体の流れを示すフローチャートである。
ステップS901からステップS906までの、アクセス要求入力処理、変換テーブル作成処理、テーブル存在確認処理、およびアドレス存在確認処理は、第1の実施の形態にかかるアクセス制御装置100におけるステップS301からステップS306までと同様の処理なので、その説明を省略する。
ステップS906で、NAND FLASH108のアドレスを取得できなかった場合は(ステップS906:NO)、対象決定部118は、HDD200をアクセス対象に決定する。なお、本実施の形態の制御部614は、このとき、HDD200のStatusレジスタを確認し(ステップS907)、HDD200がビジー状態か否かを判断する(ステップS908)。
HDD200がビジー状態の場合は(ステップS908:YES)、アイドル状態になるまで処理を繰り返す(ステップS907)。HDD200がビジー状態でない場合、すなわち、アイドル状態である場合は(ステップS908:NO)、制御部614は、アクセス対象として決定されたHDD200をアクセスする(ステップS909)。
ステップS906で、NAND FLASH108のアドレスを取得できた場合は(ステップS906:YES)、対象決定部118は、NAND FLASH108をアクセス対象に決定する。このとき、テーブル作成部619は、HDD200のStatusレジスタを確認し(ステップS910)、HDD200がビジー状態か否かを判断する(ステップS911)。
HDD200がビジー状態の場合は(ステップS911:YES)、制御部614は、アクセス対象として決定されたNAND FLASH108をアクセスする(ステップS913)。HDD200がビジー状態でない場合、すなわち、アイドル状態である場合は(ステップS911:NO)、テーブル作成部619は、現在のアドレス以降のアドレスを変換テーブルから削除する(ステップS912)。
このように、第2の実施の形態にかかるアクセス制御装置では、HDDがアクセス可能になるまでの時間に相当するデータのみをNAND FLASHにマッピングすることができる。これにより、電源投入後、HDDがアクセス可能になるまでの時間がNAND FLASHの全容量にアクセスする時間より短い場合であっても、必要最小限のデータのみをマッピングすることが可能となる。
また、これにより、NAND FLASHでマッピングに使用されない領域を他の用途に使用することができる。さらに、変換テーブルから必要最小限のNAND FLASHの容量を知ることができるため、NAND FLASHの容量を最適化してコストダウンを図ることができる。
(第3の実施の形態)
第3の実施の形態にかかるアクセス制御装置は、リード要求のときにはNAND FLASHのみをアクセスし、ライト要求のときにはHDDとNAND FLASHの両方をアクセスするものである。また、NAND FLASHアクセス時のエラーを判定し、エラーが発生したときはHDDにアクセス先を切り替えるものである。
図10は、第3の実施の形態にかかるアクセス制御装置1000を含むPC30の構成を示すブロック図である。同図に示すように、アクセス制御装置1000は、制御部1014の機能、具体的には対象決定部1018の機能が、第1の実施の形態と異なっている。その他の構成および機能は、第1の実施の形態にかかるアクセス制御装置100の構成を表すブロック図である図1と同様であるので、同一符号を付し、ここでの説明は省略する。
対象決定部1018は、変換テーブルが存在する場合に、さらにNAND FLASH108に対するアクセスエラーの有無を判断し、エラーの場合にはHDDをアクセス対象として決定する点が、第1の実施の形態の対象決定部118と異なっている。
次に、このように構成された第3の実施の形態にかかるアクセス制御装置1000によるアクセス制御処理について説明する。図11は、第3の実施の形態におけるアクセス制御処理の全体の流れを示すフローチャートである。
ステップS1101からステップS1104までの、アクセス要求入力処理、変換テーブル作成処理、テーブル存在確認処理は、第1の実施の形態にかかるアクセス制御装置100におけるステップS301からステップS304までと同様の処理なので、その説明を省略する。
ステップS1102で変換テーブルが存在すると判断された場合(ステップS1102:YES)、対象決定部1018は、エラーフラグが1であるか否かを判断する(ステップS1105)。なお、エラーフラグとは、NAND FLASH108のアクセス時にエラーが発生したか否かを表す情報であり、0のときエラーなし、1のときエラー有りを表すものとする。また、エラーフラグには、初期状態として0(エラーなし)が設定されていることを前提とする。
エラーフラグが1でない場合は(ステップS1105:NO)、対象決定部1018は、さらにアクセス要求がリードアクセスか否かを判断する(ステップS1106)。リードアクセスの場合は(ステップS1106:YES)、アクセス対象決定処理およびアクセス処理が実行される(ステップS1107〜ステップS1110)。
なお、ステップS1107からステップS1110までの、アクセス対象決定処理およびアクセス処理は、第1の実施の形態にかかるアクセス制御装置100におけるステップS305からステップS308までと同様の処理なので、その説明を省略する。
本実施の形態では、対象決定部1018は、NAND FLASH108にアクセスしたときに、NAND FLASH108にアクセスエラーが発生したか否かを判断する(ステップS1111)。そして、アクセスエラーが発生した場合は(ステップS1111:YES)、対象決定部1018は、エラーフラグに1を設定するとともに(ステップS1112)、アクセス対象をHDD200に変更する。そして、制御部1014は、HDD200をアクセス対象として要求されたデータに再度アクセスする(ステップS1109)。
アクセスエラーが発生していないと判断した場合は(ステップS1111:NO)、アクセス要求入力の判断処理が実行される(ステップS1116)。
ステップS1106で、アクセス要求がリードアクセスでない、すなわちライトアクセスであると判断された場合は(ステップS1106:NO)、対象決定部1018は、HDD200とNAND FLASH108の両方をアクセス対象として決定する。そして、制御部1014は、HDD200およびNAND FLASH108のそれぞれにデータを書き込む(ステップS1113)。
次に、対象決定部1018は、NAND FLASH108にアクセスしたときに、NAND FLASH108にアクセスエラーが発生したか否かを判断する(ステップS1114)。そして、アクセスエラーが発生した場合は(ステップS1114:YES)、対象決定部1018は、エラーフラグに1を設定する(ステップS1115)。
アクセスエラーが発生していないと判断した場合は(ステップS1114:NO)、アクセス要求入力の判断処理が実行される(ステップS1116)。
ステップS1116のアクセス要求入力の判断処理は、第1の実施の形態のステップS309と同様の処理であるため、その説明を省略する。
このように、第3の実施の形態にかかるアクセス制御装置では、リード要求のときにはNAND FLASHのみをアクセスし、ライト要求のときにはHDDとNAND FLASHの両方をアクセスすることができる。これにより、読取り処理の高速化を図ることができる。また、常にデータを二重化できるため、データの信頼性を向上させることができる。
また、一般にはHDDより不良率が低いNAND FLASHであっても不良が発生することがある。さらに、NAND FLASHには書き換え回数に上限があるため、書き換え回数が多くなると不良が発生する確率が高まる。これに対し、第3の実施の形態では、NAND FLASHアクセス時のエラーを判定し、エラーが発生したときはHDDにアクセス先を切り替えることができるため、データアクセスの信頼性を向上させることができる。
(第4の実施の形態)
第4の実施の形態にかかるアクセス制御装置は、データの一時記憶領域として利用されるHDDの領域を、揮発メモリであるDRAMにマッピングすることにより、アクセス性能の向上を実現するものである。
図12は、第4の実施の形態にかかるアクセス制御装置1200を含むPC40の構成を示すブロック図である。図12に示すように、アクセス制御装置1200は、HDD200に記憶されたデータをマッピングして記憶する記憶部としてDRAM110を備えている。
なお、本実施の形態では、説明の便宜上、HDD200の一時記憶領域のデータをマッピングするためにDRAM110のみを用いる例について説明するが、その他の記憶部(NAND FLASH108、NVRAM109)を備えることを制限するものではない。すなわち、第1の実施の形態などと同様に、その他の記憶部によって一時記憶領域以外のデータを含む任意のデータをマッピングする機能をさらに備えるように構成してもよい。
また、同図に示すように、アクセス制御装置1200は、制御部1214の機能、具体的には対象決定部1218の機能と、テーブル作成部119が削除された点が、第1の実施の形態と異なっている。その他の構成および機能は、第1の実施の形態にかかるアクセス制御装置100の構成を表すブロック図である図1と同様であるので、同一符号を付し、ここでの説明は省略する。
対象決定部1218は、HDD200から切り替えるアクセス対象が、NAND FLASH108ではなくDRAM110に代わる点が、第1の実施の形態の対象決定部118と異なるのみであり、アクセス対象決定処理の実質的な処理内容は同様である。
なお、本実施の形態では、HDD200内で一時記憶領域として利用される領域のアドレスと、DRAM110のアドレスとを事前に対応づけた変換テーブルを変換テーブル記憶部117に記憶することを前提とする。このため、本実施の形態では、テーブル作成部119が削除されている。これに対し、HDD200の一時記憶領域のアドレスを検出する機能を備え、DRAM110のアドレスとマッピングして変換テーブルを作成するテーブル作成部を備えるように構成してもよい。
なお、一時記憶領域は、必ず最初にデータの書込みが行われ、その後にデータが読取られるものであるため、予めデータをHDD200からDRAM110にコピーしておく必要はない。
次に、このように構成された第4の実施の形態にかかるアクセス制御装置1200によるアクセス制御処理について説明する。図13は、第4の実施の形態におけるアクセス制御処理の全体の流れを示すフローチャートである。
本実施の形態では、変換テーブルが事前に設定されているため、変換テーブルの存在有無を判断する処理、および変換テーブル作成処理が不要となる。すなわち、図13のフローチャートは、第1の実施の形態のステップS302からステップS304を削除したフローチャートに相当する。
すなわち、ステップS1301は、図3のステップS301に対応し、ステップS1302からステップS1306は、図3のステップS305からステップS309に対応する。また、図3のNAND FLASHは図13ではDRAMに置き換えられている。
一般に、DRAM110はアクセススピードがHDD200やNAND FLASH108と比較して高速である。また、DRAM110は、NAND FLASH108と比較して書き換え回数の制限がない。そこで、本実施の形態のように、HDD200のアクセスが集中する特定領域を高速なDRAM110に代替することでシステムの性能を向上させることができる。
また、HDD200を一時退避用途として使用する場合、セキュリティの観点から、一時記憶領域に記憶したデータは直ちに消去するのが一般的である。さらに、単純に所定のデータを書き込んでデータを消去するのではなく、例えば乱数を3回書き込む消去方式を採用することにより高度のセキュリティを実現する場合もある。このように、HDD200を一時退避用途に用いる場合にはデータ消去のための書込み処理が必要になる。
これに対し、本実施の形態では、電源をOFFにするとデータが消去される特性を有する揮発デバイスであるDRAM110でHDD200の一部領域を代替している。これにより、使用後のライトアクセスを不要とし、アクセス性能を向上させることが可能となる。
(変形例)
DRAM110はアクセスの高速性というメリットが存在する反面、電源遮断時にはデータが揮発するという欠点がある。本変形例は、PSU400に入力されるAC電源が切れた場合に、バックアップ用の電池から電力を供給するように構成し、この欠点を解消するものである。
図14は、本変形例にかかるアクセス制御装置1400を含むPC41の構成を示すブロック図である。図14に示すように、アクセス制御装置1400は、PSU400以外に、電池1420からのDC電源を入力可能な電源制御部1415を備えている。電源制御部1415は、主電源であるPSU400からの電力供給が停止したときに、電力供給源を、PSU400から電池1420に切り替えるものである。
このような構成により、DRAM110の高速性と不揮発性の両方のメリットを得ることが可能となる。
以上のように、本発明にかかるアクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体は、立ち上がりに時間のかかるHDDを記憶装置として利用する装置に適している。
第1の実施の形態にかかるアクセス制御装置を含むPCの構成を示すブロック図である。 変換テーブルのデータ構造の一例を示す説明図である。 第1の実施の形態におけるアクセス制御処理の全体の流れを示すフローチャートである。 第1の実施の形態における変換テーブル作成処理の全体の流れを示すフローチャートである。 変形例にかかるアクセス制御装置を含むPCの構成を示すブロック図である。 第2の実施の形態にかかるアクセス制御装置を含むPCの構成を示すブロック図である。 ATAレジスタのアドレス割り当ての一例を示す説明図である。 Statusレジスタ内のBITアサインの一例を示す図である。 第2の実施の形態におけるアクセス制御処理の全体の流れを示すフローチャートである。 第3の実施の形態にかかるアクセス制御装置を含むPCの構成を示すブロック図である。 第3の実施の形態におけるアクセス制御処理の全体の流れを示すフローチャートである。 第4の実施の形態にかかるアクセス制御装置を含むPCの構成を示すブロック図である。 第4の実施の形態におけるアクセス制御処理の全体の流れを示すフローチャートである。 変形例にかかるアクセス制御装置を含むPCの構成を示すブロック図である。
符号の説明
100 アクセス制御装置
108 NAND FLASH
109 NVRAM
110 DRAM
111 NAND FLASHコントローラ
112 NVRAMコントローラ
113 DRAMコントローラ
114 制御部
115 電源制御部
117 変換テーブル記憶部
118 対象決定部
119 テーブル作成部
120 CPU
121 RAM
122 ROM
123 ATAコントローラ
300 処理制御部
301 ATAコントローラ
302 CPU
303 DRAM
304 ROM
400 PSU
500 アクセス制御装置
521 インターフェース変換部
530 処理制御部
600 アクセス制御装置
614 制御部
619 テーブル作成部
1000 アクセス制御装置
1014 制御部
1018 対象決定部
1200 アクセス制御装置
1214 制御部
1218 対象決定部
1400 アクセス制御装置
1415 電源制御部
1420 電池

Claims (20)

  1. 外部装置と、前記外部装置がアクセスするデータを記憶する第1記憶手段とに接続され、前記外部装置からの前記データに対するアクセスを制御するアクセス制御装置であって、
    前記データを記憶し、起動からアクセス可能になるまでの時間が前記第1記憶手段より短い第2記憶手段と、
    前記第1記憶手段での前記データの格納位置を表す第1アドレスと、前記第2記憶手段での前記データの格納位置を表す第2アドレスとを対応づけた変換テーブルを記憶する変換テーブル記憶手段と、
    前記外部装置から前記データのアクセス要求を入力し、アクセスが要求された前記データの前記第1アドレスに対応する前記第2アドレスを前記変換テーブルから検索し、前記第2アドレスが検索された場合に、前記第2記憶手段をアクセス対象に決定する対象決定手段と、
    を備えたことを特徴とするアクセス制御装置。
  2. 前記外部装置の起動時に利用される前記データにアクセスするときに、アクセスする前記データを前記第1記憶手段から前記第2記憶手段にコピーし、コピー元の前記データの前記第1アドレスと、コピー先の前記データの前記第2アドレスとを対応づけた前記変換テーブルを作成するテーブル作成手段をさらに備えたこと、
    を特徴とする請求項1に記載のアクセス制御装置。
  3. 前記テーブル作成手段は、前記外部装置が起動した後、前記第2記憶手段の空き領域がなくなるまで、アクセスが要求された前記データを前記第1記憶手段から前記第2記憶手段にコピーし、コピー元の前記データの前記第1アドレスと、コピー先の前記データの前記第2アドレスとを対応づけた前記変換テーブルを作成すること、
    を特徴とする請求項2に記載のアクセス制御装置。
  4. 前記テーブル作成手段は、さらに、作成した前記変換テーブルを検索するときに前記第1記憶手段がアクセス可能か否かを判断し、前記第1記憶手段がアクセス可能となった後にアクセスする前記データについての前記第1アドレスと前記第2アドレスとを、前記変換テーブルから削除すること、
    を特徴とする請求項2に記載のアクセス制御装置。
  5. 前記対象決定手段は、前記第2アドレスが検索された場合に、さらに、前記アクセス要求が読取りアクセスか書込みアクセスかを判断し、読取りアクセスの場合に、前記第2記憶手段をアクセス対象に決定すること、
    を特徴とする請求項1に記載のアクセス制御装置。
  6. 前記対象決定手段は、前記アクセス要求が書込みアクセスの場合に、前記第1記憶手段および前記第2記憶手段の両方をアクセス対象に決定すること、
    を特徴とする請求項5に記載のアクセス制御装置。
  7. 前記対象決定手段は、さらに、前記第2記憶手段へのアクセス時にエラーが発生したか否かを判断し、エラーが発生した場合に、前記第1記憶手段をアクセス対象に決定すること、
    を特徴とする請求項5に記載のアクセス制御装置。
  8. 前記第2記憶手段は、DRAM(Dynamic Random Access Memory)であり、
    前記変換テーブル記憶手段は、前記第1記憶手段の領域のうち、前記データを一時的に記憶する領域のアドレスである前記第1アドレスと、前記第2アドレスとを対応づけた前記変換テーブルを記憶すること、
    を特徴とする請求項1に記載のアクセス制御装置。
  9. 前記第2記憶手段は、DRAM(Dynamic Random Access Memory)であり、
    主電源から前記DRAMへの電力供給が停止したときに、前記DRAMへの電力供給源を、前記主電源からバックアップ電源に切り替える電源制御手段をさらに備えたこと、
    を特徴とする請求項1に記載のアクセス制御装置。
  10. 前記第1記憶手段は、ATA規格に準拠したHDD(Hard Disk Drive)であり、
    前記対象決定手段は、ATA規格に準拠した前記アクセス要求を前記外部装置から入力し、アクセスが要求された前記データの前記第1アドレスに対応する前記第2アドレスを前記変換テーブルから検索し、前記第2アドレスが検索された場合に、前記第2記憶手段をアクセス対象に決定すること、
    を特徴とする請求項1に記載のアクセス制御装置。
  11. 前記第1記憶手段は、ATA規格に準拠したHDD(Hard Disk Drive)であり、
    SerialATA、SCSI(Small Computer System Interface)、USB(Universal Serial Bus)、およびIEEE(Institute of Electrical and Electronic Engineers)1394のいずれかの規格に準拠したアクセス要求を前記外部装置から入力し、入力した前記アクセス要求をATA規格に準拠したアクセス要求に変換する変換手段をさらに備え、
    前記対象決定手段は、変換された前記アクセス要求を入力し、アクセスが要求された前記データの前記第1アドレスに対応する前記第2アドレスを前記変換テーブルから検索し、前記第2アドレスが検索された場合に、前記第2記憶手段をアクセス対象に決定すること、
    を特徴とする請求項1に記載のアクセス制御装置。
  12. 外部装置と、前記外部装置がアクセスするデータを記憶する第1記憶手段とに接続され、前記外部装置からの前記データに対するアクセスを制御するアクセス制御装置におけるアクセス制御方法であって、
    前記アクセス制御装置は、
    前記データを記憶し、起動からアクセス可能になるまでの時間が前記第1記憶手段より短い第2記憶手段と、
    前記第1記憶手段での前記データの格納位置を表す第1アドレスと、前記第2記憶手段での前記データの格納位置を表す第2アドレスとを対応づけた変換テーブルを記憶する変換テーブル記憶手段と、を備え、
    対象決定手段によって、前記外部装置から前記データのアクセス要求を入力し、アクセスが要求された前記データの前記第1アドレスに対応する前記第2アドレスを前記変換テーブルから検索し、前記第2アドレスが検索された場合に、前記第2記憶手段をアクセス対象に決定する対象決定ステップを備えたこと、
    を特徴とするアクセス制御方法。
  13. テーブル作成手段によって、前記外部装置の起動時に利用される前記データにアクセスするときに、アクセスする前記データを前記第1記憶手段から前記第2記憶手段にコピーし、コピー元の前記データの前記第1アドレスと、コピー先の前記データの前記第2アドレスとを対応づけた前記変換テーブルを作成するテーブル作成ステップをさらに備えたこと、
    を特徴とする請求項12に記載のアクセス制御方法。
  14. 前記テーブル作成ステップは、前記外部装置が起動した後、前記第2記憶手段の空き領域がなくなるまで、アクセスが要求された前記データを前記第1記憶手段から前記第2記憶手段にコピーし、コピー元の前記データの前記第1アドレスと、コピー先の前記データの前記第2アドレスとを対応づけた前記変換テーブルを作成すること、
    を特徴とする請求項13に記載のアクセス制御方法。
  15. 前記テーブル作成ステップは、さらに、作成した前記変換テーブルを検索するときに前記第1記憶手段がアクセス可能か否かを判断し、前記第1記憶手段がアクセス可能となった後にアクセスする前記データについての前記第1アドレスと前記第2アドレスとを、前記変換テーブルから削除すること、
    を特徴とする請求項13に記載のアクセス制御方法。
  16. 前記対象決定ステップは、前記第2アドレスが検索された場合に、さらに、前記アクセス要求が読取りアクセスか書込みアクセスかを判断し、読取りアクセスの場合に、前記第2記憶手段をアクセス対象に決定すること、
    を特徴とする請求項12に記載のアクセス制御方法。
  17. 前記第2記憶手段は、DRAM(Dynamic Random Access Memory)であり、
    前記変換テーブル記憶手段は、前記第1記憶手段の領域のうち、前記データを一時的に記憶する領域のアドレスである前記第1アドレスと、前記第2アドレスとを対応づけた前記変換テーブルを記憶すること、
    を特徴とする請求項12に記載のアクセス制御方法。
  18. 前記第2記憶手段は、DRAM(Dynamic Random Access Memory)であり、
    電源制御手段によって、主電源から前記DRAMへの電力供給が停止したときに、前記DRAMへの電力供給源を、前記主電源からバックアップ電源に切り替える電源制御ステップをさらに備えたこと、
    を特徴とする請求項12に記載のアクセス制御方法。
  19. 請求項12に記載のアクセス制御方法をコンピュータに実行させるアクセス制御プログラム。
  20. 請求項19に記載のアクセス制御プログラムを格納したことを特徴とする記録媒体。
JP2007159005A 2007-06-15 2007-06-15 アクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体 Expired - Fee Related JP5059493B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007159005A JP5059493B2 (ja) 2007-06-15 2007-06-15 アクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007159005A JP5059493B2 (ja) 2007-06-15 2007-06-15 アクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体

Publications (2)

Publication Number Publication Date
JP2008310664A true JP2008310664A (ja) 2008-12-25
JP5059493B2 JP5059493B2 (ja) 2012-10-24

Family

ID=40238195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007159005A Expired - Fee Related JP5059493B2 (ja) 2007-06-15 2007-06-15 アクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP5059493B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011028661A (ja) * 2009-07-29 2011-02-10 I-O Data Device Inc 複合記憶装置
JP2012226586A (ja) * 2011-04-20 2012-11-15 Nec Corp リブート、ブート、シャットダウン高速化装置並びにリブート、ブート、シャットダウン高速化方法
JP2013509667A (ja) * 2009-10-28 2013-03-14 サンディスク テクノロジィース インコーポレイテッド エラーを管理するための書き込み後読み出しおよび適応再書き込みを伴う不揮発性メモリおよび方法
WO2015162752A1 (ja) * 2014-04-24 2015-10-29 株式会社日立製作所 データベース演算部を備えるフラッシュモジュール、及びストレージ装置
US9983839B2 (en) 2016-06-13 2018-05-29 Konica Minolta, Inc. Image processing apparatus and non-transitory computer-readable recording medium encoded with mode switching program

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102319189B1 (ko) 2017-06-21 2021-10-28 삼성전자주식회사 스토리지 장치, 이를 포함하는 스토리지 시스템 및 스토리지 장치의 동작 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10154101A (ja) * 1996-11-26 1998-06-09 Toshiba Corp データ記憶システム及び同システムに適用するキャッシュ制御方法
JP2001290791A (ja) * 2000-04-06 2001-10-19 Nec Microsystems Ltd 不揮発性半導体記憶装置内蔵マイクロコンピュータとその制御方法
JP2003085041A (ja) * 2001-09-10 2003-03-20 Ricoh Co Ltd ディスクキャッシュシステム
JP2003216435A (ja) * 2002-01-03 2003-07-31 Samsung Electronics Co Ltd コンピュータシステム及びその起動方法
JP2007026453A (ja) * 2003-07-07 2007-02-01 Hitachi Ulsi Systems Co Ltd 記憶装置および記憶システム
JP2007094939A (ja) * 2005-09-30 2007-04-12 Sony Corp 情報処理装置、情報処理方法及びそのプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10154101A (ja) * 1996-11-26 1998-06-09 Toshiba Corp データ記憶システム及び同システムに適用するキャッシュ制御方法
JP2001290791A (ja) * 2000-04-06 2001-10-19 Nec Microsystems Ltd 不揮発性半導体記憶装置内蔵マイクロコンピュータとその制御方法
JP2003085041A (ja) * 2001-09-10 2003-03-20 Ricoh Co Ltd ディスクキャッシュシステム
JP2003216435A (ja) * 2002-01-03 2003-07-31 Samsung Electronics Co Ltd コンピュータシステム及びその起動方法
JP2007026453A (ja) * 2003-07-07 2007-02-01 Hitachi Ulsi Systems Co Ltd 記憶装置および記憶システム
JP2007094939A (ja) * 2005-09-30 2007-04-12 Sony Corp 情報処理装置、情報処理方法及びそのプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011028661A (ja) * 2009-07-29 2011-02-10 I-O Data Device Inc 複合記憶装置
JP2013509667A (ja) * 2009-10-28 2013-03-14 サンディスク テクノロジィース インコーポレイテッド エラーを管理するための書き込み後読み出しおよび適応再書き込みを伴う不揮発性メモリおよび方法
JP2012226586A (ja) * 2011-04-20 2012-11-15 Nec Corp リブート、ブート、シャットダウン高速化装置並びにリブート、ブート、シャットダウン高速化方法
WO2015162752A1 (ja) * 2014-04-24 2015-10-29 株式会社日立製作所 データベース演算部を備えるフラッシュモジュール、及びストレージ装置
US9983839B2 (en) 2016-06-13 2018-05-29 Konica Minolta, Inc. Image processing apparatus and non-transitory computer-readable recording medium encoded with mode switching program

Also Published As

Publication number Publication date
JP5059493B2 (ja) 2012-10-24

Similar Documents

Publication Publication Date Title
KR101086857B1 (ko) 데이터 머지를 수행하는 반도체 스토리지 시스템의 제어 방법
JP4988215B2 (ja) 複数のマッピング技法を採用した適応型フラッシュメモリ制御装置及びそれを含むフラッシュメモリシステム
US9128618B2 (en) Non-volatile memory controller processing new request before completing current operation, system including same, and method
JP4422652B2 (ja) 漸進的マージ方法及びそれを利用したメモリシステム
JP5420814B2 (ja) バッファメモリに貯蔵されたデータを無効化させるスキームを有する貯蔵システム及びそれを含んだコンピューティングシステム
JP2006216036A (ja) フラッシュメモリを含んだデータ貯蔵装置及びそれのマージ方法
US20080098159A1 (en) Memory system including flash memory and merge method thereof
JP4464378B2 (ja) 同一データを纏める事で格納領域を節約する計算機システム、ストレージシステム及びそれらの制御方法
JP5059493B2 (ja) アクセス制御装置、アクセス制御方法、アクセス制御プログラムおよび記録媒体
US8250245B2 (en) Information processing system, with information processing terminal capable of operating in multiple operation modes when connected to a host device
JP5141402B2 (ja) ストレージシステム,コピー制御方法およびコピー制御装置
JP2008171257A (ja) ホスト装置およびメモリシステム
JP2006236193A (ja) 起動プログラム実行方法、デバイス、記憶媒体及びプログラム
JP5959958B2 (ja) 記憶装置及び記憶装置におけるデータ消去方法
JP2007193886A (ja) ディスク装置、データ書込み制御方法およびコマンド制御方法
JP5060241B2 (ja) 情報処理装置及びその制御方法
KR100950936B1 (ko) 다수의 드라이브가 구현될 수 있는 솔리드 스테이트드라이브
KR101152108B1 (ko) 하이브리드 하드 디스크 드라이브 장치 및 그 리드/라이트 제어 방법
JP2011090531A (ja) 情報記憶装置
JP5218024B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム
CN111158582A (zh) 存储装置和电子装置
KR20030061948A (ko) 정보 저장 장치 및 그를 이용한 파일 관리 방법
JP2011113625A (ja) 記録再生装置
JP2009158011A (ja) 情報記録装置および情報記録方法
JP5487725B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120508

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120629

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: 20120731

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120802

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150810

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5059493

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees