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


وحدة المعالجة المركزية ( CPU )، والمعروفة أيضًا بالمعالج المركزي أو المعالج الرئيسي ، هي المعالج الأساسي في أي جهاز حاسوب . [ 1 ] [ 2 ] تقوم دوائرها الإلكترونية بتنفيذ تعليمات برنامج الحاسوب ، مثل العمليات الحسابية والمنطقية والتحكمية وعمليات الإدخال/الإخراج . [ 3 ] [ 4 ] [ 5 ] ويختلف هذا الدور عن دور المكونات الخارجية، مثل الذاكرة الرئيسية ودوائر الإدخال/الإخراج، [ 6 ] والمعالجات المساعدة المتخصصة مثل وحدات معالجة الرسومات ( GPUs ).
لقد تغير شكل وتصميم وتنفيذ وحدات المعالجة المركزية (CPU) بمرور الوقت، لكن آلية عملها الأساسية ظلت ثابتة تقريبًا. [ 7 ] تشمل المكونات الرئيسية لوحدة المعالجة المركزية وحدة الحساب والمنطق (ALU) التي تُجري العمليات الحسابية والمنطقية ، وسجلات المعالج التي تُزود وحدة الحساب والمنطق بالمعاملات وتخزن نتائج عملياتها، ووحدة تحكم تُنسق عمليات جلب البيانات (من الذاكرة) وفك تشفيرها وتنفيذها (للتعليمات) من خلال توجيه العمليات المنسقة لوحدة الحساب والمنطق والسجلات والمكونات الأخرى. تُخصص وحدات المعالجة المركزية الحديثة مساحة كبيرة من أشباه الموصلات للذاكرة المؤقتة والتوازي على مستوى التعليمات لزيادة الأداء، ولأوضاع وحدة المعالجة المركزية لدعم أنظمة التشغيل والمحاكاة الافتراضية .
تُصنع معظم وحدات المعالجة المركزية الحديثة على معالجات دقيقة من نوع الدوائر المتكاملة (IC) ، حيث تحتوي شريحة IC واحدة على وحدة معالجة مركزية واحدة أو أكثر. تُسمى شرائح المعالجات الدقيقة التي تحتوي على وحدات معالجة مركزية متعددة بالمعالجات متعددة النوى ( MCPs ). [ 8 ] كما يمكن أن تدعم وحدات المعالجة المركزية الفعلية، والتي تُسمى أنوية المعالج ، تعدد الخيوط لدعم تعدد الخيوط على مستوى وحدة المعالجة المركزية. [ 9 ]
قد تحتوي الدائرة المتكاملة التي تحتوي على وحدة المعالجة المركزية أيضًا على ذاكرة وواجهات طرفية ومكونات أخرى للكمبيوتر؛ [ 10 ] تسمى هذه الأجهزة المتكاملة بشكل مختلف بوحدات التحكم الدقيقة أو الأنظمة على رقاقة (SoCs).
تاريخ

كان لا بد من إعادة توصيل الأسلاك في الحواسيب المبكرة، مثل إينياك، لأداء مهام مختلفة، مما أدى إلى تسمية هذه الأجهزة بـ"الحواسيب ذات البرامج الثابتة". [ 11 ] وقد شاع استخدام مصطلح "وحدة المعالجة المركزية" منذ عام 1955. [ 12 ] [ 13 ] وبما أن مصطلح "وحدة المعالجة المركزية" يُعرَّف عمومًا بأنه جهاز لتنفيذ البرامج (برامج الحاسوب)، فإن أولى الأجهزة التي يمكن تسميتها بحق وحدات معالجة مركزية ظهرت مع ظهور الحواسيب ذات البرامج المخزنة .
كانت فكرة الحاسوب ذي البرنامج المخزن موجودةً بالفعل في تصميم حاسوب إينياك (ENIAC) الذي ابتكره جون بريسبر إيكرت وجون ويليام موتشلي ، ولكن تم حذفها في البداية لتسريع إنجازه. [ 14 ] في 30 يونيو 1945، وقبل صنع إينياك، وزّع عالم الرياضيات جون فون نيومان ورقةً بعنوان " المسودة الأولى لتقرير عن إيدفاك" (EDVAC) . كانت هذه الورقة بمثابة مخطط أولي لحاسوب ذي برنامج مخزن، والذي اكتمل في نهاية المطاف في أغسطس 1949. [ 15 ] صُمم إيدفاك لتنفيذ عددٍ محدد من التعليمات (أو العمليات) من أنواعٍ مختلفة. والجدير بالذكر أن البرامج المكتوبة لإيدفاك كان من المقرر تخزينها في ذاكرة حاسوب عالية السرعة بدلاً من تحديدها بواسطة التوصيلات السلكية للحاسوب. [ 16 ] وقد تغلب هذا على أحد القيود الشديدة التي واجهها إينياك، ألا وهو الوقت والجهد الكبيران المطلوبان لإعادة تهيئة الحاسوب لأداء مهمة جديدة. [ 17 ] بفضل تصميم فون نيومان، كان من الممكن تغيير البرنامج الذي يشغله جهاز EDVAC ببساطة عن طريق تغيير محتويات الذاكرة. لم يكن EDVAC أول حاسوب يعمل بنظام البرنامج المخزن؛ فقد شغّل حاسوب Manchester Baby ، وهو حاسوب تجريبي صغير الحجم يعمل بنظام البرنامج المخزن، أول برنامج له في 21 يونيو 1948 [ 18 ] ، وشغّل حاسوب Manchester Mark 1 أول برنامج له خلال ليلة 16-17 يونيو 1949. [ 19 ]
كانت وحدات المعالجة المركزية (CPU) في بداياتها عبارة عن تصميمات مخصصة تُستخدم كجزء من حاسوب أكبر، وأحيانًا يكون مميزًا. [ 20 ] ومع ذلك، فقد أفسحت هذه الطريقة في تصميم وحدات المعالجة المركزية المخصصة لتطبيق معين المجال إلى حد كبير لتطوير معالجات متعددة الأغراض تُنتج بكميات كبيرة. بدأ هذا التوحيد القياسي في عصر الحواسيب المركزية والحواسيب الصغيرة ذات الترانزستورات المنفصلة ، وتسارع بشكل كبير مع انتشار الدوائر المتكاملة (IC). سمحت الدوائر المتكاملة بتصميم وتصنيع وحدات معالجة مركزية بالغة التعقيد بدقة تصل إلى النانومترات . [ 21 ] وقد أدى كل من تصغير وحدات المعالجة المركزية وتوحيدها إلى زيادة وجود الأجهزة الرقمية في الحياة المعاصرة إلى ما هو أبعد بكثير من التطبيق المحدود لأجهزة الحوسبة المخصصة. تظهر المعالجات الدقيقة الحديثة في الأجهزة الإلكترونية التي تتراوح من السيارات [ 22 ] إلى الهواتف المحمولة، [ 23 ] وأحيانًا حتى في الألعاب. [ 24 ] [ 25 ]
على الرغم من أن الفضل يُنسب في الغالب إلى فون نيومان في تصميم الحاسوب ذي البرنامج المخزن نظرًا لتصميمه لجهاز EDVAC، والذي عُرف باسم بنية فون نيومان ، إلا أن آخرين سبقوه، مثل كونراد تسوزه ، اقترحوا ونفذوا أفكارًا مماثلة. [ 26 ] كما استخدمت بنية هارفارد ، كما في جهاز هارفارد مارك 1 ، الذي أُنجز قبل EDVAC، [ 27 ] [ 28 ] تصميمًا للبرنامج المخزن باستخدام شريط ورقي مثقوب بدلًا من الذاكرة الإلكترونية. [ 29 ] ويكمن الاختلاف الرئيسي بينهما في أن بنية هارفارد تفصل بين تخزين ومعالجة تعليمات وحدة المعالجة المركزية والبيانات، بينما تستخدم بنية فون نيومان نفس مساحة الذاكرة لكليهما. [ 30 ] تعتمد معظم وحدات المعالجة المركزية الحديثة بشكل أساسي على تصميم فون نيومان، ولكن تُستخدم أيضًا وحدات معالجة مركزية ذات بنية هارفارد، خاصة في التطبيقات المدمجة؛ فعلى سبيل المثال، تُعد وحدات التحكم الدقيقة Atmel AVR معالجات ذات بنية هارفارد. [ 31 ]
قبل اختراع الترانزستور، كانت المرحلات والصمامات المفرغة (الصمامات الحرارية) تُستخدم بشكل شائع كعناصر تبديل؛ [ 32 ] [ 33 ] ويتطلب الحاسوب الفعال آلافًا أو عشرات الآلاف من أجهزة التبديل. وتعتمد السرعة الإجمالية للنظام على سرعة هذه المفاتيح. كانت حواسيب الصمامات المفرغة ، مثل EDVAC، تعمل بمعدل ثماني ساعات بين الأعطال، بينما كانت حواسيب المرحلات - مثل Harvard Mark I الأبطأ ولكن الأقدم - نادرة الأعطال. [ 13 ] في النهاية، هيمنت وحدات المعالجة المركزية القائمة على الصمامات لأن مزايا السرعة الكبيرة التي توفرها كانت تفوق عمومًا مشاكل الموثوقية. عملت معظم وحدات المعالجة المركزية المتزامنة المبكرة هذه بترددات ساعة منخفضة مقارنةً بتصاميم الإلكترونيات الدقيقة الحديثة. كانت ترددات إشارة الساعة التي تتراوح من 100 كيلوهرتز إلى 4 ميجاهرتز شائعة جدًا في ذلك الوقت، وكانت محدودة إلى حد كبير بسرعة أجهزة التبديل التي بُنيت بها. [ 34 ]
وحدات المعالجة المركزية الترانزستورية

ازدادت تعقيدات تصميم وحدات المعالجة المركزية مع تطور التقنيات التي سهّلت بناء أجهزة إلكترونية أصغر حجمًا وأكثر موثوقية. وكان أول هذه التحسينات ظهور الترانزستور . ففي خمسينيات وستينيات القرن الماضي، لم تعد وحدات المعالجة المركزية التي تعمل بالترانزستورات مضطرة إلى الاعتماد على عناصر تبديل ضخمة وغير موثوقة وهشة، مثل الصمامات المفرغة والمرحلات . [ 35 ] وبفضل هذا التطور، تم بناء وحدات معالجة مركزية أكثر تعقيدًا وموثوقية على لوحة دوائر مطبوعة واحدة أو عدة لوحات تحتوي على مكونات منفصلة.
في عام 1964، قدمت شركة IBM بنية حاسوبها IBM System/360 ، التي استُخدمت في سلسلة من الحواسيب القادرة على تشغيل البرامج نفسها بسرعات وأداءات مختلفة. [ 36 ] كان هذا إنجازًا هامًا في وقت كانت فيه معظم الحواسيب الإلكترونية غير متوافقة مع بعضها البعض، حتى تلك المصنعة من قِبل الشركة نفسها. ولتسهيل هذا التحسين، استخدمت IBM مفهوم البرنامج المصغر (الذي يُطلق عليه غالبًا "الرمز المصغر")، والذي لا يزال يُستخدم على نطاق واسع في وحدات المعالجة المركزية الحديثة. [ 37 ] لاقت بنية System/360 رواجًا كبيرًا لدرجة أنها هيمنت على سوق الحواسيب المركزية لعقود، وتركت إرثًا لا تزال تُواصله حواسيب حديثة مماثلة مثل IBM zSeries . [ 38 ] [ 39 ] في عام 1965، قدمت شركة Digital Equipment Corporation (DEC) حاسوبًا مؤثرًا آخر موجهًا إلى أسواق العلوم والبحث العلمي، وهو PDP-8 . [ 40 ]
تميزت الحواسيب القائمة على الترانزستورات بعدة مزايا واضحة مقارنةً بسابقاتها. فإلى جانب تعزيز الموثوقية وخفض استهلاك الطاقة، سمحت الترانزستورات لوحدات المعالجة المركزية بالعمل بسرعات أعلى بكثير نظرًا لقصر زمن التبديل فيها مقارنةً بالصمامات الإلكترونية أو المرحلات. [ 41 ] وقد ساهمت الموثوقية العالية والسرعة الفائقة لعناصر التبديل، التي كانت في ذلك الوقت عبارة عن ترانزستورات بشكل شبه حصري، في سهولة الوصول إلى ترددات ساعة وحدة المعالجة المركزية التي تصل إلى عشرات الميغاهرتز خلال تلك الفترة. [ 42 ] بالإضافة إلى ذلك، ومع الاستخدام المكثف لوحدات المعالجة المركزية القائمة على الترانزستورات المنفصلة والدوائر المتكاملة، بدأت تظهر تصميمات جديدة عالية الأداء مثل معالجات المتجهات أحادية التعليمات ومتعددة البيانات (SIMD) . [ 43 ] وقد أدت هذه التصميمات التجريبية المبكرة لاحقًا إلى ظهور عصر الحواسيب العملاقة المتخصصة ، مثل تلك التي أنتجتها شركتا كراي وفوجيتسو . [ 43 ]
وحدات المعالجة المركزية للتكامل على نطاق صغير

خلال هذه الفترة، طُوِّرت طريقة لتصنيع العديد من الترانزستورات المترابطة في حيز صغير. سمحت الدائرة المتكاملة (IC) بتصنيع عدد كبير من الترانزستورات على شريحة واحدة من أشباه الموصلات . في البداية، اقتصر تصغير الدوائر الرقمية الأساسية غير المتخصصة، مثل بوابات NOR، إلى دوائر متكاملة. [ 44 ] تُعرف وحدات المعالجة المركزية (CPU) المبنية على هذه الدوائر المتكاملة باسم أجهزة "التكامل على نطاق صغير" (SSI). عادةً ما تحتوي دوائر SSI المتكاملة، مثل تلك المستخدمة في حاسوب توجيه أبولو ، على ما يصل إلى بضع عشرات من الترانزستورات. يتطلب بناء وحدة معالجة مركزية كاملة من دوائر SSI المتكاملة آلاف الشرائح الفردية، لكنها مع ذلك تستهلك مساحة وطاقة أقل بكثير من تصميمات الترانزستورات المنفصلة السابقة. [ 45 ]
استخدم نظام IBM System/370 ، الذي حلّ محل نظام System/360، دوائر متكاملة من نوع SSI بدلاً من وحدات الترانزستور المنفصلة من شركة Solid Logic Technology . [ 46 ] [ 47 ] كما تحوّل نظاما DEC PDP-8 /I وKI10 PDP-10 من الترانزستورات الفردية المستخدمة في PDP-8 وKA PDP-10 إلى دوائر متكاملة من نوع SSI، [ 48 ] أما سلسلة PDP-11 الشهيرة للغاية فقد صُممت في الأصل باستخدام دوائر متكاملة من نوع SSI، ولكن تم استبدالها لاحقًا بمكونات LSI بمجرد أن أصبحت هذه المكونات عملية.
وحدات المعالجة المركزية للتكامل واسع النطاق
نشر لي بويسل مقالات مؤثرة، من بينها "بيان" عام 1967، وصف فيه كيفية بناء ما يُعادل حاسوبًا مركزيًا 32 بت باستخدام عدد قليل نسبيًا من دوائر التكامل واسعة النطاق (LSI). [ 49 ] [ 50 ] كانت الطريقة الوحيدة لبناء رقائق LSI، وهي رقائق تحتوي على مئة بوابة أو أكثر، هي استخدام عملية تصنيع أشباه الموصلات المعدنية المؤكسدة (MOS) (سواءً كانت منطق PMOS أو NMOS أو CMOS ). مع ذلك، استمرت بعض الشركات في بناء المعالجات باستخدام رقائق منطق الترانزستور ثنائي القطب (TTL) لأن ترانزستورات الوصلة ثنائية القطب كانت أسرع من رقائق MOS حتى سبعينيات القرن العشرين (استمرت بعض الشركات، مثل داتابوينت، في بناء المعالجات باستخدام رقائق TTL حتى أوائل ثمانينيات القرن العشرين). [ 50 ] في ستينيات القرن العشرين، كانت دوائر MOS المتكاملة أبطأ، واعتُبرت في البداية مفيدة فقط في التطبيقات التي تتطلب طاقة منخفضة. [ 51 ] [ 52 ] بعد تطوير تقنية MOS ذات البوابة السيليكونية بواسطة فيديريكو فاجين في شركة فيرتشايلد لأشباه الموصلات في عام 1968، حلت دوائر MOS المتكاملة إلى حد كبير محل TTL ثنائية القطب كتقنية رقائق قياسية في أواخر السبعينيات. [ 53 ]
مع تطور تكنولوجيا الإلكترونيات الدقيقة ، ازداد عدد الترانزستورات الموضوعة على الدوائر المتكاملة، مما قلل عدد الدوائر المتكاملة الفردية اللازمة لوحدة معالجة مركزية كاملة. رفعت دوائر MSI وLSI المتكاملة عدد الترانزستورات إلى المئات، ثم إلى الآلاف. وبحلول عام 1968، انخفض عدد الدوائر المتكاملة المطلوبة لبناء وحدة معالجة مركزية كاملة إلى 24 دائرة متكاملة من ثمانية أنواع مختلفة، تحتوي كل منها على ما يقارب 1000 ترانزستور MOSFET. [ 54 ] وعلى النقيض تمامًا من أسلافها من نوعي SSI وMSI، احتوى أول تطبيق لتقنية LSI في جهاز PDP-11 على وحدة معالجة مركزية مكونة من أربع دوائر متكاملة LSI فقط. [ 55 ]
المعالجات الدقيقة

منذ ظهور المعالجات الدقيقة، تفوقت بشكل شبه كامل على جميع طرق تنفيذ وحدات المعالجة المركزية الأخرى. كان أول معالج دقيق متوفر تجاريًا، والذي صُنع عام 1971، هو Intel 4004. وكان Intel 4004 من أوائل وحدات المعالجة المركزية الموجهة للمستهلكين التي دمجت وحدة الحساب والمنطق ، ووحدة التحكم ، ووحدة التسجيل على شريحة واحدة. [ 56 ] أما أول معالج دقيق واسع الانتشار، والذي صُنع عام 1974، فكان Intel 8080. أطلق مصنّعو الحواسيب المركزية والحواسيب الصغيرة في ذلك الوقت برامج تطوير دوائر متكاملة خاصة بهم لتحديث بنى حواسيبهم القديمة ، وأنتجوا في نهاية المطاف معالجات دقيقة متوافقة مع مجموعات التعليمات ، ومتوافقة مع أجهزتهم وبرامجهم القديمة. ومع ظهور الحاسوب الشخصي وانتشاره الواسع ، أصبح مصطلح وحدة المعالجة المركزية (CPU ) يُستخدم الآن بشكل شبه حصري للإشارة إلى المعالجات الدقيقة. ويمكن دمج عدة وحدات معالجة مركزية (تُسمى النوى ) في شريحة معالجة واحدة. [ 57 ]
كانت الأجيال السابقة من وحدات المعالجة المركزية (CPU) تُصنع كمكونات منفصلة ودوائر متكاملة صغيرة متعددة على لوحة دوائر واحدة أو أكثر. [ 58 ] أما المعالجات الدقيقة، فهي وحدات معالجة مركزية تُصنع على عدد قليل جدًا من الدوائر المتكاملة؛ عادةً واحدة فقط. [ 59 ] ويؤدي صغر حجم وحدة المعالجة المركزية، نتيجةً لتصنيعها على شريحة واحدة، إلى سرعة تبديل أعلى بسبب عوامل فيزيائية مثل انخفاض السعة الطفيلية للبوابة . [ 60 ] [ 61 ] وقد سمح هذا للمعالجات الدقيقة المتزامنة بالعمل بترددات ساعة تتراوح من عشرات الميغاهرتز إلى عدة غيغاهرتز. بالإضافة إلى ذلك، أدت القدرة على تصنيع ترانزستورات صغيرة للغاية على دائرة متكاملة إلى زيادة تعقيد وحدة المعالجة المركزية وعدد الترانزستورات فيها أضعافًا مضاعفة. ويُفسر قانون مور هذا الاتجاه الملحوظ على نطاق واسع ، والذي أثبت دقته في التنبؤ بنمو تعقيد وحدات المعالجة المركزية (والدوائر المتكاملة الأخرى) حتى عام 2016. [ 62 ] [ 63 ]
على الرغم من التغيرات الهائلة التي طرأت على تعقيد وحجم وبنية وشكل وحدات المعالجة المركزية منذ عام 1950، [ 64 ] إلا أن تصميمها ووظيفتها الأساسيين لم يتغيرا كثيرًا. ويمكن وصف معظم وحدات المعالجة المركزية الشائعة اليوم بدقة بأنها آلات فون نيومان ذات البرامج المخزنة. [ 65 ] [ ب ] ونظرًا لعدم سريان قانون مور، فقد ظهرت مخاوف بشأن حدود تقنية ترانزستورات الدوائر المتكاملة. ويؤدي التصغير المفرط للبوابات الإلكترونية إلى تفاقم تأثيرات ظواهر مثل الهجرة الكهربائية والتسرب دون العتبة . [ 67 ] [ 68 ] وتُعد هذه المخاوف الجديدة من بين العوامل العديدة التي تدفع الباحثين إلى استكشاف أساليب حوسبة جديدة، مثل الحاسوب الكمومي ، بالإضافة إلى توسيع نطاق استخدام التوازي وغيره من الأساليب التي تُعزز من فائدة نموذج فون نيومان الكلاسيكي.
عملية
تتمثل العملية الأساسية لمعظم وحدات المعالجة المركزية، بغض النظر عن شكلها المادي، في تنفيذ سلسلة من التعليمات المخزنة التي تُسمى برنامجًا. تُحفظ التعليمات المراد تنفيذها في نوع من ذاكرة الحاسوب . تتبع جميع وحدات المعالجة المركزية تقريبًا خطوات الجلب والفك والتنفيذ في عملها، والتي تُعرف مجتمعةً بدورة التعليمات .
بعد تنفيذ تعليمة، تتكرر العملية بأكملها، حيث تقوم دورة التعليمات التالية عادةً بجلب التعليمة التالية في التسلسل نظرًا لزيادة قيمة عداد البرنامج . في حال تنفيذ تعليمة قفز، يتم تعديل عداد البرنامج ليحتوي على عنوان التعليمة التي تم القفز إليها، ويستمر تنفيذ البرنامج بشكل طبيعي. في وحدات المعالجة المركزية الأكثر تعقيدًا، يمكن جلب تعليمات متعددة وفك تشفيرها وتنفيذها في وقت واحد. يصف هذا القسم ما يُعرف عمومًا باسم " خط أنابيب RISC الكلاسيكي "، وهو شائع جدًا بين وحدات المعالجة المركزية البسيطة المستخدمة في العديد من الأجهزة الإلكترونية (والتي تُسمى غالبًا وحدات التحكم الدقيقة). ويتجاهل هذا القسم إلى حد كبير الدور المهم لذاكرة التخزين المؤقت لوحدة المعالجة المركزية، وبالتالي مرحلة الوصول في خط الأنابيب.
تُعالج بعض التعليمات عداد البرنامج بدلاً من إنتاج بيانات النتائج مباشرةً؛ وتُسمى هذه التعليمات عمومًا "القفزات"، وهي تُسهّل سلوك البرنامج مثل الحلقات ، والتنفيذ المشروط للبرنامج (باستخدام قفزة مشروطة)، ووجود الدوال . [ ج ] في بعض المعالجات، تُغيّر بعض التعليمات الأخرى حالة البتات في سجل "الأعلام" . يُمكن استخدام هذه الأعلام للتأثير على سلوك البرنامج، لأنها غالبًا ما تُشير إلى نتيجة العمليات المختلفة. على سبيل المثال، في هذه المعالجات، تُقيّم تعليمة "المقارنة" قيمتين وتُعيّن أو تُفرّغ بتات في سجل الأعلام للإشارة إلى أيّهما أكبر أو ما إذا كانتا متساويتين؛ يُمكن بعد ذلك استخدام إحدى هذه الأعلام بواسطة تعليمة قفز لاحقة لتحديد مسار البرنامج.
أحضر
تتضمن عملية الجلب استرجاع تعليمة (مُمثلة برقم أو سلسلة أرقام) من ذاكرة البرنامج. يُحدد موقع التعليمة (عنوانها) في ذاكرة البرنامج بواسطة عداد البرنامج (PC؛ يُسمى "مؤشر التعليمات" في معالجات Intel x86 الدقيقة )، الذي يخزن رقمًا يُحدد عنوان التعليمة التالية المراد جلبها. بعد جلب التعليمة، يُزاد عداد البرنامج بمقدار طول التعليمة ليحتوي على عنوان التعليمة التالية في التسلسل. [ د ] غالبًا ما يجب استرجاع التعليمة من ذاكرة بطيئة نسبيًا، مما يُسبب توقف وحدة المعالجة المركزية أثناء انتظار عودة التعليمة. تُعالج هذه المشكلة إلى حد كبير في المعالجات الحديثة بواسطة ذاكرة التخزين المؤقت وبنية خط الأنابيب (انظر أدناه).
فك الشفرة
تحدد التعليمات التي يستجلبها المعالج من الذاكرة ما سيفعله. في خطوة فك التشفير، التي تُنفذها دائرة فك التشفير الثنائية المعروفة باسم مُفكِّك التعليمات ، تُحوَّل التعليمات إلى إشارات تتحكم في أجزاء أخرى من المعالج.
تُحدد بنية مجموعة تعليمات المعالج (ISA) طريقة تفسير التعليمات. [ هـ ] غالبًا، تُشير مجموعة من البتات (أي "حقل") داخل التعليمات، تُسمى رمز العملية (opcode )، إلى العملية المراد تنفيذها، بينما تُوفر الحقول المتبقية عادةً معلومات إضافية ضرورية للعملية، مثل المعاملات. يمكن تحديد هذه المعاملات كقيمة ثابتة (تُسمى قيمة فورية)، أو كموقع لقيمة قد تكون سجلًا للمعالج أو عنوان ذاكرة، وفقًا لنمط عنونة معين .
في بعض تصميمات وحدات المعالجة المركزية، يُنفَّذ مُفكِّك التعليمات كدائرة فك تشفير ثنائية ثابتة وغير قابلة للتغيير. وفي تصميمات أخرى، يُستخدم برنامج صغير لترجمة التعليمات إلى مجموعات من إشارات تهيئة وحدة المعالجة المركزية التي تُطبَّق بالتتابع عبر نبضات ساعة متعددة. وفي بعض الحالات، تكون الذاكرة التي تخزن البرنامج الصغير قابلة لإعادة الكتابة، مما يُتيح تغيير طريقة فك تشفير التعليمات بواسطة وحدة المعالجة المركزية.
ينفذ
بعد خطوتي جلب البيانات وفك تشفيرها، تُنفَّذ خطوة التنفيذ. وبحسب بنية وحدة المعالجة المركزية، قد تتألف هذه الخطوة من إجراء واحد أو سلسلة من الإجراءات. خلال كل إجراء، تُفعِّل إشارات التحكم أو تُعطِّل أجزاءً مختلفة من وحدة المعالجة المركزية كهربائيًا، لتتمكن من تنفيذ العملية المطلوبة كليًا أو جزئيًا. ثم يُستكمل الإجراء، عادةً استجابةً لنبضة ساعة. في كثير من الأحيان، تُكتب النتائج في سجل داخلي لوحدة المعالجة المركزية ليسهل الوصول إليها من قِبل التعليمات اللاحقة. وفي حالات أخرى، قد تُكتب النتائج في ذاكرة رئيسية أبطأ، ولكنها أقل تكلفة وذات سعة أكبر .
على سبيل المثال، عند تنفيذ تعليمة جمع، تُفعَّل المسجلات التي تحتوي على المعاملات (الأعداد المراد جمعها)، وكذلك أجزاء وحدة الحساب والمنطق (ALU) المسؤولة عن عملية الجمع. عند حدوث نبضة الساعة، تتدفق المعاملات من مسجلات المصدر إلى وحدة الحساب والمنطق، ويظهر المجموع في مخرجاتها. في نبضات الساعة اللاحقة، تُفعَّل (وتُعطَّل) مكونات أخرى لنقل الناتج (مجموع العملية) إلى وحدة التخزين (مثل مسجل أو ذاكرة). إذا كان المجموع الناتج كبيرًا جدًا (أي أكبر من حجم كلمة الإخراج في وحدة الحساب والمنطق)، يُفعَّل مؤشر تجاوز السعة الحسابية، مما يؤثر على العملية التالية.
الهيكل والتنفيذ

