JPH0916398A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH0916398A
JPH0916398A JP7163676A JP16367695A JPH0916398A JP H0916398 A JPH0916398 A JP H0916398A JP 7163676 A JP7163676 A JP 7163676A JP 16367695 A JP16367695 A JP 16367695A JP H0916398 A JPH0916398 A JP H0916398A
Authority
JP
Japan
Prior art keywords
address
unit
data
instruction
control signal
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
JP7163676A
Other languages
English (en)
Other versions
JP3479385B2 (ja
Inventor
Hironori Fujimura
博紀 藤村
Hiroyuki Takai
裕之 高井
Seiji Onaino
誠治 子井野
Mikio Takasugi
幹生 高杉
Toshiyuki Yaguchi
俊行 矢口
Atsushi Kunimatsu
敦 国松
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
Toshiba Electronic Device Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Microelectronics 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, Toshiba Microelectronics Corp filed Critical Toshiba Corp
Priority to JP16367695A priority Critical patent/JP3479385B2/ja
Priority to US08/671,619 priority patent/US5909588A/en
Publication of JPH0916398A publication Critical patent/JPH0916398A/ja
Application granted granted Critical
Publication of JP3479385B2 publication Critical patent/JP3479385B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • G06F9/30014Arithmetic instructions with variable precision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30025Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3824Operand accessing

Abstract

(57)【要約】 【目的】 ハード量を極力抑え、複数のデータのアドレ
スを生成し、複数のデータの読み出し/書き込みを可能
とすることができる情報処理装置を提供する。 【構成】 命令入力部103で入力された命令コード
が、命令デコード部105にてデコードされ、オペラン
ド及び制御信号が生成される。前記制御信号により命令
分割制御部109が分割制御信号出力し、オペランド選
択部107が前記分割制御信号により、前記命令デコー
ド部105より入力したオペランドを所定のビット幅で
出力する。前記オペランドを前記分割制御信号により演
算部111が所定のビット幅に分割して演算を行い、演
算されたアドレスを入力し、このアドレス、及び前記分
割制御信号を出力し、前記メモリから得られたデータを
メモリアクセス制御部が演算結果保持部113へ出力す
るようにしてある。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は情報処理装置に関し、特
に、複数のデータの同時読み出し/書き込み(複数オペ
ランドロード/ストア)を可能とする情報処理装置に関
する。
【0002】
【従来の技術】従来から情報処理装置においては、命令
の取出しと実行をステージに分割し、ステージレベルで
先行制御を行い、命令実行時間を短縮する技法であるパ
イプライン方式を用いたものが知られている。図11は
このパイプライン方式を用いた情報処理装置(以下の説
明の便宜上、図11の装置を情報処理装置(a)と記
す)のブロック図を示している。この情報処理装置
(a)は命令レジスタ(IR)3と、IR3中のデータ
を入力とし各種制御信号を生成するデコーダ(DEC)
5と、IR3中のデータの中のディスプレースメントデ
ータを符号拡張する符号拡張器(EXT)7と、汎用レ
ジスタ(GR)9と、GR9中のデータからEXT7の
出力データのどちらかを選択するセレクタ(SEL)1
1と、演算器(ALU)15と、ALU15で生成され
たアドレスデータをラッチするメモリアドレスレジスタ
(MAR)23と、メモリ(図示せず)より読み出され
たデータをラッチするメモリデータレジスタ(MDR)
27と、ALU15で計算されたアドレスをメモリ(図
示せず)へ転送するためのアドレスバス(ABUS)2
9と、メモリから出力された所望のデータを入力するた
めのデータバス(DBUS)31とを備えている。ま
た、DEC5から生成される制御信号は、GR9の制御
信号(GRC)、SEL11の制御信号(SELC)、
及び、ALU15の制御信号(ALUC)とからなるも
のとする(図中は各制御信号を転送する信号線を簡略化
のため1本のみ記載してある)。
【0003】次に、以上のような情報処理装置のオペラ
ンドロード動作についてパイプラインの各ステージ毎に
説明する。まず、IF(命令フェッチ)ステージにおい
て、命令バスにのっている命令コードをIR3でラッチ
する。次のID(命令デコード)ステージにおいては、
IR3中の命令コードをDEC5でデコードし、アドレ
ス計算を行なうための各制御信号(GRC,SELC,
ALUC)を出力する。また、GRCにより選択される
所定のGR9がALU15に入力され、SELCにより
EXT7の出力が選択されALU15に入力される。
【0004】次に、EX(実行)ステージにおいて、A
LU15は、上記2つのデータ(GR9,EXT7の出
力)を入力とし、ALUCに基づいてアドレス計算を実
行し、メモリアドレスを作成(演算)する。その後、A
LU15から出力されるメモリアドレスをMAR23で
ラッチする。その後に続くMA(メモリアクセス)ステ
ージにおいて、メモリアドレスをABUS29に乗せて
メモリアクセスを行なう。メモリアクセスにより読み出
されたデータがDBUS31にのっているので、上記デ
ータをMDR27でラッチする。最後のWB(ライトバ
ック)ステージにおいて、MDR27から出力される上
記データをGR9に書き込む。
【0005】以上のように、図11に示した情報処理装
置(a)では、1サイクルに1つのデータしか読み出し
/書き込みができないため、複数のデータを読み出す/
書き込むには上記動作を複数回実行しなければならな
い。
【0006】そこで、1サイクルに2つのデータを読み
出すことが可能な従来の情報処理装置についての発明が
開示されている。この従来の情報処理装置(b)を図1
2に示す。従来の情報処理装置(a)と比較しての相違
点は演算器(ALU25b)、演算器(ALU25b)
の入力ラッチ、MAR23b及びMDR27b、及び演
算器2つを制御するための制御回路(DECに含む)が
付加されている。これらの回路等を付加し、それらを適
当に制御することで、1サイクルに2つのデータを読み
出すことができる。
【0007】次に、この従来の情報処理装置(b)の動
作であるが、基本的に従来の情報処理装置(a)と同じ
である。EX(実行)ステージにおいて、ALU1,A
LU2でALUCに基づいてアドレス計算を実行し、メ
モリアドレスを2つ生成する。その結果、MA(メモリ
アクセス)ステージにおいて1サイクルに2つのデータ
を読み出すことができるのである。
【0008】
【発明が解決しようとする課題】しかしながら、上記従
来の情報処理装置(b)では、1サイクルに2つのデー
タの読み出し/書き込みは可能であるが、従来の情報処
理装置(a)のハードに加えて、2つめのアドレス生成
のためのハード(ALU15b,ALU15bの入力ラ
ッチ13,MAR23b,MDR27b,制御回路)が
必要である。ここで、これらALU等のハードウエア量
の増加は相当量になるため、最近の小型化、軽量化のニ
ーズには十分に答えられない。また、これらハードウエ
アの増加は消費電力の増加も招くという問題があった。
【0009】本発明は上記事情に鑑みてなされたもので
あり、その目的とするところは、ハード量を極力抑え、
複数のデータのアドレスを生成し、複数のデータの読み
出し/書き込み(複数オペランドロード/ストア)を可
能とすることができる情報処理装置を提供することであ
る。
【0010】
【課題を解決するための手段】上記目的を達成するた
め、第1の本発明の特徴は、命令コードを入力する命令
入力部と、この命令入力部に入力された命令のデコード
を行い、オペランド及び制御信号を生成して出力する命
令デコード部と、この命令デコード部で生成された制御
信号により分割制御信号を出力する命令分割制御部と、
この命令分割制御部が出力する分割制御信号により、少
なくとも前記命令デコード部もしくは演算結果保持部よ
り入力したオペランドを所定のビット幅で出力するオペ
ランド選択部と、このオペランド選択部より入力したオ
ペランドを前記分割制御信号により所定のビット幅に分
割して演算を行い、この演算結果を出力する演算部と、
この演算部で出力されたデータ及びメモリアクセス制御
部から出力されたデータを保持し、前記オペランド選択
部へ出力する演算結果保持部と、前記演算部よりメモリ
へアクセスするアドレスを入力し、このメモリアドレ
ス、及び前記分割制御信号を出力し、前記メモリから得
られたデータを前記演算結果保持部へ出力を行うメモリ
アクセス制御部とを具備することである。
【0011】ここで、前記メモリアクセス制御部は、前
記演算部の演算結果が1つの場合には、アドレスを複数
に分割して出力し、前記演算結果が2つ以上の場合に
は、その各々にアドレスを出力する複数のアドレス出力
手段と、前記分割制御信号を出力する分割制御信号出力
手段と、前記メモリから得られたデータの入力を行う複
数のデータ入力手段とを具備することが好ましい。
【0012】また、前記演算部は、前記分割制御信号が
分割命令を示す場合には、少なくとも1つのビットの桁
上げ信号を、前記ビットの1つ上位のビットに伝班させ
ないようにするキャリーライン切断手段を備え、アクセ
スするメモリの複数のアドレスを並列に演算すること
で、複数のアドレスを生成するようにすることが好まし
い。
【0013】また、前記演算部は、前記オペランド選択
部より入力したオペランドの演算を行い、この演算結果
を出力するアドレス計算手段と、前記分割制御信号が分
割命令を示す場合には、前記アドレス計算手段の少なく
とも1つの所定のビットの桁上げ信号を、前記ビットの
1つ上位のビットに伝班させないようにするキャリーラ
イン切断手段と、前記アドレス計算手段と並列して特定
の演算を行う特定演算実行手段とを備え、前記特定演算
実行手段は脱着可能であることが好ましい。
【0014】次に、第2の本発明の特徴は、メモリオペ
ランドを持つ情報処理装置において、この情報処理装置
の持つ最大のビット巾の演算を行なう手段と、この演算
結果を所定のビット巾のアドレスバスに出力してメモリ
アクセスを行なう手段と、ビット巾の合計が前記最大の
ビット巾を超えない範囲で、予め定められたビット巾の
演算を各々独立して行ない、所定の数の演算結果を生成
する手段と、生成された前記所定の数の演算結果をアド
レスとして前記アドレスバスに出力すると共に、アドレ
スバス上の値を前記所定の数の独立したビット巾のアド
レスとみなすことを指示する信号を出力する手段と、を
具備し、それぞれのアドレスに対応して予め定められた
データ巾の前記所定の数のデータバスを同時に駆動する
ことにより、同時に前記所定の数のメモリアクセスを行
なうことである。
【0015】ここで、前記所定の数のアドレスをアドレ
スバスに出力している事を示す信号は、命令デコード結
果から生成するようにすることが好ましい。
【0016】また、前記予め定められたビット巾で演算
を各々独立して行う際に、各ビット巾に対応する演算器
入力をそれぞれ独立に選択することができるようにする
ことが好ましい。
【0017】また、前記所定の数のメモリアクセスを同
時に行なう場合に、通常のメモリアクセスで用いるデー
タバスを予め定められたビット巾に前記所定の数で分割
して用いることが好ましい。
【0018】次に、第3の発明の特徴は、命令コードを
入力する命令入力部、この命令入力部に入力された命令
のデコードを行い、オペランド及び制御信号を生成して
出力する命令デコード部、この命令デコード部で生成さ
れた制御信号により分割制御信号を出力する命令分割制
御部、前記命令分割制御部が出力する分割制御信号によ
り、前記命令デコード部もしくは演算結果保持部より入
力したオペランドを所定のビット幅で出力するオペラン
ド選択部、このオペランド選択部より入力したオペラン
ドを前記分割制御信号により所定のビット幅に分割して
演算を行い、この演算結果を出力する演算部、この演算
部で出力されたデータ及びメモリアクセス制御部から出
力されたデータを保持し、前記オペランド選択部へ出力
する演算結果保持部、並びに、前記演算部の演算結果が
1つの場合には、アドレスを複数に分割して出力し、前
記演算結果が2つ以上の場合には、その各々にアドレス
を出力する複数のアドレス出力手段、前記分割制御信号
を出力する分割制御信号出力手段、メモリ部から得られ
たのデータの入力を行う複数のデータ入力手段を備え、
前記メモリ部から得られたデータを前記演算結果保持部
へ出力を行うメモリアクセス制御部を備えた情報処理部
と、前記複数のアドレス出力手段のうち一のアドレス出
力手段以外のアドレス出力手段である他のアドレス出力
手段からのアドレス、及び、前記分割制御信号を入力
し、この分割制御信号により前記他のアドレス出力手段
からのアドレスを切り替えて出力するバス制御ユニット
部と、前記複数のアドレス出力手段のうち少なくとも前
記一のアドレス出力手段からのアドレスを入力し、前記
バス制御ユニット部からアドレスの入力があった場合に
は前記一のアドレス出力手段からのアドレスと前記バス
制御ユニット部からのアドレスとを連結したアドレスに
格納されたデータを分割してそれぞれ前記複数のデータ
入力手段のうち一のデータ入力手段及び一のデータ入力
手段以外の他のデータ入力手段へ出力する第1の記憶領
域、及び、前記他のアドレス出力手段からのアドレス、
及び、前記分割制御信号を入力し、この分割制御信号に
より前記アドレスに格納されたデータを前記他のデータ
入力手段へ出力する1以上の第2の記憶領域を備えたメ
モリ部と、を具備することである。
【0019】
【作用】上記第1の発明の構成によれば、演算器を複数
に分割することにより、データのアドレスを複数個生成
し、また、複数のアドレスを出力していることを表す制
御信号も生成する。制御信号及び複数のアドレスをメモ
リに対して出力することにより、複数オペランドロード
/ストアを可能とすることができるのである。
【0020】また、メモリアクセス制御部は、演算部の
演算結果が1つの場合には、アドレスを複数に分割して
出力し、前記演算結果が2つ以上の場合には、その各々
にアドレスを出力するようにし、また、メモリから得ら
れたデータの入力を複数で行うようにしているので、演
算部を分割する場合とそうでない場合でアドレスやデー
タの転送するバスを共有することができるのである。
【0021】また、演算部に、前記ビットの1つ上位の
ビットに伝班させないようにするキャリーライン切断手
段を設けることで、演算器を分割する命令と、分割しな
い命令とを混合させることができるのである。
【0022】また、演算部の特定の演算を行う特定演算
実行手段は脱着可能であることにより、積和演算等の特
定演算を必要に応じて対応することができ、さらに、特
定演算実行手段を交換することで、将来のアップグレー
ド等も容易にすることができるのである。
【0023】また、第2の発明の構成によれば、ビット
巾の合計がこの情報処理装置の持つ最大のビット巾を超
えない範囲で、予め定められたビット巾の演算を各々独
立して行ない、所定の数の演算結果を生成する手段を有
しているので、ハード量を極力抑え、複数のデータのア
ドレスを生成し、複数のデータの読み出し/書き込み
(複数オペランドロード/ストア)を可能とすることが
できるのである。
【0024】ここで、前記所定の数のアドレスをアドレ
スバスに出力している事を示す信号は、命令デコード結
果から生成するようにすることで、ユーザはハードウエ
アを意識することなく命令を記述することができる。こ
れにより、ソフトウエアの開発効率を向上させることが
できるのである。
【0025】また、前記予め定められたビット巾で演算
を各々独立して行う際に、各ビット巾に対応する演算器
入力をそれぞれ独立に選択することができるようにする
ことにより、独立したアドレス計算が可能となるのであ
る。
【0026】また、前記所定の数のメモリアクセスを同
時に行なう場合に、通常のメモリアクセスで用いるデー
タバスを予め定められたビット巾に前記所定の数で分割
して用いることにより、ハードウエアの増加を抑えて、
複数のデータのアドレスを生成し、複数のデータの読み
出し/書き込み(複数オペランドロード/ストア)を可
能とすることができるのである。
【0027】さらに、第3の発明の構成によれば、前記
バス制御ユニット部からアドレスの入力があった場合に
は前記一のアドレス出力手段からのアドレスと前記バス
制御ユニット部からのアドレスとを連結したアドレスに
格納されたデータを分割してそれぞれ前記複数のデータ
入力手段のうち一のデータ入力手段及び一のデータ入力
手段以外の他のデータ入力手段へ出力する第1の記憶領
域、及び、前記他のアドレス出力手段からのアドレス、
及び、前記分割制御信号を入力し、この分割制御信号に
より前記アドレスに格納されたデータを前記他のデータ
入力手段へ出力する1以上の第2の記憶領域を備えたメ
モリ部を設けるようにすることで、ハード量を極力抑
え、複数のデータのアドレスを生成し、複数のデータの
読み出し/書き込み(複数オペランドロード/ストア)
を可能とすることができる。また、前記一のアドレス出
力手段からのアドレスと前記バス制御ユニット部からの
アドレスとを連結したアドレスに格納されたデータを分
割してそれぞれ前記複数のデータ入力手段のうち一のデ
ータ入力手段及び一のデータ入力手段以外の他のデータ
入力手段へ出力するようにすることで、データバスを共
用することができるのである。
【0028】
【実施例】以下に本発明に係る情報処理装置について図
面を参照しながら詳細に説明する。
【0029】以下の実施例では、下記に示すような特徴
を持った情報処理装置についての説明を行う。ここで、
基本的にはこの情報処理装置は下記のように5段(5ス
テージ)パイプラインの構成を有し、一般的なRISC
プロセッサにて用いられるパイプライン構成である。
【0030】IFステージ:命令をメモリからフェッチ
してIRにセットする命令を入力するステージである IDステージ:IR上の命令をデコードする。レジスタ
番号、ディスプレースメント(disp)等を生成するステ
ージである EXステージ:演算を実行する。又はメモリアクセスの
アドレスを生成するステージである MAステージ:メモリアクセスを行なうステージである WBステージ:レジスタへのデータの書き込みを行なう
ステージである 次に、本発明に係る情報処理装置のブロック図を図1に
示す。この情報処理装置101は、命令コードを入力す
る命令入力部103と、命令入力部103に入力された
命令のデコードを行い、オペランド及び制御信号を生成
して出力する命令デコード部105と、命令デコード部
105で生成された分割制御信号により命令分割信号を
出力する命令分割制御部107と、命令分割制御部が出
力する命令分割信号により、命令デコード部105もし
くは演算結果保持部113より入力したオペランドを所
定のビット幅で出力するオペランド選択部107と、オ
ペランド選択部107より入力したオペランドを命令分
割信号により所定のビット幅に分割して演算を行い、こ
の演算結果を出力する演算部111と、演算部111で
出力されたデータ及びメモリアクセス制御部115から
出力されたデータを保持し、オペランド選択部107へ
出力する演算結果保持部113と、演算部111よりメ
モリへアクセスするアドレスを入力し、このメモリアド
レス、及び命令分割信号を出力し、メモリから得られた
データを前記演算結果保持部113へ出力を行うメモリ
アクセス制御部115とを具備している。
【0031】次に、本発明に係る情報処理装置の動作に
ついて説明する。まず、IF(命令フェッチブロック)
で複数オペランドロードを実行させる命令をフェッチ
し、その命令が命令入力部103に入力され、この命令
入力部103内に備えられたレジスタ等に入力される。
この入力された命令は命令デコード部105にて命令の
デコードがされ、このデコートにより命令分割制御部1
09では、分割制御信号を生成して各部に出力する。こ
こで、この分割制御信号は、分割/非分割のみを示す命
令であってもよいし、この信号を出力する各部の制御を
伴った信号、すなわち、各部に出力する信号は異なった
性質を持つものであっても良い。この分割制御信号はオ
ペランド選択部107、演算部109、及びメモリアク
セス制御部115にそれぞれ入力される。オペランド選
択部107では、命令デコード部105にてデコードさ
れたオペランドや演算結果保持部113にて保持された
オペランドのうち、演算部111にて演算を行う所望の
オペランドを選択して演算部111へ出力する。ここ
で、本実施例では、オペランド選択部107に入力され
るオペランドは命令デコード部105にてデコードされ
たものや演算結果保持部113にて保持されたものを用
いているが、これに限られるものではない。例えば、メ
モリアクセス制御部からのデータ(オペランド)を直接
入力してもよいし、その他の各部から出力されるオペラ
ンドを入力してもよい。
【0032】次に、演算部111では、オペランド選択
部107で選択されたオペランド及びオペランド選択部
107で選択された命令中のディスプレースメント等を
入力として複数のアドレスを生成(演算)する。演算部
111から出力される複数のアドレスはメモリアクセス
制御部115に入力され、このメモリアクセス制御部1
15に備えられたMAR(メモリアドレスレジスタ)で
ラッチして、アドレスバスに出力する。
【0033】以下、本発明に係る実施例1及び2におい
ては、32ビットのALUを2分割して、16ビットア
ドレス2つを1度に計算する実施例についての説明を行
う。主としてアドレス計算を行うコアプロセッサに関す
る実施例について説明する。
【0034】実施例1 図2に本実施例に係る情報処理装置のブロック図を示
す。本実施例では、主としてアドレス計算を行うコアプ
ロセッサについて説明する。この情報処理装置1は命令
コードを入力する命令レジスタ(IR)203と、IR
203中のデータを入力とし各種制御信号を生成するデ
コーダ(DEC)205と、IR203中のデータの中
のディスプレースメントデータを符号拡張する符号拡張
器(EXT)207と、汎用レジスタ(GR)209
と、GR209中のデータからEXT207の出力デー
タのどちらかを選択する2つのセレクタ(SEL)21
1a,211bと、演算器(ALU)215と、ALU
215で生成されたアドレスデータをラッチするメモリ
アドレスレジスタ(MAR)223と、メモリ(図示せ
ず)より読み出されたデータをラッチするメモリデータ
レジスタ(MDR)227と、アドレスバス(ABU
S)229と、データバス(DBUS)231とを備え
ている。なお、データバス上の複数のデータを直接積和
演算器(以下MACと記す)やALUの入力とするよう
にしてもよい。
【0035】本実施例においては特定の命令(積和演
算)において2つのメモリアクセスを同時に行うことが
できるように、乗算器217を用いてEXステージで乗
算を行い、加算器219及びアキムレ−タ221を用い
て、MAステージで加算を行なうようにしてある。ま
た、IF201は次にフェッチする命令のアドレスを保
持するものであり、一般的にはプログラムカウンタと呼
ばれるものである。また、PCID,PCEX,PCM
Aを設けてあり、各ステージで実行されている命令を把
握するために実行されている命令のアドレスを保持する
ようにしてある。
【0036】ここで、必要なメモリをオンチップ化でき
る場合にも、そうでない場合にも対応できるように、キ
ャッシュはコア外に接続ができるようにしてもよい。ま
た、性能の確保、キャッシュ実装の容易性、消費電力の
低減を狙ってオンチップの命令バスとオペランドバスを
分離するようにしてもよい。
【0037】次に、本実施例におけるアドレスの発生方
法について図3を用いて説明する。図3は図2から説明
に必要な構成を抜き出したものであり、図2におけるA
LU215は、上位演算ALU313bと、下位演算A
LU313aと、ALU313aの桁上げ信号(以下キ
ャリーと記す)切断手段315とを備えるものである。
ここで、通常命令ではALUの上位16ビットと下位1
6ビットの間のキャリーが接続されており、ALU21
5は32ビットの加算を行なう。GR309と16ビッ
トのdispを符号拡張したものを加算してMAR319に
セットし、それをアドレスバス(図中はADDRESS と記し
てある)に出力する。対応するデータはバスサイクル終
了時にMDR321にセットされる。
【0038】後述するMLDやMAC等の積和演算時は
ALUの上位16ビットと下位16ビットの間のキャリ
ーはキャリー切断手段315により切断されて、ALU
は上位16ビット、下位16ビットの演算を独立に行な
う。GR309の上位16ビットにデータサイズ(1,
2,4のどれか)、下位16ビットにdisp(16ビッ
ト)を加算する。キャリーの切断は、命令のデコード結
果がMLDやMAC等の積和演算命令であることを示し
ている場合に行なわれる。
【0039】2つの16ビットアドレスは、MAR31
9にセットされ、それぞれアドレスバスの上位と下位に
出力される。それぞれに対応するデータはデータバスの
上位16ビット、下位16ビットから、MDR321に
セットされる。
【0040】一方、積和演算によるメモリアクセスを実
行中には、アドレスバス上の値を、上下16ビットずつ
の別個のアドレスとして処理するように指示する分割制
御信号信号(16bitADRS )を発生する。この信号は命
令のOPコードから生成され、積和演算命令がMAステ
ージにある時に他のバス制御信号(AS,RW等)と共
に発生される。
【0041】この構成により、積和演算で用いるデータ
領域があまり大きくない場合には、演算器のキャリーを
切断するためのセレクタ(実際にはNANDゲート)
と、バスサイクルと同期して分割制御信号(16bitADR
S )を出力するための論理回路と、ALU入力のセレク
タ構成の変更というハードウエアの増加で2つのバスサ
イクルを同時に実行し、1クロック1回の積和演算を実
行することができる。従って、簡易、かつ、わずかなハ
ードウエアの増加で複数オペランドロード/ストアを実
行することができる。
【0042】基本的な積和演算命令は次のようになる。
16ビットのdispを持った32ビット長の命令フォーマ
ットを用いる。
【0043】MLD:reg1,reg2,disp reg1は、メモリアクセスのポインタ reg2は、データのロードレジスタ dispはreg1の下位と加算する この命令の各ステージでの動作は以下の通りである。 EXステージ:2つのアドレスを生成する MAステージ:メモリアクセスを行なう WBステージ:reg2で指定されるレジスタへデータをロ
ードする :更新されたアドレスをreg1に書き戻す MAC1:reg1,reg2,disp reg1は、メモリアクセスのポインタ reg2は、データのロード、読み出しするレジスタ dispはreg1の下位と加算する EXステージ:2つのアドレスを生成 :reg2で指定されるGRの上位と下位を乗算 MAステージ:メモリアクセスを行なう :PRD(乗算結果)とACC(アキュムレータ)の加
算 WBステージ:reg2で指定されるレジスタへデータをロ
ード :更新されたアドレスをreg1に書き戻す MAC2:reg1,reg2 reg1は、Acc の値をストアするレジスタ reg2は、読み出しするレジスタ EXステージ:reg2で指定されるGRの上位と下位を乗
算 MAステージ:PRD(乗算結果)とACC(アキュム
レータ)の加算 MAC1の積和演算のみを行なう。
【0044】上記の命令を用いて図5に示すプログラム
について本実施例に係る情報処理装置により実行してみ
る。ここでは図5に示すプログラムを実行した場合につ
いて説明する。この図5に示すプログラムは図6左側に
示すような命令コードに変換される。この変換には、所
定の場合に上述した命令に変換を行う機能を有するコン
パイラを用いる。図6は2回のMLD演算と3回のMA
C演算を行ない、結果をGRに書き込む場合のパイプラ
イン実行例を示した。
【0045】図6に示す通り、最初のMLDの実行開始
(EXステージ)から、レジスタに結果が入るまでの時
間(後続命令で読み出せるまでの時間)は、7クロック
である。
【0046】ここで、比較例として、従来の情報処理装
置が図5に示したプログラムを実行した場合を図13に
示した。図13に示す通り、最初のLDの実行開始(E
Xステージ)から、レジスタに結果が入るまでの時間
(後続命令で読み出せるまでの時間)は、11クロック
を要する。
【0047】また、図11に示した従来の情報処理装置
(a)と本実施例の情報処理装置にて10次のFIRフ
ィルタ演算(積和演算10回)を実行させる。積和演算
10回を実行するのに、従来の情報処理装置(a)では
32クロック(アキュムレータの初期化及びレジスタへ
のストアの2クロックを含む)必要であるが、本実施例
に係る情報処理装置では13クロック(アキュムレータ
の初期化及びMLD命令2クロックの計3クロックを含
む)でよい。従って、従来の情報処理装置(a)に比べ
て性能は約3倍となる。また、図12に示した従来の情
報処理装置(b)と本発明の情報処理装置では、いずれ
も複数オペランドロード/ストアは実行可能であるが、
ハードウエア量は、本実施例に係る情報処理装置では、
演算器、演算器の入力ラッチ、MAR、MDR、及びそ
の制御回路等が不要であるため、小型化、低消費電力化
が図れることができる。このように本実施例に係る情報
処理装置では、ハードウエアの増加を最小限に抑えて、
複数オペランドロード/ストアを高速に実行することが
できる。
【0048】実施例2 図4に本実施例に係る情報処理装置のブロック図を示
す。本実施例は実施例1と同様に特定の命令(積和演
算)において2つのメモリアクセスを同時に行なう。こ
こで、本実施例では積和演算器を脱着が可能となるよう
に、積和演算器(MAC)はコアプロセッサの外に配置
されている。即ち、コアプロセッサの扱うデータ巾(こ
こでは32ビット)と、MACが扱うデータ巾(ここで
は32ビット×2)を独立して決めることができる。M
Aステージでオペランドフェッチを行なうと共に、MA
Cに対してコマンド(演算の種別)を転送する。ここ
で、アドレス発生の方法は実施例1と同様なので、その
説明は省略する。
【0049】積和演算を行なう場合、データバス(オペ
ランドバスのD部)は64ビット巾として、MACは2
つの32ビットデータを取り込み、演算を開始する。ま
た、積和演算によるメモリアクセスを実行中には、アド
レスバス上の値を、上下16ビットずつ別個のアドレス
として処理するように指示する分割制御信号(16bitA
DRS )を発生する。この信号は命令のOPコードから生
成され、積和演算命令がMAステージにある時に他のバ
ス制御信号(AS,RW等)と共に発生される。
【0050】基本的な積和演算命令の動作は次のように
なる。16ビットのdispを持った32ビット長の命令フ
ォーマットを考える。
【0051】MAC:reg1,reg2,disp reg1は、メモリアクセスのポインタ reg2は、読み出したデータをロードするレジスタ dispは、reg1の下位と加算する EXステージ:2つのアドレスを生成 MAステージ:メモリアクセスを行なう :MACに対してコマンドを送る WBステージ:コアは、データをreg2にロードする :MACはフェッチしたデータの上位16ビット、下位
16ビットの間で乗算を行なう。乗算結果とACCの加
算を行なう WBステージ以降、コアとMACの動作は無関係であ
る。MACの動作もパイプライン化して、1クロックに
1回のMAC演算が可能にするその他に次のような命令
が必要である。
【0052】STACC:Src ,Dest 特殊レジスタをストアする命令、Src (ACCである)
をDestで指定されるGRまたはメモリに書き込む。
【0053】上記の命令を用いて、3回のMAC演算を
行ない、結果をGRに書き込む場合のパイプライン実行
例を図7に示す。(ただし、MACユニットはパイプラ
イン的に動作しており、MAC演算における加算ステー
ジをACステージとする。)図7に示す通り、最初のM
ACの実行開始(EXステージ)から、結果がレジスタ
に書き込まれるまでの時間は8クロックである。
【0054】ここで、従来の構成でのパイプライン実行
例を図14に示す。LD命令でメモリからレジスタにデ
ータをロードし、MAC命令でレジスタ間の積和演算を
行なうものとする。最後の命令は、アキュムレータをレ
ジスタにストアする命令である。
【0055】最初のLDの実行開始(EXステージ)か
ら結果がレジスタに書き込まれるまでの時間は12クロ
ックである。これは、本発明によれば2つのデータのロ
ードと積和演算を1クロックで実行可能であるために、
最高1クロックに1回の積和演算が可能なのに対して、
従来例は2つのオペランドのロードと積和演算がすべて
別の命令となるため、1回の積和演算毎に3クロックか
かるためである。
【0056】実施例3 次に、第3の実施例として図8に本実施例のシステム構
成の概要を示したブロック図を示す。この情報処理装置
は、コアプロセッサ801と、バス制御ユニット803
と、メモリ部805とを備えてある。本実施例において
も、32ビットのデータを2分割して、16ビットアド
レスを2つを取込む方式について説明することにする。
【0057】ここで、コアプロセッサ801の構成は前
述の実施例1に相当するものであり、メモリアクセスス
テージでアドレス、及び分割制御信号(16bitAD
RS)を出力する。ただし、図1におけるメモリアクセ
ス制御部115は、演算部111の演算結果が一つの場
合には、アドレスを複数に分割して出力し、演算結果が
二つ以上の場合には、その各々にアドレスを出力する複
数のアドレス出力手段(図中はAL(下位アドレス),
AH(上位アドレス)で記してある)と、分割制御信号
を出力する分割制御信号出力手段(図中は16bitA
DRSの反転信号で記してある)と、メモリから得られ
たデータの入力を行う複数のデータ入力手段(図中はD
L(下位データ),DH(上位データ)で記してある)
とを備えるようにしてある。
【0058】次に、バス制御ユニット803は、前記複
数のアドレス出力手段のうち一のアドレス出力手段以外
のアドレス出力手段である他のアドレス出力手段からの
アドレス、及び、前記分割制御信号を入力し、この分割
制御信号により前記他のアドレス出力手段からのアドレ
スを切り替えて出力するものである。
【0059】次に、メモリ部805は、前記複数のアド
レス出力手段のうち一のアドレス出力手段からのアドレ
スを入力し、前記バス制御ユニット803からアドレス
の入力があった場合にはアドレス出力手段からのアドレ
ス(AL)と前記バス制御ユニット803からのアドレ
ス(AH)とを連結したアドレスに格納されたデータを
DL(下位データ)とDH(上位データ)に分割して、
それぞれ前記他のデータ入力手段へ出力する第1の記憶
領域805a、及び、他のアドレス出力手段からのアド
レス(AH)、及び、前記分割制御信号を入力し、この
分割制御信号により前記アドレスに格納されたデータを
前記他のデータ入力手段へ出力する第2の記憶領域80
5bを備えたものである。
【0060】上述したコアプロセッサ801と記憶領域
805aとはアドレスバス、データバスで接続されてい
る。また、16bitADRSをバス制御ユニットでの
アドレスデコード、各記憶領域の制御信号の生成に使用
する。上位アドレスAH<15:0>はバス制御ユニッ
トで記憶領域805aの上位アドレスAH1<15:0
>と、記憶領域805bのアドレスAH2<15:0>
とに分かれて出力される。下位アドレスAL<15:0
>は記憶領域805aのみに出力されている。上位デー
タDH<15:0>は記憶領域1,2の両方に出力さ
れ、下位データDL<15:0>は記憶領域805aの
みに出力される。記憶領域805aは32ビットアドレ
ス空間(4MB)、記憶領域805bは16ビットアド
レス空間(64kB)である。2オペランドアクセス時
には記憶領域805aに対しては下位の16ビットアド
レス空間のみアクセス可能な構成である。
【0061】図10に本実施例のタイミング図を示す。
本実施例では、2オペランドアクセスを行なう時に2つ
の独立したメモリ部をアクセスする構成について述べ
る。まず、1オペランドアクセス時の動作について述べ
る。1オペランドアクセス時にはコアプロセッサから出
力されるアドレスは32ビット幅であり、これは信号1
6bitADRSの反転信号が“1”であることにより
指示される。この場合、上位アドレスAHはそのままA
H1,AH2の両方に出力される。記憶領域1は、CL
Kの立ち下がりでアドレスストローブ信号ASにより、
AH2とALを連結した32ビットアドレスを受け、3
2ビットデータをDH,DLに分けて入出力する。記憶
領域805bに対しては、データの入出力を行なわない
ように制御する。
【0062】次に、2オペランドアクセス時の動作につ
いて述べる。このときコアプロセッサから出力されてい
るアドレスは16ビットアドレスが2個であり、これは
信号16bitADRSの反転信号が“0”であること
により指示される。このとき記憶領域805aの上位ア
ドレスAH1はバス制御ユニット803において、16
bitADRSによってALL0に設定される。これに
より、AH1とALを連結した32ビットアドレスは1
6ビット以下のアドレス範囲に設定される。記憶領域8
05bに対応するアドレスAH2はそのまま送出され
る。データの入出力は記憶領域805aはDLを、また
記憶領域805bはDHをそれぞれ使用する。したがっ
て、2オペランドアクセスの場合16ビット幅以内のデ
ータのみアクセスする。記憶領域805aに対しては信
号16bitADRSによってDHを使用しないように
制御する。
【0063】実施例4 次に、図9に記憶領域を4つ設けた場合の実施例につい
て示す。この情報処理装置は、上述の実施例と同様にコ
アプロセッサ901と、バス制御ユニット903と、メ
モリ部905とを備えてある。本実施例においては、6
4ビットのデータを4分割して、16ビットアドレスを
4つを取込む方式について説明することにする。
【0064】ここで、コアプロセッサ801の構成は前
述の実施例1に相当するものであり、メモリアクセスス
テージでアドレス、及び分割制御信号(16bitAD
RS)を出力する。ただし、図1におけるメモリアクセ
ス制御部115は、演算部111の演算結果が一つの場
合には、アドレスを複数に分割して出力し、演算結果が
二つ以上の場合には、その各々にアドレスを出力する複
数のアドレス出力手段(図中はA1乃至A4で記してあ
る)と、分割制御信号を出力する分割制御信号出力手段
(図中は16bitADRSの反転信号で記してある)
と、メモリから得られたデータの入力を行う複数のデー
タ入力手段(図中はD1乃至D4で記してある)とを備
えるようにしてある。バス制御ユニット903は、前記
他のアドレス出力手段からの複数のアドレス、及び、前
記分割制御信号を入力し、この分割制御信号により前記
他のアドレス出力手段からのアドレスを切り替えて出力
するようにしてある。また、メモリ部905は、4つの
記憶領域を備えており、複数のアドレス出力手段(A
2)からのアドレスを入力し、前記バス制御ユニット9
03からアドレス(A1,A3,A4)の入力があった
場合には前記一のアドレス出力手段からのアドレスと前
記バス制御ユニットからのアドレスとを連結したアドレ
スに格納されたデータをD2,D3,D4に分割してそ
れぞれ複数のデータ入力手段へ出力する記憶領域905
a、及び、前記他のアドレス出力手段からのアドレス、
及び、前記分割制御信号を入力し、この分割制御信号に
より前記アドレスに格納されたデータを前記他のデータ
入力手段へ出力する記憶領域905b,905c,90
5dを備えている。図9に示す通り構成することによ
り、64ビットを4ビットに分割してデータをアクセス
する場合であっても本発明を適応することができる。
【0065】以上のように、上記本発明の情報処理装置
及び上記従来の情報処理装置(a)に、同一周波数で、
複数オペランドロード/ストアを含む演算処理を実行さ
せると、従来の情報処理装置に比べて高性能が達成でき
るのは言うまでもない。また、同じ演算量(複数オペラ
ンドロード/ストアを含む)を同じ時間で処理するの
に、従来の情報処理装置(a)より低い周波数での動作
が可能となり、低消費電力化が果たせる。
【0066】
【発明の効果】以上説明したように、上記本発明の情報
処理装置によれば、ハード量は最小限に抑えて、複数オ
ペランドのロード/ストアが実行可能にすることができ
る。
【図面の簡単な説明】
【図1】本発明の情報処理装置の全体ブロック図であ
る。
【図2】実施例1(MAC内蔵)の構成図である。
【図3】アドレスの発生方法を説明するための図であ
る。
【図4】実施例2(MAC外付け)の構成図である。
【図5】ソースプログラムの一例を示した図である。
【図6】実施例1の場合のパイプライン実行例を示した
図である。
【図7】実施例2の場合のパイプライン実行例を示した
図である。
【図8】32ビットシステムを2つに分割した場合にお
けるメモリを含めた構成図である。
【図9】64ビットシステムを4つに分割した場合にお
けるメモリを含めた構成図である。
【図10】32ビットシステムを2つに分割した場合に
おけるメモリを含めた構成例のタイミング図を示す図で
ある。
【図11】従来の情報処理装置(a)の構成図である。
【図12】従来の情報処理装置(b)の構成図である。
【図13】従来の情報処理装置の場合のパイプライン実
行例を示した図である。
【図14】従来の情報処理装置の場合のパイプライン実
行例を示した図である。
【符号の説明】
1,101 情報処理装置 103 命令入力部 105 命令デコード部 107 オペランド選択部 109 命令分割制御部 111 演算部 113 演算結果保持部 115 メモリアクセス制御部 201,401 プログラムカウンタ部 3,203,301,403 命令レジスタ 5,205,405 デコーダ 7,207,303,407 符号拡張器 9,209,309,409 汎用レジスタ 11,211,211a,211b,307,411
a,411b セレクタ 13,213,311,413 ラッチ回路 15,215,313,415 演算器 17,217,417 乗算器 19,219,419 加算器 21,221,421 アキュムレータ 23,223,319,423 メモリアクセスレジス
タ 25,225,425 メモリアクセス制御信号生成器 27,227,321,427 メモリデータレジスタ 29,229,429 アドレスバス 31,231,431 データバス 305 データサイズ保持部 317 分割制御信号(16bitADRS) 801,901 コアプロセッサ 803,903 バス制御ユニット 805a,805b,905 記憶領域
───────────────────────────────────────────────────── フロントページの続き (72)発明者 子井野 誠治 神奈川県川崎市幸区堀川町580番1号 株 式会社東芝半導体システム技術センター内 (72)発明者 高杉 幹生 神奈川県川崎市川崎区駅前本町25番地1 東芝マイクロエレクトロニクス株式会社内 (72)発明者 矢口 俊行 神奈川県川崎市幸区堀川町580番1号 株 式会社東芝半導体システム技術センター内 (72)発明者 国松 敦 神奈川県川崎市幸区堀川町580番1号 株 式会社東芝半導体システム技術センター内

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 命令コードを入力する命令入力部と、 この命令入力部に入力された命令のデコードを行い、オ
    ペランド及び制御信号を生成して出力する命令デコード
    部と、 この命令デコード部で生成された制御信号により分割制
    御信号を出力する命令分割制御部と、 この命令分割制御部が出力する分割制御信号により、少
    なくとも前記命令デコード部もしくは演算結果保持部よ
    り入力したオペランドを所定のビット幅で出力するオペ
    ランド選択部と、 このオペランド選択部より入力したオペランドを前記分
    割制御信号により所定のビット幅に分割して演算を行
    い、この演算結果を出力する演算部と、 この演算部で出力されたデータ及びメモリアクセス制御
    部から出力されたデータを保持し、前記オペランド選択
    部へ出力する演算結果保持部と、 前記演算部よりメモリへアクセスするアドレスを入力
    し、このメモリアドレス、及び前記分割制御信号を出力
    し、前記メモリから得られたデータを前記演算結果保持
    部へ出力を行うメモリアクセス制御部と、 を具備することを特徴とする情報処理装置。
  2. 【請求項2】 前記メモリアクセス制御部は、 前記演算部の演算結果が1つの場合には、アドレスを複
    数に分割して出力し、前記演算結果が2つ以上の場合に
    は、その各々にアドレスを出力する複数のアドレス出力
    手段と、 前記分割制御信号を出力する分割制御信号出力手段と、 前記メモリから得られたデータの入力を行う複数のデー
    タ入力手段と、 を具備することを特徴とする請求項1記載の情報処理装
    置。
  3. 【請求項3】 前記演算部は、 前記分割制御信号が分割命令を示す場合には、少なくと
    も1つのビットの桁上げ信号を、前記ビットの1つ上位
    のビットに伝班させないようにするキャリーライン切断
    手段を備え、 アクセスするメモリの複数のアドレスを並列に演算する
    ことで、複数のアドレスを生成することを特徴とする請
    求項1に記載の情報処理装置。
  4. 【請求項4】 前記演算部は、 前記オペランド選択部より入力したオペランドの演算を
    行い、この演算結果を出力するアドレス計算手段と、 前記分割制御信号が分割命令を示す場合には、前記アド
    レス計算手段の少なくとも1つの所定のビットの桁上げ
    信号を、前記ビットの1つ上位のビットに伝班させない
    ようにするキャリーライン切断手段と、 前記アドレス計算手段と並列して特定の演算を行う特定
    演算実行手段と、 を備え、前記特定演算実行手段は脱着可能であることを
    特徴とする請求項1記載の情報処理装置。
  5. 【請求項5】 メモリオペランドを持つ情報処理装置に
    おいて、 この情報処理装置の持つ最大のビット巾の演算を行なう
    手段と、 この演算結果を所定のビット巾のアドレスバスに出力し
    てメモリアクセスを行なう手段と、 ビット巾の合計が前記最大のビット巾を超えない範囲
    で、予め定められたビット巾の演算を各々独立して行な
    い、所定の数の演算結果を生成する手段と、 生成された前記所定の数の演算結果をアドレスとして前
    記アドレスバスに出力すると共に、アドレスバス上の値
    を前記所定の数の独立したビット巾のアドレスとみなす
    ことを指示する信号を出力する手段と、 を具備し、それぞれのアドレスに対応して予め定められ
    たデータ巾の前記所定の数のデータバスを同時に駆動す
    ることにより、同時に前記所定の数のメモリアクセスを
    行なうことを特徴とする情報処理装置。
  6. 【請求項6】 前記所定の数のアドレスをアドレスバス
    に出力していることを示す信号は、命令デコード結果か
    ら生成することを特徴とする請求項5記載の情報処理装
    置。
  7. 【請求項7】 前記予め定められたビット巾で演算を各
    々独立して行う際に、各ビット巾に対応する演算器入力
    をそれぞれ独立に選択することができることを特徴とす
    る請求項5記載の情報処理装置。
  8. 【請求項8】 前記所定の数のメモリアクセスを同時に
    行なう場合に、通常のメモリアクセスで用いるデータバ
    スを予め定められたビット巾に前記所定の数で分割して
    用いることを特徴とする請求項5記載の情報処理装置。
  9. 【請求項9】 命令コードを入力する命令入力部、この
    命令入力部に入力された命令のデコードを行い、オペラ
    ンド及び制御信号を生成して出力する命令デコード部、
    この命令デコード部で生成された制御信号により分割制
    御信号を出力する命令分割制御部、前記命令分割制御部
    が出力する分割制御信号により、前記命令デコード部も
    しくは演算結果保持部より入力したオペランドを所定の
    ビット幅で出力するオペランド選択部、このオペランド
    選択部より入力したオペランドを前記分割制御信号によ
    り所定のビット幅に分割して演算を行い、この演算結果
    を出力する演算部、この演算部で出力されたデータ及び
    メモリアクセス制御部から出力されたデータを保持し、
    前記オペランド選択部へ出力する演算結果保持部、並び
    に、前記演算部の演算結果が1つの場合には、アドレス
    を複数に分割して出力し、前記演算結果が2つ以上の場
    合には、その各々にアドレスを出力する複数のアドレス
    出力手段、前記分割制御信号を出力する分割制御信号出
    力手段、メモリ部から得られたのデータの入力を行う複
    数のデータ入力手段を備え、前記メモリ部から得られた
    データを前記演算結果保持部へ出力を行うメモリアクセ
    ス制御部を備えた情報処理部と、 前記複数のアドレス出力手段のうち一のアドレス出力手
    段以外のアドレス出力手段である他のアドレス出力手段
    からのアドレス、及び、前記分割制御信号を入力し、こ
    の分割制御信号により前記他のアドレス出力手段からの
    アドレスを切り替えて出力するバス制御ユニット部と、 前記複数のアドレス出力手段のうち少なくとも前記一の
    アドレス出力手段からのアドレスを入力し、前記バス制
    御ユニット部からアドレスの入力があった場合には前記
    一のアドレス出力手段からのアドレスと前記バス制御ユ
    ニット部からのアドレスとを連結したアドレスに格納さ
    れたデータを分割してそれぞれ前記複数のデータ入力手
    段のうち一のデータ入力手段及び一のデータ入力手段以
    外の他のデータ入力手段へ出力する第1の記憶領域、及
    び、前記他のアドレス出力手段からのアドレス、及び、
    前記分割制御信号を入力し、この分割制御信号により前
    記アドレスに格納されたデータを前記他のデータ入力手
    段へ出力する1以上の第2の記憶領域を備えたメモリ部
    と、 を具備することを特徴とする情報処理装置。
JP16367695A 1995-06-29 1995-06-29 情報処理装置 Expired - Fee Related JP3479385B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP16367695A JP3479385B2 (ja) 1995-06-29 1995-06-29 情報処理装置
US08/671,619 US5909588A (en) 1995-06-29 1996-06-28 Processor architecture with divisional signal in instruction decode for parallel storing of variable bit-width results in separate memory locations

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16367695A JP3479385B2 (ja) 1995-06-29 1995-06-29 情報処理装置

Publications (2)

Publication Number Publication Date
JPH0916398A true JPH0916398A (ja) 1997-01-17
JP3479385B2 JP3479385B2 (ja) 2003-12-15

Family

ID=15778487

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16367695A Expired - Fee Related JP3479385B2 (ja) 1995-06-29 1995-06-29 情報処理装置

Country Status (2)

Country Link
US (1) US5909588A (ja)
JP (1) JP3479385B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6832117B1 (en) 1999-09-22 2004-12-14 Kabushiki Kaisha Toshiba Processor core for using external extended arithmetic unit efficiently and processor incorporating the same
JP2011196927A (ja) * 2010-03-23 2011-10-06 Yokogawa Electric Corp 波形測定器

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060248311A1 (en) * 2000-05-15 2006-11-02 Jennings Earle W Method and apparatus of dsp resource allocation and use
JP2003015954A (ja) * 2001-06-28 2003-01-17 Sharp Corp 半導体記憶装置および情報機器、半導体記憶装置のアクセス期間設定方法
JP2008077418A (ja) * 2006-09-21 2008-04-03 Sanyo Electric Co Ltd メモリアクセス装置
KR100870426B1 (ko) * 2007-04-03 2008-11-25 주식회사 하이닉스반도체 내부 제어신호 생성장치를 구비하는 반도체메모리소자
US9088134B2 (en) * 2011-07-27 2015-07-21 Vixar Inc. Method and apparatus including improved vertical-cavity surface-emitting lasers
US10126951B2 (en) 2014-06-16 2018-11-13 Mediatek Inc. Apparatus and method for processing data samples with different bit widths
US10037211B2 (en) 2016-03-22 2018-07-31 International Business Machines Corporation Operation of a multi-slice processor with an expanded merge fetching queue
US10037229B2 (en) 2016-05-11 2018-07-31 International Business Machines Corporation Operation of a multi-slice processor implementing a load/store unit maintaining rejected instructions
US9934033B2 (en) 2016-06-13 2018-04-03 International Business Machines Corporation Operation of a multi-slice processor implementing simultaneous two-target loads and stores

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4020470A (en) * 1975-06-06 1977-04-26 Ibm Corporation Simultaneous addressing of different locations in a storage unit
US4538223A (en) * 1982-09-29 1985-08-27 Microdata Corporation Computer operand address computation
US5155820A (en) * 1989-02-21 1992-10-13 Gibson Glenn A Instruction format with designations for operand lengths of byte, half word, word, or double word encoded in address bits
EP0429733B1 (en) * 1989-11-17 1999-04-28 Texas Instruments Incorporated Multiprocessor with crossbar between processors and memories
US5666510A (en) * 1991-05-08 1997-09-09 Hitachi, Ltd. Data processing device having an expandable address space
JPH07114469A (ja) * 1993-10-18 1995-05-02 Mitsubishi Electric Corp データ処理装置
EP0924601B1 (en) * 1993-11-23 2001-09-26 Hewlett-Packard Company, A Delaware Corporation Parallel data processing in a single processor
US5680598A (en) * 1995-03-31 1997-10-21 International Business Machines Corporation Millicode extended memory addressing using operand access control register to control extended address concatenation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6832117B1 (en) 1999-09-22 2004-12-14 Kabushiki Kaisha Toshiba Processor core for using external extended arithmetic unit efficiently and processor incorporating the same
US7308320B2 (en) 1999-09-22 2007-12-11 Kabushiki Kaisha Toshiba Processor core for using external extended arithmetic unit efficiently and processor incorporating the same
JP2011196927A (ja) * 2010-03-23 2011-10-06 Yokogawa Electric Corp 波形測定器

Also Published As

Publication number Publication date
US5909588A (en) 1999-06-01
JP3479385B2 (ja) 2003-12-15

Similar Documents

Publication Publication Date Title
JP2835103B2 (ja) 命令指定方法及び命令実行方式
US4862407A (en) Digital signal processing apparatus
US6061779A (en) Digital signal processor having data alignment buffer for performing unaligned data accesses
US6510510B1 (en) Digital signal processor having distributed register file
US5954811A (en) Digital signal processor architecture
US6446190B1 (en) Register file indexing methods and apparatus for providing indirect control of register addressing in a VLIW processor
US6754809B1 (en) Data processing apparatus with indirect register file access
EP1124181B1 (en) Data processing apparatus
JPS6058490B2 (ja) 命令ブランチ機構
JPH08106375A (ja) 信号処理演算器
US5896543A (en) Digital signal processor architecture
JP3479385B2 (ja) 情報処理装置
US5710914A (en) Digital signal processing method and system implementing pipelined read and write operations
US4773035A (en) Pipelined data processing system utilizing ideal floating point execution condition detection
US6334135B2 (en) Data processing system and register file
JP4073721B2 (ja) データ処理装置
US7047396B1 (en) Fixed length memory to memory arithmetic and architecture for a communications embedded processor system
US6728741B2 (en) Hardware assist for data block diagonal mirror image transformation
JPH07239780A (ja) 1クロック可変長命令実行処理型命令読み込み電子計 算機
JPH11307725A (ja) 半導体集積回路
US7107302B1 (en) Finite impulse response filter algorithm for implementation on digital signal processor having dual execution units
USRE41012E1 (en) Register file indexing methods and apparatus for providing indirect control of register addressing in a VLIW processor
US6792442B1 (en) Signal processor and product-sum operating device for use therein with rounding function
JPS6033644A (ja) メモリバンク切換方法および装置
Srini et al. Parallel DSP with memory and I/O processors

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030916

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081003

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081003

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091003

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees