Logic Operation Instruction Processing Patents (Class 712/223)
-
Patent number: 7028107Abstract: A system for communication between a plurality of functional elements in a cell arrangement and a higher-level unit is described. The system may include, for example, a configuration memory arranged between the functional elements and the higher-level unit; and a control unit configured to move at least one position pointer to a configuration memory location in response to at least one event reported by a functional element. At run time, a configuration word in the configuration memory pointed to by at least one of the position pointers is transferred to the functional element in order to perform reconfiguration without the configuration word being managed by a central logic.Type: GrantFiled: October 7, 2002Date of Patent: April 11, 2006Assignee: Pact XPP Technologies AGInventors: Martin Vorbach, Robert Münch
-
Patent number: 7028170Abstract: According to the invention, a processing core that executes a compare instruction is disclosed. The processing core includes a register file, comparison logic, decode logic, and a store path. Included in the register file are a number of general-purpose registers. The general-purpose registers include a first input operand register, a second input operand register and an output operand register. Comparison logic is coupled to the register file. The comparison logic tests for at least two of the following relationships: less than, equal to, greater than and no valid relationship. The decode logic selects the output operand register from the plurality of general-purpose registers. The store path extends between the comparison logic and the selected output operand register.Type: GrantFiled: March 8, 2001Date of Patent: April 11, 2006Assignee: Sun Microsystems, Inc.Inventor: Ashley Saulsbury
-
Patent number: 7003653Abstract: A method for rapidly mapping a bitmask returned by a Single Instruction Multiple Data (SIMD) computer compare instruction is provided. A user supplied partitioned mapping variable includes multiple mapping elements. Each of the multiple mapping elements is applied to the inputs of a different one of multiple digital multiplexers. The bitmask returned by the SIMD compare instruction is applied to the selects or all of the multiple digital multiplexers. Each multiplexer outputs one bit, as selected by the bitmask, from the respective mapping element applied to each multiplexer. The one bit outputs are accumulated in a mapped output variable as a mapped bitmask.Type: GrantFiled: October 21, 2002Date of Patent: February 21, 2006Assignee: Sun Microsystems, Inc.Inventor: Lawrence Spracklen
-
Patent number: 6999454Abstract: An information routing system and apparatus includes separate control and forwarding planes. The control plane is split into box management control functions and routing control functions. The box management control functions are isolated to a single processing card, while the routing control functions are distributed across multiple processing cards. The routing table is also distributed across multiple processing cards. The multiple processing cards are interconnected via a high-speed backplane bus for control plane traffic and by a fabric for forwarding plane traffic.Type: GrantFiled: January 17, 2002Date of Patent: February 14, 2006Assignee: Nortel Networks LimitedInventor: Richard H. Crump
-
Patent number: 6986023Abstract: A processor-based system may include a main processor and a coprocessor. The coprocessor handles instructions that include opcodes specifying a data processing operation to be performed by the coprocessor and a coprocessor identification field for identifying a target coprocessor for coprocessor instructions. Two bits indicate one of four data sizes including a byte (8 bits), a half word (16 bits), a word (32 bits), and a double word (64 bits). Two other bits indicate a saturation type.Type: GrantFiled: August 9, 2002Date of Patent: January 10, 2006Assignee: Intel CorporationInventors: Nigel C. Paver, William T. Maghielse, Wing K. Yu, Jianwei Liu, Anthony Jebson, Kailesh B. Bavaria, Rupal M. Parikh, Deli Deng, Mukesh Patel, Mark Fullerton, Murli Ganeshan, Stephen J. Strazdus
-
Patent number: 6978359Abstract: An aspect of the present invention provides a method of processing unaligned data in a microprocessor including, storing a first part of the unaligned data in a first register, storing a second part of the unaligned data in a second register, calculating a shift amount applied to the unaligned data, concatenating the data stored in the first and second registers, shifting the concatenated data by the calculated shift amount, and storing the shifted result in one of the first and second registers.Type: GrantFiled: February 4, 2002Date of Patent: December 20, 2005Assignee: Kabushiki Kaisha ToshibaInventor: Takashi Miyamori
-
Patent number: 6976155Abstract: A method and apparatus for synchronizing and communicating between processing entities, such as cores or threads, in a multiprocessor. Two registers are used as a “hardware mailbox” by two processing entities of a microprocessor. A first register is used to communicate information from a first processing entity to a second processing entity, while a second register is used to communication information from the second processing entity to the first processing entity. The first and second registers are cross-decoded by the two processing entities. One or more bits in each register are used to synchronize operation of the processing entities. In a microprocessor including three or more such processing entities, a read-write register of each processing entity holds outgoing information and a read-only register of each processing entity holds incoming information. A separate logic circuit logically combines the contents of the read-write registers and stores the result in the read-only registers.Type: GrantFiled: June 12, 2001Date of Patent: December 13, 2005Assignee: Intel CorporationInventors: Tracy Garrett Drysdale, Scott P Bobholz
-
Patent number: 6973551Abstract: A method and system for enabling a director to perform an atomic read-modify-write operation on plural bit read data stored in a selected one of a plurality of memory locations. The method includes providing a plurality of successive full adders, each one of the full adders being associated with a corresponding one of the bits of the plural bit read data. Each one of the full adders has a summation output, a carry bit input and a carry bit output. The method includes adding in each one of the full adders: (a) a corresponding bit of plural bit input data provided by the director; (b) the corresponding one of the bits of the plural bit read data; and, (c) a carry bit fed the carry bit input from a preceding full adder. Each one of the full adders provides: (a) a carry bit on the carry output thereof representative of the most significant bit produced by the full adder; and, (b) a bit on the summation output representative of a least significant bit produced by the full adder.Type: GrantFiled: December 30, 2002Date of Patent: December 6, 2005Assignee: EMC CorporationInventor: John K. Walton
-
Patent number: 6965960Abstract: A logical pipeline or logical hybrid pipeline is used for an xDSL communication system, and particularly for processing DMT symbols. This flexible arrangement permits easy and efficient sequencing of DMT symbols for transmit/receive tasks, and for multiple ports, since the pipeline resources can be shared or allocated as needed to support a particular data transmission. Each stage in the pipelines works on input data objects, and creates output data objects in the same format for use by other stages. The data objects are based on DMT symbols, so this facilitates intelligent control and sequencing of a DMT data transmission. The combination of the pipeline and the tailored data objects permits an implementation of a customized xDSL symbol processor.Type: GrantFiled: March 1, 2001Date of Patent: November 15, 2005Assignee: RealTek Semiconductor CorporationInventor: Ming-Kang Liu
-
Patent number: 6961846Abstract: The present invention relates to a data processing unit for executing instructions stored in a memory comprising a plurality of registers coupled with an execution unit comprising a logic unit for execution of logic operations. The logic unit comprises a first logic operator which can be coupled with a first and second register as an input register and which generates an output bit as a result of a logic operation. It further comprises a Boolean operator which receives the output bit of the first logic operator as a first input and second input bit from a third register which generates an output bit as a result of a Boolean operation.Type: GrantFiled: September 12, 1997Date of Patent: November 1, 2005Assignee: Infineon Technologies North America Corp.Inventors: Rod G. Fleck, Karl-Heinz Mattheis
-
Patent number: 6934828Abstract: A technique is described to reduce the complexity of floating point linear address (FLA) maintenance in a superscalar processor by coupling FLA updates when floating point data is stored instead of when floating point addresses are stored.Type: GrantFiled: September 17, 2002Date of Patent: August 23, 2005Assignee: Intel CorporationInventors: Rajesh S. Parthasarathy, Aravindh Bakthavathsalu
-
Patent number: 6931517Abstract: A microprocessor apparatus is provided for performing a pop-compare operation. The microprocessor apparatus includes paired operation translation logic, load logic, and execution logic. The paired operation translation logic receives a macro instruction that prescribes the pop-compare operation, and generates a pop-compare micro instruction. The pop-compare micro instruction directs pipeline stages in a microprocessor to perform the pop-compare operation. The load logic is coupled to the paired operation translation logic. The load logic receives the pop-compare micro instruction, and retrieves a first operand from an address in memory, where the address is specified by contents of a register. The register is prescribed by the pop-compare micro instruction. The execution logic is coupled to the load logic. The execution logic receives the first operand, and compares the first operand to a second operand.Type: GrantFiled: October 22, 2002Date of Patent: August 16, 2005Assignee: IP-First, LLCInventors: Gerard M. Col, G. Glenn Henry, Terry Parks
-
Patent number: 6918028Abstract: A digital data processor having a main pipeline to which a side pipe is loosely coupled. In particular, the side pipe is coupled to the main pipeline at a point after which an instruction entering the side pipe cannot cause an exception. When such an instruction enters the first stage of the side pipe, a copy or “ghost” of this instruction is created. While the actual instruction flows down the side pipe, this ghost instruction is allowed to flow independently down the main pipeline as if it were a non-squashable no-op. When the ghost reaches the retirement stage of the main pipeline, it is retired in normal program order, regardless of the status of the actual instruction. However, in addition, each system resource that is still waiting for a result from the actual instruction is marked appropriately. When the actual instruction finally completes in the side pipe, the only consequence, other than those local to the side pipe itself, is that any results are forwarded to the awaiting resources.Type: GrantFiled: March 28, 2000Date of Patent: July 12, 2005Assignee: Analog Devices, Inc.Inventor: David B. Witt
-
Patent number: 6918029Abstract: A method and system of executing computer instructions is described. Each instruction defines first and second operands and an operation to be carried out on said operands. Each instruction also contains an address field of a predetermined bit length which identifies a test register holding a plurality of test bits greater than the predetermined bit length. The test register holds a test code defining a test condition. The test condition is checked against at least one condition code and the operation is selectively carried out in dependence on whether the condition code satisfies the test condition. In one embodiment, the condition codes are set on a lane-by-lane basis for packed operands.Type: GrantFiled: January 14, 2003Date of Patent: July 12, 2005Assignee: Broadcom CorporationInventor: Sophie Wilson
-
Patent number: 6901420Abstract: A method and apparatus for performing a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.Type: GrantFiled: July 18, 2003Date of Patent: May 31, 2005Assignee: Intel CorporationInventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan
-
Patent number: 6901503Abstract: An integrated circuit contains a microprocessor core, program memory and separate data storage, together with analog and digital signal processing circuitry. The ALU is 16 bits wide, but a 32-bit shift unit is provided, using a pair of 16-bit registers. The processor has a fixed length instruction format, with an instruction set including multiply and divide operations which use the shift unit over several cycles. No interrupts are provided. external pins of the integrated circuit allow for single stepping and other debug operations, and a serial interface (SIF) which allows external communication of test dat or working data as necessary. The serial interface has four wires (SERIN, SEROUT, SERCLK, SERLOADB), allowing handshaking with a master apparatus, and allowing direct access to the memory space of the processor core, without specific program control.Type: GrantFiled: October 29, 2001Date of Patent: May 31, 2005Assignee: Cambridge Consultants Ltd.Inventors: Stephen John Barlow, Alistair Guy Morfey, James Digby Collier
-
Patent number: 6898698Abstract: A register number of a link register, which is specified by an instruction equivalent to a subroutine call, is registered. The number of a branch destination register in a branch instruction which can possibly be an instruction equivalent to a subroutine return is compared with the registered register number. If they match, this branch instruction is identified as an instruction equivalent to a subroutine return.Type: GrantFiled: March 22, 2000Date of Patent: May 24, 2005Assignee: Fujitsu LimitedInventors: Ryuichi Sunayama, Masaki Ukai, Aiichiro Inoue
-
Patent number: 6892295Abstract: According to the invention, a method for processing data related to an array of elements is disclosed. In one embodiment, a method for processing data related to an array of elements is disclosed. In the process, a first value is loaded from a first location, and a second value is loaded from a second location. The first and second values are compared to each other. A predetermined value is optionally stored at a destination based upon the outcome of the comparison.Type: GrantFiled: March 8, 2001Date of Patent: May 10, 2005Assignee: Sun Microsystems, Inc.Inventor: Ashley Saulsbury
-
Patent number: 6842728Abstract: An apparatus and method utilize a buffer interposed in a common signal path between asynchronous clock domains in a hardware-based logic emulation environment to manage the communication of time-multiplexed data signals between the clock domains during hardware-based emulation. The buffer is effectively used to latch each data signal communicated across the common signal path so that the clock domain that receives the signals can retrieve each such signal at appropriate points in the receiver clock domain's evaluation cycle. Independently-controlled write/read pointers are maintained in a buffer control circuit to independently address the buffer for the transmitter and receiver sides of an asynchronous communication path.Type: GrantFiled: March 12, 2001Date of Patent: January 11, 2005Assignee: International Business Machines CorporationInventors: Thomas Michael Gooding, Roy Glenn Musselman, Robert N Newshutz, Jeffrey Joseph Ruedinger
-
Patent number: 6842852Abstract: An execution control instruction is applied to an information processor of the type processing instructions by pipelining to suppress the occurrence of branch hazard. The execution control instruction contains: a condition field for specifying an execution condition; and an instruction-specifying field for defining, in binary code, the number of instructions to be executed only conditionally. In response to the execution control instruction, a nullification controller decides, based on control flags provided from an arithmetic logic unit, whether or not the execution condition specified by the condition field is satisfied. And based on the outcome of this decision, the controller determines whether or not that number of instructions, which has been defined by the instruction-specifying field for instructions succeeding the execution control instruction, should be nullified.Type: GrantFiled: February 8, 2000Date of Patent: January 11, 2005Assignee: Matsushita Electric Industrial Co., Ltd.Inventors: Masayuki Yamasaki, Minoru Okamoto
-
Patent number: 6834337Abstract: A system and method for data processing includes packing multiple signed data elements per register into a processor's registers using the rules set forth herein, and simultaneously operating on the elements in a register in a single cycle using the same operand. The elements can be independent of each other, and the sizes of the elements in a register can differ from each other. Moreover, a relatively large element can be split across multiple registers. In an exemplary application, a data stream representing two images can be simultaneously processed using the same number of registers as have been required to process a single image. Or, a single image can be processed approaching N-times faster, where N is the number of elements per register. In any case, the present invention results in a significant increase in processing efficiency.Type: GrantFiled: September 29, 2000Date of Patent: December 21, 2004Assignee: International Business Machines CorporationInventors: Joan Laverne Mitchell, Michael Thomas Brady, Jennifer Q. Trelewicz
-
Patent number: 6829696Abstract: A data processing system (e.g., microprocessor 30) for packing register data while storing it to memory and unpacking data read from memory while loading it into registers using single processor instructions. The system comprises a memory (42) and a central processing unit core (44) with at least one register file (76). The core is responsive to a load instruction (e.g., LDW_BH[U] instruction 184) to retrieve at least one data word from memory and parse the data word over selected parts of at least two data registers in the register file. The core is responsive to a store instruction (e.g., STBH_W instruction 198) to concatenate data from selected parts of at least two data registers into at least one data word and save the data word to memory. The number of data registers is greater than the number of data words parsed into or concatenated from the data registers. Both memory storage space and central processor unit resources are utilized efficiently when working with packed data.Type: GrantFiled: October 13, 2000Date of Patent: December 7, 2004Assignee: Texas Instruments IncorporatedInventors: Keith Balmer, Karl M. Guttag, Lewis Nardini
-
Publication number: 20040230775Abstract: Several new computer instructions are shown which are used to improve the performance of C or C++ language string functions. The instruction simultaneously compare multiple byte in two registers with each other and with all zeros and indicates the results of the comparison in the condition code and in a register which indicates the leftmost byte that compared or miscompared. The instructions may be exposed at the computer system's instruction set level, or it may be used internally by microcode running on the computer.Type: ApplicationFiled: May 12, 2003Publication date: November 18, 2004Applicant: International Business Machines CorporationInventors: Timothy J. Slegel, Fadi Y. Busaba, Christopher A. Krygowski
-
Patent number: 6816961Abstract: According to the invention, a processing core that includes a first source register, a second source register, a multiplexer, a destination register, and an operand processor is disclosed. The first source register includes a plurality of source fields. The second source register includes a number of result field select values and a number of operation fields. The multiplexer is coupled to at least one of the source fields. Included in the destination register is a plurality of result fields. The operand processor and multiplexer operate upon at least one of the source fields.Type: GrantFiled: March 8, 2001Date of Patent: November 9, 2004Assignee: Sun Microsystems, Inc.Inventors: Daniel S. Rice, Ashley Saulsbury
-
Patent number: 6791705Abstract: This invention has as its object to achieve high-speed data transfer using an asynchronous transfer interface. An encoding program encodes source data not to include byte data of a predetermined value. An arithmetic operation program EX-ORs the predetermined value, encoded data of interest, and immediately preceding output data so that neighboring data do not have identical values in units of bytes, and outputs the result as output data. A communication program sends the output data to a printer (7). In the printer (7), a clock is generated based on a change in received data, and received data is latched and decoded in synchronism with the clock.Type: GrantFiled: February 9, 2000Date of Patent: September 14, 2004Assignee: Canon Kabushiki KaishaInventor: Yoichi Sakamoto
-
Publication number: 20040177235Abstract: A set of processors, co-processors and processor cores having a Boolean logic unit, wherein the Boolean logic unit is operable, respectively, for performing the short-circuit evaluation of Conjunctive Normal Form Boolean expressions/operations, Disjunctive Normal Form Boolean expression/operations, or both. Each processor or processor core also includes a plurality of input/output interfaces, operable for receiving a plurality of compiled Boolean expressions/operations and transmitting a plurality of compiled results, and a plurality of registers. An associated processing method including starting an operation related to a Conjunctive Normal Form Boolean expression comprising a conjunct or related to a Disjunctive Normal Form Boolean expression comprising a disjunct, evaluating the conjunct or disjunct, and selectively short-circuiting a portion of the Boolean expression.Type: ApplicationFiled: March 17, 2004Publication date: September 9, 2004Applicant: University of North Carolina at CharlotteInventor: Kenneth E. Koch
-
Publication number: 20040172520Abstract: A method of constructing a Boolean expression in a clinical setting, including identifying at least a first and a second data assertion to add to the Boolean expression, adding at least one Boolean logical operator to the Boolean expression, determining an order of evaluation for the first and second data assertions, and visually depicting the first and second data assertions and the Boolean logical operator in a hierarchal display.Type: ApplicationFiled: September 19, 2003Publication date: September 2, 2004Inventors: Michael Smit, Khiang Seow
-
Publication number: 20040158693Abstract: In one embodiment, an optimized interleaving instruction is provided. The interleaving instruction facilitates a bit-level interleaving of two streams of data stored in two source registers into a combined stream of data.Type: ApplicationFiled: February 4, 2004Publication date: August 12, 2004Inventors: Amit Dagan, Israel Hirsh, Ofir Avni
-
Publication number: 20040153633Abstract: A CPU executes program instructions which result in valid and invalid intermediate results. By selecting the desired intermediate results, a program is able to be successfully executed. Analysis of the intermediate results must avoid plausible wrong results. A programmable feature allows the instruction decoder to provide plural answers, including plausible wrong answers. Instruction output selection logic selects a predetermined buffer, and this permits further microprocessor operation with the correct intermediate result.Type: ApplicationFiled: October 16, 2003Publication date: August 5, 2004Applicant: Sun Microsystems, Inc.Inventor: Alan C. Folmsbee
-
Patent number: 6763406Abstract: A method of communicating a data word via a bus includes driving the data word onto the bus in whichever one of a true polarity form and a complement polarity form that requires fewer bus lines to change state relative to a present state of each bus line, and providing an indicator signal to the bus to indicate which polarity form of the data word is driven onto the bus. The data word and the indicator signal may be received from the bus, and the polarity form of the data word is conditionally inverted in response to the indicator signal. A noise reduction system includes, for one embodiment, a sending circuit which compares each bit of a data word to be next communicated onto the bus against a corresponding bit of the present data word on the bus. If more than half the bits differ, then the next data word is inverted to form a complement next data word.Type: GrantFiled: February 1, 2001Date of Patent: July 13, 2004Assignee: Integrated Device Technology, Inc.Inventors: William L. Devanney, Robert J. Proebsting
-
Patent number: 6757819Abstract: A data processing system is provided with a digital signal processor which has an instruction for shifting a source operand in response to a signed shift count value and storing the shifted result in a selected destination register. A first 32-bit operand (600) is treated as a signed shift value that has a sign and a shift count value. A second operand (602) is shifted by an amount according to the shift count value and in a direction according to the sign of the shift count. One instruction is provided that performs a right shift for a positive shift count and a left shift for a negative shift count, and another instruction is provided performs a left shift for a positive shift count and a right shift for a negative shift count. If the shift count value is greater than 31, then the shift is limited to 31.Type: GrantFiled: October 31, 2000Date of Patent: June 29, 2004Assignee: Texas Instruments IncorporatedInventors: David Hoyle, Richard H. Scales, Min Wang, Joseph R. Zbiciak
-
Patent number: 6757813Abstract: In a processor executing plural instructions simultaneously, writin-destination-register numbers of the plural instructions to be executed simultaneously are compared, and kinds of operations to be executed by the plural instructions are changed in response to a comparison result. When the writing-destination-register numbers of the plural instructions are identical, a constant operation is applied to plural operation results obtained from the plural instructions to obtain an operation result and the operation result is written into the writing-destination-register instructed by the plural instructions. Results outputted from plural processing units are put together into one result and the result is stored in one register. Thus, register use efficiency and process efficiency are improved.Type: GrantFiled: June 23, 2000Date of Patent: June 29, 2004Assignee: NEC CorporationInventor: Hiroyuki Igura
-
Patent number: 6757820Abstract: A method and apparatus for performing single-instruction bit field extraction and for counting a number of leading zeros in a sequence of bits on a general purpose processor are provided. The fast bit extraction operations are accomplished by executing a first instruction for extracting an arbitrary number of bits of a sequence of bits stored in two or more source registers of the processor starting at an arbitrary offset and the storing the extracted bits in a destination register. Both the source and the destination registers are specified by the instruction. In addition, a second instruction is provided for counting the number of leading zeros in a sequence of bits stored in two or more source registers of the processor and then storing a binary value representing the number of leading zeros in a destination register. Again the source and the destination registers are specified by the second instruction.Type: GrantFiled: January 31, 2003Date of Patent: June 29, 2004Assignee: Sun Microsystems, Inc.Inventors: Subramania Sudharsanan, Jeffrey Meng Wah Chan, Marc Tremblay
-
Patent number: 6748518Abstract: Disclosed is a processor, which reduces issuing of unnecessary barrier operations during instruction processing. The processor comprises an instruction sequencing unit and a load store unit (LSU) that issues a group of memory access requests that precede a barrier instruction in an instruction sequence. The processor also includes a controller, which in response to a determination that all of the memory access requests hit in a cache affiliated with the processor, withholds issuing on an interconnect a barrier operation associated with the barrier instruction. The controller further directs the load store unit to ignore the barrier instruction and complete processing of a next group of memory access requests following the barrier instruction in the instruction sequence without receiving an acknowledgment.Type: GrantFiled: June 6, 2000Date of Patent: June 8, 2004Assignee: International Business Machines CorporationInventors: Guy Lynn Guthrie, Ravi Kumar Arimilli, John Steven Dodson, Derek Edward Williams
-
Patent number: 6748521Abstract: A data processing system is provided with a digital signal processor which has an instruction for saturating multiple fields of a selected set of source operands and storing the separate saturated results in a selected destination register. A first 32-bit operand (600) and a second 32-bit operand (602) are treated as four 16-bit fields and the sixteen bits in each field are saturated separately. Multi-field saturation circuitry is operable to treat a source operand as a number of fields, such that a multi-field saturated (610) result is produced that includes a number of saturated results each corresponding to each field. One instruction is provided which treats an operand pair as having two packed fields, and another instruction is provided that treats the operand pair has having four packed fields. Saturation circuitry is operable to selectively treat a field as either a signed value or an unsigned value.Type: GrantFiled: October 31, 2000Date of Patent: June 8, 2004Assignee: Texas Instruments IncorporatedInventor: David Hoyle
-
Patent number: 6745319Abstract: A data processing system is provided with a digital signal processor (DSP) which has a shuffle instruction for shuffling a source operand (600) and storing the shuffled result in a selected destination register (610). A shuffled result is formed by interleaving bits from a first source operand portion with bits from a second operand portion. A de-interleave and pack (DEAL) instruction is provided for de-interleaving a source operand. The shuffle instruction and the DEAL instruction have an exactly inverse effect. The DSP includes swizzle circuitry that performs interleaving or de-interleaving in a single execution phase.Type: GrantFiled: October 31, 2000Date of Patent: June 1, 2004Assignee: Texas Instruments IncorporatedInventors: Keith Balmer, David Hoyle, Lewis Nardini
-
Publication number: 20040103266Abstract: A programmable processor and method for improving the performance of processors by incorporating an execution unit operable to decode and execute single instructions specifying both a shift amount and a register containing a plurality of data elements, wherein the execution unit is operable to shift a subfield of each of the plurality of data elements by the shift amount to produce a second plurality of data elements; and provide the second plurality of data elements as a catenated result.Type: ApplicationFiled: November 13, 2003Publication date: May 27, 2004Applicant: MICROUNITY SYSTEMS ENGINEERING, INC.Inventors: Craig Hansen, John Moussouris
-
Publication number: 20040098567Abstract: A programmable processor and method for improving the performance of processors by incorporating an execution unit operable to decode and execute single instructions specifying both a shift amount and a register containing a plurality of data elements, wherein the execution unit is operable to shift a subfield of each of the plurality of data elements by the shift amount to produce a second plurality of data elements; and provide the second plurality of data elements as a catenated result.Type: ApplicationFiled: November 14, 2003Publication date: May 20, 2004Applicant: MICROUNITY SYSTEMS ENGINEERING, INC.Inventors: Craig Hansen, John Moussouris
-
Patent number: 6738793Abstract: An apparatus for performing a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.Type: GrantFiled: February 14, 2001Date of Patent: May 18, 2004Assignee: Intel CorporationInventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan, Srinivas Chennupaty
-
Publication number: 20040088525Abstract: A method and apparatus for predicting the outcome of a branch instruction based on the branch history of preceding branch instructions. As a sequence of instructions passes through an instruction execution pipeline, a base branch instruction is chosen, a history index is generated for the base branch instruction and subsequent branch instructions, and a transform is created for the branch instruction to be predicted. The transform is then saved. When the sequence of instructions subsequently passes through the pipeline again, the transform is retrieved and used to operate on the history index of the base branch instruction to produce a history index for the branch to be predicted. The result is used as an index into a prediction array to access the prediction logic for the branch instruction being predicted. By using the predetermined transform, a branch status prediction can be made before the branch to be predicted reaches the normal prediction stage in the pipeline.Type: ApplicationFiled: October 20, 2003Publication date: May 6, 2004Inventors: Reynold V. D'Sa, Slade A. Morgan, Alan B. Kyker, Gad S. Sheaffer, Gustavo P. Espinosa
-
Patent number: 6731294Abstract: A method and apparatus for reducing latency in pipelined circuits that process dependent operations is presented. In order to reduce latency for dependent operations, a pre-accumulation register is included in an operation pipeline between a first operation unit and a second operation unit. The pre-accumulation register stores a first result produced by the first operation unit during a first operation. When the first operation unit completes a second operation to produce a second result, the first result stored in the pre-accumulation register is presented to the second operation unit along with the second result as input operands.Type: GrantFiled: April 21, 2000Date of Patent: May 4, 2004Assignee: ATI International SRLInventors: Michael Andrew Mang, Michael Mantor
-
Publication number: 20040078556Abstract: A method for rapidly mapping a bitmask returned by a Single Instruction Multiple Data (SIMD) computer compare instruction is provided. A user supplied partitioned mapping variable includes multiple mapping elements. Each of the multiple mapping elements is applied to the inputs of a different one of multiple digital multiplexers. The bitmask returned by the SIMD compare instruction is applied to the selects or all of the multiple digital multiplexers. Each multiplexer outputs one bit, as selected by the bitmask, from the respective mapping element applied to each multiplexer. The one bit outputs are accumulated in a mapped output variable as a mapped bitmask.Type: ApplicationFiled: October 21, 2002Publication date: April 22, 2004Applicant: Sun Microsystems, Inc.Inventor: Lawrence Spracklen
-
Publication number: 20040068642Abstract: A processor according to the present invention includes a decoding unit 20, an operation unit 40 and others. When the decoding unit 20 decodes Instruction vcchk, the operation unit 40 and the like judges whether vector condition flags VC0˜VC3 (110) of a condition flag register (CFR) 32 are all zero or not, and (i) sets condition flags C4 and C5 of the condition flag register (CFR) 32 to 1 and 0, respectively, when all of the vector condition flags VC0˜VC3 are zero, and (ii) sets the condition flags C4 and C5 to 0 and 1, respectively, when not all the vector condition flags are zero. Then, the vector condition flags VC0˜VC3 are stored in the condition flags C0˜C3.Type: ApplicationFiled: September 24, 2003Publication date: April 8, 2004Inventors: Tetsuya Tanaka, Hazuki Okabayashi, Taketo Heishi, Hajime Ogawa, Tsuneyuki Suzuki, Tokuzo Kiyohara, Takeshi Tanaka, Hideshi Nishida, Masaki Maeda
-
Patent number: 6718459Abstract: A numerical arithmetic circuit 50 executes an arithmetic instruction according to an instruction read out of a program memory 10 and then stores the arithmetic result into a register group 40 via an input switcher 70. A mode register 20 is associated with the register group 40. A flag designating whether or not a predetermined logic operation is executed to the arithmetic result is set to the mode register 20. When the register group 40 stores the arithmetic result, the mode register 20 corresponding to the register being the register group 40 designated on the program is referred as a register which stores the arithmetic result. Thus, a predetermined arithmetic and logic operation to the arithmetic result is controlled.Type: GrantFiled: August 29, 2000Date of Patent: April 6, 2004Assignee: NEC Electronics CorporationInventor: Satoshi Chiba
-
Patent number: 6718456Abstract: Disclosed herein is a apparatus and method for packing a 16-bit number into an 8-bit result byte. The method and apparatus utilize a parallel processing right shift circuit and a filter to obtain desired results. The parallel processes are comprised of a plurality of multiplexers capable of discretely analyzing smaller groups of bits. In this manner, higher throughput may be obtained than previously known.Type: GrantFiled: June 2, 2000Date of Patent: April 6, 2004Assignee: Sun Microsystems, Inc.Inventor: Michael Ott
-
Publication number: 20040059895Abstract: A microprocessor circuit includes a control unit, a memory for free programming with at least one program having functions, a stack for buffer-storing data, a register bank having at least one register, and an auxiliary register that stores a number of bits, each of the bits being assigned to one of the registers of the register bank and indicating whether or not a respective register of the register bank contains information items.Type: ApplicationFiled: July 18, 2003Publication date: March 25, 2004Inventors: Christian May, Holger Sedlak
-
Method and system for controlling message transmission and acceptance by a telecommunications device
Patent number: 6704564Abstract: A method for controlling message transmission by a telecommunications device (110). A trigger configuration signal (150) including a dynamic logic expression (160) is received by the telecommunications device (110). The dynamic logic expression (160) defines one or more conditions associated with the transmission of a message (140). The telecommunications device (110) applies the dynamic logic expression (160) and transmits the message (140) if the dynamic logic expression (160) is satisfied.Type: GrantFiled: September 22, 2000Date of Patent: March 9, 2004Assignee: Motorola, Inc.Inventors: Rainer M Lange, Robert A. Gee, Axel Fuchs, John E. Emrich -
Publication number: 20040030869Abstract: The method is characterised in that comparison operations (31) which can be evaluated by an evaluation routine (4) can be formulated at the time the programme (8) of the control device (1) is running and in that actions (32, 33) that can also be formulated at the time the programme (8) is running are triggered according to the result of the respective comparison operation (31). This enables the control device (1) to be diagnosed and/or monitored without interrupting its operation.Type: ApplicationFiled: May 21, 2003Publication date: February 12, 2004Inventor: Klaus Spichtinger
-
Patent number: 6687899Abstract: An executable program is prepared from a plurality of object code modules, each object code module including special relocations that have a type field for identifying the nature of a function to be implemented by the special relocation. The function is selected from a plurality of arithmetic and logical functions. A method of preparing the executed program includes reading the special relocations, determining from the type field the nature of the function to be implemented, carrying out the selected arithmetic or logical function to generate a result value and using the result value in a subsequent special relocation operation. The method may be executed by a linker having a relocation module for reading the special locations and carrying out the relocation operations.Type: GrantFiled: August 28, 2000Date of Patent: February 3, 2004Assignee: STMicroelectronics LimitedInventor: Richard Shann
-
Publication number: 20040019769Abstract: The most or least significant bit of a datum can bet determined using parallel operations. This may result in faster location of the most or least significant bit without necessarily introducing more overhead in some embodiments.Type: ApplicationFiled: July 25, 2002Publication date: January 29, 2004Inventor: Stephen F. Moore