تبلیغات
" /> باران الکترونیک - مطالب ابر محاسبات ریاضی با DSP
پنجشنبه 5 آذر 1394  11:25 ب.ظ
نوع مطلب: (DSP ،برنامه نوسی C ،) توسط: امیرحسین رستمی

نوآوری با پردازش سیگنال شروع می شود ...‏

در این مقاله ابتدا به بررسی تفاوت های پردازنده های ممیز ثابت و شناور می پردازیم، سپس با انجام ‏محاسبات ریاضی در پردازنده ممیز ثابت توضیح می دهیم.‏

Fixed-point‏ در مقابل ‏Floating-point

در پردازنده ‏DSP‏ ‏Floating-point‏ ضرب و جمع اعشاری در یک کلاک انجام می پذیرد ولی در ‏پردازنده ‏Fixed-point‏ برای ضرب یا جمع اعشاری تعداد زیادی کلاک لازم است.‏
پردازنده های ممیز شناور 32 بیتی و پردازنده های‎‏ ممیز ثابت‎ ‎‏16 بیتی می باشند.‏
در پردازنده های ممیز شناور زمان نوشتن برنامه سریع تر می باشد زیرا برنامه نویس نگران سرریز و ‏خطای گردن کردن نیست. در مقابل نوشتن برنامه برای پردازنده ممیز ثابت سخت تر است و برنامه ‏نویس باید برنامه بیش تری بنویسد تا از سریز جلوگیری کند.‏
پردازنده های ممیز شناور گران تر هستند و توان بیش تری مصرف می کنند اما پردازنده های ممیز ‏ثابت ارزان قیمت می باشند، توان مصرفی کمتری دارند و برای کارهای قابل حمل مناسب ترند.‏
مزیت اصلی که پردازنده ممیز شناور نسبت به ممیز ثابت دارد این است که نرخ سیگنال به نویز ‏‏(گرد کردن اعداد) در پردازنده ممیز شناور ‏ بسیار بالاتر از ممیز ثابت ‏است.‏

پردازنده ممیز ثابت
برای این که محاسبات اعشاری در ‏DSP‏ ممیز ثابت با سرعت بالا انجام شود، ابتدا اعداد اعشاری را بین 1- و ‏‏1+ نرمالیزه می کنند. سپس این اعداد را در ‏‎215 = 32768‎‏ ضرب می کنند. در انتها اعداد را گرد می کنند تا ‏بخش اعشاری حذف شود. به این فرمت نمایش ‏Q0.15‎‏ و یا به طور خلاصه ‏Q15‎‏ می گویند. یک بیت برای ‏علامت و 15 بیت برای قسمت صحیح می باشد که در مجموع 16 بیت می شود.‏
فرمت ‏Q3.12‎
در فرمت ‏Q15‎، 15 بیت اعشاری و صفر بیت صحیح می باشد. می توان ترکیبی از بیت های اعشاری و صحیح نیز داشت. برای ‏مثال 3 بیت صحیح و 12 بیت اعشاری برای نمایش اعداد بین ‏‎(-‎32768‎)   ⁄  2^12 ‎‏ تا ‏‎(+32768‎)   ⁄  2^12 ‎‏ یا 8- تا 9997/7 ‏داشت.‏
به عنوان یک مثال کاربردی بست تیلور سینوس را در نظر بگیرید:‏
sin(x) = c1*x + c2*x^2 + c3*x^3 + c4*x^4 + c5*x^5‎
c1 = 3.140625x
c2 = 0.02026367‎
c3 = − 5.3251‎
c4 = 0.5446778‎
c5 = 1.800293‎
همان که مشاهده می کنید ضرایب بین 5- تا 3 می باشند. به جای نرمالیزه کردن و نمایش اعداد به فرمت ‏Q15‎‏ می توان از فرمت ‏Q3.12‎‏ برای دقت به تر استفاده کرد. کافی است تا ضرایب را در 212‏‎ ‎‏ ضرب کنیم و نتیجه نهایی را گرد کنیم تا اعداد به فرمت ‏Q3.12‎‏ ‏نشان داده شوند.‏
(برای ادامه مطلب به ادامه مطلب بروید)


نظرات()       
آخرین پست ها