بكسل فيجوال كور

معالج الصور المرئي Pixel Visual Core ( PVC ) هو سلسلة من معالجات الصور المدمجة في حزمة واحدة (SiP) القائمة على معمارية ARM ، من تصميم جوجل . [ 1 ] يتميز معالج PVC ببنية متعددة النوى قابلة للبرمجة بالكامل ، مُخصصة للصور والرؤية والذكاء الاصطناعي، ومُصممة خصيصًا للأجهزة المحمولة، ومستقبلًا لتطبيقات إنترنت الأشياء (IoT ) . [ 2 ] ظهر هذا المعالج لأول مرة في هاتفي جوجل بكسل 2 و2 XL اللذين طُرحا في 19 أكتوبر 2017، ثم ظهر لاحقًا في هاتفي جوجل بكسل 3 و3 XL . ابتداءً من هاتف بكسل 4، تم استبدال هذه الشريحة بمعالج الصور العصبي Pixel Neural Core .

تاريخ

استخدمت جوجل سابقًا معالجات كوالكوم سنابدراجون ( CPU ، GPU ، IPU ، DSP) لمعالجة الصور في أجهزة جوجل نيكسس وجوجل بيكسل . ومع تزايد أهمية تقنيات التصوير الحسابي ، طورت جوجل وحدة معالجة الصور بيكسل (PVC). وتزعم جوجل أن وحدة PVC تستهلك طاقة أقل من المعالج المركزي ومعالج الرسوميات ، مع الحفاظ على قابليتها الكاملة للبرمجة، على عكس وحدة معالجة الموترات (TPU) ودائرة ASIC الخاصة بالتطبيقات . في الواقع، تُزود الأجهزة المحمولة التقليدية بمعالج إشارة الصور (ISP) الذي يتميز بوظائف ثابتة لمعالجة الصور . وعلى النقيض من ذلك، تتمتع وحدة PVC بوظائف مرنة قابلة للبرمجة، لا تقتصر على معالجة الصور فقط.

يحمل غلاف PVC الموجود في هاتفي Google Pixel 2 و 2 XL العلامة SR3HX X726C502. [ 3 ]

تم وضع علامة SR3HX X739F030 على مادة PVC الموجودة في هاتفي Google Pixel 3 و 3 XL . [ 4 ]

بفضل تقنية PVC، حصل هاتفا Pixel 2 وPixel 3 على تقييم DxOMark للهواتف المحمولة بلغ 98 [ 5 ] و101 [ 6 ] على التوالي. وكان الأخير هو أعلى تقييم DxOMark للهواتف المحمولة ذات العدسة الواحدة، متساوياً مع iPhone XR. [ 7 ]

برمجة

عرض رسم بياني موجه غير دوري للنواة (النوى) لمبرمجي PVC

يُكتب برنامج معالجة الصور النموذجي لـ PVC بلغة Halide . حاليًا، يدعم البرنامج مجموعة فرعية فقط من لغة برمجة Halide، دون عمليات الفاصلة العائمة، وبأنماط وصول محدودة للذاكرة. [ 8 ] تُعد Halide لغةً متخصصةً في مجال معين ، تُمكّن المستخدم من فصل الخوارزمية عن جدولة تنفيذها. وبهذه الطريقة، يستطيع المطور كتابة برنامج مُحسَّن لبنية الجهاز المستهدف. [ 2 ]

ISA

يحتوي معالج PVC على نوعين من بنية مجموعة التعليمات (ISA): بنية افتراضية وبنية مادية. أولًا، يُترجم برنامج مكتوب بلغة عالية المستوى إلى بنية افتراضية (vISA) ، مستوحاة من بنية RISC-V ، [ 2 ] والتي تُجرّد تمامًا من جيل الجهاز المستهدف. ثم، يُترجم برنامج vISA إلى ما يُسمى بالبنية المادية (pISA) ، وهي بنية VLIW . تأخذ خطوة الترجمة هذه في الاعتبار معلمات الجهاز المستهدف (مثل حجم مصفوفة وحدات المعالجة، وحجم STP، إلخ...) وتُحدد عمليات نقل البيانات في الذاكرة بشكل صريح. يُمكّن فصل vISA عن pISA الأولى من أن تكون مستقلة عن البنية والجيل، بينما يُمكن ترجمة pISA خارجياً أو من خلال الترجمة الفورية (JIT) . [ 8 ]

