JPH08278943A - Shared bus control system - Google Patents

Shared bus control system

Info

Publication number
JPH08278943A
JPH08278943A JP8003095A JP8003095A JPH08278943A JP H08278943 A JPH08278943 A JP H08278943A JP 8003095 A JP8003095 A JP 8003095A JP 8003095 A JP8003095 A JP 8003095A JP H08278943 A JPH08278943 A JP H08278943A
Authority
JP
Japan
Prior art keywords
shared bus
signal
processor
request
bus
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
JP8003095A
Other languages
Japanese (ja)
Inventor
Shinobu Yamato
忍 大和
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP8003095A priority Critical patent/JPH08278943A/en
Publication of JPH08278943A publication Critical patent/JPH08278943A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE: To prevent a process from being delayed by limiting the common bus occupation time of a processor. CONSTITUTION: A timer means 12 outputs a timer signal pulse 23 at each constant period. A counter means 13 which is reset with the timer signal 23 cumulates and calculates the time for which a common bus in-use signal 27 is ON and outputs common bus cumulative use time data 24. A comparing means 14 compares the common bus cumulative use time data 24 with a previously set limit value and outputs a request limit signal 25 when the limit value is exceeded. A limiting means 15 receives an other-module access command signal 21 from the processor 11 when the request limit signal 25 is off to output a shared bus use request signal 22 to a common bus 10 immediately, and after a conflict with another module is arbitrated on the shared bus side, a shared bus use acknowledgement signal 26 is sent; and the processor 11 outputs a shared bus in-use signal 27. When the request limit signal 25 is on, the limiting means 15 does not output the shared bus use request signal 22.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はデータ処理装置の共有バ
ス制御方式に関し、特に複数のプロセッサが共有バスに
接続されたデータ処理装置の共有バス制御方式に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a shared bus control system for a data processing device, and more particularly to a shared bus control system for a data processing device in which a plurality of processors are connected to a shared bus.

【0002】[0002]

【従来の技術】数値制御装置(以下CNCと記す)のハ
ードウェアは、各種制御機能を持った複数のモジュール
と、各モジュールを相互に接続するための共有バスとで
構成されている。モジュールとは、加工プログラムの実
行、機械シーケンスの制御、表示操作など、CNCで必
要な各種制御機能を分担するブロックである。各モジュ
ールには専用のプロセッサが内蔵され、それぞれが担当
するデータ処理を行う。モジュールは共有バスに接続さ
れ、これを通じてモジュール間でデータを交換する。こ
のように、CNCはいわゆるマルチプロセッサ構成とな
っている。
2. Description of the Related Art The hardware of a numerical control device (hereinafter referred to as CNC) is composed of a plurality of modules having various control functions and a shared bus for connecting the modules to each other. A module is a block that shares various control functions required by the CNC such as execution of a machining program, control of a machine sequence, and display operation. A dedicated processor is built in each module, and each module handles data processing. The modules are connected to a shared bus, through which data is exchanged between the modules. Thus, the CNC has a so-called multiprocessor configuration.

【0003】図6は従来のCNCの概略構成を示す図で
ある。CNC制御モジュール100は、加工プログラム
の実行などCNCの基本的な機能を行うモジュールであ
る。PMC制御モジュール200は、入出力信号を処理
し工作機械のシーケンス制御を行うモジュールである。
MMC制御モジュール300は、表示や入力操作など、
オペレータとCNCの間のマンマシン・インタフェース
を管理するモジュールである。
FIG. 6 is a diagram showing a schematic structure of a conventional CNC. The CNC control module 100 is a module that performs basic functions of the CNC such as execution of a machining program. The PMC control module 200 is a module that processes input / output signals and performs sequence control of a machine tool.
The MMC control module 300 can display, input, etc.
It is a module that manages the man-machine interface between the operator and the CNC.

【0004】各モジュールのハードウェアの構成要素と
しては次のようなものがある。CNC制御モジュール1
00を例にとると、プロセッサ101はデータ処理を行
うマイクロプロセッサである。ローカルバス105は、
プロセッサのアドレスバスおよびデータバスである。ロ
ーカルRAM102は、ランダムに読み書きできるメモ
リであり、プロセッサが実行するプログラムや処理デー
タが格納される。ローカルバスはバッファ103を経由
して共有バス10に接続される。バスコントローラ10
4は、プロセッサ101から他のモジュールに対するア
クセス要求を受けて、共通バスの制御を行うコントロー
ラである。制御信号106は共通バスに対するプロセッ
サの制御信号である。
The hardware components of each module are as follows. CNC control module 1
Taking 00 as an example, the processor 101 is a microprocessor that processes data. The local bus 105 is
The address bus and data bus of the processor. The local RAM 102 is a random readable / writable memory, and stores programs executed by the processor and processing data. The local bus is connected to the shared bus 10 via the buffer 103. Bus controller 10
A controller 4 receives an access request from the processor 101 to another module and controls the common bus. Control signals 106 are processor control signals for the common bus.

【0005】このような構成は、基本的に全モジュール
に共通するものであるが、各モジュールには固有の構成
要素もある。PMC制御モジュールには外部のI/Oユ
ニット90と接続するためのI/Oインタフェース20
8が内蔵される。またMMC制御モジュールには、表示
/操作ユニット91と接続するための表示/操作インタ
フェース308がある。
Although such a configuration is basically common to all modules, each module also has its own constituent elements. The PMC control module has an I / O interface 20 for connecting to an external I / O unit 90.
8 is built in. The MMC control module also has a display / operation interface 308 for connecting to the display / operation unit 91.

【0006】各モジュールは基本的に独立しており、並
行してデータ処理を行うが、決して互いに無関係ではな
く、共有バス10を通して相互にデータ交換を行う。こ
のようなデータ交換の一例として、CNCのI/O処理
について次に述べる。工作機械の操作パネルの各種スイ
ッチやランプの信号、および機械本体の各所に取りつけ
られた各種センサやアクチュエータの信号は、I/Oユ
ニット90に接続され、PMC制御モジュール200に
伝えられる。プロセッサ201は、I/Oインタフェー
ス208を通してこれをアクセスし、シーケンス制御プ
ログラムに従って処理を行う。このシーケンス処理の中
ではCNC制御を行うプロセッサ101とのインタフェ
ース情報がデータとして必要である。そこでCNC制御
モジュールのプロセッサ101は、図6の経路412に
示すように、PMC制御モジュールのローカルRAM2
02の一定の領域に、インタフェース情報を転送する。
この情報転送は一定の周期で繰り返し行われる。
Although each module is basically independent and processes data in parallel, it is never related to each other and exchanges data with each other through the shared bus 10. As an example of such data exchange, CNC I / O processing will be described below. The signals of various switches and lamps on the operation panel of the machine tool, and the signals of various sensors and actuators attached to various parts of the machine body are connected to the I / O unit 90 and transmitted to the PMC control module 200. The processor 201 accesses this through the I / O interface 208 and performs processing according to the sequence control program. In this sequence processing, interface information with the processor 101 that performs CNC control is necessary as data. Therefore, the processor 101 of the CNC control module uses the local RAM 2 of the PMC control module as shown in the path 412 of FIG.
The interface information is transferred to a certain area 02.
This information transfer is repeated at regular intervals.

【0007】[0007]

【発明が解決しようとする課題】しかし、もし仮に共有
バスが他のプロセッサによって占有されて、すぐに使え
ない状態にあると、一定の周期で行われるべき情報転送
に遅延が生じる。その結果、例えば、CNCで制御され
る工作機械のアクチュエータが本来動作すべきタイミン
グを逸し、遅れて動作すると、最悪の場合は機械の破損
につながる恐れさえある。
However, if the shared bus is occupied by another processor and cannot be used immediately, a delay occurs in information transfer that should be performed at a constant cycle. As a result, for example, if the actuator of the machine tool controlled by the CNC misses the timing at which it should operate and operates with a delay, in the worst case, it may even lead to damage of the machine.

【0008】言い換えると、CNCは実時間処理システ
ムであり、あらかじめ設計時に決められた時間内に必要
な処理が終わらないと、システム全体の動作に大きな支
障を来すことになる。ここではI/O処理を例に説明し
たが、同様な実時間処理は、サーボ制御や、DNC運転
での通信制御に関しても必要である。
In other words, the CNC is a real-time processing system, and if the necessary processing is not completed within the time predetermined at the time of designing, the operation of the entire system will be seriously hindered. Here, the I / O processing has been described as an example, but similar real-time processing is also required for servo control and communication control in DNC operation.

【0009】さて、上述のような共有バス上の問題は、
例えばMMC制御モジュールのプロセッサ301が、経
路431または経路432に示すような、他のモジュー
ルに対するアクセスを非常に頻繁に行うようなケースで
発生し得る。アクセス競合による、時間遅延の問題を防
ぐには、プロセッサ301から他のモジュールへのアク
セスを、ある程度制限するしかない。
The problem with the shared bus as described above is as follows.
This may occur in the case where the processor 301 of the MMC control module accesses the other module very frequently, as shown in the path 431 or the path 432. In order to prevent the problem of time delay due to access contention, access from the processor 301 to other modules can only be restricted to some extent.

