JP2006011825A - 再構成可能演算装置および半導体装置 - Google Patents

再構成可能演算装置および半導体装置 Download PDF

Info

Publication number
JP2006011825A
JP2006011825A JP2004188095A JP2004188095A JP2006011825A JP 2006011825 A JP2006011825 A JP 2006011825A JP 2004188095 A JP2004188095 A JP 2004188095A JP 2004188095 A JP2004188095 A JP 2004188095A JP 2006011825 A JP2006011825 A JP 2006011825A
Authority
JP
Japan
Prior art keywords
switching condition
unit
output
switching
state
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.)
Ceased
Application number
JP2004188095A
Other languages
English (en)
Inventor
Ichiro Kasama
一郎 笠間
Toshiaki Suzuki
俊明 鈴木
Tetsuo Kono
哲雄 河野
Kazuaki Imafuku
和章 今福
Hiroshi Furukawa
浩 古川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004188095A priority Critical patent/JP2006011825A/ja
Priority to EP05250189A priority patent/EP1615142A3/en
Priority to US11/037,049 priority patent/US20050289327A1/en
Priority to CNB2005100051358A priority patent/CN100412789C/zh
Publication of JP2006011825A publication Critical patent/JP2006011825A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3893Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator
    • G06F9/3895Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros
    • G06F9/3897Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros with adaptable data path

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】 アプリケーションの切り替えの自由度を高める。
【解決手段】 演算器群の動作を切り替えるための切り替え条件として、演算器ユニット1a、1b、1c、1dの出力と切り替え条件コード、ステート1、ステート2、ステート3、ステート4が、切り替え条件対応付け部2によって対応付けられている。切り替え条件コード出力部3は、切り替え条件に設定された演算器ユニット1a、1b、1c、1dの出力によって切り替え条件が成立したと判定した場合、対応付けられた切り替え条件コードを出力する。シーケンサは、切り替え条件コードを入力すると、コードに応じた状態に演算器群を切り替える。
【選択図】 図1

Description

