Byte-word Rearranging, Bit-field Insertion Or Extraction, String Length Detecting, Or Sequence Detecting Patents (Class 712/300)
-
Patent number: 7870361Abstract: A network device includes an alignment module to align payloads of received frames on memory boundaries in a buffer memory. The frames may be Ethernet frames which encapsulate IP (Internet Protocol) packets as payloads. The alignment module modifies the frame to shift the IP payload into a position in the memory regions such that the IP payload is aligned with the memory boundaries. The number x of non-data bits can be determined according to x=m*c+p, where m is the bit depth of memory regions, n is the length of a header, p is the non-zero remainder of the ratio n/m, and c is an integer.Type: GrantFiled: June 2, 2008Date of Patent: January 11, 2011Assignee: Marvell International Ltd.Inventor: Nafea Bishara
-
Publication number: 20100318771Abstract: A processor includes a decode unit and a byte permute unit. The byte permute unit receives an instruction from the decode unit. The byte permute unit determines whether the instruction corresponds to a shuffle instruction or a shift instruction. For a shuffle instruction, the byte permute unit uses a byte shuffler to perform a shuffle operation indicated by the instruction. For a shift instruction that indicates a shift magnitude, the byte permute unit uses the byte shuffler to byte-level shift a source operand corresponding to the instruction by an integer number of bytes. The byte permute unit also generates a sequence of output bits by bit-shifting the byte-level shifted source operand by a number of bits such that the sum of the number of bits and the integer number of bytes is equal to the shift magnitude.Type: ApplicationFiled: June 11, 2009Publication date: December 16, 2010Inventors: Ranganathan Sudhakar, Jonathan Choy, Debjit Das Sarma
-
Patent number: 7853860Abstract: A programmable signal processing circuit has an instruction processing circuit (23, 24, 26), with an instruction set that comprises a depuncture instruction. The instruction processing circuit (23, 24, 26) forms the depuncture result by copying bit metrics from a bit metrics operand and inserting one or more predetermined bit metric values between the bit metrics from the bit metric operand in the depuncture result. The instruction processing circuit (23, 24, 26) changes the relative locations of the copied bit metrics with respect to each other in the depuncture result as compared to the relative locations of the copied bit metrics with respect to each other in the bit metric operand, to an extent needed for accommodating the inserted predetermined bit metric value or values.Type: GrantFiled: December 13, 2005Date of Patent: December 14, 2010Assignee: Silicon Hive B.V.Inventors: Paulus W. F. Gruijters, Marcus M. G. Quax
-
Patent number: 7840789Abstract: Bit reductions in program instructions are achieved by determining the set of bit patterns in bit locations of the instructions. If only a subset of bit patterns is present in the instructions, they may be represented by an index value having a smaller number of bits. The index value may be substituted into the instruction and later used in decoding by referencing a corresponding bit pattern in a lookup table. The bit-reduction in the instruction makes way for supplemental data bits which may then be embedded.Type: GrantFiled: June 2, 2006Date of Patent: November 23, 2010Assignee: University of MarylandInventors: Min Wu, Ashwin Swaminathan, Yinian Mao
-
Patent number: 7822955Abstract: The present invention provides a technique for swapping data values within a data word. In particular, a single endian reverse instruction is provided to cause independent swap operations to be performed on particular sections of an input data word. The data processing apparatus of the present invention comprises a data processing unit for executing instructions which is responsive to the endian reverse instruction to apply an endian reverse operation to an input data word Rm comprising a plurality of data values.Type: GrantFiled: January 21, 2003Date of Patent: October 26, 2010Assignee: ARM LimitedInventors: David W Flynn, David J Seal, Wilco Dijkstra, Michael R Nonweiler
-
Publication number: 20100262952Abstract: A system and method for converting byte code of a first type into byte code of a second type. Byte code of a first type is received as input. The first byte code is converted into constituent byte code data elements that can comprise any logical unit or grouping of at least a portion of a software application. The first byte code data elements are mapped to data elements of a second byte code type. The second byte code data elements are assembled into a resulting second byte code.Type: ApplicationFiled: April 25, 2010Publication date: October 14, 2010Applicant: APTANA INCORPORATEDInventors: Paul Colton, Kevin Edward Lindsey, Roland Ingomar Muschenetz, Robin Sean Debreuil
-
Patent number: 7814303Abstract: Operand vector multiplexer sequence control is used in a vector-based execution unit to control the shuffling of data elements in operand vectors used by a sequence of vector instructions processed by the vector-based execution unit. A swizzle sequence instruction is defined in an instruction set for the vector-based execution unit and is used to selectively apply a sequence of vector data element shuffle orders to one or more operand vectors to be used by the associated sequence of vector instructions. As a result, when a common sequence of data element shuffle orders is used frequently for a sequence of vector instructions, a single swizzle sequence instruction may be used to select the desired sequence of custom data element ordering for each of the vector instructions in the sequence.Type: GrantFiled: October 23, 2008Date of Patent: October 12, 2010Assignee: International Business Machines CorporationInventors: Adam J. Muff, Robert A. Shearer, Matthew R. Tubbs
-
Patent number: 7813429Abstract: A method for processing a video stream is disclosed. The method generally includes the steps of (A) checking a respective first motion vector for each of a plurality of blocks in a group within an inter-coded picture of the video stream, (B) loading first motion compensation data for the group from a memory to a motion compensation process in a first bus transfer in response to all of the blocks in the group having both (i) a same first reference frame and (ii) a same first motion vector in at least one of a reference picture list 0 and a reference picture list 1 and (C) reconstructing the blocks from the first motion compensation data and the same first motion vector.Type: GrantFiled: December 2, 2005Date of Patent: October 12, 2010Assignee: LSI CorporationInventor: Lowell L. Winger
-
Patent number: 7787537Abstract: A method and an apparatus for discrete cosine transform coefficient prediction are disclosed. The method comprises the steps as follows: providing a discrete cosine transformed block; performing an AC prediction mode variable length coding and a non-AC prediction mode variable length coding simultaneously; providing a first memory block and a second memory block for storing the bit strings of two coding; and using another coding as long as one of first and second memory blocks reaches its capacity limit.Type: GrantFiled: December 19, 2005Date of Patent: August 31, 2010Assignee: Sunplus Technology Co., Ltd.Inventors: Chien-Yu Lin, Tzu-Hsin Wang, Pai-Chu Hsieh
-
Patent number: 7773005Abstract: System and method for decompressing data. A compressed data stream including contiguous variable length data blocks is received, each variable length data block including multiple contiguous variable length data fields. A current data block of the contiguous variable length data blocks is stored in one or more registers of a processor. Decoding state information is stored in another register of the processor. A single machine instruction of the processor is loaded. The instruction includes one or more operands corresponding respectively to the one or more registers, and another operand corresponding to the other register, where the other register is further operable as a destination register to store a result of the machine instruction. The instruction is executed to decompress the current data block using the stored decoding state information, including storing the decompressed current data block in the other register. The decompression is repeated for subsequent blocks in the stream.Type: GrantFiled: December 5, 2008Date of Patent: August 10, 2010Assignee: Advanced Micro Devices, Inc.Inventor: Michael Frank
-
Patent number: 7769753Abstract: A data retrieval system includes a retrieval request block for generating a retrieval key including a current state number and a current character string including N characters latched from an input character string, and a state transition memory operating for retrieval based on a state transition table. The state transition table includes a plurality of input entries each including a combination of a current state number and a character pattern string having N characters, and a plurality of output entries each including combination of a next state number and a pattern number of a character pattern retrieved from the input character string. The state transition memory operates for a plurality of retrievals in parallel retrieval processing.Type: GrantFiled: January 31, 2005Date of Patent: August 3, 2010Assignee: NEC CorporationInventors: Kiyohisa Ichino, Akihiro Motoki
-
Patent number: 7765338Abstract: Techniques for providing improved data distribution to and collection from multiple memories are described. Such memories are often associated with and local to processing elements (PEs) within an array processor. Improved data transfer control within a data processing system provides support for radix 2, 4 and 8 fast Fourier transform (FFT) algorithms through data reordering or bit-reversed addressing across multiple PEs, carried out concurrently with FET computation on a digital signal processor (DSP) array by a DMA unit. Parallel data distribution and collection through forms of multicast and packet-gather operations are also supported.Type: GrantFiled: July 9, 2007Date of Patent: July 27, 2010Assignee: Altera CorporationInventors: Edwin Franklin Barry, Nikos P. Pitsianis, Kevin Coopman
-
Publication number: 20100169619Abstract: In one embodiment, an apparatus comprises a queue comprising a plurality of entries and a control unit coupled to the queue. The control unit is configured to allocate a first queue entry to a store memory operation, and is configured to write a first even offset, a first even mask, a first odd offset, and a first odd mask corresponding to the store memory operation to the first entry. A group of contiguous memory locations are logically divided into alternately-addressed even and odd byte ranges. A given store memory operation writes at most one even byte range and one adjacent odd byte range. The first even offset identifies a first even byte range that is potentially written by the store memory operation, and the first odd offset identifies a first odd byte range that is potentially written by the store memory operation.Type: ApplicationFiled: March 10, 2010Publication date: July 1, 2010Inventors: Tse-yu Yeh, Daniel C. Murray, Po Yung Chang, Anup S. Mehta
-
Patent number: 7743231Abstract: Provided are a method, information processing system, and computer readable medium for identifying active bits in a vector. The method comprises receiving a pointer associated with a vector of bits. The pointer is associated with a current bit within the vector of bits. The vector of bits if grouped into groups of a mathematical power of two, which is any non-negative integer powers of two. One or more current groups are determined which are the groups of the mathematical power of two comprising the current bit. The one or more current groups of the power of two are analyzed. A largest group of the power of two is identified in the one or more current groups comprising all empty bits. The pointer is set to point to a bit following a last bit in the identified largest group of the power of two comprising all empty bits.Type: GrantFiled: February 27, 2007Date of Patent: June 22, 2010Assignee: International Business Machines CorporationInventors: Scot H. Rider, Todd A. Strader
-
Patent number: 7734853Abstract: In a system where data is transmitted from a source device to a destination device via one or more buses, transmission mode selecting circuitry is provided to select one of a first transmission mode and a second transmission mode for the data in response to a mode selecting signal that indicates a latency requirement of the destination device. When data is sent using the second mode there is a lower latency between the destination device receiving the data and being able to process the data than when the first transmission mode is used.Type: GrantFiled: April 11, 2008Date of Patent: June 8, 2010Assignee: ARM LimitedInventor: Daren Croxford
-
Patent number: 7730292Abstract: In the context of a microprocessor and a program, the invention provides parallel subword compare instructions that store results in a selectable intra-register subword location. In a targeting approach, an instruction permits the location to be specified; alternatively, there can be plural instructions, each associated with one of the locations. In a replicating approach, plural replicas are stored in the alternative locations. In a shifting approach, the instruction moves prior results, so that the number of subsequent iterations of the instruction determines the location of a result. The invention provides for overwriting and content-preserving instructions, and for overlapping and separate locations. The invention allows results from multiple parallel subword compare operations with relatively few instructions. The invention also provides for other parallel subword instructions.Type: GrantFiled: March 31, 2003Date of Patent: June 1, 2010Assignee: Hewlett-Packard Development Company, L.P.Inventor: Ruby B. Lee
-
Patent number: 7725699Abstract: A data byte insertion circuit includes circuitry to generate derivative intermediate data words from input data words of a current and a preceding cycle, repositioning data bytes of the input data words before and after data byte insertion points of the current and preceding cycles, and circuitry to generate re-aligned variants of insertion data bytes of the current cycle. The data byte insertion circuit further includes circuitry to generate a number of multi-bit data bit selection masks, and circuitry to generate an output data word by conditionally using selected parts of the derivate intermediate data words and the re-aligned variants of the insertion data bytes, in accordance with the multi-bit data b it selection masks.Type: GrantFiled: November 14, 2006Date of Patent: May 25, 2010Inventors: J. Zachary Gorman, Richard S. Willardson
-
Patent number: 7721077Abstract: A computing system may support an endian toggle register (ETR) and the endianess of the endian toggle register may be designated using a set endian bit (SEB) or a clear endian bit (CEB) instruction. An endian conversion is performed on the data that is moved into and moved out of the ETR. However, if the destination memory is an endian toggle disabled memory, the contents of the ETR may be transferred to the endian toggle disabled memory without performing the endian conversion. A compiler supported on the computing system may comprise an endian storage class to perform endian conversion, transparently, using high-level languages.Type: GrantFiled: October 16, 2007Date of Patent: May 18, 2010Assignee: Intel CorporationInventor: Gurumurthy Rajaram
-
Patent number: 7711938Abstract: A pipeline video decoder and decompression system handles a plurality of separately encoded bit streams arranged as a single serial bit stream of digital bits and having separately encoded pairs of control codes and corresponding data carried in the serial bit stream. The pipeline system employs a plurality of interconnected stages to decode and decompress the single bit stream, including a start code detector. When in a search mode, the start code detector searches for a specific start code corresponding to one of multiple compression standards. The start code detector responding to the single serial bit stream generates control tokens and data tokens. A respective one of the tokens includes a plurality of data words. Each data word has an extension bit which indicates a presence of additional words therein. The data words are thereby unlimited in number.Type: GrantFiled: January 26, 2001Date of Patent: May 4, 2010Inventors: Adrian P Wise, Martin W Sotheran, William P Robbins, Anthony M Jones, Helen R Finch, Kevin J Boyd, Anthony Peter J Claydon
-
Patent number: 7707547Abstract: A system and method for converting byte code of a first type into byte code of a second type. Byte code of a first type is received as input. The first byte code is converted into constituent byte code data elements that can comprise any logical unit or grouping of at least a portion of a software application. The first byte code data elements are mapped to data elements of a second byte code type. The second byte code data elements are assembled into a resulting second byte code.Type: GrantFiled: March 10, 2006Date of Patent: April 27, 2010Assignee: Aptana, Inc.Inventors: Paul Colton, Kevin Edward Lindsey, Roland Ingomar Muschenetz, Robin Sean Debreuil
-
Patent number: 7698542Abstract: A circuit and a method of examining in a microprocessor a section of a first range of values and a second range of values each comprising a lower boundary value and an upper boundary value is disclosed. The method includes examining whether a value of the first range of values is equal to or greater than the lower boundary value of the second range of values, and examining whether the lower boundary value of the first range of values is smaller than or equal to the upper boundary value of the second range of values.Type: GrantFiled: August 25, 2006Date of Patent: April 13, 2010Assignee: Infineon Technologies AGInventors: Martin Mohr, Harry Siebert
-
Patent number: 7685408Abstract: Techniques for performing a bit rake instruction in a programmable processor. The bit rake instruction extracts an arbitrary pattern of bits from a source register, based on a mask provided in another register, and packs and right justifies the bits into a target register. The bit rake instruction allows any set of bits from the source register to be packed together.Type: GrantFiled: September 29, 2008Date of Patent: March 23, 2010Assignee: Altera CorporationInventors: Edward A. Wolff, Peter R. Molnar, Ayman Elezabi, Gerald George Pechanek
-
Patent number: 7685407Abstract: The present invention is to provide a semiconductor device that can correctly switch endians on the outside even if the endian of a parallel interface is not recognized on the outside. The semiconductor device includes a switching circuit and a first register. The switching circuit switches between whether a parallel interface with the outside is to be used as a big endian or a little endian. A first register holds control data of the switching circuit. The switching circuit regards the parallel interface as the little endian when first predetermined control information, that is unchanged in the values of specific bit positions even if its high-order and low-order bit positions are transposed, is supplied to the first register, and regards the parallel interface as the big endian when second predetermined control information, that is unchanged in the values of specific bit positions even if its high-order and low-order bit positions are transposed, is supplied to the first register.Type: GrantFiled: May 31, 2006Date of Patent: March 23, 2010Assignee: Renesas Technology Corp.Inventors: Goro Sakamaki, Yuri Azuma
-
Patent number: 7603346Abstract: A pipelined search engine device, such as a longest prefix match (LPM) search engine device, includes a hierarchical memory and a pipelined tree maintenance engine therein. The hierarchical memory is configured to store a b?tree of search prefixes (and possibly span prefix masks) at multiple levels therein. The pipelined tree maintenance engine, which is embedded within the search engine device, includes a plurality of node maintenance sub-engines that are distributed with the multiple levels of the hierarchical memory. The search engine device may also include pipeline control and search logic that is distributed with the multiple levels of the hierarchical memory.Type: GrantFiled: February 13, 2007Date of Patent: October 13, 2009Assignee: NetLogic Microsystems, Inc.Inventors: Gary Depelteau, David W. Carr
-
Patent number: 7600104Abstract: System and method are provided for parallel vector data processing having a data processor capable of vector data having a defined first bit-length. In one embodiment, at least one of first and second operand registers is used for storing operands, and an additional data storage element is used to have a size to store a number of bits corresponding to the first bit-length, and the storage element is segmented into a defined number of segments. An instruction set storage unit is used for storing a set of instructions for the data processor to process a set of data in parallel by use of the additional storage element.Type: GrantFiled: August 15, 2006Date of Patent: October 6, 2009Inventor: Peter Neumann
-
Publication number: 20090235061Abstract: A system and method for efficiently performing bit-field extraction and bit-field combination operations in a processor is provided. The system includes a plurality of general purpose registers, a plurality of predicate registers, and at least one execution unit configured to extract a plurality of bit fields from a source reservoir and to populate a plurality of destination lanes in response to a single instruction. In addition, the execution unit is configured to write supplied fill data into the source reservoir if the number of bits in the source reservoir is less than a predetermined number. In addition or alternatively, the system may include at least one execution unit configured to combine a plurality of bit fields from a plurality of source lanes into a continuous bit stream in response to a single instruction executable by the processor.Type: ApplicationFiled: March 27, 2009Publication date: September 17, 2009Applicant: Broadcom CorporationInventor: Mark TAUNTON
-
Patent number: 7590832Abstract: An information processing device for executing a compressed program includes: an instruction buffer; a first selector for selectively outputting one of a set of signals obtained by dividing the output from the instruction buffer; an instruction decompression section for decompressing the output from the first selector into an original instruction; a second selector for outputting the output from the instruction buffer when no compressed instruction is stored in the instruction buffer and outputting the output from the instruction decompression section otherwise; an instruction decoding section for outputting a signal indicating presence/absence of instruction branching based on a result of decoding the output from the selector; and a control section for instructing the first selector to select a predetermined one of the received signals when the signal from the instruction decoding section indicates that there is instruction branching.Type: GrantFiled: January 3, 2007Date of Patent: September 15, 2009Assignee: Panasonic CorporationInventor: Hiroshi Taniuchi
-
Patent number: 7587526Abstract: Embedding endianness information within data and sending and receiving data with the embedded endianness information. Data may be contained in a data structure. To embed endianness information in a data structure, unused bits in a data structure are identified. A number of the unused bits are then selected based on the possible unpacking combinations of the data structure. The endian bit values are set to a pattern to indicate the endianness of the data structure. Data that has been packed by a transmitting module can be unpacked by a receiving module based on the detected endian bits. An algorithm may be used to determine which unused bits to select as the endian bits.Type: GrantFiled: February 28, 2005Date of Patent: September 8, 2009Assignee: Microsoft CorporationInventors: Andrew W. Walters, Ankur Varma
-
Patent number: 7587535Abstract: When data is transferred to an access destination in a different endian format, a transfer start address is aligned based on a transfer bus width, and a transfer size is adjusted according to the transfer bus width and a transfer address. Thus, it becomes possible to perform burst transfer in the access destination. Accordingly, in the case where burst transfer to an access destination in a different endian format is performed with a smaller data width than a transfer bus width, an inconvenience where burst transfer can not be performed because an address is converted and data access is no longer an ascending order access can be prevented.Type: GrantFiled: April 20, 2007Date of Patent: September 8, 2009Assignee: Panasonic CorporationInventor: Takatsugu Sawai
-
Patent number: 7581091Abstract: Systems and methods that allow for extracting a field from data stored in a pair of registers using two instructions. A first instruction extracts any part of the field from a first register designated as a first source register, and executes a second instruction extracting any part of the field from a second general register designated as a second source register. The second instruction inserts any extracted field parts in a result register.Type: GrantFiled: April 10, 2006Date of Patent: August 25, 2009Assignee: MIPS Technologies, Inc.Inventors: Robert Gelinas, Patrick W Hays, Sol Katzman
-
Patent number: 7565516Abstract: In a system having a first device 10 and a second device 8 between which data values are transferred via an N-bit bus, a resizing unit 18 and an M-bit bus, reordering of the data is performed such that portions of the original N-bit data words having a high degree of bit-value correlation are grouped together as successive transfers thereby reducing the Hamming distance between successive transfers in a manner that reduces energy consumption.Type: GrantFiled: February 28, 2006Date of Patent: July 21, 2009Assignee: ARM LimitedInventor: Daren Croxford
-
Patent number: 7529918Abstract: A system and method for efficiently performing bit-field extraction and bit-field combination operations in a processor is provided. The system includes a plurality of general purpose registers, a plurality of predicate registers, and at least one execution unit configured to extract a plurality of bit fields from a source reservoir and to populate a plurality of destination lanes in response to a single instruction. In addition, the execution unit is configured to write supplied fill data into the source reservoir if the number of bits in the source reservoir is less than a predetermined number. In addition or alternatively, the system may include at least one execution unit configured to combine a plurality of bit fields from a plurality of source lanes into a continuous bit stream in response to a single instruction executable by the processor.Type: GrantFiled: December 22, 2006Date of Patent: May 5, 2009Assignee: Broadcom CorporationInventor: Mark Taunton
-
Patent number: 7523261Abstract: A method for changing a succession of instruction words including providing a set of machine words, each machine word being associated with an address from a set of addresses, providing a succession of instruction words having address information, the succession of instruction words prescribing a sequence of machine words which are intended to be processed by an arithmetic and logic unit which is coupled to a buffer store, altering the association between at least a portion of the set of machine words and at least a portion of the set of addresses, changing the address information in the succession of instruction words based on the alteration of the association, storing the changed succession of instruction words in a memory, and storing the set of machine words in the memory, so that it is possible to access the machine words using the associated addresses.Type: GrantFiled: November 6, 2006Date of Patent: April 21, 2009Assignee: Infineon Technologies AGInventors: Josef Haid, Michael Smola, Dietmar Scheiblhofer
-
Patent number: 7500089Abstract: An SIMD type microprocessor having a plurality of processor elements, wherein data stored in a specific register included in each processor element and data stored in an operand-designated source register are compared based on a first type of instruction; after the comparison, a larger data is stored in the specific register; and a smaller data is stored in the source register or an operand-designated destination register other than the source register.Type: GrantFiled: April 1, 2002Date of Patent: March 3, 2009Assignee: Ricoh Company, Ltd.Inventor: Kazuhiko Iwanaga
-
Patent number: 7493481Abstract: In some embodiments, the execution of load and store instructions for internal fields of data structures is accelerated by using on-chip template registers and appropriate machine code instructions. A load/store machine code instruction comprises an identifier of a memory address offset of an internal field word relative to a base address of the data structure, an identifier of an intra-word start bit of the internal field, and an identifier of an intra-word length of the internal field. The three identifiers may coincide, for example if the three identifiers are represented by an identity of a template register storing a template entry including the memory address offset, the start position, and the field length. The three identifiers may also be provided as part of a machine code instruction itself. Further provided are compilers, compiler methods, and hardware systems for implementing accelerated internal-field load and store operations.Type: GrantFiled: May 17, 2004Date of Patent: February 17, 2009Assignee: NetXen, Inc.Inventors: Govind Kizhepat, Kenneth Y Choy, Suresh Kadiyala
-
Patent number: 7480783Abstract: Disclosed are systems for loading an unaligned word from a specified unaligned word address in a memory, the unaligned word comprising a plurality of indexed portions crossing a word boundry, a method of operating the system comprising: loading a first aligned word commencing at an aligned word address rounded from the specified unaligned word address; identifying an index representing the location of the unaligned word address relative to the aligned word address; loading a second aligned word commencing at an aligned word address rounded from a second unaligned word address; and combining indexed portions of the first and second alinged words using the indentified index to construct the unaligned word.Type: GrantFiled: August 19, 2004Date of Patent: January 20, 2009Assignees: STMicroelectronics Limited, Hewlett-Packard CompanyInventors: Mark O. Homewood, Paolo Faraboschi
-
Patent number: 7467138Abstract: A method and associated algorithm for in-place sorting S sequences of binary bits stored contiguously in an array within a memory device of a computer system prior to the sorting. Each sequence includes contiguous fields of bits. The algorithm is executed by a processor of a computer system. The in-place sorting executes program code at each node of a linked execution structure. Each node includes a segment of the array. The program code is executed in a hierarchical sequence with respect to the nodes. Executing program code at each node includes: dividing the segment of the node into groups of sequences based on a mask field having a mask width, wherein each group has a unique mask value of the mask field; and in-place rearranging the sequences in the segment, wherein the rearranging results in each group including only those sequences having the unique mask value of the group.Type: GrantFiled: December 14, 2004Date of Patent: December 16, 2008Assignee: International Business Machines CorporationInventor: Dennis J. Carroll
-
Patent number: 7464255Abstract: A method and mechanism for performing shift operations using a shuffle unit. A processor includes a shuffle unit configured to perform shuffle operations responsive to shuffle instructions. The shuffle unit is adapted to support shift operations as well. In response to determining a shuffle instruction is received, selected bits of an immediate value of the shuffle instruction are used to generate byte selects for relocating bytes of a source operand. In response to determining the instruction is a shift instruction, the shuffle unit performs an arithmetic operation on a first and second value, where the first value corresponds to a particular destination byte position, and the second value corresponds to the immediate value. The result of the arithmetic operation comprises a byte select which selects one of the bytes of a source operand for conveyance to the particular destination byte position.Type: GrantFiled: July 28, 2005Date of Patent: December 9, 2008Assignee: Advanced Micro Devices, Inc.Inventors: Teik-Chung Tan, Kelvin Domnic Goveas
-
Patent number: 7464254Abstract: A rule processor and method for using the same are disclosed. In one embodiment, the rule processor comprises a general purpose register file, an instruction sequencer to provide instructions, a decoder coupled to the general purpose register file to decode a set of instructions specified by the instruction sequencer, and a state machine unit coupled to the decoder and having state machine registers to store one or more state machines and state machine execution hardware coupled to the state machine registers to evaluate the one or more state machines in response to executing one or more of the set of instructions and based on information from one or both of the decoder and the general purpose register file.Type: GrantFiled: January 8, 2004Date of Patent: December 9, 2008Assignee: Cisco Technology, Inc.Inventors: Harshvardhan Sharangpani, Manoj Khare, Kent Fielden, Rajesh Patil, Judge Kennedy Arora
-
Publication number: 20080282073Abstract: A shorter and a longer text string may be compared. Instead of simply comparing the characters only one character at a time, more than one character can be compared at a time. In addition, a null terminated string may be detected. The shorter strings may be handled differently than longer strings.Type: ApplicationFiled: May 10, 2007Publication date: November 13, 2008Inventor: Mason Cabot
-
Patent number: 7444488Abstract: A method and a programmable unit for bit field shifting in a memory device in a programmable unit as a result of the execution of an instruction, in which a bit segment is shifted within a first memory unit to a second memory unit, are presented. The bit segment is read with a first bit length from a first bit field in the first memory unit starting at a first start point. The bit segment that has been read is stored in the first bit field in the second memory unit starting at a second start point. The first or the second start points is updated by a predetermined value and the updated start point is stored for subsequent method steps.Type: GrantFiled: September 30, 2005Date of Patent: October 28, 2008Assignee: Infineon TechnologiesInventors: Xiaoning Nie, Thomas Wahl
-
Patent number: 7441104Abstract: The present invention provides for parallel subword instructions that cause results to be non-contiguously stored in a result register. For example, a targeting-type instruction can specify (implicitly or explicitly) a bit position and the result of each of the parallel subword compare operations can be stored at that bit position within the respective subword location of a result register. Alternatively, for a shifting-type instruction, pre-existing contents of a result register can be shifted one bit toward greater significance while the results are of the present operation are stored in the least-significant bits of respective result-register subword locations. This approach provides the results of multiple parallel subword compare instructions to be combined with relatively few instructions and reduces the maximum lateral movement of information—both of which can enhance performance.Type: GrantFiled: March 30, 2002Date of Patent: October 21, 2008Assignee: Hewlett-Packard Development Company, L.P.Inventor: Dale Morris
-
Patent number: 7434040Abstract: Methods, computer readable media and computing devices including program instructions are provided for copying unaligned data. One method embodiment includes using 12 execution units to move 16 bytes of data from an unaligned data area to an aligned data area during each iteration of a loop in a pipelined operation, such that each iteration can be executed in one machine cycle.Type: GrantFiled: July 25, 2005Date of Patent: October 7, 2008Assignee: Hewlett-Packard Development Company, L.P.Inventor: Jon F. Bayh
-
Patent number: 7424600Abstract: The information processing apparatus includes: a process unit having one or more registers that retain data used for calculation; a compression unit that compresses and saves the content in the register to a stack memory; and a decompression unit that decompresses and restores the data saved in the stack memory, to the corresponding registers. If a first decoding unit included in the process unit has decoded a call instruction which is assigned a compression control bit, the compression unit, in executing the call instruction, performs compression before saving the content of the registers to the stack memory. If a second decoding unit included in the process unit has decoded a return instruction which is assigned a decompression control bit, the decompression unit, in executing the return instruction, performs decompression before restoring the content saved in the stack memory to the registers.Type: GrantFiled: July 23, 2003Date of Patent: September 9, 2008Assignee: Matsushita Electric Industrial Co., Ltd.Inventor: Yasunori Yamamoto
-
Publication number: 20080201567Abstract: Emulation methods are provided for two PACK instructions, one for Unicode data and the other for ASCII coded data in which processing is carried out in a block-by-block fashion as opposed to a byte-by-byte fashion as a way to provide superior performance in the face of the usual challenges facing the execution of emulated data processing machine instructions as opposed to native instructions.Type: ApplicationFiled: February 20, 2007Publication date: August 21, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Antonisamy A. Rajendran, Muruganandam Somasundaram
-
Patent number: 7403835Abstract: In a device and method for programming an industrial robot using a simulation program, control commands are issued by a handheld programming device and these commands are visualized on an image surface as movement and/or processing operations by the robot on the basis of data of the robot. An object to be processed is also displayed on the image surface and a three-dimensional image of the robot and the object is presented.Type: GrantFiled: May 19, 2006Date of Patent: July 22, 2008Assignee: Bayerische Motoren Werke AktiengesellschaftInventors: Harald Sandner, Hans-Joachim Neubauer
-
Publication number: 20080162911Abstract: Various embodiments for high performance renormalization for video encoding are described. In one or more embodiments, renormalization may involve detecting a leading number of ‘0’s in a range value of an input stream of symbols, a run of ‘1’s in an offset value of the input stream of symbols, and a run of ‘0’s following the run of ‘1’ in the offset value. A bitstream may be outputted based on an iteration window for a number of renormalization iterations. The iteration window may comprise a bit range after the run of ‘1’s in the offset value, and the number of renormalization iterations may be based on the leading number of ‘0’s in the range value. In some embodiments, a run of ‘1’s followed by one or more ‘0’s may be identified as a particular pattern. Other embodiments are described and claimed.Type: ApplicationFiled: December 29, 2006Publication date: July 3, 2008Inventor: Karthik Vaithianathan
-
Publication number: 20080148029Abstract: A data processing apparatus and method are provided for converting data values from a first endian format to a second endian format. Swizzle circuitry is provided within the data processing apparatus for receiving a block of data containing at least one data value, and for converting each data value in the block from the first endian format to the second endian format. The swizzle circuitry comprises first swizzle circuitry for performing a re-ordering operation on the block of data assuming the at least one data value contained therein is of a first predetermined size, in order to produce re-ordered data. Further, second swizzle circuitry is provided which is responsive to an indication that the at least one data value is of a size different to the first predetermined size to perform an additional re-ordering operation on the re-ordered data having regard to the size of the at least one data value in order to convert each data value to the second endian format.Type: ApplicationFiled: December 13, 2006Publication date: June 19, 2008Applicant: ARM LimitedInventors: Philippe Luc, Norbert Bernard Eugene Lataille, Florent Begon, Nicolas Chaussade
-
Publication number: 20080148018Abstract: The present invention is a technique to perform field operations. A shifter to shift an operand. A register stores the shifted operand. A shift post processor processes the shifted operand based on at least a control signal and an offset parameter.Type: ApplicationFiled: February 26, 2008Publication date: June 19, 2008Inventor: Sam B. SANDBOTE
-
Patent number: 7389408Abstract: An instruction stream having variable length instructions with embedded constants (e.g. immediate values and displacements) is translated into a stream of operations and a corresponding stream of bit fields, enabling advantageous compact storage of the embedded constants. The operations and the compact constants are optionally stored in entries in a trace cache and/or processed by execution pipelines. The compact constants are optionally formulated as a small constant field, a pointer, or both. The pointer of a particular one of the operations optionally references one of the bit fields within a window of the operations associated with the particular operation. A full-sized constant is constructed from one or more contiguous ones of the bit fields, starting with the referenced bit field, by unpacking and uncompressing information from the contiguous bit fields. An operation optionally includes a plurality of small constant fields and pointers to specify a respective plurality of constants.Type: GrantFiled: December 1, 2006Date of Patent: June 17, 2008Assignee: Sun Microsystems, Inc.Inventors: Christopher P. Nelson, John Gregory Favor