JPH0242537A - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH0242537A
JPH0242537A JP63194960A JP19496088A JPH0242537A JP H0242537 A JPH0242537 A JP H0242537A JP 63194960 A JP63194960 A JP 63194960A JP 19496088 A JP19496088 A JP 19496088A JP H0242537 A JPH0242537 A JP H0242537A
Authority
JP
Japan
Prior art keywords
address
polling
instruction
data
buffer
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.)
Granted
Application number
JP63194960A
Other languages
English (en)
Other versions
JPH0812609B2 (ja
Inventor
Shoko Tsuji
辻 勝公
Mitsuru Yamauchi
山内 満
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP63194960A priority Critical patent/JPH0812609B2/ja
Publication of JPH0242537A publication Critical patent/JPH0242537A/ja
Publication of JPH0812609B2 publication Critical patent/JPH0812609B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔目次〕 概要 産業上の利用分野 従来の技術        (第3図)発明が解決しよ
うとする課題 課題を解決するための手段 作用 実施例 本発明の一実施例    (第1.2図)発明の効果 〔概要〕 マイクロプロセッサに関し、 ポーリングする間隔を短くしてポーリング命令の実行ス
ピードを速くすることができ、ワンチップ・マイクロコ
ントローラの高速化を図ることのできるマイクロプロセ
ッサを提供することを目的とし、 演算手段により該周辺機器の状態を調べるポーリング命
令を実行するためのアドレスを演算し、演算されたアド
レスをバスを介して該周辺機器に出力し、該アドレスに
より該周辺機器から返送されたデータに基づいて該演算
手段により分岐するか否かを判別し、分岐条件が成立し
ていれば次の処理に進み、分岐条件が不成立のときは該
演算手段により分岐先のアドレスを演算し、該ポーリン
グ命令を実行するためのアドレスを再び演算するマイク
ロプロセッサにおいて、前記演算手段により演算された
アドレスを一時的に保存するバッファを設け、該バッフ
1は該アドレスを前記バスに出力する際、出力と同時に
一時的に保存し、前記分岐条件が不成立のとき該バッフ
ァにより保存しておいたアドレスを該バスに出力するよ
うに構成する。
〔産業上の利用分野〕 本発明は、マイクロプロセッサに係り、詳しくはポーリ
ング命令の実行スピードの高速化を図るようにしたマイ
クロプロセッサに関する。
一般に、プロセッサには複数個の周辺機器が接続され、
それぞれが割り込み信号を発信する状況が発生する。ま
た、1台の周辺機器が複数個の割り込み信号を発信する
場合もある。このような割り込み信号はそれぞれが異な
った割り込み処理ルーチンの実行を要求しているため、
プロセッサとしては割り込み信号を受は付けたとき、ど
の割り込み要因が発信したものであるかを何らかの手段
で知る必要がある。
プロセッサ内に特別な回路を用意しない場合には、プロ
セッサがプログラムによってどの割り込み要因が割り込
み信号を発信したかを順番に検査するポーリング(po
lling)方式が採用されることがある。この方法に
はフラグやポートの状態を調べるポーリング命令があり
、このポーリング命令を使用してフラグやポートの状態
を定期的に調べた結果により分岐をするようにしている
。例えば、入出力機器はポートに要求信号を出しておく
と、プロセッサの方でポートを調べたときに要求信号の
存在を知り、処理プログラムへ分岐して処理を行う。こ
のポーリング命令は、制御側が外部に対しである条件が
成立するまで次のような処理を実行しない命令であり、
例えば制御側の対象がタイマーなどの時計の機能を有す
る場合、タイマー内部に、ある一定の時間がたつとセッ
トされるビットを有するレジスタを内蔵しているとして
、制御側にある動作をした後、ある一定の時間次の処理
を開始しないようにしたい場合に、この命令を使用して
タイマー内のレジスタをポーリングする。
そして、そのビットがセットされるまで、この命令以降
に処理は移行せず、一定の時間が経ちビットがセットさ
れると条件が成立して次の処理へ移る。つまり、制御側
はある一定の時間、処理が次へ進まないようになる。
近年のワンチップ・マイクロコン1ヘローラには高速化
が要求されているため、個々の命令実行スピードを高速
化する必要がある。
〔従来の技術〕
従来この種のポーリング方法としては、例えば第3図に
示すものがある。第3図はポーリング命令を実行するプ
ログラムを示すフローチャートであり、図中P、〜P7
はフローの各ステップを示している。同図において、ま
ず、ポーリング命令が開始されると、Plでポーリング
するビットのアドレスが演算され、P2で演算されたア
ドレスをアドレスバスを介して制御対象である所定の周
辺機器(例えば、タイマ)に出力する。該周辺機器はア
ドレスを内部のレジスタに取り込むとともに、アドレス
をデコードして自身が選択されたことを知ると、状態情
報としてのデータをデータバスを介して制御側に返送す
る。P3では制御対象である周辺機器から返送されたデ
ータを取り込んで演算部で出力されたアドレスに存在す
るデータをアクセス(ビットのポーリング)し、P4で
アクセスしたビットにより所定の条件が成立したか否か
を判別する。条件が成立していればP5で次の処理に移
り、条件が成立していないときはP。
で分岐先のアドレスを演算し、P7で所定のメモリから
次の命令を読み出す(命令OP(オペ)コードのフェッ
チ)。このとき、P6で演算したアドレスは、同じ命令
(すなわち、本ルーチンであるポーリング命令)を指定
し、同じ命令を何回も繰り返す。このように、従来のポ
ーリング方法においては、ポーリングする命令を、条件
が成立するまで゛繰り返し実行するようにポーリングア
ドレスの計算、条件不成立の場合は分岐先アドレスの計
算・命令OPコードのフェッチを毎回処理してビットの
値をポーリングしている。
〔発明が解決しようとする課題〕
しかしながら、このような従来のマイクロプロセッサに
あっては、前記条件が不成立の場合、分岐先アドレスの
計算・命令OPコードのフェッチを毎回行ってポーリン
グ命令を条件が成立するまで最初から何度も繰り返し実
行する構成となっていたため、ビットのポーリングとし
て本当に必要な動作以外に、ポーリング命令を繰り返す
ための分岐先アドレス計算や命令OPコードのフェッチ
、ポーリングアドレスの計算処理が存在することになり
、処理間隔が長くなってビットが変化しても直ぐにアク
セスできず、命令の実行スピードが遅くなるという問題
点があった。
すなわち、どのボートをポーリングするかは実際にはア
ドレスによってデータを読むことによって行われるが、
アドレスを求めるためには逐一計算が必要であり、また
、アドレスのデータを読むためにはリードサイクルとか
があるため必然的に時間がかかり、処理間隔が長いもの
となる。例えば、制御対象側で1″がセット(条件成立
)されたとしてもそれを読む間隔(サンプリングするタ
イミング)が長くなるため、ポーリング命令の高速化を
図ることができない。 そこで本発明は、ポーリングす
る間隔を短くしてポーリング命令の実行スピードを速く
することができ、ワンチップ・マイクロコントローラの
高速化を図ることのできるマイクロプロセッサを提供す
ることを目的としている。
演算されたアドレスを一時的に保存するバッファを設け
、該バッファは該アドレスを前記バスに出力する際、出
力と同時に一時的に保存し、前記分岐条件が不成立のと
き該バッファにより保存しておいたアドレスを該ハスに
出力するように構成する。
(課題を解決するための手段〕 本発明によるマイクロプロセッサは上記目的達成のため
、複数の周辺機器が接続されるとともに、演算手段によ
り該周辺機器の状態を調べるポーリング命令を実行する
ためのアドレスを演算し、演算されたアドレスをバスを
介して該周辺機器に出力し、該アドレスにより該周辺機
器から返送されたデータに基づいて該演算手段により分
岐するか否かを判別し、分岐条件が成立していれば次の
処理に進み、分岐条件が不成立のときは該演算手段によ
り分岐先のアドレスを演算し、該ポーリング命令を実行
するためのアドレスを再び演算するマイクロプロセッサ
において、前記演算手段により〔作用〕 本発明では、演算したポーリングアドレスを一時的に保
存するバッファを設け、ポーリングしたビットが条件不
成立で再びポーリングを行う必要があると、該バッファ
から一時的に保存したアドレスを出力する処理へ移るよ
うにしている。
したがって、ポーリングを何回も行う場合には、分岐先
アドレスの計算・命令OPコードのフェッチ・ポーリン
グアドレスの計算を行う処理を実行する必要がなくなり
、ポーリングする間隔が短くなって命令の実行スピード
が短くなる。
〔実施例〕
以下、本発明を図面に基づいて説明する。
第1.2図は本発明に係るマイクロプロセッサの一実施
例を示す図であり、制御対象としてタイマを制御する例
である。
まず、構成を説明する。第1図において、1は制御側の
CPU部(マイクロプロセッサ)、2は制御対象として
のタイマ(周辺機器)、3は外部バスに接続されたメモ
リである。020部1は一般のCPU動作をするもので
あって、演算処理部(演算手段)4、アキュムレータ等
内部レジスタ5、データバッファ6、アドレスバッファ
7およびテンポラリ (バッファ)8により構成され、
これらは内部バスにより接続される。演算処理部4は内
部レジスタ5によりポーリングアドレスの演算を行うと
ともに、その演算結果をアドレスバッファ7にスタック
してアドレスバッファ7よりアドレスとして外部のバス
に出力すると同時に、テンポラリ8にも保存しておく。
テンポラリ8は計算したポーリングアドレスを一時的に
保存するものであり、ポーリングしたビットが条件不成
立で再びポーリングを行う必要があると、このバッファ
 (テンポラリ8)からも外部バスに出力することがで
きる。ここで、上記演算処理部4にて生成するアドレス
は命令を指すアドレスまたはデータを指すアドレスであ
り、内部または外部からのROM(本実施例では、メモ
リ3)によりハスを介して演算処理部4に入力される。
一方、外部からのデータ(ポーリングデータ等)はデー
タバッファ6を介して演算処理部4に入力され、演算処
理部4でデータの比較等のデータ処理を行う。なお、本
実施例ではアドレスの計算、データの処理を一つの演算
処理部4で行っているが、アドレス生成用の演算器とデ
ータ処理用の演算器との二つに分けて処理するようにし
てもよく、また、アドレスバッファ7とテンポラリ8を
分けないでアドレスバッファ7で共用してもよく、外部
ハスも一本ではなく、二本(アドレスバスおよびデータ
バス)の場合もある。
一方、タイマ2は制御側の対象となるものであって、発
振器9、クロック10、カウンタ11およびレジスタ1
2により構成される。タイマ2は発振器9により発振さ
せてクロック10によりクロックを生成し、カウンタ1
1でこのクロックをカウントしであるカウンタに達した
らレジスタ12でレジスタをセットする。すなわち、タ
イマ2はリソースなどの専用の機能動作を行うものであ
り、内部に020部1がアクセスできるレジスタ12等
の内蔵し、この中にポーリングするビットを有している
。したがって、制御側が対象となる外部のものが(本実
施例ではタイマ2のレジスタが)ある状態になるまでま
たはある条件が成立するまで表面的に動作を停止するも
のであり(実際はレジスタのアクセス、ビットの判断等
内部では動作している)、ある特定の動作をするもので
あれば何でも使用できる。例えば、上記のようなタイマ
をはじめ、A/Dコンバータ、D/Aコンバータ、シリ
アル通信、カウンタなどの特定の動作のみをするもの、
あるいは、ある程度の機能を有するDMAC、マルチ・
プロトコル・コントローラ等の周辺チップも対象とする
ことができる。
次に、作用を説明する。
第2図はポーリング命令を実行するプログラムを示すフ
ローチャートであり、従来例として示した第3図のもの
と同一処理を示すステップは同一番号を付して再度の説
明を省略する。まず、命令の開始により演算処理部4で
ポーリングするビットのアドレスを演算すると(ステッ
プP、)、P目でその結果をアドレスとして外部ハスに
出力すると同時にテンポラリ8にも保存しておく。次い
で、P、で出力されたアドレスによりタイマ2内部のポ
ーリングするデータが出力され、それを7演算処理部4
で判断してP4で分岐条件が成立した場合には次の処理
(ステップPi)へ実行を移す。
一方、分岐条件が成立しない場合はpHに戻り、テンポ
ラリ8により保存しておいたアドレスを外部バスに出力
し、それによりポーリングするデータを取り出しこのデ
ータを判断して分岐する。以後、条件が成立しないでポ
ーリングを続ける場合は、テンポラリ8よりアドレスを
出力してボーリソゲするデータを読み出す。したがって
、pHでは、最初だけ・は外部バスにアドレスを出力す
るとともにそのアドレスを一時的に保存しておき、以降
はその保存しておいたアドレスをアドレスバスに出力さ
れることになる。
以上説明したように、本実施例では1つの命令の中でポ
ーリングが行われ、1つの命令の中で分岐することにな
り、ポーリングアドレスの一時的な保存、及び以降はそ
のアドレスを出力する処理により行われる。したがって
、分岐先アドレスの計算・命令OPコードのフェッチ・
ポーリングアドレスの計算の処理を毎回実行しなくとも
、ポーリングすることができ、ポーリング間隔を短(し
てポーリング命令の高速化が可能になる。その結果、チ
ップ・マイクロコントローラの高速化に寄与するところ
が大きい。
なお、本実施例では、ポーリングされるデータはビット
単位を条件として分岐しているが、データ長により予め
設定されていた値と比較して分岐してもよく、あるいは
ポーリングされるものを複数指定して、そのすべてのデ
ータを条件として分岐してもよい。
〔効果〕
本発明によれば、ポーリングする間隔を短くしてポーリ
ング命令の実行スピードを速くすることができ、ワンチ
ップ・マイクロコントローラの高速化を図ることができ
る。
【図面の簡単な説明】
第1.2図は本発明に係るマイクロプロセッサの一実施
例を示す図であり、 第1図はその全体構成図、 第2図はそのポーリング命令を実行するプログラムを示
すフローチャート、 第3図は従来のポーリング命令を実行するプログラムを
示すフローチャートである。 1・・・・・・CPU部(マイクロプロセッサ)、2・
・・・・・タイマ(周辺機器)、 3・・・・・・メモリ、 4・・・・・・演算処理部(演算手段)、5・・・・・
・内部レジスタ、 6・・・・・・データバッファ、 7・・・・・・アドレスハソファ、 8・・・・・・テンポラリ (バッファ)、9・・・・
・・レジスタ。 \゛−・−ヱ。 ヌくニジ 第2図

Claims (1)

  1. 【特許請求の範囲】  所定の割り込み処理ルーチンの実行を要求する複数の
    周辺機器が接続されるとともに、 演算手段により該周辺機器の状態を調べるポーリング命
    令を実行するためのアドレスを演算し、演算されたアド
    レスをバスを介して該周辺機器に出力し、該アドレスに
    より該周辺機器から返送されたデータに基づいて該演算
    手段により分岐するか否かを判別し、 分岐条件が成立していれば次の処理に進み、分岐条件が
    不成立のときは該演算手段により分岐先のアドレスを演
    算し、該ポーリング命令を実行するためのアドレスを再
    び演算するマイクロプロセッサにおいて、 前記演算手段により演算されたアドレスを一時的に保存
    するバッファを設け、 該バッファは該アドレスを前記バスに出力する際、出力
    と同時に一時的に保存し、前記分岐条件が不成立のとき
    該バッファにより保存しておいたアドレスを該バスに出
    力するようにしたことを特徴とするマイクロプロセッサ
JP63194960A 1988-08-03 1988-08-03 マイクロプロセッサ Expired - Fee Related JPH0812609B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63194960A JPH0812609B2 (ja) 1988-08-03 1988-08-03 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63194960A JPH0812609B2 (ja) 1988-08-03 1988-08-03 マイクロプロセッサ

Publications (2)

Publication Number Publication Date
JPH0242537A true JPH0242537A (ja) 1990-02-13
JPH0812609B2 JPH0812609B2 (ja) 1996-02-07

Family

ID=16333194

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63194960A Expired - Fee Related JPH0812609B2 (ja) 1988-08-03 1988-08-03 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH0812609B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021086506A (ja) * 2019-11-29 2021-06-03 株式会社リコー システム、及びプログラマブルシーケンサ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021086506A (ja) * 2019-11-29 2021-06-03 株式会社リコー システム、及びプログラマブルシーケンサ

Also Published As

Publication number Publication date
JPH0812609B2 (ja) 1996-02-07

Similar Documents

Publication Publication Date Title
KR100588790B1 (ko) 데이터처리기에서의후속명령처리에작용하는방법및장치
US5752070A (en) Asynchronous processors
US4112490A (en) Data transfer control apparatus and method
US4181934A (en) Microprocessor architecture with integrated interrupts and cycle steals prioritized channel
US5233701A (en) System for managing interprocessor common memory
JP2644780B2 (ja) 処理依頼機能を持つ並列計算機
US4200912A (en) Processor interrupt system
EP2579164B1 (en) Multiprocessor system, execution control method, execution control program
WO2021061483A1 (en) Instruction processing apparatus, processor, and processing method for instruction ordering
WO1983001133A1 (en) Microprocessor with memory having interleaved address inputs and interleaved instruction and data outputs
KR900004291B1 (ko) 데이터 프로세서
US6964049B2 (en) Smart internetworking operating system for low computational power microprocessors
KR920010335B1 (ko) 마이크로프로세서 및 그것을 사용한 정보처리 장치.
US4837688A (en) Multi-channel shared resource processor
JPS62115542A (ja) 情報処理装置
JPH0242537A (ja) マイクロプロセッサ
CN109634766B (zh) 提升数据流机运行效率的方法、装置、设备及存储介质
US5596761A (en) Central processing unit with internal register initializing means
CN116089081A (zh) 音频处理电路、方法、芯片和电子设备
JP2006515446A (ja) 関連アプリケーションを相互参照するカルテシアンコントローラを有するデータ処理システム
JP2002278753A (ja) データ処理システム
JPS62120542A (ja) 情報処理装置
JPH02214938A (ja) データ処理装置
JPS62166463A (ja) デ−タ転送方式
JPS61151745A (ja) 割込処理方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees