JP2012230554A - データ記憶装置、メモリ制御装置及びメモリ制御方法 - Google Patents

データ記憶装置、メモリ制御装置及びメモリ制御方法 Download PDF

Info

Publication number
JP2012230554A
JP2012230554A JP2011098532A JP2011098532A JP2012230554A JP 2012230554 A JP2012230554 A JP 2012230554A JP 2011098532 A JP2011098532 A JP 2011098532A JP 2011098532 A JP2011098532 A JP 2011098532A JP 2012230554 A JP2012230554 A JP 2012230554A
Authority
JP
Japan
Prior art keywords
data
flash memory
chip
chips
controller
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.)
Withdrawn
Application number
JP2011098532A
Other languages
English (en)
Inventor
Takahiro Nango
隆裕 南郷
Sukeyuki Moro
祐行 茂呂
Motohiko Matsuyama
元彦 松山
Kiyotaka Iwasaki
清隆 岩崎
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2011098532A priority Critical patent/JP2012230554A/ja
Priority to US13/421,618 priority patent/US20120278538A1/en
Publication of JP2012230554A publication Critical patent/JP2012230554A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7202Allocation control and policies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

【課題】複数のフラッシュメモリチップに対して、物理ページ単位のデータを1回のアクセスで書き込む制御を実現することにより、書き込み時間の少ない動作性能の優れたデータ記憶装置を提供することにある。
【解決手段】実施形態によれば、データ記憶装置は、所定のページサイズをアクセス単位とするフラッシュメモリチップを有するメモリモジュールと、コントローラとを具備する。前記メモリモジュールは、複数の前記フラッシュメモリチップを含むことが可能な構成である。前記コントローラは、前記メモリモジュールに対して前記所定のページサイズを超えるページサイズをアクセス単位としてデータを書き込む場合に、前記データ及びアドレスを含む共通信号に含まれない独立のメモリ制御信号を前記各フラッシュメモリチップのそれぞれに供給し、前記各フラッシュメモリチップの同一アドレスにデータを書き込むように制御する。
【選択図】図1

Description

