JPH1139266A - Multiprocessor device - Google Patents

Multiprocessor device

Info

Publication number
JPH1139266A
JPH1139266A JP9192702A JP19270297A JPH1139266A JP H1139266 A JPH1139266 A JP H1139266A JP 9192702 A JP9192702 A JP 9192702A JP 19270297 A JP19270297 A JP 19270297A JP H1139266 A JPH1139266 A JP H1139266A
Authority
JP
Japan
Prior art keywords
cpu
bus
shared memory
slave
access
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.)
Withdrawn
Application number
JP9192702A
Other languages
Japanese (ja)
Inventor
Kanzo Noda
完三 野田
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP9192702A priority Critical patent/JPH1139266A/en
Publication of JPH1139266A publication Critical patent/JPH1139266A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Multi Processors (AREA)
  • Memory System (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce the unnecessary power consumption by connecting the bus of a 1st CPU to the bus of a shared memory when a 2nd CPU is kept in a pause state and connecting the bus of the 2nd CPU to the bus of the shared memory when the 2nd CPU is kept in an active mode respectively. SOLUTION: This multiprocessor device is provided with a slave stop bit register 6 which stops the working of a slave CPU 2, a clock control circuit 8 which controls the clock signal that is supplied to the CPU 2, etc. When the stop instruction signal is set at a high level, a bus buffer 4 becomes active and the bus 10 of a master CPU 1 is connected to the bus 12 of a shared memory 3. When the stop instruction signal is set at a low level, a bus buffer 5 becomes active and the bus 11 of the CPU 2 is connected to the bus 12 of the memory 3. Then the circuit 8 stops the clock signal that is supplied to the CPU 2 synchronously with the operation timing of the CPU 2 when the stop instruction signal has a high level.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、複数のプロセッサ
に分散処理をさせるマルチプロセッサ装置に関し、特
に、共有メモリへのアクセス権の調停を行なうための複
雑な調停回路が不要であり、装置全体の消費電力を低減
することが可能なマルチプロセッサ装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a multiprocessor for distributing a plurality of processors in a distributed manner. In particular, a complex arbitration circuit for arbitrating access rights to a shared memory is not required, and the entire apparatus is not required. The present invention relates to a multiprocessor device capable of reducing power consumption.

【0002】[0002]

【従来の技術】近年、マルチメディア処理や高精細画像
処理などのさまざまな分野で、プロセッサ性能の向上に
対する要求が高まっている。しかし、現在のLSI(La
rge Scale Integration )製造技術ではデバイスの高速
化にも限度がある。そこで、分散処理方式のマルチプロ
セッサ装置が注目を浴びており、盛んに研究、開発され
ている。
2. Description of the Related Art In various fields such as multimedia processing and high-definition image processing, demands for improving processor performance have been increasing in recent years. However, the current LSI (La
rge Scale Integration) Manufacturing technology has a limit to the speed of devices. Therefore, a multiprocessor device of a distributed processing system is receiving attention and is being actively researched and developed.

【0003】このようなマルチプロセッサ装置において
は、各プロセッサの接続方式により種々の構成が開発さ
れている。その1つとして、複数のプロセッサにメモリ
を共有させ、各プロセッサ間の情報およびデータ転送を
この共有メモリを介して行なう方式がある。マルチプロ
セッサ装置におけるプロセッサ間のデータ転送は、共有
メモリを介して行なわれるため、複数のプロセッサから
の共有メモリへのアクセスの調停を行なうための共有メ
モリ制御回路が必要となる。
In such a multiprocessor device, various configurations have been developed depending on the connection system of the processors. As one of the methods, there is a method in which a plurality of processors share a memory, and information and data transfer between the processors is performed through the shared memory. Since data transfer between processors in a multiprocessor device is performed via a shared memory, a shared memory control circuit for arbitrating access to the shared memory from a plurality of processors is required.

【0004】図8は、従来のマルチプロセッサ装置の概
略構成を示すブロック図である。マルチプロセッサ装置
は、CPU(Central Processing Unit )A100、C
PUB101、共有メモリ102、CPUA100のバ
ス105またはCPUB101のバス106と共有メモ
リバス107との接続を切換えるためのバス選択回路1
03、およびバス選択回路103のバス切換の制御を行
なうための調停回路104を含む。なお、説明の簡略化
のために、CPUA100およびCPUB101がアク
セスする対象を共有メモリ102に限定しており、一般
的なマルチプロセッサ装置を構成するメインメモリおよ
びI/O装置などは省略している。
FIG. 8 is a block diagram showing a schematic configuration of a conventional multiprocessor. The multiprocessor device includes CPUs (Central Processing Units) A100, C
A bus selection circuit 1 for switching the connection between the PUB 101, the shared memory 102, the bus 105 of the CPU A 100 or the bus 106 of the CPU B 101 and the shared memory bus 107
03, and an arbitration circuit 104 for controlling bus switching of the bus selection circuit 103. For the sake of simplicity, the access target of the CPUA 100 and the CPU B 101 is limited to the shared memory 102, and a main memory and an I / O device constituting a general multiprocessor are omitted.

【0005】図8を参照して、CPUA100が共有メ
モリ102にアクセスする場合、CPUA100の共有
メモリ102へのアクセス要求信号であるREQA信号
をアクティブにする。調停回路104は、REQA信号
がアクティブになると、CPUB101が共有メモリ1
02へアクセスしておらず、CPUA100の共有メモ
リ102へのアクセスが可能であれば、バスの切換を行
なうためのSELECT信号によってバス選択回路10
3にCPUA100のバス105を共有メモリ102の
バス107に接続させる。また、CPUB101が共有
メモリ102へアクセスする場合も同様に、CPUB1
01が共有メモリ102へのアクセス要求信号であるR
EQB信号をアクティブにする。そして、調停回路10
4はCPUA100から共有メモリ102へのアクセス
が行なわれていず、CPUB101の共有メモリ102
へのアクセスが可能であれば、SELECT信号によっ
てバス選択回路103にCPUB101のバス106を
共有メモリ102のバス107に接続させる。ここで、
CPUA100とCPUB101との共有メモリ102
へのアクセスが同時に発生した場合、調停回路104は
予め定められた優先順位に従ったアクセスの調停を行な
う。
[0005] Referring to FIG. 8, when CPUA 100 accesses shared memory 102, REQA signal which is an access request signal of CPUA 100 to shared memory 102 is activated. When the REQA signal becomes active, the arbitration circuit 104 causes the CPU
02 is not accessible and the CPUA 100 can access the shared memory 102, the bus selection circuit 10 is selected by a SELECT signal for switching the bus.
3 connects the bus 105 of the CPUA 100 to the bus 107 of the shared memory 102. Similarly, when the CPUB 101 accesses the shared memory 102,
01 is an access request signal to the shared memory 102, R
Activate the EQB signal. And the arbitration circuit 10
No. 4 indicates that the CPU A 100 has not accessed the shared memory 102 and the shared memory 102 of the CPU B 101 has not been accessed.
If the access to the shared memory 102 is possible, the bus select circuit 103 connects the bus 106 of the CPUB 101 to the bus 107 of the shared memory 102 by the SELECT signal. here,
Shared memory 102 between CPUA 100 and CPUB 101
When the accesses to the IP addresses occur at the same time, the arbitration circuit 104 arbitrates the access according to a predetermined priority.

【0006】たとえば、CPUからのアクセス要求の早
い順に優先順位を高くするとした場合、CPUA100
からのアクセス要求が先に発生し、その後にCPUB1
01からのアクセス要求が発生したとき、調停回路10
4は先にアクセス要求があったCPUA100のアクセ
ス要求を許可する。すなわち、調停回路104はSEL
ECT信号によってバス選択回路103にCPUA10
0のバス105と共有メモリ102のバス107とを接
続させる。そして、調停回路104はCPUB101に
対してWAITB信号をアクティブにし、CPUB10
1のアクセス要求を待たせる。そして、CPUA100
の共有メモリ102へのアクセス要求が終了した後、C
PUA100からのREQA信号がインアクティブにな
ると、調停回路104はCPUB101へのWAITB
信号をインアクティブにし、SELECT信号によって
バス選択回路103にCPUB101のバス106と共
有メモリ102のバス107とを接続させる。このこと
により、CPUB101が共有メモリ102へアクセス
することが可能となる。
For example, if the priority is set to be higher in the order of the access request from the CPU, the CPUA 100
Access request from the CPUB1
When an access request is issued from the arbitration circuit 10
No. 4 permits the access request of the CPUA 100 to which the access request has been made earlier. That is, the arbitration circuit 104 is
The CPUA10 is supplied to the bus selection circuit 103 by the ECT signal.
0 and the bus 107 of the shared memory 102 are connected. Then, the arbitration circuit 104 activates the WAITB signal to the CPUB101, and
1 is made to wait. And CPUA100
After the access request to the shared memory 102 is completed, C
When the REQA signal from the PUA 100 becomes inactive, the arbitration circuit 104 sends the WAITB signal to the CPUB 101.
The signal is made inactive, and the bus 106 of the CPUB 101 and the bus 107 of the shared memory 102 are connected to the bus selection circuit 103 by the SELECT signal. Thus, the CPU B 101 can access the shared memory 102.

【0007】上述したマルチプロセッサ装置に関連する
技術として、特開昭60−169968号公報に開示さ
れた発明がある。特開昭60−169968号公報に開
示された発明は、各プロセッサの共通メモリへのアクセ
スを可能にすることによって減少するメモリアクセス領
域を拡張することが可能なマルチプロセッサ装置に関す
る技術が記載されている。共通メモリへのアクセスを制
御するためのコントロールユニットは、マスタプロセッ
サとスレーブプロセッサとの間で排他的に共通メモリの
使用権を与えるものであり、マスタプロセッサとスレー
ブプロセッサとから共有メモリへのアクセス要求が同時
に発生した場合に、先にアクセス要求を出力した一方の
プロセッサに対して共通メモリの使用を許可し、他方の
プロセッサを待機状態にする。先にアクセス要求を出し
たプロセッサの共通メモリへのアクセスが終了した後
に、待機状態にあった他方のプロセッサの共通メモリへ
のアクセス要求が選択され、待機状態が解除されて共有
メモリへのアクセスが可能となる。
As a technique related to the above-described multiprocessor device, there is an invention disclosed in Japanese Patent Application Laid-Open No. 60-169968. The invention disclosed in Japanese Patent Application Laid-Open No. Sho 60-169968 describes a technique relating to a multiprocessor device capable of expanding a memory access area which is reduced by enabling each processor to access a common memory. I have. The control unit for controlling access to the common memory exclusively grants the right to use the common memory between the master processor and the slave processor, and requests access to the shared memory from the master processor and the slave processor. Occur at the same time, the use of the common memory is permitted to one of the processors that previously output the access request, and the other processor is put into a standby state. After the access request to the common memory of the processor that has issued the access request is completed, the access request to the common memory of the other processor in the standby state is selected, and the standby state is released to access the shared memory. It becomes possible.

【0008】しかし、特開昭60−169968号公報
に開示された発明は、共通メモリへのアクセスを制御す
るコントロールユニットに関する技術自体は、共通メモ
リへのアクセス調停を排他的に行なうものであり、図8
に示す従来の共有メモリ制御回路と同じものである。
However, in the invention disclosed in Japanese Patent Application Laid-Open No. 60-169968, the technology pertaining to the control unit for controlling access to the common memory itself exclusively arbitrates access to the common memory. FIG.
Is the same as the conventional shared memory control circuit shown in FIG.

【0009】[0009]

【発明が解決しようとする課題】マスタ/スレーブ方式
のマルチプロセッサ装置においては、マスタプロセッサ
がスレーブプロセッサの制御を行なっていた。すなわ
ち、スレーブプロセッサはマスタプロセッサから依頼さ
れた処理を実行し、マスタプロセッサから依頼された処
理を終了すると処理結果をマスタプロセッサに引き渡し
て、スレーブプロセッサは処理を終了する。その後、ス
レーブプロセッサはマスタプロセッサからの次の処理要
求があるまで待機状態となる。
In a master / slave type multiprocessor device, the master processor controls the slave processor. That is, the slave processor executes the process requested by the master processor, and upon ending the process requested by the master processor, delivers the processing result to the master processor, and the slave processor ends the process. Thereafter, the slave processor enters a standby state until the next processing request from the master processor.

【0010】上述した従来の共有メモリ制御回路をマス
タ/スレーブ方式のマルチプロセッサ装置に適用した場
合、スレーブプロセッサはマスタプロセッサからの処理
要求をポーリングするため、ループプログラムを実行す
る必要がある。このとき、スレーブプロセッサは待機状
態であるにもかかわらず、マスタプロセッサからの処理
要求をポーリングする必要があるため、スレーブプロセ
ッサ自体も動作していた。
When the above-described conventional shared memory control circuit is applied to a master / slave type multiprocessor, the slave processor needs to execute a loop program in order to poll a processing request from the master processor. At this time, although the slave processor is in a standby state, it needs to poll for a processing request from the master processor, and the slave processor itself has been operating.

【0011】また、マスタプロセッサからスレーブプロ
セッサへの処理要求は共有メモリを介して行なわれるた
め、スレーブプロセッサが次の処理要求をポーリングす
る際にも共有メモリへのアクセスが発生し、マスタプロ
セッサとスレーブプロセッサとのアクセス競合が頻繁に
発生するため、処理効率の低下を招いていた。さらに
は、スレーブプロセッサとマスタプロセッサとの共有メ
モリへのアクセスを可能にするためには、上述した複雑
な共有メモリ制御回路が必要となるか、または高価なデ
ュアルポートメモリを使用する必要があるという問題点
があった。
Further, since a processing request from the master processor to the slave processor is made via the shared memory, an access to the shared memory occurs even when the slave processor polls for the next processing request. Frequent access competition with the processor has caused a reduction in processing efficiency. Furthermore, in order to allow the slave processor and the master processor to access the shared memory, the above-described complicated shared memory control circuit is required, or an expensive dual-port memory must be used. There was a problem.

【0012】本発明は、上記問題点を解決するためにな
されたものであり、請求項1〜5に記載の発明の目的
は、共有メモリへのアクセスのための複雑な調停回路を
不要とし、不要な消費電力の削減が可能なマルチプロセ
ッサ装置を提供することである。
The present invention has been made to solve the above problems, and an object of the present invention is to eliminate the need for a complicated arbitration circuit for accessing a shared memory. An object is to provide a multiprocessor device capable of reducing unnecessary power consumption.

【0013】[0013]

【課題を解決するための手段】請求項1に記載のマルチ
プロセッサ装置は、第1のCPUが共有メモリへアクセ
スするとき、第2のCPUを停止状態にするための停止
手段と、停止手段によって第2のCPUが停止状態にあ
るときは第1のCPUのバスを共有メモリのバスに接続
し、停止手段によって第2のCPUが動作状態にあると
きは第2のCPUのバスを共有メモリのバスに接続する
ためのバス選択手段とを含む。
According to a first aspect of the present invention, there is provided a multiprocessor device comprising: a stop means for stopping a second CPU when a first CPU accesses a shared memory; and a stop means. The bus of the first CPU is connected to the bus of the shared memory when the second CPU is stopped, and the bus of the second CPU is connected to the bus of the shared memory when the second CPU is operating by the stopping means. Bus selection means for connecting to a bus.

【0014】停止手段は第1のCPUが共有メモリへア
クセスするとき、第2のCPUを停止状態にするため、
第2のCPUの消費電力を削減することが可能となる。
また、バス選択手段は第2のCPUの停止状態に基づい
て共有メモリのバスを切換えるため、そのハードウェア
構成を簡略化することが可能となる。
When the first CPU accesses the shared memory, the stopping means stops the second CPU.
The power consumption of the second CPU can be reduced.
Further, since the bus selecting means switches the bus of the shared memory based on the halt state of the second CPU, the hardware configuration can be simplified.

【0015】請求項2に記載のマルチプロセッサ装置
は、請求項1記載のマルチプロセッサ装置であって、停
止手段は第2のCPUに入力されるクロック信号を停止
することによって第2のCPUを停止状態にする。
According to a second aspect of the present invention, in the multiprocessor device according to the first aspect, the stopping means stops the second CPU by stopping a clock signal input to the second CPU. State.

【0016】請求項3に記載のマルチプロセッサ装置
は、第1のCPUからの指示によって第1のCPUを停
止状態にし、第1のCPUの停止状態を第2のCPUに
通知するための停止手段と、停止手段によって第1のC
PUが停止状態にあるときは第2のCPUのバスを共有
メモリのバスに接続し、停止手段によって第1のCPU
が動作状態にあるときは第1のCPUのバスを共有メモ
リのバスに接続するためのバス選択手段と、第2のCP
Uからの指示によって停止手段による第1のCPUの停
止状態を解除するための解除手段とを含む。
The multiprocessor device according to claim 3, wherein the first CPU is in a stopped state by an instruction from the first CPU, and a stop means for notifying the second CPU of the stopped state of the first CPU. And the first C
When the PU is in the stopped state, the bus of the second CPU is connected to the bus of the shared memory, and the first CPU is stopped by the stopping means.
A bus selecting means for connecting the bus of the first CPU to the bus of the shared memory when the CPU is in operation;
Release means for releasing the stop state of the first CPU by the stop means in response to an instruction from U.

【0017】停止手段は、第1のCPUからの指示によ
って第1のCPU自身を停止状態にするので、第1のC
PUの消費電力を削減することが可能となる。また、バ
ス選択手段は、第1のCPUの停止状態に基づいて共有
メモリのバスの接続を切換えるため、その回路構成を簡
略化することが可能となる。
The stopping means stops the first CPU itself in response to an instruction from the first CPU.
The power consumption of the PU can be reduced. Further, the bus selecting means switches the connection of the bus of the shared memory based on the stop state of the first CPU, so that the circuit configuration can be simplified.

【0018】請求項4に記載のマルチプロセッサ装置
は、第1のCPUおよび第2のCPUによる共有メモリ
へのアクセス状況を検出するための検出手段と、検出手
段によって検出されたアクセス状況に基づいて共有メモ
リのバスを第1のCPUのバスか第2のCPUのバスの
いずれかに接続するためのバス選択手段と、バス選択手
段が共有メモリのバスを第1のCPUのバスに接続して
いるときは、第2のCPUを停止状態にするための停止
手段とを含む。
According to a fourth aspect of the present invention, there is provided a multiprocessor device, comprising: detecting means for detecting a state of access to a shared memory by a first CPU and a second CPU; Bus selecting means for connecting the shared memory bus to either the first CPU bus or the second CPU bus; and the bus selecting means connecting the shared memory bus to the first CPU bus. And stopping means for bringing the second CPU into a stopped state.

【0019】停止手段は、バス選択手段が共有メモリの
バスを第1のCPUのバスに接続しているときは、第2
のCPUを停止状態にするので、第2のCPUの消費電
力を削減することが可能となる。また、バス選択手段
は、検出手段によって検出されたアクセス状況に基づい
て共有メモリのバスを第1のCPUのバスか第2のCP
Uのバスのいずれかに接続するため、その回路構成を簡
略化することが可能となる。
When the bus selecting means connects the bus of the shared memory to the bus of the first CPU, the stopping means is connected to the second CPU.
Of the second CPU is stopped, so that the power consumption of the second CPU can be reduced. Further, the bus selecting means switches the bus of the shared memory to the bus of the first CPU or the second CP based on the access status detected by the detecting means.
Since the connection is made to any one of the U buses, the circuit configuration can be simplified.

【0020】請求項5に記載のマルチプロセッサ装置
は、請求項4記載のマルチプロセッサ装置であって、検
出手段は所定時間以下の間隔で発生する共有メモリへの
アクセス群を検出し、当該アクセス群を所定回検出した
ときにバス検出手段にバスの接続の切換を指示する。
According to a fifth aspect of the present invention, there is provided the multiprocessor device according to the fourth aspect, wherein the detecting means detects an access group to the shared memory which occurs at intervals of a predetermined time or less, and Is detected a predetermined number of times, the bus detection means is instructed to switch the bus connection.

【0021】[0021]

【発明の実施の形態】BEST MODE FOR CARRYING OUT THE INVENTION

[実施の形態1]図1は、本発明の実施の形態1におけ
るマルチプロセッサ装置の概略構成を示すブロック図で
ある。マルチプロセッサ装置は、マスタCPU1と、ス
レーブCPU2と、共有メモリ3と、バスバッファ4お
よび5と、スレーブCPU2を停止させるためのスレー
ブ停止ビットのレジスタ6と、スレーブCPU2が待機
状態にあることを示すためのRDYビットのレジスタ7
と、スレーブCPU2へ供給するクロック信号を制御す
るためのクロック制御回路8と、インバータ9とを含
む。なお、図1は、説明の簡略化のためにマスタCPU
1およびスレーブCPU2のアクセス対象を共有メモリ
3に限定しており、一般的なマルチプロセッサ装置を構
成するメインメモリやI/O装置等は省略している。
[First Embodiment] FIG. 1 is a block diagram showing a schematic configuration of a multiprocessor device according to a first embodiment of the present invention. The multiprocessor device indicates that the master CPU 1, the slave CPU 2, the shared memory 3, the bus buffers 4 and 5, the slave stop bit register 6 for stopping the slave CPU 2, and the slave CPU 2 are in a standby state. RDY bit register 7 for
And a clock control circuit 8 for controlling a clock signal supplied to the slave CPU 2, and an inverter 9. FIG. 1 shows a master CPU for simplicity of explanation.
1 and the access target of the slave CPU 2 are limited to the shared memory 3, and a main memory and an I / O device constituting a general multiprocessor are omitted.

【0022】共有メモリ3に対するアクセスは、マスタ
CPU1およびスレーブCPU2の両方から可能である
が、同時にアクセスすることはできない。すなわち、停
止指示信号がハイレベルにあるときは、バスバッファ4
がアクティブとなり、マスタCPU1のバス10が共有
メモリ3のバス12に接続される。また、停止指示信号
がロウレベルのときは、バスバッファ5がアクティブと
なり、スレーブCPU2のバス11が共有メモリ3のバ
ス12に接続される。通常状態では、スレーブ停止ビッ
ト6がリセット状態となっており、停止指示信号がロウ
レベルであるので、スレーブCPU2のバス11が共有
メモリ3のバス12に接続されており、スレーブCPU
2からの共有メモリ3へのアクセスが可能である。
Access to the shared memory 3 is possible from both the master CPU 1 and the slave CPU 2, but they cannot be accessed simultaneously. That is, when the stop instruction signal is at the high level, the bus buffer 4
Becomes active, and the bus 10 of the master CPU 1 is connected to the bus 12 of the shared memory 3. When the stop instruction signal is at a low level, the bus buffer 5 becomes active, and the bus 11 of the slave CPU 2 is connected to the bus 12 of the shared memory 3. In the normal state, the slave stop bit 6 is in a reset state, and the stop instruction signal is at a low level, so that the bus 11 of the slave CPU 2 is connected to the bus 12 of the shared memory 3 and the slave CPU
2 can access the shared memory 3.

【0023】マスタCPU1が共有メモリ3へアクセス
する場合、RDYビット7によってスレーブCPU2が
アイドル状態であることを確認した後、スレーブ停止ビ
ット6をセットすることにより停止指示信号をハイレベ
ルにし、バスバッファ4をアクティブにする。このこと
により、マスタCPU1のバス10が共有メモリ3のバ
ス12に接続され、マスタCPU1が共有メモリ3へア
クセスすることが可能となる。
When the master CPU 1 accesses the shared memory 3, after confirming that the slave CPU 2 is in an idle state by the RDY bit 7, the stop instruction signal is set to a high level by setting the slave stop bit 6 and the bus buffer is set. Activate 4 As a result, the bus 10 of the master CPU 1 is connected to the bus 12 of the shared memory 3, and the master CPU 1 can access the shared memory 3.

【0024】RDYビット7は、マスタCPU1および
スレーブCPU2のそれぞれのアドレス空間上に割付け
られた1ビットのレジスタ(I/Oポートまたはメモリ
マップドI/O)であり、スレーブCPU2がプログラ
ム操作によってセット/リセットが可能である。また、
マスタCPU1はRDYビット7をプログラム操作によ
って読取ることが可能である。
The RDY bit 7 is a 1-bit register (I / O port or memory-mapped I / O) allocated in the address space of each of the master CPU 1 and the slave CPU 2, and is set by the slave CPU 2 by a program operation. / Reset is possible. Also,
The master CPU 1 can read the RDY bit 7 by a program operation.

【0025】同様に、スレーブ停止ビット6は、マスタ
CPU1およびスレーブCPU2のそれぞれのアドレス
空間上に割付けられた1ビットのレジスタであり、マス
タCPU1がプログラム操作によってセット/リセット
が可能である。また、スレーブCPU2はスレーブ停止
ビット6をプログラム操作によって読取ることが可能で
ある。
Similarly, the slave stop bit 6 is a 1-bit register assigned to each address space of the master CPU 1 and the slave CPU 2, and the master CPU 1 can set / reset by a program operation. Further, the slave CPU 2 can read the slave stop bit 6 by a program operation.

【0026】マスタCPU1によってスレーブ停止ビッ
ト6がセットされると、停止指示信号がハイレベルとな
り、インバータ9の出力がロウレベルとなってバスバッ
ファ4がイネーブル状態となる。一方、バスバッファ5
はディスエーブルとなり、バスバッファ5の出力はハイ
インピーダンスとなる。したがって、マスタCPU1の
バス10が共有メモリ3のバス12に接続され、マスタ
CPU1から共有メモリ3へアクセスすることが可能と
なる。
When the master CPU 1 sets the slave stop bit 6, the stop instruction signal goes high, the output of the inverter 9 goes low, and the bus buffer 4 is enabled. On the other hand, the bus buffer 5
Is disabled, and the output of the bus buffer 5 becomes high impedance. Therefore, the bus 10 of the master CPU 1 is connected to the bus 12 of the shared memory 3, and the master CPU 1 can access the shared memory 3.

【0027】クロック制御回路8は、停止指示信号がハ
イレベルとなったときに、スレーブCPU2の動作タイ
ミング(バスサイクルのタイミング)と同期を取ってス
レーブCPU2へ供給するクロック信号を停止する。こ
れにより、スレーブCPU2は停止状態になり、スレー
ブCPU2の消費電力を削減することができる。
When the stop instruction signal goes high, the clock control circuit 8 stops the clock signal supplied to the slave CPU 2 in synchronization with the operation timing (bus cycle timing) of the slave CPU 2. As a result, the slave CPU 2 enters the halt state, and the power consumption of the slave CPU 2 can be reduced.

【0028】図2は、本発明の実施の形態1におけるマ
ルチプロセッサ装置の処理手順を説明するためのフロー
チャートである。まず、スレーブCPU2は、アイドル
状態(マスタCPU1から依頼された処理を終了した状
態)になると、RDYビット7をセットする(S1)。
マスタCPU1は、RDYビット7をポーリングしてお
り、RDYビット7が“1”となった場合(S2,YE
S)、スレーブ停止ビット6をセットする(S3)。ス
レーブ停止ビット6がセットされることにより、クロッ
ク制御回路8はクロック信号を停止してスレーブCPU
2を停止状態にする。
FIG. 2 is a flowchart for explaining a processing procedure of the multiprocessor device according to the first embodiment of the present invention. First, when the slave CPU 2 enters an idle state (a state in which processing requested by the master CPU 1 has been completed), the slave CPU 2 sets the RDY bit 7 (S1).
The master CPU 1 polls the RDY bit 7, and when the RDY bit 7 becomes "1" (S2, YE
S), the slave stop bit 6 is set (S3). When the slave stop bit 6 is set, the clock control circuit 8 stops the clock signal and
2 is stopped.

【0029】マスタCPU1は、共有メモリ3にスレー
ブCPU2に対するコマンドと処理データとを書込み
(S4)、スレーブ停止ビット6をリセットする(S
5)。スレーブ停止ビット6がリセットされることによ
り、クロック制御回路8はスレーブCPU2に対してク
ロック信号の供給を再開する。
The master CPU 1 writes a command and processing data for the slave CPU 2 into the shared memory 3 (S4), and resets the slave stop bit 6 (S4).
5). When the slave stop bit 6 is reset, the clock control circuit 8 restarts supplying the clock signal to the slave CPU 2.

