Patents Assigned to Ovics
  • Patent number: 10390010
    Abstract: In some embodiments, distributed video reorder buffers of a video (e.g. HEVC, H.265) encoder/decoder each include a circular FIFO array of pointers to buffer allocation units, and control logic which assigns allocation units to incoming video data in an order that allocation units are released by outgoing video data. The assignment order allows increased buffer utilization and lower buffer sizes, which is of increased importance for relatively large (e.g. 64×64, 32×32) video blocks, as supported by HEVC encoding/decoding.
    Type: Grant
    Filed: June 12, 2014
    Date of Patent: August 20, 2019
    Assignee: oViCs
    Inventor: Sorin C. Cismas
  • Patent number: 10085016
    Abstract: In some embodiments, a video prediction (reference block) cache includes multiple (e.g. 4) independently-addressable subcaches, each storing a predetermined part of a cache back-end (memory subsystem) word. For example, a 16-byte word received by the cache from memory may be split between four 4-byte subcaches. Each subcache line/block stores the data of a 2-D pixel array. Retrieving a cached prediction may be performed by accessing different subcaches synchronously (on the same clock cycle) to assemble the prediction from parts stored in different subcaches. A cache tag may be defined by a 4-D vector having x-position, y-position, frame ID, and color component (luma/chroma) fields. Using sub-word, independently-addressable subcaches allows increasing the efficiency of cache access and allows addressing memory bandwidth limitations facing emerging video coding standards and applications, which employ relatively large and varied prediction sizes.
    Type: Grant
    Filed: January 18, 2013
    Date of Patent: September 25, 2018
    Assignee: OVICS
    Inventor: Sorin C Cismas
  • Patent number: 9280513
    Abstract: Processor-to-processor (P-P) and/or broadcast proxies may be designated in a microprocessor matrix comprising a plurality of mesh-interconnected matrix processors when default processor-to-processor or broadcast routing algorithms used by data switches within the matrix to route messages would not deliver the messages to all intended recipients. The broadcast proxies broadcast messages within individual non-overlapping broadcast domains of the matrix. P-to-P and broadcast proxies may be designated as part of a boot-time testing/initialization sequence. Improving system fault tolerance allows improving semiconductor processing yields, which may be of particular significance in relatively large integrated circuits including large numbers of relatively-complex matrix processors.
    Type: Grant
    Filed: October 2, 2012
    Date of Patent: March 8, 2016
    Assignee: OVICS
    Inventors: Sorin C. Cismas, Ilie Garbacea
  • Patent number: 8327114
    Abstract: In some embodiments, processor-to-processor and/or broadcast proxies are designated in a microprocessor matrix comprising a plurality of mesh-interconnected matrix processors when default processor-to-processor or broadcast routing algorithms used by data switches within the matrix to route messages would not deliver the messages to all intended recipients. The broadcast proxies broadcast messages within individual non-overlapping broadcast domains of the matrix. P-to-P and broadcast proxies may be designated as part of a boot-time testing/initialization sequence. Improving system fault tolerance allows improving semiconductor processing yields, which may be of particular significance in relatively large integrated circuits including large numbers of relatively-complex matrix processors.
    Type: Grant
    Filed: July 7, 2008
    Date of Patent: December 4, 2012
    Assignee: Ovics
    Inventors: Sorin C Cismas, Ilie Garbacea
  • Patent number: 8145880
    Abstract: According to some embodiments, an integrated circuit comprises a microprocessor matrix of mesh-interconnected matrix processors. Each processor comprises a data switch including a data switch link register and matrix routing logic. The data switch link register includes one or more matrix link-enable register fields specifying a link enable status (e.g. a message-independent, p-to-p, and/or broadcast link enable status) for each inter-processor matrix link of the processor. The matrix routing logic routes inter-processor messages according to the matrix link-enable register field(s). A particular link may be selected by a current matrix processor by selecting an ordered list of matrix links according to a relationship between ?H and ?V, and choosing the first enabled link in the selected list for routing.
    Type: Grant
    Filed: July 7, 2008
    Date of Patent: March 27, 2012
    Assignee: Ovics
    Inventors: Sorin C Cismas, Ilie Garbacea
  • Patent number: 8131975
    Abstract: In some embodiments, an integrated circuit comprises a microprocessor matrix including a plurality of mesh-interconnected matrix processors, wherein each matrix processor comprises a data switch configured to direct inter-processor communications within the matrix, and a mapping unit configured to generate a data switch functionality map for a plurality of data switches in the microprocessor matrix. The data switch functionality map is generated by sending a first message through the matrix, and, setting a first functionality status designation for the first data switch in the data switch functionality map upon receiving a reply to the first message from a first data switch through the matrix.
    Type: Grant
    Filed: July 7, 2008
    Date of Patent: March 6, 2012
    Assignee: Ovics
    Inventors: Sorin C Cismas, Ilie Garbacea
  • Patent number: 7958341
    Abstract: In some embodiments, each matrix processor in a matrix of mesh-interconnected matrix processors includes an instruction processing pipeline, and a hardware data switch capable of streaming data to/from one or more inter-processor matrix links and/or a matrix processor local memory links in response to execution of a data streaming instruction by the instruction processing pipeline. The data switch can transfer each data stream, which includes multiple words, at wire speed, one word per cycle. After initiating a data stream, the processing pipeline can execute other instructions, including streaming instructions, while a stream transfer is in progress. Different data streaming instructions may be used to transfer data streams from local memory to one or more inter-processor links, from an inter-processor link to local memory, from an inter-processor link to one or more inter-processor links, and from an inter-processor link to one or more inter-processor links and synchronously to local memory.
    Type: Grant
    Filed: July 7, 2008
    Date of Patent: June 7, 2011
    Assignee: Ovics
    Inventors: Sorin C Cismas, Ilie Garbacea
  • Patent number: 7870365
    Abstract: In some embodiments, control and data messages are transmitted non-contentiously over corresponding control and data channels of inter-processor links in a matrix of mesh-interconnected matrix processors. A data stream instruction executed by a user thread of an instruction processing pipeline of a matrix processor may initiate a data stream transfer by a hardware data switch of the matrix processor over multiple consecutive cycles over a data channel. While the data stream is being transferred, the corresponding control channel may transfer control messages non-contentiously with respect to the data stream. The control messages may be messages received from other matrix processors and/or control messages initiated by a kernel thread of the current matrix processor.
    Type: Grant
    Filed: July 7, 2008
    Date of Patent: January 11, 2011
    Assignee: Ovics
    Inventors: Sorin C Cismas, Ilie Garbacea