JP6236720B2 - 記憶デバイスに対する書き込み方法および書き込み装置 - Google Patents

記憶デバイスに対する書き込み方法および書き込み装置 Download PDF

Info

Publication number
JP6236720B2
JP6236720B2 JP2016533651A JP2016533651A JP6236720B2 JP 6236720 B2 JP6236720 B2 JP 6236720B2 JP 2016533651 A JP2016533651 A JP 2016533651A JP 2016533651 A JP2016533651 A JP 2016533651A JP 6236720 B2 JP6236720 B2 JP 6236720B2
Authority
JP
Japan
Prior art keywords
group
stuck
bits
fault
groups
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.)
Active
Application number
JP2016533651A
Other languages
English (en)
Other versions
JP2017501483A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2017501483A publication Critical patent/JP2017501483A/ja
Application granted granted Critical
Publication of JP6236720B2 publication Critical patent/JP6236720B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • G11C11/417Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
    • G11C11/419Read-write [R-W] circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0035Evaluating degradation, retention or wearout, e.g. by counting writing cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information

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)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Optical Recording Or Reproduction (AREA)
  • Detection And Correction Of Errors (AREA)

Description

本願は、2013年11月22日に中国特許庁に出願され、且つ、“WRITE METHOD AND WRITE APPARATUS FOR STORAGE DEVICE”と題する、中国特許出願番号201310597968.2に優先権を主張し、その全体が参照によって本明細書に組み込まれる。
本発明の実施形態はコンピュータ記憶の分野に関し、より詳細には、記憶デバイスに対する書き込み方法および書き込み装置に関する。
インピーダンス記憶デバイスでは、媒体の異なるインピーダンス状態は、情報“0”および“1”を別々に示すために使用される。しかしながら、たいていのインピーダンス記憶デバイスは書き込み寿命を有し、且つ、頻繁な書き込み操作は縮退故障(stuck-at fault)の発生を引き起こし得る。
インピーダンス記憶デバイス内でハードウェアエラーstuck-at faultが発生するとき、エラーが発生した記憶ユニットは固定値“0”または“1”を保持し、且つ、ユニットの値は永久にこれ以上書き換えられることはできない。加えて、stuck-at fault発生の確率は一時エラー(transient error)の確率よりもはるかに高く、且つ、stuck-at faultはインピーダンスメモリにおける主要な障害エラーとなる。
既存のメモリシステムにおけるハミングコードに基づくマルチビットエラー訂正機構は、このタイプのstuck-at faultを訂正するために使用されることができるが、ハミングコードに基づくマルチビットエラー訂正機構は書き込み集中的であり、このことは、システム内のstuck-at fault発生を増加させ得る。
本発明の実施形態は記憶デバイスに対する書き込み方法および書き込み装置を提供し、このことは、stuck-at faultが発生した記憶デバイスの書き込みエラーの問題を解決することができる。
第1の態様によると、記憶デバイスに対する書き込み方法が提供され、ここで、書き込み方法は、書き込まれる必要があるn個の数値を取得するステップと、書き込まれる必要があるn個の数値に対応する、記憶デバイス内のn個のビットと、n個のビットに含まれるstuck-at faultについての情報とを決定するステップであって、ここで、stuck-at faultについての情報は、n個のビットにおけるstuck-at faultの位置と、stuck-at faultが位置するビットの数値とを含む、ステップと、B個のグループのビットが分類条件を満たし、且つ、n個のビットがB行A列の2次元配列を表すとき、n個のビットにおける、同じグループに属する任意の2個のビットは異なる行および列内にあるか、または、n個のビットにおける、同じグループに属する任意の2個のビットは同じ行内にあるように、n個のビットをB個のグループのビットに分類するステップであって、ここで、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプまたは数を制限するために使用される、ステップと、n個のビットに、分類方式に従って、且つ、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、B個のグループのビットにおける各グループのビット内のstuck-at faultが位置するビットに対応する数値とに従って、書き込まれる必要があるn個の数値を対応して書き込むステップとを含み、ここで、n、AおよびBは正の整数であり、且つ、n≦A×Bである。
第1の態様を参照すると、第1の可能な実施方式では、B個のグループのビットが分類条件を満たすように、n個のビットをB個のグループのビットに分類するステップは、n個のビットがB行A列の2次元配列を表すとき、B行A列の2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの位置が、
pi,j+1=pi,j+1およびqi,j+1=(qi,j+k)modB
を満たすように、n個のビットをB個のグループのビットに分類するステップと、B個のグループのビットが分類条件を満たすように、kの値を調整するステップとを含み、ここで、pi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの列番号であり、qi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの行番号であり、iおよびqi,jは、B以下の正の整数であり、jおよびpi,jは、A以下の正の整数であり、kはBよりも小さい非負整数であり、kの値を調整するステップは、kの値を1増やすステップを含み、ここで、Bは
以上の最小素数であり、且つ、
である。
第1の態様または第1の態様の第1の可能な実施方式を参照すると、第2の可能な実施方式では、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultの数が1を超えないことを含む。
第1の態様または第1の態様の第1の可能な実施方式を参照すると、第3の可能な実施方式では、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプが同じであることを含み、ここで、stuck-at faultのタイプはstuck-at right faultとstuck-at wrong faultとを含み、stuck-at right faultは、stuck-at faultが位置する1番目のビットの数値が、書き込まれる必要があり、且つ、1番目のビットに対応する数値と等しいことを指し、stuck-at wrong faultは、stuck-at faultが位置する2番目のビットの数値が、書き込まれる必要があり、且つ、2番目のビットに対応する数値と反対であることを指す。
第1の態様または第1の態様の前述の可能な実施方式のいずれか1つを参照すると、第4の可能な実施方式では、n個のビットに、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、書き込まれる必要があるn個の数値を対応して書き込むステップは、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプを決定するステップと、n個のビットに、B個のグループのビットとB個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプとに従って、書き込まれる必要があるn個の数値を対応して書き込むステップとを含む。
第1の態様の第4の可能な実施方式を参照すると、第5の可能な実施方式では、n個のビットに、B個のグループのビットとB個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプとに従って、書き込まれる必要があるn個の数値を対応して書き込むステップは、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであるとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を対応して反転し、反転の後に得られた数値をi番目のグループのビットに書き込むステップであって、ここで、iはB以下の正の整数である、ステップを含む。
第1の態様の第4の可能な実施方式を参照すると、第6の可能な実施方式では、n個のビットに、B個のグループのビットとB個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプとに従って、書き込まれる必要があるn個の数値を対応して書き込むステップは、フラグビットmiをB個のグループのビットにおけるi番目のグループのビットに割り当てるステップであって、ここで、miは、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプを示すために使用される、ステップと、i番目のグループのビットに、フラグビットmiに従って、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を対応して書き込むステップであって、ここで、iはB以下の正の整数である、ステップとを含む。
第1の態様の第6の可能な実施方式を参照すると、第7の可能な実施方式では、i番目のグループのビットに、フラグビットmiに従って、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を対応して書き込むステップは、フラグビットmi=1のとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を反転して、反転の後に得られた数値をi番目のグループのビットに書き込むステップであって、ここで、フラグビットmi=1は、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであることを示す、ステップを含む。
第2の態様によると、記憶デバイスに対する書き込み装置が提供され、ここで、書き込み装置は、書き込まれる必要があるn個の数値を取得するように構成された取得ユニットと、書き込まれる必要があるn個の数値に対応するn個のビットと、n個のビットに含まれるstuck-at faultについての情報とを決定するように構成された第1決定ユニットであって、ここで、stuck-at faultについての情報は、n個のビットにおけるstuck-at faultの位置と、stuck-at faultが位置するビットの数値とを含む、第1決定ユニットと、B個のグループのビットが分類条件を満たし、且つ、n個のビットがB行A列の2次元配列を表すとき、n個のビットにおける、同じグループに属する任意の2個のビットは異なる行および列内にあるか、または、n個のビットにおける、同じグループに属する任意の2個のビットは同じ行内にあるように、n個のビットをB個のグループのビットに分類するように構成された分類ユニットであって、ここで、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプまたは数を制限するために使用される、分類ユニットと、n個のビットに、分類方式に従って、且つ、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、B個のグループのビットにおける各グループのビット内のstuck-at faultが位置するビットに対応する数値とに従って、書き込まれる必要があるn個の数値を対応して書き込むように構成された書き込みユニットとを含み、ここで、n、AおよびBは正の整数であり、且つ、n≦A×Bである。
第2の態様を参照すると、第1の可能な実施方式では、分類ユニットは、具体的には、
n個のビットがB行A列の2次元配列を表すとき、B行A列の2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの位置が、
pi,j+1=pi,j+1およびqi,j+1=(qi,j+k)modB
を満たすように、n個のビットをB個のグループのビットに分類し、B個のグループのビットが分類条件を満たすように、kの値を調整するように構成され、ここで、pi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの列番号であり、qi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの行番号であり、iおよびqi,jは、B以下の正の整数であり、jおよびpi,jは、A以下の正の整数であり、kはBよりも小さい非負整数であり、kの値を調整することは、kの値を1増やすことを含み、ここで、Bは
以上の最小素数であり、且つ
である。
第2の態様または第2の態様の第1の可能な実施方式を参照すると、第2の可能な実施方式では、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultの数が1を超えないことである。
第2の態様または第2の態様の第1の可能な実施方式を参照すると、第3の可能な実施方式では、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプが同じであることであり、ここで、stuck-at faultのタイプはstuck-at right faultとstuck-at wrong faultとを含み、stuck-at right faultは、stuck-at faultが位置する1番目のビットの数値が、書き込まれる必要があり、且つ、1番目のビットに対応する数値と等しいことを指し、且つ、stuck-at wrong faultは、stuck-at faultが位置する2番目のビットの数値が、書き込まれる必要があり、且つ、2番目のビットに対応する数値と反対であることを指す。
第2の態様または第2の態様の前述の可能な実施方式のいずれか1つを参照すると、第4の可能な実施方式では、書き込みユニットは、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプを決定するように構成された第2決定ユニットと、n個のビットに、B個のグループのビットとB個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプとに従って、書き込まれる必要があるn個の数値を対応して書き込むように構成された第1書き込みユニットとを含む。
第2の態様の第4の可能な実施方式を参照すると、第5の可能な実施方式では、第1書き込みユニットは、具体的には、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであるとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を、対応して反転し、反転の後に得られた数値をi番目のグループのビットに書き込むように構成され、ここで、iはB以下の正の整数である。
第2の態様の第4の可能な実施方式を参照すると、第6の可能な実施方式では、書き込みユニットは割り当てユニットをさらに含み、ここで、割り当てユニットは、フラグビットmiをB個のグループのビットにおけるi番目のグループのビットに割り当てるように構成され、ここで、miは、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプを示すために使用され、第1書き込みユニットは、具体的には、i番目のグループのビットに、フラグビットmiに従って、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を対応して書き込むように構成され、ここで、iはB以下の正の整数である。
第2の態様の第6の可能な実施方式を参照すると、第7の可能な実施方式では、第1書き込みユニットは、具体的には、フラグビットmi=1のとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を反転して、反転の後に得られた数値をi番目のグループのビットに書き込むように構成され、ここで、フラグビットmi=1は、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであることを示す。
本発明の実施形態では、同じグループ内の2個の隣接するビット間の間隔を調整することによって、n個のビットはB個のグループに分類されると決定され、且つ、書き込まれる必要がある数値は、B個のグループの各グループ内のstuck-at faultについての情報に従って、n個のビットに、対応して書き込まれることができ、その結果、インピーダンス記憶デバイス内のstuck-at faultによって引き起こされる書き込みエラーが有効に回避されることができる。
本発明の実施形態における技術的解決手段をより明確に説明するために、実施形態を説明するために必要な添付図面を以下で簡潔に導入する。明らかに、以下の説明における添付図面は単に本発明のいくつかの実施形態を示し、且つ当業者は創造的努力なしにこれらの添付図面から他の図面をさらに導出することができる。
図1は、本発明の実施形態に係る記憶デバイスに対する書き込み方法のフローチャートである。 図2は、本発明の別の実施形態に係る記憶デバイスに対する書き込み方法のフローチャートである。 図3は、本発明の別の実施形態に係る記憶デバイスに対する書き込み方法のフローチャートである。 図4は、本発明の別の実施形態に係る記憶デバイスに対する書き込み方法の具体例の概略図である。 図5は、本発明の実施形態に係る記憶デバイスに対する書き込み装置のブロック図である。 図6は、本発明の実施形態に係る記憶デバイスに対する書き込み装置のブロック図である。
以下では、本発明の実施形態における添付図面を参照して、本発明の実施形態における技術的解決手段を明確且つ完全に説明する。明らかに、説明される実施形態は一部であるが、本発明の実施形態の全てではない。創造的努力なしに本発明の実施形態に基づいて当業者によって得られる全ての他の実施形態は、本発明の保護範囲内に包含されるべきである。
図1は、本発明の実施形態に係る記憶デバイスに対する書き込み方法のフローチャートである。図1に示される書き込み方法は以下を含む。
101. 書き込まれる必要があるn個の数値を取得する。
102. 書き込まれる必要があるn個の数値に対応するn個のビットと、n個のビットに含まれるstuck-at faultについての情報とを決定し、ここで、stuck-at faultについての情報は、n個のビットにおけるstuck-at faultの位置と、stuck-at faultが位置するビットの数値とを含む。
103. B個のグループのビットが分類条件を満たし、且つ、n個のビットがB行A列の2次元配列を表すとき、n個のビットにおける、同じグループに属する任意の2個のビットは異なる行および列内にあるか、または、n個のビットにおける、同じグループに属する任意の2個のビットは同じ行内にあるように、n個のビットをB個のグループのビットに分類し、ここで、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプまたは数を制限するために使用される。
104. n個のビットに、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、書き込まれる必要があるn個の数値を対応して書き込み、ここで、n、AおよびBは正の整数であり、且つ、n≦A×Bである。
本発明の本実施形態では、同じグループ内の2個の隣接するビット間の間隔を調整することによって、n個のビットはB個のグループに分類されると決定され、且つ、書き込まれる必要がある数値は、B個のグループの各グループ内のstuck-at faultについての情報に従って、n個のビットに、対応して書き込まれることができ、その結果、インピーダンス記憶デバイス内のstuck-at faultによって引き起こされる書き込みエラーが有効に防止されることができる。
ステップ102において、n個のビットは、ステップ101におけるn個の数値が対応して書き込まれる必要がある位置である。加えて、n個のビットが決定されるとき、n個のビットに含まれるstuck-at faultについての情報もまた決定されてよい。stuck-at faultについての情報は、n個のビットに含まれるstuck-at faultの数、n個のビット内のstuck-at faultの位置、およびstuck-at faultが位置するビットの数値を含んでよい。
理解を容易にするために、ステップ102で決定されるn個のビットは、1からnに番号付けされてよく、これらはまた、n個のビットの位置番号として理解されてよい。
ステップ103では、まず、n個のビットに対して初期分類が実行される。初期分類は、n個のビットが初期分類中にB個のグループのビットに分類されるように、n個のビットにおける各A個のビットが1個のグループとして連続的に分類されることであってよく、ここで、B個のグループのビットにおける最初のB-1個のグループのビットの各々は、A個のビットを含み、且つ、B番目のグループのビット、すなわち、最後のグループのビットは、n-A×(B-1)個のビットを含む。
任意で、ステップ103では、n個のビットがB行A列の2次元配列を表すとき、B行A列の2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの位置が、
pi,j+1=pi,j+1およびqi,j+1=(qi,j+k)modB
を満たすべきであるように、n個のビットはB個のグループのビットに分類されることが理解されてよい。加えて、B個のグループのビットが分類条件を満たすように、kの値が調整されてよく、ここで、
pi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの列番号であり、qi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの行番号であり、iおよびqi,jは、B以下の正の整数であり、jおよびpi,jは、A以下の正の整数であり、kはBよりも小さい非負整数であり、kの値を調整することは、kの値を1増やすことを含み、ここで、Bは
以上の最小素数であり、且つ、
である。
具体的には、n個のビットは、初期分類に従って、2次元配列に相互に対応してよい。例えば、2次元配列における1個の行は、初期分類における1個のグループに対応してよく、すなわち、k=0であってよい。あるいは、n個のビットにおけるビットの位置番号がxであり、且つ、2次元配列におけるビットの対応する行および列がaおよびbであると仮定される場合、x=(b-1)×A+aが満たされるべきである。
初期グループに対応するkもまた、1、2またはB-1等の、Bよりも小さい別の整数であってよく、このことは本発明で限定されないことは留意されるべきである。
任意で、ステップ103では、n個のビットにおける、B個のグループのビットの各々における2個の隣接するビットの位置番号間の差はk×A+1であり、または、すなわち、n個のビットにおけるk×A+1の間隔をおいたビットは同じグループに属するように、n個のビットがB個のグループのビットに分類されることもまた理解されてよい。具体的には、n=A×Bの場合、n個のビットにおけるn番目のビットの次のビットはn個のビットの1番目のビットであるとみなされてよく、または、n個のビットはヘッドトゥテール(head-to-tail)の環状にリンクされるとともに間隔を置いて分類されるとみなされてよい。n<A×Bの場合、n+1番目のビットからA×B番目のビットは空であり、n個のビットにおけるn番目のビットの次のビットは空のn+1番目のビットであり、A×B番目のビットの次のビットはn個のビットにおける1番目のビットであるとみなされてよく、または、A×B個のビットはヘッドトゥテールの環状にリンクされるとともに間隔を置いて分類されるとみなされてよい。
任意で、ステップ103では、n個のビットが2次元デカルト座標系におけるn個のデータポイントに対応するとき、同じグループに属する任意の2個のビットに対応する2個のデータポイントは2次元デカルト座標系において同じ垂直座標を有するか、または、同じグループに属する任意の2個のビットに対応する2個のデータポイントは2次元デカルト座標系において異なる水平座標および垂直座標を有するように、n個のビットがB個のグループのビットに分類されると理解されてもまたよい。加えて、同じ傾きを有する複数の直線が作られてよく、且つ、同じ直線における全てのデータポイントは同じグループに属する。加えて、複数の直線の傾きはkである。
具体的には、n個のビットと2次元デカルト座標系におけるn個のデータポイントとの間の対応のために、前述のn個のビットと2次元配列におけるポイントとの間の対応を参照されたい。例えば、同じ垂直座標を有する、且つ、2次元デカルト座標系におけるn個のデータポイント内のデータポイントは、n個のビットの初期グループにおける1個のグループに対応してよく、すなわち、傾きk=0である。任意で、初期グループに対応するkもまた、B-1の値の別の整数であってもよく、このことは本発明で限定されない。
前述の説明は、異なる数学的な見地からのみ実行される分類の分析であり、ここで、共通パラメータはkであることは留意されるべきである。パラメータkは、n個のビットにおける、同じグループ内の2個の隣接するビット間の位置間隔はk×A+1であると理解されてよい。パラメータkはまた、同じグループ内の2個の隣接するビットが2次元配列内で位置する行の間の差として理解されてもよい。パラメータkはまた、同じグループ内のビットが2次元デカルト座標系内で位置する線の傾きとして理解されてもよい。さらなる分類の調整の間、kの値を調整することによって、新しいグループが決定されてよい。ここで、kの値を調整することは、kの値を1増やすことであってよく、例えば、0から1に増やすこと、または1から2に増やすことであってよい。kの値の範囲は、0からB-1のB個の整数を含む。
当業者は、パラメータkの値の変化を使用することによって、グループを決定することとして表されることができる方式は、例え別の数学的手法または方法が分析を実行するために使用されたとしても、本発明の本実施形態の範囲に依然として包含されることを理解することができる。
任意で、実施形態として、ステップ103で説明される分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultの数は1を超えないという、第1の分類条件であってよい。
任意で、別の実施形態として、ステップ103で説明される分類条件は第2の分類条件であってよく、第2の分類条件では、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプが同じであり、ここで、stuck-at faultのタイプはstuck-at right faultとstuck-at wrong faultとを含み、stuck-at right faultは、stuck-at faultが位置する1番目のビットの数値が、書き込まれる必要があり、且つ、1番目のビットに対応する数値と等しいことを指し、stuck-at wrong faultは、stuck-at faultが位置する2番目のビットの数値が、書き込まれる必要があり、且つ、2番目のビットに対応する数値と反対であることを指す。
第1の分類条件を満たす分類方式では、同じグループに含まれるstuck-at faultの数は0または1である。第2の分類条件を満たす分類方式では、同じグループに含まれるstuck-at faultの数は0であってよく、または1以上であってよい。
任意で、実施形態として、ステップ104では、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプが決定される。次いで、B個のグループのビットとB個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプとに従って、書き込まれる必要があるn個の数値が、n個のビットに、対応して書き込まれる。
具体的には、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであるとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値は反転され、次いで、i番目のグループのビットに書き込まれてよく、ここで、iはB以下の正の整数である。
具体的には、別の実施形態として、対応するフラグビットmiがB個のグループのビットにおけるi番目のグループのビットに割り当てられてよく、ここで、miは、i番目のグループのビットに含まれるstuck-at faultのタイプを示すために使用され、さらに、フラグビットmiに従って、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値は、i番目のグループのビットに、対応して書き込まれ、ここで、iはB以下の正の整数である。
例えば、mi=1は、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであることを示すために使用されてよい。加えて、mi=1であるとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値が対応して反転され、次いで、i番目のグループのビットに書き込まれる。
例えば、B個の成分を有するベクトルmがB個のグループのビットに割り当てられてよく、ここで、ベクトルのi番目の成分は、B個のグループのビットにおけるi番目のグループのビットのフラグビットmiに対応する。加えて、ベクトルmにおける各成分の初期値は0に設定されてよい。グループに含まれるstuck-at faultがstuck-at wrong faultであると決定されることができるとき、グループに対応するフラグビットは1に設定される。書き込み中、そのフラグビットが1であるグループに対して、書き込まれる必要があり、且つ、グループに対応する数値が対応して反転され、次いで、書き込まれる。
具体的な書き込み方式は、本発明の本実施形態では限定されないことは留意されるべきである。任意で、書き込みは決定されたグループに従って実行されてよい。例えば、B個のグループのビットのn個の数値の書き込みが完了するまで、書き込まれる必要があり、且つ、決定されたグループにおける1番目のグループのビットに対応する数値が最初に書き込まれてよく、次いで、書き込まれる必要があり、且つ、決定されたグループにおける2番目のグループのビットに対応する数値が書き込まれる、等々である。あるいは、書き込みは、順に、または逆順に、n個のビットの位置番号に従って実行されてよい。例えば、n個の数値の書き込みが完了するまで、まず、n個のビットにおける1番目のビットが位置するグループが決定されてよく、1番目のビットが位置するグループに対応するフラグビットに従って、書き込みが実行され、次いで、n個のビットにおける2番目のビットが位置するグループが決定され、2番目のビットが位置するグループに対応するフラグビットに従って、書き込みが実行される、等々である。当業者は、別の方式において書き込みを完了することは、本発明の本実施形態の範囲に依然として包含されることを理解することができる。
本発明の本実施形態では、決定されたグループの数は固定され、且つ、変更されず、すなわち、グループの数はn個のビットに対してBのままである。加えて、kの値は0からB-1のB個の整数であり、且つ、グループを決定するためにkを調整する最大回数はB回である。このように、分類効率が保証されることができる。加えて、この分類方式は、実施中、比較的単純である。
本発明の本実施形態では、分類条件の決定は、各書き込み中に実行される必要がある。例えば、第1の書き込み中、決定されたグループに対応するkはk1と等しく、第2の書き込み中、分類条件の決定が実行され、且つ、初期グループに対応するkはk1と等しく、分類調整はk=k1に基づいて実行されてよく、且つ、第2の書き込み中に分類条件を満たす、対応するkが決定される。
図2は、本発明の別の実施形態に係る記憶デバイスに対する書き込み方法のフローチャートである。図2に示される書き込み方法は、以下を含む。
201. 書き込まれる必要があるn個の数値を取得する。
202. 書き込まれる必要があるn個の数値に対応するn個のビットと、n個のビットに含まれるstuck-at faultについての情報とを決定し、ここで、stuck-at faultについての情報は、n個のビットにおけるstuck-at faultの位置と、stuck-at faultが位置するビットの数値とを含む。
203. 初期グループと、stuck-at faultが位置するグループとを決定する。
具体的には、n個のビットは最初にB個のグループのビットに分類されてよく、最初のB-1個のグループのビットにおける各グループのビットはA個のビットを含み、B番目のグループのビットはn-A×(B-1)個のビットを含む。例えば、n個のビットにおいて、1番目のビットからA番目のビットは1番目のグループに分類され、A+1番目のビットから2A番目のビットは2番目のグループに分類される等々である。
この分類方式は、k=0に対応する。kに関係する説明は、上述の説明と同じであり、繰り返しを防ぐために、詳細はここでは再び説明されない。
初期グループに対応するkもまた、B-1の別の整数であってもよく、このことは本発明で限定されないことは留意されるべきである。
204. グループが第1の分類条件を満たしているかどうか判定し、グループが第1の分類条件を満たしていないとき、ステップ205を実行し、且つ、グループが第1の分類条件を満たしているとき、ステップ206を実行する。
ステップ202における決定することの間に、n個のビット内で発生したstuck-at faultの数がBよりも大きいことがわかった場合、第1の分類条件は、この方式で分類を実行することによって満たされることはできないことは留意されるべきである。あるいは、他方では、ステップ204における判定することの間に、第1の分類条件が満たされていないとわかったとき、ステップ205が実行される。kが0からB-1まで増えるとき、グループは、kがB個の値のいずれか1個であるとき、第1の分類条件を満たさない。
205. kの値を1増やして分類を再び実行する。
kの値が1増えるとき、分類方式が再び決定されるとともに、分類方式は上述の分類方式と同じであり、繰り返しを防ぐために、詳細はここでは再び説明されない。
206. グループの各グループに含まれるstuck-at faultのタイプを決定する。
具体的には、stuck-at fault のタイプを決定するために、stuck-at faultが位置するビットの数値と、書き込まれる必要があり、且つ、ビットに対応する数値が比較される。ビットの数値が、書き込まれる必要があり、且つ、ビットに対応する数値と同じであるとき、stuck-at faultのタイプはstuck-at right faultである。ビットの数値が、書き込まれる必要があり、且つ、ビットに対応する数値と反対であるとき、stuck-at faultのタイプはstuck-at wrong faultである。
207. ステップ206で決定されたタイプに従って、1個のフラグビットを各グループに割り当てる。
具体的には、stuck-at faultのタイプがstuck-at wrong faultである場合、フラグビット1が、stuck-at faultが位置するグループに割り当てられてよく、且つ、フラグビット0が、stuck-at faultを含まないグループおよびタイプがstuck-at right faultであるstuck-at faultが位置するグループに割り当てられる。
208. 決定されたグループと、対応するフラグビットとに従って、n個の数値を書き込む。
具体的には、そのフラグビットが1であるグループの数値は対応して反転され、次いで、書き込まれ、そのフラグビットが0であるグループは通常通り対応して書き込まれる。
本発明の本実施形態では、同じグループ内の2個の隣接するビット間の間隔を調整することによって、n個のビットはB個のグループに分類されると決定され、且つ、書き込まれる必要がある数値は、B個のグループの各グループ内のstuck-at faultについての情報に従って、n個のビットに、対応して書き込まれることができ、その結果、インピーダンス記憶デバイス内のstuck-at faultによって引き起こされる書き込みエラーが有効に防止されることができる。
図3は、本発明の別の実施形態に係る記憶デバイスに対する書き込み方法のフローチャートである。図3に示される書き込み方法は以下を含む。
301. 書き込まれる必要があるn個の数値を取得する。
302. 書き込まれる必要があるn個の数値に対応するn個のビットと、n個のビットに含まれるstuck-at faultについての情報とを決定し、ここで、stuck-at faultについての情報は、n個のビットにおけるstuck-at faultの位置と、stuck-at faultが位置するビットの数値と、stuck-at faultのタイプとを含む。
具体的には、stuck-at fault のタイプを決定するために、stuck-at faultが位置するビットの数値と、書き込まれる必要があり、且つ、ビットに対応する数値が比較される。ビットの数値が、書き込まれる必要があり、且つ、ビットに対応する数値と同じであるとき、stuck-at faultのタイプはstuck-at right faultである。ビットの数値が、書き込まれる必要があり、且つ、ビットに対応する数値と反対であるとき、stuck-at faultのタイプはstuck-at wrong faultである。
303. 初期グループと、stuck-at faultが位置するグループとを決定する。
具体的には、n個のビットは最初にB個のグループのビットに分類されてよく、最初のB-1個のグループのビットにおける各グループのビットはA個のビットを含み、B番目のグループのビットはn-A×(B-1)個のビットを含む。例えば、n個のビットにおいて、1番目のビットからA番目のビットは1番目のグループに分類され、A+1番目のビットから2A番目のビットは2番目のグループに分類される等々である。
この分類方式は、k=0に対応する。kに関係する説明は、上述の説明と同じであり、繰り返しを防ぐために、詳細はここでは再び説明されない。
初期グループに対応するkもまた、B-1の別の整数であってもよく、このことは本発明で限定されないことは留意されるべきである。
304. グループが第2の分類条件を満たしているかどうか判定し、グループが第2の分類条件を満たしていないとき、ステップ305を実行し、且つ、グループが第2の分類条件を満たしているとき、ステップ306を実行する。
305. kの値を1増やして分類を再び実行する。
306. 決定されたグループの各グループに含まれるstuck-at faultのタイプに従って、1個のフラグビットを各グループに割り当てる。
307. 決定されたグループと、対応するフラグビットとに従って、n個の数値を書き込む。
本発明の本実施形態では、同じグループ内の2個の隣接するビット間の間隔を調整することによって、n個のビットはB個のグループに分類されると決定され、且つ、書き込まれる必要がある数値は、B個のグループの各グループ内のstuck-at faultについての情報に従って、n個のビットに、対応して書き込まれることができ、その結果、インピーダンス記憶デバイス内のstuck-at faultによって引き起こされる書き込みエラーが有効に防止されることができる。
図4は、本発明の別の実施形態に係る記憶デバイスに対する書き込み方法の具体例の概略図である。図4に示される方法では、本発明の本実施形態を説明するための具体例として、n=32が使用される。
図4に示される各行は32個のビットにおける数値である。図4における破線は、stuck-at faultが発生した位置を示す。
n=32は、図4における実施形態の説明のための例として使用されることは留意されるべきである。しかしながら、当業者は、nは別の正の整数であってよく、且つ、そのような変更は、本発明の本実施形態の範囲に依然として包含されることを理解することができる。
データブロックがn=32個のビットを含むと想定される。32個のビットの数値、すなわち、書き込みが実行される前のn個の数値は、図4における1番目の行内に示される。32個のビットが位置する位置は、1から32に番号付けされ、且つ、32個のビットが位置する位置番号および対応する数値は表1に示される。32個のビット内で、stuck-at faultが発生した位置番号は、7、9、16、17および27である。
本発明の本実施形態では、位置番号は、データブロックのn個のビットを番号付けすることによって生成されたシーケンス番号を参照することは留意されるべきである。
書き込まれる必要があり、且つ、32個のビットに対応する数値は、すなわち、書き込まれる必要があるn個の数値は、図4における2番目の行内に示される。書き込まれる必要があり、且つ、32個の位置番号に対応する32個の数値は、表2に示される。
Bは
以上の最小素数として与えられ、すなわち、B=7であり、
が与えられ、すなわちA=5である。
表1に示されるn=32個のビットは、表3に示されるように、B=7行A=5列の2次元配列として表される。説明を容易にするために、表3に示される2次元配列は、表1に示される数値に対応する位置番号を含む。加えて、この2次元配列の1個の行は1個のグループを表し、すなわち、同じグループに属する任意の2個のビットは同じ行内にある。説明を容易にするために、位置番号33、34および35が、本発明の本実施形態において、表3内で仮定として補足される。対応して、その位置番号が33、34および35であるビットは空であると仮定される。
表3では、2次元配列において、位置番号xの行番号および列番号はaおよびbであると想定される場合、表3における位置番号の分布はx=(b-1)×A+aを満たす。
表3は例示的な説明でしかなく、且つ、7行5列の2次元配列として32個の位置番号を表す唯一の表現ではないことは留意されるべきである。例えば、32個の位置番号もまた、垂直に配置されてもよく、すなわち、x=(b-1)×B+aが満たされ、このことは本発明で限定されない。
32個のビットはB=7個のグループに分類され、且つ、表3に示される2次元配列の各行は、対応して1個のグループとみなされ、すなわち、2次元配列の行数は、グループの数とみなされる。1番目のグループに対応する位置番号は1、2、3、4および5であり、2番目のグループに対応する位置番号は6、7、8、9および10であり、3番目のグループに対応する位置番号は11、12、13、14および15であり、4番目のグループに対応する位置番号は16、17、18、19および20であり、5番目のグループに対応する位置番号は21、22、23、24および25であり、6番目のグループに対応する位置番号は26、27、28、29および30であり、7番目のグループに対応する位置番号は31および32である。
n=32個のビットは7個のグループに分類され、且つ、各グループに含まれるビットの数はA=5を超えないことは留意されるべきである。3個の仮定された位置番号33、34および35が含まれる場合、各グループは前述の分類方式において5個の位置番号を含むとみなされてよい。
このように、32個の位置番号は7個のグループに分類される。第1の見地から、この分類方式は以下のように理解されてよい。2次元配列における、7個のグループにおけるi番目のグループのj番目の位置番号の位置(qi,j, pi,j)は
pi,j+1=pi,j+1、qi,j+1=(qi,j+k)modB (1)
を満たし、ここで、k=0且つB=7であり、qi,jは2次元配列における、7個のグループにおけるi番目のグループのj番目の位置番号の行番号であり、pi,jは2次元配列における、7個のグループにおけるi番目のグループのj番目の位置番号の列番号である。
本発明の本実施形態では、2次元配列における位置が、2次元配列における行および列の位置情報を参照することは留意されるべきである。
例えば、前述のグループにおける4番目のグループが例として使用され、すなわち、i=4であり、4番目のグループにおける位置番号と、2次元配列における、4番目のグループにおける位置番号の位置(qi,j, pi,j)との間の対応が表4に示される。(qi,j, pi,j)、iおよびj間の対応は前述の式(1)を満たすことがわかり得る。
第2の見地から、この分類方式は、以下のようであることがまた理解されてもよい。各グループにおける2個の隣接する位置番号間の差は1である。すなわち、各グループにおける2個の隣接する位置番号間の間隔は1である。加えて、この間隔は第1の見地からk×A+1に対応してよい。
第3の見地から、この分類方式は、以下のようであることがまた理解されてもよい。n個のビットが2次元デカルト座標系におけるn個のデータポイントに対応するとき、同じグループに属する任意の2個のビットに対応する2個のデータポイントは、2次元デカルト座標系において同じ垂直座標を有する。32個のビットに対応する32個のデータポイントは2次元デカルト座標系における7個の直線内に位置し、且つ、各直線におけるデータポイントは同じグループ内に位置する。加えて、これらの7個の直線の傾きは0である。加えて、直線の傾きは第1の見地からkに対応してよい。
前述の第1の見地から第3の見地は単に、現在の分類の異なる数学的な理解であることは留意されるべきである。当業者は、別の数学的手法または方法を使用することによって、この分類方式に対して実行される分析は本発明の本実施形態の範囲に依然として包含されることを理解することができる。
表3に示される分類方式に対して、まず、分類が分類条件を満たしているかどうか判定することが必要とされる。
任意で、実施形態として、分類条件は、各グループに含まれるstuck-at faultの数は1を超えないという、第1の分類条件であってよい。表1に示される32個のビットにおいて、stuck-at faultが発生した位置番号は7、9、16、17および27である。表3を参照することによって、stuck-at faultが発生した位置番号7および9は2番目のグループ内にあり、且つ、stuck-at faultが発生した位置番号16および17は4番目のグループ内にあることがわかり得る。すなわち、前述のグループでは、2番目のグループに含まれるstuck-at faultの数と4番目のグループに含まれるstuck-at faultの数のいずれも1を超え、その結果、第1の分類条件は満たされない。この場合、前述の分類方式は、32個のビットを再分類するために、調整される必要がある。
前述の第1の見地に対応して、再分類方式はkを1増やすことであってよい。すなわち、再分類の前はk=0であり、且つ、再分類中はk=1である。このように、新しい分類方式は以下のようである。1番目のグループに対応する位置番号は1、7、13、19および25であり、2番目のグループに対応する位置番号は6、12、18、24および30であり、3番目のグループに対応する位置番号は11、17、23、29および○であり、4番目のグループに対応する位置番号は16、22、28、□および5であり、5番目のグループに対応する位置番号は21、27、◎、4および10であり、6番目のグループに対応する位置番号は26、32、3、9および15であり、7番目のグループに対応する位置番号は31、2、8、14および20であり、ここで、◎、□および○は、位置が空であるとともに表3における仮定された位置番号33、34および35を連続的に表すことを示す。
表3を参照すると、このような新しい分類方式では、同じグループに属する任意の2個のビットは異なる行および列内にあることがわかり得る。加えて、前述の第1の見地に対応して、この新しい分類方式では、2次元配列における、7個のグループにおけるi番目のグループのj番目の位置番号の位置(qi,j, pi,j)は、前述の式(1)を依然として満たし、k=1である。繰り返しを防ぐために、詳細はここでは再び説明されない。
前述の第2の見地に対応して、この新しい分類方式は以下のようであることがまた理解されてもよい。各グループにおける2個の隣接する位置番号間の差は6である。すなわち、各グループにおける2個の隣接する位置番号間の間隔は6である。加えて、この間隔は第1の見地からk×A+1に対応してよい。分析は、例として、新しいグループにおける4番目のグループを使用することによって実行される。4番目のグループにおける最初の3個の位置番号16、22および28のうちの2個の間の間隔は6であり、4番目の位置番号□は仮定された位置番号34を表し、34と28との間の間隔は6であり、5番目の位置番号5は35の次の位置番号は1であるとして理解されてよく、すなわち、1から35の位置番号はヘッドトゥテールでリンクされたリング状に配置されると仮定されてよく、その結果、34から6の間隔を有する次の位置番号は5である。加えて、各グループに含まれる位置番号の数は5であり、5個の位置番号は仮定された位置番号を含み、且つ、4番目のグループにおける5番目の位置番号は位置番号5として決定されている。従って、この分類方式における4番目のグループが決定されることができる。前述の第2の見地に対応するいくつかの他のグループにおける位置番号もまた、同様に理解されてもよく、繰り返しを防ぐために、詳細はここでは再び説明されない。
前述の第3の見地に対応して、この新しい分類方式は以下のようであることがまた理解されてもよい。32個のビットが2次元デカルト座標系における32個のデータポイントに対応するとき、同じグループに属する任意の2個のビットに対応する2個のデータポイントは、2次元デカルト座標系において異なる水平座標および垂直座標を有する。加えて、同じ傾きを有する複数の直線が作られてよく、同じ直線における全てのデータポイントは同じグループに属する。加えて、複数の直線の傾きは第1の見地からk=1に対応してよい。
さらに、新しいグループが第1の分類条件を満たしているかどうか判定することが必要とされる。表1に示される32個のビットにおいて、stuck-at faultが発生した位置番号は7、9、16、17および27である。新しい分類方式を参照すると、stuck-at faultが発生した位置番号は、それぞれ新しいグループにおける1番目のグループ、6番目のグループ、4番目のグループ、3番目のグループおよび5番目のグループ内に位置する7、9、16、17および27であることがわかり得る。すなわち、新しい分類方式は、各グループに含まれるstuck-at faultの数は1を超えないという、第1の分類条件を満たす。従って、分類条件を満たしている7個のグループが新しいグループであると決定されてよい。
新しいグループが第1の分類条件を依然として満たしていないと想定される場合、別の新しい分類方式を得るために、kは引き続き1増やされてよく、且つ、別の新しい分類方式が第1の分類条件を満たしているかどうかさらに判定されることは留意されるべきである。
任意で、別の実施形態として、分類条件は、各グループに含まれるstuck-at faultのタイプが同じであり、ここで、stuck-at faultのタイプはstuck-at right faultまたはstuck-at wrong faultを含み、stuck-at right faultは、stuck-at faultが位置する1番目のビットの数値が、書き込まれる必要があり、且つ、1番目のビットに対応する数値と等しいことを指し、stuck-at wrong faultは、stuck-at faultが位置する2番目のビットの数値が、書き込まれる必要があり、且つ、2番目のビットに対応する数値と反対であることを指す、第2の分類条件であってよい。
表1に示される32個のビットにおける、stuck-at faultが発生した位置番号は、7、9、16、17および27である。表1および表2を参照すると、表1における、その位置番号が7であるビットの数値は、表2における、この位置に書き込まれる必要がある数値“0”と等しい“0”であることがわかり得、従って、位置番号7のstuck-at faultのタイプはstuck-at right faultである。同様に、位置番号9のstuck-at faultのタイプはstuck-at right faultであり、位置番号16のstuck-at faultのタイプはstuck-at wrong faultであり、位置番号17のstuck-at faultのタイプはstuck-at right faultであり、位置番号27のstuck-at faultのタイプはstuck-at wrong faultであることがわかり得る。
前述の分類方式について、位置番号7および9は2番目のグループに属するが、位置番号7および9の両方のstuck-at faultのタイプはstuck-at right faultであり、このことは、第2の分類条件を満たす。位置番号16および17は4番目のグループに属するが、位置番号16および17のstuck-at faultのタイプは異なり、このことは、第2の分類条件を満たさない。従って、この場合、前述の分類方式はまた、32個のビットを再分類するために、調整される必要がある。
再分類を決定するための方法は、第1の分類条件に従って決定が行われた後、再分類を実行するための前述の方法と同様であり、繰り返しを防ぐために、詳細はここでは再び説明されない。前述の分析から、新しい分類方式は以下のようであることがわかり得る。1番目のグループに対応する位置番号は1、7、13、19および25であり、2番目のグループに対応する位置番号は6、12、18、24および30であり、3番目のグループに対応する位置番号は11、17、23、29および○であり、4番目のグループに対応する位置番号は16、22、28、□および5であり、5番目のグループに対応する位置番号は21、27、◎、4および10であり、6番目のグループに対応する位置番号は26、32、3、9および15であり、7番目のグループに対応する位置番号は31、2、8、14および20であり、ここで、◎、□および○は、位置が空であるとともに表3における仮定された位置番号33、34および35を連続的に表すことを示す。
さらに、新しいグループが第2の分類条件を満たしているかどうか判定することを必要とする。表1に示される32個のビットにおいて、stuck-at faultが発生した位置番号は7、9、16、17および27である。新しい分類方式を参照すると、stuck-at faultが発生した位置番号は、それぞれ新しいグループにおける1番目のグループ、6番目のグループ、4番目のグループ、3番目のグループおよび5番目のグループ内に位置する7、9、16、17および27であることがわかり得る。すなわち、新しい分類方式は、各グループに含まれるstuck-at faultのタイプは同じであるという、第2の分類条件を満たす。従って、分類条件を満たしている7個のグループが新しいグループであると決定されてよい。
新しいグループが第2の分類条件を依然として満たしていないと想定される場合、別の新しい分類方式を得るために、kは引き続き1増やされてよく、且つ、別の新しい分類方式が第2の分類条件を満たしているかどうかさらに判定されることは留意されるべきである。
本発明の本実施形態では、第1の分類条件に従って決定される分類方式は、第2の分類条件に従って決定される分類方式とは無関係であることは留意されるべきである。2個の分類条件に従って決定される分類方式は、同じであってよく、または異なってもよい。
なお、さらに、新しいグループにおける各グループに含まれるstuck-at faultについての情報に従って、書き込まれる必要がある、表2における32個の数値が、表1における32個のビットに、対応して書き込まれる。ここで、stuck-at faultについての情報は、stuck-at faultの位置番号とstuck-at faultのタイプとを含む。
任意で、実施形態として、第1の分類条件に従って、新しいグループが決定された後、まず、各グループに含まれるstuck-at faultのタイプが決定される。stuck-at faultが発生した位置番号は、それぞれ新しいグループにおける1番目のグループ、6番目のグループ、4番目のグループ、3番目のグループおよび5番目のグループ内に位置する7、9、16、17および27である。表1および表2を参照して分析を行うことによって、位置番号7、9および17のstuck-at faultのタイプはstuck-at right faultであり、且つ、位置番号16および27のstuck-at faultのタイプはstuck-at wrong faultであることがわかり得る。書き込まれる必要があり、且つ、4番目のグループおよび5番目のグループに対応する数値は、反転され、次いで、書き込まれ、ここで、4番目のグループおよび5番目のグループはstuck-at wrong faultが位置するグループであり、書き込まれる必要があり、且つ、他のグループに対応する数値は、通常通り書き込まれる。書き込みの後の32個のビットの数値、すなわち、書き込まれたn個の数値は、図4における、n個の数値が書き込まれた後の3番目の行に示される。このように、書き込みの後の32個の位置番号および対応する書き込まれた数値は、表5に示されることができる。
あるいは、フラグビットmiもまた、新しいグループにおける各グループに対して指定されてもよく、ここで、iは7個のグループにおけるi番目のグループを示し、且つ、iは7以下の正の整数である。対応して、7個のグループは7個のフラグビットを有し、ここで、フラグビットは、グループに含まれるstuck-at faultのタイプを示すために使用される。例えば、0はstuck-at right faultを示すために使用されてよく、且つ、1はstuck-at wrong faultを示すために使用されてよい。このように、前述の新しいグループに対応するフラグビットは連続的に0001100である。さらに、書き込みは、グループに対応するフラグビットに従って実行されてよい。具体的には、グループのフラグビットが1であるとき、書き込まれる必要があり、且つ、グループに対応する数値は反転され、次いで、書き込まれる。グループのフラグビットが0であるとき、書き込まれる必要があり、且つ、グループに対応する数値は通常通り書き込まれる。
フラグビットの形態は、本発明では限定されないことは留意されるべきである。例えば、フラグビットはB個の成分を有するベクトルmであってよく、ここで、ベクトルのi番目の成分は、B個のグループのビットにおけるi番目のグループのビットのフラグビットmiに対応する。加えて、ベクトルの初期値は0に設定されてよく、且つ、iはB以下の正の整数である。
具体的な書き込み方式は、本発明の本実施形態で限定されないことは留意されるべきである。任意で、書き込みは、決定されたグループに従って実行されてよい。例えば、1番目のグループの位置番号は1、7、13、19および25であり、且つ、1番目のグループに含まれるstuck-at faultのタイプはstuck-at right faultであるか、または、1番目のグループのフラグビットは0であり、位置番号1、7、13、19および25に対応する数値は通常通り書き込まれる。次いで、書き込みは2番目のグループから7番目のグループまで順に実施される。任意で、書き込みはまた、位置番号の順に実行されてもよい。例えば、位置番号1について、まず、位置番号1が属するグループが1番目のグループであり、且つ、1番目のグループに含まれるstuck-at faultのタイプはstuck-at right faultであるか、または、1番目のグループのフラグビットは0であると決定され、位置番号1に対応する数値は通常通り書き込まれる。次いで、位置番号2について、まず、位置番号2が属するグループが7番目のグループであり、且つ、7番目のグループはstuck-at faultを含まないか、または、7番目のグループのフラグビットは0であると決定され、位置番号2に対応する数値は通常通り書き込まれる。その後、書き込みは、位置番号3から位置番号32まで順に実施される。あるいは、書き込みはまた、位置番号の逆順で実行されてもよい。書き込みはまた、別の方式で実施されてもよい。当業者は、別の方式において書き込みを実施することは、本発明の本実施形態の範囲に依然として包含されることを理解することができる。
任意で、別の実施形態として、第2の分類条件に従って、新しいグループが決定された後、新しいグループにおける4番目のグループおよび5番目のグループに含まれるstuck-at faultのタイプはstuck-at wrong faultであり、且つ、他のグループに含まれるstuck-at faultのタイプはstuck-at right faultであるか、または、他のグループはstuck-at faultを含まないことがわかり得る。書き込まれる必要があり、且つ、stuck-at wrong faultが位置するグループに対応する数値は、反転され、次いで、書き込まれ、書き込まれる必要があり、且つ、他のグループに対応する数値は、通常通り書き込まれる。このように、書き込みの後の32個のビットの数値は、表5に示されることができる。
同様に、各グループに対応するフラグビットもまた導入されてもよく、さらに、フラグビットに従って、書き込みが実行される。フラグビットの具体的な説明については、第1の分類条件についての前述の説明を参照されたい。繰り返しを防ぐために、詳細はここでは再び説明されない。
図5は、本発明の実施形態に係る記憶デバイスに対する書き込み装置のブロック図である。図5に示される書き込み装置500は、取得ユニット501、第1決定ユニット502、分類ユニット503および書き込みユニット504を含む。
取得ユニット501は、書き込まれる必要があるn個の数値を取得するように構成される。
第1決定ユニット502は、書き込まれる必要があるn個の数値に対応するn個のビットと、n個のビットに含まれるstuck-at faultについての情報とを決定するように構成され、ここで、stuck-at faultについての情報は、n個のビットにおけるstuck-at faultの位置と、stuck-at faultが位置するビットの数値とを含む。
分類ユニット503は、B個のグループのビットが分類条件を満たし、且つ、n個のビットがB行A列の2次元配列を表すとき、n個のビットにおける、同じグループに属する任意の2個のビットは異なる行および列内にあるか、または、n個のビットにおける、同じグループに属する任意の2個のビットは同じ行内にあるように、n個のビットをB個のグループのビットに分類するように構成され、ここで、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultを制限するために使用される。
書き込みユニット504は、n個のビットに、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、書き込まれる必要があるn個の数値を対応して書き込むように構成され、
ここで、n、AおよびBは正の整数であり、且つ、n≦A×Bである。
本発明の本実施形態では、同じグループ内の2個の隣接するビット間の間隔を調整することによって、n個のビットはB個のグループに分類されると決定され、且つ、書き込まれる必要がある数値は、B個のグループの各グループ内のstuck-at faultについての情報に従って、n個のビットに、対応して書き込まれることができ、その結果、インピーダンス記憶デバイス内のstuck-at faultによって引き起こされる書き込みエラーが有効に防止されることができる。
任意で、実施形態として、分類ユニット502は、具体的には、n個のビットがB行A列の2次元配列を表すとき、B行A列の2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの位置が、
pi,j+1=pi,j+1およびqi,j+1=(qi,j+k)modB
を満たすように、n個のビットをB個のグループのビットに分類し、B個のグループのビットが分類条件を満たすように、kの値を調整するように構成され、ここで、
pi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの列番号であり、qi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの行番号であり、iおよびqi,jは、B以下の正の整数であり、jおよびpi,jは、A以下の正の整数であり、kはBよりも小さい非負整数であり、kの値を調整することは、kの値を1増やすことを含み、ここで、Bは
以上の最小素数であり、且つ
である。
任意で、実施形態として、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultの数が1を超えないことである。
任意で、別の実施形態として、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプが同じであり、ここで、stuck-at faultのタイプはstuck-at right faultstuck-at wrong faultを含み、stuck-at right faultは、stuck-at faultが位置する1番目のビットの数値が、書き込まれる必要があり、且つ、1番目のビットに対応する数値と等しいことを指し、stuck-at wrong faultは、stuck-at faultが位置する2番目のビットの数値が、書き込まれる必要があり、且つ、2番目のビットに対応する数値と反対であることを指す、ことである。
任意で、実施形態として、書き込みユニット504は第2決定ユニット505と第1書き込みユニット506とを含む。第2決定ユニット505は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプを決定するように構成される。第1書き込みユニット506は、n個のビットに、B個のグループのビットとB個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプとに従って、書き込まれる必要があるn個の数値を対応して書き込むように構成される。
任意で、別の実施形態として、第1書き込みユニット506は、具体的には、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであるとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を、対応して反転し、反転の後に得られた数値をi番目のグループのビットに書き込むように構成され、ここで、iはB以下の正の整数である。
任意で、別の実施形態として、書き込みユニット504は割り当てユニット507をさらに含み、ここで、割り当てユニット507は、フラグビットmiをB個のグループのビットにおけるi番目のグループのビットに割り当てるように構成され、ここで、miは、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプを示すために使用される。第1書き込みユニット506は、具体的には、i番目のグループのビットに、フラグビットmiに従って、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を対応して書き込むように構成され、ここで、iはB以下の正の整数である。
具体的には、フラグビットが、B個のグループにおけるi番目のグループに含まれるstuck-at faultのタイプがstuck-at wrong faultであることを示すとき、書き込まれる必要があり、且つ、i番目のグループに対応する数値は反転され、次いで、書き込まれる。
あるいは、具体的には、フラグビットmi=1のとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値は反転され、次いで、i番目のグループのビットに書き込まれ、ここで、フラグビットmi=1は、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであることを示す。
書き込み装置500は、図2から図4の実施形態における書き込み装置によって実施される全てのプロセスを実施することができる。繰り返しを防ぐために、詳細はここでは再び説明されない。
図6は、本発明の実施形態に係る記憶デバイスに対する書き込み装置のブロック図である。図6に示される書き込み装置600は、プロセッサ601、メモリ602および送受信回路603を含む。
送受信回路603は、書き込まれる必要があるn個の数値を取得するように構成される。
プロセッサ601は、書き込まれる必要があるn個の数値に対応するn個のビットと、n個のビットに含まれるstuck-at faultについての情報とを決定するように構成され、ここで、stuck-at faultについての情報は、n個のビットにおけるstuck-at faultの位置と、stuck-at faultが位置するビットの数値とを含み、プロセッサ601は、B個のグループのビットが分類条件を満たし、且つ、n個のビットがB行A列の2次元配列を表すとき、n個のビットにおける、同じグループに属する任意の2個のビットは異なる行および列内にあるか、または、n個のビットにおける、同じグループに属する任意の2個のビットは同じ行内にあるように、n個のビットをB個のグループのビットに分類するように構成され、ここで、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultを制限するために使用され、プロセッサ601は、n個のビットに、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、書き込まれる必要があるn個の数値を対応して書き込むように構成され、ここで、n、AおよびBは正の整数であり、且つ、n≦A×Bである。
本発明の本実施形態では、同じグループ内の2個の隣接するビット間の間隔を調整することによって、n個のビットはB個のグループに分類されると決定され、且つ、書き込まれる必要がある数値は、B個のグループの各グループ内のstuck-at faultについての情報に従って、n個のビットに、対応して書き込まれることができ、その結果、インピーダンス記憶デバイス内のstuck-at faultによって引き起こされる書き込みエラーが有効に防止されることができる。
書き込み装置600の全ての構成要素は、バスシステム604を使用することによって共に結合され、ここで、バスシステム604は、データバスに加えて、電源バス、制御バス、状態信号バスを含んでよい。しかしながら、説明の明確性のために、様々なバスは、図6におけるバスシステム604として示される。
本発明の前述の実施形態で開示された方法は、プロセッサ601に適用されるか、またはプロセッサ601によって実施されてよい。プロセッサ601は、集積回路チップであってよく、且つ、信号処理能力を有する。実施プロセスでは、前述の方法におけるステップは、プロセッサ601内のハードウェアの集積論理回路によって実施されてよく、または、ソフトウェアの形態における命令によって実施されてよい。プロセッサ601は、汎用プロセッサ、デジタル信号プロセッサ(Digital Signal Processor, DSP)、特定用途向け集積回路(Application Specific Integrated Circuit, ASIC)、フィールド・プログラマブル・ゲート・アレイ(Field Programmable Gate Array, FPGA)または別のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタ論理デバイス、またはディスクリート・ハードウェア・コンポーネントであってよく、且つ、本発明の実施形態で開示される方法、ステップおよび論理ブロックダイアグラムを実施または実行することができる。汎用プロセッサはマイクロプロセッサであってよく、または、プロセッサは任意の従来のプロセッサ等であってもまたよい。本発明の実施形態を参照して開示される方法のステップは、ハードウェア復号プロセッサによって直接実行および達成されてよく、または、復号プロセッサにおけるハードウェアおよびソフトウェアモジュールの組み合わせを使用することによって実行および達成されてよい。ソフトウェアモジュールは、ランダムアクセスメモリ(Random Access Memory, RAM)、フラッシュメモリ、読み出し専用メモリ(Read-Only Memory, ROM)、プログラマブル読み出し専用メモリ、電気的に消去可能なプログラマブルメモリまたはレジスタ等の、当該技術における成熟した記憶媒体内に位置してよい。記憶媒体は、メモリ602内に位置する。プロセッサ601は、メモリ602から情報を読み出し、且つ、ハードウェアと組み合わせて、前述の方法のステップを実施する。
任意で、実施形態として、プロセッサ601は、具体的には、n個のビットがB行A列の2次元配列を表すとき、B行A列の2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの位置が、
pi,j+1=pi,j+1およびqi,j+1=(qi,j+k)modB
を満たすように、n個のビットをB個のグループのビットに分類し、B個のグループのビットが分類条件を満たすように、kの値を調整するように構成され、ここで、
pi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの列番号であり、qi,jは、2次元配列における、B個のグループのビットにおけるi番目のグループのビット内のj番目のビットの行番号であり、iおよびqi,jは、B以下の正の整数であり、jおよびpi,jは、A以下の正の整数であり、kはBよりも小さい非負整数であり、kの値を調整することは、kの値を1増やすことを含み、ここで、Bは
以上の最小素数であり、且つ
である。
任意で、実施形態として、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultの数が1を超えないことである。
任意で、別の実施形態として、分類条件は、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプが同じであり、ここで、stuck-at faultのタイプはstuck-at right faultとstuck-at wrong faultとを含み、stuck-at right faultは、stuck-at faultが位置する1番目のビットの数値が、書き込まれる必要があり、且つ、1番目のビットに対応する数値と等しいことを指し、stuck-at wrong faultは、stuck-at faultが位置する2番目のビットの数値が、書き込まれる必要があり、且つ、2番目のビットに対応する数値と反対であることを指す、ことである。
任意で、実施形態として、プロセッサ601は、具体的には、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultについての情報と、書き込まれる必要があり、且つ、stuck-at faultが位置するビットに対応する数値とに従って、B個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプを決定し、
n個のビットに、B個のグループのビットとB個のグループのビットにおける各グループのビットに含まれるstuck-at faultのタイプとに従って、書き込まれる必要があるn個の数値を対応して書き込むように構成される。
任意で、別の実施形態として、プロセッサ601は、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであるとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を、対応して反転し、反転の後に得られた数値をi番目のグループのビットに書き込むように構成され、ここで、iはB以下の正の整数である。
任意で、別の実施形態として、プロセッサ601は、具体的には、フラグビットmiをB個のグループのビットにおけるi番目のグループのビットに割り当てるように構成され、ここで、miは、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプを示すために使用され、且つ、プロセッサ601は、i番目のグループのビットに、フラグビットmiに従って、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値を対応して書き込むように構成され、ここで、iはB以下の正の整数である。
具体的には、フラグビットが、B個のグループにおけるi番目のグループに含まれるstuck-at faultのタイプがstuck-at wrong faultであることを示すとき、書き込まれる必要があり、且つ、i番目のグループに対応する数値は反転され、次いで、書き込まれる。
あるいは、具体的には、フラグビットmi=1のとき、書き込まれる必要があり、且つ、i番目のグループのビットに対応する数値は反転され、次いで、i番目のグループのビットに書き込まれ、ここで、フラグビットmi=1は、B個のグループのビットにおけるi番目のグループのビットに含まれるstuck-at faultのタイプがstuck-at wrong faultであることを示す。
書き込み装置600は、図2から図4の実施形態における書き込み装置によって実施される全てのプロセスを実施することができる。繰り返しを防ぐために、詳細はここでは再び説明されない。
当業者は、本明細書で開示される実施形態で説明される例と組み合わせて、ユニットおよびアルゴリズムステップは、電子ハードウェア、またはコンピュータソフトウェアおよび電子ハードウェアの組み合わせによって実施されてよいことを理解することができる。機能がハードウェアによって実行されるかソフトウェアによって実行されるかは、技術的解決手段の特定の用途および設計制約条件に依存する。当業者は、各特定の用途に対して、説明される機能を実施するために、異なる方法を使用してよいが、実施が本発明の範囲を越えるとみなされるべきではない。
便利且つ簡潔な説明のために、前述のシステム、装置およびユニットの詳細な動作プロセスについて、前述の方法の実施形態における対応するプロセスに対して参照が行われてよいことは、当業者によって明確に理解されることができ、詳細はここでは再び説明されない。
本願で提供されるいくつかの実施形態では、開示されたシステム、装置および方法は他の方式で実施されてよいことは理解されるべきである。例えば、説明された装置の実施形態は単に例示的なものである。例えば、ユニットの分割は単に、論理的な機能の分割であるとともに、実際の実施では他の分割であってよい。例えば、複数のユニットまたは構成要素は、別のシステムに結合または統合されてよく、または、いくつかの特徴は無視されるか、または実行されなくてもよい。加えて、表示されたまたは議論された相互結合または直接結合または通信接続は、いくつかのインタフェースを介して実施されてよい。装置またはユニット間の間接結合または通信接続は、電子的、機械的または他の形態で実施されてよい。
個別の部分として説明されたユニットは、物理的に分離していてもしていなくてもよく、ユニットとして表示された部分は、物理ユニットであってもなくてもよく、1つの位置に配置されてもよく、または複数のネットワークユニット上に分配されてもよい。ユニットのいくつかまたは全ては、実施形態の解決手段の目的を達成するための実際のニーズに従って選択されてよい。
加えて、本発明の実施形態における機能ユニットは1個の処理ユニットに統合されてよく、またはユニットの各々は物理的に孤立して存在してよく、または2つ以上のユニットは1個のユニットに統合される。
機能がソフトウェア機能ユニットの形態で実施されるとき、および独立した製品として販売または使用されるとき、機能はコンピュータ可読記憶媒体内に格納されてよい。そのような理解に基づいて、本発明の技術的解決手段は本質的に、または従来技術に貢献する部分は、または技術的解決手段のいくつかは、ソフトウェア製品の形態で実施されてよい。ソフトウェア製品は記憶媒体内に格納され、且つ、本発明の実施形態で説明される方法のステップの全てまたはいくつかを実行するように、コンピュータデバイス(パーソナルコンピュータ、サーバまたはネットワークデバイスであってよい)に命令するためのいくつかの命令を含む。前述の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、ROM、RAM、磁気ディスクまたは光ディスク等のプログラムコードを格納することができる任意の媒体を含む。
前述の説明は単に本発明の具体的な実施方式であるが、本発明の保護範囲を限定するものではない。本発明で開示される技術的範囲内で当業者によって容易に理解されるいかなる変更または置換も、本発明の保護範囲に包含されるべきである。従って、本発明の保護範囲は、請求項の保護範囲に従うべきである。
501 取得ユニット
502 第1決定ユニット
503 分類ユニット
504 書き込みユニット
505 第2決定ユニット
506 第1書き込みユニット
507 割り当てユニット
601 プロセッサ
602 メモリ
603 送受信回路

