JPS61250728A - Function module - Google Patents

Function module

Info

Publication number
JPS61250728A
JPS61250728A JP60091991A JP9199185A JPS61250728A JP S61250728 A JPS61250728 A JP S61250728A JP 60091991 A JP60091991 A JP 60091991A JP 9199185 A JP9199185 A JP 9199185A JP S61250728 A JPS61250728 A JP S61250728A
Authority
JP
Japan
Prior art keywords
data
function module
output
unit function
circuit
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
JP60091991A
Other languages
Japanese (ja)
Inventor
Akio Oba
章男 大場
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP60091991A priority Critical patent/JPS61250728A/en
Publication of JPS61250728A publication Critical patent/JPS61250728A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve the general-purpose application and processing efficiency by coupling freely between unit function modules and a unit function module and a common bus with a microprogram. CONSTITUTION:Plural two-way common buses (data buses) A, B,...N are provided, a data select circuit 2 is provided to the input port of the function module (unit function module) 1 such as ALU or register and a data distribution circuit 3 is provided at the output port side. The microprogram controls the data select circuit 2 and the data distribution circuit 3 so as to connect the input/ output data of the unit function module 1 to any of plural two-way common buses A, B,...N.

Description

【発明の詳細な説明】 以下の順序で本発明を説明する。[Detailed description of the invention] The present invention will be explained in the following order.

A 産業上の利用分野 B 発明の概要 C従来の技術 D 発明が解決しようとする問題点 E 問題点を解決するための手段(第1図)F 作用 G 実施例 G、基本機能モジュールの説明(第1図、第2図) G、基本機能モジュールの具体例(第3図、第。A. Industrial application field B. Summary of the invention C Conventional technology D. Problem that the invention aims to solve E. Means to solve the problem (Figure 1) F. Effect G Example G. Explanation of basic function modules (Figures 1 and 2) G. Specific example of basic functional module (Fig. 3, fig.

4図) G3単位機能モジュールとしてALUを使用した場合の
説明(第5図) G41i位機能モジュールとして乗算器を使用した場合
の説明(第6図) G5基本機能モジュールを使用してプロセッサを構成す
る場合の構成及び動作の説明(第7図、第8図) G6従来のプロセッサの構成及びその動作説明(第9図
、第10図) G7基本機能モジュールをさらに拡張したプロセッサの
説明(第11図) H発明の効果 A 産業上の利用分野 この発明は画像処理などの信号処理プロセッサやデータ
フロー計算機等のマイクロプログラム制御のプロセッサ
に通用して好適な機能モジュールに関する。
(Figure 4) Explanation when ALU is used as a G3 unit function module (Figure 5) Explanation when a multiplier is used as a G41i function module (Figure 6) Configuring a processor using G5 basic function modules (Figures 7 and 8) Explanation of the configuration and operation of the conventional G6 processor (Figures 9 and 10) Explanation of the processor that further expands the G7 basic function module (Figure 11) ) Effects of the Invention A: Industrial Application Field The present invention relates to a functional module suitable for use in signal processing processors such as image processing and microprogram-controlled processors such as data flow computers.

B 発明の概要 この発明は画像処理などの信号処理プロセッサやデータ
フロー計算機等のマイクロプログラム制御のプロセッサ
に通用して好適な機能モジュールに関し、特に複数の双
方向性共通バス(データバス)をもち、単位機能モジュ
ールの入力ボート側にデータセレクト回路を、出力ポー
ト側にデータ分配回路を設け、マイクロプログラムによ
ってデータセレクト回路及びデータ分配回路を制御する
ことによって、単位機能モジュールの入出力データを複
数の双方向性共通バスのいずれにも自由に′接続できる
ようにしたもので、これによって機能モジュール間の結
合関係の自由度を増加させて、プロセッサのアーキテク
チャ−の対称性を良くし、命令セットに最適化した場合
の機能モジュール間の特異性(特殊性)を排除し、プロ
セッサのデータ処理効率を向上させたものである。
B. Summary of the Invention The present invention relates to a functional module suitable for use in signal processing processors such as image processing and microprogram controlled processors such as data flow computers, and in particular has a plurality of bidirectional common buses (data buses), By providing a data selection circuit on the input port side of the unit function module and a data distribution circuit on the output port side, and controlling the data selection circuit and data distribution circuit with a microprogram, the input and output data of the unit function module can be transferred to both sides. It can be freely connected to any of the directional common buses, which increases the degree of freedom in the connection relationship between functional modules, improves the symmetry of the processor architecture, and optimizes the instruction set. This eliminates the idiosyncrasies (specialities) between functional modules that would otherwise occur when a processor is integrated into a processor, thereby improving the data processing efficiency of the processor.

C従来の技術 例えば、画像処理用のプロセッサとしてマイクロプログ
ラム制御のプロセッサを使用する場合、プロセッサを構
成する演算、記憶などを行う機能モジュール(演算・論
理回路すなわちALU、レジスタ、乗算器など)間の結
合関係あるいは機能モジュールと内部バスとの結合関係
は固定されており、その結合構造はプロセッサが処理す
る命令セントの実行に適するように設計段階で固定され
ていた。それは、一般に使用頻度の高い命令セットに適
するように結合構造が設計されるからである。
C. Conventional technology For example, when using a microprogram-controlled processor as an image processing processor, there are The coupling relationship or the coupling relationship between the functional modules and the internal bus is fixed, and the coupling structure is fixed at the design stage so that it is suitable for the execution of instructions processed by the processor. This is because the coupling structure is generally designed to be suitable for frequently used instruction sets.

しかし、特定の命令セントに最適化されたアーキテクチ
ャ−はしばしば対称性に欠け、また各機能モジュール間
及び各機能モジュールと内部バスとの結合構造はプロセ
ッサ毎に異なり、特殊化しているため、ハードウェアに
密着したマイクロプログラムでは汎用言語が作成しにく
(、また結合構造の特殊化、非対称性のためにマイクロ
プログラムでは困難なものとなっていた。
However, architectures that are optimized for specific instructions often lack symmetry, and the coupling structure between each functional module and between each functional module and the internal bus is different and specialized for each processor, so the hardware It is difficult to create a general-purpose language using a microprogram that is closely related to the program (and it has become difficult to create a general-purpose language due to the specialization and asymmetry of the coupling structure).

プロセッサの汎用性を高めるため、従来では多様な拡張
命令に対応できるように、マイクロプログラムを自由に
書替えできるW CS (WritableContr
ol 5tore )の技術が用いられたり、特定の命
令セットを対象にしない汎用の[I HP (Univ
er−sal Ho5t Processor)が開発
されている・D 発明が解決しようとする問題点 しかし、このようなWC8技術やUHPの技術を用いて
も、これらを機能モジュールレベルでみた場合、機能モ
ジュール間の結合構造や機能モジュールと内部バスとの
結合構造は以前として固定であり、処理する命令に対し
必ずしも通していないために、アーキテクチャ−の対称
性が悪(、また特定命令セットを対象とするI S P
 (Instruc−tion Set Proces
sor)などに比べ処理効率が悪い欠点がある。
In order to increase the versatility of processors, WCS (Writable Control), which allows microprograms to be freely rewritten to support a variety of extended instructions, has traditionally been used.
ol 5tore) technology is used, or general-purpose [I HP (Univ
er-sal Ho5t Processor) has been developed.・D Problems to be Solved by the Invention However, even if such WC8 technology and UHP technology are used, when looking at them at the functional module level, there are problems between the functional modules. The coupling structure and the coupling structure between function modules and internal buses are still fixed and do not necessarily pass through to the instructions to be processed, resulting in poor architectural symmetry (and IS systems that target a specific instruction set). P
(Instruction Set Process
It has the disadvantage of lower processing efficiency than other methods such as ``SOR''.

そこで、この発明は機能モジュール間及び機能モジュー
ルと内部バスとの結合構造を固定することなく構成する
ことにより、アーキテクチャ−の対称性を改善し、併せ
てその処理効率を改善したものである。
Therefore, the present invention improves the symmetry of the architecture and improves the processing efficiency by configuring the coupling structure between functional modules and between the functional modules and the internal bus without fixing them.

E 問題点を解決するための手段 上述の問題点を解決するため、この発明では第1図に示
すように、複数の双方向性共通バス(データバス’)A
、B、・・・・・・Nをもち、ALU、レジスタなどの
機能モジュール(以下、単位機能モジュールという)1
の入力ボート側にデータセレクト回路2が、出力ポート
側にデータ分配回路3が設けられ、マイクロプログラム
によってデータセレクト回路2及びデータ分配回路3が
制御されて、単位機能モジュール1の入出力データが複
数の双方向性共通バスA、 B、・・・・・・のいずれ
にも接続できるようになされる。第1図のようにして構
成された最終的な機能モジュールを以下基本機能モジュ
ール10という。
E. Means for Solving the Problems In order to solve the above-mentioned problems, the present invention uses a plurality of bidirectional common buses (data buses') A as shown in FIG.
, B, ...N, and has functional modules such as ALU and registers (hereinafter referred to as unit functional module) 1
A data selection circuit 2 is provided on the input port side of the unit, and a data distribution circuit 3 is provided on the output port side.The data selection circuit 2 and the data distribution circuit 3 are controlled by a microprogram, and a plurality of input/output data of the unit function module 1 are provided. It is possible to connect to any of the bidirectional common buses A, B, . . . The final functional module configured as shown in FIG. 1 will be referred to as the basic functional module 10 hereinafter.

F 作用 単位機能モジュール1の入力、出力ポート側にデータセ
レクト回路2とデータ分配回路3とを設け、これらをマ
イクロプログラムで制御すれば、単位機能モジュール1
の入力ポート及び出力ポートは、複数の共通バスA、B
、・・・・・・のいずれとも接続することができる。そ
のため、第1図に示す構成の基本機能モジュールlを第
2図に示すように複数、共通バスA、B、  ・・・に
接続しても、それらに設けられたデータセレクト回路2
あるいはデータ分配回路3をマイク9プログラムによっ
て個々独立に制御することで、必要とする基本機能モジ
ュール10A、10B、・・・・・・を双方向的に結合
することができる。
F If a data selection circuit 2 and a data distribution circuit 3 are provided on the input and output port sides of the action unit function module 1, and these are controlled by a microprogram, the unit function module 1
The input ports and output ports of
,... can be connected to any of them. Therefore, even if a plurality of basic function modules l having the configuration shown in FIG. 1 are connected to the common buses A, B, etc. as shown in FIG.
Alternatively, by individually controlling the data distribution circuit 3 using the microphone 9 program, the required basic function modules 10A, 10B, . . . can be bidirectionally coupled.

これによってアーキテクチャ−の対称性が得られ、その
処理効率も向上する。
This provides architectural symmetry and improves its processing efficiency.

G 実施例 01 基本機能モジュールの説明 第1図以下を参照して、この発明に係る機能モジュール
(基本機能モジュール)10を詳細に説明する。
G Example 01 Description of Basic Functional Module The functional module (basic functional module) 10 according to the present invention will be described in detail with reference to FIG. 1 and the following.

第1図はこの発明に係る基本機能モジュール10の概要
を説明するための図であって、単位機能モジュール1と
しては上述したような、ALU、 レジスタ、乗算器な
どを指す。単位機能モジュール1の入力ボート側にはデ
ータセレクト回路2が設けられて双方向性の共通バス(
データバス)に接続され、またその出力ポート側にはデ
ータ分配回路3が設けられて複数の共通バスA、  B
、・・・・・・に接続される。
FIG. 1 is a diagram for explaining the outline of a basic functional module 10 according to the present invention, and the unit functional module 1 refers to the above-mentioned ALU, register, multiplier, etc. A data selection circuit 2 is provided on the input port side of the unit function module 1, and a bidirectional common bus (
data bus), and a data distribution circuit 3 is provided on the output port side to connect to a plurality of common buses A and B.
,... is connected to.

データセレクト回路2及びデータ分配回路3は夫々マイ
クロプログラムによってデータの選択及びデータの分配
が制御される。すなわちこのデータセレクト回路2をこ
れに供給されるマイクロプログラムで制御することによ
って、単位機能モジュール1の入力ポートは複数存在す
る共通バスA。
The data selection circuit 2 and the data distribution circuit 3 each have data selection and data distribution controlled by a microprogram. That is, by controlling this data select circuit 2 with a microprogram supplied thereto, the input ports of the unit function module 1 are connected to a common bus A, which has a plurality of input ports.

B、・・・・・・のいずれのバスにも接続されて、選択
されたデータが単位機能モジュール1に供給される。
It is connected to any of the buses B, . . . , and the selected data is supplied to the unit function module 1.

同様に、単位機能モジュール1の出力ポートに得られる
データは、データ分配回路3に供給されるマイクロプロ
グラムによる制御によって共通バスA、B、・・・・・
・のいずれのバスにも接続されることになるから、これ
によって出力データをいずれの共通バスにも転送するこ
とができる。
Similarly, data obtained at the output ports of the unit function module 1 is transferred to the common buses A, B, etc. under the control of a microprogram supplied to the data distribution circuit 3.
・This allows output data to be transferred to any common bus.

第2図は第1図に示す基本機能モジュールlOを複数使
用して所望とするプロセッサ5を構成する場合の結合関
係を示す図であって、複数の基本機能モジュールIOA
、IOB、・・・・・・IONは複数、例えば4本の共
通バスA−Dに、図のように並列的に接続される。
FIG. 2 is a diagram showing a connection relationship when a desired processor 5 is configured by using a plurality of basic function modules IO shown in FIG.
, IOB, .

基本機能モジュールIOA〜IONの夫々には第1図に
示したようなデータセレクト回路2及びデータ分配回路
3が設けられているので、それらをマイクロプログラム
によって制御することにより、複数の基本機能モジュー
ルIOA〜ION間でのデータの授受を、共通バスA−
Dを介してデータ転送の方向性を問うことなく実行する
ことができる。
Each of the basic function modules IOA to ION is provided with a data selection circuit 2 and a data distribution circuit 3 as shown in FIG. -Transfer and receive data between IONs via common bus A-
Data transfer can be performed without worrying about the direction of data transfer via D.

02基本機能モジュールの具体例 さて、第1図に示した基本機能モジュール10の具体的
な構成の一例を第3図に示す。ただし、この例では説明
の便宜上、共通バスとしては3本使用した場合である。
02 Specific Example of Basic Function Module Now, FIG. 3 shows an example of a specific configuration of the basic function module 10 shown in FIG. 1. However, in this example, for convenience of explanation, three common buses are used.

A−Cバスは夫々I10ボートとして機能するバッファ
回1iS11A〜IICを介してデータセレクト回路2
及びデータ分配回路3に接続される。
The A-C buses are connected to the data select circuit 2 via buffer circuits 1iS11A to IIC each functioning as an I10 port.
and is connected to the data distribution circuit 3.

バッファ回路11Aは入力ポートとして機能するmlの
バッファ12Aと、出方ボートとして機能する第2のバ
ッファ13Aとを有し、第2のバッファ13Aは3ステ
ートバツフアが使用される。
The buffer circuit 11A has a ml buffer 12A that functions as an input port and a second buffer 13A that functions as an output port, and a 3-state buffer is used as the second buffer 13A.

他のバッファ回路11B、IICも同様に構成される。The other buffer circuits 11B and IIC are similarly configured.

第1のバッファ12A〜12Cを経た各バスのデータは
データセレクト回路2を構成する3個のバッファ15A
〜15Cに供給される。これらバッファ15A〜15C
はいずれも3ステートバツフアが使用される。バッファ
15A〜15Cの出力状態は、端子16に供給される選
択信号(2ピントデータ)をデコーダ17でデコードし
た信号に基づいて制御される。選択信号はマイクロプロ
ダラムで制御される。
The data on each bus that has passed through the first buffers 12A to 12C is transferred to the three buffers 15A that constitute the data select circuit 2.
~15C. These buffers 15A to 15C
In both cases, a 3-state buffer is used. The output states of the buffers 15A to 15C are controlled based on a signal obtained by decoding a selection signal (2-pin data) supplied to a terminal 16 by a decoder 17. The selection signal is controlled by a microprogram.

バッファ15A〜15Cで選択されたG1ずれかのデー
タは単位機能モジュール1の入力ポートに供給される。
The data of G1 selected by the buffers 15A to 15C is supplied to the input port of the unit function module 1.

単位機能モジュール1より出力されたデータはその出力
ポートを介してデータ分配回路3に供給される。すなわ
ち、出力データはデータ分配回路3を構成するラッチ回
路18で一旦うフチされると共に、所定のタイミングに
出力されるラッチデータは3個のバッファ19A〜19
Cに共通に供給される。複数のバッファ19A〜19C
はいずれも3ステートバツフアが使用され、端子20を
介してこれらに供給される出力選択信号によって、その
うちの1または2以上のバッファが能動状態に制御され
て第2のバッファ13A〜13cに供給される。
Data output from the unit function module 1 is supplied to the data distribution circuit 3 via its output port. That is, the output data is once bordered by the latch circuit 18 that constitutes the data distribution circuit 3, and the latch data output at a predetermined timing is sent to the three buffers 19A to 19.
Commonly supplied to C. Multiple buffers 19A to 19C
In each case, three-state buffers are used, and one or more of the buffers is controlled to be active by an output selection signal supplied to them via the terminal 20, and the output is supplied to the second buffers 13A to 13c. be done.

単位機能モジュール1の出力データは必要に応じてデー
タ分配回路2に設けられた第4のバッファ21を経て単
位機能モジュール1の入力ポートに供給される。
The output data of the unit function module 1 is supplied to the input port of the unit function module 1 via the fourth buffer 21 provided in the data distribution circuit 2 as required.

ランチ回路18及びデータセレクト回路2に設けられた
バッファ21は夫々マイクロプログラムによってその出
力状態が制御される。
The output states of the buffers 21 provided in the launch circuit 18 and the data select circuit 2 are each controlled by a microprogram.

ここで、第2のバッファ13A〜13Gは第2図に示し
たように、共通バスに対して複数の基本機能モジュール
10が結合されているとき、必要な基本機能モジュール
を選択して、その基本機能モジュールからの出力データ
を必要なバスに転送するための制御用バッファとして機
能する。また、データ分配回路3に設けられたバッファ
19A〜19Cは、データ分配回路3が単位機能モジュ
ール1に対して複数設けられているときの分配回路その
もののデータ出力を制御するためのものである。
Here, as shown in FIG. 2, when a plurality of basic function modules 10 are connected to a common bus, the second buffers 13A to 13G select a necessary basic function module and Functions as a control buffer to transfer output data from functional modules to the required bus. Further, the buffers 19A to 19C provided in the data distribution circuit 3 are for controlling the data output of the distribution circuit itself when a plurality of data distribution circuits 3 are provided for the unit function module 1.

例えば、第4図に示すように単位機能モジュール1とし
て2人力、2出力タイプのものを使用するときには、夫
々の入力ポートに夫々データセレクト回路2A、2Bが
接続され、またその出力ポート側には夫々データ分配回
路3A、3Bが接続される。そして、第1のバッファ1
2A〜12Cの各データがデータセレクト回路2A、2
Bに並列的に供給され、データ分配回路3A、3Bの出
力データは第2のバッファ13A〜13Cに並列的に供
給される。
For example, when a two-man power, two-output type unit function module 1 is used as shown in FIG. Data distribution circuits 3A and 3B are connected respectively. and the first buffer 1
Each data of 2A to 12C is sent to data select circuits 2A and 2.
The output data of the data distribution circuits 3A and 3B are supplied in parallel to the second buffers 13A to 13C.

このように基本機能モジュール10を構成した場合には
、第2図に示すように基本機能モジュール間を選択する
と共に、データ分配回路3A、3Bのいずれかの出力デ
ータを選択する必要があるから、上述のように第2のバ
ッファ13A−13Cとデータ分配のためのバッファ1
9A〜19Cを直列的に設ける必要があるからである。
When the basic function module 10 is configured in this way, it is necessary to select between the basic function modules as shown in FIG. 2 and to select the output data of either the data distribution circuits 3A or 3B. As described above, the second buffers 13A-13C and the buffer 1 for data distribution
This is because it is necessary to provide 9A to 19C in series.

0B単位機能モジュールとしてALUを使用した場合の
説明 第5図はこの発明をALUに適用した場合の一例を示す
構成図であって、従・って単位機能モジュール1として
はALUが使用される。
Description of the case where ALU is used as the 0B unit function module FIG. 5 is a block diagram showing an example of the case where the present invention is applied to an ALU. Therefore, the ALU is used as the unit function module 1.

第1のバッファ12A〜12Cを介して得た共通バスA
−Cからのデータは第1及び第2のデータセレクト回路
2A、2Bに供給され、夫々で選択された入力データは
単位機能モジュールとしてのALUIAに供給され、そ
の演算結果が得られる出力データはレジスタ23を介し
てデータセレクト回路2A、2Bに転送されると共に、
ラッチ回路24を経て第2のバッファ13A〜13Cに
供給される。
Common bus A obtained via first buffers 12A to 12C
-C is supplied to the first and second data select circuits 2A and 2B, the input data selected by each is supplied to ALUIA as a unit function module, and the output data from which the operation result is obtained is stored in the register. 23 to the data select circuits 2A and 2B, and
The signal is supplied to the second buffers 13A to 13C via the latch circuit 24.

この構成ではALUIAの出力ポート側にデータ分配回
路3が設けられていないが、これはALUIAが1出力
タイプであり、そのためデータ分配回路3は第2のバッ
ファ13A〜13Cで代用することができるからである
。従って、第2のバッファ13A〜13Cがデータ分配
回路3として機能する。
In this configuration, the data distribution circuit 3 is not provided on the output port side of the ALUIA, but this is because the ALUIA is a one-output type, so the data distribution circuit 3 can be replaced with the second buffers 13A to 13C. It is. Therefore, the second buffers 13A to 13C function as the data distribution circuit 3.

G4単位機能モジュールとして乗算器を使用した場合の
説明 第6図はこの発明を乗算器に適用した場合であって、単
位機能モジュールとしての乗算器IBは2人力、2出力
タイプである。そのため、図示のように乗算器IBの入
力ポート側に一対のデータセレクト回路2A、2Bが、
出力ボート側に一対のデータ分配回路3A、3Bが夫々
設けられる。
Explanation of the case where a multiplier is used as a G4 unit function module FIG. 6 shows a case where the present invention is applied to a multiplier, and the multiplier IB as a unit function module is a two-manpower, two-output type. Therefore, as shown in the figure, a pair of data select circuits 2A and 2B are provided on the input port side of the multiplier IB.
A pair of data distribution circuits 3A and 3B are provided on the output port side, respectively.

データ分配回路3Aは乗算出力データのうち上位ビット
(16ビツトデータであるときにはその上位8ビツト)
を取扱い、他のデータ分配回路3Bは下位ビット(同様
に、下位8ビツト)を取り扱う。
The data distribution circuit 3A outputs the upper bits of the multiplication output data (in the case of 16-bit data, the upper 8 bits).
The other data distribution circuit 3B handles the lower bits (similarly, the lower 8 bits).

単位機能モジュールとして2ボ一トRAMを使用すると
きの基本機能モジュール10の構成は乗算器を用いる場
合と同様であるので、その説明は省略する。
The configuration of the basic function module 10 when a two-bottom RAM is used as a unit function module is the same as that when a multiplier is used, so a description thereof will be omitted.

05基本機能モジュールを使用してプロセッサを構成す
る場合の構成及び動作の説明 第7図は基本機能モジュール10として、ALU10A
1乗算器10B及びレジスタIOCを使用してマイクロ
プログラム制御のプロセッサ5を構成した場合の一例で
あり、このプロセッサ5を使用して、例えば乗算処理を
実行するには次のようになる。第8図はその処理ステッ
プをデータバス毎に分解して図示したタイミングチャー
トである。
05 Explanation of the configuration and operation when configuring a processor using basic function modules FIG.
This is an example in which a microprogram-controlled processor 5 is configured using a multiplier 10B and a register IOC, and the following is how to use this processor 5 to perform, for example, a multiplication process. FIG. 8 is a timing chart showing the processing steps broken down into data buses.

説明の都合上、 X2+Y2+22 の演算処理について説明する。処理の前提としてこれら
データx、y、zはいずれもレジスタ10Cにストアさ
れているものとする。
For convenience of explanation, the calculation process of X2+Y2+22 will be explained. As a premise of the processing, it is assumed that these data x, y, and z are all stored in the register 10C.

まず、基本機能モジュール10C内に設けられたレジス
タICより読み出されたデータXはAバスを経て乗算器
IBのデータセレクト回路2A。
First, data X read from the register IC provided in the basic function module 10C is sent to the data select circuit 2A of the multiplier IB via the A bus.

2B(第6図)に供給され(ステップ1)、これらがい
ずれも動作状態に制御されて、夫々のデータX、Xが乗
算器IBにて演算される(ステップ2)。ステップ2で
はレジスタICからAバスにデータYが転送され、ステ
ップ3でデータYが乗算器IBに転送されて、Y2の乗
算処理が実行される。このステップ3で乗算器IBで演
算されたX2の乗算データが基本機能モジュールIOB
内のデータ分配回路3A、3Bを経てCバスに転送され
ると共に、転送された乗算データX2が基本機能モジュ
ールIOAのデータセレクト回路2Aに供給される。こ
のステップ3ではさらにレジスタICからデータZがA
バスに転送され、これが乗算器IBに供給される。
2B (FIG. 6) (step 1), both of them are controlled to be in an operating state, and the respective data X and X are calculated by the multiplier IB (step 2). In step 2, data Y is transferred from the register IC to the A bus, and in step 3, data Y is transferred to the multiplier IB, and multiplication processing of Y2 is executed. The multiplication data of X2 calculated by multiplier IB in this step 3 is stored in basic function module IOB.
The multiplication data X2 is transferred to the C bus via the data distribution circuits 3A and 3B in the basic function module IOA, and the transferred multiplication data X2 is supplied to the data selection circuit 2A of the basic function module IOA. In step 3, data Z is further transferred from register IC to A.
The signal is transferred to the bus and fed to the multiplier IB.

ステップ4では乗算出力であるY2がBバスにを経て基
本機能モジュールIOAにおける他方のデータセレクト
回路2Bに供給されて、両データX2とY2とがALU
IAにおいて加算処理される。加算出力X2+Y2は第
5図に示すレジスタ23を介して一方のデータセレクト
回路2Aに供給されると共に、Bバスに転送された乗算
出力Z2は基本機能モジュールIOAにおける他方のデ
ータセレクト回路2Bに供給されることによって、ステ
ップ5において、ALUIAでは、X 2 + Y 2
 + 22 の最終加算処理が実行され、その出力がCバスに転送さ
れて、例えばプロセッサ5に設けられた外部の主記憶メ
モリにストアされる。
In step 4, the multiplication output Y2 is supplied to the other data select circuit 2B in the basic function module IOA via the B bus, and both data X2 and Y2 are sent to the ALU.
Addition processing is performed in IA. The addition output X2+Y2 is supplied to one data selection circuit 2A via the register 23 shown in FIG. 5, and the multiplication output Z2 transferred to the B bus is supplied to the other data selection circuit 2B in the basic function module IOA. By doing so, in step 5, in ALUIA, X 2 + Y 2
A final addition process of +22 is executed, and its output is transferred to the C bus and stored in an external main memory provided in the processor 5, for example.

G6従来のプロセッサの構成及びその動作説明このよう
な演算処理を従来のプロセッサで行う場合には次のよう
になる。
G6 Configuration of conventional processor and explanation of its operation When such arithmetic processing is performed by a conventional processor, the process is as follows.

第9図は従来のプロセッサの回路構成を示し、ALUI
A、乗算器IB及びレジスタICは図示するように結合
され、データバスとしてはA−Dの4本のバスが必要に
なる。それは、これら複数の単位機能モジュール1は対
称性がないからである。
Figure 9 shows the circuit configuration of a conventional processor, with ALUI
A, multiplier IB, and register IC are connected as shown in the figure, and four buses A to D are required as data buses. This is because these plurality of unit function modules 1 have no symmetry.

さて、第10図に示す演算処理のタイミングチャートを
使用してその処理動作について簡単に説明する。
Now, the processing operation will be briefly explained using the timing chart of the arithmetic processing shown in FIG.

まず、ステップ1でレジスタICからバスB。First, in step 1, from the register IC to bus B.

Cを経て乗算器IBにデータX、Xが転送されて、乗算
処理が実行されると共に、その乗算出力X2がDバスを
通じてレジスタICに供給される(ステップ2)。同じ
ステップ2でレジスタICからB、Cバスを利用してデ
ータY、Yが乗算器IBに転送される。ステップ3では
同様にデータY。
The data X and X are transferred to the multiplier IB via C and multiplication processing is executed, and the multiplication output X2 is supplied to the register IC via the D bus (step 2). In the same step 2, data Y and Y are transferred from register IC to multiplier IB using B and C buses. Similarly, in step 3, data Y.

Yの乗算処理が実行されてその乗算出力Y2がDバスを
経てレジスタICに取り込まれる。このとき、乗算器l
BにはレジスタlCからデータZ。
Multiplication processing of Y is executed and the multiplication output Y2 is taken into the register IC via the D bus. At this time, the multiplier l
B has data Z from register IC.

Zが取り込まれる。Z is imported.

ステップ4ではデータZの乗算処理が実行されると同時
に、レジスタICにストアされた乗算出力X2 、Y2
が13. (、ハスを経てALUIAに転送されて、ス
テップ5でその加算処理が実行される。この加算結果は
Aバスを経てレジスタICに入力する(ステップ6)。
In step 4, the multiplication process of data Z is executed, and at the same time, the multiplication outputs X2 and Y2 stored in the register IC are
13. , and is transferred to the ALUIA via the bus A, and the addition process is executed in step 5. The addition result is input to the register IC via the A bus (step 6).

ステップ6ではレジスタICにストアされた乗算出力Z
2及び加算出力(X2+Y2 )がB、Cバスを経てA
LUIAに転送され、これがステップ7で加算処理され
て、目的の演算処理すなわち、 X 2 + Y 2+ 22 の演算処理が終了する。
In step 6, the multiplication output Z stored in the register IC
2 and addition output (X2+Y2) are sent to A via B and C buses.
This is transferred to the LUIA and subjected to addition processing in step 7, thereby completing the target arithmetic processing, that is, the arithmetic processing of X 2 + Y 2+ 22 .

このように、単位機能モジュール間及び単位機能モジュ
ールとデータバスとの間を固定した第9図に示す従来の
プロセッサ5の構成と、この発明のように単位機能モジ
ュール間及び単位機能モジュールとデータバスとの間の
接続をマイクロプログラムによって自由に選択できる第
7図に示すプロセッサ5の構成とでは、上述したような
簡単な演算処理でも、その演算処理時間を短縮できるこ
とが容易に理解できる。
In this way, the configuration of the conventional processor 5 shown in FIG. 9 in which the connections between unit function modules and between the unit function modules and the data bus are fixed, and the configuration of the conventional processor 5 shown in FIG. It is easy to understand that with the configuration of the processor 5 shown in FIG. 7, in which the connections between the two can be freely selected by a microprogram, the calculation processing time can be shortened even with the simple calculation processing described above.

G77本機能モジエールをさらに拡張したプロセッサの
説明 第11図はこの発明を階層バス構造のプロセッサ5に通
用した場合の一例を示す。
Description of a processor in which the G77 functional module is further expanded FIG. 11 shows an example in which the present invention is applied to a processor 5 having a hierarchical bus structure.

この場合、複数の基本機能モジュール10A。In this case, a plurality of basic functional modules 10A.

10B、・・・・・・を1セツトとしてさらに機能モジ
ュール化される。このような機能モジュールを複合機能
モジュール40という。ここで、複合機能モジュール4
0内のデータ転送用のバス(図では3本)a、b、cを
サブ共通バスとし、複数の複合機能モジュール40A、
40B、・旧・・を相互に結合する外部バス(同様に3
本)をメイン共通バスA、B、Cと言えば、メイン共通
バスA、B、Cとサブ共通バスa、b、cとは双方向性
のバッファ42A〜42Cによって相互に連結される。
10B, . . . are further made into functional modules as one set. Such a functional module is called a multifunctional module 40. Here, the multifunction module 4
The data transfer buses (three in the figure) a, b, and c in 0 are sub-common buses, and multiple multifunction modules 40A,
40B, old...
The main common buses A, B, and C and the sub common buses a, b, and c are interconnected by bidirectional buffers 42A to 42C.

この構成においても、マイクロプログラムによって基本
機能モジュール1間及び複合機能モジュール40間を自
由に結合することができる。
Even in this configuration, the basic function modules 1 and the multifunction modules 40 can be freely connected by a microprogram.

〔発明の効果〕〔Effect of the invention〕

以上説明したようにこの発明によれば、単位機能モジュ
ール間及び単位機能モジュールと共通バスとをマイクロ
プログラムによって自由に結合することができるので、
従来に比べ少なくとも、次のような特徴を有する。
As explained above, according to the present invention, unit function modules and unit function modules and a common bus can be freely connected by a microprogram.
It has at least the following features compared to the conventional one.

第1に、上述のように相互の結合関係を複数の共通バス
を介することで、マイクロプログラムにより自由に変更
することができるから、構成するプロセッサのアーキテ
クチャ−の対称性がよくなり、命令セットに最適化した
場合の特殊性(特異性)が少なくなり、汎用性と処理効
率を向上させることができる。
First, as mentioned above, mutual coupling relationships can be changed freely by microprograms via multiple common buses, which improves the symmetry of the architecture of the constituent processors and improves the instruction set. In the case of optimization, special characteristics (specificity) are reduced, and versatility and processing efficiency can be improved.

第2に、上述したような種々の結合関係をマイクロプロ
グラムで自由に変更できることから、必要な機能モジュ
ールの数と種類及び共通バスの数を決めるだけで、プロ
セッサを構成することができる。
Second, since the various coupling relationships described above can be freely changed using a microprogram, a processor can be configured simply by determining the number and type of required functional modules and the number of common buses.

そのため、プロセッサの設計が容易で、アーキテクチャ
−の対称性及び特異性が改善され、またマイクロプログ
ラムが作成し易く、汎用プログラム言語が作り易い。
Therefore, the design of the processor is easy, the symmetry and specificity of the architecture are improved, and it is also easy to create microprograms and general-purpose programming languages.

第3に、複数の共通バスを通して機能モジュール間の自
由な結合構造を設定できるから、機能モジュール間の通
信効率が良く、多様なパイプライン処理ができ、倍長デ
ータも効率よく取り扱える。
Thirdly, since a free connection structure between functional modules can be set through a plurality of common buses, communication efficiency between functional modules is high, various pipeline processing is possible, and double-length data can be handled efficiently.

第4に、共通バス数と機能モジュール数を増加すること
で、性能が向上し、超LSI化が可能である。
Fourth, by increasing the number of common buses and the number of functional modules, performance is improved and VLSI implementation is possible.

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

第1図はこの発明の概念的構成を示す図、第2図はその
拡張構成を示す図、第3図及び第4図は夫々この発明の
具体例を示す構成図、第5図は単位機能モジュールとし
てALUを、第6図は乗算器を使用した場合の一例を示
す基本機能モジュールの構成図、第7図は基本機能モジ
ュールを使用したプロセッサの一例を示す構成図、第8
図はその演算処理のタイミングチャートを示す図、第9
図は第7図の構成を従来の機能モジュールで構成する場
合の一例を示す図、第10図はそのタイミングチャート
を示す図、第11図は第7図の構成をさらに拡張した場
合の一例を示す図である。 1  (IA、IB、・・・・・・)は単位機能モジュ
ール、2  (2A、2B)はデータセレクト回路、3
 (3A。 3B)はデータ分配回路、10  (IOA、IOB。 ・・・・・・)は基本機能モジュール、A、B、C・・
・・・・、a、b、c、 ・−・・・は共通バス、II
A−11Cはバッファ回路、5はプロセッサである。 阜信横り屹モジβ−ルtLτ京1器Ilし基本#に舷モ
ジt−ル 第6図
Figure 1 is a diagram showing the conceptual configuration of this invention, Figure 2 is a diagram showing its extended configuration, Figures 3 and 4 are configuration diagrams each showing a specific example of this invention, and Figure 5 is a unit function. FIG. 6 is a configuration diagram of a basic function module showing an example of using an ALU as a module and a multiplier. FIG. 7 is a configuration diagram of an example of a processor using the basic function module.
The figure shows the timing chart of the calculation process.
The figure shows an example of a case where the configuration of FIG. 7 is configured with conventional functional modules, FIG. 10 shows a timing chart thereof, and FIG. 11 shows an example of a case where the configuration of FIG. 7 is further expanded. FIG. 1 (IA, IB, ...) are unit function modules, 2 (2A, 2B) are data selection circuits, 3
(3A, 3B) are data distribution circuits, 10 (IOA, IOB. ...) are basic function modules, A, B, C...
..., a, b, c, ... are common buses, II
A-11C is a buffer circuit, and 5 is a processor. Figure 6

Claims (1)

【特許請求の範囲】[Claims] 複数の双方向性共通バスをもち、単位機能モジュールの
入力ポート側にデータセレクト回路が、出力ポート側に
データ分配回路が設けられ、マイクロプログラムによっ
て上記データセレクト回路及びデータ分配回路が制御さ
れて、上記単位機能モジュールの入出データが上記複数
の双方向性共通バスのいずれにも接続できるようになさ
れた機能モジュール。
It has a plurality of bidirectional common buses, a data selection circuit is provided on the input port side of the unit function module, and a data distribution circuit is provided on the output port side, and the data selection circuit and data distribution circuit are controlled by a microprogram, A functional module configured such that input/output data of the unit functional module can be connected to any of the plurality of bidirectional common buses.
JP60091991A 1985-04-29 1985-04-29 Function module Pending JPS61250728A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60091991A JPS61250728A (en) 1985-04-29 1985-04-29 Function module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60091991A JPS61250728A (en) 1985-04-29 1985-04-29 Function module

Publications (1)

Publication Number Publication Date
JPS61250728A true JPS61250728A (en) 1986-11-07

Family

ID=14041913

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60091991A Pending JPS61250728A (en) 1985-04-29 1985-04-29 Function module

Country Status (1)

Country Link
JP (1) JPS61250728A (en)

Similar Documents

Publication Publication Date Title
JP2852808B2 (en) Array processor
EP0539595A1 (en) Data processor and data processing method
JPH0675986A (en) Large scale parallel computing system device
JPH0546593B2 (en)
JPH11212786A (en) Data path for register base data processing and method
JPS5894035A (en) Data processing system
JPH04352230A (en) Computing element and microprocessor
JPS61250728A (en) Function module
US20050289328A1 (en) Reconfigurable processor and semiconductor device
JP3144859B2 (en) Arithmetic logic unit
JP2717850B2 (en) Parallel computer with high-speed communication mechanism
Srini et al. Parallel DSP with memory and I/O processors
JPH05324694A (en) Reconstitutable parallel processor
JP3091441B2 (en) Data processing device
JP2504535B2 (en) Bus unit configuration method
JPS63197217A (en) Data processor
US20050108438A1 (en) Heterogeneous synergetic computing system
KR970007262B1 (en) Risc structure for data processing
JPH0668055A (en) Digital signal processor
JPH0683618A (en) Flag control circuit
CN114911742A (en) Interconnect structure, processing system and data transmission method
JPH08101822A (en) One-chip parallel computers with high-speed communication mechanism
JP2003330914A (en) Vector calculation processing device, vector calculation method and vector calculation program
JPH0126108B2 (en)
JPH03280151A (en) Io access circuit to be added to dsp