JP6290913B2 - 多重プロセッサシステムのためのリアルタイム分析及び制御 - Google Patents
多重プロセッサシステムのためのリアルタイム分析及び制御 Download PDFInfo
- Publication number
- JP6290913B2 JP6290913B2 JP2015541913A JP2015541913A JP6290913B2 JP 6290913 B2 JP6290913 B2 JP 6290913B2 JP 2015541913 A JP2015541913 A JP 2015541913A JP 2015541913 A JP2015541913 A JP 2015541913A JP 6290913 B2 JP6290913 B2 JP 6290913B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- mpa
- application software
- dut
- subset
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
- G06F11/2242—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors in multi-processor systems, e.g. one processor becoming the test master
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
- G06F30/343—Logical level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
- Architecture (AREA)
- Software Systems (AREA)
Description
以下の特許は、その全体を参照することにより、本明細書においてその全体が完全に論述されているかのように、本明細書に援用されるものとする:
米国仮特許出願第61/724493号(2012年9月9日出願、発明の名称「Real Time Analysis and Control for a Multiprocessor System」);
米国特許第7415594号(2003年6月24日出願、発明の名称「Processing System With Interspersed Stall Propagating Processors And Communication Elements」、発明者Michael B.Doerr、William H.Hallidy、David A.Gibson、Craig M.Chase);
米国特許出願第13/274138号(2011年10月14日出願、発明の名称「Disabling Communication in a Multiprocessor System」、発明者Michael B.Doerr、Carl S.Dobbs、Michael B.Solka、Michael R Trocino、David A.Gibson)。
以下は、本出願で使用する用語の解説である。
これより、試験インストルメンテーションがデータ処理デバイス(特に多重処理デバイス)及びこれらに関連するソフトウェア開発システム内に構築される、リアルタイム分析及び制御(real time analysis and control:RTAC)のためのシステムの様々な実施形態について説明する。RTACは、データ処理デバイスが製品アプリケーションを最高速度で実行している間に、保護されていないデバイスのいずれの内部状態にアクセス(読み出し又は書き込み)し、データ処理デバイスが製品アプリケーションを実行している間に、デバイス内の保護されていないいずれの場所にデジタル信号ストリームを接続し、デジタル信号ストリームを様々な標準的方法(間引き、補間、フィルタリング、ノイズ付加、パターン又は閾値に対するトリガ、フーリエ変換等)で処理し、試験信号を生成して比較を行って信号を処理し、自律的に高速で動作し、ソフトウェア部品(「ビュー(view)」と呼ばれる)を用いて比較的容易に設定できるように構成できる。
いくつかの実施形態では、リアルタイム制御(Real−Time Control:RTC)の基本的な考え方は、リンカが、ランタイムソフトウェアが使用する変数及びパラメータの、SM内での絶対位置を含むテーブルを生成するというものである。このリンカテーブルは、アプリケーションソフトウェアの動作中に特定のアドレスに対して個々の値を「ピーク(peek)」及び「ポーク(poke)」するために、例えばシリアルバスである二次相互接続ネットワークと共に使用してよく、これ以外の点で二次相互接続ネットワークに干渉することはない。MPAがそのハードウェア内に、一次相互接続ネットワーク(PIN)とは独立したシリアルバス等の二次相互接続ネットワーク(SIN)を有する場合、無干渉とすることもできる。SINは典型的には、高帯域幅PINよりも大幅に低い帯域幅を有し、従ってSINはアプリケーションソフトウェアによって使用されない。
いくつかの実施形態では、リアルタイム分析(real‐time analysis:RTA)ツール(これはRTACツールの一部であってよい)を提供してよく、これは、ワークステーション、即ち例えばPC/ラップトップコンピュータ又は他のいずれのタイプの所望のコンピュータであるホストコンピュータ上で実行される全体制御プログラムを含み、これは、試験中のデバイス(DUT)及び最終的な用途に適切であるクロック速度でMPA上で動作するそのプリケーションソフトウェアを動作させるソフトウェア定義テストベンチ(SDTB)を管理する(及びいくつかの実施形態ではその一部と考えることもできる)。
図9は、一実施形態による、アプリケーションソフトウェアを実行するMPAを含むDUTを試験するためのシステムを示す。図示したように、この例示的実施形態では、このシステムは、ホストコンピュータ、開発システムとDUTを試験するために構成されたテストベンチとを試験設備と共に含む開発ボード、そしてこの特定の場合においてはプロセッサIC(集積回路)、並びに例えば論理アナライザ又はオシロスコープ及び外部信号ソース(例えばビデオカメラ)といった機器を含む。いくつかの実施形態では、ホストコンピュータ、開発ボード及び上記機器は、本記述の実施形態を実装できるソフトウェア定義テストベンチを構成できる。
上述のRTAシステムのコンセプトの1つの有用な特徴は、アプリケーションの性能に対して影響を無視できる程度にしか、又は全く及ぼすことなく、DTU内の高帯域幅データフローを精査できる点である。これは、ソフトウェア開発ツールのために開発されたソフトウェアプローブが、DUTに対してコード及び実行サイクルをごくわずかにしか(典型的には1%未満しか)追加しないことによって可能となる。アプリケーションソフトウェアは典型的には、全ての利用可能なMPAリソースを消費するわけではなく、またデータのブロックを処理するために割り振られた時間全てを消費するわけではないため、サイクル、電力放散及び/又はメモリの使用が1%増大してもほとんど感知できない。
これより、ここで開示する技術の様々な例示的実施形態及び実装形態について説明する。しかしながら、説明される特定の実施形態及び技術は、本発明をいずれの特定の形態、機能又は外観に限定するものではないことに留意されたい。例えばこれらの実施形態のうちのいくつかについては、具体的な用語、構文又は要素を用いて説明するが、記載される用語、構文又は特定の要素は例示のみを目的としたものであり、考察されている実施形態をいずれの特定の名称、構文、形態、構造又は外観のセットに限定することを意図したものではない。
図11は、一実施形態による、多重プロセッサシステム用のソフトウェアを開発するための例示的な方法のフローチャートである。より具体的には、図9は、フローにおいてプローブを挿入できる例示的な場所を示す。上述のように、ここで開示する技術はツールによって実装でき、このツール自体は多数のツール又はモジュールを含んでよい。いくつかの実施形態では、このツールはISDEから又はISDE内で発動してよく、他の実施形態ではこのツールはスタンドアロン型ツールとして動作してよい。いくつかの実施形態では、このツールは呼び出し可能な機能及び/若しくは定義された構造のツールキットとして、又はソフトウェアスイートとして実装してよい。
いくつかの実施形態では、リアルタイムデバッグは、アプリケーションランタイムソフトウェアを実行しているハードウェアDUTに「デバッグプローブ」を挿入することによって実装してよく、これにより内部信号を監視する。理想的には、デバッグプローブは完全に非侵襲性であり、即ちユーザのアプリケーションソフトウェアの動作に対して一切の影響を及ぼさない。いくつかの状況ではこれが成立し得るが、ほとんどの状況では、上記影響は無視できる程度のものとなり、いくつかの状況では、プローブの挿入に十分なリソースが存在しない場合があるか、又はプローブの挿入に対するセキュリティ障壁が存在する場合がある。なお、用語「無視できる程度の影響(negligible effects)」、「リアルタイム(real time)」は、特定の応用分野又は考慮される使用法に応じて異なる許容誤差レベルを示してよい。例えばいくつかの実施形態では、これらの用語は、試験がDUT及び/又はアプリケーションの性能に1%未満の影響を及ぼす状態で実施されることを意味してよい。同様に他の様々な例示的実施形態では、許容誤差は、例えば指定された要件に対して0.1%未満、0.5%未満、1%未満、2%未満、3%未満、4%未満、5%未満等であってよい。より一般には、様々な異なる実施形態において、許容誤差(即ち「無視できる程度の(negligible)及び「リアルタイムに最高動作速度で(real time at full operational speed)」の意味)は、いずれの所望の値となるように適宜指定してよい。
プローブのサンプリング部分を実装するための1つの例示的な方法は、PEタスク内において、対象の信号に関する第1の「送信」命令文を探し、第1の送信の後に第2の(副次的)送信命令文を挿入することであり、この第2の(副次的)送信命令文は同一の信号に対するものであるが、関連する通信経路がDMRを異なる方向から出るようにし、この経路を自由経路に沿ってチップI/Oポートへと配向するものである。これら送信命令文を両方とも含むタスクを再コンパイルし、アプリケーションソフトウェアの残りの部分とリンクさせて、試験及び分析のための単一のタップを有するバイナリイメージを生成してよい。続いて、送信タスクが対象の信号のデータのブロックを送信するたびに、これは同一のデータのブロックをプローブにも送信する。これは、プローブが非侵襲性であるという要件に完全には適合しない。というのは、送信タスクは第2の送信を実行しなければならず、これはタスクを実行するためのサイクルを追加するからである。しかしながら、第2の送信が、アプリケーションソフトウェアが使用していないハードウェアリソースを利用する場合、上述のコストを緩和できる。例えば第2の(副次的)送信命令文がDMAエンジンを使用する場合、PEはDMA制御レジスタの書き込みに対して数PEクロックサイクル分しか遅延しないものとなり得、そしてPEはアプリケーションタスクと共に継続できる。通常これらの追加のサイクルは、タスクに割り振られた時間に比べて無視できる程度のものである。別の例として、いくつかの実施形態では、第2の又は副次的送信命令文は、オンチップネットワークを利用して、プローブデータをMPAのエッジに供給してよい。
図13は、例えば図12の副次的送信命令文の使用とは対照的に、MPAから目標のデータ又は信号を複製及び抽出するために、アプリケーションソフトウェアの外部の試験用コード(試験プログラムコードとも呼ばれる)を使用する、DUTを試験するための例示的な一実施形態による方法のハイレベルフローチャートである。図12の方法と同様に、DUTは多重プロセッサアレイ(MPA)を含んでおり、MPAの様々な実施形態は上述した通りである。図12に示す方法は、特にこれまでに図示したコンピュータシステム又はデバイスのいずれと組み合わせて使用してよい。様々な実施形態では、図示した方法要素は、同時に若しくは図示したものと異なる順序で実施してよく、又は省略してよい。また必要に応じて追加の方法要素を実施してもよい。図示したように、この方法は以下のように動作できる。
目標のデータ又は信号を複製/抽出するための、より侵襲性が低いがより複雑である別の方法は、近隣のPEを利用して、特定のDMA伝送と関連する複数のレジスタのセットをポーリングする。上記近隣のPEが伝送の開始を検出すると、上記PEは同一のデータを読み出してこれをチップから送出できる。これは非侵襲性の方法で実施できる。というのは、上記近隣のPEが最低の優先度を有し、従って上記アプリケーションソフトウェアの動作に一切干渉しないように、DMAレジスタ上に優先度を設定できるためである。従って、データを送信している間に、DMAエンジンの背後でプローブはゆっくりと継続されてよく、また時折、上記エンジンによって、又は同一のDMRにアクセスしているアプリケーション内の他の近隣のPEによって機能停止し得る。これにより、DMAエンジンが終了しアプリケーションの送信PEに通知を行ってから数サイクル後に、上記近隣のPEによるデータの読み出しを終了させる。その短いタイムウィンドウの間に、送信PEはデータの修正を始めることができる。しかしながら、DMA伝送のバースト間に比較的長いインターバルを有するのがより一般的であり、従って有効でないデータを読み出してしまう蓋然性は小さい。
更に非侵襲性のプローブを、いくつかのMPAが提供するオンボードDMA‐FIFO機能、例えばhx3100B HyperX[MPA]プロセッサチップのDMA‐FIFO能力を用いて実装してよい。このアプローチでは、図15に示すように、3つのDMAエンジンを先入れ先出し(first‐in first‐out:FIFO)制御ブロックに連結し、データのストリームを一次又はオリジナルデータストリームと、精査された又は副次的データストリームとに分割してよい。
図17は、一実施形態によるMPAのDMRの例示的実施形態を示す。上述のように、MPA内のDMRは、MPAの隣接する処理要素のためのローカルメモリ及びルーティングリソースを提供し、また実行中のアプリケーションソフトウェアへのデータ書き込み、上記アプリケーションソフトウェアからのデータ読み出し、上記アプリケーションソフトウェア内でのデータ読み出し及び書き込みのためのDMAエンジンを実装してよい。例えば図17の例示的なDMRは4ペアのDMRエンジンを含み、各ペアは、DMRの中央に示したデータメモリからデータを読み出すためのDMA読み出しエンジンと、上記データメモリにデータを書き込むためのDMA書き込みエンジンとを含み、各DMAエンジンは、「DMAW Engine」(DMA書き込みエンジン)、「DMAR Engine」(DMA 読み出しエンジン)と記されているDMR内の最も右側の2つの正方形が示すように、図面ではそれぞれ正方形で表されており、ここでDMA書き込みエンジンはデータ(図におけるWData)をデータメモリに書き込むよう動作し、DMA読み出しエンジンはデータ(図におけるRData)をデータメモリから読み出すよう動作する。
試験中のアプリケーションからソフトウェア通信プローブを連結解除すると有益であり得る。これを行う1つの動機は、アプリケーションのソースコードが利用可能ではなく、従って含まれている通信プローブによって再リンク(再構築)できないことである。しかしながらはるかに重要なことは、修正が、それがどれほど小さなものであろうと(即ちプローブ)アプリケーションに導入されることがないように、試験中のアプリケーションの完全な整合性を維持することである。これはまた、含まれているプローブを用いてアプリケーションを再構築(再リンク)する必要を省く(防ぐ)。
論理アナライザ(LA)等の試験機器は、多数のバイナリデジタル信号をサンプリングしてこれらを高速メモリに記憶させることにより、デジタル信号をキャプチャする。その後、メモリのコンテンツを、バイナリ信号のセットとして、又は何らかの等価の数値としてスクリーン上に表示してよい。論理アナライザ(LA)のタイムベースは、トリがイベントにおいてストレージアドレスの一括処理を開始する。トリがイベントは、一次信号のサブセット内のバイナリ信号の、及び試験中のデバイス又はDUTに信号を供給するデジタルパターン生成器からの他のバイナリ信号の、特定のパターンであってよい。
デバッグ用プローブを用いて、ユーザ設計の内部である信号を監視する(既に詳細に説明されている)。The MathWorks,Inc.が提供するSimulink(商標)は、デバッグ目的で使用される多数のブロックを提供する。特に内部信号のサンプリングのために複数のブロックが存在する。いくつかの実施形態では、これらの内蔵型Simulinkブロックを、HyperXハードウェア上で実現されることになる設計にデバッグ用プローブを挿入するために使用してよい。このようなブロックは、例えばC−コードを用いて翻訳でき、これによってデータのキャプチャ及びチップ外への送信を実装できる。トランスレータはまた、信号をホストマシンへルーティングしてこのデータを適切な様式で表示するために必要なインフラストラクチャを設定できる。
デバッグに必要なプローブの数は、MPA上で利用可能なデータポートの数より多くなる場合が多い。これらの場合、データプローブは(帯域幅要件を低減するために必要である場合は)サブサンプリングしてよく、続いて複数のプローブからのデータパケットを統合して1つのデータストリームを形成してよく、このデータストリームはチップ上の単一のI/Oポートを使用できる。
これより、通信経路の設定及び切断のための例示的なプログラミングについて説明する。しかしながら、ここで説明する特定の実装形態は単なる例であり、考えられる実装形態をいずれの特定の形態、機能、名称又は外観に限定することを意図したものではないことに留意されたい。一般に1つ又は複数のPEは、DMAを用いてメモリから経路を通してデータを実際にポンピングする間に、上述の設定及び切断機能を実施してよい。またいくつかの実施形態では、メモリをバイパスする「クイックポート」を用いて、PEがデータを経路に直接ポンピングしてよい。
・汎用:システムが最適な通信(memcpy、DMA伝送を用いたメッセージ受け渡し、又はクイックポート伝送)を選択する;
・DMA伝送:メッセージ受け渡し;及び
・クイックポート:PEがDMRクイックポートレジスタに書き込みを行う、単一語のメッセージ受け渡し(DMR内のデータメモリを使用せず、DMAを設定する必要がない)
をサポートしてよい。
・ブロッキング:データがバッファから完全に送信されるまで送信PEの実行を停止;
・非ブロッキング:送信PEの実行を即座に継続;
・InitRoute:DMAルートを設定;
・EndRoute:DMAルートを切断(なお、非ブロッキング機能はルートを切断しない);
・Express(送信):ルートの設定又は切断を行わず、既に設定された明らかなルートに対して多数の高速のコールを可能とする;
・促進された機能:不変値レジスタを一度プリセットできるため、使用するコードが少ない;
・単一の二地点間通信;及び
・一対多(ファンアウト)及び多対一(ファンイン)通信。
MPX_Sendは、特定の数の要素(メモリ語の値)を別のタスクに伝送できる。通信手段は、1つ又は複数の伝送オプションのパラメータ、例えばMPX_CommOptions_tによって与えることができる。以下は、関数及び引数の種類を示す例示的な関数プロトタイプである。
int16_t MPX_Send (void *buf,
uint16_t numElts,
MPX_Datatype_t datatype,
MPX_Comm_t commID,
MPX_CommOptions_t transferOpt)
MPX「送信及び受信機能」の説明において、汎用、DMA及びクイックポート伝送に関する上の説明を参照されたい。なお受信関数はルートを設定又は切断することはできない。
制約は、リソースの割り振りをガイドするために物理的設計段階中に使用できる形式である。制約を用いて例えばIN内の1つ又は複数の通信経路及び他の通信パラメータの形成をガイドする。制約を用いて特に、経路の重複を防止でき、経路に特定のリソースを使用させることができ、また立入禁止領域を確立できる。プローブの制約は、以下に定義する特定のタイプの制約である:
//デザインビューにおいてデータ精査の制約を生成する。
constraint create −type probe[−raw]
−name constraintname
−comm comm_id
−port{PARALLELPORT|PCIE}
[−sample‘{’offset stride count‘}’]
{viewname|viewpath}
データプローブは、アプリケーションからISDE内のリアルタイム分析(RTA)ビューへのデータの抽出を促進できる。
プローブは、構成プロセスのリソースマッピング段階中に生成してよい。例えば「C」コードであるソースコードに対する変更はない。
constraint create −type probe−name probe99\
−comm 99−port PARALLELPORT/work/top/topv
constraint create −type probe−name probe99\
−comm 99−port PARALLELPORT\
−sample{2 3 4}/work/top/topv
place ioport −location{11 9}/work/top/topv/probe99
多重チップ設計では、プローブはグルーピングの前又は後に確立できる。設計のグルーピングは、設計の部品をグループに割り当て、得られたグループを特定のチップ上に配置されるように割り当てるプロセスである。プローブをグルーピングの後に確立する場合、「センダ側(sender side)」グループ名を使用してよい。
group create −name grpO−task/work/root/root/0
group bind−chip/clxlib/XHx/v/Ul grp0
constraint create−type probe\
−name probe273−port PARALLELPORT\
−comm/work/root/root/273 /work/root/root/grp0
リアルタイム分析(RTA)を使用して、製品アプリケーションの挙動及び性能を、HyperX(商標)ハードウェア上での動作中にリアルタイムに制御及び監視してよい。
例示的な一実施形態では、HyperX(商標)ハードウェア用のリアルタイム分析(RTA)ツールは、例えばHyperX(商標)リアルタイム分析パースペクティブにおいて6つのビューを含み、これらは3ペアのビューとして動作する。
図18に示すようにソフトウェア無線の例から始めるが、ここではパケットは、レシーバに連結されたトランスミッタへの入力として受信され、レシーバはパケットを出力し、トランスミッタ及びレシーバはそれぞれ1つ又は複数のPEを利用する。トランスミッタは固定サイズのパケットを受け取り、伝送のためにこれらを符号化し、これらをレシーバに送信し、これらはレシーバにおいて復号化される。実環境での応用では、トランスミッタからのデータはRF(無線周波数)トランスミッタ回路に送信され、レシーバに供給されるデータはRFレシーバ回路から来るものとなる。
いくつかの実施形態では、AWGNビューはHyperX(商標)加法性ホワイトガウスノイズ(AWGN)生成器構成要素を制御してよい。AWGN構成要素はエグザンプルコートを供給されてよく、また調整可能な量のノイズをトランスミッタの出力に付加するために使用してよい。
MPX_SetupWake(controlIn);//commID=controlInに対するウェイクアップ信号を有効とする
MPX_SetupWake(dataIn);//commID=dataInに対するウェイクアップ信号を有効とする
MPX_Recv(&control,sizeof(control),ΜΡΧ_IΝΤ,controlIn,MPX_NONBLOCKING);//制御パケットの受信を開始、ここでは完了を待たない
MPX_Recv(&data,2,MPX_INT,dataIn,MPX_NONBLOCKING);//データブロック(目標の信号)の受信を開始、ここでは完了を待たない
while(1){//無制限にループ
MPX_Wait();//いずれの利用可能なポートにおけるいずれの到着に対するウェイクアップ信号を待機
if(MPX_Rtest(controlIn)==DMA_DONE){//データブロックの受信の完了に対する試験
snr=control.snr;//パケットから現在のS/N比値を抽出
average_noise=computeAverageNoiseFromSignalPower(control.averageSignalPower);
MPX_Recv(&control,sizeof(control),MPX_INT,controlIn,MPX_NONBLOCKING);//別の制御パケットの受信を開始、ここでは完了を待たない
}
if(MPX_Rtest(dataIn)==DMA_DONE){//コントロールパケットの受信の完了に対する試験
addNoise(data,2);//データブロックに対するノイズ付加のための機能の呼び出し
MPX_Send(data,2,MPX_INT,dataOut,MPX_DMA);//データブロックをレシーバに送信
MPX_Recv(data,2,MPX_INT,dataIn,MPX_NONBLOCKING);//別のデータブロックの受信を開始
}
}
}
図21は、一実施形態による例示的な信号空間ダイヤグラムである。信号空間ダイヤグラムは、直交振幅変調(QAM)信号を復号化することの効果を図式的に示してよい。IQデータは、信号空間プロット(散布図としても知られる)として、又は2D若しくは3Dヒートマップとして示してよい。図示したように、グラフのタイプの選択は、コンステレーションビューの底部のタブのセットによって実施できる。
これより、ビデオソースが画像フレームをチップに送信する単純な例について説明する。図22は、例えばファイルの数(「ファイル」)、メッセージの数(「メッセージ」)、データレート(「バイトレート」)、フレームレート(「フレームレート」)といった様々なパラメータ又は属性を構成及び/又は表示できるビデオソースビュー(GUI)を示す。これもまた図22に示すように、画像のオーバレイを特定するためのフィールド、具体的にはこの例では「Overlay」である画像オーバレイテキストも提供される。
1.ファイルからの読み出し;
2.画像への復号化;
3.ファイルに画像オーバレイテキストを書き込み;
4.画像をJPEGに再符号化;
5.画像をチップに送信
である。
以下は、ここで開示した技術の可能な便益のリストであるが、ここに列挙した便益は単なる例であり、ここで開示した技術の実際の便益をいずれの特定の便益のセットに制限することを意図したものではないことに留意されたい:
ユーザが試験点を選択した場合の、プローブ及びオフチップ通信経路の自動的な設定;
メモリ位置及び信号の自動的な精査;
変化する信号対ノイズ比に対して適合するための、ランタイムのインテリジェントな変動;
信号測定の帯域幅の上昇;
測定を行う速度の上昇;
測定データがチップを離れる前の、測定データのより良好な圧縮;
試験完了速度の上昇;
アプリケーションソフトウェアのより完全な試験及び特性決定;
必要な試験設備の数及びタイプの可能な限りの削減;並びに
オリジナル設計の動作、機能又は性能を観察が妨害しないこと。
Claims (23)
- プログラム命令を記憶する、非一時的なコンピュータ可読メモリ媒体であって、
前記プログラム命令は、試験対象のアプリケーションソフトウェアを分析するために実行可能であり、
前記アプリケーションソフトウェアは、多重プロセッサアレイ(MPA)の第1のハードウェアリソース上で展開されるよう構成され、
試験中のデバイス(DUT)は、前記アプリケーションソフトウェアを実行する前記MPAを備え、
前記MPAは、複数の処理要素と、複数のメモリと、前記複数の処理要素と前記複数のメモリとを通信可能に連結する相互接続ネットワーク(IN)とを含み、
前記プログラム命令は、前記MPA上のハードウェアリソースに、前記アプリケーションソフトウェアで生成された第1のデータの少なくともサブセットのコピーを分析を目的として提供させるために実行可能な試験プログラムコードを、前記アプリケーションソフトウェアにおいて生成するために実行可能であり、
前記プログラム命令は、前記MPAの前記第1のハードウェアリソース上で前記アプリケーションソフトウェアを実行し、同時に前記MPA上で前記試験プログラムコードを実行して、前記DUTの性能に対する影響が無視できる程度であるか又は影響が無い状態で前記DUT内の高帯域幅データフローをプローブするために実行可能であり、
前記第1のデータの前記少なくともサブセットの前記コピーは、前記アプリケーションソフトウェアが実行した送信命令文に応答して生成され、
前記第1のデータは、入力データに応答する前記MPAの前記INを通る第1の通信経路を用いて、前記送信命令文に応答して提供され、
前記高帯域幅データフローをプローブするために、前記試験プログラムコードは、前記第1のハードウェアリソースの少なくとも1つ上で実行されるように構成され、また副次的送信命令文に基づいて、前記アプリケーションソフトウェアが使用しない前記MPAの前記INを通る第2の通信経路を含む第2のハードウェアリソースを用いて、前記第1のデータの前記少なくともサブセットを、前記MPAのエッジのピンに供給するよう構成され、
前記第1のデータの前記少なくともサブセットの前記コピーは、前記DUTを分析するために使用できる、非一時的なコンピュータ可読メモリ媒体。 - 前記第1のデータの前記少なくともサブセットの前記コピーを提供するために、前記MPAの第1のダイレクトメモリアクセス(DMA)エンジンは、前記第1のデータの前記少なくともサブセットの前記コピーを提供し、
前記第1のDMAエンジンは、前記第2のハードウェアリソースのうちの1つであり、
前記第2のハードウェアリソースは、前記第1のハードウェアリソースとは異なり、前記アプリケーションソフトウェアによって使用されない、請求項1に記載の非一時的なコンピュータ可読メモリ媒体。 - 前記アプリケーションソフトウェアは、前記MPAの第1のメモリに前記第1のデータを記憶するよう構成され、
前記第1のメモリは、前記アプリケーションソフトウェアが使用する前記第1のハードウェアリソースのうちの1つであり、
前記第2のハードウェアリソースのうちの1つである前記第1のDMAエンジンを含む複数の前記DMAエンジンが、前記第1のメモリに関連付けられている、請求項2に記載の非一時的なコンピュータ可読メモリ媒体。 - 第2のDMAエンジンは前記第1のメモリに関連付けられ、
前記第2のDMAエンジンは、前記第1のメモリに前記第1のデータを記憶するために前記アプリケーションソフトウェアが使用する前記第1のハードウェアリソースのうちの1つである、請求項3に記載の非一時的なコンピュータ可読メモリ媒体。 - 前記送信命令文に応答して前記第1のデータの前記少なくともサブセットの前記コピーを生成するために、前記試験プログラムコードは、前記送信命令文による前記第1のデータの伝送を検出するために実行可能である、請求項1に記載の非一時的なコンピュータ可読メモリ媒体。
- 前記送信命令文は、前記第1のハードウェアリソースの第1のプロセッサ要素上で実行されるよう構成され、
前記送信命令文に応答して前記第1のデータの前記少なくともサブセットの前記コピーを提供するために、前記試験プログラムコードは、前記少なくとも1つの副次的送信命令文を実行して前記コピーを提供する、請求項1に記載の非一時的なコンピュータ可読メモリ媒体。 - 前記第1のデータの前記少なくともサブセットの前記コピーを提供するために、前記少なくとも1つの副次的送信命令文は、前記第1のデータをフィルタリングすることによって前記第1のデータの前記少なくともサブセットの前記コピーを生成するために実行可能である、請求項6に記載の非一時的なコンピュータ可読メモリ媒体。
- 前記DUTは、前記アプリケーションソフトウェアをリアルタイムに最高動作速度で実行する前記MPAを備える、請求項1に記載の非一時的なコンピュータ可読メモリ媒体。
- 前記DUTは、前記DUTに連結された外部信号ソースからリアルタイムデータを受信して、前記DUTを刺激するよう構成される、請求項1に記載の非一時的なコンピュータ可読メモリ媒体。
- 前記プログラム命令は、ソフトウェア定義テストベンチを実装し、
前記ソフトウェア定義テストベンチは、前記DUTの性能に対する影響が全く無いか又は無視できる程度である状態で前記DUTを分析できるよう構成される、請求項1に記載の非一時的なコンピュータ可読メモリ媒体。 - 前記第1のデータの前記少なくともサブセットの前記コピーを提供するために、前記試験プログラムコードは、オンボードDMA−FIFO機能を使用するために実行可能である、請求項1に記載の非一時的なコンピュータ可読メモリ媒体。
- 試験中のデバイス(DUT)を試験するための方法であって、
前記方法は、試験対象のアプリケーションソフトウェアを分析するステップを含み、
前記アプリケーションソフトウェアは、多重プロセッサアレイ(MPA)の第1のハードウェアリソース上で実行されるよう展開可能であり、
前記試験中のデバイス(DUT)は、前記アプリケーションソフトウェアを実行する前記MPAを備え、
前記MPAは、複数の処理要素と、複数のメモリと、前記複数の処理要素と前記複数のメモリとを通信可能に連結する相互接続ネットワーク(IN)とを含み、
前記方法は、前記MPA上のハードウェアリソースに、前記アプリケーションソフトウェアで生成された第1のデータの少なくともサブセットのコピーを分析を目的として提供させるために実行可能な試験プログラムコードを、前記アプリケーションソフトウェアにおいて生成するステップを含み、
また前記方法は、前記MPAの前記第1のハードウェアリソース上で前記アプリケーションソフトウェアを実行し、同時に前記MPA上で前記試験プログラムコードを実行して、前記DUTの性能に対する影響が無視できる程度である状態で前記DUT内の高帯域幅データフローをプローブするステップを含み、
前記試験プログラムコードは、前記アプリケーションソフトウェアが実行した送信命令文に応答して、前記第1のデータの前記少なくともサブセットの前記コピーを生成し、
前記第1のデータは、入力データに応答する前記MPAの前記INを通る第1の通信経路を用いて、前記送信命令文に応答して提供され、
前記高帯域幅データフローをプローブするステップは、前記第1のハードウェアリソースの少なくとも1つ上で前記試験プログラムコードを実行するステップと、副次的送信命令文に基づいて、前記アプリケーションソフトウェアが使用しない前記MPAの前記INを通る第2の通信経路を含む第2のハードウェアリソースを用いて、前記第1のデータの前記少なくともサブセットを、前記MPAのエッジのピンに供給するステップとを含み、
前記第1のデータの前記少なくともサブセットの前記コピーは、前記DUTを分析するために使用できる、方法。 - 前記第1のデータの前記少なくともサブセットの前記コピーを提供するステップは、前記MPAの第1のダイレクトメモリアクセス(DMA)エンジンが、前記第1のデータの前記少なくともサブセットの前記コピーを提供するステップを含み、
前記第1のDMAエンジンは、前記第2のハードウェアリソースのうちの1つであり、
前記第2のハードウェアリソースは、前記第1のハードウェアリソースとは異なり、前記アプリケーションソフトウェアによって使用されない、請求項12に記載の方法。 - 前記アプリケーションソフトウェアを実行するステップは、前記MPAの第1のメモリに前記第1のデータを記憶するステップを含み、
前記第1のメモリは、前記アプリケーションソフトウェアが使用する前記第1のハードウェアリソースのうちの1つであり、
前記第2のハードウェアリソースのうちの1つである前記第1のDMAエンジンを含む複数の前記DMAエンジンが前記第1のメモリに関連付けられている、請求項13に記載の方法。 - 第2のDMAエンジンは前記第1のメモリに関連付けられ、
前記第2のDMAエンジンは、前記アプリケーションソフトウェアが使用する前記第1のハードウェアリソースのうちの1つである、請求項14に記載の方法。 - 前記送信命令文に応答して前記第1のデータの前記少なくともサブセットの前記コピーを生成するステップにおいて、前記試験プログラムコードは、前記送信命令文による前記第1のデータの伝送を検出する、請求項12に記載の方法。
- 前記送信命令文は、前記第1のハードウェアリソースの第1のプロセッサ要素上で実行され、
前記第1のデータの前記少なくともサブセットの前記コピーを提供するステップは、前記試験プログラムコードが前記少なくとも1つの副次的送信命令文を実行して前記コピーを提供するステップを含む、請求項12に記載の方法。 - 前記少なくとも1つの副次的送信命令文を実行するステップは、前記第1のデータをフィルタリングすることによって前記第1のデータの前記少なくともサブセットを生成するステップを含む、請求項17に記載の方法。
- 前記DUT、は、前記アプリケーションソフトウェアをリアルタイムに最高動作速度で実行するMPAを備える、請求項12に記載の方法。
- 前記DUTによって、前記DUTに連結された外部信号ソースからリアルタイムデータを受信して、前記DUTを刺激するステップを更に含む、請求項12に記載の方法。
- 前記アプリケーションソフトウェア及び前記試験プログラムコードを分析及び実行するステップは、ソフトウェア定義テストベンチによって実施され、
前記ソフトウェア定義テストベンチは、前記DUTの性能に対する影響がないか又は無視できる程度である状態で前記DUTを試験する、請求項12に記載の方法。 - 前記第1のデータの前記少なくともサブセットの前記コピーを提供するステップは、オンボードDMA−FIFO機能を使用する、請求項12に記載の方法。
- 試験中のデバイス(DUT)を試験するためのシステムであって、
前記システムは、プロセッサと、前記プロセッサに連結されたメモリ媒体とを備えるコンピュータシステムを備え、
前記システムは、前記コンピュータシステムに連結された多重プロセッサアレイ(MPA)を備え、
前記試験中のデバイス(DUT)は、アプリケーションソフトウェアを実行する前記MPAを備え、
前記MPAは、複数の処理要素と、複数のメモリと、前記複数の処理要素と前記複数のメモリとを通信可能に連結する相互接続ネットワーク(IN)とを含み、
前記メモリ媒体は、プログラム命令を記憶し、
前記プログラム命令は、前記アプリケーションソフトウェアを分析するために前記プロセッサによって実行可能であり、
前記アプリケーションソフトウェアは、前記MPA上で展開されるよう構成され、
前記プログラム命令は、前記MPA上のハードウェアリソースに、前記アプリケーションソフトウェアで生成された第1のデータの少なくともサブセットのコピーを分析を目的として提供させるために実行可能な試験プログラムコードを、前記アプリケーションソフトウェアにおいて生成するために、実行可能であり、
また前記プログラム命令は、前記MPAの第1のハードウェアリソース上で前記アプリケーションソフトウェアを実行し、同時に前記MPA上で前記試験プログラムコードを実行して、前記DUTの性能に対する影響が無視できる程度であるか又は全くない状態で前記DUT内の高帯域幅データフローをプローブするために実行可能であり、
前記第1のデータの前記少なくともサブセットの前記コピーは、前記アプリケーションソフトウェアが実行した送信命令文に応答して生成され、
前記第1のデータは、入力データに応答する前記MPAの前記INを通る第1の通信経路を用いて、前記送信命令文に応答して提供され、
前記高帯域幅データフローをプローブするために、前記試験プログラムコードは、前記第1のハードウェアリソースの少なくとも1つ上で実行されるように構成され、また副次的送信命令文に基づいて、前記アプリケーションソフトウェアが使用しない前記MPAの前記INを通る第2の通信経路を含む第2のハードウェアリソースを用いて、前記第1のデータの前記少なくともサブセットを、前記MPAのエッジのピンに供給するよう構成され、
前記第1のデータの前記少なくともサブセットの前記コピーは、前記DUTを分析するために使用できる、システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261724493P | 2012-11-09 | 2012-11-09 | |
US61/724,493 | 2012-11-09 | ||
PCT/US2013/069075 WO2014074783A2 (en) | 2012-11-09 | 2013-11-08 | Real time analysis and control for a multiprocessor system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018021127A Division JP6652581B2 (ja) | 2012-11-09 | 2018-02-08 | 多重プロセッサシステムのためのリアルタイム分析及び制御 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015535621A JP2015535621A (ja) | 2015-12-14 |
JP6290913B2 true JP6290913B2 (ja) | 2018-03-07 |
Family
ID=49640202
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015541913A Active JP6290913B2 (ja) | 2012-11-09 | 2013-11-08 | 多重プロセッサシステムのためのリアルタイム分析及び制御 |
JP2018021127A Active JP6652581B2 (ja) | 2012-11-09 | 2018-02-08 | 多重プロセッサシステムのためのリアルタイム分析及び制御 |
JP2020009082A Active JP7053691B2 (ja) | 2012-11-09 | 2020-01-23 | 多重プロセッサシステムのためのリアルタイム分析及び制御 |
JP2022058455A Active JP7335387B2 (ja) | 2012-11-09 | 2022-03-31 | 多重プロセッサシステムのためのリアルタイム分析及び制御 |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018021127A Active JP6652581B2 (ja) | 2012-11-09 | 2018-02-08 | 多重プロセッサシステムのためのリアルタイム分析及び制御 |
JP2020009082A Active JP7053691B2 (ja) | 2012-11-09 | 2020-01-23 | 多重プロセッサシステムのためのリアルタイム分析及び制御 |
JP2022058455A Active JP7335387B2 (ja) | 2012-11-09 | 2022-03-31 | 多重プロセッサシステムのためのリアルタイム分析及び制御 |
Country Status (5)
Country | Link |
---|---|
US (4) | US9477585B2 (ja) |
EP (3) | EP2917837B1 (ja) |
JP (4) | JP6290913B2 (ja) |
CN (3) | CN113626269A (ja) |
WO (1) | WO2014074783A2 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101785116B1 (ko) * | 2010-12-24 | 2017-10-17 | 한양대학교 산학협력단 | 모뎀 하드웨어에 독립적인 라디오 어플리케이션을 위한 소프트웨어 정의 라디오 단말 장치 |
US20130174113A1 (en) * | 2011-12-30 | 2013-07-04 | Arteris SAS | Floorplan estimation |
CN109240704B (zh) | 2012-11-06 | 2022-06-14 | 相干逻辑公司 | 用于设计重用的多处理器编程工具包 |
US9430349B2 (en) * | 2013-01-24 | 2016-08-30 | Xcerra Corporation | Scalable test platform in a PCI express environment with direct memory access |
US9430348B2 (en) * | 2013-01-24 | 2016-08-30 | Xcerra Corporation | Scalable test platform in a PCI express environment with direct memory access |
US9336108B2 (en) | 2013-01-24 | 2016-05-10 | Xcerra Corporation | Scalable test platform |
US9459978B2 (en) * | 2013-01-24 | 2016-10-04 | Xcerra Corporation | Automated test platform utilizing segmented data sequencers to provide time controlled test sequences to device under test |
US9311444B1 (en) * | 2014-07-10 | 2016-04-12 | Sandia Corporation | Integrated circuit test-port architecture and method and apparatus of test-port generation |
CN106130961B (zh) * | 2016-06-14 | 2019-05-14 | 哈尔滨工业大学 | 用于软件无线电***的安全检测方法和软件无线电设备 |
US10132862B1 (en) * | 2016-07-21 | 2018-11-20 | Cadence Design Systems, Inc. | Code coverage mapping |
WO2018162048A1 (en) * | 2017-03-07 | 2018-09-13 | Advantest Corporation | Test apparatus and method for characterizing a device under test |
US20180316626A1 (en) * | 2017-04-28 | 2018-11-01 | Futurewei Technologies, Inc. | Guided Optimistic Resource Scheduling |
US10326540B2 (en) * | 2017-06-12 | 2019-06-18 | Litepoint Corporation | Method for controlling wireless device under test using non-link testing resources |
CN107391149A (zh) * | 2017-07-28 | 2017-11-24 | 郑州云海信息技术有限公司 | 一种硬件平台的代码生成方法及装置 |
US11397663B2 (en) * | 2017-11-02 | 2022-07-26 | Silicon Mobility Sas | Software environment for control engine debug, test, calibration and tuning |
CN108038058A (zh) * | 2017-12-21 | 2018-05-15 | 北京星河星云信息技术有限公司 | 应用软件性能的监控方法、***、存储器和服务器 |
KR102131982B1 (ko) | 2018-05-31 | 2020-07-08 | 현대오트론 주식회사 | 차량용 소프트웨어 진단 시스템 및 그것의 동작 방법 |
US11727021B2 (en) * | 2018-12-14 | 2023-08-15 | Tibco Software Inc. | Process control tool for processing big and wide data |
CN109799373A (zh) * | 2019-02-18 | 2019-05-24 | 杭州长川科技股份有限公司 | 具备多通道同步功能的任意波形发生器 |
US12021727B2 (en) * | 2019-12-10 | 2024-06-25 | Jpmorgan Chase Bank, N.A. | Systems and methods for dynamic network traffic manipulation |
CN113079524B (zh) * | 2020-01-06 | 2022-04-22 | 大唐移动通信设备有限公司 | 一种基于信令软采的信令跟踪方法、基站及可读存储介质 |
CN118093206B (zh) * | 2024-04-26 | 2024-07-02 | 北京中关村科金技术有限公司 | 面向企业应用服务的信息处理方法及*** |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6120550A (en) | 1996-10-28 | 2000-09-19 | Altera Corporation | Design file templates for implementation of logic designs |
US6571206B1 (en) * | 1998-01-15 | 2003-05-27 | Phoenix Technologies Ltd. | Apparatus and method for emulating an I/O instruction for the correct processor and for servicing software SMI's in a multi-processor environment |
JP2000284945A (ja) | 1999-03-29 | 2000-10-13 | Sharp Corp | デジタル機器及びその開発方法 |
JP2000298599A (ja) | 1999-04-13 | 2000-10-24 | Nec Commun Syst Ltd | 交換ソフトウェアの自動試験システム |
GB2352129B (en) | 1999-07-16 | 2003-08-27 | Nokia Mobile Phones Ltd | Test apparatus |
US6681351B1 (en) * | 1999-10-12 | 2004-01-20 | Teradyne, Inc. | Easy to program automatic test equipment |
US6952439B1 (en) * | 2000-10-13 | 2005-10-04 | The Titan Corporation | System for, and method of, transmitting data from a transmitter to a receiver and recovering the data at the receiver |
US6880074B2 (en) * | 2000-12-22 | 2005-04-12 | International Business Machines Corporation | In-line code suppression |
US20040078674A1 (en) * | 2001-04-04 | 2004-04-22 | Bops, Inc. | Methods and apparatus for generating functional test programs by traversing a finite state model of an instruction set architecture |
DE60131149T2 (de) * | 2001-06-13 | 2008-08-14 | Freescale Semiconductor, Inc., Austin | Passives Kommunikationsgerät und passives Zugangskontrollsystem |
JP4104546B2 (ja) * | 2001-07-26 | 2008-06-18 | キョウセラ ワイヤレス コープ. | 現場更新可能な無線通信デバイスソフトウェアを組織化するシステムおよび方法 |
US7543303B2 (en) * | 2002-03-29 | 2009-06-02 | International Business Machines Corporation | Use of multiple queues in coupling facility to provide zoning capability in a parallel sysplex environment |
US6983398B2 (en) * | 2002-04-24 | 2006-01-03 | Hewlett-Packard Development Company, L.P. | Testing processors |
US7415594B2 (en) | 2002-06-26 | 2008-08-19 | Coherent Logix, Incorporated | Processing system with interspersed stall propagating processors and communication elements |
US7146607B2 (en) | 2002-09-17 | 2006-12-05 | International Business Machines Corporation | Method and system for transparent dynamic optimization in a multiprocessing environment |
US6701412B1 (en) * | 2003-01-27 | 2004-03-02 | Sun Microsystems, Inc. | Method and apparatus for performing software sampling on a microprocessor cache |
GB2398964B (en) * | 2003-02-27 | 2005-08-17 | Toshiba Res Europ Ltd | Signal processing apparatus and methods |
US7406686B2 (en) * | 2003-06-09 | 2008-07-29 | Sun Microsystems, Inc. | Systems and methods for software performance tuning |
US7805638B2 (en) * | 2003-06-18 | 2010-09-28 | Nethra Imaging, Inc. | Multi-frequency debug network for a multiprocessor array |
US7475303B1 (en) * | 2003-12-29 | 2009-01-06 | Mips Technologies, Inc. | HyperJTAG system including debug probe, on-chip instrumentation, and protocol |
US7506311B2 (en) * | 2004-02-19 | 2009-03-17 | Oracle International Corporation | Test tool for application programming interfaces |
US7415635B1 (en) * | 2004-12-15 | 2008-08-19 | Microsoft Corporation | Integrated software test framework for performance testing of a software application |
US7814466B2 (en) | 2006-05-05 | 2010-10-12 | International Business Machines Corporation | Method and apparatus for graphically marking instructions for instrumentation with hardware assistance |
TWI360126B (en) * | 2006-09-28 | 2012-03-11 | Sandisk Corp | Nonvolatile memory with adaptive operations and me |
GB2443277B (en) * | 2006-10-24 | 2011-05-18 | Advanced Risc Mach Ltd | Performing diagnostics operations upon an asymmetric multiprocessor apparatus |
US8370806B2 (en) * | 2006-11-15 | 2013-02-05 | Qualcomm Incorporated | Non-intrusive, thread-selective, debugging method and system for a multi-thread digital signal processor |
JP2008160235A (ja) | 2006-12-21 | 2008-07-10 | Leader Electronics Corp | チューナのビットエラーレート測定の方法及び装置 |
JP4633073B2 (ja) | 2007-02-26 | 2011-02-16 | 日本電気株式会社 | データ処理システム |
US8433953B1 (en) * | 2007-08-13 | 2013-04-30 | The Mathworks, Inc. | Automatic configuration of a test environment |
US8990651B2 (en) * | 2007-09-19 | 2015-03-24 | Tabula, Inc. | Integrated circuit (IC) with primary and secondary networks and device containing such an IC |
US8028150B2 (en) * | 2007-11-16 | 2011-09-27 | Shlomo Selim Rakib | Runtime instruction decoding modification in a multi-processing array |
US20090254886A1 (en) * | 2008-04-03 | 2009-10-08 | Elliot Gibson D | Virtual debug port in single-chip computer system |
US7904870B2 (en) * | 2008-04-30 | 2011-03-08 | International Business Machines Corporation | Method and apparatus for integrated circuit design model performance evaluation using basic block vector clustering and fly-by vector clustering |
CN102197376B (zh) * | 2008-10-24 | 2014-01-15 | 国际商业机器公司 | 源代码处理方法、***及程序 |
US8930912B2 (en) * | 2008-12-16 | 2015-01-06 | Cadence Design Systems, Inc. | Method and system for performing software verification |
US8407167B1 (en) * | 2009-06-19 | 2013-03-26 | Google Inc. | Method for optimizing memory controller configuration in multi-core processors using fitness metrics and channel loads |
US20110113290A1 (en) * | 2009-11-09 | 2011-05-12 | International Business Machines Corporation | Method and system for testing configuration of environments |
CN101826913A (zh) * | 2010-01-28 | 2010-09-08 | 陈清尧 | 电视红外音频信号发射和接收器 |
US8489787B2 (en) * | 2010-10-12 | 2013-07-16 | International Business Machines Corporation | Sharing sampled instruction address registers for efficient instruction sampling in massively multithreaded processors |
US20120124558A1 (en) * | 2010-11-17 | 2012-05-17 | Microsoft Corporation | Scenario testing composability across multiple components |
US8818787B2 (en) * | 2011-01-31 | 2014-08-26 | Yahoo! Inc. | Method and system for predicting performance of software applications on prospective hardware architecture |
JP2012181666A (ja) | 2011-03-01 | 2012-09-20 | Nec Corp | 情報処理装置、情報処理方法及び情報処理プログラム |
US20130104105A1 (en) * | 2011-04-18 | 2013-04-25 | Julian M. Brown | Test data supply chain manager for an integrated testing platform |
US8898408B2 (en) * | 2011-12-12 | 2014-11-25 | Dell Products L.P. | Memory controller-independent memory mirroring |
US9362003B2 (en) * | 2012-03-09 | 2016-06-07 | Sandisk Technologies Inc. | System and method to decode data subject to a disturb condition |
CN102662841B (zh) * | 2012-04-01 | 2014-11-05 | 北京航空航天大学 | 一种软硬件结合的可靠性综合试验剖面构造方法 |
JP2017049742A (ja) * | 2015-09-01 | 2017-03-09 | キヤノン株式会社 | 画像処理方法、画像処理装置、ロボット装置、プログラム、及び記録媒体 |
-
2013
- 2013-11-08 JP JP2015541913A patent/JP6290913B2/ja active Active
- 2013-11-08 WO PCT/US2013/069075 patent/WO2014074783A2/en active Application Filing
- 2013-11-08 CN CN202110934466.9A patent/CN113626269A/zh active Pending
- 2013-11-08 CN CN201810480764.3A patent/CN108717387B/zh active Active
- 2013-11-08 EP EP13795381.6A patent/EP2917837B1/en active Active
- 2013-11-08 CN CN201380065983.0A patent/CN104871140B/zh active Active
- 2013-11-08 EP EP23176411.9A patent/EP4235444A3/en active Pending
- 2013-11-08 US US14/074,925 patent/US9477585B2/en active Active
- 2013-11-08 EP EP18211655.8A patent/EP3499371B1/en active Active
-
2016
- 2016-09-26 US US15/276,370 patent/US10114739B2/en active Active
-
2018
- 2018-02-08 JP JP2018021127A patent/JP6652581B2/ja active Active
- 2018-10-17 US US16/162,558 patent/US11720479B2/en active Active
-
2020
- 2020-01-23 JP JP2020009082A patent/JP7053691B2/ja active Active
-
2022
- 2022-03-31 JP JP2022058455A patent/JP7335387B2/ja active Active
-
2023
- 2023-06-15 US US18/210,192 patent/US20230359548A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3499371B1 (en) | 2023-06-07 |
EP2917837B1 (en) | 2019-01-02 |
JP2015535621A (ja) | 2015-12-14 |
JP2020074192A (ja) | 2020-05-14 |
US11720479B2 (en) | 2023-08-08 |
CN108717387A (zh) | 2018-10-30 |
US20140137082A1 (en) | 2014-05-15 |
EP4235444A2 (en) | 2023-08-30 |
US20190050324A1 (en) | 2019-02-14 |
JP2018106733A (ja) | 2018-07-05 |
CN113626269A (zh) | 2021-11-09 |
US9477585B2 (en) | 2016-10-25 |
JP7335387B2 (ja) | 2023-08-29 |
JP2022084921A (ja) | 2022-06-07 |
WO2014074783A2 (en) | 2014-05-15 |
EP3499371A3 (en) | 2019-09-18 |
CN108717387B (zh) | 2021-09-07 |
CN104871140B (zh) | 2018-06-19 |
EP2917837A2 (en) | 2015-09-16 |
JP7053691B2 (ja) | 2022-04-12 |
EP3499371A2 (en) | 2019-06-19 |
WO2014074783A3 (en) | 2014-07-03 |
JP6652581B2 (ja) | 2020-02-26 |
EP4235444A3 (en) | 2024-01-03 |
US10114739B2 (en) | 2018-10-30 |
US20230359548A1 (en) | 2023-11-09 |
CN104871140A (zh) | 2015-08-26 |
US20170010958A1 (en) | 2017-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7335387B2 (ja) | 多重プロセッサシステムのためのリアルタイム分析及び制御 | |
US10288681B2 (en) | Test architecture with a small form factor test board for rapid prototyping | |
US11726812B2 (en) | Dynamic reconfiguration of applications on a multi-processor embedded system | |
US9449138B2 (en) | Prototype and emulation system for multiple custom prototype boards | |
US10521544B2 (en) | Traffic shaping in networking system-on-chip verification | |
US8997034B2 (en) | Emulation-based functional qualification | |
Panesar et al. | Deterministic parallel processing | |
US8281280B2 (en) | Method and apparatus for versatile controllability and observability in prototype system | |
US8949752B2 (en) | System and method of emulating multiple custom prototype boards | |
CN112162879A (zh) | 一种实时多核dsp软件的日志*** | |
Lee et al. | A low-cost SOC debug platform based on on-chip test architectures | |
US10635769B1 (en) | Hardware and software event tracing for a system-on-chip | |
Panesar et al. | Multi-Core System-on-Chip in Real World Products | |
Steeden | Communication-centric debug of systems-on-chip using networks-on-chip | |
Nejad | High-Level Debugger Software for Communication-Centric Transaction-Based Debug Infrastructure of Systems on Chip (Æthereal Platform) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161017 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170711 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170830 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170831 |
|
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: 20180109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180208 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6290913 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |