अगोदर निर्देश केलेल्या बाबीसंबंधी बोलताना लॉजिक गेट्स हे डिजिटल इलेक्ट्रॉनिक्सचा आधार आहेत. या कारणास्तव, ते खूप महत्वाचे आहेत आणि जर तुम्हाला त्यांच्यासोबत काम करायचे असेल, तर ते काय आहेत, त्यांची रचना कशी आहे आणि त्यांचे कार्य तुम्हाला माहित असले पाहिजे. त्यामुळे तुम्ही अशा प्रकारचे दरवाजे असलेल्या बाजारात अस्तित्वात असलेल्या चिप्सच्या मालिकेचा वापर करू शकता जेणेकरून तुम्ही या तर्कानुसार काम करून तुमचे स्वतःचे प्रकल्प बनवू शकता.
हे दरवाजे, इतर सह एकत्रित इलेक्ट्रॉनिक घटक, आणि अगदी सारख्या प्लेट्ससह Arduino, ते निर्मात्यांना खूप खेळ देऊ शकतात जसे आपण स्वतः पाहू शकता.
लॉजिक गेट्स म्हणजे काय?
अगोदर निर्देश केलेल्या बाबीसंबंधी बोलताना लॉजिक गेट्स डिजिटल इलेक्ट्रॉनिक सर्किट्सच्या अंमलबजावणीसाठी ते डिजिटल लॉजिकचे मूलभूत घटक आहेत. हे गेट्स त्यांच्या इनपुटच्या स्थितीनुसार त्यांच्या आउटपुटवर कमी (0) किंवा उच्च (1) व्होल्टेज सिग्नल प्रदान करतात. त्यांना सामान्यतः एक निर्गमन आणि दोन प्रवेशद्वार असतात, परंतु 2 पेक्षा जास्त प्रवेशद्वार असलेले दरवाजे असू शकतात. याव्यतिरिक्त, इनव्हर्टिंग गेट किंवा नाही यासारखी वैशिष्ट्ये आहेत, त्यात फक्त एक इनपुट आणि एक आउटपुट आहे.
या बुलियन इनपुट्स आणि आउटपुटसाठी धन्यवाद तुम्हाला मिळू शकेल प्राथमिक बायनरी लॉजिक ऑपरेशन्स, जसे की बेरीज, गुणाकार, नकार इ.
त्यांची अंमलबजावणी कशी होते?
लॉजिक गेट्स केवळ एका मार्गाने लागू केले जाऊ शकत नाहीत. खरं तर, म्हणूनच भिन्न आहेत तार्किक कुटुंबे. यातील प्रत्येक कुटुंब वेगवेगळ्या इलेक्ट्रॉनिक घटकांचा वापर करून एक प्रकारे गेटची अंमलबजावणी करेल.
पोर्र इमेम्प्लोचिपसाठी TTL वापरल्यास, गेट्स द्विध्रुवीय ट्रान्झिस्टरचे बनलेले असतील, तर CMOS लॉजिक पूर्णपणे MOSFET ट्रान्झिस्टरवर आधारित असेल. या दोन कुटुंबांव्यतिरिक्त, जे सहसा सर्वात लोकप्रिय आहेत, तेथे इतर देखील आहेत जसे की BiCMOS (द्विध्रुवीय आणि CMOS ट्रान्झिस्टर एकत्र करते), RTL (प्रतिरोधक आणि द्विध्रुवीय ट्रान्झिस्टर), DTL (डायोड्स आणि ट्रान्झिस्टर), ECL, IIL, इ.
एक कुटुंब दुसऱ्यापेक्षा जास्त चांगले नाही, ते अर्जावर अवलंबून असेल. पण असे असले तरी, CMOS हे CPU, MCU, GPU, मेमरी इत्यादीसारख्या प्रगत सर्किट्समध्ये सर्वात जास्त वापरले जाणारे एक आहे. इतर सोप्या सर्किट्ससाठी TTL शोधणे देखील सामान्य आहे.
अॅप्लिकेशन्स
या लॉजिक गेट्सचे अर्ज अंतहीन आहेत. या आवश्यक "विटा" सह आपण बांधू शकता डिजिटल सर्किट्सची संख्या. साध्या अॅडरपासून, जटिल CPU पर्यंत, इतर अनेक सर्किट्सद्वारे ज्याची तुम्ही कल्पना करू शकता. खरं तर, तुम्ही दररोज वापरत असलेल्या अनेक सिस्टीम्स, जसे की तुमचा पीसी, तुमचा टीव्ही, मोबाईल, इत्यादींना अब्जावधी लॉजिक गेट असतात.
Un व्यावहारिक उदाहरण लॉजिक गेट्सचा वापर हा साधा अॅडर असेल जो तुम्ही वरील इमेजमध्ये पाहू शकता. हे एक अतिशय साधे सर्किट आहे, जे सम परिणाम देण्यासाठी त्याच्या इनपुटमध्ये दोन बिट (A आणि B) जोडण्यास सक्षम आहे, आणि कॅरी देखील, म्हणजे, जे तुम्ही काढून घेत आहात... तुम्ही त्याचे परिणाम पाहू शकता. खालील तक्त्यामध्ये द्या:
A | B | बेरीज | कॅरी | बायनरी परिणाम |
---|---|---|---|---|
0 | 0 | 0 | 0 | 00 |
0 | 1 | 1 | 0 | 01 |
1 | 0 | 1 | 0 | 01 |
1 | 1 | 0 | 1 | 10 |
जर तुम्ही या तक्त्याकडे बघितले तर तुम्ही बायनरीमध्ये 0 + 0 जोडल्यास ते तुम्हाला 0 देते, जर तुम्ही 1 + 0 जोडले तर ते 1 होते, परंतु तुम्ही 1 + 1 जोडल्यास ते 2 देते, जे बायनरी प्रणालीमध्ये 10 शी जुळते.
लॉजिक गेट्सचे प्रकार
साठी म्हणून लॉजिक गेट्सचे प्रकार, तुमच्याकडे त्यांची संख्या चांगली आहे, जरी सर्वात जास्त वापरलेले खालील आहेत (त्यांच्या सत्य सारण्यांसह):
- बफर (होय): हे बफर किंवा डायरेक्ट गेट म्हणून ओळखले जाते, कारण त्याच्या आउटपुटची स्थिती त्याच्या इनपुटसारखीच असेल. जरी ते निरुपयोगी वाटत असले तरी, बर्याच लॉजिक सर्किट्समध्ये ते बर्याचदा करंट अॅम्प्लिफायर किंवा व्होल्टेज फॉलोअर म्हणून वापरले जाते.
प्रवेश | बाहेर पडा |
---|---|
0 | 0 |
1 | 1 |
- नाही (इन्व्हर्टर): तार्किक नकार (¬o') आहे, म्हणजे, ते त्याच्या आउटपुटवर बिट उलटते.
प्रवेश | बाहेर पडा |
---|---|
0 | 1 |
1 | 0 |
- आणि (Y): हे दुसरे गेट त्याच्या इनपुटच्या बायनरी बिट्सचे उत्पादन कार्य (·) करते. म्हणजेच, ते A आणि B चा गुणाकार करण्यासारखे असेल. त्यामुळे शून्याने कोणतीही गोष्ट शून्य असते, दोन्ही इनपुट 1 असल्यास ते फक्त त्याच्या आउटपुटला एक देईल. म्हणून त्याचे नाव 1 आणि 1.
A | B | S |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
- सोने): हे दुसरे गेट तार्किक जोड ऑपरेशन (+) करते. म्हणजे, त्याच्या आउटपुटपैकी एक किंवा दुसरा, किंवा त्याचे आउटपुट 1 असण्यासाठी दोन्ही 1 असले पाहिजेत. जेव्हा दोन्ही 0 असतात, तेव्हा आउटपुट देखील 0 असतो.
A | B | S |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
- XOR (किंवा अनन्य): हे अनन्य OR बुलियन फंक्शन A'B + AB ' करते आणि त्याचे चिन्ह आहे
. या प्रकरणात, त्याचे दोन इनपुट समान असल्यास, आउटपुट 0 आहे. जर ते भिन्न असतील, तर ते 1 असेल.
A | B | S |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
- NAND (Y नकारलेले): नकारात्मक तार्किक उत्पादन आहे, म्हणजे, AND चा व्यस्त. हे आउटपुट बिट्स उलट करण्यासाठी AND आउटपुटवर NOT वापरण्यासारखे आहे. म्हणून, परिणाम आहेत:
A | B | S |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
- ना (किंवा नाकारले): नकारात्मक तार्किक बेरीज, किंवा समान काय आहे, एक OR त्याच्या नकारलेल्या आऊटपुटसह, परिणामी OR चा व्यस्त होतो.
A | B | S |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
- XNOR (अनन्य NOR): हे XOR गेटवर बायनरी पूरक लागू करण्यासारखे आहे. म्हणजेच, AB + A'B' ऑपरेशन करा. A वेळा B मध्ये A गुणिले B नाकारले. म्हणून, आउटपुट उलटे XOR प्रमाणे असतील:
A | B | S |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
NOR आणि NAND हे दोन्ही सर्वात मनोरंजक दरवाजे आहेत, कारण ते म्हणून ओळखले जातात युनिव्हर्सल लॉजिक गेट्स. म्हणजेच, इतर कोणत्याही प्रकारच्या लॉजिक गेटचे प्रतिनिधित्व करण्यासाठी तुम्ही फक्त त्यांच्यासह सर्किट बनवू शकता. हे महत्त्वाचे आहे, कारण जर तुम्ही या दरवाजांसह चिप्स विकत घेतल्यास, तुमच्याकडे सर्व कार्ये असू शकतात. उदाहरणार्थ, जर NOR चे दोन इनपुट ब्रिज केलेले असतील किंवा NAND हे NOT च्या समतुल्य असेल. तुमच्याकडे येथे अधिक समतुल्य आहेत:
Te मी सल्ला देतोअधिक जाणून घेण्यासाठी, कोणत्याही गेट्ससह एक साधे सर्किट Google. आणि ते काय करते हे जाणून घेण्यासाठी, एक प्रकारचे "रिव्हर्स इंजिनियरिंग" करा, इनपुट आणि आउटपुटच्या ओळींचे अनुसरण करा आणि आउटपुटला दिलेल्या इनपुटनुसार प्रत्येक ओळीची स्थिती पहा.
पोर्र इमेम्प्लोतुम्ही वरील इमेज पाहिल्यास, NAND गेट्ससह OR चे समतुल्य आकृती, तुम्हाला दिसेल की त्यात दोन NAND गेट्स आहेत आणि त्यांचे आउटपुट ब्रिज केलेले आहे आणि दोन्ही आउटपुट दुसर्या NAND कडे जातात. खालील गोष्टी लक्षात ठेवा:
- जर तुम्ही NAND ट्रुथ टेबलवर गेलात तर तुम्हाला दिसेल की जेव्हा त्याचे दोन इनपुट 0 असतात तेव्हा आउटपुट 1 असतो आणि जेव्हा त्याचे दोन इनपुट 1 असतात तेव्हा आउटपुट 0 असतो.
- जसे की ते ब्रिज केले जातात, जर इनपुट 1 असेल (एक दोन्हीमध्ये प्रवेश करतो), तर परिणाम 0 असेल. आणि जेव्हा इनपुट 0 (दोन्ही शून्य) असेल, तेव्हा आउटपुट 1 असेल, जे NOT च्या समतुल्य असेल.
- म्हणून, आमच्याकडे बीट्स A आणि B साठी दोन NOTs आहेत. त्यांच्या आउटपुटवर आमच्याकडे A 'आणि B' असेल.
- ते दोन नकार शेवटच्या NAND मध्ये जातात, जे त्या दोन बिट्सचे व्यस्त तार्किक उत्पादन करेल.
- तर्कशास्त्राच्या नियमांनुसार, हे थेट बेरीजशी समान आहे, म्हणजे, A + B. म्हणून, अंतिम निकाल असा असेल की तो एक OR होता ...
लॉजिक गेट चिप मालिका - कुठे खरेदी करायची
इलेक्ट्रॉनिक्समध्ये खास स्टोअरमध्ये तुम्ही हे करू शकता स्वस्त चिप्स खरेदी करा तुमच्या प्रकल्पांमध्ये वापरण्यास सुरुवात करण्यासाठी लॉजिक गेट्ससह. या चिप्स एकल लॉजिक गेट नाहीत, परंतु ते तुम्हाला त्यापैकी अनेक ठेवण्याची परवानगी देतात जेणेकरुन तुम्ही आवश्यकतेनुसार त्यांचे इनपुट आणि आउटपुट लिंक करू शकता. उदाहरणार्थ, वरील प्रतिमेतील आकृतीमध्ये तुम्ही 4 NAND गेट्स असलेल्या DIP चिपचा ठराविक पिनआउट पाहू शकता. याव्यतिरिक्त, यात पॉवरसाठी दोन पिन देखील आहेत (Vcc आणि GND).
येथे काही आहेत खरेदी शिफारसी:
- कोणतीही उत्पादने आढळली नाहीत..
- हुआबान: युनिव्हर्सल NAND गेट्ससह 30-चिप किट.
- Zebulon: 120 CMOS चिप किट.
इतर स्त्रोत
हे गेट्स कसे अंमलात आणायचे आणि त्यांच्यासह सर्किट्स कसे तयार करायचे याबद्दल अधिक जाणून घेण्यासाठी, तुम्ही याचा वापर करू शकता ओट्रोस रिकर्सोस मी काय शिफारस करतो:
- SimulIDE सॉफ्टवेअर गेट्ससह या सर्किट्सच्या ऑपरेशनचे अनुकरण करण्यास सक्षम होण्यासाठी. हे विनामूल्य, मुक्त स्रोत आणि क्रॉस-प्लॅटफॉर्म आहे.
- ऑनलाइन बायनरी कॅल्क्युलेटर (तुम्ही तुमच्या ऑपरेटिंग सिस्टमचे कॅल्क्युलेटर बायनरी मोडमध्ये देखील वापरू शकता).
- कोणतीही उत्पादने आढळली नाहीत..
- डिजिटल लॉजिक सर्किट बुक: डिझाइनपासून प्रयोगापर्यंत.
Arduino सह डिजिटल तर्क
इतर संसाधन जर तुमच्याकडे आधीच असेल तर तुमच्या हातात काय आहे एक ताट Arduino UNO तुमच्या हातात आहे स्केचेस तयार करण्यासाठी Arduino IDE वापरा जे या लॉजिक फंक्शन्सचे अनुकरण करतात, उदाहरणार्थ, दरवाजाच्या आउटपुटचे अनुकरण करणार्या एलईडीसह परिणाम अधिक व्हिज्युअल पद्धतीने पहा. उदाहरणार्थ, पिन 7 वर LED टाकणे आणि A आणि B इनपुट म्हणून 8 आणि 9 वापरणे:
int pinOut = 7; int pinA = 8; int pinB = 9; void setup() { pinMode(pinOut, OUTPUT); pinMode(pinA, INPUT); pinMode(pinB, INPUT); } void loop() { boolean pinAState = digitalRead(pinA); boolean pinBState = digitalRead(pinB); boolean pinOutState; //AND pinOutState =pinAState & pinBState; digitalWrite(pinOut, pinOutState); }
येथे AND (&) फंक्शन वापरले गेले आहे, जसे आपण पाहू शकता, परंतु आपण कोडची ती ओळ // AND ओळ अंतर्गत वापरण्यासाठी इतरांसह बदलू शकता. इतर लॉजिक फंक्शन्स:
//OR pinOutState = pinAState | pinBState; //NOT pinOutState = !pinAState; //XOR pinOutState = pinAState ^ pinBState; //NAND pinOutState = !(pinAState & pinBState); //NOR pinOutState = !(pinAState | pinBState); //XNOR pinOutState = !(pinAState ^ pinBState);