1 / 33

معماري هاي امروزي

تهيه کننده: محمد امين راستگو. معماري هاي امروزي. مروري بر معماري CISC. در نخستين پردازنده ها سعي مي شد تا جاي ممکن از فرمان هاي پيچيدهتري استفاده شود زيرا : تفاوت سرعت ميان حافظه اصلي ئ حافظه درون پردازنده باعث ميشد که فرمان هاي درون پردازنده بسيار سريعتر اجرا شوند .

Download Presentation

معماري هاي امروزي

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. تهيه کننده: محمد امين راستگو معماري هاي امروزي

  2. مروري بر معماري CISC • در نخستين پردازنده ها سعي مي شد تا جاي ممکن از فرمان هاي پيچيدهتري استفاده شود زيرا: • تفاوت سرعت ميان حافظه اصلي ئ حافظه درون پردازنده باعث ميشد که فرمان هاي درون پردازنده بسيار سريعتر اجرا شوند. • با فراهم شدن امکان ريز برنامه نويسي(Microprogramming) زحمت توسعه دادن مجموعه فرمان ها کمتر شد. • فرمان هاي بزرگتر و پيچيده تر متتن برنامه اسمبلي را کوچک ميکرد و هزينه ها با کاهش فضاي مورد نياز و کاهش زمان آماده سازي برنامه کمتر ميشد. • اين اميدواري وجود داشت که بتوان ميان زبانهاي سطح بالا و زبان ماشين پل زد. • ضرورت حفظ سازگاري با نسل هاي پيشين استفاده از فرمان هاي پيچيده تر را ايجاب ميکرد. • پيچيده بودن فرمان هاي پردازنده دليلي بود براي توان پردازش زياد کامپيوتر.

  3. معماريRISC • بنياد و ريشه RISC در سه پروژه تحقيقاتي شکل گرفته است : IBM801 و پردازنده RISC برکلي (Berkeley RISC Processor) و پردازنده MIPS استنفورد (Stanford Mips Processor) • ايده اساسي در RISC ساده سازي منطق لازم براي پياده سازي يک پردازنده بوده که قادر به اجراي فقط دستورها و مدهاي آدرس دهي ساده دارد. • از نظر ايده ال همگي دستورهاي پردازنده RISC در يک سيکل اجرا ميشوند اما در تجربه هاي عملي برخي دستورات به سيکلهاي ساعت بيشتري نياز داريم. برخي از پردازنده هاي معروفي که بر پايه معماري RISC بنا شده اند عبارتند از : • Sun’s Sparc, SCI’s MIPS, HP’s PA-RISC,DEC’s ALPHA

  4. خانواده هاي ريز پردازنده ها

  5. خانواده هاي ريز پردازنده ها • خانواده هاي مختلف پردازنده ها را ميتوان بر حسب سرعت ساعت(clock rate) و تعداد سيکل در هر دستورالعمل (cpi) تقسيم کرد. • با پيشرفت تکنولوژي اندازه سرعت پردازنده افزايش يافته است در حالي که سعي بر اين بوده که مقدار CPI پايين نگاه داشته شود. • پردازنده هايي مانند اينتل i486 و M68040 و VAX /8600وIBM390 در خانوادهاي قرار ميگيرند که به عنوان معماري CISC شناخته شده اند. • پردازنده هاي RISC مانند اينتل,SPARC, MIPS R3000,IBM RS/6000,i860 • زير کلاس خاصي از پردازنده هاي RISC پردازنده هاي سوپر اسکالر هستند که اجراي چند دستور را در يک سيکل ساعت به صورت همزمان امکانپذير ميسازند. • از تعداد زيادي واحد عملياتي واحد عملياتيVILW (Very Long Instruction Word)معماريهاي • به نسبت سوپر اسکالر استفاده ميکنند از اينرو CPI يک پردازنده VLIW بسيار کمتر از سوپر اسکالر ميباشد.

  6. معماريRISC همينکه واژهCISC به گوش ميرسد نخستين چيزي که به ذهن ميرسد کاهش تعداد دستوراتي است که CPU پشتيباني ميکند و در نتيجه کاهش پيچيدگي تراشه بنابراين ممکن است که دستورهاي مستقل سريعتر اجرا شوند و يک بهره مناسب با کارايي در هنگام اجراي يک وظيفه در قياس با يک معماري با دستورهاي بيشتر حاصل گردد. هدف اوليه RISC محدود سازي تعداد دستور ها در تراشه بوده است تا هر يک بتوانند ترانزيستورهاي اختصاص يافته براي اجراي يک دستور را در هر سيکل فراهم سازند. اما با بررسي منابع تکنيکي درخواهيم يافت که تراشه هاي RISC امروزي غالبا داراي مجموعه دستورات پيچيده تر و غني تري نسبت به پرازندههايCISC ميباشد به طور مثال power-PC 601 از دستورات بيشتري نسبت به پنتيوم استفاده ميکند . اما تراشه ۶۰۱ يک تراشه RISC محسوب ميشود. در واقع خصوصيات اصلي RISC بدين گونه اند: • ريزپردازنده هايRISC داراي ثباتهاي همه منظوره بيشتري هستند. • ريزپردازنده هايRISC از دستوراتي با طول يکسان بهره ميگيرند. • ريزپردازنده هايRISC کارايي مميز شناور را بهبود بخشيده اند.

  7. معماري سوپر اسکالر • پردازنده بايد از مرز يک فرمان در يک پالس بگذرد در نتيجه بايد در ايدهRSIK به طور کلي بازنگري کنيم: • پردازنده بايد بتواند چندين فرمان را در هر تپش بارگذاري و رمزگشايي کند. • فرمان هاي انشعاب و در نتيجه پرش هاي شرطي تا جاي ممکن نبايد مانع اجراي فرمان هاي ديگر گردند. • وابستگي داده ها که در پردازنده هاي RISC اهميت زيادي دارد در پردازنده هاي سوپر اسکالر بسيار بيشتر روي ميدهد بنابراين بايد آثار جانبي آن را برطرف کرده يا دست کم به حداقل رساند. اين به آن معني است که پردازنده سوپر اسکالر بايد نتايج را مرتب کند تا محاسبات درست ادامه پيدا کند. • چند نمونه از معماري سوپراسکالر MIPS R10000 ، Alpha 21164 و پنتيوم ميباشند.

  8. توصيف معماري سوپر اسکالر • هنگام طراحي معماري سوپر اسکالر بايد به نکات زير توجه داشت: • روش هايي براي واکشي چندين فرمان در هر تپش لازم است • روش هايي براي تشخيص وابستگي هاي مجازي يا واقعي ميان محتويات ثبات ها و همچنين کارکردهايي براي جلوگيري از آثار جانبي لازم است. • شيوه هايي براي آغاز اجراي چندين فرمان به طور موازي • منابع لازم براي فراهم شدن امکان اجراي چند فرمان به طور همزمان • اجراي چندين فرمان load/store همزمان pipeline هاي load/store بايد در درجه نخست حافظه را به ثبات ها مرتبط کنند. • روش هايي براي تشخيص ترتيب درست اجرا و به ويژه ترتيب درست محتويات حافظه • پردازنده سوپر اسکالر گرچه نميتواند ترتيب فرمان ها را حفظ کند اما نتايج را به ترتيب درست آماده ميکند.

  9. وابستگي و اجراي موازي • پردازنده در صورتي به يک فرمان ميرسد که فرمان پيش از آن را اجرا کرده باشد يا اينکه يک فرمان پرش پردازنده را به ناحيه خاصي از حافظه ببرد. پردازنده بايد هنگام اجراي موازي هردوي اين وابستگي ها را در نظر داشته باشد.براي حل اين مشکل بلوک اصلي را تعريف ميکنيم. برنامه اسمبلي را ميتوان به چند بلوک اصلي تقسيم کرد يک بلوک اصلي (Basic Block) بيشترين شمار فرمان هاي پشت سر هم و بدون فرمان انشعاب (به استثنا آخرين فرمان) و بدون فرمان پرش ( به جز اولين فرمان) است . اين بلوک هميشه به طور کامل پيموده ميشود به اين ترتيب پردازنده ميتواند يک بلوک اصلي را به طور موازي اجرا کند بنابراين بلوک اصلي قسمتي است که کامپايلرها و معماري سوپر اسکالر کاملا روي آن متمرکز ميشوند با يکپارچه کردن چند بلوک اصلي براي نممونه با اجراي يکباره فرمان هاي انشعاب ميتوان موازي سازي را افزايش داد. اگر در اجرا هيچ استثنايي رخ ندهد پردازنده بايد همه محتويات و نتايج pipeline را تصحيح کند. بنابراين ميان معماري سوپر اسکالر و ساختمان کامپايلر ارتباط بسيار تنگاتنگي وجود دارد.

  10. توصيف ريز معماري يک پردازنده سوپر اسکالر • واکشي فرمان و رمز گشايي اوليه • رمز گشايي فرمان نام گذاري دوباره و ارسال • Instruction Issueing و اجراي موازي • مديريت ارجاع به حافظه • مرحله commit

  11. نماي کلي از pipeline در سوپر اسکالر

  12. فرمان و رمزگشايي اوليه

  13. فرمان و رمزگشايي اوليه • مرحلهfetch در پردازنده چندين عمل ديگر را در خود دارد که واحد هاي predecode, Instruction catche, Intruction Buffer در آنها نقش دارند. • Instruction catche در پردازنده هاي سوپر اسکالر غير قابل چشم پوشي است . واحد predecode اطلاعات کنترلي لازم را توليد ميکند. به کمک اين اطلاعات ميتوان در هر شرايطي مراحل بعدي pipeline را سريعتر ارزش دهي کرده و در cache ذخيره نمود. Instruction Buffer که ميتوان آن را از طراحي حذف کرد به عنوان حافظه موقت براي Cache Misses گرفته تا ذخيره سازي فرمان هاي درون پردازنده به کار ميرود .اين بافر فرمان هايي را در خود دارد که مرحله واکشي آنها به پايان رسيده باشد . • اگر دقيق تر نگاه کنيم ميبينيم که مرحله واکشي فرمان يک بلوک از فرمان را واکشي ميکند چون به دليل موازي بودن اجرا بايد چند فرمان حاضر باشد. چگونگي بارگذاري يک بلوک کامل دست کم تا بارگذاري يک بلوک اصلي ادامه دارد چون هيچ فرمان انشعابي در آن وجود ندارد. در اين وضعيت عدد درون شمارنده برنامه در ازاي يک واحد افزايش مي يابد. در يک بلوک ممکن است پرش هاي غير شرطي وجود داشته باشد که البته باعث عدم برخورد به Cache Miss ميشود.

  14. فرمان و رمزگشايي اوليه براي پرش هاي شرطي بايد شيوه ديگري به کار برد چون اين پرش ها باعث تاخير ميشوند بازدهي کلي در يک سيستم سوپراسکالر به زمان و عمليات لازم براي پيش بيني جهت وابستگي زيادي دارد. هنگام برخورد به فرمان هاي انشعاب مراحل زير انجام ميگيرد: • شناسايي فرمان پرش شرطي • تشخيص جهت پرش (پيش بيني( • محاسبه آدرس مقصد پرش • ادامه اجراي واکشي فرمان با محتويات تازه شمارنده برنامه با ترجمه مناسب برنامه به زبان ماشين تشخيص فرمان شرطي بسيار ساده ميشود. بقيه کار به عهده واحد رمزگشايي اوليه و بيت هاي اطلاعاتي درون بافر است. ساده ترين راه پيش بيني جهت پرش از روي اطلاعات کامپايلر يا به کمک اطلاعات اکتسابي است

  15. رمزگشايي فرمان , نامگذاري دوباره و ارسال • در مرحله بعدي پردازنده فرمان ها را از بافر به درون خود آورده و آنها را رمزگشايي ميکند.سپس وابستگي داده هاي آنها را بررسي کرده و آنها را به واحدهاي سخت افزاري آزاد ميسپارد.

  16. Instruction Issueingو اجراي موازي • پس از آماده کردن همه اطلاعات لازم براي اجراي فرمان به مرحله بعدي pipeline ميرسيم . در اين مرحله فرمان ها در اختيار منابع سخت افزاي قرار ميگيرند. در اينجا پنجره اجرا که قلب پردازنده هاي سوپراسکالر به شمار ميرود آغاز ميشود. مرحله Instruction Issueing هنگام اجرا بررسي ميکند که آيا همه داده ها و منابع لازم براي اجراي ALU عدد صحيح آماده اند يا نه . حالت آرماني آن است که وقتي اجراي فرمان آغاز ميشود همه منابع لازم فراهم باشند. • پياده سازي ساختمان Instruction Issue از راه هاي گوناگوني ممکن است که از ميان آنها به سه روش مي پردازيم: • شيوه تک صفي • شيوه چند صفي • شيوه ايستگاه هاي رزرو

  17. مديريت ارجاع به حافظه • پردازنده هاي سوپراسکالر هم از اين ايده که در طراحي RISC به کار ميرود و در آن تنها به فرمان هاي Load/Store اجازه دسترسي به حافظه داده ميشود استفاده ميکنند چون در اين شيوه ارجاع به حافظه بسيار کنترل شده است و بهينه سازي را ساده تر ميکند. اما در معماري RISC ارجاع به حافظه بدون محاسبات اضافي و از طريق يک pipeline چهارمرحله اي انجام ميگيرد. زياد شدن مراحل pipeline انجام محاسبات اضافي را ايجاب ميکند. • پردازنده هاي سوپراسکالر از نظر دسترسي به حافظه محدوديت چنداني ندارند فرمان ها ديگر در يک pipeline سخت گير و خط کشي شده که براي هر مرحله عمل خاصي دارد اجرا نميشود. محدود شدن فرمان هايي که به حافظه دسترسي دارند به فرمان هاي Load/Store ما را از بسياري از دردسرها رها کرده است.

  18. مرحله Commit • مهمترين ويژگي پردازنده هاي سوپراسکالر اجراي موازي فرمان ها در آنها است. اما پردازنده بايد نتايجي که از اين رهگذر به دست مي آورد را به ترتيب درست ذخيره کند ضرورت اين کار به دليل اجراي يک باره يا out of order بيشتر ميشود. از همين رو پردازنده بايد پيوسته در يک وضعيت دقيق و مشخص باشد. اين نکته به ويژه در دو حالت بسيار با اهميت است: هنگامي که پردازنده سوپراسکالر به يک درخواست وقفه رسيدگي ميکند يا از آن برميگردد براي اين کار از دو روش استفاده ميشود: • شيوه نخست از نقاط آزمون( checkpoints) استفاده ميکند که در آنها وضعيت پيشين پردازنده پس از به هنگام رساني ذخيره ميشود .محل ذخيره سازي اين اطلاعات HistoryBuffer نام دارد.به اين ترتيب در هر لحظه آمار دقيقي حتي از گذشته پردازنده داريم. مرحله Commit بايد تنها وضعيت درست را بازسازي کرده و اطلاعات اضافي را از HistoryBuffer پاک کند. • شيوه دوم ارتباط تنگاتنگي با Record Buffer دارد و از همين رو بر شيوه نخست ترجيح داده ميشود. در اين وضعيت ماشين به دو قسمت تقسيم ميشود. هر فرماني که اجرا ميشود وضعيت فيزيکي را تغيير ميدهد . اما وضعيت معماري پردازنده به ترتيب فرمان ها تعريف ميشود. در اين مورد لازم است که يک Record Buffer نقاط مبهم را روشن کند. در حاليکه مرحلهCommit بعدا اين وضعيت را در وضعيت معماري و وضعيت فيزيکي پياده ميکند محتويات ثبات ها از Record Buffer در Register File ثبت ميشود و اعمال Store انجام ميشوند. براي اين کار اطلاعات ديگري مانند عدد شمارنده برنامه، شرايط وقفه و ... به Record Buffer اضافه ميشوند.

  19. معماري پنتيوم • از آنجا که پيش از پرداختن به معماري هايي همچون پنتيومIV لازم است پيش زمينه هايي داشته باشيم اين بحث را با معماري 8086 آغاز ميکنيم و تا معماري پنتيوم قدم به قدم پيش ميرويم

  20. معماري8086

  21. معماري8086 • در زمان ساخت 8086 RSIK در حد نظريه بود بنابراين تعجبي ندارد که ۸۰۸۶ يک پردازنده CISC از آب درآمد. • 8086 داراي آدرس ۲۰ بيتي است از اينرو ميتواند تا ۱MB=2 20 از حافظه را آدرس دهي کند. • ميکروي 8086 به دو بخش مجزا تقسيم ميگردد . اين بخش ها واحد ارتباط گذرگاه (Bus Interface Unit) و واحد اجرا (Execution Unit) نام دارند. • واحد BIU دستورالعمل ها را واکشي ميکند. داده ها را از پورت ها و حافظه ميخواند و آنها را در حافظه و پورتهاي I/O مينويسد. واحد EU دستورالعملها را که اخيرا توسط BIU واکشي شده اند اجرا ميکند. BIU و EU مستقل هستند . واحد BIU ميکرو 8086 را به دنياي بيرون متصل ميسازد.

  22. معماري پنتيوم • پنتيوم اولين پردازنده اي بود که از معماري سوپر اسکالر بهره ميگرفت بدين معني که با بهره گيري از دو خط لولهU و V امکان پياده سازي ۲ دستورالعمل را در هر چرخه ساعت فراهم ميکرد. حافظه Cache اوليه دوبرابر شد: دستورالعمل ها و داده ها به دو قسمت ۸ کيلوبايتي تقسيم شدند حافظه cache داده با نوآوري کامل نويسي (Back writer) موثرتر گرديدو جدول مجتمع انشعاب براي پيش بيني انشعاب در ساختار چرخه هاي ساعت مورد استفاده قرار گرفت. • در سال 1995 اولين پردازنده سري p6 با سه خط لوله مجزا معرفي گرديدو اين پردازنده Pentium-pro نام داشت. ويژگي منحصر به فرد پردازنده هاي p6 تبديل دستورالعمل X86 به دستورهاي داخلي شبيه RISC بود که ريزعمليات ناميده ميشدند. اين پردازنده از بسياري از محدوديتها مانند کدهاي بيقاعده , عمليات روي تبديل اعداد صحيح (ثبات-حافظه) و متغير بودن طول عملوندهاي بلافصل -که مختص سري دستورالعمل هاي X86 است- دوري ميکرد.گذرگاه آدرس به ۳۶ بيتي توسعه يافته است. که آدرس دهي تا 64 گيگا بايت را امکانپذير ميسازد. • پنتيوم III با معماري IA-32و ويژگي ( Streaming SIMD Extention) به بازار عرضه شپ. از ويژگي هاي اين پردازنده استفاده از ثباتهاي128 بيتي بکارگيري مميز اعشاري با دقت ساده و عمليات SIMD با عملوندهاي فشرده(packed operand) ميباشد.

  23. عملکرد پردازنده هايp6 • پردازش کامل هر دستورالعمل به تعداد محدودي چرخه ساعتCPU نياز دارد. پس ميتوان هر پردازش را به چند مرحله تقسيم کرد و هنگامي که دستورالعمل اول مرحله اول را به پايان رساند دستورالعمل دوم را وارد اين مرحله کرد اين همان چيزي است که در پردازنده هاي 80486 و پنتيوم به pipeline مشهور است .در اين پردازنده ها يک استاندارد پايپ لاين پنج مرحله اي مورد استفاده قرار ميگرفت. سوپر پايپ لاين که در سري پردازنده هاي p6 معرفي شد مراحل قبلي را به قطعات کوچکتري تقسيم ميکند. اين مراحل کوچکتر باعث کار کمتر سيستم ميشوند و در نهايت منطق سخت افزار ساده تر خواهد شد. فاصله زماني بين ورود مجموعه فعاليتها وارد کردن تعدادي ورودي و نمايان شدن سيگنالهاي نتايج بر روي شماي خروجي به نام تاخير انتشار(prooagation delay) ناميده ميشود .با کاهش تاخير انتشار ميتوان به جاي تکنولوژي 0.18 ميکرون از تکنولوژي 0.13 ميکرون بهره جست (کاهش حجم پردازنده) • سوپر پايپ لاين داراي يک نقطه ضعف اساسي است بدين مغهوم که در هنگام پياده سازي عملياتي و انشعابها نياز به خالي بودن خط لوله دارد و هرچه تعداد مراحل بيشتر باشدعمل خالي سازي زمان بيشتري طول ميکشد و بعضي اوقات اين مساله باعث کاهش قابل توجه کارايي ميشو

  24. عملکرد پردازنده هايp6

  25. پيش بيني انشعاب • محاسبه آدرسIP توسط واحد واکشي دستورات بر مبناي اطلاعات به دست آمده از Branch Target Buffer و با استفاده از BHB بيتهاي وقايع انشعابي Branch HistoryBits که توسط واحد integer توليد ميشوند صورت ميگرد. هدف عمده از پيش بيني انشعاب ها به حداقل رساندن زمان بيکاري خط لوله و فراهم آوردن جريان پيوسته اي از دستورها در داخل آن ميباشد. • براي پيش بيني يک انشعاب پردازنده از الگوريتم خاصي استفاده ميکند.در صورتي که پيش بيني صحيح باشد پياده سازي باکمي تاخير و حتي بدون آن ادامه مي يابد. در غير اينصورت دستوري که قسمتي از آن انجام شده پاک ميگردد و به جاي آن يک دستور با آدرس صحيح از حافظه انتخاب و سپس رمزگشايي شده و اجرا ميگردد و اين باعث افت کارايي سيستم با توجه به تعداد مراحل پايپ لاين خواهد شد.

  26. پرازنده پنتيومIV • علت اصلي ارائه پردازنده پنتيومIV محدوديت فرکانس ساعت پردازنده هاي خانواده p6 بود که آنهم به دليل طولاني بودن خط لوله دوازده مرحله اي آنها بود.اين پردازنده ها قادر نبودند با استفاده از فناوري 0.18 ميکرون به فرکانسي بيش از 1GH دست يابند. و اين ناکارآمدي دليل عمده صرف نظر کردن از پردازنده پنتيوم III با سرعت 1.13GHZ بود. • کمپاني اينتل اقدام به توسعه پروژه اي بنام خط لوله آميخته Hyper pipelining خط لوله اي با ۲۰ مرحله کرد • هدف اصلي روش پايپ لاين فراهم آوردن جريان پيوسته اي از ريزعمل ها بدون وجود هرگونه تاخير بود و اينتل براي فراهم سازي کار بدون توقف چنين پايپ لاين طولاني معماري netburst را معرفي کرد.

  27. نمايي کلي از پنتيوم IV

  28. معماريNetBurst • ريزمعماريNetburst که توسط اينتل توسعه يافته است علاوه بر دارا بودن تمامي مشخصات پردازنده هاي خانواده p6 داراي ويژگيهاي منحصر به فردي نيز ميباشد: • کمينه ساختن تاثيرات پيش بيني هاي نادرست انشعاب • دستورهاي SSE2 • انواع داده هاي جديد

  29. کمينه ساختن تاثيرات پيش بيني هاي نادرست انشعاب • پيوستگي کارها در معماري خط لوله آميخته زماني قابل درک خواهد بود که امکان اجراي خارج از نوبت و اجراي دستورها وجود داشته باشد. در چنين شرايطي پردازنده از الگوريتم داخلي پيشگويي انشعاب استفاده ميکند که در برخي شرايط پيش بيني صحيحي را به دست نميدهد. براي بهينه سازي اين روش راهکارهاي زير پيشنهاد شده است: • پردازنده داراي ۴branch Target Buffer است که اطلاعات بيشتري را در مورد پرش هاي قبلي نسبت به p6 در خودش نگاه ميدارد. • از الگوريتم پيش بيني انشعاب پيشرفته تري استفاده ميکند. • کاهش تعداد دستورهايي که براي پياده سازي يک وظيفه لازم هستند • تعداد زيادي از برنامه ها عمليات تکراري زيادي را بر روي داده هاي پر حجم اجرا ميکنند و اين داده ها مقادير کوچکي را به نمايش ميگذارند(معمولا چند بيت) بنابراين تدابيري براي فشرده سازي هر چه بيشتر اينگونه داده ها بايد اتخاذ گرديد و عملياتي نيز براي اجراي اين مجموعه داده ها بايد توسعه مي يافت . به اينگونه عمليات SIMD گفته ميشود . • پنتيوم IV شامل نسل دوم اين دستورهاست که به SSE2 تعلق دارند و دربردارنده ۱۴۴ دستور جديد ميباشند.

  30. دستورهايSSE2

  31. دستورهايSSE2 • دستورهايSSE2: • استفاده از دستوراتSSE2 مهمترين ويژگي مثبت اين پردازنده ميباشد.اين مجموعه جديد دستورالعمل ها از قالب جديدي از داده هاي فشرده شده (packed) پشتيباني ميکنند و بدين وسيله سبب افزايش سرعت پردازش عمليات ۱۲۸ بيتي SIMD integer خواهند شد. علاوه بر اين اين خصوصيت باعث افزايش توانايي پردازش توانايي پردازش مميز شناور با دقت مضاعف و چندين نوع داده از عمليات ۱۲۸ بيتي صحيح خواهد شد. تمامي اين نوع داده هاي جديد ميتوانند با ثباتهاي XMM کار کنند.

  32. انواع داده هاي جديد

  33. انواع داده هاي جديد • شکل بالا شش نوع داده جديد را کهSSE2 در بردارد نشان ميدهد. اين شش نوع جديد شامل ۳ رده هستند: مميز شناور با دقت مضاعف فشرده ۱۲۸ بيتي , عدد صحيح ۴ کلمه اي ۶۴ بيتي و ۴ نوع داده صحيح ۱۲ بيتي نوع فشرده مميز شناور سبب ميشود که دو قالب مميز شناور با دقت مضاعفIEEE 46بيتي در يک قالب شامل ۲ چهارکلمه اي به شکل فشرده قرار بگيرند. نوع صحيح ۶۴ بيتي چهار کلمه اي قادر به ذخيره سازي مقادير با علامت و بدون علامت ميباشد. • انواع داده هاي صحيح ۱۲۸ بيتي ميتوانند شامل ۲ چهارکلمه اي و همچنين ۸ کلمه باشند. در واقع ۱۶ بايت صحيح در ۲ چهارکلمه اي فشرده شده اند.

More Related