JPH10502756A - ベクトルプロセッサのためのチャンク連鎖 - Google Patents
ベクトルプロセッサのためのチャンク連鎖Info
- Publication number
- JPH10502756A JPH10502756A JP8518729A JP51872996A JPH10502756A JP H10502756 A JPH10502756 A JP H10502756A JP 8518729 A JP8518729 A JP 8518729A JP 51872996 A JP51872996 A JP 51872996A JP H10502756 A JPH10502756 A JP H10502756A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- elements
- register
- valid
- 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
Links
- 239000013598 vector Substances 0.000 title claims abstract description 352
- 230000015654 memory Effects 0.000 claims abstract description 93
- 238000012545 processing Methods 0.000 claims abstract description 42
- 230000006870 function Effects 0.000 claims abstract description 16
- 230000004044 response Effects 0.000 claims abstract description 15
- 238000003672 processing method Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 21
- 230000009471 action Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 21
- 239000000872 buffer Substances 0.000 description 7
- 230000003111 delayed effect Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000004927 clay Substances 0.000 description 2
- 241001279686 Allium moly Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
- G06F15/8076—Details on data register access
- G06F15/8084—Special arrangements thereof, e.g. mask or switch
-
- 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/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- 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/3824—Operand accessing
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
Abstract
Description
Claims (1)
- 【特許請求の範囲】 1. メモリおよびベクトル処理装置からなるコンピュータシステムであって、 ベクトル処理装置は以下のものからなる: 複数のベクトルレジスタ、各ベクトルレジスタは複数の要素を保持する; チャンク妥当性コントローラ; 上記複数のベクトルレジスタの各々に対応する妥当性インジケータ、各イ ンジケータは対応するベクトルレジスタの妥当である要素の部分集合を指示する とともに各妥当性インジケータはチャンク妥当性コントローラに接続されている ; 上記複数のベクトルレジスタに結合された算術論理機能ユニット(ALF U);および 上記複数のベクトルレジスタを制御するために接続され、上記複数のベク トルレジスタから選ばれたベクトルレジスタの妥当である要素を連続的に上記A LFUに送信するためにプログラムのインストラクションに対応して動作するベ クトルレジスタコントローラ。 2. 上記ALFUは、連続処理のオペランドに対応する要素アドレスを受信し ながら、未完了の処理のオペランドに対応する要素アドレスを保持するように動 作するアドレスパイプラインを更に備える、請求項1のコンピュータシステム。 3. 更に、プログラムのインストラクションに対応して、上記ALFUのアド レスパイプラインを介して要素アドレスをオペランドとして送信するため個々の ベクトルレジスタを選択的に接続するオペランドパスセレクタと、 プログラムのインストラクションに対応して、上記ALFUのアドレスパイプ ラインから結果のアドレスを受信する結果のパスセレクタとを備える、請求項2 のコンピュータシステム。 4. 主メモリを有するコンピュータのためのベクトル処理装置は以下のものか らなる: 複数の要素を各々保持する複数のベクトルレジスタ; チャンク妥当性コントローラ; 上記複数のベクトルレジスタの各々に対応する妥当性インジケータ、各妥当性 インジケータは対応するベクトルレジスタの妥当な要素の部分集合を指示すると ともに、各妥当性インジケータは上記チャンク妥当性コントローラに接続されて いる; 上記複数のベクトルレジスタに結合された算術論理機能ユニット(ALFU) ;およびプログラムのインストラクションに応答して上記ベクトルレジスタを制 御するために接続され、上記複数のベクトルレジスタから選択されたベクトルレ ジスタの妥当な要素を連続的に上記ALFUに送信する。 5. 上記ALFUは、更に、連続処理のオペランドに対応した要素アドレスを 受信しながら、未完了の処理のオペランドに対応する要素アドレスを保持するよ うに動作するアドレスパイプラインを備える、請求項4のベクトル処理装置。 6. プログラムのインストラクションに対応して、上記ALFUのアドレスパ イプラインを介してオペランド要素アドレスを送信するための個々のベクトルレ ジスタを選択的に接続するオペランドパスセレクタと、プログラムのインストラ クションに対応して、上記ALFUのアドレスパイプラインから結果の要素アド レスを受信する結果のパスセレクタとを更に備える、請求項5のベクトル処理装 置。 7. 主メモリを有するコンピュータにおいてベクトルを処理する方法は以下の ステップからなる: 複数のベクトルレジスタの各々について複数の要素を保持する; 妥当性インジケータ内で妥当性である要素の部分集合を指示する; 妥当となる複数の要素に対応して妥当性インジケータの値を調整する;および プログラムのインストラクションに応答して、選択されたベクトルレジスタの 妥当な要素を連続的に算術論理機能ユニットに送信させるために、要素が上記一 つのベクトルレジスタからの妥当な要素の利用可能性によって決定される速度で 上記ALFUを通して流れるように、上記複数のベクトルレジスタの一つを制御 する。 8. 上記ALFUは、連続処理のためのオペランドに対応して要素アドレスを 受信しながら未完了の処理のオペランドに対応する要素アドレスを保持するアド レスパイプラインをさらに備える、請求項7のベクトル処理方法。 9. 更に、プログラムのインストラクションに対応して上記ALFUのアドレ スパイプラインを介してオペランド要素アドレスを送信するため個々のベクトル レジスタを選択的に接続するステップ、および プログラムのインストラクションに対応して上記ALFUのアドレスパイプラ インからの結果の要素アドレスを受信するステップを備える、請求項8に記載の ベクトル処理方法。 10. 主メモリを有するコンピュータのためのベクトル処理装置は以下のもの からなる: 複数のベクトルレジスタ、各レジスタは順序付けられたデータセットの複数の 要素を保持する; 上記複数のベクトルレジスタの少なくとも一つについて、当該ベクトルレジス タの各々が妥当である連続要素の範囲を指示する妥当性ポインタ; 妥当となった複数の連続要素に応答して上記妥当性ポインタの値を調整するた めに妥当性ポインタに結合されたチャンク妥当性コントローラ; 上記複数のベクトルレジスタの少なくとも一つに結合された算術論理機能ユニ ット(ALFU);および ベクトルレジスタからの妥当要素の利用可能性によって決まる速度で要素が上 記ALFUを通して流れるように、ある選択されたオペランドベクトルレジスタ が妥当要素の範囲内の全ての要素を連続的に上記ALFUに送信するように、プ ログラムのインストラクションに応答して上記ベクトルレジスタを制御するベク トルレジスタコントローラ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/347,953 US5623685A (en) | 1994-12-01 | 1994-12-01 | Vector register validity indication to handle out-of-order element arrival for a vector computer with variable memory latency |
US08/347,953 | 1994-12-01 | ||
PCT/US1995/009661 WO1996017308A1 (en) | 1994-12-01 | 1995-08-01 | Chunk chaining for a vector processor |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10502756A true JPH10502756A (ja) | 1998-03-10 |
JP3789937B2 JP3789937B2 (ja) | 2006-06-28 |
Family
ID=23366006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP51872996A Expired - Fee Related JP3789937B2 (ja) | 1994-12-01 | 1995-08-01 | ベクトルプロセッサのためのチャンク連鎖 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5623685A (ja) |
EP (1) | EP0797803B1 (ja) |
JP (1) | JP3789937B2 (ja) |
DE (1) | DE69529689T2 (ja) |
WO (1) | WO1996017308A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6195747B1 (en) * | 1998-09-28 | 2001-02-27 | Mentor Arc Inc. | System and method for reducing data traffic between a processor and a system controller in a data processing system |
US20100122044A1 (en) * | 2006-07-11 | 2010-05-13 | Simon Ford | Data dependency scoreboarding |
US8239659B2 (en) * | 2006-09-29 | 2012-08-07 | Intel Corporation | Vector completion mask handling |
US8028257B2 (en) * | 2007-03-01 | 2011-09-27 | International Business Machines Corporation | Structure for data bus bandwidth scheduling in an FBDIMM memory system operating in variable latency mode |
US8826252B2 (en) * | 2009-06-12 | 2014-09-02 | Cray Inc. | Using vector atomic memory operation to handle data of different lengths |
US8583898B2 (en) * | 2009-06-12 | 2013-11-12 | Cray Inc. | System and method for managing processor-in-memory (PIM) operations |
WO2013166101A1 (en) * | 2012-05-02 | 2013-11-07 | Massachusetts Institute Of Technology | Managing buffer memory |
US9606803B2 (en) * | 2013-07-15 | 2017-03-28 | Texas Instruments Incorporated | Highly integrated scalable, flexible DSP megamodule architecture |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4128880A (en) * | 1976-06-30 | 1978-12-05 | Cray Research, Inc. | Computer vector register processing |
JPS58114274A (ja) * | 1981-12-28 | 1983-07-07 | Hitachi Ltd | デ−タ処理装置 |
US4661900A (en) * | 1983-04-25 | 1987-04-28 | Cray Research, Inc. | Flexible chaining in vector processor with selective use of vector registers as operand and result registers |
US4636942A (en) * | 1983-04-25 | 1987-01-13 | Cray Research, Inc. | Computer vector multiprocessing control |
US4901230A (en) * | 1983-04-25 | 1990-02-13 | Cray Research, Inc. | Computer vector multiprocessing control with multiple access memory and priority conflict resolution method |
JPS6089274A (ja) * | 1983-10-20 | 1985-05-20 | Nec Corp | ベクトルマスク制御システム |
JPS60134974A (ja) * | 1983-12-23 | 1985-07-18 | Hitachi Ltd | ベクトル処理装置 |
CA1233260A (en) * | 1985-03-13 | 1988-02-23 | Chuck H. Ngai | High performance parallel vector processor having a modified vector register/element processor configuration |
US4745547A (en) * | 1985-06-17 | 1988-05-17 | International Business Machines Corp. | Vector processing |
US4745545A (en) * | 1985-06-28 | 1988-05-17 | Cray Research, Inc. | Memory reference control in a multiprocessor |
US4754398A (en) * | 1985-06-28 | 1988-06-28 | Cray Research, Inc. | System for multiprocessor communication using local and common semaphore and information registers |
JPS62115571A (ja) * | 1985-11-15 | 1987-05-27 | Fujitsu Ltd | ベクトルアクセス制御方式 |
JPS6462764A (en) * | 1987-09-03 | 1989-03-09 | Agency Ind Science Techn | Vector computer |
DE68903280T2 (de) * | 1988-05-10 | 1993-05-27 | Cray Research Inc | Vektorschlange in computern mit vektorregister. |
US5142638A (en) * | 1989-02-07 | 1992-08-25 | Cray Research, Inc. | Apparatus for sharing memory in a multiprocessor system |
US5247637A (en) * | 1990-06-01 | 1993-09-21 | Cray Research, Inc. | Method and apparatus for sharing memory in a multiprocessor system |
DE69113639T2 (de) * | 1991-03-28 | 1996-03-07 | Cray Research Inc | Echtzeit-input/output-methode fuer ein vektor-prozessor-system. |
JP3176093B2 (ja) * | 1991-09-05 | 2001-06-11 | 日本電気株式会社 | マイクロプロセッサの割込み制御装置 |
US5442797A (en) * | 1991-12-04 | 1995-08-15 | Casavant; Thomas L. | Latency tolerant risc-based multiple processor with event driven locality managers resulting from variable tagging |
-
1994
- 1994-12-01 US US08/347,953 patent/US5623685A/en not_active Expired - Lifetime
-
1995
- 1995-08-01 DE DE69529689T patent/DE69529689T2/de not_active Expired - Lifetime
- 1995-08-01 JP JP51872996A patent/JP3789937B2/ja not_active Expired - Fee Related
- 1995-08-01 EP EP95944840A patent/EP0797803B1/en not_active Expired - Lifetime
- 1995-08-01 WO PCT/US1995/009661 patent/WO1996017308A1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
JP3789937B2 (ja) | 2006-06-28 |
EP0797803B1 (en) | 2003-02-19 |
EP0797803A1 (en) | 1997-10-01 |
WO1996017308A1 (en) | 1996-06-06 |
US5623685A (en) | 1997-04-22 |
DE69529689D1 (de) | 2003-03-27 |
DE69529689T2 (de) | 2003-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4524416A (en) | Stack mechanism with the ability to dynamically alter the size of a stack in a data processing system | |
CN100378655C (zh) | 并行处理器中的多线程执行 | |
US5664215A (en) | Data processor with an execution unit for performing load instructions and method of operation | |
US5632025A (en) | Method for preventing multi-level cache system deadlock in a multi-processor system | |
US5251306A (en) | Apparatus for controlling execution of a program in a computing device | |
US5185868A (en) | Apparatus having hierarchically arranged decoders concurrently decoding instructions and shifting instructions not ready for execution to vacant decoders higher in the hierarchy | |
EP1214661B1 (en) | Sdram controller for parallel processor architecture | |
US6606704B1 (en) | Parallel multithreaded processor with plural microengines executing multiple threads each microengine having loadable microcode | |
US4933837A (en) | Methods and apparatus for optimizing instruction processing in computer systems employing a combination of instruction cache and high speed consecutive transfer memories | |
US7743235B2 (en) | Processor having a dedicated hash unit integrated within | |
US20040162933A1 (en) | Sram controller for parallel processor architecture including an address and command queue and method for controlling access to a RAM | |
US5265233A (en) | Method and apparatus for providing total and partial store ordering for a memory in multi-processor system | |
EP1202180A1 (en) | Scalar data cache for a vector processor | |
JPH02208729A (ja) | マイクロコード式実行装置での並列動作による複数機能装置の制御 | |
JPH02206837A (ja) | パイプライン方式のコンピューターシステムにおける色々な個数の潜在的メモリーアクセス矛盾を解決する方法及び装置 | |
KR100346515B1 (ko) | 수퍼파이프라인된수퍼스칼라프로세서를위한임시파이프라인레지스터파일 | |
JPH02255932A (ja) | マルチプロセツサ・システム | |
JPH05143443A (ja) | データ処理装置 | |
JPH05508495A (ja) | 多重プロセッサ用大域レジスタ | |
JP2008181551A (ja) | ベクトルレジスタを備えたコンピュータにおけるベクトルテールゲーティング | |
US5696939A (en) | Apparatus and method using a semaphore buffer for semaphore instructions | |
US6012135A (en) | Computer having multiple address ports, each having logical address translation with base and limit memory management | |
US20020169933A1 (en) | Scalble memory | |
EP0533427A1 (en) | Computer memory control system | |
JP3789937B2 (ja) | ベクトルプロセッサのためのチャンク連鎖 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060330 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060301 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060522 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090407 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100407 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110407 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120407 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |