यह बैंडविड्थ और विलंबता के एक सवाल के लिए नीचे आता है। एक सरल प्रणाली के लिए आइए 1GS / s नमूना दर और 10-बिट ए / डी कनवर्टर के साथ 100 मेगाहर्ट्ज बैंडविड्थ के साथ एक जांच मान लें (मेरे पास 8-बिट स्कोप के साथ बुरे अनुभव हैं)।
मैं चाहता हूं कि पीसी पर एक वास्तविक नमूना प्रदर्शन हो, जिसमें न्यूनतम 10 मिनट की खिड़की हो - 10ns - 100MHz साइन लहर का 1 चक्र और अधिकतम विंडो (इसमें मैं आपके लिए उदार रहूंगा) आधा सेकंड। दूसरे शब्दों में, सबसे कम समय सेटिंग 1ns / div की तरह होगी और उच्चतम .05 s / div है। मैं कई वोल्टेज मोड भी चाहता हूं - 100mV रेंज 20V तक चलो मान लें।
इसमें किस तरह की डेटा दरें शामिल हैं?
1Gs / s * 10 बिट्स / नमूना = 10Gbits / s
वे USB गति नहीं हैं। इससे दूर। और मैंने ओवरहेड को ध्यान में नहीं रखा। सबसे पहले, आपके पास बैंडविड्थ नहीं है। और यह सिर्फ बैंडविड्थ नहीं है। आपके वास्तविक समय के प्रदर्शन के लिए आपको लगातार बने रहने की आवश्यकता है। आपको हर 10 नैनो सेकंड में 100 बिट्स को अपने एप्लिकेशन लेयर में ट्रांसफर करना होगा । USB से उस तरह की स्थिरता नहीं हो सकती है। यह असाधारण मांगों के साथ एक डिवाइस को पूरा करने के लिए डिज़ाइन नहीं किया गया है - यह एक बस के रूप में डिज़ाइन किया गया है। और जब आप बस के मालिक होते हैं, तो आप उसे नियंत्रित नहीं कर सकते - उपकरण सिर्फ दास होते हैं। यदि होस्ट को डेटा भेजने के लिए किसी अन्य डिवाइस से बात करने की सुविधा मिलती है, तो आपका डेटा खो जाता है।
आप रोते हुए बेहोश हो सकते हैं - जब किसी व्यक्ति के लिए 'वास्तविक समय' 60Hz है तो कंप्यूटर पर वास्तविक समय का डेटा क्यों स्थानांतरित किया जाए? अगर आपको बस इतना करना है कि डिस्प्ले को अपडेट करें तो आपको निश्चित रूप से उस डेटा की आवश्यकता नहीं है। आपको छोड़कर - आपके प्रदर्शन में आपके द्वारा एकत्र किए गए सभी नमूनों का कुछ रैखिक संयोजन है। एवरेज्ड, कम से कम-मीन-स्क्वायर अनुमानित, क्यूबिक स्लाइन इंटरपोलेशन - इससे कोई फर्क नहीं पड़ता। एक अच्छा सुंदर प्रदर्शन बनाने के लिए जो कि डॉट्स का एक गुच्छा नहीं है, आपको उस डेटा के सभी की सबसे अधिक आवश्यकता है और आपको इसे पोस्ट करने की आवश्यकता है। कोई ट्रिगर? गणना मेजबान पर - आवेदन परत पर की जानी है। कोई फर्क नहीं पड़ता कि आप इसे किस तरह से स्लाइस करते हैं, किसी भी सटीकता के लिए 1GS / s दरों पर वास्तविक समय के डिस्प्ले के लिए, आपको परिमाण के आदेशों को स्थानांतरित करना होगा USB से अधिक डेटा हैंडल कर सकते हैं और आपको इसे अधिक मज़बूती से करना होगा '
इसके आसपास क्या तरीके हैं? एक वास्तविक समय प्रदर्शन मत करो। कुछ USB स्कोप केवल ट्रिगर मोड प्रदान करते हैं। ट्रिगर को डिवाइस पर नियंत्रित किया जाता है और जब एक ट्रिगर पाया जाता है, तो डेटा को एक बफर में एकत्र किया जाता है। जब बफर भरता है, तो यूएसबी स्कोप धीरे-धीरे इसे एप्लिकेशन में स्थानांतरित करता है और फिर एप्लिकेशन इसे प्रदर्शित करता है। यह गुंजाइश के उपयोग के लिए पर्याप्त है, लेकिन यह वास्तविक समय नहीं है। और अंतरण - जिसमें कुछ समय लगता है। यह असुविधाजनक है। और आमतौर पर ड्राइवर चूसते हैं। आप बता सकते हैं कि मुझे बुरे अनुभव हुए हैं।
मुझे हमेशा आश्चर्य होता है कि फायरवायर का उपयोग स्कोप के लिए क्यों नहीं किया गया। यह USB के कुछ सिरदर्द से बचता है। यह सहकर्मी से सहकर्मी है, समकालिक (सुसंगत समय) मोड प्रदान करता है और अपेक्षाकृत उच्च बैंडविड्थ है। आप इसके साथ 10MHz का रियल-टाइम स्कोप बना सकते हैं।
संपादन के बाद अपने बिंदुओं को संबोधित करने के लिए:
एक गुंजाइश की प्रयोज्यता कीमत के साथ काफी बढ़ जाती है। जब आप $ 200 के USB स्कोप से $ 500 के स्टैंडअलोन तक की छलांग लगाते हैं तो आपको सुविधाओं और बुनियादी कार्यक्षमता में जबरदस्त वृद्धि होती है। क्यों $ 200 खर्च करते हैं जब थोड़ा और अधिक के लिए आप एक वास्तविक गुंजाइश प्राप्त कर सकते हैं? अब जब चीन ने सस्ते, प्रभावी स्कोप्स की बाढ़ को खोल दिया है, तो $ 300 को बचाने के लिए बहुत कम कारण हैं जो आपको बाद में निराश करेंगे। 'फैंसी' स्कोप्स जिसमें ये खूबियाँ हैं, आजकल सस्ते हैं।
हां, अपने डेटा ट्रांसफर को केवल 60Hz के आसपास कुछ प्रदान करने के लिए निरंतर डेटा यूएसबी के साथ आसान हो जाएगा, लेकिन यह अभी भी कुछ ऐसा नहीं है जो आप करना चाहते हैं। अपने डीएसपी वर्गों के बारे में मत भूलना - केवल स्ट्रीम मात्रा से कुछ डेटा को डिमिशन तक ले जाना। जब आप निर्णय लेते हैं, तो आपको एंटीएलियासिंग फिल्टर जोड़ना होगा। जब आप ऐसा करते हैं, तो आप बैंडविड्थ खो देते हैं। यह आपके दायरे को कम उपयोगी बनाता है - यह आपके बैंडविड्थ को वास्तविक समय के प्रदर्शन पर (और केवल वास्तविक समय के लिए - ट्रिगर मोड ठीक होगा) आपके एनालॉग फ्रंट-एंड के बैंडविड्थ से बहुत कम तक सीमित कर देगा । एक आस्टसीलस्कप के सिग्नल प्रोसेसिंग पहलुओं को प्रबंधित करना मुश्किल व्यवसाय है।
उत्तरदायी प्रदर्शन साफ़ करें? पीसी? लगातार नहीं। भले ही आप ऐसा कैसे करें, आपको डेटा को बफर करने की आवश्यकता है। जैसा कि मैंने पहले कहा, जब आपके डेटा के माध्यम से USB की गारंटी नहीं होती है। मैं इसे अलग तरीके से कहूंगा: USB को हार्ड-टाइम डेटा ट्रांसफर को समायोजित करने के लिए डिज़ाइन नहीं किया गया है। निश्चित रूप से, बड़े अंतराल पर पर्याप्त मात्रा में डेटा के लिए आपको कुछ अच्छा प्रदर्शन मिल सकता है, लेकिन लगातार प्रदर्शन नहीं। आप बफरिंग का उपयोग करेंगे और एक बार जब आप अपने बफर को समय पर स्थानांतरित करने से चूक जाएंगे। फिर आपका डिस्प्ले स्किप हो जाता है, डेटा बासी होता है, आदि। क्लियर और रेस्पॉन्सिव रियल-टाइम डिस्प्ले के लिए हार्ड-टाइम डेटा लिंक, पीरियड की जरूरत होती है।
सरल ट्रिगर - फिर, हम लागत बनाम जटिलता बनाम उत्तरदायी हो जाते हैं। आपके डिवाइस को पता लगाने के लिए डिवाइस पर ट्रिगरिंग करने के लिए आपका डिवाइस केवल एक डंब डेटा पाइप नहीं हो सकता है जो USB पर गैर-जिम्मेदार तरीके से नमूनों को स्थानांतरित करता है। आपको डिवाइस पर बफर, बफर, बफर के नमूने लेने होंगेजब तक आप अपनी ट्रिगर की स्थिति नहीं देखेंगे। इसका मतलब है कि आपको अपने डिवाइस पर मेमोरी और बुद्धिमत्ता की आवश्यकता है - या तो एक बड़ा FPGA या एक बड़ा माइक्रोकंट्रोलर। जो आकार और स्थान को जोड़ता है। यदि आप एक FPGA का उपयोग करते हैं तो आपको बफर स्पेस के लिए बहुत सारे RAM की आवश्यकता के साथ तर्क ट्रिगर करने की मात्रा को संतुलित करना होगा। इसलिए आपका बफ़र इससे छोटा है जितना आप पहले से ही पसंद कर रहे हैं। इसका मतलब है कि आपको अपने ट्रिगर बिंदु के आसपास डेटा की न्यूनतम राशि मिलती है। जब तक आप बाहरी मेमोरी नहीं जोड़ते - तब तक आप अधिक कर सकते हैं। हालांकि यह आपके डिवाइस के आकार और लागत को बढ़ाता है - यह निश्चित रूप से केवल एक यूएसबी केबल से जुड़ा हुआ नहीं है।
आप 100 मेगाहर्ट्ज बैंडविड्थ प्राप्त करने के लिए भाग्यशाली होंगे - आमतौर पर 10x नमूना दर को बैंडविड्थ के लिए न्यूनतम कटऑफ माना जाता है। इसलिए यदि आपके पास 1GS / s नमूना दर है जो मुश्किल से आपको 100MHz बैंडविड्थ देता है। आप अधिक नहीं प्राप्त कर सकते हैं - एक 200MHz वर्ग लहर 200MHz साइन लहर की तरह लग रही है। वह चूसता है। वह गूंगा है - यह पेशेवर स्तर के पास कहीं नहीं है।
आपके अन्य अंक:
- $ 200? आप कैसे समझते है? भागों की सूची क्या है?
- उच्च गति संकेतों को पढ़ने के लिए अच्छे स्कॉप्स में हजारों डॉलर खर्च नहीं होते हैं। उनकी कीमत शायद एक हजार डॉलर है। 100 मेगाहर्ट्ज गुंजाइश विभाग में बच्चों का खेल है और आपका विचार उस बेंचमार्क के साथ-साथ $ 1000 के दायरे में भी नहीं आएगा
- हां, जिस तरह से आप इसका वर्णन करते हैं, वह वास्तव में बहुत सीमित होगा। यहां तक कि कुछ आवश्यकताओं के तकनीकी पहलुओं का मतलब है कि आपके पास बहुत सीमित डिवाइस है।
- यह लगभग उतना उपयोगी नहीं होगा जितना कि $ 1100 का दायरा मैंने एक लॉजिक एनालाइज़र और 60 मेगाहर्ट्ज एनालॉग बैंडविड्थ के साथ खरीदा था। मैं अपने परीक्षण उपकरणों के लिए भुगतान करूँगा जो जानबूझकर सीमित बच्चों के खिलौने के साथ चारों ओर डिक करते हैं।
आप एक इंजीनियर के रूप में अपने परीक्षण उपकरणों द्वारा जीते और मरते हैं। यदि आप निश्चित नहीं हैं तो आप भरोसा कर सकते हैं कि आप अपना समय बर्बाद कर रहे हैं। उच्च-गति संचार, सिग्नल प्रोसेसिंग और एम्बेडेड प्रसंस्करण की शक्ति (FPGAs या माइक्रोकंट्रोलर में) के बारे में आपके द्वारा बताई गई विशेषज्ञता की कमी को देखते हुए, मैं इसे दांव पर नहीं लगाऊंगा कि आप इसे स्वयं डिज़ाइन करें और कोई नहीं जो किसी के उत्तर में हो। महत्वाकांक्षा के अलावा।
अगर वहाँ आवश्यकताओं का एक बेहतर-लक्षित समूह था जो उस समुदाय की वास्तविक ज़रूरत पर हिट होता था जिसे सेवा नहीं दी जा रही थी, तो मैं देख सकता था कि तकनीकी रूप से संभव है कि मैं बोर्ड पर हूं। लेकिन आपकी अस्पष्ट आवश्यकताओं पर शोध नहीं किया गया है। आपको वहाँ उपलब्ध विकल्पों का एक सर्वेक्षण करने की आवश्यकता है, वहाँ के शौकीनों के लिए - USB स्कोप और स्टैंडअलोन का उपयोग करने वाले लोग क्या हैं, उनकी ताकत और कमजोरियाँ क्या हैं, और यह निर्धारित करें कि क्या कोई निचे नहीं भरा जा रहा है। अन्यथा यह केवल कल्पना है।