JP5454224B2 - 記憶装置および記憶システム - Google Patents
記憶装置および記憶システム Download PDFInfo
- Publication number
- JP5454224B2 JP5454224B2 JP2010040460A JP2010040460A JP5454224B2 JP 5454224 B2 JP5454224 B2 JP 5454224B2 JP 2010040460 A JP2010040460 A JP 2010040460A JP 2010040460 A JP2010040460 A JP 2010040460A JP 5454224 B2 JP5454224 B2 JP 5454224B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- data
- buffer
- state
- 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.)
- Expired - Fee Related
Links
- 230000006854 communication Effects 0.000 claims description 106
- 238000004891 communication Methods 0.000 claims description 100
- 230000015654 memory Effects 0.000 claims description 82
- 230000005540 biological transmission Effects 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 13
- 238000000034 method Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 18
- 238000012546 transfer Methods 0.000 description 13
- 230000007704 transition Effects 0.000 description 11
- 230000007423 decrease Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 5
- 238000011084 recovery Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 238000009432 framing Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000000284 resting effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006266 hibernation Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000007958 sleep Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/266—Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3253—Power saving in bus
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Power Sources (AREA)
Description
たとえばカメラに装着された場合、メモリカードは、カメラで撮像した画像のデータなどを記憶することができる。
このようなメモリカードと電子機器とのインタフェースとして、PCI Expressがある(特許文献1、2)。
PCI Expressは、シリアルデータ通信によりデータを高速に転送するものであり、ピクセル数の多い画像や動画のデータ転送に適している。
このため、PCI Expressなどのシリアルデータ通信方式をインタフェースに用いた場合、消費電力が大きくなる可能性がある。
たとえばバッテリ駆動されるモバイル機器においてメモリカードとのインタフェースにPCI Expressを採用した場合、モバイル機器の連続使用可能時間、バッテリの寿命に影響を与える可能性がある。
1.メモリカードおよびカメラ装置(ホスト機器)の構成
2.PCI Expressの通信方式
3.PCI Expressの電源管理
4.ホスト機器の書込みアクセス期間中の電源管理
5.ホスト機器の読出しアクセス期間中の電源管理
図1は、本発明の実施形態に係るメモリカード1のハードウェアレベルのブロック図である。
図1のメモリカード1は、カードインタフェース部(C_I/F)11、コントロールレジスタ(REG)12、バッファ(BUF)13、メモリコントローラ(M_CTRL)14、不揮発性メモリ(NV_MEM)15を有する。
そして、メモリカード1は、PCI Expressの規格に準拠して電子機器と通信する。
図2のカメラシステム3は、図1のメモリカード1と、ホスト機器としてのカメラ装置2とを有する。
また、カメラ装置2は、バッテリ(BAT)28により駆動される。
そして、撮像部21は、動画または静止画の画像データを生成し、画像データを含む信号をCPU24へ出力する。
操作部22は、撮像ボタン、十字キーなどを有する。
そして、操作部22は、操作されたキーに応じた信号をCPU24へ出力する。
そして、表示部23は、CPU24から映像信号が入力され、映像信号の画像を表示する。
CPU24は、メモリ25に記憶されているプログラムを読み込んで実行する。
これにより、CPU24には、カメラ装置2の制御部が実現される。
制御部は、撮像部21、表示部23、ホストインタフェース部26などを管理して制御する。
図1のメモリカード1は、このスロットに脱着可能に装着される。
カメラ装置2のCPU24は、たとえば静止画または動画などを撮像し、撮像した画像の画像データをメモリカード1に書込む。このとき、カメラ装置2のCPU24は、メモリカード1に対して書込みアクセスする。
なお、CPU24は、所定のデータ量の単位で、メモリカード1に対して書込みアクセスしてもよい。
また、カメラ装置2は、たとえばメモリカード1から画像データを読み込み、表示部23に表示する。このとき、カメラ装置2のCPU24は、メモリカード1に対して読出しアクセスする。
なお、CPU24は、所定のデータ量の単位で、メモリカード1に対して読出しアクセスしてもよい。
そして、不揮発性メモリ15は、カメラ装置2の書込みデータなどを記憶する。
そして、バッファ13は、不揮発性メモリ15に書込まれる書込みデータまたは不揮発性メモリ15から読み出された読出しデータを一時的に記憶する。
そして、メモリコントローラ14は、カードインタフェース部11から書込みデータの保存が指示されると、バッファ13から書込みデータを読み込み、不揮発性メモリ15に保存する。
また、カードインタフェース部11からデータの読出しが指示されると、メモリコントローラ14は、不揮発性メモリ15から指示された読出しデータを読み込み、バッファ13に保存する。
また、カードインタフェース部11は、コントロールレジスタ12、バッファ13、メモリコントローラ14に接続される。
そして、カードインタフェース部11は、メモリカード1全体の処理を管理し、コントロールレジスタ12に書込まれたコマンドに対応する処理を実行する。
たとえばコントロールレジスタ12に書込みコマンドが書込まれた場合、カードインタフェース部11は、ホスト機器から受信する書込みデータをバッファ13に書込む。
また、カードインタフェース部11は、メモリコントローラ14へ書込みデータの保存を指示する信号を出力する。
この他にも例えばコントロールレジスタ12に読出しコマンドが書込まれた場合、カードインタフェース部11は、メモリコントローラ14へデータの読出しを指示する信号を出力する。
カードインタフェース部11は、バッファ13から読出しデータを読み込み、ホスト機器へ出力する。
次に、PCI Expressによる通信方式を説明する。
図3には、PCI Expressにより通信する第1コンポーネント31と第2コンポーネント32とが図示されている。
第1コンポーネント31は、図1および図2の例においてたとえばホスト機器としてのカメラ装置2に対応する。
第2コンポーネント32は、メモリカード1のカードインタフェース部11に対応する。
なお、クロック信号は、図示しないクロック発生回路により生成すればよい。
なお、PCI Expressでは、2つのコンポーネント31,32を複数のレーンにより接続することもできる。
第2コンポーネント32は、当該一方の差動伝送路ペアからパケットを受信し、データを取得する。
図4には、第1コンポーネント31に実現される機能として、ソフトウェア層33、トランザクション層34、データリンク層35、物理層36、メカニカル層37が記載されている。
また、第2コンポーネント32にも、ソフトウェア層33、トランザクション層34、データリンク層35、物理層36、メカニカル層37が実現される。
図5のパケットは、フレーミングキャラクタデータ41、シーケンス番号データ42、ヘッダデータ43、実データ44、ECRCデータ45、LCRCデータ46、フレーミングキャラクタデータ47で構成される。
ソフトウェア層33は、たとえば、メモリカード1に撮像した静止画または動画の画像を書込むカメラの撮影制御部などである。
通信したい実データ44が発生すると、ソフトウェア層33は、トランザクションを開始する。
TLPは、他のトランザクション層34へ送信される。
TLPを受信した他のトランザクション層34は、ECRCを用いて実データ44の誤りを検出する。
DLLPは、他のデータリンク層35へ送信される。
他のデータリンク層35は、LCRCデータ46を用いてTLPの誤りを検出する。
また、データリンク層35は、他の受信するシーケンス番号データ42が所定の順番でなかった場合、TLPの誤りを検出した場合、他のデータリンク層35に当該シーケンス番号データ42のDLLPを再送させる。
PLPは、他の物理層36へ送信される。
また、物理層36は、必要に応じてオーダードセットなどの制御信号を他の物理層36との間で送受する。オーダードセットには、たとえばエレクトリカル・アイドル・オーダードセットがある。
送信路をエレクトリカル・アイドルにする場合、物理層36は、まず、他の物理層36へエレクトリカル・アイドル・オーダードセットを送信する。その後、物理層36は、送信用の差動伝送路ペアを、エレクトリカル・アイドル・オーダードセットに対応した状態にセットして、送信路をエレクトリカル・アイドルにする。これにより、コンポーネントの通信状態は、休止状態に制御される。
SerDes回路は、送信するパラレルデータをシリアルデータへ変換する。また、SerDes回路は、受信したシリアルデータをパラレルデータへ変換する。
そして、物理層36は、物理層36に生成された図5の物理層パケット、オーダードセットなどを、他の物理層36へ送信する。
たとえば物理層36は、図5の物理層パケットのデータを左側のデータから順番に送信する。
図5の物理層パケットのデータは、送信用の差動伝送路ペアから、シリアルデータの信号として送信される。
図6は、図3の各コンポーネントの動作状態の遷移図である。
PCI Expressのコンポーネントの動作状態には、たとえばL0ステート、L0sステート、L1ステートがある。
PCI Expressにより通信するコンポーネント31,32は、ASPM(Active State Power Management)により動作状態を切り替える。
L0sステート、およびL1ステートは、スタンバイ状態(休止状態)であり、L0sステートよりL1ステートのほうが深い休止状態である。
L0sステートからL0ステートへの復旧時間は、たとえば数百ナノ秒から数マイクロ秒である。
L1ステートからL0ステートへの復旧時間は、たとえば数マイクロ秒から数十マイクロ秒である。
また、L1ステートからL0ステートへ復旧する場合、コンポーネントは、L1ステートからリカバリステートとなり、リカバリステートからL0ステートへ復旧する。
そして、コンポーネント31,32は、パケットの受信状況などに応じて動作状態を制御する。
L0からL1への状態切替では、メモリカード1のトランザクション層34は、新たなパケットの送信を停止し、データリンク層35は、L0からL1への状態切替を要求するリクエストを繰り返し送信する(ステップST1)。
切替要求を受信すると、ホスト機器(2)のデータリンク層35は、自己の通信状態に応じて、切り替え許可(ACK)または不可(NAK)を送信する(ステップST2)。
また、切り替え許可が送信される場合、トランザクション層34は、新たなパケットの送信を禁止する。
ホスト機器(2)の物理層36は、エレクトリカル・アイドル・オーダードセットを受信すると、通信を停止する。
また、物理層36は、エレクトリカル・アイドル・オーダードセットを送信する(ステップST4)。
これにより、2つのコンポーネント31,32の動作状態は、L0からL1に切り替わる。
L1の休止状態では、物理層36、データリンク層35、トランザクション層34は停止する。
図8は、ホスト機器(2)とメモリカード1との動作状態をL0からL0sへ切り替える場合のシーケンスチャートの一例である。
L0からL0sへの状態切替では、メモリカード1の物理層36は、エレクトリカル・アイドル・オーダードセットを送信し(ステップST11)、休止状態となる。
ホスト機器(2)のコンポーネントの物理層36は、エレクトリカル・アイドル・オーダードセットを受信すると、休止状態となる。
L0sの休止状態では、物理層36のみが停止する。
このため、各コンポーネント31,32は、図示しないタイマを有し、このタイマによりアイドル期間を計測している。
これに対して、PCI Expressの規格において、L1状態への切り替え条件は、実装者が決めることができる。
よって、各コンポーネント31,32は、L1状態への切り替えのためにタイマを使用しなくてもよい。
図9は、ホスト機器(2)とメモリカード1との動作状態をL1からL0へ切り替える場合のシーケンスチャートの一例である。
L1からL0への状態切替では、物理層36は、エレクトリカル・アイドルを解除する。
エレクトリカル・アイドルを解除した後、一方のコンポーネントは、TS1オーダードセットとTS2オーダードセットとを所定回数ずつ、他方のコンポーネントへ送信する(ステップST21,ST23)。
また、他方のコンポーネントも、TS1オーダードセットとTS2オーダードセットとを所定回数ずつ、一方のコンポーネントへ送信する(ステップST22,ST24)。
具体的には、各コンポーネントは、エレクトリカル・アイドルを解除した後、TS1オーダードセットの送信を開始する。各コンポーネントは、TS1またはTS2オーダードセットを連続で8個受信するまで、TS1オーダードセットを送信し続ける。
TS1またはTS2オーダードセットを連続で8個受信すると、各コンポーネントは、TS2オーダードセットの送信に切り替わる。各コンポーネントは、TS2オーダードセットを連続して8個受信し、かつ、1個のTS2オーダードセットを受信した後に16個のTS2オーダードセットの送信を終えるまで、TS2オーダードセットを送信し続ける。
このTS1オーダードセットおよびTS2オーダードセットにより、コンポーネントは、COMシンボル、リンクシンボル、レーンシンボル、トレーニング用データなどを交換する。
アイドルデータのパケットは、一方のコンポーネントのデータリンク層35またはトランザクション層34により、他方のコンポーネントのデータリンク層35およびトランザクション層34へ送信される。
なお、このパケットのデータは、すべて0でなければならない。
また、他方のコンポーネントも、TS2オーダードセットを送信し終えると、アイドルデータのパケットを、一方のコンポーネントへ所定回数送信する(ステップST26)。
具体的には、TS2オーダードセットを送信し終えた各コンポーネントは、アイドルデータの送信を開始する。各コンポーネントは、アイドルデータを連続して8個受信し、かつ、1個のアイドルデータを受信した後に16個のアイドルデータの送信を終えるまで、アイドルデータを送信し続ける。
これにより、2つのコンポーネント31,32の動作状態は、リカバリ状態を経由して、L1からL0に復旧される。
図10は、ホスト機器(2)とメモリカード1との動作状態をL0sからL0へ切り替える場合のシーケンスチャートの一例である。
L0sの休止状態では、物理層36のみが停止している。
L0sからL0への状態切替では、一方のコンポーネントの物理層36は、停止状態から復旧した後、所定のオーダードセット(FTSオーダードセットおよびSKPオーダードセット)を送信する(ステップST31)。
他方のコンポーネントの物理層36は、これらのオーダードセットを受信すると、休止状態から復旧する。
次に、ホスト機器としてのカメラ装置2がメモリカード1に書込みアクセス、または読出しアクセスする場合の、メモリカード1の動作を説明する。
書込みアクセスでは、カードインタフェース部11は、ホスト機器からデータを受信し、バッファ13にライトする。メモリコントローラ14は、バッファ13からデータをリードし、不揮発性メモリ15へライトする。
読出しアクセスでは、メモリコントローラ14は、不揮発性メモリ15からデータをリードし、バッファ13にライトする。カードインタフェース部11は、バッファ13からデータをリードし、ホスト機器へ送信する。
カードインタフェース部11は、書込みアクセス中または読出しアクセス中に、スタンバイ状態(たとえばL1)となる。
図11は、図1のバッファ13のメモリ空間の説明図である。
図11に示すように、書込みアクセス中の休止制御のために、バッファ13の総バッファ量(Buf)に対して、ライト上限閾値(Th_wfull)と、ライト下限閾値(Th_wemp)とが設定される。
ライト上限閾値およびライト下限閾値は、たとえば不揮発性メモリ15などに記憶されればよい。
カードインタフェース部11は、バッファ13内の未処理の書込みデータの量がこのライト上限閾値を超えると、スタンバイ状態(たとえばL1)に移行する。
カードインタフェース部11は、バッファ13内の未処理の書込みデータの量がこのライト下限閾値より少なくなると、スタンバイ状態から復旧する。
たとえば書込みアクセス中にバッファ13内の未処理の書込みデータの量がライト上限閾値を越えると、当該未処理データ量がライト下限閾値を下回るまで、カードインタフェース部11は、自らの動作状態をスタンバイ状態(たとえばL0s)に制御する。
ホスト機器がコントロールレジスタ12にライトコマンドを書込むと、メモリカード1は、不揮発性メモリ15への書込み処理を開始する。
カードインタフェース部11は、ホスト機器からパケット化された書込みデータを受信する(ステップST41)。
カードインタフェース部11は、受信した書込みデータをバッファ13に書込む。
すべての書込みデータの受信が完了すると、カードインタフェース部11は、自らの動作状態をL0状態からスタンバイ状態へ切り替える制御を実行する(ステップST43)。
たとえばL1状態へ切り替える場合、カードインタフェース部11は、ホスト機器のコンポーネントとの間で図7の通信処理を実行し、自らの動作状態をL0状態からL1状態へ切り替える。
また、L0s状態へ切り替える場合、カードインタフェース部11は、ホスト機器のコンポーネントとの間で図8の通信処理を実行し、自らの動作状態をL0状態からL0s状態へ切り替える。
なお、カードインタフェース部11は、L0に復帰した状態で書込み処理を終了してもよい。
具体的にはたとえば、カードインタフェース部11は、バッファ13の空き容量を読み込み、バッファ13の総バッファ量から空き容量を減算し、この減算後の容量がライト上限閾値以上であるか否かを判断する。
バッファ13内の未処理の書込みデータの量がライト上限閾値以上でない場合、カードインタフェース部11は、次の書込みデータの受信待ち状態となる(ステップST41)。
たとえばL0s状態へ切り替える場合、カードインタフェース部11は、ホスト機器のコンポーネントとの間で図8の通信処理を実行し、自らの動作状態をL0状態からL0s状態へ切り替える。
また、L1状態へ切り替える場合、カードインタフェース部11は、ホスト機器のコンポーネントとの間で図7の通信処理を実行し、自らの動作状態をL0状態からL1状態へ切り替える。
バッファ13内の未処理の書込みデータの量がライト下限閾値以下になると、カードインタフェース部11は、自らの動作状態をスタンバイ状態から通信可能なL0状態へ切り替える制御を実行する(ステップST48)。
具体的には、カードインタフェース部11は、ホスト機器のコンポーネントとの間で図9または図8の通信処理を実行し、自らの動作状態をスタンバイ状態からL0状態へ切り替える。
通信可能なL0状態へ復帰すると、カードインタフェース部11は、次の書込みデータの受信待ち状態となる。
図13の横軸は時間であり、縦軸はバッファ13内の未処理の書込みデータ量である。
これは、カードインタフェース部11とホスト機器との間の通信速度が、メモリコントローラ14が不揮発性メモリ15にデータを書込むためにバッファ13から書込みデータを読み出す速度より高いためである。
一般的にフラッシュメモリへのデータ書込み速度は高くない。
カードインタフェース部11がスタンバイ状態へ切り替わったとしても、メモリコントローラ14は、バッファ13内の書込みデータを不揮発性メモリ15へ書込んでいる。
このため、バッファ13内の未処理の書込みデータ量は、減り始める。
そして、時刻T3においてバッファ13内の未処理の書込みデータ量がライト下限閾値以下になると、カードインタフェース部11は、遷移レイテンシの後の時刻T4において、動作状態(L0)へ切り替わる。
動作状態へ切り替わったカードインタフェース部11は、データ転送レイテンシの後の時刻T5にホスト機器から書込みデータの受信を再開し、バッファ13に書込む。
これにより、バッファ13内の未処理の書込みデータ量は、再び上昇し始める。
そして、バッファ13内の未処理の書込みデータ量は、ライト上限閾値とライト下限閾値とを基準として増減する。
よって、バッファ13は、未処理の書込みデータにより満杯になることはない。
なお、ライト上限閾値を設けるのは、実装上の理由による。
たとえば、バッファ13が未処理の書込みデータで満杯となり、カードインターフェース部11からのデータ転送が中断されている間はスタンバイへ遷移できないなどの実装上の問題が生じる場合には、このライト上限閾値を設けるとよい。
これに対して、バッファ13が未処理の書込みデータにより満杯になることが実装上問題とならない場合には、ライト上限閾値を設けなくてもよい。
よって、ライト下限閾値による制御により、バッファ13内の未処理の書込みデータが無くなることがない。
また、スタンバイ状態からL0に復帰するまでの期間においてもバッファ13が空になることもない。
その結果、メモリコントローラ14は、1回の書込みアクセス中に連続的に且つ常に、バッファ13内の書込みデータを処理できる。
図14は、図1のバッファ13のメモリ空間の説明図である。
図14に示すように、読出しアクセス中の休止制御のために、バッファ13の総バッファ量(Buf)に対して、リード上限閾値(Th_rfull)と、リード下限閾値(Th_remp)とが設定される。
リード上限閾値およびリード下限閾値は、たとえば不揮発性メモリ15などに記憶されればよい。
カードインタフェース部11は、バッファ13内の未処理の読出しデータの量がこのリード下限閾値より少なくなると、スタンバイ状態(たとえばL1)に移行する。
カードインタフェース部11は、バッファ13内の未処理の読出しデータの量がこのリード上限閾値を超えると、スタンバイ状態から復旧する。
たとえば読出しアクセス中にバッファ13内の未処理の読出しデータの量がリード下限閾値を下回ると、当該未処理データ量がリードライト上限閾値を上回るまで、カードインタフェース部11は、自らの動作状態をスタンバイ状態(たとえばL0s)に制御する。
ホスト機器がコントロールレジスタ12にリードコマンドを書込むと、メモリカード1は、不揮発性メモリ15からのリード処理を開始する。
カードインタフェース部11は、メモリコントローラ14に読出しを指示する。
メモリコントローラ14は、不揮発性メモリ15からデータを読出してバッファ13に書込む。
この所定の値は、たとえばリード上限閾値より大きな値とすればよい。
この値の判断をすることにより、リード上限閾値より少ないデータしか残っていない場合において、カードインタフェース部11がリード上限閾値以上のデータが蓄積されることを待ってしまうデッドロック状態の発生を防止できる。
カードインタフェース部11は、ホスト機器のコンポーネントとの間で図7または図8の通信処理を実行し、自らの動作状態をスタンバイ状態へ切り替える。
カードインタフェース部11は、バッファ13内の未処理の読出しデータの量がリード上限閾値以上になったか否かを繰り返し判断する(ステップST53)。
バッファ13内の未処理の読出しデータの量がリード上限閾値以上になると、カードインタフェース部11は、自らの動作状態をスタンバイ状態から通信可能なL0状態へ切り替える制御を実行する(ステップST54)。
具体的には、カードインタフェース部11は、ホスト機器のコンポーネントとの間で図9または図8の通信処理を実行し、自らの動作状態をスタンバイ状態からL0状態へ切り替える。
また、カードインタフェース部11は、バッファ13を監視する。
カードインタフェース部11は、バッファ13内の未処理の読出しデータの量がリード下限閾値以下になったか否かを判断する(ステップST56)。
カードインタフェース部11は、バッファ13内の未処理の読出しデータの量がリード下限閾値以下になるまで、読出しデータをバッファ13から読み込み、ホスト機器へ送信する。
そして、転送残りデータ量が所定の値以上である場合、カードインタフェース部11は、ステップST12からST16までの処理を繰り返す。
カードインタフェース部11は、要求に係るすべてのデータを転送したか否かを判断する(ステップST58)。
カードインタフェース部11は、要求に係るすべてのデータを転送し終えるまで、読出しデータをバッファ13から読み込み、ホスト機器へ送信する。
また、要求に係るすべてのデータを転送し終えると、カードインタフェース部11は、リード処理を終了する。
なお、カードインタフェース部11は、スタンバイ状態に遷移した状態でリード処理を終了してもよい。
図16の横軸は時間であり、縦軸はバッファ13内の未処理の読出しデータ量である。
このため、バッファ13内の未処理の読出しデータ量は、読出し開始時T10の0から、リード上限閾値まで上昇する。
これは、リード処理開始時には、カードインタフェース部11は、ステップST12の処理によりスタンバイ状態となっているからである。
動作状態へ切り替わったカードインタフェース部11は、データ転送レイテンシの後の時刻T13に読出しデータの送信を開始する。
これにより、バッファ13内の未処理の読出しデータ量は、減少し始める。
そして、時刻T14においてバッファ13内の未処理の読出しデータ量がリード下限閾値以下になると、カードインタフェース部11は、遷移レイテンシの後に時刻T12において、動作状態(L0)からスタンバイ状態へ切り替わる。
そして、バッファ13内の未処理の読出しデータ量は、リード上限閾値とリード下限閾値とを基準として増減する。
バッファ13内の未処理の読出しデータは、無くなったり、バッファ13内を満杯にしたりすることはない。
なお、リード時にバッファ13が空になることが問題とならないシステムであれば、リード下限閾値を設けなくてもよい。
リード下限閾値による制御により、バッファ13内の未処理の読出しデータが無くなることがない。
よって、スタンバイ状態からL0に復帰するまでの期間においてもバッファ13が空になることもない。
その結果、カードインタフェース部11は、各回の通信可能期間において連続的に且つ常に、バッファ13内の読出しデータを処理する。
これにより、スタンバイ状態からL0に復帰してデータ送信を開始するまでのレイテンシが、メモリカード1のリード速度に与える影響を除去できる。
カードインタフェース部11は、当該書込みアクセス期間中に間欠的に動作する。
よって、本実施形態では、書込みアクセス期間中の消費電力を削減できる。
そして、カードインタフェース部11は、高速なシリアルデータ通信をするPCI Expressの通信方式で動作するため、消費電力の削減効果は大きい。
すなわち、本実施形態では、書込みアクセス期間中にカードインタフェース部11を間欠的に動作させているにもかかわらず、バッファ13内には常に未処理の書込みデータが残る。
このため、メモリコントローラ14は、書込みアクセス期間中に常に且つ連続的に書込み処理を継続する。
よって、本実施形態では、記憶装置に対する書込み処理において、実効的な書込み速度が低下しない。
ホスト機器としてのカメラ装置2は、メモリコントローラ14による不揮発性メモリ15への書込み処理により律せられる実効的な書込み速度により、書込みアクセスできる。
しかしながら、このようにタイマを使用した場合には、ホスト機器の書込みアクセス期間中にスタンバイ状態へ切り替えることが実質的に困難であるので、高い消費電力の削減効果が得られない。
また、ホスト機器の書込みアクセス期間中にスタンバイ状態へ切り替えることができるようにタイマの無通信期間を短くしたとしても、スタンバイ状態への遷移直後にバッファが空になり、メモリコントローラ14が次の書込みデータを待つ状態になる場合がある。
この場合には、その待ち時間の分だけ、メモリコントローラ14が書込みデータの処理を終えるまでの時間が長くなり、メモリコントローラ14の実効的な書込み速度が低下してしまう。
カードインタフェース部11は、当該読出しアクセス期間中に間欠的に動作する。
よって、本実施形態では、読出しアクセス期間中の消費電力を削減できる。
すなわち、本実施形態では、カードインタフェース部11が休止している期間においても、メモリコントローラ14は、継続的にバッファ13へ読出しデータを書込む。
よって、本実施形態は、メモリカード1からの読出し処理における実効的なリード速度が低下しない。
ホスト機器としてのカメラ装置2は、メモリコントローラ14によるバッファ13への読出し処理により律せられる実効的な読出し速度により、読出しアクセスできる。
また、本実施形態は、不揮発性メモリ15のリード・ライト速度の高低に関係なく、その速度に対して適応的に動作することができる。
すなわち、リード・ライト速度の遅い不揮発性メモリ15を使用した場合は、PCI Express I/Fのスタンバイ期間が適応的に長くなる。
また、リード・ライト速度の速い不揮発性メモリ15を使用した場合は、スタンバイ期間が短くなるように自動調整される。
このように本実施形態では、不揮発性メモリ15のリード・ライト速度に応じて適応的に消費電力を減らすことができる。
この他にも例えば、バッファ13の監視に基づくカードインタフェース部11の通信制御機能をカードインタフェース部11と別体とし、カードインタフェース部11は、ホスト機器と通信するコンポーネント機能のみを有するものであってもよい。
さらに他にも例えば、カードインタフェース部11は、図17に示すように、バッファ13を内蔵してもよい。
図17の場合、メモリコントローラ14は、カードインタフェース部11に接続され、カードインタフェース部11内のバッファ13にアクセスする。
また、バッファ13は、図18に示すように、メモリコントローラ14に内蔵されてもよい。
図18の場合、カードインタフェース部11は、メモリコントローラ14に接続され、メモリコントローラ14内のバッファ13にアクセスする。
この他にも例えば、記憶装置は、EEPROM、RAMなどのその他の半導体メモリを有しても、ハードディスクドライブなどを有してもよい。
この他にも例えば、メモリカード1は、ビデオカメラ装置、録音装置、パーソナルコンピュータ装置、携帯電話機、PDA、ナビゲーション装置などの電子機器で利用することができる。
この他にも例えば、メモリカード1とホスト機器との通信インタフェースには、USBインタフェース、無線通信インタフェースなどを利用してもよい。
Claims (6)
- バッテリで駆動される電子機器に着脱可能に装着され、前記電子機器との間でデータ送受信を行うときの電源管理を行う記憶装置であって、
データ通信が可能な通信実行部と、
画像データを記憶可能なメモリと、
書込みアクセス期間中は前記通信実行部から入力し前記メモリへ書き込む前の未処理の画像データを記憶し、読出しアクセス期間中は前記メモリから読み出して前記通信実行部へ出力する前の未処理の画像データを記憶するバッファと、
データ通信する場合に前記通信実行部を通信可能状態とし、データ通信しない場合に前記通信実行部を休止状態とする通信制御部と
を有し、
前記通信制御部は、
データ通信中に前記バッファの記憶容量の残量を監視し、該残量に基づいて得られるバッファ内の未処理の画像データ量が、記憶可能な最大と最小のそれぞれに達する前に、前記通信実行部の動作状態を通信可能状態と休止状態との間で切り替えることで電源管理を行う、
記憶装置。 - 前記通信実行部は、
書込みアクセス期間中の通信可能状態において受信した書込み画像データを前記バッファに書き込み、
前記通信制御部は、
前記バッファの記憶容量の最大側にライト上限閾値を設定し、
前記バッファの記憶容量の最小側にライト下限閾値を設定し、
前記バッファ内で前記メモリへの書き込みが未処理の書込み画像データ量が前記ライト上限閾値を超えると前記通信実行部を休止状態に切り替え、前記バッファ内で前記未処理の書込み画像データ量が前記ライト下限閾値を下回ると前記通信実行部を通信可能状態にする、
請求項1に記載の記憶装置。 - 前記通信実行部は、
読出しアクセス期間中の通信可能状態において前記メモリから前記バッファに読み出された読出し画像データを前記バッファから読み出して送信し、
前記通信制御部は、
前記バッファの記憶容量の最大側にリード上限閾値を設定し、
前記バッファの記憶容量の最小側にリード下限閾値を設定し、
前記バッファ内で前記通信実行部への読み出しが未処理の読出し画像データ量が前記リード上限閾値を超えると前記通信実行部を通信可能状態に切り替え、前記バッファ内で前記未処理の読出し画像データ量が前記リード下限閾値を下回ると前記通信実行部を休止状態にする、
請求項1または2に記載の記憶装置。 - 前記通信制御部は、
前記読出しアクセス期間の当初において、前記通信実行部を休止状態に制御する、
請求項1から3のいずれか一項に記載の記憶装置。 - 前記通信実行部は、
前記通信可能状態においてシリアルデータ信号を電子機器との間で送受し、
通信可能状態から休止状態へ切り替わる場合に電子機器と通信し、当該通信により許可された場合に通信可能状態から休止状態へ切り替わる、
請求項1から4のいずれか一項に記載の記憶装置。 - バッテリで駆動されてデータ処理を実行する電子機器と、
前記電子機器に着脱可能に装着され、前記電子機器のデータ処理に係るデータを記憶するとともに、前記電子機器との間でデータ送受信を行うときの電源管理を行う記憶装置と
を有し、
前記記憶装置は、
前記電子機器とデータ通信が可能な通信実行部と、
前記電子機器のデータ処理に係る画像データを記憶可能なメモリと、
書込みアクセス期間中は前記通信実行部から入力し前記メモリへ書き込む前の未処理の画像データを記憶し、読出しアクセス期間中は前記メモリから読み出して前記通信実行部へ出力する前の未処理の画像データを記憶するバッファと、
前記電子機器とデータ通信する場合に前記通信実行部を通信可能状態とし、データ通信しない場合に前記通信実行部を休止状態とする通信制御部と
を有し、
前記通信制御部は、
データ通信中に前記バッファの記憶容量の残量を監視し、該残量に基づいて得られるバッファ内の未処理の画像データ量が、記憶可能な最大と最小のそれぞれに達する前に、前記通信実行部の動作状態を通信可能状態と休止状態との間で切り替えることで電源管理を行う、
記憶システム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010040460A JP5454224B2 (ja) | 2010-02-25 | 2010-02-25 | 記憶装置および記憶システム |
US13/027,338 US8615626B2 (en) | 2010-02-25 | 2011-02-15 | Storage device and storage system |
CN2011100409611A CN102169363A (zh) | 2010-02-25 | 2011-02-18 | 存储设备和存储系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010040460A JP5454224B2 (ja) | 2010-02-25 | 2010-02-25 | 記憶装置および記憶システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011175555A JP2011175555A (ja) | 2011-09-08 |
JP5454224B2 true JP5454224B2 (ja) | 2014-03-26 |
Family
ID=44477445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010040460A Expired - Fee Related JP5454224B2 (ja) | 2010-02-25 | 2010-02-25 | 記憶装置および記憶システム |
Country Status (3)
Country | Link |
---|---|
US (1) | US8615626B2 (ja) |
JP (1) | JP5454224B2 (ja) |
CN (1) | CN102169363A (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012203463A (ja) * | 2011-03-23 | 2012-10-22 | Sharp Corp | 電子機器システム及びメモリ |
JP2012204880A (ja) * | 2011-03-23 | 2012-10-22 | Toshiba Corp | メモリ装置及びその制御方法 |
JP5539296B2 (ja) * | 2011-11-29 | 2014-07-02 | シャープ株式会社 | 電子機器システム及び記憶装置 |
JP5987319B2 (ja) * | 2012-01-06 | 2016-09-07 | 富士ゼロックス株式会社 | 送受信システム及びプログラム |
JP5982869B2 (ja) * | 2012-02-28 | 2016-08-31 | 富士ゼロックス株式会社 | 送受信システム及びプログラム |
US8856573B2 (en) * | 2012-06-27 | 2014-10-07 | Intel Corporation | Setting a number (N) of fast training sequences (FTS) automatically to an optimal value |
JP6232604B2 (ja) * | 2014-02-10 | 2017-11-22 | サイレックス・テクノロジー株式会社 | デバイスサーバとその制御方法 |
US9513820B1 (en) * | 2014-04-07 | 2016-12-06 | Pure Storage, Inc. | Dynamically controlling temporary compromise on data redundancy |
KR20160025292A (ko) * | 2014-08-27 | 2016-03-08 | 에스케이하이닉스 주식회사 | 데이터 저장 장치, 그것을 포함하는 데이터 처리 시스템 및 그것의 동작 방법 |
US9880601B2 (en) * | 2014-12-24 | 2018-01-30 | Intel Corporation | Method and apparatus to control a link power state |
JP6299617B2 (ja) * | 2015-01-27 | 2018-03-28 | コニカミノルタ株式会社 | 画像形成装置、画像形成装置の制御プログラム、コントローラー、およびコントローラーの制御プログラム |
RU2666334C2 (ru) * | 2015-06-30 | 2018-09-06 | Общество С Ограниченной Ответственностью "Яндекс" | Способ обработки данных |
JP2017033501A (ja) * | 2015-08-06 | 2017-02-09 | 株式会社東芝 | 記憶装置および制御方法 |
CN105205021B (zh) * | 2015-09-11 | 2018-02-13 | 华为技术有限公司 | 断开PCIe设备与主机之间的链接的方法和装置 |
US20170212711A1 (en) * | 2016-01-21 | 2017-07-27 | Kabushiki Kaisha Toshiba | Disk apparatus and control method |
JP6172355B2 (ja) * | 2016-07-21 | 2017-08-02 | 富士ゼロックス株式会社 | 送受信システム及びプログラム |
EP3352087B1 (en) | 2016-12-05 | 2020-09-16 | Huawei Technologies Co., Ltd. | Control method for data read/write command in nvme over fabric framework, device and system |
CN110413542B (zh) | 2016-12-05 | 2023-08-22 | 华为技术有限公司 | NVMe over Fabric架构中数据读写命令的控制方法、设备和系统 |
JP6799265B2 (ja) * | 2017-04-19 | 2020-12-16 | 富士通株式会社 | 演算処理装置、情報処理装置及び演算処理装置の制御方法 |
US10409493B1 (en) * | 2017-04-28 | 2019-09-10 | EMC IP Holding Company LLC | Online system checkpoint alert and handling |
US20180329855A1 (en) * | 2017-05-12 | 2018-11-15 | Intel Corporation | Alternate protocol negotiation in a high performance interconnect |
US10585588B2 (en) * | 2017-11-15 | 2020-03-10 | Microsoft Technology Licensing, Llc | Virtual storage free space management |
CN111782132B (zh) * | 2019-04-03 | 2025-02-21 | 北京沃东天骏信息技术有限公司 | 一种数据读写方法、装置及其存储介质 |
CN114003177B (zh) * | 2021-11-05 | 2024-02-06 | 青岛海信日立空调系统有限公司 | 一种空调器、控制系统和控制方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09231166A (ja) * | 1996-02-21 | 1997-09-05 | Yamaha Corp | データ転送装置 |
US6101575A (en) * | 1998-10-20 | 2000-08-08 | Hewlett-Packard Company | Tape drive data buffering |
JP2001135017A (ja) * | 1999-11-02 | 2001-05-18 | Nec Corp | データ記憶装置及びデータ記憶装置用インタフェース装置 |
US7188219B2 (en) * | 2004-01-30 | 2007-03-06 | Micron Technology, Inc. | Buffer control system and method for a memory system having outstanding read and write request buffers |
JP4594761B2 (ja) * | 2005-02-10 | 2010-12-08 | 株式会社東芝 | 情報処理装置およびその制御方法 |
WO2006120615A2 (en) * | 2005-05-10 | 2006-11-16 | Nxp B.V. | A system and method for transmitting data |
JP2007128603A (ja) * | 2005-11-04 | 2007-05-24 | Matsushita Electric Ind Co Ltd | メモリ回路 |
JP4135755B2 (ja) * | 2006-07-19 | 2008-08-20 | 株式会社日立製作所 | 情報記録再生装置及びデータ移動方法 |
US7984314B2 (en) | 2007-05-14 | 2011-07-19 | Intel Corporation | Power management of low power link states |
KR101329014B1 (ko) * | 2008-10-30 | 2013-11-12 | 삼성전자주식회사 | 휴대단말에서 스위칭 회로의 모드 제어 방법 및 장치 |
-
2010
- 2010-02-25 JP JP2010040460A patent/JP5454224B2/ja not_active Expired - Fee Related
-
2011
- 2011-02-15 US US13/027,338 patent/US8615626B2/en not_active Expired - Fee Related
- 2011-02-18 CN CN2011100409611A patent/CN102169363A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN102169363A (zh) | 2011-08-31 |
US20110208913A1 (en) | 2011-08-25 |
US8615626B2 (en) | 2013-12-24 |
JP2011175555A (ja) | 2011-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5454224B2 (ja) | 記憶装置および記憶システム | |
CN106970886B (zh) | 使用第二协议的扩展功能结构来控制第一协议的物理链路 | |
CN102646446B (zh) | 硬件动态高速缓存电源管理 | |
CN1551592B (zh) | 数据传输控制装置、电子设备及数据传输控制方法 | |
US10503239B2 (en) | Electronic device and power management method | |
JP2016158293A (ja) | 低電力物理ユニットのロード/ストア通信プロトコルへの提供 | |
US20100088454A1 (en) | Bridging device with power-saving function | |
JP5284140B2 (ja) | インタフェース制御装置 | |
JP5089415B2 (ja) | 周辺機器、その制御方法及びプログラム | |
CN114446363A (zh) | 存储装置和存储装置的操作方法 | |
US11436176B2 (en) | Semiconductor integrated circuit and operation method thereof | |
CN108008917B (zh) | 存储设备及控制其链接状态的方法 | |
EP3273326B1 (en) | Control apparatus and power control method for control apparatus | |
JP2010166565A (ja) | パラレルインターフェース方法、該方法を遂行するための装置 | |
KR102169033B1 (ko) | 전력 최적화 시스템과 이의 구동 방법 | |
JP5734034B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
CN101145079A (zh) | 数据传输控制系统、电子设备及程序 | |
US20060195638A1 (en) | Peripheral device | |
US10645166B2 (en) | Network interface card | |
KR20170073266A (ko) | 시리얼 인터페이스를 사용하는 저장 장치의 작동 방법과 이를 포함하는 데이터 처리 시스템의 작동 방법 | |
JP2011181011A (ja) | データ記憶装置およびデータ記憶装置の低消費電力制御方法 | |
JP2013101520A (ja) | 周辺機器及びその電源制御方法 | |
TWI484348B (zh) | 資料傳輸控制器、系統及方法 | |
EP3992803A2 (en) | Storage device and operating method of storage device | |
TW202009698A (zh) | 操作頻率調整方法及電腦程式產品及裝置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130225 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130827 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130903 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131028 |
|
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: 20131210 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131223 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5454224 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |