JPS60159958A - Data transfer controlling circuit - Google Patents

Data transfer controlling circuit

Info

Publication number
JPS60159958A
JPS60159958A JP1487284A JP1487284A JPS60159958A JP S60159958 A JPS60159958 A JP S60159958A JP 1487284 A JP1487284 A JP 1487284A JP 1487284 A JP1487284 A JP 1487284A JP S60159958 A JPS60159958 A JP S60159958A
Authority
JP
Japan
Prior art keywords
data transfer
instruction
program
data
flag
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.)
Granted
Application number
JP1487284A
Other languages
Japanese (ja)
Other versions
JPH0218746B2 (en
Inventor
Makoto Sato
誠 佐藤
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 IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems Co 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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP1487284A priority Critical patent/JPS60159958A/en
Publication of JPS60159958A publication Critical patent/JPS60159958A/en
Publication of JPH0218746B2 publication Critical patent/JPH0218746B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

PURPOSE:To omit a conditional branch instruction for waiting for a data transfer, to reduce the number of steps of a program, and to hasten a processing speed by controlling a program counter by a control signal from a controlling circuit. CONSTITUTION:When waiting for an execution of a data transfer of a slave processor, in case of judging the end of the data transfer by a master processor, a control is executed as follows. That is to say, a program counter 1 is controlled by an instruction 5 for transferring a data through an interface register 9, and a program counter control signal 14 from a controlling circuit 13 by which an RQ flag 8 becomes an input signal. As a result, the RQ flag 8 is set, a data transfer is requested to the master processor, and thereafter, a program sequence to immediately before an instruction for transferring a data through the register 9 in the succeeding instruction group is executed automatically. Accordingly, a conditional branch instruction for waiting for a data transfer is omitted, the number of steps of a program is reduced, and the processing speed can be hastened.

Description

【発明の詳細な説明】 (1) 発明の技術分野の説明 本発明は、データ転送機能を持つプロセッサのデータ転
送制御回路に係シ、特にアドレス信号、リード/ライト
信号などの制御信号を出力しないプロセッサ(以下、ス
レーブプロセッサと称しそれに対し、制御信号を出力す
るものをマスタプロセッサと称する)のデータ転送制御
回路に関する。
[Detailed Description of the Invention] (1) Description of the Technical Field of the Invention The present invention relates to a data transfer control circuit of a processor having a data transfer function, and in particular does not output control signals such as address signals and read/write signals. The present invention relates to a data transfer control circuit for a processor (hereinafter referred to as a slave processor, and a processor that outputs a control signal is referred to as a master processor).

(2) 従来技術の説明 5lE1図はマスタプロセッサとのデータ転送の際に必
要なスレーブプロセッサのデータ転送制御回路の従来例
を示すものである。同図に於いて、1はプログラムカウ
ンタ、2はプログラムメモリ、3は命令レジスタ、4は
命令レジスタ3にラッチされた命令を解読する命令デコ
ーダ、8はデータ転送要求フラグ(以下RQフラグと称
する)、9はマスタプロセッサとのデータバッファリン
グのためのインターフェイスレジスタ、11はプログラ
ムカウンタ1に対して分岐信号を出力する分岐信号出力
回路、5〜7は命令デコーダ4から出力される命令のう
ちのインター7エイスレジスタ9を介する命令を示すも
ので、5はデータ転送命令、6はRQフラグをセットす
る命令、7は条件付分岐命令、12は分岐信号出力回路
11よ)出力される分岐信号、10はマスタプロセッサ
によるデータ転送制御信号を示す。
(2) Description of Prior Art FIG. 5lE1 shows a conventional example of a data transfer control circuit of a slave processor necessary for data transfer with a master processor. In the figure, 1 is a program counter, 2 is a program memory, 3 is an instruction register, 4 is an instruction decoder that decodes the instruction latched in the instruction register 3, and 8 is a data transfer request flag (hereinafter referred to as RQ flag). , 9 is an interface register for data buffering with the master processor, 11 is a branch signal output circuit that outputs a branch signal to the program counter 1, and 5 to 7 are interface registers among the instructions output from the instruction decoder 4. 7 indicates an instruction via the eighth register 9, 5 is a data transfer instruction, 6 is an instruction to set the RQ flag, 7 is a conditional branch instruction, 12 is a branch signal output from the branch signal output circuit 11), 10 indicates a data transfer control signal by the master processor.

RQフラグ8はマスタプロセッサに対してデータ転送を
要求すると、RQフラグ8をセットする命令6によpセ
ットされ、また、マスタプロセッサによるデータ転送が
終了すると(書き込みサイクルに入ってから書き込みサ
イクルが終了するまでを含む)、データ転送制御信号1
゜によシリセットされる。つまり、とのRQフラグ8に
よシスレーププロセッサはマスタプロセッサに対してデ
ータ転送を要求した後、そのデータ転送がマスタプロセ
ッサによる読み出しの場合はマスタプロセッサにょジイ
ンター7エイスレジスタ9のデータが読み出されたがど
うがマスタプロセッサによる書き込みの場合は、マスク
によジインター7エイスレジスタ9にデータが書き込ま
れたかどうかを判断することが可能となる。
The RQ flag 8 is set to p by the instruction 6 that sets the RQ flag 8 when a data transfer is requested to the master processor, and when the data transfer by the master processor is completed (from the start of the write cycle to the end of the write cycle). ), data transfer control signal 1
It is reset by ゜. In other words, after the system sleep processor requests data transfer from the master processor based on the RQ flag 8, if the data transfer is to be read by the master processor, the data in the eighth register 9 of the interface 7 is read by the master processor. If data is written by the master processor, it is possible to determine whether data has been written to the eighth register 9 by using a mask.

インターフェイスレジスタ9はマスタプロセッサとのデ
ータ転送回路の中でデータのバッファとして使用される
。マスタプロセッサによる読み出しの場合は、スレーブ
プロセッサはインターフェイスレジスタに、マスタプロ
セッサに与えるデータを書き込み、RQフラグ8をセッ
トしてマスタプロセッサに対してデータの読み出しを要
求すれば、マスタプロセッサーがデータの読み出しを完
了するまでは、インター7エイスレジスタ9の内容を書
き変えてしまわない範囲で別の処理を実行できる。
The interface register 9 is used as a data buffer in a data transfer circuit with the master processor. In the case of reading by the master processor, the slave processor writes the data to be given to the master processor in the interface register, sets the RQ flag 8 and requests the master processor to read the data, and then the master processor reads the data. Until the process is completed, other processes can be executed as long as the contents of the inter 7/8 register 9 are not changed.

同様にマスタプロセッサによる書き込みの場、合も、R
Qフラグ8をセットしてマスタプロセッサに対してデー
タの書き込みを要求すれば、そのデータを必要としない
範囲で別の処理を実行できる。つまジインターフェイス
レジスタ9はバッファとして使用されプロセッサの処理
効率を向上させている。
Similarly, when writing by the master processor, R
By setting the Q flag 8 and requesting the master processor to write data, other processing can be executed to the extent that the data is not required. The thumb interface register 9 is used as a buffer to improve processing efficiency of the processor.

しかしながら、第1図に示す様な従来の回路例によると
、データ転送(読み出し、書き込みとも)が終了したか
どうかを、条件付分岐命令7(RQフラグの状態が1か
Oかをテストして、その状態によってプログラムカウン
タをコントロールするための命令)と、RQ7ラグ8の
状態によシ判断しているため条件付分岐命令7をプログ
ラムシーケンス中の適正な箇所に挿入し、その後のシー
ケンスに、次にインターフェイスレジスタ9を介してデ
ータ転送を行う命令を置 1く必要があった。そのため
、プログラムを作成する際に、処理速度が最も優れ、し
かも手順前後(マスクによるデータ転送が終了していな
い状態のインターフェイスレジスタをアクセスしてしま
うという様な誤シ)のないプログラムを作成するために
、 プログラムシーケンスがデータ転送時チ状tqにあるの
か、データ転送が終了した状態にあるのかを注意しなけ
ればいけないし、スレーププ 10セツサは一般にプロ
グラムメモリ容量が限られているため、条件付分岐命令
のステップ数も負担が大きいという欠点を持っている。
However, according to the conventional circuit example shown in FIG. , an instruction to control the program counter depending on its state) and the conditional branch instruction 7 is inserted at an appropriate location in the program sequence because the judgment is made based on the state of RQ7 lag 8, and in the subsequent sequence, Next, it was necessary to place an instruction to transfer data via the interface register 9. Therefore, when creating a program, it is important to create a program that has the highest processing speed and that does not involve any pre- or post-procedures (such as errors such as accessing an interface register before data transfer due to a mask has been completed). In addition, it is necessary to pay attention to whether the program sequence is in the state tq at the time of data transfer or in the state where the data transfer has been completed. The disadvantage is that the number of instruction steps is heavy.

、3) 発明の詳細な説明 本発明の目的は、スレーブプロセッサのデータ転送実行
待ちを、インターフェイスレジスタをアクセスする命令
を実行するマシンサイクルで自動的に行うことで、デー
タ転送待ちのための条件付分岐命令を省略して、上記欠
点を解決したデータ転送制御回路を提供することにある
, 3) Detailed Description of the Invention An object of the present invention is to automatically wait for a slave processor to execute a data transfer in a machine cycle in which an instruction to access an interface register is executed. The object of the present invention is to provide a data transfer control circuit that eliminates the above drawbacks by omitting branch instructions.

4)発明の構成 本発明によれば、プログラムカウンタと、命令デコーダ
と、RQフラグと、インター7エイスレジスタと、イン
ターフェイスレジスタを介するデータ転送命令及びRQ
フラグとを入力信号としてデータ転送要求フラグの状態
によりプログラムシーケンスを、データ転送待ち状態に
せしめる制御回路とでデータ転送制御回路を構成するも
のである。
4) Structure of the Invention According to the present invention, a program counter, an instruction decoder, an RQ flag, an inter 7 eighth register, and a data transfer instruction and RQ via an interface register are provided.
The data transfer control circuit includes the flag and a control circuit which takes the flag as an input signal and causes the program sequence to enter a data transfer wait state depending on the state of the data transfer request flag.

5) 発明の詳細な説明 次に本発明の実施例について、図面を参照して説明する
。従来例を示すW、1図と、本発明の実施例を示す第2
図とを比較して異なるのは従来例では条件付分岐命令7
とRQフラグ8とを入力信号とする分岐信号出力回路1
1よ多出力される分岐信号12によシブログラムカウン
タ1を制御していた部分が(第1図)、本発明の実施例
ではインターフェイスレジスタを介してデータ転送する
命令5とRQフラグ8を入力信号とする制御回路13に
よ多出力されるプログラムカウンタ制御信号14によシ
ブログラムカウンタ1を制御している(第2図)。第2
図の回路ではインターフェイスレジスタのデータバッフ
ァとしての動作は従来例と全く同様であるが、マスクに
よるデータ転送が終了したかどうかは、インタフェイス
レジスタを介してデータ転送する命令5が実行されたタ
イミングでの囮フラグ8の状態によシ制御回路13がプ
ログラムカウンタ制御信号14でプログラムカウンタ1
を制御する。そのためRQ7ラグ8をセットして、マス
タプロセッサーに対してデータ転送を要求した後、その
後に続く命令群のうち、インターフェイスレジスタを介
してデータ転送する命令を実行する直前までのプログラ
ムシーケンスが自動的に実行されしかも条件付分岐命令
は不要である。
5) Detailed Description of the Invention Next, embodiments of the present invention will be described with reference to the drawings. Figure 1 shows a conventional example, and Figure 2 shows an embodiment of the present invention.
Comparing with the figure, the difference in the conventional example is conditional branch instruction 7.
Branch signal output circuit 1 which receives and RQ flag 8 as input signals
In the embodiment of the present invention, the part that used to control the siprogram counter 1 by the branch signal 12 that is output more than 1 (see FIG. 1) inputs the instruction 5 for data transfer via the interface register and the RQ flag 8. The program counter 1 is controlled by a program counter control signal 14 which is outputted to a control circuit 13 as a signal (FIG. 2). Second
In the circuit shown in the figure, the operation of the interface register as a data buffer is exactly the same as in the conventional example, but whether or not data transfer by masking is completed depends on the timing at which instruction 5 to transfer data via the interface register is executed. Depending on the state of the decoy flag 8, the program counter control circuit 13 outputs the program counter 1 using the program counter control signal 14.
control. Therefore, after setting RQ7 lag 8 and requesting the master processor to transfer data, the program sequence immediately before executing the instruction that transfers data via the interface register among the subsequent instructions is automatically executed. executed and no conditional branch instructions are required.

ここで6自動的に°′という表現は、従来例では前述の
ようにプログラマがプログラムシーケンス中の適正な位
置に条件付分岐命令を挿入する必要があったが本発明の
実施例によればその必要がないことを意味する。つまり
本発明によりデータ転送制御回路を構成すれば、従来必
要であったデータ転送待ちのための条件付分岐命令が不
要となる。
Here, the expression 6 automatically °' means that in the conventional example, the programmer had to insert a conditional branch instruction at an appropriate position in the program sequence, but according to the embodiment of the present invention, this is not possible. It means there is no need. In other words, by configuring a data transfer control circuit according to the present invention, a conditional branch instruction for waiting for data transfer, which was conventionally necessary, becomes unnecessary.

そのことにより (1)プログラムのステップ数が減少する。By that (1) The number of program steps is reduced.

(2)プログラム作成が容易になる。(2) Program creation becomes easier.

(3)処理速度の速いプログラムが確実に得られる。(3) A program with high processing speed can be reliably obtained.

という効果が得られる。This effect can be obtained.

(1)については条件付分岐命令が省略されるのでプロ
グラムステップ数が減少し、プログラムメモリエリアが
有効に使用されるという点で効果が明確である。
Regarding (1), the effect is clear in that the number of program steps is reduced because the conditional branch instruction is omitted, and the program memory area is used effectively.

(2)、(3)について例をあげて説明する。(2) and (3) will be explained using examples.

次の仕様を持つスレーブプロセッサを想定する。Assume a slave processor with the following specifications.

・内部に読み出し/書き込み可能なデータメモリ(RA
M)を持つ。
・Internal readable/writable data memory (RA)
M).

・そのRAMはアドレスレジスタ(POINTER)に
より読み出し/書き込みの番地が指定される。
-The read/write address of the RAM is specified by the address register (POINTER).

このスレーブプロセッサでマスタプロセッサーからのデ
ータをRAMのある番地に書き込むプログラムを考える
と、従来のスレーブブロセ イッサでは第3図及び第4
図で示す2つのプログラム例(1)、 (2)が考えら
れる。プログラム例(1)と(2)とを比較すると、マ
スクがスレーブプロセッサのデータ転送要求を確認して
データ転送を行うまでにはスレーブプロセッサの命令サ
イクルで数サイクル必要とするため、その間にPOIN
TEJをセットしておく手順である(2)のプログラム
例のほうが動作終了までの処理速度は速い。
Considering a program that uses this slave processor to write data from the master processor to a certain address in RAM, the conventional slave processor
Two program examples (1) and (2) shown in the figure can be considered. Comparing program examples (1) and (2), it is found that several instruction cycles of the slave processor are required for the mask to confirm the slave processor's data transfer request and perform the data transfer, so the POIN
The program example (2), which is a procedure for setting TEJ, has a faster processing speed until the end of the operation.

この例のように、従来のデータ転送制御回路を有するス
レーブプロセッサでは作成されたプログラムの種類によ
って処理速度に差があるため、プログラム作成者は、処
理速度の最も優れたプログラムを作成するための労力を
必要とする。しかし、本発明によるデータ転送制御回路
を有するスレーブプロセッサでは、第5図のプログラム
例(3)のように、プログラムステツノ数も少く、処理
速度の点でも優れたプログラムが容易に作成可能である
As shown in this example, processing speeds of slave processors with conventional data transfer control circuits vary depending on the type of program created, so program creators must invest a lot of effort in creating programs with the highest processing speed. Requires. However, with the slave processor having the data transfer control circuit according to the present invention, it is possible to easily create a program that has a small number of program steps and is excellent in terms of processing speed, as shown in program example (3) in FIG. .

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

第1図は従来のデータ転送制御回路を説明するブロック
図、第2図は本発明の一実施例を説明するブロック図で
ある。 1・・・・・・プログラムカウンタ、2・旧・・プログ
ラムメモリ、3・・・・・・命令レジスタ、4・旧・・
命令テコーダ、5・・・・・・インターフェイスレジス
タを介するデ−夕転送命令、6・・・・・・RQフラグ
セット命令、7・・・・・・争件付分岐命令(第1図の
み)、8・・・・・・RQフラグ、9・・・・・・イン
ターフェイスレジスタ、10・・・・・・マスタによる
データ転送制御信号、11・・・・・・分岐信号出力回
路、12・・・・・・分岐信号、13・・・・・・制御
回路、14・・・・・・プログラムカウンタ制御信号w
、3図及び第4図は従来のデータ転送制御回路によるス
レーブプロセッサのプログラム例のフローチャート、第
5図は本発明の構成を採用したスレーブプロセッサのプ
ログラム例のフローチャートである。 外仰ハ゛ス 茅1@ 半5@ フ・ロク゛ラム4刈(3) ごの今4′か“ 陰り41177470 ];]1:@1−5h=Jc’
aア゛−タ転送j11フー?欠4丁され)。
FIG. 1 is a block diagram illustrating a conventional data transfer control circuit, and FIG. 2 is a block diagram illustrating an embodiment of the present invention. 1: Program counter, 2: Old program memory, 3: Instruction register, 4: Old...
Instruction coder, 5...Data transfer instruction via interface register, 6...RQ flag set instruction, 7...Contested branch instruction (Figure 1 only) , 8... RQ flag, 9... Interface register, 10... Data transfer control signal by master, 11... Branch signal output circuit, 12... ... Branch signal, 13 ... Control circuit, 14 ... Program counter control signal w
, 3 and 4 are flowcharts of an example of a program of a slave processor using a conventional data transfer control circuit, and FIG. 5 is a flowchart of an example of a program of a slave processor employing the configuration of the present invention. 1: @ 1-5h = Jc'
a data transfer j11 fu? (4 pieces missing).

Claims (1)

【特許請求の範囲】[Claims] 実行すべき命令が格納された記憶番地を指定するプログ
ラムカウンタと、前記記憶番地よシ読み出された命令を
解読する命令デコーダと、データ転送要求命令によシセ
ットされ、データ転送の実行によシリセットされるデー
タ転送要求フラグと、外部とのデータ転送を行うための
データバッファリング手段としてのインターフェイスレ
ジスタと、データ転送要求命令を実行する場合、データ
転送要求フラグの状態によシ前記データ転送要求命令の
実行を待ち状態にせしめる制御回路とを有することを特
徴としたデータ転送制御回路。
a program counter that specifies a memory address where an instruction to be executed is stored; an instruction decoder that decodes an instruction read from the memory address; and a program counter that is set by a data transfer request instruction and reset by execution of the data transfer. an interface register as a data buffering means for transferring data to and from the outside; and an interface register as a data buffering means for transferring data with the outside; and when executing a data transfer request instruction, the data transfer request instruction 1. A data transfer control circuit comprising: a control circuit that causes the execution of the data transfer control circuit to enter a wait state.
JP1487284A 1984-01-30 1984-01-30 Data transfer controlling circuit Granted JPS60159958A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1487284A JPS60159958A (en) 1984-01-30 1984-01-30 Data transfer controlling circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1487284A JPS60159958A (en) 1984-01-30 1984-01-30 Data transfer controlling circuit

Publications (2)

Publication Number Publication Date
JPS60159958A true JPS60159958A (en) 1985-08-21
JPH0218746B2 JPH0218746B2 (en) 1990-04-26

Family

ID=11873104

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1487284A Granted JPS60159958A (en) 1984-01-30 1984-01-30 Data transfer controlling circuit

Country Status (1)

Country Link
JP (1) JPS60159958A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60218153A (en) * 1984-04-13 1985-10-31 Oki Electric Ind Co Ltd Inter-processor communication system
JPH03156558A (en) * 1989-11-14 1991-07-04 Nec Home Electron Ltd Method for communication between host cpu and coprocessor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60218153A (en) * 1984-04-13 1985-10-31 Oki Electric Ind Co Ltd Inter-processor communication system
JPH03156558A (en) * 1989-11-14 1991-07-04 Nec Home Electron Ltd Method for communication between host cpu and coprocessor

Also Published As

Publication number Publication date
JPH0218746B2 (en) 1990-04-26

Similar Documents

Publication Publication Date Title
US5608881A (en) Microcomputer system for accessing hierarchical buses
JPH0543151B2 (en)
JPS62251865A (en) Information processor
US6738837B1 (en) Digital system with split transaction memory access
JPS60159958A (en) Data transfer controlling circuit
US6134642A (en) Direct memory access (DMA) data transfer requiring no processor DMA support
JPS60195661A (en) Data processing system
JPH06231032A (en) Access controller
JPH08272608A (en) Pipeline processor
KR950004227B1 (en) Information processing system
JPS6041146A (en) Data transfer control system
JP2623501B2 (en) Direct memory access control circuit
JP2001014214A (en) Method for sharing memory and multiprocessor facility using this method
JPH0711782B2 (en) Micro program control system
JPS5936838A (en) Controlling method of interface
JPH10187634A (en) Synchronous control method and main storage sharing type parallel processor
JPS63311567A (en) Access controlling system
JPH01250163A (en) Bus controller
JPH05241828A (en) Command processor
JPH0321941B2 (en)
JPH04211854A (en) Computer device
JPS63279351A (en) Dma transfer controller
JPH04319703A (en) Programmable controller
JPS6152763A (en) Data processing device
JPH0481939A (en) Control system for microcomputer

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term