تتضمن دارة وحدة المعالجة المركزية (CPU) مجموعة من العمليات الأساسية التي يمكنها تنفيذها، تُسمى مجموعة التعليمات . قد تشمل هذه العمليات، على سبيل المثال، جمع أو طرح عددين، أو مقارنة عددين، أو الانتقال إلى جزء مختلف من البرنامج. تُمثَّل كل تعليمة بمجموعة فريدة من البتات ، تُعرف برمز العملية (opcode) في لغة الآلة . أثناء معالجة التعليمة، تقوم وحدة المعالجة المركزية بفك تشفير رمز العملية (عبر مُفكِّك ثنائي ) إلى إشارات تحكم، تُنظِّم سلوك وحدة المعالجة المركزية. تتكون تعليمة لغة الآلة الكاملة من رمز العملية، وفي كثير من الحالات، بتات إضافية تُحدِّد وسائط العملية (على سبيل المثال، الأعداد المراد جمعها في حالة عملية الجمع). وبالانتقال إلى مستوى أعلى من التعقيد، نجد أن برنامج لغة الآلة عبارة عن مجموعة من تعليمات لغة الآلة التي تُنفِّذها وحدة المعالجة المركزية.
تُنفَّذ العملية الحسابية الفعلية لكل تعليمة بواسطة دائرة منطقية توافقية داخل معالج وحدة المعالجة المركزية، تُعرف بوحدة الحساب والمنطق (ALU). بشكل عام، تُنفِّذ وحدة المعالجة المركزية التعليمة عن طريق جلبها من الذاكرة، واستخدام وحدة الحساب والمنطق لإجراء العملية، ثم تخزين النتيجة في الذاكرة. إلى جانب تعليمات العمليات الحسابية والمنطقية للأعداد الصحيحة، توجد تعليمات أخرى متنوعة، مثل تعليمات تحميل البيانات من الذاكرة وتخزينها مرة أخرى، وعمليات التفرع، والعمليات الحسابية على الأعداد العشرية التي تُنفَّذ بواسطة وحدة الفاصلة العائمة (FPU) في وحدة المعالجة المركزية. [ 69 ]
وحدة التحكم
وحدة التحكم (CU) هي أحد مكونات وحدة المعالجة المركزية (CPU) التي توجه عمل المعالج. فهي تخبر ذاكرة الكمبيوتر ووحدة الحساب والمنطق وأجهزة الإدخال والإخراج بكيفية الاستجابة للتعليمات المرسلة إلى المعالج.
تُوجّه وحدة التحكم (CU) عمل الوحدات الأخرى من خلال توفير إشارات التوقيت والتحكم. وتُدار معظم موارد الحاسوب بواسطة وحدة التحكم، حيث تُوجّه تدفق البيانات بين وحدة المعالجة المركزية (CPU) والأجهزة الأخرى. وقد أدرج جون فون نيومان وحدة التحكم كجزء من بنية فون نيومان . وفي تصميمات الحواسيب الحديثة، تُعدّ وحدة التحكم عادةً جزءًا داخليًا من وحدة المعالجة المركزية، مع بقاء دورها وعملها دون تغيير منذ ظهورها. [ 70 ]
وحدة الحساب والمنطق

وحدة الحساب والمنطق (ALU) هي دائرة رقمية داخل المعالج تُجري عمليات حسابية ومنطقية على مستوى الأعداد الصحيحة . تتضمن مدخلات وحدة الحساب والمنطق كلمات البيانات المراد معالجتها (وتُسمى المعاملات )، ومعلومات الحالة من العمليات السابقة، ورمز من وحدة التحكم يُحدد العملية المطلوب تنفيذها. وبحسب التعليمات المُنفذة، قد تأتي المعاملات من سجلات وحدة المعالجة المركزية الداخلية ، أو الذاكرة الخارجية، أو ثوابت تُولدها وحدة الحساب والمنطق نفسها.
بعد استقرار جميع إشارات الإدخال وانتشارها عبر دارة وحدة الحساب والمنطق، تظهر نتيجة العملية المُنفذة على مخارج هذه الوحدة. تتكون النتيجة من كلمة بيانات، قد تُخزن في سجل أو ذاكرة، ومعلومات حالة تُخزن عادةً في سجل داخلي خاص بوحدة المعالجة المركزية مخصص لهذا الغرض.
تحتوي وحدات المعالجة المركزية الحديثة عادةً على أكثر من وحدة حساب ومنطق لتحسين الأداء.
وحدة توليد العناوين
وحدة توليد العناوين (AGU)، والتي تُسمى أحيانًا وحدة حساب العناوين (ACU)، [ 71 ] هي وحدة تنفيذ داخل وحدة المعالجة المركزية (CPU) تقوم بحساب العناوين التي تستخدمها وحدة المعالجة المركزية للوصول إلى الذاكرة الرئيسية . من خلال معالجة حسابات العناوين بواسطة دوائر منفصلة تعمل بالتوازي مع باقي وحدة المعالجة المركزية، يمكن تقليل عدد دورات وحدة المعالجة المركزية المطلوبة لتنفيذ تعليمات الآلة المختلفة ، مما يُحسّن الأداء.
أثناء تنفيذ العمليات المختلفة، تحتاج وحدة المعالجة المركزية (CPU) إلى حساب عناوين الذاكرة اللازمة لجلب البيانات منها؛ فعلى سبيل المثال، يجب حساب مواقع عناصر المصفوفة في الذاكرة قبل أن تتمكن وحدة المعالجة المركزية من جلب البيانات من مواقعها الفعلية. تتضمن حسابات توليد العناوين هذه عمليات حسابية مختلفة للأعداد الصحيحة ، مثل الجمع والطرح وعمليات باقي القسمة وإزاحة البتات . غالبًا ما يتطلب حساب عنوان الذاكرة أكثر من تعليمة عامة للآلة، والتي لا يتم فك تشفيرها وتنفيذها بالضرورة بسرعة. من خلال دمج وحدة توليد العناوين (AGU) في تصميم وحدة المعالجة المركزية، بالإضافة إلى إدخال تعليمات متخصصة تستخدم هذه الوحدة، يمكن تفريغ حسابات توليد العناوين المختلفة من باقي وحدة المعالجة المركزية، ويمكن تنفيذها غالبًا بسرعة في دورة معالجة واحدة.
تعتمد إمكانيات وحدة حساب العناوين (AGU) على وحدة المعالجة المركزية (CPU) وبنيتها . لذا، تُنفّذ بعض وحدات حساب العناوين وتُتيح المزيد من عمليات حساب العناوين، بينما تتضمن أخرى تعليمات متخصصة أكثر تقدماً قادرة على معالجة عدة معاملات في آنٍ واحد. تتضمن بعض بنيات وحدات المعالجة المركزية وحدات حساب عناوين متعددة، ما يسمح بتنفيذ أكثر من عملية حساب عناوين في وقت واحد، وهو ما يُحسّن الأداء بشكل ملحوظ بفضل الطبيعة فائقة التوازي لتصاميم وحدات المعالجة المركزية المتقدمة. على سبيل المثال، تُدمج إنتل وحدات حساب عناوين متعددة في بنيتيها الدقيقتين Sandy Bridge و Haswell ، ما يزيد من عرض نطاق نظام ذاكرة وحدة المعالجة المركزية من خلال السماح بتنفيذ تعليمات الوصول إلى الذاكرة المتعددة بالتوازي.
وحدة إدارة الذاكرة (MMU)
تحتوي العديد من المعالجات الدقيقة (في الهواتف الذكية وأجهزة الكمبيوتر المكتبية والمحمولة والخوادم) على وحدة إدارة ذاكرة (MMU)، تقوم بترجمة العناوين المنطقية إلى عناوين ذاكرة الوصول العشوائي (RAM) الفعلية، مما يوفر حماية للذاكرة وإمكانات تقسيمها إلى صفحات ، وهو أمر مفيد للذاكرة الافتراضية . عادةً ما تكون وحدة إدارة الذاكرة مدمجة في المعالج، ولكن في بعض الحالات تكون في دائرة متكاملة منفصلة (IC). [ 72 ] أما المعالجات الأبسط، وخاصة المتحكمات الدقيقة ، فلا تحتوي عادةً على وحدة إدارة ذاكرة.
مخبأ
ذاكرة التخزين المؤقت لوحدة المعالجة المركزية (CPU) هي ذاكرة تستخدمها وحدة المعالجة المركزية (CPU) في الحاسوب لتقليل متوسط تكلفة الوصول إلى البيانات من الذاكرة الرئيسية (من حيث الوقت أو الطاقة) . [ 73 ] ذاكرة التخزين المؤقت هي ذاكرة أصغر وأسرع، أقرب إلى نواة المعالج ، تخزن نسخًا من البيانات من مواقع الذاكرة الرئيسية المستخدمة بكثرة . تحتوي معظم وحدات المعالجة المركزية على ذاكرات تخزين مؤقت مستقلة مختلفة، وعادةً ما تكون منظمة على شكل تسلسل هرمي من عدة مستويات (L1، L2، L3، L4، إلخ). كل مستوى تصاعدي من ذاكرة التخزين المؤقت يكون عادةً أبطأ ولكنه أكبر من المستوى السابق، حيث يكون المستوى L1 هو الأسرع والأقرب إلى وحدة المعالجة المركزية. في المستوى L1، توجد عادةً ذاكرات تخزين مؤقت منفصلة للتعليمات والبيانات .
معظم وحدات المعالجة المركزية الحديثة (السريعة) ( باستثناءات قليلة متخصصة ) تحتوي على مستويات متعددة من ذاكرة التخزين المؤقت. كانت وحدات المعالجة المركزية الأولى التي استخدمت ذاكرة التخزين المؤقت تحتوي على مستوى واحد فقط؛ على عكس ذاكرة التخزين المؤقت من المستوى الأول اللاحقة، لم تكن مقسمة إلى L1d (للبيانات) وL1i (للتعليمات). تحتوي جميع وحدات المعالجة المركزية الحالية تقريبًا المزودة بذاكرة تخزين مؤقت على ذاكرة تخزين مؤقت من المستوى الأول مقسمة. كما تحتوي أيضًا على ذاكرة تخزين مؤقت من المستوى الثاني، وفي المعالجات الأكبر حجمًا، ذاكرة تخزين مؤقت من المستوى الثالث أيضًا. عادةً ما تكون ذاكرة التخزين المؤقت من المستوى الثاني غير مقسمة وتعمل كمستودع مشترك لذاكرة التخزين المؤقت من المستوى الأول المقسمة بالفعل. كل نواة في المعالج متعدد النوى لها ذاكرة تخزين مؤقت مخصصة من المستوى الثاني، وعادةً لا تتم مشاركتها بين النوى. ذاكرة التخزين المؤقت من المستوى الثالث، وذاكرات التخزين المؤقت ذات المستويات الأعلى، مشتركة بين النوى وغير مقسمة. ذاكرة التخزين المؤقت من المستوى الرابع غير شائعة حاليًا، وعادةً ما تكون على ذاكرة الوصول العشوائي الديناميكية (DRAM)، بدلاً من ذاكرة الوصول العشوائي الثابتة (SRAM)، على شريحة منفصلة. كان هذا هو الحال تاريخيًا مع ذاكرة التخزين المؤقت من المستوى الأول (L1)، بينما سمحت الرقاقات الأكبر حجمًا بدمجها، وبشكل عام دمج جميع مستويات ذاكرة التخزين المؤقت، باستثناء المستوى الأخير على الأرجح. يميل كل مستوى إضافي من ذاكرة التخزين المؤقت إلى أن يكون أكبر حجمًا ويتم تحسينه بشكل مختلف.
توجد أنواع أخرى من ذاكرة التخزين المؤقت (التي لا يتم احتسابها ضمن "حجم ذاكرة التخزين المؤقت" لأهم ذاكرة التخزين المؤقت المذكورة أعلاه)، مثل مخزن البحث الجانبي للترجمة (TLB) الذي يعد جزءًا من وحدة إدارة الذاكرة (MMU) الموجودة في معظم وحدات المعالجة المركزية.
تُقاس أحجام الذاكرة المؤقتة عمومًا بمضاعفات العدد اثنين: 2، 8، 16، إلخ. وتُقاس بالكيلوبايت أو الميغابايت (للأحجام الأكبر غير L1)، على الرغم من أن جهاز IBM z13 يحتوي على ذاكرة مؤقتة للتعليمات من المستوى الأول (L1) بسعة 96 كيلوبايت. [ 74 ]
معدل الساعة
معظم وحدات المعالجة المركزية عبارة عن دوائر متزامنة ، أي أنها تستخدم إشارة ساعة لتنظيم عملياتها المتسلسلة. تُنتج إشارة الساعة بواسطة دائرة مذبذب خارجية تُولّد عددًا ثابتًا من النبضات كل ثانية على شكل موجة مربعة دورية . يحدد تردد نبضات الساعة معدل تنفيذ وحدة المعالجة المركزية للتعليمات، وبالتالي، كلما زادت سرعة الساعة، زاد عدد التعليمات التي تُنفذها وحدة المعالجة المركزية في الثانية الواحدة.
لضمان التشغيل السليم لوحدة المعالجة المركزية، تكون دورة الساعة أطول من الحد الأقصى للوقت اللازم لانتقال جميع الإشارات عبرها. عند ضبط دورة الساعة على قيمة أعلى بكثير من أسوأ تأخير انتقال ، يُمكن تصميم وحدة المعالجة المركزية بأكملها، وكيفية نقل البيانات، حول "حواف" إشارة الساعة الصاعدة والهابطة. يتميز هذا بتبسيط وحدة المعالجة المركزية بشكل كبير، سواء من حيث التصميم أو عدد المكونات. مع ذلك، ينطوي هذا على عيب يتمثل في أن وحدة المعالجة المركزية بأكملها يجب أن تنتظر أبطأ عناصرها، حتى وإن كانت بعض أجزائها أسرع بكثير. وقد تم تعويض هذا القيد إلى حد كبير من خلال طرق مختلفة لزيادة التوازي في وحدة المعالجة المركزية (انظر أدناه).
مع ذلك، لا تكفي التحسينات المعمارية وحدها لحل جميع عيوب وحدات المعالجة المركزية المتزامنة عالميًا. فعلى سبيل المثال، تتأثر إشارة الساعة بتأخيرات أي إشارة كهربائية أخرى. وتزيد معدلات الساعة العالية في وحدات المعالجة المركزية ذات التعقيد المتزايد من صعوبة الحفاظ على تزامن إشارة الساعة في جميع أنحاء الوحدة. وقد دفع هذا العديد من وحدات المعالجة المركزية الحديثة إلى اشتراط توفير إشارات ساعة متطابقة متعددة لتجنب تأخير إشارة واحدة بشكل كبير بما يكفي للتسبب في خلل في عمل وحدة المعالجة المركزية. ومن المشكلات الرئيسية الأخرى، مع الزيادة الهائلة في معدلات الساعة، كمية الحرارة التي تُبددها وحدة المعالجة المركزية . إذ يتسبب تغير الساعة باستمرار في تبديل العديد من المكونات بغض النظر عما إذا كانت قيد الاستخدام في ذلك الوقت. وبشكل عام، يستهلك المكون الذي يقوم بالتبديل طاقة أكبر من المكون في حالة سكون. لذلك، مع زيادة معدل الساعة، يزداد استهلاك الطاقة، مما يجعل وحدة المعالجة المركزية بحاجة إلى مزيد من تبديد الحرارة في شكل حلول تبريد .
إحدى طرق التعامل مع تشغيل المكونات غير الضرورية تُسمى " بوابة الساعة" ، وتتضمن إيقاف إشارة الساعة عن هذه المكونات (تعطيلها فعليًا). مع ذلك، يُعتبر تطبيق هذه الطريقة صعبًا في كثير من الأحيان، ولذلك لا تُستخدم على نطاق واسع إلا في التصاميم منخفضة الطاقة جدًا. ومن أبرز تصميمات المعالجات المركزية التي تستخدم بوابة الساعة على نطاق واسع معالج زينون القائم على معالج IBM PowerPC والمستخدم في جهاز Xbox 360 ؛ مما يقلل من متطلبات الطاقة للجهاز. [ 75 ]
وحدات المعالجة المركزية بدون تردد
ثمة طريقة أخرى لمعالجة بعض مشاكل إشارة الساعة العامة، وهي إزالة إشارة الساعة كليًا. مع أن إزالة إشارة الساعة العامة تُعقّد عملية التصميم بشكل ملحوظ من نواحٍ عديدة، إلا أن التصاميم غير المتزامنة (أو الخالية من إشارة الساعة) تتميز بمزايا واضحة في استهلاك الطاقة وتبديد الحرارة مقارنةً بالتصاميم المتزامنة المماثلة. ورغم ندرة ذلك، فقد بُنيت وحدات معالجة مركزية غير متزامنة بالكامل دون استخدام إشارة ساعة عامة. ومن الأمثلة البارزة على ذلك معالج AMULET المتوافق مع معمارية ARM، ومعالج MiniMIPS المتوافق مع معمارية MIPS R3000. [ 76 ]
بدلاً من إزالة إشارة الساعة تمامًا، تسمح بعض تصميمات وحدات المعالجة المركزية (CPU) بأن تكون أجزاء معينة من الجهاز غير متزامنة، مثل استخدام وحدات الحساب والمنطق غير المتزامنة مع تقنية التجزئة الفائقة لتحقيق بعض التحسينات في أداء العمليات الحسابية. ورغم أنه ليس من الواضح تمامًا ما إذا كانت التصميمات غير المتزامنة بالكامل قادرة على الأداء بمستوى مماثل أو أفضل من نظيراتها المتزامنة، فمن الواضح أنها تتفوق على الأقل في العمليات الحسابية البسيطة. وهذا، بالإضافة إلى خصائصها الممتازة في استهلاك الطاقة وتبديد الحرارة، يجعلها مناسبة جدًا للحواسيب المدمجة . [ 77 ]
وحدة تنظيم الجهد
تحتوي العديد من وحدات المعالجة المركزية الحديثة على وحدة إدارة طاقة مدمجة في الشريحة تقوم بتنظيم إمداد الجهد عند الطلب لدوائر وحدة المعالجة المركزية مما يسمح لها بالحفاظ على التوازن بين الأداء واستهلاك الطاقة.
نطاق الأعداد الصحيحة
تمثل كل وحدة معالجة مركزية القيم العددية بطريقة محددة. على سبيل المثال، مثّلت بعض الحواسيب الرقمية المبكرة الأرقام باستخدام النظام العشري المألوف (الأساس 10) ، بينما استخدمت حواسيب أخرى تمثيلات أكثر غرابة مثل النظام العشري المشفر ثنائي الخماسي (الأساس 2-5) أو النظام الثلاثي (الأساس 3). وتمثل جميع وحدات المعالجة المركزية الحديثة تقريبًا الأرقام في شكل ثنائي ، حيث يُمثل كل رقم بكمية فيزيائية ثنائية القيمة مثل جهد "مرتفع" أو "منخفض " .
يرتبط بالتمثيل العددي حجم ودقة الأعداد الصحيحة التي يمكن لوحدة المعالجة المركزية تمثيلها. في حالة وحدة المعالجة المركزية الثنائية، يُقاس ذلك بعدد البتات (الأرقام المهمة في العدد الصحيح المُشفّر ثنائيًا) التي يمكن لوحدة المعالجة المركزية معالجتها في عملية واحدة، ويُطلق على ذلك عادةً حجم الكلمة ، أو عرض البت ، أو عرض مسار البيانات ، أو دقة العدد الصحيح ، أو حجم العدد الصحيح . يُحدد حجم العدد الصحيح لوحدة المعالجة المركزية نطاق قيم الأعداد الصحيحة التي يمكنها التعامل معها مباشرةً. [ h ] على سبيل المثال، يمكن لوحدة معالجة مركزية ذات 8 بتات التعامل مباشرةً مع الأعداد الصحيحة المُمثلة بثمانية بتات، والتي يبلغ نطاقها 256 (2^ 8 ) قيمة عددية منفصلة.
يمكن أن يؤثر نطاق الأعداد الصحيحة أيضًا على عدد مواقع الذاكرة التي يمكن لوحدة المعالجة المركزية الوصول إليها مباشرةً (العنوان هو قيمة عددية صحيحة تمثل موقعًا محددًا في الذاكرة). على سبيل المثال، إذا استخدمت وحدة معالجة مركزية ثنائية 32 بت لتمثيل عنوان الذاكرة، فيمكنها الوصول مباشرةً إلى 2^ 32 موقعًا في الذاكرة. ولتجاوز هذا القيد، ولأسباب أخرى، تستخدم بعض وحدات المعالجة المركزية آليات (مثل إدارة الذاكرة أو تبديل البنوك ) تسمح بالوصول إلى ذاكرة إضافية.
تتطلب وحدات المعالجة المركزية ذات أحجام الكلمات الأكبر دوائر إلكترونية أكثر، وبالتالي فهي أكبر حجمًا، وأكثر تكلفة، وتستهلك طاقة أكبر (وبالتالي تولد حرارة أكبر). ونتيجة لذلك، تُستخدم وحدات التحكم الدقيقة الأصغر حجمًا (4 أو 8 بت ) بشكل شائع في التطبيقات الحديثة، على الرغم من توفر وحدات معالجة مركزية ذات أحجام كلمات أكبر بكثير (مثل 16، 32، 64، وحتى 128 بت). مع ذلك، عندما يكون الأداء العالي مطلوبًا، قد تفوق مزايا حجم الكلمة الأكبر (نطاقات بيانات ومساحات عناوين أكبر) عيوبه. يمكن أن تحتوي وحدة المعالجة المركزية على مسارات بيانات داخلية أقصر من حجم الكلمة لتقليل الحجم والتكلفة. على سبيل المثال، على الرغم من أن بنية مجموعة تعليمات IBM System/360 كانت مجموعة تعليمات 32 بت، إلا أن طراز System/360 30 وطراز 40 كانا يحتويان على مسارات بيانات 8 بت في الوحدة المنطقية الحسابية، بحيث تتطلب عملية جمع 32 بت أربع دورات، دورة واحدة لكل 8 بت من المعاملات، وعلى الرغم من أن مجموعة تعليمات سلسلة Motorola 68000 كانت مجموعة تعليمات 32 بت، إلا أن Motorola 68000 و Motorola 68010 كانا يحتويان على مسارات بيانات 16 بت في الوحدة المنطقية الحسابية، بحيث تتطلب عملية جمع 32 بت دورتين.
للاستفادة من مزايا أطوال البتات المنخفضة والعالية، تتميز العديد من مجموعات التعليمات بعرض بتات مختلف للبيانات الصحيحة والبيانات العشرية، مما يسمح لوحدات المعالجة المركزية التي تُنفذ مجموعة التعليمات هذه باستخدام عروض بتات مختلفة لأجزاء مختلفة من الجهاز. على سبيل المثال، كانت مجموعة تعليمات IBM System/360 في الأساس 32 بت، ولكنها دعمت قيمًا عشرية 64 بت لتحقيق دقة ونطاق أكبر في الأرقام العشرية. [ 37 ] احتوى طراز System/360 65 على جامع 8 بت للحسابات العشرية والثنائية ذات النقطة الثابتة، وجامع 60 بت للحسابات العشرية. [ 78 ] تستخدم العديد من تصميمات وحدات المعالجة المركزية اللاحقة عرض بتات مختلطًا مشابهًا، خاصةً عندما يكون المعالج مُصممًا للاستخدامات العامة حيث يكون التوازن المعقول بين قدرات الأعداد الصحيحة والعشرية مطلوبًا.
التوازي

يصف القسم السابق أبسط شكل يمكن أن تتخذه وحدة المعالجة المركزية (CPU) من خلال شرح آلية عملها الأساسية. هذا النوع من وحدات المعالجة المركزية، والذي يُشار إليه عادةً باسم "المعالج الفرعي" ، يعمل على تنفيذ تعليمة واحدة على جزء أو جزأين من البيانات في كل مرة، أي أقل من تعليمة واحدة لكل دورة ساعة ( IPC < 1 ).
تُؤدي هذه العملية إلى قصورٍ جوهري في وحدات المعالجة المركزية دون المقياسية. فبما أنه لا يتم تنفيذ سوى تعليمة واحدة في كل مرة، يتعين على وحدة المعالجة المركزية بأكملها الانتظار حتى اكتمال تلك التعليمة قبل الانتقال إلى التعليمة التالية. ونتيجةً لذلك، تتعطل وحدة المعالجة المركزية دون المقياسية عند التعليمات التي تستغرق أكثر من دورة ساعة واحدة لإكمال تنفيذها. حتى إضافة وحدة تنفيذ ثانية (انظر أدناه) لا تُحسّن الأداء بشكل ملحوظ؛ فبدلاً من تعطل مسار واحد، يتعطل مساران الآن، ويزداد عدد الترانزستورات غير المستخدمة. هذا التصميم، حيث لا يمكن لموارد تنفيذ وحدة المعالجة المركزية العمل إلا على تعليمة واحدة في كل مرة، لا يُمكنه الوصول إلا إلى أداء المقياس (تعليمة واحدة لكل دورة ساعة، IPC = 1 ). ومع ذلك، يكون الأداء دائمًا تقريبًا دون المقياس (أقل من تعليمة واحدة لكل دورة ساعة، IPC < 1 ).
أدت محاولات تحقيق أداء أفضل وقابل للتوسع إلى ظهور منهجيات تصميم متنوعة تجعل وحدة المعالجة المركزية تعمل بشكل أقل خطية وأكثر توازياً. عند الإشارة إلى التوازي في وحدات المعالجة المركزية، يُستخدم مصطلحان بشكل عام لتصنيف تقنيات التصميم هذه:
- التوازي على مستوى التعليمات (ILP)، والذي يسعى إلى زيادة معدل تنفيذ التعليمات داخل وحدة المعالجة المركزية (أي زيادة استخدام موارد التنفيذ الموجودة على الشريحة)؛
- التوازي على مستوى المهام (TLP)، والذي يهدف إلى زيادة عدد الخيوط أو العمليات التي يمكن لوحدة المعالجة المركزية تنفيذها في وقت واحد.
تختلف كل منهجية في طرق تنفيذها، وكذلك في فعاليتها النسبية في زيادة أداء وحدة المعالجة المركزية لتطبيق معين. [ i ]
التوازي على مستوى التعليم

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

