असतत तर्क डिजाइन


11

मुझे एक साधारण अलार्म डिवाइस बनाने का काम सौंपा गया है। यह सिर्फ कुछ निविष्टियों को मापने की जरूरत है और आउटपुट तदनुसार (इसे बहुत सरलता से डालने के लिए प्रतिक्रिया देगा!)। मेरे लिए, ऐसा लग रहा था कि कुछ असतत तर्क गेट्स का उपयोग करने से काम पूरा हो जाएगा, लेकिन एक सहयोगी (जो मेरे साथ काम कर रहे थे) ने फैसला किया कि हमें इसके बजाय प्रोग्रामेबल लॉजिक का उपयोग करना चाहिए। उनका मामला जीत गया, क्योंकि सबसे पहले, वह मुझसे अधिक वरिष्ठ हैं, और दूसरी बात, उनका मुख्य तर्क यह था कि प्रोग्रामेबल डिवाइस भविष्य हैं और हम भविष्य के प्रूफ उत्पाद बनाना चाहते हैं।

मेरा सवाल यह है कि क्या आपके पास एक ऐसा डिज़ाइन है जिसे आसानी से कुछ असतत लॉजिक गेट्स द्वारा लागू किया जा सकता है, क्या यह असतत लॉजिक के साथ डिज़ाइन करने लायक है? प्रोग्रामेबल पर उनका उपयोग करने का कोई फायदा है? या यह धीरे-धीरे प्रोग्रामेबल लॉजिक द्वारा पूरी तरह से चरणबद्ध होने जा रहा है? स्पष्ट होने के लिए, मुझे नहीं लगता कि 'मुझे विश्वास है कि यह मामला है' या 'व्यक्तिगत रूप से मुझे लगता है कि यह है ...' का जवाब नहीं चाहिए, लेकिन मैं यह जानना चाहूंगा कि क्या प्रोग्राम योग्य और असतत के साथ डिजाइन करने के लिए कोई वास्तविक लाभ हैं या नहीं यह उपभोक्ता इलेक्ट्रॉनिक्स उत्पादों में इन दिनों उनके साथ डिजाइन करने के लायक है?


16
यह 90 के दशक के एक प्रश्न की तरह लगता है ... wonC जीत गया है, इसकी बस इतनी आसान है कि इसमें एक को बर्बाद करना और यह सोचने के बजाय कि आधा दर्जन आईसी को एक साथ कैसे जोड़ा जाए, अकेले अंतरिक्ष खपत करते हैं।
प्लाज़्मा एचएच

9
असतत फाटकों का एक बड़ा फायदा है। कोई टूलकिन नहीं।
जोंक

कोई टूलकिन नहीं? आपका क्या मतलब है @ जोंक
जिज्ञासु

@PlasmaHH तो मूल रूप से आप कह रहे हैं कि भविष्य में असतत डिजाइन करने का कोई फायदा नहीं है?
जिज्ञासु

11
@ जोंक का मतलब क्या है, जब एक माइक्रोकंट्रोलर का उपयोग किया जाता है, तो आपको माइक्रोकंट्रोलर के लिए प्रोग्राम बनाने के लिए सॉफ्टवेयर की आवश्यकता होती है, जैसे आईडीई (ग्राफिकल या टेक्स्टुअल यूजर इंटरफेस) और कंपाइलर / लिंकर / आपके द्वारा उपयोग किए जाने वाले माइक्रोकंट्रोलर के लिए समर्पित अन्य उपकरण संयोजन उपकरण श्रृंखला।
मिशेल कीजर्स

जवाबों:


15

असतत तर्क डिजाइन पूरी तरह से चरणबद्ध नहीं होगा। हमेशा ऐसे अनुप्रयोग होंगे जहां असतत तर्क आईसी का उपयोग करना बेहतर होता है। जैसा कि बताया गया है, गति एक बड़ा लाभ है, हालांकि बहुत सारे अनुप्रयोगों में, गति अंतर सिर्फ इतना महत्वपूर्ण नहीं है।

जब डिजाइन चरण की बात आती है, यदि आप एक सर्किट डिजाइन करते हैं, जिसे सर्किट में विभिन्न बिंदुओं पर केवल 2 या 3 सरल लॉजिक फ़ंक्शन करने की आवश्यकता होती है, तो असतत फाटकों का उपयोग करना बेहतर होगा, बस लिखने के लिए डिज़ाइन समय बचाने के लिए कार्यक्रम भी।

उन प्रणालियों के लिए जिन्हें अधिक जटिल तर्क कार्य करने की आवश्यकता होती है, यह मूर्खतापूर्ण होगा कि वे एक सत्य सारणी पर काम करने में सारा समय व्यतीत करें, फिर यह पता लगाना कि कौन सा तर्क द्वार कहाँ जाता है आदि जब आप बस एक छोटा सा कार्यक्रम लिख सकते थे। आमतौर पर, अधिक आदानों का मतलब है कि अधिक फाटकों की आवश्यकता होती है और अब इसे असतत में डिजाइन करने में अधिक समय लगता है।

जिस स्थान पर असतत तर्क का वास्तव में फायदा है, वह सीखने में है। जब आप पहली बार लॉजिक डिज़ाइन के बारे में सीख रहे हैं और गेट्स कैसे काम करते हैं आदि, वह यह है कि वास्तविक लॉजिक गेट्स के साथ हाथ मिलाना और असतत भागों के साथ अलग-अलग फ़ंक्शंस डिज़ाइन करना बहुत अच्छा है। बुनियादी बातों की समझ पाने के लिए हमेशा एक अच्छा विचार। तो, इस वजह से, असतत तर्क हमेशा इस दुनिया में एक जगह होने जा रहा है। उपभोक्ता इलेक्ट्रॉनिक्स के लिए के रूप में? भविष्य निश्चित रूप से प्रोग्राम योग्य है।


सरल उत्तर, अच्छे अंक और पूछे गए सभी प्रश्नों के उत्तर! धन्यवाद!
जिज्ञासु

एक इलेक्ट्रॉनिक्स पृष्ठभूमि के साथ प्रोग्रामर के रूप में मैं यह बताना चाहूंगा कि यदि आप अपनी सत्य सारणी नहीं बनाते हैं, तो आप अपने कार्यक्रम को डिबग करने में उतना ही समय व्यतीत करेंगे जितना आपको अपनी सत्य तालिका को स्थापित करने के लिए समय की आवश्यकता होगी। आपकी सत्य तालिका आपके कार्यक्रम के लिए अच्छा दस्तावेज होगी।
चेटन

हाँ, मैं मानता हूँ, सत्य सारणी हमेशा उपयोगी होती है, मैं इस परिदृश्य के लिए इसे और अधिक प्रासंगिक बनाने के लिए उत्तर को संपादित करूँगा
MCG

1
अंतिम डिजाइन जिसे मैंने असतत तर्क का उपयोग करके लागू किया था, उसमें 5V तर्क और तुलनात्मक रूप से सरल कार्यक्रम की आवश्यकता का उपयोग करके "जितना संभव हो उतना कम" समय की आवश्यकता थी। मैं एक अच्छा चमकदार FPGAs पर एक टन पैसा खर्च कर सकता था या बस इसे "पुराने स्कूल" तरीके से कर सकता था। सैन्य कल्पना चिप्स पिकोसेकंड में पूर्ण वोल्टेज स्विंग से गुजरती हैं, कॉकरोच के साथ-साथ परमाणु सर्वनाश से बचेगी, और लगभग कुछ भी खर्च नहीं होगा। हमेशा असतत तर्क के लिए एक जगह होगी।
लन्दक

14

मैं बिल्कुल भी एक पेशेवर इलेक्ट्रॉनिक्स इंजीनियर नहीं हूं (वास्तव में सिर्फ एक शुरुआत), लेकिन मेरे कुछ सेंट हैं कि समर्पित असतत तर्क आईसीएस का उपयोग केवल तभी किया जाना चाहिए यदि समय महत्वपूर्ण है या यदि यह प्रोग्राम योग्य तर्क का उपयोग नहीं करने की आवश्यकता है।

एक माइक्रोकंट्रोलर के साथ आप अधिक जटिल तर्क को लागू कर सकते हैं और यह अधिक लचीला है। इसके अलावा हार्डवेयर को बदले बिना इसे फिर से शुरू किया जा सकता है।

इसके अलावा जब बहुत तेज़ समय की आवश्यकता होती है तो सॉफ़्टवेयर के साथ नहीं रखा जा सकता है, समर्पित तर्क आईसी का उपयोग किया जा सकता है। लेकिन एक अलार्म सिस्टम के लिए यह अनावश्यक लगता है (इसे नैनोसेकंड की प्रतिक्रिया समय की आवश्यकता नहीं है)।

नीचे फायदे / नुकसान की मेरी व्याख्या है:

                          Discrete logic (ICs)      Programmable logic/
                                                    (Microcontrollers)
 Nanosecond speed                  x                         -
 Just a few 'operators' needed     x                         -
 No tool chain needed              x                         -
 Cost Efficiency *                 -                         x
 PCB / proto size                  -                         x
 Flexibility for changing          -                         x
 Production cost                   -                         x
 Possibility to extend features    -                         x

* Assuming more than a few (different) logic functions needed

1
तो आपकी राय में गति मुख्य लाभ है? उत्तर के लिए +1, मुझे विशेष रूप से आपकी तालिका पसंद है!
जिज्ञासु

1
हां, हार्डवेयर सॉफ्टवेयर की तुलना में तेज है, इसलिए यदि आपको वास्तव में गति की आवश्यकता है, तो आपको हार्डवेयर आईसीएस की आवश्यकता है, अन्यथा मैं 'सॉफ्टवेयर' (माइक्रोकंट्रोलर) समाधान के लिए जाऊंगा। Btw, आजकल अधिक जटिल गति संवेदनशील समाधान FPGAs के लिए उपयोग किया जाता है।
मिशेल केइजर्स

1
मैं FPGA का उपयोग करने की योजना नहीं बना रहा था, मुख्य अभियंता ने पहले ही हार्डवेयर का फैसला कर लिया है! मैं जिज्ञासा से बाहर सवाल पूछ रहा था कि कोई फायदा कहाँ है। वैसे, मैं आपके उत्तर को समय पर स्वीकार करूंगा यदि कोई अन्य उत्तर नहीं आता है। बस समय से पहले स्वीकार करने से पहले दूसरों को जवाब देने का मौका देना चाहते हैं!
जिज्ञासु

5
मुझे लगता है कि आपके हेड इंजीनियर ने सही निर्णय लिए। एक अलार्म सिस्टम आम तौर पर एक ऐसी चीज है जिसे बढ़ाया जाएगा (उत्परिवर्ती स्रोतों से अधिक इनपुट प्राप्त करना और उस पर कार्य करना), यहां तक ​​कि उनमें से संयोजन बनाना, और बाद में एक स्वचालित एसएमएस भेजने जैसी कार्यक्षमता जोड़ना, एक बीपर / अलार्म सिग्नल को संकेत देना, शायद कुछ लॉगिंग सेंसर आदि
मिशेल कीजर्स

2
@MichelKeijzers आधुनिक FPGAs पारंपरिक असत्य तर्क आईसी के साथ पूरा कर सकने वाली किसी भी चीज़ की तुलना में काफी तेज़ हैं।
टस्टिक

10

यदि आप एक वाणिज्यिक उत्पाद बनाने जा रहे हैं, तो आपको वास्तव में एक डिज़ाइन नहीं चुनना चाहिए क्योंकि "यह प्रोग्राम करने योग्य है" या क्योंकि अधिक वरिष्ठ सहयोगी ने इसे प्रस्तावित किया है। इसके बजाय आपको प्रत्येक डिज़ाइन के साथ जुड़े जोखिम और लागत का अनुमान लगाना चाहिए , और सबसे कम लागत और स्वीकार्य जोखिम स्तर के साथ एक को चुनना चाहिए। एक शुरुआत के लिए:

  • व्यक्तिगत घटकों की कीमत लागत में जुड़ जाती है
  • आवश्यक पीसीबी आकार और जटिलता लागत में जोड़ता है
  • आवश्यक डिजाइन प्रयास और उपकरण लागत में जोड़ता है
  • आवश्यक परीक्षण और प्रमाणन लागत में जोड़ता है

  • लचीलेपन की कमी (उदाहरण के लिए असतत तर्क में परिवर्तन एक नई पीसीबी की आवश्यकता होती है) एक जोखिम है
  • आपकी टीम में एक विशेष तकनीक के साथ अनुभव की कमी एक जोखिम है
  • परियोजना की आवश्यकताओं को पूरा करने में असमर्थता (जैसे लक्ष्य बिजली की खपत) एक जोखिम है

यदि आपके विशेष प्रोजेक्ट के लिए असतत तर्क ICs सोर्सिंग सस्ता है, तो आपकी टीम को इस तरह के डिजाइन के साथ अनुभव है और आप मानते हैं कि लचीलेपन की कमी महत्वपूर्ण नहीं है, असतत तर्क का उपयोग नहीं करने का कोई कारण नहीं है।


सच सच। तो आपको लगता है कि असतत तर्क के लिए भविष्य है?
जिज्ञासु

4
@ गंभीर मुझे अभी भी व्यक्तिगत BJTs और MOSFETs का उपयोग यहां और वहां बुनियादी तर्क कार्यों को लागू करने के लिए किया जाता है। असतत तर्क कुछ सरल कार्यों के लिए एक उपयोगी अमूर्त है, इसलिए मुझे यकीन है कि यह पूरी तरह से गायब नहीं होगा।
दिमित्री ग्रिगोरीव

7

एक पहलू अन्य उत्तर भूल रहे हैं सुरक्षा है। असतत तर्क सर्किट अधिक जटिल माइक्रोकंट्रोलर डिजाइनों की तुलना में अधिक विश्वसनीय हैं। मैंने हाइड्रोजन प्रोटोटाइप कार बनाने में मदद की, सभी सुरक्षा-सर्किट असतत तर्क का उपयोग करके डिजाइन किए गए थे। सुरक्षा और विश्वसनीयता एक ऐसा पहलू है जिसे आप एक अलार्म सिस्टम डिजाइन करने पर विचार करना चाहते हैं।


3
यह आम तौर पर सच नहीं है। एक भयावह असुरक्षित असतत प्रणाली और एक प्रोसेसर पर एक अविश्वसनीय रूप से सुरक्षित और मजबूत प्रणाली का निर्माण कर सकता है। आपकी टीम के पास प्रोसेसर का उपयोग करने का कौशल नहीं है, लेकिन यह इसे स्वाभाविक रूप से असुरक्षित नहीं बनाता है। आपके पास एक प्रोसेसर में बड़े पैमाने पर दोहराव हो सकता है, जो असतत प्रणाली में अव्यवहारिक होगा।
awjlogan

1
@awjlogan आप उन दोनों चीजों को कर सकते हैं, लेकिन आपका असतत तर्क आपातकालीन स्टॉप कभी भी सक्रिय होने में विफल नहीं होगा क्योंकि एक अप्रत्याशित स्थिति ने इसके एक और हिस्से को अनंत लूप में भेज दिया है। सुरक्षा-महत्वपूर्ण प्रणालियाँ यथासंभव सरल होनी चाहिए
user253751

1
@ मिनीबिस खराब डिज़ाइन और कल्पना है, जो एक प्रोसेसर के लिए अंतर्निहित नहीं है। हमेशा एक प्रणाली में विफलता की संभावना है, असतत, FPGA, या जो भी हो। तिजोरी में विफल होने वाले सहमत यथासंभव सरल होना चाहिए, इसका मतलब यह नहीं है कि उन्हें असतत होने की आवश्यकता नहीं है।
11 अगस्त

5
@ आईमिसिस असतत तर्क अकेले टांका दोष के कारण एक निश्चित डिजाइन आकार के एमसीयू की तुलना में कम विश्वसनीय हो जाता है। और अगर असतत तर्क में ट्रिगर शामिल हैं, तो आपको निषिद्ध सिस्टम स्टेट्स के साथ ठीक वैसी ही समस्या है जैसी आप सॉफ्टवेयर में करते हैं।
दिमित्री ग्रिगोरीव

