JPH0584546B2 - - Google Patents

Info

Publication number
JPH0584546B2
JPH0584546B2 JP60209161A JP20916185A JPH0584546B2 JP H0584546 B2 JPH0584546 B2 JP H0584546B2 JP 60209161 A JP60209161 A JP 60209161A JP 20916185 A JP20916185 A JP 20916185A JP H0584546 B2 JPH0584546 B2 JP H0584546B2
Authority
JP
Japan
Prior art keywords
instruction
data
storage means
programmable counter
arithmetic
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 - Lifetime
Application number
JP60209161A
Other languages
English (en)
Other versions
JPS6269351A (ja
Inventor
Hiroshi Mizuguchi
Tadashi Kunihira
Yutaka Oota
Toshihiko Sakai
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP60209161A priority Critical patent/JPS6269351A/ja
Publication of JPS6269351A publication Critical patent/JPS6269351A/ja
Publication of JPH0584546B2 publication Critical patent/JPH0584546B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 本発明は新規なマイクロプロセツサの構成に関
し、特に、データ処理効率の高いマイクロプロセ
ツサを提供するものである。
従来の技術 近年、ノイマン方式のマイクロプロセツサはあ
らゆる方面で多用されており、その構成として
は、順次実行される命令群からなるプログラムを
格納するプログラム格納手段と、デイジタルデー
タの読み書きが可能なデータ格納手段と、デイジ
タルデータの演算を実行する演算手段と、前記デ
ータ格納手段の入出力端子と前記演算手段の入出
力端子を接続するデータバスと、前記プログラム
格納手段から送出される命令に基づいて前記デー
タ格納手段と前記演算手段の動作をコントロール
するコントロール手段と、命令の実行タイミング
信号を発生するタイミングジエネレータと、前記
タイミングジエネレータの出力に基づいて前記プ
ログラム格納手段に格納された特定の命令を選択
する命令選択手段を備えていることに特徴づけら
れる。また、その代表的な構成が特公昭58−
33584号公報(以下、文献1と略記する。)に示さ
れている。
発明が解決しようとする問題点 ところで、前記文献1に示されるようなノイマ
ン方式のマイクロプロセツサはあらかじめ定めら
れた順次にしたがつてデータの処理を実行してい
くために、プログラムが膨大になるにつれて非同
期で入力される外部データの取り込みやそれに基
づくデータの処理のサイクルが長くなるという問
題を有している。このような問題に対して、従来
は割り込みという手段を用いたり、データフロー
マシンに代表されるような非ノイマン方式のプロ
セツサが用いられてきた。しかしながら、割り込
み手段を用いる方法では、割り込みチヤンネル数
が増加するほどプロセツサ自身が割り込みサービ
スルーチンを開始するための手続き処理に多くの
時間を費やすことになり、データの処理効率が悪
化する。また、データフローマシンでは、一般
に、数値データに処理情報が付加されて巡回する
ためにシステムが大規模化する。
問題点を解決するための手段 前記した問題点を解決するために本発明のマイ
クロプロセツサは、命令の実行タイミング信号を
発生するタイミングジエネレータの出力に基づい
てプログラム格納手段に格納された特定の命令を
選択する第1の命令選択手段と、前記第1の命令
選択手段による命令の選択に続いて前記タイミン
グジエネレータの出力に基づいて前記プログラム
格納手段の特定の命令を選択する第2の命令選択
手段と、前記第2の命令選択手段によつて選択さ
れて実行されるプログラムの開始位置が前記第1
の命令選択手段によつて選択された命令によつて
格納されるウインドウ手段を備えている。
作 用 本発明では前記した構成によつて、データ処理
効率の高いマイクロプロセツサを得ることができ
る。
実施例 以下、本発明の実施例について図面を参照しな
がら説明する。
第1図は本発明の一実施例におけるマイクロプ
ロセツサの構成図を示したものであり、順次実行
される命令群からなるプログラムが格納されるプ
ログラマブルロジツクアレイ(図中において
PLAなる略記号で示されている。以下、PLAと
略記する。)100と、デイジタルデータの読み
書きを行うランダムアクセスメモリ(図中におい
てRAMなる略記号で示されている。以下、
RAMと略記する。)200およびレジスタフア
イル250と、デイジタルデータの算術および論
理演算を実行する第1の演算器(一般にはALU
なる略記号で示される。)300および第2の演
算器350と、前記RAM200および前記レジ
スタフアイル250の共通の入出力端子と前記演
算器300,350の入出力端子を接続するデー
タバス400と、前記PLA100から送出され
る命令に基づいて前記RAM200、レジスタフ
アイル250と前記演算器300,350の動作
をコントロールするコントロールバス450と、
外部クロツク入力端子10に供給されるクロツク
信号をもとに命令の実行タイミング信号を発生す
るタイミングジエネレータ(図中においてTGな
る略記号で示されている。)500と、前記タイ
ミングジエネレータ500の出力に基づいて前記
PLA100に格納された特定の命令を選択する
第1のプログラマブルカウンタ(図中において
PC1なる略記号で示されている。)600と、前
記第1のプログラマブルカウンタ600による命
令の選択に続いて前記タイミングジエネレータ5
00の出力に基づいて前記PLA100の特定の
命令を選択する第2のプログラマブルカウンタ
(図中においてPC2なる略記号で示されている。)
650と、前記第2のプログラマブルカウンタ6
50によつて選択されて実行されるプログラムの
開始位置が前記第1のプログラマブルカウンタ6
00によつて選択された命令によつて格納される
ウインドウ700を備えている。また、前記タイ
ミングジエネレータ500の出力信号がクロツク
信号として供給される16ビツトのカウンタ800
と、前記カウンタ800のカウント値を前記デー
タバス400に送出するためのスイツチ回路90
0と、前記カウンタ800の特定のビツト出力信
号と前記第1のプログラマブルカウンタ600の
特定のカウント値を示す出力信号(例えば、[000
……00]をデコードする出力信号。)の周波数比
較を行つて、プログラムが無限ループに突入した
ときなどに前記第1のプログラマブルカウンタ6
00と前記第2のプログラマブルカウンタ650
をリセツトする周波数比較器1000を備えてい
る。さらに、前記タイミングジエネレータ500
の出力信号をクロツク信号とし、外部信号入力端
子20に印加される信号のエツジが到来したとき
もしくはプログラムによつてスタートさせられた
ときに動作するタイマー1100と、前記タイマ
ー1100の出力信号によつてマスターラツチ部
のデータがスレイブラツチ部に転送されるマスタ
ースレイブ形式の出力ポート1200と、前記デ
ータバス400に送出されるデータを取り込んで
アナログ電圧に変換するD−Aコンバータ130
0と、前記コントロールバス450に送出される
指令にしたがつて前記データバス400に特定の
データを送出する読みだし専用メモリ(図中にお
いてROMなる略記号で示されている。以下、
ROMと略記する。)1400と、前記RAM20
0および前記レジスタフアイル250のアドレス
を選択する(前記RAM200および前記レジス
タフアイル250はたがいに異なるアドレス上に
配置されている。)アドレスデコーダ1500な
らびに前記ROM1400のアドレスを選択する
アドレスデコーダ1600を備えている。なお、
入力コントローラ1700は、外部信号入力端子
30,40,50,60,70,80、に印加さ
れる入力信号のエツジが到来したときに、その時
点のカウンタ800のカウント値をレジスタフア
イル250の中の特定のレジスタに転送させるい
同時に複数の入力信号のエツジが到来したときに
は、複数のレジスタ選択される。)とともに、図
示されてはいない入力信号受け付けフラグをセツ
トする機能を有している。
以上のように構成されたマイクロプロセツサに
ついて、第1図に示した構成図と、第2図に示し
た主要部のタイミングチヤートによりその動作を
説明する。
まず、第2図Aは第1図の外部クロツク入力端
子10に供給されるクロツク信号波形を示したも
のであり、第2図Bはタイミングジエネレータ5
00を介してカウンタ800およびタイマー11
00、入力コントローラ1700に供給されるク
ロツク信号波形を示したものであり、第2図C,
Dはそれぞれタイミングジエネレータ500を介
して第1、第2のプログラマブルカウンタ60
0,650に供給されるクロツク信号波形を示し
たものである。また、第2図EはPLA100か
らコントロールバス450に送出される命令の実
行サイクルを表している。さらには、第2図Fは
データバス400に送出されるデータの切り換え
サイクルを表している。
つまり、第1のプログラマブルカウンタ600
によつてPLA100の特定の命令が選択されて、
第2図EのM記号を付したタイミングにおいてコ
ントロールバス450にその命令が送出された後
に、第2のプログラマブルカウンタ650によつ
て選択された命令が、第2図EのS記号を付した
タイミングにおいてコントロールバス450に送
出されることになる。第2図Fに示されたデータ
バス400に切り換え期間が第2図Eに示された
コントロールバス450のそれに比べて半分にな
つているのは、第2図Bの信号波形がアクテイブ
レベルにある期間を入力コントロール1700に
よるカウンタ800のカウント値のレジスタフア
イル250への転送に割り当てているためであ
る。なお、第1、第2のプログラマブルカウンタ
はそれぞれ第2図C,Dの矢印を付したエツジに
おいてカウント値を更新させられるが、第2図E
において、実際に命令がコントロールバス450
に送出されるタイミングが半周期遅らされている
のは、PLA100での遅延マージンを考慮した
ためである。
さて、第2図のタイミングチヤートに示されて
いる技術は、単にPLA100に2種類の命令選
択手段を設け、交互に異なる命令を選択する、す
なわち、時分割で別のプログラムを実行している
だけであるから、何等新規性はない。
本発明の特徴は、第2のプログラマブルカウン
タ650によつて選択されて実行されるプログラ
ムの開始位置が第1のプログラマブルカウンタ6
00によつて選択された命令によつて決定される
点と、その開始位置が格納されるウインドウを設
けた点にある。
本発明によるマイクロプロセツサにおけるデー
タ処理の概念を第3図に示したデータ処理フロー
に基づいて説明する。
第3図は、第1のプログラマブルカウンタ60
0によつて選択されて実行される命令群と第2の
プログラマブルカウンタ650によつて選択され
て実行される命令群の連鎖関係を図式化したもの
であり、m1、m2、m3、m4、m5、m6はそれぞ
れ第1のプログラマブルカウンタ600によつて
実行される命令群であり、s2、s4、s5、s6はそれ
ぞれ第2のプログラマブルカウンタ650によつ
て実行される命令群である。
さて、第1のプログラマブルカウンタ600に
よるプログラムの実行が第3図のa点からスター
トしたとすると、まず、命令群m1が実行され、
処理は命令群m2に移行するが、命令群m2におい
て、あたかも従来のサブルーチンコールのような
形で第2のプログラマブルカウンタ650によつ
て命令群s2が起動される。ただ、従来のサブルー
チンコールと異なるのは、第1のプログラマブル
カウンタ600は命令群m2において命令群s2を
起動させた後に命令群s2における処理の完了を持
たずに残りの命令を実行し、続く命令群m3での
処理に移行する点である。同様にして、命令群
m4、m5、m6において命令群s4、s5、s6が呼び出
されるが、これらの命令群における処理を待つこ
となく第1のプログラマブルカウンタ600によ
る命令の実行は一巡してa点に戻る。
これによつて、比較的多くの処理時間を必要と
する処理を命令群s2〜s6からなる外側のループに
配置しておけば、命令群m1〜m6からなる内側の
ループにおける処理は短い時間で一巡する。した
がつて、外部信号のエツジが到来したか否かのセ
ンス処理などの即断性を要する処理を内側のルー
プで行えば、短い巡回サイクルで判断処理が次々
と実行できることになる。
ただ、このようなデータ処理フローでは必然的
に外側のループの処理に多くの時間を要すること
になるので、外側のループでのデータ処理速度が
内側でのそれに比べて十分に高くないと、全体と
してのデータの処理効率は低下する。例えば、外
側のループでのデータ処理速度が内側でのそれと
同等であれば、命令群s2を実行している間に内側
のループでの処理が何回も繰り返されることにな
るが、内側のループにおいて命令群m6の実行が
完了した直後に命令群s2の実行が完了したとする
と、命令群m1の実行が行われている間は外側で
の処理は休止状態となつて処理効率が低下するだ
けでなく、命令群m2において再び命令群s2が起
動された場合には、命令群s4、s5、s6を一度も実
行することなく命令群s2を続けて2回実行してし
まうことになる。
第1図に示した本発明のマイクロプロセツサで
は第2のプログラマブルカウンタ650によつて
次に実行されるプログラムの開始位置をウインド
ウ700に格納しておくことによつて前記した問
題を解決している。
第4図は、PLA100と第1のプログラマブ
ルカウンタ600および第2のプログラマブルカ
ウンタ650ならびにウインドウ700の接続関
係を示したブロツク構成図で、PLA100は第
1のプログラマブルカウンタ600と第2のプロ
グラマブルカウンタ650によつて交互にアドレ
ツシングされ、前記PLA100からのコントロ
ール信号とアドレス選択信号はローカルバス15
0を介してウインドウ700と前記第1のプログ
ラマブルカウンタ600および前記第2のプログ
ラマブルカウンタ650に供給される。前記ウイ
ンドウ700は第1および第2のアドレス格納部
710,720と、これらのいずれかを選択する
ポインター730と、アドレス格納部に空きエリ
アがなくなつたときにそれ以上のアドレスの格納
を拒否するリジエクシヨンフラグ740を有して
いる。なお、前記ポインター730によつて選択
されたアドレス格納部からのアドレス情報はウイ
ンドウバス750を介して前記第2のプログラマ
ブルカウンタ650に供給される。
さて、PLA100において無条件ジヤンプ命
令や条件ブランチ命令が選択されたときには、ロ
ーカルバス150を介して第1、第2のプログラ
マブルカウンタ600,650に直接アドレス選
択信号が送出されるが、第3の内側の処理ループ
を実行する第1のプログラマブルカウンタ600
によつて外側の処理ループの命令群が起動された
とき、ローカルバス150を介してPLA100
から送出されるアドレス選択信号はウインドウ7
00に導かれ、第2のプログラマブルカウンタ6
50が動作中でなければ、そのままウインドウ7
00を通過して第2のプログラマブルカウンタ6
50のプリセツトデータとなるが、第2のプログ
ラマブルカウンタ650が動作中の場合には、ポ
インター730の指す側のアドレス格納部にアド
レス情報を格納したうえでポインター730の出
力を反転させる。なお、このとき、ポインター7
30の指した側のアドレス格納部に既にアドレス
情報が格納されている場合にはリジエクシヨンフ
ラグ740がセツトされて以後のアドレス選択信
号の受付が拒否される。
一方、第3図の外側のループを構成する各命令
群の最後には終了命令が置かれるが、PLA10
0からこの終了命令が送出されると、第2のプロ
グラマブルカウンタ650には第1、第2のアド
レス格納部710,720のうち古い方のアドレ
ス情報(ポインター730とリジエクシヨンフラ
グ740の出力状態から判別できる。)のアドレ
ス格納部のアドレス情報が転送され、そのデータ
が[00……000]でなければプリセツトされたう
えで、転送したアドレス情報を格納していたアド
レス格納部がクリアされ、さらに、リジエクシヨ
ンフラグ740はリセツトされる。
このようにして、第3図の外側の処理ループに
おける各命令群の実行に多くの時間を要したとし
ても、第2のプログラマブルカウンタ650は内
側の処理ループから起動された順序にしたがつて
各命令群を次々と実行していくことができる。な
お、第4図に示した例ではウインドウ700がア
ドレス格納部を2ケ所しか有していないので、現
在実行中の命令群も含めて3種類の命令群のバツ
フアリング能力しかないが、多くの場合、外側の
処理ループに配置される命令群は、一度処理が終
われば続いて起動されることは少なく(第3図の
データ処理フローそのものが、リアルタイム性を
要求される命令群を内側の処理ループに配置する
ことを示している。)、あまり支障はない。また、
バツフアリング能力を高めるために、ウインドウ
700のアドレス格納部のエリアを増加させるこ
とも可能である。さらにまた、ウインドウ700
のアドレス格納部に空きエリアがなくなつたとき
には第1のプログラマブルカウンタ600のカウ
ント値の更新を停止させる命令を用意して第3図
のa点に挿入したり、ハードウエア的に同様のこ
とを行うことによつて、内側の処理ループの実行
タイミングと外側の処理ループの実行タイミング
の同期をとることもできる。
ところで、第1図に示した構成図において、演
算器300と演算器350の2個の演算器が用意
されているが、前記演算器300は、第3図の内
側の処理ループにおいて主としてデータの加算お
よび減算を行い、前記演算器350は外側の処理
ループにおいて乗算を主体にした演算を行う。内
側の処理ループのためにそれぞれほぼ専用の演算
器を用意しているのは、加算器を用いた乗算など
を実行するときに外側の処理ループで頻繁に加算
器を使用した場合にデータのシフト操作やキヤリ
ーの処理が複雑となり、それに伴つてハードウエ
アの負担が重くなるのを回避するためである。
発明の効果 本発明のマイクロプロセツサは以上の説明から
も明らかなように、順次実行される命令群からな
るプログラムを格納するプログラム格納手段
(PLA100)と、デイジタルデータの読み書き
が可能なデータ格納手段(RAM200)と、デ
イジタルデータの演算を実行する演算手段(演算
器300,350)と、前記データ格納手段の入
出力端子と前記演算手段の入出力端子を接続する
データバス400と、前記プログラム格納手段か
ら送出される命令に基づいて前記データ格納手段
と前記演算手段の動作をコントロールするコント
ロール手段(コントロールバス450)と、命令
の実行タイミング信号を発生するタイミングジエ
ネレータ500の出力に基づいて前記プログラム
格納手段に格納された特定の命令を選択する第1
の命令選択手段(第1のプログラマブルカウンタ
600)と、前記第1の命令選択手段による命令
の選択に続いて前記タイミングジエネレータの出
力に基づいて前記プログラム格納手段の特定の命
令を選択する第2の命令選択手段(第2のプログ
ラマブルカウンタ650)と、前記第2の命令選
択手段によつて選択されて実行されるプログラム
の開始位置が前記第1の命令選択手段によつて選
択された命令によつて格納されるウインドウ70
0を備えたことを特徴とするもので、データの処
理効率を の高いマイクロプロセツサを得ること
ができ、大なる効果を奏する。
なお、実施例においては前記プログラム格納手
段として唯一のPLA100を用い、前記第1、
第2の命令選択手段としてそれぞれ第1、第2の
プログラマブルカウンタ600,650を用いて
いるが、前記第1の命令選択手段によつて命令が
選択される第1のプログラム格納手段と、前記第
2の命令選択手段によつて命令が選択される第2
のプログラム格納手段を用いてもよく、さらに、
命令選択手段は第1のプログラマブルカウンタ6
00による方法だけでなくアドレスラツチと加算
器の組み合わせなどによつても構成できる。
【図面の簡単な説明】
第1図は本発明の一実施例におけるマイクロプ
ロセツサの構成図、第2図は第1図の主要部のタ
イミングチヤート、第3図は本発明によるマイク
ロプロセツサでのデータ処理フローの模式図、第
4図はPLAと第1、第2の第1のプログラマブ
ルカウンタおよびウインドウの接続関係を示した
ブロツク構成図である。 100……PLA、200……RAM、300…
…演算器、350……演算器、400……データ
バス、450……コントロールバス、500……
タイミングジエネレータ、600……第1のプロ
グラマブルカウンタ、650……第2のプログラ
マブルカウンタ、700……ウインドウ、100
……PLA、200……RAM、300……演算
器、350……演算器、400……データバス、
450……コントロールバス、500……タイミ
ングジエネレータ、600……第1のプログラマ
ブルカウンタ、650……第2のプログラマブル
カウンタ、700……ウインドウ。

Claims (1)

  1. 【特許請求の範囲】 1 順次実行される命令群からなるプログラムを
    格納するプログラム格納手段と、デイジタルデー
    タの読み書きが可能なデータ格納手段と、デイジ
    タルデータの演算を実行する演算手段と、前記デ
    ータ格納手段の入出力端子と前記演算手段の入出
    力端子を接続するデータバスと、前記プログラム
    格納手段から送出される命令に基づいて前記デー
    タ格納手段と前記演算手段の動作をコントロール
    するコントロール手段と、命令の実行タイミング
    信号を発生するタイミングジエネレータと、前記
    タイミングジエネレータの出力に基づいて前記プ
    ログラム格納手段に格納された特定の命令を選択
    する第1の命令選択手段と、前記第1の命令選択
    手段による命令の選択に続いて前記タイミングジ
    エネレータの出力に基づいて前記プログラム格納
    手段の特定の命令を選択する第2の命令選択手段
    と、前記第2の命令選択手段によつて選択されて
    実行されるプログラムの開始位置が前記第1の命
    令選択手段によつて選択された命令によつて格納
    されるウインドウ手段を備えてなるマイクロプロ
    セツサ。 2 第1の命令選択手段によつて選択された命令
    に基づいて動作する第1の演算器と、第2の命令
    選択手段によつて選択された命令に基づいて動作
    する第2の演算器によつて演算手段を構成してな
    る特許請求の範囲第1項記載のマイクロプロセツ
    サ。
