JPH01502700A - 境界合せされていないリファレンスを処理するrisc型コンピュータ及び同処理の方法 - Google Patents
境界合せされていないリファレンスを処理するrisc型コンピュータ及び同処理の方法Info
- Publication number
- JPH01502700A JPH01502700A JP63501254A JP50125488A JPH01502700A JP H01502700 A JPH01502700 A JP H01502700A JP 63501254 A JP63501254 A JP 63501254A JP 50125488 A JP50125488 A JP 50125488A JP H01502700 A JPH01502700 A JP H01502700A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- memory
- unaligned
- response
- 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
Links
- 238000000034 method Methods 0.000 title claims description 22
- 238000012545 processing Methods 0.000 title description 4
- 230000008569 process Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 9
- 238000011888 autopsy Methods 0.000 claims 1
- 238000005192 partition Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 210000000936 intestine Anatomy 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3816—Instruction alignment, e.g. cache line crossing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。
Description
【発明の詳細な説明】
境界合せされていないリファレンスを処理するRISC型コンピュータ及び同処
理の方法発明の背景
本発明は、境界合せされていないリファレンスを処理するより少ない命令セット
をもつコンピュータ、さらに詳細にいうと同リファレンスを処理する方法だけで
はなく、端数のワード長をもったデータの読み書き方法に関する。
コンピュータ・アーキテクチャにおける新たな開発によッテ、いわゆるRISC
(ReducedInstruction Set Computer: リス
ク)装置が導入されたが、このRISC:装置においては個々の命令(inst
ruction)が単一の動作サイクル内で理想的に実行される。このようなR
ISC:装置は、そのより短い時間間隔で頻繁な動作を実行できる機能によって
従来よりはるかに高速でデータ処理できるという、標準的なアーキテクチャ及び
命令セットをもつコンピュータにはない長所をもっている。コンピュータ及び類
似のデータ・プロセッサは、端数のワード長をもつデータを処理しなければなら
ないことがしばしばある0例えば、多くのコンピュータはワード長が2バイト又
は4バイト(すなわち、1ワードが各々18ビツト又は32ビツト)のデータを
処理するように設計されているが、たった1バイト又は2バイトのデータを発生
または受け入れたりする周辺装置や応用プログラムもある。このことは、データ
を処理するプログラムや製品の場合にしばしば当てはまる。このタイプのデータ
がもたらす結果の1つは、それが境界合せされていないリファレンスを発生する
ということである。すなわち、4バイトのワードを処理するマシン(32ビツト
装置)の場合、もし入って来るデータが、2バイトのデータの後に4バイトのデ
ータが続くような順序で位置付けされると、この4バイトのデータは、メモリ内
のワード境界にオーバラップ(重なる)してしまうので単一のサイクルでは検索
することも記憶することも不可能になってしまう、この影響は、1つのワードが
メモリ内のページ境界にオーバラップする場合には更に問題となるがその理由は
、もし仮想記憶システムを用いている場合においては、アドレス指定可能なメモ
リ内に常駐することが許されるのは、実際にはワードの1部分だけであるからで
ある。従って先行技術によるRISC装置では、上述の形態ではデータを受け入
れることができない、この場合には、全てのデータが確実にワード境界内で境界
合せされるようにするため、特別の手続きに従って処理しなければならない、又
は連続した命令サイクルを少なくとも2つ用いるというプログラミング手法その
ものが必要とされる0例えば全てのデータがワード境界内で境界合せされること
を確実にする1つの方法は、通常はビフト詰(bit 5tuffiB)として
知られている、より短いデータ長のデータに余分のビットを付は加えることであ
る。たとえビット詰(bitstuffing)を用いようがプログラミング手
法を変更しようが、境界合せされていないリファレンスが先行技術によるRIS
C装置の性能を深刻に損なうことは明かである。
更に、ここで注意すべきことは、近代のコンピュータにおいては、データは2つ
の形式の内のどちらか1方またはこれらの形式を組合せて編成されるということ
である。これらの形式は”big endian”、この形式においては上位の
ビット、バイト又は他の情報の単位が低い番号の装置アドレス(unit ad
dress)中に位置付けられる。及び”1ittle endian”、この
形式においては上位の単位の情報が高い番号の装置アドレス中に位置付けられる
。従って、真のbig endjanコンピュータ・アーキテクチャにおいては
、データのビットは左から右に向けて整列されていて、最も低い番号をもつ最上
位のピッ) (MSB:MostSignificant Bit )が左に位
置するものと見なされる。このビット列を、例えば、8ビツトから成るバイト、
IBビットから成るハーフワード(half word:半語)、および/また
は、32ビツトから成るワード単位に分割しても、最も低い番号をもつ最上位バ
イト、ハーフワード又はワードは依然として左に位置付けられる。真の1itt
le endianのアーキテクチャにおいては、機構は全く逆になっている。
ビット、バイト、ハーフワード及びワードは右から左に向けて番号付けされ、最
下位のビット (LSB: Least Si、gnificant Bit)
、バイト、ハーフワード又はワードは右に位置付けられる。
え見立1力
上記に鑑みて、本発明の第1の目的は、境界合せされていないリファレンスをR
ISC装置の内部において処理する手段および方法を提供することにある。
本発明の第2の目的は、境界合せされていないリファレンスをより少ない数の命
令サイクル内でロード又は記憶し、それによって自身の処理速度を高く保つこと
が可能なRISC装置を提供することにある。
本発明の第3の目的は、ハードウェア又はOS (Operating Sys
tem:オペレーティング−システム)になんら大きな変更を加えることなく、
容易に実現され得る。境界合わせされていないリファレンスを処理する方法およ
び手段を提供することにある。
本システムの他の目的および諸長所は、本発明に関する以下の説明を読めば更に
明らかになるであろう。
簡単に言えば、境界合わせされていないリファレンスを処理するRISC装置が
有する命令セットには次の4つの命令がある:すなわち、境界合せされていない
nバイトのリファレンスをメモリからnバイトの汎用レジスタ中にロードする2
つの命令(Load Word Left及びLoad Word Right
)及び境界合せされていないリファレンスを汎用レジスタからメモリ中に記憶す
る2つの命令(Store Word Left及び5tore Ward R
ight) テある。これら対を成す2つの命令は、対応する命令シーケンスが
オーバラップするような仕方で順次に使用される。従って、境界合せされていな
いリファレンスを記憶したリロードしたりするに必要とされる時間の合計は、2
つの独立した命令を実行するに必要とされる時間よりずっと短い。
RISC装置は、データが上記の命令実行中にこれを通じて伝播される複数のラ
ッチ及び、境界合せされていない異なったセクションのリファレンスを7センブ
ルする(組立てる)1つのマルチプレクサレジスタを有する。
発明の詳細な説
明
すなわち1バイト8ビツトとしての4バイト・ワードを処理するRISC装置に
関連して説明される.しかし、ここで説明する境界合せされていないリファレン
スを処理する手段および方法は,より長いまたは短いワードやバイトを処理する
装置に対しても、等しく適用可能であるということを理解すべきである。
更に、以下の説明はbig endianのアドレス指定に関するものであるが
、little endianのアドレス指定に対しても等しく適用可能である
。
図面に関して言えば、第1図に示すRISC装置は、本装置の演算システムを構
成する命令を保持する命令メモリ12(これは、RAM (Random Ac
cess Memory) 、ROM (ReadOnly Me腸ロry )
又は命令キャッシュ●メモリから成る)、 ALU (Aritbmetic−
Logic Unit:算術−論理演算装置) 14、汎用レジスタ18及びキ
ャッシュ・メモリ18を有する.汎用レジスタ16は4バイト幅で、個々のセル
は各々J,に,L,Mとして第1図中に識別されている.同様に、キャッシュ拳
メモリl8は、幾行(rom)にもなってデータを保持するように編成されてい
るが、個々の4バイト行は同時にアドレス指定される.従って、個々の行はその
最初のセルによって識別することが可使である.このようにして、キャッシュ●
メモリは、行0,4.8等から成る.例えば、キャッシュ●メモリは、1つの2
バイトのデータ●グループXI 、 X2、1つの4バイトのデータ●グループ
DI 、 D2 、 D3及びD4、並びに別の1つの2バイト●グループYl
及びY2を保持し得る.第1図から分かるように、第一のグループ(XI 、
X2)はたった2バイト長であるため、完全なすなわち1ワード長のデータ●グ
ループDI−04は、キャッシュ●メモリの行0と行4との間で境界にオーバラ
ップしてしまう.その結果、もしメモリの行0の内容を汎用レジスタ16中にロ
ードするためにLOADWORD Oのような通常ロード命令を使用した場合、
最初の2バイトD1及びD2だけが獲得されることになる.従って、これらのバ
イトを退避し次にLOAD WORD 4を実行することによって、残りのパイ
}D3及びD4を獲得するように特別な措置が必要である.これは、本発明にお
いては、以後LWL及びL%IRと各々呼ばれるLoad%lord Left
及びLoad%llord Rightという特殊な2つの命令を用いることに
よってなされる.これらの命令の個々の後に、2つの引数が続く.これら2つの
命令およびその引数は以下により具体的に定義される。
Load Word R,Byte 指定されたメモリのLeft Addre
ss バイト●アドレスから始まり右方向に
データが進むレジス
タRの左側の部分を
メモリのワード境界
にロードする。
Load Word R,Byte メモリのワード境界Rigbt Addr
ess から始まり右方向にデータが進むレジス
タRの右側の部分を
指定されたメモリの
バイト・アドレスに
ロードする。
以下に示されているように、第4番目の時間間隔の最後で、キャッシュ・メモリ
から取り出されたデータ・バイトは、自身が次のロード動作(LWR)によって
消去されない仕方で汎用レジスタ中に退避される。これによって、LWL命令お
よびLWR命令によって獲得されたバイトを適切に組み合わすことが可能となる
。
従って、キャッシュ・メモリから汎用レジスタIB中にワードDI−04をロー
ドするためには、最初にLWL R,2という命令を使用しなけに、パイ)DI
及びD2をそれぞれセルJ及びに中にロードする。その後で、第3図に示すよう
に、パイ)D3及びD4をそれぞれセルL及びM中にロードする命令し%dRR
,5を使用し、これによってワードのロード操作を完了する。
一般に、big endian装置及び4バイト幅の行(row)をもつメモリ
の場合、もしLWL命令のByte AddressがXであれば、それに対応
するL%ilR命令のByte Addressは、X+3となる。
上述の2つの命令を、オーバラップする事項において実行すれば本発明の長所が
生かされることになる。従って、上述のロード動作のい−fれか1つを実行する
ためには、次に示す5つのステップから成るシーケンスが必要とされる。
1、RO)lから命令をフェッチしてくる(ステップ ”工”)。
2、 レジスタ・ファイルの内容を読出す(ステップ R”)。
3、 アドレスを計算する(ステップ
”A”)。
4、 キャッシュ−メモリにアクセスする(ステップ ”M″)。
5、 レジスタ・ファイル中に書込む(ステップ″W”)。
これらのステップはALtlによって実行され、次に説明するように第4図に示
すようにオーバラップされてもよい、第1の命令、L%IL R,2は時間間隔
lの時に開始され、時間間隔5で終了してもよいが、これら時間間隔は個々に既
に定義したようにステップエ。
R,A、M、Wのいずれか1つのために使用される。しかし第2の命令、LWR
R,5は第4図に示すように時間間隔2で開始できる。このようなデバイスは、
最初の命令の終了を待って2番目の命令を開始させる必要がないので、デバイス
の全体の動作速度が増大する。
従って、境界合せされていないリファレンス・ワードをロードするのに必要とさ
れる全体の時間として、たった6つ1の時間間隔を必要とするだけであり、これ
は単一命令の場合に要される間隔数よりたった1つ多いだけである。
しかし、対を成すLOAD命令であるLIIILとL%llRはどちらを先に実
行してもよい、すなわちL%IL命令とIJR命令とのどちらが先に来てもよい
、その上、LOAII命令は、互いに隣接していない場合でさえも有効である。
上記の手続きは、境界合せされていないリファレンスの記憶動作にも容易に拡張
できる。第5図において、汎用レジスタ16には、位置PIから位置P4への順
序と同じ順序で記憶される4バイトから成る1つのワードEl、E2゜E3.E
4が保持される。この動作を実行するためには、このような装置は、5tore
WordLeft (SWL”)命令および5tore WordRight
(”S%IIR”)命令を用いるが、これらの命令の個々が2つの引数をもっ
ている。
これら2つの5TOR1命令は以下に、第2表中に定義されている。
第2表 5tore命令
良仝 ■ 定義
5tore Word R,Byte データを、レジスタLeft Addr
ess Rの左部分から指定されたメモリのパイ
ト・アドレス中に記
憶し、メモリのワー
ド境界にまで右方向
に進む。
5tore Word R,Byte データを、レジスタ旧gllj Add
ress Rの右部分からメモリのワード境界を
ちょうど過ぎたメモ
リ・バイト中に記憶
し、指定されたメモ
リのバイト・アドレ
スにまで右方向に進
む。
一般に、big endian装置および4バイ、ト輻の行(rom)をもつメ
モリの場合、もしSWL命令のByte Addressがx−c’あれば、そ
れに対応するS%IR命令のByte AddressはX+3となる。
第6図に示すように、最初の5TORE命令の最後において、パイ)El及びE
2はそれぞれアドレス2及び3に記憶され、2番目の5TOPE命令の最後にお
いては、パイ)E3及びE4はそれぞれアドレス4及び5に記憶される。
LOAD命令と同様に、 5TOR1命令はどちらを先に実行してもよい、すな
わちSWL命令とSWR命令のどちらが先に来てもよい、その上、5TORE命
令は、互いに隣接していない場合でさえも有効である。
これら4つの命令を実行するための回路のブロック図を第7図に示す、この回路
は、直接的に実現してもソフトウェアを用いて実現してもよい、この回路は、キ
ャッシュ・メモリ18からの入力を受け入れ、ラッチ22に対して(並列に)送
出される出力を発生させるシフト/マージ・ユニット20を有する0次にラッチ
22は、適切な命令中の引数Rによって指定される汎用レジスタ1Bにその信号
を出力する。汎用レジスタ1Bの内容は、ラッチ24、ラッチ26及びラッチ2
8を介して、個々の動作間隔中において伝播される。ラッチ28はその信号をキ
ャッシュ拳メモリ18に対して送出することが可能である。ラッチ28からバイ
パス・マルチプレクサ・ユニット30の第1の入力部に至る第1のフィードバッ
ク経路もある。マルチプレクサ・ユニット30の第2の入力部はラッチ22の出
力部に接続されていて。
これによって第2のフィードバック経路を形成している。マルチプレクサ・ユニ
ット30の出力は、シフト/マージ・ユニット20に対しても送出されている。
5TORE命令の実行中は、マルチプレクサ30、シフト/マージ・ユニット
20及びラッチ22は動作しない、 LOAD命令の実行中は、シフト・ユニッ
ト28は単に、ラッチ24からラッチ28に対して、大した遅延もなくデータを
送出する。ラッチ24及びラッチ28の目的の1つは、これらのラッチ24を包
含する回路の経路の遅延と、1つの命令を構成しているステップの数を整合させ
ることにある。もし1つの命令を構成しているステップの数が増大したり減少し
たりすると、回路中に存在するラッチの数もそれにつれて変化する。第7図の回
路は次のように動作する。
1つのLWL命令が時間間隔1において受信される(第4図を参照)、すると時
間間隔4において引数Byte Address中に定義されたアドレスを含む
行(row)からの4バイトのデータが、シフト/マージ・ユニット20によっ
て左側にシフト(桁送り)され、2つの時間間隔置前に汎用レジスタ16の内容
であったデータとマージ(併合)される、(この時、汎用レジスタ16の内容は
、ラッチ24.シフト・ユニット2B、ラッチ28及びバイパス・マルチプレク
サ30を介して送出されている。)この動作の結果は時間間隔4の最後でラッチ
22に記憶される。従って、もし行0をキャッシュ・メモリ18から読出すとラ
ッチ22にはデータ・パイ)DI、D2.Y及びZが保持されるが、ここでY及
びZは汎用レジスタ16のぞれぞれのメモリ・セルL及びMの以前の内容であっ
たものである。以前、時間間隔2においては、命令LWRR,5も受信されてい
た0時間間隔5においては、ラッチ2の内容は汎用レジスタ16に送出される。
同時に、命令LWRによって、行4の内容がシフト/マージ・ユニット20中に
読込まれる。この時、これらのデータ・バイトはワード境界の最後に達するまで
右側にシフトされる。2つの命令が同一の汎用レジスタのことをいっており更に
互いに隣接しているので、マルチプレクサ30は、ラッチ22の内容をシフト/
マージ・ユニット20に送出し始める。従って、時間間隔5の間に、データ・バ
イトDI、 D2. D3. D4はシフト/マージ・ユニット20の内部で組
立てられて、ラッチ2に出力される0時間間隔6の間に、これらのデータ・バイ
トはレジスタ16に出力される。
5TORE命令は、次のように実行される。境界合せされていないリファレンス
・ワードが、汎用レジスタ16(レジスタ”R″であると識別される)からラッ
チ24に出力される。
最初の5TORE命令、SWL R,2が実行されている間に、ラッチ24から
送出されたワードは、データ・パイ)El及びE2が右側に位置付けられるよう
にシフト・ユニット26中において、2バイトだけシフトされる0次にシフト−
ユニット26の内容は、ラッチ28に送出され、するとこのラッチ28はこの内
容をキャッシュ・メモリのアドレス2に送る。より詳細に言えば、SWL R,
2の場合には、El及びE2は、メモリ・アドレスO及びlの内容に影響を与え
ることなく、各々ロケーションP1及びP2に記憶される(第5図および第6図
を参照)。
この境界合せされていないリファレンス・ワードは再度、汎用レジスタ16から
ラッチ24に出力される。 SwRR,5に反応して、ラッチ24の内容は、デ
ータ・パイ)E3及びE4がシフト・ユニット26の左側に来るように左方向に
シフトされ、次にラッチ28によって行4に送出される。より詳細に言えば、S
WRを実行中は、データ・パイ)E3及びE4は、アドレス6及び7の内容に影
響を与えることなくロケーションP3及びP4にそれぞれ記憶される。
EGG (Error Correction Coding:誤り訂正コーデ
ィング)を用いているデバイスにおいては、リード・モディファイ・ライト(R
eadModify Write)サイクルは、新しいFCCコードが、個々の
S丁ORE命令の後で計算されるように実行される。
LOAD命令に関して言えば、SWR及びSWLのS丁ORE命令は、命令の完
了に必要とされる全体時間を減少させるためにオーバラップされる。従って、境
界合せされていないリファレンスを記憶するに必要とされるこれら2つの命令の
実行には、たった6つの時間間隔しか要しないが、これは単一の命令を実行する
に要する時間間隔よりたった1つ多いだけである。キャッシュ・メモリの個々の
行(row)は互いに独立し更に分離して扱われるので、リファレンスがメモリ
内でページ境界にオーバラップする可能性があるという事実が、装置になにも影
響を与えないようにすることが望ましい。
更に注意すべきことは、1対の5TORE命令はどちらを先に実行してもよい、
すなわちS%llLとSWRのどちらの命令が先に来てもよいということである
。従って、1対のLOAD命令もどちらを先に実行してもよい、すなわちLWL
とL%IRのどちらの命令が先に来てもよい、更に、LOAD命令は、互いに隣
接していなくても有効であり、そしてこれは5TORE命令に付いても同様であ
る。
上記の命令セットは、big Bdianのデバイス、すなわち左端のビットが
最上位ビットであるような装置に適する。しかし、同一の配慮および手続きは、
1ittle endianのデバイス、すなわちバイトの左端のビットが最下
位ビットであるような装置にも使用し得る。変更すべき唯一の点は、LWR及び
SWR命令の引数を(big endianのデバイスのように)増加(inc
rement )するのではなく、LWL及びSWL命令の引数のアドレス値を
3つ増加させることである。こうする代わりに、総称命令セット(generi
c 1nstruction set )を用いて、上記の命令中の′″1ef
t”及びrigbt″をそれぞれ”lower address”及び”hig
heraddress”に変更してもよいが、この場合。
”lower address”命令は1ittle endianのマシン上
では”1eft”として動作しbigendjanのマシン上では”right
”として動作し、更に”higher address″命令は1ittlee
ndianのマシン上では”1eft”として動作する。この命令セットはまた
、big endianのデータ及び1ittle endianのデータの双
方を処理するデバイス(例えば、デュアル・バイト・オーダのデバイス)にも使
用できる。
以下の明細書において、本発明はその特定の典型的な実施例を参照して説明され
ている。しかし、添付クレームに述べられているような本発明のより広い精神お
よび範囲から逸脱することなく、修正および変更を本発明に対して行うことがで
きることは当然とするところである。従って、明細書および図面は限定的な意味
ではなく例証的な意味をもつものと考えるべきである。
図面の簡単な説明
本発明は例を用いて図示されており、添付図面の図に制限を加えるものではない
0次に説明するこれらの添付図面においては、同様の数字は類似のエレメントを
示す。
第1図は本発明の実施例の線図、第2図はLoad Word Left命令実
行後の汎用レジスタ、第3図はLoad Word Right命令実行後の汎
用レジスタ、第4図はLoad Word Left全ftよびLoad Wo
rd Right命令実行のための連続した動作の時間間隔、第5図は5TOR
E命令実行前の汎用レジスタ及びキャッシュ・メモリ、第6図は境界合せされて
いないリファレンスが記憶された後のキャッシュ・メモリ、及び第7図は釡令セ
ットの実行に用いられる回路配列あブロック図である。
臣■■■エト16 ウ=DON’T CARE第2図
匡■■四)16
第3図
第4図
第5図
第6図
手続補正書(方式)
平成 1年 6月14日
Claims (12)
- 1.コンピュータのメモリ(記憶装置)から汎用レジスタに、境界合せされてい ないりファレンスをロード(load)する方法であり、前記リファレンスが、 その第1の部分が前記メモリの1つの行(TOW)中に位置し、その第2の部分 が連続する次の行中に位置するような仕方でワード境界にまたがり、更に、k及 びnを共に正の整数として、 a.n番目の命令の実行中に前記第1の部分を検索するステップ; b.(n+k)番目の命令の実行中に前記第2の部分を検索するステップ; 及び、 c.前記第1の部分および前記第2の部分をマージ(併合)するステップと を有することを特徴とする、前記の方法。
- 2.境界合せされていないリファレンスをコンピュータのメモリ中に記憶する方 法であり、前記境界合せされていないリファレンスがワード境界にまたがり、そ れによって前記境界が前記ワードを第1の部分および第2の部分とに区分し、更 に、k及びnを共に正の整数として、 a.n番目の命令実行中に、前記メモリの1つの行の1つのセクションに前 記第1の部分を記憶するステップ; 及び、 b.(n+k)番目の命令実行中に、前記メモリの連続する次の行の1つの セクションに前記第2の部分を記憶 するステップとを有することを特徴 とする、 前記の方法。
- 3.前記n番目の命令および前記(n+k)番目の命令がオーバラップする(重 なる)ことを特徴とする請求の範囲第1項に記載の方法。
- 4.前記n番目の命令および前記(n+k)番目の命令がオーバラップすること を特徴とする請求の範囲第2項に記載の方法。
- 5.RISC(ReducedInstructionSetCom−pute τ)において、k及びnが共に正の整数として、 a.汎用レジスタ; b.n番目の命令に反応して前記境界合せされていないリファレンスの第1 の部分を検索し、(n+k)番目の 命令に反応して前記境界合せされて いないリファレンスの第2の部分を 検索する手段;及び、 c.前記第1および第2の部分を組合わせる組合せ手段とを有することを特徴と する、メモリから境界合せされていないリファレンスを検索する装置。
- 6.RISCにおいて、境界合せされていないリファレンスをメモリ中に記憶す る装置であり、更に、k及びnを共に正の整数として、 n番目の命令に反応して前記境界合せされていないリファレンスを第1の方向に シフトし、(n+k)番目の命令に反応して第2の方向にシフトし.更に第1の 部分および第2の部分を順次発生させるシフト手段;及び、 前記第1および第2の部分を順次に前記メモリ中に記憶する手段とを有すること を特徴とする、前記の装置。
- 7.RISCにおいて、第1の部分および第2の部分をもつ第1の境界合せされ ていないリファレンスを、前記第1の部分がメモリの第1のセクション中に記憶 され前記第2の剖分が前記メモリの第2のセクション中に記憶されるようにロー ドし、第2の境界合せされていないリファレンスを前記第1及び第2のセクショ ン中に記憶し、更に、 第1及び第2の入力部をもち、前記第1の入力部から受信した第1のデータ・バ イトをシフトするために装備され、前記第1および第2の部分を順次に受信する ために前記第1の入力部が前記メモリに結合され、更に前記第1のデータ・バイ トと前記第2の入力部から受信した第2のデータ・バイトとをマージするシフト /マージ・ユニット; 前記第1及び第2のデータ・バイトを記憶し、その1つの出力部が前記第2の入 力部に結合されている第1のラッチ手段; 前記第1のラッチ手段に結合され、前記第1及び第2の境界合せされていないり ファレンスのいずれかを選択的に保持するために装備された汎用レジスタ; 前記第2の境界合せされていないリファレンスを記憶するための、前記レジスタ に結合された第2のラッチ手段; 前記第2の境界合せされていないリファレンスをシフトするシフト手段;及び、 前記シフト手段を用いて前記メモリ中にシフトした後で前記第2の境界合せされ ていないリファレンスを記憶する出力手段とを有することを特徴とする装置。
- 8.前記シフト/マージ・ユこットが、前記メモリから受信したバイトを、第1 のLOAD命令に反応して第1の方向にシフトし、第2のLOAD命令に反応し て第2の方向にシフトすることを特徴とする請求の範囲第7項に記載の装置。
- 9.前記シフト手段が、前記第2のラッチ手段から受信したバイトを第1のST ORE命令に反応して第1の方向にシフトし、第2のSTORE命令に反応して 第2の方向にシフトすることを特徴とする請求の範囲第7項に記載の装置。
- 10.前記第1及び第2のラッチ手段の出力の内1つを選択的に前記第2の入力 部に結合させるバイパス・マルチプレクサを更に有することを特徴とする請求の 範囲第7項に記載の装置。
- 11.前記第1及び第2のLOAD命令が、少なくとも部分的にオーバラップす ることを特徴とする請求の範囲第8項に記載の装置。
- 12.前記第1及び第2のSTORE命令が少なくとも部分的にオーバラップす ることを特徴とする請求の範囲第9項に記載の装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US945,486 | 1986-12-23 | ||
US06945486 US4814976C1 (en) | 1986-12-23 | 1986-12-23 | Risc computer with unaligned reference handling and method for the same |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01502700A true JPH01502700A (ja) | 1989-09-14 |
JP2965206B2 JP2965206B2 (ja) | 1999-10-18 |
Family
ID=25483167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63501254A Expired - Lifetime JP2965206B2 (ja) | 1986-12-23 | 1987-12-23 | 境界合せされていないリファレンスを処理するrisc型コンピュータ及び同処理の方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US4814976C1 (ja) |
JP (1) | JP2965206B2 (ja) |
KR (1) | KR960003046B1 (ja) |
AU (1) | AU619734B2 (ja) |
CA (1) | CA1293331C (ja) |
WO (1) | WO1988004806A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06131178A (ja) * | 1990-06-29 | 1994-05-13 | Digital Equip Corp <Dec> | マルチプロセッサ又はパイプラインプロセッサシステムにおい てデータの完全性を確保する方法 |
JP2020505684A (ja) * | 2017-01-19 | 2020-02-20 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 読み込み論理およびシフト保護命令 |
Families Citing this family (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0363176B1 (en) * | 1988-10-07 | 1996-02-14 | International Business Machines Corporation | Word organised data processors |
US5222225A (en) * | 1988-10-07 | 1993-06-22 | International Business Machines Corporation | Apparatus for processing character string moves in a data processing system |
JP2633331B2 (ja) * | 1988-10-24 | 1997-07-23 | 三菱電機株式会社 | マイクロプロセッサ |
GB2229832B (en) * | 1989-03-30 | 1993-04-07 | Intel Corp | Byte swap instruction for memory format conversion within a microprocessor |
US5201043A (en) * | 1989-04-05 | 1993-04-06 | Intel Corporation | System using both a supervisor level control bit and a user level control bit to enable/disable memory reference alignment checking |
US7447069B1 (en) | 1989-04-13 | 2008-11-04 | Sandisk Corporation | Flash EEprom system |
US7190617B1 (en) * | 1989-04-13 | 2007-03-13 | Sandisk Corporation | Flash EEprom system |
EP0617363B1 (en) * | 1989-04-13 | 2000-01-26 | SanDisk Corporation | Defective cell substitution in EEprom array |
US5218692A (en) * | 1989-07-04 | 1993-06-08 | Kabushiki Kaisha Toshiba | Digital pulse timing parameter measuring device |
US5319769A (en) * | 1989-09-11 | 1994-06-07 | Sharp Kabushiki Kaisha | Memory access circuit for handling data pockets including data having misaligned addresses and different widths |
US5555384A (en) * | 1989-12-01 | 1996-09-10 | Silicon Graphics, Inc. | Rescheduling conflicting issued instructions by delaying one conflicting instruction into the same pipeline stage as a third non-conflicting instruction |
US5168561A (en) * | 1990-02-16 | 1992-12-01 | Ncr Corporation | Pipe-line method and apparatus for byte alignment of data words during direct memory access transfers |
JPH03248226A (ja) * | 1990-02-26 | 1991-11-06 | Nec Corp | マイクロプロセッサ |
CA2045705A1 (en) * | 1990-06-29 | 1991-12-30 | Richard Lee Sites | In-register data manipulation in reduced instruction set processor |
US5446851A (en) * | 1990-08-03 | 1995-08-29 | Matsushita Electric Industrial Co., Ltd. | Instruction supplier for a microprocessor capable of preventing a functional error operation |
DE69124437T2 (de) * | 1990-08-09 | 1997-07-03 | Silicon Graphics Inc | Verfahren und Vorrichtung zum Umkehren von Byteordnung in einem Rechner |
JPH04263323A (ja) * | 1991-02-18 | 1992-09-18 | Nec Corp | 機械語命令列並べ換え方式 |
JP2763207B2 (ja) * | 1991-04-25 | 1998-06-11 | 株式会社東芝 | 情報処理装置 |
US5386531A (en) * | 1991-05-15 | 1995-01-31 | International Business Machines Corporation | Computer system accelerator for multi-word cross-boundary storage access |
US5438668A (en) * | 1992-03-31 | 1995-08-01 | Seiko Epson Corporation | System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer |
US5471628A (en) * | 1992-06-30 | 1995-11-28 | International Business Machines Corporation | Multi-function permutation switch for rotating and manipulating an order of bits of an input data byte in either cyclic or non-cyclic mode |
WO1994008287A1 (en) * | 1992-09-29 | 1994-04-14 | Seiko Epson Corporation | System and method for handling load and/or store operations in a superscalar microprocessor |
US6735685B1 (en) * | 1992-09-29 | 2004-05-11 | Seiko Epson Corporation | System and method for handling load and/or store operations in a superscalar microprocessor |
US5463746A (en) * | 1992-10-30 | 1995-10-31 | International Business Machines Corp. | Data processing system having prediction by using an embedded guess bit of remapped and compressed opcodes |
US5838389A (en) * | 1992-11-02 | 1998-11-17 | The 3Do Company | Apparatus and method for updating a CLUT during horizontal blanking |
US5572235A (en) * | 1992-11-02 | 1996-11-05 | The 3Do Company | Method and apparatus for processing image data |
US5481275A (en) | 1992-11-02 | 1996-01-02 | The 3Do Company | Resolution enhancement for video display using multi-line interpolation |
US5752073A (en) * | 1993-01-06 | 1998-05-12 | Cagent Technologies, Inc. | Digital signal processor architecture |
JPH0756815A (ja) * | 1993-07-28 | 1995-03-03 | Internatl Business Mach Corp <Ibm> | キャッシュ動作方法及びキャッシュ |
US5740398A (en) * | 1993-10-18 | 1998-04-14 | Cyrix Corporation | Program order sequencing of data in a microprocessor with write buffer |
US5615402A (en) * | 1993-10-18 | 1997-03-25 | Cyrix Corporation | Unified write buffer having information identifying whether the address belongs to a first write operand or a second write operand having an extra wide latch |
US6219773B1 (en) * | 1993-10-18 | 2001-04-17 | Via-Cyrix, Inc. | System and method of retiring misaligned write operands from a write buffer |
US5584009A (en) * | 1993-10-18 | 1996-12-10 | Cyrix Corporation | System and method of retiring store data from a write buffer |
US5471598A (en) * | 1993-10-18 | 1995-11-28 | Cyrix Corporation | Data dependency detection and handling in a microprocessor with write buffer |
TW255024B (ja) * | 1994-02-08 | 1995-08-21 | Meridian Semiconductor Inc | |
DE69616718T4 (de) * | 1995-05-26 | 2003-02-20 | Nat Semiconductor Corp | Vorrichtung und verfahren zur bestimmung von adressen fehlausgerichteter daten |
US5953241A (en) | 1995-08-16 | 1999-09-14 | Microunity Engeering Systems, Inc. | Multiplier array processing system with enhanced utilization at lower precision for group multiply and sum instruction |
US7301541B2 (en) | 1995-08-16 | 2007-11-27 | Microunity Systems Engineering, Inc. | Programmable processor and method with wide operations |
US6643765B1 (en) * | 1995-08-16 | 2003-11-04 | Microunity Systems Engineering, Inc. | Programmable processor with group floating point operations |
US6295599B1 (en) * | 1995-08-16 | 2001-09-25 | Microunity Systems Engineering | System and method for providing a wide operand architecture |
US5949971A (en) * | 1995-10-02 | 1999-09-07 | International Business Machines Corporation | Method and system for performance monitoring through identification of frequency and length of time of execution of serialization instructions in a processing system |
US5751945A (en) * | 1995-10-02 | 1998-05-12 | International Business Machines Corporation | Method and system for performance monitoring stalls to identify pipeline bottlenecks and stalls in a processing system |
US5752062A (en) * | 1995-10-02 | 1998-05-12 | International Business Machines Corporation | Method and system for performance monitoring through monitoring an order of processor events during execution in a processing system |
US5729726A (en) * | 1995-10-02 | 1998-03-17 | International Business Machines Corporation | Method and system for performance monitoring efficiency of branch unit operation in a processing system |
US5797019A (en) * | 1995-10-02 | 1998-08-18 | International Business Machines Corporation | Method and system for performance monitoring time lengths of disabled interrupts in a processing system |
US5691920A (en) * | 1995-10-02 | 1997-11-25 | International Business Machines Corporation | Method and system for performance monitoring of dispatch unit efficiency in a processing system |
US5748855A (en) * | 1995-10-02 | 1998-05-05 | Iinternational Business Machines Corporation | Method and system for performance monitoring of misaligned memory accesses in a processing system |
US5819117A (en) * | 1995-10-10 | 1998-10-06 | Microunity Systems Engineering, Inc. | Method and system for facilitating byte ordering interfacing of a computer system |
US5864703A (en) * | 1997-10-09 | 1999-01-26 | Mips Technologies, Inc. | Method for providing extended precision in SIMD vector arithmetic operations |
US7197625B1 (en) * | 1997-10-09 | 2007-03-27 | Mips Technologies, Inc. | Alignment and ordering of vector elements for single instruction multiple data processing |
US6061779A (en) * | 1998-01-16 | 2000-05-09 | Analog Devices, Inc. | Digital signal processor having data alignment buffer for performing unaligned data accesses |
US6112297A (en) * | 1998-02-10 | 2000-08-29 | International Business Machines Corporation | Apparatus and method for processing misaligned load instructions in a processor supporting out of order execution |
US6820195B1 (en) | 1999-10-01 | 2004-11-16 | Hitachi, Ltd. | Aligning load/store data with big/little endian determined rotation distance control |
US6539467B1 (en) | 1999-11-15 | 2003-03-25 | Texas Instruments Incorporated | Microprocessor with non-aligned memory access |
JP3776732B2 (ja) * | 2001-02-02 | 2006-05-17 | 株式会社東芝 | プロセッサ装置 |
US7711763B2 (en) * | 2001-02-21 | 2010-05-04 | Mips Technologies, Inc. | Microprocessor instructions for performing polynomial arithmetic operations |
US7181484B2 (en) * | 2001-02-21 | 2007-02-20 | Mips Technologies, Inc. | Extended-precision accumulation of multiplier output |
US7162621B2 (en) | 2001-02-21 | 2007-01-09 | Mips Technologies, Inc. | Virtual instruction expansion based on template and parameter selector information specifying sign-extension or concentration |
US7599981B2 (en) | 2001-02-21 | 2009-10-06 | Mips Technologies, Inc. | Binary polynomial multiplier |
US6789179B2 (en) * | 2001-06-29 | 2004-09-07 | Broadcom Corporation | Method and system for fast data access using a memory array |
US7051168B2 (en) * | 2001-08-28 | 2006-05-23 | International Business Machines Corporation | Method and apparatus for aligning memory write data in a microprocessor |
US6721866B2 (en) * | 2001-12-21 | 2004-04-13 | Intel Corporation | Unaligned memory operands |
DE10202032A1 (de) * | 2002-01-18 | 2003-07-31 | Giesecke & Devrient Gmbh | Laden und Interpretieren von Daten |
TWI224735B (en) * | 2002-10-25 | 2004-12-01 | Via Tech Inc | Method for storing and accessing data in random bit range between different platforms |
EP1508853A1 (en) * | 2003-08-19 | 2005-02-23 | STMicroelectronics Limited | Computer system and method for loading non-aligned words |
TWI244033B (en) * | 2003-11-26 | 2005-11-21 | Sunplus Technology Co Ltd | Processor capable of cross-boundary alignment of a plurality of register data and method of the same |
CN1297887C (zh) * | 2003-11-28 | 2007-01-31 | 凌阳科技股份有限公司 | 可跨边界对齐复数暂存器资料的处理器及其方法 |
TWI227440B (en) * | 2003-12-19 | 2005-02-01 | Sunplus Technology Co Ltd | Device and method using a processor to perform automatic alignment for data movement in memory |
TWI230357B (en) * | 2003-12-19 | 2005-04-01 | Sunplus Technology Co Ltd | Device and method for writing data in a processor to memory at unaligned location |
TWI234073B (en) * | 2003-12-19 | 2005-06-11 | Sunplus Technology Co Ltd | Method and architecture of processor for loading unaligned data |
US20060174066A1 (en) * | 2005-02-03 | 2006-08-03 | Bridges Jeffrey T | Fractional-word writable architected register for direct accumulation of misaligned data |
US7817719B2 (en) * | 2005-05-31 | 2010-10-19 | Atmel Corporation | System for increasing the speed of a sum-of-absolute-differences operation |
US7689640B2 (en) * | 2005-06-06 | 2010-03-30 | Atmel Corporation | Method and apparatus for formatting numbers in microprocessors |
US7996659B2 (en) * | 2005-06-06 | 2011-08-09 | Atmel Corporation | Microprocessor instruction that allows system routine calls and returns from all contexts |
US20060277396A1 (en) * | 2005-06-06 | 2006-12-07 | Renno Erik K | Memory operations in microprocessors with multiple execution modes and register files |
US20060277425A1 (en) * | 2005-06-07 | 2006-12-07 | Renno Erik K | System and method for power saving in pipelined microprocessors |
US20060282821A1 (en) * | 2005-06-10 | 2006-12-14 | Renno Erik K | Efficient subprogram return in microprocessors |
US7434040B2 (en) * | 2005-07-25 | 2008-10-07 | Hewlett-Packard Development Company, L.P. | Copying of unaligned data in a pipelined operation |
US20070050592A1 (en) * | 2005-08-31 | 2007-03-01 | Gschwind Michael K | Method and apparatus for accessing misaligned data streams |
US20070106883A1 (en) * | 2005-11-07 | 2007-05-10 | Choquette Jack H | Efficient Streaming of Un-Aligned Load/Store Instructions that Save Unused Non-Aligned Data in a Scratch Register for the Next Instruction |
US7487172B2 (en) * | 2006-01-20 | 2009-02-03 | International Business Machines Corporation | Three-dimensional data structure for storing data of multiple domains and the management thereof |
US8156310B2 (en) * | 2006-09-11 | 2012-04-10 | International Business Machines Corporation | Method and apparatus for data stream alignment support |
US7665003B2 (en) * | 2006-12-15 | 2010-02-16 | Qualcomm Incorporated | Method and device for testing memory |
US20080162879A1 (en) * | 2006-12-29 | 2008-07-03 | Hong Jiang | Methods and apparatuses for aligning and/or executing instructions |
US20080162522A1 (en) * | 2006-12-29 | 2008-07-03 | Guei-Yuan Lueh | Methods and apparatuses for compaction and/or decompaction |
US7627743B2 (en) * | 2007-01-12 | 2009-12-01 | Andes Technology Corporation | Method and circuit implementation for multiple-word transfer into/from memory subsystems |
TWI344085B (en) * | 2007-11-15 | 2011-06-21 | Genesys Logic Inc | Storage system for improving efficiency in accessing flash memory and method for the same |
WO2013089707A1 (en) * | 2011-12-14 | 2013-06-20 | Intel Corporation | System, apparatus and method for loop remainder mask instruction |
CN103946795B (zh) * | 2011-12-14 | 2018-05-15 | 英特尔公司 | 用于生成循环对齐计数或循环对齐掩码的系统、装置和方法 |
US8935468B2 (en) | 2012-12-31 | 2015-01-13 | Cadence Design Systems, Inc. | Audio digital signal processor |
US9311493B2 (en) | 2013-07-30 | 2016-04-12 | Battelle Memorial Institute | System for processing an encrypted instruction stream in hardware |
US9684509B2 (en) * | 2013-11-15 | 2017-06-20 | Qualcomm Incorporated | Vector processing engines (VPEs) employing merging circuitry in data flow paths between execution units and vector data memory to provide in-flight merging of output vector data stored to vector data memory, and related vector processing instructions, systems, and methods |
US9921848B2 (en) | 2014-03-27 | 2018-03-20 | International Business Machines Corporation | Address expansion and contraction in a multithreading computer system |
US10102004B2 (en) | 2014-03-27 | 2018-10-16 | International Business Machines Corporation | Hardware counters to track utilization in a multithreading computer system |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3976979A (en) * | 1974-01-02 | 1976-08-24 | Honeywell Information Systems, Inc. | Coupler for providing data transfer between host and remote data processing units |
FR2337376A1 (fr) * | 1975-12-31 | 1977-07-29 | Honeywell Bull Soc Ind | Appareil permettant le transfert de blocs de donnees de longueur variable entre deux interfaces de largeur differente |
US4090237A (en) * | 1976-09-03 | 1978-05-16 | Bell Telephone Laboratories, Incorporated | Processor circuit |
US4276596A (en) * | 1979-01-02 | 1981-06-30 | Honeywell Information Systems Inc. | Short operand alignment and merge operation |
US4447878A (en) * | 1978-05-30 | 1984-05-08 | Intel Corporation | Apparatus and method for providing byte and word compatible information transfers |
US4339795A (en) * | 1978-06-30 | 1982-07-13 | International Business Machines Corporation | Microcontroller for controlling byte transfers between two external interfaces |
US4291370A (en) * | 1978-08-23 | 1981-09-22 | Westinghouse Electric Corp. | Core memory interface for coupling a processor to a memory having a differing word length |
US4258419A (en) * | 1978-12-29 | 1981-03-24 | Bell Telephone Laboratories, Incorporated | Data processing apparatus providing variable operand width operation |
US4240144A (en) * | 1979-01-02 | 1980-12-16 | Honeywell Information Systems Inc. | Long operand alignment and merge operation |
US4347567A (en) * | 1980-02-06 | 1982-08-31 | Rockwell International Corporation | Computer system apparatus for improving access to memory by deferring write operations |
US4569016A (en) * | 1983-06-30 | 1986-02-04 | International Business Machines Corporation | Mechanism for implementing one machine cycle executable mask and rotate instructions in a primitive instruction set computing system |
GB8401804D0 (en) * | 1984-01-24 | 1984-02-29 | Int Computers Ltd | Data storage apparatus |
US4656583A (en) * | 1984-08-13 | 1987-04-07 | International Business Machines Corporation | Method for improving global common subexpression elimination and code motion in an optimizing compiler |
JPS6151243A (ja) * | 1984-08-20 | 1986-03-13 | Toshiba Corp | レジスタ式演算処理装置 |
US4739471A (en) * | 1985-06-28 | 1988-04-19 | Hewlett-Packard Company | Method and means for moving bytes in a reduced instruction set computer |
US4747046A (en) * | 1985-06-28 | 1988-05-24 | Hewlett-Packard Company | Mechanism for comparing two registers and storing the result in a general purpose register without requiring a branch |
US4736317A (en) * | 1985-07-17 | 1988-04-05 | Syracuse University | Microprogram-coupled multiple-microprocessor module with 32-bit byte width formed of 8-bit byte width microprocessors |
US4734852A (en) * | 1985-08-30 | 1988-03-29 | Advanced Micro Devices, Inc. | Mechanism for performing data references to storage in parallel with instruction execution on a reduced instruction-set processor |
-
1986
- 1986-12-23 US US06945486 patent/US4814976C1/en not_active Expired - Lifetime
-
1987
- 1987-12-23 AU AU11852/88A patent/AU619734B2/en not_active Expired
- 1987-12-23 WO PCT/US1987/003422 patent/WO1988004806A1/en unknown
- 1987-12-23 KR KR1019880701036A patent/KR960003046B1/ko not_active IP Right Cessation
- 1987-12-23 JP JP63501254A patent/JP2965206B2/ja not_active Expired - Lifetime
- 1987-12-23 CA CA000555343A patent/CA1293331C/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06131178A (ja) * | 1990-06-29 | 1994-05-13 | Digital Equip Corp <Dec> | マルチプロセッサ又はパイプラインプロセッサシステムにおい てデータの完全性を確保する方法 |
JP2020505684A (ja) * | 2017-01-19 | 2020-02-20 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 読み込み論理およびシフト保護命令 |
Also Published As
Publication number | Publication date |
---|---|
AU1185288A (en) | 1988-07-15 |
CA1293331C (en) | 1991-12-17 |
US4814976A (en) | 1989-03-21 |
KR890700244A (ko) | 1989-03-10 |
AU619734B2 (en) | 1992-02-06 |
WO1988004806A1 (en) | 1988-06-30 |
US4814976C1 (en) | 2002-06-04 |
KR960003046B1 (ko) | 1996-03-04 |
JP2965206B2 (ja) | 1999-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH01502700A (ja) | 境界合せされていないリファレンスを処理するrisc型コンピュータ及び同処理の方法 | |
US6754810B2 (en) | Instruction set for bi-directional conversion and transfer of integer and floating point data | |
KR100346515B1 (ko) | 수퍼파이프라인된수퍼스칼라프로세서를위한임시파이프라인레지스터파일 | |
JPS62235658A (ja) | キヤツシユ・メモリ制御方式 | |
JPH04245540A (ja) | 条件付き分岐を有するプログラムの効率的実行をするためのコンピュータシステム | |
JPS6312029A (ja) | 情報処理装置 | |
JPH04296937A (ja) | ハードウエアデータストリング演算コントローラ及び主記憶ストリング動作を行わせる方法 | |
JPS59117666A (ja) | ベクトル処理装置 | |
JPH03116235A (ja) | 分岐処理方法及び分岐処理装置 | |
JPH02240733A (ja) | 可変長命令アーキテクチャにおける複数の規制詞の復合方法及び装置 | |
JPS6015746A (ja) | デ−タ処理装置 | |
JPH0786845B2 (ja) | データ処理装置 | |
KR19990072271A (ko) | 고성능의추론적인오정렬로드연산 | |
JPH063584B2 (ja) | 情報処理装置 | |
JPH10228376A (ja) | 複数レジスタ命令を処理する方法及びプロセッサ | |
JP2620511B2 (ja) | データ・プロセッサ | |
KR100249631B1 (ko) | 데이터 처리장치 | |
JPH01177127A (ja) | 情報処理装置 | |
JPH05150979A (ja) | 即値オペランド拡張方式 | |
US4360869A (en) | Control store organization for a data processing system | |
JPH0248732A (ja) | 命令パイプライン方式のマイクロプロセッサ | |
JPH03233630A (ja) | 情報処理装置 | |
KR900010587A (ko) | 생산라인의 고성능 명령어 실행방법 및 장치 | |
JP2748957B2 (ja) | データ処理装置 | |
US5276853A (en) | Cache system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080813 Year of fee payment: 9 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080813 Year of fee payment: 9 |