بخشی از مقاله
Cpu چیست ؟ وتاریخچه ی آن...
یک (central processing unit (CPU که گاهی اوقات آن را پردازنده (Processor) نیز مینامند ؛ یکی از اجزاء رایانههای رقمی میباشند که فرامین را در رایانهها تفسیر مینماید و اطلاعات را مورد پردازش قرار میدهد . واحدها ی مرکزی پرداش ویژگی پایهای قابل برنامه ریزی شدن را در رایانههای رقمی را فراهم میکنند ؛ و یکی از مهمترین اجزاء رایانهها در حافظهٔ اولیه ؛امکانات ورودی/خروجی هستند .یک پردازندهٔ مرکزی مداری یکپارچه میباشد که معمولا به عنوان
ریزپردازنده شناخته میشود . امروزه عبارت CPUها معمولا برای ریزپردازندها به کار میروند .
عبارت «central process unit»(واحد پردازندهٔ مرکزی) یک ردهٔ خاص از ماشین را معرفی م
یکند که میتواند برنامههای رایانه را اجرا کند .این عبارت گسترده میتواند به راحتی به بسیاری از رایانههایی که بسیار قبل تر از عبارت "CPU" بودند تعمیم داد . به هر حال ؛این عبارت و شروع استفاده از آن در صنعت رایانه حداقل از اوایل سال ۱۹۶۰ رایج شد. شکل ,طراحی و پیاده سازی پرازندهها نسبت به طراحی اولیه تغییر کردهاست ولی عملگرهای بنیادی آن همچنان به همان شکل باقی ماندهاست .
پردازندههای اولیه که به عنوان یک بخش از چیزی بزرگتر که معمولا یک نوع رایانه است ؛دارای طراحی سفارشی بودند . در هر صورت این روش طراحی سفارشی پردازندهها ،کاری گران قیمت برای یک بخش خاص، به مقدار زیادی راه تولید را به تعداد زیاد که برای اهداف زیادی قابل استفاده بود را فراهم کرد .این استانداردسازی روند عمومی را در عصر transistor mainframes و minicomputer گسسته و شتابدار کردن تعمیم مدارات مجتمع(IC)را شروع کرد . IC امکان افزایش پیچیدگی ها برای طراحی پردازندهها و ساختن آنها در مقیاس کوچک (در حد میلیمتر) امکان پذ
یر میسازد. هر دو فرآیند کوچک سازی و استاندارد سازی پردازندهها حضور این تجهیزات رقمی در زندگی مدرن گسترش داد و آن را به فراتر از یک دستگاه خاص مانند رایانه برد .ریزپردازندههای جدید در هر چیزی چون خودروها تا تلفنهای همراه و حتی اسباب بازیهای کودکان وجود دارند .
در ادامه کامل ببینید ....
Cpu چیست ؟ وتاریخچه ی آن...
یک (central processing unit (CPU که گاهی اوقات آن را پردازنده (Processor) نیز میعات را مورد پردازش قرار میدهد . واحدها ی مرکزی پرداش ویژگی پایهای قابل برنامه ریزی شدن را در رایانههای رقمی را فراهم میکنند ؛ و یکی از مهمترین اجزاء رایانهها در حافظهٔ اولیه ؛امکانات ورودی/خروجی هستند .یک پردازندهٔ مرکزی مداری یکپارچه میباشد که معمولا به عنوان ریزپردازنده شناخته میشود . امروزه عبارت CPUها معمولا برای ریزپردازندها به کار میروند .
عبارت «central process unit»(واحد پردازندهٔ مرکزی) یک ردهٔ خاص از ماشین را معرفی میکند که میتواند برنامههای رایانه را اجرا کند .این عبارت گسترده میتواند به راحتی به بسیاری از رایانههایی که بسیار قبل تر از عبارت "CPU" بودند تعمیم داد . به هر حال ؛این عبارت و شروع استفاده از آن در صنعت رایانه حداقل از اوایل سال ۱۹۶۰ رایج شد. شکل ,طراحی و پیاده سازی پرازندهها نسبت به طراحی اولیه تغییر کردهاست ولی عملگرهای بنیادی آن همچنان به همان شکل باقی ماندهاست .
پردازندههای اولیه که به عنوان یک بخش از چیزی بزرگتر که معمولا یک نوع رایانه است ؛دارای طراحی سفارشی بودند . در هر صورت این روش طراحی سفارشی پردازندهها ،کاری گران قیمت برای یک بخش خاص، به مقدار زیادی راه تولید را به تعداد زیاد که برای اهداف زیادی
قابل استفاده بود را فراهم کرد .این استانداردسازی روند عمومی را در عصر transistor mainframes و minicomputer گسسته و شتابدار کردن تعمیم مدارات مجتمع(IC)را شروع کرد . IC امکان افزایش پیچیدگی ها برای طراحی پردازندهها و ساختن آنها در مقیاس کوچک (در حد میلیمتر) امکان پذیر میسازد. هر دو فرآیند کوچک سازی و استاندارد سازی پردازندهها حضور این تجهیزات رقمی در زندگی مدرن گسترش داد و آن را به فراتر از یک دستگاه خاص مانند رایانه برد .ریزپردازندههای جدید در هر چیزی چون خودروها تا تلفنهای همراه و حتی اسب
اب بازیهای کودکان وجود دارند .
تاریخچه
پیش از ظهور اولین ماشین که به پردازندههای امروزی شباهت داشت ؛ کامپوترهای مثل انیاک(ENIAC) مجبور بودند برای اینکه کارهای مختلفی را انجام دهند دوباره سیم کشی کنند . این ماشینها اغلب به رایانه هایی، با برنامهٔ ثابت اطلاق میشد تا زمانیکه توانایی اجرای چند برنامه را پیدا کردند. عبارت "CPU" از زمانی برای ابزار اجرا کنندهٔ نرم افزار(برنامهٔ رایانه) تعریف شد ؛ اولین ابزارهای که که عبارت "CPU" به آنها اطلاق شد همراه ظهور اولین برنامهٔ ذخیره شدهٔ در رایانه بود.
ایدهٔ برنامهٔ ذخیره شده مربوط بعه زمان طراحی ENIAC بود . در ۳۰ ژوئن سال ۱۹۴۵ (۹ تیر ماه ۱۳۲۴) قبل از اینکه انیاک کامل شود , دانشمند ریاضیدان جان فون نیومان در مقالهای به نام «[[First Draft of a Report on the EDVAC» آن را شرح داده بود .سرانجام شکل کلی ارائه داده شده برای برنامهٔ قابل ذخیره شدن در رایانه در آگوست سال ۱۹۴۹(تیر ماه ۱۳۲۸) کامل شد .EDVAC برای اجرا یک سری دستوالعملهای معین (یا عملگرهای خاص) برای گونههای متفاوت ،طراحی شده بود .این دستورالعملها میتوانستند ترکیب شوند تا برنامههای مفید را بر روی EDVAC اجرا کنند . از نکات قابل توجه این بود که برنامهای که برای EDVAC نوشته شده بود در یک حافظهٔ رایانهای سریع؛ ذخیره شده بود که سریعتر از ثبت سخت افزاری است این پیروزی یک محدودیت شدید را بر ENIAC ایجاد میکرد و آن عبارت بود از این که مقدار بسیار زیادی از زمان و تلاش آن صرف تنظیمات دوباره برای انجام یک کار(پردازشی) جدید بود .با طراحی فون نیومان ؛برنامه یا نرم افزار که EDVAC اجرا میکرد میتوانست تغییری ساده با محتوای حافظهٔ رایانه تغییر دهد .
دستگاههای رقمی حال حاضر ،همه با پردازندههایی توزیع شدهاند که به مدار
گسسته و بنابراین به تعدادی تغییر المان برای متفاوت بودن و تغییر حالات احتیاج دارند . قبل از تجاری شدن ترانریستور ؛ برای تغییر المانها از electrical relays و vacum tubes به صورت عمومی استفاده میشد . اگرچه اینها از مزایایی چون سرعت - به خاطر ساز و کار عمومی شان- برخوردار بودند ولی به خاطر بعضی مسایل غیرقابل اطمینان بودند .
ترانزیستور و مدارات مجتمع گسسته پردازنده ها
پیچیدگی طراحی پرداندهها همزمان با افزایش سریع فن آوریهای متنوع که ساختارهای کوچکتر و قابل اطمینان تری را در وسایل الکترونیک باعث میشد، افزایش یافت . اولین موفقیت با ظهور اولین ترانزیستورها حاصل شد . پردازندههای ترانزیستوری در طول دهههای ۵۰ و ۶۰ میلادی زمان زیادی نبود که اختراع شده بود و این در حالی بود که آنها بسیار حجیم، غیر قا
بل اعتماد و دارای المانهای سوئیچینگ شکننده مانند لامپهای خلا و رلههای الکتریکی بودند. با چنین پیشرفتی پردازندههایی با پیچیدگی و قابلیت اعتماد بیشتری بر روی یک یا چندین برد مدار چاپی که شامل قسمتهای تفکیک شده بودند ساخته شدند.
در طول این مدت ، یک روش برای تولید تعداد زیادی ترانزیستور روی یک فضای فشرده نظر اکثریت را به خود جلب کرد. مدارات مجتمع (IC)ها ،این امکان را فراهم کردند که تعداد زیادی از ترانزیستورها روی یک پایه نیمه رسانا لایه لایه شده یا «چیپ»ساخته شوند. در ابتدا تنها مدارات غیر تخصصی پایه مانند گیتهای منطقی NOR به صورت مدارات مجتمع ساخته شدند. پردازندههایی که بر اساس چنین واحد سیستم پایهای مدارات مجتمع ساخته شدند به طور کلی جزو مدارات مجتمع مقیاس کوچک (SSI) محسوب میشدند.مدارات مجتمع SSI مانند آنچه که در راهنمای کامپیوتر آپولو آورده شده ،معمولا شامل ترانزیستورها با تعداد ضرایبی از ۱۰ میباشند. س
اخت یک پردازنده یکپارچه و بی عیب و نقص بدون استفاده از مدارات مجتمع SSI نیازمند هزاران چیپ مجزا میباشد ، اما همچنان مقدار حجم و توان مصرفی بسیار کمتری نسبت به طراحی به وسیله مدارات ترانزیستوری گسسته نیازمند است.چنین تکنولوژی میک
رو الکترونیک پیشرفتهای باعث افزایش تعداد ترانزیستورهای موجود در ICها شد و بدین ترتیب کاهش تعداد ICهای منفردی را در پی داشت که به یک پردازنده کامل نیاز داشتند. درمدارات مجتمع سری MSI و LSI (مدارات مجتمع مقیاس متوسط و بزرگ) میزان ترانزیستورها تا صدها و سپس تا هزاران ترانزیستور افزایش یافت.در سال ۱۹۶۴ شرکت IBM سیستم معماری ۳۶۰ کامپیوتر را معرفی کرد که در یک سری از کامپیوترها که میتوانستند یک برنامه را با چندین سرعت و شکل مختلف اجرا کنند مورد استفاده قرار گرفت. این کار در زمانی که بیشتر کامپیوترهای الکترونیکی با یکدیگر نا سازگار بودند ، حتی آنهایی که توسط یک کارخانه ساخته میشدند ،بسیار حائز اهمیت بود. به منظور تسهیل در چنین پیشرفتی شرکت IBM از یک راهکار به نام ریز برنامه (ریز دستورالعمل)استفاده کرد ، که همچنان به صورت گستردهای در پردازندههای مدرن مورد استفاده قرار میگیرد. سیستم معماری ۳۶۰ آنچنان به شهرت رسید که چندین دهه بر بازار سیستمهای کامپیوتری قدرتمند حکمفرما بود و چیزی از خود بر جای گذاشت که روند آن همچنان نیز به وسیله کامپیوترهای مدرن مشابه مانند کامپیوترهای سریZ شرکت IBM ادامه دارد. در همان سال (۱۹۶۴) انجمن تجهیزات دیجیتالی (DEC) یک کامپیوتر قدرتمند با هدف کاربرد علمی و تحقیقاتی به بازا عرضه کرد (PDP-۸.(DEC بعدها یک سیستم با نام PDP-۱۱عرضه کرد که به نهایت شهرت دست یافت و این سیستم در اصل با مدارات مجتمع SSI ساخته شده بود با این تفاوت که نهایتا با اجزاء LSI تکمیل شده بود و به یکباره به کاربرد عملی رسید. بر
خلاف SSI و MSIهای قبلی ، اولین پیاده سازی LSI از PDP-۱۱ شامل پردازندههای مرکب از چهار LSI مدار مجتمع میباشد.(انجمن تجهیزات دیجیتالی ۱۹۷۵)
کامپیوترهای با ترانزیستور پایه دارای چندین مزیت ممتاز بود. گ
ذشته از تسهیل و ساده سازی ، قابلیت اعتماد بالا و توان مصرفی پایین تری داشتند. ترانزیستورها همچنین به پردازندهها اجازه میدادند تا با سرعت بالاتری مورد استفاده قرار گیرد و این به علت زمان سوئیچینگ کوتاه یک ترانزیستور در مقایسه با یک لامپ الکترونی یا رله میباشد. در نتیجه برای هر دو حالت افزایش اعتماد و متناسب با آن افزایش چشمگیرسرعت ، المانهای سوئیچینگ پالس ساعت پردازنده در دهگان مگا هرتز در طول این دوره بدست آمد. به علاوه زمانیکه
ترانزیستورهای گسسته و ICهای ریزپردازندهها مورد استفاده زیادی قرار گیرند ، طراحیهای جدید با کیفیت بالا مانند SIMD (دستورالعملهای منفرد بااطلاعات چندگانه) پردازندههای جهت دار آشکار میشود. این طراحی آزمایشگاهی اخیر بعدها باعث شکل گیری عصر تخصصی ابر کامپیوترها مانند نمونه ساخته شده توسط کری اینک گردید.
ریزپردازنده ها
پیدایش ریز پردازندهها در سال ۱۹۷۰ به طور قابل توجهی در طراحی و پیاده سازی پردازندهها تاثیر گذار بود. از زمان ابداع اولین ریزپردازنده (اینتل۴۰۰۴)در سال ۱
۹۷۰ و اولین بهره برداری گسترده از ریزپردازنده اینتل ۸۰۸۰ در سال ۱۹۷۴ ، این روند رو به رشد ریزپردازندهها از دیگر روشهای پیاده سازی واحدهای پردازش مرکزی (CPU) پیشی گرفت ،کار
خانجات تولید ابر کامپیوترها و کامپیوترهای شخصی در آن زمان اقدام به تولید مدارات مجتمع با برنامه ریزی پیشرفته نمودند تا بتوانند معماری قدیمی کامپیوترهای خود را ارتقا دهند و در نهایت ریز پردازندهای سازگار با مجموعه دستورالعملها ی خود تولید کردند که با سخت افزار و نرم افزارهای قدیمی نیز سازگار بودند. با دستیابی به چنین موفقیت بزرگی امروزه در تمامی کامپیوترهای شخصی CPUها منحصرا از ریز پردازندهها استفاده میکنند.
نسل قبلی ریزپردازندهها از اجزا و قسمتهای بیشمار مجزا از هم تشکیل میشد که در یک یا چندین برد مداری قرار داشتند. اما ریزپردازندهها ، CPUهایی هستند که با تعداد خیلی کمی IC ساخته میشوند ، معمولا فقط از یک IC ساخته میشوند. کارکرد در یک قالب مداری به مفهوم زمان سوئیچینگ سریعتر به دلیل حذف عوامل فیزیکی میباشد. مانند کاهش بهره پارازیتی خازنها ، که همگی در نتیجه کوچکی اندازه CPU هاست. این حالت باعث همزمان سازی ریزپردازندهها میشود تا بتوانند پالس ساعتی در رنج چند ده مگا هرتز تا چندین گیگا هرتز داشته باشند. به علاوه تعداد مینی ترانزیستورها روی یک IC افزایش مییابد و پیچیدگی عملکرد با افزایش ترانزیستورها در یک پردازنده به طرز چشمگیری باعث افزایش قابلیت CPUها میشود. این واقعیت به طور کامل مبین قانون مور میباشد که در آن بطور کامل و دقیق رشد افزایشی ریزپردازندهها و پیچیدگی آنها با گذر زمان پیش بینی شده بود.
در حالیکه پیچیدگی ، اندازه ، ساختمان و شکل کلی ریزپردازن
دهها نسبت به ۶۰ سال گذشته کاملا تغییر کرده ، این نکته قابل توجهاست که طراحی بنیادی و ساختاری آنها تغییر چندانی نکردهاست. امروزه تقریبا تمام ریزپردازندههای معمول میتوانندپاسخگوی اصل نیومن در مورد ماشینهای ذخیره کننده برنامه باشند.
مطابق قانون مور که در حال حاضر نیز مطابق آن عمل میشو
د ، روی کرد استفاده از فناوری جدید کاهش در مدارات مجتمع ترانزیستوری مد نظر است. در نهایت مینیاتوری کردن مدارهای الکترونیکی باعث ادامه تحقیقات و ابداع روشهای جدید محاسباتی مانند ایجاد کامپیوترهای ذرهای (کوانتومی) شد . به علاوه موجب گسترش کاربرد موازی سازی و روشهای دیگر که ادامه دهنده قانون سودمند کلاسیک نیومن است گردید.
عملکرد ریزپردازندهها :
کارکرد بنیادی بیشتر ریزپردازندهها علیرغم شکل فیزیکی که دارند ، اجرای ترتیبی برنامههای ذخیره شده را موجب میشود. بحث در این مقوله نتیجه پیروی از قانون رایج نیومن را به همراه خواهد داشت. برنامه توسط یک سری از اعداد که در بخشی از حافظه ذخیره شدهاند نمایش داده میشود.چهار مرحله که تقریبا تمامی ریزپردازندههایی که از [ قانون نیومن] در ساختارشان استفاده میکنند از آن پیروی میکنند عبارتند از : فراخوانی ،رمز گشایی ، اجرا ، بازگشت برای نوشتن مجدد.
مرحله اول ، فراخوانی ، شامل فراخوانی یک دستورالعمل (که به وسیله یک عدد و یا ترتیبی از اعداد نمایش داده میشود) از حافظه برنامه میباشد. یک محل در حافظه برنامه توسط شمارنده برنامه(PC) مشخص میشود که در آن عددی که ذخیره میشود جایگاه جاری برنامه را مشخص میکند.به عبارت دیگر شمارنده برنامه از مسیرهای پردازنده در برنامه جاری نگهداری میکند. بعد از اینکه یک دستورالعمل فراخوانی شد شمارنده برنامه توسط طول کلمه دستورالعمل در واحد حافظه افزایش مییابد. گاهی اوقات برای اینکه یک دستورالعمل فراخوانی شود بایستی از حافظه کند بازخوانی شود. که این عمل باعث میشود ریزپردازنده همچنان منتظر بازگشت دستورالعمل بماند. این موضوع به طور گستردهای در پردازندههای مدرن با ذخیره سازی و معماری مخفی سازی در حافظههای جانبی مورد توجه قرار گرفت. دستورالعملی که پردازنده از حافظه بازخوانی میکند باید معین شده باشد که چه عملی را CPU می خواهد که انجام دهد. در مرحله رمزگشایی ، دستورالعمل به بخشهایی که قابل فهم برای قسمتهای پردازنده هستند تفکیک میشود. روشی که در آن مقادیر دستورالعمل شمارشی ترجمه میشود توسط معماری مجموعه دستورالعملها (ISA) تعریف میشود. اغلب یک گروه از اعداد در یک دستورالعمل که شناسنده نامیده میشوند بیانگر این هستند که کدام فرایند باید انجام گیرد. قسمت باقیمانده اعداد معمولا اطلاعات مورد نیاز برای دستور را در بر دارند ، مانند عملوندهای یک عملیات اضافی که در واقع چنین عملوندهایی ممکن است به عنوان یک مقدار ثابت داده شوند(مقدار بیواسطه) ، یا اینکه به عنوان یک محل برای مکان یابی یک مقدار ، یک ثبات و یا آدرس حافظه که به
وسیله گروهی از مدهای آدرس دهی تعیین میگردد داده شوند. در طرحهای قدیمی سهم پردازندهها یی که در رمزگشایی دستورالعملها نقش داشتند از واحد سخت افزاری غیر قابل تغییر برخوردار بودند. اگرچه در بیشتر پردازندهها و ISAهای انتزتلف برای CPU ها وجود دارد. این ریز برنامه گاهی قابلیت دوباره نویسی را دارد ، بنابر این آنها میتوانند برای تغییر نحوه رمز گشایی دستورالعملها حتی پش از آنکه CPU ها تولید شدند اصلاحاتی را مجددا انجام دهند.
بعد از مراحل فراخوانی و رمزگشایی مرحله اجرای دستور انجام میگیرد. در طول این مرحله قسمتهای مختلفی از پردازنده با هم مرتبط هستند و میتوانند یک عملکرد مطلوب ایجاد کنند. برای مثال اگر یک عملکرد اضافی درخواست شود واحد محاسبه و منطق (ALU)با یک سری از ورودیها و خروجیها مرتبط خواهد شد. ورودیها اعداد مورد نیاز برای افزوده شدن را فراهم میکنند و خروجیها شامل جمع نهایی اعداد میباشند. ALU شامل مجموعهای از مدارهاست تا بتواند عملیاتهای ساده محاسباتی و منطقی را روی ورودیها انجام دهد. اگر فرایند اضافی نتیجه بزرگی برای کارکرد پردازنده ایجاد کند یک پرچم سر ریز محاسباتی در ثبات پرچمها ایجاد میشود.
مرحله پایانی یعنی بازگشت به مکان اولیه و آمادگی برا
ی نوشتن مجدد پس از مرحله اجرا در قسمتی از حافظه به وجود میآید. گاهی اوقات نتایج محاسبات در ثباتهای پردازندههای خارجی نوشته میشوند که اینکار برای دسترسی سریع به وسیله دستورهایی که بعدا به برنامه داده میشود انجام میگیرند. در حالت دیگر ممکن است نتایج با سرعت کمتری نوشته شوند اما در حجم بزرگتر و ارزش کمتر ، که این نتایج در حافظه اصلی ذخیره خواهند شد.