این مقاله با فرمت WORD بوده قابل ویرایش است و همچنین آماده پرینت می باشد .
موضوع پایان نامه:
پياده سازی بلادرنگ کدک صحبت استاندارد G.728 بر روی پردازنده TMS320C5402
فهرست
مقدمه 4
فصل 1 : بررسی و مدل سازی سيگنال صحبت
1-1- معرفی سيگنال صحبت 6
1-2- مدل سازی پيشگويی خطی 10
1-2-1- پنجره کردن سيگنال صحبت 11
1-2-2- پيش تاکيد سيگنال صحبت 13
1-2-3- تخمين پارامترهای LPC
فصل 2 : روش ها و استانداردهای کدينگ صحبت
2-1- مقدمه 15
2-2- روش های کدينگ 19
2-2-1- کدرهای شکل موج 21
2-2-2- کدرهای صوتی 22
2-2-3- کدرهای مختلط 24
الف- کدرهای مختلط حوزه فرکانس 27
ب- کدرهای مختلط حوزه زمان 29
فصل 3 : کدر کم تاخير LD-CELP
3-1- مقدمه 34
3-2- بررسی کدرکم تاخير LD-CELP
3-2-1- LPCمعکوس مرتبه بالا 39
3-2-2- فيلتر وزنی شنيداری 42
3-2-3- ساختار کتاب کد 42
3-2-3-1- جستجوی کتاب کد 43
3-2-4- شبه ديکدر 45
3-2-5- پست فيلتر 46
فصل 4 : شبيه سازی مميزثابت الگوريتم به زبان C
4-1- مقدمه 49
4-2- ويژگی های برنامه نويسی مميزثابت 50
4-3- ساده سازی محاسبات الگوريتم 53
4-3-1- تطبيق دهنده بهره 54
4-3-2- محاسبه لگاريتم معکوس 58
4-4- روندنمای برنامه 59
4-4-1- اينکدر 63
4-4-2- ديکدر 69
فصل 5 : پياده سازی الگوريتم برروی DSP
5-1- مقدمه 74
5-2- مروری بر پياده سازی بلادرنگ 75
5-3- چيپ های DSP
5-3-1- DSPهای مميزثابت 77
5-3-2- مروری بر DSPهای خانواده TMS320
5-3-2-1- معرفی سری TMS320C54x
5-4- توسعه برنامه بلادرنگ 81
5-5- اجرای برنامه روی برد توسعه گر C5402 DSK
5-5-1- بکارگيری ابزارهای توسعه نرم افزار 84
5-5-2- استفاده از نرم افزارCCS
5-5-3- نتايج پياده سازی 94
5-6-نتيجه گيری و پيشنهاد 97
- ضمائم
ضميمه (الف): ديسکت برنامه های شبيه سازی مميز ثابت به زبان C و پياده سازی کدک به زبان اسمبلی
ضميمه (ب) : مقايسه برنامه نويسی Cو اسمبلی 98
- مراجع 103
Abstract
G.728 speech codec is a low delay ITU standard codec which could provide toll quality speech in 16kb/s. It is specially designed for delay sensitive applications like satellite telephony, Internet, and mobile networks.
In this thesis real time implementation of full duplex G.728 encoder and decoder on TMS320C5402 is presented. Using a combinatorial technique for TMS programming, the programming time and complexity have been decreased to 30% comparing with traditional assembly programming. First a fixed point simulation of the codec algorithm has been programmed in C and it is compiled to assembly using CCS (Code Composer Studio) and manually optimized. Then some of the critical functions regarding MIPS, have been programmed in assembly for achieving real time implementation. Finally, implementation results have been presented.
Keywords:Speech Coding & Compression, Real Time Implementation, DSP,
TMS320C5402, DSK Board
چکيده
کدک صحبت استاندارد G.728، يک کدک کم تاخير است که صحبت با کيفيت عالی را در نرخ بيت 16 kbpsارائه می دهد و برای شبکه های تلفن ماهواره ای و اينترنت و موبايل که به تاخير زياد حساس هستند ، مناسب است. در اين رساله به پياده سازی بلادرنگ اينکدر و ديکدر G.728بصورت دوطرفه کامل ( Full Duplex )بر روی پردازنده TMS320C5402می پردازيم .
روشی ترکيبی برای برنامه نويسی TMSارائه می شود که در آن زمان وپيچيدگی برنامه نويسی نسبت به برنامه نويسی دستی به 30% کاهش می يابد . در اين روش پس از برنامه نويسی و شبيه سازی مميزثابت الگوريتم کدک به زبان C، با استفاده از نرم افزار ( Code Composer Studio ) CCS، برنامه به زبان اسمبلی ترجمه شده و بهينه سازی دستی در کل کد اسمبلی صورت می گيرد . سپس بعضی از توابع مهم برنامه از نظر MIPS، بصورت دستی به زبان اسمبلی بازنويسی می شوند تا برنامه بصورت بلادرنگ قابل اجرا گردد . در پايان نتايج اين پياده سازی ارائه می شود .
کلمات کليدی
کدينگ و فشرده سازی صحبت ، پياده سازی بلادرنگ ، DSP، TMS320C5402 برد DSK
- مقدمه
امروزه در عصر ارتباطات و گسترش روزافزون استفاده از شبكه هاي تلفن ،موبايل و اينترنت در جهان ومحدوديت پهناي باند در شبكه هاي مخابراتي ، كدينگ و فشرده سازي صحبت امري اجتناب ناپذير است . در چند دهه اخير روشهاي كدينگ مختلفي پديدآمده اند ولي بهترين و پركاربردترين آنها كدك هاي آناليزباسنتز هستند كه توسط Atal & Remedeدر سال 1982 معرفي شدند [2]. اخيرا مناسبترين الگوريتم براي كدينگ صحبت با كيفيت خوب در نرخ بيت هاي پائين و زير 16 kbps، روش پيشگويي خطي باتحريك كد (CELP)مي باشد كه در سال 1985 توسط Schroeder & Atalمعرفي شد [8]و تا كنون چندين استاندارد مهم كدينگ صحبت بر اساس CELPتعريف شده اند .
در سال 1988 CCITTبرنامه اي براي استانداردسازي يك كدك 16 kbpsبا تاخيراندك و كيفيت بالا در برابر خطاهاي كانال آغاز نمود و براي آن كاربردهاي زيادي همچون شبكه PSTN،ISDN،تلفن تصويري و غيره در نظر گرفت . اين كدك در سال 1992 توسط Chen et al. تحت عنوان LD-CELPمعرفي شد[6]و بصورت استاندارد G.728در آمد[9]و در سال 1994 مشخصات مميز ثابت اين كدك توسط ITUارائه شد[10]. با توجه به كيفيت بالاي اين كدك كه در آن صحبت سنتزشده از صحبت اوليه تقريبا غيرقابل تشخيص است و كاربردهاي آن در شبكه هاي تلفن و اينترنت و ماهواره اي در اين گزارش به پياده سازي اين كدك مي پردازيم .
در فصل اول به معرفي وآناليز سيگنال صحبت پرداخته مي شود و در فصل دوم روش ها و استانداردهاي كدينگ بيان مي شوند . در فصل سوم كدك LD-CELPرا بيشتر بررسي مي كنيم و در فصل چهارم شبيه سازي مميز ثابت الگوريتم به زبان Cرا بيان مينمائيم. ودر پايان در فصل 5 به نحوه پياده سازي بلادرنگ كدكG.728بر روي پردازنده TMS320C5402مي پردازيم.
فصل 1
بررسي و مدل سازي سيگنال صحبت
1-1–معرفي سيگنال صحبت
صحبت در اثر دميدن هوا از ريه ها به سمت حنجره و فضاي دهان توليد ميشود. در طول اين مسير در انتهاي حنجره، تارهاي صوتي[1] قرار دارند. فضاي دهان را از بعد از تارهاي صوتي ، لوله صوتي[2] مينا مند كه در يك مرد متوسط حدود cm17 طول دارد . در توليد برخي اصوات تارهاي صوتي كاملاً باز هستند و مانعي بر سر راه عبور هوا ايجاد نميكنند كه اين اصوات را اصطلاحاً اصوات بي واك [3] مينامند. در دسته ديگر اصوات ، تارهاي صوتي مانع خروج طبيعي هوا از حنجره ميگردند كه اين باعث به ارتعاش درآمدن تارها شده و هوا به طور غير يكنواخت و تقريباً پالس شكل وارد فضاي دهان ميشود. اين دسته از اصوات را اصطلاحاً باواك[4] ميگويند.
فركانس ارتعاش تارهاي صوتي در اصوات باواك را فركانس Pitchو دوره تناوب ارتعاش تارهاي صوتي را پريود Pitchمينامند. هنگام انتشار امواج هوا در لوله صوتي، طيف فركانس اين امواج توسط لوله صوتي شكل ميگيرد و بسته به شكل لوله ، پديده تشديد در فركانس هاي خاصي رخ ميدهد كه به اين فركانس هاي تشديد فرمنت[5] ميگويند.
از آنجا كه شكل لوله صوتي براي توليد اصوات مختلف، متفاوت است پس فرمنت ها براي اصوات گوناگون با هم فرق ميكنند. با توجه به اينكه صحبت يك فرآيند متغيير با زمان است پس پارامترهاي تعريف شده فوق اعم از فرمنت ها و پريود Pitchدر طول زمان تغيير ميكنند به علاوه مد صحبت به طور نامنظمي از باواك به بي واك و بالعكس تغيير ميكند. لوله صوتي ، همبستگي هاي زمان-كوتاه ، در حدود 1 ms، درون سيگنال صحبت را در بر ميگيرد. و بخش مهمي از كار كدكننده هاي صوتي مدل كردن لوله صوتي به صورت يك فيلتر زمان-كوتاه ميباشد. همان طور كه شكل لوله صوتي نسبتاً آهسته تغيير ميكند، تابع انتقال اين فيلتر مدل كننده هم نياز به تجديد[6]، معمولاً در هر 20msيکبارخواهد داشت.
در شكل (1-1 الف) يك قطعه صحبت باواك كه با فركانس 8KHzنمونه برداري شده است ديده ميشود. اصوات باواك داراي تناوب زمان بلند به خاطر پريود Pitchهستند كه نوعاً بين 2msتا 20msميباشد. در اينجا پريود Pitchدر حدود 8msيا 64نمونه است. چگالي طيف توان اين قطعه از صحبت در شكل (1-1 ب) ديده ميشود[3].
اصوات بي واك نتيجه تحريك نويز مانند لوله صوتي هستند و تناوب زمان- بلند اندكي را در بر دارند ، همانگونه كه در شكل هاي (1-1 ج) و (1-1 د) ديده ميشود ولي همبستگي زمان كوتاه به خاطر لوله صوتي در آنها هنوز وجود دارد.
بطوركلي سيگنال صحبت داراي افزونگي[7]زيادي است كه ناشي از عوامل ذيل هستند:
.
.
.
ادامه مقاله پس از خرید