JPH0460831A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH0460831A
JPH0460831A JP2172010A JP17201090A JPH0460831A JP H0460831 A JPH0460831 A JP H0460831A JP 2172010 A JP2172010 A JP 2172010A JP 17201090 A JP17201090 A JP 17201090A JP H0460831 A JPH0460831 A JP H0460831A
Authority
JP
Japan
Prior art keywords
byte
data processing
arrangement
processing device
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.)
Pending
Application number
JP2172010A
Other languages
English (en)
Inventor
Akiyoshi Ino
猪野 明寿
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 JP2172010A priority Critical patent/JPH0460831A/ja
Publication of JPH0460831A publication Critical patent/JPH0460831A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔目 次〕 概要 産業上の利用分野 従来の技術と発明が解決しようとする課題課題を解決す
るための手段 作用 実施例 発明の効果 〔概要〕 主記憶アクセスを、主記憶装置とレジスタファイル間で
行い、すべての演算をレジスタファイル間で行うように
構成したデータ処理装置、例えば、命令縮小型データ処
理装置において、バイト並びの異なるデータを処理する
方式に関し、多バイト長データの上位バイトを主記憶の
下位アドレスのバイトデータと対応させる昇順(Big
−Endian)形式と、該多バイト長データの下位バ
イトを主記憶の下位バイトに対応させる降順(Litt
leEndian)形式との画形式のバイト並びをサポ
ートしながら、主記憶アクセス時の負荷を避け、且つ、
画形式のバイト並びのデータを容易に扱えるデータ処理
装置を提供することを目的とし、該レジスタファイルに
置かれた多バイト長データのバイト並びを判別して、バ
イト並び指示信号■を出力する手段と、バイト単位に構
成した算術論理演算器(ALU)に入力される桁上げ7
桁下げ信号を、上記バイト並び指示信号■によって、上
位。
又は、下位の演算器の出力する信号から選択する多バイ
ト長算術論理演算器(多バイト長ALU)を持つように
構成する。又、上記多バイト長算術論理演算器(多バイ
ト長AL[l)以外の演算器(シフタ等)に対して、上
記レジスタファイルと演算器間にバイト並び変換器(M
IX)をもつように構成する。又、上記多バイト長算術
論理演算器(多バイト長^LU)以外の演算器(乗算器
等)に対して、2種類のバイト並びに対応する2種類の
演算器を有し、上記バイト並び指示信号のに基づいて、
該2種類の演算器の出力を選択する手段(セレクタ)を
有するように構成する。
〔産業上の利用分野〕
本発明は、主記憶アクセスを、主記憶装置とレジスタフ
ァイル間で行い、すべての演算をレジスタファイル間で
行うように構成したデータ処理装置、例えば、命令縮小
型データ処理装置において、バイト並びの異なるデータ
を処理する方式に関する。
従来から、バイトアドレス方式の計算機では、主記憶に
置かれる多バイト長のデータをアクセスするときに、そ
のデータの上位バイトを主記憶の下位アドレスのバイト
データと対応させる(Big−Endian)形式を用
いるものと、逆に多バイト長データの下位バイトを主記
憶の下位アドレスに対応させる(Li ttleJnd
ian)形式を用いるものとがある。
過去の計算機では、このいずれか一方のみを扱っていた
が、異機種間でのデータ交換の機会が多い今日では、画
形式を扱う必要が生じている。このため、近年のプロセ
ッサにはこの画形式を扱う機能を備えたものがあるが、
その機能は十分ではなく、画形式の切り替えを簡単に行
えるようにすることが要求される。
〔従来の技術と発明が解決しようとする課題〕第2図は
従来のバイト並びを扱うデータ処理装置を説明する図で
あり、(al) 、 (a2)は異なるバイト並びの形
式を示し、(b)は従来の2種のバイト並びに対する扱
い方式を示している。
前述のように、バイトアドレス方式の計算機においては
、(al) 、 (a2)図に示したように、主記憶に
置かれる多バイト長のデータをアクセスするときに、そ
のデータの上位バイトを主記憶の下位アドレスのバイト
データと対応させる(Big−Endian)(昇順)
形式を用いるもの((al)図参照)と、逆に多バイト
長データの下位バイトを主記憶の下位アドレスに対応さ
せる(Little−Indian) (降順)形式を
用いるもの((a2)図参照)とがある。
=6 従来のプロセッサでは、上記の如き、画形式のバイト並
びを扱う、ために、第2図(b)のように、レジスタフ
ァイル(以下、単に、レジスタという)2と主記憶装置
1との間、もしくは演算器3と主記憶装置1との間に、
バイト並び変換器6を備え、データ転送時に、バイト並
びの変換を行っていた。
然し、プロセッサの高速化に伴う主記憶装置1との速度
ギャップにより、データ転送時にバイト並びの変換を行
うことの負荷が無視できないものとなり、この変換処理
が、プロセッサの高速化を妨げる要因の一つになってい
る。
又、従来の装置では、データロード時に取り込むデータ
のバイト並びをあらかじめ知っておく必要があった。そ
のため、主記憶装置1中に異なるデータ並びが混在して
いる場合などでは、予め、いずれのデータ並びであるか
を示す情報を取り込んでからでなければ、該多バイト長
のデータのアクセスができないため、ソフトウェア上の
不都合があった。
該バイトデータの並びを指示する情報は、例えば、主記
憶上の一連のデータの先頭、或いは、最後等に置かれて
いることがある。
従って、主記憶上のこのような構成のデータをアクセス
して、多バイト長データをデータ並びを示す情報よりも
前、若しくは、同時にアクセスしなければならない場合
などにおいては、レジスタ2に取り込んだデータが、演
算器3の並びと異なる場合等があり、該取り込んだデー
タをプログラム手続きなどによって、改めて、ロード、
若しく、変換する必要があった。
本発明は上記従来の欠点に鑑み、上記の如き、Big−
Endian (昇順) 、Little4ndian
(降順)の画形式のバイト並びをサポートしつつ、主記
憶アクセス時の負荷を避け、且つ、画形式のバイト並び
を容易に扱えるデータ処理装置を提供することを目的と
するものである。
〔課題を解決するための手段〕
上記の問題点は下記の如くに構成したデータ処理装置に
よって解決される。
(1)主記憶アクセスを、主記憶装置とレジスタファイ
ル間で行い、すべての演算をレジスタファイル間で行う
ように構成した、所謂、命令縮小型のデータ処理装置で
あって、 該レジスタファイルに置かれた多バイト長データのバイ
ト並びを判別して、バイト並び指示信号■を出力する手
段と。
バイト単位に構成した算術論理演算器(ALU)に入力
される桁上げ7桁下げ信号を、上記バイト並び指示信号
■によって、上位、又は、下位の演算器の出力する信号
から選択する多バイト長算術論理演算器(多バイト長A
LU)を持つように構成する。
(2)上記のデータ処理装置において、上記多バイト長
算術論理演算器(多バイト長ALU)以外の演算器、例
えば、シックに対して、上記レジスタファイルとシック
間にバイト並び変換器(MUX)をもつように構成する
(3)上記のデータ処理装置において、上記多バイト長
算術論理演算器(多バイト長ALU)以外の演算器、例
えば、乗算器に対して、2種類のバイト並びに対応する
2種類の乗算器1,2を有し、上記バイト並び指示信号
■に基づいて、該2種類の乗算器1.又は、2の出力を
選択する手段(セレクタ)を設けるように構成する。
(4)上記の項1〜3のデータ処理装置において、上記
バイト並び指示信号■を生成するバイト並び情報を、該
データ処理装置の内部レジスタ、又は、演算命令コード
中に持つように構成する。
(5)上記の項1〜5のデータ処理装置において、上記
レジスタファイルに、上記演算命令では記述されない仲
介レジスタを設け、該仲介レジスタ間で、上記の項1〜
3に記載の演算を行うように構成する。
〔作用〕
即ち、本発明によれば、主記憶アクセスを、主記憶装置
とレジスタファイル間で行い、すべての演算をレジスタ
ファイル間で行うように構成したデータ処理装置、例え
ば、命令縮小型データ処理装置において、レジスタの出
力は、多バイト長算術論理演算器(多バイト長へLU)
に対して、バイト並びを変えずに接続される。
該多バイト長算術論理演算器(多バイト長ALU)は、
バイト単位の低レベルALUによって構成される。各低
レベルALUの出力するキャリー(桁上げ7桁下げ/シ
フトアウト)ビットは、隣接バイトの低レベルALUに
送られる。
該低レベルALUへの入力キャリーは、隣接バイトのキ
ャリーから、バイト並び指示信号■に従って、下位バイ
ト→上位バイト、或いは、上位バイト峠下位バイトに選
択された後に入力される。
これにより、数値として上位のバイトがレジスタ中の上
位側に格納されていても、下位側に格納されていても、
該バイト並びを意識することなく算術論理演算を行うこ
とが可能となる。
或いは、バイトの並びに対応した2種類の演算器、例え
ば、乗算器1.2を設けておき、該2つの乗算器1.又
は、2の結果から、バイト並び指示信号のに基づいて、
何れかを選択して出力するようにする。
又、レジスタファイルと演算器1例えば、シックとの間
に、バイト並び変換器(MIX)を設けておき、上記バ
イト並び指示信号■に基づいて、バイト並びを変換した
後、該シフタでシフト動作を行わせ、その後、元のバイ
ト並びに変換してシフト結果を出力するように構成する
従って、本発明のデータ処理装置においては、主記憶装
置からレジスタへのデータ転送時に、データ並びの変換
を行わないため、主記憶アクセスの負荷が軽減される。
又、演算器へのデータロード時に、いずれのデータ並び
であるかを知る必要がないため、画形式が混在するデー
タの扱いが容易になる効果が得られる。
〔実施例〕
以下本発明の実施例を図面によって詳述する。
第1図は本発明の一実施例を示した図であり、(a)は
多バイト長算術論理演算器(多バイト長ALU)の構成
例を示し、(b)はシステム構成の例を示している。
本発明においては、バイト並びを意識することなく、レ
ジスタファイル2にデータを転送すると共に、演算器、
例えば、多バイト長算術論理演算器(多バイト長ALU
) 3で算術論理演算を行う際、該多バイト長算術論理
演算器(多バイト長ALU)3をバイト単位の低レベル
の算術論理演算器(ALtl)30で構成しておき、バ
イト並びを指示する信号■によって、例えば、各バイト
単位の低レベルの算術論理演算器(^LU) 30から
のキャリー信号の伝播方向を制御するとか、バイト並び
に対応した演算器、例えば、乗算器を2種類設けておき
、該2つの乗算器1,2での演算結果を、該バイト並び
を指示する信号■で選択するとか、或いは、レジスタフ
ァイル2と演算器、例えば、シフタ50の間に、バイト
並び変換器(MIX) 51.52を設けておき、上記
バイト並び指示信号■によって、該シフタ50への入出
力データのバイト並びを変換する手段が、本発明を実施
するのに必要な手段である。
尚、全図を通して同じ符号は同じ対象物を示している。
以下、第1図によって、本発明のデータ処理装置でのバ
イト並びの違いに対応したデータ処理方式を説明する。
第1図(a)は、本発明の多バイト長算術論理演算回路
の構成例であり、レジスタ、及び、データバスが4バイ
ト長のデータ処理装置での例を示している。
本図の例では、主記憶装置1とレジスタファイル2が直
接に接続されているが、該主記憶装置1とレジスタファ
イル2の間にキャッシュメモリを備えていてもよい。
本発明は、上記の如き、主記憶アクセスを、主記憶装置
lとレジスタファイル2間で行い、すべての演算をレジ
スタファイル2間で行うように構成したデータ処理装置
、例えば、命令縮小型データ処理装置に適用される。
先ず、(b)図に示したように、主記憶装置lからレジ
スタファイル2へのデータロードにおいて、データのバ
イト並びによらず、アドレス指定されたバイトがレジス
タの上位バイト側になるようにロードする。
多バイト長算術論理演算器3は、(a)図に示したよう
にバイト単位の低レベルの算術論理演算器(以下、AL
Uという)30で構成されており、本実施例では、4つ
の低レベルALU30によって構成されていることが示
されている。各低レベルALU30は、レジスタのバイ
ト位置に対応しており、演算の際には、ソースレジスタ
1,220のバイト位置の等しいバイト同志が同し低レ
ベルALU30に入力される。
該ALU30には、バイト並び指示信号■が入力され、
これによって低レベルALU30間のキャリー信号の伝
搬方向が制御される。
本図において、Sol、S02は当該多バイト長ALU
3からのキャリー出力を示し、Sll、S12は当該多
バイト長ALU 3へのキャリー人力を示している。又
、各低レベルALU30間を接続している信号線■が、
キャリー伝播路であり、上記バイト並び指示信号■によ
って、セレクタ(SEL) 31で、上位バイト→下位
バイト、或いは、下位バイト→上位バイトへのキャリー
信号の伝播が行われる。
乗算器は、第1図(b)に示されているように、バイト
並び形式に対応した2種類の乗算器1. 240.41
があり、バイト並び指示信号■によって、セレクタ42
で、その出力が選択されるように機能する。
又、シフタ50は、−度に1ビツトから32ビツトまで
の任意のビット数をシフト (左シフト。
又は、右シフト、又は、サーキュラシフト)可能なもの
である。該シフタ50の前後段に設けられているバイト
並び変換器(MUX) 51.52において、バイト並
び指示信号■に従ってバイト並びが変換される。
即ち、該バイト並び指示信号■によって、バイト並び変
換器(MIX) 51において、シフタ50のバイト並
びに対応したバイト並びに変換された後、シフト動作が
行われ、該シフトされた結果は、バイト並び変換器(M
UX) 52において、再度上記バイト並び指示信号■
によって、元のバイト並びに変換される。
上記バイト並び指示信号■を生成する手段について、以
下に説明する。
前述のように、該バイト並び情報が、主記憶装置1上に
置かれている一連のデータ列の先頭、或いは、最後に置
かれている場合には、該データ列の構成はプログラムが
知っているので、該プログラム手段によって、該バイト
並び情報を、例えば、レジスタファイル2の特定のレジ
スタ、或いは、専用のフラグレジスタ21(第1図(a
)参照)に設定することで、該バイト並び指示信号■を
生成することができる。
又、該バイト並び情報を、各種の演算命令のコード中に
持たせておくことで、該演算命令が図示されていない命
令レジスタに設定された時点等で該バイト並び指示信号
■を出力させることができる。
又、上記実施例においては、レジスタファイル2間の演
算に対して、該バイト並び処理を行う例で説明したが、
例えば、メモリーメモリ間、メモリーレジスタ間等の命
令に対しては、上記レジスタファイル2内に、該演算命
令のコードで記述されない仲介レジスタ20を設けてお
き、該メモリメモリ間、メモリーレジスタ間等の命令が
検出されたとき、該仲介レジスタ20を介して、上記バ
イト並びに対応した処理を実行するように構成すること
で、該メモリーメモリ間、メモリーレジスタ間等の命令
に対しても、本発明の演算を提供することができる。
このように、本発明は、バイト並びを意識することなく
、レジスタファイル2にデータを転送すると共に、演算
器、例えば、多バイト長算術論理演算器(多バイト長A
LU) 3で算術論理演算を行う際、該多バイト長算術
論理演算器(多バイト長ALU) 3をバイト単位の低
レベルの算術論理演算器(ALU) 30で構成してお
き、バイト並びを指示する信号■によって、例えば、各
バイト単位の低レベルの算術論理演算器(^LU) 3
0からのキャリー信号の伝播方向を制御するとか、バイ
ト並びに対応した演算器、例えば、乗算器を2種類設け
ておき、該2つの乗算器1. 240.41での演算結
果を、該バイト並びを指示する信号■で選択するとか、
或いは、レジスタファイル2と演算器、例えば、シック
500間に、バイト並び変換器(MIIX) 51.5
2を設けておき、上記バイト並び指示信号■によって、
該シック50への入出力データのバイト並びを変換する
ようにした所に特徴がある。
〔発明の効果〕
以上、詳細に説明したように、本発明のデータ処理装置
は、主記憶アクセスを、主記憶装置とレジスタファイル
間で行い、すべての演算をレジスタファイル間で行うよ
うに構成したデータ処理装置、例えば、命令縮小型デー
タ処理装置において、該レジスタファイルに置かれた多
バイト長データのバイト並びを判別して、バイト並び指
示信号■を出力する手段と、バイト単位に構成した算術
論理演算器(ALU)に入力される桁上げ7桁下げ信号
を、上記バイト並び指示信号のによって、上位。
又は、下位の演算器(ALU)の出力する信号から選択
する多バイト長算術論理演算器(多バイト長^LU)を
持つように構成する。又、上記多バイト長算術論理演算
器(多バイト長ALU)以外の演算器(シフタ等)に対
して、上記レジスタファイルと演算器間にバイト並び変
換器(MUX)をもつように構成する。又、上記多バイ
ト長算術論理演算器(多バイト長ALU)以外の演算器
(乗算器等)に対して、2種類のバイト並びに対応する
2種類の演算器(乗算器1.2)を有し、上記バイト並
び指示信号■に基づいて、該2種類の演算器の出力を選
択する手段(セレクタ)を有するようにしたものである
ので、レジスタへのデータロード時に、バイト並びを意
識することなく演算器にロードすることが可能となる効
果を奏し、かかるコンピュータシステムの性能向上に寄
与するところが大きいという効果が得られる。
【図面の簡単な説明】
第1図は本発明の一実施例を示した図。 第2図は従来のバイト並びを扱うデータ処理装置を説明
する図。 である。 図面において、 ■は主記憶装置。 2はレジスタファイル、又は、レジスタ。 3は多バイト長算術論理演算器(多バイト長ALU) 
。 30はバイト単位の算術論理演算器(ALU)。 40は乗算器1.   41は乗算器2゜42はセレク
タ、50はシフタ。 51.52はバイト並び変換器(MIX) 。 6はバイト並び変換器。 ■はバイト並び指示信号。 をそれぞれ示す。 1ヒ言己憶 1言己憶 従来のバイト並びを扱うデータ処理装置を説明する図第 図 (その1) 第 図 (その2)

Claims (5)

    【特許請求の範囲】
  1. (1)主記憶アクセスを、主記憶装置(1)とレジスタ
    ファイル(2)間で行い、すべての演算をレジスタファ
    イル(2)間で行うように構成したデータ処理装置であ
    って、 該レジスタファイル(2)に置かれた多バイト長データ
    のバイト並びを判別して、バイト並び指示信号([1]
    )を出力する手段(21)と、バイト単位に構成した算
    術論理演算器(ALU)(30)に入力される桁上げ/
    桁下げ信号を、上記バイト並び指示信号([1])によ
    って、上位、又は、下位の算術論理演算器(ALU)(
    30)の出力する信号から選択する多バイト長算術論理
    演算器(多バイト長ALU)(3)を持つことを特徴と
    するデータ処理装置。
  2. (2)上記のデータ処理装置において、上記多バイト長
    算術論理演算器(多バイト長ALU)(3)以外の演算
    器に対して、上記レジスタファイル(2)と演算器(5
    0)間にバイト並び変換器(MUX)(51、52)を
    もつことを特徴とするデータ処理装置。
  3. (3)上記のデータ処理装置において、上記多バイト長
    算術論理演算器(多バイト長ALU)(3)以外の演算
    器に対して、2種類のバイト並びに対応する2種類の演
    算器(40、41)を有し、上記バイト並び指示信号(
    [1])に基づいて、該2種類の演算器(40、41)
    の出力を選択する手段(セレクタ)(42)を有するこ
    とを特徴とするデータ処理装置。
  4. (4)上記請求項1〜3のデータ処理装置において、上
    記バイト並び指示信号([1])を生成するバイト並び
    情報を、該データ処理装置の内部レジスタ(21)、又
    は、演算命令コード中に持つことを特徴とするデータ処
    理装置。
  5. (5)上記請求項1〜5のデータ処理装置において、上
    記レジスタファイル(2)に、上記演算命令では記述さ
    れない仲介レジスタ(20)を設け、該仲介レジスタ(
    20)間で、請求項1〜3に記載の演算を行うことを特
    徴とするデータ処理装置。
JP2172010A 1990-06-29 1990-06-29 データ処理装置 Pending JPH0460831A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2172010A JPH0460831A (ja) 1990-06-29 1990-06-29 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2172010A JPH0460831A (ja) 1990-06-29 1990-06-29 データ処理装置

Publications (1)

Publication Number Publication Date
JPH0460831A true JPH0460831A (ja) 1992-02-26

Family

ID=15933854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2172010A Pending JPH0460831A (ja) 1990-06-29 1990-06-29 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0460831A (ja)

Similar Documents

Publication Publication Date Title
KR910000364B1 (ko) 이뮬레이션 시스템 및 그 방법
US5819117A (en) Method and system for facilitating byte ordering interfacing of a computer system
US4675806A (en) Data processing unit utilizing data flow ordered execution
KR970022770A (ko) 데이타처리장치
JP2001516916A (ja) デジタル信号処理能力を有するデータ処理装置
NO843839L (no) En liten hukommelse for anvendelse i en sentra databehandlingsenhet
US5682531A (en) Central processing unit
KR19980023918A (ko) 2종류의 명령장 코드를 실행하는 프로세서 및 그 명령 코드입력 장치
US4339793A (en) Function integrated, shared ALU processor apparatus and method
JPH1049369A (ja) データ処理装置
JP2617974B2 (ja) データ処理装置
US5265204A (en) Method and apparatus for bit operational process
JP2000322235A (ja) 情報処理装置
JP2690406B2 (ja) プロセッサおよびデータ処理システム
JPH034936B2 (ja)
JPH0460831A (ja) データ処理装置
US5034900A (en) Method and apparatus for bit operational process
US5175816A (en) Method and apparatus for bit operational process
US4604722A (en) Decimal arithmetic logic unit for doubling or complementing decimal operand
JPH0522935B2 (ja)
JPS619725A (ja) マイクロプログラム制御回路
JPS6312025A (ja) 加減算装置
JP2667018B2 (ja) 情報処理装置
JP2756175B2 (ja) デュアルプロセッサ構成dspの符号付与方法
US6286081B1 (en) Mechanism for ensuring data coherency during sequential readings of portions of data that changes with time