أدت التحسينات في تقنية خطوط أنابيب التعليمات إلى مزيد من الانخفاض في وقت خمول مكونات وحدة المعالجة المركزية. تتضمن التصاميم التي تُوصف بأنها فائقة التوازي خط أنابيب تعليمات طويلًا ووحدات تنفيذ متطابقة متعددة ، مثل وحدات التحميل والتخزين ، ووحدات الحساب والمنطق ، ووحدات الفاصلة العائمة ، ووحدات توليد العناوين . [ 79 ] في خط أنابيب فائق التوازي، تُقرأ التعليمات وتُمرر إلى وحدة التوزيع، التي تُقرر ما إذا كان بالإمكان تنفيذها بالتوازي (في وقت واحد). إذا كان ذلك ممكنًا، تُوزع التعليمات على وحدات التنفيذ، مما يؤدي إلى تنفيذها في وقت واحد. بشكل عام، يعتمد عدد التعليمات التي تُكملها وحدة المعالجة المركزية فائقة التوازي في دورة واحدة على عدد التعليمات التي تستطيع توزيعها في وقت واحد على وحدات التنفيذ.
تكمن معظم صعوبة تصميم بنية وحدة المعالجة المركزية فائقة التوازي في إنشاء مُوزِّع فعال. يجب أن يكون المُوزِّع قادرًا على تحديد إمكانية تنفيذ التعليمات بالتوازي بسرعة، بالإضافة إلى توزيعها بطريقة تُبقي أكبر عدد ممكن من وحدات التنفيذ مشغولة. يتطلب هذا ملء خط أنابيب التعليمات بأسرع وقت ممكن، ويتطلب أيضًا كميات كبيرة من ذاكرة التخزين المؤقت لوحدة المعالجة المركزية . كما يجعل تقنيات تجنب المخاطر ، مثل التنبؤ بالتفرع ، والتنفيذ التخميني ، وإعادة تسمية السجلات ، والتنفيذ خارج الترتيب ، والذاكرة المعاملاتية ، بالغة الأهمية للحفاظ على مستويات أداء عالية. من خلال محاولة التنبؤ بالتفرع (أو المسار) الذي ستسلكه التعليمات الشرطية، يمكن لوحدة المعالجة المركزية تقليل عدد مرات انتظار خط الأنابيب بأكمله حتى اكتمال التعليمات الشرطية. غالبًا ما يوفر التنفيذ التخميني تحسينات طفيفة في الأداء من خلال تنفيذ أجزاء من التعليمات البرمجية التي قد لا تكون مطلوبة بعد اكتمال العملية الشرطية. يُعيد التنفيذ خارج الترتيب ترتيب تنفيذ التعليمات إلى حد ما لتقليل التأخيرات الناتجة عن تبعيات البيانات. أيضًا في حالة تدفق التعليمات الفردية، وتدفق البيانات المتعددة ، وهي حالة يجب فيها معالجة الكثير من البيانات من نفس النوع، يمكن للمعالجات الحديثة تعطيل أجزاء من خط الأنابيب بحيث عندما يتم تنفيذ تعليمة واحدة عدة مرات، يتخطى المعالج المركزي مراحل الجلب وفك التشفير، وبالتالي يزيد الأداء بشكل كبير في بعض الحالات، وخاصة في محركات البرامج الرتيبة للغاية مثل برامج إنشاء الفيديو ومعالجة الصور.
عندما يكون جزء من وحدة المعالجة المركزية فائق التوازي، يعاني الجزء الآخر من انخفاض في الأداء بسبب توقفات الجدولة. احتوى معالج Intel P5 Pentium على وحدتي حساب ومنطق فائقتي التوازي، تستطيع كل منهما استقبال تعليمة واحدة في كل دورة ساعة، لكن وحدة معالجة الفاصلة العائمة (FPU) لم تكن قادرة على ذلك. لذا، كان P5 فائق التوازي في معالجة الأعداد الصحيحة، لكنه لم يكن كذلك في معالجة الفاصلة العائمة. أضاف معالج P6 ، خليفة معمارية P5 من Intel ، إمكانيات فائقة التوازي إلى خصائص معالجة الفاصلة العائمة.
تُساهم تقنيات خطوط الأنابيب البسيطة والتصميم فائق التوازي في زيادة قدرة المعالج المركزي على تنفيذ التعليمات بمعدلات تتجاوز تعليمة واحدة لكل دورة ساعة. معظم تصميمات المعالجات المركزية الحديثة هي على الأقل ذات قدرة فائقة التوازي، وتقريبًا جميع المعالجات المركزية للأغراض العامة التي صُممت في العقد الماضي هي كذلك. في السنوات الأخيرة، تحوّل جزء من التركيز في تصميم الحواسيب ذات القدرة العالية على تنفيذ التعليمات من مكونات المعالج المادية إلى واجهة البرمجيات الخاصة به، أو بنية مجموعة التعليمات (ISA). تُتيح استراتيجية كلمة التعليمات الطويلة جدًا (VLIW) تضمين بعض القدرة على تنفيذ التعليمات ضمنيًا بواسطة البرمجيات، مما يُقلل من جهد المعالج المركزي في تعزيز هذه القدرة، وبالتالي يُقلل من تعقيد التصميم.
التوازي على مستوى المهمة
تتمثل إحدى استراتيجيات تحسين الأداء في تنفيذ عدة سلاسل أو عمليات بالتوازي. يُعرف هذا المجال البحثي بالحوسبة المتوازية . [ 80 ] وفي تصنيف فلين ، تُعرف هذه الاستراتيجية باسم تدفقات التعليمات المتعددة، وتدفقات البيانات المتعددة (MIMD). [ 81 ]
إحدى التقنيات المستخدمة لهذا الغرض هي المعالجة المتعددة (MP). [ 82 ] يُعرف النوع الأولي لهذه التقنية بالمعالجة المتعددة المتناظرة (SMP)، حيث تتشارك مجموعة صغيرة من وحدات المعالجة المركزية (CPUs) رؤية متماسكة لنظام الذاكرة الخاص بها. في هذا النظام، تمتلك كل وحدة معالجة مركزية مكونات مادية إضافية للحفاظ على رؤية محدثة باستمرار للذاكرة. من خلال تجنب الرؤى القديمة للذاكرة، يمكن لوحدات المعالجة المركزية التعاون في نفس البرنامج، ويمكن نقل البرامج من وحدة معالجة مركزية إلى أخرى. لزيادة عدد وحدات المعالجة المركزية المتعاونة إلى ما هو أبعد من عدد قليل، تم تقديم أنظمة مثل الوصول غير الموحد للذاكرة (NUMA) وبروتوكولات التماسك القائمة على الدليل في التسعينيات. تقتصر أنظمة SMP على عدد قليل من وحدات المعالجة المركزية، بينما تم بناء أنظمة NUMA باستخدام آلاف المعالجات. في البداية، تم بناء المعالجة المتعددة باستخدام وحدات معالجة مركزية منفصلة متعددة ولوحات لتنفيذ الربط البيني بين المعالجات. عندما يتم تنفيذ المعالجات والوصلات البينية الخاصة بها على شريحة واحدة، تُعرف هذه التقنية باسم المعالجة المتعددة على مستوى الشريحة (CMP) وتُعرف الشريحة الواحدة باسم المعالج متعدد النوى .
لاحقًا، تبيّن وجود توازي أدقّ ضمن برنامج واحد. قد يحتوي البرنامج الواحد على عدة خيوط (أو دوال) يمكن تنفيذها بشكل منفصل أو متوازٍ. طبّقت بعض الأمثلة الأولى لهذه التقنية معالجة الإدخال/الإخراج ، مثل الوصول المباشر إلى الذاكرة ، كخيط منفصل عن خيط الحساب. في سبعينيات القرن الماضي، طُرح نهج أكثر عمومية لهذه التقنية عندما صُممت أنظمة لتشغيل خيوط حساب متعددة بالتوازي. تُعرف هذه التقنية باسم المعالجة المتعددة الخيوط (MT). يُعتبر هذا النهج أكثر فعالية من حيث التكلفة مقارنةً بالمعالجة المتعددة، حيث يتم نسخ عدد قليل فقط من مكونات وحدة المعالجة المركزية لدعم المعالجة المتعددة الخيوط، على عكس وحدة المعالجة المركزية بأكملها في حالة المعالجة المتعددة. في المعالجة المتعددة الخيوط، تُشارك وحدات التنفيذ ونظام الذاكرة، بما في ذلك ذاكرة التخزين المؤقت، بين خيوط متعددة. أما عيب المعالجة المتعددة الخيوط فهو أن دعم الأجهزة للمعالجة المتعددة الخيوط يكون أكثر وضوحًا للبرمجيات مقارنةً بالمعالجة المتعددة، وبالتالي يتعين على برامج الإشراف، مثل أنظمة التشغيل، إجراء تغييرات أكبر لدعم المعالجة المتعددة الخيوط. يُعرف أحد أنواع المعالجة المتعددة التي تم تطبيقها باسم المعالجة المتعددة المؤقتة ، حيث يتم تنفيذ خيط معالجة واحد حتى يتوقف في انتظار عودة البيانات من الذاكرة الخارجية. في هذه الحالة، يقوم المعالج المركزي بالتبديل السريع إلى خيط معالجة آخر جاهز للتنفيذ، وغالبًا ما يتم هذا التبديل في دورة ساعة واحدة، كما هو الحال في معالج UltraSPARC T1 . وهناك نوع آخر من المعالجة المتعددة وهو المعالجة المتعددة المتزامنة ، حيث يتم تنفيذ التعليمات من خيوط معالجة متعددة بالتوازي خلال دورة ساعة واحدة.
على مدى عقود عديدة، من سبعينيات القرن الماضي وحتى أوائل الألفية الجديدة، انصبّ التركيز في تصميم وحدات المعالجة المركزية العامة عالية الأداء على تحقيق مستوى عالٍ من التوازي على مستوى التعليمات (ILP) من خلال تقنيات مثل خطوط الأنابيب، والذاكرة المخبئية، والتنفيذ فائق التوازي، والتنفيذ خارج الترتيب، وغيرها. وقد بلغ هذا التوجه ذروته في وحدات معالجة مركزية ضخمة تستهلك طاقة عالية، مثل معالج إنتل بنتيوم 4. وبحلول أوائل الألفية الجديدة، واجه مصممو وحدات المعالجة المركزية صعوبة في تحقيق أداء أعلى باستخدام تقنيات التوازي على مستوى التعليمات (ILP) بسبب التفاوت المتزايد بين ترددات تشغيل وحدة المعالجة المركزية وترددات تشغيل الذاكرة الرئيسية، فضلاً عن تزايد استهلاك الطاقة في وحدة المعالجة المركزية نتيجةً لتقنيات التوازي على مستوى التعليمات (ILP) الأكثر تعقيدًا.
ثم استعار مصممو وحدات المعالجة المركزية أفكارًا من أسواق الحوسبة التجارية مثل معالجة المعاملات ، حيث كان الأداء الإجمالي لبرامج متعددة، والمعروف أيضًا باسم الحوسبة الإنتاجية ، أكثر أهمية من أداء خيط أو عملية واحدة.
يتجلى هذا التحول في التركيز من خلال انتشار تصميمات المعالجات ثنائية النواة وأكثرها، ولا سيما تصميمات إنتل الأحدث التي تشبه معمارية P6 الأقل توسعًا. تتميز التصميمات المتأخرة في العديد من عائلات المعالجات بمعالجة متعددة على مستوى الشريحة، بما في ذلك معالجات x86-64 Opteron و Athlon 64 X2 ، ومعالج SPARC UltraSPARC T1 ، ومعالجات IBM POWER4 و POWER5 ، بالإضافة إلى العديد من وحدات المعالجة المركزية لأجهزة ألعاب الفيديو مثل تصميم PowerPC ثلاثي النواة لجهاز Xbox 360 ، ومعالج Cell ذي 7 أنوية لجهاز PlayStation 3 .
التوازي في البيانات
يُعدّ نموذج معالجة البيانات المتوازية (في الواقع، في الحوسبة عمومًا) نموذجًا أقل شيوعًا ولكنه ذو أهمية متزايدة في مجال المعالجات. تُصنّف جميع المعالجات التي نوقشت سابقًا ضمن فئة الأجهزة العددية. [ j ] وكما يوحي الاسم، تتعامل معالجات المتجهات مع أجزاء متعددة من البيانات ضمن سياق تعليمة واحدة. وهذا يختلف عن المعالجات العددية التي تتعامل مع جزء واحد من البيانات لكل تعليمة. وباستخدام تصنيف فلين ، يُشار إلى هذين النمطين من معالجة البيانات عمومًا باسم " تدفق تعليمة واحد ، تدفق بيانات متعدد " ( SIMD ) و "تدفق تعليمة واحد ، تدفق بيانات واحد " ( SISD )، على التوالي. تكمن الفائدة الكبيرة في تصميم معالجات تتعامل مع متجهات البيانات في تحسين المهام التي تتطلب عادةً إجراء العملية نفسها (مثل الجمع أو الضرب النقطي ) على مجموعة كبيرة من البيانات. ومن الأمثلة الكلاسيكية على هذه الأنواع من المهام تطبيقات الوسائط المتعددة (الصور والفيديو والصوت)، بالإضافة إلى العديد من أنواع المهام العلمية والهندسية. بينما يتطلب المعالج القياسي إتمام عملية جلب كل تعليمة وقيمة في مجموعة البيانات، وفك تشفيرها، وتنفيذها بالكامل، يستطيع المعالج المتجهي تنفيذ عملية واحدة على مجموعة بيانات كبيرة نسبيًا بتعليمات واحدة. ولا يكون ذلك ممكنًا إلا عندما يتطلب التطبيق خطوات عديدة تُطبّق عملية واحدة على مجموعة بيانات كبيرة.
كانت معظم معالجات المتجهات المبكرة، مثل Cray-1 ، مرتبطة بشكل شبه حصري بالبحوث العلمية وتطبيقات التشفير . ومع ذلك، ومع تحول الوسائط المتعددة بشكل كبير إلى الوسائط الرقمية، أصبحت الحاجة إلى شكل من أشكال SIMD في المعالجات العامة ملحة. بعد فترة وجيزة من شيوع استخدام وحدات الفاصلة العائمة في المعالجات العامة، بدأت مواصفات وتطبيقات وحدات تنفيذ SIMD بالظهور أيضًا في منتصف التسعينيات. بعض هذه المواصفات المبكرة لـ SIMD - مثل امتدادات تسريع الوسائط المتعددة (MAX) من HP و MMX من Intel - كانت مخصصة للأعداد الصحيحة فقط. شكل هذا عائقًا كبيرًا لبعض مطوري البرامج، نظرًا لأن العديد من التطبيقات التي تستفيد من SIMD تتعامل بشكل أساسي مع أعداد الفاصلة العائمة . تدريجيًا، قام المطورون بتحسين هذه التصاميم المبكرة وإعادة تصميمها لتصبح بعضًا من مواصفات SIMD الحديثة الشائعة، والتي ترتبط عادةً ببنية مجموعة تعليمات واحدة (ISA). من الأمثلة الحديثة البارزة تقنية Streaming SIMD Extensions (SSE) من إنتل، وتقنية AltiVec المرتبطة بمعالجات PowerPC (المعروفة أيضًا باسم VMX). [ k ]
عداد أداء الأجهزة
تتضمن العديد من البنى الحديثة (بما فيها البنى المدمجة) عدادات أداء الأجهزة (HPC)، التي تُمكّن من جمع بيانات الأداء على مستوى التعليمات، وقياس الأداء ، وتصحيح الأخطاء، وتحليل مقاييس البرامج قيد التشغيل. [ 83 ] [ 84 ] كما يُمكن استخدام عدادات أداء الأجهزة لاكتشاف وتحليل الأنشطة غير المعتادة أو المشبوهة للبرامج، مثل استغلال ثغرات البرمجة الموجهة بالعودة (ROP) أو البرمجة الموجهة بعودة الإشارة (SROP)، وغيرها. [ 85 ] وعادةً ما تقوم فرق أمن البرمجيات بذلك لتقييم البرامج الثنائية الخبيثة واكتشافها. [ 86 ]
توفر العديد من الشركات المصنعة الكبرى (مثل IBM و Intel و AMD و Arm ) واجهات برمجية (مكتوبة عادةً بلغة C/C++) يمكن استخدامها لجمع البيانات من سجلات وحدة المعالجة المركزية للحصول على مقاييس الأداء. [ 87 ] كما توفر شركات أنظمة التشغيل برامج مثل perf(Linux) لتسجيل أحداث وحدة المعالجة المركزية وقياس أدائها وتتبعها أثناء تشغيل النواة والتطبيقات.
توفر عدادات الأجهزة طريقةً فعّالة من حيث التكلفة لجمع مقاييس أداء شاملة تتعلق بالعناصر الأساسية لوحدة المعالجة المركزية (الوحدات الوظيفية، والذاكرة المؤقتة، والذاكرة الرئيسية، وما إلى ذلك) - وهي ميزة كبيرة مقارنةً ببرامج تحليل الأداء. [ 88 ] بالإضافة إلى ذلك، فهي تُغني عمومًا عن الحاجة إلى تعديل شفرة المصدر الأساسية للبرنامج. [ 89 ] ونظرًا لاختلاف تصميمات الأجهزة بين البنى، فإن أنواع عدادات الأجهزة وتفسيراتها ستختلف أيضًا.
الأوضاع المميزة
تحتوي معظم وحدات المعالجة المركزية الحديثة على أوضاع مميزة لدعم أنظمة التشغيل والمحاكاة الافتراضية.
يمكن للحوسبة السحابية استخدام المحاكاة الافتراضية لتوفير وحدة معالجة مركزية افتراضية [ 90 ] ( vCPU ) لمستخدمين منفصلين؛ [ 91 ] لا ينبغي الخلط بين vCPU والخادم الخاص الافتراضي (VPS).
المضيف هو المكافئ الافتراضي للجهاز الفعلي، الذي يعمل عليه النظام الافتراضي. [ 92 ] عندما تعمل عدة أجهزة فعلية معًا وتُدار كوحدة واحدة، تُشكّل موارد الحوسبة والذاكرة المُجمّعة ما يُعرف بالمجموعة الحاسوبية . في بعض الأنظمة، يُمكن إضافة موارد إلى المجموعة الحاسوبية وإزالتها منها ديناميكيًا. يُمكن تقسيم الموارد المُتاحة على مستوى المضيف والمجموعة الحاسوبية إلى مجموعات موارد بدقة عالية .
أداء
يعتمد أداء المعالج أو سرعته ، من بين عوامل أخرى كثيرة، على تردد الساعة (الذي يُقاس عادةً بمضاعفات الهرتز ) وعدد التعليمات لكل دورة ساعة (IPC)، وهما العاملان اللذان يحددان عدد التعليمات في الثانية (IPS) التي يمكن لوحدة المعالجة المركزية تنفيذها. [ 93 ] [ 94 ] وقد مثّلت العديد من قيم IPS المُبلغ عنها معدلات تنفيذ "قصوى" على تسلسلات تعليمات اصطناعية ذات تفرعات قليلة، بينما تتكون أحمال العمل الواقعية من مزيج من التعليمات والتطبيقات، بعضها يستغرق وقتًا أطول للتنفيذ من غيرها. كما يؤثر أداء التسلسل الهرمي للذاكرة بشكل كبير على أداء المعالج، وهي مسألة نادراً ما تُؤخذ في الحسبان عند حساب IPS. وبسبب هذه المشاكل، طُوّرت اختبارات معيارية متنوعة، تُسمى غالبًا " معايير قياس " لهذا الغرض - مثل SPECint - لمحاولة قياس الأداء الفعلي الحقيقي في التطبيقات شائعة الاستخدام.
تتحسن كفاءة معالجة البيانات في الحواسيب باستخدام المعالجات متعددة النوى ، والتي تتمثل أساسًا في دمج معالجين أو أكثر (تُسمى نوى في هذا السياق) في دائرة متكاملة واحدة. [ 95 ] من الناحية المثالية، يكون المعالج ثنائي النواة أقوى بمرتين تقريبًا من المعالج أحادي النواة. ولكن عمليًا، يكون التحسن في الأداء أقل بكثير، حوالي 50% فقط، وذلك بسبب قصور خوارزميات البرمجيات وتنفيذها. [ 96 ] زيادة عدد النوى في المعالج (مثل ثنائي النواة، رباعي النواة، إلخ) تزيد من قدرة المعالج على معالجة كميات كبيرة من البيانات. وهذا يعني أن المعالج يستطيع الآن التعامل مع العديد من الأحداث غير المتزامنة والمقاطعات، وما إلى ذلك، والتي قد تُرهق وحدة المعالجة المركزية عند زيادة الحمل عليها. يمكن تشبيه هذه النوى بأدوار مختلفة في مصنع معالجة، حيث يتولى كل دور مهمة مختلفة. في بعض الأحيان، تتولى هذه النوى نفس مهام النوى المجاورة لها إذا لم تكن نواة واحدة كافية لمعالجة المعلومات. تُعزز وحدات المعالجة المركزية متعددة النوى قدرة الحاسوب على تشغيل عدة مهام في وقت واحد من خلال توفير طاقة معالجة إضافية. مع ذلك، فإن الزيادة في السرعة لا تتناسب طرديًا مع عدد النوى المضافة. ويعود ذلك إلى أن النوى تحتاج إلى التفاعل عبر قنوات محددة، وهذا التواصل بين النوى يستهلك جزءًا من سرعة المعالجة المتاحة. [ 97 ]
بسبب القدرات الخاصة لوحدات المعالجة المركزية الحديثة، مثل تعدد الخيوط المتزامنة ووحدة المعالجة غير الأساسية ، والتي تتضمن مشاركة موارد وحدة المعالجة المركزية الفعلية بهدف زيادة الاستخدام، أصبحت مراقبة مستويات الأداء واستخدام الأجهزة مهمة أكثر تعقيدًا تدريجيًا. [ 98 ] واستجابةً لذلك، تُطبّق بعض وحدات المعالجة المركزية منطقًا إضافيًا للأجهزة لمراقبة الاستخدام الفعلي لأجزاء مختلفة من وحدة المعالجة المركزية وتوفير عدادات متنوعة يمكن للبرامج الوصول إليها؛ ومن الأمثلة على ذلك تقنية مراقبة عدادات الأداء من إنتل . [ 9 ]
كسر سرعة المعالج
كسر السرعة هو عملية زيادة سرعة معالج وحدة المعالجة المركزية (والمكونات الأخرى) لتتجاوز سرعتها المُصنّفة. تؤدي زيادة سرعة المعالج إلى زيادة عدد العمليات التي يُجريها في الثانية الواحدة. [ 99 ] قد يؤدي كسر السرعة إلى ارتفاع درجة حرارة المعالج ، لذا يتجنب معظم المستخدمين كسر السرعة ويتركونها دون تغيير. قد تُقيّد الشركات المصنّعة مدى إمكانية كسر سرعة المعالج، وذلك مثلاً بتقييد نسب التردد ، أو الحد الأقصى لاستهلاك الطاقة ، أو كليهما.
أخطاء
أصبح تصميم بعض المعالجات معقدًا لدرجة يصعب معها اختبارها بالكامل ، وقد تسبب ذلك في مشاكل لدى مزودي الخدمات السحابية الكبار. [ 100 ]
انظر أيضاً
- نمط العنونة
- وحدة المعالجة المتسارعة من AMD
- حاسوب ذو مجموعة تعليمات معقدة
- ناقل الكمبيوتر
- هندسة الحاسوب
- جهد نواة وحدة المعالجة المركزية
- مقبس وحدة المعالجة المركزية
- وحدة معالجة البيانات
- معالج الإشارات الرقمية
- وحدة معالجة الرسومات
- مقارنة بين بنى مجموعات التعليمات
- حلقة الحماية
- حاسوب ذو مجموعة تعليمات مخفضة
- معالجة البيانات المتدفقة
- مؤشر الأداء الحقيقي
- وحدة معالجة الموترات
- حالة الانتظار
ملحوظات
- ↑ تُستخدم الدوائر المتكاملة الآن لتنفيذ جميع وحدات المعالجة المركزية، باستثناء عدد قليل من الأجهزة المصممة لتحمل النبضات الكهرومغناطيسية الكبيرة، على سبيل المثال من سلاح نووي.
- ↑ شرحت ما يسمى بمذكرة "فون نيومان" فكرة البرامج المخزنة، [ 66 ] والتي يمكن تخزينها على سبيل المثال على البطاقات المثقبة أو الشريط الورقي أو الشريط المغناطيسي.
- ↑ لم تدعم بعض الحواسيب المبكرة، مثل هارفارد مارك 1، أي نوع من تعليمات "القفز"، مما حدّ فعلياً من تعقيد البرامج التي يمكنها تشغيلها. ولهذا السبب تحديداً، لا تُعتبر هذه الحواسيب في كثير من الأحيان مزودة بوحدة معالجة مركزية حقيقية، على الرغم من تشابهها الكبير مع الحواسيب ذات البرامج المخزنة.
- بما أن عداد البرنامج يحسب عناوين الذاكرة وليس التعليمات ، فإنه يزيد بمقدار عدد وحدات الذاكرة التي تحتويها كلمة التعليمات. في حالة مجموعات تعليمات ذات طول ثابت، يكون هذا العدد ثابتًا دائمًا. على سبيل المثال، مجموعة تعليمات ذات طول ثابت 32 بت تستخدم كلمات ذاكرة 8 بت ستزيد عداد البرنامج بمقدار أربعة دائمًا (باستثناء حالات القفز). أما مجموعات التعليمات التي تستخدم كلمات تعليمات ذات طول متغير، فتزيد عداد البرنامج بمقدار عدد كلمات الذاكرة التي تساوي طول آخر تعليمة.
- ↑ نظرًا لأن بنية مجموعة تعليمات وحدة المعالجة المركزية (CPU) أساسية لواجهتها واستخدامها، فإنها تُستخدم غالبًا لتصنيف "نوع" وحدة المعالجة المركزية. على سبيل المثال، تستخدم وحدة المعالجة المركزية "PowerPC" أحد متغيرات بنية مجموعة تعليمات PowerPC. ويمكن لوحدة معالجة مركزية ذات بنية مجموعة تعليمات معينة تنفيذ بنية مجموعة تعليمات مختلفة عن طريق تشغيل محاكي.
- ↑ بعض وحدات المعالجة المركزية المتخصصة، أو المعالجات المسرّعة، أو المتحكمات الدقيقة لا تحتوي على ذاكرة تخزين مؤقتة. ولتحقيق السرعة المطلوبة، تستخدم هذه الوحدات ذاكرة تخزين مؤقتة مدمجة تؤدي وظيفة مشابهة، ولكنها تُدار بواسطة البرمجيات. في المتحكمات الدقيقة، على سبيل المثال، قد يكون من الأفضل، في التطبيقات التي تتطلب معالجة فورية، وجود هذه الذاكرة المؤقتة أو الاستغناء عنها تمامًا، حيث أن زمن استجابة عمليات التحميل يكون قابلاً للتنبؤ مع مستوى واحد من الذاكرة.
- ↑ يُعدّ مفهوم الجهد الكهربائي مفهومًا تناظريًا بطبيعته، إذ يمتلك عمليًا نطاقًا لا نهائيًا من القيم الممكنة. ولغرض التمثيل الفيزيائي للأعداد الثنائية، يُحدّد نطاقان مُحدّدان من الجهد الكهربائي، أحدهما للمنطق '0' والآخر للمنطق '1'. وتُملي اعتبارات التصميم، مثل هوامش الضوضاء وخصائص الأجهزة المستخدمة في تصنيع وحدة المعالجة المركزية، هذين النطاقين.
- ↑ على الرغم من أن حجم وحدة المعالجة المركزية للأعداد الصحيحة يفرض حدًا على نطاقات الأعداد الصحيحة، إلا أنه يمكن (وكثيرًا ما يتم) التغلب على هذا الحد باستخدام مزيج من تقنيات البرمجيات والأجهزة. فباستخدام ذاكرة إضافية، تستطيع البرمجيات تمثيل أعداد صحيحة أكبر بكثير مما تستطيع وحدة المعالجة المركزية تمثيله. في بعض الأحيان، تُسهّل مجموعة تعليمات وحدة المعالجة المركزية إجراء العمليات على أعداد صحيحة أكبر مما تستطيع تمثيله بشكل أصلي، وذلك بتوفير تعليمات تجعل العمليات الحسابية على الأعداد الصحيحة الكبيرة سريعة نسبيًا. هذه الطريقة في التعامل مع الأعداد الصحيحة الكبيرة أبطأ من استخدام وحدة معالجة مركزية ذات حجم أكبر للأعداد الصحيحة، ولكنها حل وسط معقول في الحالات التي يكون فيها دعم نطاق الأعداد الصحيحة الكامل المطلوب بشكل أصلي مكلفًا للغاية. راجع قسم " الحسابات ذات الدقة العشوائية" لمزيد من التفاصيل حول الأعداد الصحيحة ذات الأحجام العشوائية المدعومة برمجيًا فقط.
- لا يُعدّ كلٌّ من التوازي على مستوى التعليمات (ILP) والتوازي على مستوى البيانات ( TLP) متفوقًا على الآخر بشكلٍ جوهري؛ فهما ببساطة وسيلتان مختلفتان لزيادة التوازي في وحدة المعالجة المركزية. ولذلك، لكلٍّ منهما مزايا وعيوب، والتي غالبًا ما تُحدَّد بنوع البرنامج الذي يُراد تشغيله على المعالج. تُستخدم وحدات المعالجة المركزية ذات التوازي العالي على مستوى البيانات (TLP) عادةً في التطبيقات التي تُناسب تقسيمها إلى تطبيقات أصغر عديدة، فيما يُعرف بـ" المشاكل المتوازية بشكلٍ مُحرج ". في كثير من الأحيان، تستغرق مشكلة حسابية يُمكن حلّها بسرعة باستخدام استراتيجيات تصميم ذات توازي عالٍ على مستوى البيانات (TLP)، مثل المعالجة المتعددة المتناظرة، وقتًا أطول بكثير على أجهزة ذات توازي عالٍ على مستوى التعليمات (ILP)، مثل وحدات المعالجة المركزية فائقة القياس، والعكس صحيح.
- ↑ سابقًا، كان يُستخدم مصطلح "الكمية العددية" لمقارنة عدد نقاط التحكم في العمليات (IPC) التي توفرها طرق البرمجة الخطية الصحيحة المختلفة. هنا، يُستخدم المصطلح بالمعنى الرياضي البحت للتمييز بينه وبين المتجهات. انظر: الكمية العددية (الرياضيات) والمتجه (الهندسة) .
- على الرغم من أن تقنيات SSE/SSE2/SSE3 قد حلت محل MMX في معالجات إنتل للأغراض العامة، إلا أن تصميمات IA-32 اللاحقة لا تزال تدعم MMX. ويتم ذلك عادةً بتوفير معظم وظائف MMX باستخدام نفس المكونات المادية التي تدعم مجموعات تعليمات SSE الأكثر شمولاً.
مراجع
- ↑ فريق، خبير YCT. الرسم الهندسي والعلوم الأساسية . مجلة مسابقة الشباب. ص 425.
- ↑ ناجبال، د.ب. (2008). أساسيات الحاسوب . دار نشر إس. تشاند. ص 33. ISBN 978-81-219-2388-0.
- ↑ "ما هو المعالج (CPU)؟ تعريف من موقع WhatIs.com" . WhatIs . Informa TechTarget. 14 أغسطس 2019. مؤرشف من الأصل بتاريخ 15 مارس 2024. تم الاطلاع عليه بتاريخ 15 مارس 2024 .
- ↑ تشيسالوف، ألكسندر (12 أبريل 2023). معجم الثورة الصناعية الرابعة: أكثر من 1500 مصطلح من أهم المصطلحات التي ستستخدمها لصنع المستقبل . لترات. ISBN 978-5-04-541163-9.
- ↑ جاغاري، أولريكا (19 أبريل 2022). تشغيل الذكاء الاصطناعي: سد الفجوة بين التكنولوجيا والأعمال . جون وايلي وأولاده. ISBN 978-1-119-83321-5.
- ^ كوك ، ديفيد (1978). أجهزة الكمبيوتر والحسابات، المجلد 1 . شركة جون وايلي وأولاده، ص. 12. رقم ISBN 978-0471027164.
- ↑ برابهات، فريق (13-04-2023). الدليل الشامل لامتحان SSC CGL الموحد للخريجين - المستوى الأول والثاني - التمهيدي والنهائي (مع أحدث نماذج الأسئلة المحلولة). كتاب باللغة الإنجليزية: كتاب من أكثر الكتب مبيعًا من تأليف فريق برابهات: الدليل الشامل لامتحان SSC CGL الموحد للخريجين - المستوى الأول والثاني - التمهيدي والنهائي (مع أحدث نماذج الأسئلة المحلولة). كتاب باللغة الإنجليزية . دار برابهات للنشر. صفحة 95. ISBN 978-93-5488-527-3.
- ↑ "ما هو المعالج متعدد النوى وكيف يعمل؟" . TechTarget . 2022-03-07 . تم الاطلاع عليه بتاريخ 2026-07-05 .
- 1 2 ديمينتييف، رومان؛ ويلهايم، توماس؛ بروغمان، أوتو؛ فاي، باتريك؛ أونغيرر، باتريك؛ أوت، أوستن؛ لو، باتريك؛ هاريس، جيمس؛ كيرلي، فيل؛ كونسور، باتريك؛ سيمين، أندريه؛ كانالي، مايكل؛ برازونيس، رايان؛ شاه، راهول؛ دوبكينز، جاكوب (30 نوفمبر 2022). "مراقب عداد أداء Intel® - طريقة أفضل لقياس استخدام وحدة المعالجة المركزية" . Intel . تم الاسترجاع في 5 يوليو 2026 .
- ↑ هيريس، ديفيد (2020-10-06). راسمات الذبذبات: دليل للطلاب والمهندسين والعلماء . سبرينغر نيتشر. ص 130. ISBN 978-3-030-53885-9.
- ↑ ريغان، جيرارد (2008). تاريخ موجز للحوسبة . سبرينغر. ص 66. ISBN 978-1848000834تم الاطلاع عليه بتاريخ 26 نوفمبر 2014 .
- ↑ ويك، مارتن هـ. (1955). "دراسة استقصائية لأنظمة الحوسبة الرقمية الإلكترونية المحلية" . موقع إد ثيلين الإلكتروني لصواريخ نايك . مختبر أبحاث المقذوفات . مؤرشف من الأصل بتاريخ 26 يناير 2021. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- 1 2 ويك، مارتن هـ. (1961). "دراسة ثالثة لأنظمة الحوسبة الرقمية الإلكترونية المحلية" . موقع إد ثيلين الإلكتروني لصواريخ نايك . مختبر أبحاث المقذوفات . مؤرشف من الأصل في 11 سبتمبر 2017. تم الاطلاع عليه في 16 ديسمبر 2005 .
- ↑ "خطوة بخطوة" . كلية هافرفورد. مؤرشف من الأصل في 13 أكتوبر 2012. تم الاطلاع عليه في 1 أغسطس 2015 .
- ↑ المسودة الأولى لتقرير حول جهاز EDVAC (ملف PDF) (تقرير فني). كلية مور للهندسة الكهربائية ، جامعة بنسلفانيا . 1945. مؤرشف (ملف PDF) من الأصل بتاريخ 9 مارس 2021. تم الاطلاع عليه بتاريخ 31 مارس 2018 .
- ↑ كوبلاند، ب. جاك (2020)، "التاريخ الحديث للحوسبة" ، في زالتا، إدوارد ن. (محرر)، موسوعة ستانفورد للفلسفة (طبعة شتاء 2020 )، مختبر أبحاث الميتافيزيقا، جامعة ستانفورد ، تاريخ الاسترجاع 2026-07-05
- ↑ "عيد ميلاد إينياك" . مطبعة معهد ماساتشوستس للتكنولوجيا. 9 فبراير 2016. مؤرشف من الأصل في 17 أكتوبر 2018. تم الاطلاع عليه في 17 أكتوبر 2018 .
- ↑ إنتيكناب، نيكولاس (صيف 1998)، "اليوبيل الذهبي للحوسبة" ، ريزركشن (20)، جمعية الحفاظ على الحاسوب، الرقم الدولي الموحد للدوريات 0958-7403 ، مؤرشف من الأصل في 17 مارس 2019 ، تم استرجاعه في 26 يونيو 2019
- ↑ "مانشستر مارك 1" . جامعة مانشستر . مؤرشف من الأصل في 25 يناير 2015. تم الاطلاع عليه في 25 سبتمبر 2015 .
- ↑ "الجيل الأول" . متحف تاريخ الحاسوب. مؤرشف من الأصل بتاريخ 22-11-2016 . تم الاطلاع عليه بتاريخ 05-07-2026 .
- ↑ "تاريخ الدوائر المتكاملة" . Nobelprize.org . مؤرشف من الأصل بتاريخ 22-05-2022 . تم الاطلاع عليه بتاريخ 05-07-2026 .
- ↑ تورلي، جيم (11 أغسطس 2003). "التحكم بالسيارات باستخدام المعالجات الدقيقة" . مُدمج. مؤرشف من الأصل بتاريخ 14 أكتوبر 2022. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ تريغز، روبرت (25 يونيو 2013). "دليل معالجات الهواتف المحمولة - صيف 2013" . موقع Android Authority. مؤرشف من الأصل بتاريخ 17 نوفمبر 2015. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ كوين، كريستا. "القسم 250: المعالجات الدقيقة والألعاب: مقدمة في أنظمة الحوسبة" . جامعة ميشيغان. مؤرشف من الأصل في 13 أبريل 2021. تم الاطلاع عليه في 9 أكتوبر 2018 .
- ↑ "معالج ARM946" . ARM. مؤرشف من الأصل بتاريخ 17-11-2015.
- ^ "كونراد زوزه" . متحف تاريخ الكمبيوتر. 2025-08-18 . تم الاسترجاع بتاريخ 2026-07-05 .
- ↑ "الجدول الزمني لتاريخ الحاسوب: الحواسيب" . متحف تاريخ الحاسوب. مؤرشف من الأصل بتاريخ 29-12-2017 . تم الاطلاع عليه بتاريخ 05-07-2026 .
- ↑ وايت، ستيفن. "تاريخ موجز للحوسبة - حواسيب الجيل الأول" . تريليان . مؤرشف من الأصل في 2018-01-02 . تم الاسترجاع في 2026-07-05 .
- ↑ "وحدة تثقيب الشريط الورقي مارك 1 بجامعة هارفارد" . متحف تاريخ الحاسوب. مؤرشف من الأصل بتاريخ 22 نوفمبر 2015. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ "ما الفرق بين عمارة فون نيومان وعمارة هارفارد؟" . ARM. 9 سبتمبر 2008. مؤرشف من الأصل في 2 أكتوبر 2015. تم الاطلاع عليه في 22 نوفمبر 2015 .
- ↑ "هندسة معمارية متقدمة تُحسّن أداء معالج Atmel AVR" . Atmel. مؤرشف من الأصل بتاريخ 14 نوفمبر 2015. تم الاطلاع عليه بتاريخ 22 نوفمبر 2015 .
- ↑ "المفاتيح والترانزستورات والمرحلات" . بي بي سي. مؤرشف من الأصل بتاريخ 2016-12-05.
- ↑ هان، جين-وو؛ ميبابان، ميا (23-06-2014). "تقديم ترانزستور الفراغ: جهاز مصنوع من لا شيء" . مجلة IEEE Spectrum . مؤرشف من الأصل في 23-03-2018 . تم الاطلاع عليه في 05-07-2026 .
- ↑ ما هو أداء الحاسوب؟ . مطبعة الأكاديميات الوطنية. 2011. doi : 10.17226/12980 . ISBN 978-0-309-15951-7أُرشف من المصدر الأصلي بتاريخ 2016-06-05 . تم الاطلاع عليه بتاريخ 2026-07-05 .
- ↑ "1953: ظهور الحواسيب الترانزستورية" . متحف تاريخ الحاسوب . مؤرشف من الأصل بتاريخ 1 يونيو 2016. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ "تواريخ وخصائص نظام IBM System/360" . شركة IBM. 23 يناير 2003. مؤرشف من الأصل في 21 نوفمبر 2017. تم الاطلاع عليه في 13 يناير 2016 .
- 1 2 أمدال، جي إم ؛ بلاو، جي إيه ؛ بروكس، إف بي جونيور (أبريل 1964). "بنية نظام IBM System/360". مجلة IBM للبحوث والتطوير . 8 (2). IBM : 87-101 . doi : 10.1147/rd.82.0087 . ISSN 0018-8646 .
- ↑ برودكين، جون (2014-04-07). "قبل 50 عامًا، ابتكرت شركة IBM حاسوبًا مركزيًا ساهم في إرسال رواد فضاء إلى القمر" . آرس تكنيكا . مؤرشف من الأصل في 2016-04-08 . تم الاطلاع عليه في 2026-07-05 .
- ↑ كلارك، جافين (7 أبريل 2014). "لماذا لا تموت؟ نظام S/360 من IBM وإرثه بعد 50 عامًا" . ذا ريجستر . تم الاسترجاع في 5 يوليو 2026 .
- ↑ "الصفحة الرئيسية لجهاز PDP-8 على الإنترنت، تشغيل جهاز PDP-8" . PDP8 . مؤرشف من الأصل بتاريخ 11 أغسطس 2015. تم الاطلاع عليه بتاريخ 25 سبتمبر 2015 .
- ↑ "الترانزستورات، والمرحلات، والتحكم في الأحمال عالية التيار" . جامعة نيويورك . قسم الحوسبة الفيزيائية. مؤرشف من الأصل بتاريخ 21 أبريل 2016. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ ليلي، بول (14 أبريل 2009). "تاريخ موجز لوحدات المعالجة المركزية: 31 عامًا رائعة من x86" . مجلة PC Gamer . تاريخ الاسترجاع: 5 يوليو 2026 .
- 1 2 باترسون، ديفيد أ.؛ هينيسي، جون ل.؛ لاروس، جيمس ر. (1999). تنظيم وتصميم الحاسوب: واجهة الأجهزة/البرمجيات (الطبعة الثالثة من الطبعة الثانية ). سان فرانسيسكو ، كاليفورنيا: كوفمان. ص 751. ISBN 978-1558604285.
- ↑ "1962: أنظمة الفضاء الجوي هي أولى تطبيقات الدوائر المتكاملة في الحواسيب" . متحف تاريخ الحاسوب . مؤرشف من الأصل بتاريخ 5 أكتوبر 2018. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ "الدوائر المتكاملة في برنامج أبولو للهبوط المأهول على سطح القمر" . الإدارة الوطنية للملاحة الجوية والفضاء. مؤرشف من الأصل بتاريخ 21 يوليو 2019. تم الاطلاع عليه بتاريخ 9 أكتوبر 2018 .
- ↑ "إعلان نظام 370" . أرشيفات آي بي إم . 23 يناير 2003. مؤرشف من الأصل في 20 أغسطس 2018. تم الاطلاع عليه في 25 أكتوبر 2017 .
- ↑ "System/370 Model 155 (تابع)" . أرشيفات IBM . 23 يناير 2003. مؤرشف من الأصل في 20 يوليو 2016. تم الاطلاع عليه في 25 أكتوبر 2017 .
- ↑ "النماذج والخيارات" . شركة ديجيتال إكويبمنت، PDP-8. مؤرشف من الأصل بتاريخ 26-06-2018 . تم الاطلاع عليه بتاريخ 05-07-2026 .
- ↑ باسيت، روس نوكس (2007). إلى العصر الرقمي: مختبرات الأبحاث، والشركات الناشئة، وصعود تقنية MOS . مطبعة جامعة جونز هوبكنز . الصفحات 127-128 ، 256، و314. ISBN 978-0-8018-6809-2.
- 1 2 شيريف، كين. "معالج تكساس إنسترومنتس TMX 1795: أول معالج دقيق منسي" . مدونة كين شيريف . مؤرشف من الأصل بتاريخ 26 يناير 2021. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ "سرعة وقوة S2 في عائلات المنطق" . جامعة براون . مؤرشف من الأصل بتاريخ 26-07-2017.
- ↑ ستونهام، تي جيه (1996). تقنيات المنطق الرقمي: المبادئ والتطبيق . تايلور وفرانسيس. ص 174. ISBN 9780412549700.
- ↑ "1968: تطوير تقنية بوابة السيليكون للدوائر المتكاملة" . متحف تاريخ الحاسوب . مؤرشف من الأصل بتاريخ 29 يوليو 2020. تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ بوهر، آر كيه (1968). حاسوب MOS GP (ملف PDF) . ورشة العمل الدولية حول إدارة متطلبات المعرفة. AFIPS . ص 877. doi : 10.1109/AFIPS.1968.126 . مؤرشف (ملف PDF) من الأصل بتاريخ 14 يوليو 2017.
- ↑ "أوصاف وحدات LSI-11". دليل مستخدم LSI-11، PDP-11/03 (ملف PDF) ( الطبعة الثانية ). ماينارد، ماساتشوستس: شركة ديجيتال إكويبمنت . نوفمبر 1975. ص 4-3 . مؤرشف (ملف PDF) من الأصل بتاريخ 10 أكتوبر 2021. تم الاطلاع عليه بتاريخ 20 فبراير 2015 .
- ↑ كاس، ستيفن (2018-07-02). "قاعة مشاهير الرقائق: معالج إنتل 4004" . مجلة IEEE Spectrum . تم الاطلاع عليه بتاريخ 2026-07-05 .
- ↑ بيجلو، ستيفن ج. (2022-03-07). "ما هو المعالج متعدد النوى وكيف يعمل؟" . تيك تارجت. مؤرشف من الأصل في 2022-07-11 . تم الاطلاع عليه في 2026-07-05 .
- ↑ بيركبي، ريتشارد. "تاريخ موجز للمعالج الدقيق" . computermuseum.li . مؤرشف من الأصل بتاريخ 23-09-2015 . تم الاطلاع عليه بتاريخ 13-10-2015 .
- ↑ أوزبورن، آدم (1980). مقدمة في الحواسيب الصغيرة . المجلد 1: المفاهيم الأساسية ( الطبعة الثانية). بيركلي، كاليفورنيا: أوزبورن-ماكجرو هيل. ISBN 978-0-931988-34-9.
- ↑ زيسلينا، فيكتوريا (19 فبراير 2014). "لماذا توقف تردد المعالج عن النمو؟" . إنتل. مؤرشف من الأصل في 21 يونيو 2017. تم الاطلاع عليه في 14 أكتوبر 2015 .
- ↑ "ترانزستور MOS - الهندسة الكهربائية وعلوم الحاسوب" (ملف PDF) . جامعة كاليفورنيا. مؤرشف (ملف PDF) من الأصل بتاريخ 9 أكتوبر 2022. تم الاطلاع عليه بتاريخ 14 أكتوبر 2015 .
- ↑ سيمونايت، توم (13 مايو 2016). "قانون مور قد انتهى. ماذا بعد؟" . مجلة إم آي تي للتكنولوجيا . مؤرشف من الأصل في 22 أغسطس 2018. تم الاطلاع عليه في 5 يوليو 2026 .
- ↑ مور، غوردون (2005). "مقتطفات من حوار مع غوردون مور: قانون مور" (ملف PDF) (مقابلة). إنتل. مؤرشف من الأصل (ملف PDF) بتاريخ 29 أكتوبر 2012. تم الاطلاع عليه بتاريخ 25 يوليو 2012 .
- ↑ آدم (15 ديسمبر 2016). "تاريخ مفصل للمعالج" . موقع Tech Junkie. مؤرشف من الأصل بتاريخ 14 أغسطس 2019. تم الاطلاع عليه بتاريخ 14 أغسطس 2019 .
- ↑ إيغينمان، رودولف؛ ليليا، ديفيد (1998). "حواسيب فون نيومان". موسوعة وايلي للهندسة الكهربائية والإلكترونية . doi : 10.1002/047134608X.W1704 . ISBN 047134608X. S2CID 8197337 .
- ↑ أسبري، ويليام (سبتمبر 1990). "مفهوم البرنامج المخزن". مجلة IEEE Spectrum . المجلد 27، العدد 9. ص 51. doi : 10.1109/6.58457 .
- ↑ ساراسوات، كريشنا. "اتجاهات تكنولوجيا الدوائر المتكاملة" (ملف PDF) . جامعة ستانفورد. مؤرشف من الأصل (ملف PDF) بتاريخ 24 يوليو 2015. تم الاطلاع عليه بتاريخ 15 يونيو 2018 .
- ↑ "الهجرة الكهربائية" . مختبر المحاكاة الحاسوبية . جامعة الشرق الأوسط التقنية. 24 أغسطس 2011. مؤرشف من الأصل في 31 يوليو 2017. تم الاطلاع عليه في 15 يونيو 2018 .
- ↑ ويناند، إيان (2013-09-03). "علوم الحاسوب من الأسفل إلى الأعلى، الفصل 3: بنية الحاسوب" (ملف PDF) . علوم الحاسوب من الأسفل إلى الأعلى . مؤرشف (ملف PDF) من الأصل بتاريخ 2016-02-06 . تم الاطلاع عليه بتاريخ 2026-07-05 .
- ↑ "مقدمة عن وحدة التحكم وتصميمها" . GeeksforGeeks . 24-09-2018. مؤرشف من الأصل في 15-01-2021 . تم الاطلاع عليه في 05-07-2026 .
- ↑ US20060010255A1 ، بيركل، كورنيليس فان وميويسِن ، باتريك، "وحدة توليد عناوين للمعالج"، صدرت في 12 يناير 2006
- ↑ "ما هي وحدة إدارة الذاكرة (MMU)؟" . GeeksforGeeks . 23-07-2025 . تم الاطلاع عليه بتاريخ 05-07-2026 .
- ↑ س.، مايك (12-09-2007). "كيف تعمل ذاكرة التخزين المؤقت" . أسرار الأجهزة . تم الاسترجاع في 05-07-2026 .
- ↑ "مقدمة تقنية عن IBM z13 و IBM z13s" (ملف PDF) . IBM . مارس 2016. صفحة 20. مؤرشف (ملف PDF) من الأصل بتاريخ 9 أكتوبر 2022.
- ↑ براون، جيفري (2005). "تصميم وحدة المعالجة المركزية المُخصّص للتطبيقات" . IBM developerWorks. مؤرشف من الأصل بتاريخ 12 فبراير 2006. تم الاطلاع عليه بتاريخ 17 ديسمبر 2005 .
- ↑ مارتن، أ. ج.؛ نيستروم، م.؛ وونغ، س. ج. (نوفمبر 2003). "ثلاثة أجيال من المعالجات الدقيقة غير المتزامنة". مجلة IEEE لتصميم واختبار الحواسيب . 20 (6): 9-17 . رمز Bibcode : 2003IDTC...20....9M . doi : 10.1109/MDT.2003.1246159 . ISSN 1558-1918 .
- ↑ غارسيد، جيه دي؛ فوربر، إس بي؛ تشونغ، إس إتش (1999). "الكشف عن AMULET3" . وقائع الندوة الدولية الخامسة حول البحوث المتقدمة في الدوائر والأنظمة غير المتزامنة . قسم علوم الحاسوب ، جامعة مانشستر . doi : 10.1109/ASYNC.1999.761522 . مؤرشف من الأصل في 10 ديسمبر 2005.
- ↑ الخصائص الوظيفية لنظام IBM System/360 موديل 65 (ملف PDF) . شركة IBM . سبتمبر 1968. الصفحات 8-9 . A22-6884-3. مؤرشف (ملف PDF) من الأصل بتاريخ 2022-10-09.
- ↑ هوينه، جاك (2003). "معالج AMD Athlon XP بذاكرة تخزين مؤقتة من المستوى الثاني سعة 512 كيلوبايت" (ملف PDF) . أوربانا-شامبين، إلينوي: جامعة إلينوي. الصفحات 6-11 . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 28 نوفمبر 2007. تم الاطلاع عليه بتاريخ 6 أكتوبر 2007 .
- ↑ غوتليب، آلان؛ ألماسي، جورج س. (1989). الحوسبة المتوازية للغاية . ريدوود سيتي، كاليفورنيا: بنجامين/كومينغز. ISBN 978-0-8053-0177-9أُرشف من المصدر الأصلي بتاريخ 7 نوفمبر 2018. تم الاطلاع عليه بتاريخ 25 أبريل 2016 .
- ↑ فلين، مايكل ج. (سبتمبر 1972). "بعض تنظيمات الحاسوب وفعاليتها". معاملات IEEE في مجال الحواسيب . C-21 (9): 948-960 . Bibcode : 1972ITCmp.100..948F . doi : 10.1109/TC.1972.5009071 . ISSN 1557-9956 .
- ↑ لو، ن.-ب.؛ تشونغ، س.-ب. (1998). "استغلال التوازي في المعالجة المتعددة فائقة القياس" . وقائع معهد مهندسي الكهرباء والإلكترونيات - الحوسبة والتقنيات الرقمية . 145 (4): 255. doi : 10.1049/ip-cdt:19981955 (غير نشط في 9 يوليو 2026).
{{cite journal}}: صيانة CS1: تم تعطيل DOI اعتبارًا من يوليو 2026 ( رابط ) - ↑ أوهساديل، ليف؛ جورج، آندي؛ فيرباويد، إنغريد (أغسطس 2008). "استغلال عدادات أداء الأجهزة". ورشة العمل الخامسة لعام 2008 حول تشخيص الأعطال وتحملها في علم التشفير . الصفحات 59-67 . Bibcode : 2008fdtc.conf...15U . doi : 10.1109/FDTC.2008.19 . ISBN 978-0-7695-3314-8.
- ↑ روهو، إرفين (سبتمبر 2012). "تيب توب: عدادات أداء الأجهزة للجميع". ورش عمل المؤتمر الدولي الحادي والأربعين للمعالجة المتوازية 2012. الصفحات 404-413 . Bibcode : 2012icpp.conf...69R . doi : 10.1109/ICPPW.2012.58 . ISBN 978-1-4673-2509-7.
- ↑ هيراث، نيشاد؛ فوغ، أندرس (2015). "عدادات أداء أجهزة المعالج لأغراض الأمن" (ملف PDF) . الولايات المتحدة الأمريكية: بلاك هات. مؤرشف (ملف PDF) من الأصل بتاريخ 5 سبتمبر 2015.
- ↑ جوسانغ، أودون (21-06-2018). المؤتمر الأوروبي السابع عشر للحرب السيبرانية والأمن ECCWS 2018، الإصدار الثاني . منشورات المؤتمرات الأكاديمية المحدودة. ISBN 978-1-911218-86-9.
- ↑ ديروز، لويز أ. (2001)، "مجموعة أدوات مراقبة أداء الأجهزة" ، في ساكيلاريو، ريزوس؛ جورد، جون؛ فريمان، لين؛ كين، جون (محررون)، المعالجة المتوازية Euro-Par 2001 ، سلسلة محاضرات في علوم الحاسوب، المجلد 2150، برلين، هايدلبرغ: سبرينغر برلين هايدلبرغ، الصفحات 122-132 ، doi : 10.1007/3-540-44681-8_19 ، ISBN 978-3-540-42495-6تمت أرشفة هذا النص من المصدر الأصلي بتاريخ 1 مارس 2023 ، وتمت مراجعته بتاريخ 30 ديسمبر 2021.
- ↑ غارسيا، أدريانو ماركيز (2019). "نحو معيار لتقييم أداء واستهلاك الطاقة لواجهات البرمجة المتوازية" (باللغة البرتغالية البرازيلية). جامعة بامبا الفيدرالية . تاريخ الاسترجاع: 5 يوليو 2026 .
- ↑ تشودري، تارون كومار؛ بانيرجي، جوينتا؛ غوبتا، فيبول؛ بودار، ديبوبام (2024-03-04). إتقان تطبيقات جافا الآمنة: استكشاف الأمن في الحوسبة السحابية والخدمات المصغرة لجافا ( النسخة الإنجليزية). منشورات BPB. ص 117. ISBN 978-93-5551-884-2.
- ↑ أنجوم، بشرى؛ بيروس، هاري ج. (2015). "1: تقسيم ميزانية جودة الخدمة الشاملة إلى نطاقات" . تخصيص النطاق الترددي للفيديو في ظل قيود جودة الخدمة . سلسلة فوكس. جون وايلي وأولاده. ص 3. ISBN 9781848217461تم الاطلاع عليه بتاريخ ٢١ سبتمبر ٢٠١٦.
[...] في الحوسبة السحابية حيث تعمل مكونات برمجية متعددة في بيئة افتراضية على نفس الخادم، مكون واحد لكل جهاز افتراضي. يُخصص لكل جهاز افتراضي وحدة معالجة مركزية افتراضية [...] وهي جزء من وحدة المعالجة المركزية للخادم.
- ↑ فيفيلد، توم؛ فليمنج، ديان؛ جنتل، آن؛ هوكشتاين، لورين؛ برولكس، جوناثان؛ تويز، إيفريت؛ توبجيان، جو (2014). "مسرد المصطلحات" . دليل عمليات أوبن ستاك . بكين: أورايلي ميديا، ص 286. ISBN 9781491906309تم الاطلاع عليه بتاريخ 20 سبتمبر 2016.
وحدة المعالجة المركزية الافتراضية (vCPU): تقسم وحدات المعالجة المركزية الفعلية. ويمكن للأجهزة بعد ذلك استخدام هذه الأقسام.
- ↑ "نظرة عامة على بنية VMware التحتية - ورقة بيضاء" (ملف PDF) . VMware . 2006. مؤرشف من الأصل (ملف PDF) بتاريخ 2022-10-09.
- ↑ "تردد المعالج" . معجم مصطلحات عالم المعالجات . عالم المعالجات. 25-03-2008. مؤرشف من الأصل في 09-02-2010 . تم الاطلاع عليه في 05-07-2026 .
- ↑ "معالج AMD Ryzen 7 مقابل معالج Intel i5: أيهما أفضل؟" . GEEKOM . 2021-03-28 . تم الاطلاع عليه بتاريخ 2026-07-05 .
- ↑ "ما هو المعالج متعدد النوى؟" . TechTarget . 27-03-2007. مؤرشف من الأصل في 05-08-2010 . تم الاطلاع عليه في 08-08-2016 .
- ↑ فاتك، أومكار (8 أبريل 2010). "معالج رباعي النواة مقابل معالج ثنائي النواة" . تيك سبيريتد . مؤرشف من الأصل في 4 يوليو 2019. تم الاطلاع عليه في 7 نوفمبر 2019 .
- ↑ فيكلاو، مارسين (14 ديسمبر 2024). "العوامل المؤثرة على أداء المعالجات متعددة النوى" . موقع PCSite . تم الاطلاع عليه بتاريخ 5 يوليو 2026 .
- ↑ تيغتماير، مارتن. "شرح استخدام وحدة المعالجة المركزية في البنى متعددة الخيوط" . أوراكل . تم الاسترجاع في 17 يوليو 2022 .
{{cite web}}: CS1 maint: url-status ( link ) - ↑ توماس، ديلجو؛ شانموغاسوندارام، م (مارس 2018). "دراسة استقصائية حول طرق كسر السرعة المختلفة". المؤتمر الدولي الثاني للإلكترونيات والاتصالات وتكنولوجيا الفضاء (ICECA) لعام 2018. الصفحات 1588-1592. doi : 10.1109 /ICECA.2018.8474921 . ISBN 978-1-5386-0965-1.
- ↑ «للعلم: رقائق الكمبيوتر الحديثة متطورة للغاية، لدرجة أنها أكثر تقلباً من كونها دقيقة - وهذا هو الدليل» . 4 يونيو 2021. مؤرشف من الأصل في 13 فبراير 2024. تم الاطلاع عليه في 13 فبراير 2024 .
روابط خارجية
- وحدات المعالجة المركزية
- الإلكترونيات الرقمية
- التصميم الإلكتروني
- أتمتة التصميم الإلكتروني
