JP2018060321A - メモリ制御装置、情報処理装置、およびメモリ制御方法 - Google Patents

メモリ制御装置、情報処理装置、およびメモリ制御方法 Download PDF

Info

Publication number
JP2018060321A
JP2018060321A JP2016196534A JP2016196534A JP2018060321A JP 2018060321 A JP2018060321 A JP 2018060321A JP 2016196534 A JP2016196534 A JP 2016196534A JP 2016196534 A JP2016196534 A JP 2016196534A JP 2018060321 A JP2018060321 A JP 2018060321A
Authority
JP
Japan
Prior art keywords
memory
control unit
writing
reference value
performance
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
JP2016196534A
Other languages
English (en)
Other versions
JP6832116B2 (ja
Inventor
東作 棚田
Tosaku Tanada
東作 棚田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016196534A priority Critical patent/JP6832116B2/ja
Publication of JP2018060321A publication Critical patent/JP2018060321A/ja
Application granted granted Critical
Publication of JP6832116B2 publication Critical patent/JP6832116B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)

Abstract

【課題】記憶装置の状態によっては書き込み性能が変動することがある記憶装置を採用する情報機器において、情報機器全体として動作効率の変動、応答性の変動を低減する。【解決手段】制御部はプロセッサからメモリに書込まれるデータをバッファ回路に記憶するとともにバッファ回路に記憶されたデータ量が基準値に達するとそのバッファ回路のデータを前記メモリへ書き込む。そして、制御部はメモリへのデータの書込性能に応じて基準値を増減する。【選択図】図2

Description

本発明は、メモリ制御装置、情報処理装置、およびメモリ制御方法に関する。
近年、低価格の携帯情報機器、あるいは情報機器、例えば、スマートフォンやスマートウォッチが普及している。このような情報機器として、低容量・低性能のeMMC(Embedded Multi Media Card)を搭載したデバイスが普及している。しかし、eMMCは、残容量が少ないと記憶領域が断片化し、書き込み性能が劣化する状態に陥りやすい。書き込み性能が劣化すると、操作時に一定時間フリーズするなどの問題が発生してしまうこともある。eMMC以外にも、例えば、Secure Digital memory card(SDカード)等他の記憶装置においても、同様の問題が生じる可能性は否定できない。
通常、eMMCなどの記憶装置への書き込みは時間がかかるため、ライトキャッシュと呼ばれる一時記憶装置が採用されている。ライトキャッシュでは、高速なSDRAMなどが使用され、書き込まれるデータが一旦ライトキャッシュに記憶されると、書き込み要求元へ完了の応答が返される。そして、ライトキャッシュで記憶されたデータが予め決めておいたデータ量を超えるなどの条件により記憶装置への書き込みがまとめて実行される。ライトキャッシュを採用する記憶装置は、このような処理によって、情報機器の動作効率・応答性を改善している。
特開平7−28690号公報 特開2013−206307号公報 特開2014−59850号公報
ところで、eMMCなどのように、残容量等で例示される記憶装置の状態によって書き込み性能が変動する記憶装置の場合、記憶装置の状態を考慮しないで同じ条件で記憶装置への書き込みがなされると、記憶装置の状態によっては書き込みに長時間かかる場合がある。その結果として記憶装置を有する情報機器全体の動作効率、あるいは応答性が低下してしまう。このような動作効率あるいは応答性の低下が利用者の操作時に発生すると、その間情報機器がフリーズしたように見えてしまう問題があった。
1つの側面では、本発明の目的は、記憶装置の状態によっては書き込み性能が変動することがある記憶装置を採用する情報機器において、動作効率の変動、応答性の変動を抑制することにある。
一つの側面では、本発明は、メモリにアクセスする制御部を備えるメモリ制御装置によって例示される。この制御部はメモリに書込まれるデータをバッファ回路に記憶するとともに前記バッファ回路に記憶されたデータ量が基準値に達すると前記バッファ回路のデータを前記メモリへ書き込むことと、前記メモリへのデータの書込性能に応じて前記基準値を増減することとを実行する。
本メモリ制御装置によれば、記憶装置の状態によっては書き込み性能が変動することがある記憶装置を採用する情報機器において、動作効率の変動、応答性の変動を抑制できる。
携帯端末の構成を例示する図である。 メモリ制御部の構成を例示する図である。 制御部の機能構成を示すブロック図である。 実施形態1に係る処理を例示するフローチャートである。 実施形態2に係る処理を例示するフローチャートである。 実施形態3に係る機能構成を示すブロック図である。
以下、図面を参照して、一実施の形態に係るメモリ制御装置について説明する。以下の実施の形態の構成は例示であり、本メモリ制御装置は実施の形態の構成には限定されない。
[実施形態1]
図1に、本実施形態のメモリ制御部102を含む携帯端末1の構成を例示する。なお、メモリ制御部102は携帯端末1に限定されず、様々な情報機器、情報処理装置等に適用可能である。図1のように、携帯端末1は、CPU101と、メモリ制御部102と、記憶部103と、タッチパネル104と、ディスプレイ105と、バッテリ106と、無線通信部107と、アンテナ111と、オーディオ入出力部108と、スピーカー109と、マイクロフォン110を有する。
CPU101は、メモリ制御部102を介して記憶部103にアクセスする。CPU101は、記憶部103に実行可能に展開されたコンピュータプログラムにしたがって携帯端末1としての処理を実行する。CPU101はプロセッサの一例である。CPU101は制御部の一例でもある。
メモリ制御部102は、CPU101からの指令により、記憶部103にデータを書き込むとともに、記憶部103からデータを読み出す。メモリ制御部102は、メモリ制御装置の一例である。
記憶部103は、例えば、eMMC103AとSynchronous Dynamic Random Access Memory(SDRAM)103Bを含む。なお、記憶部103は、eMMC103Aを有するものに限定される訳ではない。例えば、記憶部103は、eMMC103Aの代わりに、SDカード規格の組み込み型のメモリカード、フラッシュメモリ等を備えるようにしてもよい。また、SDRAM103Bに代えて他のメモリ、例えば、Static RAM(SRAM)を設けてもよい。記憶部103のeMMC103A、あるいは、eMMC103Aに代わるSDカード等は、メモリの一例である。
タッチパネル104は、ディスプレイ105に搭載され、利用者によるディスプレイ上のグラフィックスオブジェクトへの操作を検知し、検知した操作をCPU101に通知する。ディスプレイ105は、CPU101の処理にしたがって生成されるグラフィックスオブジェクト、文字、画像その他の情報を表示する。
バッテリ106は、例えば二次電池であり、携帯端末1の各部に電力を供給する。オー
ディオ入出力部108は、CPU101の処理にしたがって生成されるディジタル音データから音を再生し、スピーカー109から出力する。また、オーディオ入出力部108は、マイクロフォン110から入力される音からディジタル音データを生成し、CPU101に供給する。
通信部107は、アンテナ111を通じて、無線通信網にアクセスし、無線通信網を介して授受される通信データを処理する。通信部107は、例えば、携帯電話網にアクセスする通信装置、無線Local Area Network(LAN)等にアクセスする通信装置である。
図2に、メモリ制御部102の構成を例示する。図2では、メモリ制御部102に接続されるCPU101および記憶部103も例示されている。図のように、メモリ制御部102は、制御部102Aと、Read Only Memory(ROM)102Bと、CPUインターフェース102Cと、メモリインターフェース102Dを有する。
制御部102Aは、CPU等を有し、ROM102Bに格納されたファームウェアにしたがって、メモリ制御部102の処理を実行する。制御部102Aは、制御部の一例である。ROM102Bはメモリ制御部102Aが実行するファームウェアを格納する。なお、メモリ制御部102内にRandom Access Memory(RAM)を設けてもよい。ROM102B内のファームウェアがRAMにロードされるようにしてもよい。また、ROM102Bがメモリ制御部102の外で携帯端末1内に設けられてもよい。例えば、携帯端末1の電源投入時に、CPU101がメモリ制御部102のRAMにファームウェアをロードするようにしてもよい。
CPUインターフェース102Cは、CPU101に接続されるバスとのインターフェースである。また、メモリインターフェース102Dは、記憶部103とのインターフェースである。メモリインターフェース102Dは、例えば、データバス、アドレスバス、および記憶部103との間の制御信号ラインを含む。図2では、1つのメモリインターフェース102DがeMMC103A、およびSDRAM103Bに接続されているが、eMMC103A、およびSDRAM103Bのそれぞれと接続される2つのメモリインターフェース102Dを設けてもよい。
図3は、メモリ制御部102内の制御部102Aの機能構成を示すブロック図である。図では、制御部102Aとともに、CPU101、eMMC103A、およびSDRAM103Bも例示されている。
図のように、制御部102Aは、例えば、メモリ入出力部12、メモリ性能監視部13、メモリ性能判定部14としてファームウェアを実行する。メモリ入出力部12、メモリ性能監視部13、メモリ性能判定部14は、ファームウェアに含まれるモジュールに対応する構成とすることもできる。
メモリ入出力部12は、CPU101からの要求にしたがって、eMMC103Aに対するデータの書き込みおよび読み出しを実行する。このとき、SDRAM103Bの一部は書込バッファであるライトキャッシュ17として使用される。SDRAM103Bのライトキャッシュ17はバッファ回路の一例である。メモリ入出力部12は、メモリ性能監視部13およびメモリ性能判定部14の処理にしたがって設定される閾値を用いて、ライトキャッシュ17に格納するデータ量を制御する。例えば、メモリ入出力部12は、eMMC103Aへの書き込み時にSDRAM103Bのライトキャッシュ17に一旦CPU101からの書込データを格納する。そして、ライトキャッシュ17に書き込み済みのデータ量が予め決めておいた閾値を超えた場合に、メモリ入出力部12は、ライトキャッシ
ュ17のデータをeMMCへ書き込む。したがって、閾値はライトキャッシュ17の記憶容量、すなわち、記憶データサイズを決定する。閾値は基準値の一例である。以下、各部の処理を説明する。
(1)メモリ性能監視部13により監視しているeMMC103Aの書き込み性能が特定の性能以下に劣化したとメモリ性能判定部14により判断された場合に、メモリ入出力部12はライトキャッシュ17の閾値を小さくする。
(2)メモリ性能監視部13により監視しているeMMC103Aの書き込み性能が特定の性能以上に改善したとメモリ性能判定部14により判断された場合に、メモリ入出力部12はライトキャッシュ17の閾値を大きくする。
(3)メモリ性能監視部13は、ライトキャッシュ17のデータをeMMC103Aへ書き込むときのスループットを測定する。ただし、メモリ性能監視部13は、eMMC103Aからのバックグラウンドオペレーション(BKOPS)の要求に含まれる情報(レベルという)によってメモリ性能の監視を行うようにしてもよい。BKOPSは、eMMC103Aが記憶領域の断片化等による性能劣化状態になった場合にeMMC103A自身が実行する記憶領域の整理処理である。
eMMC103Aは、記憶領域の断片化が所定の限度まで進んだと判断した場合、上位装置、例えば、メモリ制御部102、CPU101等に対して、BKOPSの要求を通知する。BKOPSの要求は、例えば、eMMC103Aへの書き込み要求に対する応答とともに上位装置に通知される。BKOPSの要求には、記憶領域の断片化の程度を示すレベルと呼ばれる情報が含まれている。上位装置は、BKOPSの要求を受け取ると、レベルに応じて、BKOPSの実行指令をeMMC103Aに通知する。メモリ性能監視部13は、BKOPSの要求に含まれるレベルを取得すればよい。
(4)メモリ性能判定部14は、ライトキャッシュ17からeMMC103Aへの書き込み時のスループット(以下、書き込みスループット)の良否を判断するための指標値を保持する。指標値の初期値は、eMMC103Aが初期化された状態に対応する、書き込みスループットの最良値に設定される。そして、メモリ性能判定部14は、メモリ性能監視部13から通知される書き込みスループットが、保持している書き込みスループットの指標値より所定以上(例えば、10%以上)悪化した場合に、書き込みスループットが特定の性能以下に劣化したと判断する。また、このときの書き込みスループットで指標値を更新する。
(5)一方、メモリ性能監視部13から通知される書き込みスループットが、保持している書き込みスループットの指標値より所定以上(例えば、10%以上)改善した場合に、書き込みスループットが特定の性能以上に改善したと判断する。また、このときの書き込みスループットで指標値を更新する。
(6)以上のようにして、書き込みスループットの改善または劣化により、メモリ入出力部12がライトキャッシュ17の閾値を変更すると、書込みスループットの指標値が更新される。
(7)前記メモリ性能判定部14は、メモリ性能監視部13から通知されたBKOPSレベルが2または3の場合に、特定の性能以下に劣化したと判断する。
なお、本実施の形態において、CPU101、あるいはメモリ制御部102の制御部102Aが有するCPUは、MPU(Microprocessor)とも呼ばれる。CPUは、単一のプロセッサに限定される訳ではなく、マルチプロセッサ構成であってもよい。また、単一の
ソケットで接続される単一のCPUがマルチコア構成を有していても良い。
上記メモリ入出力部12、メモリ性能監視部13、メモリ性能判定部14の各部の少なくとも一部の処理は、CPU以外のプロセッサ、例えば、Digital Signal Processor(DSP)、Graphics Processing Unit(GPU)、数値演算プロセッサ、ベクトルプロセッサ、画像処理プロセッサ等の専用プロセッサで行われても良い。また、上記各部の少なくとも一部の処理は、集積回路(IC)、その他のディジタル回路であっても良い。また、上記各部の少なくとも一部にアナログ回路が含まれても良い。集積回路は、LSI,Application Specific Integrated Circuit(ASIC),プログラマブルロジックデバイス(PLD)を
含む。PLDは、例えば、Field-Programmable Gate Array(FPGA)を含む。上記各部は、
プロセッサと集積回路との組み合わせであっても良い。組み合わせは、例えば、マイクロコントローラ(MCU),SoC(System-on-a-chip),システムLSI,チップセットなどと呼ばれる。したがって、本実施形態で、制御部という場合には、上記CPU、プロセッサ、ディジタル回路、アナログ回路、ASIC、PLD、FPGA、MCU、SoC等のいずれかまたはこれら2以上の組み合わせを含む。
図4は、メモリ制御部102の処理を例示するフローチャートである。図4の処理は、メモリ制御方法ということもできる。メモリ制御部102の制御部102Aは、図3に例示したメモリ入出力部12、メモリ性能監視部13、メモリ性能判定部14として、例えばROM102Bに格納されたファームウェアを実行する。図4で、S1からS4の処理は、メモリ入出力部12に対応する処理である。なお、図4の処理の開始前、S6、S7で参照される指標値は、最良値(例えば、eMMC13Aが初期化された状態であってスループットの最良値)に初期設定されている。
制御部102Aは、CPUインターフェース102Cを介してCPU101のメモリ書き込みが発生するか否かを監視する(S1)。メモリ書き込みが発生すると、制御部102Aは、書き込みデータをSDRAM103Bのライトキャッシュ17へ格納する(S2)。S2の処理は、メモリに書込まれるデータをバッファ回路に記憶することの一例である。さらに、制御部102Aは、ライトキャッシュ17に格納されたデータ量が閾値以上か否かを判定する(S3)。そして、ライトキャッシュ17に格納されたデータ量が閾値以上でない場合、制御部102Aは、処理をS1に戻す。一方、ライトキャッシュ17に格納されたデータ量が閾値以上の場合、制御部102Aは、ライトキャッシュ17のデータをeMMC103Aに書き込む(S4)。S3の判定で、YESの場合は、バッファ回路に記憶されたデータの量が基準値に達することの一例である。S4の処理は、バッファ回路に記憶されたデータの量が基準値に達するとバッファ回路に記憶されたデータをメモリへ書き込むことの一例である。
図4で、S5の処理は、メモリ性能監視部13に対応する処理である。また、S6からS10の処理は、メモリ性能判定部14に対応する処理である。
S4でのeMMC103Aへの書き込み時、制御部102Aは、書き込みスループットを測定する(S5)。S5の処理は、バッファ回路のデータをメモリへ書き込むときに書込性能を測定することの一例でもある。
次に、制御部102Aは、今回測定されたスループットが指標値から所定値以上(例えば、10%以上)劣化した値であるか否かを判定する(S6)。今回測定されたスループットが指標値から所定値以上劣化した値である場合に、制御部102Aは、ライトキャッシュ17の閾値を下げる(S9)。そして、制御部102Aは、今回測定されたスループットで指標値を更新する(S10)。S6でYESの場合は、書込性能が指標値から所定以上劣化したときの一例である。S9およびS10の処理は、基準値を減少させるとともに劣化した書込性能で指標値を更新することの一例である。S10の処理は、書込性能の
指標値を記憶することの一例でもある。S9の処理は、書込性能が所定限度を超えて劣化した場合に基準値を減少させることの一例でもある。
一方、S6の判定で、今回測定されたスループットが指標値から所定値以上劣化した値でない場合、制御部102Aは、今回測定されたスループットが指標値から所定値以上(例えば、10%以上)改善した値であるか否かを判定する(S7)。今回測定されたスループットが指標値から所定値以上改善した値である場合に、制御部102Aは、ライトキャッシュ17の閾値を上げる(S8)。そして、制御部102Aは、今回測定されたスループットで指標値を更新する(S10)。そして、制御部102Aは、処理をS1に戻す。S7でYESの場合は、書込性能が指標値から所定以上改善したときの一例である。S8およびS10の処理は、基準値を増加させるとともに改善した書込性能で指標値を更新することの一例である。S6からS9の処理は、書込性能に応じて基準値を増減することの一例である。S8の処理は、書込性能が所定限度を超えて改善した場合に基準値を増加させることの一例である。S6、S7の判定は、指標値からの相対変化値によって、スループットの劣化あるいは改善を判断する処理といえる。
以上述べたように、本実施の形態のメモリ制御部102は、eMMC103Aへの書き込み時、書き込みのスループットに応じて、ライトキャッシュ17の容量、つまり、閾値を増減する。したがって、メモリ制御部102は、eMMC103Aへの書き込みスループットに応じて、ライトキャッシュ17の容量を適正値に設定できる。
書き込みスループットが劣化し、eMMC103Aへの書き込みに時間を要する場合には、メモリ制御部102は、ライトキャッシュ17の容量を小さくし、ライトキャッシュ17からeMMC103Aへの書き込み時間が増大しないように調整する。その結果、ライトキャッシュ17からeMMC103Aへの書き込みが発生したときに、利用者に操作性の低化等を感じる可能性が抑制される。一方、書き込みスループットが改善し、eMMC103Aへの書き込みにそれほど時間を要しない場合には、メモリ制御部102は、ライトキャッシュ17の容量を大きくし、極力ライトキャッシュ17を活用する。
本実施の形態のメモリ制御部102は、書き込みスループットが指標値から所定値以上劣化したときに、ライトキャッシュ17の閾値を下げ、かつ、現在の書き込みスループットで指標値を更新する。また、本実施の形態のメモリ制御部102は、書き込みスループットが指標値から所定値以上改善したときに、ライトキャッシュ17の閾値を上げ、かつ、現在の書き込みスループットで指標値を更新する。したがって、メモリ制御部102は、指標値にしたがって書き込みスループットの良否を相対的に判定できるとともに、指標値の変動を抑制し、安定した判定ができる。
また、S5のように、メモリ制御部102は、ライトキャッシュ17からeMMC103Aへの書き込み時にスループットを測定する。したがって、メモリ制御部102は、実際のeMMC103Aへの書き込みのスループットにしたがって、ライトキャッシュ17の閾値を設定できる。
[実施形態2]
図5は、メモリ制御部102の実施形態2に係る処理を例示するフローチャートである。BKOPSは、eMMC103Aから制御部102Aに非同期に通知される。例えば、eMMC103Aは、データの書き込み処理を完了したときの応答データとして、BKOPSの要求を通知する。そこで、メモリ制御部102の制御部102Aは、BKOPSを要求する通知を受けたときに、非同期にライトキャッシュ17の閾値を変更するようにしてもよい。図5は、非同期にライトキャッシュ17の閾値を変更する処理例である。
この処理では、制御部102Aは、eMMC103AからのBKOPSの要求の有無を判定する(S21)。eMMC103AからのBKOPSの要求は、例えば、制御部102Aのレジスタに入力される。eMMC103AからのBKOPSの要求を受けると、制御部102Aは、BKOPSの要求からBKOPSのレベルを取得する(S22)。BKOPSのレベルは、eMMC103Aの規格にしたがって定められている。例えば、レベル0は、最高レベル、つまり、eMMC103Aに不連続領域がない状態である。また、レベル3は、最悪レベルである。
次に、制御部102Aは、BKOPSのレベルが特定値以上であるか否かを判定する(S23)。S23の判定は、絶対値によって、スループットの劣化あるいは改善を判断する処理といえる。BKOPSのレベルが特定値未満の場合、制御部102Aは、ライトキャッシュ17の閾値を上げる(S24)。一方、BKOPSのレベルが特定値以上である場合、制御部102Aは、ライトキャッシュ17の閾値を下げる(S25)。ここで、特定値は、BKOPSのレベルで、値2、あるいは値3等であり、事前設定された値である。
S23−S25の処理は、書込性能に応じて前記基準値を増減することの一例である。S24の処理は、書込性能が所定限度を超えて改善した場合に基準値を増加させることの一例でもある。S25の処理は、書込性能が所定限度を超えて劣化した場合に基準値を減少させることの一例でもある。S23でYESの場合は、BKOPSのレベルが特定値以上であるので、書込性能が所定値以下の範囲に劣化したときの一例である。S23でNOの場合は、BKOPSのレベルが特定値未満であるので、書込性能が所定値を超える範囲に改善したときの一例である。S24の処理は、基準値を増加させることの一例である。S25の処理は、基準値を減少させることの一例である。
そして、制御部102Aは、ライトキャッシュ17に格納されたデータ量が閾値以上か否かを判定する(S26)。ライトキャッシュ17に格納されたデータ量が閾値以上の場合、制御部102Aは、ライトキャッシュ17のデータをeMMCに書き込む(S27)。その後、制御部102Aは、処理をS21に戻す。
以上述べたように、本実施形態では、メモリ制御部102の制御部102Aは、書き込みスループットを測定する代わりに、BKOPSのレベルをeMMC103Aから取得できる。また、制御部102Aは、BKOPSのレベルにしたがって、書込性能が所定値以下の範囲に劣化したか、所定値を超える範囲に改善したかを判定できる。すなわち、制御部102Aは、いわば、絶対値で書き込みスループットを判定できる。
なお、実施形態2では、メモリ制御部102の制御部102Aは、BKOPSのレベルを基に、キャッシュ17の閾値を増減した。しかし、このような処理に代えて、実施形態1と同様、制御部102Aが、eMMC103Aへの書き込み時に、書き込みスループットを測定してもよい。そして、制御部102Aは、測定した書き込みスループットが所定値以下の範囲か、所定値を超える範囲かに応じて、キャッシュ17の閾値を増減してもよい。このような処理は、スループットの絶対値によって、スループットの劣化あるいは改善を判断する処理といえる。
[実施形態3]
上記実施形態1および実施形態2では、CPU101と記憶部103との間に介在するメモリ制御部102がライトキャッシュ17の閾値、すなわち、容量を更新し、ライトキャッシュに格納されたデータをeMMC103Aに書き込む処理を例示した。実施形態3では、上記実施形態1、2におけるメモリ制御部102に代わって、CPU101がライトキャッシュ17の閾値を更新するとともに、ライトキャッシュ17に格納されたデータ
をeMMC103Aに書き込む処理を例示する。CPU101がライトキャッシュ17の閾値を更新するとともに、ライトキャッシュ17に格納されたデータをeMMC103Aに書き込むこと以外については、実施形態3の構成要素および作用は実施形態1、2と同様である。そこで、実施形態3の構成要素のうち、実施形態1、2と同一の構成要素については、実施形態1、2と同一の符号を付してその説明を省略する。なお、実施形態3においては、CPU101は制御部の一例である。CPU101はメモリ制御装置の一例でもある。携帯端末1は情報処理装置の一例である。
図6は、実施形態3に係る携帯端末1の構成を例示する図である。図6では、ハードウェアのCPU101が提供する処理部であるメモリ入出力部12A、メモリ性能監視部13A、メモリ性能判定部14Cの他、ハードウェアとしてメモリ制御部102、および記憶部103が例示されている。
実施形態3のメモリ制御部102は、CPUメモリインターフェース102Eを有するが制御部102Aを有していない。つまり、実施形態3のメモリ制御部102は、CPUから記憶部103へのアクセス経路を提供するインターフェースである。なお、実施形態3の記憶部103の構成は、実施形態1、2と同一であるので、その説明を省略する。
実施形態3では、CPU101が記憶部103に実行可能に展開されたコンピュータプログラムにしたがって、メモリ入出力部12A、メモリ性能監視部13A、メモリ性能判定部14Aとして処理を実行する。メモリ入出力部12A、メモリ性能監視部13A、メモリ性能判定部14Aに対応するプログラムは、例えば、CPU101が実行するオペレーティングシステム(OS)のモジュールに含まれる。CPU101は、これらのモジュールを含むOSを例えば、eMMC103Aに保持している。なお、CPU101は、これらのモジュールを含むOSをeMMC103A以外のROM等に保持してもよい。電源投入によって、CPU101は、eMMC103A、あるいは、ROMからOSをSDRAM103Bにロードし、携帯端末1としての機能を提供する。
実施形態3のメモリ入出力部12A、メモリ性能監視部13A、メモリ性能判定部14Aの処理は、図3のメモリ入出力部12、メモリ性能監視部13、メモリ性能判定部14と同様である。すなわち、CPU101は、図2のメモリ制御部102内の制御部102Aと同様、図4の処理、あるいは、図5の処理を実行する。
すなわち、図4で、S1からS4の処理は、メモリ入出力部12Aに対応する処理である。また、S5の処理は、メモリ性能監視部13Aに対応する処理である。また、S6からS10の処理は、メモリ性能判定部14Aに対応する処理である。
また、図5は、CPU101がBKOPS要求を受けたときに、非同期にライトキャッシュ17の閾値を変更する処理例ということができる。CPU101は、eMMC103Aへの書き込み要求に対する応答とともにBKOPSの要求を非同期に通知される。図5で、S21、S22は、メモリ性能監視部13Aに対応する処理である。S23からS25は、メモリ性能判定部14Aに対応する処理である。さらに、S26からS27は、メモリ入出力部12Aに対応する処理である。
以上述べたように、図2に例示したメモリ制御部102の制御部102Aがない場合であっても、CPU101は、図4あるいは図5の処理を実行することで、eMMC103Aへの書き込み時、書き込みスループットに応じて、ライトキャッシュ17の容量、つまり、閾値を増減する。したがって、書き込みスループットが劣化し、eMMC103Aへの書き込みに時間を要する場合には、CPU101は、ライトキャッシュ17の容量を小さくし、ライトキャッシュ17からeMMC103Aへの書き込み時間が増大しないよう
に調整する。その結果、ライトキャッシュ17からeMMC103Aへの書き込みが発生したときに、利用者に操作性の劣化等を感じる可能性が抑制される。
なお、以上の実施形態1から3の構成は、携帯端末1に限定される訳ではなく、eMMC103A等のように、残容量等に例示されるeMMC103Aの状態によって書き込み性能が変動するメモリを有する情報機器であれば、どのような情報機器にも適用可能である。
12、12A メモリ入出力部
13、13A メモリ性能監視部
14、14A メモリ性能判定部
101 CPU
102 メモリ制御部
102A 制御部
102B ROM
103 記憶部
103A eMMC
103B SDRAM

Claims (8)

  1. メモリにアクセスする制御部を備え、
    前記制御部は、
    前記メモリに書込まれるデータをバッファ回路に記憶するとともに前記バッファ回路に記憶されたデータの量が基準値に達すると前記バッファ回路に記憶されたデータを前記メモリへ書き込むことと、
    前記メモリへのデータの書込性能に応じて前記基準値を増減することと、を実行するメモリ制御装置。
  2. 前記基準値を増減することは、前記書込性能が所定限度を超えて劣化した場合に前記基準値を減少させることと、
    前記書込性能が所定限度を超えて改善した場合に前記基準値を増加させることと、を含む請求項1に記載のメモリ制御装置。
  3. 前記基準値を増減することは、前記書込性能が所定値以下の範囲に劣化したときに前記基準値を減少させることと、
    前記書込性能が所定値を超える範囲に改善したときに前記基準値を増加させることと、を含む請求項1または2に記載のメモリ制御装置。
  4. 前記基準値を増減することは、前記書込性能の指標値を記憶することと、
    前記書込性能が前記指標値から所定以上劣化したときに前記基準値を減少させるとともに前記劣化した書込性能で指標値を更新することと、
    前記書込性能が前記指標値から所定以上改善したときに前記基準値を増加させるとともに前記改善した書込性能で指標値を更新することと、
    を含む請求項1から3のいずれか1項に記載のメモリ制御装置。
  5. 前記制御部は、前記バッファ回路のデータを前記メモリへ書き込むときに前記書込性能を測定する請求項1から4のいずれか1項に記載のメモリ制御装置。
  6. 前記制御部は、前記メモリから前記書込性能を取得する請求項1から5のいずれか1項に記載のメモリ制御装置。
  7. プロセッサと、
    メモリと、を備え、
    前記プロセッサは、
    前記プロセッサからメモリに書込まれるデータをバッファ回路に記憶するとともに前記バッファ回路に記憶されたデータの量が基準値に達すると前記バッファ回路に記憶されたデータを前記メモリへ書き込むことと、
    前記メモリへのデータの書込性能に応じて前記基準値を増減することと、を実行する情報処理装置。
  8. 制御部が、
    前記プロセッサからメモリに書込まれるデータをバッファ回路に記憶するとともに前記バッファ回路に記憶されたデータの量が基準値に達すると前記バッファ回路に記憶されたデータを前記メモリへ書き込むことと、
    前記メモリへのデータの書込性能に応じて前記基準値を増減することと、を実行するメモリ制御方法。
