JP2021036425A - テスト機能を持つ装置およびそのテストの方法 - Google Patents

テスト機能を持つ装置およびそのテストの方法 Download PDF

Info

Publication number
JP2021036425A
JP2021036425A JP2020138662A JP2020138662A JP2021036425A JP 2021036425 A JP2021036425 A JP 2021036425A JP 2020138662 A JP2020138662 A JP 2020138662A JP 2020138662 A JP2020138662 A JP 2020138662A JP 2021036425 A JP2021036425 A JP 2021036425A
Authority
JP
Japan
Prior art keywords
communication
communication processing
test
data
processing unit
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
JP2020138662A
Other languages
English (en)
Inventor
信秀 高品
Nobuhide Takashina
信秀 高品
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JP2021036425A publication Critical patent/JP2021036425A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】装置を停止させることなく変更後の構成のテストを行う技術を提供する。【解決手段】通信性能のテスト手段を有する装置102は、2重化された通信処理部における稼働系である第1の通信処理部300Aと、待機系の第2の通信処理部300Bとを備える。第2の通信処理部300Bは、構成変更指示を受信し、第2の通信処理部300Bに、構成変更指示に基づく通信処理回路301B〜305Bと、通信処理回路301B〜305Bの性能をテストするテスト回路400とを構成し、テスト回路400は、第1の通信処理部300Aの通信とは独立して、通信処理回路301B〜305Bの入出力処理を監視し、変更後の通信処理回路301B〜305Bの通信性能をテストする。【選択図】図4

Description

