JP2008085864A - Semiconductor device - Google Patents

Semiconductor device Download PDF

Info

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
Application number
JP2006265487A
Other languages
Japanese (ja)
Inventor
Toru Tsuruta
徹 鶴田
Ichiro Kasama
一郎 笠間
Katsu Nishida
克 西田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006265487A priority Critical patent/JP2008085864A/en
Publication of JP2008085864A publication Critical patent/JP2008085864A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Logic Circuits (AREA)
  • Microcomputers (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To reduce the amount of control information related to restructure of circuit structure in a semiconductor device, the circuit structure of which can be dynamically restructured. <P>SOLUTION: The semiconductor device which has a control data memory 24 that stores configuration data and an operator 26 includes a plurality of calculation parts 22, the circuit structure of which can be restructured corresponding to the configuration data, and a configuration memory 13A that stores structure specifying data to output the configuration data from the control data memory. In the configuration memory, the configuration data are not stored, but only information to output the configuration data from the control data memory is stored to supply the configuration data. <P>COPYRIGHT: (C)2008,JPO&INPIT

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 sequencer 1 dynamically changes the circuit configuration of the arithmetic processing unit 2 according to the application, the arithmetic processing unit 2 can supply a control signal from the sequencer 1 including configuration data (configuration information). Are connected to each functional unit via a signal line.

シーケンサー1は、状態制御回路11、状態レジスタ12、及びコンフィグレーションメモリ13Fを有する。状態制御回路11は、予め設定された所定のシーケンスや演算処理部2からの状態遷移指示信号等に基づき、演算処理部2の状態(回路構成)を次状態に移すコンフィグレーションデータ及び固定値データをコンフィグレーションメモリ13Fから読み出すためのコンフィグレーションメモリアドレス及びその読み出しタイミングを生成する。状態制御回路11によるコンフィグレーションメモリアドレスの生成は、状態レジスタ12に保持されている現在の状態を示す情報を参照して行われる。また、次状態に遷移する際に、状態レジスタ12に保持する情報は更新される。   The sequencer 1 includes a state control circuit 11, a state register 12, and a configuration memory 13F. The state control circuit 11 is a configuration data and fixed value data for shifting the state (circuit configuration) of the arithmetic processing unit 2 to the next state based on a predetermined sequence set in advance, a state transition instruction signal from the arithmetic processing unit 2, or the like. Is read from the configuration memory 13F, and a read timing is generated. The configuration memory address is generated by the state control circuit 11 with reference to information indicating the current state held in the state register 12. Also, the information held in the state register 12 is updated when transitioning to the next state.

コンフィグレーションメモリ13Fは、演算処理部2の回路構成を設定するコンフィグレーションデータと、固定値データを記憶する。すべてのコンフィグレーションデータと固定値データは、動作開始前に外部からコンフィグレーションメモリ13Fに予め書き込まれ、状態毎に1組のデータとして保持される。コンフィグレーションメモリ13Fに記憶されているコンフィグレーションデータ及び固定値データは、状態制御回路11による制御に応じて読み出され、演算処理部2に出力される。コンフィグレーションメモリ13Fの内容についての詳細は後述する。   The configuration memory 13F stores configuration data for setting the circuit configuration of the arithmetic processing unit 2 and fixed value data. All configuration data and fixed value data are written in advance to the configuration memory 13F from the outside before the operation starts, and are held as a set of data for each state. Configuration data and fixed value data stored in the configuration memory 13 </ b> F are read according to control by the state control circuit 11 and output to the arithmetic processing unit 2. Details of the contents of the configuration memory 13F will be described later.

演算処理部2は、セレクタ/レジスタ(バス)21、演算部22−i、及びデータメモリ23−jを有する。なお、i,jは添え字であり、i=1〜N(Nは任意)の自然数、j=1〜M(Mは任意)の自然数である。   The arithmetic processing unit 2 includes a selector / register (bus) 21, an arithmetic unit 22-i, and a data memory 23-j. Note that i and j are subscripts, i = 1 to N (N is an arbitrary number), and j = 1 to M (M is an arbitrary number).

セレクタ/レジスタ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 / register 21 is controlled by configuration data supplied from the sequencer 1. The selector / register 21 is connected to the arithmetic units 22-1 to 22-N and the data memories 23-1 to 23-M, respectively, and exchanges data with the arithmetic units 22-i and the data memory 23-j. In other words, the selector / register 21 has a network function for connecting the arithmetic units 22-1 to 22-N and the data memories 23-1 to 23-M so that they can communicate with each other.

具体的には、セレクタ/レジスタ21は、コンフィグレーションデータに応じて、演算部22−iにデータを供給したり、データメモリ23−jとの間で書き込みデータを供給したり、読み出されたデータの供給を受けたりする。また、セレクタ/レジスタ21は、演算部22−iの出力(演算結果)等を一時的に保持するレジスタを有しており、コンフィグレーションデータに応じてレジスタに保持されているデータ又はそれ以外から供給されるデータを選択的に出力可能となっている。   Specifically, the selector / register 21 supplies data to the arithmetic unit 22-i, supplies write data to and from the data memory 23-j, and is read according to the configuration data. Receive data supply. Further, the selector / register 21 has a register that temporarily holds the output (calculation result) and the like of the calculation unit 22-i. From the data held in the register according to the configuration data or other than that The supplied data can be selectively output.

各演算部22−iは、レジスタ25と演算器(ALU)ユニット26を有する。
レジスタ25は、シーケンサー1から供給されるコンフィグレーションデータ及び固定値データをそれぞれ一時的に保持するコンフィグレーションレジスタ25A及び固定値レジスタ25Bで構成される。
Each arithmetic unit 22-i includes a register 25 and an arithmetic unit (ALU) unit 26.
The register 25 includes a configuration register 25A and a fixed value register 25B that temporarily hold configuration data and fixed value data supplied from the sequencer 1, respectively.

ALUユニット26は、シフト回路(シフター)、ALU(算術論理演算装置)、及びセレクタ等(以下、説明の便宜上、これらを区別せずに単に演算器とも称す。)を用いて構成される。なお、ALUユニット26、具体的にはそれを構成する複数の演算器(1つであっても良い)は、使用するアプリケーションに応じて適宜選択、決定される。   The ALU unit 26 is configured using a shift circuit (shifter), an ALU (arithmetic logic unit), a selector, and the like (hereinafter, for convenience of explanation, these are simply referred to as an arithmetic unit without being distinguished from each other). The ALU unit 26, specifically, a plurality of arithmetic units (or one) constituting the ALU unit may be selected and determined as appropriate according to the application to be used.

ALUユニット26は、コンフィグレーションレジスタ25Aに保持されたコンフィグレーションデータCDに基づいて、ALUユニット26毎に演算器の動作モードや演算器間の接続が設定される。つまり、ALUユニット26は、これを単位としてコンフィグレーションデータCDに応じて回路構成が変更可能となっており、加算、乗算、ビット演算、及び論理演算(AND、OR、EORなど)等をはじめとして所望の機能を実現するように(所定の処理を実行するように)各演算器等が制御される。   In the ALU unit 26, the operation mode of the arithmetic units and the connection between the arithmetic units are set for each ALU unit 26 based on the configuration data CD held in the configuration register 25A. That is, the ALU unit 26 can change the circuit configuration in accordance with the configuration data CD in units of this, and includes addition, multiplication, bit operation, logical operation (AND, OR, EOR, etc.), etc. Each arithmetic unit is controlled so as to realize a desired function (perform predetermined processing).

例えば、シフト回路であれば、シフト量、算術シフト処理、論理シフト処理、及びシフト処理後の所定ビットのマスク処理等が制御される。また、例えば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 ALU unit 26 receives the first input data DT1 supplied from the selector / register 21, and the second input data DT2 or fixed value register 25B supplied from the selector / register 21 according to the configuration data. One of the fixed value data CVD held in is input, a predetermined calculation is performed using them, and the calculation result is output. The output of the ALU unit 26 can be output as it is, but is also configured to be fed back based on the configuration data. For example, the output can be accumulated and standardized and output.

各データメモリ23−jは、演算処理部2での処理に係るデータを記憶するメモリである。   Each data memory 23-j is a memory that stores data related to processing in the arithmetic processing unit 2.

図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 configuration memory 13F shown in FIG. 10, in which configuration data and fixed value data corresponding to each state are stored as described above. In FIG. 11, CDi is configuration data, and CVDi is fixed value data. Note that i is a subscript, and i = 1 to N (N is an arbitrary number). In FIG. 11, only the value of the fixed value data CVDi is shown, and the value of the configuration data CDi is not shown.

コンフィグレーションデータ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 configuration register 25 when the k-th (k = 1 to 128 natural number) state is set. That is, configuration data and fixed value data related to a circuit configuration FUNCk for realizing a desired circuit function in the arithmetic processing unit 2 are a set of configuration data CD1 to CDN arranged in the row direction in FIG. And fixed value data CVD1 to CVDN. Although not shown in FIG. 11, the configuration memory 13F stores configuration data for controlling the selector / register 21 in addition to the configuration data related to the arithmetic unit 22-i.

上述のように、CPUに代えてシーケンサー1を設けることで、再構成可能な半導体装置は、いわゆるダイナミックリコンフィグレーションが可能となり、クロック単位で動的に回路構成(論理)を再構成することができる。例えば、演算処理部2は、シーケンサー1からのコンフィグレーションデータ(制御信号)に基づき、あるクロック期間ではA機能を行い、次のクロック期間ではA機能とは異なるB機能を行うことができる。   As described above, by providing the sequencer 1 instead of the CPU, a reconfigurable semiconductor device can perform so-called dynamic reconfiguration, and the circuit configuration (logic) can be dynamically reconfigured in units of clocks. it can. For example, the arithmetic processing unit 2 can perform the A function in a certain clock period and perform the B function different from the A function in the next clock period based on the configuration data (control signal) from the sequencer 1.

しかしながら、上記図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 configuration memory 13F together with the configuration data and is necessary. Accordingly, it is read out and held in the configuration register 25 provided corresponding to the arithmetic unit. When the fixed value data is stored in the configuration memory 13F as described above, a fixed value data area for storing the fixed value data is provided for each arithmetic unit capable of inputting the fixed value, and all the fixed value data is stored in the configuration memory. It is necessary to save in 13F. For example, if the second input data from the selector / register 21 is 32 bits wide for an arithmetic unit capable of inputting a fixed value, a 32-bit fixed value data area for each arithmetic unit in the configuration memory 13F. Must be provided for all the states of the arithmetic processing unit 2 (hereinafter, the state is also referred to as “configuration”).

ここで、演算処理部2の状態のすべてで各演算器の入力として固定値データを設定する、すなわち演算処理部2の状態を切り換える度に各演算器の入力として固定値データを設定することはほとんどない。したがって、上述にように設けた固定値データ領域は、コンフィグレーションメモリ13Fの記憶領域を浪費していることとなり、コンフィグレーションメモリ13Fに固定値データを保存する場合には多くのメモリ(記憶領域)を消費してしまう。   Here, the fixed value data is set as the input of each arithmetic unit in all the states of the arithmetic processing unit 2, that is, the fixed value data is set as the input of each arithmetic unit every time the state of the arithmetic processing unit 2 is switched. rare. Therefore, the fixed value data area provided as described above wastes the storage area of the configuration memory 13F, and a large amount of memory (storage area) is required when the fixed value data is stored in the configuration memory 13F. Will be consumed.

そこで、本出願人は、固定値データの記憶に要する記憶容量の低減を図った図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 sequencer 1 and an arithmetic processing unit 2 and includes fixed value memories 72-1 and 72-2 that store fixed value data in the arithmetic processing unit 2. .

シーケンサー1は、状態制御回路11、状態レジスタ12、及びコンフィグレーションメモリ13Gを有する。
コンフィグレーションメモリ13Gは、演算処理部2の回路構成を設定するコンフィグレーションデータと、固定値指定データを記憶する。固定値指定データは、固定値用メモリ72−1、72−2に記憶されている固定値データの中から、演算処理部2の状態に対応した固定値データを指定し読み出すためのものであり、ここでは一例として固定値用メモリ72−1、72−2におけるアドレスとする。
The sequencer 1 includes a state control circuit 11, a state register 12, and a configuration memory 13G.
The configuration memory 13G stores configuration data for setting the circuit configuration of the arithmetic processing unit 2 and fixed value designation data. The fixed value designation data is for designating and reading fixed value data corresponding to the state of the arithmetic processing unit 2 from the fixed value data stored in the fixed value memories 72-1 and 72-2. Here, as an example, the addresses in the fixed value memories 72-1 and 72-2 are used.

演算処理部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 arithmetic processing unit 2 includes, in addition to the selector / register (bus) 21, the arithmetic unit 22-i, and the data memory 23-j, fixed value memories 72-1, 72-2, a selector 73-i, and a fixed value designation. It has registers 74-1 and 74-2. Note that i and j are subscripts, i = 1 to N (N is an arbitrary number), and j = 1 to M (M is an arbitrary number).

固定値用メモリ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 sequencer 1 based on the address values set in the fixed value designation registers 74-1 and 74-2, and the selector 73- output to i.

セレクタ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 sequencer 1, the second input data DT 2 supplied from the selector / register 21 or the fixed value memories 72-1 and 72-2. The value data CVD is selected and output to the ALU unit 26 in the calculation unit 22-i.

演算部22−iは、シーケンサー1から供給されるコンフィグレーションデータを一時的に保持するコンフィグレーションレジスタ71と、ALUユニット26を有する。演算部22−iは、固定値データが固定値用メモリ72−1、72−2から読み出されセレクタ73−iを介してALUユニット26に供給されるため、図10に示した固定値レジスタを備えていない。   The arithmetic unit 22-i includes a configuration register 71 that temporarily holds configuration data supplied from the sequencer 1 and an ALU unit 26. Since the fixed value data is read from the fixed value memories 72-1 and 72-2 and supplied to the ALU unit 26 via the selector 73-i, the calculation unit 22-i has the fixed value register shown in FIG. 10. Not equipped.

なお、コンフィグレーションメモリ13Gに記憶されるコンフィグレーションデータと固定値指定データ、及び固定値用メモリ72−1、72−2に記憶される固定値データは、外部からコンフィグレーションメモリ13G及び固定値用メモリ72−1、72−2にそれぞれ動作開始前に予め書き込まれ保持される。コンフィグレーションデータと固定値指定データは、状態毎に1組のデータとしてコンフィグレーションメモリ13Gに保持される。   The configuration data and fixed value designation data stored in the configuration memory 13G, and the fixed value data stored in the fixed value memories 72-1 and 72-2 are externally received from the configuration memory 13G and the fixed value data. Each of the memories 72-1 and 72-2 is written and held in advance before the operation starts. The configuration data and the fixed value designation data are held in the configuration memory 13G as a set of data for each state.

図13は、図12に示したコンフィグレーションメモリ13G及び固定値用メモリ72−1、72−2の内容を説明するための図である。なお、図13においては、比較参照するために図11に示したコンフィグレーションメモリ13Fの内容と等価な内容を一例として示している。   FIG. 13 is a diagram for explaining the contents of the configuration memory 13G and fixed value memories 72-1 and 72-2 shown in FIG. In FIG. 13, the contents equivalent to the contents of the configuration memory 13F shown in FIG. 11 are shown as an example for comparison and reference.

図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 configuration memory 13G. In FIG. 13A, CDi (i = 1 to N is a natural number) is configuration data, and CVAD1 and CVAD2 are address values in fixed value memories 72-1 and 72-2, respectively. FUNCk (natural number of k = 1 to 128) indicates a state (circuit surface) for realizing a desired circuit function in the arithmetic processing unit 2.

また、図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 configuration memory 13G, fixed value memories 72-1, 72 for storing a combination of configuration data CDi and fixed value data CVDi corresponding to this state. -2 address values CVAD1 and CVAD2 are stored.

上述のように、固定値用メモリ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 configuration memory 13 G corresponds to the configuration data and its state. The address values of fixed value memories 72-1 and 72-2 for reading fixed value data are stored. As a result, only the address values of the fixed value memories 72-1 and 72-2 need be stored in the configuration memory 13G without storing the fixed value data, so the storage capacity required for the configuration memory 13G. The configuration memory 13G can be configured with a small size memory. In addition, the fixed value memories 72-1 and 72-2 do not store fixed value data for each state, but store only one fixed value data of the same combination as one set of fixed value data. It is possible to reduce the storage capacity required to store data.

特開2006−18453号公報JP 2006-18453 A

ここで、再構成可能な半導体装置において、コンフィグレーションメモリに記憶できる状態遷移数に対して、コンフィグレーションデータにより設定可能な回路構成数はかなり小さい傾向にある。例えば、各演算部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 arithmetic processing unit 2.

シーケンサー1は、外部(例えば外部バス3を介して接続されているプロセッサ)からの指示に応じて、当該半導体装置を統括的に制御するものであり、演算処理部2の回路構成(論理構成を含む。)を管理するとともに、それを動的に変更させる制御を行う。シーケンサー1は、アプリケーションに応じて動的に演算処理部2の回路構成を変更するため、演算処理部2の各機能部と信号線を介して接続されている。   The sequencer 1 comprehensively controls the semiconductor device in response to an instruction from the outside (for example, a processor connected via the external bus 3), and the circuit configuration (logical configuration of the arithmetic processing unit 2). Control), and control to change it dynamically. The sequencer 1 is connected to each functional unit of the arithmetic processing unit 2 via signal lines in order to dynamically change the circuit configuration of the arithmetic processing unit 2 according to the application.

