ألف باء البوابات المنطقية
الهندسة والآليات >>>> الترانزستورات
(لمعلومات أكثر عن الترانزستورات وأنواعها: هنا)
تُعرَف البوابات المنطقية بأنها دارات رقمية لها حالتان إما تسمح بمرور الإشارة للخرج أو لا تسمح، وذلك بناءً على قيمة إشارة (أو إشارات) الدخل. يعد الإنكليزي جورج بول George Boole 1815-1860 أول من اخترع فكرة البوابات المنطقية، لذلك تسمى هذه البوابات في بعض المراجع البوابات البوليانية. [2]
وهناك سبعة أنواع رئيسية لهذه البوابات هي:
AND، OR، NOT، NAND (not AND)، NOR (not OR)، XOR، XNOR (not XOR)
وهي موضحة بالصورة:
Image: SYR-RES
حيث تمثل الجهة اليسرى الدخل (الأحرف تعبر عن إشارات الدخل الرقمية التي تأخذ إحدى القيمتين المنطقيتين صفر(0 فولط) أو واحد (5 فولط)، وتمثل الجهة اليمنى الخرج OUT، وتوضح الجداول التي تدعى جداول الحقيقة قيمة الخرج لكل حالة ممكنة من حالات الدخل.
سنشرح فيما يأتي كيفية تحقيق بعض هذه البوابات باستخدام دارات CMOS (لمزيد عن المعلومات عن هذه الدارات يرجى زيارة الرابط الآتي هنا)
وسنبدأ بالبوابة الأبسط NOT: لهذه البوابة إشارة دخل واحدة وتكون إشارة خرجها معاكسة لإشارة الدخل، أما عن تحقيق هذه البوابة فنحتاج إلى ترانزستورين أحدهما من النوع N والآخر من النوع P موصولان كما في الصورة:
Image: http://www.cs.cornell.edu/courses/cs3410/2018fa/schedule/slides/02-gates.pdf
تجدر الإشارة إلى أنه عند تطبيق جهد مرتفع على دخل ترانزستور من نوع P-gate؛ فإنه يتحول إلى دارة مفتوحة، أما ترانزستور N-gate فيعمل عمل مقاومة (سلك) في هذه الحالة، والعكس صحيح.
Image: http://www.cs.cornell.edu/courses/cs3410/2018fa/schedule/slides/02-gates.pdf
نلاحظ في دارة NOT أنه عندما تكون إشارة الدخل ذات قيمة 1 فإن ترانزستور P-gate لا يسمح بمرور التيار إلى الخرج على عكس ترانزستور N-gate الذي يصبح وكأنه مقاومة، مما يعني ظهور الجهد المنخفض (الأرضي 0) على الخرج والعكس صحيح، فعند وجود إشارة دخل ذات قيمة (0) سيمرر ترانستور P التيار في حين سيكون ترانزستور N كدارة مفتوحة، مما يعني ظهور الجهد المرتفع على الخرج، كما هو موضح بالشكل:
Image: http://www.cs.cornell.edu/courses/cs3410/2018fa/schedule/slides/02-gates.pdf
أما الدارتان الآتيتان في القائمة فهما دارتا NAND أي NOT AND ودارة NOR أي NOT OR وذلك لأن تصميمهما إلكترونيًّا أبسط من دارتي OR وAND.
Image: www.cs.cornell.edu
Image: www.cs.cornell.edu
يمكننا الحصول على دارتي AND، OR بوصل دارة NOT على خرج الدارتين السابقتين.
وتجدر الإشارة إلى أنه بالإمكان تصميم أي تابع أو دارة منطقية باستخدام دارة NAND أو NOR مهما بلغ تعقيدها، وأن معظم ما نشهده اليوم من تطور تقني في مجال المعالجات والحاسبات والمتحكمات ينطلق من المبدأ ذاته لهذه الدارات ولكن بشكل أكثر تعقيدًا، إذ يصل عدد الترانزستورات في المعالجات الحاسوبية الحديثة إلى عدة مليارات. [3]
أما عن دارة XOR فيمكن الحصول عليها أيضًا بوصل مجموعة من البوابات كما في الشكل الآتي:
Image: www.cs.cornell.edu
نلاحظ من جدول الحقيقة لدارة XOR الموضح في صورة سابقة من المقال أن خرج الدارة يكون 1 عندما يكون واحدًا فقط من الدخلين 1، أما في حالة دخلين متشابهين فالخرج سيكون صفرًا، ولتحقيق هذا نلاحظ تشابهًا مع جدول الحقيقة لـ OR ما عدا الحالة الأخيرة وهي أن يكون كل من الدخلين 1، نلاحظ أيضًا أن دارة NAND تعطي خرج 1 في جميع الحالات عدا حالة كلا الدخلين 1، ولذلك فإن إضافة خرج هذه الدارة إلى دخل دارة AND سيؤثر فقط في حال كان كل من A و B يساويان 1 وسيجعل الخرج صفرًا وهو التعديل المطلوب على دارة OR لتحويلها لدارة XOR من الدارة السابقة نستنتج:
Image: www.cs.cornell.edu
يمكن تحقيق دارة XOR بطرائق أخرى عديدة فيمكن تحقيقها بواسطة بوابات NAND فقط كما وضحنا سابقًا أنه يمكن إنجاز أي دارة بواسطة هذه البوابات، وهناك طريقة أخرى نتمنى منك أن تستنتج المعادلة الناتجة عنها وهي:
Image: www.cs.cornell.edu
ونحن بانتظار إجاباتكم. [4]
تذكر إذا أردت تصميم دارتك الخاصة يجب عليك حماية عناصرك بالمقاومات والمكثفات المناسبة لتجنب التيارات العالية التي تؤدي لاحتراق العناصر.
المصادر:
1- هنا
2- هنا
3- هنا
4- هنا