JPS58195976A - Multiple cpu system - Google Patents

Multiple cpu system

Info

Publication number
JPS58195976A
JPS58195976A JP57078326A JP7832682A JPS58195976A JP S58195976 A JPS58195976 A JP S58195976A JP 57078326 A JP57078326 A JP 57078326A JP 7832682 A JP7832682 A JP 7832682A JP S58195976 A JPS58195976 A JP S58195976A
Authority
JP
Japan
Prior art keywords
interrupt
cpu
output
cpus
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP57078326A
Other languages
Japanese (ja)
Inventor
Yushi Sano
佐野 雄史
Junji Hori
堀 純司
Yorihisa Tanaka
田中 順久
Junichi Okura
大倉 淳一
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Tokyo Shibaura Electric 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 Toshiba Corp, Tokyo Shibaura Electric Co Ltd filed Critical Toshiba Corp
Priority to JP57078326A priority Critical patent/JPS58195976A/en
Publication of JPS58195976A publication Critical patent/JPS58195976A/en
Pending 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

PURPOSE:To eliminate trouble in a system, by making plural mutually interruptible CPUs connected to a common bus request to interrupt, and transferring data after specified time, withdrawing the requests to interrupt when the requests to interrupt are generated nearly at the same time. CONSTITUTION:Plural CPUs 10-12 are connected to the common data bus 17. The CPU10 is provided with an interruption request terminal 13, interrupt input terminal 14, and recognition terminals 15 and 16. The CPUs 11 and 12 are also provided with terminals 19-23, and 24-27. Once the CPU10 sends a request- to-interrupt signal from the output terminal 13 when sending data to other CPUs, the CPUs 11 and 12 perform interruption processing to make input-output ports 23 and 28 ready. The CPU10 sends out the data a time T1 later. When there are plural requests to interrupt nearly at the same time, the requests to interrupt are withdrawn within the time T1. In this case, a request to interrupt is made again after a time T1+T2+alpha elapsed from the end of interrupt processing, where alpha is characteristic to each CPU. Thus, trouble in the system is prevented to exclude an overlap of interruptions.

Description

【発明の詳細な説明】 〔@例の蚊術分野〕 本発明eま複数のCPUt−備え、それら相互e(清報
の伝送が可能なマルチCPUシステムに関する。
DETAILED DESCRIPTION OF THE INVENTION [@Example Mosquito Field] The present invention relates to a multi-CPU system that includes a plurality of CPUs and is capable of mutually transmitting information.

〔発明の技術的背景〕[Technical background of the invention]

一般にマイクロコンピュータを適用した機器Vこおいて
、システムまたは記憶容量上の制約等から1つのマイク
ロコンピユーjlc以下cPUと称す)のみでシステム
を構成するのではなく、複数のCPUでシステムを構成
することがある。
In general, in devices that use microcomputers, due to system or storage capacity constraints, the system is not configured with only one microcomputer (hereinafter referred to as cPU), but with multiple CPUs. Sometimes.

このようなマルチCPUシステムにおいては21vAリ
ドのCPUをqいに同期をとりながら動作させkす、屹
、るい#iまた互いtic t* @を父換しながら動
作させ/Eりする必壺が生ずる場合がある。
In such a multi-CPU system, it is necessary to operate the 21vA CPUs in close synchronization, and also to operate them while exchanging tic t*@ with each other. may occur.

従来、このためにデ・−夕の転送を行なうための共鳴バ
スと、割込發水信号出力端子、紹鷹1ぎ吟入力端子を各
CP Uに1えさせている。
Conventionally, for this purpose, each CPU is provided with a resonance bus for data transfer, an interrupt signal output terminal, and a signal input terminal.

第1図はこの従来のマルチCPUvスデム必〕−例を示
rブロック図である。またそのと龜の、P(ム尤ヤード
を第2図に示す。第1図で(1)。
FIG. 1 is a block diagram showing an example of this conventional multi-CPU system. Figure 2 shows the distance between P and Yard (1) in Figure 1.

(2)はcpu(IC)であり、(3) 、 +4)は
割込要求出力端子、(υ) 、 +64は認識+=号入
力端子−1+71 ViデータパX 、 +8.1 +
 +97はデータボートであるU またl71IJ2図
囚、 tIJ)、 tqはCPU(1)の割込要求出力
端子(3)、データボート(8)、認識信号人力4+t
5)の出力波形を示す。
(2) is the CPU (IC), (3), +4) are the interrupt request output terminals, (υ), +64 are the recognition += signal input terminals -1+71 Vi data port X, +8.1 +
+97 is the data boat U and l71IJ2, tIJ), tq is the interrupt request output terminal (3) of the CPU (1), data boat (8), recognition signal 4+t
5) shows the output waveform.

