DSP 101
M8 · L4
الوحدة 8 — تصميم الـ IIR filters
FIR قصاد IIR — المقايضات

عيلتين من الـ filters لهدف واحد — بس ببنى وكفاءات وخصائص مختلفة من الأساس. اتعلّم إمتى تختار كل واحدة.

1 / 9
DSP 101
M8 · L4
الفرق الجوهري
feedforward قصاد feedback

الـ FIR بيجمع الدخلات الموزونة بس — مفيش poles، مفيش feedback. والـ IIR بيضيف الخرجات اللي فاتت الموزونة — recursive وليه poles.

FIR
y[n] = \sum_{k=0}^{M} b_k\, x[n-k]
IIR
y[n] = \sum_{k=0}^{M} b_k\, x[n-k] - \sum_{k=1}^{N} a_k\, y[n-k]
2 / 9
DSP 101
M8 · L4
فجوة الكفاءة
نفس المواصفات، معاملات أقل بـ 4–5×

لـ low-pass filter حاد بـ transition band 0.1π وattenuation 40 dB:

32–46
الـ FIR taps
4
درجة الـ IIR الـ elliptic
4–5×
نسبة الكفاءة
الخلاصة
الـ poles بتدّي الـ IIR عند الدرجة 4 اللي الـ FIR محتاج من 32 لـ 46 tap عشان يوصله
3 / 9
DSP 101
M8 · L4
سلوك الـ phase
الـ linear phase — FIR بس

المعاملات المتماثلة في الـ FIR بتضمن linear phase — كل frequency بتتأخر بالتساوي وشكل الموجة بيتحفظ. أما الـ group delay بتاع الـ IIR فبيتفاوت على الـ passband.

  • الـ equalization الصوتي: لازم شكل الـ transients يتحفظ ← FIR
  • أشكال موجات رسم القلب: حرجة في التشخيص ← FIR
  • وضوح الكلام، وcontrol loops الـ RF: الـ phase distortion مقبول ← IIR
  • المعالجة الـ offline: filtfilt() بيدّي zero phase من IIR بضعف التكلفة
4 / 9
DSP 101
M8 · L4
الاستقرار والـ quantization
الـ FIR مستقر دايمًا

مفيش poles ← الـ FIR filters متقدرش تفقد الاستقرار تحت أي quantization. أما poles الـ IIR فممكن تطلع برا دايرة الوحدة لما المعاملات تتقرّب في الـ fixed-point.

  • الحل: نفّذ الـ IIR كـ biquad sections متسلسلة (SOS)
  • كل biquad بيتحكّم في زوج poles واحد بس — أقل حساسية للتقريب
  • الـ limit cycles (تذبذبات عند دخل صفر) ممكن تتدار في صيغة الـ biquad
  • الـ IIR بالـ floating-point محمي لحد كبير من عدم استقرار الـ quantization
5 / 9
DSP 101
M8 · L4
التكلفة الحسابية
عمليات MAC لكل sample

النوعين بينفّذوا عمليات multiply-accumulate، بس بمقاييس مختلفة جدًا. للـ response الحاد:

  • FIR (32–46 tap): 32–46 MAC/sample
  • IIR elliptic (الدرجة 4): ~9 MAC/sample
  • FIR طويل بالـ overlap-add: O(N log N) عن طريق blocks الـ FFT
  • سلاسل biquad للـ IIR: تكلفة صغيرة ثابتة مهما كانت الحدّة
استنتاج أساسي
الـ IIR بيكسب في تكلفة الـ real time؛ والـ FFT-FIR بيكسب في الـ filters الطويلة جدًا في وضع الـ blocks
6 / 9
DSP 101
M8 · L4
دليل القرار
تختار أنهي واحد إمتى
  • FIR: linear phase مطلوب — صوت، رسم قلب، اتصالات coherent
  • FIR: fixed-point وأنظمة الاستقرار فيها حرج
  • IIR: MCU محدود في الحسابات أو جهاز شغّال ببطارية
  • IIR: تقليد دايرة تناظرية (أدوات ضبط النغمة، الـ crossovers)
  • IIR: انتقال حاد جدًا بأقل memory وطاقة
  • الاتنين: crossovers الصوت — مقايضة الجودة والكفاءة
7 / 9
DSP 101
اختبار سريع

شوف إيه اللي ثبت

أربع أسئلة بتقارن FIR وIIR — الكفاءة والـ phase والـ quantization والاختيار.

السؤال 1 من 0
النتيجة 0/0

8 / 9
DSP 101
M8 · L4
أهم الخلاصات
اتعلّمت إيه
  • FIR: feedforward، مستقر دايمًا، linear phase تام ممكن
  • IIR: recursive (poles)، أكفأ بحوالي 4–5×، بس phase مش linear
  • عدم استقرار الـ IIR عند الـ quantization — استخدم biquads متسلسلة (SOS)
  • linear phase في الـ real time ← FIR بس؛ zero phase offline ← filtfilt()
  • طابق نوع الـ filter مع متطلبات الـ phase والاستقرار والموارد في تطبيقك
اقرا المقالة كاملة ←
9 / 9
1 / 8 صامت