जब एक कैस्केड इंटीग्रेटर-कंघी (CIC) फिल्टर के साथ एक संकीर्ण-बैंड संकेत को डिकिमेट करते हैं , तो कौन सा FIR फ़िल्टर CIC फ़्रीक्वेंसी प्रतिक्रिया की भरपाई करने के लिए अधिक उपयुक्त है?
जब एक कैस्केड इंटीग्रेटर-कंघी (CIC) फिल्टर के साथ एक संकीर्ण-बैंड संकेत को डिकिमेट करते हैं , तो कौन सा FIR फ़िल्टर CIC फ़्रीक्वेंसी प्रतिक्रिया की भरपाई करने के लिए अधिक उपयुक्त है?
जवाबों:
आपके प्रश्न का एक भी उत्तर नहीं है: किसी भी फ़िल्टर-डिज़ाइन समस्या के साथ, यह आपकी आवश्यकताओं पर निर्भर करता है। जैसा कि विकिपीडिया पृष्ठ पर बहुत अच्छी तरह से वर्णित किया गया है , CIC (कैस्केड-इंटीग्रेटर-कंघी) फिल्टर में इंटीग्रेटर और कंघी चरणों की एक जोड़ी होती है (इसलिए नाम)। प्रत्येक इंटीग्रेटर-कंघी चरण में एक समग्र आवेग प्रतिक्रिया होती है जो एक बॉक्सकार फिल्टर (यानी एक आयताकार आवृत्ति के साथ एक) के बराबर होती है। एक बॉक्सकार की आवृत्ति (परिमाण) प्रतिक्रिया में एक सिनिस फ़ंक्शन जैसा दिखता है, इसलिए समग्र सीआईसी संरचना में एक परिमाण प्रतिक्रिया होने वाली है जो कुछ पावर लिए लिए गए एक सिनस फ़ंक्शन की तरह दिखता है , जहां एन इंटीग्रेटर-कंघी चरणों की संख्या है।
हालाँकि, किसी भी एप्लिकेशन-विशिष्ट आवश्यकताओं के आधार पर आपके लिए बहुत सारे knobs नहीं हैं। आप CIC संरचना, कंघी की देरी और चरणों की संख्या के विघटन / प्रक्षेप अनुपात को बदल सकते हैं, लेकिन आप अभी भी सिनस-जैसी आवृत्ति प्रतिक्रिया के साथ फंस गए हैं, जो विशेष रूप से आदर्श नहीं है, क्योंकि यह सपाट नहीं है। मुख्य पालि और अपेक्षाकृत उच्च साइडेलोब हैं। इसलिए, CIC के लिए यह विशिष्ट है कि वह किसी अन्य फ़िल्टर का अनुसरण करे जो समग्र प्रतिक्रिया को "साफ़ करता है"।
रगड़: सीआइसी द्वारा आपके आवेदन के बाद परिभाषित किए जाने वाले किसी भी क्षतिपूर्ति फिल्टर से आपको क्या चाहिए। वास्तव में महत्वपूर्ण है समग्र झरना की प्रतिक्रिया, जिसे आप अपने आवेदन की आवश्यकताओं के आधार पर विवश करेंगे। कोई विशिष्ट फ़िल्टर नहीं है जो "सबसे उपयुक्त है।"
इसी तरह का प्रश्न था, https://dsp.stackexchange.com/a/1551/306 , और निम्नलिखित अन्य पोस्ट से उत्तर का एक सबसेट है।
आम तौर पर, CIC फ़िल्टर की भरपाई करने के लिए CIC फ़िल्टर प्रतिक्रिया के व्युत्क्रम का उपयोग क्षतिपूर्ति फ़िल्टर उत्पन्न करने के लिए किया जा सकता है। CIC की प्रतिक्रिया 2 है
जहां D, डिफरेंशियल डिले है, M, डिसिमिनेशन रेट है, और N फ़िल्टर ऑर्डर (कैस्केड फ़िल्टर की संख्या) है। व्युत्क्रम के रूप में निर्दिष्ट किया जा सकता है
एक बार जब हमारे पास क्षतिपूर्ति फ़िल्टर की आवृत्ति प्रतिक्रिया होती है, तो हम केवल एफआईआर फ़िल्टर की लंबाई चुन सकते हैं जो हम चाहते हैं। एफआईआर की लंबाई आवेदन विशिष्ट है। जाहिर है कि एफआईआर बेहतर मुआवजे को फ़िल्टर करती है।
निम्नलिखित इस सीधे आगे मुआवजे के भूखंड हैं।
आवृत्ति प्रतिक्रियाओं और भूखंडों को बनाने के लिए पायथन कोड निम्नलिखित है।
सुन्न आयात के रूप में एनपीपी से सुन्न आयात पाप, पेट, पीआई आयात pylab
D = 1; M = 7; N = 3
Hfunc = lambda w : abs( (sin((w*M)/2)) / (sin((w*D)/2.)) )**N
HfuncC = lambda w : abs( (sin((w*D)/2.)) / (sin((w*M)/2.)) )**N
w = np.arange(1024) * pi/1024
G = (M*D)**N
H = np.array(map(Hfunc, w))
Hc = np.array(map(HfuncC, w))
# only use the inverse (compensation) roughly to the first null.
Hc[int(1024*pi/M/2):] = 1e-8
plot(w, 20*log10(H/G))
plot(w, 20*log10(Hc*G))
grid('on')
1 अल्टर, "सीआईसी क्षतिपूर्ति फिल्टर को समझना"
2 आर। ल्योंस, "अंडरस्टैंडिंग डिजिटल सिग्नल प्रोसेसिंग", दूसरा संस्करण।, अप्रेंटिस हॉल, अपर सैडल नदी, न्यू जर्सी, 2004
ISOP (Interpolated Second Order Polynomial) अक्सर CIC पासबैंड डॉप के मुआवजे के लिए उपयोग किया जाता है।
इस फिल्टर की मतलाब प्रतिक्रिया का उपयोग करके दिखाया जा सकता है:
alpha = 0.01 ;
b = [1, alpha, -alpha] ;
h = mfilt.firsrc(1,1,b)
freqz( b )
अपनी आवश्यकताओं के लिए अल्फा चुनना मुश्किल हिस्सा है। सबसे खराब स्थिति प्रीफॉर्म ब्रूट फोर्स सिमुलेशन है, जो 0.001 वेतन वृद्धि में 0 से 0.5 तक लूपिंग करता है, जो अल्फा को ढूंढता है जिसके परिणामस्वरूप सबसे अच्छा ड्रॉप मुआवजा मिलता है। अपने पासबैंड के किनारे पर न्यूनतम त्रुटि के रूप में सर्वश्रेष्ठ डॉप मुआवजे को परिभाषित करना।
दक्षता के लिए इस फिल्टर को आम तौर पर कम डेटा दर पर रखा जाता है, प्रक्षेप के लिए सीआईसी से पहले, और सीआईसी के बाद विघटन के लिए।