JP2022112559A - プログラマブルデバイス、システム、検証支援方法、およびプログラム - Google Patents

プログラマブルデバイス、システム、検証支援方法、およびプログラム Download PDF

Info

Publication number
JP2022112559A
JP2022112559A JP2021008389A JP2021008389A JP2022112559A JP 2022112559 A JP2022112559 A JP 2022112559A JP 2021008389 A JP2021008389 A JP 2021008389A JP 2021008389 A JP2021008389 A JP 2021008389A JP 2022112559 A JP2022112559 A JP 2022112559A
Authority
JP
Japan
Prior art keywords
data
programmable device
communication
internal data
fpga
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.)
Granted
Application number
JP2021008389A
Other languages
English (en)
Other versions
JP7048776B1 (ja
Inventor
保光 筒井
Yasumitsu Tsutsui
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 JP2021008389A priority Critical patent/JP7048776B1/ja
Application granted granted Critical
Publication of JP7048776B1 publication Critical patent/JP7048776B1/ja
Publication of JP2022112559A publication Critical patent/JP2022112559A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Logic Circuits (AREA)

Abstract

【課題】 通信用のインターフェースで接続された複数のプログラマブルデバイスの検証の容易化を図る。【解決手段】 プログラマブルデバイス10は、生成部101と取得部102を有する。第1プログラマブルデバイスには、内部のデータを通信用のデータに変換する処理と、通信用のデータを内部のデータに変換する処理と、の少なくともいずれかを行う第1変換部が構成される。第1プログラマブルデバイスと通信用のインターフェースを介して接続される第2プログラマブルデバイスには、内部のデータを通信用のデータに変換する処理と、通信用のデータを内部のデータに変換する処理と、の少なくともいずれかを行う第2変換部が構成される。生成部101は、第1変換部の動作状態を表す第1信号と第2変換部の動作状態を表す第2信号に基づいて、トリガ信号を生成する。取得部102は、トリガ信号に応じて、各内部のデータを取得する。【選択図】 図1

Description

本発明は、プログラマブルデバイスなどに関する。
プログラマブルデバイスに形成される回路の機能を評価する技術がある。特許文献1に記載の技術では、製品用のFPGAに形成された回路の論理検証を行うため、観測用のFPGAをシリアルインターフェースにより製品用のFPGA(Field-Programmble Gate Array)に接続し、製品用のFPGAの動作と等価の動作を観測用のFPGAによって検証する。
また、例えば、特許文献2に記載の技術では、プログラマブルデバイスにおいて、パラレルデータをシリアルデータに変換するシリアライザと、シリアルデータをパラレルデータに変換するデシリアライザと、を評価する。
特開2013-080332号公報 特開2010-212771号公報
特許文献1,2には、プログラマブルデバイス単体の検証を行う技術が記載されている。通信用のインターフェースによって接続される複数のプログラマブルデバイスを用いたシステムに対する検証を行う場合がある。このような場合、各プログラマブルデバイス単体によって検証を行うと、各プログラマブルデバイスのタイミングによってプログラマブルデバイスのデータの取得が行われる。このため、システムに対する検証において、複数のプログラマブルデバイスにおいて同一のタイミングによってデータが取得できず、検証が困難となる問題点がある。
本発明の目的の一例は、通信用のインターフェースで接続される複数のプログラマブルデバイスの検証の容易化を図るプログラマブルデバイスなどを提供することにある。
本発明の一態様におけるプログラマブルデバイスは、第1プログラマブルデバイスに構成された第1変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第1変換手段の動作を表す第1信号と、前記第1プログラマブルデバイスと通信用のインターフェースを介して接続される第2プログラマブルデバイスに構成された第2変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第2変換手段の動作を表す第2信号と、に基づいて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得するタイミングを制御する信号を生成する生成手段と、生成された前記信号に応じて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得する取得手段と、を備える。
本発明の一態様におけるシステムは、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第1変換手段が構成された第1プログラマブルデバイスと、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第2変換手段が構成された第2プログラマブルデバイスと、第3プログラマブルデバイスと、を備え、前記第3プログラマブルデバイスは、前記第1変換手段の動作状態を表す第1信号と、前記第2変換手段の動作状態を表す第2信号と、に基づいて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得するタイミングを制御する信号を生成する生成手段と、生成された前記信号に応じて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得する取得手段と、を備える。
本発明の一態様における検証支援方法は、プログラマブルデバイスが、第1プログラマブルデバイスに構成された第1変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第1変換手段の動作を表す第1信号と、前記第1プログラマブルデバイスと通信用のインターフェースを介して接続される第2プログラマブルデバイスに構成された第2変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第2変換手段の動作を表す第2信号と、に基づいて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得するタイミングを制御する信号を生成し、生成された前記信号に応じて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得する。
本発明の一態様におけるプログラムは、第1プログラマブルデバイスに構成された第1変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第1変換手段の動作を表す第1信号と、前記第1プログラマブルデバイスと通信用のインターフェースを介して接続される第2プログラマブルデバイスに構成された第2変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第2変換手段の動作を表す第2信号と、に基づいて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得するタイミングを制御する信号を生成し、生成された前記信号に応じて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得する、処理をプログラマブルデバイスに実行させる。
本発明によれば、複数のプログラマブルデバイスの検証の容易化を図る。
実施の形態1にかかるシステムの一構成例を示すブロック図である。 実施の形態1にかかるプログラマブルデバイスの一動作例を示すフローチャートである。 実施の形態2にかかるシステムの構成例を示すブロック図である。 キャプチャ例を示す説明図である。 実施の形態2にかかるシステムの一動作例を示すフローチャートである。 実施の形態3にかかるシステムの一例を示す説明図である。 実施の形態3にかかるシステムの一動作例を示すフローチャートである。 システムとコンピュータ装置との接続例を示す説明図である。
以下に図面を参照して、本発明にかかるプログラマブルデバイス、システム、検証支援方法、およびプログラムの実施の形態を詳細に説明する。本実施の形態は、開示の技術を限定するものではない。ここで、プログラマブルデバイス(プログラマブルロジックデバイス)とは、製造後に購入者や設計者が構成を設定できる集積回路である。本実施の形態では、プログラマブルデバイスの種類は特に限定されない。プログラマブルデバイスとしては、例えば、FPGAなどが挙げられる。
(実施の形態1)
図1は、実施の形態1にかかるシステムの一構成例を示すブロック図である。プログラマブルデバイス10は、第1プログラマブルデバイスのデータと、第2プログラマブルデバイスのデータと、を同一のタイミングで取り込む。第1プログラマブルデバイスと、第2プログラマブルデバイスとは、例えば、通信用のインターフェースによって接続される。通信用のインターフェースとしては、シリアルインターフェースが挙げられる。プログラマブルデバイス10は、第1プログラマブルデバイスおよび第2プログラマブルデバイスの少なくともいずか一方であってもよい。もしくは、プログラマブルデバイス10は、第1プログラマブルデバイスおよび第2プログラマブルデバイスと異なっていてもよい。
一般に、第1プログラマブルデバイスは、データの送信時に、内部のデータを通信用のデータに変換する処理と、データの受信時に、受信した通信用のデータを内部のデータに変換する処理と、の少なくともいずれかを行う第1変換部を有する。通信用のインターフェースがシリアルインターフェースの場合、第1変換部は、例えば、内部用のデータとしてのパラレルデータを通信用のデータとしてのシリアルデータに変換する処理とシリアルデータをパラレルデータに変換する処理と、の少なくともいずれかを行う。シリアルインターフェースの場合、第1変換部は、例えば、パラレルデータをシリアルデータに変換するシリアライザと、シリアルデータをパラレルデータに変換するデシリアライザと、の少なくともいずれか一方の機能を有する。第1信号は、第1変換部の動作状態を示す。具体的に、第1信号は、例えば、第1変換部の動作を制御する制御信号(第1制御信号)であってもよい。
一般に、第2プログラマブルデバイスは、データの送信時に、内部のデータを通信用のデータに変換する処理と、データの受信時に、受信した通信用のデータを内部のデータに変換する処理と、の少なくともいずれかを行う第2変換部を有する。通信用のインターフェースがシリアルインターフェースの場合、第2変換部は、内部のデータとしてのパラレルデータを通信用のデータとしてのシリアルデータに変換する処理とシリアルデータをパラレルデータに変換する処理と、の少なくともいずれかを行う。第2変換部は、例えば、パラレルデータをシリアルデータに変換するシリアライザと、シリアルデータをパラレルデータに変換するデシリアライザと、の少なくともいずれか一方の機能を有する。第2信号は、第2変換部の動作状態を示す。具体的に、第2信号は、例えば、第2変換部の動作を制御する制御信号(第2制御信号)であってもよい。
通信用のインターフェースがシリアルインターフェースの場合を用いてより詳細に説明する。例えば、第1プログラマブルデバイスから第2プログラマブルデバイスへシリアルデータが送信される場合、第1変換部は、第1プログラマブルデバイスの内部のパラレルデータをシリアルデータに変換する。第2変換部は、第1プログラマブルデバイスからのシリアルデータをパラレルデータに変換する。また、例えば、第2プログラマブルデバイスから第1プログラマブルデバイスへシリアルデータが送信される場合、第2変換部は、第2プログラマブルデバイスの内部のパラレルデータをシリアルデータに変換する。第1変換部は、第2プログラマブルデバイスからのシリアルデータをパラレルデータに変換する。
プログラマブルデバイス10は、生成部101と、取得部102と、を有する。生成部101と、取得部102とは、いずれもプログラマブルデバイス10に構成される回路である。もしくは、生成部101と、取得部102とは、プログラマブルデバイス10に構成されたプロセッサによって実現されてもよい。より具体的に、例えば、プログラマブルデバイス10に構成されたプロセッサは、プログラマブルデバイス10の記憶部などに記憶されたプログラムをロードする。プロセッサは、プログラムにコーディングされている各処理を実行する。これにより、生成部101と、取得部102と、の処理が実現されてもよい。
生成部101は、第1信号と第2信号に基づいて、第1プログラマブルデバイスの内部のデータと、第2プログラマブルデバイスの内部のデータと、を取得するタイミングを制御する信号を生成する。この信号をトリガ信号と呼ぶ。具体的に、生成部101は、第1信号と第2信号に基づいて、転送が可能な状態であることを特定する。シリアルインターフェースの場合、生成部101は、第1信号と第2信号とに基づいて、シリアル転送が可能な状態において第1プログラマブルデバイスのパラレルデータと、第2プログラマブルデバイスのパラレルデータとを取得可能とするトリガ信号を生成する。シリアル転送が可能な状態とは、例えば、第1変換部および第2変換部の一方がパラレルデータからシリアルデータへ変換する送信をエラーが無く可能で、かつ、第1変換部および第2変換部の他方がシリアルデータからパラレルデータへ変換する受信をエラーが無く可能である状態を指す。
そして、取得部102は、トリガ信号に応じて、第1プログラマブルデバイスの内部のデータと、第2プログラマブルデバイスの内部のデータと、を取得する。また、取得部102は、トリガ信号に応じて、さらに、第1信号と、第2信号と、の少なくともいずれかを取得してもよい。
シリアルインターフェースの場合を例に挙げてより具体的に説明する。取得部102は、トリガ信号が各波形データを取得させることを示す場合、第1プログラマブルデバイスのパラレルデータ、第1信号、第2プログラマブルデバイスのパラレルデータ、および第2信号をプログラマブルデバイス10の記憶部に記憶させる。これにより、記憶部には、例えば、各波形データが記憶される。記憶部の種類は、プログラマブルデバイス10の種類、機能、性能などに応じて種々異なる。このため、記憶部の種類は、特に限定されない。
図2は、実施の形態1にかかるプログラマブルデバイス10の一動作例を示すフローチャートである。ここでは、通信用のインターフェースがシリアルインターフェースの場合を用いて説明する。生成部101は、第1信号と第2信号とに基づいて、トリガ信号を生成する(ステップS101)。トリガ信号は、前述のように、第1プログラマブルデバイスのパラレルデータと、第2プログラマブルデバイスのパラレルデータと、を取得するタイミングを制御する信号である。そして、取得部102は、トリガ信号に応じて、第1プログラマブルデバイスのパラレルデータと、第2プログラマブルデバイスのパラレルデータと、を取得する(ステップS102)。ステップS102において、取得部102は、トリガ信号に応じて、さらに、第1信号および第2信号を取得してもよい。
実施の形態1についての効果を説明する。プログラマブルデバイス10は、複数のプログラマブルデバイス10の各々についての内部のデータと通信用のデータとを変換する変換部の動作状態を示す信号に基づいて、トリガ信号を生成する。そしてプログラマブルデバイス10は、トリガ信号に応じて、各プログラマブルデバイス10の内部のデータを取得する。これにより、プログラマブルデバイス10は、複数のプログラマブルデバイス10において同一のタイミングによって内部のデータを取得することができる。したがって、プログラマブルデバイス10によれば、より効率的に検証を行うことができ、検証の容易化を図ることができる。
また、複数のプログラマデバイス間でシリアルインターフェースを介してデータ転送が行われる場合がある。シリアルデータ転送路を通るデータは高速のため、ロジカルアナライザ等のプローブを当てて直接シリアルデータ転送路の各信号線を観測することは困難である。そこで、プログラマブルデバイス10は、複数のプログラマブルデバイスの各々についてのパラレルデータとシリアルデータとを変換する変換部の動作状態を示す信号に基づいて、トリガ信号を生成する。そして、プログラマブルデバイス10は、トリガ信号に応じて、シリアルインターフェースで接続された各プログラマブルデバイスのパラレルデータを取得する。これにより、プログラマブルデバイス10は、複数のプログラマブルデバイスがシリアルインターフェースによって接続されたシステムの検証の容易化を図ることができる。
実施の形態1については上述した例に限られず、種々変更可能である。以上で、実施の形態1の節身を省略する。
(実施の形態2)
つぎに、実施の形態2について図面を参照して詳細に説明する。実施の形態2では、実施の形態1で説明したプログラマデバイス10の機能を基本構成として、プログラマブルデバイスが第1プログラマブルデバイスと第2プログラマブルデバイスのいずれか一方である例を説明する。実施の形態2では、プログラマブルデバイスとして、FPGAを例に挙げる。また、実施の形態2では、通信インターフェースがシリアルインターフェースの場合を例に挙げて説明する。以下、本実施の形態2の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
図3は、実施の形態2にかかるシステムの構成例を示すブロック図である。システム2は、第1FPGA20と、シリアルインターフェースによって第1FPGA20と接続される第2FPGA21と、を有する。システム2は、例えば、第1FPGA20と、第2FPGA21と、を1つのプリント基板上に設けてもよい。
図3において、第1FPGA20が、実施の形態1で説明したプログラマブルデバイス10の機能を基本構成として含む。このため、第1FPGA20は、変換部(第1変換部)200と、生成部201と、取得部202と、を有する。生成部201は、実施の形態1で説明した生成部101の機能を基本構成として含む。取得部202は、実施の形態1で説明した取得部102の機能を基本構成として含む。第2FPGA21は、変換部(第2変換部)210を有する。
第1FPGA20と、第2FPGA21とは、シリアルデータ転送路2001と、デバッグデータ転送路2002と、によって接続される。図3において、シリアルデータ転送路2001は、シリアルデータを転送するための転送路である。図示しないが、シリアルデータ転送路2001には、シリアルデータ線の他に、クロック信号線などが含まれる。デバッグデータ転送路2002は、例えば、第2FPGA21の変換部の動作状態を示す第2信号と、パラレルデータと、を第1FPGA20へ転送するための転送路である。
なお、各FPGAの出力端子、入力端子などの端子、記憶部、その他の機能部などは、図示省略する。
変換部200は、通信用のデータであるシリアルデータと、内部のデータであるパラレルデータとを相互に変換する回路である。変換部200は、例えば、SerDes(SERilizer/DESerializer)である。変換部200は、IP(Intellectual Property)コアのように予め用意されたコンフィギュレーションデータによって第1FPGA20内に構成されてもよい。図3において、変換部200に入力されるシリアルデータ、および変換部200から出力されるシリアルデータをCと表す。また、図3において、変換部200に入力されるパラレルデータ、および変換部200から出力されるパラレルデータをDと表す。具体的に、図3において、変換部200は、第1FPGA20のパラレルデータDをシリアルデータCに変換する。もしくは、変換部200は、シリアルデータCをパラレルデータDに変換する。
また、変換部200は、変換部200の動作状態を示す第1信号を出力可能な外部端子を有する。変換部200の動作状態を示す第1信号は、生成部201および取得部202に入力される。実施の形態1で説明したように、第1信号は、変換部200の動作を制御する制御信号であってもよい。ここで、第1信号を第1制御信号と呼ぶ。図3において、第1制御信号はFで表す。また、パラレルデータDは、取得部202に入力される。
変換部210は、通信用のデータであるシリアルデータと、内部のデータであるパラレルデータとを相互に変換する回路である。変換部210は、例えば、SerDesである。変換部210は、IPコアのように予め用意されたコンフィギュレーションデータによって第2FPGA21内に構成されてもよい。図3において、変換部210に入力されるシリアルデータもしくは変換部210から出力されるシリアルデータをBと表す。また、図3において、変換部210に入力されるパラレルデータもしくは変換部210から出力されるパラレルデータをAと表す。変換部210は、第2FPGA21のパラレルデータAをシリアルデータBに変換する。もしくは、変換部210は、シリアルデータBをパラレルデータAに変換する。
また、変換部210は、変換部210の動作状態を示す第2信号を出力可能な外部端子を有する。変換部210の動作状態を示す第2信号は、前述のデバッグデータ転送路2002を介して生成部201および取得部202に入力される。実施の形態1で説明したように、第2信号は、変換部200の動作を制御する制御信号であってもよい。ここで、第2信号を第2制御信号と呼ぶ。図3において、第2信号はEで表す。また、パラレルデータは、前述のデバッグデータ転送路2002を介して、取得部202に入力される。
生成部201は、第1制御信号と、第2FPGA21からの第2制御信号と、に基づいて、トリガ信号を生成する。具体的に、例えば、生成部201は、第1制御信号と、第2FPGA21からの第2制御信号と、に基づいて、第1FPGA20と第2FPGA21との間のシリアル転送が可能な状態であることを特定する。シリアル転送が可能な状態とは、例えば、変換部200および変換部210の一方がパラレルデータからシリアルデータへ変換する送信をエラーが無く可能で、かつ、変換部200および変換部210の他方がシリアルデータからパラレルデータへ変換する受信をエラーが無く可能である状態を指す。そして、生成部201は、第1FPGA20のパラレルデータDおよび第2FPGA21のパラレルデータAを、シリアル転送が可能な状態において取得可能とするトリガ信号を生成する。図3において、トリガ信号をGと表す。
取得部202は、トリガ信号Gに応じて、第1FPGA20のパラレルデータDおよび第1制御信号Fと、第2FPGA21のパラレルデータAおよび第2制御信号Eと、を取得する。具体的に、取得部202は、トリガ信号に応じて、第1FPGA20のパラレルデータDおよび第1制御信号Fと、第2FPGA21のパラレルデータAおよび第2制御信号Eと、を記憶部に記憶させる。これにより、記憶部には、信号の波形データが記憶される。なお、取得部202は、トリガ信号Gに応じて、さらに、他のデータを取得してもよい。例えば、他のデータとしては、各プログラマブルデバイスに構成された機能部で用いられるデータ、クロックデータなどが挙げられる。
図4は、キャプチャ例を示す説明図である。パラレルデータAと、パラレルデータDと、第1制御信号Fと、第2制御信号Fと、がキャプチャされた例である。図4において、横軸は、時間を示す。
これにより、1台のFPGA(第1FPGA20)のデバッグ機能を用いて、第1FPGA20は、同一のタイミングで、複数のFPGAの各々のパラレルデータをキャプチャすることができる。なお、デバッグ機能とは、FPGA内部の各波形データをキャプチャ(保存)して検証するための機能である。検証者は、各FPGAのデバック機能を用いて個々のFPGAのトリガでキャプチャした波形データを加工してデータを整理するような作業を行わなくてよい。したがって、デバッグ機能を有するFPGAは、検証の容易化を図ることができる。
図5は、実施の形態2にかかるシステム2の一動作例を示すフローチャートである。変換部200は、第1制御信号Fに基づいて、パラレルデータDとシリアルデータCとを変換する(ステップS211)。また、変換部210は、第2制御信号Eに基づいて、パラレルデータAとシリアルデータBとを変換する(ステップS221)。
生成部201は、第1制御信号Fと第2制御信号Eとに基づいて、トリガ信号Gを生成する(ステップS201)。そして、取得部202は、トリガ信号Gに応じて、パラレルデータDおよび第1制御信号Fと、パラレルデータAおよび第2制御信号Eを取得する(ステップS202)。
つぎに、実施の形態2の効果を説明する。第1FPGA20が、第1FPGA20および第2FPGA21の各々の変換部の動作状態を示す信号に基づいて、トリガ信号を生成する。そして、第1FPGA20は、トリガ信号に応じて、第1FPGA20のパラレルデータと第2FPGA21のパラレルデータとを取得する。これにより、第1FPGA20は、同一のタイミングによって第1FPGA20および第2FPGA21の内部データを取得することができる。このように、複数のFPGAを有するシステム2において一つのFPGAのデバッグ機能に集約して検証を行うことで、作業効率の向上を図ることができる。第1FPGA20のように通信インターフェースによって接続されるFPGAのデバッグ機能を利用することにより、検証用に別途FPGAを用意することなく、複数のFPGAの検証を行うことができる。
実施の形態1と同様に、第1FPGA20は、さらに、生成されたトリガ信号に応じて、さらに、変換部201の動作状態を示す第1制御信号と、変換部210の動作状態を示す第2制御信号と、を取得する。これにより、検証者は、各変換部の動作状態を識別できる。したがって、第1FPGA20によれば、より、検証の容易化を図ることができる。
実施の形態2については上述した例に限られず、種々変更可能である。
(実施の形態3)
つぎに、実施の形態3について図面を参照して詳細に説明する。実施の形態3では、実施の形態1で説明したプログラマデバイス10の機能部を基本構成として含むプログラマブルデバイスが、第1プログラマブルデバイスおよび第2プログラマブルデバイスと異なる例を説明する。実施の形態3では、プログラマブルデバイスとして、FPGAを例に挙げる。また、実施の形態3では、通信インターフェースがシリアルインターフェースの場合を例に挙げて説明する。以下、本実施の形態3の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
図6は、実施の形態3にかかるシステムの一例を示す説明図である。システム3は、第1FPGA31と、第2FPGA32と、第3FPGA30と、を有する。システム3は、例えば、第1FPGA31と、第2FPGA32と、第3FPGA30と、を1つのプリント基板上に設けてもよい。第3FPGA30が、デバック機能を有する。図6において、第1FPGA31は、変換部310を有する。第2FPGA32は、変換部320を有する。第3FPGA30は、実施の形態1で説明したプログラマブルデバイス10の機能を基本構成として含む。第3FPGA30は、生成部301と、取得部302と、を有する。生成部301は、実施の形態1で説明した生成部101の機能を基本構成として含む。また、取得部302は、実施の形態1で説明した取得部102の機能を基本構成として含む。
第1FPGA31と、第2FPGA32とは、シリアルデータ転送路3001によって接続される。図6において、シリアルデータ転送路3001は、シリアルデータを転送するための転送路である。図示しないが、シリアルデータ転送路3001には、シリアルデータ線の他に、クロック信号線などが含まれる。
デバッグデータ転送路3002-1は、第1制御信号Fと、パラレルデータDと、を第3FPGA30へ転送するための転送路である。なお、デバッグデータ転送路3002-1は、さらに、他のデータを第3FPGA30へ転送してもよい。また、デバッグデータ転送路3002-2は、第2制御信号Eと、パラレルデータAと、を第3FPGA30へ転送するための転送路である。なお、デバッグデータ転送路3002-2は、さらに、他のデータを第3FPGA30へ転送してもよい。
ここで、デバッグデータ転送路3002-1と、デバッグデータ転送路3002-2と、第3FPGA30とは、システム3から着脱可能な形態であってもよい。
変換部310は、実施の形態2で説明した変換部200の機能と同じでよく、詳細な説明を省略する。また、変換部320は、実施の形態2で説明した変換部210の機能と同じでよく、詳細な説明を省略する。
生成部301は、実施の形態2で説明した生成部201の機能と同じでよく、詳細な説明を省略する。また、取得部302は、実施の形態2で説明した取得部202の機能と同じでよく、詳細な説明を省略する。
図7は、実施の形態3にかかるシステム3の一動作例を示すフローチャートである。変換部310は、第1制御信号Fに基づいて、パラレルデータDとシリアルデータCとを変換する(ステップS311)。また、変換部320は、第2制御信号Eに基づいて、パラレルデータAとシリアルデータBとを変換する(ステップS321)。
生成部301は、第1制御信号Fと第2制御信号Eとに基づいて、トリガ信号Gを生成する(ステップS301)。そして、取得部302は、トリガ信号Gに応じて、パラレルデータDおよび第1制御信号Fと、パラレルデータAおよび第2制御信号Eを取得する(ステップS302)。
実施の形態3の効果について説明する。シリアルインターフェースによって接続された第1FPGA31および第2FPGA32に検証に関する各機能部を構成できない場合がある。第3FPGA30は、変換部310の動作状態を示す第1制御信号と、変換部320の動作状態を示す第2制御信号と、に基づいて、トリガ信号を生成する。第3FPGA30は、トリガ信号に応じて、第1FPGA31のパラレルデータと第2FPGA32のパラレルデータとを取得する。実施の形態3では、各機能部を構成可能な他の第3FPGA30を利用して、同一のタイミングによって第1FPGA31および第2FPGA32の内部データを取得することができる。
実施の形態1,2と同様に、第3FPGA30は、トリガ信号に応じて、さらに、変換部310の動作状態を示す第1制御信号と、変換部320の動作状態を示す第2制御信号と、を取得してもよい。これにより、検証者は、変換部の動作状態を識別できる。したがって、第3FPGA30によれば、より、検証の容易化を図ることができる。
また、例えば、第3FPGA30はシステム3から着脱可能である。例えば、シリアルインターフェースによって接続された第1FPGA31および第2FPGA32に生成部301および取得部302などの各機能部を構成できなくとも、別途システム3に取り付け可能な第3FPGA30に各機能部を構成させることができる。これにより、同一のタイミングによって第1FPGA31および第2FPGA32の内部データを取得することができる。したがって、検証の容易化を図ることができる。
実施の形態3については上述した例に限られず、種々変更可能である。
以上で、各実施の形態の説明を終了する。なお、各実施の形態で説明したプログラマブルデバイスは、プログラマブルデバイスに構成可能な組み込み型のロジカルアナライザ等、他の検証用の機能部を有していてもよい。
つぎに、プログラマブルデバイスによってキャプチャされた波形データを表示装置等に表示するための構成例を説明する。プログラマブルデバイスとしてFPGAを例に挙げて説明する。図8は、システムとコンピュータ装置との接続例を示す説明図である。図8において、理解および説明の容易化のために、FPGA40およびコンピュータ装置43の入力端子および出力端子等の詳細な図示を省略する。
システム4は、FPGA40と、出力部404と、を有する。FPGA40は、例えば、生成部401と、取得部402と、記憶部403と、を有する。生成部401と、実施の形態1から3で説明した生成部101,201,301のいずれかの機能を基本構成として含む。取得部402は、実施の形態1から3で説明した取得部102,202,302のいずれかの機能を基本構成として含む。
出力部404は、例えば、JTAG(Joint Test Action Group)端子である。コンピュータ装置43は、例えば、表示装置等の出力装置を有する。コンピュータ装置43は、FPGA40の開発用のアプリケーションが利用可能である。コンピュータ装置43と、JTAG端子を有する出力部404とは、ケーブルを介して接続される。これにより、コンピュータ装置43は、FPGA40と通信可能となる。コンピュータ装置43は、表示装置に、FPGA40によってキャプチャされた波形データを表示する。なお、コンピュータ装置43は、プロセッサ、記憶装置、ROM(Read Only Memory)、RAM(Random Access Memory)、表示装置、通信ネットワークと接続される通信インターフェース、他の出力装置、キーボードやマウスなどの入力装置などと接続可能な入出力インターフェースを有する。
以上で、FPGAとコンピュータ装置との接続例の説明を終了する。つぎに、各実施の形態で説明した方法(例えば、検証支援方法)は、プログラマブルデバイスなどに各機能部を実現する回路が形成され、各回路が処理を実行することにより実現される。各機能部は、IP(Intellectual Property Core)コアのように予め用意されたコンフィギュレーションデータによってプログラマブルデバイスに構成されてもよい。また、方法(例えば、検証支援方法)は、予め用意されたプログラムをプログラマブルデバイスに形成されたプロセッサなどが実行することにより実現されてもよい。各実施の形態で説明したプログラムは、例えば、プログラマブルデバイスなどが有する記憶部などに記憶される。また、各実施の形態で説明したプログラムは、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フレキシブルディスク、光ディスク、フレキシブルディスク、磁気光ディスク、USB(Universal Serial Bus)メモリなどのコンピュータ装置で読み取り可能な記録媒体に記録されてもよい。そして、本プログラムは、コンピュータ装置が記録媒体から読みだして、プログラマブルデバイスに回路が形成される際に、プログラマブルデバイスの記憶部に書き込まれてもよい。そして、プログラムは、プログラマブルデバイスに形成されたプロセッサによって記憶部から読み出されることによって実行されてもよい。また、プログラムは、通信ネットワークを介して配布されてもよい。
以上、各実施の形態を参照して本発明を説明したが、本発明は上記実施の形態に限定されるものではない。各本発明の構成や詳細には、本発明のスコープ内で当業者が把握し得る様々な変更を適用した実施の形態を含み得る。本発明は、本明細書に記載された事項を必要に応じて適宜に組み合わせ、または置換した実施の形態を含み得る。例えば、特定の実施の形態を用いて説明された事項は、矛盾を生じない範囲において、他の実施の形態に対しても適用され得る。例えば、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施の形態を実施するときには、その複数の動作の順番を内容的に支障しない範囲で変更することができる。
2 システム
3 システム
4 システム
10 プログラマデバイス
20 第1FPGA
21 第2FPGA
30 第3FPGA
31 第1FPGA
32 第2FPGA
43 コンピュータ装置
101 生成部
102 取得部
200 変換部
201 生成部
202 取得部
210 変換部
301 生成部
302 取得部
310 変換部
320 変換部
401 生成部
402 取得部
403 記憶部
404 出力部

Claims (10)

  1. 第1プログラマブルデバイスに構成された第1変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第1変換手段の動作を表す第1信号と、前記第1プログラマブルデバイスと通信用のインターフェースを介して接続される第2プログラマブルデバイスに構成された第2変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第2変換手段の動作を表す第2信号と、に基づいて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得するタイミングを制御する信号を生成する生成手段と、
    生成された前記信号に応じて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得する取得手段と、
    を備えるプログラマブルデバイス。
  2. 前記通信用のインターフェースは、シリアルインターフェースであり、
    前記第1プログラマブルデバイスの前記内部のデータは、パラレルデータであり、前記第1プログラマブルデバイスの前記通信用のデータは、シリアルデータであり、
    前記第2プログラマブルデバイスの前記内部のデータは、パラレルデータであり、前記第2プログラマブルデバイスの前記通信用のデータは、シリアルデータである、
    請求項1に記載のプログラマブルデバイス。
  3. 前記第1プログラマブルデバイスおよび前記第2プログラマブルデバイスのいずれか一方は、自プログラマブルデバイスである、
    請求項1または2に記載のプログラマブルデバイス。
  4. 前記取得手段は、生成された前記信号に応じて、さらに、前記第1信号と、前記第2信号と、を取得する、
    請求項1から3のいずれか一項に記載のプログラマブルデバイス。
  5. 内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第1変換手段が構成された第1プログラマブルデバイスと、
    内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第2変換手段が構成された第2プログラマブルデバイスと、
    第3プログラマブルデバイスと、
    を備え、
    前記第3プログラマブルデバイスは、
    前記第1変換手段の動作状態を表す第1信号と、前記第2変換手段の動作状態を表す第2信号と、に基づいて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得するタイミングを制御する信号を生成する生成手段と、
    生成された前記信号に応じて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得する取得手段と、
    を備える、
    システム。
  6. 前記通信用のインターフェースは、シリアルインターフェースであり、
    前記第1プログラマブルデバイスの前記内部のデータは、パラレルデータであり、前記第1プログラマブルデバイスの前記通信用のデータは、シリアルデータであり、
    前記第2プログラマブルデバイスの前記内部のデータは、パラレルデータであり、前記第2プログラマブルデバイスの前記通信用のデータは、シリアルデータである、
    請求項5に記載のシステム。
  7. 前記第3プログラマブルデバイスは、前記第1プログラマブルデバイスおよび前記第2プログラマブルデバイスのいずれか一方である、
    請求項5または6に記載のシステム。
  8. 前記第3プログラマブルデバイスは、自システムから着脱可能である、
    請求項5または6に記載のシステム。
  9. プログラマブルデバイスが、
    第1プログラマブルデバイスに構成された第1変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第1変換手段の動作を表す第1信号と、前記第1プログラマブルデバイスと通信用のインターフェースを介して接続される第2プログラマブルデバイスに構成された第2変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第2変換手段の動作を表す第2信号と、に基づいて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得するタイミングを制御する信号を生成し、
    生成された前記信号に応じて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得する、
    検証支援方法。
  10. 第1プログラマブルデバイスに構成された第1変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第1変換手段の動作を表す第1信号と、前記第1プログラマブルデバイスと通信用のインターフェースを介して接続される第2プログラマブルデバイスに構成された第2変換手段であって、内部のデータを通信用のデータに変換する処理と、当該通信用のデータを当該内部のデータに変換する処理と、の少なくともいずれかを行う第2変換手段の動作を表す第2信号と、に基づいて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得するタイミングを制御する信号を生成し、
    生成された前記信号に応じて、前記第1プログラマブルデバイスの前記内部のデータと、前記第2プログラマブルデバイスの前記内部のデータと、を取得する、
    処理をプログラマブルデバイスに実行させるプログラム。
JP2021008389A 2021-01-22 2021-01-22 プログラマブルデバイス、システム、検証支援方法、およびプログラム Active JP7048776B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021008389A JP7048776B1 (ja) 2021-01-22 2021-01-22 プログラマブルデバイス、システム、検証支援方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021008389A JP7048776B1 (ja) 2021-01-22 2021-01-22 プログラマブルデバイス、システム、検証支援方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP7048776B1 JP7048776B1 (ja) 2022-04-05
JP2022112559A true JP2022112559A (ja) 2022-08-03

Family

ID=81259111

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021008389A Active JP7048776B1 (ja) 2021-01-22 2021-01-22 プログラマブルデバイス、システム、検証支援方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP7048776B1 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3845041B2 (ja) * 2002-06-14 2006-11-15 富士通株式会社 プロトタイピングシステムおよびプログラマブル・デバイスの内部信号観測方法
JP2004157986A (ja) * 2002-10-17 2004-06-03 Renesas Technology Corp 論理検証システムとfpgaモジュール
WO2005096500A1 (ja) * 2004-03-30 2005-10-13 Nec Corporation 回路検証装置および回路検証方法並びにそのための信号分配方法
JP2007240257A (ja) * 2006-03-07 2007-09-20 Konica Minolta Business Technologies Inc 電子機器及びプログラマブル論理回路の動作検証方法
JP6662122B2 (ja) * 2016-03-14 2020-03-11 株式会社富士通アドバンストエンジニアリング 電子機器およびプログラマブルデバイス間の通信誤り検出方法

Also Published As

Publication number Publication date
JP7048776B1 (ja) 2022-04-05

Similar Documents

Publication Publication Date Title
TWI506397B (zh) 非同步時鐘領域之間的資料傳送
US10006964B2 (en) Chip performance monitoring system and method
CN110083543A (zh) 回归测试方法、装置、电子设备及存储介质
US9446519B2 (en) Remote testing method and system
CN110806970A (zh) 一种基于模拟服务端响应的客户端测试方法、装置和电子设备
WO2018218954A1 (zh) 一种验证平台和验证方法、计算机存储介质
Sanz et al. Implementation of intelligent data acquisition systems for fusion experiments using EPICS and FlexRIO technology
JP2002024201A (ja) 半導体集積回路
TWI389506B (zh) Test System and Method of Ethernet Solid Layer Layer
CN107102683B (zh) 一种基于soc的逐点任意波形发生器和产生方法
US8984196B2 (en) Accessing peripheral devices
CN116776784A (zh) Rtl代码生成方法、装置、电子设备及存储介质
JP2022112559A (ja) プログラマブルデバイス、システム、検証支援方法、およびプログラム
Nieto et al. High performance image acquisition and processing architecture for fast plant system controllers based on FPGA and GPU
WO2023273621A1 (zh) 脚本生成方法、装置、设备及介质
JP2004280426A (ja) 論理集積回路の内部信号トレース装置
CN112946526A (zh) 电子器件断点检测方法、装置和电子设备
Lee et al. Collecting big data from automotive ECUs beyond the CAN bandwidth for fault visualization
CN112256564A (zh) 应用程序的运行方法、装置及电子设备
CN117370257B (zh) 串口转总线的装置、现场可编程门阵列及其调试方法
WO2019021898A1 (ja) 開発支援装置
CN114662430B (zh) 待测设计的回归测试方法、设备及存储介质
US20230267084A1 (en) Tracing for High Bandwidth Masters in SoC
CN114169287B (zh) 生成验证环境的连接示意图的方法、电子设备及存储介质
JP2008258763A (ja) シリアル通信装置、その試験装置及びシリアル通信装置の試験方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210122

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20211110

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: 20220301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220324

R150 Certificate of patent or registration of utility model

Ref document number: 7048776

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150