本発明の実施形態は、不揮発性メモリを記憶媒体とするデータ記憶装置に関する。
近年、データ記憶装置として、書き換え可能な不揮発性メモリであるNAND型フラッシュメモリ(以下、単にフラッシュメモリと表記する場合がある)を記憶媒体とするSSD(solid state drive)の開発が推進されている。
一般的に、SSDでは、1個のフラッシュメモリチップに対して、物理ページと呼ばれるアクセス単位でデータの書き込み又は読み出しが実行される。物理ページサイズは、例えば4Kバイトであり、ホストコンピュータなどのファイル管理単位であるセクタのサイズ(例えば512バイト)より大きい。
特開2009−211232号公報
SSDでは、1個のフラッシュメモリ(flash memory)チップに対して、物理ページと呼ばれるアクセス単位が採用されている。ここで、物理ページサイズに対して1個のフラッシュメモリチップのページ容量が小さい場合には、複数個のフラッシュメモリチップにデータを分散して書き込む制御が必要となる。
しかしながら、単に複数個のフラッシュメモリチップに対して、物理ページ単位のデータを書き込む場合に、チップ毎の書き込み制御が必要となるため書き込み時間が増大し、SSDの動作性能が低下することになる。
本発明の目的は、複数のフラッシュメモリチップに対して、物理ページ単位のデータを1回のアクセスで書き込む制御を実現することにより、書き込み時間の少ない動作性能の優れたデータ記憶装置を提供することにある。
実施形態によれば、データ記憶装置は、所定のページサイズをアクセス単位とするフラッシュメモリチップを有するメモリモジュールと、コントローラとを具備する。前記メモリモジュールは、複数の前記フラッシュメモリチップを含むことが可能な構成である。前記コントローラは、前記メモリモジュールに対して前記所定のページサイズを超えるページサイズをアクセス単位としてデータを書き込む場合に、前記データ及びアドレスを含む共通信号に含まれない独立のメモリ制御信号を前記各フラッシュメモリチップのそれぞれに供給し、前記各フラッシュメモリチップの同一アドレスにデータを書き込むように制御する。
各実施形態に関するデータ記憶装置の構成を示すブロック図。 第1の実施形態に関するメモリアクセスコントローラの構成を示すブロック図。 第1の実施形態に関するメモリアクセスコントローラの動作を説明するためのフローチャート。 第1の実施形態に関するライト動作を説明するためのタイミングチャート。 第1の実施形態に関するリード動作を説明するためのタイミングチャート。 第2の実施形態に関するメモリアクセスコントローラの構成を示すブロック図。 第2の実施形態に関するライト動作時のアクセスの概要を説明するための図。 第2の実施形態に関するライト動作を説明するためのタイミングチャート。 第2の実施形態に関するリード動作を説明するためのタイミングチャート。 各実施形態に関するフラッシュメモリチップの第1の使用方法を説明するための図。 各実施形態に関するフラッシュメモリチップの第2の使用方法を説明するための図。 各実施形態に関するフラッシュメモリチップの第3の使用方法を説明するための図。 各実施形態に関するフラッシュメモリチップの第4の使用方法を説明するための図。 各実施形態に関するフラッシュメモリチップの第5の使用方法を説明するための図。
以下図面を参照して、各実施形態を説明する。
[データ記憶装置の構成]
図1は、各実施形態に係るデータ記憶装置の構成を示すブロック図である。
図1に示すように、データ記憶装置はSSD(solid state drive)であり、SSDコントローラ10と、NAND型フラッシュメモリモジュール(以下、フラッシュメモリモジュール)30と、ブートROM(read only memory)40とを有する。
フラッシュメモリモジュール30はSSDのデータ記憶媒体であり、例えばチャネル単位またはパッケージ単位での外付け接続が可能である。フラッシュメモリモジュール30は、本実施形態では便宜的に、図2に示すように、チャネル単位として2個のフラッシュメモリチップ31、32の接続が可能な構成である。各フラッシュメモリチップ31、32はそれぞれ、2プレーン(Plane 0, Plane 1)として論理的に分割されたメモリ領域310,320を有する。また、各フラッシュメモリチップ31、32はそれぞれ、キャッシュ領域(Data Cache)311,321を含む。
ブートROM40は、SSDの内部バス11に外付け接続されて、SSDの電源起動時にマイクロプロセッサ(CPU)17の動作に必要なソフトウェアを供給する。ブートROM40からのソフトウェアは、CPU17の内部メモリまたはDRAM(dynamic random access memory)18に転送されて格納される。このブートROM40により、SSDは、ホストシステム(コンピュータ)によりアクセスが可能な状態となる。
SSDコントローラ10は、内部バス11、CPU17及びDRAM18以外に、ホストインターフェース(ホストI/F)12と、バッファ管理モジュール13と、フラッシュメモリコントローラ14と、入出力インターフェース(入出力I/F)19とを有する。
CPU17は、SSDコントローラ10の全体的制御を実行する。DRAM18は、バッファメモリまたはCPU17がアクセスするメインメモリとして動作し、論理/物理変換テーブルやホストシステムから転送されるデータなどを保持する。ホストI/F12は、ホストデバイス50とSSDコントローラ10間でのデータ、コマンド、アドレスの転送を制御する。ホストデバイス50からは、論理アドレス(LBA:logic block address)によりアクセスされる。ホストデバイス50は、ホストシステム(コンピュータ)に含まれる例えばSATA(Serial ATA)規格のインターフェースコントローラである。
バッファ管理モジュール13はDRAM18を制御し、ホストI/F12とバッファメモリ(DRAM18)間のデータ転送を制御する。また、バッファ管理モジュール13は、フラッシュメモリコントローラ14とバッファメモリ(DRAM18)間のデータ転送を制御する。
フラッシュメモリコントローラ14は、コマンド管理モジュール15と、フラッシュメモリアクセスコントローラ(以下、メモリアクセスコントローラと表記する)16とを含む。コマンド管理モジュール15は、CPU17により設定されるライトコマンドやリードコマンドの実行を管理するコマンド管理処理や、論物変換テーブルなどを管理するテーブル管理処理を実行する。コマンド管理モジュール15は、データの書き込み動作時にはライトコマンドをメモリアクセスコントローラ16に発行する。また、コマンド管理モジュール15は、データの読み出し動作時にはリードコマンドをメモリアクセスコントローラ16に発行する。
メモリアクセスコントローラ16はチャネル毎に設けられており、フラッシュメモリモジュール30に対してデータのリード/ライト動作の制御及びデータ転送制御を実行する。メモリアクセスコントローラ16は、データフローコントローラ20と、コマンドシーケンサ21とを含む。データフローコントローラ20は、フラッシュメモリモジュール30とバッファメモリ(DRAM18)とのデータ転送をバッファ管理モジュール13とハンドシェークしながら制御するインターフェースコントローラである。データフローコントローラ20は、データの書き込み動作時には、バッファ管理モジュール13に対してライトデータの転送要求を行なう。バッファ管理モジュール13は、当該転送要求に応じてDRAM18に格納されているデータをデータフローコントローラ20に転送する。データフローコントローラ20は、バッファ管理モジュール13からのデータを入出力I/F19のデータパス100に出力する。
コマンドシーケンサ21は、フラッシュメモリモジュール30に含まれる複数のフラッシュメモリチップ(ここでは2つのチップ31、32)の選択や、フラッシュメモリチップをアクセスするためのコマンドを発行する。コマンドシーケンサ21は、図2に示すように、フラッシュメモリチップ31、32をアクセスするための各種のメモリ制御信号を生成し、入出力I/F19の制御信号パス110〜114に送出する。
[第1の実施形態]
以下、図2から図5を参照して、第1の実施形態に係るフラッシュメモリの制御動作を説明する。
図2は、本実施形態のメモリアクセスコントローラ16の要部を示すブロック図である。メモリアクセスコントローラ16において、データフローコントローラ20は、ライト動作時にバッファ管理モジュール13からのデータ(IOデータと表記する場合がある)を入出力I/F19のデータパス100に転送する。コマンドシーケンサ21は、各種のメモリ制御信号を生成し、入出力I/F19の制御信号パス110〜114に送出する。
メモリ制御信号には、コマンドラッチイネーブル(CLE: Command Latch Enable)、チップイネーブル(CE: Chip Enable)、ライトイネーブル(WE: Write Enable)、及びアドレスラッチイネーブル(ALE: Address Latch Enable)が含まれる。なお、メモリ制御信号には、レディ/ビジー(R/B: Ready or Busy)も含まれる(図5を参照)。
メモリ制御信号には、リード動作時に、第1のフラッシュメモリチップ31に供給されるリードイネーブル(Read Enable、RE0_nとする)が含まれる。また、ライト動作時には、第1のフラッシュメモリチップ31に供給されるデータストローブ(data strobe、DQS0とする)がある。データストローブ(DQS0)は、リード動作時には、第1のフラッシュメモリチップ31から出力される。
また、メモリ制御信号には、リード動作時に、第2のフラッシュメモリチップ32に供給されるリードイネーブル(Read Enable、RE1_nとする)が含まれる。ライト動作時には、第2のフラッシュメモリチップ32に供給されるデータストローブ(data strobe、DQS1とする)がある。データストローブ(DQS1)は、リード動作時には、第2のフラッシュメモリチップ32から出力される。
コマンドシーケンサ21は、RE/DQS生成器210、セレクタ211,212、レジスタ213及びCLE/ALE/CE/WE生成器214を有する。RE/DQS生成器210は、前述のリードイネーブル(RE0_n,RE1_n)を生成する。また、RE/DQS生成器210は、前述のデータストローブ(DQS0,DQS1)を生成する。CLE/ALE/CE/WE生成器214は、前述したコマンドラッチイネーブル(CLE)、アドレスラッチイネーブル(ALE)、チップイネーブル(CE)、及びライトイネーブル(WE)を生成する。
レジスタ213は、CPU17から通知される接続チップ数を示す値が設定される。この接続チップ数は、後述するように、1回のアクセスでデータをフラッシュメモリモジュール30に書き込む場合の物理ページのサイズ(M)に基づいて、CPU17により算出される値である。
コマンドシーケンサ21は、ライト動作時に、レジスタ213に設定される接続チップ数(ここでは2)に応じて、セレクタ211,212により第1及び第2のフラッシュメモリチップ31,32のそれぞれに対して同時にデータストローブ(DQS0,DQS1)を供給する。また、コマンドシーケンサ21は、リード動作時に、レジスタ213に設定される接続チップ数(2)に応じて、セレクタ211,212により第1及び第2のフラッシュメモリチップ31,32のそれぞれに対して同時にリードイネーブル(RE0_n,RE1_n)を供給する。
一方、SSDの基本動作では、CPU17は、接続チップ数(1)をレジスタ213に設定する。これにより、コマンドシーケンサ21は、ライト動作時に、第1または第2のフラッシュメモリチップ31,32のいずれかに対して、データストローブ(DQS0,DQS1)のいずれかを供給する。また、コマンドシーケンサ21は、リード動作時に、第1または第2のフラッシュメモリチップ31,32のいずれかに対して、リードイネーブル(RE0_n,RE1_n)のいずれかを供給する。
(メモリ制御動作)
次に、図3のフローチャート及び図4のタイミングチャートを参照して、ライト動作時のメモリアクセスコントローラ16の動作を説明する。
ライト動作時には、コマンド管理モジュール15はCPU17からの命令に従って、ライトコマンドをメモリアクセスコントローラ16に発行する。データフローコントローラ20は、バッファメモリ(DRAM18)のデータ(IOデータ)をバッファ管理モジュール13を経由し、受領し、入出力I/F19のデータパス100に転送する。入出力I/F19は、データパス100を介してライトデータであるデータをフラッシュメモリモジュール30に出力する。
フラッシュメモリモジュール30は、コマンドシーケンサ21から出力されて、入出力I/F19の制御信号パス110〜114を介して供給されるメモリ制御信号によりデータを格納する。本実施形態では、図3に示すように、コマンドシーケンサ21は、フラッシュメモリモジュール30に含まれるフラッシュメモリチップのチップ数に応じてメモリ制御信号を切り替える制御を実行する(ブロック203)。
メモリアクセスコントローラ16は、コマンドシーケンサ21のレジスタ213に設定される接続チップ数が「1」の場合には、基本ライト動作を実行する(ブロック200のNO)。基本ライト動作の場合には、コマンドシーケンサ21は、セレクタ212を制御してRE/DQS生成器210により生成されるデータストローブ(DQS0)を、1つのフラッシュメモリチップ31に対して供給する(ブロック201)。また、コマンドシーケンサ21は、データストローブ(DQS0)以外のメモリ制御信号(制御信号パス110)を、1つのフラッシュメモリチップ31に対して供給する。
図4(B)〜(D)は、基本ライト動作のタイミングチャートである。なお、図4(A)は、基本ライト動作および後述する本実施形態のライト動作のタイミング用のクロック信号CLKである。図4(B)はチップイネーブル(CE_n)である。また、図4(D)はデータフローコントローラ20から出力されるライト用のデータ(IOデータ)100である。IOデータには、ユーザデータ(1〜2N)以外にコマンド(CMD)及びアドレス(ADR)が含まれている。また、図4において、IOデータにおいて斜線で示す部分は無効なデータ期間であることを示す(後述する図5、8、9においても同様である)。
基本ライト動作では、図4(C),(D)に示すように、メモリアクセスコントローラ16は、コマンドシーケンサ21により生成されるデータストローブ(DQS0)の立ち上がり、立下りの両エッジが、データフローコントローラ20から出力されるデータの真中に来るように調整する。データフローコントローラ20から出力されるデータは、フラッシュメモリチップ31のキャッシュ領域(Data Cache)311に送出される。
ここで、コマンド管理モジュール15により発行されるライトコマンドの物理ページのサイズ(Mバイトとする)が、1つのフラッシュメモリチップ31のNバイトより大きい場合(例えばM=2Nバイト)を想定する。即ち、フラッシュメモリチップ31,32はそれぞれ、ライト動作のアクセス単位である物理ページのサイズがNバイトとする。
基本ライト動作では、図4(D)に示すように、メモリアクセスコントローラ16は、コマンドフェーズ、アドレスフェーズ、及び書き込み時間(WT1)において、フラッシュメモリチップ31の物理ページサイズ(Nバイト)単位で2単位分の制御を実行することになる(ブロック202)。要するに、基本ライト動作では、物理ページサイズがNバイトより大きいサイズ(Mバイト)のデータの場合には、1つのフラッシュメモリチップ31の異なるアドレスに分散されて書き込まれる。この場合、Nバイト単位で2単位分の書き込み時間(WT1)が必要となる。
一方、メモリアクセスコントローラ16は、コマンドシーケンサ21のレジスタ213に設定される接続チップ数が「2」の場合には、本実施形態のライト動作を実行する(ブロック200のYES,203)。コマンドシーケンサ21は、セレクタ212を制御してRE/DQS生成器210により生成されるデータストローブ(DQS0,DQS1)を、2つのフラッシュメモリチップ31,32のそれぞれに対して供給する(ブロック204)。また、コマンドシーケンサ21は、データストローブ(DQS0,DQS1)以外のメモリ制御信号(制御信号パス110)を、2つのフラッシュメモリチップ31に対して供給する。
ここで、SSDとして接続すべきフラッシュメモリチップ数の決定方法について説明する。本実施形態のSSDでは、ライト動作またはリード動作のアクセス単位である1物理ページのサイズとして、Mバイトが設定されているものとする。一方、フラッシュメモリモジュール30として接続可能な1個のフラッシュメモリチップ(31または32)の1物理ページのサイズは、Nバイト(N<M)とする。
CPU17は、接続チップ数をZとして、式「Z=M/N」から接続チップ数Zを算出する。CPU17は、算出した接続チップ数Z(ここではZ=2)をコマンドシーケンサ21のレジスタ213に設定する。CPU17の算出決結果Zが整数値ではない場合やNバイトのチップが複数準備できない場合の実現方法については、後述の[物理ページサイズとフラッシュメモリチップの使用方法]で示す。
図4(E)〜(H)は、本実施形態のライト動作のタイミングチャートである。図4(E)はチップイネーブル(CE_n)である。また、図4(H)はデータフローコントローラ20から出力されるライト用のデータ(IOデータ)である。
コマンドシーケンサ21は、レジスタ213に設定された接続チップ数が2の場合に、セレクタ212を制御して、RE/DQS生成器210により生成されるデータストローブ(DQS0,DQS1)を、2つのフラッシュメモリチップ31,32のそれぞれに対して供給する。また、コマンドシーケンサ21は、データストローブ(DQS0,DQS1)以外のメモリ制御信号(制御信号パス110)を、2つのフラッシュメモリチップ31,32のそれぞれに対して供給する。
具体的には、図4(F),(G)に示すように、RE/DQS生成器210は、基本ライト動作時と同様のトグルサイクルでデータストローブ(DQS0,DQS1)を生成する。コマンドシーケンサ21は、トグル回数をカウントして、データストローブ(DQS0,DQS1)を前半と後半に分けて出力する。
従って、図4(F),(H)に示すように、フラッシュメモリチップ31に対しては、1物理ページサイズ(Mバイト)の前半の物理ページ(N=M/2)のデータが書き込まれる。一方、図4(G),(H)に示すように、フラッシュメモリチップ32に対しては、1物理ページサイズ(Mバイト)の後半の物理ページ(N=M/2)のデータが書き込まれる。この場合、データフローコントローラ20は、基本ライト動作時と同様の処理で、書き込み用のデータ(IOデータ)をフラッシュメモリチップ31,32のそれぞれに対して供給する。
以上のようにして、フラッシュメモリチップの1物理ページサイズ(Nバイト)より大きい物理ページのサイズ(M=2Nバイト)のデータを、1回のアクセスで、2つのフラッシュメモリチップ31,32に書き込む。この場合、メモリアクセスコントローラ16は、フラッシュメモリチップ31,32の同一アドレスに、1物理ページサイズ(Mバイト)の前半と後半のデータを書き込むように制御する(ブロック205)。
従って、本実施形態のライト動作では、図4(H)に示すように、Nバイト単位で1単位分の書き込み時間(WT2)で、Nバイト単位で2単位分の物理ページサイズ(M=2Nバイト)のデータを書き込むことができる。これに対して、前述したように、基本ライト動作では、Nバイト単位で2単位分の書き込み時間(WT1)が必要である(図4(D)を参照)。
図5は、リード動作時のメモリアクセスコントローラ16の動作を説明するためのタイミングチャートである。リード動作時には、コマンド管理モジュール15はCPU17からの命令に従って、リードコマンドをメモリアクセスコントローラ16に発行する。
図5(B)〜(F)は、基本リード動作のタイミングチャートである。なお、図5(A)は、基本リード動作および後述する本実施形態のリード動作のタイミング用のクロック信号CLKである。図5(B)はチップイネーブル(CE_n)である。図5(C)はレディ/ビジー(R/B)である。図5(D)はリードイネーブル(RE0_n)である。図5(E)はデータストローブ(DQS0)であり、リード動作時には第1のフラッシュメモリチップ31から出力される。図5(F)は第1のフラッシュメモリチップ31から出力されるリードデータ(IOデータ)である。
メモリアクセスコントローラ16は、コマンドシーケンサ21のレジスタ213に設定される接続チップ数が「1」の場合には、基本リード動作を実行する。基本リード動作では、コマンドシーケンサ21は、セレクタ211を制御してRE/DQS生成器210により生成されるリードイネーブル(RE0_n)を、1つのフラッシュメモリチップ31に対して供給する。メモリアクセスコントローラ16は、フラッシュメモリチップ31からデータストローブ(DQS0)及びリードデータ(IOデータ)を受け取る。
即ち、基本リード動作では、図5(F)に示すように、メモリアクセスコントローラ16は、コマンドフェーズ、アドレスフェーズ、及び読み出し時間(RT1)において、フラッシュメモリチップ31の物理ページサイズ(Nバイト)単位で2単位分の制御を実行することになる。従って、基本リード動作では、物理ページサイズがフラッシュメモリチップ31のNバイトより大きいサイズ(Mバイト)のデータの場合には、Nバイト単位で2単位分の読み出し時間(RT1)が必要となる。
図5(G)〜(M)は、本実施形態のリード動作のタイミングチャートである。本実施形態のリード動作では、前述のライト動作と同様に、フラッシュメモリチップの1物理ページサイズ(Nバイト)より大きい物理ページのサイズ(M=2Nバイト)のデータを、1回のアクセスで、2つのフラッシュメモリチップ31,32の同一アドレスから読み出す。この場合、コマンドシーケンサ21は、トグル回数をカウントして、リードイネーブル(RE0_n,RE1_n)を前半と後半に分けて出力する。
以上のように本実施形態によれば、フラッシュメモリモジュール30に含まれるフラッシュメモリチップの物理サイズに依存することなく、1物理ページのサイズが大きいデータを、複数のフラッシュメモリチップを使用して、1回のアクセスで書き込み、または読み出すことができる。換言すれば、複数のフラッシュメモリチップに対して1回のアクセスで書き込み動作および読み出し動作を実行できるため、アクセス性能が低下することなく、1物理ページサイズを増大させることができる。
(変形例)
図4(I)〜(K)は、本実施形態の変形例に関するライト動作のタイミングチャートである。本変形例のメモリアクセスコントローラ16では、RE/DQS生成器210は、トグルサイクルが異なるデータストローブ(DQS0,DQS1)を生成する。
具体的には、図4(I),(J)に示すように、RE/DQS生成器210は、立上り、立下りのエッジを2サイクル間隔でトグルさせるデータストローブ(DQS0,DQS1)を生成する。コマンドシーケンサ21は、レジスタ213に設定された接続チップ数が2の場合に、セレクタ212を制御して、RE/DQS生成器210により生成されるデータストローブ(DQS0,DQS1)を出力する。入出力I/F19は、制御信号パス112,114を介してデータストローブ(DQS0,DQS1)を、2つのフラッシュメモリチップ31,32のそれぞれに対して供給する。
一方、本変形例では、データフローコントローラ20は、Mバイトの1物理ページサイズのデータ(IOデータ)100をソート(sort)して、一定の順番に出力するように制御する。ここで、Mバイトのデータを、前半ページと後半ページに分けて、N(N=M/2)バイトのフラッシュメモリチップを2つ利用して処理するとする。
このようなメモリアクセスコントローラ16の制御により、図4(K)に示すように、第1のフラッシュメモリチップ31には、前半ページの1つ目のデータ(0-1)、2つ目のデータ(0-2)、3つ目のデータ(0-3)、・・・という順番で書き込まれる。一方、第2のフラッシュメモリチップ32には、後半ページの1つ目のデータ(1-1)、2つ目のデータ(1-2)、3つ目のデータ(1-3)、・・・という順番で書き込まれる。
即ち、データフローコントローラ20は、ライト動作時には、入出力I/F19のデータパス100に対して、前半ページの1つ目のデータ(0-1)、後半ページの1つ目のデータ(1-1)、前半ページの2つ目のデータ(0-2)、後半ページの2つ目のデータ(1-2)、・・・、前半ページのN番目のデータ(0-N)、後半ページのN番目のデータ(1-N)という順番で出力するように制御する。
以上のようにして、本変形例の方法においても、フラッシュメモリチップの1物理ページサイズ(Nバイト)より大きい物理ページのサイズ(M=2Nバイト)のデータを、1回のアクセスで、2つのフラッシュメモリチップ31,32に書き込むことができる。
一方、図5(N)〜(R)は、本変形例に関するリード動作のタイミングチャートである。本変形例のリード動作では、RE/DQS生成器210により生成されるリードイネーブル(RE0_n,RE1_n)のタイミングは、本実施形態のリード動作時のタイミング(図5(I),(K)を参照)と同じである。
本変形例のリード動作においても、前述のライト動作と同様に、フラッシュメモリチップの1物理ページサイズ(Nバイト)より大きい物理ページのサイズ(M=2Nバイト)のデータを、1回のアクセスで2つのフラッシュメモリチップ31,32の同一アドレスから読み出すことが可能である。また、本変形例のリード動作では、分割ページ単位でページ毎にデータを読み出すことも可能である。
なお、本実施形態及び変形例において、ライト動作時のタイミングは、データストローブ(DQS0,DQS1)の両エッジを使用するトグル制御方法が採用されているが、これに限ることなく、一般的なライトイネーブル(WE)を使用する制御方法も適用可能である。
[第2の実施形態]
図6は、第2の実施形態に関するメモリアクセスコントローラ16の要部を示すブロック図である。なお、SSD全体の構成は、前述の図1に示すものと同様であるため、機能や動作の説明を省略する。
前述したように、メモリアクセスコントローラ16は、チャネル毎に設けられている。図6は、メモリアクセスコントローラ16に含まれるチャネル毎のコマンドシーケンサ21_ch(0)〜21_ch(n)、入出力I/F19、及びフラッシュメモリモジュール30_ch(0)〜30_ch(n)の周辺構成を示す図である。なお、各チャネルのメモリアクセスコントローラ16の動作は同一であるため、本実施形態は、便宜的にチャネルch(n)のメモリアクセスコントローラ16について説明する。
本実施形態のコマンドシーケンサ21_ch(n)は、メモリ制御信号に含まれるチップ・イネーブル(CEn)を複数(ここでは2)のチップ・イネーブルCE0_n,CE1_nに分割して出力するチップ・イネーブル(CE)生成器60を有する。さらに、コマンドシーケンサ21_ch(n)は、メモリ制御信号として、コマンドラッチイネーブル(CLE)、アドレスラッチイネーブル(ALE)、リード・イネーブル(REn)、ライトイネーブル(WEn)、及びデータストローブ(DQS)を生成するCLE/ALE/RE/WE/DQS生成器61を有する。
また、コマンドシーケンサ21_ch(n)は、レディ/ビジー(R/B)を出力する。ここでは、便宜的に、コマンドシーケンサ21_ch(n)は、入出力I/F19の制御信号パス600に、コマンドラッチイネーブル(CLE)、ライトイネーブル(WEn)及びアドレスラッチイネーブル(ALE)を出力する。また、コマンドシーケンサ21_ch(n)は、リード・イネーブル(REn)を制御信号パス610に出力する。さらに、コマンドシーケンサ21_ch(n)は、チップ・イネーブルCE0_n,CE1_nをそれぞれ、制御信号パス620,621に出力する。
(メモリ制御動作)
図1及び図2を参照して前述したように、ライト動作時には、コマンド管理モジュール15はCPU17からの命令に従って、ライトコマンドをメモリアクセスコントローラ16に発行する。データフローコントローラ20は、バッファ管理モジュール13からのデータ(IOデータ)を、入出力I/F19のデータパス100に転送する。入出力I/F19は、データパス100を介してライトデータであるデータをフラッシュメモリモジュール30_ch(n)に出力する。
図7は、本実施形態のCE制御、及び2チップのフラッシュメモリチップ31,32に対するライト動作時におけるアクセスの概要を示す図である。
本実施形態のSSDでは、ライト動作またはリード動作のアクセス単位である1物理ページのサイズとして、32Kバイト(M=32Kバイト)が設定されているものとする。ここで、フラッシュメモリモジュール30_ch(n)には、1物理ページのサイズが32Kバイトのフラッシュメモリチップが接続されている場合を想定する。この場合には、メモリアクセスコントローラ16が、図7(A)〜(D)に示すように、チップ・イネーブル(CEn)、コマンドラッチイネーブル(CLE)などのメモリ制御信号、及び32Kバイトのライトデータ(Wdat)を出力することにより、フラッシュメモリチップには32Kバイトのデータ(Wdat)が格納される。
一方、フラッシュメモリモジュール30_ch(n)に接続されるフラッシュメモリチップ(31または32)の1物理ページのサイズが16Kバイト(N=M/2)である場合には、そのままの状態ではライト動作は不可能となる。そこで、本実施形態では、1物理ページのサイズが16Kバイトの各フラッシュメモリチップ31,32を使用し、コマンドシーケンサ21_ch(n)は、チップ・イネーブル(CEn)を2分割したチップ・イネーブルCE0_n,CE1_nを出力する。このため、入出力I/F19には、チップ・イネーブルCE1_nを転送するための制御信号パス621が追加となる。
即ち、図7(E)〜(I)に示すように、コマンドシーケンサ21_ch(n)から出力されるチップ・イネーブルCE0_nが供給されるフラッシュメモリチップ31には、32Kバイトのライトデータ(Wdat)の前半部分である16Kバイトのデータ(W1)が格納される。また、コマンドシーケンサ21_ch(n)から出力されるチップ・イネーブルCE1_nが供給されるフラッシュメモリチップ32には、32Kバイトのライトデータ(Wdat)の後半部分である16Kバイトのデータ(W2)が格納される。
以上のようにして本実施形態によれば、チップ・イネーブル(CEn)を2分割するCE制御により、16Kバイトのフラッシュメモリチップを2チップ分使用することで、32Kバイトのライトアクセスが可能になる。換言すれば、チップ・イネーブルの制御信号パスを追加するだけで、チャネル毎のフラッシュメモリチップ数を増大した場合でも、1回のアクセスで各フラッシュメモリチップに対するライト動作を実行できる。即ち、フラッシュメモリチップ数を増大した場合でも、コマンド、アドレス・フェーズ、プログラム(program)のプロセスを追加する必要は無いため、ライト動作時間を大幅に短縮化できる。ここで、プログラムとは、フラッシュメモリ30のチップ内部への書き込み動作中であることを示す。
図8は、図7(E)〜(I)に示すライト動作の制御を具体的に説明するためのタイミングチャートであり、特に図7のCmd=80hからの拡大図に相当する。ここでは、1物理ページ分(32Kバイト)のデータを、フラッシュメモリチップ31,32に書き込む場合である。
図8(H)は、図6で図示していないが、コマンドシーケンサ21_ch(n)に含まれる生成器61により生成されるデータストローブ(DQS)の出力タイミングである。メモリアクセスコントローラ16は、チップ・イネーブルCE0_n、ライトイネーブル(WEn)及びデータストローブ(DQS)に応じて、1物理ページ分(32Kバイト)のデータの中で前半部分である16Kバイトのデータ(D0−D(N-1))をフラッシュメモリチップ31に格納する。
さらに、メモリアクセスコントローラ16は、チップ・イネーブルCE1_n及びデータストローブ(DQS)に応じて、1物理ページ分(32Kバイト)のデータの中で後半部分である16Kバイトのデータ(D(N+1)−D(2N))をフラッシュメモリチップ32に格納する。ここで、図8(H)に示すように、チップ・イネーブルCE0_n,CE1_nの切り替え時(800)に、メモリアクセスコントローラ16は、生成器61により生成されるデータストローブ(DQS)の出力タイミングを調整する。これにより、特に周波数が高くなった場合でも、チップ・イネーブル(CE)とデータストローブ(DQS)とのセットアップ/ホールド(Setup/Hold)調整を実現することができる。なお、データストローブ(DQS)の出力タイミングの調整は特別の制御回路ではなく、コマンドシーケンサ21_ch(n)によりチップ・イネーブルCE0_n,CE1_nの切り替え時に同期して実行するように制御する。
(リード動作)
図9(A)〜(J)は、本実施形態のリード動作のタイミングチャートである。ここでは、前述のライト動作と同様に、1物理ページ分(32Kバイト)のデータをフラッシュメモリチップ31,32から読み出す場合である。
リード動作の場合には、メモリアクセスコントローラ16は、チップ・イネーブルCE0_n及びリードイネーブル((REn))に応じて、1物理ページ分(32Kバイト)のデータの中で前半部分である16Kバイトのデータ(D0−D(N-1))をフラッシュメモリチップ31から読み出す。また、メモリアクセスコントローラ16は、チップ・イネーブルCE1_n及びリードイネーブル((REn))に応じて、1物理ページ分(32Kバイト)のデータの中で後半部分である16Kバイトのデータ(D(N+1)−D(2N))をフラッシュメモリチップ32から読み出す。
リード動作の場合には、図9(H)に示すように、チップ・イネーブルCE0_n,CE1_nの切り替え時(900)に、フラッシュメモリチップ31,32から出力されるデータストローブ(DQS)の出力タイミングが調整されることになる。
なお、本実施形態において、チップ・イネーブル(CE)とデータストローブ(DQS)とのセットアップ/ホールド調整は、データストローブ(DQS)をデイレー(Delay)させる方法でなくてもよい。例えば、別の方法として、2つのチップ・イネーブルCE0_n,CE1_nとデータストローブ(DQS)間のタイミングを満たすように、チップ・イネーブル制御(CE制御)を行なう方法でもよい。具体的には、チップ・イネーブル(CE)生成器60の内部回路において、倍速クロックを作成して反転クロックからチップ・イネーブルの出力を調整する。
[物理ページサイズとフラッシュメモリチップの使用方法]
第1及び第2の実施形態は、2つのフラッシュメモリチップを使用して、フラッシュメモリチップの1物理ページより大きいサイズの1物理ページのデータを書き込むアクセス方法について説明している。図10〜図14は、2つのフラッシュメモリチップ(便宜的にチップ1,2と表記する)を組み合わせて使用する使用方法の具体例を説明するための図である。
ここで、図10(A)〜図14(A)はそれぞれ、1回のアクセスで書き込むために必要な物理ページのサイズ(ここでは16Kバイト)を意味している。以下、第1から第5の使用方法の具体例を説明する。
第1の使用方法は、図10(B),(C)に示すように、チップ1,2の物理ページサイズはいずれも同じサイズ(ここでは10Kバイト)の場合で、チップ1,2を順番に使用する方法である。具体的には、チップ1に10Kバイトのデータを書き込み、チップ2に残りの6Kバイトのデータを書き込む。この場合、チップ2の未使用領域1000には、4Kバイトのゼロ(0-pad)を書き込む。
第2の使用方法は、図11(B),(C)に示すように、チップ1,2の物理ページサイズはいずれも同じサイズ(10Kバイト)の場合で、チップ1,2の同容量を使用する方法である。具体的には、チップ1に8Kバイトのデータを書き込み、チップ2に残りの8Kバイトのデータを書き込む。この場合、チップ1,2の各未使用領域1001には、2Kバイトのゼロ(0-pad)を書き込む。
第3の使用方法は、図12(B),(C)に示すように、チップ1,2の物理ページサイズはいずれも同じサイズ(10Kバイト)の場合で、チップ1,2の排他的使用を行なう方法である。具体的には、チップ1に10Kバイトのデータを書き込み、チップ2にも10Kバイトのデータを書き込む。この場合、チップ1,2の4Kバイト分のデータ1002は、重複利用のデータとして書き込まれる。リード動作時には、チップ1のデータ1002を利用する。
第4の使用方法は、図13(B),(C)に示すように、チップ1,2の物理ページサイズが異なるサイズの場合で、必要な物理ページのサイズ(16Kバイト)を確保する方法である。具体的には、チップ1に10Kバイトのデータを書き込み、チップ2には6Kバイトのデータを書き込む。
第5の使用方法は、図14(B),(C)に示すように、チップ1,2の物理ページサイズは同一サイズ(8Kバイト)の場合で、必要な物理ページのサイズ(16Kバイト)を確保する方法である。具体的には、チップ1,2のいずれにも8Kバイトのデータを書き込む。
以上要するに、フラッシュメモリチップのサイズに依存しない物理ページ単位のアクセスが可能なメモリ制御を実現することができる。従って、SSDに使用するフラッシュメモリチップのサイズ的制限を緩和できるため、SSDコントローラ10の設計上の制約をが緩和することが可能となる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10…SSDコントローラ、11…内部バス、
12…ホストインターフェース(ホストI/F)、13…バッファ管理モジュール、
14…フラッシュメモリコントローラ、15…コマンド管理モジュール、
16…フラッシュメモリアクセスコントローラ、17…マイクロプロセッサ(CPU)、
18…DRAM、19…入出力インターフェース(入出力I/F)、
20…データフローコントローラ、21…コマンドシーケンサ、
30…NAND型フラッシュメモリモジュール、31、32…フラッシュメモリチップ、
40…ブートROM、50…ホストデバイス、60…CE生成器、
210…RE/DQS生成器、211,212…セレクタ、213…レジスタ。

