BCJR ALGORİTMASI KULLANILAN TURBO KOD ÇÖZÜCÜLERİN FPGA GERÇEKLEŞTİRİMİ

Benzer belgeler
ANKARA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ YÜKSEK LİSANS TEZİ BCJR ALGORİTMASI KULLANILAN TURBO KOD ÇÖZÜCÜLERİN FPGA GERÇEKLEŞTİRİMİ.

DPSK Sistemler için LMS Algoritma ve ML Kriteri Temelli, Gözü Kapalı Kanal Kestiriminin ve Turbo Denkleştirmenin Birlikte Yapılması

Çok Yüksek Mobiliteli Sönümlemeli Kanallardaki OFDM Sistemleri için Kanal Kestirimi

OCAK HAVALANDIRMA ŞEBEKE ANALİZİ İÇİN KOMBİNE BİR YÖNTEM (A COMBINED METHOD FOR THE ANALYSIS OF MINE VENTILATION NETWORKS)

DERS III ÜRETİM HATLARI. akış tipi üretim hatları. hat dengeleme. hat dengeleme

Tremalarla Oluşum: Kenar uzunluğu 1 olan bir eşkenar üçgenle başlayalım. Bu üçgene S 0

KABLOSUZ İLETİŞİM

Çok Taşıyıcılı Gerçek Zaman WiMAX Radyoda Zaman Bölgesi ve Frekans Bölgesi Kanal Denkleştiricilerin Teorik ve Deneysel BER Başarım Analizleri

Ders 2 : MATLAB ile Matris İşlemleri

GENETİK ALGORİTMALARDA TEK VE ÇOK NOKTALI ÇAPRAZLAMANIN SÖZDE RASSAL POPULASYONLARA ETKİSİ

ÖZEL EGE LİSESİ 13. OKULLAR ARASI MATEMATİK YARIŞMASI 8. SINIF ELEME SINAVI TEST SORULARI

Avrupa Sayısal Karasal Televizyon Sistemleri İçin Matlab Benzetim Aracı Matlab Simulation Tool for European Digital Terrestrial Television Systems

KİNETİK MODELLERDE OPTİMUM PARAMETRE BELİRLEME İÇİN BİR YAZILIM: PARES

RASGELE SÜREÇLER. Bir X rasgele değişkenin, a ve b arasında tekdüze dağılımlı olabilmesi için olasılık yoğunluk fonksiyonu aşağıdaki gibi olmalıdır.

Ufuk Ekim Accepted: January ISSN : yunal@selcuk.edu.tr Konya-Turkey

MIXED REGRESYON TAHMİN EDİCİLERİNİN KARŞILAŞTIRILMASI. The Comparisions of Mixed Regression Estimators *

Dinamik Programlama Tekniğindeki Gelişmeler

İletişim Ağları Communication Networks

Cahit Arf Liseler Arası Matematik Yarışması 2008

28/5/2009 TARİHLİ VE 2108/30 SAYILI KURUL KARARI 11 HAZİRAN 2009 TARİHLİ VE SAYILI RESMİ GAZETEDE YAYIMLANMIŞTIR.

) ile algoritma başlatılır.

TURBO KODLANMIŞ İŞARETLERDE SEYİRME ETKİSİNİ AZALTAN YAKLAŞIMLAR (*)

AES -TURBO VE AES -TURBO-OFDM SİSTEMLERİNİN BİT HATA ORANI KARŞILAŞTIRILMASI

Genetik Algoritma ile Mikrofon Dizilerinde Ses Kaynağının Yerinin Bulunması. Sound Source Localization in Microphone Arrays Using Genetic Algorithm

Fiziksel Karakteristikler: Aynı hizadaki izler bir silindir (cylinder) oluşturur. k. silindir. Manyetik disk düzeni:

MOBİLYA ENDÜSTRİSİNDE AŞAMALAR ARASINDA FİRE BULUNAN ÇOK AŞAMALI TEDARİK ZİNCİRİ AĞININ OPTİMİZASYONU. Ercan ŞENYİĞİT 1, *

MAK341 MAKİNA ELEMANLARI I 2. Yarıyıl içi imtihanı 24/04/2012 Müddet: 90 dakika Ögretim Üyesi: Prof.Dr. Hikmet Kocabas, Doç.Dr.

İMGE İŞLEME Ders-9. İmge Sıkıştırma. Dersin web sayfası: (Yrd. Doç. Dr. M.

Kİ KARE TESTLERİ. Biyoistatistik (Ders 2: Ki Kare Testleri) Kİ-KARE TESTLERİ. Sağlıktan Yakınma Sigara Var Yok Toplam. İçen. İçmeyen.

Electronic Letters on Science & Engineering 6(1) (2010) Available online at

GÜNEŞ ENERJİSİ SİSTEMLERİNDE KANATÇIK YÜZEYİNDEKİ SICAKLIK DAĞILIMININ SONLU FARKLAR METODU İLE ANALİZİ

Hızlı Ağırlık Belirleme İçin Yük Hücresi İşaretlerinin İşlenmesi

Turbo kodlamalı resimlerin aşamalı iletimi ve resim bağlaşımlı sıkıştırılması

DENEY 3: DTMF İŞARETLERİN ÜRETİLMESİ VE ALGILANMASI

Görev Unvanı Alan Üniversite Yıl Prof. Dr. Elek.-Eln Müh. Çukurova Üniversitesi Eylül 2014

k tane bağımsız değişgene bağımlı bir Y değişgeni ile bu bağımsız X X X X

(b) ATILIM Üniversitesi, Elektrik ve Elektronik Mühendisliği Böl.

Bu deneyin amacı Ayrık Fourier Dönüşümü (DFT) ve Hızlu Fourier Dönüşümünün (FFT) tanıtılmasıdır.

Kollektif Risk Modellemesinde Panjér Yöntemi

Turbo Kafes Kodlamalı Modülasyon için Tekrarlamalı Uzay Zaman Kodlama

Mobil ve Kablosuz Ağlar (Mobile and Wireless Networks)

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#2: ALGORİTMA ANALİZİ

ELECO '2012 Elektrik - Elektronik ve Bilgisayar Mühendisliği Sempozyumu, 29 Kasım - 01 Aralık 2012, Bursa

Stokastik Süreçler. Bir stokastik Süreç ya da rastgele süreç şöyle tanımlanabilir.

VHDL Kullanarak FPGA ile Yüksek Kapasiteli Tam Çıkarıcı Devre Tasarımı

EÜFBED - Fen Bilimleri Enstitüsü Dergisi Cilt-Sayı: 3-2 Yıl:

BLM 221 MANTIK DEVRELERİ

Web Madenciliği (Web Mining)

LOGRANK TESTİ İÇİN GÜÇ ANALİZİ VE ÖRNEK GENİŞLİĞİNİN HESAPLANMASI ÖZET

BÜTÜNLEŞİK ÜRETİM PLANLAMASININ HEDEF PROGRAMLAMAYLA OPTİMİZASYONU VE DENİZLİ İMALAT SANAYİİNDE UYGULANMASI

Sahada Programlanabilir Kapı Dizileri (FPGA) Sayısal CMOS Tümdevre Tasarımı Y. Fırat Kula

1991 ÖYS. )0, 5 işleminin sonucu kaçtır? A) 1 B) 2 C) 3 D) 4 E) 5 A) 123 B) 432 C) 741 D) 864 E) 987

KABLOSUZ İLETİŞİM

3.Hafta Master Teorem ve Böl-Fethet Metodu

İSTATİSTİKSEL TAHMİNLEME. Örneklem istatistiklerinden hareketle ana kütle parametreleri hakkında genelleme yapmaya istatistiksel tahminleme denir.

RASGELE SÜREÇLER İ.Ü. ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİ İLETİŞİM LABORATUVARI ARALIK, 2007

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Açık işletme Dizaynı için Uç Boyutlu Dinamik Programlama Tekniği

DENEY 3. HOOKE YASASI. Amaç:

Bulanık Hedef Programlama Yöntemi ile Süre-Maliyet-Kalite Eniyilemesi

ile plakalarda biriken yük Q arasındaki ilişkiyi bulmak, bu ilişkiyi kullanarak boşluğun elektrik geçirgenlik sabiti ε

Basitleştirilmiş Kalman Filtresi ile Titreşimli Ortamda Sıvı Seviyesinin Ölçülmesi

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir?

Kablosuz Kanallarda Kodlama. İrfan Köprücü

SAÜ Fen Edebiyat Dergisi (2009-II) ÜÇ BOYUTLU LORENTZ UZAYI MANNHEİM EĞRİ ÇİFTİ ÜZERİNE A. ZEYNEP AZAK

Temel ve Uygulamalı Araştırmalar için Araştırma Süreci

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ÖZET FONKSİYON TABANLI GÜVENLİ BİR RFID PROTOKOLÜNÜN FPGA ÜZERİNDE GERÇEKLENMESİ

Farklı Madde Puanlama Yöntemlerinin ve Farklı Test Puanlama Yöntemlerinin Karşılaştırılması

RASSAL SAYI ÜRETİLMESİ

HSancak Nesne Tabanlı Programlama I Ders Notları

Kablosuz Algılayıcı Ağlarda Karınca Koloni Optimizasyonu Kullanılarak Yapılan Optimum Yönlendirme İşlemi

SMI Algoritmasını Kullanan Adaptif Dizi İşaret İşleme Sistemlerinin İncelenmesi

Hesaplamalı Tarifler I: Newton ve Benzeri Metodlar

1. GİRİŞ 2. UYARLANIR DİZİ ALGORİTMALARI

Biyoistatistik (Ders 7: Bağımlı Gruplarda İkiden Çok Örneklem Testleri)

SİNYAL TEMELLERİ İÇİN BİR YAZILIMSAL EĞİTİM ARACI TASARIMI A SOFTWARE EDUCATIONAL MATERIAL ON SIGNAL FUNDAMENTALS

Eğitim ve Bilim. Cilt 40 (2015) Sayı Türkiye deki Vakıf Üniversitelerinin Etkinlik Çözümlemesi. Anahtar Kelimeler.

HETEROJEN AĞLARDA HÜCRE SEÇİM ALGORİTMALARININ UYGULANMASI

: Gazi Üniversitesi Araş. Gör. 4. Eğitim Derece Alan Üniversite Yıl

ADPCM Tabanlı Ses Steganografi Uygulaması The Application of Sound Steganography Based on ADPCM

Gömülü Sistemler. (Embedded Systems)

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir? Örnek...4 : Genel terimi w n. Örnek...1 : Örnek...5 : Genel terimi r n

MAK 210 SAYISAL ANALİZ

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#3: ALGORİTMA ANALİZİ#2

MOBİL ROBOTLARIN BİNA İÇİ KOŞULLARDA ULAŞMA ZAMANI KULLANILARAK KABLOSUZ LOKALİZASYONU

Temel Mikroişlemci Tabanlı Bir Sisteme Hata Enjekte Etme Yöntemi Geliştirilmesi. Buse Ustaoğlu Berna Örs Yalçın

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

İstatistikçiler Dergisi

TEK SERBESTLİK DERECELİ TİTREŞİM SİSTEMİNİN LAGUERRE POLİNOMLARI İLE MATRİS ÇÖZÜMÜ

Yrd. Doç. Dr. A. Burak İNNER

ALGORİTMA VE PROGRAMLAMA I

KARINCA KOLONİSİ ALGORİTMASI İLE GEZEN SATICI PROBLEMİNİN ÇÖZÜMÜ

SANAL RASGELELĐK. Sanal sözcüğü ile ilgili olarak Güncel Türkçe Sözlük, ve Wikipedia Ansiklopedisi,

Geriye Yayılım ve Levenberg Marquardt Algoritmalarının YSA Eğitimlerindeki Başarımlarının Dinamik Sistemler Üzerindeki Başarımı. Mehmet Ali Çavuşlu

4.2. SBM nin Beşeri Sermaye Değişkeni İle Genişletilmesi: MRW nin Beşeri Sermaye Modeli

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi

Yrd.Doç.Dr. Celal Murat KANDEMİR. Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit dizisi) kümesi ile temsil edilmesidir.

Transkript:

Gazi Üniv. Müh. Mim. Fa. Der. J. Fac. Eng. Arch. Gazi Univ. Cilt 6, No 4, 83-83, 0 Vol 6, No 4, 83-83, 0 BCJR ALGORİTMASI KULLANILAN TURBO KOD ÇÖZÜCÜLERİN FPGA GERÇEKLEŞTİRİMİ Onur ATAR*, Murat H. SAZLI** *Tübita-UZAY, 0653, ODTÜ Kampüsü, Anara **Anara Üniversitesi Eletroni Mühendisliği, 0600, Tandoğan, Anara onur.atar@uzay.tubita.gov.tr, sazli@eng.anara.edu.tr (Geliş/Received: 5.0.0; Kabul/Accepted: 3.07.0) ÖZET Kanal apasite sınırına yalaşabilme amacıyla ullanılan anal odlama uygulamalarından en yenisi ve başarılısı olan turbo odların en zorlu tasarım sorunu, odlayıcıların bütün olası durumları için hesaplamalar yapan döngülü (iteratif) od çözücülerin tasarımıdır. Turbo od çözücülerde ullanılan optimal BCJR (MAP) algoritması, bölme işlemi, üstel ve logaritmi hesaplar gibi armaşı matematisel işlemler barındırmatadır. Bu nedenle, turbo od çözücülerin gerçelenmesinde BCJR algoritmasından açınılmış ve onun optimal-altı (suboptimal) türevleri olan Log-MAP ve Max-Log-MAP algoritmaları tercih edilmiştir. BCJR algoritması, öncei çalışmalarda yeniden formüle edilmiş ve FPGA gerçeleştirimine uygun bir yapıya büründürülmüştür. Bu çalışmada, yeniden formüle edilmiş BCJR algoritması gerçelenmiştir. Donanımda yavaş çalışan armaşı matematisel işlemler (bölme, üstel ve logaritmi hesaplar) değer tablolarından ounmuş ve yüse performanslı hesaplama yapıları oluşturulmuştur. Gerçelenen sistem, benzetimler ile doğrulanmıştır. Elde edilen BER performansının belendiği gibi Log-MAP algoritmasından yüse olduğu gözlenmiştir. Anahtar Kelimeler: BCJR algoritması, MAP algoritması, Turbo od çözücü, FPGA FPGA IMPLEMENTATION OF TURBO DECODERS USING BCJR ALGORITHM ABSTRACT The most difficult design issue for turbo codes, which is the most recent and successful channel coding method to approach the channel capacity limit, is the design of the iterative decoders which perform calculations for all possible states of the encoders. BCJR (MAP) algorithm, which is used for turbo decoders, embodies complex mathematical operations such as division, exponential and logarithm calculations. Therefore, BCJR algorithm was avoided and the sub-optimal derivatives of this algorithm such as Log-MAP and Max-Log-MAP were preferred for turbo decoder implementations. BCJR algorithm was reformulated and wrapped into a suitable structure for FPGA implementations at previous wors []. Reformulated BCJR algorithm is implemented in this wor. Complex mathematical operations which run slowly on hardware (division, exponential and logarithm calculations) are read from loo-up-tables and high performance calculation structures are established. Implemented system is verified through simulations. It is observed that the BER performance obtained is better than the Log-MAP algorithm as expected. Keywords: BCJR algorithm, MAP algorithm, Turbo decoder, FPGA. GİRİŞ (INTRODUCTION) Enformasyon Kuramı nın urucusu ve en büyü öncüsü olan Claude Shannon, 948 yılında yayınlanan maalesinde, anal apasitesi sınırı denilen yeni bir avram tanımlamış ve veri hızının anal apasitesinden fazla olmaması durumunda, güvenilir bir iletişim sağlayabilece hata denetim odlarının mevcut olduğunu belirtmiştir []. Anca Shannon, bu odların nasıl oluşturulacağından bahsetmemiş ve böylece, hata denetim odlaması veya anal odlama olara bilinen yeni bir alanın doğmasını sağlamıştır. Bu alanda yapılan çalışmaların en büyü amacı, Shannon ın belirlediği ve daha sonraları

O. Atar ve M.H.Sazlı BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi Shannon Sınırı olara anılaca olan teori anal apasite sınırına yalaşabilmetir. Shannon ın bu öncü çalışmasından sonra birço araştırmacı anal odlama alanında çalışmış ve verimli odlama yapıları oluşturmuşlardır. Anca sadece turbo odlar bir AWGN (Additive White Gaussian Noise) analda Shannon sınırının ço yaınına ulaşmayı başarabilmiştir. 993 yılında bir grup Fransız araştırmacı tarafından icat edilen ve icadı, anal odlama alanındai en büyü başarı olara abul edilen turbo odlar [3], düşü SNR (Signal to Noise Ratio) değerlerinde yapılan iletişimlerde düşü BER (Bit Error Rate) değerleri sağlayabilmetedir. Bugün turbo odlama, bir 3GPP (Third Generation Partnership Project) ve CCSDS (Consultative Committee for Space Data Systems) standardıdır ve derin uzay iletişimi, radyo iletişimi ve mobil iletişim gibi uygulamalarda yaygın olara ullanılmatadır. Turbo odlama tenilerinin çeşitli uygulamalarda nasıl ullanılacağıyla ilgili araştırmalar dünya çapında halen icra edilmete olsa da, turbo od çözücü yapılarının gerçeleştirimleri daha ilginç bir araştırma onusu olara diat çemetedir. Turbo od çözücülerin FPGA (Field Programmable Gate Array) gerçeleştirimiyle ilgili ii temel ısıt vardır: armaşılı ve od çözme gecimesi. Turbo od çözücüler, gerçeleştirimlerini imansız ılaca adar armaşı değildirler. Anca diğer hata denetim algoritmalarıyla ıyaslandılarında ço daha armaşı olduları görülmetedir. Bu durum başlı başına bir gerçeleştirim zorluğudur. Turbo od çözücülerin bir diğer özelliği ise döngülü (iteratif) od çözme yapılarıdır. Döngü (iterasyon) sayısı arttıça, od çözücünün hem BER performansı hem de od çözme gecimesi artar. BER performansının artması istenilen, od çözme gecimesinin artması ise istenmeyen bir durumdur. Turbo odlamada bilgi, paetler halinde odlanır ve veri bloları oluşturulur. Veri bloları ne adar uzunsa, od çözücünün BER performansı da, od çözme gecimesi de o adar yüsetir. Bu sebeple, BER performansında ciddi düşüşlere sebep olmayaca adar ısa od çözme gecimeleri sağlayan, asgari armaşılıta verimli turbo od çözücülerin gerçeleştirimi olduça zorlu bir onudur. Verimli bir turbo od çözücü gerçeleştirimi için öncelile uygun bir od çözme algoritması seçilmelidir. Orijinal turbo od çözücülerde BCJR (Bahl, Coce, Jeline, Raviv) algoritması ullanılmatadır [4]. Anca bu algoritma çarpma, bölme ve logaritma hesaplamaları gibi armaşı matematisel işlemler içermetedir. Dolayısıyla mühendisler, FPGA gerçeleştirimi prati olmayan bu orijinal algoritmayı ullanmatan açınmışlar ve daha düşü BER performansı sağlayan, anca MAP algoritmasından ço daha basit yapıları olan Log- MAP ve Max-Log-MAP algoritmalarını tercih etmişlerdir [5]. Bugüne adar yapılan ticari ve aademi gerçeleştirimlerde, armaşılığı ve dolayısıyla performansı azaltılmış bu algoritmalar ullanılmıştır. Turbo odların icat edildiği yıllarda sahip olunan tenoloji ile BCJR algoritması gibi armaşı bir yapıyı te bir tümleşi devrede (IC) gerçeleme prati değildi. Anca günümüz VLSI tenolojisi, sadece bir anal odlama algoritmasının değil, bütün bir haberleşme sisteminin dahi te bir tümleşi devrede gerçelenmesine olana sağlamatadır. Özellile son yıllarda muazzam bir ilerleme gösteren VLSI tenolojisi ile üretilmiş FPGA lar; hız, alan ve güç gibi ço önemli parametrelerde ciddi gelişmeler aydetmele almamış, aynı zamanda armaşı matematisel işlemlerin daha verimli bir şeilde gerçelenmesini de sağlamıştır. Dolayısıyla, bugüne adar, yüse BER performansına rağmen gerçeleştiriminden açınılan BCJR algoritması, modern FPGA larda artı prati bir şeilde gerçelenebilir olmuştur.. TURBO KODLAMA (TURBO CODING) Bir haberleşme sisteminin en önemli ısımlarından biri, anal odlama ısmıdır. Kanal odlama birimleri, gönderilece iletiye sistemati olara bazı artılılar eleyere, anal boyunca oluşabilece bit hatalarının alıcı tarafından düzeltilmesini sağlayabilmetedir. Turbo odlama, bir anal odlama yapısıdır ve bu çalışmanın temelini oluşturmatadır. Bu bölümde, turbo odlama ile ilgili uramsal bilgiler sunulmatadır... Turbo Kodlayıcı (Turbo Encoder) Bir turbo odlayıcı, birden fazla sistemati odlayıcının paralel olara birleştirilmesinden oluşur. Bu odlayıcıların her birine bileşen odlayıcı/od çözücü adı verilir. Eğer bir turbo odlayıcı ii adet bileşen odlayıcı ihtiva ediyorsa, bu turbo odlayıcıya, ii boyutlu turbo odlayıcı adı verilir. Turbo odlar orijinal olara RSC (Recursive Systematic Convolutional) odlayıcılarla geliştirilmişlerdir. Klasi NSC (Non-Systematic Convolutional) odlayıcıların yüse SNR değerlerinde sistemati odlayıcılara (mevcut durum için RSC odlayıcılar) göre daha iyi BER performansı gösterdileri bilinmetedir. Anca düşü SNR değerlerinde bu durumun tersi gözlenmetedir [3]. Ayrıca RSC odlayıcılar yüse odlama oranlı uygulamalarda SNR değerinden bağımsız olara NSC odlayıcılardan daha iyi BER performansı gösterebilmetedirler. 84 Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0

BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi O. Atar ve M.H.Sazlı.. RSC Kodlayıcılar (RSC Encoders) RSC odlayıcıların anlaşılabilmesi için öncelile NSC odlayıcıların gözden geçirilmesi geremetedir. R=/ od oranlı, cebirsel uzunluğu K ve hafızası v=k- olan iili bir atlamalı odlayıcı ele alınırsa, bu odlayıcının anındai girişi olan d ile bu girişe arşılı gelen od elimesi C = (X, Y ) arasındai ilişi aşağıdai gibi gösterilebilir. K i i i i= 0 K i i i i= 0 X = g d mod. g = 0, () Y = g d mod. g = 0, () K a = d γ a mod. (3) i i i= X = d ise γ i = g i, Y = d ise γ i = g i olara tanımlanmıştır. RSC odlayıcılar, turbo odlayıcıların bileşen odlayıcılarıdır. Şeil de bir RSC odlayıcı görülmetedir..3. RSC Kodlayıcıların Paralel Birleşimi (Parallel Concatenation of RSC Encoders) G : {g i }, G : {g i } genellile otal biçimde ifade edilen od üreteçleridir. Şeil de G = 7, G = ve v=3 parametrelerine sahip bir NSC odlayıcı görülmetedir. Şeil 3. Turbo odlayıcı (Turbo encoder) Şeil. Klasi NSC odlayıcı (Classical NSC encoder) Şeil. R=/ od oranlı bir RSC odlayıcı (Code rate R=/ RSC encoder) R=/ od oranlı iili bir RSC odlayıcı ise, NSC odlayıcıda bir geri besleme döngüsü oluşturulması ve ii çııştan birinin giriş biti d ile aynı yapılması sayesinde elde edilir. Bir RSC odlayıcının hafızasının girişi ise enformasyon biti olan d değil, yeni bir değişen olan a değişenidir. d ile a arasındai ilişi aşağıdai gibidir. Şeil 3 te R=/3 oranlı bir turbo odlayıcı görülmetedir. Veri (d,d N ) blolar halinde odlanmata ve blo boyutları, arıştırıcının (interleaver) blo boyutu ile belirlenmetedir. Orijinal veri dizisi öncelile birinci RSC odlayıcı tarafından odlanır ve birinci parite dizisi (Y,Y N ) üretilir. Karıştırıcı, orijinal veri dizisini arıştırara dizi içindei verilerin yerlerini değiştirir. Yerleri değiştirilmiş yeni veri dizisi ise iinci RSC odlayıcı tarafından odlanır. Böylece iinci parite dizisi (Y,Y N ) de üretilir. Karıştırma işlemi belirli bir urala göre olabileceği gibi tamamen rastgele de olabilir. Genellile, arıştırıcıların uzunluları ne adar büyü olursa, turbo od çözücülerin BER performansları da o adar iyi olmatadır. Turbo od çözücülerde her bir bileşen od çözücü aynı enformasyon biti üzerinde od çözme işlemi yapar. Anca, turbo od çözücülerde de uygulanan arıştırma işleminden dolayı, bileşen od çözücüler bu işlemleri farlı sıralara göre uygularlar. Her bileşen od çözücü, od çözme işlemi ile elde ettiği bilgiyi diğer bileşen od çözücüye iletir ve bu süreç döngülü (iteratif) bir şeilde devam eder. Dolayısıyla, blo uzunluğu (veya arıştırıcı uzunluğu) arttıça, orijinal veri dizisindei herhangi bir bitin yeri ile arıştırılmış veri dizisindei aynı bitin yeri arasındai far da artacatır. Bu da, bileşen odlayıcı tarafından o bit için üretilmiş olan parite bitlerinin daha az ilintili olmasını sağlayaca ve od çözme işleminin başarımını arttıracatır. Turbo odlayıcılar, enformasyon bitleri için üretilen her ii parite bitini de anahtarlayara iletebilirler. Bu şeilde üretilen turbo odlar /3 oranlı turbo odlar olara adlandırılır. Başa bir seçene ise, parite bitlerinin önceden belirlenmiş bir düzene göre anahtarlanmasıdır. Bu işleme od delme işlemi, üretilen oda ise delinmiş od denir. Örneğin, her Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0 85

O. Atar ve M.H.Sazlı BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi z x y ˆ ( ) ˆ ( ) Λ d Λ d n y w y dˆ Şeil 4. Turbo od çözücü (Turbo Decoder) hangi bir zaman aralığında (X, Y ) çifti iletiliren, bir sonrai zaman aralığında (X,Y () ) çifti iletilir. Böylece her enformasyon biti için yalnızca bir parite biti üretilir. Böyle turbo odlara / od oranlı turbo odlar denir. Kod çözme işlemi de bu urala uygun olara yapılmalı ve her zaman aralığında bir parite biti esi iletildiği için ilgili od çözücü, parite biti olara 0 değerini ullanmalıdır..4. Turbo Kod Çözücü (Turbo Decoder) Şeil 4 te görülen turbo od çözücü ii adet bileşen od çözücüden oluşmatadır. Bu bileşen od çözücüler döngülü (iteratif) bir yapıda çalışırlar ve bir od çözücünün ürettiği tahmin diğer od çözücü tarafından ullanılır. Turbo od çözücünün il iterasyonunda z lar sıfırlanmıştır. Alınan x ve y bitleri, bileşen od çözücülere uygun parite bitlerinin iletilmesi için anahtarlanırlar. Bileşen od çözücülere sağlanan parite bitleri, odlayıcıda uygulanan od delme düzenine göre iletilirler. Eğer od delme işlemi uygulanmamışsa, her anında y ve y bitleri, sırasıyla D ve D od çözücülerine iletilirler. D od çözücüsü x ve y bitlerini ullanara d biti ile ilgili bir tahminde bulunur. Elde edilen bu il tahminden bir bilgi parçası (harici bilgi) üretilir ve bu bilgi uygun bir şeilde arıştırıldıtan (odlayıcıda ullanılan arıştırıcının aynısı ullanılır) sonra D od çözücüsüne iletilir. D od çözücüsü bu bilgi ile birlite x ve y bitlerini ullanara d biti ile ilgili daha iyi bir tahmin üretir. D od çözücüsünün tahmininden elde edilen harici bilgi ise bir sonrai iterasyon için D od çözücüsüne iletilir. Böylece her iterasyonda daha iyi tahminler üretilmiş olur. Genellile yirmiden daha az iterasyon ile 0-5 gibi bir BER değeri elde edilir. ayarlanmış arar verici bu tahmin bilgisini ullanara turbo od çözücünün d biti ile ilgili esin ararını (son tahminini) üretir. 3. BCJR ALGORITMASININ YENIDEN FORMÜLASYONU (REFORMULATION OF THE BCJR ALGORITHM) Bu bölümde, BCJR algoritmasının, bazı matris manipülasyonları ile yeniden formülasyonu sunulmatadır [6]. Daha önce de belirtildiği gibi, çalışma apsamında yapılan gerçeleştirimin temel aldığı yöntem, bu yeni formülasyondur. 3.. İleri Ölçütlerin (Alfa Katsayılarının) Hesaplanması (Calculation of the Forward Metrics (Alpha Coefficients)) BCJR algoritmasının ileri ölçütleri, aşağıdai eşitliten yola çıılara yeniden formüle edilmiştir. α ( m) = i= α m' i= i= m m' i= α ( m') γ ( R, m', m) ( m') γ ( R, m', m) (4) Alfa atsayılarının hesaplanmasıyla ilgili yapılan yeniden formülasyon, algoritmanın gerçeleştiriminde ullanılabilece bir yapı olara belirtilmiştir [7]. Şeil 5 te bu yapı görülmetedir. A Γ Γ A A Şeil 5. Alfa atsayılarının hesaplanmasında ullanılan yapı (The structure of the alpha calculator) A p A Önceden belirlenmiş iterasyon sayısına ulaşıldığında, D od çözücüsünün d biti ile ilgili tahmini, arar vericiye (hard limiter) iletilir. Eşi değeri sıfır olara 86 Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0

BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi O. Atar ve M.H.Sazlı 3.. Geri Ölçütlerin (Beta Katsayılarının) Hesaplanması (Calculation of the Bacward Metrics (Beta Coefficients)) Geri ölçütlerin hesaplanmasında da, ileri ölçütlerde yapılan yeniden formülasyona benzer bir formülasyon ullanılmatadır [7]. β ( m) = i= β m' i= i= m m' i= ( m') γ ( R, m, m') α ( m) γ ( R, m, m') (5) Beta atsayılarının hesaplanmasıyla ilgili yapılan yeniden formülasyon, algoritmanın gerçeleştiriminde ullanılabilece bir yapı olara da belirtilmiştir [7]. Şeil 6 da bu yapı görülmetedir. B (Γ ) T B p B Şeil 6. Beta atsayılarının hesaplanmasında ullanılan yapı (The structure of the beta calculator) 3.3. Logaritmi Benzerli Oranlarının (LLR) Hesaplanması (Calculation of the Logarithmic Lielihood Ratios (LLR)) Aşağıdai eşitli, daha önce tanımlanmış olan A, B ve Γ matrisleri ullanılara her d biti için LLR (Logarithmic Lielihood Ratio) değerlerinin nasıl hesaplandığını göstermetedir. Her d biti ile ilişili LLR değerleri aşağıdai gibi hesaplanmatadır. Λ ( d ) = ln m m' m m' γ ( R, m', m) α ( m') β ( m) γ ( R, m', m) α ( m') β ( m) (6) LLR değerlerinin hesaplanmasıyla ilgili yapılan yeniden formülasyon, algoritmanın gerçeleştiriminde ullanılabilece bir yapı olara da belirtilmiştir [7]. Şeil 7 de bu yapı görülmetedir. ( A ) T B ( A ) T Şeil 7. LLR değerlerinin hesaplanmasında ullanılan yapı (The structure of the LLR calculator) p n l 4. BCJR ALGORİTMASI KULLANILAN TURBO KOD ÇÖZÜCÜLERİN FPGA GERÇEKLEŞTİRİMİ (FPGA IMPLEMENTATION OF TURBO DECODERS USING BCJR ALGORITHM) Turbo od çözücüler, birço parametre ile yapılandırılan sistemlerdir. Bu parametrelerin bazılarının seçimi tasarımcının tercihine almış, bazıları ise 3GPP standardı tarafından belirlenmiştir [8]. Tablo de gerçeleştirim parametreleri ve bu parametrelerin seçilen değerleri görülmetedir. 3GPP standardı, bir turbo od çözücü yapısının, R=/3 od oranlı ve K=4 cebirsel uzunluğuna sahip olması geretiğini belirtmiştir. Bu nedenle, bu çalışmada söz onusu parametreler, 3GPP standardının belirttiği şeilde seçilmiştir. Tablo. Tasarım parametreleri (Design Parameters) Parametre Değer Blo Uzunluğu 8-4096 RSC Kodlayıcı Sayısı RSC Kodlayıcıların Cebirsel 4 Uzunluğu RSC Kodlayıcıların Üreteç Matrisi G={7,5}(otal) Kodlama Oranı R=/3 Kod Delme Yo Kod Çözme Algoritması BCJR (MAP) Döngü Sayısı -0 4.. Sistemin Genel Donanım Yapısı (General Hardware Structure of the System) Şeil 8 de, gerçelenen turbo od çözücünün genel yapısı görülmetedir. R ( x, y, y) giriş dizisi, depolanma ve bileşen od çözücülere uygun bir şeilde sağlanma üzere giriş otarma birimine iletilir. Giriş otarma birimi, sistemati x bitleri ile y ve y parite bitlerinin ayrı hafızalarda depolandığı ve gereli olduğu tadirde bu hafızalardan ounduğu birimdir. Ayrıca detaylandırılmasına gere duyulmamıştır. BCJR algoritmasında ullanılan atsayılar ve analdan gürültülü bir şeilde gelen veri dizisi, gerçel sayılardır. Dolayısıyla bu sayılar, donanımda sabitnotalı (fixed-point) olara ifade edilmetedir. Hem analdan gelen veri bitleri için, hem de dahili atsayılar için douz bitli sayılar ullanılmıştır. Bu sayıların ullanımı aşağıdai gibi detaylandırılabilir. Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0 87

O. Atar ve M.H.Sazlı BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi R ( x, y, y ) x y z z y x z y dˆ Şeil 8. Turbo od çözücünün genel donanım yapısı (General hardware structure of the turbo decoder) Şeil 9. Gerçel sayıların gösterimi (Representation of real numbers) Şeil 9 da da gösterildiği gibi, douz bitli sayıların en soldai biti işaret biti olara ullanılmatadır. En soldai bit ise söz onusu sayı negatif, 0 ise pozitiftir. Bu bitten sonrai üç bit ile sayının tam ısmı gösterilir. Notadan sonrai beş bit ise, sayının ondalı ısmını gösterme amacıyla ullanılır. 4.. INT/DE-INT Birimleri (INT/DE-INT Units) Karıştırıcı birimi (INT), bir veri dizisindei bitlerin yerlerini değiştirme için, ters arıştırıcı birimi (DE- INT) ise arıştırıcının işlevinin tersini gerçeleştirme için ullanılmatadır. Başa bir deyişle, herhangi bir bitin indis değeri, arıştırma işlevi ile başa bir değere dönüştürülür. Ters arıştırma işlevi vasıtasıyla ise, değeri değiştirilmiş indis, esi değerine avuşur. Gerçeleştirimde ullanılan INT/DE-INT birimlerinin indis değeri değiştirme işlevleri, 3GPP belirtiminden alınmıştır. Hem arıştırma, hem de ters arıştırma işlevlerinin, her hangi bir indis değeri için üreteceği değerler önceden bilinmetedir. Dolayısıyla, bu fonsiyonlar için değer tabloları oluşturulmuş ve indis değerleri bu tablodan ounara değiştirilmiştir. İndis değeri değiştirme işlevleri her blo uzunluğu (arıştırıcı uzunluğu) için farlı değerler üretmetedir. Dolayısıyla, tanımlı her blo uzunluğu için (8, 56, 5, 04, 048, 4096) ii adet (bir adet arıştırıcı, bir adet ters arıştırıcı için) değer tablosu oluşturulmuştur. Bu tablolar, FPGA da hafıza birimleri olara gerçelenmiştir ve blo uzunluğu adar hafıza aplamatadır. 4.3. Bileşen Kod Çözücüler (Component Decoders) Daha önce de belirtildiği gibi, bileşen od çözücüler, yeniden formüle edilmiş BCJR algoritmasını ullanmatadırlar [6]. Şeil 0 da bu algoritmanın donanımdai yapısı gösterilmetedir. Kanaldan alınan veri dizisi, turbo od çözücünün giriş otarma birimi tarafından uygun bir şeilde bileşen od çözücülere iletilir. Bunun yanında her bileşen od çözücü, diğer bileşen od çözücü tarafından üretilen harici bilgileri (z ) de ullanmatadır. Bileşen od çözücülerde öncelile, gama hesaplama birimleri vasıtasıyla durum geçiş ölçütleri olan gama atsayıları hesaplanır. Gama atsayıları hesaplanıp gama depolama birimine atarılıren, aynı zamanda x y z Γ Γ Α Α Sum( ) Γ Sum( ) Α Α Γ B w Şeil 0. Bileşen od çözücülerin donanım yapısı (Hardware structure of the component decoders) 88 Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0

BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi O. Atar ve M.H.Sazlı alfa/sum hesaplama birimine iletilirler. Bu sayede, alfa atsayıları ve Sum() değerleri de hesaplanmaya başlar. Beta atsayılarının hesaplanmasının başlayabilmesi için, bütün veri dizisi için alfa atsayıları hesaplanmış olmalıdır. Alfa atsayılarının hesaplanması bittiğinde, sum depolama birimi ve gama depolama biriminden ouma yapılır ve sırasıyla Sum() değerleri ve Γ matrisi beta hesaplama birimine iletilir. Beta atsayıları beta hesaplama birimi tarafından hesaplanıp LLR hesaplama birimine iletiliren, aynı zamanda alfa depolama biriminden ouma yapılara ilgili alfa atsayıları da LLR hesaplama birimine iletilir. LLR hesaplama birimi ise Α, Α ve B matrislerini ullanara, d biti ile ilgili bir tahminde bulunur ve ayrıca w değerlerini hesaplayara diğer bileşen od çözücüye iletir. Böylece bir döngü (iterasyon) tamamlanmış olur. 4.4. Gama Hesaplama Birimi (Gamma Calculation Unit) Durum geçiş ölçütlerini hesaplama amacıyla ullanılan eşitli aşağıdai gibidir. exp( z / ) γ ( R, m', m) = exp( iz / ) i πσ exp( z ).( qd = i S = ms, = m') σ.exp{ [( x ) ( ) ]} i y Y Durum geçiş ölçütlerinin hesaplandığı yuarıdai eşitli, üç ifadenin çarpımı biçimindedir. Bu nedenle, bu eşitlitei üç çarpan, üç ayrı terim olara ele alınabilir. exp( z / ) exp( iz / ) ifadesi birinci πσ exp( z ) terim, qd ( = i S = ms, = m') ifadesi iinci terim, exp{ [( x ) ( ) ]} i y Y ifadesi ise σ üçüncü terim olsun. Bu üç terim birbirleriyle çarpılmış ve durum geçiş ölçütleri sayısal elemanlar vasıtasıyla hesaplanmıştır. Birinci terimde bulunan ifadesi sabit bir sayıdır πσ ve bir AWGN analın SNR bilgileri ullanılara bir tablodan ounur. Dolayısıyla donanım üzerinde bir işlem yüüne sebep olmamatadır. Bu sabit sayı ile çarpılan exp( z / ) exp( iz / ) exp( z ) ifadesi ise ii farlı tablodan ounabilir. Söz onusu geçiş ölçütü Γ matrisi için hesaplanıyorsa i =, Γ matrisi için hesaplanıyorsa i = alınır. Bu nedenle, bu ifade ii farlı durum için tablolardan ounara sabiti πσ ile çarpılır ve birinci terim hesaplanmış olur. Birinci terimin hesaplanmasında sadece çarpma işlemi (7) ullanılmata ve exponansiyel hesabı için tablolardan yararlanılmatadır. Daha önce de belirtildiği gibi, iinci terim olan qd ( = i S = ms, = m') terimi de 0 ya da değerlerini alabilir. Bu ifadenin alacağı değerler de önceden belirlenmiştir. Bu sayede, qd ( = i S = ms, = m') teriminin hesaplanmasında da sadece tablolardan yararlanılmatadır. Üçüncü terim olan exp{ [( x ) ( ) ]} i y Y σ teriminde bulunan ifadesi de sabit bir sayıdır ve σ bu ifade de SNR bilgileri ullanılara bir tablodan ounur. [( x i) ( y Y) ] ifadesindei Y değeri, turbo odlayıcının qd ( = i S = ms, = m') = ien ürettiği parite bitidir ve daha önce de belirtildiği gibi ya da - değerlerini alabilir. Dolayısıyla Y değeri de bir tablodan ounara elde edilir. [( x i) ( y Y) ] ifadesi için yapılan işlemler, çarpma ve toplama işlemleridir. Bu ifadedei exponansiyel de tablodan ouma yöntemi ile hesaplanmıştır. Bu üç terimin hesaplanara birbiriyle çarpılması ile anındai durum geçiş ölçütleri hesaplanmış olur. Gama atsayılarının hesabında çarpma ve toplama işlemleri ullanılmıştır. Tablodan yapılan oumalar ise, donanımda hafızadan yapılan oumalar olara gerçelenmiştir. 4.5. Alfa ve Beta Hesaplama Birimleri (Alpha and Beta Calculation Units) Alfa ve beta hesaplama birimleri, BCJR algoritmasının yeniden formülasyonunda da belirtildiği gibi [6], sırasıyla Şeil 5 ve Şeil 6 dai yapılar ullanılara gerçelenmiştir. Bu yapılarda, çarpma ve toplama işlemleri dışında, bölme işlemleri de yapılmatadır. Donanımda gerçelenen bölme işlemi, günümüzün yüse hızlı FPGA larına rağmen olduça yavaş çalışmatadır. Bu nedenle bölme işlemi de, hız azanma amacıyla tablolar ullanılara gerçelenmiştir. Bölme işleminin tablolar vasıtasıyla hesaplanması aşağıdai gibidir. N ve N ii gerçel sayı olsun. Yapılma istenen işlem ise N N olsun. N N işlemi, N. şelinde de ifade N edilebilir. Daha önce de belirtildiği gibi, gerçeleştirimde ullanılan bütün gerçel sayılar, douz bitli sayılar ile gösterilmetedir. Alfa ve beta atsayıları pozitif sayılar olduğu için, işaret bitleri ihmal edilebilir. Bu durumda N ve N sayıları seiz bitli sayılar haline gelirler. Dolayısıyla, N. N Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0 89

O. Atar ve M.H.Sazlı BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi Tablo. R=/3 oranlı BCJR turbo od çözücü ile Log-MAP turbo od çözücünün, 5 iterasyon sonucu elde edilen BER performanslarının arşılaştırılması (BER performance comparison of R=/3 BCJR turbo decoder and the Log- MAP turbo decoder after 5 iterations) Blo Uzunluğu 5 Bit 04 Bit 048 Bit SNR BCJR Log-MAP BCJR Log-MAP BCJR Log-MAP SNR = 0.5 db 3.0-3 4.0-4.0-4 3.0-0 -4.0 - SNR = db 8.0-4 0 -.0-5.0-3 6.0-6 6.0-4 SNR =.5 db.0-5 0-3 0-6 4.0-5 4.0-7.0-6 SNR = db.0-6.0-4 <0-7 0-6 <0-7 0-7 Tablo 3. R=/3 oranlı BCJR turbo od çözücü ile Log-MAP turbo od çözücünün, sırasıyla 39 MHz ve 349 MHz çalışma freansı ile elde edilen toplam veri hızı performanslarının arşılaştırılması (Total throughput performance comparison of R=/3 BCJR turbo decoder and the Log-MAP turbo decoder at 39 MHz and 349 MHz cloc frequency respectively) (Mbit/s) Blo Uzunluğu 5 Bit 04 Bit 048 Bit Döngü Sayısı BCJR Log-MAP BCJR Log-MAP BCJR Log-MAP Döngü = 3 7,87 3,93 7,88 35,58 7,90 37,96 Döngü = 5 4,69 0,68 4,7,4 4,74 4,00 Döngü = 7 3,35 5,08 3,36 6,37 3,38 7,54 Döngü = 9,6,86,6,89,63 3,8 işleminin sonucunun, lasi bölme işlemi ullanılmadan gerçelenebilmesi için, N işleminin sonucunun bir tablodan ounması ve ounan değerin N sayısı ile çarpılması geremetedir. Söz onusu tabloda 8 tane farlı değer vardır ve bu değerler donanım üzerinde bir hafızada tutulurlar. Seiz bitli sayılar söz onusu olduğu için, bölme işleminin bu şeilde gerçelenmesi, aplanan hafıza alanının azlığı açısından olduça verimli bir yöntemdir. 4.6. LLR Hesaplama Birimi (LLR Calculation Units) Şeil 7 de de görüldüğü gibi, LLR hesaplama biriminde de ağırlılı olara çarpma ve toplama işlemleri yapılmatadır. Seiz bitli ii sayının çarpımı 6 bitli bir sonuç vermetedir. Gama, alfa ve beta hesaplama birimlerinde, çarpım sonuçları olan bu 6 bitli sayılar, seiz bitli sayılar olara nicemlenmiştir. Anca LLR hesaplama biriminde daha hassas sonuçlar elde edilmesi amacıyla, çarpım sonuçları 0 bitli sayılar olara nicemlenmiştir. Söz onusu birimde bu işlemler dışında, donanımda armaşılı yarataca te işlem logaritma hesabıdır. Şeil 7 dei yapıya göre gerçelenen LLR hesaplama biriminde, p ve n sayılarının doğal logaritmaları, tablolardan ounmuş ve ln( p) ln( n) işleminin sonunu hesaplanmıştır. p ve n sayıları 0 bitli sayılar olduğu için, bu sayıların doğal logaritma değerleri 0 elemanlı bir tablodan ounmatadır. Bu tablo, donanım üzerinde bir hafızada tutulur. Her bileşen od çözücüde toplam ii logaritma işlemi olduğu için, 0 elemanlı dört tablo ullanılara bir logaritma hesaplayıcı gerçelenmiş ve böylece armaşı logaritma hesabından açınılmıştır. 4.7. BCJR Turbo Kod Çözücünün BER Performansı (BER Performance of the BCJR Turbo Decoder) BCJR algoritmasının, uramsal olara Log-MAP ve Max-Log-MAP algoritmasından daha yüse BER performansı gösterdiği bilinmetedir. Bu çalışmada gerçelenen BCJR turbo od çözücünün, Xilinx firmasına ait Log-MAP turbo od çözücüden [9] daha yüse bir performans gösterdiği anıtlanmıştır. Tablo de çalışma apsamında gerçelenen BCJR turbo od çözücü ile Xilinx firmasına ait Log-MAP turbo od çözücünün BER performanslarının arşılaştırılması görülmetedir. Çalışma apsamında gerçelenen BCJR turbo od çözücünün, Xilinx firmasına ait Log-MAP turbo od çözücüden daha yüse BER performansı gösterdiği gözlenmiştir. Tablo de de görülebileceği gibi, BCJR turbo od çözücü ile Log-MAP turbo od çözücülerin BER performansları, SNR değeri arttıça birbirine yalaşmatadır. Bunun sebebi, BCJR turbo od çözücünün düşü SNR değerlerinde daha yüse performans göstermesidir. SNR değeri arttıça hata olasılığı da azalmatadır. Bu durum, Log-MAP od çözücünün de performansını arttırmatadır. 4.8. BCJR Turbo Kod Çözücünün Toplam Veri Hızı Performansı (Total Throughput Performance of the BCJR Turbo Decoder) Daha önce de belirtildiği gibi, turbo od çözme işlemi, döngülü bir işlemdir. Her veri bloğu için birden fazla (pratite altıdan fazla) döngü gerçeleştirilir. Bu sayede turbo od çözücülerin BER performansları artmatadır. Anca bu döngülü yapı toplam veri hızının azalmasına sebep olmatadır. Tablo 3 te çalışma apsamında gerçelenen BCJR 830 Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0

BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi O. Atar ve M.H.Sazlı turbo od çözücü ile Xilinx firmasına ait Log-MAP turbo od çözücünün toplam veri hızı performanslarının arşılaştırılması görülmetedir. Çalışma apsamında gerçelenen BCJR turbo od çözücünün toplam veri hızı performansının, Xilinx firmasına ait Log-MAP turbo od çözücünün performansından düşü olduğu gözlenmiştir. Bu performans düşülüğünün sebebi, BCJR turbo od çözücünün azami çalışma freansının 39 MHz, Log- MAP turbo od çözücünün azami çalışma freansının ise 349 MHz olmasıdır. Çarpma işlemi gibi armaşı matematisel işlemlere sahip olan BCJR turbo od çözücü, sadece toplama ve çıarma işlemi yapılan Log-MAP turbo od çözücüden daha armaşı bir donanım yapısı sahip olmata ve dolayısıyla daha yavaş çalışmatadır. Anca toplam veri hızındai bu performans düşülüğü, yüse BER performansı adına ödenebilece bir bedeldir. 4.9. BCJR Turbo Kod Çözücünün Gerçeleştirim Raporu (Implementation Report of the BCJR Turbo Decoder) Turbo od çözücülerde ullanılan od çözme algoritmaları, armaşı ve işlem yüü yüse algoritmalardır. Çarpma ve bölme gibi matematisel işlemlerin donanımda gerçelenmesi, donanım elemanlarının sarfiyatını önemli ölçüde arttırmatadır. Bunun yanında, söz onusu işlemler donanımda yavaş çalışmata ve algoritmanın toplam veri hızının azalmasına sebep olmatadır. Log-MAP ve Max-Log- MAP gibi optimal-altı algoritmaların tercih edilmelerinin sebebi de bu işlemlerin, logaritmi bölgede toplama ve çıarma işlemleri olara tanımlanmasıdır. Toplama ve çıarma işlemleri, çarpma ve bölme işlemlerine göre daha az donanım elemanı sarf etmete ve daha hızlı çalışmatadır. Anca optimal BCJR algoritmasının bu anlamda ciddi bir dezavantajı bulunmatadır. BCJR algoritmasında armaşı matematisel işlemler vardır ve bunun sonucunda bu algoritma daha fazla donanım sarf etmete ve daha yavaş çalışmatadır. Çalışma apsamında bu dezavantajın etisi, çarpma işlemi dışındai armaşı işlemlerin donanım elemanları ile değil, değer tabloları, yani hafıza elemanları ile gerçelenmesi sayesinde azaltılmıştır. Tablo 4 ve Tablo 5 te sırasıyla çalışma apsamında gerçelenen BCJR turbo od çözücü ile Xilinx firmasına ait Log- MAP turbo od çözücünün gerçeleştirim raporları görülmetedir. Tablo 4 ve Tablo 5 te de görüldüğü gibi, Xilinx firmasına ait Log-MAP turbo od çözücünün, donanım elemanları sarfiyatı ve azami çalışma freansı açısından BCJR turbo od çözücüden daha üstün olduğu görülmüştür. Anca bu dezavantaj da, optimal BCJR algoritmasının ullanılabilmesi, dolayısıyla yüse BER performansı adına ödenebilece bir bedeldir. Tablo 4. R=/3 oranlı BCJR turbo od çözücünün gerçeleştirim raporu (Implementation report of the R=/3 rate BCJR turbo decoder) Seçeneler Xilinx FPGA XC6VLX75T LUT/FF Çifti 64 Dilim LUT 3654 Dilim Yazmacı 404 Blo RAM (36) 4 Blo RAM (8) 0 DSP Bloğu 0 Hız Derecesi - -3 Azami Çalışma 30 MHz 39 MHz Freansı Tablo 5. R=/3 oranlı Log-MAP turbo od çözücünün gerçeleştirim raporu (Implementation report of the R=/3 rate Log-MAP turbo decoder) Seçeneler Xilinx FPGA XC6VLX75T LUT/FF Çifti 3765 Dilim LUT 37 Dilim Yazmacı 406 Blo RAM (36) 6 Blo RAM (8) 7 DSP Bloğu 0 Hız Derecesi - -3 Azami Çalışma 85 MHz 349 MHz Freansı 5. SONUÇ (CONCLUSION) Öncei çalışmalarda temelleri atılan [6] turbo od çözme yapıları, bu çalışmada gerçelenmiş ve gerçelenen sistemin, uramsal avramlarla tutarlı bir şeilde çalıştığı görülmüştür. Girişte de belirtildiği gibi, gerçelenen BCJR turbo od çözücü, ticari bir ürün olan Log-MAP turbo od çözücü [9] ile ıyaslanmıştır. Bu ıyaslama sonucunda, gerçelenen BCJR turbo od çözücünün belendiği gibi daha yüse BER performansı gösterdiği gözlenmiştir. Turbo odların icat edildiği günden bu yana, uramsal olara yüse BER performansı gösteren BCJR algoritmasının gerçeleştirimi, geçmiş tenolojiler ile bu algoritmanın prati bir gerçeleştiriminin olmaması sebebiyle hep açınılan bir çalışma olmuştur. Anca günümüz tenolojisi, önemsiz bedeller ödeyere (önemsiz derecede azalmış toplam veri hızı ve hafıza elemanı sarfiyatı), bu algoritmanın prati bir şeilde gerçelenmesine olana sağlamatadır. Bu çalışmada [0]; gelenesel, optimal turbo od çözme algoritması olan BCJR algoritması ullanılan bir turbo od çözücünün FPGA gerçeleştiriminin, günümüz VLSI tenolojisi de göz önüne alındığında Log-MAP algoritmasını ullanan turbo od çözücülere göre daha avantajlı olduğu anıtlanmıştır. Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0 83

O. Atar ve M.H.Sazlı BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi SEMBOLLER (NOMENCLATURE) R: RSC odlayıcının odlama oranı K: RSC odlayıcının cebirsel uzunluğu v: RSC odlayıcının hafızası G: Kod üreteci d : Sistemati bit C : RSC odlayıcının ürettiği od elimesi X : RSC odlayıcının ürettiği sistemati bit Y : RSC odlayıcının ürettiği parite biti R : Turbo od çözücünün aldığı gürültülü od elimesi x : Turbo od çözücünün aldığı gürültülü sistemati bit y : Turbo od çözücünün aldığı gürültülü parite biti z : Bileşen od çözücülerin ürettiği harici bilgi α : İleri ölçütler (alfa atsayıları) β : Geri ölçütler (beta atsayıları) γ : Durum geçiş ölçütleri (gama atsayıları) Λ(d ): İlgili sistemati bitin logaritmi benzerli oranı l : İlgili sistemati bitin logaritmi benzerli oranı m : RSC odlayıcının mevcut durumu m ' : RSC odlayıcının öncei durumu KAYNAKLAR (REFERENCES). Sazlı, M., H., Neural Networ Applications to Turbo Decoding, Dotora Tezi, Syracuse Universitesi, 003.. Shannon, C. E., A Mathematical Theory of Communications, Bell System Technical Journal, Vol. 7, pp.379-43, 63-656, 948. 3. Berrou, C., Glavieux, A., Thitimajshima, P., Near Shannon Limit Error-Correcting Coding and Decoding: Turbo Codes, Proceedings of IEEE International Conference on Communication, pp. 064-070, 993. 4. Bahl, L. R., Coce, J., Jeline, F., Raviv, J., Optimal Decoding of Linear Codes for Minimizing The Symbol Error Rate, IEEE Transactions on Information Theory, Vol. 0, pp. 84-87, 974. 5. Robertson, P., Hoeher P., Optimal and Sub- Optimal Maximum a Posteriori Algorithms Suitable for Turbo Decoding, European Transactions on Telecommunications, Vol. 8, pp. 9-5, 997. 6. Sazlı, M., H., Neural Networ Implementation of BCJR Algorithm Based on Reformulation Using Matrix Algebra, IEEE International Symposium on Signal Processing and Information Technology, pp. 83-837, 005. 7. Sazlı, M., H., Neural Networ Implementation of BCJR Algorithm, Digital Signal Processing, Vol 7; pp. 353-359, 007. 8. 3GPP, 3GPP Technical Specification, http://www.3gpp.org, 00. 9. Xilinx, Inc., 3GPP Turbo Decoder v4.0 Product Specification, Technical Journal, http://www.xilinx.com, 009. 0. Atar, O., BCJR Algoritması Kullanılan Turbo Kod Çözücülerin FPGA Gerçeleştirimi, Yüse Lisans Tezi, Anara Üniversitesi, 0. 83 Gazi Üniv. Müh. Mim. Fa. Der. Cilt 6, No 4, 0