JP2019046389A - ストレージデバイス、ホストシステム、および情報処理システム - Google Patents

ストレージデバイス、ホストシステム、および情報処理システム Download PDF

Info

Publication number
JP2019046389A
JP2019046389A JP2017171577A JP2017171577A JP2019046389A JP 2019046389 A JP2019046389 A JP 2019046389A JP 2017171577 A JP2017171577 A JP 2017171577A JP 2017171577 A JP2017171577 A JP 2017171577A JP 2019046389 A JP2019046389 A JP 2019046389A
Authority
JP
Japan
Prior art keywords
storage device
information
host system
abnormality
circuit
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.)
Pending
Application number
JP2017171577A
Other languages
English (en)
Inventor
將吉 佐藤
Shokichi Sato
將吉 佐藤
一郎 原
Ichiro Hara
一郎 原
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.)
Kioxia Corp
Original Assignee
Toshiba Memory 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 Memory Corp filed Critical Toshiba Memory Corp
Priority to JP2017171577A priority Critical patent/JP2019046389A/ja
Priority to US15/905,804 priority patent/US10635514B2/en
Publication of JP2019046389A publication Critical patent/JP2019046389A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • 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/0617Improving the reliability of storage systems in relation to availability
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • 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/0658Controller construction arrangements
    • 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
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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/0683Plurality of storage devices

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)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Filters That Use Time-Delay Elements (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Abstract

【課題】ストレージデバイスの受信回路の異常を検出することに適したストレージデバイス、ホストシステム、および情報処理システムを提供することである。【解決手段】実施形態のストレージデバイスは、受信回路と、情報出力部とを備えている。前記受信回路は、ホストシステムから送信された信号を受信する。前記情報出力部は、前記受信回路の状態に関する情報を前記ホストシステムに出力する。【選択図】図5

Description

本発明の実施形態は、ストレージデバイス、ホストシステム、および情報処理システムに関する。
ストレージデバイスは、ホストシステムから送信された信号を受信する受信回路を有する。このような受信回路に異常が生じた場合、信号品質の低下を招く場合がある。このため、受信回路に異常が生じた場合、その異常を検出することができると望ましい。
特開2006−343822号公報
本発明が解決しようとする課題は、ストレージデバイスの受信回路の異常を検出することに適したストレージデバイス、ホストシステム、および情報処理システムを提供することである。
実施形態のストレージデバイスは、受信回路と、情報出力部とを備えている。前記受信回路は、ホストシステムから送信された信号を受信する。前記情報出力部は、前記受信回路の状態に関する情報を前記ホストシステムに出力する。
第1の実施形態の情報処理システムの一例を示すブロック図。 第1の実施形態のホストシステムおよびストレージデバイスにおける信号の補正の流れを示す図。 第1の実施形態のPhyBの構成の一部を示すブロック図。 第1の実施形態のフィードバックフィルタの一例を示すブロック図。 第1の実施形態のホストシステム、ストレージデバイス、およびユーザ端末装置の各々の一部の機能構成を示すブロック図。 第1の実施形態のログ情報の内容の一例を示す図。 第1の実施形態の情報処理システムの処理の流れの一例を示すフローチャート。 第2の実施形態のホストシステム、ストレージデバイス、およびユーザ端末装置の各々の一部の機能構成を示すブロック図。 第2の実施形態の情報処理システムの処理の流れの一例を示すフローチャート。 第3の実施形態のホストシステム、ストレージデバイス、およびユーザ端末装置の各々の一部の機能構成を示すブロック図。 第3の実施形態の情報処理システムの処理の流れの一例を示すフローチャート。 第4の実施形態のホストシステム、ストレージデバイス、およびユーザ端末装置の各々の一部の機能構成を示すブロック図。 第4の実施形態の情報処理システムの処理の流れの一例を示すフローチャート。 第5の実施形態の情報処理システムの処理の流れの一例を示すフローチャート。
以下、実施形態のストレージデバイス、ホストシステム、および情報処理システムを、図面を参照して説明する。なお以下の説明では、同一または類似の機能を有する構成に同一の符号を付す。そして、それら構成の重複する説明は省略する場合がある。また、本願でいう「XXに基づく」とは、「少なくともXXに基づく」ことを意味し、XXに加えて別の要素に基づく場合も含む。また、「XXに基づく」とは、XXを直接に用いる場合に限定されず、XXに対して演算や加工が行われたものに基づく場合も含む。「XX」は、任意の要素(例えば、任意の情報)である。
(第1の実施形態)
まず、第1の実施形態について説明する。本実施形態は、ストレージデバイス20がDFE回路33の1つ以上のパラメータの値をホストシステム10に送信し、ホストシステム10によってストレージデバイス20の受信回路の異常判定が行われる例である。
図1は、第1の実施形態の情報処理システム1の一例を示すブロック図である。情報処理システム1は、ホストシステム10と、ストレージデバイス20とを含む。ホストシステム10とストレージデバイス20とは、例えば、SAS(Serial Attached SCSI(Small Computer System Interface))インターフェースと、PCIe(PCI Express)インターフェースとを用いて接続される。本実施形態では、SASインターフェースおよびPCIeインターフェースは、4つの伝送線路Lを兼用している。ただし、ホストシステム10とストレージデバイス20とを接続するインターフェースは、SASインターフェースとPCIeインターフェースとのうちいずれか一方のみでもよい。また、ホストシステム10とストレージデバイス20とを接続するインターフェースは、上記例に限定されず、NVMe(NVM Express ;Non-Volatile Memory Host Controller Interface)インターフェースなどでもよい。
次に、ホストシステム10について説明する。ホストシステム10は、ストレージデバイス20が接続されるシステムを広く意味する。ホストシステム10は、サーバ装置、ディスクアレイ(Storage Array)、パーソナルコンピュータなどである。ホストシステム10には、例えば複数のストレージデバイス20が接続される。ホストシステム10は、1つの装置によって構成されてもよく、複数の装置によって構成されてもよい。
図1に示すように、ホストシステム10は、例えば、ホストインターフェース111、SASコントローラ112A、PCIeコントローラ112B、CPU(Central Processing Unit)114、およびメモリ115を含む。
ホストインターフェース111は、Phy0、Phy1、Phy2、Phy3を含む。以下では、説明の便宜上、ホストインターフェース111のPhy0〜3の各々を「PhyA」と称する。PhyAは、ホストインターフェース111の物理層であり、ホストインターフェース111の送受信回路である。PhyAは、ストレージデバイス20から送信された電気信号を、伝送線路Lを通じて受信する。PhyAは、受信した電気信号をデジタル信号に変換する。また、PhyAは、SASコントローラ112AとPCIeコントローラ112Bとのうち少なくとも一方の制御に基づき、ホストシステム10から送信されるデジタル信号を電気信号に変換する。PhyAは、変換した電気信号を、伝送線路Lを通じてストレージデバイス20に送信する。
SASコントローラ112AおよびPCIeコントローラ112Bは、例えば、プロセッサがプログラムメモリに記憶されたプログラムを実行することにより実現される。ただし、SASコントローラ112AおよびPCIeコントローラ112Bの全部または一部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)などのハードウェア(例えば、回路部;circuitry)により実現されてもよい。
CPU114は、「プロセッサ」の一例である。CPU114は、メモリ115に記憶されたプログラム(例えば、ファームウェア)を実行することにより、ホストシステム10の全体を制御する。CPU114によって実行されるプログラムは、SASコントローラ112AおよびPCIeコントローラ112Bの制御に介在してもよい。
次に、ストレージデバイス20について説明する。ストレージデバイス20は、ホストシステム10によって使用される記憶装置である。ストレージデバイス20は、例えば、サーバ装置、ディスクアレイ、またはパーソナルコンピュータなどに搭載される。例えば、ストレージデバイス20は、サーバ装置またはディスクアレイにおけるRAID(Redundant Arrays of Inexpensive Disks)のECCグループ(誤り訂正グループ)または仮想ボリュームの実態として使用される。ストレージデバイス20は、例えばSSD(Solid State Drive)であるが、これに限らず、HDD(Hard Disc Drive)などでもよい。
図1に示すように、ストレージデバイス20は、例えば、SoC(System on a chip)21、第1DRAM(Dynamic Random Access Memory)22、第2DRAM23、NAND24、ROM(Read Only Memory)25、およびUART(Universal Asynchronous Receiver / Transmitter)26を含む。
SoC21は、例えば、フロントエンドFE、バックエンドBE、およびクロックコントローラCCを含む。クロックコントローラCCは、フロントエンドFEおよびバックエンドBEにクロック信号を供給する。
SoC21のフロントエンドFEは、例えば、外部接続インターフェース211、SASコントローラ212A、PCIeコントローラ212B、第1CPU214、第1DDR−Phy215、および第1バッファマネージャ216を含む。
外部接続インターフェース211は、Phy0、Phy1、Phy2、Phy3を含む。以下では、説明の便宜上、外部接続インターフェース211のPhy0〜3の各々を「PhyB」と称する。PhyBは、外部接続インターフェース211の物理層であり、外部接続インターフェース211の送受信回路である。PhyBは、「受信回路」の一例である。なお、「受信回路」とは、ホストシステム10からの信号が入力される回路を広く意味し、特定の機能を有する回路に限定されない。PhyBは、ホストシステム10から送信された電気信号を、伝送線路Lを通じて受信する。PhyBは、受信した電気信号をデジタル信号に変換する。また、PhyBは、SASコントローラ212AおよびPCIeコントローラ212Bの少なくとも一方の制御に基づき、ストレージデバイス20から送信されるデジタル信号を電気信号に変換する。PhyBは、変換した電気信号を、伝送線路Lを通じてホストシステム10に送信する。
SASコントローラ212AおよびPCIeコントローラ212Bは、例えば、プロセッサがプログラムメモリに記憶されたプログラムを実行することにより実現される。ただし、SASコントローラ212AおよびPCIeコントローラ212Bの全部または一部は、LSI、ASIC、FPGAなどのハードウェア(例えば、回路部;circuitry)により実現されてもよい。
第1CPU214は、「プロセッサ」の一例である。第1CPU214は、ROM25またはNAND24に記憶されたプログラム(例えば、ファームウェア)を実行することにより、フロントエンドFEの全体を制御する。第1CPU214によって実行されるプログラムは、SASコントローラ212AおよびPCIeコントローラ212Bの制御に介在してもよい。第1DDR−Phy215は、第1DRAM22に対応した物理層である。第1バッファマネージャ216は、第1DDR−Phy215を制御することで、第1DRAM22に対するデータの格納、および第1DRAM22からのデータの読み出しを行う。
SoC21のバックエンドBEは、例えば、NAND−Phy251、NANDコントローラ252、第2CPU253、第2DDR−Phy254、および第2バッファマネージャ255を有する。
NAND−Phy251は、NAND24に対応した物理層である。NANDコントローラ252は、NAND−Phy251を制御することで、NAND24に対するデータの書き込み、およびNAND24からのデータの読み出しを行う。
第2CPU253は、「プロセッサ」の一例である。第2CPU253は、ROM25またはNAND24に記憶されたプログラム(例えば、ファームウェア)を実行することにより、バックエンドBEの全体を制御する。第2DDR−Phy254は、第2DRAM23に対応した物理層である。第2バッファマネージャ255は、第2DDR−Phy254を制御することで、第2DRAM23に対するデータの格納、および第2DRAM23からのデータの読み出しを行う。
第1DRAM22および第2DRAM23の各々は、「揮発性メモリ」の一例である。第1DRAM22および第2DRAM23の各々は、データが一時的に格納されるデータバッファとして機能する。なお、第1DRAM22および第2DRAM23は、2つに分かれている必要はなく、1つのDRAMによって構成されてもよい。
NAND24は、「不揮発性メモリ」の一例である。NAND24は、ストレージデバイス20の主たる記憶領域を構成している。NAND24は、例えば複数のNAND型フラッシュメモリを含む。ROM25は、例えば、ファームウェア、およびストレージデバイス20の管理に用いられる各種管理データを記憶している。
UART26は、調歩同期方式による集積回路である。UART26は、シリアル信号をパラレル信号に変換したり、その逆方向の変換を行う。UART26は、ストレージデバイス20の製造メーカによるデバッグ、またはストレージデバイス20の製造工程においてSASやNVMeなどの高速なインターフェースが使えない場合に利用される。
次に、図2を参照し、ホストシステム10およびストレージデバイス20における信号の補正の流れについて簡単に説明する。「信号の補正」とは、信号の波形を変えることを意味する。以下では、ホストシステム10を信号の送信側、ストレージデバイス20を信号の受信側とした例について説明する。
図2は、ホストシステム10およびストレージデバイス20における信号の補正の流れを示す図である。ホストシステム10のPhyAは、エンファシス回路31を含む。エンファシス回路31は、例えば、プリエンファシス回路、またはデエンファシス回路である。エンファシス回路31は、シンボル間干渉(ISI:Inter-Symbol Interference)を抑制するための調整を信号に対して予め行う。エンファシス回路31で調整された信号は、伝送線路Lに送られる。伝送線路Lに送られた信号は、伝送線路Lを通過する過程で信号波形が歪む。
ストレージデバイス20のPhyBは、FFE(Feed Forward Equalization)回路32と、DFE(Decision Feedback Equalization)回路33とを含む。FFE回路32およびDFE回路33は、伝送線路Lを通過する過程で歪んだ信号を補正する。詳しく述べると、伝送線路Lを通った信号は、FFE回路32に入力される。FFE回路32は、プレカーソルISIおよびポストカーソルISIの浮きを抑えるように信号を補正する。FFE回路32により補正された信号は、DFE回路33に入力される。DFE回路33は、パルスレスポンスの近傍にある残留部(Residue)を小さくするように信号を補正し、信号レベルを判定しやすくする。DFE回路33は、「判定帰還型等化器」の一例である。
次に、図3および図4を参照し、DFE回路33のパラメータについて説明する。図3は、PhyBの構成の一部を示すブロック図である。なお以下では、SASコントローラ212AおよびPCIeコントローラ212Bを一般化して「I/Fコントローラ212」と称する。
図3に示すように、PhyBは、例えば、FFE回路32、DFE回路33、およびパラメータ保持部34を含む。DFE回路33は、例えば、積分器33a、フィードバックフィルタ33b、比較器33c、および減算器33dを含む。積分器33aは、FFE回路32からDFE回路33に入力された信号と、フィードバックフィルタ33bから戻された信号とを加算する。比較器33cは、積分器33aから出力された信号に対して、最も近い信号レベルを判定し、信号波形をデータ値に変換する。比較器33cは、変換したデータ値をDFE回路33の出力として出力する。減算器33dは、積分器33aから比較器33cに入力された信号と、比較器33cから出力された信号との信号レベルの差を検出し、検出した信号レベルの差をI/Fコントローラ212に出力する。I/Fコントローラ212は、減算器33dで検出される信号レベルの差が0になるように、フィードバックフィルタ33bで用いられる1つ以上のパラメータC0〜CNを調整する(収束させる)。調整されたパラメータC0〜CNは、パラメータ保持部34に格納される。
図4は、フィードバックフィルタ33bの一例を示すブロック図である。フィードバックフィルタ33bは、例えば、乗算器M1〜MNと、遅延器D0〜D(N−1)とを含む。乗算器M1〜MNは、遅延器D0〜D(N−1)を用いて遅延処理された遅延データに対して、パラメータC0〜CNをそれぞれ乗算させる。乗算器M1〜MNを用いて乗算された個々の結果は、フィードバックフィルタ33bから出力されてDFE回路33の積分器33aに入力される。パラメータC0〜CNの各々は、「信号の補正に用いられるパラメータ」の一例である。パラメータC0〜CNの各々は、「補正係数」、「タップ係数」、「係数」、または「受信信号補正情報」と称されてもよい。パラメータC0〜CNの各々は、I/Fコントローラ212の制御によって値が変更される。
次に、ストレージデバイス20の受信回路の異常検出に関する機能構成について説明する。本実施形態では、ストレージデバイス20は、受信回路の状態に関する情報の一例として、DFE回路33のパラメータC0〜CNの値の履歴を示すログ情報LIを、ホストシステム10に出力する。ホストシステム10は、ストレージデバイス20から取得したDFE回路33のパラメータC0〜CNの値の履歴を示すログ情報LIに基づき、ストレージデバイス20の受信回路の異常判定を行う。以下、この内容について説明する。
図5は、ストレージデバイス20、ホストシステム10、およびユーザ端末装置UTの各々の一部の機能構成を示すブロック図である。
まず、ストレージデバイス20の機能構成について説明する。ストレージデバイス20は、例えば、受信回路情報マネージャ51、I/Fコントローラ212、およびメモリ52を含む。受信回路情報マネージャ51は、例えば、第1CPU214がROM25に記憶されたプログラム(例えば、ファームウェア)を実行することにより実現される。ただし、受信回路情報マネージャ51の全部または一部は、LSI、ASIC、FPGAなどのハードウェア(例えば、回路部;circuitry)により実現されてもよい。メモリ52は、SoC21の内部に設けられた記憶領域でもよく、第1DRAM22または第2DRAM23でもよく、NAND24でもよい。
受信回路情報マネージャ51は、例えば、パラメータ取得部511、ログ情報マネージャ512、および情報出力部513を含む。
パラメータ取得部511は、I/Fコントローラ212によって調整されたDFE回路33のパラメータC0〜CNの値を取得する。例えば、パラメータ取得部511は、パラメータC0〜CNの値をI/Fコントローラ212から受け取ることでパラメータC0〜CNの値を取得してもよく、またはパラメータC0〜CNの値をパラメータ保持部34から読み出すことでパラメータC0〜CNの値を取得してもよい。パラメータ取得部511は、例えば、パラメータC0〜CNの値が調整される(変更される)毎にパラメータC0〜CNの値を取得する。パラメータ取得部511は、パラメータC0〜CNの値を取得する毎に、取得したパラメータC0〜CNの値をログ情報マネージャ512に出力する。
ログ情報マネージャ512は、パラメータ取得部511からパラメータC0〜CNの値を受け取る。ログ情報マネージャ512は、パラメータ取得部511から受け取ったパラメータC0〜CNの値を、メモリ52に保持されるログ情報LIに登録する。「ログ情報」とは、複数の時点で検出または登録された値を含む情報であり、特定の形式のものや、特定の情報を含むものに限定されない。例えば、ログ情報マネージャ512は、パラメータ取得部511からパラメータC0〜CNの値を受け取る毎に、受け取ったパラメータC0〜CNの値をログ情報LIに追加する。これにより、ログ情報マネージャ512は、パラメータC0〜CNの履歴をログ情報LIとして管理する。なお、ログ情報LIの一例は、図6を用いて後述する。
情報出力部513は、ログ情報LIを送信させる要求がホストシステム10からストレージデバイス20に通知された場合に、メモリ52からログ情報LIを読み出し、読み出したログ情報LIをホストシステム10に送信する。また、情報出力部513は、ホストシステム10からの要求によらず、所定の周期でログ情報LIをホストシステム10に送信してもよい。
次に、ホストシステム10の機能構成について説明する。ホストシステム10は、例えば、異常検出部61、異常時処理部62、出力情報生成部63、およびメモリ64を含む。異常検出部61、異常時処理部62、および出力情報生成部63は、CPU114がメモリ114(図1参照)に記憶されたプログラムを実行することにより実現される。ただし、異常検出部61、異常時処理部62、出力情報生成部63の全部または一部は、LSI、ASIC、FPGAなどのハードウェア(例えば、回路部;circuitry)により実現されてもよい。メモリ64は、ホストシステム10に搭載されたDRAMでもよく、他のメモリデバイスでもよい。
異常検出部61は、ストレージデバイス20のPhyBに異常が生じた場合、ログ情報LIに含まれるDFE回路33のパラメータC0〜CNの値に基づき、PhyBの異常を検出する。詳しく述べると、異常検出部61は、例えば、情報取得部611、エラー発生頻度検出部612、受信回路異常判定部613、および本体異常判定部(例えば、S.M.A.R.Tなどの情報に基づく異常判定部)614を有する。
情報取得部611は、ログ情報LIを送信させる要求をストレージデバイス20に通知する。例えば、情報取得部611は、ホストシステム10とストレージデバイス20との接続動作(接続開始から接続確立までの処理)のなかで、ログ情報LIを送信させる要求をストレージデバイス20に通知する。また、情報取得部611は、ホストシステム10とストレージデバイス20との接続が確立された状態(ストレージデバイス20が運用されている状態)で、ログ情報LIを送信させる要求を、所定の周期でストレージデバイス20に通知する。情報取得部611は、ストレージデバイス20からログ情報LIが送信された場合に、送信されたログ情報LIを取得する。情報取得部611は、取得したログ情報LIをエラー発生頻度検出部612に出力する。
エラー発生頻度検出部612は、ログ情報LIに含まれるパラメータC0〜CNの値と、メモリ64から読み出されたエラー判定閾値ETとに基づき、パラメータC0〜CNに関するエラー判定を行い、エラー発生頻度を検出する。「エラー判定」とは、エラーであるか否かの判定を意味する。ここで、PhyBに異常が生じて信号が減衰する場合、パラメータC0〜CNの値が正常時よりも低くなる。また、PhyBに異常が生じて信号の形状に歪みがある場合、複数のパラメータC0〜CNの値の間の大小の比率が正常時よりも大きく(または小さく)なる。「エラー」とは、パラメータC0〜CNの値、またはパラメータC0〜CNの値に基づいて得られる値が正常範囲(所定の範囲)から外れることを意味する。本実施形態では、1つ以上のパラメータC0〜CNの値が、当該1つ以上のパラメータC0〜CNにそれぞれ対応して設定された1つ以上の正常範囲から外れた場合、または複数のパラメータC0〜CNの値の間の1つ以上の比率が、当該1つ以上の比率にそれぞれ対応して設定された1つ以上の正常範囲から外れた場合に、エラーがあると判定する。
本実施形態では、エラー判定閾値ETは、例えば、パラメータC0〜CNにそれぞれ対応して設定された正常範囲の上限値である第1閾値ET1−0〜ET1−Nと、前記正常範囲の下限値である第2閾値ET2−0〜ET2−Nとを含む。そして、エラー発生頻度検出部612は、1つ以上のパラメータC0〜CNの値が、パラメータC0〜CNにそれぞれ対応して設定された第1閾値ET1−0〜ET1−Nよりも大きい場合、または、パラメータC0〜CNにそれぞれ対応して設定された第2閾値ET2−0〜ET2−Nよりも小さい場合に、エラーがあると判定する。
また、エラー判定閾値ETは、例えば、複数のパラメータC0〜CNの値の間の大小の比率にそれぞれ対応して設定された正常範囲の上限値である第3閾値ET3−0〜ET3−Mと、前記正常範囲の下限値である第4閾値ET4−0〜ET4−Mとを含む。そして、エラー発生頻度検出部612は、複数のパラメータC0〜CNの値の間の1つ以上の比率が、複数のパラメータC0〜CNの値の間の比率にそれぞれ対応して設定された第3閾値ET3−0〜ET3−Mよりも大きい場合、または、複数のパラメータC0〜CNの値の間の比率にそれぞれ対応して設定された第4閾値ET4−0〜ET4−Mよりも小さい場合に、エラーがあると判定する。
本実施形態では、エラー発生頻度検出部612は、ログ情報LIに含まれる複数の時点それぞれでのパラメータC0〜CNの値に対して、エラー判定を行う。そして、エラー発生頻度検出部612は、ログ情報LIに含まれる所定期間におけるエラーの発生回数をカウントし、カウントしたエラーの発生回数に基づき、前記所定期間におけるエラーの発生頻度を検出する。「エラー発生頻度」とは、例えば、エラーの発生回数を単位時間で除算したものである。エラー発生頻度検出部612は、検出されたエラーの発生頻度を示す情報を、受信回路異常判定部613に出力する。
なお、エラー発生頻度検出部612によるエラー判定動作は、上記例に限定されない。エラー発生頻度検出部612は、パラメータC0〜CNの値と、複数のパラメータC0〜CNの値の間の比率とのうち一方のみに基づいて、エラー判定を行ってもよい。
エラー発生頻度検出部612は、エラー判定手法として、上記に代えて、または、上記に加えて、ログ情報LIに含まれる第1時点でのパラメータC0〜CNの値と、第1時点よりも過去の第2時点でのパラメータC0〜CNの値との間の変化量に基づき、エラー判定を行ってもよい。この場合、エラー発生頻度検出部612は、1つ以上のパラメータC0〜CNの変化量が、パラメータC0〜CNにそれぞれ対応して設定された第5閾値ET5−0〜ET5−Nよりも大きい場合に、エラーがあると判定してもよい。
エラー判定閾値ET(第1閾値ET1−0〜ET1−N、第2閾値ET2−0〜ET2−N、第3閾値ET3−0〜ET3−M、第4閾値ET4−0〜ET4−M、第5閾値ET5−0〜ET5−Nの各々)は、ホストシステム10とストレージデバイス20との間の通信速度毎に異なる値が設定されている。以下、単に「通信速度」と記した場合、それはホストシステム10とストレージデバイス20との間の通信速度を意味する。エラー発生頻度検出部612は、通信速度に応じて、使用するエラー判定閾値ETを変更する。
なお、エラー発生頻度検出部612は、エラーの発生頻度に代えて、前記所定期間におけるエラーの発生回数を示す情報を受信回路異常判定部613に出力してもよい。このため、以下の説明における「エラーの発生頻度」は全て、「エラーの発生回数」と読み替えられてもよい。
受信回路異常判定部613は、エラー発生頻度検出部612により検出されたエラーの発生頻度と、メモリ64から読み出された異常判定閾値FTとに基づき、ストレージデバイス20のPhyBの異常判定を行う。「異常判定」とは、異常であるか否かの判定を意味する。例えば、受信回路異常判定部613は、エラーの発生頻度が異常判定閾値FTよりも大きい場合に、ストレージデバイス20のPhyBに異常があると判定する。受信回路異常判定部613は、ストレージデバイス20のPhyBに異常があると判定された場合、PhyBに異常があることを示す信号を、異常時処理部62および出力情報生成部63に出力する。
本体異常判定部614は、ストレージデバイス20の本体情報に基づき、ストレージデバイス20の異常を判定する。「ストレージデバイスの本体情報」とは、例えば、S.M.A.R.T(Self-Monitoring Analysis and Reporting Technology)、SASにおける「Mode Page」、NVMeにおける「feature」、SASにおける「Log Page」、NVMeにおける「Get Log」などのうちいずれか1つ以上に含まれる情報であり、SoC21に含まれる各種コントローラ、またはNAND24などの状態に関する情報である。「ストレージデバイスの異常」とは、例えば、S.M.A.R.Tの項目として列挙されている障害であり、PhyB以外の部分の異常である。例えば、「ストレージデバイスの異常」とは、SoC21に含まれる各種コントローラ、またはNAND24などに関する異常である。
異常時処理部62は、受信回路異常判定部613によりPhyBに異常があると判定された場合、または本体異常判定部614によりストレージデバイス20に異常があると判定された場合に、情報処理システム1を安全側に遷移させる所定の動作を行う。例えば、異常時処理部62は、ホストシステム10とストレージデバイス20との接続動作時に、受信回路異常判定部613または本体異常判定部614により異常があると判定された場合に、上記所定の動作の一例として、ホストシステム10とストレージデバイス20との接続状態を解除する。「接続状態の解除」とは、物理的な接続状態の解除を意味するものではなく、例えば、異常があると判定されたストレージデバイス20を、正規の記憶装置としてはホストシステム10が認識しないことである。
異常時処理部62は、ホストシステム10とストレージデバイス20とが接続された状態(ストレージデバイス20が運用されている状態)で、受信回路異常判定部613によりPhyBに異常があると判定された場合、または本体異常判定部614によりストレージデバイス20に異常があると判定された場合に、情報処理システム1を安全側に遷移させる所定の動作を行う。例えば、異常時処理部62は、上記所定の動作の一例として、ストレージデバイス20の運用停止、ストレージデバイス20に対する処理の抑制、およびホストシステム10とストレージデバイス20との接続状態の解除のうち少なくともいずれか1つを行う。「運用停止」とは、例えば、異常があると判定されたストレージデバイス20に対するデータの書き込みおよび読み出しの停止を意味する。「処理の抑制」とは、例えば、異常があると判定されたストレージデバイス20に対してデータの読み出しは行うが、データの書き込みは行わないこと、または、異常があると判定されたストレージデバイス20とは異なるストレージデバイスを優先して利用することなどを意味する。
出力情報生成部63は、受信回路異常判定部613によりPhyBに異常があると判定された場合、または本体異常判定部614によりストレージデバイス20に異常があると判定された場合に、ユーザインターフェースUIに出力する所定の情報を生成する。所定の情報は、例えば、ストレージデバイス20に異常が検出されたこと(例えば、PhyBに異常が検出されたこと)、情報処理システム1を安全側に遷移させる所定の動作を行ったこと、およびストレージデバイス20の保守を促す通知などをユーザに知らせる情報である。
ユーザ端末装置UTは、ユーザが利用する情報処理装置であり、例えば、パーソナルコンピュータやサーバ装置である。ユーザ端末装置UTは、ユーザインターフェースUIを有する。ユーザインターフェースUIは、表示画面を有した表示装置を含む。ユーザインターフェースUIは、出力情報生成部63から出力された所定の情報を受け取り、受け取った所定の情報を表示画面に表示する。
図6は、ログ情報LIの内容の一例を示す図である。ログ情報LIは、直近および過去の複数の時点の各々において、ホストシステム10とストレージデバイス20との間の接続状態と、DFE回路33のパラメータC0〜CNとを関連付けた情報である。このようなログ情報LIを用いることで、直近のパラメータC0〜CNだけではなく、過去のパラメータC0〜CNも考慮してPhyBの異常判定を行うことができる。
次に、情報処理システム1の処理の流れについて説明する。図7は、情報処理システム1の処理の流れの一例を示すフローチャートである。図7は、ホストシステム10とストレージデバイス20との接続動作時にストレージデバイス20の異常判定を行う処理の流れに関する。図7中の(a)は、ユーザ端末装置UTの動作を示す。図7中の(b)は、ホストシステム10の動作を示す。図7中の(c)は、ストレージデバイス20の動作を示す。
<接続動作時(接続開始から接続確立までの間)における異常判定>
図7に示すように、まず、ホストシステム10およびストレージデバイス20が接続動作を開始する(S100,S200)。この接続動作は、例えばSASの場合、リンクリセットシーケンスと呼ばれる一連の動作である。この接続動作は、ホストシステム10とストレージデバイス20との間で所定の信号(例えば、SASにおけるOOB(Out of Band)信号)が送受信されることで開始される。
次に、ホストシステム10およびストレージデバイス20は、通信速度(リンクレート)を決定するための処理(例えば、SASにおけるスピードネゴシエーション)を行う。詳しく述べると、ホストシステム10は、選択可能な通信速度のなかから1つの通信速度(例えば、最も遅い通信速度)を選択し、選択した通信速度でストレージデバイス20と通信を試みる(S101)。例えば、ホストシステム10は、ストレージデバイス20との間で、選択した通信速度で所定のパターンの交換を試みる。所定のパターンは、SASの場合、1.5Gbpsおよび3Gbpsでは「ALIGN」と呼ばれるパターンであり、6Gbpsでは「Phy Capability」と呼ばれるパターンであり、12Gbpsでは「Train pattern / Train Done Pattern」と呼ばれるパターンである。ストレージデバイス20は、ホストシステム10が選択した通信速度で信号が受信した場合、その通信速度に応じてDFE回路33のパラメータC0〜CNを調整する(S201)。ストレージデバイス20は、DFE回路33のパラメータC0〜CNを調整すると、調整したパラメータC0〜CN(図7中では「DFE情報」と記す)をログ情報LIの一部としてメモリ52に格納する(S202)。
次に、ホストシステム10は、他の通信速度(例えば、前回よりも1段階速い速度)を選択可能であるか否かを判定する(S102)。ホストシステム10は、他の通信速度が選択可能である場合(S102:YES)、新しく選択した通信速度で、S101の処理を繰り返す。ストレージデバイス20は、ホストシステム10から受信する信号に基づき、ホストシステム10が他の通信速度を選択したか否かを判定する(S203)。ストレージデバイス20は、ホストシステム10が他の通信速度を選択した場合(S203:YES)、新しく選択された通信速度に対してS201およびS202の処理を繰り返す。その結果、複数の時点におけるDFE回路33のパラメータC0〜CNの履歴がログ情報LIとして記憶される。
ホストシステム10およびストレージデバイス20は、S101〜S102、およびS201〜S203の処理を複数の通信速度に対して行う。そして、ホストシステム10は、ストレージデバイス20でサポートされた全ての通信速度がすでに選択された場合(すなわち、他の通信速度を選択することができない場合)(S102:NO)、通信速度の調整を終了する。そして、ホストシステム10は、上記所定のパターンの交換が成功(valid)した最も速い通信速度でストレージデバイス20と接続される。なお、ホストシステム10は、最も遅い速度から出発して1段階ずつ速い通信速度での接続が可能か否かを判定することに代えて、最も速い速度から出発して1段階ずつ遅い通信速度での接続が可能か否かを判定してもよい。
次に、ホストシステム10は、ストレージデバイス20の本体情報およびログ情報LI(図7中では「デバイス情報」および「DFEログ情報」とそれぞれ記す)を送信させる要求をストレージデバイス20に通知する(S103)。ストレージデバイス20は、ホストシステム10から前記要求を受けた場合、ストレージデバイス20の本体情報およびログ情報LIをホストシステム10に送信する(S204)。ストレージデバイス20の本体情報およびログ情報LIの送信は、SASインターフェースまたはPCIeインターフェースなどを用いて通常行われるが、これらの接続が困難な場合(例えば、セレクションタイムアウトが生じた場合)は、UART26を用いて行われてもよい。
次に、ホストシステム10の本体異常判定部614は、ストレージデバイス20の本体情報に基づいて異常が検出されるか否かを判定する(S104)。そして、ストレージデバイス20の本体情報に基づいて異常が検出された場合(S104:YES)、異常時処理部62は、情報処理システム1を安全側に遷移させる所定の動作を行う(S105)。具体的には、異常時処理部62は、ホストシステム10とストレージデバイス20との接続状態を解除する。
ホストシステム10の出力情報生成部63は、ストレージデバイス20の本体情報に基づいて異常が検出された場合、ストレージデバイス20に異常が検出されたこと、および、情報処理システム1を安全側に遷移させる所定の動作を行ったことなどをユーザに知らせる情報を生成し、生成した情報をユーザ端末装置UTに送信する。ユーザ端末装置UTは、出力情報生成部63から送信された情報を、ユーザインターフェースUIに表示する(S301)。
一方で、ストレージデバイス20の本体情報に基づいて異常が検出されない場合(S104:NO)、ホストシステム10の受信回路異常判定部613は、ログ情報LIに基づいてPhyBに異常が検出されるか否かを判定する(S106)。ログ情報LIに基づいて異常が検出された場合(S106:YES)、異常時処理部62は、情報処理システム1を安全側に遷移させる所定の動作を行う(S107)。具体的には、異常時処理部62は、ホストシステム10とストレージデバイス20との接続状態を解除する。
ホストシステム10の出力情報生成部63は、ログ情報LIに基づいて異常が検出された場合、ストレージデバイス20のPhyBに異常が検出されたこと、および、情報処理システム1を安全側に遷移させる所定の動作を行ったことなどをユーザに知らせる情報を生成し、生成した情報をユーザ端末装置UTに送信する。ユーザ端末装置UTは、出力情報生成部63から送信された情報を、ユーザインターフェースUIに表示する(S302)。
一方で、ホストシステム10およびストレージデバイス20は、ログ情報LIに基づいて異常が検出されない場合(S106:NO)、ホストシステム10とストレージデバイス20との間の接続を確立する(S108、S205)。
<接続確立後(ストレージデバイスの運用中)における異常判定>
次に、ホストシステム10とストレージデバイス20との接続確立後におけるストレージデバイス20の異常判定について説明する。この処理は、上述した接続動作時におけるS103以降の処理と略同じであるため、フローチャートの図示は省略する。
詳しく述べると、ホストシステム10は、ホストシステム10とストレージデバイス20との接続確立後に、所定の周期で、図7中に示されたS103、S104、およびS106の処理を繰り返し行う。そして、S104またはS106の処理で異常が検出された場合、情報処理システム1を安全側に遷移させる所定の動作(S105およびS107の処理)を行う。ここで、ホストシステム10とストレージデバイス20との接続がすでに確立されている場合、上記所定の動作は、ストレージデバイス20の運用停止、ストレージデバイス20に対する処理の抑制、およびホストシステム10とストレージデバイス20との接続状態の解除のうち少なくともいずれか1つである。
なお、ホストシステム10は、<接続動作時における異常判定>と、<接続確立後における異常判定>とのうち、いずれか一方のみを行ってもよい。
このような構成によれば、ストレージデバイス20の受信回路の異常を検出することに適したストレージデバイス20、ホストシステム10、および情報処理システム1を提供することができる。例えば、受信回路に異常がある場合、信号品質の低下(例えばISIの増大、または受信信号の振幅の減少)が見られることがある。例えば、インターフェースが高速であるほど、受信回路に異常が生じた場合の信号品質の低下は大きくなる。
そこで、本実施形態では、ストレージデバイス20は、PhyBの状態に関する情報をホストシステム10に出力する情報出力部513を有する。これにより、PhyBに関する異常判定をホストシステム10で行うことができ、PhyBの異常を早期に検出することができる。その結果、故障などにより信号品質が良好でないストレージデバイス20が運用されてシステム障害などが生じる可能性をより確実に抑制することができる。これにより、ストレージデバイス20および情報処理システム1の信頼性の向上を図ることができる。
本実施形態では、ストレージデバイス20は、受信回路の状態に関する情報として、PhyBに設けられたDFE回路33の1つ以上のパラメータC0〜CNの値を出力する。このような構成によれば、ホストシステム10は、DFE回路33の1つ以上のパラメータC0〜CNの値に基づき、PhyBの異常判定を行うことができる。これにより、PhyBの異常をより高い精度で検出することができる。
ここで、DFE回路33のパラメータC0〜CNの値は、常に正常範囲にあるとは限らない。このため、DFE回路33のパラメータC0〜CNの値に基づいて異常判定を行う場合、DFE回路33のパラメータC0〜CNの値の履歴も考慮して異常判定を行うことが望ましい。
そこで、本実施形態では、ストレージデバイス20は、DFE回路33の1つ以上のパラメータの値の履歴をログ情報LIとして管理するログ情報マネージャ512を備えている。そして、ストレージデバイス20は、ホストシステム10にログ情報LIを出力する。このような構成によれば、ホストシステム10は、ログ情報LIから得られるDFE回路33のパラメータC0〜CNの値の履歴に基づき、異常判定を行うことができる。これにより、PhyBの異常をさらに高い精度で検出することができる。
本実施形態では、ホストシステム10は、DFE回路33の1つ以上のパラメータC0〜CNの値が正常範囲から外れた頻度または回数を検出し、前記1つ以上のパラメータC0〜CNの値が前記正常範囲から外れた頻度または回数が閾値よりも大きい場合に、PhyBに異常があると判定する。このような構成によれば、DFE回路33のパラメータC0〜CNの値が正常範囲から外れる頻度も考慮して異常判定を行うことができる。これにより、PhyBの異常をさらに高い精度で検出することができる。
本実施形態では、ホストシステム10の異常時処理部62は、ホストシステム10とストレージデバイス20との接続動作時に、PhyBに異常があると判定された場合に、ホストシステム10とストレージデバイス20との接続状態を解除する。このような構成によれば、PhyBに異常が生じた場合に、ホストシステム10とストレージデバイス20との接続状態を解除し、情報処理システム1を安全側に遷移させることができる。これにより、情報処理システム1の信頼性をさらに高めることができる。
本実施形態では、ホストシステム10の異常時処理部62は、ホストシステム10とストレージデバイス20とが接続された状態で、ある周期でPhyBに関する異常判定が行われてPhyBに異常があると判定された場合に、ストレージデバイス20の運用停止、ストレージデバイス20に対する処理の抑制、およびホストシステム10とストレージデバイス20との接続状態の解除のうち少なくともいずれか1つを行う。このような構成によれば、ストレージデバイス20の運用中にPhyBに故障が生じた場合でも、情報処理システム1を安全側に遷移させることができる。これにより、情報処理システム1の信頼性をさらに高めることができる。
(変形例)
第1の実施形態では、ログ情報LIに基づきDFE回路33のパラメータC0〜CNに関するエラー発生頻度が検出され、エラー発生頻度に基づき異常判定を行う例について説明した。ただし、異常判定は、エラー発生頻度に基づかず、DFE回路33のパラメータC0〜CNの値に直接基づいて行われてもよい。この内容を本変形例では説明する。
本変形例では、異常判定閾値FTは、DFE回路33のパラメータC0〜CNにそれぞれ対応して設定された正常範囲(所定の範囲)の上限値である第1閾値FT1−0〜FT1−Nと、前記正常範囲の下限値である第2閾値FT2−0〜FT2−Nとを含む。そして、受信回路異常判定部613は、1つ以上のパラメータC0〜CNの値が、パラメータC0〜CNにそれぞれ対応して設定された第1閾値FT1−0〜FT1−Nよりも大きい場合、または、パラメータC0〜CNにそれぞれ対応して設定された第2閾値FT2−0〜FT2−Nよりも小さい場合に、PhyBに異常があると判定する。
また、異常判定閾値FTは、例えば、複数のパラメータC0〜CNの値の間の大小の比率にそれぞれ対応して設定された正常範囲の上限値である第3閾値FT3−0〜FT3−Mと、前記正常範囲の下限値である第4閾値FT4−0〜FT4−Mとを含む。そして、受信回路異常判定部613は、複数のパラメータC0〜CNの値の間の1つ以上の比率が、複数のパラメータC0〜CNの値の間の比率にそれぞれ対応して設定された第3閾値T3−0〜FT3−Mよりも大きい場合、または、複数のパラメータC0〜CNの値の間の比率にそれぞれ対応して設定された第4閾値FT4−0〜FT4−Mよりも小さい場合に、PhyBに異常があると判定する。なお、受信回路異常判定部613は、パラメータC0〜CNの値と、複数のパラメータC0〜CNの値の間の比率とのうち一方のみに基づいて、異常判定を行ってもよい。
受信回路異常判定部613は、異常判定手法として、上記に代えて、または、上記に加えて、ログ情報LIに含まれる第1時点でのパラメータC0〜CNの値と、第1時点よりも過去の第2時点でのパラメータC0〜CNの値との間の変化量に基づき、PhyBの異常判定を行ってもよい。この場合、受信回路異常判定部613は、1つ以上のパラメータC0〜CNの変化量が、パラメータC0〜CNにそれぞれ対応して設定された第5閾値FT5−0〜FT5−Nよりも大きい場合に、異常があると判定してもよい。
このような構成によれば、上記第1の実施形態と同様に、DFE回路33の1つ以上のパラメータC0〜CNを利用して、PhyBの異常判定を行うことができる。また、本変形例は、後述する全ての実施形態にも適用可能である。
(第2の実施形態)
次に、第2の実施形態について説明する。本実施形態は、エラー発生頻度検出部612が、ホストシステム10に代えてストレージデバイス20に設けられた例である。なお、以下に説明する以外の構成は、第1の実施形態と同様である。
図8は、第2の実施形態の情報処理システム1の一例を示すブロック図である。本実施形態では、ストレージデバイス20の受信回路情報マネージャ51は、エラー発生頻度検出部612を有する。エラー発生頻度検出部612は、メモリ52からログ情報LIおよびエラー判定閾値ETを読み出す。そして、エラー発生頻度検出部612は、DFE回路33のパラメータC0〜CNに関するエラー発生頻度を検出する。エラー発生頻度検出部612は、検出したエラーの発生頻度を示す情報(以下、「エラー頻度情報EI」と称する)を、メモリ52に格納する。
情報出力部513は、エラー頻度情報EIを送信させる要求がホストシステム10からストレージデバイス20に通知された場合、エラー頻度情報EIをメモリ52から読み出し、ホストシステム10に送信する。「エラー頻度情報EI」は、「受信回路の状態に関する情報」の一例であり、「判定帰還型等化器の1つ以上のパラメータに基づいて得られた情報」の一例であり、「ログ情報に基づいて得られた情報」の一例である。また、情報出力部513は、ホストシステム10からの要求によらず、所定の周期でエラー頻度情報EIをホストシステム10に送信してもよい。
ホストシステム10の受信回路異常判定部613は、ストレージデバイス20から取得したエラー頻度情報EIと、メモリ52から読み出された異常判定閾値FTとに基づき、ストレージデバイス20のPhyBの異常判定を行う。
図9は、本実施形態の情報処理システム1の処理の流れの一例を示すフローチャートである。図9は、ホストシステム10とストレージデバイス20との接続動作時にストレージデバイス20の異常判定を行う処理の流れに関する。図9中の(a)は、ユーザ端末装置UTの動作を示す。図9中の(b)は、ホストシステム10の動作を示す。図9中の(c)は、ストレージデバイス20の動作を示す。
本実施形態では、図7を参照して説明した第1の実施形態の処理の流れに対して、「DFE情報」が「エラー頻度情報EI」が読み替えられる。また、ストレージデバイス20の動作において、S203の処理とS204の処理との間に、エラー発生頻度検出部612によりエラー発生頻度が検出される(S211)。なお、エラー発生頻度の検出および受信回路の異常判定は、ホストシステム10とストレージデバイス20との接続動作時に限定されず、ホストシステム10とストレージデバイス20との接続確立後に所定の周期で行われてもよい。
このような構成によれば、第1の実施形態と同様に、ストレージデバイス20のPhyBの異常を検出することに適したストレージデバイス20、ホストシステム10、および情報処理システム1を提供することができる。
(第3の実施形態)
次に、第3の実施形態について説明する。本実施形態は、エラー発生頻度検出部612および受信回路異常判定部613が、ホストシステム10に代えてストレージデバイス20に設けられた例である。なお、以下に説明する以外の構成は、第2の実施形態と同様である。
図10は、第3の実施形態の情報処理システム1の一例を示すブロック図である。本実施形態では、ストレージデバイス20の受信回路情報マネージャ51は、エラー発生頻度検出部612および受信回路異常判定部613を含む。受信回路異常判定部613は、エラー発生頻度検出部612から受け取ったエラー頻度情報EIと、メモリ52から読み出された異常判定閾値FTとに基づき、ストレージデバイス20のPhyBの異常判定を行う。受信回路異常判定部613は、PhyBに異常があると判定した場合、PhyBの異常を示す情報(以下、「受信回路異常情報」と称する)を情報出力部513に出力する。
情報出力部513は、受信回路異常判定部613によりPhyBに異常があると判定された場合、受信回路異常情報をホストシステム10に送信する。「受信回路異常情報」は、「受信回路の状態に関する情報」の一例であり、「判定帰還型等化器の1つ以上のパラメータに基づいて得られた情報」の一例であり、「ログ情報に基づいて得られた情報」の一例であり、「受信回路の異常を示す情報」の一例である。
図11は、本実施形態の情報処理システム1の処理の流れの一例を示すフローチャートである。図11は、ホストシステム10とストレージデバイス20との接続動作時にストレージデバイス20のPhyBの異常判定を行う処理の流れに関する。図11中の(a)は、ユーザ端末装置UTの動作を示す。図11中の(b)は、ホストシステム10の動作を示す。図11中の(c)は、ストレージデバイス20の動作を示す。
本実施形態では、図9を参照して説明した第2の実施形態の処理の流れに対して、以下の点のみ異なる。すなわち、S103の処理では、ホストシステム10は、DFE回路33に関する情報を要求せず、ストレージデバイス20の本体情報のみを要求する。そのため、ストレージデバイス20は、ホストシステム10からの要求に応じてストレージデバイス20の本体情報のみを送信する。
本実施形態では、S211の処理の後に、受信回路異常判定部613によりPhyBの異常判定が行われる(S221)。受信回路異常判定部613によりPhyBに異常があると判定された場合(S221:YES)、情報出力部513は、受信回路異常情報をホストシステム10に送信する(S222)。
本実施形態では、ホストシステム10の異常検出部61は、ストレージデバイス20から受信回路異常情報を受信したか否かを判定する(S121)。ストレージデバイス20から受信回路異常情報を受信した場合(S121:YES)、異常時処理部62は、情報処理システム1を安全側に遷移させる所定の動作を行う(S107)。一方で、ストレージデバイス20から受信回路異常情報を受信していない場合(S121:NO)、ホストシステム10とストレージデバイス20との間の接続が確立される(S108、S205)。なお、エラー発生頻度の検出および受信回路の異常判定は、ホストシステム10とストレージデバイス20との接続動作時に限定されず、ホストシステム10とストレージデバイス20との接続確立後に所定の周期で行われてもよい。
このような構成によれば、第1の実施形態と同様に、ストレージデバイス20のPhyBの異常を検出することに適したストレージデバイス20、ホストシステム10、および情報処理システム1を提供することができる。
(第4の実施形態)
次に、第4の実施形態について説明する。本実施形態は、ストレージデバイス20の受信回路異常判定部613により受信回路に異常があると判定された場合に、ホストシステム10からの要求(例えば、データのライト要求またはリード要求)に対する応答に受信回路異常情報を含める例である。なお、以下に説明する以外の構成は、第3の実施形態と同様である。
図12は、ホストシステム10に対する応答情報の一例を示す図である。図12は、例えばSASで規定された応答情報のフォーム(Response Information Unit)を示す。ストレージデバイス20は、ホストシステム10からの要求を正常に処理できた場合、このフォームに従った応答情報をホストシステム10に送信することで、要求の実行完了をホストシステム10に通知する。
本実施形態では、ストレージデバイス20の情報出力部513は、PhyBの異常によりホストシステム10からの要求を正常に処理できなかった場合に、ホストシステム10からの要求に対して送信される応答情報に受信回路異常情報を含めることで、PhyBに異常があることをホストシステム10に通知する。SASのフォームを例に詳しく述べると、このフォームでは、Byte 11のSTATUS(図12中の(A))のコードに「02h CHECK CONDITION」が登録されることで、異常がある旨が応答情報に含められる。そして、その異常の種類は、後続のSENSE KEY、ADITIONAL SENSE CODE、ADITIONAL SENSE CODE QUALIFIER、REASON CODE(図12中の(B)〜(E))に登録される。
例えば、PhyBに異常があることをフォームに含める場合、受信回路の異常はハードウェアの異常であるので、SENSE KEYのコードには、「4h HARDWARE ERROR」が登録される。そして、本実施形態では、ADITIONAL SENSE CODE、ADITIONAL SENSE CODE QUALIFIER、またはREASON CODEのいずれか1つ以上のコードに、SASでは規定されていない新規のコード内容(他と区別可能なコード内容)を付与することで、PhyBに異常があることフォームに含める。なお、図12は、PhyBに異常があることを示すコード内容として、ADITIONAL SENSE CODEに「49h」が登録され、ADITIONAL SENSE CODE QUALIFIERに「9Ah」が登録され、REASON CODEに「10h」が登録される例を示している。
次に、本実施形態の情報処理システム1の処理の流れについて説明する。本実施形態では、ストレージデバイス20は、ホストシステム10からの要求(例えば、データのライト要求またはデータのリード要求)を実行中に、受信回路異常判定部613によりPhyBに異常があると判定された場合に、その要求に対する応答情報に受信回路異常情報を含める。また、ストレージデバイス20は、ホストシステム10から要求を通知される前に、受信回路異常判定部613によりPhyBに異常があると判定された場合に、その直後にホストシステム10から通知された要求に対する応答情報に受信回路異常情報を含める。すなわち、異常の検出は、ホストシステム10からの要求と同期をとる必要はなく、事前にバックグラウンド処理の一部としてホストシステム10からの要求とは非同期に実行されてもよい。
図13は、本実施形態の情報処理システム1の処理の流れの一例を示すフローチャートである。図13は、ホストシステム10とストレージデバイス20との接続確立後にストレージデバイス20の異常判定を行う処理の流れに関する。図13中の(a)は、ユーザ端末装置UTの動作を示す。図13中の(b)は、ホストシステム10の動作を示す。図13中の(c)は、ストレージデバイス20の動作を示す。
図13に示すように、ホストシステム10は、ストレージデバイス20に要求(例えば、データのリード要求またはライト要求)を通知する(S150)。ストレージデバイス20は、DFE回路33のパラメータC0〜CNに関する情報(例えば、ログ情報LI)に基づき、PhyBの異常判定を行う(S250)。なお、PhyBの異常判定は、エラー頻度情報EIに基づいてもよく、第1の実施形態の変形例と同様に、パラメータC0〜CNの値に直接基づいてもよい。
受信回路異常判定部613によりPhyBに異常がないと判定された場合(S250:NO)、情報出力部513は、ホストシステム10への応答情報に受信回路異常情報を含めない。このため、他の異常がない場合、ストレージデバイス20は、正常時の応答情報を生成する(S251)。一方で、受信回路異常判定部613によりPhyBに異常があると判定された場合(S250:YES)、情報出力部513は、ホストシステム10への応答情報に受信回路異常情報を含める。これにより、受信回路異常情報を含む応答情報が生成される(S252)。そして、ストレージデバイス20は、生成した応答情報をホストシステム10に送信する(S253)。
ホストシステム10の異常検出部61は、ストレージデバイス20から応答情報を受け取った場合、ストレージデバイス20の異常(受信回路以外の異常も含む)を示す内容が応答情報に含まれていないか判定する。異常検出部61は、ストレージデバイス20の異常を示す内容が応答情報に含まれている場合、応答情報に含まれるコード内容に基づき、ストレージデバイス20の異常がPhyBの異常であるか否かを判定する(S151)。ホストシステム10の異常時処理部62は、ストレージデバイス20の異常がPhyBの異常である場合、情報処理システム1を安全側に遷移させる所定の動作を行う(S107)。例えば、異常時処理部62は、ストレージデバイス20の運用停止、ストレージデバイス20に対する処理の抑制、およびホストシステム10とストレージデバイス20との接続状態の解除のうち少なくともいずれか1つを行う。
このような構成によれば、第1の実施形態と同様に、ストレージデバイス20のPhyBの異常を検出することに適したストレージデバイス20、ホストシステム10、および情報処理システム1を提供することができる。また、本実施形態によれば、ホストシステム10への応答情報を利用して、PhyBの異常をホストシステム10に通知することができる。これにより、PhyBの異常をホストシステム10に通知するためのストレージデバイス20の処理を簡便に行うことができる。なお、本実施形態では、ホストシステム10からのリード要求またはライト要求に対する応答情報に受信回路異常情報を含める例を示したが、他の要求に対する応答情報に受信回路異常情報を含めてもよい。
(第5の実施形態)
次に、第5の実施形態について説明する。本実施形態は、PhyBに異常があると判定された場合に、ホストシステム10の信号の出力電圧および通信速度などを調整することで、異常があると判定されたストレージデバイス20の安全な運用の継続を試みる例である。なお、以下に説明する以外の構成は、第1の実施形態と同様である。
図14は、本実施形態の情報処理システム1の処理の流れの一例を示すフローチャートである。なお、図14は、PhyBに異常があると判定された後のホストシステム10の処理の流れを抜き出している。また前提として、PhyBに異常があると判定された場合でも可能な限りストレージデバイス20の運用の継続を目指す旨の指示がユーザ端末装置UTからホストシステム10に事前に与えられているものとする。
図14に示すように、本実施形態では、PhyBに異常があると判定された場合、ホストシステム10の異常時処理部62は、ホストシステム10からストレージデバイス20に送信する信号の出力電圧を高める(S401)。例えば、ホストシステム10は、PhyAのエンファシス回路31により信号の出力電圧を高める。
ストレージデバイス20は、ホストシステム10から出力電圧が高められた信号が入力された場合、その信号に基づいてDFE回路33のパラメータC0〜CNを調整する。ストレージデバイス20の情報出力部513は、調整されたDFE回路33のパラメータC0〜CNに関する情報を、ホストシステム10に送信する。「調整されたDFE回路33に関する情報」とは、例えば、調整されたDFE回路33のパラメータC0〜CNの値でもよいし、調整されたDFE回路33のパラメータC0〜CNの値に基づくPhyBの異常判定の判定結果でもよい。
ホストシステム10の異常検出部61は、調整されたDFE回路33に関する情報をストレージデバイス20から取得する(S402)。異常検出部61は、調整されたDFE回路33に関する情報に基づき、PhyBの異常が解消しているか否かを判定する(S403)。例えば、異常検出部61は、調整されたDFE回路33に関する情報として調整されたDFE回路33のパラメータC0〜CNの値を取得した場合、そのパラメータC0〜CNの値に基づき、PhyBの異常が解消しているか否かを判定する。また、異常検出部61は、調整されたDFE回路33に関する情報としてPhyBの異常判定の判定結果を取得した場合、ストレージデバイス20で行われたPhyBの異常判定の判定結果に基づき、PhyBの異常が解消しているか否かを判定する。
PhyBの異常が解消している場合(S403:YES)、ホストシステム10は、その信号の出力電圧で、ストレージデバイス20の運用を継続する。一方で、PhyBの異常が解消していない場合(S403:NO)、ホストシステム10の異常時処理部62は、ホストシステム10の信号の出力電圧が許容される最大であるか否かを判定する(S404)。
ホストシステム10の信号の出力電圧が最大でない場合(S404:NO)、異常時処理部62は、S401の処理に戻り、S401からS403の処理を繰り返す。一方で、ホストシステム10の信号の出力電圧が最大である場合(S404:YES)、異常時処理部62は、通信速度の調整によるストレージデバイス20の運用継続を試みる。
すなわち、ホストシステム10の異常時処理部62は、通信速度が許容される最低速でない限り、通信速度を1段階下げる(S411)。例えばSASでは、通信速度として、1.5Gbps、3Gbps、6Gbps、および12Gbpsが規定されている。例えば、12Gbpsの通信速度で通信している状態でPhyBに異常があると判定された場合、異常時処理部62は、通信速度を6Gbpsに引き下げる。
ストレージデバイス20は、通信速度が引き下げられた場合、その通信速度に基づいてDFE回路33のパラメータC0〜CNを調整する。ストレージデバイス20の情報出力部513は、調整されたDFE回路33に関する情報を、ホストシステム10に送信する。「調整されたDFE回路33に関する情報」とは、例えば、調整されたDFE回路33のパラメータC0〜CNの値でもよいし、調整されたDFE回路33のパラメータC0〜CNの値に基づくPhyBの異常判定の判定結果でもよい。
ホストシステム10の異常検出部61は、調整されたDFE回路33に関する情報をストレージデバイス20から取得する(S412)。異常検出部61は、調整されたDFE回路33に関する情報に基づき、PhyBの異常が解消しているか否かを判定する(S413)。例えば、異常検出部61は、調整されたDFE回路33に関する情報として調整されたDFE回路33のパラメータC0〜CNの値を取得した場合、そのパラメータC0〜CNの値に基づき、PhyBの異常が解消しているか否かを判定する。また、異常検出部61は、調整されたDFE回路33に関する情報としてPhyBの異常判定の判定結果を取得した場合、ストレージデバイス20で行われたPhyBの異常判定の判定結果に基づき、PhyBの異常が解消しているか否かを判定する。
PhyBの異常が解消している場合(S413:YES)、ホストシステム10は、その通信速度で、ストレージデバイス20の運用を継続する。一方で、PhyBの異常が解消していない場合(S413:NO)、ホストシステム10の異常時処理部62は、通信速度が許容される最低速であるか否かを判定する(S414)。
通信速度が最低速でない場合(S414:NO)、異常時処理部62は、S411の処理に戻り、S411からS413の処理を繰り返す。一方で、通信速度が最低速である場合(S414:YES)、異常時処理部62は、異常時処理部62は、ストレージデバイス20の運用の継続が困難と判断し、情報処理システム1を安全側に遷移させる所定の動作を行う(S415)。所定の動作は、例えば、ストレージデバイス20の運用停止、ストレージデバイス20に対する処理の抑制、およびホストシステム10とストレージデバイス20との接続状態の解除のうち少なくともいずれか1つである。
このような構成によれば、第1の実施形態と同様に、ストレージデバイス20のPhyBの異常を検出することに適したストレージデバイス20、ホストシステム10、および情報処理システム1を提供することができる。また、本実施形態によれば、情報処理システム1の運用コストを抑えたい場合に、ストレージデバイス20の可用性を高めることができる。
例えば、PhyBに異常があると判定された場合であっても、実際にはPhyBに異常が無く、ストレージデバイス20に届くホストシステム10の信号の電圧レベルが何らかの理由で低くなっている可能性がある。そのため、本実施形態の異常時処理部62は、PhyBに異常があると判定された場合に、ホストシステム10から送信される信号の出力電圧を高める。このような構成であれば、ストレージデバイス20に届く信号の電圧レベルを高めることで、ストレージデバイス20を安全に継続して運用することができる。
また、PhyBに異常があると判定された場合であっても、通信速度を下げた場合、PhyBの動作が改善する場合がある。そのため、本実施形態の異常時処理部62は、PhyBに異常があると判定された場合に、通信速度を低下させる。
なお、上述したホストシステム10から送信される信号の出力電圧を高める動作と、通信速度を下げる動作は、実施される順序が逆でもよい。また、ホストシステム10から送信される信号の出力電圧を高める動作と、通信速度を下げる動作は、いずれか一方のみが実施されてもよい。
ここで、PhyBに異常があると判定される可能性は、通信速度が速くなるほど高くなる。そこで、ホストシステム10は、例えば、ある一定以上の通信速度(例えば、12Gbpsよりも速い通信速度)でストレージデバイス20と通信している状態で、PhyBに異常があると判定された場合、通信速度を低下(例えば、12Gbps以下の通信速度)に低下させてもよい。このような動作を行うことで、ストレージデバイス20の可用性を高めることができる。
以上、いくつかの実施形態および変形例について説明したが、実施形態は、上記例に限定されない。例えば、「受信回路」は、DFE回路33を含むものに限定されない。例えば、PhyBは、8ビットと10ビットとの間でデータを変換する回路(いわゆる8B10B回路)を有してもよい。この回路は、異常が発生した場合、回路上で電荷が偏ることがある。この場合、受信回路情報マネージャ51は、ランニングディスパリティ(RD:Running Disparity)に基づき、電荷の偏りを検出する。エラー発生頻度検出部612は、電荷の偏り程度が閾値を超えた場合にエラーを判定し、エラーの数をカウントする。そして、受信回路異常判定部613は、電荷の偏りに関するエラーに基づき、受信回路の異常判定を行う。このような構成によってもストレージデバイス20のPhyBの異常を検出することに適したストレージデバイス20、ホストシステム10、および情報処理システム1を提供することができる。電荷の偏りを示す情報、または上記エラーの数に関する情報は、「受信回路の状態に関する情報」の一例である。なおこれらの場合でも、エラー発生頻度検出部612および受信回路異常判定部613は、ホストシステム10に設けられてもよく、ストレージデバイス20に設けられてもよい。
以上説明した少なくともひとつの実施形態によれば、ストレージデバイスは、受信回路の状態に関する情報をホストシステムに出力する情報出力部を有する。このような構成によれば、受信回路の異常を検出することに適したストレージデバイスを提供することができる。
以下、いくつかのストレージデバイス、ホストシステム、および情報処理システムについて付記する。
[1]ホストシステムから送信された信号を受信する受信回路と、
前記受信回路の状態に関する情報を前記ホストシステムに出力する情報出力部と、
を備えたストレージデバイス。
[2]、[1]に記載のストレージデバイスであって、
前記受信回路は、前記信号を補正する判定帰還型等化器を含み、
前記情報出力部は、前記受信回路の状態に関する情報として、前記信号の補正に用いられる前記判定帰還型等化器の1つ以上のパラメータの値と、前記判定帰還型等化器の1つ以上のパラメータの値に基づいて得られた情報とのうち少なくとも一方を出力する。
[3]、[2]に記載のストレージデバイスであって、
前記判定帰還型等化器の1つ以上のパラメータの値の履歴をログ情報として管理するマネージャをさらに備え、
前記情報出力部は、前記ログ情報と、前記ログ情報に基づいて得られた情報とのうち少なくとも一方を出力する。
[4]、[2]に記載のストレージデバイスであって、
前記判定帰還型等化器の1つ以上のパラメータの値に基づいて前記受信回路の異常判定を行う判定部をさらに備え、
前記情報出力部は、前記判定部により前記受信回路に異常があると判定された場合に、前記受信回路の異常を示す情報を前記ホストシステムに出力する。
[5]、[4]に記載のストレージデバイスであって、
前記判定部は、前記判定帰還型等化器の1つ以上のパラメータの値が、前記1つ以上のパラメータにそれぞれ対応して設定された1つ以上の第1閾値よりも大きい場合、または、前記1つ以上のパラメータにそれぞれ対応して設定された1つ以上の第2閾値よりも小さい場合に、前記受信回路に異常があると判定する。
[6]、[4]に記載のストレージデバイスであって、
前記判定帰還型等化器の1つ以上のパラメータの値の履歴をログ情報として管理するマネージャをさらに備え、
前記判定部は、前記ログ情報と、前記ログ情報に基づいて得られた情報とのうち少なくとも一方に基づいて前記受信回路の異常判定を行う。
[7]、[6]に記載のストレージデバイスであって、
前記判定部は、前記判定帰還型等化器の1つ以上のパラメータの値が所定の範囲から外れた頻度または回数を検出し、前記1つ以上のパラメータが前記所定の範囲から外れた頻度または回数が閾値よりも大きい場合に、前記受信回路に異常があると判定する。
[8]、[4]に記載のストレージデバイスであって、
前記情報出力部は、前記ホストシステムからの要求を実行中または前記ホストシステムから要求を通知される前に前記判定部により前記受信回路に異常があると判定された場合に、前記要求に対する応答に前記受信回路の異常を示す情報を含める。
[9]ストレージデバイスが備えた受信回路の状態に関する情報を前記ストレージデバイスから取得する情報取得部と、
前記受信回路の状態に関する情報に基づき、前記受信回路の異常判定を行う判定部と、
を備えたホストシステム。
[10]、[9]に記載のホストシステムであって、
前記受信回路は、前記ホストシステムから送信された信号を補正する判定帰還型等化器を含み、
前記情報取得部は、前記受信回路の状態に関する情報として、前記信号の補正に用いられる前記判定帰還型等化器の1つ以上のパラメータの値と、前記判定帰還型等化器の1つ以上のパラメータの値に基づいて得られた情報とのうち少なくとも一方を取得し、
前記判定部は、前記判定帰還型等化器の1つ以上のパラメータの値と、前記判定帰還型等化器の1つ以上のパラメータの値に基づいて得られた情報とのうち少なくとも一方に基づいて前記受信回路の異常判定を行う。
[11]、[10]に記載のホストシステムであって、
前記情報取得部は、前記判定帰還型等化器の1つ以上のパラメータの値と、前記判定帰還型等化器の1つ以上のパラメータの値に基づいて得られた情報とのうち少なくとも一方を前記ホストシステムに送信させる要求を前記ストレージデバイスに通知する。
[12]、[9]に記載のホストシステムであって、
前記ホストシステムと前記ストレージデバイスとの接続動作時に、前記判定部により前記受信回路に異常があると判定された場合に、前記ホストシステムと前記ストレージデバイスとの接続状態を解除する異常時処理部をさらに備える。
[13]、[9]に記載のホストシステムであって、
前記ホストシステムと前記ストレージデバイスとが接続された状態で、ある周期で前記判定部により前記受信回路の異常判定が行われて前記判定部により前記受信回路に異常があると判定された場合に、前記ストレージデバイスの運用停止、前記ストレージデバイスに対する処理の抑制、および前記ホストシステムと前記ストレージデバイスとの接続状態の解除のうち少なくともいずれか1つを行う異常時処理部をさらに備える。
[14]、[9]に記載のホストシステムであって、
前記判定部により前記受信回路に異常があると判定された場合に、前記ホストシステムから送信される信号の出力電圧を高める異常時処理部をさらに備え、
前記判定部は、前記信号の出力電圧を高めた後に前記ストレージデバイスから得た前記受信回路の状態に関する情報に基づき、前記受信回路の異常判定を行う。
[15]、[9]に記載のホストシステムであって、
前記判定部により前記受信回路に異常があると判定された場合に、前記ホストシステムと前記ストレージデバイスとの間の通信速度を低下させる異常時処理部をさらに備え、
前記判定部は、前記通信速度を低下させた後に前記ストレージデバイスから得た前記受信回路の状態に関する情報に基づき、前記受信回路の異常判定を行う。
[16]受信回路を有したストレージデバイスと、
前記受信回路の状態に関する情報を前記ストレージデバイスから取得し、前記受信回路の状態に関する情報に基づいて前記受信回路の異常判定を行うホストシステムと、
を備えた情報処理システム。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1…情報処理システム、10…ホストシステム、20…ストレージデバイス、33…DFE回路(判定帰還型等化器)、62…異常時処理部、512…ログ情報マネージャ、513…情報出力部、613…受信回路異常判定部、B…Phy(受信回路)。

