JP2791762B2 - Arithmetic unit - Google Patents
Arithmetic unitInfo
- Publication number
- JP2791762B2 JP2791762B2 JP8055486A JP5548696A JP2791762B2 JP 2791762 B2 JP2791762 B2 JP 2791762B2 JP 8055486 A JP8055486 A JP 8055486A JP 5548696 A JP5548696 A JP 5548696A JP 2791762 B2 JP2791762 B2 JP 2791762B2
- Authority
- JP
- Japan
- Prior art keywords
- alu
- input
- bus
- output
- arbiter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Complex Calculations (AREA)
Description
【0001】[0001]
【発明の属する技術分野】この発明は、高速演算処理が
可能な演算装置に関し、特に特定用途の論理演算装置に
関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an arithmetic unit capable of high-speed arithmetic processing, and more particularly to a specific-purpose logical arithmetic unit.
【0002】[0002]
【従来の技術】従来のCPUを有する一般の演算装置
は、プログラムを段階的に処理すると共に、そのプログ
ラムを処理する段階において、外部のメモリに記憶され
ているプログラムから、演算処理に必要な命令を読み込
まなければならなかった。例えば、従来の演算装置で累
算をしようとすると、図7に示すような処理内容のステ
ップ状況になる。すなわち、従来の装置は、累算を1回
行うのに、命令アクセス、入力1、命令アクセス、結果
入力1、命令アクセス、加算1、命令アクセス、結果記
憶1、命令アクセス、結果出力1というように10ステ
ップ必要になるとともに、各段階ごとに命令アクセスが
必要であった。そこで、この装置によって、5個の演算
結果出力を得るためには、50ステップの処理が必要で
ある。2. Description of the Related Art A general arithmetic device having a conventional CPU processes a program in a stepwise manner. At the stage of processing the program, a program stored in an external memory is used to execute instructions necessary for the arithmetic processing. Had to read. For example, when an attempt is made to accumulate in a conventional arithmetic unit, the processing results in a step situation as shown in FIG. That is, in the conventional device, the instruction access, the input 1, the instruction access, the result input 1, the instruction access, the addition 1, the instruction access, the result storage 1, the instruction access, and the result output 1 are performed in one accumulation. 10 steps were required, and an instruction access was required for each step. Therefore, in order to obtain five operation result outputs by this device, processing of 50 steps is necessary.
【0003】[0003]
【発明が解決しようとする課題】このようにした従来の
演算装置では、プログラムの処理中に、必要な命令を読
み込まなければならないうえ、全ての演算処理が段階的
に直列に行われるので、その処理速度が遅くなるという
問題があった。また、従来の演算装置を並列に動作させ
て高速化を図ることもある。しかし、そこで用いられる
各演算装置は、段階的に直列に演算を行い、繰り返し命
令を読みこなければならない。したがって、その処理速
度が遅くなるという点において、上記と同様な問題が残
ることになる。この発明の目的は、命令アクセスを不要
にし、高速処理が可能な演算装置を提供することであ
る。In such a conventional arithmetic device, necessary instructions must be read during the processing of a program, and all arithmetic processing is performed in a stepwise serial manner. There is a problem that the processing speed becomes slow. Further, there is a case where a conventional arithmetic device is operated in parallel to increase the speed. However, each of the arithmetic units used therein must perform an operation serially in a stepwise manner and read a repetitive instruction. Therefore, the same problem as described above remains in that the processing speed is reduced. SUMMARY OF THE INVENTION It is an object of the present invention to provide an arithmetic device which does not require instruction access and can perform high-speed processing.
【0004】[0004]
【課題を解決するための手段】本発明の演算装置は、A
LUと配線と入出力ポートとを備えた直方形のALU編
成体と、バスと、前記バスの端部に接続しバスへの信号
出力許可制御をするアービタとを備え、前記ALU編成
体を基板上に配置し、ALU編成体のうちのひとつのA
LU編成体を外部入力部に接続し、他のひとつのALU
編成体を外部出力部に接続し、前記バスを介して全ての
前記ALU編成体を接続し、外部入力部から個別機能の
分担と接続関係をセットアップするプログラムをハード
化する信号としてフローグラフコードを入力し、このフ
ローグラフコードに応じた前記個別機能を記憶した前記
各ALU編成体と、前記アービタとを用いて、特定用途
のための論理演算回路を前記基板上に編成するものであ
る。そして、前記ALU編成体の対辺の一方の辺に第n
入力ポートを設け、他方の辺に第n出力ポートを設け、
その他の一方の辺から第n入力ポートまでの距離と、前
記一方の辺から第n出力ポートまでの距離とを等しくし
て、第n入出力ポートを配置することを特徴とする。An arithmetic unit according to the present invention comprises:
A rectangular ALU assembly having an LU, wiring, and input / output ports, a bus, and an arbiter connected to an end of the bus for permitting control of signal output to the bus; Placed on top of one of the ALU structures A
Connect the LU unit to the external input unit and connect the other ALU
A flow graph code is connected as a signal for connecting a knitted structure to an external output unit, connecting all the ALU knitted structures via the bus, and hardening a program for setting up the connection relationship and the sharing of individual functions from the external input unit. A logical operation circuit for a specific use is formed on the board by using the ALU organization storing the individual functions according to the flow graph code and the arbiter. The n-th side of the opposite side of the ALU knitted body
Providing an input port, providing an n-th output port on the other side,
The distance from the other side to the n-th input port is equal to the distance from the one side to the n-th output port, and the n-th input / output port is arranged.
【0005】上記のように構成したので、演算装置に実
行させる処理に応じて個別機能の分担と接続関係の設定
(セットアップ)のプログラムをハード化する手段とし
てのフローグラフコードを外部入力部から入力すれば、
各ALU編成体は、そのフローグラフコードに応じた自
己の演算処理内容を記憶保持する。この状態で、各AL
U編成体は個別の機能を持った演算素子となり、この装
置は、フローグラフコードに応じた処理専用の演算装置
として、設定、即ちセットアップされる。そこで、次
に、外部入力部から所定のデータが入力すると、命令ア
クセス無しで、各ALU編成体が設定された個別機能に
従って演算処理を実行する。また、ALU編成体の各辺
上の入出力ポートの位置関係を上記のように設定したの
で、同じ構成のALU編成体を基板上に行列状に配置す
るだけで、隣接するALU編成体の第n入力ポートと、
第n出力ポートとが必然的に接続し、この入出力ポート
によって、隣接するALU編成体は、直接接続される。
よって、ALU編成体間の接続のために、入出力ポート
の位置を調整する必要が無く、同じ構成のALU編成体
を全ての位置に配置することができるので、経済的であ
る。また、行列状に整然と配置することで、装置全体を
小型化することも容易になる。なお、ここでいう同じ構
成とは、対称図形となるものも含む。[0005] With the above configuration, a flow graph code is input from an external input unit as a means for hardening a program for setting individual functions and connecting relations (setup) according to processing to be executed by the arithmetic unit. if,
Each ALU organization stores and holds its own arithmetic processing content according to its flow graph code. In this state, each AL
The U knitted body becomes an arithmetic element having individual functions, and this device is set, that is, set up as an arithmetic device dedicated to processing according to the flow graph code. Then, next, when predetermined data is input from the external input unit, each ALU organization executes an arithmetic process according to the set individual function without command access. In addition, since the positional relationship between the input / output ports on each side of the ALU assembly is set as described above, the ALU assembly having the same configuration is simply arranged in a matrix on the board, and the ALU assembly of the adjacent ALU assembly can be used. n input ports;
The nth output port is inevitably connected, and the input / output port directly connects the adjacent ALU organization.
Therefore, there is no need to adjust the positions of the input / output ports for connection between the ALU assemblies, and the ALU assemblies having the same configuration can be arranged at all positions, which is economical. Further, by arranging the devices in a matrix, it is easy to reduce the size of the entire device. Note that the same configuration here includes that which becomes a symmetrical figure.
【0006】[0006]
【発明の実施の形態】次に、図面を参照して、本発明の
実施例を説明する。図1は、本発明の第1実施例のブロ
ック図、図2は、アービタ接続部分の拡大図である。図
3と図4は、それぞれ、図1のALU編成体4のブロッ
ク図および、入出力ポートの配置説明図である。図1〜
図6に示した第1実施例は、基板1上に、1つのALU
aijを主要素にしたALU編成体4をN×Nの行列に配
列している(ただし、i,jは、1≦i,j≦Nなる整
数)。これによって、N2個のALUaijを基板1上に
配列できる。そして、ALUa11を外部入力部2と接続
し、ALUaN1は外部出力部3と接続している。図3に
示すようにALU編成体4の各ALUaijには、それぞ
れ論理設定記憶素子bijがチャネル9により接続され、
左右、上下に隣合うALUは、入出力用の一対の隣接配
線5及び6を介して互いに接続されている。Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram of a first embodiment of the present invention, and FIG. 2 is an enlarged view of an arbiter connection portion. FIG. 3 and FIG. 4 are a block diagram of the ALU knitted structure 4 of FIG. 1 and an arrangement explanatory view of input / output ports, respectively. Figure 1
In the first embodiment shown in FIG.
The ALU organization 4 having a ij as a main element is arranged in an N × N matrix (where i and j are integers satisfying 1 ≦ i, j ≦ N). Thus, N 2 ALU a ij can be arranged on the substrate 1. The ALUa 11 is connected to the external input unit 2, and the ALUa N1 is connected to the external output unit 3. As shown in FIG. 3, a logic setting storage element b ij is connected to each ALU a ij of the ALU organization 4 by a channel 9.
ALUs adjacent to each other on the left, right, up and down are connected to each other via a pair of adjacent wirings 5 and 6 for input and output.
【0007】またALUの行列間にはバスxi,yjを設
け、各ALUaijは、最も近いバスxi,yjに、入出力
用の一対のバス接続チャネル7及び8を介して接続して
いる。上記のようにALU編成体4は、ALUaijと、
論理設定記憶素子bijと、左右のALUai(j-1),a
i(j+1)に接続するための一対の隣接配線5と、上下に位
置するALUa(i-1)j,a(i+1)jに接続するための一対
の隣接配線6と、バスxi,yjと、このバスxi,yjに
ALUaijを接続するチャネル7,8と、論理設定記憶
素子bijを左右隣の論理設定記憶素子bi(j-1),b
i(j+1)と接続するチャネル10と、論理設定記憶素子b
ijとALUaijとを接続するチャネル9とからなる。な
お、図1〜図3で、各々1本線で示されたバスxi,yj
は、両方向の信号の伝送路として用いるものである。Buses x i , y j are provided between the ALU matrices, and each ALU a ij is connected to the nearest bus x i , y j via a pair of input / output bus connection channels 7 and 8. doing. As described above, the ALU organization 4 includes ALUa ij and
The logic setting storage element b ij and the left and right ALU a i (j−1) , a
a pair of adjacent wirings 5 for connecting to i (j + 1) , a pair of adjacent wirings 6 for connecting to ALUa (i-1) j , a (i + 1) j located above and below, and a bus x i , y j , channels 7, 8 connecting ALU a ij to these buses x i , y j , and logical setting storage elements b ij are connected to the left and right adjacent logical setting storage elements bi (j−1) , b
channel 10 connected to i (j + 1), and logical setting storage element b
ij and a channel 9 connecting ALUa ij . In FIGS. 1-3, each bus x i indicated by a single line, y j
Are used as transmission paths for signals in both directions.
【0008】そして、ALU編成体4の各辺上に位置す
る入出力ポートをI,Oで表すこととする。例えば、隣
接配線5の入力ポートを5I、出力ポートを5Oとし、バ
スxiの入出力ポートをxIOとする。これら入出力ポー
トは、図4に示すように配置されている。左の辺には、
上辺から距離m1の位置にチャネル10の入力ポート1
0I、距離m2の位置に隣接配線5の出力ポート5O、距
離m3には入力ポート5I、距離m4には、バスxNの入出
力ポートxIOが設けられ、対辺には、やはり、上辺か
ら、距離m1,m2,m3,m4の位置に、それぞれ、チャ
ネル10の出力ポート10Oと、隣接配線5の入力ポー
ト5Iと、、出力ポート5Oと、バスxNの入出力ポート
xIOとが設けられている。また上辺と底辺には、左辺か
らの距離s1の位置にそれぞれ、チャネル6の出、入力
ポート6O,6Iが、s2の位置にそれぞれ、入,出力ポ
ート6I,6Oが、また、s3の位置には、バスynの入出
力ポートyIOが設けられている。The input / output ports located on each side of the ALU knitted body 4 are represented by I and O. For example, the input port of the adjacent wiring 5 is 5 I , the output port is 5 O, and the input / output port of the bus x i is x IO . These input / output ports are arranged as shown in FIG. On the left side,
Input port 1 of channel 10 at a distance m 1 from the upper side
0 I, an output port 5 O positions in adjacent wire 5 of the distance m 2, the distance m 3 input ports 5 I, the distance m 4, provided input and output ports x IO bus x N, the opposite side is Again, at the positions of distances m 1 , m 2 , m 3 , and m 4 from the upper side, respectively, the output port 10 O of the channel 10, the input port 5 I of the adjacent wiring 5, the output port 5 O , input and output ports x IO bus x N is provided. On the top and bottom sides, the output and input ports 6 O and 6 I of the channel 6 are located at a distance s 1 from the left side, and the input and output ports 6 I and 6 O are located at a position s 2 , respectively. also, the position of s 3 is provided with input and output ports y IO bus y n.
【0009】このALU編成体4を行列状に配列する
と、図1に示すように、隣接配線及び各チャネルが必然
的に接続される。全ての論理設定記憶素子bijを直列に
接続するために、左右両側に、編成体4の外部配線1
1、12を設けている。この外部配線11、12によっ
て、両端に位置する論理設定記憶素子bij、例えば、b
1Nとb2N、b21とb31等を接続することができる。ただ
し、論理設定記憶素子b21〜b2Nのチャネル10の信号
の向きは、図3と逆方向になるので、図3,図4に示す
ALU編成体4を左右対称に構成したものを用いる。論
理設定記憶素子b4j,b6j…の場合も同様である。ま
た、バスx0は、縦方向の2本のバスを接続するために
設定したバスで、ALUは接続されていない。ALUa
ij行列間に設けるバスxi,yjとは、ALUaij行列の
隣に設けたバスxi,yjのことで、バスx0や、xN,y
Nのように、行列の外側に設けたものも含む。横方向に
設けたバスx0〜xNと、縦方向のバスy1〜yNのそれぞ
れの一端には、ALUからバスへの出力許可のタイミン
グを制御するアービタ13,14が接続されている。When the ALU assemblies 4 are arranged in a matrix, adjacent wirings and respective channels are inevitably connected as shown in FIG. In order to connect all the logic setting storage elements b ij in series, the external wiring 1
1 and 12 are provided. With these external wirings 11 and 12, logic setting storage elements b ij located at both ends, for example, b
1N and b 2N , b 21 and b 31 can be connected. However, the orientation of the signal of the channel 10 of the logic setting storage element b 21 ~b 2N, because in the opposite direction to FIG. 3, FIG. 3, used as configured symmetrically to ALU knitting 4 shown in FIG. The same applies to the case of the logic setting storage elements b 4j , b 6j . The bus x 0 is a bath set to connect two buses in the vertical direction, ALU is not connected. ALUa
bus x i provided between ij matrix, and y j, by bus x i, y j provided next to ALUA ij matrix, and bus x 0, x N, y
Also includes those provided outside the matrix, such as N. A bus x 0 ~x N provided laterally to the respective end of the longitudinal direction of the bus y 1 ~y N, arbiter 13 and 14 to control the timing of the output permission from the ALU to the bus is connected .
【0010】図2に示すように、アービタ14はメモリ
18を備えていて、外部入力部2から入力されるティー
チングスケジュールを記憶することができる。このティ
ーチングスケジュールとは、アービタが定められたAL
Uに定められた順序で出力許可を与えるためのデータで
ある。なお、アービタ13も同様のメモリ17を備えて
いる。また、縦方向のバスy1〜yNとバスx0との間に
は、スイッチS1〜SNが接続されていて、縦横のバスの
接続を切換えるようにしている。このスイッチS1〜SN
は、バスx0に接続したアービタ13aのタイミングに連
動してスイッチングを行うものである。例えば、隣り合
わないALUa31から、ALUa23への信号を伝送する
場合には、両ALUをバスを介して接続しなければなら
ない。先ず、バスy1に接続したアービタ14aの出力
許可により、ALUa31は、信号をバスy1に出力す
る。バスx0に接続したアービタ13aの制御により、
スイッチS1が閉じ、バスy1とバスx0が接続し、S3が
閉じ、バスx0とバスy3がが接続する。これにより、信
号は、バスy1→バスx0→バスy3を介してALUa23
に入力される。As shown in FIG. 2, the arbiter 14 has a memory 18 and can store a teaching schedule input from the external input unit 2. This teaching schedule is an AL with an arbiter
This is data for giving output permission in the order determined for U. The arbiter 13 has a similar memory 17. Between the longitudinal direction of the bus y 1 ~y N and bus x 0, optionally switches S 1 to S N are connected, and to switch the connection of the horizontal and vertical buses. These switches S 1 to S N
Is configured to perform switching in synchronization with the timing of the arbiter 13 a connected to the bus x 0. For example, when transmitting signals from non-adjacent ALUa 31 to ALUa 23 , both ALUs must be connected via a bus. First, the output permission of the arbiter 14a connected to the bus y 1, ALUA 31 outputs a signal to the bus y 1. Under the control of the arbiter 13a connected to the bus x0,
Closes switch S 1, the connected bus y 1 and the bus x 0, closes S 3, bus x 0 and bus y 3 is to connect. As a result, the signal is transferred to the ALUa 23 via the bus y 1 → the bus x 0 → the bus y 3.
Is input to
【0011】次に、この第1実施例の作用を説明する。
先ず、各ALU編成体4のALUaijの個別機能を分担
させるためのフローグラフコードである機能分担コード
を、外部入力部2から論理設定記憶素子bijに入力す
る。このとき、外部入力部2からの機能分担コードは、
チャネル10から論理設定記憶素子bijに入力される。
論理設定記憶素子bijは、チャネル10および外部配線
11、12によって、論理設定記憶素子b11→b12→、
…、→b1N→配線11→論理設定記憶素子b2N→、…、
→bN1というように、直列に接続されている。そこで、
外部入力部2から論理設定記憶素子b11にフローグラフ
コードによって入力された機能分担コードは、チャネル
10により論理設定記憶素子b12、論理設定記憶素子b
13…と、順送りすることができる。これにより、機能分
担コードは、N2番目の論理設定記憶素子bN1から逆に
入力され、最後に論理設定記憶素子b11に入力される。
これで、機能分担コードの入力は終了し、各機能分担コ
ードを受けた論理設定記憶素子bijは、入力されたコー
ド内容を記憶すると共に、当該ALUaijに個別機能を
設定する。この個別機能とは、各ALUaijの演算機能
だけでなく、他のALUとの接続の切換え機能も含むも
のである。Next, the operation of the first embodiment will be described.
First, a function sharing code which is a flow graph code for sharing the individual functions of the ALU a ij of each ALU organization 4 is input from the external input unit 2 to the logic setting storage element b ij . At this time, the function sharing code from the external input unit 2 is:
The data is input from the channel 10 to the logic setting storage element bij .
The logic setting storage element b ij is connected to the logic setting storage element b 11 → b 12 →, by the channel 10 and the external wires 11 and 12 .
..., → b 1N → wiring 11 → logic setting storage element b 2N →, ...,
→ b N1 connected in series. Therefore,
The function sharing code input by the flow graph code from the external input unit 2 to the logic setting storage element b 11 is transmitted to the logic setting storage element b 12 and the logic setting storage element b by the channel 10.
13 … and so on. As a result, the function sharing code is inversely input from the N 2 -th logical setting storage element b N1 and finally input to the logical setting storage element b 11 .
This completes the input of the function assignment code, and the logic setting storage element b ij that has received each function assignment code stores the input code content and sets an individual function in the ALU a ij . This individual function includes not only the operation function of each ALUa ij but also the function of switching connections with other ALUs.
【0012】外部入力部2からは、上記機能分担コード
とは別に、アービタ13,14のメモリ18にスイッチ
Sの切換タイミングであるティーチングスケジュールが
入力される。アービタ13とアービタ14は、1本の配
線16で直列に接続されているので、ティーチングスケ
ジュールも外部入力部2に直接接続されたアービタ14
aから順送りで入力することができる。このようにし
て、ALUaijの個別機能の設定と、ティーチングジュ
ールの入力が終了すると、この演算装置の論理回路が構
成され、特定用途のための論理回路として、セットアッ
プが終了する。つまり、特定用途のフローグラフコード
のハード化が完了する。なお、装置の用途を変更する際
には、外部入力部2より、論理設定記憶素子bij及び、
アービタ13,14に、その用途に応じたフローグラフ
コードを入力し、再セットアップを行えば良い。この状
態で、入力部として設定されたALUa11にデータを入
力すれば、設定された論理回路に従って、データは他の
ALUaijに送られ、演算処理されることを繰り返し、
最後に、出力部の機能を設定されたALUaN1から外部
出力部3に出力する。A teaching schedule, which is a switching timing of the switch S, is input from the external input unit 2 to the memory 18 of the arbiters 13 and 14 separately from the function sharing code. Since the arbiter 13 and the arbiter 14 are connected in series by one wire 16, the teaching schedule is also set to the arbiter 14 directly connected to the external input unit 2.
Input can be made sequentially from a. When the setting of the individual functions of the ALU ij and the input of the teaching module are completed in this way, the logic circuit of the arithmetic unit is formed, and the setup is completed as a logic circuit for a specific application. That is, the hardware of the flow graph code for a specific use is completed. When the purpose of the device is changed, the logical setting storage elements b ij and
What is necessary is just to input a flow graph code corresponding to the intended use to the arbiters 13 and 14, and to perform a re-setup. In this state, if data is input to the ALUa 11 set as the input unit, the data is sent to another ALUa ij according to the set logic circuit, and is repeatedly processed.
Finally, the function of the output unit is output from the set ALUa N1 to the external output unit 3.
【0013】ALUaijに入力され、処理されたデータ
のうち、隣り合うALUには、チャネル5,6を介して
伝送され、それ以外のALUには、バスxi,yjを介し
て送られる。各バスxi,yjには、複数のALUが接続
されている。例えば、バスx1には、上側からALUa
11〜a1Nが接続している。つまり、1本のバスに、N個
のALUが接続している。これらのALUが同時にバス
x1への信号を出力しないようにアービタ13bが調整
する。このアービタ13bは、バスx1に接続している
ALUに出力許可を与えるタイミングをティーチングス
ケジュールとしてメモリ18に記憶しているので、その
スケジュールに従って、出力許可を与えれば良い。アー
ビタとしては、このメモリ18を持たないものでもかま
わない。ただし、その場合には、アービタ13bは、常
にバスx1に接続している全てのALUを監視している
必要があるので、極めて高い周波数で動作するアービタ
が必要となる。[0013] Of the data input to and processed by the ALU a ij , the data is transmitted to adjacent ALUs via the channels 5 and 6, and to the other ALUs via the buses x i and y j. . A plurality of ALUs are connected to each bus x i , y j . For example, the bus x 1, ALUA from above
11 ~a 1N is connected. That is, N ALUs are connected to one bus. These ALU arbiter 13b so as not to output a signal to the bus x 1 is adjusted at the same time. The arbiter 13b is so stored in the memory 18 of the timing for providing an output permission to the ALU connected to the bus x 1 as teaching schedule, according to the schedule, may be given the output permission. The arbiter may not have this memory 18. However, in that case, the arbiter 13b is always so needs to monitor all of the ALU connected to the bus x 1, it is necessary arbiter to operate at very high frequencies.
【0014】このような演算装置は、それ自体をセット
アップすれば、必要な演算処理を行う用途が特定された
専用演算装置となり、従来装置のようになメモリへのア
クセスが不要となる。従来例と同じ計算結果を得る際に
も、命令アクセスが不要となるので、1個の出力を得る
ための処理ステップ数が半減する。本実施例の装置で
は、各処理を行うために、各ALUaijが個別機能を設
定されているので、複数の出力を得る場合には、各ステ
ップを同時に行うことができる。例えば、累算を行う場
合の処理状況を示したのが、図6である。図6に示すよ
うに、この実施例によれば、入力→結果入力→加算→結
果記憶→結果出力を1ステップずらして同時並行的に実
施できる。5個の結果出力を得るためには、従来装置で
は、50ステップ必要であったが、本発明では9ステッ
プで足りる。従って、演算時間が大幅に短縮されるとい
う効果がある。そして、処理が複雑になりステップ数が
多くなるほど、その差は大きくなる。If such an arithmetic device is set up by itself, it becomes a special-purpose arithmetic device for which the purpose of performing necessary arithmetic processing is specified, and the access to the memory unlike the conventional device is unnecessary. Even when obtaining the same calculation result as in the conventional example, instruction access is not required, so that the number of processing steps for obtaining one output is reduced by half. In the apparatus of the present embodiment, since each ALU ij is set with an individual function in order to perform each processing, when obtaining a plurality of outputs, each step can be performed simultaneously. For example, FIG. 6 shows the processing status when performing accumulation. As shown in FIG. 6, according to this embodiment, input → result input → addition → result storage → result output can be performed simultaneously by shifting one step. In order to obtain five result outputs, 50 steps were required in the conventional apparatus, but 9 steps are sufficient in the present invention. Therefore, there is an effect that the operation time is greatly reduced. Then, as the processing becomes more complicated and the number of steps increases, the difference increases.
【0015】このような高速演算処理が可能な論理演算
回路を構成するALU編成体4を図3,図4に示す構成
にしたので、行または列によって対称のものを用いて、
基板上に単に行列状に配置すれば、隣接するALU編成
体の第n入力ポートと、第n出力ポートとが必然的に接
続する。この入出力ポートによって、隣接するALU編
成体は、直接接続され、バスも連続する。全ての位置
に、同様に構成されたALU編成体4を配置することが
できる。このため、1個のALU編成体4を開発すれ
ば、N2個のALU編成体4を開発したことになり、経
済的である。また、行列状に整然と配置することで、装
置全体を小型化することも容易になる。特に、1個のA
LU編成体4の面積を縮小できれば、全体として、N2
倍縮小できたことになるので、装置の価格にも大きく影
響する。例えば、論理演算回路の面積を20%縮小でき
れば価格は、半分以下になるのが現状である。なお、本
実施例では、論理設定記憶素子bijを全て直列に接続し
て、入力するコードを順送りにするように構成したが、
各論理設定記憶素子bijに対応するコードを直接入力す
るようにしてもかまわない。ただし、個別に入力する場
合には、入力ポート数が、N2個必要となる。The ALU knitting body 4 constituting the logical operation circuit capable of performing such high-speed operation processing is configured as shown in FIGS. 3 and 4.
If they are simply arranged in a matrix on the board, the n-th input port and the n-th output port of the adjacent ALU are inevitably connected. With this input / output port, adjacent ALU units are directly connected, and the bus is continuous. The ALU knitted body 4 configured in the same manner can be arranged at all positions. Therefore, when developing a single ALU knitting 4, it will be developed the N 2 pieces of ALU knitting 4, which is economical. Further, by arranging the devices in a matrix, it is easy to reduce the size of the entire device. In particular, one A
If the area of the LU knitted body 4 can be reduced, N 2
Since it can be reduced twice, it greatly affects the price of the device. For example, if the area of the logical operation circuit can be reduced by 20%, the price is currently reduced to less than half. In the present embodiment, the logic setting storage elements b ij are all connected in series, and the input code is configured to be sequentially forwarded.
The code corresponding to each logic setting storage element b ij may be directly input. However, when inputting individually, N 2 input ports are required.
【0016】図5に示した第2実施例は、第1行の論理
設定記憶素子b11を外部入力部2に直接接続し、第2行
以下の論理設定記憶素子b21〜bN1は、切り替えスイッ
チ17を介して外部入力部2に接続している。上記のよ
うにした切り替えスイッチ17は、外部入力部2からの
出力信号に応じて、開閉するものである。すなわち、外
部入力部2は、例えば、第1行の論理設定記憶素子a11
〜a1Nへのコード入力が終了するまで、切り替えスイッ
チ17を開いた状態に維持する。そして、第1行のコー
ド入力が終了したら、第2行の論理設定記憶素子b21に
接続した切り替えスイッチ17を閉じるように、外部入
力部2が指令を出す。このようにして、各行に接続した
切り替えスイッチ17を順に閉じていくことによって、
各行の論理設定記憶素子に所定の分担コードを入力す
る。A second embodiment shown in FIG. 5, the first row of the logic setting the memory element b 11 directly connected to the external input unit 2, logical setting storage element b 21 ~b N1 follows the second row, It is connected to the external input unit 2 via the changeover switch 17. The changeover switch 17 as described above opens and closes according to an output signal from the external input unit 2. That is, the external input unit 2 is, for example, the logic setting storage element a 11 in the first row.
~a to code input to 1N is completed, Maintain an open switch 17. Then, when the code input of the first row is completed, so as to close the switch 17 connected to the logic setting storage element b 21 of the second row, the external input section 2 issues a command. In this way, by sequentially closing the changeover switches 17 connected to each row,
A predetermined sharing code is input to the logic setting storage element of each row.
【0017】このようにした第2実施例の場合には、各
論理設定記憶素子の信号の流れ方向が同じになる。した
がって、第1実施例のように、ALU編成体4を左右対
称に構成しなくてもよい。なお、上記第2実施例では、
切り替えスイッチ17を外部入力部2からの制御信号で
開閉させるようにしたが、この切り替えスイッチ17に
カウント機能を持たせれば、外部入力部2からの制御信
号が不要になる。つまり、切り替えスイッチ17が、各
行の論理設定記憶素子の数をコード入力順にカウント
し、所定のその行における論理設定記憶素子と同数の数
をカウントしたら、次の行の切り替えスイッチを閉じる
信号を出力すればよい。In the case of the second embodiment, the signal flow direction of each logic setting storage element is the same. Therefore, the ALU knitted body 4 does not have to be symmetrical as in the first embodiment. In the second embodiment,
The changeover switch 17 is opened and closed by a control signal from the external input unit 2. However, if the changeover switch 17 is provided with a counting function, the control signal from the external input unit 2 becomes unnecessary. In other words, when the changeover switch 17 counts the number of logic setting storage elements in each row in the order of code input and counts the same number as the predetermined number of logic setting storage elements in that row, it outputs a signal to close the changeover switch in the next row. do it.
【0018】[0018]
【発明の効果】この発明の演算装置によれば、プログラ
ムの処理中に、それを処理するための命令アクセスの必
要がないので、それだけ演算速度が速くなる。また、結
果出力を繰り返し得る場合には、ステップをずらして並
行して処理することができるので、さらに、高速処理が
可能となった。このような装置を、同一パターンのAL
U編成体を配置することによって、実現でき、装置価格
や、開発コストが低減できる。According to the arithmetic unit of the present invention, during the processing of a program, there is no need to access an instruction for processing the program, so that the calculation speed is increased accordingly. In addition, when the result output can be repeated, the processing can be performed in parallel by shifting the steps, so that high-speed processing has become possible. Such a device is connected to the same pattern AL
By arranging the U knitted body, it can be realized, and the device cost and the development cost can be reduced.
【図1】本発明の第1実施例のブロック図である。FIG. 1 is a block diagram of a first embodiment of the present invention.
【図2】図1のアービタ接続部分の拡大図である。FIG. 2 is an enlarged view of an arbiter connection portion of FIG.
【図3】図1のALU編成体のブロック図である。FIG. 3 is a block diagram of the ALU knitted body of FIG. 1;
【図4】図1のALU編成体の入出力ポートの配置説明
図である。FIG. 4 is an explanatory diagram of an arrangement of input / output ports of the ALU knitted body of FIG. 1;
【図5】第2実施例のブロック図である。FIG. 5 is a block diagram of a second embodiment.
【図6】第1実施例の累算処理状況を説明するために示
した図である。FIG. 6 is a diagram illustrating an accumulation processing state according to the first embodiment;
【図7】従来例の累算処理状況を説明するために示した
図である。FIG. 7 is a diagram shown to explain an accumulation processing state in a conventional example.
1 基板 2 外部入力部 3 外部出力部 5,6 隣接配線 13,14 アービタ xi,yj バス aij ALU bij 論理設定記憶素子 5I,6I,10I 入力ポート 5O,6O,10O 出力ポート xIO,yIO 入出力ポート1 substrate 2 external input unit 3 external output unit 5, 6 adjacent lines 13 and 14 the arbiter x i, y j bus a ij ALU b ij logic setting storage element 5 I, 6 I, 10 I input port 5 O, 6 O, 10 O output port x IO , y IO input / output port
Claims (1)
直方形のALU編成体と、バスと、前記バスの端部に接
続しバスへの信号出力許可制御をするアービタとを備
え、前記ALU編成体を基板上に配置し、ALU編成体
のうちのひとつのALU編成体を外部入力部に接続し、
他のひとつのALU編成体を外部出力部に接続し、前記
バスを介して全ての前記ALU編成体を接続し、外部入
力部から個別機能の分担と接続関係をセットアップする
プログラムをハード化する信号としてフローグラフコー
ドを入力し、このフローグラフコードに応じた前記個別
機能を記憶した前記各ALU編成体と、前記アービタと
を用いて、特定用途のための論理演算回路を前記基板上
に編成するとともに、前記ALU編成体の対辺の一方の
辺に第n入力ポートを設け、他方の辺に第n出力ポート
を設け、その他の一方の辺から第n入力ポートまでの距
離と、前記一方の辺から第n出力ポートまでの距離とを
等しくして、第n入出力ポートを配置することを特徴と
する演算装置。1. A rectangular ALU assembly comprising an ALU, wiring, and input / output ports, a bus, and an arbiter connected to an end of the bus for permitting control of signal output to the bus. The ALU knitted body is placed on the board, and one of the ALU knitted bodies is connected to the external input unit,
A signal for connecting another ALU unit to an external output unit, connecting all the ALU units via the bus, and hardening a program for setting up the sharing of the individual functions and the connection relationship from the external input unit. A logic operation circuit for a specific use is formed on the board by using the ALU assembly storing the individual functions according to the flow graph code and the arbiter. In addition, the n-th input port is provided on one side of the opposite side of the ALU knitted body, the n-th output port is provided on the other side, the distance from the other one side to the n-th input port, and the one side An n-th input / output port, wherein the distance from the first to the n-th output port is equal.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8055486A JP2791762B2 (en) | 1996-02-19 | 1996-02-19 | Arithmetic unit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8055486A JP2791762B2 (en) | 1996-02-19 | 1996-02-19 | Arithmetic unit |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH09222990A JPH09222990A (en) | 1997-08-26 |
| JP2791762B2 true JP2791762B2 (en) | 1998-08-27 |
Family
ID=12999964
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8055486A Expired - Lifetime JP2791762B2 (en) | 1996-02-19 | 1996-02-19 | Arithmetic unit |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2791762B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006053687A (en) * | 2004-08-10 | 2006-02-23 | Sony Corp | Arithmetic unit |
-
1996
- 1996-02-19 JP JP8055486A patent/JP2791762B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH09222990A (en) | 1997-08-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7272691B2 (en) | Interconnect switch assembly with input and output ports switch coupling to processor or memory pair and to neighbor ports coupling to adjacent pairs switch assemblies | |
| US7523292B2 (en) | Array-type processor having state control units controlling a plurality of processor elements arranged in a matrix | |
| US7185174B2 (en) | Switch complex selectively coupling input and output of a node in two-dimensional array to four ports and using four switches coupling among ports | |
| JPS62208158A (en) | Multiprocessor system | |
| JPH06290157A (en) | Net | |
| US7769980B2 (en) | Parallel operation device allowing efficient parallel operational processing | |
| JPH073838B2 (en) | Semiconductor integrated circuit | |
| JP3987784B2 (en) | Array type processor | |
| JP3987782B2 (en) | Array type processor | |
| JP2791762B2 (en) | Arithmetic unit | |
| JPH04295953A (en) | Parallel data processor with built-in two-dimensional array of element processor and sub-array unit of element processor | |
| JP2791764B2 (en) | Arithmetic unit | |
| JP2791761B2 (en) | Arithmetic unit | |
| JPH09223011A (en) | Arithmetic unit | |
| US5572198A (en) | Method and apparatus for routing in reduced switch matrices to provide one hundred percent coverage | |
| US4972324A (en) | Semiconductor integrated circuit with an improved macro cell pattern | |
| JP2791763B2 (en) | Arithmetic unit | |
| US20080134126A1 (en) | Data processing in digital systems | |
| US20070220236A1 (en) | Reconfigurable computing device | |
| JPH08297652A (en) | Array processor | |
| KR20250177392A (en) | Electronic device for performing depth-wise convolution, processing element for the same, and method for performing depth-wise convolution | |
| JPH10283331A (en) | Arithmetic unit | |
| JPH0553898A (en) | Function memory | |
| GB2443439A (en) | Digital electronic binary rotator and reverser | |
| JPH03172956A (en) | semiconductor equipment |