【0010】従来は、このような制限手段としては、プ
ロセッサ301の制御プログラムにおいて、あまり頻繁
に他のモジュールをアクセスしないよう、ソフトウェア
で配慮するしか方法がなかった。つまり、プログラム開
発時に、そのプログラムが他のモジュールに対して、単
位時間にどれだけアクセスするか(すなわち、どの位共
通バスを占有するか)を見積り、それがCNCシステム
全体の動作に影響を与える可能性があるかどうかを評価
し、不都合があれば、アクセスの頻度を下げるように、
ソフトウェアで待ち時間を挿入して調整するという作業
である。このような作業は手間がかかり、待ち時間を入
れた場合は完成したプログラムの性能も低下するという
問題があった。
Conventionally, as such a limiting means, in the control program of the processor 301, there is no way but to consider by software so as not to access other modules too often. That is, at the time of program development, how much the program accesses other modules per unit time (that is, how much common bus is occupied) is estimated, and this affects the operation of the entire CNC system. Evaluate whether there is a possibility and if there is inconvenience, reduce the frequency of access,
It is the work of inserting waiting time with software and adjusting. There is a problem that such a work is troublesome and the performance of the completed program is deteriorated when waiting time is put.

【0011】また、MMC制御モジュールが実行するプ
ログラムは、表示制御やマンマシン・インタフェースを
行うものであり、CNCをカスタマイズして、工作機械
のタイプごとに最適な表示操作方式を実現するために使
用される。場合によっては市販のソフトウェアをそのま
ま搭載することもある。市販のソフトウェアから見ると
単にCNC側のファイルを読むだけでも、実際には共有
バスを連続して占有する結果になる。それがたとえ数ミ
リ秒であっても、同じ程度の周期で実時間処理を行って
いるCNCにとっては致命的となり得る。しかし、この
ような性質を熟知していない第三者が作成するソフトウ
ェアに、前述のような共有バス占有率の評価・調整とい
った対策を期待するのはとうてい不可能である。
The program executed by the MMC control module is for controlling display and man-machine interface, and is used for customizing the CNC to realize an optimum display operation method for each type of machine tool. To be done. In some cases, commercially available software may be installed as it is. From the standpoint of commercially available software, simply reading a file on the CNC side actually results in continuous occupation of the shared bus. Even a few milliseconds can be fatal for a CNC that is performing real-time processing at the same cycle. However, it is almost impossible to expect the software created by a third party who is not familiar with such properties with the measures such as the evaluation and adjustment of the shared bus occupancy ratio as described above.

【0012】本発明はこのような点に鑑みてなされたも
のであり、特定のプロセッサによる共有バス占有率を、
ソフトウェア上の対策によらず、自動的に調整する手段
を提供し、一般的に時間的な余裕のない実時間処理にお
いて、共有バスのアクセス競合による処理の遅延の問題
を解決することを目的とする。
The present invention has been made in view of the above circumstances, and determines the shared bus occupancy rate by a specific processor.
The purpose is to provide a means for automatically adjusting regardless of software measures, and to solve the problem of processing delay due to access conflict of shared bus in real-time processing that generally has no time margin. To do.

【0013】[0013]

【課題を解決するための手段】本発明では上記課題を解
決するために、一定の周期でタイマー信号を出力するタ
イマー手段と、プロセッサが共有バスを使用した時間を
累積計算し、前記タイマー信号でリセットされるカウン
タ手段と、前記累積計算結果と、あらかじめ設定された
限界値とを比較し、前記累積計算結果が前記限界値を超
えた場合は要求制限信号を出力する比較手段と、前記要
求制限信号を受けて、プロセッサからの共有バス使用要
求を保留する制限手段とが提供される。
In order to solve the above-mentioned problems, the present invention cumulatively calculates the time when a processor uses a shared bus and a timer means which outputs a timer signal at a constant cycle. A resetting counter means, a comparison means for comparing the cumulative calculation result with a preset limit value, and outputting a request limit signal when the cumulative calculation result exceeds the limit value, and the request limit A limiting means for receiving the signal and holding the shared bus use request from the processor is provided.

【0014】[0014]

【作用】タイマー手段が発生するタイマー信号の周期内
の共有バス使用時間を、カウンタ手段が累積計算する。
比較手段は、カウンタ手段が計算した累計使用時間が限
界値を越えたことを要求制限信号として制限手段に通知
する。制限手段は、要求制限信号を受けて、プロセッサ
からの他モジュールアクセス指令を保留する。
The counter means cumulatively calculates the shared bus use time within the period of the timer signal generated by the timer means.
The comparing means notifies the limiting means as a request limiting signal that the cumulative use time calculated by the counter means has exceeded the limit value. The limiting means receives the request limiting signal and holds the other module access command from the processor.

【0015】[0015]

【実施例】以下、本発明の実施例を図面に基づいて説明
する。図1は本発明の共有バス制御方式の概略構成を示
すブロック図である。図は、プロセッサ11からの共有
バス要求に基づいて、共有バス10の使用を要求するバ
スコントローラの構成を示している。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a schematic configuration of a shared bus control system of the present invention. The figure shows the configuration of a bus controller that requests the use of the shared bus 10 based on the shared bus request from the processor 11.

【0016】タイマー手段12は、あらかじめ設定され
た一定周期ごとに、パルス状のタイマー信号23を出力
する。カウンタ手段13は、共有バス使用中信号27が
オンになっている時間を累積計算する。またカウンタ手
段13は、タイマー信号23によってリセットされる。
よってカウンタ手段13の出力は、タイマー信号発生後
にプロセッサが共有バスを使用した時間、すなわち共有
バス累計使用時間データ24となる。
The timer means 12 outputs a pulsed timer signal 23 at preset constant intervals. The counter means 13 cumulatively calculates the time when the shared bus busy signal 27 is on. The counter means 13 is reset by the timer signal 23.
Therefore, the output of the counter means 13 becomes the time when the processor used the shared bus after the generation of the timer signal, that is, the shared bus accumulated use time data 24.

【0017】比較手段14は、共有バス累計使用時間デ
ータ24を、あらかじめ設定された限界値と比較し、限
界値を超えると、要求制限信号25を出力する。制限手
段15は、要求制限信号25がオフの場合は、プロセッ
サ11からの他モジュールアクセス指令信号21を受け
て、共有バス使用要求信号22を共有バスに対してただ
ちに出力する。共有バス使用要求信号22が出力される
と、共有バス側で他モジュールとの競合を調停した上
で、共有バス使用許可信号26が送られる。共有バス使
用許可信号26を受けて、プロセッサは共有バス使用中
信号27を出力し、前記カウンタ手段がその時間を累計
する。
The comparison means 14 compares the shared bus accumulated use time data 24 with a preset limit value, and outputs a request limit signal 25 when the limit value is exceeded. When the request limiting signal 25 is off, the limiting means 15 receives the other module access command signal 21 from the processor 11 and immediately outputs the shared bus use request signal 22 to the shared bus. When the shared bus use request signal 22 is output, the shared bus side arbitrates competition with other modules and then the shared bus use permission signal 26 is sent. In response to the shared bus use permission signal 26, the processor outputs the shared bus busy signal 27, and the counter means accumulates the time.

【0018】しかし要求制限信号25がオンの場合は、
制限手段15によってプロセッサの要求は保留され、共
有バス使用要求信号22は出力されない。次に本発明の
共有バス制御方式の全体的な動作を、図2の状態遷移図
を用いて説明する。 〔S0:初期状態〕カウンタ手段13がリセットされた
状態であり、電源投入後はこの状態にある。タイマー信
号23がオフすると、状態S1に進む。 〔S1:通常状態〕カウンタ手段13のリセットが解除
され、プロセッサ11の共有バス使用時間を累積計算し
ている状態である。この状態S1においては、要求制限
信号25はオフ状態であり、プロセッサ11からの他モ
ジュールアクセス指令信号21は、共有バス使用要求信
号22として、そのまま共有バスに出力される。従って
プロセッサ11は共有バス10が空いている限り、即時
に共有バスを使用できる。タイマー信号23がオンにな
ると、状態S0に戻る。しかし、タイマー信号がオンに
なる前にカウンタの値が限界値を越えると、状態S2へ
遷移する。 〔S2:制限状態〕共有バス使用時間累積値24が限界
値をすでに超え、要求制限信号25がオンの状態であ
る。このとき、プロセッサからの共有バス要求指令信号
21は保留され、共有バス使用要求信号22は出力され
ない。タイマー信号23がオンになると、状態S0へ遷
移する。
However, when the request limiting signal 25 is on,
The request of the processor is held by the limiting means 15, and the shared bus use request signal 22 is not output. Next, the overall operation of the shared bus control system of the present invention will be described with reference to the state transition diagram of FIG. [S0: Initial State] The counter means 13 is in a reset state, and is in this state after the power is turned on. When the timer signal 23 turns off, the process proceeds to state S1. [S1: Normal state] The reset of the counter means 13 is released, and the shared bus use time of the processor 11 is cumulatively calculated. In this state S1, the request limit signal 25 is in the off state, and the other module access command signal 21 from the processor 11 is output as it is to the shared bus as the shared bus use request signal 22. Therefore, the processor 11 can immediately use the shared bus as long as the shared bus 10 is free. When the timer signal 23 is turned on, the state returns to state S0. However, if the counter value exceeds the limit value before the timer signal is turned on, the state transitions to state S2. [S2: Limit state] The shared bus use time cumulative value 24 has already exceeded the limit value, and the request limit signal 25 is in the on state. At this time, the shared bus request command signal 21 from the processor is suspended and the shared bus use request signal 22 is not output. When the timer signal 23 is turned on, the state transitions to state S0.

