【事件の表示】
　特願２０１５−５２７１２２「ストレージ装置および記憶制御方法」拒絶査定不服審判事件〔平成２７年　１月２２日国際公開，ＷＯ２０１５／００８３７５，請求項の数（１１）〕について，次のとおり審決する。
【結　論】
　原査定を取り消す。
　本願の発明は，特許すべきものとする。
【理　由】
第１．手続の経緯
　本願は，２０１３年７月１９日を国際出願日とする出願であって，
　平成２７年１１月２５日付けで国内書面が提出されると共に審査請求がなされ，平成２９年１月１２日付けで審査官により拒絶理由が通知され，これに対して平成２９年４月７日付けで意見書が提出されると共に手続補正がなされたが，平成２９年４月１４日付けで審査官により拒絶査定がなされ（謄本送達；平成２９年４月２５日），これに対して平成２９年７月２４日付けで審判請求がなされると共に手続補正がなされ，平成２９年８月１０日付けで審査官により特許法第１６４条第３項の規定に基づく報告がなされたものである。
　
第２．原査定の概要
　原審における平成２９年４月１４日付けの拒絶査定（以下，これを「原審拒絶査定」という）は概要，次のとおりである。
　
　本願の請求項１，本願の請求項２，本願の請求項４〜本願の請求項９，及び，本願の請求項１１に係る発明は，以下の引用文献１〜引用文献４に基づいて，その発明の属する技術の分野における通常の知識を有する者（以下，「当業者」という。）が容易に発明できたものであるから，特許法第２９条第２項の規定により特許を受けることができない。
　
引用文献等一覧
１．国際公開第２０１３／０８４２６７号
２．特開２０１０−１９１６７０号公報（周知技術を示す文献）
３．特開２００８−１１２２７６号公報（周知技術を示す文献）
４．特開２０１２−１１８５８７号公報（周知技術を示す文献）
　
第３　審判請求時の補正について
１．平成２９年７月２４日付けの手続補正（以下，これを「審判請求時の補正」という）は，特許法第１７条の２第３項から第６項までの要件に違反しているものとはいえない。
　審判請求時の補正により，補正前の請求項１に，
「前記ストレージコントローラは，仮想ボリュームを提供し，
　前記複数の半導体記憶ユニットは，前記仮想ボリュームに記憶領域が割り当てられるプールを構成し，
　前記ストレージコントローラは，前記複数の半導体記憶ユニットにそれぞれ対応した複数の半導体記憶ユニット残容量と，前記複数の半導体記憶ユニット残量の合計値であるプール残容量と，を管理し」，
　という構成が加えられ（以下，これを「補正事項１」という），
　補正前の請求項１に記載の「各半導体ユニット」に,「前記プール内の」という限定事項が加わり（以下，これを「補正事項２」という），
　補正前の請求項１に記載の「半導体記憶ユニットが枯渇するリスクを算出するための枯渇関連情報」に，「であってその半導体記憶ユニット内での物理的な使用量に関する情報を含んだ枯渇情報」という限定事項が加わり（以下，これを「補正事項３」という），
　補正前の請求項１に記載の「複数の半導体記憶ユニットのうちのいずれかの容量枯渇リスクを軽減するように半導体記憶ユニット間でデータを移動する枯渇回避処理を実行する」に，「データ移動元および移動先の半導体記憶ユニットを決定して前記プール内の」という限定事項が加わり（以下，これを「補正事項４」という），
　補正前の請求項２に記載の「複数の半導体記憶ユニットにおける残寿命が平準化するように半導体記憶ユニット間でデータを移動する寿命平準化処理を実行する」に，「データ移動元および移動先の半導体記憶ユニットを決定して前記プール内の」という限定事項が加わり（以下，これを「補正事項５」という），
　補正前の請求項３に記載の「複数の半導体記憶ユニットについての入出力データ量が平準化するように半導体記憶ユニット間でデータを移動する入出力平準化処理を実行する」に，「データ移動元および移動先の半導体記憶ユニットを決定して前記プール内の」という限定事項が加わり（以下，これを「補正事項６」という），
　補正前の請求項５に記載の「前記枯渇関連情報」に，「内の，物理的な使用量に関する情報」という限定事項が加わり（以下，これを「補正事項７」という），
　補正前の請求項１１に，上記指摘の補正事項１〜補正事項４と同じ補正がなされているので，上記指摘の補正事項１〜補正事項７について検討する。
　
２．補正事項１については，国際出願の願書に添付された明細書（以下，これを「当初明細書」という）に，
「【００６９】
　容量仮想化技術（例えば，Ｔｈｉｎ  Ｐｒｏｖｉｓｉｏｎｉｎｇ）とは，ストレージ装置１０が有している物理的な容量より大きな仮想的な容量をホスト計算機３０側に提供する技術である。ホスト計算機３０は，仮想的な論理ボリューム（仮想ボリューム）に対してアクセスする。容量仮想化技術では，ストレージ装置１０がＷＲ要求を受けた場合に，ＷＲ要求のデータのＷＲ先の仮想的な記憶領域（仮想エクステント）に，物理的な記憶領域が割り当てられる。本実施例では，容量仮想化技術において割り当てられる物理的な記憶領域の単位をエクステント単位とする。また，エクステントのサイズは，数ＭＢから数ＧＢと多様性に富んでいてよい。
【００７１】
　同一種類のＤｉｓｋ１１（例えばＳＳＤ７００）でＲＧ（２００，３００，４００）が構成される。１以上のＲＧを基にＰｏｏｌ５００が構成される。
【００７２】
　エクステント（２４０，２４１，２４１，３４０，４４０等）は，Ｐｏｏｌ５００を分割することにより得られた記憶領域（部分記憶領域），つまり，Ｐｏｏｌ５００の一部である。図６では，Ｐｏｏｌ５００は，ＲＧ２００，ＲＧ３００，及びＲＧ４００の３つのＲＧに基づいて構成されている。以下，ＲＧ２００を例に説明する。」
「【００７７】
　仮想ボリューム６００は，ホスト計算機３０がユーザデータを格納するための仮想的な論理ボリュームである。仮想ボリューム６００の容量として定義される容量は，ストレージ装置１０が有する物理記憶デバイスの容量の合計よりも大きな記憶容量とすることができる。なお，仮想ボリューム６００は，任意の数の仮想エクステント（６０１〜６０７等）によって構成されている。仮想ボリューム６００の記憶領域は，仮想アドレス（仮想ボリュームを構成する論理アドレス）で管理されており，所定の範囲に区切られた仮想アドレスの記憶領域により，仮想エクステントが構成される。図６では，１つの仮想エクステントに対して１つのエクステントが対応付けられているが，１つの仮想エクステントに対して複数のエクステントが対応付けられてもよい。」
「【０１０４】
  Ｐｏｏｌ管理ＴＢＬ１３３００は，Ｐｏｏｌ毎に，Ｐｏｏｌ＃１３３０１，ＲＧ＃１３３０２，ＲＧ残容量１３３０３，及びＰｏｏｌ残容量１３３０４を有する。
【０１０５】
　Ｐｏｏｌ＃１３３０１は，Ｐｏｏｌの識別子であり，ユニークな番号である。ＲＧ＃１３３０２は，Ｐｏｏｌを構成する全てのＲＧのＲＧ番号を表す。ＲＧ残容量１３３０３は，ＲＧ毎の残容量を表す。Ｐｏｏｌ残容量１３３０４は，Ｐｏｏｌの残容量を表し，Ｐｏｏｌを構成するＲＧのＲＧ残容量１３３０３の合計値に等しい。ＲＧ残容量１３３０３及びＰｏｏｌ残容量１３３０４は，仮想ボリュームのエクステント未割当領域にデータの書き込みが発生した際に，プロセッサ１０４（Ｗｒｉｔｅ  Ｉ／Ｏ  プログラム１２１００）によりデータの書き込みにより減少した値に更新される。」
　という記載が存在しているので，補正事項１は，当初明細書の記載の範囲内でなされたものであり，上記においても言及したとおり，補正前の請求項１の記載内容を減縮するものであることは明らかである。
　補正事項２〜補正事項４については，当初明細書に，
「【０１６９】
　ストレージコントローラ１００は，ＳＳＤコントローラ７１０に対して，ＳＳＤ内部情報取得コマンド２５０００（図２０参照）を用いて，内部情報の送付を要求する。その要求の応答として，ストレージコントローラ１００は，実行結果通知コマンド２５１００をＳＳＤコントローラ７１０から受信する（Ｓ３００）。Ｓ３００の処理で取得する情報は，統計情報管理ＴＢＬ２３２００に保存されているデータ（ＦＭライト合計量２３２１３，平均圧縮率２３２１４，ＦＭリード合計量２３２１５，及び残消去回数２３２１６）である。
【０１７０】
　ストレージコントローラ１００は，取得した内部情報を基に，Ｄｉｓｋ管理ＴＢＬ１３１００を更新する（Ｓ３０１）。具体的には，ストレージコントローラ１００は，ＦＭライト合計量２３２１３に基づいて，ＦＭライト合計量１３１０８及びＦＭ使用量１３１１１を更新し，ＦＭリード合計量２３２１５に基づいて，ＦＭリード合計量１３１０７を更新し，平均圧縮率２３２１４に基づいて，平均圧縮率１３１０９を更新し，残消去回数２３２１６に基づいて，残消去回数１３１１０を更新する。」
「【０１９３】
　次に，ストレージコントローラ１００は，枯渇リスクが最も高いＲＧと，枯渇リスクが最も低いＲＧとを特定する（Ｓ５０１）。次に，ストレージコントローラ１００は，統計情報管理ＴＢＬ１３６００と，ＳＳＤ７００の統計情報管理ＴＢＬ２３２００とを基に，エントリやエクステント毎のＦＭ  ＷＲ量を予想するＦＭ  ＷＲ量予想処理（図２７参照）を行う（Ｓ５０５）。」
　という記載が存在しているので，補正事項２〜補正事項４は，当初明細書の記載の範囲内でなされたものであり，上記においても言及したとおり，補正前の請求項１の記載内容を減縮するものであることは明らかである。
　
３．補正事項５については，当初明細書に，
「【０２０６】
　ストレージコントローラ１００は，残寿命が最大のＲＧと残寿命が最小のＲＧとを特定し（Ｓ６０１），統計情報管理ＴＢＬ１３６００と，ＳＳＤ７００の統計情報管理ＴＢＬ２３２００とに基づいて，エントリやエクステント毎のＦＭ  ＷＲ量を予想するＦＭ  ＷＲ量予想処理（図２７参照）を実行する（Ｓ６０２）。」
　という記載が存在しているので，補正事項５は，当初明細書の記載の範囲内でなされたものであり，上記においても言及したとおり，補正前の請求項２の記載内容を減縮するものであることは明らかである。
　
４．補正事項６については，当初明細書に，
「【０２１５】
　ストレージコントローラ１００は，ＲＧ物理容量あたりのＩ／Ｏ量が最大のＲＧと，最小のＲＧとを特定し（Ｓ９０１），統計情報管理ＴＢＬ１３６００と，ＳＳＤ７００の統計情報管理ＴＢＬ２３２００とに基づいて，エントリやエクステント毎のＦＭ  ＲＤ／ＷＲ予想量（ＦＭ  ＲＤ予想量及びＦＭ  ＷＲ予想量）を予想する（Ｓ９０２）。具体的には，図２７に示すＦＭ  ＷＲ量予想処理と同様な処理により，ＦＭ  ＲＤ予想量に関しても予想する処理である。」
　という記載が存在しているので，補正事項６は，当初明細書の記載の範囲内でなされたものであり，上記においても言及したとおり，補正前の請求項３の記載内容を減縮するものであることは明らかである。
　
５．補正事項７については，当初明細書に，
「【０１７１】
　次に，ストレージコントローラ１００はＤｉｓｋ管理ＴＢＬ１３１００の情報を基に，このＤｉｓｋの枯渇リスクを計算する（Ｓ３０２）。ここで，枯渇リスクとは，Ｄｉｓｋの枯渇しやすさを判断するための指標であり，本実施例では，数値が高いほうが枯渇し易いことを示す。枯渇リスクは，例えば，ＤｉｓｋへのＷＲ量×平均圧縮率÷空き容量で算出される。つまり，ＷＲ頻度が高く，圧縮率が悪く，空き容量が少ないほど枯渇リスクが高くなる。ＤｉｓｋへのＷＲ量は，統計情報管理ＴＢＬ１３６００のＷＲ量１３６０６のＤｉｓｋ単位の合計であり，平均圧縮率は，Ｄｉｓｋ管理ＴＢＬ１３１００の平均圧縮率１３１０９であり，空き容量は，Ｄｉｓｋ管理ＴＢＬ１３１００の物理容量１３１１２からＦＭ使用量１３１１１を引くことにより算出できる。」
　という記載が存在しているので，補正事項７は，当初明細書の記載の範囲内でなされたものであり，上記においても言及したとおり，補正前の請求項５の記載内容を減縮するものであることは明らかである。
　
６．以上，２．〜５．において検討したとおりであるから，審判請求時の補正は，特許法第１７条の２第３項から第５項までの要件に違反しているものとはいえない。
　そして，「第４．本願発明」から「第６．対比・判断」までに示すように，審判請求時の補正により補正された請求項（以下，これを「補正後の請求項」という）１〜補正後の請求項１１に係る発明は，独立特許要件，即ち，特許法第１７条の２第６項を満たすものである。
　
第４．本願発明について
　本願の請求項１〜本願の請求項１１に係る発明（以下，これを「本願発明１」〜「本願発明１１」という）は，平成２９年７月２４日付けの手続補正により補正された特許請求の範囲の請求項１〜請求項１１に記載された事項により特定されるものであり，そのうち，本願発明１は，次のとおりのものである。
　
「それぞれが１以上の半導体記憶デバイスで構成された複数の半導体記憶ユニットと，
　前記複数の半導体記憶ユニットに接続され，格納先の論理記憶領域に対してデータを格納するストレージコントローラと
を有し，
　前記各半導体記憶デバイスが，１以上の不揮発性の半導体記憶媒体と，前記１以上の不揮発性の半導体記憶媒体に接続された媒体コントローラとを有し，
　前記各半導体記憶デバイスについて，前記媒体コントローラは，前記論理記憶領域に格納されるデータを圧縮し圧縮されたデータを前記１以上の不揮発性の半導体記憶媒体に格納し，
　前記各半導体記憶デバイスについて，前記論理記憶領域の論理アドレス空間の大きさは，前記１以上の不揮発性の半導体記憶媒体の物理アドレス空間の大きさの合計よりも大きく，
　前記ストレージコントローラは，仮想ボリュームを提供し，
　前記複数の半導体記憶ユニットは，前記仮想ボリュームに記憶領域が割り当てられるプールを構成し，
　前記ストレージコントローラは，前記複数の半導体記憶ユニットにそれぞれ対応した複数の半導体記憶ユニット残容量と，前記複数の半導体記憶ユニット残量の合計値であるプール残容量と，を管理し，
　前記ストレージコントローラは，非同期処理として，
　　前記プール内の各半導体記憶ユニットについて，その半導体記憶ユニットが枯渇するリスクを算出するための枯渇関連情報であってその半導体記憶ユニット内での物理的な使用量に関する情報を含んだ枯渇関連情報を，その半導体記憶ユニットから取得し，
　　前記各半導体記憶ユニットについて，前記取得された枯渇関連情報内の，物理的な使用量に関する情報に基づいて，その半導体記憶ユニットの容量が枯渇するリスクである容量枯渇リスクを算出し，
　　前記各半導体記憶ユニットの前記算出された容量枯渇リスクに基づいて，前記複数の半導体記憶ユニットのうちのいずれかの容量枯渇リスクを軽減するようにデータ移動元および移動先の半導体記憶ユニットを決定して前記プール内の半導体記憶ユニット間でデータを移動する枯渇回避処理を実行する，
ストレージ装置。」
　
第５．引用文献に記載の事項及び引用発明について
１．原審における平成２９年１月１２日付けの拒絶理由（以下，これを「原審拒絶理由」という）に引用された，国際公開第２０１３／０８４２６７号（国際公開日；２０１３年６月１３日，以下，これを「引用文献１」という）には，関連する図面と共に，次の事項が記載されている。
　
Ａ．「[0020] Fig. 2 shows an example of the configuration of the storage system 20.
[0021] 
The storage system 20 comprises a controller 27, and a storage device group, which is coupled to the controller 27
[0022] The controller 27 comprises communication interface devices, storage devices, and a control device, which is coupled thereto.  The communication interface devices, for example, include I/Fs 24 and 25, and a disk I/F 26.  The storage devices, for example, include a memory 22 and a cache memory 23.  The control device, for example, is a CPU 21.  In addition to the CPU 21, the control device may also comprise a dedicated hardware circuit for performing a prescribed process (for example, compression, decompression, coding or decoding).
[0023] The I/F 24 is coupled to the SAN 11.  The I/F 25 is coupled to the IP network 12.  The disk I/F 26 is coupled to the storage device group.
[0024] The memory 22 stores various programs and information for the controller 27 to manage the storage system 20.  The CPU 21 realizes various functions in accordance with executing a program based on the information stored in the memory 22.
[0025] The cache memory 23 is normally a volatile memory such as a DRAM (Dynamic Random Access Memory).  The cache memory 23 temporarily stores data, which is to be written to any of the storage device groups, and data, which has been read from a storage device group.  For example, the controller 27 receives a write request from the host computer 10, writes data conforming to this write request to the cache memory 23, and completes this write request (for example, sends a completion report with respect to the write request to the host computer 10).
[0026] 
The storage device group comprises multiple RAID (Redundant Array of Independent (or Inexpensive) Disks) groups.  Data is stored in a RAID group in accordance with a prescribed RAID level.  A logical volume (hereinafter, simply called VOL) is created based on the storage space of the RAID group.  There is a VOL of the type, which is provided to the host computer 10, and there is a VOL of the type, which is not.  The former VOL is specified in accordance with an I/O request from the host computer 10.  The latter VOL, for example, is a component of a pool, which comprises a storage area for allocating to a virtual VOL (a VOL conforming to Thin Provisioning), which is provided to the host computer 10
RAID group 29 is configured using multiple flash packages 29A
A RAID group of a prescribed level may be configured using these multiple flash packages 29A
the flash package 29A comprises multiple FM (Flash Memory) chips 37
[0027] Furthermore, in this example, the HDD 28A does not comprise functions for compressing and decompressing data, and 
the flash package 29A does comprise functions for compressing and decompressing data
[0028] Fig. 3 shows an example of the configuration of the flash package 29A.
[0029] 
The flash package 29A comprises multiple FM chips 37, and an FM controller coupled thereto
[0030] The FM chip 37, for example, is configured in accordance with multiple physical blocks.  Each physical block is configured using multiple physical pages.  The FM chip 37, for example, is a NAND-type flash memory.  Each cell of the FM chip 37 may be a SLC (Single Level Cell) or a MLC (Multi Level Cell).
[0031] 
The FM controller comprises communication interface devices, storage devices, and a control device coupled thereto
The control device, for example, comprises a CPU 31 and a data compression/decompression unit 34
[0032] The memory 32 stores various types of programs and information for managing the flash package 29A.  The CPU 31 realizes various functions in accordance with executing a program based on the information stored in the memory 32.
[0033] The buffer 33 is an area for temporarily storing data to be written to the FM chip 37 from the controller 27, and data to be read to the controller 27 from the FM chip 37.  The buffer 33 may be a portion(s) of one or more FM chips 37.
[0034] 
The data compression/decompression unit 34, for example, is a hardware circuit, and comprises a function for compressing data stored in the buffer 33 from the controller 27, and decompressing compressed data (data, which has been compressed) stored in the buffer 33 from the FM chip 37
[0035] The disk I/F 35 is coupled to the disk I/F 26 of the controller 27.
[0036] The flash memory I/F 36 is coupled to multiple FM chips 37 via multiple buses.  The flash memory I/F 36 uses a CE (Chip Enable) signal to independently control multiple FM chips 37 coupled to the same bus.
[0037] The flash memory I/F 36 operates in accordance with a read/write request from the CPU 31.  A physical address (PBA (Physical Block Address)) of a read source or a write destination area is specified in this read/write request.  The flash memory I/F 36 computes a read-source or a write-destination physical block and physical page from this PBA, and performs a read/write process with respect to the computed physical block and physical page.
[0038] An ECC (Error Correction Code) creation circuit and an ECC correction circuit are provided in the flash memory I/F 36.  At the time of a write, the ECC creation circuit creates an ECC with respect to compressed data in the buffer 33, and the compressed data is written to the FM chip 37 together with the ECC.  Also, at the time of a read, the ECC correction circuit checks the compressed data (read data) from the FM chip 37 in the buffer 33, and in a case where a data loss has been detected, the compressed data is corrected in accordance with the ECC correction circuit in the buffer 33.」
（【００２０】
  図２は，ストレージシステム２０の構成の一例を示す。
【００２１】
  
ストレージシステム２０は，コントローラ２７，及び，コントローラ２７に接続された記憶デバイス群を有
【００２２】
  コントローラ２７は，通信インタフェースデバイス，記憶デバイス及びそれらに接続された制御デバイスを有する。通信インタフェースデバイスとして，例えば，Ｉ／Ｆ２４，２５及びディスクＩ／Ｆ２６がある。記憶デバイスとして，例えば，メモリ２２及びキャッシュメモリ２３がある。制御デバイスとして，例えば，ＣＰＵ２１がある。制御デバイスは，ＣＰＵ２１のようなプロセッサの他に，所定の処理（例えば圧縮，伸長，暗号化又は復号化）を行う専用ハードウェア回路を含んでも良い。
【００２３】
  Ｉ／Ｆ２４は，ＳＡＮ１１に接続される。Ｉ／Ｆ２５は，ＩＰネットワーク１２に接続される。ディスクＩ／Ｆ２６は，記憶デバイス群に接続される。
【００２４】
  メモリ２２には，コントローラ２７がストレージシステム２０を管理するための各種プログラム，及び情報が記憶される。ＣＰＵ２１は，メモリ２２に記憶された情報に基づき，プログラムを実行することにより各種機能を実現させる。
【００２５】
  キャッシュメモリ２３は，通常ＤＲＡＭ（Dynamic  Random  Access  Memory）等の揮発メモリである。キャッシュメモリ２３は，記憶デバイス群のいずれかにライトされるデータ，及び記憶デバイス群からリードされたデータを一時的に格納する。例えば，コントローラ２７は，ホスト計算機１０からライト要求を受け付け，そのライト要求に従うデータをキャッシュメモリ２３に書き込み，そのライト要求を完了させる（例えば，ライト要求に対する完了報告をホスト計算機１０に送信する）。
