JPS6236263B2 - - Google Patents

Info

Publication number
JPS6236263B2
JPS6236263B2 JP54006981A JP698179A JPS6236263B2 JP S6236263 B2 JPS6236263 B2 JP S6236263B2 JP 54006981 A JP54006981 A JP 54006981A JP 698179 A JP698179 A JP 698179A JP S6236263 B2 JPS6236263 B2 JP S6236263B2
Authority
JP
Japan
Prior art keywords
timing chain
data processing
processing device
segment
header
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.)
Expired
Application number
JP54006981A
Other languages
English (en)
Other versions
JPS54121040A (en
Inventor
Fuotsukusu Piitaa
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.)
Plessey Overseas Ltd
Original Assignee
Plessey Overseas 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 Plessey Overseas Ltd filed Critical Plessey Overseas Ltd
Publication of JPS54121040A publication Critical patent/JPS54121040A/ja
Publication of JPS6236263B2 publication Critical patent/JPS6236263B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】 本発明は、リアルタイム・データ処理装置、さ
らに詳細には、「待期間」命令を処理する装置に
関するものである。
例えば、電気通信切換装置などを制御するため
に使用されるリアルタイムデータ処理装置におい
ては、しばしば指定された期間、処理を中断する
ことが必要である。例えば、呼出の設定の間、所
定の期間(例えばインターデジタルポーズ)、各
数字を受信後、ダイアルされた数字の蓄積処理は
中断される。そのような動作は「待期間」命令、
又はマイクロ命令を実行して達成され、命令自身
は時間遅延を指定しているものである。その他の
多くの場合においても「待期間」マイクロ命令が
計画され、プロチプロセツサ・ストアドプログラ
ム制御方式を使用した大容量交換装置において
は、同時に実行される中断処理の数は相当なもの
である。
本発明の目的は、全ての「待期間」命令をある
種の順序づけられたリストに配列し、待期間が終
つた時中断された処理が再開できるように、デー
タ処理装置でこのリストを管理するようにしたも
のである。
本発明によれば、「待期間」命令を有する処理
を取り扱う形のリアルタイムデータ処理装置が提
供されてあり、前記命令の各々は複数個の所定の
期間の一つを指定しており、特定の同じ期間を有
する命令によつて中断されている全ての処理は、
中断された時刻順に互いにつながれ、チエーンの
中の第1の処理の待ち期間が完了するリアルタイ
ムの情報を保持しているタイミングチエーンヘツ
ダにつながれており、その全てのタイミングチエ
ーンヘツダはリストの中で連結され、データ処理
装置は待ち期間が完了した処理を確かめるために
所定のタイムインタバルが経過した時リストをサ
ーチする処理を有している。
また、本発明によれば、各々が複数個の所定の
期間を指定する「待ち期間」命令を有する複数個
の処理を取り扱う形のリアルタイム・デジタルデ
ータ処理装置を提供しており、前記データ処理装
置は処理に関する情報を蓄積するメモリと少くと
も1つのプロセツサユニツトを有しており、その
プロセツサは処理を実行するようになつている。
各処理は、その処理が中断された時のその処理の
ワーキングパラメータを保持するメモリの中に情
報セグメントを有しており、その情報セグメント
はその処理に対する待ち期間が完了すべき時間の
表示を有しており、情報セグメントリンク情報は
特定の同じ期間を有する命令によつて中断される
全ての処理の情報セグメントを処理が中断された
時刻順に配列される第1のリンクリストに形成
し、その第1のリンクリストは、メモリ内に蓄積
されたタイミングチエーンヘツダセグメントに連
結され、独占的に前記の特定の期間に割当てられ
ている。タイミングチエーンヘツダセグメント
は、第1のリンクリスト上の第1の情報セグメン
トに対する待ち期間が完了する時期を表示するウ
エイクアツプ値を蓄積している。各タイミングチ
エーンヘツダはタイミングチエーンヘツダセグメ
ントを第2のリストの中に形成するヘツダリンク
情報を有している。データ処理装置は待ち期間が
完了した処理を確かめるために、第2のリストを
サーチさせるタイミングチエーンサーチ処理を有
しており、また装置はタイムインタバルを監視
し、インタバルの終了時に、タイミングチエーン
サーチ処理を作動させるように条件づけられたイ
ンタバルタイミング装置を作動させる装置を有し
ている。
次に、本発明を添付図面に従つて説明する。
本発明の装置の詳細な説明を始める前に、本発
明のデータ処理装置に使用するのに適するセント
ラルプロセツサユニツトについて簡単に説明す
る。そのようなセントラルプロセツシングユニツ
トは、第1a図および第1b図に示されている。
第1a図と第1b図は並んでおかれ左側に第1a
図が置かれる。セントラルプロセシングユニツト
は、リード線SOHCS、SDH、SIHCSおよびSIH
を経由してメモリモジユールに接続されている。
リード線SDHおよびSIHはそれぞれメモリユニツ
トの出力および入力データパスであり、リード線
SOHCSおよびSIHCSはそれぞれメモリモジユー
ルに対する出力および入力制御信号ハイウエイで
ある。
セントラルプロセシングユニツトはユニツトの
ハイウエイをデータの通路にオン、オフするデー
タトランスフアゲートを制御するマイクロプログ
ラミング制御式μPROGである。そのプロセシン
グユニツトは演算ユニツトMILL、比較器
COMP、命令レジスタIR、演算レジスタOPRG、
メモリ通信レジスタSDIREGおよび三個のレジス
タスタツクを有している。ユニツトは英国特許明
細書第1329721号に詳細に解示されているいわゆ
る機能レジスタ構造で構成されている。スタツク
は、汎用レジスタACC STK(第2図に詳細を示
す)およびベーススタツクBASE STKとリミツ
ト・スタツクT/CLMT STKに分割される機能
レジスタを備えており、これらは第3図に詳細に
示されている。セントラルプロセツサは、
“System250―a fault―tolerant,modular
Processing system for control applications”
Pages26 to 34 of issue 27 of systeme
Technologyに説明されている形式のモジユラ処
理装置に使用するのに特に適している。そのよう
なシステムにおいて、機能構造は、全てのリソー
スのマスタリストがいわゆるシステム機能テーブ
ルに保持されているようになつており、各処理は
その処理がアクセスすることを許されているリソ
ースを表示するそのテーブルに対するポインタの
リストを備えている。その上、各処理は、いわゆ
るダンプスタツク(第4図に示す)を備えてお
り、そのダンプスタツクは共通のメモリの中に保
持されている。そしてその共通メモリはその処理
を実行するプロセツサユニツトの中の機能レジス
タスタツクの中のダンプスタツク機能レジスタ
DCRによつて指示される。ダンプスタツクDA
は、シーケンス制御レジスタSCRおよび全ての
ワーキング機能レジスタRSP WCR0ないしRSP
WCR7の値と共に変化の処理が発生した時(すな
わち、処理が中断した時)、汎用レジスタスタツ
クACC STKの内容を蓄積するために使用されて
いる。その上、各処理のダンプスタツクDAは
RIGHT LINK、LEFT LINKおよび
INCREMENT値を有してり、これらの値は本発
明の実施例を行うに必要な操作で後に使用され
る。
各処理は、いわゆる処理ベース(第5図)PB
を備えており、それは処理ダンプスタツク
WPDS,ジヨブ リンクブロツクWJLB,トラツ
プフラグWFL,スケジユーラワークスペースリ
ンクWLINKおよびポストと待ちフラツグのリス
トを保持するワークスペースに対するポインタを
含んだ主要ポインタのリストである。
システム250のマルチプロセツサシステムによ
つて実行される動作は、ランニングリスト上で作
動するスケジユーラ処理によつて編成されてい
る。このリストは第6図に示されており、それは
装置の中で各プロセツサユニツトに対する1つの
エントリを有する3つの情報ブロツクで構成され
ている。第6図は3つのプロセツサユニツトシス
テムに対するランニングリストの配列を示してお
り、そのリストは各プロセツサに対して、(i)プロ
セツサ上で実行する処理に対する処理ベースのポ
インタ、(ii)各実行処理に対するダンプスタツクの
ポインタ、および(iii)プロセツサユニツト上で前に
実行される処理に対するダンプスタツクのポイン
タを有している。
各プロセツサは自分自身の現在の時間ブロツク
を有しており、このブロツクは時間機能レジスタ
TCR(第3図)によつてアドレスされる。TCR
によつて指示されるブロツクは、WIT、
WITSUPおよびWETNIと名づけられる3つのワ
ードで構成されている。WITはインタバル・タ
イマであり、WETNIは次のタイマ中断が発生す
る推定時間であり、WITSUPは1つのプロセツ
サが他を中断する時のインタバルタイマ値を記録
するために使用する。
待ち期間に対する時間情報は、観念的な監視用
の「現在時間」に基づいている。実際に単一の値
はない。そのかわり、各プロセツサは自分用のバ
ージヨンを持つており、外部システムの制御装置
(図示なし)はプロセツサと同期が保たれてい
る。
現在時間の各バージヨンは次のように維持され
ている。WETNIと名付けられるワードは、次の
タイマーインタラプトが発生する維定リアルタイ
ム、すなわちWITがゼロになるリアルタイムを
保持するように使用されている。現在時間はCT
=WETNI―WITで与えられている。WITが新し
い内部のタイムアウトを起動するためにタイムイ
ンタバルの終りで更新される時には、WETNIは
同じ量だけ自然に変えられる。値WITがインタ
バルタイム処理によつて、そのインタバルタイム
処理が再び作動される前に経過する100μ秒の期
間の数を表示する値に設定される。各プロセツサ
は100μ秒のインタバルで割り込まれるようにな
つており、そのインタバルタイマワードWITは
1ずつ減らされ、ゼロコンデイシヨンを試験され
る。ゼロコンデイシヨンに遭遇すると、インタバ
ルタイムアウトは完了し、満期に対してインタバ
ルを待つている処理の中に再エントリがなされ
る。
本発明の実施例で使用されている実際のインタ
バルタイム処理は後に詳細に考えられるいわゆる
「アシヤレツト(Usherette)」処理である。
各CTは普通は増加値であるが、しかしこれに
対して2つの例外がある。すなわち、 (イ) 時間の値が1ワードの容量をオーバーフロー
しようとしている時、全ての時間の値は固定の
値(一般的には3分)で減らされる。
(ロ) CTは同期が行なわれる時には小さな訂正を
受けることがある。
WITSUPと名付けられるワードの使用は2倍
である。1つのプロセツサが他のプロセツサに割
り込むことを望む時には、そのプロセツサは他の
プロセツサのWITをゼロにセツトする(もしす
でにゼロまたは負でないならば)。時間をはから
れている元のインタバルは後で再び設定できるよ
うに、前の値はWITSUPである。またWITSUP
はブロツク上の動作の単一スレツデイングを達成
するために使用される。すなわち値の―1は、ブ
ロツクが「ロツク」されていることを示してい
る。
本発明によるシステムにおいては、処理はそれ
自身を指定するタイムインタバルに対して中断さ
れることができる。そのインタバルは1から固定
されている最大値までの整数値をとることがで
き、同時に中断される処理の数には制限がない。
機能を実行するために使用されるデータ構造
は、(i).同時に中断された処理の数はひじように
大きく、(ii).どの瞬間においても有効なタイムイ
ンタバルの数は比較的少いという応用に対して有
効であるように設計されている。実際の例におい
ては、30という数字が妥当な数といわれている
が、しかしながら異る時間で要求し、従つて異る
時間で「ウエイクアツプ」されることが必要であ
るひじように多くの処理に対しては一定のインタ
バルが有効であるようにアレンジされている。
同じタイムインタバルの終了を待つて中断され
ている全ての処理は要求した順番で互いに連結さ
れ、「タイミングチエーンヘツダ」につながれて
いる。チエーンは、第7図に示すような処理ダン
プスタツクの中のRIGHT LINK(RL)および
(LEFT LINK(LL)ポインタによつて達成され
ている。第7図が示すようにチエンは二重に循環
リンクされて形成されている。3つの処理を有す
る例においては、ダンプスタツク1,2,3を有
しそれぞれ15ミリ秒のインタバルに対し中断さ
れ、「要求」している。システムは、100μ秒の処
理スロツトを有するように配列されているので、
100μ秒の範囲に変換するために15と10が掛けら
れている。その結果の150は、タイミングチエン
ヘツダの中のインタバルINTロケーシヨンの中に
書き込まれている。第6図に示すチエン例につい
て考えると、チエンの中の最初の処理は時間1270
で起こされるようになつており、これはヘツダの
中のWAKE UPロケーシヨンの中に書き込まれ
ている。チエンの中の最初の処理のダンプスタツ
クは、インクリメント・ロケーシヨンINCの中に
書き込まれているゼロの値を有している。そのチ
エンの中の第2の処理は時間1270プラス20(すな
わち時間1290)で処理されるように要求している
が、処理3は、別のインクリメント10(すなわ
ち時間1300)の後に処理される。チエンの中の最
初の処理に対するインクリメント値INCは常にゼ
ロであり、ヘツダの中の値NEGSUMは、チエン
のインクリメントの負の合計であるサイン付の22
ビツトの数値として維持されている。NEGSUM
はインクリメントの合計を負にし、1を引くこと
によつて計算される。従つて例においては、
NEGSUMはインクリメント20と10から―31
になる。完全なチエンを横切ることなく新しい処
理に対するINC値を決めることができるので、処
理をチエンの最後に加える時に重要である。
第7図は、処理に対する処理ダンプスタツクが
特定の期間(すなわち15ミリ秒)中断されている
処理に対して連結されていることを示している。
電気通信の分野でみられるような、リアルタイム
処理を取り扱うマルチプロセツサシステムにおい
ては異るインタバルに対して中断される処理があ
る。そのような状態は、各々がタイミングチエン
ヘツダを有するいくつかのタイミングチエンを有
して処理されている。
ヘツダは、第7図に示すヘツダのダウンリンク
WDLINKを使用して第8図に示すように連結さ
れている。ヘツダチエインの先頭はタイミングチ
エンヘツダリストの先頭にポインタFIRST
HEADERを有するタイミングチエンマスタポイ
ンタブロツクである。タイミングチエンヘツダは
特定の順番で配列されていない。個々のタイミン
グチエンが空きになつた時(すなわちその上に、
もはや処理がない時)、そのヘツダは「空き」で
あるといわれ、もし要求されるならば、異るイン
タバルに対して再び使用することができる。タイ
ミングチエンマスタポインタブロツクのポインタ
FREEは、空きのヘツダにポインタを有するよう
に使用され、もし空きのヘツダがない場合には、
ポインタはNULLにセツトされる。
上記のタイミングチエン計画は管理上3つの主
要な動作を有している。
1 指定されたタイムインタバルが経過するま
で、またはある外部イベント(すなわちフラ
グ)が発生するまで、そのどちらか早い方によ
つて処理は実行を中断する(すなわち
WAITFORタイムインタバル命令を実行す
る)。従つてその処理は適当なタイミングチエ
ンにリンクされなければならない。
2 タイミングチエンの中の処理は、外部イベン
トの発生によつてそのチエンから取り除かれ
る。
3 タイミングチエンの中の処理は、そのタイム
インタバルが終了することによつてそのチエン
から取り除かれる。
第1の動作は、第9図にフローチヤートの形式
で示されており、「アシヤレツト」処理と呼ばれ
る特殊な処理が第3の動作を取り扱うタイミング
チエンヘツダをサーチしており、これは第10図
に示されている。第2の動作は第10図のステツ
プのあるものを使用して取り扱われている。
まず最初に、処理を中断する、換言すればタイ
ミングチエンに処理を置くのに必要な動作につき
考えてみる。
処理の中断 前述したように、第9図は、待ち期間マクロ命
令が遭遇した時実行される動作のフローチヤート
を示している。その命令に遭遇するプロセツサユ
ニツトは、機能レジスタの1つに、マスタポイン
タブロツク(第8図)用の記述子(すなわちアク
セス形のコードを有するベース値とリミツト値)
を設定する。それから、プロセツサユニツトは
PS1ステツプを実行し、それはレジスタSDIREG
の中に実際の必要なメモリアドレスを形成するた
めにMILLを使用し、ブロツクや第1a図および
第1b図にあるリード線SIH上に存在するメモリ
モジユールにアドレスして、マスタポインタブロ
ツクの中のFREEロケーシヨンをアドレスする。
アドレスされたロケーシヨンの内容はリード線
SDH上で、ACC STKの中の汎用レジスタの例え
ば1つの中に戻される。それからプロセツサは、
第9図のPS2ステツプを実行し、そこにおいて
は、そのレジスタの内容は、演算ユニツト条件信
号AVISを使用するMILLによつて試験される。
第9図および第10図の全ての処理の動作ステ
ツプは、普通のデータ処理動作を使用した第1a
図および第1b図の装置を使用して実行できるよ
うにすることは、当業者にとつて当然のことであ
るので、従つて残りの動作ステツプの詳細につい
ては、本明細書においては試みない。
PS3ステツプ このステツプにおいては、空きのタイミングヘ
ツダが、マスタポインタブロツクがFREEロケー
シヨンによつて識別されないために入れられるも
ので、このステツプにおいては、タイミングチエ
ンヘツダのリストは各ヘツダが空きであるかどう
かを調べるために、各ヘツドを試験する各タイミ
ングチエンヘツダのダウンリンクWDLINK(第
8図)を使用してスキヤンされる。ヘツダが見つ
けられると、マスタポインタブロツクの中のポイ
ンタFREEはそのヘツダを指示するように条件づ
けられている。そのような空きのヘツダが見つか
らない場合には、蓄積管理処理によつて管理され
ているプールから新しい蓄積ブロツクが得られ、
この新しいブロツクはタイミングチエンヘツダと
して初期化され、それはタイミングチエンヘツダ
リストの最後に加えられる。
PS4ステツプ このステツプは、値Xをプロセツサユニツトの
中の汎用レジスタに設定することを有している。
この値Xは待ちタイムインタバル()を現在の
システムの時間に加えることによつて計算され
る。またこの値Xは、WAKE UP値またはその
処理の増分値を条件づけるために後に使用され
る。
PS5ステツプ このステツプにおいては、タイミングチエンヘ
ツダリスト(第8図)は、必要な待ち期間()
に等しいインタバルタイム(INT第7図)を有す
るヘツダを探すために走査される。待ち期間を含
むタイミングチエンが存在する場合には、PS6ス
テツプyパスを完了し、タイミングチエンがすで
に存在しない場合には、nパスになる。
PS7ステツプ このステツプにおいては、プロセスダンプスタ
ツクに対するインクリメント(INC)は、PS4ス
テツプで形成された値XからWAKEUP―
NEGSUM―1から形成される値を引くことによ
つて形成される。また、このステツプは、新しい
処理に対して新しく形成されたインクリメントを
引くことによつて、選択されたタイミングチエン
ヘツダの中のNEGSUMを更新する。
PS8ステツプ PS7ステツプの完了時に、プロセスを選択され
たタイミングチエーンの中に挿入することが必要
であり、これは、ヘツダの中のLEFT LINK NL
LINKスロツトを読むことによつて、チエンの中
の最後の処理を識別して実行される。チエンが空
きの場合には、「最後の処理」はヘツダ自身であ
るということに注意されたい。リストの中の最後
の処理が識別されると、この最後の処理とヘツダ
間のリンクはこわされ、新しい処理をチエンの最
後の処理として取り入れることによつて再形成さ
れる。値Xはまた、アシヤレツト処理が時間Xで
または時間Xの前にウエイクアツプされることを
保障するためにこのステツプの中で使用される。
この動作の完了時に、中断処理は完了され、中断
処理を実行しているプロセツサユニツトは処理ス
ケジユーラに入る。
PS9ステツプ 新しく中断されたプロセスの待ち期間に等しい
インタバルを有するタイミングチエンがない場合
には、PS6ステツプはnパス上で終了する。
PS9,10,11ステツプはこの場合に実行され、マ
スタポインタブロツク(第8図)のFREEポイン
タからそのヘツダを取り除くと同様に、新しいタ
イミングチエンヘツダを使用し、WAKE UP,
INTおよびNEGSUMの(第9図)を設定する。
上述のことから、定められた期間処理を中断す
るには、その定められた期間に同じインタバルが
全てが待つている処理ダンプスタツクのチエンの
最後に処理ダンプスタツクが加えられることがわ
かる。そのタイミングチエンの管理は、タイミン
グチエンヘツダのWAKEUP,RIGHT LINK,
LEFT LINKおよびNEGSUMの値によつて達成
されている。
ある処理が待ち期間マクロによつて中断される
と、(イ)必要なインタバルが終了するまで、または
(ロ)ある外部イベントの発生によつて取り除かれる
まで、その処理はタイミングチエン上におかれ
る。これらの動作は、いわゆるアシヤレツト
(USHERETTE)処理である第10図のフロー
チヤートによつて達成され、それらは上に定めら
れた順に記述される。
アシヤレツト処理 この処理は、最も短いタイミングチエン・ウエ
イクアツプ値が完了する時または完了する前に、
終了するように条件づけられ、アシヤレツト処理
に入るプロセツサユニツトのインタバルタイマ装
置の制御のもとに行なわれる。最も短い値を識別
する方法は、次の処理の中に定められる。基本的
にはアシヤレツト処理は、待ち期間が終了した処
理を確かめるためにタイミングチエンサーチ処理
として使用される。
UP1ステツプ この処理においては、アシヤレツト処理を実行
するプロセツサの中の汎用レジスタが処理のため
の値TIMEを蓄積するために使用され、このレジ
スタは現在のシステムの時間にセツトされる。
UP2ステツプ プロセツサの中の第2の汎用レジスタが値
NEXT TIMEを蓄積するために使用され、この
ステツプのそのレジスタの内容は大きな値、すな
わち全て1にセツトされる。
UP3ステツプ プロセツサはチエンの中の最初のヘツダを点検
する。これはFIRST HEADERポインタ(第8
図)を使用して達成される。このステツプで実行
される動作は、プロセツサの汎用レジスタの1つ
であるタイミングチエンリストポインタ(TCL
POINTER)の中にFIRST HEADERの読み取り
を入れる。
UP4ステツプ このステツプにおいては、TCL POINTER
は、チエンの中の最初のタイミングチエインヘツ
ダのWAKE UP値(第7図参照)を読み取るよ
うに使用されている。
UP5ステツプ プロセツサユニツトはちようど読みこんだ
WAKE UP値を値TIMEと比較する。一般的に、
プロセツサの中の別のレジスタの中に保持されて
いる2つの値の1方はMILLによつて他方から引
かれその結果がモニタされる。もしWAKE UP
>TIMEの場合には、最初のヘツダに対する
WAKE UPタイムが現在のシステムの時間より
大きいのでUP6のステツプなどは、チエンの中の
次のヘツダにステツプするように実行される。そ
のステツプの比較の結果が、TIMEがWAKE UP
に等しい(またはより大きい)ことを示している
場合には、UP11ステツプなどは、最初のタイミ
ングチエン上に最初の処理を引き出し、それを
「レデイ・トウ・ラン・リスト」上に置くように
実行される。最初のヘツダのWAKE UPがTIME
よりも大きいということがこのステージにおいて
は仮定される。
UP6ステツプ このステツプにおいては、WAKE UPがNEXT
TIMEと比較され、もしWAKE UPがNEXT
TIMEよりも小さい場合には、UP7ステツプが実
行される。この状態においては、仮定された
NEXT TIMEはUP2ステツプにおいてひじよう
に大きな値にセツトされ、従つてUP7ステツプが
実行される。
UP7ステツプ このステツプにおいては、NEXT TIMEは、
UP4ステツプでアドレスされたヘツダから読み取
られるWAKE UP値によつて書き換えられる。
遭遇するNEXT TIMEがTIMEによつて与えられ
る現在のシステムの時間に等しくなるまで、この
動作はサーチ「ダウン」を制御し、タイミングチ
エンヘツダはNEXT TIMEを遭遇する最も低い
値にセツトする。
UP8ステツプ UP4ステツプの中でアドレスされたダウンリン
クWDLINK(第7図および第8図)はこのステ
ツプにおいて、プロセツサの汎用レジスタの1つ
の中へ読み込まれる。
UP9ステツプ このステツプにおいては、ダウリンクがチエン
の終りを示すNULLであるかどうかを調べるため
にそのダウンリンクをテストする。ダウンリンク
はNULLでないと仮定されている。しかしなが
ら、タイムアウトまたは外部イベントを待つてい
るタイミングチエン上に処理を置くためにそのよ
うな状態が発生するということも指摘しなければ
ならないし、また外部イベントがタイムアウトの
前に発生する場合にはその処理はチエンから取り
除かれ、従つてアシヤレツト処理はそのタイムア
ウトに応答するためにWAKE UPされる。タイ
ミングチエンから処理を取り除くに必要な動作
は、UP11からUP18までのステツプに関係してお
り、後に説明される。
UP10ステツプ このステツプにおいてはUP8ステツプで読まれ
たダウンリンクWDLINKはタイミングチエンリ
ストポインタTCL POINTERとして使用される
汎用レジスタに書き込まれ、チエンの中の次のヘ
ツダからWAKE UP値を使用して再びUP4および
UP5ステツプを実行する。UP6ないしUP10ステ
ツプはTIMEに等しいWAKE UP値を有するヘツ
ダが見つかるか、または完全なヘツダチエンが横
切るまでくり返して実行される。WAKE UPが
UP5のステツプのTIMEに等しい条件が見つけら
れると、UP11ステツプが実行され、WAKE UP
期間が終了する時タイミングチエンから中断した
処理を取り除くステツプのチエンを起動する。
UP11ステツプ このステツプにおいては、現在のシステム時間
に等しいWAKE UP値を有するTIMING LISTの
タイミングチエンヘツダのライトリンクR
LINK(第7図)はプロセツサの汎用レジスタの
1つの中に読み込まれる。この動作はヘツダによ
つて供給されるタイミングチエン上の最初の処理
ダンプスタツクを識別する。
UP12ステツプ このステツプにおいては、UP11ステツプで読
まれたライトリンクが、チエンが空きであるかど
うかを知らべるために試験される。タイミングチ
エンがタイムアウトまたは外部イベントの発生を
待つているダンプスタツクを有している場合には
再びそのような状態が発生し、後者が発生する
と、特定のタイミングチエンに対するWAKE
UPが終了する前に、タイミングチエンからその
処理を取り除く。UP5およびUP11ステツプに
「入つた」タイミングチエンはこの点においてや
がて処理されることを待つている処理ダンプスタ
ツクを持つていると仮定する。
UP13ステツプ このステツプにおいては、第10図のフローチ
ヤートにXとして定められている汎用レジスタが
タイミングチエンの隣側の増分値を読むために使
用される。
UP14ステツプ このステツプにおいては、現在の最初の処理
は、リストを実行する準備状態に置かれるので、
この処理がチエンの中の最初の処理になるよう
に、タイミングチエンの右隣側の増分値(INC)
はゼロにセツトされる。
UP15ステツプ このステツプにおいては、X値は、再活動され
る処理の除去を調整するように、タイミングチエ
ンヘツダの中のWAKE UP値およびNEGSUM値
を調整するために使用される。
UP16ステツプ このステツプにおいては、タイミングチエンヘ
ツダの中のライトリンク(IR LINK)およびレ
フトリンク(NL LINK)は前に構成したよう
に、チエン内の処理2が何であるかを指摘するよ
うに再形成される。
UP17ステツプ プロセツサユニツトはウエイクアツプされるよ
うに準備されているUP5ないしUP12ステツプで
識別される処理をスケジユーラの「レデイ・ツ
ウ・ラン」リストに置くようにする。
アシヤレツト処理は、TIMEによつて与えられ
る現在のシステムの時間でウエイクアツプされる
他の処理をサーチするUP8、UP9、UP10、UP4
およびUP5ステツプを実行する。最終的には、
UP9ステツプは、ヘツダチエンの最後に遭遇し、
UP19ステツプが実行される。
UP19ステツプ このステツプにおいては、現在のシステム時間
に等しくないヘツダを問い合わせている間に遭遇
する最も低いWAKE UP値であるNEXT TIME
の最終値がHARDWARE TIMERシステムに書
き込まれ、その時点でアシヤレツト処理が再び作
動される。アシヤレツト処理は、現在のシステム
時間を待つて中断され、プロセツサの1つのイン
タバルタイマ装置を使用して、HARDWARE
TIAER値に到る。
タイミングチエンから処理を取り除くために
は、UP11,UP12,UP13,UP14,UP15,UP16
およびUP17ステツプを実行することが必要であ
るにすぎない。第10図の点αは、特定の外部イ
ベントの発生によつて「強制」されるアシヤレツ
ト処理に入る点を示している。
上記のタイミングチエン機構は、従来の他の機
構に比べていくつかの利点を有している。これら
の利点の代表的なものは次の通りである。
1 チエンへの新しい処理の追加が常に最後の所
に行なわれ、チエンおよびNEGSUM値により
容易な動作となつている。完全なチエンの横断
は必要でなく、たとえチエンがいかに長くとも
動作は効率的である。
2 チエンのどんな部分からでも処理を取り除く
ことは、そのチエンを横切る必要もなく、容易
で効率的な動作である。
3 リアルタイムシステムであるので、オーバー
フローが発生しないように時折り絶対時間値を
調整しなければならない場合でも、各ヘツダの
所で1つの値(WAKE UP)を調整すること
が必要なだけである。個々の処理ダンプスタツ
クの中の時間値は、相対的であり、調整される
必要はない。
4 個々のチエンが空きになつた時(すなわちチ
エン上に他の処理がない時)、ヘツダは「空
き」であるといわれ、別のINTERVALに対し
て再び使用されることができるので、
INTERVAL値のセツトは、その瞬間の必要に
適するよう容易に行うことができる。
【図面の簡単な説明】
第1a図および第1b図は、第1a図が左側に
置かれるように並んで置かれるものであり、本発
明の一実施例に使用するのに適したセントラルプ
ロセシングユニツトのブロツク図、第2図は、第
1a図および第1b図のCPUの中のレジスタを
示す図、第3図は、第1a図および第1b図の
CPUの中のメモリ保護(機能)レジスタを示す
図、第4図は、処理ダンプスタツクを示す図、第
5図は、処理ベースを示す図、第6図は、スケジ
ユーラのランニングリストを示す図、第7図は、
本発明によるタイミングチエンを示す図、第8図
は、タイミングチエンヘツダがリンクされている
方法を示している図、第9図は、処理中断アルゴ
リズムのフローチヤート図、および第10図は、
いわゆる「アシヤレツト」処理のフローチヤート
図である。 ACC STK……汎用スタツク、BASE STK…
…ベーススタツク、RES REG……RESレジスタ
ー、MILL……演算ユニツト、COMP……比較
器、IR……命令レジスター、OP REG……演算
レジスター、SDIREG……メモリ通信レジスタ
ー、μPROG……マイクロプログラミング制御式
セントラルプロセシングユニツト、TC/LMT
STK……TC/LMTスタツク。

Claims (1)

  1. 【特許請求の範囲】 1 各々が複数個の所定の期間の一つを指定する
    「待期間」命令を有する複数個の処理を取り扱う
    形のリアルタイム・デジタルデータ処理装置であ
    つて、前記装置は、前記処理に関する情報を蓄積
    するメモリと、前記処理を実行するようにされた
    少くとも一つのプロセツサユニツトとを有し、各
    処理は、その処理が中断された時の処理に対する
    ワーキング・パラメータを保持するために、メモ
    リの中に情報セグメントを設けてあり、その情報
    セグメント(DA)は、その処理に対する待期間
    が完了するべき時刻の表示(INC)を有してお
    り、情報セグメント・リンク情報(RIGHT
    LINK;LEFT LINK)は、特定の同じ期間を有
    する命令によつて中断される全ての処理の情報セ
    グメントを情報が中断される時刻順に配列されて
    いる第1のリンク・リストに形成し、又前記第1
    のリンク・リストはメモリの中に蓄積されている
    タイミング・チエーン・ヘツダー・セグメント
    (TIMING CHAIN HEADER X)にもリンクさ
    れており、前記特定の期間に独占的に割当てられ
    ており、前記タイミング・チエーン・ヘツダー・
    セグメント(TIMING CHAIN HEADER X)
    は、前記第1のリンク・リスト上の第1の情報セ
    グメント(PROCESS DUMP STACK 1)に対
    する待期間が完了する時期を表示するウエイク・
    アツプ値(WAKE UP)を蓄積し、各タイミン
    グ・チエーン・ヘツダー・セグメント(TIMING
    CHAIN HEADER X)は、前記タイミング・チ
    エーン・ヘツダー・セグメントを第2のリストに
    形成するヘツダー・リンク情報(WDLINK)を
    有し、前記データ処理装置は、待期間が完了した
    処理を確認するために前記第2のリストをサーチ
    するタイミング・チエーン・サーチ処理を有し、
    又前記データ処理装置はタイムインタバルを監視
    し、そのインタバルの完了時に前記タイミング・
    チエーン・サーチ処理を作動させるように条件づ
    けられたインタバルタイミング装置(ITR)を作
    動させる手段を有していることを特徴とする前記
    データ処理装置。 2 特許請求の範囲第1項記載のデータ処理装置
    において、各情報セグメント(DA)は、第1の
    リンクポインタ(LEFT LINK)と第2のリンク
    ポインタ(RIGHT LINK)とを有しており、前
    記第1のリンクポインタ(LEFT LINK)は、前
    記情報セグメントを前記第1リストのすぐ前の情
    報セグメントに接続し、一方前記第2のリンクポ
    インタ(RIGHT LINK)は、前記情報セグメン
    トを前記第1リストのすぐ後に続く情報セグメン
    トに接続している前記データ処理装置。 3 特許請求の範囲第1項又は第2項記載のデー
    タ処理装置において、各情報セグメント(DA)
    は、(i)情報セグメントのすぐ前にある前記情報セ
    グメントを備えている処理に対する待期間が完了
    する時期と、(ii)前記情報処理を備えている処理に
    対する待期間が完了する時期との差の形で期間を
    定めている増分値(INC)を有している前記デー
    タ処理装置。 4 特許請求の範囲第1項から第3項までのいず
    れかに記載のデータ処理装置において、各タイミ
    ング・チエーン・ヘツダ・セグメント(TIMING
    CHAIN HEADER X)は第1のチエーン・リン
    ク・ポインタ(IRLINK)と第2のチエーン・リ
    ンク・ポインタ(NLLINK)とを有しており、前
    記第1のチエーン・リンク・ポインタは、前記第
    1のリンク・リストの先頭にある情報セグメント
    (PROCESS DUMP STACK 1)を指示し、一
    方前記第2のチエーン・リンク・ポインタは、前
    記第1のリンク・リストの終りにある前記情報セ
    グメント(PROCESS DUMP STACK 3)を指
    示している前記データ処理装置。 5 特許請求の範囲第4項記載のデータ処理装置
    において、各タイミング・チエーン・ヘツダ・セ
    グメント(TIMING CHAIN HEADER X)
    は、前記チエーン・ヘツダ・セグメント
    (TIMING CHAIN HEADER X)にリンクする
    第1リストの中の全ての情報セグメントの増分値
    の合計に関する加算値(NEGSUM)を有してい
    る前記データ処理装置。 6 特許請求の範囲第1項から第5項までのいず
    れかに記載のデータ処理装置において、前記デー
    タ処理装置は、前記タイミング・チエーン・サー
    チ処理に関連するタイミング・チエーン・ポイン
    タ・ブロツク(MASTER POINTER BLOCK)
    を有しており、前記ポインタ・ブロツクは前記第
    2リストの中の第1のタイミング・チエーン・ヘ
    ツダ・セグメント(XTVHEAD)を指摘する第
    1のヘツダポインタ(ERWC/RWD)を有して
    いる前記データ処理装置。 7 特許請求の範囲第1項から第6項までのいず
    れかに記載のデータ処理装置において、前記処理
    装置は、 イ 各タイミング・チエーン・ヘツダー・セグメ
    ントの中のウエイク・アツプ値を読み取り、 ロ 前記ウエイク・アツプ値の読み取り値を前記
    タイミングチエーン・サーチ処理が実行してい
    る時間と比較し、 ハ 待期間が完了した処理と同じものを装置処理
    スケジユーラのランニングリストに転送し、 ニ 前記処理に割当てられているそれぞれの第1
    のリンクリストから前記情報セグメントを移動
    したり、前記それぞれの第1のリンクリストを
    再形成したりすることによつて前記第1のリン
    クリストを調整し、 ホ 前記タイミング・チエーン・サーチ処理が実
    行している時間を計算する 段階を有している前記タイミング・チエーン・サ
    ーチ処理を行なう前記データ処理装置。 8 特許請求の範囲第7項記載のデータ処理装置
    において、前記処理装置は、段階ニ)において、
    前記情報セグメントの第1および第2リンクポイ
    ンタを取り消し、前記タイミング・チエーン・ヘ
    ツダ・セグメントを指示する各調整された第1の
    リンクリストの次に続く情報セグメントの第2の
    リンクポインタを調整し、前記次に続く情報セグ
    メントを指示する各調整された第1のリンクリス
    トのタイミング・チエーンヘツダ・セグメントを
    調整する操作を有している前記データ処理装置。 9 特許請求の範囲第7項又は第8項のいずれか
    に記載のデータ処理装置において、前記処理装置
    は、段階ニ)において、前記の次に続く情報セグ
    メントの増分値に従つて前記それぞれの第1リン
    ク・リストの各タイミング・チエーン・ヘツダ・
    セグメントのウエイク・アツプ値を調整する操作
    を有している前記データ処理装置。 10 特許請求の範囲第1項から第9項までのい
    ずれかに記載のデータ処理装置において、前記情
    報セグメントは前記特定の処理に対するダンプス
    タツクである前記データ処理装置。 11 特許請求の範囲第7項から第10項までの
    いずれかに記載のデータ処理装置において、各プ
    ロセツサユニツトは所定のリアルタイム値にセツ
    トされるようにされ、前記所定のリアルタイム値
    が発生した時、前記タイミング・チエーン・サー
    チ処理が前記プロセツサユニツト上で実行される
    ようにされたインタバル・タイミング装置を有し
    ている前記データ処理装置。 12 特許請求の範囲第7項記載のデータ処理装
    置において、前記処理装置は、段階ホ)におい
    て、前記プロセツサユニツトの前記インタバルタ
    イミング装置を前記タイミング・チエーン・サー
    チ処理が実行する前記時間に従う時間値で前記タ
    イミング・チエーン・サーチ処理を実行するよう
    に条件づける操作を有している前記データ処理装
    置。
JP698179A 1978-01-24 1979-01-24 Real time data processor for processing period instruction Granted JPS54121040A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB286678 1978-01-24

Publications (2)

Publication Number Publication Date
JPS54121040A JPS54121040A (en) 1979-09-19
JPS6236263B2 true JPS6236263B2 (ja) 1987-08-06

Family

ID=9747461

Family Applications (1)

Application Number Title Priority Date Filing Date
JP698179A Granted JPS54121040A (en) 1978-01-24 1979-01-24 Real time data processor for processing period instruction

Country Status (10)

Country Link
JP (1) JPS54121040A (ja)
AU (1) AU533875B2 (ja)
CA (1) CA1217566A (ja)
DE (1) DE2902633A1 (ja)
HK (1) HK32183A (ja)
KE (1) KE3271A (ja)
MY (1) MY8400349A (ja)
NL (1) NL7900563A (ja)
SG (1) SG49083G (ja)
ZA (1) ZA79113B (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB133270A (ja) * 1900-01-01
GB1329721A (en) * 1970-05-26 1973-09-12 Plessey Co Ltd Data processing devices
FR2261565B1 (ja) * 1974-02-20 1977-09-16 Honeywell Bull Soc Ind
JPS5164846A (ja) * 1974-12-03 1976-06-04 Fujitsu Ltd

Also Published As

Publication number Publication date
MY8400349A (en) 1984-12-31
NL7900563A (nl) 1979-07-26
ZA79113B (en) 1980-03-26
SG49083G (en) 1985-03-08
JPS54121040A (en) 1979-09-19
HK32183A (en) 1983-09-02
KE3271A (en) 1983-04-22
CA1217566A (en) 1987-02-03
DE2902633A1 (de) 1979-07-26
AU4348879A (en) 1979-08-02
AU533875B2 (en) 1983-12-15

Similar Documents

Publication Publication Date Title
JPS5841538B2 (ja) マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
EP0290942B1 (en) Guest machine execution control system for virtual machine system
Ackerman et al. An implementation of a multiprocessing computer system
JPS6236263B2 (ja)
GB2030331A (en) Real-time Data Processing System for Processing Time Period Commands
CN110083473A (zh) 基于risc-v架构总线访问错误的改进系统及方法
US7818549B2 (en) Event driven digital signal processor with time constraints
JPH07114517A (ja) マルチプロセッサシステムのプログラム実行制御方式
JPS6336023B2 (ja)
JPS6152761A (ja) 演算装置
JPS59144955A (ja) 情報処理装置
JPS6049464A (ja) マルチプロセッサ計算機におけるプロセッサ間通信方式
JP2876629B2 (ja) データ処理装置
JPS595370A (ja) 処理時間管理方式
Gracon et al. A high performance computing system for time critical applications
JPH03182945A (ja) 主記憶内データ転送方式
JPS58142451A (ja) 割込制御方式
JPH0462093B2 (ja)
JPH0424828A (ja) マルチタスク管理方式
JPS62217326A (ja) 複数os格納切替可能コンピユ−タ
JPH0417530B2 (ja)
JPS63155330A (ja) マイクロプログラム制御装置
JPS638841A (ja) 割込み受取り装置
JPH02193228A (ja) 情報処理装置
JPH03273342A (ja) タスク・スケジューリング方式