المعالج الدقيق البرمجي
المعالج الدقيق البرمجي (يُسمى أيضًا المعالج الدقيق ذو النواة البرمجية أو المعالج البرمجي ) هو نواة معالج دقيق يمكن تنفيذها بالكامل باستخدام توليف المنطق . ويمكن تنفيذه عبر أجهزة أشباه موصلات مختلفة تحتوي على منطق قابل للبرمجة (مثل FPGA و CPLD )، بما في ذلك الأنواع المتطورة والأنواع التجارية. [ 1 ]
معظم الأنظمة، إن استخدمت معالجًا برمجيًا أصلًا، تستخدم معالجًا برمجيًا واحدًا فقط. مع ذلك، يقوم بعض المصممين بتوزيع أكبر عدد ممكن من النوى البرمجية على شريحة FPGA. [ 2 ] في هذه الأنظمة متعددة النوى ، يمكن مشاركة الموارد قليلة الاستخدام بين جميع النوى في المجموعة.
بينما يضع الكثيرون معالجًا دقيقًا برمجيًا واحدًا فقط على مصفوفة البوابات المنطقية القابلة للبرمجة (FPGA)، يمكن لمصفوفة FPGA كبيرة بما يكفي استيعاب معالجين دقيقين برمجيين أو أكثر، مما ينتج عنه معالج متعدد النوى . عدد المعالجات البرمجية على مصفوفة FPGA واحدة محدود فقط بحجمها. [ 3 ] وقد وضع البعض عشرات أو مئات المعالجات الدقيقة البرمجية على مصفوفة FPGA واحدة. [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] هذه إحدى طرق تنفيذ التوازي الهائل في الحوسبة، ويمكن تطبيقها بالمثل على الحوسبة داخل الذاكرة .
يُعد المعالج الدقيق البرمجي وملحقاته الطرفية المُنفذة في مصفوفة البوابات المنطقية القابلة للبرمجة (FPGA) أقل عرضةً للتقادم من المعالج المنفصل. [ 9 ] [ 10 ] [ 11 ]
مقارنة أساسية
| المعالج | مطور | المصادر المفتوحة | دعم الحافلات | ملحوظات | مشروع المنزل | لغة الوصف |
|---|---|---|---|---|---|---|
| يعتمد على بنية مجموعة تعليمات ARM | ||||||
| العنبر | كونور سانتيفورت | LGPLv2.1 | عظم الترقوة | خط أنابيب ARMv2a ثلاثي المراحل أو خماسي المراحل | صفحة المشروع على موقع Opencores | فيريلوج |
| القشرة المخية M1 | ذراع | لا | 70-200 ميجاهرتز، معالج RISC ذو 32 بت | فيريلوج | ||
| استنادًا إلى بنية مجموعة تعليمات AVR | ||||||
| نافري | سيباستيان بوردودوك | نعم | ذاكرة الوصول العشوائي الثابتة المباشرة | معالج Atmel AVR متوافق مع معالج RISC ذو 8 بت | صفحة المشروع على موقع Opencores | فيريلوج |
| pAVR | دورو كوتوريلا | نعم | معالج Atmel AVR متوافق مع معالج RISC ذو 8 بت | صفحة المشروع على موقع Opencores | لغة VHDL | |
| سوفت أفركور | أندراس بال | نعم | ناقلات AVR القياسية (إدخال/إخراج مقترن بالنواة، وذاكرة SRAM متزامنة، وذاكرة ROM متزامنة للبرمجة) | تتضمن ميزات Atmel AVR -8-bit RISC (حتى AVR5) والأجهزة الطرفية وSoC | صفحة المشروع على موقع Opencores | فيريلوج |
| يعتمد على بنية مجموعة تعليمات MicroBlaze | ||||||
| AEMB | شون تان | نعم | عظم الترقوة | متوافق مع MicroBlaze EDK 3.2 | AEMB | فيريلوج |
| مايكروبلايز | زيلينكس | لا | PLB، OPB، FSL، LMB، AXI4 | Xilinx MicroBlaze | ||
| أوبن فاير | مختبر فرجينيا تك CCM | نعم | OPB، FSL | ملف ثنائي متوافق مع MicroBlaze | [ 12 ] | فيريلوج |
| سيكريت بليز | مختبر LIRMM، جامعة مونبلييه / المركز الوطني الفرنسي للبحث العلمي | نعم | عظم الترقوة | MicroBlaze ISA, VHDL | سيكريت بليز | لغة VHDL |
| استنادًا إلى بنية مجموعة تعليمات MCS-51 | ||||||
| MCL51 | مختبرات مايكروكور | نعم | معالج 8051 صغير الحجم للغاية يعتمد على تقنية التسلسل الدقيق | 312 جدول بحث Artix-7. أما نسخة المعالج رباعي النواة 8051 فتحتوي على 1227 جدول بحث. | نواة MCL51 | |
| TSK51/52 | ألتيم | خالٍ من حقوق الملكية | ويشبون / إنتل 8051 | متوافق مع مجموعة تعليمات Intel 8051 ذات 8 بت ، بديل بتردد ساعة أقل | تصميم مضمن على Altium Wiki | |
| استنادًا إلى بنية مجموعة تعليمات MIPS | ||||||
| بيري | جامعة كامبريدج | بي إس دي | نظام MIPS | صفحة المشروع | بلوسبيك | |
| دوسماتيك | رينيه دوس | CC BY-NC 3.0، باستثناء المتقدمين التجاريين الذين يتعين عليهم دفع رسوم ترخيص . | حافلة ذات خطوط أنابيب | مراحل خط أنابيب مجموعة تعليمات MIPS I | دوسماتيك | لغة VHDL |
| TSK3000A | ألتيم | خالٍ من حقوق الملكية | عظم الترقوة | معالج RISC معدل بنمط R3000 ذو 32 بت ، ببنية هارفارد | تصميم مضمن على Altium Wiki | |
| يعتمد على بنية مجموعة تعليمات PicoBlaze | ||||||
| باكو بليز | بابلو بلاير | نعم | متوافق مع معالجات PicoBlaze | باكو بليز | فيريلوج | |
| بيكو بليز | زيلينكس | لا | Xilinx PicoBlaze | VHDL، Verilog | ||
| يعتمد على بنية مجموعة تعليمات RISC-V | ||||||
| f32c | جامعة زغرب | بي إس دي | AXI، SDRAM، SRAM | 32 بت، مجموعات فرعية من بنية مجموعة تعليمات RISC-V / MIPS (قابلة لإعادة الاستهداف)، سلسلة أدوات GCC | f32c | لغة VHDL |
| NEORV32 | ستيفان نولتينغ | بي إس دي | عظمة الترقوة b4، AXI4 | rv32[i/e] [m] [a] [c] [b] [u] [Zfinx] [Zicsr] [Zifencei]، متوافق مع RISC-V، وحدة المعالجة المركزية ونظام على شريحة متوفران، قابل للتخصيص بدرجة عالية، مجموعة أدوات GCC | GitHub OpenCores | لغة VHDL |
| VexRiscv | البروتين الدهني عالي الكثافة في العمود الفقري | نعم | AXI4 / أفالون | 32 بت، RISC-V، تصل إلى 340 ميجاهرتز على Artix 7. تصل إلى 1.44 DMIPS/MHz. | https://github.com/SpinalHDL/VexRiscv | VHDLVerilog (SpinalHDL) |
| استنادًا إلى بنية مجموعة تعليمات SPARC | ||||||
| ليون 2 (-FT) | وكالة الفضاء الأوروبية | نعم | AMBA2 | SPARC V8 | وكالة الفضاء الأوروبية | لغة VHDL |
| ليون 3/4 | أيروفليكس جايسلر | نعم | AMBA2 | SPARC V8 | أيروفليكس جايسلر | لغة VHDL |
| أوبن بيتون | مجموعة برينستون المتوازية | نعم | Manycore SPARC V9 | أوبن بيتون | فيريلوج | |
| OpenSPARC T1 | شمس | نعم | 64 بت | OpenSPARC.net | فيريلوج | |
| تاكوس/بايب 5 | مكتبة تيم | نعم | حافلة ذات خطوط أنابيب | SPARC V8 | تمليب | لغة VHDL |
| يعتمد على بنية مجموعة تعليمات x86 | ||||||
| وحدة المعالجة المركزية 86 | مختبر HT | نعم | وحدة معالجة مركزية متوافقة مع 8088 مكتوبة بلغة VHDL | cpu86 | لغة VHDL | |
| MCL86 | مختبرات مايكروكور | نعم | تم توفير 8088 وحدة BIU. ويمكن إنشاء وحدات أخرى بسهولة. | تم تنفيذ دورة دقيقة باستخدام معالج 8088/8086 مع جهاز تسلسل دقيق. استخدام أقل من 2% من جهاز Kintex-7. | نواة MCL86 | |
| s80x86 | جيمي آيلز | رخصة جنو العمومية الإصدار 3 | مخصص | نواة GPLv3 متوافقة مع 80186 | s80x86 | SystemVerilog |
| زيت | زيوس غوميز مارمولخو | نعم | عظم الترقوة | جهاز كمبيوتر x86 مُستنسخ | زيت | فيريلوج |
| ao486 | ألكسندر عثمان | 3- بنود BSD | أفالون | نواة متوافقة مع i486 SX | ao486 | فيريلوج |
| يعتمد على بنية مجموعة تعليمات PowerPC/Power | ||||||
| باور بي سي 405 إس | شركة آي بي إم | لا | كور كونكت | كتاب E، معالج PowerPC 32 بت الإصدار 2.03 | شركة آي بي إم | فيريلوج |
| باور بي سي 440 إس | شركة آي بي إم | لا | كور كونكت | كتاب E، معالج PowerPC 32 بت الإصدار 2.03 | شركة آي بي إم | فيريلوج |
| باور بي سي 470 إس | شركة آي بي إم | لا | كور كونكت | كتاب E، معالج PowerPC 32 بت الإصدار 2.05 | شركة آي بي إم | فيريلوج |
| ميكروواط | IBM/OpenPOWER | CC-BY 4.0 | عظم الترقوة | إثبات المفهوم لتقنية PowerISA 3.0 ذات 64 بت | ميكرووات على جيت هاب | لغة VHDL |
| تشيزلوات | IBM/OpenPOWER | CC-BY 4.0 | عظم الترقوة | PowerISA 3.0 ذو 64 بت | Chiselwatt @ Github | إزميل |
| Libre-SOC | Libre-SoC.org | BSD/LGPLv2+ | عظم الترقوة | تنفيذ PowerISA 3.0 ذو 64 بت لوحدة المعالجة المركزية/وحدة معالجة الرسومات/وحدة معالجة الرؤية وتعليمات متجهة مخصصة | Libre-SoC.org | python/nMigen |
| A2I | IBM/OpenPOWER | CC-BY 4.0 | ناقل بيانات مخصص | كتاب E، معالج PowerPC 2.6 ذو 64 بت. بالترتيب الأساسي | A2I @ Github | لغة VHDL |
| A2O | IBM/OpenPOWER | CC-BY 4.0 | ناقل بيانات مخصص | معالج PowerPC 2.7 Book E ذو 64 بت. نواة معطلة | A2O @ Github | فيريلوج |
| بنى معمارية أخرى | ||||||
| قوس | شركة ARC الدولية ، شركة Synopsys | لا | 16/32/64 بت ISA RISC | ديزاين وير آرك | فيريلوج | |
| ERIC5 | إلكترونيات إنتنر | لا | معالج RISC ذو 9 بت، صغير الحجم للغاية، قابل للبرمجة بلغة C | تمت أرشفة ERIC5 بتاريخ 5 مارس 2016 على موقع Wayback Machine. | لغة VHDL | |
| معالج H2 | ريتشارد جيمس هاو | معهد ماساتشوستس للتكنولوجيا | مخصص | آلة مكدس 16 بت، مصممة لتنفيذ لغة فورث مباشرة، صغيرة الحجم | معالج H2 | لغة VHDL |
| نظام على شريحة فوري | نوى FPGA | لا | مخصص | امتداد RISC-V M ذو 32 بت، نظام على شريحة (SoC) مُعرّف بلغة C++ | نظام على شريحة فوري | لغة VHDL |
| جوب | مارتن شوبرل | نعم | سيمبكون / ويشبون (امتداد) | يدعم هذا النظام المكدس، ويدعم الوقت الحقيقي الصارم، وينفذ بايت كود جافا مباشرة. | جوب | لغة VHDL |
| LatticeMico8 | شعرية | نعم | عظم الترقوة | LatticeMico8 | فيريلوج | |
| LatticeMico32 | شعرية | نعم | عظم الترقوة | LatticeMico32 | فيريلوج | |
| LXP32 | أليكس كوزنيتسوف | معهد ماساتشوستس للتكنولوجيا | عظم الترقوة | خط أنابيب 32 بت، 3 مراحل، ملف تسجيل يعتمد على ذاكرة الوصول العشوائي الكتلية | lxp32 | لغة VHDL |
| MCL65 | مختبرات مايكروكور | نعم | نواة 6502 فائقة الصغر تعتمد على جهاز تسلسل دقيق | 252 جدول بحث Spartan-7. دورة الساعة دقيقة. | MCL65 Core | |
| MRISC32-A1 | ماركوس جيلنارد | نعم | عظم الترقوة ، B4/مُبطّن | وحدة معالجة مركزية RISC/Vector ذات 32 بت تُنفذ بنية مجموعة تعليمات MRISC32 | MRISC32 | لغة VHDL |
| نيو 430 | ستيفان نولتينغ | نعم | عظمة الترقوة (أفالون، AXI4-Lite) | معالج MSP430 ذو 16 بت متوافق مع معيار ISA، حجم صغير جدًا، يدعم العديد من الأجهزة الطرفية، قابل للتخصيص بدرجة عالية | نيو 430 | لغة VHDL |
| نيوس ، نيوس 2 | ألترا | لا | أفالون | ألترا نيوس 2 | فيريلوج | |
| أوبن ريسك | OpenCores | نعم | عظم الترقوة | 32 بت؛ تم إنجازه في ASIC، وActel، وAltera، وXilinx FPGA. | فيريلوج | |
| سبارتان إم سي | جامعة دارمشتات التقنية / جامعة دريسدن التقنية | نعم | مخصص ( دعم AXI قيد التطوير) | مجموعة تعليمات 18 بت (دعم GNU Binutils / GCC قيد التطوير) | سبارتان إم سي | فيريلوج |
| SYNPIC12 | ميغيل أنخيل أجو بيلايو | معهد ماساتشوستس للتكنولوجيا | متوافق مع PIC12F، تم توليف البرنامج في البوابات | nbee.es | لغة VHDL | |
| xr16 | جان غراي | لا | حافلة XSOC المجردة | وحدة المعالجة المركزية RISC ذات 16 بت ونظام SoC المذكوران في مجلة Circuit Cellar، العددين 116-118 | XSOC/xr16 | تخطيطي |
| ياسيب | يان غيدون | AGPLv3 | ذاكرة الوصول العشوائي الثابتة المباشرة | 16 أو 32 بت، RTL بلغة VHDL و asm بلغة JS ، مجموعة فرعية من المتحكمات الدقيقة : جاهز | yasep.org ( يتطلب متصفح فايرفوكس ) | لغة VHDL |
| ZipCPU | تكنولوجيا جيسلكويست | رخصة جنو العمومية الإصدار 3 | عظم الترقوة، B4/مُبطّن | وحدة معالجة مركزية 32 بت مصممة لتقليل استخدام موارد FPGA | zipcpu.com | فيريلوج |
| ZPU | زيلين إيه إس | نعم | عظم الترقوة | وحدة معالجة مركزية قائمة على المكدس، مسار بيانات قابل للتكوين 16/32 بت، دعم eCos | وحدة المعالجة المركزية زيلين | لغة VHDL |
| RISC5 | نيكلاوس ويرث | نعم | مخصص | تشغيل نظام أوبرون رسومي كامل يتضمن محررًا ومترجمًا. يمكن تطوير البرامج وتشغيلها على نفس لوحة FPGA. | www.projectoberon.com/ | فيريلوج |
انظر أيضاً
مراجع
- ↑ عنوان المقال "نظام تشغيل Zet الأساسي يعمل بنظام Windows 3.0" بقلم أندرو فيلش 2011
- ↑ "Embedded.com - بنى FPGA من الألف إلى الياء : الجزء الثاني" . مؤرشف من الأصل بتاريخ 8 أكتوبر 2007. تم الاطلاع عليه بتاريخ 18 أغسطس 2012 . "معماريات FPGA من الألف إلى الياء" بقلم كلايف ماكسفيلد 2006
- ↑ معالج MicroBlaze البرمجي: الأسئلة الشائعة ( مؤرشف بتاريخ ٢٧ أكتوبر ٢٠١١ في أرشيف الإنترنت)
- ^ استفان فاساني. “تنفيذ صفائف المعالج على FPGAs”. 1998.
- ↑ تشوكون وانغ وعمر حمامي. "تصميم نظام على شريحة FPGA مكون من 24 معالجًا مع شبكة على الشريحة".
- ↑ جون كينت. "مصفوفة Micro16 - مصفوفة وحدة معالجة مركزية بسيطة"
- ↑ كيت إيتون. "تم تحقيق معالج بـ 1000 نواة: سيكون جهاز الكمبيوتر المكتبي الخاص بك في المستقبل حاسوبًا فائقًا". 2011.
- ↑ "علماء يضغطون أكثر من 1000 نواة على شريحة واحدة". 2011. أُرشف بتاريخ 5 مارس 2012 في أرشيف الإنترنت (Wayback Machine) .
- ↑ جو ديلير. ""أهم 7 أسباب لاستبدال وحدة التحكم الدقيقة الخاصة بك بوحدة MAX 10 FPGA"( PDF) .
- ^ جون سوان. توميك كرزيزاك. (2008). ""استخدام مصفوفات البوابات المنطقية القابلة للبرمجة لتجنب تقادم المعالجات الدقيقة"تمت أرشفة النسخة الأصلية بتاريخ 2016-10-13 .
- ↑ فريق العمل (2010-02-03). "يجب دعم الملكية الفكرية لمعالج FPGA" . مجلة الإلكترونيات الأسبوعية . تم الاطلاع عليه بتاريخ 2019-04-03 .
- ↑ "نظرة عامة :: نواة معالج OpenFire :: OpenCores" .
روابط خارجية
- أنوية المعالج البرمجية لـ FPGA
- مقارنة تفصيلية بين 12 معالجًا دقيقًا برمجيًا
- أخبار وحدة المعالجة المركزية FPGA
- موقع Freedom CPU الإلكتروني
- أنوية المعالجات الدقيقة على موقع Opencores.org (قم بتوسيع علامة التبويب "المعالج")
- معالج NikTech 32 بت RISC الدقيق MANIK.
- المعالجات الدقيقة البرمجية
