تصميم منطقي

التصميم المنطقي (Logic Design) أو التصميم الرقمي (Digital Design) هو علم متخصص بالدوائر الإلكترونية الرقمية، التي تُستخدم في تصميم نظم كالحواسيب الرقمية (digital computers) والآلات الحاسبة الإلكترونيـة (electronic calculators) ومعدات الاتصال الرقمية وتطبيقات أخرى عديدة تتطلب معدات رقمية إلكترونية.

التخميد ضد الضجيج واستهلاك الطاقة

تمثل المناعة ضد الضجيج واستهلاك الطاقة والسرعة اعتبارات هامة جداً في التصميم المنطقي. ويجب أن يؤخذ المكان والبيئة التي ستعمل فيها المنظومة المنطقية بالاعتبار، فمثلا : إذا كانت المنظومة ستعمل ضمن مصنع يحوي محركات كهربائية كبيرة أو قرب محطات إرسال راديو أو تلفزيون، فيجب استخدام دارات متكاملة من عائلات ذات تخميد عالي ضد الضجيج.
والتخميد يعني أن الدارة غير حساسة للجهود الضجيجية التي يتم توليدها وبثها بشكل غير مرغوب إلى النظام الإلكتروني، وإذا لم يكن ذلك كافيا ً فيجب استخدام أسلاك توصيل محجوبة لنقل الإشارات المنطقية.
لا يعتبر استهلاك الطاقة مشكلة في التجهيزات التي تتغذى عبر مقوم ومنظم من مصدر جهد الشبكة ولكن يجب أن تصمم الأجهزة التي تعمل على بطاريات من عائلات منطقية قليلة الاستهلاك للطاقة. تعتبر سرعة العمل إحدى المعايير التي تضيق مجال اختيار نوع العائلة المنطقية ولذلك يجب دراسة نشرات المواصفات التي تعطيها الجهات الصانعة من أجل تحقيق أفضل انتقاء للعائلة المنطقية التي تحقق المطلوب.

تحميل المخرج Fan out

يمثل عامل تحميل المخرج لبوابة منطقية أو لأداة منطقية عدد المداخل التي يمكن وصلها مع المخرج في وقت واحد، ويجب مراعاة هذا العامل للتأكد من أن مخرج الدارة لن يجبر على ضبط أو تشغيل ما يزيد عن إمكانياته من المداخل المنطقية. ويحسب هذا العامل عادة من معرفة مطال التيار للمخرج وقسمته على تيار المدخل الذي يشكل حمل لمخرج.

التأخير

يمثل التأخير الزمني ضمن العنصر المنطقي (بوابة إلكترونية مثلا ً) والذي يسمى تأخير الانتشار، الوقت بين لحظة تطبيق المدخل المنطقي وظهور المخرج المنطقي الموافق. وهذا التأخير يمكن أن يسبب أحيانا ً مشاكل كالحالات العابرة غير المرغوبة أو يسبب ما يسمى glitches. وفي الشكل التالي نوضح كيف أن تأخيرا واحدا لأحد المداخل يمكن أن يؤدي إلى حدوث glitch. يمكن أن يكون التأخير الزمني مفيداً كما في الشكل التالي حيث يتم توليد إشارة ضيقة عند كل انتقال للمدخل A من وضعية منطقية إلى حالة أخرى.

الحل

