Motion estimation is the most compressive step in the video sequence coding, while it requires the most computations. The block matching method has been adopted for the motion estimation in today's popular video compression standard due to computational simplicity with favorable performance. Both on the algorithmic and architectural level, numerous efforts have been devoted for the cost-effective VLSI realization of the video compressor.
In this dissertation, we discuss efficient block matching motion estimation techniques and cost-effective VLSI realization methods considering the trade-off between chip cost and performance demand.
We develop a novel hierarchical-search block matching motion estimation algorithm which adaptively selects the initial search level based on the spatial complexity of the matching block. It relies on simple computations of pixel intensity variations in the current macroblock using spatial filters. We demonstrate its effectiveness in two aspects: the performance and the computational cost. A VLSI realization of this algorithm including a half-pel motion estimator and a motion compensation unit is also addressed. The proposed method is highly efficient in enhancing the ratio of the performance improvement to the computation cost.
We present efficient VLSI architectures for the two types of array block matching processor. First, for the systolic array type, we develop a robust architecture which is capable of managing the variable size matching block and miscellaneous motion vector prediction modes of MPEG. For enhancing the computation speed and hardware resource utilization, the basic processing element is separated into two functional units: difference unit and accumulation unit. A fast accumulation tree composed of carry-save adders and an ACS (add-compare-select) style comparator are devised to further improve the hardware efficiency.
We also develop an area-efficient processing element which is well suited to the search-location-based block matching processor architecture. The proposed processing element has a tree configuration employing multi-input carry-save adders. The area efficiency is demonstrated by standard cell based prototype implementation.
오늘날 영상 매재체를 기반으로 하는 멀티미디어 시스템의 보편적 사용 추세에 따라 정보량이 많은 동영상 데이터의 압축 기법과 VLSI 하드웨어의 구현 기술에 대한 필요성이 날로 증가하고 있다. 제한된 통신 채널 대역과 저장 매체를 통해 대량의 동영상 데이터를 전송/저장하기 위한 비디오 코딩 시스템에서, 움직임 추정은 가장 높은 압축률을 실현시켜 주는 동시에 가장 많은 계산량을 필요로 하며 특히 실시간 재생과 통신을 위해선 하드웨어로의 구현이 필수적이다.
본 논문에서는 현재 국제 표준으로 자리잡은 MPEG 기반의 비디오 코딩 시스템에서, 응용 분야가 요구하는 성능을 만족시키는 동시에 계산량을 감소시키는 효율적인 움직임 추정 기법과 고성능/저가격 하드웨어 구현에 적합한 VLSI구조를 다루고 있다
2장에서는 영상데이터의 공간적 복잡도에 따라 계산량을 효과적으로 감소시킬 수 있는 다해상도 계층적 블록 정합 움직임 추정 기법을 제안하고 이를 기반으로 하는 효율적인 VLSI 구조를 구현하였다. 복잡한 해석 기법 대신 계산이 간소한 공간 필터를 이용하여 영상의 공간적 복잡도를 측정하고, 이에 따라 계층적 움직임 추정상의 초기 탐색 단계를 결정한다. 보다 정확한 공간 복잡도의 측정을 위해 사용되는 해석적 기법은 블록 정합에 소요되는 계산량에 상당하는 추가 부담이 따를 수 있으나, 제안된 기법은 공간적 복잡도가 고대역 주파수의 빈도와 높은 상관성을 가진다는 사실, 고대역 및 저대역 공간 필터간의 상호 상관 관계, 공간적 평균값을 구하는 과정이 저대역 필터와 같은 효과를 가진다는 사실 등에 착안하여 설계되었다. 제안된 기법은 광범위한 실험을 통해 계산량과 성능면에서 효과적임을 입증하였다. 하드웨어 구현에 있어, 더블 뱅크 메모리 구조와 이와 연계한 추립 회로를 고안하여 내부 메모리의 양을 줄이고, 또한 프레임/필드 예측 방범 모두에 적합하도록 연산 회로 배열 구조를 채용하여 VLSI구조의 효율성을 증대하였다.
3장에서는 블록 정합 알고리즘 내부의 연산 루프의 계산 순서에 따라 구분되는 두 가지 유형의 배열 프로세서에 대해 각각 면적과 속도면에서 유리한 하드웨어 구조를 제안하였다. 먼저, 정합될 블록 위치에 연산 요소가 대응되는 시스톨릭 배열 구조에 대해 MPEC-2,4/H.263등에 쓰이는 다양한 움직임 벡터 예측 모드 및 가변적 크기의 블록 정합에 적합한 하드웨어 구조를 제안하였다. 제안된 구조는 추가적인 하드웨어의 부담 없이 요구된 모든 기능을 수행하며, 고속/저면적을 위해 지연시간의 균형을 고려한 뺄셈 회로와 계층화된 누적 회로, 비교 연산회로를 고안하여 설계하였 다. 0.6 마이크론 CMOS 공정의 표준 쎌을 이용해 설계된 VLSI 하드웨어는 기존 방식의 구조에 비해 30% 정도의 면적 감소와 40% 정도의 동작 속도 개선을 보여준다.
3장에서는 또한, 탐색 영역 위치에 연산 요소가 대응되는 데이터 브로드캐스팅 배열 구조에 대해 면적을 효과적으로 줄일 수 있는 연산 요소 로직과 배열 구조를 제안하였다. 데이터 브로드캐스팅 구조에서는 시스톨릭 배열 구조에서와 같은 게층적 블록 정합 연산 과정이 불가능하므로, 캐리 지연이 없고 짝수개의 입력단을 갖는 덧셈 회로를 채용한 트리 형태의 배열 구조로 하드웨어를 구성하였다. 제안된 구조는 에러 누적 과정이 원래 공식에서 다소 변형된 형태를 취하고 있으나, 이에 의한 성능 저하는 무시할 정도이며 실험을 통해 이를 확인하였다. 0.6 마이크론 CMOS 공정의 표준 쎌을 이용하여 구현한 연산 요소 로직과 배열 구조는 같은 동작속도에서 기존의 구조에 비해 약30%의 면적 절감 효과를 가져온다.