Claims (5)

  1. ホストシステムから送信された信号を受信する受信回路と、
    前記受信回路の状態に関する情報を前記ホストシステムに出力する情報出力部と、
    を備えたストレージデバイス。
  2. 前記受信回路は、前記信号を補正する判定帰還型等化器を含み、
    前記情報出力部は、前記受信回路の状態に関する情報として、前記信号の補正に用いられる前記判定帰還型等化器の1つ以上のパラメータの値と、前記判定帰還型等化器の1つ以上のパラメータの値に基づいて得られた情報とのうち少なくとも一方を出力する、
    請求項1に記載のストレージデバイス。
  3. 前記判定帰還型等化器の1つ以上のパラメータの値の履歴をログ情報として管理するマネージャをさらに備え、
    前記情報出力部は、前記ログ情報と、前記ログ情報に基づいて得られた情報とのうち少なくとも一方を出力する、
    請求項2に記載のストレージデバイス。
  4. ストレージデバイスが備えた受信回路の状態に関する情報を前記ストレージデバイスから取得する情報取得部と、
    前記受信回路の状態に関する情報に基づき、前記受信回路の異常判定を行う判定部と、
    を備えたホストシステム。
  5. 受信回路を有したストレージデバイスと、
    前記受信回路の状態に関する情報を前記ストレージデバイスから取得し、前記受信回路の状態に関する情報に基づいて前記受信回路の異常判定を行うホストシステムと、
    を備えた情報処理システム。
