HEVC CABAC için ikilileştirme modülü donanım mimarisi
Hardware implementation of CABAC binarizer for high efficiency video coding
Yazar: YÜCEL ÇETİN
Danışman: YRD. DOÇ. DR. ANIL ÇELEBİ
Kocaeli Üniversitesi / Fen Bilimleri Enstitüsü / Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2018
Konu: Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering

Özet:
Video teknolojilerine artan ilgiyle video kodlama ve sıkıştırma uygulamaları da geliştirilmektedir. HEVC'de CABAC, entropi kodlaması olarak kullanılan tek yöntemdir. CABAC'ın başlıca üç alt modülü vardır. Bunlar İkilileştirme Modülü, Bağlam Modelleyici ve İkili Aritmetik Kodlayıcıdır. İkilileştirme Modülü bir denetleyici modülü, tek formatlı modüller, birleştirilmiş format modülleri ve özel formatlı modüllerinden oluşmaktadır. Tek formatlı modüller FL (sabit uzunluklu), TR (kesik ikili) modülü, TU (kesik tekli) modülü ve EGk (k-inci mertebeden Golomb kodlama) modülüdür. Birleşik formatlı modüller, CALR (coeff_abs_level_remaining) ve QP Delta (cu_qp_delta_abs) modülünü içerir. Özel formatlı modüller, uzamsal tahminleme (intra_chrome_pred_mode) modülü, zamansal tahminleme (inter_pred_idc) modülü ve kısım (part_mode) modülünü içermektedir. İkilileştirme modülü için oluşturulan denetleyici, bütün bileşenleri bir araya getirerek, girişteki sözdizimi değerlerine bağlı olarak farklı bileşenleri kullanılmasını sağlamaktadır. Bu tez çalışmasında, ikilileştirme modülü ilk olarak MATLAB/Simulink'te gerçekleştirilmektedir. Ardından HEVC referans yazılımı (HM) ile karşılaştırılmaktadır. Karşılaştırmada elde edilen sonuçlar doğrulandıktan sonra önerilen donanım mimarisi Xilinx Zynq 7000 serisi ile oluşturulmuştur. Önerilen çalışma, HEVC'de bulunan tüm sözdizimi unsurları için çalışan verimli bir donanım mimarisi sunmaktadır. İkilileştirme modülüne ait önerilen donanım mimarisi literatürdeki diğer çalışmalara nazaran daha az kaynak kullanmaktadır. Donanım mimarisi sadece 7 mW güç tüketerek ITU standardı içerisinde bulunan bütün ikilileştirme modüllerini çalıştırabilmektedir.

Abstract:
Video coding and compression applications are being developed with increased interest in video technologies. In HEVC (High Efficiency Video Coding), CABAC (Context Adaptive Arithmetic Coding) is the only method that is employed as entropy coding. CABAC mainly has three sub-modules: Binarizer, Context Adaptive Modeler and Binary Arithmetic Coder. Binarizer itself consists of a controller module, single format modules, combined format modules and custom format modules. Single format module contains FL (fixed length binarization) module, TR (truncated Rice binarization) module, TU (truncated unary binarization) module and, EGk (k-th order exp-Golomb coding) module. Combined format module contains CALR (coeff_abs_level_remaining) module and QP Delta (cu_qp_delta_abs) module. Custom format module contains Intra Pred (intra_chrome_pred_mode) module, Inter Pred (inter_pred_idc) module and Part Mode (part_mode) module. The controller module for the binarizer is the central unit that combines all the components together and invokes different components depending on the syntax elements. The controller module created for the binarizer is a central unit that combines all the components and uses different components depending on the syntax elements in the input. In this thesis work, the binarizer was first implemented in MATLAB/Simulink. It is then compared with the HEVC reference software (HM). After confirming the results obtained in the comparison, the proposed hardware architecture was established with Xilinx Zynq 7000 series. The proposed work presents an efficient hardware architecture that works for all syntax elements found in the HEVC. The proposed hardware architecture of the binarizer module uses less hardware than the other studies in the literature. The hardware architecture consumes only 7 milliwatts of power and can operate all the binarizer modules within the ITU standard.