Operation Patents (Class 712/30)
  • Publication number: 20090083518
    Abstract: In one embodiment, the present invention includes a pipeline to execute instructions out-of-order, where the pipeline has front-end stages, execution units, and back-end stages, and the execution units are coupled between dispatch ports of the front-end stages and writeback ports of the back-end stages. Further, a reconfigurable logic is coupled between one of the dispatch ports and one of the writeback ports. Other embodiments are described and claimed.
    Type: Application
    Filed: September 25, 2007
    Publication date: March 26, 2009
    Inventor: Andrew F. Glew
  • Patent number: 7506138
    Abstract: A multiple processor computing apparatus includes a physical interconnect structure that is flexibly configurable to support selective segregation of classified and unclassified users. The physical interconnect structure also permits easy physical scalability of the computing apparatus. The computing apparatus can include an emulator which permits applications from the same job to be launched on processors that use different operating systems.
    Type: Grant
    Filed: May 24, 2007
    Date of Patent: March 17, 2009
    Assignee: Sandia Corporation
    Inventors: James L. Tomkins, William J. Camp
  • Publication number: 20090063817
    Abstract: A method, computer program product, and system are provided for packet coalescing in virtual channels of a data processing system. A first processor bundles original data to be transmitted to a destination processor, the original data provided by a first source processor. The first processor transmits the bundle of data to a second processor along a path to the destination processor. The second processor determines if the second processor has additional data destined for the same destination processor, the additional data being provided by a second source processor that is different from the first source processor. Responsive to the second processor having additional data, the second processor unbundles the original data, adds the additional data to the original data, and rebundles the data along with the additional data. Then the second processor transmits the rebundled data to at least one other processor along the path to the destination processor.
    Type: Application
    Filed: August 27, 2007
    Publication date: March 5, 2009
    Inventors: Lakshminarayana B. Arimilli, Ravi K. Arimilli, Ramakrishnan Rajamony
  • Publication number: 20090063814
    Abstract: A method, computer program product, and system are provided for routing information through the data processing system. Data is received at a source processor within a set of processors that is to be transmitted to a destination processor, where the data includes address information. A first determination is performed as to whether the destination processor is within a same processor book as the source processor based on the address information. A second determination is performed as to whether the destination processor is within a same supernode as the source processor based on the address information if the destination processor is not within the same processor book. A routing path is identified for the data based on results of the first determination, the second determination, and one or more routing table data structures. The data is then transmitted from the source processor along the identified routing path toward the destination processor.
    Type: Application
    Filed: August 27, 2007
    Publication date: March 5, 2009
    Inventors: Lakshminarayana B. Arimilli, Ravi K. Arimilli, Ramakrishnan Rajamony, William E. Speight
  • Publication number: 20090063816
    Abstract: A method, computer program product, and system are provided for performing collective operations. In software executing on a parent processor in a first processor book, a number of other processors are determined in a same or different processor book of the data processing system that is needed to execute the collective operation, thereby establishing a plurality of processors comprising the parent processor and the other processors. In software executing on the parent processor, the plurality of processors are logically arranged as a plurality of nodes in a hierarchical structure. The collective operation is transmitted to the plurality of processors based on the hierarchical structure. In hardware of the parent processor, results are received from the execution of the collective operation from the other processors, a final result is generated of the collective operation based on the received results, and the final result is output.
    Type: Application
    Filed: August 27, 2007
    Publication date: March 5, 2009
    Inventors: Lakshminarayana B. Arimilli, Ravi K. Arimilli, Ramakrishnan Rajamony, William E. Speight
  • Publication number: 20090063815
    Abstract: A method, computer program product, and system are provided for performing collective operations. In hardware of a parent processor in a first processor book, a number of other processors are determined in a same or different processor book of the data processing system that is needed to execute the collective operation, thereby establishing a plurality of processors comprising the parent processor and the other processors. In hardware of the parent processor, the plurality of processors are logically arranged as a plurality of nodes in a hierarchical structure. The collective operation is transmitted to the plurality of processors based on the hierarchical structure. In hardware of the parent processor, results are received from the execution of the collective operation from the other processors, a final result is generated of the collective operation based on the received results, and the final result is output.
    Type: Application
    Filed: August 27, 2007
    Publication date: March 5, 2009
    Inventors: Lakshminarayana B. Arimilli, Ravi K. Arimilli, Ramakrishnan Rajamony, William E. Speight
  • Publication number: 20090055596
    Abstract: A multi-processor system comprises at least one host processor, which may comprise a fixed instruction set, such as the well-known x86 instruction set. The system further comprises at least one co-processor, which comprises dynamically reconfigurable logic that enables the co-processor's instruction set to be dynamically reconfigured. In this manner, the at least one host processor and the at least one dynamically reconfigurable co-processor are heterogeneous processors having different instruction sets. Further, cache coherency is maintained between the heterogeneous host and co-processors. And, a single executable file may contain instructions that are processed by the multi-processor system, wherein a portion of the instructions are processed by the host processor and a portion of the instructions are processed by the co-processor.
    Type: Application
    Filed: August 20, 2007
    Publication date: February 26, 2009
    Applicant: Convey Computer
    Inventors: Steven J. Wallach, Tony Brewer
  • Publication number: 20090055626
    Abstract: A method of sharing a coarse grained array and a processor using the method is provided. A processor includes a first processor core including a plurality of first functional units which execute a first instruction set, a second processor core including a plurality of second functional units which execute a second instruction set, and a coarse grained array including a plurality of third functional units which execute a portion of instructions of the first instruction set and/or the second instruction set, instead of the first processor core and/or the second processor core.
    Type: Application
    Filed: February 18, 2008
    Publication date: February 26, 2009
    Inventors: Yeon Gon CHO, Suk Jin Kim, Sang Suk Lee, Junhee Kim, Jeongwook Kim
  • Publication number: 20090043987
    Abstract: Provided is an operation distribution method and system using a buffer. The operation distribution system includes a buffer, a first operation device performing a first operation and storing a result of the first operation performed by the first operation device in the buffer, and a second operation device performing a second operation using the result of the first operation stored in the buffer, thereby reducing the time required to perform operations.
    Type: Application
    Filed: November 26, 2007
    Publication date: February 12, 2009
    Applicant: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Joon-ho Song, Si-hwa Lee
  • Publication number: 20090037932
    Abstract: A computer system includes a system memory, a plurality of processor cores, and an input/output (I/O) hub that may communicate with each of the processor cores. In response to detecting an occurrence of an internal system management interrupt (SMI), each of the processor cores may save to a system management mode (SMM) save state in the system memory, information corresponding to a source of the internal SMI. In response to detecting the internal SMI, each processor core may further initiate an I/O cycle to a predetermined port address within the I/O hub. The I/O hub may broadcast an SMI message to each of the processor cores in response to receiving the I/O cycle. Each of the processor cores may further save to the SMM save state in the system memory, respective internal SMI source information in response to receiving the broadcast SMI message.
    Type: Application
    Filed: August 1, 2007
    Publication date: February 5, 2009
    Inventors: Michael T. Clark, Jelena Ilic
  • Publication number: 20090013154
    Abstract: The independencies of a plurality of layers executing dividingly a transaction can be easily enhanced. Anode (30) assigns to a transaction to anode (30) of a lower layer through a distributed transaction management section. The node (30) shares a predetermined transaction with the node (30) of the lower layer along with other nodes (30). The node (30) shared by the nodes (30) is a read-only node or a node to which data can be written by the characteristic of a function. Thus the node (30) searches for an unused node (30) in lower layers through the distributed transaction management section (34) when the node starts a new transaction. First, second, and third node hosts (3,4,5) check if each node (30) is used for which transaction or if each node (30) is used or not and store the results.
    Type: Application
    Filed: January 17, 2007
    Publication date: January 8, 2009
    Applicant: HEWLETT-PACKARD DEVELOPEMENT COMPANY, LP
    Inventors: Qingjie Du, Shinya Nakagawa
  • Publication number: 20090013153
    Abstract: A computer system including a plurality of physical processors (CPs) having physical processor performances (PCPs), a plurality of logical processors (LCPs), a plurality of logical partitions (LPARs) where each partition includes one or more of the logical processors (LCPs), and a system assist processor having a control element. The control element controls the virtualization of the physical processors (CPs), the logical partitions (LPARs) and the logical processors (LCPs) and allocates the physical processor performances (PCPs) to the logical partitions (LPARs). The control element operates to exclusively bind logical processors (LCPs) to the physical processors (CPs). For a logical processor (LCP) exclusively bound to a physical processor (CP), the logical processor (LCP) has exclusive use of the underlying physical processor (CP) and no other logical processor (LCP) can be dispatched on the underlying physical processor (CP) even if the underlying physical processor (CP) is otherwise available.
    Type: Application
    Filed: July 4, 2007
    Publication date: January 8, 2009
    Inventor: Ronald N. Hilton
  • Publication number: 20090006809
    Abstract: Updating code of a single processor in a multi-processor system includes halting transactions processed by a first processor in the system and processing of transactions by a second processor in the system are maintained. The first processor then receives new code and an operating system running on the first processor is terminated whereby all processes and threads being executed by the first processor are terminated. Execution of a self-reset of the first processor is commenced and interrupts associated with the first processor are disabled. Only those system resources exclusively associated with the first processor are reset, and memory transactions associated with the first processor are disabled. An image of the new code is copied into memory associated with the first processor, registers associated with the first processor are reset and the new code is booted by the first processor.
    Type: Application
    Filed: June 27, 2007
    Publication date: January 1, 2009
    Applicant: IBM CORPORATION
    Inventors: Stephen L. Blinick, Chiahong Chen
  • Publication number: 20080294875
    Abstract: Provided is a parallel processor for supporting a floating-point operation. The parallel processor has a flexible structure for easy development of a parallel algorithm involving multimedia computing, requires low hardware cost, and consumes low power. To support floating-point operations, the parallel processor uses floating-point accumulators and a flag for floating-point multiplication. Using the parallel processor, it is possible to process a geometric transformation operation in a 3-dimensional (3D) graphics process at low cost. Also, the cost of a bus width for instructions can be minimized by a partitioned Single-Instruction Multiple-Data (SIMD) method and a method of conditionally executing instructions.
    Type: Application
    Filed: March 11, 2008
    Publication date: November 27, 2008
    Inventors: Chun Gi LYUH, Yil Suk YANG, Se Wan HEO, Soon Il YEO, Tae Moon ROH, Jong Dae KIM, Ki Chul KIM, Se Hoon YOO
  • Patent number: 7454595
    Abstract: A compute processor allocator architecture for allocating compute processors to run applications in a multiple processor computing apparatus is distributed among a subset of processors within the computing apparatus. Each processor of the subset includes a compute processor allocator. The compute processor allocators can share a common database of information pertinent to compute processor allocation. A communication path permits retrieval of information from the database independently of the compute processor allocators.
    Type: Grant
    Filed: April 19, 2005
    Date of Patent: November 18, 2008
    Assignee: Sandia Corporation
    Inventor: Kevin Pedretti
  • Publication number: 20080282341
    Abstract: Methods and apparatus include: providing each of a plurality of processors of a multiprocessing system with an integrally disposed random number generator (RNG); and permitting one or more of the processors to enter into a secure mode using one or more random numbers generated by one or more of the RNGs.
    Type: Application
    Filed: May 9, 2007
    Publication date: November 13, 2008
    Applicant: SONY COMPUTER ENTERTAINMENT INC.
    Inventor: Akiyuki Hatakeyama
  • Publication number: 20080282342
    Abstract: A system and method are disclosed which may include entering a secure mode by a processor, whereby the processor may initiate a transfer of information into or out of the processor, but no external device may initiate a transfer of information into or out of the processor; sending a DMA (direct memory access) command including at least one authorization code from the processor to at least one trusted data storage region external to the processor; evaluating the authorization code; and enabling the processor to access at least one trusted data storage location within the trusted data storage region if the authorization code is valid.
    Type: Application
    Filed: May 9, 2007
    Publication date: November 13, 2008
    Applicant: SONY COMPUTER ENTERTAINMENT INC.
    Inventor: Akiyuki Hatakeyama
  • Patent number: 7447676
    Abstract: A method and system of collecting execution statistics of query statements is disclosed. An execution plan is generated for a query statement in one embodiment of the invention. The execution plan includes one or more operations. One of the one or more operations is selected. The selected execution plan is then executed and a plurality of execution statistics of the selected operation is collected.
    Type: Grant
    Filed: April 21, 2003
    Date of Patent: November 4, 2008
    Assignee: Oracle International Corporation
    Inventors: Mohamed Zait, Ari Mozes, Cetin Ozbutun
  • Publication number: 20080270753
    Abstract: In a case that a precedent queue to supply data to be processed does not include data to be processed, a processor D switches its operation mode to an auxiliary mode to perform a part of processing assigned to a processor A, and issues a request for execution of the part of the processing assigned to the processor A, to the processor A. In response to the request, the processor A notifies the processor D of information to cause the processor D to perform the part of the processing assigned to the processor A, and the processor D performs the part of the processing assigned to the processor A in accordance with the notified information.
    Type: Application
    Filed: April 16, 2008
    Publication date: October 30, 2008
    Applicant: CANON KABUSHIKI KAISHA
    Inventors: Ken Achiwa, Tomohiro Tachikawa
  • Publication number: 20080270754
    Abstract: A method for dynamically programming Field Programmable Gate Arrays (FPGAs) in a coprocessor, the coprocessor coupled to a processor, includes: beginning an execution of an application by the processor; receiving an instruction from the processor to the coprocessor to perform a function for the application; determining that the FPGA in the coprocessor is not programmed with logic for the function; fetching a configuration bit stream for the function; and programming the FPGA with the configuration bit stream. In this manner, the FPGA are programmable “on the fly”, i.e., dynamically during the execution of an application. The hardware acceleration and resource sharing advantages provided by the FPGA can be utilized more often by the application. Logic flexibility and space savings on the chip comprising the coprocessor and processor are provided as well.
    Type: Application
    Filed: July 2, 2008
    Publication date: October 30, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andreas C. DOERING, Silvio Dragone, Andreas Herkersdorf, Richard G. Hofmann, Charles E. Kuhlmann
  • Publication number: 20080270752
    Abstract: A system and method is provided for assigning a plurality of executable processes to a plurality of physical processors in a multi-processor computer system using a minimum processor share and a maximum processor share defined for each executable process. In an embodiment, the method can include allocating shares of total processor time to each executable process in proportion to the minimum processor shares up to the maximum processor shares to form target share allocations. The target share allocations can be used to map processes to the physical processors.
    Type: Application
    Filed: April 26, 2007
    Publication date: October 30, 2008
    Inventor: Scott Rhine
  • Publication number: 20080263320
    Abstract: Executing a scatter operation on a parallel computer includes: configuring a send buffer on a logical root, the send buffer having positions, each position corresponding to a ranked node in an operational group of compute nodes and for storing contents scattered to that ranked node; and repeatedly for each position in the send buffer: broadcasting, by the logical root to each of the other compute nodes on a global combining network, the contents of the current position of the send buffer using a bitwise OR operation, determining, by each compute node, whether the current position in the send buffer corresponds with the rank of that compute node, if the current position corresponds with the rank, receiving the contents and storing the contents in a reception buffer of that compute node, and if the current position does not correspond with the rank, discarding the contents.
    Type: Application
    Filed: April 19, 2007
    Publication date: October 23, 2008
    Inventors: Charles J. Archer, Joseph D. Ratterman
  • Patent number: 7437534
    Abstract: A Very Long Instruction Word (VLIW) processor having a plurality of functional units includes a multi-ported register file that is divided into a plurality of separate register file segments, each of the register file segments being associated to one of the plurality of functional units. The register file segments are partitioned into local registers and global registers. The global registers are read and written by all functional units. The local registers are read and written only by a functional unit associated with a particular register file segment. The local registers and global registers are addressed using register addresses in an address space that is separately defined for a register file segment/functional unit pair. The global registers are addressed within a selected global register range using the same register addresses for the plurality of register file segment/functional unit pairs.
    Type: Grant
    Filed: September 19, 2006
    Date of Patent: October 14, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Marc Tremblay, William N. Joy
  • Publication number: 20080244226
    Abstract: A processing system features a first processing core to operate in a first node, a second processing core to operate in a second node, and random access memory (RAM) responsive to the first and second processing cores. The processing system also features control logic to perform operations such as (a) automatically updating a resident set size (RSS) counter to correspond to the RSS for the thread on the first node in response to allocation of a page frame for a thread in the first node, and (b) using the RSS counter to predict migration overhead when determining whether the thread should be migrated from the first processing core to the second processing core. Other embodiments are described and claimed.
    Type: Application
    Filed: March 29, 2007
    Publication date: October 2, 2008
    Inventors: Tong Li, Daniel Baumberger, Scott Hahn
  • Publication number: 20080244305
    Abstract: The present invention relates to an electronic device comprising a first CPU, a second CPU, a first delay stage and a second delay stage for delaying data propagating on a bus, a CPU compare unit, and wherein the first delay stage is coupled to an output of the first CPU and a first input of the CPU compare unit, an input of the first CPU is coupled to a system input bus, the second delay stage is coupled to the system input bus and to an input of the second CPU, an output of the second CPU (CPU2) is coupled to the CPU compare unit, and wherein the first CPU and the second CPU are adapted to execute the same program code and the CPU compare unit is adapted to compare an output signal of the first delay stage, which is a delayed output signal of the first CPU, with an output signal of the second CPU.
    Type: Application
    Filed: March 4, 2008
    Publication date: October 2, 2008
    Inventors: Rainer Troppmann, Bernard Fuessl
  • Publication number: 20080244227
    Abstract: A design structure embodied in a machine readable storage medium for designing, manufacturing, and/or testing a design, for allocating processing functions between a primary processor and a secondary processor is disclosed. A primary processor is provided that performs routine processing duties, including execution of application program code, while the secondary processor is in a sleep state. When the load on the primary processor is deemed to be excessive, the secondary processor is awakened from a sleep state and assigned to perform processing functions that would otherwise need to be performed by the primary processor. If temperatures in the system rise above a threshold, the secondary processor is returned to the sleep state.
    Type: Application
    Filed: June 12, 2008
    Publication date: October 2, 2008
    Inventors: TIMOTHY W. GEE, Mark A. Rinaldi
  • Publication number: 20080229063
    Abstract: A processor array has processor elements (2) and a memory (4), connected in parallel to the accessible in parallel by the processor elements (2). A separate serial module (30) provides additional functionality for example in the form of a look up table module (30). The serial module (3) processes lines of data input to the module (30) serially. Processing can continue in the processor elements (2) in parallel using suitable programming steps.
    Type: Application
    Filed: September 4, 2006
    Publication date: September 18, 2008
    Applicant: KONINKLIJKE PHILIPS ELECTRONICS, N.V.
    Inventors: Richard P. Kleihorst, Anteneh A. Abbo, Vishal Choudhary
  • Publication number: 20080229062
    Abstract: A method of sharing registers in a processor includes executing a data processing instruction so as to obtain a result of the data processing instruction, which is to be written into a register of the processor. Register sharing information is obtained so as to control writing of the result into the register and/or at least one further register of the processor.
    Type: Application
    Filed: March 12, 2007
    Publication date: September 18, 2008
    Inventor: Lorenzo Di Gregorio
  • Publication number: 20080222359
    Abstract: The present invention comprises a CHA 110 which transmits/receives data to/from an external device, a DKA 140 which transmits/receives data to/from an HDD unit 200, a primary cache unit 120 which has a primary cache memory 124, a secondary cache unit 130 which is installed between the primary cache unit 120 and the DKA 140 and has a secondary cache memory 134, a CCP 121 which stores write target data received by the CHA 110 in the primary cache memory 124, and a CCP 131 which stores the write target data in the secondary cache memory 134, and transfers the write target data stored in the secondary cache memory 134 to the DKA 140.
    Type: Application
    Filed: January 24, 2008
    Publication date: September 11, 2008
    Applicant: HITACHI, LTD.
    Inventors: Tatsuya NINOMIYA, Kazuo TANAKA
  • Publication number: 20080215604
    Abstract: A device, namely, one of a Field Programmable Gate Array (FPGA) device and an Application Specific Integrated Circuit (ASIC) is described. The FPGA or ASIC is configured to represent one or more pedigree data structures, each structure comprising at least two generations. The device comprises a plurality of logic cells arranged such that one or more of the logic cells model a module of the pedigree data structure, where each module of the pedigree data structure is representative of an individual in a pedigree, input circuitry to receive pedigree data and output circuitry to output processed data; and electrical connections between the logic cells and the input and output circuitry. The arrangement of the logic cells and electrical connections enable parallel processing on a loaded pedigree data structure such that the transmission of pedigree data through at least a subset of the, or each, pedigree data structure occurs in each sampling cycle. A method and data structure are further disclosed.
    Type: Application
    Filed: March 10, 2006
    Publication date: September 4, 2008
    Inventors: Bryce Little, John Henshall
  • Publication number: 20080209149
    Abstract: The present invention relates to an object-based processor architecture which allows exact pointer identification by strictly separating pointers and data from one another in the memory and in the processor registers. The access to the memory is performed exclusively via pointers which refer to objects. An object contains separate areas for pointers and data and an attribute field for describing the length of the two areas. Both the pointers in the pointer registers and also the pointers in the pointer areas of the objects directly contain the address of the objects to which they refer. The suggested processor architecture allows the integration of automatic garbage collection, which may be implemented completely or partially in hardware. A real-time capable garbage collection may be implemented especially efficiently through hardware support.
    Type: Application
    Filed: July 1, 2004
    Publication date: August 28, 2008
    Applicant: Universitat Stuttgart
    Inventor: Matthias Meyer
  • Publication number: 20080209168
    Abstract: A method and apparatus for improving data processing efficiency with an improved context storage mechanism are provided. In an arrangement where data processing is performed with a plurality of logical processors are allocated to a physical process in a time sharing manner, a context table of a logical processor with the physical processor unapplied thereto is mapped to a logical partition address space of a logical partition to which the logical processor is applied to. The context table is then stored. When the logical processor is not allocated to the physical process, the content of the logical processor can be acquired. Processes such as accessing to the logical processor and program loading are executed without the need for waiting for timing of allocating the logical processor to the physical processor. Data processing efficiency is thus improved.
    Type: Application
    Filed: September 26, 2005
    Publication date: August 28, 2008
    Inventor: Daisuke Yokota
  • Publication number: 20080189515
    Abstract: The electronic circuit contains a plurality of processing elements (10), which are supplied with instructions under control of a common program flow, typically for SIMD operation wherein the same instructions are applied to all processing elements and different operand data of the instructions to respective ones of the processing elements (10). Under control of the instructions each processing element (10) determines, whether an operand data dependent condition has occurred. The processing element outputs a condition signal dependent on said determination. The condition signals are summed to form a sum signal. Program flow is controlled by a conditional jump dependent on a value represented by the sum signal.
    Type: Application
    Filed: February 9, 2006
    Publication date: August 7, 2008
    Applicant: KONINKLIJKE PHILIPS ELECTRONICS, N.V.
    Inventors: Richard P. Kleihorst, Anteneh A. Abbo, Sebastien F. Mouy
  • Publication number: 20080184009
    Abstract: In one embodiment, a node comprises a plurality of processor cores and a node controller configured to receive a first read operation addressing a first register. The node controller is configured to return a first value in response to the first read operation, dependent on which processor core transmitted the first read operation. In another embodiment, the node comprises the processor cores and the node controller. The node controller comprises a queue shared by the processor cores. The processor cores are configured to transmit communications at a maximum rate of one every N clock cycles, where N is an integer equal to a number of the processor cores. In still another embodiment, a node comprises the processor cores and a plurality of fuses shared by the processor cores. In some embodiments, the node components are integrated onto a single integrated circuit chip (e.g. a chip multiprocessor).
    Type: Application
    Filed: April 4, 2008
    Publication date: July 31, 2008
    Inventors: William A. Hughes, Vydhyanathan Kalyanasundharam, Kiran K. Bondalapati, Philip E. Madrid, Stephen C. Ennis
  • Patent number: 7401333
    Abstract: The present invention provides an array of parallel programmable processing engines interconnected by a switching network. At least some of the processing engines execute a thread, and at least some threads communicate with each other through communication objects either internally within one processing engine or through the network. A scheduling step of the parallel programmable processing engines is initiated by one or more events, an event being defined by a change of a state variable of a communication object. The array comprises: means for scheduling a scheduling step of the processing engines, the scheduling means comprising means for executing at least a first set of threads in parallel, means for updating state values of communications objects in response to the parallel executing step, and means for repeatedly and sequentially scheduling the executing means and the updating means until no more events occur. The present invention also provides a deterministic method of operating such an array.
    Type: Grant
    Filed: August 8, 2001
    Date of Patent: July 15, 2008
    Assignee: TranSwitch Corporation
    Inventor: Ivo Vandeweerd
  • Publication number: 20080168443
    Abstract: An approach is provided to allow virtual devices that use a plurality of processors in a multiprocessor systems, such as the BE environment. Using this method, a synergistic processing unit (SPU) can either be dedicated to performing a particular function (i.e., audio, video, etc.) or a single SPU can be programmed to perform several functions on behalf of the other processors in the system. The application, preferably running in one of the primary (PU) processors, issues IOCTL commands through device drivers that correspond to SPUs. The kernel managing the primary processors responds by sending an appropriate message to the SPU that is performing the dedicated function. Using this method, an SPU can be virtualized for swapping multiple tasks or dedicated to performing a particular task.
    Type: Application
    Filed: March 14, 2008
    Publication date: July 10, 2008
    Inventors: Daniel Alan Brokenshire, Michael Norman Day, Barry L Minor, Mark Richard Nutter
  • Publication number: 20080163035
    Abstract: A unit and method for distributing data from at least one data source in a system provided with at least two computer units, containing switching means which are used to switch between at least two operating modes of the system, wherein data distribution and/or selection of a data source is dependent upon the operating mode.
    Type: Application
    Filed: October 25, 2005
    Publication date: July 3, 2008
    Applicant: ROBERT BOSCH GMBH
    Inventor: Thomas Kottke
  • Publication number: 20080162834
    Abstract: A task queue manager manages the task queues corresponding to virtual devices. When a virtual device function is requested, the task queue manager determines whether an SPU is currently assigned to the virtual device task. If an SPU is already assigned, the request is queued in a task queue being read by the SPU. If an SPU has not been assigned, the task queue manager assigns one of the SPUs to the task queue. The queue manager assigns the task based upon which SPU is least busy as well as whether one of the SPUs recently performed the virtual device function. If an SPU recently performed the virtual device function, it is more likely that the code used to perform the function is still in the SPU's local memory and will not have to be retrieved from shared common memory using DMA operations.
    Type: Application
    Filed: March 15, 2008
    Publication date: July 3, 2008
    Inventors: Daniel Alan Brokenshire, Michael Norman Day, Barry L. Minor, Mark Richard Nutter, VanDung Dang To
  • Publication number: 20080155231
    Abstract: A processor communication register (PCR) contained in each processor within a multiprocessor cluster network provides enhanced processor communication. Each PCR stores identical processor communication information that is useful in pipelined or parallel multi-processing. Each processor has exclusive rights to store to a sector within each PCR within the cluster network and has continuous access to read the contents of its own PCR. Each processor updates its exclusive sector within all of the PCRs via a private protocol or dedicated wireless network, instantly allowing all of the other processors within the cluster network to see the change within the PCR data, and bypassing the cache subsystem.
    Type: Application
    Filed: December 12, 2007
    Publication date: June 26, 2008
    Inventors: Ravi Kumar Arimilli, Robert Alan Cargnoni, Derek Edward Williams, Kenneth Lee Wright
  • Publication number: 20080141057
    Abstract: A fault-tolerant computer uses multiple commercial processors operating synchronously, i.e., in lock-step. In an exemplary embodiment, redundancy logic isolates the outputs of the processors from other computer components, so that the other components see only majority vote outputs of the processors. Processor resynchronization, initiated at predetermined time, milestones, and/or in response to processor faults, protects the computer from single event upsets. During resynchronization, processor state data is flushed and an instance of these data in accordance with processor majority vote is stored. Processor caches are flushed to update computer memory with more recent data stored in the caches. The caches are invalidated and disabled, and snooping is disabled. A controller is notified that snooping has been disabled. In response to the notification, the controller performs a hardware reset of the processors. The processors are loaded with the stored state data, and snooping and caches are enabled.
    Type: Application
    Filed: February 19, 2008
    Publication date: June 12, 2008
    Applicant: Maxwell Technologies, Inc.
    Inventors: Robert A. Hillman, Mark Steven Conrad
  • Publication number: 20080126749
    Abstract: The claimed subject matter provides systems and/or methods that facilitate sharing of a memory, having a single channel of access, between two or more processors. A host processor can be operatively connected to a co-processor and the memory in series. The host processor can execute in place to enable it to execute code directly from the memory, and can arbitrate access to the memory bus and thus the memory, so that the host processor can perform all memory fetches to the memory without interruption by the co-processor. The co-processor can be implemented as a finite state machine, and only accesses the memory during read or write cycles issued by the host processor. Various types of co-processors can be employed to perform various functions, such as cryptography and digital signal processing, for example. The memory can be volatile or non-volatile memory.
    Type: Application
    Filed: November 7, 2006
    Publication date: May 29, 2008
    Applicant: SPANSION LLC
    Inventors: Joe Y. Tom, Venkat Natarajan
  • Publication number: 20080126751
    Abstract: Aspects of a scheduler hint method and system to improve network interface controller (NIC) receive (RX) processing cache performance are presented. Aspects of a system may include a NIC that enables generation of a processor selection bias value. The processor selection bias value may comprise hint data. A scheduler within a multiprocessor operating system (OS) executing on a multiprocessor computing system may enable selection of one of a plurality of processors based on the generated processor selection bias value. The scheduler executing on the multiprocessor computer system may enable execution of specified code, for example an egress process task, on the selected one of the plurality of processors. The egress process task may be executing subsequent to an ingress task process, which was executed on the selected one of the plurality of processors in response to one or more data packets received at the NIC.
    Type: Application
    Filed: November 27, 2007
    Publication date: May 29, 2008
    Inventors: Shay Mizrachi, Eliezer Tamir
  • Publication number: 20080126748
    Abstract: A method, apparatus, and computer program product for using a multi-core integrated circuit to extend the reliability or operating life of an electronic device.
    Type: Application
    Filed: September 1, 2006
    Publication date: May 29, 2008
    Inventors: Louis B. Capps, Ronald E. Newhart, Michael J. Shapiro
  • Publication number: 20080126750
    Abstract: According to one embodiment of the invention, a processor comprises a memory, a plurality of processor cores in communication with the cache memory and a scalability agent unit that operates as an interface between an on-die interconnect and both multiple processor cores and memory.
    Type: Application
    Filed: November 29, 2006
    Publication date: May 29, 2008
    Inventor: Krishnakanth Sistla
  • Publication number: 20080120489
    Abstract: A high performance sequencer/synchronizer controls multiple concurrent data processors and dedicated coprocessors and their interaction with multiple shared memories. This sequencer/synchronizer controls multi-threading access to shared memory.
    Type: Application
    Filed: November 16, 2006
    Publication date: May 22, 2008
    Inventors: Shinri Inamori, Deependra Talla
  • Publication number: 20080109639
    Abstract: A data processing apparatus and method are provided for handling execution of instructions within a data processing apparatus having a plurality of processing units. Each processing unit is operable to execute a sequence of instructions so as to perform associated operations, and at least a subset of the processing units form a cluster. Instruction forwarding logic is provided which for at least one instruction executed by at least one of the processing units in the cluster causes that instruction to be executed by each of the other processing units in the cluster, for example by causing that instruction to be inserted into the sequences of instructions executed by each of the other processing units in the cluster.
    Type: Application
    Filed: November 3, 2006
    Publication date: May 8, 2008
    Applicant: ARM Limited
    Inventors: Elodie Charra, Frederic Claude Marie Piry, Richard Roy Grisenthwaite, Melanie Emanuelle Lucie Vincent, Norbert Bernard Eugene Lataille, Jocelyn Francois Orion Jaubert, Stuart David Biles
  • Patent number: 7362762
    Abstract: Sequences of items may be maintained using ordered locks. These items may correspond to anything, but using ordered locks to maintain sequences of packets, especially for maintaining requisite packet orderings when distributing packets to be processed to different packet processing engines, may be particularly useful. For example, in response to a particular packet processing engine completing processing of a particular packet, a gather instruction is attached to the particular identifier of a particular ordered lock associated with the particular packet. If no longer needed for further processing, the packet processing engine is immediately released to be able to process another packet or perform another function. The gather instruction is performed in response to the particular ordered lock being acquired by the particular identifier, with the gather instruction causing the processed particular packet to be sent.
    Type: Grant
    Filed: July 16, 2004
    Date of Patent: April 22, 2008
    Assignee: Cisco Technology, Inc.
    Inventors: John J. Williams, Jr., John Andrew Fingerhut, Doron Shoham, Shimon Listman
  • Patent number: 7356819
    Abstract: Methods, signals, devices and systems are provided for matching tasks with processing units. A region within a multi-faceted task space is allocated to a processing unit. A point in the multi-faceted task space is assigned to a task. The task is then associated with the processing unit if the region allocated to the processing unit is close to the point assigned to the task. The region allocated to a processing unit may be changed. If no assigned point for a task is sufficiently close to any allocated processing unit region, the task is suspended. Overlapping regions may be assigned to different processing units. In some implementations, the union of the allocated regions covers the task space, while in others it does not. Regions may also be allocated to wait conditions and one or more dimensions of a region may be allocated to conventional processor allocators.
    Type: Grant
    Filed: August 7, 2003
    Date of Patent: April 8, 2008
    Assignee: Novell, Inc.
    Inventors: Glenn Ricart, Del Jensen, Stephen R. Carter
  • Publication number: 20080072031
    Abstract: An embedded memory card system includes a CPU, a nonvolatile memory storing a booting code and data, a card slave controller controlling the nonvolatile memory, a card host controller communicating with the card slave controller, and a memory controller controlling a volatile memory. The CPU controls the memory controller to boot the system directly from booting code as it is read from the nonvolatile memory.
    Type: Application
    Filed: August 28, 2007
    Publication date: March 20, 2008
    Inventor: Sung-Up Choi
  • Publication number: 20080046656
    Abstract: A request issued by the CPU is output from the local arbiter by way of the CPU bus and the CPU-issued request queue. The cache replacement request loop-back circuit determines at the loop-back determination circuit whether the outputted request is a cache replacement request or not. A request other than a cache replacement request is output onto the local bus. A cache replacement request is output to the selector and sent to the request handling section when there is no valid request on the global bus.
    Type: Application
    Filed: April 24, 2007
    Publication date: February 21, 2008
    Applicant: FUJITSU LIMITED
    Inventors: Takaharu Ishizuka, Toshikazu Ueki, Makoto Hataida, Takashi Yamamoto, Yuka Hosokawa, Takeshi Owaki, Daisuke Itou