Claims (18)

  1. 記憶デバイスに対する書き込み方法であって、前記書き込み方法は、
    書き込まれる必要があるn個の数値を取得するステップと、
    書き込まれる必要がある前記n個の数値に対応する、前記記憶デバイス内のn個のビットと、前記n個のビットに含まれるstuck-at faultについての情報とを決定するステップであって、前記stuck-at faultについての前記情報は、前記n個のビットにおける前記stuck-at faultの位置と、前記stuck-at faultが位置するビットの数値とを含む、ステップと、
    B個のグループのビットが分類条件を満たし、且つ、前記n個のビットがB行A列の2次元配列を表すとき、前記n個のビットにおける、同じグループに属する任意の2個のビットは異なる行および列内にあるか、または、前記n個のビットにおける、同じグループに属する任意の2個のビットは同じ行内にあるようにする分類方式で、前記n個のビットを前記B個のグループに分類するステップであって、前記分類条件は、前記B個のグループの各グループに含まれるstuck-at faultのタイプまたは前記B個のグループの各グループに含まれるstuck-at faultの数を制限するために使用される、ステップと、
    前記n個のビットに、前記分類方式に従って、且つ、前記B個のグループの各グループに含まれる前記stuck-at faultについての情報と、前記B個のグループにおける各グループ内のstuck-at faultが位置するビットに対応する、書き込まれる必要がある数値とに従って、書き込まれる必要がある前記n個の数値を対応して書き込むステップと
    を含み、n、AおよびBは正の整数であり、且つ、n≦A×Bである、方法。
  2. 前記分類条件は、前記B個のグループの各グループに含まれるstuck-at faultの前記数が1を超えないことを含む、請求項1に記載の書き込み方法。
  3. 前記分類条件は、グループに含まれるstuck-at faultの前記数が1を超えるとき、前記B個のグループの前記グループに含まれる前記stuck-at faultの前記タイプが同じであることを含み、前記stuck-at faultの前記タイプはstuck-at right faultとstuck-at wrong faultとを含み、前記stuck-at right faultは、前記stuck-at faultが位置する第1のビットの数値が前記第1のビットに書き込まれる必要がある数値と等しいことを指し、前記stuck-at wrong faultは、前記stuck-at faultが位置する第2のビットの数値が前記第2のビットに書き込まれる必要がある数値と反対であることを指す、請求項1に記載の書き込み方法。
  4. 前記分類条件を満たすように、前記n個のビットをB個のグループに分類する前記ステップは、
    前記n個のビットがB行A列の2次元配列を表すとき、B行A列の前記2次元配列における、前記B個のグループのi番目のグループ内のj番目のビットの位置が、
    pi,j+1=pi,j+1およびqi,j+1=(qi,j+k)modB
    を満たすように、前記n個のビットを前記B個のグループに分類するステップと、
    前記B個のグループが前記分類条件を満たすように、kの値を調整するステップとを含み、
    pi,jは、前記2次元配列における、前記B個のグループの前記i番目のグループ内の前記j番目のビットの列番号であり、qi,jは、前記2次元配列における、前記B個のグループの前記i番目のグループ内の前記j番目のビットの行番号であり、iおよびqi,jは、B以下の正の整数であり、jおよびpi,jは、A以下の正の整数であり、kはBよりも小さい非負整数であり、kの値を調整する前記ステップは、kの前記値を1増やすステップを含み、Bは
    以上の最小素数であり、且つ、
    である、請求項1乃至3のいずれか1項に記載の書き込み方法。
  5. 前記n個のビットに、前記分類方式に従って、且つ、前記B個のグループの各グループに含まれる前記stuck-at faultについての情報と前記B個のグループの各グループ内の前記stuck-at faultが位置するビットに対応する、書き込まれる必要がある数値とに従って、書き込まれる必要がある前記n個の数値を対応して書き込む前記ステップは、
    前記B個のグループの各グループに含まれる前記stuck-at faultについての前記情報と、前記stuck-at faultが位置する前記ビットに対応する、書き込まれる必要がある前記数値とに従って、前記B個のグループの各グループに含まれる前記stuck-at faultの前記タイプを決定するステップと、
    前記n個のビットに、前記B個のグループと前記B個のグループの各グループに含まれる前記stuck-at faultの前記タイプとに従って、書き込まれる必要がある前記n個の数値を対応して書き込むステップと
    を含む、請求項1乃至4のいずれか1項に記載の書き込み方法。
  6. 前記n個のビットに、前記B個のグループと前記B個のグループの各グループに含まれる前記stuck-at faultの前記タイプとに従って、書き込まれる必要がある前記n個の数値を対応して書き込む前記ステップは、
    前記B個のグループのi番目のグループに含まれるstuck-at faultのタイプがstuck-at wrong faultであるとき、前記i番目のグループのビットに対応する、書き込まれる必要がある数値を反転し、前記反転の後に得られた前記数値を前記i番目のグループに書き込むステップであって、iはB以下の正の整数である、ステップ
    を含む、請求項5に記載の書き込み方法。
  7. 前記n個のビットに、前記B個のグループと前記B個のグループの各グループに含まれる前記stuck-at faultの前記タイプとに従って、書き込まれる必要がある前記n個の数値を対応して書き込む前記ステップは、
    フラグビットmiを前記B個のグループのi番目のグループに割り当てるステップであって、miは、前記B個のグループの前記i番目のグループに含まれるstuck-at faultのタイプを示すために使用される、ステップと、
    前記i番目のグループに、前記フラグビットmiに従って、前記i番目のグループに対応する、書き込まれる必要がある数値を対応して書き込むステップであって、iはB以下の正の整数である、ステップと
    を含む、請求項5に記載の書き込み方法。
  8. 前記i番目のグループのビットに、前記フラグビットmiに従って、前記i番目のグループのビットに対応する、書き込まれる必要がある数値を対応して書き込む前記ステップは、
    前記フラグビットmi=1のとき、前記i番目のグループに対応する、書き込まれる必要がある前記数値を反転して、前記反転の後に得られた前記数値を前記i番目のグループに書き込むステップであって、前記フラグビットmi=1は、前記B個のグループのビットの前記i番目のグループに含まれる前記stuck-at faultの前記タイプがstuck-at wrong faultであることを示す、ステップ
    を含む、請求項7に記載の書き込み方法。
  9. 記憶デバイスに対する書き込み装置であって、前記書き込み装置は、
    書き込まれる必要があるn個の数値を取得するように構成された取得ユニットと、
    書き込まれる必要がある前記n個の数値に対応するn個のビットと、前記n個のビットに含まれるstuck-at faultについての情報とを決定するように構成された第1決定ユニットであって、前記stuck-at faultについての前記情報は、前記n個のビットにおける前記stuck-at faultの位置と、前記stuck-at faultが位置するビットの数値とを含む、第1決定ユニットと、
    分類条件を満たすための分類方式で、前記n個のビットをB個のグループに分類するように構成された分類ユニットであって、前記n個のビットがB行A列の2次元配列を表すとき、前記n個のビットにおける、同じグループに属する任意の2個のビットは異なる行および列内にあるか、または、前記n個のビットにおける、同じグループに属する任意の2個のビットは同じ行内にあり、前記分類条件は、前記B個のグループの各グループに含まれるstuck-at faultの数を制限するために使用される、分類ユニットと、
    前記n個のビットに、前記分類方式に従って、且つ、前記B個のグループの各グループに含まれる前記stuck-at faultについての情報と、前記B個のグループの各グループ内の前記stuck-at faultが位置するビットに対応する、書き込まれる必要がある数値とに従って、書き込まれる必要がある前記n個の数値を対応して書き込むように構成された書き込みユニットと
    を含み、n、AおよびBは正の整数であり、且つ、n≦A×Bである、書き込み装置。
  10. 前記分類条件は、前記B個のグループの各グループに含まれるstuck-at faultの前記数が1を超えないことを含む、請求項9に記載の書き込み装置。
  11. 前記分類条件は、グループに含まれるstuck-at faultの前記数が1を超えるとき、前記B個のグループの前記グループに含まれる前記stuck-at faultのタイプが同じであることを含み、前記stuck-at faultの前記タイプはstuck-at right faultとstuck-at wrong faultとを含み、前記stuck-at right faultは、前記stuck-at faultが位置する第1のビットの数値が前記第1のビットに書き込まれる必要がある数値と等しいことを指し、且つ、前記stuck-at wrong faultは、前記stuck-at faultが位置する第2のビットの数値が前記第2のビットに書き込まれる必要がある数値と反対であることを指す、請求項9に記載の書き込み装置。
  12. 前記分類ユニットは、具体的には、
    前記n個のビットがB行A列の前記2次元配列を表すとき、B行A列の前記2次元配列における、前記B個のグループのi番目のグループ内のj番目のビットの位置が、
    pi,j+1=pi,j+1およびqi,j+1=(qi,j+k)modB
    を満たすように、前記n個のビットを前記B個のグループに分類し、
    前記B個のグループのビットが前記分類条件を満たすように、kの値を調整するように構成され、
    pi,jは、前記2次元配列における、前記B個のグループのビットにおける前記i番目のグループのビット内の前記j番目のビットの列番号であり、qi,jは、前記2次元配列における、前記B個のグループのビットにおける前記i番目のグループのビット内の前記j番目のビットの行番号であり、iおよびqi,jは、B以下の正の整数であり、jおよびpi,jは、A以下の正の整数であり、kはBよりも小さい非負整数であり、kの値を前記調整することは、kの前記値を1増やすことを含み、Bは
    以上の最小素数であり、且つ
    である、請求項9乃至11のいずれか1項に記載の書き込み装置。
  13. 前記書き込みユニットは、
    前記B個のグループの各グループに含まれる前記stuck-at faultについての前記情報と、前記stuck-at faultが位置する前記ビットに対応する、書き込まれる必要がある前記数値とに従って、前記B個のグループの各グループに含まれる前記stuck-at faultのタイプを決定するように構成された第2決定ユニットと、
    前記n個のビットに、前記B個のグループと前記B個のグループの各グループに含まれる前記stuck-at faultの前記タイプとに従って、書き込まれる必要がある前記n個の数値を対応して書き込むように構成された第1書き込みユニットと
    を含む、請求項9乃至12のいずれか1項に記載の書き込み装置。
  14. 前記第1書き込みユニットは、具体的には、
    前記B個のグループのi番目のグループに含まれるstuck-at faultのタイプがstuck-at wrong faultであるとき、前記i番目のグループに対応する、書き込まれる必要がある数値を、対応して反転し、前記反転の後に得られた前記数値を前記i番目のグループに書き込むように構成され、iはB以下の正の整数である、
    請求項13に記載の書き込み装置。
  15. 前記書き込みユニットは割り当てユニットをさらに含み、
    前記割り当てユニットは、フラグビットmiを前記B個のグループのi番目のグループに割り当てるように構成され、miは、前記B個のグループの前記i番目のグループに含まれるstuck-at faultのタイプを示すために使用され、
    前記第1書き込みユニットは、具体的には、前記i番目のグループに、前記フラグビットmiに従って、前記i番目のグループに対応する、書き込まれる必要がある数値を対応して書き込むように構成され、iはB以下の正の整数である、
    請求項13に記載の書き込み装置。
  16. 前記第1書き込みユニットは、具体的には、
    前記フラグビットmi=1のとき、前記i番目のグループに対応する、書き込まれる必要がある前記数値を反転して、前記反転の後に得られた前記数値を前記i番目のグループに書き込むように構成され、前記フラグビットmi=1は、前記B個のグループのビットの前記i番目のグループに含まれる前記stuck-at faultの前記タイプがstuck-at wrong faultであることを示す、
    請求項15に記載の書き込み装置。
  17. コンピュータに請求項1乃至8のいずれか1項に記載の記憶デバイスに対する書き込み方法を実行させるように構成されたコンピュータプログラム。
  18. 請求項17に記載の前記コンピュータプログラムを記憶するコンピュータ可読記憶媒体。
