JP2003067349A - Simd type microprocessor performing table conversion process corresponding to hysreresis of input value - Google Patents

Simd type microprocessor performing table conversion process corresponding to hysreresis of input value

Info

Publication number
JP2003067349A
JP2003067349A JP2001261300A JP2001261300A JP2003067349A JP 2003067349 A JP2003067349 A JP 2003067349A JP 2001261300 A JP2001261300 A JP 2001261300A JP 2001261300 A JP2001261300 A JP 2001261300A JP 2003067349 A JP2003067349 A JP 2003067349A
Authority
JP
Japan
Prior art keywords
data
conversion
processor
register
type microprocessor
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
JP2001261300A
Other languages
Japanese (ja)
Inventor
Kosuke Takato
浩資 高藤
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2001261300A priority Critical patent/JP2003067349A/en
Publication of JP2003067349A publication Critical patent/JP2003067349A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Image Processing (AREA)

Abstract

PROBLEM TO BE SOLVED: To achieve a table conversion process corresponding to input value hysteresis of a nonlinear operation in an SIMD type microprocessor at few number of operation cycles. SOLUTION: This SIMD type microprocessor is provided with a plurality of processor elements. The predetermined operation in the processor elements that output data corresponding to input data are prepared previously by the predetermined table is defined. The operation is performed continuously in the predetermined order in a plurality of processor elements. A table converter is provided in which the input data are state data and data before conversion, the output data are data after conversion and the next state data, and the next state data in the output data becomes the state data of the input data in the operation concerning the next processor element performed continuously.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、マイクロプロセッ
サ、特に、SIMD(Single Instruct
in−stream Multiple Data−s
tream;単一命令多データ処理)型マイクロプロセ
ッサに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a microprocessor, and more particularly to a SIMD (Single Instruct).
in-stream Multiple Data-s
stream; single instruction multiple data processing type microprocessor.

【0002】[0002]

【従来の技術】SIMD型マイクロプロセッサでは、複
数のデータに対して1つの命令で同時に同一の演算処理
が実行可能である。この機能により、演算は同一である
がデータ量が非常に多い処理(例えば、画像処理)に係
る用途において、頻用される。
2. Description of the Related Art In a SIMD type microprocessor, the same arithmetic processing can be simultaneously executed on a plurality of data by one instruction. With this function, it is frequently used in applications related to processing (for example, image processing) in which the calculation is the same but the data amount is very large.

【0003】SIMD型マイクロプロセッサにおける通
常の演算処理では、複数の演算ユニット(Proces
sor Element〔PE〕;プロセッサエレメン
ト)を並べ同一の演算を同時に複数のデータに対して実
行する。ところが、演算処理の内容を単一の演算式で表
すことができない「非線形処理」では、演算対象のデー
タに応じて演算式が変更されるため、同じ処理を同時に
実行することができない。そうすると、データ毎の逐次
処理をせざるを得ず、結局SIMDであることの効果が
無くなってしまう。
In the ordinary arithmetic processing in the SIMD type microprocessor, a plurality of arithmetic units (Proces) are used.
Sor Element [PE]; processor element) is arranged and the same operation is simultaneously performed on a plurality of data. However, in the “non-linear processing” in which the content of the arithmetic processing cannot be expressed by a single arithmetic expression, the arithmetic expression is changed according to the data to be calculated, and therefore the same processing cannot be executed at the same time. Then, it is unavoidable to perform sequential processing for each data, and eventually the effect of being SIMD is lost.

【0004】通常のSISD(Single Inst
ructin−stream Single Data
−stream;単一命令単一データ処理)型のプロセ
ッサにおいても、演算対象データに応じて演算式が変更
される非線形処理では、演算処理を行うプログラムが非
常に複雑になりかねない。それを防ぐため、演算前デー
タに対して演算後の処理済みデータを予め全て準備して
それらをテーブル化し、演算前データを元にテーブル変
換を行ない演算後データを得る方式が一般的である。具
体的にはRAM(Random Access Mem
ory)上に上記テーブルを格納し、演算前データにテ
ーブルの先頭の番地を加算した値をアドレスポインタと
してRAMから得られたデータを、演算後データとして
いる。例えば、演算データ(演算前データ/演算後デー
タ)が8ビットの場合には、256バイトのサイズの変
換テーブルが必要となる。
A normal SISD (Single Inst)
ructin-stream Single Data
Even in a processor of the type (-stream; single instruction / single data processing) type, a non-linear processing in which an arithmetic expression is changed according to data to be operated may make a program for performing arithmetic processing very complicated. In order to prevent this, it is general to prepare all the processed data after the calculation with respect to the pre-calculation data, make them into a table, and perform table conversion based on the pre-calculation data to obtain the post-calculation data. Specifically, a RAM (Random Access Mem)
ory), the above table is stored, and the data obtained from the RAM by using the value obtained by adding the address at the head of the table to the pre-computation data as the address pointer is the post-computation data. For example, when the operation data (data before operation / data after operation) is 8 bits, a conversion table having a size of 256 bytes is required.

【0005】この変換テーブルのサイズは、演算データ
のビット幅の増加とともに2のベキ乗(の単位)で増加
するため、演算データのビット幅が相当に大きい場合
は、演算データを任意の区間に分け、その区間での近似
式をテーブルとして持つような方式も開示されている。
Since the size of this conversion table increases by the power of 2 (unit) as the bit width of the operation data increases, if the bit width of the operation data is considerably large, the operation data can be divided into arbitrary sections. A method is also disclosed in which the table is divided and the approximate expression in that section is held.

【0006】さて、このテーブル変換をSIMD型マイ
クロプロセッサで採用する場合には、個々の演算単位に
おいてテーブルが必要となると考えられていた。例えば
256SIMD(即ち、演算単位〔演算ユニット、P
E〕が256個あるSIMD)のプロセッサにおいて、
8ビットの演算データ(演算前データ/演算後データ)
のテーブル変換を行なう場合には、256バイトの(R
AM上の)テーブルが演算単位分即ち256個必要とな
る。よって、コスト面において大きな問題があった。そ
のため、SIMD型マイクロプロセッサの非線型演算の
テーブル変換に対して、種々の発明が案出され開示され
ている。
When the table conversion is adopted in the SIMD type microprocessor, it has been considered that a table is required for each operation unit. For example, 256 SIMD (that is, calculation unit [calculation unit, P
[E] has 256 SIMD processors,
8-bit operation data (data before operation / data after operation)
When performing table conversion of 256 bytes (R
For the calculation unit, that is, 256 tables are required on the AM. Therefore, there was a big problem in terms of cost. Therefore, various inventions have been devised and disclosed for the table conversion of the non-linear operation of the SIMD type microprocessor.

【0007】特開平5−67203号においては、各S
IMD単位のPE(Processor Elemen
t;プロセッサエレメント)内蔵の出力レジスタから演
算前データを順次外部に出力し、外部で逐次にテーブル
変換を行ない、変換後のデータをPE内蔵の入力レジス
タに順次入力する方式が提案されている。この方式では
変換テーブルが1個となるのでコストの上昇は抑えられ
るが、結局は逐次処理であるため、演算処理時間はPE
の個数相応までかかってしまい演算速度面で不利であ
る。また、この変換処理をPEでの通常処理と並行に実
行すれば演算処理時間はトータルとして削減できるが、
入力・出力のレジスタがこの変換作業専用に使用され他
の用途に使用できない、変換処理後のデータが必要な場
合には演算処理時間だけ待つこととなり並行処理が不可
能である、といった問題が依然残る。
In Japanese Patent Laid-Open No. 5-67203, each S
PE (Processor Elemen) in IMD units
(t: processor element) A method has been proposed in which pre-calculation data is sequentially output to the outside from an output register incorporated therein, table conversion is sequentially performed externally, and the converted data is sequentially input to an input register incorporated in the PE. In this method, the number of conversion tables is one, so the increase in cost can be suppressed, but after all, since the processing is sequential, the processing time is PE
However, it is disadvantageous in terms of calculation speed. Also, if this conversion processing is executed in parallel with the normal processing in PE, the total processing time can be reduced,
There are still problems that the input / output registers are used exclusively for this conversion work and cannot be used for other purposes, and if the data after conversion processing is required, the processing time is waited and parallel processing is impossible. Remain.

【0008】非線形ユニットを1個搭載した特開平7−
219919号においても、状況は上記とほぼ同様であ
る。PE内にシフトレジスタとして用いる専用のレジス
タを設置し、非線形ユニットを挿入して環状の通信経路
とすることにより非線形演算を行なっているが、この場
合もPE個数分のサイクル処理を行なうことが必要であ
る。
Japanese Laid-Open Patent Publication No. 7-
In 199919, the situation is almost the same as above. Non-linear operation is performed by installing a dedicated register used as a shift register in PE and inserting a non-linear unit to form a circular communication path. In this case as well, it is necessary to perform cycle processing for the number of PEs. Is.

【0009】また、特開平9−305550号におい
て、外部から順次変換前データと変換後のデータを入力
し、各PEで入力された変換前データと演算前データを
比較し、一致したPEには変換後のデータを格納しこの
値を演算後データとする方式が提案されている。この場
合には、演算処理時間は演算前データの取りうる値の組
み合わせ数(即ち、変換テーブルのワード数)に依存す
るため、PEの個数よりこのワード数が少ない場合には
高速化が実現される。ところが、演算前データが8ビッ
トデータの場合、PE数によらず256回程度のサイク
ル数となるため、この場合においても演算処理時間が長
くなるという問題がある。また、他の通常の処理と並行
にこの変換処理を行うという方式も想定され得るが、そ
の場合にも上記特開平5−67203号と同じ問題が生
じる。
Further, in Japanese Patent Laid-Open No. 9-305550, data before conversion and data after conversion are sequentially input from the outside, and the data before conversion and the data before calculation input in each PE are compared. A method has been proposed in which the converted data is stored and this value is used as the calculated data. In this case, the calculation processing time depends on the number of combinations of values that can be taken by the pre-calculation data (that is, the number of words in the conversion table). Therefore, when the number of words is smaller than the number of PEs, the speedup is realized. It However, when the pre-computation data is 8-bit data, the number of cycles is about 256 regardless of the number of PEs, and thus there is a problem that the computation processing time becomes long even in this case. Also, a method may be envisaged in which this conversion processing is performed in parallel with other normal processing, but even in that case, the same problem as in JP-A-5-67203 arises.

【0010】さらに、特許第2812292号において
は、PEの個数と同数の出力ポートを持つ変換テーブル
用のRAMに対して、それぞれのPEから演算前データ
をアドレスポインタとして与えることで演算後データを
得る方法が提案されている。この方式においては変換速
度は1サイクル程度で終了するが、出力ポートの増加は
RAMのコストを押し上げることになり、特に数十個を
超えるポートを持つことは実現不可能である。したがっ
て、PE数が多いSIMD型マイクロプロセッサに対応
できない、という問題がある。
Further, in Japanese Patent No. 2812292, post-computation data is obtained by giving pre-computation data as an address pointer from each PE to a conversion table RAM having the same number of output ports as PEs. A method has been proposed. In this method, the conversion speed is completed in about one cycle, but the increase of the output ports increases the cost of RAM, and it is impossible to have more than several tens of ports. Therefore, there is a problem that SIMD microprocessors with a large number of PEs cannot be supported.

【0011】以上の従来技術においては、テーブル変換
器を1個搭載するSIMD型マイクロプロセッサにおけ
る各PE内データの非線形処理については、以下の2つ
のタイプのデータ逐次処理に分類され得る。
In the above-mentioned conventional technique, the non-linear processing of the data in each PE in the SIMD type microprocessor equipped with one table converter can be classified into the following two types of data sequential processing.

【0012】処理方式:PEから変換前データを取り
出しそれを対応するテーブル値のアドレスポインタとし
て使用し、グローバルプロセッサ(Global Pr
ocessor;GP)若しくは外部メモリコントロー
ラがそのアドレスに対応するデータをPEにロードする
ことによりテーブル変換を実現する。これを全PEにつ
いて順に繰り返す。
Processing method: The pre-conversion data is taken out from the PE and used as an address pointer of the corresponding table value, and the global processor (Global Pr)
(GP) or an external memory controller loads the data corresponding to the address into the PE to realize the table conversion. This is repeated for all PEs in sequence.

【0013】なお、後で説明するように、グローバルプ
ロセッサ(GP)は、SIMD型マイクロプロセッサを
構成する主要部位である。GPそのものは、SISD型
プロセッサであり、プログラムRAMとデータRAMを
内蔵し、プログラムコードを解読して、各種演算処理や
SIMD型マイクロプロセッサ全体に係る各種制御を行
なう。
As will be described later, the global processor (GP) is a main part of the SIMD type microprocessor. The GP itself is a SISD type processor, has a built-in program RAM and data RAM, decodes the program code, and performs various arithmetic processes and various controls related to the SIMD type microprocessor as a whole.

【0014】処理方式:変換前データが例えば8ビッ
トで表現されるデータである場合、GPにて0から25
5までインクリメントされるある変数(レジスタ)を設
定する。それらの0から255までの値の各々と、各P
Eにてそれぞれの演算前データと比較し一致すれば各P
Eの演算結果フラグを変化させる(“1”を立てる)。
フラグがセットされるPEにのみ対応する変換後データ
をロードする。上記変数が0から255までインクリメ
ントされると、テーブル変換が実現される。
Processing method: When the pre-conversion data is data represented by, for example, 8 bits, 0 to 25 in GP
Set a variable (register) that is incremented by 5. Each of those values from 0 to 255 and each P
At E, each pre-computation data is compared, and if they match, each P
The operation result flag of E is changed (“1” is set).
The post-conversion data corresponding to only the PE whose flag is set is loaded. When the above variable is incremented from 0 to 255, table conversion is realized.

【0015】上記処理方式の場合、同じ演算前データ
を持つPEが複数存在していても、GPはそのことを把
握できる手段が無く、結局、PE数分だけ上記処理を繰
り返す必要がある。また、処理方式の場合、各PEの
演算前データの内容をGPが前もって把握する手段が無
いため、結局、変換前データの総数、すなわち上記例の
場合256回の演算を繰り返す必要がある。
In the case of the above processing method, even if there are a plurality of PEs having the same pre-computation data, the GP has no means for grasping the fact, and in the end, the above processing must be repeated for the number of PEs. Further, in the case of the processing method, since there is no means for the GP to grasp the contents of the pre-computation data of each PE in advance, it is necessary to repeat the total number of pre-conversion data, that is, 256 computations in the above example.

【0016】ところで上記の処理方式に従う場合、P
Eの並ぶ順に沿って、個々のPEのレジスタファイルに
格納された値を、順次一つずつテーブル変換することに
なる。その際に、テーブル変換部へ入力される変換前デ
ータの履歴、つまりヒステリシスに対応して、変換に使
用するテーブルを動的に変更させるような処理や、入力
される変換前データの履歴そのものを監視する処理が、
付加的に要求されることが想定される。ところが、従来
技術においてはテーブル変換処理の高速化に関してのみ
腐心されている。その一方で、入力値のヒステリシスを
考慮するようなテーブル変換処理に係る技術は、現状殆
ど開示されていない。
By the way, when the above processing method is followed, P
The values stored in the register files of the individual PEs are sequentially converted into tables one by one in the order in which Es are arranged. At that time, the history of the pre-conversion data input to the table conversion unit, that is, processing that dynamically changes the table used for conversion corresponding to the hysteresis, and the history of the input pre-conversion data itself The process to monitor is
It is expected that additional requirements will be made. However, in the prior art, the focus is only on speeding up the table conversion process. On the other hand, at present, most of the techniques related to the table conversion process that considers the hysteresis of the input value are not disclosed.

【0017】上記のように入力値のヒステリシス監視に
対応したテーブル変換処理を実現するには、1つのデー
タに関するテーブル変換の結果値から、次のデータに適
用するテーブル若しくは入力状態を選択する処理を、各
PEもしくはGPにて演算しなければならない。そうす
ると、テーブル変換に必要なサイクル数が全体として増
大してしまう。
As described above, in order to realize the table conversion process corresponding to the hysteresis monitoring of the input value, the process of selecting the table or the input state to be applied to the next data from the result value of the table conversion for one data is performed. , Each PE or GP must calculate. Then, the number of cycles required for table conversion increases as a whole.

【0018】[0018]

【発明が解決しようとする課題】本発明は、SIMD型
マイクロプロセッサにおける非線型演算の、特に上記の
PE別順次テーブル変換処理(処理方式)において、
入力値のヒステリシスに対応したテーブル変換処理をよ
り少ない演算サイクル数にて実現することを目的とす
る。
SUMMARY OF THE INVENTION The present invention relates to a nonlinear operation in a SIMD type microprocessor, particularly in the above PE sequential table conversion processing (processing method),
The object is to realize a table conversion process corresponding to the hysteresis of an input value with a smaller number of operation cycles.

【0019】[0019]

【課題を解決するための手段】本発明は、上記の目的を
達成するために為されたものである。本発明に係る請求
項1に記載のテーブル変換器は、複数のプロセッサエレ
メントを備えており、プロセッサエレメントにおける所
定の演算であって、入力データに対する出力データが所
定のテーブルにより予め用意されている、演算が定義さ
れ、複数のプロセッサエレメントにて所定の順序で連続
して上記演算が行なわれる、SIMD型マイクロプロセ
ッサにおいて、入力データが、状態データと、変換前デ
ータであり、出力データが、変換後データと、次状態デ
ータであり、出力データにおける次状態データは、連続
して行なわれる次のプロセッサエレメントに関する演算
における、入力データの状態データとなる、テーブル変
換器である。
The present invention has been made to achieve the above object. A table converter according to a first aspect of the present invention includes a plurality of processor elements, which is a predetermined operation in the processor elements, and output data for input data is prepared in advance by a predetermined table. In a SIMD type microprocessor in which an operation is defined and a plurality of processor elements continuously perform the above operation in a predetermined order, input data is state data and pre-conversion data, and output data is after conversion. The data and the next state data, and the next state data in the output data is a table converter which becomes the state data of the input data in the operation regarding the next processor element that is continuously performed.

【0020】本発明に係る請求項2に記載のテーブル変
換器は、状態データ、及び次状態データのビット長が、
変更されて設定され得る、請求項1に記載のテーブル変
換器である。
In the table converter according to the second aspect of the present invention, the bit lengths of the state data and the next state data are
The table converter according to claim 1, which can be changed and set.

【0021】本発明に係る請求項3に記載のテーブル変
換器は、入力データの状態データは、連続して行なわれ
るプロセッサエレメントに関する演算の、直前のものに
おける、出力データの次状態データか、若しくは、固定
の設定値であるか、のいずれかであり、いずれであるか
は、各プロセッサエレメントの備える条件フラグにより
決定される、請求項1乃至請求項2に記載のテーブル変
換器である。
In the table converter according to a third aspect of the present invention, the state data of the input data is the next state data of the output data immediately before the operation relating to the processor element which is continuously performed, or , Or a fixed setting value, which is determined by a condition flag included in each processor element.

【0022】本発明に係る請求項4に記載のSIMD型
マイクロプロセッサは、請求項1乃至請求項3に記載の
テーブル変換器を搭載して、複数のプロセッサエレメン
トにて所定の順序で連続して上記演算が行う、SIMD
型マイクロプロセッサである。
A SIMD type microprocessor according to a fourth aspect of the present invention is equipped with the table converter according to the first to third aspects, and a plurality of processor elements are continuously arranged in a predetermined order. SIMD by the above calculation
Type microprocessor.

【0023】[0023]

【発明の実施の形態】以下、図面を参照して、本発明に
係る好適な実施の形態を説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Preferred embodiments of the present invention will be described below with reference to the drawings.

【0024】図1は、本発明に係るSIMD型マイクロ
プロセッサ2の概略の構成を示すブロック図である。該
SIMD型マイクロプロセッサ2は、概略、グローバル
プロセッサ4、レジスタファイル6、演算アレイ8、及
びテーブル変換部50から構成される。テーブル変換部
50は、メモリ及びレジスタファイル制御部52及びテ
ーブルメモリ54を含む。
FIG. 1 is a block diagram showing a schematic configuration of a SIMD type microprocessor 2 according to the present invention. The SIMD microprocessor 2 is roughly composed of a global processor 4, a register file 6, an operation array 8 and a table conversion unit 50. The table conversion unit 50 includes a memory and register file control unit 52 and a table memory 54.

【0025】(1)グローバルプロセッサ このグローバルプロセッサ4そのものは、いわゆるSI
SD型のプロセッサであり、プログラムRAM10とデ
ータRAM12を内蔵し(図2参照)、プログラムを解
読し各種制御信号を生成する。この制御信号は内蔵する
各種ブロック以外に、レジスタファイル6、演算アレイ
8にも供給される。また、GP(グローバルプロセッ
サ)命令実行時は内蔵する汎用レジスタ、ALU(算術
論理演算器)等を使用して各種演算処理、プログラム制
御処理をおこなう。
(1) Global Processor The global processor 4 itself is a so-called SI.
This is an SD type processor, which has a program RAM 10 and a data RAM 12 built therein (see FIG. 2) and decodes the program to generate various control signals. This control signal is supplied to the register file 6 and the arithmetic array 8 in addition to the various built-in blocks. Further, when a GP (global processor) instruction is executed, various arithmetic processing and program control processing are performed using a built-in general-purpose register, an ALU (arithmetic logical operation unit), and the like.

【0026】(2)レジスタファイル PE(プロセッサエレメント)命令で処理されるデータ
を保持している。PE(プロセッサエレメント)3は、
公知のように、SIMD型マイクロプロセッサにおいて
個別の演算を実行する構成単位である。図2のレジスタ
ファイル6及び演算アレイ8が示すように、図2のSI
MD型マイクロプロセッサ2では4個のPE3を含んで
いる。通常PE3は、例えば、256個(等)に設定さ
れている。上記のPE命令はSIMD型の命令であり、
レジスタファイル6に保持されている複数のデータに対
し、同時に同じ処理を行なう。このレジスタファイル6
からのデータの読み出し/書き込みの制御はグローバル
プロセッサ4からの制御によって行なわれる。読み出さ
れたデータは演算アレイ8に送られ、演算アレイ8での
演算処理後にレジスタファイル6に書き込まれる。
(2) Register file Holds data processed by a PE (processor element) instruction. PE (processor element) 3
As is well known, it is a structural unit that executes individual calculations in a SIMD microprocessor. As shown by the register file 6 and the arithmetic array 8 of FIG. 2, the SI of FIG.
The MD type microprocessor 2 includes four PEs 3. Usually, the PE 3 is set to 256 (or the like), for example. The PE instruction is a SIMD type instruction,
The same processing is simultaneously performed on a plurality of data held in the register file 6. This register file 6
Control of reading / writing of data from / to is performed by control from the global processor 4. The read data is sent to the arithmetic array 8 and written in the register file 6 after the arithmetic processing in the arithmetic array 8.

【0027】また、レジスタファイル6はプロセッサ2
外部からのアクセスが可能であり、グローバルプロセッ
サ4の制御とは別に、外部から特定のレジスタを読み出
し/書き込みが行なわれる。
The register file 6 is the processor 2
It can be accessed from the outside, and apart from the control of the global processor 4, a specific register is read / written from the outside.

【0028】(3)演算アレイ PE命令の演算処理が行なわれる。処理の制御はすべて
グローバルプロセッサ4から行なわれる。
(3) Arithmetic array PE instruction arithmetic processing is performed. All processing control is performed from the global processor 4.

【0029】(4)テーブル変換部50におけるメモリ
及びレジスタファイル制御回路52プロセッサ2外部か
らのレジスタファイル6へのアクセスに関する制御を行
う。また、テーブル変換用のテーブルが格納されたテー
ブルメモリ(テーブルRAM)54にも接続され、レジ
スタファイル6のデータに対してテーブル変換を行うこ
とができる。
(4) Memory and register file control circuit 52 in the table conversion unit 50 Controls access to the register file 6 from outside the processor 2. Further, it is also connected to a table memory (table RAM) 54 in which a table for table conversion is stored, and table conversion can be performed on the data of the register file 6.

【0030】図2は、本発明に係る好適な実施の形態で
あるSIMD型マイクロプロセッサ2の、詳細な構成を
示すブロック図である。この図2では、PE数が4個の
場合の例を示す。上述のように、通常256個等のPE
3が設定されている。
FIG. 2 is a block diagram showing a detailed configuration of the SIMD type microprocessor 2 which is a preferred embodiment according to the present invention. FIG. 2 shows an example in which the number of PEs is four. As mentioned above, usually 256 PE etc.
3 is set.

【0031】グロバールプロセッサ4には、本プロセッ
サのプログラム格納用のプログラムRAM10と、演算
データ格納用のデータRAM12が内蔵されている。さ
らに、プログラムのアドレスを保持するプログラムカウ
ンタ(PC)14、演算処理のデータ格納のための汎用
レジスタであるG0、G1、G2及びG3レジスタ(1
6、18、20、22)、レジスタ退避・復帰時に退避
先データRAMのアドレスを保持しているスタックポイ
ンタ(SP)24、サブルーチンコール時にコール元の
アドレスを保持するリンクレジスタ(LS)(図示せ
ず。)、同じくIRQ(Interrupt ReQu
est;割込み要求)時とNMI(Non−Maska
ble Interrupt ReQuest;禁止不
能割込み要求)時の分岐元アドレスを保持するLIレジ
スタ(図示せず。)及びLNレジスタ(図示せず。)、
プロセッサの状態を保持しているプロセッサステータス
レジスタ(P)(図示せず。)が内蔵されている。
The global processor 4 has a built-in program RAM 10 for storing programs of this processor and a data RAM 12 for storing operation data. Further, a program counter (PC) 14 that holds the address of the program, G0, G1, G2, and G3 registers (1 that are general-purpose registers for storing data for arithmetic processing)
6, 18, 20, 22), a stack pointer (SP) 24 that holds the address of the save destination data RAM at the time of register save / restore, and a link register (LS) (LS) that holds the call source address at the time of subroutine call. IRQ (Interrupt ReQu)
est; interrupt request) and NMI (Non-Maska)
ble Interrupt ReQuest; an LI register (not shown) and an LN register (not shown) for holding a branch source address at the time of a prohibition impossible interrupt request),
A processor status register (P) (not shown) that holds the state of the processor is incorporated.

【0032】これらのレジスタと、命令デコーダ(図示
せず。)、ALU(図示せず。)、メモリ制御回路(図
示せず。)、割り込み制御回路(図示せず。)、外部I
/O制御回路(図示せず。)、及びGP演算制御回路5
6を使用して、GP命令が実行される。
These registers, instruction decoder (not shown), ALU (not shown), memory control circuit (not shown), interrupt control circuit (not shown), external I.
/ O control circuit (not shown) and GP arithmetic control circuit 5
6 is used to execute the GP instruction.

【0033】また、PE命令実行時は、命令デコーダ、
レジスタファイル制御回路58、PE演算制御回路(図
示せず。)を使用して、レジスタファイル6の制御と演
算アレイ8の制御が行なわれる。さらに、データRAM
12から複数のPEレジスタファイル6にデータを転送
できるように、設定されている。
When the PE instruction is executed, the instruction decoder,
The register file control circuit 58 and the PE operation control circuit (not shown) are used to control the register file 6 and the operation array 8. In addition, data RAM
It is set so that data can be transferred from 12 to a plurality of PE register files 6.

【0034】レジスタファイル6においては、1つのP
E単位に8ビットのレジスタ34が32本内蔵されてお
り、(例えば)256個のPE分の(32本の)組が、
アレイ構成になっている。レジスタ34はPE毎に、R
0、R1、R2、...R31と呼ばれる。それぞれの
レジスタ34は、演算アレイ8に対して1つの読み出し
ポートと1つの書き込みポートを備えており、8ビット
のリード/ライト兼用のバスで演算アレイ8からアクセ
スされる。32本のレジスタの内、24本(R0〜R2
3)はプロセッサ外部からアクセス可能であり、外部か
らクロック(CLK)とアドレス(Address)、
リード/ライト制御(RWB)を入力することで、任意
のレジスタ34に対し、読み書きできる。残りの8本
(R24〜R31)のレジスタ34は、PE演算の一時
的な演算データ保存用として使用される。
In the register file 6, one P
32 8-bit registers 34 are built in each E unit, and (for example) 256 PE (32) sets are
It has an array configuration. The register 34 is R for each PE.
0, R1, R2 ,. . . Called R31. Each register 34 has one read port and one write port for the arithmetic array 8, and is accessed from the arithmetic array 8 by an 8-bit read / write dual-use bus. Of the 32 registers, 24 (R0-R2
3) is accessible from the outside of the processor, and clock (CLK) and address (Address)
By inputting the read / write control (RWB), reading / writing can be performed with respect to an arbitrary register 34. The remaining eight registers (R24 to R31) 34 are used for temporarily storing PE calculation data.

【0035】上記の残りの8本(R24〜R31)のレ
ジスタ34には、グローバルプロセッサ4のデータRA
M12からのデータを書き込まれることもある。グロー
バルプロセッサ4からのライト制御信号と、演算アレイ
8内の(後で説明する)条件レジスタ(Tレジスタ)5
3に格納されるデータ(フラグ)内容とを条件にして、
レジスタファイル6に内蔵される8本のレジスタ34
(R24〜R31)対し、グローバルプロセッサ4のデ
ータRAM12のデータが(条件を満たす)複数のPE
3に同時に書き込まれることも可能である。また、デー
タRAM12は64ビットの出力ポートを備え、1つの
PE3に対しても8本のレジスタ34に同時に64ビッ
トの書き込みが可能である。
Data RA of the global processor 4 is stored in the remaining eight registers (R24 to R31) 34.
The data from M12 may be written. A write control signal from the global processor 4 and a condition register (T register) 5 (described later) in the arithmetic array 8
3 and the contents of the data (flag) stored in
Eight registers 34 built in the register file 6
(R24 to R31), the data in the data RAM 12 of the global processor 4 has a plurality of PEs (which satisfy the condition).
It is also possible to write to 3 simultaneously. Further, the data RAM 12 is provided with a 64-bit output port, and even one PE 3 can simultaneously write 64-bit data to the eight registers 34.

【0036】演算アレイ8は、16ビットALU36と
16ビットAレジスタ38、Fレジスタ40を内蔵して
いる。PE命令による演算は、レジスタファイル6から
読み出されたデータ若しくはグローバルプロセッサ4か
ら与えられたデータをALU36の片側の入力とし、A
レジスタ38の内容をもう片側の入力として、行なわれ
る。その演算結果は、Aレジスタ38に格納される。し
たがって、R0〜R31レジスタ34若しくはグローバ
ルプロセッサ4から与えられたデータと、Aレジスタ3
8に格納されるデータとの、演算が行なわれることにな
る。
The arithmetic array 8 contains a 16-bit ALU 36, a 16-bit A register 38, and an F register 40. In the operation by the PE instruction, the data read from the register file 6 or the data given from the global processor 4 is used as an input on one side of the ALU 36, and A
This is performed by using the contents of the register 38 as the input on the other side. The calculation result is stored in the A register 38. Therefore, the data given from the R0 to R31 register 34 or the global processor 4 and the A register 3
An operation will be performed with the data stored in 8.

【0037】レジスタファイル6の8ビットのデータ
は、シフト・拡張回路44により任意のビット分だけ、
左シフトしてALU36に入力する。
The 8-bit data of the register file 6 is shifted by the shift / expansion circuit 44 by an arbitrary bit,
Left shift and input to ALU36.

【0038】≪第1の実施の形態≫本発明に係るSIM
D型マイクロプロセッサ2は、テーブル変換部50を1
個搭載しそこに含まれるテーブルにより、各PE3内デ
ータの非線形演算を行なう。加えて、本発明に係るSI
MD型マイクロプロセッサ2では、 ・「PEから変換前データを取り出しそれを対応するテ
ーブル値のアドレスポインタとして使用し、GP、若し
くは外部メモリコントローラがそのアドレスに対応する
データをPEにロードすることにより、テーブル変換を
行なう。これを全PEについて順に繰り返す。」という
データ逐次処理を行なう。
<< First Embodiment >> SIM according to the present invention
The D-type microprocessor 2 sets the table conversion unit 50 to 1
The non-linear operation of the data in each PE 3 is carried out by the table mounted therein and contained therein. In addition, the SI according to the present invention
In the MD type microprocessor 2, “By extracting the pre-conversion data from the PE and using it as the address pointer of the corresponding table value, the GP or the external memory controller loads the data corresponding to the address into the PE, Table conversion is performed. This is repeated for all PEs in sequence. "

【0039】更に、本発明に係るSIMD型マイクロプ
ロセッサ2は、テーブル変換前の入力データのヒステリ
シスに対応して、複数のテーブルからテーブルを一つ選
択する処理を行なう。つまり、 (1)一つの非線型演算に対して、変換テーブルが複数
用意されている。それぞれのテーブル(場合)を、1つ
の『状態』とみる。このことにより、ステートマシンが
構成される。 (2)夫々は内容が異なる。 (3)入力データのテーブル変換後における状態の遷移
を監視することにより、次の(後続の)データ変換にて
使用する変換テーブルを、動的に選択する。このような
処理を行なう。
Further, the SIMD microprocessor 2 according to the present invention performs a process of selecting one table from a plurality of tables corresponding to the hysteresis of the input data before the table conversion. That is, (1) A plurality of conversion tables are prepared for one non-linear operation. Each table (case) is regarded as one "state". This constitutes a state machine. (2) The contents are different. (3) The conversion table used in the next (successive) data conversion is dynamically selected by monitoring the state transition of the input data after the table conversion. Such processing is performed.

【0040】即ち、テーブル変換前の入力データと、そ
の時の『状態』とが確定していれば、テーブル変換後の
データと、次の『状態』とは一意に決定される。かよう
なテーブル変換処理において、出力データに変換後の遷
移先状態値を含ませることでステートマシンを構成する
ことが可能となり、よって、動的なテーブル選択、及び
入力値のヒステリシス対応が可能となる。
That is, if the input data before table conversion and the "state" at that time are fixed, the data after table conversion and the next "state" are uniquely determined. In such a table conversion process, it becomes possible to configure a state machine by including the transition destination state value after conversion in the output data, thus enabling dynamic table selection and hysteresis of the input value. Become.

【0041】上記のようなテーブル変換処理を実現する
ためのメモリ構成、特にテーブルメモリ構成を、図3に
示す。該図3のテーブルメモリは、扱うデータのビット
数がnビット(n≧0)であり、『状態』数がsビット
(s≧0)で表わされる場合のものである。また1ワー
ドのビット幅をwビットとすると、当然ながらs+n≦
wである。
FIG. 3 shows a memory configuration, particularly a table memory configuration, for realizing the above table conversion processing. In the table memory of FIG. 3, the number of bits of data to be handled is n bits (n ≧ 0) and the “state” number is represented by s bits (s ≧ 0). If the bit width of one word is w bits, s + n ≦
w.

【0042】図3のメモリテーブルにおいて、nビット
の変換前データと、sビットで表わされる『状態』との
組合せが、アドレスポインタとなるアドレスにて、nビ
ットの変換後のデータと、sビットで表される次の遷移
先状態(に係るデータ)が格納されている。状態を表す
sビットは、nビットに対して上位に配置されても下位
に配置されても、かまわない。
In the memory table of FIG. 3, the combination of the n-bit pre-conversion data and the "state" represented by s bits is an address that serves as an address pointer. The following transition destination state (data related to) is stored. The s-bit indicating the state may be arranged higher or lower than n bits.

【0043】図4は、本発明に係るSIMD型マイクロ
プロセッサ2における、第1の実施の形態のテーブル変
換部50の詳細な構成を示す。以下に、該テーブル変換
部50の動作を説明する。
FIG. 4 shows a detailed configuration of the table conversion unit 50 of the first embodiment in the SIMD type microprocessor 2 according to the present invention. The operation of the table conversion unit 50 will be described below.

【0044】最初に、図2におけるメモリ及びレジスタ
ファイル制御回路52から読み出された変換前データ
(nビット)と、初期状態値(sビット)とにより、ア
ドレスポインタ((n+s)ビット)が生成される。こ
のアドレスポインタにより、図3のテーブルメモリ62
から、変換後データ(nビット)と次の遷移先状態値
(sビット)が取得される。この「次の遷移先状態値」
(sビット)は、アドレス生成部60に戻される。次
に、図2におけるメモリ及びレジスタファイル制御回路
52から続いて読み出された変換前データ(nビット)
と、遷移先状態値(sビット)とにより、次のアドレス
ポインタが生成される。このアドレスポインタを元にし
て、新たに、図3のテーブルメモリ62から、変換後デ
ータ(nビット)と(更に)次の遷移先状態値(sビッ
ト)が取得される。
First, an address pointer ((n + s) bits) is generated from the pre-conversion data (n bits) read from the memory and register file control circuit 52 in FIG. 2 and the initial state value (s bits). To be done. With this address pointer, the table memory 62 of FIG.
From, the converted data (n bits) and the next transition destination state value (s bits) are acquired. This "next transition destination state value"
The (s bit) is returned to the address generator 60. Next, the pre-conversion data (n bits) read subsequently from the memory and register file control circuit 52 in FIG.
And the transition destination state value (s bit) generate the next address pointer. Based on this address pointer, the converted data (n bits) and the (next) next transition destination state value (s bits) are newly acquired from the table memory 62 of FIG.

【0045】アドレスポインタ作成時には、第1のセレ
クタ64、第2のセレクタ66を介する。第1のセレク
タ64は、変換前データとして必要なnビットを選択
し、アドレスポインタ内の適切な位置(図では下位)に
設定する。第2のセレクタ66は、初期状態値若しくは
遷移先状態値として必要なsビットを選択し、アドレス
ポインタ内の適切な位置(図では上位)に設定する。変
換後データ出力及び次の遷移先状態値の取得時には、第
3のセレクタ68、第4のセレクタ70を介する。第3
のセレクタ68は、変換後データとしてnビットを、出
力データ内の適切な位置(図では下位)から選択する。
第4のセレクタ70は、次の遷移先状態値としてsビッ
トを、出力データ内の適切な位置(図では上位)から選
択する。
At the time of creating the address pointer, it goes through the first selector 64 and the second selector 66. The first selector 64 selects the required n bits as the pre-conversion data and sets it at an appropriate position (lower in the figure) in the address pointer. The second selector 66 selects an s bit required as an initial state value or a transition destination state value, and sets it at an appropriate position (higher in the figure) in the address pointer. The third selector 68 and the fourth selector 70 are used to output the converted data and obtain the next transition destination state value. Third
Selector 68 selects n bits as post-conversion data from an appropriate position (lower in the figure) in the output data.
The fourth selector 70 selects s bits as the next transition destination state value from an appropriate position (higher in the figure) in the output data.

【0046】テーブルメモリ62へのアドレスポインタ
設定において、1回目は「初期状態値」を利用し、2回
目以降は直前に取得された「遷移先状態値」を利用す
る。何れを利用するかは、アドレス生成部60内のマル
チプレクス72において選択・制御される。
In setting the address pointer to the table memory 62, the "initial state value" is used for the first time and the "transition destination state value" acquired immediately before is used for the second time and thereafter. Which one is used is selected and controlled by the multiplex 72 in the address generator 60.

【0047】SIMD型マイクロプロセッサ2のPE数
が「k個」であるとすると、k個のPE3(のレジスタ
34)に格納されているデータをテーブル変換するに
は、メモリ及びレジスタファイル制御回路52を介して
1番目のPE3からレジスタ34を読み出してテーブル
変換を実施し、またレジスタ34へ書き込むという動作
を、順次、k回繰り返すことになる。しかも、この作業
をk回繰り返すだけで十分であり、他の動作を別途付加
的に実行する必要が無い。
Assuming that the number of PEs of the SIMD type microprocessor 2 is “k”, the memory and register file control circuit 52 is used to convert the data stored in (register 34 of) k PEs 3 into a table. The operation of reading the register 34 from the first PE 3 via the, performing table conversion, and writing to the register 34 is sequentially repeated k times. Moreover, it is sufficient to repeat this work k times, and it is not necessary to additionally perform other operations.

【0048】結局、2番目以降のPEのテーブル変換に
ついては、次の『状態』を求めるための演算を行う必要
が無く、従って、変換テーブルも自動的に動的変更され
ることになる。
After all, for the table conversion of the second and subsequent PEs, it is not necessary to perform the calculation for obtaining the next "state", and therefore the conversion table is automatically changed dynamically.

【0049】また、図4のアドレス生成部60におい
て、第1のセレクタ64の設定を変更すれば、「s+n
≦w」という条件の下で、取り出されるデータのビット
幅(即ち、nビットのn)を変更することができる。同
様に、第2のセレクタ66の設定を変更すれば、「s+
n≦w」という条件の下で、取り出される『状態』数の
ビット幅(即ち、sビットのs)を変更することができ
る。そのとき、第3のセレクタ68及び第4のセレクタ
70の設定を調整すれば、変換後データ及び次の遷移先
状態値を適切に取得することができる。即ち、s及びn
は、以下の条件式を満たす限りで、任意の値に設定され
ることが可能である。
Further, in the address generator 60 of FIG. 4, if the setting of the first selector 64 is changed, "s + n"
It is possible to change the bit width of the data to be taken out (that is, n of n bits) under the condition of ≦ w ”. Similarly, if the setting of the second selector 66 is changed, "s +
It is possible to change the bit width (that is, s of s bits) of the number of “states” to be taken out under the condition of “n ≦ w”. At that time, if the settings of the third selector 68 and the fourth selector 70 are adjusted, the converted data and the next transition destination state value can be appropriately acquired. That is, s and n
Can be set to any value as long as the following conditional expression is satisfied.

【数1】n≧0 s≧0 s+n≦w[Equation 1] n ≧ 0 s ≧ 0 s + n ≦ w

【0050】≪第2の実施の形態≫図5は、本発明に係
るSIMD型マイクロプロセッサ2’における、第2の
実施の形態のテーブル変換部50’の詳細な構成を示
す。図4に示されるテーブル変換部50と略同様のもの
であるため、同一部位には同一符号を付して説明を省略
し、異なる部分を中心に説明する。
<< Second Embodiment >> FIG. 5 shows a detailed configuration of a table conversion unit 50 'according to a second embodiment of a SIMD microprocessor 2'according to the present invention. Since it is substantially the same as the table conversion unit 50 shown in FIG. 4, the same parts are denoted by the same reference numerals, the description thereof will be omitted, and different parts will be mainly described.

【0051】また、図6のSIMD型マイクロプロセッ
サ2’は、図5に示される第2の実施の形態のテーブル
変換部50’を構成要素とするものである。その図6の
SIMD型マイクロプロセッサ2’は、図2に示される
SIMD型マイクロプロセッサ2の構成に対して、メモ
リ及びレジスタファイル制御回路52’を介して各PE
3の条件レジスタ53中の任意の1ビットが読み出され
る構成が付加されている。
Further, the SIMD type microprocessor 2'of FIG. 6 has the table conversion unit 50 'of the second embodiment shown in FIG. 5 as a constituent element. The SIMD type microprocessor 2 ′ of FIG. 6 is different from the SIMD type microprocessor 2 shown in FIG. 2 in that each PE is connected via a memory and register file control circuit 52 ′.
A configuration is added in which any one bit in the condition register 53 of No. 3 is read.

【0052】図5に示される第2の実施の形態のテーブ
ル変換部50’での、各PE3のレジスタ34に格納さ
れたデータ(変換前データ)の、テーブル変換の動作を
説明する。アドレス生成部60’では、アドレスポイン
タが設定されるのであるが、その際の遷移先状態値とし
て、その直前のテーブル変換から得られた「次の遷移先
状態値」がフィードバックされて設定されるか(又は
「初期値」が設定されるか)、若しくは予めの「設定
値」が設定される。この「次の遷移先状態値」か「設定
値」かの選択は、第1のマルチプレクス72’におい
て、条件フラグ、即ち、各PE3の条件レジスタ53中
の1ビットの、設定内容に応じて、為される。例えば、
該条件フラグに“1”が立っていれば、予めの「設定
値」が遷移先状態値として設定される。この「設定値」
が選択されるということは、利用される変換テーブルが
固定されるということである。つまり、一時的にヒステ
リシス対応をとらないことになる。
The table conversion operation of the data (pre-conversion data) stored in the register 34 of each PE 3 in the table conversion unit 50 'of the second embodiment shown in FIG. 5 will be described. In the address generator 60 ′, the address pointer is set, and the “next transition destination state value” obtained from the table conversion immediately before that is fed back and set as the transition destination state value at that time. (Or whether an "initial value" is set) or a preset "set value" is set. This "next transition destination state value" or "setting value" is selected according to the condition flag in the first multiplex 72 ', that is, the setting content of 1 bit in the condition register 53 of each PE3. Is done. For example,
If the condition flag is set to "1", a preset "setting value" is set as the transition destination state value. This "set value"
The selection of means that the conversion table used is fixed. In other words, it means that hysteresis is not temporarily taken.

【0053】[0053]

【発明の効果】本発明を利用することにより、以下のよ
うな効果を奏することができる。
By utilizing the present invention, the following effects can be obtained.

【0054】本発明の第1の実施の形態に係るテーブル
変換部及びそれを含むSIMD型マイクロプロセッサを
利用すると、入力値のヒステリシスに対応して適用する
テーブルを変更するテーブル変換処理を実現するにあた
り、適用すべきテーブルの遷移を各PEもしくはGPで
演算する必要が無く、通常のテーブル変換処理と同等の
サイクル数にて実現することが可能となる。
When the table conversion unit and the SIMD type microprocessor including the table conversion unit according to the first embodiment of the present invention are used, the table conversion processing for changing the table to be applied according to the hysteresis of the input value is realized. , It is not necessary to calculate the transition of the table to be applied by each PE or GP, and it is possible to realize it in the same number of cycles as the normal table conversion processing.

【0055】更に、テーブル変換後の出力データにおい
て遷移先状態値としてフィードバックさせる値のビット
数を、可変にすることができる。よって、より自由なス
テートマシンを構成することが可能となる。
Further, the number of bits of the value fed back as the transition destination state value in the output data after table conversion can be made variable. Therefore, a more flexible state machine can be configured.

【0056】本発明の第2の実施の形態に係るテーブル
変換部及びそれを含むSIMD型マイクロプロセッサで
は、入力値のヒステリシスにより変換テーブルを動的に
選択するだけではなく、変換テーブルを固定的に選択す
る経路を確保している。よって、ヒステリシス対応のテ
ーブル変換処理と、動的にテーブルを変更する必要の無
い固定のテーブルに対する通常のテーブル変換処理とを
混在させることが可能となる。
In the table conversion unit and the SIMD microprocessor including the table conversion unit according to the second embodiment of the present invention, not only the conversion table is dynamically selected by the hysteresis of the input value, but also the conversion table is fixed. The route to be selected is secured. Therefore, it is possible to mix the table conversion process corresponding to the hysteresis and the normal table conversion process for the fixed table that does not need to be dynamically changed.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明に係るSIMD型マイクロプロセッサ
の概略の構成を示すブロック図である。
FIG. 1 is a block diagram showing a schematic configuration of a SIMD type microprocessor according to the present invention.

【図2】 本発明に係る好適な実施の形態であるSIM
D型マイクロプロセッサの、詳細な構成を示すブロック
図である。
FIG. 2 is a SIM as a preferred embodiment according to the present invention.
It is a block diagram which shows a detailed structure of a D-type microprocessor.

【図3】 本発明に係るテーブル変換処理を実現するた
めのテーブルメモリ構成を示す。
FIG. 3 shows a table memory configuration for realizing a table conversion process according to the present invention.

【図4】 本発明に係るSIMD型マイクロプロセッサ
における、第1の実施の形態のテーブル変換部の詳細な
構成を示す。
FIG. 4 shows a detailed configuration of a table conversion unit according to the first embodiment in a SIMD microprocessor according to the present invention.

【図5】 本発明に係るSIMD型マイクロプロセッサ
における、第2の実施の形態のテーブル変換部の詳細な
構成を示す。
FIG. 5 shows a detailed configuration of a table conversion unit according to a second embodiment in a SIMD microprocessor according to the present invention.

【図6】 本発明に係る好適な実施の形態であるSIM
D型マイクロプロセッサの、詳細な構成を示すブロック
図であって、図5に示される第2の実施の形態のテーブ
ル変換部を構成要素とするものである。
FIG. 6 is a preferred embodiment SIM according to the present invention.
FIG. 6 is a block diagram showing a detailed configuration of a D-type microprocessor, which has the table conversion unit of the second embodiment shown in FIG. 5 as a component.

【符号の説明】[Explanation of symbols]

2、2’・・・SIMD型マイクロプロセッサ、3・・
・プロセッサエレメント、4・・・グローバルプロセッ
サ、6・・・レジスタファイル、8・・・演算アレイ、
34・・・レジスタ、50、50’・・・テーブル変換
部、52、52’・・・メモリ及びレジスタファイル制
御回路、53・・・条件レジスタ、54・・・テーブル
メモリ、60、60’・・・アドレス生成部、62・・
・テーブルメモリ、64・・・第1のセレクタ、66・
・・第2のセレクタ、68・・・第3のセレクタ、70
・・・第4のセレクタ、72、72’・・・第1のマル
チプレックス
2, 2 '... SIMD type microprocessor, 3 ...
・ Processor element, 4 ... Global processor, 6 ... Register file, 8 ... Arithmetic array,
34 ... Registers, 50, 50 '... Table conversion unit, 52, 52' ... Memory and register file control circuit, 53 ... Condition register, 54 ... Table memory, 60, 60 '. ..Address generation unit, 62 ...
Table memory, 64 ... first selector, 66
.... Second selector, 68 ... Third selector, 70
... Fourth selector, 72, 72 '... First multiplex

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 複数のプロセッサエレメントを備えてお
り、 プロセッサエレメントにおける所定の演算であって、入
力データに対する出力データが所定のテーブルにより予
め用意されている、演算が定義され、 複数のプロセッサエレメントにて所定の順序で連続して
上記演算が行なわれる、SIMD型マイクロプロセッサ
において、 入力データが、状態データと、変換前データであり、 出力データが、変換後データと、次状態データであり、 出力データにおける次状態データは、連続して行なわれ
る次のプロセッサエレメントに関する演算における、入
力データの状態データとなる、テーブル変換器。
1. A processor comprising a plurality of processor elements, wherein a predetermined operation in the processor element, wherein output data for input data is prepared in advance by a predetermined table, is defined, and the plurality of processor elements are provided. In a SIMD microprocessor in which the above operations are continuously performed in a predetermined order, the input data is state data and pre-conversion data, and the output data is post-conversion data and next-state data. A table converter in which the next state data in the data becomes the state data of the input data in the operation on the next processor element performed successively.
【請求項2】 状態データ、及び次状態データのビット
長が、変更されて設定され得る、請求項1に記載のテー
ブル変換器。
2. The table converter according to claim 1, wherein the bit lengths of the state data and the next state data can be changed and set.
【請求項3】 入力データの状態データは、連続して行
なわれるプロセッサエレメントに関する演算の、直前の
ものにおける、出力データの次状態データか、若しく
は、固定の設定値であるか、のいずれかであり、いずれ
であるかは、各プロセッサエレメントの備える条件フラ
グにより決定される、請求項1乃至請求項2に記載のテ
ーブル変換器。
3. The state data of the input data is either the next state data of the output data, or a fixed set value, immediately before the operation on the processor element that is continuously performed. The table converter according to claim 1 or 2, wherein the presence or absence is determined by a condition flag included in each processor element.
【請求項4】 請求項1乃至請求項3に記載のテーブル
変換器を搭載して、複数のプロセッサエレメントにて所
定の順序で連続して上記演算が行う、SIMD型マイク
ロプロセッサ
4. A SIMD type microprocessor equipped with the table converter according to any one of claims 1 to 3, wherein a plurality of processor elements continuously perform the operation in a predetermined order.
JP2001261300A 2001-08-30 2001-08-30 Simd type microprocessor performing table conversion process corresponding to hysreresis of input value Pending JP2003067349A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001261300A JP2003067349A (en) 2001-08-30 2001-08-30 Simd type microprocessor performing table conversion process corresponding to hysreresis of input value

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001261300A JP2003067349A (en) 2001-08-30 2001-08-30 Simd type microprocessor performing table conversion process corresponding to hysreresis of input value

Publications (1)

Publication Number Publication Date
JP2003067349A true JP2003067349A (en) 2003-03-07

Family

ID=19088368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001261300A Pending JP2003067349A (en) 2001-08-30 2001-08-30 Simd type microprocessor performing table conversion process corresponding to hysreresis of input value

Country Status (1)

Country Link
JP (1) JP2003067349A (en)

Similar Documents

Publication Publication Date Title
US7350054B2 (en) Processor having array of processing elements whose individual operations and mutual connections are variable
JP2008071130A (en) Simd type microprocessor
JP3683773B2 (en) Floating point unit that uses a standard MAC unit to perform SIMD operations
JPH0444970B2 (en)
JP4002151B2 (en) Information processing device
US20020124038A1 (en) Processor for processing variable length data
JP2000322235A (en) Information processor
US6779098B2 (en) Data processing device capable of reading and writing of double precision data in one cycle
US20220261251A1 (en) Processing device with vector transformation execution
JP2003241960A (en) Processor, and computation instruction processing method and computation control method therein
JP2003067349A (en) Simd type microprocessor performing table conversion process corresponding to hysreresis of input value
JP2006018411A (en) Processor
JP3144859B2 (en) Arithmetic logic unit
JP5633303B2 (en) Reconfigurable LSI
JP4442905B2 (en) Image data processing method
JP3971559B2 (en) Parallel processor and image processing apparatus using the same
JP4294190B2 (en) Parallel processor and image processing apparatus using the same
JP2006268152A (en) Integrated circuit device
JP2007109253A (en) Parallel processor
JP2002229962A (en) Simd type microprocessor that detects total sum and peak value
JPS5995646A (en) Arithmetic control system
JP2004192405A (en) Simd type processor
JP2004062401A (en) Arithmetic processor and camera device using it
JPH04184535A (en) Parallel arithmetic units
JP2002108604A (en) Table conversion in simd type microprocessor