عائلة معمارية ARM

ARM (تُكتب أحيانًا arm ) هي عائلة من معمارية مجموعة تعليمات RISC لمعالجات الحاسوب . تقوم شركة Arm Holdings بتطوير معمارية مجموعة التعليمات وترخيصها لشركات أخرى، تقوم بدورها بتصنيع الأجهزة المادية التي تستخدم هذه المعمارية. كما تقوم الشركة بتصميم وترخيص النوى التي تُنفذ معمارية مجموعة التعليمات هذه.

بفضل تكلفتها المنخفضة، واستهلاكها المنخفض للطاقة، وانخفاض توليدها للحرارة، تُعد معالجات ARM مفيدة للأجهزة الخفيفة والمحمولة التي تعمل بالبطاريات، بما في ذلك الهواتف الذكية وأجهزة الكمبيوتر المحمولة والأجهزة اللوحية ، بالإضافة إلى الأنظمة المدمجة . [ 3 ] [ 4 ] [ 5 ] [ 6 ] ومع ذلك، تُستخدم معالجات ARM أيضًا في أجهزة الكمبيوتر المكتبية والخوادم ، بما في ذلك Fugaku ، أسرع حاسوب عملاق في العالم من عام 2020 [ 7 ] إلى عام 2022. مع إنتاج أكثر من 230 مليار شريحة ARM ، [ 8 ] [ 9 ] منذ عام 2003 على الأقل، وتزايد هيمنتها عامًا بعد عام.تُعدّ ARM أكثر عائلات معمارية مجموعات التعليمات استخدامًا. [ 10 ] [ 4 ] [ 11 ] [ 12 ] [ 13 ]

مرّ تصميم ARM بعدة أجيال. استخدم معالج ARM1 الأصلي بنية داخلية 32 بت، لكن مساحة عناوينه كانت 26 بت فقط ، مما حدّ من سعته إلى 64  ميجابايت من الذاكرة الرئيسية . أُزيل هذا القيد في سلسلة ARMv3، التي تتميز بمساحة عناوين 32 بت، وظلت عدة أجيال لاحقة حتى ARMv7 تعمل ببنية 32 بت. في عام 2011، أضافت بنية ARMv8-A دعمًا لمساحة عناوين 64 بت وعمليات حسابية 64 بت مع مجموعة تعليمات جديدة ثابتة الطول 32 بت. [ 14 ] كما أصدرت شركة Arm Holdings سلسلة من مجموعات التعليمات الإضافية لأدوار مختلفة: أضافت امتدادات "Thumb" تعليمات 32 بت و16 بت لتحسين كثافة التعليمات البرمجية ، بينما أضافت Jazelle تعليمات للتعامل المباشر مع بايت كود Java . تشمل التغييرات الأحدث إضافة تعدد الخيوط المتزامن (SMT) لتحسين الأداء أو تحمل الأعطال . [ 15 ]

تاريخ

بي بي سي مايكرو

كان أول تصميم ناجح لشركة Acorn Computers هو BBC Micro ، الذي طُرح في ديسمبر 1981. كان هذا الجهاز تقليديًا نسبيًا، ويعتمد على معالج MOS Technology 6502، ولكنه كان يعمل بأداء يُقارب ضعف أداء التصاميم المنافسة مثل Apple II، وذلك بفضل استخدامه ذاكرة الوصول العشوائي الديناميكية (DRAM) الأسرع. كانت ذاكرة DRAM النموذجية في ذلك الوقت تعمل بسرعة 2  ميجاهرتز تقريبًا؛ وقد أبرمت Acorn صفقة مع Hitachi لتوريد  قطع غيار أسرع بسرعة 4 ميجاهرتز. [ 16 ]

كانت أجهزة تلك الحقبة تتشارك الذاكرة بين المعالج ووحدة عرض الإطارات ، مما سمح للمعالج بتحديث محتوى الشاشة بسرعة دون الحاجة إلى عمليات إدخال/إخراج منفصلة . ولأن توقيت عرض الفيديو دقيق للغاية، كان لا بد من منح وحدة معالجة الفيديو أولوية الوصول إلى تلك الذاكرة. وبسبب خلل في تصميم معالج 6502، كان المعالج المركزي يُبقي الذاكرة دون استخدام لنصف الوقت. وبالتالي، بتشغيل المعالج المركزي بسرعة 1  ميجاهرتز، كان بإمكان نظام الفيديو قراءة البيانات خلال فترات التوقف تلك، مستغلًا عرض  النطاق الترددي الكامل لذاكرة الوصول العشوائي (RAM) البالغ 2 ميجاهرتز. في جهاز BBC Micro، سمح استخدام ذاكرة وصول  عشوائي (RAM) بسرعة 4 ميجاهرتز بتطبيق التقنية نفسها، ولكن بسرعة مضاعفة. وقد مكّنه ذلك من التفوق على أي جهاز مماثل في السوق. [ 17 ]

شركة أكورن لأجهزة الكمبيوتر التجارية

شهد عام 1981 أيضًا إطلاق حاسوب IBM الشخصي . وبفضل معالج Intel 8088 ، الذي طُرح حديثًا آنذاك، وهو معالج ذو 16 بت مقارنةً بمعالج 6502 ذي 8 بت ، قدّم أداءً عامًا أعلى. أحدث هذا الإطلاق تغييرًا جذريًا في سوق الحواسيب المكتبية: فما كان في معظمه سوقًا للهواة والألعاب، بدأ يتحوّل إلى أداة أساسية للأعمال، حيث لم تستطع التصاميم السابقة ذات 8 بت منافسته. حتى أن تصاميم أحدث ذات 32 بت بدأت بالظهور في السوق، مثل Motorola 68000 [ 18 ] و National Semiconductor NS32016 [ 19 ] .

بدأت شركة Acorn بالتفكير في كيفية المنافسة في هذا السوق، وأنتجت تصميمًا ورقيًا جديدًا أطلقت عليه اسم Acorn Business Computer . وحددت الشركة هدفًا يتمثل في إنتاج جهاز يفوق أداء BBC Micro بعشرة أضعاف، ولكن بنفس السعر. [ 20 ] كان من شأن هذا الجهاز أن يتفوق على أجهزة الكمبيوتر الشخصية ويتفوق عليها في السعر. في الوقت نفسه، ساهم طرح جهاز Apple Lisa مؤخرًا في تعريف جمهور أوسع بمفهوم واجهة المستخدم الرسومية (GUI)، مما أوحى بأن المستقبل سيكون للأجهزة المزودة بواجهة مستخدم رسومية. [ 21 ] إلا أن سعر Lisa بلغ 9995 دولارًا أمريكيًا، نظرًا لاحتوائه على رقائق دعم، وذاكرة كبيرة، وقرص صلب ، وكلها كانت باهظة الثمن آنذاك. [ 22 ]

ثم بدأ المهندسون بدراسة جميع تصميمات وحدات المعالجة المركزية المتاحة. وخلصوا إلى أن تصميمات 16 بت الحالية كانت باهظة الثمن، وما زالت "رديئة نوعًا ما" [ 23 ] ، إذ لم تقدم سوى أداءً أعلى بقليل من تصميم BBC Micro الخاص بهم. كما أنها كانت تتطلب دائمًا تقريبًا عددًا كبيرًا من رقائق الدعم للعمل حتى على هذا المستوى، مما رفع تكلفة الحاسوب ككل. ببساطة، لم تكن هذه الأنظمة لتفي بأهداف التصميم. [ 23 ] كما نظروا في تصميمات 32 بت الجديدة، لكنها كانت أغلى ثمنًا، وتعاني من نفس مشاكل رقائق الدعم. [ 24 ] ووفقًا لسوفي ويلسون ، كان أداء جميع المعالجات التي تم اختبارها في ذلك الوقت متقاربًا، بعرض  نطاق ترددي يبلغ حوالي 4 ميجابت/ثانية. [ 25 ] [ ب ]

قاد حدثان رئيسيان شركة Acorn إلى تبني معالجات ARM. أولهما نشر سلسلة من التقارير من جامعة كاليفورنيا، بيركلي ، والتي أشارت إلى إمكانية تحقيق أداء عالٍ للغاية لتصميم شريحة بسيطة، يفوق بكثير أحدث تصميمات 32 بت المتوفرة في السوق. [ 26 ] أما الحدث الثاني فكان زيارة قام بها ستيف فوربر وصوفي ويلسون إلى مركز التصميم الغربي ، وهي شركة يديرها بيل مينش وشقيقته كاثرين، [ 27 ] والتي أصبحت الوريث المنطقي لفريق MOS، وكانت تقدم إصدارات جديدة مثل WDC 65C02 . شاهد فريق Acorn طلابًا في المرحلة الثانوية يصممون تخطيطات الشرائح على أجهزة Apple II، مما أوحى بأن أي شخص قادر على القيام بذلك. [ 28 ] [ 29 ] في المقابل، كشفت زيارة لشركة تصميم أخرى تعمل على معالجات 32 بت حديثة عن فريق يضم أكثر من اثني عشر عضوًا وصلوا بالفعل إلى المراجعة H من تصميمهم، ومع ذلك لا يزال التصميم يحتوي على أخطاء. [ ج ] وقد عزز هذا قرارهم في أواخر عام 1983 ببدء تصميم وحدة المعالجة المركزية الخاصة بهم، وهي آلة Acorn RISC. [ 30 ]

مفاهيم التصميم

كانت تصميمات بيركلي RISC الأصلية، من بعض النواحي، أنظمة تعليمية، وليست مصممة خصيصًا للأداء العالي. أضافت ARM إلى مفاهيم RISC الأساسية، التي تعتمد بكثافة على المسجلات وعمليات التحميل والتخزين، عددًا من ملاحظات التصميم الناجحة لمعالج 6502. وكان من أهمها القدرة على معالجة المقاطعات بسرعة ، مما سمح للأجهزة بتقديم أداء إدخال/إخراج معقول دون الحاجة إلى أجهزة خارجية إضافية. ولتقديم مقاطعات بأداء مماثل لمعالج 6502، حدد تصميم ARM مساحة العناوين الفيزيائية إلى 64  ميجابايت من إجمالي المساحة القابلة للعنونة، مما يتطلب 26 بتًا للعنوان. ولأن التعليمات كانت بطول 4 بايت (32 بتًا)، وكان يجب محاذاتها على حدود 4 بايت، فإن البتتين السفليتين من عنوان التعليمات كانتا دائمًا صفرًا. هذا يعني أن عداد البرنامج (PC) كان يحتاج فقط إلى 24 بتًا، مما يسمح بتخزينه مع علامات المعالج الثمانية بتات في مسجل واحد 32 بتًا. هذا يعني أنه عند تلقي مقاطعة، يمكن حفظ حالة الجهاز بالكامل في عملية واحدة، بينما لو كان عداد البرنامج (PC) قيمة كاملة 32 بت، لكان سيتطلب عمليات منفصلة لتخزين عداد البرنامج وعلامات الحالة. وقد أدى هذا القرار إلى خفض عبء المقاطعة إلى النصف. [ 31 ]

كان من بين التغييرات الأخرى، والتي تُعدّ من أهمها من حيث الأداء العملي في الواقع، تعديل مجموعة التعليمات للاستفادة من ذاكرة الوصول العشوائي الديناميكية (DRAM) بنظام الصفحات . يسمح نظام الصفحات، الذي طُرح مؤخرًا، بتنفيذ عمليات الوصول اللاحقة إلى الذاكرة بسرعة مضاعفة إذا كانت في نفس الموقع تقريبًا، أو "الصفحة"، في شريحة DRAM. لم يأخذ تصميم بيركلي نظام الصفحات في الاعتبار، وعامل جميع أجزاء الذاكرة على قدم المساواة. أضاف تصميم ARM تعليمات خاصة للوصول إلى الذاكرة تُشبه المتجهات، تُعرف باسم "دورات S"، والتي يمكن استخدامها لملء أو حفظ سجلات متعددة في صفحة واحدة باستخدام نظام الصفحات. ضاعف هذا من أداء الذاكرة عند إمكانية استخدامها، وكان ذا أهمية خاصة لأداء الرسومات. [ 32 ]

استخدمت تصميمات Berkeley RISC نوافذ التسجيل لتقليل عدد عمليات حفظ واستعادة التسجيل التي يتم إجراؤها في استدعاءات الإجراءات ؛ لم يعتمد تصميم ARM هذا.

قام ويلسون بتطوير مجموعة التعليمات، وكتب محاكاة للمعالج بلغة BBC BASIC ، والتي تم تشغيلها على جهاز BBC Micro مزود بمعالج 6502 ثانٍ . [ 33 ] [ 34 ] وقد أقنع هذا مهندسي شركة Acorn بأنهم يسيرون على الطريق الصحيح. تواصل ويلسون مع الرئيس التنفيذي لشركة Acorn، هيرمان هاوزر ، وطلب المزيد من الموارد. وافق هاوزر على طلبه، وشكّل فريقًا صغيرًا لتصميم المعالج الفعلي استنادًا إلى بنية مجموعة تعليمات ويلسون. [ 35 ] بدأ مشروع Acorn RISC Machine الرسمي في أكتوبر 1983.

ARM1

معالج ARM1 الثاني لجهاز BBC  Micro

اختارت شركة Acorn شركة VLSI Technology كشريكٍ لها في مجال تصنيع الرقائق، نظرًا لكونها مصدرًا لذاكرة القراءة فقط (ROM) والرقائق المخصصة لشركة Acorn. وقد تولت Acorn تصميم الرقاقة، بينما تولت VLSI تصميمها وإنتاجها. وقد عملت أولى عينات رقائق ARM بشكل سليم عند استلامها واختبارها لأول مرة في 26 أبريل 1985. [ 3 ] وكانت هذه النسخ، المعروفة باسم ARM1، تعمل بتردد 6  ميجاهرتز. [ 36 ]

كان أول استخدام لمعالج ARM كمعالج ثانٍ لجهاز BBC Micro، حيث ساهم في تطوير برامج محاكاة لإتمام تطوير رقائق الدعم (VIDC، IOC، MEMC)، وسرّع برنامج التصميم بمساعدة الحاسوب (CAD) المستخدم في تطوير ARM2. لاحقًا، أعاد ويلسون كتابة BBC BASIC بلغة التجميع ARM . وقد مكّنته المعرفة المتعمقة المكتسبة من تصميم مجموعة التعليمات من كتابة كود كثيف للغاية، مما جعل ARM BBC BASIC اختبارًا ممتازًا لأي محاكي ARM.

تم توفير أنظمة تقييم ARM التي تضم وحدات المعالجة المركزية ARM1، والتي تم توريدها كمعالجات ثانوية لأجهزة BBC Micro وMaster، ابتداءً من يوليو 1986 [ 37 ] تحت العلامة التجارية Acorn OEM Products للمطورين والباحثين. [ 38 ]

يتميز المعالج الثاني A500، وهو معالج ثانٍ إضافي قائم على ARM1 لجهاز BBC Micro و Master، بمجموعة شرائح دعم ARM (VIDC، IOC، MEMC)، وكان قادرًا على إنتاج مخرجات الفيديو [ 39 ] والعمل بشكل مستقل تقريبًا عن جهاز BBC Micro المضيف.

ARM2

أدت نتائج المحاكاة على لوحات ARM1 إلى طرح تصميم ARM2 في أواخر عام 1986 بتردد 8  ميجاهرتز، ثم النسخة المُحسّنة منه في أوائل عام 1987 بتردد يتراوح بين 10 و12  ميجاهرتز. [ د ] تمثل التغيير الجوهري في البنية الأساسية في إضافة مُضاعِف بوث ، حيث كان الضرب سابقًا يتطلب تنفيذه برمجيًا. [ 41 ] علاوة على ذلك، سمح وضع طلب المقاطعة السريعة الجديد، FIQ اختصارًا، باستبدال السجلات من 8 إلى 14 كجزء من المقاطعة نفسها. هذا يعني أن طلبات FIQ لم تعد بحاجة إلى حفظ سجلاتها، مما زاد من سرعة المقاطعات. [ 42 ]

كان أول استخدام لـ ARM2 في أجهزة التطوير الداخلية Acorn A500، [ 43 ] ونماذج الكمبيوتر الشخصي Acorn Archimedes A305 وA310 وA440، التي تم إطلاقها في 6 يونيو 1987.

وفقًا لاختبار Dhrystone ، كان أداء معالج ARM2 أسرع بسبع مرات تقريبًا من  نظام نموذجي يعمل بمعالج 68000 بتردد 7 ميجاهرتز، مثل Amiga أو Macintosh SE . وكان أسرع بمرتين من معالج Intel 80386 بتردد 16  ميجاهرتز، وبسرعة مماثلة تقريبًا لسرعة حاسوب VAX-11/784 فائق الصغر متعدد المعالجات. وكانت أنظمة Sun SPARC و MIPS R2000 القائمة على معمارية RISC هي الأنظمة الوحيدة التي تفوقت عليه . [ 44 ] علاوة على ذلك، ولأن المعالج المركزي صُمم للإدخال/الإخراج عالي السرعة، فقد استغنى عن العديد من رقائق الدعم الموجودة في هذه الأجهزة؛ ولا سيما أنه افتقر إلى أي وحدة تحكم مخصصة للوصول المباشر إلى الذاكرة (DMA)، والتي كانت شائعة في محطات العمل. كما تم تبسيط نظام الرسومات بناءً على نفس مجموعة الافتراضات الأساسية المتعلقة بالذاكرة والتوقيت. وكانت النتيجة تصميمًا مبسطًا بشكل كبير، يوفر أداءً يضاهي أداء محطات العمل باهظة الثمن، ولكن بسعر مماثل لأجهزة الكمبيوتر المكتبية الحديثة. [ 44 ]

تميز معالج ARM2 بناقل بيانات 32 بت ، ومساحة عناوين 26 بت ، و27 مسجلاً 32 بت ، منها 16 مسجلاً يمكن الوصول إليها في أي وقت (بما في ذلك الحاسوب الشخصي ). [ 45 ] احتوى معالج ARM2 على 30,000 ترانزستور فقط، [ 46 ] مقارنةً بمعالج موتورولا 68000 الأقدم بست سنوات والذي احتوى على حوالي 68,000 ترانزستور. ويعود جزء كبير من هذه البساطة إلى غياب الشفرة الدقيقة ، التي تمثل ما بين ربع إلى ثلث ترانزستورات معالج 68000، وغياب ذاكرة التخزين المؤقت (كما هو الحال في معظم وحدات المعالجة المركزية في ذلك الوقت) . وقد مكّنت هذه البساطة معالج ARM2 من استهلاك طاقة منخفض وتصميم حراري أبسط بفضل قلة عدد الترانزستورات التي تعمل بالطاقة. ومع ذلك، قدم معالج ARM2 أداءً أفضل من جهاز IBM PS/2 موديل 50 المعاصر له عام 1987 ، والذي استخدم في البداية معالج Intel 80286 ، موفرًا سرعة 1.8 مليون تعليمات في الثانية (MIPS) بتردد 10 ميجاهرتز، ثم لاحقًا في عام 1987، وصل إلى سرعة 2 مليون تعليمات في الثانية (MIPS) لجهاز PS/2 70، المزود بمعالج Intel 386 DX بتردد 16 ميجاهرتز. [ 47 ] [ 48 ]   

