JPS5897758A - Controlling system of shared memory - Google Patents
Controlling system of shared memoryInfo
- Publication number
- JPS5897758A JPS5897758A JP19585681A JP19585681A JPS5897758A JP S5897758 A JPS5897758 A JP S5897758A JP 19585681 A JP19585681 A JP 19585681A JP 19585681 A JP19585681 A JP 19585681A JP S5897758 A JPS5897758 A JP S5897758A
- Authority
- JP
- Japan
- Prior art keywords
- shared memory
- interrupt
- processor
- memory
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
Abstract
Description
【発明の詳細な説明】
本発明は、マルチプロセッサシステム内の共有メモリの
制御方式に関するものである。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a shared memory control method in a multiprocessor system.
一般に、マイクロプロセッサを制御の主体としたシステ
ム機器の構成法には大別して2つの方向が考えられる。In general, there are two main ways to configure system equipment that is controlled by a microprocessor.
1つはシステムが具備すべきノ・−ドウエア及びソフト
ウェアの機能を出来るだけ集中化するという思想に基づ
く構成法であり、他は、徹底して機能・を分割2分散す
るという思想による構成法である。One is a configuration method based on the idea of centralizing the hardware and software functions that the system should have as much as possible, and the other is a configuration method based on the idea of thoroughly dividing and distributing the functions. be.
前者のシステムの多くは、価格性能の最適化をねらって
機能集中化の原理の下に設計されているが、サービスの
変更や、新規ノ・−ドウエアの導入に対するシステムの
拡張性が乏しく、また最近のLSI技術の発達、及びソ
フトプログラミング応用技術の発展が、機能集中化が必
ずしも、システム全体の経済性を達成する最良の方法で
ない事を明らかにしてきている。更に、対象とするシス
テム機器が複数の端末制御の場合は、特にタイミングの
制御が難しいなどの欠点を有する。Many of the former systems are designed based on the principle of centralization of functions with the aim of optimizing price/performance, but the system has poor scalability when changing services or introducing new software. Recent developments in LSI technology and soft programming application technology have made it clear that centralization of functions is not necessarily the best way to achieve overall system economy. Furthermore, when the target system equipment is controlling a plurality of terminals, it has drawbacks such as difficulty in timing control.
コレニ対し、後者のマルチプロセッサシステムを構成す
る目的は、前者と比較してシステムとしてのパフォーマ
ンスを向上させ、機能の融通性を3.7
高める点にある。これにマイクロプロセッサを用いれば
、プロセッサ自体が安価であることや、周辺制御ICと
組合せて数チップのLSIで構成できるため、多数の論
理素子を用いた従来のものに比べて、信頼性が増す事や
、融通性を持たせるために多くの時間と費用を要した従
来のプログラムに比べて、比較的容易に適用できるなど
の大きな利点がある。In contrast, the purpose of configuring the latter multiprocessor system is to improve the performance of the system and increase the flexibility of functions compared to the former. If a microprocessor is used for this, the processor itself is inexpensive and can be configured with several LSI chips in combination with a peripheral control IC, resulting in increased reliability compared to conventional ones that use a large number of logic elements. It has major advantages such as being relatively easy to apply compared to traditional programs that require a lot of time and money to be flexible.
この場合、特に複数のVO等の制御をそれぞれの制御専
用マイクロプロセッサ複数個で行うシステム機器では、
これらの各プロセッサ間のタスク実行、データ転送等の
制御において、システム全体を管理するマスタプロセッ
サが必要である。この様なマルチプロセッサシステムに
於てまず問題となるのは各プロセッサ間の通信方式であ
る。従来では、この場合の通信制御手段として、相互の
割込みにより、各プ西セッサの専用メモリへデータを格
納し、タスクの実行を行う方法が採られ七いだが、イン
ターフェース上の同期タイミング制御、更に、マスタフ
ロセッサから各制御用プ、ロセ1N問”’;!r 58
− 97758(2)ツサへの即時割込制御などの点に
於てソフト、ハードを含めた処理の困難さを有していた
。In this case, especially in system equipment where multiple VOs etc. are controlled by multiple microprocessors dedicated to each control,
In controlling task execution, data transfer, etc. between these processors, a master processor is required to manage the entire system. The first problem in such a multiprocessor system is the communication method between each processor. Conventionally, the communication control means in this case was to use mutual interrupts to store data in the dedicated memory of each processor and execute the task. , from the master processor to each control program, processor 1N question"';!r 58
- 97758 (2) There were difficulties in processing both software and hardware in terms of instantaneous interrupt control to Tsusa.
更にかかるマルチプロセッサシステムのデータ転送方式
として、マルチプロセッサ内に、マスタ/スレーブ型の
共有メモリを配する方式が提案されている。しかしなが
ら、従来の共有メモリ方式では、マスタプロセッサ又は
スレーブプロセッサが共有メモリにアクセスする場合、
一度に一つのアクセス要求しか処理する事ができず、そ
のためプロセッサのアクセス要求が重なった場合は、1
つのプロセッサの要求だけ受けつけ、その他のプロセッ
サは待たせておく必要があった。そのため、プロセッサ
が共有メモリにアクセスする場合、目的のプロセッサが
使用する事を示すフラグをパスコントローラヘセットし
、他のプロセッサの使用を禁じて使用が終えると、フラ
グをリセットするという方式を採っていた。Furthermore, as a data transfer method for such a multiprocessor system, a method has been proposed in which a master/slave type shared memory is provided within the multiprocessor. However, in the conventional shared memory method, when a master processor or slave processor accesses shared memory,
Only one access request can be processed at a time, so if processor access requests overlap, 1
It was necessary to accept requests from only one processor and keep the other processors waiting. Therefore, when a processor accesses shared memory, it sets a flag in the path controller indicating that the target processor will use it, prohibits other processors from using it, and resets the flag when the use is finished. Ta.
この様な方式では、共有メモリ外部にバスコントローラ
制御回路などの制御部が必要で、そのため、ソフト上の
使用管理が生じ、共有メモリの実質的利用効率の低下を
生じていた。In such a system, a control unit such as a bus controller control circuit is required outside the shared memory, which results in usage management using software, resulting in a reduction in the actual usage efficiency of the shared memory.
本発明は、マルチプロセッサ間の通信方式として各プロ
セッサにマスタ/スレーブ型のメモリ共有部を配し、か
つ共有メモリ内に配設された割込fftlJ 御レジス
タと、マスタ/スレーブプロセッサの自動アクセス制御
部によって、上記の如き欠点のない、かつ、共有メモリ
の自動アクセス制御可能な新規データ転送制御方式を提
供するものである。The present invention provides a communication system between multiprocessors in which a master/slave type memory sharing unit is provided in each processor, and an interrupt control register arranged in the shared memory and automatic access control of the master/slave processors are provided. The object of the present invention is to provide a new data transfer control method that does not have the above drawbacks and can automatically control access to a shared memory.
以下本発明の一実施例を図面を用いて詳細に説明する、
第1図に、マルチプロセッサシステムの一例を示す。こ
の構成アはマスタプロセッサ101(例えばL−16ム
)部に共有メモl7102を配し、このメモリ空間をス
レーブプロセッサ103(例えば6802)複数個が、
各々のメモリ領域を分割して使用する。したがって、マ
スタープロセッサ101側から見ると1つの、スレーフ
フロ・セッサ103側から見ると複数の共有メモリがあ
るように構成される。例えば、スレーブプロセッサが3
個あれば、共有メモリ102のそれぞれの先頭アドレス
を!’2000’として、最下部アドレスX’271F
Lの2にバイトの固定値として、それぞれのメモリを有
する。一方マスタプロセツサ101は共有メモリ1o2
の先頭アドレスをX’8000’として、x’5ooo
’〜X ’87 F Fまでの2にバイトをスレーブプ
Oセyす猶1に、x’9000’ 〜x’g7 F F
までの2にバイトをスレーブプロセッサ嵐2に、X1人
000′〜x′ム7FFまでの2にバイトをスレーブプ
ロセッサ嵐3に4にバイトバウンダリイで割り当てる。An embodiment of the present invention will be described in detail below with reference to the drawings.
FIG. 1 shows an example of a multiprocessor system. In this configuration, a shared memory 17102 is arranged in the master processor 101 (for example, L-16), and a plurality of slave processors 103 (for example, 6802) share this memory space.
Each memory area is divided and used. Therefore, when viewed from the master processor 101 side, there is one shared memory, and when viewed from the slave processor 103 side, there is a plurality of shared memories. For example, if there are 3 slave processors
If there are, write the start address of each of the shared memory 102! As '2000', bottom address X'271F
Each memory has a fixed value of 2 bytes in L. On the other hand, the master processor 101 has a shared memory 1o2
Assuming the start address of X'8000', x'5ooo
'~X '87 F F
Allocate bytes up to 2 to slave processor Arashi 2, and allocate bytes 2 to slave processor Arashi 3 and 4 from X1 000' to x' 7FF on a byte boundary.
この様子を第4図に示し、詳細は後述する。以下、この
共有メモリ構成で説明するが、このマスタプロセッサ、
及びスレーブプロセッサのアドレス空間は設計上におい
て任意の構成とすることは勿論、自由である。実施例の
如く、マスタフロセッサがL−1e人、スレーブプロセ
ッサが6802の場合の共有メモリのインターフェース
は第2図に示すようになる。This situation is shown in FIG. 4, and details will be described later. This shared memory configuration will be explained below, but this master processor,
It goes without saying that the address spaces of the slave processors and the slave processors can have any configuration in design. As in the embodiment, when the master processor is L-1e and the slave processor is 6802, the shared memory interface is as shown in FIG.
以下、本実施例では、マスタプロセッサとしてL−16
ムヲ使用し、スレーブプロセッサに6802を使用した
場合について説明する。L−16ムは16bit構成で
あるが上8b工tは使わず、下sbitのみを使用する
。なお、以下の説明ではマスタープロセッサを単にL−
16ム、スレーブプロセッサを単に6802と表現する
。Hereinafter, in this embodiment, L-16 will be used as the master processor.
A case will be explained in which a 6802 is used as a slave processor. Although the L-16 system has a 16-bit configuration, it does not use the upper 8 bits and uses only the lower s bits. In the following explanation, the master processor will simply be referred to as L-
16, the slave processor is simply expressed as 6802.
第2図において、1は共有メモリで、実施例では2にバ
イトのRAM (ランダムアクセスメモリ)とする。1
8は共有メモリに対するスレーブプロセッサ6802側
のインターフェース部で、19はマスタプロセッサL−
16ム側のインターフェース部である。2,6はそれぞ
れのプロセッサのデータ線14ν 1oの双方向データ
バッファを示す。3,6は同様にアドレス線15.11
のアドレスバッファで、アドレスセレクタ8を通シて、
共有メモリ1にそれぞれ接続されている。9は制御回路
で、6802よシのタイミング制御線16とコントロー
ルバラフシ4.又はL−16ムよりのタイミング制御線
12とコントロールバッファ7を切換えて、双方のプロ
セッサよりの共有メモリへのデータ書き込み、又はデー
タ読み出しの制御を行う。13.17は割込線で、本発
明の特徴とする共有メモリ内に配設された割込制御レジ
スタに接続されている。これについては後で詳細に述べ
る。In FIG. 2, 1 is a shared memory, and in this embodiment, 2 is a byte RAM (random access memory). 1
8 is an interface unit on the slave processor 6802 side with respect to the shared memory, and 19 is an interface unit for the master processor L-
This is the interface section on the 16-system side. 2 and 6 indicate bidirectional data buffers of the data line 14v1o of each processor. 3 and 6 are address lines 15 and 11 as well.
through the address selector 8 in the address buffer of
Each is connected to the shared memory 1. Reference numeral 9 is a control circuit that connects the timing control line 16 of 6802 and the control balance line 4. Alternatively, the timing control line 12 from the L-16 system and the control buffer 7 are switched to control data writing or data reading from both processors to the shared memory. Reference numeral 13 and 17 are interrupt lines connected to an interrupt control register arranged in the shared memory, which is a feature of the present invention. This will be discussed in detail later.
第3図は、本発明における共有メモリの自動アクセス制
御部の詳細を示すもので、第2図の制御回路sy コ
ントロールバッファ4.7、及びタイミング制御線16
y12部の動作説明図である。FIG. 3 shows details of the shared memory automatic access control section in the present invention, including the control circuit sy control buffer 4.7 and timing control line 16 of FIG.
It is an explanatory diagram of the operation of the y12 section.
第2図と同一部分には同一符号を付す。図において、2
2は6802よりの共有メモリアクセス要求線、20は
L−16ムよりの共有メモリアクセス要求線で、23.
21はそれぞれのプロセッサのアクセス要求受付部、2
4はアクセス優先制御回路、28.27は各プロセッサ
の双方向データバッファ2,5の切換えを行なう制御線
で、29は共有メモリ1の書き゛込み、読み出しを行な
う制御線である。又、1s’、11’は各々6802お
よびL−16ムのアドレス線でアドレス切換側NM30
で、アドレス切換回路8を切換えて6802゜L−16
ムとのアドレス線を切換える。The same parts as in FIG. 2 are given the same reference numerals. In the figure, 2
2 is a shared memory access request line from 6802, 20 is a shared memory access request line from L-16, and 23.
21 is an access request reception unit of each processor;
4 is an access priority control circuit; 28 and 27 are control lines for switching between the bidirectional data buffers 2 and 5 of each processor; and 29 is a control line for writing and reading from the shared memory 1. Also, 1s' and 11' are the address lines of 6802 and L-16, respectively, and are connected to the address switching side NM30.
Then, switch the address switching circuit 8 to 6802°L-16.
Switch the address line to and from the system.
この制御部の動作は、先に共有メモリ1にアクセス要求
を出した方のプロセッサが優先され、他のプロセッサは
アクセスの要求のタイミングを遅らす信号26.又は2
5をフリップフロップ等で構成されたアクセス優先回路
24から出力し、共有メモリ1の使用を待たせる。また
既に一方のプロセッサが共有メモリ1をアクセスしてい
る場合は、使用が終り次第、直ちにアクセス可能な様に
アクセス遅延信号26.又は25を出力する。この制御
は自動的にアクセス要求受付部21.23およびアクセ
ス優先制御回路24より成るハード回路部で制御するも
ので、従来例の如く、外部のバスコントローラへフラグ
をセットするなどのソフトプログラム上で管理する必要
は一切なく、共有メモリアクセスの使用効率を高める特
徴を有す〜
るものである。In the operation of this control unit, priority is given to the processor that issued an access request to the shared memory 1 first, and the other processors receive a signal 26. which delays the timing of the access request. or 2
5 is output from the access priority circuit 24 composed of a flip-flop or the like, and the use of the shared memory 1 is made to wait. Furthermore, if one processor is already accessing the shared memory 1, the access delay signal 26. Or output 25. This control is automatically controlled by a hardware circuit section consisting of the access request reception section 21, 23 and the access priority control circuit 24, and as in the conventional example, it is controlled by a software program such as setting a flag to an external bus controller. It does not need to be managed at all and has the feature of increasing the efficiency of shared memory access.
次に、本発明の特徴とする割込制御方式につりで説明す
る。L−16ム、6802双方のプロセッサ間のデータ
受渡しは、第4図に示す如く、共有メモリ内部の各68
02に対して各々2046バイトの専用メモリ領域31
を設ける。その1つに注目し、その先頭アドレス37を
X’2000’とす1゜
れば、最下部2アドレスの内、!’271E’番地を割
込要求レジスタ32(以下IRQRと呼ぶ)、!’27
7 F/番地を割込受付レジスタ33(以下I RVR
と呼ぶ)として使用する。一方L−16ム側から見ると
、共有メモリの先頭アドレスをx’aooo’とすれば
、同様に、共有メモリ内の専用メモリ領域34の最下部
2アドレスの内、!’87FK’番地に、割込受付レジ
スタss (IRVR) 、X’87FF’番地に割込
要求レジスタ3e、(IRQR)を持つ。Next, the interrupt control method, which is a feature of the present invention, will be explained in detail. As shown in FIG.
Dedicated memory area 31 of 2046 bytes each for 02
will be established. Paying attention to one of them, if we take its first address 37 as X'2000' and multiply it by 1 degree, then among the two lowest addresses, ! Address '271E' is the interrupt request register 32 (hereinafter referred to as IRQR),! '27
7 Enter the F/address as the interrupt reception register 33 (hereinafter referred to as I RVR).
). On the other hand, when viewed from the L-16 side, if the starting address of the shared memory is x'aooo', then similarly, of the lowest two addresses of the dedicated memory area 34 in the shared memory, ! It has an interrupt reception register ss (IRVR) at address '87FK' and an interrupt request register 3e (IRQR) at address X'87FF'.
第4図ではこの内対応する6802.1台についてのみ
しか図示していないが、前記の如(、6802が3台あ
れば、更に、IRVRは!’97FK’とz/−ム7F
IC’ に、IRQRは!’97FF/とX′ム7F
F/に各6802に対応する割込制御レジスタが存在す
ることになる。しかしながら、L−16ムの割込要求レ
ジスタ、割込受付レジスタの番地は上位46bitノア
ドレ・スを考慮すれば、この割込レジスタは1つのアド
レスで代表する事が可能である。即ち、68o2側のI
RQR,IRVRは該当ノアドレス8bitの内1 b
itのデータのみを使用するが、L−16A側のIRQ
Rは8 bit構成で、前記の如く、各6802の割込
線に割り当てておく。Although FIG. 4 only shows one corresponding 6802.1 among these, if there are three 6802s, the IRVR will be !'97FK' and z/-mu7F.
IC', IRQR! '97FF/ and X'mu 7F
There will be an interrupt control register corresponding to each 6802 in F/. However, considering that the addresses of the interrupt request register and interrupt acceptance register of the L-16 system are upper 46-bit addresses, this interrupt register can be represented by one address. That is, I on the 68o2 side
RQR and IRVR are 1 b of the 8 bits of the corresponding address
It uses only the data of it, but the IRQ on the L-16A side
R has an 8-bit configuration and is allocated to each 6802 interrupt line as described above.
更に、IRVRのみは16bit構成として、上位8b
itを各68o2よ如の割込をマスクする機能として使
用し、下8bitを各6802よりの割込受付ビットと
して使用する。これを第5図に示す。Furthermore, only IRVR has a 16-bit configuration, and the upper 8b
It is used as a function to mask interrupts from each 68o2, and the lower 8 bits are used as interrupt reception bits from each 6802. This is shown in FIG.
(1)L−16ムから68o2への割込(a)IRQH
の動作
第4図に示す様に、IRQR32の割り当てられた68
o2プロセツサの対応するビットをL/ 117にして
IRQHに書き込み動作を行うと、フリップフロップ4
oがセットされ、割込線17を通じて、6802に割込
が発生する。(1) Interrupt from L-16m to 68o2 (a) IRQH
As shown in Figure 4, the 68 assigned IRQR32
When the corresponding bit of the o2 processor is set to L/117 and a write operation is performed to IRQH, flip-flop 4
o is set, and an interrupt occurs at 6802 via interrupt line 17.
(b)IRVRの動作
68o2は割込処理をし、IRVR33をエコーリセッ
トすると、フリップフロップ4oがリセットされると同
時に該当ビットがO″にリセットされ割込が解除される
。(b) IRVR operation 68o2 performs interrupt processing, and when the IRVR 33 is echo-reset, the flip-flop 4o is reset and at the same time the corresponding bit is reset to O'' and the interrupt is canceled.
(2)6802からL−16ムへの割込(a)IRQH
の動作
IRQR32に書き込み動作を行うと、第6図に示す、
IRVR35の上s bitの対応するマスクレジスタ
が71“であれば、フリップフロップ39がセットされ
、割込線13を通じてL−16Aに割込が発生する。但
し、IRVRssの対応するマスクレジスタが// □
l/であれば、割込は保持され、マスクレジスタをI
I I L/にセットすると、その時点でL−16ムに
割込がかかる。(2) Interrupt from 6802 to L-16m (a) IRQH
Operation When a write operation is performed to IRQR32, the result shown in FIG.
If the mask register corresponding to the upper s bit of IRVR35 is 71", the flip-flop 39 is set and an interrupt is generated to L-16A through the interrupt line 13. However, if the corresponding mask register of IRVRss is □
l/, the interrupt is held and the mask register is set to I
If set to I I L/, an interrupt will be placed on the L-16 system at that point.
(b)IRVRの動作
IRVRssをエコーリセットすると、フリップフロッ
プ39がリセットされると同時に該当ビットが“o″に
リセットされ、割込が解除される。(b) Operation of IRVR When IRVRss is echo-reset, the flip-flop 39 is reset and at the same time the corresponding bit is reset to "o" and the interrupt is canceled.
第6図に割込制御の具体回路例を示す。以)に第7図の
タイミング図と共に説明する。FIG. 6 shows an example of a concrete circuit for interrupt control. This will be explained below with reference to the timing diagram shown in FIG.
(1)L−16ムから68o2へ割込をかけるときは(
第7図(IL)) 、まずI RQHの割込要求ビット
65を読み出し、6802側で割込処理を終了している
か否かを調べる。既に、処理を終了13 、
していれば、フリップフロップ43のQ出力はo″とな
っているので、再度IRQHの必要なビットに1“をセ
ットし、IRQHに書き込み動作51をすればフリップ
フロップ43のQ出力は反転しo″となり対象の680
2に割込が発生する。6802側ではIRVR信号53
を読み出して書き込む動作(エコーリセット54)をす
ればフリップフロップ43の出力は反転し、割込はリセ
ットされることになる。(1) When interrupting from L-16 to 68o2, (
(FIG. 7 (IL)) First, the interrupt request bit 65 of IRQH is read and it is checked whether or not the interrupt processing has been completed on the 6802 side. If the processing has already been completed 13, the Q output of the flip-flop 43 is o'', so if you set the necessary bit of IRQH to 1'' again and perform a write operation 51 to IRQH, the flip-flop The Q output of 43 is inverted and becomes o'', which is the target 680
An interrupt occurs at 2. IRVR signal 53 on the 6802 side
If the operation of reading and writing (echo reset 54) is performed, the output of the flip-flop 43 is inverted and the interrupt is reset.
?)6802側からL−16へ割込をかけるときは(第
7図(2L))、同様に、IRQHの割込要求ビット5
6を読み出しL−16A側で割込処理を終了しているか
否かを調べる。既に処理を終了していれば、フリップフ
ロップ42のQ出力は0“にリセットされているので、
再度、IRQHに書き込み動作57をすれば、フリップ
フロップ42のQ出力は11″にセットされ、L−16
ムに割込が発生する゛。L−16人側ではIRVR信号
68を読み出し、書き込む動作(エコーリセット69)
をすればフリップフロップ42のQ出力は反転し、割込
はリセットされる。? ) When issuing an interrupt to L-16 from the 6802 side (Fig. 7 (2L)), similarly, interrupt request bit 5 of IRQH
6 is read and it is checked whether the interrupt processing has been completed on the L-16A side. If the processing has already been completed, the Q output of the flip-flop 42 has been reset to 0", so
If the write operation 57 is performed on IRQH again, the Q output of the flip-flop 42 is set to 11'', and the output becomes L-16.
An interrupt occurs in the system. On the L-16 person side, the operation of reading and writing the IRVR signal 68 (echo reset 69)
If this is done, the Q output of the flip-flop 42 will be inverted and the interrupt will be reset.
ここで、41はIRVRの割込マスクレジスタで、通常
はL−16A側のデータラインの特定ビットに割り当て
ておく。このビット選択にはジャンパー線などを用いる
と、種々の設定に都合が良い。Here, 41 is an interrupt mask register of IRVR, which is normally assigned to a specific bit of the data line on the L-16A side. Using a jumper line or the like for this bit selection is convenient for various settings.
更に共有メモリの使用法としては、メモリが2にバイト
の構成であれば1にバイト毎に分割して、上1にバイト
をL−16人から68o2へのデータ転送エリス下1に
バイトを68o2からL−16Aへのデータ転送エリア
とし、更に共有メモリの先頭アドレスを第4図に示すコ
マンドレジスタ(ICMR)37.後半1にバイトの先
頭アドレスをステータスレジスタ(ISTR)38とし
て使用すると、例えばソフトウェア制御上で、ICMR
37にデータをセットし、各6802へ割込により、タ
スク起動をかけ、終了後にそのl5TR38のデータを
把握する事で、L−16ムがシステム全体を管理する事
ができ好都合である。Furthermore, as for how to use shared memory, if the memory is configured with 2 bytes, divide it into 1 bytes, and transfer data from L-16 people to 68o2 bytes on the top 1. Transfer bytes to 68o2 on the bottom 1. to L-16A, and the start address of the shared memory is set to the command register (ICMR) 37. as shown in FIG. If the first address of the byte in the second half 1 is used as the status register (ISTR) 38, for example, under software control, the ICMR
It is convenient that the L-16 system can manage the entire system by setting data in the 15TR37, activating a task by interrupting each 6802, and grasping the data in the 15TR38 after completion.
又、L−16Aが各6802に対し、同時に割込をかけ
ることが必要な場合がある。この時は、前記の如く割込
要求レジスタ(I RQ R)の該当するビットにI/
I L/をセットして、IRQRのX/−ム了FF+
に書き込み動作を行えばよい。即ち、L−16人の
アドレス切換端子(図示せず)の上位アドレス2番目、
3番目を割込レジスタを使用する時、アドレス選定をフ
リーにしておくことにより、IRVRとIRQRをX/
ム7FK1番地とX/ム7FF’番地のそれぞれ1ケ所
にまとめる事ができる。つまりzLム7 F E’、
x’ム7FF’番地のIRVR,IRQRをアクセス
してもx’87FIC’、 x’87FF’、 x’9
77に’。Also, it may be necessary for L-16A to interrupt each 6802 at the same time. At this time, as mentioned above, the corresponding bit of the interrupt request register (I RQ R) is
Set I L/ and press IRQR's X/-
All you have to do is perform a write operation. That is, the second upper address of L-16 address switching terminals (not shown);
When using the third interrupt register, by leaving address selection free, IRVR and IRQR can be set to
They can be grouped into one location each at address Mu7FK1 and address X/Mu7FF'. In other words, zLm7 F E',
Even if you access IRVR and IRQR at address x'mu7FF', x'87FIC', x'87FF', x'9
77'.
X’97 F F’番地も同時にアクセスする事が可能
となる。従って、必要な6802に対応するIRQHの
ビット位置にL/ 2 /lをセットし割込をかける事
で並列割込の制御も可能と゛なり、処理の即時性の向上
も図る事ができる。Address X'97F F' can also be accessed at the same time. Therefore, by setting L/2/l to the bit position of IRQH corresponding to the required 6802 and issuing an interrupt, it is possible to control parallel interrupts, and it is also possible to improve the immediacy of processing.
以上の様に割込レジスタは情報伝送のタイミング制御用
で、従来の如く、共有メモリの使用権レジスタの様な使
用法と全く動作を異にしている。As described above, the interrupt register is used to control the timing of information transmission, and its operation is completely different from the conventional use of the shared memory usage right register.
このため、前述のメモリアクセスの自動制御効果も重畳
し、共有メモリの利用効率を大いに高めるものである。Therefore, the above-mentioned automatic control effect of memory access is also added, and the efficiency of use of the shared memory is greatly increased.
本実施例ではマスタプロセッサにL−16ム。In this embodiment, the master processor is L-16.
スレーブプロセッサに6802を使用した場合について
説明しだが、この組合せは他のいかなるマイクロプロセ
ッサでも適用できることは言うまでもない。Although the case where the 6802 is used as the slave processor will be described, it goes without saying that this combination can be applied to any other microprocessor.
更に、割込制御レジスタを共有メモリの最下部に配置し
たが、この配置は任意の場所でもかまわないことは勿論
である。Furthermore, although the interrupt control register is placed at the bottom of the shared memory, it goes without saying that it may be placed at any desired location.
本発明の如くマスタ/スレーブ型のマルチプロセッサに
おいて、上記の割込制御方式を持つ共有メ′モリを構成
する事により、次の特徴が挙げられる。In a master/slave type multiprocessor as in the present invention, by configuring a shared memory having the above-mentioned interrupt control method, the following features can be obtained.
(1) マスタプロセッサが各スレーブプロセッサに対
し、並列割込制御を可能にしたため、複数処理の即時性
の向上と、データ転送の効率と高速化を実現できる。(1) Since the master processor enables parallel interrupt control for each slave processor, it is possible to improve the immediacy of multiple processing and to achieve higher efficiency and faster data transfer.
(2) マスタプロセッサのバスを開放した事により
、177、。(2) 177, due to the release of the master processor bus.
システム全体のデータ転送効率を向−ヒできる。Data transfer efficiency of the entire system can be improved.
(3) スレーブプロセッサのソフトウェアは独立し
た生機能のモジー−ル化がはかれ、マスタプロセッサを
含めたソフトウェア実現の軽減゛を図れる。(3) The software of the slave processor can be modularized with independent raw functions, and the software implementation including the master processor can be reduced.
(4)本制御方式は、複合機能を有するメカニズム制御
系には最適で、各スレーブプロセッサの明確な作業分担
によって処理の即時性の向上をはかp、ハードウェア回
路の負担とソフトデバッグの時間の大巾な軽減を図る事
が可能となる。(4) This control method is most suitable for mechanism control systems with multiple functions, and improves the immediacy of processing by clearly allocating tasks to each slave processor, reducing the burden on hardware circuits and reducing software debugging time. It becomes possible to achieve a significant reduction in
第1図は本発明による共有メモ’J Q制御方式に使用
されるマルチプロセッサシステムの構成例を示すブロッ
ク図、第2図は第1図の共有メモリ部の回路構成を示す
ブロック図、第3図は第2図の要部詳測図、第4図およ
び第5図は本発明による割込制御方式の動作説明図、第
6図は本発明に使用される割込制御回路の構成例を示す
結線図、第7図(!L)、 (b)は第6図の回路の動
作を説明するためのタイミング図である。
101・・・・・・マスタプロセッサ、102・・・・
・・共有メモ!J、103・・・・・・スレーブプロセ
ッサ、1・山・・共有メモlハ2,6・・・・シ・デー
タバッファ、3,6・・・・・・アドレスバッファ、4
,7・・・・・・コントロールバッファ、8・・・・・
・アドレスセレクタ、9・・・・・・制御回路、18,
19・・・・・・インターフェース、21゜23・・・
・・・アクセス受付部、24・・・・・・アクセス優先
制御回路、32,36・・・・・・割込要求レジスタ、
33.35・・・・・・割込受付レジスタ、39,40
・・・・・・フリップフロップ。
代理人の氏名 弁理士 中 尾 敏 男 ほか1名第1
図
1θ2 /θ3
第2図
第3図
626
第4図
1汐θ2−アト°νズ2F’l’3 L−
/(のアドレスJffi間b
1−/lA−+〆θρ2釣込FIG. 1 is a block diagram showing an example of the configuration of a multiprocessor system used in the shared memory 'JQ control method according to the present invention, FIG. 2 is a block diagram showing the circuit configuration of the shared memory section of FIG. 1, and FIG. The figure is a detailed survey of the main part of Figure 2, Figures 4 and 5 are explanatory diagrams of the operation of the interrupt control system according to the present invention, and Figure 6 is a configuration example of the interrupt control circuit used in the present invention. The wiring diagrams shown in FIGS. 7(!L) and (b) are timing diagrams for explaining the operation of the circuit in FIG. 6. 101... Master processor, 102...
・Share memo! J, 103... Slave processor, 1. Shared memory 2, 6... Data buffer, 3, 6... Address buffer, 4.
, 7... Control buffer, 8...
・Address selector, 9... Control circuit, 18,
19...Interface, 21゜23...
. . . Access reception unit, 24 . . . Access priority control circuit, 32, 36 . . . Interrupt request register,
33.35...Interrupt reception register, 39,40
······flip flop. Name of agent: Patent attorney Toshio Nakao and 1 other person No. 1
Fig. 1 θ2 /θ3 Fig. 2 Fig. 3 626 Fig. 4
/(Address Jffi between b 1-/lA-+〆θρ2 fishing
Claims (2)
と割込受付レジスタを設けて各プロセッサ間で並列割込
制御を行なわせ、かつ共有メモリのアクセスをアクセス
要求受付部およびアクセス優先回路によシ自動制御し、
前記共有メモリの同時データ転送制御を行なうことを特
徴とする共有メモリの制御方式。(1) An interrupt request register and an interrupt reception register are provided at specific addresses in the shared memory to perform parallel interrupt control between each processor, and access to the shared memory is controlled by the access request reception unit and the access priority circuit. automatic control,
A shared memory control method characterized by controlling simultaneous data transfer of the shared memory.
は、割込マスク機能を有し、割込要求レジスタと共にそ
れぞれ任意のビット選択構造を持つ事を特徴とする特許
請求の範囲第1項記載の共有メモリの制御方式。(2)) The interrupt reception register configured by the master processor has an interrupt masking function, and together with the interrupt request register, each has an arbitrary bit selection structure. Shared memory control method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19585681A JPS5897758A (en) | 1981-12-04 | 1981-12-04 | Controlling system of shared memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19585681A JPS5897758A (en) | 1981-12-04 | 1981-12-04 | Controlling system of shared memory |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS5897758A true JPS5897758A (en) | 1983-06-10 |
Family
ID=16348131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19585681A Pending JPS5897758A (en) | 1981-12-04 | 1981-12-04 | Controlling system of shared memory |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS5897758A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62290909A (en) * | 1986-06-11 | 1987-12-17 | Mitsubishi Electric Corp | Connection controller for numerical controller |
JPH0528384A (en) * | 1991-07-18 | 1993-02-05 | Matsushita Electric Works Ltd | Multi processor type disaster prevention controller and disaster prevention system using this |
JP2020204916A (en) * | 2019-06-17 | 2020-12-24 | キヤノン株式会社 | Information processing device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS53102643A (en) * | 1977-02-21 | 1978-09-07 | Hitachi Ltd | Interrupt processing system for computer |
JPS54153543A (en) * | 1978-05-25 | 1979-12-03 | Oki Electric Ind Co Ltd | Interruption system between processors |
-
1981
- 1981-12-04 JP JP19585681A patent/JPS5897758A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS53102643A (en) * | 1977-02-21 | 1978-09-07 | Hitachi Ltd | Interrupt processing system for computer |
JPS54153543A (en) * | 1978-05-25 | 1979-12-03 | Oki Electric Ind Co Ltd | Interruption system between processors |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62290909A (en) * | 1986-06-11 | 1987-12-17 | Mitsubishi Electric Corp | Connection controller for numerical controller |
JPH0528384A (en) * | 1991-07-18 | 1993-02-05 | Matsushita Electric Works Ltd | Multi processor type disaster prevention controller and disaster prevention system using this |
JP2020204916A (en) * | 2019-06-17 | 2020-12-24 | キヤノン株式会社 | Information processing device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS5837585B2 (en) | Keisan Kisouchi | |
US5379434A (en) | Apparatus and method for managing interrupts in a multiprocessor system | |
US4257097A (en) | Multiprocessor system with demand assignable program paging stores | |
US5682551A (en) | System for checking the acceptance of I/O request to an interface using software visible instruction which provides a status signal and performs operations in response thereto | |
US3931613A (en) | Data processing system | |
US3447135A (en) | Peripheral data exchange | |
JPH0797363B2 (en) | Multi-hierarchical level multi-processor system | |
US5228127A (en) | Clustered multiprocessor system with global controller connected to each cluster memory control unit for directing order from processor to different cluster processors | |
JPH071495B2 (en) | Data processing system | |
JP3167027B2 (en) | Controller for direct memory access | |
US4048623A (en) | Data processing system | |
JP2007219816A (en) | Multiprocessor system | |
US5463740A (en) | Data control device generating different types of bus requests and transmitting requests directly to one of a number of arbiters for obtaining access to a respective bus | |
US5241661A (en) | DMA access arbitration device in which CPU can arbitrate on behalf of attachment having no arbiter | |
US5933613A (en) | Computer system and inter-bus control circuit | |
US4089052A (en) | Data processing system | |
US6282144B1 (en) | Multi-ported memory with asynchronous and synchronous protocol | |
US20030229721A1 (en) | Address virtualization of a multi-partitionable machine | |
JPS5897758A (en) | Controlling system of shared memory | |
JP2618223B2 (en) | Single chip microcomputer | |
JPH0227696B2 (en) | JOHOSHORISOCHI | |
JPS60173655A (en) | Memory system of multiprocessor | |
KR950008228B1 (en) | Computer system with direct memory access channd arbitration | |
JP2687987B2 (en) | Direct memory access control method | |
JP4214521B2 (en) | Information processing system and multiprocessor system |