JPH10173516A - Fpgaにおいてプログラム可能スイッチ素子の複数の構成設定間で時間多重化するためのメモリシステム - Google Patents

Fpgaにおいてプログラム可能スイッチ素子の複数の構成設定間で時間多重化するためのメモリシステム

Info

Publication number
JPH10173516A
JPH10173516A JP9002064A JP206497A JPH10173516A JP H10173516 A JPH10173516 A JP H10173516A JP 9002064 A JP9002064 A JP 9002064A JP 206497 A JP206497 A JP 206497A JP H10173516 A JPH10173516 A JP H10173516A
Authority
JP
Japan
Prior art keywords
switch element
programmable switch
fpga
memory cells
configuration
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
JP9002064A
Other languages
English (en)
Inventor
Charles M C Tan
チャールズ・エム・シー・タン
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH10173516A publication Critical patent/JPH10173516A/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
    • H03K19/17748Structural details of configuration resources
    • H03K19/17752Structural details of configuration resources for hot reconfiguration
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • G11C11/417Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
    • G11C11/419Read-write [R-W] circuits
    • 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/1737Controllable logic circuits using multiplexers
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17704Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17756Structural details of configuration resources for partial configuration or partial reconfiguration
    • 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/1776Structural details of configuration resources for memories

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Logic Circuits (AREA)
  • Stored Programmes (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】本発明の目的は、FPGAの構成を迅速に変更
するための装置及び方法を提供することである。 【解決手段】上記目的は、プログラム可能スイッチ素子
の所定の設定を格納する複数のメモリセルと、該複数の
メモリセルの各々から出力を受信し、上記プログラム可
能スイッチ素子を駆動するために、上記メモリセルから
の出力の1つを選択するタイム・スライス・セレクタ
と、該タイム・スライス・セレクタを制御して、上記プ
ログラム可能スイッチ素子を駆動するために、上記複数
のメモリセルのどれを選択するかを判定するタイム・ス
ライス・コントローラとからなる、メモリシステムによ
って達成される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に、フィール
ド・プログラマブル・ゲート・アレイ(FPGA)に関
し、とりわけ、FPGAの複数のプログラム可能な構成
を時間多重化するためのシステムに関する。
【0002】
【従来の技術】FPGAは、デジタル電子システム設計
者が論理を実現する方法に革命をもたらしている。数千
の論理ゲートを実現するための開発費及びターンアラウ
ンド時間の急激な低減によって、FPGAは、半導体産
業に影響を及ぼす新たな能力をもたらすものである。F
PGAは、今後のデジタル・システムの設計方法を一変
させようとしている。
【0003】FPGAのようなプログラム可能論理デバ
イスの利用は、その再プログラム可能性よって得られる
柔軟性のため、広く行き渡っている。FPGAには、一
般に、デジタル電子装置設計者が所望する論理機能を与
えるために、互いにプログラム可能に相互接続すること
ができる、プログラム可能論理ブロックのアレイが含ま
れている。プログラム可能論理ブロックのそれぞれが、
個々に、多数の異なる論理機能の任意の1つを実施する
ようにプログラムすることが可能である。FPGAは、
所望の構成に従ってプログラム可能論理ブロックを互い
に結合するための構成可能経路指定マトリックスを備え
ている。FPGAには、構成メモリセルも含まれてい
る。構成メモリセルは、各プログラム可能論理ブロック
によって実施される機能を特定するために、プログラム
可能論理ブロックに結合され、また、プログラム可能論
理ブロックの入力及び出力の結合を特定するために、構
成可能な経路指定マトリックスに結合される。各プログ
ラム可能論理ブロックは、いくつかの構成メモリセルに
結合される。各構成経路指定マトリックスは、いくつか
の構成メモリセルに結合される。構成メモリセルに異な
る値を格納することによって、その機能及び結合に関し
て、各プログラム可能論理ブロックは、個別にプログラ
ムすることができる。
【0004】各プログラム可能論理ブロック、及び構成
可能経路指定マトリックスは、複数のプログラム可能ス
イッチ素子からなる。プログラム可能スイッチ素子の設
定によって、各プログラム可能論理ブロック内に含まれ
る論理機能、及びプログラム可能論理ブロックの入力と
出力の結合が規定される。プログラム可能スイッチ素子
の設定は、構成メモリセル内に格納された情報によって
決定される。現在のところ、各構成メモリセルは、特定
のプログラム可能スイッチ素子に対応する。プログラム
可能スイッチ素子の設定を修正し、これによって、論理
ブロックによって規定される論理を修正するために、構
成メモリ内の情報を修正しなければならない。
【0005】一般に、FPGA内の構成メモリセルによ
って設定されるプログラム可能スイッチ素子には3つの
タイプがある。この3つのタイプには、交差点スイッ
チ、参照テーブル、及びマルチプレクサが含まれる。3
タイプのプログラム可能スイッチ素子の全てについて、
構成メモリセルに格納された値によって、対応するプロ
グラム可能スイッチ素子の設定及び構成が決定される。
【0006】現在のところ、FPGAには、構成メモリ
の全情報をFPGAへと同時にロードしなければならな
いという事実によって制限がある。いったんロードする
と、構成メモリによって規定されるFPGA構成は、新
たな構成がロードされるまで、静的である。動的であ
り、迅速に変更可能である構成のFPGAを備えること
が望ましい。FPGAは、外部コントローラ又はマイク
ロプロセッサとの対話を伴わずに、FPGAの構成メモ
リセルを動的に修正できるべきである。また、FPGA
の構成メモリによって規定される論理の任意の部分に迅
速に修正を加えることができるが、論理の他の部分は、
静的なままであることが望ましい。こうした構成の場
合、ハードウェアにおいて実施される計算速度の利点
が、ハードウェアによる実施に固有の一般的な柔軟性の
欠如による制約を受けることなく、実現可能になる。
【0007】
【発明が解決しようとする課題】本発明の目的は、FP
GAの構成を迅速に変更するための装置及び方法を提供
することである。
【0008】本発明の他の目的は、動作時に、FPGA
の構成メモリへと構成の変更をロードするのに外部コン
トローラを必要とすることなく、構成変更を達成するこ
とである。FPGAの構成変更は、ユーザ提供のクロッ
クによって決まる周波数で生じさせることができる。こ
のアーキテクチャによって、電子ハードウェアの実施に
おける柔軟性が、現在入手可能なものよりもはるかに大
きくなる。
【0009】
【課題を解決するための手段】本発明の1つの実施例
は、FPGA内におけるプログラム可能スイッチ素子の
複数の設定間での時間多重化のためのメモリシステムで
ある。該システムには、プログラム可能スイッチ素子の
所定の設定を格納する、複数のメモリセルと、該複数の
メモリセルの各々から出力を受信し、プログラム可能ス
イッチ素子を駆動するために、メモリセルからの出力の
1つを選択する、タイム・スライス・セレクタと、該タ
イム・スライス・セレクタを制御し、プログラム可能ス
イッチ素子を駆動するために、複数のメモリセルのどれ
を選択するかを決定する、タイム・スライス・コントロ
ーラとが含まれる。
【0010】本発明の他の実施例には、複数のプログラ
ム可能スイッチ素子が含まれ、そのうちの少なくとも1
つが、プログラム可能スイッチ素子の所定の構成を格納
する複数のメモリセルを備える。
【0011】本発明の他の実施例には、複数の半スタテ
ィック・ランダム・アクセス・メモリセルと、タイム・
スライス・セレクタとが含まれる。タイム・スライス・
セレクタは、複数のPチャネル・トランジスタからな
り、1つのPチャネル・トランジスタは、複数の半スタ
ティック・ランダム・アクセス・メモリセルの各々に対
応する。半スタティック・ランダム・アクセス・メモリ
セルの各々は、対応するPチャネル・トランジスタがオ
ンになると、対応するプログラム可能スイッチ素子の設
定を決定する。
【0012】本発明の他の態様及び利点については、例
として本発明の原理を示す添付図面に関連してなされ
る、以下の詳細な説明から明らかになるであろう。
【0013】
【発明の実施の形態】例示目的のために図面に示すよう
に、本発明は、FPGAの動的構成を可能にするFPG
A構成メモリ・アーキテクチャにおいて具現化されてい
る。すなわち、FPGAの構成は、FPGAの構成メモ
リセルの再ロードを必要とせずに、非常に迅速に修正ま
たは更新することが可能である。FPGAのプログラム
可能スイッチ要素の設定は、外部コントローラとの対話
を必要とせずに、非常に迅速に修正される。外部クロッ
ク以外、FPGA外部の回路要素からの対話を行わず
に、プログラム可能スイッチ素子の再構成が実施可能で
ある。FPGAの動的構成は、構成メモリセルのロード
前に、予め決定し、特徴づけることが可能である。構成
メモリセルのロードが済むと、FPGA内におけるプロ
グラム可能スイッチ素子の設定の進行は、FPGAの回
路要素によって制御可能になる。本発明によれば、ユー
ザ提供のクロック信号の1サイクル当たり1回の頻度
で、FPGA構成の全てまたは一部を修正することが可
能になる。
【0014】図1には、本発明の1つの実施例が示され
ている。複数の構成メモリセル12には、FPGAプロ
グラム可能スイッチ素子11の所定の設定が格納されて
いる。一般に、複数の構成メモリセル12のうちの1つ
だけが、一度につき、FPGAプログラム可能スイッチ
素子11の設定を決定する。タイム・スライス・セレク
タ15が、複数の構成メモリセル12のうちどのメモリ
セルに、プログラム可能スイッチ素子11の設定を決定
させるかを選択する。
【0015】信号レベル・シフト回路17によって、タ
イム・スライス・セレクタ15からの信号レベルが、プ
ログラム可能スイッチ素子11を駆動して、2つの状態
のうち所望の1つの状態にするのに十分な大きさになる
という保証が得られる。一般に、プログラム可能スイッ
チ素子11は、プログラム可能スイッチ素子11内のト
ランジスタを「オン」又は「オフ」のいずれかにするこ
とによって、2つの状態の一方にセットされる。信号レ
ベル・シフト回路17によって、プログラム可能スイッ
チ素子を駆動する信号の電圧揺動が、トランジスタを完
全に「オン」又は「オフ」にするのに十分な大きさにな
るという保証が得られる。
【0016】タイム・スライス・コントローラ19が、
タイム・スライス・セレクタ15の選択を決定する。従
って、複数の構成メモリセル12のうち、特定の時点に
おいてプログラム可能スイッチ素子11を駆動するメモ
リセルは、タイム・スライス・コントローラ19によっ
て制御される。
【0017】タイム・スライス・コントローラ19は、
所定の数の状態にわたって、タイム・スライス・コント
ローラ19の刻時に使用可能である、クロック信号cloc
k1を受信する。タイム・スライス・コントローラ19の
状態の各々は、タイム・スライス・セレクタ15を制御
して、複数の構成メモリセル12の異なるメモリセルを
レベル・シフト回路要素17に電気的に接続し、次い
で、プログラム可能スイッチ素子11が駆動可能にな
る。従って、プログラム可能スイッチ素子11の設定
は、クロック信号clock1の1サイクル当たり1回の頻度
で修正可能である。
【0018】複数の構成セル12、タイム・スライス・
セレクタ15、レベル・シフタ17、及びタイム・スラ
イス・コントローラ19の全てが、協働して、多重構成
セル20を形成する。
【0019】図1には、1つだけのプログラム可能スイ
ッチ素子11用のFPGA構成メモリ・アーキテクチャ
が示されている。FPGAは、多数のプログラム可能ス
イッチ素子11からなる。従って、図1に示すFPGA
構成メモリ・アーキテクチャは、FPGA内のプログラ
ム可能スイッチ素子11の各々に対して複製可能であ
る。このアーキテクチャによって、クロック信号clock1
の1サイクル当たり1回の頻度で、FPGA内のプログ
ラム可能スイッチ素子11の1つ、いくつか、又は全て
を修正することが可能になる。
【0020】FPGAは、FPGA内におけるユーザ論
理を規定する、プログラム可能論理ブロック、及び構成
可能経路指定マトリックスからなる。各プログラム可能
論理ブロック、及び構成可能経路指定マトリックスは、
複数のプログラム可能スイッチ素子からなる。プログラ
ム可能スイッチ素子の設定によって、各プログラム可能
論理ブロック内に含まれる論理機能と、プログラム可能
論理ブロックの入力及び出力の結合とが規定される。こ
のアーキテクチャによって、クロック信号clock1の1サ
イクル当たり1回の頻度で、FPGA内のプログラム可
能スイッチ素子11の1つ、いくつか、又は全てを修正
することが可能になる。従って、このアーキテクチャに
よって、クロック信号clock1の1サイクル当たり1回の
頻度で、FPGA内のユーザ論理を再規定することが可
能になる。
【0021】各個別のプログラム可能スイッチ素子の動
的制御によって、本発明は極めて強力なものになる。F
PGA内の論理機能の実施は、プログラム可能スイッチ
素子の設定によって規定される。一般に、論理機能は、
複数のプログラム可能スイッチ素子の設定によって規定
される。複数のプログラム可能スイッチ素子のうちの少
なくとも1つの素子の設定を修正することによって、F
PGAに関する論理機能が再規定されることになる。従
って、複数のプログラム可能スイッチ素子の各々に制御
を加えることによって、クロック信号clock1の各サイク
ル毎に、膨大な数の可能な論理機能を実施することがで
きる。一般に、可能な論理機能の数は、構成メモリセル
の数により制限される。1つの論理機能から他の論理機
能への修正は、外部コントローラによる構成可能メモリ
セルへの再ロードを伴わずに実施される。
【0022】プログラム可能スイッチ素子の最も単純な
ものは、図2に示すように、交差点スイッチ21であ
る。交差点スイッチ21は、本発明において規定される
多重構成セル20によって駆動される。多重構成セル2
0は、図1に示す点線のボックスに囲まれた機能性から
なる。交差点スイッチ21は、それが「オン」状態にセ
ットされると、FPGA内の第1のワイヤ23と第2の
ワイヤ25を接続する。交差点スイッチ21は、一般
に、Nチャネルのトランジスタから構成される。FPG
A内のワイヤ23、25は、独立したプログラム可能論
理ブロックの入力、又は出力を接続するために利用でき
る。すなわち、ワイヤ23、25は、プログラム可能論
理ブロックの入力と出力の結合を特定する、構成可能経
路指定マトリックスの一部とすることが可能である。図
1に示すように、交差点スイッチ21は、交差点スイッ
チ21のNチャネル・トランジスタを「オン」にするこ
とによって、2つの独立したワイヤ23、25を接続す
る。これは、一般に、交差点スイッチ21に対応する多
重構成セル20に、高論理値を格納することによって実
施される。交差点スイッチ21内のNチャネル・トラン
ジスタを「オン」にすることによって、第1のワイヤ2
3と第2のワイヤ25が接続される。複数の交差点スイ
ッチに対応する複数の構成メモリセルに格納すべき値
は、FPGAのプログラム可能論理ブロック、及び経路
指定マトリックスの必要とされる構成を知ることによっ
て決定される。
【0023】第2のタイプのプログラム可能スイッチ素
子は、図3に示す参照テーブルである。単一の参照テー
ブルには、複数の参照テーブル構成入力が必要である。
従って、複数のプログラム可能スイッチ素子入力が必要
になる。図3には、3入力の参照テーブルが示され、こ
れには、8つの参照テーブル構成入力31と8つの多重
構成セル20が必要である。参照テーブルは、関数発生
器とも呼ばれ、構成可能論理ブロックの基本単位であ
る。
【0024】参照テーブルは、多重構成セル20から構
成される2n×1 のメモリとして組み合わせ論理を実施
する。メモリは、n個の入力によってアドレス指定され
る、参照テーブルとして用いられる。あるタイム・スラ
イスの間、参照テーブルは、参照テーブルの入力の
((2)2)nの関数の任意の1つを実施することが可能であ
る。FPGAがプログラムされると、各タイム・スライ
ス毎に実施される関数の真理値表に対応するビット・パ
ターンがメモリにロードされる。図3の参照テーブル
は、3つの入力A、B、Cを備えている。従って、任意
のタイム・スライスの間に、この参照テーブルによっ
て、64個の異なる関数を構成することが可能である。
【0025】図3に示すように、多重構成セル20は、
参照テーブル・トランジスタ33のドレイン上にバイア
スをセットする。参照テーブルに対する入力A、B、C
は、参照テーブル33、34のどちらをオンにするかを
決定する。従って、多重構成セル20に格納された参照
テーブル構成入力の時間依存値によって、FPGA内の
構成可能論理ブロック内に含まれる参照テーブルの論理
機能が決定される。
【0026】第3のタイプのプログラム可能スイッチ素
子は、図4に示すマルチプレクサ43である。マルチプ
レクサ43は、特殊ケースの1次元経路指定構造であ
る。マルチプレクサ43は、任意の幅(任意の入力数)
とすることが可能であるが、マルチプレクサの幅が増す
と、より多くの多重構成セル20が必要になる。図4の
マルチプレクサ43は、4つの入力A、B、C、Dを備
えており、2つのマルチプレクサ制御入力41を必要と
する。マルチプレクサで実施される、多数入力を備えた
スイッチによって、スイッチの制御に必要な多重構成セ
ル20の数を減らすことが可能になる。従って、マルチ
プレクサによって、大型スイッチ用のFPGA面積を節
約することが可能になる。図4に示すマルチプレクサの
機能性をスイッチで実施した場合には、4つの多重構成
セル20が必要になったであろう。しかし、図4に示す
マルチプレクサ43は、2つの構成セル27しか必要と
しない。従って、この特殊ケースの場合、マルチプレク
サ43でスイッチ機能を実施することによって、2つの
構成メモリセルの低減が実現される。FPGA内におけ
るマルチプレクサ構造は、多数の入力を受信する。各タ
イム・スライス毎に、関連する多重構成セル20が、多
数の入力のうちどれを切り換えて、マルチプレクサの出
力に接続するかを決定する。マルチプレクサに接続され
る入力数が増すと、必要とされるマルチプレクサ制御入
力41、及び関連する多重制御セル20の数も増大す
る。
【0027】本発明の利用が可能な用途の一例として、
音声または画像認識がある。本発明によれば、高速で、
低コストの解決策が得られる。図5に示すように、音声
サウンド・バイトが、マイクロフォン51によって受信
され、音声サウンド・バイトのデジタル表現を生成する
サンプラ53によって、デジタル的にサンプリングされ
る。音声サウンド・バイトが何を表しているかの判定ま
たは認識のために、デジタル表現は、それぞれ、複数の
既知の音声サウンド・バイトの1つを表す、1組のデジ
タル・テンプレートと比較される。
【0028】本発明を利用すれば、複数Nのデジタル論
理テンプレートを、Nの異なる既知の音声サウンド・バ
イト用のFPGA55の構成メモリに格納することによ
って、この問題を解決することができる。特定の既知の
音声サウンド・バイトについてデジタル論理テンプレー
トを実施するのに、M個のプログラム可能スイッチ素子
が必要になる場合、N個のデジタル論理テンプレートを
全て格納するためには、M×Nの構成メモリセルが必要
になる。プログラム可能スイッチ素子の各々について、
N個の構成メモリセルに、N個の既知の音声サウンド・
バイトの各々用のデジタル論理テンプレートを実施する
のに必要なデジタル値がロードされる。構成メモリセル
にデジタル論理テンプレートがロードされると、クロッ
ク信号clock1によって一度に1つずつ、テンプレートを
ステップ実施することが可能である。最もぴったりと一
致するデジタル論理テンプレートに関連したデジタル論
理をセットして、一致論理部57に最大デジタル値を出
力することができる。一致部が最大デジタル値を受信し
た時点において、複数Nの構成メモリセルのうちのどれ
がプログラム可能スイッチ素子の設定を行っていたかを
知ることによって、デジタル音声サウンド・バイトに一
致するデジタル論理テンプレートを判定することが可能
になる。各デジタル論理テンプレートは、異なる音声サ
ウンド・バイトに対応する。従って、受信音声サウンド
・バイトの認識が可能である。図5のブロックT1、T
2、...TNは、複数Nのデジタル論理テンプレート
の各々に関連したデジタル論理を表している。
【0029】この応用例におけるテンプレート論理は、
ハードウェアで実施される。従って、デジタル音声サウ
ンド・バイトと既知の各デジタル論理テンプレートとの
一致は、ソフトウェアによって一致計算を実施する場合
に比べると、はるかに迅速に実行される。従って、本発
明の実施形態を利用した音声サウンド・バイト一致計算
は、音声サウンド・バイトの一致を計算する専用マイク
ロプロセッサよりもはるかに迅速である。
【0030】全てのテンプレートは、用途特定集積回路
(ASIC)におけるデジタル論理アレイで実施可能で
ある。しかし、デジタル論理テンプレートが多数になる
と、ASICは、極めて大きく、高価なものになる可能
性がある。デジタル論理テンプレートを修正しなければ
ならない場合には、ASICを取り替えなければならな
い。
【0031】大型テンプレートの場合、本FPGAアー
キテクチャには、各デジタル論理テンプレート毎に、F
PGAの構成セルの再ロードが必要である。しかし、テ
ンプレート構成の各々について、既存のFPGAの構成
メモリセルに再ロードするには、コントローラがテンプ
レート構成の各々をロードするのに必要とする時間に起
因して、実質的に更に多くの処理時間が必要になる。
【0032】図6には、複数の構成メモリセル12の実
施形態が示されている。図6において、複数の構成メモ
リセル12は、半スタティック・ランダム・アクセス・
メモリ(SRAM)セルを用いて実施されている。半S
RAMセルが必要とするスペースは、標準SRAMセル
に比べてはるかに小さい。図7には、2つのビット線
と、2つのNチャネル電界効果トランジスタ(FET)
を備えた、標準SRAMが示されている。図8には、1
つのビット線と、1つのNチャネルFETだけしか備え
ていない、半SRAMセルが示されている。標準SRA
Mは、より多くのスペースと部品を必要とするが、より
高速で、より信頼性が高い。言うまでもないが、SRA
Mは、構成メモリセル12の可能な実施例の1つにすぎ
ない。
【0033】図9には、タイム・スライス・セレクタの
実施形態が示されている。この場合、タイム・スライス
・セレクタ15は、複数のPチャネルFETで実施され
る。各PチャネルFETのゲートは、タイム・スライス
・コントローラ19の異なる出力に電気的に接続されて
いる。タイム・スライス・コントローラは、選択された
PチャネルFETをオンにする。これにより、信号レベ
ル・シフト回路17が、PチャネルFETに関連した半
SRAMメモリセルに接続される。
【0034】一般に、PチャネルFETは、Nチャネル
FETほど電流を導通しない。この理由のために、大部
分の回路用途において、PチャネルFETよりもNチャ
ネルFETが利用される。しかし、本応用例の場合に
は、PチャネルFETによって導通する低レベルの電流
が、PチャネルFETをより望ましいものにする。半S
RAMセルの出力に接続されると、PチャネルFET
は、NチャネルFETに比べて、半SRAMセルに格納
されている情報に重ね書きすることになる可能性が低
い。従って、PチャネルFETでタイム・スライス・セ
レクタを構成することによって、全SRAMセルよりも
必要とするスペースが小さく、構成要素が少なくて済む
半SRAMセルで、構成メモリセルを実施することが可
能になる。
【0035】タイム・スライス・コントローラ19は、
シフト・レジスタで実施することも可能である。一般
に、プログラム可能スイッチ素子11をセットするの
は、一度に1つの構成メモリセル12だけである。従っ
て、タイム・スライス・コントローラ19は、一般に、
複数のコントローラ出力75からなる。プログラム可能
スイッチ素子11の設定を決定することになる、構成メ
モリセル12の個々のメモリに対応する特定のPチャネ
ル・トランジスタが、コントローラ出力75によって選
択的にオンにされる。従って、任意の所定時点におい
て、複数の出力75のうちの1つだけが活性状態にな
る。タイム・スライス・コントローラ19が、シフト・
レジスタによって実施される場合、一度に活性状態にな
るのは、シフト・レジスタの複数の出力のうちの1つだ
けである。活性出力は、タイム・スライス・コントロー
ラのシフト・レジスタ内における複数のレジスタ内にお
いて、1つのレジスタから他のレジスタにシフトされ
る。活性出力は、タイム・スライス・セレクタ15内の
Pチャネル・トランジスタをオンにする出力である。言
うまでもないが、これは、実施例の1つに過ぎず、他の
タイム・スライス・コントローラの実施例も可能であ
る。
【0036】図10には、レベル・シフタ17とプログ
ラム可能スイッチ素子11の間に挿入される、パイプラ
イン同期化装置81が示されている。図9において、パ
イプライン同期化装置81は、Dフリップ・フロップで
実施される。言うまでもないが、これは実施例の1つで
しかなく、他のパイプライン同期化装置81も可能であ
る。Dフリップ・フロップは、同期クロックのクロック
・エッジを受信すると、レベル・シフタの出力において
信号をラッチする。Dフリップ・フロップのQ出力は、
プログラム可能スイッチ素子11に電気的に接続され
る。従って、プログラム可能スイッチ素子の制御は、F
PGA内の他の電子回路要素のタイミングと同期させる
ことが可能である。
【0037】同期クロックCLK とクロック信号clock1と
の間には全く関連性がなくてもよい。クロック信号cloc
k1は、複数の状態を通じて、タイム・スライス・コント
ローラ19の刻時を行う。同期クロックCLK によって、
所望のプログラム可能スイッチ素子が、同期クロック・
サイクル間において静的であるという保証が得られる。
【0038】本発明の機能ブロックは、多種多様に接続
することが可能である。例えば、単一のタイム・スライ
ス・コントローラ19は、たった1つのタイム・スライ
ス・セレクタ15ではなく、複数のタイム・スライス・
セレクタ15に接続することも可能である。単一のレベ
ル・シフタ17は、たった1つのプログラム可能スイッ
チ素子ではなく、複数のプログラム可能スイッチ素子1
1に電気的に接続することも可能である。単一のタイム
・スライス・セレクタ15は、たった1つのレベル・シ
フタ17ではなく、複数のレベル・シフタ17に電気的
に接続することも可能である。
【0039】本発明の特定の実施例について説明及び例
示してきたが、本発明は、そのように説明及び例示した
部分の特定の形態又は構成に限定されるものではない。
本発明は、特許請求の範囲によってのみ限定される。
【0040】以下に、本発明の実施態様を列挙する。
【0041】1.FPGA内のプログラム可能スイッチ
素子の複数の設定間で時間多重化するためのメモリシス
テムにおいて、プログラム可能スイッチ素子の所定の設
定を格納する複数のメモリセルと、該複数のメモリセル
の各々から出力を受信し、上記プログラム可能スイッチ
素子を駆動するために、上記メモリセルからの出力の1
つを選択するタイム・スライス・セレクタと、該タイム
・スライス・セレクタを制御して、上記プログラム可能
スイッチ素子を駆動するために、上記複数のメモリセル
のどれを選択するかを判定するタイム・スライス・コン
トローラと、からなるメモリシステム。
【0042】2.複数のプログラム可能スイッチ素子か
ら更になり、該プログラム可能スイッチ素子の少なくと
も1つが、少なくとも1つのプログラム可能スイッチ素
子の所定の構成を格納する、複数のメモリセルを備える
ことを特徴とする、前項1に記載のFPGA内のメモリ
システム。
【0043】3.前記プログラム可能スイッチ素子は、
交差点スイッチであることを特徴とする、前項1に記載
のメモリシステム。
【0044】4.前記プログラム可能スイッチ素子は、
参照テーブル入力であることを特徴とする、前項1に記
載のメモリシステム。
【0045】5.前記プログラム可能スイッチ素子は、
マルチプレクサ制御入力であることを特徴とする、前項
1に記載のメモリシステム。
【0046】6.前記メモリセルの少なくとも1つは、
半スタティック・ランダム・アクセス・メモリセルから
なることを特徴とする、前項1に記載のメモリシステ
ム。
【0047】7.前記メモリセルの少なくとも1つは、
標準SRAMセルからなることを特徴とする、前項1に
記載のメモリシステム。
【0048】8.前記タイム・スライス・セレクタは、
複数のPチャネル・トランジスタからなり、該複数のP
チャネル・トランジスタの各Pチャネル・トランジスタ
は、前記複数のメモリセルの異なる1つに対応し、1つ
のメモリセルが、対応するPチャネル・トランジスタに
よって、対応するプログラム可能スイッチの設定を決定
することを特徴とする、前項1に記載のメモリシステ
ム。
【0049】9.前記複数のメモリセルは、1つの半ス
タティック・ランダム・アクセス・メモリセルからな
り、前記タイム・スライス・セレクタは、複数のPチャ
ネル・トランジスタからなり、該複数のPチャネル・ト
ランジスタの各Pチャネル・トランジスタは、複数の半
スタティック・ランダム・アクセス・メモリセルの異な
る1つに対応し、1つの半スタティック・ランダム・ア
クセス・メモリセルが、対応するPチャネル・トランジ
スタによって、対応するプログラム可能スイッチ素子の
設定を決定することを特徴とする、前項1に記載のメモ
リシステム。
【0050】10.前記タイム・スライス・コントロー
ラは、所定の数の状態を通じてタイム・スライス・コン
トローラの刻時を行うユーザ提供のクロックに接続され
ることを特徴とする、前項1に記載のメモリシステム。
【0051】11.前記タイム・スライス・セレクタ
は、シフト・レジスタからなることを特徴とする、前項
9に記載のメモリシステム。
【0052】12.前記レベル・シフタは、前記プログ
ラム可能スイッチ素子が、2つの状態の一方に完全にセ
ットされることを保証することを特徴とする、前項1に
記載のメモリシステム。
【0053】13.パイプライン同期化装置が、前記プ
ログラム可能スイッチ素子の設定を、同期クロックと同
期可能にすることを特徴とする、前項1に記載のメモリ
システム。
【0054】14.FPGA内のプログラム可能スイッ
チ要素の複数の設定間で、時間多重化するための方法に
おいて、複数のメモリセル内における上記プログラム可
能スイッチ素子の所定の設定を格納するステップと、上
記複数のメモリセルの1つから出力を選択し、上記プロ
グラム可能スイッチ素子を駆動するステップと、を含む
方法。
【0055】15.半SRAMセルと、半SRAMセル
を選択するPチャネル・トランジスタと、からなる装
置。
【0056】16.前記複数のスイッチ素子は、音声認
識テンプレートの構成を決定し、複数のデジタル音声認
識テンプレートが、前記複数のスイッチ素子の各々に対
応する前記複数のメモリセルに格納されることを特徴と
する、前項2に記載のメモリシステム。
【0057】17.前記複数のスイッチ素子は、画像認
識テンプレートの構成を決定し、複数のデジタル画像認
識テンプレートが、前記複数のスイッチ素子の各々に対
応する前記複数のメモリセルに格納されることを特徴と
する、前項2に記載のメモリシステム。
【0058】
【発明の効果】本発明は上述のように構成したので、F
PGAの構成は、FPGAの構成メモリセルの再ロード
を必要とせずに、非常に迅速に修正または更新すること
が可能となる。FPGAのプログラム可能スイッチ要素
の設定は、外部コントローラとの対話を必要とせずに、
非常に迅速に修正される。外部クロック以外、FPGA
外部の回路要素からの対話を行わずに、プログラム可能
スイッチ素子の再構成が実施可能である。FPGAの動
的構成は、構成メモリセルのロード前に、予め決定し、
特徴づけることが可能である。構成メモリセルのロード
が済むと、FPGA内におけるプログラム可能スイッチ
素子の設定の進行は、FPGAの回路要素によって制御
可能になる。本発明によれば、ユーザ提供のクロック信
号の1サイクル当たり1回の頻度で、FPGA構成の全
てまたは一部を修正することが可能になる。
【図面の簡単な説明】
【図1】本発明のFPGA構成メモリ・アーキテクチャ
のブロック図である。
【図2】FPGA内における多重構成可能なメモリセル
と交差点スイッチとの間の接続を示す図である。
【図3】FPGA内における複数の多重構成メモリセル
と参照テーブルとの間の接続を示す図である。
【図4】FPGA内における複数の多重構成メモリセル
とマルチプレクサとの間の接続を示す図である。
【図5】本発明を用いて、会話パターンを認識するブロ
ック図である。
【図6】構成メモリセルの実施形態を示すブロック図で
ある。
【図7】従来技術の全SRAMセルを示す図である。
【図8】従来技術の半SRAMセルを示す図である。
【図9】構成メモリセルとタイム・スライス・セレクタ
の実施形態を示す図である。
【図10】図1に示すブロック図へのパイプライン・ク
ロックの追加を示すブロック図である。
【符号の説明】
11 FPGAプログラム可能スイッチ素子 12 構成メモリセル 15 タイム・スライス・セレクタ 17 信号レベル・シフト回路 19 タイム・スライス・コントローラ 20 多重構成セル

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 FPGA内のプログラム可能スイッチ素
    子の複数の設定間で時間多重化するためのメモリシステ
    ムにおいて、 プログラム可能スイッチ素子の所定の設定を格納する複
    数のメモリセルと、 該複数のメモリセルの各々から出力を受信し、上記プロ
    グラム可能スイッチ素子を駆動するために、上記メモリ
    セルからの出力の1つを選択するタイム・スライス・セ
    レクタと、 該タイム・スライス・セレクタを制御して、上記プログ
    ラム可能スイッチ素子を駆動するために、上記複数のメ
    モリセルのどれを選択するかを判定するタイム・スライ
    ス・コントローラと、からなるメモリシステム。
JP9002064A 1996-01-17 1997-01-09 Fpgaにおいてプログラム可能スイッチ素子の複数の構成設定間で時間多重化するためのメモリシステム Pending JPH10173516A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/587,687 US5760602A (en) 1996-01-17 1996-01-17 Time multiplexing a plurality of configuration settings of a programmable switch element in a FPGA
US587687 1996-01-17

Publications (1)

Publication Number Publication Date
JPH10173516A true JPH10173516A (ja) 1998-06-26

Family

ID=24350795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9002064A Pending JPH10173516A (ja) 1996-01-17 1997-01-09 Fpgaにおいてプログラム可能スイッチ素子の複数の構成設定間で時間多重化するためのメモリシステム

Country Status (3)

Country Link
US (1) US5760602A (ja)
EP (1) EP0785630A3 (ja)
JP (1) JPH10173516A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013251894A (ja) * 2012-05-02 2013-12-12 Semiconductor Energy Lab Co Ltd プログラマブルロジックデバイス
JP2014099845A (ja) * 2012-10-17 2014-05-29 Semiconductor Energy Lab Co Ltd プログラマブルロジックデバイス

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231788A (ja) * 1995-12-19 1997-09-05 Fujitsu Ltd シフトレジスタ及びプログラマブル論理回路並びにプログラマブル論理回路システム
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US6020758A (en) * 1996-03-11 2000-02-01 Altera Corporation Partially reconfigurable programmable logic device
US6031842A (en) 1996-09-11 2000-02-29 Mcdata Corporation Low latency shared memory switch architecture
DE19651075A1 (de) * 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
DE19654846A1 (de) * 1996-12-27 1998-07-09 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.)
EP1329816B1 (de) 1996-12-27 2011-06-22 Richter, Thomas Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
US5959466A (en) 1997-01-31 1999-09-28 Actel Corporation Field programmable gate array with mask programmed input and output buffers
US5821776A (en) * 1997-01-31 1998-10-13 Actel Corporation Field programmable gate array with mask programmed analog function circuits
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
US6150837A (en) 1997-02-28 2000-11-21 Actel Corporation Enhanced field programmable gate array
JP3106998B2 (ja) * 1997-04-11 2000-11-06 日本電気株式会社 メモリ付加型プログラマブルロジックlsi
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US6124730A (en) * 1998-12-15 2000-09-26 Vantis Corporation Methods for configuring FPGA's having variable grain components for providing time-shared access to interconnect resources
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US6204686B1 (en) * 1998-12-16 2001-03-20 Vantis Corporation Methods for configuring FPGA's having variable grain blocks and shared logic for providing symmetric routing of result output to differently-directed and tristateable interconnect resources
GB2350456A (en) * 1999-05-13 2000-11-29 Jpc Technology Ltd Data processing
US8230411B1 (en) 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
US6288566B1 (en) * 1999-09-23 2001-09-11 Chameleon Systems, Inc. Configuration state memory for functional blocks on a reconfigurable chip
JP2004506261A (ja) 2000-06-13 2004-02-26 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト パイプラインctプロトコルおよびct通信
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7657877B2 (en) 2001-06-20 2010-02-02 Pact Xpp Technologies Ag Method for processing data
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
JP3540796B2 (ja) * 2001-12-28 2004-07-07 東京エレクトロンデバイス株式会社 演算システム
US8281108B2 (en) 2002-01-19 2012-10-02 Martin Vorbach Reconfigurable general purpose processor having time restricted configurations
US6791352B2 (en) * 2002-02-08 2004-09-14 International Business Machines Corporation Method and apparatus for debugging a chip
EP1514193B1 (de) 2002-02-18 2008-07-23 PACT XPP Technologies AG Bussysteme und rekonfigurationsverfahren
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
CN100359602C (zh) * 2002-06-20 2008-01-02 中兴通讯股份有限公司 一种有效利用现场可编程门阵列中的存储器的方法
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
AU2003286131A1 (en) 2002-08-07 2004-03-19 Pact Xpp Technologies Ag Method and device for processing data
US7394284B2 (en) 2002-09-06 2008-07-01 Pact Xpp Technologies Ag Reconfigurable sequencer structure
WO2005001689A1 (ja) * 2003-06-25 2005-01-06 Nec Corporation 電子計算機、半導体集積回路、制御方法、プログラムの生成方法、及びプログラム
JP4700611B2 (ja) 2003-08-28 2011-06-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データ処理装置およびデータ処理方法
DE102004045527B4 (de) * 2003-10-08 2009-12-03 Siemens Ag Konfigurierbare Logikschaltungsanordnung
DE102004006769B3 (de) * 2004-02-11 2005-08-11 Infineon Technologies Ag Auslesevorrichtung
US7167025B1 (en) 2004-02-14 2007-01-23 Herman Schmit Non-sequentially configurable IC
US7109752B1 (en) * 2004-02-14 2006-09-19 Herman Schmit Configurable circuits, IC's, and systems
US7425841B2 (en) 2004-02-14 2008-09-16 Tabula Inc. Configurable circuits, IC's, and systems
US7126381B1 (en) 2004-02-14 2006-10-24 Herman Schmit VPA interconnect circuit
US7193440B1 (en) * 2004-02-14 2007-03-20 Herman Schmit Configurable circuits, IC's, and systems
US7408382B2 (en) * 2004-06-30 2008-08-05 Tabula, Inc. Configurable circuits, IC's, and systems
US7439766B2 (en) * 2004-06-30 2008-10-21 Tabula, Inc. Configurable logic circuits with commutative properties
JP4546775B2 (ja) * 2004-06-30 2010-09-15 富士通株式会社 時分割多重処理可能なリコンフィギュラブル回路
US7449915B2 (en) * 2004-06-30 2008-11-11 Tabula Inc. VPA logic circuits
US7268586B1 (en) * 2004-11-08 2007-09-11 Tabula, Inc. Method and apparatus for accessing stored data in a reconfigurable IC
US7330050B2 (en) 2004-11-08 2008-02-12 Tabula, Inc. Storage elements for a configurable IC and method and apparatus for accessing data stored in the storage elements
US7276933B1 (en) * 2004-11-08 2007-10-02 Tabula, Inc. Reconfigurable IC that has sections running at different looperness
US7317331B2 (en) 2004-11-08 2008-01-08 Tabula, Inc. Reconfigurable IC that has sections running at different reconfiguration rates
US7230869B1 (en) 2005-03-15 2007-06-12 Jason Redgrave Method and apparatus for accessing contents of memory cells
US7380035B1 (en) 2005-03-24 2008-05-27 Xilinx, Inc. Soft injection rate control for buses or network-on-chip with TDMA capability
US7492186B2 (en) 2005-07-15 2009-02-17 Tabula, Inc. Runtime loading of configuration data in a configurable IC
US7679401B1 (en) 2005-12-01 2010-03-16 Tabula, Inc. User registers implemented with routing circuits in a configurable IC
EP1974265A1 (de) 2006-01-18 2008-10-01 PACT XPP Technologies AG Hardwaredefinitionsverfahren
US7669097B1 (en) 2006-03-27 2010-02-23 Tabula, Inc. Configurable IC with error detection and correction circuitry
US7529992B1 (en) 2006-03-27 2009-05-05 Tabula, Inc. Configurable integrated circuit with error correcting circuitry
US7514957B2 (en) 2007-03-20 2009-04-07 Tabula, Inc Configurable IC having a routing fabric with storage elements
US8112468B1 (en) 2007-03-22 2012-02-07 Tabula, Inc. Method and apparatus for performing an operation with a plurality of sub-operations in a configurable IC
JP5081240B2 (ja) * 2007-06-25 2012-11-28 太陽誘電株式会社 半導体装置
EP2201569A4 (en) * 2007-09-06 2011-07-13 Tabula Inc CONFIGURATION CONTEXT SWITCH
WO2009039462A1 (en) * 2007-09-19 2009-03-26 Tabula, Inc. Method and system for reporting on a primary circuit structure of an integrated circuit (ic) using a secondary circuit structure of the ic
WO2010016857A1 (en) 2008-08-04 2010-02-11 Tabula, Inc. Trigger circuits and event counters for an ic
WO2010033263A1 (en) 2008-09-17 2010-03-25 Tabula, Inc. Controllable storage elements for an ic
US8912820B2 (en) 2010-04-02 2014-12-16 Tabula, Inc. System and method for reducing reconfiguration power
US8941409B2 (en) 2011-07-01 2015-01-27 Tabula, Inc. Configurable storage elements
US9148151B2 (en) 2011-07-13 2015-09-29 Altera Corporation Configurable storage elements
US10199105B2 (en) * 2016-05-12 2019-02-05 Crossbar, Inc. Non-volatile resistive memory configuration cell for field programmable gate array
US11139883B1 (en) * 2020-09-11 2021-10-05 Bae Systems Information And Electronic Systems Integration Inc Combined spatial and time multiplexer

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3987286A (en) * 1974-12-20 1976-10-19 International Business Machines Corporation Time split array logic element and method of operation
JPS5312239A (en) * 1976-07-20 1978-02-03 Matsushita Electric Ind Co Ltd Driving system for memory unit
US4623989A (en) * 1983-08-31 1986-11-18 Texas Instruments Incorporated Memory with p-channel cell access transistors
DE3821515A1 (de) * 1988-06-25 1989-12-28 Rico Mikroelektronik Gmbh Programmierbare gatteranordnung
US5343406A (en) * 1989-07-28 1994-08-30 Xilinx, Inc. Distributed memory architecture for a configurable logic array and method for using distributed memory
JPH0654873B2 (ja) * 1989-09-04 1994-07-20 株式会社東芝 プログラマブル型論理装置
JP2965802B2 (ja) * 1991-12-19 1999-10-18 株式会社東芝 半導体集積回路
GB9303084D0 (en) * 1993-02-16 1993-03-31 Inmos Ltd Programmable logic circuit
US5426378A (en) * 1994-04-20 1995-06-20 Xilinx, Inc. Programmable logic device which stores more than one configuration and means for switching configurations

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013251894A (ja) * 2012-05-02 2013-12-12 Semiconductor Energy Lab Co Ltd プログラマブルロジックデバイス
JP2014099845A (ja) * 2012-10-17 2014-05-29 Semiconductor Energy Lab Co Ltd プログラマブルロジックデバイス