本発明は再構成可能演算装置および半導体装置に関し、特に複数の演算器を含む演算器群と、前記演算器群の動作を制御するシーケンサを有する再構成可能演算装置および半導体装置に関する。
従来、製品出荷後に発生する仕様変更、機能追加、新サービス追加などに対し、デバイスの作り直しをせずに機能変更を行うことを可能にするため、回路構成情報を入れ替えるだけで対応できる再構成可能演算装置が提供されている。
再構成可能演算装置として、たとえば、IP−Flex社製のDAP/DNA(Digital Application Processor/Distributed Network Architecture(登録商標))や、NEC社製のDRP(Dynamically Reconfigurable Processor)が知られている。
DAP/DNAは、2次元状に配置される複数の演算器複合ユニットを有し、ユニット内の構成と演算器間の接続情報を記述したメモリを複数面備え、このメモリ面を切り替えることにより異なるアルゴリズムを処理する。
DRPは、命令メモリ、命令デコーダおよび演算器を有する演算器ユニットが2次元状に複数配置されており、演算器ユニットの動作を状態遷移管理部で管理する。状態遷移管理部では、状態遷移テーブルを有し、状態遷移テーブルに従って各演算器ユニットの実行する命令メモリのアドレスを指示することにより、任意の命令を選択して実行させる。
また、データフロープロセッサ(DFP;Data Flow Processor)など、2次元または多次元のセル装置を有するコンフィギュレーション化可能なモジュールを動的に再構成するための手法が提案されている(たとえば、特許文献1参照)。
特表2001−510650号公報(図2)
しかし、従来の再構成可能演算装置では、アプリケーションの切り替えの条件生成のタイミングに自由度がないという問題点があった。
図13は、従来のDAP/DNAにおける演算器群の内容切り替え方式を示した模式図である。DAP/DNAの場合、一面分に割り当てられた演算が終了し、次の面の演算を行う際に、演算器群であるDNA902側から、汎用のCPUであるDAP901に割り込み信号904が発生し、その割り込みを受けてDAP901がDNA902の面の切り替え信号905を出力し、面の切り替えが行われる。そして、面の切り替え後、DAP901からDNA902に起動信号903が出力され、次の面に割り当てられた演算が開始される。また、外部メモリに書き込まれた後にも条件判断が実行される。
このように、DNA902の面が切り替えられ、DNA902が再構成される条件判断の実行タイミングは、一面分の演算が終了したデータパスの最後部と、外部メモリにデータが書き込まれた後に固定されており、DNA902内部で処理が行われている演算途中では、面の切り替えのための条件判断を行うことができなかった。
DRPも同様に、2次元上に配置された演算器群による一連の処理が終了した後、状態制御管理部に対して切り替え条件信号が出力される。
また、コンフィギュレーション化可能なモジュールを動的に再構成するための手法も、イベントまたはイベントの組み合わせの到来に対する応答として、モジュールの再構成を行うものであり、切り替えタイミングは決められている。
以上のように、従来の再構成可能演算器では、アプリケーションの切り替えの条件判断を実行するタイミングは限られており、条件生成のタイミングに自由度がなかった。そして、このことがアプリケーション設計時の制約条件となり、所望のアプリケーションの実装を難しくする要因となっていた。
たとえば、多重FOR文を実装しようとした場合、FOR文を実現するためのカウンタを多重に持たせて実装することが望ましいが、演算器が出力する情報に基づいて次のステートに遷移することはできないため、従来の再構成可能演算装置では実装ができないか、かなり冗長な構成の実装を余儀なくされていた。
本発明はこのような点に鑑みてなされたものであり、演算器群を構成する任意の構成要素の出力によって、演算器群で実行されるアプリケーションの切り替え条件の判断を行うことが可能な再構成可能演算装置および半導体装置を提供することを目的とする。
本発明では上記課題を解決するために、図1に示すような再構成可能演算装置が提供される。再構成可能演算装置は、演算を行う複数の演算器ユニット1a、1b、1c、1dから構成される演算器群が、図示しないシーケンサによって制御される。シーケンサは、演算器群の状態を決める設定情報を予め複数保持しており、演算器群による演算結果に応じて設定情報を切り替え、演算器群の状態を再構成する。
ここで、演算器ユニット1a、1b、1c、1dは、切り替え条件対応付け部2を介して切り替え条件コード出力部3に接続される。
切り替え条件対応付け部2は、演算器ユニット1a、1b、1c、1dの出力を演算器群の動作を切り替えるための切り替え条件とし、切り替え条件の種別を示す切り替え条件コードと対応付ける。たとえば、演算器ユニット1aの出力は切り替え条件コードであるステート1に対応付けられている。切り替え条件コード出力部3は、接続された演算器ユニット1a、1b、1c、1dが動作するごとに、その出力に基づき、切り替え条件が成立するかどうかを判定し、成立した切り替え条件の演算器ユニットの出力に対応付けられた切り替え条件コードを出力する。
このような再構成可能演算装置によれば、演算器群の動作を切り替えるための切り替え条件として、演算器ユニット1a、1b、1c、1dの出力と切り替え条件コード、ステート1、ステート2、ステート3、ステート4が、切り替え条件対応付け部2によって対応付けられている。切り替え条件コード出力部3は、切り替え条件に設定された演算器ユニット1a、1b、1c、1dの出力に応じて、切り替え条件が成立したと判定した場合、対応付けられた切り替え条件コードを出力する。たとえば、演算器ユニット1aの出力により、演算器ユニット1aに対応付けられた切り替え条件が成立したと判定された場合、対応付けられたステート1を出力する。シーケンサは、切り替え条件コードを入力すると、これに応じた状態に演算器群の状態を切り替える。
また、上記課題を解決するために、複数の演算器を含む演算器群と、前記演算器群の動作を制御するシーケンサとを有し、前記シーケンサによって前記演算器群の動作状態を再構成する半導体装置において、前記演算器群を構成する任意の構成要素の出力を前記演算器群の動作を切り替えるための切り替え条件とし、切り替え条件コードに対応付ける切り替え条件対応付け部と、前記切り替え条件対応付け部によって前記切り替え条件に設定された前記構成要素の出力を入力し、前記切り替え条件が成立するかどうかを判定し、成立した前記切り替え条件に応じた前記切り替え条件コードを出力する切り替え条件コード出力部と、前記切り替え条件コード出力部の出力した前記切り替え条件コードに応じて前記演算器群の動作状態を切り替えるシーケンサと、を具備することを特徴とする半導体装置、が提供される。
このような構成の半導体装置では、切り替え条件対応付け部によって、演算器の出力と、この演算器の出力を切り替え条件とするための切り替え条件コードとが対応付けられ、切り替え条件コード出力部に接続されている。切り替え条件コード出力部は、切り替え条件に設定された演算器の出力を入力し、切り替え条件が成立したかどうかを判定する。そして、切り替え条件が成立したと判定された場合には、対応付けられた切り替え条件コードを出力する。シーケンサは、切り替え条件コードを入力すると、演算器群の状態を、この切り替え条件コードに応じた状態に切り替える。
本発明では、演算器群を構成する演算器ユニットの出力と、演算器群の動作状態の切り替え条件とするための切り替え条件コードとを対応付けておき、対応付けられた演算器が動作するごとに切り替え条件が成立したかどうかを判定し、成立した場合には、対応する切り替え条件コードを出力する。これにより、演算器が動作するごとに切り替えのための条件判定を行うことが可能となり、条件判定の自由度が増す。この結果、所望のアプリケーションの実装が容易になる。
また、複数の演算器で同時に条件判定を行うことができるため、一連の処理終了後に手続き的に条件判定を行っていた場合に比べ、処理時間を短くすることができる。
以下、本発明の実施の形態を図面を参照して説明する。まず、実施の形態に適用される発明の概念について説明し、その後、実施の形態の具体的な内容を説明する。
図1は、実施の形態に適用される発明の概念図である。
再構成可能演算装置は、演算処理を実行する演算器群が、図示しないシーケンサによって制御される。演算器群を構成する演算器間の接続や、演算器で行う処理などの演算器群の動作を決める設定情報が予め複数設定されており、シーケンサは、所定の切り替え条件によって設定情報を切り替え、演算器群の動作を制御する。
演算器群は、それぞれの固有の演算処理を行う演算器ユニット1a、1b、1c、1dと、切り替え条件対応付け部2と、切り替え条件コード出力部3を有する。
演算器ユニット1a、1b、1c、1dは、数値演算、論理演算などの他、カウンタ、アドレス生成、などの処理を行い、切り替え条件対応付け部2を介して切り替え条件コード出力部3に接続し、演算終了ごとに生成された演算結果を切り替え条件コード出力部3に出力する。
切り替え条件対応付け部2は、演算器群の動作状態を切り替えるための切り替え条件となる演算器ユニット1aの出力を切り替え条件コードに対応付ける。図では、切り替え条件コードをステート1、ステート2、ステート3およびステート4で表している。ステート1対応付け部2aは、ステート1を演算器ユニット1aの出力に対応付ける。すなわち、演算器ユニット1aの出力に応じて、切り替え条件コード、ステート1が生成される。同様に、ステート2対応付け部2bが演算器ユニット1bの出力をステート2、ステート3対応付け部2cが演算器ユニット1cの出力をステート3、ステート4対応付け部2dが演算器ユニット1dの出力をステート4、に対応付ける。
切り替え条件コード出力部3は、切り替え条件対応付け部2によって接続された演算器ユニット1a、1b、1c、1dの出力を入力し、切り替え条件が成立したかどうかを判定する。たとえば、演算器ユニットの出力を所定の比較値と比較し、一致した場合に切り替え条件が成立したと判定する。そして、成立していると判定される場合は、演算器ユニットの出力に対応付けられた切り替え条件コードを出力する。出力される切り替え条件コードは、シーケンサによって遷移する次のステートを示している。
このような構成の再構成可能演算装置の動作について説明する。
切り替え条件対応付け部2では、演算器群の状態の切り替え条件として、演算器ユニット1a、1b、1c、1dの出力を切り替え条件コードに対応付ける。切り替え条件対応付け部2によって切り替え条件に設定された演算器ユニット1a、1b、1c、1dは、演算結果を切り替え条件コード出力部3へ出力する。切り替え条件コード出力部3では、演算器ユニット1a、1b、1c、1dの動作ごとに、生成された演算結果によって切り替え条件が成立したかどうかを判定する。そして、成立している場合には、対応付けられた切り替え条件コードを出力する。出力された切り替え条件コードは、シーケンサに入力される。シーケンサは、切り替え条件コードに基づいて、演算器群の状態を切り替える。
このように、演算器の動作ごとに、切り替え条件が判断されるので、アプリケーションの任意のタイミングで状態を切り替えることが可能となる。また、切り替え条件の判断は、複数の演算器で同時に実行することができる。このため、従来の再構成可能演算装置で一連の処理終了後の条件判定を手続き的に実施する場合に比べ、処理時間を短くすることができる。
なお、再構成可能演算装置を構築する際には、切り替え条件対応付け部2および切り替え条件コード出力部3は、演算器群の演算器ユニットもしくは、条件判定機構を設けた専用のユニットの組み合わせにより実装することができる。たとえば、所定の演算を行う演算器、その演算器の出力値を入力して比較値と比較し、判定結果をフラグとして出力する比較器、比較器の出力フラグに応じて所定の切り替え情報コードを出力する選択器などが組み合わされ、切り替え条件の判断処理を行う。また、演算器群の外部に専用の切り替え条件判定回路を設けてもよい。
以下、実施の形態の具体的な内容を図面を参照して詳細に説明する。
図2は、実施の形態の再構成可能演算装置の全体構成を示すブロック図である。
再構成可能演算装置は、複数の演算器が配列された演算器群10と、演算器群10の構成要素である演算器ユニットの動作を制御するシーケンサ20を有する。
演算器群10は、コンフィギュレーションメモリ11、配線&スイッチ12、および構成要素である演算器ユニット13a、13b、・・・、13c、データ蓄積装置13d、13e、・・・、カウンタ13fなどを有する。
コンフィギュレーションメモリ11は、演算器群を構成する演算器ユニットの実行内容や、演算器ユニット間の配線経路、演算に必要なデータなどの演算器群10の動作を設定する設定情報が格納されている。1つの設定情報は、演算器群10の1つの回路構成の「状態」に対応し、コンフィギュレーションメモリ11には「状態」が複数設定されている。以下、このような「状態」をステートとする。そして、シーケンサ20から指定されたステートで演算器群10を動作させる。各演算器ユニットおよび配線&スイッチ12は、コンフィギュレーションメモリ11の設定内容に従って動作する。配線&スイッチ12は、コンフィギュレーションメモリ11の設定内容に従って、演算器ユニット間の接続と接続の切り替えを行う配線部とスイッチ部を備える。演算器ユニット13a、13b、・・・、13cは、配線&スイッチ12経由で入力する入力信号に所定の演算を施し、配線&スイッチ12経由で出力する。演算器ユニットには、演算処理の他、データ処理用のデータを蓄積するデータ蓄積装置(メモリやレジスタ)13d、13e、・・・や、カウンタ13fがある。また、外部との間でデータやアドレスを交換するインタフェースやアドレス生成器などもある。なお、図では、コンフィギュレーションメモリ11を演算器群10に設けているが、コンフィギュレーションメモリ11は、シーケンサ20内、演算器群10とシーケンサ20の外側に設置してもよいし、これらに分割して設けることもできる。
シーケンサ20は、状態制御部21、状態テーブル22および現状態アドレスレジスタ23を有する。
状態制御部21は、演算器群10から入力する切り替え条件信号に応じて、次に遷移する演算器群10のステートを設定する。なお、切り替え条件信号は、切り替え条件発生の通知と、切り替え条件コードから成る。状態テーブル22は、コンフィギュレーションメモリ11のアドレスと同じアドレスが割り付けられており、個々のエントリには次のエントリへの遷移の振る舞いを表すオペコードと、選択される可能性のあるエントリのアドレスが格納される。現状態アドレスレジスタ23は、現在のステートを示すアドレス(状態テーブル22とコンフィギュレーションメモリ11)が格納される。
このような再構成可能演算装置では、演算器群10は、シーケンサ20によって指定されたコンフィギュレーションメモリ11の指定アドレスの設定情報に基づくステートで動作を行っている。そして、演算器ユニットによって切り替え条件が成立したことが判定されると、切り替え条件コードとともにシーケンサ20に切り替え条件信号を発生させる。
シーケンサ20では、状態制御部21が切り替え条件信号によって起動し、切り替え条件コードと状態テーブル22のエントリとから次に遷移するステートを決定し、そのステートを指示する設定情報が登録されたアドレス(遷移先アドレスとする)を算出し、算出した遷移先アドレスを現状態アドレスレジスタ23と状態テーブル22およびコンフィギュレーションメモリ11に設定する。これにより、コンフィギュレーションメモリ11の指定アドレスが遷移先アドレスに変更され、演算器群10のステートが遷移する。
次に、演算器群10について詳細に説明する。まず、コンフィギュレーションメモリ11について説明し、次に、配線&スイッチ12について説明する。
図3は、実施の形態のコンフィギュレーションメモリの構成の一例を示した図である。
コンフィギュレーションメモリ11には、特定のステートにおける演算器群10の動作を決定するコンフィギュレーションデータが、ステートごとに格納されている。図の例では、ステートごとにコンフィギュレーションデータ111、112、113、114、・・・・がエントリされている。この各ステートは、アドレスによって管理されている。
各エントリは、動作モード111a、リコンフィグ回路設計情報111b、ステート1(111c)、ステート2(111d)、ステート3(111e)、ステート4(111f)の領域を有する。動作モード111aは、このステートを識別する情報である。リコンフィグ回路設計情報111bは、この動作モードにおける再構成可能(リコンフィグ)回路の各演算器の動作や演算器間の接続関係を示した設計情報が格納される。そして、ステート1(111c)、ステート2(111d)、ステート3(111e)、ステート4(111f)には、この回路構成の次の状態としての候補が記述される。実際には、コンフィギュレーションメモリのアドレスが直接、または、その値から演算することによってアドレスが直接生成できるデータが記述されている。それぞれの次のステート候補は、ある切り替え条件と対応付けられており、その切り替え条件が成立すると、成立したステートへ遷移する処理が行われる。対応付けについては、後述する。
なお、上記の説明では、次候補として登録するステート数を4ステートとしたが、この数は任意に選択される。
次に、配線&スイッチ12の構成について説明する。図4は、実施の形態の配線&スイッチの構成の一例を示した図である。
演算器群10の構成要素の入力側には、FF(Flip-Flop)を設けるとともに、その前段にセレクタを設ける。図の例では、演算器ユニット13aの2つの入力側に、それぞれセレクタ、SEL12a、12c、およびFF12b、12dが設けられている。また、データ蓄積装置(メモリ)13dの入力側にも同様にSEL12eとFF12fが設けられている。そして、各セレクタの入力は、演算器やメモリの出力が接続される。
以上のコンフィギュレーションメモリと配線&スイッチにより、演算器群の構成が決まる。
次に、演算器群10の構成例を説明する。図5は、実施の形態の切り替え条件を判定する演算器群の構成の一例を示すブロック図である。なお、図5では、配線&スイッチ12のセレクタとFFは省略している。
図は、演算器ユニット131の演算結果に基づき切り替え条件が成立したかどうかを判定し、所定の切り替え条件コードを生成する構成例である。演算器群は、所定の演算を行う演算器ユニット131、入力値を比較値と比較する演算器ユニット132、所定の「切り替え条件コード」を出力する演算器ユニット133および入力信号を遅延して「切り替え条件発生」として出力する遅延器134で構成される。これらの演算器は、配線&スイッチ12によって、演算器ユニット131の演算結果の出力が条件判定を行う演算器ユニット132の入力に接続され、演算器ユニット132の条件判定結果の出力が「切り替え条件コード」を生成する演算器ユニット133と「切り替え条件発生」を生成する遅延器134の入力に接続される。
このような構成の演算器群では、演算器ユニット131で行われた演算結果が演算器ユニット132に出力される。演算器ユニット132では、入力した演算結果を予め保持する比較値と比較し、判定結果を条件判定結果として出力する。たとえば、演算結果がゼロになったら条件成立が出力されるというように構成することができる。そして、条件成立が入力されると、演算器ユニット133は、「切り替え条件コード」を出力する。遅延器134は、入力を遅延した後、出力する。すなわち、条件成立が入力されると、演算器ユニット133から「切り替え条件コード」が出力されるとともに、所定の遅延後、遅延器134より「切り替え条件発生」が出力される。こうして、切り替え条件の成立を示す切り替え条件信号がシーケンサ20に出力される。なお、遅延器134による遅延時間は、遅延時間0を含め、任意に設定される。
上記の説明では、演算器ユニット131の演算結果の条件判定を演算器ユニット132で行うとしたが、条件判定を行う機構を演算器ユニット内に設けておくこともできる。また、このように条件判定を行う機構をすべての演算器ユニットに備えることもできるし、一部の演算器ユニットのみで条件判定出力を可能にすることもできる。
また、図の例では、演算器ユニット132の判定結果に応じて演算器ユニット133では固定の切り替え条件コードを生成するとしたが、切り替え条件コードを生成する演算器ユニット133に複数の演算器ユニットからの条件判定出力を接続し、どこから出力されたかで、切り替え条件コードを生成するようにしてもよい。このように構成することで、あるステートから次に遷移するステート候補がn個存在する場合に、最大n個の条件判定に基づき、次のステート候補の中から真になるステートを決定することができる。
さらに、ここでは、切り替え条件判定の一例を示したが、このような切り替え条件判定回路を任意の数設けることができる。複数の切り替え条件判定回路を設けることによって、複数の条件判定を同時に行うことができる。
以下、演算器群による切り替え条件を判定する構成について、第1の実施の形態、第2の実施の形態、第3の実施の形態、第4の実施の形態および第5の実施の形態として、それぞれの特徴を順に説明する。なお、以下の説明では構成を回路イメージで表すが、実際には図4に示したように演算器ユニットと配線&スイッチによって構成することができる。
<第1の実施の形態>
第1の実施の形態では、切り替え条件成立を判定する演算器ユニットと切り替え条件コードの関係をハードウェア的に固定する。
図6は、切り替え条件判定回路の第1の実施の形態の構成図である。第1の実施の形態の切り替え条件判定回路は、演算器ユニット301、302、303、304の出力が選択スイッチ401に接続する。
演算器ユニット301、302、303、304は、それぞれ所定の演算を行うとともに、演算結果と切り替え条件が成立するための比較値とを比較して一致するかどうか、すなわち切り替え条件が成立したかどうかをフラグ情報として出力する。演算器ユニット301、302、303、304は、これらの処理を一括して行う演算器ユニットにより構成されても、単体の演算を行う演算器と比較を行う比較器との組み合わせで構成されてもよい。
選択スイッチ401は、4つの入力端子を有し、それぞれの入力端子にステート値がハードウェアによって固定で配線されている。たとえば、第1の入力端子に接続される演算器ユニットにより生成されるステートは、ステート1に固定される。同様に、第2の入力端子はステート2、第3の入力端子はステート3、第4の入力端子はステート4に固定される。これにより、演算器ユニット301とステート1、演算器ユニット302とステート2、演算器ユニット303とステート3、演算器ユニット304とステート4とが対応付けられる。
このような切り替え条件判定回路では、たとえば、演算器ユニット301のフラグ情報がセットされると、選択スイッチ401によりステート1が出力される。同様に、それぞれ対応する演算器ユニットのフラグ情報がセットされると、対応付けられたステートが出力される。
なお、上記では、選択器を4入力から1つを選択する4to1として説明したが、選択器の構成はこれに限定されない。入力側および出力側とも任意で、たとえば、5to1や、7to4などの選択器を用いることもできる。
また、同時に複数のステートを指示する条件が成立した場合には、ハードウェア的に優先順位を保有させる、もしくは、設定情報として登録するなどにより、優先順位の高いステートを選択して出力する。
<第2の実施の形態>
第1の実施の形態では、演算器の出力によって演算器群の判定を行うとしたが、第2の実施の形態では、切り替え条件にカウンタユニットの出力も用いる。図7は、切り替え条件判定回路の第2の実施の形態の構成図である。
第2の実施の形態の切り替え条件判定回路では、演算器ユニット306、308とともにカウンタユニット305、307の出力が選択スイッチ402に接続する。なお、選択スイッチ402は、第1の実施の形態の選択スイッチ401と同様に動作する。
ここで、カウンタユニット305、307の構成について説明する。図8は、第2の実施の形態のカウンタユニットの構成例を示すブロック図である。
カウンタユニットは、切り替え条件が成立する基準値(比較値)を保持する比較値レジスタ501と、たとえばクロック信号などの入力信号をカウントするカウンタ502と、カウンタ502がカウントしたカウント値と比較値レジスタ501の保持する比較値を比較して比較結果をフラグ情報として出力するFLAG発生器(比較器)503より構成される。比較値レジスタ501は、演算器出力結果、あるいは、コンフィギュレーションデータとして設定されたデータを比較値として保持する。
このようなカウンタユニットでは、FLAG発生器(比較器)503は、カウンタ502のカウントする所定の入力信号のカウント値を比較値レジスタ501の保持する比較値と比較し、一致した場合には切り替え条件が発生したことを示すフラグ情報を出力する。
このような構成のカウンタユニット305、307からのフラグ情報、あるいは、演算器ユニット306、308のフラグ情報がセットされると、第1の実施の形態と同様に、選択スイッチ402は対応するステートを出力する。
なお、上記の説明では、切り替え条件として演算器ユニットとカウンタユニットとが混在しているが、切り替え条件をカウンタユニットのみで構成することもできる。また、演算器ユニットがアドレス生成器である場合、アドレス生成器の生成する所定のアドレスを切り替え条件とする切り替え条件回路を同様の構成で構築することができる。
<第3の実施の形態>
第1および第2の実施の形態では、演算器ユニットとステートとの関係をハードウェアによって固定するとしたが、第3の実施の形態では、対応関係をプログラマブルに設定可能にする。図9は、切り替え条件判定回路の第3の実施の形態の構成図である。
第3の実施の形態の切り替え条件判定回路は、第1の実施の形態の演算器ユニット301、302、303、304の出力が、プログラマブルスイッチ403に接続している。プログラマブルスイッチ403は、入力する演算器ユニットとステータスの対応付けを決定するプログラム情報が格納されるプログラム情報レジスタ404の情報をバス経由で入力し、その設定情報に従って、演算器ユニット301、302、303、304のフラグ情報に応じて対応付けられたステートを出力する。
図10は、第3の実施の形態のプログラマブルスイッチの構成例を示した図である。
プログラマブルスイッチ403は、AND回路、選択器およびOR回路で構成される。
AND回路は、それぞれの演算器ユニットからの出力とステートの論理積を算出し、演算器ごとに設けられた選択器に出力する。たとえば、演算器ユニットの出力FLAG1に関し、FLAG1とState1の論理積を算出するAND4031、FLAG1とState2の論理積を算出するAND4032、FLAG1とState3の論理積を算出するAND4033、FLAG1とState4の論理積を算出するAND4034を有する。同様に、FLAG2を出力する演算器ユニット、FLAG3を出力する演算器ユニットに関するAND回路が設けられ、FLAG4を出力する演算器ユニットに関し、FLAG4とState1の論理積を算出するAND4035、FLAG4とState2の論理積を算出するAND4036、FLAG4とState3の論理積を算出するAND4037、FLAG4とState4の論理積を算出するAND4038を有する。
選択器403a、・・・、403bは、FLAG情報ごとに設けられたAND回路の出力を入力し、プログラム情報レジスタ404aに格納されたプログラム情報に基づいて、AND回路のいずれかの出力を選択出力する。たとえば、選択器403aは、FLAG1について設けられ、FLAG1に関するAND回路4031、4032、4033、4034の出力のうちプログラム情報によって設定されたものを選択出力する。プログラム情報レジスタ404aには、回路構成を決めるためのコンフィギュレーションメモリと同様の情報が格納されている。同様に、選択器403bは、FLAG4に関するAND回路4035、4036、4037、4038の出力のうちプログラム情報によって設定されたものを選択出力する。
OR回路403cは、選択器403a、・・・、403bの出力の論理和を算出し、次のステートとして出力する。
このように、プログラマブルスイッチを用いて演算器ユニットとステートを対応付けることにより、設計時の自由度が増す。
<第4の実施の形態>
第1、第2、第3の実施の形態では、切り替え条件として演算器やカウンタの出力を用いたが、第4の実施の形態では、メモリインタフェースによって所定のメモリもしくは所定のデータがリード/ライトされた場合を切り替え条件とする。図11は、切り替え条件判定回路の第4の実施の形態の構成図である。
第4の実施の形態の切り替え条件判定回路は、メモリ部601に対するリード時の切り替え条件判定を行う比較器602、比較値レジスタ603および可変シフト器604と、メモリ部601に対するライト時の切り替え条件判定を行う比較器605、比較値レジスタ606および可変シフト器607を有する。
比較器602、605は、リード/ライト時のアドレスもしくはデータを入力し、比較値レジスタ603、606に保持される切り替え条件が成立する比較値と比較を行って、切り替え条件が成立したかどうかを判定する。
可変シフト器604、607は、比較器602、605の生成した切り替え条件が成立したかどうかを示すフラグ情報を入力し、所定の時間遅延して出力する。遅延時間は、可変に設定することができる。これにより、メモリへの書き込みが終了したタイミングなどのタイミングを見計らって、切り替えを行うことができる。
このような切り替え条件判定回路では、メモリ部601の所定のアドレス、もしくは、格納されるデータの最後を示す特殊コードなどのデータを比較値レジスタ603、606に設定しておくことにより、所定のアドレスへのリード/ライト、もしくは所定のデータのリード/ライト時に切り替え条件を成立させることができる。比較器602、605は、アドレスもしくはデータと比較値レジスタ603、606の保持する比較値を比較し、切り替え条件を判定する。切り替え条件成立のフラグ情報は、可変シフト器604、607によって、任意の時間遅延された後、出力される。
<第5の実施の形態>
第5の実施の形態では、多重FOR文を実装する場合について説明する。図12は、切り替え条件判定回路の第5の実施の形態の構成図である。
第5の実施の形態の切り替え条件判定回路は、複数のカウンタユニットがキャリー出力によってシリアルに結線される。図の例では、カウンタユニット701のキャリー出力がカウンタユニット702に接続され、カウンタユニット702のキャリー出力がカウンタユニット703に接続される構成となっている。それぞれのカウンタユニットは、図8のカウンタユニットと同様な構成で、計数されるカウント値が切り替え条件の成立する比較値と一致すると、フラグ情報を出力するとともに、キャリー出力を行う。また、カウンタユニット701、702、703は、それぞれステートと対応付けられており、図の例では、カウンタユニット701はステート2、カウンタユニット702はステート3、カウンタユニット703はステート4に対応付けられている。
このような構成の切り替え条件判定回路では、カウンタユニット701によるカウントが所定の比較値に到達すると、ステート2に対応するフラグ情報が出力されるとともに、キャリーがカウンタユニット702に出力され、カウンタユニット702がカウントを開始する。続いて、カウンタユニット702のカウント値が比較値に一致すると、ステート3が出力され、キャリーがカウンタユニット703に出力される。そして、カウンタユニット703がカウントを開始し、カウント値が比較値に一致すると、ステート4に対応するフラグ情報が出力される。これにより、カウンタユニット701、702、703を低ビットのカウンタで構成しても、多ビットのカウンタとして利用することができる。また、ステートごとに所定のアプリケーションを定義しておけば、それぞれの切り替え条件成立で処理を行う、多重FOR文の1つのFOR文が実行できる。
たとえば、
FOR(条件A){
ステート3
FOR (条件B){
ステート2
FOR (条件C){
ステート1



によって表される多重FOR文を実装するため、最も内側のFOR文内での処理をステート1で表現し、その外側のFOR文内での処理をステート2で表現し、さらにその外側のFOR文内で処理をステート3に表現しておく。そして、カウンタユニット701において切り替え条件Cの成立の判定を行い、カウンタユニット702で切り替え条件B、カウンタユニット703で切り替え条件Aの成立の判定を行うよう構成する。
これにより、条件Cが成立してカウンタユニット701のフラグ(ステート2)が出力された段階でステート1を終了し、その外側のFOR文にあるステート2の実行が開始される。同様に、条件Bが成立してカウンタユニット702のフラグ(ステート3)によりステート2が終了し、ステート3が開始される。このように、シリアルに結線したカウンタユニットを多重FOR文内の1つのFOR文用カウンタとして用いることによって、従来では実装不可能であった多重FOR分の実装を容易に実現することができる。
(付記1) 複数の演算器を含む演算器群と、前記演算器群の動作を制御するシーケンサを有する再構成可能演算装置において、
前記演算器群を構成する任意の構成要素の出力を前記演算器群の動作を切り替えるための切り替え条件とし、切り替え条件コードに対応付ける切り替え条件対応付け部と、
前記切り替え条件対応付け部によって前記切り替え条件に設定された前記構成要素の出力が出力されるごとに前記切り替え条件が成立するかどうかを判定し、成立した前記切り替え条件に応じた前記切り替え条件コードを出力する切り替え条件コード出力部と、
を具備することを特徴とする再構成可能演算装置。
(付記2) 前記切り替え条件対応付け部は、所定の前記構成要素の出力と、前記構成要素の出力に対応付けられる前記切り替え条件コードとの関係を予め配線によって対応付けることを特徴とする付記1記載の再構成可能演算装置。
(付記3) 前記切り替え条件対応付け部は、任意の前記構成要素の出力と、前記構成要素の出力に対応付けられる前記切り替え条件コードとの間の接続関係をプログラム情報としてプログラム情報格納部に格納することを特徴とする付記1記載の再構成可能演算装置。
(付記4) 前記切り替え条件コード出力部は、前記構成要素の出力と前記切り替え条件コードとの間の対応付けを複数管理し、入力される複数の前記構成要素の出力について前記切り替え条件が成立した場合に、予め決められた優先度に従っていずれかの前記切り替え条件コードを選択することを特徴とする付記1記載の再構成可能演算装置。
(付記5) 前記演算器群は、前記構成要素の動作および前記構成要素間の接続関係を記述した設定情報に基づいて動作を行い、前記切り替え条件対応付け部および前記切り替え条件コード出力部は、前記設定情報に前記演算器群を構成する前記構成要素の組み合わせを登録して構築されることを特徴とする付記1記載の再構成可能演算装置。
(付記6) 前記切り替え条件に対応付けられる前記構成要素には、所定の演算を行う演算器と、前記切り替え条件が成立する比較値を記憶する比較値記憶部と、前記演算器の演算結果と前記比較値記憶部に格納された前記比較値を比較して比較結果を出力する比較器と、を有する演算器ユニットが含まれることを特徴とする付記1記載の再構成可能演算装置。
(付記7) 前記切り替え条件に対応付けられる前記構成要素には、所定の数をカウントするカウンタと、前記切り替え条件が成立する比較カウント値を記憶する比較値記憶部と、前記カウンタのカウントする現在のカウント値と前記比較値記憶部に格納された比較カウンタ値とを比較して比較結果を出力する比較器と、を有するカウンタユニットが含まれることを特徴とする付記1記載の再構成可能演算装置。
(付記8) 前記カウンタユニットのキャリー出力によって複数の前記カウンタユニットをシリアルに結線するとともに、前記切り替え条件対応付け部によってシリアルに結線された前記カウンタユニットそれぞれに前記切り替え条件コードを対応付けて多重FOR文を構成することを特徴とする付記7記載の再構成可能演算装置。
(付記9) 前記切り替え条件に対応付けられる前記構成要素には、所定のデータが格納されるメモリ部と、前記切り替え条件が成立する前記メモリ部の比較アドレスまたは比較データを格納する比較値記憶部と、前記メモリ部への書き込みまたは読み出し時の指定アドレスあるいは書き込みまたは読み出しデータを前記比較値記憶部の前記比較アドレスあるいは前記比較データと比較して比較結果を出力する比較器と、を有するメモリユニットが含まれることを特徴とする付記1記載の再構成可能演算装置。
(付記10) 前記メモリユニットは、さらに、前記比較器の出力を入力して任意の時間遅延させた後出力する遅延器を有することを特徴とする付記9記載の再構成可能演算装置。
(付記11) 複数の演算器を含む演算器群と、前記演算器群の動作を制御するシーケンサとを有し、前記シーケンサによって前記演算器群の動作状態を再構成する半導体装置において、
前記演算器群を構成する任意の構成要素の出力を前記演算器群の動作を切り替えるための切り替え条件とし、切り替え条件コードに対応付ける切り替え条件対応付け部と、
前記切り替え条件対応付け部によって前記切り替え条件に設定された前記構成要素の出力が出力されるごとに前記切り替え条件が成立するかどうかを判定し、成立した前記切り替え条件に応じた前記切り替え条件コードを出力する切り替え条件コード出力部と、
前記切り替え条件コード出力部の出力した前記切り替え条件コードに応じて前記演算器群の動作状態を切り替えるシーケンサと、
を具備することを特徴とする半導体装置。
実施の形態に適用される発明の概念図である。 実施の形態の再構成可能演算装置の全体構成を示すブロック図である。 実施の形態のコンフィギュレーションメモリの構成の一例を示した図である。 実施の形態の配線&スイッチの構成の一例を示した図である。 実施の形態の切り替え条件を判定する演算器群の構成の一例を示すブロック図である。 切り替え条件判定回路の第1の実施の形態の構成図である。 切り替え条件判定回路の第2の実施の形態の構成図である。 第2の実施の形態のカウンタユニットの構成例を示すブロック図である。 切り替え条件判定回路の第3の実施の形態の構成図である。 第3の実施の形態のプログラマブルスイッチの構成例を示した図である。 切り替え条件判定回路の第4の実施の形態の構成図である。 切り替え条件判定回路の第5の実施の形態の構成図である。 従来のDAP/DNAにおける演算器群の内容切り替え方式を示した模式図である。
符号の説明
1a、1b、1c、1d 演算器ユニット
2 切り替え条件対応付け部
2a ステート1対応付け部
2b ステート2対応付け部
2c ステート3対応付け部
2d ステート4対応付け部
3 切り替え条件コード出力部

Claims (10)

  1. 複数の演算器を含む演算器群と、前記演算器群の動作を制御するシーケンサを有する再構成可能演算装置において、
    前記演算器群を構成する任意の構成要素の出力を前記演算器群の動作を切り替えるための切り替え条件とし、切り替え条件コードに対応付ける切り替え条件対応付け部と、
    前記切り替え条件対応付け部によって前記切り替え条件に設定された前記構成要素の出力が出力されるごとに前記切り替え条件が成立するかどうかを判定し、成立した前記切り替え条件に応じた前記切り替え条件コードを出力する切り替え条件コード出力部と、
    を具備することを特徴とする再構成可能演算装置。
  2. 前記切り替え条件対応付け部は、所定の前記構成要素の出力と、前記構成要素の出力に対応付けられる前記切り替え条件コードとの関係を予め配線によって対応付けることを特徴とする請求項1記載の再構成可能演算装置。
  3. 前記切り替え条件対応付け部は、任意の前記構成要素の出力と、前記構成要素の出力に対応付けられる前記切り替え条件コードとの間の接続関係をプログラム情報としてプログラム情報格納部に格納することを特徴とする請求項1記載の再構成可能演算装置。
  4. 前記切り替え条件コード出力部は、前記構成要素の出力と前記切り替え条件コードとの間の対応付けを複数管理し、入力される複数の前記構成要素の出力について前記切り替え条件が成立した場合に、予め決められた優先度に従っていずれかの前記切り替え条件コードを選択することを特徴とする請求項1記載の再構成可能演算装置。
  5. 前記演算器群は、前記構成要素の動作および前記構成要素間の接続関係を記述した設定情報に基づいて動作を行い、前記切り替え条件対応付け部および前記切り替え条件コード出力部は、前記設定情報に前記演算器群を構成する前記構成要素の組み合わせを登録して構築されることを特徴とする請求項1記載の再構成可能演算装置。
  6. 前記切り替え条件に対応付けられる前記構成要素には、所定の数をカウントするカウンタと、前記切り替え条件が成立する比較カウント値を記憶する比較値記憶部と、前記カウンタのカウントする現在のカウント値と前記比較値記憶部に格納された比較カウンタ値とを比較して比較結果を出力する比較器と、を有するカウンタユニットが含まれることを特徴とする請求項1記載の再構成可能演算装置。
  7. 前記カウンタユニットのキャリー出力によって複数の前記カウンタユニットをシリアルに結線するとともに、前記切り替え条件対応付け部によってシリアルに結線された前記カウンタユニットそれぞれに前記切り替え条件コードを対応付けて多重FOR文を構成することを特徴とする請求項6記載の再構成可能演算装置。
  8. 前記切り替え条件に対応付けられる前記構成要素には、所定のデータが格納されるメモリ部と、前記切り替え条件が成立する前記メモリ部の比較アドレスまたは比較データを格納する比較値記憶部と、前記メモリ部への書き込みまたは読み出し時の指定アドレスあるいは書き込みまたは読み出しデータを前記比較値記憶部の前記比較アドレスあるいは前記比較データと比較して比較結果を出力する比較器と、を有するメモリユニットが含まれることを特徴とする請求項1記載の再構成可能演算装置。
  9. 前記メモリユニットは、さらに、前記比較器の出力を入力して任意の時間遅延させた後出力する遅延器を有することを特徴とする請求項8記載の再構成可能演算装置。
  10. 複数の演算器を含む演算器群と、前記演算器群の動作を制御するシーケンサとを有し、前記シーケンサによって前記演算器群の動作状態を再構成する半導体装置において、
    前記演算器群を構成する任意の構成要素の出力を前記演算器群の動作を切り替えるための切り替え条件とし、切り替え条件コードに対応付ける切り替え条件対応付け部と、
    前記切り替え条件対応付け部によって前記切り替え条件に設定された前記構成要素の出力が出力されるごとに前記切り替え条件が成立するかどうかを判定し、成立した前記切り替え条件に応じた前記切り替え条件コードを出力する切り替え条件コード出力部と、
    前記切り替え条件コード出力部の出力した前記切り替え条件コードに応じて前記演算器群の動作状態を切り替えるシーケンサと、
    を具備することを特徴とする半導体装置。
JP2004188095A 2004-06-25 2004-06-25 再構成可能演算装置および半導体装置 Ceased JP2006011825A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004188095A JP2006011825A (ja) 2004-06-25 2004-06-25 再構成可能演算装置および半導体装置
EP05250189A EP1615142A3 (en) 2004-06-25 2005-01-14 Reconfigurable processor and semiconductor device
US11/037,049 US20050289327A1 (en) 2004-06-25 2005-01-19 Reconfigurable processor and semiconductor device
CNB2005100051358A CN100412789C (zh) 2004-06-25 2005-01-28 可重构处理器和半导体器件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004188095A JP2006011825A (ja) 2004-06-25 2004-06-25 再構成可能演算装置および半導体装置

Publications (1)

Publication Number Publication Date
JP2006011825A true JP2006011825A (ja) 2006-01-12

Family

ID=35148782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004188095A Ceased JP2006011825A (ja) 2004-06-25 2004-06-25 再構成可能演算装置および半導体装置

Country Status (4)

Country Link
US (1) US20050289327A1 (ja)
EP (1) EP1615142A3 (ja)
JP (1) JP2006011825A (ja)
CN (1) CN100412789C (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006302132A (ja) * 2005-04-22 2006-11-02 Yaskawa Electric Corp 信号処理装置及び再構成可能論理回路装置及び再構成可能順序回路
JP2009075875A (ja) * 2007-09-20 2009-04-09 Fujitsu Microelectronics Ltd カウンタ回路、動的再構成回路およびループ処理制御方法
JP2009157773A (ja) * 2007-12-27 2009-07-16 Fujitsu Microelectronics Ltd カウンタ制御回路、動的再構成回路およびループ処理制御方法
JP2015505399A (ja) * 2011-12-15 2015-02-19 マイクロン テクノロジー, インク. 状態機械格子におけるカウンタ動作
KR101922762B1 (ko) 2012-07-18 2018-11-27 마이크론 테크놀로지, 인크. 상태 머신 엔진을 프로그래밍하기 위한 방법 및 디바이스

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008059066A (ja) * 2006-08-29 2008-03-13 Matsushita Electric Ind Co Ltd コンパイラ装置および半導体集積回路装置
CN101782893B (zh) * 2009-01-21 2014-12-24 上海芯豪微电子有限公司 可重构数据处理平台
CN102207851B (zh) * 2011-05-27 2013-07-17 清华大学 一种动态可重构处理器内调用立即数的方法
CN103207852B (zh) * 2013-04-03 2016-03-02 北京华清瑞达科技有限公司 多总线嵌入式处理装置
US10019260B2 (en) * 2013-09-20 2018-07-10 Via Alliance Semiconductor Co., Ltd Fingerprint units comparing stored static fingerprints with dynamically generated fingerprints and reconfiguring processor settings upon a fingerprint match
FR3083350B1 (fr) * 2018-06-29 2021-01-01 Vsora Acces memoire de processeurs

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5646544A (en) * 1995-06-05 1997-07-08 International Business Machines Corporation System and method for dynamically reconfiguring a programmable gate array
US5583450A (en) * 1995-08-18 1996-12-10 Xilinx, Inc. Sequencer for a time multiplexed programmable logic device
US6023564A (en) * 1996-07-19 2000-02-08 Xilinx, Inc. Data processing system using a flash reconfigurable logic device as a dynamic execution unit for a sequence of instructions
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.)
US5970254A (en) * 1997-06-27 1999-10-19 Cooke; Laurence H. Integrated processor and programmable data path chip for reconfigurable computing
US5915123A (en) * 1997-10-31 1999-06-22 Silicon Spice Method and apparatus for controlling configuration memory contexts of processing elements in a network of multiple context processing elements
US6282627B1 (en) * 1998-06-29 2001-08-28 Chameleon Systems, Inc. Integrated processor and programmable data path chip for reconfigurable computing
US6205537B1 (en) * 1998-07-16 2001-03-20 University Of Rochester Mechanism for dynamically adapting the complexity of a microprocessor
US6539438B1 (en) * 1999-01-15 2003-03-25 Quickflex Inc. Reconfigurable computing system and method and apparatus employing same
US6654934B1 (en) * 2002-03-28 2003-11-25 Cyrpess Semiconductor Corporation Programmable event engine
CN1228711C (zh) * 2002-07-15 2005-11-23 北京南思达科技发展有限公司 一种可重构寄存器堆及其构造方法
GB0224023D0 (en) * 2002-10-16 2002-11-27 Roysmith Graeme Reconfigurable integrated circuit
JP2006018413A (ja) * 2004-06-30 2006-01-19 Fujitsu Ltd プロセッサおよびパイプライン再構成制御方法
JP4594666B2 (ja) * 2004-07-12 2010-12-08 富士通株式会社 再構成可能な演算装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006302132A (ja) * 2005-04-22 2006-11-02 Yaskawa Electric Corp 信号処理装置及び再構成可能論理回路装置及び再構成可能順序回路
JP2009075875A (ja) * 2007-09-20 2009-04-09 Fujitsu Microelectronics Ltd カウンタ回路、動的再構成回路およびループ処理制御方法
JP2009157773A (ja) * 2007-12-27 2009-07-16 Fujitsu Microelectronics Ltd カウンタ制御回路、動的再構成回路およびループ処理制御方法
JP2015505399A (ja) * 2011-12-15 2015-02-19 マイクロン テクノロジー, インク. 状態機械格子におけるカウンタ動作
US9665083B2 (en) 2011-12-15 2017-05-30 Micron Technology, Inc. Counter operation in a state machine lattice
US9886017B2 (en) 2011-12-15 2018-02-06 Micron Technology, Inc. Counter operation in a state machine lattice
KR101922762B1 (ko) 2012-07-18 2018-11-27 마이크론 테크놀로지, 인크. 상태 머신 엔진을 프로그래밍하기 위한 방법 및 디바이스
US10509995B2 (en) 2012-07-18 2019-12-17 Micron Technology, Inc. Methods and devices for programming a state machine engine
US11599770B2 (en) 2012-07-18 2023-03-07 Micron Technology, Inc. Methods and devices for programming a state machine engine

Also Published As

Publication number Publication date
CN1713133A (zh) 2005-12-28
US20050289327A1 (en) 2005-12-29
EP1615142A2 (en) 2006-01-11
CN100412789C (zh) 2008-08-20
EP1615142A3 (en) 2009-04-22

Similar Documents

Publication Publication Date Title
EP1615142A2 (en) Reconfigurable processor and semiconductor device
US7953956B2 (en) Reconfigurable circuit with a limitation on connection and method of determining functions of logic circuits in the reconfigurable circuit
US9411554B1 (en) Signed multiplier circuit utilizing a uniform array of logic blocks
JPH11251442A (ja) 再構成可能プロセッサデバイス
JP4485272B2 (ja) 半導体装置
US7263602B2 (en) Programmable pipeline fabric utilizing partially global configuration buses
US20070074001A1 (en) Reconfigurable integrated circuit device
US7746110B1 (en) Circuits for fanning out data in a programmable self-timed integrated circuit
JPWO2010106738A1 (ja) 再構成可能な論理回路
US9002915B1 (en) Circuits for shifting bussed data
EP1612694A1 (en) Processor with a reconfigurable ALU array
US7509479B2 (en) Reconfigurable global cellular automaton with RAM blocks coupled to input and output feedback crossbar switches receiving clock counter value from sequence control unit
JP4255475B2 (ja) データ駆動型情報処理装置
US8041925B2 (en) Switch coupled function blocks with additional direct coupling and internal data passing from input to output to facilitate more switched inputs to second block
US20050289328A1 (en) Reconfigurable processor and semiconductor device
Ferreira et al. A low cost and adaptable routing network for reconfigurable systems
US20070220236A1 (en) Reconfigurable computing device
JP5633303B2 (ja) リコンフィグ可能なlsi
US9081901B2 (en) Means of control for reconfigurable computers
JP5116499B2 (ja) 演算処理回路
JP5171971B2 (ja) 半導体集積回路
JP5701930B2 (ja) 半導体装置
JP4958224B2 (ja) 処理回路
JP2004062401A (ja) 演算プロセッサおよび当該演算プロセッサを用いたカメラ装置
JP2010087880A (ja) 半導体集積回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070409

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090317

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090515

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090630

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20091027