پردازش سیگنال دیجیتال یا Digital Signal Processing (DSP) بهره گیری از پردازش دیجیتال توسط کامپیوترها یا پردازشگرهای سیگنالیِ دیجیتالِ تخصصی تر، جهت اجرای عملیات متنوع پردازش سیگنال است. سیگنال های پردازش شده به این شکل، دنباله ای از اعداد هستند که نمونه هایی از یک متغیر پیوسته را در حوزه هایی مثل زمان، فضا یا فرکانس نمایش میدهند.
پردازش سیگنال دیجیتال و پردازش سیگنال آنالوگ زیرموضوعاتی از پردازش سیگنال هستند. کاربردهای DSP شامل پردازش صوت و گفتار، پردازش رادار، سونار و سایر آرایه های حسگری، تخمین چگالی طیفی، پردازش سیگنال آماری، پردازش تصویر دیجیتال، پردازش سیگنال برای مخابرات، سیستم های کنترل، مهندسی زیست پزشکی، لرزه شناسی و موارد دیگر است.
DSP میتواند دربرگیرنده عملگرهای خطی یا غیر خطی باشد. پردازش سیگنال غیرخطی ارتباط نزدیکی با شناسایی سیستم غیرخطی دارد و میتواند در حوزه های زمان، فرکانس و فضا-زمان پیاده سازی شود.
کاربرد رایانش دیجیتال در پردازش سیگنال مزیت های فراوانی نسبت به پردازش آنالوگ در بسیاری از زمینه ها از قبیل شناسایی و تصحیح خطا در مخابره و نیز فشرده سازی داده دارد. DSP هم در داده های جریانی و هم داده های ایستا (ذخیره شده) قابل استفاده است.
جهت آنالیز و دستکاری دیجیتال یک سیگنال آنالوگ (پیوسته)، باید آن را توسط یک مبدل آنالوگ به دیجیتال (Analog-to-Digital Convertor) یا ADC، دیجیتالی نمود. نمونه گیری معمولاً در دو مرحله انجام میشود، گسسته سازی و کمّی سازی. گسسته سازی به این معناست که سیگنال به بازه های زمانی مساوی تقسیم میشود و هر بازه توسط یک دامنه اندازه گیری شده نمایش داده میشود. کمّی سازی به این معناست که هر دامنه اندازه گیری توسط مقداری از یک مجموعه متناهی تقریب زده میشود. گرد کردن اعداد حقیقی به اعداد صحیح مثالی از این کار است.
قضیه نمونه گیری شنون-نایکوئیست بیان میکند که اگر فرکانس نمونه گیری بیشتر از دو برابر بزرگترین مولفه فرکانسی در سیگنال باشد، آنگاه سیگنال از نمونه ها بطور دقیق قابل بازسازی است. در عمل، فرکانس نمونه گیری اغلب بسیار بالاتر از فرکانس نایکوئیست است.
آنالیز ها و استنتاج های تئوری در DSP معمولاً روی مدل های سیگنالی زمان-گسسته بدون خطای دامنه (خطای کمّی سازی) “ایجاد شده” طی فرایندِ انتزاعی نمونه گیری انجام میشود. روش های عددی نیازمند سیگنال کمّی شده هستند، مثل سیگنال های تولیدی توسط یک ADC. نتیجه پردازش شده ممکن است یک طیف فرکانسی یا مجموعه ای از شاخص های آماری باشد. اما اغلب، یک سیگنال کمّی شده دیگر است که توسط یک مبدل دیجیتال به آنالوگ (Digital-to-Analog) (DAC) به شکل آنالوگ برگردانده میشود.
در DSP، مهندسین معمولاً سیگنال های دیجیتال را در یکی از حوزه های زیر مطالعه میکنند: حوزه زمان (سیگنال های تک بعدی)، حوزه مکان (سیگنال های چند بعدی)، حوزه فرکانس و حوزه موجک. آنها حوزه مورد نظر برای پردازش را با فرضی آگاهانه (یا با امتحان حالت های مختلف) انتخاب میکنند که کدام حوزه، خواص اساسی سیگنال و پردازش مورد استفاده روی آن را به بهترین شکل ارائه میکند. دنباله ای از نمونه ها از یک دستگاه نمونه گیری، نمایشی زمانی یا فضایی تولید میکنند در حالیکه تبدیل فوریه گسسته، نمایش حوزه فرکانسی را به دست میدهد.
متداول ترین روش پردازش در حوزه زمان یا فضا، تقویت سیگنال به روشی موسوم به فیلترینگ است. فیلترینگ دیجیتال عموماً متشکل از چند تبدیل خطی گرفته شده از تعدادی نمونه مجاور نمونه فعلی از سیگنال ورودی یا خروجی است. روش های مختلفی برای مشخص سازی فیلترها وجود دارد، برای مثال:
فیلتر را میتوان با یک بلوک دیاگرام نمایش داد که از آن میتوان برای استخراج یک الگوریتم پردازش نمونه جهت پیاده سازی فیلتر با دستورالعمل های سخت افزاری استفاده کرد. فیلتر را همچنین میتوان به عنوان یک معادله تفاضل (رابطه بازگشتی) توصیف کرد که مجموعه ای از صفر ها و قطب ها یا یک پاسخ ضربه یا پاسخ پله است.
خروجی یک فیلتر دیجیتال خطی به هر وردی را میتوان با پیچش (convolution) سیگنال ورودی با پاسخ ضربه بدست آورد.
سیگنال ها را معمولاً با تبدیل فوریه از حوزه زمان یا مکان به حوزه فرکانس منتقل میکنند. تبدیل فوریه، اطلاعات زمانی یا مکانی را به مولفه های دامنه و فاز هر فرکانس تبدیل میکند. در برخی کاربردها، چگونگی تغییرات فاز نسبت به فرکانس میتواند حائز اهمیت باشد. هنگامی که فاز بی اهمیت باشد، اغلب تبدیل فوریه به طیف قدرت تبدیل میشود، که عبارت است از توان دوم بزرگی هر مولفه فرکانسی.
متداول ترین هدف برای آنالیز سیگنال ها در حوزه فرکانس، آنالیز خواص سیگنال است. مهندس میتواند با مطالعه طیف فرکانسی، مشخص کند کدام فرکانس ها در سیگنال ورودی حضور دارند و کدام ها غایب هستند. آنالیز حوزه فرکانس را آنالیز طیف یا آنالیز طیفی نیز مینامند.
فیلترینگ، به ویژه در کارهای غیر همزمان (non-real time)، در حوزه فرکانسی نیز قابل دستیابی است، به این صورت که فیلتر در حوزه فرکانسی اعمال میشود سپس نتیجه حاصل به حوزه زمان (یا مکان/فضا) برگردانده میشود. این کار میتواند یک پیاده سازی اثربخش باشد و الزاماً به هر فیلتری پاسخ دهد، از جمله تقریباتی عالی از فیلترهای دیوار آجری.
تعدادی تبدیل پرمصرف در حوزه فرکانس وجود دارد. برای مثال، کِپسترام، یک سیگنال را توسط تبدیل فوریه به حوزه فرکانس میبرد، از آن لگاریتم میگیرد سپس یک تبدیل فوریه دیگر میگیرد. این عمل، ساختار همساز طیف اولیه را مشخص میکند.
فیلترهای دیجیتال در هر دو نوع FIR و IIR هستند. درحالیکه فیلترهای FIR همواره پایدار هستند، فیلترهای IIR حلقه های بازخوردی (فیدبک) دارند که ممکن است ناپایدار شوند و نوسان کنند. تبدیل Z ابزاری را جهت آنالیز مسئله پایداری فیلترهای IIR بدست میدهد. این تبدیل شبیه تبدیل لاپلاس است، که برای طراحی و آنالیز فیلترهای آنالوگ IIR مشابه استفاده میشود.
در آنالیز عددی و آنالیز تابعی، یک تبدیل موجک گسسته (Discrete Wavelet Transform) (DWT) هر تبدیل موجکی است که برای آن موجک ها بطور گسسته نمونه گیری شده اند. مثل سایر تبدیلات موجک، مزیت کلیدی آن نسبت به تبدیل فوریه، تفکیک پذیری زمانی آن است: این تبدیل هم اطلاعات فرکانسی و هم اطلاعات مکانی را دریافت میکند. دقت تفکیک پذیری زمان-فرکانسی طبق اصل عدم قطعیت در حوزه های زمان-فرکانس، محدود است.
زیرنویس تصویر: مثالی از تبدیل موجک گسسته مورد استفاده در JPEG2000. تصویر اصلی فیلتر بالاگذر شده است، که سه تصویر بزرگ تولید کرده، و هرکدام از این سه، تغییرات موضعی در روشنایی (جزییات) تصویر اصلی را توصیف میکنند. سپس فیلتر پایین گذر استفاده میشود که یک تصویر تقریبی تولید میکند؛ این تصویر، فیلتر بالاگذر میشود تا سه تصویر کوچکتر از جزییات تولید شود، سپس فیلتر پایین گذر میشود تا تصویر تقریبی نهایی را در گوشه چپ بالا تولید کند.
کاربردهای DSP شامل پردازش سیگنال های صوتی، فشرده سازی صوتی، پردازش تصویر دیجیتال، فشرده سازی ویدیو، پردازش گفتار، شناسایی گفتار، مخابرات دیجیتال، ترکیب کننده های ساز دیجیتال، پردازش سیگنال های رادار و سونار، پردازش سیگنال های مالی، لرزه شناسی و زیست دارو است. مثال های خاص شامل کدگذاری گفتار و انتقال آن در موبایل های دیجیتال، اصلاح صوتی اتاق در کاربردهای تقویت صوت و hi-fi، پیش بینی آب و هوا، پیش بینی اقتصادی، پردازش داده های لرزه نگاری، آنالیز و کنترل فرایندهای صنعتی، تصویربرداری پزشکی مثل اسکن های CAT و MRI، فشرده سازی MP3، گرافیک کامپیوتری، دستکاری تصویر، تداخل صوتی و اکولایزر، و واحدهای جلوه های صوتی است.
الگوریتم های DSP را میتوان روی کامپیوترهای معمولی و پردازشگرهای سیگنالی دیجیتال اجرا کرد. الگوریتم های DSP همچنین روی سخت افزارهای تخصصی مثل مدارهای مجتمع کاربرد خاص (application-specific integrated circuit) (ASIC) پیاده سازی میشوند. فناوری های بیشتر برای پردازش سیگنال دیجیتال شامل ریزپردازنده های قدرتمندتر همه منظوره، مدارهای مجتمع دیجیتال برنامه پذیر (Field-programmable gate array)(FPGA)، کنترلگرهای سیگنال دیجیتال (عمدتاً برای کاربردهای صنعتی مثل کنترل موتور) و پردازشگرهای جریان هستند.
برای سیستم هایی که نیاز به رایانش همزمان (real time) ندارند و داده های سیگنالی (چه ورودی چه خروجی) در دیتا فایل ها قرار دارند، میتوان پردازش را با یک کامپیوتر معمولی بطور مقرون به صرفه انجام داد. این عمل الزاماً هیچ فرقی با هیچ نوع پردازش داده ای ندارد، جز اینکه تکنیک های ریاضی DSP (از قبیل FFT یا تبدیل فوریه سریع) مورد استفاده قرار میگیرند، و معمولاً فرض میشود داده ها بطور یکنواخت در فضا یا زمان نمونه گیری شده اند. نمونه ای از این کاربرد، پردازش عکس های دیجیتال با نرم افزاری مثل فوتوشاپ است.
هنگامی که کاربرد مورد نیاز، همزمان است، DSP اغلب با پردازشگرها یا ریزپردازنده های تخصصی یا اختصاصی پیاده سازی میشود، گاهی اوقت با استفاده از چند پردازنده یا چند هسته پردازنده. این پردازشگرها ممکن است داده ها را با حساب نقطه ثابت یا ممیز شناور پردازش کنند. برای کاربردهای سنگین تر میتوان از FPGAها استفاده کرد. برای بیشتر کاربردهای سنگین یا محصولات حجم بالا، ASICها را میتوان بطور خاص برای کاربرد مورد نظر طراحی کرد.