【0030】スレーブCPU2は、S1においてRDY
ビット7をセットした後、スレーブ停止ビット6をポー
リングしており、スレーブ停止ビット6が“0”となる
のを検出して停止状態が解除されたことを知る。スレー
ブCPU2は、停止状態が解除された後、RDYビット
7をリセットし(S6)、共有メモリ3からマスタCP
U1が書込んだコマンドと処理データとを読込む(S
7)。そして、スレーブCPU2は、コマンドに従った
処理を実行した後(S8)、共有メモリ3に対してステ
ータスと処理結果を書込む(S9)。そして、スレーブ
CPU2は、再びRDYビット7をセットする(S1
0)。
The slave CPU 2 executes RDY in S1.
After the bit 7 is set, the slave stop bit 6 is polled, and when the slave stop bit 6 becomes "0", it is known that the stop state has been released. After the suspension state is released, the slave CPU 2 resets the RDY bit 7 (S6), and sends the master CP from the shared memory 3 to the master CPU.
The command and processing data written by U1 are read (S1).
7). Then, after executing the processing according to the command (S8), the slave CPU 2 writes the status and the processing result in the shared memory 3 (S9). Then, the slave CPU 2 sets the RDY bit 7 again (S1).
0).

【0031】マスタCPU1は、RDYビット7が
“1”となったことを検出し(S11,YES)、スレ
ーブ停止ビット6をセットすることにより、スレーブC
PU2へ供給されるクロック信号を停止し(S12)、
共有メモリ3からスレーブCPU2が書込んだステータ
スと処理結果とを読込む(S13)。そして、マスタC
PU1は、ステップS4へ戻り以上の処理を繰返す。
The master CPU 1 detects that the RDY bit 7 has become "1" (S11, YES) and sets the slave stop bit 6 to
Stop the clock signal supplied to PU2 (S12),
The status and the processing result written by the slave CPU 2 are read from the shared memory 3 (S13). And Master C
PU1 returns to step S4 and repeats the above processing.

【0032】本実施の形態においては、スレーブCPU
2を停止状態にするために、クロックの供給を停止して
いるが、スレーブCPU2の動作モード制御、たとえば
ホールド等が可能である場合には、クロックの供給を停
止する代わりにスレーブCPU2を停止モードにする
か、またはスレーブCPU2をリセット状態にしてスレ
ーブCPU2の動作を停止するようにしてもよい。ま
た、本実施の形態においては、1個のマスタCPU1と
1個のスレーブCPU2により構成されているが、スレ
ーブCPU2を複数個の構成にすることも可能である。
In the present embodiment, the slave CPU
In order to put the slave CPU 2 in a stopped state, the clock supply is stopped. However, if the operation mode control of the slave CPU 2 such as hold can be performed, the slave CPU 2 is stopped in place of the clock supply stop mode. Alternatively, the slave CPU 2 may be reset to stop the operation of the slave CPU 2. In the present embodiment, one master CPU 1 and one slave CPU 2 are used, but a plurality of slave CPUs 2 can be used.

【0033】以上説明したように、スレーブCPU2が
アイドル状態にあるときに、マスタCPU1によって停
止状態にされるので、スレーブCPU2の消費電力を削
減することが可能となり、また従来のような共有メモリ
3に対するアクセスを調停するための複雑な調停回路が
不要となる。さらには、スレーブCPU2がマスタCP
U1からの処理依頼をポーリングする必要がなくなり、
停止状態が解除されると同時に処理を開始することが可
能となるので、迅速な処理が可能である。
As described above, when the slave CPU 2 is in the idle state, the slave CPU 2 is stopped by the master CPU 1, so that the power consumption of the slave CPU 2 can be reduced. A complicated arbitration circuit for arbitrating the access to is unnecessary. Further, the slave CPU 2 is
There is no need to poll for processing requests from U1,
Since the processing can be started at the same time when the stop state is released, quick processing is possible.