JP2016196534A 2016-10-04 2016-10-04 メモリ制御装置、情報処理装置、およびメモリ制御方法 Active JP6832116B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016196534A JP6832116B2 (ja) 2016-10-04 2016-10-04 メモリ制御装置、情報処理装置、およびメモリ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016196534A JP6832116B2 (ja) 2016-10-04 2016-10-04 メモリ制御装置、情報処理装置、およびメモリ制御方法

Publications (2)

Publication Number Publication Date
JP2018060321A true JP2018060321A (ja) 2018-04-12
JP6832116B2 JP6832116B2 (ja) 2021-02-24

Family

ID=61908507

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016196534A Active JP6832116B2 (ja) 2016-10-04 2016-10-04 メモリ制御装置、情報処理装置、およびメモリ制御方法

Country Status (1)

Country Link
JP (1) JP6832116B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7293458B1 (ja) 2021-12-21 2023-06-19 ウェスタン デジタル テクノロジーズ インコーポレーテッド ストレージフラグメンテーションを定量化し性能低下を予測するための記憶システム及び方法
US11809747B2 (en) 2021-12-21 2023-11-07 Western Digital Technologies, Inc. Storage system and method for optimizing write-amplification factor, endurance, and latency during a defragmentation operation
US11847343B2 (en) 2021-12-22 2023-12-19 Western Digital Technologies, Inc. Storage system and method for non-blocking coherent re-writes

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0728690A (ja) * 1993-07-14 1995-01-31 Hitachi Ltd フラッシュメモリシステム
WO2005015406A1 (ja) * 2003-08-06 2005-02-17 Matsushita Electric Industrial Co., Ltd. 半導体メモリカード、アクセス装置及びアクセス方法
JP2007524917A (ja) * 2003-06-30 2007-08-30 レイセオン・カンパニー メモリ装置との間のデータ流に選択的に影響を与えるためのシステムおよび方法
JP2014229131A (ja) * 2013-05-23 2014-12-08 株式会社日立エルジーデータストレージ データ記録再生システム及びデータ記録制御方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0728690A (ja) * 1993-07-14 1995-01-31 Hitachi Ltd フラッシュメモリシステム
JP2007524917A (ja) * 2003-06-30 2007-08-30 レイセオン・カンパニー メモリ装置との間のデータ流に選択的に影響を与えるためのシステムおよび方法
WO2005015406A1 (ja) * 2003-08-06 2005-02-17 Matsushita Electric Industrial Co., Ltd. 半導体メモリカード、アクセス装置及びアクセス方法
JP2014229131A (ja) * 2013-05-23 2014-12-08 株式会社日立エルジーデータストレージ データ記録再生システム及びデータ記録制御方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7293458B1 (ja) 2021-12-21 2023-06-19 ウェスタン デジタル テクノロジーズ インコーポレーテッド ストレージフラグメンテーションを定量化し性能低下を予測するための記憶システム及び方法
JP2023092425A (ja) * 2021-12-21 2023-07-03 ウェスタン デジタル テクノロジーズ インコーポレーテッド ストレージフラグメンテーションを定量化し性能低下を予測するための記憶システム及び方法
US11809736B2 (en) 2021-12-21 2023-11-07 Western Digital Technologies, Inc. Storage system and method for quantifying storage fragmentation and predicting performance drop
US11809747B2 (en) 2021-12-21 2023-11-07 Western Digital Technologies, Inc. Storage system and method for optimizing write-amplification factor, endurance, and latency during a defragmentation operation
US11847343B2 (en) 2021-12-22 2023-12-19 Western Digital Technologies, Inc. Storage system and method for non-blocking coherent re-writes

