একটি এফআইআর ফিল্টার কত ট্যাপ প্রয়োজন?


20

আমি কম পাস ফিল্টার বাস্তবায়নের জন্য এফআইআর ফিল্টারগুলির একটি সেট ডিজাইন করতে চাই। আমি ফিল্টারটির মাধ্যমে সংকেতটির বিলম্বিকে হ্রাস করার চেষ্টা করছি যাতে আমি ভাবছি যে আমি ব্যবহার করতে পারি নূন্যতম সংখ্যার কী হতে পারে be

আমি জানি যে আরও ট্যাপগুলি ফ্রিকোয়েন্সি এবং আরও ভাল স্টপ ব্যান্ড প্রত্যাখ্যান ইত্যাদির তীক্ষ্ণ কাট অফের দিকে নিয়ে যেতে পারে তবে আমি যা আগ্রহী তা আরও মৌলিক - যদি আমি সহ একটি কম পাস ফিল্টার বাস্তবায়ন করতে চাই বলার অর্থ কি এর মানে এই যে কম ফ্রিকোয়েন্সি সংকেতগুলিকে আরও কমিয়ে আনতে আমার কমপক্ষে 100 টি ট্যাপের প্রয়োজন? বা আমি কম ট্যাপগুলি নিয়ে পালাতে পারি এবং যদি তাই হয় তবে কিছু তাত্ত্বিক নিম্ন সীমা আছে?fs100

উত্তর:


24

সিগন্যালগুলির বেলানজারের ক্লাসিক ডিজিটাল প্রসেসিংয়ের উদ্ধৃতি দিয়েছিলেন - থিওরি এবং অনুশীলন , আপনার কাট-অফ ফ্রিকোয়েন্সিটি কোথায় তা নয়, তবে আপনার কতটা মনোযোগ প্রয়োজন, আপনি যে সিগন্যালটি সংরক্ষণ করতে চান তাতে আপনি কতটা রিপল সহ্য করতে পারবেন এবং সবচেয়ে গুরুত্বপূর্ণভাবে, কীভাবে how পাস থেকে স্টপব্যান্ডে (রূপান্তর প্রস্থ) আপনার রূপান্তর সংকীর্ণ হওয়া দরকার।

আমি ধরে নিচ্ছি যে আপনি একটি লিনিয়ার ফেজ ফিল্টার চান (যদিও আপনি ন্যূনতম বিলম্বিতা নির্দিষ্ট করেন তবে আমি ন্যূনতম ফেজ ফিল্টারকে ভাল ধারণা বলে মনে করি না, যদি না আপনি নিজের সংকেতটি দিয়ে কী করতে যাচ্ছেন তা ভালভাবে না জেনে থাকেন) । সেক্ষেত্রে ফিল্টার অর্ডার (যা ট্যাপের সংখ্যা)

N23log10[110δ1δ2]fsΔf

সঙ্গে

fs the sampling rateΔf the transition width, ie. the difference between end of pass band and start of stop bandδ1 the ripple in passband, ie. "how much of the original amplitude can you afford to vary"δ2 the suppresion in the stop band.

আসুন কিছু নম্বর প্লাগ করা যাক! আপনি of এর কাট-অফ ফ্রিকোয়েন্সি নির্দিষ্ট করেছেন , তাই আমি কেবল এগিয়ে যাব এবং দাবি করব যে আপনার স্থানান্তরের প্রস্থটি এর অর্ধেকের বেশি হবে না, সুতরাং ।fs100Δf=fs200

এসডিআর / আরএফ প্রযুক্তি থেকে আসা, 60 ডিবি দমন সাধারণত পুরোপুরি যথেষ্ট - হার্ডওয়ার, পাগল ব্যয় ছাড়াই আপনার ইনপুট থেকে অযাচিত সংকেত রাখার পক্ষে ভাল হবে না , সুতরাং, আসুন, সিপিইউকে একটি দুর্দান্ত ফিল্টার রাখার জন্য অপচয় করা উচিত না যা আরও ভাল filter আপনার হার্ডওয়্যার কি করতে পারে তার চেয়ে বেশি। তাই, ।δ2=60 dB=103

ধরা যাক আপনি পাসব্যান্ডে 0.1% এর প্রশস্ততা পরিবর্তনের সাথে বেঁচে থাকতে পারেন (আপনি যদি আরও বেশি করে বাঁচতে পারেন তবে দমন প্রয়োজনীয়তাটিকে আরও কঠোর করে তোলার বিষয়টি বিবেচনা করুন)। যে ।δ1=104

সুতরাং, এটিকে প্লাগ ইন করুন:

NTommy's filter23log10[110δ1δ2]fsΔf=23log10[110104103]fsfs200=23log10[110107]200=23log10[1106]200=23(log10106)200=236200=800 .

সুতরাং আপনার 200 টি ট্যাপের সাহায্যে আপনি খুব দূরে আছেন, যদি আপনি নিজের ফিল্টারটিতে অত্যন্ত সরু পাস ব্যান্ড ব্যবহার করেন তবে আমি যেমন ধরে নিয়েছিলাম।

নোট যে এই নয় আছে একটি সমস্যা হতে - প্রথম সব, একটি 800-কল ফিল্টার হয় ভীতিকর, কিন্তু উন্মুক্তভাবে, শুধুমাত্র প্রথম দর্শনে:

  • স্ট্যাকওভারফ্লোতে আমি এই উত্তরটি পরীক্ষা করে দেখেছি : আজকাল সিপিইউ দ্রুত , আপনি যদি কারও সিপিইউ-অনুকূলিত এফআইআর বাস্তবায়ন ব্যবহার করেন। উদাহরণস্বরূপ, আমি উপরের ফিল্টার স্পেসিফিকেশন রূপরেখার সাথে জিএনইউ রেডিওর এফএফটি-এফআইআর বাস্তবায়ন ব্যবহার করেছি । আমি প্রতি সেকেন্ডে 141 মিলিয়ন নমুনার পারফরম্যান্স পেয়েছি - এটি আপনার পক্ষে যথেষ্ট বা নাও হতে পারে। সুতরাং এখানে আমাদের প্রশ্ন-নির্দিষ্ট পরীক্ষার কেস (যা উত্পাদন করতে আমার কয়েক সেকেন্ড সময় নিয়েছে):জিএনইউ রেডিও ভিত্তিক এফএফটি এফআইআর ফিল্টারিংহারের ফলাফল: হার_avg = 1.40982e + 08
  • ডেসিমেশন: আপনি যদি কেবল ইনপুট ব্যান্ডউইথের একটি অংশ রাখতে চলেছেন তবে আপনার ফিল্টারটির আউটপুট মারাত্মকভাবে ওভারস্যাম্পল হবে। ডেসিমেশন প্রবর্তনের অর্থ হ'ল আপনার ফিল্টার আপনাকে প্রতিটি আউটপুট নমুনা দেয় না, তবে প্রতিটি একমাত্র - যা সাধারণত প্রচুর এবং প্রচুর পরিমাণে এলিয়াসিংয়ের দিকে পরিচালিত করে, তবে যেহেতু আপনি সমস্ত সংকেতটি মুছে ফেলছেন যা উপনাম হতে পারে, তাই আপনি পারেন বাঁচাতে হবে। চতুর ফিল্টার বাস্তবায়ন (পলিফেজ ডেসিমেটর) এম এর মাধ্যমে গণনার প্রচেষ্টা কমিয়ে আনতে পারে। আপনার ক্ষেত্রে, আপনি দ্বারা সহজেই হ্রাস করতে পারতেন এবং তারপরে, আপনার কম্পিউটারে কেবল গণনা করতে হবেMMM=50120050=24প্রতি ইনপুট নমুনায় গুন / সংগ্রহ - আরও অনেক সহজ। জিএনইউ রেডিওর ফিল্টারগুলির সাধারণত সেই ক্ষমতা থাকে। এবং এইভাবে, এমনকি এফএফটি এফআইআর এর বাইরেও (যা নিজেকে পলিফেসিং ডেসিমেটর বাস্তবায়নের পক্ষে খুব ভাল ধার দেয় না), আমি পারফরম্যান্সে 2 এর আরও একটি কারণকে চেপে ধরতে পারি। বেশি কিছু করতে পারি না। এটি আমার সিস্টেমে আমার অভিজ্ঞতায় র‌্যাম ব্যান্ডউইথের খুব কাছে। জন্য
  • লেটেন্সি: এটি সম্পর্কে চিন্তা করবেন না। সত্যিই, না, যদি না আপনার প্রয়োজন হয়। আপনি সাধারণ অডিও নমুনা হারের সাথে এটি করছেন? মনে রাখবেন, above উপরে উল্লিখিত। সুতরাং ফিল্টার আউটপুট গণনা করতে ব্যয় করা সময়টি কেবলমাত্র এমএস / এর লাইভ সিগন্যাল স্ট্রিমিংয়ের জন্য প্রাসঙ্গিক। অফলাইন ডেটা সহ ডিএসপির জন্য: ভাল, ক্ষতিপূরণ দেওয়ার জন্য আপনার ফিল্টারটির সমান্তরালে যা কিছু সংকেত রয়েছে তাতে বিলম্ব দিন। (যদি আপনার ফিল্টারটি লিনিয়ার ফেজ হয় তবে এটির বিলম্ব ফিল্টার দৈর্ঘ্যের অর্ধেক হবে)) এফআইআর ফিল্টারটির একটি হার্ডওয়্যার প্রয়োগের ক্ষেত্রে এটি প্রাসঙ্গিক হতে পারে।96kSsridiculously141MSs
  • হার্ডওয়্যার বাস্তবায়ন: সুতরাং সম্ভবত আপনার পিসির বা এম্বেড থাকা ডিভাইসের সিপিইউ এবং ওএস আপনাকে সত্যিকার অর্থে আপনার বিলম্বের সীমাবদ্ধতাগুলি পূরণ করতে দেয় না এবং তাই আপনি এফপিজিএ-প্রয়োগিত এফআইআরগুলি সন্ধান করছেন। প্রথম যে জিনিসটি আপনি লক্ষ্য করবেন তা হ'ল হার্ডওয়্যারটির জন্য আলাদা ডিজাইনের প্যারাডিজমা রয়েছে - একটি "আমি সবকিছু দমন করি but1100আমার ইনপুট রেট "ফিল্টারটির হার্ডওয়ারে আপনি যে স্থির পয়েন্ট সংখ্যাগুলি হ্যান্ডেল করতে চান তার বিস্তৃত প্রস্থের প্রয়োজন (যেমনটি কোনও সিপিইউতে ভাসমান পয়েন্ট সংখ্যা হিসাবে বিবেচিত হয়) So সুতরাং প্রথম কারণেই আপনি কেন সেই ফিল্টারটিকে একাধিকতে বিভক্ত করবেন? , ক্যাসকেড, আরও ছোট, এফআইআর ফিল্টারগুলি ডেসিমেট করে Anotherএর অন্য কারণটি হ'ল আপনি প্রতিটি ক্যাসকেড "পদক্ষেপ" সহ, আপনার গুণককে (সাধারণত, "ডিএসপি স্লাইস") কম হারে চালিয়ে দিতে পারেন, এবং সেজন্য, এগুলি (ডিএসপি স্লাইসের সংখ্যা) একাধিক ট্যাপের জন্য একটি গুণক ব্যবহার করে সাধারণত খুব সীমিত হয়) তবুও আরেকটি কারণ হ'ল বিশেষত অর্ধ-ব্যান্ড ফিল্টারগুলি, অর্থাৎ লোপপাসগুলি যা অর্ধেক ইনপুট ব্যান্ডকে দমন করে এবং অর্ধেক ইনপুট হার সরবরাহ করে, হার্ডওয়্যারে খুব দক্ষতার সাথে প্রয়োগযোগ্য (যেমন তাদের অর্ধেক রয়েছে) টেপগুলি শূন্য, এমন একটি জিনিস যা কোনও সিপিইউ / সিমডি প্রয়োগে ব্যবহার করা শক্ত)

3
1990 এর দশকের গোড়ার দিকে লেকের ডিএসপি রিয়েল টাইমে 256,000 টিপ এফআইআর ফিল্টার করছিল। 1200 ট্যাপ? Phfffft! ;-)
পিটার কে

2
@PeterK। এটাই স্পিরিট! 256kT এফআইআরটির প্রতি গভীর শ্রদ্ধা - তারা যে সংখ্যার যথাযথতাটি তৈরি করেছেন তা অবশ্যই ডিজাইনের নিখুঁত আকারের মতোই দমকে থাকা উচিত। প্রযুক্তিগতভাবে এগুলি নিজে উপভোগ করার জন্য খুব অল্প বয়সী হওয়ার কারণে 90 এর দশকের প্রথম দিকটি অবশ্যই একটি আকর্ষণীয় সময় ছিল। কিছুক্ষণ আগে একজন ইঞ্জিনিয়ারের সাথে কথা বলেছিলেন যে সেই দিনগুলিতে ডিএফটি আইসি ফিরে এসেছে; অ্যাপ্লিকেশন-নির্দিষ্ট ডিএসপি এএসআইসিগুলির প্রয়োজনীয়তা কেবলমাত্র উচ্চ বলে মনে হয়েছিল কারণ লোকেরা বুঝতে পেরেছিল যে কম্পিউটারের প্ল্যাটফর্মগুলির সাথে ডেটা-র ফলাফলগুলি প্রবাহিত করতে হ'ল ডিএসপি-ওয়াইন কী সম্ভব, তবে আশেপাশে কোনও "বহু-উদ্দেশ্য" অ্যাকসিলিটার নেই (আজকের মতো নয়)।
মার্কাস মুলার

@ পিটারক।, হ্যাঁ তবে তাদের সহায়তায় সর্বদা আমাদের পা টানতে থাকে।
রবার্ট ব্রিস্টো-জনসন

@ রবার্টব্রিস্টো-জনসন ওয়ে মাতে, এখানে কী অভ্যন্তরীন রসিকতা চলছে: ডি?
মার্কাস মুলার

2
@ মার্কাসমুলার, যদিও এখনকার তুলনায় এএসআইসিগুলির বর্ধমান জনপ্রিয়তা দেখা গিয়েছিল (এবং আমি মনে করি এটি এএসআইসি স্পেক / ডিজাইনার ছিলেন এমন প্রত্যেকে এখন কেবল এফপিজিএ ব্যবহার করেন) সেখানে প্রথমদিকে "বহু-উদ্দেশ্য" ডিএসপি উপস্থিত ছিল 90s। যে লেকডিএসপি জিনিসটি 6 ডিএসপি 576001 এর বাইরে করা হয়েছিল।
রবার্ট ব্রিস্টো-জনসন

14

দ্রুত এবং খুব ব্যবহারিক অনুমানের জন্য, আমি ফ্রেড হ্যারিসের নিয়ম-অফ-থাম্বটি পছন্দ করি:

Ntaps=Atten22BT

কোথায়:

অ্যাটেন হ'ল ডিবিতে কাঙ্ক্ষিত মনোযোগ,

BT হ'ল রূপান্তর ব্যান্ড ,BT=FstopFpassFs

Fstop এবং স্টপ ব্যান্ড এবং পাস ব্যান্ড ফ্রিকোয়েন্সি এবংFpass

Fs নমুনা ফ্রিকোয়েন্সি।

এটি 0.1 ডিবি এর পাসব্যান্ড রিপল সহ একটি লিনিয়ার ফেজ ফিল্টারের জন্য আপনি কী পাবেন তার খুব কাছে চলে আসে। আমি টিপসের এই নিয়মটি প্রায়শই প্রয়োজনীয় নলের সংখ্যার প্রথম কাটা ধারণা পেতে ব্যবহার করি এবং তারপরে ফিল্টার নকশা প্রক্রিয়ায় পুনরাবৃত্তির মাধ্যমে পরিবর্তন করতে পারি।

এছাড়াও লক্ষণীয়: এই নিয়মের অফ থাম্বটি কীভাবে ট্যাপের সংখ্যাটি চালিত করে তার মধ্যে দুর্দান্ত অন্তর্দৃষ্টি দেয়: ব্যান্ডের তাত্পর্য বন্ধ করুন এবং ট্রানজিশন ব্যান্ডের স্টেপনেস (এবং পাসব্যান্ড রিপল, তবে সাধারণত- অন্তত ফিল্টারগুলির জন্য যা আমাকে ডিজাইন করতে হয়েছিল ওয়্যারলেস কম অ্যাপ্লিকেশন - প্রসারণের প্রয়োজনীয়তার উপর নির্ভর করবে রিপল)। সুতরাং এফএস / 100 এ একটি কাটঅফটি উল্লেখ করার ক্ষেত্রে আপনার প্রশ্নটি অনুপস্থিত যে আপনার কত দ্রুত স্টপ ব্যান্ডে স্থানান্তরিত হওয়া দরকার।

উদাহরণ: 60 ডিবি অ্যাটেনুয়েশন, = 100KHz, = 1KHz, = 3KHzFsFpassFstop

Ntaps=60222/100=137 ট্যাপস (বৃত্তাকার)

এই সংখ্যাগুলির সাথে চারপাশে খেলেও ডেসিমেশন পন্থাগুলি ব্যবহার করে হ্রাস প্রক্রিয়াজাতকরণের তাত্পর্য প্রকাশ করতে পারে।


7

গৃহীত উত্তরটি যুক্ত করা হচ্ছে, কয়েকটি অতিরিক্ত রেফারেন্স। জড়িত থাকতে পারে এমন সূত্রগুলি আমি লিখব না। এই সূত্রগুলি বেশিরভাগ থেকে শুরু করার জন্য নিয়ম-এর-থাম্বস বা আনুমানিকতা দেয়। আপনার আসল নকশার জন্য আপনি এই নম্বরগুলির চারপাশে ঝাঁকুনি দিতে পারেন।

বেলঞ্জারের ডিজাইনের অন্যতম উত্স হ'ল ডিজিটাল ফিল্টারগুলিতে গণনা সংক্রান্ত জটিলতা, 1981, প্রোক। ইউরো. কনফারেন্স। সার্কিট থিওরি ডিজাইন, এম। এটি অর্জন করা বেশ কঠিন, তবে এটি কার্যক্ষম । মজার বিষয় হল, এটি গুণফল প্রতি বিটের সংখ্যা মূল্যায়নের জন্য সূত্রগুলিও নির্দিষ্ট করে, যা সীমাবদ্ধ-গাণিতিক প্রয়োগে বিবেচনা করা উচিত। ফরাসি ভাষায় আরও অ্যাক্সেসযোগ্য সংস্করণ হ'ল: মূল্যায়ন ডি লা কমপ্লেক্সিট ডেস ফিল্ট্রেস নাম্বারিকস , 1982।

আরও বেশ কয়েকটি সূত্র ফিনাইট ইমপালস রেসপন্স ফিল্টার ডিজাইন , ডিজিটাল সিগন্যাল প্রসেসিংয়ের হ্যান্ডবুক, 1993, টি। সামামাকিতে জড়ো করা হয়েছে।

অতি সাম্প্রতিককালে, আপনি সর্বোত্তম এফআইআর ডিজিটাল ফিল্টারস , 2000, কে। আইচিগে এট আল এর জন্য ন্যূনতম ফিল্টার দৈর্ঘ্যের সঠিক অনুমানটি পড়তে পারেন

সর্বশেষে, l0-نور্ট অপ্টিমাইজেশন , 2014 ব্যবহার করে ন্যূনতম ফিল্টার অর্ডার সহ এফআইআর ফিল্টারগুলির কাগজের দক্ষ নকশাটি এমন একটি নকশাকে দাবি করেছে যেখানে ক্রম ক্রম হ্রাস পেয়েছে।


4

আমি মনে করি না এখানে প্রকৃতপক্ষে কিছু ন্যূনতম সংখ্যক ট্যাপ রয়েছে। উত্তল অপ্টিমাইজেশান দ্বারা এফআইআর ফিল্টার উত্পন্ন করা খুব সাধারণ বিষয়, যেমন সাপেক্ষে 1

minimize max(|H(ω)|)for all ω in the stopband
subject to1δ|H(ω)|δ for all ω in the passband

আন্তঃ-ফ্রিকোয়েন্সি নমুনা আচরণ অনাকাঙ্ক্ষিত প্রভাব তৈরি করতে পারে বলে অপ্টিমাইজেশন করার সময় আমি যে প্রধান ব্যবহারিক সমস্যাগুলি ভাবতে পারি তা ব্যবহার করা ফ্রিকুয়েন্সি নমুনার সংখ্যা। ফিট কতটা ভাল হয়ে উঠতে পারে তা অবশ্যই ট্যাপের সংখ্যার উপর নির্ভর করে। আমি অনুমান করি আপনি বলতে পারেন যে ন্যূনতম সংখ্যা হ'ল সমস্যাটি যখন অক্ষম হয়ে যায়। সুতরাং একটি সমাধান সম্ভাব্যতা সমস্যা সমাধান করা হবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.