JP2001504657A - シフトレジスタとして倍加するルックアップテーブル - Google Patents

シフトレジスタとして倍加するルックアップテーブル

Info

Publication number
JP2001504657A
JP2001504657A JP52361298A JP52361298A JP2001504657A JP 2001504657 A JP2001504657 A JP 2001504657A JP 52361298 A JP52361298 A JP 52361298A JP 52361298 A JP52361298 A JP 52361298A JP 2001504657 A JP2001504657 A JP 2001504657A
Authority
JP
Japan
Prior art keywords
memory cell
logic element
logic
input terminal
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP52361298A
Other languages
English (en)
Other versions
JP3871718B2 (ja
Inventor
バウアー,トレバー・ジェイ
Original Assignee
ザイリンクス・インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ザイリンクス・インコーポレイテッド filed Critical ザイリンクス・インコーポレイテッド
Publication of JP2001504657A publication Critical patent/JP2001504657A/ja
Application granted granted Critical
Publication of JP3871718B2 publication Critical patent/JP3871718B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C19/00Digital stores in which the information is moved stepwise, e.g. shift registers
    • 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/1733Controllable logic circuits
    • H03K19/1735Controllable logic circuits by wiring, e.g. uncommitted logic arrays
    • H03K19/1736Controllable logic circuits by wiring, e.g. uncommitted logic arrays in which the wiring can be modified
    • 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/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • 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
    • 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/17748Structural details of configuration resources
    • H03K19/17768Structural details of configuration resources for security

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Logic Circuits (AREA)

Abstract

(57)【要約】 ランダムアクセスメモリ、シフトレジスタおよびルックアップテーブルのいずれか1つとして構成され得る、FPGAのための論理素子が提供される。論理素子は、各セル(790i)のデータ出力が次のメモリセル(790i+1)への入力となり得るように相互接続される複数のメモリセル(7901…7904)を含む。したがって、論理素子はシフトレジスタとして効果的に機能する。任意の長さのシフトレジスタが、ルックアップテーブルのいずれかのメモリセル(790i)の出力(必ずしも最後のメモリセル(790i)の出力でない)を選択するためにルックアップテーブルアドレスマルチプレクサ(200)を用い、複数の論理素子のルックアップテーブルを直列に連鎖させることによって作られ得る。

Description

【発明の詳細な説明】 シフトレジスタとして倍加するルックアップテーブル発明の分野 この発明は集積回路の論理回路における再プログラム可能な論理機能をカスタ ム化する手段および方法に関する。発明の背景 この出願の譲受人であるXilinx,Inc.は複雑化し続けるFPGAを製造してい る。引用によりここに援用される、元の米国特許第4,870,302号の再発 行である米国再発行特許第34,363号において、Freemanは最初のFPGA を説明している。FPGAは、複数のプログラマブル入力/出力パッドと、複数 の構成可能な論理素子と、複数の論理素子とパッドとを相互接続するためのプロ グラマブル相互接続とを含む集積回路チップである。各論理素子は、論理素子が いかに構成されているかに従って論理素子へのn個の入力の論理関数を実現する 。論理関数は論理素子へのn個の入力全部を用いてもよく、そのサブセットのみ を用いてもよい。論理素子が実現のために構成され得る可能な論理関数のうちの いくつかは、AND、OR、XOR、NAND、NOR、XNOR、およびこれ らの関数の組合せである。 論理素子の1つの開示された実現例には、論理素子の内部にあり、2n個の個 々のメモリセルを含む構成可能なルックアップテーブルが含まれる。構成時に、 このアーキテクチャでは、ビットストリームが所望の関数を有するルックアップ テーブルの個々のメモリセルを、所望の関数の真理値表を個々のメモリセルに書 込むことによってプログラムする。プログラミングは直列に行なわれるものとし て説明されるが、並列プログラミングのための他の技術も公知である。 ルックアップテーブルにおいて用いるのに適したあるメモリセルアーキテクチ ャが図1に示され、引用によりここに援用される米国特許第4,821,233 号においてHsiehにより説明される。このアーキテクチャのメモリセルは書込ま れるべき値をデータ入力線「Data」上のメモリセルに与え、対応のアドレス 線「ADDR」をストローブすることによってプログラムされる。さらに、この アーキテクチャは5つのトランジスタを用いるが、他の公知の構成、たとえば6 トランジスタのスタティックメモリセルもルックアップテーブルのメモリセルを 実現するために適切な選択である。図1に示すように、インバータ726がメモ リセル700の駆動を高めるために含まれ得る。 構成後、ルックアップテーブルを用いるために、構成された論理素子の入力線 がルックアップテーブルにおける対応のメモリセルを選択するアドレス線として 作用する。たとえば、2入力NANDゲートを実現するよう構成された論理素子 は、現入力対{00、01、10、11}に対応する4つのメモリセルの1つに 含まれる対応の値{1、1、1または0}を出力するであろう。 この選択は、入力線の論理レベルに基づいてルックアップテーブルからメモリ セルを選択する復号化マルチプレクサによって行なわれる。16個のメモリセル 7001から70016と復号化マルチプレクサ200とからなる例示的な4入力 ルックアップテーブルのブロック図を図2に示す。マルチプレクサは、4つの入 力信号F0−F3によって選択されるように、ルックアップテーブルのメモリセ ル7001−70016の1つに記憶される値をルックアップテーブルの出力Xに 伝搬する。 図3はルックアップテーブルの別の実施例の概略図である。この実現例では、 ルックアップテーブルは、4つのメモリセル7001−7004と、2つの入力信 号F0およびF1を有する2入力復号化マルチプレクサ200とを用いて実現さ れる。2入力復号化マルチプレクサ200は、選択されたメモリセルに記憶され ている値を論理素子の出力Xに伝搬するパストランジスタの階層によって実現さ れるものとして詳細に説明される。図3では、メモリセルは図1に示すように実 現され得る。 上のアーキテクチャはルックアップテーブルの機能性を高めるために後に増強 された。引用によりここに援用されるFreeman他の米国特許第5,343,40 6号は、論理回路の構成後に読出および書込され得るランダムアクセスメモリ( RAM)としてルックアップテーブルが作用することを付加的な回路がいかに可 能にできるかを説明する。ユーザにデータをメモリセルに書込ませる選択が有効 である場合、ユーザのデータをこれらのメモリセルに入力し、メモリセルから 読出すための方策がなければならない。この性能は、各二重機能メモリセルにア クセスするための2つの手段、すなわち、チップからの構成ビットストリームを 供給するために用いられるものと、FPGAの相互接続線から送られる信号を記 憶するために動作中に用いられるものとを含めることによって与えられる。図4 は、メモリセル750が構成中および構成後にプログラムされることを可能とす る、米国特許第5,343,406号に説明されるメモリセルアーキテクチャを 示す。構成中、メモリセル750は図1のメモリセルをプログラムするためのも のと同じプロセスを用いてプログラムされる。 構成後、メモリセル750は異なるようにプログラムされる。メモリセル75 0に書込まれるべき値はFPGAの相互接続構造を介して第2のデータ線705 に与えられ、次にメモリセルのための対応の書込−ストローブ線WSがパルス化 される。このパルスは線705上の値をメモリセル750へとラッチする。図1 からの一連のメモリセルを用いる図2のルックアップテーブルのように、図4か らの一連のメモリセルはルックアップテーブルへと組合せ可能である。 図5は同期書込能力を有する4入力ルックアップテーブルを示すブロック図で ある。クロック信号CKを受取り、イネーブル信号WEを書込み、単一の書込ス トローブ信号WSをルックアップテーブルのために作る書込ストローブ発生器5 04がある。値を所望のメモリセル、たとえば7505に書込むためには、その 値が線Din上に与えられ、所望のメモリセル7505のアドレスがデマルチプレ クサ500の入力線F0−F3に与えられる。この値は次に書込ストローブをパ ルス化することによって所望のメモリセル7505へとラッチされる。逆に、異 なる所望のメモリセル7503に記憶されている値を読出すためには、メモリセ ル7503のアドレスが図2および図3を参照して説明されたように(書込スト ローブをパルス化せずに)復号化マルチプレクサ200の入力線F0−F3に与 えられる。 図6は同期書込能力を有する2入力ルックアップテーブルの概略図である。図 6は4つのメモリセル7501から7504を含む。デマルチプレクサ500およ びマルチプレクサ200の詳細が図6に示される。 他の論理アレイ装置の実現例および動作は、Xilinx,Inc.,2100 Logic Drive,San Jose,California 95124から入手可能な「プログラマブル論理 データブック」(“The Programmable Logic Data Book”)、第4−1頁から第 4−374頁、著作権1996年Xilinxに説明される。「プログラマブル論理デ ータブック」の内容のこの部分は引用によりここに援用される。発明の概要 この発明は、論理素子がシフトレジスタおよび組合せ論理関数の任意の1つを ルックアップテーブルを用いて実現できるように、構成可能な論理素子をプログ ラムするための手段および方法を提供する。ある実施例では、この発明はこの同 じ論理素子におけるランダムアクセスメモリの実現にさらに備える。ルックアッ プテーブルは、第1のメモリセルの出力が同じルックアップテーブルの第2のメ モリセルの入力として構成可能であるように直列に接続される複数のメモリセル を含む。さらに、複数の論理素子のシフトレジスタを直列に接続することによっ て、より小さいシフトレジスタからより大きいシフトレジスタを作ることができ る。これまでのアーキテクチャは直列に接続されたn個のフリップフロップから nビットのシフトレジスタを作るものであり、それによって、得られる性能は平 凡でありながら相互配線資源および論理が浪費される。 あるモードでは、ルックアップテーブル値を記憶するメモリセルがシフトチェ ーンにおけるレジスタとして用いられる。論理素子がシフトレジスタモードであ るとき、データイン値が第1のセルへとシフトされ、各メモリセルにおける値が 次のセルにシフトされる。論理素子がランダムアクセスメモリモードであるとき 、データイン値は上述のようにF3−F0によってアドレス指定されるセルに書 込まれる。論理素子が純粋なルックアップテーブルモードであるとき、構成後に は値を書込むことができず、論理素子は構成中にロードされた関数を発生し続け る。図面の簡単な説明 図1は、メモリセルの値が構成中に記憶される、FPGA内のルックアップテ ーブルにおいて用いられる第1の先行技術のメモリセルアーキテクチャの概略図 である。 図2は、16対1復号化マルチプレクサと一連の16個のメモリセルとによっ て実現される先行技術のプログラマブル4入力ルックアップテーブルのブロック 図である。 図3は、パスゲートの階層によって実現される先行技術の2入力ルックアップ テーブルおよび復号化マルチプレクサの拡大概略図である。 図4は、メモリセルの値が構成時に記憶され、構成後に動的に読出可能および 書込可能であり続ける、ルックアップテーブルにおいて用いられる第2の先行技 術のメモリセルアーキテクチャの概略図である。 図5は、16×1ランダムアクセスメモリまたは4入力ルックアップテーブル のいずれかを実現するよう構成可能な先行技術の論理素子のブロック図である。 図6は、4ビットランダムアクセスメモリまたは2入力ルックアップテーブル のいずれかを実現するよう構成可能な先行技術の論理素子の概略図である。 図7は、シフトレジスタまたはルックアップテーブルとして代替的に構成され 得る、この発明に従うメモリセルアーキテクチャの概略図である。 図7Aおよび図7Bは、Phi2がアサートされるときにビット値を先行する メモリセルから現メモリセルへとシフトさせる非重複信号Phi1およびPhi 2を示す波形図である。 図8は、4入力ルックアップテーブルまたは16ビットシフトレジスタのいず れかを実現できる、この発明に従う論理素子のブロック図である。 図9は、2入力ルックアップテーブルまたは4ビットシフトレジスタのいずれ かを実現できる、この発明に従う論理素子の回路図であって、論理素子のモード は制御論理の動作を制御し、構成メモリに記憶され得る。 図10は、ルックアップテーブル、シフトレジスタまたはRAMの任意のもの を実現するためのメモリセルの概略図である。 図11は、4入力ルックアップテーブル、16ビットシフトレジスタおよび1 6ビットランダムアクセスメモリの任意のものを実現するよう構成可能な論理素 子のブロック図である。 図12は、2入力ルックアップテーブル、4ビットシフトレジスタおよび4ビ ットランダムアクセスメモリの任意のものを実現するよう構成可能な、この発明 に従う論理素子の概略図である。 図13A−図13Hからなる図13は、シフトレジスタモードで構成されたと きの論理素子の動作の波形図を示す。 図14は、シフトレジスタおよびフリップフロップの両方を含む論理素子のブ ロック図である。 図15は、FPGAのブロック図である。 詳細な説明 論理ゲート密度の増加により、シフトレジスタは今やユーザによって構成可能 なより大きい集積回路論理アレイの1素子として実現可能である。この発明の第 1の実施例では、論理素子はnビットシフトレジスタおよび(log2n)入力 ルックアップテーブルの両方を実現するよう構成可能である。図7はこの発明に 従う論理素子アーキテクチャのメモリセル7702の概略図を示し、このアーキ テクチャは、シフトレジスタモードに構成されると、有利なことに値を先行する メモリセル7701からメモリセル7702へとシフトできるようにする。メモリ セル7702はパストランジスタ706を含む。構成値は、構成値をデータ線7 04に与えながらトランジスタ706の構成制御線702をパルス化することに よってメモリセル7702へと書込まれる。 メモリセル7702の出力は、パストランジスタ7202、インバータ7262 、および図7には示されない次のパストランジスタ7083によって次のメモリ セル7703の入力にプログラム可能に接続される。図7Aおよび図7Bのタイ ミング図で示すように、各サイクルのほとんどの間、出力制御線724上のクロ ック信号Phi1はハイであり続け、したがってメモリセル7702の出力信号 7342は、インバータ7262を介して、次のメモリセル7703につながるシ フト入力線7142に与えられる。Phi1が時刻t1でローになるとパストラ ンジスタ7202はターンオフされる。インバータ7262はメモリセル7702 によってこれまでにアサートされた論理レベルを出力信号として保持することを 短期間にわたって続ける。このように、トランジスタ7202およびインバータ 7262の組合せが一時的なラッチとなる。第2のクロック信号Phi2が時刻 t 2で入力制御線716上にアサートされると、インバータ701はメモリセル7 702のインバータ703の出力と前のメモリセル7701のインバータ7261 の出力との両方を受ける。各インバータ726は値が隣接するメモリセル間をシ フトされ得るようにインバータ703のパワーを上まわるように設計される。し たがって、メモリセル7702に記憶されている現在の値が前のメモリセル77 01の出力によって重ね書きされる。Phi2が時刻t3でローに戻ると、メモ リセル7702は再びラッチされ、その現在の値をシフト入力線7141における 変化と無関係に保持する。時刻t4で、Phi1がハイとなり、したがって、新 しい値をインバータ7262に与える。このように、1クロックサイクルでビッ トが1セルをシフトさせる。対照的に、Phi1およびPhi2が誤って重複す れば、各メモリセル770の出力734の値が先行するメモリセル7701から メモリセル7702を介して次のメモリセル7703に伝搬するであろう。これに よって望ましい単一ビットシフトが起こらないであろう。しかしながら、図7A および図7Bに示すように重複しない2位相のクロックを用いることによって、 メモリセルはPhi1およびPhi2の1サイクルにつき1ビットをシフトさせ る。 図8はこの発明の第1の実施例に従う16ビットシフトレジスタおよび4入力 ルックアップテーブルを実現する論理素子を示す。簡略化のため、図8において は図7のメモリセル770内の構造が明確には描かれていない。 図8では、シフトレジスタモードにあると、メモリの第1のメモリセル7701 が初期値でプログラムされる。メモリセルの値は、第1のメモリセル7701の Din端子に新しい値を与え、クロック線CKをストローブすることによって新 しい値を重ね書きされ得る。CKのストロービングは次に図7Aおよび図7Bの 2位相クロックサイクルにたよる。データが同期してシフトレジスタ内で左から 右へと、すなわち、最初のメモリセル7001から最後のメモリセル70016ま で移動させられるにつれ、論理素子は各クロックサイクルでごとに関数が変化す るがルックアップテーブルとして作用し続けることができる。先行技術のルック アップテーブルにおけるように、復号化マルチプレクサ200はユーザ入力、す なわち、F0−F3によって選択されるメモリセルの内容を出力線X上に出力す る。 図9は2入力ルックアップテーブルまたは4ビットシフトレジスタを実現する ための構造を示し、マルチプレクサ200およびメモリセル7701から7704 の内部構造を示す。図9は紙面上で図8と同じ方向に向けられ、こうしてルック アップテーブル/シフトレジスタ実施例を構成する素子間の関係を理解するのに 役立つ。 この発明の第2の実施例では、論理素子がnビットシフトレジスタ、nビット ランダムアクセスメモリおよび(log2n)入力ルックアップテーブルを実現 するよう構成可能である。図10−12はこの実施例を示す。図10はメモリセ ルを示す。図10のメモリセルは3つの異なるソースからロードされ得る。構成 中、メモリセル7902は、構成データを線704に与え、トランジスタ706 の制御線702をストローブすることによってロードされる。メモリセル7902 はシフトレジスタモードにあると上述のようにトランジスタ708を介してロ ードされる。メモリセル7902はRAMモードにあると線7052上のデマルチ プレクサ500を介してロードされる。書込ストローブ線WSはパルス化され、 トランジスタ707をターンオンし、こうしてデータ信号をノード730に与え る。 図11は、この発明の第2の実施例に従う、16ビットシフトレジスタ、16 ビットランダムアクセスメモリおよび4入力ルックアップテーブルの任意の1つ を実現する論理素子を示す。この実施例では、ルックアップテーブルのメモリセ ル、たとえば7905が上述のように構成中に初期値でプログラムされる。その 後、初期値は論理素子のモードであるシフトまたはRAMに依存して2つの方法 のいずれかで交換され得る。 メモリセル790を含むルックアップテーブルがRAMモードで用いられてい ると、各メモリセル790はそのデータ入力をRAM入力線705で受ける。い ずれかのメモリセル790に書込むため、書込ストローブ線WSがパルス化し、 それによってDinの値をデマルチプレクサ500を介してアドレス指定された メモリセルへと入力線730により与える。 これらのモードの各々における論理素子の動作は制御論理1000によって制 御される。論理素子がRAMモード、シフトモードまたはそれ以外であることを 特定する制御ビットが制御論理ユニット1000に入力される。制御論理ユニッ ト1000はまたユーザクロック信号および書込イネーブル信号を受ける。これ らの入力から、制御論理ユニット1000はPhi1、Phi2および書込スト ローブ信号WSを出力して、メモリセル間でデータをシフトさせるか、特定のメ モリセルに書込を行なうか、またはメモリセルデータに手をつけないでおく。図 8におけるようにシフトレジスタモードにあると、データは同期してシフトレジ スタ内の左から右に、すなわち、最初のメモリセル7901から最後のメモリセ ル79016へと上述のように、CKがストローブされるときの2位相クロックサ イクルにたよることによって移動される。他方、論理素子がランダムアクセスメ モリ(RAM)として構成されると、アドレス線F0−F3は、それぞれデマル チプレクサ500および復号化マルチプレクサ200を用いることによって、書 込および読出されるべきメモリセル(7901から79016)の1つを選択する 。シフトレジスタモードにあると、最初のメモリセル7901は線Dinに与え られた信号をその入力として受ける。RAMモードにあると、メモリセル7901 はデマルチプレクサ500から線7051上の入力信号をで受ける。 RAMモードでは、所与のメモリセル、たとえば7005に書込むためには書 込イネーブル線WEが活性状態でなければならない。ユーザクロック信号CKが 活性状態のWE信号と関連してアサートされると、制御論理ユニット1000が 書込ストローブWSを発生する。書込ストローブWSがハイであると、デマルチ プレクサ500のアドレス線F0−F3によってアドレス指定されたメモリセル 7005がデータ入力線Dinから値を受ける。この値はメモリセル7005の前 の内容に重ね書きする。他のどのメモリセルもDinに与えられた値を受けない 。なぜなら、それらはアドレス指定されておらず、したがってデマルチプレクサ 500からの高インピーダンス接続によってDinから分離されているためであ る。 図12はこの発明の第2の実施例に従う論理素子をより詳細に示す概略図であ る。集合的に、デマルチプレクサ550、復号化マルチプレクサ200、パスト ランジスタ708および720、インバータ726、ならびにRAMモードパス トランジスタ707が相互接続ネットワークを形成し、メモリセル(7901か ら7904)および制御論理ユニット1000と組合せられて第2の実施例に従 う論理素子を実現する。第2の実施例の論理素子がシフトレジスタとして構成さ れなければ、論理素子はランダムアクセスメモリまたはルックアップテーブルと して作用する。いずれかの非シフトレジスタモードでは、Phi2はローレベル に保たれてパストランジスタ708を不活性化し、それによってあるメモリセル 790iからのデータが次のメモリセル790i+1に影響を及ぼさないようにする 。また、非シフトレジスタモードでは、Phi1がハイ論理レベルに保たれ、そ れによってメモリセル(7901から7904)の出力を復号化マルチプレクサ2 00に与える。これまでどおり、論理素子の出力はユーザ入力F0およびF1に 従って復号化マルチプレクサ200により選択される。 図12の論理素子がシフトレジスタとして構成されると、RAMモードパスト ランジスタ707はターンオフされる。なぜなら、WSがローに保持され、メモ リセルをデマルチプレクサ500の出力から分離するためである。メモリセル7 901はDinにトランジスタ7081を介してプログラム可能に接続される。値 をシフトさせるために、制御論理ユニット1000は制御信号Phi1およびP hi2を生成し、これのトリガは、書込イネーブル信号が活性状態である間に、 制御論理ユニット1000に与えられるユーザクロック信号CKの立上がり端縁 によって、値があるメモリセルから次のメモリセルに、すなわち、メモリセル7 90i-1からメモリセル790iに、またメモリセル790iからメモリセル79 0i+1にシフトされるように行われる。制御論理ユニット100がユーザクロッ ク信号の立上がり端縁を受けると、制御論理ユニット100は初めにPhi1を ローにし、次にPhi2をメモリセル(7901から7904)の内容を重ね書き するのに十分であるほど長くパルス化し、最後にPhi2が立下がった後にPh i1を再びアサートする。極めて低いクロック周波数のためにはPhi2がパル スだけであることが重要であり、これはPhi2がオンである間はPhi1がオ フでなければならないからである。これを達成するために、制御論理は、Phi 1およびPhi2がユーザクロック信号1008の立下がり端縁に頼らず、独自 に時間を定められるように設計される。 図13A−図13Hからなる図13は図12の論理素子の動作の波形図である 。 図12の論理素子がシフトレジスタモードに構成されると、F1を1に、またF 0を0に設定することによってこれは3ビットシフトレジスタとして機能する。 図13Eに示すように、3ビットシフトレジスタへの入力Dinががこの例の間 中ハイ論理レベルに連続して保たれる。最初のユーザクロックパルス1108の 立上がり端縁1104を受けると、制御論理ユニット1000は図13Gに示す ようにPhi1をロー論理レベルに引下げてパストランジスタ720(図12) を不活性化する。メモリセル(7901から7904)の出力7341から7344 をインバータ7261から7264の入力から一時的に切り離させた後、制御論理 ユニット1000はPhi2をアサートし、これはインバータ7261から72 64の出力をその対応の次のメモリセル、すなわち、メモリセル7902から79 04に伝搬する。Phi2がアサートされると、Din上の値が最初のメモリセ ル7901に書込まれる。非重複Phi2パルスは図13Fに示すとおりである 。図13Dに示すように、(7341に対応する)最初のメモリセル7901に記 憶された値がPhi2のアサートのすぐ後に変化する。この変化は参照番号11 12によって示される。最初のメモリセル7901の出力7341の新しい値はP hilが一時的に不活性化されるために(7342に対応する)2番目のメモリ セル7902に影響を与えない。メモリセル(7901から7904)がその新し い状態に達するのに十分であるほど長くPhi2をアサートした後、Phi2は 立下げられ、それによってデータ値がラッチされる。Phi2が立下げられた後 にのみ制御論理ユニット1000がPhi1を立上げる。 Phi1の立上がり端縁を受けると、出力7341から7344の値は再びパス トランジスタ7201から7204を通過する。参照番号1116は、3ビットシ フトレジスタの出力Xにおける変化がPhi1の立上がり端縁と同期しているこ とを示す。図13Gおよび図13Hに示すように、Phi1の再アサートとユー ザクロックの立下げとは無関係であり、したがって、論理設計者はこれら2つの 端縁間の正確なタイミングの関係に依存する必要はない。もちろん、Phi1は インバータ7261から7264の入力が無効な電圧に浮動するまでに再アサート されなければならない。 図14は論理素子1200およびフリップフロップ1204の両方を含む論理 素子のブロック図である。フリップフロップの目的は論理素子1200の出力の クロックから出力までの遅延を向上させることである。これは、関数発生器がXi linxの論理素子ではフリップフロップと伝統的に対にされてきたのでXilinxのF PGAでは簡単で効率的である。さらに、nビットの同期シフトレジスタが必要 とされる場合、論理素子は、シフトレジスタ1200が(n−1)ビットシフト レジスタであり、かつフリップフロップ1204がnビットシフトレジスタの最 後のレジスタであるように構成され得る。この代替的な態様で構成されると、最 終ビットのXQはPhi1の立上がり端縁1116ではなくユーザクロックパル ス1108の立上がり端縁1104で有効である。これは全体のnビットシフイ トレジスタのためにより速いクロックから出力までの時間を与える。 XQをDinに戻すように論理素子を構成することによって、この発明は循環 シフトを行なうこともできる。 上述のように(図13A−13H)、ルックアップテーブルにおけるメモリセ ル数よりも少ない段を有するシフトレジスタが最終ビット以外のビットを出力端 子Xに向けることによって形成され得る。ルックアップテーブルも同様に、単一 のルックアップテーブルが支えるよりも大きいサイズのシフトレジスタを生むた めに縦続接続され得る。たとえば、2つの論理素子を縦続接続することによって 16ビットルックアップテーブルからなる論理アレイにおいて20ビットシフト レジスタを生じることが可能である。第1の完全な16ビットシフトレジスタ1 200と第2の完全な16ビットシフトレジスタ1200とが組合わさって32 ビットシフトレジスタを生む。このように、20ビットシフトレジスタを得るた めには、第1の論理素子のユーザ入力線F0−F3は1111に設定され、第2 の論理素子のユーザ入力線F0−F3は0011に設定され、すなわち、第2の 16ビットシフトレジスタ1200は、20ビットシフトレジスタの最後の出力 である、第4のメモリセル7904出力を渡すようにプログラムされる。さらに 、縦続接続されたシフトレジスタのクロックから出力までの遅延を向上させるた めに、代替的な実施例は1111にアドレス指定された第1の完全な16ビット シフトレジスタ1200と、0010にアドレス指定された第2の完全な16ビ ットシフトレジスタ1200と、フリップフロップ1204とを用いる。第2の シ フトレジスタの出力Xは第2のシフトレジスタのフリップフロップ1204の入 力を与える。望ましければ、フリップフロップ1204は論理素子内でシフトさ れ得る数ビットを拡大させるために用いられてもよい。両方の16ビットシフト レジスタ1200とそれらのフリップフロップ1204を十分に利用することに よって、17ビット、34ビット、51ビット等の縦続接続されたシフトレジス タが構成可能である。 新規なシフトレジスタ論理素子は一般に、各々相互接続構造および論理素子の 一部を含む論理ブロック101を有する図15のFPGAのようなFPGAにお いて実現される。図15のFPGAについては、引用によりここに援用されるTa vana他の出願連続番号第08/618,445号においてさらに説明される。 図7および図10はラッチのわずか1つのノードから制御されるメモリセルを 示すが、この発明は、いくつかの制御信号が反転されてラッチの両方のノードに 与えられるか、異なる制御信号がラッチの異なるノードに与えられるメモリセル でも用いられ得る。さらに、図10では3つのトランジスタ706、708およ び707が線704、714および705上の入力信号を受けるマルチプレクサ として実現され得る。そしてトランジスタ706、708、707および720 は伝送ゲートによって交換され得る。特定のマルチプレクサおよびデマルチプレ クサの実現例が示されるが、この発明は他の実現例も使用可能である。もちろん 、Phi1、Phi2およびWSのような信号を発生するための種々の構造およ び方法がこの発明で用いられ得る。また、上の実施例は複数のメモリセルから1 つの信号を選択するための単一の出力端子を有する単一のマルチプレクサを示す が、他の実施例はそこから出力信号を与えるための2つ以上のメモリセルを選択 してもよい。 この発明の数多くの変更および変化が上の教示を考慮して可能である。したが って、この発明は特に上述したものと異なるように実行され得ることが添付の請 求の範囲の範疇内で理解されるべきである。
【手続補正書】 【提出日】平成11年6月8日(1999.6.8) 【補正内容】 (1) 明細書第1頁第7行の「引用によりここに援用される、」を削除する 。 (2) 明細書第1頁第24行の「引用によりここに援用される」を削除する 。 (3) 明細書第2頁第25行の「引用によりここに援用される」を削除する 。 (4) 明細書第3頁第29行から第4頁第4行までを下記のように補正する 。 記 他の論理アレイ装置の実現例および動作は、Xilinx,Inc.,2100 Logic D rive,San Jose,California 95124から入手可能な「プログラマブル論理 データブック」("The Programmable Logic Data Book")、第4−1頁から第4 −374頁、著作権1996年Xilinxに説明される。論理アレイ装置においてシ フトレジスタを設けることも公知である。米国特許第5,291,079号にお いて、Goettingは図18Aで、FPGAを構成するために構成メモリビットをF PGAのメモリセルへとシフトさせるためのシフトレジスタ構造を示す。さらに 、Kaplinskyの米国特許第4,967,107号から、1つ以上の論理エキスパン ダモジュールのための入力信号を与えるライン間の接続を制御するためにシフト レジスタを用いることも公知である。また、Freemanの米国再発行特許第34, 363号によって説明されるように、シフトレジスタを介してルックアップテー ブルのメモリセルをロードすることも公知である。特にFreemanの図5の説明を 参照されたい。 (5) 明細書第6頁第6行と第7行との間に「図16は、FPGA相互接続 構造を示す。」を挿入する。 (6) 明細書第13頁第7行から第10行までを下記のように補正する。 記 新規なシフトレジスタ論理素子は一般に、各々相互接続構造および論理素子の 一部を含む論理ブロック101を有する図15のFPGAのようなFPGAにお いて実現される。図15のFPGAについては、Tavana他の出願連続番号第08 /618,445号においてさらに説明される。図16は米国再発行特許34, 363号に例示される相互接続構造を示す。(9つの論理素子として示される) 複数の構成可能な論理素子が、論理素子と入力/出力パッドとからのリードを含 むリードのアレイと、所望の論理関数を生じるために選択されたリード間に形成 されるプログラマブル相互接続とともに、集積回路チップ上に形成される。 (7) 請求の範囲を別紙のとおり補正する。 (8) 第10図を別紙のように補正する。 (9) 第16図を別紙のように追加する。 請求の範囲 1.プログラマブル相互接続構造(図16、線および斜線)と、 前記相互接続構造によって相互接続される複数の構成可能な論理素子(図16 、40−1から40−9)とを含むFPGA(図15)であって、 前記構成可能な論理素子(図8)の少なくとも1つがシフトレジスタ(7141 が7702等に入る)およびルックアップテーブル(7141等が200に入る )の両方として動作するよう構成可能であることを特徴とする、FPGA。 2.前記少なくとも1つの前記構成可能な論理素子は、 少なくとも第1メモリセル(7701)および後続のメモリセル(7702)を 含む複数のメモリセル(図9、7701−7704)を含み、複数のメモリセルの 各々がメモリセル入力端子(7301−7304)およびメモリセル出力端子(下 のQ)を有し、さらに、 第1のメモリセル(7141)のメモリセル出力端子を後続のメモリセルの入 力端子(7302)にプログラム可能に接続するためのシフト手段(900、P HI1、7201−7204、PHI2、7081−7084、7141−7144) を含む、請求項1に記載のFPGA。 3.構成可能な論理素子データ入力端子(Din)と、 構成可能な論理素子データ出力端子(X)と、 メモリセル出力端子の選択された1つを構成可能な論理素子データ出力端子に 接続するためのマルチプレクサ(200)と、 構成可能な論理素子データ入力端子(Din)を少なくとも第1のメモリセル の入力端子(7301)に接続するための入力手段(図9、PHI2、7081) とをさらに含む、請求項2に記載のFPGA。 4.前記構成可能な論理素子の前記少なくとも1つにおいてランダムアクセスメ モリを実現するための手段(図12、WS、500、7071−7074)をさら に含む、請求項1に記載のFPGA。 5.構成可能な論理素子データ入力端子(Din)を複数のメモリセルの選択さ れた1つに選択的に結合するためのデマルチプレクサ(図12、500)をさら に含む、請求項3に記載のFPGA。 6.構成可能な論理素子がいつシフトレジスタとして構成されるかを制御するた めの制御論理(図9、900)をさらに含む、請求項1に記載のFPGA。 7.論理素子がシフトレジスタとして構成されるかどうかを前記制御論理に選択 させるための構成メモリ構造(図9、「Shift」を供給するメモリセル)を さらに含む、請求項6に記載のFPGA。 8.制御論理は、シフト手段に与えられるべき2つの非重複クロック信号(図7 A、7B)を発生するための論理を含む、請求項6に記載のFPGA。 9.シフト手段は、 第1のメモリセルから構成可能な論理素子データ入力端子を分離するための第 2のパストランジスタ(図9、7081)と、 第1のメモリセル(7701の中の箱)のメモリセル出力端子(下のQ)に選 択的に結合されるインバータ(図9、下の7201)とを含み、インバータはイ ンバータ入力端子およびインバータ出力端子を含み、さらに、 インバータ入力端子から第1のメモリセルのメモリセル出力端子を分離するた めの第3のパストランジスタ(7201)と、 インバータ出力端子から後続のメモリセルのメモリセル入力端子を分離するた めの第4のパストランジスタ(7702の上のトランジスタ7082)とを含む、 請求項6に記載のFPGA。 【図10】 【図16】

Claims (1)

  1. 【特許請求の範囲】 1.プログラマブル相互接続構造と、 複数の論理素子とを含み、前記論理素子の少なくとも1つがシフトレジスタと して構成可能である、EPGA。 2.前記少なくとも1つの論理素子は、 少なくとも第1のメモリセルと後続のメモリセルとを含む複数のメモリセルを 含み、複数のメモリセルの各々はメモリセル入力端子およびメモリセル出力端子 を有し、さらに、 第1のメモリセルのメモリセル出力端子を後続のメモリセルの入力端子にプロ グラム可能に接続するためのシフト手段を含む、請求項1に記載のFPGA。 3.論理素子データ入力端子と、 論理素子データ出力端子と、 メモリセル出力端子の選択された1つを論理素子データ出力端子に接続するた めのマルチプレクサと、 論理素子データ入力端子を少なくとも第1のメモリセルの入力端子に接続する ための入力手段とをさらに含む、請求項2に記載のFPGA。 4.FPGAにおいて、論理素子は、 少なくとも第1のメモリセルと後続のメモリセルとを含む複数のメモリセルを 含み、複数のメモリセルの各々はメモリセル入力端子およびメモリセル出力端子 を有し、さらに、 論理素子データ入力端子と、 論理素子データ出力端子と、 第1のメモリセルのメモリセル出力端子を後続のメモリセルの入力端子にプロ グラム可能に接続するためのシフト手段と、 メモリセル出力端子の選択された1つを論理素子データ出力端子に接続するた めのマルチプレクサと、 論理素子データ入力端子を少なくとも第1のメモリセルの入力端子に接続する ための入力手段とを含む、論理素子。 5.論理素子データ入力端子を複数のメモリセルの選択された1つに選択的に結 合するためのデマルチプレクサをさらに含む、請求項4に記載の論理素子。 6.FPGAにおいて、論理素子は、 複数のメモリセルを含み、複数のメモリセルの各々はメモリセル入力端子およ びメモリセル出力端子を有し、さらに、 論理素子データ入力端子と、 複数のメモリセルのメモリセル出力端子に選択的に結合される論理素子データ 出力端子と、 論理素子がシフトレジスタとして構成される場合、論理素子データ入力端子を 複数のメモリセルの第1のメモリセルに、第1のメモリセルのメモリセル出力端 子を後続のメモリセルのメモリセル入力端子に選択的に結合する相互接続ネット ワークと、 論理素子がいつシフトレジスタとして構成されるかを制御するための制御論理 とを含む、論理素子。 7.論理素子がシフトレジスタとして構成されるかどうかを前記制御論理に選択 させるための構成メモリ構造をさらに含む、請求項6に記載の論理素子。 8.制御論理は、相互接続ネットワークに与えられるべき2つの非重複クロック 信号を発生するための論理を含む、請求項6に記載の論理素子。 9.複数のメモリセルの選択された1つを論理素子データ出力端子に結合するた めの復号化マルチプレクサをさらに含む、請求項6に記載の論理素子。 10.論理素子データ入力端子を複数のメモリセルの選択された1つに選択的に 結合するためのデマルチプレクサをさらに含む、請求項6に記載の論理素子。 11.相互接続ネットワークは、 第1のメモリセルから論理素子データ入力端子を分離するための第2のパスト ランジスタと、 第1のメモリセルのメモリセル出力端子に選択的に結合されるインバータとを 含み、インバータはインバータ入力端子およびインバータ出力端子を含み、さら に、 インバータ入力端子から第1のメモリセルのメモリセル出力端子を分離するた めの第3のパストランジスタと、 インバータ出力端子から後続のメモリセルのメモリセル入力端子を分離するた めの第4のパストランジスタとを含む、請求項6に記載の論理素子。 12.相互接続ネットワークは、 論理素子データ入力端子を複数のメモリセルの選択された1つに選択的に結合 するためのデマルチプレクサと、 デマルチプレクサから論理素子データ入力端子を分離するための第1のパスト ランジスタとをさらに含む、請求項11に記載の論理素子。 13.制御論理は、論理素子がシフトレジスタとして構成される場合に複数のメ モリセル間でデータをいつシフトさせるかを制御するためのユーザクロック端子 をさらに含む、請求項6に記載の論理素子。
JP52361298A 1996-11-22 1997-06-16 シフトレジスタとして倍加するルックアップテーブル Expired - Lifetime JP3871718B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/754,421 1996-11-22
US08/754,421 US5889413A (en) 1996-11-22 1996-11-22 Lookup tables which double as shift registers
PCT/US1997/009314 WO1998023033A1 (en) 1996-11-22 1997-06-16 Lookup tables which double as shift registers

Publications (2)

Publication Number Publication Date
JP2001504657A true JP2001504657A (ja) 2001-04-03
JP3871718B2 JP3871718B2 (ja) 2007-01-24

Family

ID=25034725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP52361298A Expired - Lifetime JP3871718B2 (ja) 1996-11-22 1997-06-16 シフトレジスタとして倍加するルックアップテーブル

Country Status (5)

Country Link
US (3) US5889413A (ja)
EP (1) EP0940012B1 (ja)
JP (1) JP3871718B2 (ja)
DE (1) DE69711678T2 (ja)
WO (1) WO1998023033A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013009306A (ja) * 2011-04-29 2013-01-10 Semiconductor Energy Lab Co Ltd プログラマブルロジックデバイス

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6427156B1 (en) 1997-01-21 2002-07-30 Xilinx, Inc. Configurable logic block with AND gate for efficient multiplication in FPGAS
US5963050A (en) 1997-02-26 1999-10-05 Xilinx, Inc. Configurable logic element with fast feedback paths
US5920202A (en) * 1997-02-26 1999-07-06 Xilinx, Inc. Configurable logic element with ability to evaluate five and six input functions
US6201410B1 (en) 1997-02-26 2001-03-13 Xilinx, Inc. Wide logic gate implemented in an FPGA configurable logic element
US6396303B1 (en) 1997-02-26 2002-05-28 Xilinx, Inc. Expandable interconnect structure for FPGAS
JPH11328947A (ja) * 1998-05-18 1999-11-30 Nec Corp 大規模fifo回路
GB9900432D0 (en) * 1999-01-08 1999-02-24 Xilinx Inc Linear feedback shift register in a progammable gate array
US6191614B1 (en) * 1999-04-05 2001-02-20 Xilinx, Inc. FPGA configuration circuit including bus-based CRC register
US6426761B1 (en) * 1999-04-23 2002-07-30 Internation Business Machines Corporation Information presentation system for a graphical user interface
US6292019B1 (en) * 1999-05-07 2001-09-18 Xilinx Inc. Programmable logic device having configurable logic blocks with user-accessible input multiplexers
US6507211B1 (en) 1999-07-29 2003-01-14 Xilinx, Inc. Programmable logic device capable of preserving user data during partial or complete reconfiguration
US6499045B1 (en) 1999-10-21 2002-12-24 Xilinx, Inc. Implementation of a two-dimensional wavelet transform
US6268742B1 (en) 2000-01-12 2001-07-31 Xilinx, Inc. Tap and matched filter arrangement
US6539508B1 (en) 2000-03-15 2003-03-25 Xilinx, Inc. Methods and circuits for testing programmable logic
US6356110B1 (en) 2000-04-03 2002-03-12 Altera Corporation San Jose Ca Multifunction memory array in a programmable logic device
US6411124B2 (en) 2000-04-28 2002-06-25 Altera Corporation Programmable logic device logic modules with shift register capabilities
US6857043B1 (en) * 2000-04-28 2005-02-15 Altera Corporation Shift register implementations of first-in/first-out memories utilizing a double increment gray code counter
US6462577B1 (en) 2000-04-28 2002-10-08 Altera Corporation Configurable memory structures in a programmable logic device
US6278289B1 (en) 2000-05-01 2001-08-21 Xilinx, Inc. Content-addressable memory implemented using programmable logic
US6445209B1 (en) 2000-05-05 2002-09-03 Xilinx, Inc. FPGA lookup table with NOR gate write decoder and high speed read decoder
US6529040B1 (en) 2000-05-05 2003-03-04 Xilinx, Inc. FPGA lookup table with speed read decoder
US6373279B1 (en) 2000-05-05 2002-04-16 Xilinx, Inc. FPGA lookup table with dual ended writes for ram and shift register modes
US6791366B1 (en) * 2000-06-28 2004-09-14 Cypress Semiconductor Corp. Circuit for implementing product term inputs
US6348812B1 (en) * 2000-07-05 2002-02-19 Elan Research Dynamic programmable logic array that can be reprogrammed and a method of use
CN100589746C (zh) * 2000-07-10 2010-02-17 尤妮佳股份有限公司 清扫物品
US6724810B1 (en) 2000-11-17 2004-04-20 Xilinx, Inc. Method and apparatus for de-spreading spread spectrum signals
US6684235B1 (en) 2000-11-28 2004-01-27 Xilinx, Inc. One-dimensional wavelet system and method
EP1233517B1 (en) 2001-02-09 2012-04-18 Sicronic Remote KG, LLC A system for rapid configuration of a programmable logic device
US6646465B2 (en) 2001-02-09 2003-11-11 Stmicroelectronics Ltd. Programmable logic device including bi-directional shift register
US6384627B1 (en) 2001-02-16 2002-05-07 Xilinx, Inc. Logic block used as dynamically configurable logic function
US6388466B1 (en) * 2001-04-27 2002-05-14 Xilinx, Inc. FPGA logic element with variable-length shift register capability
US6466505B1 (en) 2001-05-02 2002-10-15 Cypress Semiconductor Corp. Flexible input structure for an embedded memory
US7051153B1 (en) 2001-05-06 2006-05-23 Altera Corporation Memory array operating as a shift register
US7038489B2 (en) 2001-06-15 2006-05-02 Stmicroelectronics Ltd. Method for sharing configuration data for high logic density on chip
US7127697B1 (en) 2001-08-07 2006-10-24 Xilinx, Inc. Methods of utilizing programmable logic devices having localized defects in application-specific products
DE60202152T2 (de) * 2001-08-07 2005-12-01 Xilinx, Inc., San Jose Anwendungsspezifische Testmethoden für programmierbare Logikbauelemente
US6664808B2 (en) 2001-08-07 2003-12-16 Xilinx, Inc. Method of using partially defective programmable logic devices
JP3879461B2 (ja) * 2001-09-05 2007-02-14 日立電線株式会社 配線基板及びその製造方法
WO2003039001A1 (en) * 2001-10-29 2003-05-08 Leopard Logic, Inc. Programmable interface for field programmable gate array cores
US6556042B1 (en) 2002-02-20 2003-04-29 Xilinx, Inc. FPGA with improved structure for implementing large multiplexers
DE10208618A1 (de) * 2002-02-27 2003-09-04 Bosch Gmbh Robert Digitale Verzögerungsleitung
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
US6970012B2 (en) * 2002-06-10 2005-11-29 Xilinx, Inc. Programmable logic device having heterogeneous programmable logic blocks
US7028281B1 (en) * 2002-07-12 2006-04-11 Lattice Semiconductor Corporation FPGA with register-intensive architecture
US7143295B1 (en) 2002-07-18 2006-11-28 Xilinx, Inc. Methods and circuits for dedicating a programmable logic device for use with specific designs
US6760899B1 (en) 2002-08-08 2004-07-06 Xilinx, Inc. Dedicated resource placement enhancement
US20050232056A1 (en) * 2002-08-29 2005-10-20 Koninklijke Philips Electronics N.V. Electronic device with data storage device
CN100561591C (zh) 2002-08-29 2009-11-18 Nxp股份有限公司 具有互连的数据存储设备的可重配置电子设备
DE60235888D1 (de) * 2002-09-12 2010-05-20 St Microelectronics Asia Pseudo- Zweidimensionaler Speicher mit wahlfreiem Zugriff
US6971083B1 (en) * 2002-11-13 2005-11-29 Altera Corporation Method for programming programmable logic device with blocks that perform multiplication and other arithmetic functions
US7093084B1 (en) 2002-12-03 2006-08-15 Altera Corporation Memory implementations of shift registers
US6924664B2 (en) * 2003-08-15 2005-08-02 Kilopass Technologies, Inc. Field programmable gate array
US8577026B2 (en) 2010-12-29 2013-11-05 Ternarylogic Llc Methods and apparatus in alternate finite field based coders and decoders
US20070098160A1 (en) * 2005-11-03 2007-05-03 Peter Lablans SCRAMBLING AND SELF-SYNCHRONIZING DESCRAMBLING METHODS FOR BINARY AND NON-BINARY DIGITAL SIGNALS NOT USING LFSRs
US20110064214A1 (en) * 2003-09-09 2011-03-17 Ternarylogic Llc Methods and Apparatus in Alternate Finite Field Based Coders and Decoders
US7216277B1 (en) 2003-11-18 2007-05-08 Xilinx, Inc. Self-repairing redundancy for memory blocks in programmable logic devices
US7119575B1 (en) * 2004-01-12 2006-10-10 Altera Corporation Logic cell with improved multiplexer, barrel shifter, and crossbarring efficiency
US7084665B1 (en) 2004-07-22 2006-08-01 Altera Corporation Distributed random access memory in a programmable logic device
US7075333B1 (en) 2004-08-24 2006-07-11 Xilinx, Inc. Programmable circuit optionally configurable as a lookup table or a wide multiplexer
US7543212B2 (en) * 2004-09-13 2009-06-02 Idaho Research Foundation, Inc. Low-density parity-check (LDPC) encoder
US7394708B1 (en) 2005-03-18 2008-07-01 Xilinx, Inc. Adjustable global tap voltage to improve memory cell yield
US7276934B1 (en) 2005-06-14 2007-10-02 Xilinx, Inc. Integrated circuit with programmable routing structure including diagonal interconnect lines
US7205790B1 (en) 2005-06-14 2007-04-17 Xilinx, Inc. Programmable integrated circuit providing efficient implementations of wide logic functions
US7218139B1 (en) 2005-06-14 2007-05-15 Xilinx, Inc. Programmable integrated circuit providing efficient implementations of arithmetic functions
US7375552B1 (en) 2005-06-14 2008-05-20 Xilinx, Inc. Programmable logic block with dedicated and selectable lookup table outputs coupled to general interconnect structure
US7804719B1 (en) 2005-06-14 2010-09-28 Xilinx, Inc. Programmable logic block having reduced output delay during RAM write processes when programmed to function in RAM mode
US7215138B1 (en) 2005-06-14 2007-05-08 Xilinx, Inc. Programmable lookup table with dual input and output terminals in shift register mode
US7202697B1 (en) 2005-06-14 2007-04-10 Xilinx, Inc. Programmable logic block having improved performance when functioning in shift register mode
US7268587B1 (en) 2005-06-14 2007-09-11 Xilinx, Inc. Programmable logic block with carry chains providing lookahead functions of different lengths
US7256612B1 (en) 2005-06-14 2007-08-14 Xilinx, Inc. Programmable logic block providing carry chain with programmable initialization values
US7253658B1 (en) 2005-06-14 2007-08-07 Xilinx, Inc. Integrated circuit providing direct access to multi-directional interconnect lines in a general interconnect structure
US7193433B1 (en) 2005-06-14 2007-03-20 Xilinx, Inc. Programmable logic block having lookup table with partial output signal driving carry multiplexer
US7265576B1 (en) 2005-06-14 2007-09-04 Xilinx, Inc. Programmable lookup table with dual input and output terminals in RAM mode
US7274214B1 (en) 2005-06-14 2007-09-25 Xilinx, Inc. Efficient tile layout for a programmable logic device
US7233168B1 (en) * 2005-06-14 2007-06-19 Xilinx, Inc. Methods of setting and resetting lookup table memory cells
US20070088997A1 (en) * 2005-09-26 2007-04-19 Peter Lablans Generation and self-synchronizing detection of sequences using addressable memories
DE102005048525A1 (de) * 2005-10-07 2007-04-12 Micronas Gmbh Schaltungsarchitektur für eine integrierte Schaltung
US8832326B1 (en) * 2005-11-01 2014-09-09 Xilinx, Inc. Circuit and method for ordering data words
US7463056B1 (en) 2005-12-12 2008-12-09 Xilinx, Inc. Writeable shift register lookup table in FPGA with SRAM memory cells in lookup table reprogrammed by writing after initial configuration
US7391236B2 (en) * 2005-12-27 2008-06-24 Altera Corporation Distributed memory in field-programmable gate array integrated circuit devices
US7378868B2 (en) * 2006-01-19 2008-05-27 Altera Corporation Modular I/O bank architecture
US7576562B1 (en) * 2006-06-19 2009-08-18 The United States Of America As Represented By The United States National Aeronautics And Space Administration Diagnosable structured logic array
US7979607B2 (en) * 2009-02-27 2011-07-12 Honeywell International Inc. Cascadable high-performance instant-fall-through synchronous first-in-first-out (FIFO) buffer
JP2010257280A (ja) 2009-04-27 2010-11-11 Renesas Electronics Corp シリアル制御装置、半導体装置及びシリアルデータの転送方法
EP3488886A1 (en) 2009-07-30 2019-05-29 Ivax International B.V. Dose counter for a metered-dose inhaler
US8081010B1 (en) 2009-11-24 2011-12-20 Ics, Llc Self restoring logic
CN103259524A (zh) * 2012-02-17 2013-08-21 京微雅格(北京)科技有限公司 一种采用快速级连结构的集成电路
US9779784B2 (en) * 2014-10-29 2017-10-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9824024B1 (en) * 2014-10-31 2017-11-21 Altera Corporation Configurable storage blocks with embedded first-in first-out and delay line circuitry
CN104681092B (zh) * 2015-02-12 2017-11-10 无锡中微亿芯有限公司 基于可编程存储单元的移位寄存器结构
EP3157171B1 (en) 2015-10-15 2020-06-03 Menta Logic block architecture for programmable gate array
EP3157172B1 (en) * 2015-10-15 2018-11-28 Menta System and method for testing and configuration of an fpga
US10074409B2 (en) 2017-01-31 2018-09-11 Intel Corporation Configurable storage blocks having simple first-in first-out enabling circuitry
US9940995B1 (en) 2017-01-31 2018-04-10 Intel Corporation Methods and apparatus for reusing lookup table random-access memory (LUTRAM) elements as configuration random-access memory (CRAM) elements
US11243880B1 (en) 2017-09-15 2022-02-08 Groq, Inc. Processor architecture
US11868804B1 (en) 2019-11-18 2024-01-09 Groq, Inc. Processor instruction dispatch configuration
US11114138B2 (en) 2017-09-15 2021-09-07 Groq, Inc. Data structures with multiple read ports
US11360934B1 (en) 2017-09-15 2022-06-14 Groq, Inc. Tensor streaming processor architecture
US11170307B1 (en) 2017-09-21 2021-11-09 Groq, Inc. Predictive model compiler for generating a statically scheduled binary with known resource constraints
US11455370B2 (en) 2018-11-19 2022-09-27 Groq, Inc. Flattened input stream generation for convolution with expanded kernel
US11165428B1 (en) * 2019-07-18 2021-11-02 Groq, Inc. Circuits and methods for updating lookup tables
US20210326284A1 (en) * 2021-06-25 2021-10-21 Intel Corporation At-speed burst sampling for user registers

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US34363A (en) * 1862-02-11 Improvement in machinery for cleaning cotton
USRE34363E (en) * 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4870302A (en) * 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4821233A (en) * 1985-09-19 1989-04-11 Xilinx, Incorporated 5-transistor memory cell with known state on power-up
US4967107A (en) * 1989-05-12 1990-10-30 Plus Logic, Inc. Programmable logic expander
US5343406A (en) * 1989-07-28 1994-08-30 Xilinx, Inc. Distributed memory architecture for a configurable logic array and method for using distributed memory
US5212652A (en) * 1989-08-15 1993-05-18 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure
US5267187A (en) * 1990-05-10 1993-11-30 Xilinx Inc Logic structure and circuit for fast carry
US5325109A (en) * 1990-12-27 1994-06-28 Calcomp Inc. Method and apparatus for manipulation of pixel data in computer graphics
JP2764360B2 (ja) * 1992-05-18 1998-06-11 三菱電機株式会社 並/直列変換回路、直/並列変換回路およびそれらを含むシステム
US5291079A (en) * 1992-07-23 1994-03-01 Xilinx, Inc. Configuration control unit for programming a field programmable gate array and reading array status
US5414377A (en) * 1992-12-21 1995-05-09 Xilinx, Inc. Logic block with look-up table for configuration and memory
US5352940A (en) * 1993-05-27 1994-10-04 Altera Corporation Ram convertible look-up table based macrocell for PLDs
US5386156A (en) * 1993-08-27 1995-01-31 At&T Corp. Programmable function unit with programmable fast ripple logic
US5349250A (en) * 1993-09-02 1994-09-20 Xilinx, Inc. Logic structure and circuit for fast carry
US5394031A (en) * 1993-12-08 1995-02-28 At&T Corp. Apparatus and method to improve programming speed of field programmable gate arrays
US5442306A (en) * 1994-09-09 1995-08-15 At&T Corp. Field programmable gate array using look-up tables, multiplexers and decoders
US5787007A (en) * 1996-01-30 1998-07-28 Xilinx, Inc. Structure and method for loading RAM data within a programmable logic device
US5694056A (en) * 1996-04-01 1997-12-02 Xilinx, Inc. Fast pipeline frame full detector

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013009306A (ja) * 2011-04-29 2013-01-10 Semiconductor Energy Lab Co Ltd プログラマブルロジックデバイス
US9165942B2 (en) 2011-04-29 2015-10-20 Semiconductor Energy Laboratory Co., Ltd. Programmable logic device

Also Published As

Publication number Publication date
JP3871718B2 (ja) 2007-01-24
EP0940012A1 (en) 1999-09-08
DE69711678D1 (de) 2002-05-08
WO1998023033A1 (en) 1998-05-28
US6118298A (en) 2000-09-12
EP0940012B1 (en) 2002-04-03
US6262597B1 (en) 2001-07-17
US5889413A (en) 1999-03-30
DE69711678T2 (de) 2002-09-26

Similar Documents

Publication Publication Date Title
JP2001504657A (ja) シフトレジスタとして倍加するルックアップテーブル
US6288568B1 (en) FPGA architecture with deep look-up table RAMs
US6323682B1 (en) FPGA architecture with wide function multiplexers
US6297665B1 (en) FPGA architecture with dual-port deep look-up table RAMS
US6388466B1 (en) FPGA logic element with variable-length shift register capability
US6525565B2 (en) Double data rate flip-flop
JP3626239B2 (ja) プログラマブルアレイ
US6107822A (en) Logic element for a programmable logic integrated circuit
JPH09186560A (ja) 構成可能な多機能フリップフロップ
US6873182B2 (en) Programmable logic devices having enhanced cascade functions to provide increased flexibility
JPH11317659A (ja) プログラム可能論理装置
JPH0219024A (ja) プログラマブルワード線接続部を有するプログラマブル論理デバイス
US7193436B2 (en) Fast processing path using field programmable gate array logic units
US7876601B2 (en) Variable sized soft memory macros in structured cell arrays, and related methods
US6501816B1 (en) Fully programmable multimodulus prescaler
US7304499B1 (en) Distributed random access memory in a programmable logic device
JPH05223899A (ja) フォーマッタ回路
US6249149B1 (en) Apparatus and method for centralized generation of an enabled clock signal for a logic array block of a programmable logic device
US20080150580A1 (en) Three input field programmable gate array logic circuit configurable as a three input look up table, a d-latch or a d flip- flop
US5581200A (en) Stored and combinational logic function generator without dedicated storage elements
US6839783B2 (en) Programmable state machine interface
JPH07159498A (ja) 構成制御システム、構成制御ユニット、fpgaを構成する方法、及び接続ライン上に存在するデータを受け取る方法
JP2567463B2 (ja) プロブラマブル入出力回路
JPH01233514A (ja) 書込み/読出し非同期形fifo式バッファ
JPH08501911A (ja) オプションの入力インバータを具備するフィールドプログラマブルゲートアレイ用ロジックセル

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040527

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060926

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060915

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061018

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101027

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111027

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121027

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121027

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131027

Year of fee payment: 7

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