وحدات التحكم الدقيقة PIC

وحدات التحكم الدقيقة PIC في حزم DIP و QFN
متحكم دقيق PIC24 ذو 16 بت و28 طرفًا من نوع PDIP بجوار مسطرة مترية
شريحة متحكم دقيق CMOS من نوع PIC12C508، ثماني بتات، ثابت بالكامل، يعتمد على ذاكرة EEPROM / EPROM / ROM، من إنتاج شركة Microchip Technology باستخدام عملية تصنيع بتقنية 1200 نانومتر.
شريحة متحكم دقيق 8 بت قائم على ذاكرة ROM بتقنية CMOS من طراز PIC16C505، من إنتاج شركة Microchip Technology باستخدام عملية تصنيع بتقنية 1200 نانومتر .

PIC (يُنطق عادةً / pɪk / ) هي عائلة من المتحكمات الدقيقة من إنتاج شركة Microchip Technology ، وهي مشتقة من PIC1640 [ 1 ] [ 2 ] الذي طورته في الأصل قسم الإلكترونيات الدقيقة في شركة General Instrument . كان اسم PIC في البداية يُشير إلى وحدة تحكم واجهة الأجهزة الطرفية [ 3 ] ، ثم توسع لاحقًا لفترة وجيزة ليشمل الحاسوب الذكي القابل للبرمجة [ 4 إلا أن اسم PIC لم يعد يُستخدم كاختصار لأي مصطلح. أُتيحت الأجزاء الأولى من هذه العائلة في عام 1976؛ وبحلول عام 2013، كانت الشركة قد شحنت أكثر من اثني عشر مليار جزء فردي، تُستخدم في مجموعة واسعة من الأنظمة المدمجة [ 5 ] .

صُممت وحدة PIC في الأصل كوحدة طرفية لجهاز General Instrument CP1600 ، وهو أول معالج دقيق أحادي الشريحة 16 بت متوفر تجاريًا . ولتقليل عدد المنافذ المطلوبة، احتوى CP1600 على ناقل بيانات معقد عالي التعدد يصعب التعامل معه، لذا، بالإضافة إلى مجموعة متنوعة من الوحدات الطرفية ذات الأغراض الخاصة، أنتجت شركة General Instrument وحدة PIC1640 القابلة للبرمجة كوحدة طرفية متعددة الأغراض. وبفضل ذاكرة الوصول العشوائي (RAM) وذاكرة القراءة فقط ( ROM) الصغيرتين ووحدة المعالجة المركزية البسيطة للتحكم في عمليات النقل، كان بإمكانها ربط ناقل بيانات CP1600 بأي وحدة طرفية 8 بت موجودة تقريبًا. ورغم أن هذا وفر إمكانيات كبيرة، إلا أن تسويق GI كان محدودًا ولم يحقق CP1600 النجاح المرجو. مع ذلك، أنتجت GI أيضًا وحدة PIC1650، وهي وحدة PIC1640 مستقلة مزودة بمنافذ إدخال/إخراج عامة إضافية بدلاً من واجهة CP1600. عندما فصلت الشركة قسم الرقائق الإلكترونية لتشكيل شركة مايكروشيب في عام 1985، كانت مبيعات معالج CP1600 قد توقفت تقريبًا، لكن معالج PIC1650 والمعالجات اللاحقة له شكلت سوقًا رئيسية خاصة بها، وأصبحت أحد المنتجات الرئيسية للشركة الجديدة. [ 6 ]

كانت الطرازات الأولى مزودة بذاكرة قراءة فقط (ROM) مُقنّعة لتخزين التعليمات البرمجية، ولكن مع ظهور الطراز المُشتق، تم تحديثها سريعًا لاستخدام ذاكرة قراءة فقط قابلة للمسح والبرمجة (EPROM) ، ثم ذاكرة قراءة فقط قابلة للمسح والبرمجة كهربائيًا (EEPROM) ، مما مكّن المستخدمين النهائيين من برمجة الأجهزة بأنفسهم. تستخدم جميع الطرازات الحالية ذاكرة فلاش لتخزين البرامج، وتسمح الطرازات الأحدث لوحدة التحكم PIC بإعادة برمجة نفسها. ومنذ ذلك الحين، شهد هذا الخط من المعالجات تغييرات كبيرة؛ حيث أصبحت الذاكرة متوفرة الآن بسعات 8 بت و16 بت، وفي أحدث الطرازات، 32 بت. تختلف تعليمات البرنامج في عدد البتات حسب عائلة PIC، وقد تكون بطول 12 أو 14 أو 16 أو 24 بت. كما تختلف مجموعة التعليمات باختلاف الطراز، حيث تضيف الرقائق الأكثر قوة تعليمات لوظائف معالجة الإشارات الرقمية . تتراوح تطبيقات أجهزة PIC من رقائق SMD ذات 6 أطراف، ورقائق DIP ذات 8 أطراف ، وصولاً إلى رقائق SMD ذات 144 طرفًا، مع منافذ إدخال/إخراج منفصلة، ​​ووحدات تحويل تناظري رقمي ( ADC) ورقمي تناظري (DAC) ، ومنافذ اتصال مثل UART و I2C و CAN وحتى USB . وتتوفر منها إصدارات منخفضة الطاقة وعالية السرعة للعديد من الأنواع.

تُوفر الشركة المصنعة برامج حاسوبية للتطوير تُعرف باسم MPLAB X ، ومجمعات ومترجمات لغات C/C++، وأجهزة برمجة/تصحيح أخطاء ضمن سلسلتي MPLAB و PICKit . كما تتوفر أدوات من جهات خارجية وبعض الأدوات مفتوحة المصدر. تتميز بعض القطع بإمكانية البرمجة داخل الدائرة؛ وتتوفر مبرمجات تطوير منخفضة التكلفة بالإضافة إلى مبرمجات إنتاج عالية الإنتاجية.

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

تاريخ

مفهوم أصلي

العديد من وحدات التحكم الدقيقة القديمة من نوع PIC (EPROM)

كان من المفترض استخدام متحكم PIC الأصلي مع وحدة المعالجة المركزية CP1600 الجديدة من شركة General Instruments، وهي وحدة معالجة مركزية (CPU) ذات 16 بت . ولتضمين ناقلي البيانات والعناوين ذوي 16 بت في شريحة DIP القياسية آنذاك ذات 40 طرفًا ، كان الناقلان يتشاركان نفس مجموعة أطراف التوصيل الستة عشر. وللتواصل مع وحدة المعالجة المركزية، كان على الأجهزة مراقبة أطراف أخرى على وحدة المعالجة المركزية لتحديد ما إذا كانت المعلومات على الناقل عبارة عن عنوان أم بيانات. ولأن أحد هذين النوعين فقط كان يُعرض في كل مرة، كان على الأجهزة مراقبة الناقل للدخول في وضع العنوان، والتحقق مما إذا كان هذا العنوان جزءًا من نطاق الإدخال/الإخراج المُخزّن في ذاكرتها ، ثم "تثبيت" هذا العنوان، ثم انتظار تفعيل وضع البيانات، ثم قراءة القيمة. بالإضافة إلى ذلك، استخدمت وحدة CP1600 عدة أطراف خارجية لاختيار الجهاز الذي تحاول التواصل معه، مما زاد من تعقيد عملية الربط.

نظرًا لأن توصيل الأجهزة بمعالج CP1600 قد يكون معقدًا، أصدرت شركة GI أيضًا سلسلة رقاقات الدعم 164x المزودة بجميع الدوائر المطلوبة مدمجة. وشملت هذه الرقاقات برامج تشغيل لوحة المفاتيح، وواجهات مشغلات الكاسيت للتخزين، ومجموعة من الأنظمة المشابهة. وللأنظمة الأكثر تعقيدًا، قدمت GI وحدة التحكم بالواجهة القابلة للبرمجة 1640 في عام 1975. وتتلخص الفكرة في أن يستخدم الجهاز وحدة التحكم بالواجهة القابلة للبرمجة (PIC) للتعامل مع جميع عمليات التوصيل مع معالج CP1600 الخاص بالحاسوب المضيف، بالإضافة إلى استخدام معالجه الداخلي الخاص للتعامل مع الجهاز المتصل به. على سبيل المثال، يمكن تنفيذ محرك أقراص مرنة باستخدام وحدة تحكم بالواجهة القابلة للبرمجة (PIC) تتصل بوحدة المعالجة المركزية من جهة، ووحدة تحكم القرص المرن من جهة أخرى. وتماشيًا مع هذه الفكرة، احتوت وحدة التحكم بالواجهة القابلة للبرمجة ( PIC)، التي تُعرف اليوم باسم المتحكم الدقيق، على ذاكرة قراءة فقط (ROM) صغيرة تُكتب عليها شفرة وحدة تحكم الجهاز الخاصة بالمستخدم، وذاكرة وصول عشوائي (RAM) منفصلة لتخزين البيانات ومعالجتها. تم توصيل هذه الأجزاء بشكل منفصل، مما جعل نظام PIC نظامًا معماريًا من طراز هارفارد حيث يتم تخزين التعليمات البرمجية والبيانات وإدارتها على مسارات داخلية منفصلة .

نظريًا، يُوفر الجمع بين وحدة المعالجة المركزية CP1600 ووحدات التحكم بالأجهزة PIC1640 نظام تحكم عالي الأداء، يُضاهي في قوته وأدائه وحدات التحكم في الإدخال/الإخراج المستخدمة في الحواسيب المركزية . فعلى سبيل المثال، في وحدة تحكم القرص المرن، يُمكن لوحدة PIC واحدة التحكم في محرك الأقراص، وتوفير قدر معقول من التخزين المؤقت لتحسين الأداء، ثم نقل البيانات من وإلى الحاسوب المضيف باستخدام الوصول المباشر إلى الذاكرة (DMA) أو من خلال كود بسيط نسبيًا في وحدة المعالجة المركزية. لكن يعيب هذا النهج التكلفة؛ فبينما لا تُعد وحدة PIC ضرورية للأجهزة منخفضة السرعة كلوحة المفاتيح، إلا أن العديد من المهام تتطلب وحدة PIC واحدة أو أكثر لبناء نظام متكامل.

رغم ما احتواه تصميم CP1600 من مزايا جذابة، لم تُسوّق شركة جنرال إنسترومنت الجهاز بقوة، مفضلةً التعامل مع كبار العملاء فقط ومتجاهلةً سوق الأجهزة منخفضة التكلفة. نتج عن ذلك انتشار محدود للغاية للنظام، حيث كان جهاز إنتيليفيجن هو الوحيد واسع الانتشار فعليًا بحوالي ثلاثة ملايين وحدة. مع ذلك، طرحت جنرال إنسترومنت نموذجًا مستقلًا من معالج PIC1650 [ 7 ] عام 1976، مصممًا للاستخدام دون الحاجة إلى CP1600. ورغم أنه لم يكن بقوة معالج إنتل MCS-48 الذي طُرح في العام نفسه، إلا أنه كان أرخص سعرًا، ووجد سوقًا له. [ 6 ] وشملت الإصدارات اللاحقة معالج PIC1670، الذي وُسّع نطاق تعليماته من 12 إلى 13 بت لتوفير ضعف مساحة العناوين (64 بايت من ذاكرة الوصول العشوائي و1024 كلمة من ذاكرة القراءة فقط). [ 8 ] عندما فصلت جنرال إنسترومنت قسم الرقائق الإلكترونية لتأسيس شركة مايكروشيب تكنولوجي عام 1985، توقف إنتاج CP1600. لكن بحلول ذلك الوقت، كان معالج PIC1650 قد اكتسب سوقًا كبيرًا من العملاء الذين يستخدمونه في مجموعة متنوعة من الأدوار، وأصبح معالج PIC أحد المنتجات الرئيسية للشركة الجديدة. [ 6 ]

بعد CP1600

PIC1655 من شركة جنرال إنسترومنت

في عام 1985، باعت شركة جنرال إنسترومنت قسم الإلكترونيات الدقيقة التابع لها ، وقام المالكون الجدد بإلغاء معظم المنتجات التي كانت قديمة الطراز آنذاك. مع ذلك، تم تحديث معالج PIC بذاكرة EPROM داخلية لإنتاج وحدة تحكم قابلة للبرمجة لإدخال/إخراج القنوات . في الوقت نفسه، أصدرت شركة بليسي في المملكة المتحدة معالجات NMOS تحمل الرقمين PIC1650 وPIC1655، والمبنية على تصميم جنرال إنسترومنت، باستخدام نفس مجموعات التعليمات، إما قابلة للبرمجة بواسطة المستخدم أو إصدارات مبرمجة مسبقًا لأجهزة الاتصال التلقائي وواجهات لوحة المفاتيح. [ 9 ]

في عام 1998، قدمت شركة مايكروشيب معالج PIC16F84، وهو نسخة قابلة للبرمجة والمسح باستخدام ذاكرة الفلاش من معالج PIC16C84 الناجح القابل للبرمجة التسلسلية. وفي عام 2001، قدمت مايكروشيب المزيد من الأجهزة القابلة للبرمجة باستخدام ذاكرة الفلاش، وبدأ الإنتاج الكامل في عام 2002. [ 10 ]

تتوفر اليوم مجموعة واسعة من متحكمات PIC مزودة بوحدات طرفية مدمجة متنوعة ( وحدات اتصال تسلسلي ، ووحدات UART ، ونوى تحكم في المحركات، إلخ) وذاكرة برامج تتراوح سعتها من 256 كلمة إلى 64 ألف كلمة وأكثر. والكلمة هي تعليمة واحدة بلغة التجميع ، ويتراوح طولها بين 8 و16 بت ، وذلك حسب سلسلة متحكم PIC المحدد .

على الرغم من أن PIC وPICmicro علامتان تجاريتان مسجلتان الآن لشركة Microchip Technology، إلا أن البادئة "PIC" لم تعد تُستخدم كاختصار لأي مصطلح. يُعتقد عمومًا أن PIC اختصار لـ " Programmable Intelligent Computer " (حاسوب ذكي قابل للبرمجة)، وهي البادئة التي استخدمتها شركة General Instruments عام 1977 لعائلة الحواسيب الصغيرة PIC1640 وPIC1650، [ 4 ] لتحل محل المعنى الأصلي لعام 1976 وهو " Programmable Interface Controller " (وحدة تحكم واجهة قابلة للبرمجة ) للمعالج PIC1640 الذي صُمم خصيصًا للعمل مع الحاسوب الصغير CP1600. [ 3 ] كانت "سلسلة حواسيب PIC الصغيرة" من إنتاج General Instruments سلسلة من الحواسيب الصغيرة ذات 8 بت بتقنية التكامل واسع النطاق لأشباه الموصلات المعدنية المؤكسدة (MOS/LSI)، وتحتوي على ذاكرة قراءة فقط (ROM) وذاكرة وصول عشوائي (RAM) ووحدة معالجة مركزية (CPU) وسجلات إدخال/إخراج (I/O) ذات 8 بت للتوصيل البيني. في ذلك الوقت، جمعت هذه التقنية بين مزايا دوائر MOS والتكامل واسع النطاق، مما سمح بإنشاء دوائر متكاملة معقدة ذات كثافة ترانزستور عالية. [ 4 ]

كان معالج Microchip 16C84 ( PIC16x84 )، الذي تم طرحه في عام 1993، أول معالج Microchip مزود بذاكرة EEPROM مدمجة [ 11 ] .

بحلول عام 2013، كانت شركة مايكروشيب تشحن أكثر من مليار وحدة تحكم دقيقة من نوع PIC كل عام. [ 5 ]

عائلات الأجهزة

صُممت رقائق PIC الدقيقة وفقًا لبنية هارفارد ، وتُقدم ضمن عائلات أجهزة متنوعة. تستخدم العائلات الأساسية والمتوسطة ذاكرة بيانات بعرض 8 بت، بينما تستخدم العائلات المتطورة ذاكرة بيانات بعرض 16 بت. أحدث سلسلة، PIC32MZ، هي متحكم دقيق قائم على معمارية MIPS 32 بت . يبلغ حجم كلمات التعليمات 12 بت (PIC10 وPIC12)، و 14 بت (PIC16)، و 24 بت (PIC24 وdsPIC). تختلف التمثيلات الثنائية لتعليمات الآلة باختلاف العائلة، وهي موضحة في قوائم تعليمات PIC .

ضمن هذه العائلات، قد تُصنّف الأجهزة إما PICnnCxxx (CMOS) أو PICnnFxxx (Flash). تُصنّف أجهزة "C" عمومًا على أنها "غير مناسبة للتطوير الجديد" (لا تُروّج لها شركة Microchip بنشاط). تُوصف ذاكرة البرنامج في أجهزة "C" بأسماء مختلفة مثل OTP أو ROM أو EEPROM. اعتبارًا من أكتوبر 2016، كان المنتج الوحيد من نوع OTP المصنف على أنه "قيد الإنتاج" هو pic16HV540. أما أجهزة "C" المزودة بنوافذ كوارتز (للمسح بالأشعة فوق البنفسجية) فلم تعد متوفرة بشكل عام.

PIC10 و PIC12

تتميز هذه الأجهزة بذاكرة رمزية بعرض 12 بت، وملف سجلات بحجم 32 بايت، ومكدس استدعاءات صغير بعمق مستويين. وتُمثلها سلسلة PIC10، بالإضافة إلى بعض أجهزة PIC12 وPIC16. وتتوفر الأجهزة الأساسية في عبوات تتراوح من 6 إلى 40 طرفًا.

عادةً ما تكون أول 7 إلى 9 بايتات من ملف السجلات مخصصة لسجلات ذات أغراض خاصة، بينما تمثل البايتات المتبقية ذاكرة وصول عشوائي (RAM) للأغراض العامة. تُنفذ المؤشرات باستخدام زوج من السجلات: بعد كتابة عنوان في سجل اختيار الملف (FSR)، يصبح سجل INDF (الملف غير المباشر) اسمًا بديلًا للسجل المُعنون. في حال استخدام ذاكرة الوصول العشوائي المُجزأة إلى بنوك، يتم تحديد رقم البنك بواسطة أعلى 3 بتات من سجل اختيار الملف. يؤثر هذا على أرقام السجلات من 16 إلى 31؛ أما السجلات من 0 إلى 15 فهي عامة ولا تتأثر ببتات اختيار البنك.

بسبب المساحة المحدودة للغاية للسجلات (5 بتات)، لم يتم تعيين عناوين لأربعة سجلات نادرة القراءة، ولكن تمت كتابتها بواسطة تعليمات خاصة ( OPTIONو TRIS).

مساحة عناوين ذاكرة القراءة فقط (ROM) هي 512، ولا يمكن تحديد العناوين إلا في النصف الأول من كل صفحة مكونة من 512 كلمة. أي أن تعليمة الاستدعاء (CALL) تحدد البتات التسعة الأولى من العنوان، ولكن البتات الثمانية الأولى فقط من هذا العنوان هي معلمات التعليمة، بينما يتم تحديد البت التاسع (البت 8) ضمنيًا على أنه 0 بواسطة تعليمة الاستدعاء نفسها.

تُنفَّذ جداول البحث باستخدام عملية محسوبة GOTO(إسناد قيمة إلى سجل PCL) في جدول RETLWالتعليمات. تُنفِّذ RETLW عملية إرجاع روتينية فرعية، وفي الوقت نفسه تُحمِّل السجل W بثابت فوري ذي 8 بتات، وهو جزء من التعليمات.

لا يدعم هذا "النموذج الأساسي" المقاطعات ؛ إذ يجب استطلاع جميع عمليات الإدخال/الإخراج . توجد بعض المتغيرات "المحسّنة" التي تدعم المقاطعات وتتضمن مكدس استدعاءات من أربعة مستويات.

تتميز أجهزة PIC10F32x بذاكرة متوسطة المدى بعرض 14 بت، بسعة 256 أو 512 كلمة، وملف سجلات SRAM بسعة 64 بايت، ومكدس أجهزة بعمق 8 مستويات. تتوفر هذه الأجهزة في حزم SMD ذات 6 أطراف وحزم DIP ذات 8 أطراف (مع طرفين غير مستخدمين). يتوفر مدخل واحد فقط وثلاثة منافذ إدخال/إخراج. كما تتوفر مجموعة معقدة من المقاطعات. أما الساعة، فهي عبارة عن مذبذب داخلي عالي التردد معاير بتردد 16  ميجاهرتز، مع إمكانية اختيار السرعات عبر البرنامج، ومصدر  طاقة منخفض الطاقة بتردد 31 كيلوهرتز.

صورة ١٦

شريحة Microchip PIC16C58A
متحكم PIC16LF870 في مقبس SOIC

تتميز هذه الأجهزة بذاكرة رمزية بعرض 14 بت، ومكدس استدعاءات مُحسّن بعمق 8 مستويات (16 مستوى في الإصدارات الحديثة). لا تختلف مجموعة التعليمات كثيرًا عن الأجهزة الأساسية، ولكن بتي رمز العملية الإضافيتين تسمحان بالوصول المباشر إلى 128 سجلًا و2048 كلمة من التعليمات. يوجد عدد قليل من التعليمات المتنوعة الإضافية، وتعليمتان حرفيتان إضافيتان بحجم 8 بت، وهما الجمع والطرح. يتوفر المعالج متوسط ​​الأداء في معظم الأجهزة التي تحمل اسم PIC12 وPIC16.

تُخصص أول 32 بايت من مساحة المسجلات لمسجلات ذات أغراض خاصة، بينما تُستخدم الـ 96 بايت المتبقية لذاكرة الوصول العشوائي (RAM) للأغراض العامة. في حال استخدام ذاكرة الوصول العشوائي المُجزأة إلى بنوك، تُعتبر أعلى 16 مسجلاً (0x70–0x7F) عامة، وكذلك بعض أهم المسجلات ذات الأغراض الخاصة، بما في ذلك مسجل الحالة (STATUS) الذي يحتوي على بتات اختيار بنك ذاكرة الوصول العشوائي. (المسجلات العامة الأخرى هي FSR وINDF، وأقل 8 بتات من عداد البرنامج PCL، ومسجل التحميل المسبق العالي لعداد البرنامج PCLATH، ومسجل التحكم الرئيسي في المقاطعات INTCON).

يقوم سجل PCLATH بتوفير بتات عنوان التعليمات ذات الترتيب الأعلى عندما لا تكون البتات الثمانية التي يتم توفيرها عن طريق الكتابة إلى سجل PCL، أو البتات الـ 11 التي يتم توفيرها عن طريق GOTOالتعليمات CALL، كافية لمعالجة مساحة ROM المتاحة.

صورة 17

لم تحظَ سلسلة PIC17 بشعبية واسعة، وقد حلّت محلها بنية PIC18 (مع ذلك، انظر إلى النسخ المقلدة أدناه). لا يُنصح باستخدام سلسلة PIC17 في التصاميم الجديدة، وقد يكون توفرها محدودًا للمستخدمين.

تشمل التحسينات مقارنةً بالمعالجات السابقة استخدام رموز عمليات بعرض 16 بت (مما يسمح بإضافة العديد من التعليمات الجديدة)، ومكدس استدعاءات بعمق 16 مستوى. تم إنتاج أجهزة PIC17 في عبوات تتراوح بين 40 و 68 طرفًا.

قدمت سلسلة PIC17 عددًا من الميزات الجديدة المهمة: [ 12 ]

  • مُجمِّع مُرتبط بالذاكرة
  • إمكانية الوصول للقراءة إلى ذاكرة التعليمات البرمجية (قراءة الجداول)
  • عمليات نقل مباشرة من سجل إلى آخر (المعالجات الأساسية السابقة مطلوبة لنقل السجلات عبر المُراكم)
  • واجهة ذاكرة برنامج خارجية لتوسيع مساحة التعليمات البرمجية
  • مضاعف أجهزة 8 بت × 8 بت
  • زوج سجلات غير مباشر ثانٍ
  • يتم التحكم في العنونة التلقائية للزيادة/الإنقاص بواسطة بتات التحكم في سجل الحالة (ALUSTA).

كان أحد القيود الهامة هو أن مساحة ذاكرة الوصول العشوائي (RAM) كانت محدودة بـ 256 بايت (26 بايت من سجلات الوظائف الخاصة، و232 بايت من ذاكرة الوصول العشوائي للأغراض العامة)، مع وجود عملية تبديل بنكية غير مريحة في الطرازات التي تدعم المزيد.

صورة ١٨

PIC18F45K20

في عام 2000، قدمت شركة مايكروشيب معمارية PIC18. وعلى عكس سلسلة PIC17، فقد أثبتت هذه المعمارية شعبيتها الكبيرة، حيث يتم حاليًا تصنيع عدد كبير من إصداراتها. وعلى عكس الأجهزة السابقة، التي كانت تُبرمج في أغلب الأحيان بلغة التجميع ، أصبحت لغة C هي لغة البرمجة السائدة. [ 13 ]

ترث سلسلة PIC18 معظم ميزات وتعليمات سلسلة PIC17، مع إضافة عدد من الميزات الجديدة المهمة:

  • يبلغ عرض مكدس الاستدعاءات 21 بت وهو أعمق بكثير (31 مستوى عميقًا).
  • يمكن قراءة وكتابة سجل الاستدعاءات (سجلات TOSU:TOSH:TOSL)
  • تعليمات التفرع الشرطية
  • وضع العنونة المفهرسة (PLUSW)
  • تم توسيع سجلات FSR إلى 12 بت، مما يسمح لها بمعالجة مساحة عناوين البيانات بأكملها بشكل خطي.
  • إضافة سجل FSR آخر (ليصبح العدد 3)

تبلغ مساحة ذاكرة الوصول العشوائي 12  بت، ويتم الوصول إليها باستخدام مسجل اختيار البنك (BSR) ذي 4 بتات وإزاحة 8 بتات في كل تعليمة. يوجد بت "وصول" إضافي في كل تعليمة للاختيار بين بنك الوصول ( a = 0) والبنك الذي تم اختياره بواسطة مسجل اختيار البنك ( a = 1).

يتوفر أيضًا مكدس من مستوى واحد لسجلات الحالة (STATUS) وكتابة السجلات (WREG) وسجلات قاعدة البيانات (BSR). يتم حفظ هذه السجلات عند كل مقاطعة، ويمكن استعادتها عند العودة. في حال تعطيل المقاطعات، يمكن استخدامها أيضًا عند استدعاء/عودة الروتين الفرعي عن طريق ضبط بت s (إضافة ", FAST" إلى التعليمات).

تم تحسين خاصية الزيادة/النقصان التلقائي بإزالة بتات التحكم وإضافة أربعة سجلات غير مباشرة جديدة لكل سجل ملف FSR. وبحسب سجل الملف غير المباشر الذي يتم الوصول إليه، يُمكن إجراء إنقاص لاحق، أو زيادة لاحقة، أو زيادة سابقة لسجل FSR؛ أو تكوين العنوان الفعلي بإضافة W إلى سجل FSR.

في أجهزة PIC18 الأكثر تطوراً، يتوفر "وضع موسع" يجعل عملية العنونة أكثر ملاءمة للتعليمات البرمجية المترجمة:

  • نمط جديد لعنونة الإزاحة؛ بعض العناوين التي كانت نسبية إلى بنك الوصول يتم تفسيرها الآن بالنسبة إلى سجل FSR2
  • إضافة العديد من التعليمات الجديدة، ولا سيما لمعالجة سجلات FSR.

لا تزال أجهزة PIC18 قيد التطوير (2021) ومجهزة بتقنية CIP (الأجهزة الطرفية المستقلة عن النواة).

PIC24 و dsPIC

في عام 2001، طرحت شركة مايكروشيب سلسلة رقائق dsPIC، [ 14 ] التي دخلت مرحلة الإنتاج الضخم في أواخر عام 2004. وهي أول وحدات تحكم دقيقة من مايكروشيب ذات 16 بت بطبيعتها. صُممت أجهزة PIC24 كوحدات تحكم دقيقة للأغراض العامة. وتتضمن أجهزة dsPIC إمكانيات معالجة الإشارات الرقمية بالإضافة إلى ذلك.

على الرغم من أنها لا تزال مشابهة لبنى PIC السابقة، إلا أن هناك تحسينات كبيرة: [ 15 ]

  • جميع السجلات بعرض 16 بت
  • عداد البرنامج هو 22 بت (البتات 22:1؛ البت 0 هو دائمًا 0)
  • يبلغ عرض التعليمات 24 بت
  • تم توسيع مساحة عناوين البيانات إلى 64 كيلوبايت 
  • يتم حجز أول 2  كيلوبايت لسجلات التحكم الطرفية
  • لا يلزم تبديل بنك البيانات إلا إذا تجاوزت ذاكرة الوصول العشوائي 62  كيلوبايت
  • تم توسيع نطاق عنونة المعامل "f" المباشرة إلى 13 بت (8  كيلوبايت)
  • تتوفر 16 سجلاً من نوع W لإجراء عمليات السجل-السجل. (لكن العمليات على المعاملات f تشير دائمًا إلى W0.)
  • تأتي التعليمات في شكل بايت وكلمة (16 بت)
  • يوجد مكدس البيانات في ذاكرة الوصول العشوائي (مع W15 كمؤشر للمكدس)؛ لا يوجد مكدس بيانات مادي
  • W14 هو مؤشر الإطار
  • يمكن الوصول إلى البيانات المخزنة في ذاكرة القراءة فقط (ROM) مباشرةً ("رؤية مساحة البرنامج").
  • المقاطعات الموجهة لمصادر المقاطعات المختلفة

بعض الميزات هي:

يمكن برمجة dsPICs بلغة C باستخدام مترجم XC16 من Microchip (المعروف سابقًا باسم C30)، وهو نوع مختلف من GCC .

ذاكرة القراءة فقط للتعليمات (ROM) بعرض 24 بت. يمكن للبرامج الوصول إلى ذاكرة القراءة فقط بكلمات من 16 بت، حيث تحتوي الكلمات الزوجية على أقل 16 بت أهمية من كل تعليمة، بينما تحتوي الكلمات الفردية على أكثر 8 بت أهمية. يُقرأ النصف الأعلى من الكلمات الفردية كصفر. عداد البرنامج بعرض 23 بت، ولكن أقل بت أهمية فيه يكون دائمًا صفرًا، لذا يوجد 22 بت قابلة للتعديل.

تأتي التعليمات في نوعين رئيسيين، حيث تسمح معظم العمليات المهمة (الجمع، XOR، الإزاحة، إلخ) بكلا الشكلين:

  • الأولى تشبه تعليمات PIC الكلاسيكية، حيث تُجرى عملية بين سجل f محدد (أي أول 8 كيلوبايت من ذاكرة الوصول العشوائي) ومُراكم واحد W0، مع بت اختيار الوجهة الذي يتم تحديثه بالنتيجة. (سجلات W مُرتبطة بالذاكرة، لذا يمكن أن يكون مُعامل f أي سجل W).
  • أما الشكل الثاني فهو أكثر تقليدية، إذ يسمح بثلاثة معاملات، يمكن أن تكون أيًا من سجلات W الستة عشر. كما يدعم كل من الوجهة وأحد المصادر أنماط العنونة، مما يسمح بأن يكون المعامل موجودًا في الذاكرة ويشير إليه سجل W.

خط إنتاج يعتمد على معالج PIC32M MIPS

تستخدم منتجات PIC32M من شركة Microchip العلامة التجارية PIC، ولكنها تتميز ببنية مختلفة تمامًا، ويتم وصفها هنا بإيجاز فقط.

PIC32MX

PIC32MX430F064H

في نوفمبر 2007، طرحت شركة مايكروشيب عائلة PIC32MX من وحدات التحكم الدقيقة 32 بت، والمبنية على معالج MIPS32 M4K . [ 16 ] يمكن برمجة الجهاز باستخدام مُجمِّع لغة C الخاص بـ PIC32 من مايكروشيب MPLAB [ تم حذف الرابط ] ، وهو نسخة معدلة من مُجمِّع GCC. تتميز النماذج الثمانية عشر الأولى المتوفرة حاليًا في السوق (PIC32MX3xx وPIC32MX4xx) بتوافقها التام من حيث التوصيلات، وتتشارك نفس مجموعة الأجهزة الطرفية مع عائلة PIC24FxxGA0xx من الأجهزة (16 بت)، مما يسمح باستخدام المكتبات والأدوات البرمجية والمادية الشائعة. واليوم، تتوفر مجموعة كاملة من وحدات التحكم الدقيقة 32 بت متوسطة المدى، بدءًا من 28 طرفًا في حزم QFN صغيرة الحجم، وصولًا إلى الأجهزة عالية الأداء المزودة بتقنيات Ethernet وCAN وUSB OTG.

أضافت بنية PIC32 عدداً من الميزات الجديدة إلى مجموعة منتجات شركة Microchip، بما في ذلك:

  • أعلى سرعة تنفيذ 80  مليون عملية في الثانية (120+ [ 17 ] مليون عملية في الثانية لـ Dhrystone @ 80 ميجاهرتز )
  • أكبر ذاكرة فلاش: 512  كيلوبايت
  • تنفيذ تعليمة واحدة لكل دورة ساعة
  • أول معالج مزود بذاكرة تخزين مؤقتة
  • يسمح بالتنفيذ من ذاكرة الوصول العشوائي (RAM)
  • إمكانيات USB كاملة السرعة للمضيف/الدور المزدوج و OTG
  • برمجة وتصحيح أخطاء كاملة باستخدام JTAG و 2-wire
  • تتبع في الوقت الفعلي

PIC32MZ

في نوفمبر 2013، طرحت شركة مايكروشيب سلسلة PIC32MZ من المتحكمات الدقيقة، المبنية على نواة MIPS M14K. وتشمل سلسلة PIC32MZ ما يلي: [ 18 ] [ 19 ]

  •  سرعة النواة 252 ميجاهرتز، 415 DMIPS
  • ذاكرة فلاش تصل إلى 2  ميجابايت وذاكرة وصول عشوائي  (RAM) تصل إلى 512 كيلوبايت
  • ملحقات جديدة تشمل منفذ USB عالي السرعة، ومحرك تشفير، ومؤشر جودة الصورة (SQI).

في عام 2015، أصدرت شركة مايكروشيب عائلة معالجات PIC32MZ EF، باستخدام معالج MIPS M5150 Warrior من الفئة M المُحدَّث. [ 20 ] [ 21 ]

في عام 2017، قدمت شركة مايكروشيب عائلة PIC32MZ DA، التي تتميز بوحدة تحكم رسومية مدمجة، ومعالج رسومي، وذاكرة وصول عشوائي ديناميكية DDR2 بسعة 32 ميجابايت. [ 22 ] [ 23 ]

PIC32MM

في يونيو 2016، طرحت شركة مايكروشيب عائلة PIC32MM، المصممة خصيصًا للتطبيقات منخفضة الطاقة والتكلفة. [ 24 ] تتميز PIC32MM بوحدات طرفية مستقلة عن النواة، وأنماط سكون تصل إلى 500 نانو أمبير،  وحزم بحجم 4 × 4 مم. [ 25 ] تستخدم وحدات التحكم الدقيقة PIC32MM معالج MIPS32 من شركة MIPS Technologies طراز M4K، وهو معالج 32 بت من نوع MIPS32 . صُممت هذه الوحدات لاستهلاك منخفض جدًا للطاقة، وتقتصر سرعتها على 25  ميجاهرتز. وتتمثل ميزتها الرئيسية في دعمها لتعليمات 16 بت الخاصة بمعالج MIPS، مما يجعل حجم البرنامج أصغر بكثير (حوالي 40%).

PIC32MK

أطلقت شركة مايكروشيب عائلة PIC32MK في عام 2017، وهي متخصصة في التحكم في المحركات، والتحكم الصناعي، وإنترنت الأشياء الصناعية (IIoT)، وتطبيقات CAN متعددة القنوات. [ 26 ]

خط إنتاج يعتمد على معالج PIC32C Arm

تستخدم منتجات PIC32C من شركة Microchip أيضًا العلامة التجارية PIC، ولكنها تتميز ببنية مختلفة تمامًا. تعتمد منتجات PIC32C على بنية معالج Arm، بما في ذلك خطوط إنتاج متنوعة تستخدم أنوية Cortex-M0+ وM4 وM7 وM23 وM33. تُطرح هذه المنتجات بالإضافة إلى سلسلة SAM من وحدات التحكم الدقيقة (MCUs) القائمة على معمارية Arm، والتي ورثتها Microchip من استحواذها على شركة Atmel. [ 27 ]

PIC64

تستخدم منتجات PIC64 من شركة Microchip العلامة التجارية PIC، ولكنها تتمتع ببنية مختلفة تمامًا، ويتم وصفها هنا بإيجاز فقط.

في يوليو 2024، كشفت شركة مايكروشيب عن سلسلة معالجات PIC64 متعددة النوى عالية الأداء . ستستخدم السلسلة في البداية مجموعة تعليمات RISC-V ، إلا أن مايكروشيب تخطط أيضًا لإصدار نسخ مزودة بنوى ARM Cortex-A . [ 28 ] ستشمل سلسلة PIC64 خط PIC64GX، الذي يركز على تطبيقات الحوسبة الطرفية الذكية، وخط PIC64-HPSC، المقاوم للإشعاع والمخصص لتطبيقات رحلات الفضاء. [ 29 ] [ 30 ]

البنية الأساسية

تُعدّ بنية PIC (باستثناء PIC32 وPIC64 غير المرتبطتين بها) آلةً ذات مُجمِّع أحادي المعامل، مثل PDP-8 أو حاسوب توجيه أبولو . ومن خصائصها ما يلي:

  • مُجمِّع واحد (W0)، وهو مُعامل ضمني لكل تعليمة تقريبًا.
  • عدد قليل من التعليمات ذات الطول الثابت، مع توقيت ثابت في الغالب (دورتان ساعة، أو 4 دورات ساعة في نماذج 8 بت).
  • مساحة بيانات صغيرة قابلة للعنونة (32 أو 128 أو 256 بايت، حسب نوع الجهاز)، يتم توسيعها من خلال الخدمات المصرفية
  • فصل مساحات التعليمات البرمجية والبيانات ( هندسة هارفارد ).
  • ذاكرة التعليمات أوسع من ذاكرة البيانات، مما يسمح بتضمين الثوابت الفورية داخل التعليمات. (هذا فرق جوهري عن أجهزة التجميع المبكرة الأخرى المذكورة أعلاه).
  • المعامل الثاني هو موقع في الذاكرة أو ثابت فوري.
  • لا توجد أنماط عنونة أخرى ، على الرغم من أنه يمكن محاكاة نمط العنونة غير المباشر باستخدام السجل (السجلات) غير المباشر.
  • سجلات وحدة المعالجة المركزية والمنافذ والأجهزة الطرفية المُرتبطة بمساحة البيانات
    • يتم تعيين علامات حالة وحدة الحساب والمنطق في مساحة البيانات
    • يتم أيضًا تعيين عداد البرنامج في مساحة البيانات ويمكن الكتابة إليه (يتم استخدام هذا لتنفيذ القفزات غير المباشرة).
  • مجموعة أجهزة لتخزين عناوين الإرجاع
  • لا توجد سوى تعليمات التفرع غير المشروطة
  • يتم تحقيق التنفيذ المشروط من خلال تعليمات التخطي المشروطة، والتي تقوم بإلغاء التعليمات التالية بشكل مشروط.

لا يوجد فرق بين مساحة الذاكرة ومساحة المسجلات لأن ذاكرة الوصول العشوائي (RAM) تؤدي وظيفة كل من الذاكرة والمسجلات، وعادة ما يشار إلى ذاكرة الوصول العشوائي باسم "ملف المسجلات" أو ببساطة باسم "المسجلات".

مساحة البيانات (RAM)

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

لتنفيذ العنونة غير المباشرة، يُستخدم "سجل اختيار الملف" (FSR) و"سجل غير مباشر" (INDF). يُكتب رقم السجل في FSR، وبعد ذلك تتم عمليات القراءة من أو الكتابة إلى INDF فعليًا من أو إلى السجل الذي يشير إليه FSR. وقد وسّعت الأجهزة اللاحقة هذا المفهوم بإضافة عمليات زيادة/إنقاص لاحقة وسابقة لزيادة كفاءة الوصول إلى البيانات المخزنة تسلسليًا. كما يسمح هذا بمعاملة FSR تقريبًا كمؤشر مكدس (SP).

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

مساحة الكود

تُنفَّذ مساحة التعليمات البرمجية عادةً كذاكرة قراءة فقط (ROM) مدمجة، أو ذاكرة قراءة فقط قابلة للمسح والبرمجة كهربائيًا (EPROM) ، أو ذاكرة قراءة فقط فلاشية (Flash ROM ). وبشكل عام، لا توجد إمكانية لتخزين التعليمات البرمجية في ذاكرة خارجية لعدم وجود واجهة ذاكرة خارجية. ويُستثنى من ذلك معالج PIC17 وبعض معالجات PIC18 ذات عدد الأطراف العالي. [ 31 ]

حجم الكلمة

تتعامل جميع وحدات التحكم الدقيقة PIC مع البيانات (وتعنونها) في أجزاء من 8 بت. مع ذلك، فإن وحدة عنونة مساحة التعليمات البرمجية لا تتطابق عمومًا مع وحدة عنونة مساحة البيانات. على سبيل المثال، تتميز وحدات التحكم الدقيقة PIC في عائلتي PIC الأساسية (PIC12) والمتوسطة (PIC16) بذاكرة برنامج يمكن عنونتها بنفس حجم الكلمة المستخدم في عرض التعليمات، أي 12 أو 14 بت على التوالي. في المقابل، في سلسلة PIC18، تُعنون ذاكرة البرنامج بزيادات قدرها 8 بت (بايت)، وهو ما يختلف عن عرض التعليمات البالغ 16 بت.

ولتوضيح الأمر، عادةً ما يتم تحديد سعة ذاكرة البرنامج بعدد التعليمات (الكلمة الواحدة)، بدلاً من البايتات.

أكوام

تحتوي معالجات PIC على مكدس استدعاءات مادي يُستخدم لحفظ عناوين الإرجاع. لم يكن الوصول إلى هذا المكدس المادي متاحًا برمجيًا في الأجهزة السابقة، ولكن هذا تغير مع سلسلة معالجات PIC18.

كان الدعم المادي لمكدس المعلمات للأغراض العامة مفقودًا في السلاسل المبكرة، ولكن هذا تحسن بشكل كبير في سلسلة PIC18، مما جعل بنية سلسلة PIC18 أكثر ملاءمة لمترجمات اللغات عالية المستوى.

مجموعة التعليمات

تتفاوت مجموعات تعليمات متحكمات PIC من حوالي 35 تعليمة للمعالجات منخفضة التكلفة إلى أكثر من 80 تعليمة للمعالجات عالية التكلفة. تتضمن مجموعة التعليمات تعليمات لتنفيذ عمليات متنوعة على المسجلات مباشرةً، أو على المُراكم وقيمة ثابتة، أو على المُراكم ومسجل ، بالإضافة إلى تعليمات التنفيذ الشرطي وتفرع البرنامج.

يمكن إجراء بعض العمليات، مثل ضبط البتات واختبارها، على أي سجل مرقم، لكن العمليات الحسابية ذات المدخلين تتضمن دائمًا W (المراكم)، حيث تُكتب النتيجة إما إلى W أو إلى سجل المعامل الآخر. لتحميل قيمة ثابتة، من الضروري تحميلها في W قبل نقلها إلى سجل آخر. في المعالجات القديمة، كانت جميع عمليات نقل السجلات تتطلب المرور عبر W، لكن هذا تغير في المعالجات المتطورة.

تحتوي معالجات PIC على تعليمات التخطي، التي تُستخدم للتنفيذ المشروط والتفرع. تعليمات التخطي هي "التخطي إذا كانت البتة مضبوطة" و"التخطي إذا لم تكن البتة مضبوطة". ولأن المعالجات السابقة لـ PIC18 كانت تحتوي فقط على تعليمات تفرع غير مشروطة، فإن القفزات المشروطة تُنفذ بتخطي مشروط (مع الشرط المعاكس) متبوعًا بتفرع غير مشروط. كما أن تعليمات التخطي مفيدة للتنفيذ المشروط لأي تعليمة تالية مباشرة. من الممكن تخطي تعليمات التخطي. على سبيل المثال، سينفذ تسلسل التعليمات "التخطي إذا A؛ التخطي إذا B؛ C" التعليمة C إذا كانت A صحيحة أو إذا كانت B خاطئة.

قامت سلسلة PIC18 بتنفيذ سجلات الظل: وهي سجلات تقوم بحفظ العديد من السجلات المهمة أثناء المقاطعة، مما يوفر دعمًا للأجهزة لحفظ حالة المعالج تلقائيًا عند معالجة المقاطعات.

بشكل عام، تنقسم تعليمات PIC إلى خمس فئات:

  • عملية على سجل العمل (WREG) باستخدام معامل فوري (حرفي) من 8 بت. على سبيل المثال: movlw(نقل الحرفي إلى WREG)، andlw(عملية AND بين الحرفي و WREG). إحدى التعليمات الخاصة بمعالج PIC هي retlwتحميل قيمة فورية في WREG ثم العودة، والتي تُستخدم مع التفرعات المحسوبة لإنشاء جداول بحث .
  • عملية باستخدام WREG وسجل مفهرس. يمكن كتابة النتيجة إما إلى سجل العمل (مثلاً ) أو إلى السجل المحدد (مثلاً ).addwf reg,waddwf reg,f
  • عمليات البت. تأخذ هذه العمليات رقم سجل ورقم بت، وتنفذ أحد الإجراءات الأربعة التالية: ضبط أو مسح بت، والاختبار والتخطي عند الضبط/المسح. تُستخدم الأخيرة لتنفيذ التفرعات الشرطية. تتوفر علامات حالة وحدة الحساب والمنطق المعتادة في سجل مرقم، مما يجعل عمليات مثل "التفرع عند مسح الحمل" ممكنة.
  • عمليات نقل التحكم. بخلاف تعليمات التخطي المذكورة سابقًا، هناك اثنتان فقط: gotoو call.
  • بعض التعليمات المتنوعة التي لا تحتوي على أي معاملات، مثل العودة من الروتين الفرعي، sleepوالدخول في وضع الطاقة المنخفضة.

أداء

تُركز القرارات المعمارية على تحقيق أقصى نسبة بين السرعة والتكلفة. كانت بنية PIC من أوائل تصميمات وحدات المعالجة المركزية العددية ، ولا تزال من أبسطها وأقلها تكلفة. أما بنية هارفارد، التي تأتي فيها التعليمات والبيانات من مصادر منفصلة، ​​فتُبسط تصميم التوقيت والدوائر الدقيقة بشكل كبير، مما يُحسّن سرعة الساعة والسعر واستهلاك الطاقة.

تُعدّ مجموعة تعليمات PIC مناسبة لتنفيذ جداول بحث سريعة في مساحة البرنامج. تستغرق عمليات البحث هذه تعليمة واحدة ودورتين تعليميتين. يمكن نمذجة العديد من الدوال بهذه الطريقة. يُسهّل تحسين الأداء مساحة البرنامج الكبيرة نسبيًا لـ PIC (مثل 4096 كلمة × 14 بت في 16F690) وتصميم مجموعة التعليمات، الذي يسمح بتضمين الثوابت. على سبيل المثال، يمكن فهرسة هدف تعليمة التفرع بواسطة W، وتنفيذ تعليمة "RETLW"، التي تقوم بما يوحي به اسمها - أي إرجاع القيمة الحرفية الموجودة في W. 

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

المزايا

  • مجموعة تعليمات صغيرة للتعلم
  • بنية RISC
  • مذبذب مدمج بسرعات قابلة للتحديد
  • وحدات PICkit سهلة الاستخدام للمبتدئين، تدعم البرمجة داخل الدائرة بالإضافة إلى تصحيح الأخطاء داخل الدائرة، متوفرة بأقل من 50 دولارًا
  • وحدات تحكم دقيقة غير مكلفة
  • مجموعة واسعة من الواجهات بما في ذلك I²C و SPI و USB و UART و A/D والمقارنات القابلة للبرمجة و PWM و LIN و CAN و PSP و Ethernet [ 32 ]
  • إن توفر المعالجات في حزمة DIL يجعل التعامل معها سهلاً للاستخدام كهواية.

القيود

  • مُجمِّع واحد
  • يتطلب الوصول إلى ذاكرة الوصول العشوائي الكاملة للعديد من الأجهزة تبديل سجلات البنك.
  • العمليات والسجلات ليست متعامدة ؛ بعض التعليمات يمكنها معالجة ذاكرة الوصول العشوائي و/أو الثوابت الفورية ، بينما يمكن للبعض الآخر استخدام المُراكم فقط.

تمت معالجة قيود المكدس التالية في سلسلة PIC18 ، ولكنها لا تزال تنطبق على النوى السابقة:

في ذاكرة البرنامج المُقسّمة إلى صفحات، يجب مراعاة حجمين للصفحات: أحدهما لأوامر CALL وGOTO، والآخر لأوامر GOTO المحسوبة (المستخدمة عادةً للبحث في الجداول). على سبيل المثال، في معالج PIC16، تحتوي أوامر CALL وGOTO على 11 بتًا للعنونة، لذا يبلغ حجم الصفحة 2048 كلمة تعليمات. أما بالنسبة لأوامر GOTO المحسوبة، حيث تتم إضافة قيمة إلى PCL، فيبلغ حجم الصفحة 256 كلمة تعليمات. في كلتا الحالتين، يتم توفير بتات العنوان العليا بواسطة سجل PCLATH. يجب تغيير هذا السجل في كل مرة يتم فيها نقل التحكم بين الصفحات. كما يجب على أي معالج مقاطعة الحفاظ على سجل PCLATH. [ 33 ]

تطوير المترجمات

على الرغم من توفر العديد من المترجمات التجارية، إلا أن شركة Microchip أصدرت في عام 2008 مترجمات C الخاصة بها، C18 و C30، لسلسلة معالجات 18F و 24F و 30/33F.

ابتداءً من عام 2013، تُقدّم شركة مايكروشيب سلسلة مُجمّعات XC الخاصة بها، والمُخصصة للاستخدام مع برنامج MPLAB X. وستتوقف مايكروشيب تدريجياً عن إنتاج مُجمّعاتها القديمة، مثل C18، وتوصي باستخدام مُجمّعات سلسلة XC الخاصة بها في التصميمات الجديدة. [ 34 ]

قد تجعل مجموعة تعليمات RISC في لغة تجميع PIC فهم التدفق العام للبرنامج صعبًا. يمكن للاستخدام المدروس للوحدات البرمجية البسيطة أن يزيد من سهولة قراءة لغة تجميع PIC. على سبيل المثال، يحتوي مُجمِّع Parallax PIC الأصلي ("SPASM") على وحدات برمجية تُخفي W وتجعل PIC يبدو كجهاز ذي عنوانين. يحتوي على تعليمات برمجية مثل mov b, a(نقل البيانات من العنوان a إلى العنوان b ) و add b, a(إضافة البيانات من العنوان a إلى البيانات في العنوان b ). كما يُخفي تعليمات التخطي من خلال توفير تعليمات برمجية فرعية بثلاثة معاملات، مثل cjne a, b, dest(مقارنة a مع b والقفز إلى الوجهة إذا لم يكونا متساويين).

ميزات الأجهزة

تتميز أجهزة PIC عمومًا بما يلي:

  • ذاكرة الفلاش (ذاكرة البرنامج، تتم برمجتها باستخدام أجهزة MPLAB )
  • ذاكرة الوصول العشوائي الثابتة (ذاكرة البيانات)
  • ذاكرة EEPROM (قابلة للبرمجة أثناء التشغيل)
  • وضع السكون (توفير الطاقة)
  • مؤقت مراقبة النظام
  • تكوينات مختلفة للمذبذب البلوري أو مذبذب RC ، أو ساعة خارجية

المتغيرات

ضمن سلسلة واحدة، لا تزال هناك العديد من أنواع الأجهزة المختلفة اعتمادًا على موارد الأجهزة التي تتميز بها الشريحة:

تم استبدال الجيل الأول من معالجات PIC المزودة بذاكرة EPROM بشكل شبه كامل برقائق ذاكرة فلاش . وبالمثل، تم استبدال مجموعة التعليمات الأصلية ذات 12 بت في معالج PIC1650 ومشتقاته المباشرة بمجموعات تعليمات ذات 14 بت و16 بت. لا تزال شركة Microchip تبيع إصدارات OTP (قابلة للبرمجة لمرة واحدة) وإصدارات قابلة للمسح بالأشعة فوق البنفسجية من بعض معالجات PIC القائمة على ذاكرة EPROM لدعم الأنظمة القديمة أو طلبات الشراء بالجملة. يسرد موقع Microchip الإلكتروني معالجات PIC غير القابلة للمسح الكهربائي على أنها OTP. ويمكن طلب إصدارات قابلة للمسح بالأشعة فوق البنفسجية من هذه الرقائق.

رقم القطعة

يشير الحرف F في رقم قطعة PICMicro عمومًا إلى أن PICmicro يستخدم ذاكرة فلاش ويمكن مسحها إلكترونيًا. في المقابل، يشير الحرف C عمومًا إلى أنه لا يمكن مسحها إلا بتعريض الشريحة للأشعة فوق البنفسجية (وهذا ممكن فقط في حالة استخدام غلاف ذي نافذة). ويُستثنى من هذه القاعدة PIC16C84، الذي يستخدم ذاكرة EEPROM، وبالتالي يمكن مسحه كهربائيًا.

يشير الحرف L في الاسم إلى أن القطعة ستعمل بجهد منخفض، وغالبًا ما يكون ذلك مع فرض حدود على التردد. [ 35 ] أما القطع المصممة خصيصًا للعمل بجهد منخفض، ضمن نطاق ضيق يتراوح بين 3 و3.6 فولت، فتُعلّم بالحرف J في رقم القطعة. وتتميز هذه القطع أيضًا بقدرتها الفريدة على تحمل جهد الإدخال/الإخراج، حيث تقبل ما يصل إلى 5  فولت كمدخلات. [ 35 ]

أدوات التطوير

تُوفر شركة Microchip حزمة برمجية مجانية تُسمى MPLAB X ، تتضمن مُجمِّعًا، ورابطًا، ومُحاكيًا برمجيًا ، ومُصحِّح أخطاء. كما تُوفر الشركة مُجمِّعات لغة C لمعالجات PIC10، وPIC12، وPIC16، وPIC18، وPIC24، وPIC32، وdsPIC، والتي تتكامل بسلاسة مع MPLAB X. تتوفر أيضًا إصدارات مجانية من مُجمِّعات لغة C بكامل ميزاتها، ولكن في هذه الإصدارات المجانية، سيتم تعطيل التحسينات بعد 60 يومًا. [ 36 ]

تُطوّر العديد من الجهات الخارجية مُجمّعات لغة C لوحدات التحكم الدقيقة PIC، ويتكامل الكثير منها مع MPLAB أو يتضمن بيئة تطوير متكاملة خاصة به. كما تُوفّر شركة meLabs مُجمّعًا كامل الميزات للغة PICBASIC لبرمجة وحدات التحكم الدقيقة PIC. وتُقدّم شركة Mikroelektronika مُجمّعات PIC بلغات البرمجة C وBASIC وPascal.

توجد لغة برمجة رسومية، تُدعى Flowcode ، قادرة على برمجة أجهزة PIC ذات 8 و16 بت، وتوليد كود C متوافق معها. وهي متوفرة بإصدارات عديدة، بدءًا من نسخة تجريبية مجانية وصولًا إلى نسخة احترافية أكثر اكتمالًا.

تستطيع مجموعة أدوات تصميم بروتيوس محاكاة العديد من أجهزة PIC الشائعة ذات 8 و16 بت، بالإضافة إلى الدوائر الأخرى المتصلة بها في المخطط. ويمكن تطوير البرنامج المراد محاكاته داخل بروتيوس نفسه، أو MPLAB، أو أي أداة تطوير أخرى . [ 37 ]

يوفر نظام FlashForth المستقل ، الذي يضم مترجمًا ومترجمًا ومجمعًا ووحدة معالجة متعددة المهام، حلاً شاملاً لكتابة وتصحيح تطبيقات الوقت الحقيقي المعقدة. يعمل النظام بكامله، بما في ذلك المترجم، على وحدة التحكم الدقيقة. ويُستخدم حاسوب مزود بمحاكي طرفي للتواصل مع FlashForth عبر وصلة تسلسلية أو USB. [ 38 ]

مبرمجو الأجهزة

هذا جهاز برمجة من طراز عام 2003 مخصص لعائلة متحكمات "PIC" الدقيقة من شركة Microchip. يتصل الجهاز عبر كابل RS 232 بجهاز كمبيوتر متوافق يعمل بنظام تشغيل برامج التطوير. في عام 2003، كان سعر هذا الجهاز 300 دولار كندي (ما يعادل حوالي 200 دولار أمريكي آنذاك).

تُستخدم أجهزة تُسمى " المبرمجات " تقليديًا لإدخال رمز البرنامج إلى وحدة التحكم الدقيقة PIC المستهدفة. تتميز معظم وحدات التحكم الدقيقة PIC التي تبيعها شركة Microchip حاليًا بإمكانيات ICSP (البرمجة التسلسلية داخل الدائرة) و/أو LVP (البرمجة منخفضة الجهد)، مما يسمح ببرمجة وحدة التحكم الدقيقة PIC أثناء وجودها في الدائرة المستهدفة .

تُقدّم شركة مايكروشيب أجهزة برمجة/تصحيح أخطاء ضمن سلسلتي MPLAB و PICKit . يُعدّ كلٌّ من MPLAB ICD5 وMPLAB REAL ICE حاليًا أجهزة برمجة وتصحيح أخطاء مُخصصة للمهندسين المحترفين، بينما تُشكّل PICKit 5 سلسلة أجهزة برمجة/تصحيح أخطاء منخفضة التكلفة مُخصصة للهواة والطلاب. اعتبارًا من عام 2026، تُنتج مايكروشيب أيضًا جهازين آخرين من أجهزة البرمجة/تصحيح الأخطاء الأساسية منخفضة التكلفة (ذات إمكانيات محدودة)، تحت اسمي PICKit Basic وMPLAB Snap.

تحميل الإقلاع

تتميز العديد من معالجات PIC المتطورة القائمة على ذاكرة الفلاش بقدرتها على البرمجة الذاتية (الكتابة إلى ذاكرة البرنامج الخاصة بها)، وهي عملية تُعرف باسم تحميل الإقلاع. تتوفر لوحات تجريبية مزودة ببرنامج تحميل إقلاع صغير مُبرمج مسبقًا من المصنع، يُمكن استخدامه لتحميل برامج المستخدم عبر واجهة مثل RS-232 أو USB ، مما يُغني عن الحاجة إلى جهاز برمجة.

بدلاً من ذلك، يتوفر برنامج تشغيل جاهز يمكن للمستخدم تحميله على متحكم PIC باستخدام بروتوكول ICSP. بعد برمجة برنامج التشغيل على متحكم PIC، يمكن للمستخدم إعادة برمجة الجهاز باستخدام RS232 أو USB، بالتزامن مع برامج حاسوبية متخصصة.

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

طرف ثالث

تتوفر العديد من برامج برمجة المتحكمات الدقيقة PIC، بدءًا من التصاميم البسيطة للغاية التي تعتمد على بروتوكول ICSP للسماح بتنزيل التعليمات البرمجية مباشرةً من الحاسوب المضيف، وصولًا إلى برامج البرمجة الذكية التي يمكنها التحقق من الجهاز عند مستويات جهد تغذية مختلفة. تستخدم العديد من هذه البرامج المعقدة متحكم PIC مبرمجًا مسبقًا لإرسال أوامر البرمجة إلى المتحكم المراد برمجته. يُعدّ استخدام برامج البرمجة الذكية ضروريًا لبرمجة طرازات PIC الأقدم (معظمها من نوع EPROM) التي لا تدعم البرمجة داخل الدائرة.

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

تصحيح الأخطاء

تصحيح الأخطاء داخل الدائرة

تتميز جميع أجهزة PIC الحديثة بواجهة ICD (تصحيح الأخطاء داخل الدائرة) مدمجة في نواة المعالج، مما يسمح بتصحيح البرنامج بشكل تفاعلي بالتزامن مع بيئة تطوير MPLAB المتكاملة. ويمكن لمصححي الأخطاء MPLAB ICD و MPLAB REAL ICE التواصل مع هذه الواجهة باستخدام واجهة ICSP .

يأتي نظام تصحيح الأخطاء هذا بثمن، وهو عدد محدود من نقاط التوقف (نقطة واحدة على الأجهزة القديمة، و3 نقاط على الأجهزة الأحدث)، وفقدان بعض منافذ الإدخال/الإخراج (باستثناء بعض وحدات PIC ذات 44 طرفًا المثبتة على السطح والتي تحتوي على خطوط مخصصة لتصحيح الأخطاء) وفقدان بعض الميزات الموجودة على الشريحة.

بعض الأجهزة لا تدعم تصحيح الأخطاء المدمج، إما بسبب التكلفة أو نقص المنافذ. كما أن بعض الرقاقات الأكبر حجمًا لا تحتوي على وحدة تصحيح أخطاء. لتصحيح أخطاء هذه الأجهزة، يلزم وجود نسخة خاصة من الرقاقة تحمل اسم -ICD، مثبتة على لوحة فرعية توفر منافذ مخصصة. بعض هذه الرقاقات قادرة على العمل كأكثر من نوع واحد من الرقاقات باستخدام وصلات قابلة للتحديد على اللوحة الفرعية. هذا يسمح باستبدال البنى المتطابقة تقريبًا، والتي لا تحتوي على جميع الأجهزة الطرفية المدمجة، برقاقة واحدة تحمل اسم -ICD. على سبيل المثال: ستعمل الرقاقة 16F690-ICD كواحدة من ستة أجزاء مختلفة، كل منها يحتوي على خمسة أجهزة طرفية مدمجة، أو لا يحتوي على أي منها، أو يحتوي على بعضها، أو يحتوي على جميعها. [ 39 ]

محاكيات داخل الدائرة

تُقدّم شركة Microchip ثلاثة محاكيات كاملة للدوائر المتكاملة : MPLAB ICE2000 (واجهة متوازية، مع توفر محول USB)؛ و MPLAB ICE4000 الأحدث (اتصال USB 2.0)؛ وأحدثها REAL ICE (اتصال USB 2.0). تُستخدم جميع هذه الأدوات عادةً مع بيئة تطوير MPLAB المتكاملة ( IDE) لتصحيح الأخطاء التفاعلي على مستوى الكود المصدري أثناء تشغيله على النظام المستهدف.

أنظمة التشغيل

قد تستخدم مشاريع PIC أنظمة تشغيل في الوقت الحقيقي مثل FreeRTOS أو AVIX RTOS أو uRTOS أو Salvo RTOS أو مكتبات أخرى مماثلة لجدولة المهام وتحديد أولوياتها.

مشروع مفتوح المصدر من تطوير سيرج فاكولينكو يُكيّف نظام التشغيل 2.11BSD مع بنية PIC32، تحت اسم RetroBSD. يوفر هذا المشروع نظام تشغيل مألوفًا شبيهًا بنظام يونكس، بما في ذلك بيئة تطوير مدمجة، لوحدة التحكم الدقيقة، ضمن قيود الأجهزة المدمجة. [ 40 ]

المستنسخون

اختلاف المنظر

أنتجت شركة بارالاكس سلسلة من المتحكمات الدقيقة الشبيهة بمتحكمات PICmicro، والمعروفة باسم بارالاكس SX . وقد توقف إنتاجها حاليًا. صُممت هذه المتحكمات لتكون مشابهة من الناحية المعمارية لمتحكمات PIC الدقيقة المستخدمة في الإصدارات الأصلية من BASIC Stamp ، وقد حلت محل متحكمات PIC في العديد من الإصدارات اللاحقة من هذا المنتج.

تُعدّ وحدات التحكم الدقيقة SX من Parallax وحدات تحكم دقيقة RISC ثمانية بت، تستخدم كلمة تعليمات من 12 بت، وتعمل بسرعة تصل إلى 75  ميجاهرتز (75 مليون تعليمات في الثانية). تتضمن هذه الوحدات ذاكرة فلاش تصل سعتها إلى 4096 كلمة من 12 بت، وذاكرة وصول عشوائي تصل سعتها إلى 262 بايت ، بالإضافة إلى عداد ثمانية بت ووحدات منطقية داعمة أخرى. تتوفر مكتبات برمجية لمحاكاة واجهات I²C و SPI ، ووحدات UART، ومولدات التردد، وعدادات القياس، ومحولات تناظرية/رقمية من نوع PWM وsigma-delta. تتميز الواجهات الأخرى بسهولة كتابتها، ويمكن تعديل الوحدات الموجودة لإضافة ميزات جديدة.

PKK Milandr

1886VE2U

تُنتج شركة PKK Milandr الروسية وحدات تحكم دقيقة باستخدام بنية PIC17 ضمن سلسلة 1886. [ 41 ] [ 42 ] [ 43 ] [ 44 ] تتكون ذاكرة البرنامج من ذاكرة فلاش تصل سعتها إلى 64 كيلوبايت في وحدة 1886VE2U ( بالروسية : 1886ВЕ2У ) أو ذاكرة EEPROM بسعة 8 كيلوبايت في وحدة 1886VE5U (بالروسية: 1886ВЕ5У ). صُممت وحدات 1886VE5U ( بالروسية: 1886ВЕ5У ) إلى 1886VE7U ( بالروسية: 1886ВЕ7У  ) للعمل ضمن نطاق درجات الحرارة العسكرية من -60 درجة مئوية إلى +125  درجة مئوية. تشمل واجهات الأجهزة في الأجزاء المختلفة USB وCAN وI2C وSPI، بالإضافة إلى محولات تناظرية/رقمية ورقمية/تناظرية. تحتوي شريحة 1886VE3U ( 1886ВЕ3У ) على مُسرِّع أجهزة للوظائف التشفيرية وفقًا لمعيار GOST 28147-89 . وتوجد أيضًا شرائح مقاومة للإشعاع تحمل التسميات 1886VE8U ( 1886ВЕ8У ) و1886VE10U ( 1886ВЕ10У ). [ 45 ]

شركة إيلان للإلكترونيات الدقيقة

تقوم شركة ELAN Microelectronics Corp. في تايوان بتصنيع سلسلة من وحدات التحكم الدقيقة القائمة على بنية PIC16، مع تعليمات 13 بت ومساحة عناوين ذاكرة وصول عشوائي أصغر (6 بت). [ 46 ]

هولتك لأشباه الموصلات

تقوم شركة Holtek Semiconductor بتصنيع عدد كبير من وحدات التحكم الدقيقة الرخيصة جدًا [ 47 ] (بسعر منخفض يصل إلى 8.5 سنتات للكمية [ 48 ] ) مع مجموعة تعليمات 14 بت تشبه إلى حد كبير PIC16.

هايكون

شركة هايكون تكنولوجي ، وهي شركة تايوانية مصنعة لرقائق الإشارات المختلطة للأجهزة الإلكترونية المحمولة ( أجهزة القياس المتعددة ، وموازين المطبخ ، وما إلى ذلك)، لديها سلسلة متحكمات دقيقة خاصة بها تحمل اسم H08، وتتميز بكلمة تعليمات 16 بت تشبه إلى حد كبير عائلة PIC18. (لا علاقة لها بمتحكمات هيتاشي/رينيساس الدقيقة H8 ). يُعدّ H08A [ 49 ] الأقرب شبهاً بـ PIC18؛ بينما يُعتبر H08B [ 50 ] مجموعة فرعية منه. [ 51 ]

على الرغم من أن التعليمات المتاحة متطابقة تقريبًا، إلا أن ترميزها مختلف، وكذلك خريطة الذاكرة والأجهزة الطرفية. على سبيل المثال، يسمح معالج PIC18 بالوصول المباشر إلى ذاكرة الوصول العشوائي (RAM) في النطاق 0x000–0x07F أو سجلات الوظائف الخاصة في النطاق 0xF80–0xFFF عن طريق تمديد إشارة عنوان 8 بت. أما معالج H08 فيضع سجلات الوظائف الخاصة في النطاق 0x000–0x07F وذاكرة الوصول العشوائي العامة في النطاق 0x080–0x0FF، مع تمديد العنوان إلى الصفر.

مصنعون آخرون في آسيا

تعتمد العديد من وحدات التحكم الدقيقة منخفضة التكلفة للغاية والقابلة للبرمجة لمرة واحدة (OTP) من الشركات المصنعة الآسيوية، والموجودة في الأجهزة الإلكترونية الاستهلاكية منخفضة التكلفة، على بنية PIC أو نسخة معدلة منها. تستهدف معظم النسخ المقلدة الأجزاء الأساسية فقط (PIC16C5x/PIC12C50x). ونظرًا لانتهاء صلاحية براءات الاختراع الخاصة بالبنية الأساسية منذ فترة طويلة، حاولت شركة Microchip مقاضاة بعض الشركات المصنعة استنادًا إلى حقوق النشر، [ 52 ] [ 53 ] دون جدوى. [ 54 ] [ 55 ]

انظر أيضاً

مراجع

  1. معالج PIC1650A ذو 8 بت (ملف PDF) (ورقة البيانات). شركة جنرال إنسترومنت. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 23 مارس 2012. تم الاطلاع عليه بتاريخ 29 يونيو 2011 .
  2. عرض تقديمي في ندوة PIC16F: تاريخ عائلة منتجات Baseline (ملف PDF) . صفحة 4. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 2012-03-02 . تم الاطلاع عليه بتاريخ 2011-08-02 . 
  3. 1 2 "بيانات MOS 1976"، كتاب بيانات الأجهزة العامة 1976
  4. 1 2 3 "كتالوج بيانات 1977: الإلكترونيات الدقيقة" (ملف PDF) . شركة جنرال إنسترومنت. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 15 أغسطس 2011. تم الاطلاع عليه بتاريخ 2 أغسطس 2011 .
  5. ١ ٢ لوسون، إريك (١٦ مايو ٢٠١٣). "شركة مايكروشيب تكنولوجي تسلم وحدة التحكم الدقيقة PIC® رقم ١٢ مليار إلى شركة نيدك، الشركة الرائدة في تصنيع المحركات" . بيان صحفي صادر عن مايكروشيب. مؤرشف من الأصل في ٢١ يوليو ٢٠١٣. تم الاطلاع عليه في ٢١ ديسمبر ٢٠١٧. سلمت مايكروشيب وحدة التحكم الدقيقة رقم ١٢ مليار بعد حوالي ١٠ أشهر من تسليمها وحدة التحكم الدقيقة رقم ١١ مليار .
  6. 1 2 3 ليبسون، ستيفن (2 يناير 2023). "تاريخ المتحكمات الدقيقة المبكرة، الجزء 9: متحكم PIC1650 من شركة جنرال إنسترومنتس" . مجلة الهندسة الإلكترونية . تاريخ الاسترجاع: 18 أغسطس 2024 .
  7. جروبوسو، فرانك م. (1982). "الفصل 35: PIC1650: بنية الشريحة وتشغيلها" (ملف PDF) . في: سيوريك، دانيال ب.؛ بيل، سي. جوردون ؛ نيويل، ألين (محررون). هياكل الحاسوب: المبادئ والأمثلة (ملف PDF) . ماكجرو هيل. ISBN 0-07-057302-6تم الاطلاع عليه بتاريخ 18-08-2024 .
  8. جنرال إنسترومنت. معالج PIC1670 ذو 8 بت (ملف PDF) (ورقة البيانات) . تم الاطلاع عليه بتاريخ 18-08-2024 .
  9. دليل الدوائر المتكاملة لتلفزيون الكابلات الفضائية من بليسي، مايو 1986
  10. دان، د. (31 أغسطس 2001). "شركة مايكروشيب تقدم ذاكرة فلاش بأسعار OTP" . EETimes .
  11. "قاعة مشاهير الرقائق: وحدة التحكم الدقيقة PIC 16C84 من شركة Microchip Technology" . مجلة IEEE Spectrum . 30 يونيو 2017. تم الاطلاع عليه بتاريخ 16 سبتمبر 2018 .
  12. "ورقة بيانات المتحكم الدقيق PIC17C4x" (ملف PDF) . شركة مايكروشيب تكنولوجي. 1996. DS30412C . تاريخ الاسترجاع: 16 أغسطس 2016 .
  13. "Microchip PIC micros and C - source and sample code" . www.microchipc.com . تم الاطلاع عليه بتاريخ 7 أبريل 2018 .
  14. "شركة مايكروشيب تكنولوجي تُطلق أعلى وحدات تحكم دقيقة 16 بت أداءً في العالم" . مايكروشيب. 1 أكتوبر 2001. مؤرشف من الأصل في 11 يونيو 2004. تم الاطلاع عليه بتاريخ 14 ديسمبر 2022 .
  15. "نظرة عامة على عائلة PIC24H" (ملف PDF) . تم الاطلاع عليه بتاريخ 23 سبتمبر 2007 .
  16. "MIPS32® M4K® Core - MIPS Technologies - MIPS Everywhere - MIPS Technologies" . مؤرشف من الأصل بتاريخ 2009-02-02 . تم الاطلاع عليه بتاريخ 2009-01-21 .
  17. "وحدات التحكم الدقيقة PIC ذات 32 بت" . تم الاطلاع عليه بتاريخ 13 أكتوبر 2010 .
  18. "وحدات التحكم الدقيقة 32 بت - تقنية مايكروشيب" . www.microchip.com . تم الاطلاع عليه بتاريخ 7 أبريل 2018 .
  19. «تتميز وحدات التحكم الدقيقة PIC32MZ من شركة Microchip، ذات 32 بت، بأداء رائد في فئتها يصل إلى 330 DMIPS و3.28 CoreMarks™/MHz؛ وكثافة كود أفضل بنسبة 30%» . Microchip. 18 نوفمبر 2013. مؤرشف من الأصل في 21 نوفمبر 2013. تم الاطلاع عليه في 14 ديسمبر 2022 .
  20. "مرحباً بكم في مدونة الخيال" . imgtec.com . 16 سبتمبر 2015. تم الاطلاع عليه بتاريخ 7 أبريل 2018 .
  21. "PIC32MZ EF | Microchip Technology" .
  22. "شركة مايكروشيب تُقدّم أول وحدة تحكم دقيقة في الصناعة مزودة بمعالج رسومات ثنائي الأبعاد مدمج وذاكرة DDR2 مدمجة لإمكانيات رسومات رائدة" . مؤرشف من الأصل بتاريخ 20 يوليو 2017. تم الاطلاع عليه بتاريخ 9 أغسطس 2023 .
  23. "عائلة PIC32MZ DA" . شركة Microchip. مؤرشف من الأصل بتاريخ 2018-04-02 . تم الاطلاع عليه بتاريخ 2022-12-14 .
  24. "شركة مايكروشيب تطلق عائلة PIC32 الأقل استهلاكًا للطاقة والأكثر فعالية من حيث التكلفة - مايكروشيب تكنولوجي" . www.microchip.com . تاريخ الاطلاع: 7 أبريل 2018 .
  25. "عائلة PIC32MM من وحدات التحكم الدقيقة منخفضة الطاقة للغاية (XLP) ومنخفضة التكلفة وذات 32 بت" . تم الاطلاع عليه بتاريخ 9 أغسطس 2023 .
  26. "عائلة PIC32MK" . شركة مايكروشيب. مؤرشف من الأصل بتاريخ 16-03-2018 . تم الاطلاع عليه بتاريخ 14-12-2022 .
  27. "وحدات التحكم الدقيقة PIC® وSAM ذات 32 بت" . شركة مايكروشيب . تم الاطلاع عليه بتاريخ 22-08-2024 .
  28. أنيشا (12 يوليو 2024). "شركة مايكروشيب تبدأ عائلة معالجات PIC64 ذات 64 بت مع معمارية RISC-V" (بيان صحفي). RISC-V International . تاريخ الاسترجاع: 24 يوليو 2024 .
  29. لويس، جيمس (9 يوليو 2024). "شركة مايكروشيب تكشف النقاب عن مجموعة معالجات PIC64 متعددة النوى 64 بت" (بيان صحفي). مايكروشيب . تم الاطلاع عليه بتاريخ 24 يوليو 2024 عبر موقع Hackster.io.
  30. «شركة موغ تكشف النقاب عن حاسوب فضائي جديد مقاوم للإشعاع لدعم الجيل القادم من الحوسبة عالية السرعة في المدار» (بيان صحفي). شركة موغ، 13 أغسطس 2024 عبر سبيس نيوز .
  31. روفناك، تيم (2003). "AN869: تقنيات ربط الذاكرة الخارجية لمعالج PIC18F8XXX" (ملف PDF) . شركة مايكروشيب للتكنولوجيا. DS00869B . تاريخ الاسترجاع: 24 أغسطس 2009 .
  32. "محدد الأجزاء المتقدم من مايكروشيب" . مايكروشيب. مؤرشف من الأصل بتاريخ 10 يناير 2016. تم الاطلاع عليه بتاريخ 14 ديسمبر 2022 .
  33. "إبطاء 208.80.153.50,10-192-48-43&c=1&t=43197.5553483796" . massmind.org . تم الاطلاع عليه بتاريخ 7 أبريل 2018 .
  34. "MPLAB® XC: حلول المترجمات" . microchip.com . تم الاطلاع عليه بتاريخ 7 أبريل 2018 .
  35. 1 2 "مركز تصميم 3V" . تم الاطلاع عليه بتاريخ 2 أغسطس 2011 .
  36. "MPLAB XC8 Compiler for PIC10/12/16/18 MCUs" .
  37. "كيفية محاكاة متحكم PIC الدقيق في برنامج Proteus Design Suite 8 - معرض الدوائر" . 2013-08-02 . تم الاطلاع عليه بتاريخ 2016-07-12 .
  38. "FlashForth" . تم الاطلاع عليه بتاريخ 18-07-2025 .
  39. وثيقة الرقاقة الدقيقة رقم DS51292R
  40. "start - RetroBSD" . retrobsd.org . تم الاطلاع عليه بتاريخ 7 أبريل 2018 .
  41. "ميلاندر K1886VE: المعالج الدقيق الذي ذهب إلى روسيا" . ذا سي بي يو شاك. 10 مارس 2016. تم الاطلاع عليه بتاريخ 21 يوليو 2016 .
  42. "وحدات التحكم الدقيقة 8-mi razprednыe КМОП 1886VE1 و 1886ВЕ2. نظرة عامة على البحر" التناظرية الوظيفية PIC17C756A" [ وحدات التحكم الدقيقة CMOS 8 بت عالية الأداء 1886VE1 و1886VE2. قائمة الاختلافات من أقرب PIC17C756A التناظرية الوظيفية. ] (PDF) (بالروسية). موسكو: حزب العمال الكردستاني ميلاندر. 7 سبتمبر 2006. مؤرشف من الأصل (ملف PDF) في 5 فبراير 2017. تم الاطلاع عليه في 23 أكتوبر 2017 .
  43. "Каталог продукции гruппы компаний "Миландр" 2017" [ كتالوج منتجات مجموعة ميلاندر 2017 ] (PDF) (بالروسية). موسكو: حزب العمال الكردستاني ميلاندر. مؤرشفة من الأصلي (PDF) في 27 أكتوبر 2017 . تم الاسترجاع في 18 أبريل 2018 .
  44. ^ "1886ая серая" [ سلسلة 1886 ] (بالروسية) . تم الاسترجاع 21 يوليو 2016 .
  45. "الجزء الثاني: كيف "تفتح" الشريحة الإلكترونية وماذا يوجد بداخلها؟ Z80، Multiclet، MSP430، PIC وغيرها" . ZeptoBars. 21 فبراير 2013. تم الاطلاع عليه بتاريخ 11 أبريل 2017 .
  46. "義隆電子股份有限公司義隆電子،再創未來!" .
  47. كارلسون، جاي (15 سبتمبر 2017). "هولتك HT-66" . وحدة التحكم الدقيقة المذهلة التي تبلغ تكلفتها دولارًا واحدًا . تم الاطلاع عليه بتاريخ 8 يوليو 2019 .
  48. أوفرانك، جان لوك (3 أغسطس 2016). "ما هو أرخص متحكم دقيق؟ ​​تجربتي: متحكم Holtek HT48R002 ذو 8 بت يُباع بسعر 0.085 دولار" . مدونة CNX Software . تاريخ الاطلاع: 8 يوليو 2019 .
  49. "دليل مستخدم مجموعة التعليمات H08A" (ملف PDF) . شركة هايكون للتكنولوجيا. 1 أغسطس 2010. APD-CORE002-V03_EN . تاريخ الاسترجاع: 4 يناير 2025 .
  50. "دليل مستخدم مجموعة التعليمات H08B" (ملف PDF) . شركة هايكون للتكنولوجيا. 1 أغسطس 2010. APD-CORE003-V02_EN . تاريخ الاسترجاع: 19 أغسطس 2016 .
  51. "وصف تطبيق نواة وحدة المعالجة المركزية: مقارنات وإضافات لمجموعتي التعليمات H08A وH08B" (ملف PDF) . شركة هايكون للتكنولوجيا. 24 مارس 2011. APD-CORE001_EN-V06.
  52. «شركة مايكروشيب تكنولوجي ترفع دعوى قضائية بتهمة انتهاك حقوق الملكية الفكرية ضد شركة مايكون ديزاين تكنولوجي المحدودة» (ملف PDF) (بيان صحفي). 29 يناير 1999. تاريخ الاطلاع: 23 أكتوبر 2017 .
  53. «شركة مايكروشيب تكنولوجي تتخذ إجراءات قانونية ضد شركة شنغهاي هاير للدوائر المتكاملة» (ملف PDF) (بيان صحفي). 5 يوليو 2007. تاريخ الاطلاع: 23 أكتوبر 2017 .
  54. فولر، برايان (1 مايو 2013). "مكافحة التزييف الصيني؟ انسَ الأمر" . أخبار الأعمال الإلكترونية . تم الاسترجاع في 4 يناير 2024 .
  55. "شركة هاير المتكاملة تفوز في معركة براءات الاختراع ضد شركة مايكروشيب الأمريكية" . sb2a0 للمكونات الإلكترونية (مدونة). ١٨ مايو ٢٠١٥. تاريخ الاطلاع: ٨ يوليو ٢٠١٩ .

للمزيد من القراءة

  • نظرية وتطبيقات المتحكمات الدقيقة، مع PIC18F ؛ الطبعة الثانية؛ محمد رفيق الزمان؛ وايلي؛ 544 صفحة؛ 2018؛ ISBN 978-1119448419.
  • تصميم أنظمة المتحكمات الدقيقة باستخدام معالجات PIC18F ؛ نيكولاس ك. حداد؛ دار نشر IGI Global؛ 428 صفحة؛ 2017؛ رقم ISBN 978-1683180005.
  • مشاريع متحكمات PIC الدقيقة بلغة C: من الأساسيات إلى المستويات المتقدمة (لـ PIC18F) ؛ الطبعة الثانية؛ دوغان إبراهيم؛ نيونس؛ 660 صفحة؛ 2014؛ ISBN 978-0080999241( الطبعة الأولى)
  • برمجة المتحكمات الدقيقة: متحكمات PIC من شركة Microchip ؛ سانشيز وكانتون؛ دار نشر CRC؛ 824 صفحة؛ 2006؛ رقم ISBN 978-0849371899( الطبعة الأولى)
  • كتاب مشاريع المتحكم الدقيق PIC ؛ جون إيوفين؛ TAB؛ ٢٧٢ صفحة؛ ٢٠٠٠؛ ISBN 978-0071354790( الطبعة الأولى)

.