[ieee 2011 ieee 19th signal processing and communications applications conference (siu) - antalya,...

4
H.264 Blok Giderici Filtre Donanımının İşlem Miktarını Ve Enerji Kullanımını Azaltan Teknik A Computation and Energy Reduction Technique for H.264 Deblocking Filter Hardware Yusuf Adıbelli, Mustafa Parlak, Ilker Hamzaoglu Mühendislik ve Doğa Bilimleri Fakültesi Sabancı Üniversitesi, Istanbul {yadibelli,mparlak,hamzaoglu}@sabanciuniv.edu ÖZETÇE Bu bildiride, piksellerin eşitliğine bakarak H.264 Blok Giderici Filtre (BGF) algoritmasının işlem miktarını ve dolayısıyla H.264 BGF donanımının enerji kullanımını azaltan bir teknik önerdik. Önerilen piksellerin eşitliğine bakarak işlem miktarını azaltan (PEİMA) teknik, BGF denklemlerinde filtrelenecek kenar piksellerinin eşit olup olmadıklarına bakmaktadır. Eğer bu pikseller birbirine eşit ise denklemlerin hesaplanması basitleşmektedir. PEİMA tekniği, çok az miktarda karşılaştırma işlemi yaparak, H.264 BGF algoritmasında yapılan toplama ve kaydırma işlemlerinin miktarını, sırasıyla %43 ve %55 oranında azaltmaktadır. PEİMA tekniği PSNR kaybına neden olmamaktadır. Ayrıca önerilen tekniği içeren bir H.264 BGF donanımını Verilog HDL ile gerçekleştirdik. PEİMA tekniği bu donanımın enerji kullanımını %35 oranında azalttı. ABSTRACT In this paper, we propose pixel equality based technique to reduce the amount of computations performed by H.264 Deblocking Filter (DBF) algorithm and therefore reduce the energy consumption of H.264 DBF hardware. This technique exploits pixel equality in a video frame by performing a small number of comparisons among edge pixels used in DBF equations before the filtering. If the input pixels are equal, DBF equations simplify significantly. The proposed technique reduces the amount of addition and shift operations performed by H.264 DBF algorithm up to 43% and 55% respectively with a small comparison overhead. The pixel equality based technique does not affect PSNR. We also implemented an efficient H.264 DBF hardware including the proposed technique using Verilog HDL. The proposed pixel equality based technique reduced the energy consumption of this hardware up to 35% . 1. GİRİŞ Video sıkıştırma günümüzde birçok uygulamada kullanılmaktadır. Son zamanlarda, önceki video sıkıştırma standartlarından çok daha iyi sıkıştırma verimliliğine sahip yeni bir uluslararası video sıkıştırma standardı, H.264, geliştirildi. H.264 standardındaki sıkıştırma verimliliği birden fazla yeni kodlama tekniğinin kullanılmasından kaynaklanmaktadır. Bu tekniklerden bir tanesi H.264 standardının temel profilinde kullanılan uyarlanır Blok Giderici Filtre (BGF) algoritmasıdır [1, 2, 3]. BGF her geri çatılmış 16x16 makrobloğa (MB) ters nicemleme ve ters dönüşümden sonra uygulanır. BGF geri çatılmış bir çerçevenin görsel kalitesini, çerçevedeki görselliği bozan bloksal bozulumları ve çerçevedeki nicemleme ve hareket denkleştirmeli öngörüden kaynaklanan süreksizlikleri azaltarak artırır. Ayrıca filtrelenen çerçeve bir sonraki çerçevenin hareket tahmini için referans çerçeve olarak kullanılacağı için, BGF sıkıştırma verimliliğini de artırır [3]. H.264 standardında kullanılan BGF algoritması uyarlanır bir algoritmadır ve hesaplama karmaşıklığı daha önceki video sıkıştırma standartlarında kullanılan BGF algoritmalarının hesaplama karmaşıklıklarından daha fazladır. Bir H.264 video kodçözücüsünün hesaplama karmaşıklığının 1/3’ü H.264 BGF algoritmasının hesaplama karmaşıklığıdır [3]. Bu nedenle, bu bildiride, piksellerin eşitliğine bakarak H.264 BGF algoritmasının işlem miktarını ve dolayısıyla H.264 BGF donanımının enerji kullanımını azaltan bir teknik önerdik. H.264 çerçeve içi öngörü algoritmasının işlem miktarını ve dolayısıyla H.264 çerçeve içi donanımının güç kullanımını önemli ölçüde azaltan benzer bir tekniği [4]’te önerdik. Bu bildiride önerilen piksellerin eşitliğine bakarak işlem miktarını azaltan (PEİMA) teknik, BGF denklemlerinde kullanılan kenar piksellerindeki uzamsal artıklığı kullanarak H.264 BGF algoritmasındaki gereksiz hesaplamaların yapılmamasını sağlamakta ve dolayısı ile H.264 BGF donanımının enerji kullanımı önemli miktarda azaltmaktadır. PEİMA tekniği, filtreleme işleminden önce filtrelenecek kenar piksellerin eşit olup olmadıklarına bakmaktadır. Eğer bu pikseller birbirine eşit ise denklemlerin hesaplanması önemli ölçüde basitleşmektedir. PEİMA tekniği PSNR kaybına neden olmamaktadır. H.264 JM 14.0 referans yazılımı [5] kullanılarak elde edilen sonuçlara göre, önerilen PEİMA tekniği çok az miktarda karşılaştırma işlemi yaparak H.264 BGF algoritmasında bir luma çerçevesi için yapılan toplama ve kaydırma işlemlerinin miktarını sırası ile %43 ve %55 oranında azaltmaktadır. PEİMA tekniği BS, α ve β değerlerine bağlı olarak bir kenar için en az 3, en fazla 7 karşılaştırma yapmaktadır. [6]’da düşük güç kullanımlı bir H.264 BGF donanımı önerdik. Bu bildiride, önerilen PEİMA tekniğini bu H.264 BGF donanımına uyguladık. Bu donanımı Verilog Donanım Tanımlama Dili (HDL) ile gerçekleştirdik ve Mentor Graphics ModelSim SE yazılımı ile simülasyonlar yaparak doğruladık. Daha sonra Verilog kodlarını Synopsys Synplify Pro yazılımını kullanarak Xilinx Virtex4 FPGA’ine sentezledik ve Xilinx ISE 11.5 yazılımını kullanarak aynı FPGA’e 98 MHz hızında çalışacak şekilde yerleştirdik. Bu H.264 BGF donanımının Xilinx Virtex4 FPGA’indeki güç kullanımını Xilinx XPower yazılımını kullanarak belirledik. Önerilen PEİMA tekniği bu H.264 BGF donanımının enerji kullanımını %35 oranında azalttı. 2011 IEEE 19th Signal Processing and Communications Applications Conference (SIU 2011) 210 978-1-4577-0463-511/11/$26.00 ©2011 IEEE

Upload: ilker

Post on 16-Oct-2016

214 views

Category:

Documents


2 download

TRANSCRIPT

H.264 Blok Giderici Filtre Donanımının İşlem Miktarını Ve Enerji Kullanımını Azaltan Teknik

A Computation and Energy Reduction Technique for H.264 Deblocking Filter Hardware

Yusuf Adıbelli, Mustafa Parlak, Ilker Hamzaoglu

Mühendislik ve Doğa Bilimleri Fakültesi Sabancı Üniversitesi, Istanbul

{yadibelli,mparlak,hamzaoglu}@sabanciuniv.edu

ÖZETÇE

Bu bildiride, piksellerin eşitliğine bakarak H.264 Blok Giderici Filtre (BGF) algoritmasının işlem miktarını ve dolayısıyla H.264 BGF donanımının enerji kullanımını azaltan bir teknik önerdik. Önerilen piksellerin eşitliğine bakarak işlem miktarını azaltan (PEİMA) teknik, BGF denklemlerinde filtrelenecek kenar piksellerinin eşit olup olmadıklarına bakmaktadır. Eğer bu pikseller birbirine eşit ise denklemlerin hesaplanması basitleşmektedir. PEİMA tekniği, çok az miktarda karşılaştırma işlemi yaparak, H.264 BGF algoritmasında yapılan toplama ve kaydırma işlemlerinin miktarını, sırasıyla %43 ve %55 oranında azaltmaktadır. PEİMA tekniği PSNR kaybına neden olmamaktadır. Ayrıca önerilen tekniği içeren bir H.264 BGF donanımını Verilog HDL ile gerçekleştirdik. PEİMA tekniği bu donanımın enerji kullanımını %35 oranında azalttı.

ABSTRACT In this paper, we propose pixel equality based technique to reduce the amount of computations performed by H.264 Deblocking Filter (DBF) algorithm and therefore reduce the energy consumption of H.264 DBF hardware. This technique exploits pixel equality in a video frame by performing a small number of comparisons among edge pixels used in DBF equations before the filtering. If the input pixels are equal, DBF equations simplify significantly. The proposed technique reduces the amount of addition and shift operations performed by H.264 DBF algorithm up to 43% and 55% respectively with a small comparison overhead. The pixel equality based technique does not affect PSNR. We also implemented an efficient H.264 DBF hardware including the proposed technique using Verilog HDL. The proposed pixel equality based technique reduced the energy consumption of this hardware up to 35% .

1. GİRİŞ Video sıkıştırma günümüzde birçok uygulamada kullanılmaktadır. Son zamanlarda, önceki video sıkıştırma standartlarından çok daha iyi sıkıştırma verimliliğine sahip yeni bir uluslararası video sıkıştırma standardı, H.264, geliştirildi. H.264 standardındaki sıkıştırma verimliliği birden fazla yeni kodlama tekniğinin kullanılmasından kaynaklanmaktadır. Bu tekniklerden bir tanesi H.264 standardının temel profilinde kullanılan uyarlanır Blok Giderici Filtre (BGF) algoritmasıdır [1, 2, 3]. BGF her geri çatılmış 16x16 makrobloğa (MB) ters nicemleme ve ters dönüşümden sonra uygulanır. BGF geri çatılmış bir çerçevenin görsel kalitesini, çerçevedeki görselliği bozan

bloksal bozulumları ve çerçevedeki nicemleme ve hareket denkleştirmeli öngörüden kaynaklanan süreksizlikleri azaltarak artırır. Ayrıca filtrelenen çerçeve bir sonraki çerçevenin hareket tahmini için referans çerçeve olarak kullanılacağı için, BGF sıkıştırma verimliliğini de artırır [3].

H.264 standardında kullanılan BGF algoritması uyarlanır bir algoritmadır ve hesaplama karmaşıklığı daha önceki video sıkıştırma standartlarında kullanılan BGF algoritmalarının hesaplama karmaşıklıklarından daha fazladır. Bir H.264 video kodçözücüsünün hesaplama karmaşıklığının 1/3’ü H.264 BGF algoritmasının hesaplama karmaşıklığıdır [3].

Bu nedenle, bu bildiride, piksellerin eşitliğine bakarak H.264 BGF algoritmasının işlem miktarını ve dolayısıyla H.264 BGF donanımının enerji kullanımını azaltan bir teknik önerdik. H.264 çerçeve içi öngörü algoritmasının işlem miktarını ve dolayısıyla H.264 çerçeve içi donanımının güç kullanımını önemli ölçüde azaltan benzer bir tekniği [4]’te önerdik.

Bu bildiride önerilen piksellerin eşitliğine bakarak işlem miktarını azaltan (PEİMA) teknik, BGF denklemlerinde kullanılan kenar piksellerindeki uzamsal artıklığı kullanarak H.264 BGF algoritmasındaki gereksiz hesaplamaların yapılmamasını sağlamakta ve dolayısı ile H.264 BGF donanımının enerji kullanımı önemli miktarda azaltmaktadır. PEİMA tekniği, filtreleme işleminden önce filtrelenecek kenar piksellerin eşit olup olmadıklarına bakmaktadır. Eğer bu pikseller birbirine eşit ise denklemlerin hesaplanması önemli ölçüde basitleşmektedir. PEİMA tekniği PSNR kaybına neden olmamaktadır.

H.264 JM 14.0 referans yazılımı [5] kullanılarak elde edilen sonuçlara göre, önerilen PEİMA tekniği çok az miktarda karşılaştırma işlemi yaparak H.264 BGF algoritmasında bir luma çerçevesi için yapılan toplama ve kaydırma işlemlerinin miktarını sırası ile %43 ve %55 oranında azaltmaktadır. PEİMA tekniği BS, α ve β değerlerine bağlı olarak bir kenar için en az 3, en fazla 7 karşılaştırma yapmaktadır.

[6]’da düşük güç kullanımlı bir H.264 BGF donanımı önerdik. Bu bildiride, önerilen PEİMA tekniğini bu H.264 BGF donanımına uyguladık. Bu donanımı Verilog Donanım Tanımlama Dili (HDL) ile gerçekleştirdik ve Mentor Graphics ModelSim SE yazılımı ile simülasyonlar yaparak doğruladık. Daha sonra Verilog kodlarını Synopsys Synplify Pro yazılımını kullanarak Xilinx Virtex4 FPGA’ine sentezledik ve Xilinx ISE 11.5 yazılımını kullanarak aynı FPGA’e 98 MHz hızında çalışacak şekilde yerleştirdik. Bu H.264 BGF donanımının Xilinx Virtex4 FPGA’indeki güç kullanımını Xilinx XPower yazılımını kullanarak belirledik. Önerilen PEİMA tekniği bu H.264 BGF donanımının enerji kullanımını %35 oranında azalttı.

2011 IEEE 19th Signal Processing and Communications Applications Conference (SIU 2011)

210978-1-4577-0463-511/11/$26.00 ©2011 IEEE

Şekil 1: H.264 Blok Giderici Filtre Algoritması

Literatürde H.264 uyarlanır BGF algoritmasını gerçekleştiren gerçek zamanlı donanımlar vardır [7, 8, 9, 10]. [7, 8]’de bitirilen iş oranını artırmak için farklı bellek organizasyonları önerilmiştir. [9]’da boruhatlı verimli bir donanım önerilmiştir. PEİMA tekniği bu BGF donanımlarında da kullanılabilir. [10]’da saat kapılama tekniği uygulanmış boruhatlı bir BGF donanımı önerilmiştir. PEİMA tekniği bu donanımın ön-hesaplama aşamasında güç tüketimini azaltmak için kullanılabilir.

2. H.264 BLOK GİDERİCİ FİLTRE

ALGORİTMASI H.264 uyarlanır BGF algoritması bir MB’deki bütün 4x4

luma ve chroma bloklarının bütün kenarlarına H.264 standardında belirtilen sıra ile uygulanır [1]. Dikey kenarlar yatay kenarlardan önce filtrelenir. Filtreleme birimi adını verdiğimiz dikey/yatay bir kenarın bir satırı/sütunu Şekil 1’de gösterilmiştir [3]. Bir 4x4 bloğun bir kenarının filtrelenip filtrelenmeyeceği ve filtrelemenin kuvveti bir çok koşula bağlıdır. Bu koşulların sonuçlarına göre bir kenarın her iki tarafındaki 3 pikselin değerleri değişebilir. Şekil 1’de görüldüğü gibi Sınır Kuvvetliliği (BS), α, β ve piksel değerlerine bağlı olarak BGF algoritması 8 farklı kipe ayrılmaktadır. 4x4 blokların kodlama kiplerine ve kodlama durumlarına bağlı olarak her kenara bir BS değeri verilir. Bir kenarın filtrelenme kuvveti bu kenarın BS değerine bağlıdır. BS değeri 0 olan kenarlar filtrelenmezler. BS değeri 4 olan kenarlar ise en kuvvetli şekilde filtrelenirler.

3. ÖNERİLEN İŞLEM MİKTARINI VE ENERJİ KULANIMINI AZALTAN TEKNİK

H.264 BGF algoritması, Şekil 1’de görüldüğü gibi, BS, α, β ve piksel değerlerine bağlı olarak 8 farklı kipten birindeki filtreleme denklemlerini kullanır. Bu 8 kipin kullanıldığı durumlar ve bu kiplerin denklemlerinde kullanılan pikseller

Tablo 1’de gösterilmiştir. Şekil 1’de görüldüğü gibi H.264 BGF algoritması toplama ve kaydırma işlemleri yapılarak gerçeklenebilir.

PEİMA tekniği filtreleme işleminden önce filtrelenecek dikey/yatay kenarın bütün veya bazı piksellerinin eşit olup olmadıklarına bakar. Eğer bu piksellerin hepsi veya bazıları eşit ise, H.264 BGF denklemlerinin hesaplanması önemli ölçüde basitleşmekte ve denklemler için gerekli olan işlemlerin yapılmasına gerek kalmamaktadır. Örneğin, Kip 6’da kullanılan filtreleme denklemleri Tablo 2’de gösterilmiştir. Eğer bu denklemlerde kullanılan piksellerin hepsi eşitse Δ0, Δp1 ve Δq1 değerleri sıfır olmakta ve bu denklemlerdeki işlemlerin hiçbirini yapmaya gerek kalmamaktadır. Şekil 1’de görüldüğü gibi H.264 BGF algoritmasında bir

kenarın filtrelenip filtrelenmeyeceğinin ve filtrelemenin kuvvetinin belirlenmesi için (1)-(5)’deki 5 çıkarma işlemi yapılmaktadır. İki piksel eşitse farkları sıfır olacağı için bu çıkarma işlemlerinin sonuçlarının sıfıra eşit olup olmadığını kontrol ederek pikselleri karşılaştırmadan eşit olup olmadıkları belirlenebilir. Örneğin, (1)-(5)’deki çıkarma işlemlerinin hepsinin sonuçları sıfıra eşitse p2, p1, p0, q0, q1, q2 pikselleri birbirlerine eşit demektir (p2=p1=p0=q0=q1=q2). (1), (2) ve (4)’deki çıkarma işlemlerinin sonuçları sıfıra eşitse p2, p1, p0, q0 pikselleri birbirlerine eşit demektir (p2=p1=p0=q0).

Tablo 1: BGF Kipleri

BS |p2-p0|<β |q2-q0|<β Filtreleme

Denklemlerinde Kullanılan Pikseller

Kip

BS=

4 Yanlış Yanlış p1, p0, q0, q1 1 Yanlış Doğru p1, p0, q0, q1, q2, q3 3Doğru Yanlış p3, p2, p1, p0, q0, q1 5Doğru Doğru p3, p2, p1, p0, q0, q1, q2 7

4>B

S>0 Yanlış Yanlış p1, p0, q0, q1 0

Yanlış Doğru p1, p0, q0, q1, q2 2Doğru Yanlış p2, p1, p0, q0, q1 4Doğru Doğru p2, p1, p0, q0, q1, q2 6

2011 IEEE 19th Signal Processing and Communications Applications Conference (SIU 2011)

211

p0 – q0 (1) p1 – p0 (2) q1 – q0 (3) p2 – p0 (4) q2 – q0 (5)

Tablo 2: Kip 6’da Kullanılan Denklemler ve Eşitlik

Durumundaki Basitleşmiş Halleri

Kip 6’da Kullanılan Denklemler

p2=p1=p0=q0=q1=q2 Durumunda

Denklemlerin Basitleşmiş Halleri

p'0 = p0+Δ0 p'0 = p0 q'0 = q0-Δ0 q'0 = q0 p'1 = p1+Δp1 p'1 = p1 q'1 = q1+Δq1 q'1 = q1 Δ0i = (4(q0-p0)+(p1-q1)+4)>>3 Δ0i = 0 Δ0 = Min(Max(-c0, Δ0i),c0) Δ0 = 0 Δp1i = (p2+((p0+q0+1)>>1)-2p1)>>1 Δp1i = 0 Δp1 = Min(Max(-c1, Δp1i),c1) Δp1 = 0 Δq1i = (q2+((p0+q0+1)>>1)-2q1)>>1 Δq1i = 0 Δq1 = Min(Max(-c1, Δq1i),c1) Δq1 = 0

Tablo 3: Kip 6’da Yapılan İşlem Miktarları

Orjinal p2=p1=p0=q0=q1=q2

Toplama Kaydırma Toplama Kaydırma CB 5 0 5 0Δoi 4 2 0 0Δp1i 4 3 0 0Δq1i 4 3 0 0p'0, q'0, p'1, q'1 4 0 0 0c0 1 0 0 0Toplam 22 8 5 0

Tablo 4: Bütün Kiplerde Yapılan İşlem Miktarları

Orjinal PEİMA

Toplama Kaydırma Toplama Kaydırma Kip 0 11 2 5 0Kip 1 11 4 5 0Kip 2 17 5 5 0Kip 3 16 8 5 0Kip 4 17 5 5 0Kip 5 16 8 5 0Kip 6 22 8 5 0Kip 7 22 11 5 0

Tablo 5: Filtrelenen Filtreleme Birimlerinin ve Bunların Eşit

Piksellere Sahip Olanlarının Miktarları LUMA CHROMA

NP Toplam Eşit Toplam Eşit

# # % # # %

FM 28 37902 4767 12.6 24197 12497 51.7

35 42334 8365 19.8 24542 16370 66.742 45584 11666 25.6 24652 16613 67.4

AK

28 42716 12515 29.3 23554 12624 53.635 45057 15967 35.4 23764 13932 58.642 47243 18505 39.2 23986 16126 67.2

M&

D 28 40952 12694 31.0 24574 12517 50.9

35 45658 15424 33.8 24704 15500 62.742 48231 18229 37.8 24704 17077 69.1

ICE

28 40842 17573 43.0 24277 17018 70.135 42653 21862 51.3 24404 17469 71.642 44926 24922 55.5 24546 20910 85.2

Filtreleme denklemlerinde yapılan işlem miktarlarındaki

azalma BGF kipine ve piksellerin eşitliğine bağlı olarak değişmektedir. Her BGF kipinde yapılan toplama ve kaydırma işlem miktarlarını ve kiplerin denklemlerinde kullanılan pikseller eşit olduğunda yapılan toplama ve kaydırma işlem miktarlarını hesapladık. Kip 6’da yapılan işlem miktarları ve bütün kiplerde yapılan işlem miktarları sırasıyla Tablo 3 ve Tablo 4’te gösterilmiştir. Tablo 3’te CB ile başlayan satırda filtreleme işlemleri başlamadan önce yapılan çıkarma işlemlerinin miktarları gösterilmektedir.

Bir video çerçevesinde eşit piksellere sahip filtreleme birimlerinin miktarı çerçeveden çerçeveye değişir. Bu nedenle H.264 JM 14.0 referans yazılımını kullanarak CIF (352x288) boyutundaki Foreman, Akiyo, Mother&Daughter ve Ice videolarının birer çerçevelerinde 28, 35 ve 42 nicemleme parametre (NP) değerlerinde eşit piksellere sahip filtreleme birimlerinin miktarlarını belirledik ve Tablo 5’te gösterdik. Bir luma çerçevesinde toplam 50048 ve chroma çerçevesinde toplam 24704 filtreleme birimi vardır. Tablo 5’te Toplam sütunu filtrelenme koşullarına bağlı olarak toplam filtrelenen filtreleme birimlerinin miktarını göstermektedir. Eşit sütunu ise bu filtreleme birimlerinin eşit piksellere sahip olanlarının miktarını göstermektedir. Eşit pikselli filtreleme birimlerinin oranı luma çerçevelerinde %12 - %55 arasında, chroma çerçevelerinde ise %51 - %85 arasındadır. Bu oranlar NP değeriyle doğru orantılıdır.

PEİMA tekniğinin Foreman, Akiyo, Mother&Daughter ve Ice videolarının birer çerçevelerinde 28, 35 ve 42 NP değerlerinde H.264 BGF algoritmasında yapılan işlem miktarlarında sağladığı azalmaları Tablo 4 ve 5’teki bilgileri kullanarak hesapladık ve Tablo 6’da gösterdik. Toplama ve kaydırma işlem miktarlarındaki azalmaların oranı sırasıyla luma çerçevelerinde %10 - %43 ve %14 - %55, chroma çerçevelerinde %28 - %46 ve %50 - %83 arasındadır. Bununla birlikte PEİMA tekniği filtreleme işleminden önce birkaç çıkarma işleminin sonucunun sıfıra eşit olup olmadığını kontrol etmektedir. Toplama işlemi miktarındaki azalmanın ortalama %6’sı oranındaki karşılaştırma işlemi maliyeti, sıfırla karşılaştırma işlemi donanımda çok kolay gerçeklendiği için oldukça azdır.

4. ÖNERİLEN H.264 BGF DONANIMI VE

ENERJİ KULLANIMI Önerilen BGF donanımının mimarisi Şekil 2’de

gösterilmiştir. Bu BGF donanımı bir H.264 video kodlayıcısının veya kodçözücüsünün içinde kullanılacaktır. Önerilen donanımda bir veriyolu, kontrol ünitesi, 384x8 arabellek (AB), 384x8 saklayıcı (SPAD), 1408×8 LUMA SRAM ve 704×8 CHRM SRAM vardır. Veriyolu saat frekansını ve bitirilen iş oranını artırmak için boruhatlı olarak gerçeklendi. AB Ters Dönüşüm / Ters Nicemleme (TD/TN) modülü tarafından geri çatılmış MB’leri saklamak için kullanılır. SPAD 16x16 MB’deki bütün kenarların filtrelenmesi bitene kadar kısmen filtrelenmiş pikselleri saklamak için kullanılır. SPAD en çok erişilen bellek olduğundan, erişim miktarını azaltmak için veriyoluna geçici sonuçları saklayan iki saklayıcı eklendi. 4×352×8=1408×8 LUMA SRAM ve 4x88x8+4x88x8=704×8 CHRM SRAM bellekleri MB’nin üstündeki 4x4 luma ve chroma bloklarını saklamak için kullanılır.

2011 IEEE 19th Signal Processing and Communications Applications Conference (SIU 2011)

212

Tablo 6: H.264 BGF İşlem Miktarlarındaki Azalmalar LUMA CHROMA

NP Toplama Kaydırma Toplama Kaydırma Toplam Azalma % Toplam Azalma % Toplam Azalma % Toplam Azalma %

FM 28 803402 82105 10 295290 41353 14 267688 74982 28 72062 35856 50

35 913494 143034 16 346610 71066 21 270448 98220 36 73064 46734 64 42 991821 198848 20 383863 97580 25 271328 99678 37 73356 47982 65

Aki

yo 28 908417 213855 24 343440 106339 31 262544 75744 29 70168 35924 51

35 974458 272054 28 375299 133795 36 264224 83592 32 70708 39900 56 42 1034674 315226 30 404414 154579 38 266000 96756 36 71372 45584 64

M&

D 28 869923 216830 25 325398 107854 33 270704 75102 28 72982 35212 48

35 980533 263040 27 377044 130305 35 271744 93000 34 73472 43106 59 42 1052760 310296 29 412626 153361 37 271744 102462 38 73472 48514 66

Ice 28 895329 299755 33 341275 148739 44 268328 102108 38 72194 49632 69

35 937683 372397 40 359848 184561 51 269344 104814 39 72552 50860 70 42 986790 424246 43 382198 211425 55 270480 125460 46 72994 60810 83

Şekil 2: H.264 Blok Giderici Filtre Donanımının Mimarisi

Tablo 7: H.264 BGF Donanımlarının Enerji Kullanımları

Toplam Hesaplama Zamanı (μs)

Güç (mW)

Enerji (μJ)

NP

Orj. [6] PE. ∆t Orj.

[6] PE. Orj. [6] PE. %

FM 28 81607 79809 1798 51.4 37.8 4198 3018 28.1

35 84643 81396 3247 51.4 37.8 4353 3074 29.442 86689 82096 4593 51.5 37.8 4463 3101 30.5

Aki

yo 28 84317 79454 4863 51.3 37.7 4328 2991 30.9

35 86152 79859 6293 51.4 37.6 4424 3004 32.142 87678 80373 7305 51.4 37.6 4504 3021 32.9

M&

D 28 83502 78578 4924 51.3 37.6 4285 2957 31.0

35 86528 80493 6035 51.3 37.6 4441 3028 31.842 88295 81106 7189 51.8 37.6 4573 3050 33.3

Ice

28 83847 77012 6835 51.2 37.5 4296 2884 32.935 85049 76461 8588 51.2 37.4 4355 2860 34.342 83695 74302 9393 51.0 37.4 4271 2777 35.0

Bu donanımı Verilog HDL ile gerçekleştirdik ve Mentor

Graphics ModelSim SE yazılımı ile simülasyonlar yaparak doğruladık. Daha sonra Verilog kodlarını Synopsys Synplify Pro yazılımını kullanarak Xilinx Virtex4 FPGA’ine sentezledik ve Xilinx ISE 11.5 yazılımını kullanarak aynı FPGA’e 98 MHz hızında çalışacak şekilde yerleştirdik. Donanım 1301 LUT, 288 DFF ve 7 BlokRAM kullanmaktadır. Donanımın CIF boyutundaki bir çerçeveyi işlemesi 22.54 ms sürmektedir. Bu nedenle saniyede 44 CIF çerçevesi işleyebilmektedir.

H.264 BGF donanımlarının Xilinx Virtex4 FPGA’indeki enerji kullanımlarını belirlemek için Mentor Graphics ModelSim SE yazılımı ile bu donanımların Akiyo, Foreman, Mother&Daughter ve Ice videolarından birer çerçeveyi girdi

olarak kullanarak değişik NP değerlerinde (28,35,42) 25 MHz saat frekansında zamanlama simülasyonlarını yaptık. H.264 BGF donanımlarının Xilinx Virtex4 FPGA’indeki güç kullanımlarını bu zamanlama simülasyonlarından elde edilen VCD uzantılı dosyaları kullanarak Xilinx XPower yazılımı ile belirledik. Bu güç kullanım değerleri ve zamanlama simülasyonlarından elde edilen toplam hesaplama zamanlarını kullanarak H.264 BGF donanımlarının Xilinx Virtex4 FPGA’indeki enerji kullanımlarını belirledik ve Tablo 7’de gösterdik. Bu sonuçlar PEİMA tekniğinin H.264 BGF donanımının enerji kullanımını %35 oranında azalttığını gösterdi.

5. TEŞEKKÜR TÜBİTAK’a 106E153 sayılı proje kapsamında bu çalışmayı desteklediği için teşekkür ederiz.

6. KAYNAKÇA [1] Joint Video Team (JVT) of ITU-T VCEG and ISO/IEC MPEG,

“Draft ITU-T Recommendation and Final Draft International Standard of Joint Video Specification”, ITU-T Rec. H.264 and ISO/IEC 14496-10 AVC, Mayıs 2003.

[2] Wiegand T., Sullivan G. J., Bjøntegaard G., Luthra A. “Overview of the H.264/AVC Video Coding Standard”, IEEE Trans. on CAS for Video Tech., Temmuz 2003.

[3] List P., Joch A., Lainema J., Bjøntegaard G., Karczewicz M., "Adaptive Deblocking Filter", IEEE Trans. on CAS for Video Tech., Temmuz 2003.

[4] Parlak M., Adibelli Y., Hamzaoglu I., “A Novel Computational Complexity and Power Reduction Technique for H.264 Intra Prediction”, IEEE Trans. on Consumer Electronics, Kasım 2008.

[5] Joint Video Team of ITU-T VCEG and ISO/IEC MPEG, “Joint Model Reference Software, Version 14.0”.

[6] Parlak M., Hamzaoglu I., "Low Power H.264 Deblocking Filter Hardware Implementations", IEEE Trans. on Consumer Electronics, vol. 54, no. 2, Mayıs 2008.

[7] Huang Y., Chen T., Hsieh B., Wang T., Chang T., Chen L., “Architecture design for deblocking filter in H.264/JVT/AVC”, IEEE ICME, Temmuz 2003.

[8] Lin H., Yang J., Liu B., Yang J., “Efficient deblocking filter architecture for H.264 video coders”, IEEE ISCAS , Mayıs 2006.

[9] Khurana G., Kassim A.A., Chua T.P., M.B. Mi, “A pipelined hardware implementation of in-loop deblocking filter in H.264/AVC”, IEEE Trans. on Consumer Electronics, Mayıs 2006.

[10] Xu K., Choy C.-S., “A Five-Stage Pipeline, 204 Cycles/MB, Single-Port SRAM-Based Deblocking Filter for H.264/AVC”, IEEE Trans. on CAS for Video Tech, vol.18, no. 3, Mart 2008.

2011 IEEE 19th Signal Processing and Communications Applications Conference (SIU 2011)

213