Claims (10)

  1. 所定のページサイズをアクセス単位とするフラッシュメモリチップを有し、複数の前記フラッシュメモリチップを含むことが可能なメモリモジュールと、
    前記メモリモジュールに対して前記所定のページサイズを超えるページサイズをアクセス単位としてデータを書き込む場合に、前記データ及びアドレスを含む共通信号に含まれない独立のメモリ制御信号を前記各フラッシュメモリチップのそれぞれに供給し、前記各フラッシュメモリチップの同一アドレスにデータを書き込むように制御するコントローラと
    を具備するデータ記憶装置。
  2. 前記コントローラは、
    前記メモリ制御信号として前記各フラッシュメモリチップのそれぞれに対応する各データストローブ信号を生成し、前記各フラッシュメモリチップのそれぞれに供給するように構成されている請求項1に記載のデータ記憶装置。
  3. 前記コントローラは、
    前記メモリ制御信号として前記各フラッシュメモリチップのそれぞれに対応し、トグルサイクルの異なる各データストローブ信号を生成し、前記各フラッシュメモリチップのそれぞれに供給するように構成されている請求項1または請求項2のいずれか1項に記載のデータ記憶装置。
  4. 前記コントローラは、
    前記メモリ制御信号として前記各フラッシュメモリチップのそれぞれに対応する各データストローブ信号を生成し、
    前記データを前記フラッシュメモリチップのチップ数に応じて分割し、
    前記分割されたデータ毎に対応する前記データストローブ信号を割り当てることで、前記各フラッシュメモリチップの同一アドレスに前記分割されたデータを書き込むように制御するように構成されている請求項1から請求項3のいずれか1項に記載のデータ記憶装置。
  5. 前記コントローラは、
    前記各フラッシュメモリチップのそれぞれに対して前記アクセス単位のデータを分割した分割データを書き込む場合に、前記メモリモジュールから前記アクセス単位でデータを読み出すことを前提とした前記分割データの書き込み順序を決定するように構成されている請求項1から請求項4のいずれか1項に記載のデータ記憶装置。
  6. 前記コントローラは、
    前記メモリ制御信号として前記各フラッシュメモリチップのそれぞれに対応する各チップイネーブル信号を生成し、前記各フラッシュメモリチップのそれぞれに供給するように構成されている請求項1に記載のデータ記憶装置。
  7. 前記コントローラは、
    前記所定のページサイズを超えるページサイズに基づいて、前記各フラッシュメモリチップのチップ数を決定し、
    前記チップ数に基づいて前記独立のメモリ制御信号を生成するように構成されている請求項1から請求項6のいずれか1項に記載のデータ記憶装置。
  8. 前記コントローラは、
    前記各フラッシュメモリチップのそれぞれに対して前記アクセス単位のデータを分割した分割データを書き込む場合に、前記各フラッシュメモリチップのページ領域の空き領域には所定のデータを書き込むように構成されている請求項1から請求項7のいずれか1項に記載のデータ記憶装置。
  9. 所定のページサイズをアクセス単位とするフラッシュメモリチップを有し、複数の前記フラッシュメモリチップを含むことが可能なメモリモジュールに対してデータを書き込み、読み出すデータ記憶装置に適用するメモリ制御装置であって、
    前記メモリモジュールに対して前記所定のページサイズを超えるページサイズをアクセス単位としてデータを書き込む場合に、前記データ及びアドレスを含む共通信号に含まれない独立のメモリ制御信号を前記各フラッシュメモリチップのそれぞれに供給し、前記各フラッシュメモリチップの同一アドレスにデータを書き込むように制御するコントローラ
    を具備するメモリ制御装置。
  10. 所定のページサイズをアクセス単位とするフラッシュメモリチップを有し、複数の前記フラッシュメモリチップを含むことが可能なメモリモジュールに対してデータを書き込み、読み出すデータ記憶装置に適用するメモリ制御方法であって、
    前記メモリモジュールに対して前記所定のページサイズを超えるページサイズをアクセス単位としてデータを書き込む場合に、前記データ及びアドレスを含む共通信号に含まれない独立のメモリ制御信号を生成し、
    前記各フラッシュメモリチップのそれぞれに前記各メモリ制御信号を供給し、前記各フラッシュメモリチップの同一アドレスにデータを書き込むように制御するメモリ制御方法。
JP2011098532A 2011-04-26 2011-04-26 データ記憶装置、メモリ制御装置及びメモリ制御方法 Withdrawn JP2012230554A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011098532A JP2012230554A (ja) 2011-04-26 2011-04-26 データ記憶装置、メモリ制御装置及びメモリ制御方法
US13/421,618 US20120278538A1 (en) 2011-04-26 2012-03-15 Data storage apparatus, memory control device, and method for controlling flash memories

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011098532A JP2012230554A (ja) 2011-04-26 2011-04-26 データ記憶装置、メモリ制御装置及びメモリ制御方法

Publications (1)

Publication Number Publication Date
JP2012230554A true JP2012230554A (ja) 2012-11-22

Family

ID=47068864

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011098532A Withdrawn JP2012230554A (ja) 2011-04-26 2011-04-26 データ記憶装置、メモリ制御装置及びメモリ制御方法

Country Status (2)

Country Link
US (1) US20120278538A1 (ja)
JP (1) JP2012230554A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10891079B2 (en) 2018-12-07 2021-01-12 Fuji Xerox Co., Ltd. Information processing apparatus

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103106159B (zh) * 2013-01-31 2015-12-23 武汉天喻信息产业股份有限公司 一种建立通道访问智能存储设备的方法
US10353631B2 (en) * 2013-07-23 2019-07-16 Intel Corporation Techniques for moving data between a network input/output device and a storage device
US9329931B2 (en) * 2013-07-24 2016-05-03 Seagate Technology Llc Solid state drive emergency pre-boot application providing expanded data recovery function
KR102397582B1 (ko) 2015-06-22 2022-05-13 삼성전자주식회사 데이터 저장 장치, 이를 포함하는 데이터 처리 시스템, 및 이의 작동 방법
CN113721838B (zh) * 2021-07-22 2023-12-19 成都忆芯科技有限公司 用于存储设备的写、读数据方法、存储控制器以及dma引擎

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60252394A (ja) * 1984-05-22 1985-12-13 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション カラ−画像表示装置
KR0157494B1 (ko) * 1994-09-08 1998-11-16 김광호 메모리 액세스방법 및 그 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10891079B2 (en) 2018-12-07 2021-01-12 Fuji Xerox Co., Ltd. Information processing apparatus

