JP2000112881A - High-speed arithmetic unit - Google Patents

High-speed arithmetic unit

Info

Publication number
JP2000112881A
JP2000112881A JP10277102A JP27710298A JP2000112881A JP 2000112881 A JP2000112881 A JP 2000112881A JP 10277102 A JP10277102 A JP 10277102A JP 27710298 A JP27710298 A JP 27710298A JP 2000112881 A JP2000112881 A JP 2000112881A
Authority
JP
Japan
Prior art keywords
control unit
input
memory
data
output
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
JP10277102A
Other languages
Japanese (ja)
Inventor
Keiichi Kaneko
敬一 金子
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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan 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 Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP10277102A priority Critical patent/JP2000112881A/en
Publication of JP2000112881A publication Critical patent/JP2000112881A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a high-speed arithmetic unit capable of simultaneously executing the storage of input data and the reading of a stored operation result during the arithmetic operation of an operation part and accessing devices in a wide range with a simple constitution by individually applying the storage of input data, the storage of an operation result of input data and the reading of the stored operation result at least to three shared memories or multi-port memories. SOLUTION: One of shared memories 1-1 to 1-3 cyclicly executes a 1st stage for storing input data by connecting the shared memory itself to an input control part 4, a 2nd stage for performing an arithmetic operation and storing the operation result by connecting itself to an operation part 3 and a 3rd stage for outputting the operation result by connecting itself to an output control part 5. Since the other shared memories cyclicly execute the 1st to 3rd stages temporally shifted states, three shared memories are driven on respectively different stages at the same time. The operation part 3 instructs the cyclic connection switching to the bus connection control part 2.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は高速演算装置に係
り、特にディジタル信号に対し所定の演算処理を高速に
行う、通信プロトコルプロセッサ等に適用して好適な高
速演算装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a high-speed operation device, and more particularly to a high-speed operation device suitable for application to a communication protocol processor or the like for performing a predetermined operation on digital signals at a high speed.

【0002】[0002]

【従来の技術】入力データに対し、所定のディジタル信
号処理(例えば、フィルタリング等)を施した後出力す
る一連の装置として知られている通信プロトコルプロセ
ッサや汎用マイクロコンピュータなどは、演算部(中央
処理装置:以下、CPUと略記する)を中心に、シリア
ルポート、メモリ接続用ポート、タイマ、DMAC(ダ
イレクト・メモリ・アクセス・コントローラ)などを内
蔵している。かかる通信プロトコルプロセッサや汎用マ
イクロコンピュータでは、演算処理の高速化が望まれて
いる。
2. Description of the Related Art A communication protocol processor and a general-purpose microcomputer, which are known as a series of devices that perform predetermined digital signal processing (for example, filtering) on input data and then output the processed data, include an arithmetic unit (central processing unit). Apparatus: A serial port, a memory connection port, a timer, a DMAC (direct memory access controller), and the like are built in, mainly a CPU (hereinafter abbreviated as CPU). In such communication protocol processors and general-purpose microcomputers, it is desired to increase the speed of arithmetic processing.

【0003】このような通信プロトコルプロセッサや汎
用マイクロコンピュータにおいて、外部からデータをメ
モリにDMA転送している場合、バスの使用権はDMA
Cにあり、CPUにはバスの使用権がないため、CPU
はメモリにアクセスすることができず、CPUによる通
信プロトコル処理等を行うことができない。しかし、こ
のことを利用して高速演算を実現する高速演算装置が開
示されている(特開平7−121500号公報)。
In such a communication protocol processor or general-purpose microcomputer, when data is externally DMA-transferred to a memory, the right to use the bus is set to DMA.
C, and the CPU has no right to use the bus.
Cannot access the memory, and cannot perform communication protocol processing or the like by the CPU. However, a high-speed operation device that realizes high-speed operation utilizing this fact has been disclosed (Japanese Patent Laid-Open No. 7-121500).

【0004】この従来の高速演算装置では、バススイッ
チ回路によりバスを分割することによって、CPUによ
るメモリアクセス経路とDMACによるDMAC転送制
御経路とを分離形成し、これによりCPUとDMACと
の並列動作を可能とすることで高速演算を行う。
In this conventional high-speed processing device, a bus is divided by a bus switch circuit, so that a memory access path by a CPU and a DMAC transfer control path by a DMAC are formed separately, whereby parallel operation of the CPU and the DMAC is performed. High-speed operation is performed by making it possible.

【0005】また、2本のシステムバスを備え、そのう
ちの一方のシステムバスにメモリを接続し、2本のシス
テムバス間でDMA転送させる高速演算装置も従来より
知られている(特開平5−307597号公報)。
[0005] A high-speed arithmetic unit having two system buses, a memory connected to one of the system buses, and a DMA transfer between the two system buses is also known (Japanese Patent Laid-Open No. 5-205). No. 307597).

【0006】[0006]

【発明が解決しようとする課題】しかるに、バススイッ
チ回路によりバスを分割してCPUとDMACとの並列
動作を可能とする前者の従来の高速演算装置では、並列
動作に限界があり、CPUがアクセスできるデバイスは
ランダム・アクセス・メモリ(RAM)及びリード・オ
ンリ・メモリ(ROM)に限定されるという問題があ
る。また、2本のシステムバスを備える後者の従来の高
速演算装置では、その用途が限定され、汎用性がない。
However, in the former conventional high-speed processing device in which the bus is divided by the bus switch circuit to enable the parallel operation of the CPU and the DMAC, the parallel operation has a limit, and the CPU has no access. There is a problem that the devices that can be used are limited to random access memory (RAM) and read only memory (ROM). Further, the latter conventional high-speed arithmetic device having two system buses has a limited use and is not versatile.

【0007】本発明は以上の点に鑑みなされたもので、
簡単な構成で広範なデバイスにアクセスできる高速演算
装置を提供することを目的とする。
[0007] The present invention has been made in view of the above points,
It is an object of the present invention to provide a high-speed arithmetic device that can access a wide range of devices with a simple configuration.

【0008】[0008]

【課題を解決するための手段】上記の目的を達成するた
め、本発明は個別に書き込み、読出しが可能なN個(N
は3以上の整数)に分割された共有メモリと、N個の共
有メモリと選択的にバス接続するバス接続制御部と、N
個の共有メモリのうちバス接続制御部を介して接続され
ている第1の共有メモリに、入力指示に従いデータを外
部から転送して格納する入力制御部と、N個の共有メモ
リのうちバス接続制御部を介して接続されている第2の
共有メモリから読み出したデータに対して所定の演算を
実行し、その演算結果を当該第2の共有メモリに書き込
むと共に、装置内の各部に指示を発する演算部と、N個
の共有メモリのうちバス接続制御部を介して接続されて
いる第3の共有メモリから、出力指示に従いデータを読
み出して外部へ転送する出力制御部とを有し、演算部
は、当該演算部に接続される第2の共有メモリをそれ以
前に入力制御部に接続された第1の共有メモリとし、出
力制御部に接続される第3の共有メモリをそれ以前に演
算部に接続された第2の共有メモリとし、入力制御部に
接続される第1の共有メモリをそれ以前に出力制御部に
接続された第3の共有メモリとするように、N個の共有
メモリの中から巡回的な切り替え接続をバス接続制御部
に対し指示すると共に、入力制御部に対し入力指示を発
し、出力制御部に対し出力指示を発する構成としたもの
である。
SUMMARY OF THE INVENTION In order to achieve the above object, the present invention provides N (N) which can be individually written and read.
Is an integer of 3 or more), a bus connection control unit that selectively connects the N shared memories with the bus,
An input control unit that externally transfers and stores data in accordance with an input instruction in a first shared memory connected via a bus connection control unit among the N shared memories; A predetermined operation is performed on the data read from the second shared memory connected via the control unit, the operation result is written into the second shared memory, and an instruction is issued to each unit in the apparatus. An arithmetic unit, and an output control unit that reads data from the third shared memory connected via the bus connection control unit among the N shared memories according to an output instruction and transfers the data to the outside; Sets the second shared memory connected to the operation unit to the first shared memory previously connected to the input control unit, and sets the third shared memory connected to the output control unit to the first shared memory The first connected to From among the N shared memories so that the first shared memory connected to the input control unit is the third shared memory previously connected to the output control unit. The connection is instructed to the bus connection control unit, an input instruction is issued to the input control unit, and an output instruction is issued to the output control unit.

【0009】本発明では、少なくとも3個の共有メモリ
に対して、入力データの格納、入力データの演算結果の
格納、格納された演算結果の読み出しを別々に行うこと
ができるため、演算部の演算動作中に入力データの格納
と格納された演算結果の読み出しを行うことができる。
According to the present invention, the storage of the input data, the storage of the operation result of the input data, and the reading of the stored operation result can be performed separately for at least three shared memories. During operation, input data can be stored and stored operation results can be read.

【0010】また、本発明は上記の目的を達成するた
め、演算部を、N個の共有メモリの中から一の共有メモ
リと入力制御部との接続をバス接続制御部に対し指示
し、かつ、入力指示を発してデータを外部から転送する
第1のステージと、当該一の共有メモリと当該演算部と
の接続をバス接続制御部に対し指示し当該一の共有メモ
リからのデータに対し所定の演算を実施し、その演算結
果を当該一の共有メモリに格納する第2のステージと、
当該一の共有メモリと出力制御部との接続をバス接続制
御部に対し指示すると共に、出力指示を発して当該一の
共有メモリに格納されている演算結果を外部へ転送する
第3のステージとを巡回的に実施し、一の共有メモリ以
外の共有メモリに対しても、同様に第1乃至第3のステ
ージを巡回的に実施するよう、かつ、同時刻には異なる
ステージを実行するよう制御するようにしたものであ
る。
In order to achieve the above object, the present invention instructs an arithmetic unit to connect a shared memory from N shared memories to an input control unit to a bus connection control unit, and A first stage that issues an input instruction and transfers data from the outside, and instructs a bus connection control unit to connect the one shared memory and the arithmetic unit to a predetermined stage for data from the one shared memory. A second stage of performing the operation of the above, and storing the operation result in the one shared memory;
A third stage for instructing the bus connection control unit to connect the one shared memory to the output control unit, issuing an output instruction, and transferring an operation result stored in the one shared memory to the outside; Is performed cyclically, and the first to third stages are similarly performed cyclically for shared memories other than one shared memory, and different stages are executed at the same time. It is something to do.

【0011】この発明では、N個の共有メモリのうち一
つの共有メモリに着目した場合、入力データ格納の第1
のステージと、演算及び演算結果の格納の第2のステー
ジと、演算結果の出力の第3のステージが巡回的に実施
され、かつ、他の共有メモリでは時間的にずれて上記の
第1乃至第3のステージが巡回的に実施されるため、同
時刻では3つの共有メモリのそれぞれが異なるステージ
で動作される。
According to the present invention, when attention is paid to one of the N shared memories, the first of the input data storage is stored.
, A second stage for storing the operation and the result of the operation, and a third stage for outputting the operation result are performed cyclically, and the other shared memories are shifted in time from the first to the above. Since the third stage is performed cyclically, each of the three shared memories is operated at a different stage at the same time.

【0012】また、上記の目的を達成するため、本発明
は、3以上の書き込み/読み出しポートを有するM個
(Mは3以上の整数)のマルチポートメモリと、それぞ
れ第1の書き込み/読み出しポートに接続されているM
個のマルチポートメモリのうち第1のマルチポートメモ
リに、入力指示に従いデータを外部から転送して格納す
る入力制御部と、それぞれ第2の書き込み/読み出しポ
ートに接続されているM個のマルチポートメモリのうち
第2のマルチポートメモリから読み出したデータに対し
て所定の演算を実行し、その演算結果を当該第2のマル
チポートメモリに書き込むと共に、装置内の各部に指示
を発する演算部と、それぞれ第3の書き込み/読み出し
ポートに接続されているM個のマルチポートメモリのう
ち第3のマルチポートメモリから、出力指示に従いデー
タを読み出して外部へ転送する出力制御部とを有し、演
算部は、当該演算部に接続される第2のマルチポートメ
モリをそれ以前に入力制御部に接続された第1のマルチ
ポートメモリとし、出力制御部に接続される第3のマル
チポートメモリをそれ以前に演算部に接続された第2の
マルチポートメモリとし、入力制御部に接続される第1
のマルチポートメモリをそれ以前に出力制御部に接続さ
れた第3のマルチポートメモリとするように、M個のマ
ルチポートメモリの巡回的な切り替え接続を行うと共
に、入力制御部に対し入力指示を発し、出力制御部に対
し出力指示を発する構成としたものである。
Further, in order to achieve the above object, the present invention provides an M (M is an integer of 3 or more) multiport memory having three or more write / read ports, and a first write / read port, respectively. M connected to
An input control unit for externally transferring and storing data in accordance with an input instruction in a first multi-port memory of the plurality of multi-port memories; and M multi-port memories respectively connected to a second write / read port An arithmetic unit that performs a predetermined operation on data read from the second multiport memory of the memory, writes the operation result in the second multiport memory, and issues an instruction to each unit in the device; An operation control unit for reading data from the third multiport memory among the M multiport memories connected to the third write / read port and transferring the data to the outside according to an output instruction; Sets the second multi-port memory connected to the arithmetic unit to the first multi-port memory previously connected to the input control unit. The third multi-port memory connected to the output control unit and the second multi-port memory connected to the arithmetic unit before that, first connected to the input control unit
In order to make the multi-port memory of the third multi-port memory the third multi-port memory previously connected to the output control unit, the M multi-port memories are cyclically switched and connected, and an input instruction is issued to the input control unit. And an output instruction to the output control unit.

【0013】この発明では、共有メモリではなくマルチ
ポートメモリを使用して入力データの格納、入力データ
の演算結果の格納、格納された演算結果の読み出しを別
々に行うことにより、演算部の演算動作中に入力データ
の格納と格納された演算結果の読み出しを行うことがで
きる。
According to the present invention, the multi-port memory is used instead of the shared memory to store the input data, store the operation result of the input data, and read out the stored operation result separately, so that the operation of the operation unit can be performed. It can store input data and read out the stored operation results.

【0014】また、本発明は上記の目的を達成するた
め、演算部を、入力制御部に入力指示を発してM個のマ
ルチポートメモリのうちの一のマルチポートメモリに対
しデータを外部から転送する第1のステージと、当該一
のマルチポートメモリからのデータに対し所定の演算を
実施し、その演算結果を当該一のマルチポートメモリに
格納する第2のステージと、出力制御部に出力指示を発
して当該一のマルチポートメモリに格納されている演算
結果を外部へ転送する第3のステージとを巡回的に実施
し、一のマルチポートメモリ以外のマルチポートメモリ
に対しても、同様に第1乃至第3のステージを巡回的に
実施するよう、かつ、同時刻には異なるステージを実行
するよう制御するようにしたものである。
According to the present invention, in order to achieve the above object, an arithmetic unit issues an input instruction to an input control unit and externally transfers data to one of the M multiport memories. A first stage to perform a predetermined operation on the data from the one multi-port memory, store the operation result in the one multi-port memory, and output an instruction to the output control unit. And the third stage of transferring the operation result stored in the one multi-port memory to the outside is carried out cyclically, and the same applies to the multi-port memories other than the one multi-port memory. The first to third stages are controlled cyclically, and at the same time, different stages are controlled to be executed.

【0015】この発明では、一つのマルチポートメモリ
に対して入力データ格納の第1のステージと、演算及び
演算結果の格納の第2のステージと、演算結果の出力の
第3のステージが巡回的に実施され、かつ、他のマルチ
ボートメモリでは時間的にずれて上記の第1乃至第3の
ステージが巡回的に実施されるため、同時刻では3つの
マルチポートメモリのそれぞれが異なるステージで動作
される。
According to the present invention, the first stage for storing input data, the second stage for storing operation and operation results, and the third stage for outputting operation results for one multiport memory are cyclic. In the other multi-port memories, the first to third stages are performed cyclically with a time lag, so that at the same time, each of the three multi-port memories operates at a different stage. Is done.

【0016】更に、本発明は、入力制御部と出力制御部
に代えて入出力制御部を用いてもよい。この発明は、入
力動作と出力動作を並列に実行できないが、入出力時間
に対する演算時間が比較的大きい場合は有効である。
Further, in the present invention, an input / output control unit may be used instead of the input control unit and the output control unit. The present invention cannot execute the input operation and the output operation in parallel, but is effective when the operation time for the input / output time is relatively long.

【0017】[0017]

【発明の実施の形態】次に、本発明の各実施の形態につ
いて図面と共に説明する。図1は本発明になる高速演算
装置の第1の実施の形態のブロック図を示す。同図にお
いて、共有メモリ1−1、1−2及び1−3はバス接続
制御部2にデータバス、アドレスバス等のバス11を介
して接続されており、バス接続制御部2は演算部3、入
力制御部4、出力制御部5とデータバス、アドレスバス
等のバス12を介して接続されている。共有メモリ1−
1、1−2及び1−3は、それぞれ一般的なRAMであ
り、書き込み/読み出し(R/W)制御信号やデータバ
ス、アドレスバス、その他(チップセレクトや書き込み
クロックなど)をそれぞれ独立に持っている(すなわ
ち、個別に書き込みと読み出しが可能である)。ここで
は共有メモリは3つに分割されているが、これに限定さ
れるものではない。
Next, embodiments of the present invention will be described with reference to the drawings. FIG. 1 shows a block diagram of a first embodiment of the high-speed operation device according to the present invention. In FIG. 1, shared memories 1-1, 1-2, and 1-3 are connected to a bus connection control unit 2 via a bus 11 such as a data bus and an address bus. , The input control unit 4 and the output control unit 5 via a bus 12 such as a data bus and an address bus. Shared memory 1-
Reference numerals 1, 1-2, and 1-3 denote general RAMs, each having a write / read (R / W) control signal, a data bus, an address bus, and the like (chip select, write clock, etc.) independently. (Ie, writing and reading can be performed separately). Here, the shared memory is divided into three, but the present invention is not limited to this.

【0018】演算部3はバス接続制御部2に対し、演算
部3、入力制御部4及び出力制御部5のそれぞれが共有
メモリ1−1、1−2及び1−3のどれに接続されるか
を指示する。バス接続制御部2はその指示に従い、例え
ば演算部3と共有メモリ1−1、入力制御部4と共有メ
モリ1−2、出力制御部5と共有メモリ1−3に対し、
所定の信号群をそれぞれ接続する。
The operation unit 3 is connected to the bus connection control unit 2, and the operation unit 3, the input control unit 4 and the output control unit 5 are connected to any of the shared memories 1-1, 1-2 and 1-3. To indicate. According to the instruction, the bus connection control unit 2 sends, for example, the arithmetic unit 3 and the shared memory 1-1, the input control unit 4 and the shared memory 1-2, the output control unit 5 and the shared memory 1-3.
A predetermined signal group is connected.

【0019】更に演算部3は、入力制御部4に対し入力
指示7を発し、出力制御部5に対し出力指示8を発する
とともに、接続されている共有メモリに対し所望の演算
を実施する。演算部3の行う演算やバス接続制御部2、
入力制御部4及び出力制御部5に指示を出す一連の動作
は、演算部3が有するローカルバス9を介して接続され
ているROM(またはRAM等)10に格納されている
プログラムに従ってなされる。
Further, the arithmetic unit 3 issues an input instruction 7 to the input control unit 4, issues an output instruction 8 to the output control unit 5, and performs a desired operation on the connected shared memory. Calculation performed by the calculation unit 3 and the bus connection control unit 2;
A series of operations for giving instructions to the input control unit 4 and the output control unit 5 are performed according to a program stored in a ROM (or RAM or the like) 10 connected via a local bus 9 included in the arithmetic unit 3.

【0020】なお、入力制御部4、出力制御部5は、D
MACの形態でもよく、例えば、入力指示については、
図示しない外部デバイスの転送元のアドレス、接続され
ている共有メモリの転送先のアドレス、転送データ数を
指示する。
It should be noted that the input control unit 4 and the output control unit 5
It may be in the form of a MAC. For example, for an input instruction,
A transfer source address of an external device (not shown), a transfer destination address of a connected shared memory, and a transfer data number are indicated.

【0021】次に、図1の実施の形態の動作について、
図2のフローチャート及び図3の動作説明模式図と共に
説明する。なお、以下のフローチャートにおいては、便
宜上、共有メモリ1−1、1−2及び1−3をそれぞれ
、及びとも記すものとする。また、ここでは、入
力が終了したことを示す入力終了信号と、出力が終了し
たことを示す出力終了信号を使用するが、例えば演算に
掛かる時間が、入力動作あるいは出力動作より長い場合
は、これらの信号を使用する必要はない(終了を確認す
るステップを省略できる)。
Next, the operation of the embodiment shown in FIG.
This will be described with reference to the flowchart of FIG. 2 and the schematic diagram for explaining the operation of FIG. In the following flowcharts, the shared memories 1-1, 1-2, and 1-3 are also referred to as and for convenience. In addition, here, an input end signal indicating that the input has ended and an output end signal indicating that the output has ended are used. For example, when the time required for the operation is longer than the input operation or the output operation, these are used. Need not be used (the step of confirming termination can be omitted).

【0022】まず、最初に、入力制御部4と共有メモリ
1−1()を接続するようバス接続制御部2に指示す
る(ステップ101)。続いて、入力制御部4に対し入
力指示7を発する(ステップ102)。これにより、外
部から入力される演算すべきデータが入力制御部4に入
力され、更にこれよりバス接続制御部2を介して共有メ
モリ1−1()に演算すべきデータが図3(A)にI
1で模式的に示すように格納される。そして、演算部3
は、入力制御部4から入力終了信号が入力されたかどう
かを監視する(ステップ103)。
First, the bus connection control unit 2 is instructed to connect the input control unit 4 and the shared memory 1-1 () (step 101). Subsequently, an input instruction 7 is issued to the input control unit 4 (step 102). As a result, the data to be calculated, which is input from the outside, is input to the input control unit 4, and the data to be calculated is further stored in the shared memory 1-1 () via the bus connection control unit 2 in FIG. To I
1 is stored as schematically shown. And the calculation unit 3
Monitors whether an input end signal has been input from the input control unit 4 (step 103).

【0023】入力制御部4へのデータ入力が終了する
と、入力制御部4から演算部3へ入力終了信号が出力さ
れ、これにより演算部3は、入力制御部4と共有メモリ
1−2()を接続し、かつ、演算部3と共有メモリ1
−1()を接続するようバス接続制御部2に指示する
(ステップ104)。
When the data input to the input control unit 4 is completed, an input end signal is output from the input control unit 4 to the operation unit 3, whereby the operation unit 3 is connected to the input control unit 4 and the shared memory 1-2 (). And the arithmetic unit 3 and the shared memory 1
-1 () is instructed to the bus connection control unit 2 (step 104).

【0024】次に、演算部3は入力制御部4に対し入力
指示7を再び発し(ステップ105)、演算処理を実行
する(ステップ106)。これにより、外部から入力さ
れる演算すべきデータが入力制御部4に入力され、更に
これよりバス接続制御部2を介して共有メモリ1−2
()に演算すべきデータが図3(B)にI2で模式的
に示すように格納されると共に、演算部3はバス接続制
御部2を介して共有メモリ1−1()から入力される
データの演算を開始する。
Next, the arithmetic unit 3 issues the input instruction 7 again to the input control unit 4 (step 105), and executes the arithmetic processing (step 106). As a result, the data to be calculated, which is input from the outside, is input to the input control unit 4, and is further transmitted to the shared memory 1-2 via the bus connection control unit 2.
The data to be calculated is stored in () as schematically shown by I2 in FIG. 3B, and the calculation unit 3 is input from the shared memory 1-1 () via the bus connection control unit 2. Start calculating data.

【0025】演算部3は、この演算実行中も入力制御部
4から入力終了信号が入力されたかどうかを監視してい
る(ステップ107)。通常は、入力制御部4へのデー
タ入力が終了し、入力制御部4から演算部3へ入力終了
信号が出力される以前に、演算部3による演算が終了
し、その演算結果がバス接続制御部2を介して共有メモ
リ1−1()に格納され終っている。上記の演算及び
共有メモリ1−1()への演算結果の格納動作を図3
(A)にP1で模式的に示す。
The arithmetic unit 3 monitors whether an input end signal has been input from the input control unit 4 even during the execution of the arithmetic operation (step 107). Normally, before the input of data to the input control unit 4 ends and before the input control unit 4 outputs an input end signal to the operation unit 3, the operation by the operation unit 3 ends, and the operation result is transferred to the bus connection control. It is stored in the shared memory 1-1 () via the section 2 and has been completed. The above operation and the operation of storing the operation result in the shared memory 1-1 () are shown in FIG.
(A) schematically shows P1.

【0026】演算部3は、入力制御部4から入力終了信
号が入力されると、今度は入力制御部4と共有メモリ1
−3()を接続し、演算部3と共有メモリ1−2
()を接続し、出力制御部5と共有メモリ1−1
()を接続するよう、バス接続制御部2に指示する
(ステップ108)。
When the input end signal is input from the input control unit 4, the arithmetic unit 3 turns to the input control unit 4 and the shared memory 1.
-3 (), the arithmetic unit 3 and the shared memory 1-2.
(), Output control unit 5 and shared memory 1-1.
The bus connection control unit 2 is instructed to connect () (step 108).

【0027】続いて、演算部3は入力制御部4に対し入
力指示7を、出力制御部5に対し出力指示8を発し(ス
テップ109)、演算を実行する(ステップ110)。
入力指示7により、外部から入力される演算すべきデー
タが入力制御部4に入力され、更にこれよりバス接続制
御部2を介して共有メモリ1−3()に演算すべきデ
ータが図3(C)にI3で模式的に示すように格納され
ると共に、出力指示8により、出力制御部5がバス接続
制御部2を介して接続されている共有メモリ1−1
()の格納データ、すなわち演算結果を図3(A)に
O1で模式的に示すように外部へ転送し、転送が終了し
たら出力終了信号を演算部3へ発する。
Subsequently, the operation unit 3 issues an input instruction 7 to the input control unit 4 and an output instruction 8 to the output control unit 5 (step 109), and executes the operation (step 110).
In response to the input instruction 7, data to be calculated from the outside is input to the input control unit 4, and further data to be calculated in the shared memory 1-3 () via the bus connection control unit 2 is shown in FIG. C), the output control unit 5 stores the shared memory 1-1 via the bus connection control unit 2 in response to the output instruction 8.
The data stored in (), that is, the calculation result, is transferred to the outside as schematically shown by O1 in FIG. 3A, and an output end signal is issued to the calculation unit 3 when the transfer is completed.

【0028】また、上記の入力制御部4の入力制御動作
及び出力制御部5の出力制御動作に並行して、演算部3
はバス接続制御部2を介して共有メモリ1−2()か
ら入力されるデータの演算を開始し、その演算結果を入
力制御部4から演算部3へ入力終了信号が出力される以
前に演算を終了し、その演算結果をバス接続制御部2を
介して共有メモリ1−2()に格納する。上記の演算
及び共有メモリ1−2()への演算結果の格納動作を
図3(B)にP2で模式的に示す。
In parallel with the input control operation of the input control unit 4 and the output control operation of the output control unit 5,
Starts the operation of the data input from the shared memory 1-2 () via the bus connection control unit 2, and calculates the operation result before the input end signal is output from the input control unit 4 to the operation unit 3. Is completed, and the calculation result is stored in the shared memory 1-2 () via the bus connection control unit 2. The above operation and the operation of storing the operation result in the shared memory 1-2 () are schematically shown by P2 in FIG.

【0029】演算部3は、この演算実行中も入力制御部
4から入力終了信号が入力されたかどうか、また出力制
御部5から出力終了信号が入力されたかどうか監視して
おり(ステップ111)、入力制御部4から演算部3へ
入力終了信号が入力され、かつ、出力制御部5から出力
終了信号が入力されたことを確認すると、今度は入力制
御部4と共有メモリ1−1()を接続し、演算部3と
共有メモリ1−3()を接続し、出力制御部5と共有
メモリ1−2()を接続するよう、バス接続制御部2
に指示する(ステップ108)。
The operation unit 3 monitors whether an input end signal has been input from the input control unit 4 and whether an output end signal has been input from the output control unit 5 even during the execution of this operation (step 111). When it is confirmed that an input end signal has been input from the input control unit 4 to the arithmetic unit 3 and that an output end signal has been input from the output control unit 5, the input control unit 4 and the shared memory 1-1 () are now connected. The bus connection control unit 2 connects the arithmetic unit 3 and the shared memory 1-3 (), and connects the output control unit 5 and the shared memory 1-2 ().
(Step 108).

【0030】以下、ステップ109、110、111及
び108の処理が繰り返される。ただし、ステップ10
8で接続する共有メモリは巡回的に指定し、ステップ1
10で行う演算処理も該当する共有メモリであることは
いうまでもない。ステップ108で2回目以降接続する
共有メモリは、図2のステップ108の右側に図示して
あり、縦方向の一番上がステップ108が起動されたの
が何番目であるかを示す値、上から二番目が入力制御部
4に接続される共有メモリ、上から三番目が演算部3に
接続される共有メモリ、一番下が出力制御部5に接続さ
れる共有メモリを示す。
Thereafter, the processing of steps 109, 110, 111 and 108 is repeated. However, step 10
In step 8, the shared memory to be connected is designated cyclically.
It goes without saying that the arithmetic processing performed in 10 is also the corresponding shared memory. The shared memory to be connected for the second and subsequent times in step 108 is shown on the right side of step 108 in FIG. 2, and the top in the vertical direction is a value indicating what number the step 108 was activated. The third from the top indicates the shared memory connected to the input control unit 4, the third from the top indicates the shared memory connected to the arithmetic unit 3, and the bottom indicates the shared memory connected to the output control unit 5.

【0031】これにより、図3に模式的に示すように、
入力制御部4による共有メモリへのデータ格納動作と、
前のステップで共有メモリに格納されたデータに対する
演算部3による所定の演算処理及び演算結果格納処理
と、前のステップで共有メモリに格納された演算結果の
出力制御部5による外部への転送動作とが並行して行わ
れるため、高速演算が可能となる。
As a result, as schematically shown in FIG.
An operation of storing data in the shared memory by the input control unit 4,
Predetermined arithmetic processing and arithmetic result storage processing for the data stored in the shared memory in the previous step by the arithmetic unit 3 and transfer operation of the arithmetic result stored in the shared memory in the previous step to the outside by the output control unit 5 Are performed in parallel, so that high-speed operation can be performed.

【0032】次に具体的な数値を用いてこの実施の形態
の有効性を示す。入力データとして、16ビット長でデ
ータ数が1024個のものを2組入力する、すなわち1
6ビット長のデータを2048個転送する場合を例とす
る。高速に入力するためには2組を1つにまとめ、32
ビット長で1024個転送する。転送クロックを100
MHz(10ns)とすると、10.24μsで転送が
完了する。出力も同様に100MHzで動作させ、1
0.24μsで転送が完了する。
Next, the effectiveness of this embodiment will be shown using specific numerical values. As the input data, two sets of 16-bit data having 1024 data numbers are input, ie, 1 set.
A case where 2048 pieces of 6-bit data are transferred will be described as an example. For fast input, combine the two sets into one
1024 data bits are transferred. Set transfer clock to 100
When the frequency is set to MHz (10 ns), the transfer is completed in 10.24 μs. The output also operates at 100 MHz,
The transfer is completed in 0.24 μs.

【0033】このような場合と演算時間を同等とする
と、演算については高速なプロセッサを考えた場合に1
回の動作(命令)(インストラクション)に5nsかか
るとすると、ほぼ2048回の動作(命令)を実行で
き、データとしては3.2Gbps(=1024×16
×2ビット/10.24μs)の処理能力があるといえ
る。
Assuming that the operation time is equivalent to that in such a case, the operation is 1 in consideration of a high-speed processor.
Assuming that each operation (instruction) (instruction) takes 5 ns, approximately 2048 operations (instructions) can be executed, and data of 3.2 Gbps (= 1024 × 16)
× 2 bits / 10.24 μs).

【0034】従来は、演算時間の全体に占める割合が多
く、データの入出力に掛かる時間は無視できるものであ
った。しかしながら、上記の例でもわかる通り、半導体
技術の進歩により高速なプロセッサが登場し、1インス
トラクションに5ns程度は可能になってきた。当然、
相対的に入出力に要する時間が大きくなり無視できなく
なってきた。本実施の形態を用いない場合、高速なプロ
セッサ部分の性能が十分発揮できず、上記の例では、全
体で1/3の性能しか引き出せない結果となる。以上述
べてきた構成により、高速な演算回路または半導体集積
回路が具現化する。
Conventionally, the ratio of the total calculation time to the total calculation time is large, and the time required for data input / output is negligible. However, as can be seen from the above example, a high-speed processor has appeared with the advance of the semiconductor technology, and it has become possible to execute about 5 ns per instruction. Of course,
The time required for input and output has become relatively long and cannot be ignored. If this embodiment is not used, the performance of the high-speed processor portion cannot be sufficiently exhibited, and in the above example, the result is that only 1/3 of the performance can be obtained as a whole. With the structure described above, a high-speed arithmetic circuit or a semiconductor integrated circuit is realized.

【0035】以上は、入力データを所定のまとまった単
位(ブロック)で入力し演算する例を示したが、演算
(ディジタル信号処理)はブロック単位に限定されるも
のではなく、例えば連続的に入力される時間信号のサン
プルデータに対してディジタルフィルタでフィルタリン
グする場合などにも有効である。その際、データの入出
力は所定のブロック単位で扱うが、演算に関しては、ブ
ロック間の情報が必要な場合はこれをローカルバスに接
続されているRAM等に格納しておけばよい。
In the above description, an example has been shown in which input data is input in predetermined units (blocks) and arithmetic operations are performed. However, the arithmetic operation (digital signal processing) is not limited to block units. This is also effective when the digital data is used to filter the sampled data of the time signal. At this time, input / output of data is handled in a predetermined block unit. Regarding calculation, if information between blocks is required, it may be stored in a RAM or the like connected to a local bus.

【0036】この実施の形態の変形例として、演算部3
を2つ、共有メモリを4つ具備する形態が考えられる。
これは、データの入出力時間に対し、所望のディジタル
演算処理時間が2倍程度の時に有効である。特定の共有
メモリに着目すると、入力動作であるステージ1、演算
その1であるステージ2、演算その2であるステージ
3、出力動作であるステージ4を巡回的に繰り返す。こ
の変形例は、第1の実施の形態から容易に展開できる。
As a modification of this embodiment, the arithmetic unit 3
And two shared memories.
This is effective when the desired digital operation processing time is about twice as long as the data input / output time. Focusing on a specific shared memory, stage 1 as an input operation, stage 2 as an operation 1, stage 3 as an operation 2 and stage 4 as an output operation are cyclically repeated. This modification can be easily developed from the first embodiment.

【0037】第1の実施の形態の他の変形例として、第
1の実施の形態の構成をより簡単にし、入力制御部4や
出力制御部5の代わりに、入力と出力を行う機能を有す
る入出力制御部を具備する構成が考えられる。この場
合、入力動作と出力動作は並列に実行できないが、入出
力時間に対する演算時間が比較的大きい場合には有効な
構成である。
As another modified example of the first embodiment, the structure of the first embodiment is simplified, and a function of performing input and output is provided instead of the input control unit 4 and the output control unit 5. A configuration including an input / output control unit is conceivable. In this case, the input operation and the output operation cannot be performed in parallel, but this is an effective configuration when the calculation time for the input / output time is relatively long.

【0038】次に、本発明の第2の実施の形態について
説明する。図4は本発明になる高速演算装置の第2の実
施の形態のブロック図を示す。同図に示す高速演算装置
は、演算部20と、3つのポートを有するマルチポート
メモリ21−1、21−2及び21−3と、入力制御部
22と、出力制御部23から構成されている。
Next, a second embodiment of the present invention will be described. FIG. 4 is a block diagram showing a second embodiment of the high-speed operation device according to the present invention. The high-speed operation device shown in FIG. 1 includes an operation unit 20, multiport memories 21-1, 21-2, and 21-3 having three ports, an input control unit 22, and an output control unit 23. .

【0039】マルチポートメモリ21−1〜21−3
は、3ポートの一般的なマルチポートメモリであり、R
/W制御信号やデータバス、アドレスバス、その他(チ
ップセレクトや書き込みクロックなど)をそれぞれ独立
に持つ(図では3つのマルチポートメモリ構成を示
す)。これらマルチポートメモリ21−1〜21−3の
第一のポートは、入力制御部22と接続されており、第
二のポートは、演算部20と接続されており、第三のポ
ートは、出力制御部23と接続されている。
Multiport memories 21-1 to 21-3
Is a general 3-port multi-port memory, and R
/ W control signal, a data bus, an address bus, and others (such as a chip select and a write clock) independently (three multi-port memory configurations are shown in the figure). The first ports of the multiport memories 21-1 to 21-3 are connected to the input control unit 22, the second port is connected to the operation unit 20, and the third port is connected to the output port. It is connected to the control unit 23.

【0040】演算部20は、入力制御部22に対し入力
指示24を発し、出力制御部23に対し出力指示25を
発すると共に、所望のマルチポートメモリからのデータ
に対し所望の演算を実施するプロセッサである。演算部
20の行う演算や入力制御部22及び出力制御部23に
指示を出す一連の動作は、演算部20が有するローカル
バス26に接続されているROM(またはRAM等)2
7に格納されているプログラムに従って実行される。
The processor 20 issues an input instruction 24 to the input controller 22, issues an output instruction 25 to the output controller 23, and performs a desired operation on data from a desired multiport memory. It is. A series of operations performed by the arithmetic unit 20 and instructing the input control unit 22 and the output control unit 23 are performed by the ROM (or RAM or the like) 2 connected to the local bus 26 of the arithmetic unit 20.
7 is executed in accordance with the program stored in.

【0041】入力制御部22は、入力指示に従い所望の
マルチポートメモリにデータを外部から転送し、転送が
終了したら入力終了信号を演算部20へ発する。出力制
御部23は、出力指示に従い所望のマルチポートメモリ
からデータを外部へ転送し、転送が終了したら出力終了
信号を演算部20へ発する。
The input control unit 22 externally transfers data to a desired multi-port memory in accordance with an input instruction, and issues an input end signal to the arithmetic unit 20 when the transfer is completed. The output control unit 23 transfers data from a desired multiport memory to the outside in accordance with the output instruction, and issues an output end signal to the arithmetic unit 20 when the transfer is completed.

【0042】なお、入力制御部22、出力制御部23
は、DMACの形態でもよく、例えば、入力指示につい
ては、図示しない外部デバイスの転送元のアドレス、接
続されているマルチポートメモリの転送先のアドレス、
転送データ数を指示する。
The input control unit 22 and the output control unit 23
May be in the form of a DMAC. For example, regarding the input instruction, a transfer source address of an external device (not shown), a transfer destination address of a connected multiport memory,
Indicates the number of data to be transferred.

【0043】次に、この実施の形態の動作について、図
5のフローチャートと共に説明する。ここでは、入力が
終了したことを示す入力終了信号と、出力が終了したこ
とを示す出力終了信号を使用するが、図1の実施の形態
と同様に、例えば演算に掛かる時間が、入力動作あるい
は出力動作より長い場合は、これらの信号を使用する必
要はない(終了を確認するステップを省略できる)。
Next, the operation of this embodiment will be described with reference to the flowchart of FIG. Here, an input end signal indicating that the input has been completed and an output end signal indicating that the output has been completed are used. However, as in the embodiment of FIG. If it is longer than the output operation, there is no need to use these signals (the step of confirming termination can be omitted).

【0044】まず、演算部20は、入力指示24を発
し、入力制御部22に対しマルチポートメモリ21−1
へデータを転送するよう指示する(ステップ201)。
これにより、外部から入力される演算すべきデータが入
力制御部22に入力され、更にこれよりマルチポートメ
モリ21−1に転送されて格納される。そして、演算部
20は、入力制御部22から入力終了信号が入力された
かどうかを監視する(ステップ202)。
First, the arithmetic unit 20 issues an input instruction 24 and sends a multi-port memory 21-1 to the input control unit 22.
Is instructed to transfer data (step 201).
As a result, the data to be calculated, which is input from the outside, is input to the input control unit 22, and is further transferred and stored in the multiport memory 21-1. Then, the arithmetic unit 20 monitors whether an input end signal has been input from the input control unit 22 (step 202).

【0045】入力制御部22へのデータ入力が終了する
と、入力制御部22から演算部20へ入力終了信号が出
力され、これにより演算部20は、入力指示24を発
し、入力制御部22に対しマルチポートメモリ21−2
へデータを転送するよう指示する(ステップ203)。
これにより、外部から入力される演算すべきデータが入
力制御部22に入力され、更にこれよりマルチポートメ
モリ21−2に転送されて格納される。
When data input to the input control unit 22 is completed, an input end signal is output from the input control unit 22 to the calculation unit 20, whereby the calculation unit 20 issues an input instruction 24 and Multi-port memory 21-2
Is instructed to transfer data (step 203).
As a result, the data to be calculated, which is input from the outside, is input to the input control unit 22, and is further transferred and stored in the multiport memory 21-2.

【0046】次に、演算部20は、マルチポートメモリ
21−1に格納されているデータに対し所定の演算処理
を行い、その演算結果をマルチポートメモリ21−1に
格納し直す(ステップ204)。続いて、入力制御部2
2からの入力終了信号を監視し入力が終了するまで待つ
(ステップ205)。入力制御部22から演算部20へ
入力終了信号が出力されると、演算部20は、入力指示
24を再び発し、入力制御部22に対しマルチポートメ
モリ21−3へデータを転送するよう指示すると共に、
出力制御部23に対し出力指示25を発し、マルチポー
トメモリ21−1から外部へデータを転送するよう指示
する(ステップ206)。
Next, the arithmetic section 20 performs a predetermined arithmetic processing on the data stored in the multiport memory 21-1, and stores the arithmetic result in the multiport memory 21-1 again (step 204). . Subsequently, the input control unit 2
2 and waits until the input is completed (step 205). When an input end signal is output from the input control unit 22 to the arithmetic unit 20, the arithmetic unit 20 issues an input instruction 24 again and instructs the input control unit 22 to transfer data to the multiport memory 21-3. Along with
An output instruction 25 is issued to the output control unit 23 to instruct to transfer data from the multiport memory 21-1 to the outside (step 206).

【0047】これにより、外部から入力される演算すべ
きデータが入力制御部22に入力され、更にこれよりマ
ルチポートメモリ21−3に転送されて格納されると同
時に、マルチポートメモリ21−1に格納されている演
算結果が出力制御部23により読み出されて外部へ転送
される。
As a result, the data to be calculated, which is input from the outside, is input to the input control unit 22, and is further transferred and stored in the multiport memory 21-3. The stored operation result is read by the output control unit 23 and transferred to the outside.

【0048】次に、演算部20は、マルチポートメモリ
21−2に格納されているデータに対し所定の演算処理
を行い、その演算結果をマルチポートメモリ21−2に
格納し直す(ステップ207)。続いて、入力制御部2
2からの入力終了信号を監視し入力が終了するまで待
ち、かつ、出力制御部23からの出力終了信号を監視し
出力が収流するのを待つ(ステップ208)。
Next, the operation unit 20 performs a predetermined operation on the data stored in the multiport memory 21-2, and stores the operation result in the multiport memory 21-2 again (step 207). . Subsequently, the input control unit 2
2 and waits until the input is completed, and monitors the output end signal from the output control unit 23 to wait for the output to divert (step 208).