本開示は、ネットワークに接続された装置の性能をテストする技術に関し、より特定的には、2重化された装置の性能をテストする技術に関する。
近年、IoT(Internet of Things)技術の発展等により、多くの装置がインターネットに接続されている。これらの装置は、クラウドサービスまたはAI(Artificial Intelligence)等と連携することにより、ユーザーに便利なサービスを提供している。例えば、工場のラインまたは航空宇宙機器等に使用されている装置は、ネットワークに接続され、これらの装置が全体として1つのサービスを提供し得る。このようなサービスにおいて、クラウドサーバー等が各装置にアクセスし、装置の内部構成またはネットワーク構成を柔軟に変更できる仕組みが増えてきている。遠隔で装置またはシステムの構成を変更する技術として、フォグコンピューティングおよびSDN(Software Defined Network)等が挙げられる。さらに、サービスの1つとして、センサーおよびモーター等のエッジ機器の制御をエッジ機器に近い装置によって行なうエッジコンピューティングも提供されることがある。
上述した工場および航空宇宙機器内等のネットワークにおいて使用される装置は、動作保証のため、高いリアルタイム性および信頼性を求められることが多い。そのため、上記のように高いリアルタイム性および信頼性を求められる機器は、時分割されたフレーム通信方法を用いて、装置間およびネットワークリソースの整合性を担保して通信することがある。さらに、これらの機器は、事前にシステム内での入念な動作検証を経て、問題がないことを確認されてから使用される。
クラウドサーバー等が、これらの装置およびネットワークリソース等の構成を変更した場合、構成の変更後の環境が変更前の環境と同様のリアルタイム性や信頼性を有するか否かは、変更後のシステムで実際の動作検証をしていないため不明である。さらに、変更後の構成を使用した場合のシミュレーションでは、実際の装置内の各部品の精度のばらつき等および環境等の影響の再現性に限界があり、やはり、実際の動作検証が必要とされている。
例えば、工場内の生産設備、人工衛星、または、自動車の内部ユニット等として使用されるミッションクリティカルな装置において、予め定められた時間内に必要なフレームのやり取りが間に合わないと、装置が制御不能になる場合がある。そのため、動作検証をせずにこれらの装置のネットワークリソース等の構成を変更することは困難であった。
ネットワークに接続された装置のテスト方法に関して、例えば、特開2007−207050号公報(特許文献1)は、「プロセッサよりパケットを送信先へ送信する送信部と、パケットを受信元より受信する受信部と、パケットを受信元より受信する受信部の待機時間を監視するタイマー部と、受信したパケットと比較する期待値を生成する期待値生成部と、受信したパケットと期待値を比較するチェック部と、パケットを期待値と比較するチェック部の結果より送信部と期待値生成部と受信部の待機時間を監視するタイマー部を制御する制御部とを備える」中継装置を開示している([要約]参照)。
特開2007−207050号公報
特許文献1に開示された技術によると、装置の構成を変更したときに、装置を停止させることなく変更後の構成のテストを行うことができない。したがって、装置の構成を変更したときに、装置を停止させることなく変更後の構成のテストを行う技術が必要とされている。
本開示は、上記のような背景に鑑みてなされたものであって、ある局面における目的は、装置の構成を変更したときに、装置を停止させることなく変更後の構成のテストを行う技術を提供することにある。
ある実施の形態に従う装置は、2重化された通信処理部における稼働系である第1の通信処理部と、待機系の第2の通信処理部とを備える。第2の通信処理部は、構成変更指示を受信し、第2の通信処理部に、構成変更指示に基づく通信処理回路と、通信処理回路の性能をテストするテスト回路とを構成する。テスト回路は、第1の通信処理部の通信とは独立して、通信処理回路の入出力処理を監視し、変更後の通信処理回路の通信性能をテストする。
本技術によれば、装置の構成を変更したときに、装置を停止させることなく変更後の構成のテストを行うことが可能である。
この発明の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
実施の形態1に従うシステムの一構成例を示す図である。 ネットワークリソース103の一構成例を示す図である。 通信装置102の一構成例を示す図である。 通信処理部300のテスト回路400の一構成例を示す図である。 待機系300Bにおける信号の流れの一構成例を示す図である。 エッジインターフェイス制御回路401の一構成例を示す図である。 ネットワークインターフェイス制御回路406の一構成例を示す図である。 タイマー403の一構成例を示す図である。 テスト制御回路405の一構成例を示す図である。 DUT(Device Under Test)の性能テスト時の仮想的な環境の一例を示す図である。 図10のネットワーク側で発生する通信の一例を示す図である。 図10のエッジ側で発生する入出力の一例を示す図である。 テスト結果出力回路404の一構成例を示す図である。 再構成制御回路402の動作例を示す図である。 コントローラー100の一構成例を示す図である。 DUTの性能テストの手順の一例を示す図である。 実施の形態2に従う通信装置102における稼働系1700Aの構成の一例を示す図である。 実施の形態2に従う通信装置102における待機系1700Bの構成の一例を示す図である。 LSI(Large Scale Integration)接続部1720Aの構成の一例を示す図である。 稼働系1700Aのテストコントローラー901の通信の一例を示す図である。 LSI接続部1720Bの構成の一例を示す図である。 待機系1700Bのテスト制御回路405の構成の一例を示す図である。 ネットワークインターフェイス制御回路406の構成の一例を示す図である。 各通信装置102が自装置に保存するテスト結果テーブル2400の一例を示す図である。 通信装置102がテスト結果テーブル2400を参照して再テストを実行する手順の一例を示すフローチャートである。
以下、図面を参照しつつ、本開示に係る技術思想の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。なお、これ以降の説明では、複数の同一の構成に対して言及する場合、構成123A,123Bのように表現することがある。また、それらを総称する場合は、構成123と表現する。
実施の形態1.
図1は、本実施の形態に従うシステムの一構成例を示す図である。本実施の形態に従うシステムは、例えば、工場内の生産設備、人工衛星および自動車の内部ユニットとして組み込まれる機器等に適用され得る。
本実施の形態に従うシステムは、コントローラー100と、エッジ機器101と、通信装置102と、ネットワークリソース103と、ゲートウェイサーバー104とを含む。当該システムは、インターネット105を介して、クラウド環境106にも接続され得る。
コントローラー100は、システム全体を管理する。コントローラー100は、例えば、PC(Personal Computer)、ワークステーション等であってもよいし、専用のハードウェアであってもよい。その場合、当該専用のハードウェアは、少なくとも1つのCPU(Central Processing Unit)、少なくとも1つのASIC(Application Specific Integrated Circuit)、少なくとも1つのFPGA(Field-Programmable Gate Array)を含んでもよいし、またはこれらの組み合わせによっても構成され得る。エッジ機器101は、例えば、センサー等であり、工場の生産設備の動作検出、自動車の衝突検知等の任意の用途に使用され得る。
通信装置102は、稼働系および待機系の通信処理部を備え、時分割でフレームを送受信する。本実施の形態において、通信装置102は、冗長性を高めるために通信処理部または通信処理部を含むシステム全体を2重化されている。これらの2重化された通信処理部のうち、稼働系の通信処理部は、通信装置102が正常に稼働している際に通信する。また、待機系の通信処理部は、稼働系の通信処理部のバックアップであり、稼働系の通信処理部に異常が発生した際に稼働する。稼働系の通信処理部の異常とは、通信処理の異常だけでなく、稼働系の通信処理部および稼働系の通信処理部に関連する任意のハードウェア(CPUやメモリー等)の故障を含み得る。通信装置102は、エッジ機器101との間でデータを送受信すると共に、ネットワークリソース103を介して、コントローラー100とも通信する。通信装置102は、通信処理のための装置でなくてもよく、通信機能を持つ任意の装置であってもよい。ある局面において、通信装置102は、通信処理部として、SoC(System-on-a-Chip)を備えてもよい。SoCは、複数の機能を1チップ上にまとめたものである。SoCは、例えば、CPUと、メモリーと、FPGA等の再構成可能な半導体装置と、通信部と、入出力ポートとを含み得る。他の局面において、通信装置102は、通信処理部として、SoM(System-on-Module)を備えていてもよい。SoMは、例えば、複数の部品を小型のPCB(Printed Circuit Board)上に配置したものであり、複数の機能をまとめたモジュールとして提供される。SoMは、例えば、CPUと、メモリーと、FPGA等の再構成可能な半導体装置と、通信部と、入出力ポートとを含み得る。
ネットワークリソース103は、システムの通信経路を構成する。ある局面において、ネットワークリソース103は、複数のスイッチおよびリピータ等によって構成され得る。ゲートウェイサーバー104は、システム内の機器と、外部機器との通信を仲介すると共に、セキュリティに関する機能を含み得る。ある局面において、ゲートウェイサーバー104は、通信ポリシー等の設定を記憶し、外部機器からのシステム内の機器に対する通信を制限し得る。同様に、ゲートウェイサーバー104は、システム内の機器から外部機器に対する通信も制限し得る。他の局面において、ゲートウェイサーバー104は、送受信するデータのウイスルチェックを実行し得る。
クラウド環境106は、ある局面において、複数のサーバーから構成されるデータセンターであってもよい。クラウド環境106上に仮想的に構成されたコントローラーが、コントローラー100に代わって、システム内の各機器を管理してもよい。
図2は、ネットワークリソース103の一構成例を示す図である。図2に示す例では、スイッチ201Aおよびスイッチ201Bを含む。ある局面において、スイッチ201は、TCP/IP(Transmission Control Protocol/Internet Protocol)またはUDP(User Datagram Protocol)等の通信プロトコルに従い通信処理を行なってもよい。他の局面において、スイッチ201は、SLMP(Seamless Message Protocol)等の通信プロトコルに従い通信処理を行なってもよい。他の局面において、スイッチ201は、CAN(Controller Area Network)、TSN(Time-Sensitive Networking)またはユーザー独自に定義した通信プロトコル等に従い通信処理を行なってもよい。図2の例では、スイッチ201A,201Bの2台がネットワークリソースを構成しているが、ネットワークリソースの構成例はこれに限られない。ネットワークリソースは、任意の台数の装置および通信プロトコルの組み合わせによって実現され得る。
図3は、通信装置102の一構成例を示す図である。通信装置102は、2つの通信処理部300を備える。以降の説明において、一方を稼働系300A、もう片方を待機系300Bと呼ぶ。総称する場合は、通信処理部300と呼ぶ。稼働系300Aおよび待機系300Bは、同一の構成である。通信装置102は、自装置の信頼性を高めるために、これら2つの通信処理部300を備える。本実施の形態において、通信装置102は、正常時は、稼働系300Aのみを使用して通信する。通信装置102は、稼働系300Aの通信処理部に異常が発生した場合、待機系300Bを使用して通信する。
通信処理部300は、CPU301と、ユーザーロジック302と、メモリー303と、ネットワーク処理部304と、他のロジック305と、ネットワークPHY(Physical Layer)306とを含む。通信処理部300は、エッジ機器101およびネットワークリソース103側の機器と通信する。
CPU301は、通信処理部300の全体の処理を制御する。CPU301は、メモリー303に格納されるプログラムおよびデータを実行または参照してもよい。ある局面において、CPU301は、組み込みCPUであってもよいし、FPGAによって構成されてもよい。
ユーザーロジック302は、例えば、FPGA等の構成を変更することによって実現された回路である。ユーザーロジック302は、用途によって様々な機能を含み得る。例えば、ユーザーロジック302は、エッジ機器101との通信および取得したデータの変換機能等を有していてもよい。ユーザーロジック302は、多くの場合、専用の機能を有し、通信処理部300が実行する処理の一部を行い、CPU301の負荷を軽減し得る。
メモリー303は、CPU301によって実行されるプログラムまたはユーザーロジック302等によって読み書きされるデータ等を格納し得る。ある局面において、DRAM(Dynamic Random Access Memory)またはSRAM(Static Random Access Memory)が、メモリー303として使用されてもよい。
ネットワーク処理部304は、ネットワークリソース103側(以下、ネットワークリソース103側を「ネットワーク側」と呼ぶ)との通信に関する処理を実行する。他のロジック305は、通信処理部300に組み込む回路またはチップ等である。ネットワークPHY306は、例えば、実際の通信の信号を処理するチップである。
上記の稼働系300Aおよび待機系300Bを含む通信装置102は、工場設備および車載ネットワーク等において、幅広く利用されている。通信装置102は、様々な用途に使用することができるため、ユーザーは、用途に応じて通信装置102の通信処理部300の構成を変更したい場合がある。通信装置102は、例えば、コントローラー100等の他の機器から通信処理部300を再構成する命令を受信して、通信処理部300のFPGA等の半導体装置の再構成、プログラムの変更、通信経路、ネットワークリソース103側の機器との間の通信プロトコルおよび通信設定の変更、さらにはネットワークリソース103自体の通信プロトコルや通信設定の変更への対応(以降、これらを総称して、「ネットワーク構成の変更」と呼ぶ)が可能である。ある局面において、ネットワークリソース103自体の設定変更は、クラウド環境106から行なわれてもよい。
通信プロトコルの設定変更等が生じた場合、ネットワーク機器の入出力の期待動作、所謂ネットワーク機器に求められるリアルタイム性、信頼性等も変化する。そのため、ネットワーク設計者は、設定変更前に、設定変更後のネットワーク構成が予め定められた処理能力(リアルタイム性、信頼性)を備えているか否かを机上計算またはシミュレーション等により検証する必要がある。しかし、従来の方法では、変更後のネットワーク構成が予め定められた処理能力を備えているか否かを実際にテストする方法がないため、通信装置102のネットワーク構成を新しいネットワーク構成に安全に変更することができない。そこで、本実施の形態に従う通信装置102は、通信装置102の通信処理に影響のない待機系300Bに新しいネットワーク構成をテストする回路を生成し、当該新しいネットワーク構成が予め定められた処理能力を備えているか否かをテストする。
図4は、通信処理部300のテスト回路400の一構成例を示す図である。図4を参照して、新しいネットワーク構成をテストするテスト回路400の機能の概要について説明する。テスト回路400は、例えば、FPGA等の再構成可能な集積回路によって、待機系300Bに構成され得る。
待機系300Bに含まれるCPU301B〜305Bまでの全てまたは一部が変更されることにより、ネットワーク構成が変更される。ある局面において、ネットワーク構成の変更は、ユーザーロジック302Bまたはネットワーク処理部304Bの回路構成の変更を含んでもよいし、CPU301Bの実行するプログラムの変更を含んでもよいし、通信装置102の通信経路の変更を含んでもよい。これ以降、待機系300Bに構成される新しいネットワーク構成を、DUTと呼ぶ。
待機系300Bに構成されたDUTは、テスト回路400によってテストされる。DUTが予め定められた性能を満たす場合、稼働系300Aおよび待機系300Bの構成は、当該DUTと同一の構成に置き換えられ得る。その際、テスト回路400によってDUTの性能は確認されているため、構成変更後の稼働系300Aおよび待機系300Bは、テスト回路400を含まない。
テスト回路400は、エッジインターフェイス制御回路401と、再構成制御回路402と、タイマー403と、テスト結果出力回路404と、テスト制御回路405と、ネットワークインターフェイス制御回路406とを備える。
エッジインターフェイス制御回路401は、エッジ機器101側(以下、エッジ機器101側を「エッジ側」と呼ぶ)のインターフェイスと、DUTのエッジ側の論理回路との接続を論理的にON/OFFすることができる。エッジインターフェイス制御回路401は、DUTの性能テスト時には、エッジ側のインターフェイスと、DUTのエッジ側の論理回路との接続を論理的にOFFにする。
エッジ側のインターフェイスとDUTのエッジ側の論理回路とが論理的に接続されていないとき、DUTのエッジ側の論理回路は、テスト制御回路405に接続され、当該テスト制御回路405から模擬データの入力を受け付ける。逆に、エッジ側のインターフェイスと、DUTのエッジ側の論理回路とが論理的に互いに接続されているとき、DUTのエッジ側の論理回路は、エッジ機器101からデータを受信する。
再構成制御回路402は、通信処理部300の内部を論理的に書き換える。ある局面において、FPGA等の半導体装置のネットワークを介した再構成技術が、再構成制御回路402に用いられてもよい。
タイマー403は、DUTから時刻データを取得する。タイマー403は、DUTから取得した時刻データを元にカウンター回路を動作させ、取得した時刻データを正確に更新し、当該時刻データをテスト制御回路405に通知する。タイマー403の保有する時刻は、DUTの入出力データのタイムスタンプの生成に使用される。テスト回路400は、DUTから実際に入出力されるデータのタイムスタンプを確認することで、DUTの処理性能を正確に計測することができる。
テスト結果出力回路404は、テスト制御回路405からテスト結果データを取得し、ネットワーク側の通信プロトコルに従い、当該テスト結果データをパケット化し、ネットワークインターフェイス制御回路406を介して、ネットワーク側に送信する。テスト結果データは、例えば、コントローラー100により収集され得る。
ネットワークインターフェイス制御回路406は、ネットワーク側のインターフェイス(ネットワークPHY306B)と、DUTのネットワーク側の論理回路との接続を論理的にON/OFFすることができる。ネットワークインターフェイス制御回路406は、DUTの性能テスト時には、ネットワーク側のインターフェイスと、DUTのネットワーク側の論理回路との接続を論理的にOFFにする。
ネットワーク側のインターフェイスとDUTのネットワーク側の論理回路とが論理的に接続されていないとき、DUTのネットワーク側の論理回路は、テスト制御回路405に接続され、当該テスト制御回路405から模擬データを受信する。逆に、ネットワーク側のインターフェイスと、DUTのネットワーク側の論理回路とが論理的に接続されているとき、DUTのネットワーク側の論理回路は、ネットワーク側の機器からデータを受信する。
テスト制御回路405は、DUTの性能をテストするための制御信号およびテスト用の模擬データを出力する。模擬データは、待機系300Bがエッジ機器101から受信するデータを模したエッジ側模擬データと、待機系300Bがネットワークリソース側の機器から受信するデータを模したネットワーク側模擬データとを含む。
テスト制御回路405は、エッジインターフェイス制御回路401およびネットワークインターフェイス制御回路406を制御することで、DUTのエッジ側論理回路およびネットワーク側論理回路の接続先を切り替える。さらに、テスト制御回路405は、タイマー403の機能と連携し、指定の時刻に模擬データをDUTに入力する。また、テスト制御回路405は、DUTのエッジ側論理回路およびネットワーク側論理回路に対する入出力データのタイミングと、バス信号のアクセスの種類と、タイムスタンプとを関連付けて、これらの情報をテスト制御回路405またはテスト結果出力回路404に保存する。
図5は、待機系300Bにおける信号の流れの一構成例を示す図である。最初に、エッジ側の信号について説明する。テスト制御回路405は、エッジインターフェイステスト制御信号501により、エッジインターフェイス制御回路401の接続先を切り替える。
エッジインターフェイス制御回路401は、エッジ機器101と論理的に接続されている場合、エッジ機器101からエッジ入力データ502Aを受信し、エッジ機器101にエッジ出力データ503Aを送信する。その際に、エッジインターフェイス制御回路401は、エッジ入力データのミラー502Bと、エッジ出力データのミラー503Bとをテスト制御回路405に送信し得る。
エッジインターフェイス制御回路401は、テスト制御回路405と論理的に接続されている場合、テスト制御回路405からエッジ入力模擬データ502Cを受信する。その際、エッジインターフェイス制御回路401は、エッジ機器101とは論理的に接続されていないため、エッジ機器101からエッジ入力データ502Aを受信しない。
待機系300Bの内部通信において、エッジインターフェイス制御回路401は、DUTのエッジ側論理回路、例えばユーザーロジック302Bと通信する。エッジインターフェイス制御回路401は、エッジ入力データ502Dをユーザーロジック302Bに送信する。エッジ入力データ502Dは、エッジ入力データ502Aまたはエッジ入力模擬データ502Cのいずれかである。エッジインターフェイス制御回路401は、ユーザーロジック302Bから、エッジ出力データ503Dを受信する。エッジインターフェイス制御回路401は、エッジインターフェイステスト制御信号501に応じて、当該エッジ出力データ503Dをエッジ機器101およびテスト制御回路405に送信する。
次に、ネットワーク側の信号について説明する。テスト制御回路405は、ネットワークインターフェイステスト制御信号504により、ネットワークインターフェイス制御回路406の接続先を切り替える。
ネットワークインターフェイス制御回路406は、ネットワークPHY306Bに論理的に接続されている場合、ネットワーク側の機器からネットワーク受信データ505Aを受信し、ネットワーク側の機器にネットワーク送信データ506Aを送信する。その際に、ネットワークインターフェイス制御回路406は、ネットワーク受信データのミラー505Bと、ネットワーク送信データのミラー506Bとを、テスト制御回路405に送信し得る。
ネットワークインターフェイス制御回路406は、テスト制御回路405に論理的に接続されている場合、テスト制御回路405からネットワーク受信模擬データ505Cを受信する。その際、ネットワークインターフェイス制御回路406は、ネットワークリソース103には論理的に接続されていないため、ネットワーク側の機器からネットワーク受信データ505Aを受信しない。
待機系300Bの内部通信において、ネットワークインターフェイス制御回路406は、DUTのネットワーク側論理回路、例えばネットワーク処理部304Bと通信する。ネットワークインターフェイス制御回路406は、ネットワーク受信データ505Dをネットワーク処理部304Bに送信する。ネットワーク受信データ505Dは、ネットワーク受信データ505Aまたはネットワーク受信模擬データ505Cのいずれかである。ネットワークインターフェイス制御回路406は、ネットワーク処理部304Bから、ネットワーク送信データ506Dを受信する。ネットワークインターフェイス制御回路406は、ネットワークインターフェイステスト制御信号504に応じて、当該ネットワーク送信データ506Dをネットワーク側の機器およびテスト制御回路405に送信する。
テスト制御回路405は、ネットワーク性能プロファイリング510を内部または外部に有する。テスト制御回路405は、当該ネットワーク性能プロファイリング510に基づいて、エッジインターフェイス制御回路401およびネットワークインターフェイス制御回路406の接続の制御と、エッジ入力模擬データ502Cおよびネットワーク受信模擬データ505Cの生成とを行なう。
テスト制御回路405は、タイマー403から時刻データ511を取得し、ネットワーク性能プロファイリング510に基づいて実行したDUTのテスト結果データ512をテスト結果出力回路404に送信する。テスト結果出力回路404は、受信したテスト結果データ512のフォーマットを変換して、テスト結果データパケット513を生成する。テスト結果出力回路404は、当該テスト結果データパケット513をネットワークインターフェイス制御回路406およびネットワークPHY306Bを介して、ネットワーク側の機器、例えば、コントローラー100、管理者のPCまたはクラウド環境106等に送信する。
図6は、エッジインターフェイス制御回路401の一構成例を示す図である。エッジインターフェイス制御回路401は、入力信号選択回路601と、出力信号選択回路602と、エッジインターフェイスプロトコル変換回路603と、固定出力値生成回路604とを含む。
入力信号選択回路601は、エッジ入力データ502Aおよびエッジ入力模擬データ502Cの入力を受け付け、エッジ入力データ502Dを出力する。エッジ入力データ502Aは、エッジ入力データのミラー502Bとしてテスト制御回路405にも入力される。さらに、入力信号選択回路601は、制御信号として、エッジインターフェイステスト制御信号501の入力を受け付ける。入力信号選択回路601は、エッジインターフェイステスト制御信号501に基づいて、エッジ入力データ502Aまたはエッジ入力模擬データ502Cのいずれかをエッジ入力データ502Dとして出力する。
ある局面において、入力信号選択回路601は、エッジインターフェイステスト制御信号501の論理値がHIGHのとき、エッジ入力データ502Aをエッジ入力データ502Dとして出力し、エッジインターフェイステスト制御信号501の論理値がLOWのとき、エッジ入力模擬データ502Cをエッジ入力データ502Dとして出力してもよい。他の局面において、入力信号選択回路601は、エッジインターフェイステスト制御信号501の論理値がLOWのとき、エッジ入力データ502Aをエッジ入力データ502Dとして出力し、エッジインターフェイステスト制御信号501の論理値がHIGHのとき、エッジ入力模擬データ502Cをエッジ入力データ502Dとして出力してもよい。
エッジ入力データ502Aがエッジ入力データ502Dとして出力される場合、DUTは、実際にエッジ機器101と通信し、通常時の動作状態で稼働している。逆に、エッジ入力模擬データ502Cがエッジ入力データ502Dとして出力される場合、DUTは、外部のエッジ機器101からは論理的に遮断され、代わりにテスト制御回路405との間で模擬データを送受信する。
エッジインターフェイスプロトコル変換回路603は、エッジ入力模擬データ502Cの信号をエッジ側の通信プロトコルに従う形式に変換する。ある局面において、エッジ機器101は、SPI(Serial Peripheral Interface)、I2C(Inter-Integrated Circuit)またはUART(Universal Asynchronous Receiver/Transmitter)等の通信プロトコルを使用し得る。エッジインターフェイスプロトコル変換回路603は、エッジ入力模擬データ502Cの信号をエッジ機器101の使用するこれらの通信プロトコルに従う形式に変換する。
出力信号選択回路602は、エッジ出力データ503Dおよび固定値信号610の入力を受け付け、エッジ出力データ503Aを出力する。エッジ出力データ503Dは、エッジ出力データのミラー503Bとしてテスト制御回路405にも入力される。さらに、出力信号選択回路602は、制御信号として、エッジインターフェイステスト制御信号501の入力を受け付ける。出力信号選択回路602は、エッジインターフェイステスト制御信号501に基づいて、エッジ出力データ503Dまたは固定値信号610のいずれかをエッジ出力データ503Aとして出力する。
ある局面において、出力信号選択回路602は、エッジインターフェイステスト制御信号501の論理値がHIGHのとき、エッジ出力データ503Dをエッジ出力データ503Aとして出力し、エッジインターフェイステスト制御信号501の論理値がLOWのとき、固定値信号610をエッジ出力データ503Aとして出力してもよい。他の局面において、出力信号選択回路602は、エッジインターフェイステスト制御信号501の論理値がLOWのとき、エッジ出力データ503Dをエッジ出力データ503Aとして出力し、エッジインターフェイステスト制御信号501の論理値がHIGHのとき、固定値信号610をエッジ出力データ503Aとして出力してもよい。
エッジ出力データ503Dがエッジ出力データ503Aとして出力される場合、DUTは、実際にエッジ機器101と通信し、通常時の動作状態で稼働している。逆に、固定値信号610がエッジ出力データ503Aとして出力される場合、DUTと外部のエッジ機器101との接続は、論理的に遮断され、代わりにテスト制御回路405との間で模擬データを送受信する。
固定出力値生成回路604は、DUTとエッジ機器101との接続が遮断されている間に、エッジ機器101に送信するための固定値信号610を生成する。固定値信号610は、通信装置102、具体的には待機系300Bのエッジ側インターフェイスが動作していないことを示す信号であってもよい。その場合、固定値信号610は、固定値出力(論理値HIGH)の信号であってもよいし、固定値出力(論理値LOW)の信号であってもよいし、論理値HIGHと論理値LOWとを交互に繰り返す信号であってもよい。
テスト制御回路405は、エッジ入力データのミラー502Bおよびエッジ出力データのミラー503Bと、タイマーから取得した時刻データ511とに基づいて、DUTがエッジ機器101と通信したタイムスタンプを取得する。
上記のように、エッジインターフェイス制御回路401は、入力信号選択回路601および出力信号選択回路602を用いて、DUTのエッジ側のインターフェイスと、エッジ機器101との接続を遮断し、代わりに、DUTのエッジ側のインターフェイスと、テスト制御回路405とを接続する。当該機能により、待機系300Bは、外部のエッジ機器101に影響を与えることなく、エッジ入力模擬データ502Cを用いて、DUTの性能をテストすることができる。
図7は、ネットワークインターフェイス制御回路406の一構成例を示す図である。ネットワークインターフェイス制御回路406は、入力信号選択回路701と、出力信号選択回路702と、ネットワークインターフェイスプロトコル変換回路703と、固定出力値生成回路704とを含む。
入力信号選択回路701は、ネットワーク受信データ505Aおよびネットワーク受信模擬データ505Cの入力を受け付け、ネットワーク受信データ505Dを出力する。ネットワーク受信データ505Aは、ネットワーク受信データのミラー505Bとしてテスト制御回路405にも入力される。さらに、入力信号選択回路701は、制御信号として、ネットワークインターフェイステスト制御信号504の入力を受け付ける。入力信号選択回路701は、ネットワークインターフェイステスト制御信号504に基づいて、ネットワーク受信データ505Aまたはネットワーク受信模擬データ505Cのいずれかをネットワーク受信データ505Dとして出力する。
ある局面において、入力信号選択回路701は、ネットワークインターフェイステスト制御信号504の論理値がHIGHのとき、ネットワーク受信データ505Aをネットワーク受信データ505Dとして出力し、ネットワークインターフェイステスト制御信号504の論理値がLOWのとき、ネットワーク受信模擬データ505Cをネットワーク受信データ505Dとして出力してもよい。他の局面において、入力信号選択回路701は、ネットワークインターフェイステスト制御信号504の論理値がLOWのとき、ネットワーク受信データ505Aをネットワーク受信データ505Dとして出力し、ネットワークインターフェイステスト制御信号504の論理値がHIGHのとき、ネットワーク受信模擬データ505Cをネットワーク受信データ505Dとして出力してもよい。
ネットワーク受信データ505Aがネットワーク受信データ505Dとして出力される場合、DUTは、実際にネットワーク側の機器と通信し、通常時の動作状態で稼働している。より具体的には、DUTのネットワーク処理部304Bは、ネットワークPHY306Bと通信が可能な状態である。逆に、ネットワーク受信模擬データ505Cがネットワーク受信データ505Dとして出力される場合、DUTとネットワーク側の機器との接続は、論理的に遮断され、代わりにテスト制御回路405と模擬データを送受信する。より具体的には、DUTのネットワーク処理部304Bは、ネットワークPHY306Bと通信ができず、代わりに、テスト制御回路405と通信が可能な状態である。
ネットワークインターフェイスプロトコル変換回路703は、ネットワーク受信模擬データ505Cの信号をネットワーク側の通信プロトコルに従う形式に変換する。ある局面において、ネットワーク側の機器は、イーサーネット(登録商標)または独自の通信プロトコル等を使用し得る。ネットワークインターフェイスプロトコル変換回路703は、ネットワーク受信模擬データ505Cの信号をネットワーク側の機器の使用するこれらの通信プロトコルに従う形式に変換する。
出力信号選択回路702は、ネットワーク送信データ506D、固定値信号710およびテスト結果データ512の入力を受け付け、ネットワーク送信データ506Aを出力する。ネットワーク送信データ506Dは、ネットワーク送信データのミラー506Bとしてテスト制御回路405にも入力される。さらに、出力信号選択回路702は、制御信号として、ネットワークインターフェイステスト制御信号504の入力を受け付ける。出力信号選択回路702は、ネットワークインターフェイステスト制御信号504に基づいて、ネットワーク送信データ506Dまたは固定値信号710のいずれかをネットワーク送信データ506Aとして出力する。
ある局面において、出力信号選択回路702は、ネットワークインターフェイステスト制御信号504の論理値がHIGHのとき、ネットワーク送信データ506Dをネットワーク送信データ506Aとして出力し、ネットワークインターフェイステスト制御信号504の論理値がLOWのとき、固定値信号710をネットワーク送信データ506Aとして出力してもよい。他の局面において、出力信号選択回路702は、ネットワークインターフェイステスト制御信号504の論理値がLOWのとき、ネットワーク送信データ506Dをネットワーク送信データ506Aとして出力し、ネットワークインターフェイステスト制御信号504の論理値がHIGHのとき、固定値信号710をネットワーク送信データ506Aとして出力してもよい。
ネットワーク送信データ506Dがネットワーク送信データ506Aとして出力される場合、DUTは、実際にネットワークリソース103側の機器と通信し、通常時の動作状態で稼働している。逆に、固定値信号710がネットワーク送信データ506Aとして出力される場合、DUTと、ネットワークリソース103側の外部機器との接続は、論理的に遮断され、代わりにテスト制御回路405との間で模擬データを送受信する。
テスト結果データ512は、DUTのテスト結果に関するデータであり、テスト結果出力回路404から、ネットワークPHY306Bを介して、ネットワークリソース103側の機器に送信される。ある局面において、テスト結果出力回路404は、DUTの性能テストの終了後に、テスト結果データ512をネットワークリソース103側の機器、例えば、コントローラー100に送信してもよい。他の局面において、出力信号選択回路702は、ネットワーク送信データ506D、固定値信号710およびテスト結果データ512のいずれかを出力信号として選択するために、テスト制御回路405から3種類のネットワークインターフェイステスト制御信号504の入力を受け付けてもよい。
固定出力値生成回路604は、DUTとネットワークリソース103側の機器との接続が遮断されている間に、ネットワークリソース103側の機器に送信するための固定値信号710を生成する。固定値信号710は、通信装置102、具体的には待機系300Bのネットワーク側インターフェイスが動作していないことを示す信号であってもよい。その場合、固定値信号710は、固定値出力(論理値HIGH)の信号であってもよいし、固定値出力(論理値LOW)の信号であってもよいし、論理値HIGHと論理値LOWとを交互に繰り返す信号であってもよい。
テスト制御回路405は、ネットワーク受信データのミラー505Bおよびネットワーク送信データのミラー506Bと、タイマーから取得した時刻データ511とに基づいて、DUTが、ネットワーク側の外部機器と通信したタイムスタンプを取得する。
上記のように、ネットワークインターフェイス制御回路406は、入力信号選択回路701および出力信号選択回路702を用いて、DUTのネットワーク側のインターフェイスとネットワークPHY306Bとの接続を遮断し、代わりに、DUTのネットワーク側のインターフェイスと、テスト制御回路405とを接続する。当該機能により、待機系300Bは、ネットワーク側の機器に影響を与えることなく、ネットワーク受信模擬データ505Cを用いて、DUTの性能をテストすることができる。
図8は、タイマー403の一構成例を示す図である。タイマー403は、カウンター回路801を含む。タイマー403は、待機系300B内のバスを介して、時刻データに関する情報800と、バス情報802とを取得する。
時刻データに関する情報800は、時刻データと、時刻データセット情報と、時刻データリセット情報とを含み得る。タイマー403は、時刻データ取得の制御信号による指示に基づいて、バスを介して、CPU301B等が管理している時刻データを取得する。タイマー403は、カウンター回路801に保存している現在時刻のデータを取得した時刻データで上書きする。時刻データセット情報は、カウンター回路801に保存している現在時刻のデータを予め定められた値に上書きするための情報である。タイマー403は、時刻データセット情報に基づいて、カウンター回路801に保存している現在時刻のデータを予め定められた時刻で上書きする。時刻データリセット情報は、カウンター回路801に保存している現在時刻をリセットするための情報である。タイマー403は、時刻データリセット情報に基づいて、カウンター回路801に保存している現在時刻のデータをリセットする(カウンターの値を0にする)。
バス情報802は、タイマー403の各種設定等を含み得る。カウンター回路801は、セットされた時刻をカウントアップしていき、現在時刻を更新する。タイマー403は、カウンター回路801が更新している現在時刻を含む時刻データ511をテスト制御回路405に送信する。
上述のように、タイマー403は、テスト制御回路405に正確なシステム時刻を提供する。当該機能により、テスト制御回路405は、DUTの各種入出力処理の完了時刻を正確に取得することができ、DUTの性能を厳密にテストすることができる。
図9は、テスト制御回路405の一構成例を示す図である。テスト制御回路405は、テストコントローラー901と、第1のメモリー902と、第2のメモリー903と、第3のメモリー904と、第4のメモリー905と、第1のタイミング制御回路906と、第2のタイミング制御回路907と、第5のメモリー908と、第6のメモリー909と、第7のメモリー910と、第8のメモリー911と、テスト結果出力部912とを含む。
テストコントローラー901は、テスト制御回路405内の各構成要素を制御する。一例として、テストコントローラー901は、エッジインターフェイステスト制御信号501と、ネットワークインターフェイステスト制御信号504と、各テストシーケンスと、パケットキャプチャー条件と、各メモリーへのライトイネーブル信号930と、テスト実行イネーブル信号940と、テスト結果出力制御信号950とを生成する。さらに、テストコントローラー901は、各種メモリーに書き込む情報の生成および書き込み処理を実行し得る。
各テストシーケンスは、DUTに対して行なわれる性能テストの手順である。パケットキャプチャー条件は、DUTに対して行なわれるテストにおいて、検証するパケットもしくは信号の取得条件である。各メモリーへのライトイネーブル信号930は、第1のメモリー902〜第4のメモリー905への設定書き込みをイネーブルにする。テスト実行イネーブル信号940は、第1のタイミング制御回路906〜第8のメモリー911までをイネーブルにして、テスト制御回路405にテスト実行を開始させる。
第1のメモリー902は、DUTのエッジ側インターフェイスに対するエッジ入力模擬データ502Cのタイミングと、システム時刻とを対応させて記憶する。第1のメモリー902は、格納する情報として、システム時刻情報と、送信元情報と、エッジ入力模擬データ502Cの種類とを含み得る。テスト制御回路405は、第1のメモリー902の設定に基づいて、エッジ入力模擬データ502Cを生成し得る。ある局面において、システム時刻情報は、時分割の通信におけるタイミングであってもよい。一例として、第1のメモリー902への登録データは、時刻情報「t2〜t3」、送信元情報「エッジ機器101」およびデータの種類「応答データ」等であってもよい。
第2のメモリー903は、DUTのネットワーク側インターフェイスに対するネットワーク受信模擬データ505Cのタイミングと、システム時刻とを対応させて記憶する。第2のメモリー903は、格納する情報として、システム時刻情報と、送信元情報と、ネットワーク受信模擬データ505Cの種類とを含み得る。テスト制御回路405は、第2のメモリー903の設定に基づいて、ネットワーク受信模擬データ505Cを生成し得る。ある局面において、システム時刻情報は、時分割の通信におけるタイミングであってもよい。一例として、第1のメモリー902への登録データは、時刻情報「t1〜t2」、送信元情報「コントローラー100」およびデータの種類「エッジデータ取得要求」等であってもよい。他の例として、第1のメモリー902への登録データは、時刻情報「t7〜t8」、送信元情報「機器B」およびデータの種類「制御データ」等であってもよい。
第3のメモリー904は、テスト制御回路405が、DUTの性能テスト時において、ネットワーク側の通信においてキャプチャーするパケットの条件を格納する。第3のメモリー904に登録されたパケットが、DUTの性能テスト時に、第5のメモリー908に書き込まれる。テスト制御回路405は、第3のメモリー904に登録されているDUTの入出力パケットをキャプチャーすることで、当該キャプチャーしたパケットが時分割の通信における期待したタイミングで処理されているか否かを検出することができる。例えば、テスト制御回路405は、DUTが受信したパケットの時刻およびDUTが送信する応答パケットの送信時の時刻の両方を確認し、これらの時刻を比較することでDUTが予め定められた性能を満たしているか否かをテストできる。なお、DUTと外部の機器との接続が遮断されている場合、第2のメモリー903に送受信の模擬データが格納されるため、キャプチャーは不要である。
第4のメモリー905は、時分割の通信におけるネットワーク側に出力するパケットのタイミングの期待値をシステム時刻と対応させて格納する。第4のメモリー905は、格納する情報として、ID(Identifier)と、最小時刻と、最大時刻と、ネットワーク送信データ506Aの種類とを含む。IDは、後述する第6のメモリー909のIDと関連付けられる。テスト制御回路405は、最小時刻から最大時刻までの間に、DUTがネットワーク送信データ506Aを出力した場合、DUTが予め定められた性能を満たすとみなす。そうでない場合、テスト制御回路405は、DUTが予め定められた性能を満たしていないとみなす。一例として、第4のメモリー905への登録データは、最小時刻「t3」、最大時刻「t4」およびデータの種類「エッジ取得データ」等であってもよい。この場合、エッジ取得データの期待される送信タイミングは、時刻t3〜t4の間になる。他の例として、第4のメモリー905への登録データは、最小時刻「t9」、最大時刻「t10」およびデータの種類「制御応答」等であってもよい。この場合、制御応答の期待される送信タイミングは、時刻t9〜t10の間になる。上記の第1のメモリー902〜第4のメモリー905は、ネットワーク性能プロファイリング510に含まれ得る。
第1のタイミング制御回路906は、エッジ入力模擬データ502Cを生成する。第1のタイミング制御回路906は、テストコントローラー901が、テスト実行イネーブル信号940をイネーブルにしているときに動作する。第1のタイミング制御回路906は、第1のメモリー902に予め登録されているデータの種類ごとの時刻情報と、現在時刻とを比較し、時刻が一致したエッジ入力模擬データ502Cを出力する。
第2のタイミング制御回路907は、ネットワーク受信模擬データ505Cを生成する。第2のタイミング制御回路907は、テストコントローラー901が、テスト実行イネーブル信号940をイネーブルにしているときに動作する。第2のタイミング制御回路907は、第2のメモリー903に予め登録されているデータの種類ごとの時刻情報と、現在時刻とを比較し、時刻が一致したネットワーク受信模擬データ505Cを出力する。
第5のメモリー908は、第3のメモリー904に予め登録されている条件と一致するパケットの送受信が発生した場合、当該パケットと、送受信時刻とを関連付けて格納する。第5のメモリー908は、格納する情報として、キャプチャー時刻と、送信/受信の種類と、送信元/送信先と、送受信データの種類とを含む。第5のメモリー908は、テストコントローラー901が、テスト実行イネーブル信号940をイネーブルにしているときに動作する。第5のメモリー908は、一連の通信をセットとして格納してもよい。
第5のメモリー908の期待値を満たすパケットに関する格納データの一例として、以下のような第1のパケット〜第4のパケットの情報を含んでもよい。第1のパケットは、キャプチャー時刻「t1」、送信/受信の種類「受信」、送信元/送信先「コントローラー100」および送受信データの種類「エッジデータ取得要求」である。第2のパケットは、キャプチャー時刻「t4」、送信/受信の種類「送信」、送信元/送信先「コントローラー100」および送受信データの種類「エッジ取得データ」である。第3のパケットは、キャプチャー時刻「t7」、送信/受信の種類「受信」、送信元/送信先「機器B」および送受信データの種類「制御データ」である。第4のパケットは、キャプチャー時刻「t9」、送信/受信の種類「送信」、送信元/送信先「機器B」および送受信データの種類「制御応答」である。
第5のメモリー908の期待値を満たさないパケットに関する格納データの一例として、以下のような第5のパケット〜第8のパケットの情報を含んでもよい。第5のパケットは、キャプチャー時刻「t1」、送信/受信の種類「受信」、送信元/送信先「コントローラー100」および送受信データの種類「エッジデータ取得要求」である。第6のパケットは、キャプチャー時刻「t5」、送信/受信の種類「送信」、送信元/送信先「コントローラー100」および送受信データの種類「エッジ取得データ」である。第7のパケットは、キャプチャー時刻「t7」、送信/受信の種類「受信」、送信元/送信先「機器B」および送受信データの種類「制御データ」である。第8のパケットは、キャプチャー時刻「t10」、送信/受信の種類「送信」、送信元/送信先「機器B」および送受信データの種類「制御応答」である。上記の第6のパケットは、通信第4のメモリー905の、「エッジ取得データ」の最小時刻「t3」および最大時刻「t4」の範囲を逸脱しているため、期待値を満たしていないことがわかる。
第6のメモリー909は、第4のメモリー905と、第5のメモリー908とに基づいて、キャプチャーしたパケットが、期待値に対してどの程度の余裕があるかを算出した情報を格納する。第6のメモリー909は、格納する情報として、IDと、期待値比較結果と、最小時刻に対する余裕時間と、最大時刻に対する余裕時間と、送受信データの種類とを含む。期待値比較結果は、期待値を満たすか否かのフラグ情報である。最小時刻に対する余裕時間は、式「実測値−最小時刻」で算出される。最大時刻に対する余裕時間は、式「最大時刻−実測値」で算出される。
第6のメモリー909の期待値を満たすパケットに関する格納データの一例として、以下のような第9のパケットおよび第10のパケットの情報を含んでもよい。第9のパケットは、ID「exp1」、期待値比較結果「OK」、最小時刻に対する余裕時間「t4−t3」、最大時刻に対する余裕時間「0」、送受信データの種類「エッジ取得データ」である。第10のパケットは、ID「exp2」、期待値比較結果「OK」、最小時刻に対する余裕時間「0」、最大時刻に対する余裕時間「t10−t9」、送受信データの種類「制御応答」である。
第6のメモリー909の期待値を満たさないパケットに関する格納データの一例として、以下のような第11のパケットおよび第12のパケットの情報を含んでもよい。第11のパケットは、ID「exp3」、期待値比較結果「NG」、最小時刻に対する余裕時間「t5−t3」、最大時刻に対する余裕時間「t4−t5(時間超過)」、送受信データの種類「エッジ取得データ」である。第12のパケットは、ID「exp4」、期待値比較結果「OK」、最小時刻に対する余裕時間「t10−t9」、最大時刻に対する余裕時間「0」、送受信データの種類「制御応答」である。
第7のメモリー910は、DUTの性能テスト時に、DUTのエッジ側インターフェイスで発生したデータの入出力情報と、入出力時刻とを関連付けて格納する。第7のメモリー910は、格納する情報として、キャプチャー時刻と、入力/出力の種類と、送信元/送信先と、送受信データの種類とを含む。第7のメモリー910は、テストコントローラー901が、テスト実行イネーブル信号940をイネーブルにしているときに動作する。第7のメモリー910は、一連の通信をセットとして格納してもよい。一例として、第7のメモリー910に格納されるデータは、キャプチャー時刻「t2」、入力/出力の種類「出力」、送信元/送信先「エッジ機器101」、送受信データの種類「データ取得要求」等であってもよい。他の例として、第7のメモリー910に格納されるデータは、キャプチャー時刻「t3」、入力/出力の種類「入力」、送信元/送信先「エッジ機器101」、送受信データの種類「応答データ」等であってもよい。
テスト結果を受信する機器は、第6のメモリー909に格納される情報と、第7のメモリー910に格納される情報とに基づいて、エッジ側の入出力およびネットワーク側の通信のいずれがボトルネックになっているかを解析することができる。
第8のメモリー911は、DUTの性能テスト時に発生した待機系300Bのバスに対するアクセスの情報と、システム時刻とを関連付けて格納する。DUTは、バスを通信以外の用途にも使用し得る。そのため、バスの使用タイミングが、DUTの通信処理性能のボトルネックにもなり得る。そのため、テスト制御回路405は、バスの使用に起因するボトルネックの解析を容易にするために、第8のメモリー911に、当該バスに対するアクセス情報を格納する。第8のメモリー911は、格納する情報として、キャプチャー時刻と、アクセス元と、アクセス先と、アクセス種別と、アクセスサイズとを含む。第8のメモリー911は、テストコントローラー901が、テスト実行イネーブル信号940をイネーブルにしているときに動作する。
一例として、第8のメモリー911に格納されるデータは、キャプチャー時刻「t1」、アクセス元「CPU301」、アクセス先「ネットワーク処理部304」、アクセス種別「バーストリード」、アクセスサイズ「8バイト」であってもよい。他の例として、第8のメモリー911に格納されるデータは、キャプチャー時刻「t2」、アクセス元「CPU301」、アクセス先「ユーザーロジック302」、アクセス種別「シングルライト」、アクセスサイズ「1バイト」であってもよい。
テスト結果を受信する機器は、第6のメモリー909に格納される情報と、第8のメモリー911に格納される情報とに基づいて、DUTが通信処理を行なっている間にバスがどのように占有されているか、および、どのバス動作がボトルネックとなっているか等を解析することができる。
テスト結果出力部912は、テストコントローラー901から出力されるテスト結果出力制御信号950に基づいて、テスト結果データ512をテスト結果出力回路404に出力する。テスト結果データ512は、第5のメモリー908〜第8のメモリー911の内容を含み得る。ある局面において、テスト結果出力制御信号950は、第5のメモリー908〜第8のメモリー911の内容のいずれかを選択する命令を含んでもよい。その場合、テスト結果データ512は、テスト結果出力制御信号950に含まれる命令に基づいて、第5のメモリー908〜第8のメモリー911の内容のいずれかを選択して、個別にテスト結果出力回路404に出力する。
次に、図10〜図12を参照して、テスト制御回路405によって実行されるDUTの性能テストの概要について説明する。図10は、DUTの性能テスト時の仮想的な環境の一例を示す図である。待機系300Bは、機器A(DUT)である。機器Aは、ネットワークリソース103を介して、機器Bおよびコントローラー100に接続されている。ネットワーク性能プロファイリング510は、例えば、図10に示すネットワークで発生し得る通信を想定したテスト内容を生成し得る。
図11は、図10のネットワーク側で発生する通信の一例を示す図である。時分割の通信では、各パケットは、予め定められた時刻内で通信することが求められる。一例として、コントローラー100から送信される「機器A宛のエッジデータ取得要求1101」は、時刻t1〜t2の間に機器Aによって受信されなければならない。他の例として、機器Aから送信される「コントローラー宛のエッジ取得データ1102」は、時刻t3〜t4の間に機器Aから送信されなければならない。これらの条件は、ネットワーク性能プロファイリング510内の第2のメモリー903および第4のメモリー905の設定に関連する。
図12は、図10のエッジ側で発生する入出力の一例を示す図である。エッジ側の入出力においても、各入出力は、予め定められた時刻内で行なわれることが求められる。一例として、機器Aからエッジ機器101に対して出力される「データ取得要求1201」は、時刻t2〜t2’の間に出力されなければならない。他の例として、エッジ機器101から機器Aに対して出力される「応答データ1202」は、時刻t2’〜t3の間に機器Aによって取得されなければならない。これらの条件は、ネットワーク性能プロファイリング510内の第1のメモリー902の設定に関連する。
テスト制御回路405は、待機系300Bの内部で、上記の図10〜図12に示す実際の状況を模した模擬信号を発生させて、DUTの性能テストを行なう。当該処理により、本実施の形態に従うテスト方法は、通常のシミュレーションと異なり、DUTが現場で求められる性能を満たしているか否かを実際に確認することができる。さらに、当該テスト方法は、待機系300Bの内部で完結するため、稼働系300Aの動作には影響を及ぼさない。ある局面において、テスト制御回路405は、待機系300Bをエッジ機器101およびネットワークリソース103に接続し、実際の通信内容に基づいてDUTの性能テストを行なってもよい。当該処理により、通信装置102は、より正確にDUTの実測テストを行なうことができる。
図13は、テスト結果出力回路404の一構成例を示す図である。テスト結果出力回路404は、テスト制御回路405によって実行されたテストの結果をネットワーク側の外部機器に送信する。テスト結果出力回路404は、パケット化回路1301と、テスト結果送信バッファ1302と、ネットワークインターフェイスプロトコル変換回路1303とを備える。
パケット化回路1301は、テスト結果データ512をパケット形式に変換する。テスト結果送信バッファ1302は、形式を変換されたテスト結果データを一時的に格納する。ネットワークインターフェイスプロトコル変換回路1303は、テスト結果送信バッファ1302から送られてくるパケットをネットワーク側の通信プロトコルに従う形式に変換する。
テスト結果送信バッファ1302は、テスト制御回路405から出力されるテスト結果出力制御信号950がイネーブルになったタイミングで、テスト結果データパケット513をネットワークインターフェイス制御回路406に送信する。ネットワークインターフェイス制御回路406は、ネットワークリソース103を介して、テスト結果データパケット513を外部機器(コントローラー100等)に送信する。ユーザーは、外部機器において受信したテスト結果データパケット513を参照することで、DUTの性能およびボトルネックの原因等を解析することができる。
図14は、再構成制御回路402の動作例を示す図である。再構成制御回路402は、ネットワークインターフェイス制御回路406から、ネットワーク側のパケットのミラーを受信する。再構成制御回路402は、ネットワーク構成の変更データを受信すると、通信処理部300の内部の構成を変更し得る。
図15は、コントローラー100の一構成例を示す図である。コントローラー100は、PCまたはワークステーション等であってもよい。コントローラー100は、通信処理部300に対して、ネットワーク構成の変更データを送信し得る。
コントローラー100は、制御装置1501と、RAM(Random Access Memory)1502と、入力インターフェイス1503と、出力インターフェイス1504と、記憶装置1507と、通信インターフェイス1506と、外部機器インターフェイス1505とを含む。
制御装置1501は、コントローラー100全体を制御する。ある局面において、CPUが制御装置1501として使用されてもよい。RAM1502は、制御装置1501によって参照されるプログラムおよびデータを格納し得る。ある局面において、DRAMまたはSRAMが、RAM1502として使用されてもよい。
入力インターフェイス1503は、キーボード、マウスまたはゲームパッド等の任意の入力装置に接続され得る。ある局面において、USB(Universal Serial Bus)端子、PS/2端子およびBluetooth(登録商標)モジュール等が入力インターフェイス1503として使用されてもよい。
出力インターフェイス1504は、ブラウン管ディスプレイ、液晶ディスプレイまたは有機EL(electro-luminescence)ディスプレイ等の任意の出力装置に接続され得る。ある局面において、USB端子、D−sub端子、DVI端子およびHDMI(登録商標)端子等が出力インターフェイス1504として使用されてもよい。
外部機器インターフェイス1505は、プリンター、スキャナーおよび外付けHDD(Hard Disk Drive)等の任意の外部機器に接続され得る。ある局面において、USB端子等が外部機器インターフェイス1505として使用されてもよい。
通信インターフェイス1506は、有線または無線のネットワーク機器に接続される。ある局面において、有線LAN(Local Area Network)ポートおよびWi-Fi(登録商標)モジュール等が通信インターフェイス1506として使用されてもよい。
記憶装置1507は、不揮発性メモリーであり、コントローラー100の電源が切れた状態でもデータを保存しておくことができる。記憶装置1507は、制御装置1501が実行または参照する任意のプログラムおよびデータを保存し得る。ある局面において、HDDまたはSSD(Solid State Drive)が、記憶装置1507として使用されてもよい。
図16は、DUTの性能テストの手順の一例を示す図である。ある局面において、待機系300Bまたはテスト回路400の各構成が図16の処理を実行してもよい。ステップS1610において、待機系300Bは、コントローラー100等から、ネットワーク構成の変更データを受信する。ステップS1620において、待機系300Bは、ネットワーク構成の変更データに基づいて、待機系300BにDUTおよびテスト回路400を含む回路を構成する。ある局面において、再構成制御回路402が当該処理を行なってもよい。その場合、再構成制御回路402は、テスト回路400の生成前に待機系300B内に存在する。
ステップS1630において、テスト制御回路405は、ネットワーク性能プロファイリング510からテスト設定を読み込む。ステップS1640において、テスト制御回路405は、エッジインターフェイス制御回路401と、ネットワークインターフェイス制御回路406とを制御し、DUTの接続先を変更する。
ステップS1650において、テスト制御回路405は、ネットワーク性能プロファイリング510の各種設定に基づいて、DUTの性能テストを実行する。テスト制御回路405は、テストの実行結果をテスト結果出力回路404に出力する。ステップS1660において、テスト結果出力回路404は、ネットワークリソース103を介して、テスト結果データのパケットを他の機器に送信する。
DUTのテストおよびテスト結果の解析完了後、DUTの性能が期待値を満たすものである場合、稼働系300Aおよび待機系300Bは、ネットワーク構成の変更データを受信し、当該ネットワーク構成の変更データに基づいて、稼働系300Aおよび待機系300Bの内部に、テスト回路400を含まないDUTと同一の回路を構成し得る。
以上説明したように、実施の形態1に従うシステムおよび通信装置102は、待機系300Bを用いて、実際の状況を模した模擬信号によるDUTの性能テストを行なう。当該処理により、通信装置102は、稼働系300Aの動作には影響を及ぼさずに、遠隔操作のみで新しいネットワーク構成の性能テストを実現し得る。さらに、通信装置102は、DUTの性能テスト後に、ネットワーク構成の変更データを受信し、稼働系300Aおよび待機系300Bの両方の構成をDUTと同様の構成に変更し得る。また、本実施の形態に従うシステムおよび通信装置102は、ネットワーク性能プロファイリング510に含まれる各種メモリーに任意の期待動作の設定を格納することができる。そのため、本実施の形態に従うシステムおよび通信装置102は、通信装置102の内部構成の変更だけでなく、ネットワークリソース103の構成や通信プロトコル等の変更が発生した場合でも、通信装置102が新しい環境において期待動作を満たすか否かを検証することができる。
実施の形態2.
次に、図17〜図23を参照して、実施の形態2について説明する。本実施の形態に従う通信装置は、稼働系1700Aおよび待機系1700Bを備える。また、通信装置は、稼働系1700AのネットワークPHY306を介して、待機系1700Bのテスト回路1710によるテスト結果データを外部の機器(コントローラー100等)に送信する点で、実施の形態1に従う通信装置と異なる。
本実施の形態に従う通信装置は、通信装置がコールドスタンバイモードで動作する場合においても待機系1700B内のDUTの性能をテストすることができる。「コールドスタンバイモード」とは、例えば、消費電力削減等の理由により、待機系1700Bまたは/および待機系1700Bが接続されるネットワーク機器に電力が供給されないモードである。通信装置がコールドスタンバイモードで稼働している場合、待機系1700B側のネットワークPHY306が接続されるネットワーク機器は稼働していない。そのため、待機系1700Bは、待機系1700B側のネットワークPHY306を介して、テスト結果データを外部の機器に送信することができない。
そのため、本実施の形態に従う通信装置は、待機系1700Bのテスト回路1710によるテスト結果データを稼働系1700Aに転送する。通信装置は、稼働系1700A側のネットワークPHY306を介して、テスト結果データを外部の機器に送信する。
なお、本実施の形態に従う通信装置のテスト回路1710は、実施の形態1に従う通信装置のテスト回路400と比較して、テスト制御回路1730と、LSI接続部1720AまたはLSI接続部1720Bとを備える。ある局面において、テスト回路1710は、テスト回路400が備える構成の一部を備えていなくてもよい。これ以降の説明では、実施の形態1に従う通信装置が備える各構成に対応するものについては、同一の符号を用いて説明する。
図17は、本実施の形態に従う通信装置における稼働系1700Aの構成の一例を示す図である。本実施の形態に従う稼働系1700Aは、図4に示す稼働系300Aの構成に加えて、さらに、テスト回路1710を備える。
稼働系1700AのLSI接続部1720Aは、後述する待機系1700BのLSI接続部1720Bと接続される。LSI接続部1720AおよびLSI接続部1720Bは、例えば、待機系1700Bのテスト結果データを稼働系1700Aに転送する。当該処理により、通信装置は、コールドスタンバイモードで稼働中でも、待機系1700Bのテスト結果データを外部の機器の送信することができる。また、LSI接続部1720AおよびLSI接続部1720Bは、稼働系1700Aの実際の通信に関する情報を待機系1700Bに送信し得る。当該処理により、待機系1700Bは、受信した稼働系1700Aの通信に関する情報に基づいて、通信のテストを実行することができる。
LSI接続部1720Aは、稼働系1700Aの各構成または通信路を介して、エッジ入力データ1701と、ネットワーク受信データ1702と、時刻データ1703と、LSI接続部の制御信号1704とを受信する。LSI接続部1720Aは、受信したエッジ入力データ1701と、ネットワーク受信データ1702と、時刻データ1703とを、後述するLSI接続部1720Bに転送する。
さらに、LSI接続部1720Aは、LSI接続部1720Bから、テスト結果データ1705を取得し、当該テスト結果データ1705をネットワークインターフェイス制御回路406に転送する。
エッジ入力データ1701は、例えば、エッジ入力データ502Aである。ネットワーク受信データ1702は、例えば、ネットワーク受信データ505Dのミラーデータである。時刻データ1703は、例えば、時刻データ511である。LSI接続部の制御信号1704は、LSI接続部1720Aのエッジ入力データ1701、ネットワーク受信データ1702、時刻データ1703、および、テスト結果データ1705のそれぞれの転送のオン/オフを制御するための信号であり、テスト制御回路1730から出力される。テスト制御回路1730は、さらに、バスを介して、CPU301、ユーザーロジック302、メモリー303、ネットワーク処理部304および他のロジック305とバス信号を送受信し得る。
図18は、本実施の形態に従う通信装置における待機系1700Bの構成の一例を示す図である。本実施の形態に従う待機系1700Bは、図5に示す構成に加えて、さらにLSI接続部1720Bを備える。
待機系1700BのLSI接続部1720Bは、稼働系1700AのLSI接続部1720Aと接続される。LSI接続部1720Bは、LSI接続部1720Aから受信したエッジ入力データ1701と、ネットワーク受信データ1702と、時刻データ1703とをテスト制御回路1730に転送する。また、LSI接続部1720Bは、テスト制御回路1730から、テスト結果データ1705を取得し、当該テスト結果データ1705をLSI接続部1720Aに転送する。さらに、LSI接続部1720Bは、テスト制御回路1730から、LSI接続部の制御信号1804を受信する。LSI接続部の制御信号1804は、LSI接続部1720Bのエッジ入力データ1701、ネットワーク受信データ1702、時刻データ1703、および、テスト結果データ1705のそれぞれの転送のオン/オフを制御するための信号である。
上記のLSI接続部1720A,1720Bは、大きく分けて2つの役割を持つ。LSI接続部1720A,1720Bの1つ目の役割は、コールドスタンバイモードでも待機系1700Bのテスト結果データ1705を外部の機器に送信可能にすることである。待機系1700Bは、待機系300Bと同様に、単体で待機系1700B内のDUTの通信性能をテストすることができる。しかし、通信装置がコールドスタンバイモードで動作していた場合、待機系1700Bは、テスト結果データ1705を外部の機器に送信することができない。そこで、待機系1700Bは、ネットワークと通信可能な稼働系1700Aに、テスト結果データ1705を転送する。テスト結果データ1705は、LSI接続部1720A,1720Bを介して、待機系1700Bから稼働系1700Aに転送される。稼働系1700Aのネットワークインターフェイス制御回路406は、外部の機器に、テスト結果データ1705を送信する。
LSI接続部1720A,1720Bの2つ目の役割は、稼働系1700Aのエッジ入力データ1701と、ネットワーク受信データ1702と、時刻データ1703とを待機系1700Bに転送することである。図9に示したように、待機系1700Bは、ネットワーク性能プロファイリング510に基づいて、テスト制御回路1730の各メモリーに設定を書き込み、当該設定に基づいてDUTのテストを実行し得る。待機系1700Bのテスト制御回路1730は、稼働系1700Aのエッジ入力データ1701と、ネットワーク受信データ1702と、時刻データ1703とを受信することで、これらのデータに基づいてネットワーク性能プロファイリング510を生成することができる。ある局面において、待機系1700Bのテスト制御回路1730は、受信したデータを直接第1のメモリー902〜第4のメモリー905に入力してもよい。これにより、本システムの管理者は、待機系1700BのDUTのテスト用の設定を作成する必要がなくなる。
図19は、LSI接続部1720Aの構成の一例を示す図である。LSI接続部1720Aは、接続制御部1900を備える。接続制御部1900は、スイッチ等の素子を含み、LSI接続部の制御信号1704に基づいて、エッジ入力データ1701、ネットワーク受信データ1702、時刻データ1703、および、テスト結果データ1705のそれぞれの転送のオン/オフを切り替える。
図20は、稼働系1700Aのテストコントローラー901の通信の一例を示す図である。図20を参照して、テストコントローラー901における本実施の形態に関連する通信について説明する。
テストコントローラー901は、ネットワーク受信データのミラー505Bを受信する。また、テストコントローラー901は、ネットワークインターフェイステスト制御信号504と、LSI接続部の制御信号1704とを出力する。さらに、テストコントローラー901は、バス情報2020を送受信することができる。
ある局面において、テストコントローラー901は、ネットワークPHY306を介して受信したパケットの内容に基づいて、LSI接続部の制御信号1704の内容を変更してもよい。他の局面において、テストコントローラー901は、CPU301から、バス情報2020を受信し、当該バス情報2020に基づいて、LSI接続部の制御信号1704の内容を変更してもよい。なお、図20に示す例は、稼働系1700Aのテストコントローラー901であるが、実際には、待機系1700Bのテストコントローラー901も同様のハードウェア構成を備え得る。ある局面において、待機系1700Bのテストコントローラー901は、稼働系1700AのLSI接続部1720Aから転送されたネットワーク受信データ1702に基づいて、LSI接続部1720Bの制御信号1804を変更してもよい。
図21は、LSI接続部1720Bの構成の一例を示す図である。LSI接続部1720Bは、接続制御部2100を備える。接続制御部2100は、スイッチ等の素子を含み、LSI接続部の制御信号1804に基づいて、エッジ入力データ1701、ネットワーク受信データ1702、時刻データ1703、および、テスト結果データ1705のそれぞれの転送のオン/オフを切り替える。
図19および図21に示すように、LSI接続部1720A,1720Bは、同数の入出力ポートを備えており、共通のハードウェアによって実現され得る。そのため、LSI接続部1720A,1720Bは、入出力データの向きを変えることで、稼働系1700Aおよび待機系1700BのいずれのLSI接続部としても動作し得る。
図22は、待機系1700Bのテスト制御回路1730の構成の一例を示す図である。図22に示すテスト制御回路1730は、図9に示すテスト制御回路405が備える構成に対して、さらに、エッジ入力データ1701、ネットワーク受信データ1702、時刻データ1703、LSI接続部の制御信号1804、および、テスト結果データ1705のための通信線を含む。ある局面において、稼働系1700Aのテスト制御回路1730は、待機系1700Bのテスト制御回路1730と同様の構成を含んでもよい。他の局面において、稼働系1700Aのテスト制御回路1730は、待機系1700Bのテスト制御回路1730と同様の構成を含まなくてもよい。
テストコントローラー901は、実施の形態1において、ネットワーク受信データのミラー505Bを用いて、第1のメモリー902と、第2のメモリー903と、第3のメモリー904と、第4のメモリー905とに、各種設定を格納していた。
これに対して、本実施の形態に従うテストコントローラー901は、ネットワーク受信データのミラー505Bの代わりに、稼働系1700Aから転送されるネットワーク受信データ1702を使用して、DUTのテストのための設定を行ない得る。ネットワーク受信データ1702は、第1のメモリー902〜第4のメモリー905の各種設定を含む。テストコントローラー901は、ネットワーク受信データ1702を受信したことに基づいて、ネットワーク受信データ1702に含まれる各種設定を第1のメモリー902〜第4のメモリー905の各々に直接書き込む。このように、テストコントローラー901は、ネットワーク受信データ1702に含まれる設定を各種メモリーに直接書き込むことで、DUTのテストのための設定を行い得る。
さらに、本実施の形態に従うテストコントローラー901は、エッジ入力データのミラー502Dおよび時刻データ511の代わりに、稼働系1700Aから受信したエッジ入力データ1701および時刻データ1703を使用し得る。以下に、ネットワーク受信データ1702、エッジ入力データ1701および時刻データ1703を使用する場合のテストコントローラー901の具体的な動作の一例を示す。なお、以下に示すテストコントローラー901の動作は一例であり、テストコントローラー901は、エッジ入力データ1701および時刻データ1703を使用しなくてもよい。
本実施の形態に従うテストコントローラー901は、稼働系1700Aから受信したエッジ入力データ1701および時刻データ1703に基づいて、第1のメモリーに、DUTのテストのための設定を書き込む。また、テストコントローラー901は、稼働系1700Aから受信したネットワーク受信データ1702および時刻データ1703に基づいて、第2のメモリー903に、DUTのテストのための設定を書き込む。同様に、テストコントローラー901は、稼働系1700Aから受信したネットワーク受信データ1702に基づいて、第3のメモリー904および第4のメモリー905に、DUTのテストのための設定を書き込む。
さらに、テストコントローラー901は、エッジインターフェイステスト制御信号501およびネットワークインターフェイステスト制御信号504に加えて、LSI接続部の制御信号1804を出力する。これらの構成により、待機系1700Bは、稼働系1700Aから受信した各種データに基づいて、DUTのテストを実行することができる。ある局面において、テストコントローラー901は、取得したエッジ入力データ1701〜時刻データ1703の各々を第1のメモリー902〜第4のメモリー905の各々に直接入力してもよい。
なお、稼働系1700Aも図22に示す構成を備えていてもよい。その場合、稼働系1700Aにおいて、テストコントローラー901は、LSI接続部の制御信号1804の代わりに、LSI接続部の制御信号1704を出力する。
図23は、ネットワークインターフェイス制御回路406の構成の一例を示す図である。ネットワークインターフェイス制御回路406は、送信データを格納する送信待ちキュー2300を備える。図23を参照して、当該送信待ちキュー2300を用いた優先制御について説明する。
ネットワークインターフェイス制御回路406は、テスト制御回路1730からネットワーク送信データ506Aを受信し、当該受信したネットワーク送信データ506Aを高優先度キュー2301に格納する。
また、ネットワークインターフェイス制御回路406は、LSI接続部1720Aから、待機系1700Bのテスト結果データ1705を受信し、当該受信したテスト結果データ1705を低優先度キュー2302に格納する。
ネットワークインターフェイス制御回路406は、テスト結果データ1705よりもネットワーク送信データ506Aを優先的に送信する。それにより、稼働系1700Aの通信処理におけるレイテンシおよび/またはジッタの発生が抑制され得る。また、ネットワークインターフェイス制御回路406は、ネットワークインターフェイステスト制御信号504に基づいて、テスト結果データ1705の送信のオン/オフを切り替えてもよい。当該テスト結果データ1705の送信のオン/オフの切り替え機能により、ネットワークインターフェイス制御回路406は、より確実に、稼働系1700Aの通信処理におけるレイテンシおよび/またはジッタの発生を抑制することができる。
以上説明したように、本実施の形態に従うシステムおよび通信装置は、待機系1700Bのテスト結果データ1705を稼働系1700Aに転送する。稼働系1700Aは、稼働系1700AのネットワークPHY306を介して、テスト結果データ1705を外部の機器に送信し得る。当該機能により、例えば、通信装置がコールドスタンバイモード動作していたとしても、通信装置は、待機系1700Bの性能テストを実行し、そのテスト結果データ1705を外部の機器の送信することができる。
また、待機系1700Bは、稼働系1700Aのエッジ入力データ1701、ネットワーク受信データ1702、および、時刻データ1703を受信して、これらのデータに基づいて、待機系1700Bの性能テストを実行することができる。当該機能により、通信装置は、通信装置の管理者のテスト設定データの作成の負担を減らすことができる。
さらに、稼働系1700Aは、送信待ちキュー2300を用いた優先制御により、稼働系1700Aの通信処理におけるレイテンシおよび/またはジッタの発生を抑制しながら、テスト結果データ1705を外部の機器に送信し得る。
実施の形態3.
次に、図24および図25を参照して、実施の形態3について説明する。本実施の形態における通信装置は、1または複数の他の通信装置との間の通信性能をテストする点で、実施の形態1および2に従う通信装置と異なる。
実施の形態3は、例えば、図1に示す例のように、複数の通信装置が互いに通信し合う構成において適用し得る。実施の形態1または2に従う通信装置は、単体で、待機系に関する性能テストを実行する。すなわち、実施の形態1または2に従う通信装置は、自装置内の待機系のみを用いて待機系に関する性能テストを実行する。これに対して、実施の形態3では、複数の通信装置が、お互いのテスト結果データを交換し合い、複数の通信装置を含むシステム全体の通信性能が予め定められた期待値以上であるか否かを評価する。
これ以降、通信装置(A)および通信装置(B)を含むシステムを例に、実施の形態3の詳細について説明する。なお、通信装置(A)および(B)を含むシステムの構成は一例であり、本実施の形態に従うシステムの構成はこれに限られない。ある局面において、本実施の形態に従うシステムは、任意の数の通信装置を含んでいてもよい。
また、実施の形態3に従う通信装置は、実施の形態1に従う通信装置が備える構成、または、実施の形態2に従う通信装置が備える構成と同じ構成を備え得る。これ以降の説明では、実施の形態1または2に従う通信装置が備える各構成に対応するものについては、同一の符号を用いて説明する。
図24は、各通信装置が自装置に保存するテスト結果テーブル2400の一例を示す図である。テスト結果テーブル2400は、各通信装置のテスト結果データのうち、通信性能(成績)が予め定められた期待値未満であったものを含む。すなわち、テスト結果テーブル2400は、各通信装置の問題のある通信のリストであると言える。全ての通信装置は、同一の内容のテスト結果テーブル2400を参照することができる。ここでのテスト結果データとは、例えば、実施の形態1における待機系300Bのテスト結果データである。
ある局面において、テスト結果テーブル2400は、リレーショナルデータベースのテーブルとして表現されてもよいし、JSON(JavaScript(登録商標) Object Notation)等の他の任意のデータ形式で表現されてもよい。
また、ある局面において、各通信装置は、テスト結果テーブル2400をメモリー303に格納してもよいし、各通信装置内の他のストレージ(図示せず)に格納してもよい。その場合、各通信装置は、各々のテスト結果データを互いに送信することで、テスト結果テーブル2400を共有し得る。
他の局面において、テスト結果テーブル2400は、各通信装置が使用する共有ストレージ(図示せず)に格納されてもよい。その場合、全ての通信装置は、テスト結果テーブル2400を参照する際、当該共有ストレージにアクセスする。
テスト結果テーブル2400は、当該テスト結果テーブル2400を構成するレコード、または他のデータ構造の要素として、番号2401と、送信機器2402と、受信機器2403と、最小期待時刻2404と、最大期待時刻2405と、実績値2406とを含む。
番号2401は、各テスト結果データ、または各テスト結果に含まれる通信データ(パケット等)を一意に識別する。送信機器2402は、テスト結果データの送信側の機器(通信装置)の識別情報である。受信機器2403は、テスト結果データの受信側の機器(通信装置)の識別情報である。
各通信データは、送信側の通信装置からいつの時刻までに送信されるべきかを示す送信時刻の期待値、および/または、受信側の通信装置でいつの時刻までに受信されるべきかを示す受信時刻の期待値が定義されている。これらの期待値は、ある程度の幅(最小値および最大値)が設けられており、各通信データは当該期待値の最小値および最大値の間に送信または受信されることで期待値通りに処理されたと見なされる。
最小期待時刻2404は、例えば、ある通信データが、送信側の通信装置からいつの時刻までに送信されるべきかを示す送信時刻の期待値の最小値、および/または、受信側の通信装置でいつの時刻までに受信されるべきかを示す受信時刻の期待値の最小値を含む。
最大期待時刻2405は、例えば、ある通信データが、送信側の通信装置からいつの時刻までに送信されるべきかを示す送信時刻の期待値の最大値、および/または、受信側の通信装置でいつの時刻までに受信されるべきかを示す受信時刻の期待値の最大値を含む。
本来ならば、テスト結果データの実績値は、最小期待時刻2404および最大期待時刻2405の間でなければならない。テスト結果テーブル2400に含まれるテスト結果データは、通信性能(成績)が予め定められた期待値未満であり、実績値2406は、最小期待時刻2404および最大期待時刻2405の間に含まれない。
各通信装置は、テスト結果テーブル2400に含まれる通信性能(成績)が予め定められた期待値未満のテスト結果データを参照し、これらのテスト結果データに基づいて、ネットワーク性能プロファイリング510および/または第1のメモリー902〜第4のメモリー905の設定値を調節して再テストをする。システムは、当該再テストにより、システム全体として、最小期待時刻2404および最大期待時刻2405の範囲内で、通信性能(成績)が予め定められた期待値未満であった通信の送受信を完了できるか否かを判定する。具体的な再テストの手順については図25を参照して説明する。
上記のテスト結果テーブル2400の各要素は、全ての通信装置が解釈できる共通の形式であることが望ましい。例えば、各通信装置が、イーサーネット(登録商標)を介して通信する場合、テスト結果テーブル2400の項目である送信機器2402および受信機器2403は、MACアドレスを含んでいてもよい。
また、テスト結果テーブル2400は、上記の要素以外にも、LANDID(Virtual LAN Identifier)、COS値(Class Of Service)等、TCP/IP(Transmission Control Protocol/Internet Protocol)のIPアドレス、ポート番号、機器間ネットワークにおいてユーザーが独自に組み込んだプロトコルのヘッダ情報、または/および、通信を特定するためのID等の任意の情報を含み得る。
図25は、通信装置がテスト結果テーブル2400を参照して再テストを実行する手順の一例を示すフローチャートである。ある局面において、CPU301は、図25の処理を行うためのプログラムをメモリー303から参照して、当該プログラムを実行してもよい。他の局面において、当該処理の一部または全部は、当該処理を実行するように構成された回路素子の組み合わせとしても実現され得る。
一例として、通信装置(A)および通信装置(B)の間の通信が予め定められた期待値未満の成績であったとする。また、通信装置(B)が送信側であり、通信装置(A)が受信側であるとする。これ以降、送信側の通信装置(B)の処理を例に説明する。
ステップS2505において、通信装置(B)は、期待値を満たさないテスト結果データ(テスト結果テーブル2400の各レコードに相当)を他の通信装置と共有する。例えば、通信装置(B)は、通信装置(B)の実行したテストのテスト結果データの中で、通信性能(成績)が予め定められた期待値未満の通信に関するテスト結果データを他の通信装置に送信する。逆に、通信装置(B)は、他の通信装置の実行したテストのテスト結果データの中で、通信性能(成績)が予め定められた期待値未満の通信に関するテスト結果データを受信する。ステップS2505の処理により、各通信装置は、テスト結果テーブル2400を共有する。
ステップS2510において、通信装置(B)は、テスト結果テーブル2400の中から最小期待時刻2404(送信/受信されるべき時刻の最小値)および/または最大期待時刻2405(送信/受信されるべき時刻の最大値)が、最も小さい通信を選択する。選択された通信は、送信側が通信装置(B)であり、受信側が通信装置(A)であったとする。以下、選択された通信を通信(A)と呼ぶ。
ステップS2515において、通信装置(B)は、受信側である通信装置(A)に対して、ネットワーク受信模擬データの設定の変更およびテストの実行を要求する。ネットワーク受信模擬データの設定の変更とは、第2のメモリー903の設定の変更に相当する。また、当該設定の変更は、第1のメモリー902、第3のメモリー904および第4のメモリー905の一部または全ての設定の変更を含んでいてもよい。または、当該設定の変更は、ネットワーク性能プロファイリング510の設定変更を含んでいてもよい。
より具体的には、通信装置(B)は、通信(A)の実績値2406および最大期待時刻2405の差分を第2のメモリー903の設定に反映するように、通信装置(A)に要求する指令を送信する。当該反映は、例えば、通信(A)の送信予定時刻が本来の期待値よりも遅れることの反映を含む。通信装置(A)は、当該設定に基づいて通信(A)の再テストを実行し、通信装置(A)における通信(A)の受信時刻が期待値の範囲内か否か(通信性能が期待値以上か否か)を判定し得る。
ステップS2520において、通信装置(B)は、受信側である通信装置(A)からエラーを受信したか否かを判定する。受信側の通信装置(A)の第2のメモリー903に送信側の通信装置(B)から依頼された通信(A)に該当するものがなければ、通信装置(B)にエラーを返信する。
通信装置(B)は、受信側である通信装置(A)からエラーを受信したと判定した場合(ステップS2520にてYES)、制御をステップS2560に移す。そうでない場合(ステップS2520にてNO)、通信装置(B)は、制御をステップS2525に移す。
ステップS2525において、通信装置(B)は、通信装置(A)から、通信(A)のテスト結果データを受信する。当該テスト結果データは、通信装置(A)がステップS2515にて受信した設定変更要求の内容を反映した後のテストの結果である。
ステップS2530において、通信装置(B)は、通信装置(A)から受信したテスト結果データが、受信側の通信装置(A)における予め定められた期待値を満たすか否かを判定する。ここでの「通信装置(A)から受信したテスト結果データが、受信側の通信装置(A)における予め定められた期待値を満たす」とは、受信側の通信装置(A)が、通信(A)のデータを問題のない時間範囲内(期待値の範囲内)で受信できることを意味する。
通信装置(B)は、通信装置(A)から受信したテスト結果データが、受信側の通信装置(A)における予め定められた期待値を満たすと判定した場合(ステップS2530にてYES)、制御をステップS2535に移す。そうでない場合(ステップS2530にてNO)、通信装置(B)は、制御をステップS2560に移す。
ステップS2535において、通信装置(B)は、自装置において、通信(A)に関する通信のテストを実行する。通信装置(B)は、当該テストの実行前に、第2のメモリー903の設定の変更と、第4のメモリー905の設定の変更とを実行し得る。通信装置(B)は、さらに、第1のメモリー902の設定の変更と、第3のメモリー904の設定の変更とを実行してもよい。
ステップS2525において得られるテスト結果データは、ステップS2515にて変更された設定を使用したテストにおいて、受信側の通信装置(A)における通信(A)の受信処理が期待値の範囲内で完了するか否かを示す。これに対して、ステップS2535において得られるテスト結果データは、ステップS2515にて変更された設定を使用したテストにおいて、送信側の通信装置(B)における通信(A)のデータの送信処理が期待値の範囲内で完了するか否かを示す。
ステップS2540において、通信装置(B)は、ステップS2535のテスト結果データが、送信側の通信装置(B)における予め定められた期待値を満たすか否かを判定する。ここでの「ステップS2535にて実行したテストのテスト結果データが、送信側の通信装置(B)における予め定められた期待値を満たす」とは、送信側の通信装置(B)が、通信(A)のデータを問題のない時間範囲内(期待値の範囲内)で送信できることを意味する。
通信装置(B)は、ステップS2535にて実行したテストのテスト結果データが、送信側の通信装置(B)における予め定められた期待値を満たすと判定した場合(ステップS2540にてYES)、制御をステップS2545に移す。そうでない場合(ステップS2540にてNO)、通信装置(B)は、制御をステップS2560に移す。
ステップS2545において、通信装置(B)は、通信装置(A),102Bのいずれのテスト結果も期待値を満たすことに基づいて、自装置の通信設定を変更する。すなわち、通信装置(B)は、ステップS2515にて変更した設定を正式に使用する設定としてメモリー303等に保存する。
ステップS2550において、通信装置(B)は、通信装置(A)に対して、設定変更を要求する通知を送信する。通信装置(A)は、当該通知を受信したことに基づいて、ステップS2515にて変更した設定を正式に使用する設定としてメモリー303等に保存する。
ステップS2555において、通信装置(B)は、他の全ての通信装置に、通信性能(成績)が予め定められた期待値未満の通信に関するテスト結果データ(テスト結果テーブル2400のレコード)の更新要求を送信する。例えば、ステップS2010〜S2550までの処理において、設定変更後の通信(A)が期待値を満たす場合、通信装置(B)は、他の全ての通信装置に、テスト結果テーブル2400から通信(A)のテスト結果データを削除するための更新要求を送信する。
ステップS2560において、通信装置(B)は、解決できなかった通信(通信性能が期待値未満の通信)のレポートを外部の機器に送信する。ある局面において、通信装置(B)は、コントローラー100またはシステムの管理者が使用する端末に当該レポートを送信してもよい。また、他の局面において、当該レポートは、テスト結果テーブル2400の各項目を含んでいてもよい。管理者は、当該レポートを参照することで、通信設定を修正することができる。ある局面において、各通信装置は、外部の機器からレポートの取得要求を受信したことに基づいて、メモリー303内のレポートを外部の機器に返信してもよい。
各通信装置は、テスト結果テーブル2400内の各レコードの通信に対して、上記のステップS2505〜S2560までの処理を繰り返し実行する。それにより、各通信装置は、修正可能な通信に関しては通信設定を更新し、修正不可能な通信に関してはレポートを外部の機器に送信し得る。
上記のフローチャートでは、送信側の通信装置(B)が受信側の通信装置(A)に対して各種処理を依頼しているが、通信装置間のテストの実現方法はこれに限られるものではない。他の局面において、受信側の通信装置(A)が送信側の通信装置(B)に各種処理を依頼してもよい。また、上記のフローチャートの処理は、全ての通信装置が実行し得る。
さらに他の局面において、実施の形態1〜実施の形態3は適宜組み合わせて実施され得る。例えば、通信装置は、稼働系1700AのネットワークPHY306を介して、図25のステップS2515,S2525,S2545における各種データを送受信してもよい。
以上説明したように、実施の形態3に従う複数の通信装置は、期待値を満たさない通信のテスト結果データを互いに共有し、当該テスト結果データに基づいて、テスト設定を変更して通信の再テストを実行する。当該機能により、複数の通信装置の各々は、システム全体として通信が期待値を満たすように自装置の通信設定を変更し得る。その結果、複数の通信装置の各々は、システムの管理者の通信テストの設定および再実行等の負担を減らすことができる。
100 コントローラー、101 エッジ機器、102 通信装置、103 ネットワークリソース、104 ゲートウェイサーバー、105 インターネット、106 クラウド環境、201A,201B スイッチ、300 通信処理部、300A,1700A 稼働系、300B,1700B 待機系、302 ユーザーロジック、303 メモリー、304 ネットワーク処理部、305 他のロジック、306 ネットワークPHY、400,1710 テスト回路、401 エッジインターフェイス制御回路、402 再構成制御回路、403 タイマー、404 テスト結果出力回路、405,1730 テスト制御回路、406 ネットワークインターフェイス制御回路、510 ネットワーク性能プロファイリング、501 エッジインターフェイステスト制御信号、502A,502D,1701 エッジ入力データ、502B エッジ入力データのミラー、502C エッジ入力模擬データ、503A,503D エッジ出力データ、503B エッジ出力データのミラー、504 ネットワークインターフェイステスト制御信号、505A,505D,1702 ネットワーク受信データ、505B ネットワーク受信データのミラー、505C ネットワーク受信模擬データ、506A,506D ネットワーク送信データ、506B ネットワーク送信データのミラー、511,1703 時刻データ、512,1705 テスト結果データ、513 テスト結果データパケット、601,701 入力信号選択回路、602,702 出力信号選択回路、603 エッジインターフェイスプロトコル変換回路、604,704 固定出力値生成回路、610,710 固定値信号、703,1303 ネットワークインターフェイスプロトコル変換回路、800 時刻データに関する情報、801 カウンター回路、802,2020 バス情報、901 テストコントローラー、902 第1のメモリー、903 第2のメモリー、904 第3のメモリー、905 第4のメモリー、906 第1のタイミング制御回路、907 第2のタイミング制御回路、908 第5のメモリー、909 第6のメモリー、910 第7のメモリー、911 第8のメモリー、912 テスト結果出力部、930 ライトイネーブル信号、940 テスト実行イネーブル信号、950 テスト結果出力制御信号、1101 エッジデータ取得要求、1102 エッジ取得データ、1103 機器A制御要求、1104,1105 制御データ、1201 データ取得要求、1202 応答データ、1301 パケット化回路、1302 テスト結果送信バッファ、1501 制御装置、1502 RAM、1503 入力インターフェイス、1504 出力インターフェイス、1505 外部機器インターフェイス、1506 通信インターフェイス、1507 記憶装置、1704,1804 LSI接続部の制御信号、1720A,1720B LSI接続部、1900,2100 接続制御部、2300 送信待ちキュー、2301 高優先度キュー、2302 低優先度キュー、2400 テスト結果テーブル、2401 番号、2402 送信機器、2403 受信機器、2404 最小期待時刻、2405 最大期待時刻、2406 実績値。

