JPWO2019017017A1 - ウェアレベリング処理を行うメモリコントローラ - Google Patents
ウェアレベリング処理を行うメモリコントローラ Download PDFInfo
- Publication number
- JPWO2019017017A1 JPWO2019017017A1 JP2019530874A JP2019530874A JPWO2019017017A1 JP WO2019017017 A1 JPWO2019017017 A1 JP WO2019017017A1 JP 2019530874 A JP2019530874 A JP 2019530874A JP 2019530874 A JP2019530874 A JP 2019530874A JP WO2019017017 A1 JPWO2019017017 A1 JP WO2019017017A1
- Authority
- JP
- Japan
- Prior art keywords
- unit
- management unit
- section
- write amount
- target
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7208—Multiple device management, e.g. distributing data over multiple flash devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
1.第1の実施の形態(セクション内のページ間の書込み量を平均化する例)
2.第2の実施の形態(フリー領域の書込み量を減らす処理を加えた例)
3.第3の実施の形態(平均化処理の対象セクションを再利用する例)
4.第4の実施の形態(平均化処理の対象セクションの書込み量が多い場合に再利用する例)
5.第5の実施の形態(乱数列を変更してセクション内のページ順序を変化させる例)
[情報処理システムの構成]
図1は、本技術の実施の形態における情報処理システムの一構成例を示す図である。この情報処理システムは、ホストコンピュータ100と、メモリコントローラ200と、メモリ300とから構成される。メモリコントローラ200およびメモリ300はメモリシステム400を構成する。
図2は、本技術の第1の実施の形態におけるメモリコントローラ200の一構成例を示す図である。このメモリコントローラ200は、書込み量計測部210と、書込み量情報テーブル220と、平均化処理部230と、セクション間コピー処理部240と、アドレス変換テーブル250と、アドレス変換部260と、メモリ制御部290とを備える。また、このメモリコントローラ200は、ホストコンピュータ100との間のやりとりを行うためのホストインターフェース201と、メモリ300との間のやりとりを行うためのメモリインターフェース209とを備える。
図3は、本技術の実施の形態におけるセクションとページの関係例を示す図である。ここでは、1GB(ギガバイト)のメモリ空間を想定する。そして、このメモリ空間において、読出しまたは書込みのアクセス単位であるページのサイズを4KB(キロバイト)とする。この場合、メモリ空間における総ページ数は256Kページとなる。メモリ300におけるページ間の書込み量の偏りを検出するためには、これら256Kページの書込み量を比較してそれらを平均化させることが考えられるが、その場合には比較量が膨大となり管理が煩雑となる。
図5は、本技術の第1の実施の形態における書込み量情報テーブル220の第1の例を示す図である。この第1の例による書込み量情報は、全ての物理セクション毎に書込み量情報を有する場合の例である。この第1の例では、物理セクションのそれぞれに対応して、その物理セクションに含まれる8つの物理ページの各々のページ書込み量と、その物理セクションの総書込み量とを記憶する。
最大ページ書込み量 − ページ書込み量の平均値 > α
書込み発生ページ数=1: 1170− 146=1024
書込み発生ページ数=2: 1365− 341=1024
書込み発生ページ数=3: 1638− 614=1024
書込み発生ページ数=4: 2048−1024=1024
書込み発生ページ数=5: 2730−1706=1024
書込み発生ページ数=6: 4096−3072=1024
書込み発生ページ数=7: 8192−7168=1024
書込み発生ページ数=8: 0(セクション内の全ページに均等)
図7は、本技術の第1の実施の形態における平均化処理の概要例を示す図である。ここでは、ページ間の書込み量の偏りを有する論理セクションとしてセクションAが選択された場合を想定する。その際、このセクションAの物理アドレスとして物理セクションPAが割り当てられていたものとする。すなわち、アドレス変換テーブル250には、ユーザ領域の論理セクションLU1に対応して物理セクションPAが記憶されていたものとする。
上述の第1の実施の形態では、ページ書込み量に偏りが検出されたセクションの物理アドレスの割当てを変更することによりセクション内平均化処理を行っていた。このセクション内平均化処理では、フリー領域において総書込み量が最小となるセクションを選択して、ページ書込み量に偏りが検出されたセクションと物理アドレスを入れ換えることにより、物理アドレスの割当てを変更していた。そのため、フリー領域に着目すると、書込み量は増加することになる。
セクション間平均化処理の際に、ユーザ領域において総書込み量が最小のセクションを選択する際、セクション内平均化処理によって割り当てられた直後のセクションが選択されてしまうと、意図した平均化が行われなくなるおそれがある。そのため、この第2の実施の形態では、書込み情報として、セクション内平均化処理によるコピーが行われた直後であることを示すコピー済フラグを設け、これにより、セクション間平均化処理においてそのセクションが選択されることを回避する。
図13は、本技術の第2の実施の形態における平均化処理の概要例を示す図である。ここでは、上述の第1の実施の形態と同様に、セクション内平均化処理として、ページ間の書込み量の偏りを有する論理セクションとしてセクションAが選択され、セクションAのデータはセクション間コピー処理部240によって物理セクションPBにコピーされる。
上述の第2の実施の形態では、セクション内平均化処理の後に、ユーザ領域において総書込み量が最小のセクションと、フリー領域において総書込み量が最大のセクションとを交換することにより、フリー領域の書込み量の減少を図っていた。この場合、セクション内平均化処理に伴うフリー領域の書込み量の増大を中和するためには高い効果が得られるが、フリー領域において総書込み量が最大となるセクションを選択する必要があった。一方、セクション内平均化処理の対象セクションが記憶されていた物理セクションPAの書込み量によっては、物理セクションPAをフリー領域として登録しても書込み量の減少にあまり寄与しない場合も生じ得る。そこで、この第3の実施の形態では、セクション内平均化処理の後にフリー領域において総書込み量が最大のセクションを検索することなく、セクション内平均化処理の対象セクションが記憶されていた物理セクションPAを再利用して、処理の簡略化を図る。
図17は、本技術の第3の実施の形態における平均化処理の概要例を示す図である。ここでは、上述の第1の実施の形態と同様に、セクション内平均化処理として、ページ間の書込み量の偏りを有する論理セクションとしてセクションAが選択され、セクションAのデータはセクション間コピー処理部240によって物理セクションPBにコピーされる。
上述の第2および第3の実施の形態では、セクション内平均化処理の後に、ユーザ領域のセクションとフリー領域のセクションとの間で入換えを行っていた。しかしながら、ページ間の書込み量の偏りを有するものとして選択されたセクションの総書込み量がそれほど多くない場合には、フリー領域との入換えは必ずしも必要ではない。そこで、この第4の実施の形態では、ページ間の書込み量の偏りを有するものとして選択されたセクションの総書込み量が全セクションの総書込み量の平均値よりも多くない場合には、セクション間平均化処理を行わずに、処理の簡略化を図る。
図21は、本技術の第4の実施の形態における平均化処理の処理手順例を示す流れ図である。なお、メモリアクセス処理の全体処理については上述の第1の実施の形態と同様であるため、説明を省略する。
上述の第1乃至第4の実施の形態では、セクション間で入換えを行うことにより、セクション内のページ書込み量の平均化を図っていた。したがって、セクション内のページの順序については入換えの前後において変化がなかった。これに対し、この第5の実施の形態では、セクション内のページの順序を変更することにより、平均化処理の効果をさらに向上させる。
図22は、本技術の第5の実施の形態におけるメモリコントローラ200の一構成例を示す図である。なお、情報処理システムとしての全体構成については、上述の第1の実施の形態と同様であるため、詳細な説明は省略する。
図23は、本技術の第5の実施の形態におけるページ配置順序の変更態様の例を示す図である。上述のように、1つのセクションは、一例として8つのページから構成されるものと想定する。論理セクション内の8つのページは、メモリ300における物理セクションに配置される際、乱数列に従って順序が決定される。
(1)メモリのアクセス単位を複数まとめた管理単位ごとに論理アドレスと物理アドレスとの間でアドレス変換を行うアドレス変換部と、
前記管理単位のそれぞれにおいて前記アクセス単位ごとの書込み量を計測する書込み量計測部と、
前記計測された書込み量に基づいて前記管理単位のうちから対象管理単位を選択して当該対象管理単位の前記アドレス変換における物理アドレスの割当を変更して、前記対象管理単位における前記アクセス単位の書込み量を平均化させる平均化処理部と
を具備するメモリコントローラ。
(2)前記平均化処理部は、前記管理単位における前記アクセス単位の書込み量がその管理単位において偏りを生じた場合に、その管理単位を前記対象管理単位として選択する
前記(1)に記載のメモリコントローラ。
(3)前記平均化処理部は、前記管理単位における前記アクセス単位の書込み量の最大値がその管理単位における前記アクセス単位の書込み量の平均値よりも所定の閾値を超えて大きい場合に、その管理単位を前記対象管理単位として選択する
前記(1)または(2)に記載のメモリコントローラ。
(4)前記メモリの論理アドレス空間は、使用中領域と未使用領域とに分けて管理され、
前記平均化処理部は、前記計測された書込み量に基づいて前記対象管理単位の新たな割当先を前記未使用領域から選択して前記使用中領域として確保する
前記(1)から(3)のいずれかに記載のメモリコントローラ。
(5)前記平均化処理部は、前記未使用領域において前記アクセス単位の書込み量の総数が全体の平均値よりも所定の閾値以下となる前記管理単位を前記対象管理単位の新たな割当先として選択する
前記(4)に記載のメモリコントローラ。
(6)前記平均化処理部は、前記対象管理単位の物理アドレスの割当が変更された際、前記使用中領域において前記新たな割当先以外で前記アクセス単位の書込み量の総数が全体の平均値よりも所定の閾値以下となる前記管理単位を第2の対象管理単位として選択し、前記未使用領域において前記アクセス単位の書込み量の総数が最大となる前記管理単位を前記第2の対象管理単位の新たな割当先として選択して、前記第2の対象管理単位の前記アドレス変換における物理アドレスの割当を変更する
前記(5)に記載のメモリコントローラ。
(7)物理アドレスの割当変更対象となった旨を前記管理対象ごとに保持するフラグをさらに具備し、
前記平均化処理部は、前記新たな割当先に対応する前記フラグを物理アドレスの割当変更対象となった旨にセットし、前記使用中領域において前記第2の対象管理単位を選択する際に前記フラグがセットされているものを選択対象から除外する
前記(6)に記載のメモリコントローラ。
(8)前記平均化処理部は、前記対象管理単位の割当変更前の物理アドレスを前記未使用領域に割り当てる
前記(4)に記載のメモリコントローラ。
(9)前記平均化処理部は、前記対象管理単位の割当変更前の物理アドレスを前記使用中領域に割り当てて他の前記管理対象のために使用する
前記(4)に記載のメモリコントローラ。
(10)前記平均化処理部は、前記対象管理単位の前記アクセス単位の書込み量の総数が前記管理対象の全体の平均値よりも所定の閾値以上大きい場合には前記対象管理単位の割当変更前の物理アドレスを前記使用中領域に割り当てて他の前記管理対象のために使用し、それ以外の場合には前記対象管理単位の割当変更前の物理アドレスを前記未使用領域に割り当てる
前記(4)に記載のメモリコントローラ。
(11)前記管理単位における前記アクセス単位の配置順序を規定する情報を前記管理単位ごとに保持して、前記対象管理単位の物理アドレスの割当変更の前後においては前記対象管理単位における前記アクセス単位の配置順序として異なる順序を選択する選択部をさらに具備する前記(1)から(4)のいずれかに記載のメモリコントローラ。
(12)前記アクセス単位の配置順序を規定する情報は、互いに異なる複数の乱数列である前記(11)に記載のメモリコントローラ。
(13)メモリと、
前記メモリのアクセス単位を複数まとめた管理単位ごとに論理アドレスと物理アドレスとの間でアドレス変換を行うアドレス変換部と、
前記管理単位のそれぞれにおいて前記アクセス単位ごとの書込み量を計測する書込み量計測部と、
前記計測された書込み量に基づいて前記管理単位のうちから対象管理単位を選択して当該対象管理単位の前記アドレス変換における物理アドレスの割当を変更して、前記対象管理単位における前記アクセス単位の書込み量を平均化させる平均化処理部と
を具備するメモリシステム。
(14)メモリと、
前記メモリにアクセスするためのホストコマンドを発行するホストコンピュータと、
前記メモリのアクセス単位を複数まとめた管理単位ごとに前記ホストコマンドの論理アドレスと前記メモリの物理アドレスとの間でアドレス変換を行うアドレス変換部と、
前記管理単位のそれぞれにおいて前記アクセス単位ごとの書込み量を計測する書込み量計測部と、
前記計測された書込み量に基づいて前記管理単位のうちから対象管理単位を選択して当該対象管理単位の前記アドレス変換における物理アドレスの割当を変更して、前記対象管理単位における前記アクセス単位の書込み量を平均化させる平均化処理部と
を具備する情報処理システム。
(15)メモリのアクセス単位を複数まとめた管理単位ごとに論理アドレスと物理アドレスとの間でアドレス変換を行うアドレス変換手順と、
前記管理単位のそれぞれにおいて前記アクセス単位ごとの書込み量を計測する書込み量計測手順と、
前記計測された書込み量に基づいて前記管理単位のうちから対象管理単位を選択して当該対象管理単位の前記アドレス変換における物理アドレスの割当を変更して、前記対象管理単位における前記アクセス単位の書込み量を平均化させる平均化処理手順と
を具備するメモリ制御方法。
200 メモリコントローラ
201 ホストインターフェース
209 メモリインターフェース
210 書込み量計測部
220 書込み量情報テーブル
230 平均化処理部
240 セクション間コピー処理部
250 アドレス変換テーブル
260 アドレス変換部
280 乱数列選択部
290 メモリ制御部
300 メモリ
400 メモリシステム
Claims (15)
- メモリのアクセス単位を複数まとめた管理単位ごとに論理アドレスと物理アドレスとの間でアドレス変換を行うアドレス変換部と、
前記管理単位のそれぞれにおいて前記アクセス単位ごとの書込み量を計測する書込み量計測部と、
前記計測された書込み量に基づいて前記管理単位のうちから対象管理単位を選択して当該対象管理単位の前記アドレス変換における物理アドレスの割当を変更して、前記対象管理単位における前記アクセス単位の書込み量を平均化させる平均化処理部と
を具備するメモリコントローラ。 - 前記平均化処理部は、前記管理単位における前記アクセス単位の書込み量がその管理単位において偏りを生じた場合に、その管理単位を前記対象管理単位として選択する
請求項1記載のメモリコントローラ。 - 前記平均化処理部は、前記管理単位における前記アクセス単位の書込み量の最大値がその管理単位における前記アクセス単位の書込み量の平均値よりも所定の閾値を超えて大きい場合に、その管理単位を前記対象管理単位として選択する
請求項1記載のメモリコントローラ。 - 前記メモリの論理アドレス空間は、使用中領域と未使用領域とに分けて管理され、
前記平均化処理部は、前記計測された書込み量に基づいて前記対象管理単位の新たな割当先を前記未使用領域から選択して前記使用中領域として確保する
請求項1記載のメモリコントローラ。 - 前記平均化処理部は、前記未使用領域において前記アクセス単位の書込み量の総数が全体の平均値よりも所定の閾値以下となる前記管理単位を前記対象管理単位の新たな割当先として選択する
請求項4記載のメモリコントローラ。 - 前記平均化処理部は、前記対象管理単位の物理アドレスの割当が変更された際、前記使用中領域において前記新たな割当先以外で前記アクセス単位の書込み量の総数が全体の平均値よりも所定の閾値以下となる前記管理単位を第2の対象管理単位として選択し、前記未使用領域において前記アクセス単位の書込み量の総数が最大となる前記管理単位を前記第2の対象管理単位の新たな割当先として選択して、前記第2の対象管理単位の前記アドレス変換における物理アドレスの割当を変更する
請求項5記載のメモリコントローラ。 - 物理アドレスの割当変更対象となった旨を前記管理対象ごとに保持するフラグをさらに具備し、
前記平均化処理部は、前記新たな割当先に対応する前記フラグを物理アドレスの割当変更対象となった旨にセットし、前記使用中領域において前記第2の対象管理単位を選択する際に前記フラグがセットされているものを選択対象から除外する
請求項6記載のメモリコントローラ。 - 前記平均化処理部は、前記対象管理単位の割当変更前の物理アドレスを前記未使用領域に割り当てる
請求項4記載のメモリコントローラ。 - 前記平均化処理部は、前記対象管理単位の割当変更前の物理アドレスを前記使用中領域に割り当てて他の前記管理対象のために使用する
請求項4記載のメモリコントローラ。 - 前記平均化処理部は、前記対象管理単位の前記アクセス単位の書込み量の総数が前記管理対象の全体の平均値よりも所定の閾値以上大きい場合には前記対象管理単位の割当変更前の物理アドレスを前記使用中領域に割り当てて他の前記管理対象のために使用し、それ以外の場合には前記対象管理単位の割当変更前の物理アドレスを前記未使用領域に割り当てる
請求項4記載のメモリコントローラ。 - 前記管理単位における前記アクセス単位の配置順序を規定する情報を前記管理単位ごとに保持して、前記対象管理単位の物理アドレスの割当変更の前後においては前記対象管理単位における前記アクセス単位の配置順序として異なる順序を選択する選択部をさらに具備する請求項1記載のメモリコントローラ。
- 前記アクセス単位の配置順序を規定する情報は、互いに異なる複数の乱数列である請求項11記載のメモリコントローラ。
- メモリと、
前記メモリのアクセス単位を複数まとめた管理単位ごとに論理アドレスと物理アドレスとの間でアドレス変換を行うアドレス変換部と、
前記管理単位のそれぞれにおいて前記アクセス単位ごとの書込み量を計測する書込み量計測部と、
前記計測された書込み量に基づいて前記管理単位のうちから対象管理単位を選択して当該対象管理単位の前記アドレス変換における物理アドレスの割当を変更して、前記対象管理単位における前記アクセス単位の書込み量を平均化させる平均化処理部と
を具備するメモリシステム。 - メモリと、
前記メモリにアクセスするためのホストコマンドを発行するホストコンピュータと、
前記メモリのアクセス単位を複数まとめた管理単位ごとに前記ホストコマンドの論理アドレスと前記メモリの物理アドレスとの間でアドレス変換を行うアドレス変換部と、
前記管理単位のそれぞれにおいて前記アクセス単位ごとの書込み量を計測する書込み量計測部と、
前記計測された書込み量に基づいて前記管理単位のうちから対象管理単位を選択して当該対象管理単位の前記アドレス変換における物理アドレスの割当を変更して、前記対象管理単位における前記アクセス単位の書込み量を平均化させる平均化処理部と
を具備する情報処理システム。 - メモリのアクセス単位を複数まとめた管理単位ごとに論理アドレスと物理アドレスとの間でアドレス変換を行うアドレス変換手順と、
前記管理単位のそれぞれにおいて前記アクセス単位ごとの書込み量を計測する書込み量計測手順と、
前記計測された書込み量に基づいて前記管理単位のうちから対象管理単位を選択して当該対象管理単位の前記アドレス変換における物理アドレスの割当を変更して、前記対象管理単位における前記アクセス単位の書込み量を平均化させる平均化処理手順と
を具備するメモリ制御方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017138782 | 2017-07-18 | ||
JP2017138782 | 2017-07-18 | ||
PCT/JP2018/014241 WO2019017017A1 (ja) | 2017-07-18 | 2018-04-03 | ウェアレベリング処理を行うメモリコントローラ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2019017017A1 true JPWO2019017017A1 (ja) | 2020-05-28 |
JP7063900B2 JP7063900B2 (ja) | 2022-05-09 |
Family
ID=65015908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019530874A Active JP7063900B2 (ja) | 2017-07-18 | 2018-04-03 | ウェアレベリング処理を行うメモリコントローラ |
Country Status (3)
Country | Link |
---|---|
US (1) | US11269546B2 (ja) |
JP (1) | JP7063900B2 (ja) |
WO (1) | WO2019017017A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2020158059A1 (ja) * | 2019-01-31 | 2021-12-02 | ソニーセミコンダクタソリューションズ株式会社 | メモリ制御装置、メモリモジュールおよび情報処理システム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010038736A1 (ja) * | 2008-10-01 | 2010-04-08 | 株式会社日立製作所 | 半導体装置 |
WO2016077091A1 (en) * | 2014-11-13 | 2016-05-19 | Micron Technology, Inc | Memory wear leveling |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101437123B1 (ko) | 2008-04-01 | 2014-09-02 | 삼성전자 주식회사 | 메모리 시스템 및 그것의 마모도 관리 방법 |
JP5569469B2 (ja) | 2011-05-25 | 2014-08-13 | 株式会社デンソー | 電子機器 |
US20160011782A1 (en) | 2013-02-27 | 2016-01-14 | Hitachi, Ltd. | Semiconductor storage |
-
2018
- 2018-04-03 US US16/629,615 patent/US11269546B2/en active Active
- 2018-04-03 WO PCT/JP2018/014241 patent/WO2019017017A1/ja active Application Filing
- 2018-04-03 JP JP2019530874A patent/JP7063900B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010038736A1 (ja) * | 2008-10-01 | 2010-04-08 | 株式会社日立製作所 | 半導体装置 |
WO2016077091A1 (en) * | 2014-11-13 | 2016-05-19 | Micron Technology, Inc | Memory wear leveling |
Also Published As
Publication number | Publication date |
---|---|
US20210081136A1 (en) | 2021-03-18 |
US11269546B2 (en) | 2022-03-08 |
WO2019017017A1 (ja) | 2019-01-24 |
JP7063900B2 (ja) | 2022-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10761977B2 (en) | Memory system and non-transitory computer readable recording medium | |
US9779022B2 (en) | Methods for caching and reading data to be programmed into a storage unit and apparatuses using the same | |
CN110187999B (zh) | 地址映射数据备份方法及装置 | |
US9891825B2 (en) | Memory system of increasing and decreasing first user capacity that is smaller than a second physical capacity | |
JP2008130088A (ja) | 不揮発性メモリ管理方法及び装置 | |
US8892812B2 (en) | Flash memory device and data writing method for a flash memory | |
US11269783B2 (en) | Operating method for data storage device | |
JP2015184856A (ja) | メモリコントローラ、記憶装置、情報処理システム、および、それらにおける制御方法。 | |
JP5093294B2 (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
US8185686B2 (en) | Memory system and a control method thereof | |
TWI556103B (zh) | 記憶體裝置及其資料存取方法 | |
US8380920B2 (en) | Flash storage device and data access method of flash memory | |
JP7063900B2 (ja) | ウェアレベリング処理を行うメモリコントローラ | |
JP5858081B2 (ja) | メモリコントローラ、メモリシステム及びメモリ制御方法 | |
US20230281118A1 (en) | Memory system and non-transitory computer readable recording medium | |
KR20150142250A (ko) | 컨트롤러의 작동 방법과 상기 컨트롤러를 포함하는 장치의 작동 방법 | |
US10754771B2 (en) | Storage device and storage control method | |
US20110258369A1 (en) | Data Writing Method and Data Storage Device | |
US20150067237A1 (en) | Memory controller, semiconductor memory system, and memory control method | |
JP4558054B2 (ja) | メモリシステム | |
JP2016053808A (ja) | 記憶制御装置、記憶装置、および、記憶制御方法 | |
JP2005092678A (ja) | 半導体メモリカード及び不揮発性メモリのデータ消去処理方法 | |
CN111201517A (zh) | 存储器存取装置、存储系统和信息处理系统 | |
JP6276208B2 (ja) | メモリシステム及びプログラム | |
KR20210118086A (ko) | 메모리 제어 장치, 메모리 모듈 및 정보 처리 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210217 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220125 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220314 |
|
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: 20220329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220421 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7063900 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |