JP6769789B2 - メモリ制御装置、電子機器、メモリの制御方法、および制御プログラム - Google Patents

メモリ制御装置、電子機器、メモリの制御方法、および制御プログラム Download PDF

Info

Publication number
JP6769789B2
JP6769789B2 JP2016174717A JP2016174717A JP6769789B2 JP 6769789 B2 JP6769789 B2 JP 6769789B2 JP 2016174717 A JP2016174717 A JP 2016174717A JP 2016174717 A JP2016174717 A JP 2016174717A JP 6769789 B2 JP6769789 B2 JP 6769789B2
Authority
JP
Japan
Prior art keywords
memory
state
hibernate
ufs
cpu
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
Application number
JP2016174717A
Other languages
English (en)
Other versions
JP2018041257A (ja
Inventor
尚志 黒田
尚志 黒田
弘樹 田邊
弘樹 田邊
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2016174717A priority Critical patent/JP6769789B2/ja
Publication of JP2018041257A publication Critical patent/JP2018041257A/ja
Application granted granted Critical
Publication of JP6769789B2 publication Critical patent/JP6769789B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Memory System (AREA)

Description

本発明はUFS(Universal Flash Storage)メモリを制御するメモリ制御装置、電子機器、メモリの制御方法、および制御プログラムに関するものである。
従来のメモリ制御装置として、例えば、特許文献1に開示されている技術が挙げられる。特許文献1には、比較的低い電圧で駆動可能な回路に小さい駆動電圧を印加し、比較的高い電圧で駆動させることが好ましい回路に高い駆動電圧を印加する技術が記載されている。これにより、印加電圧の低減に起因した動作特性の劣化や所定の動作特性を維持するための素子数の増加および回路構成の変更が生じること無く、消費電力を低減させることができる。
また、特許文献2には、管理部が記憶部を参照してホストデバイスがバックグランド処理を行うことを許可しているか否かを判定し、許可されていない場合、記憶部に設定されたバックグランド処理の情報と優先順位とを参照して、メモリの未使用のブロックの数と、必要とされているバックグランド処理の優先順位および数とに基づいてバックグランド処理の重要度を記憶部に設定する技術が記載されている。これにより、効率良くバックグランド処理を行うことができる。また、管理部は、緊急性のないバックグランド処理等を判断できるので、ホストデバイスのコマンドを優先することができ、ホストデバイスの消費電力を抑制することができる。
特開2014−49172号公報(2014年3月17日公開) 特開2013−69069号公報(2013年4月18日公開)
特許文献1および2の技術においては、UFSメモリがidle時の低消費電力モードへの遷移方法については想定されていないので、下記のUFSメモリに特有の問題を解決することができない。このUFSメモリに特有の問題について、以下に説明する。
UFSメモリにおいては、データ転送がないときに、Hibernate状態と呼ばれる状態に遷移する場合がある。Hibernate状態は、データ転送時に遷移可能な各種状態と比較して、低消費電力であるという利点がある。
一方、Hibernate状態は、データ転送時に遷移可能な各種状態と比較して、メモリアクセス発生時にメモリアクセス可能になるまでの復帰時間が大きいという欠点がある。そして、当該欠点に起因して、UFSメモリがHibernate状態に遷移することが、処理の低速化を招いたり、トータルの消費電力の増大を招いたりする虞がある。当該ケースの一例として、高速なメモリ応答性が求められるケース、または高速処理中にメモリアクセスが発生するケースが挙げられる。
本発明は、前記の問題点に鑑みてなされたものであり、その目的は、UFSメモリを使用したシステムの低消費電力化と処理速度の高速化を実現することにある。
上記の課題を解決するために、本発明の一態様に係るメモリ制御装置は、UFSメモリを制御するためのCPUの動作周波数および前記CPUのコア数のうち少なくとも一方を参照して、前記UFSメモリにおける低消費電力状態への移行を禁止させるメモリ管理部を備えており、前記低消費電力状態は、前記UFSメモリにおいてデータ転送が行われる通常状態と比較して、消費電力が低くかつ前記UFSメモリにおけるidle状態から活動状態への復帰時間が長いことを特徴とする。
本発明の一態様によれば、UFSメモリを使用したシステムの低消費電力化と処理速度の高速化を実現するという効果を奏する。
本発明の実施形態1に係るメモリデバイスの構成を示すブロック図である。 本発明の実施形態1に係るHibernate管理部の構成を示すブロック図である。 (a)は本発明のUFSメモリの消費電力とメモリデバイス全体の消費電力とを示す模式図であり、(b)は従来のUFSメモリの消費電力とメモリデバイス全体の消費電力とを示す模式図である。 Hibernate状態への移行を禁止するときにおける、図2に示すHibernate管理部の動作を示すフローチャートである。 Hibernate状態への移行を許可するときにおける、図2に示すHibernate管理部の動作を示すフローチャートである。 UFSコントローラの動作を示すフローチャートである。 本発明の実施形態2に係るHibernate管理部の構成を示すブロック図である。 図7に示すHibernate管理部の動作を示すフローチャートである。
〔実施形態1〕
以下、本発明の実施の形態について、図1〜図6に基づいて説明すれば、以下のとおりである。
携帯電話機のboot memoryには、eMMC(embedded Multi Media Card)が採用されてきた。最近では、boot memoryへのアクセスを高速化させるため、
ハイエンド機種のboot memoryについては、eMMCからUFSメモリへの置
き換えが実施されている。UFSメモリは、パフォーマンス(処理速度)に関しては、eMMCより有利であるが、idle時の電流がeMMCと比較して多いという問題がある。上記の問題を克服するために、UFSメモリでは、低電力状態になるHibernate状態(低消費電力状態)という状態を作り、idle中はHibernate状態にすることで、idle中の低消費電流化を図っている。
本発明の一実施形態において、メモリデバイス1(メモリ制御装置)は、図1に示すように、APP・CPU部2、UFSコントローラ3、Hibernate管理部4(メモリ管理部)、モデムDSP(Digital Signal Processor)5、AudioDSP6、およびDMA(Direct Memory Access)コントローラ7を備えている。図1は、本発明の実施形態1に係るメモリデバイス1の構成を示すブロック図である。APP・CPU部2、UFSコントローラ3、Hibernate管理部4、モデムDSP5、AudioDSP6、およびDMAコントローラ7は、例えばバスを介してそれぞれ互いに接続されている。メモリデバイス1は、後述するCPU群21のコア数(動作しているCPUの個数)と、CPU群21を構成する各CPUのうち動作しているCPUの動作周波数に応じて、UFSメモリ8のidle時の状態を制御する。また、メモリデバイス1は、電子機器に備えられていてもよい。
APP・CPU部2は、CPU群21および割り込みコントローラ22を備えている。CPU群21は8個のCPU(central processing unit)から構成されており、8個の
CPUそれぞれはメモリデバイス1全体を制御するOS(operating system)を管理する。割り込みコントローラ22は各ブロック(UFSコントローラ3、Hibernate管理部4、モデムDSP5、AudioDSP6、およびDMAコントローラ7等)からの割り込みを受けて、割り込みを受けたことをCPU群21に通知する。モデムDSP5、AudioDSP6、およびDMAコントローラ7は、UFSメモリ8にアクセスするバスマスタとしてメモリデバイス1に実装される。
UFSコントローラ3は、バスマスタ(モデムDSP5、AudioDSP6、およびDMAコントローラ7)からUFSメモリ8へのアクセス要求を管理し、UFSメモリ8の制御を行う。また、UFSコントローラ3には、UFSメモリ8を接続する接続部があり、この接続部によってUFSコントローラ3とメモリデバイス1外部のUFSメモリ8とが接続される。
UFSメモリ8におけるidle状態として、FastAuto状態(通常状態)、SlowAuto状態(通常状態)、Hibernate状態の3つの状態がある。Hibernate状態は、UFSメモリ8において、eMMCと比較してidle状態のときの電流が多いという課題に対する対応手段として使用される。FastAuto状態およびSlowAuto状態では、idle状態中の消費電流は大きいが、idle状態からActive状態(活動状態)への復帰時間が短い。idle状態とは、ホストコントローラとUFSメモリ8との間でのデータ処理(リードアクセス、プログラム処理、イレース処理、レジスタアクセス)などがない状態であり、Active状態とは、上記データ処理が、ホストコントローラとUFSメモリ8との間で行われている状態である。ホストコントローラとは、コンピュータとUFSメモリ8との通信を制御するものである。Hibernate状態では、idle状態中の消費電流は小さいが、idle状態からActive状態への復帰時間が長い。つまり、Hibernate状態は、UFSメモリ8においてデータ転送が行われるFastAuto状態およびSlowAuto状態と比較して、消費電力が低くかつUFSメモリ8におけるidle状態からActive状態への復帰時間が長い。
具体的には、FastAuto状態は、UFSメモリ8において、高速データ転送が可能な状態と、データ転送が行われていない低消費電力状態との間を、データ転送状況に応じて動的に切り替わる状態である。SlowAuto状態は、UFSメモリ8において、低速データ転送が可能な状態と、データ転送が行われていない低消費電力状態との間を、データ転送状況に応じて動的に切り替わる状態である。Hibernate状態は、データ転送が行われていないときに、UFSメモリ8が移行することが可能な状態である。Hibernate状態は、FastAuto状態およびSlowAuto状態と比較して最も消費電力が低い状態である。しかし、UFSメモリ8は、Hibernate状態から、FastAuto状態またはSlowAuto状態に移行するときに時間がかかる。
また、FastAuto状態およびSlowAuto状態では、UFSメモリ8が、ハードウェアで、メモリアクセスが可能な状態と、データ転送が行われていない低消費電力状態(Hibernate状態とは異なり、FastAuto状態またはSlowAuto状態における低消費電力状態)とを切り替えるため、ソフトウェアがその切り替える動作に関与しない。Hibernate状態では、UFSコントローラ3が、UFSメモリ8においてデータ転送が行われていない状態を検出し、ソフトウェアによってUFSメモリ8をHibernate状態に移行させる必要がある。
Hibernate状態では、idle状態からActive状態への復帰時間が長いという課題がある。そのため、高速なメモリ応答性が要求される場合やシステムが高速処理中にUFSメモリ8にメモリアクセスが発生した場合は、FastAuto状態またはSlowAuto状態でUFSメモリ8を使用した方が、メモリデバイス1のシステム全体の処理速度が速くなったり、消費電流を低減することができたりする場合がある。この場合の一例として、ネットワークからデータをダウンロードする場合やCPUが高速動作中にUFSメモリ8にメモリアクセスが発生した場合などが挙げられる。
Hibernate管理部4は、図2に示すように、AND回路10、AND回路13、およびレジスタ41を備えている。AND回路13の2つの入力端は、APP・CPU部2と接続されており、AND回路13の出力端は、AND回路10の一方の入力端と接続されている。また、AND回路10の出力端は、APP・CPU部2の割り込みコントローラ22と接続されている。さらに、AND回路10の出力端の論理値は、Hibernate管理部4に設けられているレジスタ41内のHibernate許可bit9に格納される。レジスタ41には、Hibernate許可bit9、Hibernate制御ENbit12、周波数bit14、およびコア数bit15が設けられている。Hibernate制御ENbit12には、AND回路10の一方の入力端に入力する信号の論理値が格納される。周波数bit14およびコア数bit15には、AND回路13の入力端に入力される信号の論理値が格納される。本願明細書では、AND回路13の出力信号を、APP・CPU信号11と称している。Hibernate管理部4は、CPU群21を構成する各CPUについて、UFSメモリ8を制御するためのCPUの動作周波数およびCPUのコア数を参照して、UFSメモリ8における低消費電力状態への移行を禁止させる(メモリ管理工程)。また、Hibernate管理部4は、CPU群21を構成する各CPUについて、UFSメモリ8を制御するためのCPUの動作周波数およびCPUのコア数を参照して、UFSメモリ8における低消費電力状態への移行を許可させる。Hibernate管理部4がHibernate状態への移行を禁止させるか、許可させるかの判断については後述する。また、Hibernate許可bit9は、AND回路10の出力信号によって論理値の切替が可能なビットを有しており、当該ビットの論理値の値を変更するとき、Hibernate許可bit9は、割り込みコントローラ22に、Hibernate許可bit9の論理値の値が変更されたことを通知する。Hibernate管理部4は、図示しない記録媒体からAPP・CPU部2が読み出した制御プログラムに基づいて動作するものである。その制御プログラムは、Hibernate管理部4としてコンピュータを機能させるためのプログラムである。Hibernate管理部4の構成は、図2に示すようにハードウェア(すなわち、AND回路10およびAND回路13)を含んでいてもよいし、全てソフトウェアで実現されてもよい。
Hibernate許可bit9は、AND回路10の出力信号を受信する。具体的には、AND回路10の入力の一端にはAPP・CPU信号11が供給され、AND回路10の入力の他端にはHibernate制御ENbit12に格納されている論理値に基づく信号が供給される。よって、APP・CPU信号11の論理値およびHibernate制御ENbit12の論理値の両方の論理値が1になれば、Hibernate許可bit9の論理値は1になる。また、Hibernate許可bit9の値が変化すると、Hibernate許可bit9は、APP・CPU部2の割り込みコントローラ22へ割り込み処理を発生させる。この割り込み処理によって、APP・CPU部2は、UFSコントローラ3に、現状のHibernate状態への移行の許可または禁止に更新があった(Hibernate許可bit9の値が変化した)ことを通知して、Hibernate状態への移行の許可または禁止の制御を行う。
Hibernate制御ENbit12は、Hibernate許可bit9によりHibernate状態への移行の許可または禁止の制御を行う場合に、論理値1が設定される。これにより、APP・CPU信号11の論理値が0のとき、Hibernate許可bit9の論理値も0になり、Hibernate状態への状態遷移が常時許可される。また、APP・CPU信号11の論理値が1のとき、Hibernate許可bit9の論理値も1になり、Hibernate状態への状態遷移が常時禁止される。
また、周波数bit14の論理値およびコア数bit15の論理値の両方が1になれば、APP・CPU信号11の論理値が1になる。言い換えると、CPUの動作周波数が事前に設定された閾値以上になっており、かつ、CPUが事前に設定された個数以上動作していれば、APP・CPU信号11の論理値は1になる。CPUの動作周波数が事前に設定された閾値未満になっている、または、CPUが事前に設定された個数未満で動作していれば、APP・CPU信号11の論理値は0になる。
周波数bit14は、CPU群21の8個のCPUのうち、1個のCPUの動作周波数が事前に設定された閾値以上になったときに、論理値1が設定される。その閾値を例えば800MHzとすると、周波数bit14は、CPUの動作周波数が800MHz以上になったときに、論理値1が設定される。
コア数bit15は、CPU群21の8個のCPUのうち、事前に設定された個数以上のCPUが動作しているときに、論理値1が設定される。例えば、その事前に設定された個数を2個で設定すると、コア数bit15は、2個以上のCPUが動作しているときに、論理値1が設定される。
これにより、メモリデバイス1は、1個のCPUの動作周波数が事前に設定された閾値以上になったとき、かつ、事前に設定された個数以上のCPUが動作しているときにHibernate状態への移行を禁止する。つまり、メモリデバイス1は、高速なメモリ応答性が要求される場合やシステムが高速処理中にUFSメモリ8にメモリアクセスが発生した場合は、Hibernate状態への移行を禁止し、そうでない場合は、Hibernate状態への移行を許可する。したがって、メモリデバイス1は、UFSメモリ8を使用したシステムの低消費電力化と処理速度の高速化を実現する。
モデムDSP5は、Wi−Fi(登録商標)やネットワークなどの通信処理を行う。AudioDSP6は、音楽の再生を行う。DMAコントローラ7は、DMA制御を管理する。
次に、メモリデバイス1全体の電力およびUFSメモリ8の電力について、図3に基づいて説明する。図3の(a)は本発明のUFSメモリの消費電力16aとメモリデバイス全体の消費電力17aとを示す模式図であり、図3の(b)は従来のUFSメモリの消費電力16bとメモリデバイス全体の消費電力17bとを示す模式図である。図3の(a)および(b)において、横軸は経過時間を示しており、縦軸は消費電力を示している。
メモリデバイス1のシステムが高負荷であるとき、メモリデバイス1のシステム全体の消費電流が大きく、UFSメモリ8の待機電流を無視できるような状態になっている。この場合、従来では、図3の(b)に示すように、UFSメモリ8におけるメモリアクセスの発生からデータフェッチ(メモリのデータ取り込み)までに消費されていたメモリデバイス1のシステム全体の消費電力が多くなっていた。本発明の一実施形態では、図3の(a)に示すように、UFSメモリ8におけるメモリアクセスの発生からデータフェッチ(メモリのデータ取り込み)までの時間が短縮され、メモリデバイス1のシステム全体の消費電力が、従来の場合より少なくすることができる。これは、メモリデバイス1が、高速なメモリ応答性が要求される場合やシステムが高速処理中にUFSメモリ8にメモリアクセスが発生した場合は、Hibernate状態への移行を禁止し、そうでない場合は、Hibernate状態への移行を許可するためである。これにより、メモリアクセスの発生からデータフェッチ(メモリのデータ取り込み)までの時間が短縮されるため、メモリデバイス1のシステム全体の消費電力を削減させることができ、さらに、UFSメモリ8における処理速度の高速化も実現することができる。
次に、CPUの動作周波数および動作しているCPUのコア数に基づくHibernate管理部4の動作について、図4および図5に基づいて説明する。図4は、Hibernate状態への移行を禁止するときにおける、図2に示すHibernate管理部4の動作を示すフローチャートである。図5は、Hibernate状態への移行を許可するときにおける、図2に示すHibernate管理部4の動作を示すフローチャートである。
Hibernate状態への移行を禁止するとき、Hibernate管理部4の動作は、図4に示すフローチャートのようになる。ここでは、CPUの動作周波数が800MHz以上で、かつ、2個以上のCPUが動作すると、Hibernate状態への移行を禁止するものとする。
図4に示すように、まず、CPUのコア数が1で動作し、CPUの動作周波数が400MHzで動作する(ステップSA1)。
CPU群21が行う処理が増加したため、動作しているCPUのコア数が2個に変更にされ、CPUの動作周波数が400MHzから1GHzに変更される(ステップSA2)。
CPUの動作周波数が1GHzに変更されたため、Hibernate管理部4はCPU群21から情報を受け取り、周波数bit14の論理値とコア数bit15の論理値を1にセットする(ステップSA3)。
周波数bit14の論理値およびコア数bit15の論理値が1にセットされることで、AND回路13の出力が1になるため、APP・CPU信号11の論理値も1になり、Hibernate許可bit9の論理値が0から1に変更される(ステップSA4)。
Hibernate許可bit9の論理値が変更されたため、割り込みコントローラ22に割り込みが発生する(ステップSA5)。
割り込みコントローラ22に割り込みが発生した後、CPU群21は、割り込み要因を特定して、UFSコントローラ3にHibernate状態への移行の禁止を通知する(ステップSA6)。
Hibernate状態への移行を許可するとき、Hibernate管理部4の動作は、図5に示すフローチャートのようになる。Hibernate状態への移行を禁止するときと同様に、ここでは、CPUの動作周波数が800MHz以上で、かつ、2個以上のCPUが動作すると、Hibernate状態への移行を禁止するものとする。
図5に示すように、まず、CPUのコア数が2で動作し、CPUの動作周波数が1GHzで動作する(ステップSB1)。
CPU21が行う処理が軽減したため、動作しているCPUのコア数が1個に変更され、CPUの動作周波数が1GHzから400MHzに変更される(ステップSB2)。
動作しているCPUのコア数が1個に変更され、CPUの動作周波数が400MHzに変更されたため、Hibernate管理部4はCPU群21から情報を受け取り、周波数bit14の論理値とコア数bit15の論理値を0にセットする(ステップSB3)。
周波数bit14の論理値およびコア数bit15の論理値が0にセットされることで、AND回路13の出力が0になるため、APP・CPU信号11の論理値も0になり、Hibernate許可bit9の論理値が1から0に変更される(ステップSB4)。
Hibernate許可bit9の論理値が変更されたため、割り込みコントローラ22に割り込みが発生する(ステップSB5)。
そして、CPU群21は、割り込み要因を特定して、UFSコントローラ3にHibernate状態への移行の許可を通知する(ステップSB6)。
次に、CPUの動作周波数および動作しているCPUのコア数に基づくUFSコントローラ3の動作について、図6に基づいて説明する。図6は、UFSコントローラ3の動作を示すフローチャートである。
図6に示すように、まず、APP/CPU部2がHibernate制御ENbit12の論理値を0から1に変更する(ステップSC1)。このとき、UFSメモリ8へのアクセスがない場合は、UFSメモリ8がidle状態になる(ステップSC2)。そして、Hibernate管理部4のHibernate許可bit9の論理値が、UFSメモリ8がidle状態のときに変更された場合、Hibernate許可bit9は割り込みコントローラ22に割り込みを発生する。
割り込みコントローラ22に割り込みが発生したとき、CPU群21は、Hibernate許可bit9の論理値が1であるかを判定する(ステップSC3)。Hibernate許可bit9の論理値が1の場合(Hibernate状態への移行が禁止の場合)、ステップSC4に進む。Hibernate許可bit9の論理値が0の場合(Hibernate状態への移行が許可の場合)、ステップSC8に進む。ステップSC2の後段階かつステップSC3の前段階において、Hibernate許可bit9の論理値の変更による割り込みが発生していない場合に、ステップSC8に進んでもよい。
Hibernate許可bit9の論理値が1の場合、UFSコントローラ3は、現在のUFSメモリ8の状態に応じて、UFSメモリ8をFastAuto状態またはSlowAuto状態に移行させる(ステップSC4)。
UFSコントローラ3が、UFSメモリ8をFastAuto状態またはSlowAuto状態に移行させた後に、CPU群21は、Hibernate許可bit9の論理値の変更による割り込みが発生したかを判定する(ステップSC5)。割り込みコントローラ22に、Hibernate許可bit9の論理値の変更による割り込みが発生した場合は、ステップSC8に進む。Hibernate許可bit9の論理値の変更による割り込みが発生していない場合は、ステップSC6に進む。
Hibernate許可bit9の論理値が変更されない場合、UFSコントローラ3は、UFSメモリ8へのアクセスが発生したかを判定する(ステップSC6)。UFSメモリ8へのアクセスが発生した場合、ステップSC7に進む。UFSメモリ8へのアクセ
スが発生していない場合、ステップSC5に戻る。
UFSメモリ8へのアクセスが発生した場合、UFSコントローラ3は、UFSメモリ8の状態に応じて、UFSメモリ8をFastAuto状態またはSlowAuto状態でメモリアクセスを実行する(ステップSC7)。
ステップSC3において、Hibernate許可bit9の論理値が0の場合、ステップSC8に進む。
Hibernate許可bit9の論理値が変更されない場合、UFSメモリ8のidle状態の時間が100ms以上続いているかを判定する(ステップSC8)。UFSメモリ8のidle状態の時間が100ms以上続いている場合は、ステップSC9に進む。100ms未満にUFSメモリ8へのアクセスが発生した場合は、ステップSC7に進む。
UFSメモリ8のidle状態の時間が100ms以上続いている場合、UFSメモリコントローラ3は、UFSメモリ8をHibernate状態へ移行させる(ステップSC9)。
UFSメモリコントローラ3が、UFSメモリ8をHibernate状態へ移行させた後、Hibernate管理部4は、Hibernate状態中に、CPU群21は、Hibernate許可bit9の論理値の変更による割り込みが発生したかを判定する(ステップSC10)。Hibernate許可bit9の論理値の変更による割り込みが発生した場合、ステップSC4に進む。割り込みコントローラ22で、Hibernate許可bit9の論理値の変更による割り込みが発生していない場合、ステップSC11に進む。
Hibernate許可bit9の論理値が変更されない場合、UFSコントローラ3は、UFSメモリ8へのアクセスが発生したかを判定する(ステップSC11)。UFSメモリ8へのアクセスが発生した場合、ステップSC7に進む。UFSメモリ8へのアクセスが発生していない場合、ステップSC10に戻る。
以上により、Hibernate管理部4は、CPUの動作周波数およびCPUのコア数のうち少なくとも一方を参照して、UFSメモリ8におけるFastAuto状態またはSlowAuto状態と、Hibernate状態とを切り替える。また、Hibernate管理部4が、UFSメモリ8における低消費電力状態への移行を禁止させている状態において、Hibernate管理部4は、UFSメモリ8をFastAuto状態またはSlowAuto状態に移行させる。Hibernate管理部4は、UFSメモリ8がidle状態になったとき、Hibernate状態への移行を禁止させるか否かの制御を開始する。つまり、メモリデバイス1は、1個のCPUの動作周波数が事前に設定された閾値以上になったとき、かつ、事前に設定された個数以上のCPUが動作しているときに、Hibernate状態への移行を禁止することで、メモリデバイス1の処理速度の高速化と省電力化を図ることができる。また、CPUの動作周波数・動作しているCPUのコア数のどちらか片方に基づいて禁止を制御してもよい。具体的には、Hibernate管理部4において、AND回路13をOR回路に変更してもよく、また、AND回路13を設けずにAND回路10に周波数bit14またはコア数ビット15のいずれか一方の信号が入力するようにしてもよい。
〔実施形態2〕
本発明の他の実施形態について、図7および図8に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、前記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
携帯電話機では、ネットワークやWi−Fi(登録商標)などの外部からデータをダウンロードして、UFSメモリ8へデータをストアするときなどは、消費電力に関わらず、高速にデータのダウンロード処理を完了する必要がある。また、携帯電話機に充電器が接続されている状況では、低消費電力化よりも処理速度の高速化が期待される場合がある。
本発明の実施形態2では、上記のような外部からデータをダウンロードする場合や充電器が接続されている場合には、UFSメモリ8のHibernate状態への移行を禁止して、メモリデバイスの処理速度の高速化を実現する。
また、本発明の実施形態2において、UFSコントローラ3の動作については、図6に示す動作と同様である。
本発明の実施形態2について、Hibernate管理部4aは、図7に示すように、OR回路10aおよびレジスタ41aを備えている。OR回路10aの複数の入力端は、レジスタ41aと接続されている。OR回路10aの出力端の論理値はAPP・CPU部2の割り込みコントローラ22とHibernate管理部4a内のレジスタ41aに設けられたHibernate許可bit9aに格納される。レジスタ41aには、Hibernate許可bit9a、APP・CPUbit11a、モデムDSPbit18、AudioDSPbit19、チャージャ有/無bit30、およびDMAコントローラbit31が設けられている。
Hibernate許可bit9aは、OR回路10aの出力に相当する。つまり、Hibernate許可bit9aには、OR回路10aの出力信号の論理値が格納される。また、OR回路10aの複数の入力端にはAPP・CPUbit11a、モデムDSPbit18、AudioDSPbit19、チャージャ有/無bit30、およびDMAコントローラbit31の論理値に応じた信号が供給される。
APP・CPUbit11a、モデムDSPbit18、AudioDSPbit19、およびDMAコントローラbit31にはそれぞれ、Hibernate状態への移行の禁止または許可を管理する信号の論理値が格納される。また、チャージャ有/無bit30には、チャージャの有/無を管理する信号の論理値が格納される。Hibernate状態への移行を禁止する場合は、APP・CPU部2は、Hibernate状態への移行の禁止または許可を管理する信号の論理値を1にセットする。Hibernate状態への移行を許可する場合は、Hibernate状態への移行の禁止または許可を管理する信号の論理値を0にセットする。
また、Hibernate管理部4aが備えられているメモリデバイス1aに図示しないチャージャ(充電器)を接続するとき、チャージャ有/無bit30は、論理値を1にセットされる。メモリデバイス1aにチャージャを接続しないとき、チャージャ有/無bit30は、論理値を0にセットされる。すなわち、このとき、メモリデバイス1aにチャージャが接続されている状態において、Hibernate管理部4aは、UFSメモリ8におけるHibernate状態への移行の禁止をUFSコントローラ3に通知する。
Hibernate許可bit9aは、APP・CPUbit11a、モデムDSPbit18、AudioDSPbit19、チャージャ有/無bit30、およびDMAコントローラbit31のうち1つでもHibernate状態への移行の禁止のリクエストがあれば(論理値が1になれば)、Hibernate許可bit9aの論理値が1になる。Hibernate状態への移行の禁止のリクエストが1つもない場合だけ、Hibernate許可bit9aの論理値が0になる。これにより、Hibernate管理部4aは、CPU群21が特定のアプリケーションを実行させている状態において、当該アプリケーションの実行に適するように、UFSメモリ8におけるFastAuto状態またはSlowAuto状態と、Hibernate状態とを切り替える。メモリデバイス1aにチャージャが接続されている状態において、Hibernate管理部4aは、UFSメモリ8におけるHibernate状態への移行を禁止させる。つまり、特定のアプリケーション(APP・CPUbit11a、モデムDSPbit18、AudioDSPbit19、チャージャ有/無bit30、およびDMAコントローラbit31に対応するアプリケーション)が実行されているときにおいて、UFSメモリ8へのアクセス効率をアップさせることができる。また、アプリケーションに応じて、Hibernate管理部4aを制御することで、メモリシステム1aの処理速度の高速化と省電力化を図ることができる。
また、Hibernate管理部4aは、Hibernate許可bit9aの論理値が変更する毎に、割り込みコントローラ22へ、Hibernate許可bit9aの論理値が変更されたことを通知する割り込みを発生させる。
Wi−Fi(登録商標)によりデータをダウンロードし、UFSメモリ8へデータを格納する場合において、Wi−Fi(登録商標)からデータをダウンロードする処理を行うときのみ、Hibernate状態への移行を禁止するときのHibernate管理部4aの動作を図8に示す。図8は、図7に示すHibernate管理部4aの動作を示すフローチャートである。
図8に示すように、まず、モデムDSP5が、ユーザからの命令、つまり、CPU群21からの命令で、Wi−Fi(登録商標)によるデータのダウンロード処理の開始命令を受けて、Wi−Fi(登録商標)によるデータのダウンロード処理を開始する(ステップSD1)。
モデムDSP5がWi−Fi(登録商標)によるデータのダウンロード処理を開始した後、モデムDSP5は、APP・CPU部2に、Wi−Fi(登録商標)によるデータのダウンロード処理の一番最初の処理として、Hibernate管理部4aのモデムDSPbit18の論理値を1にセットするように指示する(ステップSD2)。
モデムDSP5がモデムDSPbit18の論理値を1にセットするように指示した後、OR回路10aの出力のHibernate許可bit9aの論理値が0から1に変更される(ステップSD3)。
Hibernate許可bit9aの論理値が変更されたため、割り込みコントローラ22へ割り込みが発生する(ステップSD4)。
割り込みコントローラ22へ割り込みが発生した後、CPU群21は、Hibernate許可bit9aからの割り込みを処理して、UFSコントローラ3にHIbernate状態への移行の禁止を通知する(ステップSD5)。これにより、UFSメモリ8は、Hibernate状態にはならなくなる。
CPU群21がUFSコントローラ3にHIbernate状態への移行の禁止を通知した後、モデムDSP5がWi−Fi(登録商標)からのデータのダウンロード処理を終了する(ステップSD6)。言い換えると、モデムDSP5がWi−Fi(登録商標)によりダウンロードされるデータをUFSメモリ8に格納する処理が終了する。
モデムDSP5がWi−Fi(登録商標)からのデータのダウンロード処理を終了した後、モデムDSP5は、APP・CPU部2に、モデムDSPbit18の論理値を0にセットするように指示する(ステップSD7)。
モデムDSPbit18の論理値が0にセットされたため、Hibernate許可bit9aの論理値が1から0に変更される(ステップSD8)。
Hibernate許可bit9aの論理値が1から0に変更されたため、割り込みコントローラ22へ割り込みが発生する(ステップSD9)。
CPU群21は、Hibernate管理部4aからの割り込みを処理して、UFSコントローラ3へ、Hibernate状態への移行の許可を通知する(ステップSD10)。
よって、メモリデバイス1aがWi−Fi(登録商標)からダウンロードされたデータをUFSメモリ8に格納する前に、UFSメモリ8がHibernate状態になることがない。これにより、UFSメモリ8がidle状態からActive状態へ移行するのにかかる時間を最小化することができる。最小化することにより短縮された時間分、ダウンロードされたデータをUFSメモリ8に格納するのが完了するまでの時間を短縮することができる。
また、同様に、メモリデバイス1aにチャージャを接続するとき、チャージャ有/無bit30の論理値を1にセットすることで、チャージャ接続中のUFSメモリのHibernate状態への移行を禁止する。よって、UFSメモリ8がidle状態からActive状態へ移行するのにかかる時間を最小化することができる。これにより、メモリデバイス1aの処理速度を速くすることができる。
〔実施形態3〕(ソフトウェアによる実現例)
メモリデバイス1、1aの制御ブロック(特にHibernate管理部4、4a)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現しても
よい。
後者の場合、メモリデバイス1、1aは、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
〔まとめ〕
本発明の態様1に係るメモリ制御装置(メモリデバイス1、1a)は、UFSメモリ8を制御するためのCPUの動作周波数および前記CPUのコア数のうち少なくとも一方を参照して、前記UFSメモリ8における低消費電力状態への移行を禁止させるメモリ管理部(Hiberenate管理部4、4a)を備えており、前記低消費電力状態は、前記UFSメモリ8においてデータ転送が行われる通常状態と比較して、消費電力が低くかつ前記UFSメモリ8におけるidle状態から活動状態への復帰時間が長いことを特徴とする。
上記の構成によれば、メモリ制御装置は、CPUの動作周波数および動作しているCPUのコア数に基づいて、高速なメモリ応答性が要求される場合、およびシステムが高速処理中にUFSメモリにメモリアクセスが発生した場合を検出する。そして、これらの場合を検出したとき、メモリ制御装置は、低消費電力状態への移行を禁止する。したがって、メモリ制御装置は、これらの場合において、UFSメモリを使用したシステムの低消費電力化と処理速度の高速化を実現することができる。
本発明の態様2に係るメモリ制御装置(メモリデバイス1、1a)は、上記態様1において、前記メモリ管理部(Hiberenate管理部4、4a)は、前記動作周波数および前記コア数のうち少なくとも一方を参照して、前記通常状態と前記低消費電力状態とを切り替えてもよい。
上記の構成によれば、メモリ管理部がCPUの動作周波数および動作しているCPUのコア数に応じて、UFSメモリにおける通常状態と低消費電力状態とを切り替える。このため、メモリ制御装置は、高速なメモリ応答性が要求されない場合、およびシステムが高速処理中にUFSメモリにメモリアクセスが発生しない場合において、低消費電力状態への移行を許可するといった設定ができる。
本発明の態様3に係るメモリ制御装置(メモリデバイス1a)は、上記態様2において、前記メモリ管理部(Hiberenate管理部4a)は、前記CPUが特定のアプリケーションを実行させている状態において、当該アプリケーションの実行に適するように、前記通常状態と前記低消費電力状態とを切り替えてもよい。
上記の構成によれば、特定のアプリケーションを実行するときに、メモリ管理部がUFSメモリを低消費電力状態から通常状態に切り替えるように設定できる。このため、特定のアプリケーションが実行されているときにおいて、UFSメモリへのアクセス効率をアップさせることができる。また、アプリケーションに応じて、メモリ管理部を制御することで、メモリシステムの処理速度の高速化と省電力化を図ることができる。
本発明の態様4に係るメモリ制御装置(メモリデバイス1a)は、上記態様1から3のいずれかにおいて、前記メモリ制御装置(メモリデバイス1a)に充電器が接続されている状態において、前記メモリ管理部(Hiberenate管理部4a)は、前記低消費電力状態への移行を禁止させてもよい。
上記の構成によれば、メモリ制御装置に充電器を接続するときにおいて、UFSメモリがidle状態から活動状態へ移行するのにかかる時間を最小化することができる。これにより、メモリ制御装置の処理速度を速くすることができる。
本発明の態様5に係るメモリ制御装置(メモリデバイス1、1a)は、上記態様1から4のいずれかにおいて、前記メモリ管理部(Hiberenate管理部4、4a)は、前記UFSメモリ8が前記idle状態になったとき、前記低消費電力状態への移行を禁止させるか否かの制御を開始してもよい。
上記の構成によれば、UFSメモリがidle状態になったときに、UFSコントローラへ低消費電力状態への移行の禁止を通知するか否かの制御が開始されるため、メモリ制御装置の低消費電力化を図ることができる。
本発明の態様6に係る電子機器は、上記態様1から5のいずれかにおいて、前記メモリ制御装置(メモリデバイス1、1a)を備えていてもよい。
本発明の態様7に係るメモリの制御方法は、UFSメモリ8を制御するためのCPUの動作周波数および前記CPUのコア数のうち少なくとも一方を参照して、前記UFSメモリ8における低消費電力状態への移行を禁止させるメモリ管理工程(Hiberenate管理部4、4a)を含んでおり、前記低消費電力状態は、前記UFSメモリ8においてデータ転送が行われる通常状態と比較して、消費電力が低くかつ前記UFSメモリ8におけるidle状態から活動状態への復帰時間が長いことを特徴とする。
本発明の各態様に係るメモリ管理部(Hiberenate管理部4、4a)は、コンピュータによって実現してもよく、この場合には、コンピュータを上記メモリ管理部(Hiberenate管理部4、4a)が備える各部(ソフトウェア要素)として動作させることにより上記メモリ管理部(Hiberenate管理部4、4a)をコンピュータにて実現させるメモリ管理部(Hiberenate管理部4、4a)の管理プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
1、1a メモリデバイス(メモリ制御装置)
2 APP・CPU部
3 UFSコントローラ
4、4a Hibernate管理部(メモリ管理部)
5 モデムDSP
6 AudioDSP
7 DMAコントローラ
8 UFSメモリ
9、9a Hibernate許可bit
10、13 AND回路
10a OR回路
11 APP・CPU信号
11a APP・CPUbit
12 Hibernate制御ENbit
14 周波数bit
15 コア数bit
16a、16b UFSメモリの消費電力
17a、17b メモリデバイス全体の消費電力
18 モデムDSPbit
19 AudioDSPbit
21 CPU群
22 割り込みコントローラ
30 チャージャ有/無bit
31 DMAコントローラbit

Claims (7)

  1. UFS(Universal Flash Storage)メモリを制御するためのCPUと、
    前記CPUの動作周波数および前記CPUが有する複数のコアのうちの動作しているコア数を参照して、前記CPUが有する複数のコアの少なくとも1つ以上の動作周波数が閾値以上になり、かつ、動作しているコア数が閾値以上になったときに、前記UFSメモリにおけるHibernate状態と呼ばれる低消費電力状態への移行を禁止させるメモリ管理部と、を備えており、
    前記UFSメモリは、前記UFSメモリへのメモリアクセスがある活動状態と、前記UFSメモリへのメモリアクセスがないidle状態と、を有し、
    前記idle状態は、前記UFSメモリへのメモリアクセスでのデータ転送状況に応じて前記活動状態と動的に切り替わる通常状態と、前記Hibernate状態と、を含み、
    前記Hibernate状態は、前記通常状態と比較して、消費電力が低くかつ前記idle状態から前記活動状態への復帰時間が長いことを特徴とするメモリ制御装置。
  2. 前記メモリ管理部は、前記CPUが特定のアプリケーションを実行させている状態において、当該アプリケーションの実行に適するように、前記CPUが有する複数のコアの少なくとも1つ以上の動作周波数が閾値以上になり、かつ、動作しているコア数が閾値以上になったときに、前記Hibernate状態への移行を禁止させることを特徴とする請求項に記載のメモリ制御装置。
  3. 前記メモリ管理部は、さらに、前記メモリ制御装置に充電器が接続されている状態において、前Hibernate状態への移行を禁止させることを特徴とする請求項1または2に記載のメモリ制御装置。
  4. 前記メモリ管理部は、前記UFSメモリが前記idle状態になとき、前記Hibernate状態への移行を禁止させるか否かの制御を開始することを特徴とする請求項1からのいずれか1項に記載のメモリ制御装置。
  5. 請求項1からのいずれか1項に記載のメモリ制御装置を備えていることを特徴とする電子機器。
  6. メモリ管理部が、UFS(Universal Flash Storage)メモリを制御するためのCPUの動作周波数および前記CPUが有する複数のコアのうちの動作しているコア数を参照して、前記CPUが有する複数のコアの少なくとも1つ以上の動作周波数が閾値以上になり、かつ、動作しているコア数が閾値以上になったときに、前記UFSメモリにおけるHibernate状態と呼ばれる低消費電力状態への移行を禁止させるメモリ管理工程を含んでおり、
    前記UFSメモリは、前記UFSメモリへのメモリアクセスがある活動状態と、前記UFSメモリへのメモリアクセスがないidle状態と、を有し、
    前記idle状態は、前記UFSメモリへのメモリアクセスでのデータ転送状況に応じて前記活動状態と動的に切り替わる通常状態と、前記Hibernate状態と、を含み、
    前記Hibernate状態は、前記通常状態と比較して、消費電力が低くかつ前記idle状態から前記活動状態への復帰時間が長いことを特徴とするメモリの制御方法。
  7. 請求項1からのいずれか1項に記載のメモリ制御装置の前記メモリ管理部としてコンピュータを機能させるための制御プログラム。
JP2016174717A 2016-09-07 2016-09-07 メモリ制御装置、電子機器、メモリの制御方法、および制御プログラム Expired - Fee Related JP6769789B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016174717A JP6769789B2 (ja) 2016-09-07 2016-09-07 メモリ制御装置、電子機器、メモリの制御方法、および制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016174717A JP6769789B2 (ja) 2016-09-07 2016-09-07 メモリ制御装置、電子機器、メモリの制御方法、および制御プログラム

Publications (2)

Publication Number Publication Date
JP2018041257A JP2018041257A (ja) 2018-03-15
JP6769789B2 true JP6769789B2 (ja) 2020-10-14

Family

ID=61626261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016174717A Expired - Fee Related JP6769789B2 (ja) 2016-09-07 2016-09-07 メモリ制御装置、電子機器、メモリの制御方法、および制御プログラム

Country Status (1)

Country Link
JP (1) JP6769789B2 (ja)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09138716A (ja) * 1995-11-14 1997-05-27 Toshiba Corp 電子計算機
JP2008243049A (ja) * 2007-03-28 2008-10-09 Toshiba Corp 情報処理装置および同装置のメモリ制御方法
US8621128B2 (en) * 2009-12-04 2013-12-31 St-Ericsson Sa Methods and systems for reliable link startup
JP5699847B2 (ja) * 2011-08-08 2015-04-15 富士通株式会社 制御装置及び方法
JP2013222321A (ja) * 2012-04-17 2013-10-28 Sony Corp メモリ制御装置、メモリ制御方法、情報処理装置、およびプログラム
JP2014026681A (ja) * 2012-07-24 2014-02-06 Ps4 Luxco S A R L 半導体装置及びこれを備えた情報処理システム
JP6038699B2 (ja) * 2013-03-22 2016-12-07 シャープ株式会社 電子機器
US9541987B2 (en) * 2013-06-28 2017-01-10 Intel Corporation Generic host-based controller latency method and appartus
US9881680B2 (en) * 2014-06-03 2018-01-30 Qualcomm Incorporated Multi-host power controller (MHPC) of a flash-memory-based storage device

Also Published As

Publication number Publication date
JP2018041257A (ja) 2018-03-15

Similar Documents

Publication Publication Date Title
KR101827666B1 (ko) 멀티-프로세서 시스템 온 칩에서의 에너지 효율 인지 열 관리
JP5905408B2 (ja) マルチcpuシステムとそれを含むコンピューティングシステム
KR101747308B1 (ko) 이종의 다중-프로세서 시스템 온 칩에서 열 구동식 작업로드 스케줄링
TWI645334B (zh) 用於管理操作狀態資料之方法、記憶體模組及主機裝置
US8752060B2 (en) Multi-CPU domain mobile electronic device and operation method thereof
JP2012529692A (ja) メモリアレイにおける読み出し待ち時間を短縮するためのメモリ操作の一時停止
KR20130002046A (ko) 멀티 코어를 포함하는 저장 장치의 전력 관리 방법
US7795955B2 (en) Semiconductor integrated circuit and power control method
KR101222082B1 (ko) Mla의 소비 전력을 줄이기 위한 멀티 포트 메모리 장치의 전원제어방법
JP4962921B2 (ja) コンピュータのメモリ再配置制御方法およびプログラム並びにコンピュータシステム
CN107743608B (zh) 至硬件加速器的动态功率路由
JP2012155533A (ja) 情報処理装置、その制御方法、および制御プログラム
JP2016045954A (ja) 不揮発制御によるrfモジュール初期化システム及び方法
CN116301294B (zh) 一种***芯片低功耗实现方法、***芯片、车机及设备
KR101942884B1 (ko) 새로운 저비용, 저전력 고성능 smp/asmp 다중-프로세서 시스템
CN115729312A (zh) 自动切换处理器时钟的控制***及芯片
JP6769789B2 (ja) メモリ制御装置、電子機器、メモリの制御方法、および制御プログラム
US6853603B1 (en) Programmable logic device having nonvolatile memory with user selectable power consumption
CN113986001A (zh) 芯片及控制方法
KR20080060649A (ko) 데이터 처리 장치 및 방법
JP2016026345A (ja) メモリアレイにおける読み出し待ち時間を短縮するためのメモリ操作の一時停止
JP2021005249A (ja) 情報処理装置、画像形成装置および省電力制御方法
EP3646162B1 (en) System and method for dynamic buffer sizing in a computing device
JP5877348B2 (ja) メモリ制御システム及び電力制御方法
JP6915897B2 (ja) 位置通知装置、情報処理装置、位置通知方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190320

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200323

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200924

R150 Certificate of patent or registration of utility model

Ref document number: 6769789

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees