بخشی از پاورپوینت
--- پاورپوینت شامل تصاویر میباشد ----
اسلاید 1 :
معماريهاي مختلف CPU
- سازمان تک انباره ای
- سازمان چند رجيستري مانند SPARC, MIPS, Alpha,
- سازمان پشته ای
مثال: ماشین های X86 دارای یک معماری با مجموعه دستورات پیچیده ای است که تمامی جنبه های معماری های فوق را در بر میگیرد.
اسلاید 2 :
اهمیت معماری CPU چقدر است؟
- استفاده کننده نهائی:
هیچ!
- برنامه نویس سطح بالا
خیلی کم. تا حدی که بتواند کامپایلر مناسب را انتخاب نموده و عملکرد برنامه را بهینه کند.
- برنامه نویس سطح پائین/ طراح OS
این افراد باید اطلاعات کافی در مورد رجیسترها، ساختار حافظه، انواع داده های موجود و عملکرد دستورات داشته باشند.
- طراحان کامپیوتر:
این افراد نیز باید اطلاعات فوق را داشته باشند تا بتوانند اجزا سخت افزای مورد نیاز را انتخاب کنند.
اسلاید 3 :
ساختار رجیسترها
- یکی از مهمترین ویژگی های تعیین کننده برا ی یک CPU ساختار رجیسترهای داخلی آن است. این رجیستر ها به دو دسته تقسیم بندی میشوند:
- رجیسترهائی که استفاده کننده آنها را می بیند! و میتواند از طریق برنامه نویسی به آنها دسترسی داشته باشد
–Data registers
–Address registers
- index register
- segment pointer
- stack pointer
–Condition codes (flags)
- رجیسترهائی که برای کنترل و نگهداری وضعیت CPU بکار میروند. این رجیسترها توسط واحد کنترل برای اجرای دستورات مورد استفاده واقع میشوند.
–Program counter
–Instruction register
اسلاید 4 :
سازمان تک انباره ای
- یک آکومولاتور
- مشابه با کامپیوتر پایه
فصل پنجم
اسلاید 5 :
سازمان رجيستر عمومی
- GENERAL REGISTER
- تمامی رجیسترها می توانند به عنوان اپراند دستورالعملهای ALU بکار برده شوند.
- مثال : رجیسترهای داده در پردازنده پنتیوم
اسلاید 6 :
مجموعه رجیسترهای عمومی و ALU مشترک
در شکل فوق:
- خروجی هر رجیستر به دو MUX متصل شده است. اینکار باعث میشود تا هر یک از آنان را بتوان آزادانه بعنوان مبدا عملیات ALU انتخاب نمود.
- برای اینکه بتوان خروجی ALU را به هر یک از رجیستر ها منتقل نمود این خروجی به ورودی تمام رجیسترها متصل شده و علاوه بر آن با استفاده از یک دیکودر مقصد عملیات را مشخص میکنیم.
- یک ALU ممکن است که قادر به انجام عملیات مختلفی باشد، برای انتخاب یک عمل مورد نیاز از خطوط کنترلی OPR استفاده میشود.
اسلاید 7 :
مثالی از عملیات ALU
برای مثال فرض کنید که میخواهیم میکرو اپریشن زیر را انجام دهیم:
R1 ß R2 + R3
- برای انجام این عمل واحد کنترل باید سیگنالهای لازم را برای انتخاب ورودیهای متناسب دیکودر MUXA, MUXB, و ALU انتخاب نماید:
.1تعیین مقدار مناسب برای ورودی MUXA یعنی S1 طوری که محتوی رجیستر R2 در روی باس A قرار گیرد.
.2تعیین مقدار مناسب برای ورودی MUXB یعنی S2 طوری که محتوی رجیستر R3 در روی باس B قرار گیرد.
.3تعیین مقدار لازم برای ورودی OPR که ALU را وادار به انجام عمل جمع A+B نماید.
.4در نهایت انتخاب مقدار مناسب برای دیکور D به نحویکه خروجی ALU را به رجیستر R1 منتقل نماید.
اسلاید 8 :
قالب دستورالعملها
- انتخاب عمل در ALU
- انتخاب رجیسترهای مبدا
–مولتی پلکسر 1
–مولتی پلکسر 2
- انتخاب رجیستر مقصد
–دیکدر
- اين چهار قسمت قبل از وارد شدن پالس ساعت بايد آماده ياشند.
- ALU از مدارات بسيار سريع ساخته ميشود تا نتيجه را سريعتر آماده كند.
اسلاید 9 :
عملیات ALU
- در CPU انجام عملیات محاسباتی و منطقی بر عهده ALU است. عمل شیفت را میتوان توسط یک Shifter که قبل و یا بعد از ALU قرار میگیرد انجام داد. در مواردی هم ممکن است عمل شیفت توسط خودALU انجام شود. در فصل 4 طراحی چنین ALU را دیدیم که عملیات آن در جدول مقابل ذکر شده است.
اسلاید 10 :
مثال
- برای انجام میکرواپریشن زیر
R1 ß R2 – R3
میبایست کلمه کنترلی بصورت زیر انتخاب شود:
همانطور که قبلا دیدیم یک راه پیاه سازی واحد کنترل استفاده از میکروپروگرامینگ است که در آن هر کلمه کنترلی در یک محل از حافظه ROM ذخیره خواهد شد.