JP2016533651A 2013-11-22 2014-11-14 記憶デバイスに対する書き込み方法および書き込み装置 Active JP6236720B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201310597968.2A CN104658608B (zh) 2013-11-22 2013-11-22 存储设备的写入方法及写入装置
CN201310597968.2 2013-11-22
PCT/CN2014/091069 WO2015074514A1 (zh) 2013-11-22 2014-11-14 存储设备的写入方法及写入装置

Publications (2)

Publication Number Publication Date
JP2017501483A JP2017501483A (ja) 2017-01-12
JP6236720B2 true JP6236720B2 (ja) 2017-11-29

Family

ID=53178926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016533651A Active JP6236720B2 (ja) 2013-11-22 2014-11-14 記憶デバイスに対する書き込み方法および書き込み装置

Country Status (7)

Country Link
US (2) US9898228B2 (ja)
EP (2) EP3428922B1 (ja)
JP (1) JP6236720B2 (ja)
KR (1) KR101810029B1 (ja)
CN (2) CN104658608B (ja)
RU (1) RU2640294C1 (ja)
WO (1) WO2015074514A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018126051A1 (de) * 2018-01-12 2019-07-18 Taiwan Semiconductor Manufacturing Co. Ltd. Neuartige Speichervorrichtung
CN111176561B (zh) * 2019-12-20 2024-02-06 北京新忆科技有限公司 存储器的写入方法和装置

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4604751A (en) * 1984-06-29 1986-08-05 International Business Machines Corporation Error logging memory system for avoiding miscorrection of triple errors
US5533194A (en) * 1994-12-28 1996-07-02 International Business Machines Corporation Hardware-assisted high speed memory test apparatus and method
US6216241B1 (en) * 1998-10-08 2001-04-10 Agere Systems Guardian Corp. Method and system for testing multiport memories
WO2000052684A1 (fr) * 1999-03-03 2000-09-08 Sony Corporation Dispositif d'enregistrement, procede d'enregistrement, dispositif de reproduction et procede de reproduction
US6671837B1 (en) * 2000-06-06 2003-12-30 Intel Corporation Device and method to test on-chip memory in a production environment
US7073106B2 (en) * 2003-03-19 2006-07-04 International Business Machines Corporation Test method for guaranteeing full stuck-at-fault coverage of a memory array
US7320100B2 (en) * 2003-05-20 2008-01-15 Cray Inc. Apparatus and method for memory with bit swapping on the fly and testing
US7281114B2 (en) * 2003-12-26 2007-10-09 Tdk Corporation Memory controller, flash memory system, and method of controlling operation for data exchange between host system and flash memory
US8060774B2 (en) * 2005-06-24 2011-11-15 Google Inc. Memory systems and memory modules
CN101217349A (zh) * 2007-01-05 2008-07-09 中兴通讯股份有限公司 一种混合自动重传请求中比特收集的装置与方法
US8176395B2 (en) * 2007-11-27 2012-05-08 Macronix International Co., Ltd. Memory module and writing and reading method thereof
CN101251580A (zh) * 2008-04-17 2008-08-27 中国科学院计算技术研究所 一种可诊断扫描链故障的电路装置及其诊断方法
US8037775B2 (en) 2008-10-17 2011-10-18 Raytheon Company Passive hit locator system comprising carbon nanotube arrays
KR101529880B1 (ko) * 2008-10-31 2015-06-19 삼성전자주식회사 에러 추정 방법 및 정정 방법
US8543863B2 (en) 2009-11-18 2013-09-24 Microsoft Corporation Efficiency of hardware memory access using dynamically replicated memory
US8612828B2 (en) 2009-12-22 2013-12-17 Intel Corporation Error correction mechanisms for 8-bit memory devices
RU2455712C2 (ru) * 2009-12-24 2012-07-10 Государственное образовательное учреждение высшего профессионального образования "Воронежский государственный технический университет" Способ тестирования оперативных запоминающих устройств
US8839053B2 (en) 2010-05-27 2014-09-16 Microsoft Corporation Error correcting pointers for non-volatile storage
US8516315B2 (en) 2010-09-03 2013-08-20 Stmicroelectronics International N.V. Testing of non stuck-at faults in memory
WO2012106358A1 (en) 2011-01-31 2012-08-09 Everspin Technologies, Inc. Method of reading and writing to a spin torque magnetic random access memory with error correcting code
US8589762B2 (en) 2011-07-05 2013-11-19 International Business Machines Corporation Adaptive multi-bit error correction in endurance limited memories
US8996955B2 (en) * 2011-11-16 2015-03-31 HGST Netherlands B.V. Techniques for storing data in stuck and unstable memory cells
US9235465B2 (en) * 2012-06-06 2016-01-12 University of Pittsburgh—of the Commonwealth System of Higher Education Recursively determined invertible set approach to correct multiple stuck-at faults in rewritable memory
US9274884B2 (en) * 2012-10-10 2016-03-01 HGST Netherlands B.V. Encoding and decoding data to accommodate memory cells having stuck-at faults
US9070483B2 (en) 2012-10-10 2015-06-30 HGST Netherlands B.V. Encoding and decoding redundant bits to accommodate memory cells having stuck-at faults
US8812934B2 (en) 2012-12-12 2014-08-19 HGST Netherlands B.V. Techniques for storing bits in memory cells having stuck-at faults

Also Published As

Publication number Publication date
WO2015074514A1 (zh) 2015-05-28
US20160266847A1 (en) 2016-09-15
CN108196799A (zh) 2018-06-22
US20180143787A1 (en) 2018-05-24
EP3428922B1 (en) 2020-06-03
KR101810029B1 (ko) 2017-12-18
US10789012B2 (en) 2020-09-29
JP2017501483A (ja) 2017-01-12
EP3073492A1 (en) 2016-09-28
CN108196799B (zh) 2021-03-30
EP3428922A1 (en) 2019-01-16
WO2015074514A4 (zh) 2015-11-05
CN104658608B (zh) 2018-03-06
US9898228B2 (en) 2018-02-20
EP3073492B1 (en) 2018-05-30
KR20160085320A (ko) 2016-07-15
CN104658608A (zh) 2015-05-27
EP3073492A4 (en) 2016-12-21
RU2640294C1 (ru) 2017-12-27

Similar Documents

Publication Publication Date Title
US11150989B2 (en) Method, device and computer program product for managing a storage system
EP3605331A1 (en) Memory allocation method and server
US20200125115A1 (en) Methods and systems of distributing task regions for a plurality of cleaning devices
JP6236720B2 (ja) 記憶デバイスに対する書き込み方法および書き込み装置
EP3553738B1 (en) Histogram statistic circuit and multimedia processing system
Hitz et al. Discrete extremes
CN109189336A (zh) 一种存储系统线程调整方法、系统及电子设备和存储介质
EP2829988B1 (en) Storage apparatus, and system and method for executing access operations
CN104516823A (zh) 一种数据存储方法和装置
CN111178529A (zh) 数据处理方法、装置、电子设备及可读存储介质
US20180088866A1 (en) Link management method and physical device
CN111158886A (zh) 用于优化操作系统任务调度的方法、装置和智能设备
AU2019200112A1 (en) Reciprocal distribution calculating method and reciprocal distribution calculating system for cost accounting
US9218445B2 (en) Implementing enhanced physical design quality using historical placement analytics
CN110210131B (zh) 输电线路监控设备的选址方法及系统
JP6191401B2 (ja) 並列計算機システム、制御装置、並列計算機システムの制御方法及び制御装置の制御プログラム
CN110763197B (zh) 一种姿态时间序列数据的异常值处理方法及系统
US20160070849A1 (en) Critical region identification
CN104965795B (zh) 嵌入式系统静态内存池的分配方法
US20220215237A1 (en) Operation device and operation allocation method
CN111078957A (zh) 基于图存储结构的存储方法
WO2024097056A1 (en) Systems, methods, and media for prioritizing read accesses to storage devices
CN117273102A (zh) 用于池化加速器的装置及方法和芯片电路及计算设备
CN117909637A (zh) 数据处理装置、方法、电子设备和存储介质
CN111277962A (zh) 一种编队方法及相关设备

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170830

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171012

R150 Certificate of patent or registration of utility model

Ref document number: 6236720

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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