SIPO शिफ्ट रजिस्टर क्या है: सर्किट, वर्किंग, ट्रुथ टेबल और इसके अनुप्रयोग

समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें





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


SIPO शिफ्ट रजिस्टर क्या है?

शिफ्ट रजिस्टर जो सीरियल इनपुट समानांतर आउटपुट की अनुमति देता है उसे एसआईपीओ शिफ्ट रजिस्टर के रूप में जाना जाता है। SIPO रजिस्टर में, SIPO शब्द सीरियल इनपुट समानांतर आउटपुट के लिए है। इस प्रकार के शिफ्ट रजिस्टर में इनपुट डेटा को क्रमानुसार थोड़ा-थोड़ा करके दिया जाता है। प्रत्येक क्लॉक पल्स के लिए, सभी FFs पर इनपुट डेटा को एक ही स्थिति से स्थानांतरित किया जा सकता है। प्रत्येक फ्लिप-फ्लॉप पर ओ/पी समानांतर प्राप्त किया जा सकता है।



सर्किट आरेख

SISO शिफ्ट रजिस्टर सर्किट आरेख नीचे दिखाया गया है। इस सर्किट को 4 डी फ्लिप-फ्लॉप के साथ बनाया जा सकता है जो कि आरेख में दिखाए गए अनुसार जुड़े हुए हैं जहां सीएलआर सिग्नल सीएलके सिग्नल को सभी एफएफ को रीसेट करने के लिए अतिरिक्त रूप से दिया जाता है। उपरोक्त सर्किट में, पहला FF आउटपुट दूसरे FFs इनपुट को दिया जाता है। ये चारों D फ्लिप-फ्लॉप एक-दूसरे से क्रमानुसार जुड़े हुए हैं क्योंकि प्रत्येक फ्लिप-फ्लॉप को एक ही CLK सिग्नल दिया जाता है।

  SIPO शिफ्ट रजिस्टर आरेख
SIPO शिफ्ट रजिस्टर आरेख

SIPO शिफ्ट रजिस्टर का कार्य

SIPO शिफ्ट रजिस्टर का कार्य है; कि यह बाईं ओर के पहले फ्लिप फ्लॉप से ​​सीरियल डेटा इनपुट लेता है और समानांतर डेटा आउटपुट उत्पन्न करता है। 4-बिट एसआईपीओ शिफ्ट रजिस्टर सर्किट नीचे दिखाया गया है। इस शिफ्ट रजिस्टर का संचालन है, पहले FF1 से FF4 तक सर्किट से सभी फ्लिप फ्लॉप को RESET करना होता है ताकि FFs के सभी आउटपुट जैसे QA से QD तक लॉजिक शून्य स्तर पर होंगे, इसलिए कोई समानांतर डेटा आउटपुट नहीं है।



SIPO शिफ्ट रजिस्टर का निर्माण ऊपर दिखाया गया है। आरेख में, पहला फ्लिप फ्लॉप आउटपुट 'क्यूए' दूसरे फ्लिप फ्लॉप इनपुट 'डीबी' से जुड़ा है। दूसरा फ्लिप फ्लॉप आउटपुट 'क्यूबी' तीसरे फ्लिप फ्लॉप इनपुट डीसी से जुड़ा है, और तीसरा फ्लिप फ्लॉप आउटपुट 'क्यूसी' चौथे फ्लिप फ्लॉप इनपुट 'डीडी' से जुड़ा है। यहाँ, QA, QB, QC, और QD डेटा आउटपुट हैं।

प्रारंभ में, सीएलके पल्स के बिना सभी आउटपुट शून्य हो जाएंगे; सारा डाटा जीरो हो जाएगा। आइए 1101 की तरह 4-बिट डेटा इनपुट उदाहरण लें। यदि हम पहली घड़ी पल्स '1' को पहले फ्लिप फ्लॉप पर लागू करते हैं, तो एफएफ और क्यूए में दर्ज किया जाने वाला डेटा '1' बन जाता है, और शेष सभी आउटपुट जैसे QB , QC और QD शून्य हो जाएंगे। तो पहला डेटा आउटपुट '1000' है

यदि हम पहले फ्लिप फ्लॉप पर दूसरी घड़ी की पल्स को '0' के रूप में लागू करते हैं तो QA '0' बन जाता है, QB '0' बन जाता है, QC '0' बन जाता है और QD '0' बन जाता है। तो शिफ्ट राइट प्रोसेस के कारण दूसरा डेटा आउटपुट '0100' हो जाएगा।

यदि हम तीसरे क्लॉक पल्स को पहले फ्लिप फ्लॉप पर '1' के रूप में लागू करते हैं तो QA '1' बन जाता है, QB '0' बन जाता है, QC '1' बन जाता है और QD '0' बन जाता है। तो शिफ्ट राइट प्रोसेस के कारण तीसरा डेटा आउटपुट '1011' हो जाएगा।
यदि हम चौथी घड़ी की पल्स को पहले फ्लिप फ्लॉप पर '1' के रूप में लागू करते हैं तो QA '1' बन जाता है, QB '1' बन जाता है, QC '0' बन जाता है और QD '1' बन जाता है। तो शिफ्ट राइट प्रोसेस के कारण तीसरा डेटा आउटपुट '1101' हो जाएगा।

