JPH11122096A - プログラマブル機能ブロック - Google Patents
プログラマブル機能ブロックInfo
- Publication number
- JPH11122096A JPH11122096A JP9297883A JP29788397A JPH11122096A JP H11122096 A JPH11122096 A JP H11122096A JP 9297883 A JP9297883 A JP 9297883A JP 29788397 A JP29788397 A JP 29788397A JP H11122096 A JPH11122096 A JP H11122096A
- Authority
- JP
- Japan
- Prior art keywords
- logic
- input
- output
- circuit
- inputs
- 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
Links
Classifications
-
- 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
-
- 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/1733—Controllable logic circuits
- H03K19/1737—Controllable logic circuits using multiplexers
-
- 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/17728—Reconfigurable logic blocks, e.g. lookup tables
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Logic Circuits (AREA)
Abstract
クを提供する。 【解決手段】 全加算器1と少なくとも1つの前置ロジ
ック2とを有するロジックブロック7と、相互結合配線
9上の信号及びハイ論理レベル,ロウ論理レベル信号の
何れかの信号を選択してロジックブロック7に供給する
プログラマブルな入力選択ユニット6.iを含む入力ブロ
ック6とから構成される。前置ロジック2は、排他的論
理和回路2.1とマルチプレクサ2.2とから構成され、入
力の一部をハイ論理レベルまたはロウ論理レベルに設定
することにより多様な論理回路として機能する。また、
全加算器1も或る程度多様な論理回路として機能する。
このため、本発明で使用するロジックブロック7は、入
力の設定の仕方により、非常に多様な論理回路として機
能し、また、全加算器1を用いているため高速な算術演
算機能も提供できる。
Description
ムによって多様な機能を実現できる論理デバイスの論理
構成単位であるプログラマブル機能ブロックに関する。
って多様な機能を実現できる論理デバイスは、近年急速
に発展している。集積度及びスピードの向上によって、
従来のASIC設計時のエミュレーションや簡単な周辺
回路の置き換えのみならず、アプリケーションに応じて
ハードウェア構成を変えられる再構成可能なコンピュー
タに使うことが検討され始めている。しかし、従来のP
LDやFPGAは多様な論理機能を実現するため、論理
構成単位であるプログラマブル機能ブロックにマルチプ
レクサを組み合わせた回路やルックアップテーブルなど
を用いていた。このため、コンピュータで頻繁に使用さ
れる算術演算の性能が悪いという問題があった。一方、
従来から汎用プロセッサに使われてきた全加算器を中心
としたALUは、算術演算性能は優れているものの、論
理回路としての機能が乏しく、PLDやFPGAのプロ
グラマブル機能ブロックには適さなかった。本発明は、
ALUの機能を強化し、多様な論理機能と高速な算術演
算性能を併せ持つプログラマブル機能ブロックを提供し
ようとするものである。
ロック(プログラマブル機能ブロックの論理回路部)の
例を示す(U.S.Patent5570039)。ロ
ジックブロック7は、引数入力A1 ,A2 、及びキャリ
ー入力Cinを持ち、加算出力S及びキャリー出力Cout
を持つ全加算器1と、一方の引数入力A2 に接続された
前置ロジック2とから成る。前置ロジック2は2本の入
力3と1本の出力4を持ち、1ビットメモリ15の内容
に応じて2通りの論理機能、即ちANDとXNOR(排
他的論理和の否定)とを実現できる。これによってこの
ロジックブロック7は、加算,減算,および乗算の構成
単位を実現できる。
来のロジックブロック7では、前置ロジック2が2通り
の論理機能しか持っていないため機能不足である。
わりにルックアップテーブルと高速なキャリー伝搬のた
めの専用ロジック回路が用いられている。これは全加算
器では論理機能が不足し、PLDやFPGAのロジック
ブロックには適さないためである。しかし、ルックアッ
プテーブルは高速な算術演算(加算,減算,乗算等)に
適さないという問題があった。
点は、実現される機能が少ないことである。その理由
は、前置ロジックの機能が少ないからである。
いる全加算器を用いつつ、豊富な論理機能を有する前置
ロジックを付加することによって、論理的多機能性と高
速性を併せ持つプログラマブル機能ブロックを提供する
ことにある。
ロックに全加算器を用いることにより高速な算術演算を
実現し、さらに、全加算器のみでは不十分な論理機能を
強化するため、多様な論理回路として機能する前置ロジ
ックを全加算器に付加する。具体的には、本発明のプロ
グラマブル機能ブロックは、1つの全加算器(図1の
1)と少なくとも1つの前置ロジック(図1の2)とを
有し、前記前置ロジックは、第1および第2の2つの入
力のうち一方を1つの制御入力の値に応じて選択して出
力する第1のマルチプレクサ(図1の2.2)と、2つの
入力の排他的論理和を出力する排他的論理和回路(図1
の2.1)とから構成され、前記全加算器の3つの入力の
うち少なくとも1つの入力に前記前置ロジックの出力が
接続されているロジックブロック(図1の7)と、前記
ロジックブロックが少なくとも1つ配置された半導体集
積回路上において複数の回路の出力と入力との間をつな
ぐ相互結合配線(図1の9)上の信号とハイ論理レベル
信号とロウ論理レベル信号のうち1つの信号を選択して
出力する1つ以上のプログラマブルな入力選択ユニット
(図1の6.i)とを含み、前記ロジックブロックの入力
が前記入力選択ユニットの出力に接続されていることを
特徴とする。
を有するため、入力の一部をハイ論理レベルまたはロウ
論理レベルに設定することにより極めて多様な論理回路
として機能し(図3)、また、全加算器も或る程度多様
な論理回路として機能する(図6,図7)。このため、
本発明で使用するロジックブロックは、入力の設定の仕
方により、非常に多様な論理回路として機能する。そし
て、全加算器を用いているため高速な算術演算機能も提
供できる。
他的論理和回路は、前記第1および第2の2つの入力の
うちの一方を入力とするインバータ(図4の2.4)と、
前記第1および第2の2つの入力のうちの他方を1つの
入力,前記インバータの出力をもう1つの入力とし、こ
の2つの入力のうち一方を前記1つの制御入力の値に応
じて選択して出力する第2のマルチプレクサ(図4の
2.3)とで構成できる。そして、前記前置ロジックを構
成する前記第1のマルチプレクサおよび前記第2のマル
チプレクサ並びに前記インバータの各々は、1つのNM
OSトランジスタ(図5の16)と1つのPMOSトラ
ンジスタ(図5の17)とから構成できるため、前置ロ
ジックは少ないトランジスタ数で実現できる。また、入
力から出力に至るパスには3段のトランジスタが介在す
るだけなので、遅延量も少ない。つまり、トランジスタ
数および遅延を増やすことなく、より多様な機能を提供
できる。
レベル信号及びロウ論理レベル信号の供給手段として
は、各種の方法が採用可能である。例えば、1つのNM
OSトランジスタ(図14の16)のソースがグランド
に、前記NMOSトランジスタのゲートが第1の1ビッ
トメモリ(図14の15.2)の出力に、1つのPMOS
トランジスタ(図14の17)のソースが電源に、前記
PMOSトランジスタのゲートが第2の1ビットメモリ
(図14の15.1)の出力にそれぞれ接続され、前記N
MOSトランジスタのドレインと前記PMOSトランジ
スタのドレインが接続され、この接続されたドレインか
らハイ論理レベル及びロウ論理レベル信号を出力する回
路(図14の14)を用いることができる。また、出力
がハイ論理レベル信号,高インピーダンスのいずれかを
選択でき、選択した信号を前記相互結合配線のうち少な
くとも1本に出力するプログラマブルな第1の回路(図
18の24.1)と、出力がロウ論理レベル信号,高イン
ピーダンスのいずれかを選択でき、選択した信号を前記
相互結合配線のうち少なくとも1本に出力するプログラ
マブルな第2の回路(図18の24.2)とを用いること
もできる。この場合、第1の回路は、第1の1ビットメ
モリ(図18の15.1)と、ソースが電源に、ゲートが
前記第1の1ビットメモリにそれぞれ接続され、ドレイ
ンを出力とする1つのPMOSトランジスタ(図18の
17)とで構成でき、第2の回路は、第2の1ビットメ
モリ(図18の15.2)と、ソースがグランドに、ゲー
トが前記第2の1ビットメモリにそれぞれ接続され、ド
レインを出力とする1つのNMOSトランジスタ(図1
8の16)とで構成できる。
体集積回路上に配置する場合、各プログラマブル機能ブ
ロックの前置ロジックの入力を他のプログラマブル機能
ブロックの前置ロジックと独立に設定することも可能で
あるし、他のプログラマブル機能ブロックの前置ロジッ
クの入力と共通にすることも可能である。この場合、前
置ロジックの少なくとも1つの入力が、他のプログラマ
ブル機能ブロックにおける前置ロジックの同じ入力と共
通の配線(図24の36)によって接続され、前記共通
の配線の各々に1つの入力選択ユニット(図24の6.
5,6.6)の出力が接続される。そして、この場合、前
記共通の配線に接続する前記前置ロジックの入力は、前
記前置ロジックを構成する前記第1のマルチプレクサの
制御入力と、前記前置ロジックを構成する排他的論理和
回路の前記第1のマルチプレクサに接続されていない方
の入力のうち少なくとも一方であることが望ましい。
について図面を参照して詳細に説明する。
を示すブロック図である。プログラマブル機能ブロック
8は、ロジックブロック7と入力ブロック6とから成
る。
加算器1と、1つ以上の前置ロジック2とから成る。全
加算器1は、入力として引数入力A1 ,A2 、及びキャ
リー入力Cinを持ち、出力として加算出力S及びキャリ
ー出力Cout を持つ。前置ロジック2は、2つの入力の
排他的論理和を出力する回路であるXOR2.1と、1つ
の制御入力の値に応じて2つの入力のうち一方を出力す
る回路であるMUX(マルチプレクサ)2.2とから成
り、XOR2.1の一方の入力にMUX2.2の出力を接続
したものである。前置ロジック2は4本の入力3と1本
の出力4とを持ち、その出力は全加算器1の入力に接続
される。全加算器1の3つの入力A1 ,A2 及びCinの
うち少なくとも1つには前置ロジック2が接続される
(図1は2つの引数入力A1 ,A2 に前置ロジックが接
続されている例を示す)。
ト6.i(i=1,2,3,…)から成る。ロジックブロ
ック7の入力5は、前置ロジック2の入力3と、もしあ
れば前置ロジックが接続されていない全加算器1の入力
とから成り、各々の入力線は1つの入力選択ユニット
6.i(i=1,2,3,…)を介して相互結合配線9と
結合している。
イ論理レベル)または0(ロウ論理レベル)に設定する
ことにより多様な論理回路として機能させることができ
る。前置ロジック2の入出力に図2に示すように記号を
付する。ここで、MUX2.2の記号の中の1,0は、M
UXの制御入力I2 が1であるとき入力I1 がMUXの
出力に伝達され、I2 が0であるとき入力I0 がMUX
の出力に伝達されることを意味する。種々の入力設定に
おける前置ロジック2の機能(等価な論理回路)を図3
に示す。図3の入力設定欄において、空白のところはド
ントケア(その入力が0か1かに論理機能は依存しな
い)を意味する。図3の等価な論理回路欄には、すべて
の種類の1入力1出力論理回路および2入力1出力論理
回路が含まれている。すなわち、本発明における前置ロ
ジックは任意の2入力1出力論理回路(および任意の1
入力1出力論理回路)を実現することができる。なお、
図3には本発明における前置ロジックの主な機能のみを
示しており、これが全てではない。
4に示すようにMUX2.3とインバータ2.4とで構成で
きる。MUXは図5に示すように1つのNMOSトラン
ジスタ16と1つのPMOSトランジスタ17とで実現
することができる。良く知られているようにインバータ
も1つのNMOSトランジスタと1つのPMOSトラン
ジスタとで作ることができるので、図2の前置ロジック
2はわずか6個のトランジスタで構成することが可能で
ある。このような構成法を用いることにより、本発明に
おける前置ロジックは少ない占有面積で設置することが
できる。
1もまた或る程度多様な論理回路として機能する。図6
にそれを示す。これは全加算器のキャリー入力Cinを0
または1に設定することにより、全加算器の加算出力S
及びキャリー出力Cout は、2入力1出力の基本的な論
理回路であるXOR,AND,XNOR,ORとして機
能することを示すものである。なお、全加算器の機能は
入力の置換に対して不変であるので、図6において、キ
ャリー入力Cinを引数入力A1 あるいはA2 と入れ替え
てもよい。また、図7に示すように、全加算器の3つの
入力A1 ,A2,Cinのうち2つを接続して共通の入力
にすることにより、2入力2出力の多様な接続回路を実
現することができる。これは本発明のプログラマブル機
能ブロックを用いた回路のルータビリティを増すのに役
立つ。
算器1は以上で説明した機能を有するので、図1に示す
2つの前置ロジックを用いた場合のロジックブロック7
は、図8に示す構成の任意の4入力1出力論理回路を実
現できる。図8において、10.1,10.2,10.3は任
意の2入力1出力論理回路である。実際の回路で良く使
われる重要な4入力1出力論理回路のほとんどは図8の
ような回路で構成できる。また、図1のロジックブロッ
ク7は図9に示す構成の任意の3入力1出力論理回路も
実現できる。さらに、任意の2入力1出力論理回路およ
び1入力1出力論理回路も実現できる。
ックブロックは、入力の設定の仕方により、非常に多様
な論理回路として機能する。つぎに、入力を設定する入
力選択ユニットについて説明する。
=1,2,3,…)は、相互結合配線9上の信号,ハイ
論理レベル信号及びロウ論理レベル信号のうち1つの信
号を選択し、これを出力するものである。
を示す。各入力選択ユニット6.iは1本の出力線13を
持ち、この出力線13は、相互結合配線9の1つ以上の
線とプログラマブルスイッチ12を介して結合し、かつ
0−1スイッチ14の出力と接続されている。プログラ
マブルスイッチ12は、プログラムによって、2端子間
を接続,非接続のいずれかの状態に設定できる回路であ
る。0−1スイッチ14は1つの出力を持ち、プログラ
ムによってその出力状態をハイ論理レベル,ロウ論理レ
ベル,高インピーダンスのいずれかに設定できる回路で
ある。
第1の具体例を示す。これは、プログラムによって内容
を設定できる1ビットのコンフィギュレーションメモリ
15と、そのコンフィギュレーションメモリ15の出力
Qをゲートに接続したNMOSトランジスタ16とから
成る。Qが1(ハイ論理レベル)か0(ロウ論理レベ
ル)かによって、プログラマブルスイッチ12の端子2
0,21間は接続,非接続のいずれかの状態になる。
第2の具体例である。これは、プログラムによって内容
を設定できる1ビットのコンフィギュレーションメモリ
15とトランスミッションゲート18とから成り、メモ
リ15の出力Qをトランスミッションゲート18のNM
OSトランジスタ16のゲートに、メモリ15の反転出
力Q−をトランスミッションゲート18のPMOSトラ
ンジスタ17のゲートにそれぞれ接続したものである。
プログラマブルスイッチ12の端子20,21間はQが
1か0かによって接続,非接続のいずれかの状態にな
る。
第3の具体例である。これは、1ビットのコンフィギュ
レーションメモリ15の出力Qをトライステートバッフ
ァ19の制御端子に接続したものである。トライステー
トバッファ19の入力端子20には相互結合配線9のう
ちの1本を、トライステートバッファ19の出力端子2
1には入力選択ユニットの出力線13を接続する。メモ
リ15の出力Qが1か0かに応じて、端子20から端子
21へ信号が伝達されたり、両端子間が非接続状態にな
ったりする。
例としてはフューズ,アンチフューズなどがあげられ
る。
実施例を示す。NMOSトランジスタ16のソースはグ
ランドに、PMOSトランジスタ17のソースは電源V
ccにそれぞれ接続され、さらに、NMOSトランジスタ
16のドレインとPMOSトランジスタ17のドレイン
とが接続されて、それが出力22となる。1ビットのコ
ンフィギュレーションメモリ15.1の出力QはPMOS
トランジスタ17のゲートに、別の1ビットのコンフィ
ギュレーションメモリ15.2の出力QはNMOSトラン
ジスタ16のゲートにそれぞれ接続される。メモリ1
5.1の内容が1かつメモリ15.2の内容が0のとき出力
22は高インピーダンス状態、メモリ15.1の内容が0
かつメモリ15.2の内容が0のとき出力22はハイ論理
レベル、メモリ15.1の内容が1かつメモリ15.2の内
容が1のとき出力22はロウ論理レベルとなる。
を示す。相互結合配線9の1つ以上の線及び1ビットの
コンフィギュレーションメモリ15.1の出力がマルチプ
レクサ11の入力に接続され、マルチプレクサ11の制
御入力23の各線にコンフィギュレーションメモリ1
5.2の出力が接続される。プログラムによって設定した
メモリ15.2の内容に応じて、マルチプレクサ11の入
力のいずれかの信号が出力13に伝達される。メモリ1
5.1はハイ論理レベル信号またはロウ論理レベル信号を
マルチプレクサ11の入力に与えるためのもので、メモ
リ15.1の内容はプログラムによってあらかじめ設定さ
れる。
を示す。相互結合配線9の1つ以上の線,電源Vcc及び
グランドがマルチプレクサ11の入力に接続され、マル
チプレクサ11の制御入力23の各線にコンフィギュレ
ーションメモリ15.2の出力が接続される。プログラム
によって設定したメモリ15.2の内容に応じて、マルチ
プレクサ11の入力のいずれかの信号が出力13に伝達
される。
ちどの線が入力選択ユニットに接続されるかは、全ての
入力選択ユニット6.i(i=1,2,3,…)にわたっ
て同じである必要はない。
理レベル信号の供給方法の別の好ましい実施例を示す。
これは、各入力選択ユニットにはハイ論理レベル信号お
よびロウ論理レベル信号供給装置を設けず(すなわち、
図10においては0−1スイッチ14を、図15におい
てはコンフィギュレーションメモリ15.1を、図16に
おいてはマルチプレクサ11の電源Vcc及びグランド入
力を、それぞれ設けない入力選択ユニットを用いる)、
かわりに図17に示すように相互結合配線9の少なくと
も1つの線に0−1スイッチ14を接続するものであ
る。0−1スイッチ14が接続された相互結合配線には
1つあるいは複数のプログラマブル機能ブロックの複数
の入力選択ユニットが結合している。本実施例は、各々
の入力選択ユニットに個別にハイ論理レベル信号及びロ
ウ論理レベル信号供給装置を設ける場合に比べて、少な
い装置でハイ論理レベル信号及びロウ論理レベル信号を
供給できる。また、必要に応じて、0−1スイッチ14
を高インピーダンス状態にすることにより、0−1スイ
ッチ14が接続された相互結合配線を他の信号が通るこ
とができる通常の相互結合配線として使用することも可
能である。
18に示すように、相互結合配線9の少なくとも1本に
ハイ論理レベル信号スイッチ24.1を、残りの相互結合
配線のうち少なくとも1本にロウ論理レベル信号スイッ
チ24.2をそれぞれ接続してもよい。ハイ論理レベル信
号スイッチ24.1はPMOSトランジスタ17のソース
に電源Vccを、ゲートに1ビットのコンフィギュレーシ
ョンメモリ15.1の出力Qを接続したもので、メモリ1
5.1の内容が0のときハイ論理レベル信号が、接続され
た相互結合配線に供給され、メモリ15.1の内容が1の
とき、接続された相互結合配線は電源Vccから絶縁され
他の信号が通ることができる通常の相互結合配線として
使用可能になる。ロウ論理レベル信号スイッチ24.2は
NMOSトランジスタ16のソースにグランドを、ゲー
トに1ビットのコンフィギュレーションメモリ15.2の
出力Qを接続したもので、メモリ15.2の内容が1のと
きロウ論理レベル信号が、接続された相互結合配線に供
給され、メモリ15.2の内容が0のとき、接続された相
互結合配線はグランドから絶縁され他の信号が通ること
ができる通常の相互結合配線として使用可能になる。
クを用いたプログラマブル機能モジュールの典型例およ
びプログラマブル論理デバイスの典型例について順に説
明する。
レジスタと相互結合配線への出力部とを加えたプログラ
マブル機能モジュール29の典型例を示す。プログラマ
ブル機能ブロック8の2つの出力S及びCout は、D−
FF(D−フリップフロップ)26の入力Dと2入力1
出力MUX25の一方の入力に接続され、MUX25の
他方の入力はD−FF26の出力Qと接続される。D−
FF26はクロック信号27で駆動される。MUX25
の制御入力はコンフィギュレーションメモリ15の出力
に接続され、メモリ15の内容によって、MUX25が
プログラマブル機能ブロック8の出力をそのまま出力す
るか、D−FF26を通ったのちの信号を出力するかが
決まる。両MUX25の出力30は各々出力ユニット2
8.2及び28.1を介して相互結合配線9と結合される。
2)の典型例を示す。各出力ユニット28.iは1本の入
力線31を持ち、この入力線31は、相互結合配線9の
1つ以上の線とプログラマブルスイッチ12を介して結
合している。プログラマブルスイッチ12は、プログラ
ムによって2端子間を接続,非接続のいずれかの状態に
設定できる回路で、図11,図12,図13にその例が
示されている。ただし図13のプログラマブルスイッチ
12を用いる場合、端子20は入力線31に、端子21
は相互結合配線9のうちの1本にそれぞれ接続する。図
19において、相互結合配線9のうちどの線が出力ユニ
ットと接続するかは、各出力ユニットで異なってよい。
グラマブル機能モジュール29を2次元アレイ状に配列
したプログラマブル論理デバイスの典型例を示す。図の
縦方向に走る相互結合配線9によって、縦方向に並んだ
一列の複数のプログラマブル機能モジュール29が互い
に結合される。さらに図の横方向に走る相互結合配線3
5によって、各列の相互結合配線9が互いに結合され
る。また、メモリ33や外部回路とのインタフェースで
ある入出力回路34など同じ集積回路上に配置された他
の様々な回路もこの相互結合配線とつながっている。こ
の縦横に走る相互結合配線9,35を通じて、集積回路
上に配置されたプログラマブル機能モジュール29,メ
モリ33,入出力回路34等様々な回路の出力と入力の
間で信号の伝達が行われる。
縦に走る相互結合配線9と横に走る相互結合配線35の
交差点に配置され、プログラムによって両配線間の接
続,非接続を設定することが出来るスイッチ網である。
図22にその典型例を示す。相互結合配線9と相互結合
配線35の各線の間にプログラマブルスイッチ12が適
宜配置され、このスイッチ12をプログラムによって設
定することにより縦方向に走る線と横方向に走る線との
間の接続,非接続が決められる。プログラマブルスイッ
チ12の例としては、図11,図12,図13があげら
れる。しかし、本目的に使用されるプログラマブルスイ
ッチ12には信号の生成機能すなわちバッファ機能が求
められる場合があるが、図11,図12の例にはこれが
無い。また、本目的に使用されるプログラマブルスイッ
チ12は双方向に信号が伝達できることが求められる場
合があるが、図13の例は信号を一方向にしか伝達でき
ない。そこで、図23に示すような2つのトライステー
トバッファ19を互いに反対方向に繋いだプログラマブ
ルスイッチ12を用いることにより、両端子20,21
間の双方向性とバッファ機能の両方を兼ね備えることが
できる。なお、図23において、15.1,15.2は1ビ
ットのコンフィギュレーションメモリであり、その出力
Qは対応するトライステートバッファ19の制御端子に
接続される。
ス,相互結合配線網,相互結合スイッチは考えうる多く
の様々な例のほんの1つに過ぎず、本発明はこれらに限
定されるものではない。特に相互結合配線は、同じ半導
体集積回路上に配置された1つ以上のプログラマブル機
能モジュールあるいは他の回路の入力と出力を結合する
ものであれば何でもよい。
ついて説明する。本発明の第1の実施の形態では、全加
算器を用いることによって加算,乗算のような算術演算
を高速に実行できるプログラマブル機能ブロックを提供
できる。さらに、多様な論理回路として機能する前置ロ
ジックと全加算器とを組み合わせることにより、豊富な
論理機能も提供できる。
説明する。本発明の第2の実施の形態は、図24に示す
ように、本発明の第1の実施の形態であるプログラマブ
ル機能ブロック8を複数並べ、各々のプログラマブル機
能ブロック8の前置ロジック2の入力3のうち1つ以上
の入力を前記複数のプログラマブル機能ブロック8全て
に渡って共通の線36に接続したものである。共通の線
36は各々入力選択ユニット6.5,6.6を介して相互結
合配線9と結合される。図24では、1つの前置ロジッ
ク2を有するプログラマブル機能ブロック8が複数あ
り、各前置ロジック2の入力のうち2つが前記複数のプ
ログラマブル機能ブロック8の間で共通の線36で結ば
れている例を示す。
してもよいが、コンピュータへの応用では、図2の入力
I2 あるいはI3 、あるいはそれら両方を共通化したも
のが特に有用である(図24には入力I2 とI3 の両方
を共通化した例を示す)。以下に、コンピュータでよく
使われる演算器の例を幾つかあげる。
示す。この回路は、多ビット共通入力37が0(ロウ論
理レベル)のとき加算器として機能し、多ビット共通入
力37が1(ハイ論理レベル)のとき減算器として機能
する。この回路は図24の回路によって実現でき、この
とき図25の多ビット共通入力37は図24の共通入力
36.1に対応する。
ト演算器の例を示す。この回路において、各加算器1の
入力に付随したAND回路は乗算の部分積を計算するの
に使用される。この回路は図24の回路によって実現で
き、このとき図26の多ビット共通入力37は図24の
共通入力36.2に対応する。
ビット加算器の例を示す。この回路は、多ビット共通入
力37が0のとき通常の加算を行い、多ビット共通入力
37が1のとき、各加算器1に付属したOR回路はオー
バーフロー処理をする、すなわち引数入力A2 の全ビッ
トを1にする。この回路は図24の回路によって実現で
き、このとき図27の多ビット共通入力37は図24の
共通入力36.2に対応する。
ット加算器の例を示す。この回路は、多ビット共通入力
37の値に応じて各加算器1に付属したMUXの2つの
入力のうち一方が選択され、加算器の引数入力A2 とな
るものである。この回路は図24の回路によって実現で
き、このとき図28の多ビット共通入力37は図24の
共通入力36.2に対応する。
の形態の効果に加えて、プログラマブル機能ブロックの
占有面積を小さくする効果がある。これは、各プログラ
マブル機能ブロックの一部の入力を複数のプログラマブ
ル機能ブロックに渡って共通化することにより、大きい
面積を必要とする入力選択ユニットの数を削減できるた
めである。
のような効果を得ることができる。
できることである。その理由は、ロジックブロックに全
加算器を用いたためである。
ることである。その理由は、極めて多様な論理回路とし
て機能する前置ロジックを全加算器に付加してロジック
ブロックを構成したからである。
能ブロックを実現できることである。その理由は、プロ
グラマブル機能ブロックの一部の入力を複数のプログラ
マブル機能ブロックに渡って共通化したためである。
ク図である。
付した記号の説明図である。
機能の説明図である。
である。
る。
る。
説明図である。
4入力1出力論理機能の構成図である。
3入力1出力論理機能の構成図である。
ある。
路図である。
路図である。
路図である。
ある。
ある。
の別の供給方法を示す図である。
のさらに別の供給方法を示す図である。
ールの例を示す図である。
スの例を示す図である。
イッチの例を示す回路図である。
ック図である。
算/減算器の構成を示す図である。
成要素となる多ビット演算器を示す図である。
ロー処理機能付き多ビット加算器を示す図である。
じて入力が変わる多ビット加算器を示す図である。
通すか否かを選択するマルチプレクサ 26:D−FF 27:クロック信号 28.1,28.2:出力ユニット 29:プログラマブル機能モジュール 30:プログラマブル機能モジュールの出力 31:出力ユニットの入力線 32:相互結合スイッチ 33:メモリ 34:入出力回路 35:相互結合配線 36,36.1, 36.2:共通化した入力線 37:多ビット共通入力
Claims (7)
- 【請求項1】 1つの全加算器と少なくとも1つの前置
ロジックとを有し、前記前置ロジックは、第1および第
2の2つの入力のうち一方を1つの制御入力の値に応じ
て選択して出力する第1のマルチプレクサと、2つの入
力の排他的論理和を出力する排他的論理和回路とから構
成され、前記全加算器の3つの入力のうち少なくとも1
つの入力に前記前置ロジックの出力が接続されているロ
ジックブロックと、 前記ロジックブロックが少なくとも1つ配置された半導
体集積回路上において複数の回路の出力と入力との間を
つなぐ相互結合配線上の信号とハイ論理レベル信号とロ
ウ論理レベル信号のうち1つの信号を選択して出力する
1つ以上のプログラマブルな入力選択ユニットとを含
み、 前記ロジックブロックの入力が前記入力選択ユニットの
出力に接続されていることを特徴とするプログラマブル
機能ブロック。 - 【請求項2】 前記前置ロジックを構成する前記排他的
論理和回路は、前記第1および第2の2つの入力のうち
の一方を入力とするインバータと、前記第1および第2
の2つの入力のうちの他方を1つの入力,前記インバー
タの出力をもう1つの入力とし、この2つの入力のうち
一方を前記1つの制御入力の値に応じて選択して出力す
る第2のマルチプレクサとで構成され、 前記前置ロジックを構成する前記第1のマルチプレクサ
および前記第2のマルチプレクサの各々は、1つのNM
OSトランジスタと1つのPMOSトランジスタとから
構成され、前記両トランジスタの各々のソースを入力,
前記両トランジスタの互いに接続されたドレインを出
力,前記両トランジスタの互いに接続されたゲートを制
御入力としたことを特徴とする請求項1記載のプログラ
マブル機能ブロック。 - 【請求項3】 前記入力選択ユニットへハイ論理レベル
信号及びロウ論理レベル信号を供給する回路として、1
つのNMOSトランジスタのソースがグランドに、前記
NMOSトランジスタのゲートが第1の1ビットメモリ
の出力に、1つのPMOSトランジスタのソースが電源
に、前記PMOSトランジスタのゲートが第2の1ビッ
トメモリの出力にそれぞれ接続され、前記NMOSトラ
ンジスタのドレインと前記PMOSトランジスタのドレ
インが接続され、この接続されたドレインからハイ論理
レベル信号及びロウ論理レベル信号を出力する回路を有
することを特徴とする請求項1記載のプログラマブル機
能ブロック。 - 【請求項4】 前記入力選択ユニットへハイ論理レベル
信号及びロウ論理レベル信号を供給する回路として、プ
ログラムによって出力がハイ論理レベル信号,高インピ
ーダンスのいずれかを選択でき、選択した信号を前記相
互結合配線のうち少なくとも1本に出力する第1の回路
と、プログラムによって出力がロウ論理レベル信号,高
インピーダンスのいずれかを選択でき、選択した信号を
前記相互結合配線のうち少なくとも1本に出力する第2
の回路とを有することを特徴とする請求項1記載のプロ
グラマブル機能ブロック。 - 【請求項5】 前記第1の回路は、第1の1ビットメモ
リと、ソースが電源に、ゲートが前記第1の1ビットメ
モリにそれぞれ接続され、ドレインを出力とする1つの
PMOSトランジスタとで構成され、 前記第2の回路は、第2の1ビットメモリと、ソースが
グランドに、ゲートが前記第2の1ビットメモリにそれ
ぞれ接続され、ドレインを出力とする1つのNMOSト
ランジスタとで構成されることを特徴とする請求項4記
載のプログラマブル機能ブロック。 - 【請求項6】 前記前置ロジックの少なくとも1つの入
力が、他のプログラマブル機能ブロックにおける前置ロ
ジックの同じ入力と共通の配線によって接続され、前記
共通の配線の各々に1つの前記入力選択ユニットの出力
を接続した構成を有することを特徴とする請求項1記載
のプログラマブル機能ブロック。 - 【請求項7】 前記共通の配線に接続する前記前置ロジ
ックの入力が、前記前置ロジックを構成する前記第1の
マルチプレクサの制御入力と、前記前置ロジックを構成
する排他的論理和回路の前記第1のマルチプレクサに接
続されていない方の入力のうち少なくとも一方であるこ
とを特徴とする請求項6記載のプログラマブル機能ブロ
ック。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29788397A JP3185727B2 (ja) | 1997-10-15 | 1997-10-15 | プログラマブル機能ブロック |
US09/169,948 US6130553A (en) | 1997-10-15 | 1998-10-13 | Programmable function block |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29788397A JP3185727B2 (ja) | 1997-10-15 | 1997-10-15 | プログラマブル機能ブロック |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11122096A true JPH11122096A (ja) | 1999-04-30 |
JP3185727B2 JP3185727B2 (ja) | 2001-07-11 |
Family
ID=17852351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP29788397A Expired - Lifetime JP3185727B2 (ja) | 1997-10-15 | 1997-10-15 | プログラマブル機能ブロック |
Country Status (2)
Country | Link |
---|---|
US (1) | US6130553A (ja) |
JP (1) | JP3185727B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6836147B2 (en) | 2001-06-25 | 2004-12-28 | Nec Corporation | Function block |
WO2010106738A1 (ja) * | 2009-03-18 | 2010-09-23 | 日本電気株式会社 | 再構成可能な論理回路 |
US8587336B2 (en) | 2005-11-15 | 2013-11-19 | Semiconductor Technology Academic Research Center | Reconfigurable logic block, programmable logic device provided with the reconfigurable logic block, and method of fabricating the reconfigurable logic block |
JP2016220251A (ja) * | 2011-05-16 | 2016-12-22 | 株式会社半導体エネルギー研究所 | プログラマブルロジックデバイス |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9092595B2 (en) * | 1997-10-08 | 2015-07-28 | Pact Xpp Technologies Ag | Multiprocessor having associated RAM units |
GB9727414D0 (en) * | 1997-12-29 | 1998-02-25 | Imperial College | Logic circuit |
JP3444216B2 (ja) * | 1999-01-28 | 2003-09-08 | 日本電気株式会社 | プログラマブルデバイス |
DE102004011433A1 (de) * | 2004-03-09 | 2005-10-20 | Infineon Technologies Ag | Logik-Grundzelle, Logik-Grundzellen-Anordnung und Logik-Vorrichtung |
US8018248B2 (en) * | 2006-09-21 | 2011-09-13 | Quicklogic Corporation | Adjustable interface buffer circuit between a programmable logic device and a dedicated device |
DE602007011812D1 (de) * | 2006-11-14 | 2011-02-17 | Nxp Bv | Integrierte schaltung zum codieren von daten |
US20080263319A1 (en) * | 2007-04-17 | 2008-10-23 | Cypress Semiconductor Corporation | Universal digital block with integrated arithmetic logic unit |
US8111577B2 (en) | 2007-04-17 | 2012-02-07 | Cypress Semiconductor Corporation | System comprising a state-monitoring memory element |
US8516025B2 (en) | 2007-04-17 | 2013-08-20 | Cypress Semiconductor Corporation | Clock driven dynamic datapath chaining |
US9564902B2 (en) | 2007-04-17 | 2017-02-07 | Cypress Semiconductor Corporation | Dynamically configurable and re-configurable data path |
US8026739B2 (en) | 2007-04-17 | 2011-09-27 | Cypress Semiconductor Corporation | System level interconnect with programmable switching |
US7737724B2 (en) | 2007-04-17 | 2010-06-15 | Cypress Semiconductor Corporation | Universal digital block interconnection and channel routing |
CN102714496B (zh) | 2010-01-20 | 2016-06-29 | 株式会社半导体能源研究所 | 半导体装置 |
US8779799B2 (en) | 2011-05-19 | 2014-07-15 | Semiconductor Energy Laboratory Co., Ltd. | Logic circuit |
JP5892852B2 (ja) | 2011-05-20 | 2016-03-23 | 株式会社半導体エネルギー研究所 | プログラマブルロジックデバイス |
JP5912844B2 (ja) | 2011-05-31 | 2016-04-27 | 株式会社半導体エネルギー研究所 | プログラマブルロジックデバイス |
US8669781B2 (en) | 2011-05-31 | 2014-03-11 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
WO2016090596A1 (zh) * | 2014-12-11 | 2016-06-16 | 京微雅格(北京)科技有限公司 | 可跳过的一比特全加器和fpga器件 |
KR102420735B1 (ko) | 2016-08-19 | 2022-07-14 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 반도체 장치의 전원 제어 방법 |
US10482209B1 (en) | 2018-08-06 | 2019-11-19 | HLS Logix LLC | Field programmable operation block array |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442577A (en) * | 1994-03-08 | 1995-08-15 | Exponential Technology, Inc. | Sign-extension of immediate constants in an alu |
US5570039A (en) * | 1995-07-27 | 1996-10-29 | Lucent Technologies Inc. | Programmable function unit as parallel multiplier cell |
US5915123A (en) * | 1997-10-31 | 1999-06-22 | Silicon Spice | Method and apparatus for controlling configuration memory contexts of processing elements in a network of multiple context processing elements |
-
1997
- 1997-10-15 JP JP29788397A patent/JP3185727B2/ja not_active Expired - Lifetime
-
1998
- 1998-10-13 US US09/169,948 patent/US6130553A/en not_active Expired - Lifetime
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6836147B2 (en) | 2001-06-25 | 2004-12-28 | Nec Corporation | Function block |
US7191205B2 (en) | 2001-06-25 | 2007-03-13 | Nec Corporation | Function block |
US8587336B2 (en) | 2005-11-15 | 2013-11-19 | Semiconductor Technology Academic Research Center | Reconfigurable logic block, programmable logic device provided with the reconfigurable logic block, and method of fabricating the reconfigurable logic block |
WO2010106738A1 (ja) * | 2009-03-18 | 2010-09-23 | 日本電気株式会社 | 再構成可能な論理回路 |
US8390321B2 (en) | 2009-03-18 | 2013-03-05 | Nec Corporation | Reconfigurable logical circuit |
JP5360194B2 (ja) * | 2009-03-18 | 2013-12-04 | 日本電気株式会社 | 再構成可能な論理回路 |
JP2016220251A (ja) * | 2011-05-16 | 2016-12-22 | 株式会社半導体エネルギー研究所 | プログラマブルロジックデバイス |
Also Published As
Publication number | Publication date |
---|---|
JP3185727B2 (ja) | 2001-07-11 |
US6130553A (en) | 2000-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3185727B2 (ja) | プログラマブル機能ブロック | |
JP3123977B2 (ja) | プログラマブル機能ブロック | |
US6501296B2 (en) | Logic/memory circuit having a plurality of operating modes | |
US5633601A (en) | Field programmable gate array logic module configurable as combinational or sequential circuits | |
US5546018A (en) | Fast carry structure with synchronous input | |
US6873182B2 (en) | Programmable logic devices having enhanced cascade functions to provide increased flexibility | |
US6747480B1 (en) | Programmable logic devices with bidirect ional cascades | |
JPH07507194A (ja) | 速度および融通性の両方について最適化したハイブリッド構成を備える電気的にプログラム可能なロジックデバイスチップ | |
Nikoubin et al. | Cell design methodology based on transmission gate for low-power high-speed balanced XOR-XNOR circuits in hybrid-CMOS logic style | |
US6154052A (en) | Combined tristate/carry logic mechanism | |
US7199618B2 (en) | Logic circuit arrangement | |
JPH0586091B2 (ja) | ||
US6016063A (en) | Method and apparatus for connecting long lines to form wide logic functions | |
US5751162A (en) | Field programmable gate array logic module configurable as combinational or sequential circuits | |
JPH0671203B2 (ja) | 論理回路 | |
US7725867B2 (en) | Gate-array or field programmable gate array | |
JP3194364B2 (ja) | プログラマブル機能ブロック | |
US5973506A (en) | Method and apparatus for connecting long lines to form wide busses | |
JP2004153690A (ja) | トライステートバッファ回路 | |
JPH09162723A (ja) | フィールドプログラマブルゲートアレイ | |
GOPAL et al. | Transistor-Level Optimization of Three Input XOR/XNOR Gate Using CMOS Logic Design | |
KR100464952B1 (ko) | 논리회로를이용한4-2컴프레서 | |
JP2002305439A (ja) | プログラマブル論理回路および半導体装置 | |
Vranesic | The FPGA challenge | |
US6034543A (en) | Programmable logic array structure having reduced parasitic loading |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313114 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090511 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100511 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110511 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110511 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120511 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120511 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130511 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130511 Year of fee payment: 12 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |