JPS63163929A - マイクロプロセツサ - Google Patents

マイクロプロセツサ

Info

Publication number
JPS63163929A
JPS63163929A JP31309886A JP31309886A JPS63163929A JP S63163929 A JPS63163929 A JP S63163929A JP 31309886 A JP31309886 A JP 31309886A JP 31309886 A JP31309886 A JP 31309886A JP S63163929 A JPS63163929 A JP S63163929A
Authority
JP
Japan
Prior art keywords
instruction
prefetch
bus
execution
instruction code
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
JP31309886A
Other languages
English (en)
Inventor
Shigeo Mukai
向井 重雄
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP31309886A priority Critical patent/JPS63163929A/ja
Publication of JPS63163929A publication Critical patent/JPS63163929A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、命令コードのフェッチとデータの参照とを非
同期に行うマイクロプロセッサに関する。
〔概要〕
本発明は、命令コードのフェッチとデータの参照とを非
同期に行うマイクロプロセッサにおいて、内部メモリに
繰り返し使用される命令コードを格納し、この命令コー
ドを用いるときはデータの参照を連続的に行うことによ
り、 命令実行の高速化を実現することができるようにしたも
のである。
〔従来の技術〕
従来のマイクロプロセッサは2つの内部バスを持ち、命
令コードのプリフェッチとデータの参照とを非同期に行
って高速な処理を実現している(例えばμP D701
)6)。このマイクロプロセッサは、バスコントロール
部、プリフェッチ部、デコード部、命令実行部および2
つの内部バスを有する。
〔発明が解決しようとする問題点〕
このような従来の方式では、命令コードのフェッチとデ
ータの参照とを非同期に行うので、データの参照が内部
バスの制御の都合で遅れたり途中で分岐した場合にフェ
ッチが無駄になる場合が発生する。ところで、マイクロ
プロセッサの進歩はめざましく、以前(例えば280な
ど)と比較して現在(例えばV2Oなど)は処理能力が
格段に向上しており、将来はさらに高速なマイクロプロ
セッサが開発されるものと期待される。しかし、外部に
接続されるべきメモリ (ROM/RAM)の高速化は
マイクロプロセッサの高速化に追従していない。したが
って、外部メモリをアクセスする時間の割合が次第に大
きくなり、メモリの速度がプロセッサの速度を決定する
ことになり、マイクロプロセッサの処理能力が有効に利
用できなくなる欠点がある。
この問題点は、汎用のプロセッサでは多くのデータを一
度にキャッシュに読み込み外部メモリを都度参照しない
ことで解決している。しかし、マイクロプロセッサでは
、実装面積を少なくしなければならないこと、人出ピン
数に制限があること、発熱量の余裕を余り太き(しない
ことが要求されこの方法は現実的とはいえない。
本発明はこのような欠点を解決するもので、外部メモリ
にアクセスする時間の割合の短いマイクロプロセッサを
提供することを目的とする。
〔問題点を解決するための手段〕
本発明は、外部記憶手段から命令コードを先取りするプ
リフェッチ部と、このプリフェッチ部で先取りした命令
コードに応じ、この外部記憶手段と授受するデータを処
理する命令実行部と、この命令実行部および上記プリフ
ェッチ部と上記外部記憶手段との間の経路に挿入され、
このプリフェッチ部またはこの命令実行部のいずれか一
方を非同期に上記外部記憶手段に接続するバスコントロ
ール部とを備えたマイクロプロセッサにおいて、特定の
命令コードを識別する識別手段と、この識別手段で識別
された特定の命令コードを格納する内部メモリと、この
命令コードの実行命令に応じて、この実行命令に含まれ
る指定回数にわたり上記内部メモリに格納された特定の
命令コードを上記命令実行部に与える制御手段とを備え
たことを特徴とする。
また、上記内部メモリと、上記プリフェッチ部と、上記
識別手段および上記制御手段とが、内部バスでループ状
に接続されたことを特徴とする。
〔作用〕
特定の命令コードが送られてきた場合に、この命令コー
ドを内部メモリに格納しておき、次に、この命令コード
に対する実行命令が送られてきたときにこの命令を実行
する。この命令コードの実行は実行命令が指定する回数
にわたり実行される。
この間は命令コードのフェッチは行われず、命令実行部
は常に外部データの読み書きができ、実行を待たされる
ことがない、すなわち、小容量の内部メモリを用いて高
速処理を実行することができる。
〔実施例〕
以下、本発明の一実施例を図面に基づき説明する。
第1図は本発明実施例の構成を示すブロック構成図であ
る。この実施例は、外部装置と外部バス6を介して接続
されたバスコントロール部lと、このバスコントロール
部lに内部バス7を介して接続されたプリフェッチ部2
と、デコーダ部3と、デコーダ部3に内部バス1)を介
して接続されがっプリフェッチ部2に内部バス12を介
して接続された内部メモリ5とを備える。
次に、この実施例の動作を第1図に基づき説明する。
バスコントロール部lは外部バス6に対してデータの読
み取りまたは書き込みを行う。プリフェッチ部2は、内
部バス7から命令コードを読み取り、プリフェッチキュ
ー8に対し順次命令コードを書き込む。デコード部3は
、プリフェッチキュー8より命令コードを読み取り、そ
の命令を解釈し、その結果により、実行制御信号9によ
って命令実行部4の入力信号を与える。命令実行部4は
、実行制御信号9からの信号により論理演算や数値演算
を行い、その結果を内部に記憶または内部バス10に書
き込む、内部バス10に書き込まれたデータは、バスコ
ントロール部1により取り込まれ、外部バス6に書き込
まれる。また、バスコントロール部1は、命令実行部4
が必要とするならば、外部バス6よりデータを読み取り
、内部バス10に書き込む、プリフェッチ部2と命令実
行部4とがともに外部バス6によるデータの読み書きを
必要とするので、これらが競合しないように、内部バス
7と内部バス10とをバスコントロール部1で切り替え
を行う。
ある特定の命令コードが送られてきた場合に、プロセッ
サ内部に命令コードが登録され、次にその命令に対する
実行命令コードが送られてきたときにその命令を実行す
る。この制御はデコード部3により判断される。命令コ
ード登録の命令コードをデコード部3が読み取った場合
に、この命令に続く登録されるべきコードは内部バス1
)を経由して内部メモリ5に書き込まれ、命令実行部4
には送られない、命令コード登録が終了すると、デコー
ド部3は、再び命令の解釈を行い、実行制御信号9によ
って命令実行部4の入力信号を与える。
後に、登録された命令コードに対する実行命令コードが
送られてきた場合に、デコード部3はプリフェッチ制御
信号13によりプリフェッチ部2に対して内部メモリフ
ェッチを命令する。この命令を受は取った場合に、プリ
フェッチ部2は、外部バスからの命令コードのフェッチ
を中断し、プリフェッチキューをクリアした後に、プリ
フェッチ制御信号13により指定された回数(以下、こ
の指定回数をループカウンタという。)分だけ内部バス
12により内部メモリ5から命令コードを2エツチし続
ける。この登録された命令コードを実行している間は、
マイクロプロセッサの外部に対して命令コードのフェッ
チは行われない、このことにより、外部バス6は常に内
部バス10に接続され、命令実行部4はこの間常に外部
に対し、データの読み書きを行うことができ、実行を待
たされることがない。
例として、1000バイトの8ビツトデータ加算を行っ
た場合についてこの効果を説明する。従来例のマイクロ
プロセッサでのフローチャートを第4図に、また実行所
要時間および所要メモリ容量を第1表に示す、このプロ
セッサはプリフェッチ部と命令実行部を備え、それぞれ
が独立に働くことが可能である。すなわち、このプロセ
ッサは2本の内部バスを持っている。また、プロセッサ
の実行所要時間をクロックサイクルで表現すると、この
プロセッサは、すべての演算および判断を2クロツクサ
イクルで終了し、また、ジャンプ命令が実行された際に
プリフェッチの中断およびプリフェッチキューのクリア
が2クロツクサイクルで終了し、また、すべての実効ア
ドレスの計算も2クロフクサイクルで終了する。これは
従来の技術を用いたマイクロプロセッサで可能な最高水
準の評定である。また、このプロセッサは1バイトまた
は1ワードのデータを読み取るのに4クロツクサイクル
を要する。これは従来のマイクロプロセッサでは標準で
あり、外部メモリの読み書きに要する時間の制限による
。また、このプロセッサはすべての命令のデコードが2
クロツクサイクルで終了し、2本の内部バスを制御する
部分すなわち本発明のバスコントロール部(第1図1)
に相当する部分を所有している。また、第2図に示すプ
ログラムを実行している間、内部バス制御により命令の
実行が待たされる時間がOクロックサイクルであったと
する。
第2図のa部はこのプログラムのループする部分であり
、これらの最恵環境でも、このプロセッサはこの部分を
処理するのに20クロツクサイクルを要する。また、こ
の部分は6バイトのメモリを使用しており、また、1バ
イトのデータを読み取るので、少なくとも、28クロツ
クサイクルを必要とする。
次に、第2図と同様のプログラムを本発明を用いて組み
立てた場合を説明する。第3図は本発明を用いて100
0バイトの8ビツトデータ加算を行うプログラムのフロ
ーチャートを示し、第2表は実行所要時間および所要メ
モリ容量を示す、第4図は、第3図の登録命令実行の部
分の展開であり、本発明内部で処理される手順を示し、
第3表は内部処理所要時間を示す。第4図のb部が第2
図のa部に相当する。第2図と最も異なる点は、b部に
判断命令が無く、ジャンプ命令を含まないことにある。
ループカウンタはプリフェッチ部(第1図2)のみを使
用する。プログラムは読み出されないので、実行アドレ
スを示すポインタはこの間変更されない。すなわち、デ
コード部(第1図3)には、0部が1000回渡される
だけである。従来の技術を用いたマイクロプロセッサと
同じ仮定で本発明を用いた場合に、b部は1回につきl
Oクロックサイクルで済む。また、データの読み出しに
必要な時間は4クロツクサイクルである。さらに、バス
コントロール部(第1図1)によって命令実行部(第1
図4)が待たされることはあり得ない。
したがって、従来のマイクロプロセッサの所要時間は、 (3+ 2 + 3) X 4 +1000X2B=2
8.032クロツクサイクル であり、本発明のマイクロプロセッサの所要時間は、 (4+ 3 + 2 + 4)X 4 +1000XI
O+ 2=10,054クロツクサイクル になる。
このように従来の技術を駆使して最適なマイクロプロセ
ッサを開発したとしても、多数回のループを行う部分を
持つプログラムは、本発明を用いることによって、外部
メモリの制限が同じ場合でも、さらに2倍以上高速なマ
イクロプロセッサを実現することが可能である。
第1表 (以下本頁余白) 第2表 (以下本頁余白) 第3表 〔発明の効果〕 本発明は、以上説明したように、命令コードを内部メモ
リから読み出すことによりデータの読み書きに対する実
行が待たされないので、データ処理の高速化を図ること
ができる。また、この効果は命令の反復回数が多い場合
に顕著になる。
【図面の簡単な説明】
第1図は本発明実施例の構成を示すブロック構成図。 第2図は従来例マイクロプロセッサの動作を示すフロー
チャート。 第3図および第4図は本発明実施例の動作を示すフロー
チャート。 ■・・・バスコントロール部、2・・・プリフエ・7チ
部、3・・・デコード部、4・・・命令実行部、5・・
・内部メモリ、6・・・外部バス、7.10.1).1
2・・・内部バス、8・・・プリフェッチキュー、9・
・・実行制御信号、13・・・プリフェッチ制?Il信
号。 特許出願人 日本電気株式会社9..1、代理人  弁
理士 井 出 直 平゛ *祖例の購凰 ?f1)1  口 従来例の動作 ?f’52  図 尖施例の動作 M 3 回 大樋例の動作 ?il!14  図

Claims (2)

    【特許請求の範囲】
  1. (1)外部記憶手段から命令コードを先取りするプリフ
    ェッチ部と、 このプリフェッチ部で先取りした命令コードに応じ、こ
    の外部記憶手段と授受するデータを処理する命令実行部
    と、 この命令実行部および上記プリフェッチ部と上記外部記
    憶手段との間の経路に挿入され、このプリフェッチ部ま
    たはこの命令実行部のいずれか一方を非同期に上記外部
    記憶手段に接続するバスコントロール部と を備えたマイクロプロセッサにおいて、 特定の命令コードを識別する識別手段と、 この識別手段で識別された特定の命令コードを格納する
    内部メモリと、 この命令コードの実行命令に応じて、この実行命令に含
    まれる指定回数にわたり上記内部メモリに格納された特
    定の命令コードを上記命令実行部に与える制御手段と を備えたことを特徴とするマイクロプロセッサ。
  2. (2)内部メモリと、プリフェッチ部と、識別手段およ
    び制御手段とが、内部バスでループ状に接続されたこと
    を特徴とする特許請求の範囲第(1)項に記載のマイク
    ロプロセッサ。
JP31309886A 1986-12-26 1986-12-26 マイクロプロセツサ Pending JPS63163929A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31309886A JPS63163929A (ja) 1986-12-26 1986-12-26 マイクロプロセツサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31309886A JPS63163929A (ja) 1986-12-26 1986-12-26 マイクロプロセツサ

Publications (1)

Publication Number Publication Date
JPS63163929A true JPS63163929A (ja) 1988-07-07

Family

ID=18037135

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31309886A Pending JPS63163929A (ja) 1986-12-26 1986-12-26 マイクロプロセツサ

Country Status (1)

Country Link
JP (1) JPS63163929A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03223932A (ja) * 1990-01-29 1991-10-02 Fujitsu Ltd プロセッサの命令読出し方式
WO1995027250A1 (en) * 1994-04-05 1995-10-12 Motorola Inc. Protection circuit for a microprocessor
WO1998036351A1 (fr) * 1997-02-17 1998-08-20 Hitachi, Ltd. Processeur de donnees
US5809544A (en) * 1995-10-06 1998-09-15 Motorola, Inc. Microcontroller which limits access to internal memory
CN102184091A (zh) * 2011-04-18 2011-09-14 孙瑞琛 一种分支预测方法及装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03223932A (ja) * 1990-01-29 1991-10-02 Fujitsu Ltd プロセッサの命令読出し方式
WO1995027250A1 (en) * 1994-04-05 1995-10-12 Motorola Inc. Protection circuit for a microprocessor
US5557743A (en) * 1994-04-05 1996-09-17 Motorola, Inc. Protection circuit for a microprocessor
US5809544A (en) * 1995-10-06 1998-09-15 Motorola, Inc. Microcontroller which limits access to internal memory
WO1998036351A1 (fr) * 1997-02-17 1998-08-20 Hitachi, Ltd. Processeur de donnees
US6505295B1 (en) 1997-02-17 2003-01-07 Hitachi, Ltd. Data processor
US7080240B2 (en) 1997-02-17 2006-07-18 Hitachi, Ltd. Data processing apparatus
CN102184091A (zh) * 2011-04-18 2011-09-14 孙瑞琛 一种分支预测方法及装置

Similar Documents

Publication Publication Date Title
US4729094A (en) Method and apparatus for coordinating execution of an instruction by a coprocessor
JPH03129433A (ja) 並列処理装置および並列処理方法
US4731736A (en) Method and apparatus for coordinating execution of an instruction by a selected coprocessor
US4750110A (en) Method and apparatus for executing an instruction contingent upon a condition present in another data processor
US6687808B2 (en) Data processor using indirect register addressing
US4821231A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
US4914578A (en) Method and apparatus for interrupting a coprocessor
JPH03233630A (ja) 情報処理装置
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
JPS63163929A (ja) マイクロプロセツサ
US4758978A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
JP2695156B2 (ja) 情報処理装置
JPS59123936A (ja) 移動制御方式
JPH0524537B2 (ja)
JP2680371B2 (ja) プログラマブルコントローラ
JPS61285542A (ja) 命令先取り方法
JPH0241770B2 (ja)
JP2806690B2 (ja) マイクロプロセッサ
JP2522562B2 (ja) プログラマブルコントロ―ラ
JPH0150934B2 (ja)
JP2867798B2 (ja) 先行制御装置
JPH0412860B2 (ja)
JP2522564B2 (ja) プログラマブルコントロ―ラ
JP2522563B2 (ja) プログラマブルコントロ―ラ
JPS62194544A (ja) 命令先読み制御方式