एसआईपीओ शिफ्ट रजिस्टर सत्य तालिका

SIPO शिफ्ट रजिस्टर की सत्य तालिका नीचे दिखाई गई है।

  एसआईपीओ शिफ्ट रजिस्टर सत्य तालिका
एसआईपीओ शिफ्ट रजिस्टर सत्य तालिका

समय आरेख

SIPO शिफ्ट रजिस्टर का समय आरेख नीचे दिखाया गया है।

  समय आरेख
समय आरेख

यहां हम एक सकारात्मक बढ़त CLK i/p सिग्नल का उपयोग कर रहे हैं। पहली घड़ी की पल्स में इनपुट डेटा QA = '1' हो जाता है और अन्य सभी मान जैसे QB, QC, और QD '0' बन जाते हैं। तो आउटपुट '1000' हो जाएगा। दूसरी घड़ी की पल्स में, आउटपुट '0101' हो जाएगा। तीसरी घड़ी की पल्स में, आउटपुट '1010' हो जाएगा और चौथे क्लॉक पल्स में, आउटपुट '1101' हो जाएगा।

एसआईपीओ शिफ्ट रजिस्टर वेरिलोग कोड

एसआईपीओ शिफ्ट रजिस्टर के लिए वेरिलोग कोड नीचे दिखाया गया है।

मॉड्यूल सिपोमोड (सीएलके, स्पष्ट, सी, पीओ);
इनपुट क्लर्क, सी, स्पष्ट;
आउटपुट [3:0] पीओ;
रेग [3:0] टीएमपी;
रेग [3:0] पो;
हमेशा @(posege clk)
शुरू करना
यदि साफ़ है)
टीएमपी <= 4'b0000;
वरना
टीएमपी <= टीएमपी << 1;
टीएमपी [0] <= हाँ;
पीओ = टीएमपी;
समाप्त
एंडमॉड्यूल

74HC595 IC SIPO शिफ्ट रजिस्टर सर्किट और इसकी कार्यप्रणाली

एक 74HC595 IC समानांतर आउट शिफ्ट रजिस्टर में 8-बिट सीरियल है, इसलिए यह क्रमिक रूप से इनपुट का उपयोग करता है और समानांतर आउटपुट प्रदान करता है। इस आईसी में 16-पिन शामिल हैं और यह SOIC, DIP, TSSOP और SSOP जैसे विभिन्न पैकेजों में उपलब्ध है।

74HC595 का पिन विन्यास नीचे दिखाया गया है जहाँ प्रत्येक पिन की चर्चा नीचे की गई है।

पिन 1 से 7 और 15 (क्यूबी से क्यूएच और क्यूए): ये ओ/पी पिन हैं जिनका उपयोग 7-सेगमेंट डिस्प्ले और एलईडी जैसे आउटपुट डिवाइस को जोड़ने के लिए किया जाता है।

पिन8 (जीएनडी): यह जीएनडी पिन केवल माइक्रोकंट्रोलर के बिजली आपूर्ति के जीएनडी पिन से जुड़ा है।

पिन9 (क्यूएच): इस पिन का उपयोग एक अलग IC के SER पिन से कनेक्ट करने और दोनों IC को समान CLK सिग्नल देने के लिए किया जाता है ताकि वे 16-आउटपुट सहित एकल IC की तरह प्रदर्शन करें।

पिन 16 (वीसीसी): इस पिन का उपयोग माइक्रोकंट्रोलर से कनेक्ट करने के लिए किया जाता है अन्यथा बिजली की आपूर्ति क्योंकि यह 5V तर्क स्तर IC है।

पिन 14 (बीई): यह सीरियल आई/पी पिन है जहां डेटा इस पिन में क्रमिक रूप से दर्ज किया जाता है।

पिन11 (एसआरसीएलके): यह शिफ्ट रजिस्टर सीएलके पिन है जो शिफ्ट रजिस्टर के लिए सीएलके की तरह काम करता है क्योंकि इस पूरे पिन में सीएलके सिग्नल दिया जाता है।

पिन12 (आरसीएलके): यह रजिस्टर CLK पिन है जिसका उपयोग उन उपकरणों पर o/ps देखने के लिए किया जाता है जो इन IC से जुड़े होते हैं।

पिन10 (एसआरसीएलआर): यह शिफ्ट रजिस्टर सीएलआर पिन है। यह पिन मुख्य रूप से तब उपयोग किया जाता है जब हमें रजिस्टर के स्टोरेज को खाली करने की आवश्यकता होती है।

पिन13 (ओई): यह ओ/पी इनेबल पिन है। एक बार जब यह पिन उच्च पर सेट हो जाता है तो शिफ्ट रजिस्टर एक उच्च प्रतिबाधा स्थिति पर सेट हो जाता है और o/ps प्रसारित नहीं होते हैं। यदि हम इस पिन को कम पर सेट करते हैं, तो हम o/ps प्राप्त कर सकते हैं।

74HC595 आईसी  काम करना

एलईडी को नियंत्रित करने के लिए 74HC595 IC का सर्किट आरेख नीचे दिखाया गया है। शिफ्ट रजिस्टर के 3-पिनों को 11, 12 और 14 पिन की तरह Arduino से कनेक्ट करने की आवश्यकता है। सभी आठ एल ई डी बस इस शिफ्ट रजिस्टर आईसी से जुड़े होंगे।

इस सर्किट को डिजाइन करने के लिए आवश्यक घटकों में मुख्य रूप से 74HC595 शिफ्ट रजिस्टर IC, Arduino UNO, 5V पावर सप्लाई, ब्रेडबोर्ड, 8 LED, 1KΩ रेसिस्टर्स - 8 और कनेक्टिंग वायर शामिल हैं।

  74HC595 IC शिफ्ट रजिस्टर सर्किट आरेख
74HC595 IC शिफ्ट रजिस्टर सर्किट आरेख

सबसे पहले, शिफ्ट रजिस्टर के सीरियल i/p पिन को Arduino Uno के पिन-4 से कनेक्ट करना होगा। उसके बाद, दोनों CLK और लैच पिन जैसे IC के पिन 11 और 12 को क्रमशः Arduino Uno के पिन 5 और 6 से कनेक्ट करें। एलईडी को आईसी के 8-ओ/पी पिन में 1KΩ वर्तमान सीमित प्रतिरोधों का उपयोग करके जोड़ा जाता है। Arduino से 5V की आपूर्ति करने से पहले Arduino के लिए सामान्य GND के साथ 74HC595 IC के लिए एक अलग 5V बिजली की आपूर्ति का उपयोग किया जाता है।

कोड

एक श्रंखला में 8 LED ON को सक्रिय करने का सरल कोड नीचे दिखाया गया है।

इंट लैचपिन = 5;
int clkPin = 6;
इंट डेटापिन = 4;
बाइट एलईडी = 0;
व्यर्थ व्यवस्था()
{
सीरियल.बेगिन (9600);
पिनमोड (लचपिन, आउटपुट);
पिनमोड (डेटापिन, आउटपुट);
पिनमोड (clkPin, OUTPUT);
}
शून्य लूप ()
{
इंट आई = 0;
एलईडी = 0;
शिफ्टएलईडी ();
देरी (500);
के लिए (i = 0; मैं <8; i++)
{
बिटसेट (एलईडी, आई);
सीरियल.प्रिंट्लन (एलईडी);
शिफ्टएलईडी ();
देरी (500);
}
}
शून्य शिफ्टएलईडी ()
{
digitalWrite (लचपिन, लो);
शिफ्टऑट (डेटापिन, clkPin, MSBFIRST, LED);
digitalWrite (लचपिन, हाई);
}

इस शिफ्ट रजिस्टर सर्किट का काम है, सबसे पहले सभी 8 एलईडी को बंद कर दिया जाएगा क्योंकि बाइट वेरिएबल एलईडी शून्य पर सेट है। अब, प्रत्येक बिट 'बिटसेट' फ़ंक्शन के साथ 1 पर सेट है और 'शिफ्टऑट' फ़ंक्शन के साथ स्थानांतरित कर दिया गया है। इसी तरह, एक ही श्रृंखला में प्रत्येक एलईडी चालू हो जाएगी। यदि आप एलईडी को बंद करना चाहते हैं, तो आप 'बिटक्लियर' फ़ंक्शन का उपयोग कर सकते हैं।

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

अनुप्रयोग

सीरियल इनपुट समानांतर आउटपुट शिफ्ट रजिस्टर के अनुप्रयोग नीचे दिखाया गया है।

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

इस प्रकार, यह SIPO का एक सिंहावलोकन है शिफ्ट का रजिस्टर - सर्किट, वर्किंग, ट्रुथ टेबल और एप्लिकेशन के साथ टाइमिंग डायग्राम। सबसे अधिक उपयोग किए जाने वाले SIPO शिफ्ट रजिस्टर घटक 74HC595, 74LS164, 74HC164/74164, SN74ALS164A, SN74AHC594, SN74AHC595 और CD4094 हैं। ये रजिस्टर उपयोग में बहुत तेज हैं, डेटा को सीरियल से समानांतर में बहुत आसानी से परिवर्तित किया जा सकता है, और इसका डिज़ाइन सरल है। यहां आपके लिए एक प्रश्न है कि PISO शिफ्ट रजिस्टर क्या है।