Claims (36)

  1. 2重化された通信処理部における稼働系である第1の通信処理部と、
    待機系の第2の通信処理部とを備え、
    前記第2の通信処理部は、
    構成変更指示を受信し、
    前記第2の通信処理部に、前記構成変更指示に基づく通信処理回路と、前記通信処理回路の性能をテストするテスト回路とを構成し、
    前記テスト回路は、前記第1の通信処理部の通信とは独立して、前記通信処理回路の入出力処理を監視し、前記通信処理回路の通信性能をテストする、装置。
  2. 前記通信処理回路は、第1および第2の通信回路を含み、
    前記テスト回路は、
    前記第1および第2の通信回路の外部機器に対する各接続をそれぞれ遮断し、
    前記第1および第2の通信回路に対する入力データを生成し、
    前記入力データに基づく前記第1および第2の通信回路からの出力データをそれぞれ取得し、
    前記第1および第2の通信回路におけるそれぞれの前記入力データおよび出力データに基づいて、前記通信処理回路の通信性能をテストする、請求項1に記載の装置。
  3. 前記通信処理回路は、第1および第2の通信回路を含み、
    前記テスト回路は、
    前記第1および第2の通信回路をそれぞれ外部機器に接続し、
    前記第1および第2の通信回路におけるそれぞれの入力データおよび出力データを監視し、
    前記第1および第2の通信回路におけるそれぞれの前記入力データおよび出力データに基づいて、前記通信処理回路の通信性能をテストする、請求項1に記載の装置。
  4. 前記テスト回路は、
    通信プロファイルを含み、
    前記通信プロファイルに基づいて時分割の前記入力データを生成し、
    時分割の前記入力データを前記通信処理回路に送信する、請求項2に記載の装置。
  5. 前記テスト回路は、
    タイマーと、
    前記通信処理回路の各々の通信処理ごとの実行時刻の期待値とを保有し、
    前記通信処理回路の通信処理の送信時または受信時のタイムスタンプを取得し、
    前記タイムスタンプおよび前記期待値に基づいて、前記通信処理回路の通信処理ごとの通信性能を算出し、
    前記通信処理回路の通信処理ごとの通信性能を含むテスト結果を他の装置に送信する、請求項4に記載の装置。
  6. 前記テスト結果は、前記通信処理回路の通信処理ごとの通信対象の情報と、前記通信性能とを関連付けた情報を含む、請求項5に記載の装置。
  7. 前記第2の通信処理部は、前記装置を管理するコントローラーから、前記構成変更指示を受信することで、前記第2の通信処理部の内部構成を変更して、前記通信処理回路および前記テスト回路を構成する、請求項1〜6のいずれかに記載の装置。
  8. 前記第1および第2の通信処理部は、再構成可能な半導体装置をそれぞれ含み、
    前記第2の通信処理部は、前記構成変更指示に基づいて、前記半導体装置の構成を変更する、請求項1〜7のいずれかに記載の装置。
  9. 前記構成変更指示は、前記半導体装置の構成、前記第2の通信処理部で実行されるプログラムおよび前記第2の通信処理部の処理データの通信経路の一部または全てを変更する指示を含む、請求項8に記載の装置。
  10. 前記第2の通信処理部は、前記テスト回路による前記通信処理回路のテスト完了後に、前記第1および第2の通信処理部を、それぞれ前記テスト回路を含まず、前記通信処理回路を含む構成に変更する、請求項1〜9のいずれかに記載の装置。
  11. 前記第1の通信処理部および前記第2の通信処理部の間でデータを交換するための接続部をさらに備え、
    前記テスト回路は、前記接続部を介して、前記テスト結果を前記第1の通信処理部に転送し、
    前記第1の通信処理部は、前記テスト結果を他の装置に送信する、請求項5に記載の装置。
  12. 前記テスト回路は、
    前記接続部を介して、前記第1の通信処理部の入力データと、前記第1の通信処理部の通信処理の実行時のタイムスタンプとを取得し、
    前記通信プロファイルに基づいて生成された前記入力データの代わりに、前記第1の通信処理部の入力データと、前記第1の通信処理部の通信処理の実行時のタイムスタンプとに基づいて、前記通信処理回路の通信性能をテストする、請求項11に記載の装置。
  13. 前記第1の通信処理部は、前記第1の通信処理部の通信負荷に基づいて、前記テスト結果の送信タイミングを制御する、請求項12に記載の装置。
  14. 前記第1の通信処理部は、
    前記テスト結果を低優先度の送信キューに格納し、
    他のデータを高優先度の送信キューに格納し、
    各送信キューの優先度に基づいて、前記テスト結果と、前記他のデータとを送信する、請求項13に記載の装置。
  15. 前記第2の通信処理部は、
    1または複数の他の装置の前記第2の通信処理部と、お互いのテスト結果を交換し、各装置間の通信のテスト結果リストを生成し、
    前記テスト結果リストが、送信側が前記装置であり、かつ、前記期待値未満の成績の通信を含んでいたことに基づいて、受信側の装置に対して、前記通信プロファイルを変更し、受信側における前記通信処理回路の通信性能のテストの再実行を要求する、請求項5に記載の装置。
  16. 前記第2の通信処理部は、
    前記受信側の装置から、前記受信側における前記通信処理回路の通信性能のテストの結果を受信し、
    受信した前記テストの結果が前記期待値を満たすことに基づいて、前記装置の前記通信プロファイルを修正して、送信側における前記通信処理回路の通信性能のテストを再び実行し、
    前記送信側における前記通信処理回路の通信性能のテストの結果が前記期待値を満たすことに基づいて、前記装置の通信設定を変更する、請求項15に記載の装置。
  17. 前記第2の通信処理部は、前記受信側における前記通信処理回路の通信性能のテストのテスト結果、または、前記送信側における前記通信処理回路の通信性能のテストのテスト結果のいずれかが前記期待値未満であることに基づいて、前記期待値未満の性能の通信のレポート情報を外部の機器に送信する、請求項16に記載の装置。
  18. 前記第2の通信処理部は、前記受信側における前記通信処理回路の通信性能のテストの結果、および、前記受信側における前記通信処理回路の通信性能のテストの結果のいずれもが前記期待値以上であることに基づいて、前記期待値以上の性能の通信の設定変更情報を前記1または複数の他の装置に送信する、請求項16に記載の装置。
  19. 通信機能を備える装置をテストする方法であって、
    2重化された通信処理部における稼働系である第1の通信処理部において、通常の通信処理を行なうステップと、
    前記通信処理部における待機系である第2の通信処理部において、構成変更指示を受信するステップと、
    前記第2の通信処理部に、前記構成変更指示に基づく通信処理回路と、前記通信処理回路の性能をテストするテスト回路とを構成するステップと、
    前記テスト回路により、前記第1の通信処理部の通信とは独立して、前記通信処理回路の入出力処理を監視し、前記通信処理回路の通信性能をテストするステップとを含む、方法。
  20. 前記通信処理回路に含まれる第1および第2の通信回路の外部機器に対する各接続をそれぞれ遮断するステップと、
    前記第1および第2の通信回路に対する入力データを生成するステップと、
    前記入力データに基づく前記第1および第2の通信回路からの出力データをそれぞれ取得するステップと、
    前記第1および第2の通信回路におけるそれぞれの前記入力データおよび出力データに基づいて、前記通信処理回路の通信性能をテストするステップとをさらに含む、請求項19に記載の方法。
  21. 前記通信処理回路に含まれる第1および第2の通信回路をそれぞれ外部機器に接続するステップと、
    前記第1および第2の通信回路におけるそれぞれの入力データおよび出力データを監視するステップと、
    前記第1および第2の通信回路におけるそれぞれの前記入力データおよび出力データに基づいて、前記通信処理回路の通信性能をテストするステップとをさらに含む、請求項19に記載の方法。
  22. 通信プロファイルに基づいて時分割の前記入力データを生成するステップと、
    時分割の前記入力データを前記通信処理回路に送信するステップとを含む、請求項20に記載の方法。
  23. 前記通信処理回路の通信処理の送信時または受信時のタイムスタンプを取得するステップと、
    前記通信処理回路の各々の通信処理ごとの実行時刻の期待値を参照するステップと、
    前記タイムスタンプおよび前記期待値に基づいて、前記通信処理回路の通信処理ごとの通信性能を算出するステップと、
    前記通信処理回路の通信処理ごとの通信性能を含むテスト結果を他の装置に送信するステップとをさらに含む、請求項22に記載の方法。
  24. 前記テスト結果は、前記通信処理回路の通信処理ごとの通信対象の情報と、前記通信性能とを関連付けた情報を含む、請求項23に記載の方法。
  25. 前記装置を管理するコントローラーから、前記構成変更指示を受信することで、前記第2の通信処理部の内部構成を変更して、前記通信処理回路および前記テスト回路を構成するステップをさらに含む、請求項19〜24のいずれかに記載の方法。
  26. 前記構成変更指示に基づいて、前記第1および第2の通信処理部に含まれる各再構成可能な半導体装置の構成を変更するステップをさらに含む、請求項19〜25のいずれかに記載の方法。
  27. 前記構成変更指示は、前記半導体装置の構成、前記第2の通信処理部で実行されるプログラムおよび前記第2の通信処理部の処理データの通信経路の一部または全てを変更する指示を含む、請求項26に記載の方法。
  28. 前記テスト回路による前記通信処理回路のテスト完了後に、前記第1および第2の通信処理部を、それぞれ前記テスト回路を含まず、前記通信処理回路を含む構成に変更するステップをさらに含む、請求項19〜27のいずれかに記載の方法。
  29. 前記テスト結果を前記第1の通信処理部に転送するステップと、
    前記第1の通信処理部において、前記テスト結果を他の装置に送信するステップとをさらに含む、請求項23に記載の方法。
  30. 前記第1の通信処理部の入力データと、前記第1の通信処理部の通信処理の実行時のタイムスタンプとを前記第2の通信処理部に転送するステップと、
    前記通信プロファイルに基づいて生成された前記入力データの代わりに、前記第1の通信処理部の入力データと、前記第1の通信処理部の通信処理の実行時のタイムスタンプとに基づいて、前記通信処理回路の通信性能をテストするステップとをさらに含む、請求項29に記載の方法。
  31. 前記第1の通信処理部の通信負荷に基づいて、前記第1の通信処理部における前記テスト結果の送信タイミングを制御するステップをさらに含む、請求項30に記載の方法。
  32. 前記テスト結果を低優先度の送信キューに格納するステップと、
    他のデータを高優先度の送信キューに格納するステップと、
    各送信キューの優先度に基づいて、前記テスト結果と、前記他のデータとを送信するステップとをさらに含む、請求項31に記載の方法。
  33. 1または複数の他の装置の前記第2の通信処理部と、お互いのテスト結果を交換し、各装置間の通信のテスト結果リストを生成するステップと、
    前記テスト結果リストが、送信側が前記装置であり、かつ、前記期待値未満の成績の通信を含んでいたことに基づいて、受信側の装置に対して、前記通信プロファイルを変更し、受信側における前記通信処理回路の通信性能のテストの再実行を要求するステップとをさらに含む、請求項23に記載の方法。
  34. 前記受信側の装置から、前記受信側における前記通信処理回路の通信性能のテストの結果を受信するステップと、
    受信した前記テストの結果が前記期待値を満たすことに基づいて、前記装置の前記通信プロファイルを修正して、送信側における前記通信処理回路の通信性能のテストを再実行するステップと、
    前記送信側における前記通信処理回路の通信性能のテストの結果が前記期待値を満たすことに基づいて、前記装置の通信設定を変更するステップとをさらに含む、請求項33に記載の方法。
  35. 前記受信側における前記通信処理回路の通信性能のテストの結果、または、前記送信側における前記通信処理回路の通信性能のテストの結果のいずれかが前記期待値未満であることに基づいて、前記期待値未満の性能の通信のレポート情報を外部の機器に送信するステップをさらに含む、請求項34に記載の方法。
  36. 前記受信側における前記通信処理回路の通信性能のテストの結果、および、前記送信側における前記通信処理回路の通信性能のテストの結果のいずれもが前記期待値以上であることに基づいて、前記期待値以上の性能の通信の設定変更情報を前記1または複数の他の装置に送信するステップをさらに含む、請求項34に記載の方法。