4
असतत भागों में एक गलती के मामले में अधिक पूर्वानुमान लगाने योग्य कार्य हो सकता है ...
रैकैंडबॉमनमैन

4

मुझे स्वीकार करना होगा, जब भी मुझे कुछ जटिल कॉम्बीनेटरियल लॉजिक प्लस और कुछ टाइमर करने होते हैं, तो मैं असतत लॉजिक से बिल्कुल भी परेशान नहीं होता हूं, लेकिन एटीटीनी के लिए हमेशा कम से कम असेम्बलर प्रोग्राम को कोड करता हूं (यदि आपको बेहतर लगे तो PIC का उपयोग करें)।

संयोजन तर्क अधिकतम कोडांतरक की 20 पंक्तियों (कई लुकअप टेबल) पर है। प्रत्येक सॉफ्टवेयर टाइमर एक और 10 लाइनें जोड़ता है। हार्डवेयर टाइमर भी कम। आपको बोर्ड पर A / D कनवर्टर, तुलनित्र, PWM पीढ़ी होने का भी लाभ मिलता है, क्या आपको उन लोगों की आवश्यकता है।

केवल नुकसान आपको इस भाग को फ्लैश करना था। कभी-कभी यह एक शो-स्टॉपर होता है, लेकिन यह शायद ही कभी मामला होता है। बड़ा लाभ यह है कि आपको बोर्ड पर बहुत कम जगह की आवश्यकता है, रूटिंग बहुत सरल है, और यदि आवश्यक हो तो आप आसानी से तर्क कार्यों को बदल सकते हैं।


अलग-अलग लॉजिक IC के लिए शेष उपयोग मामला तब है जब चीजों को 1 .s से अधिक तेज काम करना पड़ता है।


थोड़ा बंद विषय, लेकिन ATTiny x17 / x16 भागों में 3-इनपुट LUTs में दो निर्मित हैं। वास्तव में बहुत आसान है!
awjlogan

4

अंत उत्पाद में - तर्क को असतत करने के लिए कई फायदे नहीं हैं अगर हम उपभोक्ता डिवाइस पर बात कर रहे हैं। अपवाद कुछ ऐसा होगा जो प्रतिकूल परिस्थितियों के खिलाफ बहुत ऊबड़-खाबड़ होने की जरूरत है, या पूरी तरह से आसान करने के लिए बहुत आसान है (छिपे हुए कीड़े के लिए वास्तविक जटिलता और क्षमता कुछ फर्मवेयर के आधार पर बहुत अधिक है), या कि आप बहुत से फिर से निर्माण करने में सक्षम होना चाहते हैं। आने वाले दशकों के लिए समान भागों (74xx पैरों के निशान बहुत धीरे-धीरे बदलते हैं, भले ही प्रौद्योगिकी पत्र बदल जाएं :))।

कुछ ऐसा जो आप वास्तव में विवेक के साथ बेहतर कर सकते हैं वह है स्व-समकालिकता, अतुल्यकालिक तर्क (एक चीज़ का पूरा होना तुरंत दूसरी चीज़ को ट्रिगर करता है)। इस तरह के डिजाइनों की वैधता एक पवित्र युद्ध विषय है। चिंता न करें, तुल्यकालिक लोग आपको हरा देना चाहेंगे लेकिन आपको बस उनकी घड़ी को दूर ले जाना होगा, वे निरर्थक रूप से इसके लिए हमेशा इंतजार करेंगे।

जब यह डिजाइन कार्यप्रणाली की बात आती है, तो मैं कहूंगा कि यह डिज़ाइनर की पसंदीदा शैली पर निर्भर करता है - एक CPLD डिवाइस जिसे आप सचमुच लाइव देख सकते हैं ("चलो उस तार को पिन से छूते हैं जब तक कि कुछ क्लिक में"), एक ratsnest दृश्य में, और एक मेजबान पीसी से शक्ति के तहत (नकली स्पार्क्स के साथ जब आप एक तार को एक पिन को छूते हैं, तो अधिमानतः, केवल परिवेश के लिए) निश्चित रूप से असतत तर्क पसंद करने वाले लोगों द्वारा पसंद किया जाएगा :)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.