تم إنتاج معالج لاحق، ARM3، مزودًا بذاكرة تخزين مؤقتة سعتها 4 كيلوبايت، مما أدى إلى تحسين الأداء بشكل أكبر. [ 49 ] تم توسيع ناقل العناوين إلى 32  بت في معالج ARM6، ولكن كان لا يزال يتعين أن يقع رمز البرنامج ضمن أول 64 ميجابايت من الذاكرة في وضع التوافق مع 26 بت، وذلك بسبب البتات المحجوزة لأعلام الحالة. [ 50 ]

في عام 1988، أصبحت شركة سانيو ثاني مصدر عالمي لمعالج ARM2 ومجموعة الشرائح المرتبطة به بموجب اتفاقية مع شركة VLSI Technology. [ 51 ]

شركة Advanced RISC Machines المحدودة – ARM6

نظام قائم على المعالج الدقيق على شريحة
صورة لشريحة معالج ARM610

في أواخر ثمانينيات القرن العشرين، بدأت شركتا أبل كمبيوتر وفي إل إس آي تكنولوجي العمل مع شركة أكورن على إصدارات أحدث من معالج ARM. وفي عام ١٩٩٠، فصلت أكورن فريق التصميم لتأسيس شركة جديدة باسم Advanced RISC Machines Ltd.، [ ٥٢ ] [ ٥٣ ] [ ٥٤ ] والتي أصبحت فيما بعد شركة ARM Ltd. عندما طُرحت أسهم شركتها الأم، Arm Holdings plc، في بورصتي لندن وناسداك عام ١٩٩٨. [ ٥٥ ] وتطور هذا التعاون الجديد بين أبل وأرم لاحقًا إلى معالج ARM6، الذي أُطلق لأول مرة في أوائل عام ١٩٩٢. واستخدمت أبل معالج ARM610، المبني على معالج ARM6، كأساس لجهازها المساعد الرقمي الشخصي Apple Newton .

المرخص لهم الأوائل

في عام 1994، استخدمت شركة Acorn معالج ARM610 كوحدة المعالجة المركزية الرئيسية في حواسيب RiscPC . حصلت شركة DEC على ترخيص معمارية ARMv4 وأنتجت معالج StrongARM . [ 56 ] عند تردد 233 ميجاهرتز ، كان هذا المعالج يستهلك واطًا واحدًا فقط (تستهلك الإصدارات الأحدث طاقة أقل بكثير). نُقل هذا العمل لاحقًا إلى شركة Intel كجزء من تسوية دعوى قضائية، وانتهزت Intel الفرصة لتكملة خط إنتاجها i960 بمعالج StrongARM. طورت Intel لاحقًا تطبيقها الخاص عالي الأداء المسمى XScale ، والذي باعته لاحقًا لشركة Marvell . ظل عدد الترانزستورات في نواة ARM ثابتًا تقريبًا خلال هذه التغييرات؛ احتوى ARM2 على 30,000 ترانزستور، [ 57 ] بينما ارتفع عدد الترانزستورات في ARM6 إلى 35,000 فقط. [ 58 ]  

الحصة السوقية

في عام 2005، استخدمت حوالي 98% من الهواتف المحمولة المباعة معالج ARM واحدًا على الأقل. [ 59 ] وفي عام 2010، أفاد مصنّعو الرقائق الإلكترونية القائمة على معمارية ARM بشحن 6.1  مليار معالج ARM ، ما يمثل 95% من الهواتف الذكية ، و35% من أجهزة التلفزيون الرقمية وأجهزة الاستقبال الرقمية ، و10% من أجهزة الكمبيوتر المحمولة . وفي عام 2011، كانت معمارية ARM ذات 32 بت الأكثر استخدامًا في الأجهزة المحمولة والأكثر شيوعًا في الأنظمة المدمجة. [ 60 ] وفي عام 2013، بلغ إنتاجها 10 مليارات معالج [ 61 ] ، وتُستخدم رقائق ARM في حوالي 60% من الأجهزة المحمولة في العالم. [ 62 ]

الترخيص

صورة لشريحة معالج دقيق STM32 F103VGT6ARM Cortex-M3 مزود بذاكرة فلاش 1 ميجابايت من إنتاج شركة STMicroelectronics 

رخصة أساسية

تتمثل أعمال شركة Arm Holdings الرئيسية في بيع وحدات الملكية الفكرية (IP cores )، التي يستخدمها المرخص لهم لإنشاء وحدات تحكم دقيقة (MCUs) ووحدات معالجة مركزية (CPUs ) وأنظمة متكاملة على شريحة واحدة (SoCs ) تعتمد على هذه الوحدات. يقوم المصنّع الأصلي للتصميم بدمج وحدة ARM الأساسية مع أجزاء أخرى لإنتاج جهاز متكامل، عادةً ما يكون قابلاً للتصنيع في مصانع تصنيع أشباه الموصلات القائمة بتكلفة منخفضة مع الحفاظ على أداء عالٍ. يُعدّ معالج ARM7TDMI أنجح مثال على ذلك، حيث بيع منه مئات الملايين. وقد كانت شركة Atmel مركزًا رائدًا في تصميم الأنظمة المدمجة القائمة على معالج ARM7TDMI.

تتراوح معمارية ARM المستخدمة في الهواتف الذكية وأجهزة المساعد الرقمي الشخصي والأجهزة المحمولة الأخرى من ARMv5 إلى ARMv8-A .

في عام 2009، طرحت بعض الشركات المصنعة أجهزة كمبيوتر محمولة صغيرة تعتمد على معالجات معمارية ARM، في منافسة مباشرة مع أجهزة الكمبيوتر المحمولة الصغيرة التي تعتمد على معالجات Intel Atom . [ 63 ]

تقدم شركة Arm Holdings مجموعة متنوعة من شروط الترخيص، تختلف في التكلفة والمخرجات. وتوفر Arm Holdings لجميع المرخص لهم وصفًا متكاملًا للأجهزة الخاصة بنواة ARM، بالإضافة إلى مجموعة أدوات تطوير برمجيات كاملة ( مترجم ، مصحح أخطاء ، حزمة تطوير برمجيات )، وحق بيع رقائق السيليكون المصنعة التي تحتوي على وحدة المعالجة المركزية ARM.

تشمل حزم SoC التي تدمج تصميمات ARM الأساسية الأجيال الثلاثة الأولى من Nvidia Tegra، وعائلة Quatro من CSR plc، وNova وNovaThor من ST-Ericsson، ووحدة التحكم الدقيقة Precision32 من Silicon Labs، ومنتجات OMAP من Texas Instruments، ومنتجات Hummingbird و Exynos من Samsung ، وA4 و A5 و A5X من Apple ، و i.MX من NXP .

عادةً ما يهتم حاملو تراخيص تصميم أشباه الموصلات بدون مصانع (Fabless) ، الراغبون في دمج نواة ARM في تصميم رقائقهم الخاصة، بالحصول على نواة ملكية فكرية جاهزة للتصنيع وموثقة لأشباه الموصلات . لهؤلاء العملاء، تُقدم Arm Holdings وصفًا لقائمة توصيلات البوابات لنواة ARM المختارة، بالإضافة إلى نموذج محاكاة مُجرّد وبرامج اختبار للمساعدة في دمج التصميم والتحقق منه. أما العملاء الأكثر طموحًا، بما في ذلك مُصنّعو الأجهزة المتكاملة (IDM) ومُشغّلو مصانع أشباه الموصلات، فيختارون الحصول على الملكية الفكرية للمعالج في شكل RTL قابل للتصنيع ( Verilog ). بفضل RTL القابل للتصنيع، يتمتع العميل بالقدرة على إجراء تحسينات وتوسيعات على مستوى البنية. وهذا يسمح للمصمم بتحقيق أهداف تصميمية غير تقليدية لا يُمكن تحقيقها باستخدام قائمة توصيلات غير مُعدّلة ( سرعة ساعة عالية ، استهلاك طاقة منخفض للغاية، توسيعات لمجموعة التعليمات، إلخ). مع أن Arm Holdings لا تمنح حامل الترخيص الحق في إعادة بيع بنية ARM نفسها، إلا أنه يُمكنه بيع المنتجات المُصنّعة بحرية، مثل أجهزة الرقائق ولوحات التقييم والأنظمة الكاملة. قد تُمثل مصانع أشباه الموصلات التجارية حالة خاصة. لا يُسمح لهم فقط ببيع رقائق السيليكون الجاهزة التي تحتوي على نوى ARM، بل إنهم يمتلكون عمومًا الحق في إعادة تصنيع نوى ARM لعملاء آخرين.

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

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

تشمل الشركات التي طورت رقائق ذات نوى مصممة بواسطة Arm شركة Annapurna Labs التابعة لشركة Amazon.com ، [ 64 ] وAnalog Devices و Apple و AppliedMicro (الآن: MACOM Technology Solutions [ 65 ] ) و Atmel و Broadcom و Cavium و Cypress Semiconductor و Freescale Semiconductor (الآن NXP Semiconductors ) و Huawei و Intel و Maxim Integrated و Nvidia و NXP و Qualcomm و Renesas و Samsung Electronics و ST Microelectronics و Texas Instruments و Xilinx .

تم تطويره باستخدام ترخيص تقنية ARM Cortex

في فبراير 2016، أعلنت شركة ARM عن ترخيص "Built on ARM Cortex Technology" (المُختصر غالبًا إلى ترخيص "Built on Cortex" (BoC)). يُتيح هذا الترخيص للشركات التعاون مع ARM وإجراء تعديلات على تصاميم ARM Cortex، دون مشاركة هذه التعديلات مع شركات أخرى. كما تتمتع هذه التصاميم شبه المُخصصة بحرية العلامة التجارية، مثل Kryo 280 .

تشمل الشركات الحاصلة حاليًا على ترخيص تقنية Built on ARM Cortex شركة كوالكوم . [ 66 ]

رخصة معمارية

يمكن للشركات أيضًا الحصول على ترخيص معمارية ARM لتصميم نوى المعالجات الخاصة بها باستخدام مجموعات تعليمات ARM. يجب أن تتوافق هذه النوى تمامًا مع معمارية ARM. ومن بين الشركات التي صممت نوى تُطبّق معمارية ARM: Apple، وAppliedMicro (التي تُعرف الآن باسم Ampere Computing )، وBroadcom، وCavium (التي تُعرف الآن باسم Marvell)، و Digital Equipment Corporation ، وIntel، وNvidia، وQualcomm، وSamsung Electronics، و Fujitsu ، وNUVIA Inc. (التي استحوذت عليها Qualcomm في عام 2021).

الوصول المرن من ARM

أعلنت شركة ARM في 16 يوليو 2019 عن خدمة ARM Flexible Access. تتيح هذه الخدمة الوصول غير المحدود إلى الملكية الفكرية لشركة ARM المضمنة لأغراض التطوير. وتُفرض رسوم ترخيص لكل منتج بمجرد وصول العميل إلى مرحلة تصنيع الرقاقات أو مرحلة النماذج الأولية. [ 67 ] [ 68 ]

يشمل برنامج الوصول المرن من ARM نسبة 75% من أحدث حقوق الملكية الفكرية لشركة ARM خلال العامين الماضيين. اعتبارًا من أكتوبر 2019:

ميكروتيك RB260GS r2: STM32 F107RBT6
  • المعالجات المركزية: Cortex-A5 ، Cortex-A7 ، Cortex-A32 ، Cortex-A34 ، Cortex-A35 ، Cortex-A53 ، Cortex-R5 ، Cortex-R8 ، Cortex-R52 ، Cortex-M0 ، Cortex-M0+ ، Cortex-M3 ، Cortex-M4 ، Cortex-M7 ، Cortex-M23 ، Cortex-M33
  • وحدات معالجة الرسومات: Mali-G52 و Mali-G31 . تتضمن مجموعات تطوير برامج تشغيل Mali (DDK).
  • الربط البيني: CoreLink NIC-400، CoreLink NIC-450، CoreLink CCI-400، CoreLink CCI-500، CoreLink CCI-550، ADB-400 AMBA، XHB-400 AXI-AHB
  • وحدات التحكم بالنظام: CoreLink GIC-400، CoreLink GIC-500، PL192 VIC، BP141 TrustZone Memory Wrapper، CoreLink TZC-400، CoreLink L2C-310، CoreLink MMU-500، BP140 Memory Interface
  • عنوان IP الأمني: CryptoCell-312، CryptoCell-712، مولد الأرقام العشوائية الحقيقية TrustZone
  • وحدات التحكم الطرفية: PL011 UART، PL022 SPI، PL031 RTC
  • التصحيح والتتبع: CoreSight SoC-400، CoreSight SDC-600، CoreSight STM-500، CoreSight System Trace Macrocell، CoreSight Trace Memory Controller
  • مجموعات التصميم: Corstone-101، Corstone-201
  • الملكية الفكرية المادية: Artisan PIK لمعالج Cortex-M33 من TSMC 22ULL، بما في ذلك مُجمِّعات الذاكرة، ومكتبات المنطق، ومنافذ الإدخال/الإخراج للأغراض العامة، والوثائق.
  • الأدوات والمواد: أدوات الملكية الفكرية من سقراط، برنامج تصميم ARM، نماذج الأنظمة الافتراضية
  • الدعم: الدعم الفني القياسي لـ ARM، والتدريب عبر الإنترنت لـ ARM، وتحديثات الصيانة، ورصيد للتدريب في الموقع ومراجعات التصميم

النوى

بنيانعرض البت الأساسيالنوىحساب تعريفيالمرجع.
شركة آرم المحدودةطرف ثالث
ARMv1
ARM1
كلاسيكي
ARMv2
32
ARM2 ، ARM250، ARM3Amber ، STORM Open Soft Core [ 69 ]
كلاسيكي
ARMv3
32
ARM6 ، ARM7
كلاسيكي
ARMv4
32
ARM8StrongARM ، FA526، ZAP معالج مفتوح المصدر
كلاسيكي
ARMv4T
32
ARM7TDMI ، ARM9TDMI ، SecurCore SC100
كلاسيكي
ARMv5TE
32
ARM7EJ ، ARM9E ، ARM10EXScale ، FA626TE، فيروسيون، PJ1/موهوك
كلاسيكي
ARMv6
32
ARM11
كلاسيكي
ARMv6-M
32
ARM Cortex-M0 ، ARM Cortex-M0+ ، ARM Cortex-M1 ، SecurCore SC000
ARMv7-M
32
ARM Cortex-M3 ، SecurCore SC300معالج الحركة المساعد Apple M7
وحدة تحكم دقيقة
ARMv7E-M
32
ARM Cortex-M4 ، ARM Cortex-M7
وحدة تحكم دقيقة
ARMv8-M
32
ARM Cortex-M23 ، [ 71 ] ARM Cortex-M33 [ 72 ]
وحدة تحكم دقيقة
ARMv8.1-M
32
ARM Cortex-M55 ، ARM Cortex-M85
وحدة تحكم دقيقة
ARMv7-R
32
ARM Cortex-R4 ، ARM Cortex-R5 ، ARM Cortex-R7 ، ARM Cortex-R8
ARMv8-R
32
ARM Cortex-R52
في الوقت الحالى
64
ARM Cortex-R82
في الوقت الحالى
ARMv7-A
32
ARM Cortex-A5 ، ARM Cortex-A7 ، ARM Cortex-A8 ، ARM Cortex-A9 ، ARM Cortex-A12 ، ARM Cortex-A15 ، ARM Cortex-A17كوالكوم سكوربيون / كرايت ، بي جيه 4 / شيفا، أبل سويفت ( A6 ، A6X )
ARMv8-A
32
ARM Cortex-A32 [ 78 ]
طلب
64 /32
ARM Cortex-A35 ، [ 79 ] ARM Cortex-A53 ، ARM Cortex-A57 ، [ 80 ] ARM Cortex-A72 ، [ 81 ] ARM Cortex-A73 [ 82 ]X-Gene ، Nvidia Denver 1/2 ، Cavium ThunderX ، AMD K12 ، Apple Cyclone ( A7 )/Typhoon ( A8 ، A8X )/Twister ( A9 ، A9X )/Hurricane+Zephyr ( A10 ، A10XQualcomm Kryo ، Samsung M1/M2 ("Mongoose") /M3 ("Meerkat")
طلب
ARM Cortex-A34 [ 88 ]
طلب
ARMv8.1-A
64/32
كافيوم ثاندر إكس 2
طلب
ARMv8.2-A
64/32
ARM Cortex-A55 ، [ 90 ] ARM Cortex-A75 ، [ 91 ] ARM Cortex-A76 ، [ 92 ] ARM Cortex-A77 ، ARM Cortex-A78 ، ARM Cortex-X1 ، ARM Neoverse N1Nvidia Carmel ، Samsung M4 ("Cheetah")، Fujitsu A64FX (ARMv8 SVE 512-bit)
طلب
64
ARM Cortex-A65 ، و ARM Neoverse E1 مع تعدد الخيوط المتزامن (SMT)، و ARM Cortex-A65AE [ 96 ] (يحتوي أيضًا على سبيل المثال على ARMv8.4 Dot Product؛ مصمم للمهام الحرجة للسلامة مثل أنظمة مساعدة السائق المتقدمة (ADAS) )أبل مونسون + ميسترال ( A11 ) (سبتمبر 2017)
طلب
ARMv8.3-A
64/32
طلب
64
Apple Vortex+Tempest ( A12 , A12X , A12Z ), Marvell ThunderX3 (v8.3+) [ 97 ]
طلب
ARMv8.4-A
64/32
طلب
64
ARM Neoverse V1Apple Lightning+Thunder ( A13 )، Apple Firestorm+Icestorm ( A14 ، M1 )
طلب
ARMv8.5-A
64/32
طلب
64
طلب
ARMv8.6-A
64
أبل أفالانش + بليزارد ( A15 ، M2 )، أبل إيفرست + سوثوث ( A16[ 98 ] أبل كول ( A17 )، أبل إيبيزا/لوبوس/بالما ( M3 )
طلب
ARMv8.7-A
64
طلب
ARMv8.8-A
64
طلب
ARMv8.9-A
64
طلب
ARMv9.0-A
32/64
ARM Cortex-A510 (A510 r1 / 2024 Refresh) [ 100 ]
طلب
64
ARM Cortex-A510 ، ARM Cortex-A710 ، ARM Cortex-A715 ، ARM Cortex-X2 ، ARM Cortex-X3 ، ARM Neoverse E2 ، ARM Neoverse N2 ، ARM Neoverse V2
طلب
ARMv9.1-A
64
طلب
ARMv9.2-A
64
ARM Cortex-A520 ، ARM Cortex-A720 ، ARM Cortex-X4 ، ARM Neoverse V3 ، [ 103 ] ARM Cortex-X925 ، [ 104 ] ARM Cortex-A320 [ 105 ]أبل دونان / برافا تشوب / برافا ( أبل إم 4[ 106 ] أبل توباي / تاهيتي ( A18 )
طلب
ARMv9.3-A
64
سيتم الإعلان عنه لاحقاً
طلب
ARMv9.4-A
64
سيتم الإعلان عنه لاحقاً
طلب
ARMv9.5-A
64
سيتم الإعلان عنه لاحقاً
طلب
ARMv9.6-A
64
سيتم الإعلان عنه لاحقاً
طلب
ARMv9.7-A
64
سيتم الإعلان عنه لاحقاً
طلب
  1. 1 2 على الرغم من أن معظم مسارات البيانات وسجلات وحدة المعالجة المركزية في معالجات ARM المبكرة كانت 32 بت، إلا أن الذاكرة القابلة للعنونة كانت محدودة بـ 26 بت ؛ مع استخدام البتات العليا، إذن، لأعلام الحالة في سجل عداد البرنامج.
  2. تضمنت معمارية ARMv3 وضع توافق لدعم عناوين 26 بت الخاصة بالإصدارات السابقة من هذه المعمارية. هذا الوضع اختياري في معمارية ARMv4، وتم حذفه بالكامل في معمارية ARMv5 .

توفر شركة Arm قائمة بالموردين الذين يستخدمون معالجات ARM في تصميماتهم (منتجات قياسية خاصة بالتطبيقات (ASSP)، ومعالجات دقيقة، ووحدات تحكم دقيقة). [ 112 ]

أمثلة على تطبيقات معالجات ARM

جهاز Tronsmart MK908، وهو جهاز كمبيوتر صغير يعمل بنظام أندرويد رباعي النواة بمعالج Rockchip ، مع بطاقة microSD بجانبه للمقارنة من حيث الحجم

تُستخدم معالجات ARM في العديد من المنتجات، وخاصةً أجهزة المساعد الرقمي الشخصي والهواتف الذكية . ومن الأمثلة على ذلك في مجال الحوسبة : الجيل الأول من أجهزة Surface و Surface 2 و Pocket PC من مايكروسوفت (بعد عام 2002وأجهزة iPad من آبل ، وأجهزة Eee Pad Transformer اللوحية من أسوس ، والعديد من أجهزة Chromebook المحمولة. وتشمل الأمثلة الأخرى هواتف iPhone الذكية وأجهزة iPod المحمولة لتشغيل الوسائط ، وكاميرات Canon PowerShot الرقمية ، وجهاز Nintendo Switch الهجين، ومعالج Wii الأمني، وأجهزة ألعاب 3DS المحمولة ، وأنظمة الملاحة TomTom الصوتية .

في عام 2005، شاركت شركة Arm في تطوير حاسوب جامعة مانشستر SpiNNaker ، الذي استخدم نوى ARM لمحاكاة الدماغ البشري . [ 113 ]

تُستخدم رقائق ARM أيضًا في Raspberry Pi و BeagleBoard و BeagleBone و PandaBoard وغيرها من أجهزة الكمبيوتر أحادية اللوحة ، لأنها صغيرة جدًا وغير مكلفة وتستهلك القليل جدًا من الطاقة.

بنية 32 بت

تم استخدام معالج ARMv7 لتشغيل الإصدارات القديمة من أجهزة الكمبيوتر أحادية اللوحة الشهيرة Raspberry Pi مثل Raspberry Pi 2 من عام 2015.
كما يتم استخدام معالج ARMv7 لتشغيل عائلة أجهزة الكمبيوتر أحادية اللوحة CuBox .

كانت بنية ARM ذات 32 بت ( ARM32 )، مثل ARMv7-A (التي تنفذ AArch32؛ انظر القسم الخاص بـ Armv8-A لمزيد من المعلومات عنها)، هي البنية الأكثر استخدامًا على نطاق واسع في الأجهزة المحمولة اعتبارًا من عام 2011.[ 60 ]

منذ عام 1995، شكلت إصدارات مختلفة من دليل مرجع بنية ARM (انظر قسم  الروابط الخارجية ) المصدر الرئيسي للتوثيق الخاص ببنية معالج ARM ومجموعة تعليماته، حيث ميزت بين الواجهات التي يجب على جميع معالجات ARM دعمها (مثل دلالات التعليمات) وتفاصيل التنفيذ التي قد تختلف. وقد تطورت البنية بمرور الوقت، ويحدد الإصدار السابع منها، ARMv7، ثلاثة "ملفات تعريف" للبنية.

  • ملف تعريف A، وهو ملف تعريف "التطبيق"، يتم تنفيذه بواسطة أنوية 32 بت في سلسلة Cortex-A وبعض الأنوية غير ARM.
  • ملف تعريف R، وهو ملف تعريف "الوقت الحقيقي"، يتم تنفيذه بواسطة النوى في سلسلة Cortex-R
  • ملف تعريف M، وهو ملف تعريف "وحدة التحكم الدقيقة"، يتم تنفيذه بواسطة معظم النوى في سلسلة Cortex-M

على الرغم من أن ملفات تعريف البنية تم تعريفها أولاً لـ ARMv7، إلا أن ARM قامت لاحقًا بتعريف بنية ARMv6-M (المستخدمة بواسطة Cortex M0 / M0+ / M1 ) كمجموعة فرعية من ملف تعريف ARMv7-M مع عدد أقل من التعليمات.

إصدارات معمارية

ARMv1

العنونة ذات 26 بت - أصبحت قديمة اعتبارًا من يونيو 2000. [ 114 ]

ARMv2

تعليمات الضرب والضرب والتجميع؛ دعم المعالج المساعد - جميع المتغيرات أصبحت قديمة اعتبارًا من يونيو 2000. [ 114 ]

ARMv2a

تعليمات التحميل والتخزين الذرية.

ARMv3

عنونة 32 بت [ 114 ] - جميع المتغيرات أصبحت قديمة اعتبارًا من يوليو 2005. [ 115 ]

ARMv3G
لا يدعم عناوين 26 بت. [ 114 ]
ARMv3M
الضرب الطويل والموجه. [ 114 ]
ARMv4

تعليمات تحميل وتخزين نصف الكلمة؛ تعليمات تحميل البايت ونصف الكلمة مع تمديد الإشارة؛ تمت إزالة دعم العنونة 26 بت [ 114 ]

ARMv4xM
ARMv4، ولكن بدون الضرب الطويل [ 114 ] - قديم اعتبارًا من يوليو 2005 [ 115 ]
ARMv4T
ARMv4 بالإضافة إلى الإصدار 1 من مجموعة تعليمات Thumb [ 114 ]
ARMv4TxM
ARMv4T، ولكن بدون الضرب الطويل [ 114 ] - قديم اعتبارًا من يوليو 2005 [ 115 ]
ARMv5

تعليمات عد الأصفار البادئة [ 114 ] - أصبحت قديمة اعتبارًا من يوليو 2005 [ 115 ]

ARMv5xM
ARMv5، ولكن بدون الضرب الطويل [ 114 ] - قديم اعتبارًا من يوليو 2005 [ 115 ]
ARMv5T
ARMv5 بالإضافة إلى الإصدار 2 من Thumb [ 114 ]
ARMv5TxM
ARMv5T، ولكن بدون الضرب الطويل [ 114 ] - قديم اعتبارًا من يوليو 2005 [ 115 ]
ARMv5TE
ARMv5T بالإضافة إلى تعليمات DSP المحسنة [ 114 ]
ARMv5TExP
ARMv5TE، ولكن بدون LDRD، MCRR، MRRC، PLD، STRDوتعليمات DSP المحسنة [ 114 ]
ARMv5TEJ
ARMv5TE بالإضافة إلى Jazelle [ 115 ]
ARMv6

ARMv5TEJ كامل؛ تعليمات عكس البايت؛ تعليمات التحميل والتخزين ذات الوصول الحصري؛ تعليمات تمديد الإشارة وتمديد الصفر للبايت ونصف الكلمة؛ تعليمات وسائط SIMD؛ دعم الوصول غير المحاذي [ 115 ]

ARMv6K
تعليمات ARMv6 بالإضافة إلى دعم أنظمة المعالجات المتعددة [ 116 ]
ARMv6T2
مجموعة تعليمات ARMv6 بالإضافة إلى Thumb-2 [ 116 ]
ARMv7
ARMv7-A، ARMv7-R
قسمة اختيارية موقعة وغير موقعة؛ تعليمات حاجز الذاكرة والتزامن؛ تعليمات تلميح التحميل المسبق [ 116 ]
ARMv7-M
الإبهام-2 فقط [ 117 ]
ARMv8
يقدم حالتين للتنفيذ ، AArch32 و AArch64 ، الأولى منها تدعم مجموعة تعليمات ARM ذات 32 بت، والتي تسمى A32، ومجموعة تعليمات Thumb-2، والتي تسمى T32، والثانية منها تدعم مجموعة تعليمات جديدة مع 32 سجلًا من 64 بت، وتسمى A64.
ARMv8-A AArch32، ARMv8-R AArch32
تعليمات التحميل والاستحواذ والتخزين والإفراج، تعليمات التشفير، امتدادات تعليمات حاجز البيانات، تعليمات إرسال الحدث محليًا [ 118 ]
ARMv8-M
الإبهام المتغير-2 فقط [ 119 ]

أوضاع وحدة المعالجة المركزية

باستثناء ملف تعريف M، تحدد بنية ARM ذات 32 بت عدة أوضاع لوحدة المعالجة المركزية، وذلك تبعًا لميزات البنية المُطبقة. في أي لحظة، يمكن أن تكون وحدة المعالجة المركزية في وضع واحد فقط، ولكن يمكنها التبديل بين الأوضاع نتيجة لأحداث خارجية (مقاطعات) أو برمجيًا. [ 120 ]

  • وضع المستخدم: الوضع الوحيد غير المخصص للامتيازات.
  • وضع FIQ: وضع مميز يتم الدخول إليه كلما قبل المعالج طلب مقاطعة سريعة .
  • وضع IRQ: وضع مميز يتم الدخول إليه كلما قبل المعالج مقاطعة.
  • وضع المشرف (svc): وضع مميز يتم الدخول إليه كلما تمت إعادة ضبط وحدة المعالجة المركزية أو عند تنفيذ تعليمات SVC.
  • وضع الإجهاض: وضع مميز يتم الدخول إليه كلما حدث إجهاض جلب مسبق أو استثناء إجهاض البيانات.
  • الوضع غير المحدد: وضع مميز يتم الدخول إليه كلما حدث استثناء تعليمي غير محدد.
  • وضع النظام (ARMv4 وما فوق): الوضع المميز الوحيد الذي لا يتم الدخول إليه عن طريق استثناء. لا يمكن الدخول إليه إلا بتنفيذ تعليمة تكتب صراحةً إلى بتات الوضع في سجل حالة البرنامج الحالي (CPSR) من وضع مميز آخر (وليس من وضع المستخدم).
  • وضع المراقبة (ARMv6 و ARMv7 Security Extensions، ARMv8 EL3): تم تقديم وضع المراقبة لدعم امتداد TrustZone في أنوية ARM.
  • وضع المحاكاة الافتراضية (امتدادات المحاكاة الافتراضية ARMv7، EL2 ARMv8): وضع مُشرف افتراضي يدعم متطلبات المحاكاة الافتراضية لـ Popek و Goldberg للتشغيل غير الآمن لوحدة المعالجة المركزية. [ 121 ] [ 122 ]
  • وضع الخيوط (ARMv6-M، ARMv7-M، ARMv8-M): وضع يمكن تحديده إما كوضع ذي صلاحيات أو وضع بدون صلاحيات. كما يمكن تحديد ما إذا كان سيتم استخدام مؤشر المكدس الرئيسي (MSP) أو مؤشر مكدس العملية (PSP) في سجل التحكم (CONTROL) مع إمكانية الوصول ذي الصلاحيات. صُمم هذا الوضع لمهام المستخدم في بيئة نظام التشغيل في الوقت الحقيقي (RTOS)، ولكنه يُستخدم عادةً في الأنظمة الأساسية (bare-metal) للحلقات الفائقة.
  • وضع المعالج (ARMv6-M، ARMv7-M، ARMv8-M): وضع مخصص لمعالجة الاستثناءات (باستثناء إعادة الضبط التي تتم معالجتها في وضع الخيوط). يستخدم وضع المعالج دائمًا بروتوكول MSP ويعمل بمستوى امتيازات.

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

تم تصميم تطبيق ARM الأصلي بشكل ثابت بدون شفرة دقيقة ، مثل معالج 6502 ذي 8 بت الأبسط بكثير المستخدم في أجهزة الكمبيوتر الصغيرة Acorn السابقة.

تتضمن بنية ARM ذات 32 بت (وبنية 64 بت في الغالب) ميزات RISC التالية:

ولتعويض التصميم الأبسط، مقارنةً بمعالجات مثل Intel 80286 و Motorola 68020 ، تم استخدام بعض ميزات التصميم الإضافية:

تعليمات الحساب

تتضمن ARM عمليات حسابية للأعداد الصحيحة للجمع والطرح والضرب؛ كما تدعم بعض إصدارات البنية عمليات القسمة.

تدعم معالجات ARM عمليات الضرب 32 بت × 32 بت، إما بنتيجة 32 بت أو 64 بت، مع العلم أن أنوية Cortex-M0 / M0+ / M1 لا تدعم نتائج 64 بت. [ 125 ] كما تدعم بعض أنوية ARM عمليات الضرب 16 بت × 16 بت و32 بت × 16 بت.

لا تتضمن بنية ARM التالية سوى تعليمات القسمة:

  • تتضمن معمارية Armv7-M و Armv7E-M دائمًا تعليمات القسمة. [ 126 ]
  • تتضمن بنية Armv7-R دائمًا تعليمات القسمة في مجموعة تعليمات Thumb، ولكنها اختيارية في مجموعة تعليمات 32 بت الخاصة بها. [ 127 ]
  • تتضمن بنية Armv7-A اختيارياً تعليمات القسمة. قد لا يتم تنفيذ هذه التعليمات، أو قد يتم تنفيذها فقط في مجموعة تعليمات Thumb، أو في كل من مجموعتي تعليمات Thumb وARM، أو قد يتم تنفيذها إذا تم تضمين ملحقات المحاكاة الافتراضية. [ 127 ]

السجلات

السجلات عبر أوضاع وحدة المعالجة المركزية
usrsysخدمةحولوirqfiq
R0
R1
R2
R3
R4
R5
R6
R7
R8R8_fiq
R9R9_fiq
R10R10_fiq
R11R11_fiq
R12R12_fiq
R13R13_svcR13_abtR13_undR13_irqR13_fiq
R14R14_svcR14_abtR14_undR14_irqR14_fiq
R15
CPSR
SPSR_svcSPSR_abtSPSR_undSPSR_irqSPSR_fiq

السجلات من R0 إلى R7 هي نفسها في جميع أوضاع وحدة المعالجة المركزية؛ فهي لا يتم تجميعها في بنوك.

تتشابه سجلات R8 إلى R12 في جميع أوضاع وحدة المعالجة المركزية باستثناء وضع FIQ، حيث يمتلك هذا الوضع سجلات R8 إلى R12 خاصة به.

يتم تخزين السجلين R13 وR14 في جميع أوضاع وحدة المعالجة المركزية ذات الامتيازات باستثناء وضع النظام. أي أن لكل وضع يمكن الدخول إليه نتيجةً لاستثناء ما سجلين R13 وR14 خاصين به. يحتوي هذان السجلان عادةً على مؤشر المكدس وعنوان الإرجاع من استدعاءات الدوال، على التوالي.

الأسماء المستعارة:

يحتوي سجل حالة البرنامج الحالي (CPSR) على 32 بت التالية  . [ 128 ]

  • M (البتات 0-4) هي بتات وضع المعالج.
  • T (البت 5) هو بت حالة الإبهام.
  • F (البت 6) هو بت تعطيل FIQ.
  • I (البت 7) هو بت تعطيل IRQ.
  • A (البت 8) هو بت تعطيل إجهاض البيانات غير الدقيقة.
  • E (البت 9) هو بت ترتيب البايتات للبيانات.
  • IT (البتات 10-15 و25-26) هي بتات حالة if-then.
  • GE (البتات 16-19) هي بتات أكبر من أو تساوي.
  • DNM (البتات 20-23) هي بتات عدم التعديل.
  • J (البت 24) هو بت حالة جافا.
  • Q (البت 27) هو بت تجاوز السعة الثابت.
  • V (البت 28) هو بت الفائض.
  • C (البت 29) هو بت الحمل/الاستعارة/التمديد.
  • Z (البت 30) هو بت الصفر.
  • N (البت 31) هو بت السالب/أصغر من.

التنفيذ المشروط

تحتوي جميع تعليمات ARM تقريبًا على ميزة التنفيذ المشروط المعروفة باسم التنبؤ ، والتي تُنفذ باستخدام مُحدد رمز شرطي مكون من 4 بتات (الشرط). وللسماح بالتنفيذ غير المشروط، يؤدي أحد الرموز المكونة من 4 بتات إلى تنفيذ التعليمات دائمًا. أما معظم بنى المعالجات المركزية الأخرى، فلا تحتوي على رموز شرطية إلا في تعليمات التفرع. [ 129 ]

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

تُعدّ خوارزمية الطرح الإقليدية لحساب القاسم المشترك الأكبر مثالًا جيدًا على التنفيذ المشروط . في لغة البرمجة C ، يمكن كتابة الخوارزمية على النحو التالي:

int gcd ( int a , int b ) { while ( a != b ) // ندخل الحلقة عندما يكون a < b أو a > b، ولكن ليس عندما يكون a == b if ( a > b ) // عندما يكون a > b نقوم بهذا a -= b ; else // عندما يكون a < b نقوم بذلك (لا حاجة إلى "if (a < b)" لأن a != b يتم التحقق منه في شرط while) b -= a ; return a ; }

يمكن إعادة كتابة نفس الخوارزمية بطريقة أقرب إلى تعليمات ARM المستهدفة على النحو التالي:

حلقة تكرارية : // قارن بين a و b GT = a > b ; LT = a < b ; NE = a != b ;// تنفيذ العمليات بناءً على نتائج العلامات إذا ( أكبر من ) أ -= ب ؛ // الطرح *فقط* إذا كانت القيمة أكبر من إذا ( أصغر من ) ب -= أ ؛ // ​​الطرح *فقط* إذا كانت القيمة أصغر من إذا ( لا يساوي ) انتقل إلى الحلقة ؛ // التكرار *فقط* إذا كانت القيم المُقارنة غير متساوية إرجاع أ ؛

وتمت برمجتها بلغة التجميع على النحو التالي:

; قم بتعيين a للمسجل r0، و b للمسجل r1. حلقة: CMP r0 , r1 ; اضبط الشرط "NE" إذا كان (a ≠ b)، ; "GT" إذا كان (a > b)، ; أو "LT" إذا كان (a < b) SUBGT r0 , r0 , r1 ; إذا كان "GT" (أكبر من)، فإن a = a − b SUBLT r1 , r1 , r0 ; إذا كان "LT" (أصغر من)، فإن b = b − a BNE loop ; إذا كان "NE" (لا يساوي)، فقم بالتكرار B lr ; إرجاع

وهذا يتجنب التفرعات حول عبارات " thenو" else. إذا كانت قيمتا r0و r1متساويتين، فلن يتم تنفيذ أي من SUBالتعليمات، مما يلغي الحاجة إلى فرع شرطي لتنفيذ الفحص whileفي بداية الحلقة، على سبيل المثال لو SUBLEتم استخدام (أقل من أو يساوي).

إحدى الطرق التي يوفر بها رمز Thumb ترميزًا أكثر كثافة هي إزالة محدد الأربع بت من التعليمات غير المتفرعة.

ميزات أخرى

ومن الميزات الأخرى لمجموعة التعليمات القدرة على دمج عمليات الإزاحة والتدوير في تعليمات معالجة البيانات (الحسابية والمنطقية ونقل السجلات)، بحيث يكون، على سبيل المثال، البيان في لغة C :

a += ( j << 2 );

يمكن عرضها كتعليمات من كلمة واحدة ودورة واحدة: [ 130 ]

أضف را ، را ، آر جيه ، إل إس إل #2

ينتج عن ذلك أن يكون برنامج ARM النموذجي أكثر كثافة من المتوقع مع عدد أقل من عمليات الوصول إلى الذاكرة؛ وبالتالي يتم استخدام خط الأنابيب بشكل أكثر كفاءة.

يحتوي معالج ARM أيضًا على ميزات نادرة في بنى RISC الأخرى، مثل العنونة النسبية لعداد البرنامج (في الواقع، في معالج ARM ذي 32 بت [ 1 يعد عداد البرنامج أحد سجلاته الـ 16) وأنماط العنونة قبل وبعد الزيادة. 

لقد ازدادت مجموعة تعليمات ARM بمرور الوقت. على سبيل المثال، لا تحتوي بعض معالجات ARM المبكرة (قبل ARM7TDMI) على تعليمات لتخزين كمية مكونة من بايتين.

خطوط الأنابيب وقضايا التنفيذ الأخرى

تعتمد معالجات ARM7 والإصدارات الأقدم على بنية خط أنابيب ثلاثية المراحل ؛ وهي: جلب البيانات، وفك التشفير، والتنفيذ. أما التصاميم ذات الأداء العالي، مثل ARM9، فتتميز ببنية خط أنابيب أعمق: إذ يحتوي معالج Cortex-A8 على ثلاثة عشر مرحلة. وتشمل التغييرات الإضافية في التنفيذ لتحسين الأداء استخدام جامع أسرع ومنطق تنبؤ تفرع أكثر شمولاً . فعلى سبيل المثال، كان الفرق بين معالجي ARM7DI وARM7DMI هو تحسين المضاعف؛ ومن هنا جاءت إضافة الحرف "M".

المعالجات المساعدة

توفر بنية ARM (قبل Armv8) طريقة غير تدخلية لتوسيع مجموعة التعليمات باستخدام "المعالجات المساعدة" التي يمكن الوصول إليها باستخدام تعليمات مثل MCR وMRC وMRRC وMCRR وما شابهها. يُقسّم حيز المعالجات المساعدة منطقيًا إلى 16  معالجًا مساعدًا مرقمة من 0 إلى 15،  مع تخصيص المعالج المساعد رقم 15 (cp15) لبعض وظائف التحكم الأساسية مثل إدارة الذاكرة المؤقتة وعمليات وحدة إدارة الذاكرة (MMU) في المعالجات التي تحتوي عليها.

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

في حالات أخرى، يكتفي مصممو الرقائق بدمج المكونات المادية باستخدام آلية المعالج المساعد. على سبيل المثال، قد يكون محرك معالجة الصور عبارة عن نواة ARM7TDMI صغيرة مدمجة مع معالج مساعد ذي عمليات متخصصة لدعم مجموعة محددة من عمليات تحويل ترميز HDTV.

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

تتضمن جميع معالجات ARM الحديثة إمكانيات تصحيح الأخطاء المادية، مما يسمح لمصححات الأخطاء البرمجية بتنفيذ عمليات مثل إيقاف البرنامج، والتنفيذ خطوة بخطوة، ووضع نقاط توقف في التعليمات البرمجية بدءًا من إعادة التشغيل. تُبنى هذه الإمكانيات باستخدام دعم JTAG ، مع أن بعض النوى الأحدث تدعم اختياريًا بروتوكول "SWD" ثنائي الأسلاك الخاص بـ ARM. في نوى ARM7TDMI، يرمز الحرف "D" إلى دعم تصحيح أخطاء JTAG، بينما يرمز الحرف "I" إلى وجود وحدة تصحيح أخطاء "EmbeddedICE". بالنسبة لأجيال نوى ARM7 وARM9، كان استخدام EmbeddedICE عبر JTAG معيارًا فعليًا لتصحيح الأخطاء، وإن لم يكن مضمونًا من الناحية المعمارية.

تُحدد بنية ARMv7 أدوات تصحيح الأخطاء الأساسية على مستوى البنية. تشمل هذه الأدوات نقاط التوقف، ونقاط المراقبة، وتنفيذ التعليمات في "وضع التصحيح"؛ وكانت أدوات مماثلة متوفرة أيضًا في EmbeddedICE. يدعم النظام كلاً من وضع "الإيقاف" ووضع "المراقبة" لتصحيح الأخطاء. لم تُحدد آلية النقل الفعلية المستخدمة للوصول إلى أدوات التصحيح في البنية، ولكن عادةً ما تتضمن التطبيقات دعم JTAG.

يوجد بنية تصحيح أخطاء منفصلة من نوع ARM "CoreSight"، وهي ليست مطلوبة من الناحية المعمارية بواسطة معالجات ARMv7.

منفذ الوصول للتصحيح

منفذ الوصول للتصحيح (DAP) هو تطبيق لواجهة تصحيح ARM. [ 131 ] يوجد تطبيقان مدعومان، هما منفذ تصحيح JTAG السلكي التسلسلي (SWJ-DP) ومنفذ تصحيح JTAG السلكي التسلسلي (SW-DP). [ 132 ] CMSIS-DAP هي واجهة قياسية تصف كيفية تواصل برامج التصحيح المختلفة على جهاز الكمبيوتر المضيف عبر USB مع البرامج الثابتة التي تعمل على مصحح الأخطاء المادي، والتي بدورها تتواصل عبر SWJ-DP أو JTAG مع وحدة معالجة مركزية ARM Cortex مزودة بتقنية CoreSight. [ 133 ] [ 134 ] [ 135 ]

تعليمات تحسين معالجة الإشارات الرقمية

لتحسين بنية ARM لمعالجة الإشارات الرقمية وتطبيقات الوسائط المتعددة، أُضيفت تعليمات DSP إلى مجموعة التعليمات. [ 136 ] ويُشار إلى هذه التعليمات بالحرف "E" في اسمي بنيتي ARMv5TE وARMv5TEJ. كما تشير المتغيرات التي تبدأ بالحرف "E" إلى T وD وM وI.

تُعدّ التعليمات الجديدة شائعة في بنى معالجات الإشارات الرقمية (DSP). وهي تشمل اختلافات في عمليات الضرب والتجميع الموقعة ، والجمع والطرح المشبع ، وحساب الأصفار البادئة .

ظهر هذا الامتداد لمجموعة تعليمات المعالج الأساسي لأول مرة عام ١٩٩٩، وكان مختلفًا عن معالج الإشارات الرقمية المساعد السابق من ARM المعروف باسم Piccolo، والذي استخدم مجموعة تعليمات منفصلة وغير متوافقة، وكان تنفيذه يتطلب عداد برنامج منفصل. [ ١٣٧ ] استخدمت تعليمات Piccolo ملف سجلات منفصلًا مكونًا من ستة عشر سجلًا من ٣٢ بت، حيث جمعت بعض التعليمات السجلات لاستخدامها كمراكم من ٤٨ بت، بينما تناولت تعليمات أخرى سجلات نصفية من ١٦ بت. تمكنت بعض التعليمات من العمل على قيمتين من ١٦ بت بالتوازي. تضمنت عملية الاتصال بملف سجلات Piccolo تحميل البيانات إلى Piccolo وتخزينها من معالج Piccolo المساعد عبر مخزنين مؤقتين من ثمانية مداخل من ٣٢ بت. وُصف Piccolo بأنه يُذكّر بنهج أخرى، لا سيما SH-DSP من هيتاشي و68356 من موتورولا، حيث لم يستخدم ذاكرة محلية مخصصة، واعتمد على عرض نطاق معالج ARM الأساسي لاسترجاع معاملات الإشارات الرقمية، مما أثر على الأداء المتزامن. [ 138 ] كما ثبت أن مجموعة التعليمات المميزة لـ Piccolo ليست "هدفًا جيدًا للمترجم". [ 137 ]

ملحقات SIMD للوسائط المتعددة

تم تقديم هذا في بنية ARMv6، وكان بمثابة مقدمة لتقنية SIMD المتقدمة، والتي تسمى أيضًا Neon . [ 139 ]

جازيل

تقنية Jazelle DBX (التنفيذ المباشر لرمز البايت) هي تقنية تسمح بتنفيذ رمز بايت جافا مباشرةً في بنية ARM كحالة تنفيذ ثالثة (ومجموعة تعليمات ثالثة) إلى جانب وضعَي ARM وThumb الحاليين. يُشار إلى دعم هذه الحالة بالحرف "J" في بنية ARMv5TEJ، وفي أسماء النوى ARM9EJ-S وARM7EJ-S. يُعد دعم هذه الحالة إلزاميًا بدءًا من ARMv6 (باستثناء ملف تعريف ARMv7-M)، مع العلم أن النوى الأحدث لا تتضمن سوى تطبيق بسيط لا يوفر أي تسريع للأجهزة.

إبهام

لتحسين كثافة التعليمات البرمجية المُجمّعة، اعتمدت المعالجات منذ معالج ARM7TDMI (الذي صدر عام 1994 [ 140 ] ) مجموعة تعليمات Thumb المضغوطة ، والتي لها حالة خاصة بها. (يشير الحرف "T" في "TDMI" إلى ميزة Thumb). في هذه الحالة، يُنفّذ المعالج مجموعة تعليمات Thumb، وهي ترميز مضغوط 16 بت لمجموعة فرعية من مجموعة تعليمات ARM. [ 141 ] تُطابق معظم تعليمات Thumb مباشرةً تعليمات ARM العادية. ويتحقق توفير المساحة من خلال جعل بعض معاملات التعليمات ضمنية، والحد من عدد الاحتمالات مقارنةً بتعليمات ARM التي تُنفّذ في حالة مجموعة تعليمات ARM.

في لغة Thumb، تتمتع رموز العمليات ذات 16 بت بوظائف أقل. على سبيل المثال، يمكن أن تكون التفرعات فقط مشروطة، ويقتصر وصول العديد من رموز العمليات على نصف سجلات الأغراض العامة لوحدة المعالجة المركزية. توفر رموز العمليات الأقصر كثافةً أفضل للتعليمات البرمجية بشكل عام، على الرغم من أن بعض العمليات تتطلب تعليمات إضافية. في الحالات التي يكون فيها عرض منفذ الذاكرة أو ناقل البيانات محدودًا بأقل من 32  بت، تسمح رموز عمليات Thumb الأقصر بأداء أفضل مقارنةً بشفرة ARM ذات 32 بت، حيث قد يلزم تحميل كمية أقل من التعليمات البرمجية إلى المعالج عبر نطاق تردد الذاكرة المحدود.

على عكس معالجات ذات تعليمات متغيرة الطول (16 أو 32 بت)، مثل Cray-1 و Hitachi SuperH ، فإن مجموعتي تعليمات ARM وThumb تعملان بشكل مستقل. عادةً ما تحتوي الأجهزة المدمجة، مثل Game Boy Advance ، على ذاكرة وصول عشوائي (RAM) صغيرة يمكن الوصول إليها عبر مسار بيانات كامل 32 بت؛ بينما يتم الوصول إلى الجزء الأكبر عبر مسار بيانات ثانوي 16 بت أو أقل. في هذه الحالة، يُنصح عادةً بتجميع كود Thumb وتحسين بعض الأجزاء الأكثر استهلاكًا لوحدة المعالجة المركزية يدويًا باستخدام تعليمات ARM كاملة 32 بت، ووضع هذه التعليمات الأوسع في الذاكرة التي يمكن الوصول إليها عبر ناقل 32 بت.

كان معالج ARM7TDMI أول معالج مزود بوحدة فك تشفير تعليمات Thumb . جميع المعالجات التي تدعم مجموعات تعليمات 32 بت، بدءًا من ARM9، بما في ذلك XScale، تتضمن وحدة فك تشفير تعليمات Thumb. وتشمل هذه الوحدة تعليمات مُقتبسة من معالج Hitachi SuperH (1992)، الذي حصلت ARM على ترخيص استخدامه. [ 142 ] تُنفذ أصغر عائلات معالجات ARM (Cortex M0 وM1) مجموعة تعليمات Thumb ذات 16 بت فقط لتحقيق أقصى أداء في التطبيقات منخفضة التكلفة. كما أن معالجات ARM التي لا تدعم عنونة 32 بت لا تتضمن Thumb أيضًا.

الإبهام-2

تم تقديم تقنية Thumb-2 في معالج ARM1156  ، الذي أُعلن عنه عام 2003. تعمل Thumb-2 على توسيع مجموعة تعليمات Thumb المحدودة ذات الـ 16 بت بإضافة تعليمات إضافية ذات 32 بت، مما يمنح مجموعة التعليمات نطاقًا أوسع، وبالتالي ينتج عنه مجموعة تعليمات متغيرة الطول. كان الهدف المعلن من Thumb-2 هو تحقيق كثافة برمجية مماثلة لـ Thumb مع أداء مماثل لمجموعة تعليمات ARM على ذاكرة 32 بت.

يُوسّع Thumb-2 مجموعة تعليمات Thumb بإضافة معالجة حقول البتات، وفروع الجداول، والتنفيذ المشروط. في الوقت نفسه، تم توسيع مجموعة تعليمات ARM للحفاظ على وظائف مكافئة في كلتا المجموعتين. تدعم لغة التجميع الموحدة (UAL) الجديدة توليد تعليمات Thumb أو ARM من نفس الكود المصدري؛ وتُعدّ إصدارات Thumb المستخدمة في معالجات ARMv7 بنفس كفاءة كود ARM تقريبًا (بما في ذلك القدرة على كتابة معالجات المقاطعات). يتطلب هذا بعض الحذر، واستخدام تعليمة "IT" (إذا-ثم) جديدة، والتي تسمح بتنفيذ ما يصل إلى أربع تعليمات متتالية بناءً على شرط مُختَبَر، أو على عكسه. عند الترجمة إلى كود ARM، يتم تجاهل هذه التعليمة، ولكن عند الترجمة إلى Thumb، فإنها تُولّد تعليمة فعلية. على سبيل المثال:

إذا كان (r0 == r1) CMP r0 , r1 ITE EQ ; ARM: لا يوجد رمز ... Thumb: تعليمة IT ; ثم r0 = r2; MOVEQ r0 , r2 ; ARM: مشروط؛ Thumb: الشرط عبر ITE 'T' (ثم) ; وإلا r0 = r3; MOVNE r0 , r3 ; ARM: مشروط؛ Thumb: الشرط عبر ITE 'E' (وإلا) ; تذكر أن تعليمة MOV في Thumb لا تحتوي على بتات لترميز "EQ" أو "NE".

تدعم جميع رقاقات ARMv7 مجموعة تعليمات Thumb. وتدعم جميع رقاقات سلسلة Cortex-A التي تدعم ARMv7، وجميع رقاقات سلسلة Cortex-R، وجميع رقاقات سلسلة ARM11 كلاً من "حالة مجموعة تعليمات ARM" و"حالة مجموعة تعليمات Thumb"، بينما تدعم رقاقات سلسلة Cortex-M مجموعة تعليمات Thumb فقط. [ 143 ] [ 144 ] [ 145 ]

بيئة تنفيذ Thumb (ThumbEE)

تم الإعلان عن ThumbEE (المُسمى خطأً Thumb-2EE في بعض وثائق ARM)، والذي سُوِّق باسم Jazelle RCT [ 146 ] (هدف تجميع وقت التشغيل)، في عام 2005، وتم إيقاف دعمه في عام 2011. ظهر لأول مرة في معالج Cortex-A8 . يُعد ThumbEE حالة رابعة لمجموعة التعليمات، حيث يُجري تغييرات طفيفة على مجموعة تعليمات Thumb-2 الموسعة. تجعل هذه التغييرات مجموعة التعليمات مناسبة بشكل خاص للتعليمات البرمجية المُولَّدة في وقت التشغيل (مثلًا بواسطة تجميع JIT ) في بيئات التنفيذ المُدارة . يُعد ThumbEE هدفًا للغات مثل Java و C# و Perl و Python ، ويسمح لمُجمِّعات JIT بإخراج تعليمات برمجية مُجمَّعة أصغر حجمًا دون التأثير على الأداء.

تتضمن الميزات الجديدة التي يوفرها ThumbEE فحصًا تلقائيًا للمؤشرات الفارغة في كل عملية تحميل وتخزين، وتعليمات لإجراء فحص حدود المصفوفة، وتعليمات خاصة تستدعي معالجًا. بالإضافة إلى ذلك، وبفضل استخدام تقنية Thumb-2، يتيح ThumbEE الوصول إلى السجلات من r8 إلى r15 (حيث تُخزَّن حالة Jazelle/DBX Java VM). [ 147 ] المعالجات عبارة عن أجزاء صغيرة من التعليمات البرمجية التي يتم استدعاؤها بشكل متكرر، وتُستخدم عادةً لتنفيذ لغات البرمجة عالية المستوى، مثل تخصيص الذاكرة لكائن جديد. تأتي هذه التغييرات من إعادة استخدام عدد قليل من رموز العمليات، ومعرفة أن النواة تعمل في حالة ThumbEE الجديدة.

في 23 نوفمبر 2011، أوقفت شركة Arm أي استخدام لمجموعة تعليمات ThumbEE، [ 148 ] وقامت Armv8 بإزالة دعم ThumbEE.

الفاصلة العائمة (VFP)

تقنية VFP (النقطة العائمة المتجهة) هي امتداد لوحدة معالجة النقطة العائمة (FPU) في معمارية ARM [ 149 ] (مُطبقة بشكل مختلف في Armv8 - حيث لم تُعرّف المعالجات المساعدة). توفر هذه التقنية حسابات نقطة عائمة أحادية وثنائية الدقة بتكلفة منخفضة، متوافقة تمامًا مع معيار ANSI/IEEE Std 754-1985 لحسابات النقطة العائمة الثنائية . تُناسب حسابات النقطة العائمة في VFP طيفًا واسعًا من التطبيقات، مثل أجهزة المساعد الرقمي الشخصي (PDA)، والهواتف الذكية، وضغط الصوت وفك ضغطه، والرسومات ثلاثية الأبعاد، والصوت الرقمي، والطابعات، وأجهزة الاستقبال الرقمية، وتطبيقات السيارات. صُممت معمارية VFP لدعم تنفيذ تعليمات "الوضع المتجهي" القصيرة، إلا أن هذه التعليمات كانت تُنفذ على كل عنصر من عناصر المتجه بالتسلسل، وبالتالي لم تُوفر أداء التوازي المتجهي الحقيقي أحادي التعليمات ومتعدد البيانات (SIMD). لذلك تمت إزالة وضع المتجهات هذا بعد فترة وجيزة من تقديمه، [ 150 ] ليتم استبداله بنظام Advanced SIMD الأكثر قوة، والذي يسمى أيضًا Neon .

تحتوي بعض الأجهزة، مثل معالج ARM Cortex-A8، على وحدة VFPLite مُصغّرة بدلاً من وحدة VFP كاملة، وتتطلب ما يقارب عشرة أضعاف دورات الساعة لكل عملية حسابية للفاصلة العائمة. [ 151 ] طبّقت بنية ما قبل Armv8 تقنية الفاصلة العائمة/SIMD باستخدام واجهة المعالج المساعد. تشمل وحدات الفاصلة العائمة و/أو SIMD الأخرى الموجودة في معالجات ARM التي تستخدم واجهة المعالج المساعد FPA وFPE و iwMMXt ، وقد تم تنفيذ بعضها برمجياً عن طريق اعتراض العمليات، ولكن كان من الممكن تنفيذها برمجياً. توفر هذه الوحدات بعض الوظائف نفسها التي توفرها VFP، ولكنها غير متوافقة معها من حيث رمز العملية . كما توفر FPA10 دقة مُوسّعة ، ولكنها تُنفّذ التقريب الصحيح (المطلوب بموجب معيار IEEE  754) بدقة أحادية فقط. [ 152 ]

VFPv1
مهجور
VFPv2
امتداد اختياري لمجموعة تعليمات ARM في معمارية ARMv5TE و ARMv5TEJ و ARMv6. يحتوي VFPv2 على 16 مسجلاً لوحدة الفاصلة العائمة (FPU) سعة 64 بت.
VFPv3 أو VFPv3-D32
تم تطبيقها على معظم معالجات ARMv7 من نوع Cortex-A8 و A9. وهي متوافقة مع الإصدارات السابقة من VFPv2، باستثناء أنها لا تستطيع معالجة استثناءات الفاصلة العائمة. يحتوي VFPv3 على 32 مسجلاً لوحدة معالجة الفاصلة العائمة (FPU) بحجم 64 بت كمعيار، ويضيف تعليمات VCVT للتحويل بين الأعداد العددية (scalar) والأعداد العشرية (float) والأعداد المضاعفة (double)، كما يضيف وضعًا فوريًا إلى VMOV بحيث يمكن تحميل الثوابت في مسجلات وحدة معالجة الفاصلة العائمة.
VFPv3-D16
كما سبق، ولكن باستخدام 16 مسجلاً فقط من نوع FPU سعة 64 بت. تم تنفيذه على معالجات Cortex-R4 وR5 ومعالج Tegra 2 (Cortex-A9).
VFPv3-F16
غير شائع؛ فهو يدعم نظام IEEE754-2008 ذو الدقة النصفية (16 بت) كنظام تخزين للنقاط العائمة.
VFPv4 أو VFPv4-D32
تم تطبيق VFPv4 على معالجات ARMv7 من نوع Cortex-A12 و A15، ويحتوي معالج Cortex-A7 اختيارياً على VFPv4-D32 في حالة وحدة معالجة الفاصلة العائمة (FPU) المزودة بتقنية Neon. [ 153 ] يحتوي VFPv4 على 32 مسجلاً لوحدة معالجة الفاصلة العائمة (FPU) بحجم 64 بت كمعيار، ويضيف دعم الدقة النصفية كصيغة تخزين، بالإضافة إلى تعليمات الضرب والتجميع المدمجة، إلى ميزات VFPv3.
VFPv4-D16
كما سبق، ولكنها تحتوي على 16 مسجلاً فقط لوحدة الفاصلة العائمة (FPU) ذات 64 بت. تم تنفيذها على معالجات Cortex-A5 و A7 في حالة وحدة الفاصلة العائمة بدون Neon. [ 153 ]
VFPv5-D16-M
يتم تنفيذه على Cortex-M7 عندما يكون خيار النواة للفاصلة العائمة أحادية وثنائية الدقة موجودًا.

في توزيعات دبيان لينكس ومشتقاتها مثل أوبونتو ولينكس منت ، يشير مصطلح armhf ( اختصارًا لـ ARM hard float ) إلى بنية ARMv7 التي تتضمن امتداد VFP3-D16 الإضافي للأجهزة ذات الفاصلة العائمة (و Thumb-2) المذكور أعلاه. تستخدم حزم البرامج وأدوات الترجمة المتقاطعة اللاحقتين armhf و arm/armel للتمييز بينهما. [ 154 ]

تقنية SIMD المتقدمة (نيون)

The Advanced SIMD extension (also known as Neon or "MPE" Media Processing Engine) is a combined 64- and 128-bit SIMD instruction set that provides standardised acceleration for media and signal processing applications. Neon is included in all Cortex-A8 devices, but is optional in Cortex-A9 devices.[155] Neon can execute MP3 audio decoding on CPUs running at 10 MHz, and can run the GSMadaptive multi-rate (AMR) speech codec at 13 MHz. It features a comprehensive instruction set, separate register files, and independent execution hardware.[156] Neon supports 8-, 16-, 32-, and 64-bit integer and single-precision (32-bit) floating-point data and SIMD operations for handling audio and video processing as well as graphics and gaming processing. In Neon, the SIMD supports up to 16 operations at the same time. The Neon hardware shares the same floating-point registers as used in VFP. Devices such as the ARM Cortex-A8 and Cortex-A9 support 128-bit vectors, but will execute with 64 bits at a time,[151] whereas some more powerful CPUs such as Cortex-A15 can execute 128 bits at a time.[157][158]

A quirk of Neon in Armv7 devices is that it flushes all subnormal numbers to zero, and as a result the GCC compiler will not use it unless -funsafe-math-optimizations, which allows losing denormals, is turned on. "Enhanced" Neon defined since Armv8 does not have this quirk, but as of GCC 8.2 the same flag is still required to enable Neon instructions.[159] On the other hand, GCC does consider Neon safe on AArch64 for Armv8.

ProjectNe10 is ARM's first open-source project (from its inception; while they acquired an older project, now named Mbed TLS). The Ne10 library is a set of common, useful functions written in both Neon and C (for compatibility). The library was created to allow developers to use Neon optimisations without learning Neon, but it also serves as a set of highly optimised Neon intrinsic and assembly code examples for common DSP, arithmetic, and image processing routines. The source code is available on GitHub.[160]

ARM Helium technology

Helium is the M-Profile Vector Extension (MVE). It adds more than 150 scalar and vector instructions.[161]

Security extensions

TrustZone (for Cortex-A profile)

تُستخدم ملحقات الأمان، التي تُسوّق تحت اسم تقنية TrustZone، في معمارية ملفات تعريف التطبيقات ARMv6KZ والإصدارات الأحدث. وهي تُوفّر بديلاً منخفض التكلفة لإضافة نواة أمان مُخصصة أخرى إلى نظام على شريحة (SoC)، وذلك من خلال توفير مُعالجين افتراضيين مدعومين بنظام تحكم في الوصول قائم على الأجهزة. يُمكّن هذا نواة التطبيق من التبديل بين حالتين، يُشار إليهما باسم " عالمين " (لتقليل الالتباس مع المسميات الأخرى لمجالات القدرات)، لمنع تسريب المعلومات من العالم الأكثر موثوقية ( العالم الآمن ) إلى العالم الأقل موثوقية ( العالم العادي ). [ 162 ] يكون هذا التبديل بين العالمين مُستقلاً بشكل عام عن جميع قدرات المُعالج الأخرى، وبالتالي يُمكن لكل عالم العمل بشكل مُستقل عن الآخر أثناء استخدام نفس النواة. بعد ذلك، تُصبح الذاكرة والأجهزة الطرفية على دراية بعالم تشغيل النواة، وقد تستخدم هذه المعلومات لتوفير التحكم في الوصول إلى البيانات السرية والتعليمات البرمجية على الجهاز. [ 163 ]

عادةً، يُشغَّل نظام تشغيل غني في بيئة أقل موثوقية، بينما يُشغَّل كود أمني متخصص أصغر حجمًا في بيئة أكثر موثوقية، بهدف تقليل مساحة الهجوم . تشمل التطبيقات النموذجية وظائف إدارة الحقوق الرقمية (DRM) للتحكم في استخدام الوسائط على الأجهزة التي تعمل بمعالجات ARM، [ 164 ] ومنع أي استخدام غير مصرح به للجهاز.

عمليًا، نظرًا لعدم الكشف علنًا عن تفاصيل التنفيذ الخاصة بتطبيقات TrustZone الخاصة للمراجعة، فإنه من غير الواضح مستوى الضمان المقدم لنموذج تهديد معين ، ولكنها ليست محصنة ضد الهجمات. [ 165 ] [ 166 ]

Open Virtualization [ 167 ] هو تطبيق مفتوح المصدر لبنية العالم الموثوق به لـ TrustZone.

قامت AMD بترخيص تقنية TrustZone ودمجها في تقنية المعالج الآمن الخاصة بها . [ 168 ] تتضمن وحدات المعالجة المسرعة ( APUs) من AMD معالج Cortex-A5 لمعالجة البيانات بشكل آمن، وهو مُفعّل في بعض المنتجات وليس جميعها. [ 169 ] [ 170 ] [ 171 ] في الواقع، كان معالج Cortex-A5 TrustZone موجودًا في منتجات AMD السابقة، ولكن لم يتم تفعيله بسبب ضيق الوقت. [ 170 ]

يستخدم نظام سامسونج نوكس TrustZone لأغراض مثل اكتشاف التعديلات على النواة، وتخزين الشهادات، والتحقق من صحة المفاتيح. [ 172 ]

TrustZone لمعالج Armv8-M (لملف تعريف Cortex-M)

تم تقديم امتداد الأمان، الذي يُسوّق باسم TrustZone لتقنية Armv8-M، في بنية Armv8-M. ورغم احتوائه على مفاهيم مشابهة لـ TrustZone لـ Armv8-A، إلا أنه يتميز بتصميم معماري مختلف، حيث يتم تبديل البيئات باستخدام تعليمات التفرع بدلاً من الاستثناءات. [ 173 ] كما يدعم معالجة المقاطعات المتداخلة الآمنة من أي بيئة بغض النظر عن حالة الأمان الحالية. توفر هذه الميزات مجتمعةً استدعاءات منخفضة زمن الوصول إلى البيئة الآمنة ومعالجة سريعة للمقاطعات. توفر ARM حزمة مرجعية لرمز البيئة الآمنة في شكل برامج ثابتة موثوقة لـ M ومعتمدة من PSA .

حماية الصفحة من التنفيذ

ابتداءً من ARMv6، تدعم بنية ARM حماية الصفحة من التنفيذ ، والتي يشار إليها باسم XN ، اختصارًا لـ eXecute Never . [ 174 ]

امتداد العنوان المادي الكبير (LPAE)

تمت إضافة امتداد العنوان المادي الكبير (LPAE)، الذي يوسع حجم العنوان المادي من 32 بت إلى 40 بت، إلى بنية Armv7-A في عام 2011. [ 175 ]

قد يكون حجم العنوان الفعلي أكبر في المعالجات المبنية على بنية 64 بت (Armv8-A). على سبيل المثال، يبلغ 44 بت في معالجي Cortex-A75 وCortex-A65AE. [ 176 ]

Armv8-R و Armv8-M

تتشابه معماريتا Armv8-R و Armv8-M ، اللتان أُعلن عنهما بعد معمارية Armv8-A، في بعض الميزات مع معمارية Armv8-A. ومع ذلك، لا تتضمن معمارية Armv8-M أي تعليمات AArch64 ذات 64 بت، ولم تتضمن معمارية Armv8-R في الأصل أي تعليمات AArch64؛ وقد أُضيفت هذه التعليمات إلى معمارية Armv8-R لاحقًا.

Armv8.1-M

تُعدّ بنية Armv8.1-M، التي أُعلن عنها في فبراير 2019، تطويراً لبنية Armv8-M. وهي تُقدّم ميزات جديدة تشمل ما يلي:

  • امتداد جديد لمجموعة تعليمات المتجهات. يُستخدم امتداد المتجهات M-Profile (MVE)، أو هيليوم، في تطبيقات معالجة الإشارات والتعلم الآلي.
  • تحسينات إضافية لمجموعة التعليمات الخاصة بالحلقات والفروع (امتداد الفرع ذو التكلفة المنخفضة).
  • تعليمات لدعم الأعداد العشرية ذات الدقة النصفية .
  • تحسين مجموعة التعليمات لإدارة TrustZone لوحدة الفاصلة العائمة (FPU).
  • سمة ذاكرة جديدة في وحدة حماية الذاكرة (MPU).
  • تركز التحسينات في تصحيح الأخطاء، بما في ذلك وحدة مراقبة الأداء (PMU) وامتداد تصحيح الأخطاء غير المميز ودعم تصحيح الأخطاء الإضافي، على تطوير تطبيقات معالجة الإشارات.
  • امتداد الموثوقية والتوافر وقابلية الخدمة (RAS).

بنية 64/32 بت

منصة Armv8-A مع شريحة معالجة مركزية MPCore big.LITTLE من نوع Cortex A57/A53

Armv8

Armv8-A

أُعلن عن معمارية Armv8-A (التي تُعرف غالبًا باسم ARMv8، بينما تتوفر أيضًا معمارية Armv8-R) في أكتوبر 2011، [ 14 ] وهي تمثل تغييرًا جذريًا في معمارية ARM. تدعم هذه المعمارية حالتين للتنفيذ : حالة 64 بت تُسمى AArch64 ، وحالة 32 بت تُسمى AArch32 . في حالة AArch64، يتم دعم مجموعة تعليمات A64 الجديدة ذات 64 بت ؛ أما في حالة AArch32، فيتم دعم مجموعتي تعليمات: مجموعة التعليمات الأصلية ذات 32 بت، والتي تُسمى A32 ، ومجموعة تعليمات Thumb-2 ذات 32 بت، والتي تُسمى T32 . توفر AArch32 توافقًا في مساحة المستخدم مع معمارية Armv7-A. يمكن أن تتغير حالة المعالج عند حدوث تغيير في مستوى الاستثناء. يُتيح هذا تشغيل تطبيقات 32 بت في حالة AArch32 ضمن نظام تشغيل 64 بت يعمل نواته في حالة AArch64، كما يُتيح تشغيل نظام تشغيل 32 بت في حالة AArch32 تحت سيطرة مُشرف أجهزة افتراضية 64 بت يعمل في حالة AArch64. [ 1 ] أعلنت ARM عن معالجاتها Cortex-A53 وCortex-A57 في 30 أكتوبر 2012. [ 80 ] كانت Apple أول من أصدر نواة متوافقة مع Armv8-A في منتج استهلاكي ( Apple A7 في iPhone 5S ). وكانت AppliedMicro ، باستخدام FPGA ، أول من عرض Armv8-A. [ 177 ] أول نظام على شريحة (SoC) من سامسونج يعمل بنظام Armv8-A هو Exynos 5433 المستخدم في Galaxy Note 4 ، والذي يتميز بمجموعتين من أربع نوى Cortex-A57 وCortex-A53 في تكوين big.LITTLE ؛ لكنها ستعمل فقط في وضع AArch32. [ 178 ]

يدعم معمارية Armv8-A كلاً من معماريتي AArch32 و AArch64، حيث تجعل VFPv3/v4 و SIMD المتقدمة (Neon) معيارًا. كما تضيف تعليمات تشفير تدعم AES و SHA-1 / SHA-256 وحسابات الحقول المحدودة . [ 179 ] تم تقديم معمارية AArch64 في معمارية Armv8-A وإصداراتها اللاحقة. ولا تُدرج معمارية AArch64 في معماريتي Armv8-R و Armv8-M ذات 32 بت.

يمكن لمعالج ARMv8-A دعم بنية AArch32 أو AArch64 أو كليهما؛ وقد يدعم كلاً منهما عند مستويات استثناء منخفضة، بينما يدعم AArch64 فقط عند مستويات استثناء أعلى. [ 180 ] على سبيل المثال، يدعم معالج ARM Cortex-A32 بنية AArch32 فقط، [ 181 ] ويدعم معالج ARM Cortex-A34 بنية AArch64 فقط، [ 182 ] بينما يدعم معالج ARM Cortex-A72 كلاً من AArch64 وAArch32. [ 183 ] ​​يجب أن يدعم معالج ARMv9-A بنية AArch64 عند جميع مستويات الاستثناء، وقد يدعم بنية AArch32 عند مستوى الاستثناء EL0. [ 180 ]

Armv8-R

تمت إضافة دعم AArch64 الاختياري إلى ملف تعريف Armv8-R، وكان أول معالج ARM يقوم بتنفيذه هو Cortex-R82. [ 184 ] وهو يضيف مجموعة تعليمات A64.

Armv9

Armv9-A

أُعلن عن البنية المُحدَّثة في مارس 2021، وهي تُركِّز على التنفيذ الآمن والتجزئة . [ 185 ] [ 186 ] وقد طُرحت أولى معالجات ARMv9-A في وقت لاحق من ذلك العام، بما في ذلك Cortex-A510 وCortex-A710 وCortex-X2. [ 187 ] [ 188 ]

جاهزية نظام Arm

برنامج Arm SystemReady هو برنامج امتثال يساعد على ضمان قابلية التشغيل البيني لأنظمة التشغيل على الأجهزة القائمة على معالجات Arm، بدءًا من خوادم مراكز البيانات وصولًا إلى أجهزة الحوسبة الطرفية الصناعية وأجهزة إنترنت الأشياء. وتتمثل المكونات الأساسية للبرنامج في مواصفات الحد الأدنى من متطلبات الأجهزة والبرامج الثابتة التي يمكن لأنظمة التشغيل والمشرفين على الأجهزة الافتراضية الاعتماد عليها. وهذه المواصفات هي: [ 189 ]

  • بنية النظام الأساسية (BSA) [ 190 ] والملحقات الخاصة بقطاع السوق (مثل بنية النظام الأساسية للكمبيوتر الشخصي، وبنية النظام الأساسية للخادم) [ 191 ]
  • متطلبات التمهيد الأساسية (BBR) [ 192 ] ومتطلبات أمان التمهيد الأساسية (BBSR) [ 193 ]

تم تطوير هذه المواصفات بشكل مشترك من قبل شركة Arm وشركائها في اللجنة الاستشارية لهندسة النظام (SystemArchAC).

مجموعة أدوات التوافق المعماري (ACS) هي أدوات الاختبار التي تساعد في التحقق من توافق هذه المواصفات. وتوثق مواصفات متطلبات Arm SystemReady متطلبات الشهادات. [ 194 ]

أطلقت شركة Arm هذا البرنامج في عام 2020 خلال أول مؤتمر DevSummit . وكان البرنامج السابق له، Arm ServerReady، قد أُطلق في عام 2018 خلال مؤتمر Arm TechCon. ويتضمن هذا البرنامج حاليًا نطاقين:

  • نطاق SystemReady: يركز هذا النطاق على قابلية التشغيل البيني لأنظمة التشغيل في بيئات واجهة التكوين المتقدمة والطاقة (ACPI) ، حيث يمكن تثبيت أنظمة تشغيل عامة على أجهزة جديدة أو قديمة دون تعديل. وينطبق هذا النطاق على الأنظمة التي تستخدم بيئات Windows و Linux و VMware و BSD . [ 195 ]
  • نطاق شجرة الأجهزة الجاهزة للنظام: يعمل هذا النطاق على تحسين عملية التثبيت والتشغيل للأنظمة المدمجة التي تُفضّل فيها شجرة الأجهزة لوصف المكونات المادية، مع التركيز على التوافق مع الإصدارات اللاحقة. وينطبق هذا تحديدًا على توزيعات لينكس وبيئات بي إس دي . [ 196 ]

معتمد من PSA

شهادة PSA ، التي كانت تُعرف سابقًا باسم بنية أمان النظام الأساسي، هي إطار عمل أمني ونظام تقييم مستقل عن بنية النظام. وهي مصممة للمساعدة في تأمين أجهزة إنترنت الأشياء (IoT) المبنية على معالجات النظام على شريحة (SoC). [ 197 ] وقد طُرحت لتعزيز الأمان في الحالات التي تكون فيها بيئة التنفيذ الموثوقة بالكامل كبيرة جدًا أو معقدة للغاية. [ 198 ]

قدمت شركة Arm هذه البنية في عام 2017 خلال مؤتمر TechCon السنوي . [ 198 ] [ 199 ] ورغم أن هذه البنية مستقلة عن نوع المعالج، فقد طُبقت لأول مرة على معالجات Arm Cortex-M المخصصة للاستخدام في المتحكمات الدقيقة. يتضمن برنامج PSA Certified نماذج تهديدات وتحليلات أمنية متاحة مجانًا، توضح عملية تحديد ميزات الأمان في منتجات إنترنت الأشياء الشائعة. [ 200 ] كما يوفر البرنامج حزم واجهات برمجة التطبيقات (API) ومواصفات معمارية وتطبيقات برمجية مفتوحة المصدر ومجموعات اختبار ذات صلة، جميعها قابلة للتنزيل مجانًا. [ 201 ]

بعد تطوير إطار عمل أمن البنية في عام 2017، أُطلق برنامج ضمان الجودة PSA Certified بعد عامين في معرض Embedded World عام 2019. [ 202 ] يوفر برنامج PSA Certified نظام تقييم أمني متعدد المستويات لموردي الرقائق الإلكترونية، وموردي أنظمة التشغيل، ومصنعي أجهزة إنترنت الأشياء. [ 203 ] عرّف عرض Embedded World موردي الرقائق الإلكترونية بشهادة المستوى الأول. كما عُرضت مسودة حماية المستوى الثاني في الوقت نفسه. [ 204 ] أصبحت شهادة المستوى الثاني معيارًا قابلاً للتطبيق في فبراير 2020. [ 205 ]

تم إنشاء هذه الشهادة من قبل أصحاب المصلحة المشتركين في PSA لتمكين تطبيق نهج أمني متكامل لمجموعة متنوعة من منتجات إنترنت الأشياء. تتميز مواصفات PSA المعتمدة بأنها مستقلة عن التنفيذ والبنية، وبالتالي يمكن تطبيقها على أي شريحة أو برنامج أو جهاز. [ 206 ] [ 204 ] كما تساهم هذه الشهادة في توحيد جهود مصنعي ومطوري منتجات إنترنت الأشياء في هذا القطاع. [ 207 ]

دعم نظام التشغيل

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

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

كان أول حاسوب شخصي قائم على معالج ARM ذي 32 بت، وهو Acorn Archimedes ، مصممًا في الأصل لتشغيل نظام تشغيل طموح يُدعى ARX . وقد زُوّدت هذه الأجهزة بنظام RISC OS ، الذي استُخدم أيضًا في أنظمة ARM اللاحقة من Acorn وموردين آخرين. كما تمكّنت بعض أجهزة Acorn المبكرة من تشغيل نسخة من نظام Unix تُسمى RISC iX . (لا ينبغي الخلط بين أيٍّ منهما ونظام RISC/os ، وهو إصدار متوقف من Unix مُصمم لبنية MIPS).

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

يدعم عدد كبير من أنظمة التشغيل المدمجة وأنظمة التشغيل في الوقت الحقيقي بنية ARM ذات 32 بت ، بما في ذلك:

أنظمة تشغيل الأجهزة المحمولة

اعتبارًا من يوليو 2026، أصبحت بنية ARM ذات 32 بت بيئة أجهزة ثانوية لأنظمة تشغيل الأجهزة المحمولة. وقد تخلت Apple iOS تمامًا عن دعم الأجهزة ذات 32 بت، بينما لا تزال أنظمة التشغيل المذكورة أدناه تدعمها.

كان موجوداً سابقاً، ولكنه توقف الآن:

أنظمة تشغيل أجهزة سطح المكتب والخوادم

يدعم نظام التشغيل RISC OS وأنظمة تشغيل متعددة شبيهة بنظام Unix بنية ARM ذات 32 بت، بما في ذلك:

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

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

أنظمة تشغيل الأجهزة المحمولة

أنظمة تشغيل أجهزة سطح المكتب والخوادم

نقل البرنامج إلى أنظمة تشغيل ARM ذات 32 أو 64 بت

يمكن تشغيل تطبيقات ويندوز المُعاد تجميعها لمعالجات ARM والمُرتبطة بمكتبة Winelib، من مشروع Wine ، على معالجات ARM بنظامي 32 بت أو 64 بت في أنظمة Linux أو FreeBSD أو غيرها من أنظمة التشغيل المتوافقة. [ 238 ] [ 239 ] وقد تم عرض تشغيل ملفات x86 الثنائية، على سبيل المثال عندما لا يتم تجميعها خصيصًا لمعالجات ARM، على معالجات ARM باستخدام QEMU مع Wine (على أنظمة Linux وغيرها )، ولكنها لا تعمل بكامل سرعتها أو بنفس إمكانيات Winelib.

ملحوظات

  1. كان سابقًا اختصارًا لـ Advanced RISC Machines وكان في الأصل Acorn RISC Machine
  2. باستخدام الكلمات ذات 32 بت، فإن 4 ميجابت/ثانية تعادل 1 مليون عملية حسابية في الثانية .
  3. لا تذكر المراجع المتاحة أي فريق تصميم كان هذا، ولكن بالنظر إلى التوقيت والتاريخ المعروف لتصميمات تلك الحقبة، فمن المرجح أن يكون هذا هو فريق National Semiconductor الذي عانى جهازه NS32016 من عدد كبير من الأخطاء.
  4. يشير مات إيفانز إلى أنه يبدو أن الإصدارات الأسرع قد تم تصنيفها ببساطة في مرتبة أعلى، ويبدو أنها لا تحتوي على أي تغييرات جوهرية. [ 40 ]

انظر أيضاً

مراجع

الاقتباسات

  1. 1 2 3 4 5 6 غريسنثويت، ريتشارد (2011). "ARMv8-A معاينة تقنية" (ملف PDF) . مؤرشف من الأصل (ملف PDF) بتاريخ 11 نوفمبر 2011. تم الاطلاع عليه بتاريخ 31 أكتوبر 2011 .
  2. "6.1.2.1 اصطلاحات استخدام سجلات VFP" . معيار استدعاء الإجراءات لبنية ARM . شركة Arm Holdings . 6 أكتوبر 2023. تم الاطلاع عليه بتاريخ 22 أغسطس 2024 .
  3. 1 2 ويلسون، روجر (2 نوفمبر 1988). "بعض الحقائق حول جهاز Acorn RISC" . مجموعة الأخبار : comp.arch . تم الاسترجاع في 25 مايو 2007 . 
  4. 1 2 هاشمان، مارك (14 أكتوبر 2002). "معالجات ARM تصعد إلى منطقة الجيل الثالث" . إكستريم تك . تم الاسترجاع في 24 مايو 2018 .
  5. تورلي، جيم (18 ديسمبر 2022). "حل الاثنين بالمئة" . مضمن . تم الاسترجاع في 29 مايو 2026 .
  6. "سناب دراغون مقابل إنتل: دليل المشتري لمعالجات الجيل التالي" . جيكوم . 26 سبتمبر 2025. تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  7. كاتريس، إيان (22 يونيو 2020). "الحاسوب العملاق رقم 1 الجديد: فوجاكو من فوجيتسو ومعالج A64FX يتصدران فئة معالجات Arm بقوة 415 بيتافلوب" . anandtech.com . مؤرشف من الأصل في 12 يونيو 2025. تم الاطلاع عليه في 25 يناير 2021 .
  8. سيغارز، سيمون (18 أكتوبر 2021). "شركاء آرم شحنوا 200 مليار شريحة" . غرفة أخبار آرم . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  9. " تمكين اتصال إنترنت الأشياء على نطاق واسع مع شحن شركاء ARM لـ 100 مليار شريحة" . community.arm.com . 27 فبراير 2017. تم الاطلاع عليه في 8 أبريل 2020. يُشير هذا إلى النشر التراكمي لـ 100 مليار شريحة، نصفها تم شحنه في السنوات الأربع الماضية. [...] لماذا لا يكون العدد تريليون أو أكثر؟ هذا هو هدفنا، وهو نشر تريليون جهاز متصل خلال العقدين القادمين.{{cite web}}: CS1 maint: url-status ( link )
  10. "سوق وحدات التحكم الدقيقة (MCU) يتجه نحو الأجهزة 32 بت والقائمة على معالجات ARM: تتصدر أجهزة 32 بت المبيعات؛ بينما تتصدر أجهزة 16 بت شحنات الوحدات" . IC Insights. 25 أبريل 2013. مؤرشف من الأصل في 7 يوليو 2014. تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  11. تورلي، جيم (18 ديسمبر 2002). "حل الاثنين بالمئة" . embedded.com. مؤرشف من الأصل في 15 فبراير 2023.
  12. بريكيت مورغان، تيموثي (1 فبراير 2011). "شركة آرم هولدينغز تتطلع إلى توسيع نطاق أجهزة الكمبيوتر والخوادم" . ذا ريجستر . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  13. ماكغواير-بالانزا، كيري (11 مايو 2010). "شركة آرم من الصفر إلى مليارات الدولارات في 25 عامًا فقط" . آرم هولدينغز . مؤرشف من الأصل في 29 نوفمبر 2014. تم الاطلاع عليه في 8 نوفمبر 2012 .
  14. ١ ٢ "شركة ARM تكشف عن التفاصيل التقنية للإصدار القادم من معمارية ARM" . www.arm.com (بيان صحفي). ٢٧ أكتوبر ٢٠١١. مؤرشف من الأصل في ١ يناير ٢٠١٩. تم الاطلاع عليه بتاريخ ٢٩ مايو ٢٠٢٦ .
  15. "الإعلان عن منصة ARM Neoverse N1" . community.arm.com . 20 فبراير 2019. تم الاطلاع عليه بتاريخ 8 أبريل 2020 .{{cite web}}: CS1 maint: url-status ( link )
  16. فيربيرن، دوغلاس (31 يناير 2012). "التاريخ الشفوي لصوفي ويلسون" (ملف PDF) . متحف تاريخ الحاسوب . مؤرشف (ملف PDF) من الأصل في 3 مارس 2016. تم الاطلاع عليه في 29 مايو 2016 .
  17. سميث، توني (30 نوفمبر 2011). "جهاز بي بي سي مايكرو يبلغ من العمر 30 عامًا" . ذا ريجستر هاردوير . مؤرشف من الأصل في 12 ديسمبر 2011. تم الاسترجاع في 12 ديسمبر 2011 .
  18. بولسون، كين (29 أبريل 2017). "التسلسل الزمني للمعالجات الدقيقة" . Processortimeline.info . مؤرشف من الأصل في 9 أغسطس 2018. تم الاطلاع عليه في 27 سبتمبر 2013 .
  19. ليدي، جلين (أبريل 1983). "عائلة معالجات NS16000 الدقيقة من ناشيونال سيميكوندكتور" . بايت . الصفحات 53-66 . تم الاطلاع عليه بتاريخ 29 مايو 2026 . 
  20. إيفانز 2019 ، 6:00.
  21. مانرز، ديفيد (29 أبريل 1998). "طريقة ARM" . مجلة إلكترونيكس ويكلي . مؤرشف من الأصل في 29 يوليو 2012. تم الاطلاع عليه في 16 أكتوبر 2012 .
  22. إيفانز 2019 ، 5:30.
  23. 1 2 إيفانز 2019 ، 7:45.
  24. إيفانز 2019 ، 8:30.
  25. "طريقة ARM" . www.electronicsweekly.com . 29 أبريل 1998. مؤرشف من الأصل في 29 يوليو 2012. تم الاطلاع عليه في 29 مايو 2026 .
  26. تشيسنال، ديفيد (23 أغسطس 2010). فهم معماريات ARM . تم الاسترجاع في 26 مايو 2013 .
  27. باتمان، سيلبي (22 سبتمبر 1986). "بيل مينش - العقول المدبرة وراء العقول" . commodore.ca . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  28. إيفانز 2019 ، 9:00.
  29. فوربر، ستيفن ب. (2000). بنية نظام ARM على شريحة واحدة . بوسطن: أديسون-ويسلي. ISBN 0-201-67519-6.
  30. إيفانز 2019 ، 9:50.
  31. إيفانز 2019 ، 23:30.
  32. إيفانز 2019 ، 26:00.
  33. "تاريخ تصميم مجموعة تعليمات ARM مع صوفي ويلسون (الجزء 3)" . 10 مايو 2015. مؤرشف من الأصل في 11 ديسمبر 2021. تم الاطلاع عليه في 25 مايو 2020 عبر يوتيوب.
  34. "التاريخ الشفوي لسوفي ويلسون - زميلة متحف تاريخ الحاسوب لعام 2012" (ملف PDF) . متحف تاريخ الحاسوب . 31 يناير 2012. تاريخ الاطلاع: 25 مايو 2020 .
  35. هاركر، ت. (صيف 2009). "شركة ARM تُولي اهتمامًا جادًا للملكية الفكرية (الجزء الثاني من سلسلة مكونة من جزأين [رأي المحررين المشاركين]). مجلة IEEE للدوائر المتكاملة . 1 (3): 8-69 . doi : 10.1109/MSSC.2009.933674 . ISSN 1943-0590 . S2CID 36567166 .  
  36. إيفانز 2019 ، 20:30.
  37. "Chris's Acorns: Acorn OEM Products" . chrisacorns.computinghistory.org.uk . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  38. «أعلنت شركة Acorn Computers عن توفر نظام تقييم لجهازها أحادي الشريحة ذي مجموعة التعليمات المختصرة 32 بت - ARM» (ملف PDF) . كريس أكورنز (بيان صحفي). شركة Acorn Computers . 7 يوليو 1986. تاريخ الاطلاع: 29 مايو 2026 .{{cite press release}}: CS1 maint: url-status ( link )
  39. "معالج Acorn A500 الثاني" . كريس أكورنز . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  40. إيفانز 2019 ، 22:00.
  41. إيفانز 2019 ، 21:30.
  42. إيفانز 2019 ، 22:0030.
  43. "Acorn A500 (نموذج أولي)" . كريس أكورنز . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  44. 1 2 إيفانز 2019 ، 14:00.
  45. "من معالج ARM إلى آخر! معالجات ARM وبنيتها" . مؤرشف من الأصل في 3 أكتوبر 2010. تم الاطلاع عليه في 31 مايو 2022 .
  46. ليفي، ماركوس. "تاريخ معمارية ARM: من البداية إلى الاكتتاب العام" (ملف PDF) . مؤرشف من الأصل (ملف PDF) بتاريخ 18 يوليو 2022. تم الاطلاع عليه بتاريخ 18 يوليو 2022 .
  47. تقديم جهاز كومودور أميغا 3000 (ملف PDF) . شركة كومودور أميغا، 1991.
  48. "مزاعم سرعة معالجة البيانات بالوحدات MIPS و MFLOPS من عام 1980 إلى عام 1996" . www.roylongbottom.org.uk . تاريخ الاطلاع: 29 مايو 2026 .
  49. سانتانو تشاتوبادياي (2010). تصميم الأنظمة المدمجة . دار نشر PHI Learning Pvt. Ltd.، ص 9. ISBN  978-81-203-4024-4.
  50. موراي، ريتشارد (2004). "عملية 32 بت" . تم الاسترجاع في 29 مايو 2026 .
  51. "سانيو ستوفر مصدرًا ثانيًا، وتوسع عائلة أجهزة Acorn RISC" . 23 أبريل 1988. ص 5. تم الاطلاع عليه في 1 فبراير 2026 . 
  52. "معالم شركة ARM" . ARM . مؤرشف من الأصل في 20 أبريل 2015. تم الاطلاع عليه في 8 أبريل 2015 .
  53. ↑ أندروز، جيسون (2005). "3 مواضيع للتحقق من صحة نظام على شريحة (SoC ) لبنية ARM". التحقق المشترك من الأجهزة والبرامج لتصميم نظام على شريحة (SoC) من ARM . أكسفورد، المملكة المتحدة: إلسيفير . ص 69. ISBN  0-7506-7730-9بدأت شركة ARM كفرع لشركة Acorn Computer في كامبريدج، إنجلترا، بتأسيس مشروع مشترك بين Acorn وApple وVLSI Technology. وقد قام فريق مكون من اثني عشر موظفًا بتصميم أول معالج دقيق من ARM بين عامي 1983 و1985.
  54. ويبر، جوناثان (28 نوفمبر 1990). "آبل تنضم إلى أكورن وشركة VLSI في مشروع لتصنيع الرقائق" . صحيفة لوس أنجلوس تايمز . لوس أنجلوس . تاريخ الاسترجاع: 29 مايو 2026. استثمرت آبل حوالي 3 ملايين دولار (ما يقارب 1.5 مليون جنيه إسترليني) مقابل حصة 30% في الشركة، التي تحمل اسم Advanced Risc Machines Ltd. (ARM) [...]
  55. "معلومات أساسية عن شركة ARM" (ملف PDF) . ARM . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 4 أكتوبر 2006.
  56. مونتانارو، جيمس؛ وآخرون (1997). "معالج دقيق CMOS RISC بتردد 160 ميجاهرتز، و32 بت، واستهلاك طاقة 0.5 واط" (ملف PDF) . المجلة التقنية الرقمية . 9 (1): 49-62 . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 18 يناير 2024. 
  57. ديمون، بول (9 نوفمبر 2000). "سباق ARM نحو الهيمنة العالمية على الأنظمة المدمجة" . تقنيات العالم الحقيقي . تم الاسترجاع في 6 أكتوبر 2015 .
  58. "مسيرة الآلات" . technologyreview.com . مجلة إم آي تي ​​للتكنولوجيا . 20 أبريل 2010. مؤرشف من الأصل في 16 أكتوبر 2015. تم الاطلاع عليه في 6 أكتوبر 2015 .
  59. كرازيت، توم (3 أبريل 2006). "مسلح لغرفة المعيشة" . سي نت.
  60. روبنسون، تريسي (12 فبراير 2014). "الاحتفال بشحن 50 مليار شريحة تعمل بمعالجات ARM" . مجتمع ARM المتصل . مؤرشف من الأصل في 20 ديسمبر 2015. تم الاطلاع عليه في 31 يناير 2016 .
  61. موري، سارة (3 مارس 2014). "وصول ARM: إنجاز 50 مليار شريحة" . برودكوم . مؤرشف من الأصل في 16 سبتمبر 2015.
  62. براون، إريك (10 أغسطس 2009). "حاسوب محمول صغير بمعالج ARM مزود بلوحة قابلة للفصل" . LinuxDevices . تم الاطلاع عليه بتاريخ 19 أغسطس 2009 .
  63. كلارك، بيتر (7 يناير 2016). "أمازون تبيع الآن رقائق ARM الخاصة بها" . إي إي تايمز . تم الاطلاع عليه بتاريخ 29 مايو 2016 .
  64. «شركة ماكوم تُكمل بنجاح عملية الاستحواذ على شركة أبلايد مايكرو» (بيان صحفي). ماكوم . تم الاطلاع عليه بتاريخ 3 يوليو 2026 .
  65. فروموسانو، أندريه. "تفاصيل ARM مبنية على ترخيص تقنية ARM Cortex" . AnandTech . مؤرشف من الأصل في 31 مايو 2016. تم الاطلاع عليه في 26 مايو 2019 .
  66. كاتريس، إيان. "الوصول المرن لمعالجات ARM: تصميم النظام على شريحة قبل إنفاق المال" . أناند تك . مؤرشف من الأصل في 16 يوليو 2019. تم الاطلاع عليه في 9 أكتوبر 2019 .
  67. "الأسئلة الشائعة حول الوصول المرن من ARM" . ARM . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  68. نولتينغ، ستيفان (15 مايو 2012). "نظام معالج STORM CORE" (ملف PDF) . OpenCores . مؤرشف من النسخة الأصلية (ملف PDF) في 13 سبتمبر 2013.
  69. ZAP على GitHub
  70. "دعم منتج Cortex-M23" . ARM . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  71. "دعم منتج Cortex-M33" . ARM . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  72. "معمارية ARMv8-M تُبسط الأمن للأنظمة المدمجة الذكية" . ARM . تم الاطلاع عليه بتاريخ 10 نوفمبر 2015 .
  73. شركة Arm المحدودة. "معماريات M-Profile" . Arm | هندسة العالم الرقمي . تم الاطلاع عليه بتاريخ 29 أغسطس 2023 .
  74. "معمارية ARMv8-R" . تم الاطلاع عليه بتاريخ 10 يوليو 2015 .
  75. كراسك، سيمون (أكتوبر 2013). "معمارية ARM Cortex-R" (ملف PDF) . شركة Arm Holdings. مؤرشف من الأصل (ملف PDF) في 6 أبريل 2014. تم الاطلاع عليه في 1 فبراير 2014 .
  76. سميث، رايان (20 سبتمبر 2016). "شركة ARM تعلن عن معالج Cortex-R52: معالج حتمي وآمن، لأنظمة مساعدة السائق المتقدمة (ADAS) وغيرها" . AnandTech . مؤرشف من الأصل في 21 سبتمبر 2016. تم الاطلاع عليه في 20 سبتمبر 2016 .
  77. "معالج Cortex-A32" . ARM . تم الاطلاع عليه بتاريخ 10 أكتوبر 2019 .
  78. "معالج Cortex-A35" . ARM . تم الاطلاع عليه بتاريخ 10 نوفمبر 2015 .
  79. ١ ٢ "أطلقت شركة ARM سلسلة معالجات Cortex-A50، وهي المعالجات الأكثر كفاءة في استهلاك الطاقة في العالم من فئة 64 بت" (بيان صحفي). شركة Arm Holdings . تاريخ الاطلاع: 31 أكتوبر 2012 .
  80. "معالج Cortex-A72" . ARM . تم الاطلاع عليه بتاريخ 10 يوليو 2015 .
  81. "معالج Cortex-A73" . ARM . تم الاطلاع عليه بتاريخ 2 يونيو 2016 .
  82. "معمارية ARMv8-A" . تم الاطلاع عليه بتاريخ 10 يوليو 2015 .
  83. "معالج Cavium Thunder X يرفع عدد أنوية ARM إلى 48 على شريحة واحدة" . Semiaccurate . SemiAccurate . 3 يونيو 2014. مؤرشف من الأصل في 6 مارس 2018. تم الاطلاع عليه في 9 ديسمبر 2014 .
  84. "كافيوم في مؤتمر الحوسبة الفائقة 2014" . ياهو فاينانس . 17 نوفمبر 2014. مؤرشف من الأصل في 16 أكتوبر 2015. تم الاطلاع عليه في 15 يناير 2017 .
  85. بيرت، جيف (17 نوفمبر 2014). "كراي ستقيّم رقائق ARM في حواسيبها العملاقة" . eWeek .
  86. "سامسونج تعلن عن معالج Exynos 8890 مع مودم من الفئة 12/13 ووحدة معالجة مركزية مخصصة" . AnandTech . مؤرشف من الأصل بتاريخ 12 نوفمبر 2015.
  87. "معالج Cortex-A34" . ARM . تم الاطلاع عليه بتاريخ 10 أكتوبر 2019 .
  88. "D21500 [ AARCH64 ] إضافة دعم لـ Broadcom Vulcan" . reviews.llvm.org .
  89. "معالج Cortex-A55" . ARM . تم الاطلاع عليه بتاريخ 29 مايو 2017 .
  90. "معالج Cortex-A75" . ARM . تم الاطلاع عليه بتاريخ 29 مايو 2017 .
  91. "دعم منتج Cortex-A76" . ARM . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  92. بيرينيس مان (أبريل 2017). "معمارية ARM - ARMv8.2 - تطور وإصدار" . community.ARM.com .
  93. فروموسانو، أندريه. "سامسونج تعلن عن معالج Exynos 9825 SoC: أول شريحة سيليكون بتقنية 7 نانومتر EUV" . AnandTech . مؤرشف من الأصل في 7 أغسطس 2019. تم الاطلاع عليه في 11 أكتوبر 2019 .
  94. «بدأت فوجيتسو بإنتاج مليارات العمليات الحسابية الفائقة في اليابان باستخدام أقوى معالج ARM، وهو A64FX» . أخبار تكنولوجيا المعلومات الصينية . مؤرشف من الأصل في 20 يونيو 2019. تم الاطلاع عليه في 17 أغسطس 2019. شريحة ARMv8 SVE (امتداد المتجهات القابل للتوسع)، التي تستخدم نظام الفاصلة العائمة 512 بت.
  95. "Cortex-A65AE | وحدة معالجة مركزية متعددة الخيوط لمهام السيارات بالغة الأهمية للسلامة" . ARM . تم الاطلاع عليه بتاريخ 29 مايو 2026. يمكن لوحدة المعالجة المركزية تنفيذ خيطين بالتوازي في كل دورة . يمكن أن يكون كل خيط عند مستويات استثناء مختلفة، ويمكن تشغيله على أنظمة تشغيل مختلفة.
  96. فروموسانو، أندريه (16 مارس 2020). "مارفل تعلن عن ThunderX3: معالج خادم ARM من الجيل الثالث بـ 96 نواة و384 خيطًا" . AnandTech . مؤرشف من الأصل في 16 مارس 2020. تم الاطلاع عليه في 26 مارس 2020 .
  97. "AArch64: إضافة دعم لمعالجات Apple الأحدث" . GitHub . 22 سبتمبر 2022. تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  98. "ميزات جديدة لبنية Armv8-A - مدونة البنى والمعالجات - مدونات مجتمع Arm - مجتمع Arm" . community.arm.com . 21 سبتمبر 2020. تم الاطلاع عليه بتاريخ 28 ديسمبر 2021 .
  99. "دعم حالة تنفيذ ARM 32/64 بت (Aarch32/AArch64) لوحدات المعالجة المركزية ARM" . developer.arm.com . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  100. "يُقدّم الإصدار 9 من Arm حلولاً لتلبية الاحتياجات المستقبلية للذكاء الاصطناعي والأمن والحوسبة المتخصصة" . Arm . تم الاطلاع عليه بتاريخ 16 أغسطس 2021 .
  101. "أول معالجات Armv9 Cortex للحوسبة الاستهلاكية" . community.arm.com . 25 مايو 2021. تم الاطلاع عليه بتاريخ 16 أغسطس 2021 .
  102. "دليل المرجع التقني الأساسي لـ Arm Neoverse V3" . developer.arm.com . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  103. "دليل المرجع التقني لنواة Arm Cortex-X925" . developer.arm.com . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  104. "دعم منتج Cortex-A320" . developer.arm.com . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  105. لارابيل، مايكل (15 يونيو 2024). "إضافة دعم معالج Apple M4 إلى مُجمِّع LLVM، مما يؤكد قدراته على التعامل مع بنية مجموعة التعليمات (ISA)" . www.phoronix.com . Phoronix Media . تاريخ الاسترجاع: 29 مايو 2026 .
  106. "تطورات بنية Arm A-Profile لعام 2021 - مدونة البنى والمعالجات - مدونات مجتمع Arm - مجتمع Arm" . community.arm.com . 8 سبتمبر 2021. تم الاطلاع عليه بتاريخ 25 سبتمبر 2023 .
  107. "تطورات بنية Arm A-Profile لعام 2022 - مدونة البنى والمعالجات - مدونات مجتمع Arm - مجتمع Arm" . community.arm.com . 29 سبتمبر 2022. تم الاطلاع عليه بتاريخ 25 سبتمبر 2023 .
  108. "تطورات بنية Arm A-Profile لعام 2023 - مدونة البنى والمعالجات - مدونات مجتمع Arm - مجتمع Arm" . community.arm.com . 29 سبتمبر 2022. تم الاطلاع عليه بتاريخ 11 أكتوبر 2024 .
  109. "تطورات بنية Arm A-Profile لعام 2024 - مدونة البنى والمعالجات - مدونات مجتمع Arm - مجتمع Arm" . community.arm.com . 29 سبتمبر 2022. تم الاطلاع عليه بتاريخ 11 أكتوبر 2024 .
  110. "تطورات بنية Arm A-Profile لعام 2025 - مدونة البنى والمعالجات - مدونات مجتمع Arm - مجتمع Arm" . community.arm.com . 2 أكتوبر 2025. تم الاطلاع عليه بتاريخ 15 أكتوبر 2025 .
  111. "بطاقة الخط" (ملف PDF) . 2003. تم الاطلاع عليه في 1 أكتوبر 2012 .{{cite web}}: CS1 maint: url-status ( link )
  112. باريش، كيفن (14 يوليو 2011). "ربط مليون نواة ARM لمحاكاة الدماغ" . إي إي تايمز . تم الاطلاع عليه في 2 أغسطس 2011 .
  113. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 دليل مرجعي لهندسة ARM (PDF) ( طبعة إلكترونية). ARM. يونيو 2000. الصفحات من 5 إلى 9.  
  114. 1 2 3 4 5 6 7 8 دليل مرجعي لهندسة ARM (PDF) ( الطبعة الأولى). ARM. يوليو 2005. الصفحات 13–17 .  
  115. 1 2 3 دليل مرجعي لهندسة ARM، إصدار ARMv7-A وARMv7-R (ملف PDF) (نسخة من الطبعة ). ARM. ص. D12-2513.  
  116. دليل مرجعي لبنية Armv7-M . ARM.
  117. "نظرة عامة على مجموعة تعليمات ARMv8" (ملف PDF) . ARM. 11 نوفمبر 2011. مجموعات تعليمات A32 وT32 . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  118. دليل مرجعي لبنية Armv8-M . ARM.
  119. "وضع المعالج" . شركة آرم هولدينغز . تم الاطلاع عليه بتاريخ 26 مارس 2013 .{{cite web}}: CS1 maint: url-status ( link )
  120. "KVM/ARM" (ملف PDF) . تم الاطلاع عليه بتاريخ 29 مايو 2026 .
  121. براش، ديفيد (أغسطس 2010). امتدادات لبنية ARMv7-A . ندوة IEEE Hot Chips 22 لعام 2010 (HCS). الصفحات 1-21 . doi : 10.1109/HOTCHIPS.2010.7480070 . ISBN  978-1-4673-8875-7. S2CID 46339775 . 
  122. "كيف يدعم مُصرّف ARM الوصول غير المُحاذي؟" . 2011. مؤرشف من الأصل في 14 أكتوبر 2013. تم الاطلاع عليه في 5 أكتوبر 2013 .
  123. "الوصول غير المتوافق إلى البيانات" . تم الاطلاع عليه بتاريخ 5 أكتوبر 2013 .
  124. "مضاعف قابل للتكوين" . دليل مرجعي تقني لـ Cortex-M0 r0p0 .
  125. "دليل مرجعي لبنية ARMv7-M" . شركة Arm . تم الاطلاع عليه بتاريخ 18 يوليو 2022 .
  126. 1 2 "دليل مرجعي لهندسة ARMv7-A و ARMv7-R؛ شركة Arm Holdings" . arm.com . تم الاطلاع عليه بتاريخ 19 يناير 2013 .
  127. "سجلات حالة البرنامج" . دليل المرجع التقني ARM1156T2F-S r0p4 . تم الاطلاع عليه بتاريخ 3 يوليو 2026 .
  128. "رموز الحالة 1: علامات ورموز الحالة" . مجتمع ARM . 11 سبتمبر 2013. تم الاطلاع عليه بتاريخ 26 سبتمبر 2019 .
  129. "عدد دورات التعليمات" . دليل المرجع الفني لمعالج ARM7EJ-S .
  130. "حول منفذ الوصول للتصحيح" . دليل مرجعي تقني لمكونات CoreSight .
  131. "ملاحظة التطبيق 179 - تطوير البرمجيات المدمجة Cortex-M3" . 1.3 منفذ الوصول للتصحيح (DAP).
  132. أندرسون، مايك. "فهم خيارات تصحيح أخطاء أجهزة ARM" (ملف PDF) .
  133. "حول CMSIS-DAP" . دليل مستخدم مصحح أخطاء CMSIS-DAP . مؤرشف من الأصل في 14 يوليو 2012.
  134. "CMSIS-DAP" .
  135. "امتدادات مجموعة تعليمات ARM DSP" . arm.com . مؤرشف من الأصل في 14 أبريل 2009. تم الاطلاع عليه في 18 أبريل 2009 .
  136. 1 2 كلارك، بيتر (3 مايو 1999). "EPF: ARC وARM تضيفان امتدادات معالجة الإشارات الرقمية إلى أنوية RISC الخاصة بهما" . EE Times . تم الاسترجاع في 15 مارس 2024 .
  137. تورلي، جيم (18 نوفمبر 1996). "معالج ARM يضبط أداء بيكولو لمعالجة الإشارات الرقمية" (ملف PDF) . تقرير المعالجات الدقيقة . تم الاطلاع عليه في 15 مارس 2024 .
  138. "DSP & SIMD" . تم الاطلاع عليه بتاريخ 10 يوليو 2015 .
  139. "دليل المرجع الفني لـ ARM7TDMI" (ملف PDF) . الصفحة 2. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 26 ديسمبر 2013. 
  140. جاغار، ديف (1996). دليل مرجعي لهندسة ARM . برنتيس هول. الصفحات 6-1 . ISBN  978-0-13-736299-8.
  141. ويليس، ناثان (10 يونيو 2015). "إحياء بنية SuperH" . LWN.net .
  142. "بنية مجموعة تعليمات معالج ARM" . ARM.com. مؤرشف من الأصل في 15 أبريل 2009. تم الاطلاع عليه في 18 أبريل 2009 .
  143. "شركة ARM تستهدف معالجات uCs وASSPs وSoCs" . موقع Linuxdevices.com. ١٩ أكتوبر ٢٠٠٤. تاريخ الاطلاع: ٣ يوليو ٢٠٢٦ .
  144. "مركز معلومات ARM" . Infocenter.arm.com . تم الاطلاع عليه بتاريخ 18 أبريل 2009 .
  145. "جازيل" . شركة ARM المحدودة. مؤرشف من الأصل في 2 يونيو 2017.
  146. هالفيل، توم ر. (2005). "معالج ARM يُعزز مُترجمات جافا: تعليمات Thumb-2EE الجديدة ذات 16 بت تُحافظ على ذاكرة النظام" (ملف PDF) . مُؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 5 أكتوبر 2007.
  147. دليل مرجعي لهندسة ARM، إصدار Armv7-A و Armv7-R، الإصدار Cb، القسم A2.10، 25 يوليو 2012.
  148. "مجموعة أدوات مُجمِّع ARM باستخدام المُجمِّع - المعالج المُساعد VFP" . ARM.com . تم الاطلاع عليه بتاريخ 20 أغسطس 2014 .
  149. "توجيهات VFP وتدوين المتجهات" . ARM.com . تم الاطلاع عليه بتاريخ 21 نوفمبر 2011 .
  150. 1 2 "الاختلافات بين معالج ARM Cortex-A8 ومعالج Cortex-A9" . شيرفين إمامي . تم الاطلاع عليه بتاريخ 21 سبتمبر 2025 .
  151. "ورقة بيانات FPA10" ( ملف PDF) . chrisacorns.computinghistory.org.uk . شركة GEC Plessey لأشباه الموصلات. 11 يونيو 1993. تاريخ الاطلاع: 26 نوفمبر 2020. فيما يتعلق بمعيار IEEE 754-1985، تحقق FPA التوافق في العمليات الحسابية أحادية الدقة [...] في بعض الأحيان، قد ينتج عن عمليات الضرب ذات الدقة المزدوجة والممتدة خطأ بمقدار وحدة أو وحدتين في أقل خانة معنوية من الجزء الكسري.
  152. 1 2 "دليل المرجع التقني لمعالج Cortex-A7 MPCore - 1.3 الميزات" . ARM . تم الاطلاع عليه بتاريخ 11 يوليو 2014 .
  153. "ArmHardFloatPort – Debian Wiki" . Wiki.debian.org. 20 أغسطس 2012. تم الاطلاع عليه بتاريخ 8 يناير 2014 .
  154. "معالج Cortex-A9" . arm.com . تم الاطلاع عليه بتاريخ 21 نوفمبر 2011 .
  155. "حول معالج Cortex-A9 NEON MPE" . arm.com . تم الاطلاع عليه بتاريخ 21 نوفمبر 2011 .
  156. "US20050125476A1" .
  157. "US20080141004A1" .
  158. "خيارات ARM" . دليل مجموعة مترجمات GNU . تم الاطلاع عليه بتاريخ 20 سبتمبر 2019 .
  159. Ne10: مشروع مكتبة برمجية مفتوحة المصدر ومحسّنة لبنية ARM على GitHub
  160. ييو، جوزيف. "مقدمة إلى بنية ARMv8.1-M" (ملف PDF) . تم الاطلاع عليه بتاريخ 18 يوليو 2022 .
  161. "بنية الأجهزة TrustZone" . مطور ARM .
  162. "جينود - استكشاف تقنية ARM TrustZone" . تم الاطلاع عليه بتاريخ 10 يوليو 2015 .
  163. «شركة ARM تعلن عن توفر حلول برمجية لإدارة الحقوق الرقمية للمستهلكين على الأجهزة المحمولة، تعتمد على تقنية ARM TrustZone» (بيان صحفي). News.thomasnet.com . تاريخ الاطلاع: 18 أبريل 2009 .
  164. لاجيني ماينب (8 أكتوبر 2015). "بتس، من فضلك!: استغلال كامل لثغرة TrustZone في MSM8974" . بتس، من فضلك! . تم الاطلاع عليه في 3 مايو 2016 .
  165. دي شين. "مهاجمة 'الجوهر الموثوق به' باستغلال ثغرة TrustZone على نظام أندرويد" (ملف PDF) . ملخصات بلاك هات . تم الاطلاع عليه بتاريخ 3 مايو 2016 .
  166. "برنامج ARM TrustZone وبرنامج ARM Hypervisor مفتوح المصدر" . Open Virtualization. مؤرشف من الأصل بتاريخ 14 يونيو 2013. تم الاطلاع عليه بتاريخ 14 يونيو 2013 .
  167. "تقنية AMD الآمنة" . AMD . مؤرشف من الأصل بتاريخ 23 يوليو 2016. تم الاطلاع عليه بتاريخ 6 يوليو 2016 .
  168. سميث، رايان (13 يونيو 2012). "معالجات AMD APU لعام 2013 ستتضمن معالج ARM Cortex A5 لإمكانيات Trustzone" . AnandTech . مؤرشف من الأصل في 15 يونيو 2012. تم الاطلاع عليه في 6 يوليو 2016 .
  169. 1 2 شيمبي، أناند لال (29 أبريل 2014). "معاينة معمارية وأداء AMD Beema/Mullins" . أناند تك . مؤرشف من الأصل في 23 أبريل 2015. تم الاطلاع عليه في 6 يوليو 2016 .
  170. والتون، جاريد (4 يونيو 2014). "شركة AMD تطلق معالجات Kaveri APUs للأجهزة المحمولة" . AnandTech . مؤرشف من الأصل في 6 يونيو 2014. تم الاطلاع عليه في 6 يوليو 2016 .
  171. "جذر الثقة" (ورقة بيضاء). سامسونج للإلكترونيات . أبريل 2016.
  172. "العلاقة بين تقنية ARM TrustZone لمعالجات ARMv8-M و ARM Cortex-A" . ARM Developer .
  173. "دليل مرجعي لهندسة ARM" (ملف PDF) . الصفحات B4-8. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 6 فبراير 2009. تمت إضافة بتات APX وXN (عدم التنفيذ مطلقًا) في VMSAv6 [هندسة نظام الذاكرة الافتراضية]. 
  174. دليل مرجعي لهندسة ARM، إصدار ARMv7-A و ARMv7-R . شركة ARM المحدودة.
  175. "Cortex-A65AE" . مطور ARM . تم الاطلاع عليه بتاريخ 26 أبريل 2019 .
  176. «أبلايد مايكرو تستعرض أول معالج ARM v8 Core 64 بت في العالم» (بيان صحفي). أبلايد مايكرو. 28 أكتوبر 2011. تاريخ الاطلاع: 11 فبراير 2014 .
  177. "معالج Exynos 5433 من سامسونج هو معالج ARM SoC من طراز A57/A53" . AnandTech . مؤرشف من الأصل بتاريخ 23 أبريل 2025. تم الاطلاع عليه بتاريخ 17 سبتمبر 2014 .
  178. "دليل المرجع التقني لمعالج ARM Cortex-A53 MPCore: ملحق التشفير" . ARM . تم الاطلاع عليه بتاريخ 11 سبتمبر 2016 .
  179. 1 2 "تأثير مستويات الاستثناء المُطبقة" . تعرّف على بنية النظام - نموذج استثناء AArch64 . Arm.
  180. "Cortex-A32" . مطور Arm .
  181. "Cortex-A34" . مطور Arm .
  182. "Cortex-A72" . مطور Arm .
  183. فروموسانو، أندريه (3 سبتمبر 2020). "شركة ARM تعلن عن معالج Cortex-R82: أول معالج 64 بت يعمل في الوقت الحقيقي" . موقع AnandTech . مؤرشف من الأصل في 3 سبتمبر 2020.
  184. فروموسانو، أندريه (30 مارس 2021). "شركة Arm تعلن عن معمارية Armv9: SVE2، والأمن، والعقد القادم" . AnandTech . مؤرشف من الأصل في 30 مارس 2021.
  185. هارود، أليكس (30 مارس 2021). "حل شركة Arm لتلبية الاحتياجات المستقبلية للذكاء الاصطناعي والأمن والحوسبة المتخصصة هو الإصدار 9" (بيان صحفي). شركة Arm Holdings .
  186. ألكورن، بول (25 مايو 2021). "شركة Arm تُطلق معالجات Armv9 Cortex-X2 وA710 وA510، ووحدات معالجة رسومية جديدة من نوع Mali" . موقع Tom's Hardware . تاريخ الاسترجاع: 29 أكتوبر 2025 .
  187. سيمز، غاري (25 مايو 2021). "نظرة معمقة على معالجات Arm Cortex-X2 وA710 وA510: شرح تصميمات معالجات Armv9 الجديدة" . موقع Android Authority . تاريخ الاسترجاع: 29 أكتوبر 2025 .
  188. "برنامج الامتثال الجاهز للنظام" . Arm .
  189. "بنية نظام Arm الأساسية" . Arm .
  190. "بنية نظام الخادم الأساسي من Arm" . Arm .
  191. "متطلبات تشغيل Arm الأساسية" . Arm .
  192. "متطلبات أمان التمهيد الأساسي" . Arm .
  193. "مواصفات متطلبات جاهزية نظام Arm" . Arm .
  194. "سوار جاهز لنظام الذراع" . الذراع .
  195. "Arm SystemReady Devicetree Band" . Arm .
  196. أوزبورن، تشارلي. "شركة ARM تعلن عن بنية أمان PSA لأجهزة إنترنت الأشياء" . ZDNet.
  197. 1 2 وونغ، ويليام (25 أكتوبر 2017). "هندسة أمن منصة ARM تستهدف معالج Cortex-M" . التصميم الإلكتروني . مؤرشف من الأصل في 8 مايو 2019.
  198. هوفنبرغ، ستيف (31 أكتوبر 2017). "ARM: الأمن ليس مجرد ضرورة تكنولوجية، بل هو مسؤولية اجتماعية" . أبحاث VDC . مؤرشف من الأصل في 28 سبتمبر 2023.
  199. أرماسو، لوسيان (22 فبراير 2018). "شركة ARM تكشف المزيد من التفاصيل حول بنية أمان منصة إنترنت الأشياء الخاصة بها" . موقع Tom's Hardware .
  200. ويليامز، كريس (17 أكتوبر 2018). "واجهة برمجة تطبيقات إنترنت الأشياء ARM PSA؟ سأعود قريبًا... مجموعة أدوات تقنية لتأمين الأجهزة المتصلة بالشبكة تفتح آفاقًا جديدة" . ذا ريجستر .
  201. هايز، كارولين (25 فبراير 2019). "العالم المدمج: شركة Arm تقدم عنصر أمان رابع إلى PSA" . مجلة الإلكترونيات الأسبوعية .
  202. "معتمد من PSA: بناء الثقة في إنترنت الأشياء" . معتمد من PSA .
  203. 1 2 "معتمد من PSA - بناء الثقة، بناء القيمة" . EE Times . 4 مارس 2019.
  204. "أهمية معايير ولوائح الأمن في عصر إنترنت الأشياء بقيمة 6 تريليونات دولار" . IoT Now. 16 مارس 2020.
  205. ماكجريجور، جيم (4 مارس 2019). "شركة آرم تُطلق اختبارات شهادات الأمان لإنترنت الأشياء" . فوربس .
  206. سبيد، ريتشارد (26 فبراير 2019). "Azure IoT تتجه نحو الفضاء للحفاظ على الاتصال على الحافة، بفضل Inmarsat" . TheRegister .
  207. "مواصفات نظام التشغيل OS-9" . مايكرووير . مؤرشف من الأصل في 7 يناير 2019. تم الاطلاع عليه في 29 أبريل 2014 .
  208. 1 2 "Pharos" . SourceForge . تم الاطلاع عليه بتاريخ 24 مايو 2018 .
  209. "PikeOS Safe and Secure Virtualization" . تم الاطلاع عليه بتاريخ 10 يوليو 2013 .
  210. 1 2 "أنظمة التشغيل في الوقت الحقيقي المعتمدة للسلامة - وحدات المعالجة المركزية المدعومة" .
  211. مطور، أندرويد. "تعريف توافق أندرويد 17" . source.android.com . جوجل . تم الاطلاع عليه في 5 يوليو 2026 .
  212. "منفذ منصة ARM" . opensolaris.org. مؤرشف من الأصل في 2 ديسمبر 2012. تم الاطلاع عليه في 29 ديسمبر 2012 .
  213. "برنامج Green Hills Software متعدد العارضات القائم على تقنية INTEGRITY يقدم أول حل افتراضي آمن 64 بت في صناعة الأنظمة المدمجة" . ghs.com . تاريخ الاطلاع: 14 مارس 2018 .
  214. "نظام التشغيل Enea OSE في الوقت الحقيقي لشبكات الجيل الخامس LTE-A | Enea" . enea.com . مؤرشف من الأصل في 1 يناير 2019. تم الاطلاع عليه في 17 أبريل 2018 .
  215. "الأنظمة الأساسية المدعومة" . docs.sel4.systems . تم الاطلاع عليه بتاريخ 23 نوفمبر 2018 .
  216. "منصة تطوير برمجيات QNX (SDP 7.0) | بلاك بيري QNX" . blackberry.qnx.com . تم الاطلاع عليه بتاريخ 27 يوليو 2020 .
  217. "ويند ريفر تُصدر نظام التشغيل VxWorks RTOS بنظام 64 بت" (بيان صحفي). ويند ريفر سيستمز . 28 فبراير 2011. تاريخ الاطلاع: 24 أكتوبر 2023 .
  218. ^ "مانجارو-ARM" . مانجارو ويكي . 20 يونيو 2022.
  219. تورفالدز، لينوس (1 أكتوبر 2012). "ردًا على: [ سحب GIT ] arm64: منفذ نواة لينكس" . القائمة البريدية لنواة لينكس (قائمة بريدية) . تم الاطلاع عليه في 2 مايو 2019 .
  220. لارابيل، مايكل (27 فبراير 2013). "إصدار 64 بت من أوبونتو/ديبيان يعمل بنظام ARM" . فورونيكس . تم الاطلاع عليه بتاريخ 17 أغسطس 2014 .
  221. "أخبار مشروع دبيان - 14 أغسطس 2014" . دبيان . 14 أغسطس 2014. تم الاطلاع عليه بتاريخ 8 أغسطس 2025 .
  222. "خادم أوبونتو لأنظمة ARM" . ubuntu.com .
  223. "Architectures/AArch64" . تم الاطلاع عليه بتاريخ 16 يناير 2015 .
  224. "NixOS على ARM" . تم الاطلاع عليه بتاريخ 21 مارس 2025 .
  225. "Portal:ARM/AArch64" . تم الاطلاع عليه بتاريخ 16 يناير 2015 .
  226. "ملاحظات إصدار SUSE Linux Enterprise 12 SP2" . تم الاطلاع عليه بتاريخ 11 نوفمبر 2016 .
  227. "ريد هات تُعلن عن دعم خوادم ARM لنظام ريد هات إنتربرايز لينكس" . redhat.com . تاريخ الاطلاع: 18 يناير 2019 .
  228. "تحديث مشروع بنية ARM ذات 64 بت" . مؤسسة FreeBSD. 24 نوفمبر 2014.
  229. "OpenBSD/arm64" . تم الاطلاع عليه بتاريخ 25 سبتمبر 2023 .
  230. ^ "نيت بي إس دي/arm64" . تم الاسترجاع في 5 أغسطس 2018 .
  231. " أعلنت شركتا HP وAsus عن أول أجهزة كمبيوتر تعمل بنظام Windows 10 ARM: عمر بطارية يصل إلى 20 ساعة، وشبكة LTE بسرعة جيجابت" . Ars Technica . تاريخ الاطلاع: 22 يناير 2018. يُعد هذا الإصدار الجديد من Windows 10 أول نظام تشغيل من مايكروسوفت يعمل بنظام ARM 64 بت. سيدعم تشغيل تطبيقات x86 و32 بت ARM من المتجر، وفي وقت لاحق، تطبيقات ARM 64 بت. مع ذلك، لم تُنهِ مايكروسوفت بعدُ تطوير حزمة تطوير البرامج (SDK) الخاصة بنظام ARM 64 بت. تتوفر العديد من المكونات (مثل مُجمِّع ARM 64 بت)، لكن الشركة لا تستقبل حاليًا تطبيقات ARM 64 بت المُقدمة إلى المتجر، كما لا توجد تطبيقات سطح مكتب ARM 64 بت متاحة أيضًا.
  232. حسن، مهدي (10 ديسمبر 2016). "ويندوز 10 على معالجات ARM64 يحصل على أول تطبيقاته المُجمّعة" . MSPoweruser .
  233. فيليبيديس، كاترينا (1 يونيو 2018). "VLC يصبح أحد أوائل تطبيقات ويندوز ARM64" . إنجادجيت .
  234. سويتغال، مارك (15 نوفمبر 2018). "الدعم الرسمي لتطوير ويندوز 10 على معالجات ARM" . مطور ويندوز. مدونات ويندوز . مايكروسوفت . تم الاطلاع عليه بتاريخ 17 ديسمبر 2019 .
  235. غارتنبرغ، حاييم (12 نوفمبر 2020). "نظام macOS Big Sur متاح الآن للتنزيل" . ذا فيرج . تم الاطلاع عليه بتاريخ 13 نوفمبر 2020 .
  236. كلوفر، جولي (23 يونيو 2020). "برنامج روزيتا لن يدعم تطبيقات المحاكاة الافتراضية x86 التي تعمل بنظام ويندوز" . ماك رومرز . تم الاطلاع عليه بتاريخ 13 نوفمبر 2020 .
  237. "ARM – موسوعة النبيذ الرسمية" . تم الاطلاع عليه بتاريخ 10 يوليو 2015 .
  238. "ARM64 – موسوعة النبيذ الرسمية" . تم الاطلاع عليه بتاريخ 10 يوليو 2015 .
  239. "تحديثات أمان ARM" . مطور ARM . تم الاطلاع عليه بتاريخ 24 مايو 2018 .

فهرس

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

الذراع 1

كتيبات الهندسة المعمارية

بطاقات مرجعية سريعة

تعليمات

رموز العمليات