JP2017171577A 2017-09-06 2017-09-06 ストレージデバイス、ホストシステム、および情報処理システム Pending JP2019046389A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017171577A JP2019046389A (ja) 2017-09-06 2017-09-06 ストレージデバイス、ホストシステム、および情報処理システム
US15/905,804 US10635514B2 (en) 2017-09-06 2018-02-26 Storage device, host system, and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017171577A JP2019046389A (ja) 2017-09-06 2017-09-06 ストレージデバイス、ホストシステム、および情報処理システム

Publications (1)

Publication Number Publication Date
JP2019046389A true JP2019046389A (ja) 2019-03-22

Family

ID=65518798

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017171577A Pending JP2019046389A (ja) 2017-09-06 2017-09-06 ストレージデバイス、ホストシステム、および情報処理システム

Country Status (2)

Country Link
US (1) US10635514B2 (ja)
JP (1) JP2019046389A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020175720A1 (ko) * 2019-02-28 2020-09-03 엘지전자 주식회사 디지털 디바이스 및 그 제어 방법
JP2022049407A (ja) 2020-09-16 2022-03-29 キオクシア株式会社 情報処理システム、ストレージデバイス、およびキャリブレーション方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5490155A (en) * 1992-10-02 1996-02-06 Compaq Computer Corp. Error correction system for n bits using error correcting code designed for fewer than n bits
JP3344123B2 (ja) * 1994-11-16 2002-11-11 ヤマハ株式会社 データ受信装置
US5925144A (en) * 1997-03-13 1999-07-20 Western Digital Corporation Error correction code circuit that performs built-in self test
US6363511B1 (en) * 1998-03-31 2002-03-26 Stmicroelectronics N.V. Device and method for decoding data streams from storage media
JP2006031335A (ja) 2004-07-15 2006-02-02 Hitachi Ltd 情報処理システム及び方法
JP2006343822A (ja) 2005-06-07 2006-12-21 Fujitsu Ltd ライブラリ装置
JP4414399B2 (ja) 2006-01-30 2010-02-10 富士通株式会社 ディスク制御装置
JP5556371B2 (ja) * 2010-05-25 2014-07-23 セイコーエプソン株式会社 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム
CN103870365A (zh) * 2012-12-11 2014-06-18 鸿富锦精密工业(深圳)有限公司 电子装置检测系统及方法

Also Published As

Publication number Publication date
US20190073255A1 (en) 2019-03-07
US10635514B2 (en) 2020-04-28

Similar Documents

Publication Publication Date Title
US9661350B2 (en) Methods and apparatus for error rate estimation
US10108574B2 (en) Electronic device, communication control circuit, and communication control method
US9558054B2 (en) Apparatus and method for detecting errors on a transmission path
US9898201B2 (en) Non-volatile memory device, and storage apparatus to reduce a read retry occurrence frequency and prevent read performance from lowering
KR20150135311A (ko) 에러 정정 로직을 갖는 메모리 디바이스
US9923740B2 (en) System aware transmitter adaptation for high speed serial interfaces
CN112817518A (zh) 存储器系统及其操作方法
JP2019046389A (ja) ストレージデバイス、ホストシステム、および情報処理システム
JP6691284B2 (ja) 情報処理装置、ストレージシステムおよび通信制御プログラム
US8782298B2 (en) Computing device and method for adjusting physical links of a SAS expander of the computing device
US11901961B2 (en) Interface circuit, memory controller and method for calibrating signal processing devices in an interface circuit of a memory controller
US8209450B2 (en) Maintenance operations using configurable parameters
US20230168958A1 (en) Interface circuit, memory controller and method for calibrating signal processing devices in an interface circuit
JP5930469B2 (ja) エラー検出に応答するためのシステム及び方法
EP2811483A2 (en) Methods and apparatus for error rate estimation
CN113535596A (zh) 均衡调整方法、均衡调整装置及计算机可读取存储介质
TWI824191B (zh) 均衡調整的電腦程式產品及方法以及裝置
TWI712050B (zh) 均衡調整的電腦程式產品及方法以及裝置
US20230040717A1 (en) Information processing system, storage device, and calibration method
TWI645298B (zh) 降低快閃儲存介面中傳收資料錯誤方法以及使用該方法的裝置
US20120119789A1 (en) Peak Detector Extension System
JP6626049B2 (ja) 制御装置、制御方法およびプログラム
JP5510679B2 (ja) ディスクアレイ装置、ディスクアレイシステム、障害経路特定方法、及びプログラム
TW202321915A (zh) 介面電路、記憶體控制器及用以校正於記憶體控制器之介面電路內之複數訊號處理裝置之方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20180912

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191125

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201006

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201207

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210525