Patent application number | Description | Published |
20100312988 | Data processing apparatus and method for handling vector instructions - A data processing apparatus and method and provided for handling vector instructions. The data processing apparatus has a register data store with a plurality of registers arranged to store data elements. A vector processing unit is then used to execute a sequence of vector instructions, with the vector processing unit having a plurality of lanes of parallel processing and having access to the register data store in order to read data elements from, and write data elements to, the register data store during the execution of the sequence of vector instructions. A skip indication storage maintains a skip indicator for each of the lanes of parallel processing. The vector processing unit is responsive to a vector skip instruction to perform an update operation to set within the skip indication storage the skip indicator for a determined one or more lanes. The vector processing unit is responsive to a vector operation instruction to perform an operation in parallel on data elements input to the plurality of lanes of parallel processing, but to exclude from the performance of the operation any lane whose associated skip indicator is set. This allows the operation specified by vector instructions to be performed conditionally within each of the lanes of parallel processing without any modification to the vector instructions that are specifying those operations. | 12-09-2010 |
20110013699 | Video processing apparatus and a method of processing video data - A video processing apparatus and method are provided, the video processing apparatus comprising first stage video processing circuitry and second stage video processing circuitry. The first stage video processing circuitry receives input video data and performs one or more processing operations on the input video data to generate an intermediate representation of the input video data. The intermediate representation comprises first and second separate data portions, with the first data portion containing transient data derived from the input video data and the second data portion containing long term data derived from the input video data. Transient data is only required for processing of a single video frame, whilst the long term data is required for processing of at least two video frames. The first stage video processing circuitry is arranged to output the first and second separate data portions for storing in a buffer, and the second stage video processing circuitry then retrieves the first and second data portions from the buffer and performs one or more further processing operations on those data portions in order to generate output video data. The transient data is compressed prior to being stored in the buffer, and then decompressed when retrieved from the buffer by the second stage video processing circuitry. Such an approach enables the operations of the second stage video processing circuitry to be decoupled from the operations of the first stage video processing circuitry, whilst reducing the storage capacity requirements of the buffer. | 01-20-2011 |
20110080959 | Video reference frame retrieval - A video data processing apparatus is provided comprising processing circuitry for performing video processing operations requiring access to video reference frames, and a memory management unit configured to translate virtual addresses into physical addresses. Translation circuitry is provided responsive to a memory access request for reference frame pixel data issued by the processing circuitry to perform a translation process on video reference frame information such that the set of input values for at least one hash function in the memory management unit comprises video reference frame identifier bits contained with the video reference frame information. This approach has been found to reduce the frequency of aliasing in the memory management unit when retrieving video reference frames. | 04-07-2011 |
20110087858 | Memory management unit - A data processing apparatus is provided comprising a plurality of master devices configured to issue memory access requests including virtual addresses. A memory management unit is configured to receive memory access requests and to translate a virtual address included in a memory access request from a requesting master device into a physical address indicating a storage location in memory. The memory management unit has an internal storage unit having a plurality of entries wherein indications of corresponding virtual address portions and physical address portions are stored. The memory management unit is configured to select an entry of the internal storage unit in dependence on the virtual address and an identifier of the requesting master device. Conflict between the master devices in their usage of the internal storage unit is thus avoided. | 04-14-2011 |
20110150090 | Video encoder - A video encoding apparatus for encoding a video stream comprising: a reference frame cache configured to cache reference frame video data retrieved from a reference frame storage unit in external memory, the reference frame video data cached in the reference frame cache being derived from an individual frame of the video stream; a first source frame storage unit configured to store a first block of unencoded video data taken from a first source frame of the video stream; a second source frame storage unit configured to store a second block of unencoded video data taken from a second source frame of the video stream; a first video encoder configured to perform a first encoding operation to encode the first block of unencoded video data with reference to the reference frame video data cached in the reference frame cache; and a second video encoder configured to perform a second encoding operation to encode said second block of unencoded video data with reference to the reference frame video data cached in the reference frame cache, wherein the first video encoder and the second video encoder are configured to perform the first encoding operation and the second encoding operation in parallel with one another. | 06-23-2011 |
20110191539 | Coprocessor session switching - A data processing apparatus is provided, configured to carry out data processing operations on behalf of a main data processing apparatus, comprising a coprocessor core configured to perform the data processing operations and a reset controller configured to cause the coprocessor core to reset. The coprocessor core performs its data processing in dependence on current configuration data stored therein, the current configuration data being associated with a current processing session. The reset controller is configured to receive pending configuration data from the main data processing apparatus, the pending configuration data associated with a pending processing session, and to store the pending configuration data in a configuration data queue. The reset controller is configured, when the coprocessor core resets, to transfer the pending configuration data from the configuration data queue to be stored in the coprocessor core, replacing the current configuration data. | 08-04-2011 |
20120169936 | Noise reduction filter circuitry and method - The present invention provides filter circuitry for reducing noise in an input stream of image signals having luminance and chrominance components. Spatial filter circuitry is provided which, for a current image signal of the input stream, generates a spatially filtered internal signal from at least the luminance component of the current image signal. Comparison circuitry is configured to compare the current image signal with temporal data derived from multiple image signals of the input stream, and to generate a control signal dependent on the comparison. Combining circuitry is then used to combine, in a ratio determined by the control signal, the spatially filtered internal signal with at least a luminance component derived from the temporal data, in order to generate at least the luminance component of a current output image signal that forms a noise reduced version of the current image signal. Such a form of filter circuitry has been found to provide a filtered stream of image signals with significant noise suppression, and is particularly well suited to providing a filtered stream of image signals for input to video encoding circuitry, enabling significant improvements in the efficiency of the encoding circuitry by virtue of the manner in which the noise is suppressed. | 07-05-2012 |
20130276096 | MANAGEMENT OF DATA PROCESSING SECURITY IN A SECONDARY PROCESSOR - A data processing apparatus is configured to perform secure data processing operations and non-secure data processing operations, wherein the apparatus includes a master device with a secure domain and a non-secure domain. Components of the master device operate in the secure domain when performing secure data processing operations and operate in the non-secure domain when performing the non-secure data processing operations. A slave device is configured to perform a delegated data processing operation specified by the master device and a communication bus connecting the master device to the slave device. The delegated operation is initiated by an issuing component in the master device, wherein the slave device includes a security inheritance mechanism configured to cause the delegated operation to inherit a non-secure security status or a secure status depending upon whether the issuing component in the master device is operating in the non-secure domain or the secure domain. | 10-17-2013 |
20140283117 | PROTECTION UNIT AND METHOD FOR CONTROLLING ACCESS BY PLURAL PROCESSES TO A STORAGE UNIT - A data processing apparatus is provided, comprising plural processing units configured to execute plural processes, a storage unit configured to store data required for the plural processes; and a protection unit configured to control access by the plural processes to the storage unit. The protection unit is configured to define an allocated access region of the storage unit for each process of the plural processes, wherein the protection unit is configured to deny access for each the process outside the allocated access region and wherein allocated access regions are defined to be non-overlapping. The protection unit is configured to define each allocated access region as a contiguous portion of the storage unit between a lower region limit and an upper region limit, and the protection unit is configured such that when the lower region limit is modified the lower region limit cannot be decreased and such that when the upper region limit is modified the upper region limit cannot be decreased. | 09-18-2014 |
20150089148 | MEMORY MANAGEMENT UNIT - A data processing apparatus is provided comprising a plurality of master devices configured to issue memory access requests including virtual addresses. A memory management unit is configured to receive memory access requests and to translate a virtual address included in a memory access request from a requesting master device into a physical address indicating a storage location in memory. The memory management unit has an internal storage unit having a plurality of entries wherein indications of corresponding virtual address portions and physical address portions are stored. The memory management unit is configured to select an entry of the internal storage unit in dependence on the virtual address and an identifier of the requesting master device. Conflict between the master devices in their usage of the internal storage unit is thus avoided. | 03-26-2015 |
20150237346 | RATE CONTROL IN VIDEO ENCODING - A video encoder and method of video encoding are provided. At an encoding stage a selected degree of quantization is applied to the encoding of macroblocks of the input video sequence and quantized part-encoded macroblocks are generated. Quantization circuitry in the encoding stage is configured to select the selected degree of quantization for each macroblock in a current slice in dependence on a complexity estimate indicative of the expected entropy encoding complexity of a predetermined set of the quantized part-encoded macroblocks defined for that macroblock. | 08-20-2015 |
20160100172 | DATA PROCESSING SYSTEMS - A data processing system comprises a video processor ( | 04-07-2016 |
Patent application number | Description | Published |
20100106977 | Method and Apparatus for Secure Software Platform Access - In an advantageous approach to securing type safety in software platform accesses made by software applications, this disclosure teaches the inclusion of cryptographically signed type information in software applications, for authentication and registration by a software platform. With this approach, a given software application is permitted to make platform accesses (e.g., data type instantiations, memory accesses, method invocations, etc.) only in conformance with the registered type information. | 04-29-2010 |
20100186024 | System and Method of Invoking Multiple Remote Operations - A remote execution agent, having low-latency access to the platform, receives from a remote application, across a communication channel imposing a round-trip delay, a plurality of invocation control directives. The remote execution agent invokes operations for execution on the platform in response to the invocation control directives, and aggregates results from the operations, returning the aggregated results to the application. In this manner, overhead such as communication round-trip delay, context switching, and the like, is reduced, compared to the application sending separate operation invocation requests to the platform and receiving the results of each. The remote execution agent manages operation results, such as passing results from a prior operation as parameters for a later one. In some embodiments, the invocation control directives include conditional operation invocation and branching. | 07-22-2010 |
20100211772 | Collaborative Reconciliation of Application Trustworthiness - A mobile terminal receives trustworthiness information for a software application by receiving a voucher that indicates the trustworthiness of that application as represented by a third party. To ensure the integrity of this information, the mobile terminal authenticates the voucher and verifies that the software application is the one having its trustworthiness indicated by the voucher. Given such indications of trustworthiness, a user of the mobile terminal may decide whether install and run it. If decided in the affirmative, the user may form his or her own basis for the trustworthiness of the software application. Accordingly, the mobile terminal may also create a new voucher that indicates the trustworthiness of the software application as represented by the user. With third parties representing the trustworthiness of software applications in this manner, their development is not hindered by the imposition of security requirements on application developers. | 08-19-2010 |
20100235885 | Secure Client-Side Aggregation of Web Applications - A web browser client includes an aggregated web application runtime environment that controls access by a program fragment of an aggregated web application to a resource therein based upon the originating domain of the program fragment. To do so, the aggregated web application runtime environment appends an access attribute to the Document Object Model (DOM) node associated with the resource. This access attribute is associated with a plurality of access rights definitions where each access rights definition defines a set of access rights to the resource for program fragments originating from a domain with a specific access rights status. Accordingly, the aggregated web application runtime environment sets one or more access rights statuses of the originating domain of the program fragment, and thereafter, grants or denies the program fragment access to the resource based upon one or more sets of access rights defined for that program fragment. | 09-16-2010 |
20120038658 | Composition of Digital Images for Perceptibility Thereof - Teachings herein compose a digital image so that the image is perceptible on a viewing surface, such as a projection surface or a transparent screen. In doing so, the teachings advantageously recognize a digital image as consisting of one or more logical objects, like buttons of a user interface. Often, logical objects may be spatially arranged within the image and/or colored in different possible ways without substantially affecting the meaning conveyed by the image. Exploiting this, teachings herein evaluate light reflected from, or transmitted through, the viewing surface, and compose the digital image from one or more logical objects that have a spatial arrangement or coloration determined in dependence on that evaluation. The teachings might, for example, place a logical object within the image so that it will be displayed on a region of the surface which has high contrast with the object's colors and/or low color variance. | 02-16-2012 |
20120038663 | Composition of a Digital Image for Display on a Transparent Screen - Teachings herein prepare a digital image for display on a substantially transparent screen. The teachings advantageously recognize that the perceptibility of the digital image on the screen will often depend on what is visible to a user through the screen, since that will effectively serve as the background of the screen. A method of preparing a digital image thus includes dynamically calculating which part of an environmental background is visible to a user through the screen and thereby serves as an effective background of the screen. This calculation may entail obtaining an image of the environmental background and identifying which part of that image serves as the effective background (e.g., based on the angle at which the user views the screen). The method further includes composing the digital image for perceptibility as viewed against that effective background and outputting the composed image as digital data for display on the screen. | 02-16-2012 |
20120272223 | Technique for Run-Time Provision of Executable Code using Off-Device Services - A technique for obtaining executable code by a multi-core client device comprising a host core and at least one processing element implemented on a core different from the host core is provided. A method embodiment of this technique comprises the following steps performed by the host core at run-time of a host program: determining a non-executable code portion embedded in the host program; requesting executable code for a detected non-executable code portion from a remote network server; receiving the requested executable code from the network server; and providing the received executable code for execution by the processing element. The host program may conform to the OpenCL framework or any other framework that permits the embedding of non-executable code portions in an executable host program. | 10-25-2012 |
20120297031 | Anonymous Signalling - Embodiments include a method in a server for facilitating anonymous communication between a first web browser on a first communication device and a second web browser on a second communication device. The method includes dynamically establishing a signalling channel on the server for the first web browser responsive to the first web browser browsing to the server. The method further includes creating a unique identifier for the signalling channel, temporarily storing the unique identifier at the server, and then sending the unique identifier to the first web browser. The first communication device correspondingly sends the unique identifier to the second web browser, such an in an email or text message. Then, responsive to the second web browser browsing to the server using the unique identifier, the method includes connecting the second web browser to the established signaling channel for anonymous communication between the first and second web browsers over that channel. | 11-22-2012 |