IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0813433
(2004-03-31)
|
등록번호 |
US-8484441
(2013-07-09)
|
발명자
/ 주소 |
|
출원인 / 주소 |
|
인용정보 |
피인용 횟수 :
1 인용 특허 :
33 |
초록
▼
A computer processor with control and data processing capabilities comprises a decode unit for decoding instructions. A data processing facility comprises a first data execution path including fixed operators and a second data execution path including at least configurable operators, the configurabl
A computer processor with control and data processing capabilities comprises a decode unit for decoding instructions. A data processing facility comprises a first data execution path including fixed operators and a second data execution path including at least configurable operators, the configurable operators having a plurality of predefined configurations, at least some of which are selectable by means of an opcode portion of a data processing instruction. The decode unit is operable to detect whether a data processing instruction defines a fixed data processing operation or a configurable data processing operation, said decode unit causing the computer system to supply data for processing to said first data execution path when a fixed data processing instruction is detected and to said configurable data execution path when a configurable data processing instruction is detected.
대표청구항
▼
1. A hardware computer processor having control and data processing capabilities, said computer processor comprising: a hardware decode unit for decoding instructions and operable to separate control instructions from data processing instructions thereby to supply all control instructions and no dat
1. A hardware computer processor having control and data processing capabilities, said computer processor comprising: a hardware decode unit for decoding instructions and operable to separate control instructions from data processing instructions thereby to supply all control instructions and no data processing instructions to a dedicated hardware control processing facility;the dedicated hardware control processing facility comprising a control execution path dedicated to processing only said control instructions, said control execution path having its own control register file of a first bit width for handling control instructions of a first bit width and functional units comprising a branch unit, a hardware execution unit, and a load/store unit; anda dedicated hardware data processing facility dedicated to processing said data processing instructions, said dedicated data processing facility separate from said dedicated control processing facility and having its own data register file separate from said control register file, said data register file having a second bit width for handling data processing instructions of a second bit width, said second bit width wider than the first bit width, said dedicated data processing facility comprising a first data execution path including fixed operators and a second data execution path including at least configurable operators and a controller, both of said first and second data execution paths separate from said control execution path and each other, wherein said configurable operators are pre-configured into a plurality of hardwired operator classes;wherein said decode unit is operable to supply one of said control instructions to one of said functional units and operable to detect whether one of said data processing instructions defines a fixed data processing instruction or a configurable data processing instruction, wherein said configurable data processing instruction indicates at least one operand to be processed and includes an opcode portion defining the operation to be carried out on the at least one operand, said decode unit causing the computer processor to supply said one of said data processing instructions to said first data execution path for processing when said fixed data processing instruction is detected and to said second data execution path for processing when said configurable data processing instruction is detected; andwherein said controller is operable to configure the connectivity of said configurable operators in accordance with configuration information provided in the opcode portion of said configurable data processing instruction, and wherein said configurable operators are arranged to receive said at least one operand. 2. A computer processor according to claim 1, wherein the decode unit is capable of decoding a stream of instruction packets from memory, each packet comprising a plurality of instructions. 3. A computer processor according to claim 1, wherein the decode unit is operable to detect if an instruction packet contains a data processing instruction. 4. A computer processor according to claim 1, wherein the configurable operators are configurable at the level of multibit values. 5. A computer system according to claim 4, wherein the configurable operators are configurable at the level of words. 6. A computer processor according to claim 1, wherein a plurality of the fixed operators of the first data execution path is arranged to perform a plurality of fixed operations in independent lanes according to single instruction multiple data principles. 7. A computer processor according to claim 1, wherein a plurality of configurable operators of the second data execution path is arranged to perform multiple operations in different lanes according to single instruction multiple data principles. 8. A computer processor according to claim 1, wherein configurable operators of the second data execution path are arranged to receive configuration information which determines the nature of the operations performed. 9. A computer processor according to claim 8, wherein configurable operators of the second execution path are arranged to receive configuration information which determines the nature of the operations performed from said opcode portion of the configurable data processing instruction. 10. A computer processor according to claim 1, wherein interconnectivity between two or more of said configurable operators of the second data execution path is controlled by configuration information. 11. A computer processor according to claim 1, wherein at least one configurable operator of the second data execution path is capable of executing data processing instructions with an execution depth greater than two computations before returning results to a results store. 12. A computer processor according to claim 1, comprising a switch mechanism for receiving results from one or more of said configurable operators and switching the results as appropriate for supply to one or more of a result store and feed back loop. 13. A computer processor according to claim 1, comprising a plurality of control maps for mapping configuration bits received from configurable data processing instructions to configuration information for supply to configurable operators of the second data execution path. 14. A computer processor according to claim 1, comprising a switch mechanism for receiving configuration information from a control map and switching it as appropriate for supply to configurable operators of the second data execution path. 15. A computer processor according to claim 1, comprising configurable operators selected from one or more of: multiply accumulate operators; arithmetic operators; state operators; and cross-lane permuters. 16. A computer processor according to claim 1, comprising operators and an instruction set capable of performing one or more operations selected from: Fast Fourier Transforms; Inverse Fast Fourier Transforms; Viterbi encoding/decoding; Turbo encoding/decoding; and Finite Impulse Response calculations; and any other Correlations or Convolutions. 17. A method of operating a computer processor having control and data processing capabilities, said computer processor comprising a decode unit for decoding instructions; a dedicated control processing facility comprising a control execution path dedicated to processing only control instructions, said control execution path having its own control register file of a first bit width for handling control instructions of a first bit width and functional units comprising a branch unit, an execution unit, and a load/store unit; and a dedicated data processing facility dedicated to processing data processing instructions, said dedicated data processing facility separate from said dedicated control processing facility and having its own data register file separate from said control register file, said data register file having a second bit width for handling data processing instructions of a second bit width, said second bit width wider than the first bit width, said dedicated data processing facility comprising a first data execution path including fixed operators and a second data execution path including at least configurable operators and a controller, both of said first and second data execution paths separate from said control execution path and each other, wherein said configurable operators are pre-configured into a plurality of hardwired operator classes, the method comprising: separating, with said decode unit, control instructions from data processing instructions thereby supplying all control instructions and no data processing instructions to the dedicated control processing facility;supplying, by said decode unit, one of said control instructions to one of said functional units;decoding a plurality of instructions to detect whether at least one of said data processing instructions of said plurality of instructions defines a fixed data processing instruction or a configurable data processing instruction, wherein said configurable data processing instruction indicates at least one operand to be processed and includes an opcode portion defining the operation to be carried out on the at least one operand;causing the computer processor to supply said at least one of said data processing instructions to said first data execution path for processing when said fixed data processing instruction is detected and to said second data execution path for processing when said configurable data processing instruction is detected;configuring the connectivity of said configurable operators in accordance with configuration information provided in said opcode portion of said configurable data processing instruction, wherein said configurable operators are arranged to receive said at least one operand; andoutputting results produced by said first data execution path when a fixed data processing instruction is detected and outputting results produced by said second data execution path when a configurable processing instruction is detected. 18. A hardware computer processor having control and data processing capabilities, said computer processor comprising: a hardware decode unit for decoding instructions and operable to separate control instructions from data processing instructions thereby to supply all control instructions and no data processing instructions to a dedicated hardware control processing facility;the dedicated hardware control processing facility comprising a control execution path dedicated to processing only said control instructions, said control execution path having its own control register file of a first bit width for handling control instructions of a first bit width and functional units, comprising a branch unit, a hardware execution unit, and a load/store unit;a dedicated hardware data processing facility dedicated to processing said data processing instructions, said dedicated data processing facility separate from said dedicated control processing facility and having its own data register file separate from said control register file, said data register file having a second bit width for handling data processing instructions of a second bit width, said second bit width wider than the first bit width, said dedicated data processing facility comprising a first data execution path including fixed operators and a second data execution path including at least configurable operators and a controller, both of said first and second data execution paths separate from said control execution path and each other, wherein said configurable operators are pre-configured into a plurality of hardwired operator classes; anda switch mechanism for receiving data processing operands from a configurable data processing instruction and switching them as appropriate for supply to one or more of said configurable operators;wherein said decode unit is operable to supply one of said control instructions to one of said functional units and operable to detect whether one of said data processing instructions defines a fixed data processing instruction or said configurable data processing instruction, wherein said configurable data processing instruction indicates at least one operand to be processed and includes an opcode portion defining the operation to be carried out on the at least one operand, said decode unit causing the computer processor to supply said one of said data processing instructions to said first data execution path for processing when said fixed data processing instruction is detected and to said second data execution path for processing when said configurable data processing instruction is detected; andwherein said controller is operable to configure the connectivity of said configurable operators in accordance with configuration information provided in the opcode portion of said configurable data processing instruction, and wherein said configurable operators are arranged to receive said at least one operand. 19. A hardware computer processor having control and data processing capabilities, said computer processor comprising: a hardware decode unit for decoding instructions and operable to separate control instructions from data processing instructions thereby to supply all control instructions and no data processing instructions to a dedicated hardware control processing facility;the dedicated hardware control processing facility comprising a control execution path dedicated to processing only said control instructions, said control execution path having its own control register file of a first bit width for handling control instruction of a first bit width and functional units comprising a branch unit, a hardware execution unit, and a load/store unit; anda dedicated hardware data processing facility dedicated to processing said data processing instructions, said dedicated data processing facility separate from said dedicated control processing facility and having its own data register file separate from said control register file, said data register file having a second bit width for handling data processing instructions of a second bit width, said second bit width wider than the first bit width, said dedicated data processing facility comprising a first data execution path including fixed operators and a second data execution path including at least configurable operators and a controller, both of said first and second data execution paths separate from said control execution path and each other, wherein said configurable operators are pre-configured into a plurality of hardwired operator classes, wherein said configurable operators are configurable at the level of multibit values comprising four or more bits;wherein said decode unit is operable to supply one of said control instructions to one of said functional units and operable to detect whether one of said data processing instructions defines a fixed data processing instruction or a configurable data processing instruction, wherein said configurable data processing instruction indicates at least one operand to be processed and includes an opcode portion defining the operation to be carried out on the at least one operand, said decode unit causing the computer processor to supply said one of said data processing instructions to said first data execution path for processing when said fixed data processing instruction is detected and to said second data execution path for processing when said configurable data processing instruction is detected; andwherein said controller is operable to configure the connectivity of said configurable operators in accordance with configuration information provided in the opcode portion of said configurable data processing instruction, and wherein said configurable operators are arranged to receive said at least one operand. 20. A hardware computer processor having control and data processing capabilities, said computer processor comprising: a hardware decode unit for decoding instructions and operable to separate control instructions from data processing instructions thereby to supply all control instructions and no data processing instructions to a dedicated hardware control processing facility;the dedicated hardware control processing facility comprising a control execution path dedicated to processing only said control instructions, said control execution path having its own control register file of a first bit width for handling control instructions of a first bit width and functional units comprising a branch unit, a hardware execution unit, and a load/store unit;a dedicated hardware data processing facility dedicated to processing said data processing instructions, said dedicated data processing facility separate from said dedicated control processing facility and having its own data register file separate from said control register, said data register file having a second bit width for handling data processing instructions of a second bit width, said second bit width wider than the first bit width, said dedicated data processing facility comprising a first data execution path including fixed operators and a second data execution path including at least configurable operators and a controller, both of said first and second data execution paths separate from said control execution path and each other, wherein said configurable operators are pre-configured into a plurality of hardwired operator classes and arranged to receive configuration information which determines the nature of the operations to be performed; anda control map associated with said configurable operators of the second execution path, said control map being operable to receive at least one configuration bit from a configurable data processing instruction and to provide configuration information to the configurable operators responsive thereto;wherein said decode unit is operable to supply one of said control instructions to one of said functional units and operable to detect whether one of said data processing instructions defines a fixed data processing instruction or said configurable data processing instruction, wherein said configurable data processing instruction indicates at least one operand to be processed and includes an opcode portion defining the operation to be carried out on the at least one operand, said decode unit causing the computer processor to supply said one of said data processing instructions to said first data execution path for processing when said fixed data processing instruction is detected and to said second data execution path for processing when said configurable data processing instruction is detected; andwherein said controller is operable to configure the connectivity of said configurable operators in accordance with said configuration information provided in the opcode portion of said configurable data processing instruction, and wherein said configurable operators are arranged to receive said at least one operand.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.