【0019】次に、本発明を用いた具体的な実施例につ
いて説明する。図3は本発明の共有バス制御方式による
バスコントローラの回路構成図である。このバスコント
ローラは、図6に示す従来の数値制御装置の構成のう
ち、特にMMC制御モジュールに適用して、効果をあげ
るものである。
Next, specific examples using the present invention will be described. FIG. 3 is a circuit configuration diagram of a bus controller according to the shared bus control system of the present invention. This bus controller is particularly effective when applied to the MMC control module in the configuration of the conventional numerical controller shown in FIG.

【0020】まず始めに、プロセッサが共有バスを使用
する際の手順について説明する。プロセッサ11は、共
有バスを経由して他のモジュールにアクセスする場合、
最初に他モジュールアクセス指令信号21をオン(1)
にする。この信号はセレクタ35を経由して共有バス使
用要求信号22として出力される。なおセレクタ35の
選択入力Sにつながる要求制限信号25は、通常状態で
はオフ(0)である。共有バス側では、他のモジュール
との競合を調停した上で、共有バス使用許可信号26を
返す。共有バスの使用を許可されると、プロセッサ11
は、実際にアクセスを行うためのストローブ信号である
共有バス使用中信号27を出力する。
First, the procedure when the processor uses the shared bus will be described. When the processor 11 accesses another module via the shared bus,
First, other module access command signal 21 is turned on (1)
To This signal is output as the shared bus use request signal 22 via the selector 35. The request limiting signal 25 connected to the selection input S of the selector 35 is off (0) in the normal state. On the shared bus side, the shared bus use permission signal 26 is returned after arbitrating the competition with other modules. When the use of the shared bus is permitted, the processor 11
Outputs a shared bus busy signal 27 which is a strobe signal for actual access.

【0021】タイマー32は、クロック発振器31が発
生する1MHzのクロック出力信号を2000分周し、
2mSの周期でパルス幅1μSのタイマー信号23を出
力する。
The timer 32 divides the 1 MHz clock output signal generated by the clock oscillator 31 by 2000,
A timer signal 23 having a pulse width of 1 μS is output at a cycle of 2 mS.

【0022】カウンタ33は、同クロック信号で動作す
る同期式カウンタで、共有バス使用中信号27がオンに
なっている間、クロックをカウントする。同カウンタの
リセット入力RESにはタイマー信号23が接続されて
おり、2mS毎にカウント値はゼロにリセットされる。
クロックは1MHzであるから、カウンタの出力が例え
ば10進数で20の時は、それはすなわち共有バス使用
時間が累計20μSであることを意味する。
The counter 33 is a synchronous counter that operates with the same clock signal and counts clocks while the shared bus busy signal 27 is on. The timer signal 23 is connected to the reset input RES of the counter, and the count value is reset to zero every 2 mS.
Since the clock is 1 MHz, when the output of the counter is, for example, a decimal number 20, it means that the shared bus use time is 20 μS in total.

【0023】カウンタ33のカウント出力は比較器34
のB入力に接続され、A入力につながっている限界値レ
ジスタ38の値と比較される。限界値レジスタ38は、
あらかじめプロセッサ11によって設定されており、そ
の値は例えば100(すなわち100μS相当)であ
る。B入力がA入力を上回ると、比較器の出力がオンに
なる。これが要求制限信号25である。
The count output of the counter 33 is the comparator 34.
Of the limit value register 38, which is connected to the B input of the. The limit value register 38 is
It is set in advance by the processor 11, and its value is, for example, 100 (that is, 100 μS equivalent). When the B input exceeds the A input, the comparator output turns on. This is the request limit signal 25.

【0024】遅延回路36は、あらかじめプロセッサに
よって設定された遅延時間レジスタ37に従って、一定
時間Tdだけ信号を遅延させるものである。ここでは2
00μSの遅延が設定されているものとする。なおゲー
ト39cはNOT論理であり、遅延回路のリセット端子
RESに接続されている。よって、他モジュールアクセ
ス指令信号21がオフの時は遅延回路36は初期化され
て、出力はオフとなる。
The delay circuit 36 delays the signal for a fixed time Td according to a delay time register 37 set in advance by the processor. 2 here
It is assumed that a delay of 00 μS is set. The gate 39c has NOT logic and is connected to the reset terminal RES of the delay circuit. Therefore, when the other module access command signal 21 is off, the delay circuit 36 is initialized and the output is off.

【0025】セレクタ35は2入力の選択回路で、要求
制限信号25がオフの時は他モジュールアクセス指令信
号21が選択され、オンの時は、遅延回路出力28が選
択されて、それが共有バス使用要求信号22を駆動す
る。
The selector 35 is a 2-input selection circuit. When the request limiting signal 25 is off, the other module access command signal 21 is selected, and when it is on, the delay circuit output 28 is selected, which is the shared bus. The usage request signal 22 is driven.

【0026】以上の回路の動作を、図4のタイムチャー
トに示す。タイマー信号23は2mS周期で出力される
が、図は2周期分を示しており、前半はプロセッサから
他のモジュールへのアクセスが比較的少ないケース、後
半は逆に多いケースをあらわしている。
The operation of the above circuit is shown in the time chart of FIG. Although the timer signal 23 is output in a cycle of 2 mS, the figure shows two cycles, and the first half shows a case where access from the processor to other modules is relatively small, and the second half shows conversely a large case.

【0027】前半においては、プロセッサからは他モジ
ュールアクセス指令信号21が散発的に出力され、それ
ぞれに応じて共有バス使用要求信号22が出力される。
各要求に続いて図3で示した共有バス使用許可信号26
がプロセッサに返り、共有バス使用中信号27がオンに
なる。従ってカウンタ33の出力である共有バス累計使
用時間データ24は図のように次第にカウントアップし
て行く。2mS経過し、タイマー信号23が発生する
と、図3で示したカウンタ33はリセットされる。この
間、カウンタ33のカウント値は限界値に達しないの
で、要求制限信号25もオフのままである。
In the first half, the other module access command signals 21 are sporadically output from the processor, and the shared bus use request signal 22 is output accordingly.
Following each request, the shared bus use permission signal 26 shown in FIG.
Is returned to the processor, and the shared bus busy signal 27 is turned on. Therefore, the shared bus accumulated use time data 24, which is the output of the counter 33, gradually counts up as shown in the figure. When 2 mS has elapsed and the timer signal 23 is generated, the counter 33 shown in FIG. 3 is reset. During this time, the count value of the counter 33 does not reach the limit value, so the request limit signal 25 also remains off.

【0028】一方、後半の2mSでは、プロセッサの共
有バスアクセスがさかんに行われ、カウンタ33の出力
である共有バス累計使用時間データ24は、それに従っ
て急速にカウントアップする。やがてその値が限界値の
100を超えると、要求制限信号25がオンになり、カ
ウンタ33のカウント・イネーブル入力ENが、NOT
ゲート39aとANDゲート39bによってオフになる
ので、カウンタ33はそれ以上カウントアップしない。
しかしカウンタの出力はすでに限界値を超えているの
で、要求制限信号25はカウンタがタイマー信号23に
よってリセットされるまでオフにはならない。
On the other hand, in the latter half of 2 mS, the shared bus access of the processor is frequently performed, and the shared bus accumulated use time data 24 output from the counter 33 is rapidly counted up accordingly. When the value eventually exceeds the limit value of 100, the request limit signal 25 is turned on, and the count enable input EN of the counter 33 changes to NOT.
Since it is turned off by the gate 39a and the AND gate 39b, the counter 33 does not count any more.
However, since the output of the counter has already exceeded the limit value, the request limit signal 25 does not turn off until the counter is reset by the timer signal 23.

【0029】図5は、この前後(時刻t1からt2)の
信号波形を、時間軸を拡大して、分かりやすく示したも
のである。図5に示すように、要求制限信号25がオン
になると、プロセッサが他のモジュールをアクセスしよ
うとしても共有バス使用要求信号22はすぐには出力さ
れず、一旦保留される。そして遅延時間レジスタに設定
された時間Td、すなわち200μSが経過したのち、
共有バス使用要求信号22が出力される。
FIG. 5 shows the signal waveforms before and after this (from time t1 to t2) in an easy-to-understand manner by expanding the time axis. As shown in FIG. 5, when the request limiting signal 25 is turned on, the shared bus use request signal 22 is not immediately output even if the processor attempts to access another module, but is temporarily suspended. Then, after the time Td set in the delay time register, that is, 200 μS has elapsed,
The shared bus use request signal 22 is output.

【0030】以上のように、本実施例では、タイマー周
期2mSのうち累計で100μSまではプロセッサ11
が共有バスを自由に使用できるが、それを超えると20
0μSに一回しか使用を許されなくなる。従って、その
間は他のプロセッサがバスを使用できる。
As described above, in the present embodiment, the processor 11 is used up to a total of 100 μS in the timer period of 2 mS.
Can use the shared bus freely, but beyond that, 20
It can only be used once at 0 μS. Therefore, in the meantime, other processors can use the bus.

【0031】上記の説明では、遅延時間を200μSと
いう値としたが、これを1.9mS(タイマー周期 ─
限界値レジスタ設定値)以上に設定するか、あるいは
遅延回路そのものを削除する構成も可能である。この場
合は、図1の本発明の概略構成で説明したように、次回
のタイマー信号が発生するまで、他モジュールアクセス
指令信号を保留するという動作となる。
In the above description, the delay time is set to 200 μS, but it is set to 1.9 mS (timer period
It is also possible to set the limit value register setting value) or more or delete the delay circuit itself. In this case, as described in the schematic configuration of the present invention in FIG. 1, the operation for suspending the other module access command signal is performed until the next timer signal is generated.

