Altifigence Academy

15 / 63 · अवधारणा

सत्य सारणी से MUX और शैनन विस्तार तक

चयन लॉजिक का सूत्र निकालें और किसी लॉजिक फलन को MUX में विभाजित करें।

चयन नियम से सूत्र निकालना

sel=0 पर a और sel=1 पर b देने के लिए प्रत्येक इनपुट को उसकी चयन शर्त से AND करें, फिर परिणामों का OR लें।

y=s‾a+sby=\overline s a+s b

s=0s=0 रखने पर केवल a, s=1s=1 पर केवल b बचता है। a और b समान हों तो sel बदलने पर भी आउटपुट समान है, इसलिए चयन त्रुटि खोजने के लिए दोनों डेटा अलग होने वाला मामला ज़रूरी है।

नीला पथ चुने गए इनपुट को दर्शाता है। a और b अलग रखकर sel बदलें। दोनों समान हों तो गलत चयन वायरिंग भी केवल आउटपुट देखकर पहचानना कठिन है।

चयन संकेत से बदलता डेटा पथ

y = sel ? b : a

MUX किसी लॉजिक फलन को विभाजित करने की विधि है

किसी बूलियन फलन F में s को क्रमशः 0 और 1 पर स्थिर करके मिले उपफलनों को F0,F1F_0,F_1 कहें।

F=s‾F0+sF1F=\overline s F_0+sF_1

यही शैनन विस्तार है। s ? F1 : F0 से किसी फलन को दो भागों में बाँट सकते हैं। उदाहरणतः F=a⊕bF=a\oplus b में a को चयन रखें तो F0=bF_0=b, F1=b‾F_1=\overline b हैं; अतः MUXमल्टीप्लेक्सर चयन संकेत के अनुसार कई इनपुटों में से एक को आउटपुट से जोड़ने वाला संयोजन परिपथ। चयन बिट और इनपुट संख्या का संबंध विनिर्दिष्ट करना चाहिए। और निषेधनिषेध NOT संक्रिया 0 को 1 और 1 को 0 बनाती है। सूत्र के ऊपर की रेखा उसके नीचे के पूरे व्यंजक पर NOT लगाती है। विस्तार से पढ़ें से XOR बनता है।

4-to-1 चयन और प्राथमिकता

दो चयन बिटों से चार इनपुटों में एक चुनने के लिए 2-to-1 MUX के दो चरण बना सकते हैं। इसके विपरीत if (req0) ... else if (req1) ... कई अनुरोध साथ 1 होने पर पहले को प्राथमिकता देता है। पते से चयन और प्राथमिकता से चयन अलग समस्याएँ हैं।

SystemVerilog
assign y = sel[1] ? (sel[0] ? d3 : d2)
                 : (sel[0] ? d1 : d0);

आदर्श संतुलित वृक्ष में 2m2^m इनपुट हों तो चयन पथ m चरण का है। भौतिक विलंब चरण संख्या के साथ इनपुट पहुँचने के समय, लोड और तारों पर भी निर्भर है। फलन विभाजन संभावित कार्यान्वयन बनाता है; न्यूनतम विलंब का प्रमाण नहीं देता।

खुद आज़माएँ

F=ab+a‾cF=a b+\overline a c को a चयन वाला MUX बनाएँ। उसके दो डेटा इनपुट क्या होंगे?

व्याख्या पढ़ें

a=0a=0 पर F0=cF_0=c, a=1a=1 पर F1=bF_1=b, इसलिए assign f = a ? b : c;। चयन 0 और 1 के इनपुट आपस में न बदलें; पहले उपफलन निकालें।

आपका चयन इस ब्राउज़र पर लागू होता है। फ़ुटर से कभी भी बदलें।