JPS61198356A - Multi-processor system - Google Patents

Multi-processor system

Info

Publication number
JPS61198356A
JPS61198356A JP3998885A JP3998885A JPS61198356A JP S61198356 A JPS61198356 A JP S61198356A JP 3998885 A JP3998885 A JP 3998885A JP 3998885 A JP3998885 A JP 3998885A JP S61198356 A JPS61198356 A JP S61198356A
Authority
JP
Japan
Prior art keywords
signal
cpu
main cpu
chip
general
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
JP3998885A
Other languages
Japanese (ja)
Other versions
JPH0215095B2 (en
Inventor
Kenji Hara
憲二 原
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.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Manufacturing 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 Yaskawa Electric Manufacturing Co Ltd filed Critical Yaskawa Electric Manufacturing Co Ltd
Priority to JP3998885A priority Critical patent/JPS61198356A/en
Publication of JPS61198356A publication Critical patent/JPS61198356A/en
Publication of JPH0215095B2 publication Critical patent/JPH0215095B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/285Halt processor DMA

Abstract

PURPOSE:To prevent reduction in the execution speed with less number of components by generating a DMA request signal just before when one-chip CPU accesses a RAM of a main CPU and using a signal replying DMA enable from the main CPU so as to switch a bus. CONSTITUTION:A read or a write signal from the one-chip CPU is inputted and an HOLD signal with a prescribed width is generated after a prescribed time. When the one-chip CPU 1 sends the read signal RD or write signal WR, a monostable multivibrator 4a gives a delay of 6.5musec and a monostable multi-vibrator 4b sends a pulse of 2musec width. The pulse becomes the HOLD signal, which is sent to the main CPU. When the main CPU receives the HOLD signal, an HLDA signal being its reply is sent to a bus buffer to open the bus buffer 2, and the read signal RD or the write signal WR stopped by the bus buffer 2 is given to the main CPU as an MRD or an MWR respectively and the one- chip CPU 1 can access directly the data of the RAM used by the main CPU.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、メインdPUを汎用CPUとし、サブCPU
を外部メモリアクセス機能を有する1チップCPUとし
たマルチプロセッサ・システムに関するものである。
[Detailed Description of the Invention] [Field of Industrial Application] The present invention uses a main dPU as a general-purpose CPU, and a sub-CPU as a general-purpose CPU.
The present invention relates to a multiprocessor system using a single-chip CPU having an external memory access function.

〔従来の技術j かかるシステムにおいては、汎用CPUと、1チップC
PUが、外部メモリ(以後几AMと称する)を同時にア
クセスすることがないよう構成する必要がある。
[Prior art j] In such a system, a general-purpose CPU and a one-chip C
It is necessary to configure the PU so that it does not access the external memory (hereinafter referred to as AM) at the same time.

例えば、RAMのFFQQli・番地から、■チップC
PUの内部メモリの’30H’番地へ、16バイトのデ
ータを転送(すなわち、RAMデータの読み出し)する
場合を説明する。
For example, from the RAM FFQQli address, ■chip C
A case will be described in which 16 bytes of data are transferred (ie, RAM data is read) to address '30H' in the internal memory of the PU.

まず、汎用CPUを無視して、プログラムを作成すると
すれば、第3図に示すプログラムが考えられる。
First, if a program is created ignoring the general-purpose CPU, the program shown in FIG. 3 can be considered.

しかしながら、実際は汎用CPUがRAMをアクセスす
ることがあるから、■チップCPUがRAMをアクセス
スル命令(MOVX  A、@DPTR)を実行すると
きには、1チップCPUのバス占有権を確立しておく必
要がある。
However, in reality, a general-purpose CPU may access RAM, so when a chip CPU executes a RAM access-through instruction (MOVX A, @DPTR), it is necessary to establish bus occupancy for one chip CPU. be.

本出願人はこれにこたえるものとして、さきに特願昭5
8−91454を提案している。
In response to this, the applicant has previously filed a patent application filed in 1973.
8-91454 is proposed.

該提案は、第4図に示すように夏チップCPU、汎用C
PU、外部メモリの間に共通バスを直接接続し、データ
処理時には、前記汎用CPUにバスを占有させてデータ
処理を行なわしめるとともに、データ転送時には前記1
チップCPUが前記汎用CPUに対してHOLD要求を
発して前記汎用CPUにバスを放棄させ、前記1チップ
CPUがバスを占有するように構成したものであった。
This proposal is based on the summer chip CPU, general-purpose CPU, as shown in Figure 4.
A common bus is directly connected between the PU and external memory, and when processing data, the general-purpose CPU is made to occupy the bus and perform data processing, and when transferring data, the general-purpose CPU
The chip CPU issues a HOLD request to the general-purpose CPU to cause the general-purpose CPU to relinquish the bus, and the single-chip CPU occupies the bus.

ところが、このようなシステムにおいては、一時休止中
の汎用CPUはHOLDをかけられたままになるので、
データ転送のバイト数が多いと、実行時間が大幅に低下
してしまい、効率の悪い処理しか行えないことが明らか
になった。
However, in such a system, the general-purpose CPU that is temporarily inactive remains in the HOLD state, so
It has become clear that when the number of bytes of data transfer is large, the execution time decreases significantly, resulting in inefficient processing.

そこで、上記欠点を解消し、CPU実行速度の低下を防
止できるマルチプロセッサ・システムを提供することを
目的として、特願昭58−177715を提案した。
Therefore, Japanese Patent Application No. 58-177715 was proposed for the purpose of providing a multiprocessor system capable of eliminating the above-mentioned drawbacks and preventing a decrease in CPU execution speed.

該提案の要旨となるところは、第5図に示すように、タ
イミング信号発生器を備えて、該タイミング信号発生器
が、lチ、プCPUがRAMをアクセスする時期(これ
は1チップCPUが実行するプログラムによって定まる
)の直前に、汎用CPUがRAMをアクセスしないよう
WAIT信号を発したのち、汎用CPUとRAMをつな
いでいるバスを切り離して、lチップCPUがアクセス
に要する時間だけRAMを占有させるようにする点にあ
った。
The gist of this proposal is that, as shown in FIG. (determined by the program to be executed), the general-purpose CPU issues a WAIT signal to prevent it from accessing the RAM, then disconnects the bus connecting the general-purpose CPU and the RAM, and occupies the RAM for the time required for the l-chip CPU to access it. The point was to make it possible.

〔発明が解決しようとする間組点J ところが、特願昭58−91454においては部品点数
が少ないが、メインCPUの実行速度の低下が大きすぎ
、特願昭58−177715では実行速度が低下しない
かわりに部品点数が多すぎるという問題点があった。
[Intersection point J that the invention seeks to solve However, although the number of parts is small in Japanese Patent Application No. 58-91454, the execution speed of the main CPU decreases too much, and in Japanese Patent Application No. 58-177715, the execution speed does not decrease. The problem was that there were too many parts.

本発明は、このような問題点を解決するべ(なされたも
ので、少ない部品で実行速度の低下をまねかないシステ
ムを提供することを目的とする。
The present invention has been made to solve these problems, and it is an object of the present invention to provide a system that uses fewer parts and does not cause a decrease in execution speed.

〔問題点を解決するための手段J そこで本発明は、1チップCPUがメインCPUの几A
Mをアクセスする直前にDMAを要求信号を発し、メイ
/cPUからのD M A @能を返答する信号によっ
てバスを切換えるような簡単なハードウェア回路を設け
るものである。
[Means for Solving the Problems J] Therefore, the present invention provides a system in which one chip CPU is the main CPU.
A simple hardware circuit is provided that issues a DMA request signal just before accessing M, and switches the bus in response to a DMA response signal from the computer/cPU.

〔作用〕[Effect]

上記簡単なハードウェア回路は1.1チップCPUが発
する読み出し信号または書込み信号を入力して、所定時
間後に所定幅のHOLD信号を発する作用があるもので
ある。
The simple hardware circuit described above has the function of inputting a read signal or a write signal generated by a 1.1-chip CPU, and outputting a HOLD signal of a predetermined width after a predetermined time.

〔実施例〕〔Example〕

以下、本発明の具体的実施例を第1図、そのタイムチャ
ートを第2図に示して説明する。
Hereinafter, a specific embodiment of the present invention will be described with reference to FIG. 1 and its time chart shown in FIG. 2.

■は外部のデータメモリをアクセスできるlチップCP
Uで、ここではインテル社8051の例である。
■ is a l-chip CP that can access external data memory
Here, Intel 8051 is an example.

図示しないメインCPUは、例えば同社8088とする
The main CPU (not shown) is, for example, the company's 8088.

2はバスバッファ、3はNO几ゲート、4a、4bは単
安定マルチバイブレータ(以下モノマルチと略す)であ
る。
2 is a bus buffer, 3 is an NO gate, and 4a and 4b are monostable multivibrators (hereinafter abbreviated as monomulti).

モノマルチ4a、4bは、各々抵抗及びコンデンサと接
続されており、その抵抗の抵抗値を調節することにより
、4aは6.5μ秒のタイミング遅延器、4bは2μ秒
幅のパルス送出器として働く。
The monomultis 4a and 4b are each connected to a resistor and a capacitor, and by adjusting the resistance value of the resistor, 4a works as a 6.5 μsec timing delayer, and 4b works as a 2 μsec width pulse sender. .

さて、1チップCPUIが読み出し信号fI5もしくは
書込み信号WIを送出すると、モノマルチ4aは第2図
に示すように6.5μ秒遅延させ、モノマルチ4bが2
μ秒幅のパルスを送出する。
Now, when the 1-chip CPUI sends out the read signal fI5 or the write signal WI, the monomulti 4a delays it by 6.5 μs as shown in FIG.
Sends out microsecond-wide pulses.

このパルスがHOLD信号となり、図示しないメインC
PUへ送られる。
This pulse becomes the HOLD signal, and the main C (not shown)
Sent to PU.

メインCPU(インテル社8088)は4Tサイクルで
動作するので、基準クロックを3M[(zとすると、こ
のHOLD信号を受付けるには、最大0.5μ秒かかる
Since the main CPU (Intel 8088) operates in 4T cycles, if the reference clock is 3M [(z), it takes a maximum of 0.5 μs to accept this HOLD signal.

(°、−1÷(8X/O6)X4=O15X/O−6)
よって、前述の特願昭58−177715では7μ秒の
遅延としたが、0.5μ秒早くして6.5秒の遅延とし
た。
(°, -1÷(8X/O6)X4=O15X/O-6)
Therefore, in the above-mentioned Japanese Patent Application No. 177,715/1984, the delay was set at 7 .mu. seconds, but the delay was increased by 0.5 .mu. seconds to 6.5 seconds.

また、読み出しまたは書込みに1μ秒を要するので、余
裕をとって2μ秒のHOLD信号幅としたのは、前述の
特願昭58−177715と同主旨である。(ただし特
願昭58−177715では、HOLD信号でな(WA
IT信号)メインCPUは、このHOLD信号を受付け
ると、その返答であるHLDA信号をパスバッファに発
してパスバッファ2を開き、パスバッフ12で止められ
ていた読み出し信号πlまたは書込み信号WRをそれぞ
れMRD、MWRとしてメインCPUへ通し、1チップ
CPU1がメインCPUが使用しているELAMのデー
タを直接アクセスできるようになるのである。
Further, since reading or writing requires 1 .mu.sec, the HOLD signal width is set to 2 .mu.sec to provide a margin, which is the same idea as the above-mentioned Japanese Patent Application No. 58-177715. (However, in the patent application No. 58-177715, the HOLD signal is not used (WA
IT signal) When the main CPU receives this HOLD signal, it issues the HLDA signal as a response to the pass buffer to open the pass buffer 2, and sends the read signal πl or write signal WR, which was stopped by the pass buffer 12, to the MRD and MRD, respectively. By passing it to the main CPU as MWR, the 1-chip CPU 1 can directly access the ELAM data used by the main CPU.

転送のアルゴリズムについては、特願昭58−1777
15と同一となるのでここでは省略する。
Regarding the transfer algorithm, please refer to the patent application No. 58-1777.
Since it is the same as 15, it is omitted here.

ここで、本発明の長所を前述の特願昭58−91454
、特願昭58−177715と比較すると、16バイト
の転送ではメインCPUのデッドタイムは、該2出願は
、それぞれ128μ秒、0−16μ秒(信号受付時によ
って異なる)となるのに対し、本発明では32μ秒(’
、’  2μ秒×16バイト分=32)となる。
Here, the advantages of the present invention will be described in the above-mentioned Japanese Patent Application No. 58-91454.
, compared with Japanese Patent Application No. 58-177715, the dead time of the main CPU for 16-byte transfer is 128 μs and 0-16 μs (varies depending on the time of signal reception) in the two applications, while in this case In the invention, 32 μs ('
,' 2 microseconds x 16 bytes = 32).

本発明は特願昭58−177715のデッドタイムには
わずかに劣るものの、追加部品が極めて少なく、しかも
安価点を考慮すれば、その経済的価値は非常に高(、実
用性に富んでいる。
Although the present invention is slightly inferior to the dead time of Japanese Patent Application No. 58-177715, it requires very few additional parts and is inexpensive, so its economic value is very high (and practical).

〔他の実施例〕[Other Examples]

本実施例では、タイミング遅延機能をモノマルチ2個で
実現したが、カウンタを使用し、クロックをカウントし
てタイミングを作り出してもよい。
In this embodiment, the timing delay function was realized using two monomultis, but a counter may be used to count clocks and generate timing.

また1チップCPUは、8051にかぎらず、8031
.8751などでも良いことはもちろんである。
Also, 1-chip CPU is not limited to 8051, but 8031
.. Of course, 8751 or the like is also fine.

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

以上述べたように、本発明によれば、わずかな部品の追
加で、効率の良い1チップCPUンステムを提供できる
という大きな効果を奏するものである。
As described above, the present invention has the great effect of being able to provide an efficient one-chip CPU system with the addition of only a few components.

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

第1図は本発明の具体的実施例、第2図は本発明のタイ
ムチャート、第3図は従来のプログラム、第4図及び第
5図は従来の1チップCPUシステムの例である。 [1チップCPU、2:パスバッフ1.3:NORゲー
ト、4a・4b=単安定マルチバイブレータ 特許出願人 株式会社安川電機製作所 第 1 図 第2図 第3図 (二−モニツタ) (処理時間:、MC)   (t 
味)第 4 図 第 5 図
FIG. 1 shows a specific embodiment of the present invention, FIG. 2 shows a time chart of the invention, FIG. 3 shows a conventional program, and FIGS. 4 and 5 show an example of a conventional one-chip CPU system. [1 chip CPU, 2: pass buffer 1.3: NOR gate, 4a, 4b = monostable multivibrator Patent applicant Yaskawa Electric Co., Ltd. Figure 1 Figure 2 Figure 3 (2-Monitor) (Processing time: MC) (t
Taste) Figure 4 Figure 5

Claims (1)

【特許請求の範囲】 HOLD機能を有する汎用CPUと、I/Oポートを介
して外部メモリのアクセス機能を有する1チップCPU
を少なくとも1個備え、それらの間にバスを直接接続し
、データ処理時には、前記汎用CPUにバスを占有させ
てデータ処理を行わせるとともに、データの転送時には
、前記1チップCPUが前記汎用CPUに対し、HOL
D要求を発して前記汎用CPUがバスを占有するマルチ
プロセッサ・システムにおいて、 前記1チップCPUが発する読出し信号または書込み信
号を入力して、所定時間だけ遅らせて所定の幅のHOL
D要求信号を発する回路を備えたことを特徴とするマル
チプロセッサ・システム。
[Claims] A general-purpose CPU with a HOLD function and a 1-chip CPU with an external memory access function via an I/O port.
A bus is directly connected between them, and when processing data, the general-purpose CPU occupies the bus and processes the data, and when transferring data, the one-chip CPU connects the general-purpose CPU to the general-purpose CPU. On the other hand, HOL
In a multiprocessor system in which the general-purpose CPU occupies a bus by issuing a D request, a read signal or a write signal issued by the one-chip CPU is input and delayed by a predetermined time to generate a HOL of a predetermined width.
A multiprocessor system characterized by comprising a circuit that issues a D request signal.
JP3998885A 1985-02-27 1985-02-27 Multi-processor system Granted JPS61198356A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3998885A JPS61198356A (en) 1985-02-27 1985-02-27 Multi-processor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3998885A JPS61198356A (en) 1985-02-27 1985-02-27 Multi-processor system

Publications (2)

Publication Number Publication Date
JPS61198356A true JPS61198356A (en) 1986-09-02
JPH0215095B2 JPH0215095B2 (en) 1990-04-11

Family

ID=12568320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3998885A Granted JPS61198356A (en) 1985-02-27 1985-02-27 Multi-processor system

Country Status (1)

Country Link
JP (1) JPS61198356A (en)

Also Published As

Publication number Publication date
JPH0215095B2 (en) 1990-04-11

Similar Documents

Publication Publication Date Title
JP3039557B2 (en) Storage device
JP3142861B2 (en) Dual area memory controller
GB2181578A (en) Clock delay for microprocessor
JPS61198356A (en) Multi-processor system
JPH0222748A (en) Non-volatile memory control circuit
JP2565916B2 (en) Memory access controller
JP2574821B2 (en) Direct memory access controller
JP3028998B2 (en) DMA transfer circuit
JPH0214741B2 (en)
JPS63311553A (en) Synchronization control system microprocessor peripheral circuit
JPS59231639A (en) Terminal interface device
JPH04119448A (en) Operation timing control system
JPS63318651A (en) Memory managing circuit
JPH0114616B2 (en)
JPS62249263A (en) Direct memory access controller
JP2822414B2 (en) Dual port memory
JPH02280244A (en) Memory control circuit
JPH01287767A (en) Control circuit for ram
JPH02211571A (en) Information processor
JPH02168339A (en) Control device for cpu
JPH04319703A (en) Programmable controller
JPH01126749A (en) Data control device for peripheral equipment
JPS61241863A (en) Access system for shared memory
JPH04101261A (en) Information processing device
JPS63284659A (en) Dma transfer control method