مقدمة في الأنظمة المضمنة (المدمجة) Intro to Embedded Systems
فهرس المحتويات
1. تعريف الأنظمة المدمجة (المضمنة) Definition of Embedded Systems
يطلق مصطلح الأنظمة المدمجة (المضمنة) Embedded Systems على الشرائح الرقمية المبرمجة ذات الأداء العالي والاستهلاك المنخفض للطاقة والموجودة في نظامِ ما لتقوم بتنفيذ مهام الحوسبة ضمن هذا النظام، حيث تكون الأنظمة المدمجة مكرسة للقيام بوظائف متخصصة ومحددة، بخلاف أنظمة الحوسبة العامة General Purpose Computing Systems التي لا تصلح للاستخدام لأداء مثل هكذا وظائف ومهام، نظراً لكبر حجمها واستهلاكها الكبير للطاقة.
بهذه الصورة، يُمكن تعريف الأنظمة المدمجة كما يلي (بحسب موسوعة ويكيبديا الإنجليزية):
النظام المدمج هو نظام حوسبي متخصص specialized computer system والذي يجمع المعالج Processor، الذواكر Memories وطرفيات الدخل والخرج I/O وذلك بهدف إنجاز وظيفةِ محددة ومتخصصة ضمن نظام ميكانيكي أو كهربائي أكبر
2. خصائص الأنظمة المضمنة Characteristics of Embedded System
على اعتبار أن النظام المدمج هو في جوهره نظام حاسوبي، فما الذي يجعله مختلفاً عن الأنظمة الحاسوبية التي نجدها في الحواسيب الشخصية أو الأنظمة الحاسوبية الفائقة التي يعتمد عليها في بناء مخدمات البيانات؟ في الحقيقة الاختلاف الجوهري هو بطبيعة التطبيق أو الوظيفة المطلوب تأديتها من قبل النظام المدمج، فهي كما أسلفنا سابقاً مُصممة لتنفيذ مهام متخصصة وضمن قيود وضوابط تتعلق بزمن الاستجابة واستهلاك الطاقة.
لو فكرنا مثلاً بأجهزة استشعار الحرارة المنزلية البسيطة والتي تقوم بوظيفة واحدة: إظهار درجة الحرارة في الغرفة التي يوجد فيها الجهاز. بمثل هذه الحالة، سنجد أن الجهاز يقوم بوظيفة محددة ومتخصصة وهي استشعار الحرارة من المحيط، معالجة هذه المعلومات وعرضها على شاشة أو عبر تطبيقِ متصل بالهاتف الذكي. من أجل تنفيذ هذه المهمة، سنحتاج إلى نظامِ حاسوبيّ بسيط يقرأ خرج مستشعر الحرارة عبر مبدلِ تشابهيّ رقمي، ومن ثم يعالج هذه القراءات ويحولها لإشاراتِ يمكن عرضها مثلاً على شاشة كريستال سائل صغيرة أو يرسلها عبر وحدة بلوتوث إلى هاتفِ ذكيّ.
بهذه الصورة، فإن استخدام وحدة معالجة مركزية مشابهة لتلك الموجودة في الحواسيب الشخصية سيكون غير ضرورياً من وجهة نظر هندسية واقتصادية، لأن هذه المعالجات مصممة للتعامل مع كمِ كبيرِ من المعطيات وتنفيذ العديد من المهمات والعمليات الحسابية في آنِ واحدِ معا، وهو ما لا نحتاجه بحالة جهازِ بسيط يمتلك وظيفة واحدة وهي استشعار درجة حرارة الغرفة وعرضها.
ولذلك، وعوضاً عن وحدة معالجة مركزية ضخمة، يمكن استخدام متحكم دقيق Microcontroller (أحد أشكال الأنظمة المدمجة) لتنفيذ هذه المهمة كونه يوفر معظم المتطلبات الضرورية لأداء هذه المهمة ضمن شريحة واحدة وباستهلاك طاقةِ أقل وبجهدِ تصميم عتادي وبرمجي أبسط بكثير.
انطلاقاً من المثال البسيط السابق، يمكن تعداد خصائص الأنظمة المدمجة ومميزاتها كما يلي:
1.2 وظيفة متخصصة Dedicated Purpose
يتم تصميم النظام المدمج ليقوم بوظيفةِ متخصصة ومحددة، والمثال الأشهر على ذلك هو استشعار درجة الحرارة في الغرفة وعرضها على شاشة، أو تشغيل دارة قيادة محرك كهربائيّ اعتماداً على أوامر معينة.
2.2 قيود وضوابط الزمن Real-Time Constraints
عند تصميم النظام المدمج عادةً ما يجب الالتزام بقيود الاستجابة في الزمن الحقيقي Real-Time Response، والتي تعني أن هنالك زمناً حدياً يجب على النظام المدمج أن يلتزم به من أجل تأدية المهمة المطلوبة. كمثال، يجب أن يكون النظام قادراً على عرض تغير درجات الحرارة كل ثانية.
3.2 محدودية الموارد Resource Limits
نظراً لطبيعة الأنظمة المدمجة الموجهة لتنفيذ مهامِ محددة، يتم تصميمها لتعمل بأعمل كفاءة ممكنة، وهذا يعني امتلاكها موارد أقل بكثير من تلك الموجودة في أنظمة الحوسبة الخاصة بالحواسيب الشخصية. يظهر هذا الأمر بصورةِ رئيسية عند الحديث عن سرعة المعالجة وسعة الذواكر، التي تكون صغيرة بحالة الأنظمة المدمجة عند مقارنتها بتلك الخاصة بالحواسيب الشخصية. من الشائع مثلاً استخدام معالج صغري بدقة 8-بت وبسرعة معالجة 20 ميجا هرتز وبذاكرة وصول عشوائي قدرها 1 كيلوبايت من نوع SRAM (مثل المتحكم Atmega328P من شركة مايكروتشيب Microchip)، في حين أن الحواسيب الشخصية تعمل بدقة 64-بت وسرعة معالجة من رتبة الجيجا هرتز وذاكرة وصول عشوائي من مضاعفات الجيجا بايت.
4.2 محدودية التفاعل مع العنصر البشري Limited Human Interface
أحد الأمور المميزة بالأنظمة المدمجة هي أننا في الحقيقة لا نشاهدها غالباً في الحياة اليومية بالرغم من تفاعلنا شبه الدائم معها! السبب هو أنها تقوم بالعديد من المهام التي لا تتطلب تفاعلاً مع العنصر البشري، وفي حال وجود تفاعلِ مع البشر فإنه كما أسلفت سابقاً سيكون بشكلٍ محدود وبسيط: شاشة تعرض معلومات حول البيئة المحيطة، لوحة أزرار بسيطة يمكن عبرها إدخال رمز أو أمر لتنفيذ فعلِ ما. بالمقارنة مع الحواسيب الشخصية والهواتف الذكية، لا يمثل تصميم واجهة تخاطب فعالة عادةً أمراً جوهرياً عند الحديث عن تصميم وبناء الأنظمة المدمجة.
3. مكونات الأنظمة المدمجة Components of Embedded Systems
1.3 وحدة المعالجة Processing Unit
يقصد بوحدة المعالجة الجزء الخاص بالنظام المدمج الذي يقوم بمهام معالجة البيانات والعمليات الحسابية المختلفة. قد تكون وحدة المعالجة الخاصة بالنظام المدمج عبارة عن شريحة متكاملة تتضمن كافة الوحدات الضروية لعمل النظام (المعالج، الذواكر والطرفيات)، وأشهر مثال على ذلك هو المتحكمات الدقيقة (الصغرية)، أو قد تكون وحدة المعالجة دارة رقمية أكثر تخصصاً مثل معالج البيانات الرقمي DSP: Digital Signal Processor، أو مصفوفة حقلية قابلة للبرمجة FPGA أو دارة متكاملة متخصصة الوظيفة ASIC.
2.3 الذواكر Memories
بما أن النظام المدمج هو نظام حاسوبي، فلا بد من وجود ذواكر تحفظ البيانات أثناء المعالجة أو تحفظ معلوماتِ معينة غير متغيرة بشكل دائم، وهذا يعني أن النظام المدمج يحتوي على نوعين من الذواكر:
- الذواكر الدائمة (غير المتطايرة Non-Volatile): مثل ذواكر القراءة فقط ROM، أو ذواكر القراءة القابلة لإعادة البرمجة EEPROM
- الذواكر المؤقتة (المتطايرة Volatile): أي التي تحفظ البيانات فقط في حالة وجود تغذية كهربائية، مثل ذاكرة العمل (أو ذاكرة الوصول العشوائي) رام RAM
3.3 الطرفيات Peripherals
الطرفيات Peripherals هي دوائر إلكترونية متخصصة لتنفيذ مهامِ معينة. لو عدنا لمثال استشعار الحرارة المحيطة، فإن وحدة المعالجة الموجودة داخل المتحكم الدقيق تستخدم طرفية المبدل التشابهي الرقمي من أجل قراءة الجهد الكهربائيّ الناتج عن عمل المستشعر، وهذا الجهد نفسه يتناسب مع درجة الحرارة المحيطة. يجب الإشارة إلى أنه عند الحديث عن الطرفيات فإننا نشير غالباً بشكلِ ضمني إلى نظام مدمج قائم على متحكم دقيق.
أشهر أنواع الطرفيات في الأنظمة المدمجة:
- طرفية المبدل التشابهي الرقمي Analog-to-Digital Converter: من أجل مهام الاستشعار وقراءة خرج الحساسات (المستشعرات)
- طرفية المؤقت الزمني Timer: التي توفر وسيلة لتوليد إشاراتِ زمنية يمكن استخدامها في عمليات جدولة المهام أو توليد إشارات توليف عرض النبضة PWM
- طرفية الاتصال التسلسلي UART: من أجل تبادل البيانات وفق معيار الاتصال التسلسلي
- طرفية الاتصال المقارن التشابهي Analog Comparator
- طرفية التخاطب التسلسلي SPI: Serial Peripheral Interface
- طرفية التخاطب ثنائي السلك TWI/I2C
- طرفية المقاطعات الخارجية External Hardware Interrupt
4. أنواع الأنظمة المضمنة
يُمكن تقسيم الأنظمة المضمنة بحسب طبيعة وحدة المعالجة التي تمتلكها إلى الأنماط أو الأنواع التالية:
1.4 دارة منطقية مبنية على شريحة متكاملة PLD: Programmable Logic Device
يعتبر استخدام شرائح PLD أفضل بكثير من استخدام الدارات المنطقية، وذلك لأنه يمكن تمثيل التّصميم المطلوب بدارةٍ مُتكاملة واحدة بدلاً من استخدام عدة دارات منفصلة. تتألف شرائح PLD من مَصفوفةٍ كبيرة من البوابات المَنطقية القابلة للبرمجة، حيث أن المُصمم هو الذي يحدد وظيفة هذه البوابات. تتميز شرائح PLD بالسرعة في الأداء والاستهلاك المُرتفع للطاقة، ولكن عادةً ما ينتج هدر كبير بسبب الاستخدام الجزئي لهذه الشريحة ( بمعنى أنه من الممكن أن نكون قد استخدمنا 20 بوابة مَنطقية لتمثيل التصميم المطلوب، و لكن عادة ما تحتوي شرائح PLD أكثر من 150 بوابة، هذا ما يؤدي إلى ارتفاع في استهلاك الطاقة وهدر كبير لإمكانيات PLD).
2.4 دارة متكاملة متخصصة التطبيق ASIC: Application Specific Integrated Circuit
إن دارات ASIC تغطي عيوب دارات PLD وذلك لأنها تستخدم فقط البوابات المنطقية المطلوبة للتصميم ممّا يقلل من استهلاك الطاقة و يمنع الهدر الحاصل عند استخدام شرائح PLD.
3.4 المتحكمات الدقيقة (الصغرية) Microcontrollers
تتميز المتحكمات والمعالجات الصغرية باستهلاك أقل للطاقة من شرائح PLD، ولكنها بالمقابل تكون ذات سرعة أخفض ويتم برمجتها بشكل أساسي باستخدام لغات التّجميع Assembly، وحديثاً يتم استخدامها باستخدام اللغات عالية المستوى، وأهمها لغة C. يُعتبر استخدام المُتحكمات أحد الحلول الفعالة بسبب الإمكانيات الكبيرة التي يوفرها بالمُقارنة مع سعره. كما تتميز المُتحكمات الصغرية بأنها ذات جهود تغذية منخفضة (1.5 حتى 5 فولت) وتتواصل جهود التغذية بالتناقص حتى وصلت تغذية نواة بعض المتحكمات إلى 0.8v.
4.4 معالج الإشارة الرقمية DSP: Digital Signal Processor
هو مُعالج صغريّ من نوعٍ خاص، يملك عتاداً صلب مُعد للتعامل مع العمليات الحسابية المعقدة والمَصفوفات العددية. يتميز بأنه أسرع بكثير من المُتحكمات المصغرة، وقادر على التعامل مع العمليات والخوارزميات الرياضية المعقدة، والتي تنتج كمياتٍ كبيرة من البيانات تتطلب قوة وأداء حاسوبي أعلى من تلك التي يقدمها المتحكم الصغري التقليدي. إن الغرض المُهم للـ DSP هو القراءة السريعة للبيانات على مداخله وانجاز الخوارزميات المُعقدة عليها وإخراج النتائج. وهو مستخدم في معالجة الصوت والفيديو وفي الاتصالات والرادارات والأجهزة الطبية وأجهزة الهاتف المحمول وأجهزة التحكم في القدرة.
يتجه بعض المُصنّعين إلى دمج بعض من خصائص الـ DSP في متحكماتهم وبالتالي الحصول على متحكم صغري Microcontroller معالج إشارة رقمية في شريحة واحدة.
5.4 مصفوفة البوابات المنطقية القابلة للبرمجة FPGA: Field Programmable Gate Array
شرائح الـ FPGA هي شرائح رقمية منطقية قابلة للبرمجة بشكلٍ صلب، وذلك يعني أنه بإمكاننا برمجتها للحصول أي تابع منطقي. يتم برمجتها باستخدام لغة VHDL بشكلٍ أساسي .من أهم مزايا الـ FPGA بالإضافة إلى كلفتها المنخفضة أنها تؤمن مرونة كبيرة في التصميم وقدرة على إعادة برمجتها في الزمن الحقيقي.
5. اعتبارات التصميم المنطقي للنظام المدمج
عند تصميم الأنظمة المضمنة تؤخذ الاعتبارات التالية:
- ضوابط الزمن الحقيقي Real-Time Constrains: أي أن هذه الأنظمة يجب أن تتفاعل مع الأحداث لحظة وقوعها وهذا ما نسميه بـ “المعالجة ضمن الزمن الحقيقي Real Time Processing”.
- تصميم النظام بحيث يكون ذو استهلاك منخفض للطاقة Low Power-Consumption
- اعتبارات التشغيل البيئية (مقاومة الرطوبة، الحرارة، الرياح)
- يكون للأنظمة المضمنة عدد أقل من موارد النظام والأجهزة المحيطية وذلك لأن النظام المضمن مصمم لإنجاز هدف محدد في حين أن الحاسب مصنع للاستخدامات المتنوعة في جميع المجالات
- مقاومة الضجيج
تمثل مقاومة الضجيج، استهلاك الطاقة Power consumption سرعة المعالجة اعتبارات هامة جداً في التصميم المنطقي. ويجب أن يؤخذ المكان والبيئة التي ستعمل فيها المنظومة بعين الاعتبار. فمثلاً، إذا كانت المنظومة ستعمل ضمن مصنع يحوي محركات كهربائية كبيرة أو قرب مَحطات إرسال راديو أو تلفزيون، فيجب استخدام دارات مُتكاملة من عائلات ذات مناعة عالية ضد الضجيج. والمناعة تعني أن الدارة غير حساسة لجهود الضجيج التي يتم توليدها وبثها بشكل غير مرغوب إلى النظام الإلكتروني، وإذا لم يكن ذلك كافياً، فيجب استخدام أسلاك توصيل محجوبة Shielded لنقل الإشارات المنطقية. لا يُعتبر استهلاك الطاقة مشكلة في التجهيزات التي تتغذى عبر مُقوّم ومُنظم من منبع جهد الشبكة ولكن يجب أن تصمم الأجهزة التي تعمل على بطاريات باستخدام دارات قليلة الاستهلاك للطاقة. تُعتبر سرعة العمل إحدى المعايير التي تُضيّق مجال اختيار نوع الدارة المتكاملة أو المعالج ولذلك يجب دراسة نشرات المواصفات الفنية Datasheet التي تُعطيها الجهات الصانعة من أجل تحقيق أفضل انتقاء للعائلة المنطقية التي تحقق المطلوب.
يُمثل عامل تحميل الخرج لبوابةٍ مَنطقية أو لأداةٍ مَنطقية عدد المداخل التي يمكن وصلها مع الخرج في وقت واحد، ويجب مراعاة هذا العامل بدقة للتأكد من أن خرج الدارة لن يُجبَر على قيادة أو تشغيل ما يزيد عن إمكانياته من المداخل المنطقية.
يمثل التأخير الزمني ضمن العنصر المنطقي (بوابة مثلاً) والذي يسمى تأخير الانتشار، الوقت بين لحظة تطبيق الدخل المنطقي وظهور الخرج المنطقي الموافق. وهذا التأخير يمكن أن يسبب أحياناً مَشاكل كالحالات العابرة غير المرغوبة أو يسبب ما يسمى glitches.
6. اعتبارات تصميم الدارات المطبوعة PCB
يجب الأخذ بعين الاعتبار تأثير التداخل الكهرومغناطيسي EMI: Eletromagnetic Interferenceعند تصميم الدارة المطبوعة الخاصة بالنظام المضمن، حيث أن النظام الإلكتروني الذي لا يراعي اعتبارات الحماية من التداخل الكهرومغناطيسي أو الضجيج قد يقود إلة منطق غير متنبأ به بين مكونات الدارة الإلكترونية بالإضافة إلى فشل حلقة قفل الطور phase-locked loop failures وبالتالي تقليل الوثوقية للدارة.
إن المصدر الرئيسي للتشويش في الأنظمة المضمنة:
1- منبع التغذية التقطيعي switching power supplies.
2- تيار النمط المشترك common mode current.
3- الجزر الأرضية الصاخبة noisy ground islands.
4- الإشارات ذات الترددات العالية high frequency switching signals.
5- الهزازات oscillators.
6- حلقات قفل الطور phase-locked loop circuits.
7- خطوط النقل الكهربائية the transmission line effect.
8- التأثير المتبادل بين خطوط نقل الإشارة crosstalk between signals.
مثلاً، عند اقتراب خطي إشارة يحملان تردداً عاليا، يُمكن أن ينشأ تبادل راديوي متبادل بينهما. حيث أن خط النقل الذي يحمل ترددات عالية يمكن تشبيهه بهوائي يصدر أمواجا كهرمغناطيسية يؤثر على العناصر المحيطة. أحد الوسائل الفعالة للتعامل مع الضجيج هو استخدام مكثفات إزالة الاقتران Decoupling Capacitors من خلال توصيلها بين خطي التغذية والأرضي فتقوم بقصر الترددات أو ترشيح الضجيج، ولكن يجب الإشارة إلى أن فاعليتها مرتبطة بالترددات المطلوب ترشيحها، وكذلك مرتبطة بعوامل تصميمية أخرى مثل موضعها، مسار العودة للأرضي، عرض مسارات اللوحة الإلكترونية وتوزيع الطبقات عليها.
7. خلاصة









4 تعليقات