IP Library Granted Patent US 8,565,308
Granted Patent B2
US 8,565,308 · App. 11/655,231 · Granted Oct 22, 2013

Interframe prediction processor with address management mechanism for motion vector storage

Inventor: Hidenori Nakaishi (Yokohama, JP)
Assignee: Fujitsu Semiconductor Limited
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,565,308
App. No.
11/655,231
Granted
Oct 22, 2013
Kind
B2
Abstract

A device for processing variable-size macroblocks to achieve high-speed interframe prediction. A predictor calculator determines a motion vector predictor (MVP) for a current macroblock from motion vectors of other macroblocks adjacent to the current macroblock. To achieve this, the predictor calculator specifies adjacent macroblocks to an address calculator. The address calculator calculates a vector memory address for each specified adjacent macroblock, based on the block size of that specified macroblock. The predictor calculator reads out motion vectors from the received addresses and determines MVP for the current macroblock.

Claims (38)

1. An interframe prediction processor that performs interframe prediction of video frames on a block basis, comprising:

a reference picture memory providing vector storage locations corresponding to minimum size blocks to store motion vectors calculated for blocks of variable sizes;

an address calculator that calculates an address of a vector storage location in the reference picture memory, based at least on the size of a specified block;

a predictor calculator that specifies blocks adjacent to a current block to the address calculator so as to obtain therefrom addresses of motion vectors calculated for the adjacent blocks specified, reads out the motion vectors from the obtained addresses of the reference picture memory, and determines a motion vector predictor of the current block based on the motion vectors read out of the reference picture memory; and

a reference picture storage manager that writes the calculated motion vectors in the vector storage locations reserved in the reference picture memory;

wherein the address calculator determines the address of the vector storage location, based on the block size of the specified adjacent block, when an address request specifying an adjacent block is received from the predictor calculator;

and wherein the address calculator comprises a translation table that associates each combination of block size and block location with a specific address of the reference picture memory; and the address calculator uses the translation table to determine the address of a motion vector in the reference picture memory, based on the block size and block location of the specified block.

2. The interframe prediction processor according to claim 1 , wherein:

the vector storage locations in the reference picture memory include current-block vector storage locations for storing motion vectors of blocks within the current block and adjacent-block vector storage locations for storing motion vectors of blocks adjacent to the current block; and

the reference picture storage manager copies the calculated motion vector from the current-block vector storage locations to the adjacent-block vector storage locations before a block located next to the current block is selected as a new current block.

3. The interframe prediction processor according to claim 2 , wherein the address calculator comprises:

a first translation table associating each combination of the block size and block location with an address of one of the current-block vector storage locations, and

a second translation table associating each combination of the block size and block location with an address of one of the adjacent-block vector storage locations,

and wherein the address calculator uses the first and second translation tables to determine the address of a vector storage location corresponding to the specified block.

4. A method of performing interframe prediction of video frames on a block basis, comprising the steps of:

providing vector storage locations corresponding to minimum size blocks to store motion vectors calculated for blocks of variable sizes;

specifying blocks adjacent to a current block;

calculating addresses of vector storage locations corresponding to the specified adjacent blocks, based at least on the size of each of the specified adjacent blocks;

reading out motion vectors from the calculated addresses;

determining a motion vector predictor of the current block based on the motion vectors that are read out;

writing a calculated motion vector in the vector storage locations;

determining the addresses of the vector storage locations, based on the block size of the specified adjacent block, when an address request specifying an adjacent block is received;

associating, in a translation table, each combination of block size and block location with a specific address of the reference picture memory; and

determining the address of a motion vector in the reference picture memory, based on the block size and block location of the specified block in the translation table.

5. A video coding device that encodes video frames into compressed video data by performing motion-compensated prediction between a source picture and a reference picture on a block basis, comprising:

a reference picture memory providing vector storage locations corresponding to minimum size blocks to store motion vectors calculated for blocks of variable sizes;

an address calculator that calculates an address of a vector storage location in the reference picture memory, based at least on the size of a specified block;

a predictor calculator that specifies blocks adjacent to a current block to the address calculator so as to obtain therefrom addresses of motion vectors calculated for the adjacent blocks specified, reads out the motion vectors from the obtained addresses of the reference picture memory, and determines a motion vector predictor of the current block based on the motion vectors read out of the reference picture memory; and

a reference picture storage manager that writes a calculated motion vector in the vector storage locations reserved in the reference picture memory;

wherein the address calculator determines the address of the vector storage location, based on the block size of the specified adjacent block, when an address request specifying an adjacent block is received from the predictor calculator;

and wherein the address calculator comprises a translation table that associates each combination of block size and block location with a specific address of the reference picture memory; and the address calculator uses the translation table to determine the address of a motion vector in the reference picture memory, based on the block size and block location of the specified block.

6. A video decoding device that reconstructs original video frames from a compressed video signal that has been produced by performing motion-compensated interframe prediction on a block basis, comprising:

a reference picture memory providing vector storage locations corresponding to minimum size blocks to store motion vectors calculated for blocks of variable sizes;

an address calculator that calculates an address of a vector storage location in the reference picture memory, based at least on the size of a specified block;

a predictor calculator that specifies blocks adjacent to a current block to the address calculator so as to obtain therefrom addresses of motion vectors calculated for the adjacent blocks specified, reads out the motion vectors from the obtained addresses of the reference picture memory, determines a motion vector predictor of the current block based on the motion vectors read out of the reference picture memory, and reconstructs a motion vector of the current block from the determined motion vector predictor and a decoded motion vector difference; and

a reference picture storage manager that writes the reconstructed motion vector in the vector storage locations reserved in the reference picture memory;

wherein the address calculator determines the address of the vector storage location, based on the block size of the specified adjacent block, when an address request specifying an adjacent block is received from the predictor calculator;

and wherein the address calculator comprises a translation table that associates each combination of block size and block location with a specific address of the reference picture memory; and the address calculator uses the translation table to determine the address of a motion vector in the reference picture memory, based on the block size and block location of the specified block.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2015
From: FUJITSU SEMICONDUCTOR LIMITED
To: SOCIONEXT INC.
Reel/Frame 035508/0637 →
CHANGE OF NAME Recorded Jul 22, 2010
From: FUJITSU MICROELECTRONICS LIMITED
To: FUJITSU SEMICONDUCTOR LIMITED
Reel/Frame 024748/0328 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 11, 2008
From: FUJITSU LIMITED
To: FUJITSU MICROELECTRONICS LIMITED
Reel/Frame 021977/0219 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2007
From: NAKAISHI, HIDENORI
To: FUJITSU LIMITED
Reel/Frame 018825/0137 →
Priority Claims (1)
JP 2006-222395 · Aug 17, 2006 · national
Continuity (1)
Related Publication 20080043842A1 · Feb 21, 2008