【0034】[実施の形態2]図3は、本発明の実施の
形態2におけるマルチプロセッサ装置の概略構成を示す
ブロック図である。マルチプロセッサ装置は、マスタC
PU1と、スレーブCPU2と、共有メモリ3と、バス
バッファ4および5と、スレーブCPU2のクロック信
号の制御を行なうためのクロック制御回路8と、インバ
ータ9と、クロック制御回路8から出力されるHALT
信号の状態を保持するためのHALTビットのレジスタ
15と、スレーブCPU2に対して起動を要求するため
のスレーブ起動ビットのレジスタ16と、スレーブCP
U2からの指示によってクロック制御回路8にクロック
の停止指示信号を出力するための停止ビットのレジスタ
17とを含む。
[Second Embodiment] FIG. 3 is a block diagram showing a schematic configuration of a multiprocessor device according to a second embodiment of the present invention. The multiprocessor device is a master C
PU 1, slave CPU 2, shared memory 3, bus buffers 4 and 5, clock control circuit 8 for controlling clock signals of slave CPU 2, inverter 9, and HALT output from clock control circuit 8
A HALT bit register 15 for holding a signal state, a slave activation bit register 16 for requesting the slave CPU 2 to activate, and a slave CP
And a stop bit register 17 for outputting a clock stop instruction signal to the clock control circuit 8 in response to an instruction from U2.

【0035】通常状態においては、停止ビット17はリ
セット状態であり、クロック制御回路8に入力される停
止指示信号はインアクティブである。クロック制御回路
8は、停止指示信号がインアクティブの場合には、スレ
ーブCPU2に対してクロック信号を供給し、HALT
信号をロウレベルにし、バスバッファ5をアクティブに
する。したがって、スレーブCPU2のバス11が共有
メモリ3のバス12に接続され、スレーブCPU2から
共有メモリ3に対するアクセスが可能である。
In the normal state, the stop bit 17 is in the reset state, and the stop instruction signal input to the clock control circuit 8 is inactive. The clock control circuit 8 supplies a clock signal to the slave CPU 2 when the stop instruction signal is inactive,
The signal is set to low level, and the bus buffer 5 is activated. Therefore, the bus 11 of the slave CPU 2 is connected to the bus 12 of the shared memory 3 and the slave CPU 2 can access the shared memory 3.

【0036】スレーブCPU2は、アイドル状態になる
と、自らの動作を停止するために、停止ビット17をセ
ットする。クロック制御回路8は、停止指示信号がアク
ティブになると、スレーブCPU2へのクロック信号を
停止するとともに、HALT信号をハイレベルにする。
HALT信号がハイレベルになることにより、バスバッ
ファ4がアクティブとなり、マスタCPU1のバス10
が共有メモリ3のバス12に接続される。
When the slave CPU 2 enters the idle state, the slave CPU 2 sets a stop bit 17 to stop its own operation. When the stop instruction signal becomes active, the clock control circuit 8 stops the clock signal to the slave CPU 2 and sets the HALT signal to a high level.
When the HALT signal goes high, the bus buffer 4 becomes active and the bus 10 of the master CPU 1
Are connected to the bus 12 of the shared memory 3.

【0037】マスタCPU1が共有メモリ3にアクセス
する場合、HALTビット15が“1”(スレーブCP
U2が停止状態)であることを確認した後、共有メモリ
3に対するアクセスを行なう。
When the master CPU 1 accesses the shared memory 3, the HALT bit 15 is set to "1" (slave CP).
After confirming that U2 is in the stopped state, access to the shared memory 3 is performed.

【0038】停止ビット17は、1ビットのレジスタで
あり、スレーブCPU2によってセットすることが可能
である。また、停止ビット17は、マスタCPU1がス
レーブ起動ビット16をセットすることによりリセット
される。
The stop bit 17 is a 1-bit register, and can be set by the slave CPU 2. The stop bit 17 is reset when the master CPU 1 sets the slave start bit 16.

【0039】HALTビット15は、マスタCPU1の
アドレス空間上に割付けられた1ビットのレジスタであ
り、マスタCPU1はプログラム操作によって読取るこ
とが可能である。また、スレーブ起動ビット16は、マ
スタCPU1のアドレス空間上に割付けられた1ビット
のレジスタであり、マスタCPU1がプログラム操作に
よってセット/リセットすることが可能である。
The HALT bit 15 is a 1-bit register allocated in the address space of the master CPU 1, and can be read by the master CPU 1 by a program operation. The slave activation bit 16 is a 1-bit register allocated on the address space of the master CPU 1 and can be set / reset by the master CPU 1 by a program operation.

【0040】マスタCPU1は、共有メモリ3へのアク
セスが終了すると、スレーブ起動ビット16をセット
し、停止ビット17をリセットすることによりスレーブ
CPU2の停止状態を解除するとともに、共有メモリ3
に対するアクセス権をスレーブCPU2に渡す。
When the access to the shared memory 3 ends, the master CPU 1 sets the slave start bit 16 and resets the stop bit 17 to release the stop state of the slave CPU 2 and reset the stop bit 17.
To the slave CPU 2.

【0041】図4は、本発明の実施の形態2におけるマ
ルチプロセッサ装置の処理手順を示すフローチャートで
ある。まず、スレーブCPU2は、アイドル状態になる
と停止ビット17をセットする(S21)。マスタCP
U1は、HALTビット15をポーリングしており、H
ALT信号が“1”になったとき(S22,YES)、
共有メモリ3に対してコマンドと処理データを書込む
(S23)。そして、マスタCPU1は、スレーブ起動
ビット16をセットする(S24)。スレーブ起動ビッ
ト16のセットにより、起動信号にロウレベルのパルス
が出力され、停止ビット17がリセットされる。この停
止ビット17のリセットにより、停止指示信号はロウレ
ベルとなり、クロック制御回路8はスレーブCPU2へ
のクロック信号の供給を再開するとともに、HALT信
号をロウレベルにし、スレーブCPU2のバス11と共
有メモリ3のバス12とを接続する。
FIG. 4 is a flowchart showing a processing procedure of the multiprocessor according to the second embodiment of the present invention. First, when the slave CPU 2 enters the idle state, it sets the stop bit 17 (S21). Master CP
U1 is polling HALT bit 15 and
When the ALT signal becomes "1" (S22, YES),
The command and the processing data are written to the shared memory 3 (S23). Then, the master CPU 1 sets the slave activation bit 16 (S24). By setting the slave activation bit 16, a low-level pulse is output as the activation signal, and the stop bit 17 is reset. When the stop bit 17 is reset, the stop instruction signal goes low, the clock control circuit 8 resumes the supply of the clock signal to the slave CPU 2, the HALT signal goes low, and the bus 11 of the slave CPU 2 and the bus of the shared memory 3. 12 is connected.

【0042】スレーブCPU2は、停止状態が解除され
た後、マスタCPU1によって書込まれた共有メモリ3
のコマンドと処理データとを読出し(S25)、コマン
ドに従った処理を実行する(S26)。スレーブCPU
2は、共有メモリ3にアクセスし、ステータスと処理結
果を書込み(S27)、再び停止ビット17をセットす
る(S28)。
The slave CPU 2 releases the shared memory 3 written by the master CPU 1 after the suspension state is released.
Is read out (S25), and processing according to the command is executed (S26). Slave CPU
2 accesses the shared memory 3, writes the status and the processing result (S27), and sets the stop bit 17 again (S28).

【0043】マスタCPU1は、HALTビット15を
ポーリングしており、HALTビットが“1”となった
とき(S29,YES)、共有メモリ3にアクセスし、
スレーブCPU2が書込んだステータスと処理結果とを
読出す(S30)。そして、マスタCPU1は、ステー
タS23へ戻り、以上の処理を繰返す。
The master CPU 1 polls the HALT bit 15 and, when the HALT bit becomes "1" (S29, YES), accesses the shared memory 3.
The status and the processing result written by the slave CPU 2 are read (S30). Then, master CPU 1 returns to stator S23 and repeats the above processing.

【0044】以上説明したように、本実施の形態におけ
るマルチプロセッサ装置は、スレーブCPU2がアイド
ル状態にあるときに、自らを停止状態にするので消費電
力の削減が可能になるとともに、従来のような共有メモ
リへのアクセスを調停するための調停回路が不要とな
る。また、スレーブCPU2は、マスタCPU1からの
処理依頼をポーリングする必要がなくなり、停止状態が
解除されると同時に処理を開始することが可能となるの
で、迅速な処理が可能になる。
As described above, the multiprocessor according to the present embodiment stops the slave CPU 2 when the slave CPU 2 is in the idle state, so that the power consumption can be reduced, and the conventional CPU can reduce power consumption. An arbitration circuit for arbitrating access to the shared memory becomes unnecessary. Further, the slave CPU 2 does not need to poll for a processing request from the master CPU 1 and can start processing at the same time when the stopped state is released, thereby enabling quick processing.

【0045】[実施の形態3]図5は、本発明の実施の
形態3におけるマルチプロセッサ装置の概略構成を示す
ブロック図である。マルチプロセッサ装置は、マスタC
PU1と、スレーブCPU2と、共有メモリ3と、バス
バッファ4および5と、スレーブCPU2のクロック信
号を制御するためのクロック制御回路8と、インバータ
9と、共有メモリに対するアクセス状況を検出するため
の共有メモリアクセス検出回路20とを含む。
[Third Embodiment] FIG. 5 is a block diagram showing a schematic configuration of a multiprocessor device according to a third embodiment of the present invention. The multiprocessor device is a master C
PU1, a slave CPU 2, a shared memory 3, bus buffers 4 and 5, a clock control circuit 8 for controlling a clock signal of the slave CPU 2, an inverter 9, and a shared for detecting an access state to the shared memory. And a memory access detection circuit 20.

【0046】共有メモリアクセス検出回路20は、共有
メモリのバス12に接続され、共有メモリのアクセス状
況を監視する回路である。共有メモリアクセス検出回路
20は、マスタCPU1とスレーブCPU2との共有メ
モリ3に対するアクセスを監視し、予め設定された一定
時間内に発生する連続アクセスの途切れを検出するため
の回路である。すなわち、マスタ/スレーブ方式のマル
チプロセッサ装置においては、共有メモリ3に対するア
クセス要求が連続して発生することに着目したものであ
る。共有メモリへのアクセスは、次に、示す4種類の連
続したアクセス要求が所定の時間をおいて繰返されるこ
とによって行なわれる。
The shared memory access detection circuit 20 is a circuit connected to the bus 12 of the shared memory and monitoring the access status of the shared memory. The shared memory access detection circuit 20 is a circuit for monitoring access of the master CPU 1 and the slave CPU 2 to the shared memory 3 and detecting interruption of continuous access occurring within a predetermined time. That is, in the master / slave type multiprocessor device, attention is paid to the fact that access requests to the shared memory 3 are continuously generated. Access to the shared memory is performed by repeating the following four types of continuous access requests at predetermined time intervals.

【0047】(1) マスタCPU1によるコマンドと
データの書込。 (2) スレーブCPU2によるコマンドとデータの読
取。
(1) Writing of commands and data by the master CPU 1 (2) Reading commands and data by the slave CPU 2.

【0048】(3) スレーブCPU2によるステータ
スとデータの書込。 (4) マスタCPU1によるステータスとデータの読
取。
(3) Status and data writing by slave CPU 2. (4) Status and data reading by the master CPU 1.

【0049】図6は、共有メモリアクセス検出回路20
の回路構成の一例を示す図である。共有メモリアクセス
検出回路20は、共有メモリ3へのアクセス要求が発生
したときにリセットされ、共有メモリ3へのアクセス要
求が所定時間ない場合に出力をセットするカウンタ22
および28と、インバータ23および29と、JKフリ
ップフロップ24および30と、Dフリップフロップ2
5および31と、NANDゲート26および32と、R
Sフリップフロップ27とを含む。
FIG. 6 shows the shared memory access detection circuit 20.
FIG. 3 is a diagram showing an example of the circuit configuration of FIG. The shared memory access detection circuit 20 is reset when an access request to the shared memory 3 is generated, and sets a counter 22 for setting an output when there is no access request to the shared memory 3 for a predetermined time.
And 28, inverters 23 and 29, JK flip-flops 24 and 30, and D flip-flop 2
5 and 31; NAND gates 26 and 32;
And an S flip-flop 27.

【0050】図7は、図6に示す共有メモリアクセス検
出回路20のタイミングチャートである。まず、マスタ
CPU1が共有メモリ3に対してコマンドとデータを書
込むときに、に示すタイミングでカウンタ22の出力
信号1aがロウレベルとなる。マスタCPU1による、
共有メモリ3に対する最後のアクセスの後、所定時間が
経過したに示すタイミングでカウンタ22の出力1a
がハイレベルとなる。同じタイミングでインバータ23
の出力1bが立下がり、この立下がりによってJKフリ
ップフロップ24の出力信号1cが反転する。信号1c
の立上がりの1クロック後に、Dフリップフロップ25
の出力信号1dがハイレベルとなり、その結果NAND
ゲート26の出力信号1eに1クロック分のロウレベル
のパルスが出力される。このパルスによってRSフリッ
プフロップ27の出力信号である停止指示信号がロウレ
ベルとなる。
FIG. 7 is a timing chart of the shared memory access detection circuit 20 shown in FIG. First, when the master CPU 1 writes a command and data to the shared memory 3, the output signal 1a of the counter 22 goes low at the timing shown in FIG. By the master CPU 1
After the last access to the shared memory 3, the output 1 a of the counter 22
Becomes high level. At the same timing, the inverter 23
The output 1b of the JK flip-flop 24 is inverted by this fall. Signal 1c
One clock after the rising edge of D flip-flop 25
Output signal 1d attains a high level.
A low-level pulse for one clock is output as the output signal 1e of the gate 26. With this pulse, the stop instruction signal, which is the output signal of the RS flip-flop 27, goes low.

【0051】次に、スレーブCPU2が共有メモリ3か
らコマンドとデータとを読取る際に発生するアクセス要
求によって、に示すタイミングでカウンタ28の出力
信号2aがロウレベルとなる。そして、スレーブCPU
2が共有メモリ3に対して最後のアクセス要求を行なっ
た後、所定時間経過後にに示すタイミングでカウンタ
28の出力信号2aがハイレベルとなる。同じタイミン
グでインバータ29の出力2bが立下がり、この立下が
りによってJKフリップフロップ30の出力信号2cが
反転する。
Next, in response to an access request generated when the slave CPU 2 reads a command and data from the shared memory 3, the output signal 2a of the counter 28 goes low at the timing shown in FIG. And the slave CPU
2 makes the last access request to the shared memory 3, the output signal 2a of the counter 28 becomes high level at a timing shown after a predetermined time has elapsed. At the same timing, the output 2b of the inverter 29 falls, and the falling causes the output signal 2c of the JK flip-flop 30 to be inverted.

【0052】さらに、スレーブCPU2が共有メモリ3
にステータスとデータを書込む際に、に示すタイミン
グでカウンタ28の出力信号2aがロウレベルとなる。
そして、スレーブCPU2が共有メモリ3に対して最後
のアクセス要求を行なった後、所定時間経過したに示
すタイミングで、カウンタ28の出力信号2aがハイレ
ベルとなる。同じタイミングでインバータ29の出力信
号2bが立下がり、この立下がりによってJKフリップ
フロップ30の出力信号2cがロウレベルとなる。信号
2cが立下がった後、1クロック後にDフリップフロッ
プ31の出力信号2dが立下がり、その結果NANDゲ
ート32の出力信号2eに1クロック分のロウレベルの
パルスが出力される。この出力信号2eのパルスによっ
て、RSフリップフロップ27の出力である停止指示信
号がハイレベルとなる。
Further, the slave CPU 2
When the status and data are written into the counter 28, the output signal 2a of the counter 28 goes low at the timing shown in FIG.
After the slave CPU 2 makes the last access request to the shared memory 3, the output signal 2a of the counter 28 goes high at a timing indicated by a lapse of a predetermined time. At the same timing, the output signal 2b of the inverter 29 falls, and the fall causes the output signal 2c of the JK flip-flop 30 to go low. One clock after the fall of the signal 2c, the output signal 2d of the D flip-flop 31 falls. As a result, a low-level pulse for one clock is output to the output signal 2e of the NAND gate 32. With the pulse of the output signal 2e, the stop instruction signal output from the RS flip-flop 27 goes high.

【0053】さらに、マスタCPU1が共有メモリ3か
らステータスとデータを読取る際に発生するアクセス要
求によって、に示すタイミングでカウンタ22の出力
信号1aがロウレベルとなる。マスタCPU1が最後に
共有メモリ3にアクセスした後、所定時間経過後にに
示すタイミングで、カウンタ22の出力信号1aがハイ
レベルとなる。同じタイミングでインバータ23の出力
2bが立下がり、この立下がりによってJKフリップフ
ロップ24の出力信号1cがロウレベルとなる。
Further, the output signal 1a of the counter 22 goes low at the timing shown by the access request generated when the master CPU 1 reads the status and data from the shared memory 3. After the master CPU 1 accesses the shared memory 3 for the last time, the output signal 1a of the counter 22 becomes high level at a timing shown after a predetermined time has elapsed. At the same timing, the output 2b of the inverter 23 falls, and the fall causes the output signal 1c of the JK flip-flop 24 to go low.

【0054】その後、マスタCPU1がコマンドとデー
タを書込む際に発生するアクセス要求によって、に示
すタイミング以降の各信号の変化が繰返される。
Thereafter, according to the access request generated when the master CPU 1 writes the command and the data, the change of each signal after the timing shown in the figure is repeated.

【0055】RSフリップフロップ27の出力信号であ
る停止指示信号がハイレベルのときはバスバッファ4を
イネーブル状態にすることによってマスタCPU1のバ
ス10と共有メモリ3のバス12とを接続する。また、
バスバッファ5をディスエーブルにすることによってバ
スバッファ5の出力をハイインピーダンスにする。
When the stop instruction signal which is the output signal of the RS flip-flop 27 is at a high level, the bus buffer 4 is enabled to connect the bus 10 of the master CPU 1 and the bus 12 of the shared memory 3. Also,
By disabling the bus buffer 5, the output of the bus buffer 5 is set to high impedance.

【0056】停止指示信号がロウレベルになったとき
に、バスバッファ4がディスエーブルとなり、バスバッ
ファの出力がハイインピーダンスとなる。また、停止指
示信号がロウレベルとなったときに、バスバッファ5を
イネーブルにすることにより、スレーブCPU2のバス
11と共有メモリ3のバス12とを接続する。
When the stop instruction signal goes low, the bus buffer 4 is disabled, and the output of the bus buffer becomes high impedance. Further, when the stop instruction signal becomes low level, the bus 11 of the slave CPU 2 is connected to the bus 12 of the shared memory 3 by enabling the bus buffer 5.

【0057】以上説明したように、共有メモリアクセス
検出回路20は、スレーブCPU2のアイドル状態を自
動的に検出し、スレーブCPU2のクロック信号を停止
するとともに、共有メモリ3に対するアクセス権の切換
を行なうので、スレーブCPU2の消費電力を削減する
ことができ、従来のような共有メモリへのアクセス要求
の調停を行なうための調停回路が不要になる。
As described above, the shared memory access detection circuit 20 automatically detects the idle state of the slave CPU 2, stops the clock signal of the slave CPU 2, and switches the access right to the shared memory 3. In addition, the power consumption of the slave CPU 2 can be reduced, and a conventional arbitration circuit for arbitrating an access request to a shared memory is not required.

【0058】さらには、スレーブCPU2は、マスタC
PU1からの処理依頼をポーリングする必要がなく、ス
レーブCPU2の停止状態が解除されると同時にスレー
ブCPU2が処理を開始することが可能になるので、迅
速な処理が可能になる。
Further, the slave CPU 2
There is no need to poll for a processing request from the PU1, and the slave CPU 2 can start processing at the same time that the stopped state of the slave CPU 2 is released, so that quick processing becomes possible.

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

【図1】本発明の実施の形態1におけるマルチプロセッ
サ装置の概略構成を示すブロック図である。
FIG. 1 is a block diagram illustrating a schematic configuration of a multiprocessor device according to a first embodiment of the present invention.

【図2】本発明の実施の形態1におけるマルチプロセッ
サ装置の処理手順を示すフローチャートである。
FIG. 2 is a flowchart illustrating a processing procedure of the multiprocessor device according to the first embodiment of the present invention.

【図3】本発明の実施の形態2におけるマルチプロセッ
サ装置の概略構成を示すブロック図である。
FIG. 3 is a block diagram illustrating a schematic configuration of a multiprocessor device according to a second embodiment of the present invention.

【図4】本発明の実施の形態2におけるマルチプロセッ
サ装置の処理手順を示すフローチャートである。
FIG. 4 is a flowchart illustrating a processing procedure of the multiprocessor device according to the second embodiment of the present invention.

【図5】本発明の実施の形態3におけるマルチプロセッ
サ装置の概略構成を示すブロック図である。
FIG. 5 is a block diagram illustrating a schematic configuration of a multiprocessor device according to a third embodiment of the present invention.

【図6】図5の共有メモリアクセス検出回路20の回路
構成の一例を示す図である。
FIG. 6 is a diagram illustrating an example of a circuit configuration of a shared memory access detection circuit 20 of FIG. 5;

【図7】図5の共有メモリアクセス検出回路20のタイ
ミングチャートである。
7 is a timing chart of the shared memory access detection circuit 20 of FIG.

