JP2002073531A - フィールドプログラマブルゲートアレイ(fpga)におけるマルチマスタ・マルチスレーブシステムバス - Google Patents
フィールドプログラマブルゲートアレイ(fpga)におけるマルチマスタ・マルチスレーブシステムバスInfo
- Publication number
- JP2002073531A JP2002073531A JP2001159002A JP2001159002A JP2002073531A JP 2002073531 A JP2002073531 A JP 2002073531A JP 2001159002 A JP2001159002 A JP 2001159002A JP 2001159002 A JP2001159002 A JP 2001159002A JP 2002073531 A JP2002073531 A JP 2002073531A
- Authority
- JP
- Japan
- Prior art keywords
- master
- system bus
- gate array
- programmable gate
- field programmable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 7
- 239000004065 semiconductor Substances 0.000 claims 1
- 238000004891 communication Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 17
- 238000013461 design Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 101100325756 Arabidopsis thaliana BAM5 gene Proteins 0.000 description 2
- 101150046378 RAM1 gene Proteins 0.000 description 2
- 101100476489 Rattus norvegicus Slc20a2 gene Proteins 0.000 description 2
- 229920001610 polycaprolactone Polymers 0.000 description 2
- 230000008672 reprogramming Effects 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000007616 round robin method Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/10—Distribution of clock signals, e.g. skew
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/0175—Coupling arrangements; Interface arrangements
- H03K19/017581—Coupling arrangements; Interface arrangements programmable
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17724—Structural details of logic blocks
- H03K19/17732—Macroblocks
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17736—Structural details of routing resources
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17736—Structural details of routing resources
- H03K19/1774—Structural details of routing resources for global signals, e.g. clock, reset
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17736—Structural details of routing resources
- H03K19/17744—Structural details of routing resources for input/output signals
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17748—Structural details of configuration resources
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17748—Structural details of configuration resources
- H03K19/1776—Structural details of configuration resources for memories
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/1778—Structural details for adapting physical parameters
- H03K19/17788—Structural details for adapting physical parameters for input/output [I/O] voltages
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/1778—Structural details for adapting physical parameters
- H03K19/17792—Structural details for adapting physical parameters for operating speed
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/13—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/13—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
- H03K5/133—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals using a chain of active delay devices
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/099—Details of the phase-locked loop concerning mainly the controlled oscillator of the loop
- H03L7/0995—Details of the phase-locked loop concerning mainly the controlled oscillator of the loop the oscillator comprising a ring oscillator
- H03L7/0996—Selecting a signal among the plurality of phase-shifted signals produced by the ring oscillator
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/081—Details of the phase-locked loop provided with an additional controlled phase shifter
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Nonlinear Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
- Stored Programmes (AREA)
- Bus Control (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
よびより優れたアクセス手段を可能にするよりフレキシ
ブルなFPGA装置を提供する。 【解決手段】 FPGA内の複数の埋込マスタ素子およ
び少なくとも一つのスレーブ素子間に埋込システムバス
を組み込むと共に、複数の埋込スレーブ素子のいずれに
もダイレクトアクセスを可能にする外部プロセッサイン
タフェースを供給する。この埋込システムバスを用いる
と、複数のマスタのいずれもが埋込FPGA論理等の埋
込素子をプログラムできるようになる。この埋込システ
ムバスは、通常データ、アドレスおよび制御からなる信
号群であり、システム素子を互いに接続してデータフロ
ーの基本プロトコルを供給する。すなわち、該埋込シス
テムバスは、FPGA装置の制御、コンフィギュレーシ
ョンおよびステータス確定を考慮したものである。該埋
込システムバスは、各種埋込システムコンポーネント間
の通信を可能すべく、何時でも調停アクセスに有効な専
用機能とするのが好ましい。
Description
グラマブルゲートアレイ」と題する2000年5月26
日出願の米国出願番号60/207,371の優先権を
主張するものである。
ドプログラマブルゲートアレイ(FPGA)に関し、特
に、FPGA内への改良アーキテクチャーおよび機能の
インプリメンテーションに関するものである。
(FPGA)はプログラマブル集積回路であり、カスタ
マイズされた論理アレイおよび特定顧客に対する機能を
提供する。図4は従来のフィールドプログラマブルゲー
トアレイ(FPGA)を表したものである。
は通常四つの異なる機構を備える。すなわち、コンフィ
ギュレーションメモリ406、入出力ブロック408−
414、コンフィギャラブル論理ブロック404、およ
び内部コンポーネント間のルーチングネットワーク40
2からなる。
FPGA400の素子および一外部制御装置(プログラ
マ等)間にアクセス手段を提供する。そして、このコン
フィギュレーションメモリ406の内容に基づき、コン
フィギャラブル論理ブロック404の各種論理機能がイ
ネーブルされ、ルーチングネットワーク402の構成を
介して相互に配線される。同様に、ある特定の論理ブロ
ックには各種タイプの入出力装置408−414を介し
て入出力アクセス出段が提供される。これら入出力アク
セスは、コンフィギュレーションメモリ406およびル
ーチングネットワーク402の提供するルーチング双方
によって決定される。
例えば、スタティックRAM(SRAM)等である。コ
ンフィギュレーションメモリビットは、各素子またはコ
ンフィギャラブル論理ブロック404の埋込素子内のス
イッチをオンまたはオフし、FPGA400の素子間の
ルーチングを設定し、FPGA400の機能を指定す
る。
406の個々のメモリビットはFPGA装置400の所
望の機能を指定する。従来、これらコンフィギュレーシ
ョンメモリビットは、コンフィギュレーションメモリ
(SRAM等)406に直づけされたデータラインおよ
びアドレスラインを用い、外部ソースから外部バス42
0を通じて一時に一つローディングされる。全ての埋込
素子は、コンフィギュレーションメモリ406に対する
同一フォーマットを用いて同様にプログラミングされ
る。
のタイプとしては、EPROMまたはEEPROM、反
溶融、溶融またはその他タイプの記憶デバイス等が通常
含まれ、単発プログラム性能または多重再プログラム性
能を提供する。また、コンフィギュレーションメモリ4
06は一つ以上のタイプのメモリ(SRAMおよびEE
PROM等)から形成されていてもよい。
4は、FPGA400の内部埋込コンポーネントおよび
外部装置間を直接接続するものである。これら入出力ブ
ロック408−414はハード配線されたもの、および
/またはコンフィギュレーションメモリ406に格納さ
れたユーザ指示によるコンフィギュレーションに基づい
て構成され、ルーチングされるものでもよい。
FPGA400の利用に先立ちローディングまたはプロ
グラミングされる。すなわち、FPGA400が構成さ
れるまで、単一プログラミング装置以外の外部装置はF
PGA400の埋込素子(例えばコンフィギャラブル論
理ブロック404)と通信を行うことはできない。
ィギュレーションメモリ406によってプログラム可能
に定義付けされ、FPGAの内部論理ブロック間の信号
手順を決める。すなわち、ルーチングネットワーク40
2は、FPGA400の各種内部埋込コンポーネント間
の信号トラヒックを導くものである。このルーチングネ
ットワーク402は、箇所によっては直接接続、すなわ
ちハード配線されたものでも、および/またはユーザに
よって全てプログラム可能なものであってもよい。
ュレーションメモリ406に加えて埋込式ランタイムメ
モリ450を備える。この埋込式ランタイムメモリ45
0はFPGA400のコンフィギュレーションが完了す
るまでアクセス可能となる。さらに、コンフィギュレー
ションメモリ406は、FPGA装置400の動作中通
常再プログラミングされることはない。
ログラムされる。すなわち、適当なコンフィギュレーシ
ョンおよびルーチングソフトウェアアプリケーションを
用いてユーザの個別要求を入力し、通常「分割」、「配
置」および「ルート割当」と称される手順によってルー
チングの最良コンフィギュレーションを決定し、最終的
に該ユーザの個別要求を満たすようにFPGA400の
各素子を構成する。
PSCであり、これはフィールドプログラマブル論理を
ASICと組み合わせたもの、あるいはマスクプログラ
ム論理を単一装置に組み込んだものである。FPSC
は、特定用途向け集積回路(ASIC)に本来備わって
いるスピード、設計密度および経済性を提供すると共
に、市場への速歩性、FPGAに固有のフレキシビリテ
ィ、およびソフトウェア駆動コア使用に伴う設計労力の
節約を実現する。
が考えられる。一般的にFPSC内で利用可能な埋込コ
アはASICライブラリから選択されるが、オーダーメ
イドされた一つ以上の独占使用向けコア、あるいはユー
ザが供給する特殊な埋込コアを含むような特定顧客向け
のFPSCも開発可能である。
特定用途向けブロック(ASBブロック)およびコンフ
ィギュレーションメモリの事前プログラミングがコンフ
ィギュレーション論理を通して実行されていた。しかし
ながら、従来のFPGAコンフィギュレーション論理
は、コンフィギュレーション後のFPGAコンポーネン
トによるアクセスまたは動作には利用できず、非能率的
で遅いインプリメンテーションとなってしまう。さら
に、図4に示すように、従来のFPGA400あるいは
FPSCの機能は、該装置のコンフィギュレーションメ
モリ406にダイレクトアクセス手段を有するただ一つ
のマスタ装置(例えば、マイクロプロセッサ等)のみに
よってプログラムされるもので、動作中の再コンフィギ
ュレーションは不可能であった。
テーションおよびより優れたアクセス手段を可能にする
よりフレキシブルなFPGA装置への要求があった。
マスタおよび/またはスレーブ素子と、該複数のマスタ
およびスレーブ素子間の埋込式システムバスとを備える
フィールドプログラマブルゲートアレイが提供される。
該フィールドプログラマブルゲートアレイに対して外部
にある装置から該埋込式システムバスへのアクセス手段
は外部インタフェースによって提供される。
ルドプログラマブルゲートアレイ内の複数のマスタおよ
び/またはスレーブ素子のいずれか一つに外部アクセス
する方法が提供される。該方法は、複数のマスタおよび
/またはスレーブ素子間に埋込式システムバスを供給す
る工程を含む。外部インタフェースは該システムバス上
に設けられる。外部インタフェースは、埋込式システム
バスと、フィールドプログラマブルゲートアレイに対し
て外部にある装置との間にアクセス手段を提供する。こ
の外部インタフェースは別のマスタ素子である。これに
より、FPGAコンフィギュレーションの状態に左右さ
れることなく全てのアクセスが可能となる。
ゲートアレイ(FPGA)装置は、単一の内部(埋込)
素子、すなわちコンフィギュレーションメモリに対して
外部からのアクセス手段を提供するものである。すなわ
ち、従来のFPGA装置は、外部装置およびコンフィギ
ュレーションメモリ以外の埋込素子間のデータ、アドレ
スおよび制御手段を提供する埋込式システムバスを備え
ていない。
のFPGAは、論理、クロック、ルーチング、RAMお
よびシステムレベルブロックの階層アーキテクチャを備
えており、FPGAおよびASIC設計におけるシーム
レスな併合を実現する。
基本要素からなる。すなわち、プログラマブル論理セル
(PLC),プログラマブル入出力セル(PIO)、埋
込ブロックRAM(EBR)、そしてグローバルおよび
ローカル配線と相互接続されたシステムレベル機構から
なる。
クに取り囲まれ、該共通インタフェースブロックによっ
て近接PCLまたはシステムブロックへのおびただしい
インタフェース接続手段が提供される。各PCLは、例
えばPFU、SLIC、自ルーチングリソースおよびコ
ンフィギュレーションRAM等を備える。
内で実行されることになるが、デコーダ、PAL様機
能、およびトライステートバッファリングをSLICに
て行うこともできる。また、PIOは装置入出力を提供
するもので、信号登録、入力多重分離、アップリンク・
ダウンリンク機能、および二出力信号による他の機能を
実行するのにも利用できる。
はスレーブ素子間の埋込式システムバスをFPGA装置
内に組み込むと共に、外部プロセッサインタフェースを
提供して複数の埋込素子のいずれへのアクセスも可能に
するものである。すなわち、コンフィギュレーションメ
モリの状態に関わらず、これら素子へのアクセスが可能
となる。マスタ素子は埋込システムバスを制御するもの
であり、スレーブ素子は該バスを制御することができな
い。
ステムバスは、FPGA内の各種オンチップシステム素
子を互いに接続し、それらの効率、有用性およびスピー
ドを増す。該埋込式マルチマスタ・マルチスレーブシス
テムバスを用いると、従来のFPGAでは一つのマスタ
(例えばプロセッサ)だけがコンフィギュレーション中
コンフィギュレーションメモリをプログラムできたのに
対して、複数のマスタのいずれもが、コンフィギュレー
ション中あるいは通常動作中の如何を問わず、埋込スレ
ーブ素子、例えば埋込ブロックRAM(EBR)をプロ
グラムすることができる。
テムバスは、通常データ、アドレスおよび制御の信号群
であり、システム素子を互いに接続し、データフローの
基本プロトコルを供給する。すなわち、該埋込式マルチ
マスタ・マルチスレーブシステムバスは、FPGA装置
の制御、コンフィギュレーションおよびステータス確定
を考慮したものである。該埋込式マルチマスタ・マルチ
スレーブシステムバスは、各種埋込システムコンポーネ
ント間の通信を可能すべく、何時でも調停アクセスに有
効な専用機能とするのが好ましい。
チスレーブフィールドプログラマブルゲートアレイ(F
PGA)を示し、図2は該マルチマスタ・マルチスレー
ブFPGAの詳細図である。
ば、FPGAコンフィギュレーションコントローラ12
0、ユーザマスタ・スレーブ論理インタフェース130
および/またはFPSCマスタ/スレーブインタフェース
140等)に対して外部ダイレクトアクセスを可能にす
る埋込式マルチマスタ・マルチスレーブシステムバス1
70を示す。さらに、重要なことは、外部マイクロプロ
セッサインタフェース(MPI)150が、該埋込式マ
ルチマスタ・マルチスレーブシステムバス170と一つ
以上の外部プロセッサとの間に供給されていることであ
る。
スレーブシステムバス170は、例えば、1ビットパリ
ティ付き8ビットシステムバスであり、MPI150、
コンフィギュレーション論理120、FPGA制御20
2、ステータスレジスタ204、埋込ブロックRAM1
72および/またはユーザ定義論理128間の通信を促
進する。もちろん、該マルチマスタ・マルチスレーブシ
ステムバス170が異なる幅のもの、例えば16ビット
や32ビット幅のものでもよい。ここに開示された埋込
式マルチマスタ・マルチスレーブシステムバスは、AM
BA規格、Rev. 2.0AHBプロトコルを採用する
が、もちろん他のバスプロトコルでも可能であり、それ
らは本発明の範囲内で想到されるものである。
ーブコンフィギュレーションモード用の)コンフィギュ
レーションクロック、内部発振器、ルーチングからのユ
ーザクロック、FPSC ASBクロック、または(例
えば、JTAGコンフィギュレーションモード用の)ポ
ートクロックのいずれをソースとして発生されるもので
もよい。
びバスコントローラ202はFPGA装置100に対す
る制御を行う。例えば、再プログラミング、リセット機
能およびPLLプログラミングを制御する。ステータス
レジスタは、例えばINIT、DONE、およびシステ
ムバスエラーを監視する。
ラ202に組み込んで、例えば八つまで実行可能な割込
リソースを供給するようにしてもよい。
プロセッサインタフェース160と、複数の埋込マスタ
素子のいずれかとの間でダイレクトアクセスを可能にす
る。MPI150は、埋込システムバス170および埋
込スレーブ素子、例えば、EBR172、バスレジスタ
204およびユーザスレーブ論理130等と共に、シス
テムレベルの機能を提供する。また、MPI150は、
FPGA装置100および外部プロセッサ(例えば、マ
イクロプロセッサ、マイクロコントローラ、ディジタル
信号プロセッサ(DSP)等)間に接着のないインタフ
ェースを提供する。該MPI150は、FPGA制御や
FPGAステータスの監視のためだけでなく、コンフィ
ギュレーション、プログラミングおよび読取にも使用可
能である。MPI処理には、例えば、66MHz実行レ
ベルで動作するような埋込システムバス170を利用す
る。
0によるコンフィギュレーションに続くFPGAのユー
ザ定義論理128に対してシステムレベルのマイクロプ
ロセッサインタフェースを提供する。該システムレベル
のマイクロプロセッサインタフェースは、埋込ブロック
RAM172および汎用ユーザ論理128へのアクセス
を含む。MPI150は、データFIFOを備えること
により、該インタフェースを介した短く不規則なデータ
の伝送を可能にするよう、バーストデータ読み書き転送
手段をサポートしているのが好ましい。
スタまたはスレーブ装置として考えることができ、マス
タは該埋込システムバス上のトラヒックの制御に従事
し、スレーブはマスタからの要求に応じる。所定の実施
形態では、コンフィギュレーションコントローラ120
が、埋込システムバス170へのアクセス調停において
他のマスタ素子に対して最優先されるマスタ装置として
指定される。
く)埋込マスタ素子の例として、例えば、ユーザ定義の
埋込FPGAマスタ論理128に対するユーザ論理イン
タフェース、FPGAコンフィギュレーション論理12
4に対するコンフィギュレーションインタフェース12
6、および/またはFPSC埋込式ASICコア(AS
B)140へのアクセス手段をオプションとして提供す
るFPSCインタフェース142等が備えられる。
埋込式ASICコア(ASB)140、EBRブロック
172、システムステータスおよび制御レジスタ20
4、および/またはユーザ定義のFPGAスレーブ論理
128等が備えられる。また、埋込システムバス170
は、マスタおよびプロセス割込間の調停を行うバスコン
トローラ202も備える。
は、埋込システムバス170が真正な双方向性バスであ
っても、あるいは、類似方法にて機能し、一外部プロセ
ッサからFPGAの一埋込素子へのダイレクトアクセス
を可能にするような単なる一組みのポイントツーポイン
ト相互接続であってもよい。
ィギュレーションコントローラ120に最高位の優先順
位が与えられるとするならば、調停ユニット183が埋
込システムバス170の使用に適した調停を実行する。
0、120、130および140の各々から適宜メモリ
要求信号を受信し、埋込システムバス170の制御を勝
ち取ったマスタのアドレス、データおよび制御信号を選
択する。この勝利マスタは、埋込システムバス170の
制御を要求して該要求が認められたマスタである。マス
タ150、120、130および140の内二つ以上が
同時に埋込システムバス170にアクセス要求をする場
合には、調停ユニット183が適切な規定規則(例え
ば、ラウンドロビン(順繰り)方式)に基づいて勝利マ
スタを決定する。そして、調停ユニット183による調
停処理の終了時、肯定応答信号を通して勝利マスタにそ
のバス所有権を通知する。
ュレーションコントローラ120以外の)各マスタは、
ユーザ定義の順位を優先するように構成できるものが好
ましい。これらユーザ定義の優先順位は(デフォルトに
よって)同等のものであっても、優先度が異なるもので
あってもよい。優先順位が等しいマスタ素子間では、調
停ユニット183がこれら優先順位の等しいマスタ素子
の中でマスタラウンドロビン調停を実行する。優先順位
の異なるマスタ素子間では、調停ユニット183がこれ
ら要求元のマスタの内から優先順位の高いマスタ装置に
対して第1位を与える。そして、調停ユニット183が
次のバスアクセスを受信するまで、マスタ要求をした最
後のマスタ素子がデフォルトマスタとなる(すなわち、
埋込システムバスの所有権を保持する)。
えば、FPGA100のコンフィギュレーション後に設
定される。FPGAのコンフィギュレーション前、ある
いはそのコンフィギュレーション中は、コンフィギュレ
ーションコントローラ120が埋込システムバス170
を捕らえ、残りのマスタ装置の優先順位はそれより低く
なる。この時点で、残りのマスタ装置にも同等の優先順
位を与えてもよいが、コンフィギュレーション前または
コンフィギュレーション中はコンフィギュレーションコ
ントローラ120だけに埋込システムバス170の制御
権が与えられて残りのマスタ装置には埋込システムバス
170へのアクセスが許可されないものなので、同等の
優先順位を与えるてもさほど意味はない。
(FPSC)に対して、該埋込システムバス170を一
つ以上の特定用途向けブロック(ASB)コア140に
も接続するよう拡張してもよい。そうすることで、該A
SBブロック140が該プログラマブルアレイの他のシ
ステム素子にアクセスできると共に、その逆も可能とな
る。
ス170は、コンフィギュレーションデータ、ASBオ
プションおよびEBRコンテンツをローディングする能
力と共に、FPGA装置100のコンフィギュレーショ
ン、制御およびステータスを外部プロセッサからMPI
150経由で、あるいはFPGAコンフィギュレーショ
ン前後にASB140によって獲得可能にする。さら
に、その埋込システムバス170を用い、コンフィギュ
レーション後の(外部装置またはMPI150経由の装
置を含む)マスタ素子が埋込スレーブ素子にアクセスで
きるようにしてもよい。
まれた4ポートRAMブロック等のマルチポートRAM
で、メモリ量を増大させて分布PFUメモリを補充する
ようにしてもよい。本開示の実施形態では、512x1
8の4ポートRAMブロックが実装されている。
172は、例えば、2ワイヤポート、2リードポート、
および2バイトレーンイネーブル信号を備え4つのポー
ト動作を提供するものでもよい。
すべく、4ポートRAMの多数ブロック、例えば512
x18のRAMブロックがFPGAに実装される。RA
M172は少なくとも4つのポートを備え、RAM、R
OM、FIFO、乗算器および/またはCAMとして構
成可能にするのが好ましい。
と共に、2ワイヤポート間にもオプションで調停を設け
るようにしてもよい。
させ、例えば、FIFO、定数MPY、あるいは2変数
乗算器の機能を形成するフレキシビリティを与えるよう
にしてもよい。さらに、EBR172はユーザ構成可能
であって、例えば、512k、256k、1k等の奥行
きを備えると共に、非同期または同期モードに対してプ
ログラム可能であって、プログラマブルステータスおよ
びエラーフラッグを備えるのが好ましい。さらにまた、
装置コンフィギュレーション時にEBR172をプリロ
ーディングするようにしてもよい。
スオプションおよびビットストリームチェックと共に、
コンフィギュレーションメモリ120、埋込ブロックR
AM172およびFPSCメモリ144の初期化を考慮
したものである。
込)コンフィギュレーションメモリ120によって決定
される。コンフィギュレーションメモリ120は、複数
のコンフィギュレーションモードの一つを用いてローデ
ィングできる。例えば、FPGA100が内部初期化お
よびコンフィギュレーション回路を備え、電源投入時、
またはシステム制御下でコンフィギュレーションデータ
をローディングする。FPGAコンフィギュレーション
データは、電源切断時に例えばEEPROM、あるいは
他のタイプの記憶媒体に外在させることができる。
8の埋込FPSCブロック140および埋込マルチマス
タ32ビットシステムバス170間にリンクが設けられ
る。埋込システムバス170は、埋込ブロックRAM1
72およびマイクロプロセッサインタフェース150を
含む多数のFPGA論理機能に対するコアのアクセスを
可能にする。
ア間の境界を横断するもので、FPGAおよび埋込コア
間での高速、低スキューのクロッキングを考慮してい
る。ここで、埋込コアに対して特定信号(例えばDONEお
よびグローバルSET/RESET)を利用可能にし、
該埋込コアとFPGAとを一システムとして完全に一体
化できるようにしてもよい。
は、装置を再構成するだけでコア機能を変更する機能だ
けでなく、ユーザプログラム可能な制御機能も備えた単
一装置の状態に設計して該単一装置上に該コンフィギュ
レーションを実装してもよい。
力パッド(PIO)を備える。これらプログラマブル入
出力パッドは、例えば、共通インタフェースブロックを
介してFPGA論理アレイ128にインタフェース接続
される。各共通インタフェースブロックは、一PIOブ
ロック、例えば四つのプログラマブル入出力パッドにイ
ンタフェース接続する。
させ、各組が独立クロックイネーブル、ローカルセット
・リセット、およびグローバルセット・リセット機能を
備えるようにしてもよい。
ラッチ/フリップフロップを持たせ、いずれのパッドか
らのデータも敏速にラッチアップできるようにしてもよ
い。各PIOの出力側では、PLCアレイからの出力を
各出力フリップフロップにルーチングし、各入出力を論
理に関連づけることもできる。
スを用いることにより、来るべきアーキテクチャの拡張
を考慮した専用機構を提供する。さらに、RAMセルに
代えてセットアップレジスタを実装し、各種マスタブロ
ック(すなわち、知的財産(IP)ブロック)へのシス
テムバスアクセスを制御する。さらにまた、通常動作
中、セットアップレジスタに対して、セットアップレジ
スタのレジスタ値を変更してもよい。さらにまた、内部
マルチマスタシステムバスを用いることにより、多量の
データが埋込マスタおよびスレーブ素子間、例えば、A
SBブロックと他の埋込システム素子または外部(すな
わちオフチップ)システム素子との間で転送可能とな
る。マルチマスタ・マルチスレーブ埋込式システムバス
経由のコンフィギュレーションは、バス上で実行される
他の動作、例えばホストプロセッサや埋込コア等の動作
に類似させることによりコンフィギュレーションを簡単
にする。そして、このように構成されたマルチマスタ・
マルチスレーブシステムバスは、外部マイクロプロセッ
サ(MPI)インタフェース150からFPGAコアへ
のFPGAコンフィギュレーションパスを提供する。外
部装置およびFPGA装置100の埋込マスタ・スレー
ブ素子間のこのダイレクトアドレッシング性能はコンフ
ィギュレーションに最大限のフレキシビリティを提供す
る。
様のフォーマットを用い、FPGAコンフィギュレーシ
ョンメモリビットを通して構成(あるいはプログラム)
されていた。しかしながら、従来のビットストリームフ
ォーマットはEBR初期化をサポートしておらず、FP
SCのメモリ初期化に対してフレキシビリティがなかっ
た。また、旧来技術では、FPGAコンフィギュレーシ
ョンおよび部分コンフィギュレーションに対してもフレ
キシビリティがあまりない。
ス可能な埋込システムバス170を用いることにより、
いずれのコンフィギャラブルメモリ、例えばコンフィギ
ュレーションRAM、EBRおよびFPSCメモリ等
が、所望の順序かつ所望のフォーマットあるいは各メモ
リ素子が前提とするフォーマットで個々プログラム可能
となる。ここで、各メモリ素子は、他のメモリ素子と異
なるプロトコルを用いてプログラムされるのが好まし
い。
開示のFPGA装置100は、FPGA論理128、埋
込RAMブロック172および/またはフィールドプロ
グラマブルシステムチップ(FPSC)140に対する
フレキシブルなコンフィギュレーションをサポートでき
る新規のビットストリームフォーマットを提供する。本
発明によれば、これらフォーマットタイプを任意の順序
で混ぜ合わせることができる。ビットストリームフォー
マットの秩序化はユーザによって選択可能である。
るいはプログラミングビットストリームフォーマット
は、ユーザがFPGA論理の構成、埋込RAMブロック
の初期化および/または埋込FPSCメモリの構成を行
う際にフレキシビリティを与える。
ントモードと明示モード二種類の内の一モードで、FP
GA装置へのコンフィギュレーションビットストリーム
のローディングが可能であった。自動インクリメントモ
ードでは、アドレスフレームがないので、ビットストリ
ームは順次異なるアドレスにデータフレームを送出す
る。明示メードでは、アドレスフレームまたは一群のア
ドレスフレームがビットストリームの各データフレーム
に追従する。このアドレスフレームまたはアドレスフレ
ーム群はそのデータのアドレスを指定するものである。
そして、これらモードの混合は不可能であった。
は、外部装置からアクセス可能なコンフィギュレーショ
ンメモリにのみ送られるものであった。すなわち、多数
の埋込スレーブ素子に対しての直接的な備えはなく、ま
してや、同一FPGA装置に埋め込まれた個々の素子に
対する異なるプログラミングプロトコルに備えたもので
あるはずもない。
の各素子は、一ビットストリームフォーマットを用い、
外部装置からコンフィギュレーションコントローラ12
0を介して直接プログラム可能となる。
ィギュレーションビットストリームに多数(例えば三つ
の)異なるタイプのビットストリームフォーマットを含
めることができる。ここでは、フォーマットそれぞれが
各埋込スレーブ素子あるいはコンフィギュレーションメ
モリに個別対応するものとなっている。これは、顧客に
よって供給され、装置の他の埋込素子が従う特定コンフ
ィギュレーションプロトコルに従うかどうかわからない
埋込素子を利用する装置に都合がよい。
リームが汎用FPGAコンフィギュレーションメモリの
構成に適し、他のタイプが埋込ブロックRAMの初期化
に適し、さらに他のタイプのビットストリームが埋込F
PSCコアメモリ素子の初期化に適したものとされる。
FPGA装置のユーザ所望の順序で個々のメモリ素子を
プログラムできる。このように、コンフィギュレーショ
ンビットストリームは、FPGA部、RAM部および/
またはFPSC部を任意の順序で保持することができ
る。さらに、メモリ素子によっては複数のビットストリ
ームで構成、またはプログラミングし、他を単一ビット
ストリームで構成してもよい。
ストリームにおいて特定される(すなわち、ある個別ビ
ットストリームがどの埋込素子に向けられたものなのか
を特定する)のが好ましい。所定実施形態においては、
各タイプのメモリ素子用ポストアンブルとして必須ヘッ
ダを利用する。
を示す。特に、図3に示すように、コンフィギュレーシ
ョンコントローラ120を介して埋込システムバス17
0に入力され、任意の、あるいは全てのスレーブ素子お
よびコンフィギュレーションメモリを構成させる例示ビ
ットストリーム300は、プリアンブル302、IDフ
レーム304、ヘッダ306、アドレスフレーム30
8、データフレーム310およびポストアンブル312
を有する。
4ビットカウントを確認する。IDフレームは、埋込シ
ステムバス170に入力される個別ビットストリームが
FPGA装置100の素子タイプとして正しいかを判断
する。
ットタイプ(すなわち、FPGA、FPSCあるいはR
AMか)を特定する。
の開始アドレスおよびデータフレームの長さを特定す
る。本実施形態の例では、アドレスフレーム308は
「00」から始まる。
00の個別埋込マスタ素子に関連するコンフィギュレー
ションデータを含む。本実施形態の例では、データフレ
ーム310は「01」から始まる。
ギュレーションデータが次のビットストリームに来るか
を特定する。例えば、追加のコンフィギュレーションデ
ータを含む他のビットストリームがあるか、あるいはコ
ンフィギュレーションデータの入力が完了したかどうか
を特定する。本実施形態の例では、「0」から始まるポ
ストアンブル312は追加のデータが後続のビットスト
リームで送られてくることを示し、「00」から始まる
ポストアンブルはコンフィギュレーションデータの入力
が完了したことを示す。
モリタイプが本発明に係わるマルチスレーブビットスト
リームフォーマットを用いて構成される。具体的に、こ
れら三つのタイプのメモリとは、「汎用」FPGAコン
フィギュレーションメモリ、埋込ブロックRAMおよび
FPSCメモリのことである。
ルチスレーブFPGAにおいて構成またはプログラムす
る際、ビットストリーム300のヘッダ306は、該ビ
ットストリームを汎用FPGA論理に向けられたものと
して特定する独自ヘッダを含めてローディングされる。
所定実施形態では、FPGA論理に対するアドレスフレ
ームをデータフレームに先立ち送出し、自動インクリメ
ントモードおよび明示モードの実行および混合を可能に
するのが好ましい。
スフレームに続く場合には、それらデータフレームは一
アドレスフレーム内の後続アドレスにそれぞれ送出され
る。該アドレスフレームをFPGA論理を構成する際の
オプションとすることができる。例えば、自動インクリ
メントモードを利用してFPGA論理にコンフィギュレ
ーションデータをローディングできる。
化する場合、ビットストリーム300のヘッダ306
は、該ビットストリームを埋込ブロックRAMに向けら
れたものとして特定する独自ヘッダを含めてローディン
グされる。
ズの埋込RAMブロックが備えられる。FPGA100
の各RAMブロックにはメモリマップ内で所定の記憶場
所が与えられる。
ギュレーションアドレスフレームにデータフレーム長を
示すデータを含めてもよい。このように、RAMブロッ
クのサイズは固定でも可変でもよい。
RAM用の全てのビットを含んでいるのが好ましい。ま
た、アドレスフレームが必要でなく、そのためビットス
トリームのデータフレームが順次自動的に同一サイズの
RAMブロックに書き込まれるような場合には、自動イ
ンクリメントモードが実行可能となる。
ームまたは一群のデータフレームに先だって使用するこ
とにより、多数の埋込RAMブロックの初期化を無作為
に秩序化できるようにする。
マスタビットストリームは独自ヘッダ、アドレスフレー
ム、データフレームおよびポストアンブルを有する。
は、例えば、後続のデータ長と共に該データ用の先頭ア
ドレスも含む。これにより、FPGA装置100に埋め
込まれた各種記憶場所間でデータフレームの長さに変化
を付け、異なるFPSCあるいは異なるアドレスの偏差
を考慮に入れることができる。
レスフレームは最初のデータフレームより前に送出され
なければならない。一アドレスフレームは同一長さのデ
ータフレーム群に用いることができる。データフレーム
が異なる長さのものに使用される場合、新しい長さを特
定すべく新しいアドレスフレームが送出される。このよ
うに、マルチスレーブビットストリームは様々な長さの
データを使用するコンフィギュレーションを考慮したも
のである。
トリームフォーマットは、埋込メモリ素子のコンフィギ
ュレーションおよび/または部分再コンフィギュレーシ
ョンにおけるフレキシビリティを拡充し、処理速度を増
し、集積回路サイズを削減し、FPGA設計のフレキシ
ビリティを増し、デザイナーによる集積化を容易にする
市場速歩性のあるエンドユーザプロダクトを提供する。
トストリームフォーマットの使用は、FPGA内には閉
鎖システム素子群が埋め込まれるだろうとの観測にもか
かわらず、オープンシステムを考慮したものである。
したが、本発明の範囲を逸脱することなく、ここに開示
した本発明の実施形態に対して当業者による各種変更が
可能なことは言うまでもない。
トアレイ(FPGA)を示す。
である。
(FPGA)を示す。
Claims (19)
- 【請求項1】 複数のマスタ・スレーブ素子と、 前記複数のマスタ・スレーブ素子間の埋込システムバス
トと、 フィールドプログラマブルゲートアレイに対して外部に
ある装置から前記埋込システムバスに外部アクセスを提
供する外部コンフィギュレーションインタフェースとを
備えることを特徴とするフィールドプログラマブルゲー
トアレイ。 - 【請求項2】 前記複数のマスタ・スレーブ素子が少な
くとも一つのマスタ素子と少なくとも一つのスレーブ素
子を有することを特徴とする請求項1記載のフィールド
プログラマブルゲートアレイ。 - 【請求項3】 前記外部コンフィギュレーションインタ
フェースは、前記複数のマスタ・スレーブ素子のいずれ
にアクセスするよりも前記埋込システムバスにアクセス
する方に高い優先順位を有することを特徴とする請求項
1記載のフィールドプログラマブルゲートアレイ。 - 【請求項4】 前記複数のマスタ・スレーブ素子各々の
優先順位は前記フィールドプログラマブルゲートアレイ
のユーザによってプログラミング可能であることを特徴
とする請求項1記載のフィールドプログラマブルゲート
アレイ。 - 【請求項5】 前記複数のマスタ・スレーブ素子および
前記外部インタフェース間で前記埋込システムバスへの
アクセスについて調停を行う調停ユニットをさらに備え
ることを特徴とする請求項1記載のフィールドプログラ
マブルゲートアレイ。 - 【請求項6】 前記複数のマスタ・スレーブ素子の内少
なくとも一つがFPSC−ASBインタフェースである
ことを特徴とする請求項1記載のフィールドプログラマ
ブルゲートアレイ。 - 【請求項7】 前記複数のマスタ・スレーブ素子の内少
なくとも一つがFPGAコンフィギュレーションコント
ローラであることを特徴とする請求項1記載のフィール
ドプログラマブルゲートアレイ。 - 【請求項8】 前記複数のマスタ・スレーブ素子の内少
なくとも一つがRAMであることを特徴とする請求項1
記載のフィールドプログラマブルゲートアレイ。 - 【請求項9】 前記RAMが少なくとも四つのポートを
有し、その内読取ポートおよび書込ポートを用いて前記
埋込システムバスへの接続を行うと共に、前記少なくと
も四つのポートの残りでプログラマブルルーチングへの
接続を行うことを特徴とする請求項8記載のフィールド
プログラマブルゲートアレイ。 - 【請求項10】 前記RAMは、 ROM、 FIFO、 乗算器、およびCAMの内、少なくとも一つとして構成
可能であることを特徴とする請求項8記載のフィールド
プログラマブルゲートアレイ。 - 【請求項11】 複数のマスタおよびスレーブ素子間に
埋込システムバスを供給するステップと、 前記システムバス上に他のマスタ素子として外部コンフ
ィギュレーションインタフェースを供給し、前記埋込シ
ステムバスと、フィールドプログラマブルゲートアレイ
に対して外部にある装置との間のアクセスを提供するス
テップとからなることを特徴とするフィールドプログラ
マブルゲートアレイの複数のスレーブ素子のいずれか一
つに対して外部アクセスを提供する方法。 - 【請求項12】 前記複数のマスタ・スレーブ素子およ
び前記他のマスタ素子間で前記埋込システムバスに対す
るアクセスを調停するステップをさらに備えることを特
徴とする請求項11記載の方法。 - 【請求項13】 複数のマスタ・スレーブ素子間に埋込
システムバスを供給する手段と、 前記システムバス上に他のマスタ素子として外部コンフ
ィギュレーションインタフェースを供給し、前記埋込シ
ステムバスと、フィールドプログラマブルゲートアレイ
に対して外部にある装置との間のアクセスを提供する手
段とからなることを特徴とするフィールドプログラマブ
ルゲートアレイの複数のマスタ・スレーブ素子のいずれ
か一つに対して外部アクセスを提供する装置。 - 【請求項14】 前記複数のマスタ・スレーブ素子およ
び前記他のマスタ素子間で前記埋込システムバスに対す
るアクセスを調停する手段をさらに備えることを特徴と
する請求項13記載の装置。 - 【請求項15】 コンフィギャラブルブロック・ランダ
ムアクセスメモリを備えるフィールプログラマブルドゲ
ートアレイであって、該コンフィギャラブルブロック・
ランダムアクセスメモリが、 4ポートランダムアクセスメモリ、 システムバスランダムアクセスメモリ、 先入先出(FIFO)バッファ、 定数乗算器、 8ビットx8ビット乗算器、および一定アドレス指定可
能メモリの内一つのコンフィギュレーションにユーザに
よって構成されることを特徴とするフィールプログラマ
ブルドゲートアレイ。 - 【請求項16】 複数のマスタ素子と、 一つ以上のスレーブ素子と、 前記複数のマスタ素子および前記一つ以上のスレーブ素
子間の埋込システムバスとを備え、 フィールドプログラマブルゲートアレイのプログラミン
グに用いられるコンフィギュレーションメモリの状態に
かかわらず、前記複数のマスタ素子のいずれもが前記一
つ以上のスレーブ素子にアクセスできることを特徴とす
るフィールドプログラマブルゲートアレイ。 - 【請求項17】 前記フィールドプログラマブルゲート
アレイに対して外部にある装置から前記埋込システムバ
スに外部アクセスを提供する外部コンフィギュレーショ
ンインタフェースをさらに備えることを特徴とする請求
項16記載のフィールドプログラマブルゲートアレイ。 - 【請求項18】 前記外部コンフィギュレーションイン
タフェースは、前記複数のマスタ素子のいずれかにアク
セスするよりも前記埋込システムバスにアクセスする方
に高い優先順位を有することを特徴とする請求項17記
載のフィールドプログラマブルゲートアレイ。 - 【請求項19】 前記複数のマスタ素子各々の優先順位
は前記フィールドプログラマブルゲートアレイのユーザ
によってプログラミング可能であることを特徴とする請
求項16記載のフィールドプログラマブルゲートアレ
イ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US20737100P | 2000-05-26 | 2000-05-26 | |
US60/207371 | 2000-05-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002073531A true JP2002073531A (ja) | 2002-03-12 |
Family
ID=22770267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001159002A Pending JP2002073531A (ja) | 2000-05-26 | 2001-05-28 | フィールドプログラマブルゲートアレイ(fpga)におけるマルチマスタ・マルチスレーブシステムバス |
Country Status (3)
Country | Link |
---|---|
US (6) | US6535043B2 (ja) |
JP (1) | JP2002073531A (ja) |
TW (1) | TW505861B (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002118459A (ja) * | 2000-06-12 | 2002-04-19 | Altera Corp | シリアル・デバイスからメモリおよびレジスタをセット・アップする方法 |
JP2002246544A (ja) * | 2001-02-16 | 2002-08-30 | Sharp Corp | 半導体装置 |
KR101298459B1 (ko) * | 2011-12-15 | 2013-08-23 | 두산중공업 주식회사 | Fpga 기반 제어기의 버스 구조 |
KR101868012B1 (ko) * | 2014-04-03 | 2018-06-15 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 필드 프로그래머블 게이트 어레이 및 통신 방법 |
Families Citing this family (206)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6825698B2 (en) * | 2001-08-29 | 2004-11-30 | Altera Corporation | Programmable high speed I/O interface |
US6525565B2 (en) * | 2001-01-12 | 2003-02-25 | Xilinx, Inc. | Double data rate flip-flop |
US6914892B1 (en) * | 2001-01-29 | 2005-07-05 | Advanced Micro Devices, Inc. | Arrangement for testing network switch expansion port data by converting to media independent interface format |
US7299203B1 (en) * | 2001-04-19 | 2007-11-20 | Xilinx, Inc. | Method for storing and shipping programmable ASSP devices |
US7076595B1 (en) * | 2001-05-18 | 2006-07-11 | Xilinx, Inc. | Programmable logic device including programmable interface core and central processing unit |
US7039144B2 (en) * | 2001-05-21 | 2006-05-02 | Silicon Integrated Systems Corporation | Large-input-delay variation tolerant (LIDVT) receiver adopting FIFO mechanism |
US6876239B2 (en) * | 2001-07-11 | 2005-04-05 | Micron Technology, Inc. | Delay locked loop “ACTIVE command” reactor |
WO2003012612A1 (en) * | 2001-07-27 | 2003-02-13 | Takashi Suzuki | Electric/electronic device |
US6687184B2 (en) * | 2001-08-28 | 2004-02-03 | Micron Technology, Inc. | Memory device having selectable clock input and method for operating same |
US7200769B1 (en) | 2001-08-29 | 2007-04-03 | Altera Corporation | Self-compensating delay chain for multiple-date-rate interfaces |
US7167023B1 (en) | 2001-08-29 | 2007-01-23 | Altera Corporation | Multiple data rate interface architecture |
US6806733B1 (en) * | 2001-08-29 | 2004-10-19 | Altera Corporation | Multiple data rate interface architecture |
US6946872B1 (en) | 2003-07-18 | 2005-09-20 | Altera Corporation | Multiple data rate interface architecture |
US7420392B2 (en) * | 2001-09-28 | 2008-09-02 | Xilinx, Inc. | Programmable gate array and embedded circuitry initialization and processing |
US6781407B2 (en) | 2002-01-09 | 2004-08-24 | Xilinx, Inc. | FPGA and embedded circuitry initialization and processing |
US7702293B2 (en) * | 2001-11-02 | 2010-04-20 | Nokia Corporation | Multi-mode I/O circuitry supporting low interference signaling schemes for high speed digital interfaces |
US7109744B1 (en) | 2001-12-11 | 2006-09-19 | Altera Corporation | Programmable termination with DC voltage level control |
US6647081B2 (en) * | 2001-12-12 | 2003-11-11 | Emulex Corporation | Phase-locked loop (PLL) circuit for selectively correcting clock skew in different modes |
US6686769B1 (en) * | 2001-12-14 | 2004-02-03 | Altera Corporation | Programmable I/O element circuit for high speed logic devices |
US7123046B2 (en) * | 2002-02-13 | 2006-10-17 | Micron Technology, Inc | Apparatus for adaptively adjusting a data receiver |
US6820248B1 (en) | 2002-02-14 | 2004-11-16 | Xilinx, Inc. | Method and apparatus for routing interconnects to devices with dissimilar pitches |
US6754882B1 (en) * | 2002-02-22 | 2004-06-22 | Xilinx, Inc. | Method and system for creating a customized support package for an FPGA-based system-on-chip (SoC) |
US6976160B1 (en) | 2002-02-22 | 2005-12-13 | Xilinx, Inc. | Method and system for controlling default values of flip-flops in PGA/ASIC-based designs |
US6941538B2 (en) * | 2002-02-22 | 2005-09-06 | Xilinx, Inc. | Method and system for integrating cores in FPGA-based system-on-chip (SoC) |
US6934922B1 (en) | 2002-02-27 | 2005-08-23 | Xilinx, Inc. | Timing performance analysis |
US7111217B1 (en) | 2002-02-28 | 2006-09-19 | Xilinx, Inc. | Method and system for flexibly nesting JTAG TAP controllers for FPGA-based system-on-chip (SoC) |
US6839874B1 (en) | 2002-02-28 | 2005-01-04 | Xilinx, Inc. | Method and apparatus for testing an embedded device |
US7088767B1 (en) | 2002-03-01 | 2006-08-08 | Xilinx, Inc. | Method and apparatus for operating a transceiver in different data rates |
US7111220B1 (en) | 2002-03-01 | 2006-09-19 | Xilinx, Inc. | Network physical layer with embedded multi-standard CRC generator |
US7187709B1 (en) | 2002-03-01 | 2007-03-06 | Xilinx, Inc. | High speed configurable transceiver architecture |
US6961919B1 (en) | 2002-03-04 | 2005-11-01 | Xilinx, Inc. | Method of designing integrated circuit having both configurable and fixed logic circuitry |
US7254157B1 (en) * | 2002-03-27 | 2007-08-07 | Xilinx, Inc. | Method and apparatus for generating a phase locked spread spectrum clock signal |
JP2003297932A (ja) * | 2002-03-29 | 2003-10-17 | Toshiba Corp | 半導体装置 |
US6876227B2 (en) * | 2002-03-29 | 2005-04-05 | Parama Networks, Inc. | Simplifying the layout of printed circuit boards |
US20030210758A1 (en) * | 2002-04-30 | 2003-11-13 | Realtek Semiconductor Corp. | Recovered clock generator with high phase resolution and recovered clock generating method |
DE10221772A1 (de) * | 2002-05-15 | 2003-11-27 | Flowtec Ag | Variables Feldgerät für die Prozeßautomation |
US6973405B1 (en) | 2002-05-22 | 2005-12-06 | Xilinx, Inc. | Programmable interactive verification agent |
US6891394B1 (en) * | 2002-06-04 | 2005-05-10 | Actel Corporation | Field-programmable gate array low voltage differential signaling driver utilizing two complimentary output buffers |
US7378867B1 (en) * | 2002-06-04 | 2008-05-27 | Actel Corporation | Field-programmable gate array low voltage differential signaling driver utilizing two complimentary output buffers |
US7827510B1 (en) | 2002-06-07 | 2010-11-02 | Synopsys, Inc. | Enhanced hardware debugging with embedded FPGAS in a hardware description language |
US6772405B1 (en) | 2002-06-13 | 2004-08-03 | Xilinx, Inc. | Insertable block tile for interconnecting to a device embedded in an integrated circuit |
US8155236B1 (en) | 2002-06-21 | 2012-04-10 | Netlogic Microsystems, Inc. | Methods and apparatus for clock and data recovery using transmission lines |
US7471643B2 (en) * | 2002-07-01 | 2008-12-30 | Panasonic Corporation | Loosely-biased heterogeneous reconfigurable arrays |
US7085973B1 (en) | 2002-07-09 | 2006-08-01 | Xilinx, Inc. | Testing address lines of a memory controller |
KR100871205B1 (ko) * | 2002-07-23 | 2008-12-01 | 엘지노텔 주식회사 | 다중 클럭 위상 결정 시스템 |
US6963218B1 (en) * | 2002-08-09 | 2005-11-08 | Xilinx, Inc. | Bi-directional interface and communication link |
US20040032319A1 (en) | 2002-08-17 | 2004-02-19 | Kye-Hyun Kyung | Devices and methods for controlling active termination resistors in a memory system |
US20040045007A1 (en) * | 2002-08-30 | 2004-03-04 | Bae Systems Information Electronic Systems Integration, Inc. | Object oriented component and framework architecture for signal processing |
US6756815B2 (en) * | 2002-08-29 | 2004-06-29 | Micron Technologies, Inc. | Input buffer with selectable operational characteristics |
US7017140B2 (en) * | 2002-08-29 | 2006-03-21 | Bae Systems Information And Electronic Systems Integration Inc. | Common components in interface framework for developing field programmable based applications independent of target circuit board |
US7092865B1 (en) | 2002-09-10 | 2006-08-15 | Xilinx, Inc. | Method and apparatus for timing modeling |
JP2004159161A (ja) * | 2002-11-07 | 2004-06-03 | Sanyo Electric Co Ltd | 遅延信号生成装置及び記録パルス生成装置 |
US7146598B2 (en) * | 2002-11-07 | 2006-12-05 | Computer Network Technoloy Corp. | Method and apparatus for configuring a programmable logic device |
US6967500B1 (en) | 2002-11-27 | 2005-11-22 | Lattice Semiconductor Corporation | Electronic circuit with on-chip programmable terminations |
US6819190B2 (en) * | 2002-12-10 | 2004-11-16 | Intersil Americas Inc. | Robust fractional clock-based pulse generator for digital pulse width modulator |
US6920627B2 (en) * | 2002-12-13 | 2005-07-19 | Xilinx, Inc. | Reconfiguration of a programmable logic device using internal control |
US6831480B1 (en) * | 2003-01-07 | 2004-12-14 | Altera Corporation | Programmable logic device multispeed I/O circuitry |
US7068080B1 (en) * | 2003-01-17 | 2006-06-27 | Xilinx, Inc. | Method and apparatus for reducing power consumption within a logic device |
US7206343B2 (en) * | 2003-01-24 | 2007-04-17 | Intersil Americas Inc. | High resolution digital pulse width modulator for DC-DC voltage converter |
US7028283B1 (en) * | 2003-01-30 | 2006-04-11 | Xilinx, Inc. | Method of using a hardware library in a programmable logic device |
DE10308295B4 (de) * | 2003-02-26 | 2009-11-19 | Rohde & Schwarz Gmbh & Co. Kg | Verfahren und System zur Anbindung von Baugruppen an ein Bussystem |
JP3821787B2 (ja) * | 2003-02-27 | 2006-09-13 | エルピーダメモリ株式会社 | Dll回路 |
US7143306B2 (en) * | 2003-03-31 | 2006-11-28 | Emc Corporation | Data storage system |
US6894531B1 (en) * | 2003-05-22 | 2005-05-17 | Altera Corporation | Interface for a programmable logic device |
US7385419B1 (en) * | 2003-05-30 | 2008-06-10 | Actel Corporation | Dedicated input/output first in/first out module for a field programmable gate array |
US6953760B2 (en) * | 2003-06-04 | 2005-10-11 | Saint-Gobain Ceramics & Plastics, Inc. | Ceramic component containing inclusions |
US7065601B2 (en) * | 2003-06-06 | 2006-06-20 | Stmicroelectronics N.V. | Interface for prototyping integrated systems |
US6856171B1 (en) | 2003-06-11 | 2005-02-15 | Lattice Semiconductor Corporation | Synchronization of programmable multiplexers and demultiplexers |
US6952115B1 (en) | 2003-07-03 | 2005-10-04 | Lattice Semiconductor Corporation | Programmable I/O interfaces for FPGAs and other PLDs |
US7098685B1 (en) | 2003-07-14 | 2006-08-29 | Lattice Semiconductor Corporation | Scalable serializer-deserializer architecture and programmable interface |
US6888369B1 (en) | 2003-07-17 | 2005-05-03 | Altera Corporation | Programmable on-chip differential termination impedance |
US6924659B1 (en) | 2003-07-28 | 2005-08-02 | Lattice Semiconductor Corporation | Programmable signal termination for FPGAs and the like |
US6903574B2 (en) * | 2003-07-29 | 2005-06-07 | Lattice Semiconductor Corporation | Memory access via serial memory interface |
US6940779B2 (en) * | 2003-08-13 | 2005-09-06 | Lattice Semiconductor Corporation | Programmable broadcast initialization of memory blocks |
US7421014B2 (en) * | 2003-09-11 | 2008-09-02 | Xilinx, Inc. | Channel bonding of a plurality of multi-gigabit transceivers |
US7584345B2 (en) | 2003-10-30 | 2009-09-01 | International Business Machines Corporation | System for using FPGA technology with a microprocessor for reconfigurable, instruction level hardware acceleration |
US7257799B2 (en) * | 2003-11-14 | 2007-08-14 | Lsi Corporation | Flexible design for memory use in integrated circuits |
DE102004056322B4 (de) * | 2003-11-21 | 2012-07-19 | Infineon Technologies Ag | Logik-Grundzelle und Logik-Grundzellen-Anordnung |
US7310728B2 (en) * | 2003-11-24 | 2007-12-18 | Itt Manufacturing Enterprises, Inc. | Method of implementing a high-speed header bypass function |
US7113001B2 (en) * | 2003-12-08 | 2006-09-26 | Infineon Technologies Ag | Chip to chip interface |
US7042263B1 (en) * | 2003-12-18 | 2006-05-09 | Nvidia Corporation | Memory clock slowdown synthesis circuit |
US7187220B1 (en) * | 2003-12-18 | 2007-03-06 | Nvidia Corporation | Memory clock slowdown |
US7400670B2 (en) | 2004-01-28 | 2008-07-15 | Rambus, Inc. | Periodic calibration for communication channels by drift tracking |
US7158536B2 (en) * | 2004-01-28 | 2007-01-02 | Rambus Inc. | Adaptive-allocation of I/O bandwidth using a configurable interconnect topology |
US8422568B2 (en) | 2004-01-28 | 2013-04-16 | Rambus Inc. | Communication channel calibration for drift conditions |
US7095789B2 (en) | 2004-01-28 | 2006-08-22 | Rambus, Inc. | Communication channel calibration for drift conditions |
US7234069B1 (en) | 2004-03-12 | 2007-06-19 | Altera Corporation | Precise phase shifting using a DLL controlled, multi-stage delay chain |
US6961862B2 (en) | 2004-03-17 | 2005-11-01 | Rambus, Inc. | Drift tracking feedback for communication channels |
KR100647370B1 (ko) * | 2004-04-20 | 2006-11-23 | 주식회사 하이닉스반도체 | 멀티 프로토콜 시리얼 인터페이스 시스템 |
KR100541684B1 (ko) * | 2004-04-29 | 2006-01-10 | 주식회사 하이닉스반도체 | 지연 동기 루프 장치 |
US7061269B1 (en) * | 2004-05-12 | 2006-06-13 | Lattice Semiconductor Corporation | I/O buffer architecture for programmable devices |
KR100618825B1 (ko) * | 2004-05-12 | 2006-09-08 | 삼성전자주식회사 | 지연 동기 루프를 이용하여 내부 신호를 측정하는집적회로 장치 및 그 방법 |
ATE484157T1 (de) | 2004-05-13 | 2010-10-15 | Qualcomm Inc | Synchronisierung von audio und video daten in einem drahtlosen nachrichtenübertragungssystem |
US7129753B2 (en) * | 2004-05-26 | 2006-10-31 | Infineon Technologies Ag | Chip to chip interface |
US7126399B1 (en) | 2004-05-27 | 2006-10-24 | Altera Corporation | Memory interface phase-shift circuitry to support multiple frequency ranges |
US7123051B1 (en) | 2004-06-21 | 2006-10-17 | Altera Corporation | Soft core control of dedicated memory interface hardware in a programmable logic device |
US7057429B2 (en) * | 2004-07-20 | 2006-06-06 | Micron Technology, Inc. | Method and apparatus for digital phase generation at high frequencies |
US7191372B1 (en) * | 2004-08-27 | 2007-03-13 | Xilinx, Inc. | Integrated data download |
US7030675B1 (en) | 2004-08-31 | 2006-04-18 | Altera Corporation | Apparatus and method for controlling a delay chain |
US7225285B1 (en) * | 2004-09-07 | 2007-05-29 | Altera Corporation | Assigning interrupts in multi-master systems |
US8566616B1 (en) * | 2004-09-10 | 2013-10-22 | Altera Corporation | Method and apparatus for protecting designs in SRAM-based programmable logic devices and the like |
US8612772B1 (en) | 2004-09-10 | 2013-12-17 | Altera Corporation | Security core using soft key |
JP2006128635A (ja) * | 2004-09-30 | 2006-05-18 | Matsushita Electric Ind Co Ltd | 半導体集積回路 |
DE102004049671B4 (de) * | 2004-10-12 | 2007-08-02 | Mühlbauer Ag | Elektronisches Modul für die Herstellung, Programmierung und das Testen von Chipkarten und zugehöriges Verfahren |
US7196542B1 (en) * | 2004-10-28 | 2007-03-27 | Altera Corporation | Techniques for providing increased flexibility to input/output banks with respect to supply voltages |
US7487571B2 (en) * | 2004-11-29 | 2009-02-10 | Fong Luk | Control adjustable device configurations to induce parameter variations to control parameter skews |
US7350026B2 (en) * | 2004-12-03 | 2008-03-25 | Thales | Memory based cross compare for cross checked systems |
US7218141B2 (en) * | 2004-12-07 | 2007-05-15 | Altera Corporation | Techniques for implementing hardwired decoders in differential input circuits |
US7535258B1 (en) | 2004-12-15 | 2009-05-19 | Lattice Semiconductor Corporation | Programmable current output and common-mode voltage buffer |
US7215148B1 (en) | 2004-12-15 | 2007-05-08 | Lattice Semiconductor Corporation | Programmable current output buffer |
JP2006170894A (ja) * | 2004-12-17 | 2006-06-29 | Nec Electronics Corp | 半導体装置およびクロック生成装置 |
GB0500223D0 (en) * | 2005-01-07 | 2005-02-16 | Imi Norgren Ltd | Communication system |
US7031222B1 (en) * | 2005-01-28 | 2006-04-18 | Altera Corporation | DQS postamble filtering |
US7589648B1 (en) | 2005-02-10 | 2009-09-15 | Lattice Semiconductor Corporation | Data decompression |
US7788625B1 (en) * | 2005-04-14 | 2010-08-31 | Xilinx, Inc. | Method and apparatus for precharacterizing systems for use in system level design of integrated circuits |
US7239180B1 (en) * | 2005-05-23 | 2007-07-03 | Altera Corporation | Programmable pin impedance reduction on multistandard input/outputs |
US7342838B1 (en) * | 2005-06-24 | 2008-03-11 | Lattice Semiconductor Corporation | Programmable logic device with a double data rate SDRAM interface |
US7256613B1 (en) | 2005-06-24 | 2007-08-14 | Lattice Semiconductor Corporation | Programmable interconnect architecture for programmable logic devices |
US7725759B2 (en) * | 2005-06-29 | 2010-05-25 | Sigmatel, Inc. | System and method of managing clock speed in an electronic device |
DE102005033270B4 (de) * | 2005-07-15 | 2007-11-29 | Texas Instruments Deutschland Gmbh | Digitale Logikeinheit |
US20070033427A1 (en) * | 2005-07-19 | 2007-02-08 | International Business Machines Corporation | Power efficient cycle stealing |
US7262630B1 (en) | 2005-08-01 | 2007-08-28 | Lattice Semiconductor Corporation | Programmable termination for single-ended and differential schemes |
US7411419B1 (en) * | 2005-08-09 | 2008-08-12 | Lattice Semiconductor Corporation | Input/output systems and methods |
KR20070019173A (ko) * | 2005-08-11 | 2007-02-15 | 삼성전자주식회사 | 버스 모니터링을 위한 집적 회로 장치 및 그 방법 |
US7304516B2 (en) * | 2005-09-01 | 2007-12-04 | Micron Technology, Inc. | Method and apparatus for digital phase generation for high frequency clock applications |
US7525340B2 (en) * | 2005-09-19 | 2009-04-28 | Altera Corporation | Programmable logic device architecture for accommodating specialized circuitry |
US7382154B2 (en) * | 2005-10-03 | 2008-06-03 | Honeywell International Inc. | Reconfigurable network on a chip |
KR100715154B1 (ko) * | 2005-12-21 | 2007-05-10 | 삼성전자주식회사 | 락킹속도가 향상되는 락킹루프회로 및 이를 이용한클락락킹방법 |
US7646217B2 (en) * | 2005-12-22 | 2010-01-12 | Altera Corporation | Programmable logic device with serial interconnect |
US20070164784A1 (en) * | 2006-01-19 | 2007-07-19 | Altera Corporation | Modular I/O bank architecture |
US7378868B2 (en) * | 2006-01-19 | 2008-05-27 | Altera Corporation | Modular I/O bank architecture |
US7554357B2 (en) * | 2006-02-03 | 2009-06-30 | Lattice Semiconductor Corporation | Efficient configuration of daisy-chained programmable logic devices |
US7570078B1 (en) | 2006-06-02 | 2009-08-04 | Lattice Semiconductor Corporation | Programmable logic device providing serial peripheral interfaces |
US7495970B1 (en) | 2006-06-02 | 2009-02-24 | Lattice Semiconductor Corporation | Flexible memory architectures for programmable logic devices |
US7378873B1 (en) | 2006-06-02 | 2008-05-27 | Lattice Semiconductor Corporation | Programmable logic device providing a serial peripheral interface |
US7277357B1 (en) | 2006-06-05 | 2007-10-02 | Micron Technology, Inc. | Method and apparatus for reducing oscillation in synchronous circuits |
US7631211B1 (en) * | 2006-06-27 | 2009-12-08 | Altera Corporation | Sharing elements in multiple data-rate I/O |
US7521969B2 (en) | 2006-07-28 | 2009-04-21 | Lattice Semiconductor Corporation | Switch sequencing circuit systems and methods |
US7456672B1 (en) | 2006-09-11 | 2008-11-25 | Lattice Semiconductor Corporation | Clock systems and methods |
US7849348B1 (en) * | 2006-09-12 | 2010-12-07 | NexLogic Microsystems, Inc. | Programmable delay clock buffer |
US7511641B1 (en) | 2006-09-19 | 2009-03-31 | Lattice Semiconductor Corporation | Efficient bitstream compression |
US7847730B2 (en) * | 2006-09-27 | 2010-12-07 | Bae Systems Information And Electronic Systems Integration, Inc. | Software defined navigation signal generator |
US7831754B1 (en) | 2006-10-20 | 2010-11-09 | Lattice Semiconductor Corporation | Multiple communication channel configuration systems and methods |
US7770139B2 (en) * | 2007-10-31 | 2010-08-03 | International Business Machines Corporation | Design structure for a flexible multimode logic element for use in a configurable mixed-logic signal distribution path |
US7362138B1 (en) * | 2006-12-20 | 2008-04-22 | International Business Machines Corporation | Flexible multimode logic element for use in a configurable mixed-logic signal distribution path |
US7443192B1 (en) | 2006-12-21 | 2008-10-28 | Lattice Semiconductor Corporation | Output buffer with digital slew control |
US7429877B2 (en) * | 2007-02-02 | 2008-09-30 | International Business Machines Corporation | Design structure for a flexible multimode logic element for use in a configurable mixed-logic signal distribution path |
US7403039B1 (en) * | 2007-02-02 | 2008-07-22 | International Business Machines Corporation | Flexible multimode logic element for use in a configurable mixed-logic signal distribution path |
US7642809B2 (en) * | 2007-02-06 | 2010-01-05 | Rapid Bridge Llc | Die apparatus having configurable input/output and control method thereof |
CN101617371B (zh) | 2007-02-16 | 2014-03-26 | 莫塞德技术公司 | 具有多个外部电源的非易失性半导体存储器 |
US7498860B2 (en) * | 2007-03-27 | 2009-03-03 | Agere Systems Inc. | Buffer circuit having multiplexed voltage level translation |
WO2008148416A1 (de) * | 2007-06-06 | 2008-12-11 | Siemens Aktiengesellschaft | Elektronische schaltungseinheit und verfahren zum betreiben einer elektronischen schaltungseinheit |
US7759971B2 (en) * | 2007-06-21 | 2010-07-20 | Easic Corporation | Single via structured IC device |
KR100891335B1 (ko) * | 2007-07-02 | 2009-03-31 | 삼성전자주식회사 | 비트 에러율 측정을 수행 할 수 있는 클럭 발생 장치 |
US7913103B2 (en) * | 2007-08-31 | 2011-03-22 | Globalfoundries Inc. | Method and apparatus for clock cycle stealing |
US8132040B1 (en) | 2007-10-25 | 2012-03-06 | Lattice Semiconductor Corporation | Channel-to-channel deskew systems and methods |
JP2009116378A (ja) | 2007-11-01 | 2009-05-28 | Renesas Technology Corp | 半導体装置 |
US7902865B1 (en) | 2007-11-15 | 2011-03-08 | Lattice Semiconductor Corporation | Compression and decompression of configuration data using repeated data frames |
US20090131950A1 (en) * | 2007-11-16 | 2009-05-21 | Liu Y King | Vertebroplasty method with enhanced control |
US7973563B2 (en) * | 2008-02-15 | 2011-07-05 | Silicon Labs Spectra, Inc. | Programmable IO architecture |
US7557606B1 (en) | 2008-04-17 | 2009-07-07 | Lattice Semiconductor Corporation | Synchronization of data signals and clock signals for programmable logic devices |
US7930162B1 (en) | 2008-05-05 | 2011-04-19 | Xilinx, Inc. | Accelerating hardware co-simulation using dynamic replay on first-in-first-out-driven command processor |
US7847643B2 (en) * | 2008-11-07 | 2010-12-07 | Infineon Technologies Ag | Circuit with multiphase oscillator |
GB2466821A (en) * | 2009-01-08 | 2010-07-14 | Advanced Risc Mach Ltd | An FPGA with an embedded bus and dedicated bus interface circuits |
CN101847434B (zh) * | 2009-03-25 | 2013-06-05 | 中兴通讯股份有限公司 | Ddr接口中的fpga设备的读、写操作方法及设备 |
US8255733B1 (en) | 2009-07-30 | 2012-08-28 | Lattice Semiconductor Corporation | Clock delay and skew control systems and methods |
KR101259133B1 (ko) | 2009-11-11 | 2013-04-30 | 삼성중공업 주식회사 | 동작 중 재구성이 가능한 제어 시스템 및 그 방법 |
US8423814B2 (en) * | 2010-03-19 | 2013-04-16 | Netlogic Microsystems, Inc. | Programmable drive strength in memory signaling |
US8520744B2 (en) * | 2010-03-19 | 2013-08-27 | Netlogic Microsystems, Inc. | Multi-value logic signaling in multi-functional circuits |
US8537949B1 (en) | 2010-06-30 | 2013-09-17 | Netlogic Microsystems, Inc. | Systems, circuits and methods for filtering signals to compensate for channel effects |
US8494377B1 (en) | 2010-06-30 | 2013-07-23 | Netlogic Microsystems, Inc. | Systems, circuits and methods for conditioning signals for transmission on a physical medium |
US8324930B1 (en) * | 2010-09-27 | 2012-12-04 | Xilinx, Inc. | Methods of implementing output ports and an integrated circuit having programmable output ports |
US8913601B1 (en) * | 2010-10-01 | 2014-12-16 | Xilinx, Inc. | Programmable integrated circuit and method of asynchronously routing data in a circuit block of an integrated circuit |
US8384428B1 (en) * | 2011-01-14 | 2013-02-26 | Lattice Semiconductor Corporation | Pre-configuration programmability of I/O circuitry |
JP5306400B2 (ja) * | 2011-03-24 | 2013-10-02 | 株式会社東芝 | Dc−dcコンバータ |
US8543774B2 (en) | 2011-04-05 | 2013-09-24 | Ansaldo Sts Usa, Inc. | Programmable logic apparatus employing shared memory, vital processor and non-vital communications processor, and system including the same |
EP2512033B1 (en) * | 2011-04-13 | 2013-09-11 | Siemens Aktiengesellschaft | A clock generation system |
US9543956B2 (en) * | 2011-05-09 | 2017-01-10 | Intel Corporation | Systems and methods for configuring an SOPC without a need to use an external memory |
TW201303532A (zh) * | 2011-07-15 | 2013-01-16 | Askey Technology Jiangsu Ltd | 時間量測方法及系統 |
TW201303533A (zh) * | 2011-07-15 | 2013-01-16 | Askey Technology Jiangsu Ltd | 距離量測方法及系統 |
US9589598B1 (en) * | 2011-08-10 | 2017-03-07 | Lockheed Martin Corporation | Configurable spacecraft processor system |
KR101896017B1 (ko) * | 2011-10-21 | 2018-09-07 | 에스케이하이닉스 주식회사 | 집적회로 칩 |
US20130159591A1 (en) * | 2011-12-14 | 2013-06-20 | International Business Machines Corporation | Verifying data received out-of-order from a bus |
KR101303278B1 (ko) * | 2011-12-14 | 2013-09-04 | 한국전자통신연구원 | 비트스트림 보호를 위한 fpga 장치 및 그 방법 |
US8400186B1 (en) * | 2012-02-21 | 2013-03-19 | Altera Corporation | Techniques for buffering single-ended and differential signals |
US9401717B2 (en) | 2012-05-28 | 2016-07-26 | Baysand Inc. | Flexible, space-efficient I/O circuitry for integrated circuits |
CN103678745B (zh) * | 2012-09-18 | 2016-09-28 | 中国科学院微电子研究所 | 一种用于fpga的跨平台多层次集成设计系统 |
US9471484B2 (en) | 2012-09-19 | 2016-10-18 | Novachips Canada Inc. | Flash memory controller having dual mode pin-out |
CN104981807B (zh) | 2013-02-11 | 2019-04-23 | 帝斯贝思数字信号处理和控制工程有限公司 | 在运行中改变fpga的信号值 |
EP2765528B1 (de) * | 2013-02-11 | 2018-11-14 | dSPACE digital signal processing and control engineering GmbH | Wahlfreier Zugriff auf Signalwerte eines FPGA zur Laufzeit |
US8970248B2 (en) * | 2013-03-15 | 2015-03-03 | Qualcomm Incorporated | Sharing hardware resources between D-PHY and N-factorial termination networks |
CN103279309B (zh) * | 2013-05-15 | 2015-12-23 | 清华大学 | 基于fpga的ddr控制装置及方法 |
US9698795B1 (en) * | 2013-07-03 | 2017-07-04 | Altera Corporation | Supporting pseudo open drain input/output standards in a programmable logic device |
CN105302754B (zh) * | 2014-06-16 | 2021-01-22 | 京微雅格(北京)科技有限公司 | 基于总线的fpga芯片配置方法和配置电路 |
US10073704B1 (en) * | 2014-08-12 | 2018-09-11 | Juniper Networks, Inc. | Apparatus, system, and method for initializing adaptive equalizer devices |
US9513984B2 (en) | 2015-01-26 | 2016-12-06 | Hewlett Packard Enterprise Development Lp | Hardware signal logging in embedded block random access memory |
CN204883674U (zh) * | 2015-04-30 | 2015-12-16 | 西门子(深圳)磁共振有限公司 | 现场可编程门阵列的配置电路、射频单元和磁共振系统 |
US10224911B1 (en) | 2016-03-31 | 2019-03-05 | Altera Corporation | Dual signal protocol input/output (I/O) buffer circuit |
CN107453750B (zh) * | 2017-07-17 | 2020-09-11 | 北京时代民芯科技有限公司 | 一种适用于sram型fpga的多功能时钟缓冲器 |
US10079603B1 (en) | 2018-04-08 | 2018-09-18 | Nxp B.V. | Configurable, multi-functional driver circuit |
US10496127B1 (en) | 2018-06-04 | 2019-12-03 | Linear Technology Holding Llc | Multi-chip timing alignment to a common reference signal |
US10775435B1 (en) * | 2018-11-01 | 2020-09-15 | Cadence Design Systems, Inc. | Low-power shift with clock staggering |
US11243817B2 (en) * | 2019-03-29 | 2022-02-08 | Intel Corporation | Technologies for data migration between edge accelerators hosted on different edge locations |
KR20210025403A (ko) * | 2019-08-27 | 2021-03-09 | 삼성전자주식회사 | 무선 통신 시스템에서 다중 fpga를 운영하기 위한 장치 및 방법 |
CN113791568B (zh) * | 2021-11-11 | 2022-02-11 | 西安热工研究院有限公司 | 一种基于火电厂高速串口的调试装置及使用方法 |
US20240184730A1 (en) * | 2022-12-01 | 2024-06-06 | Nxp Usa, Inc. | Eusb repeater for passing repeating mode packets between a differential bus and a single-ended bus |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5097489A (en) * | 1989-05-19 | 1992-03-17 | Tucci Patrick A | Method for incorporating window strobe in a data synchronizer |
US5552733A (en) * | 1993-01-19 | 1996-09-03 | Credence Systems Corporation | Precise and agile timing signal generator based on a retriggered oscillator |
US5399922A (en) * | 1993-07-02 | 1995-03-21 | Altera Corporation | Macrocell comprised of two look-up tables and two flip-flops |
US5455931A (en) * | 1993-11-19 | 1995-10-03 | International Business Machines Corporation | Programmable clock tuning system and method |
US5475344A (en) * | 1994-02-22 | 1995-12-12 | The Board Of Trustees Of The Leland Stanford Junior University | Multiple interconnected ring oscillator circuit |
US5714904A (en) * | 1994-06-06 | 1998-02-03 | Sun Microsystems, Inc. | High speed serial link for fully duplexed data communication |
EP0688101B1 (en) * | 1994-06-17 | 1999-10-06 | Tektronix, Inc. | Apparatus and method for digital phase shift |
US5892961A (en) * | 1995-02-17 | 1999-04-06 | Xilinx, Inc. | Field programmable gate array having programming instructions in the configuration bitstream |
GB9508931D0 (en) * | 1995-05-02 | 1995-06-21 | Xilinx Inc | Programmable switch for FPGA input/output signals |
US6265894B1 (en) * | 1995-10-13 | 2001-07-24 | Frederic Reblewski | Reconfigurable integrated circuit with integrated debugging facilities for use in an emulation system |
US5790838A (en) * | 1996-08-20 | 1998-08-04 | International Business Machines Corporation | Pipelined memory interface and method for using the same |
US5825202A (en) * | 1996-09-26 | 1998-10-20 | Xilinx, Inc. | Integrated circuit with field programmable and application specific logic areas |
US5877632A (en) * | 1997-04-11 | 1999-03-02 | Xilinx, Inc. | FPGA with a plurality of I/O voltage levels |
CA2204089C (en) * | 1997-04-30 | 2001-08-07 | Mosaid Technologies Incorporated | Digital delay locked loop |
US6020760A (en) * | 1997-07-16 | 2000-02-01 | Altera Corporation | I/O buffer circuit with pin multiplexing |
US5945862A (en) * | 1997-07-31 | 1999-08-31 | Rambus Incorporated | Circuitry for the delay adjustment of a clock signal |
US6034542A (en) * | 1997-10-14 | 2000-03-07 | Xilinx, Inc. | Bus structure for modularized chip with FPGA modules |
US6020633A (en) * | 1998-03-24 | 2000-02-01 | Xilinx, Inc. | Integrated circuit packaged for receiving another integrated circuit |
US6061418A (en) * | 1998-06-22 | 2000-05-09 | Xilinx, Inc. | Variable clock divider with selectable duty cycle |
US6236231B1 (en) * | 1998-07-02 | 2001-05-22 | Altera Corporation | Programmable logic integrated circuit devices with low voltage differential signaling capabilities |
US6137307A (en) * | 1998-08-04 | 2000-10-24 | Xilinx, Inc. | Structure and method for loading wide frames of data from a narrow input bus |
US6100735A (en) * | 1998-11-19 | 2000-08-08 | Centillium Communications, Inc. | Segmented dual delay-locked loop for precise variable-phase clock generation |
US6242943B1 (en) * | 1998-12-31 | 2001-06-05 | Khaled Ahmad El-Ayat | Programmable multi-standard I/O architecture for FPGAS |
US6218858B1 (en) * | 1999-01-27 | 2001-04-17 | Xilinx, Inc. | Programmable input/output circuit for FPGA for use in TTL, GTL, GTLP, LVPECL and LVDS circuits |
US6271679B1 (en) * | 1999-03-24 | 2001-08-07 | Altera Corporation | I/O cell configuration for multiple I/O standards |
US6255848B1 (en) * | 1999-04-05 | 2001-07-03 | Xilinx, Inc. | Method and structure for reading, modifying and writing selected configuration memory cells of an FPGA |
US6519674B1 (en) * | 2000-02-18 | 2003-02-11 | Chameleon Systems, Inc. | Configuration bits layout |
US6326806B1 (en) * | 2000-03-29 | 2001-12-04 | Xilinx, Inc. | FPGA-based communications access point and system for reconfiguration |
-
2001
- 2001-05-23 US US09/863,656 patent/US6535043B2/en not_active Expired - Lifetime
- 2001-05-25 US US09/864,289 patent/US6480026B2/en not_active Expired - Lifetime
- 2001-05-25 US US09/864,276 patent/US6486705B2/en not_active Expired - Lifetime
- 2001-05-25 TW TW090112692A patent/TW505861B/zh not_active IP Right Cessation
- 2001-05-25 US US09/864,277 patent/US6483342B2/en not_active Expired - Lifetime
- 2001-05-25 US US09/864,290 patent/US6772230B2/en not_active Expired - Lifetime
- 2001-05-25 US US09/864,284 patent/US6472904B2/en not_active Expired - Lifetime
- 2001-05-28 JP JP2001159002A patent/JP2002073531A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002118459A (ja) * | 2000-06-12 | 2002-04-19 | Altera Corp | シリアル・デバイスからメモリおよびレジスタをセット・アップする方法 |
JP2002246544A (ja) * | 2001-02-16 | 2002-08-30 | Sharp Corp | 半導体装置 |
KR101298459B1 (ko) * | 2011-12-15 | 2013-08-23 | 두산중공업 주식회사 | Fpga 기반 제어기의 버스 구조 |
KR101868012B1 (ko) * | 2014-04-03 | 2018-06-15 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 필드 프로그래머블 게이트 어레이 및 통신 방법 |
Also Published As
Publication number | Publication date |
---|---|
US6480026B2 (en) | 2002-11-12 |
US6535043B2 (en) | 2003-03-18 |
TW505861B (en) | 2002-10-11 |
US20020003436A1 (en) | 2002-01-10 |
US6772230B2 (en) | 2004-08-03 |
US6483342B2 (en) | 2002-11-19 |
US20020003435A1 (en) | 2002-01-10 |
US20020010902A1 (en) | 2002-01-24 |
US6472904B2 (en) | 2002-10-29 |
US20020003445A1 (en) | 2002-01-10 |
US6486705B2 (en) | 2002-11-26 |
US20020008540A1 (en) | 2002-01-24 |
US20010055357A1 (en) | 2001-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002073531A (ja) | フィールドプログラマブルゲートアレイ(fpga)におけるマルチマスタ・マルチスレーブシステムバス | |
US6725313B1 (en) | Communications system and method with multilevel connection identification | |
US6745369B1 (en) | Bus architecture for system on a chip | |
US7406557B2 (en) | Programmable logic device including programmable interface core and central processing unit | |
JP3339860B2 (ja) | ホストから独立したバッファ管理によるネットワーク・インタフェース | |
US6738845B1 (en) | Bus architecture and shared bus arbitration method for a communication device | |
EP1010111B1 (en) | Reusable modules for complex integrated circuit devices | |
EP1226493B1 (en) | Bus architecture and shared bus arbitration method for a communication processor | |
JP2002531891A (ja) | 集積回路デバイスで機能ブロックを集積化するための並行シリアルインタコネクト | |
US6073233A (en) | Method and apparatus for distributing and accessing configuration registers | |
US7162564B2 (en) | Configurable multi-port multi-protocol network interface to support packet processing | |
EP3975428A2 (en) | Logic fabric based on microsector infrastructure with data register having scan registers | |
US8352695B2 (en) | Selectable access rates in a memory and memory communication system | |
US6826645B2 (en) | Apparatus and a method to provide higher bandwidth or processing power on a bus | |
JPH04260959A (ja) | マイクロプロセッサ | |
US9660936B2 (en) | Method and apparatus for supporting reprogramming or reconfiguring | |
EP4020246A1 (en) | Micro-network-on-chip and microsector infrastructure | |
US7107381B2 (en) | Flexible data transfer to and from external device of system-on-chip | |
JPH04349558A (ja) | 選択可能な中央処理ユニット付きワークステーションのアーキテクチャー | |
US20060026307A1 (en) | Method for direct memory access, related architecture and computer program product |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060602 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060613 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060912 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060915 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061212 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070904 |