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

データ処理装置

Info

Publication number
JPH04109337A
JPH04109337A JP2231964A JP23196490A JPH04109337A JP H04109337 A JPH04109337 A JP H04109337A JP 2231964 A JP2231964 A JP 2231964A JP 23196490 A JP23196490 A JP 23196490A JP H04109337 A JPH04109337 A JP H04109337A
Authority
JP
Japan
Prior art keywords
data
register
comparison
instruction
address
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
JP2231964A
Other languages
English (en)
Other versions
JPH0831032B2 (ja
Inventor
Kunio Tani
国雄 谷
Toyohiko Yoshida
豊彦 吉田
Yukari Takada
由香里 高田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2231964A priority Critical patent/JPH0831032B2/ja
Publication of JPH04109337A publication Critical patent/JPH04109337A/ja
Priority to US08/327,823 priority patent/US5497468A/en
Publication of JPH0831032B2 publication Critical patent/JPH0831032B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • G06F7/026Magnitude comparison, i.e. determining the relative order of operands based on their numerical value, e.g. window comparator
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30021Compare instructions, e.g. Greater-Than, Equal-To, MINMAX
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Optimization (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、データ処理装置に関し、特にストリングの操
作を高速で実行可能なデータ処理装置に関する。
[従来の技術] −Cにマイクロプロセッサ等のデータ処理装置において
は、8ビツト、16ビノト5または32ビツトのデータ
(以下、それぞれのデータをエレメントと称す)を任意
の数だけ連続して並べたデータ(以下、これをストリン
グと称す)の転送、比較検索等の処理を行う。従来のデ
ータ処理装置においてそのような処理を行う場合、エレ
メント単位での転送、比較5検索をストリングの長さに
応した回数だけ反復することによって任意長のストリン
グの転送、比較、検索を実行していた。
このようなストリングの転送を行うマイクロプロセッサ
の従来例としては、例えばインテル社のr:486TM
  PROCESSORPROGRAMMER’  R
EFERENcE門A71UAL 1990 Jの3.
6章に詳しく記載されている。
[発明が解決しようとする課題] 従来のマイクロプロセッサ等のデータ処理Wl’?にお
いて、エレメント単位でのデータの転送、比較、検索を
行う場合、操作の対象となるエレメントii位のデータ
と、命令の終了を指定する比較値とを演′n器で比較す
ることにより命令終了条件を検出している。しかし、エ
レメントのザイズが8ピノl−,16ビソトである場合
、例えば32ビット輻の演算器では残りの24ビツト、
16ビソ)・が比較に使用されず、ストリングの転送、
比較、検索を行う命令の実行に際し”ζ処理速度の高速
化が図れないう問題点があった。
本発明上述のような問題点を解決するためになされたも
のであり、ストリングを構成する各エレメントのビット
数が演算器のビット幅のたとえば2あるいはAであるよ
うな場合に、ストリングを操作する命令を高速実行し得
るデータ処Pl装置の提供を目的とする。
[a!題を解決するための手段〕 本発明のデータ処理装置の第1の発明は、命令をデコー
ドする命令デコーダと、このデコーダに接続されていて
比較の対象となるデータを保持するレジスタと、比較す
るデータを保持するレジスタと、両レジスタに接続され
たたとえば32ビソト幅の演算器と、この演算器による
たとえば各8ビツトのデータの比較結果について論理和
演算と論理積演算とをそれぞれ行う比較’l’JI定回
路と全回路iiiえている。
また第2の発明では、ストリングの転送を行う命令をデ
コードする命令デコーダと、この命令デコーダに接続し
ていて操作の対象となるストリングの先頭アドレスを保
持するアドレスレジスタと、このアドレスレジスタに保
持されているアドレスで指定される複数のデータエレメ
ントにて構成されたデータをデータ入出力回路からフェ
ッチして保持するレジスタと、転送すべきストリングの
データと同数のデータエレメント数にて構成された比較
データを保持するレジスタと、両レジスタに接続された
たとえば32ビ、ト幅の演算器と、この演算器の各8ピ
ントのデータの比較結果の論理和演算を行う比較判定回
路とを備えている。
また第3の発明では、ストリングの比較を行う命令をデ
コードする命令デコーダと、この命令デコーダに接続さ
れていて被比較ストリングのエレメント数を保持するレ
ジスタ(デクリメンタ)と、被比較ストリングの先頭ア
ドレスを保持するアドレスレジスタと、このアドレスレ
ジスタに保持されている71ルスで指定される複数のデ
ータエレメントにて構成されたデータをデータ入出力回
路からフェッチして保持するレジスタと、比較ストリン
グの先頭アドレスを保持するアドレスレジスタと、この
アドレスレジスタのアF゛レスで指定される複数のデー
タニレメンi−からなるデータをデータ入出力回路から
フェッチして保持するレジスタと、両レジスタに接続さ
れた32ビツト輻の演算器と、この演算器の各8ピント
のデータの比較結果とデクリメンタで計算された処理す
べき残りエレメント数とが演算器で一度に比較可能なエ
レメント数以下になった場合に検出される検出信号の論
理和演算を行う比較判定回路と有する。
[作用] 本発明のデータ処理装置は、その第1の発明では、たと
えば8ビツト毎に検出された4つの比較結果の論理和演
算を比較判定回路で行うことによって各8ビツトのエレ
メントにて構成される4個のデータの比較を並列処理し
、各8ビツトについて検出された4つの比較結果の2つ
ずつの論理積の論理和演算を比較判定回路で行うことに
よって]6ビノhのエレメントにて構成されるデータの
比較動作が2つ並列実行され、また各8ビツト毎に検出
された4つの比較結果の論理積演算を行うことによって
32ビットサイズのエレメントにて構成されるデータの
比較動作が実行される。
また第2の発明では、たとえば8ビツト、16ビノトの
エレメントサイズにて構成され、最後のデータエレメン
トのみが比較値と同一であるストリングデータを転送す
る命令を実行する場合、メモリからフェッチされた転送
対象エレメントを4つまたは2つ保持する32ビy I
・のレジスタの値と比較値を保持する32ビツトのレジ
スタの値とをそれぞれの8ビツトまたは16ビノト同士
で比較し、検出された4つまたは2つの比較結果の論理
和演算を比較判定回路で行うことによって、8ビツト1
6ビノトサイズのエレメントにて構成される転送対象デ
ータの最後のデータエレメントの検索13作が並列に実
行され、−度に4つまたは2つのエレメントを同時に処
理する動作が反復されてス[・リングデータが転送され
る。
また第3の発明では、各8ピノ)・、16ビノトのエレ
メントサイズにて構成される2つのストリングデータを
比較する命令を実行する場合、操作対象エレメントの数
をデクリメンタに保持し、メモリからフェッチされた2
つの比較対象ストリングをそれぞれ8ビツトサイズであ
れば4つまたは16ビノトサイズであれば2つ保持する
32ビットの2つのレジスタのイ直を各8ビツトまたは
16ビソト同士で比較し、この比較結果とデクリメンタ
の値とが演算器で比較可能なエレメント数以下になった
時点で検出される検出信号との論理和演算を比較判定回
路で行うことにより、−度に複数のニレメンI・の比較
を並列に行う処理が反復されてストリングデータの比較
処理が行われる。
(以 下−余A白) ・ご−ノ [発明の実施例1 以下、本発明をその実施例を示す図面を参照して詳述す
る。
(1)「ストリング命令の説明」 本発明のデータ処理装置は、データの転送あるいは算術
演算、シフト、論理演算等の命令を実行する他、ストリ
ング操作命令と称される4種類の命令を実行することが
可能である。
ストリングとは、8ビット、16ビソトまたは32ビツ
トのデータを任意の数だけ連続して並べたデータのクイ
ブである。ストリング操作命令には、ストリングの転送
を行う5M0V命令、ストリングの比較を行うSCMP
命令、ストリングの中から特定の条件を満たず要素を捜
しだすS S CH命令、予め指定された値をストリン
グの要素として繰返し書込みを行う5STR命令等があ
る。
これらの命令は、8.16または32ビツトのデータに
て各1文字が表される文字列を処理する他、特定のビッ
トパターンのサーチ、メモリのブロック転送、構造体の
代入、メモリ領域のクリア等にも使用される。操作の対
象となるストリングの範囲を示す方法には、以下の2通
りの方法がある。
・ストリングの長さくエレメント数)を指定する方法 ストリングの終了を示す文字(ターミ不一り)を指定す
る方法 本発明のデータ処理装置ではストリング操作に際しては
エレメント数がパラメータとなっており、更に割出し条
件という形でターミネータあるいは命令の終了条件を与
えることができる。また、ストリング命令の割出し条件
として大小比較及び2値比較を含む豊富な割出し条件が
指定可能に構成されている。これらのストリング命令の
内の5M0V命令、 SCMP命令及び5S(Jl命令
は、所定のエレメント数を対象とした一回の転送、比較
、検索が終了する都度、次に操作されるべき全エレメン
トについてエレメント値と比較値とが比較されて割出し
条件がチヱソクされる。全てのエレメントで割出し条件
が成立しなかった場合は、所定のエレメント数だけ転送
、比較、検索が行われる。
以下では上述の4白令の内からshow命令とSCMP
命令とを例にとり、その処理方法を説明する。また、ス
)・リング命令の割出し条件として、2埴比較の条件を
指定した場合について説明する。
第16図f8+は5M0V命令の、第16図tb+はS
 CM 11命令のオペレーションコードをそれぞれ表
した模式図である。
第16図fat及びib)において、”SX”にて示さ
れている2ビツトはエレメントサイズとυ]出し条件の
比較値のサイズとを指定し、SX =”OO”であれば
8ビツトを、SX−“01″であれば16ビノトを、“
s×−10″であれぽ32ビツトをそれぞれ指定する。
また、”ビにて示されている1ビットは、“ビー“0”
である場合にはストリング操作の処理をアドレスの増加
方向へ進めることを指定し、“b”−”1”である場合
にはストリング操作の処理をアドレスの減少方向へ進め
ることを指定する。
更に、eeee”にて示されている4ビツトは指定可能
な比較割出し条件を指定する。“eeee”の4ビット
により指定可能な条件とそのピッ1−パターンとを第1
7図に示す。
各ピッ1−パターンにて指定可能な条件は具体的には大
小関係2等/不等関係及び条件無しである。
(2)「機能ブロックの構成」 第1図は本発明のデータ処理装置の全体構成を示すブロ
ック図である。
本発明のデータ処理装置の内部を機能的に大きく分ける
と、命令フェンチ部1.命令デコート部2、PC計算部
3.オペランドアドレス計算部4゜マイクロROM部5
.データ演算部6.外部バスインクフェイス部7に分か
れる。
第1図ではその他に、CPU外部ヘアドレスを出力する
アドレス出力回路8と、CPU外部とデータを入出力す
るデータ入出力回路9とを他の機能ブロック部と分けて
示しである。
(2,1,)  r命令フェッチ部J 命令フェッチ部1には命令キャッシュ、命令キュー及び
その制御部等があり、次にフェッチすべき命令のアドレ
スを決定して命令キャッシュあるいはCPU外部のメモ
リから命令をフェッチする。
また、命令フェッチ部1は命令キャッシュへの命令登録
も行う。
次にフェッチすべき命令のアドレスは命令キューに入力
されるべき命令のアドレスとして専用のカウンタにおい
て計算される。分岐、ジャンプが発生した場合には、新
たな命令のアドレスがPC計算部3またはデータ演算部
6から転送されてくる。
命令フェッチ部1がCPI+外部のメモリから命令をフ
ェッチする場合は、フェッチすべき命令のアドレスを外
部バスインタフェイス部7を通じてアドレス出力回路8
からCPU外部へ出力し、データ入出力回路9から命令
コードをフェッチする。
バッファリングした命令コードの内、命令デコード部2
で次にデコードすべき命令コードが命令デコード部2へ
出力される。
(2,2)  r命令デコード部」 命令デコード部2では基本的には托ビット(ハーフワー
ド)単位で命令コードをデコードする。
この命令デコード部2には第1ハーフワードに含まれる
オペレーションコードをデコードするFHW(Firs
t t(air Word)デコーダ、第2及び第3ハ
ーフワードに含まれるオペレーションコードをデコード
するNFI(W(Not First Half Wo
rd)デコーダアドレッシングモードをデコードするア
ドレソンングモードデコーダが含まれる。
また、Fl+Wデコーダあるいは)iFB−デコーダの
出力を更にデコートしてマイクロROMのエン)・リア
ト゛レスを計算する第2デコーダ、条件分岐命令の分岐
予測を行う分岐予測機構1オペランドアドレス計算に際
してパイプラインコンフリクトをチエツクするアドレス
計算コンフリクトチエ、り機構も含まれる。
命令デコード部2は命令フェッチ部1から人力された命
令コードを2クロツクにつき0乃至6ハイトの割合でデ
コードする。デコード結果の内、データ演算部6での演
算に関係する情報がマイクロROM部5へ、オペランド
アドレス計算に関係する情報がオペランドアドレス計算
部4へ、PC計算に関係する情報がpc計算部3へそれ
ぞれ出力される。
(2,31rマイクロROM部」 マイクロROM部5には主にデータ演算部6を制御する
マイクロプログラムが格納されているマイクロROM、
  マイクロシーケンザ、マイクロ命令デコーダ等が含
まれる。
マイクロ命令はマイクロ1ionから2クロツクにつき
1度読出される。マイクロシーケンサはマイクロプログ
ラムにより示されるンーケンス処理の他に、例外1割込
及びトラップ(この3つを併せてEITと称す)の処理
をハードウェア的に受付ける。また、マイクロROM部
5はストアバソファの管理も行う。マイクロROM部1
部5には命令コードに依存しない割込み、演算実行結果
によるフラッグ情報と、第2デコーダの出力等の命令デ
コード部2の出力とが入力される。マイクロデコーダの
出力は主にデータ演算部6へ出力されるが、ジャンプ命
令の実行の際の他の先行処理中止情報等の一部の情報は
他のブロックへも出力される。
(2,4)  rオペランドアドレス計算部Jオペラン
ドアドレス計算部4は、命令デコード部2のアドレス出
力回路等から出力されたオペランドアドレス計算に関係
する情報によりハードワイヤードに制御される。
このオペランドアドレス計算部4ではオペランドのアド
レス計算に関するほとんどの処理が行われる。メモリ間
接アドレッシングのためのメモリアクセスのアドレスあ
るいはオペランドアドレスがメモリにマツプされたI 
/ O領域に入るか否かのチエツクも行われる。
オペランドアドレス計算部4によるアドレス計算結果は
外部バスインクフヱイス部7へ送られる。
またこのオペランドアドレス計算部4におけるアドレス
計算に必要な汎用レジスタ及びプログラムカウンタの値
はデータ演算部6から人力される。
オペランドアドレス計算部4がメモリ間接アドレノソン
グを行う場合は、参照すべきメモリアドレスを外部バス
インクフェイス部7を通じてアドレス出力回路8からC
PU外部へ出力し、データ入出力部9から入力された間
接アドレス値を命令デコード部2をそのまま1lilJ
させてフェッチする。
(2,5)  rPc計算部J PC計算部3は命令デコード部2から出力されるPC計
算に関係する情報でハードワイヤードに制御され、命令
のPC(直を計算する。
本発明のデータ処理装置は可変長命令上ノドを有してお
り、命令をデコードした後でないとその命令の長さが判
明しない。このため、PC計算部3は命令デコード部2
から出力される命令長をデッド中の命令のPC(iに加
算することにより、次の命令のPC値を生成する。また
、命令デコード部2が分岐命令をデコードしてデコード
段階での分岐を指示した場合は、命令長の代わりに分岐
変位を分岐命令のpc値に加算することにより分岐先命
令のPC(直を計算する。
分岐命令に対して命令デコード段階で分岐を行うことを
本発明のデータ処理装置ではブリブランチと称する。
プリブランチの手法については特開昭63−59630
号公報及び特開昭63−55639号公報Gこおいて詳
しく述べられている。
pc計算部3の計算結果は各命令のpc値として命令の
デコード結果と共に出力される他、ブリブランチ時には
次にデコードすべき命令のアドレスとして命令フェッチ
部1へ出力され、更に次に命令デコード部2でデコード
される命令の分岐予測のためのアドレスにも使用される
分岐予測の手法については特開昭63−175934号
公報において詳しく述べられている。
(2,6)  rデータ演算部」 データ演算部6はマイクロブ11グラムによすIJ御さ
れ、マイクロROM部5が出力する情報に従って各命令
の機能を実現するために必要な演算をレジスタと演算器
とで実行する。
演算対象となるオペランドがアドレスまたは即値である
場合には、データ演算部6はオペランドアドレス計算部
4で計算されたアドレスまたは即値を外部バスインタフ
ェイス部7を通じて得る。
また、演算対象となるオペランドがCPU外部のメモリ
にあるデータである場合には、データ演算部6はアドレ
ス計算部4で計算されたアドレスをバスインクフェイス
部7にアドレス出力回路8がら出力させ、これに応して
CPU外部のメモリがらフJ−7チしたオペランドをデ
ータ入出力回路9がら得る。
データ演算部6には、演算器としてはΔLll  バレ
ルシフタ1 プライオリティエンコーダ、カウンタ、ソ
フトレジスタ等が備えられている。レジスタと主な演算
器との間は3ハスで結合されており、1つのレジスタ間
演算を指示する1マイクロ命令は2クロツクサイクルで
処理される。
データ演算tこ際してデータ演算部6がCPU外部のメ
モリをアクセスする必要がある場合は、マイクロプログ
ラムの指示により外部ハスインクフェイス部7を通じて
アドレス出力回路8がらアドレスをCPU外部へ出力さ
せることにより、データ入出力回路9を通じて目的のデ
ータをフェッチする。
CPU外部のメモリにデータをストアする場合は、デー
タ64算部6は外部バスインクフェイス部7を通じてア
ドレス出力回路8がらアドレスを出力すると同時にデー
タ入出力回路9がらデータをCPII外部へ出力する。
オペランドストアを効率的に行うためにデータ演算部6
は4ハイドのストアバッファを有している。
ジャンプ命令の処理あるいは例外処理等を行って新たな
命令アドレスをデータ演算部6が得た場合は、これを命
令フェッチ部1とPC計算部3とへ出力する。
(2,7)  r外部バスインクフェイス部」外部バス
インタフェイス部7は本発明のデータ処理装置の外部バ
スでの通信を制御する。メモリのアクセスは全てクロッ
ク同期で行われ、最小2クロックサイクルで行うことが
できる。
メモリに対するアクセス要求は、命令フェッチ部l、ア
ドレス計算部4.データ演算部6がらそれぞれ独立して
発生する。外部バスインクフェイス部7はこれらのメモ
リアクセス要求を調停する。
更に、メモリとCP[Iとを結ぶデータバスサイズであ
る32ビツト(lワード)の整置境界を跨ぐメモリ番地
にあるデータのアクセスは、この外部バスインクフェイ
ス部7内で自動的にワード境界を跨くことを検知して2
回のメモリアクセスに分解して行う。
ブリフェッチされるオペランドとストアされるオペラン
ドとが重なる場合のコンフリクト防止処理及びストアオ
ペランドがらフェッチオペランドヘノバイパス処理もこ
の外部バスイ7り’)エイス部7において処理される。
(以 下 余:1白) (3)[ストリング命令の実行に関連するデータ演算部
構成」 第2図は、本発明のデータ処理装置のストリング命令の
実行に必要な要部の構成を示すブロック図である。まず
その構成について説明する。
参照符号10.1+、、 12は32ビツトバスであり
、それぞれSlハス、 S2ハス、DOババス称される
13、14は、外部メモリをアクセスする際にアクセス
すべきアドレスを七)卜する32ビツトのメモリアドレ
スレジスタであり、13はAAIレジスタと称され、1
4はAA2レジスタと称される。両レジスタ1.3.1
4へのアドレスの入出力はそれぞれS1ハス10を介し
て行われる。また、メモリアドレスレジスタ1.3.1
4にはカウント値指定しノスタ1.5.16がそれぞれ
備えられており、′ド、°ト、“3”または“4”のイ
ンクリメント及びデクリメントが可能である。
】7はN個の32ビットレジスタで構成されるレジスタ
ファイルであり、ROレジスタからIt(It−1)レ
ジスタGこて構成されている。各レジスタ110. R
1・・・は110バス12からの入力経路と、S1バス
10及びS2バス11への出力経路とを(ANえている
ALUレジスタ(A)1.8と八1、Uレジスタ(B)
19 とは共に33ビツト (32ビット+lピノl−
の拡張ビット)のレジスタであり、S1ハス10とS2
ハス11とからの入力経路及びALυ22への出力経路
とを有する。両A1..lIレジスク18.19はサイ
ズ、符号に応じて入力データを33ビットデータに符号
拡張または0拡張する。
ALU22はA1、Uレジスタ(A)18 とALUレ
ジスタ(B)19とから送られてくるデータ間の加減算
及び論理演算を実行し、結果をSレジスタ27へ出力す
る。
また、A1゜U22は8ビット単位でデータの一致、不
一致を検出し、結果をストリング比較結果1゛す足回路
23へ出力する。
20はデクリメンタであり、S2ハス11からの人力経
路とDOババス2及びA1.U22への出力経路とを有
する。デクリメンタ20は32ビツト輻のレジスタであ
り、−度に“ビ、”2″、′3”または“4″だけデク
リメントするカウント値指定レジスタ21と、自身の値
が“0′になった場合に“1″がセソl□されるゼロフ
ラグ部26とを備えている。
25、28は32ビツトのメモリデータレジスタ(1)
メモリデータレジスタ(2)であり、共に外部メモリへ
書込むデータあるいは外部メモリから続出されたデータ
を格納するためのレジスタである。両しジスク25.2
8はDOババス2からの入力経路とS1バス10及びS
2バス11への出力経路とをそれぞれ備えている。
24はメモリデータをワード整置するための!I!置装
路である。メモリをアクセスする際には必ず整置回路2
4を通じて行われる。
23はストリング比較結果判定回路である。ALL12
2で比較された比較結果とデクリメンタ20の値と、ス
トリング比較結果保持レジスタ29の値とから、2つの
データに対して一致、不一致を検出してストリング命令
の実行を終了するか否かを決定する。
更にストリング比較結果判定回路23は、デクリメンタ
20の値を更新するカウント値指定レジスタ21の値と
、メモリアドレスレジスタ13.14の値を更新するカ
ウント値指定レジスタ15.16の値とをセットする。
また、一致、不一致結果をストリング比較結果保持レジ
スタ29に書込み、デスティネーション側に書込むソー
スデータのデータサイズを整置回路24へ出力する。
ストリング比較結果保持レジスタ29は5(JIP命令
実行時に比較の対象となる第1のソースデータと比較値
との比較結果をストリング比較結果判定回路23から入
力して保持し、第1のソースデータと第2のソースデー
タとを比較する際に再びストリング比較結果判定回路2
3へ比較結果を出力する。
(3,1)  rALIJの構成」 本発明のデータ処理装置は、命令の実行制御をマイクロ
プログラム制御方式で行っている。
第3図にALU制御関係の各マイクロフィールドで指定
可能なオペレーションの定義内容を示す。
まず、この第3図を参照して各マイクロフィールドにつ
いて説明する。
SUフィールドはALu22の符号拡張/ゼロ拡張を指
定する。^LU22は、ALUレジスタ(A)18また
はA L [、ルジスタ(B)19にオペラン1′を取
込む際に符号拡張/ゼロ拡張を行う。
AOPフィールドはALII22が実行する演算を定義
する。本発明のデータ処理装置に使用されているALU
22は加算器を基本とした算術演算回路に論理積、論理
和などの論理演算回路の機能を有しており、AOPフィ
ールドの指定により加算、減算、論理積、論理和及び比
較の各演算を行う。
DへフィールドとDBフィーJレドと(まそれぞれ^L
Uレジスタ(A) +8とALUレジスタ(B)19と
の入力制御′nを指定する。具体的には、S1バス10
またはS2バス11)から入力したデータをそのままA
LU22へ転送する。 Slバス10またはS2ハス1
1から入力したデータを反転してALU22へ転送する
。  ALUレジスタ(AN8またはALUレジスタ(
B)19をクリアするデータ入力を行わないのいずれか
の処理が可能である。
ZAAl−ルドはALII22がS2バス10からAL
Uレジスク(AH8にオペランドを取込む際に、符号/
ゼロ拡張を行うサイズをワード(32ビツト)、 ハー
フワード(16ビノ)−)4 ハイド(8ビツト)のい
ずれかで指定する。
ZBフィール1′はA1.1I22がS2バス11から
ALUレジスタ(B) +9にオペランドを取込む際に
、符号/ゼロ拡張を行うサイズをワード、ハーフワード
、ハイドのいずれかで指定する。
へ〇〇フィールドはALU22が実行した演結果をいず
れへ出力するか、またいずれのレジスタからり。
バス12へ出力するかを指定する。具体的には、演算結
果をALII22へ戻す、Sレジスタ27の内容をDO
ハス12へ出力する。  ALII22からDOハス1
2への出力を禁止するのいずれかが指定可能である。
第4図は、本発明のデータ処理装置に使用されているA
LU22のファンクションを、ALU制1ffll関係
の各マイクロフィールドで指定可能なオペレーノヨンの
組合せで定義した一覧表である。
AL1122は各命令の機能を実現するために必要な演
算を、マイクロプログラムの制御により各ファンクショ
ンを組合せることにより処理する。
第5図は本発明のデータ処理装置に備えられているAL
L122の構成を示すブロック図である。
本発明のデータ処理装置に備えられているALU22は
、加算器を基本とした算術演算回路に論理積論理和等を
行うための論理演算回路の機能を併せ持っている。
第5図において、参照符号Boo〜B31はALU22
の各1ビツト回路を示している。これらの各1ビツト回
路Boo−831はそれぞれALUレジスタ(^)+8
からの人力経路IA00−1八31と、A1.lIレジ
スタ(809からの入力経路IBOO〜1831と、演
算結果をSレジスタ27へ出力する経路oOO〜031
とを有している。
また、ALt122は減算を行う際に値“1”が人力さ
れる入力経路30と、演算結果がオーバフローまたはア
ンダーフローした場合にセットされる■フラグ、負にな
った場合にセットされるLフラグ、加減算の桁上がり1
桁下がりを示すXフラグ等を生成するための出力経路3
1も有している。更に、本実施例のALL122は4ビ
ツト毎にCLA (Carry Looktl e a
 d ) C1〜C4を有していて演算の高速化を図っ
ている。
また、ALII22は入力された二つのデータに対して
1ビツト毎に排他的論理和をとった値の反転信号を入力
とするNAlIDゲート41〜48と、その出力信号を
人力とするNORゲー)51〜54と、その出力信号を
人力とするインバータ61〜64とを備えており、各N
ORゲー)・51〜54の出カフ1〜74と各インバー
タ61〜64の出力81〜84とをストリング比較結果
判定回路へ出力する経路を有する。
NORゲー)51の出力信号71が”1”であれば1ハ
イド目のデータが一致した事を、NORゲート52の出
力信月72が“1”であれば2バイト目のデータが一致
した事を、NORゲート53の出力信号73が“ビであ
れば3バイト目のデータが一致した事を、NORゲート
54の出力信号74が°1”であれば4ハイド目のデー
タが一致した事をそれぞれ示す。
インバータ61の出力信号81が“ビであれば1ハイド
目のデータが不一致した事を、インバータ62の出力信
号82が“1”であれば2バイト目のデータが不一致し
た事を、インバータ63の出力信号83が“l”であれ
ば3バイト目のデータが不一致した事を、インバータ8
4の出力信号が“1”であれば4ハイド目のデータが不
一致した事をそれぞれ示す。
(3,2)、  rストリング比較結果判定回路」第6
図はALII22.  ストリング比較結果創定回路2
3、カウント値指定しノスタ15.1.6及び21.整
置回路24.デクリメンタ20.比較結果保持レジスフ
29の接続関係の詳細を示したブロック圓である。
ALII22は1ハイド毎にデータの比較を行い、比較
が一致した場合に“1“になるNORゲート51〜54
の出力信号71〜74と不一致した時に“ビになるイン
バータ61〜64の出力信号81〜84とにて構成され
る8ビツトの信号92をストリング比較結果判定回路2
3へ出力している。
デクリメンタ20はその値が“4″以下の値になった場
合にその値を示ず2ビツトの信号93をストリング比較
結果判定回路23へ出力している。
またストリング比較結果判定回路23は比較結果保持レ
ジスタ29からの入力経路97を有している。
ストリング比較結果判定回路23は、L U 22の比
較結果とデクリメンタ20の値とから比較値のデータサ
イズに応してデクリメンタ20の値を更新するためのカ
ウント値指定レジスタ21の値をセットする2ビットの
信号94と、アドレスレジスタ13.14の値を更新す
るためのカウント値指定レジスタ1516の値をセット
する経路95と、デスティ7−ンヨン側に書込むソース
データのデータサイズを示ず2ビツトの信号を整置回路
24へ出力する経路96と、比較結果を比較結果保持レ
ジスタ29にセットする経路98とを有している。
ストリング比較結果判定回路23は、ALII22から
出力された1バイト毎の比較結果の論理和演算を行うこ
とにより、8ピノまたは16ビソ1−のエレメントサイ
ズで構成されるストリングデータの比較動作を並列に行
い、更に各1バイトの比較結果を論理積演算することに
より、32ビットのエレメントサイズで構成されるスト
リングデータの比較動作を行う。ストリング比較結果判
定回路23が各カウント値指定レジスタ15.16.2
1へ出力する2ビットの信号95.94は、”00”=
1.“01”=2.”10”−3“11″・4のカウン
タ稙のセノ]・をそれぞれ指定する。
また、整置回路24へ出力される2ビツトの信号96は
、“002で1ハイド“Oビで2バイト、“10”で3
ハイド“1どで4バイトのデータ幅をそれぞれ指定する
次に第6図に示されている回路構成の動作について具体
的に説明する。
ストリング比較結果判定回路23の動作は、ストリング
命令の種類とタイミングにより以下の三通りに分かれる
第1は、5M0V命令実行時にA122の比較結果とデ
クリメンタ20の値とから実行命令を終了するか否かを
決定し、カウント値指定レジスタ15.1621の値と
整置回路24へ出力するデータサイズの値とをセットす
る場合である。
第2は、SCMP命令実行時の第1のソースデータと比
較値とを比較するサイクルにおいて、ALII22の比
較結果のみから比較結果を比較保持レジスタ29にセン
トする場合である。
第3は、SCMP命令実行時に第1のソースデータと第
2のソースデータとを比較するサイクルにおいて、比較
結果保持レジスタ29の値と、ALII22の比較結果
と、デクリメンタ20の値とから実行命令を終了するか
否かを決定し、カウント値指定レジスタ15.16.2
1の値をセントする場合である。
まず、5M0V命令実行時にス) IJソング較結果判
定回路23がALU22の比較結果とデクリメンタ20
の値とから、実行命令を終了するか否かを決定し、カウ
ント値指定レジスタ15.1.6.21の値と整置回路
24へ出力するデータサイズの値とをセットする場合に
ついて説明する。
第7図ial、 fbl及び(C)は、ALU22での
比較結果からカウント値指定レジスタ15.16.21
にセットする値と、整置回路24へ出力するデータ幅の
値とを示す模式図であり、比較値のデータサイズが8ビ
ツト、16ビツト、32ビツトの場合をそれぞれ示して
いる。
第7図(δ)を参照してまず、比較値のデータサイズが
8ビツト(1バイト)である場合について説明する。
32ビツトのソースデータA(0:31)の第1バイト
A(0ニア)で比較結果が一致すれば、カラン]・値指
定レジスタ15.16.21の値はいずれも“1″にセ
ントされ、整置回路24へ出力されるデータ幅の埴は1
バイ]・になる。ソーステ゛−夕の第2ハイド八(8:
15)で比較結果が一致すれば、カウント値指定レジス
タ15.16.21のイ直はいずれも2′にセットされ
、整置回路24へ出力されるデータ幅の値は2ハイドに
なる。ソースデータの第3バイトA(16:23)で比
較結果が一致すれば、カウント値指定レジスタl516
、21のイ直はいずれも”3”にセットされ、整置回路
24へ出力されるデータ幅の値は3ハイドになる。
ソースデータの第4バイトA(24:3])で比較結果
が一致すれば、カウンl−値指定レジスタ15.16.
21の値はいずれも“4”にセットされ、整置回路24
へ出力されるデータ幅の値は4バイトとなる。
ALIJ22での比較結果がすべて不一致であれば、カ
ウント値指定レジスタ15.16.21の値はいずれも
“4″にセットされ、整置回路24へ出力されるデータ
幅の値は4ハイドとなる。
また、ソースデータの第1.第2ハイドA(0ニア)A
(8:15)で共に比較結果が一致すれば、1バイト目
の比較結果が優先されてカウント値指定レジスタ1.5
.1.6.21のイ直はいずれも“1”にセットされ、
整置回路24へ出力されるデータ幅の値は1ハイドとな
る。この場合、常にアドレスの小さいソースデータでの
比較結果が優先される。更に、カラントイ色指定レジス
タ21に十ノドする七ノド(直よりもデクリメンタ20
の値が小さければ、デクリメンタ20の値がカウント値
指定レジスタ1.5.16.21の値になる。
次に第7図fb)を参照して、比較値のデータサイズが
2バイトである場合について説明する。
ソースデータA(0:31)の第1.第2ハイドA(0
:15)で比較結果が一致すれば、カウント値指定レジ
スタ21の埴は“1”に、カウント値指定レジスタ15
、16の値は“2″にそれぞれセントされ、整置回路2
4へ出力されるデータ幅の値は2バイトになる。
ソースデータの第3.第4バイトA(16:31)で比
較結果が一致すれば、カウント値指定レジスタ21の値
は“2”に、カウント値指定レジスタ15.16の値は
“4″にそれぞれセットされ、整置回路24へ出力され
るデータ幅の値は4ハイドになる。
ALII22での比較結果がすべて不一致であれば、カ
ウント値指定レジスタ21の値は“2″に、カランI・
値指定しジスク15.16の値は“4″にそれぞれセッ
トされ、整置回路24へ出力されるデータ幅の値は4ハ
イドになる。
また、ソースデータの第1.第2バイトA(0:15)
と第3.第4パイ)A(1,6:31)とで共に比較結
果が−tずれば、常にアドレスの小さいソースデータが
優先されてカウント値指定レジスタ21の値は°1”に
、カウント値指定レジスタ15.16の値は”2”にそ
れぞれセットされ、整置回路24へ出力されるデータ幅
の(直は2バイトになる。
更に、デクリメンタ20の値が“1”である場合はソー
スデータの第3.第4ぽいバイトA(16:31)で比
較結果が一致するか、もしくはALU22での比較結果
がすべて不一致した場合でも、カウント値指定レジスタ
21の値は“1″に、カウント値指定レジスタ15.1
6の値は強制的に“2”にそれぞれセットされ、整置回
路24へ出力されるデータ幅の値は2バイトになる。
最後に第7図+C1を参照して、比較値のデータサイズ
が4バイトである場合について説明する。
この場合、比較結果が一致してもしなくても、カウント
値指定レジスタ21の値はドに、カウント(色指定レジ
スタ15.16の(直は“4”にそれぞれセットされ、
整置回路24へ出力されるデータ幅の値は4ハイドにな
る。
第8図fal、 (bi及びfc)は、SCMP命令実
行時の第1のソースデータと比較値とを比較するサイク
ルにおいて、ALU22の比較結果から比較結果保持レ
ジスタ29にセットする値と、第1のソースデータと第
2のソースデータとを比較するサイクルにおいて、^L
U22での比較結果とデクリメンタ20の値と比較結果
保持レジスタ29の値とからカウント値指定レジスタ1
5.16.21にセントする値とを示した模式図であり
、比較値のデータサイズが8.1632ビツトの場合を
それぞれ示している。
まず第8図(a)を参照して、比較値のデータサイズが
8ビツト (1バイト)である場合について説明する。
第1のソースデータ八(0・31)と比較値とを比較す
るサイクルにおいて、第1のソースデータの第】ハイ)
A(0ニア)で比較結果が一致すれば比較結果保持レジ
スタ29は“1″に、第1のソースデータの第2ハイ)
A(8:1.5)で比較結果が一致すれば比較結果保持
レジスタ29は2”に、第1のソースデータの第3ハイ
ドA(16:23)で比較結果が一致すれば比軸結果保
持しジスク29は“3”に、第1のソースデータの第4
ハイ) A (24:31)で比較結果が一致すれば比
較結果保持レジスタ29は“4”にそれぞれセットされ
る。
また、第1のソースデータの第1.第2ハイドA(0ニ
ア)、  A(8:15)で共に比較結果が一致すれば
、1ハイド目の比較結果が優先されて比較結果保持レジ
スタ29の値は“ドにセントされる。この場合、常にア
ドレスの小さいソースデータでの比較結果が優先される
また、第1のソースデータと第2のソースデータとを比
較するサイクルにおいて、第1のソースデータの第1ハ
イド^(04)で比較結果が不一致すればカウント値指
定しジスク15.16.21の値はいずれも”ビにセッ
トされ、第1のソースデータの第2バイt−A(8:1
5)で比較結果が不一致すればカラントイ色指定レジス
タ15.16.21のイ直はいずれも“どにセットされ
、第1のソースデータの第3ハイl−A(16:23>
で比較結果が不一致ずればカウント値指定レジスタ15
.16.21の植はいずれも“3”にセットされ、第1
のソースデータの第4ハイド^(24:31)で比較結
果が不一致ずればカウンI−値指定レジスタ15.16
.21の(直は”4″いずれもにセ。
トされる。
なお、不一致の検出がなされない場合には、カウント値
指定レジスタ15.16.21の値はいずれも“4″に
セントされる。
また、第1のソースデータの第1.第2バイトA(0ニ
ア)、  A(8:15)で共に比φ;結果が不一致す
れば、1バイト目の比較結果が優先されてカウント値指
定レジスタ+5.16.21の値はいずれも“ビに七ソ
卜される。この場合、常にアドレスの小さいソースデー
タでの比較結果が優先される。但し、カウント値指定し
ジスク15.16.21にセットされる値力く、デクリ
メンタ20の(直または第1のソースデータと比較値と
の比較結果を保持する比較結果保持レジスタ29の値の
いずれかよりも大きい場合は、デクリメンタ20の値か
第1のソースデータと比較値との比較結果とを保持する
比較結果保持レジスタ29の内のいずれか小さい値がカ
ウント値指定レジスタ+5.16.21の値とされる。
次に第8図山)を参照して、比較値のデータサイズが2
バイトである場合について説明する。
第1のソースデータと比較値とを比較するサイクルにお
いて、第1のソースデータの第1.第2バイトA(0:
15)で比較結果が一致すれば比較結果保持レジスタ2
9は“1”に、第1のソースデータの第3.第4パイ)
A(16:31)で比較結果が一致すれば比較結果保持
レジスタ29は“2″にそれぞれセットされる。
また、第1のソースデータの第1.第2バイトA(0:
15)  と第3.第4バイトA(16:31)とで共
に比較結果が一致すれば1バイト目の比較結果が優先さ
れて比較結果保持レジスタ29の値は“ドにセントされ
る。この場合、常にアドレスの小さいソースデータでの
比較結果が優先される。
また、第1のソースデータと第2のソースデータとを比
較するサイクルにおいて、第1のソースデータの第1.
第2パイ)A(0:15)で比較結果が不一致すればカ
ウント値指定レジスタ15.16.21の(直はいずれ
も“1”にセットされ、第1のソースデータの第3.第
4パイ)A(1,6:31)で比較結果が不一致すれば
カウント値指定レジスタ15.16.21の値はいずれ
も“2″にセットされる。
なお、不一致の検出がなされない場合には、カウンl−
値指定レジスタ15.16.21の値はいずれも“2”
にセットされる。
また、第1のソースデータの第1.第2バイトA(0:
15)  と第3.第4バイトA(16: 31) と
で比較結果が共に不一致すれば、常にアドレスの小さい
ソースデータが優先されてカウント値指定しジスク15
.16.21の(直はいずれも“げにセットされる。
但し、カウント値指定しジスク!5.16.21にセン
トされる値が、デクリメンタ20の値か第1のソースデ
ータと比較値との比較結果を保持する比較結果保持レジ
スタ29の値のいずれかよりも大きい場合は、デクリメ
ンタ20の値か第1のソースデータと比較値との比較結
果を保持する比較結果保持レジスタ29の値の内のいず
れか小さい値がカウント値指定レジスタ15.16.2
1の値となる。
最後に第8図(C1を参照して、比較値のデータサイズ
が4バイトである場合について説明する。
第1のソースデータと比較値とを比較するサイクルにお
いて、第1のソースデータと比較値との比較結果が一致
すれば比較結果保持レジスタ29は“ドにセットされる
また、第1のソースデータと第2のソースデータとを比
較するサイクルにおいて、第1のソースデータA(0:
31)で比較結果が不一致すれば、カウント値指定レジ
スタ15.16.21の値はいずれも“1”にセットさ
れる。
(3,3)  rクロ、り信号」 第9図は第2図のブロック図に示されている各構成要素
を制御するために用いられるクロック化ぢのタイミング
チャートである。
PIIA、 Pl−IB、 P)IC,pHl]はノl
−重復の4相クロツクであり、クロックI”HAの立」
二がりからりlコックI’llA次のの立上がりまでの
期間が1サイクルである。
第2図に示されている各構成要素は、これらのクロック
に従って以下のように制御される。
S1バス10及びS2バス11はクロ、りPIIAが“
1″の期間に有効となり、DOハス12はクロックPI
IDが“l”の期間に有効となる。また、AL[I22
.メモリアドレスレジスタ13及び14.デクリメンタ
20のカウント機能は、クロックPHB及びPHCが”
1”の期間に動作するように構成されており、1サイク
ルで1回の演算が行われる。具体的には、クロックPI
IAが“1″の期間にデータがS1バス10. S2バ
ス11へ出力され、それが各演算回路に取込まれ、クロ
ックPHB、 PHCが“1”の期間に演算が行われる
。演算結果は、クロックPIInが“1”の期間にDO
ババス2へ出力され、レジスタに取込まれる。
また、メモリのアクセスについては、メモリがノーウェ
イトで動作する場合には1サイクルで行われる。データ
のメモリへの書込み1メモリからの読出しは以下のよう
に行われる。
メモリからのデータの読出しが指定されると、1サイク
ルで外部メモリからデータが続出され、次のサイクルの
クロックP)IAが“1″の期間にはメモリデータレジ
スタを介してS1バス10またははS2バス11に供給
することができる。データをメモリに書込む場合には、
クロックPI(Dが“1“の期間にデータがメモリデー
タレジスタに書込まれれば、そのデータは次のサイクル
中にメモリに書込まれる。
+41 rsMOV命令の説明」 第10図は5M0V命令のオペランドを示す模式図であ
る。
5M0V命令のオペランドは、レジスタファイル17中
のROレジスタ、 R1レジスタ、 R2レジスタ、 
R3レジスタに格納される。 ROレジスタにはソース
側ストリングの先頭アドレス(ソースアドレス)が、旧
レジスタにはデスティネーション側の先頭アドレス(デ
スティネーションアドレス)が、R2レジスタにはスト
リングの長さを表すエレメント数が、R3レジスタには
比較割出し条件の比較値がそれぞれセントされる。
第11図fa+、 (bl及びfclは5M0v命令実
行時に、Doハス12からR3レジスタに比較値をセッ
トする際のR3レジスタの動作を説明する模式図である
第11図f8+に示す如く、比較値のサイズが8ビ。
トである場合、DOババス2のデータDo(24:3]
)がl13レジスタのR3(0ニア)、 R3(8:1
5)、 R3(16:23)  R3(24:31)に
それぞれセントされる。
また第11図(blに示す如く、比較値のサイズが16
ビ・71・である場合、00バスエ2のデータDO(1
6:31)がR3レジスタのR3(0:15)、 R3
(16:31)にそれぞれセットされる。
更に第11図(C)に示す如く、比較値のサイズが32
ビツトである場合、DOハス12のデータDO(0:3
1)がR3レジスタのR3(0:31)にセットされる
第12図は、SMOν命令の動作について説明した模式
図である。
SMOν命令はスI・リングを転送する命令である。
具体的にはS?lOV命令は、指定された割出し条件と
エレメント数とに対して、メモリから読出したソスデー
タと比較割出し条件の比較値とを比較し、デスティイ・
−ジョンへの書込みを行う。−回の転送が終わる都度、
ソースデータとR3レジスタに格納された比較値とが比
較され、割出し条件のチエツクが行われる。割出し条件
が成立した場合、命令はその時点以後の処理を行わずに
終了する。全てのエレメントで割出し条件が成立しなか
った場合は、R2レジスタに格納されたエレメント数だ
けデータが転送される。
また、以下のS間V命令の処理の例では操作の対象とな
るソースデータとデスティネーションデータとは全て3
2ビツト (ワード)の整置境界」−にあるデータに限
定する。操作の対象となるデータが32ビツト(ワード
)の整置境界を跨く場合は、ハスインタフェース部7の
メモリに対するアクセス回数が増えるため、読出したデ
ータと書込りべきデータとに対してデータのシフ[−動
作と連結動作とを行ってデータを整置する必要があるが
、その処理方法については、特願昭64−88837℃
に詳しく述べられている。
(4,1)  rsMOV命令の処理1次に、本発明の
データ処理装置において1つのエレメントが8ビツトで
構成される40ビット(5ワード)サイズのストリング
データを5M0V命令でアドレスの増加方向へ処理する
動作を、第13図のフローチャー1・を参照して説明す
る。
但し、操作の対象となるストリングデータは、最後のエ
レメントのみが比較値と同一であるものとする。また、
エレメント数を“10”とする。なお、ソースデータの
アトルスを“m′、デスティネーションデータのアドレ
スを“n″とし、ROレジスタとR1レジスタとにそれ
ぞれセットされているものとする。また、ストリングの
長さを表すエレメント数がR2レジスタに、割出し条件
の比較値がR3レジスタにそれぞれ七ソl□されている
ものとする。更に、比較条件はソースデータと比較値と
が等しい場合に成立するものとする。
第1サイクルC1lにおいて、R2レジスタの内容(エ
レメント数)がデクリメンタ20にセットされ、ROレ
ジスタの内容(ソースアドレス)がAA2レジスタ (
メモリアドレスレジスタ)14にセットされる。
第2サイクルC12において、R11/ジスタの内容(
デスティネーションアドレス)力<AA ルジスタ(メ
モリアドレスレジスタ)13にセットされ、AA2レジ
スタ14に格納されているソースアドレスに従ってソー
スデータが外部メモリからワードのデータサイズで読込
まれ、メモリデータレジスタ25に格納される。
第3サイクルCI3において、メモリデータレジスタ2
5の内容(ソースデータ)とR3レジスタの内容(1ヒ
較値)とがALII22により比較される。AL[12
2は8ビット単位でデータを比較し、比較結果をストリ
ング比較結果判定回路23へ出力する。操作の対象とな
っているストリングデータは、5ハイド目のみが比較値
と同一であるので、4バイト目までのデータ比較では一
致が検出されない。ストリング比較結果判定回V!I2
3は、^LU22での比較結果とデクリメンタ20の値
とから、次のサイクルでデクリメンタ20の値を更新す
るカウント値指定レジスタ21の値“4”と、ソースア
ドレスとデスティネーションアドレスとを更新するカウ
ント値指定レジスタ15.16の値14”とをセットし
、デスティネーションにデータを書込む際のデータサイ
ズの情報“4″を整置回路24へ出力する。
第4サイクルC14において、デクリメンタ20の値を
“4”だけデクリメントして“6”とし、この値をR2
レジスタへ戻す。また、AAIレジスタ13に格納され
ているデスティネーションのアドレス“1に従って、ソ
ースデータを外部メモリに書込も。
更に、AAIレジスタ13とAA2レジスタ14との(
直をインクリメントし、ソースアドレスのイ直とデステ
ィネーションアドレスの(直とをそれぞれ”n+4” 
と石÷4”とに更新する。
第5サイクルCI5において、AA2レジスタ14のイ
直(ソースアドレス)をI?Oレジスタへ戻す。
第6サイクルC1,6において、AAIレジスタ13の
値(デスティ7−ジョンアドレス)をR】レジスタへ戻
す。そして、前述の第3サイクルにおいて比較割出し条
件が成立しているか、あるいは第4サイクルにおいて更
新したデクリメンタ20の値がゼロであれば命令の実行
を終了する。ここで、比較割出し条件は不成立であって
デクリメンタ20の値は”6”となっているので、AA
Iレジスタ14に格納されたソースデータのアドレスに
従って、データを外部メモリから読込んでメモリデータ
レジスタ25に格納する。そして再び、第3サイクルC
I3の処理に戻る。
第2回目の第3サイクルC13において、メモリデータ
レジスタ25の内容とR3レジスタの内容とがALU2
2で比較される。  ALIJ22は8ビット単位でデ
ータを比較し、比較結果をストリング比較結果判定回路
23へ出力する。操作の対象となっているストリングデ
ータは、5バイト目のみが比較値と同一であるので、A
LU22が比較した1バイト目で一致が検出される。
ストリング比較結果判定回路23は、比較割出し条件の
成立を検出して実行命令を終了することを決定する。ま
た、ストリング比較結果判定回路23はALIJ22で
の比較結果とデクリメンタ20の値とから、次のサイク
ルでデクリメンタ20の値を更新するカウント値指定レ
ジスタ21の値“1″と、ソースアドレスとデスティネ
ーションアドレスとを更新するカウント値指定レジスタ
15.16の値“1”とをセットし、デスティネーショ
ンにデータを書込む際のデータサイズの情報“1”を整
置回路24へ出力する。
第2回目の第4サイクルC14において、デクリメンタ
20の値が“1″だけデクリメントされて“5“となり
、この値がR2レジスタへ戻される。また、AAIレジ
スタ13に格納されているデステイネ・−ジョンアドレ
ス1千4°に従って、ソースデータが外部メモリに書込
まれる。更に、^Aルジスタ13のイ直とAA2A2レ
ジスフ1イ直とがインクリメントされ、ソースアドレス
の(直とデスティネーションアドレスの値とがそれぞれ
“n45”と“m+5”とに更新される。
第2回目の第5サイクルC15において、^A2レジス
タ14の(直がROレジスクへ戻される。
第2回目の第6サイクルC16において、^Aルジスタ
13の値がR1レジスタへ戻される。第2回目の第3サ
イクルC13において比較割出し条件が成立しているの
で命令の実行は終了する。
+51rsc門P命令の説明」 第14図はSCMP命令のオペランドを示す模式図であ
る。
SCMP命令のオペランドは、レジスタファイル17中
のROレジスタ、 R1レジスタ、 R2レジスタ、 
R3レジスタに格納される。ROレジスタには第1のソ
ース側ストリングの先頭アドレス (ソースアドレス)
が、R1レジスタには第2のソース側ストリングの先頭
アドレス (ソースアドレス)が、R2レジスタにはス
トリングの長さを表すエレメント数が、R3レジスタに
は比較割出し条件の比較値がそれぞれセットされる。
このSCMP命令実行時に、DOババス2からR3レジ
スタに比較値をセントする時のR3レジスタの動作は、
比較値のサイズが8ビツトの場合、16ビツトの場合及
び32ピントの場合のいずれも前述の第11図に示した
S?IOV命令の場合と同様である。
SCMP命令はストリングを比較する命令である。
具体的には、SCMP命令は指定された割出し条件とエ
レメント数とに対して、メモリから読出された第1のソ
ースデータと比較割出し条件の比較値とが比較されて割
出し条件のチエツクが行われる。
次に、第1のソース側と第2のソース側のエレメントと
の比較を行い、エレメントの不一致、あるいは割出し条
件の成立により、命令はそれ以後の処理を続けずに終了
する。すべてのエレメントが一致し、且つ割出し条件が
成立しなかった場合、R2レジスタに格納されたエレメ
ント数だけ転送が行われる。
また、以下のSCMP命令の処理の例では、前述のS?
IOV命令の場合と同様に、丘作の対象となる第1のソ
ースデータと第2のソースデータとは全て32ビツト(
ワード)の整置境界上にあるデータに限定する。操作の
対象となるデータが32ビツト (ワード)の整置境界
を跨ぐ場合は、バスインタフェース部7のメモリに対す
るアクセス回数が増加するため、読出したデータに対し
てはデータのソフト動作と連結動作とを行ってデータを
整置する必要があるが、その処理方法については、特願
昭6488837号に詳しく述べられている。
(5,1)  rSC門P命令の処i1J次に、本発明
のデータ処理Haにおいて1つのエレメントが8ビツト
で構成される32ビツトの第1のソースストリングデー
タと第2のソースストリングデータとをSCMP命令で
アドレスの増加方向に比較処理する動作を、第15図の
フローチャートを参照して説明する。
但し、第1のソースデータと第2のソースデータとは同
一のデータであるとし、第1のソースデータには比較値
と同一エレメントが含まれていないものとする。なお、
第1のソースデータのアドレスをK”、 第2のソース
テ゛−夕の71゛レスを”し”とし、ROレジスクとR
1レジスタとにそれぞれ七ノドされているものとする。
更に、ストリングの長さを表すエレメント数゛4”がR
2レジスタに、割出し条件の比較値がR3レジスタにそ
れぞれセットされているものとする。なお、比較条件は
ソースデータと比較値とが等しい場合に成立するものと
する。
第1サイクルC21において、R2レジスタの内容(エ
レメント数)がデクリメンタ20にセ・ツトされ、RO
レジスタの内容(第1のソースアドレス)がAA2レジ
スタ14にセットされる。
第2サイクルC22において、l?lレジスタの内容(
第2のソースアドレス)がAAIレジスタ13にセント
され、AA2レジスタI4に格納されている第】のソー
スデータのアドレス”K″に従ってソースデータが外部
メモリからワードのデータサイズで読込まれ、メモリデ
ータレジスタ25に格納される。
第3サイクルC23において、メモリデータレジスタ+
1125の内容(第1のソースデータ)とR3レジスタ
の内容(比較値)とがALU22で比較される。
ALU22は8ビット単位でデータを比較し、比較結果
をストリング比較結果判定回路23へ出力する。
第1のソースアドレスには比較値と同一のエレメントは
含まれていないので、ALU22は比較結果が一致しな
いことを示す情報をストリング比較結果判定回路23へ
出力する。
ストリング比較結果判定回路は、A 1.1122から
出力された4ビツトの信号の論理和演算を行って比較が
一致しない事を検出し、比較結果を比較結果保持レジス
タ24に保持させる。
また、A^ルジスタ13に格納されている第2のソース
データのアドレス“L”に従ってソースデータが外部メ
モリからワードのデータサイズで読込まれ、メモリデー
タレジスタ+2128に格納される。
第4サイクルC24において、メモリデータレジスタ1
l)25の内容(第1のソースデータ)とメモリデータ
レジスタ+2128の内容(第2のソースデータ)とが
ALU22で比較される。^LU22は8ビット単位で
データを比較し、比較結果をストリング比較結果判定回
路23へ出力する。ここで、第1のソースデータと第2
のソースデータとは同一データであるのでALU22に
よる比較結果は全て一致し、不一致のエレメントは検出
されない。
ストリング比較結果判定回路23は、At、022によ
る比較結果とデクリメンタ20の値が“4”以下になっ
た場合に検出される検出信号との論理和演算を行い、こ
の結果から実行命令を終了する決定を行う。また、前サ
イクルで比較結果保持レジスタ24に保持された第1の
ソースデータと比較値との比較結果情報は一致エレメン
トが検出されなかったので無視される。更に、次のサイ
クルでデクリメンタ20の値を更新するカウント値指定
レジスタ21の値“4′と、第1のソースアドレスと第
2のソースアドレスとを更新するカウント値指定レジス
タ15、 ](iの値°4”とをセットする。
第5サイクルC25において、デクリメンタ20のイ直
が“4″デクリメン]・され、このイ直がR2レジスタ
へ戻される。また、^Aルジスタ13の値とAA2レジ
スタI4の値とがインクリメントされることにより、第
1のソースアドレスの値と第2のソースアドレスの値と
がそれぞれ“K+4”、”L+42に更新される。
第6ザイクルC26において、AA2レジスタ14の値
が110レジスタへ戻れる。
第7サイクJしC27において、AAIレジスタ13の
値がR】レジスタへ戻される。この場合、前記第3ザイ
クルにおいて、比較割出し条件が成立しているので命令
の実行が終了する。
[発明の効果] 以上に詳述した如く本発明のデータ処理装置の第1の発
明では、たとえば各日ビット同士について検出された4
つの比較結果の論理和演算と論理積演算とからそれぞれ
8ビソロ16ビソト、32ピツ)のエレメントにて構成
されるデータの比較動作を同一のハードウェアで行うこ
とが可能になるので、8ビツトのエレメントにて構成さ
れるデータの比較動作を4つ並列に、16ビノトのエレ
メントにて構成されるデータの比較動作を2つ並列に共
に一度の処理で実行可能になるので、高速な比較動作を
処理するハードウェアが実現される。
また第2の発明では、たとえば8ピノl−,16ビツト
サイズのエレメントにて構成されるスI・リングデータ
の転送動作を、転送対象データの最後のデータエレメン
トのサーチ動作を並列に行いつつ、−度の処理で4つま
たは2つのエレメントのデータ転送が行えるので、8ビ
ツト、16ビソトのエレメントサイズにて構成され、H
&のデータエレメントのみが比較値と同一であるストリ
ングデータを転送する命令を高速に実行するマイクロプ
ロセッサが実現される。
更に第3の発明では、たとえば8ビツト16ビツトサイ
ズのエレメントにて構成されるストリングデータの比較
動作を、操作対象のエレメント数と比較結果とから一度
の処理で4つまたは2つのエレメントの比較を並列に行
うことが可能になるので、ストリングデータの比較を行
う命令を高速に実行するマイクロプロセッサが実現され
る。
【図面の簡単な説明】
第1図は本発明のデータ処理装置の構成を示すフロック
図、 第2図は本発明のデータ処理装置におけるデータバス部
の内、5M0I/命令の実行に必要な部分の構成を示す
ブロック図、 第3図はAI、U制御関係の各マイクロフィールドで指
定可能なオペレーションの定義内容を示ステップ模式図
、 第4図はALUのファンクションの定義内容を示す一覧
図、 第5図は本発明のデータ処理装置に備えられているAL
Uの詳細な構成を示すブロック図、第6図は本発明のデ
ータ処理装置に備えられているAI、U、 ストリング
比較結果判定回路、デクリメンタ、カウント値指定レジ
スタ及び整置回路相互間の接続関係を示す模式図、 第7図は本発明のデータ処理装置に備えられているスト
リング比較結果判定回路によりセットされる各カウント
値指定レジスタの値と整置回路に出力されるデータサイ
ズの値とを示す模式図、第8図は本発明のデータ処理装
置に備えられているストリング比較結果判定回路により
セットされる各カウント値指定レジスタの値と、第1の
ソースデータと比較値との比較結果を保持するレジスタ
に出力される比較結果の値とを示す模式図、第9図は本
発明のデータ処理装置における内部クロックのタイミン
グを示すタイミングチャート、第10図は5M0V命令
のオペランドを示す模式図、第11図は5M0V命令及
びSCMP命令実行時にDoババスらR3レジスタにデ
ータを格納する際のR3レジスタの動作を説明する模式
図、 第12図は5M0V命令の動作を説明する模式図、第1
3図は本発明のデータ処理装置において5M0V命令を
処理する場合のフローチャート、第14図はSCMP命
令のオペランドを示す模式図、第15図は本発明のデー
タ処理装置においてSCMP命令を処理する場合のフロ
ーチャート、第16図は5M0V命令とSCMP命令と
のオペレーションコードを示す模式図、 第17図は5M0V命令とSCMP命令とで指定可能な
比較条件とビ・ノドパターンとを示す模式図である。 10・・・S1バス  11・・・S2バス  12・
・・Doハス15、16・・・メモリアドレスレジスタ
  I7・・・レジスタファイル  18・・・ALI
Iレジスク(A)  19・・・ALIIレジスタ(B
)  22・・・AL[l   20・・・デクリメン
タ2528・・・メモリデータレジスタ  24・・・
整置回路  23・・・ストリング比較結果判定回路な
お、図中、同一符号は同一、又は相当部分を示す。

Claims (3)

    【特許請求の範囲】
  1. (1)n個の第1のサイズのデータエレメントを同時に
    処理する第1の命令及び前記第1のサイズのn(nは2
    以上の整数)倍のサイズである第2のサイズのデータエ
    レメントを1個ずつ処理する第2の命令をデコードする
    命令デコード手段と、 前記命令デコード手段に接続されていて、 第1のデータエレメント群を保持する第1のレジスタと
    、 前記命令デコード手段に接続されていて、 第2のデータエレメント群を保持する第2のレジスタと
    、 前記第1及び第2のレジスタに接続してい て、前記第1のデータエレメント群と前記第2のデータ
    エレメント群とのそれぞれ対応するデータエレメント同
    士を比較する比較手段と、 前記命令デコード手段が前記第1の命令を デコードした場合に前記命令デコード手段の出力に従っ
    て、前記比較手段による各データエレメント同士の比較
    結果を論理和演算することによりn組の前記第1のサイ
    ズのデータエレメントの比較処理を並列実行する第1の
    判定手段と、前記命令デコード手段が前記第2の命令を
    デコードした場合に前記命令デコード手段の出力に従っ
    て、前記比較手段による比較結果を論理積演算すること
    により1組の前記第2のサイズのデータエレメントの比
    較処理を実行する第2の判定手段とを有する比較結果判
    定手段と を備えたことを特徴とするデータ処理装置。
  2. (2)命令をデコードする命令デコード手段と、外部メ
    モリとの間でデータを入出力するデータ入出力手段と、 前記外部メモリのアドレスをそれぞれ保持 する第1、第2のアドレスレジスタと、 前記第1のアドレスレジスタが指定する前 記外部メモリのアドレスから始まるメモリ領域から前記
    データ入出力手段を通じてフェッチしたn個のデータエ
    レメントからなる第1のデータエレメント群を保持する
    第1のレジスタと、 各エレメントが同一の所定値であるn個の エレメントからなる第2のデータエレメント群を保持す
    る第2のレジスタと、 前記第1及び第2のレジスタに接続されて いて、前記第1のデータエレメント群と前記第2のデー
    タエレメント群とのそれぞれ対応するデータエレメント
    同士を比較する比較手段と、 該比較手段の各比較結果を論理和演算する 比較結果判定手段と を備え、 前記命令デコード手段が、前記第1のアド レスレジスタが指定する前記メモリのアドレスから始ま
    る第1のメモリ領域にあり、最後のデータエレメントの
    みが前記所定値のデータエレメントであるn個のデータ
    エレメントからなる第1のデータを前記第2のアドレス
    レジスタが指定する前記メモリのアドレスから始まる第
    2のメモリ領域へ転送するストリング転送命令をデコー
    ドした場合に、 前記データ入出力手段は、前記命令デコー ド手段の出力に従って前記メモリの前記第1のメモリ領
    域から前記データ入出力手段を通じてn個のデータエレ
    メントをフェッチし、前記比較結果判定手段は、前記命
    令デコー ド手段の出力に従って前記比較手段による各比較結果を
    論理和演算することにより前記n個のデータエレメント
    それぞれと前記所定値のデータエレメントとが一致する
    か否かの判定処理を並列実行し、一致が検出されるまで
    前記データ入出力手段にデータのフェッチ及びその前記
    メモリの前記第2のメモリ領域への転送を反復させるべ
    くなしてあること を特徴とするデータ処理装置。
  3. (3)命令をデコードする命令デコード手段と、外部メ
    モリとの間でデータを入出力するデ ータ入出力手段と、 前記外部メモリのアドレスをそれぞれ保持 する第1、第2のアドレスレジスタと、 前記第1のアドレスレジスタが指定する前 記外部メモリのアドレスから始まる第1のメモリ領域か
    ら前記データ入出力手段を通じてフェッチしたn個のデ
    ータエレメントからなる第1のデータエレメント群を保
    持する第1のレジスタと、 前記第2のアドレスレジスタが指定する前 記外部メモリのアドレスから始まる第2のメモリ領域か
    ら前記データ入出力手段を通じてフェッチしたn個のデ
    ータエレメントからなる第2のデータエレメント群を保
    持する第2のレジスタと、 処理すべきエレメント数を保持する第3の レジスタと、 前記第1及び第2のレジスタに接続されて いて、前記第1のデータエレメント群と前記第2のデー
    タエレメント群とのそれぞれ対応するエレメント同士を
    比較する比較手段と、前記比較手段と前記第3のレジス
    タとに接 続されていて、前記比較手段の各比較結果と前記第3の
    レジスタの値とを入力する比較結果判定手段と を備え、 前記命令デコード手段が、前記メモリの第 1のメモリ領域にある複数のデータエレメントからなる
    第1のデータと第2のメモリ領域にあるデータエレメン
    トからなる第2のデータとを比較するストリング比較命
    令をデコードした場合に、 前記第3のレジスタは前記第1のデータの エレメント数を保持し、 前記比較結果判定手段は、前記命令デコー ド手段の出力に従って、前記第1のデータと前記第2の
    データとを比較し、この比較結果と前記第3のレジスタ
    に保持されているエレメント数とに基づいて前記ストリ
    ング比較命令の実行結果を決定すべくなしてあること を特徴とするデータ処理装置。
JP2231964A 1990-08-29 1990-08-29 データ処理装置 Expired - Lifetime JPH0831032B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2231964A JPH0831032B2 (ja) 1990-08-29 1990-08-29 データ処理装置
US08/327,823 US5497468A (en) 1990-08-29 1994-10-20 Data processor that utilizes full data width when processing a string operation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2231964A JPH0831032B2 (ja) 1990-08-29 1990-08-29 データ処理装置

Publications (2)

Publication Number Publication Date
JPH04109337A true JPH04109337A (ja) 1992-04-10
JPH0831032B2 JPH0831032B2 (ja) 1996-03-27

Family

ID=16931812

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2231964A Expired - Lifetime JPH0831032B2 (ja) 1990-08-29 1990-08-29 データ処理装置

Country Status (2)

Country Link
US (1) US5497468A (ja)
JP (1) JPH0831032B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5717946A (en) * 1993-10-18 1998-02-10 Mitsubishi Denki Kabushiki Kaisha Data processor
JP2008083762A (ja) * 2006-09-26 2008-04-10 Nec Electronics Corp マイクロコンピュータ
CN113316763A (zh) * 2019-03-04 2021-08-27 松下知识产权经营株式会社 处理器以及处理器的控制方法

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08212789A (ja) * 1995-02-06 1996-08-20 Mitsubishi Electric Corp 連想メモリ回路及びtlb回路
US5692146A (en) * 1995-05-26 1997-11-25 National Semiconductor Corporation Method of implementing fast 486TM microprocessor compatible string operations
US5907842A (en) * 1995-12-20 1999-05-25 Intel Corporation Method of sorting numbers to obtain maxima/minima values with ordering
US5854914A (en) * 1996-02-13 1998-12-29 Intel Corporation Mechanism to improved execution of misaligned loads
US6253312B1 (en) * 1998-08-07 2001-06-26 Ip First, L.L.C. Method and apparatus for double operand load
US6209082B1 (en) 1998-11-17 2001-03-27 Ip First, L.L.C. Apparatus and method for optimizing execution of push all/pop all instructions
US6516313B1 (en) * 2000-06-27 2003-02-04 Mitsubishi Electric Research Laboratories, Inc. Method for dynamic constraint handling in vertex based optimization of a continuous complex system
US7242325B2 (en) * 2004-08-02 2007-07-10 Sony Corporation Error correction compensating ones or zeros string suppression
US8219785B1 (en) * 2006-09-25 2012-07-10 Altera Corporation Adapter allowing unaligned access to memory
KR20100126690A (ko) * 2008-02-18 2010-12-02 샌드브리지 테크놀로지스, 인코포레이티드 널-종료 문자열 동작을 가속화하는 방법
CN101685388B (zh) * 2008-09-28 2013-08-07 北京大学深圳研究生院 执行比较运算的方法和装置
ES2354330B1 (es) * 2009-04-23 2012-01-30 Universitat Pompeu Fabra Método para calcular medidas de similitud entre señales temporales.
US9459868B2 (en) 2012-03-15 2016-10-04 International Business Machines Corporation Instruction to load data up to a dynamically determined memory boundary
US9588762B2 (en) 2012-03-15 2017-03-07 International Business Machines Corporation Vector find element not equal instruction
US9459867B2 (en) 2012-03-15 2016-10-04 International Business Machines Corporation Instruction to load data up to a specified memory boundary indicated by the instruction
US9710266B2 (en) 2012-03-15 2017-07-18 International Business Machines Corporation Instruction to compute the distance to a specified memory boundary
US9715383B2 (en) 2012-03-15 2017-07-25 International Business Machines Corporation Vector find element equal instruction
US9459864B2 (en) 2012-03-15 2016-10-04 International Business Machines Corporation Vector string range compare
US9280347B2 (en) 2012-03-15 2016-03-08 International Business Machines Corporation Transforming non-contiguous instruction specifiers to contiguous instruction specifiers
US9454367B2 (en) 2012-03-15 2016-09-27 International Business Machines Corporation Finding the length of a set of character data having a termination character
US9454366B2 (en) 2012-03-15 2016-09-27 International Business Machines Corporation Copying character data having a termination character from one memory location to another
US9268566B2 (en) 2012-03-15 2016-02-23 International Business Machines Corporation Character data match determination by loading registers at most up to memory block boundary and comparing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61100836A (ja) * 1984-10-04 1986-05-19 Fujitsu Ltd 移動命令論理比較命令処理方式
JPS6273330A (ja) * 1985-09-27 1987-04-04 Hitachi Ltd デ−タ処理装置
JPS6472236A (en) * 1987-09-14 1989-03-17 Hitachi Ltd Information processor with string operating instruction

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4463421A (en) * 1980-11-24 1984-07-31 Texas Instruments Incorporated Serial/parallel input/output bus for microprocessor system
US4604695A (en) * 1983-09-30 1986-08-05 Honeywell Information Systems Inc. Nibble and word addressable memory arrangement
US4785393A (en) * 1984-07-09 1988-11-15 Advanced Micro Devices, Inc. 32-Bit extended function arithmetic-logic unit on a single chip
US5060143A (en) * 1988-08-10 1991-10-22 Bell Communications Research, Inc. System for string searching including parallel comparison of candidate data block-by-block
US5193167A (en) * 1990-06-29 1993-03-09 Digital Equipment Corporation Ensuring data integrity by locked-load and conditional-store operations in a multiprocessor system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61100836A (ja) * 1984-10-04 1986-05-19 Fujitsu Ltd 移動命令論理比較命令処理方式
JPS6273330A (ja) * 1985-09-27 1987-04-04 Hitachi Ltd デ−タ処理装置
JPS6472236A (en) * 1987-09-14 1989-03-17 Hitachi Ltd Information processor with string operating instruction

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5717946A (en) * 1993-10-18 1998-02-10 Mitsubishi Denki Kabushiki Kaisha Data processor
JP2008083762A (ja) * 2006-09-26 2008-04-10 Nec Electronics Corp マイクロコンピュータ
CN113316763A (zh) * 2019-03-04 2021-08-27 松下知识产权经营株式会社 处理器以及处理器的控制方法

Also Published As

Publication number Publication date
JPH0831032B2 (ja) 1996-03-27
US5497468A (en) 1996-03-05

Similar Documents

Publication Publication Date Title
JPH04109337A (ja) データ処理装置
CA1174370A (en) Data processing unit with pipelined operands
TWI691897B (zh) 用以執行融合單一週期遞增-比較-跳越之指令與邏輯
US5293592A (en) Decoder for pipelined system having portion indicating type of address generation and other portion controlling address generation within pipeline
US5832258A (en) Digital signal processor and associated method for conditional data operation with no condition code update
US3881173A (en) Condition code determination and data processing
TWI476682B (zh) 用以偵測向量暫存器內相等元素之裝置及方法
US4367524A (en) Microinstruction execution unit for use in a microprocessor
JP2507638B2 (ja) デ―タ処理装置
JP2834292B2 (ja) データ・プロセッサ
JPH04109336A (ja) データ処理装置
US4713750A (en) Microprocessor with compact mapped programmable logic array
CN112148251A (zh) 跳过无意义的矩阵运算的系统和方法
JPH0774991B2 (ja) デジタルコンピュータに於けるパイプライン化された処理ユニットの動作方法
JPS6217252B2 (ja)
JPH07114469A (ja) データ処理装置
JPS6339931B2 (ja)
USRE32493E (en) Data processing unit with pipelined operands
JPH1049370A (ja) 遅延命令を有するマイクロプロセッサ
JPH081599B2 (ja) データ処理装置
TW201732734A (zh) 用於加速圖形分析的設備及方法
JP2620511B2 (ja) データ・プロセッサ
JP2017539013A (ja) 競合検出を実行するための方法および装置
JP3578883B2 (ja) データ処理装置
JP3789583B2 (ja) データ処理装置

Legal Events

Date Code Title Description
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20080327

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20090327

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20090327

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20100327

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20110327

Year of fee payment: 15

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110327

Year of fee payment: 15