JPH05250156A - Riscプロセッサ - Google Patents

Riscプロセッサ

Info

Publication number
JPH05250156A
JPH05250156A JP5114792A JP5114792A JPH05250156A JP H05250156 A JPH05250156 A JP H05250156A JP 5114792 A JP5114792 A JP 5114792A JP 5114792 A JP5114792 A JP 5114792A JP H05250156 A JPH05250156 A JP H05250156A
Authority
JP
Japan
Prior art keywords
address
value
instruction
bit
data
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
JP5114792A
Other languages
English (en)
Other versions
JP2915680B2 (ja
Inventor
Hatsuo Shirokura
初雄 白倉
Nobuhiko Yamagami
宣彦 山上
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP5114792A priority Critical patent/JP2915680B2/ja
Publication of JPH05250156A publication Critical patent/JPH05250156A/ja
Application granted granted Critical
Publication of JP2915680B2 publication Critical patent/JP2915680B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【目的】 RISCプロセッサにおいて、従来のプログ
ラムを書き換えることなしにメモリアクセス速度を高速
化する。 【構成】 この発明のRISCプロセッサでは、アドレ
ス上位ビットの値をレジスタにセットするために一般の
算術演算のための演算回路を用いるのでは時間がかかる
ことを考慮して、アドレス上位ビット保持用レジスタを
用意し、命令デコーダが取り出したアドレス上位ビット
の値をこのアドレス上位ビット保持用レジスタの同じビ
ット位置に保持させ、アドレス生成には、このレジスタ
のアドレス上位ビットの値と命令デコーダが取り出した
アドレス下位ビットの値とをアドレス生成用演算部にお
いて加算するようにして、アドレス上位ビットデータの
セットとアドレス下位ビットデータのセットの間で待つ
必要をなくし、メモリへの高速アクセスを可能にしてい
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、パイプライン動作を
行なうRISCプロセッサに関する。
【0002】
【従来の技術】一般にコンピュータの中央処理装置であ
るプロセッサでは、命令によってメモリを参照、変更す
るためのアドレスを指定する場合、命令語中にアドレス
を埋め込むと、アドレスに指定できるビット数<命令語
のビット数となる。そして、RISCプロセッサでは、
命令語のビット数は固定であり、なおかつアドレスの有
効ビット数は命令語のビット数と同じか、それを上回る
のが通常であり、このままではアドレスの全ビットを有
効に利用できない問題点がある。
【0003】そこで、従来から、RISCプロセッサで
は、(1)算術演算命令で、レジスタにアドレスの値の
一部、通常は命令語に埋め込んだ値で指定できない上位
ビット(bit)を設定し、(2)前記レジスタの値
と、命令語に埋め込んだ値の和をアドレスしてメモリア
クセスを行なう、という2命令に分けて有効アドレスビ
ットをすべて用いる処理方式を採用している。なお、こ
の際、上記の(1)で設定する値も算術演算命令中に埋
め込まれているので、(1)の処理のみで全アドレスビ
ットを指定することもできない。
【0004】
【発明が解決しようとする課題】ところが、このような
従来のRISCプロセッサでは次のような問題点があっ
た。すなわち、命令語中に埋め込まれた値は、命令デコ
ードの段階で取り出されるが、上記のような2命令を用
いたアドレス生成方式では、(1)で取り出された値に
ついて、この値の取り出しが行なわれた算術演算命令の
処理が終わるまで(2)のメモリアクセスを待たなけれ
ばならず、アドレス生成処理に待ち時間が生じ、全体と
して演算処理時間が遅くなる問題点があった。
【0005】この点をさらに詳しく説明すれば、従来の
RISCプロセッサのアドレス生成処理を司る部分の構
成は、図3に示すようなものであり、レジスタファィル
1、命令デコーダ2、アドレス生成部3、算術演算部
4、レジスタ5〜7を備えている。そして、レジスタフ
ァィル1は演算に用いるデータや演算結果のデータを格
納する働きをするブロックであり、命令デコーダ2は命
令を解読し、また命令に埋め込まれている数値を各ブロ
ック3,4に送り込む働きをするブロックである。な
お、この命令デコーダ2が命令を取り込む機構について
は省略してある。
【0006】さらに、アドレス生成部3は命令デコーダ
2と算術演算部4からのデータからアドレスを計算し、
アドレス線8に出力する働きをするブロックであり、算
術演算部4はレジスタファィル1および自身のデータに
演算を施す働きをするブロックである。
【0007】そして、このような従来のRISCプロセ
ッサにおいて、アドレスの生成処理を行なう場合には、
図4に示すようなステップを踏んでいた。
【0008】<<ステップ1>> アドレス上位ビット
のレジスタへのセット(デコード) 命令デコーダ2が「命令1」を解読し、算術演算部4に
対して算術演算実行を指示し、セットすべき値をも「命
令1」中から取り出し、算術演算部4に送る。
【0009】<<ステップ2>> アドレス上位ビット
のレジスタへのセット(実行) 算術演算部4は命令デコーダ2から送られた値を上位ビ
ットにセットする。
【0010】 <<ステップ3>> データロード(デコード) 算術演算部4はレジスタファィル1のレジスタにアドレ
スの上位ビットの値を書き込み、同時に、アドレス生成
部3に同じ値を送る。そして、命令デコーダ2は「命令
2」を解読し、アドレス生成部3に対してアドレス計算
を指示し、算術演算部4からの値に加えるべき値をも
「命令2」中から取り出し、アドレス生成部3に送る。
アドレス生成部3では、これらの両方の値を加算し、正
規のアドレスを求める。
【0011】 <<ステップ4>> データロード(実行) アドレス生成部3からのアドレスをアドレス線8に出力
し、データ線9にデータが入るのを待つ。
【0012】 <<ステップ5>> データロード(書き込み) データ線9の値をレジスタファィル1に書き込む。
【0013】このようにして、5ステップによりアドレ
スの生成とデータの書き込み処理を行なうのであるが、
<<ステップ2>>で算術演算部を用い、1ステップを
費やしてアドレス上位ビットをレジスタにセットするよ
うにしているが、それほど複雑な処理をしているわけで
はない。つまり、すでに値の分かっているものを定めら
れたビット位置におくだけの単純な処理であるが、この
ような処理のために1ステップを費やすことにより、処
理時間を遅くしてしまっていたのである。
【0014】この発明は、このような従来の問題点に鑑
みなされたもので、単純な回路の追加によってプログラ
ムを変更しないでメモリへのアクセス時の処理速度を向
上させることができるRISCプロセッサを提供するこ
とを目的とする。
【0015】
【課題を解決するための手段】この発明は、パイプライ
ン動作を行なうRISCプロセッサにおいて、アドレス
生成用演算部と、データ演算のための算術演算部と、命
令語中に埋め込まれた値を取り出す機能を持つ命令デコ
ーダと、前記命令デコーダが取り出した値のうちアドレ
ス上位ビットに出力されるべき値を同じビット位置に保
持し、前記アドレス生成用演算部に送る機能を持つアド
レス上位ビット保持用レジスタとを備え、前記命令デコ
ーダが命令語中に埋め込まれたアドレス下位ビットの値
を取り出したタイミングにこのアドレス下位ビットの値
と前記アドレス上位ビット保持用レジスタの保持してい
るアドレス上位ビットの値と加算してアドレスデータと
して出力するようにしたものである。
【0016】
【作用】この発明のRISCプロセッサでは、アドレス
上位ビットの値をレジスタにセットするために一般の算
術演算のための演算回路を用いるのでは時間がかかるこ
とを考慮して、アドレス上位ビット保持用レジスタを用
意し、命令デコーダが取り出したアドレス上位ビットの
値をこのアドレス上位ビット保持用レジスタの同じビッ
ト位置に保持させ、アドレス生成には、このレジスタの
アドレス上位ビットの値と命令デコーダが取り出したア
ドレス下位ビットの値とをアドレス生成用演算部におい
て加算するようにして、アドレス上位ビットデータのセ
ットとアドレス下位ビットデータのセットの間で待つ必
要をなくし、メモリへの高速アクセスを可能にしてい
る。
【0017】
【実施例】以下、この発明の実施例を図に基づいて詳説
する。
【0018】図1はこの発明の一実施例の回路構成を示
している。この図1の回路において、従来例として示し
た図3の回路と共通するブロックに同一の符号を付して
示してあるが、ブロック1〜ブロック9はまったく同一
の構成である。そして、この発明の特徴は、命令デコー
ダ2とアドレス生成部3、算術演算部4との間に設けた
アドレス上位ビット保持用レジスタ10にある。
【0019】このアドレス上位ビット保持用レジスタ1
0は、命令デコーダ2が「命令1」を処理する際に生成
するアドレス上位ビットの値を保持してアドレス生成部
3に送り込む働きをするブロックである。
【0020】次に、上記の構成のRISCプロセッサの
動作について説明する。
【0021】図2に示すように、この実施例のRISC
プロセッサは、次の4ステップによりメモリアクセス動
作を実行することになる。
【0022】<<ステップ1>> アドレス上位ビット
のレジスタ10へのセット(デコード) 命令デコーダ2は送られてくる「命令1」を解読し、算
術演算部4に対して算術演算の実行を指示し、セットす
べき値を「命令1」中から取り出し、算術演算部4およ
びアドレス上位ビット保持用レジスタ10に送ってセッ
トする。
【0023】<<ステップ2>> アドレス上位ビット
のアドレス生成部へのセット(実行)およびデータロー
ド(デコード) 算術演算部4は命令デコーダ2から送られてきた値を上
位ビットにセットする(この値は演算には用いられない
が、従来のプログラムを変更することなし実行するため
に行なわれる処理である)。また、命令デコーダ2は次
の「命令2」を解読し、アドレス生成部3に対してアド
レス計算を指示し、アドレス上位ビット保持用レジスタ
10よりアドレス上位ビットの値をアドレス生成部3に
送る(この時すでに、値は上位ビットに移っている)。
さらに、このアドレス上位ビットに加算すべきアドレス
下位ビットの値を「命令2」から取り出し、アドレス生
成部3に送る。そして、アドレス生成部3では、これら
のアドレス上位ビットの値とアドレス下位ビットの値を
加算する。
【0024】 <<ステップ3>> データロード(実行) 算術演算部4はレジスタファィル1に値を書き込む。ア
ドレス生成部3は、アドレスをアドレス線8に出力す
る。
【0025】 <<ステップ4>> データロード(書き込み) データ線9のデータをレジスタファィル1に書き込む。
【0026】このようにして、4ステップにより、アド
レスを生成して出力し、メモリにアクセスして該当する
アドレスのデータをメモリより得てレジスタファィル1
に書き込むのである。そして、従来例の処理手順として
示した図4の場合に比べて、「命令1」のデコード実行
ステップと「命令2」のデコード実行ステップとの間に
あったステップがなくなっていることが分かる。
【0027】RISCプロセッサでは、命令の実行ステ
ップ間に空きがない時に効率が最大となるので、このよ
うにして実行ステップ間に空きをなくすことができた本
実施例の場合には、処理速度が速くなるのである。
【0028】なお、上記の実施例においては、アドレス
上位ビットへのセットを行なう「命令1」は、普通の算
術命令であり、従来のプログラムを実行する場合の互換
性の維持のために算術演算部4が指示通りに演算を行な
うようにしている。そして、この「命令1」がデコード
される時には、次の「命令2」がデータロードであるか
どうかに関わりなく、アドレス上位ビット保持用レジス
タ10に値がセットされるようにしている。そして、こ
の場合に、次の「命令2」が何かを判別する機構は必要
としない。こうして、従来のプログラムを変更すること
なしに、このシステムにもそのまま利用することができ
るようになるのである。
【0029】なお、この発明は上記の実施例に限定され
ず、RISC用ソフトウェアで2命令によるメモリアク
セスが頻繁に行なわれるものについて、それを変更なし
に実行する場合に広く利用できる。
【0030】
【発明の効果】以上のようにこの発明によれば、アドレ
ス上位ビット保持用レジスタを用意し、命令デコーダが
取り出したアドレス上位ビットの値をこのアドレス上位
ビット保持用レジスタの同じビット位置に保持させ、ア
ドレス生成には、このレジスタのアドレス上位ビットの
値と命令デコーダが取り出したアドレス下位ビットの値
とをアドレス生成用演算部において加算するようにし
て、アドレス上位ビットデータのセットとアドレス下位
ビットデータのセットの間で待つ必要をなくし、メモリ
への高速アクセスを可能にしたので、メモリにアクセス
する命令が多いプログラムを多数資産として持つプロセ
ッサアーキテクチャで、それらのプログラムを書き換え
ることなく高速に実行できる。
【図面の簡単な説明】
【図1】この発明の一実施例の機能ブロック図。
【図2】上記実施例の動作説明図。
【図3】従来例の機能ブロック図。
【図4】従来例の動作説明図。
【符号の説明】
1 レジスタファィル 2 命令デコーダ 3 アドレス生成部 4 算術演算部 5〜7 レジスタ 8 アドレス線 9 データ線 10 アドレス上位ビット保持用レジスタ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 パイプライン動作を行なうRISCプロ
    セッサにおいて、 アドレス生成用演算部と、データ演算のための算術演算
    部と、命令語中に埋め込まれた値を取り出す機能を持つ
    命令デコーダと、前記命令デコーダが取り出した値のう
    ちアドレス上位ビットに出力されるべき値を同じビット
    位置に保持し、前記アドレス生成用演算部に送る機能を
    持つアドレス上位ビット保持用レジスタとを備え、前記
    命令デコーダが命令語中に埋め込まれたアドレス下位ビ
    ットの値を取り出したタイミングにこのアドレス下位ビ
    ットの値と前記アドレス上位ビット保持用レジスタの保
    持しているアドレス上位ビットの値と加算してアドレス
    データとして出力するようにして成るRISCプロセッ
    サ。
JP5114792A 1992-03-10 1992-03-10 Riscプロセッサ Expired - Lifetime JP2915680B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5114792A JP2915680B2 (ja) 1992-03-10 1992-03-10 Riscプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5114792A JP2915680B2 (ja) 1992-03-10 1992-03-10 Riscプロセッサ

Publications (2)

Publication Number Publication Date
JPH05250156A true JPH05250156A (ja) 1993-09-28
JP2915680B2 JP2915680B2 (ja) 1999-07-05

Family

ID=12878714

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5114792A Expired - Lifetime JP2915680B2 (ja) 1992-03-10 1992-03-10 Riscプロセッサ

Country Status (1)

Country Link
JP (1) JP2915680B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010079326A (ko) * 2001-07-06 2001-08-22 한제섭 리스크 코아의 집적회로
CN102033734A (zh) * 2009-10-07 2011-04-27 晶心科技股份有限公司 数据处理引擎

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010079326A (ko) * 2001-07-06 2001-08-22 한제섭 리스크 코아의 집적회로
CN102033734A (zh) * 2009-10-07 2011-04-27 晶心科技股份有限公司 数据处理引擎

Also Published As

Publication number Publication date
JP2915680B2 (ja) 1999-07-05

Similar Documents

Publication Publication Date Title
JPH04313121A (ja) インストラクションメモリ装置
JP2003510682A5 (ja)
WO2021249054A1 (zh) 一种数据处理方法及装置、存储介质
JPH0683582A (ja) データ演算装置
US20040255095A1 (en) Data access program instruction encoding
JP2002229778A (ja) 高速ディスプレースメント付きpc相対分岐方式
JPH05250156A (ja) Riscプロセッサ
JPS601655B2 (ja) デ−タプリフェツチ方式
JP2838939B2 (ja) 並列命令実行方式
JP3954159B2 (ja) 同期式ramのアクセス制御回路、データ処理プロセッサ及びその制御方法
JPS63293638A (ja) データ処理装置
JP5263498B2 (ja) 信号処理プロセッサ及び半導体装置
JPH0241770B2 (ja)
JPH06162067A (ja) ベクトル命令制御装置および制御方法
JPH0546389A (ja) 並列処理装置
JPH08328851A (ja) ロード・ストア命令処理装置及び方法
JP2942449B2 (ja) データ処理装置
JP5311008B2 (ja) 信号処理プロセッサ及び半導体装置
JPH07191845A (ja) 即値データ転送装置
JPH033047A (ja) 演算機能付きメモリ
JPH01284926A (ja) 演算装置の命令読出方式
JPH11119995A (ja) データ処理装置および方法
JPS61161509A (ja) 高速シ−ケンス演算方式及びその装置
JPH03164945A (ja) データ処理装置
JPH0333929A (ja) マイクロプログラム制御装置