【００２６】
  
記憶デバイス群は，複数のＲＡＩＤ（Redundant  Array  of  Independent(or  Inexpensive)Disks)）グループを有する。ＲＡＩＤグループには，所定のＲＡＩＤレベルに従ってデータが格納される。ＲＡＩＤグループの記憶空間を基に，論理ボリューム（以下，単にＶＯＬと言う）が作成され
ＶＯＬは，ホスト計算機１０に提供される種類のＶＯＬもあれば，そうではない種類のＶＯＬもある。前者のＶＯＬは，ホスト計算機１０からのＩ／Ｏ要求で指定される。後者のＶＯＬは，例えば，ホスト計算機１０に提供される仮想的なＶＯＬ（Thin  Provisioningに従うＶＯＬ）に割り当てられる記憶領域を含んだプールの構成要素とな
ＲＡＩＤグループ２９は，複数のフラッシュパッケージ２９Ａで構成され
この複数のフラッシュパッケージ２９Ａで，所定レベルのＲＡＩＤグループが構成されて良い。後述するが，フラッシュパッケージ２９Ａは，複数のＦＭ（Flash  Memory）チップ３７を有
【００２７】
  なお，本実施例では，ＨＤＤ２８Ａは，データを圧縮及び伸長する機能を有しておらず，
フラッシュパッケージ２９Ａは，データを圧縮及び伸長する機能を有し
【００２８】
  図３は，フラッシュパッケージ２９Ａの構成の一例を示す。
【００２９】
  
フラッシュパッケージ２９Ａは，複数のＦＭチップ３７と，それらに接続されたＦＭコントローラとを有
【００３０】
  ＦＭチップ３７は，例えば，複数の物理ブロックで構成されている。各物理ブロックは複数の物理ページで構成されている。ＦＭチップ３７は，例えば，ＮＡＮＤ型のフラッシュメモリである。ＦＭチップ３７の各セルは，ＳＬＣ（Single  Level  Cell）でもＭＬＣ（Multi  Level  Cell）でも良い。
【００３１】
  
ＦＭコントローラは，通信インタフェースデバイスと，記憶デバイスと，それらに接続された制御デバイスを有
制御デバイスは，例えば，ＣＰＵ３１及びデータ圧縮／伸長ユニット３４を有
【００３２】
  メモリ３２には，フラッシュパッケージ２９Ａを管理するための各種プログラム，及び情報が記憶される。ＣＰＵ３１は，メモリ３２に記憶された情報に基づき，プログラムを実行することにより各種機能を実現させる。
【００３３】
  バッファ３３は，コントローラ２７からＦＭチップ３７にライトするデータ，及びＦＭチップ３７からコントローラ２７にリードするデータを一時的に格納するための領域である。バッファ３３は，１以上のＦＭチップ３７の一部分であっても良い。
【００３４】
  
データ圧縮／伸長ユニット３４は，例えばハードウェア回路であり，コントローラ２７からバッファ３３に格納したデータを圧縮する機能，及び，ＦＭチップ３７からバッファ３３に格納した圧縮データ（圧縮されているデータ）を伸長する機能を有する
【００３５】
  ディスクＩ／Ｆ３５は，コントローラ２７のディスクＩ／Ｆ２６に接続される。
【００３６】
  フラッシュメモリＩ／Ｆ３６は，複数のバスを介して複数のＦＭチップ３７に接続される。フラッシュメモリＩ／Ｆ３６は，ＣＥ（Chip  Enable）信号を用いて，同一バスに接続された複数のＦＭチップ３７を独立して制御する。
【００３７】
  フラッシュメモリＩ／Ｆ３６は，ＣＰＵ３１からのリード／ライト要求に応じて動作する。そのリード／ライト要求では，リード元或いはライト先の領域の物理アドレス（ＰＢＡ（Physical  Block  Address））が指定されている。フラッシュメモリＩ／Ｆ３６は，このＰＢＡから，リード元或いはライト先の物理ブロック及び物理ページを算出し，算出した物理ブロック及び物理ページについてリード／ライト処理を行う。
【００３８】
  また，フラッシュメモリＩ／Ｆ３６には，ＥＣＣ（Error  Correction  Code）生成回路，及びＥＣＣ訂正回路が備えられている。ライト時には，バッファ３３で，ＥＣＣ生成回路が圧縮データに対してＥＣＣを生成し，ＦＭチップ３７に圧縮データがＥＣＣと共にライトされる。また，リード時には，バッファ３３で，ＦＭチップ３７からの圧縮データ（リードデータ）をＥＣＣ訂正回路が検査し，データ損失が検出された場合には，バッファ３３で，ＥＣＣ訂正回路により，圧縮データの訂正が行われる。」（引用文献１の日本語公報である，特表２０１４−５２４６０１号公報より引用）
　
