Abstract:
An input device providing users with a pointing capability includes a sender portion (100) and a receiver portion (200). The sender portion ( 100) is adapted to be manipulated by a user (the user manipulating button 125) to specify a target point within a target area. The sender portion projects a light beam (light output from light source 115) including a pattern onto the target area. A receiver portion (200) includes one or more sensor units (205, 210, 215) located in or near the target area. At least some of the sensor units (205, 210, 215) receive a portion of the light beam (light output from light source 115) regardless of the location of the target point within the target area. A processing unit (220) in the receiver portion (200) analyzes the portions of the light beam received by one or more sensor units (205, 210, 215) to determine an attribute of the target point. The attribute can be the location or relative motion of the target point. The receiver portion (200) may be integrated with a display device.
Abstract:
Methods and apparatus provide for executing one or more software programs within a plurality of processors of a multi-processing system in accordance with a data parallel processing model, the software programs being comprised of a number of processing tasks, each task executing instructions on one or more input data units to produce an output data unit, and each data unit containing one or more data objects; responding to one or more application programming interface codes to change from a current processing task to a subsequent processing task within a given one or more of the processors; and using the output data unit produced by the current processor task as an input data unit by the subsequent processing task to produce a further output data unit within the same processor.
Abstract:
An even-driven interrupt processing is efficiently carried out in a multiprocessor system. A main control unit 112 executes a main process as a processing for controlling an apparatus in a unified manner. A sub-control unit 116 executes a task assigned by the main control unit 112 during the execution of the main process, as a sub-process. An event detector 162 detects an event occurrence upon which an interrupt task is to be preferentially executed during the execution of the main process. An interrupt notification unit 164 notifies the sub-control unit 116 of interrupt information indicative of an interrupt task in response to the detected event. The sub-control unit 116 notified of the interrupt information executes the interrupt task specified by the interrupt information, as a sub-process.
Abstract:
A data processor comprises a main memory; an instruction cache and a data cache; instruction fetch logic operable to search the instruction cache for a required instruction; and if the required instruction is not present in the instruction cache, to search the data cache; and if the required instruction is not present in the data cache, to fetch the required instruction from the main memory to the instruction cache; data write logic operable to write a data value into the data cache at a data address and, if that address is also represented in the instruction cache, to write that data value into the instruction cache; and cache control logic operable to transfer data from the data cache to the main memory.
Abstract:
A data processor comprises a main memory; an instruction cache and a data cache; instruction fetch logic operable to search the instruction cache for a required instruction; and if the required instruction is not present in the instruction cache, to search the data cache; and if the required instruction is not present in the data cache, to fetch the required instruction from the main memory to the instruction cache; data write logic operable to write a data value into the data cache at a data address and, if that address is also represented in the instruction cache, to write that data value into the instruction cache; and cache control logic operable to transfer data from the data cache to the main memory.
Abstract:
Methods and apparatus provide for assigning an identifier to a DMA command, the identifier for association with an entry of a DMA table containing status information regarding the DMA command; receiving an indication that a DMA data transfer defined by the DMA command has been completed; and updating the status information of the entry of the DMA table associated with the DMA data transfer to indicate that the DMA data transfer has been completed.
Abstract:
Methods and apparatus provide for translating a software program page by page from a first instruction set architecture (ISA) into a second ISA using one or more of a set of processors of a multi-processor system; and executing the translated software program using a dedicated other processor of the multi-processor system.
Abstract:
Methods and apparatus provide for transferring blocks of data between a shared memory and one or more of a plurality of parallel processors, each processor including a local memory; executing one or more programs within the local memory of one or more of the processors, wherein the one or more programs are coded such that they do not rely on data caching within the processor; and buffering not more than about three instructions from any local memory in any instruction buffer of any processor, wherein the instruction buffer of each processor is adapted to process instructions with substantially maximal efficiency when the one or more programs are coded such that they do not rely on data caching within the processor.
Abstract:
Methods and apparatus provide for verifying operating system software integrity prior to being executed by a processor, the processor including an associated local memory and capable of operative connection to a main memory such that data may be read from the main memory for use in the local memory; storing a status flag indicating whether the operating system software integrity is or is not satisfactory; and ensuring that the status flag indicates that the operating system software integrity is satisfactory before permitting the processor to continue in a course of action.
Abstract:
Methods and apparatus provide for: reading encrypted boot code from a storage medium into a local memory associated with a first of a plurality of processors; decrypting the encrypted boot code using a trusted decryption function of the first processor such that the boot code is verified as being authentic; booting the first processor using the boot code from the local memory; and authenticating boot code for one or more of the other processors in the first processor prior to the one or more other processors booting up.