【0032】また上記の説明では、本発明の共有バス制
御方式を、データ処理装置の中の特定のモジュールのみ
に適用するとしたが、これを全モジュールに適用するこ
とも可能である。その場合、各モジュールの性質を考慮
して、限界値と遅延時間を決定すればよい。
Further, in the above description, the shared bus control method of the present invention is applied to only a specific module in the data processing device, but it is also possible to apply this to all modules. In that case, the limit value and the delay time may be determined in consideration of the characteristics of each module.

【0033】さらに上記の説明では、限界値や遅延時間
は、限界値レジスタ37と遅延時間レジスタ38でソフ
トウェア設定可能としたが、これを簡略化して、固定値
とすることも可能である。しかし、本実施例のようにソ
フトウェア設定可能にした方が、データ処理装置全体の
構成や規模に応じて、プロセッサの共有バス使用時間を
きめ細かく管理できるのは言うまでもない。
Further, in the above description, the limit value and the delay time can be set by software by the limit value register 37 and the delay time register 38, but they can be simplified and fixed. However, it goes without saying that the software-configurable method as in the present embodiment allows the shared bus usage time of the processor to be finely managed according to the configuration and scale of the entire data processing device.

【0034】[0034]

【発明の効果】以上説明したように本発明では、特定の
プロセッサによる共有バスの使用時間を累計し、それに
応じて共有バスに対する使用要求を制限するようにした
ので、共有バス占有率を、ソフトウェア上の対策によら
ず、自動的に調整することが可能となる。従って、時間
的な余裕のない実時間処理において、共有バスのアクセ
ス競合による処理の遅延の問題がなくなり、データ処理
装置の信頼性が向上する。
As described above, according to the present invention, the usage time of the shared bus by a specific processor is accumulated and the usage request to the shared bus is limited accordingly. It becomes possible to adjust automatically regardless of the above measures. Therefore, in real-time processing with no time margin, the problem of processing delay due to access conflict on the shared bus is eliminated, and the reliability of the data processing device is improved.

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

【図1】本発明の共有バス制御方式の概略構成を示すブ
ロック図である。
FIG. 1 is a block diagram showing a schematic configuration of a shared bus control system of the present invention.

【図2】本発明の共有バス制御の状態遷移を示す状態遷
移図である。
FIG. 2 is a state transition diagram showing a state transition of shared bus control according to the present invention.

【図3】本発明の共有バス制御方式によるバスコントロ
ーラの回路構成図である。
FIG. 3 is a circuit configuration diagram of a bus controller according to a shared bus control system of the present invention.

【図4】本発明の共有バス制御方式によるバスコントロ
ーラの動作を示すタイムチャートである。
FIG. 4 is a time chart showing the operation of the bus controller according to the shared bus control system of the present invention.

【図5】本発明の共有バス制御方式によるバスコントロ
ーラの動作を示すタイムチャート図4の拡大図である。
FIG. 5 is an enlarged view of the time chart of FIG. 4 showing the operation of the bus controller according to the shared bus control system of the present invention.

【図6】従来の数値制御装置の概略構成を示す図であ
る。
FIG. 6 is a diagram showing a schematic configuration of a conventional numerical control device.

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

10 共有バス 11 プロセッサ 12 タイマー手段 13 カウンタ手段 14 比較手段 15 制限手段 21 他モジュールアクセス指令信号 22 共有バス使用要求信号 23 タイマー信号 24 共有バス累計使用時間データ 25 要求制限信号 26 共有バス使用許可信号 27 共有バス使用中信号 10 shared bus 11 processor 12 timer means 13 counter means 14 comparing means 15 limiting means 21 other module access command signal 22 shared bus use request signal 23 timer signal 24 shared bus accumulated use time data 25 request limit signal 26 shared bus use enable signal 27 Shared bus busy signal

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】複数のプロセッサが共有バスに接続された
データ処理装置の共有バス制御方式において、 一定の周期でタイマー信号を出力するタイマー手段と、 プロセッサが共有バスを使用した時間を累積計算し、前
記タイマー信号でリセットされるカウンタ手段と、 前記累積計算結果と、あらかじめ設定された限界値とを
比較し、前記累積計算結果が前記限界値を超えた場合は
要求制限信号を出力する比較手段と、 前記要求制限信号を受けて、プロセッサからの共有バス
使用要求を保留する制限手段と、 を有することを特徴とする共有バス制御方式。
1. In a shared bus control system of a data processing device in which a plurality of processors are connected to a shared bus, a timer means for outputting a timer signal at a constant cycle, and a processor cumulatively calculates the time when the shared bus is used. Comparing means for comparing the cumulative calculation result with a preset limit value, and outputting a request limiting signal when the cumulative calculation result exceeds the limit value. A shared bus control system comprising: a limiting unit that receives the request limiting signal and holds a shared bus use request from a processor.
【請求項2】前記制限手段は、あらかじめ設定された遅
延時間が経過した後に保留を解除することを特徴とする
請求項1記載の共有バス制御方式。
2. The shared bus control system according to claim 1, wherein the limiting means releases the hold after a preset delay time has elapsed.
【請求項3】前記遅延時間は、プロセッサによって設定
可能であることを特徴とする請求項2記載の共有バス制
御方式。
3. The shared bus control system according to claim 2, wherein the delay time can be set by a processor.
【請求項4】前記限界値は、プロセッサによって設定可
能であることを特徴とする請求項1記載の共有バス制御
方式。
4. The shared bus control system according to claim 1, wherein the limit value can be set by a processor.
【請求項5】前記データ処理装置は、数値制御装置であ
ることを特徴とする請求項1記載の共有バス制御方式。
5. The shared bus control system according to claim 1, wherein the data processing device is a numerical control device.
JP8003095A 1995-04-05 1995-04-05 Shared bus control system Pending JPH08278943A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8003095A JPH08278943A (en) 1995-04-05 1995-04-05 Shared bus control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8003095A JPH08278943A (en) 1995-04-05 1995-04-05 Shared bus control system