動作を説明すると、CP U(1)カラL: P U 
+z)へ情報を転送する場合はCPLItl)はまず端
子(3)から出力さJ゛る割込要求出力″−6″を15
」かりl111にする(第2図の時点型1・・割込要求
出力時点)1、C)’ U 1.4)は端f(6)への
認識人力レベルがl’ L lθ・し> 1)111t
Cな・つたこと全検知L5てボート(9)をハイインピ
ーダンス状態から入力ポート指定に設定する。そして割
込要求出力を1−L」レベルから[H−ルベルにして端
子(4)から出力し、情報受付可能であることをCPU
(1)に伝える。CPU(1)は端子(5)への認識入
力が1−L」レベルからrHJレベルになっ九(時点型
2)ことを検知してボート(8)より転送すべき情報を
出力する。そして端子(3)からの割込要求出力を[H
iレベルからrLJレベルに下げる(時at3)。CP
tJ12)$1端子(6)ヘノ入力がrLJ L/ベベ
ル変化したことを検知して、ボート(9)よ)CP t
J (])からの転送情報を読み取る。その後、端子(
4)の割込要求出力を1−L」レベルに下げると共にデ
ータボート(9)をハイインピーダンスに設定する。C
PU(1)は端子(5)の入力レベルが1− L Jレ
ベルになつ九(時点t4・・・CPUt21のデー タ
受’4t ’Q了時点)ことを検出してデータが確実V
CCP [J 12)へ伝わつ禿ことを確認すると共に
データボート(8)をハイインピーダンスに設定する。
To explain the operation, CPU (1) Color L: P U
When transferring information to +z), CPLItl) first transfers the interrupt request output ``-6'' output from terminal (3) to 15
'' and set it to l111 (time type 1 in Figure 2...the interrupt request output time) 1, C)' U 1.4) is the recognition human power level for the end f(6) l' L lθ 1) 111t
Set the port (9) from the high impedance state to the input port designation using the full detection L5. Then, the interrupt request output is changed from the 1-L level to the H- level and output from the terminal (4) to notify the CPU that information can be accepted.
Tell (1). The CPU (1) detects that the recognition input to the terminal (5) changes from the 1-L level to the rHJ level (time type 2) and outputs information to be transferred from the boat (8). Then, the interrupt request output from terminal (3) is [H
Lower from i level to rLJ level (at3). C.P.
tJ12) Detecting that the $1 terminal (6) heno input has changed rLJ L/bevel, the boat (9)) CP t
Read the transfer information from J (]). Then the terminal (
4) lowers the interrupt request output to the 1-L" level and sets the data port (9) to high impedance. C
The PU (1) detects that the input level of the terminal (5) reaches the 1-LJ level (time t4...the time when the data reception of the CPU t21 ends) and confirms that the data is securely V.
Confirm that the signal is transmitted to CCP [J12] and set the data boat (8) to high impedance.

(時壱ts・データ出力OF F時点)このようにして
CPU(1)からCP U (2)への情報伝送が終了
する なお、CP U 12)からCPU(1)への情味伝送
は上記と反対の動作となる。
(Time 1s/Data output OFF time) In this way, the information transmission from CPU (1) to CPU (2) is completed.In addition, the information transmission from CPU (12) to CPU (1) is as described above. The operation is the opposite.

〔−に喰技術の問題点〕[-Problems with Nikui technology]

2個のCPIJ(IC)間では上述のようKして完全に
同期がとられながら情報の伝送が行なわれる しかしな
がら情報伝送に関与するCPUが増加してくると、同期
をとることが−しくな抄、また各CPUの待ち時間の一
番遅いものに同期がとられ、処理効率の低下f:きたす
ことになる。またCPU外sKデータ転送のコントロー
ルを行なうためのスケジューラを設けると構成か複雑に
なってしまうという欠点があった。
Information is transmitted between the two CPIJs (ICs) in complete synchronization as described above. However, as the number of CPUs involved in information transmission increases, synchronization becomes difficult. Also, each CPU is synchronized with the one with the slowest waiting time, resulting in a decrease in processing efficiency. Furthermore, there is a drawback that providing a scheduler for controlling sK data transfer outside the CPU makes the configuration complicated.

〔発明の目的〕[Purpose of the invention]

−Cも同II#8か比較的容易にとれ、情報の送受を確
実に何なわぜl y)ることができるマルチCP IJ
システムをII供することを目的とする。
-C is also relatively easy to obtain, such as the same II #8, and is a multi-CP IJ that can reliably send and receive information.
The purpose is to provide the system II.

〔発明の概要〕[Summary of the invention]

本発明は共通データバスに接続された複数のCP Uか
ら構成されたマルチCPUシステムであって、比較的簡
単な構成で各CPU相互1間で情報の伝送を行なわせし
めるために、各CPUに他のCPUへ割込要求を行なう
割込要求出力端子と、他のCPUからの割込要求が人力
される割込入力端子と、割込要求したCPUを認識する
ための認m喘子と、これら端子が接続された制御手段と
を設け、データ転送が必要なときは割込要求出力を他の
CPUへ出し死後、所定時間経過後に共通データバスに
データを出力し、自己の割込要求出力と他のCPUから
の割込要求出力とがほぼ同時に出され九ときは前記所定
時間内に他のCPUからの割込を検知して自己の割込要
求出力を取り下げるよう制御手段を構成したものである
The present invention is a multi-CPU system composed of a plurality of CPUs connected to a common data bus. an interrupt request output terminal for issuing an interrupt request to a CPU, an interrupt input terminal for manually inputting an interrupt request from another CPU, and a recognition screen for recognizing the CPU that has requested an interrupt. A control means to which a terminal is connected is provided, and when data transfer is necessary, it outputs an interrupt request output to another CPU, outputs the data to the common data bus after a predetermined period of time after death, and outputs the data to the common data bus, and outputs the interrupt request output to the own CPU. The control means is configured to detect the interrupt from the other CPU within the predetermined time and cancel its own interrupt request output when the interrupt request output from the other CPU is output almost simultaneously. be.

1′Iら明(1)実施例〕 以ド、本発明になるマルチCPUシステムを図示の実施
例にもとづいて説明する。
1'I (1) Embodiment] Hereinafter, a multi-CPU system according to the present invention will be described based on the illustrated embodiment.

8g3図は本発明になるマルチCPUシス戸ムの−゛実
施例を示すブロック図であり、纂4図は各CP LJの
内部構成を示すlI部ブロック囚である。第3図におい
て−,an 、 uaはCPUであり、CPUGIには
割込要求出力端子0、割込入力端子I、割込要求したC
PUを1識するための認嫌端子四、αe及びCPIJα
・、aυ、 03間でデータを転送するだめの共通デー
タバスαDの人出力ポート(IIが設けられティる。 
CPUQI)、CPIJQ2についても同様にして各々
割込vI求出力端子([1及び@割込入力端子(2)及
び(至)、itm4子30.(2)及び(至)、(2)
人出力ボート(至)及び(至)が設けられている。そし
てePUIQの割込要求出力端子(13はCPU0I)
及びαりの十れぞれのIl&g#端子QD及び(至)へ
接続されており、また割込入力端子(至)及び(ハ)と
もそれぞれダイオード(2)、−を介して接続されてい
る。同様にしてCPUQi)O割込要求出力m子Q’J
tf CP U tll ・f13ノiigQg子Ql
及び■Dへ接続され、また、それぞれダイオード6υ、
(至)を介して割込入力端子041及び(ハ)へも接続
されているつまたCPUn2)の割込要求出力端子(財
)はCPUul。
Figure 8g3 is a block diagram showing an embodiment of the multi-CPU system according to the present invention, and Figure 4 is a block diagram showing the internal configuration of each CP LJ. In FIG. 3, −, an, and ua are CPUs, and CPUGI has an interrupt request output terminal 0, an interrupt input terminal I, and a CPU that requested an interrupt.
Cognitive/dislike terminal 4, αe and CPIJα for understanding PU
A human output port (II) of the common data bus αD is provided to transfer data between .
Similarly, for CPUQI) and CPIJQ2, the interrupt vI request output terminal ([1 and @interrupt input terminal (2) and (to), itm4 child 30. (2) and (to), (2)
A human power boat (to) and (to) are provided. And ePUIQ interrupt request output terminal (13 is CPU0I)
and α are connected to each of the Il&g# terminals QD and (to), and are also connected to the interrupt input terminals (to) and (c) via diodes (2) and -, respectively. . Similarly, CPUQi)O interrupt request output m child Q'J
tf CP U tll ・f13noiigQg子Ql
and ■D, and are also connected to diodes 6υ,
The interrupt request output terminal of CPUn2), which is also connected to the interrupt input terminals 041 and (c) through (to), is CPUul.

Uυの認!I!端子αう及び@へ接続され、またダイオ
ード[有]、(至)を介して割込入力端子I及び(至)
へも接続されている。
Confirmation of Uυ! I! Connected to terminals α and @, and also connected to interrupt input terminals I and (to) via diodes
It is also connected to.

次に各CPU(II、(1υ、α乃につきさらに詳しく
第4図を用いて説明する。なお、例としてcPUu*t
*り上けたが、内部構成はCPUQI)。
Next, each CPU (II, (1υ, α) will be explained in more detail using FIG. 4. As an example, cPUu*t
*Uploaded, but the internal configuration is CPUQI).

02+も同様である。cpUQ1m内には制御回路(4
υ、う、/ダムアクセスメモリ()tAM)(転)、リ
ードイ/jノ=メモリ(ROM ) Bi2が設けられ
ておシ、こtlらでもってデータ転送及び割込人力処理
をイ]なう111JI41手段(財)が構成されている
。11. A M (4a内の一部にはカウンタ(ハ)
、割込フラグメモリ■がaまれている。
The same applies to 02+. There is a control circuit (4
υ, U, / Dumb access memory () tAM) (transfer), read I/J = memory (ROM) Bi2 is provided, and data transfer and interrupt manual processing are performed using these. 111JI41 means (goods) are constituted. 11. A M (Part of 4a has a counter (c)
, interrupt flag memory (2) is stored.

久に本システムにおけるあるCPUから他の(シ1〕1
1へのデータ転送4IhWIh作t−説明する。
It has been a long time since one CPU in this system has
Data transfer to 1 4IhWIh - Explain.

筐ず割込動作について説明する。割込動作とはL: P
t:が現在Aという処理をしていた場合、割込入力端子
へ人力を入れられることによりAという処理の区切りの
喪いところで割込処理の動作に移り、一連の割込処理を
行なった後、元の処理動作に移るものである。
The interrupt operation will be explained. What is interrupt operation? L: P
If t: is currently processing A, human input to the interrupt input terminal causes the interrupt processing to start at the end of the processing A, and after performing a series of interrupt processing, This is a transition to the original processing operation.

本システムにおいては例えばCP U +1(Iが他の
CPUヘデータを送信しようとするときはCP 1.I
 Qlの割込要求出力端子0より割込要求信号を出力す
る。そしてCPUQ9及び0に割込をかける。これによ
りCPU(Iυ及びaaは割込処理動作に入り、入出力
ボート(至)、(至)を人力ボートに指定する。これに
よりCPUQlからのデータの待機状態に入り、所定時
間後にデータをWl順る。CP U !は割込動作に入
るとg*i子シυ。
In this system, for example, CPU +1 (when I tries to send data to another CPU, CP 1.I
An interrupt request signal is output from the interrupt request output terminal 0 of Ql. Then, an interrupt is applied to CPUQ9 and CPUQ0. As a result, the CPU (Iυ and aa) enters interrupt processing operation, and specifies the input/output ports (to) and (to) as human-powered boats.This causes the CPU to enter a standby state for data from CPUQl, and after a predetermined time, data is sent to Wl. When CPU ! enters interrupt operation, g*i child υ occurs.

−々、り倫理レベルを検知してCPLJQIからの割込
要求かCP U Q3からの割込要求かを判別する。
- detects the ethical level and determines whether the interrupt request is from CPLJQI or CPU Q3.

CPUQ3も同様にして認識端子(至)、@の論理レベ
ルを検知してCPUQG、αυのどちらから割込要求が
かかつているかを判別する、本システムでは相手への割
込人力を利用して同期をとり、データの転送ミスを防止
している1、パスanは人出力ボート(18、(至)、
(至)を利用し、通常は人力ボート指定に設定してあり
、データを転送するときだけ出力ポートに指定する。こ
のデータ出力は割込要求出力端子を出力した後、第1の
所定時間である時間T1mに行なわれる。そしてさらに
T2時間恢にデータを取り下げ、入出力ボートを人力ボ
ートに指定すると共に割込要求信号を取り下ける。デー
タ受取側のCPUは前述した如く、割込人力を受けてか
ら所定の時間後(本T冨 実施例の場合Tt + 1時間11)Kデータを読み込
む。ここで本実施例においてデータのll!取りを9時
間遅らせている理由はデータを確実に読み込む九めであ
る。なお時間T1 、 TIの設定について線後述する
。□ 以上のデータ送出のタイムチャートを第5図に示す。第
51囚は例えばCPUQ・O割込要求出力端子0の出力
を同図(8は同じCPU(IIの人出力ポートX11の
出力を示す。
In the same way, CPUQ3 detects the logic level of the recognition terminal (to) and @ and determines whether the interrupt request is coming from CPUQG or αυ.In this system, synchronization is performed using human power to interrupt the other party. 1, the path an is the human output port (18, (to),
(to), and is normally set to specify a human-powered boat, and is specified as an output port only when transferring data. This data output is performed at time T1m, which is the first predetermined time, after outputting the interrupt request output terminal. Further, at the end of time T2, the data is withdrawn, the input/output boat is designated as a manual boat, and the interrupt request signal is withdrawn. As described above, the CPU on the data receiving side reads the K data after a predetermined time (Tt + 1 hour 11 in this T-rich embodiment) after receiving the interruption. Here, in this embodiment, data ll! The reason why the data is delayed for 9 hours is to ensure that the data is loaded properly. The setting of time T1 and TI will be described later. □ A time chart of the above data transmission is shown in Figure 5. The 51st prisoner, for example, outputs the output from the CPUQ/O interrupt request output terminal 0 in the same figure (8 indicates the output from the human output port X11 of the same CPU (II).

ところで、本システムで間層となるの杜共通データバス
aηに2ヶ以上重なって出力指定された場合である。こ
の場合は人出力ボートall (219(至)の電気的
破壊に至る可能性もある。本システムではこの状態を回
避する丸めに割込要求を受けた場合、前記第1の所定時
間T、内に自己の割込要求を取り下げ、データを出力し
ないようにしている。ここで1インストラクシヨンすイ
クル以上の時間(約9μsec以上)ずれて2つ以上の
CPUから割込要求出力が出され九場合を考えると、こ
の場合割込要求出力が重なることは有り得ない。なぜな
らその場合は割込要求出力を最初に出力した以外のCP
Uは割込人力処理のステップに移っているからである。
By the way, in this system, there is a case where two or more data buses are overlapped and designated for output on the Nomori common data bus aη, which is an interlayer. In this case, there is a possibility that the human output boat all (219 (to)) will be electrically destroyed. In this system, when an interrupt request is received for rounding to avoid this situation, the first predetermined time T, interrupt requests are canceled and no data is output.At this point, interrupt requests are output from two or more CPUs with a time difference of more than one instruction cycle (approximately 9 μsec or more). Considering the case, it is impossible for the interrupt request outputs to overlap in this case.
This is because U has moved to the step of manual interrupt processing.

そこで同時あるいはほぼ同時(lインストラクション以
内)に複数のCPUから割込要求出力が出されたときが
問題となる0本システムではこの場合データを出力する
までの時間T1  以割込唆求を出力させるようにして
いる。このとき各C’PUKzZて時間α(っオフは第
2の所定時間)をそれぞれ異ならしめておくことにより
、互いのCPUで割込要求出力を取り下げ九場合に再び
割込要求出力が重なることのないようにしている0例え
ばlインストラクションサイクに4fisecf)CP
Uの場合、Tl =300μsec。
Therefore, a problem arises when interrupt requests are output from multiple CPUs at the same time or almost simultaneously (within l instructions).In this case, in this case, the time until data is output is T1, and the interrupt request is output. That's what I do. At this time, by setting the time α (off is the second predetermined time) for each C'PUKzZ to be different, the interrupt request outputs will not overlap again in the case that the interrupt request outputs are canceled in each CPU. 4fisecf) CP
For U, Tl = 300 μsec.

T2 = 3m5ec 、  α= 30〜50m5e
c  と設定すれば良い。さらにノイズに対する余裕度
を増加させる丸めには受信し九データをもう1縦送プ返
して2度の送受信の一致を確認してから処理させること
もでき、一致回路を増やすことKよリノイズに対する余
裕度を適尚に設定することができる。
T2 = 3m5ec, α=30~50m5e
Just set it as c. Furthermore, for rounding to increase the margin against noise, it is also possible to send and return the received nine data one more time and process it after confirming the coincidence of the two transmissions and receptions.Increasing the number of matching circuits increases the margin against noise. The degree can be set appropriately.

以上のCPU内部での処理動作のフローチャートを第6
図、第7図に示し、第4図と共に説明する。
The flowchart of the above processing operation inside the CPU is shown in the sixth section.
7 and will be described in conjunction with FIG. 4.

第6図は制御手段(ロ)(制御回路−〇)内での動作を
示すフローチャートであに、このフロー中にデータ転送
ルーチンが含まれている。また第7図は割込人力が6つ
走ときの70−チャートである。これらのフローチャー
トに示すグログラム#よI(0M443内に格納されて
おり、制御回路−〇にて読み出され実行される。
FIG. 6 is a flowchart showing the operation within the control means (b) (control circuit -), and this flow includes a data transfer routine. FIG. 7 is a 70-chart when the number of interruptions is 6. Programs # and I (stored in 0M443) shown in these flowcharts are read out and executed by control circuit -0.

電源が投入されたときは第6図に示す如く、まずRA 
M (43内のカウンタ(ハ)、割込フラグメ゛モリ−
やその他の所定のレジスタがイニシャライズ(初期設定
)されろ。次にCPUul、01)、Q4内でデータ転
送が必要かどうかが判断される。
When the power is turned on, first the RA is turned on as shown in Figure 6.
M (counter (c) in 43, interrupt flag memory
and other specified registers are initialized (initial settings). Next, CPUul, 01) determines whether data transfer is necessary within Q4.

もしデータの転送が必要なら次のデータ転送ルーチンに
移る。そうでなければ、他の処J!lを実行し、データ
の転送が必要かどうかの判断点に戻る。
If data transfer is necessary, move on to the next data transfer routine. If not, go elsewhere J! Execute l and return to the point of determining whether data transfer is necessary.

データ転送ルーチンに移った場合はまず1’t A M
 <43内の割込フラグメモリーの内容がチェックされ
る。すなわち、割込フラグがONかどうかチェックされ
る。第7図の70−チャートで後はど説明するように、
他のCPUからの割込要求が人力された場合はこの割込
フラグはONとされる(すなわち割込フラグメモリ(備
の内容が更新される)。割込フラグがONならば1(A
M(43内のカウンタ(ハ)の値がチェックされる。
When moving to the data transfer routine, first 1't A M
The contents of the interrupt flag memory in <43 are checked. That is, it is checked whether the interrupt flag is ON. As explained later in the 70-chart in Figure 7,
When an interrupt request from another CPU is made manually, this interrupt flag is turned ON (that is, the contents of the interrupt flag memory (preparation) are updated).If the interrupt flag is ON, it is set to 1 (A
The value of the counter (c) in M(43) is checked.

すなわち、カラ/り(ハ)が時間’rl+’r2+αを
計時し友か判断される7、このカウンタ(ハ)はイニシ
ャライズされない限り、その値が時間と共に史−[され
るようになっており、経過時間を知ることができるー、
T1+T2+α時間経過した場合は割込フラグをOFF
とし、他の処理プログラムに移る。まに経過していない
場合はすぐ他の処理プログラムに移る。割込フラグがO
Nでない場合(すなわち他のCPUから割込要求が入力
されでいない場合)/fi割込要求を出力する。つまり
制御回路(4+)より割込要求出力端子(CPUHなら
131)t−介して他(DCPUC例、t ハ(11)
 、 (13)へ割込がかけられる0次にT、時間待つ
。さらV(割込フラグがONかどうか判断される。割込
要求出力中に他のCPUから割込が入った場Fj ti
l!If述したようにONとなるので、ONなら他の処
理プログラムにSす、そうでなければデータポート(C
PUQIなら0槌)を出力指定にしてデータを出力する
。さらにT、時間待ったのら、データボートを人力指定
に(7て割込安来を取トげる。そして他の処理プログラ
ムへ移る。
In other words, it is determined whether Kara/Ri (Ha) is a friend by measuring the time 'rl+'r2+α7. Unless this counter (Ha) is initialized, its value changes over time. You can know the elapsed time.
If T1+T2+α time has elapsed, turn off the interrupt flag.
and moves on to other processing programs. If the time has not passed, move on to another processing program immediately. Interrupt flag is O
If not N (that is, if no interrupt request has been input from another CPU), outputs a /fi interrupt request. In other words, the control circuit (4+) is connected to the interrupt request output terminal (131 in the case of CPUH) through the other terminal (in the case of DCPUC, tH (11)
, (13) Waits for T times at the 0th time an interrupt is applied. Furthermore, V (it is determined whether the interrupt flag is ON or not. If an interrupt is received from another CPU while outputting an interrupt request, Fj ti
l! If it is turned on as mentioned above, if it is turned on, it will be sent to another processing program, otherwise it will be sent to the data port (C
If it is PUQI, output the data by specifying 0 (0) as the output specification. After waiting for another T, the data boat is designated manually (7) and the interrupt Yasugi is completed.Then, it moves on to other processing programs.

そし、て讐だデータ転送が必要力為どうかの判断点に戻
る。なお、フローチャートには示されていないがカウン
タ(4鴎は所定時間(Tll T2あるいはTllT2
+α)経過をカウントした後、イニシャライズされるよ
うになっている。
Now, we return to the point of determining whether data transfer requires force or not. Although not shown in the flowchart, a counter (4) is a predetermined time (Tll T2 or TllT2).
+α) After counting the elapsed time, it is initialized.

他のCPUから割込要求が入ったときは割込人力処理プ
ログラムに移る。すなわち、第7図(C示すように割込
人力処理に入るとまずレジスタを待避さする。これは制
御回路(4υ中の演算内dが格納されているレジスタの
内容をRAM(6)内に一時格納することである。次に
割込要求を現在出力中かどうかが判断される。出力中な
ら割込要求を取り下げ、そうでなければそのままと(〜
、次にカウンタ119によりTt+’9時間経過を判断
した後、データを読込む11次に割込フラグf ONと
してカウンタをイニシャライズする。
When an interrupt request is received from another CPU, the process moves to the interrupt manual processing program. That is, as shown in Fig. 7 (C), when entering the interrupt manual processing, the register is first saved. It is to temporarily store it.Next, it is determined whether the interrupt request is currently being output.If it is being output, the interrupt request is canceled, otherwise it is left as is (~
Next, after determining that Tt+'9 time has elapsed by the counter 119, the data is read in. Next, the interrupt flag f is set to ON and the counter is initialized.

−で1てさらに1% A M +43内に待避させてお
いた内容’を舟ひ制−回路(4υ内のレジスタ(図示せ
ず)f−催 に移す。しかる後、割込処理が行なわれ峠、0ゾログ2
ムに戻iっ ここで2ヶ以上のCPIJからほぼ同時に割込要求出力
が出され九ときはT1時間以内に相手の割込を検知して
割込要求出力を取り下げる為、データ読込処暑において
データバスα力のすべての人出カポ−) Ql 、 @
 、 (Jが人力ボート指定となる。そこで例えば鍛初
からプルアップ抵抗をU加しておき、ボートのビットを
すべてr l Jの状秦にセットし、この時のコードを
読取り無袂のコードとすれば、読込処理ルーチンで読み
込みを行なっても問題は生じない。ま九この時給@ 、
g’ −)は取り下げられている(割込要求出力が取り
下げられているので)から、データの読込みを行なわな
いようにすることも可能であ口 以ト述べたmフローチャートによればデータ転送ルーチ
ンにおいて他のCPUから割込要求があった場合、割込
人力処理プログラムに↓・いて割込フラグがONとなる
ため、データ転力がかち台うこともない。なお、第6図
のフローチャートにおいて割込フラグがONであること
により他の処理へ移り再びデータ転送が必要4かどうか
の判断に戻った場合は当然データ転送が必要とされてい
るので、データ転送ルーチンへ移ることになる。
Press 1 to move the contents saved in A M +43 by 1% to the boat control circuit (register (not shown) in 4υ) f-. After that, interrupt processing is performed. Pass, 0 Zorog 2
Returning to the system, if two or more CPIJs output interrupt requests almost simultaneously, the other party's interrupt will be detected within T1 time and the interrupt request output will be canceled. All crowds of bus alpha power) Ql, @
, (J is designated as a human-powered boat. Therefore, for example, add a pull-up resistance U from the beginning of forging, set all the bits of the boat to r l J shape, read the code at this time, and find the unarmed code. If this is the case, there will be no problem even if the reading processing routine is used to read the data.
g'-) has been withdrawn (because the interrupt request output has been withdrawn), it is possible to prevent the data from being read.According to the m flowchart mentioned above, the data transfer routine When there is an interrupt request from another CPU, the interrupt flag is turned ON in the interrupt manual processing program, so the data transfer is not completed. In addition, in the flowchart of Fig. 6, if the interrupt flag is ON and the process moves to another process and returns to the judgment of whether data transfer is necessary 4, it is obvious that data transfer is required, so data transfer is not possible. Let's move on to the routine.

ところで本システムにおけるデータバスa7)の取扱い
について述べると、データバスはトライステートの入出
力ボート又は民生用4ビツトのCPUであれば人出力ボ
ートを利用し、通常は前述した如く人力ボート指定とし
ておいてデータを読取り、割込要求出力を出したときの
み出力ボートとしてデータの送受を行なうことができる
。人出力ボート端子にはシリーズ抵抗を追加し2てア・
<ことにより人出力ボートを電気的に保護させることが
可能である。
By the way, regarding the handling of the data bus a7) in this system, the data bus uses a tri-state input/output port or a human output port in the case of a consumer 4-bit CPU, and is normally designated as a human powered port as mentioned above. It can send and receive data as an output port only when it reads data and issues an interrupt request output. Add a series resistor to the human output boat terminal and
<It is therefore possible to electrically protect the human power boat.

また本/スデムはCP UO数を増加させても基本の夕
・イミノゾは同じで割込時のCPU判別用の端子を増加
させるだけで良い。このとき識別線の数も増加する。こ
の増加を防ぐためには第8図に示すanぐ、各c P 
U (50) 、 (st) 、 (52)。
Moreover, even if the number of CPUOs is increased in this/Sudem, the basic functions remain the same, and all that is required is to increase the number of terminals used to identify the CPU at the time of an interrupt. At this time, the number of identification lines also increases. In order to prevent this increase, the steps shown in Figure 8 are as follows:
U (50), (st), (52).

・・・・・・、 (53)の割込要求出力# (54)
をエンコーダ(55)に通し、コード化して識別コード
線(56)を井して各CPUに識別コードとして入力さ
せると良い。
......, (53) interrupt request output # (54)
It is preferable that the code is passed through an encoder (55), encoded, and inputted to each CPU as an identification code through an identification code line (56).

さら′に本システムは割込要求人力端子へORm埋をと
ることKよ9各CPUの割込人力を受は付けるシステム
であシ、CPU間のデータ転送の選択も容易に可能であ
る。
Furthermore, this system accepts interrupts from each CPU by filling the interrupt request terminal with an ORm, and data transfer between CPUs can be easily selected.

なお・、実施例ではCPUの数を3つとしたが本発明が
これに@られるものでないことは明らηλである。
Although the number of CPUs is three in the embodiment, it is clear ηλ that the present invention is not limited to this.

i&後に、本システムの適用例について以下簡率に述べ
る。
After i&, an application example of this system will be briefly described below.

例えば本システムはリモコン対応可能なチューナー付ビ
デオシステムに適用できる。前述のCt’1Jfll、
G1)、QJ  t−ttLソtLタイ−r−JljI
C。
For example, this system can be applied to a video system with a tuner that is compatible with remote control. The aforementioned Ct'1Jflll,
G1), QJ tttL sotL tie-r-JljI
C.

周波数シンセサイザー(P8)用IC,リモコン受信用
ICに対応させれば良い。ここでテレビジョン受嫁機に
所望のチャンネルの映倫を送ろうとする場合は)゛S用
ICK接続された人カキ−(1ツキ−)装置によりFS
用ICに受信したいチャンネルを入力し、FS用ICは
同じくこれに接続されたPLL用ICを駆鋤し、てチュ
ーラ、ング勅作を行なう。そしてさらにタイ1−用■C
へチャンネルデータを転送し、タイマー用1cに接続さ
れた表示器に受信チャンネルの表示を行なう。こ9とき
のチャ/ネルデータの転送はチャンネル2ケタの情報t
−1ケタずつに分けて(12チヤンネルならlと2に分
けて別々に)転送する。このと色のデータ転送は第6図
のフローチャート中のデータ転送ルーチンに従えば^い
。また当然ながら、タイマー用ICはその認識端子によ
りFS用ICからのデータであることがわかる。またシ
方コ/送信機よりチャンネルデータが送信された場合は
リモコン受1ぎ用lC1よこれに接続された受光素子よ
りチヘ・ノ不ルデータを受散り、さらにFS用ICヘチ
チャンネルデータ転送する。このときタイマー用ICは
そのUS端、子によりリモコン受信用ICからのデータ
であることを判別してそのデータを無視することがてき
る。
It is sufficient to make it compatible with the frequency synthesizer (P8) IC and the remote control reception IC. If you want to send the desired channel's video to the television receiver, use the FS device connected to the S ICK.
The channel to be received is input to the FS IC, and the FS IC drives the PLL IC, which is also connected to the FS IC, and performs the control. And furthermore for tie 1-■C
The receiving channel is displayed on the display connected to the timer 1c. The channel/channel data transfer at this time is the channel 2-digit information t.
- Divide into 1 digit and transfer (if 12 channels, divide into 1 and 2 separately). This and color data transfer can be done by following the data transfer routine in the flowchart of FIG. Naturally, the timer IC can tell from its recognition terminal that the data is from the FS IC. In addition, when channel data is transmitted from the remote control/transmitter, the remote control receiver IC1 receives the channel data from the light receiving element connected thereto, and further transfers the channel data to the FS IC. At this time, the timer IC can determine by its US terminal that the data is from the remote control receiving IC and ignore the data.

〔発明の効果〕 以上述べたように本発明になるマルチCPUシステムに
よれば比較的簡単な構成で、CPU間の情報の送受を確
実に行なわせしめることができる。
[Effects of the Invention] As described above, according to the multi-CPU system of the present invention, information can be reliably transmitted and received between CPUs with a relatively simple configuration.

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

第1図は従来の1ルチCPUシステムの一例を示すブロ
ック図、第2図は第1図のシステムのタイムチャート参
−牛書、第31祉本発明になるマルチCP Uシステム
の一実施例を示すブロック図、#!4図は第3図のCP
Uの内部構成を示すブロック図、第5図は第3図のシス
テムのデータ送出のタイムチャート社i±1、第610
.11,12・・・CPU 。 13、.19.24・・・割込要求出力端子、14.2
0.25・・・割込入力端子、15,16゜21.22
,26,27・・・認識端子、17・・・共通データバ
ス、U・・・制御手段。 代理、人 弁理士  則 近 憲 佑 (ほか1名) 十ノ目 / す2 z tt12      iJA、に
Fig. 1 is a block diagram showing an example of a conventional one multi-CPU system, and Fig. 2 is a time chart of the system shown in Fig. 1. Block diagram shown, #! Figure 4 is the CP of Figure 3.
A block diagram showing the internal configuration of U, FIG. 5 is a time chart of data transmission of the system in FIG.
.. 11,12...CPU. 13. 19.24...Interrupt request output terminal, 14.2
0.25...Interrupt input terminal, 15, 16°21.22
, 26, 27... recognition terminal, 17... common data bus, U... control means. Representative, person Patent attorney Noriyuki Chika (and 1 other person) 10th/su2 z tt12 iJA, ni

Claims (2)

【特許請求の範囲】[Claims] (1)共通データバスに接続された複数のCPUから構
成され、これらCPU相互間で情報の伝送が可能なマル
チCPUシステムにおいて、各CPUに他のCPUへ割
込要求を行なう割込要求出力端子と、他のCPUからの
割込要求出力が人力される割込入力端子と、割込要求し
九CPUを1繊するためのW緻端子と、これら端子と接
続された制御手段とを設け、データ転送が必要なときは
割込要求出力を他のCPUへ出した後、第1の所定の時
間経過後に共通データバスにデータを出力し、自己の割
込要求出力と他のCPUからの割込要求出力とがほぼ同
時に出されたときは前記第1の所定時間内に他のCPU
からの割込を検知して自己の割込要求出力を取りFげる
よう制御手段を構成したことを%黴とするマルチCPU
システム。
(1) In a multi-CPU system consisting of multiple CPUs connected to a common data bus and capable of transmitting information between these CPUs, an interrupt request output terminal for each CPU to issue an interrupt request to other CPUs. , an interrupt input terminal to which an interrupt request output from another CPU is manually inputted, a double terminal for requesting an interrupt and transmitting the nine CPUs, and a control means connected to these terminals, When data transfer is necessary, after outputting an interrupt request output to another CPU, the data is output to the common data bus after a first predetermined time has elapsed, and the interrupt request output of itself and the interrupt from other CPUs are output. If the request output is issued at the same time as the request output, the other CPU
A multi-CPU whose control means is configured to detect an interrupt from the CPU and output its own interrupt request.
system.
(2)割込要求出力が複数のCPLJからほぼ同時に出
さJtて各CPUが割込iI$出力ヲ取り上げ九場合、
第27)所定時間1kpc再びr−夕転送のための割込
要求出力を出さ〔るよう制御手段を檎収し、第2の所定
時間をCPU毎に異ならしめ、+jこと1特徴とする1
fffF請求の範囲第1項紀載))マルチCPUシステ
ム。。
(2) When interrupt request outputs are issued almost simultaneously from multiple CPLJs and each CPU picks up the interrupt iI$ output,
27th) The control means is configured to issue an interrupt request output for the r-night transfer again for a predetermined time of 1 kpc, and the second predetermined time is made different for each CPU.
fffFClaim 1)) Multi-CPU system. .
JP57078326A 1982-05-12 1982-05-12 Multiple cpu system Pending JPS58195976A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57078326A JPS58195976A (en) 1982-05-12 1982-05-12 Multiple cpu system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57078326A JPS58195976A (en) 1982-05-12 1982-05-12 Multiple cpu system

Publications (1)

Publication Number Publication Date
JPS58195976A true JPS58195976A (en) 1983-11-15

Family

ID=13658837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57078326A Pending JPS58195976A (en) 1982-05-12 1982-05-12 Multiple cpu system

Country Status (1)

Country Link
JP (1) JPS58195976A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5464087A (en) * 1991-04-24 1995-11-07 Mars, Incorporated Transaction systems

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5464087A (en) * 1991-04-24 1995-11-07 Mars, Incorporated Transaction systems

Similar Documents

Publication Publication Date Title
US4359731A (en) Communication link contention resolution system
US4689740A (en) Two-wire bus-system comprising a clock wire and a data wire for interconnecting a number of stations
CA1173564A (en) Multiple mode central processing unit
US6687769B2 (en) Serial peripheral interface with high performance buffering scheme
US4495571A (en) Data processing system having synchronous bus wait/retry cycle
US5416909A (en) Input/output controller circuit using a single transceiver to serve multiple input/output ports and method therefor
US5047921A (en) Asynchronous microprocessor random access memory arbitration controller
US4390944A (en) System for controlling access to a common bus in a computer system
CN101911000A (en) Control bus for connection of electronic devices
JPS616752A (en) Slave type interface circuit
US4321665A (en) Data processing system having centralized data alignment for I/O controllers
JPH0517566B2 (en)
US4937816A (en) Single-channel communication bus system and station for use in such a communication bus system
US5471638A (en) Bus interface state machines with independent access to memory, processor and registers for concurrent processing of different types of requests
JPS5962938A (en) Microcomputer
US4292668A (en) Data processing system having data multiplex control bus cycle
JPS58195976A (en) Multiple cpu system
US5533200A (en) Method and apparatus for transmission of signals over a shared line
EP0370780B1 (en) A communication command control system between CPUs
EP0251234B1 (en) Multiprocessor interrupt level change synchronization apparatus
CA1270576A (en) Ic device compatible with input signals in the formats for two-line and four-line type bus lines
US8510482B2 (en) Data processing system having peripheral-paced DMA transfer and method therefor
JPS58107743A (en) Data transfer system
JPS5833969B2 (en) Data transfer method
JP2623816B2 (en) Signal transmission method