シーケンサー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 sequencer 1 includes a state control circuit 11, a state register 12, and a configuration memory 13A. The arithmetic processing unit 2 includes a selector / register (bus) 21, an arithmetic unit 22-i, and a data memory 23-j. Each arithmetic unit 22-i includes a control data memory 24, a register 25, and An arithmetic unit (ALU) unit 26 is included. Note that i and j are subscripts, i = 1 to N (N is an arbitrary number), and j = 1 to M (M is an arbitrary number).

状態制御回路11は、予め設定された所定のシーケンスや演算処理部2からの状態遷移指示信号等に基づいて、演算処理部2の状態(回路構成)を次状態に移すためのセレクタ/レジスタ(バス)21のコンフィグレーションデータ及び構成指定データをコンフィグレーションメモリ13Aから読み出すためのコンフィグレーションメモリアドレス及びその読み出しタイミングを生成する。状態制御回路11によるコンフィグレーションメモリアドレスの生成は、状態レジスタ12に保持されている現在の状態を示す情報を参照して行われる。また、次状態に遷移する際に、状態レジスタ12に保持する情報は更新される。   The state control circuit 11 is a selector / register for shifting the state (circuit configuration) of the arithmetic processing unit 2 to the next state based on a predetermined sequence set in advance, a state transition instruction signal from the arithmetic processing unit 2, or the like. A configuration memory address for reading the configuration data and configuration designation data of the (bus) 21 from the configuration memory 13A and its read timing are generated. The configuration memory address is generated by the state control circuit 11 with reference to information indicating the current state held in the state register 12. Also, the information held in the state register 12 is updated when transitioning to the next state.