Publications (1)

Publication Number Publication Date
JPH08278943A true JPH08278943A (en) 1996-10-22

Family

ID=13706881

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8003095A Pending JPH08278943A (en) 1995-04-05 1995-04-05 Shared bus control system

Country Status (1)

Country Link
JP (1) JPH08278943A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030019235A (en) * 2001-08-31 2003-03-06 코닌클리즈케 필립스 일렉트로닉스 엔.브이. Dynamic access control of a function to a collective resource
KR100594130B1 (en) * 1998-12-28 2006-08-30 삼성전자주식회사 Deadlock prevention device in a multi-bus master system
JP2011022781A (en) * 2009-07-15 2011-02-03 Mitsubishi Electric Corp Data transfer apparatus, data transfer method and data transfer program
WO2012014287A1 (en) * 2010-07-27 2012-02-02 富士通株式会社 Multi-core processor system, control program and control method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100594130B1 (en) * 1998-12-28 2006-08-30 삼성전자주식회사 Deadlock prevention device in a multi-bus master system
KR20030019235A (en) * 2001-08-31 2003-03-06 코닌클리즈케 필립스 일렉트로닉스 엔.브이. Dynamic access control of a function to a collective resource
JP2003131937A (en) * 2001-08-31 2003-05-09 Koninkl Philips Electronics Nv Dynamic access control for handling grouped resources
JP2011022781A (en) * 2009-07-15 2011-02-03 Mitsubishi Electric Corp Data transfer apparatus, data transfer method and data transfer program
WO2012014287A1 (en) * 2010-07-27 2012-02-02 富士通株式会社 Multi-core processor system, control program and control method
JP5397546B2 (en) * 2010-07-27 2014-01-22 富士通株式会社 Multi-core processor system, control program, and control method

Similar Documents

Publication Publication Date Title
JP3633998B2 (en) Computer system
EP1253518B1 (en) Memory access arbitration guaranteeing a desired data transfer rate
US7213084B2 (en) System and method for allocating memory allocation bandwidth by assigning fixed priority of access to DMA machines and programmable priority to processing unit
US20230113657A1 (en) Preemptive wakeup circuit for wakeup from low power modes
EP0510833A2 (en) Data processing apparatus having address decoder
JPH08278943A (en) Shared bus control system
US6504854B1 (en) Multiple frequency communications
US4855901A (en) Apparatus for transferring data between a microprocessor and a memory
JPH0844594A (en) Data processor
US5548797A (en) Digital clock pulse positioning circuit for delaying a signal input by a fist time duration and a second time duration to provide a positioned clock signal
JPH07152449A (en) Computer system for control of peripheral- bus clock singnal and its method
JPH08129883A (en) Refresh control system for d-ram
TW202103012A (en) Multi-die system
RU2058041C1 (en) Device for data exchange for two processors through shared memory
JPH06236683A (en) Memory refresh control circuit
JP2756445B2 (en) Asynchronous circuit reset method
JPH07244595A (en) Process switch controller and process controlling method
JPH0660017A (en) Collision circuit
JP3049041B1 (en) CPU clock control method and circuit
JPH1125034A (en) Cpu peripheral circuit
JP2003099397A (en) Data processing system
JPH08137785A (en) Dma controller
JPH05165541A (en) Electronic circuit
KR100244471B1 (en) Direct memory access controller and control method
KR100231721B1 (en) Bus abitor for accessing apparatus sharing