XOR gate

| XOR gate truth table | ||
|---|---|---|
| Input | Output | |
| A | B | A XOR B |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
The XOR gate (sometimes EOR, or EXOR and pronounced as exclusive OR, ksor or sometimes EX-OR) is a digital logic gate that gives a true (1 or HIGH) output when the number of true inputs is odd. An XOR gate implements an exclusive or () from mathematical logic; that is, a true output results if one, and only one, of the inputs to the gate is true. If both inputs are false (0/LOW) or both are true, a false output results. XOR represents the inequality function, i.e., the output is true if the inputs are not alike otherwise the output is false. A way to remember XOR is "must have one or the other but not both".
An XOR gate may serve as a "programmable inverter" in which one input determines whether to invert the other input, or to simply pass it along with no change. Hence it functions as a inverter (a NOT gate) which may be activated or deactivated by a switch.[1][2]
XOR can also be viewed as addition modulo 2. As a result, XOR gates are used to implement binary addition in computers. A half adder consists of an XOR gate and an AND gate. The gate is also used in subtractors and comparators.[3]
The algebraic expressions or or or all represent the XOR gate with inputs A and B. The behavior of XOR is summarized in the truth table shown on the right.
Symbols
There are three schematic symbols for XOR gates: the traditional ANSI and DIN symbols and the IEC symbol. In some cases, the DIN symbol is used with ⊕ instead of ≢. For more information see Logic gate symbols.
The "=1" on the IEC symbol indicates that the output is activated by only one active input.
| ANSI XOR schematic symbol | IEC XOR schematic symbol | DIN XOR schematic symbol |
The logic symbols ⊕, Jpq, and ⊻ can be used to denote an XOR operation in algebraic expressions.
C-like languages use the caret symbol ^ to denote bitwise XOR. (Note that the caret does not denote logical conjunction (AND) in these languages, despite the similarity of symbol.)
Implementation
تُنفذ بوابة XOR عادةً باستخدام دوائر MOSFET . ومن بين هذه التطبيقات:
عكس AND-OR
يمكن تنفيذ بوابات XOR باستخدام منطق AND-OR-invert ( AOI ) أو منطق OR-AND-invert ( OAI ). [ 4 ]
بوابة XOR باستخدام بوابة AOI 2-1.
بوابة XOR باستخدام بوابة OAI 2-2 ومدخلات معكوسة.
CMOS
يتم عرض تطبيقات أشباه الموصلات المعدنية المؤكسدة ( CMOS ) لبوابة XOR المقابلة لمنطق AOI أعلاه أدناه.
على اليسار، تم ترتيب ترانزستورات nMOS و pMOS بحيث تكون أزواج الإدخالوقم بتفعيل ترانزستوري pMOS الموجودين في أعلى اليسار أو ترانزستوري pMOS الموجودين في أعلى اليمين على التوالي، وقم بتوصيل Vdd بالمخرج للحصول على إشارة منطقية عالية. أزواج الإدخال المتبقيةوقم بتفعيل كل مسار من مساري nMOS الموجودين في الأسفل إلى Vss للحصول على مستوى منطقي منخفض. [ 5 ]
إذا كانت المدخلات المعكوسة (على سبيل المثال من قلاب ) متوفرة، فيمكن استخدام هذه البوابة مباشرةً. وإلا، فستكون هناك حاجة إلى عاكسين إضافيين، كل منهما يحتوي على ترانزستورين، لتوليدووبذلك يصل العدد الإجمالي للترانزستورات إلى اثني عشر.
تم استخدام تطبيق AOI بدون إدخال معكوس، على سبيل المثال، في وحدة المعالجة المركزية Intel 386. [ 6 ]
مثال على بوابة XOR بتقنية CMOS
بوابة XOR بتقنية CMOS باستخدام منطق AOI
بوابات الإرسال
يمكن أيضًا تنفيذ بوابة XOR من خلال استخدام بوابات النقل مع منطق الترانزستور المارة .

يستخدم هذا التطبيق بوابتي نقل وعاكسين غير موضحين في الرسم التخطيطي لتوليدوبإجمالي ثمانية ترانزستورات، أي أقل بأربعة من التصميم السابق. تُنفَّذ دالة XOR بتمرير القيمة المعكوسة للمدخل A إلى المخرج عندما يكون المدخل B عاليًا، وتمرير قيمة A عندما يكون المدخل B منخفضًا منطقيًا. لذا، عندما يكون كلا المدخلين منخفضين، تكون بوابة النقل السفلية مُطفأة، بينما تكون البوابة العلوية مُفعَّلة، مما يسمح بمرور A الذي يكون منخفضًا، وبالتالي يكون المخرج منخفضًا. عندما يكون كلا المدخلين عاليين، تكون البوابة السفلية فقط هي النشطة، مما يسمح بمرور القيمة المعكوسة للمدخل A، وبما أن A يكون عاليًا، فسيكون المخرج منخفضًا أيضًا. وبالمثل، إذا بقي المدخل B عاليًا بينما كان A منخفضًا، فسيكون المخرج منخفضًا.وهو مرتفع كما هو متوقع، وإذا كانت قيمة B منخفضة ولكن قيمة A مرتفعة، فإن قيمة A تمر ويكون الخرج مرتفعًا، وبذلك يكتمل جدول الحقيقة لبوابة XOR. [ 7 ]
يتمثل العيب في التنفيذ السابق في أن بوابات النقل ليست مفاتيح مثالية، لذا توجد مقاومة مرتبطة بها، وبالتالي، اعتمادًا على قوة إشارة الإدخال، قد يؤدي توصيلها على التوالي إلى تدهور مستويات الإخراج. [ 8 ]
توصيلات منطقية محسّنة لبوابة المرور
يمكن تحسين تصميم بوابة النقل السابقة بشكل أكبر من ثمانية إلى ستة ترانزستورات عن طريق تنفيذ وظيفة العاكس الذي يولدوالبوابة السفلية التي تحتوي على ترانزستورين فقط مرتبة مثل العاكس، ولكن مع توصيل مصدر ترانزستور pMOS بـبدلاً من Vdd ومصدر nMOS المتصل بـبدلاً من GND. [ 8 ]

يقوم الترانزستوران الموجودان في أقصى اليسار، والمذكوران أعلاه، بعكس شرطي مُحسَّن للإشارة A عندما تكون الإشارة B في حالة منطقية عالية، وذلك باستخدام منطق ترانزستور التمرير لتقليل عدد الترانزستورات. وعندما تكون الإشارة B في حالة منطقية منخفضة، يكون خرجهما في حالة مقاومة عالية. أما الترانزستوران الموجودان في المنتصف فهما بوابة نقل تُوجِّه الخرج إلى قيمة A عندما تكون الإشارة B في حالة منطقية منخفضة. ويُشكِّل الترانزستوران الموجودان في أقصى اليمين عاكسًا ضروريًا لتوليد الإشارة A.يستخدم بواسطة بوابة النقل ودائرة منطق الترانزستور المارة. [ 9 ]
كما هو الحال مع التنفيذ السابق، يجب مراعاة الاتصال المباشر للمدخلات بالمخرجات من خلال ترانزستورات بوابة التمرير أو من خلال الترانزستورين الموجودين في أقصى اليسار، خاصة عند توصيلها على التوالي.
XOR مع AND و NOR

سيؤدي استبدال بوابة NOR الثانية ببوابة OR عادية إلى إنشاء بوابة XNOR . [ 8 ]
البدائل

إذا لم يتوفر نوع معين من البوابات، يمكن إنشاء دائرة تؤدي نفس الوظيفة باستخدام بوابات أخرى متاحة. على سبيل المثال، يمكن إنشاء دائرة تؤدي وظيفة XOR بسهولة من بوابة XNOR متبوعة ببوابة NOT . إذا نظرنا إلى التعبير التالي:يمكننا بناء دائرة بوابة XOR مباشرة باستخدام بوابات AND و OR و NOT . ومع ذلك، يتطلب هذا الأسلوب خمس بوابات من ثلاثة أنواع مختلفة.
كبديل، إذا كانت هناك بوابات مختلفة متاحة، فيمكننا تطبيق الجبر البولياني لتحويلهاكما ذُكر أعلاه، ونطبق قانون دي مورغان على الحد الأخير للحصول علىويمكن تنفيذ ذلك باستخدام أربع بوابات فقط كما هو موضح على اليمين. وبشكل بديهي، فإن بوابة XOR تُكافئ بوابة OR باستثناء حالة كون كل من A وB في حالة عالية. لذا، فإن عملية AND لبوابة OR مع بوابة NAND التي تُعطي قيمة منخفضة فقط عندما يكون كل من A وB في حالة عالية تُكافئ بوابة XOR.
يمكن إنشاء دائرة بوابة XOR باستخدام أربع بوابات NAND . في الواقع، تُعتبر كل من بوابات NAND وNOR بوابات "شاملة"، ويمكن بناء أي دالة منطقية باستخدام منطق NAND أو منطق NOR فقط. إذا استُبدلت بوابات NAND الأربع ببوابات NOR ، فسينتج عن ذلك بوابة XNOR ، والتي يمكن تحويلها إلى بوابة XOR عن طريق عكس المخرج أو أحد المدخلات (مثلاً باستخدام بوابة NOR خامسة ).
| البوابة المطلوبة | بناء NAND | شركة نور للإنشاءات |
|---|---|---|
يتمثل الترتيب البديل في خمس بوابات NOR في بنية تركز على بناء الوظيفة منمع ملاحظة أن بوابة NOR، وفقًا لقانون دي مورغان، هي بوابة AND ذات مدخل معكوس . وهناك ترتيب بديل آخر يتمثل في خمس بوابات NAND في بنية تُركز على بناء الدالة من، مع ملاحظة من قانون دي مورغان أن بوابة NAND هي بوابة OR ذات مدخل معكوس .
| البوابة المطلوبة | بناء NAND | شركة نور للإنشاءات |
|---|---|---|
بالنسبة لدوائر NAND، يتطلب الترتيب العلوي عددًا أقل من البوابات. أما بالنسبة لدوائر NOR، فيوفر الترتيب السفلي ميزة تقليل زمن التأخير (الفترة الزمنية بين تغير المدخل وتغير المخرج).
عبوات الرقائق القياسية

تتوفر رقائق XOR بسهولة. فيما يلي أكثر رموز الرقائق القياسية شيوعًا:
أكثر من مدخلين
إن التفسير الحرفي لاسم "أو الحصرية"، أو ملاحظة رمز IEC المستطيل، يثير تساؤلاً حول السلوك الصحيح مع مدخلات إضافية. [ 12 ] إذا كانت بوابة منطقية تقبل ثلاثة مدخلات أو أكثر وتُنتج مخرجًا صحيحًا إذا كان أحد هذه المدخلات صحيحًا فقط، فإنها ستكون في الواقع كاشفًا أحاديًا (وهذا هو الحال بالفعل مع مدخلين فقط). ومع ذلك، نادرًا ما يتم تنفيذها بهذه الطريقة عمليًا.
من الشائع اعتبار المدخلات اللاحقة مُطبقة عبر سلسلة من عمليات XOR الثنائية: تُغذى الإشارتان الأوليان إلى بوابة XOR، ثم يُغذى خرج تلك البوابة إلى بوابة XOR ثانية مع الإشارة الثالثة، وهكذا بالنسبة لأي إشارات متبقية. والنتيجة هي دائرة تُخرج القيمة 1 عندما يكون عدد الآحاد عند مدخلاتها فرديًا، والقيمة 0 عندما يكون عدد الآحاد الواردة زوجيًا. وهذا يجعلها مفيدة عمليًا كمولد تكافؤ أو جامع modulo 2 .
على سبيل المثال، يتم الإعلان عن الشريحة الدقيقة 74LVC1G386 على أنها بوابة منطقية ثلاثية المدخلات، وتنفذ مولد التكافؤ. [ 13 ]
التطبيقات
تُعد بوابات XOR وبوابات AND من أكثر الهياكل استخدامًا في تطبيقات VLSI . [ 14 ]
إضافة


يمكن استخدام بوابة XOR المنطقية كجامع أحادي البت، حيث تجمع أي بتين معًا لإخراج بت واحد. على سبيل المثال، عند جمع 1عددين 1ثنائيين ، نتوقع الحصول على ناتج مكون من بتين (أي عشري). بما أن بت المجموع الأخير في هذا الناتج يُحسب باستخدام بوابة XOR، فإن بت الحمل السابق يُحسب باستخدام بوابة AND . هذا هو المبدأ الأساسي في أنصاف الجامعات . يمكن ربط دوائر جامع كاملة أكبر قليلاً معًا لجمع أعداد ثنائية أطول.102
في بعض الحالات، لا يمكن أن تكون مدخلات بوابة OR (كما في جامع كامل) أو بوابة XOR كلاهما 1. ولأن هذا هو التركيب الوحيد الذي تختلف فيه مخرجات بوابتي OR وXOR، يمكن استبدال بوابة OR ببوابة XOR (أو العكس) دون تغيير المنطق الناتج. وهذا مفيد إذا كانت الدائرة تُنفذ باستخدام رقائق دوائر متكاملة بسيطة تحتوي على نوع واحد فقط من البوابات لكل رقاقة.
مولد الأرقام شبه العشوائية

تُعرَّف مولدات الأرقام شبه العشوائية ، وتحديدًا مسجلات الإزاحة ذات التغذية الراجعة الخطية ، باستخدام عملية XOR. وبالتالي، يمكن لتكوين مناسب لبوابات XOR أن يُحاكي مسجل إزاحة ذي تغذية راجعة خطية، وذلك لتوليد أرقام عشوائية.
كاشفات الطور
يمكن استخدام بوابات XOR في أبسط كاشفات الطور . [ 15 ] : 425
قم بتخزين أو عكس الإشارة
يمكن استخدام بوابة XOR للتبديل بسهولة بين تخزين الإشارة مؤقتًا أو عكسها. على سبيل المثال، يمكن إضافة بوابات XOR إلى مخرج دائرة فك تشفير شاشة العرض ذات السبعة أجزاء لتمكين المستخدم من الاختيار بين خرج منخفض الفعالية أو خرج عالي الفعالية.
الكشف عن الارتباط والتسلسل
تُنتج بوابات XOR إشارةً 0عندما تتطابق المدخلات. عند البحث عن نمط بتات مُحدد أو تسلسل PRN في تسلسل بيانات طويل جدًا، يُمكن استخدام سلسلة من بوابات XOR لمقارنة سلسلة بتات من تسلسل البيانات مع التسلسل المستهدف بالتوازي. 0يُمكن بعد ذلك حساب عدد المخرجات لتحديد مدى تطابق تسلسل البيانات مع التسلسل المستهدف. تُستخدم المُرابطات في العديد من أجهزة الاتصالات، مثل مُستقبلات ومُفككات CDMA، لتصحيح الأخطاء ورموز القنوات. في مُستقبل CDMA، تُستخدم المُرابطات لاستخراج قطبية تسلسل PRN مُحدد من مجموعة مُجمعة من تسلسلات PRN.
يقوم برنامج الربط الذي يبحث 11010في تسلسل البيانات 1110100101بمقارنة بتات البيانات الواردة مع التسلسل المستهدف عند كل إزاحة ممكنة مع حساب عدد التطابقات (الأصفار):
1110100101 (بيانات) 11010 (الهدف) 00111 (XOR) بتان صفريتان 1110100101 11010 00000 خمسة بتات صفرية 1110100101 11010 01110 2 بتات صفرية 1110100101 11010 10011 بتتان صفريتان 1110100101 11010 01000 4 بتات صفرية 1110100101 11010 11111 0 بتات صفرية المباريات حسب الإزاحة: . : : : : : : : ----------- ٠ ١ ٢ ٣ ٤ ٥
في هذا المثال، تتحقق أفضل مطابقة عندما يكون التسلسل المستهدف مُزاحًا بمقدار بت واحد وتتطابق جميع البتات الخمسة. وعندما يكون مُزاحًا بمقدار خمسة بتات، يتطابق التسلسل تمامًا مع معكوسه. من خلال النظر إلى الفرق بين عدد الآحاد والأصفار الخارجة من مجموعة بوابات XOR، يسهل تحديد مكان التسلسل وما إذا كان معكوسًا أم لا. يسهل اكتشاف التسلسلات الطويلة أكثر من التسلسلات القصيرة.
التمثيل التحليلي
هو تمثيل تحليلي لبوابة XOR:
هو تمثيل تحليلي بديل.
انظر أيضاً
مراجع
- ↑ بروش، جيمس د. (2012). الدوائر القابلة للبرمجة العملية: دليل إلى الدوائر المنطقية القابلة للبرمجة، وآلات الحالة، ووحدات التحكم الدقيقة . إلسيفير ساينس. ص 20. ISBN 978-0323139267.
- ^ فان هوتفين ، لورينز (2017). التشفير 101 (PDF) . ص. 17.
- ↑ فليتشر ، ويليام (1980). منهج هندسي للتصميم الرقمي . برنتيس هول. ص 98. ISBN 0-13-277699-5.
- ^ فيشر، ب. “Aussagenlogik und Gatter” (PDF) . جامعة هايدلبرغ. مؤرشفة من الأصلي (PDF) بتاريخ 2024-03-28 . تم الاسترجاع 2024-01-21 .
- ↑ بيدروني، فولني أ. (25 يناير 2008). الإلكترونيات الرقمية والتصميم باستخدام لغة VHDL . مورغان كوفمان. ISBN 978-0-08-055755-7تم الاطلاع عليه بتاريخ 8 نوفمبر 2022 .
- ↑ شريف، كين. "دائرتان مثيرتان للاهتمام من نوع XOR داخل معالج إنتل 386" . تم الاسترجاع في 14 يناير 2024 .
- ↑ أوكلوبدزيا، فوجين ج. (26 ديسمبر 2001). دليل هندسة الحاسوب . مطبعة سي آر سي. رقم ISBN 978-0-8493-0885-7تم الاطلاع عليه بتاريخ 8 نوفمبر 2022 .
- 1 2 3 تصميم البوابات المنطقية التوافقية في تقنية CMOS (ملف PDF) . صفحة 233. تم الاطلاع عليه بتاريخ 9 نوفمبر 2022 .
- ↑ أناراتون، سيلفيا (6 ديسمبر 2012). تصميم الدوائر الرقمية بتقنية CMOS . سبرينغر ساينس آند بيزنس ميديا. ISBN 978-1-4613-2285-6تم الاطلاع عليه بتاريخ 8 نوفمبر 2022 .
- 1 2 فردج الله، محمد (15 يونيو 2011). مقدمة في الأنظمة الرقمية: النمذجة، والتركيب، والمحاكاة باستخدام لغة VHDL . جون وايلي وأولاده. ص 38. ISBN 978-1-118-00770-9تم الاطلاع عليه بتاريخ 9 نوفمبر 2022 .
- ↑ روس، ديكون؛ لوي، دوغ (24 سبتمبر 2013). الإلكترونيات الشاملة للمبتدئين - المملكة المتحدة . جون وايلي وأولاده. ص 647. ISBN 978-1-118-58971-7تم الاطلاع عليه بتاريخ 9 نوفمبر 2022 .
- ↑ شوستوف، مايكل أ. (2023-07-04). "عملية "XOR" مقابل "المجموع modulo 2"" . www.edn.com .
- ↑ 74LVC1G386 مؤرشف بتاريخ 29-12-2009 في أرشيف الإنترنت (Wayback Machine) - ورقة البيانات
- ↑ "مقارنة بين تقنيات تصميم مختلفة لبوابات XOR و AND باستخدام أداة محاكاة EDA" .
تُعد بوابات XOR و AND من أهم اللبنات الأساسية لأي تطبيقات VLSI.
- ↑ راباي، جان م. (1996). الدوائر المتكاملة الرقمية : منظور تصميمي . أبر سادل ريفر، نيوجيرسي: برنتيس هول. ISBN 978-0-13-178609-7.
- البوابات المنطقية
- الجبر البولياني
- الإلكترونيات الرقمية