بنيان

مثال على أنبوب PVC بأربعة نوى

صُممت وحدة معالجة الصور Pixel Visual Core لتكون بنية متعددة النوى قابلة للتطوير وموفرة للطاقة، تتراوح بين 2 و16 نواة. [ 2 ] تُعدّ وحدة معالجة الصور (IPU) جوهر وحدة معالجة الصور Pixel Visual Core ، وهي وحدة قابلة للبرمجة مُصممة خصيصًا لمعالجة الصور. كما صُممت بنية Pixel Visual Core إما لتكون شريحة مستقلة، مثل SR3HX، أو كوحدة ملكية فكرية (IP) لنظام على شريحة (SoC) . [ 2 ]

وحدة معالجة الصور (IPU)

تحتوي نواة وحدة معالجة الصور (IPU) على معالج استنسل (STP)، ومخزن مؤقت للخطوط (LBP)، وشبكة على شريحة (NoC) . يوفر معالج الاستنسل بشكل أساسي مصفوفة SIMD ثنائية الأبعاد من عناصر المعالجة (PEs) القادرة على إجراء حسابات الاستنسل ، وهي عبارة عن نطاق صغير من البكسلات. على الرغم من تشابهها ظاهريًا مع حسابات المصفوفة الانقباضية وحسابات الجبهة الموجية، إلا أن معالج الاستنسل يتميز بحركة بيانات يتم التحكم فيها برمجيًا بشكل صريح. تحتوي كل وحدة معالجة على وحدتي حساب ومنطق (ALU) سعة 16 بت، ووحدة ضرب وتجميع (MAC) سعة 16 بت ، و10 سجلات سعة 16 بت ، و10 سجلات تنبؤ سعة 1 بت. [ 2 ]

مجموعة مخازن الخطوط (LBP)

نظرًا لأن الوصول إلى ذاكرة الوصول العشوائي الديناميكية (DRAM) يُعدّ من أكثر العمليات استهلاكًا للطاقة، فإن كل معالج STP مزود بمخازن مؤقتة لزيادة موضعية البيانات ، وهي LBP. يستخدم LBP ذاكرة FIFO ثنائية الأبعاد تستوعب أحجامًا مختلفة من عمليات القراءة والكتابة. ويعتمد LBP على نموذج سلوكي أحادي المنتج ومتعدد المستهلكين. يمكن أن يحتوي كل LBP على ثماني ذاكرات منطقية LB وذاكرة واحدة لعمليات الإدخال والإخراج DMA . [ 8 ] ونظرًا للتعقيد الكبير لنظام الذاكرة، يُصنّف مصممو وحدة التحكم LBP كأحد أكثر المكونات تحديًا. [ 2 ] أما شبكة النظام على الشريحة (NoC) المستخدمة فهي شبكة حلقية على الشريحة تُستخدم للتواصل مع النوى المجاورة فقط لتوفير الطاقة والحفاظ على نمط الحساب المتسلسل. [ 2 ]

معالج الاستنسل (STP)

تمثيل للمصفوفة ثنائية الأبعاد لوحدات المعالجة. الوحدات البيضاء هي وحدات معالجة كاملة (16×16)، أما الوحدات الرمادية فهي جزء من "الهالة" (144). ولتوضيح الصورة، لم يتم ذكر جميع الوصلات.

تحتوي وحدة المعالجة المتوازية (STP) على مصفوفة ثنائية الأبعاد من وحدات المعالجة (PEs): على سبيل المثال، مصفوفة 16×16 من وحدات المعالجة الكاملة وأربعة مسارات من وحدات المعالجة المبسطة تُسمى "هالة" . تحتوي وحدة المعالجة المتوازية على معالج قياسي، يُسمى المسار القياسي (SCL)، يقوم بإضافة تعليمات التحكم باستخدام ذاكرة تعليمات صغيرة. المكون الأخير في وحدة المعالجة المتوازية هو وحدة تحميل وتخزين تُسمى مولد الصفائح (SHG)، حيث تمثل الصفيحة وحدة الوصول إلى ذاكرة PVC. [ 2 ]

ملخص تصميم SR3HX

تتميز وحدة المعالجة المركزية SR3HX PVC بمعالج ARM Cortex-A53 من نوع ARMv8a ذي 64 بت ، و8 أنوية لمعالجة الصور (IPU)، وذاكرة LPDDR4 بسعة 512 ميجابايت ، وواجهة MIPI، وواجهة PCIe. تحتوي كل نواة من أنوية معالجة الصور على 512 وحدة حسابية منطقية (ALU) تتكون من 256 عنصر معالجة (PE) مرتبة في مصفوفة ثنائية الأبعاد 16 × 16. تُنفذ هذه الأنوية بنية VLIW ISA مخصصة. يوجد وحدتا حساب منطقي (ALU) 16 بت لكل عنصر معالجة، ويمكنهما العمل بثلاث طرق مختلفة: مستقلة، ومتصلة، ومدمجة. [ 9 ] تُصنع وحدة المعالجة المركزية SR3HX PVC كنظام متكامل في حزمة واحدة (SiP) بواسطة شركة TSMC باستخدام عملية HKMG الخاصة بها بسرعة 28HPM . [ 1 ] وقد صُممت على مدار أربع سنوات بالتعاون مع شركة إنتل . (الاسم الرمزي: مونيت هيل) [ 10 ] تدّعي جوجل أن معالج SR3HX PVC أكثر كفاءة في استهلاك الطاقة من معالج Snapdragon 835 بمقدار 7 إلى 16 ضعفًا . [ 1 ] كما تدّعي أن معالج SR3HX PVC قادر على تنفيذ 3 تريليونات عملية في الثانية، وأن تقنية HDR+ تعمل بسرعة أكبر بخمس مرات وباستهلاك طاقة أقل من عُشر استهلاك معالج Snapdragon 835. [ 11 ] يدعم المعالج Halide لمعالجة الصور و TensorFlow للتعلم الآلي. [ 11 ] تعمل الشريحة الحالية بتردد 426 ميجاهرتز ، وتستطيع وحدة معالجة الصور (IPU) الواحدة تنفيذ أكثر من 1 تيرا أوبس. [ 2 ] [ 8 ] 

مراجع

  1. 1 2 3 كاتريس، إيان. "هوت تشيبس 2018: مدونة جوجل بيكسل المرئية المباشرة (10 صباحًا بتوقيت المحيط الهادئ، 5 مساءً بالتوقيت العالمي المنسق)" . www.anandtech.com . مؤرشف من الأصل في 20 أغسطس 2018. تم الاطلاع عليه في 2 فبراير 2019 .
  2. 1 2 3 4 5 6 7 8 9 10 هينيسي، جون؛ باترسون، ديفيد (2017). هندسة الحاسوب: منهج كمي ( الطبعة السادسة). مورغان كوفمان. الصفحات 579-606 . ISBN   978-0-12-811905-1.
  3. "تفكيك هاتف جوجل بكسل 2 XL" . iFixit . 19-10-2017 . تم الاطلاع عليه بتاريخ 2-02-2019 .
  4. "تفكيك هاتف جوجل بكسل 3 XL" . iFixit . 16-10-2018 . تم الاطلاع عليه بتاريخ 2-02-2019 .
  5. "Pixel 2 DxOMark" . 4 أكتوبر 2017.
  6. "Pixel 3 DxOMark" . 18 سبتمبر 2019.
  7. "iPhone XR DxOMark" . 6 ديسمبر 2018.
  8. 1 2 3 4 "معالج الصور المرئي Pixel: معالج الصور والرؤية والذكاء الاصطناعي القابل للبرمجة بالكامل من جوجل للأجهزة المحمولة. HotChips2018" (PDF) .
  9. "Pixel Visual Core (PVC) - Google - WikiChip" . en.wikichip.org . تم الاطلاع عليه بتاريخ 2019-02-02 .
  10. "جوجل تتعاون مع إنتل لتطوير شريحة Pixel Visual Core في هاتف Pixel 2" . xda-developers . 25 أكتوبر 2017. تاريخ الاطلاع: 2 فبراير 2019 .
  11. 1 2 "معالج الصور المرئي Pixel: معالجة الصور والتعلم الآلي على Pixel 2" . جوجل . 17-10-2017 . تم الاطلاع عليه بتاريخ 2-02-2019 .