【0049】演算部20は、入力制御部22の入力終了
を確認し、かつ、出力制御部23の出力終了を確認する
と、再びステップ206の処理に戻り、以降ステップ2
06〜209の処理を繰り返す。ただし、ステップ20
6で指定するマルチポートメモリは巡回的に指定し、ス
テップ207で指定するマルチポートメモリも巡回的に
指定することはいうまでもない。
When the operation unit 20 confirms that the input of the input control unit 22 has been completed and also confirms that the output of the output control unit 23 has been completed, the process returns to step 206 again.
Steps 06 to 209 are repeated. However, step 20
Needless to say, the multiport memory specified in 6 is cyclically specified, and the multiport memory specified in step 207 is also specified cyclically.

【0050】これにより、入力制御部22によるマルチ
ポートメモリへのデータ格納動作と、前のステップでマ
ルチポートメモリに格納されたデータに対する演算部2
0による所定の演算処理及び演算結果格納処理と、前の
ステップでマルチポートメモリに格納された演算結果の
出力制御部23による外部への転送動作とが並行して行
われるため、高速演算が可能となる。
Thus, the operation of storing data in the multiport memory by the input control unit 22 and the operation of the arithmetic unit 2 on the data stored in the multiport memory in the previous step are performed.
The predetermined operation processing and the operation result storage processing by 0 and the operation of transferring the operation result stored in the multiport memory in the previous step to the outside by the output control unit 23 are performed in parallel, so that high-speed operation is possible. Becomes

【0051】なお、この実施の形態では、入力データを
所定のまとまった単位(ブロック)で入力し演算する例
を示したが、演算(ディジタル信号処理)はブロック単
位に限定されるものではなく、例えば連続的に入力され
る時間信号のサンプルデータに対してディジタルフィル
タでフィルタリングする場合などにも有効である。その
際、データの入出力は所定のブロック単位で扱うが、演
算に関しては、ブロック間の情報が必要な場合はこれを
ローカルバスに接続されているRAM等に格納しておけ
ばよい。
In this embodiment, an example has been shown in which input data is input in a predetermined unit (block) and operated. However, the operation (digital signal processing) is not limited to a block unit. For example, the present invention is also effective in a case where sample data of a continuously input time signal is filtered by a digital filter. At this time, input / output of data is handled in a predetermined block unit. Regarding calculation, if information between blocks is required, it may be stored in a RAM or the like connected to a local bus.

【0052】次に具体的な数値を用いてその動作の有効
性を示す。前述した第1の実施の形態と同様に、入力デ
ータとして、16ビット長でデータ数が1024個のも
のを2組入力する、すなわち16ビット長のデータを2
048個転送する場合を例とする。高速に入力するため
には2組を1つにまとめ、32ビット長で1024個転
送する。転送クロックを100MHz(10ns)とす
ると、10.24μsで転送が完了する。出力も同様に
100MHzで動作させ、10.24μsで転送が完了
する。
Next, the effectiveness of the operation will be shown using specific numerical values. As in the first embodiment, two sets of 16-bit data having 1024 data are input as input data.
A case where 048 data is transferred is taken as an example. For high-speed input, two sets are combined into one, and 1024 pieces are transferred with a 32-bit length. When the transfer clock is 100 MHz (10 ns), the transfer is completed in 10.24 μs. Similarly, the output is operated at 100 MHz, and the transfer is completed in 10.24 μs.

【0053】このような場合と演算時間を同等とする
と、演算については高速なプロセッサを考えた場合に1
回の動作(命令)(インストラクション)に5nsかか
るとすると、ほぼ2048回の動作(命令)を実行で
き、データとしては3.2Gbps(=1024×16
×2ビット/10.24μs)の処理能力があるとい
え、前述した第1の実施の形態と同様に、従来に比べて
高速な演算回路または半導体集積回路を具現化できる。
Assuming that the operation time is equivalent to that in such a case, the operation is 1 in consideration of a high-speed processor.
Assuming that each operation (instruction) (instruction) takes 5 ns, approximately 2048 operations (instructions) can be executed, and data of 3.2 Gbps (= 1024 × 16)
(* 2 bits / 10.24 μs), it is possible to implement an arithmetic circuit or a semiconductor integrated circuit that is faster than the conventional one, as in the first embodiment.

【0054】この第2の実施の形態の変形例として、演
算部20を2つ、マルチポートメモリ21を4つ具備す
る形態が考えられる。これは、データの入出力時間に対
し、所望のディジタル演算処理時間が2倍程度の時に有
効である。特定のマルチポートメモリに着目すると、入
力動作であるステージ1、演算その1であるステージ
2、演算その2であるステージ3、出力動作であるステ
ージ4を巡回的に繰り返す。このような応用例は、第2
の実施の形態から容易に展開できる。
As a modification of the second embodiment, a mode in which two arithmetic units 20 and four multi-port memories 21 are provided can be considered. This is effective when the desired digital operation processing time is about twice as long as the data input / output time. Focusing on a specific multiport memory, stage 1 which is an input operation, stage 2 which is an operation 1, stage 3 which is an operation 2 and stage 4 which is an output operation are cyclically repeated. An example of such an application is
The embodiment can be easily developed.

【0055】図6は本発明になる高速演算装置の第3の
実施の形態の構成図を示す。この第3の実施の形態は第
2の実施の形態の構成をより簡単にし、入力制御部22
と出力制御部23の代わりに入出力制御部28を具備し
た構成である。この入出力制御部28は入力と出力を行
う機能を有する。この場合、入力動作と出力動作は並列
に実行できないが、入出力時間に対する演算時間が比較
的大きい場合には有効な構成である。また、マルチポー
トメモリ21−1、21−2のポート数は2つでよい。
FIG. 6 is a block diagram of a third embodiment of the high-speed operation device according to the present invention. The third embodiment simplifies the configuration of the second embodiment, and the input control unit 22
And an input / output control unit 28 instead of the output control unit 23. The input / output control unit 28 has a function of performing input and output. In this case, the input operation and the output operation cannot be performed in parallel, but this is an effective configuration when the calculation time for the input / output time is relatively long. The number of ports of the multiport memories 21-1 and 21-2 may be two.

【0056】なお、本発明は以上の実施の形態や変形例
以外の構成も可能である。例えば、マルチポートメモリ
のバス信号線(ポート)の種類については、一般的な信
号線群のほかに、FIFOメモリを用いた実施の形態が
考えられる。この場合は、信号線を少なくしたり、回路
規模を小さくできて低コスト化が図れる。
The present invention can have a configuration other than the above-described embodiment and modified examples. For example, as for the types of bus signal lines (ports) of the multi-port memory, an embodiment using a FIFO memory in addition to a general signal line group can be considered. In this case, the number of signal lines can be reduced and the circuit scale can be reduced, so that the cost can be reduced.

【0057】詳しく説明すると、演算部20とマルチポ
ートメモリ21−1〜21−3(図6では21−1及び
21−2)の間では種々の演算処理を行うため、ランダ
ムにデータをアクセスできなければならない。この場合
には、例えば、セレクト信号、ライト信号、リード信
号、出力イネープル信号等の制御信号とデータ信号線、
アドレス信号線などが必要である(通常のRAM等で用
いる信号線)。
More specifically, since various operation processes are performed between the operation unit 20 and the multiport memories 21-1 to 21-3 (21-1 and 21-2 in FIG. 6), data can be randomly accessed. There must be. In this case, for example, control signals such as a select signal, a write signal, a read signal, an output enable signal and a data signal line,
An address signal line or the like is required (a signal line used in a normal RAM or the like).

【0058】入力制御部22や出力制御部23(あるい
は入出力制御部28)とマルチポートメモリ21−1〜
21−3(図6では21−1及び21−2)の間ではラ
ンダムにデータをアクセスする必要はなく、順番にデー
タを出し入れできればよい。この場合には、例えば、セ
レクト信号、ライト信号、リード信号、出力イネーブル
信号等の制御信号とデータ信号線があればよく、アドレ
ス信号線は不要となる(FIFOメモリで用いる信号
線)。よって、演算部20とつながるポートのみアドレ
ス信号線を用意し、入力制御部22や出力制御部23あ
るいは入出力制御部28とつながるポートにはアドレス
信号線を用意しなくてよい。
The input control unit 22, the output control unit 23 (or the input / output control unit 28) and the multiport memories 21-1 to 21-1
It is not necessary to randomly access data between 21-3 (21-1 and 21-2 in FIG. 6), and it is only necessary to be able to put data in and out in order. In this case, for example, a control signal such as a select signal, a write signal, a read signal, and an output enable signal and a data signal line may be provided, and an address signal line is not required (a signal line used in a FIFO memory). Therefore, it is not necessary to prepare an address signal line only for a port connected to the operation unit 20 and to prepare an address signal line for a port connected to the input control unit 22, the output control unit 23, or the input / output control unit 28.

【0059】[0059]

【発明の効果】以上説明したように、本発明によれば、
少なくとも3個の共有メモリ又はマルチポートメモリに
対して、入力データの格納、入力データの演算結果の格
納、格納された演算結果の読み出しを別々に行うことに
より、演算部の演算動作中に入力データの格納と格納さ
れた演算結果の読み出しを行うことができるため、デー
タの入力、出力動作にバスのアクセス権を奪われず、演
算部(CPU)が十分にその性能を発揮できる構成とす
ることができる。
As described above, according to the present invention,
By separately storing at least three input memories, storing the operation results of the input data, and reading out the stored operation results for at least three shared memories or multiport memories, the input data can be stored during the operation of the operation unit. Can be stored and the operation results stored can be read, so that the input and output operations of data do not deprive the bus of the right to operate, and the operation unit (CPU) can sufficiently exhibit its performance. it can.

【0060】また、本発明によれば、同時刻では3つ又
は2つの共有メモリ又はマルチポートメモリのそれぞれ
が異なるステージ(入力データの格納、演算と演算結果
の格納、データの出力)で動作されるようにしたため、
少なくとも3つのメモリアクセス動作を並列に行うこと
ができ、全体のスループットを向上することができ、ま
た、簡単な構成で高速な演算装置を提供できる。
Further, according to the present invention, at the same time, three or two shared memories or multiport memories are operated at different stages (storage of input data, calculation and storage of calculation results, output of data). So that
At least three memory access operations can be performed in parallel, the overall throughput can be improved, and a high-speed arithmetic device with a simple configuration can be provided.

【0061】更に、本発明によれば、演算部がアクセス
できるデバイスはROM(又はRAM)に限定されず、
共有メモリ又はマルチポートメモリや入力制御部、出力
制御部、入出力制御部などもアクセスできる。また、本
発明によれば、ディジタル回路で構成されているので半
導体集積回路にも適用でき、通信ブロトコルプロセッサ
やDSP(ディジタル・シグナル・プロセッサ)等にも
応用できる。
Further, according to the present invention, the device that can be accessed by the arithmetic unit is not limited to the ROM (or RAM).
A shared memory or a multiport memory, an input control unit, an output control unit, an input / output control unit, and the like can also be accessed. Further, according to the present invention, since it is constituted by a digital circuit, the present invention can be applied to a semiconductor integrated circuit, and can be applied to a communication protocol processor, a DSP (digital signal processor) and the like.

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

【図1】本発明の高速演算装置の第1の実施の形態の構
成図である。
FIG. 1 is a configuration diagram of a first embodiment of a high-speed operation device of the present invention.

【図2】図1の動作説明用フローチャートである。FIG. 2 is a flowchart for explaining the operation of FIG. 1;

【図3】図1における共有メモリの状態説明図である。FIG. 3 is an explanatory diagram of a state of a shared memory in FIG. 1;

【図4】本発明の高速演算装置の第2の実施の形態の構
成図である。
FIG. 4 is a configuration diagram of a second embodiment of the high-speed operation device of the present invention.

【図5】図4の動作説明用フローチャートである。FIG. 5 is a flowchart for explaining the operation of FIG. 4;

【図6】本発明の高速演算装置の第3の実施の形態の構
成図である。
FIG. 6 is a configuration diagram of a high-speed operation device according to a third embodiment of the present invention.

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

1−1、1−2、1−3 共有メモリ 2 バス接続制御部 3、20 演算部 4、22 入力制御部 5、23 出力制御部 7 入力制御部に対する入力指示 8 出力制御部に対する出力指示 9、26 ローカルバス 10 プログラムが格納されるリード・オンリ・メモリ
(ROM) 21−1、21−2、21−3 マルチポ−トメモリ 27 リード・オンリ・メモリ(ROM) 28 入出力制御部
1-1, 1-2, 1-3 Shared memory 2 Bus connection control unit 3, 20 Operation unit 4, 22 Input control unit 5, 23 Output control unit 7 Input instruction to input control unit 8 Output instruction to output control unit 9 , 26 Local bus 10 Read-only memory (ROM) for storing programs 21-1, 21-2, 21-3 Multiport memory 27 Read-only memory (ROM) 28 I / O controller

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 個別に書き込み、読出しが可能なN個
(Nは3以上の整数)に分割された共有メモリと、 前記N個の共有メモリと選択的にバス接続するバス接続
制御部と、 前記N個の共有メモリのうち前記バス接続制御部を介し
て接続されている第1の共有メモリに、入力指示に従い
データを外部から転送して格納する入力制御部と、 前記N個の共有メモリのうち前記バス接続制御部を介し
て接続されている第2の共有メモリから読み出したデー
タに対して所定の演算を実行し、その演算結果を当該第
2の共有メモリに書き込むと共に、装置内の各部に指示
を発する演算部と、 前記N個の共有メモリのうち前記バス接続制御部を介し
て接続されている第3の共有メモリから、出力指示に従
いデータを読み出して外部へ転送する出力制御部とを有
し、前記演算部は、当該演算部に接続される前記第2の
共有メモリをそれ以前に前記入力制御部に接続された前
記第1の共有メモリとし、前記出力制御部に接続される
前記第3の共有メモリをそれ以前に前記演算部に接続さ
れた第2の共有メモリとし、前記入力制御部に接続され
る前記第1の共有メモリをそれ以前に前記出力制御部に
接続された前記第3の共有メモリとするように、前記N
個の共有メモリの中から巡回的な切り替え接続を前記バ
ス接続制御部に対し指示すると共に、前記入力制御部に
対し前記入力指示を発し、前記出力制御部に対し前記出
力指示を発することを特徴とする高速演算装置。
1. A shared memory divided into N pieces (N is an integer of 3 or more) that can be individually written and read, a bus connection control section that selectively connects to the N pieces of shared memories by a bus, An input control unit that externally transfers and stores data according to an input instruction in a first shared memory connected via the bus connection control unit, among the N shared memories, and the N shared memories A predetermined operation is performed on the data read from the second shared memory connected via the bus connection control unit, and the operation result is written into the second shared memory; An operation unit for issuing an instruction to each unit; and an output control unit for reading data from a third shared memory connected via the bus connection control unit among the N shared memories in accordance with an output instruction and transferring the data to the outside When The arithmetic unit includes the second shared memory connected to the arithmetic unit as the first shared memory previously connected to the input control unit, and the second shared memory connected to the output control unit. The third shared memory is a second shared memory previously connected to the arithmetic unit, and the first shared memory connected to the input control unit is the second shared memory previously connected to the output control unit. The N shared memory is used as a third shared memory.
And instructing the bus connection control unit to perform a cyclic switching connection from among the shared memories, issuing the input instruction to the input control unit, and issuing the output instruction to the output control unit. High-speed computing device.
【請求項2】 前記演算部は、前記N個の共有メモリの
中から一の共有メモリと前記入力制御部との接続を前記
バス接続制御部に対し指示し、かつ、前記入力指示を発
してデータを外部から転送する第1のステージと、当該
一の共有メモリと当該演算部との接続を前記バス接続制
御部に対し指示し当該一の共有メモリからのデータに対
し所定の演算を実施し、その演算結果を当該一の共有メ
モリに格納する第2のステージと、当該一の共有メモリ
と前記出力制御部との接続を前記バス接続制御部に対し
指示すると共に、前記出力指示を発して当該一の共有メ
モリに格納されている前記演算結果を外部へ転送する第
3のステージとを巡回的に実施し、前記一の共有メモリ
以外の共有メモリに対しても、同様に前記第1乃至第3
のステージを巡回的に実施するよう、かつ、同時刻には
異なるステージを実行するよう制御することを特徴とす
る請求項1記載の高速演算装置。
2. The arithmetic unit instructs the bus connection control unit to connect one of the N shared memories to the input control unit and issues the input instruction. A first stage for transferring data from the outside, and instructing the bus connection control unit to connect the one shared memory and the operation unit to perform a predetermined operation on the data from the one shared memory. A second stage for storing the operation result in the one shared memory, and instructing the bus connection control unit to connect the one shared memory to the output control unit, and issuing the output instruction. And a third stage of transferring the operation result stored in the one shared memory to the outside. The third stage is performed cyclically, and the first through the third stages are similarly performed for shared memories other than the one shared memory. Third
2. The high-speed operation apparatus according to claim 1, wherein the control is performed so as to cyclically execute the stages and execute different stages at the same time.
【請求項3】 個別に書き込み、読出しが可能な2個以
上に分割された共有メモリと、 前記共有メモリと選択的にバス接続するバス接続制御部
と、 前記バス接続制御部を介して接続されている第1の共有
メモリに、入力指示に従いデータを外部から転送して格
納し、出力指示に従い格納データを外部へ転送する入出
力制御部と、 前記バス接続制御部を介して接続されている第2の共有
メモリから読み出したデータに対して所定の演算を実行
し、その演算結果を当該第2の共有メモリに書き込むと
共に、装置内の各部に指示を発する演算部とを有し、前
記演算部は前記2個以上の共有メモリの巡回的な切り替
え接続を前記バス接続制御部に対し指示すると共に、前
記入出力制御部に対し前記入力指示及び前記出力指示の
一方を発することを特徴とする高速演算装置。
3. A shared memory divided into two or more units that can be individually written and read, a bus connection control unit selectively connected to the shared memory via a bus, and a bus connection control unit connected via the bus connection control unit. An input / output control unit that transfers data from the outside in accordance with an input instruction and stores the data in accordance with an input instruction, and transfers the stored data to the outside in accordance with an output instruction; An operation unit for executing a predetermined operation on the data read from the second shared memory, writing the operation result in the second shared memory, and issuing an instruction to each unit in the device; The unit instructs the bus connection control unit to perform a cyclic switching connection of the two or more shared memories, and issues one of the input instruction and the output instruction to the input / output control unit. High-speed computing device.
【請求項4】 3以上の書き込み/読み出しポートを有
するM個(Mは3以上の整数)のマルチポートメモリ
と、 それぞれ第1の書き込み/読み出しポートに接続されて
いる前記M個のマルチポートメモリのうち第1のマルチ
ポートメモリに、入力指示に従いデータを外部から転送
して格納する入力制御部と、 それぞれ第2の書き込み/読み出しポートに接続されて
いる前記M個のマルチポートメモリのうち第2のマルチ
ポートメモリから読み出したデータに対して所定の演算
を実行し、その演算結果を当該第2のマルチポートメモ
リに書き込むと共に、装置内の各部に指示を発する演算
部と、 それぞれ第3の書き込み/読み出しポートに接続されて
いる前記M個のマルチポートメモリのうち第3のマルチ
ポートメモリから、出力指示に従いデータを読み出して
外部へ転送する出力制御部とを有し、前記演算部は、当
該演算部に接続される前記第2のマルチポートメモリを
それ以前に前記入力制御部に接続された前記第1のマル
チポートメモリとし、前記出力制御部に接続される前記
第3のマルチポートメモリをそれ以前に前記演算部に接
続された第2のマルチポートメモリとし、前記入力制御
部に接続される前記第1のマルチポートメモリをそれ以
前に前記出力制御部に接続された前記第3のマルチポー
トメモリとするように、前記M個のマルチポートメモリ
の巡回的な切り替え接続を行うと共に、前記入力制御部
に対し前記入力指示を発し、前記出力制御部に対し前記
出力指示を発することを特徴とする高速演算装置。
4. A multiport memory having M (M is an integer of 3 or more) multiport memories having three or more write / read ports, and the M multiport memories connected to the first write / read ports, respectively. An input control unit for externally transferring and storing data in accordance with an input instruction in a first multiport memory; and an input control unit of the M multiport memories connected to a second write / read port, respectively. A predetermined operation is performed on the data read from the second multiport memory, the operation result is written in the second multiport memory, and an operation unit that issues an instruction to each unit in the apparatus is provided. According to an output instruction from a third multiport memory among the M multiport memories connected to the write / read port, An output control unit that reads data and transfers the read data to the outside, wherein the arithmetic unit is configured to store the second multiport memory connected to the arithmetic unit with the first multiport memory previously connected to the input control unit. And the third multiport memory connected to the output control unit is a second multiport memory previously connected to the arithmetic unit, and the third multiport memory connected to the input control unit is The M multi-port memories are cyclically switched so that one multi-port memory is the third multi-port memory previously connected to the output control unit. Wherein the input instruction is issued to the control unit and the output instruction is issued to the output control unit.
【請求項5】 前記演算部は、前記入力制御部に前記入
力指示を発して前記M個のマルチポートメモリのうちの
一のマルチポートメモリに対しデータを外部から転送す
る第1のステージと、当該一のマルチポートメモリから
のデータに対し所定の演算を実施し、その演算結果を当
該一のマルチポートメモリに格納する第2のステージ
と、前記出力制御部に前記出力指示を発して当該一のマ
ルチポートメモリに格納されている前記演算結果を外部
へ転送する第3のステージとを巡回的に実施し、前記一
のマルチポートメモリ以外のマルチポートメモリに対し
ても、同様に前記第1乃至第3のステージを巡回的に実
施するよう、かつ、同時刻には異なるステージを実行す
るよう制御することを特徴とする請求項4記載の高速演
算装置。
5. A first stage for issuing the input instruction to the input control unit and externally transferring data to one of the M multiport memories, and A second stage for performing a predetermined operation on the data from the one multiport memory and storing the operation result in the one multiport memory; and issuing the output instruction to the output control unit to output the one And a third stage for transferring the operation result stored in the multiport memory to the outside. The third stage is similarly performed for the multiport memories other than the one multiport memory. 5. The high-speed arithmetic device according to claim 4, wherein control is performed so as to cyclically execute the third to third stages and to execute different stages at the same time.
【請求項6】 2以上の書き込み/読み出しポートを有
する複数のマルチポートメモリと、 それぞれ第1の書き込み/読み出しポートに接続されて
いる前記複数のマルチポートメモリのうち第1のマルチ
ポートメモリに、入力指示に従いデータを外部から転送
して格納し、出力指示に従い格納データを外部へ転送す
る入出力制御部と、 それぞれ第2の書き込み/読み出しポートに接続されて
いる前記複数のマルチポートメモリのうち第2のマルチ
ポートメモリから読み出したデータに対して所定の演算
を実行し、その演算結果を当該第2のマルチポートメモ
リに書き込むと共に、装置内の各部に指示を発する演算
部とを有し、前記演算部は前記複数のマルチポートメモ
リを巡回的に切り替えると共に、前記入出力制御部に対
し前記入力指示及び前記出力指示の一方を発することを
特徴とする高速演算装置。
6. A plurality of multi-port memories having two or more write / read ports, and a first multi-port memory of the plurality of multi-port memories connected to the first write / read port, respectively. An input / output control unit for externally transferring and storing data in accordance with an input instruction, and transferring stored data to an external unit in accordance with an output instruction; and an input / output control unit of the plurality of multi-port memories respectively connected to a second write / read port An arithmetic unit for performing a predetermined operation on the data read from the second multiport memory, writing the operation result to the second multiport memory, and issuing an instruction to each unit in the device; The arithmetic unit cyclically switches between the plurality of multi-port memories, and inputs and outputs the input instruction to the input / output control unit. Fast arithmetic apparatus characterized by emitting one of the output instruction.
JP10277102A 1998-09-30 1998-09-30 High-speed arithmetic unit Pending JP2000112881A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10277102A JP2000112881A (en) 1998-09-30 1998-09-30 High-speed arithmetic unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10277102A JP2000112881A (en) 1998-09-30 1998-09-30 High-speed arithmetic unit

Publications (1)

Publication Number Publication Date
JP2000112881A true JP2000112881A (en) 2000-04-21

Family

ID=17578816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10277102A Pending JP2000112881A (en) 1998-09-30 1998-09-30 High-speed arithmetic unit

Country Status (1)

Country Link
JP (1) JP2000112881A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005286277A (en) * 2004-03-31 2005-10-13 Hitachi Ltd Semiconductor integrated circuit and method for developing semiconductor integrated circuit
US7636281B2 (en) 2000-10-04 2009-12-22 Gs Ip Limited Liability Company Replaying digital media
JP2015011554A (en) * 2013-06-28 2015-01-19 富士通株式会社 Data acquisition apparatus and data acquisition program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636281B2 (en) 2000-10-04 2009-12-22 Gs Ip Limited Liability Company Replaying digital media
US7940802B2 (en) 2000-10-04 2011-05-10 Gs Ip, Llc Replaying digital media
JP2005286277A (en) * 2004-03-31 2005-10-13 Hitachi Ltd Semiconductor integrated circuit and method for developing semiconductor integrated circuit
JP4566602B2 (en) * 2004-03-31 2010-10-20 株式会社日立製作所 Development method of semiconductor integrated circuit
JP2015011554A (en) * 2013-06-28 2015-01-19 富士通株式会社 Data acquisition apparatus and data acquisition program

Similar Documents

Publication Publication Date Title
JPH04230558A (en) Direct-memory access apparatus
JP3693013B2 (en) Data processing system, array type processor, data processing apparatus, computer program, information storage medium
JP2000112881A (en) High-speed arithmetic unit
JP3861898B2 (en) Data processing system, array type processor, data processing apparatus, computer program, information storage medium
JPH10187599A (en) Digital signal processor
JP2004213666A (en) Dma module and its operating method
JPS6048504A (en) Connection system of sequence controller
SU1683039A1 (en) Device for data processing for multiprocessor system
JPS62182857A (en) Input and output controller
JP2962431B2 (en) Programmable controller
JPH0594366A (en) Microcomputer
JP2000148443A (en) Storage device
JP3574181B2 (en) Data processing device
JPS61292741A (en) General-purpose register
JPS6043757A (en) Microcomputer of one chip
JP3270040B2 (en) Bus control method
JPS62224849A (en) Data processing system
JPH01266651A (en) Semiconductor memory device
JPS63307529A (en) Inter-arithmetic processing unit communication control system
JPH03147046A (en) Data processor
JPH0668055A (en) Digital signal processor
JPH02297222A (en) Central processing unit
JPS6385857A (en) Data transfer system between processor and memory
JPH01233515A (en) Information processor
JPH0378855A (en) Data transfer circuit