JP2017505031A - エミュレーションにおけるパーティショニングおよびプラットフォームのプロトタイピングを用いたダイナミックインターコネクト - Google Patents

エミュレーションにおけるパーティショニングおよびプラットフォームのプロトタイピングを用いたダイナミックインターコネクト Download PDF

Info

Publication number
JP2017505031A
JP2017505031A JP2016540655A JP2016540655A JP2017505031A JP 2017505031 A JP2017505031 A JP 2017505031A JP 2016540655 A JP2016540655 A JP 2016540655A JP 2016540655 A JP2016540655 A JP 2016540655A JP 2017505031 A JP2017505031 A JP 2017505031A
Authority
JP
Japan
Prior art keywords
signal
transmission
frequency
channel
dynamic
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
JP2016540655A
Other languages
English (en)
Other versions
JP6277279B2 (ja
Inventor
オルブリッヒ,フランツ−ヴィルヘルム
プラテ,ラルフ
マットナー,トルシュテン
ヴェルク,ハイコ
Original Assignee
インテル コーポレイション
インテル コーポレイション
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 インテル コーポレイション, インテル コーポレイション filed Critical インテル コーポレイション
Publication of JP2017505031A publication Critical patent/JP2017505031A/ja
Application granted granted Critical
Publication of JP6277279B2 publication Critical patent/JP6277279B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • H03K19/17744Structural details of routing resources for input/output signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4059Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0175Coupling arrangements; Interface arrangements
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

ダイナミックインターコネクトが、ここにおいて説明される。ダイナミックインターコネクトは、送信モジュール、受信モジュール、およびマルチプレクサを含んでいる。送信チャンネルのグループにおいて信号変化が検出され、かつ、信号変化に応じて、マルチプレクサの出力が信号変化を生じているチャンネルへスイッチされる。

Description

本技術は、一般的に、時分割データ多重化(time division data multiplexing)および送信に関する。より特定的には、本技術は、周波数認識の(frequency aware)機能を用いたダイナミックインターコネクト(dynamic interconnect)に関する。
フィールドでプログラム可能なゲートアレイ(FPGA)の機能は、劇的に増大してきたが、一方で、FPGAの入力/出力(I/O)ピンの数は安定して維持されている。複雑なチップデザインを正確にプロトタイプするためには、チップデザインをエミュレートするように数個のFPGAがリンクされ得る。FPGAを使用してチップデザインをエミュレートすることにより、デザイナーは、意図するようなチップデザイン機能を確保することができる。一つのFPGAを使用することが望まれるが、しかしながら、デザインをエミュレートするために十分なI/Oピンを有していないことがある。対照的に、数個のFPGAを使用することは、プロトタイプの遅いスピードを結果として生じ得る。
図1は、4個の通信チャンネルを使用する送信モジュールと受信モジュールを含んでいるダイナミックインターコネクトを図示している。 図2は、信号変化検出のためのタイミングと送信順序の変更を説明している。 図3は、第1パーティションと第2パーティションにおいて実行しているチャンネルを用いたアプリケーションのブロック図である。 図4は、ランタイムダイナミック多重化スキームのための方法を説明するプロセスフローチャートである。 図5は、周波数認識のダイナミック多重化スキームのための方法を説明するプロセスフローチャートである。 図6には、本発明に従ったシステムオンチップ(SOC)の実施例が描かれている。
類似のコンポーネントまたは機能を参照するように、明細書および図面の全体にわたり同一の番号が使用されている。100のシリーズの番号は、図1において最初に見られる機能を参照し、200のシリーズの番号は、図2において最初に見られる機能を参照する、等。
FPGAの機能は、過去数年にわたり劇的に増大したが、一方、I/Oピンの数は安定して維持されている。FPGAベースのエミュレーションまたはプロトタイピングプラットフォームについて、キャパシティ(capacity)とI/Oピンの数との間の増加しているギャップが、ますます危機的になっている。I/Oピンの欠乏は、複数のFPGAにパーティション化されるデザインに対してデータ送信におけるボトルネックを導入し得る。
ここにおいて説明される実施例は、エミュレーションにおけるパーティショニング(partitioning)およびプラットフォームのプロトタイピング(prototyping)を用いたダイナミックインターコネクトに向けたものである。いくつかの事例においては、ランタイム時分割多重化(TMD)スキームは、ランタイムダイナミック多重化スキームを使用することによって、より効率的に2つのデバイス間での信号の送信ができるようにする。デバイスは、FGPAであり得る。ランタイムスキームを通じて、時分割多重化データ接続について要求される送信時間は、送信信号を並列比較ユニット(parallel compare unit)へとグループ化すること、および、信号値が変化したグループに対して高い送信優先度を割り当てることによって最適化される。送り手(sender)は、受信チップに対して信号変化をフラグ付け(flag)することができ、そして、受信チップは、変化信号がディアサート(de−assert)された後で通常オペレーションを続けることができる。さらに、受信チップは、変化なしの信号の受信においてはウェイト(wait)しない。
本技術は、また、異なる信号グループのスイッチング特性をアカウントへと使用し、そして、ハードウェアプラットフォームの利用可能な物理的リンクをより良く利用するためにそれぞれのグループに対して異なるインターコネクトを選択する。ここにおいて使用されるように、スイッチング特性は、信号変化の周波数を参照する。さらに、ここにおいて使用されるように、インターコネクトの実施は、これらに限定されるわけではないが、異なるTDMおよび要求される物理的リンクの異なる数量を含んでよい。
実施例において、信号のスイッチング周波数は、要求されるTDMスキーマ(schema)を計算するときに使用され得る。同一のアプリケーション周波数において実行されている信号は、グループ化され得る。そして、要求される周波数と要求されるインターコネクト幅の知識が、それぞれ個別のグループに対して最良にフィットする物理的リンクの数を計算するために使用され得る。それぞれのグループは、利用可能なリンク全数のうちほんの一部(fraction)を使用している。
図1は、4個の通信チャンネルを使用する送信モジュール102と受信モジュール104を含んでいるダイナミックインターコネクト100を図示している。専用コントロールモジュール106は、送信されるべきチャンネルを選択する。この実施例においては、左側におけるn個のユーザ信号108が4つのチャンネル110A、110B、110C、および110Dへと分割される。それぞれのチャンネル110A、110B、110C、および110Dは、コントロールモジュール106によって同期された固定の多重化スキーム(fixed multiplexing scheme)を処理する。
チャンネル110Aといった、それぞれのチャンネル110について、TDMマルチプレクサ(multiplexer)112が、ファーストインファーストアウト(first in、first out)バッファ114の出力と比較される。TDMマルチプレクサ112の出力をデータファーストインファーストアウト(FIFIO)バッファ114の出力に対して比較することによって、信号変化が検出される。スタートシンク(start sync)信号113は、それぞれのTDMマルチプレクサがそれぞれのFPGAに対して同期化されたことを確保するように、TDMマルチプレクサ112を開始するために使用され得る。カウンタが、TDMマルチプレクサを同期化するためのメカニズムとして使用され得る。いくつかの事例においては、参照番号116でXOR操作を使用して、比較が生じる。111での信号変化検出は、出力を変化が検出されたチャンネルへスイッチする。このチャンネルは、次に、少なくとも一つの完全なTDMサイクルのために選択される。送信のために一つのチャンネルが選択される場合、FIFO114の入力データが、実際の送信データである。そうでなければ、FIFO114の出力データが、FIFOの入力へフィードバックされる。従って、FIFO114の入力は、古いFIFO114データ、または、マルチプレクサ117から送信されたデータ、参照番号115で多重化されたもの、から選択し得る。ソースセレクト128は、正しいデータがFIFO114へ差し戻されるように、マルチプレクサ115をコントロールするために使用される。
あらゆるチャンネルにおいて信号変化が検出されない場合、チャンネル番号により送信命令(transmission order)が与えられる。例えば、この実施例において、それぞれのチャンネルに対して要求される多重化ファクタ(multiplexing factor)は、TDM=n/4/(出力ピンの数)、である。いかなる場合でも、それぞれのチャンネルの出力は、別のマルチプレクサ117へ送付される。このマルチプレクサは、送信データ出力を受信モジュール104に対して渡す。
専用コントロールバス118は、コントロールとチャンネルデコードブロック120を通じて現在の通信チャンネルにフラグ付けしている受信モジュール104に対して送信される。いくつか事例において、コントロールバスは、マルチプレクサ117から受信モジュール104に対して送信されたデータの起点(origination)を示している。受信TDMデマルチプレクサ(de−multiplexer)モジュール122は、コントロールバス118上のチャンネル情報を評価することによって、送信モジュール102に対して同期化される。いくつかの事例においては、チャンネル3から0へのスイッチングが受信TDMカウンタを同期化する。
マルチプレクサ130は、送信モジュール102から受信したチャンネルデータを分離化(demultiplex)するために使用される。コントロールとチャンネルデコード120は、入力としてコントロール信号118を捉え、そして、チャンネル選択信号132を用いてマルチプレクサ130のチャンネルを選択するために、これを使用する。選択されたチャンネルは、次に、参照番号134で、データとして、受信モジュールから外へ送付される。
信号変化が検出される限り、送信コントロールモジュール106は、アプリケーションデザインに対して「データステーブル(”data stable”)」信号126をディアサートすることによって、これをフラグ付けする。データステーブルは、変化が検出されていないことを示している。コンフィグレーション期間の後で、データステーブル信号はディアサートされてよい。この信号126は、受信モジュール104に対するコントロールバス118においても、同様に、含まれ得るものである。「データステーブル」アサーション(assertion)について概ねのディレイ(delay)を設定することによって、次のアプリケーションクロックサイクルの実行が自動的に遅らせられ得る。ディレイは、全ての変化している信号が受信側へ成功裡に送信されたことが保証され、かつ、全ての信号が受信モジュール出力において安定しているまでである。
複雑なプロトタイピングまたはエミュレーションシステムにおいては、インターコネクト100によって図示されるように、デザインは複数のFPGAの上に分割される。同期システム(syncronous system)のために、クロックエッジ(clock edge)は、ストレージエレメントへの全ての入力信号が安定した後で発生する。このことは、デザインがフリップフロップ(Flip−Flop)境界において分割され得ないときに、問題を導き得る。これらの場合には、全てのアプリケーションデザインに対して実際に最も速いクロック期間を決定するために複数のチップにわたるパス分析(path analysis)が求められる。最悪ケースの信号パスによって判断されるものである。このパスは、複数のマルチプレクサおよびデマルチプレクサのセクションを含んでよい。
図1において説明されるダイナミックインターコネクトなしでは、計算された最悪ケースの信号ディレイに基づいて、デザインパフォーマンスは、いつでも遅いものである。ダイナミックインターコネクトを用いると、次のアプリケーションクロックエッジが動的にイネーブル(enable)されるので、システムパフォーマンスは、より速い。最悪ケースのパス上で信号が変化する場合に限り、パフォーマンスが、ダイナミックインターコネクトを使用しないシステムにおけるものと同じ値にまで落ち得るものである。最悪ケースのパス上に信号変化を伴ってさえも、同一のインターコネクトモジュールに属している全てのチャンネルにおいて信号変化がない限り、デザインは我々の発明を用いてより速く実行され得るものである。
図2は、信号変化検出のためのタイミング200と送信順序の変更を説明している。説明を容易にするために、図2は、4つのチャンネルを含んでいる。参照番号110Aにおけるチャンネル0、参照番号110Bにおけるチャンネル1、参照番号110Cにおけるチャンネル2、および参照番号110Dにおけるチャンネル3、である。この実施例において、参照番号110Aにおけるチャンネル0は最も高い優先度を有しており、参照番号110Bにおけるチャンネル1は2番目に高い優先度を有しており、参照番号110Cにおけるチャンネル2は3番目に高い優先度を有しており、そして、参照番号110Dにおけるチャンネル3は最も低い優先度を有している。優先度は、種々のデザインパラメータに基づいて割り当てられ得る。アプリケーション周波数、異なるTDM、要求される物理的リンクの異なる数量、等といったものである。
参照番号202において送信スロットが図示されている。それぞれのスロットは、所定の時点における送信のためのチャンネルスケジュールを示す番号を有している。送信スロットは、時間長のTDM期間である。参照番号204におけるデータ変化信号は、データにおいて変化がない場合にロー(low)であり、かつ、送信データにおいて変化がある場合にハイ(high)である。さらに、参照番号206におけるデータステーブル信号は、データが安定している場合にハイである。参照番号206におけるデータステーブル信号は、データが変化している場合にローであり、そして、最後のデータ変化の後で一定期間が過ぎるまではハイに戻らない。いくつかの事例において、一定期間は、コンフィグレーションディレイ(configuration delay)として参照される。
データ変化の前に、チャンネルスケジューラ(scheduler)は、ラウンドロビン(round robin)アルゴリズムといった、あらゆるアルゴリズムに従って送信のためのチャンネルを選択してよい。参照番号208における時間「A」においては、参照番号110Cにおけるチャンネル2の入力が変化している。この変化は、参照番号206におけるデータステーブル信号を設定可能な時間(configurable time)についてディアサートし、そして、チャンネル2は次のスロットにおいて送信のためにマーク付けされる。設定可能な時間は、デザインによって実施されるあらゆる時間期間であってよい。上述のように、それぞれの送信スロットは、TDM送信クロックサイクルを存続させる。参照番号110Aにおけるチャンネル0のデータが参照番号110Cにおけるチャンネル2の直ぐ後で変化し、かつ、参照番号110Aにおけるチャンネル0がより高い優先度を有しているので、参照番号110Aにおけるチャンネル0が、参照番号110Cにおけるチャンネル2の前に次のタイムスロットにおいて送信のためにマーク付けされる。参照番号210における時間「B」においては、参照番号110Bにおけるチャンネル1のデータと参照番号110Dにおけるチャンネル3のデータが変化している。参照番号110Bにおけるチャンネル1は、より高い優先度を有しており、そして、参照番号110Dにおけるチャンネル3の前に、最初に送信される。参照番号110Dにおけるチャンネル3が送信された後で、チャンネルスケジューラは、ラウンドロビンアルゴリズムに戻る。時間「A」において割り込みされて、チャンネル2を送信することによって継続するものである。データステーブル信号は、データ変化ディアサートの後で設定時間が経過したときにアサートされる。
参照番号212における時間「C」においては、参照番号110Dにおけるチャンネル3でのデータ入力が変化し、そして、次の送信スロットに対してスケジュールされる。他のデータ変化が存在しないので、参照番号110Dにおけるチャンネル3が送信され、かつ、設定可能時間が経過した後で、データステーブル信号が再びアサートされる。従って、アプリケーションデザインは、時間「A」におけるよりもずっと速く実行を継続することができるであろう。
ダイナミックインターコネクトを通じて、送信チャンネルの数が設定可能である。信号値変化検出がそれぞれのチャンネルに対して適用され、そして、変化している信号を伴うチャンネルに対して信号送信が優先度付けされる。いくつかの実施例においては、送信から受信モジュールまで小さなコントロールバスが使用される。さらに、インターコネクトの送信側におけるロッキングメカニズム(locking mechanism)は、信号が変化している間に次のアプリケーションクロックエッジを防いでいる。全体に、ダイナミックインターコネクトは、通常のTDMデマルチプレクサモジュールと比較して、受信側において非常に小さなオーバーヘッドを結果として生じる。加えて、いくつかの実施例において、全てのチャンネルについて送信データが変化しない場合に、アプリケーションデザインは、固定TDMスキームを使用して構成されたシステムよりも速く、チャンネル時間の数に至るまで実行することができよう。
図3は、第1パーティション304と第2パーティション306において実行しているチャンネルを用いたアプリケーション302のブロック図である。アプリケーション302は、異なるクロックドメインを判断するために分析され、そして、異なるドメインを実行しているアプリケーション302の信号は、それのクロックドメインに従ってグループ化または分割される。例えば、アプリケーションは、参照番号308における第1CLK1ドメイン、および、参照番号310における第2CLK2ドメインを含んでいる。説明を容易にするために、2つのクロックドメイン308と310が図示されている。しかしながら、あらゆる数のクロックドメインが使用され得る。
信号が分割される場合に、グループごとの信号の全体数量が決定される。この実施例においては、参照番号312において信号グループnが存在し、そして、参照番号314において信号グループmが存在する。参照番号312における信号グループnは第1クロックドメイン308において実行し、一方で、参照番号314における信号グループmは第2クロックドメイン310において実行する。
参照番号312における信号グループnおよび参照番号314における信号グループmのそれぞれに対して最適な時分割多重化(TMD)ファクタを計算するために、システムの中で利用可能な物理的リンクの数が要求される。最適TDMは、fmaxとして参照されてよく、そして、アプリケーションにおける全てのクロックのうち最も高い周波数である。この実施例において、アプリケーションのクロックは、参照番号308における第1CLK1ドメイン、および、参照番号310における第2CLK2ドメインである。さらに、参照番号316においてパーティション304とパーティション306との間に物理的リンクの数が表されている。
これらのパラメータに基づいて、参照番号312における信号グループnおよび参照番号314における信号グループmのそれぞれに対する個別のTDMファクタは、以下のように計算され得る。
n’=f(n、f、fmax、x)
m’=f(m、f、fmax、x)
ここで、n’は、参照番号312における信号グループnに対するTDMファクタであり、かつ、信号グループn、物理的リンクf上で実行している第1仮想リンクのためのアプリケーション周波数、最適TDMfmax、および利用可能な物理的リンクxの数、に係る関数である。同様に、m’は、参照番号314における信号グループに対するTDMファクタであり、かつ、信号グループm、物理的リンクf上で実行している第2仮想リンクのためのアプリケーション周波数、最適TDMfmax、および利用可能な物理的リンクxの数、に係る関数である。
個別のTDMファクタを計算することによって、より遅いアプリケーション周波数において実行している信号グループは、パーティション間で利用可能な物理的リンクのうちより小さな部分を使用することができる。しかし、それらのリンクに対してより高いTDMファクタを有することによってこれを補償することができる。これらのリンクが、物理的リンクにわたる信号状態を得るためにより高いタイミングバジェット(timing budget)を有しているので、このことが行われ得る。一方で、最も高いスイッチング周波数を伴う信号グループが、最も小さいTDMファクタを使用するべきである。このことが、主にエミュレーションパフォーマンスを制限しているからである。
図4は、ランタイムダイナミック多重化スキームのための方法を説明するプロセスフローチャートである。ブロック402においては、複数の送信信号が並列比較ユニット(parallel compare unit)の中にグループ化される。ブロック404においては、信号の送信順序が、並列比較ユニットの中で変化している信号値および送信優先度に応じて、動的に(dynamically)並列比較ユニットの中で決定される。いくつかの実施例においては、変化している信号に応じて、データステーブル信号が一定期間にディアサートされる。一定期間は、設定可能なタイムディレイであってよく、システムの特定のデザインに従って実施される。ブロック406においては、信号の送信順序に基づいて、送信のための信号がスケジュールされる。信号は、チャンネルスケジューラによって割り当てられた時間スロットであり得る。いくつかの事例において、時間スロットは、TDM送信クロックサイクルの長さで継続する。
図5は、周波数認識(frequency aware)のダイナミック多重化スキームのための方法を説明するプロセスフローチャートである。ブロック502においては、複数のクロックドメインに対してアプリケーションが分析される。ブロック504においては、複数の送信信号が、同じクロックドメインにおいて実行している数多くのグループの中へグループ化される。それぞれのグループ毎の信号の全体数量は、アプリケーション周波数、要求される周波数、または要求されるインターコネクト幅、を使用して計算され得る。もしくは、物理的リンクの数を計算するために、これらのあらゆる組み合わせが使用される。
以下の表は、周波数認識のダイナミックインターコネクトに係るいくつかの計算結果を示している。
Figure 2017505031
第1の行はN−physicalを示しており、リンクに対する利用可能な物理的ワイヤの全体数量である。ここにおいて使用されるように、リンクは、2つのFPGA間のリンクであってよい。第2の行はf1であり、物理的リンク上で実行している第1仮想リンクに対するアプリケーション周波数を表している。第3の行はN1−virtualであり、物理的リンク上で実行している第1仮想リンクのために要求される仮想ワイヤの数を示している。第4の行はf2であり、物理的リンク上で実行している第2仮想リンクに対するアプリケーション周波数を表している。第5の行はN2−virtualであり、物理的リンク上で実行している第2仮想リンクのために要求される仮想ワイヤの数を示している。
「TDMsimple」行は、全ての仮想リンクが単に追加され、かつ、利用可能な物理的リンクを介してルート(route)される場合に、従来の多重化方法を使用して結果として生じるTDMを示している。「TDMnew」行は、ここにおいて説明される本技術を用いた結果として生じるTDMファクタを示しており、仮想リンクのスイッチング周波数を考慮に入れている。最後の行は、従来の多重化方法と比較して本技術に係るパフォーマンスの改善または増加を示している。
網掛け(yellow colored)フィールドは、ベースラインのシナリオ(#1)と比較して、どの値が変化したかを示している。上記の表において示されるように、それぞれのTDMファクタは、ここにおいて説明される技術に従った新たなTDMファクタと同じ量のデータを転送するために、より多くのクロックサイクルを使用する。特に、第7のシナリオに対して、新たなTDMファクタは、60クロックサイクルを使用してFPGA間でデータを転送する。一方で、従来のTDMは、同じ量のデータを114クロックサイクルにおいて転送する。このようにして、データを転送するために使用されるクロックサイクルの数が、54サイクルクロック削減されており、これは50%に近い改善である。
次に図6に移ると、本発明に従ったシステムオンチップ(SOC)の実施例が描かれている。特定の説明的な実施例として、SOC600はユーザ装置(user equipment、UE)の中に含まれている。一つの実施例において、UEは、通信のためにエンドユーザによって使用されるべきあらゆるデバイスを参照している。ハンドヘルドフォン、スマートフォン、タブレット、ウルトラシン(ultre−thin)ノートブック、ブロードバンドアダプタ付ノートブック、または、あらゆる他の同様な通信デバイス、といったものである。しばしばUEは基地局(base station)またはノードに対して接続し、本質的に、GSM(登録商標)ネットワークにおけるモバイルステーション(MS)に対して潜在的に対応している。
ここで、SOC600は、2つのコア606と607を有している。上記と同様に、コア606と607は、インストラクションセットアーキテクチャに従ってよい。Intel(R)Architecture CoreTMベースプロセッサ、Advanced Micro Devices、Inc.(AMD)プロセッサ、MIPSベースプロセッサ、ARMベースプロセッサデザイン、または、それらのカスタマーといったものであり、そのライセンシーまたはアダプター(adopter)も同様である。コア606と607は、システム600の他のパーツと通信するために、バスインターフェイスユニット609とL2キャッシュ610に関連するキャッシュコントロール608に対して接続されている。インターコネクト610は、オンチップ(on−chip)インターコネクトを含んでいる。IOSF、AMBA、または、上記の他のインターコネクト、といったものであり、上記の発明の一つまたはそれ以上の態様を実施する可能性のあるものである。
インターフェイス610は、他のコンポーネントに対する通信チャンネルを提供する。SIMカードを用いたインターフェイスに対するSubscriber Identity Module(SIM)630、SOC600をイニシャライズおよびブートするためのコア606と607による実行のためのブートコードを保持するブートROM635、外部メモリ(例えば、DRAM660)とインターフェイスするためのSDRAMコントローラ640、不揮発性メモリ(例えば、フラッシュ665)とインターフェイスするためのフラッシュコントローラ645、周辺機器とインターフェイスするためのペリフェラルコントロールQ1 650(例えば、シリアルペリフェラルインターフェイス)、入力(例えば、タッチ可能入力)を表示かつ受信するためのビデオコーデック620とビデオインターフェイス625、グラフィクス関連の計算を実行するためのGPU615、等といったものである。これらのインターフェイスのうちあらゆるものはここにおいて説明される本発明の態様を包含し得るものである。
加えて、システムは、ブルートゥース(登録商標)モジュール670、3Gモデム675、GPS680、およびWiFi685といった、通信のための周辺機器を示している。上述のように、UEは、通信のための無線(radio)を含んでいる。結果として、これらのペリフェラル通信モジュールは、必ずしも全てを要しない。しかしながら、UEの中に、外部通信のためのいくつかの形式の無線が含まれるべきものである。
実施例1
ここにおいては、ダイナミックインターコネクトが説明される。ダイナミックインターコネクトは、通信モジュール、受信モジュール、およびマルチプレクサを含んでいる。信号変化が送信チャンネルのグループにおいて検出され、そして、信号変化に応じて、マルチプレクサの出力が変化を生じているチャンネルへスイッチされる。
信号変化は、マルチプレクサの出力をデータファーストインファーストアウトバッファの出力と比較することによって検出され得る。マルチプレクサの出力は、少なくとも一つのTDMサイクルに対して変化が生じているチャンネルに対してスイッチされてよい。さらに、信号変化がないことに応じて、送信チャンネルの送信順序は、チャンネル番号によって与えられてよい。専用コントロールバスは、受信モジュールに対して送信されてよく、そして、専用コントロールバスは、現在の送信チャンネルをフラグ付けする。受信モジュールのTDMマルチプレクサは、コントロールバス上のチャンネル情報を評価することによって送信モジュールに対して同期化されてよい。送信コントロールモジュールは、データステーブル信号をディアサートすることによって信号変化をフラグ付けする。加えて、データステーブル信号は、受信モジュールに対するコントロールバス上に含まれ得る。データステーブル信号のコンフィグレーションは、変化している信号が受信されて安定するまで次のクロックサイクルを遅らせてよく、そして、送信チャンネルのグループを決定するために送信チャンネルのスイッチング周波数が分析される。
実施例2
ここにおいては、ランタイムダイナミック多重化スキームが説明される。本方法は、複数の送信信号を並列比較ユニットへとグループ化すること、および、並列比較グループと送信優先度の中で変化している信号に応じて、並列比較ユニットの中で動的に信号の送信順序を決定することを含んでいる。本方法は、また、信号の送信順序に基づいて、送信のための信号をスケジュールすることも含んでいる。
データステーブル信号は、変化している信号値に応じた一定期間ディアサートされてよく、そして、一定期間は設定可能な時間遅延であってよい。信号は、信号の送信順序において送信のためのスロットに割り当てられ得る。そして、それぞれのスロットは、TDM送信クロックサイクル続く。データステーブル信号は、信号値の変化から設定時間が経過した後でアサートされ得る。
実施例3
ここにおいては、周波数認識のダイナミックインターコネクトが説明される。周波数認識のダイナミックインターコネクトは、送信モジュール、受信モジュール、およびマルチプレクサを含んでいる。信号変化が、送信チャンネルの複数のグループにおいて検出される。アプリケーション周波数によってグループ化されたものである。信号変化に応じて、マルチプレクサの出力は、数多くの物理的リンクを使用して、変化が生じているチャンネルへスイッチされる。
少なくともアプリケーション周波数、要求される周波数、またはインターコネクト幅、もしくは、それらのあらゆる組み合わせが、物理的リンクの数を計算するために使用され得る。送信チャンネルのそれぞれのグループは、利用可能なリンク全数のうちほんの一部を使用し得る。さらに、複数の仮想リンクの合計は、異なるパーティションとデバイス間で利用可能な物理的リンクにわたりルートされ得る。複数の送信チャンネルのグループは、複数の異なるクロックドメインにわたりアプリケーション周波数によってグループ化され得る。
実施例4
ここにおいては、周波数認識のダイナミック多重化スキームのための方法が説明される。本方法は、複数のクロックドメインに対するアプリケーションを分析すること、および、複数の送信信号を同一のクロックドメイン上で実行されている数多くのグループの中へとグループ化することを含んでいる。
それぞれのグループ毎の信号の総数量は、アプリケーション周波数、要求される周波数、または要求されるインターコネクト幅を使用して計算され得る。もしくは、これらのあらゆる組み合わせが、物理的リンクの数を計算するために使用される。それぞれの周波数グループに対する最適な時分割多重化ファクタは、物理的リンクおよび他のインターコネクト実施の数に基づいて計算されてよい。より遅い周波数において実行している信号グループは、パーティション間で利用可能な物理的リンクのより少ない部分を使用し、そして、それらのリンクに対してより高い時分割多重化ファクタを有し得る。より高い周波数において実行している信号グループは、パーティション間で利用可能な物理的リンクのより大きい部分を使用し、そして、それらのリンクに対してより低い時分割多重化ファクタを有し得る。
本発明は、限定された数の実施例に関して説明されてきたが、当業者であれば、そこから数多くの変更および変形を正しく理解するであろう。添付の請求項は、そうした変更および変形の全てを、本発明の真の精神および範囲内のものとしてカバーする、ということが意図されている。
デザインは、種々のステージを通過してよい。創作からシミュレーション、製作までである。デザインを表わすデータは、数多くの方法においてデザインを表し得る。最初に、シミュレーションにおいて役に立つように、ハードウェアが、ハードウェア記述言語または別の機能性記述言語を使用して表わされ得る。加えて、デザインプロセスのいくつかのステージにおいて、ロジック及び/又はトランジスタゲートを用いた回路レベルモデルが作成され得る。さらに、大部分のデザインは、あるステージで、ハードウェアモデルにおける種々のデバイスの物理的配置を表しているデータのレベルに到達する。従来の半導体製造技術が使用される事例において。ハードウェアを表しているデータは、集積回路を生成するために使用されるマスクのための異なるマスクレイヤにおける種々の機能の存在または不存在を規定しているデータであり得る。デザインのあらゆる表現において、データは、あらゆる形態のマシンで読取り可能な媒体の中に保管されてよい。メモリ、もしくは、ディスクといった磁気または光ストレージは、光または電波変調を介して送信された情報、または、そうでなければ、そうした情報を送信するために生成された情報を保管するためのマシンで読取り可能な媒体であり得る。コードまたはデザインを示している又は伝送している電気的搬送波が送信される場合、電気信号のコピー、バッファリング、または、再送信が実行される限度において、新たなコピーが作成される。従って、通信プロバイダまたはネットワークプロバイダは、少なくとも一時的に、有形の、マシンで読取り可能な媒体に、搬送波の中にエンコードされた情報といった、本発明の実施例に係る技術を具現化しているアーティクル(article)を保管し得る。
ここにおいて使用されるモジュールは、ハードウェア、ソフトウェア、及び/又は、ファームウェアのあらゆる組み合わせを参照する。例として、モジュールは、マイクロコントローラといった、一時的でない媒体と関連付けされたハードウェアを含み、マイクロコントローラによって実行されるように適合されたコードを保管する。従って、モジュールに対する参照は、一つの実施例においては、ハードウェアを参照する。一時的でない媒体において保持されるべきコードを認識及び/又は実行するように特別に構成されているものである。さらに、別の実施例において、モジュールの使用は、コードを含んでいる一時的でない媒体を参照する。既定のオペレーションを実施するためにマイクロコントローラによって実行されるように特別に構成されているものである。そして、推測できるように、さらに別の実施例において、用語モジュールは(この例において)、マイクロコントローラと一時的でない媒体の組み合わせを参照し得る。分離したものとして示されるモジュール境界は、しばしば、一般に変動し、かつ、潜在的にオーバーラップする。例えば、第1および第2モジュールは、ハードウェア、ソフトウェア、ファームウェア、または、それらの組み合わせを共有してよく、一方で、いくつかの独立したハードウェア、ソフトウェア、または、ファームウェアを潜在的に維持している。一つの実施例において、用語ロジックの使用は、トランジスタ、抵抗、といったハードウェア、または、プログラム可能なロジックデバイスといった、他のハードウェア、を含んでいる。
フレーズ「ために(”to”)」または「ために構成されている(”configured to”)」は、一つの実施例においては、指示または決定されたタスクを実行するための装置、ハードウェア、ロジック、またはエレメントを、配置すること、一緒に置くこと、製造すること、売却をオファーすること、取り込むこと、及び/又は、デザインすることを参照する。この例においては、それらの動作していない装置またはエレメントは、上記の指示されたタスクを実行するためにデザイン、結合、及び/又は、そうでなければインターコネクトされる場合には、いまだに、指示されたタスクを実行する「ために構成されている」ものである。純粋に説明的な実施例として、ロジックゲートは、オペレーションの最中に0または1を提供し得る。しかし、クロックに対してイネーブル(enable)信号を提供する「ために構成されている」ロジックゲートは、1または0を提供し得る全ての潜在的なロジックゲートを含むわけではない。代わりに、ロジックゲートは、いくつかの方法で、オペレーションの最中に1または0の出力がクロックをイネーブルするように結合されたものである。用語「ために構成されている」の使用は、オペレーションを要しないことに再び留意する。しかし、代わりに、装置、ハードウェア、及び/又は、エレメントの潜在的状態に注目する。潜在的状態において、装置、ハードウェア、及び/又はエレメントは、装置、ハードウェア、及び/又はエレメントが動作しているときの特定のタスクを実行するようにデザインされている。
さらに、フレーズ「可能な(”capable of/to”)」及び/又は「動作可能な(”operable to”)」は、一つの実施例において、装置、ロジック、ハードウェア、及び/又は、エレメントを特定されたやり方で使えるようにするようにデザインされた、いくつかの装置、ロジック、ハードウェア、及び/又は、エレメントを参照する。上述のように、可能な、または、動作可能な、の使用は、一つの実施例においては、装置、ロジック、ハードウェア、及び/又は、エレメントの潜在的な状態を参照する。その状態では、装置、ロジック、ハードウェア、及び/又は、エレメントは動作していないが、特定されたやり方で装置が使えるようにするようにデザインされている。
値(value)は、ここにおいて使用されるように、数、状態、論理状態、またはバイナリ論理状態の既知の表現を含んでいる。しばしば、論理レベル、ロジック値、または論理値の使用は、また、1および0としても参照される。単純にバイナリ論理状態を表わすものである。例えば、1はハイ(high)論理レベルを参照し、かつ、0はロー(low)論理レベルを参照する。一つの実施例において、トランジスタまたはフラッシュセルといった、ストレージセルは、一つの論理値または複数の論理値を保持することが可能である。しかしながら、コンピュータシステムにおける値の他の表現が使用されてきた。例えば、10進数の10は、また、バイナリ値の1010および16進数のAとしても表現され得る。従って、値は、コンピュータシステムにおいて保持されることが可能な情報に係るアルゴリズム表現を含んでいる。
さらに、状態(state)は、値または値に係る部分によって表現され得る。例として、論理的1といった、第1の値は、デフォルトまたは初期状態を表してよく、一方で、論理的0といった、第2の値は、デフォルトでない状態を表してよい。加えて、用語リセットおよびセットは、一つの実施例において、デフォルトおよびアップデートされた値又は状態を、それぞれに参照している。例えば、デフォルト値は、潜在的にハイ論理値、つまりリセット、を含み、一方で、アップデートされた値は、潜在的にロー論理値、つまりセット、を含んでいる。値のあらゆる組み合わせは、あらゆる数の状態を表わすために使用され得ることに留意する。
上記に明らかにされた方法、ハードウェア、ソフトウェア、ファームウェア、またはコードの実施例は、マシンでアクセス可能、マシンで読取り可能、コンピュータでアクセス可能、または、コンピュータで読取り可能な媒体上に保管された、処理エレメントによって実行されるインストラクションまたはコードを介して実施されてよい。一時的でないマシンでアクセス可能/読取り可能な媒体は、コンピュータまたは電子システムといった、マシンによって読取り可能な形式において情報を提供する(つまり、保管及び/又は送信する)あらゆるメカニズムを含んでいる。例えば、一時的でないマシンでアクセス可能な媒体は、スタティックRAM(SRAM)またはダイナミックRAM(DRAM)といったランダムアクセスメモリ、ROM、磁気または光記録媒体、フラッシュメモリデバイス、電気ストレージデバイス、光ストレージデバイス、音響ストレージデバイス、一時的(伝播された)信号(つまり、搬送波、赤外信号、デジタル信号)から受け取った情報を保持するためのストレージデバイスの他の形式、等を含んでいる。これらは、そこからの情報を受け取ることができる一時的でない媒体と区別されるものである。
本発明の実施例を実行するためのロジックをプログラムするために使用されるインストラクションは、DRAM、キャッシュ、フラッシュメモリ、または、他のストレージといった、システムにおけるメモリの中に保管されてよい。さらに、インストラクションは、ネットワークを介して、または、他のコンピュータで読取り可能な媒体を用いて配布され得る。従って、マシンで読取り可能な媒体は、マシン(例えば、コンピュータ)によって読取り可能な形式において情報を保管または送信するためのあらゆるメカニズムを含んでよい。これらに限定されるわけではないが、フロッピー(登録商標)ディスク、光ディスク、コンパクトディスク、リードオンリーメモリ(CD−ROM)、および、光磁気ディスク、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、消去可能プログラム可リードオンリーメモリ(EPROM)、電気的消去可能プログラム可リードオンリーメモリ(EEPROM)、磁気または光カード、フラッシュメモリ、もしくは、伝搬された信号(例えば、搬送波、赤外信号、デジタル信号)の電気、光、音響、または、他の形式を介してインターネットにわたり情報の送信において使用される、有形の、マシンで読取り可能な媒体、である。従って、コンピュータで読取り可能な媒体は、マシン(例えば、コンピュータ)によって読取り可能な形式においてインストラクションまたは情報を保管もしくは送信するために適切なあらゆるタイプの有形のマシンで読取り可能な媒体を含んでいる。
この明細書の全体を通じて「一つの実施例」または「一実施例」への言及は、実施例に関連して説明された特定の機能、構造、または特性が、本発明に係る少なくとも一つの実施例に含まれていることを意味する。従って、この明細書の全体を通じて様々な場所におけるフレーズ「一つの実施例」または「一実施例」の出現は、必ずしも同一の実施例を参照することを要しない。さらに、特定の機能、構造、または特性は、一つまたはそれ以上の実施例において、あらゆる適切なやり方で組み合わされてよい。
上記の明細書においては、特定の典型的な実施例に関して詳細な説明がなされてきた。しかしながら、添付の請求項において明らかにされるように、本発明のより広い精神および範囲から逸脱することなく、それに対して種々の変更または変形がなされ得ることが明らかであろう。明細書と図面は、従って、限定的な意味より、むしろ説明的な意味において理解されるべきである。さらに、実施例および他の典型的な言語の上記の使用は、必ずしも同一の実施例または同一の例を参照することを要しないが、異なる又は別の実施例を参照してよい。潜在的に、同一の実施例も同様である。

Claims (27)

  1. 送信モジュールと、
    受信モジュールと、
    マルチプレクサであり、
    送信チャンネルのグループにおいて信号変化が検出され、かつ、
    前記信号変化に応じて、前記マルチプレクサの出力が前記信号変化を生じているチャンネルへスイッチされる、
    ダイナミックインターコネクト。
  2. 前記信号変化は、前記マルチプレクサの出力をデータファーストインファーストアウトバッファの出力と比較することによって検出される、
    請求項1に記載のダイナミックインターコネクト。
  3. 前記マルチプレクサの出力は、少なくとも一つのTDMサイクルに対して変化が生じている前記チャンネルに対してスイッチされる、
    請求項1に記載のダイナミックインターコネクト。
  4. 信号変化がないことに応じて、送信チャンネルの送信順序は、チャンネル番号によって与えられる、
    請求項1に記載のダイナミックインターコネクト。
  5. 専用コントロールバスが前記受信モジュールに対して送信され、かつ、
    前記専用コントロールバスは現在の送信チャンネルをフラグ付けする、
    請求項1に記載のダイナミックインターコネクト。
  6. 前記受信モジュールのTDMデマルチプレクサは、前記コントロールバス上のチャンネル情報を評価することによって、前記送信モジュールに対して同期化される、
    請求項5に記載のダイナミックインターコネクト。
  7. 送信コントロールモジュールは、データステーブル信号をディアサートすることによって、前記信号変化をフラグ付けする、
    請求項1に記載のダイナミックインターコネクト。
  8. 前記データステーブル信号は、前記受信モジュールに対するコントロールバス上に含まれている、
    請求項7に記載のダイナミックインターコネクト。
  9. 前記データステーブル信号のコンフィグレーションは、変化している信号が受信されて安定するまで次のクロックサイクルを遅らせる、
    請求項7に記載のダイナミックインターコネクト。
  10. 送信チャンネルのグループを決定するために、前記送信チャンネルのスイッチング周波数が分析される、
    請求項1に記載のダイナミックインターコネクト。
  11. ランタイムダイナミック多重化スキームのための方法であって、
    複数の送信信号を並列比較ユニットへとグループ化するステップと、
    並列比較グループの中で変化している信号および送信優先度に応じて、動的に
    並列比較ユニットの中で前記信号の送信順序を決定するステップと、
    信号の前記送信順序に基づいて送信のための信号をスケジュールするステップと、
    を含む、方法。
  12. 変化している信号値に応じて、データステーブル信号を一定期間ディアサートするステップ、
    を含む、請求項11に記載の方法。
  13. 前記一定期間は、設定可能な時間遅延である、
    請求項12に記載の方法。
  14. 前記信号は、前記信号の送信順序において送信のためのスロットに割り当てられ、かつ、
    それぞれのスロットは、TDM送信クロックサイクル継続する、
    請求項11に記載の方法。
  15. 前記データステーブル信号は、信号値の変化から設定時間が経過した後でアサートされる、
    請求項13に記載の方法。
  16. 送信モジュールと、
    受信モジュールと、
    マルチプレクサであり、
    アプリケーション周波数によってグループ化された複数の送信チャンネルのグループにおいて信号変化が検出され、かつ、
    前記信号変化に応じて、前記マルチプレクサの出力が、物理的リンクを使用して、前記信号変化を生じているチャンネルへスイッチされる、
    周波数認識のダイナミックインターコネクト。
  17. 少なくともアプリケーション周波数、要求される周波数、または要求されるインターコネクト幅、もしくは、これらのあらゆる組み合わせが、物理的リンクの数を計算するために使用される、
    請求項16に記載の周波数認識のダイナミックインターコネクト。
  18. 送信チャンネルのそれぞれのグループは、利用可能なリンク全数のうちほんの一部を使用している、
    請求項16に記載の周波数認識のダイナミックインターコネクト。
  19. 複数の仮想リンクの合計は、異なるパーティションとデバイスとの間で利用可能な物理的リンクにわたりルートされる、
    請求項16に記載の周波数認識のダイナミックインターコネクト。
  20. 前記複数の送信チャンネルのグループは、複数の異なるクロックドメインにわたりアプリケーション周波数によってグループ化される、
    請求項16に記載の周波数認識のダイナミックインターコネクト。
  21. 周波数認識のダイナミック多重化スキームのための方法であって、
    複数のクロックドメインについてアプリケーションを分析するステップと、
    複数の送信信号を、同一のクロックドメインにおいて実行されている数多くのグループの中へグループ化するステップと、
    を含む、方法。
  22. それぞれのグループ毎の信号の全体数量は、アプリケーション周波数、要求される周波数、または、要求されるインターコネクト幅を使用して計算され、もしくは、
    物理的リンクの数量を計算するために、これらのあらゆる組み合わせが使用される、
    請求項21に記載の方法。
  23. それぞれの周波数グループに対する最適な時分割多重化ファクタは、物理的リンクおよび他のインターコネクト実施の数に基づいて計算される、
    請求項21に記載の方法。
  24. より遅い周波数において実行している信号グループは、パーティション間で利用可能な物理的リンクのより少ない部分を使用する、
    請求項21に記載の方法。
  25. より遅い周波数において実行している信号グループは、リンクに対してより高い時分割多重化ファクタを有する、
    請求項21に記載の方法。
  26. より高い周波数において実行している信号グループは、パーティション間で利用可能な物理的リンクのより大きな部分を使用する、
    請求項21に記載の方法。
  27. より高い周波数において実行している信号グループは、リンクに対してより低い時分割多重化ファクタを有する、
    請求項21に記載の方法。
JP2016540655A 2013-12-28 2013-12-28 エミュレーションにおけるパーティショニングおよびプラットフォームのプロトタイピングを用いたダイナミックインターコネクト Active JP6277279B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/078149 WO2015099799A1 (en) 2013-12-28 2013-12-28 Dynamic interconnect with partitioning on emulation and protyping platforms

Publications (2)

Publication Number Publication Date
JP2017505031A true JP2017505031A (ja) 2017-02-09
JP6277279B2 JP6277279B2 (ja) 2018-02-07

Family

ID=53479458

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016540655A Active JP6277279B2 (ja) 2013-12-28 2013-12-28 エミュレーションにおけるパーティショニングおよびプラットフォームのプロトタイピングを用いたダイナミックインターコネクト

Country Status (7)

Country Link
US (1) US20160301414A1 (ja)
EP (1) EP3087676A4 (ja)
JP (1) JP6277279B2 (ja)
KR (1) KR20160078423A (ja)
CN (1) CN105794113B (ja)
DE (1) DE112013007735T5 (ja)
WO (1) WO2015099799A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3087496B1 (en) * 2013-12-26 2019-02-27 Intel Corporation Transition-minimized low speed data transfer
US10628625B2 (en) * 2016-04-08 2020-04-21 Synopsys, Inc. Incrementally distributing logical wires onto physical sockets by reducing critical path delay
WO2022039742A1 (en) * 2020-08-20 2022-02-24 Siemens Industry Software Inc. Hybrid switching architecture for serdes communication channels in reconfigurable hardware modeling circuits
CN114330191B (zh) * 2022-03-08 2022-06-10 上海国微思尔芯技术股份有限公司 一种信号复用传输的方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5534522A (en) * 1978-08-31 1980-03-11 Fujitsu Ltd Time sheaking multiple control system
JPS5570148A (en) * 1978-11-21 1980-05-27 Toshiba Corp Remote supervisory and controlling equipment
JPS57116455A (en) * 1981-01-09 1982-07-20 Mitsubishi Electric Corp Information transmitter
JPS63157537A (ja) * 1986-12-22 1988-06-30 Nec Corp 時分割多重送信方法およびその装置
JPS63157538A (ja) * 1986-12-22 1988-06-30 Nec Corp 時分割多重信号の受信方法およびその装置
JPH04291839A (ja) * 1991-03-20 1992-10-15 Fujitsu Ltd 時分割多重化信号の微分回路
WO2006077621A1 (ja) * 2005-01-18 2006-07-27 Mitsubishi Denki Kabushiki Kaisha 多重化装置及び受信装置
US20110284727A1 (en) * 2010-05-20 2011-11-24 Panasonic Corporation Ccd charge transfer drive device

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3772681A (en) * 1970-10-14 1973-11-13 Post Office Frequency synthesiser
GB9117645D0 (en) * 1991-08-15 1991-10-02 Motorola Ltd Improvements in or relating to digital communication systems
JP2959448B2 (ja) * 1995-10-13 1999-10-06 日本電気株式会社 時分割多重ハイウェイのatmインタフェース装置
US6150863A (en) * 1998-04-01 2000-11-21 Xilinx, Inc. User-controlled delay circuit for a programmable logic device
EP1050824A3 (en) * 1999-04-22 2004-01-28 Matsushita Electric Industrial Co., Ltd. Bidirectional signal transmission circuit and bus system
US6584535B1 (en) * 2000-01-31 2003-06-24 Cisco Technology, Inc. Configurable serial interconnection
US6747485B1 (en) * 2000-06-28 2004-06-08 Sun Microsystems, Inc. Sense amplifier type input receiver with improved clk to Q
US6735709B1 (en) * 2000-11-09 2004-05-11 Micron Technology, Inc. Method of timing calibration using slower data rate pattern
US7552192B2 (en) * 2002-12-18 2009-06-23 Ronnie Gerome Carmichael Massively parallel computer network-utilizing MPACT and multipoint parallel server (MPAS) technologies
US7397792B1 (en) * 2003-10-09 2008-07-08 Nortel Networks Limited Virtual burst-switching networks
JP3816079B2 (ja) * 2004-01-30 2006-08-30 株式会社半導体理工学研究センター Uwb受信回路
KR100582577B1 (ko) * 2004-08-19 2006-05-23 삼성전자주식회사 Tdm 인터페이스를 위한 클럭 보정 장치 및 방법
US7720015B2 (en) * 2005-08-17 2010-05-18 Teranetics, Inc. Receiver ADC clock delay base on echo signals
JP5500081B2 (ja) * 2009-02-09 2014-05-21 日本電気株式会社 信号伝達システム及び信号伝達方法
US20110099407A1 (en) * 2009-10-28 2011-04-28 Ati Technologies Ulc Apparatus for High Speed Data Multiplexing in a Processor
US8995912B2 (en) * 2012-12-03 2015-03-31 Broadcom Corporation Transmission line for an integrated circuit package

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5534522A (en) * 1978-08-31 1980-03-11 Fujitsu Ltd Time sheaking multiple control system
JPS5570148A (en) * 1978-11-21 1980-05-27 Toshiba Corp Remote supervisory and controlling equipment
JPS57116455A (en) * 1981-01-09 1982-07-20 Mitsubishi Electric Corp Information transmitter
JPS63157537A (ja) * 1986-12-22 1988-06-30 Nec Corp 時分割多重送信方法およびその装置
JPS63157538A (ja) * 1986-12-22 1988-06-30 Nec Corp 時分割多重信号の受信方法およびその装置
JPH04291839A (ja) * 1991-03-20 1992-10-15 Fujitsu Ltd 時分割多重化信号の微分回路
WO2006077621A1 (ja) * 2005-01-18 2006-07-27 Mitsubishi Denki Kabushiki Kaisha 多重化装置及び受信装置
US20110284727A1 (en) * 2010-05-20 2011-11-24 Panasonic Corporation Ccd charge transfer drive device
JP2011244297A (ja) * 2010-05-20 2011-12-01 Panasonic Corp Ccd電荷転送用駆動装置

Also Published As

Publication number Publication date
KR20160078423A (ko) 2016-07-04
WO2015099799A1 (en) 2015-07-02
CN105794113A (zh) 2016-07-20
US20160301414A1 (en) 2016-10-13
CN105794113B (zh) 2019-06-25
EP3087676A4 (en) 2018-01-24
JP6277279B2 (ja) 2018-02-07
DE112013007735T5 (de) 2016-12-29
EP3087676A1 (en) 2016-11-02

Similar Documents

Publication Publication Date Title
CN107005477B (zh) 用于片上网络的基于链路延迟的路由装置
US10169513B2 (en) Method and system for designing FPGA based on hardware requirements defined in source code
Hansson et al. CoMPSoC: A template for composable and predictable multi-processor system on chips
Akesson et al. Composability and predictability for independent application development, verification, and execution
US9699096B2 (en) Priority-based routing
CN107112042B (zh) 数据信号的边沿感知同步的设备、系统和介质
US9600384B2 (en) System-on-chip verification
CN107113227B (zh) 流水线化混合分组/电路交换片上网络
WO2014133705A1 (en) A method, apparatus, system for representing, specifying and using deadlines
WO2008148132A1 (en) Shared storage for multi-threaded ordered queues in an interconnect
JP6277279B2 (ja) エミュレーションにおけるパーティショニングおよびプラットフォームのプロトタイピングを用いたダイナミックインターコネクト
Moreira et al. Scheduling real-time streaming applications onto an embedded multiprocessor
Aguilera et al. Process variation-aware workload partitioning algorithms for GPUs supporting spatial-multitasking
Hansson et al. On-chip interconnect with aelite: composable and predictable systems
US20220276847A1 (en) Compilation for synchronous processor
KR102440129B1 (ko) 저전력 모드 지원 컴퓨터 시스템 및 그것의 방법
Hansson A composable and predictable on-chip interconnect
Tuveri et al. A runtime adaptive H. 264 video-decoding MPSoC platform
Chowdhury AnyCore: Design, Fabrication, and Evaluation of Comprehensively Adaptive Superscalar Processors
US20230060111A1 (en) System and method for electronic circuit simulation
US10877552B1 (en) Dynamic power reduction through data transfer request limiting
de Campos Run-Time Selection of Customized Accelerators
KR20240072272A (ko) 메모리에 대한 동적 셋업 및 홀드 시간 조정
Basu Roy Chowdhury AnyCore: Design, Fabrication, and Evaluation of Comprehensively Adaptive Superscalar Processors.
US20130002334A1 (en) Integrated circuit, electronic device and method for configuring a signal path for a timing sensitive signal

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171101

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

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20171211

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180115

R150 Certificate of patent or registration of utility model

Ref document number: 6277279

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250