Novafora, Inc. Patent applications |
Patent application number | Title | Published |
20100281483 | PROGRAMMABLE SCHEDULING CO-PROCESSOR - A scheduling co-processor for scheduling the execution of threads on a processor is disclosed. In certain embodiments, the scheduling co-processor includes one or more engines (such as lookup tables) that are programmable with a Petri-net representation of a thread scheduling algorithm. The scheduling co-processor may further include a token list to store tokens associated with the Petri-net; an enabled-thread list to indicate which threads are enabled for execution in response to particular tokens being present in the token list; and a ready-thread list to indicate which threads from the enabled-thread list are ready for execution when data and/or space availability conditions associated with the threads are satisfied. | 11-04-2010 |
20100281236 | APPARATUS AND METHOD FOR TRANSFERRING DATA WITHIN A VECTOR PROCESSOR - An apparatus for processing data may include an array of processing elements (such as an n×m or n×n array of processing elements) configured to simultaneously perform operations on a plurality of data elements using a single instruction. Each processing element in the array may be configured to transfer data directly to at least one neighboring processing element within the array. In selected embodiments, the apparatus may include exchange registers to temporarily store data transferred between neighboring processing elements. | 11-04-2010 |
20100281234 | INTERLEAVED MULTI-THREADED VECTOR PROCESSOR - 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. | 11-04-2010 |
20100281192 | APPARATUS AND METHOD FOR TRANSFERRING DATA WITHIN A DATA PROCESSING SYSTEM - An apparatus for transferring data between buffers within a data processing architecture includes first and second memory devices. The apparatus further includes a first connection manager associated with a first buffer in the first memory device, and a second connection manager associated with a second buffer in the second memory device. The first and second connection managers manage data transfers between the first and second buffers. The first connection manager is configured to receive a token from the second connection manager in order to trigger data transfer between the first buffer and the second buffer. The first connection manager is further configured to initiate a data transfer between the first and second buffers in response to receiving the token. This token-based method for initiating data transfers between the connection managers requires little or no CPU intervention. | 11-04-2010 |
20100175101 | Content Distribution Systems and Methods - A content distribution system and method receives data from a data source and identifies at least one unused channel in the received data. The unused channel is filtered and identified as an available content transmission channel. Content is then received from a content source and encoded to generate encoded content. The encoded content is modulated to generate modulated content, which is distributed within a distribution environment using the available content transmission channel. | 07-08-2010 |
20100172634 | Content Distribution Systems and Methods - A content distribution system and method receives content from a content source and encodes the received content to generate encoded content. The encoded content is modulated to generate modulated content. A frequency is selected for distributing the modulated content. A determination is made regarding whether the selected frequency is available for distributing the modulated content. If the selected frequency is not available, alternate frequencies are selected until an available frequency is identified. If the selected frequency is available, the modulated content is then distributed using the selected frequency. Existing display devices equipped with appropriate tuners do not need any additional hardware or software to receive such content. | 07-08-2010 |
20100172402 | Content Distribution Systems and Methods - A content distribution system and method receives content from a content source and decodes the received content. The system and method identifies at least one undesired virtual channel associated with the received content and removes content associated with the undesired virtual channel. The remaining content is then consolidated into a consolidated frequency range, encoded, and distributed within a distribution environment. | 07-08-2010 |
20100146241 | Modified-SIMD Data Processing Architecture - An apparatus and method for processing data includes an array of processing elements to simultaneously perform operations on multiple data elements using a single instruction. A grouping module assigns each processing element within the array to one of several groups. A modification module designates how each group of processing elements should handle the single instruction. This enables each group of processing elements to handle the single instruction differently. Each processing element is configured to handle the single instruction based on the group the processing element belongs to. | 06-10-2010 |
20100146238 | System and Method for Generating Real Addresses in Data Processing Architectures - A system and method for generating a real address in data memory in response to a read/write request may include generating an access request to at least one of read and write data to a data memory. A connection ID may be received in association with the access request. This connection ID may include a buffer ID designating a buffer in data memory to which to access the data, and a port ID designating a pattern in which to access the data in the buffer. The method may further include translating the connection ID into a real address of the data memory, and accessing the data in the data memory at a location corresponding to the real address. | 06-10-2010 |
20100145993 | Address Generation Unit Using End Point Patterns to Scan Multi-Dimensional Data Structures - A system in accordance with the invention may include a data memory storing a multi-dimensional (e.g., a two-dimensional) data structure. An address generation unit is provided to calculate real addresses in order to access the multi-dimensional data structure in a desired pattern. The address generation unit may be configured to calculate real addresses by moving across the multi-dimensional data structure between pairs of end points. The pairs of end points (as well as parameters such as the step size between the end points) may be pre-programmed into the address generation unit prior to accessing the multi-dimensional data structure. A processor, such as a vector processor, may be configured to access (e.g., read or write data to) the data structure at the real addresses calculated by the address generation unit. | 06-10-2010 |
20100145992 | Address Generation Unit Using Nested Loops To Scan Multi-Dimensional Data Structures - An apparatus, system, and method in accordance with the invention may include providing a multi-dimensional data structure and providing an address generation unit configured to calculate real addresses in order to access the multi-dimensional data structure in a desired pattern. The address generation unit may be configured to calculate the real addresses by executing a series of nested loops pre-programmed into the address generation unit prior to accessing the multi-dimensional data structure. The address generation unit may receive as inputs a set of parameters defining the characteristics of the nested loops. The method may then include accessing the data structure at the real addresses calculated by the address generation unit. | 06-10-2010 |
20100104184 | Methods and systems for representation and matching of video content - The described methods and systems provide for the representation and matching of video content, including spatio-temporal matching of different video sequences. A particular method of determining temporal correspondence between different sets of video data inputs the sets of video data and represents the video data as ordered sequences of visual nucleotides. Temporally corresponding subsets of video data are determined by aligning the sequences of visual nucleotides. | 04-29-2010 |
20100054329 | Method and System for Encoding Order and Frame Type Selection Optimization - A method for resource allocation for video encoder to achieve the minimum sequence cost within given resource budgets. Optimal video encoder design by deriving the optimal sequence order and frame type selection is invented. In order to achieve computationally practical resource allocation, the current invention utilizes various encoder model and buffer model. The models allow the optimization procedure to assess the best encoding design without actually performing the computationally expensive encoding. Efficient optimization algorithm is also derived to substantially reduce the computations required to search for the optimal action sequence. | 03-04-2010 |
20100011392 | Methods and Systems For Media Content Control - The described systems and methods control the display of media content on a media player with player preferences. The media content is analyzed and multiple signatures are computed that are representative of temporal portions of the media content. The multiple signatures are matched to a database of signatures, and a closest corresponding signature is found. Metadata associated with the closest corresponding signatures is retrieved as matching metadata. Display of the media content is controlled based on the player preferences and the matching metadata. | 01-14-2010 |
20100008643 | Methods and Systems for Interacting with Viewers of Video Content - A viewer interaction system and method receives video data from a video source and identifies object content in the received video data. A video signal is generated that represents the video data. That video signal is communicated to a display device which displays a video image representative of the video signal. The system and method monitor user interaction with the displayed video image and selects an interactive activity based on the user's interaction with the displayed video image and the identified object content in the received video data. | 01-14-2010 |
20100005488 | Contextual Advertising - A contextual advertising system and method receives video data and multiple advertisements associated with the video data. The system and method identify object content in the received video data and generates a video signal representing the video data. The video signal is communicated to a display device which displays a video image. User interaction with the displayed video image is monitored by the system and method. An advertisement is selected from the multiple received advertisements for display to the user. The advertisement is selected based on the user interaction with the displayed video image and the identified object content in the video data. | 01-07-2010 |
20090327894 | Systems and methods for remote control of interactive video - The present invention describes a system and method for controlling interactive video, including a remote control device allowing the user to interact with the video. The method allows bringing the “lean-forward” hypervideo experience to a “lay-back” environment such as the TV screen. The method also allows for the creation of a single system that combines both the social aspects of the “lay-back” and the “lean-forward experience” into a new type of rich media viewing experience. | 12-31-2009 |
20090304085 | Adaptive Deblocking Complexity Control Apparatus and Method - An encoder to adaptively alter video deblocking complexity is disclosed in one embodiment of the invention as including a video encoding engine to generate a stream of encoded video data. The encoded video data is characterized by a level of blocking distortion generated during the encoding process. A deblocking filter is coupled to the video encoding engine and reduces the effects of blocking distortion on the encoded video data. The deblocking filter is characterized by a level of deblocking complexity which may depend on the strength and granularity of the deblocking filter applied to the encoded video data. A resource manager is coupled to the deblocking filter and is configured to adaptively alter the deblocking complexity in order to alter the overall computational complexity of the encoder. | 12-10-2009 |
20090262075 | System and Method for User Object Selection in Geographic Relation to a Video Display - The invention is directed to a system and method for determining position and orientation with respect to a display device. In particular, the invention is directed to acquiring an observed image from a display device using a pointing device, and calculating pointing device position and orientation using the acquired observed image and a displayed image on the display device. | 10-22-2009 |
20090259633 | Universal Lookup of Video-Related Data - A universal video-related lookup system and method receives a request for information associated with specific video content from a requesting device. The system and method identify a first video content identifier associated with the specific video content and retrieves first metadata associated with the specific video content based on the first video content identifier. Next, the system and method translate the first video content identifier into a second video content identifier associated with the specific video content and retrieves second metadata based on the second video content identifier. The first metadata and the second metadata are then provided to the requesting device. | 10-15-2009 |
20090219993 | Resource Allocation for Frame-Based Controller - A method for resource allocation for video encoder to achieve optimal picture quality within a given resource budget. Making a video encoder utilize the computational complexity, bitrate and other resources in an optimal way while maintaining optimal quality is a complicated optimization problem. A subset of this resource allocation problem, optimizing the tradeoff between bitrate versus quality is called rate-distortion optimization and is performed in most modern encoders. In order to achieve a computationally practical solution of the resource allocation problem, the current invention partitions the video content into a number of regions based on their characteristics and assesses resource allocation among regions to achieve the optimal quality within the resource budget limit. To maintain the computation tractable, the invention relies on bit production model and distortion model for the underlying video content to assess the quality and resource usage instead of actually conducting video compression. An iterative optimization algorithm has been developed to implement the invention. | 09-03-2009 |
20090175538 | Methods and systems for representation and matching of video content - The described methods and systems provide for the representation and matching of video content, including spatio-temporal matching of different video sequences. A particular method of determining temporal correspondence between different sets of video data inputs the sets of video data and represents the video data as ordered sequences of visual nucleotides. Temporally corresponding subsets of video data are determined by aligning the sequences of visual nucleotides. | 07-09-2009 |
20090161766 | System and Method for Processing Video Content Having Redundant Pixel Values - A system and method for processing of video content containing redundant pixels using the picture recombination technique, with one of the main application in video transcoding process. The picture recombination process employs a quality ranking criterion to adaptively select the best region from the co-located regions of redundant pictures as the region for output. An approximation for quality ranking between a decoded picture region and an original picture region has been developed to guide the selection for recombination because the original picture is not available to the transcoder. The quality ranking formula is further modified as a simple linear function depending on the quantization scale, the bit count, and complexity measure of the region. | 06-25-2009 |
20090022472 | Method and Apparatus for Video Digest Generation - Automated video digest system and method. The system decomposes video and audio portions of video media into low-level descriptors, producing a large number of such descriptors for each video image and scene. These descriptors are optimized to be both compatible with rapid automated descriptor creation, and also to have some positive or negative statistical correlation with the viewing preferences of typical human viewers. By comparing the number of descriptors correlated with positive human viewing preferences, versus the number of descriptors correlated with negative human viewing preferences, the automated system may analyze an unknown video program and make educated guesses as to which portions of the program are likely to be most interesting to the viewer on playback. Less interesting portions may be skipped or fast-forwarded though. The method may also be optimized to individual viewers. Such methods are useful for controlling the playback of digital video recorders and other systems. | 01-22-2009 |