JPH0730407A - プログラム可能制御、デコード及び/又はデータ操作を有するレジスタファイル - Google Patents

プログラム可能制御、デコード及び/又はデータ操作を有するレジスタファイル

Info

Publication number
JPH0730407A
JPH0730407A JP3154169A JP15416991A JPH0730407A JP H0730407 A JPH0730407 A JP H0730407A JP 3154169 A JP3154169 A JP 3154169A JP 15416991 A JP15416991 A JP 15416991A JP H0730407 A JPH0730407 A JP H0730407A
Authority
JP
Japan
Prior art keywords
data
signals
logic
input
leads
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
JP3154169A
Other languages
English (en)
Inventor
David W Hawley
ワーレン ハウレー デイビッド
Scott K Pickett
キニー ピケット スコット
Frederick Kwok Yin Leung
ウォク イン リュン フレドリック
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.)
National Semiconductor Corp
Original Assignee
National Semiconductor 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 National Semiconductor Corp filed Critical National Semiconductor Corp
Publication of JPH0730407A publication Critical patent/JPH0730407A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 新規なアーキテクチャを有するプログラム可
能論理装置が提供する。 【構成】 複数個の制御入力信号201がプログラム可
能マッピングアレイ290へ印加され、データ経路ゲー
ト動作、ラッチング又は修正のための制御機能を発生す
る。プログラム可能制御機能は、設計者に対して柔軟性
を与えており、一方固定したデータ経路論理はプログラ
ム可能アレイとは独立的である。論理アレイ及びデータ
経路論理280は、同一の集積回路上に形成されてお
り、従って、装置をディスクリートな構成要素を使用し
て構成した場合には必要となる入出力バッファに対する
必要性を取除いているので、装置の性能を向上させてい
る。データ経路はアレイを介して延在はしないので、そ
の性能はプログラム可能性によって影響されることはな
い。所望により、プログラム可能アレイをマスクプログ
ラム可能装置、ヒューズ型プログラム可能装置などで形
成することが可能である。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、レジスタ及びデータ経
路制御動作におけるプログラム可能論理装置(PLD)
に関するものである。
【0002】
【従来の技術】プログラム可能論理装置は従来公知であ
り、概略図1に示すことが可能である。図1において、
入力バス101はリード101−1乃至101−N上を
複数個の入力信号を受取る。これらの入力信号は、リー
ド102−1乃至102−N及び103−1乃至103
−Nのそれぞれの上に真信号及び補元信号を形成するた
めに反転される。これらの真及び補元入力信号のうちの
選択したものが、ANDゲート104−1乃至104−
Mの入力リードへ印加される。このことは、特定のプロ
グラム可能論理装置を製造する期間中にプログラム用マ
スクを使用することにより、又はANDゲート104−
1乃至104−Mの入力リード間に接続を形成するため
にプログラムさせるか又はこの様な接続を回避するため
にプログラムさせないままとすることが可能な複数個の
ヒューズを持ったプログラム可能論理装置を製造するこ
とにより達成することが可能である。ANDゲート10
4−1乃至104−Mの出力リードは、ORゲート10
5−1乃至105−Pの入力リードの選択したものへ選
択的に接続される(例えば、プログラム用マスクを使用
するか又はヒューズを使用することによって)。ORゲ
ート105−1乃至105−Pからの出力信号は、反転
させるか又は非反転のものとすることが可能であり、そ
の結果得られる信号はプログラム可能論理装置の出力信
号として機能する。
【0003】従来のPLDの別のタイプのものにおいて
は、真及び補元入力信号及びANDゲート104−1乃
至104−Mの入力リードの間の接続はプログラム可能
のまま残存するが、ANDゲート104−1乃至104
−Mの出力リード間の接続はORゲート105−1乃至
105−Pの入力リードへ固定したパターンで接続され
る。この別のタイプの従来のPLDは可能な相互接続の
数を減少させるが、それは、一般的に、より高い性能を
与え、且つ、使用されるプログラミング技術に依存し
て、多分、所望のタスクを実施するためにより簡単にプ
ログラムすることが可能である。このタイプの従来のP
LDの機能性は、同一のタスクを実施するために接続さ
れたディスクリートな装置と類似しているが、構成要素
は単一の集積回路として形成されるので、より良好な性
能を与える。この様な従来のPLDの性能は、同様な機
能を実施するために設計され且つ製造されたカスタム集
積回路と同等なものであるが、この様なカスタム集積回
路は、ユーザがプログラム可能なものではなく且つ非常
に高価であり且つ設計に時間がかかる。
【0004】この様な典型的な従来のプログラム可能論
理アレイは米国特許第3,949,370号に記載され
ており且つコード対制御格納アドレス変換の結果として
アドレスを供給するために使用される。アドレスデータ
は、書込み可能論理アレイを介してレジスタ内に書込ま
れる。米国特許第4,482,953号は、マイクロプ
ロセサにおいて使用されるプログラム可能論理アレイ
(PLA)を記載している。このPLAは、内部レジス
タをテストするためにマイクロコード化した命令シーケ
ンスを格納している。このPLAは、レジスタに対して
専用の入力データを供給するものではなく、レジスタは
このPLAを介してロードされる。
【0005】米国特許第4,641,278号は、レジ
スタファイル内に設けられた特別の機能回路を制御する
レジスタ選択回路を記載している。この選択回路は固定
されており、且つプログラム可能(書込み可能)なもの
ではなく、且つアレイ状に配列されているものではな
い。米国特許第4,803,622号は、バスシーケン
サの動作を画定するサービステーブルを制御するプログ
ラムを格納するためにPLAを使用することを記載して
いる。しかしながら、このPLAは、制御又はデコード
回路用のレジスタファイルを有するものではない。米国
特許第4,829,425号は、上述した米国特許第
4,803,622号において記載されるものと類似し
たPLAバスシーケンサを使用することを記載してい
る。
【0006】
【課題を解決するための手段】本発明によれば、新規な
アーキテクチャを持ったプログラム可能論理装置が提供
される。本発明によれば、複数個の制御入力信号がプロ
グラム可能論理アレイへ印加されて、データ経路ゲート
動作、ラッチング又は修正のための制御機能を発生す
る。プログラム可能制御機能は、設計者に対して柔軟性
を与えており、一方固定したデータ経路論理はプログラ
ム可能アレイと独立的な高い性能を提供している。この
制御機能は、更に、従来のPLAに関連して公知な如
く、固定型デコード機能、ラッチ型出力などを包含する
ことが可能である。論理アレイ及びデータ経路論理は、
同一の集積回路上において製造され、従って、ディスク
リート即ち個別的な構成要素を使用して装置が構成され
る場合には、必要とされる入出力バッファに対する必要
性を取除いている。このことは、装置の性能を向上させ
ている。データ経路はアレイを介して延びるものではな
いので、その性能はプログラム可能性によって影響を受
けることはない。所望により、プログラム可能アレイ
は、マスクプログラム可能装置、ヒューズ型プログラム
可能装置、又は、例えばRAMセルを使用するレジスタ
をベースとした回路から形成することが可能である。
【0007】本発明の1実施形態においては、一つの制
御機能が、一つの格納要素に対するラッチ又は書込みイ
ネーブルを形成し、一方別のものがその格納要素に対す
る読取りイネーブルを形成する出力をゲート動作する。
該ラッチはレベル又はエッジ感応性とすることが可能で
あり、且つ該ゲートは伝達ゲート又は論理ゲートとする
ことが可能である。別の実施例においては、複数個の格
納要素が同一の制御機能を共用し、「データ経路」を横
断してXビットレジスタを形成している。別の実施例に
おいては、複数個の制御機能が同一のデータ入力及び出
力を共用する複数個の格納要素をイネーブルし、Y個の
格納要素のファイルを形成している。別の実施例におい
ては、データ経路を横断してのXビットレジスタ及びY
個の格納要素からなるファイルの両方を使用して、Y個
のXビット格納要素からなるファイルを形成し、単一ポ
ートのレジスタファイルとして機能する。別の実施例と
しては、Zポートレジスタを形成する同一の格納要素に
対して独立の入力及び出力をイネーブルさせる複数個の
制御機能を有している。別の実施例は、格納要素を、そ
の入力として入力データ及び制御関数を及びその出力と
して出力データをとる簡単な組合わせ論理機能で置換し
ている。これは、例えば、「マスク」又は「ルーチング
(経路付け)」(マルチプレクス動作)機能を形成する
ために使用される。別の実施例は、格納要素を、演算
(計算、シフト、加算など)機能を発生するために他の
要素からの入力又は出力データを入力データ及び制御機
能と結合させるより複雑な論理で置換させる。既存の機
能を修正するために付加的な制御機能を使用することが
可能であり、且つ複雑な機能を与えるために複数個の論
理要素をカスケード又はその他の任意の態様で結合させ
ることが可能である。
【0008】
【実施例】単一ポートレジスタ 図2は、単一ポートレジスタとして構成した場合の本発
明の一実施例に基づいて構成したPLDの概略図であ
る。複数個の制御入力信号が制御入力リード201−1
乃至201−Nへ印加される。これらの入力信号は、そ
れぞれ、リード203−1乃至203−N及び204−
1乃至204−N上に真及び補元制御入力信号を与える
ために、バッファ202−1乃至202−Nによってバ
ッファされる。
【0009】複数個のANDゲート207−1乃至20
7−Mは、リード203−1乃至203−N及び204
−1乃至204−N上に得られる選択した組の真及び補
元入力信号に関する論理操作から得られる信号を与える
ために使用される。各ANDゲート207−1乃至20
7−Mは、入力バス205−1乃至205−Mを有する
ものとして示してある。当業者にとって容易に理解され
る如く、この図面は、各ANDゲートに対する複数個の
入力信号を示しており、且つユーザがリード203−1
乃至203−N及び204−1乃至204−Nの所望の
一つへ各入力リードを接続させることの可能性を示して
いる。従って、各ANDゲート207−1乃至207−
Mは、この様な各ANDゲートと関連する入力リードの
数に依存して、制御入力信号の真及び補元のものの任意
の組合わせに関する論理的AND機能を実行することが
可能である。ANDゲート207−1乃至207−Mか
らの出力信号は、ORゲート209の入力リードへ印加
され、該ゲートの出力信号は、本実施例においては、リ
ード211上に与えられる書込みイネーブル信号として
作用する。所望により、ORゲート209は、例えば、
マスクプログラム可能回路、ヒューズプログラム可能回
路、又はレジスタをベースとしたアレイを使用してプロ
グラムすることが可能である。書込みイネーブル信号
は、レジスタ213のゲート動作用入力リードへ印加さ
れ、該レジスタはレジスタビット213−1乃至213
−Pを有している。レジスタビット213−1乃至21
3−Pのデータ入力リードは、それぞれ、データ入力リ
ード214−1乃至214−Pへ接続されている。
【0010】この様に、レジスタビット213−1乃至
213−Pは、データ入力経路を遅延させることなし
に、入力リード201−1乃至201−Mを制御するた
めに印加された制御入力信号によって発生される書込み
イネーブル信号の制御によって、それぞれ、リード21
4−1乃至214−Pからの入力データをロードする。
書込みイネーブル信号211は、ANDゲート207−
1乃至207−Mの特定のプログラミングの結果として
発生されるので、制御入力データの関数として書込みイ
ネーブル信号を発生する能力において大きな柔軟性が与
えられている。重要なことであるが、レジスタビット2
13−1乃至213−Pは、所望により、レベル感応性
又はエッジトリガ型か、同期型又は非同期型とすること
が可能である。入力データがレジスタビット213−1
乃至213−P内にロードされると、新たなデータがロ
ードされる時間まで、それは、レジスタビットのデータ
出力リード上に与えられる。この格納されたデータは、
他の回路への印加のため、又は他の集積回路へ出力され
るべき読取り動作期間中に使用することが可能である。
【0011】一方、図2の実施例に示した如く、レジス
タビット213−1乃至213−Pから出力リード21
7−1乃至217−Pヘの出力データをマスクするため
に、読取りイネーブル回路が設けられている。図2の実
施例においては、この読取りイネーブル回路は、単に、
複数個のANDゲート216−1乃至216−Pであ
り、その各々は、レジスタビット213−1乃至213
−Pの関連する一つのデータ出力リードへ接続されてい
る一つの入力リードを有すると共に、読取りイネーブル
リード212へ接続された第二入力リードを有してお
り、その出力リードはデータ出力バスの出力リード21
7−1乃至217−Pの一つとして作用する。この読取
りイネーブル信号は、書込みイネーブル信号と同様の態
様で発生されるが、当然、読取りイネーブル信号を発生
するために異なった組のプログラミング基準が使用され
る。
【0012】本発明の別の実施例においては、図3に示
した如く、NANDゲート216−1乃至216−Pが
伝達ゲートで置換される。該伝達ゲートは、例えば、そ
のゲートを読取りイネーブルラインへ接続し、且つその
ソースリードをそれと関連するレジスタビットのデータ
出力リードへ接続し且つそのドレインリードをデータ出
力バスへ接続したMOSトランジスタを有することが可
能である。図2の実施例は、複数個のレジスタビット2
13−1乃至213−Pへ印加するために書込みイネー
ブルリード211上に供給される単一の書込みイネーブ
ル信号を示しているが、本発明の別の実施例において
は、レジスタビット213−1乃至213−Pの異なっ
たもの又は異なったサブセット(副組)へ印加するため
に複数個の書込みイネーブル信号が発生される。この様
に、より大きな柔軟性が与えられており、何時データが
種々のレジスタビット内にラッチされるべきかを決定す
るために多数の異なったプログラム可能制御機能を使用
することが可能である。同様に、図2の実施例は、単一
の読取りイネーブル信号が読取りイネーブルライン21
2上で使用可能とされることを示しているが、本発明の
別の実施例においては、複数個の読取りイネーブル信号
が同様の態様で供給され、データ出力マスク216−1
乃至216−Pの異なったもの又は異なったサブセット
に対して異なった読取りイネーブル信号が印加されるこ
とを可能とするために、多数の異なったプログラム可能
制御機能を与えている。
【0013】本発明の別の実施例においては、レジスタ
ビット213−1乃至213−Pと関連して一つ又はそ
れ以上の書込みイネーブル信号が使用されるか否かとい
うことに拘らず、レジスタビット213−1乃至213
−Pの選択したものへ印加するために書込みイネーブル
信号を選択的にマスクするために複数個の書込みイネー
ブルマスク用回路215−1乃至215−Pが使用され
ている。本発明の一実施例においては、各書込みイネー
ブルマスク回路215−1乃至215−Pが、出力マス
ク回路216−1乃至216−Pと同様に、ANDゲー
トとして形成されており、且つ書込みイネーブルマスキ
ング回路215−1乃至215−Pの全て、個別的なも
の又は特定のサブセットを制御するための一つ又はそれ
以上の書込みイネーブルマスキング信号を供給するため
に、付加的なアレイ要素がアレイ190内に設けられて
いる。
【0014】本発明の別の実施例においては、書込みイ
ネーブルマスキング回路215−1乃至215−Pが制
御されて、三つの可能な状態の一つを与える。即ち、第
一の状態は、不変のレジスタビットに関連する書込みイ
ネーブル信号をパスさせる。第二の状態は、レジスタが
書込みイネーブル状態とされることがないようにレジス
タビットに関連する書込みイネーブル信号をマスクす
る。第三の状態は、アレイ190によって発生された書
込みイネーブル信号の状態に拘らず、関連するレジスタ
ビットへ書込みイネーブル信号を供給し、その際にトラ
ンスペアレントなバッファを与える。
【0015】図4は、図2の回路の別の実施例を示して
おり、それは、リード227−1上を書込みイネーブル
ゲート動作信号を受取る書込みゲート227を有してい
る。これは、レジスタビット213−1乃至213−P
の選択的な書込みイネーブルを可能とすべく作用する。
同様に、読取りイネーブルゲート228は、読取りイネ
ーブルゲート動作信号をリード228−1上で受取り、
レジスタビット213−1乃至213−Pの選択的読取
りイネーブルを可能とする。当然、書込みイネーブルゲ
ート227及び読取りイネーブルゲート228の何れか
一方又は両方を使用することが可能である。更に、それ
ぞれ、副回路298及び299によって実行される書込
みイネーブル及び読取りイネーブル機能の何れか一方又
は両方を、読取りイネーブル及び書込みイネーブル信号
を発生するための任意の所望数の入力信号を包含するよ
り複雑な論理を使用して実現することが可能である。
【0016】図5は、図2の回路の別の実施例を示して
おり、それは、書込みイネーブルラッチ237を有して
おり、該ラッチ237は、レジスタビット213−1乃
至213−Pが書込みイネーブル状態とされるべきか否
かを画定する制御信号アレイ290からの読取りイネー
ブルビットをラッチするために、リード237−1上の
書込みクロック信号を受取る。同様に、読取りイネーブ
ルラッチ238は、リード238−1上の読取りイネー
ブルクロック信号を受取り、且つレジスタビット213
−1乃至213−Pが読取りイネーブル状態とされるべ
きか否かを表わす制御信号アレイ290からの書込みイ
ネーブルビットをラッチすべく作用する。当然、書込み
イネーブルラッチ237及び読取りイネーブルラッチ2
38の何れか一方又は両方を使用することが可能であ
る。更に、書込みイネーブル及び読取りイネーブルラッ
チの使用は、それぞれ副回路295及び296によって
実施される任意の所望のタイプの読取りイネーブル及び
書込みイネーブル機能を与えるために、付加的な論理と
結合させることが可能である。マルチポートレジスタ 図6は、本発明の一実施例に基づいて構成されたマルチ
ポートレジスタの概略図である。図6のマルチポートレ
ジスタは、制御信号アレイ390を有しており、該アレ
イ390は、複数個の制御入力信号を受取り、且つそれ
に応答して複数個の制御出力信号を供給するようにプロ
グラムされている。図6に示した如く、制御信号アレイ
390は、制御バス315上に出力信号を供給し、それ
は以下の如き制御信号を包含している。
【0017】 レジスタ書込みイネーブルA(WE A) レジスタ書込みイネーブルB(WE B) レジスタ読取りイネーブルA(RE A) レジスタ読取りイネーブルB(RE B) 従って、図6の実施例は、二重ポートレジスタであっ
て、それは、入力ポートA、出力ポートA、入力ポート
B、出力ポートBを有しており、各入力及び出力ポート
は、それぞれ、P入力又は出力リードを有している。
【0018】図6の実施例は、レジスタ313を有して
おり、該レジスタ313は、Pビット幅であり且つレジ
スタビット313−1乃至313−Pを有しており、そ
の各々は入力ポートAからの対応する入力データ信号
(DA)及び入力ポートBからの対応する入力データ信
号(DB)を受取る。各レジスタビット313−1乃至
313−Pも、制御信号アレイ390からの書込みレジ
スタAイネーブル(WEA)信号を受取るイネーブル入
力A(GA)を有すると共に、制御信号アレイ390か
らの書込みレジスタBイネーブル(WE B)信号を受
取るイネーブル入力B(GB)を有している。レジスタ
313−1乃至313−Pは、更に、Q出力リードを有
しており、該Q出力リードは、制御信号アレイ390か
ら、それぞれ、読取りレジスタAイネーブル(RE
A)及び読取りレジスタB(REB)イネーブル信号を
受取る読取りAイネーブル回路333−1a乃至333
−Pa及び読取りPイネーブル回路333−1b乃至3
33−Pbによって選択されて、そのレジスタビットと
関連するA及びB出力リードの選択した一つへデータ出
力信号を供給する。
【0019】当然に、当業者によって容易に理解される
如く、図6のマルチポートレジスタは、任意の数のポー
トを与えるために同様の適用性を持って拡張させること
が可能である。書込みポートの数及び読取りポートの数
は等しいものである必要はない。更に、例えば、図7の
実施例に示した如く、複数個の伝達ゲートを使用するこ
とによって、読取りイネーブル回路333を他の態様で
実現することも可能である。本発明に基づいて構成され
た任意の数の単一ポート具体例、又は本発明に基づいて
構成された種々のタイプの単一ポート具体例の組合わせ
を、適宜結合させて、複数個の読取り及び/又は書込み
ポートを有する装置を形成することが可能である。マルチポートレジスタファイル 図8は、マルチポートレジスタファイル、即ち複数個の
入力及び出力ポート及び各々がPビット幅であり且つ制
御信号アレイ490から独立的な読取り及び書込みイネ
ーブル制御信号を受取る複数個のレジスタを有する回路
である本発明の一実施例を概略示している。図8のマル
チポートレジスタは、複数個の制御入力信号を受取り且
つそれに応答して複数個の制御出力信号を供給すべくプ
ログラムされている制御信号アレイ490を有してい
る。図8に示した如く、制御信号アレイ490は、制御
バス415上に出力信号を供給し、それはレジスタ0及
びレジスタ1の両方に対し以下の如き制御信号を有して
いる。
【0020】 レジスタ書込みイネーブルA(WE A) レジスタ書込みイネーブルB(WE B) レジスタ読取りイネーブルA(RE A) レジスタ読取りイネーブルB(RE B) 従って、図8の実施例は、2個のPビット二重ポートレ
ジスタを与えており、その各レジスタは、入力ポート
A、出力ポートA、入力ポートB、出力ポートBを有し
ており、各入力及び出力ポートは、それぞれ、P入力又
は出力リードを有している。
【0021】図8の実施例は、レジスタ413を有して
おり、レジスタ413はPビット幅であり且つ各々が入
力ポートAから対応する入力データ信号(DA)を受取
り且つ入力ポートBから対応する入力データ信号(D
B)を受取るレジスタビット413−1乃至413−P
を有している。各レジスタビット413−1乃至413
−Pは、更に、制御信号アレイ490から書込みレジス
タAイネーブル(WEA)信号を受取るイネーブル入力
A(GA)を有すると共に、制御信号アレイ490から
書込みレジスタBイネーブル(WE B)信号を受取る
イネーブル入力B(GB)を有している。レジスタ41
3−1乃至413−Pは、更に、制御信号アレイ490
から、それぞれ、読取りレジスタAイネーブル(RE
A)及び読取りレジスタB(RE B)イネーブル信号
を受取る読取りAイネーブル回路433−1a乃至43
3−Pa及び読取りBイネーブル回路433−1b乃至
433−Pbによって選択されて、そのレジスタビット
と関連するA及びB出力リードの選択した一つへデータ
出力信号を供給するQ出力リードを有している。レジス
タ414は、レジスタ413と同様の態様で動作する。
【0022】図8に示した二重ポート実施例において
は、レジスタ413の選択した出力ポートからの出力信
号が、ORゲート415−1a乃至415−Pa及び4
15−1b乃至415−Pbによって、レジスタ414
からの選択した出力信号とOR処理される。本発明の別
の実施例においては、ORゲートアレイ415が、図9
に示した如く、複数個の伝達ゲートで置換されており、
各出力データバスに対して印加するために適宜のデータ
を選択する。本発明の別の実施例(不図示)において
は、レジスタ413及び414からの出力信号が別々の
出力リードへ印加される。更に別の態様においては、例
えば、マルチプレクサを使用することによって、出力信
号を任意のその他の所望の態様で選択することが可能で
ある。
【0023】当業者にとって明らかな如く、図8のマル
チポートレジスタファイルは、任意の所望数のポート又
はレジスタ組を与えるために拡張させることが可能であ
る。別のデータ経路論理機能 図10は、図2の実施例のレジスタ213を複数個の一
般的な論理/格納機能要素513−1乃至513−Pで
置換した本発明の一実施例を示した概略図である。各論
理/格納機能要素513−1乃至513−Pは、データ
入力リード514−1乃至514−P、データ出力リー
ド526−1乃至526−P、第一組(527−1乃至
527−P+1)及び第二組(528−1乃至528−
P+1)の直列データ入出力リード乃至は制御入力/ス
テータス出力リード(論理/格納機能要素513−1乃
至513−Pを直列的な態様で接続すべく作用する)を
有している。各論理/格納機能要素513−1乃至51
3−Pは、更に、第一グローバル制御信号入力リード5
11及び第二グローバル制御信号入力リード512を有
している。当然、当業者にとって明らかな如く、任意の
所望数のデータ入力、データ出力、直列データ、制御入
力、ステータス出力及びグローバル制御信号リードを、
各論理/格納機能要素513−1乃至513−Pにおい
て使用することが可能であり、又異なった数のものが論
理/格納機能要素513−1乃至513−Pの異なった
ものと関連することが可能である。
【0024】論理/格納機能要素513−1は、図11
乃至12に示した論理/格納機能要素の特定例がどの様
にして図10の実施例において具体化されているかとい
うことを理解する上でその理解を容易とするために、そ
の8本のリードを1乃至8として番号を付けて示してあ
る。一実施例においては、論理/格納機能要素513−
1乃至513−Pは、簡単なバッファを有しており、該
バッファは、図11に示した如く、一つ又はそれ以上の
グローバル制御信号によって制御される。この実施例
は、単一方向バッファのプログラム可能な制御を与え
る。別の実施例においては、図12に示した如く、各論
理/格納機能要素513−1乃至513−Pは二つのデ
ータ入力リード2a及び2bを有しており、その各々
は、図10の論理/格納機能要素513−1のリード2
と同様な入力リードとして作用する。排他的ORゲート
591は、入力リード2a及び2bへ印加される二つの
入力ビットの比較を行なうことを可能とし、且つその結
果を、論理/格納機能要素のデータ出力リード4上に与
える。図13に示した更に別の実施例においては、単一
のデータ入力リード2が論理/格納機能要素内に設けら
れているレジスタ592と共に使用され、比較されるべ
き第一ビットがレジスタ592内にロードされ且つ排他
的ORゲート593によってその後にデータ入力リード
2上に入力されたデータと比較される。
【0025】図14は、本発明の別の実施例を示してお
り、その場合、各論理/格納要素は、論理/格納要素へ
並列的にロードされるデータを格納することが可能なレ
ジスタを有している。このデータは、グローバル制御信
号の制御下において隣接する論理/格納機能要素へシフ
トされることが可能である。この様に、この実施例は、
プログラム可能な並列ロード可能及び読取り可能シフト
レジスタとして作用する。図15は、図10の実施例に
おいて使用するのに適した論理/格納要素の別の実施例
を示している。図15の論理/格納要素は、図10の実
施例がリップルキャリィ出力を有するラッチ型カウンタ
として作用することを可能としている。図16は、本発
明の別の実施例に基づいて構成された論理/格納要素を
示しており、それは、図10の実施例が2対1マルチプ
レクサとして作用することを可能としている。図17
は、図10の実施例において使用するのに適した論理/
格納要素を示している。図17の各論理/格納要素はユ
ニバーサルな2入力論理要素として作用し、それは、以
下の真理値表に従って、制御リード1a乃至1d上に供
給される制御信号に従って入力リード2a及び2b上で
受取られる二つの入力信号に関する論理演算を与える。
【0026】 特に図面には示していないが、本明細書に記載した種々
の実施例の各々は、所望により、図2の実施例の書込み
イネーブルマスキング回路115−1乃至115−Pと
同様の書込み又は制御マスキング回路を有することが可
能である。別の実施例としては、データレジスタからの
出力信号を制御アレイの入力へフィードバックする手段
を有することが可能である。実際上、任意のタイプの論
理機能を、データレジスタの出力、データレジスタの入
力、制御アレイの入力、制御アレイの出力の間に設ける
ことが可能であり、そうすることによって任意の所望の
動作パラメータを得ることが可能である。この様な論理
機能は、データ経路におけるデータのパリティ発生及び
チェック機能を有することが可能である。更に、タグビ
ットを使用することも可能であり、その場合、データレ
ジスタに加えてタグビットレジスタが使用され、且つ、
所望により、データレジスタがどの様に制御されるかと
いうことと異なった態様で制御することが可能である。
【0027】以上、本発明の具体的実施の態様について
詳細に説明したが、本発明は、これら具体例にのみ限定
されるべきものではなく、本発明の技術的範囲を逸脱す
ることなしに種々の変形が可能であることは勿論であ
る。
【図面の簡単な説明】
【図1】 典型的な従来のプログラム可能装置の概略
図。
【図2】 本発明の一実施例に基づいて構成したPLD
の概略図。
【図3】 データ出力NANDゲートを伝達ゲートで置
換した場合の図2の別の実施例を示した概略図。
【図4】 読取り及び書込みイネーブルゲートを有する
図2の別の実施例を示した概略図。
【図5】 読取り及び書込みイネーブルラッチを有する
図2の別の実施例を示した概略図。
【図6】 本発明の一実施例に基づいて構成したマルチ
ポートレジスタを示した概略図。
【図7】 データ出力NANDゲートを伝達ゲートで置
換した場合の図2の別の実施例を示した概略図。
【図8】 本発明の一実施例に基づいて構成したマルチ
ポートレジスタファイルを示した概略図。
【図9】 データ出力NANDゲートを伝達ゲートで置
換した場合の図2の別の実施例を示した概略図。
【図10】 複数個の一般的な論理/格納機能要素を使
用した本発明の一実施例を示した概略図。
【図11】 簡単なバッファとして作用する図10の論
理/格納機能要素の一実施例を示した概略図。
【図12】 2個の入力ビットの比較を行なうことを可
能とする図10の論理/格納機能要素の一実施例を示し
た概略図。
【図13】 二つの直列的にロードされたビットの比較
を行なうことを可能とする図10の論理/格納機能要素
の一実施例を示した概略図。
【図14】 論理/格納要素が並列的にロード又は読取
りを行なうことが可能なデータをシフトするレジスタを
有する図10の別の実施例を示した概略図。
【図15】 図10の実施例がラッチ型リップルキャリ
ィカウンタとして機能することを可能とする図10の論
理/格納機能要素の別の実施例を示した概略図。
【図16】 図10の実施例が2対1マルチプレクサと
して機能することを可能とする図10の実施例の論理/
格納機能要素の一実施例を示した概略図。
【図17】 ユニバーサルな2入力論理要素として作用
する図10の実施例と共に使用するのに適した論理/格
納機能要素の一実施例を示した概略図。
【符号の説明】
201 制御入力リード 202 バッファ 205 入力バス 207 ANDゲート 209 ORゲート 212 読取りイネーブルライン 213 レジスタビット 214 データ入力リード 215 書込みイネーブルマスキング回路 216 データ出力マスク 217 出力リード 290 制御信号アレイ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 スコット キニー ピケット アメリカ合衆国, カリフォルニア 95129,サン ノゼ, ノーウォーク ド ライブ 4231, アパートメント イーイ ー114 (72)発明者 フレドリック ウォク イン リュン アメリカ合衆国, カリフォルニア 95014,クパチーノ, カントリー スプ リング コート 11522

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 Nを第一正整数として、N複数個の制御
    入力信号を受取るためのN複数個の制御入力リードが設
    けられており、Jを1以上の第二正整数として、前記複
    数個の制御入力信号を受取り且つ前記複数個の入力信号
    の関数としてJ複数個の制御出力信号を供給する手段を
    具備する論理アレイが設けられており、Pを1以上の整
    数として、P複数個の入力データ信号を受取るためのP
    複数個のデータ入力リードが設けられており、Qを1以
    上の整数として、Q複数個のデータ出力信号を供給する
    Q複数個のデータ出力リードが設けられており、前記J
    個の制御出力信号によって制御されて前記P個のデータ
    入力信号の関数として前記Q複数個のデータ出力信号を
    供給するデータ手段が設けられていることを特徴とする
    論理装置。
  2. 【請求項2】 請求項1において、P=Qであり、且つ
    前記データ手段が、P複数個の格納装置を有しており、
    各格納装置は前記データ入力リードの関連する一つへ結
    合されたデータ入力リードと、データ出力リードと、書
    込みイネーブル端子とを有しており、且つ前記データ手
    段は、更に、P複数個の出力制御手段を有しており、各
    出力制御手段は前記格納装置の関連する一つの前記デー
    タ出力リードへ結合された入力リードと、前記データ出
    力リードの関連する一つへ結合された出力リードと、読
    取りイネーブルリードとを有していることを特徴とする
    論理装置。
  3. 【請求項3】 請求項2において、前記J個の制御出力
    信号が、1個又はそれ以上の読取りイネーブル信号、1
    個又はそれ以上の書込みイネーブル信号、又はその両方
    を供給すべく機能することを特徴とする論理装置。
  4. 【請求項4】 請求項3において、一つの制御出力信号
    が、前記格納装置の全てに対する読取りイネーブル信号
    を供給すべく機能することを特徴とする論理装置。
  5. 【請求項5】 請求項3において、一つの制御出力信号
    が、前記格納装置の全てに対する書込みイネーブル信号
    を供給すべく機能することを特徴とする論理装置。
  6. 【請求項6】 請求項3において、前記制御出力信号が
    複数個の読取りイネーブル信号を供給すべく機能し、前
    記複数個の読取りイネーブル信号の各々は前記格納装置
    の一つと関連していることを特徴とする論理装置。
  7. 【請求項7】 請求項3において、前記制御出力信号が
    複数個の書込みイネーブル信号を供給すべく機能し、前
    記複数個の書込みイネーブル信号の各々が前記格納装置
    の一つと関連していることを特徴とする論理装置。
  8. 【請求項8】 請求項4において、前記制御論理アレイ
    からの前記制御出力信号の一つが、前記読取りイネーブ
    ル信号を供給するために、一つ又はそれ以上の読取りイ
    ネーブルゲート動作信号によってマスクされることを特
    徴とする論理装置。
  9. 【請求項9】 請求項6において、前記制御論理アレイ
    からの前記制御出力信号が、前記読取りイネーブル信号
    を供給するために一つ又はそれ以上の読取りイネーブル
    ゲート動作信号によってマスクされることを特徴とする
    論理装置。
  10. 【請求項10】 請求項5において、前記制御論理アレ
    イからの前記制御出力信号の一つが、前記書込みイネー
    ブル信号を供給するために一つ又はそれ以上の書込みイ
    ネーブルゲート動作信号によってマスクされることを特
    徴とする論理装置。
  11. 【請求項11】 請求項7において、前記制御論理アレ
    イからの前記制御出力信号が、前記書込みイネーブル信
    号を供給するために、一つ又はそれ以上の書込みイネー
    ブルゲート動作信号によってマスクされることを特徴と
    する論理装置。
  12. 【請求項12】 請求項4において、更に、前記論理ア
    レイから制御出力信号を受取るための1個又はそれ以上
    のデータ入力リードと、読取りイネーブル信号を供給す
    るためのデータ出力リードと、前記読取りイネーブル信
    号を供給するために読取りイネーブルクロック信号を受
    取るための1個又はそれ以上の読取りイネーブルクロッ
    クリードを持った読取りイネーブル格納装置が設けられ
    ていることを特徴とする論理装置。
  13. 【請求項13】 請求項5において、更に、前記論理ア
    レイからの制御出力信号を受取るための1個又はそれ以
    上のデータ入力リードと、書込みイネーブル信号を供給
    するためのデータ出力リードと、前記書込みイネーブル
    信号を供給するための書込みイネーブルクロック信号を
    受取るための1個又はそれ以上の書込みイネーブルクロ
    ックリードを持った書込みイネーブル格納装置が設けら
    れていることを特徴とする論理装置。
  14. 【請求項14】 請求項1において、更に、イネーブル
    論理アレイが設けられており、前記イネーブル論理アレ
    イは、Lを正整数としてL個のイネーブル入力信号を受
    取るためのL個のイネーブル入力リードと、前記論理ア
    レイからの前記J個の制御出力信号を受取るための手段
    と、前記L個のイネーブル入力信号及び前記J個の制御
    出力信号に応答して前記データ手段へK個のイネーブル
    された制御信号を供給する手段とを有することを特徴と
    する論理装置。
  15. 【請求項15】 請求項1において、前記データ手段が
    1個又はそれ以上の論理/格納要素を有しており、前記
    各論理/格納要素が、前記P個のデータ入力リードの関
    連するものへ結合された1個又はそれ以上のデータ入力
    リードと、前記Q個のデータ出力リードの関連するもの
    へ結合された1個又はそれ以上のデータ出力リードと、
    1個又はそれ以上の直列データ又は制御入力リードと、
    1個又はそれ以上の直列データ又はステータス出力リー
    ドとを有することを特徴とする論理装置。
  16. 【請求項16】 請求項15において、前記論理/格納
    要素の隣接するもののうちの前記直列データ又は制御入
    力リード及び前記直列データ又はステータス出力リード
    のうちの少なくとも一つがカスケード結合されているこ
    とを特徴とする論理装置。
  17. 【請求項17】 請求項15において、前記論理/格納
    要素が、バッファ、レジスタ、組合わせ論理、レジスタ
    型論理、演算機能、マルチプレクサ、デマルチプレクサ
    及びトライステート制御からなる一群の機能から選択さ
    れた機能を実施することが可能であることを特徴とする
    論理装置。
  18. 【請求項18】 請求項1において、前記データ手段
    が、1個又はそれ以上のレジスタを具備するレジスタフ
    ァイルを有しており、前記各レジスタは、前記P個のデ
    ータ入力リードの関連するものへ結合された1個又はそ
    れ以上の入力リードと、前記Q個のデータ出力リードの
    関連するものへ結合された1個又はそれ以上の出力リー
    ドと、前記J個の制御出力信号のうちの一つ又はそれ以
    上を受取るための手段とを有することを特徴とする論理
    装置。
  19. 【請求項19】 請求項18において、前記1個又はそ
    れ以上の入力リードがR個の入力ポートとして構成され
    ており、尚Rは正整数であり、且つ前記1個又はそれ以
    上の出力リードがS個の出力ポートとして構成されてお
    り、尚Sは正整数であってRと等しいものであることが
    必要とされることのないことを特徴とする論理装置。
  20. 【請求項20】 請求項18において、前記レジスタ
    が、トランスペアレント又はエッジトリガ型レジスタを
    有することを特徴とする論理装置。
JP3154169A 1990-04-05 1991-04-05 プログラム可能制御、デコード及び/又はデータ操作を有するレジスタファイル Pending JPH0730407A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/504,967 US5055712A (en) 1990-04-05 1990-04-05 Register file with programmable control, decode and/or data manipulation
US504967 1990-04-05

Publications (1)

Publication Number Publication Date
JPH0730407A true JPH0730407A (ja) 1995-01-31

Family

ID=24008467

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3154169A Pending JPH0730407A (ja) 1990-04-05 1991-04-05 プログラム可能制御、デコード及び/又はデータ操作を有するレジスタファイル

Country Status (3)

Country Link
US (1) US5055712A (ja)
EP (1) EP0450616A3 (ja)
JP (1) JPH0730407A (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR930004033B1 (ko) * 1990-08-09 1993-05-19 현대전자산업 주식회사 프로그래머블 로직소자의 입력/출력 마크로셀
US5250859A (en) * 1991-09-27 1993-10-05 Kaplinsky Cecil H Low power multifunction logic array
US5719889A (en) * 1995-12-20 1998-02-17 International Business Machines Corporation Programmable parity checking and comparison circuit
US6150836A (en) * 1997-06-13 2000-11-21 Malleable Technologies, Inc. Multilevel logic field programmable device
US6006321A (en) 1997-06-13 1999-12-21 Malleable Technologies, Inc. Programmable logic datapath that may be used in a field programmable device
US6654870B1 (en) * 1999-06-21 2003-11-25 Pts Corporation Methods and apparatus for establishing port priority functions in a VLIW processor
US6438569B1 (en) 1999-09-20 2002-08-20 Pmc-Sierra, Inc. Sums of production datapath

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3569685A (en) * 1968-07-11 1971-03-09 Fairchild Camera Instr Co Precision controlled arithmetic processing system
US3593317A (en) * 1969-12-30 1971-07-13 Ibm Partitioning logic operations in a generalized matrix system
US3849638A (en) * 1973-07-18 1974-11-19 Gen Electric Segmented associative logic circuits
US3949370A (en) * 1974-06-06 1976-04-06 National Semiconductor Corporation Programmable logic array control section for data processing system
US4034356A (en) * 1975-12-03 1977-07-05 Ibm Corporation Reconfigurable logic array
US4124899A (en) * 1977-05-23 1978-11-07 Monolithic Memories, Inc. Programmable array logic circuit
JPS6053907B2 (ja) * 1978-01-27 1985-11-27 日本電気株式会社 二項ベクトル乗算回路
US4233667A (en) * 1978-10-23 1980-11-11 International Business Machines Corporation Demand powered programmable logic array
FR2440657A1 (fr) * 1978-10-31 1980-05-30 Ibm France Perfectionnement aux reseaux logiques programmables a fonctions multiples
US4293783A (en) * 1978-11-01 1981-10-06 Massachusetts Institute Of Technology Storage/logic array
US4482953A (en) * 1980-05-30 1984-11-13 Fairchild Camera & Instrument Corporation Computer with console addressable PLA storing control microcode and microinstructions for self-test of internal registers and ALU
US4495590A (en) * 1980-12-31 1985-01-22 International Business Machines Corporation PLA With time division multiplex feature for improved density
US4422072A (en) * 1981-07-30 1983-12-20 Signetics Corporation Field programmable logic array circuit
JPS5885638A (ja) * 1981-11-17 1983-05-23 Ricoh Co Ltd プログラマブルロジツクアレイ
US4409683A (en) * 1981-11-18 1983-10-11 Burroughs Corporation Programmable multiplexer
US4660171A (en) * 1981-12-21 1987-04-21 International Business Machines Corp. Apparatus and method using a programmable logic array for decoding an operation code and providing a plurality of sequential output states
US4506173A (en) * 1982-10-25 1985-03-19 Burroughs Corporation Low power partitioned PLA
JPS6095651A (ja) * 1983-10-31 1985-05-29 Toshiba Corp 記憶装置
US4551815A (en) * 1983-12-12 1985-11-05 Aerojet-General Corporation Functionally redundant logic network architectures with logic selection means
US4742252A (en) * 1985-03-29 1988-05-03 Advanced Micro Devices, Inc. Multiple array customizable logic device
US4807183A (en) * 1985-09-27 1989-02-21 Carnegie-Mellon University Programmable interconnection chip for computer system functional modules
US4703206A (en) * 1985-11-19 1987-10-27 Signetics Corporation Field-programmable logic device with programmable foldback to control number of logic levels
US4734876A (en) * 1985-12-18 1988-03-29 Motorola, Inc. Circuit for selecting one of a plurality of exponential values to a predetermined base to provide a maximum value
JPS62194540A (ja) * 1986-02-21 1987-08-27 Toshiba Corp ディジタル信号処理回路
US4675556A (en) * 1986-06-09 1987-06-23 Intel Corporation Binomially-encoded finite state machine
US4791603A (en) * 1986-07-18 1988-12-13 Honeywell Inc. Dynamically reconfigurable array logic
US4829425A (en) * 1986-10-21 1989-05-09 Intel Corporation Memory-based interagent communication mechanism
US4803622A (en) * 1987-05-07 1989-02-07 Intel Corporation Programmable I/O sequencer for use in an I/O processor
US4811296A (en) * 1987-05-15 1989-03-07 Analog Devices, Inc. Multi-port register file with flow-through of data
US4996661A (en) * 1988-10-05 1991-02-26 United Technologies Corporation Single chip complex floating point numeric processor

Also Published As

Publication number Publication date
US5055712A (en) 1991-10-08
EP0450616A3 (en) 1992-05-20
EP0450616A2 (en) 1991-10-09

Similar Documents

Publication Publication Date Title
US6066961A (en) Individually accessible macrocell
JP3626239B2 (ja) プログラマブルアレイ
US5394031A (en) Apparatus and method to improve programming speed of field programmable gate arrays
US7843215B2 (en) Reconfigurable array to compute digital algorithms
US5646544A (en) System and method for dynamically reconfiguring a programmable gate array
JP3471088B2 (ja) 改良されたプログラマブル論理セルアレイアーキテクチャ
US6618698B1 (en) Clustered processors in an emulation engine
US5670904A (en) Programmable digital delay unit
JP3325657B2 (ja) 集積回路
US7088134B1 (en) Programmable logic device with flexible memory allocation and routing
EP0379071B1 (en) Multiple page programmable logic architecture
US20050218929A1 (en) Field programmable gate array logic cell and its derivatives
JP3325662B2 (ja) 集積回路
EP1010250A1 (en) Function block architecture for gate array
US7193436B2 (en) Fast processing path using field programmable gate array logic units
US10855285B2 (en) Field programmable transistor arrays
US20080074142A1 (en) Routing for Microprocessor Busses
Konishi et al. PCA-1: A fully asynchronous, self-reconfigurable LSI
EP1012700B1 (en) Multiple parallel identical finite state machines which share combinatorial logic
JPH0730407A (ja) プログラム可能制御、デコード及び/又はデータ操作を有するレジスタファイル
US5021689A (en) Multiple page programmable logic architecture
US6185126B1 (en) Self-initializing RAM-based programmable device
US6115294A (en) Method and apparatus for multi-bit register cell
US11362662B2 (en) Field programmable transistor arrays
US7616628B2 (en) Switched processor datapath