1 / 29

Структура централне процесорске јединице

Структура централне процесорске јединице. Принцип рада CPU -а Регистри CPU -а Интерно повезивање блокова CPU -а. Принцип рада CPU -а. У најједноставнијем облику, рачунар има једну јединицу која извршава инструкције програма.

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. Структура централне процесорске јединице Принцип рада CPU-а Регистри CPU-а Интерно повезивање блокова CPU-а

  2. Принцип рада CPU-а • У најједноставнијем облику, рачунар има једну јединицу која извршава инструкције програма. • Ова јединица управља радом осталих подсистема и комуницира са њима. • Због ове централне улоге назива се централном процесорском јединицом.

  3. CPU Управљачка јединица У/И уређаји ALU регистри Главна меморија Диск Штампач . . . . . . Стазаподатака магистрала Принцип рада CPU-а

  4. Принцип рада CPU-а • Грубо речено CPU обавља две главне функције: • Припрема инструкције – instruction fetch. • Извршење инструкције. • Обрада која је предвиђена једном инструкцијом назива се циклус инструкције.

  5. Старт Прибави наредну инструкцију Изврши инструкцију HALT (Застој) Принцип рада CPU-а

  6. Принцип рада CPU-а • Ако рад процесора посматрамо са више детаља, онда се уочавају следеће функције: • Прибављање инструкције. CPU чита инструкцију из меморије. • Интрепретирање инструкције. Инструкција се декодира да би се одредило која се акција захтева.

  7. Принцип рада CPU-а • Прибављање података. Извршење инструкције може да захтева читање података из меморије или из У/И модула. • Обрада података. Извршење инструкције може да предвиђа обављање неке аритметичке или логичке операције над подацима. • Упис података. Резултати извршења могу се уписати у меморију или послати У/И модулу.

  8. Принцип рада CPU-а • Акција која се инструкцијом захтева од CPU-а може бити једног од следећих типова: • CPU  Меморија. Пренос података ка/из меморије. • CPU  У/И. Пренос података ка/из окружења. • Обрада података. Нека од аритметичких или логичких операција над подацима. • Промена тока извршења програма. Нека од инструкција може да промени секвенцијални редослед извршавања инструкција.

  9. Регистри процесора • Регистри видљиви кориснику. Програмер на машинском/асемблерском језику их користи да би смањио број обраћања главној меморији. Инструкцијама програма може да врши директан утицај на њих.

  10. Регистри процесора • Управљачки и статусни регистри. Користе их управљачка јединица за управљање радом CPU-а као и привилеговане инструкције за управљање извршењем програма. • Нису код свих архитектура ове две врсте регистара потпуно раздвојене!

  11. Регистри видљиви кориснику • Регистри опште намене Садрже податке различитог типа који могу бити операнди у различитим инструкцијама. Често постоји ограничење које их раздваја на: • Регистре за покретни зарез • Магацинске операције

  12. Регистри видљиви кориснику • Регистри за податке Садрже податке и не могу се употребити за израчунавање адреса. • Адресни регистри Садрже адресе, могу бити опште намене или посвећени одређеном адресном начину рада: • Показивачи сегмената • Индексни регистри • Показивачи магацина • Кодови услова (маркери)

  13. Управљачки и статусни регистри • Програмски бројач (Program Counter – PC) • Регистар инструкција (Instruction Register – IR) • Адресни регистар меморије (Memory Address register – MAR) • Регистар за чување података из меморије (Memory Buffer Register – MBR) • Статусни регистар (Program Status Word-PSW)

  14. Извршење инструкције • CPU извршава сваку инструкцију кроз низ следећих корака: • Прибави следећу инструкцију из меморије у регистар инструкција. • Измени садржај програмског бројача тако да указује на следећу инструкцију. • Одреди тип прибављене инструкције.

  15. Извршење инструкције • Ако инструкција користи податке из меморије, одреди где се они налазе. • Прибави податке, ако је потребно, у регистре. • Изврши инструкцију. • Смести резултате на одговарајуће место. • Иди на корак (1) ради започињања извршења наредне инструкције.

  16. Главна меморија MAR Управљачка јединица MВR R0 PC R1 Процесор ALU IR . . . Rn-1 nрегистара опште намене Интерно повезивање блокова CPU-а

  17. Интерно повезивање блокова CPU-а • Блокови са слике се могу организовати и међусобно повезати на разне начине. • Једна таква организација око јединствене интерне магистрале приказана је на следећој слици.

  18. Интерно повезивање блокова CPU-а • Интерна магистрала није исто што и екстерна(е) магистрала(е) која повезује процесор са осталим блоковима рачунара.

  19. Интерна CPU магистрала Декодер инструкција R0 . . . IR Rn-1 PC Y Адресне линије MAR Меморијска магистрала ALU управљачке линије Add Sub BA ALU Линије података MBR . . . Z Интерно повезивање блокова CPU-а • Регистри Y и Z су транспарантни за програмера!

  20. Елементарне функције CPU-а • Прибављање речи из меморије Нека је адреса меморијске локације којој се приступа у R1 а податак из меморије се смешта у R2. • MAR  [R1]. • Читање. • Чекање на сигнал MFC (Memory Function Completed). • R2  [MBR].

  21. Елементарне функције CPU-а • Упис речи у меморију Нека је адреса меморијске локације којој се приступа у R1 а податак који се уписује је у R2. • MAR  [R1]. • [MBR] [R2], Упис. • Чекање на сигнал MFC (Memory Function Completed).

  22. R(i-1)in  R(i-1)  R(i-1)out Yin  Yout Y  AB ALU  Zin Z  Zout Елементарне функције CPU-а • Регистарски пренос Улази и излази регистара се гејтују!Нека се врши пренос из R1 у R4. • Дозволити рад излазног степена регистра R1 постављањем R1out=1. • Дозволити рад улазног степена регистра R4 постављањем R4in=1.

  23. Елементарне функције CPU-а • Аритметичке и логичке операције ALU представља кобинационо коло па оба операнда морају да буду присутна на улазима у току операције. Сабирање садржаја R1 и R2 и смештање резулатата у R3 захтева следећу секвенцу: • R1out, Yin • R2out, Add, Zin • Zout, R3in

  24. Типови преноса CPU-а • Са тачке гледишта локације извора и одредишта података инструкције се могу поделити у следеће три категорије: • регистар-меморија- остварује се пренос регистар меморија. • регистар-регистар - остварује се пренос регистар регистар. • меморија-меморија – најпре се остварује пренос меморија регистар за привремено чување података; опционо се обавља ALU операција и резултат смешта у регистар за привремено чување података, а у трећем кораку се резултат смешта у меморију.

  25. Дијаграм стања циклуса инструкција • Израчунавање адресе инструкције Одређује се адреса инструкције која треба да се изврши као наредна. Обично се своди на додавање јединице адреси претходне инструкције. • Припрема инструкције Инструкција из специфициране меморијске локације се чита и смешта у CPU.

  26. Дијаграм стања циклуса инструкција • Декодирање инструкције Врши се анализа инструкције са циљем да се одреди тип операције која ће се извести над операндима који се користе од стране те инструкције. • Израчунавање адресе операнада Ако се операцијом специфицира обраћање операнду који је смештен у меморији или је доступан преко У/И, тада се одређује адреса операнда.

  27. Дијаграм стања циклуса инструкција • Припрема операнада прибавља се операнд из меморије или се чита из У/И уређаја. • Операција над податком обавља се специфицирана операција. • Смештање операнада уписује се операнд у меморију или у У/И уређај.

  28. CPU приступа меморији или У/И јединици Припрема инструкције Припрема операнада Смештањеоперанда већи број резултата већи број операнада Операција над подацима Израчунавање адресе операнада Декодирање инструкције Интерни рад CPU-a Израчунавање адресе наредбе Израчунавање адресе операнада следећа наредба низ или вектор Дијаграм стања циклуса инструкција

  29. Почетак CPU постављасадржајубафериактивираадреснуиуправљачкумагистралу Читасесадржајмашинскеречинаредбеизадресиранелокацијеиприбављау CPU CPU смештамашинскунаредбуурегистарнаредбиидекодираје фазаприпременаредбе НЕ ДА фазаизвршењанаредбе Наредбагранања ДА Извршењенаредбе Наредбаусловноггранања Испитивањестатуснихмаркера НЕ (Безусловногранање) НE Скокакојеусловиспуњен ДА Постависе PC наадресуследећенаредбе Постависе PC наадресускока Дијаграм стања циклуса инструкција

More Related