Conditional execution with multiple destination stores
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-007/38
G06F-009/00
G06F-009/44
G06F-015/00
출원번호
US-0545458
(2006-10-11)
등록번호
US-8521997
(2013-08-27)
발명자
/ 주소
Wilson, Sophie
출원인 / 주소
Broadcom Corporation
대리인 / 주소
Sterne, Kessler, Goldstein & Fox PLLC
인용정보
피인용 횟수 :
0인용 특허 :
32
초록▼
A method for conditionally performing a SIMD operation causing a predetermined number of result objects to be held in a combination of different ones of a plurality of destination stores, the method comprising receiving and decoding instruction fields to determine at least one source store, a plural
A method for conditionally performing a SIMD operation causing a predetermined number of result objects to be held in a combination of different ones of a plurality of destination stores, the method comprising receiving and decoding instruction fields to determine at least one source store, a plurality of destination stores and at least one control store, said source and destination stores being capable of holding one or a plurality of objects, each object defining a SIMD lane. Conditional execution of the operation on a per SIMD lane basis is controlled using a plurality of pre-set indicators of the at least one control store designated in the instruction, wherein each said pre-set indicator i controls a predetermined number of result lanes p, where p takes a value greater than or equal to two. A predetermined number of result objects are sent to the destination stores such that the predetermined number of result objects are held by a combination of different ones of the plurality of destination stores.
대표청구항▼
1. A method comprising: receiving, from an instruction stream, a first extended SIMD instruction portion by a first SIMD execution channel, the first extended SIMD instruction portion comprising at least one source store, a plurality of destination stores, an immediate value, and at least one contro
1. A method comprising: receiving, from an instruction stream, a first extended SIMD instruction portion by a first SIMD execution channel, the first extended SIMD instruction portion comprising at least one source store, a plurality of destination stores, an immediate value, and at least one control store, wherein said source and destination stores are capable of holding at least one source object and result object, respectively, each source object associated with a corresponding SIMD lane, and wherein said at least one control store comprises a plurality of pre-set indicators for controlling per SIMD lane conditional execution;receiving, from the instruction stream, a second extended SIMD instruction portion by a second SIMD execution channel, the second extended SIMD instruction portion comprising extension bits of the immediate value;executing an extended SIMD operation within the first SIMD execution channel, the extended SIMD operation comprising the combination of the first extended SIMD instruction portion and the second extended SIMD instruction portion;controlling conditional execution of the operation on the first SIMD execution channel on a per SIMD lane basis using said plurality of pre-set indicators of the at least one control store designated in the instruction, wherein each said pre-set indicator is operable to control a plurality of result lanes; andsending a predetermined number of result objects to said destination stores such that the predetermined number of said result objects are held by a combination of different ones of the plurality of destination stores. 2. A method comprising: receiving, from an instruction stream, a first extended SIMD instruction portion by a first SIMD execution channel, the first extended SIMD instruction portion comprising at least a source store and an immediate value;receiving, from the instruction stream, a second extended SIMD instruction portion by a second SIMD execution channel, the second extended SIMD instruction portion comprising extension bits of the immediate value; andexecuting an extended SIMD operation within the first SIMD execution channel, the extended SIMD operation comprising the combination of the first extended SIMD instruction portion and the second extended SIMD instruction portion. 3. The method of claim 2, wherein the extended SIMD operation further defines a destination store and a control store, wherein the source store and destination store holds at least one source object and result object, respectively, each source object associated with a corresponding SIMD lane. 4. The method of claim 3, wherein the control store comprises a plurality of pre-set indicators, further comprising: controlling conditional execution of the extended SIMD operation on a per SIMD lane basis using said plurality of pre-set indicators. 5. The method of claim 3, wherein the control store is defined within the first extended SIMD instruction portion. 6. The method of claim 2, wherein the first and second and subsequent extended SIMD instruction portions comprise a portion of an opcode identifying the first and second and subsequent instruction portions as part of the same extended SIMD operation. 7. The method of claim 2, wherein the second SIMD execution channel remains idle during the execution of the extended SIMD operation on the first SIMD execution channel. 8. The method of claim 2, wherein the second SIMD execution channel executes the extended SIMD operation redundantly with the first SIMD execution channel. 9. A system comprising: a first SIMD execution channel configured to receive a first extended SIMD instruction portion via an instruction stream having a source store and an immediate value;a second SIMD execution channel, independent of the first SIMD execution channel, configured to receive a second extended SIMD instruction portion via the instruction stream having extension bits of the immediate value; andan executing module within the first SIMD execution channel configured to execute an extended SIMD operation using the combination of the first extended SIMD instruction portion and the second extended SIMD instruction portion. 10. The system of claim 9, wherein the extended SIMD operation further defines a destination store and a control store, wherein the source store and destination store holds at least one source object and result object, respectively, each source object associated with a corresponding SIMD lane. 11. The system of claim 10, wherein the control store comprises a plurality of pre-set indicators, the system further comprising: a controlling module to control conditional execution of the extended SIMD operation on a per SIMD lane basis using said plurality of pre-set indicators. 12. The system of claim 10, wherein the control store is defined within the first extended SIMD instruction portion. 13. The system of claim 10, wherein the first and second and subsequent extended SIMD instruction portions comprise a portion of an opcode identifying the first and second and subsequent extended SIMD instruction portions as part of the same extended SIMD operation. 14. The system of claim 10, wherein the second SIMD execution channel remains idle during the execution of the extended SIMD operation on the first SIMD execution channel. 15. The system of claim 10, wherein the second SIMD execution channel executes the extended SIMD operation redundantly with the first SIMD execution channel.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (32)
Radigan James J. (Sunnyvale CA) Schwartz David A. (Moorpark CA), Activity masking with mask context of SIMD processors.
Li Hungwen (Pleasantville NY) Wang Ching-Chy (Fishkill NY), Adaptive instruction processing by array processor having processor identification and data dependent status registers i.
Baldwin David R. (Weybridge GBX) Wilson Malcolm E. (Salwayash GBX) Trevett Neil F. (Kingston-upon-Thames GBX), Architectures for serial or parallel loading of writable control store.
Artz Ray E. (Apple Valley MN) Martin Richard J. (Eagan MN) Splett Vincent E. (Burnsville MN), Arithmetic computation modifier based upon data dependent operations for SIMD architectures.
Miki Yoshio,JPX ; Shimada Kentaro,JPX ; Hanawa Makoto,JPX, Branch operation system where instructions are queued until preparations is ascertained to be completed and branch distance is considered as an execution condition.
Amerson Frederic C. (Santa Clara CA) Gupta Rajiv (Los Altos CA) Kumar Balasubramanian (Cupertino CA) Schlansker Michael S. (Los Altos CA) Worley William S. (Saratoga CA), Computer architecture for reducing delays due to branch instructions.
Auslander Marc A. (Millwood NY) Cocke John (Bedford NY) Hao Hsieh T. (Chappaqua NY) Markstein Peter W. (Yorktown Heights NY) Radin George (Piermont NY), Condition register architecture for a primitive instruction set machine.
Jonathan H. Shiell ; Patrick W. Bosshart, Data processor having memory access unit with predetermined number of instruction cycles between activation and initial data transfer.
Benayoun, Alain; Le Pennec, Jean-Francois; Pin, Claude; Michel, Patrick, Hardware device for parallel processing of any instruction within a set of instructions.
Auslander Marc A. (Millwood NY) Cocke John (Bedford NY) Hao Hsieh T. (Chappaqua NY) Markstein Peter W. (Yorktown Heights NY) Radin George (Piermont NY), Mechanism for implementing one machine cycle executable trap instructions in a primitive instruction set computing syste.
Dubey Pradeep Kumar,INX ; Olsson Brett ; Hochsprung Ronald Ray ; Scales ; III Hunter Ledbetter ; Diefendorff Keith Everett, Method and system for a result code for a single-instruction multiple-data predicate compare operation.
Yamada Akira,JPX ; Yoshida Toyohiko,JPX ; Kengaku Toru,JPX, Microprocessor capable of executing condition execution instructions using encoded condition execution field in the inst.
Hoyle, David; Scales, Richard H.; Wang, Min; Zbiciak, Joseph R., Microprocessor with instructions for shifting data responsive to a signed count value.
Peleg Alexander (Haifa ILX) Yaari Yaakov (Haifa ILX) Mittal Millind (South San Francisco CA) Mennemeier Larry M. (Boulder Creek CA) Eitan Benny (Haifa ILX), Processor performing packed data multiplication.
Chiarulli Donald M. (4724 Newcomb Dr. Baton Rouge LA 70808) Rudd W. G. (Dept. of Computer Science Oregon State University Corvallis OR 97331) Buell Duncan A. (1212 Chippenham Dr. Baton Rouge LA 70808, Processor utilizing reconfigurable process segments to accomodate data word length.
Okumura Yukihiko,JPX ; Miki Toshio,JPX ; Ohya Tomoyuki,JPX ; Miki Yoshinori,JPX, SIMD multiprocessor with an interconnection network to allow a datapath element to access local memories.
Nguyen Le Trong ; Song Seungyoon Peter ; Mohamed Moataz A. ; Park Heonchul ; Wong Roney Sau Don, Single-instruction-multiple-data processing using multiple banks of vector registers.
Thayer John S. ; Favor John G. ; Weber Frederick D., System and method for conditional moving an operand from a source register to destination register.
Kumar Manoj (Yorktown Heights NY) Tsao Michael Mi. (Yorktown Heights NY), System with flexible local control for modifying same instruction partially in different processor of a SIMD computer sy.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.