JPS63173141A - Memory interface circuit - Google Patents

Memory interface circuit

Info

Publication number
JPS63173141A
JPS63173141A JP399287A JP399287A JPS63173141A JP S63173141 A JPS63173141 A JP S63173141A JP 399287 A JP399287 A JP 399287A JP 399287 A JP399287 A JP 399287A JP S63173141 A JPS63173141 A JP S63173141A
Authority
JP
Japan
Prior art keywords
token
data
memory
write
input
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
JP399287A
Other languages
Japanese (ja)
Inventor
Kaoru Uchida
薫 内田
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP399287A priority Critical patent/JPS63173141A/en
Publication of JPS63173141A publication Critical patent/JPS63173141A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To realize an exact write operation, by inputting an incremental write (IW) address set token and an IW token from a data flow processor to an interface circuit. CONSTITUTION:When an incremental operation is performed, a data flag and an IW flag input the IW address write set tokens of 0 and 1 from the data porcessor 22 a memory interface circuit 10 respectively. In a circuit 10, an address which becomes the base of the IW is set at an address register 11 by setting a latch signal S118 to the address register 11 at 1. Next, the number of times of write of the IW token is inputted from the processor 22 to the circuit 10. The circuit 10, after completing the input/output operation of the token, latches the data on a register 13 by setting a latch signal S117 to a register 13 at 1, and writes the value of the register 11 on a memory 20 by setting a memory read/write signal S105 at 1.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、メモリインタフェース回路に関し、特にデー
タフロープロセッサからメモリに対する読み出し・書き
込みの動作を実行するメモリインタフェース回路に関す
る。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a memory interface circuit, and particularly to a memory interface circuit that executes read/write operations from a data flow processor to a memory.

〔従来の技術〕[Conventional technology]

従来、データフロープロセッサとして、日本電気株式会
社製のμP07281がある。また、このデータフロー
プロセッサを用いた演算処理システムにおけるメモリイ
ンタフェース回路として、日本電気株式会社製のμPD
9305がある。
Conventionally, there is μP07281 manufactured by NEC Corporation as a data flow processor. In addition, as a memory interface circuit in an arithmetic processing system using this data flow processor, μPD manufactured by NEC Corporation is used.
There is 9305.

このμPD9305のメモリアクセス動作について説明
すると、この回路はデータフロ一方式でデータ転送及び
演算処理を行っており、入出力されるデータの単位はト
ークンとよばれる。トークンはデータ値を持つデータ部
と、このトークンの意味を示す識別子と、トークンの行
き先を示すデスティネーションタグなどとから構成され
たデータ単位である。
To explain the memory access operation of this μPD9305, this circuit transfers data and performs arithmetic processing using a data flow method, and the unit of input/output data is called a token. A token is a data unit composed of a data portion having a data value, an identifier indicating the meaning of this token, a destination tag indicating the destination of the token, and the like.

例えばメモリ読み出しの場合には、読み出しアドレスで
あるデータ部、読み出しアドレスを持つリードトークン
であることを示す識別子及びメモリインタフェース回路
を行き先とするデスティネーションタグを有するリード
トークンをメモリインタフェース回路に入力する。
For example, in the case of memory reading, a read token having a data portion which is a read address, an identifier indicating that the token is a read token having a read address, and a destination tag whose destination is the memory interface circuit is input to the memory interface circuit.

メモリインタフェース回路はリードトークンが入力され
ると、メモリに対してトークンの持つ読み出しアドレス
とメモリ読み出し信号とを出力し、読み出し動作を指示
する。メモリはその指示に従って読み出し動作を実行し
、これが終了するとメモリインタフェース回路にアクセ
ス終了信号を発し、メモリインタフェース回路は読みだ
されたデータを含むトークンを生成、出力し、メモリ読
み出し動作を終了する。
When a read token is input, the memory interface circuit outputs a read address of the token and a memory read signal to the memory, and instructs a read operation. The memory executes the read operation according to the instruction, and when the read operation is completed, it issues an access end signal to the memory interface circuit, the memory interface circuit generates and outputs a token containing the read data, and ends the memory read operation.

またデータフロープロセッサで処理した結果をメモリに
書き込む場合には、書き込みデータであるデータ部、書
き込みデータを持つデータトークンであることを示す識
別子及びメモリインタフェース回路を行き先とするデス
ティネーションタグを有するデータトークンと、書き込
みアドレスであるデータ部、書き込みアドレスを持つラ
イトトークンであることを示す識別子及びメモリインタ
フェース回路を行き先とするデスティネーションタグを
有するライトトークンとを、この順序でメモリインタフ
ェース回路に入力する。
In addition, when writing the results processed by the data flow processor to memory, the data token has a data part that is write data, an identifier indicating that the data token has write data, and a destination tag that indicates the destination is the memory interface circuit. , a data portion which is a write address, an identifier indicating that the write token has a write address, and a write token having a destination tag whose destination is the memory interface circuit, are input to the memory interface circuit in this order.

メモリインタフェース回路はデータトークンが入力され
るとそのデータ部の書き込みデータをデータレジスタに
設定、保持し、その次のライトトークンが入力されると
、まずそのライトトークンのデータ部の書き込みアドレ
スをアドレスレジスタに設定した後、データレジスタか
ら読み出したライトデータと、アドレスレジスタに設定
した書き込みアドレスと、メモリ書き込み信号とをメモ
リに対して出力し、書き込み動作を指示する。メモリは
その指示に従って書き込み動作を実行し、これが終了す
るとメモリインタフェース回路にアクセス終了信号を発
し、メモリインタフェース回路はこれによりメモリ書き
込み動作を終了する。
When a data token is input, the memory interface circuit sets and holds the write data of the data section in the data register, and when the next write token is input, it first sets the write address of the data section of that write token in the address register. After setting, the write data read from the data register, the write address set in the address register, and a memory write signal are output to the memory to instruct a write operation. The memory executes the write operation according to the instruction, and when the write operation is completed, it issues an access end signal to the memory interface circuit, and the memory interface circuit thereby ends the memory write operation.

このようにして、メモリ書き込みの場合には、データフ
ロープロセッサで処理した結果をメモリインタフェース
回路によりメモリに書き込む。
In this way, in the case of memory writing, the results processed by the data flow processor are written into the memory by the memory interface circuit.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

ところで、このようなメモリインタフェース回路を用い
た装置において、データフロープロセッサによって処理
された結果のデータをメモリの連続したアドレスに書き
込む場合は、データフロープロセッサにおいてデータの
演算処理を行うのと平行してこれらのデータを書き込む
ためのアドレスの生成処理を行い、待ち合わせ処理によ
って演算で得られたデータを持つデータトークンと書き
込みアドレスを持つライトトークンとの同期を取ること
によって、交互にメモリインタフェース回路に対して出
力し、メモリインタフェース回路が−書き込み動作を行
うという手順をとることになる。
By the way, in a device using such a memory interface circuit, when writing data resulting from processing by a data flow processor to consecutive addresses in the memory, the data flow processor performs arithmetic processing on the data in parallel. By generating an address for writing these data and synchronizing the data token with the data obtained by the operation through the waiting process and the write token with the write address, the data is alternately sent to the memory interface circuit. Then, the memory interface circuit performs a write operation.

しかし、この場合、 (1)アドレス生成、待ち合わせをデータフロープロセ
ッサ上のプログラムによってソフトウェア的に実現しな
ければならないためデータフロープロセ・ノサにおける
ソフトウェアの負担が生ずる、(2)1つのデータの書
き込みについてデータフロープロセッサとメモリインタ
フェース回路を結ぶバスに2つのトークンが出力されバ
スがそれだけ占有される、 (3)1回の書き込みに2つのトークンが必要なため最
低2パイプラインクロツクかかる、という問題がある。
However, in this case, (1) Address generation and waiting must be realized in software by a program on the data flow processor, which creates a burden on the software on the data flow processor. (2) Regarding writing one data Two tokens are output to the bus connecting the data flow processor and the memory interface circuit, which occupies the bus accordingly. (3) Since one write requires two tokens, it takes at least two pipeline clocks. be.

本発明の目的は、データフロープロセッサ側の゛ソフト
ウェアの負担、及びデータフロープロセッサメモリイン
タフェース回路間のバス上のトークン転送量を上記のよ
うに増大させることなく、高速なメモリ書き込み動作を
実現するためのメモリインタフェース回路を提供するこ
とにある。
An object of the present invention is to realize high-speed memory write operations without increasing the software burden on the data flow processor side and the amount of token transfer on the bus between the data flow processor memory interface circuits as described above. The purpose of this invention is to provide a memory interface circuit.

C問題点を解決するための手段〕 本発明は、複数のデータフロープロセッサとメモリとに
接続されたメモリインタフェース回路において、 前記データフロープロセッサからデータの単位であるト
ークンを入力するトークン入力部と、前記メモリに対す
る書き込みデータを保持するためのデータレジスタと、 前記メモリに対する読み出し書き込みアドレスを保持す
るためのアドレスレジスタと、このアドレスレジスタに
保持された値に定数を加算する加算器と、 前記トークン入力部から入力されるデータと前記加算器
から入力されるデータのうちの一方を前記アドレスレジ
スタの入力として選択する手段と、前記メモリから読み
出したデータを用いて前記データフロープロセッサに対
して出力するトークンを生成し、出力する手段と、 前記トークン入力部からの信号に従ってメモリ読み出し
・書き込み動作とレジスタの更新とを制御する手段とを
備えることを特徴としている。
Means for Solving Problem C] The present invention provides a memory interface circuit connected to a plurality of data flow processors and a memory, comprising: a token input unit for inputting a token, which is a unit of data, from the data flow processor; a data register for holding write data for the memory; an address register for holding a read/write address for the memory; an adder for adding a constant to the value held in the address register; and the token input section. and means for selecting one of the data input from the adder and the data input from the adder as an input to the address register, and a token output to the data flow processor using the data read from the memory. The present invention is characterized by comprising means for generating and outputting the token, and means for controlling memory read/write operations and register updating according to the signal from the token input section.

〔作用〕[Effect]

本発明のメモリインタフェース回路は、データフロープ
ロセッサからトークン入力部に入力されたトークンの解
読結果により、これがデータ部のデータ値を用いてイン
クリメンタルライト動作を行うインクリメンタルライト
トークンであることを示す識別子を持つ場合には、予め
アドレスレジスタに設定されている値をアドレスとして
そのデータ部のデータをメモリに書き込みその後アドレ
スレジスタの値を1増加させるというインクリメンタル
ライト動作を行い、またこれがインクリメンタルライト
動作のためのベースとなるアドレスをデータ部にもつイ
ンクリメンタルライトアドレスセットトークンであるこ
とを示す識別子を持つ場合には、そのトークンのデータ
部の値をアドレスレジスタにセットするという動作を行
う。
The memory interface circuit of the present invention has an identifier that indicates that this is an incremental write token that performs an incremental write operation using the data value of the data section, based on the decoding result of the token input from the data flow processor to the token input section. In this case, an incremental write operation is performed in which the data in the data section is written to the memory using the value set in the address register in advance as an address, and then the value of the address register is increased by 1. This is also the base for the incremental write operation. If the token has an identifier indicating that it is an incremental write address set token having an address in the data field, the value of the data field of the token is set in the address register.

このようにして、インクリメンタルライトアドレスセン
トトークンによりアドレスレジスタに書き込みアドレス
がセットされた後にはデータフロープロセッサから本発
明のメモリインタフェース回路に対して1つの書き込み
データ値についてそれを持つインクリメンタルライトト
ークンによる1回のアクセスを行うだけで連続アドレス
に対するデータの書き込みを実現することができる。
In this way, after the write address is set in the address register by the incremental write address cent token, the data flow processor sends a single write data value to the memory interface circuit of the present invention once by the incremental write token with it. It is possible to write data to consecutive addresses simply by accessing the address.

〔実施例〕〔Example〕

次に、本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

第1図は本発明の一実施例を示す構成図である。FIG. 1 is a block diagram showing an embodiment of the present invention.

メモリインタフェース回路10はメモリアクセスコント
ローラ15、アドレスレジスタ11、データレジスタ1
3、トークン入力部16、トークン生成部17、トーク
ン出力部18、マルチプレクサ23、加算器24から構
成され、信号線100.101を介して互いに信号線1
02で接続されているデータフロープロセッサ21.2
2にそれぞれ接続され、信号線105〜108を介して
メモリ20に接続されている。
The memory interface circuit 10 includes a memory access controller 15, an address register 11, and a data register 1.
3. Consists of a token input section 16, a token generation section 17, a token output section 18, a multiplexer 23, and an adder 24, which are connected to each other via signal lines 100 and 101.
Data flow processor 21.2 connected at 02
2, and is connected to the memory 20 via signal lines 105 to 108.

このメモリインタフェース回路10はデータフロ一方式
でデータ転送及び演算処理を行う。
This memory interface circuit 10 performs data transfer and arithmetic processing using a data flow one-way system.

トークン入力部16は、データフロープロセッサ21か
らデータの単位であるトークンが入力される入力部であ
り、また、トークン出力部18は、トークン生成部I7
で生成されたトークンをデータフロープロセッサ22に
対して出力する出力部である。
The token input unit 16 is an input unit into which a token, which is a unit of data, is input from the data flow processor 21, and the token output unit 18 is an input unit that receives a token, which is a unit of data, from the data flow processor 21.
This is an output unit that outputs the generated token to the data flow processor 22.

トークン入力部16とトークン出力部17とは信号線1
14によって接続されている。この信号線114はトー
クン入力部16へ入力された入カドークンをそのまま通
過させる場合の信号線である。入出力されるデータの単
位であるトークンのデータフォーマットの一例を第2図
に示す。トークンはデータ値を持つデータ部86と、ト
ークンの行き先を示すデスティネーションタグ80と、
このトークンの意味を示す識別子等の情報を持つフィー
ルド81〜84とから構成される。具体的には、第2図
において、81がアドレス・データフラグ、82がリー
ド・ライトフラグ、83がインクリメンタルライトフラ
グ、84がデータトークン生成情報フィールドである。
The token input section 16 and the token output section 17 are connected to the signal line 1.
14. This signal line 114 is a signal line for allowing the input token input to the token input section 16 to pass through as is. FIG. 2 shows an example of the data format of a token, which is a unit of input/output data. The token includes a data portion 86 having a data value, a destination tag 80 indicating the destination of the token,
It is composed of fields 81 to 84 having information such as an identifier indicating the meaning of this token. Specifically, in FIG. 2, 81 is an address/data flag, 82 is a read/write flag, 83 is an incremental write flag, and 84 is a data token generation information field.

入カドークンがメモリ読み出し動作の場合のリードトー
クンのときは、後述のように、アドレス・データフラグ
81が“l″、リード・ライトフラグ82が“1゛であ
ることによって読み出しアドレスを持つリードトークン
であることが示される。
When the input token is a read token for a memory read operation, the address/data flag 81 is "l" and the read/write flag 82 is "1", as described later, so that it is a read token with a read address. It is shown that something is true.

メモリ書き込み動作の場合のデータトークンであるとき
は、アドレス・データフラグ81が0”、インクリメン
タルライトフラグ83がO”であることによって書き込
みデータを持つデータトークンであることが、また、ラ
イトトークンのときには、アドレス・データフラグ81
が11111、リード・ライトフラグ82が0″である
ことによって書き込みアドレスを持つライトトークンで
あることが、それぞれ示される。
When it is a data token for a memory write operation, the address/data flag 81 is 0'' and the incremental write flag 83 is O'', indicating that it is a data token with write data. , address/data flag 81
is 11111, and the read/write flag 82 is 0'', indicating that it is a write token with a write address.

データレジスタ13は、メモリ20に対する書き込みデ
ータを保持するためのレジスタであり、トークン入力部
16と信号線113によって接続されていると共に、メ
モリ20と信号線107によって、接続されており、信
号′!a107を介してデータレジスタ13からの信号
5107が書き込みデータとしてメモリ20へ与えられ
る。
The data register 13 is a register for holding write data to the memory 20, and is connected to the token input section 16 by a signal line 113, and also to the memory 20 by a signal line 107, and is connected to the signal '! A signal 5107 from the data register 13 is applied to the memory 20 as write data via a107.

アドレスレジスタ11は、メモリ20に対する読み出し
書き込みアドレスを保持するためのレジスタで、メモリ
20と信号線106によって接続されており、この信号
線106を介して、メモリ読み出し、メモリ書き込み時
にアドレスレジスタ11からの出力信号5106がアド
レスとしてメモリ20に与えられる。
The address register 11 is a register for holding read/write addresses for the memory 20, and is connected to the memory 20 by a signal line 106. Output signal 5106 is applied to memory 20 as an address.

加算器24は、このアドレスレジスタ11に保持された
値に定数を加算する加算器であり、アドレスレジスタ1
1の出力が一方の入力に供給されると共に、他方の入力
として“1”が入力されるようになっている。マルチプ
レクサ23は、トークン入力部16から入力されるデー
タとこの加算器24から入力されるデータのうちの一方
をアドレスレジスタ11への入力として選択する手段で
、トークン入力部16と信号fil13によって、また
加算器24と信号線109によって接続されており、選
択出力は信号wA112を介してアドレスレジスタ11
に与えられるようになっている。選択のための制御信号
は従来のようにメモリアクセスコントローラ15から信
号線110を介して与えられる。
The adder 24 is an adder that adds a constant to the value held in the address register 11.
An output of "1" is supplied to one input, and "1" is input as the other input. The multiplexer 23 is means for selecting one of the data input from the token input section 16 and the data input from the adder 24 as input to the address register 11, and is configured to select one of the data input from the token input section 16 and the data input from the adder 24 as an input to the address register 11. It is connected to the adder 24 by a signal line 109, and the selected output is sent to the address register 11 via the signal wA112.
It is designed to be given to A control signal for selection is given from the memory access controller 15 via the signal line 110 as in the conventional manner.

トークン生成部17は、メモリ20から読み出したデー
タを用いてデータフロープロセッサ22に対して出力す
るトークンを生成するもので、メモリ読み出しの場合に
用いられる。トークン生成部17は、トークン入力部1
6と信号線103によって、またメモリ20と信号線1
08によって接続されており、メモリ読み出し動作時に
メモリ20から読み出されたデータはこの信号線108
を介してトークン生成部17に与えられ、トークン生成
部17の出力は信号線104を介してトークン出力部1
8へ供給されるようになっている。
The token generating unit 17 generates a token to be output to the data flow processor 22 using data read from the memory 20, and is used in the case of memory reading. The token generation unit 17 includes the token input unit 1
6 and signal line 103, and memory 20 and signal line 1
08, and data read from the memory 20 during memory read operation is transmitted through this signal line 108.
The output of the token generator 17 is sent to the token output unit 1 via a signal line 104.
8.

メモリアクセスコントローラ15は、トークン入力部1
6から供給される出力信号に基づいて、メモリ読み出し
・書き込み動作とレジスタの更新とを制御する手段で、
メモリ20、アドレスレジスタ11、データレジスタ1
3、マルチプレクサ23並びにトークン生成部17へ制
御用の信号を送出する。メモリアクセスコントローラ1
5は、トークン入力部16とは信号線121.63〜6
5とによって、また、メモリ20とは信号線105によ
って、更にデータレジスタ13とは信号線117、アド
レスレジスタ11とは信号線118、マルチプレクサ2
3とは信号線110によって接続されており、そしてト
ークン生成部17とは信号線111によって接続されて
い漬。
The memory access controller 15 has a token input unit 1
means for controlling memory read/write operations and register updating based on output signals supplied from 6;
Memory 20, address register 11, data register 1
3. Send a control signal to the multiplexer 23 and the token generator 17. Memory access controller 1
5 is the token input section 16 and the signal lines 121.63 to 6.
5, the memory 20 is connected to the signal line 105, the data register 13 is connected to the signal line 117, the address register 11 is connected to the signal line 118, and the multiplexer 2
3 through a signal line 110, and the token generator 17 through a signal line 111.

このメモリアクセスコントローラ15及びトークン入力
部16にはクロックCL119. CL120  (第
4図参照)が印加されるようになっており、またクロッ
クCL120はデータフロープロセッサ21.22にも
印加されるようになっている。
This memory access controller 15 and token input section 16 have a clock CL119. Clock CL120 (see FIG. 4) is applied, and clock CL120 is also applied to data flow processors 21,22.

第3図はメモリアクセスコントローラ15の構成を示し
ており、このメモリアクセスコントローラ15の詳細な
構成を示す第3図を参照すると、メモリアクセスコント
ローラ15は、トークン入力部16からの信号S63を
入力とし、トークンの入力を示す信号5121によって
これをラッチするアドレス・データフラグレジスタ51
と、トークン入力部16からの信号S64を入力とし、
トークンの入力を示す信号5121によってこれをラン
チするリード・ライトフラグレジスタ52と、トークン
入力部16からの信号S65を入力とし、トークンの入
力を示す信号5121によってこれをラッチするインク
リメンタルライトフラグレジスタ53と、それらの出力
信号360.361.  S62、クロックCL 11
9. CL 120、トークン入力部からのトークンの
入力を示す信号5121を入力とし、メモリ20へのメ
モリリードライト動作選択信号5IO5、データレジス
タ13へのラッチ信号5117、アドレスレジスタ11
へのラッチ信号3118、マルチプレクサ23への選択
指令信号5IIO及びトークン生成部17へのトークン
生成指令信号5111を出力とするゲートアレイ50と
から構成されている。
FIG. 3 shows the configuration of the memory access controller 15. Referring to FIG. 3 showing the detailed configuration of the memory access controller 15, the memory access controller 15 receives the signal S63 from the token input section 16 as an input. , an address/data flag register 51 that latches this by a signal 5121 indicating input of a token.
and the signal S64 from the token input section 16 is input,
A read/write flag register 52 launches it in response to a signal 5121 indicating input of a token, and an incremental write flag register 53 receives a signal S65 from the token input section 16 as an input and latches it in response to a signal 5121 indicating input of a token. , their output signals 360.361. S62, clock CL 11
9. CL 120, inputs a signal 5121 indicating token input from the token input section, memory read/write operation selection signal 5IO5 to the memory 20, latch signal 5117 to the data register 13, address register 11
The gate array 50 outputs a latch signal 3118 to the multiplexer 23, a selection command signal 5IIO to the multiplexer 23, and a token generation command signal 5111 to the token generation section 17.

上述のように、第1図のメモリインタフェース回路10
はリング状に接続された複数の、図示の例では2つのデ
ータフロープロセッサ21.22とメモリ20とに接続
され、データフロープロセッサ21から入力される、デ
ータの単位であるトークンを入力するトークン入力部1
6と、メモリ20に対する書き込みデータを保持するた
めのデータレジスタ13と、メモリ20に対する読み出
し書き込みアドレスを保持するためのアドレスレジスタ
11と、アドレスレジスタ11に保持された値に定数を
加算する加算器24と、トークン入力部16から入力さ
れるデータと加算器24から入力されるデータとのうち
の一方をアドレスレジスタ11への入力として選択する
マルチプレクサ23と、メモリ20から読み出したデー
タを用いてデータフロープロセッサ22に対して出力す
るトークンを生成するトークン生成部17と、トークン
生成部17で生成されたトークンをデータフロープロセ
ッサ22に対して出力するトークン出力部18と、メモ
リ20、アドレスレジスタ11、データレジスタ13、
マルチプレクサ23、トークン生成部17及びトークン
入力部16に接続され、トークン入力部16からの信号
に従ってメモリ読み出し・書き込み動作とレジスタの更
新とを制御するメモリアクセスコントローラ15とを有
する。
As mentioned above, the memory interface circuit 10 of FIG.
is connected to a plurality of data flow processors 21 and 22 connected in a ring, two in the illustrated example, and the memory 20, and is a token input for inputting a token, which is a unit of data, input from the data flow processor 21. Part 1
6, a data register 13 for holding write data to the memory 20, an address register 11 for holding a read/write address for the memory 20, and an adder 24 for adding a constant to the value held in the address register 11. A multiplexer 23 selects one of the data input from the token input unit 16 and the data input from the adder 24 as input to the address register 11, and the data read from the memory 20 is used to control the data flow. A token generation unit 17 that generates a token to be output to the processor 22, a token output unit 18 that outputs the token generated by the token generation unit 17 to the data flow processor 22, a memory 20, an address register 11, and a data flow processor 22. register 13,
The memory access controller 15 is connected to the multiplexer 23, the token generation section 17, and the token input section 16, and controls memory read/write operations and register updating according to signals from the token input section 16.

第1図においてメモリインタフェース回路10に対して
データフロープロセッサ21から入力されたトークンは
トークン入力部16でその内容を解読される。
In FIG. 1, a token input from a data flow processor 21 to a memory interface circuit 10 is decoded by a token input section 16.

トークン入力部16は信号線100を介してクロックC
L119に同期して入力されたトークンのデスティネー
ションタグのフィールド80の値が予めトークン入力部
16に設定されたこのメモリインタフェース回路10を
示す値でない場合にはこの人カドークンを通過トークン
として信号線114に出力する。この通過トークンはト
ークン出力部18を介して信号線101からメモリイン
タフェース回路10の外へそのまま出力される。
The token input section 16 receives the clock C via the signal line 100.
If the value of the field 80 of the destination tag of the token input in synchronization with L119 is not a value indicating this memory interface circuit 10 set in advance in the token input section 16, this person is passed through the signal line 114 as a token. Output to. This passing token is directly output from the signal line 101 to the outside of the memory interface circuit 10 via the token output section 18.

一方、入カドークンのデスティネーションタグのフィー
ルド80の値がこのメモリインタフェース回路10を示
す値である場合には、トークン入力部16はそのトーク
ンの情報のうちアドレス・データフラグ81、リード・
ライトフラグ82、インクリメンタルライトフラグ83
の各フィールドの情報をそれぞれ信号線63.64.6
5に、データ部86を信号線113に、また読み出しデ
ータトークン生成情報フィールド84を信号線103に
出力し、トークンの入力を示す信号5121を“1”に
する。また、トークン入力部16はCLクロック119
の1周期分だけ信号5121を“1″に保ち、その後″
0″にすると共にデータフロープロセッサ21からのト
ークン入力が可能な状態になる。
On the other hand, if the value of the field 80 of the destination tag of the input card is a value indicating this memory interface circuit 10, the token input unit 16 inputs the address/data flag 81, read/write, etc. of the information of the token.
Write flag 82, incremental write flag 83
The information of each field of the signal line 63, 64, 6
5, the data section 86 is output to the signal line 113, the read data token generation information field 84 is output to the signal line 103, and the signal 5121 indicating token input is set to "1". In addition, the token input section 16 is connected to the CL clock 119.
The signal 5121 is kept at "1" for one period of "1", and then "
0'' and enters a state in which token input from the data flow processor 21 is possible.

メモリアクセスコントローラ15において、トークン入
力部16から信号線63.64.65を介して送られる
アドレス・データフラグ81.リード・ライトフラグ8
2、インクリメンタルライトフラグ83の各フィールド
の情報が、入力信号5121が“1”になることにより
それぞれアドレス・データフラグレジスタ5にリード・
ライトフラグレジスタ52、インクリメンタルライトフ
ラグレジスタ53にラッチされる。
In the memory access controller 15, the address/data flag 81. which is sent from the token input section 16 via the signal lines 63, 64, 65. Read/write flag 8
2. Information in each field of the incremental write flag 83 is read/read to the address/data flag register 5 when the input signal 5121 becomes “1”.
It is latched into the write flag register 52 and the incremental write flag register 53.

以上のトークン入力部16、メモリアクセス−コントロ
ーラ15の動作を「トークン入力動作」と呼ぶ。
The above operations of the token input unit 16 and memory access controller 15 are referred to as "token input operations."

ゲートアレイ50には第4図に示されるようにクロック
CL 119. CL 120が供給されており、上述
のトークン入出力動作の後、トークンの入力を示す信号
5121が“1”である間、レジスタ51,52゜53
の出力S60. 361.  S62などを入力として
次の入出力対応表に従った入出力動作を行う。
The gate array 50 is provided with a clock CL 119. as shown in FIG. CL 120 is being supplied, and after the token input/output operation described above, while the signal 5121 indicating token input is "1", the registers 51, 52, 53
Output S60. 361. Input/output operations are performed according to the following input/output correspondence table using S62 and the like as input.

この表において左の5121 、S60、S61、S6
2、CL 119. CL 120はメモリアクセスコ
ントローラi5における入力信号を示し、右の5105
.5117.5118.5110,5111はこれらの
入力が与えられたときの出力を示す。また、(1)で示
される行はメモリアクセスコントローラ15に対する入
力がない場合に、(2)で示される各行はリードトーク
ン入力による読み出し動作の場合に、(3)で示される
各行はライトトークン入力による通常の7ドレツシング
による書き込み動作の場合に、(4)で示される各行は
データトークン入力によるデータのデータレジスタへの
セット動作の場合に、(5)で示される各行はインクリ
メンタルライトトークン入力によるインクリメンタルラ
イト動作の場合に、(6)で示される各行はインクリメ
ンタルライトアドレスセットトークンによるインクリメ
ンタルライトアドレスの設定動作の場合に、それぞれ対
応している。
In this table, 5121, S60, S61, S6 on the left
2, CL 119. CL 120 indicates an input signal in the memory access controller i5, and 5105 on the right
.. 5117.5118.5110 and 5111 indicate outputs when these inputs are given. Furthermore, the lines indicated by (1) are used when there is no input to the memory access controller 15, the lines indicated by (2) are used for read operations due to read token input, and the lines indicated by (3) are used for write token input. In the case of a write operation using normal 7 dressing, each line indicated by (4) is an operation for setting data to a data register by inputting a data token, and each line indicated by (5) is an incremental write operation by inputting an incremental write token. In the case of a write operation, each row indicated by (6) corresponds to the case of an incremental write address setting operation using an incremental write address set token.

以下、デスティーネーシッンタグの示す行き先がメモリ
インタフェース回路であるようなトークンを用いて行う
メモリアクセス動作の詳細について述べる。
Hereinafter, details of a memory access operation performed using a token whose destination indicated by a destination tag is a memory interface circuit will be described.

先ずメモリ20に対する読み出し動作を説明する。First, the read operation for the memory 20 will be explained.

メモリ読み出し動作を行う場合、データフロープロセッ
サ21からメモリインタフェース回路10に対して、読
み出しアドレスであるデータ部及びメモリインタフェー
ス回路10を行き先とするデスティネーションタグを持
つリードトークンを入力する。既述した如く、リードト
ークンにおいてはそのアドレス・データフラグ81が1
1゛、リード・ライトフラグ82が“1”であることに
よって読み出しアドレスを持つリードトークンであるこ
とが示される。
When performing a memory read operation, the data flow processor 21 inputs to the memory interface circuit 10 a read token having a data portion as a read address and a destination tag with the memory interface circuit 10 as the destination. As mentioned above, in the read token, the address/data flag 81 is 1.
1'', the read/write flag 82 being "1" indicates that it is a read token having a read address.

トークン入力部16に対してこのようなり−ドトークン
が入力されると、トークン入力部16、メモリアクセス
コントローラ15により上述のトークン入力待動作が行
われ、レジスタ51.52.53の出力信号S60. 
 S61. 362が確定する。
When such a decoded token is input to the token input unit 16, the token input unit 16 and the memory access controller 15 perform the above-described token input waiting operation, and the output signals S60.
S61. 362 is confirmed.

ゲートアレイ50は信号線113からの入力を選択し信
号線112に出力するようマルチプレクサ23に対して
信号線110を介して選択指示信号5110を出力する
とともに、信号線118を介しラッチ信号5118を出
力し、これにより信号線112上の入カドークンのデー
タ値がアドレスレジスタ11にラッチされる。
The gate array 50 outputs a selection instruction signal 5110 to the multiplexer 23 via the signal line 110 to select the input from the signal line 113 and output it to the signal line 112, and also outputs a latch signal 5118 via the signal line 118. As a result, the input data value on the signal line 112 is latched into the address register 11.

さらに信号線61上に出力された入カドークンのリード
・ライトフラグ82が“1′″である場合、メモリリー
ドライト動作選択信号5105は“0”となり、メモリ
20はアドレスレジスタ11からの出力信号8106を
アドレスとする読み出し動作を行い、メモリ20から読
み出されたデータは信号11!jiio8に出力される
Further, when the input read/write flag 82 outputted on the signal line 61 is "1'", the memory read/write operation selection signal 5105 becomes "0", and the memory 20 receives the output signal 8106 from the address register 11. A read operation is performed using the address 11!, and the data read from the memory 20 is signal 11! It is output to jiio8.

ゲートアレイ50は読み出したデータからトークンを生
成することを信号1111を介してトークン生成部17
に指示し、トークン生成部17はこれに従って読み出し
データ8108と読み出しデータトークン生成情報51
03に含まれる読み出しデータトークンの持つべきデス
ティネーションタグ及び識別子を組み合わせて出カドー
クンを形成し、この出カドークンは信号線104、トー
クン出力部18、信号線101を経てデータフロープロ
セッサ22へ出力される。以上の読み出し動作はパイプ
ラインクロックCL119の1パイプラインクロック間
に終了し、トークン入力部16がパイプラインクロック
CL119に同期して信号S L21を“0”にするこ
とによってメモリインタフェース回路10はメモリ読み
出し動作を終了する。
The gate array 50 instructs the token generation unit 17 via a signal 1111 to generate a token from the read data.
In accordance with this instruction, the token generation unit 17 generates read data 8108 and read data token generation information 51.
An output token is formed by combining the destination tag and identifier that the read data token included in 03 should have, and this output token is output to the data flow processor 22 via the signal line 104, the token output unit 18, and the signal line 101. . The above read operation is completed within one pipeline clock of the pipeline clock CL119, and the token input section 16 sets the signal S L21 to "0" in synchronization with the pipeline clock CL119, so that the memory interface circuit 10 performs the memory read operation. Finish the operation.

次にメモリ20に対する書き込み動作について説明する
Next, a write operation to the memory 20 will be explained.

メモリ書き込み動作を行う場合、まずあらかじめデータ
フロープロセッサ21からメモリインタフェース回路1
0に対して、書き込みデータであるデータ部及びメモリ
インタフェース回路10を行き先とするデスティネーシ
ョンタグを持つデータトークンを入力する。既述した如
く、データトークンにおいてはそのアドレス・データフ
ラグ81が“O′、インクリメンタルライトフラグ83
が“0″であることによって書き込みデータを持つデー
タトークンであることが示される。
When performing a memory write operation, first, the data flow processor 21 sends data from the memory interface circuit 1 to the data flow processor 21.
0, a data portion that is write data and a data token having a destination tag whose destination is the memory interface circuit 10 are input. As mentioned above, in the data token, the address/data flag 81 is “O” and the incremental write flag 83 is “O”.
is "0", indicating that it is a data token with write data.

トークンが入力されると上述のトークン入力待動作が行
われ、入カドークンのデータ部86の書き込みデータが
信号vA113に出力され、ここでゲートアレイ50は
データレジスタ13に対するラッチ信号5117を出力
しこれによりメモリインタフェース回路10は1パイプ
ラインサイクル間でデータのセント動作を終了する。
When a token is input, the above-mentioned token input waiting operation is performed, and the write data of the data section 86 of the input card is outputted to the signal vA113, and the gate array 50 outputs the latch signal 5117 to the data register 13. The memory interface circuit 10 completes the data cent operation within one pipeline cycle.

次いで、データフロープロセッサ21からメモリインタ
フェース回路10に対して、書き込みアドレスであるデ
ータ部及びメモリインタフェース回路10を行き先とす
るデスティネーションタグを有し、さらにインクリメン
タルライトフラグを持つライトトークンをメモリインタ
フェース回路10に入力する。既述した如く、ライトト
ークンにおいてはそのアドレス・データフラグ81が“
1″、リード・ライトフラグ82が0”であることによ
って書き込みアドレスを持つライトトークンであること
が示される。
Next, the data flow processor 21 sends a write token to the memory interface circuit 10 that has a data section that is a write address, a destination tag with the memory interface circuit 10 as the destination, and also has an incremental write flag. Enter. As mentioned above, in the write token, the address/data flag 81 is “
1'', and the read/write flag 82 is 0'', indicating that it is a write token with a write address.

ライトトークンが入力されると上述したトークン入力待
動作が行われ、ここでゲートアレイ50はインクリメン
タルライトを行わない通常のデータ書き込み動作の場合
、信号S60.  S61.  S62がそれぞれ1″
、′0” 110″であることにより、アドレスレジス
タ11に対するラッチ信号8118を“l”にすること
によりアドレスレジスタ11をラッチした後、メモリ2
0に対しメモリリードライト動作選択信号5105を“
1”とし、これによってアドレスレジスタ11から出力
される信号S 106を書き込みアドレスとし、先に設
定されたデータレジスタ13から出力される信号S 1
07を書き込みデータとする書き込み動作を指示する。
When a write token is input, the above-described token input waiting operation is performed, and in the case of a normal data write operation in which the gate array 50 does not perform an incremental write, the gate array 50 receives a signal S60. S61. S62 is 1″ each
, '0''110'', the address register 11 is latched by setting the latch signal 8118 for the address register 11 to “L”, and then the memory 2
0, the memory read/write operation selection signal 5105 is “
1", thereby making the signal S106 output from the address register 11 the write address, and the signal S106 output from the previously set data register 13.
Instructs a write operation using 07 as write data.

メモリ20がこれに従って書き込み動作を実行すること
により、1パイプラインサイクル間でメモリ書き込み動
作を終了する。
The memory 20 executes the write operation in accordance with this, thereby completing the memory write operation within one pipeline cycle.

これに対し、インクリメンタルライト動作を行う場合に
は、先ずデータフロープロセッサからアドレス・データ
フラグ81、インクリメンタルライトフラグ83がそれ
ぞれ“O”、“1”であるようなインクリメンタルライ
トアドレスセットトークンをメモリインタフェース回路
IOに入力する。メモリインタフェース回路10では上
述のトークン入力時動作の後に、アドレスレジスタ11
へのラッチ信号5118を“1”にすることにより、そ
のトークンのデータ部にあるインクリメンタルライトに
おいてベースとなるアドレスをアドレスレジスタ11に
セットする。
On the other hand, when performing an incremental write operation, first, the memory interface circuit receives an incremental write address set token whose address/data flag 81 and incremental write flag 83 are "O" and "1", respectively, from the data flow processor. Input to IO. In the memory interface circuit 10, after the above-described token input operation, the address register 11 is
By setting the latch signal 5118 to "1", the base address in the incremental write in the data section of the token is set in the address register 11.

次いでデータフロープロセッサからメモリインタフェー
ス回路10に対し連続したメモリ書き込みの回数と同じ
個数のインクリメンタルライトトークンを入力する。イ
ンクリメンタルライトトークンはアドレス・データフラ
グ81、リード・ライトフラグレジスタ52、インクリ
メンタルライトフラグ83がそれぞれ“1”、”0”、
′1”であるようなトークンであり、メモリインタフェ
ース回路10はこれに対するトークン入出力動作を行っ
た後、データレジスタ13へのランチ信号5117を“
1”にすることにより、トークンのデータ部にある会き
込みデータをデータレジスタ13にラッチし、メモリリ
ードライト動作選択信号S 105を“1”にすること
によりアドレスレジスタ11内の値をアドレスとしてメ
モリに対する書き込み動作を行う。
Next, the data flow processor inputs the same number of incremental write tokens as the number of consecutive memory writes to the memory interface circuit 10. In the incremental write token, the address/data flag 81, read/write flag register 52, and incremental write flag 83 are "1" and "0", respectively.
'1', and after the memory interface circuit 10 performs token input/output operations on this token, it sends the launch signal 5117 to the data register 13 as '1'.
By setting the memory read/write operation selection signal S105 to "1", the input data in the data section of the token is latched into the data register 13, and by setting the memory read/write operation selection signal S105 to "1", the value in the address register 11 is set as an address. Performs a write operation to memory.

続いてマルチプレクサ23への選択指令信号5110を
“1″にし、アドレスレジスタ11へのラッチ信号31
1Bを”1”にすることにより加算器24の出力をアド
レスレジスタ11にラッチする。このとき、加算器24
には現在のアドレスレジスタの値と“1”とが入力され
ているので、新たにアドレスレジスタ11には、現在の
アドレスレジスタにある書き込みアドレスをインクリメ
ントしたものが設定され、次回にインクリメンタルライ
トトークンが入力された場合に、今回と連続したメモリ
アドレスに対して書き込みが行われることになる。
Next, the selection command signal 5110 to the multiplexer 23 is set to "1", and the latch signal 31 to the address register 11 is set to "1".
By setting 1B to "1", the output of the adder 24 is latched into the address register 11. At this time, adder 24
Since the value of the current address register and "1" are input to , the address register 11 is newly set with the incremented write address in the current address register, and the next time an incremental write token is set. If it is input, writing will be performed to a memory address consecutive to the current one.

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

以上説明したように本発明によれば、メモリの連続アド
レスに対する書き込み動作の場合の書き込みアドレス生
成をメモリインタフェース回路で行うため従来のように
データフロープロセッサのプログラムでこれを実現する
場合に比べてソフトウェアの負担を軽減し、データフロ
ープロセッサからメモリインタフェース回路への書き込
みデータを持つインクリメンタルライトトークンによる
1回のアクセスによる書き込みを可能にすることにより
従来必要であった処理実行時のデータフロープロセッサ
からメモリインタフェース回路への2度のアクセスによ
るバスの占有を低減し、さらにlパイプラインごとに1
回の書き込みを行うという高速化を実現することができ
る。
As explained above, according to the present invention, the memory interface circuit generates the write address in the case of a write operation to consecutive addresses in the memory, so it requires less software than the conventional case where this is realized by the program of the data flow processor. By making it possible to write data from the data flow processor to the memory interface circuit in one access using an incremental write token containing the data to be written, it is possible to reduce the burden on the memory interface circuit from the data flow processor during processing, which was previously required. Reduces bus occupancy due to two accesses to the circuit, plus one access per pipeline
It is possible to realize faster writing by performing multiple writes.

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

第1図は本発明の一実施例を示す構成図、第2図は本発
明の説明に供する入カドークンのデータフォーマットの
一例を示す図、 第3図は第1図におけるメモリアクセスコントローラの
詳細な構成図、 第4図はメモリアクセスコントローラの動作を説明する
ための図である。 10  ・・・メモリインタフェース回路11  ・・
・アドレスレジスタ 13  ・・・データレジスタ 15  ・・・メモリアクセスコントローラ16  ・
・・トークン入力部 17  ・・・トークン生成部 18  ・・・トークン出力部 20 ・・・メモリ 21.22・・データフロープロセッサ23  ・・・
マルチプレクサ 24  ・・・加算器 50  ・・・ゲートアレイ 51  ・・・アドレス・データフラグレジスタ52 
 ・・・リード・ライトフラグレジスタ53  ・・・
インクリメンタルライトフラグレジスタ 60〜65.100〜114,117〜121  ・・
・信号線代理人 弁理士  岩 佐  義 幸 第4図
FIG. 1 is a block diagram showing an embodiment of the present invention, FIG. 2 is a diagram showing an example of an input data format used to explain the present invention, and FIG. 3 is a detailed diagram of the memory access controller in FIG. 1. FIG. 4 is a diagram for explaining the operation of the memory access controller. 10...Memory interface circuit 11...
・Address register 13 ・Data register 15 ・Memory access controller 16 ・
... Token input section 17 ... Token generation section 18 ... Token output section 20 ... Memory 21.22 ... Data flow processor 23 ...
Multiplexer 24...Adder 50...Gate array 51...Address/data flag register 52
... Read/write flag register 53 ...
Incremental write flag registers 60-65, 100-114, 117-121...
・Signal line agent Yoshiyuki Iwasa, patent attorney Figure 4

Claims (1)

【特許請求の範囲】[Claims] (1)複数のデータフロープロセッサとメモリとに接続
されたメモリインタフェース回路において、前記データ
フロープロセッサからデータの単位であるトークンを入
力するトークン入力部と、前記メモリに対する書き込み
データを保持するためのデータレジスタと、 前記メモリに対する読み出し書き込みアドレスを保持す
るためのアドレスレジスタと、 このアドレスレジスタに保持された値に定数を加算する
加算器と、 前記トークン入力部から入力されるデータと前記加算器
から入力されるデータのうちの一方を前記アドレスレジ
スタの入力として選択する手段と、前記メモリから読み
出したデータを用いて前記データフロープロセッサに対
して出力するトークンを生成し、出力する手段と、 前記トークン入力部からの信号に従ってメモリ読み出し
・書き込み動作とレジスタの更新とを制御する手段とを
備えることを特徴とするメモリインタフェース回路。
(1) In a memory interface circuit connected to a plurality of data flow processors and a memory, a token input section for inputting a token, which is a unit of data, from the data flow processor, and data for holding data written to the memory. a register; an address register for holding read/write addresses for the memory; an adder for adding a constant to the value held in the address register; and data input from the token input section and input from the adder. means for selecting one of the data read as an input of the address register; means for generating and outputting a token to be output to the data flow processor using the data read from the memory; and the token input. 1. A memory interface circuit comprising: means for controlling memory read/write operations and register updating according to signals from a memory interface circuit.
JP399287A 1987-01-13 1987-01-13 Memory interface circuit Pending JPS63173141A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP399287A JPS63173141A (en) 1987-01-13 1987-01-13 Memory interface circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP399287A JPS63173141A (en) 1987-01-13 1987-01-13 Memory interface circuit

Publications (1)

Publication Number Publication Date
JPS63173141A true JPS63173141A (en) 1988-07-16

Family

ID=11572512

Family Applications (1)

Application Number Title Priority Date Filing Date
JP399287A Pending JPS63173141A (en) 1987-01-13 1987-01-13 Memory interface circuit

Country Status (1)

Country Link
JP (1) JPS63173141A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61161560A (en) * 1985-01-10 1986-07-22 Nec Corp Memory device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61161560A (en) * 1985-01-10 1986-07-22 Nec Corp Memory device

Similar Documents

Publication Publication Date Title
JPS63173141A (en) Memory interface circuit
JPS60262253A (en) Memory data processing circuit
JPS6395540A (en) Memory interface circuit
JP2821176B2 (en) Information processing device
JPH0444136A (en) Memory access controller
JP3266610B2 (en) DMA transfer method
JPS63173143A (en) Memory interface circuit
JPH02163862A (en) Digital signal processor
JP3078594B2 (en) Image storage device
JP3117214B2 (en) Sequencer microprogram control method
JPH01184566A (en) Data transfer control system
JPH01145730A (en) Data destination control system
JPS61292739A (en) Memory device
JPH0275054A (en) Scan control system for multi-processor system
JPH01121965A (en) Microprocessor
JPS63196968A (en) Input/output controller
JPH0468459A (en) Digital signal processor
JPH02307149A (en) Direct memory access control system
JPS59119456A (en) Access system of segmented memory
JPH03282618A (en) Data processing circuit
JPS58203532A (en) Circuit for generating timing pulse
JPS63262744A (en) Direct memory control system
JPH02189794A (en) Memory ic
JPS6343782B2 (en)
JPH03191460A (en) Shared memory system