JPH01244526A - data transfer device - Google Patents
data transfer deviceInfo
- Publication number
- JPH01244526A JPH01244526A JP63072455A JP7245588A JPH01244526A JP H01244526 A JPH01244526 A JP H01244526A JP 63072455 A JP63072455 A JP 63072455A JP 7245588 A JP7245588 A JP 7245588A JP H01244526 A JPH01244526 A JP H01244526A
- Authority
- JP
- Japan
- Prior art keywords
- data
- processing
- transfer
- transfer destination
- 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
Links
Landscapes
- Advance Control (AREA)
Abstract
Description
【発明の詳細な説明】
産業上の利用分野
本発明は、固定長のビットからなるワードをアクセス単
位とする記憶装置を用いたデータ処理システムにおける
データ転送装置に関するものである。DETAILED DESCRIPTION OF THE INVENTION Field of the Invention The present invention relates to a data transfer device in a data processing system using a storage device whose access unit is a word of fixed length bits.
従来の技術
従来のデータ転送装置にとして、は、例えば特開昭61
−15796.2号公報(データ転送装置)に示されて
いる。2. Prior Art Conventional data transfer devices include, for example, Japanese Patent Laid-Open No. 61
-15796.2 (data transfer device).
第3図はこの従来のデータ転送装置のブロック図を示す
ものであり、31は転送元のデータを格納するデータキ
ュ、32は、データキュ31の有効な先頭番地をさすポ
インタで、データが内部バスに出力すると次の有効アド
レスをさす。33は内部バスに出力されたデータを格納
するバッファレジスタ、34は前記バッファレジスタ3
3の内容を格納する一時レジスタ、35は前記−時レシ
スタの出力を第1の入力、前記内部バス、上のデータを
第2の入力とし、この第1、第2の入力を連結した2ワ
ードのうち任意のヒツトより連続した1ワ一ド分のデー
タを出力するバレルシフタ、36は前記バレルシフタの
出力を格納するデータバッファレジスタ、37は前記デ
ータバッファレジスタの出力と、対応する転送先のデー
タとの間に任意の演算を行う演算器を示す。FIG. 3 shows a block diagram of this conventional data transfer device. Numeral 31 is a data queue for storing transfer source data. Numeral 32 is a pointer pointing to a valid starting address of the data queue 31. When output to the bus, it points to the next valid address. 33 is a buffer register that stores data output to the internal bus; 34 is the buffer register 3;
A temporary register 35 stores the contents of the above-mentioned - time register as a first input, data on the above-mentioned internal bus as a second input, and 35 is a 2-word concatenation of the first and second inputs. 36 is a data buffer register that stores the output of the barrel shifter; 37 is the output of the data buffer register and the data of the corresponding transfer destination; 36 is a data buffer register that stores the output of the barrel shifter; This shows an arithmetic unit that performs arbitrary calculations during this period.
以上のように構成された従来のデータ転送装置において
は、記憶装置の転送元アドレスからデータキュ31にデ
ータが読み込まれ、−時レジスタバッファ33および一
時しシスタ34を用いて2ワード長のデータをバレルシ
フタ35上に構成し、任意のビット位置から1ワ一ド分
のデータをデータバッファレジスタ36に出力する。デ
ータバッファレジスタ36の内容と対応する転送先のデ
ータとの演算を演算器37で行い、出力を記憶装置の対
応するワードに書き込む。In the conventional data transfer device configured as described above, data is read into the data queue 31 from the transfer source address of the storage device, and 2-word length data is transferred using the -hour register buffer 33 and temporary register buffer 34. It is configured on the barrel shifter 35 and outputs one word worth of data from an arbitrary bit position to the data buffer register 36. The arithmetic unit 37 performs arithmetic operations on the contents of the data buffer register 36 and the corresponding transfer destination data, and writes the output to the corresponding word of the storage device.
発明が解決しようとする課題
上記の構成ではデータキュ、バレルシフタ、演算器を並
行して動作させることにより並列処理、所謂パイプライ
ン処理が可能である。しかし、転送しようとする総ての
データを処理するためには、まずデータキュ、バレルシ
フタ、演算器にデータを用意する前処理、各データを並
行して処理するパイプライン処理、最後に処理されずに
パイプライン」二に残っているデータを処理し、出力す
る後処理が必要である。特に後処理は、パイプライン処
理実行中に転送データの終了を検出し、パイプライン処
理を処理を中止し、その後に行われるものであり、その
制御は、終了検出、パイプライン処理の中止、後処理の
実行という様に複雑になるという問題点が存在していた
。Problems to be Solved by the Invention In the above configuration, parallel processing, so-called pipeline processing, is possible by operating the data queue, barrel shifter, and arithmetic unit in parallel. However, in order to process all the data to be transferred, first there is pre-processing that prepares the data for the data cue, barrel shifter, and arithmetic unit, then pipeline processing that processes each piece of data in parallel, and finally, the unprocessed data. Post-processing is required to process and output the remaining data in the second pipeline. In particular, post-processing is performed after detecting the end of transferred data during pipeline processing, stopping the pipeline processing, and controlling the end by detecting the end, stopping pipeline processing, and post-processing. There was a problem in that the execution of processing became complicated.
本発明はかかる点を鑑み、上記のデータ転送装置のパイ
プライン処理の制御を容易にならしめ、データ転送を簡
易かつ高速に行うデータ転送装置を提供することを目的
とする。In view of the above, it is an object of the present invention to provide a data transfer device that facilitates control of the pipeline processing of the data transfer device and performs data transfer simply and at high speed.
課題を解決するための手段
本発明は、転送元データを格納するデータキュと、転送
元データ領域と転送先データ領域間のヒツト位置あわぜ
回路と、転送先データ領域のワードに整合した転送先デ
ータを格納するレジスタと、転送先アドレスを管理し転
送先領域の終点を検出する出力アドレス管理部から構成
されるデータ転送装置である。Means for Solving the Problems The present invention provides a data queue for storing source data, a hit position matching circuit between the source data area and the destination data area, and a transfer destination that matches the words of the destination data area. This data transfer device includes a register that stores data and an output address management section that manages the transfer destination address and detects the end point of the transfer destination area.
作 用
本発明は前記した構成により、転送先のデータ領域のワ
ードに整合した転送処理を行う機能とともに、転送先デ
ータ領域の終点を検出するアドレス管理部を備えること
で、パイプライン処理の終了に応じてデータ転送処理の
制御を動的に変化させ、パイプライン処理の後処理のた
めの制御を省略することができる。Effect of the Invention The present invention has the above-described configuration, and has the function of performing transfer processing consistent with the words of the transfer destination data area, as well as an address management section that detects the end point of the transfer destination data area, thereby making it possible to terminate pipeline processing. Control of data transfer processing can be dynamically changed accordingly, and control for post-processing of pipeline processing can be omitted.
実施例
第1図は本発明の一実施例におけるデータ転送装置のブ
ロック図である。第1図において、1は転送元のデータ
を格納するデータキュ、2はデータキュ1の有効な先頭
アドレスをさすデータキュ・ポインタで、データキュ1
の内容が出力されると次の有効アドレスをさす。ただし
、後述の出力アドレス管理部8から終点検出の信号が送
られてきたときには、このポインタの更新はおこなわれ
ない。3は内部バスの内容を指定されたタイミングで格
納するバッファレジスタで、第2のタイミングで次の一
時レジスタ4へ内容を出力する。4は前記−時レジスタ
バッファの内容を指定された第2のタイミングで格納す
る一時レジスタ、5は一時レジスタからの出力を第1の
入力とし、前記゛内部バス上の内容を第2の入力とし、
この第1、第2の入力を連結したワードのうち任意のビ
ットより連続した1ワ一ド分のデータを出力するバレル
シフタ、6は前記バレルシフタの出力を格納するデータ
バッファレジスタ、7は転送先ワードの内容と前記デー
タバッファレジスタの内容との間で任意の演算を行う演
算器、8は転送先アドレスを保持し、次の転送先アドレ
スを計算し、転送領域の終点を検出し検出信号を前記デ
ータキュ・ポインタ2へ出力する出力アドレス管理部で
ある。Embodiment FIG. 1 is a block diagram of a data transfer device in an embodiment of the present invention. In Figure 1, 1 is a data queue that stores the data of the transfer source, 2 is a data queue pointer that points to the valid start address of data queue 1,
When the contents of are output, it points to the next valid address. However, when an end point detection signal is sent from the output address management unit 8, which will be described later, this pointer is not updated. A buffer register 3 stores the contents of the internal bus at a designated timing, and outputs the contents to the next temporary register 4 at a second timing. 4 is a temporary register that stores the contents of the above-mentioned time register buffer at a specified second timing; 5 is a temporary register which takes the output from the temporary register as the first input, and uses the contents on the internal bus as the second input. ,
A barrel shifter outputs one consecutive word of data from an arbitrary bit of the word that connects the first and second inputs, 6 is a data buffer register that stores the output of the barrel shifter, 7 is a transfer destination word An arithmetic unit 8 performs an arbitrary operation between the contents of the data buffer register and the contents of the data buffer register, and an arithmetic unit 8 holds the transfer destination address, calculates the next transfer destination address, detects the end point of the transfer area, and sends the detection signal to the This is an output address management unit that outputs to the data queue pointer 2.
以上のように構成されたこの実施例のデータ転送装置に
ついて、以下その動作を第2図を例にして説明する。第
2図はこの実施例の動作説明図で、同図(a)の斜線で
示した転送元データ領域を(b)の斜線で示した転送先
データ領域へ転送する場合を例にパイプライン中処理と
、その前処理、後処理について説明する。The operation of the data transfer apparatus of this embodiment configured as described above will be explained below using FIG. 2 as an example. FIG. 2 is an explanatory diagram of the operation of this embodiment, showing the case where the transfer source data area indicated by diagonal lines in FIG. 2(a) is transferred to the destination data area indicated by diagonal lines in FIG. The processing, its pre-processing, and post-processing will be explained.
パイプライン処理の前処理とは、パイプライン処理を行
うために必要なデータを用意する処理のことで、この実
施例では、データバッファレジスタデータバッファレシ
スタ6に転送先データ領域のワードに整合した転送元デ
ータを格納する処理である。第2図(a)、(b)の例
の場合、データキュ1に格納された転送元データが内部
バスに出力され、これをバレルシフタ5が格納し、ビッ
ト位置あわせ後、データバッファレジスタ6へ出力する
という処理である。このとき出力アドレス管理部8から
終了信号が出力されていなければデータキュ・ポインタ
2は更新され、データキュ1にある次の有効データのあ
る位置をさす。この状態図を第2図(C)に示す。パイ
プライン処理とは、用意されたデータに対して指定され
た処理を行うと同時に次のデータを用意するという並列
処理のことで、この実施例では、データバッファレジス
タ6が保持している転送先ワードに整合した転送元デー
タ(以下転送データと呼ぶ)を転送するという外部処理
と、次の転送データをデータバッファレジスタ6に格納
するという並列処理である。外部処理として、まずデー
タバッファレジスタ6の内容を演算器7の第1の入力と
して出力する。と同時に外部データバスを通して転送先
ワードの内容が演算器7へ第2の入力として転送されて
くる。Pre-processing for pipeline processing is processing for preparing data necessary for pipeline processing. This is the process of storing the transfer source data. In the case of the examples shown in FIGS. 2(a) and 2(b), the transfer source data stored in data queue 1 is output to the internal bus, stored by barrel shifter 5, and after bit alignment, transferred to data buffer register 6. This is the process of outputting. At this time, if the end signal is not output from the output address management section 8, the data queue pointer 2 is updated to point to the position of the next valid data in the data queue 1. This state diagram is shown in FIG. 2(C). Pipeline processing is parallel processing in which specified processing is performed on prepared data and the next data is prepared at the same time. In this embodiment, the transfer destination held in the data buffer register 6 These are an external process of transferring source data (hereinafter referred to as transfer data) that matches the word, and a parallel process of storing the next transfer data in the data buffer register 6. As external processing, first, the contents of the data buffer register 6 are outputted as the first input of the arithmetic unit 7. At the same time, the contents of the destination word are transferred to the arithmetic unit 7 as a second input via the external data bus.
この2人力に対して演算器7では予め指定された任意の
演算をおこない、結果を転送先へ出力する。このとき出
力アドレス管理部8では、転送データが転送先へ出力さ
れてから次の転送先アドレスを求める。次の転送先アド
レスが転送先領域の終了ワードと一致したときは、出力
アドレス管理部8はデータキュ・ポインタ2へ転送終了
信号を出力する。また内部処理としては以下の処理が行
われる。先ずデータバッファレジスタ6は演算器7へ出
力後、バレルシフタ5の内容を指定のビット位置から1
ワ一ド分格納する。次にデータキュ1が内部バスにデー
タキュ・ポインタ2で示されるデータを出力し、−時レ
ジスタ4の内容と共にバレルシフタ5に格納される。バ
ッファレジスタ3の内容は一時しシスタ4の出力後、−
時レジスタ4へ格納され、ついでバッファレジスタ3−
2はデータキュ1からデータバッファレジスタ6へ出力
した内容と同じ内容が内部バスを通して格納される。以
上の動作結果を第2図(d)に示す。以下パイプライン
処理が必要な回数だけ繰り返される。The arithmetic unit 7 performs any predetermined arithmetic operation on these two human forces, and outputs the result to the destination. At this time, the output address management section 8 determines the next transfer destination address after the transfer data is output to the transfer destination. When the next transfer destination address matches the end word of the transfer destination area, the output address management unit 8 outputs a transfer end signal to the data queue pointer 2. Furthermore, the following internal processing is performed. First, the data buffer register 6 outputs the contents of the barrel shifter 5 to the arithmetic unit 7, and then converts the contents of the barrel shifter 5 to 1 from the designated bit position.
Stores one word. Next, the data cue 1 outputs the data indicated by the data cue pointer 2 to the internal bus, and is stored in the barrel shifter 5 together with the contents of the - hour register 4. The contents of buffer register 3 are temporarily stored, and after the output of sister 4, -
is stored in time register 4, and then buffer register 3-
2, the same content as that output from data queue 1 to data buffer register 6 is stored through the internal bus. The results of the above operation are shown in FIG. 2(d). The pipeline processing is repeated as many times as necessary.
第2図(e)はパイプライン処理の次の回における状態
図である。最後に後処理は、パイプライン上に処理され
ずに残っているデータを最後まで出力する所謂後始末の
処理であるが、この実施例ではパイプライン処理と同様
にデータバッファレジスタ6に格納されているデータを
転送する外部処理とデータバッファレジスタ6に新しい
データを格納する内部処理が行われる。しかし、この場
合は出力アドレス管理部の終点検出信号が出力されてい
るので、データキュ・ポインタ2の更新が行われず、デ
ータキュ1からは同じデータが繰り返し出力されデータ
バッファレジスタ6には無意味なデ一タが格納される。FIG. 2(e) is a state diagram for the next round of pipeline processing. Finally, post-processing is a so-called clean-up process that outputs the data remaining unprocessed on the pipeline to the end, but in this embodiment, the data is stored in the data buffer register 6 as in pipeline processing. External processing for transferring existing data and internal processing for storing new data in data buffer register 6 are performed. However, in this case, since the end point detection signal of the output address management section is output, data queue pointer 2 is not updated, and the same data is repeatedly output from data queue 1, meaningless to data buffer register 6. data is stored.
従って、後処理では外部処理のみが実行されたと同じ効
果となる。この状態図を第2図(f)に示す。Therefore, the post-processing has the same effect as if only external processing had been executed. This state diagram is shown in FIG. 2(f).
以上のように、この実施例ではパイプライン処理の後処
理をパイプライン中処理と同じ処理として取り扱うこと
ができる。このことはマイクロプログラムで制御する装
置であればパイプライン処理の命令だけを用意すればパ
イプラインの後処理も行うことができ、命令体系の簡素
化並びに制御記憶装置の容量の低減が図れる。As described above, in this embodiment, post-processing of pipeline processing can be treated as the same processing as mid-pipeline processing. This means that if the device is controlled by a microprogram, post-processing of the pipeline can be performed by preparing only instructions for pipeline processing, and the instruction system can be simplified and the capacity of the control storage device can be reduced.
なお、この実施例では、各レジスタが直接接続されてい
る構造を示したが、これはデータの流れを明確にするた
めに用いただけで、特開昭61−157962号広報(
データ転送装置)の実施例の様に共通バスによって各レ
ジスタが繋がれている構造のものでも、各レジスタ間の
データ転送が共通バス上で重複せずに行われる構造であ
れば各レジスタ間のデータ転送の順序を制御することに
より、レジスタ間の直接接続された上記の実施例と同様
に制御が簡易化される。Although this embodiment shows a structure in which each register is directly connected, this is only used to clarify the flow of data;
Even if the structure is such that each register is connected by a common bus as in the example of the data transfer device), if the structure is such that data transfer between each register is performed on the common bus without duplication, Controlling the order of data transfer simplifies control, similar to the above-described embodiment in which registers are directly connected.
発明の効果
以」二説明したように、本発明ではビット位置あわぜ処
理とデータ転送処理を並行に行う場合、これまではパイ
プライン処理およびその前処理・後処理という複雑な制
御を行う必要があったのに対し、パイプライン処理とそ
の後処理とを統一的に制御することによりパイプライン
処理全体の制御を簡易にし、パイプライン処理を簡便に
利用可能とすることができ、その実用的効果は大きい。As explained in ``2, Effects of the Invention'', in the present invention, when performing bit position agitation processing and data transfer processing in parallel, it was previously necessary to perform complex control such as pipeline processing and its pre-processing and post-processing. However, by uniformly controlling pipeline processing and subsequent processing, the overall control of pipeline processing can be simplified and pipeline processing can be easily used, and its practical effects are as follows: big.
第1図は本発明の一実施例におけるデータ転送装置のブ
ロック図、第2図は同実施例の動作説明図、第3図は従
来のデータ転送装置のブロック図である。
1.31・・・データキュ、
2.32・・・データキュ・ポインタ、3.33・・・
バッフ・/レジスタ、
4.34・・・−時レジスタ、
5.35・・・バレルシフタ、
6.36・・・データバッファレジスタ、−同一
7.37・・・演算器、8・・・出力アドレス管理部。
代理人の氏名 弁理士 中尾敏男 ほか1名第2図
第2図FIG. 1 is a block diagram of a data transfer device according to an embodiment of the present invention, FIG. 2 is an explanatory diagram of the operation of the same embodiment, and FIG. 3 is a block diagram of a conventional data transfer device. 1.31...Data cue, 2.32...Data cue pointer, 3.33...
Buffer/register, 4.34...-Hour register, 5.35...Barrel shifter, 6.36...Data buffer register, -same 7.37...Arithmetic unit, 8...Output address Management Department. Name of agent: Patent attorney Toshio Nakao and one other personFigure 2Figure 2
Claims (1)
と、転送元のデータを格納し順次データを前記内部バス
へ出力するデータキュと、前記データキュから出力され
たデータを格納し、指定されたタイミングで出力するレ
ジスタバッファと、前記レジスタバッファの出力と、前
記内部バス上のデータとを連続した2ワードのデータと
して格納し任意のビット位置から連続した1ワードのデ
ータを出力するバレルシフタと、前記バレルシフタ上に
あるデータを格納するデータバッファと、対応する転送
先の1ワードのデータと前記データバッファ上のデータ
との間で所望の演算を行う演算器、および対応する転送
先のアドレスを保持かつ次の転送先アドレスを求め、終
点アドレスを検出する出力アドレス管理部を備え、前記
演算の出力を転送することを特徴とするデータ転送装置
。An internal bus with a width of one word consisting of multiple bits, a data queue that stores the data of the transfer source and sequentially outputs the data to the internal bus, and a data queue that stores the data output from the data queue and that is designated as a barrel shifter that stores the output of the register buffer and the data on the internal bus as two consecutive words of data and outputs one consecutive word of data from an arbitrary bit position; A data buffer that stores data on the barrel shifter, an arithmetic unit that performs a desired operation between one word of data on the corresponding transfer destination and the data on the data buffer, and holds the address of the corresponding transfer destination. What is claimed is: 1. A data transfer device, further comprising an output address management unit that obtains a next transfer destination address and detects an end point address, and transfers the output of the calculation.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63072455A JPH01244526A (en) | 1988-03-25 | 1988-03-25 | data transfer device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63072455A JPH01244526A (en) | 1988-03-25 | 1988-03-25 | data transfer device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01244526A true JPH01244526A (en) | 1989-09-28 |
Family
ID=13489796
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63072455A Pending JPH01244526A (en) | 1988-03-25 | 1988-03-25 | data transfer device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01244526A (en) |
-
1988
- 1988-03-25 JP JP63072455A patent/JPH01244526A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH01237864A (en) | Dma transfer controller | |
| JPH04245324A (en) | Arithmetic unit | |
| JPH01244526A (en) | data transfer device | |
| JPH01214902A (en) | Programmable controller | |
| KR920002830B1 (en) | Direct Memory Access Control | |
| US5677996A (en) | Fuzzy computer | |
| JPH0398163A (en) | Vector data processor | |
| JPH0277937A (en) | Device and method for transfer of data | |
| JPS62221059A (en) | Central processing unit | |
| JPS61151745A (en) | Interruption processing system | |
| JPS60250438A (en) | Information processor | |
| JPH04245333A (en) | information processing equipment | |
| JPH0792902A (en) | Programmable controller | |
| JPH0343865A (en) | Vector data processor | |
| JPH01177143A (en) | Memory writing interface circuit | |
| JPS6113345A (en) | Processor of tagged data | |
| JPH01118926A (en) | Pipeline processor | |
| JPH03149656A (en) | Arithmetic circuit | |
| JPS63298662A (en) | data transfer device | |
| JPH05281290A (en) | Data transfer circuit of ic tester sharing storage circuit | |
| JPH06161708A (en) | Floating point arithmetic unit | |
| JPH10320380A (en) | Vector processor | |
| JPH03129430A (en) | Processor capable of repeatly designating parameter | |
| JPH03154925A (en) | Arithmetic processor | |
| JPH04111149A (en) | Circuit system for dma device |