Also Published As

Publication number Publication date
US20120278538A1 (en) 2012-11-01

Similar Documents

Publication Publication Date Title
US11042297B2 (en) Techniques to configure a solid state drive to operate in a storage mode or a memory mode
US10534560B2 (en) Data storage device and data processing system having the same
US10031879B2 (en) Memory device for a hierarchical memory architecture
JP6097444B2 (ja) メモリシステムの温度情報に基づくメモリシステム管理のためのシステム及び方法
US10943183B2 (en) Electronics device performing software training on memory channel and memory channel training method thereof
KR101516580B1 (ko) 컨트롤러, 이를 포함하는 데이터 저장 장치 및 데이터 저장 시스템, 및 그 방법
JP6373559B2 (ja) メモリ装置及びメモリ装置の動作方法
US8838879B2 (en) Memory system
CN109690508B (zh) 带虚拟控制器模式的存储器控制器
JP6062121B1 (ja) 単一チャネル内のdram空間合体のための方法および装置
JP2012230554A (ja) データ記憶装置、メモリ制御装置及びメモリ制御方法
KR101857911B1 (ko) 가상채널을 이용한 다중 채널 메모리 제어기
TW201320072A (zh) 記憶體儲存裝置、記憶體控制器與其資料傳輸方法
TW202211034A (zh) 處理資料集的方法及系統、以及記憶體模組
TWI698744B (zh) 資料儲存裝置及邏輯至物理位址映射表之更新方法
JP2018152112A (ja) メモリ装置及びメモリ装置の動作方法
JP2015088071A (ja) 情報処理装置、記憶装置制御回路及び記憶装置の制御方法
US8713204B2 (en) High-performance AHCI interface
US9633721B2 (en) Storage device with 2D configuration of phase change memory integrated circuits
US20120159024A1 (en) Semiconductor apparatus
CN114253462A (zh) 提供混合通道存储设备的方法
CN114253461A (zh) 混合通道存储设备
US20220113912A1 (en) Heterogeneous in-storage computation
US20150212759A1 (en) Storage device with multiple processing units and data processing method
TWI842057B (zh) 資料儲存裝置、以及非揮發式記憶體控制方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131205

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131212

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131219

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131226

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140109

A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20140701