JP3896083B2 - Reconfigurable circuit and integrated circuit device using it - Google Patents

Reconfigurable circuit and integrated circuit device using it Download PDF

Info

Publication number
JP3896083B2
JP3896083B2 JP2003007655A JP2003007655A JP3896083B2 JP 3896083 B2 JP3896083 B2 JP 3896083B2 JP 2003007655 A JP2003007655 A JP 2003007655A JP 2003007655 A JP2003007655 A JP 2003007655A JP 3896083 B2 JP3896083 B2 JP 3896083B2
Authority
JP
Japan
Prior art keywords
connection
input
circuit
stage
alu
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.)
Expired - Lifetime
Application number
JP2003007655A
Other languages
Japanese (ja)
Other versions
JP2004221997A (en
Inventor
洋 中島
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2003007655A priority Critical patent/JP3896083B2/en
Publication of JP2004221997A publication Critical patent/JP2004221997A/en
Application granted granted Critical
Publication of JP3896083B2 publication Critical patent/JP3896083B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Logic Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、集積回路技術に関し、特にリコンフィギュラブル回路、およびそれを利用可能な集積回路装置に関する。
【0002】
【従来の技術】
FPGA(Field Programmable Gate Array)はLSI製造後に回路データを書き込んで比較的自由に回路構成を設計することが可能であり、専用ハードウエアの設計に利用されている。FPGAは、論理回路の真理値表を格納するためのルックアップテーブル(LUT)と出力用のフリップフロップからなる基本セルと、その基本セル間を結ぶプログラマブルな配線リソースとを含む。FPGAでは、LUTに格納するデータと配線データを書き込むことで目的とする論理演算を実現できる。しかし、FPGAでLSIを設計した場合、ASIC(Application Specific IC)による設計と比べると、実装面積が非常に大きくなり、コスト高になる。そこで、FPGAを動的に再構成することで、回路構成の再利用を図る方法が提案されている(たとえば、特許文献1参照)。
【0003】
【特許文献1】
特開平10−256383号公報 (全文、第1−4図)
【0004】
【発明が解決しようとする課題】
特に携帯電話やPDA(Personal Data Assistant)などのモバイル端末に搭載されるLSIは小型化が必須であり、LSIを動的に再構成して、用途に合わせて適宜機能を切り替えることができれば、LSIの実装面積を抑えることができる。また、衛星放送では、電波が雨の水滴に当たると弱まり届きにくくなる性質があるため、降雨時には、雨の影響を受けにくい低解像度の画面を同時に送る降雨対応放送にモードを切り替えて放送することがあるが、受信機では、放送モードごとに回路を別構成で設け、放送モードに合わせて回路を切り替えて放送を受信している。雨が降り始めると、放送モードが切り替わり、晴れるまでそのモードでの放送が続くが、その間、受信機の他の放送モード用の回路は遊んでいることになる。モード切り替えのように、複数の専用回路を切り替えて使用し、その切り替え間隔が比較的長い場合、複数の専用回路を作り込む代わりに、切り替え時にLSIを瞬時に再構成することにすれば、回路構造をシンプルにして汎用性を高め、同時に実装コストを抑えることができる。このようなニーズに応えるべく、動的に再構成可能なLSIに製造業界の関心が集まっている。
【0005】
FPGAは回路構成の設計の自由度が高く、汎用的である反面、全ての基本セル間の接続を可能とするため、多数のスイッチとスイッチのON/OFFを制御するための制御回路を含み、制御回路の実装面積が大きくなる。また、基本セル間を接続するために複雑な配線パターンを取るため、配線が長くなる傾向があり、また1本の配線に多くのスイッチが接続される構造であるため、遅延が大きくなる。そのため、FPGAによるLSIは、試作や実験のために利用されるにとどまることが多く、実装効率、性能、コストなどを考えると、量産には適していない。
【0006】
さらに、FPGAでは、多数のLUT方式の基本セルに設定データを送る必要があるため、回路のコンフィグレーションにはかなりの時間がかかる。したがって、瞬時に回路構成の切り替えが必要な用途にはFPGAは一切使うことができない。
【0007】
本発明はこうした状況に鑑みてなされたもので、その目的は、実装面積、消費電力、回路再構成速度などの面から見て有利なリコンフィギュラブル回路およびそれを利用した集積回路装置の提供にある。
【0008】
【課題を解決するための手段】
本発明のある態様は、リコンフィギュラブル回路に関する。この回路は、それぞれが複数の演算機能を選択的に実行可能な論理回路の多段配列と、前段の論理回路の出力と後段の論理回路の入力の接続関係を設定可能な接続部とを含み、前記接続部には、論理回路間の接続用結線とは別に、途中段の論理回路へのデータの直接入力が可能な入力用結線が設けられている。接続部は、論理回路の出力を他の論理回路の入力に接続するための接続用結線を有し、設定により特定の接続関係にある結線を有効にすることができる。
【0009】
上段から下段に向かって演算が進められる論理回路の多段配列において、最上段の論理回路列には、入力変数や定数のデータが直接入力される。途中段すなわち第2段以降の論理回路列には、一般には、前段の論理回路列からの出力結果が入力されるが、処理する演算によっては、必要に応じて、第2段以降の論理回路列に入力変数や定数のデータが直接入力される。そのために、第2段以降の論理回路列にデータを直接入力するための入力用結線が設けられる。
【0010】
各論理回路は、比較的高性能な演算が可能な回路であってもよく、たとえば、複数種類の多ビット演算を選択的に実行可能な算術論理回路(ALU)であってもよい。外部からロードされた設定データにより、各論理回路において、複数の演算機能の内、いずれを選択するかが設定されてもよい。ALUのように各論理回路内で特定の機能が構築されている場合には、リコンフィギュラブル回路全体で実行する演算に必要なデータを入力すべき論理回路が比較的容易に特定できるので、途中段への直接入力のために設けられた結線が有効に利用される。
【0011】
論理回路の多段配列の構造は、横方向に並べられた論理回路の列が縦方向に複数段組み合わされた配列において、横方向の論理回路間の接続用結線はなく、各段の論理回路列の出力と直後の段の論理回路列の入力との間に接続用結線が設けられた構造であってもよい。接続結線を縦方向のみにした場合、回路規模を小さくしてシンプルな構造にすることができるが、横方向にも接続結線を設けたメッシュ構造であれば、同じ数の論理回路の配列でより複雑な演算を実行できる。
【0012】
前記入力用結線は各段の接続部に設けてもよく、少なくとも一部の段、たとえば、途中段の内、上位のn段(nは整数)に制限して設けてもよい。さらに、同一段に配置された前記論理回路の一部の列に制限して入力用結線を設けてもよい。一般に、多段の論理回路を用いて上の段から下の段へ演算を進める場合、上段の論理回路ほど多数のデータの入力を必要とし、下段に進むほど、演算に必要な論理回路の数が減るといった逆三角形の演算構造になることが多い。このため、上位段の論理回路には入力用結線を多めに設けることで、論理回路配列の有効利用が可能となる。
【0013】
本発明のさらに別の態様は集積回路装置に関する。この装置は、複数の演算機能を選択的に実行可能な論理回路が、途中段の論理回路へのデータの直接入力が可能な多段アレイ構造で接続されたリコンフィギュラブル回路と、前記リコンフィギュラブル回路における各論理回路の機能と論理回路間の入出力の接続関係を設定するための設定データを記憶する記憶部と、前記記憶部から前記設定データを読み込み、前記リコンフィギュラブル回路にロードする設定部とを含む。前記設定データで設定される論理回路の演算機能と論理回路間の入出力の接続関係は、処理すべき演算のデータフローを表すグラフを、途中段の論理回路へのデータの直接入力を適宜利用した形式で、多段アレイ構造の論理回路にマッピングすることにより生成されてもよい。このマッピングにより、入力変数や定数などのデータの直接入力を要する途中段の論理回路を特定することができ、必要なデータを直接その論理回路に供給することが可能である。
【0014】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、コンピュータプログラムとして表現したものもまた、本発明の態様として有効である。
【0015】
【発明の実施の形態】
図1は、実施の形態に係る集積回路装置10および外部制御装置24の構成図である。外部制御装置24は、集積回路装置10の回路構成を設定するためのデータを作成して、集積回路装置10に供給するものである。
【0016】
集積回路装置10は、リコンフィギュラブル回路12と、リコンフィギュラブル回路12を再構成するための設定データ17を格納する設定データ記憶部16と、リコンフィギュラブル回路12に設定データ17をロードする設定部14とを含む。外部制御装置24は、制御部18と、コンパイル部20と、プログラム記憶部22とを含む。
【0017】
外部制御装置24のプログラム記憶部22は、集積回路装置10が実行すべき各種のプログラム19を保持する。コンパイル部20はプログラム記憶部22に格納されたプログラム19をコンパイルして、データフローグラフ21に変換してプログラム記憶部22に格納する。データフローグラフ21は、後述のように、入力変数および定数の演算の流れをグラフ構造で示したものである。
【0018】
データフローグラフ21は、リコンフィギュラブル回路12の回路構成にマッピングするための設定データ17に変換され、制御部18を介して、集積回路装置10の設定部14に供給され、設定データ記憶部16に格納される。設定データ記憶部16には、処理すべき演算のデータフローグラフ21に対応して複数の設定データ17があらかじめ格納される。設定部14は、設定データ記憶部16から適宜設定データ17を読み出し、リコンフィギュラブル回路12にロードすることで、リコンフィギュラブル回路12を再構成する。再構成されたリコンフィギュラブル回路12は、ロードされた設定データ17にもとづいた演算を行う。
【0019】
図2は、リコンフィギュラブル回路12の構成図である。リコンフィギュラブル回路12は、複数のALU(Arithmetic Logic Unit)の列が複数段にわたって配列されたもので、各段に設けられた接続結線30によって、前段のALU列の出力と後段のALU列の入力が設定により任意に接続可能となっている。さらに、最初の段を除く途中段のALU列については、入力変数や定数の直接入力のための入力用結線が各段の接続結線30に設けられている。各ALUは、論理和、論理積、ビットシフトなどの複数種類の多ビット演算を設定により選択的に実行できる。
【0020】
同図のように、横方向にはY個、縦方向にはX個のALUが配置されており、第1段のALU11、ALU12、・・・、ALU1Yには、入力変数や定数が入力され、設定により所定の演算がなされる。演算結果の出力は、第1段の接続結線30に設定された接続にしたがって、第2段のALU21、ALU22、・・・、ALU2Yに入力される。第1段の接続結線30には、第1段のALU列の出力と第2段のALU列の入力の間の任意の接続関係を実現できるように結線が構成されており、設定により特定の結線が有効となる。さらに、第1段の接続結線30には、第2段のALU21、ALU22、・・・、ALU2Yにデータを直接入力するための第2段用直接入力結線が設けられている。以下、第(X−1)段の接続結線30まで、同様の構成であり、最終段である第X段のALU列は演算の最終結果を出力する。
【0021】
データフローグラフ21をリコンフィギュラブル回路12にマッピングするための設定データ17には、各ALUの演算を選択する情報、ALU列間の接続結線を選択する情報、第1段および途中段のALU列の入力結線を選択する情報、および入力される変数と定数の値が含まれる。
【0022】
データフローグラフ21は、一般に、演算の段階が進むにつれて、必要なALUの数が減っていく逆三角形状のグラフ構造になることが多いが、第1段のALU列だけでなく、途中段のALU列にもデータの入力が可能に構成することで、横方向のALU列の個数による制約を受けることなく、データフローグラフ21をリコンフィギュラブル回路12にマッピングすることが可能となる。
【0023】
図3から図5は、途中入力の可能なALU配列に制約をもたせたリコンフィギュラブル回路12を説明する図である。すべてのALUに途中入力を可能とすると、直接入力結線により接続結線30の回路規模が大きくなるため、途中入力の可能なALU配列の段数や列数を限定することが実装面積を少なくする点で有利である。
【0024】
図3は、途中入力可能なALU配列の段数を限定した場合のリコンフィギュラブル回路12の例である。縦4段、横4列のリコンフィギュラブル回路12の第1段および第2段の接続結線32のみに直接入力結線が設けられ、第2段および第3段のALU列へのデータの直接入力が可能である。
【0025】
図4は、途中入力可能なALU配列の列数を限定した場合のリコンフィギュラブル回路12の例である。リコンフィギュラブル回路12の全段の接続結線36に、直接入力結線が設けられるが、横方向については、左から2列までに限定される。たとえば、第1段の接続結線36には、第2段のALU列の内、第1列のALU21および第2列のALU22についてのみ直接入力が可能である。
【0026】
図5は、途中入力可能なALU配列の段数、列数をともに限定した場合のリコンフィギュラブル回路12の例である。リコンフィギュラブル回路12の第1段および第2段の接続結線38にのみ直接入力結線が設けられ、横方向についても、左から2列までに限定され、第2段の第1、第2列、および第3段の第1、第2列のALUに対してのみデータの直接入力が可能である。
【0027】
図6は、データフローグラフ21の例を示す図である。このデータフローグラフ21は、入力X、Yの乗算を示す。図中、演算子は丸印で示され、「+」は論理和、「&」は論理積、「<<」は左ビットシフト、「>>」は右ビットシフト、「==」は等号成立判定、「SEL」は判定結果による真(T)、偽(F)のいずれかの選択を行う演算子である。また、入力変数、定数、および出力を四角で示す。実線はデータ信号線、点線は選択演算子からの選択信号である。入力X、Yは共に正の整数であり、Yは2ビットである。このデータフローグラフ21による乗算の結果が出力ANSとして最終的に出力される。
【0028】
図7は、途中段への直接入力のできないリコンフィギュラブル回路12に図6のデータフローグラフ21をマッピングした例を示す。いずれの接続結線42にも直接入力結線は設けられていないため、すべての入力変数X、Yおよび定数(符号46〜60で示す)を最初の段のALU列に入力しなければならない。入力変数および定数の入力のために、横方向に8列のALUが必要であり、また、5段階の演算を行うために縦方向に5段のALU列が必要である。したがって、同図のように、縦5段、横8列のリコンフィギュラブル回路12にデータフローグラフ21がマッピングされる。図中、使用されるALUを実線の丸印で示し、使用されないALUを点線の丸印で示す。「MOV」は入力値を演算せずにそのまま出力することを示す。後半の段においてかなりの数のALUが使用されないことになり、ALU配列の利用効率が良くない。
【0029】
図8は、途中段への直接入力のできるリコンフィギュラブル回路12に図6のデータフローグラフ21をマッピングした例を示す。この場合、直接入力付き接続結線44が全段に設けられ、図7において第1段のALU列に入力されていた一部の定数50、52、58、60を、図8においては第2段および第3段のALU列に直接入力することにより、縦5段、横4列のリコンフィギュラブル回路12にデータフローグラフ21がマッピングされる。
【0030】
図9(a)は、図7の接続結線42、図9(b)は図8の直接入力付き接続結線44の構成を説明する図である。図7の接続結線42は、前段のALU列からの4つのデータ信号ALUX1〜ALUX4の中から1つを選択するためのnビットの4対1セレクタ62と、前段のALU列からの4つの選択信号ALUX1LSB〜ALUX4LSBの中から1つを選択するための1ビットの4対1セレクタ64を含む。セレクタ62、64の出力結果は、後段のALU列の各ALU66に入力される。したがって、セレクタ62、64を設定することにより、前段のALU列の出力と後段のALU列の入力の特定の接続関係が実現される。
【0031】
図8の接続結線44の場合、前段のALU列からの出力信号の以外に直接入力される信号があるため、前段のALU列からの4つのデータ信号および直接入力のデータ信号の中から1つを選択するためのnビットの5対1セレクタ68と、前段のALU列からの4つの選択信号および直接入力の選択信号の中から1つを選択するための1ビットの5対1セレクタ70が設けられることになる。セレクタ68、70の出力結果は、後段のALU列の各ALU72に入力される。直接入力用の結線のため、直接入力付き接続結線44の回路規模は図7の接続結線42に比べて大きくなる。
【0032】
図10は、図8の構成において、直接入力のできる段数を制限した場合であり、データが直接入力される第2段および第3段のALU列に対しては、同図のように直接入力付き接続結線44が設けられる。一方、それ以外の段のALU列に対しては、直接入力結線のない接続結線42が設けられるので、その分だけ回路規模を小さくすることができる。
【0033】
図11は、図10の構成において、さらに多くの直接入力を設けた場合である。図10において第1段のALU列に入力されていた2つの定数46、48をそれぞれ、図11においては第2段および第3段のALU列に直接入力し、さらに入力変数Xを第2段および第3段のALU列に直接入力する構成にすることで、縦5段、横3列のリコンフィギュラブル回路12にデータフローグラフ21がマッピングされる。ALU列の列数が1つ少なくなり、使用するALUの数が減っているため、より小さい回路規模で実現される。
【0034】
図12は、図10の構成において、さらに直接入力のできる列数を制限した場合である。第2段および第3段のALU列において、データが直接入力されるのは、右側の2列だけであることから、同図のように、第2段および第3段のALU列の右2列に対してのみ、直接入力付き接続結線45が設けられ、左2列に対しては、直接入力結線のない接続結線43が設けられる。図10の直接入力付き接続結線44に比べて、図12の直接入力付き接続結線45は直接入力結線が少ない分、より小さい回路規模で実現される。
【0035】
図13は、別のデータフローグラフ21を途中段への直接入力のできないリコンフィギュラブル回路12にマッピングした例を示す。この例では、縦6段、横9列のリコンフィギュラブル回路12にデータフローグラフ21がマッピングされており、いずれの接続結線80にも直接入力結線は設けられていないため、すべての入力変数X、Y、Z、Wおよび定数(符号84〜96で示す)が最初の段のALU列に入力される。この例のデータフローグラフ21では、計算の後半の段階でより多くの定数が利用されることに特徴がある。したがって、途中段への直接入力のできるリコンフィギュラブル回路12にこのデータフローグラフ21をマッピングする場合は、後半の段に対する直接入力を可能とした方が効率がよい。
【0036】
図14は、図13と同じデータフローグラフ21を、下段への直接入力のできるリコンフィギュラブル回路12にマッピングした例を示す。第2段および第3段のALU列に対しては、直接入力結線のない接続結線80が設けられているが、それ以降の下段、すなわち第4段から第6段までのALU列に対しては、直接入力付き接続結線82が設けられている。この例では、第4段のALU列に対しては、3つの定数86、92、96と入力変数Wが直接入力され、第5段のALU列に対しては、2つの定数84、94が直接入力される。第6段のALU列に対しても直接入力付き接続結線82が設けられているが、この例では、第6段のALU列に対して直接入力はされない。このように構成することで、縦6段、横3列のリコンフィギュラブル回路12にデータフローグラフ21をマッピングすることができる。この例に見るように、最上段から数段について直接入力を可能にした構成だけでなく、最下段から数段について直接入力を可能にした構成がデータフローグラフ21のマッピングに好都合となることもある。
【0037】
図15は、さらに別のデータフローグラフ21を途中段への直接入力のできないリコンフィギュラブル回路12にマッピングした例を示す。この例では、縦6段、横10列のリコンフィギュラブル回路12にデータフローグラフ21がマッピングされており、いずれの接続結線80にも直接入力結線は設けられていないため、すべての入力変数X、Y、Zおよび定数(符号98〜116で示す)が最初の段のALU列に入力される。この場合、図16のように、途中段への直接入力を左2列に限定した構成にすることで、縦6段、横3列のリコンフィギュラブル回路12にデータフローグラフ21をマッピングすることができる。同図のように、各段のALU列の第1列および第2列に対して、直接入力付き接続結線83が設けられ、各段のALU列の第3列に対しては、直接入力結線のない接続結線81が設けられている。この例では、図15の第1段に入力される定数の内、2つの定数104、110が第2段のALU列に、別の2つの定数102、112が第3段のALU列に、さらに別の2つの定数100、116が第4段のALU列に、さらに別の1つの定数98が第5段のALU列に直接入力される。また入力変数Zは第4段のALU列に入力される。直接入力結線を左2列に限定したことで、結線を減らしてより小さい回路規模で実現できる。
【0038】
以上述べたリコンフィギュラブル回路12によれば、基本セルとして高性能の演算能力のあるALUを用いているため、コンフィグレーションは、1クロックの設定動作で可能であり、設定データ17のロードにより、瞬時に回路を再構成することができる。また、一般に、ALUを多段配列にした場合、最初の段で横方向に十分な個数のALU配列を設けても、後段に行くほど、演算に必要なALU配列の個数が減る傾向があるため、回路の利用効率が悪くなるが、本実施の形態のリコンフィギュラブル回路12では、途中段でのデータの直接入力も許すことにより、データフローグラフ21を効率的にALU配列にマッピングすることが可能である。したがって、リコンフィギュラブル回路12を小さい回路規模で構成することができ、実装コストを削減し、消費電力を小さく抑えることができる。
【0039】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0040】
そのような変形例として、上記の実施の形態では、ALUが矩形状に多段配列された場合を説明したが、配列パターンはこれに限られず、下段に行くほど、横方向に配列されたALUの数が少なくなっていく逆三角形状に多段配列されていてもよい。逆三角形状に多段配列した場合でも、入力データのために第1段において必要なALUの列数は、処理する演算のパターンによって異なり、途中段のALUへの直接入力を要することがあるから、本発明はこのような配列においても効果的である。すなわち、本発明の1つの利点は、途中段のALUへの直接入力を許す構造をもたせたことで、ALU配列の形状には依存することなく、データフローグラフの効率的なマッピングを可能としたことにある。
【0041】
さらにALUの配列は、縦方向にのみ接続を許した多段配列に限らず、横方向の接続も許した、メッシュ状の配列であってもよい。この場合、メッシュ配列に演算パターンをマッピングした際の途中の演算段階にあるALUに対するデータの直接入力を可能とする構成をとることで、同様の効果が現れる。
【0042】
また、上記の説明では、段を飛ばして論理回路を接続する結線は設けられていないが、シンプルな回路構成を犠牲にすることにはなるが、このような段を飛ばす接続結線を設ける構成としてもよい。
【0043】
また、実施の形態の集積回路装置10および外部制御装置24の構成要素の一部をそれぞれ他の装置側に設けてもよい。たとえば、設定データ17を集積回路装置10側には記憶せずに、外部制御装置24のプログラム記憶部22に記憶しておき、外部制御装置24から供給する構成としてもよく、また、データフローグラフ21を設定データ記憶部16に記憶して、集積回路装置10側でデータフローグラフ21を設定データ17に変換する処理を行ってもよい。また、上記の実施の形態では、設定データ17を設定データ記憶部16に記憶した後、集積回路装置10を外部制御装置24から切り離して利用することもできるが、集積回路装置10に外部制御装置24を常時接続しておく構成でもかまわないし、集積回路装置10と外部制御装置24を一体化して、1つの演算処理装置として構成してもよい。
【発明の効果】
本発明によれば、効率の良いリコンフィギュラブル回路を実現できる。
【図面の簡単な説明】
【図1】 実施の形態に係る集積回路装置および外部制御装置の構成図である。
【図2】 図1のリコンフィギュラブル回路の構成図である。
【図3】 図1のリコンフィギュラブル回路の別の構成図である。
【図4】 図1のリコンフィギュラブル回路のさらに別の構成図である。
【図5】 図1のリコンフィギュラブル回路のさらに別の構成図である。
【図6】 図1のデータフローグラフの例を説明する図である。
【図7】 図6のデータフローグラフを途中段への直接入力のできないリコンフィギュラブル回路にマッピングした例を説明する図である。
【図8】 図6のデータフローグラフを途中段への直接入力のできるリコンフィギュラブル回路にマッピングした例を説明する図である。
【図9】 図9(a)は、図7の接続結線の構成図であり、図9(b)は、図8の直接入力付き接続結線の構成図である。
【図10】 図8のリコンフィギュラブル回路において、直接入力のできる段数を制限した場合を説明する図である。
【図11】 図10のリコンフィギュラブル回路において、さらに多くの直接入力を設けた場合を説明する図である。
【図12】 図10のリコンフィギュラブル回路において、途中入力のできる列数を制限した場合を説明する図である。
【図13】 別のデータフローグラフを途中段への直接入力のできないリコンフィギュラブル回路にマッピングした例を説明する図である。
【図14】 図13と同じデータフローグラフを下段への直接入力のできるリコンフィギュラブル回路にマッピングした例を説明する図である。
【図15】 さらに別のデータフローグラフを途中段への直接入力のできないリコンフィギュラブル回路にマッピングした例を説明する図である。
【図16】 図15と同じデータフローグラフを左列への直接入力のできるリコンフィギュラブル回路にマッピングした例を説明する図である。
【符号の説明】
10 集積回路装置、 12 リコンフィギュラブル回路、 14 設定部、16 設定データ記憶部、 17 設定データ、 18 制御部、 19 プログラム、 20 コンパイル部、 21 データフローグラフ、 22 プログラム記憶部、24 外部制御装置、30 接続結線。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to integrated circuit technology, and more particularly to a reconfigurable circuit and an integrated circuit device that can use the reconfigurable circuit.
[0002]
[Prior art]
An FPGA (Field Programmable Gate Array) can design circuit configuration relatively freely by writing circuit data after the LSI is manufactured, and is used for designing dedicated hardware. The FPGA includes a lookup table (LUT) for storing a truth table of a logic circuit, a basic cell composed of an output flip-flop, and a programmable wiring resource connecting the basic cells. In the FPGA, a target logical operation can be realized by writing data stored in the LUT and wiring data. However, when an LSI is designed using an FPGA, the mounting area is very large and the cost is high compared to an ASIC (Application Specific IC) design. Thus, a method has been proposed in which the circuit configuration is reused by dynamically reconfiguring the FPGA (see, for example, Patent Document 1).
[0003]
[Patent Document 1]
JP-A-10-256383 (full text, Fig. 1-4)
[0004]
[Problems to be solved by the invention]
In particular, LSIs mounted on mobile terminals such as mobile phones and PDAs (Personal Data Assistants) must be downsized. If LSIs can be dynamically reconfigured and functions can be switched appropriately according to the application, LSIs Mounting area can be reduced. Also, satellite broadcasting has the property that when radio waves hit rain drops, it becomes difficult to reach, so when it rains it can be switched to rain compatible broadcasting that simultaneously sends a low resolution screen that is not easily affected by rain. However, in the receiver, a circuit is provided separately for each broadcast mode, and the broadcast is received by switching the circuit according to the broadcast mode. When it starts to rain, the broadcast mode is switched and broadcast in that mode continues until clear, while the other broadcast mode circuits of the receiver are idle. When switching and using multiple dedicated circuits, such as mode switching, and the switching interval is relatively long, instead of creating multiple dedicated circuits, the LSI can be reconfigured instantaneously at the time of switching. The structure can be simplified to improve versatility, and at the same time the mounting cost can be reduced. In order to meet such needs, the manufacturing industry has attracted attention to dynamically reconfigurable LSIs.
[0005]
The FPGA has a high degree of freedom in the design of the circuit configuration and is general-purpose. On the other hand, in order to enable connection between all basic cells, the FPGA includes a large number of switches and a control circuit for controlling ON / OFF of the switches. The mounting area of the control circuit is increased. In addition, since a complicated wiring pattern is used to connect the basic cells, the wiring tends to be long, and a delay is increased because many switches are connected to one wiring. For this reason, FPGA based LSIs are often used only for trial manufacture and experiments, and are not suitable for mass production in view of mounting efficiency, performance, cost, and the like.
[0006]
Further, in the FPGA, since it is necessary to send setting data to a large number of basic cells of the LUT method, it takes a considerable time to configure the circuit. Therefore, the FPGA cannot be used at all for applications that require instantaneous switching of the circuit configuration.
[0007]
The present invention has been made in view of such circumstances, and an object thereof is to provide a reconfigurable circuit that is advantageous in terms of mounting area, power consumption, circuit reconfiguration speed, and the like, and an integrated circuit device using the reconfigurable circuit. is there.
[0008]
[Means for Solving the Problems]
One embodiment of the present invention relates to a reconfigurable circuit. The circuit includes a multi-stage arrangement of logic circuits each capable of selectively executing a plurality of arithmetic functions, and a connection unit capable of setting a connection relationship between the output of the preceding logic circuit and the input of the succeeding logic circuit, In addition to the connection for connecting the logic circuits, the connection section is provided with an input connection that can directly input data to the logic circuit in the middle stage. The connection unit has a connection for connecting the output of the logic circuit to the input of another logic circuit, and the connection having a specific connection relationship can be validated by setting.
[0009]
In a multistage array of logic circuits in which operations are advanced from the upper stage to the lower stage, input variable and constant data are directly input to the uppermost logic circuit array. The output result from the preceding logic circuit string is generally input to the logic circuit string in the middle stage, that is, the second and subsequent stages. However, depending on the operation to be processed, the logic circuits in the second and subsequent stages are necessary. Input variable or constant data is directly input to the column. For this purpose, an input connection for directly inputting data to the second and subsequent logic circuit rows is provided.
[0010]
Each logic circuit may be a circuit capable of relatively high-performance operations, for example, an arithmetic logic circuit (ALU) capable of selectively executing a plurality of types of multi-bit operations. Depending on the setting data loaded from the outside, in each logic circuit, it may be set which of a plurality of arithmetic functions is selected. When a specific function is constructed in each logic circuit as in ALU, the logic circuit to which data necessary for the operation executed in the entire reconfigurable circuit can be relatively easily specified. The connection provided for direct input to the stage is effectively utilized.
[0011]
The structure of the multistage arrangement of the logic circuits is such that there is no connection connection between the logic circuits in the horizontal direction in the arrangement in which a plurality of rows of logic circuits arranged in the horizontal direction are combined in the vertical direction. A connection connection may be provided between the output of and the input of the logic circuit array at the next stage. If the connection connection is only in the vertical direction, the circuit scale can be reduced and the structure can be simplified. However, if the mesh structure has connection connections in the horizontal direction, the arrangement of the same number of logic circuits can be used. Can perform complex operations.
[0012]
The input connection may be provided at a connection portion of each stage, and may be provided by limiting to at least a part of the stages, for example, the upper n stages (n is an integer) among intermediate stages. Furthermore, input connection may be provided by limiting to a part of the columns of the logic circuits arranged in the same stage. In general, when an operation is advanced from the upper stage to the lower stage using a multi-stage logic circuit, the upper logic circuit requires a larger number of data inputs, and the lower the stage, the more logic circuits necessary for the operation. In many cases, the calculation structure is an inverted triangle such as decreasing. For this reason, it is possible to effectively use the logic circuit arrangement by providing a larger number of input connections in the upper-level logic circuit.
[0013]
Yet another embodiment of the present invention relates to an integrated circuit device. This device includes a reconfigurable circuit in which a logic circuit capable of selectively executing a plurality of arithmetic functions is connected in a multi-stage array structure capable of directly inputting data to a logic circuit at an intermediate stage, and the reconfigurable circuit A storage unit that stores setting data for setting a function of each logic circuit in the circuit and an input / output connection relationship between the logic circuits, and a setting that reads the setting data from the storage unit and loads the setting data into the reconfigurable circuit Part. For the calculation function of the logic circuit set by the setting data and the input / output connection relationship between the logic circuits, a graph representing the data flow of the operation to be processed is used as appropriate, and direct input of data to the logic circuit in the intermediate stage is used May be generated by mapping to a logic circuit having a multi-stage array structure. By this mapping, it is possible to specify a logic circuit at an intermediate stage that requires direct input of data such as input variables and constants, and it is possible to supply necessary data directly to the logic circuit.
[0014]
It should be noted that any combination of the above components and the expression of the present invention expressed as a method, apparatus, system, and computer program are also effective as an aspect of the present invention.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a configuration diagram of an integrated circuit device 10 and an external control device 24 according to the embodiment. The external control device 24 creates data for setting the circuit configuration of the integrated circuit device 10 and supplies the data to the integrated circuit device 10.
[0016]
The integrated circuit device 10 includes a reconfigurable circuit 12, a setting data storage unit 16 that stores setting data 17 for reconfiguring the reconfigurable circuit 12, and a setting that loads the setting data 17 to the reconfigurable circuit 12. Part 14. The external control device 24 includes a control unit 18, a compilation unit 20, and a program storage unit 22.
[0017]
The program storage unit 22 of the external control device 24 holds various programs 19 to be executed by the integrated circuit device 10. The compiling unit 20 compiles the program 19 stored in the program storage unit 22, converts it into a data flow graph 21, and stores it in the program storage unit 22. As will be described later, the data flow graph 21 shows the flow of calculation of input variables and constants in a graph structure.
[0018]
The data flow graph 21 is converted into setting data 17 for mapping to the circuit configuration of the reconfigurable circuit 12, supplied to the setting unit 14 of the integrated circuit device 10 via the control unit 18, and the setting data storage unit 16. Stored in In the setting data storage unit 16, a plurality of setting data 17 are stored in advance corresponding to the data flow graph 21 of the operation to be processed. The setting unit 14 reconfigures the reconfigurable circuit 12 by appropriately reading the setting data 17 from the setting data storage unit 16 and loading it into the reconfigurable circuit 12. The reconfigured reconfigurable circuit 12 performs an operation based on the loaded setting data 17.
[0019]
FIG. 2 is a configuration diagram of the reconfigurable circuit 12. The reconfigurable circuit 12 includes a plurality of rows of ALUs (Arithmetic Logic Units) arranged in a plurality of stages, and the connection connection 30 provided in each stage causes the output of the preceding ALU column and the subsequent ALU column to be output. Input can be connected arbitrarily according to the setting. Further, for the ALU column in the middle stage except the first stage, input connection for direct input of input variables and constants is provided in the connection line 30 of each stage. Each ALU can selectively execute a plurality of types of multi-bit operations such as logical sum, logical product, and bit shift by setting.
[0020]
As shown in the figure, Y ALUs are arranged in the horizontal direction and X ALUs are arranged in the vertical direction, and input variables and constants are inputted to the first-stage ALU11, ALU12,..., ALU1Y. Depending on the setting, a predetermined calculation is performed. The calculation result output is input to the second-stage ALU 21, ALU 22,..., ALU 2Y in accordance with the connection set in the first-stage connection line 30. The first-stage connection line 30 is configured so that an arbitrary connection relationship between the output of the first-stage ALU column and the input of the second-stage ALU column can be realized. Connection is effective. Further, the first-stage connection line 30 is provided with a second-stage direct input line for directly inputting data to the second-stage ALU 21, ALU 22,..., ALU 2Y. Hereinafter, the connection configuration 30 up to the (X-1) -th stage connection wiring 30 has the same configuration, and the ALU column of the X-th stage, which is the final stage, outputs the final result of the calculation.
[0021]
The setting data 17 for mapping the data flow graph 21 to the reconfigurable circuit 12 includes information for selecting an operation of each ALU, information for selecting a connection connection between ALU columns, and ALU columns in the first and intermediate stages. The information for selecting the input connection, and the values of the input variables and constants are included.
[0022]
In general, the data flow graph 21 often has an inverted triangular graph structure in which the number of required ALUs decreases as the operation stage progresses, but not only the first-stage ALU column but also the intermediate-stage graph. By configuring the ALU column so that data can be input, the data flow graph 21 can be mapped to the reconfigurable circuit 12 without being restricted by the number of horizontal ALU columns.
[0023]
FIG. 3 to FIG. 5 are diagrams for explaining the reconfigurable circuit 12 in which restrictions are imposed on an ALU array that can be input midway. If halfway input is possible for all ALUs, the circuit scale of the connection line 30 is increased by direct input connection. Therefore, limiting the number of stages and columns of the ALU array that can be input halfway reduces the mounting area. It is advantageous.
[0024]
FIG. 3 shows an example of the reconfigurable circuit 12 when the number of stages of ALU arrays that can be input midway is limited. Direct input connection is provided only to the first and second stage connection connections 32 of the four-stage and four-column reconfigurable circuit 12, and data is directly input to the second and third ALU columns. Is possible.
[0025]
FIG. 4 is an example of the reconfigurable circuit 12 when the number of columns of the ALU array that can be input midway is limited. Although direct input connections are provided for the connection connections 36 in all stages of the reconfigurable circuit 12, the horizontal direction is limited to two columns from the left. For example, it is possible to directly input only the ALU 21 in the first column and the ALU 22 in the second column among the ALU columns in the second column to the first stage connection line 36.
[0026]
FIG. 5 shows an example of the reconfigurable circuit 12 when both the number of stages and the number of columns of the ALU array that can be input midway are limited. Direct input connections are provided only for the first and second stage connection connections 38 of the reconfigurable circuit 12, and the horizontal direction is limited to two columns from the left, and the first and second columns of the second stage. And direct input of data only to the ALUs in the first and second columns of the third stage.
[0027]
FIG. 6 is a diagram illustrating an example of the data flow graph 21. This data flow graph 21 shows multiplication of inputs X and Y. In the figure, operators are indicated by circles, “+” is logical sum, “&” is logical product, “<<” is left bit shift, “>>” is right bit shift, “==” is etc. “SEL” is an operator for selecting either true (T) or false (F) based on the determination result. Also, input variables, constants, and outputs are indicated by squares. A solid line is a data signal line, and a dotted line is a selection signal from a selection operator. Inputs X and Y are both positive integers, and Y is 2 bits. The result of multiplication by the data flow graph 21 is finally output as an output ANS.
[0028]
FIG. 7 shows an example in which the data flow graph 21 of FIG. 6 is mapped to the reconfigurable circuit 12 that cannot be directly input to the intermediate stage. Since none of the connection connections 42 is provided with a direct input connection, all input variables X and Y and constants (indicated by reference numerals 46 to 60) must be input to the first stage ALU column. In order to input input variables and constants, eight rows of ALUs are required in the horizontal direction, and five steps of ALU columns are required in the vertical direction in order to perform five stages of operations. Therefore, as shown in the figure, the data flow graph 21 is mapped to the reconfigurable circuit 12 having 5 columns and 8 columns. In the figure, ALUs that are used are indicated by solid circles, and ALUs that are not used are indicated by dotted circles. “MOV” indicates that the input value is output as it is without being calculated. A considerable number of ALUs are not used in the latter half, and the utilization efficiency of the ALU array is not good.
[0029]
FIG. 8 shows an example in which the data flow graph 21 of FIG. 6 is mapped to the reconfigurable circuit 12 that can be directly input to the intermediate stage. In this case, connection wirings 44 with direct input are provided in all stages, and some constants 50, 52, 58, 60 input to the first ALU column in FIG. 7 are replaced with the second stage in FIG. The data flow graph 21 is mapped to the reconfigurable circuit 12 having 5 columns in the vertical direction and 4 columns in the horizontal direction by directly inputting to the ALU column in the third stage.
[0030]
9A is a diagram for explaining the configuration of the connection connection 42 in FIG. 7 and FIG. 9B is a diagram for explaining the configuration of the connection connection 44 with direct input in FIG. 7 includes an n-bit 4-to-1 selector 62 for selecting one of the four data signals ALUX1 to ALUX4 from the preceding ALU column, and four selections from the previous ALU column. 1-bit 4-to-1 selector 64 for selecting one of signals ALUX1LSB to ALUX4LSB is included. The output results of the selectors 62 and 64 are input to each ALU 66 in the subsequent ALU column. Accordingly, by setting the selectors 62 and 64, a specific connection relationship between the output of the preceding ALU column and the input of the subsequent ALU column is realized.
[0031]
In the case of the connection line 44 in FIG. 8, since there is a signal that is directly input in addition to the output signal from the preceding ALU column, one of the four data signals from the preceding ALU column and the directly input data signal is present. An n-bit 5-to-1 selector 68 for selecting one and a 1-bit 5-to-1 selector 70 for selecting one of the four selection signals from the ALU column in the previous stage and the selection signal directly input Will be provided. The output results of the selectors 68 and 70 are input to each ALU 72 in the subsequent ALU column. Since the connection is for direct input, the circuit scale of the connection line 44 with direct input is larger than that of the connection line 42 in FIG.
[0032]
FIG. 10 shows the case where the number of stages that can be directly input is limited in the configuration of FIG. 8, and the second stage and third stage ALU columns to which data is directly input are directly input as shown in FIG. A supplementary connection 44 is provided. On the other hand, since the connection connection 42 without the direct input connection is provided for the other ALU columns, the circuit scale can be reduced accordingly.
[0033]
FIG. 11 shows a case where more direct inputs are provided in the configuration of FIG. The two constants 46 and 48 that have been input to the first-stage ALU column in FIG. 10 are directly input to the second-stage and third-stage ALU columns in FIG. In addition, the data flow graph 21 is mapped to the reconfigurable circuit 12 having five columns in the vertical direction and three columns in the horizontal direction by directly inputting the data to the third-stage ALU column. Since the number of ALU columns is reduced by one and the number of ALUs used is reduced, the circuit can be realized with a smaller circuit scale.
[0034]
FIG. 12 shows a case where the number of columns that can be directly input is further limited in the configuration of FIG. In the second and third ALU columns, data is directly input only in the two right columns, so that the right 2 of the second and third ALU columns as shown in FIG. The connection connection 45 with direct input is provided only for the columns, and the connection connection 43 without direct input connection is provided for the left two columns. Compared to the connection connection 44 with direct input in FIG. 10, the connection connection 45 with direct input in FIG. 12 is realized with a smaller circuit scale because of less direct input connection.
[0035]
FIG. 13 shows an example in which another data flow graph 21 is mapped to the reconfigurable circuit 12 that cannot be directly input to an intermediate stage. In this example, the data flow graph 21 is mapped to the reconfigurable circuit 12 of 6 columns and 9 columns, and no input connection is provided for any connection connection 80. Therefore, all input variables X , Y, Z, W and constants (indicated by reference numerals 84 to 96) are input to the ALU column in the first stage. The data flow graph 21 of this example is characterized in that more constants are used in the latter half of the calculation. Therefore, when mapping the data flow graph 21 to the reconfigurable circuit 12 that can directly input to the intermediate stage, it is more efficient to enable direct input to the latter stage.
[0036]
FIG. 14 shows an example in which the same data flow graph 21 as in FIG. 13 is mapped to the reconfigurable circuit 12 that can be directly input to the lower stage. For the second and third ALU columns, connection connection 80 without direct input connection is provided, but for the lower stages after that, that is, for the ALU columns from the fourth to sixth stages. Is provided with a connection 82 with direct input. In this example, three constants 86, 92, 96 and an input variable W are directly input to the fourth-stage ALU column, and two constants 84, 94 are input to the fifth-stage ALU column. Directly entered. The connection line 82 with direct input is also provided for the sixth-stage ALU column, but in this example, direct input is not performed for the sixth-stage ALU column. By configuring in this way, the data flow graph 21 can be mapped to the reconfigurable circuit 12 having six columns and three columns. As seen in this example, not only a configuration that allows direct input from the top level to several levels, but also a configuration that allows direct input from the bottom level to several levels is advantageous for mapping the data flow graph 21. is there.
[0037]
FIG. 15 shows an example in which another data flow graph 21 is mapped to the reconfigurable circuit 12 that cannot be directly input to an intermediate stage. In this example, the data flow graph 21 is mapped to the reconfigurable circuit 12 of 6 columns and 10 columns, and no direct connection is provided for any of the connection connections 80. Therefore, all the input variables X , Y, Z and constants (indicated by reference numerals 98 to 116) are input to the ALU column in the first stage. In this case, as shown in FIG. 16, the data flow graph 21 is mapped to the reconfigurable circuit 12 of 6 columns and 3 columns by limiting the direct input to the intermediate stage to the left two columns. Can do. As shown in the figure, a direct connection connection 83 is provided for the first and second columns of the ALU columns at each stage, and a direct input connection for the third column of the ALU columns at each stage. A connection line 81 having no connection is provided. In this example, of the constants input to the first stage in FIG. 15, two constants 104 and 110 are in the second stage ALU column, and the other two constants 102 and 112 are in the third stage ALU string. Two other constants 100 and 116 are directly input to the fourth-stage ALU column, and another one constant 98 is directly input to the fifth-stage ALU column. The input variable Z is input to the fourth-stage ALU column. By limiting the direct input connection to the left two columns, the connection can be reduced and realized with a smaller circuit scale.
[0038]
According to the reconfigurable circuit 12 described above, since an ALU having a high-performance computing capability is used as a basic cell, the configuration can be performed by a setting operation of one clock. The circuit can be reconfigured instantly. In general, when ALUs are arranged in multiple stages, even if a sufficient number of ALU arrays are provided in the horizontal direction in the first stage, the number of ALU arrays necessary for the calculation tends to decrease as going to the subsequent stage. Although the circuit utilization efficiency deteriorates, the reconfigurable circuit 12 according to the present embodiment allows the data flow graph 21 to be efficiently mapped to the ALU array by permitting direct input of data at an intermediate stage. It is. Therefore, the reconfigurable circuit 12 can be configured with a small circuit scale, and the mounting cost can be reduced and the power consumption can be kept small.
[0039]
The present invention has been described based on the embodiments. The embodiments are exemplifications, and it will be understood by those skilled in the art that various modifications can be made to combinations of the respective constituent elements and processing processes, and such modifications are within the scope of the present invention. .
[0040]
As such a modification, the above embodiment has described the case where ALUs are arranged in multiple stages in a rectangular shape. However, the arrangement pattern is not limited to this, and the lower the level, the more the ALUs are arranged in the horizontal direction. It may be arranged in multiple stages in an inverted triangular shape with a decreasing number. Even in the case of multi-stage arrangement in an inverted triangle shape, the number of ALU columns required in the first stage for input data differs depending on the operation pattern to be processed, and may require direct input to the ALU in the middle stage. The present invention is also effective in such an arrangement. In other words, one advantage of the present invention is that it has a structure that allows direct input to the ALU in the middle stage, thereby enabling efficient mapping of the data flow graph without depending on the shape of the ALU array. There is.
[0041]
Furthermore, the arrangement of ALUs is not limited to a multistage arrangement that allows connection only in the vertical direction, but may be a mesh arrangement that also allows connection in the horizontal direction. In this case, the same effect can be obtained by adopting a configuration that enables direct input of data to the ALU that is in the middle of the operation stage when the operation pattern is mapped to the mesh arrangement.
[0042]
In the above description, the connection for connecting the logic circuit by skipping the stage is not provided. However, a simple circuit configuration is sacrificed, but the connection connection for skipping such a stage is provided. Also good.
[0043]
Also, some of the components of the integrated circuit device 10 and the external control device 24 of the embodiment may be provided on the other device side. For example, the setting data 17 may be stored in the program storage unit 22 of the external control device 24 without being stored on the integrated circuit device 10 side, and supplied from the external control device 24, or a data flow graph 21 may be stored in the setting data storage unit 16, and the process of converting the data flow graph 21 into the setting data 17 may be performed on the integrated circuit device 10 side. In the above-described embodiment, the integrated circuit device 10 can be disconnected from the external control device 24 after the setting data 17 is stored in the setting data storage unit 16, but the integrated circuit device 10 is connected to the external control device. The integrated circuit device 10 and the external control device 24 may be integrated into a single arithmetic processing device.
【The invention's effect】
According to the present invention, an efficient reconfigurable circuit can be realized.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of an integrated circuit device and an external control device according to an embodiment.
2 is a configuration diagram of the reconfigurable circuit of FIG. 1;
FIG. 3 is another configuration diagram of the reconfigurable circuit of FIG. 1;
4 is still another configuration diagram of the reconfigurable circuit of FIG. 1. FIG.
5 is still another configuration diagram of the reconfigurable circuit of FIG. 1. FIG.
6 is a diagram for explaining an example of the data flow graph of FIG. 1; FIG.
7 is a diagram for explaining an example in which the data flow graph of FIG. 6 is mapped to a reconfigurable circuit that cannot be directly input to an intermediate stage.
8 is a diagram illustrating an example in which the data flow graph of FIG. 6 is mapped to a reconfigurable circuit that can be directly input to an intermediate stage.
9A is a configuration diagram of the connection connection of FIG. 7, and FIG. 9B is a configuration diagram of the connection connection with direct input of FIG.
FIG. 10 is a diagram illustrating a case where the number of stages that can be directly input is limited in the reconfigurable circuit of FIG. 8;
11 is a diagram for explaining a case where more direct inputs are provided in the reconfigurable circuit of FIG.
12 is a diagram illustrating a case where the number of columns that can be input midway is limited in the reconfigurable circuit of FIG.
FIG. 13 is a diagram illustrating an example in which another data flow graph is mapped to a reconfigurable circuit that cannot be directly input to an intermediate stage.
14 is a diagram for explaining an example in which the same data flow graph as in FIG. 13 is mapped to a reconfigurable circuit that can be directly input to the lower stage.
FIG. 15 is a diagram illustrating an example in which another data flow graph is mapped to a reconfigurable circuit that cannot be directly input to an intermediate stage.
16 is a diagram for explaining an example in which the same data flow graph as in FIG. 15 is mapped to a reconfigurable circuit that can be directly input to the left column.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 10 Integrated circuit device, 12 Reconfigurable circuit, 14 Setting part, 16 Setting data storage part, 17 Setting data, 18 Control part, 19 Program, 20 Compile part, 21 Data flow graph, 22 Program storage part, 24 External control device , 30 Connection connection.

Claims (6)

それぞれが複数の演算機能を選択的に実行可能な論理回路の多段配列と、前段の論理回路の出力と後段の論理回路の入力の接続関係を設定可能な接続部とを含み、
前記接続部には、論理回路間の接続用結線とは別に、途中段の論理回路へのデータの直接入力が可能な入力用結線が設けられており、
前記入力用結線は前記多段配列の一部の段に制限して設けられたことを特徴とするリコンフィギュラブル回路。
Each including a multi-stage arrangement of logic circuits capable of selectively executing a plurality of arithmetic functions, and a connection section capable of setting a connection relationship between an output of the preceding logic circuit and an input of the succeeding logic circuit,
In addition to the connection for connection between the logic circuits, the connection section is provided with an input connection that allows direct input of data to the logic circuit in the middle stage .
The reconfigurable circuit according to claim 1, wherein the input connection is limited to a part of the stages of the multistage arrangement .
前記入力用結線は前記多段配列の上位n段(nは整数)に制限して設けられたことを特徴とする請求項に記載のリコンフィギュラブル回路。The reconfigurable circuit according to claim 1 , wherein the input connection is limited to upper n stages (n is an integer) of the multistage array. 前記論理回路は、複数種類の多ビット演算を選択的に実行可能な算術論理回路であることを特徴とする請求項1又は2に記載のリコンフィギュラブル回路。The logic circuit is reconfigurable circuit according to claim 1 or 2, characterized in that it is capable of selectively executing arithmetic and logic multi-bit operations of a plurality of types. 前記入力用結線は各段に配置された前記論理回路の一部の列に制限して設けられたことを特徴とする請求項1からのいずれかに記載のリコンフィギュラブル回路。Reconfigurable circuit according to any one of claims 1-3 wherein the input connection, characterized in that the provided limits a part of columns of the logic circuits arranged in each stage. 請求項1から4のいずれかに記載のリコンフィギュラブル回路と、
前記リコンフィギュラブル回路における各論理回路の機能と論理回路間の入出力の接続関係を設定するための設定データを記憶する記憶部と、
前記記憶部から前記設定データを読み込み、前記リコンフィギュラブル回路にロードする設定部とを含むことを特徴とする集積回路装置。
A reconfigurable circuit according to any one of claims 1 to 4 ,
A storage unit that stores setting data for setting a function of each logic circuit in the reconfigurable circuit and an input / output connection relationship between the logic circuits;
An integrated circuit device comprising: a setting unit that reads the setting data from the storage unit and loads the setting data into the reconfigurable circuit.
前記設定データは、処理すべき演算のデータフローを表すグラフを、途中段の論理回路へのデータの直接入力を適宜利用した形式で、前記多段アレイ構造の論理回路にマッピングすることにより生成されたものであることを特徴とする請求項に記載の集積回路装置。The setting data is generated by mapping a graph representing a data flow of an operation to be processed to the logic circuit having the multi-stage array structure in a format appropriately using direct input of data to the logic circuit in the middle stage. The integrated circuit device according to claim 5 , wherein the integrated circuit device is a device.
JP2003007655A 2003-01-15 2003-01-15 Reconfigurable circuit and integrated circuit device using it Expired - Lifetime JP3896083B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003007655A JP3896083B2 (en) 2003-01-15 2003-01-15 Reconfigurable circuit and integrated circuit device using it

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003007655A JP3896083B2 (en) 2003-01-15 2003-01-15 Reconfigurable circuit and integrated circuit device using it

Publications (2)

Publication Number Publication Date
JP2004221997A JP2004221997A (en) 2004-08-05
JP3896083B2 true JP3896083B2 (en) 2007-03-22

Family

ID=32897685

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003007655A Expired - Lifetime JP3896083B2 (en) 2003-01-15 2003-01-15 Reconfigurable circuit and integrated circuit device using it

Country Status (1)

Country Link
JP (1) JP3896083B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006065786A (en) * 2004-08-30 2006-03-09 Sanyo Electric Co Ltd Processing apparatus
WO2008107969A1 (en) 2007-03-06 2008-09-12 Fujitsu Microelectronics Limited Arithmetic device
JP2008235992A (en) 2007-03-16 2008-10-02 Matsushita Electric Ind Co Ltd Reconfigurable circuit, reconfigurable circuit system and placement and routing method of reconfigurable circuit

Also Published As

Publication number Publication date
JP2004221997A (en) 2004-08-05

Similar Documents

Publication Publication Date Title
JP4275013B2 (en) Data flow graph processing device, processing device, reconfigurable circuit.
KR100910777B1 (en) Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US6449628B1 (en) Apparatus and method for programmable datapath arithmetic arrays
US9564902B2 (en) Dynamically configurable and re-configurable data path
US6384627B1 (en) Logic block used as dynamically configurable logic function
US20060005090A1 (en) Compare, select, sort, and median-filter apparatus in programmable logic devices and associated methods
JP2006040254A (en) Reconfigurable circuit and processor
JP2018530040A (en) Self-adaptive chip and placement method
CN111047034A (en) On-site programmable neural network array based on multiplier-adder unit
JP3896083B2 (en) Reconfigurable circuit and integrated circuit device using it
JP4011007B2 (en) Integrated circuit device and processing device having reconfigurable circuit
CN111752529B (en) Programmable logic unit structure supporting efficient multiply-accumulate operation
US7084664B1 (en) Integrated circuits with reduced interconnect overhead
US7768301B2 (en) Reconfigurable integrated circuits with scalable architecture including a plurality of special function elements
JP4553615B2 (en) Processing equipment
JP4260197B2 (en) Processing equipment
WO2008023342A1 (en) Configurable logic device
WO2005033939A1 (en) Processor and integrated circuit comprising reconfigurable circuit, and processing method utilizing it
JP4156010B2 (en) Processing equipment
US20070067379A1 (en) Data processing apparatus
JP4947983B2 (en) Arithmetic processing system
JP4357326B2 (en) Reconfigurable circuit and processing device
JP3970186B2 (en) Integrated circuit device and processing device having reconfigurable circuit
JP4597075B2 (en) Operation mapping method to reconfigurable circuit, reconfigurable circuit, and data flow graph
JP4413052B2 (en) Data flow graph processing apparatus and processing apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061115

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: 20061212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061215

R151 Written notification of patent or utility model registration

Ref document number: 3896083

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131222

Year of fee payment: 7

EXPY Cancellation because of completion of term