High-Performance Block-Matching VLSI Architecture With Low Memory Bandwidth For Power-Efficient Multimedia Devices
First Claim
1. A high-performance block-matching VLSI architecture, for executing a motion estimation of an coding operation with low memory bandwidth, for a power-efficient multimedia device, the high-performance block-matching VLSI architecture comprising:
- an external memory, for saving data of a search window of a reference frame;
a motion estimation processor, for finding out a plurality of corresponding best matched blocks and a plurality of corresponding motion vectors having a current block address of a current block from the search window according to a best matching algorithm (BMA); and
a data bus, coupled to the external memory and the motion estimation processor for transmitting data,wherein the motion estimation processor comprises an internal memory, a memory processing block, an address selection processing block, a predicting search path processing block, a BMA processing block, and a motion estimation result processing block, whereinthe memory processing block controls a data access operation between the internal memory and the external memory;
the address selection processing block selects a current block address in a current frame;
the predicting search path processing block executes a prediction of a search path regarding the current block according to the current block address selected by the address selection processing block, so as to predict the search path corresponding to the current block in the search window;
the BMA processing block loads corresponding data of the search window from the external memory to the internal memory, and finds out the best matched blocks and the motion vectors by the BMA, according to the search path predicted by the predicting search path processing block; and
the motion estimation result processing block recording the motion vectors of the current block and the best matched block.
1 Assignment
0 Petitions
Accused Products
Abstract
A high-performance block-matching VLSI architecture with low memory bandwidth for power-efficient multimedia devices is disclosed. The architecture uses several current blocks with the same spatial address in different current frames to search the best matched blocks in the search window of the reference frame based on the best matching algorithm (BMA) to implement the process of motion estimation in video coding. The scheme of the architecture using several current blocks for one search window greatly increases data reuse, accelerates the process of motion estimation, and reduces the data bandwidth and the power consumption.
38 Citations
11 Claims
-
1. A high-performance block-matching VLSI architecture, for executing a motion estimation of an coding operation with low memory bandwidth, for a power-efficient multimedia device, the high-performance block-matching VLSI architecture comprising:
-
an external memory, for saving data of a search window of a reference frame; a motion estimation processor, for finding out a plurality of corresponding best matched blocks and a plurality of corresponding motion vectors having a current block address of a current block from the search window according to a best matching algorithm (BMA); and a data bus, coupled to the external memory and the motion estimation processor for transmitting data, wherein the motion estimation processor comprises an internal memory, a memory processing block, an address selection processing block, a predicting search path processing block, a BMA processing block, and a motion estimation result processing block, wherein the memory processing block controls a data access operation between the internal memory and the external memory; the address selection processing block selects a current block address in a current frame; the predicting search path processing block executes a prediction of a search path regarding the current block according to the current block address selected by the address selection processing block, so as to predict the search path corresponding to the current block in the search window; the BMA processing block loads corresponding data of the search window from the external memory to the internal memory, and finds out the best matched blocks and the motion vectors by the BMA, according to the search path predicted by the predicting search path processing block; and the motion estimation result processing block recording the motion vectors of the current block and the best matched block. - View Dependent Claims (2, 3)
-
-
4. A high-performance block-matching method for a VLSI architecture, for executing a motion estimation of an coding operation with low memory bandwidth, for a power-efficient multimedia device, the high-performance block-matching method comprising:
-
step A;
starting the motion estimation, wherein data of a search window of a reference frame and data of a plurality of current blocks are saved in an external memory, then entering step B;step B;
selecting an address of the current blocks, then entering step C;step C;
loading the data of one current block corresponding to the address of the current block to an internal memory, then entering step D;step D;
finding out a predicted search path, then entering step E;step E;
loading data designated by the predicted search path in the search window from the external memory to the internal memory, then entering step F;step F;
executing a best matching algorithm (BMA) matching operation according to a BMA to find out a best matched block, then entering step G;step G;
determining whether the BMA matching operation has been executed to all of the current blocks having the same address, and if no, then entering step H, or otherwise if yes then entering step I;step H;
loading another current bock having the address, and returning back to step F;step I;
completing the motion estimation of the current blocks having the address, according to the BMA matching operation result of the same address, then entering step J;step J;
determining whether BMA matching operations of current blocks of all current block addresses have been completed, if no then entering step K, or otherwise if yes then entering step L;step K;
selecting another current block address, and returning back to step C;step L;
generating a motion estimation result, then entering step M; andstep M;
completing the motion estimation. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11)
-
Specification