Vector Processor Patents (Class 712/2)
-
Patent number: 8862932Abstract: The described embodiments include a processor that handles faults. The processor first receives a first input vector, a control vector, and a predicate vector, each vector comprising a plurality of elements. For each element in the first input vector for which a corresponding element in the control vector and the predicate vector are active, the processor then performs a read operation using an address from the element of the first input vector. When a fault condition is encountered while performing the read operation, the processor determines if the element is a first element where a corresponding element of the control vector is active. If so, the processor handles/processes the fault. Otherwise, the processor masks the fault for the element.Type: GrantFiled: July 18, 2012Date of Patent: October 14, 2014Assignee: Apple Inc.Inventor: Jeffry E. Gonion
-
Publication number: 20140189287Abstract: In an embodiment, the present invention is directed to a processor including a decode logic to receive a multi-dimensional loop counter update instruction and to decode the multi-dimensional loop counter update instruction into at least one decoded instruction, and an execution logic to execute the at least one decoded instruction to update at least one loop counter value of a first operand associated with the multi-dimensional loop counter update instruction by a first amount. Methods to collapse loops using such instructions are also disclosed. Other embodiments are described and claimed.Type: ApplicationFiled: December 27, 2012Publication date: July 3, 2014Inventors: Mikhail Plotnikov, Andrey Naraikin, Elmoustapha Ould-Ahmed-Vall
-
Publication number: 20140122831Abstract: Instructions and logic provide vector compress and rotate functionality. Some embodiments, responsive to an instruction specifying: a vector source, a mask, a vector destination and destination offset, read the mask, and copy corresponding unmasked vector elements from the vector source to adjacent sequential locations in the vector destination, starting at the vector destination offset location. In some embodiments, the unmasked vector elements from the vector source are copied to adjacent sequential element locations modulo the total number of element locations in the vector destination. In some alternative embodiments, copying stops whenever the vector destination is full, and upon copying an unmasked vector element from the vector source to an adjacent sequential element location in the vector destination, the value of a corresponding field in the mask is changed to a masked value. Alternative embodiments zero elements of the vector destination, in which no element from the vector source is copied.Type: ApplicationFiled: October 30, 2012Publication date: May 1, 2014Inventors: Tal Uliel, Elmoustapha Ould-Ahmed-Vall, Robert Valentine
-
Patent number: 8687008Abstract: A latency tolerant system for executing video processing operations. The system includes a host interface for implementing communication between the video processor and a host CPU, a scalar execution unit coupled to the host interface and configured to execute scalar video processing operations, and a vector execution unit coupled to the host interface and configured to execute vector video processing operations. A command FIFO is included for enabling the vector execution unit to operate on a demand driven basis by accessing the memory command FIFO. A memory interface is included for implementing communication between the video processor and a frame buffer memory. A DMA engine is built into the memory interface for implementing DMA transfers between a plurality of different memory locations and for loading the command FIFO with data and instructions for the vector execution unit.Type: GrantFiled: November 4, 2005Date of Patent: April 1, 2014Assignee: NVIDIA CorporationInventors: Ashish Karandikar, Shirish Gadre, Stephen D. Lew
-
Patent number: 8683178Abstract: The described embodiments provide a processor that executes vector instructions. In the described embodiments, the processor initializes an architectural fault-status register (FSR) and a shadow copy of the architectural FSR by setting each of N bit positions in the architectural FSR and the shadow copy of the architectural FSR to a first predetermined value. The processor then executes a first first-faulting or non-faulting (FF/NF) vector instruction. While executing the first vector instruction, the processor also executes one or more subsequent FF/NF instructions. In these embodiments, when executing the first vector instruction and the subsequent vector instructions, the processor updates one or more bit positions in the shadow copy of the architectural FSR to a second predetermined value upon encountering a fault condition.Type: GrantFiled: April 20, 2011Date of Patent: March 25, 2014Assignee: Apple Inc.Inventor: Jeffry E. Gonion
-
Patent number: 8682631Abstract: A design specifications-driven platform (100) for analog, mixed-signal and radio frequency verification with one embodiment comprising a client (160) and server (150) is presented. The server comprises an analog verification database (110), a code and document generator (1020), a design to specifications consistency checker (103), a symbol generator (104), a coverage analyzer (105), a server interface (106), a web server (111), and an analog verification server application (101). The client comprises a web browser (130), generated datasheets and reports (120), generated models, regression tests, netlists, connect modules, and symbols (121), generated simulation scripts (122), a client interface (124), design data (131), simulators (132), and a design data extractor (123).Type: GrantFiled: August 31, 2010Date of Patent: March 25, 2014Inventors: Henry Chung-herng Chang, Kenneth Scott Kundert
-
Patent number: 8650382Abstract: A method includes, in a processor, loading/moving a first portion of bits of a source into a first portion of a destination register and duplicate that first portion of bits in a subsequent portion of the destination register.Type: GrantFiled: September 14, 2012Date of Patent: February 11, 2014Assignee: Intel CorporationInventor: Patrice Roussel
-
Patent number: 8649508Abstract: A system and method for implementing the Elliptic Curve scalar multiplication method in cryptography, where the Double Base Number System is expressed in decreasing order of exponents and further on using it to determine Elliptic curve scalar multiplication over a finite elliptic curve.Type: GrantFiled: September 29, 2008Date of Patent: February 11, 2014Assignee: Tata Consultancy Services Ltd.Inventor: Natarajan Vijayarangan
-
Patent number: 8578209Abstract: The described embodiments include a processor that handles faults during execution of a vector instruction. The processor starts by receiving a vector instruction that uses at least one vector of values that includes N elements as an input. In addition, the processor optionally receives a predicate vector that includes N elements. The processor then executes the vector instruction. In the described embodiments, when executing the vector instruction, if the predicate vector is received, for each element in the vector of values for which a corresponding element in the predicate vector is active, otherwise, for each element in the vector of values, the processor performs an operation for the vector instruction for the element in the vector of values. While performing the operation, the processor conditionally masks faults encountered (i.e., faults caused by an illegal operation).Type: GrantFiled: August 17, 2012Date of Patent: November 5, 2013Assignee: Apple Inc.Inventors: Jeffry E. Gonion, Keith E. Diefendorff
-
Patent number: 8554421Abstract: A vehicle having a dynamics control system, the vehicle comprising: a first set comprising multiple adjustable sub-systems that affect the performance of the vehicle's powertrain; a second set comprising multiple adjustable sub-systems that affect the vehicle's handling; a dynamics user interface including a first input device and a second input device; and a dynamics controller coupled to the user interface and configured to adjust the operation of the sub-systems of the first set in dependence on the first input device and to adjust the operation of the sub-systems of the second set in dependence on the second input device.Type: GrantFiled: September 8, 2010Date of Patent: October 8, 2013Assignee: McLaren Automotive LimitedInventors: Antony Sheriff, Mark Vinnels, Richard Felton
-
Patent number: 8539200Abstract: A system, method, and computer readable medium for an operating system (OS) mediated launch of an OS dependent application is disclosed. An application running within an OS may operate outside an OS environment by constructing for example a capsule file, passing the capsule file to firmware interface, and restarting the system. The firmware interface may load various drivers and applications contained within the capsule file and execute them to perform a task. Upon completion of the task, the OS is booted again and the original application may resume control, making use of any information stored by the firmware interface in a dedicated status table or file. Other embodiments may be employed, and other embodiments are described and claimed.Type: GrantFiled: April 23, 2008Date of Patent: September 17, 2013Assignee: Intel CorporationInventors: David H. Huang, Xin Li, Ruth Li, Vincent J. Zimmer
-
Publication number: 20130232317Abstract: A vector processing apparatus includes a storage pointer generation unit and an instruction execution unit including a plurality of vector pipeline units. The storage pointer generation unit receives the vector instruction and range information thereof and generates the storage pointer value. When receiving a succeeding vector instruction being able to be processed in parallel together with a preceding vector instruction, the storage pointer generation unit updates the storage pointer value based on the range information so as to input each element of the succeeding vector instruction into a vector pipeline unit that is unused by the preceding vector instruction, and the instruction execution unit processes in parallel the preceding vector instruction and the succeeding vector instruction according to the storage pointer value.Type: ApplicationFiled: March 1, 2013Publication date: September 5, 2013Inventor: Masao YASUDA
-
Publication number: 20130024651Abstract: Embodiments of a system and a method in which a processor may execute instructions that cause the processor to receive an operand vector, a selection vector, and a control vector are disclosed. The executed instructions may also cause the processor to perform a wrapping rotate previous operation dependent upon the input vectors.Type: ApplicationFiled: September 28, 2012Publication date: January 24, 2013Applicant: APPLE INC.Inventor: Apple Inc.
-
Patent number: 8356159Abstract: The described embodiments provide a system that sets elements in a result vector based on an input vector. During operation, the system determines a location of a key element within the input vector. Next, the system generates a result vector. When generating the result vector, the system sets one or more elements of the result vector based on the location of the key element in the input vector.Type: GrantFiled: April 7, 2009Date of Patent: January 15, 2013Assignee: Apple Inc.Inventors: Jeffry E. Gonion, Keith E. Diefendorff, Jr.
-
Patent number: 8271832Abstract: The described embodiments include a processor that handles faults during execution of a vector instruction. The processor starts by receiving a vector instruction that uses at least one vector of values that includes N elements as an input. In addition, the processor optionally receives a predicate vector that includes N elements. The processor then executes the vector instruction. In the described embodiments, when executing the vector instruction, if the predicate vector is received, for each element in the vector of values for which a corresponding element in the predicate vector is active, otherwise, for each element in the vector of values, the processor performs an operation for the vector instruction for the element in the vector of values. While performing the operation, the processor conditionally masks faults encountered (i.e., faults caused by an illegal operation).Type: GrantFiled: August 31, 2010Date of Patent: September 18, 2012Assignee: Apple Inc.Inventors: Jeffry E. Gonion, Keith E. Diefendorff
-
Patent number: 8261085Abstract: According to some implementations methods, apparatus and systems are provided involving the use of processors having at least one core with a security component, the security component adapted to read and verify data within data blocks stored in a L1 instruction cache memory and to allow the execution of data block instructions in the core only upon the instructions being verified by the use of a cryptographic algorithm.Type: GrantFiled: September 26, 2011Date of Patent: September 4, 2012Assignee: Media Patents, S.L.Inventor: Álvaro Fernández Gutiérrez
-
Patent number: 8253750Abstract: Circuits, methods, and apparatus that provide highly integrated digital media processors for digital consumer electronics applications. These digital media processors are capable of performing the parallel processing of multiple format audio, video, and graphics signals. In one embodiment, audio and video signals may be received from a variety of input devices or appliances, such as antennas, VCRs, DVDs, and networked devices such as camcorders and modems, while output audio and video signals may be provided to output devices such as televisions, monitors, and networked devices such as printers and networked video recorders. Another embodiment of the present invention interfaces with a variety of devices such as navigation, entertainment, safety, memory, and networking devices. This embodiment can also be configured for use in a digital TV, set-top box, or home server. In this configuration, video and audio streams may be received from a number of cable, satellite, Internet, and consumer devices.Type: GrantFiled: July 8, 2010Date of Patent: August 28, 2012Assignee: NVIDIA CorporationInventors: Jen-Hsun Huang, Gerrit A. Slavenburg, Stephen D. Lew, John C. Schafer, Thomas F. Fox, Taner E. Ozcelik
-
Patent number: 8243083Abstract: A system, method, and computer program product are provided for converting a scan algorithm to a segmented scan algorithm in an operator independent manner. In operation, a scan algorithm and a limit index data structure are identified. Utilizing the limit index data structure, the scan algorithm is converted to a segmented scan algorithm in an operator-independent manner. Additionally, the segmented scan algorithm is performed to produce an output.Type: GrantFiled: December 11, 2008Date of Patent: August 14, 2012Assignee: NVIDIA CorporationInventors: Michael J. Garland, Shubhabrata Sengupta
-
Patent number: 8234416Abstract: An apparatus configured to couple to a universal serial bus (USB) 3.0 connector. The apparatus includes a management controller configured to couple to the USB 3.0 connector. The management controller is configured to detect from behavior on the D+ and D? pins of the USB 3.0 connector whether a device plugged into the USB 3.0 connector is a conventional USB 3.0 device or an optical USB device, where the optical USB device employs one of the D+ and D? pins of the USB 3.0 connector to transmit a data signal and the other to transmit a clock signal.Type: GrantFiled: June 18, 2010Date of Patent: July 31, 2012Assignee: VIA Technologies, Inc.Inventor: Jiin Lai
-
Patent number: 8209525Abstract: The described embodiments provide a system that executes program code. While executing program code, the processor encounters at least one vector instruction and at least one vector-control instruction. The vector instruction includes a set of elements, wherein each element is used to perform an operation for a corresponding iteration of a loop in the program code. The vector-control instruction identifies elements in the vector instruction that may be operated on in parallel without causing an error due to a runtime data dependency between the iterations of the loop. The processor then executes the loop by repeatedly executing the vector-control instruction to identify a next group of elements that can be operated on in the vector instruction and selectively executing the vector instruction to perform the operation for the next group of elements in the vector instruction, until the operation has been performed for all elements of the vector instruction.Type: GrantFiled: April 7, 2009Date of Patent: June 26, 2012Assignee: Apple Inc.Inventors: Jeffry E. Gonion, Keith E. Diefendorff, Jr.
-
Patent number: 8203567Abstract: A graphics processing method and apparatus described herein is capable of converting graphics processing of a window system into a vector-based application program interface (API) format usable in the GPU and performing the converted graphics processing in the GPU. For example, the vector-based API may be based on an OpenVG standard or an EGL standard.Type: GrantFiled: July 3, 2009Date of Patent: June 19, 2012Assignee: Samsung Electronics Co., Ltd.Inventors: Dong-kyun Jeong, Soo-chan Lim, Na-min Kim
-
Patent number: 8169439Abstract: Embodiments of the invention are generally related to image processing, and more specifically to vector units for supporting image processing. A combined vector/scalar unit is provided wherein one or more processing lanes of the vector unit are used for performing scalar operations. An integrated register file is also provided for storing vector and scalar data. Therefore, the transfer of data to memory to exchange data between independent vector and scalar units is obviated and a significant amount of chip area is saved.Type: GrantFiled: October 23, 2007Date of Patent: May 1, 2012Assignee: International Business Machines CorporationInventors: David Arnold Luick, Eric Oliver Mejdrich, Adam James Muff
-
Patent number: 8151058Abstract: A vector computer system includes a vector processor configured to issue a vector store instruction which includes a plurality of store requests; a cache memory of a write back system provided between the vector processor and a main memory; and a write allocate determining section configured to generate an allocation control signal which specifies whether the cache memory operates based on a write allocate system or a non-write allocate system. When the vector processor issues the vector store instruction, the write allocate determining section generates the allocation control signal to each of the plurality of store requests based on a write pattern as a pattern of target addresses of the plurality of store requests. The cache memory executes each store request based on one of the write allocate system and the non-write allocate system which is specified based on the allocation control signal.Type: GrantFiled: October 5, 2009Date of Patent: April 3, 2012Assignee: NEC CorporationInventor: Koji Kobayashi
-
Patent number: 8140826Abstract: Methods, apparatus, and computer program products are disclosed for executing a gather operation on a parallel computer according to embodiments of the present invention. Embodiments include configuring, by the logical root, a result buffer or the logical root, the result buffer having positions, each position corresponding to a ranked node in the operational group and for storing contribution data gathered from that ranked node.Type: GrantFiled: May 29, 2007Date of Patent: March 20, 2012Assignee: International Business Machines CorporationInventors: Charles J. Archer, Joseph D. Ratterman
-
Publication number: 20110302390Abstract: Systems and methods for performing processing of communications signals on multi-processor architectures. The system consists of a digital interface that translate numbers that represent a waveform in some format to analog signals for use in transmission and translating analog signals to numbers representing those waveforms in some format that can be processed by the commodity digital hardware and software combination. The digital hardware and software incorporates parallel hardware and software that can process single or multiple streams and multiple processing steps as required for the communications system in any combination. In the examples, the use of general purpose graphics processing units (GPGPUs) is illustrated, but the system is not necessarily limited to such an implementation. The system is highly scalable and modular for addressing a wide range of radio requirements, preferably using commodity components.Type: ApplicationFiled: June 5, 2010Publication date: December 8, 2011Inventors: Greg Copeland, Shehrzad Qureshi
-
Patent number: 8055888Abstract: A data processing apparatus is disclosed that comprises a pipelined processor, said pipelined processor comprising a processing pipeline for processing instructions in a plurality of stages, at least some of said plurality of stages each comprising storage elements for storing an instruction or decoded instruction being processed in said stage, said storage elements in at least one of said stages comprising settable elements, each of said settable elements being adapted to store a predetermined value in response to a wake up event, said settable elements being arranged such that in response to said wake up event said values stored in said settable elements form an instruction or decoded instruction.Type: GrantFiled: February 28, 2008Date of Patent: November 8, 2011Assignee: ARM LimitedInventors: Chiloda Ashan Senerath Pathirane, David Michael Gilday
-
Patent number: 8051305Abstract: A motherboard device includes a first connecting interface coupled to a first graphics card, a second connecting interface coupled to a second graphics card, a power source connected electrically to the first connecting interface for supplying electric power to the first graphics card via the first connecting interface, and a switch unit interconnecting electrically the power source and the second connecting interface, and operable so as to switch between an ON-state, where the power source supplies electric power to the second graphics card via the second connecting interface, and an OFF-state, where the electric power from the power source is not supplied to the second graphics card.Type: GrantFiled: June 4, 2008Date of Patent: November 1, 2011Assignees: Micro-Star International Co., Ltd., MSI Electronic (Kun Shan) Co., Ltd.Inventor: Wen-Jie Zhu
-
Patent number: 7937359Abstract: A method of operating a Linear Complementarity Problem (LCP) solver is disclosed, where the LCP solver is characterized by multiple execution units operating in parallel to implement a competent computational method adapted to resolve physics-based LCPs in real-time.Type: GrantFiled: April 27, 2009Date of Patent: May 3, 2011Assignee: NVIDIA CorporationInventors: Lihua Zhang, Richard Tonge, Dilip Sequeira, Monier Maher
-
Patent number: 7930533Abstract: A system for pre-execution environment (PXE) booting a storage processor from a peer storage processor allows for the ability to reboot and/or restart the storage processor without an externally connected PXE server. In response to a reboot request of the storage processor, the peer storage processor pushes an operating system boot image and/or other information to the storage processor for PXE booting the storage processor, and vice versa. The system may also operate with multiple coupled computers.Type: GrantFiled: September 26, 2007Date of Patent: April 19, 2011Assignee: EMC CorporationInventors: Ying Guo, Qing Liu, Kevin Richards
-
Publication number: 20110055516Abstract: An innovative realization of computer hardware, software and firmware comprising a multiprocessor system wherein at least one processor can be configured to have a fixed instruction set and one or more processors can be statically or dynamically configured to implement a plurality of processor states in a plurality of technologies. The processor states may be instructions sets for the processors. The technologies may include programmable logic arrays.Type: ApplicationFiled: August 20, 2010Publication date: March 3, 2011Applicant: FTL Systems Technology CorporationInventor: John C. Willis
-
Patent number: 7873812Abstract: The new system provides for efficient implementation of matrix multiplication in a SIMD processor. The new system provides ability to map any element of a source vector register to be paired with any element of a second source vector register for vector operations, and specifically vector multiply and vector-multiply-accumulate operations to implement a variety of matrix multiplications without the additional permute or data re-ordering instructions. Operations such as DCT and Color-space transformations for video processing could be very efficiently implemented using this system.Type: GrantFiled: April 5, 2004Date of Patent: January 18, 2011Inventor: Tibet Mimar
-
Patent number: 7865693Abstract: Mechanisms for aligning enhanced precision vectors based on reduced precision data values are provided. At least one data value, having a first precision type, is received for storing in a vector register. The vector register stores data as a vector having a plurality of vector elements. The first precision type is modified to have a second precision type different in precision than the first precision type to thereby generate at least one modified data value. The at least one modified data value is stored in at least one vector element of the plurality of vector elements. An alignment of the at least one modified data value is determined relative to a boundary of a vector element of the vector register. An alignment operation to re-align the at least one modified data value based on the boundary of the vector element of the vector register is performed.Type: GrantFiled: October 14, 2008Date of Patent: January 4, 2011Assignee: International Business Machines CorporationInventors: Alexandre E. Eichenberger, Bruce M. Fleischer, Michael K. Gschwind
-
Patent number: 7840954Abstract: A computer implemented method, data processing system, and computer usable code are provided for generating code to perform scalar computations on a Single-Instruction Multiple-Data (SIMD) Reduced Instruction Set Computer (RISC) architecture. The illustrative embodiments generate code directed at loading at least one scalar value and generate code using at least one vector operation to generate a scalar result, wherein all scalar computation for integer and floating point data is performed in a SIMD vector execution unit.Type: GrantFiled: November 29, 2005Date of Patent: November 23, 2010Assignee: International Business Machines CorporationInventor: Michael Karl Gschwind
-
Publication number: 20100293534Abstract: In one embodiment, the invention is a method and apparatus for use of vectorization instruction sets. One embodiment of a method for generating vector instructions includes receiving source code written in a high-level programming language, wherein the source code includes at least one high-level instruction that performs multiple operations on a plurality of vector operands, and compiling the high-level instruction(s) into one or more low-level instructions, wherein the low-level instructions are in an instruction set of a specific computer architecture.Type: ApplicationFiled: May 15, 2009Publication date: November 18, 2010Inventors: HENRIQUE ANDRADE, Bugra Gedik, Hua Yong Wang, Kun-Lung Wu
-
Publication number: 20100281234Abstract: A method includes providing a processor configured to execute instructions. The method may further include providing a first set of registers in the processor to store first data and first instructions associated with a first thread, and providing a second set of registers in the processor to store second data and second instructions associated with a second thread. The method may further include transmitting the first data and first instructions associated with the first thread to the first set of registers, and executing the first instructions in order to process the first data. The method may further include transmitting the second data and second instructions to the second set of registers while executing the first instructions and processing the first data. A corresponding apparatus is also disclosed and claimed herein.Type: ApplicationFiled: April 30, 2009Publication date: November 4, 2010Applicant: Novafora, Inc.Inventors: MUHAMMAD AHMED, Marc Schaub, Shlomo Selim Rakib
-
Patent number: 7809931Abstract: A vector permutation system (100) for a single-instruction multiple-data microprocessor has a set of vector registers (110) which feed vectors to permutation logic (120) and then to a negate block (130) where they are permuted and selectively negated according to control parameters received from a selected one of a set of control registers (140). A control arrangement (145, 150) selects which control register is to provide the control parameters. In this way no separate permutation instructions are necessary or need to be executed, and no permutation parameters need to be stored in the vector registers (10). This leads to higher performance, a smaller vector registers file and hence a smaller size of the microprocessor and better program code density.Type: GrantFiled: October 6, 2003Date of Patent: October 5, 2010Assignee: Freescale Semiconductor, Inc.Inventor: Martin Raubuch
-
Patent number: 7793133Abstract: Power management methods and systems. First, a running cycle of a processing unit processing a data unit is recorded. A gating signal is generated according to the running cycle and a performance requirement, and a working clock is adjusted according to the gating signal. Thereafter, the adjusted working signal is provided to the processing unit.Type: GrantFiled: June 6, 2007Date of Patent: September 7, 2010Assignee: Via Technologies, Inc.Inventor: Ko-Fang Wang
-
Patent number: 7788471Abstract: A system and method for performing vector arithmetic is disclosed. The method includes loading two operand vectors, each composed of a number of vector elements, into two storage locations. A selected arithmetic operation is performed on the operand vectors to produce a result vector having the number of vector elements. Each vector element of the result vector is associated with an arithmetic logic cell that has a first input that can receive any vector element from the first vector and a second input that can receive any vector element from the second vector. Accordingly each vector element of the result vector is a function of any two individual vector elements of the operand vectors. By applying the operand vector elements to the appropriate arithmetic logic cells, and by selecting the appropriate arithmetic operation, complex vector operations can be performed efficiently.Type: GrantFiled: September 18, 2006Date of Patent: August 31, 2010Assignee: Freescale Semiconductor, Inc.Inventor: Chengke Sheng
-
Patent number: 7765386Abstract: An embodiment of the present invention is a technique to perform floating-point operations for vector processing. An input queue captures a plurality of vector inputs. A scheduler dispatches the vector inputs. A plurality of floating-point (FP) pipelines generates FP results from operating on scalar components of the vector inputs dispatched from the scheduler. An arbiter and assembly unit arbitrates use of output section and assembles the FP results to write to the output section.Type: GrantFiled: September 28, 2005Date of Patent: July 27, 2010Assignee: Intel CorporationInventors: David D. Donofrio, Michael Dwyer
-
Patent number: 7720220Abstract: A method, system and program product for executing a cipher message assist instruction in a computer system by specifying, via the cipher message assist instruction, either a capability query installed function or execution of a selected function of one or more optional functions, wherein the selected function is an installed optional function, wherein the capability query determines which optional functions of the one or more optional functions are installed on the computer system.Type: GrantFiled: February 27, 2009Date of Patent: May 18, 2010Assignee: International Business Machines CorporationInventors: Shawn D. Lundvall, Ronald M. Smith, Sr., Phil Chi-Chung Yeh
-
Publication number: 20100095086Abstract: Mechanisms for aligning enhanced precision vectors based on reduced precision data values are provided. At least one data value, having a first precision type, is received for storing in a vector register. The vector register stores data as a vector having a plurality of vector elements. The first precision type is modified to have a second precision type different in precision than the first precision type to thereby generate at least one modified data value. The at least one modified data value is stored in at least one vector element of the plurality of vector elements. An alignment of the at least one modified data value is determined relative to a boundary of a vector element of the vector register. An alignment operation to re-align the at least one modified data value based on the boundary of the vector element of the vector register is performed.Type: ApplicationFiled: October 14, 2008Publication date: April 15, 2010Applicant: International Business Machines CorporationInventors: Alexandre E. Eichenberger, Bruce M. Fleischer, Michael K. Gschwind
-
Publication number: 20100088473Abstract: A vector computer system includes a vector processor configured to issue a vector store instruction which includes a plurality of store requests; a cache memory of a write back system provided between the vector processor and a main memory; and a write allocate determining section configured to generate an allocation control signal which specifies whether the cache memory operates based on a write allocate system or a non-write allocate system. When the vector processor issues the vector store instruction, the write allocate determining section generates the allocation control signal to each of the plurality of store requests based on a write pattern as a pattern of target addresses of the plurality of store requests. The cache memory executes each store request based on one of the write allocate system and the non-write allocate system which is specified based on the allocation control signal.Type: ApplicationFiled: October 5, 2009Publication date: April 8, 2010Inventor: Koji KOBAYASHI
-
Patent number: 7676647Abstract: A processor device is disclosed that includes a register file with a combined condition code register for scalar and vector operations. The processor device utilizes the combined condition code register for scalar and vector operations. Further, a compare operation can store resulting bits in the combined condition code register and a conditional operation can utilize the combined condition code register bits for evaluating a condition.Type: GrantFiled: August 18, 2006Date of Patent: March 9, 2010Assignee: QUALCOMM IncorporatedInventors: Lucian Codrescu, Erich Plondke, Taylor Simpson
-
Publication number: 20100042807Abstract: The described embodiments provide a processor for generating a result vector with incremented or decremented values from an input vector. During operation, the processor receives an input vector and a control vector. The processor then copies a value contained in a selected element of the input vector. The processor next generates the result vector, which involves writing an incremented or decremented value to the result vector, depending on the value of the control vector and the embodiment. In addition, a predicate vector can be used to control the values that are written to the result vector.Type: ApplicationFiled: June 30, 2009Publication date: February 18, 2010Applicant: APPLE INC.Inventors: Jeffry E. Gonion, Keith E. Diefendorff, JR.
-
Patent number: 7661006Abstract: A computer implemented method, apparatus, and computer program product for managing symmetric multiprocessor interconnects. The process identifies functional communication connections between each processor in a plurality of processors on a multiprocessor to form identified functional communication connections. The process maps every functional communication connection between any two processors in the plurality of processors, based on the identified functional communication connections, to form an interconnect matrix. The process creates a path map using the interconnect matrix. The path map comprises a sequence of communication connections between the plurality of processors. The process initializes the plurality of processors using the path map.Type: GrantFiled: January 9, 2007Date of Patent: February 9, 2010Assignee: International Business Machines CorporationInventors: Luai A. Abou-Emara, Mark David McLaughlin, Jorge N. Yanez
-
Patent number: 7640155Abstract: A target interface system for interfacing selected components of a communication system and methods for manufacturing and using same. The target interface system includes target interface logic that is distributed among a plurality of reconfigurable logic devices. Being coupled via a serial link, the reconfigurable logic devices each have an input connection for receiving incoming data packets and an output connection for providing outgoing data packets. The serial link couples the input and output connections of successive reconfigurable logic devices to form a dataring structure for distributing the data packets among the reconfigurable logic devices. Thereby, the dataring structure maintains data synchronization among the reconfigurable logic devices such that the distribution of the target interface logic among the reconfigurable logic devices is transparent to software.Type: GrantFiled: May 31, 2005Date of Patent: December 29, 2009Assignee: QuickTurn Design Systems, Inc.Inventors: Mitchell G. Poplack, John A. Maher
-
Patent number: 7619541Abstract: A sensor assembly includes a sensor operable to sense a physical parameter and generate an electrical signal responsive to the sensed physical parameter. Local processing circuitry is physically positioned proximate the sensor and is electrically coupled to the sensor. The local processing circuitry includes an output port adapted to be coupled to a communications channel and the local processing circuitry is operable to process data from the sensor to generate processed sensor data and to provide the processed data on the output port.Type: GrantFiled: October 3, 2005Date of Patent: November 17, 2009Assignee: Lockheed Martin CorporationInventors: Kenneth R. Schulz, Andrew Hamm, John Rapp
-
Patent number: 7617403Abstract: The disclosed methodology and apparatus may reduce heat generation in a multi-core processor. In one embodiment, a multi-core processor cycles selected processor cores off in a predetermined pattern across the processor die over time to reduce the average heat generation by the processor. The disclosed multi-core processor may reduce or avoid undesirable hot spots that impact processor life.Type: GrantFiled: July 26, 2006Date of Patent: November 10, 2009Assignee: International Business Machines CorporationInventors: Louis Bennie Capps, Jr., Warren D. Dyckman, Michael Jay Shapiro
-
Patent number: 7603492Abstract: A streaming data interface device (700) of a streaming processing system (200) is automatically generated by selecting a set of circuit parameters (610) consistent with a set of circuit constraints and generating (612, 614) a representation of a candidate memory interface device based upon a set of stream descriptors. The candidate streaming data interface device is evaluated (616) with respect to one or more quality metrics and the representation of the candidate streaming processor circuit is output (622) if the candidate memory interface device satisfies a set of processing system constraints and is better in at least one of the one or more quality metrics than other candidate memory interface devices.Type: GrantFiled: September 20, 2005Date of Patent: October 13, 2009Assignee: Motorola, Inc.Inventors: Sek M. Chai, Nikos Bellas, Malcolm R. Dwyer, Erica M. Lau, Zhiyuan Li, Daniel A. Linzmeier
-
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