Instruction Decoding (e.g., By Microinstruction, Start Address Generator, Hardwired) Patents (Class 712/208)
-
Patent number: 9424040Abstract: An LSI includes an address decoder in which combinations of IP cores and control registers simultaneously accessed according to an operation mode signal are set in advance, so that the plurality of control registers can be accessed with a single system address signal. Therefore, it is unnecessary that the CPU is provided with selection signals whose number is equal to that of the combinations of the control registers. This reduces coding work for operating CPU, reducing work in developing a program of the CPU.Type: GrantFiled: July 4, 2013Date of Patent: August 23, 2016Assignee: Mitsubishi Electric CorporationInventors: Yusuke Shimai, Osamu Toyama, Yoshihiro Ogawa
-
Patent number: 9405534Abstract: A processor system includes a multichannel memory operable to store data values and a program memory operable to store Compound CISC (CCISC) instructions. The processor system also includes a processor operable to execute a computer program assembled with at least a portion of the compound CCISC instructions, to retrieve a CCISC instruction from the program memory, to access at least two data values in the multichannel memory based on the executed computer program, and to operate on the at least two data values in the multichannel memory based on the CCISC instruction. The processor retrieves the CCISC instruction, accesses the at least two data values, and operates on the at least two data values during a same clock cycle.Type: GrantFiled: January 21, 2013Date of Patent: August 2, 2016Inventor: Tom Yap
-
Patent number: 9389939Abstract: An information processing apparatus according to one aspect of the present disclosure includes a communication control portion, an error code storage portion, an acquiring portion, and a determination portion. Communication control portion communicates with storage device based on interface communication standard, to perform data transfer therewith. Error code storage portion stores one or a plurality of selected error codes selected from a plurality of error codes defined by interface communication standard. Acquiring portion acquires error information outputted from storage device. Determination portion determines whether or not error code indicated by error information coincides with selected error code. When determination portion determines that error code coincides with selected error code, communication control portion communicates again with storage device to perform data transfer therewith.Type: GrantFiled: March 24, 2014Date of Patent: July 12, 2016Assignee: KYOCERA Document Solutions Inc.Inventors: Naruyuki Miyamoto, Tomoyuki Kikuta, Takashi Inoue, Tetsuya Matsusaka
-
Patent number: 9348723Abstract: A method for retrieving trace data from a target device is proposed. The target device comprises a program memory, a processor, a trace unit, and a trace buffer. The processor is operable to retrieve instructions from the program memory and to execute them. The trace buffer may contain trace data generated by the trace unit in response to the processor retrieving or executing instructions from the program memory. One or more patch instructions are written to the program memory. The processor executes said one or more patch instructions. The target device, in response to the processor executing said one or more patch instructions, performs a data transfer operation for copying the trace data from the trace buffer to a second memory outside the target device.Type: GrantFiled: January 21, 2011Date of Patent: May 24, 2016Assignee: Freescale Semiconductor, Inc.Inventors: Razvan Ionescu, Ionut-Valentin Vicovan
-
Patent number: 9342397Abstract: A transactional memory system salvages a hardware transaction. A processor of the transactional memory system executes a salvage indicator instruction, such execution including obtaining a salvage indication information specified by the salvage indicator instruction, and saving the salvage indication information comprising a salvage indication. Based on a pending point of failure being detected, the processor uses the saved salvage indication information to avoid aborting a hardware transaction, wherein absent salvage indication information, the pending point of failure causes a hardware transaction to abort. The processor detects the point of failure, and based on the detecting, determines whether the salvage indication has been recorded. Based on determining that the salvage indication has been recorded, the processor executes an about-to-fail handler, and based on determining that the salvage indication has not been recorded, the processor aborts the transactional execution of the code region.Type: GrantFiled: September 16, 2015Date of Patent: May 17, 2016Assignee: International Business Machines CorporationInventors: Fadi Y. Busaba, Harold W. Cain, III, Maged M. Michael, Valentina Salapura, Eric M. Schwarz
-
Patent number: 9338149Abstract: A process for converting a DTCP-IP transport stream into HLS format, comprising receiving an encrypted DTCP-IP transport stream comprising DTCP frames at a secondary device from a source device, with each of the plurality of DTCP frames comprising encrypted 16-byte portions, forming chunks from the DTCP frames by grouping encrypted 16-byte portions into a chunk, adding HLS padding bytes to the end of each chunk and encrypting the HLS padding bytes to form an encrypted chunk, loading each of the encrypted chunks and a playlist to a media proxy server at the secondary device, loading a DTCP key onto a security proxy server, and providing the playlist, each of the encrypted chunks, and the DTCP key to a native media player on the secondary device, such that the native media player follows the playlist to decrypt the encrypted chunks using the DTCP key and plays back the chunks.Type: GrantFiled: March 17, 2014Date of Patent: May 10, 2016Assignee: ARRIS Enterprises, Inc.Inventor: Paul Moroney
-
Patent number: 9336097Abstract: A transactional memory system salvages a partially executed hardware transaction. A processor of the transactional memory system determines information about an about-to-fail handler for transactional execution of a code region of a hardware transaction. The processor saves state information of the hardware transaction, the state information usable to determine whether the hardware transaction is to be salvaged or to be aborted. The processor detects an about-to-fail condition during the transactional execution of the hardware transaction. The processor, based on the detecting, executes the about-to-fail handler using the information about the about-to-fail handler, the about-to-fail handler determining whether the hardware transaction is to be salvaged or to be aborted.Type: GrantFiled: February 27, 2014Date of Patent: May 10, 2016Assignee: International Business Machines CorporationInventors: Harold W. Cain, III, Michael Karl Gschwind, Maged M. Michael, Valentina Salapura, Eric M. Schwarz
-
Patent number: 9329946Abstract: A transactional memory system salvages a partially executed hardware transaction. A processor of the transactional memory system saves state information in a first code region of a first hardware transaction, the state information useable to determine whether the first hardware transaction is to be salvaged or to be aborted. The processor detects an about to fail condition in the first code region of the first hardware transaction. The processor, based on the detecting, executes an about-to-fail handler, the about-to-fail handler using the saved state information to determine whether the first hardware transaction is to be salvaged or to be aborted. The processor executing the about-to-fail handler, based on the transaction being to be salvaged, uses the saved state information to determine what portion of the first hardware transaction to salvage.Type: GrantFiled: February 27, 2014Date of Patent: May 3, 2016Assignee: International Business Machines CorporationInventors: Harold W. Cain, III, Michael Karl Gschwind, Maged M. Michael, Valentina Salapura, Eric M. Schwarz
-
Patent number: 9317263Abstract: Hardware compilation and/or translation with fault detection and roll back functionality are disclosed. Compilation and/or translation logic receives programs encoded in one language, and encodes the programs into a second language including instructions to support processor features not encoded into the original language encoding of the programs. In one embodiment, an execution unit executes instructions of the second language including an operation-check instruction to perform a first operation and record the first operation result for a comparison, and an operation-test instruction to perform a second operation and a fault detection operation by comparing the second operation result to the recorded first operation result.Type: GrantFiled: October 14, 2014Date of Patent: April 19, 2016Assignee: Intel CorporationInventors: Nicholas Cheng Hwa Chee, Tryggve Fossum, William C. Hasenplaugh
-
Patent number: 9311178Abstract: A transactional memory system salvages a hardware transaction. A processor of the transactional memory system executes a salvage indicator instruction, such execution including obtaining a salvage indication information specified by the salvage indicator instruction, and saving the salvage indication information comprising a salvage indication. Based on a pending point of failure being detected, the processor uses the saved salvage indication information to avoid aborting a hardware transaction, wherein absent salvage indication information, the pending point of failure causes a hardware transaction to abort. The processor detects the point of failure, and based on the detecting, determines whether the salvage indication has been recorded. Based on determining that the salvage indication has been recorded, the processor executes an about-to-fail handler, and based on determining that the salvage indication has not been recorded, the processor aborts the transactional execution of the code region.Type: GrantFiled: February 27, 2014Date of Patent: April 12, 2016Assignee: International Business Machines CorporationInventors: Fadi Y. Busaba, Harold W. Cain, III, Maged M. Michael, Valentina Salapura, Eric M. Schwarz
-
Patent number: 9305164Abstract: The effects on networking systems of attacks on vulnerabilities, such as vulnerable modules in a webserver, SYN flooding, etc, can be devastating to a network environment. In various embodiments, a first, quick, or inexpensive analysis is performed on incoming network flows. If an intrusion issue or other problem is suspected based on the first, rapid, or an inexpensive analysis, then the flow can be flagged for redirection to another process, virtual machine, or physical computer module that will perform a deeper, more expensive analysis on the network flow. If there are no issues detected in the second, deeper analysis, then the network flow can be forwarded to its intended recipient. If an issue is detected in the second, deeper analysis, then the network flow can be throttled, quarantined, ignored, sent to an un-trusted portion of the system, sent for more analysis, or otherwise handled or flagged.Type: GrantFiled: August 12, 2013Date of Patent: April 5, 2016Assignee: Amazon Technologies, Inc.Inventors: Eric Jason Brandwine, Swaminathan Sivasubramanian, Bradley E. Marshall, Tate Andrew Certain
-
Patent number: 9292290Abstract: A circuit arrangement decodes instructions based in part on one or more decode-related attributes stored in a memory address translation data structure such as an Effective To Real Translation (ERAT) or Translation Lookaside Buffer (TLB). A memory address translation data structure may be accessed, for example, in connection with a decode of an instruction stored in a page of memory, such that one or more attributes associated with the page in the data structure may be used to control how that instruction is decoded.Type: GrantFiled: July 23, 2013Date of Patent: March 22, 2016Assignee: International Business Machines CorporationInventors: Adam J. Muff, Paul E. Schardt, Robert A. Shearer, Matthew R. Tubbs
-
Patent number: 9286071Abstract: A method decodes instructions based in part on one or more decode-related attributes stored in a memory address translation data structure such as an Effective To Real Translation (ERAT) or Translation Lookaside Buffer (TLB). A memory address translation data structure may be accessed, for example, in connection with a decode of an instruction stored in a page of memory, such that one or more attributes associated with the page in the data structure may be used to control how that instruction is decoded.Type: GrantFiled: August 28, 2015Date of Patent: March 15, 2016Assignee: International Business Machines CorporationInventors: Adam J. Muff, Paul E. Schardt, Robert A. Shearer, Matthew R. Tubbs
-
Patent number: 9280352Abstract: An apparatus and method for avoiding bubbles and maintaining a maximum instruction throughput rate when cracking microcode instructions. A lookahead pointer scans the newest entries of a dispatch queue for microcode instructions. A detected microcode instruction is conveyed to a microcode engine to be cracked into a sequence of micro-ops. Then, the sequence of micro-ops is placed in a queue, and when the original microcode instruction entry in the dispatch queue is selected for dispatch, the sequence of micro-ops is dispatched to the next stage of the processor pipeline.Type: GrantFiled: November 30, 2011Date of Patent: March 8, 2016Assignee: Apple Inc.Inventors: Ramesh B. Gunna, Peter J. Bannon, Rajat Goel
-
Patent number: 9268567Abstract: Instructions and logic provide extended vector suffix comparisons for Boyer-Moore searches. Some embodiments, responsive to an instruction specifying: a pattern source operand and a target source operand, compare each of m data elements of the pattern operand with each data element of the target operand. A first and second equal ordered aggregation operation are performed from the comparisons according to the m data elements of the pattern source operand. A result of the first and second aggregation operations indicating whether or not a possible match exists between the m data elements of the pattern source operand and d data element positions relative to data elements of the target source operand is stored. Ordering of the data elements of the pattern and the target operands may be reversed for the second aggregation operation, and d may be a sum of m?1 and the quantity of target operand elements in some embodiments.Type: GrantFiled: September 30, 2012Date of Patent: February 23, 2016Assignee: Intel CorporationInventor: Shih J. Kuo
-
Patent number: 9268704Abstract: According to one embodiment, a method for exchanging data in a system that includes a main processor in communication with an active memory device is provided. The method includes a processing element in the active memory device receiving an instruction from the main processor and receiving a store request from a thread running on the main processor, the store request specifying a memory address associated with the processing element. The method also includes storing a value provided in the store request in a queue in the processing element and the processing element performing the instruction using the value from the queue.Type: GrantFiled: March 6, 2013Date of Patent: February 23, 2016Assignee: International Business Machines CorporationInventors: Bruce M. Fleischer, Thomas W. Fox, Hans M. Jacobson, Ravi Nair
-
Patent number: 9244772Abstract: A computer architecture allows for simplified recovery after mis-speculation during speculative execution by controlling speculation to occur within idempotent regions that may be recovered by re-execution of the region without the need for restoring complex state information from checkpoints. A compiler for increasing the size of idempotent regions is also disclosed.Type: GrantFiled: May 4, 2011Date of Patent: January 26, 2016Assignee: National Science FoundationInventors: Karthikeyan Sankaralingam, Marc Asher De Kruijf, Chen-Han Ho
-
Patent number: 9244781Abstract: A transactional memory system salvages a partially executed hardware transaction. A processor of the transactional memory system determines information about an about-to-fail handler for transactional execution of a code region of a hardware transaction. The processor saves state information of the hardware transaction, the state information usable to determine whether the hardware transaction is to be salvaged or to be aborted. The processor detects an about-to-fail condition during the transactional execution of the hardware transaction. The processor, based on the detecting, executes the about-to-fail handler using the information about the about-to-fail handler, the about-to-fail handler determining whether the hardware transaction is to be salvaged or to be aborted.Type: GrantFiled: August 17, 2015Date of Patent: January 26, 2016Assignee: International Business Machines CorporationInventors: Harold W. Cain, III, Michael Karl Gschwind, Maged M. Michael, Valentina Salapura, Eric M. Schwarz
-
Patent number: 9244782Abstract: A transactional memory system salvages a partially executed hardware transaction. A processor of the transactional memory system saves state information in a first code region of a first hardware transaction, the state information useable to determine whether the first hardware transaction is to be salvaged or to be aborted. The processor detects an about to fail condition in the first code region of the first hardware transaction. The processor, based on the detecting, executes an about-to-fail handler, the about-to-fail handler using the saved state information to determine whether the first hardware transaction is to be salvaged or to be aborted. The processor executing the about-to-fail handler, based on the transaction being to be salvaged, uses the saved state information to determine what portion of the first hardware transaction to salvage.Type: GrantFiled: August 18, 2015Date of Patent: January 26, 2016Assignee: International Business Machines CorporationInventors: Harold W. Cain, III, Michael Karl Gschwind, Maged M. Michael, Valentina Salapura, Eric M. Schwarz
-
Patent number: 9223752Abstract: A digital signal processor and method are disclosed with one or more non-linear functions using factorized polynomial interpolation. A digital signal processor evaluates a non-linear function for a value, x, by obtaining two or more values from at least one look-up table for said non-linear function that are near said value, x; and interpolating said two or more obtained values to obtain a value, y, using a factorized polynomial interpolation.Type: GrantFiled: November 28, 2008Date of Patent: December 29, 2015Assignee: Intel CorporationInventors: Kameran Azadet, Jian-Guo Chen, Samer Hijazi, Joseph Williams
-
Patent number: 9218442Abstract: A verification method is provided and includes randomly choosing a hardware executed instruction in a predefined program to force Opcode Compare on, determining an identity of a corresponding opcode from the chosen instruction and initializing Opcode Compare logic to trap the chosen instruction to firmware and creating firmware to initiate performance of hardware verification in the firmware and re-initiating performance of the hardware verification in hardware.Type: GrantFiled: June 24, 2010Date of Patent: December 22, 2015Assignee: International Business Machines CorporationInventors: Christopher A. Krygowski, Michael P. Mullen, Timothy J. Slegel, Kai Weber
-
Patent number: 9207942Abstract: Embodiments of systems, methods and apparatuses for execution a NAME instruction are described. The execution of a VPBZHI causes, on a per data element basis of a second source, a zeroing of bits higher (more significant) than a starting point in the data element. The starting point is defined by the contents of a data element in a first source. The resultant data elements are stored in a corresponding data element position of a destination.Type: GrantFiled: March 15, 2013Date of Patent: December 8, 2015Assignee: Intel CorporationInventors: Elmoustapha Ould-Ahmed-Vall, Robert Valentine
-
Patent number: 9192859Abstract: A system and method for performing video compression and streaming video from an online hosted video game or application. The online hosted video game or application is streamed to the client with a latency such that the user has the perception that the selected video game or application is responding instantly to the control signals received from the client device. In addition, feedback information received from the client device is used to determine characteristics of a communication channel between a server and the client. The video stream encoding is adjusted based on the detected communication channel characteristics, while maintaining a latency such that the user has the perception that the selected video game or application is responding instantly.Type: GrantFiled: August 7, 2009Date of Patent: November 24, 2015Assignee: Sony Computer Entertainment America LLCInventors: Stephen G. Perlman, Roger van der Laan, Timothy Cotter, Scott Furman, Robert McCool, Ian Buckley
-
Patent number: 9176735Abstract: Methods and apparatus are provided for a digital signal processor having an instruction set with one or more non-linear complex functions. A method is provided for a processor. One or more non-linear complex software instructions are obtained from a program. The non-linear complex software instructions have at least one complex number as an input. One or more non-linear complex functions are applied from a predefined instruction set to the at least one complex number. An output is generated comprised of one complex number or two real numbers. A functional unit can implement the one or more non-linear complex functions. In one embodiment, a vector-based digital signal processor is disclosed that processes a complex vector comprised of a plurality of complex numbers. The processor can process the plurality of complex numbers in parallel.Type: GrantFiled: November 28, 2008Date of Patent: November 3, 2015Assignee: Intel CorporationInventors: Kameran Azadet, Jian-Guo Chen, Samer Hijazi, Joseph Williams
-
Patent number: 9164768Abstract: A method of executing an instruction set having a first instruction and a second instruction, includes: reading the first instruction; determining whether the first instruction is integral with the second instruction; reading the second instruction; when the first instruction is integral with the second instruction, interpreting a first operator field of the second instruction to represent a first operator; and when the first instruction is not integral with the second instruction, interpreting the first operator field of the second instruction to represent a second operator, wherein the first operator is different to the second operator.Type: GrantFiled: December 21, 2011Date of Patent: October 20, 2015Assignee: Cambridge Silicon Radio LimitedInventors: Peter Smith, David Richard Hargreaves
-
Patent number: 9158543Abstract: A measurement sampling facility takes snapshots of the central processing unit (CPU) on which it is executing at specified sampling intervals to collect data relating to tasks executing on the CPU. The collected data is stored in a buffer, and at selected times, an interrupt is provided to remove data from the buffer to enable reuse thereof. The interrupt is not taken after each sample, but in sufficient time to remove the data and minimize data loss.Type: GrantFiled: July 7, 2014Date of Patent: October 13, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Jane H. Bartik, Lisa C. Heller, Damian L. Osisek, Donald W. Schmidt, Patrick M. West, Jr., Phil C. Yeh
-
Patent number: 9155962Abstract: A system and method are described below for encoding interactive low-latency video using interframe coding. For example, one embodiment of a computer-implemented method for performing video compression comprises: logically subdividing each of a sequence of images into a plurality of tiles, each of the tiles having a defined position within each of the sequence of images, the defined position remaining the same between successive images; detecting motion or high scene complexity within the sequence of images occurring at each of the positions of each of the tiles; and encoding each tile within each image of the sequence of images using a specified number of bits, the number of bits selected based on the detected amount of motion at the position of each tile across the sequence of images.Type: GrantFiled: January 23, 2009Date of Patent: October 13, 2015Assignee: Sony Computer Entertainment America LLCInventors: Roger van der Laan, Stephen G. Perlman
-
Patent number: 9158545Abstract: A bytecode interpreter is provided. The interpreter assists in branch prediction by a host processor reducing branch misprediction and achieving high performance. The bytecode branch processor includes an interpreter configured to process a program in a bytecode format in a virtual machine, a branch information generator configured to obtain, while a predefined number of bytecodes are read prior to a current bytecode being processed by the interpreter, a branch address and a target address of a predicted path of a branch corresponding to a preceding bytecode, the branch address being of a branch code included in a preceding handler that processes the preceding bytecode, and the target address being of a current handler that processes the current bytecode to which the preceding handler branches, and a branch target buffer updater configured to update a branch target buffer in the bytecode branch processor with the obtained branch address and target address.Type: GrantFiled: October 18, 2011Date of Patent: October 13, 2015Assignee: Samsung Electronics Co., Ltd.Inventors: Kue-Hwan Sihn, Seung-Mo Cho
-
Patent number: 9086886Abstract: A computing system method, program and hardware for correlation of millicode predictions with specific millicode routines receives architected millicode and stores the millicode in internal memory. The computer systems processors' pipeline is employed to predict and select a branch target buffer's (BTB) target address. A computer millicode control enabling an operating system (O/S) multi-task control between multiple user programs able to use millicode routines and ensuring that the programs do not interfere with each other, by use of a branch target buffer (BTB) prediction of a branch target to ensure that a millicode routine does not fetch outside of said millicode routine while performing operations as required by said millicode routing, said branch target buffer prediction employing a correlation mechanism for predicting millicoded branch millicode entry and millicode end instructions and for correlating millicode end predictions with specific millicode routines.Type: GrantFiled: June 23, 2010Date of Patent: July 21, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Brian R. Prasky, James J. Bonanno, Lisa C. Heller
-
Patent number: 9081560Abstract: A system for tracing operations during application execution and executing the traced operations on a second processing unit. The tracing involves identifying attempts to execute software that performs particular functions that would benefit from execution on a particular piece of non-compatible hardware and, rather than executing the code, recording the requests and the data inputs to each of the requests. At a point during execution of the software system such as, for example, when either a memory threshold has been exceeded for recording the requested code and inputs, or results are needed for the requested code, the corresponding code executable on the non-compatible hardware is identified and executed. Thereafter, the results from the execution on the non-compatible hardware are received and processing continues.Type: GrantFiled: September 30, 2013Date of Patent: July 14, 2015Assignee: SUNGARD SYSTEMS INTERNATIONAL INC.Inventor: Benjamin Christopher Young
-
Patent number: 9069686Abstract: A digital signal processor and method are disclosed having an instruction set with one or more non-linear functions using a look-up table of reduced size and exponentially varying step-sizes. A digital signal processor evaluates a non-linear function for a value, x, by obtaining at least two values from at least one look-up table for the non-linear function that are near the value, x, wherein the at least one look-up table stores a subset of values for the non-linear function using exponentially-varying step sizes; and interpolating the at least two obtained values to obtain a result, y. A position of a leading zero in the value, x, can be used as an index into the at least one look-up table. The interpolation can comprise, for example, a linear interpolation or a polynomial interpolation. A modulo arithmetic operation can optionally be employed for a periodic non-linear function.Type: GrantFiled: November 28, 2008Date of Patent: June 30, 2015Assignee: Intel CorporationInventors: Kameran Azadet, Jian-Guo Chen, Samer Hijazi, Joseph Williams
-
Patent number: 9052864Abstract: Systems, methods, and other embodiments associated with encoding and processing page description language (PDL) documents using a light-weight data interchange format are described. According to one embodiment, an apparatus includes a communication logic configured to receive a request for a page description language (PDL) document. The PDL document is encoded in accordance with a lightweight data interchange format that includes (i) content of the page, and (ii) an arrangement of the content within the page. The apparatus includes a processing logic configured to retrieve the PDL document from a data store and to interpret the PDL document to generate a rasterized document that defines a layout of the page to be printed. The layout of the page as defined by the rasterized document is consistent with the arrangement of the content within the page as specified by the PDL document encoded with the lightweight data interchange format.Type: GrantFiled: October 3, 2013Date of Patent: June 9, 2015Assignee: MARVELL INTERNATIONAL LTD.Inventors: DeVerl Stokes, Lyman Leonard Hall, Philip McDonnell, Burt Poppenga
-
Patent number: 9032187Abstract: A method of executing an instruction set including a first instruction and a second instruction, includes reading the first instruction; determining whether the first instruction is an instruction which is integral with the second instruction; reading the second instruction; if the first instruction is integral with the second instruction, interpreting the operand field of the second instruction to indicate at least one value to be used in conjunction with at least one bit of the first instruction; and if the first instruction is not integral with the second instruction, interpreting the operand field of the second instruction to indicate an entry of a look-up table.Type: GrantFiled: December 20, 2011Date of Patent: May 12, 2015Assignee: Cambridge Silicon Radio LimitedInventors: Peter Smith, David Richard Hargreaves
-
Publication number: 20150113250Abstract: A microprocessor includes a plurality of memories each configured to hold microcode instructions. At least a first of the plurality of memories is configured to provide M-bit wide words of compressed microcode instructions, and at least a second of the plurality of memories is configured to provide N-bit wide words of uncompressed microcode instructions. M and N are integers greater than zero and N is greater than M. The microprocessor also includes a decompression unit configured to decompress the compressed microcode instructions after being fetched from the at least a first of the plurality of memories and before being executed.Type: ApplicationFiled: November 25, 2013Publication date: April 23, 2015Applicant: VIA TECHNOLOGIES, INC.Inventors: G. Glenn Henry, Terry Parks, Brent Bean
-
Publication number: 20150106592Abstract: Method, apparatus, and program means for performing a string comparison operation. In one embodiment, an apparatus includes execution resources to execute a first instruction. In response to the first instruction, said execution resources store a result of a comparison between each data element of a first and second operand corresponding to a first and second text string, respectively.Type: ApplicationFiled: December 18, 2014Publication date: April 16, 2015Inventors: Michael A. Julier, Jeffrey D. Gray, Srinivas Chennupaty, Sean P. Mirkes, Mark P. Seconi
-
Publication number: 20150106594Abstract: Method, apparatus, and program means for performing a string comparison operation. In one embodiment, an apparatus includes execution resources to execute a first instruction. In response to the first instruction, said execution resources store a result of a comparison between each data element of a first and second operand corresponding to a first and second text string, respectively.Type: ApplicationFiled: December 18, 2014Publication date: April 16, 2015Inventors: Michael A. Julier, Jeffrey D. Gray, Srinivas Chennupaty, Sean P. Mirkes, Mark P. Seconi
-
Publication number: 20150106593Abstract: Method, apparatus, and program means for performing a string comparison operation. In one embodiment, an apparatus includes execution resources to execute a first instruction. In response to the first instruction, said execution resources store a result of a comparison between each data element of a first and second operand corresponding to a first and second text string, respectively.Type: ApplicationFiled: December 18, 2014Publication date: April 16, 2015Inventors: Michael A. Julier, Jeffrey D. Gray, Srinivas Chennupaty, Sean P. Mirkes, Mark P. Seconi
-
Publication number: 20150106591Abstract: Method, apparatus, and program means for performing a string comparison operation. In one embodiment, an apparatus includes execution resources to execute a first instruction. In response to the first instruction, said execution resources store a result of a comparison between each data element of a first and second operand corresponding to a first and second text string, respectively.Type: ApplicationFiled: December 18, 2014Publication date: April 16, 2015Inventors: Michael A. Julier, Jeffrey D. Gray, Srinivas Chennupaty, Sean P. Mirkes, Mark P. Seconi
-
Patent number: 9009506Abstract: Embodiments of a processing architecture are described. The architecture includes a fetch unit for fetching instructions from a data bus. A scheduler receives data from the fetch unit and creates a schedule allocates the data and schedule to a plurality of computational units. The scheduler also modifies voltage and frequency settings of the processing architecture to optimize power consumption and throughput of the system. The computational units include control units and execute units. The control units receive and decode the instructions and send the decoded instructions to execute units. The execute units then execute the instructions according to relevant software.Type: GrantFiled: March 1, 2012Date of Patent: April 14, 2015Assignee: NXP B.V.Inventors: Hamed Fatemi, Ajay Kapoor, Jose Pineda de Gyvez
-
Publication number: 20150095617Abstract: In an embodiment, the present invention includes a processor having a decode unit, an execution unit, and a retirement unit. The decode unit is to decode control transfer instructions and the execution unit is to execute control transfer instructions. The retirement unit is to retire a first control transfer instruction, and to raise a fault if a next instruction to be retired after the first control transfer instruction is not a second control transfer instruction and a target instruction of the first control transfer instruction is in code using the control transfer instructions.Type: ApplicationFiled: September 27, 2013Publication date: April 2, 2015Inventors: Vedvyas SHANBHOGUE, Jason Brandt, Uday Savagaonkar, Ravi Sahita
-
Publication number: 20150082005Abstract: A processing system comprises a processing device; a first instruction set encoded in a first encoding space and comprising one or more first instructions; a second instruction set encoded in a second encoding space different from the first encoding space and comprising two or more orthogonal second instructions; and an instruction encoder arranged to encode and encapsulate subsets of the second instructions in instruction containers, each instruction container sized to comprise a plurality of the second instructions.Type: ApplicationFiled: May 29, 2012Publication date: March 19, 2015Applicant: Freescale Semiconductor, Inc.Inventors: Roy Glasner, Itzhak Barak, Yuval Feled, Idan Rozenberg, Lev Vaskevich
-
Publication number: 20150082004Abstract: This invention is a digital signal processor form plural sums of absolute values (SAD) in a single operation. An operational unit performing a sum of absolute value operation comprising two sets of a plurality of rows, each row producing a SAD output. Plural absolute value difference units receive corresponding packed candidate pixel data and packed reference pixel data. A row summer sums the output of the absolute value difference units in the row. The candidate pixels are offset relative to the reference pixels by one pixel for each succeeding row in a set of rows. The two sets of rows operate on opposite halves of the candidate pixels packed within an instruction specified operand. The SAD operations can be performed on differing data widths employing carry chain control in the absolute difference unit and the row summers.Type: ApplicationFiled: July 9, 2014Publication date: March 19, 2015Inventors: Mujibur Rahman, Djordje Senicic, Timothy D. Anderson
-
Publication number: 20150082008Abstract: Instructions are grouped into instruction groups based on optimizations that may be performed. An instruction is obtained, and a determination is made as to whether the instruction is to be included in a current instruction group or another instruction group. This determination is made based on whether the instruction is a candidate for optimization, such as decode time instruction optimization. If it is determined that the instruction is to be included in another group, then the other group is formed to include the instruction.Type: ApplicationFiled: November 22, 2014Publication date: March 19, 2015Inventor: Michael K. Gschwind
-
Publication number: 20150082006Abstract: Embodiments are provided for an asynchronous processor with an asynchronous Instruction fetch, decode, and issue unit. The asynchronous processor comprises an execution unit for asynchronous execution of a plurality of instructions, and a fetch, decode and issue unit configured for asynchronous decoding of the instructions. The fetch, decode and issue unit comprises a plurality of resources supporting functions of the fetch, decode and issue unit, and a plurality of decoders arranged in a predefined order for passing a plurality of tokens. The tokens control access of the decoders to the resources and allow the decoders exclusive access to the resources.Type: ApplicationFiled: September 4, 2014Publication date: March 19, 2015Inventors: Yiqun Ge, Wuxian Shi, Qifan Zhang, Tao Huang, Wen Tong
-
Publication number: 20150082007Abstract: A processor core supports execution of program instruction from both a first instruction set and a second instruction set. An architectural register file 18 containing architectural registers is shared by the two instruction sets. The two instruction sets employ logical register specifiers which for at least some values of those logical registers specifiers correspond to different architectural registers within the architectural register file 18. A first decoder 4 for the first instruction set and a second decoder 6 for the second instruction set serve to decode the logical register specifiers to a common register addressing format. This common register addressing format is used to supply register specifiers to renaming circuitry 10 for supporting register renaming in conjunction with a physical register file 16 and an architectural register file 18.Type: ApplicationFiled: November 20, 2014Publication date: March 19, 2015Inventors: Glen Andrew HARRIS, James Nolan HARDAGE, Mark Carpenter GLASS
-
Patent number: 8984258Abstract: An instruction for parsing a buffer to be utilized within a data processing system including: an operation code field, the operation code field identifies the instruction; a control field, the control field controls operation of the instruction; and one or more general registers, wherein a first general register stores an argument address, a second general register stores a function code, a third general register stores length of an argument-character buffer, and the fourth of which contains the address of the function-code data structure.Type: GrantFiled: October 31, 2013Date of Patent: March 17, 2015Assignee: International Business Machines CorporationInventors: John R. Ehrman, Dan F. Greiner
-
Publication number: 20150074378Abstract: Embodiments are provided for an asynchronous processor with heterogeneous processors. In an embodiment, the apparatus for an asynchronous processor comprises a memory configured to cache instructions, and a first unit (XU) configured to processing a first instruction of the instructions. The apparatus also comprises a second XU having less restricted access than the first XU to a resource of the asynchronous processor and configured to process a second instruction of the instructions. The second instruction requires access to the resource. The apparatus further comprises a feedback engine configured to decode the first instruction and the second instruction, and issue the first instruction to the first XU, and a scheduler configured to send the second instruction to the second XU.Type: ApplicationFiled: September 8, 2014Publication date: March 12, 2015Inventors: Yiqun Ge, Wuxian Shi, Qifan Zhang, Tao Huang, Wen Tong
-
Publication number: 20150052333Abstract: Embodiments of systems, apparatuses, and methods for performing gather and scatter stride instruction in a computer processor are described. In some embodiments, the execution of a gather stride instruction causes a conditionally storage of strided data elements from memory into the destination register according to at least some of bit values of a writemask.Type: ApplicationFiled: July 25, 2014Publication date: February 19, 2015Inventors: Christopher J. HUGHES, Jesus Corbal SAN ADRIAN, Roger Espasa SANS, Bret TOLL, Robert C. VALENTINE, Milind B. GIRKAR, Andrew T. FORSYTH, Edward T. GROCHOWSKI, Jonathan C. HALL
-
Publication number: 20150039860Abstract: A system and method for efficiently performing microarchitectural checkpointing. A register rename unit within a processor determines whether a physical register number qualifies to have duplicate mappings. Information for maintenance of the duplicate mappings is stored in a register duplicate array (RDA). To reduce the penalty for misspeculation or exception recovery, control logic in the processor supports multiple checkpoints. The RDA is one of multiple data structures to have checkpoint copies of state. The RDA utilizes a content addressable memory (CAM) to store physical register numbers. The duplicate counts for both the current state and the checkpoint copies for a given physical register number are updated when instructions utilizing the given physical register number are retired. To reduce on-die real estate and power consumption, a single CAM entry is stores the physical register number and the other fields are stored in separate storage elements.Type: ApplicationFiled: July 31, 2013Publication date: February 5, 2015Applicant: Apple Inc.Inventors: Shyam Sundar, Conrado Blasco-Allue
-
Publication number: 20150032998Abstract: An apparatus and method is described herein for providing speculation control instructions. An xAcquire and xRelease instruction are provided to define a critical section. In one embodiment, the xAcquire instruction includes a lock instruction with an elision prefix and the xRelease instruction includes a lock release instruction with an elision prefix. As a result, a processor is able to elide locks and transactionally execute a critical section defined in software by xAcquire and xRelease. But by adding only prefix hints, legacy processor are able to execute the same code by just ignoring the hints and executing the critical section traditionally with locks to guarantee mutual exclusion. Moreover, xBegin and xEnd are similarly provided for in an Instruction Set Architecture (ISA) to define a transactional code region.Type: ApplicationFiled: February 2, 2012Publication date: January 29, 2015Inventors: Ravi Rajwar, Martin G. Dixon, Konrad K. Lai, Alexandre J. Farcy, Bret L. Toll, Robert S. Chappell, Matthew C. Merten, Rajesh S. Parthasarathy, Per Hammarlund