JP2020138662A 2019-08-22 2020-08-19 テスト機能を持つ装置およびそのテストの方法 Pending JP2021036425A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019151963 2019-08-22
JP2019151963 2019-08-22

Publications (1)

Publication Number Publication Date
JP2021036425A true JP2021036425A (ja) 2021-03-04

Family

ID=74716620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020138662A Pending JP2021036425A (ja) 2019-08-22 2020-08-19 テスト機能を持つ装置およびそのテストの方法

Country Status (1)

Country Link
JP (1) JP2021036425A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024005497A1 (ko) * 2022-06-30 2024-01-04 엘지이노텍 주식회사 테스트 장치 및 이를 포함하는 테스트 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024005497A1 (ko) * 2022-06-30 2024-01-04 엘지이노텍 주식회사 테스트 장치 및 이를 포함하는 테스트 시스템

Similar Documents

Publication Publication Date Title
CN108509210B (zh) 自动更新基本输入输出系统的系统与方法
US8019832B2 (en) Network core access architecture
US9330227B1 (en) Testbench builder, system, device and method including a dispatcher
US11048569B1 (en) Adaptive timeout mechanism
US9904608B2 (en) Filtering event log entries
US20170293443A1 (en) Providing service address space for diagnostics collection
US9665453B2 (en) Launch vehicle testing system
US11507718B1 (en) Chip verification system and verification method therefor
CN113141281B (zh) 一种fpga加速器、网络参数测量系统、方法及介质
JP2010500807A (ja) 電子装置及び通信制御方法
CN108833164B (zh) 服务器控制方法、装置、电子设备及存储介质
Kölsch et al. Hardware-in-the-loop simulation for Internet of Things scenarios
JP2018535580A (ja) テストカバレッジを増大するためのポイントツーポイント相互接続についての自己エラーインジェクション技法
JP2021036425A (ja) テスト機能を持つ装置およびそのテストの方法
US10949321B1 (en) Operational management of a device
US11881982B2 (en) Transaction-based messaging and logging infrastructure for networking systems and computing devices
EP3404898B1 (en) Debug device for debugging a sensor device, and a debug system comprising same
JP2016058835A (ja) 中継システムおよびスイッチ装置
CN115687012A (zh) 一种总线监测模块、监测方法和相关设备
CN115526142A (zh) 以太网降速方法、系统、介质及fpga验证平台
US8966051B2 (en) Technique for monitoring component processing
Ha et al. An FPGA-based Unidirectional Gateway Proposal for OT-IT Network Separation to Secure Industrial Automation Systems
US20200348944A1 (en) Acceleration Module Supporting Controlled Configuration of a Programmable Logic Device
CN111813621A (zh) 基于Flume数据中台的数据处理方法、装置、设备及介质
US9081743B2 (en) Communication system and communicaton method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230424

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240515