２．上記Ａに引用した記載から，引用文献１には，次の発明（以下，これを「引用発明」という）が記載されているものと認める。
　
「ストレージシステム２０は，コントローラ２７，及び，コントローラ２７に接続された記憶デバイス群を有し，
　前記記憶デバイス群は，複数のＲＡＩＤ（Redundant  Array  of  Independent(or  Inexpensive)Disks)）グループを有し，
　前記ＲＡＩＤグループには，所定のＲＡＩＤレベルに従ってデータが格納され，
　前記ＲＡＩＤグループの記憶空間を基に，論理ボリューム（以下，単にＶＯＬと言う）が作成され，
　前記ＶＯＬは，ホスト計算機１０に提供される種類のＶＯＬもあれば，そうではない種類のＶＯＬもあり，
　前者のＶＯＬは，ホスト計算機１０からのＩ／Ｏ要求で指定され，
　後者のＶＯＬは，例えば，ホスト計算機１０に提供される仮想的なＶＯＬ（Thin  Provisioningに従うＶＯＬ）に割り当てられる記憶領域を含んだプールの構成要素となり，
　前記ＲＡＩＤグループは，複数のフラッシュパッケージ２９Ａで構成され，
　複数の前記フラッシュパッケージ２９Ａで，所定レベルのＲＡＩＤグループが構成されて良く，
　前記フラッシュパッケージ２９Ａは，複数のＦＭ（Flash  Memory）チップ３７を有し，
　前記フラッシュパッケージ２９Ａは，データを圧縮及び伸長する機能を有し，
　前記フラッシュパッケージ２９Ａは，前記複数のＦＭチップ３７と，それらに接続されたＦＭコントローラとを有し，
　前記ＦＭコントローラは，通信インタフェースデバイスと，記憶デバイスと，それらに接続された制御デバイスを有し，
　前記制御デバイスは，例えば，ＣＰＵ３１及びデータ圧縮／伸長ユニット３４を有し，
　前記データ圧縮／伸長ユニット３４は，例えばハードウェア回路であり，前記コントローラ２７から前記記憶デバイスに格納したデータを圧縮する機能，及び，前記ＦＭチップ３７から前記記憶デバイスに格納した圧縮データ（圧縮されているデータ）を伸長する機能を有する，ストレージシステム。」
　
３．原審拒絶理由に引用された，特開２０１０−１９１６７０号公報（平成２２年９月２日公開，以下，これを「引用文献２」という）には，関連する図面と共に，次の事項が記載されている。
　
Ｂ．「【００１５】
　前記課題を解決するために，ストレージシステムの管理計算機（例えば，容量管理計算機１２０）は，記憶装置を共有するファイルシステム群について，ファイルシステムの性能や機能，過去の容量変化履歴を収集する。管理計算機は，収集した情報にもとづいて各ファイルシステムの空き容量がなくなるまでの時間を予測し，空き容量不足が発生する時間が長くなるファイルシステムの容量を計算する。そして，管理計算機は，各ファイルシステムの縮小および拡大を行う。
【００１６】
　また，管理計算機は，特性の異なるボリューム・ファイルシステムが複数ある構成において，前記のとおり収集した情報を用いて，各特性におけるファイルシステムの容量を計算し，システム全体としてその特性を活用できるようにファイルシステムの容量を計算し，適正容量を求める。
【００１７】
　そして，あるファイルシステムが現在の容量より小さい容量しか必要としない場合，そのファイルシステム中のファイルを異なる特性のファイルに移動させ，ファイルシステムの空き容量を増加させる。そして，前記管理計算機は，空き容量を増加させたファイルシステムの縮小を行い，未使用となったボリューム容量を他のファイルシステムに割り当てることで，システム全体の適正化を行う。」
　
４．原審拒絶理由に引用された，特開２００８−１１２２７６号公報（平成２０年５月１５日公開，以下，これを「引用文献３」という）には，関連する図面と共に，次の事項が記載されている。
　
Ｃ．「【請求項１】
　複数のプールを備え，ひとつ以上の通常ボリュームからなる前記プール上に構築されたひとつ以上の仮想ボリュームを有するストレージと，前記仮想ボリュームを管理する管理サーバとを備える仮想ボリュームの再配置システムであって，
　前記管理サーバは，
　前記プールの枯渇までの期間を予測する予測部と，
　前記予測部の予測結果に基づいて複数の前記プール間で前記仮想ボリュームを再配置する再配置部とを備えた
　ことを特徴とする再配置システム。」
　
５．原審拒絶理由に引用された，特開２０１２−１１８５８７号公報（平成２４年６月２１日公開，以下，これを「引用文献４」という）には，関連する図面と共に，次の事項が記載されている。
　
Ｄ．「【００６２】
　図７は，図２の管理装置により実行される記憶処理（ＳＳＤ）の手順を示すフローチャートであり，ストレージとしてＳＳＤを用いた場合を示す。
【００６３】
　図７の記憶処理は，管理装置７のＣＰＵ６０１により実行される。
【００６４】
　図７において，各ＳＳＤの供出領域の容量を管理テーブルから取得し（ステップＳ１０１），各ＳＳＤの供出領域の寿命値を算出する（ステップＳ１０２）（算出部）。この寿命値の詳細については，後述する。
【００６５】
　次いで，算出した寿命値順に記憶先の順番を指定し（ステップＳ１０３），ＰＣ６又は各ＳＳＤからのビッグボックスへの記憶要求を受信すると（ステップＳ１０４でＹＥＳ），指定された順番に従って，データを記憶するようにＭＦＰを制御して（ステップＳ１０５）（記憶制御部），ステップＳ１０２の処理に戻る。
【００６６】
　上述した寿命値について説明する。寿命値の算出方法には種々の方法が考えられるが，ここでは４種類の方法について説明する。まず１種類目の方法は，以下の式（１）により算出する方法である。
【００６７】
　寿命値＝今までに記憶したデータの総量／供出領域の容量  …  （１）
　上記式（１）は，供出領域の使用量を示している。供出領域の容量を２０ＧＢとした場合，今までに３０ＴＢのデータを記憶したとすると，３００００ＧＢ／２０ＧＢ＝１５００で，寿命値は１５００となる。この寿命値が大きいほどよく使用された領域であることを示している。例えば，図８に示される寿命値の場合，Ａ，Ｃ，Ｂ‥の順に記憶先の順番が指定されることとなる。
【００６８】
　式（１）では，供出領域の容量を用いているので，供出領域の容量が異なる場合でも比較が可能となる。
【００６９】
　２種類目の方法は，以下の式（２）により算出する方法である。
【００７０】
　寿命値＝（今までに記憶したデータの総量／供出領域の容量）／消去回数の上限値×１００                                            …  （２）
　ここで，「今までに記憶したデータの総量」は，通算して供出領域に記憶されたデータのサイズであり，消去回数の上限値は，管理装置７による指示値でもよいし，ユーザによる任意の値でもよい。上記式（２）は，消去回数の上限値に対してストレージを使用している割合を示している。消去回数の上限値を１００００とし，供出領域の容量が２０ＧＢの場合，今までに３０ＴＢのデータを記憶したとすると，（３００００ＧＢ／２０ＧＢ）／１００００×１００＝１５［％］で，寿命値は１５［％］となる。この寿命値が大きいほどよく使用された領域であることを示している。式（２）では，供出領域の容量を用いているので，供出領域の消去回数の上限値が異なる場合においても比較が可能となる。
【００７１】
　３種類目の方法は，以下の式（３）により算出する方法である。
寿命値＝（今までに記憶したデータの総量／供出領域の容量）／今までのストレージ使用時間                                            …  （３）
　式（３）は，単位時間当りの供出領域の使用量を示している。今までの供出領域の使用時間が１０００時間であり，供出領域の容量として２０ＧＢ供出している場合，今までに３０ＴＢのデータを記憶したとすると，（３００００ＧＢ／２０ＧＢ）／１０００ｈ＝１．５／ｈで残寿命値は１．５／ｈとなる。この寿命値が大きいほどよく使用された領域であることを示している。式（３）では，供出領域の容量を用いているので，供出領域の消去回数の上限値が異なる場合においても比較が可能となる。また，単位時間当りの供出領域の使用量を比較することが可能となり，各ストレージの使用頻度を平準化することが可能となる。
【００７２】
　４種類目の方法は，以下の式（４）により算出する方法である。
【００７３】
　寿命値＝｛（今までに記憶したデータの総量／供出領域の容量）／消去回数の上限値×１００｝／今までの供出領域の使用時間            …  （４）
　式（４）は，単位時間当りのビッグボックス使用率を示している。今までの供出領域の使用時間が１０００時間であり，消去回数の上限値を１００００，供出領域の容量として２０ＧＢ供出している場合，今までに３０ＴＢのデータを記憶したとすると，｛（３００００ＧＢ／２０ＧＢ）／１００００×１００｝／１０００ｈ＝０．０１５［％／ｈ］で寿命値は０．０１５［％／ｈ］となる。この寿命値が大きいほどよく使用された領域であることを示している。式（４）では，供出領域の容量を用いているので，供出領域の消去回数の上限値が異なる場合においても比較が可能となる。また，単位時間当りのビッグボックス使用率を比較することが可能となり，各ストレージの使用頻度を平準化することが可能となる。
【００７４】
　いずれの算出方法であっても，寿命がより多く残っている供出領域ほどデータを記憶するように制御される。
【００７５】
　図７の処理によれば，複数の供出領域の各々の寿命を示す寿命値を算出し（ステップＳ１０２），算出された寿命値に基づいて，寿命がより多く残っている供出領域ほどデータを記憶するようにＭＦＰを制御する（ステップＳ１０５）ので，特定の記憶部にアクセスが集中しないようにし，記憶部の寿命を平準化できる。」
　
第６．本願発明と引用発明との対比及び相違点についての当審の判断
１．本願発明１と引用発明との対比
　引用発明における「記憶デバイス群」は，複数の「フラッシュパッケージ２９Ａ」から構成されるものであり，当該「フラッシュパッケージ２９Ａ」は，複数の「フラッシュメモリ（ＦＭ）チップ３７」から構成されるものであって，
　引用発明における「記憶デバイス群」，「フラッシュパッケージ２９Ａ」，「ＦＭチップ３７」が，それぞれ，
　本願発明１における「複数の半導体記憶ユニット」，「半導体記憶デバイス」，「不揮発性の半導体記憶媒体」に相当し，
　引用発明における「コントローラ２７」，「ＦＭコントローラ」が，
　本願発明１における「ストレージコントローラ」，「媒体コントローラ」に相当し，
　引用発明において，「ＦＭコントローラ」に含まれる「データ圧縮／伸張ユニット３４」が，「ＦＭチップ３７」への入力データを圧縮し，「ＦＭチップ３７」からの出力データを伸張していることを踏まえると，
　本願発明１と，引用発明との一致点，及び，相違点は次のとおりである。
　
［一致点］
それぞれが１以上の半導体記憶デバイスで構成された複数の半導体記憶ユニットと，
　前記複数の半導体記憶ユニットに接続され，格納先の論理記憶領域に対してデータを格納するストレージコントローラと
を有し，
　前記各半導体記憶デバイスが，１以上の不揮発性の半導体記憶媒体と，前記１以上の不揮発性の半導体記憶媒体に接続された媒体コントローラとを有し，
　前記各半導体記憶デバイスについて，前記媒体コントローラは，前記論理記憶領域に格納されるデータを圧縮し圧縮されたデータを前記１以上の不揮発性の半導体記憶媒体に格納する，ストレージ装置。
　
［相違点１］
　本願発明１においては，「各半導体記憶デバイスについて，前記論理記憶領域の論理アドレス空間の大きさは，前記１以上の不揮発性の半導体記憶媒体の物理アドレス空間の大きさの合計よりも大き」いものであるのに対して，
　引用発明においては，そのような言及がない点。
　
［相違点２］
　本願発明１においては，「ストレージコントローラは，仮想ボリュームを提供し，前記複数の半導体記憶ユニットは，前記仮想ボリュームに記憶領域が割り当てられるプールを構成し，前記ストレージコントローラは，前記複数の半導体記憶ユニットにそれぞれ対応した複数の半導体記憶ユニット残容量と，前記複数の半導体記憶ユニット残量の合計値であるプール残容量と，を管理し，前記ストレージコントローラは，非同期処理として，前記プール内の各半導体記憶ユニットについて，その半導体記憶ユニットが枯渇するリスクを算出するための枯渇関連情報であってその半導体記憶ユニット内での物理的な使用量に関する情報を含んだ枯渇関連情報を，その半導体記憶ユニットから取得し，前記各半導体記憶ユニットについて，前記取得された枯渇関連情報内の，物理的な使用量に関する情報に基づいて，その半導体記憶ユニットの容量が枯渇するリスクである容量枯渇リスクを算出し，前記各半導体記憶ユニットの前記算出された容量枯渇リスクに基づいて，前記複数の半導体記憶ユニットのうちのいずれかの容量枯渇リスクを軽減するようにデータ移動元および移動先の半導体記憶ユニットを決定して前記プール内の半導体記憶ユニット間でデータを移動する枯渇回避処理を実行する」ものであるのに対して，
　引用発明においては，そのような言及がない点。
　
２．相違点についての当審の判断
（１）［相違点１］について，
　引用文献２〜引用文献４の何れにも，
“半導体記憶デバイス（例えば，ＳＳＤ）において，論理記憶領域の論理アドレス空間の大きさは，当該半導体記憶デバイスに含まれる不揮発性の半導体記憶媒体の物理アドレス空間の大きさの合計よりも大き”くする点については，言及されていない。
　
（２）［相違点２］について，
　上記Ｂに引用した記載内容から，引用文献２には，概略，
“ファイルシステムの空き容量を増加させ，増えた空き容量を，他のファイルシステムに割り当てる”，
　ことが読み取れ，
　上記Ｃに引用した記載内容から，引用文献３には，概略，
“プールの枯渇の予測と，それに基づく，仮想ボリュームの再配置”，
　に関する技術が記載されていることが読み取れ，
　上記Ｄに引用した記載内容から，引用文献４には，概略，
“ＳＳＤにおいて，供給領域の寿命値を算出し，当該算出した寿命値に基づいて，寿命がより多く残っている供出領域ほどデータを記憶するようにＭＦＰを制御する”，
　技術に関して記載されていることが読み取れる。
　しかしながら，引用文献２〜引用文献４の何れにも，［相違点２］のうち，特に，
“各半導体記憶ユニットについて記取得された枯渇関連情報内の，物理的な使用量に関する情報に基づいて，その半導体記憶ユニットの容量が枯渇するリスクである容量枯渇リスクを算出し，前記各半導体記憶ユニットの前記算出された容量枯渇リスクに基づいて，前記複数の半導体記憶ユニットのうちのいずれかの容量枯渇リスクを軽減するようにデータ移動元および移動先の半導体記憶ユニットを決定して前記プール内の半導体記憶ユニット間でデータを移動する”という点については，記載も示唆もされておらず，当該構成は，ＳＳＤの特性に関連する事項であって，本願の出願時点において，当業者に自明の事項といえるものでないことは，明らかである。
　
（３）以上，上記（１），（２）において検討したとおりであるから，本願発明１は，当業者であっても引用発明，引用文献２〜引用文献４に記載された技術的事項に基づいて容易に発明できたものであるとはいえない。
　
３．本願発明２〜本願発明１０について
　本願の請求項２〜本願の請求項１０は，本願の請求項１を直接・間接に引用するものであるから，本願発明２〜本願発明１０は，上記２．において検討した［相違点１］，及び，［相違点２］に係る構成を有している。
　したがって，本願発明２〜本願発明１０は，引用発明，引用文献２〜引用文献４に記載された技術的事項に基づいて容易に発明できたものであるとはいえない。
　
４．本願発明１１について
　本願発明１１は，発明のカテゴリが相違するものの，本願発明１と同等の構成を有するものであるから，上記２．において検討したとおり，引用発明，引用文献２〜引用文献４に記載された技術的事項に基づいて容易に発明できたものであるとはいえない。
　
第７．原審拒絶査定について
　審判請求時の補正により，本願発明１〜本願発明１１は，「相違点１」，及び，「相違点２」に係る構成を有するものとなっており，当業者であっても，拒絶査定において引用された引用文献１〜引用文献４に基づいて，容易に発明できたものとはいえない。したがって，原査定の理由を維持することはできない。
　
第８．むすび
　以上のとおり，原査定の理由によっては，本願を拒絶することはできない。
　また，他に本願を拒絶すべき理由を発見しない。
　
　よって，結論のとおり審決する。