Also Published As

Publication number Publication date
US5760602A (en) 1998-06-02
EP0785630A3 (en) 1998-04-15
EP0785630A2 (en) 1997-07-23

Similar Documents

Publication Publication Date Title
JPH10173516A (ja) Fpgaにおいてプログラム可能スイッチ素子の複数の構成設定間で時間多重化するためのメモリシステム
US5737235A (en) FPGA with parallel and serial user interfaces
US5705938A (en) Programmable switch for FPGA input/output signals
US6759869B1 (en) Large crossbar switch implemented in FPGA
US7671626B1 (en) Versatile logic element and logic array block
JP3444216B2 (ja) プログラマブルデバイス
US20020125910A1 (en) Configurable logic element with expander structures
JPH09231788A (ja) シフトレジスタ及びプログラマブル論理回路並びにプログラマブル論理回路システム
CN107148754B (zh) 用于控制集成电路中的电源的电路和方法
US6466049B1 (en) Clock enable control circuit for flip flops
JPH08329696A (ja) 集積回路
US6628660B1 (en) Finite state machine with associated memory
US6249149B1 (en) Apparatus and method for centralized generation of an enabled clock signal for a logic array block of a programmable logic device
US6441642B1 (en) Multiplexers for efficient PLD logic blocks
US5825199A (en) Reprogrammable state machine and method therefor
US5796994A (en) Patch mechanism for allowing dynamic modifications of the behavior of a state machine
US6011740A (en) Structure and method for providing additional configuration memories on an FPGA
US5017809A (en) Method and apparatus for program verification of a field programmable logic device
US4922137A (en) Programmable sequence generator
US10541686B1 (en) Circuit and method for ensuring a stable IO interface during partial reconfiguration of a reprogrammable integrated circuit device
US5821794A (en) Clock distribution architecture and method for high speed CPLDs
KR19980064384A (ko) 클럭 입력 단자로부터 출력 단자로의 통과하는 회로들이감소된 버스트 카운터 회로를 갖는 반도체 회로 및 버스트 어드레스의 생성 방법
KR19990023884A (ko) 과도적인 효과에 의한 영향을 받지 않고 회로 스위칭이 가능한 반도체 논리회로 장치
EP0769223B1 (en) Programmable switch for fpga input/output signals
KR100422349B1 (ko) 클럭신호발생기

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060530

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20060629

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061201

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061207

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070123