Patents by Inventor Stuart Biles
Stuart Biles has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20080091884Abstract: A data processing apparatus and method are provided for handling write access requests to shared memory. The data processing apparatus has a plurality of processing units for performing data processing operations requiring access to data in shared memory, with each processing unit having a cache associated therewith for storing a subset of the data for access by that processing unit. Cache coherency logic is provided that employs a cache coherency protocol to ensure data accessed by each processing unit is up-to-date. Each processing unit will issue a write access request when outputting a data value for storing in the shared memory, and when the write access request is of a type requiring both the associated cache and the shared memory to be updated, a coherency operation is initiated within the cache coherency logic.Type: ApplicationFiled: October 10, 2007Publication date: April 17, 2008Applicant: ARM LimitedInventors: Frederic Piry, Philippe Raphalen, Norbert Lataille, Stuart Biles, Richard Grisenthwaite
-
Publication number: 20080071953Abstract: A data processing apparatus and method for generating access requests is provided. A bus master is provided which can operate either in a secure domain or a non-secure domain of the data processing apparatus, according to a signal received from external to the bus master. The signal is generated to be fixed during normal operation of the bus master. Control logic is provided which, when the bus master device is operating in a secure domain, is operable to generate a domain specifying signal associated with an access request generated by the bus master core indicating either secure or non-secure access, in dependence on either a default memory map or securely defined memory region descriptors. Thus, the bus master operating in a secure domain can generate both secure and non-secure accesses, without itself being able to switch between secure and non-secure operation.Type: ApplicationFiled: September 13, 2007Publication date: March 20, 2008Applicant: ARM LimitedInventors: Daniel Kershaw, Stuart Biles
-
Publication number: 20070239969Abstract: There is provided an apparatus for processing data under control of a program having program instructions and subgraph suggestion information identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said apparatus comprising: a memory operable to store a program formed of separate program instructions; processing logic operable to execute respective separate program instructions from said program; and accelerator logic operable in response to reaching an execution point within said program associated with a subgraph suggestion to execute a sequence of program instructions corresponding to said subgraph suggestion as an accelerated operation instead of executing said sequence of program instructions as respective separate program instructions with said processing logic.Type: ApplicationFiled: June 5, 2007Publication date: October 11, 2007Applicants: ARM Limited, University of MichiganInventors: Stuart Biles, Krisztian Flautner, Scott Mahlke, Nathan Clark
-
Publication number: 20060095720Abstract: There is provided an information processor for executing a program comprising a plurality of separate program instructions: processing logic operable to individually execute said separate program instructions of said program; an operand store operable to store operand values; and an accelerator having an array comprising a plurality of functional units, said accelerator being operable to execute a combined operation corresponding to a computational subgraph of said separate program instructions by configuring individual ones of said plurality of functional units to perform particular processing operations associated with one or more processing stages of said combined operation; wherein said accelerator executes said combined operation in dependence upon operand mapping data providing a mapping between operands of said combined operation and storage locations within said operand store and in dependence upon separately specified configuration data providing a mapping between said plurality of functional units aType: ApplicationFiled: January 28, 2005Publication date: May 4, 2006Applicant: ARM LIMITEDInventors: Stuart Biles, Krisztian Flautner, Scott Mahlke, Nathan Clark
-
Publication number: 20060095722Abstract: There is provided an apparatus for processing data under control of a program having program instructions and subgraph suggestion information identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said apparatus comprising: a memory operable to store a program formed of separate program instructions; processing logic operable to execute respective separate program instructions from said program; and accelerator logic operable in response to reaching an execution point within said program associated with a subgraph suggestion to execute a sequence of program instructions corresponding to said subgraph suggestion as an accelerated operation instead of executing said sequence of program instructions as respective separate program instructions with said processing logic.Type: ApplicationFiled: January 31, 2005Publication date: May 4, 2006Applicants: ARM LIMITED, University of MichiganInventors: Stuart Biles, Krisztian Flautner, Scott Mahlke, Nathan Clark
-
Publication number: 20060095721Abstract: An accelerator 120 is tightly coupled to the normal execution unit 110. The operand store, which could be a register file 130, a stack based operand store or other operand store is shared by the execution unit and the accelerator unit. Operands may also be accessed as immediate values within the instructions themselves. The sequences of individual program instructions corresponding to computational subgraphs remain within a program but can be recognized by the accelerator as suitable for acceleration and when encountered are executed by the accelerator instead of by the normal execution unit. Within such tightly coupled arrangement problems can arise due to a lack of register resources within the system. The present technique provides that at least some intermediate operand values which are generated within the accelerator, but are determined not to be referenced outside of the computational subgraph concerned, are not written to the operand store.Type: ApplicationFiled: January 31, 2005Publication date: May 4, 2006Applicants: ARM Limited, University of MichiganInventors: Stuart Biles, Krisztian Flautner, Scott Mahlke, Nathan Clark
-
Publication number: 20050283593Abstract: A branch prediction mechanism within a pipelined processing apparatus uses a history value HV which records preceding branch outcomes in either a first mode or a second mode. In the first mode respective bits within the history value represent a mixture of branch taken and branch not taken outcomes. In the second mode a count value within the history value indicates a count of a contiguous sequence of branch taken outcomes.Type: ApplicationFiled: June 18, 2004Publication date: December 22, 2005Inventors: Vladimir Vasekin, Andrew Rose, Stuart Biles
-
Publication number: 20050071722Abstract: The present invention provides a data processing apparatus and method for handling corrupted data values. The method comprises the steps of: a) accessing a data value in a memory within a data processing apparatus; b) initiating processing of the data value within the data processing apparatus; c) whilst at least one of the steps a) and b) are being performed, determining whether the data value accessed is corrupted; and d) when it is determined that the data value is corrupted, disabling an interface used to propagate data values between the data processing apparatus and a device coupled to the data processing apparatus to prevent propagation of a corrupted data value to the device. When a data value is accessed, the data processing apparatus can begin processing of that data value and, hence, the performance of the data processing apparatus is not reduced.Type: ApplicationFiled: August 6, 2004Publication date: March 31, 2005Applicant: ARM LimitedInventor: Stuart Biles
-
Publication number: 20050066131Abstract: An apparatus and method for loading data values from a memory system are provided. The data processing apparatus comprises a data processing unit operable to execute instructions, and a register file having a plurality of registers operable to store data values accessible by the data processing unit when executing the instructions. Further, a holding register is provided which does not form one of a working set of registers of the register file, and is operable to temporarily store a data value, the holding register having a data portion for storing the data value, and an identifier portion operable to store identifier data associated with the data value.Type: ApplicationFiled: September 24, 2003Publication date: March 24, 2005Applicant: ARM LIMITEDInventors: Stuart Biles, Christopher Dornan, Vladimir Vasekin, Andrew Rose
-
Publication number: 20050005072Abstract: Within a coherent multi-processing system multiple processor cores 4, 6 are coupled via respective memory buses to a memory access control unit 16. The memory buses are formed of a uni-processing portion containing signals specifying a memory access request in accordance with a uni-processing protocol. This uni-processing bus is augmented by a multi-processing bus containing signals giving additional information concerning memory access requests which may be used by the memory access control unit to service those requests and manage coherency within the system.Type: ApplicationFiled: March 1, 2004Publication date: January 6, 2005Applicant: ARM LimitedInventors: Julie-Anne Pruvost, Norbert Lataille, Stuart Biles
-
Patent number: 5881263Abstract: The present invention provides a data processing apparatus comprising: a plurality of registers for storing data items to be processed; a processor for processing instructions to be applied to data items stored in said plurality of registers; and register remapping logic for converting a logical register reference within a preselected set of instructions to a physical register reference identifying the register containing the data item required for processing by the processor.By this approach, a remapping instruction need only be executed once in order for the remapping to be applied to a desired number of instructions. This is in contrast to prior art techniques, where subsequent to a remapping instruction being executed, the remapping is applied to all subsequent instructions, ie. a desired number of instructions cannot be selected.The invention is particularly advantageously employed in apparatus arranged to repeat an instruction loop, the instruction loop including said preselected set of instructions.Type: GrantFiled: October 8, 1996Date of Patent: March 9, 1999Assignee: Arm LimitedInventors: Richard York, Hedley James Frances, Dominic Symes, Stuart Biles