《再见吧恶龙》绿色度测评报告

Централна процесорска ?единица (скр. ЦП?, ЦПУ) ?е скуп електронских кола унутар рачунара на ко?има се извршава?у инструкци?е рачунарског програма путем изво?е?а основних аритметичких, логичких, контролних и улазно/излазних (I/O) операци?а спецификованих инструкци?ама. Рачунарска индустри?а ?е користила термин ?централна процесорска ?единица” ?ош од раних 1960-их.[1] Традиционално, термин ?ЦПУ” се односи на процесор, специфични?е на ?егову процесорску ?единицу и контролну ?единицу (CU), при чему се прави разлика изме?у тих сржних елемената рачунара и спо?аш?их компоненти као што су главна мемори?а и I/O електронска кола.[2]
Процесор (у рачунарству) ?е извршна ?единица — прима и извршава инструкци?е прочитане из одговара?у?е мемори?е. Када се каже само ?процесор“ на?чеш?е се мисли на централни процесор (енгл. central processing unit — CPU, централна процесорска ?единица), али посто?е и процесори специ?алних намена као што су процесори сигнала, разни графички процесори, итд. Сам по себи процесор не чини рачунар, али ?е ?едан од на?важни?их делова сваког рачунара.
Форма, диза?н, и имплементаци?а централних процесорских ?единица су се променили током ?ихове истори?е, али ?ихов фундаментални оперативни мод ?е остао скоро непроме?ен. Главне ЦПУ компоненте су аритметичко-логичка ?единица (АЛУ) ко?а врши аритметичке и логичке операци?е, процесорски регистри ко?и снабдева?у операндима АЛУ и чува?у резултате АЛУ операци?а, и контролна ?единица ко?а оркестрира преузима?е (из мемори?е) и извршава инструкци?е усмерава?у?и координисане операци?е АЛУ, регистара и других компоненти.
Ве?ина модерних процесора су микропроцесори, што значи да су садржани на ?единичном интегралном колу (ИЦ) или чипу. ?едан чип ко?и садржи ЦПУ може исто тако да садржи мемори?у, периферне интерфе?се, и друге компоненте рачунара; такви интегрисани уре?а?и се различито назива?у микроконтролерима или системима на чипу (СоЦ). Неки рачунари приме?у?у више?езгарни процесор, ко?и ?е ?едноставан чип састав?ен од два или више процесора званих ??езгра”; у том контексту, може се говорити о таквим по?единачним чиповима као ?утичницама”.[3] Редни процесори или векторски процесори има?у вишеструке процесоре ко?и паралелно делу?у, при чему се ни ?едан не сматра централним. Посто?и и концепт виртуалних процесора ко?у су вид примене динамички агрегираних рачунарских ресурса.[4]
Истори?а
[уреди | уреди извор]Први процесори су били механички и практично нису били засебан део рачунара (нпр. какве ?е про?ектовао Чарлс Беби?) затим електромеханички (реле?ни) па на бази електронских вакуумских цеви и били су ?ако велики. До знача?ног сма?е?а димензи?а и пове?а?а перформанси дошло ?е употребом транзистора (минипроцесори) и у друго? половини 20. века интегралних кола (микропроцесори).

Рани рачунари као што ?е ENIAC су морали да се физички измене да би обав?али различите задатке, те су стога те машине називане ?рачунарима са фиксним програмом”.[5] Пошто ?е термин ?ЦПУ” генерално дефинисан као уре?а? за извршава?е софтвера (рачунарског програма), на?рани?и уре?а?и ко?и се с правом могу називати процесорским су били рачунари са сачуваним програмом.
Иде?а рачунара са сачуваним програмом ?е ве? била присутна у ?он Преспер Екеретовом и ?он Вили?ам Мокли?евом диза?ну ЕНИАЦ рачунара, али ?е иници?ално била изостав?ена да би се рани?е завршила изград?а.[6] Дана 30. ?уна 1945, пре него што ?е ЕНИАЦ био направ?ен, математичар ?он фон Но?ман ?е дистрибуирао рад под насловом Први нацрт извешта?а о ЕДВАЦ-у. То ?е био преглед комп?утера са ускладиштеним програмом ко?и би се евентуално завршио у августу 1949. године.[7] ЕДВАЦ ?е био диза?ниран да извршава одре?ени бро? упутстава (или операци?а) различитих типова. Знача?но ?е да ?е требало да програми написани за ЕДВАЦ буду ускладиштени у рачунарско? мемори?и велике брзине уместо да буду спецификовани физичким ожичава?ем рачунара.[8] Тиме ?е превази?ено озби?но ограниче?е ЕНИАЦ-а, што ?е било знатно време и напор ко?и су били потребни за реконфигураци?у рачунара за обав?а?е новог задатка. Са фон Но?мановим диза?ном, програм ко?и ?е ЕДВАЦ извршавао се могао променити ?едноставном променом садржа?а мемори?е. ЕДВАЦ, ме?утим, ни?е био први рачунар са сачуваним програмом; Манчестерска експериментална машина малих размера, мали прототип рачунара са сачуваним програмом, извршио ?е сво? први програм 21. ?уна 1948,[9] а Манчестер Марк 1 ?е извршио сво? први програм током но?и 16–17. ?уна 1949.[10]
Диза?н раних процесора ?е био прилаго?ен да буду кориш?ени као део ве?ег и понекад особеног рачунара.[11] Ме?утим, ова? метод диза?нира?а прилаго?ених процесора за одре?ену апликаци?у ?е у велико? мери уступио место разво?у вишенаменских процесора произведених у великим количинама. Са таквом стандардизаци?ом се почело у ери дискретних транзисторских ме?нфре?мова и минирачунара, а тренд ?е знатно убрзан популаризаци?ом интегрисаних кола (ИЦ). Она су омогу?ила диза?нира?е и производ?у све комплексни?их процесора са задово?ава?у?ом толеранци?ама реда величине нанометра.[12] Мини?атуризаци?а и стандардизаци?а процесора су уве?али присуство дигиталних уре?а?а у модерном животу далеко изван ограничене примене наменских рачунарских машина. Модерни микропроцесори се ?ав?а?у у електронским уре?а?има у опсегу од аутомобила[13] до мобилних телефона,[14] а понекад чак и у играчкама.[15]
Док се фон Но?ману на?чеш?е припису?у заслуге за диза?н рачунара са ускладиштеним програмом због ?еговог диза?на ЕДВАЦ-а, и та? диза?н ?е постао познат као Фон Но?манова архитектура, други су пре ?ега, попут Конрада Цуза, предложили и спровели сличне иде?е.[16] Такозвана Харвардска архитектура рачунара Харвард Марк I, ко?и ?е завршен рани?е од ЕДВАЦ-а,[17][18] исто тако ?е користила диза?н са сачувани програмом путем бушене папирне траке уместо електричне мемори?е.[19] К?учна разлика изме?у фон Nо?манове и Харвардске архитектуре ?е да касни?а раздва?а складиште?е и третман процесорских инструкци?а и података, док рани?а користи исти мемори?ски простор за оба.[20] Ве?ина модерних процесора има?у превасходно фон Но?манов диза?н, мада се процесори са Харварским диза?ном исто тако сре?у, посебно код угра?ених апликаци?а; на пример, Atmel AVR микроконтролери има?у процесоре са Харвардском архитектуром.[21]
Реле?и и електронске цеви (термионске цеви) су били у широко? употреби као прекидачки елементи;[22][23] за рад рачунара су неопходне хи?аде или десетине хи?ада прекидачких елемената. Свеукупна брзина система ?е зависна од брзине прекидача. Цевни рачунари попут ЕДВАЦ-а су у просеку радили око осам сати без кварова, док су се реле?ски рачунари попут (спори?ег, али рани?ег) Харварда Марк I веома ретко кварили.[1] На кра?у су, процесори базирани на цевима постали доминантни, ?ер су знача?не предности у погледу брзине уопштено надмашиле проблеме поузданости. Ве?ина ових раних синхроних процесора ?е радила са ниском радном фреквенци?ом у поре?е?у са савременим микроелектронским диза?ном. Сатне фреквенци?е сигнала у распону од 100 kHz до 4 MHz су биле веома честе у то време, ограничене у велико? мери брзином прекидачких уре?а?а са ко?има су рачунари били изгра?ени.[24]
Транзисторски процесори
[уреди | уреди извор]
Комплексност диза?на процесора се пове?ала, ?ер су разне технологи?е омогу?иле изград?у све ма?их и све поуздани?их електронских уре?а?а. Прво такво побо?ша?е дошло ?е са напретком транзистора. Транзисторисани процесори током 1950-их и 1960-их више нису морали да се праве од гломазних, непоузданих и крхких прекидача попут вакуумских цеви и реле?а.[25] Са тим побо?ша?ем изгра?ени су комплексни?и и поуздани?и процесори на ?едно? или неколико штампаних плоча ко?и су садржали дискретне (индивидуалне) компоненте.
Године 1964, IBM ?е увео сво?у IBM System/360 рачунарску архитектуру ко?а ?е користила сери?у рачунара способну да извршава исте програме са различитим брзинама и перформансама.[26] То ?е било знача?но у то време кад ?е ве?ина електронских рачунара била ме?усобно инкомпатибилна, чак и они ко?е ?е израдио исти произво?ач. Да би се омогу?ило ово побо?ша?е, IBM ?е користио концепт микропрограма (често називаних ?микрокод”), ко?и су ?ош увек у широко? употреби у модерним процесорима.[27] System/360 архитектура ?е била толико популарна да ?е децени?ама доминирала тржиште ме?нфре?м рачунара и оставила насле?е ко?е се ?ош увек настав?а путем сличних модерних рачунара, као што ?е IBM zSeries.[28][29] Године 1965, Ди?итал еквипмент корпоре?шон (ДЕЦ) ?е увела ?ош ?едан утица?ни рачунар наме?ен научним и истраживачким тржиштима, ПДП-8.[30]
Рачунари базирани на транзисторима су имали неколико дистинктних предности у односу на сво?е претходнике. Осим што су били знатно поуздани?и и имали нижу потрош?у енерги?е, транзистори су исто тако омогу?авали процесорима да раде са знатно ве?им брзинама због ?иховог кратког прекидачког времена у поре?е?у са цевима или реле?има.[31] С пове?аном поузданош?у и драматично пове?аном брзином прекидачких елемената (ко?и су били скоро ексклузивно транзисторски до тог времена), брзине процесорских сатова од десетина мегахерца су са лако?ом остварене током тог периода.[32] Поред тога, док су дискретни транзистори и ИЦ процесори били у велико? употреби, нови диза?ни високих перформанси као што су СИМД (енгл. Single Instruction Multiple Data) векторски процесори су почели да се ?ав?а?у.[33] Ови рани експериментални диза?ни касни?е су довели до ере специ?ализованих суперрачунара као што су они ко?е су направили Кре? и Фу?ицу.[33]
Организаци?а процесора
[уреди | уреди извор]Централни процесори обично садрже:
- Управ?ачку ?единицу (енгл. control unit), ко?а управ?а радом осталих компоненти, конкретно операционе ?единице. У раним данима рачунарства се функционалност управ?ачке ?единице махом реализовала хардверски (ожичена реализаци?а), док се данас типично користи микропрограмска реализаци?а, где се рад процесора, ук?учу?у?и и ?егов скуп инструкци?а, имплементира кроз микропрограм.
- Операциону ?единицу (енгл. execution unit), ко?а типично садржи:
- Аритметичко-логичку ?единицу (енгл. ALU - Arithmetic logic unit), ко?а врши аритметичке и логичке операци?е.
- Регистре, ко?и служе за привремено складиште?е података при извршава?у програма (регистри опште намене), као и за чува?е информаци?а о тренутном ста?у програма ко?и се извршава (програмски бро?ач, показивач стека, прихватни регистар инструкци?е, програмска статусна реч и др.)
- Подсистем за везива?е са мемори?ом и перифери?ама
Модерни?и процесори има?у и ?единице за рад са бро?евима у покретном зарезу, брзу интерну мемори?у итд. Супер-скаларни процесори има?у и по више операционих ?единица. што им омогу?ава да извршава?у неколико инструкци?а истовремено (када оне нису ме?усобно зависне).
Подела процесора
[уреди | уреди извор]По томе колико инструкци?а и са колико података раде у ?едном ?кораку“:
Ову поделу ?е 1972. године предложио Ма?кл ?. Флин, и по ?ему се она назива ?Флинова таксономи?а“.
- ?едну инструкци?у са ?едним податком (тзв. скаларни процесори, енгл. SISD — Single Instruction Single Data). Подвари?анта (супер-скаларни) могу да у току извршава?а одреде ко?е парове инструкци?а и података могу да изврше у исто време и то и учине.
- ?едну инструкци?у извршава?у на више података од?едном (тзв. векторски процесори, енгл. SIMD — Single Instruction Multiple Data)
- извршава?у више независних инструкци?а, сваку на сво?им подацима (енгл. MIMD — Multiple Instruction Multiple Data)
- извршава?у више независних инструкци?а, сваку на ?едном, за?едничком, податку(енгл. MISD — Multiple Instruction Single Data)
Иако се SIMD некада користио углавном на векторским суперрачунарима попут оних ко?е ?е 70-их година 20. века популарисао Cray, потреба за обрадом мултимеди?алних података ?е довела до додава?а SIMD инструкци?а у архитектуру процесора опште намене, тренд ко?и ?е изродио технологи?е као што су PowerPC-?ев AltiVec, Intel-ови MMX, SSE, SSE2, SSE3 и SSE4, AMD-ов 3DNow!, SPARC-ов VIS, Sun-ов MAJC, PA-RISC-ов MAX и MIPS-ови MDMX и MIPS-3D.
Флинова таксономи?а данас ни?е од знача?а као практична подела, ?ер модерни рачунарски системи често потпада?у у неколико (па чак и све четири!) категори?е ове таксономи?е. Илустративан пример би био неки dual Pentium 4 Xeon систем ?е у основи x86 SISD архитектура са SIMD прошире?има (MMX, SSE, SSE2...), ради симетрично мултипроцесира?е на два одво?ена микропроцесора (MIMD), а сваки од ?их садржи ?езгро са па?пла?н архитектуром ко?а се може схватити као MISD (?ер сваки корак у па?пла?ну оперише над истим податком — инструкци?ом ко?а се извршава).
По архитектури и скупу инструкци?а се деле и на:
- Процесоре са комплексним скупом инструкци?а, у ко?има се свака комплексна инструкци?а интерно преводи у низ микрокод инструкци?а (енгл. CISC — Complex Instruction Set Computer). Овакав скуп инструкци?а ?е обично ?угодни?и“ за програмира?е, али генерално резулту?е ма?ом брзином извршава?а. Свакако знача?ан пример CISC архитектуре ?е Интелова (и АМД-ова) 80x86 фамили?а, а овакав диза?н су користили и CDC 6600, System/360, VAX, PDP-11 и Motorola 68000.
- Процесоре са редукованим скупом инструкци?а, у ко?има се инструкци?е не преводе ве? су директно подржане (енгл. Reduced Instruction Set Computer). Овакав скуп инструкци?а ?е обично ?незгодни?и“ за програмира?е али генерално резулту?е ве?ом брзином извршава?а. Пове?а?е величине радне мемори?е, као и разво? компа?лера су довели до тога да ?е данас RISC општеприхва?ена филозофи?а у диза?ну микропроцесора. Чак и модерни Интелови и АМД-ови процесори, иако програмеру изгледа?у као CISC машине, интерно разби?а?у CISC инструкци?е у низове интерних RISC инструкци?а (микроопераци?а) ко?е се затим извршава?у на суперскаларном ?езгру.
Подела на RISC и CISC ?е општеприхва?ена али посто?е и неке ма?е званичне подвари?анте и комбинаци?е:
- Процесоре са ?ако редукованим скупом инструкци?а (енгл. ERISC — Extremely Reduced Instruction Set Computer).
- Процесоре са ?проширеним“ редукованим скупом инструкци?а, у ко?има се ве?ина инструкци?а не преводи ве? су директно подржане али садрже и комплексне инструкци?е (енгл. ERISC — Extended Reduced Instruction Set Computer). Овакав скуп инструкци?а ?е и угодан за програмира?е и резулту?е ве?ом брзином извршава?а али сам процесор поста?е знача?но комплексни?и. Напомена: ова категоризаци?а ни?е потпуно званична. ?едно време су побо?шане верзи?е CISC процесора биле приближене RISC архитектури и биле класификоване као ?ERISC“.
Остале поделе
- по ширини адресне магистрале, магистрале података, итд. (рецимо, 4004 ?е 4-битни процесор, Z80 8-битни, MC68000 16-битни итд.)
- по технологи?и израде и степену интеграци?е (за микропроцесоре)
- по томе да ли има?у засебне магистрале за програмску мемори?у и мемори?у за податке (погледа?те харвардску архитектуру) или користе ?едну (погледа?те фон Но?манову архитектуру)
Произво?ачи микропроцесора
[уреди | уреди извор]Посто?и ве?и бро? произво?ача микропроцесора, а ме?у ?има се истичу: АМД, Интел, Моторола, IBM, Трансмета, Qualcomm.
Види ?ош
[уреди | уреди извор]Референце
[уреди | уреди извор]- ^ а б Weik, Martin H. (1961). ?A Third Survey of Domestic Electronic Digital Computing Systems”. Ballistic Research Laboratory.
- ^ Kuck 1978, стр. 12
- ^ Willhalm, Thomas; Dementiev, Roman; Patrick Fay (18. 12. 2014). ?Intel Performance Counter Monitor – A better way to measure CPU utilization”. software.intel.com. Приступ?ено 17. 2. 2015.
- ^ Liebowitz, Matt; Kusek, Christopher; Spies, Rynardt (2014). VMware vSphere Performance: Designing CPU, Memory, Storage, and Networking for Performance-Intensive Workloads. Wiley. стр. 68. ISBN 978-1-118-00819-5.
- ^ Regan, Gerard. A Brief History of Computing. стр. 66. ISBN 978-1-84800-083-4.
- ^ ?Bit By Bit”. Haverford College. Архивирано из оригинала 13. 10. 2012. г. Приступ?ено 1. 8. 2015.
- ^ ?First Draft of a Report on the EDVAC” (PDF). Moore School of Electrical Engineering, University of Pennsylvania. 1945. Архивирано из оригинала (PDF) 23. 4. 2004. г. Приступ?ено 28. 1. 2018.
- ^ University, Stanford. ?The Modern History of Computing”. The Stanford Encyclopedia of Philosophy. Приступ?ено 25. 9. 2015.
- ^ Enticknap, Nicholas (лето 1998). ?Computing's Golden Jubilee”. Resurrection. The Computer Conservation Society (20). ISSN 0958-7403. Архивирано из оригинала 9. 1. 2012. г. Приступ?ено 19. 4. 2008.
- ^ ?The Manchester Mark 1”. The University of Manchester. Приступ?ено 25. 9. 2015.
- ^ ?The First Generation”. Computer History Museum. Приступ?ено 29. 9. 2015.
- ^ ?The History of the Integrated Circuit”. Nobelprize.org. Приступ?ено 29. 9. 2015.
- ^ Turley, Jim. ?Motoring with microprocessors”. Embedded. Приступ?ено 15. 11. 2015.
- ^ ?Mobile Processor Guide – Summer 2013”. Android Authority. Приступ?ено 15. 11. 2015.
- ^ ?ARM946 Processor”. ARM. Приступ?ено 15. 11. 2015.
- ^ ?Konrad Zuse”. Computer History Museum. Архивирано из оригинала 3. 7. 2012. г. Приступ?ено 29. 9. 2015.
- ^ ?Timeline of Computer History: Computers”. Computer History Museum. Приступ?ено 21. 11. 2015.
- ^ White, Stephen. ?A Brief History of Computing - First Generation Computers”. Приступ?ено 21. 11. 2015.
- ^ ?Harvard University Mark - Paper Tape Punch Unit”. Computer History Museum. Приступ?ено 21. 11. 2015.
- ^ ?What is the difference between a von Neumann architecture and a Harvard architecture?”. ARM. Приступ?ено 22. 11. 2015.
- ^ ?Advanced Architecture Optimizes the Atmel AVR CPU”. Atmel. Архивирано из оригинала 14. 11. 2015. г. Приступ?ено 22. 11. 2015.
- ^ ?Switches, transistors and relays”. BBC. Архивирано из оригинала 05. 12. 2016. г. Приступ?ено 7. 2. 2016.
- ^ ?Introducing the Vacuum Transistor: A Device Made of Nothing”. IEEE Spectrum. Приступ?ено 7. 2. 2016.
- ^ ?What Is Computer Performance?”. The National Academies Press. Приступ?ено 16. 5. 2016.
- ^ ?1953: Transistorized Computers Emerge”. Computer History Museum. Приступ?ено 3. 6. 2016.
- ^ ?IBM System/360 Dates and Characteristics”. IBM.
- ^ Amdahl, G. M.; Blaauw, G. A.; Brooks, F. P. Jr. (април 1964). ?Architecture of the IBM System/360”. IBM Journal of Research and Development. IBM. 8 (2): 87—101. ISSN 0018-8646. doi:10.1147/rd.82.0087.
- ^ Brodkin, John. ?50 years ago, IBM created mainframe that helped send men to the Moon”. Ars Technica. Приступ?ено 9. 4. 2016.
- ^ Clarke, Gavin. ?Why won't you DIE? IBM's S/360 and its legacy at 50”. The Register. Приступ?ено 9. 4. 2016.
- ^ ?Online PDP-8 Home Page, Run a PDP-8”. PDP8. Приступ?ено 25. 9. 2015.
- ^ ?Transistors, Relays, and Controlling High-Current Loads”. New York University. ITP Physical Computing. Приступ?ено 9. 4. 2016.
- ^ Lilly, Paul. ?A Brief History of CPUs: 31 Awesome Years of x86”. PC Gamer. Приступ?ено 15. 6. 2016.
- ^ а б Patterson, Hennessy & Larus 1999, стр. 751
Литература
[уреди | уреди извор]- Patterson, David A.; Hennessy, John L.; Larus, James R. (1999). Computer Organization and Design: the Hardware/Software Interface (2. ed., 3rd print. изд.). San Francisco: Kaufmann. стр. 751. ISBN 978-1-55860-428-5.
- Regan, Gerard. A Brief History of Computing. стр. 66. ISBN 978-1-84800-083-4.
- Kuck, David (1978). Computers and Computations, Vol 1. John Wiley & Sons, Inc. стр. 12. ISBN 978-0-471-02716-4.
Спо?аш?е везе
[уреди | уреди извор]- АМД (?език: енглески)
- Интел (?език: енглески)
- Нвидиа (?език: енглески)
- How Microprocessors Work at HowStuffWorks.
- 25 Microchips that shook the world