7.11. وحدات المعالجة العصبية (NPUs)

تشغّل H7 وRT1062 الاستدلال على وحدة معالجة مركزية Cortex-M عبر TFLM وCMSIS-NN. أما AE3 وN6 فتضيفان وحدة معالجة عصبية مخصصة على القالب نفسه -- خط أنابيب موترات في سيليكون ثابت يشغّل العوامل الثقيلة دون أن يشغل وحدة المعالجة المركزية. تأتي وحدتا المعالجة العصبية في تشكيلة OpenMV من مورّدين مختلفين وسلاسل أدواتهما مختلفة، لكن الكاميرا تكشف كلتيهما عبر واجهة ml.Model نفسها. ما يختلف هو الملف على القرص ووقت التشغيل الذي يمر عليه.

7.11.1. AE3 -- Arm Ethos-U55

تحمل AE3 وحدة معالجة عصبية Ethos-U55 من Arm على القالب نفسه مع نواة تطبيقات Cortex-M55. وVela هو المترجم غير المتصل الذي يجهّز نموذجاً لها: يأخذ Vela ملف .tflite قياسياً ويُخرج ملف .tflite تكون فيه الرسوم الفرعية المؤهلة لـ NPU قد طُويت داخل عامل Ethos-U مخصص يحمل أوامر البايت التي تشغّلها NPU. وعند الاستدلال يمر TFLM على الملف بشكل عادي؛ فيوزّع عامل Ethos-U أوامر البايت الخاصة به عبر مشغّل Ethos-U، وأي عامل لم يطوِه Vela يرجع إلى CMSIS-NN على M55.

7.11.2. N6 -- ST Neural-ART

تحمل N6 وحدة المعالجة العصبية Neural-ART من ST وتشغّل STAI -- وقت تشغيل ST الخاص بها -- بدلاً من TFLM. وSTEdgeAI هو المترجم غير المتصل: يأخذ نموذجاً ويُخرج كتلة شبكة قابلة لإعادة التموضع مُهيأة لعتاد Neural-ART. يحمّل STAI الكتلة من ROMFS ويمر عليها مباشرة على NPU. وتغطية العوامل هي ما يدعمه STEdgeAI للقطعة.

7.11.3. البرنامج النصي نفسه، كاميرا مختلفة

تكشف كلتا وحدتي المعالجة العصبية موترات الإدخال والإخراج نفسها بمعاملات التكميم نفسها كما يفعل النموذج المُشغَّل على وحدة المعالجة المركزية. فالبرنامج النصي المكتوب لكاميرا واحدة يعمل على أخرى بتحميل ملف نموذج مُجهَّز لوحدة المعالجة العصبية لتلك الكاميرا. أما عتبات الكشف، ومعالجة منطقة الاهتمام (ROI)، وربط المعالج اللاحق -- وهي القرارات على مستوى البرنامج النصي -- فلا تتغير.