Fine-grained instruction enablement at sub-function granularity based on an indicated subrange of registers
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-009/30
G06F-009/34
출원번호
US-0681520
(2012-11-20)
등록번호
US-9727337
(2017-08-08)
발명자
/ 주소
Gschwind, Michael K.
Olsson, Brett
Salapura, Valentina
출원인 / 주소
INTERNATIONAL BUSINESS MACHINES CORPORATION
대리인 / 주소
Kinnaman, William A.
인용정보
피인용 횟수 :
0인용 특허 :
61
초록▼
Fine-grained enablement at sub-function granularity. An instruction encapsulates different sub-functions of a function, in which the sub-functions use different sets of registers of a composite register file, and therefore, different sets of functional units. At least one operand of the instruction
Fine-grained enablement at sub-function granularity. An instruction encapsulates different sub-functions of a function, in which the sub-functions use different sets of registers of a composite register file, and therefore, different sets of functional units. At least one operand of the instruction specifies which set of registers, and therefore, which set of functional units, is to be used in performing the sub-function. The instruction can perform various functions (e.g., move, load, etc.) and a sub-function of the function specifies the type of function (e.g., move-floating point; move-vector; etc.).
대표청구항▼
1. A method comprising: obtaining, by a processor, a machine instruction for execution, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction comprising: at least one opcode field identifying the machine instruction, execution of w
1. A method comprising: obtaining, by a processor, a machine instruction for execution, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction comprising: at least one opcode field identifying the machine instruction, execution of which is to access one or more registers of a register file; andat least one field used to distinguish between subranges of registers of the register file, wherein the subranges of registers of the register file comprise subranges of multiple consecutive registers; andexecuting, by the processor, the machine instruction, the executing comprising: obtaining, based on the machine instruction, a value indicating one subrange of registers of the subranges of registers of the register file;determining that the value indicates the one subrange of registers;based on the indicated one subrange of registers, checking a corresponding at least one control indicator, of a plurality of control indicators for controlling enablement of a plurality of operations, the corresponding at least one control indicator indicating whether or not an operation, of the plurality of operations, indicated by the at least one opcode field is enabled to be performed, the operation to access the indicated one subrange of registers, wherein the corresponding at least one control indicator controls enablement of the operation separate from and regardless of enablement of one or more other operations of the plurality of operations; andperforming the operation using the indicated one subrange of registers, based on the checking indicating that the operation is enabled to be performed. 2. The method of claim 1, wherein the subranges of registers comprise a floating point subrange of multiple consecutive registers and a vector subrange of multiple consecutive registers. 3. The method of claim 1, wherein the corresponding at least one control indicator comprises a floating point enable indicator or a vector enable indicator depending on the value obtained based on the machine instruction. 4. The method of claim 1, wherein the corresponding at least one control indicator comprises a floating point enable indicator, a vector enable indicator or a vector-scalar enable indicator. 5. The method of claim 1, wherein the operation is a sub-function of a function, the sub-function defined by the indicated one subrange of registers indicated by the value. 6. The method of claim 5, wherein the sub-function is a move-floating point sub-function or a move-vector sub-function, depending on the indicated one subrange of registers. 7. The method of claim 1, wherein the corresponding at least one control indicator is located within a register, the register comprising the plurality of control indicators, said plurality of control indicators comprising an enable indicator for the indicated one subrange of registers and an enable indicator for another subrange of registers of the subranges of registers. 8. The method of claim 1, wherein the indicated one subrange of registers comprises a first 32 registers of the register file and another subrange of registers of the subranges of registers comprises a next 32 registers of the register file. 9. The method of claim 1, wherein the indicated one subrange of registers comprises a last 32 registers of the register file and another subrange of registers of the subranges of registers comprises a first 32 registers of the register file. 10. The method of claim 1, wherein the executing further comprises taking an interrupt, based on the checking indicating that the operation is not enabled to be performed.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (61)
Cutler David N. (Bellevue WA) Orbits David A. (Redmond WA) Bhandarkar Dileep (Shrewsbury MA) Cardoza Wayne (Merrimack NH) Witek Richard T. (Littleton MA), Apparatus and method for data induced condition signalling.
Hinds Christopher Neal ; Jaggar David Vivian ; Matheny David Terrence ; Seal David James,GBX, Apparatus and method for processing data having a mixed vector/scalar register file.
Cutler David N. (Bellevue WA) Orbits David A. (Redmond WA) Bhandarkar Dileep (Shrewsbury MA) Cardoza Wayne (Merrimack NH) Witek Richard T. (Littleton MA), Apparatus and method for recovering from missing page faults in vector data processing operations.
Lynch Thomas W. ; Ahmed Ashraf, Apparatus and method for tagging floating point operands and results for rapid detection of special floating point numbers.
Yoshida Toyohiko (Itami JPX), Apparatus for a multi-data store or load instruction for transferring multiple contiguous storage locations in one trans.
Pentovski Vladimir ; Bennett Gerald ; Fischer Stephen A. ; Heit Eric ; Hinton Glenn J. ; Roussel Patrice L., Checking data type of operands specified by an instruction using attributes in a tagged array architecture.
Abdallah Mohammad A. F. ; Hsieh Hsien-Cheng E. ; Huff Thomas R. ; Pentkovski Vladimir ; Roussel Patrice ; Thakkar Shreekant S., Conversion from packed floating point data to packed 8-bit integer data in different architectural registers.
Meier Stephan G. ; Juffa Norbert ; Achenbach Michael D. ; Weber Frederick D., Converting register data from a first format type to a second format type if a second type instruction consumes data produced by a first type instruction.
Abdallah Mohammad A. F. ; Hsieh Hsien-Cheng E. ; Huff Thomas R. ; Pentkovski Vladimir ; Roussel Patrice ; Thakkar Shreekant S., Data conversion between floating point packed format and integer scalar format.
Mahant-Shetti Shivaling S. ; Smith Derek J. ; Pawate Basavaraj I. ; Doddington George R. ; Bean Warren L. ; Harward Mark G. ; Aton Thomas J., Distributed processing memory chip with embedded logic having both data memory and broadcast memory.
Glew Andrew F. (Hillsboro OR) Mennemeier Larry M. (Boulder Creek CA) Peleg Alexander D. (Haifa ILX) Bistry David (Cupertino CA) Mittal Millind (South San Francisco CA) Dulong Carole (Saratoga CA) Kow, Executing different instructions that cause different data type operations to be performed on single logical register fi.
Fuller Richard A. (West Hurley NY) Ghose Arun K. (Hyde Park NY) Sell Faith W. (Saugerties NY) Siegel Michael S. (Hyde Park NY), Execution unit with an integrated vector operation capability.
Oberman Stuart F., Floating point addition pipeline configured to perform floating point-to-integer and integer-to-floating point conversion operations.
Fujii Hiroaki (Kokubunji CA JPX) Hamanaka Naoki (Palo Alto CA) Tanaka Teruo (Hachoiji JPX) Inagami Yasuhiro (Kodaira JPX) Tamaki Yoshiko (Kodaira JPX), Information processing apparatus having a register file used interchangeably both as scalar registers of register window.
Putrino Michael ; Eisen Lee E., Load-store unit and method of loading and storing single-precision floating-point registers in a double-precision archi.
Hsieh Hsien-Cheng E. ; Huff Thomas R. ; Pentkovski Vladimir ; Roussel Patrice ; Thakkar Shreekant S., Method and apparatus for parallel conversion of color values from a single precision floating point format to an integer.
Agarwal Ramesh Chandra ; Groves Randall Dean ; Gustavson Fred Gehrung ; Johnson Mark Alan ; Olsson Brett, Method and system for providing a single-instruction, multiple-data execution unit for performing single-instruction, mu.
Orenstein Doron,ILX ; Wechsler Ofri,ILX ; Mittal Millind ; Glew Andrew F. ; Mennemeier Larry M. ; Peleg Alexander D.,ILX ; Bistry David ; Dulong Carole ; Kowashi Eiichi,JPX ; Eitan Benny,ILX ; Lin De, Method for executing different sets of instructions that cause a processor to perform different data type operations o.
Trissel David W. (Austin TX) Dorris Roderick L. (Austin TX) Werbner Stuart A. (Austin TX), Method for rapidly processing floating-point operations which involve exceptions.
Makineni Sivakumar ; Kimn Sunnhyuk ; Doshi Gautam B. ; Golliver Roger A., Method for setting a bit associated with each component of packed floating-pint operand that is normalized in SIMD operations.
Favor John G., Microprocessor including multiple register files mapped to the same logical storage and inhibiting sychronization between the register files responsive to inclusion of an instruction in an instructio.
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.
Glew, Andrew F.; Menneneier, Larry M.; Peleg, Alexander D.; Bistry, David; Mittal, Millind; Dulong, Carole; Kowashi, Eiichi; Eitan, Benny; Lin, Derrik; Vakkalagadda, Romamohan R., Processor with instructions that operate on different data types stored in the same single logical register file.
Glew,Andrew F.; Mennemeier,Larry M.; Peleg,Alexander D.; Bistry,David; Mittal,Millind; Dulong,Carole; Kowashi,Eiichi; Eitan,Benny; Lin,Derrik; Vakkalagadda,Romamohan R., Processor with instructions that operate on different data types stored in the same single logical register file.
Gschwind, Michael Karl; Hofstee, Harm Peter; Hopkins, Martin Edward, SIMD datapath coupled to scalar/vector/address/conditional data register file with selective subpath scalar processing mode.
Blomgren James S. (San Jose CA) Richter David E. (Milpitas CA) Brashears Cheryl Senter (Cupertino CA), Shared floating-point registers and register port-pairing in a dual-architecture CPU.
Watanabe Akira (San Jose CA) Maheshwari Dinesh C. (Santa Clara CA) McKeever Bruce T. (Cupertino CA) Somasundaram Madian (San Jose CA), System for transferring M elements X times and transferring N elements one time for an array that is X*M+N long responsi.
Taborn Michael Preston (Austin TX) Bailey Roger Ned (Austin TX) Burchfiel Steven Michael (Austin TX), Variable stage load path and method of operation.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.