JP6654465B2 - 入出力制御装置、入出力制御方法、及び、入出力制御プログラム - Google Patents

入出力制御装置、入出力制御方法、及び、入出力制御プログラム Download PDF

Info

Publication number
JP6654465B2
JP6654465B2 JP2016033049A JP2016033049A JP6654465B2 JP 6654465 B2 JP6654465 B2 JP 6654465B2 JP 2016033049 A JP2016033049 A JP 2016033049A JP 2016033049 A JP2016033049 A JP 2016033049A JP 6654465 B2 JP6654465 B2 JP 6654465B2
Authority
JP
Japan
Prior art keywords
communication
card
communication processing
unit
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016033049A
Other languages
English (en)
Other versions
JP2017151688A (ja
Inventor
宏次 小林
宏次 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Platforms Ltd
Original Assignee
NEC Platforms Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2016033049A priority Critical patent/JP6654465B2/ja
Publication of JP2017151688A publication Critical patent/JP2017151688A/ja
Application granted granted Critical
Publication of JP6654465B2 publication Critical patent/JP6654465B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)
  • Debugging And Monitoring (AREA)

Description

本願発明は、入出力制御装置によって、IO(Input Output)カードとの間でデータを送受信することを制御する技術に関する。
近年、PCI Express(登録商標)インタフェースの高速化(Gen3(第3世代)の場合、8Gbps(Giga bit per second)/レーン)等、IOインタフェースの高速化が進んでいる。このような高速IOインタフェースにおいては、データを高品質に送受信することを効率的に実現する技術が期待されている。
このような技術の一例として、特許文献1には、通信ネットワークにより互いに接続されたシステムにおいて、通信経路に異常が発生した場合に、代替えの通信経路を使用することによってコネクションを継続できるようにしたシステムが開示されている。
また、特許文献2には、未使用のスロットに物理的に接続された通信リンク用の配線を、有効活用するようにしたシステムが開示されている。このシステムは、基板の上に配置されたスイッチ回路と、コネクタを有するモジュールと、を備えている。このスイッチ回路は、2つの上位側ポートと少なくとも1つの下位側ポートの間でデータ中継を行なうことを可能とする。当該コネクタは、当該スイッチ回路を含む基板上の複数の回路のいずれかに、通信リンク用の配線により接続されている。
また、特許文献3には、画像データ処理用デバイスの実装状態の相違がその出力信号の特性に与える影響を抑制するようにした装置が開示されている。この装置が備える特性調整回路は、例えばバッファアンプを有する。この特性調整回路は、バッファアンプの周辺素子の接続状態、あるいは、周辺素子の素子定数等を変化させることによって、当該特性調整回路から出力される信号伝送線に対する出力特性を調整する。
また、特許文献4には、ケーブルの特性が変わってしまった場合でも、適切な値を設定する装置が開示されている。この装置は、シリアルデータとパラレルデータとを相互変換する機能を備える通信回路を用いて付加装置と接続するケーブルの種類毎に定められたケーブル特性値を予め記憶する。この装置は、当該付加装置と行う通信を最適状態に設定する通信パラメータ値をケーブル特性値と関連付けて記憶する。この装置は、付加装置と接続するケーブルのケーブル特性値から決定する通信パラメータ値を、当該通信回路に設定する。
特開平07-240756号公報 特開2010-79383号公報 特開2011-61641号公報 特開2015-156576号公報
PCI Express インタフェース等のIOインタフェースでは、リンクトレーニング(リンクテスト)中に、データの送受信に関する入出力特性を調整することによって、データを送受信する環境を最適化している。しかしながら、IOカードごとの特性のばらつきによって、コレクタブルエラー(以降、エラーと称する)が多発する場合がある。このような場合、情報処理装置において、エラーが発生したIOカードを実装するスロットを、例えば別のスロットに変更することによって、エラーの発生が改善されることが多い。すなわちこの場合、発生したエラーは、当該IOカードの固定故障に起因するのではなく、当該IOカードが有する特性と情報処理装置におけるIOカードを実装する環境(実装環境)との関係に起因すると考えられる。このような実装環境としては、例えば、情報処理装置においてIOコントローラとIOカードとを接続する通信経路が有する信号の伝送特性(例えば当該通信経路の長さ等)、あるいは、情報処理装置内の温度等が考えられる。
このように、個々のIOカードが有する特性と、実装環境との関係によって、IOインタフェースにおけるエラーが多発することがあるので、このようなエラーが発生することを回避することが課題である。特許文献1乃至4は、この課題について言及していない。本願発明の主たる目的は、この問題を解決した入出力制御装置等を提供することである。
本願発明の一態様に係る入出力制御装置は、IOカードを介して外部装置との通信処理を実行する通信処理実行手段と前記IOカードとを、互いに信号の伝送特性が異なる複数の通信経路の何れかを、前記通信経路が確立される際に外部からの指示により選択することによって通信可能に接続するIOカード接続手段と、前記複数の通信経路の何れかによって前記通信処理実行手段と前記IOカードとが接続されているときに、前記通信処理におけるエラーの発生状況を取得して、前記発生状況が所定の条件を満たすか否かを判定する判定手段と、前記通信経路ごとに、前記判定手段による判定実績を表す状態管理情報を記憶する記憶手段と、前記記憶手段に記憶された前記状態管理情報に基づいて、前記所定の条件を満たす前記通信処理におけるエラーが発生していない前記通信経路を選択するように前記IOカード接続手段を制御する制御手段と、を備える。
上記目的を達成する他の見地において、本願発明の一態様に係る入出力制御方法は、情報処理装置によって、IOカードを介して外部装置との通信処理を実行する通信処理実行手段と前記IOカードとを、互いに信号の伝送特性が異なる複数の通信経路の何れかを、前記通信経路が確立される際に選択することによって通信可能に接続し、前記複数の通信経路の何れかによって前記通信処理実行手段と前記IOカードとが接続されているときに、前記通信処理におけるエラーの発生状況を取得して、前記発生状況が所定の条件を満たすか否かを判定し、前記通信経路ごとに、前記発生状況に関する判定実績を表す状態管理情報を記憶手段に記憶し、前記記憶手段に記憶された前記状態管理情報に基づいて、前記所定の条件を満たす前記通信処理におけるエラーが発生していない前記通信経路を、前記通信経路が確立される際に選択する。
また、上記目的を達成する更なる見地において、本願発明の一態様に係る入出力制御プログラムは、IOカードを介して外部装置との通信処理を実行する通信処理実行手段と前記IOカードとを、互いに信号の伝送特性が異なる複数の通信経路の何れかを、前記通信経路が確立される際に外部からの指示により選択することによって通信可能に接続するIOカード接続処理と、前記複数の通信経路の何れかによって前記通信処理実行手段と前記IOカードとが接続されているときに、前記通信処理におけるエラーの発生状況を取得して、前記発生状況が所定の条件を満たすか否かを判定する判定処理と、前記通信経路ごとに、前記判定処理による判定実績を表す状態管理情報を記憶手段に記憶する記憶処理と、前記記憶手段に記憶された前記状態管理情報に基づいて、前記所定の条件を満たす前記通信処理におけるエラーが発生していない前記通信経路を選択するように前記IOカード接続処理を制御する制御処理と、をコンピュータに実行させるためのプログラムである。
更に、本願発明は、係る入出力制御プログラム(コンピュータプログラム)が格納された、コンピュータ読み取り可能な、不揮発性の記録媒体によっても実現可能である。
本願発明は、IOカードが有する特性と、当該IOカードを実装する環境との関係に起因して、データを送受信する際に発生するエラーを回避することを可能とする。
本願発明の第1の実施形態に係る入出力制御装置10の構成を示すブロック図である。 本願発明の第1の実施形態に係る判定部13の構成を示すブロック図である。 本願発明の第1の実施形態に係る状態管理テーブル140−0の構成を例示する図である。 本願発明の第1の実施形態に係る送受信プリセットレジスタ141に設定する値を例示する図である。 本願発明の第1の実施形態に係る入出力制御装置10の動作を示すフローチャート(1/4)である。 本願発明の第1の実施形態に係る入出力制御装置10の動作を示すフローチャート(2/4)である。 本願発明の第1の実施形態に係る入出力制御装置10の動作を示すフローチャート(3/4)である。 本願発明の第1の実施形態に係る入出力制御装置10の動作を示すフローチャート(4/4)である。 本願発明の第2の実施形態に係る入出力制御装置30の構成を示すブロック図である。 本願発明の各実施形態に係る入出力制御装置を実行可能な情報処理装置の構成を示すブロック図である。
以下、本願発明の実施の形態について図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本願発明の第1の実施の形態に係る入出力制御装置10を概念的に示すブロック図である。入出力制御装置10は、例えば、サーバ装置等のホスト装置(情報処理装置)に搭載された、IOカード20との間で送受信するデータを処理するIOコントローラである。IOカード20は、例えば、PCI Expressカードであり、ストレージ装置等の周辺装置(不図示)を当該ホスト装置に接続する。IOカード20は、PCI Expressとは異なる仕様のIOインタフェースを制御するデバイスであってもよい。
入出力制御装置10は、大別して、通信処理実行部11、IOカード接続部12、判定部13、記憶部14、制御部15、タイマー部16、及び、温度センサ17を備えている。
通信処理実行部11は、専用リクエスト発行部110、リクエスト切り替え部111、トランザクション層処理部112、データリンク層処理部113、及び、物理層処理部114を備えている。
専用リクエスト発行部110は、入出力制御装置10がIOカード20との間のリンク状態を診断する際に動作する。専用リクエスト発行部110は、この際、入出力制御装置10とIOカード20との間において行われるデータの送受信を高負荷な状態にするように、発行元を自装置とした専用リクエスト(診断用のリクエスト)を連続して発行する。この専用リクエストに対する自装置宛のリプライは、通信処理実行部11によって刈り取られる(処理される)。
この専用リクエストの発行を継続する時間は、タイマー部16に備えられた専用リクエストタイマー161に設定されている。専用リクエストタイマー161は、専用リクエスト発行部110が専用リクエストを発行し始めてからの経過時間を計時する。専用リクエスト発行部110は、その経過時間がタイムアウト時間に達したときに、専用リクエストの発行を終了する。
リクエスト切り替え部111は、入出力制御装置10を搭載するホスト装置によって発行された通常リクエストと、専用リクエスト発行部110によって発行された専用リクエストとを、外部からの指示を受けることによって、切り替えて出力する。すなわち、リクエスト切り替え部111は、入出力制御装置10がIOカード20との間のリンク状態を診断するときは専用リクエストを出力し、それ以外のときは通常リクエストを出力する。
トランザクション層処理部112、データリンク層処理部113、及び、物理層処理部114は、順に、PCI Express規格において規定されている、トランザクションレイヤ、データリンクレイヤ、及び、フィジカルレイヤにおける通信処理を行う。物理層処理部114は、リンクトレーニングに関する処理を行う。尚、これらレイヤの仕様については、一般的に知られているので、その詳細の説明は省略する。
IOカード接続部12は、ポート選択部120及び121と、ポート選択部120とポート選択部121とを接続する2つのポート(通信経路)とを備えている。ポート選択部120は、通信処理実行部110と接続され、ポート選択部121は、IOカード20と接続されている。ポート選択部120及び121は、外部からの指示によって、通信処理実行部110とIOカード20との間の通信経路として、2つのポート0及び1の何れかを選択する。ポート0及び1は、互いに信号の伝送特性が異なる通信経路であり、本実施形態では、その長さが異なるとする。本実施形態では、例えば、ポート0の長さは、PCI Express規格により規定される最長及び最短の線長の平均値よりも短くし、ポート1の長さは、当該平均値よりも長くすることとする。
なお、ポート0及び1は、例えば、ポートを形成するプリント基板上のパターン線あるいはケーブルの太さ、あるいは、ポートを形成する材質等が異なることによって、互いに信号の伝送特性が異なるようにしてもよい。また、IOカード接続部12が備えるポートの数は2つに限定されず、IOカード接続部12は、互いに信号の伝送特性が異なる3つ以上のポートを備えてもよい。
判定部13は、通信処理実行部11によって検出された、IOカード20との間の通信処理において発生したエラーの発生状況が、所定の条件を満たすか否かを判定する。図2は、本実施形態に係る判定部13の構成を例示するブロック図である。図2に示す通り、判定部13は、送信エラーカウンタ131、受信エラーカウンタ132、エラー閾値格納部133、比較回路134及び135、及びOR(論理和)回路136と、を備えている。
本実施形態では、IOカード20との間の通信処理において発生した送信エラーは、トランザクション層処理部112によって検出される。したがって、送信エラーカウンタ131は、トランザクション層処理部112から出力された、送信エラーを通知する信号を受信するごとに、カウントアップすることによって、送信エラーの発生回数を記憶する。
本実施形態では、IOカード20との間の通信処理において発生した受信エラーは、トランザクション層処理部112と、データリンク層処理部113と、物理層処理部114とによって検出される。トランザクション層処理部112、データリンク層処理部113、及び、物理層処理部114からそれぞれ出力された受信エラーを通知する信号は、図1に示すOR回路130を介して、受信エラーカウンタ132に入力される。したがって、受信エラーカウンタ132は、OR回路130から出力された、受信エラーを通知する信号を受信するごとに、カウントアップすることによって、受信エラーの発生回数を記憶する。
エラー閾値格納部133には、判定部13がIOカード20との間の通信処理において発生したエラーの発生状況が所定の条件を満たすか否かを判定する際の基準となる、エラーの発生回数に関するエラー閾値が記憶されている。このエラー閾値は、例えば、入出力制御装置10を管理する管理者等によって決められた値である。エラー閾値格納部133は、送信エラー及び受信エラーに関して、互いに異なるエラー閾値を記憶してもよい。
比較回路134は、送信エラーカウンタ131から出力された値と、エラー閾値格納部133に記憶されたエラー閾値とを比較して、これらの値が等しくなったことを示す信号を出力する。比較回路135は、受信エラーカウンタ132から出力された値と、エラー閾値格納部133に記憶されたエラー閾値とを比較して、これらの値が等しくなったことを示す信号を出力する。OR回路136は、比較回路134及び135から出力された信号の論理和を、制御部15に入力する。
判定部13は、所定の時間ごとに、送信エラーカウンタ131及び受信エラーカウンタ132の値をリセットする。この所定の時間は、図1に示すタイマー部16に備えられたエラーカウンタタイマー162によって計時される。すなわち、本実施形態に係る判定部13は、この所定の時間内に発生した送信エラー及び受信エラーの回数が、エラー閾値に達したか否かを判定する。
判定部13は、また、入出力制御装置10によるリンクアップ(入出力制御装置10とIOカード20との間で接続経路が確立される)が行われる際に、タイムアウトが発生したか否かを判定する。このタイムアウトを判定する際の基準となるタイムアウト時間は、タイマー部16に備えられたリンクチェックタイマー160に設定されている。リンクチェックタイマー160は、リンクトレーニング開始からの経過時間を計時し、その経過時間がタイムアウト時間に達したときに、タイムアウト時間に達したことを判定部13に通知する。判定部13は、経過時間がタイムアウト時間に達したときにリンクアップが完了していない場合、入出力制御装置10とIOカード20との間でリンクエラーが発生したと判定する。
温度センサ(温度測定手段)17は、入出力制御装置10における適切な場所に設置され、入出力制御装置の温度を測定する。温度センサ17は、その測定結果を、随時、制御部15へ通知する。
記憶部14は、電子メモリあるいは磁気ディクス等の記憶デバイスである。記憶部14は、状態管理テーブル140−0及び140−1、送受信プリセットレジスタ141、診断指示フラグ142、専用リクエスト有効フラグ143、リトレーニング指示フラグ144、及び、ポート選択フラグ145を記憶している。記憶部14に記憶されたこれらのデータ(情報)は、制御部15によって更新される。
診断指示フラグ142は、入出力制御装置10を搭載するホスト装置が立ち上がる際に当該ホスト装置から発行された、診断実行指示を示す1ビットのフラグである。診断指示フラグ142は、「1」が設定されたときに、入出力制御装置10が自装置を診断する処理を開始することを表す。
専用リクエスト有効フラグ143は、専用リクエスト発行部110に対して、専用リクエストの発行を指示する1ビットのフラグである。専用リクエスト有効フラグ143は、「1」が設定されたときに、専用リクエスト発行部110が専用リクエストの発行を開始することを表す。専用リクエスト有効フラグ143が示す値は、リクエスト切り替え部111へ入力される。専用リクエスト有効フラグ143は、「1」が設定されている場合に、リクエスト切り替え部111が専用リクエストを出力することを表す。
リトレーニング指示フラグ144は、物理層処理部114に対して、リンクのリトレーニングの実行を指示する1ビットのフラグである。リトレーニング指示フラグ144は、入出力制御装置10が自装置を診断中に、IOカード接続部12によるポートの切り替えが行われた場合、あるいは、送受信プリセットレジスタ141が更新された場合に、制御部15によって「1」から「0」に設定される。
ポート選択フラグ145は、ポート選択部120及び121に対して、通信処理実行部11とIOカード20とを接続するポートの選択を指示する1ビットのフラグである。ポート選択フラグ145は、「0」が設定されている場合に、ポート選択部120及び121がポート0を選択し、「1」が設定されている場合に、ポート選択部120及び121がポート1を選択することを表す。
状態管理テーブル140−0及び140−1は、順に、ポート0及び1について、判定部13によるエラーの発生状況に関する判定実績を管理するテーブルである。図3は、本実施形態に係る状態管理テーブル140−0の構成を例示する図である。尚、状態管理テーブル140−1の構成も、状態管理テーブル140−0と同様である。
図3に例示する通り、状態管理テーブル140−0は、エントリ番号140−0−1、送信側プリセット値140−0−2、受信側プリセット値140−0−3、ステータス情報140−0−4、及び、運用中フラグ140−0−5という項目を含む複数(9個)のエントリによって構成されている。尚、状態管理テーブル140−0が含むエントリの数は9個に限定されない。また、これらのエントリは、図3に示す項目以外の情報を含んでもよい。
エントリ番号140−0−1は、エントリを識別可能な識別子である。送信側プリセット値140−0−2及び受信側プリセット値140−0−3は、PCI Express規格において規定されている、リンクトレーニング時において通信処理実行部11に対して入出力特性を調整する際に使用される値(設定情報)を示す。この入出力特性を調整する際に使用される値は、記憶部14における送受信プリセットレジスタ141に記憶されている。通信処理実行部11における物理層処理部114は、リンクトレーニングを行う際に、送受信プリセットレジスタ141に記憶された値を読み込むことによって、当該入出力特性を調整する。
図4は、本実施形態に係る送受信プリセットレジスタ141に設定する値を例示する図である。図4に例示する通り、送受信プリセットレジスタ141は、送信プリセットレジスタ141−1、及び、受信プリセットレジスタ141−2を含んでいる。送信プリセットレジスタ141−1は、送信プリセット値一覧表1411に示す、通信処理実行部11の送信機能に関する特性(送信レベル)を調整する値を記憶する4ビットのレジスタである。受信プリセットレジスタ141−2は、受信プリセット値一覧表1412に示す、通信処理実行部11の受信機能に関する特性(受信レベル)を調整する値を記憶する3ビットのレジスタである。
図3に示す送信側プリセット値140−0−2として設定される推奨値は、図4における送信プリセット値一覧表1411が示す、4ビットの送信プリセット値の何れかである。例えば、この送信側の推奨値を「−4.5db(デシベル)」とする場合、送信側プリセット値140−0−2として設定される推奨値は、「0010」となるので、図3に示すエントリ1、4、5における送信側プリセット値140−0−2は、「0010」となる。
この場合、「推奨値−1」が格納されるエントリ3、8、9における送信側プリセット値140−0−2は「0001」(−3.5db)となる。同様に、「推奨値+1」が格納されるエントリ2、6、7における送信側プリセット値140−0−2は「0011」(−2.5db)となる。
図3に示す受信側プリセット値140−0−3として設定される推奨値は、図4における受信プリセット値一覧表1412が示す、3ビットの送信プリセット値の何れかである。例えば、この受信側の推奨値を「−8db」とする場合、受信側プリセット値140−0−3として設定される推奨値は、「010」となるので、図3に示すエントリ1、2、3における受信側プリセット値140−0−3は、「010」となる。この場合、「推奨値−1」が格納されるエントリ5、7、9における受信側プリセット値140−0−3は「001」(−7db)となり、「推奨値+1」が格納されるエントリ4、6、8における受信側プリセット値140−0−3は「011」(−9db)となる。
図3に示すステータス情報140−0−4は、温度センサ17によって測定された温度ごとの判定部13による判定実績を示す2ビットの情報である。ステータス情報140−0−4において、「00」は、判定部13による判定実績がないことを示す。「01」は、入出力制御装置10による診断動作中に、所定の条件を満たすエラーが発生せず、正常動作可能であることを示す。「10」は、診断動作中あるいは通常運用中に、所定の条件を満たすエラーが発生したことを示す。例えば、図3に示す例の場合、エントリ番号が「1」であるレコードは、「通信処理実行部11とIOカード20とがポート0により接続され、送信側及び受信側のプリセット値がいずれも推奨値に設定された状態において、入出力制御装置10の温度が20〜30℃の場合に正常動作可能であり、それ以外の温度については、判定部13による判定実績がない」ことを示している。
図3に示す運用中フラグ140−0−5は、入出力制御装置10の現在の運用状態を示す1ビットの情報である、例えば、図3に示す例の場合、入出力制御装置10は、現在、状態管理テーブル140−0におけるエントリ番号が「1」であるレコードが示す状態で運用されていることを示している。すなわち、入出力制御装置10は、現在、通信処理実行部11とIOカード20とがポート0により接続され、送信側及び受信側のプリセット値がいずれも推奨値に設定されている状態にある。
図1に示す制御部15は、判定部13による判定結果、及び、温度センサ17による温度測定結果に基づいて、記憶部14に記憶された、状態管理テーブル140−0及び140−1等のデータを更新する。
制御部15は、入出力制御装置10による診断動作の後、あるいは、通常運用中に判定部13が所定の条件を満たすエラーが発生したと判定した後、状態管理テーブル140−0及び140−1、及び、温度センサ17による温度測定結果に基づいて、入出力制御装置10の運用状態を、正常動作可能な状態に変更する。
制御部15は、この際、記憶部14に記憶されたポート選択フラグ145を更新することによって、正常動作可能なポートを選択するように、IOカード接続部12を制御する。制御部15は、この際、記憶部14に記憶された送受信プリセットレジスタ141を更新することによって、通信処理実行部11が正常動作可能に入出力特性を調整するように制御する。
次に図5A乃至5Dのフローチャートを参照して、本実施形態に係る入出力制御装置10の動作(処理)について詳細に説明する。
制御部15は、診断指示フラグ142の値を確認する(ステップS101)。診断指示フラグ142の値が「1」でない場合(ステップS102でNo)、判定部13は、エラー発生回数が閾値以上か否か確認する(ステップS103)。エラー発生回数が閾値以上でない場合(ステップS104でNo)、処理はステップS101へ戻る。エラー発生回数が閾値以上である場合(ステップS104でYes)、処理はステップS129へ進む。
制御部15は、温度センサ17が示す温度Tを確認する(ステップS129)。制御部15は、運用中のポートに関する状態管理テーブルにおける温度Tに関する、運用中フラグが「1」であるエントリのステータス情報の値を「10」に設定し、当該運用中フラグを「0」に設定する(ステップS130)。
判定部13は、発生回数が閾値以上となったエラーが送信側か受信側かを確認する(ステップS131)。当該エラーが送信側でない(すなわち、受信側である)場合(ステップS132でNo)、制御部15は、運用中のポートに関する状態管理テーブルにおける温度Tに関する、エラーのエントリと受信側プリセット値が等しいエントリのステータス情報の値を「10」に設定し(ステップS133)、処理はステップS135へ進む。当該エラーが送信側である場合(ステップS132でYes)、制御部15は、運用中のポートに関する状態管理テーブルにおける温度Tに関する、エラーのエントリと送信側プリセット値が等しいエントリのステータス情報の値を「10」に設定する(ステップS134)。
制御部15は、状態管理テーブル140−0及び140−1における温度Tに関する全てのエントリのステータス情報の値を確認する(ステップS135)。ステータス情報の値が「10」でないエントリが存在する場合(ステップS136でNo)、処理はステップS138へ進む。全てのエントリのステータス情報の値が「10」である場合(ステップS136でYes)、制御部15は、IOカード20の交換を指示する情報を出力するとともに、状態管理テーブル140−0及び140−1における温度Tに関する全てのエントリのステータス情報の値を「00」に設定する(ステップS137)。制御部15は、リトレーニングフラグ144を「1」から「0」に設定するとともに、ポート選択フラグ145の値を「0」に設定し(ステップS138)、処理は、ステップS106へ戻る。
診断指示フラグ142の値が「1」である場合(ステップS102でYes)、制御部15は、温度センサ17が示す温度Tを確認する(ステップS105)。制御部15は、処理において使用する変数X(ポート番号)を0に、変数Y(エントリ番号)を「1」に初期化する(ステップS106)。
Yが「10」でない場合(ステップS107でNo)、制御部15は、状態管理テーブル140−Xにおける温度Tに関するエントリYのステータス情報140−X−4の値が「10」であるか否か確認する(ステップS110)。エントリYのステータス情報140−X−4の値が「10」である場合(ステップS111でYes)、制御部15は、Yに1を加算して(ステップS112)、処理はステップS107へ戻る。エントリYのステータス情報140−X−4の値が「10」でない場合(ステップS111でNo)、制御部15は、当該エントリYの送信側及び受信側のプリセット値を送受信プリセットレジスタ141に設定するとともに、リトレーニングフラグ144を「1」から「0」に設定する(ステップS113)。
判定部13は、送信エラーカウンタ131及び受信エラーカウンタ132をリセットする(ステップS114)。通信処理実行部11は、リンクアップを開始する(ステップS115)。判定部13は、リンクアップが完了したか確認する(ステップS116)。リンクアップが完了していない場合(ステップS117でNo)、判定部13は、リンクチェックタイマー160がタイムアウトしたか確認する(ステップS118)。リンクチェックタイマー160がタイムアウトしていない場合(ステップS119でNo)、処理はステップS116へ戻る。リンクチェックタイマー160がタイムアウトした場合(ステップS119でYes)、制御部15は、状態管理テーブル140−Xにおける温度Tに関するエントリYのステータス情報140−X−4の値を「10」に設定し(ステップS120)、処理はステップS112へ戻る。
リンクアップが完了した場合(ステップS117でYes)、制御部15は、専用リクエスト有効フラグ143を「1」に設定する(ステップS121)。通信処理実行部11は、専用リクエストの送信処理及びそのリプライの受信処理を開始する(ステップS122)。判定部13は、エラー発生回数が閾値以上か確認する(ステップS123)。エラー発生回数が閾値以上である場合(ステップS124でYes)、制御部15は、専用リクエスト有効フラグ143を「0」に設定するとともに、状態管理テーブル140−Xにおける温度Tに関するエントリYのステータス情報140−X−4の値を「10」に設定し(ステップS125)、処理はステップS112へ戻る。
エラー発生回数が閾値以上でない場合(ステップS124でNo)、判定部13は、リンクチェックタイマー160がタイムアウトしたか確認する(ステップS126)。リンクチェックタイマー160がタイムアウトしていない場合(ステップS127でNo)、処理はステップS123へ戻る。リンクチェックタイマー160がタイムアウトした場合(ステップS127でYes)、制御部15は、専用リクエスト有効フラグ143を「0」に設定するとともに、状態管理テーブル140−Xにおける温度Tに関するエントリYのステータス情報140−X−4の値を「01」に設定し(ステップS128)、処理はステップS112へ戻る。
Yが「10」である場合(ステップS107でYes)、処理はステップS108へ進む。Xが「0」である場合(ステップS108でYes)、制御部15は、Xを「1」に、Yを「1」に設定し、リトレーニングフラグ144を「1」から「0」に設定し、ポート選択フラグ145を「1」に設定して(ステップS109)、処理はステップS107へ戻る。
Xが「0」でない(すなわち「1」である)場合(ステップS108でNo)、制御部15は、状態管理テーブル140−0及び140−1における温度Tに関する全てのエントリのステータス情報の値を確認する(ステップS139)。全てのエントリのステータス情報の値が「10」である場合(ステップS140でYes)、制御部15は、システム停止を指示する情報を出力して(ステップS141)、全体の処理は終了する。
ステータス情報の値が「10」でないエントリが存在する場合(ステップS140でNo)、制御部15は、温度Tに関して、ステータス情報が「01」であるエントリが、状態管理テーブル140−0及び140−1のうち、どちらが多いか確認する(ステップS142)
状態管理テーブル140−0の方が多い場合(ステップS143でYes)、制御部15は、状態管理テーブル140−0における温度Tに関して、ステータス情報が「01」であるいずれかのエントリの運用中フラグを「1」に設定する。制御部15は、当該エントリの送信側/受信側プリセット値を送受信プリセットレジスタ141に設定する。制御部15は、リトレーニングフラグ144を「1」から「0」に設定する。制御部15は、ポート選択フラグ145を「1」から「0」に設定し(ステップS144)、全体の処理は終了する。
状態管理テーブル140−1の方が多い場合(ステップS143でNo)、制御部15は、状態管理テーブル140−1における温度Tに関して、ステータス情報が「01」であるいずれかのエントリの運用中フラグを「1」に設定する。制御部15は、当該エントリの送信側/受信側プリセット値を送受信プリセットレジスタ141に設定する。制御部15は、リトレーニングフラグ144を「1」から「0」に設定し(ステップS145)、全体の処理は終了する。
本実施形態に係る入出力制御装置10は、IOカードが有する特性と、当該IOカードを実装する環境との関係に起因して、データを送受信する際に発生するエラーを回避することができる。その理由は、互いに信号の伝送特性(線長)が異なる2つのポートの何れかを選択可能なIOカード接続部12に対して、制御部15は、判定部13によるエラーの判定実績に基づいて、正常動作可能なポートを選択するように制御するからである。
以下に、本実施形態に係る入出力制御装置10によって実現される効果について、詳細に説明する。
PCI Express インタフェース等のIOインタフェースでは、リンクトレーニング中に、データの送受信に関する入出力特性を調整することによって、データを送受信する環境を最適化している。しかしながら、IOカードごとの特性のばらつきによって、エラーが多発する場合がある。このような場合、発生したエラーは、当該IOカードの固定故障に起因するのではなく、当該IOカードが有する特性と情報処理装置におけるIOカードを実装する実装環境との関係に起因することが多い。このような、個々のIOカードが有する特性と、実装環境との関係によって、IOインタフェースにおけるエラーが発生することを回避することが課題である。
これに対して、本実施形態に係る入出力制御装置10では、IOカード接続部12は、IOカード20を介して外部装置との通信処理を実行する通信処理実行部11とIOカード20とを、互いに信号の伝送特性(例えば線長)が異なる複数(例えば2つ)の通信経路(例えばポート)の何れかを、通信経路が確立される際に外部からの指示により選択することによって通信可能に接続する。判定部13は、複数の通信経路の何れかによって通信処理実行部11とIOカード20とが接続されているときに、通信処理におけるエラーの発生状況を取得して、その発生状況が所定の条件を満たすか否かを判定する。記憶部14は、通信経路ごとに、判定部13による判定実績を表す状態管理テーブル140−0及び140−1を記憶する。制御部15は、記憶部14に記憶された状態管理テーブル140−0及び140−1に基づいて、所定の条件を満たす通信処理におけるエラーが発生していない通信経路を選択するようにIOカード接続部12を制御する。これにより、本実施形態に係る入出力制御装置10は、IOカードが有する特性と、当該IOカードを実装する環境との関係に起因して、データを送受信する際に発生するエラーを回避することができる。
また、本実施形態に係る入出力制御装置10では、記憶部14は、入出力制御装置10の温度ごとに、判定部13による判定実績と、通信処理実行部11に対して入出力特性を調整する際に使用されるプリセット値とを関連付けた状態管理テーブル140−0及び140−1を記憶する。そして、制御部15は、この状態管理テーブル140−0及び140−1に基づいて、入出力制御装置10の温度をふまえて、通信処理実行部11が正常動作可能に入出力特性を調整するように制御する。これにより、本実施形態に係る入出力制御装置10は、データを送受信する際に発生するエラーを回避することを実現する環境設定を、より柔軟に行うことができる。
また、本実施形態に係る入出力制御装置10は、状態管理テーブル140−0及び140−1において、通信処理実行部11に対して入出力特性を調整する際に使用されるプリセット値を、送信機能と受信機能とに分けて管理する。これにより、本実施形態に係る入出力制御装置10は、データを送受信する際に発生するエラーを回避することを実現する環境設定を、さらに柔軟に行うことができる。
また、本実施形態に係る入出力制御装置10は、自装置を診断する際に、通信経路と入出力特性を調整する際に使用されるプリセット値との全ての組み合わせのうち、判定部13によってエラーが発生したと判定された実績が無い組み合わせについて、網羅的に診断を行う。これにより、本実施形態に係る入出力制御装置10は、データを送受信する際に発生するエラーを回避することを実現する環境設定を、より確実に、かつ、効率的に行うことができる。
<第2の実施形態>
図6は、第2の実施形態に係る入出力制御装置30の構成を概念的に示すブロック図である。
本実施形態に係る入出力制御装置30は、IOカード接続部32、判定部33、記憶部34、及び、制御部35を備えている。
IOカード接続部32は、IOカード40を介して外部装置(不図示)との通信処理を実行する通信処理実行部31とIOカード40とを、互いに信号の伝送特性が異なる複数の通信経路320−1乃至320−n(nは2以上の任意の整数)の何れかを、通信経路が確立される際に外部からの指示により選択することによって通信可能に接続する。
判定部33は、複数の通信経路320−1乃至320−nの何れかによって通信処理実行部31とIOカード40とが接続されているときに、その通信処理におけるエラーの発生状況を取得して、当該発生状況が所定の条件を満たすか否かを判定する。
記憶部34は、通信経路ごとに、判定部33による判定実績を表す状態管理情報340−1乃至340−nを記憶する。
制御部35は、記憶部34に記憶された状態管理情報340−1乃至340−nに基づいて、所定の条件を満たす通信処理におけるエラーが発生していない通信経路を選択するようにIOカード接続部32を制御する。
本実施形態に係る入出力制御装置30は、IOカードが有する特性と、当該IOカードを実装する環境との関係に起因して、データを送受信する際に発生するエラーを回避することができる。その理由は、互いに信号の伝送特性が異なる複数の通信経路の何れかを選択可能なIOカード接続部32に対して、制御部35は、判定部33によるエラーの判定実績に基づいて、正常動作可能な通信経路を選択するように制御するからである。
<ハードウェア構成例>
上述した各実施形態において図1、及び、図6に示した入出力制御装置における各部は、専用のHW(HardWare)(電子回路)によって実現することができる。また、図1及び図6において、少なくとも、下記構成は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。
・IOカード接続部12及び32における接続制御機能、
・判定部13及び33、
・記憶部14及び34における記憶制御機能、
・制御部15及び35。
但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図7を参照して説明する。
図7は、本願発明の各実施形態に係る入出力制御装置を実行可能な情報処理装置900(コンピュータ)の構成を例示的に説明する図である。即ち、図7は、図1及び図6に示した入出力制御装置を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
図7に示した情報処理装置900は、構成要素として下記を備えている。
・CPU(Central_Processing_Unit)901、
・ROM(Read_Only_Memory)902、
・RAM(Random_Access_Memory)903、
・ハードディスク(記憶装置)904、
・外部装置との通信インタフェース905、
・バス906(通信線)、
・CD−ROM(Compact_Disc_Read_Only_Memory)等の記録媒体907に格納されたデータを読み書き可能なリーダライタ908、
・入出力インタフェース909。
即ち、上記構成要素を備える情報処理装置900は、これらの構成がバス906を介して接続された一般的なコンピュータである。情報処理装置900は、CPU901を複数備える場合もあれば、マルチコアにより構成されたCPU901を備える場合もある。
そして、上述した実施形態を例に説明した本願発明は、図7に示した情報処理装置900に対して、次の機能を実現可能なコンピュータプログラムを供給する。その機能とは、その実施形態の説明において参照したブロック構成図(図1及び図6)における上述した構成、或いはフローチャート(図5A乃至5D)の機能である。本願発明は、その後、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性のメモリ(RAM903)またはハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、現在では一般的な手順を採用することができる。その手順としては、例えば、CD−ROM等の各種記録媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等がある。そして、このような場合において、本願発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記録媒体907によって構成されると捉えることができる。
以上、上述した実施形態を模範的な例として本願発明を説明した。しかしながら、本願発明は、上述した実施形態には限定されない。即ち、本願発明は、本願発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
10 入出力制御装置
11 通信処理実行部
110 専用リクエスト発行部
111 リクエスト切り替え部
112 トランザクション層処理部
113 データリンク層処理部
114 物理層処理部
12 IOカード接続部
120及び121 ポート選択部
13 判定部
130 OR回路
131 送信エラーカウンタ
132 受信エラーカウンタ
133 エラー閾値格納部
134 比較回路
135 比較回路
136 OR回路
14 記憶部
140−0及び140−1 状態管理テーブル
140−0−1 エントリ番号
140−0−2 送信側プリセット値
140−0−3 受信側プリセット値
140−0−4 ステータス情報
140−0−5 運用中フラグ
141 送受信プリセットレジスタ
141−1 送信プリセットレジスタ
141−2 受信プリセットレジスタ
1411 送信プリセット値一覧表
1412 受信プリセット値一覧表
142 診断指示フラグ
143 専用リクエスト有効フラグ
144 リトレーニング指示フラグ
145 ポート選択フラグ
15 制御部
16 タイマー部
160 リンクチェックタイマー
161 専用リクエストタイマー
162 エラーカウンタタイマー
17 温度センサ
20 IOカード
30 入出力制御装置
31 通信処理実行部
32 IOカード接続部
33 判定部
34 記憶部
340−1乃至340−n 状態管理情報
40 IOカード
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 ハードディスク(記憶装置)
905 通信インタフェース
906 バス
907 記録媒体
908 リーダライタ
909 入出力インタフェース

Claims (10)

  1. IOカードを介して外部装置との通信処理を実行する通信処理実行手段と前記IOカードとを、互いに信号の伝送特性が異なる複数の通信経路の何れかを、前記通信経路が確立される際に外部からの指示により選択することによって通信可能に接続するIOカード接続手段と、
    前記複数の通信経路の何れかによって前記通信処理実行手段と前記IOカードとが接続されているときに、前記通信処理におけるエラーの発生状況を取得して、前記発生状況が所定の条件を満たすか否かを判定する判定手段と、
    前記通信経路ごとに、前記判定手段による判定実績を表す状態管理情報を記憶する記憶手段と、
    前記記憶手段に記憶された前記状態管理情報に基づいて、前記通信処理におけるエラーの発生状況が前記所定の条件を満たすことが発生していない前記通信経路を選択するように前記IOカード接続手段を制御する制御手段と、
    を備える入出力制御装置。
  2. 前記IOカード接続手段は、互いに長さが異なる前記複数の通信経路の何れかを選択する、
    請求項1に記載の入出力制御装置。
  3. 前記判定手段は、前記通信処理に関する動作環境を示す設定情報が前記通信処理実行手段に対して設定されている場合に、前記発生状況が所定の条件を満たすか否かを判定し、
    前記記憶手段は、前記設定情報の内容と、前記判定実績とを関連付けた前記状態管理情報を記憶し、
    前記制御手段は、前記通信処理におけるエラーの発生状況が前記所定の条件を満たすことが発生していない前記設定情報を、前記通信経路が確立される際に、前記通信処理実行手段に設定する、
    請求項1または2に記載の入出力制御装置。
  4. 自装置内の温度を測定する温度測定手段をさらに備え、
    前記記憶手段は、前記判定手段が前記発生状況が所定の条件を満たすか否かを判定したときの、前記温度測定手段による温度測定結果と、前記判定実績とを関連付けた前記状態管理情報を記憶し、
    前記制御手段は、前記通信経路が確立される際に温度測定手段によって測定された温度において、前記通信処理におけるエラーの発生状況が前記所定の条件を満たすことが発生していない前記通信経路を選択するように前記IOカード接続手段を制御する、
    請求項3に記載の入出力制御装置。
  5. 前記制御手段は、前記通信経路が確立される際に温度測定手段によって測定された温度において、前記通信処理におけるエラーの発生状況が前記所定の条件を満たすことが発生していない前記設定情報を、前記通信経路が確立される際に、前記通信処理実行手段に設定する、
    請求項4に記載の入出力制御装置。
  6. 前記制御手段は、前記判定手段が前記所定の条件を満たす前記通信処理におけるエラーが発生したと判定した場合に、前記IOカード接続手段に対して前記通信経路を順次変更するように制御するとともに、前記IOカードに内容が異なる前記設定情報を順次設定することによって、前記通信経路と前記設定情報の内容との組み合わせごとに、前記通信処理実行手段に前記通信処理を行うように制御し、
    前記記憶手段は、前記通信経路と前記設定情報の内容との組み合わせごとに、前記判定手段による判定結果を、前記温度測定手段による温度測定結果と関連付けて、前記状態管理情報として記憶する、
    請求項5に記載の入出力制御装置。
  7. 前記制御手段は、前記記憶手段に記憶された前記状態管理情報において、前記通信処理におけるエラーの発生状況が前記所定の条件を満たすことが発生していない前記通信経路と前記設定情報の内容との組み合わせを選択し、選択した組み合わせについて、前記通信処理実行手段に前記通信処理を行うように制御する、
    請求項6に記載の入出力制御装置。
  8. 前記判定手段は、送信機能及び受信機能ごとに前記設定情報が設定された前記IOカードと前記通信処理実行手段とが接続されている場合に、前記送信機能及び前記受信機能ごとに前記発生状況が所定の条件を満たすか否かを判定し、
    前記記憶手段は、前記送信機能及び前記受信機能ごとに、前記設定情報と、前記判定実績と、を関連付けた前記状態管理情報を記憶する、
    請求項3乃至7のいずれか一項に記載の入出力制御装置。
  9. 情報処理装置によって、
    IOカードを介して外部装置との通信処理を実行する通信処理実行手段と前記IOカードとを、互いに信号の伝送特性が異なる複数の通信経路の何れかを、前記通信経路が確立される際に選択することによって通信可能に接続し、
    前記複数の通信経路の何れかによって前記通信処理実行手段と前記IOカードとが接続されているときに、前記通信処理におけるエラーの発生状況を取得して、前記発生状況が所定の条件を満たすか否かを判定し、
    前記通信経路ごとに、前記発生状況に関する判定実績を表す状態管理情報を記憶手段に記憶し、
    前記記憶手段に記憶された前記状態管理情報に基づいて、前記通信処理におけるエラーの発生状況が前記所定の条件を満たすことが発生していない前記通信経路を、前記通信経路が確立される際に選択する、
    入出力制御方法。
  10. IOカードを介して外部装置との通信処理を実行する通信処理実行手段と前記IOカードとを、互いに信号の伝送特性が異なる複数の通信経路の何れかを、前記通信経路が確立される際に外部からの指示により選択することによって通信可能に接続するIOカード接続処理と、
    前記複数の通信経路の何れかによって前記通信処理実行手段と前記IOカードとが接続されているときに、前記通信処理におけるエラーの発生状況を取得して、前記発生状況が所定の条件を満たすか否かを判定する判定処理と、
    前記通信経路ごとに、前記判定処理による判定実績を表す状態管理情報を記憶手段に記憶する記憶処理と、
    前記記憶手段に記憶された前記状態管理情報に基づいて、前記通信処理におけるエラーの発生状況が前記所定の条件を満たすことが発生していない前記通信経路を選択するように前記IOカード接続処理を制御する制御処理と、
    をコンピュータに実行させるための入出力制御プログラム。
JP2016033049A 2016-02-24 2016-02-24 入出力制御装置、入出力制御方法、及び、入出力制御プログラム Active JP6654465B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016033049A JP6654465B2 (ja) 2016-02-24 2016-02-24 入出力制御装置、入出力制御方法、及び、入出力制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016033049A JP6654465B2 (ja) 2016-02-24 2016-02-24 入出力制御装置、入出力制御方法、及び、入出力制御プログラム

Publications (2)

Publication Number Publication Date
JP2017151688A JP2017151688A (ja) 2017-08-31
JP6654465B2 true JP6654465B2 (ja) 2020-02-26

Family

ID=59739811

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016033049A Active JP6654465B2 (ja) 2016-02-24 2016-02-24 入出力制御装置、入出力制御方法、及び、入出力制御プログラム

Country Status (1)

Country Link
JP (1) JP6654465B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7342672B2 (ja) * 2019-12-11 2023-09-12 富士通株式会社 拡張カード設定装置、拡張カード設定方法および拡張カード設定プログラム

Also Published As

Publication number Publication date
JP2017151688A (ja) 2017-08-31

Similar Documents

Publication Publication Date Title
US8510606B2 (en) Method and apparatus for SAS speed adjustment
US8458527B2 (en) Method and apparatus for SAS speed adjustment
US7673185B2 (en) Adaptive SAS PHY configuration
US8312312B2 (en) Data storage system using multiple communication protocols
US7853831B2 (en) Methods and structure for detection and handling of catastrophic SCSI errors
US8812913B2 (en) Method and apparatus for isolating storage devices to facilitate reliable communication
US7895375B2 (en) Data transfer apparatus and data transfer method
US20040068591A1 (en) Systems and methods of multiple access paths to single ported storage devices
US7228369B2 (en) Clustered storage system and inter-cluster data communication method
WO2008051665A2 (en) Adaptive sas phy configuration
US10970178B2 (en) Generating a health condition message on a health condition detected at a server to send to a host system accessing the server
US10942835B2 (en) Processing a health condition message on a health condition to determine whether to perform a swap operation
JP6582503B2 (ja) 情報処理装置
JP6691284B2 (ja) 情報処理装置、ストレージシステムおよび通信制御プログラム
US11025518B2 (en) Communicating health status when a management console is unavailable
JP6654465B2 (ja) 入出力制御装置、入出力制御方法、及び、入出力制御プログラム
US8819484B2 (en) Dynamically reconfiguring a primary processor identity within a multi-processor socket server
US20160073315A1 (en) Information processing apparatus, storage control apparatus, and information processing method
CN116126613A (zh) 一种PCIe设备的位置检测方法、装置、电子设备及存储介质
US9246848B2 (en) Relay apparatus, storage system, and method of controlling relay apparatus
US7486083B2 (en) Managing system stability
US20180323859A1 (en) Wireless data transfer between servers
JP6942655B2 (ja) 経路制御装置、制御方法、制御プログラム及びストレージシステム
CN112346922A (zh) 服务器装置及其通讯协议方法
CN117729099A (zh) 无电子开关式主备主控卡控制通道切换方法、设备及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191010

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191219

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200130

R150 Certificate of patent or registration of utility model

Ref document number: 6654465

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150