Hardware bidirectional real time motion estimator on a Xilinx Virtex II Pro FPGA
Independent thesis Basic level (professional degree), 20 points / 30 hpStudent thesis
This thesis describes the implementation of a real-time, full search, 16x16 bidirectional motion estimation at 24 frames per second with the record performance of 155 Gop/s (1538 ops/pixel) at a high clock rate of 125 MHz. The core of bidirectional motion estimation uses close to 100% FPGA resources with 7 Gbit/s bandwidth to external memory. The architecture allows extremely controlled, macro level floor-planning with parameterized block size, image size, placement coordinates and data words length. The FPGA chip is part of the board that was developed at the Institute of Computer & Communication Networking Engineering, Technical University Braunschweig Germany, in collaboration with Grass Valley Germany in the FlexFilm research project. The goal of the project was to develop hardware and programming methodologies for real-time digital film image processing. Motion estimation core uses FlexWAFE reconfigurable architecture where FPGAs are configured using macro components that consist of weakly programmable address generation units and data stream processing units. Bidirectional motion estimation uses two cores of motion estimation engine (MeEngine) forming main data processing unit for backward and forward motion vectors. The building block of the core of motion estimation is an RPM-macro which represents one processing element and performs 10-bit difference, a comparison, and 19-bit accumulation on the input pixel streams. In order to maximize the throughput between elements, the processing element is replicated and precisely placed side-by-side by using four hierarchal levels, where each level is a very compact entity with its own local control and placement methodology. The achieved speed was further improved by regularly inserting pipeline stages in the processing chain.
Place, publisher, year, edition, pages
Institutionen för systemteknik , 2006. , 105 p.
Bidirectional motion estimation, FPGA, Relationally placed macro, CLB, slice, tristate buffers, comparator, pipelining, search upper, search lower, VHDL, Xilinx, block matching, MeEngine, LMC, CMC., sum of absolute differences, systolic array, SARow, PE2X8, MeProC, 125 MHz, Virtex II Pro
Other Electrical Engineering, Electronic Engineering, Information Engineering
IdentifiersURN: urn:nbn:se:liu:diva-6355ISRN: LiTH-ISY-EX--06/3758--SEOAI: oai:DiVA.org:liu-6355DiVA: diva2:21780