コンフィグレーションメモリ13Aは、演算処理部2内のセレクタ/レジスタ(バス)21の構成を設定するコンフィグレーションデータと、各演算部22−1〜22−Nに係る構成指定データを記憶する。この構成指定データは、演算部22−iの状態に対応した制御データ用メモリ24内のコンフィグレーションデータと固定値データとの組を一意に識別可能な情報であり、制御データ用メモリ24に記憶されているコンフィグレーションデータと固定値データとの組の中から、演算部22−iの状態に対応したコンフィグレーションデータと固定値データとの組を指定し読み出すためのものである。なお、以下では一例として、構成指定データは、制御データ用メモリ24におけるアドレスとする。   The configuration memory 13A stores configuration data for setting the configuration of the selector / register (bus) 21 in the arithmetic processing unit 2 and configuration designation data related to the arithmetic units 22-1 to 22-N. This configuration designation data is information that can uniquely identify a set of configuration data and fixed value data in the control data memory 24 corresponding to the state of the arithmetic unit 22-i, and is stored in the control data memory 24. This is for designating and reading a set of configuration data and fixed value data corresponding to the state of the arithmetic unit 22-i from the set of configuration data and fixed value data. Hereinafter, as an example, the configuration specifying data is an address in the control data memory 24.

セレクタ/レジスタ(バス)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 arithmetic processing unit 2 and is controlled by configuration data CSRD supplied from the sequencer 1. The selector / register (bus) 21 is connected to the arithmetic units 22-1 to 22-N and the data memories 23-1 to 23-M, respectively, and transmits data between the arithmetic units 22-i and the data memory 23-j. Give and receive. In other words, the selector / register (bus) 21 has a network function for connecting the arithmetic units 22-1 to 22-N and the data memories 23-1 to 23-M so that they can communicate with each other.

具体的には、セレクタ/レジスタ(バス)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 control data memory 24 is a memory for storing configuration data and fixed value data related to the computing unit 22-i. The control data memory 24 is a configuration data area 24A for storing configuration data and a fixed value for storing fixed value data. It has a data area 24B. Configuration data and fixed value data relating to the arithmetic unit 22-i are held in the control data memory 24 as a set of data, and are read based on the address value CADi supplied from the sequencer 1 as configuration designation data. The data (configuration data and fixed value data) CDCVD is output to the register 25.

レジスタ25は、制御データ用メモリ24から出力されるコンフィグレーションデータを保持するコンフィグレーションレジスタ25A及び固定値データを保持する固定値レジスタ25Bで構成される。なお、レジスタ25は、制御データ用メモリ24から出力されたデータをALUユニット26に供給するタイミングを調整するためのものであり、例えば制御データ用メモリ24が同期型のメモリであり、出力のタイミング調整が不要である場合等にはレジスタ25を備えていなくとも良い。   The register 25 includes a configuration register 25A that holds configuration data output from the control data memory 24 and a fixed value register 25B that holds fixed value data. The register 25 is for adjusting the timing of supplying the data output from the control data memory 24 to the ALU unit 26. For example, the control data memory 24 is a synchronous memory, and the output timing is the same. If adjustment is unnecessary, the register 25 may not be provided.

ALUユニット26は、シフト回路(シフター)、ALU(算術論理演算装置)、及びセレクタ等(以下、これらを区別せずに単に演算器とも称す。)を用いて構成される。なお、ALUユニット26、具体的にはそれを構成する複数の演算器(1つであっても良い)は、使用するアプリケーションに応じて適宜選択、決定すれば良い。   The ALU unit 26 is configured by using a shift circuit (shifter), an ALU (arithmetic logic operation device), a selector, and the like (hereinafter, these are also simply referred to as an arithmetic unit without being distinguished from each other). The ALU unit 26, specifically, a plurality of arithmetic units (or one) constituting the ALU unit may be appropriately selected and determined according to the application to be used.

ALUユニット26は、コンフィグレーションレジスタ25Aに保持されたコンフィグレーションデータCDに基づいて、ALUユニット26毎に演算器の動作モードや演算器間の接続が設定される。つまり、ALUユニット26は、これを単位としてコンフィグレーションデータCDに応じて回路構成が変更可能となっており、加算、乗算、ビット演算、及び論理演算等をはじめとして所望の機能を実現するように(所定の処理を実行するように)各演算器等が制御される。   In the ALU unit 26, the operation mode of the arithmetic units and the connection between the arithmetic units are set for each ALU unit 26 based on the configuration data CD held in the configuration register 25A. That is, the ALU unit 26 can change the circuit configuration in accordance with the configuration data CD with this as a unit so as to realize a desired function including addition, multiplication, bit operation, and logical operation. Each arithmetic unit and the like are controlled (to execute a predetermined process).

例えば、シフト回路であれば、シフト量、算術シフト処理、論理シフト処理、及びシフト処理後の所定ビットのマスク処理等が制御される。また、例えば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 ALU unit 26 receives the first input data DT1 supplied from the selector / register 21, and the second input data DT2 or fixed value register 25B supplied from the selector / register 21 according to the configuration data. One of the fixed value data CVD held in is input, and calculation is performed using them, and the calculation result is output. The output of the ALU unit 26 can be output as it is, but is also configured to be fed back based on the configuration data. For example, the output can be accumulated and standardized and output.
Each data memory 23-j is a memory that stores data related to processing in the arithmetic processing unit 2.

なお、コンフィグレーションメモリ13Aに記憶されるセレクタ/レジスタ(バス)21のコンフィグレーションデータと演算部22−1〜22−Nの構成指定データ、及び制御データ用メモリ24に記憶される演算部22−iのコンフィグレーションデータと固定値データは、例えば、RISC(プロセッサ)やその他のハードウェア等により外部からコンフィグレーションメモリ13A及び制御データ用メモリ24にそれぞれ動作開始前に予め書き込まれ保持される。   The configuration data of the selector / register (bus) 21 stored in the configuration memory 13A, the configuration designation data of the arithmetic units 22-1 to 22-N, and the arithmetic unit 22- stored in the control data memory 24 The configuration data and fixed value data of i are written and held in advance in the configuration memory 13A and the control data memory 24 from the outside by, for example, RISC (processor) or other hardware before starting the operation.

図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 configuration memory 13A and the control data memory 24 shown in FIG.
FIG. 2A shows the contents of the configuration memory 13A. In FIG. 2A, CADi (i = 1 to N is a natural number) is an address value in the control data memory 24 as configuration designation data related to the corresponding arithmetic unit 22-i, and CSRD is a selector / register (bus ) 21 configuration data. FUNCk (natural number of k = 1 to 128) indicates a state (circuit surface) for realizing a desired circuit function in the arithmetic processing unit 2.

また、図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 control data memory 24 provided in the arithmetic unit 22-i, and CADi (i = 1 to N is a natural number, the same applies to CDCVDi) is controlled. It is an address value in the data memory 24, and CDCVDi is configuration data and fixed value data of the corresponding arithmetic unit 22-i. The data CDCVDi is, for example, bit combination of the configuration data CDi of the arithmetic unit 22-i and the fixed value data CVDi (“&” in the figure indicates a bit connector).

なお、図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 control data memory 24 provided in the computing units 22-1 and 22-N, respectively, as an example. 2B and 2C, E1, E2, E3, E4,... And G1, G2, G3, G4,... Are the configuration data of the arithmetic units 22-1 and 22-N, and F1, F2 ,... And H1, H2, H3,.

つまり、第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 control data memory 24 is provided in each calculation unit 22-i in the calculation processing unit 2, and the configuration data CDi of the calculation unit 22-i is fixed. Value data CVDi is stored. In the configuration memory 13A in the sequencer 1, the address value of the control data memory 24 for reading the configuration data CDi and the fixed value data CVDi from the control data memory 24 of each arithmetic unit 22-i is stored as configuration designation data. To do.

そして、演算処理部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 arithmetic processing unit 2 is switched, the configuration data CSRD of the selector / register (bus) 21 corresponding to the state and the address value CADi as the configuration designation data relating to each arithmetic unit 22-i are obtained. Read from the configuration memory 13A. The read configuration data CSRD of the selector / register (bus) 21 is supplied to the selector / register (bus) 21 and the configuration of the selector / register (bus) 21 is set. The read address value CADi is supplied to each arithmetic unit 22-i, and the configuration data CDi and the fixed value data CVDi are read from the control data memory 24 based on the address value CADi, and the register 25 The circuit configuration is reconfigured by being supplied to the ALU unit 26. In this way, a desired function is realized by the arithmetic processing unit 2.

ここで、制御データ用メモリ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 control data memory 24 is the same, it is stored as one set of configuration data CDi and fixed value data CVDi. The That is, the combination of the configuration data CDi and the fixed value data CVDi stored in the control data memory 24 is different from each other and is not stored redundantly.

以上、第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 control data memory 24 for storing the configuration data and the fixed value data related to the calculation unit 22-i is provided for each calculation unit 22-i in the calculation processing unit 2. The configuration memory 13A in the sequencer 1 stores configuration designation data (address value) for reading out configuration data and fixed value data related to the arithmetic unit 22-i from the control data memory 24. When the combination of the configuration data and the fixed value data related to the arithmetic unit 22-i is the same, the control data memory 24 does not store the configuration data differently, and the control data memory 24 fixes different configuration data. A set of value data is stored and selected according to an address value which is configuration designation data.

これにより、回路構成を再構成するためのコンフィグレーションデータの記憶に要する記憶容量を低減することができ、例えばコンフィグレーションメモリ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 configuration memory 13A can be reduced, and the circuit scale can be reduced. . Further, when the circuit configuration that can be set by the arithmetic unit 22-i is narrowed down in advance, that is, when the number of settable configuration data CDi is narrowed down, the configuration designation for reading the configuration data from the control data memory 24 The number of bits of data can be made smaller than the number of bits of configuration data, and the storage capacity required for the entire semiconductor device can be reduced.

(第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 control data memory 24 provided in each calculation unit 22-i. In the second embodiment described below, memories for storing configuration data and fixed value data related to the computing unit 22-i are independently arranged.

図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 sequencer 1 includes a state control circuit 11, a state register 12, and a configuration memory 13B. The arithmetic processing unit 2 includes a selector / register (bus) 21, an arithmetic unit 22-i, and a data memory 23-j. Each arithmetic unit 22-i includes a first control data (configuration data) memory 31, a second control data (fixed value) memory 32, a configuration register 33, a fixed value register 34, and an ALU unit 26. Have.

コンフィグレーションメモリ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 configuration memory 13B includes configuration data for setting the configuration of the selector / register (bus) 21 in the arithmetic processing unit 2, the first configuration specifying data and the second data for the arithmetic units 22-1 to 22-N. The configuration designation data is stored. The first configuration specifying data is information that can uniquely identify the configuration data in the first control data memory 31 corresponding to the state of the arithmetic unit 22-i, and is stored in the first control data memory 31. This is for designating and reading out configuration data corresponding to the state of the arithmetic unit 22-i from the stored configuration data. Similarly, the second configuration designation data (fixed value designation data) is information that can uniquely identify the fixed value data in the second control data memory 32 corresponding to the state of the computing unit 22-i. This is for designating and reading fixed value data corresponding to the state of the arithmetic unit 22-i from the fixed value data stored in the second control data memory 32. In the following, as an example, the first and second configuration designation data are addresses in the control data memories 31 and 32, respectively.

第1の制御データ用メモリ31は、演算部22−iに係るコンフィグレーションデータを記憶するメモリである。第1の制御データ用メモリ31に記憶されているコンフィグレーションデータCDは、第1の構成指定データとしてシーケンサー1から供給されるアドレス値CADiに基づいて読み出されコンフィグレーションレジスタ33に出力される。   The first control data memory 31 is a memory that stores configuration data related to the computing unit 22-i. The configuration data CD stored in the first control data memory 31 is read out based on the address value CADi supplied from the sequencer 1 as the first configuration specifying data and is output to the configuration register 33.

第2の制御データ用メモリ32は、演算部22−iに係る固定値データを記憶するメモリである。第2の制御データ用メモリ32に記憶されている固定値データCVDは、第2の構成指定データとしてシーケンサー1から供給されるアドレス値DADiに基づいて読み出され固定値レジスタ34に出力される。   The second control data memory 32 is a memory for storing fixed value data related to the calculation unit 22-i. The fixed value data CVD stored in the second control data memory 32 is read based on the address value DADi supplied from the sequencer 1 as the second configuration specifying data, and is output to the fixed value register 34.

コンフィグレーションレジスタ33及び固定値レジスタ34は、第1の実施形態におけるコンフィグレーションレジスタ25A及び固定値レジスタ25Bにそれぞれ対応する。   The configuration register 33 and the fixed value register 34 correspond to the configuration register 25A and the fixed value register 25B in the first embodiment, respectively.

コンフィグレーションメモリ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 configuration memory 13B, first and second configuration designation data related to the arithmetic units 22-1 to 22-N, and first and second controls The configuration data and fixed value data of the arithmetic unit 22-i stored in the data memories 31 and 32, respectively, start operation from the outside to the configuration memory 13B and the first and second control data memories 31 and 32, respectively. Previously written and held in advance. Further, the configuration data of the selector / register (bus) 21 and the first and second configuration designation data related to the arithmetic units 22-1 to 22-N are held in the configuration memory 13B as a set of data for each state. Is done.

図4は、図3に示したコンフィグレーションメモリ13B、第1の制御データ用メモリ31、及び第2の制御データ用メモリ32の内容を説明するための図である。なお、図4においては、比較参照するために図2に示した内容と等価な内容を一例として示している。   4 is a diagram for explaining the contents of the configuration memory 13B, the first control data memory 31, and the second control data memory 32 shown in FIG. In FIG. 4, the content equivalent to the content shown in FIG. 2 is shown as an example for comparison and reference.

図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 configuration memory 13B. In FIG. 4A, CADi (i = 1 to N is a natural number) is an address value in the control data memory 31 as the first configuration specifying data related to the corresponding arithmetic unit 22-i, and DADi (i = 1 to N) is an address value in the control data memory 32 as the second configuration specifying data related to the corresponding arithmetic unit 22-i. CSRD is configuration data of the selector / register (bus) 21. FUNCk (natural number of k = 1 to 128) indicates a state (circuit surface) for realizing a desired circuit function in the arithmetic processing unit 2.

また、図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 control data memories 31 and 32 provided in the computing unit 22-i. FIG. 4B shows the contents of the first control data memory 31 provided in the calculation unit 22-1, CAD1 is the address value in the first control data memory 31, and CD1 is the calculation unit 22. -1 configuration data. FIG. 4C shows the contents of the second control data memory 32 provided in the calculation unit 22-1, DAD1 is an address value in the second control data memory 32, and CVD1 is the calculation unit 22. −1 fixed value data.

同様に、図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 control data memory 31 provided in the arithmetic unit 22-N, where CADN is an address value in the first control data memory 31, and CDN is This is configuration data of the computing unit 22-N. FIG. 4E shows the contents of the second control data memory 32 provided in the arithmetic unit 22-N, where DADN is an address value in the second control data memory 32, and CVDN is the arithmetic unit 22. -N fixed value data.

すなわち、第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 control data memories 31 and 32 are provided in each arithmetic unit 22-i in the arithmetic processing unit 2, and the arithmetic unit 22- i configuration data CDi and fixed value data CVDi are stored independently. The configuration memory 13B in the sequencer 1 includes first and second configuration data CDi and fixed value data CVDi for reading out the configuration data CDi and the fixed value data CVDi from the independent first and second control data memories 31 and 32 of each arithmetic unit 22-i. The address values of the second control data memories 31 and 32 are stored as configuration designation data.

そして、演算処理部2内の状態を切り換える際には、当該状態に対応するセレクタ/レジスタ(バス)21のコンフィグレーションデータCSRD及び各演算部22−iに係る構成指定データとしてのアドレス値CADi、DADiがコンフィグレーションメモリ13Bから読み出される。読み出されたセレクタ/レジスタ(バス)21のコンフィグレーションデータCSRDは、セレクタ/レジスタ(バス)21に供給され、セレクタ/レジスタ(バス)21の構成が設定される。   When the state in the arithmetic processing unit 2 is switched, the configuration data CSRD of the selector / register (bus) 21 corresponding to the state and the address value CADi as the configuration designation data related to each arithmetic unit 22-i, DADi is read from the configuration memory 13B. The read configuration data CSRD of the selector / register (bus) 21 is supplied to the selector / register (bus) 21 and the configuration of the selector / register (bus) 21 is set.

また、読み出されたアドレス値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 control data memory 31 based on the address value CADi and supplied to the ALU unit 26 via the configuration register 33, and the second data based on the address value DADi. Fixed value data CVDi is read from the control data memory 32 and supplied to the ALU unit 26 via the fixed value register 34. In this way, the circuit configuration is reconfigured, and a desired function is realized by the arithmetic processing unit 2.

なお、第1の制御データ用メモリ31には、同じ値のコンフィグレーションデータCDiは重複して記憶されず、互いに異なるもののみ記憶される。同様に、第2の制御データ用メモリ32には、互いに異なる固定値データのみが記憶され、同じ値の固定値データCDiは重複して記憶されない。   In the first control data memory 31, configuration data CDi having the same value is not stored redundantly, but only different data is stored. Similarly, only different fixed value data is stored in the second control data memory 32, and fixed value data CDi having the same value is not stored redundantly.

以上、第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 control data memories 31 and 32 are provided for each calculation unit 22-i, the configuration data related to the calculation unit 22-i and the fixed value data are stored independently. The number of combinations of configuration data and fixed value data is large, but if the number of types of configuration data and fixed value data is considered individually, the required storage capacity can be further reduced. Become.

なお、上記図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 information register circuit 41 that stores configuration data CSRD that is selector / register (bus) setting information supplied from the sequencer 1, and a configuration stored in the setting information register circuit 41. A selector circuit 42 that performs a desired operation based on the data is included. The setting information register circuit 41 and the selector circuit 42 are composed of a large number of registers and a large number of selectors.

図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 configuration memory 13C shown in FIG. 5. Configuration data and fixed value data related to the arithmetic unit 22-i corresponding to each state of the arithmetic processing unit 2, Configuration data of the selector / register (bus) 21 is stored. In FIG. 16, CDCVDi is configuration data and fixed value data relating to the arithmetic unit 22-i after bit combination, and CSRDp is configuration data of the selector / register (bus) 21. Note that i and p are subscripts, i = 1 to N (N is an arbitrary number), and p = 1 to Q (Q is an arbitrary number). FUNCk (natural number of k = 1 to 128) indicates a state (circuit surface) for realizing a desired circuit function in the arithmetic processing unit 2.

なお、図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 arithmetic processing unit 2, and the selector / register (bus) corresponding to the state is stored in the configuration memory in the sequencer. The configuration designation data for reading the configuration data 21 from the control data memory is stored.

図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 sequencer 1 includes a state control circuit 11, a state register 12, and a configuration memory 13D. The arithmetic processing unit 2 includes a selector / register (bus) 21, an arithmetic unit 22-i, and a data memory 23-j. The selector / register (bus) 21 includes a control data memory 51-p, a setting information register circuit 52 including a large number of registers, and a selector circuit 42 including a large number of selectors. Each arithmetic unit 22-i includes a register 25 composed of a configuration register 25 A and a fixed value register 25 B and an ALU unit 26.

コンフィグレーションメモリ13Dは、演算処理部2内の各演算部22−1〜22−Nに係るコンフィグレーションデータ及び固定値データCDCVDiと、セレクタ/レジスタ(バス)21に係る構成指定データを記憶する。この構成指定データは、セレクタ/レジスタ(バス)21の状態に対応した制御データ用メモリ51−p内のコンフィグレーションデータを一意に識別可能な情報であり、制御データ用メモリ51−pに記憶されているコンフィグレーションデータの中から、セレクタ/レジスタ(バス)21の状態に対応したコンフィグレーションデータを指定し読み出すためのものである。なお、以下では一例として、構成指定データは、制御データ用メモリ51−pにおけるアドレスとする。   The configuration memory 13 </ b> D stores configuration data and fixed value data CDCVDi related to the calculation units 22-1 to 22-N in the calculation processing unit 2 and configuration designation data related to the selector / register (bus) 21. The configuration specifying data is information that can uniquely identify the configuration data in the control data memory 51-p corresponding to the state of the selector / register (bus) 21, and is stored in the control data memory 51-p. This is for designating and reading out configuration data corresponding to the state of the selector / register (bus) 21 from the configuration data being stored. In the following, as an example, the configuration designation data is an address in the control data memory 51-p.

制御データ用メモリ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 sequencer 1 as configuration designation data and is output to the setting information register circuit 52.

設定情報レジスタ回路52は、制御データ用メモリ51−1〜51−Qから供給されるコンフィグレーションデータCSRD1〜CSRDQを一時的に保持する。セレクタ回路42は、設定情報レジスタ回路52に保持されたコンフィグレーションデータCSRD1〜CSRDQに基づいて、回路構成を再構成して演算処理部2内におけるデータパスを制御し所望の動作を行う。   The setting information register circuit 52 temporarily holds configuration data CSRD1 to CSRDQ supplied from the control data memories 51-1 to 51-Q. The selector circuit 42 reconfigures the circuit configuration based on the configuration data CSRD1 to CSRDQ held in the setting information register circuit 52, controls the data path in the arithmetic processing unit 2, and performs a desired operation.

ここで、コンフィグレーションメモリ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 configuration memory 13D, configuration designation data related to the selector / register (bus) 21, and control data memory 51- The configuration data of the selector / register (bus) 21 respectively stored in p is written and held in advance from the outside in the configuration memory 13D and the control data memory 51-p before the operation is started. Further, the configuration data and fixed value data related to the arithmetic units 22-1 to 22-N and the configuration designation data related to the selector / register (bus) 21 are held in the configuration memory 13D as one set of data for each state. The

図8は、図7に示したコンフィグレーションメモリ13D及び制御データ用メモリ51−pの内容を説明するための図である。なお、図8においては、比較参照するために図6に示したコンフィグレーションメモリ13Cの内容と等価な内容を一例として示している。   FIG. 8 is a diagram for explaining the contents of the configuration memory 13D and the control data memory 51-p shown in FIG. In FIG. 8, for comparison purposes, content equivalent to the content of the configuration memory 13C shown in FIG. 6 is shown as an example.

図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 configuration memory 13D. In FIG. 8A, CDCVDi (i = 1 to N is a natural number) is configuration data and fixed value data related to the corresponding arithmetic unit 22-i. For example, the configuration data CDi and fixed value data CVDi are bit-coupled. ("&" In the figure indicates a bit connector). CSRADp (p = 1 to Q is a natural number) is an address value in the control data memory 51-p as configuration designation data related to the selector / register (bus) 21 divided into Q groups. FUNCk (natural number of k = 1 to 128) indicates a state (circuit surface) for realizing a desired circuit function in the arithmetic processing unit 2.

また、図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 arithmetic processing unit 2 is divided into Q groups, and the selector / register (bus) 21 includes a control data memory 51-. p (natural number from p = 1 to Q) is provided, and configuration data CSRDp of the selector / register (bus) 21 is stored. In the configuration memory 13D in the sequencer 1, the address value of the control data memory 51-p for reading the configuration data CSRDp corresponding to the state of the selector / register (bus) 21 from the control data memory 51-p is stored. Store as configuration designation data.

そして、演算処理部2内の状態を切り換える際には、当該状態に対応する各演算部22−iに係るコンフィグレーションデータ及び固定値データCDCVDi及びセレクタ/レジスタ(バス)21に係る構成指定データとしてのアドレス値CSRADpがコンフィグレーションメモリ13Dから読み出される。読み出された各演算部22−iに係るコンフィグレーションデータ及び固定値データCDCVDiは、対応する演算部22−iに供給される。   When the state in the arithmetic processing unit 2 is switched, as configuration data and fixed value data CDCVDi relating to each arithmetic unit 22-i corresponding to the state and configuration specifying data relating to the selector / register (bus) 21, Address value CSRADp is read from the configuration memory 13D. The read configuration data and fixed value data CDCVDi related to each calculation unit 22-i are supplied to the corresponding calculation unit 22-i.

また、読み出されたアドレス値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 information register 52. Based on the held configuration data CSRD1 to CSRDQ, the selector circuit 42 Reconfiguration is performed and the desired operation is performed.

第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 arithmetic processing unit 2 is provided with the control data memory 51-p to store the configuration data of the selector / register (bus) 21, and the sequencer 1 In the configuration memory 13D, configuration designation data (address value) for reading configuration data from the control data memory 51-p is stored. In the control data memory 51-p, the configuration data CSRDp having the same value is not stored redundantly but only different ones are stored and selected according to the address value which is the configuration specifying data.

これにより、回路構成を再構成するためのコンフィグレーションデータの記憶に要する記憶容量を低減することができ、例えばコンフィグレーションメモリ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 configuration memory 13D can be reduced and the circuit scale can be reduced. . Note that the division number Q when the selector / register (bus) 21 is divided into a plurality of groups may be determined so that the storage capacity required for storing the configuration data of the selector / register (bus) 21 is reduced.

(第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 calculation processing unit 2. In addition to the memory 24, the selector / register (bus) 21 includes a control data memory 51-p that stores configuration data related to the selector / register (bus) 21.

シーケンサー1内のコンフィグレーションメモリ13Eには、制御データ用メモリ24から演算部22−iの状態に対応したコンフィグレーションデータと固定値データとの組を指定し読み出すための構成指定データ(例えば制御データ用メモリ24のアドレス値CADi)と、制御データ用メモリ51−pからセレクタ/レジスタ(バス)21の状態に対応したコンフィグレーションデータを指定し読み出すための構成指定データ(例えば制御データ用メモリ51−pのアドレス値CSRADp)が記憶される。   The configuration memory 13E in the sequencer 1 stores configuration designation data (for example, control data) for designating and reading a set of configuration data and fixed value data corresponding to the state of the arithmetic unit 22-i from the control data memory 24. Address designation value CADi) of the memory 24 and configuration designation data for designating and reading configuration data corresponding to the state of the selector / register (bus) 21 from the control data memory 51-p (for example, the control data memory 51- p address value CSRADp) is stored.

第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 control data memory 24 or the first and second control data memories 31 and 32 for storing the configuration data and the fixed value data related to the calculation unit 22-i are stored in each calculation. Although provided in the unit 22-i, a plurality of arithmetic units 22-i form one group, and a control data memory for storing configuration data and fixed value data may be provided for each group. good.

また、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
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 1, wherein the first configuration designation information is address information of the first control data memory indicating an area in which the first configuration information is stored. .
(Supplementary Note 3) The semiconductor device according to Supplementary Note 1, wherein the first configuration information stored in the first control data memory is different from each other.
(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 appendix 1.
(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 appendix 1, wherein fixed value designation information for storing the information is stored.
(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 appendix 1, wherein the configuration specifying information 2 is supplied to the second control data memory.
(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 13, wherein the selector / register unit is divided into a plurality of groups, and the control data memory for storing configuration information relating to the group is provided for each group.
(Supplementary note 15) The semiconductor device according to supplementary note 14, wherein the configuration designation information is address information of the control data memory indicating an area where the configuration information is stored. (10)
(Supplementary note 16) The semiconductor device according to supplementary note 14, wherein the configuration information stored in the control data memory is different from each other.
(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 claim 13, further comprising a selector circuit whose circuit configuration is reconfigured according to the configuration information held in the setting information register circuit.

第1の実施形態における再構成可能な半導体装置の構成例を示す図である。It is a figure which shows the structural example of the reconfigurable semiconductor device in 1st Embodiment. 図1に示したコンフィグレーションメモリ及び制御データ用メモリの内容を説明するための図である。It is a figure for demonstrating the content of the configuration memory and the memory for control data shown in FIG. 第2の実施形態における再構成可能な半導体装置の構成例を示す図である。It is a figure which shows the structural example of the reconfigurable semiconductor device in 2nd Embodiment. 図3に示したコンフィグレーションメモリ及び制御データ用メモリの内容を説明するための図である。FIG. 4 is a diagram for explaining the contents of a configuration memory and a control data memory shown in FIG. 3. 再構成可能な半導体装置の構成例を示す図である。It is a figure which shows the structural example of the semiconductor device which can be reconfigure | reconstructed. 図5に示したコンフィグレーションメモリの内容を説明するための図である。It is a figure for demonstrating the content of the configuration memory shown in FIG. 第3の実施形態における再構成可能な半導体装置の構成例を示す図である。It is a figure which shows the structural example of the reconfigurable semiconductor device in 3rd Embodiment. 図7に示したコンフィグレーションメモリ及び制御データ用メモリの内容を説明するための図である。FIG. 8 is a diagram for explaining the contents of a configuration memory and a control data memory shown in FIG. 7. 第4の実施形態における再構成可能な半導体装置の構成例を示す図である。It is a figure which shows the structural example of the reconfigurable semiconductor device in 4th Embodiment. 従来の再構成可能な半導体装置の構成を示す図である。It is a figure which shows the structure of the conventional reconfigurable semiconductor device. 図10に示したコンフィグレーションメモリの内容を説明するための図である。It is a figure for demonstrating the content of the configuration memory shown in FIG. 従来の再構成可能な半導体装置の他の構成を示す図である。It is a figure which shows the other structure of the conventional reconfigurable semiconductor device. 図12に示したコンフィグレーションメモリ及び固定値用メモリの内容を説明するための図である。It is a figure for demonstrating the content of the configuration memory and the memory for fixed values shown in FIG.

符号の説明Explanation of symbols

1 シーケンサー
2 演算処理部
11 状態制御回路
12 状態レジスタ
13A〜13G コンフィグレーションメモリ
21 セレクタ/レジスタ
22 演算部
23 データメモリ
24 制御データ用メモリ
25 レジスタ
26 演算器ユニット
31、32 制御データ用メモリ
33、34 レジスタ
42 セレクタ回路
51 制御データ用メモリ
52 設定情報レジスタ回路
DESCRIPTION OF SYMBOLS 1 Sequencer 2 Arithmetic processing part 11 Status control circuit 12 Status register 13A-13G Configuration memory 21 Selector / register 22 Arithmetic part 23 Data memory 24 Control data memory 25 Register 26 Calculator unit 31, 32 Control data memory 33, 34 Register 42 Selector circuit 51 Control data memory 52 Setting information register circuit

Claims (5)

第1の構成情報を記憶する第1の制御データ用メモリと、演算器とをそれぞれ有し、上記第1の制御データ用メモリから出力される上記第1の構成情報に応じて回路構成を再構成可能な複数の演算部と、
上記第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の構成指定情報は、第1の構成情報が記憶されている領域を示す上記第1の制御データ用メモリのアドレス情報であることを特徴とする請求項1記載の半導体装置。   2. The semiconductor device according to claim 1, wherein the first configuration designation information is address information of the first control data memory indicating an area in which the first configuration information is stored. 第2の構成情報を記憶する第2の制御データ用メモリを有し、上記第2の制御データ用メモリから出力される上記第2の構成情報に応じて回路構成を再構成し上記複数の演算部を含む演算処理部内でのデータ授受を制御するセレクタ/レジスタ部を備え、
上記コンフィグレーションメモリは、上記第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.
上記セレクタ/レジスタ部を複数のグループに分割し、各グループ毎に当該グループに係る構成情報を記憶する上記制御データ用メモリを設けることを特徴とする請求項4記載の半導体装置。   5. The semiconductor device according to claim 4, wherein the selector / register unit is divided into a plurality of groups, and the control data memory for storing configuration information relating to the group is provided for each group.
JP2006265487A 2006-09-28 2006-09-28 Semiconductor device Pending JP2008085864A (en)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009193466A (en) * 2008-02-15 2009-08-27 Toshiba Corp Semiconductor device

Citations (4)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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