4K UHD급 H.264/AVC 복호화기를 위한 4×4 블록 병렬 보간 움직임보상기 아키텍처 설계 A Design of 4×4 Block Parallel Interpolation Motion Compensation Architecture for 4K UHD H.264/AVC Decoder원문보기
본 연구에서는 4K UHD($3840{\times}2160$) 영상을 실시간 복호화하기 위한 $4{\times}4$ 블록 병렬 보간 H.264/AVC 움직임보상기를 제안한다. 연산처리 성능을 향상시키기 위해 보간 연산을 $4{\times}4$ 블록 단위로 병렬화시켰으며, 병렬 보간 연산에서 필요한 메모리 대역폭을 확장하기 위해 $9{\times}9$개의 메모리 어레이를 가진 2D 캐쉬 버퍼 구조를 설계하였다. 그리고 2D 캐쉬 버퍼는 검색영역 간 재사용 기법을 적용하여 참조화소의 중복저장을 최소화하였으며, $4{\times}4$ 블록 병렬 보간 필터는 3단(수평 수직 1/2부화소, 대각선 1/2부화소, 1/4부화소) 평면 보간 연산 파이프라인 구조로 설계하여 연산회로를 고속화시켰다. 0.13um 공정에서 시뮬레이션한 결과, 161K게이트의 H.264/AVC 움직임보상기는 동작주파수 150MHz에서 4K UHD급 동영상을 초당 72프레임으로 실시간 처리하는 성능을 보였다.
본 연구에서는 4K UHD($3840{\times}2160$) 영상을 실시간 복호화하기 위한 $4{\times}4$ 블록 병렬 보간 H.264/AVC 움직임보상기를 제안한다. 연산처리 성능을 향상시키기 위해 보간 연산을 $4{\times}4$ 블록 단위로 병렬화시켰으며, 병렬 보간 연산에서 필요한 메모리 대역폭을 확장하기 위해 $9{\times}9$개의 메모리 어레이를 가진 2D 캐쉬 버퍼 구조를 설계하였다. 그리고 2D 캐쉬 버퍼는 검색영역 간 재사용 기법을 적용하여 참조화소의 중복저장을 최소화하였으며, $4{\times}4$ 블록 병렬 보간 필터는 3단(수평 수직 1/2부화소, 대각선 1/2부화소, 1/4부화소) 평면 보간 연산 파이프라인 구조로 설계하여 연산회로를 고속화시켰다. 0.13um 공정에서 시뮬레이션한 결과, 161K게이트의 H.264/AVC 움직임보상기는 동작주파수 150MHz에서 4K UHD급 동영상을 초당 72프레임으로 실시간 처리하는 성능을 보였다.
In this paper, we proposed a $4{\times}4$ block parallel architecture of interpolation for high-performance H.264/AVC Motion Compensation in 4K UHD($3840{\times}2160$) video real time processing. To improve throughput, we design $4{\times}4$ block parallel interpolat...
In this paper, we proposed a $4{\times}4$ block parallel architecture of interpolation for high-performance H.264/AVC Motion Compensation in 4K UHD($3840{\times}2160$) video real time processing. To improve throughput, we design $4{\times}4$ block parallel interpolation. For supplying the $9{\times}9$ reference data for interpolation, we design 2D cache buffer which consists of the $9{\times}9$ memory arrays. We minimize redundant storage of the reference pixel by applying the Search Area Stripe Reuse scheme(SASR), and implement high-speed plane interpolator with 3-stage pipeline(Horizontal Vertical 1/2 interpolation, Diagonal 1/2 interpolation, 1/4 interpolation). The proposed architecture was simulated in 0.13um standard cell library. The maximum operation frequency is 150MHz. The gate count is 161Kgates. The proposed H.264/AVC Motion Compensation can support 4K UHD at 72 frames per second by running at 150MHz.
In this paper, we proposed a $4{\times}4$ block parallel architecture of interpolation for high-performance H.264/AVC Motion Compensation in 4K UHD($3840{\times}2160$) video real time processing. To improve throughput, we design $4{\times}4$ block parallel interpolation. For supplying the $9{\times}9$ reference data for interpolation, we design 2D cache buffer which consists of the $9{\times}9$ memory arrays. We minimize redundant storage of the reference pixel by applying the Search Area Stripe Reuse scheme(SASR), and implement high-speed plane interpolator with 3-stage pipeline(Horizontal Vertical 1/2 interpolation, Diagonal 1/2 interpolation, 1/4 interpolation). The proposed architecture was simulated in 0.13um standard cell library. The maximum operation frequency is 150MHz. The gate count is 161Kgates. The proposed H.264/AVC Motion Compensation can support 4K UHD at 72 frames per second by running at 150MHz.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 연구에서는 4K UHD 영상에 대한 H.264/AVC 움직임보상을 실시간 처리하기 위해 4×4 블록 병렬 보간 필터 구조와 2D 캐쉬 버퍼 구조를 제안한다.
본 연구에서는 H.264 4×4 블록 병렬 움직임보상기를 제안하여 4K UHD 영상을 실시간 처리하는데 주파수를 낮추고 전력소모를 줄이고자 하였다.
제안 방법
1단계에서는 수평·수직 1/2부화소 보간을 위해 56개의 FIR 필터가, 2단계에서 대각선 1/2부화소 보간을 위해 16개의 FIR 필터가, 3단계에서는 1/4부화소 보간을 위해 16개의 Bilinear 필터가 평면 형태로 할당되어 파이프라인 동작으로 처리성능을 높이고자 하였다.
그리고 4×4 블록단위 보간 연산 구조에서 요구되는 참조 화소를 실시간으로 공급하기 위해 2D 캐쉬 버퍼 구조로 설계했고, 움직임 벡터에 따른 중복적인 참조메모리 검색을 최소화하기 위해 검색 영역 간 재사용 기법을 사용하였다.
또한 2D 캐쉬 버퍼는 4×4 블록단위 보간 연산에 사용되는 참조 화소(9×9 화소)를 공급하기 위해 병렬 출력이 가능한 메모리 어레이 구조로 설계되었다.
마지막 3단 평면 Bilinear 필터는 4×4어레이 구조로 Bilinear 필터 16개를 구성하여 앞 서 생성한 1/2화소들과 정수화소들을 입력받아 1/4화소들을 생성하도록 설계하였다.
본 연구에서는 보간 연산의 라인단위의 병렬화뿐만 아니라, 블록단위의 병렬처리를 할 수 있는 4×4블록크기의 병렬 보간 연산인 4×4블록 병렬보간 필터를 제안한다.
수평 1/2부화소를 생성할 때 사용한 참조 화소를 수직·대각선 1/2부화소를 생성할 때 재사용하여 중복연산 및 입력지연시간을 감소시켰으며, 또한 수평 1/2부화소 생성 결과를 대각선 1/2부화소 생성에 재사용하였다.
실제로 매크로블록 단위에 대해 표 1은 H.264의 가변 블록을 지원할 수 있는 규격의 참조화소의 입력량, 입력횟수 및 보간 연산의 연산기 개수, 연산횟수, 매크로블록당 처리량과 처리성능 비율을 병렬화 적용되지 않은 경우(표준안)과 적용된 경우(Sep. 1-D, 4×4블록)에 대해서 비교 분석하였다.
연산처리성능을 향상시키고자 보간 연산을 4×4 블록단위로 병렬화하여 매 사이클 마다 4×4 블록 보간 화소를 생성하며 4×4 블록단위 보간 연산구조에서 요구되는 참조 화소를 공급하기 위해 2D 캐쉬 버퍼를 제안하였고, 외부메모리에 대한 검색을 줄이고자 검색영역 간 재사용 기법을 사용하였다.
제안하는 4×4 블록 병렬 보간 필터는 4×1라인단위가 아닌 4×4블록단위로 보간 화소를 생성할 수 있도록 부화소를 동시에 보간하는 평면 보간 연산구조로 설계하였다.
제안하는 움직임보상은 부화소 보간 연산 단위를 4×4 블록화소 단위로 병렬 확장하여 연산처리성능을 높이고 보간 연산 과정에서 사용되는 참조화소들을 공유하여 메모리 검색량을 줄이고자 하였다.
제안하는 4×4 블록 병렬 보간 필터는 4×1라인단위가 아닌 4×4블록단위로 보간 화소를 생성할 수 있도록 부화소를 동시에 보간하는 평면 보간 연산구조로 설계하였다. 평면 보간 연산구조는 수평 및 수직 1/2부화소를 생성하는 1단 평면 FIR 필터, 대각선 1/2부화소를 생성하는 2단 평면 FIR 필터, 그리고 마지막 1/4부화소를 생성하는 3단 평면 Bilinear 필터의 3단 파이프라인 구조로 연산처리성능을 향상시켰다. 그리고 4×4 블록단위 보간 연산 구조에서 요구되는 참조 화소를 실시간으로 공급하기 위해 2D 캐쉬 버퍼 구조로 설계했고, 움직임 벡터에 따른 중복적인 참조메모리 검색을 최소화하기 위해 검색 영역 간 재사용 기법을 사용하였다.
데이터처리
제안된 4×4 블록 병렬 움직임보상기를 0.13um 공정에서 시뮬레이션하여 표 2에 기존 연구와 비교하였다.
이론/모형
2D 캐쉬 버퍼는 4×4 블록단위 보간 연산에 필요한 참조 화소(9×9 화소)를 공급하는 버퍼이며, 4×4 블록 병렬 보간 필터는 수평·수직·대각선 1/2부화소와 1/4부 화소를 생성하는 연산기이다. 2D 캐쉬 버퍼는 움직임 벡터에 따른 중복적인 참조메모리 검색을 최소화하기 위하여 검색영역 간 재사용 기법[11]을 사용한다. 검색영역 간재사용 기법은 이웃한 수평·수직 검색영역 간 중첩되는 부분을 재사용하기 위한 방법으로 외부메모리에 대한 중복검색을 1회로 감소시킬 수 있다.
성능/효과
그러나 인접한 4×4 블록의 참조화소들을 저장, 관리하고 연산결과를 동시에 제어하기 위한 연산회로의 복잡도로 인해 Separate 1-D FIR 보간 필터구조에 비해 면적이 2.7배로 늘어났으며, 4K UHD(3840×2160)를 실시간 처리하는데 동작주파수가 2배로 증가하여 전력소모가 커지는 문제점을 보이고 있다.
따라서 검색영역 간 재사용 기법을 사용하기 위해 2D 캐쉬 버퍼에 “Width×(M+N)” 크기의 참조 데이터를 저장하고, 매크로 블록에 따라 검색영역이 이동할 때마다 N×N만큼의 참조 데이터를 외부메모리로부터 2D 캐쉬 버퍼로 이동하면 외부 메모리의 검색을 최소로 줄일 수 있다.
따라서 제안된 4×4 블록 병렬 움직임보상기는 4K UHD 영상을 실시간 처리함은 물론, 동작주파수 또한 낮아 전력소모를 줄일 수 있다.
13um공정에서 시뮬레이션한 결과, 게이트 수는 161K게이트이며, 동작주파수는 150MHz이다. 이 같은 결과는 기존 연구들에 비해 1.4배의 면적이 증가하였으나, 연산처리성능은 7.6배 향상되어 4K UHD 영상을 72fps로 실시간 처리함을 보였다.
4×4블록 병렬보간 필터는 모든 부화소 보간 연산을 1회로 처리하여서 매크로 블록에서 단지 1,408의 연산량을 필요로 한다. 이는 표준안의 연산결과의 공유가 없을 때보다 처리성능 비율이 2.91이나 개선하였으며, Separated 1-D FIR필터보다 1.74이상 처리성능향상 효과를 보였다.
제안된 4×4 블록 병렬 보간 움직임보상기 구조를 0.13um공정에서 시뮬레이션한 결과, 게이트 수는 161K게이트이며, 동작주파수는 150MHz이다.
질의응답
핵심어
질문
논문에서 추출한 답변
2D 캐쉬 버퍼는 무엇이며, 어떤 기법을 사용하는가?
2D 캐쉬 버퍼는 4×4 블록단위 보간 연산에 필요한 참조 화소(9×9 화소)를 공급하는 버퍼이며, 움직임 벡터에 따른 중복적인 참조메모리 검색을 최소화하기 위하여 검색영역 간 재사용 기법을 사용한다. 검색영역 간 재사용 기법은 외부메모리에 대한 검색량을 줄이기 위해 현재의 검색영역과 이웃한 수평·수직의 검색영역과 중첩되는 부분을 미리 저장하여 다음 검색영역에서 재사용하는 방법이다.
H.264/AVC 복호화기의 움직임보상은 부호화 효율을 높이기 위해 무엇을 하는가?
H.264/AVC 복호화기의 움직임보상은 시간적 중복성을 복원하는 기술로써 부호화 효율을 높이기 위해 가변블록크기와 다양한 참조 프레임, 1/4 화소의 정밀 보간을 지원한다. 다양한 참조 프레임과 가변블록크기를 적용하기 위해 메모리 검색량이 늘어나 움직임보상이 H.
UHD와 같은 영상장치들은 어떤 기술을 필요로 하는가?
현재 FHD(Full High Definition)를 넘어 UHD(Ultra High Definition)급 초고해상도의 영상 장치들이 시장에 등장하고 있다. 이러한 초고해상도 영상 장치들은 많은 연산량과 높은 데이터 대역폭의 실시간 처리를 요구하여 뛰어난 압축성능을 가진 영상 압축기술을 필요로 한다. 최신 영상압축 기술인 H.
참고문헌 (11)
Xue Quan, Liu Jilin, "H.264/AVC Baseline Profile Decoder Optimization on Independent Platform", WiCOM, 2005
Shih-Hao Wang, Wen-Hsiao Peng, Yuwen He, Guan-Yi Lin, Chen-Yi Lin, Shih-Chien Chang, Chung-Neng Wang, and Tihao Chiang, "A Platform-Based MPEG-4 Advanced Video Coding(AVC) Decoder with Block Level Pipelining", PCM, 2003.
Yu Li, Yanmei Qu, Yun He, "Memory Cache Based Motion compensation Architecture for HDTV H.264/AVC Decoder", Department of Electronic Engineering, Tsinghua University, 2007.
Deng Lei, Gao Wen Hu MingZeng, Ji Zhen Zhou, "An Efficient VLSI Architecture for MC interpolation in AVC Video coding", ESA/VLSI, 2004.
Ronggang Wang, Mo Li, Jintao Li, Yongdong Zhang, "High Throughput and Low Memory Access Sub-pixel Interpolation Architecture for H.264/AVC HDTV Decoder", IEEE Transactions on Consumer Electronics, 2005.
Sheng Zen Wang, "A new motion compensation design for H.264/AVC decoder ", ISCAS, 2005.
Jia-Wei Chen, Chien-Chang Lin, Jiun-In Guo, Jinn-Shyan Wang, "Low Complexity Architecture Design of H.264 Predictive Pixel Compensator for HDTV Application", IEEE ICASSP 2006 14-19 May 2006.
Ping Chao, Youn-Long Lin, "A motion compensation system with a high efficiency reference frame pre-fetch scheme for QFHD H.264/AVC decoding", ISCAS 2008, pp : 256-259
이찬호, "H.264 복호기를 위한 효율적인 예측 연산기 설계", 대한전자공학회, 전자공학회논문지-SD 46(7), 2009.7, pp : 47-52
Jen-Chieh Tuan, Tian-Sheuan Chang, Chein-Wei Jen, "On the data reuse and memory bandwidth analysis for full-search block-matching VLSI architecture", IEEE Transactions on Circuits and Systems for Video Technology. Jan 2002 Vol.12 pp : 61-72
※ AI-Helper는 부적절한 답변을 할 수 있습니다.