سوف نعتبر أن هذه المسألة هي مسألة منطقية، أي أن المتحولات التي ستؤخذ بعين الاعتبار لها حالتين (1) وتدل على أن النظام يعمل و(0) وتدل على أن النظام لا يعمل. يتكون نظام التحذير من مصباح دلالة يضيء عند تحقق أي من حالات الطوارئ. سوف نرمز للمنظومات الفرعية بمتحولات لها نفس الاسم وبذلك فإن المسألة يمنك تصورها كما في الشكل التالي الذي يبين أن مداخل النظام المنطقي المطلوب تصميمه هي أربع مداخل A, B, C,D وللنظام مخرج واحد هو F وهذا المخرج يجب أن يكون فعالا ً (أي يؤدي إلى إضاءة مصباح التحذير في حالات الطوارئ). نضع جدول الحقيقة للمنظومة حيث نبين فيه الوضعيات المنطقية المحتملة للمداخل وحالة المخرج الموافقة. بما أنه لدينا أربع متحولات دخل فإن الحالات الممكنة لكافة المتحولات هي 16 حالة. ولكي نراعي كل هذه الحالات دون أن ننسى أي واحدة منها نكتب جدول الحقيقة بالطريقة العامة.
نرسم مخطط كارنوف للمسألة :
نعطي الأربع واحدات الموجودة تحت بعضها في العمود الذي فيه A.B=00 الحد. B¯ Ā، وأول واحدين من اليسار من الجدول الذي فيه C.D=00 وA=0 يعطيان الحد Ā.C¯.D¯، وبلف الأربع واحدات الموجودة في الزوايا الأربعة من الجدول مع بعض نحصل على الحد B¯.D¯ وبذلك يكون التابع المنطقي النهائي F هو.B¯+D¯.B¯+ Ā.C¯.D¯ Ā F=
ويمكن تحقيق هذا التابع بواسطة بوابات NAND. نلاحظ من المخطط المنطقي للدارة أن التابع المنطقي F يمكن تحقيقه بواسطة 6 بوابات AND ثنائية المدخل وبوابتي NAND ذات ثلاثة مداخل ومن أجل ذلك نحتاج إلى دارتين متكاملتين Ics من نوع 7400 لأن كل واحدة منهما تحوي أربع بوابات NAND كما نحتاج إلى دارة متكاملة 7410 تحوي ثلاث بوابات NAND ثلاثية المداخل. وعند تنفيذ الدارة تبقى بوابتان في إحدى دارات 7400 بدون استخدام وبوابة واحدة في 7410 غير مستخدمة. يوصل مصباح الدلالة الذي سيوضع في كبينة الطيار بين مخرج البوابة النهائية والأرض وهذا المصباح يمكن أن يكون LED بلون أحمر.
كما يمكن أن توصيل مقاومة 300 أوم مع الدايود على التوالي في حال كانت الإضاءة شديدة. وفي حالات الضرورة يمكن استخدام دارة ترانزيستور لقيادة الدايود الضوئي، عندما يكون F=1 يعمل الترانزيستور ويمر تيار عبر الـ LED فيصدر ضوءاً، أما عندما يكون F=0 فيكون الترانزيستور في حالة قطع ولا يمر تيار في القاعدة ولا في المجمع ولا يضيء الدايود. يمكن أن يكون جهد تغذية الدارة +12 فولت أو +5 فولت.
وبدلا ً عن الدايود يمكن وصل مصباح صغير عادي.

التصميم

في هذه المرحلة يتم تصميم النظام والذاكرة وكيفية تدفق الإشارات والتعامل مع الواجهات الخارجية مثل USB أو RS232 أو Ethernet
و المحترف عادة يستخدم منصات للبرمجة مثل HDL Designer لتصميم مشروعه حيث يصمم الدوائر الرقمية على شكل أنظمة فرعية ليسهل عليه فهم وربط الدوائر الرقمية مع بعضها البعض فهو على الأرجح سيقضي وقت طويل في تطوير وبناء التصميم. على سبيل المثال:
يتم عادة تصميم الدوائر الرقمية المخصصة للتعامل مع واجهة الإيثرنت في نظام فرعي ونظام فرعي آخر لواجهة المنقذ التسلسلي RS232 وأخيراً نظام فرعي لمعالجات الإشارات الواردة من تلك الواجهات وإرسالها مرة أخرى للمخرج. وبدلك عند الحاجة لتعديل النظام الفرعي المخصص لتعديل الإشارات لا يتطلب هذا التعديل المساس بأنظمة الواجهات.

المحاكاة

و الغرض من هذه المرحلة هي اختبار التصميم والتأكد من عمله وتختلف أدوات المحاكاة على حسب الشريحة المستهدفة فمثلاً هناك شركتين هي المشهورة في تصنيع الشرائح الإلكتورنية (FPGA) وهي التيرا وزايلنكس والأداة المستخدمة لشركة التيرا هي الموديل سيم.

قابلية التطبيق

في هذه المرحلة نقوم بعمل (Synthesis) للتصميم لمعرفة ما إذا كان التصميم قابل للاستخدام على الشريحة المستهدفة أو لا. ومعرفة ما إذا كان التصميم ملائم لمساحة ومصادر FPGA المستهدفة.

ضبط المكان والمسار

هنا يتم تحديد مواقع ومسارات المكونات الالكترونية ولكن عادة تتم تلقائياً من الأداة نفسها ويستطيع المصمم تعديل بعض الخيارات مثل أن يستخدم مساحة أقل إذا كان لا يهتم للسرعة أو أن يعمل توازن ويمكن أن يتم ذلك يدوياً إذا أراد المصمم ذلك.