1 / 17

به نام آن کس که علم را آفرید

به نام آن کس که علم را آفرید. پردازنده و فناوری های پردازش استاد : عبداللهی سعید ترابی 1393. فهرست. مقدمه پالس ساعت پردازنده واحد کنترل ثبات های پردازنده واحد محاسبه و منطق کد دستور و کامپایل برنامه ISA معماری مجموعه دستورات RISC vs CISC. مقدمه.

glenys
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. به نام آن کس که علم را آفرید پردازنده و فناوری های پردازش استاد : عبداللهی سعید ترابی 1393

  2. فهرست • مقدمه • پالس ساعت پردازنده • واحد کنترل • ثبات های پردازنده • واحد محاسبه و منطق • کد دستور و کامپایل برنامه • ISAمعماری مجموعه دستورات • RISC vsCISC

  3. مقدمه واحد پردازش مرکزی (Central Processing Unit یا CPU)بخشی از یک دستگاه الکترونیک می باشد که از مجموعه ای از مدارات مجتمع (Integrated Circuit یا IC) تشکیل شده است. واحد پردازش مرکزی که به پردازنده نیز شناخته می شود خود دارای یک سیستم سلسله مراتبی می باشد که می تواند داده ها و دستورات را از اجزاء مختلف دریافت کرده و پس از پردازش نتیجه آن را به مکانی مشخص ارسال کند. پیش از ظهور اولین پردازنده کامپیوتری مانند انیاک برای اینکه کارهای مختلفی را انجام دهد می بایست دوباره برای عملیات مورد نظر پیکربندی می شد. این ماشین ها کامپیوترهایی با برنامه ثابت نامیده می شدند. در 30 ژوئن 1945 پیش از آنکه انیاک ساخته شود ریاضیدان مشهوری به نام جان فن نیومن مقاله ای با عنوان اولین پیش نویس گزارش EDVAC منتشر کرد که این طرح کلی از اولین کامپیوتر با برنامه ذخیره شده بود که سرانجام در آگوست 1945 به اتمام رسید. این کامپیوتر برای انجام تعداد خاصی از دستورالعمل ها طراحی شده بود.این دستورالعمل ها می توانستنند ترکیب شوند و برنامه های مفیدی را روی این کامپیوتر اجرا کنند. برنامه یا نرم افزاری که بر روی EDVAC  اجرا می شد می توانست به راحتی محتویلت حافظه را تغییر دهد. در ابتدا CPU ها به عنوان بخشی از یک دستگاه بر روی برد اصلی لحیم می شدند. با گذشت زمان این نیاز احساس می شد که کاربران توانایی ارتقا پردازنده را داشته باشند برای همین مکانی برا روی برد اصلی برای پردازنده تعبیه شد که به سوکت پردازنده معروف می باشد. هر پردازنده ای را که در نظر بگیرید اولین ویژگی یا خصوصیتی که در مورد آن بیان می شود فرکانس پالس ساعت آن می باشد.

  4. انیاک

  5. EDVAC کامپیوتر

  6. پالس ساعت پردازنده اکثر دستگاه های الکترونیکی که با منطق پالسی و تناوبی کار می کنند می بایست سنکرون یا همزمان باشند. این بدان معنی است که آنها برای همزمان سازی سیگنالهای به صورت پالسی تولید می کنند. این سیگنال ها به عنوان سیگنال ساعت شناخته می شوند. دانشجویی را در نظر بگیرید که هر روز صبح ساعت هفت از خواب بیدار می شود و ساعت هشت به دانشگاه می رود و طی ساعت مشخصی سر کلاس درس حاضر می شود. برای ایجاد نظم و هماهنگی انسان ها کارهای خود را با ساعت رسمی هماهنگ می کنند. در دنیای رایانه نیز برای ایجاد نظم و هماهنگی به به یک ساعت نیاز است با این تفاوت که در دنیای رایانه در یک ثانیه ملیونها دستور انجام می شود و به دلیل سرعت بالای کارها می بایست هر یک ثانیه را به ملیون ها قسمت تقسیم کرد که هر یک از این قسمت ها را یک پالس نامیده می شود که با واحد هرتز (Hz)اندازه گیری می شود و به تعداد پالسهای تولید شده در یک ثانیه سرعت ساعت می گویند و معمولاً سرعت ساعت هر رایانه به قدرت پردازنده برای تعداد دستورات پردازش شده در هر ثانیه بستگی دارد. تعداد دفعات یک کار یکسان در محدوده زمان ثابت فرکانس آن کار می گویند. وسیله ای که این سیگنال را تولید می کند را نوسان ساز می گویند . سیگنال تولید شده به وسیله نوسان ساز که به سیگنال پالس ساعت معروف است به تایمر اعمال می شود و تایمر با توجه به تنظیمات بایاس سیستم فرکانس پالس ساعت متفاوت تولید و در اختیار سیستم قرار می دهد که یکی از این سیگنالهای تولید شده مخصوص پردازنده است که به یکی از پایه های تراشه پردازنده اعمال می شود. برای درک بهتر پردازنده می بایست وظایف اصلی آن را برسی کنیم پردازنده دو وظیفه اصلی دارد که عبارتند از : • انجام محاسبات روی داده • انتقال و جابجایی داده ها

  7. واحد کنترل واحد کنترل یا (Control Unit ) از مدارهای الکترونیکی پیچیده ای تشکیل شده است که بر عملکرد ریزپردازنده نظارت دارد.این واحد وظیفه هماهنگی و کنترل تمامی انتقال داده ها و تغییرات داده ای را بر عهده دارد. این واحد وظیفه اجرای دستور را برعهده ندارد اما ترتیب اجرای دستورالعمل ها را بر عهده دارد و مشخص می کند هر قسمت چه وظیفه ای دارد. • هنگامی که برنامه ای اجرا می شود واحد کنترل دستورالعمل برنامه را از حافظه اصلی دریافت کرده که به این عمل واکشی دستور می گویند. • سپس واحد کنترل می بایست دستورالعمل دریافت شده را را برای اجرا رمزگشایی کند که به این عمل رمز گشایی را (Decode) می گویند. • واحد کنترل می بایست دستورالعمل را پس از واکشی و رمزگشایی برای اجرا به واحد محاسبه و منطق ALU که قدرت اجرایی دارد بفرستد. • هر دستورالعمل پس از اجرا نتیجه ای دارد که برای اعلام به درخواست کننده و یا برای استفاده در دستور بعدی می بایست در حافظه نگهداری شود به عمل نوشتن نتیجه هر دستورالعمل در حافظه Write back می گوییند.

  8. ثبات های پردازنده ثبات یا Register حافظه کوچک و سریع در داخل پردازنده می باشد که وظیفه ذخیره موقت داده و دستور را در زمان اجرا بر عهده دارد.برای اجرای یک دستور پردازنده نیاز دارد دستور مورد نظر و داده مربوط به آن را به طور موقت در خود ذخیره کند. همچنین پردازنده باید مکان دستور بعدی در حافظه اصلی را برای اجرای آن پیدا کند به همین دلیل پردازنده به یک حافظه کوچک و سریع نیاز دارد که برطرف کردن این نیاز پردازنده بر دوش ثبات ها می باشند. پردازنده های معمولاً شامل ثبات های زیر می باشند: • ثبات شمارنده برنامه ( Program Counter ):نوع خاصی از یک نگهدارنده اطلاعات است که قابلیت افزایش به میزان یک و یا پذیرش هر میزان دیگری را داراست این ثبات آدرس دستور بعدی را که قرار است اجرا شود را در خود نگهداری می کند. • ثبات دستورالعمل(Instruction Register ) : این ثبات آخرین دستوری را که از حافظه برداشته شده است و در حال اجرا می باشد را در خود ذخیره می کند. • ثبات آدرس حافظه ( Memory Address Register) : حاوی آدرس مکانی در حافظه است که داده مورد نیاز دستورالعمل در حال اجرا در آن قرار دارد. • ثبات حافظه میانگیر (Memory Buffer Register ) : ِنگهدرانده نتیجه پردازش تا زمان انتقال آن به حافظه اصلی • ثبات تست (Test Register ) : این ثبات نتایج حاصل از انجام مقایسه ها به وسیله واحد ALU را در بر دارد

  9. 1-Bit ALU

  10. واحد محاسبه و منطق واحد محاسبه و منطق یا Arithmetic Logic Unit (ALU ) بخشی از پردازنده می باشد که عملیات های پایه محاسباتی،منطقی و قیاسی در این قسمت انجام می شود. ALU خود به دو قسمت تقسیم می شود که یکی واحد Arithmetic Unit یا AU که در این قسمت عملیات های محاسباتی انجام می شود و دیگری واحد Logic Unit یا LU که مسئولیت انجام عملیات های منطقی را بر عهده دارد. واحد محاسبه و منطق که از اهمیت بالایی برخوردار می باشد توانایی اجرای دستورات محدودی را دارد به طور مثال دستورهای محاسباتی مانند :جمع،تفریق و ... و دستورات منطقی مانند ANDوOR و .... پس از واکشی دستورالعمل و رمزگشایی آن توسط واحد کنترل در صورت نیاز به انجام محاسبات واحد کنترل داده و نوع عملیات را به واحد محاسبه و منطق ارجاع می دهد هر دستور پس از اجرا نتیجه ای دارد که برای اعلام به درخواست کننده یا برای استفاده در دستورهای بعدی باید در حافظه نگهداری شود.محل ذخیره نتایج اجرای دستورالعمل در صورتیکه دستورالعمل قیاسی بود در ثبات تست (Test Register ) و در غیره این صورت در ثبات حافظه میانگیر (Memory Buffer Register ) است. برنامه ها می بایست براساس این دستورالعمل ها ایجاد شوند.

  11. 2-Bit ALU

  12. کد دستور و کامپایل برنامه همه پردازنده ها بدون توجه به سایر اجزاء رایانه قابلیت اجرا تعداد محدودی از دستورالعمل ها را دارند که به مجموع آنها Instruction Set می گویند.در واقع این دستورالعمل ها زبان قابل فهم برای پردازنده ها می باشند و برنامه ها برای اجرا شدن روی رایانه می بایست این دستورالعمل ها را به کار گیرند. پردازنده برنامه هایی را که در حافظه وجود دارند را اجرا می کند. در واقع برای اجرای هر برنامه ابتدا دستورالعمل ها و داده های مربوط به آن به حافظه اصلی منتقل می شود هر برنامه از تعدادی دستورالعمل تشکیل شده که به این دستورالعمل ها کد برنامه Program Code یا opcode گفته می شود. دستور به کدهای دودویی گفته می شود که قابل فهم به وسیله پردازنده باشند کدهایی دودویی یا کدهای ماشین به وسیله روش های خاصی (کامپایل شدن) پس از نوشتن هر برنامه تولید می شود. برنامه نویسی با زبان رایانه بسیار سخت و طاقت فرساست به همین دلیل اغلب کاربران به برنامه نویسی با این زبان علاقه ایی ندارند. طراحان و تولیدکنندگان زبان های برنامه نویسی برای استفاده بیشتر و راحت تر کاربران با استفاده از ابزارهای مترجم و مفسر مانند کامپایلر برنامه های ایجاد شده به وسیله کاربران را به زبان ماشین تبدیل می کنند. در واقع دستور های ایجاد شده به وسیله کاربران که به زبان انسان نزدیک است با ابزارهای مترجم و مفسر به کدهای ماشین تبدیل شده و برای اجرا به پردازنده ارسال می شود.

  13. بلوک دیاگرام کامپایلر

  14. ISAمعماری مجموعه دستورات انتخاب یک مجموعه دستورات برای اینکه طراحی را به کمک آن انجام دهیم و اینکه شکل و قالب دستور به چه صورت باشد آنقدر اهمیت دارد که یک اصطلاح خیلی مهم به نام ”معماری مجموعه دستورات“ یا (Instruction Set Architecture) برای آن در نظر گرفته شده است. ISA آن قدر اهمیت دارد که کامپایلر و سخت افزار بر اساس ان طراحی می شود پردازنده های قدیمی مجموعه دستورات پیچیده را استفاده می کردند که به آن کامپیوتر با مجموعه دستورات پیچیده (CISC ) می گفتند در این نوع معماری تعداد زیادی دستورات قوی وجود داشت که نوشتن برنامه اسمبلی را برای برنامه نویس راحت تر می کرد ولی همین دستورات قوی باعث می شد تا طراحی خود پردازنده را پیچیده شود و کار طراحان پردازنده را سخت می کرد اما اکثر پردازنده های جدید از مجموعه دستورات کاهش یافته و ساده ای استفاده می کنند که به آن معماری RISC یا کامپیوتر با مجموعه دستورات کاهش یافته گفته می شود. در این پردازنده ها دستورات ساده و نسبتاً کمی وجود دارد و برای برنامه نویسی آنها از زبانهای سطح بالا و کامپایلرهای قدرتمندی استفاده می شود که کار برنامه نویس را راحت تر می کند. ساده گی دستورات و تعداد کم آنها در پردازنده های RISC باعث شده است که طراحی سخت افزار توسط طراح راحت تر شده و بعدها به راحتی قابل بهینه سازی باشد.

  15. RISC و CISCتفاوت طول دستورات در

  16. RISC vsCISC

  17. منابع وب سایت ها • https://www.cise.ufl.edu • http://www.egr.msu.edu • http://fa.wikipedia.org • http://www.galacticelectronics.com/ • http://en.wikibooks.org/ • http://mirmahale.blogfa.com/ • http://www.belec.ir/ • http://www.bbc.co.uk/ کتاب ها • سخت افزار (فنی حرفه ای) • نسخه جدید جزوه استاد ولی زاده سال تحصیلی 91-92

More Related