![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
جدول1
پنتيوم M به دو شكل وجود دارد:
(Pin Grid Array) Micro-FCPGA و (Ball Grid Array) Micro-FCBGA و هم اكنون شش مدل از آن موجود است که در جدول 2 نشان داده شده است. توجه داشته باشيم كه مدل «ولتاژ فوقالعاده پايين» درMHz 900 فقط به 1 ولت نياز دارد و افت نيروي آن نيز هفت وات مي باشد. در عوض پنتيوم 3 سيار، MKZ 933 با ولتاژ 5/1 ولت نياز دارد و افت انرژي (انرژي اتلاف) در آن بيشتر از 20 وات است. پنتيومM حقيقتا ًبراي انرژي و توان پايين تر ساخته شده است. (جدول 2)
جدول 2
ساختار Pentium Mهسته (P6+)همانطور كه مشاهده كردهايم طراحي ساختار پنتيوم 3 براي CPU هاي سيار بسيار مناسب و كارآمد است و در نتيجه براي طراحي پايه پنتيوم M به كار رفته است. CPU پنتيوم M يك CPU ازخانواده P6 ميباشد و مدل 9 آن به شكل حيرت انگيزي بين مدل 8 و مدل 11 Tualatin قرار دارد. مدل پنتيوم 3 براساس هسته RISC و با پنج قسمت و داراي كانال هاي اطلاعاتي 10 مرحلهاي است. هسته پنتيوم M داراي ويژگي هاي بسيار مشابه آن است اما سرعت ساعتش اين را به اثبات ميرساند كه از كانال هاي اطلاعاتي عميقتري بهره ميبرد. در حقيقت پنتيومM امروزه تا GHz 6/1 موجود است و سرعت زماني آن حقيقتاً بيرون از دامنه هسته كنوني پنتيوم 3 است در حالي كه سريعترين مدل موجود با µ13/0 از فركانس GHz 4/1 استفاده ميكند. يك كانال اطلاعاتي عميقتر با سطحي بالاتر از 10 ممكن است تشريح كند كه پنتيوم M توليدشده (µ13/0) قادر است تا به GHz 6/1 برسد. پنتيوم 4 نشان ميدهد كه يك كانال اطلاعاتي عميق اين امكان را فراهم ميآورد كه به يك فركانس زماني بالا دست پيدا كنيم. (كانال اطلاعاتي پنتيوم 4 ، 20 مرحلهاي است و به GHz 06/3 ميرسد با يك فرآيند يا روند µ13/0). شركت اينتل مايل است تا تأييد كند پنتيوم M از كانال اطلاعاتي عميقتري استفاده مي کند اما مقادير حقيقي را آشكار نميسازد. همه چيزي را كه ميتوانيم بگوييم اين است كه اين به 10 مرحلهاي بودن نزديكتر است تا به 20 مرحلهاي بودن، زيرا عميق ترين كانال اطلاعاتي (ناكارآمدترين) CPU در يك سرعت زماني خاص وجود دارد. پنتيوم 4 نيازمند يك مكانيسم پيشبيني سطح بالا مي باشد تا اين اثرات بد را كاهش دهد و برون داد كانال اطلاعاتي را افزايش و بهبود ببخشد. همانطور كه خواهيم ديد، پنتيوم M همچنين شامل پيشرفتهايي جهت كاهش اثر جانبي منفي كانال هاي اطلاعاتي عميقتر ميباشد. بدترين چيزي كه ممكن است براي يك كانال اطلاعاتي رخ دهد اين است كه CPUها بد شاخهبندي شوند. چگونه اين كار ممكن است؟ CPU هاي مدرن از چندين نوع ساختار مديريت بهره مي برند تا زمان را کاهش دهند. اما اتفاق زماني رخ ميدهد كه يك شاخه و انشعاب ديده ميشود. كدام بخش انشعاب انتخاب ميشود؟ براي حل اين مشكل و انتخاب، CPUها از سيستم و مكانيزم پيشبيني استفاده ميكنند و آن هم براساس الگوريتمهاي پيچيده كه تصميم گيري مينمايد كه كدام قسمت از انشعاب يا شاخه بايد انتخاب شود. اگر CPU دچار اشتباه گردد، اين مكانيزم بايد جريان دستور را عوض نمايد و كانال هاي اطلاعاتي را از دستورات بلااستفاده و غير مفيد كاملاً پاك كند. اين عمليات بسيار طولاني است و هر چه كانال اطلاعاتي عميقتر باشد طولانيتر نيز ميشود. بنابراين CPU هاي داراي كانال هاي ارتباط عميق داراي اشتباهات احتمالي كمتري هستند و بنابراين الگوريتمهاي پيشبيني شاخه و انشعاب خودشان را بهبود ميبخشند. CPU پنتيوم 3 شامل 2 مكانيزم مكمل پيشبيني انشعاب است. پنتيوم M نيز به همين شكل از 2 مكانيزم مذكور استفاده ميكند بعلاوه اينكه از يك مكانيزم سوم نيز استفاده ميكند (شکل 1). · يك مكانيزم ثابت که از يك الگوريتم ثابت استفاده ميكند و به انشعابات ساده ميپردازد. اين الگوريتم اين اجازه را ميدهد تا انشعاباتي را كه قوي يا نه چندان قوي آورده شدهاند را مديريت كند. به عبارت ديگر CPU رفتار بعضي از الگوهاي انشعابي را پيشبيني ميكند و حدس ميزند. اين روش به الگوريتم bi-modal مشهور است. · يك مكانيزم پوياي پيشبيني براي loops local اختصاص يافته است. يك local range buffer اين اجازه را ميدهد تا يك تاريخچه از شاخهها و انشعابات را ذخيره سازد. وقتي با يك شاخه و انشعاب روبرو ميشويم، CPU به جدول مذكور رجوع كرده و مطابق با نتيجه عمل ميكند. اين سيستم را «پيشبينيكننده local» مينامند. · مكانيزم پوياي پيشبيني ديگر شبيه مدل پوياي ذكر شده است ولي با global range و نام آن نيز «پيشبيني كننده global» است. براساس استانداردهاي شركت اينتل اين 3 مكانيزم اين امكان را فراهم ميكنند تا خطاي انشعاب را از 20% كاهش دهند(در مقايسه با پنتيوم 3).
شكل 1
يك مديريت كارآمدتر فرمان ها: پنتيوم M شامل دو تحول و پيشرفت در سطح پايين در مديريت فرمانها شده است. در جريان عادي كار فرمان هاي عمل شده توسط CPU در يك مجموعه از ميكرواپراتورها كدخواني ميگردند كه هر كدام توسط بخش هاي اختصاص داده شده (…,Load limit, FP ALU) انجام ميشود.
Add eax, [memory]اين فرمان ساده به ثبتكننده eax ارزشي را كه در يك آدرس موجود در حافظه وجود دارد ميافزايد. پشت سر اين فرمان 2 پيش عمليات وجود دارد. عمليات بارگذاري كه توسط بخش بارگذاري انجام ميشود و عمليات عددي يا حسابي كه توسط بخش ALU انجام ميپذيرد. بنابراين فرمان قبلي توسط CPU اين چنين ديده ميشود:
Load reg0, [memory]Add reg1, reg0 اين كار 2 گام را بوجود ميآورد. پيشرفت پنتيوم M شامل توانايياش در ادغام اين 2 كار با هم و در يك زمان است و به جاي آن با يك عمليات و فرمان هر دوي آنها را انجام ميدهد. Add reg1, [memory]بنابراين تعداد كل عملياتها كاهش مييابد: اين كاهش مطابق استانداردهاي اينتل تا 10% در جريان دستورات عمومي و معمولي ميرسد. به اين مكانيزم تلفيق ( Fusion ) مي گويند. دومين بهينهسازي مربوط به مديريت stack ميباشد. stack يك ناحيه حافظه اختصاصي است كه در نرمافزارها استفاده ميشود تا پارامترها و دادهها را هنگامي كه يك زير بخش از برنامه فراخوانده شده است، ذخيره نمايد. مديريت stack نسبت به مدارهاي CPU گرسنه است زيرا به ميزان زيادي به بارگذاري و فرمان هاي حركت نياز دارد. در پنتيوم M تعداد پيشعملياتهاي فرمان هاي به كارگرفته شده براي مديريت stack كاهش يافته تا سرعت فرآيند افزايش يابد و اين فقط به خاطر مديريت اختصاص يافته stack است كه به كار رفته است. سرانجام اينكه پيشرفتهاي پنتيوم M دو هدف را دنبال ميكند: دارا بودن يك CPU كارآمدتر با مصرف پايين انرژي. در حقيقت يك CPU كارآمدتر انرژي (برق) كمتري نياز دارد.
حافظه پنهان( cache ) حافظه پنهان L1 ( the L1 cache ): در ابتدا بايد نگاهي به اطلاعات حافظه پنهان پنتيوم M داشته باشيم(شکل2). برخلاف پنتيوم 4، پنتيوم M داراي حافظه پنهان كپي شده از پنتيوم 3 ني | ||||||||||||||||||||||||||||||||||||||||||||||||||||||