JPH07273638A - 複数広域入力機能のためのプログラム式専用fpga機能ブロックを備えたfpgaアーキテクチャ - Google Patents

複数広域入力機能のためのプログラム式専用fpga機能ブロックを備えたfpgaアーキテクチャ

Info

Publication number
JPH07273638A
JPH07273638A JP6287346A JP28734694A JPH07273638A JP H07273638 A JPH07273638 A JP H07273638A JP 6287346 A JP6287346 A JP 6287346A JP 28734694 A JP28734694 A JP 28734694A JP H07273638 A JPH07273638 A JP H07273638A
Authority
JP
Japan
Prior art keywords
bit
functional block
adder
input data
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP6287346A
Other languages
English (en)
Inventor
Sinan Kaptanoglu
シナン・キヤプタノグリユー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsemi SoC Corp
Original Assignee
Actel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Actel Corp filed Critical Actel Corp
Publication of JPH07273638A publication Critical patent/JPH07273638A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • G06F7/575Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
    • 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/17704Logic 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 the logic functions being realised by the interconnection of rows and columns
    • 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/386Special constructional features
    • G06F2207/3896Bit slicing

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Logic Circuits (AREA)

Abstract

(57)【要約】 【目的】 マルチビット出力機能ブロックの機能を性能
が拡散された形で、少ない面積でもたらすFPGAを提
供する。 【構成】 各々が加算器、減算器、振幅比較器、一致比
較器、アップ/ダウン・カウンタ、レジスタ、複数ビッ
トAND、および同等な装置の機能を果たすことのでき
る複数個のプログラム式複数ビット出力機能ブロック・
モジュールが、FPGAチップ上の所定の位置に配置さ
れる。機能ブロックの数はチップ上のFPGAモジュー
ルの数よりもはるかに少ない。機能ブロックの各々は複
数個の入力および出力を有しており、これら入力および
出力の各々は隣接するプログラム式相互接続資源に接続
可能である。機能ブロック間の通信はFPGAチップ上
で利用可能な標準的なプログラム式資源によって行われ
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はフィールド・プログラマ
ブル・ゲート・アレイ(FPGA)の分野に関する。詳
細にいえば、本発明はFPGA内にプログラム式専用マ
ルチビット出力機能ブロックを組み込むことによりFP
GAの効率を改善するための方法および装置に関する。
【0002】
【従来の技術】FPGAは多数のFPGA論理モジュー
ル(FPGAでの最小のプログラマブル機能ブロック)
を備えており、該モジュールは次いで複数個のFPGA
ゲートを備えている。FPGAは所望の機能を遂行する
ためにユーザによってプログラムされる。FPGAの例
はElgamal 他による米国特許第4,758,745 号明細書およ
びFreeman による米国特許第4,870,302 号明細書に記載
されている。これら明細書は両者とも参照することによ
って、本明細書にすべてが記載されているかのように、
本明細書の一部をなすものである。
【0003】FPGAの論理モジュールは所与の入力か
ら任意の所望の出力を生成するようにプログラム可能な
マルチビット入力、シングルビット出力装置を備えてい
る。これは従来の技術においては、マルチプレクサ構
造、ルックアップ・テーブル、および論理ゲートによっ
て達成される。論理モジュールは一般に簡単にプログラ
ムできるものではなく、通常は、実質的に恒久的な方法
でユーザによってプログラムされる。
【0004】FPGAは各種のディジタル信号の処理を
取り扱うのに優れており、きわめて柔軟な方法をもたら
すものであるが、加算器、減算器、振幅比較器、一致比
較器、アップ/ダウン・カウンタ、レジスタ、およびマ
ルチビットANDゲートなどの典型的なマルチビット機
能ブロックを形成するには、比較的多くのFPGA論理
モジュールが通常必要である。通常、これらの機能ブロ
ックのうちのいくつかは数千個ずつのFPGAゲートを
使用する。現在の技術を使用すると、これらの周期的に
必要となる機能ブロックの機能を提供するためには、き
わめて多くのFPGAを専用のものとする必要がある。
【0005】FPGA論理モジュール外でこれらの機能
ブロックを構築するのには、2つの大きな欠点がある。
まず、絶対的に必要以上のチップの表面積すなわち「不
動産」が使用される。第2に、FPGA論理モジュール
外で構築した機能ブロックの性能は、同じことを行うよ
うに構成された対応するASIC標準セルの性能にさえ
も、はるかに及ばないものとなる。
【0006】上述の機能ブロックの機能を提供するもう
1つの方法は、個々のFPGA論理モジュールの各々
(または、少なくともその多数)におかれる何らかの付
加的な分散能力を設けることである。これらの機能拡張
をFPGA論理モジュール自体の基本能力と組み合わ
せ、これらの機能を遂行するために標準的なFPGAモ
ジュールを単純に構成することによって許容される面積
よりも小さい面積でより高い性能をもたらす機能ブロッ
クを構成することができる。この場合の欠点は、付加さ
れた分散機能が配置および経路指定プログラムで利用で
きる柔軟性と自由度を犠牲にしたものであり、FPGA
の他の部分の機能を劣化させる可能性があることであ
る。このような手法の例はカリフォルニア州サンノゼの
Xilinx, Inc.のXC-4000 製品、およびカリフォルニア
州サンノゼのAltera CorporationのEPM-7000製品にみら
れる。
【0007】
【発明が解決しようとする課題】したがって、本発明の
目的は、加算器、減算器、振幅比較器、一致比較器、ア
ップ/ダウン・カウンタ、レジスタ、およびマルチビッ
トANDゲートなどのマルチビット出力機能ブロックの
機能を性能が拡張された形で、少ない面積でもたらすこ
とのできる改善されたFPGAを提供することである。
【0008】本発明の他の目的は、FPGA論理モジュ
ールを使用することを必要とせずに、マルチビット出力
機能を遂行できる複数個のマルチビット出力機能ブロッ
クをもたらす改善されたFPGAを提供することであ
る。
【0009】本発明の更に他の目的は、性能の改善され
たFPGAを提供することである。
【0010】本発明の更にまた他の目的は、本発明の利
点が組み込まれていないFPGAと同じタスクを遂行す
るのに必要なチップ面積がより少ないFPGAを提供す
ることである。
【0011】本発明のこれらおよび他の目的、ならびに
利点は図面および本発明の以下の説明の考察から、当業
者には明らかとなろう。
【0012】
【課題を解決するための手段】本発明によれば、各々が
一連の加算器、減算器、振幅比較器、一致比較器、アッ
プ/ダウン・カウンタ、レジスタ、マルチビットAND
ゲート、および類似の装置などのうちの1つの機能性を
帯びることができる複数個のプログラム式マルチビット
出力機能ブロック・モジュールが、FPGAチップ上の
所定の位置に配置される。機能ブロックの数はチップ上
のFPGAモジュールの数よりもはるかに少ない。機能
ブロックの各々は複数の入力および出力を有しており、
これらの各々は隣接するプログラム式相互接続資源に接
続可能である。機能ブロック間の通信はFPGAチップ
上で利用可能な標準的なプログラム式資源によって行わ
れる。
【0013】
【実施例】当業者には、本発明の以下の説明が説明のた
めのみのものであって、いかなる点においても限定的な
ものではないことが認識されよう。開示を検討すること
によって、本発明の他の実施例を当分野の技術者に簡単
に示唆することができる。
【0014】本発明は同一の機能を達成するためにより
一般的なシングルビット出力FPGAを使用せずに、F
PGA上にマルチビット出力機能ブロックを提供する方
法および装置を対象とするものである。
【0015】FPGAモジュール外に機能ブロックを構
築する柔軟性には及ばないが、本発明は性能がはるかに
高く、消費されるシリコン・レイアウト面積の点でコス
トがはるかに低い機能ブロックを提供する。各(あるい
は、ほとんどの)FPGAモジュールに何らかの分散機
能を設けることと比較して、本発明は性能が高く、面積
コストが低く、柔軟性は匹敵するものとなる。
【0016】本発明の本質は、FPGAで利用可能な一
般的な相互接続構造を使用して、広い範囲にわたる各種
のしばしば必要とされるマルチビット出力機能が可能で
あり、かつプログラム可能である機能ブロック・モジュ
ールを設計することである。
【0017】以下で説明する機能ブロック・モジュール
はすべて、8ビット幅の演算を行う。原則として、演算
幅に対して任意のビット数を選択することができる。個
々のFPGAの目的用途および市場にもよるが、4ビッ
ト、6ビット、12ビット、さらには16ビットが適切
である。性能はブロックの幅を広げれば向上するが、ブ
ロックの無駄となる部分が増加する可能性があるため、
コストも上昇する。
【0018】8ビットのブロックを使用して、Nがいく
つであっても、1つまたは複数のNビット幅の機能を実
現することができる(ただし、N=1、2、... 、
8)。希望する機能が8ビットよりも広い場合には、い
くつかの機能ブロックをFPGAのプログラム式相互接
続構造によって組み合わせ、相互に接続して、希望する
サイズを達成することができる。たとえば、13ビット
幅の加算器を構築するには、2つのブロックの8ビット
加算器を使用するだけでよい。
【0019】機能ブロックはFPDAモジュールに分散
されない。機能ブロックのサイズ、形状、回路、ならび
にかかる機能ブロックのプログラム式入力および出力の
数は、FPGA上の典型的なFPGAのものとは異なっ
ている。各機能ブロックはまとまったユニットとして、
FPGA上の選択した位置に配置される。機能ブロック
は多数の入力および出力を有しており、その各々は隣接
するプログラム式相互接続資源に接続可能である。機能
ブロック間、ならびに機能ブロックとFPGAモジュー
ルとの間の通信はFPGA上で利用可能な標準的な相互
接続資源によって行われる。2つ以上の異なるタイプの
プログラム式相互接続資源が利用できる場合には、各種
のタイプに関してこれらのうちから選択を行うことがで
きる。たとえば、2つの加算器を互いに接続して、大型
の加算機を形成する場合、加算器は最高速タイプの相互
接続資源にアクセスし、もっとも高い(最高速な)性能
レベルを維持することができる(また、すべきであ
る)。
【0020】図1において、ユーザが選択できる以下の
1ないし8ビットの機能のいずれかを実施できるを本発
明の第1の好ましい実施例による機能ブロック・モジュ
ールが示されている。
【0021】(a)加算器 (b)減算器 (c)振幅比較器 (d)一致比較器 (e)アップ/ダウン・カウンタ(ユーザの選択にした
がってカウント・アップまたはカウント・ダウンを行う
カウンタ、あるいは受け取る入力データに応じてカウン
ト・アップまたはカウント・ダウンを行うカウンタ) (f)レジスタ(逆転または非逆転レジスタ、あるいは
CLEAR 、PRESET、ENABLEなどのその他の機能を有するレ
ジスタ) (g)ANDゲート (h)オプション(a)、(b)、(c)および(d)
を任意所望の組合せの入力および/または出力レジスタ
によって組み合わせたもの。
【0022】(i)デコーダ 図1に示した機能ブロックは可能な多くの機能ブロック
のうちの1つにすぎない。さらに、意図している用途の
範囲によっては、このブロックの機能性を2つ以上の個
別の機能ブロックに分割し、これらをプログラム式の高
性能相互接続機構で接続するのが好ましいこともある。
たとえば、機能(f)、(g)および(h)を簡単に、
機能(a)、(b)、(c)および(d)から分離する
ことができる。この場合、機能(e)および(i)を以
前と同様に、これらのサブブロックの相互接続された組
合せを使用して行うことができる。
【0023】上記の機能はモジュールの各種の入力を論
理0または論理1のいずれかに適宜構成することによっ
て選択可能である。重要なことに、すべての機能(機能
(e)をのぞく)を、回路の作動中に、データ入力の値
によって「簡単」に選択することができる。たとえば、
回路をデータ入力に応じて、加算器から減算器へ、ある
いはANDゲートへ切り換えることができる。機能
(e)はしかしながら、FPGAの相互接続機構を使用
して機能ブロックの出力と入力を相互接続することを含
んでおり、したがって、回路の作動中に他の機能に変換
することはできない。
【0024】図2に示すように、図1のブロック10お
よび12(図1では「RM-1」というラベルが付けられて
いる)はレジスタ14とマルチプレクサ16を組み合わ
せたものである。この詳細を図2に示す。レジスタ14
は単純なDフリップフロップであるが、CLEAR 、PRESE
T、ENABLEなどの付加機能を有している。
【0025】図1でそれぞれ「RM-8 UNIT B 」、「RM-8
UNIT A 」および「RM-8」というラベルの付いているブ
ロック18、20および22は、8ビット幅並列構成の
ブロックRM-1であり、各RM-1に対するDATA入力は異なっ
ているが、CLOCK およびREGISTER BYPASS 入力はすべて
に共通である。CLEAR 、PRESET、ENABLEなどに対する付
加的な入力がある場合、これらもRM-8ブロック内の8個
のRM-1全部に共通とされる。
【0026】図1で「AND-9 」というラベルの付いてい
るブロック24は単純な9入力ANDゲートである。
【0027】図1で「8-INV 」というラベルの付いてい
るブロック26は8ビット幅の信号を反転するだけの8
入力並列インバータのバンクである。
【0028】図1で「8-MX2 」というラベルの付いてい
るブロック28は並列2入力マルチプレクサのバンクで
ある。マルチプレクサ(SUBTRACTという名称の)に対す
るSELECT入力は、これら全部に対して共通である。
【0029】「ADDER 」というラベルの付いているブロ
ック29は2つの8ビット入力とCARRY 出力を有する8
ビット加算器である。このような加算器は当業者には周
知である。
【0030】この機能ブロックによって上述の機能を遂
行するために、入力で必要とされるデータ値を次の表1
に示す。
【0031】
【表1】 表1において、「DATA」は値が任意の入力値になりうる
ことを意味し、「DATA」は前または次いずれか該当する
方の列のDATAと反対の値を意味し、「ADDR」はデコード
対象のアドレス値を意味し、「X 」は情報が無関係であ
ることを意味する。
【0032】より大きな(8ビット幅超の)機能ブロッ
クを複数個のユニットから構築する場合には、FPGA
の意図している速度および密度に応じて、いくつかのオ
プションを用いてもかまわない。もっとも単純なオプシ
ョンは複数の機能ブロックを直列に相互接続し、大きな
ブロックを得ることである。たとえば、3つのユニット
から24(またはそれ以下の)ビット幅の加算器を構築
することができる。この手法はもっとも費用効果が高い
が、もたらされる性能はもっとも低いものとなる。この
オプションを回避したい場合には、図1に示すブロック
8-MX2 を個別な(より小さい)機能ブロックとして利用
することもできれば、あるいは図3に示す機能ブロック
の一部として含めることもできる。図3は本発明の第2
の好ましい実施例を表す。
【0033】本発明の第2の好ましい実施例を図3に示
す。図3は図1の実施例にボックス30に示す回路を加
えたものを表している。この場合、「MX-2」というラベ
ルの付いたマルチプレクサ32を使用して、RM-1(1
2)からのCARRY OUT 信号をOTHER-CARRY 信号と多重化
する。マルチプレクサ34は2ビット・マルチプレクサ
の8ビット幅の並列アレイであり、OTHER-SELECTを使用
し、RM-8(22)からのSUM 出力をOTHER-SUM と多重化
する。
【0034】この付加回路の目的は並列加算などの演算
を可能とすることである。たとえば、8ビット超の数、
たとえば、2対の8ビットの数からなる数を、下位8ビ
ットを第1の加算器に加え、上位8ビットを第2および
第3両方の加算器に加えることによって加算することを
望む場合、第2の加算器は第1の加算器からの繰り上が
りがゼロであると想定し、第3の加算器は第1の加算器
からの繰り上がりが1であると想定するので、これらの
3つの演算をすべてブロック32のマルチプレクサを使
用して同時に行い、該当する高位の結果を得ることがで
きる。付加機能ブロックを使用するにはコストがかかる
が、この手順にかかる時間がほぼ半分になる。
【0035】図4は本発明の第3の好ましい実施例を示
す。図4は図1と同様であるが、入力レジスタが省かれ
ている点が異なっている。機能のほとんどが維持されて
いる。すなわち、図4の実施例をプログラムして、ほと
んど同じ機能を実行することができるが、この場合、レ
ジスタの実施形態の種類は少なくなり、パイプライン化
された加算器/減算器の作動は行えないが、必要な不動
産の量はMUX ベース(マルチプレクサ・ベース)で、ア
ンチヒューズ接続されたFPGAに関する図1の実施例
に比べ約25%少なくなる。
【0036】もちろん、第1、第2および第3の好まし
い実施例、あるいはこれらの任意の組合せからの1つま
たは複数の機能ブロック・モジュールを組み込んだFP
GAを構築することもできる。
【0037】本発明の説明のための実施例および用途に
ついて図示説明したが、上述ものも以外の各種の改変形
を、本明細書記載の発明の概念から逸脱することなく構
築できることが、当業者には明らかとなろう。したがっ
て、本発明は特許請求の範囲記載の精神以外に限定され
るべきものではない。
【図面の簡単な説明】
【図1】本発明の第1の好ましい実施例によるマルチビ
ット出力機能ブロック・モジュールの略ブロック図であ
る。
【図2】本発明によるマルチビット出力機能ブロックの
構成に使用されるマルチプレクサ・レジスタ素子の略ブ
ロック図である。
【図3】本発明の第2の好ましい実施例によるマルチビ
ット出力機能ブロック・モジュールの略ブロック図であ
る。
【図4】本発明の第3の好ましい実施例によるマルチビ
ット出力ブロック・モジュールの略ブロック図である。
【符号の説明】
10,12 RM−1 14 レジスタ 16 マルチプレクサ 29 8ビット加算器

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 汎用相互接続構造と、 各々がI個の入力とJ個の出力を含んでいる複数個のF
    PGA論理モジュールと、 各々がK個の入力とL個の出力を含んでおり、K>Iお
    よびL>Jである複数個の機能ブロック・モジュールと
    を備えている集積回路上に配置されたユーザ・プログラ
    ム式FPGAアーキテクチャ。
  2. 【請求項2】 汎用相互接続機構と、 各々がI個の入力とJ個の出力を含んでいる複数個のF
    PGA論理モジュールと、 各々がK個の入力とL個の出力を含んでおり、K>Iお
    よびL>Jである複数個の機能ブロック・モジュールで
    あって、該機能ブロック・モジュールがN≧2である場
    合に対応する第1のN個のビット入力データ・バスおよ
    び第2のN個のビット入力データ・バスによって与えら
    れる第1のN個のビット・データ・ワードと第2のN個
    のビット・データ・ワードの組合せ演算を実行するよう
    になされており、該機能ブロック・モジュールの各々が
    加算器、カウンタ、比較器、およびANDゲートの群か
    ら選択された機能の1つを実行するように独立してプロ
    グラム可能である複数個の機能ブロック・モジュールと
    を備えている集積回路上に配置されたユーザ・プログラ
    ム式FPGAアーキテクチャ。
  3. 【請求項3】 前記機能ブロック・モジュールが前記K
    個の入力の状態に基づいて加算器、カウンタ、比較器、
    およびANDゲートの群から選択された機能の1つを実
    行するようにプログラム可能である請求項2に記載のユ
    ーザ・プログラム式FPGAアーキテクチャ。
  4. 【請求項4】 汎用相互接続機構と、 各々がI個の入力とJ個の出力を含んでいる複数個のF
    PGA論理モジュールと、 各々がK個の入力とL個の出力を含んでおり、K>Iお
    よびL>Jである複数個の機能ブロック・モジュールで
    あって、該機能ブロック・モジュールがN≧2である場
    合に対応する第1のN個のビット入力データ・バスおよ
    び第2のN個のビット入力データ・バスによって与えら
    れる第1のN個のビット・データ・ワードと第2のN個
    のビット・データ・ワードの組合せ演算を実行するよう
    になされており、該機能ブロック・モジュールの各々が
    加算器とANDゲートの群から選択された機能の1つを
    実行するように独立してプログラム可能である複数個の
    機能ブロック・モジュールとを備えている集積回路上に
    配置されたユーザ・プログラム式FPGAアーキテクチ
    ャ。
  5. 【請求項5】 汎用相互接続機構と、 複数個のFPGA論理モジュールと、 各々がK個の入力とL個の出力を含んでおり、K>Iお
    よびL>Jである複数個の機能ブロック・モジュールで
    あって、該機能ブロック・モジュールがN≧である場合
    に対応する第1のN個のビット入力データ・バスおよび
    第2のN個のビット入力データ・バスによって与えられ
    る第1のN個のビット・データ・ワードと第2のN個の
    ビット・データ・ワードの組合せ演算を実行するように
    なされており、該機能ブロック・モジュールの各々が、
    加算器、減算器、アップ・カウンタ、ダウン・カウン
    タ、振幅比較器、一致比較器、レジスタ、反転レジス
    タ、ANDゲート、およびデコーダの群から選択された
    機能の1つを実行するように独立してプログラム可能で
    あり、該機能ブロック・モジュールが前記の第1のNビ
    ット入力データ・バスと前記の第2のNビット入力デー
    タ・バスとに作動的に接続されたNビット加算器と、 N+1ビット加算器とN個の2ビット・マルチプレクサ
    のアレイの両方に作動的に接続されたNビット加算器出
    力バスとを含んでいる機能ブロック・モジュールとを備
    えている集積回路上に配置されたユーザ・プログラム式
    FPGAアーキテクチャ。
  6. 【請求項6】 汎用相互接続機構と、 複数個のFPGA論理モジュールと、 各々がK個の入力とL個の出力を含んでおり、K>Iお
    よびL>Jである複数個の機能ブロック・モジュールで
    あって、該機能ブロック・モジュールがN≧2である場
    合に対応する第1のN個のビット入力データ・バスおよ
    び第2のN個のビット入力データ・バスによって与えら
    れる第1のN個のビット・データ・ワードと第2のN個
    のビット・データ・ワードの組合せ演算を実行するよう
    になされており、該機能ブロック・モジュールの各々が
    加算器、減算器、アップ・カウンタ、ダウン・カウン
    タ、振幅比較器、一致比較器、レジスタ、反転レジス
    タ、ANDゲート、およびデコーダの群から選択された
    機能の1つを実行するように独立してプログラム可能で
    あり、該機能ブロック・モジュールが前記の第1のNビ
    ット入力データ・バスに接続された入力と第1のNビッ
    ト・マルチプレクサ出力に接続された出力とを有するN
    個の2ビット・マルチプレクサの第1のアレイと、 前記の第2のNビット入力データ・バスに接続された入
    力と第2のNビット・マルチプレクサ出力に接続された
    出力とを有するN個の2ビット・マルチプレクサの第2
    のアレイと、 前記の第1のNビット・マルチプレクサ出力と前記の第
    2のNビット・マルチプレクサ出力とに作動的に接続さ
    れたNビット加算器と、 N+1ビット加算器とN個の2ビット・マルチプレクサ
    の第3のアレイの両方に作動的に接続されたNビット加
    算器出力バスとを含んでいる機能ブロック・モジュール
    とを備えている集積回路上に配置されたユーザ・プログ
    ラム式FPGAアーキテクチャ。
  7. 【請求項7】 汎用相互接続機構と、 複数個のFPGA論理モジュールと、 各々がK個の入力とL個の出力を含んでおり、K>Iお
    よびL>Jである複数個の機能ブロック・モジュールで
    あって、該機能ブロック・モジュールがN≧2である場
    合に対応する第1のN個のビット入力データ・バスおよ
    び第2のN個のビット入力データ・バスによって与えら
    れる第1のN個のビット・データ・ワードと第2のN個
    のビット・データ・ワードの組合せ演算を実行するよう
    になされており、該機能ブロック・モジュールの各々が
    加算器、減算器、アップ・カウンタ、ダウン・カウン
    タ、振幅比較器、一致比較器、レジスタ、反転レジス
    タ、ANDゲート、およびデコーダの群から選択された
    機能の1つを実行するように独立してプログラム可能で
    あり、該機能ブロック・モジュールが前記の第1のNビ
    ット入力データ・バスに接続された入力と第1のNビッ
    ト・マルチプレクサ出力に接続された出力とを有するN
    個の2ビット・マルチプレクサの第1のアレイと、 前記の第2のNビット入力データ・バスに接続された入
    力と第2のNビット・マルチプレクサ出力に接続された
    出力とを有するN個の2ビット・マルチプレクサの第2
    のアレイと、 インバータ入力とインバータ出力を有しており、該イン
    バータ入力が前記の第2のNビット・マルチプレクサ・
    出力に作動的に接続されているNビット・インバータ
    と、 前記インバータ出力に接続された第1の入力、前記の第
    2のNビット・マルチプレクサ出力に接続された第2の
    入力、およびNビットの出力を有しているN個の2ビッ
    ト。マルチプレクサの第3のアレイと、 前記の第1のNビット・マルチプレクサ出力と前記の第
    2のNビット・マルチプレクサ出力とに作動的に接続さ
    れたNビット加算器と、 N+1ビット加算器とN個の2ビット・マルチプレクサ
    の第4のアレイの両方に作動的に接続されたNビット加
    算器出力バスとを含んでいる機能ブロック・モジュール
    とを備えている集積回路上に配置されたユーザ・プログ
    ラム式FPGAアーキテクチャ。
JP6287346A 1993-10-27 1994-10-27 複数広域入力機能のためのプログラム式専用fpga機能ブロックを備えたfpgaアーキテクチャ Pending JPH07273638A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/144,452 US5448185A (en) 1993-10-27 1993-10-27 Programmable dedicated FPGA functional blocks for multiple wide-input functions
US144452 1993-10-27

Publications (1)

Publication Number Publication Date
JPH07273638A true JPH07273638A (ja) 1995-10-20

Family

ID=22508651

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6287346A Pending JPH07273638A (ja) 1993-10-27 1994-10-27 複数広域入力機能のためのプログラム式専用fpga機能ブロックを備えたfpgaアーキテクチャ

Country Status (3)

Country Link
US (1) US5448185A (ja)
EP (1) EP0651514A3 (ja)
JP (1) JPH07273638A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005038644A1 (ja) * 2003-10-17 2005-04-28 Matsushita Electric Industrial Co., Ltd. データ処理装置

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477165A (en) * 1986-09-19 1995-12-19 Actel Corporation Programmable logic module and architecture for field programmable gate array device
US5198705A (en) 1990-05-11 1993-03-30 Actel Corporation Logic module with configurable combinational and sequential blocks
US5751162A (en) * 1995-04-06 1998-05-12 Texas Instruments Incorporated Field programmable gate array logic module configurable as combinational or sequential circuits
US5614840A (en) * 1995-05-17 1997-03-25 Altera Corporation Programmable logic array integrated circuits with segmented, selectively connectable, long interconnection conductors
US7301541B2 (en) * 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
US5631576A (en) * 1995-09-01 1997-05-20 Altera Corporation Programmable logic array integrated circuit devices with flexible carry chains
US5936426A (en) 1997-02-03 1999-08-10 Actel Corporation Logic function module for field programmable array
US5952852A (en) * 1997-07-02 1999-09-14 Actel Corporation Fast wide decode in an FPGA using probe circuit
US6034542A (en) * 1997-10-14 2000-03-07 Xilinx, Inc. Bus structure for modularized chip with FPGA modules
ATE557342T1 (de) 1998-08-24 2012-05-15 Microunity Systems Eng Prozessor und verfahren zur matrixmultiplikation mit einem breiten operand
US7932911B2 (en) 1998-08-24 2011-04-26 Microunity Systems Engineering, Inc. Processor for executing switch and translate instructions requiring wide operands
US6844756B1 (en) * 2000-06-23 2005-01-18 Cypress Semiconductor Corp. Configurable dedicated logic in PLDs
SE0102199D0 (sv) * 2001-06-20 2001-06-20 Ericsson Telefon Ab L M Upgrading field programmable gate arrays over datacommunication networks
JP3613396B2 (ja) * 2001-06-25 2005-01-26 日本電気株式会社 機能ブロック
US7606347B2 (en) * 2004-09-13 2009-10-20 General Electric Company Photon counting x-ray detector with overrange logic control
US9785565B2 (en) 2014-06-30 2017-10-10 Microunity Systems Engineering, Inc. System and methods for expandably wide processor instructions
CN105278394B (zh) * 2014-07-18 2019-01-25 京微雅格(北京)科技有限公司 基于fpga的并行配置电路及方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4870302A (en) * 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4763020B1 (en) * 1985-09-06 1997-07-08 Ricoh Kk Programmable logic device having plural programmable function cells
US4771285A (en) * 1985-11-05 1988-09-13 Advanced Micro Devices, Inc. Programmable logic cell with flexible clocking and flexible feedback
US4758745B1 (en) * 1986-09-19 1994-11-15 Actel Corp User programmable integrated circuit interconnect architecture and test method
US4983959A (en) * 1986-10-01 1991-01-08 Texas Instruments Incorporated Logic output macrocell
US5028821A (en) * 1990-03-01 1991-07-02 Plus Logic, Inc. Programmable logic device with programmable inverters at input/output pads
US5245227A (en) * 1990-11-02 1993-09-14 Atmel Corporation Versatile programmable logic cell for use in configurable logic arrays
US5122685A (en) * 1991-03-06 1992-06-16 Quicklogic Corporation Programmable application specific integrated circuit and logic cell therefor
US5220213A (en) * 1991-03-06 1993-06-15 Quicklogic Corporation Programmable application specific integrated circuit and logic cell therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005038644A1 (ja) * 2003-10-17 2005-04-28 Matsushita Electric Industrial Co., Ltd. データ処理装置

Also Published As

Publication number Publication date
US5448185A (en) 1995-09-05
EP0651514A3 (en) 1997-03-05
EP0651514A2 (en) 1995-05-03

Similar Documents

Publication Publication Date Title
US6066960A (en) Programmable logic device having combinational logic at inputs to logic elements within logic array blocks
JPH07273638A (ja) 複数広域入力機能のためのプログラム式専用fpga機能ブロックを備えたfpgaアーキテクチャ
US5338983A (en) Application specific exclusive of based logic module architecture for FPGAs
US7274211B1 (en) Structures and methods for implementing ternary adders/subtractors in programmable logic devices
US6538470B1 (en) Devices and methods with programmable logic and digital signal processing regions
US7346644B1 (en) Devices and methods with programmable logic and digital signal processing regions
JP4127880B2 (ja) 演算セル、乗算を実施するための方法、およびプログラマブル・デバイス
US7880499B2 (en) Reconfigurable logic fabrics for integrated circuits and systems and methods for configuring reconfigurable logic fabrics
US6633181B1 (en) Multi-scale programmable array
JP4593866B2 (ja) 乗算器をfpgaに組込むための方法および装置
EP2391010B1 (en) A programmable logic device having complex logic blocks with improved logic cell functionality
CN103366034B (zh) 具有多级逻辑区域的集成电路
JPH0950367A (ja) パラレル乗算器セルとしてのプログラマブル・ファンクション・ユニット
WO1998032229A1 (en) Configurable logic block with and gate for efficient multiplication in fpgas
US7119576B1 (en) Devices and methods with programmable logic and digital signal processing regions
US8072238B1 (en) Programmable logic device architecture with the ability to combine adjacent logic elements for the purpose of performing high order logic functions
WO2002093745A2 (en) Reconfigurable logic device
US7565388B1 (en) Logic cell supporting addition of three binary words
US7253660B1 (en) Multiplexing device including a hardwired multiplexer in a programmable logic device
US7459932B1 (en) Programmable logic device having logic modules with improved register capabilities
US7042248B1 (en) Dedicated crossbar and barrel shifter block on programmable logic resources
US6987401B1 (en) Compare, select, sort, and median-filter apparatus in programmable logic devices and associated methods
US8482312B1 (en) Logic structures for ternary addition in logic devices
US7268584B1 (en) Adder circuitry for a programmable logic device
US6750674B1 (en) Carry chain for use between logic modules in a field programmable gate array