লজিক গেট - ২: বিশেষ গেট (XOR, XNOR) ও লজিক গেট বাস্তবায়ন
এইচএসসি আইসিটি অধ্যায় ৩: বিশেষ লজিক গেট XOR ও XNOR এর বিস্তারিত আলোচনা। সত্যক সারণি, লজিক ফাংশন এবং সার্বজনীন গেট দিয়ে এদের বাস্তবায়নের চিত্রসহ ব্যাখ্যা।
লজিক গেট - ২: বিশেষ গেট (XOR, XNOR) ও লজিক গেট বাস্তবায়ন
- লজিক গেট - ২: বিশেষ গেট (XOR, XNOR) ও লজিক গেট বাস্তবায়ন
- সিঁড়ির জাদুকরী সুইচ (Staircase Switch)
- XOR গেট (Exclusive OR)
- মৌলিক গেট দিয়ে XOR সার্কিট
- XNOR গেট (Exclusive NOR)
- বাফার গেট (Buffer Gate)
- সার্বজনীন গেট দিয়ে বিশেষ গেট বাস্তবায়ন
- NAND গেট দিয়ে XOR: সমীকরণ তৈরি
- NAND গেট দিয়ে XOR: সার্কিট ডায়াগ্রাম
- NOR গেট দিয়ে XOR বাস্তবায়ন
- NAND গেট দিয়ে XNOR বাস্তবায়ন
- NOR গেট দিয়ে XNOR বাস্তবায়ন
- একনজরে: গেট সংখ্যা মনে রাখার টেকনিক
- ৩-ইনপুট বিশিষ্ট XOR গেট
- সারাংশ ও বাড়ির কাজ
লেকচার ১০: বিশেষ গেট (XOR, XNOR) ও লজিক গেট বাস্তবায়ন - বিস্তারিত পাঠ
মনে করো তুমি একটি দোতলা বাড়ির সিঁড়িতে দাঁড়িয়ে আছো। সিঁড়ির নিচে একটি সুইচ আছে এবং উপরে আরেকটি সুইচ। তুমি নিচে থেকে সুইচ টিপে বাতি জ্বালালে, উপরে উঠে আবার অন্য সুইচটি টিপে বাতিটি নিভিয়ে দিলে। এই যে দুটি ভিন্ন জায়গা থেকে একটি বাতিকে নিয়ন্ত্রণ করা—এটি সাধারণ লজিক গেট (AND, OR) দিয়ে সরাসরি করা কঠিন। কিন্তু ডিজিটাল ইলেকট্রনিক্সে এমন একটি বিশেষ গেট আছে যা এই কাজটি খুব সহজেই করতে পারে। একে বলা হয় XOR (Exclusive OR) গেট।
মৌলিক গেট (AND, OR, NOT) এবং সার্বজনীন গেট (NAND, NOR) ছাড়াও ডিজিটাল সার্কিটে আরও দুটি বিশেষ গেট ব্যবহৃত হয়—XOR এবং XNOR। মূলত ডেটা তুলনা করা (Comparison) এবং গাণিতিক কাজ (যেমন: বাইনারি যোগ) করার জন্য এই গেটগুলো আইসি (IC) আকারে তৈরি করা হয়। আজকের পাঠে আমরা এই বিশেষ গেটগুলোর খুঁটিনাটি এবং শুধুমাত্র সার্বজনীন গেট ব্যবহার করে এদের বাস্তবায়ন শিখব, যা পরীক্ষার জন্য অত্যন্ত গুরুত্বপূর্ণ।
১. এক্সক্লুসিভ অর গেট (XOR Gate)
XOR এর পূর্ণরূপ হলো Exclusive OR। সাধারণ OR গেটে যেকোনো একটি ইনপুট ১ হলেই আউটপুট ১ হয়, কিন্তু Exclusive OR গেট একটু ভিন্ন। এটি কেবল তখনই ১ আউটপুট দেয় যখন ইনপুটগুলোর মধ্যে একটি 'বিজোড়' সম্পর্ক থাকে।
সংজ্ঞা (Definition): যে ডিজিটাল ইলেকট্রনিক সার্কিটে ইনপুটগুলোর মধ্যে বিজোড় সংখ্যক ১ থাকলে আউটপুট ১ (High) হয় এবং অন্যথায় আউটপুট ০ (Low) হয়, তাকে XOR গেট বা Exclusive OR গেট বলে। এর প্রতীক ⊕।
বুলিয়ান সমীকরণ ও সত্যক সারণি
XOR গেটের বুলিয়ান ফাংশনটি সাধারণ OR গেটের মতো $A+B$ নয়, বরং একে $A \oplus B$ দ্বারা প্রকাশ করা হয়।
$$Y = A \oplus B = A'B + AB'$$
যেখানে A এবং B হলো ইনপুট এবং Y হলো আউটপুট।
নিচে ২-ইনপুট বিশিষ্ট XOR গেটের সত্যক সারণি দেওয়া হলো:
| ইনপুট A | ইনপুট B | আউটপুট Y ($A \oplus B$) | মন্তব্য |
|---|---|---|---|
| 0 | 0 | 0 | দুটি ইনপুট সমান (Equal) |
| 0 | 1 | 1 | ইনপুট ভিন্ন (Unequal) |
| 1 | 0 | 1 | ইনপুট ভিন্ন (Unequal) |
| 1 | 1 | 0 | দুটি ইনপুট সমান (Equal) |

কেন একে 'Inequality Detector' বলা হয়?
সত্যক সারণিটি লক্ষ্য করো। যখন ইনপুট দুটি ভিন্ন (একটি ০, অন্যটি ১), তখন আউটপুট ১। আর যখন ইনপুট দুটি একই (উভয়ই ০ বা উভয়ই ১), তখন আউটপুট ০। একারণেই XOR গেটকে অসামঞ্জস্যতা নির্ণায়ক (Inequality Detector) বলা হয়। কম্পিউটারে দুটি সংখ্যা ভিন্ন কি না, তা যাচাই করতে এই গেট ব্যবহৃত হয়।
গুরুত্বপূর্ণ (Important): ৩-ইনপুট XOR গেট ও বিজোড় ফাংশন
অনেক সময় পরীক্ষায় ৩টি ইনপুট দিয়ে XOR গেটের আউটপুট বের করতে বলা হয়। সেক্ষেত্রে মনে রাখবে:
- ইনপুটগুলোতে মোট ১-এর সংখ্যা যদি বিজোড় (Odd) হয়, তবে আউটপুট ১ হবে।
- ইনপুটগুলোতে মোট ১-এর সংখ্যা যদি জোড় (Even) হয়, তবে আউটপুট ০ হবে।
উদাহরণ: $A=1, B=0, C=1$ হলে, এখানে ১ আছে ২টি (জোড়), তাই $A \oplus B \oplus C = 0$।
কিন্তু $A=1, B=1, C=1$ হলে, এখানে ১ আছে ৩টি (বিজোড়), তাই $A \oplus B \oplus C = 1$।
এজন্য XOR গেটকে Odd Function বা Odd Parity Generator বলা হয়।
২. এক্সক্লুসিভ নর গেট (XNOR Gate)
XNOR এর পূর্ণরূপ Exclusive NOR। এটি মূলত XOR গেটের ঠিক বিপরীত। অর্থাৎ, একটি XOR গেটের আউটপুটকে যদি একটি NOT গেটের মধ্য দিয়ে প্রবাহিত করা হয়, তবে তাকে XNOR গেট বলে।
সংজ্ঞা (Definition): যে লজিক গেটে ইনপুটগুলোর মান সমান (Equal) হলে আউটপুট ১ হয় এবং অসমান হলে আউটপুট ০ হয়, তাকে XNOR গেট বলে। এর প্রতীক $\odot$।
বুলিয়ান সমীকরণ
XNOR গেটের আউটপুট সমীকরণটি হলো:
$$Y = A \odot B = (A \oplus B)' = AB + A'B'$$
লক্ষ্য করো, $AB$ মানে হলো উভয় ইনপুট ১, আর $A'B'$ মানে হলো উভয় ইনপুট ০। অর্থাৎ, ইনপুটগুলো যখন একই অবস্থায় থাকে, তখনই কেবল আউটপুট ১ হয়। একারণে XNOR গেটকে Equality Detector বা Coincidence Logic বলা হয়।
পরীক্ষার টিপস (Exam Tip):
XOR এবং XNOR এর মধ্যে গুলিয়ে ফেলা খুব স্বাভাবিক। মনে রাখার সহজ উপায়:
- XOR (⊕): অমিল খুঁজলে ১ দেয় (Inequality)।
- XNOR (⊙): মিল খুঁজলে ১ দেয় (Equality)।
৩. বাফার গেট (Buffer Gate)
লেকচারে বাফার গেটের কথা উল্লেখ করা হয়েছে। এটি দেখতে সাধারণ NOT গেটের মতো কিন্তু সামনে কোনো বৃত্ত (bubble) থাকে না।
বাফার গেট ইনপুটে যা গ্রহণ করে, আউটপুটে ঠিক তাই প্রদান করে (অর্থাৎ, $A=0$ হলে $Y=0$, $A=1$ হলে $Y=1$)।
তোমার মনে প্রশ্ন জাগতে পারে, "তাহলে তার (wire) ব্যবহার না করে গেট কেন ব্যবহার করব?"
এর প্রধান কারণ দুটি:
১. সিগন্যাল শক্তিশালী করা (Amplification): দুর্বল সিগন্যালকে সবল করে পরবর্তী ধাপে পাঠানো।
২. বিলম্ব তৈরি করা (Delay): সার্কিটের টাইমিং ঠিক রাখার জন্য সিগন্যাল পৌঁছাতে সামান্য দেরি করানো।
৪. সৃজনশীল অংশ: লজিক গেট বাস্তবায়ন (Implementation)
পরীক্ষায় 'ঘ' নাম্বারে বা উচ্চতর দক্ষতায় প্রায়ই প্রশ্ন আসে: "শুধুমাত্র NAND গেট ব্যবহার করে উদ্দীপকের গেটটি (XOR/XNOR) বাস্তবায়ন করো।" এটি মুখস্থ করার বিষয় নয়, বরং লজিক দিয়ে ধাপে ধাপে আঁকতে হয়।
ক. শুধুমাত্র NAND গেট দিয়ে XOR বাস্তবায়ন
আমরা জানি, XOR গেটের সমীকরণ: $Y = A \oplus B = A'B + AB'$।
কিন্তু NAND গেট দিয়ে বাস্তবায়ন করতে হলে সমীকরণটিকে এমনভাবে সাজাতে হবে যেন সেখানে কোনো OR (+) অপারেশন না থাকে, সব AND (.) এবং NOT (') আকারে থাকে।
গাণিতিক প্রমাণ (Derivation):
ধাপ ১: ডি-মরগ্যান ল' ফেলার জন্য আমরা জানি $X = (X')'$।
$$Y = A'B + AB'$$
$$= A'B + AB' + AA' + BB'$$ [কারণ $AA'=0$, $BB'=0$, যোগ করলে মানের পরিবর্তন হয় না]
$$= A(A' + B') + B(A' + B')$$ [কমন নিয়ে]
$$= A(AB)' + B(AB)'$$ [ডি-মরগ্যান সূত্র: $A'+B' = (AB)'$]
এখন পুরো রাশিটির ওপর ডাবল বার (Double Bar) দিই:
$$Y = ((A(AB)' + B(AB)')')'$$
$$Y = ((A(AB)')' \cdot (B(AB)')')'$$ [ডি-মরগ্যান সূত্র: $(P+Q)' = P'.Q'$]
এই শেষ লাইনটিই হলো আমাদের কাঙ্ক্ষিত NAND ফরম্যাট। এটি বাস্তবায়ন করতে ঠিক ৪টি NAND গেট প্রয়োজন।
বাস্তবায়ন কৌশল:
১. প্রথমে একটি NAND গেট দিয়ে $A$ এবং $B$ কে যুক্ত করে $(AB)'$ তৈরি করো।
২. এবার $A$ এবং প্রথম গেটের আউটপুট $(AB)'$ কে দ্বিতীয় একটি NAND গেটে দাও। আউটপুট হবে $(A(AB)')'$।
৩. একইভাবে $B$ এবং প্রথম গেটের আউটপুট $(AB)'$ কে তৃতীয় একটি NAND গেটে দাও। আউটপুট হবে $(B(AB)')'$।
৪. শেষে দ্বিতীয় ও তৃতীয় গেটের আউটপুটকে চতুর্থ একটি NAND গেটে যুক্ত করো।

খ. শুধুমাত্র NOR গেট দিয়ে XNOR বাস্তবায়ন
NOR গেটের ধর্ম হলো এটি যোগের বিপরীত (OR-NOT)। XNOR গেটও অনেকটা সেই লজিক মেনে চলে (Equality Logic)। মজার ব্যাপার হলো, NOR গেট দিয়ে XNOR বাস্তবায়ন করতেও ঠিক ৪টি গেট লাগে এবং এর গঠন NAND-XOR এর মতোই।
সমীকরণটি এমন দাঁড়ায়:
$$Y = ((A+B)' + (A+B)')'$$ ... (সরলীকৃত রূপ)

গ. গেট সংখ্যার হিসাব (Gate Counting Rule)
MCQ এবং সৃজনশীল প্রশ্নের জন্য নিচের তালিকাটি ঠোঁটস্থ রাখা জরুরি। কোন বিশেষ গেট বাস্তবায়ন করতে কয়টি সার্বজনীন গেট লাগে?
জাদুকরী চার্ট (Magic Chart):
| বাস্তবায়ন (Implementation) | প্রয়োজনীয় গেট সংখ্যা |
|---|---|
| NAND দিয়ে XOR | ৪ টি |
| NOR দিয়ে XNOR | ৪ টি |
| NAND দিয়ে XNOR | ৫ টি (৪টি XOR + ১টি NOT) |
| NOR দিয়ে XOR | ৫ টি (৪টি XNOR + ১টি NOT) |
মনে রাখার সহজ কৌশল: 'ক্রস কানেকশন' বা N-এর সাথে X-এর নামের মিল না থাকলে (যেমন NAND দিয়ে XOR) ৪টি গেট লাগে। আর যদি নামের মিল থাকে (যেমন NAND দিয়ে XNOR), তবে ১টি বেশি অর্থাৎ ৫টি গেট লাগে। তবে NOR এর ক্ষেত্রে উল্টো—NOR দিয়ে XNOR (নামের মিল) = ৪টি।
সংক্ষিপ্ত সারাংশ (Quick Revision)
- XOR গেট: বিজোড় সংখ্যক ১ থাকলে আউটপুট ১। একে 'Inequality Detector' বা 'Odd Detector' বলে।
- XNOR গেট: ইনপুট সমান হলে আউটপুট ১। একে 'Equality Detector' বলে।
- বাস্তবায়ন: NAND গেট দিয়ে XOR তৈরি করতে ৪টি গেট লাগে। NOR গেট দিয়ে XNOR তৈরি করতেও ৪টি গেট লাগে। বাকি কম্বিনেশনে ৫টি করে গেট লাগে।
- প্যারিটি বিট: ডেটা ট্রান্সমিশনে ভুল ধরার জন্য XOR গেট ব্যবহার করে প্যারিটি বিট জেনারেট করা হয়।
পরিভাষা (Glossary)
| শব্দ | ব্যাখ্যা |
|---|---|
| বিশেষ গেট (Special Gate) | XOR এবং XNOR গেট, যা গাণিতিক কাজ ও তুলনায় ব্যবহৃত হয়। |
| প্যারিটি বিট (Parity Bit) | ডেটা স্থানান্তরের সময় ভুল ত্রুটি সনাক্ত করার জন্য যুক্ত অতিরিক্ত বিট। |
| কম্পারেটর (Comparator) | দুটি সংখ্যার মান সমান কি না তা যাচাই করার লজিক সার্কিট (XNOR ব্যবহৃত হয়)। |
| বাস্তবায়ন (Implementation) | এক ধরণের গেট (সাধারণত সার্বজনীন) ব্যবহার করে অন্য কোনো গেটের লজিক তৈরি করা। |