【図8】従来のマルチプロセッサ装置の概略構成を示す
ブロック図である。
FIG. 8 is a block diagram showing a schematic configuration of a conventional multiprocessor device.

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

1 マスタCPU 2 スレーブCPU 3 共有メモリ 4,5 バスバッファ 6 スレーブ停止ビットのレジスタ 7 RDYビットのレジスタ 8 クロック制御回路 9 インバータ 15 HALTビットのレジスタ 16 スレーブ起動ビットのレジスタ 17 停止ビットのレジスタ 20 共有メモリアクセス検出回路 1 Master CPU 2 Slave CPU 3 Shared memory 4, 5 Bus buffer 6 Register for slave stop bit 7 Register for RDY bit 8 Clock control circuit 9 Inverter 15 Register for HALT bit 16 Register for slave start bit 17 Register for stop bit 20 Shared memory Access detection circuit

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 第1のCPUが共有メモリへアクセスす
るとき、第2のCPUを停止状態にするための停止手段
と、 前記停止手段によって前記第2のCPUが停止状態にあ
るときは前記第1のCPUのバスを前記共有メモリのバ
スに接続し、前記停止手段によって前記第2のCPUが
動作状態にあるときは前記第2のCPUのバスを前記共
有メモリのバスに接続するためのバス選択手段とを含む
マルチプロセッサ装置。
A stopping means for stopping a second CPU when the first CPU accesses the shared memory; and a stop means for stopping the second CPU when the second CPU is stopped by the stopping means. A bus for connecting the bus of the second CPU to the bus of the shared memory when the bus of the first CPU is connected to the bus of the shared memory, and when the second CPU is operating by the stopping means; A multiprocessor device including a selection unit.
【請求項2】 前記停止手段は、前記第2のCPUに入
力されるクロック信号を停止することによって前記第2
のCPUを停止状態にする、請求項1記載のマルチプロ
セッサ装置。
2. The method according to claim 1, wherein the stopping unit stops the clock signal input to the second CPU to stop the second CPU.
2. The multiprocessor device according to claim 1, wherein said CPU is stopped.
【請求項3】 第1のCPUからの指示によって該第1
のCPUを停止状態にし、該第1のCPUの停止状態を
第2のCPUに通知するための停止手段と、 前記停止手段によって前記第1のCPUが停止状態にあ
るときは前記第2のCPUのバスを前記共有メモリのバ
スに接続し、前記停止手段によって前記第1のCPUが
動作状態にあるときは前記第1のCPUのバスを前記共
有メモリのバスに接続するためのバス選択手段と、 前記第2のCPUからの指示によって前記停止手段によ
る第1のCPUの停止状態を解除するための解除手段と
を含むマルチプロセッサ装置。
3. The first CPU according to an instruction from a first CPU.
And a stop unit for notifying the second CPU of the stop state of the first CPU, and the second CPU when the first CPU is in the stop state by the stop unit. Bus selecting means for connecting the bus of the first CPU to the bus of the shared memory when the first CPU is in an operating state by the stopping means. A canceling means for canceling a stop state of the first CPU by the stopping means in accordance with an instruction from the second CPU.
【請求項4】 第1のCPUおよび第2のCPUによる
共有メモリへのアクセス状況を検出するための検出手段
と、 前記検出手段によって検出されたアクセス状況に基づい
て共有メモリのバスを前記第1のCPUのバスか前記第
2のCPUのバスのいずれかに接続するためのバス選択
手段と、 前記バス選択手段が前記共有メモリのバスを前記第1の
CPUのバスに接続しているときは、前記第2のCPU
を停止状態にするための停止手段とを含むマルチプロセ
ッサ装置。
4. A detecting means for detecting a status of access to the shared memory by the first CPU and the second CPU; and a bus for the shared memory based on the status of access detected by the detecting means. Bus selecting means for connecting to either the bus of the CPU or the bus of the second CPU; and when the bus selecting means connects the bus of the shared memory to the bus of the first CPU, , The second CPU
And a stopping means for bringing the device into a stopped state.
【請求項5】 前記検出手段は、所定時間以下の間隔で
発生する前記共有メモリへのアクセス群を検出し、当該
アクセス群を所定回検出したときに前記バス検出手段に
バスの接続の切換を指示する、請求項4記載のマルチプ
ロセッサ装置。
5. The detecting means detects an access group to the shared memory which occurs at an interval equal to or less than a predetermined time, and when the access group is detected a predetermined number of times, the bus detection means switches the connection of the bus. 5. The multiprocessor device of claim 4, wherein said instruction is for directing.
JP9192702A 1997-07-17 1997-07-17 Multiprocessor device Withdrawn JPH1139266A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9192702A JPH1139266A (en) 1997-07-17 1997-07-17 Multiprocessor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9192702A JPH1139266A (en) 1997-07-17 1997-07-17 Multiprocessor device

Publications (1)

Publication Number Publication Date
JPH1139266A true JPH1139266A (en) 1999-02-12

Family

ID=16295635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9192702A Withdrawn JPH1139266A (en) 1997-07-17 1997-07-17 Multiprocessor device

Country Status (1)

Country Link
JP (1) JPH1139266A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005346672A (en) * 2004-06-07 2005-12-15 Canon Inc Memory controlling method, memory control system, program, and storage medium
JP2008134893A (en) * 2006-11-29 2008-06-12 Yamaha Corp Integrated circuit device
JP2018049489A (en) * 2016-09-23 2018-03-29 カシオ計算機株式会社 Control apparatus, electronic clock, processing control method, and program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005346672A (en) * 2004-06-07 2005-12-15 Canon Inc Memory controlling method, memory control system, program, and storage medium
JP2008134893A (en) * 2006-11-29 2008-06-12 Yamaha Corp Integrated circuit device
JP2018049489A (en) * 2016-09-23 2018-03-29 カシオ計算機株式会社 Control apparatus, electronic clock, processing control method, and program
CN107870891A (en) * 2016-09-23 2018-04-03 卡西欧计算机株式会社 Control device, electronic watch, process control method and computer-readable recording medium
CN107870891B (en) * 2016-09-23 2021-09-17 卡西欧计算机株式会社 Control device, electronic timepiece, processing control method, and computer-readable storage medium

Similar Documents

Publication Publication Date Title
US5574868A (en) Bus grant prediction technique for a split transaction bus in a multiprocessor computer system
US6282598B1 (en) PCI bus system wherein target latency information are transmitted along with a retry request
JPH0218657A (en) Multiple bus microcomputer system
KR19990076908A (en) Power Management Device and Method
JPH09190406A (en) Direct memory access controller and transmission system using the same
JPH076124A (en) System and method for transfer of information
JP2532191B2 (en) A method of managing data transmission for use in a computing system having a dual bus architecture.
JPH0679305B2 (en) Device and method for responding to an interrupt using a hold bus
JP3092566B2 (en) Memory control method using pipelined bus
JPH1139266A (en) Multiprocessor device
JPH0581178A (en) Pipeline bus
WO1992006432A1 (en) Device for controlling bus
JP2007052685A (en) Microcontroller
JPH10320349A (en) Processor and data transfer system using the processor
JP3240863B2 (en) Arbitration circuit
JPH0973429A (en) Computer system and inter-bus control circuit
JPH0962640A (en) Access control method for shared memory
JP2002278923A (en) Bus system, bus control system and bus conversion device
JPH05289987A (en) Bus right arbitrating circuit
KR100243868B1 (en) Arbiter logic in main computer system
JP2697974B2 (en) How to avoid deadlock
JPH02291039A (en) Memory control system
JPH09204409A (en) Lock transfer control system
JP2504552B2 (en) Commander method and apparatus for ensuring sufficient access to system resources in a multiprocessor computer system
JPH05282243A (en) Bus master device and electronic equipment using the same

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20041005