مسجلات وحدة المعالجة المركزية
المسجلات هي نوع من أنواع الذاكرة السريعة والصغيرة جدا. وهناك أنواع كثيرة من المسجلات، نذكر منها:
1. مسجل التعليمة (Instruction Register) : يحتوي على التعليمة (المفسرة من قبل وحدة التحكم ال (CU) التي تكون بصدد التنفيذ من قبل وحدة الحساب والمنطق (ALU) .
2. مسجل البرنامج (Program Register) : يحتوي على عنوان التعليمة المقبلة والتي تكون مخزنة في الذاكرة الرئيسية (RAM) حيث أن كل التعليمات تكون مخزنة في هذه الذاكرة.
3. مسجل التجميع (Accumulator Register) : يحتوي على النتائج المبدئية للعمليات الحسابية.
قياس السرعة
أن سرعة الحاسب الآلي تقاس بسرعة تنفيذه للعمليات الحسابية في الثانية الواحدة والتي يفوق عددها الملايين. ونشير إليها بالمختصر MIPS .(Millions of Instructions per Second)وهذه السرعة هي في تزايد مستمر مع تطور التكنولوجيا. فالحاسبات الشخصية في عصرنا الحالي تتعدى سرعتها ال 50 MIPS!!! وهذه سرعة هائلة جدا. وسوف نشرح فيما يلي كيفية قياس هذه السرعة.
إن الحاسب الآلي يعتمد على عنصر المعالجة (Processor) لتنفيذ التعليمات. وهذا الأخير يمتلك ساعة (Clock) تدور (أو تدق أو تنبض) كل فترة زمنية محددة. هذه الدورة نسميها (Clock Cycle). بين كل دورة وأخرى يستطيع ال Processor أن يقوم بعمل ما، كأن يأمر الذاكرة RAM بإرسال التعليمة أو يأمر وحدة الحساب والمنطق بالقيام بعملية حسابية مثل الجمع أو الضرب. فكلما كان وقت الدورة هذا قصير كلما كان الحاسب أسرع في العمل.
إن وقت الدورة الواحدة (1 Clock Cycle) يتعلق بسرعة التردد (Frequency). فلو أن لدينا حاسب آلي بسرعة 500 ميجاهرتز (500 MegaHertz - MHz) مثلا فان وقت الدورة الواحدة للساعة (Clock) هو (1/(500 x 106 s = 2 x 10-9s). وهذه القيمة تعادل (2 nanoseconds - ns) لأنه كل واحد ns يساوي 10-9s (1 nanosecond = 10-9 second) وبالتالي فأنه كل فترة زمنية بقدر 2 ns هذا الحاسب قادر على القيام بعمل ما.
إن كل تعليمة لكي تنفذ في الحاسب تحتاج إلى عدة دورات آلة (Clock Cycles). فلو افترضنا أن الحاسب السابق الذي يسير على سرعة 500 MHz يحتاج إلى 4 دورات ساعة (4 Clock Cycles) لينفذ دورة آلة واحدة (One Machine Cycle) او تعليمة واحدة (One Instruction)، فيكون وقت تنفيذ التعليمة الواحدة هو : 2 ns x 4 = 8 ns(وقت الدورة الواحدة) * (عدد الدورات).
أما لمعرفة عدة التعليمات في الثانية الواحدة فيكفي تطبيق القاعدة الثلاثية التالية:
كل تعليمة واحدة تحتاج إلى 4 Clock Cycles
كم تعليمة في الثانية الواحدة = 500 Mhz/8 = 500.000.000/4 = 125.000.000 = 125 MIPS
يعني أن عدد التعليمات التي يمكن لهذا الحاسب أن ينفذهم في الثانية الواحدة هو حوالي مليون وستمائة ألف تعليمة.
ويمكن باختصار أن نعرف هذا العدد بالطريقة التالية:
لنفترض أن عندنا حاسب آلي يسير على سرعة X MHz، نستنتج مباشرة أن وقت دورة الساعة الواحدة هو 1/(X * 106). وبصورة عامة، إننا نحتاج إلى Y دورة ساعة (Y Clock Cycles) لتنفيذ تعليمة واحدة. فإن وقت تنفيذ التعليمة الواحدة هو : Y * 1 / (X * 106)جزء من الثانية. نستخلص إذا أنه خلال ثانية واحدة نستطيع أن ننفذ (X * 106)/Y تعليمة وهو ما يعادل (X/Y MIPS).