JP2008085864A - Semiconductor device - Google Patents
Semiconductor device Download PDFInfo
- Publication number
- JP2008085864A JP2008085864A JP2006265487A JP2006265487A JP2008085864A JP 2008085864 A JP2008085864 A JP 2008085864A JP 2006265487 A JP2006265487 A JP 2006265487A JP 2006265487 A JP2006265487 A JP 2006265487A JP 2008085864 A JP2008085864 A JP 2008085864A
- Authority
- JP
- Japan
- Prior art keywords
- configuration
- data
- memory
- register
- control data
- 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
Links
Images
Landscapes
- Logic Circuits (AREA)
- Microcomputers (AREA)
Abstract
Description
本発明は、半導体装置に関し、詳しくは、動的に回路構成を再構成可能な半導体装置に関する。 The present invention relates to a semiconductor device, and more particularly to a semiconductor device whose circuit configuration can be dynamically reconfigured.
従来、LSI等の半導体装置は、一般に要求仕様として予め決められた処理を実行するようにANDゲート(論理積演算回路)やORゲート(論理和演算回路)等の配置及びそれらに係る配線を設計工程で決定し、当該要求仕様に応じた処理を実行可能な半導体装置を製造している。つまり、従来の半導体装置において所望の機能を実現しようとする場合には、回路構成(論理構成)についての設計がゲート単位(ゲートレベル)で行われ、当該機能を実現する半導体装置が製造されている。 Conventionally, a semiconductor device such as an LSI is generally designed to arrange an AND gate (logical product operation circuit), an OR gate (logical sum operation circuit), and wiring related to them so as to execute a predetermined process as a required specification. A semiconductor device is manufactured that is determined in the process and capable of executing processing according to the required specifications. That is, when a desired function is to be realized in a conventional semiconductor device, a circuit configuration (logic configuration) is designed in units of gates (gate level), and a semiconductor device that realizes the function is manufactured. Yes.
しかし、上記半導体装置は、その回路構成が設計工程にて固定されるため、仕様変更などにより異なる要求仕様に応じた処理を実行しようとすると、その都度、設計及び製造のすべてを行う必要がある。したがって、多大な労力及び時間を要するとともに、開発コストも高い。 However, since the circuit configuration of the semiconductor device is fixed in the design process, it is necessary to perform all of the design and manufacture each time a process according to a different required specification is performed due to a specification change or the like. . Therefore, much labor and time are required, and the development cost is high.
この問題を解決する1つの方法として、製造後であっても、論理を再構成し実行する処理を変更可能にしたリコンフィグLSIと呼ばれる再構成可能な半導体装置がある。この再構成可能な半導体装置は、CPUからの制御信号(コンフィグレーション情報)が入力されるとともに機能変更が可能な複数の演算部を有する。当該演算部は、シフター、ALU(算術論理演算装置)、及びセレクタ等を適宜組み合わせて構成されており、CPUからのコンフィグレーション情報を受け、それに応じて論理を再構成することで実行する処理を変更することが可能となっている。 As one method for solving this problem, there is a reconfigurable semiconductor device called a reconfigurable LSI that can change the process of reconfiguring and executing logic even after manufacturing. This reconfigurable semiconductor device has a plurality of arithmetic units that can receive a control signal (configuration information) from the CPU and change functions. The arithmetic unit is configured by appropriately combining a shifter, an ALU (arithmetic logic unit), a selector, and the like, and receives processing information from the CPU, and executes processing by reconfiguring the logic accordingly. It is possible to change.
上述した再構成可能な半導体装置は、CPUが複数の演算部をそれぞれ直接制御しており、処理速度が低い。例えば、ある演算部からの割り込みに基づいて、複数の演算部で実行する処理を変更する場合には、CPUは演算部からの割り込みを受けて割り込み処理ルーチンを呼び出して実行し、その後、当該処理ルーチンの処理結果等に応じたコンフィグレーション情報を複数の演算部に供給する。この割り込み処理には、数十クロックに相当する時間を要する。したがって、上述した再構成可能な半導体装置では、処理速度が遅く、演算部にて実行する処理を動的に(クロック単位で)変更することができなかった。 In the reconfigurable semiconductor device described above, the CPU directly controls a plurality of arithmetic units, and the processing speed is low. For example, when processing to be executed by a plurality of arithmetic units is changed based on an interrupt from a certain arithmetic unit, the CPU receives an interrupt from the arithmetic unit, calls and executes an interrupt processing routine, and then executes the processing. Configuration information corresponding to the routine processing result is supplied to a plurality of arithmetic units. This interrupt process requires a time corresponding to several tens of clocks. Therefore, in the above-described reconfigurable semiconductor device, the processing speed is low, and the processing to be executed by the arithmetic unit cannot be changed dynamically (in units of clocks).
この問題を解決する1つの方法として、本出願人は、図10に構成を示すような再構成可能な半導体装置を提案している。図10は、本出願人が提案した再構成可能な半導体装置の構成例を示す図であり、当該半導体装置は、CPUに代えて、回路構成(論理構成)の変更制御に関しCPUと等価的な機能を有するシーケンサーを設けている。 As one method for solving this problem, the present applicant has proposed a reconfigurable semiconductor device having a configuration shown in FIG. FIG. 10 is a diagram illustrating a configuration example of a reconfigurable semiconductor device proposed by the present applicant. The semiconductor device is equivalent to a CPU with respect to change control of a circuit configuration (logical configuration) instead of the CPU. A functional sequencer is provided.
シーケンサー(制御部)1は、外部(例えば外部バス3を介して接続されているプロセッサ)からの指示に応じて、当該半導体装置を統括的に制御するものであり、演算処理部2の回路構成(論理構成を含む。)を管理するとともに、それを動的に変更させる制御を行う。シーケンサー1は、アプリケーションに応じて動的に演算処理部2の回路構成を変更するため、コンフィグレーションデータ(コンフィグレーション情報)を含む当該シーケンサー1からの制御信号が供給可能なように演算処理部2の各機能部と信号線を介して接続されている。
The sequencer (control unit) 1 comprehensively controls the semiconductor device in accordance with an instruction from the outside (for example, a processor connected via the external bus 3). The circuit configuration of the arithmetic processing unit 2 (Including logical configuration) is managed and control is performed to dynamically change it. Since the
シーケンサー1は、状態制御回路11、状態レジスタ12、及びコンフィグレーションメモリ13Fを有する。状態制御回路11は、予め設定された所定のシーケンスや演算処理部2からの状態遷移指示信号等に基づき、演算処理部2の状態(回路構成)を次状態に移すコンフィグレーションデータ及び固定値データをコンフィグレーションメモリ13Fから読み出すためのコンフィグレーションメモリアドレス及びその読み出しタイミングを生成する。状態制御回路11によるコンフィグレーションメモリアドレスの生成は、状態レジスタ12に保持されている現在の状態を示す情報を参照して行われる。また、次状態に遷移する際に、状態レジスタ12に保持する情報は更新される。
The
コンフィグレーションメモリ13Fは、演算処理部2の回路構成を設定するコンフィグレーションデータと、固定値データを記憶する。すべてのコンフィグレーションデータと固定値データは、動作開始前に外部からコンフィグレーションメモリ13Fに予め書き込まれ、状態毎に1組のデータとして保持される。コンフィグレーションメモリ13Fに記憶されているコンフィグレーションデータ及び固定値データは、状態制御回路11による制御に応じて読み出され、演算処理部2に出力される。コンフィグレーションメモリ13Fの内容についての詳細は後述する。
The
演算処理部2は、セレクタ/レジスタ(バス)21、演算部22−i、及びデータメモリ23−jを有する。なお、i,jは添え字であり、i=1〜N(Nは任意)の自然数、j=1〜M(Mは任意)の自然数である。
The
セレクタ/レジスタ21は、シーケンサー1から供給されるコンフィグレーションデータにより制御される。セレクタ/レジスタ21は、演算部22−1〜22−N及びデータメモリ23−1〜23−Mにそれぞれ接続され、演算部22−i及びデータメモリ23−jとの間でデータを授受する。言い換えると、セレクタ/レジスタ21は、演算部22−1〜22−N及びデータメモリ23−1〜23−Mを互いに通信可能なように接続するネットワーク機能を有している。
The selector /
具体的には、セレクタ/レジスタ21は、コンフィグレーションデータに応じて、演算部22−iにデータを供給したり、データメモリ23−jとの間で書き込みデータを供給したり、読み出されたデータの供給を受けたりする。また、セレクタ/レジスタ21は、演算部22−iの出力(演算結果)等を一時的に保持するレジスタを有しており、コンフィグレーションデータに応じてレジスタに保持されているデータ又はそれ以外から供給されるデータを選択的に出力可能となっている。
Specifically, the selector /
各演算部22−iは、レジスタ25と演算器(ALU)ユニット26を有する。
レジスタ25は、シーケンサー1から供給されるコンフィグレーションデータ及び固定値データをそれぞれ一時的に保持するコンフィグレーションレジスタ25A及び固定値レジスタ25Bで構成される。
Each arithmetic unit 22-i includes a
The
ALUユニット26は、シフト回路(シフター)、ALU(算術論理演算装置)、及びセレクタ等(以下、説明の便宜上、これらを区別せずに単に演算器とも称す。)を用いて構成される。なお、ALUユニット26、具体的にはそれを構成する複数の演算器(1つであっても良い)は、使用するアプリケーションに応じて適宜選択、決定される。
The
ALUユニット26は、コンフィグレーションレジスタ25Aに保持されたコンフィグレーションデータCDに基づいて、ALUユニット26毎に演算器の動作モードや演算器間の接続が設定される。つまり、ALUユニット26は、これを単位としてコンフィグレーションデータCDに応じて回路構成が変更可能となっており、加算、乗算、ビット演算、及び論理演算(AND、OR、EORなど)等をはじめとして所望の機能を実現するように(所定の処理を実行するように)各演算器等が制御される。
In the
例えば、シフト回路であれば、シフト量、算術シフト処理、論理シフト処理、及びシフト処理後の所定ビットのマスク処理等が制御される。また、例えばAND回路やOR回路等を用いて構成されたALUであれば、それらを適宜組み合わせたりしてALU全体での回路(演算)機能が制御される。また、セレクタであれば、複数の入力のうち、いずれの入力を出力するかが制御される。さらには、これらシフト回路、ALU、及びセレクタ等の間の接続が制御される。 For example, in the case of a shift circuit, a shift amount, an arithmetic shift process, a logical shift process, a mask process for a predetermined bit after the shift process, and the like are controlled. For example, if the ALU is configured using an AND circuit, an OR circuit, or the like, the circuit (calculation) function of the entire ALU is controlled by appropriately combining them. In the case of a selector, which input is output from among a plurality of inputs is controlled. Furthermore, the connections among these shift circuits, ALUs, selectors, and the like are controlled.
ALUユニット26は、セレクタ/レジスタ21から供給される第1の入力データDT1が入力されるとともに、コンフィグレーションデータに応じてセレクタ/レジスタ21から供給される第2の入力データDT2又は固定値レジスタ25Bに保持された固定値データCVDの一方が入力され、それらを用いて所定の演算を行って演算結果を出力する。このALUユニット26の出力は、そのまま出力することが可能であるが、コンフィグレーションデータに基づきフィードバックさせることもできるように構成されており、例えば出力を蓄積し規格化して出力することもできる。
The
各データメモリ23−jは、演算処理部2での処理に係るデータを記憶するメモリである。
Each data memory 23-j is a memory that stores data related to processing in the
図11は、図10に示したコンフィグレーションメモリ13Fの内容を説明するための図であり、上述したように各状態に対応したコンフィグレーションデータと固定値データとが記憶されている。図11において、CDiはコンフィグレーションデータであり、CVDiは固定値データである。なお、iは添え字であり、i=1〜N(Nは任意)の自然数である。また、図11においては、固定値データCVDiの値のみ図示しており、コンフィグレーションデータCDiの値については図示を省略している。
FIG. 11 is a diagram for explaining the contents of the
コンフィグレーションデータCDi及び固定値データCVDiは、k番目(k=1〜128の自然数)の状態にするときに、演算部22−iに供給されてコンフィグレーションレジスタ25に一時的に保持される。すなわち、演算処理部2にて所望の回路機能を実現するためのある回路構成FUNCkに係るコンフィグレーションデータと固定値データは、図11において行方向に配列された1組のコンフィグレーションデータCD1〜CDN及び固定値データCVD1〜CVDNにより構成される。なお、図11においては図示していないが、コンフィグレーションメモリ13Fには、演算部22−iに係るコンフィグレーションデータ以外にもセレクタ/レジスタ21を制御するコンフィグレーションデータ等が記憶されている。
The configuration data CDi and the fixed value data CVDi are supplied to the arithmetic unit 22-i and temporarily held in the
上述のように、CPUに代えてシーケンサー1を設けることで、再構成可能な半導体装置は、いわゆるダイナミックリコンフィグレーションが可能となり、クロック単位で動的に回路構成(論理)を再構成することができる。例えば、演算処理部2は、シーケンサー1からのコンフィグレーションデータ(制御信号)に基づき、あるクロック期間ではA機能を行い、次のクロック期間ではA機能とは異なるB機能を行うことができる。
As described above, by providing the
しかしながら、上記図10及び図11に示した再構成可能な半導体装置において、固定値(定数)を入力可能な演算器については、コンフィグレーションデータとともに固定値データがコンフィグレーションメモリ13Fに保存され、必要に応じて演算器に対応して設けられたコンフィグレーションレジスタ25に読み出され保持される。このようにコンフィグレーションメモリ13Fに固定値データを保存する場合には、固定値が入力可能な演算器毎に固定値データを記憶する固定値データ領域を設け、すべての固定値データをコンフィグレーションメモリ13Fに保存しておく必要がある。例えば、固定値が入力可能な演算器に対して、セレクタ/レジスタ21からの第2の入力データが32ビット幅であれば、コンフィグレーションメモリ13Fに当該演算器毎に32ビットの固定値データ領域を演算処理部2のすべての状態(以下、状態を「コンフィグレーション」とも称す。)について設ける必要がある。
However, in the reconfigurable semiconductor device shown in FIG. 10 and FIG. 11, for the arithmetic unit capable of inputting a fixed value (constant), the fixed value data is stored in the
ここで、演算処理部2の状態のすべてで各演算器の入力として固定値データを設定する、すなわち演算処理部2の状態を切り換える度に各演算器の入力として固定値データを設定することはほとんどない。したがって、上述にように設けた固定値データ領域は、コンフィグレーションメモリ13Fの記憶領域を浪費していることとなり、コンフィグレーションメモリ13Fに固定値データを保存する場合には多くのメモリ(記憶領域)を消費してしまう。
Here, the fixed value data is set as the input of each arithmetic unit in all the states of the
そこで、本出願人は、固定値データの記憶に要する記憶容量の低減を図った図12に構成を示すような再構成可能な半導体装置を提案している(特許文献1参照。)。図12は、本出願人が提案した再構成可能な半導体装置の他の構成例を示す図である。この図12において、図10に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。 In view of this, the present applicant has proposed a reconfigurable semiconductor device having a configuration shown in FIG. 12 in which the storage capacity required for storing fixed value data is reduced (see Patent Document 1). FIG. 12 is a diagram showing another configuration example of the reconfigurable semiconductor device proposed by the present applicant. In FIG. 12, components having the same functions as those shown in FIG. 10 are given the same reference numerals, and redundant descriptions are omitted.
図12に示す再構成可能な半導体装置は、シーケンサー1と演算処理部2を有し、演算処理部2内に固定値データを記憶する固定値用メモリ72−1、72−2を備えている。
The reconfigurable semiconductor device shown in FIG. 12 includes a
シーケンサー1は、状態制御回路11、状態レジスタ12、及びコンフィグレーションメモリ13Gを有する。
コンフィグレーションメモリ13Gは、演算処理部2の回路構成を設定するコンフィグレーションデータと、固定値指定データを記憶する。固定値指定データは、固定値用メモリ72−1、72−2に記憶されている固定値データの中から、演算処理部2の状態に対応した固定値データを指定し読み出すためのものであり、ここでは一例として固定値用メモリ72−1、72−2におけるアドレスとする。
The
The
演算処理部2は、セレクタ/レジスタ(バス)21、演算部22−i、及びデータメモリ23−jに加え、固定値用メモリ72−1、72−2、セレクタ73−i、及び固定値指定レジスタ74−1、74−2を有する。なお、i,jは添え字であり、i=1〜N(Nは任意)の自然数、j=1〜M(Mは任意)の自然数である。
The
固定値用メモリ72−1、72−2は、固定値データを記憶するメモリである。固定値用メモリ72−1、72−2に記憶されている固定値データは、シーケンサー1により固定値指定レジスタ74−1、74−2に設定されたアドレス値に基づいて読み出されセレクタ73−iに出力される。
The fixed value memories 72-1 and 72-2 are memories for storing fixed value data. The fixed value data stored in the fixed value memories 72-1 and 72-2 is read out by the
セレクタ73−iは、シーケンサー1から供給されるコンフィグレーションデータに応じて、セレクタ/レジスタ21から供給される第2の入力データDT2又は固定値用メモリ72−1、72−2から供給される固定値データCVDを選択し演算部22−i内のALUユニット26に出力する。
The selector 73-i is fixed according to the configuration data supplied from the
演算部22−iは、シーケンサー1から供給されるコンフィグレーションデータを一時的に保持するコンフィグレーションレジスタ71と、ALUユニット26を有する。演算部22−iは、固定値データが固定値用メモリ72−1、72−2から読み出されセレクタ73−iを介してALUユニット26に供給されるため、図10に示した固定値レジスタを備えていない。
The arithmetic unit 22-i includes a
なお、コンフィグレーションメモリ13Gに記憶されるコンフィグレーションデータと固定値指定データ、及び固定値用メモリ72−1、72−2に記憶される固定値データは、外部からコンフィグレーションメモリ13G及び固定値用メモリ72−1、72−2にそれぞれ動作開始前に予め書き込まれ保持される。コンフィグレーションデータと固定値指定データは、状態毎に1組のデータとしてコンフィグレーションメモリ13Gに保持される。
The configuration data and fixed value designation data stored in the
図13は、図12に示したコンフィグレーションメモリ13G及び固定値用メモリ72−1、72−2の内容を説明するための図である。なお、図13においては、比較参照するために図11に示したコンフィグレーションメモリ13Fの内容と等価な内容を一例として示している。
FIG. 13 is a diagram for explaining the contents of the
図13(A)はコンフィグレーションメモリ13Gの内容を示している。図13(A)において、CDi(i=1〜Nの自然数)はコンフィグレーションデータであり、CVAD1、CVAD2はそれぞれ固定値用メモリ72−1、72−2におけるアドレス値である。FUNCk(k=1〜128の自然数)は、演算処理部2にて所望の回路機能を実現するための状態(回路面)を示している。
FIG. 13A shows the contents of the
また、図13(B)、(C)は固定値用メモリ72−1、72−2の内容を示している。図13(B)、(C)において、CVAD1、CVAD2は固定値用メモリ72−1、72−2におけるアドレス値であり、CVDi(i=1〜Nの自然数)は固定値データである。図13(B)、(C)には、固定値用メモリ72−1に固定値データCVD1、CVD3を、固定値用メモリ72−2に固定値データCVD2、CVDNを記憶した場合を示している。 FIGS. 13B and 13C show the contents of the fixed value memories 72-1 and 72-2. 13B and 13C, CVAD1 and CVAD2 are address values in the fixed value memories 72-1 and 72-2, and CVDi (i = 1 to N is a natural number) is fixed value data. FIGS. 13B and 13C show a case where fixed value data CVD1 and CVD3 are stored in the fixed value memory 72-1, and fixed value data CVD2 and CVDN are stored in the fixed value memory 72-2. .
図13(B)、(C)に示したように、固定値用メモリ72−1、72−2のそれぞれにおいて、固定値データCVDiの組み合わせが同じ場合には、1組の固定値データCVDiとして記憶される。すなわち、固定値用メモリ72−1に記憶される固定値データCVDiの組み合わせは、互いに異なるものであり重複しては記憶されず、同様に、固定値用メモリ72−2に記憶される固定値データCVDiの組み合わせは、互いに異なるものであり重複しては記憶されない。 As shown in FIGS. 13B and 13C, when the combination of the fixed value data CVDi is the same in each of the fixed value memories 72-1 and 72-2, one set of fixed value data CVDi is obtained. Remembered. That is, the combinations of the fixed value data CVDi stored in the fixed value memory 72-1 are different from each other and are not stored redundantly. Similarly, the fixed values stored in the fixed value memory 72-2 are stored. The combinations of data CVDi are different from each other and are not stored redundantly.
また、図13(A)に示したようにコンフィグレーションメモリ13Gにおいては、コンフィグレーションデータCDiと、この状態に対応する固定値データCVDiの組み合わせが記憶されている固定値用メモリ72−1、72−2のアドレス値CVAD1、CVAD2がそれぞれ記憶される。
Further, as shown in FIG. 13A, in the
上述のように、固定値用メモリ72−1、72−2に固定値データの組み合わせが重複しないようにして固定値データを記憶し、コンフィグレーションメモリ13Gにコンフィグレーションデータと、その状態に対応する固定値データを読み出すための固定値用メモリ72−1、72−2のアドレス値を記憶する。これにより、コンフィグレーションメモリ13Gには固定値用データを記憶せずに固定値用メモリ72−1、72−2のアドレス値のみを記憶すれば良いので、コンフィグレーションメモリ13Gに要求される記憶容量を低減することができ、小さなサイズのメモリでコンフィグレーションメモリ13Gを構成することができる。また、固定値用メモリ72−1、72−2に、各状態毎に固定値データを記憶せず、同じ組み合わせの固定値データを1組の固定値データとして1つだけ記憶するので、固定値データを記憶するために要する記憶容量を低減することが可能となる。
As described above, the fixed value data is stored in the fixed value memories 72-1 and 72-2 so that the combination of the fixed value data does not overlap, and the
ここで、再構成可能な半導体装置において、コンフィグレーションメモリに記憶できる状態遷移数に対して、コンフィグレーションデータにより設定可能な回路構成数はかなり小さい傾向にある。例えば、各演算部22−iに係るコンフィグレーションデータのビット数がそれぞれ16ビットとし、演算部22−iの数が32個であったとすると、1つの状態(1つの回路面)におけるコンフィグレーションデータの総ビット数は512ビットとなり、2の512乗という膨大な組み合わせが存在することとなる。しかしながら、現在のLSIテクノロジでコストを考慮した適切なサイズのメモリ容量は数十KB程度であり、コンフィグレーションメモリで上述した膨大な組み合わせをすべて設定することは不可能である。 Here, in a reconfigurable semiconductor device, the number of circuit configurations that can be set by configuration data tends to be considerably smaller than the number of state transitions that can be stored in the configuration memory. For example, assuming that the number of bits of configuration data related to each arithmetic unit 22-i is 16 bits and the number of arithmetic units 22-i is 32, configuration data in one state (one circuit plane) The total number of bits is 512 bits, and there are enormous combinations of 2 to the 512th power. However, the memory capacity of an appropriate size considering the cost in the current LSI technology is about several tens of KB, and it is impossible to set all the huge combinations described above in the configuration memory.
また、再構成可能な半導体装置において、実際のアプリケーションを実装した場合の複数の回路面での回路構成に着目すると、相違する回路面の数がわずかであることも多い。例えば、図12に示した再構成可能な半導体装置における1つの演算部22−1に係るコンフィグレーションデータ(図13(A)に示したコンフィグレーションデータCD1)については、回路面数128に対して、128面すべての設定(コンフィグレーションデータ)が異なることは非常にまれであり、実際には数通りの異なる設定だけであることもある。 Further, in a reconfigurable semiconductor device, when attention is paid to the circuit configuration on a plurality of circuit surfaces when an actual application is mounted, the number of different circuit surfaces is often small. For example, with respect to the configuration data (configuration data CD1 shown in FIG. 13A) related to one arithmetic unit 22-1 in the reconfigurable semiconductor device shown in FIG. , It is very rare that the settings (configuration data) of all 128 planes are different, and there are actually only several different settings.
また、セレクタ/レジスタ(バス)21を制御するコンフィグレーションデータもコンフィグレーションメモリに記憶されるが、セレクタ/レジスタ(バス)21は、多数のセレクタ及び多数のレジスタから構成されており、コンフィグレーションデータ量は膨大である。 The configuration data for controlling the selector / register (bus) 21 is also stored in the configuration memory. The selector / register (bus) 21 is composed of a large number of selectors and a large number of registers. The amount is enormous.
本発明の目的は、動的に回路構成を再構成可能な半導体装置にて、回路構成の再構成に係る制御情報量を低減できるようにすることである。 An object of the present invention is to enable a semiconductor device capable of dynamically reconfiguring a circuit configuration to reduce the amount of control information related to the reconfiguration of the circuit configuration.
本発明の半導体装置は、第1の制御データ用メモリ及び演算器をそれぞれ有し第1の構成情報に応じて回路構成を再構成可能な複数の演算部と、コンフィグレーションメモリとを備える。第1の構成情報を第1の制御データ用メモリに記憶し、第1の構成情報を第1の制御データ用メモリから出力させるための第1の構成指定情報をコンフィグレーションメモリに記憶する。
本発明によれば、第1の構成情報を演算部内の第1の制御データ用メモリに記憶することで、コンフィグレーションメモリには第1の構成情報そのものを記憶するためのデータ領域を設けずに、第1の制御データ用メモリから第1の構成情報を出力させるための指定情報のみを記憶すれば良く、記憶すべきデータ量を低減することができる。
The semiconductor device of the present invention includes a plurality of arithmetic units each having a first control data memory and an arithmetic unit, and having a circuit configuration reconfigurable according to the first configuration information, and a configuration memory. First configuration information is stored in the first control data memory, and first configuration designation information for outputting the first configuration information from the first control data memory is stored in the configuration memory.
According to the present invention, the first configuration information is stored in the first control data memory in the arithmetic unit, so that the configuration memory does not have a data area for storing the first configuration information itself. Only the designation information for outputting the first configuration information from the first control data memory needs to be stored, and the amount of data to be stored can be reduced.
本発明によれば、コンフィグレーションメモリとは別に、演算部毎に第1の制御データ用メモリを設けて回路構成の再構成に係る構成情報を記憶するようにしたので、コンフィグレーションメモリに構成情報自体を記憶するためのデータ領域を設ける必要がなく、第1の制御データ用メモリから構成情報を出力させるための指定情報のみを記憶するだけで構成情報を供給することができる。したがって、回路構成を再構成するための制御情報量を低減することができ、コンフィグレーションメモリに要求される記憶容量を低減し、回路規模を削減することができる。 According to the present invention, since the first control data memory is provided for each arithmetic unit separately from the configuration memory, the configuration information related to the reconfiguration of the circuit configuration is stored. It is not necessary to provide a data area for storing itself, and the configuration information can be supplied only by storing the designation information for outputting the configuration information from the first control data memory. Therefore, the amount of control information for reconfiguring the circuit configuration can be reduced, the storage capacity required for the configuration memory can be reduced, and the circuit scale can be reduced.
以下、本発明の実施形態を図面に基づいて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(第1の実施形態)
図1は、本発明の第1の実施形態における再構成可能な半導体装置の構成例を示す図である。この図1において、図10に示した構成要素と同一の機能を有する構成要素には同一の符号を付している。第1の実施形態における再構成可能な半導体装置は、シーケンサー(制御部)1と演算処理部2を有する。
(First embodiment)
FIG. 1 is a diagram illustrating a configuration example of a reconfigurable semiconductor device according to the first embodiment of the present invention. In FIG. 1, components having the same functions as those shown in FIG. 10 are denoted by the same reference numerals. The reconfigurable semiconductor device according to the first embodiment includes a sequencer (control unit) 1 and an
シーケンサー1は、外部(例えば外部バス3を介して接続されているプロセッサ)からの指示に応じて、当該半導体装置を統括的に制御するものであり、演算処理部2の回路構成(論理構成を含む。)を管理するとともに、それを動的に変更させる制御を行う。シーケンサー1は、アプリケーションに応じて動的に演算処理部2の回路構成を変更するため、演算処理部2の各機能部と信号線を介して接続されている。
The
シーケンサー1は、状態制御回路11、状態レジスタ12、及びコンフィグレーションメモリ13Aを有する。また、演算処理部2は、セレクタ/レジスタ(バス)21、演算部22−i、及びデータメモリ23−jを有し、各演算部22−iは、制御データ用メモリ24、レジスタ25、及び演算器(ALU)ユニット26を有する。なお、i,jは添え字であり、i=1〜N(Nは任意)の自然数、j=1〜M(Mは任意)の自然数である。
The
状態制御回路11は、予め設定された所定のシーケンスや演算処理部2からの状態遷移指示信号等に基づいて、演算処理部2の状態(回路構成)を次状態に移すためのセレクタ/レジスタ(バス)21のコンフィグレーションデータ及び構成指定データをコンフィグレーションメモリ13Aから読み出すためのコンフィグレーションメモリアドレス及びその読み出しタイミングを生成する。状態制御回路11によるコンフィグレーションメモリアドレスの生成は、状態レジスタ12に保持されている現在の状態を示す情報を参照して行われる。また、次状態に遷移する際に、状態レジスタ12に保持する情報は更新される。
The
コンフィグレーションメモリ13Aは、演算処理部2内のセレクタ/レジスタ(バス)21の構成を設定するコンフィグレーションデータと、各演算部22−1〜22−Nに係る構成指定データを記憶する。この構成指定データは、演算部22−iの状態に対応した制御データ用メモリ24内のコンフィグレーションデータと固定値データとの組を一意に識別可能な情報であり、制御データ用メモリ24に記憶されているコンフィグレーションデータと固定値データとの組の中から、演算部22−iの状態に対応したコンフィグレーションデータと固定値データとの組を指定し読み出すためのものである。なお、以下では一例として、構成指定データは、制御データ用メモリ24におけるアドレスとする。
The
セレクタ/レジスタ(バス)21は、演算処理部2内でのデータ授受の制御を行い、シーケンサー1から供給されるコンフィグレーションデータCSRDにより制御される。セレクタ/レジスタ(バス)21は、演算部22−1〜22−N及びデータメモリ23−1〜23−Mにそれぞれ接続され、演算部22−i及びデータメモリ23−jとの間でデータを授受する。言い換えると、セレクタ/レジスタ(バス)21は、演算部22−1〜22−N及びデータメモリ23−1〜23−Mを互いに通信可能なように接続するネットワーク機能を有している。
The selector / register (bus) 21 controls data exchange within the
具体的には、セレクタ/レジスタ(バス)21は、コンフィグレーションデータに応じて、演算部22−iにデータを供給したり、データメモリ23−jとの間で書き込みデータを供給したり、読み出されたデータの供給を受けたりする。また、セレクタ/レジスタ(バス)21は、演算部22−iの出力(演算結果)等を一時的に保持するレジスタを有しており、コンフィグレーションデータに応じてレジスタに保持されているデータ又はそれ以外から供給されるデータを選択的に出力可能となっている。 Specifically, the selector / register (bus) 21 supplies data to the arithmetic unit 22-i, supplies write data to the data memory 23-j, and reads data according to the configuration data. Receive supply of released data. Further, the selector / register (bus) 21 has a register that temporarily holds the output (calculation result) and the like of the calculation unit 22-i, and the data stored in the register according to the configuration data or Data supplied from other sources can be selectively output.
制御データ用メモリ24は、演算部22−iに係るコンフィグレーションデータ及び固定値データを記憶するメモリであり、コンフィグレーションデータが格納されるコンフィグレーションデータ領域24A及び固定値データが格納される固定値データ領域24Bを有する。演算部22−iに係るコンフィグレーションデータ及び固定値データは、1組のデータとして制御データ用メモリ24に保持されており、構成指定データとしてシーケンサー1から供給されるアドレス値CADiに基づいて読み出され、そのデータ(コンフィグレーションデータ及び固定値データ)CDCVDがレジスタ25に出力される。
The
レジスタ25は、制御データ用メモリ24から出力されるコンフィグレーションデータを保持するコンフィグレーションレジスタ25A及び固定値データを保持する固定値レジスタ25Bで構成される。なお、レジスタ25は、制御データ用メモリ24から出力されたデータをALUユニット26に供給するタイミングを調整するためのものであり、例えば制御データ用メモリ24が同期型のメモリであり、出力のタイミング調整が不要である場合等にはレジスタ25を備えていなくとも良い。
The
ALUユニット26は、シフト回路(シフター)、ALU(算術論理演算装置)、及びセレクタ等(以下、これらを区別せずに単に演算器とも称す。)を用いて構成される。なお、ALUユニット26、具体的にはそれを構成する複数の演算器(1つであっても良い)は、使用するアプリケーションに応じて適宜選択、決定すれば良い。
The
ALUユニット26は、コンフィグレーションレジスタ25Aに保持されたコンフィグレーションデータCDに基づいて、ALUユニット26毎に演算器の動作モードや演算器間の接続が設定される。つまり、ALUユニット26は、これを単位としてコンフィグレーションデータCDに応じて回路構成が変更可能となっており、加算、乗算、ビット演算、及び論理演算等をはじめとして所望の機能を実現するように(所定の処理を実行するように)各演算器等が制御される。
In the
例えば、シフト回路であれば、シフト量、算術シフト処理、論理シフト処理、及びシフト処理後の所定ビットのマスク処理等が制御される。また、例えばAND回路やOR回路等を用いて構成されたALUであれば、それらを適宜組み合わせたりしてALU全体での回路(演算)機能が制御される。また、セレクタであれば、複数の入力のうち、いずれの入力を出力するかが制御される。さらには、これらシフト回路、ALU、及びセレクタ等の間の接続が制御される。 For example, in the case of a shift circuit, a shift amount, an arithmetic shift process, a logical shift process, a mask process for a predetermined bit after the shift process, and the like are controlled. For example, if the ALU is configured using an AND circuit, an OR circuit, or the like, the circuit (calculation) function of the entire ALU is controlled by appropriately combining them. In the case of a selector, which input is output from among a plurality of inputs is controlled. Furthermore, the connections among these shift circuits, ALUs, selectors, and the like are controlled.
ALUユニット26は、セレクタ/レジスタ21から供給される第1の入力データDT1が入力されるとともに、コンフィグレーションデータに応じてセレクタ/レジスタ21から供給される第2の入力データDT2又は固定値レジスタ25Bに保持された固定値データCVDの一方が入力され、それらを用いて演算を行い演算結果を出力する。このALUユニット26の出力は、そのまま出力することが可能であるが、コンフィグレーションデータに基づきフィードバックさせることもできるように構成されており、例えば出力を蓄積し規格化して出力することもできる。
各データメモリ23−jは、演算処理部2での処理に係るデータを記憶するメモリである。
The
Each data memory 23-j is a memory that stores data related to processing in the
なお、コンフィグレーションメモリ13Aに記憶されるセレクタ/レジスタ(バス)21のコンフィグレーションデータと演算部22−1〜22−Nの構成指定データ、及び制御データ用メモリ24に記憶される演算部22−iのコンフィグレーションデータと固定値データは、例えば、RISC(プロセッサ)やその他のハードウェア等により外部からコンフィグレーションメモリ13A及び制御データ用メモリ24にそれぞれ動作開始前に予め書き込まれ保持される。
The configuration data of the selector / register (bus) 21 stored in the
図2は、図1に示したコンフィグレーションメモリ13A及び制御データ用メモリ24の内容を説明するための図である。
図2(A)はコンフィグレーションメモリ13Aの内容を示している。図2(A)において、CADi(i=1〜Nの自然数)は対応する演算部22−iに係る構成指定データとしての制御データ用メモリ24におけるアドレス値であり、CSRDはセレクタ/レジスタ(バス)21のコンフィグレーションデータである。FUNCk(k=1〜128の自然数)は、演算処理部2にて所望の回路機能を実現するための状態(回路面)を示している。
FIG. 2 is a diagram for explaining the contents of the
FIG. 2A shows the contents of the
また、図2(B)、(C)は演算部22−iに設けられた制御データ用メモリ24の内容を示しており、CADi(i=1〜Nの自然数、CDCVDiについても同様)は制御データ用メモリ24におけるアドレス値であり、CDCVDiは対応する演算部22−iのコンフィグレーションデータ及び固定値データである。データCDCVDiは、例えば演算部22−iのコンフィグレーションデータCDiと固定値データCVDiをビット結合したものである(図中の“&”はビット連結子を示す。)。
2B and 2C show the contents of the
なお、図2(B)、(C)には、一例として、演算部22−1、22−Nに設けられた制御データ用メモリ24の内容をそれぞれ示している。図2(B)、(C)において、E1、E2、E3、E4、…、及びG1、G2、G3、G4、…を演算部22−1、22−Nのコンフィグレーションデータとし、F1、F2、…、及びH1、H2、H3、…を演算部22−1、22−Nの固定値データとする。
2B and 2C show the contents of the
つまり、第1の実施形態における再構成可能な半導体装置は、演算処理部2内の各演算部22−iに制御データ用メモリ24を設けて、演算部22−iのコンフィグレーションデータCDiと固定値データCVDiを記憶する。シーケンサー1内のコンフィグレーションメモリ13Aに、各演算部22−iの制御データ用メモリ24からコンフィグレーションデータCDiと固定値データCVDiを読み出すための制御データ用メモリ24のアドレス値を構成指定データとして記憶する。
That is, in the reconfigurable semiconductor device according to the first embodiment, the
そして、演算処理部2内の状態を切り換える際には、当該状態に対応するセレクタ/レジスタ(バス)21のコンフィグレーションデータCSRD及び各演算部22−iに係る構成指定データとしてのアドレス値CADiがコンフィグレーションメモリ13Aから読み出される。読み出されたセレクタ/レジスタ(バス)21のコンフィグレーションデータCSRDは、セレクタ/レジスタ(バス)21に供給され、セレクタ/レジスタ(バス)21の構成が設定される。また、読み出されたアドレス値CADiは、各演算部22−iに供給され、当該アドレス値CADiに基づいて制御データ用メモリ24からコンフィグレーションデータCDiと固定値データCVDiが読み出されてレジスタ25を介してALUユニット26に供給され回路構成が再構成される。このようにして演算処理部2で所望の機能が実現される。
When the state in the
ここで、制御データ用メモリ24に記憶される演算部22−iのコンフィグレーションデータCDiと固定値データCVDiの組み合わせが同じ場合には、1組のコンフィグレーションデータCDiと固定値データCVDiとして記憶される。すなわち、制御データ用メモリ24に記憶されるコンフィグレーションデータCDiと固定値データCVDiの組み合わせは、互いに異なるものであり重複しては記憶されない。
Here, when the combination of the configuration data CDi of the arithmetic unit 22-i and the fixed value data CVDi stored in the
以上、第1の実施形態によれば、演算処理部2内の各演算部22−i毎に当該演算部22−iに係るコンフィグレーションデータと固定値データを記憶する制御データ用メモリ24を設け、シーケンサー1内のコンフィグレーションメモリ13Aには、制御データ用メモリ24から演算部22−iに係るコンフィグレーションデータと固定値データを読み出すための構成指定データ(アドレス値)を記憶する。演算部22−iに係るコンフィグレーションデータと固定値データの組み合わせが同じ場合には制御データ用メモリ24に重複して記憶しないようにして、制御データ用メモリ24には互いに異なるコンフィグレーションデータと固定値データの組を記憶し、構成指定データであるアドレス値に応じて選択する。
As described above, according to the first embodiment, the
これにより、回路構成を再構成するためのコンフィグレーションデータの記憶に要する記憶容量を低減することができ、例えばコンフィグレーションメモリ13Aに要求される記憶容量を低減し、回路規模を削減することができる。また、予め演算部22−iにて設定可能な回路構成を絞り込む、すなわち設定可能なコンフィグレーションデータCDiの数を絞り込んだ場合には、制御データ用メモリ24からコンフィグレーションデータを読み出すための構成指定データのビット数をコンフィグレーションデータのビット数よりも少なくし、半導体装置全体として要求される記憶容量を低減することができる。
As a result, the storage capacity required to store the configuration data for reconfiguring the circuit configuration can be reduced. For example, the storage capacity required for the
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
上述した第1の実施形態においては、各演算部22−iに設けた制御データ用メモリ24に演算部22−iに係るコンフィグレーションデータと固定値データの組を記憶するようにしていたが、以下に説明する第2の実施形態は、演算部22−iに係るコンフィグレーションデータ及び固定値データを記憶するメモリを独立して配置する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described.
In the first embodiment described above, a set of configuration data and fixed value data related to the calculation unit 22-i is stored in the
図3は、第2の実施形態における再構成可能な半導体装置の構成例を示す図である。この図3において、図1に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。 FIG. 3 is a diagram illustrating a configuration example of a reconfigurable semiconductor device according to the second embodiment. In FIG. 3, components having the same functions as those shown in FIG. 1 are denoted by the same reference numerals, and redundant description is omitted.
シーケンサー1は、状態制御回路11、状態レジスタ12、及びコンフィグレーションメモリ13Bを有する。また、演算処理部2は、セレクタ/レジスタ(バス)21、演算部22−i、及びデータメモリ23−jを有する。各演算部22−iは、第1の制御データ(コンフィグレーションデータ)用メモリ31、第2の制御データ(固定値)用メモリ32、コンフィグレーションレジスタ33、固定値レジスタ34、及びALUユニット26を有する。
The
コンフィグレーションメモリ13Bは、演算処理部2内のセレクタ/レジスタ(バス)21の構成を設定するコンフィグレーションデータと、各演算部22−1〜22−Nに係る第1の構成指定データ及び第2の構成指定データを記憶する。第1の構成指定データは、演算部22−iの状態に対応した第1の制御データ用メモリ31内のコンフィグレーションデータを一意に識別可能な情報であり、第1の制御データ用メモリ31に記憶されているコンフィグレーションデータの中から、演算部22−iの状態に対応したコンフィグレーションデータを指定し読み出すためのものである。同様に、第2の構成指定データ(固定値指定データ)は、演算部22−iの状態に対応した第2の制御データ用メモリ32内の固定値データを一意に識別可能な情報であり、第2の制御データ用メモリ32に記憶されている固定値データの中から、演算部22−iの状態に対応した固定値データを指定し読み出すためのものである。なお、以下では一例として、第1及び第2の構成指定データは、それぞれ制御データ用メモリ31、32におけるアドレスとする。
The
第1の制御データ用メモリ31は、演算部22−iに係るコンフィグレーションデータを記憶するメモリである。第1の制御データ用メモリ31に記憶されているコンフィグレーションデータCDは、第1の構成指定データとしてシーケンサー1から供給されるアドレス値CADiに基づいて読み出されコンフィグレーションレジスタ33に出力される。
The first
第2の制御データ用メモリ32は、演算部22−iに係る固定値データを記憶するメモリである。第2の制御データ用メモリ32に記憶されている固定値データCVDは、第2の構成指定データとしてシーケンサー1から供給されるアドレス値DADiに基づいて読み出され固定値レジスタ34に出力される。
The second
コンフィグレーションレジスタ33及び固定値レジスタ34は、第1の実施形態におけるコンフィグレーションレジスタ25A及び固定値レジスタ25Bにそれぞれ対応する。
The
コンフィグレーションメモリ13Bに記憶されるセレクタ/レジスタ(バス)21のコンフィグレーションデータと、演算部22−1〜22−Nに係る第1及び第2の構成指定データ、及び第1及び第2の制御データ用メモリ31、32にそれぞれ記憶される演算部22−iのコンフィグレーションデータ及び固定値データは、外部からコンフィグレーションメモリ13B及び第1及び第2の制御データ用メモリ31、32にそれぞれ動作開始前に予め書き込まれ保持される。また、セレクタ/レジスタ(バス)21のコンフィグレーションデータと演算部22−1〜22−Nに係る第1及び第2の構成指定データは、状態毎に1組のデータとしてコンフィグレーションメモリ13Bに保持される。
Configuration data of the selector / register (bus) 21 stored in the
図4は、図3に示したコンフィグレーションメモリ13B、第1の制御データ用メモリ31、及び第2の制御データ用メモリ32の内容を説明するための図である。なお、図4においては、比較参照するために図2に示した内容と等価な内容を一例として示している。
4 is a diagram for explaining the contents of the
図4(A)はコンフィグレーションメモリ13Bの内容を示している。図4(A)において、CADi(i=1〜Nの自然数)は対応する演算部22−iに係る第1の構成指定データとしての制御データ用メモリ31におけるアドレス値であり、DADi(i=1〜Nの自然数)は対応する演算部22−iに係る第2の構成指定データとしての制御データ用メモリ32におけるアドレス値である。また、CSRDはセレクタ/レジスタ(バス)21のコンフィグレーションデータである。FUNCk(k=1〜128の自然数)は、演算処理部2にて所望の回路機能を実現するための状態(回路面)を示している。
FIG. 4A shows the contents of the
また、図4(B)〜(E)は演算部22−iに設けられた第1及び第2の制御データ用メモリ31、32の内容を示している。図4(B)は演算部22−1に設けた第1の制御データ用メモリ31の内容を示しており、CAD1は第1の制御データ用メモリ31におけるアドレス値であり、CD1は演算部22−1のコンフィグレーションデータである。図4(C)は演算部22−1に設けた第2の制御データ用メモリ32の内容を示しており、DAD1は第2の制御データ用メモリ32におけるアドレス値であり、CVD1は演算部22−1の固定値データである。
4B to 4E show the contents of the first and second
同様に、図4(D)は演算部22−Nに設けた第1の制御データ用メモリ31の内容を示しており、CADNは第1の制御データ用メモリ31におけるアドレス値であり、CDNは演算部22−Nのコンフィグレーションデータである。図4(E)は演算部22−Nに設けた第2の制御データ用メモリ32の内容を示しており、DADNは第2の制御データ用メモリ32におけるアドレス値であり、CVDNは演算部22−Nの固定値データである。
Similarly, FIG. 4D shows the contents of the first
すなわち、第2の実施形態における再構成可能な半導体装置は、演算処理部2内の各演算部22−iに第1及び第2の制御データ用メモリ31、32を設けて、演算部22−iのコンフィグレーションデータCDiと固定値データCVDiを独立して記憶する。シーケンサー1内のコンフィグレーションメモリ13Bには、各演算部22−iの独立した第1及び第2の制御データ用メモリ31、32からコンフィグレーションデータCDi及び固定値データCVDiを読み出すための第1及び第2の制御データ用メモリ31、32のアドレス値を構成指定データとしてそれぞれ記憶する。
That is, in the reconfigurable semiconductor device according to the second embodiment, the first and second
そして、演算処理部2内の状態を切り換える際には、当該状態に対応するセレクタ/レジスタ(バス)21のコンフィグレーションデータCSRD及び各演算部22−iに係る構成指定データとしてのアドレス値CADi、DADiがコンフィグレーションメモリ13Bから読み出される。読み出されたセレクタ/レジスタ(バス)21のコンフィグレーションデータCSRDは、セレクタ/レジスタ(バス)21に供給され、セレクタ/レジスタ(バス)21の構成が設定される。
When the state in the
また、読み出されたアドレス値CADi、DADiは、各演算部22−iに供給される。このアドレス値CADiに基づいて第1の制御データ用メモリ31からコンフィグレーションデータCDiが読み出されてコンフィグレーションレジスタ33を介してALUユニット26に供給されるとともに、アドレス値DADiに基づいて第2の制御データ用メモリ32から固定値データCVDiが読み出されて固定値レジスタ34を介してALUユニット26に供給される。このようにして回路構成が再構成され、演算処理部2で所望の機能が実現される。
Further, the read address values CADi and DADi are supplied to the respective arithmetic units 22-i. The configuration data CDi is read from the first
なお、第1の制御データ用メモリ31には、同じ値のコンフィグレーションデータCDiは重複して記憶されず、互いに異なるもののみ記憶される。同様に、第2の制御データ用メモリ32には、互いに異なる固定値データのみが記憶され、同じ値の固定値データCDiは重複して記憶されない。
In the first
以上、第2の実施形態によれば、第1の実施形態と同様の効果が得られ、回路構成を再構成するためのコンフィグレーションデータの記憶に要する記憶容量を低減することができ、回路規模を削減することができる。また、第1及び第2の制御データ用メモリ31、32を演算部22−i毎に設け、演算部22−iに係るコンフィグレーションデータと固定値データとを独立して記憶するようにしたので、コンフィグレーションデータと固定値データの組み合わせの数は多いが、コンフィグレーションデータと固定値データを個別に考えた場合に種類が少ない場合には、要求される記憶容量をさらに低減することが可能となる。
As described above, according to the second embodiment, the same effects as those of the first embodiment can be obtained, the storage capacity required to store the configuration data for reconfiguring the circuit configuration can be reduced, and the circuit scale can be reduced. Can be reduced. Since the first and second
なお、上記図1及び図2に示した第1の実施形態における構成、及び上記図3及び図4に示した第2の実施形態における構成は、使用するアプリケーション等に応じて適宜選択するようにすれば良い。 The configuration in the first embodiment shown in FIG. 1 and FIG. 2 and the configuration in the second embodiment shown in FIG. 3 and FIG. 4 are appropriately selected according to the application to be used. Just do it.
(第3の実施形態)
次に、本発明の第3の実施形態について説明する。
セレクタ/レジスタ(バス)の内部構造を示した再構成可能な半導体装置の構成を図5に示す。この図5において、図1、図10に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
(Third embodiment)
Next, a third embodiment of the present invention will be described.
FIG. 5 shows the configuration of a reconfigurable semiconductor device showing the internal structure of the selector / register (bus). In FIG. 5, components having the same functions as those shown in FIGS. 1 and 10 are denoted by the same reference numerals, and redundant description is omitted.
セレクタ/レジスタ(バス)21は、シーケンサー1から供給されるセレクタ/レジスタ(バス)設定情報であるコンフィグレーションデータCSRDを記憶する設定情報レジスタ回路41と、設定情報レジスタ回路41に記憶されたコンフィグレーションデータに基づいて所望の動作を行うセレクタ回路42を有する。なお、設定情報レジスタ回路41及びセレクタ回路42は、多数のレジスタ及び多数のセレクタで構成されている。
The selector / register (bus) 21 includes a setting
図6は、図5に示したコンフィグレーションメモリ13Cの内容を説明するための図であり、演算処理部2の各状態に対応した演算部22−iに係るコンフィグレーションデータ及び固定値データと、セレクタ/レジスタ(バス)21のコンフィグレーションデータが記憶されている。図16において、CDCVDiはビット結合後の演算部22−iに係るコンフィグレーションデータ及び固定値データであり、CSRDpはセレクタ/レジスタ(バス)21のコンフィグレーションデータである。なお、i、pは添え字であり、i=1〜N(Nは任意)の自然数、p=1〜Q(Qは任意)の自然数である。FUNCk(k=1〜128の自然数)は、演算処理部2にて所望の回路機能を実現するための状態(回路面)を示している。
FIG. 6 is a diagram for explaining the contents of the
なお、図6においては、本発明の第3の実施形態との比較を容易にするために、セレクタ/レジスタ(バス)21のコンフィグレーションデータをQ個のグループに分けて各グループに対応するコンフィグレーションデータをCSRDpとして示している。 In FIG. 6, in order to facilitate the comparison with the third embodiment of the present invention, the configuration data of the selector / register (bus) 21 is divided into Q groups and the configuration corresponding to each group. Data is shown as CSRDp.
演算部22−iの回路構成を再構成するコンフィグレーションデータに限らず、セレクタ/レジスタ(バス)21のコンフィグレーションデータも、セレクタ/レジスタ(バス)21が多数のセレクタ及び多数のレジスタから構成されているため、そのデータ量は膨大である。 The configuration data of the selector / register (bus) 21 is not limited to the configuration data for reconfiguring the circuit configuration of the arithmetic unit 22-i. The selector / register (bus) 21 includes a large number of selectors and a large number of registers. Therefore, the amount of data is enormous.
そこで、以下に説明する本発明の第3の実施形態における再構成可能な半導体装置は、セレクタ/レジスタ(バス)21のコンフィグレーションデータの記憶に要する記憶容量の低減を図るものである。具体的には、演算処理部2内にセレクタ/レジスタ(バス)21のコンフィグレーションデータを記憶する制御データ用メモリを設け、シーケンサー内のコンフィグレーションメモリには状態に対応するセレクタ/レジスタ(バス)21のコンフィグレーションデータを制御データ用メモリから読み出すための構成指定データを記憶させるようにするものである。
Therefore, the reconfigurable semiconductor device according to the third embodiment of the present invention described below is intended to reduce the storage capacity required to store the configuration data of the selector / register (bus) 21. Specifically, a control data memory for storing configuration data of the selector / register (bus) 21 is provided in the
図7は、第3の実施形態における再構成可能な半導体装置の構成例を示す図である。この図7において、図1、図5、及び図10に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。 FIG. 7 is a diagram illustrating a configuration example of a reconfigurable semiconductor device according to the third embodiment. In FIG. 7, components having the same functions as those shown in FIGS. 1, 5, and 10 are denoted by the same reference numerals, and redundant description is omitted.
シーケンサー1は、状態制御回路11、状態レジスタ12、及びコンフィグレーションメモリ13Dを有する。また、演算処理部2は、セレクタ/レジスタ(バス)21、演算部22−i、及びデータメモリ23−jを有する。セレクタ/レジスタ(バス)21は、制御データ用メモリ51−p、多数のレジスタで構成される設定情報レジスタ回路52、及び多数のセレクタで構成されるセレクタ回路42を有する。各演算部22−iは、コンフィグレーションレジスタ25A及び固定値レジスタ25Bで構成されるレジスタ25とALUユニット26とを有する。
The
コンフィグレーションメモリ13Dは、演算処理部2内の各演算部22−1〜22−Nに係るコンフィグレーションデータ及び固定値データCDCVDiと、セレクタ/レジスタ(バス)21に係る構成指定データを記憶する。この構成指定データは、セレクタ/レジスタ(バス)21の状態に対応した制御データ用メモリ51−p内のコンフィグレーションデータを一意に識別可能な情報であり、制御データ用メモリ51−pに記憶されているコンフィグレーションデータの中から、セレクタ/レジスタ(バス)21の状態に対応したコンフィグレーションデータを指定し読み出すためのものである。なお、以下では一例として、構成指定データは、制御データ用メモリ51−pにおけるアドレスとする。
The
制御データ用メモリ51−pは、セレクタ/レジスタ(バス)21に係るコンフィグレーションデータを記憶するメモリである。本実施形態では、セレクタ/レジスタ(バス)21をQ個のグループに分け、各グループに対して制御データ用メモリ51−pを配置している。制御データ用メモリ51−pに記憶されているコンフィグレーションデータCSRDpは、構成指定データとしてシーケンサー1から供給されるアドレス値CSRADpに基づいて読み出され設定情報レジスタ回路52に出力される。
The control data memory 51-p is a memory for storing configuration data related to the selector / register (bus) 21. In this embodiment, the selector / register (bus) 21 is divided into Q groups, and a control data memory 51-p is arranged for each group. The configuration data CSRDp stored in the control data memory 51-p is read out based on the address value CSRADp supplied from the
設定情報レジスタ回路52は、制御データ用メモリ51−1〜51−Qから供給されるコンフィグレーションデータCSRD1〜CSRDQを一時的に保持する。セレクタ回路42は、設定情報レジスタ回路52に保持されたコンフィグレーションデータCSRD1〜CSRDQに基づいて、回路構成を再構成して演算処理部2内におけるデータパスを制御し所望の動作を行う。
The setting
ここで、コンフィグレーションメモリ13Dに記憶される演算部22−1〜22−Nに係るコンフィグレーションデータ及び固定値データとセレクタ/レジスタ(バス)21に係る構成指定データ、及び制御データ用メモリ51−pにそれぞれ記憶されるセレクタ/レジスタ(バス)21のコンフィグレーションデータは、外部からコンフィグレーションメモリ13D及び制御データ用メモリ51−pに動作開始前に予め書き込まれ保持される。また、演算部22−1〜22−Nに係るコンフィグレーションデータ及び固定値データとセレクタ/レジスタ(バス)21に係る構成指定データは、状態毎に1組のデータとしてコンフィグレーションメモリ13Dに保持される。
Here, configuration data and fixed value data related to the arithmetic units 22-1 to 22-N stored in the
図8は、図7に示したコンフィグレーションメモリ13D及び制御データ用メモリ51−pの内容を説明するための図である。なお、図8においては、比較参照するために図6に示したコンフィグレーションメモリ13Cの内容と等価な内容を一例として示している。
FIG. 8 is a diagram for explaining the contents of the
図8(A)はコンフィグレーションメモリ13Dの内容を示している。図8(A)において、CDCVDi(i=1〜Nの自然数)は対応する演算部22−iに係るコンフィグレーションデータ及び固定値データであり、例えばコンフィグレーションデータCDiと固定値データCVDiをビット結合したものである(図中の“&”はビット連結子を示す。)。また、CSRADp(p=1〜Qの自然数)はQ個のグループに分けたセレクタ/レジスタ(バス)21に係る構成指定データとしての制御データ用メモリ51−pにおけるアドレス値である。FUNCk(k=1〜128の自然数)は、演算処理部2にて所望の回路機能を実現するための状態(回路面)を示している。
FIG. 8A shows the contents of the
また、図8(B)、(C)は制御データ用メモリ51−pの内容を示しており、CSRADp(p=1〜Qの自然数)は制御データ用メモリ51−pにおけるアドレス値であり、CSRDpはセレクタ/レジスタ(バス)21のコンフィグレーションデータである。なお、図8(B)、(C)には、一例として制御データ用メモリ51−1、51−Qの内容をそれぞれ示している。ここで、図8(B)、(C)に示すように、制御データ用メモリ51−pには、同じ値のコンフィグレーションデータCSRDpは重複して記憶せず、互いに異なるもののみ記憶する。 8B and 8C show the contents of the control data memory 51-p, CSRADp (p = 1 to Q is a natural number) is an address value in the control data memory 51-p, CSRDp is configuration data of the selector / register (bus) 21. 8B and 8C show the contents of the control data memories 51-1 and 51-Q, respectively, as an example. Here, as shown in FIGS. 8B and 8C, the control data memory 51-p does not store the same configuration data CSRDp, but stores only different ones.
第3の実施形態における再構成可能な半導体装置は、演算処理部2内のセレクタ/レジスタ(バス)21をQ個のグループに分けるとともに、セレクタ/レジスタ(バス)21に制御データ用メモリ51−p(p=1〜Qの自然数)を設けて、セレクタ/レジスタ(バス)21のコンフィグレーションデータCSRDpを記憶する。シーケンサー1内のコンフィグレーションメモリ13Dには、制御データ用メモリ51−pからセレクタ/レジスタ(バス)21の状態に対応するコンフィグレーションデータCSRDpを読み出すための制御データ用メモリ51−pのアドレス値を構成指定データとして記憶する。
In the reconfigurable semiconductor device according to the third embodiment, the selector / register (bus) 21 in the
そして、演算処理部2内の状態を切り換える際には、当該状態に対応する各演算部22−iに係るコンフィグレーションデータ及び固定値データCDCVDi及びセレクタ/レジスタ(バス)21に係る構成指定データとしてのアドレス値CSRADpがコンフィグレーションメモリ13Dから読み出される。読み出された各演算部22−iに係るコンフィグレーションデータ及び固定値データCDCVDiは、対応する演算部22−iに供給される。
When the state in the
また、読み出されたアドレス値CSRADpは、制御データ用メモリ51−pに供給され、当該アドレス値CSRADpに基づいて制御データ用メモリ51−pからコンフィグレーションデータCSRDpが読み出される。制御データ用メモリ51−1〜51−Qから読み出されたコンフィグレーションデータCSRD1〜CSRDQは、設定情報レジスタ52に保持され、この保持されたコンフィグレーションデータCSRD1〜CSRDQに基づいて、セレクタ回路42が再構成され所望の動作が実行される。
The read address value CSRADp is supplied to the control data memory 51-p, and the configuration data CSRDp is read from the control data memory 51-p based on the address value CSRADp. The configuration data CSRD1 to CSRDQ read from the control data memories 51-1 to 51-Q are held in the setting
第3の実施形態によれば、演算処理部2内のセレクタ/レジスタ(バス)21に制御データ用メモリ51−pを設けてセレクタ/レジスタ(バス)21のコンフィグレーションデータを記憶し、シーケンサー1内のコンフィグレーションメモリ13Dには、制御データ用メモリ51−pからコンフィグレーションデータを読み出すための構成指定データ(アドレス値)を記憶する。制御データ用メモリ51−pには、同じ値のコンフィグレーションデータCSRDpは重複して記憶せずに異なるもののみ記憶し、構成指定データであるアドレス値に応じて選択する。
According to the third embodiment, the selector / register (bus) 21 in the
これにより、回路構成を再構成するためのコンフィグレーションデータの記憶に要する記憶容量を低減することができ、例えばコンフィグレーションメモリ13Dに要求される記憶容量を低減し、回路規模を削減することができる。なお、セレクタ/レジスタ(バス)21を複数のグループに分ける際の分割数Qは、セレクタ/レジスタ(バス)21のコンフィグレーションデータの記憶に要する記憶容量が少なくなるように決定すれば良い。
As a result, the storage capacity required to store the configuration data for reconfiguring the circuit configuration can be reduced. For example, the storage capacity required for the
(第4の実施形態)
次に、本発明の第4の実施形態について説明する。
図9は、第4の実施形態における再構成可能な半導体装置の構成例を示す図である。この図9において、図1及び図7に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
(Fourth embodiment)
Next, a fourth embodiment of the present invention will be described.
FIG. 9 is a diagram illustrating a configuration example of a reconfigurable semiconductor device according to the fourth embodiment. In FIG. 9, components having the same functions as those shown in FIGS. 1 and 7 are given the same reference numerals, and redundant descriptions are omitted.
図9に示すように、第4の実施形態における再構成可能な半導体装置は、上述した第1の実施形態における再構成可能な半導体装置及び第3の実施形態における再構成可能な半導体装置の両方の特徴的構成を備えている。すなわち、第4の実施形態における再構成可能な半導体装置は、演算処理部2内の各演算部22−iに当該演算部22−iに係るコンフィグレーションデータ及び固定値データを記憶する制御データ用メモリ24を有するとともに、セレクタ/レジスタ(バス)21にセレクタ/レジスタ(バス)21に係るコンフィグレーションデータを記憶する制御データ用メモリ51−pを有する。
As shown in FIG. 9, the reconfigurable semiconductor device in the fourth embodiment includes both the reconfigurable semiconductor device in the first embodiment and the reconfigurable semiconductor device in the third embodiment. It has the characteristic configuration. That is, the reconfigurable semiconductor device according to the fourth embodiment is for control data that stores configuration data and fixed value data related to the calculation unit 22-i in each calculation unit 22-i in the
シーケンサー1内のコンフィグレーションメモリ13Eには、制御データ用メモリ24から演算部22−iの状態に対応したコンフィグレーションデータと固定値データとの組を指定し読み出すための構成指定データ(例えば制御データ用メモリ24のアドレス値CADi)と、制御データ用メモリ51−pからセレクタ/レジスタ(バス)21の状態に対応したコンフィグレーションデータを指定し読み出すための構成指定データ(例えば制御データ用メモリ51−pのアドレス値CSRADp)が記憶される。
The
第4の実施形態によれば、第1の実施形態と同様の効果が得られるとともに、第3の実施形態と同様の効果が得られ、回路構成を再構成するためのコンフィグレーションデータの記憶に要する記憶容量をさらに低減することができ、回路規模を削減することができる。 According to the fourth embodiment, the same effect as that of the first embodiment can be obtained, and the same effect as that of the third embodiment can be obtained. For storing configuration data for reconfiguring the circuit configuration. The required storage capacity can be further reduced, and the circuit scale can be reduced.
なお、上述した第2の実施形態における再構成可能な半導体装置及び第3の実施形態における再構成可能な半導体装置の両方の特徴的構成を備える再構成可能な半導体装置も同様に構成可能である。その場合にも、第2の実施形態と同様の効果及び第3の実施形態と同様の効果が得られ、コンフィグレーションデータの記憶に要する記憶容量を低減することができ、回路規模を削減することができる。 The reconfigurable semiconductor device having the characteristic configurations of both the reconfigurable semiconductor device in the second embodiment and the reconfigurable semiconductor device in the third embodiment can be similarly configured. . Even in that case, the same effect as the second embodiment and the same effect as the third embodiment can be obtained, the storage capacity required for storing the configuration data can be reduced, and the circuit scale can be reduced. Can do.
また、上述した各実施形態では、演算部22−iに係るコンフィグレーションデータ及び固定値データを記憶するための制御データ用メモリ24又は第1及び第2の制御データ用メモリ31、32を各演算部22−iに設けているが、複数の演算部22−iで1つのグループを形成し、グループ毎にコンフィグレーションデータ及び固定値データを記憶するための制御データ用メモリを設けるようにしても良い。
Further, in each of the above-described embodiments, the
また、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
In addition, each of the above-described embodiments is merely an example of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed as being limited thereto. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.
Various aspects of the present invention will be described below as supplementary notes.
(付記1)第1の構成情報を記憶する第1の制御データ用メモリと、演算器とをそれぞれ有し、上記第1の制御データ用メモリから出力される上記第1の構成情報に応じて回路構成を再構成可能な複数の演算部と、
上記第1の制御データ用メモリから第1の構成情報を出力させるための第1の構成指定情報を記憶し、記憶している上記第1の構成指定情報を上記第1の制御データ用メモリに対して供給するコンフィグレーションメモリとを備えることを特徴とする半導体装置。
(付記2)上記第1の構成指定情報は、第1の構成情報が記憶されている領域を示す上記第1の制御データ用メモリのアドレス情報であることを特徴とする付記1記載の半導体装置。
(付記3)上記第1の制御データ用メモリに記憶する第1の構成情報は、互いに異なることを特徴とする付記1記載の半導体装置。
(付記4)上記第1の制御データ用メモリは、上記第1の構成情報とともに、当該第1の構成情報に対応し上記演算器での演算処理に用いる固定値を記憶することを特徴とする付記1記載の半導体装置。
(付記5)上記演算部は、上記演算器での演算処理に用いる固定値を記憶する固定値用メモリを有し、
上記コンフィグレーションメモリは、上記第1の構成指定情報とともに、当該第1の構成指定情報に応じて出力される第1の構成情報に対応する固定値を上記固定値用メモリから上記演算器に出力させるための固定値指定情報を記憶することを特徴とする付記1記載の半導体装置。
(付記6)上記固定値指定情報は、上記第1の構成情報に対応する固定値が記憶されている領域を示す上記固定値用メモリのアドレス情報であることを特徴とする付記5記載の半導体装置。
(付記7)上記固定値用メモリに記憶する固定値は、互いに異なることを特徴とする付記5記載の半導体装置。
(付記8)第2の構成情報を記憶する第2の制御データ用メモリを有し、上記第2の制御データ用メモリから出力される上記第2の構成情報に応じて回路構成を再構成し上記複数の演算部を含む演算処理部内でのデータ授受を制御するセレクタ/レジスタ部を備え、
上記コンフィグレーションメモリは、上記第1の構成指定情報とともに、上記第2の制御データ用メモリから第2の構成情報を出力させるための第2の構成指定情報を記憶し、記憶している上記第2の構成指定情報を上記第2の制御データ用メモリに対して供給することを特徴とする付記1記載の半導体装置。
(付記9)上記セレクタ/レジスタ部を複数のグループに分割し、各グループ毎に当該グループに係る第2の構成情報を記憶する上記第2の制御データ用メモリを設けることを特徴とする付記8記載の半導体装置。
(付記10)上記第2の構成指定情報は、第2の構成情報が記憶されている領域を示す上記第2の制御データ用メモリのアドレス情報であることを特徴とする付記9記載の半導体装置。
(付記11)上記第2の制御データ用メモリに記憶する第2の構成情報は、互いに異なることを特徴とする付記9記載の半導体装置。
(付記12)上記セレクタ/レジスタ部は、上記第2の制御データ用メモリから出力される第2の構成情報を保持する設定情報レジスタ回路と、
上記設定情報レジスタ回路に保持された第2の構成情報に応じて、回路構成を再構成し演算処理部内におけるデータパスを制御するセレクタ回路とを有することを特徴とする付記8記載の半導体装置。
(付記13)演算器をそれぞれ有し、供給される制御情報に応じて回路構成を再構成可能な複数の演算部と、
演算処理データを記憶するデータメモリと、
構成情報を記憶する制御データ用メモリを有し、上記制御データ用メモリから出力される上記構成情報に応じて回路構成を再構成し、上記演算部及びデータメモリにおけるデータの授受を制御するセレクタ/レジスタ部と、
上記制御データ用メモリから構成情報を出力させるための構成指定情報を記憶し、記憶している上記構成指定情報を上記制御データ用メモリに対して供給するコンフィグレーションメモリとを備えることを特徴とする半導体装置。
(付記14)上記セレクタ/レジスタ部を複数のグループに分割し、各グループ毎に当該グループに係る構成情報を記憶する上記制御データ用メモリを設けることを特徴とする付記13記載の半導体装置。
(付記15)上記構成指定情報は、構成情報が記憶されている領域を示す上記制御データ用メモリのアドレス情報であることを特徴とする付記14記載の半導体装置。(10)
(付記16)上記制御データ用メモリに記憶する構成情報は、互いに異なることを特徴とする付記14記載の半導体装置。
(付記17)上記セレクタ/レジスタ部は、上記制御データ用メモリから出力される構成情報を保持する設定情報レジスタ回路と、
上記設定情報レジスタ回路に保持された構成情報に応じて、回路構成が再構成されるセレクタ回路とを有することを特徴とする付記13記載の半導体装置。
(Supplementary note 1) According to the first configuration information output from the first control data memory, each having a first control data memory for storing the first configuration information and an arithmetic unit. A plurality of arithmetic units capable of reconfiguring the circuit configuration;
First configuration designation information for outputting first configuration information from the first control data memory is stored, and the stored first configuration designation information is stored in the first control data memory. A semiconductor device comprising a configuration memory to be supplied to the semiconductor device.
(Supplementary note 2) The semiconductor device according to
(Supplementary Note 3) The semiconductor device according to
(Supplementary Note 4) The first control data memory stores, together with the first configuration information, a fixed value that corresponds to the first configuration information and is used for arithmetic processing in the arithmetic unit. The semiconductor device according to
(Additional remark 5) The said calculating part has memory for fixed values which memorize | stores the fixed value used for the arithmetic processing in the said calculator,
The configuration memory outputs a fixed value corresponding to the first configuration information output according to the first configuration designation information from the fixed value memory to the arithmetic unit together with the first configuration designation information. 2. The semiconductor device according to
(Supplementary note 6) The semiconductor according to supplementary note 5, wherein the fixed value designation information is address information of the fixed value memory indicating an area in which a fixed value corresponding to the first configuration information is stored. apparatus.
(Supplementary note 7) The semiconductor device according to Supplementary note 5, wherein the fixed values stored in the fixed value memory are different from each other.
(Supplementary Note 8) A second control data memory for storing second configuration information is provided, and the circuit configuration is reconfigured according to the second configuration information output from the second control data memory. A selector / register unit that controls data exchange in the arithmetic processing unit including the plurality of arithmetic units,
The configuration memory stores the second configuration designation information for outputting the second configuration information from the second control data memory together with the first configuration designation information, and stores the second configuration designation information. 2. The semiconductor device according to
(Supplementary note 9) The selector / register unit is divided into a plurality of groups, and the second control data memory for storing the second configuration information related to the group is provided for each group. The semiconductor device described.
(Supplementary note 10) The semiconductor device according to supplementary note 9, wherein the second configuration designation information is address information of the second control data memory indicating an area in which the second configuration information is stored. .
(Supplementary note 11) The semiconductor device according to supplementary note 9, wherein the second configuration information stored in the second control data memory is different from each other.
(Supplementary Note 12) The selector / register unit includes a setting information register circuit that holds second configuration information output from the second control data memory;
9. The semiconductor device according to claim 8, further comprising: a selector circuit that reconfigures a circuit configuration and controls a data path in the arithmetic processing unit according to the second configuration information held in the setting information register circuit.
(Supplementary note 13) A plurality of arithmetic units each having an arithmetic unit and capable of reconfiguring the circuit configuration according to the supplied control information;
A data memory for storing arithmetic processing data;
A selector / memory having a control data memory for storing configuration information, reconfiguring a circuit configuration in accordance with the configuration information output from the control data memory, and controlling data exchange in the arithmetic unit and the data memory A register section;
A configuration memory for storing configuration designation information for outputting the configuration information from the control data memory, and supplying the stored configuration designation information to the control data memory. Semiconductor device.
(Supplementary note 14) The semiconductor device according to
(Supplementary note 15) The semiconductor device according to
(Supplementary note 16) The semiconductor device according to
(Supplementary Note 17) The selector / register unit includes a setting information register circuit that holds configuration information output from the control data memory;
14. The semiconductor device according to
1 シーケンサー
2 演算処理部
11 状態制御回路
12 状態レジスタ
13A〜13G コンフィグレーションメモリ
21 セレクタ/レジスタ
22 演算部
23 データメモリ
24 制御データ用メモリ
25 レジスタ
26 演算器ユニット
31、32 制御データ用メモリ
33、34 レジスタ
42 セレクタ回路
51 制御データ用メモリ
52 設定情報レジスタ回路
DESCRIPTION OF
Claims (5)
上記第1の制御データ用メモリから第1の構成情報を出力させるための第1の構成指定情報を記憶し、記憶している上記第1の構成指定情報を上記第1の制御データ用メモリに対して供給するコンフィグレーションメモリとを備えることを特徴とする半導体装置。 Each of the first control data memory for storing the first configuration information and an arithmetic unit is provided, and the circuit configuration is re-established according to the first configuration information output from the first control data memory. A plurality of configurable computing units;
First configuration designation information for outputting first configuration information from the first control data memory is stored, and the stored first configuration designation information is stored in the first control data memory. A semiconductor device comprising a configuration memory to be supplied to the semiconductor device.
上記コンフィグレーションメモリは、上記第1の構成指定情報とともに、上記第2の制御データ用メモリから第2の構成情報を出力させるための第2の構成指定情報を記憶し、記憶している上記第2の構成指定情報を上記第2の制御データ用メモリに対して供給することを特徴とする請求項1又は2に記載の半導体装置。 A second control data memory for storing second configuration information, and reconfiguring a circuit configuration in accordance with the second configuration information output from the second control data memory to perform the plurality of operations. A selector / register unit for controlling data exchange in the arithmetic processing unit including the unit,
The configuration memory stores the second configuration designation information for outputting the second configuration information from the second control data memory together with the first configuration designation information, and stores the second configuration designation information. 3. The semiconductor device according to claim 1, wherein the configuration designation information is supplied to the second control data memory.
演算処理データを記憶するデータメモリと、
構成情報を記憶する制御データ用メモリを有し、上記制御データ用メモリから出力される上記構成情報に応じて回路構成を再構成し、上記演算部及びデータメモリにおけるデータの授受を制御するセレクタ/レジスタ部と、
上記制御データ用メモリから構成情報を出力させるための構成指定情報を記憶し、記憶している上記構成指定情報を上記制御データ用メモリに対して供給するコンフィグレーションメモリとを備えることを特徴とする半導体装置。 A plurality of arithmetic units each having an arithmetic unit and capable of reconfiguring the circuit configuration according to the supplied control information;
A data memory for storing arithmetic processing data;
A selector / memory having a control data memory for storing configuration information, reconfiguring a circuit configuration in accordance with the configuration information output from the control data memory, and controlling data exchange in the arithmetic unit and the data memory A register section;
A configuration memory for storing configuration designation information for outputting the configuration information from the control data memory, and supplying the stored configuration designation information to the control data memory. Semiconductor device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006265487A JP2008085864A (en) | 2006-09-28 | 2006-09-28 | Semiconductor device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006265487A JP2008085864A (en) | 2006-09-28 | 2006-09-28 | Semiconductor device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008085864A true JP2008085864A (en) | 2008-04-10 |
Family
ID=39356214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006265487A Pending JP2008085864A (en) | 2006-09-28 | 2006-09-28 | Semiconductor device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008085864A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009193466A (en) * | 2008-02-15 | 2009-08-27 | Toshiba Corp | Semiconductor device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005348272A (en) * | 2004-06-04 | 2005-12-15 | Fujitsu Ltd | Common package mounting apparatus |
JP2006018452A (en) * | 2004-06-30 | 2006-01-19 | Fujitsu Ltd | Semiconductor device |
JP2006018453A (en) * | 2004-06-30 | 2006-01-19 | Fujitsu Ltd | Semiconductor device |
JP2006197023A (en) * | 2005-01-11 | 2006-07-27 | Fujitsu Ltd | Semiconductor integrated circuit |
-
2006
- 2006-09-28 JP JP2006265487A patent/JP2008085864A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005348272A (en) * | 2004-06-04 | 2005-12-15 | Fujitsu Ltd | Common package mounting apparatus |
JP2006018452A (en) * | 2004-06-30 | 2006-01-19 | Fujitsu Ltd | Semiconductor device |
JP2006018453A (en) * | 2004-06-30 | 2006-01-19 | Fujitsu Ltd | Semiconductor device |
JP2006197023A (en) * | 2005-01-11 | 2006-07-27 | Fujitsu Ltd | Semiconductor integrated circuit |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009193466A (en) * | 2008-02-15 | 2009-08-27 | Toshiba Corp | Semiconductor device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4485272B2 (en) | Semiconductor device | |
US11188497B2 (en) | Configuration unload of a reconfigurable data processor | |
US20210055940A1 (en) | Efficient Configuration Of A Reconfigurable Data Processor | |
US8138788B2 (en) | Reconfigurable device | |
JP4971998B2 (en) | Semiconductor integrated circuit, program conversion device, and mapping device | |
US11580056B2 (en) | Control barrier network for reconfigurable data processors | |
US7908453B2 (en) | Semiconductor device having a dynamically reconfigurable circuit configuration | |
US20060015701A1 (en) | Arithmetic node including general digital signal processing functions for an adaptive computing machine | |
KR20100092805A (en) | A processor with reconfigurable architecture | |
TW544603B (en) | Designer configurable multi-processor system | |
JP2007272671A (en) | Motion composition device, debugging device, write device and circuit design support system and method | |
JP4962305B2 (en) | Reconfigurable circuit | |
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 | |
JP2008085864A (en) | Semiconductor device | |
JP2006303730A (en) | Semiconductor integrated circuit device, and design apparatus for semiconductor integrated circuit device | |
US20060271614A1 (en) | Switched Processor Datapath | |
JP4330472B2 (en) | Processing equipment | |
JP4562678B2 (en) | Data flow graph reconstruction device, setting data generation device for reconfigurable circuit, and processing device | |
JP2007272395A (en) | Date flow graph generation device, setting data generation device of integrated circuit, processor, and integrated circuit | |
JP2011134042A (en) | Simd type microprocessor and data alignment method of the same | |
JPH0346068A (en) | Vector processing system | |
JP2010087880A (en) | Semiconductor integrated circuit | |
JP2008278326A (en) | Semiconductor device | |
JP2005004343A (en) | Logic integrated circuit | |
JPH03189883A (en) | Lsi configuration system for parallel computer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090611 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120131 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120605 |