JP60209161A 1985-09-20 1985-09-20 マイクロプロセツサ Granted JPS6269351A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60209161A JPS6269351A (ja) 1985-09-20 1985-09-20 マイクロプロセツサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60209161A JPS6269351A (ja) 1985-09-20 1985-09-20 マイクロプロセツサ

Publications (2)

Publication Number Publication Date
JPS6269351A JPS6269351A (ja) 1987-03-30
JPH0584546B2 true JPH0584546B2 (ja) 1993-12-02

Family

ID=16568330

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60209161A Granted JPS6269351A (ja) 1985-09-20 1985-09-20 マイクロプロセツサ

Country Status (1)

Country Link
JP (1) JPS6269351A (ja)

Also Published As

Publication number Publication date
JPS6269351A (ja) 1987-03-30

Similar Documents

Publication Publication Date Title
EP0355961B1 (en) Microprogrammed timer processor
JPS62145435A (ja) コンカレント処理命令を有するマイクロプロセツサ
JPH0584546B2 (ja)
JPH0544689B2 (ja)
US5115513A (en) Microprogrammed timer processor
JP2826309B2 (ja) 情報処理装置
JP2512119B2 (ja) マイクロプロセッサ
JPH0584547B2 (ja)
JPH0584545B2 (ja)
JPS62145434A (ja) コンカレントル−プを有するマイクロプロセツサ
JP2511856B2 (ja) マイクロプロセツサ
JPS6269317A (ja) マイクロプロセツサ
JPH01276359A (ja) マイクロプロセッサ
JPS63120345A (ja) マイクロプロセツサ
JP2778066B2 (ja) キャプチャ機構を有するマイクロプロセッサ
JPH02287629A (ja) マイクロプロセッサ
JPS61182135A (ja) 処理選択方法
JPH02110739A (ja) マルチタスク用中央処理装置
JPH0778730B2 (ja) 情報処理装置
JPS62296236A (ja) マイクロプロセツサの割り込み処理装置
JPS63211436A (ja) マイクロプロセツサ
JPH0659933U (ja) 中央演算処理装置
JPS63298632A (ja) マイクロプロセツサ
JPS61226839A (ja) イベント処理方式
JPS6120139A (ja) 割込み制御方式

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term