Also Published As

Publication number Publication date
JP6832116B2 (ja) 2021-02-24

Similar Documents

Publication Publication Date Title
TWI578225B (zh) 移動裝置和使用交換其的資料管理方法
KR101524961B1 (ko) 플랫폼의 재개 시간을 개선하기 위한 방법 및 장치
JP5638110B2 (ja) 熱制御装置及び方法
CN107851042B (zh) 使用命令流提示来表征gpu工作负载和电力管理
US9829961B2 (en) Electronic device
US7779191B2 (en) Platform-based idle-time processing
US9063727B2 (en) Performing cross-domain thermal control in a processor
US20130318379A1 (en) Scheduling tasks among processor cores
JP6832116B2 (ja) メモリ制御装置、情報処理装置、およびメモリ制御方法
KR20180048993A (ko) 메모리 상태 천이 타이머들을 동적으로 조정하기 위한 시스템들 및 방법들
US9734013B2 (en) System and method for providing operating system independent error control in a computing device
WO2015199909A1 (en) Accelerating boot time zeroing of memory based on non-volatile memory (nvm) technology
CN108351818B (zh) 用于在存储器中实现纠错码的系统和方法
US20150162069A1 (en) Information processing terminal and power control method
US20160179668A1 (en) Computing system with reduced data exchange overhead and related data exchange method thereof
US20210089459A1 (en) Storage control apparatus, processing apparatus, computer system, and storage control method
KR101531790B1 (ko) 모바일 디바이스에서의 임계 배터리 상태의 표시
US20110185142A1 (en) Information processing apparatus and data saving acceleration method of the information processing apparatus
US9529404B2 (en) Information processing apparatus and method of controlling information processing apparatus
US20150049571A1 (en) Memory control device, control method of memory control device, information processing apparatus
US9354812B1 (en) Dynamic memory utilization in a system on a chip
KR102623137B1 (ko) 컴퓨팅 디바이스에서 동적 버퍼 사이징을 위한 시스템 및 방법
US11822418B2 (en) System and method for power consumption management
WO2024125026A1 (zh) 天线调控方法、装置、存储介质及电子设备
JP2013143075A (ja) 半導体装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20180725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181019

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200603

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200817

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201201

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20201201

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20201209

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20201215

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210201

R150 Certificate of patent or registration of utility model

Ref document number: 6832116

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533