Архитектура Рачунара

Relevanta dokument
СМЕШТАЈ ГРУПЕ У АПАРТМАНСКОМ НАСЕЉУ Краљеви конаци -период од до год.-

За младе од 16 до 20 година Средња школа

Сазнајте шта је добробит животиња и зашто је она важна за фармере?

Основна школа и ваншколска настава

Планирање дистрибутивних мрежа са дистрибуираном производњом

Обданиште и забавиште

Библиотека Прозна путовања

Издавање ове књиге помогао је Савет за културу Шведске

инфо ОКРУГЛИ СТО ПРВИ ПАРТИЗАН Душко Кузовић Оскар квалитета

вароа тема броја болести година cx, број 8, август часопис из света науке и праксе у пчеларству

УНИВЕРЗИТЕТ У БЕОГРАДУ ФАКУЛТЕТ ВЕТЕРИНАРСКЕ МЕДИЦИНЕ Булевар ослобођења 18, тел: , факс:

ESL5205LO. SR Машина за прање посуђа Упутство за употребу 2 SV Diskmaskin Bruksanvisning 23

Неутрони (Revisited)

Правопис српског језика

ПРВО ВЕЛИКИ ОБЈЕКТИ, А ОНДА МАЛИ

УНИВЕРЗИТЕТ У БЕОГРАДУ Факултет ветеринарске медицине ВОДИЧ. кроз докторске академске студије ветеринарске медицине

Садржај. Шведска у свету 14 Шведска и УН 14. Сарадња нордијских земаља 15. Подаци о Шведској 16. Контакт 16. Овако се управља Шведском

К О Н К У Р С Н А Д О К У М Е Н Т А Ц И Ј А

SAVEZ SRBA U ŠVEDSKOJ SERBERNAS RIKSFÖRBUND I SVERIGE

Вјенчање Црне Горе са морем Котор (Дијаспора)- Почетком јула

Регионални план управљања отпадом

ПРИКАЗИ И ОСВРТИ REVIEWS AND REFLECTIONS УДК 930.1:94(048).84

lánac kedja jèr ty, eftersom, emedan ìsti samma, identisk materìjal här: tyg bògàtstvo rikedom, förmögenhet pr~ljav smutsig

АГЕНЦИЈА за ЕНЕРГЕТИКУ РЕПУБЛИКЕ СРБИЈЕ

ИНФОРМАЦИЈА. Шамац у години

Преглед сектора културе града Ужица 1

УНИВЕРЗИТЕТ У НОВОМ САДУ ОБРАЗАЦ 6.

Datablad FLEXIMARK Rostfria syrafasta teckenremsor & hållare

Постапка за Магистерски ПРИЈАВА

РЕПУБЛИКА СРБИЈА ДРЖАВНА РЕВИЗОРСКА ИНСТИТУЦИЈА

Предмет: Извештај Комисије за оцену урађене докторске дисертације Злате Ј. Живковић, дипл. инж.

När denna vokal står efter en konsonant framträder inte något [j] utan detta markerar att den föregående konsonanten är mjuk, dvs uttalas i i-läge.

Библиотека Прозна путовања

Златиборски округ Ужице Ариље Бајина Башта

И З В Ј Е Ш Т А Ј КОМИСИЈЕ О ПРИЈАВЉЕНИМ КАНДИДАТИМА ЗА ИЗБОР У ЗВАЊЕ

Поштовани купче Kirby уређаја! Уживајте у потпуности у свом Sentria систему за одржавање домаћинства!

Q1Eco fika Квиз карта. Која е разликата помеѓу fika (фика) кафе пауза, и дали воопшто постои разлика?

САМО ЗА ВАС! СЈАЈНИ ПОПУСТИ 999 ДИН. 16 Важи од ДОК ТРАЈУ ЗАЛИХЕ! Уштедите 55%! ДИН ДИН ЦВЕТНО-ВОЋНО-ВОДЕНАСТИ

TIPSTER CUP ГОЛЕМО ФИНАЛЕ. од 14 јуни до 15 јули. Билтен бр сезона 2017/18

Mycket formellt, mottagaren har en speciell titel som ska användas i stället för namnet. Уважаемый...

2016. Задаци мпгу да се раде пним редпследпм кпји кандидат сам пдреди.

Tentamen PC-teknik 5 p

Det kildinsamiska skriftspråkets

Hållbar kraftförsörjning av signalanläggningar Sustainable power supply of signalling facilities

NA[Ö LIST. Bellmansgatan 15, Stockholm Tel: +46 (8)

Извјештај о ревизији финансијских извјештаја Дома здравља Др Младен Стојановић Лакташи за период године

КОНКУРСНA ДОКУМЕНТАЦИЈA ЈП'' ВОДОВОД И КАНАЛИЗАЦИЈА'' ЛОЗНИЦА, ГЕОРГИЈА ЈАКШИЋА БР. 9 ЈАВНА НАБАВКА -ОТВОРЕНИ ПОСТУПАК-

КОНКУРСНА ДОКУМЕНТАЦИЈА

ДЕЛТА БАНКА А.Д., БЕОГРАД ИЗВЕШТАЈ О ОБАВЉЕНИМ РЕВИЗИЈАМА. Финансијски извештаји 31. децембар и године

Facit till övningsuppgifter Kapitel 13 Anslutning av minnes- och I/O-moduler till buss 13-1

DEN HEMLIGA AGENTENS HANDBOK FÖR SPRÅKLIGA UTMANINGAR

DEN HEMLIGA AGENTENS HANDBOK FÖR SPRÅKLIGA UTMANINGAR

Каталог продукции компании Heléns

Personligt Brev. Brev - Adress. Mr. N. Summerbee Tyres of Manhattan 335 Main Street New York NY 92926

ИЗВЕШТАЈ О РАДУ ШКОЛЕ

3. Mikroprogrammering II

ЕВРОПСКИ СУД ЗА ЧОВЕКОВИ ПРАВА ПЕТТИ ОДДЕЛ. ОДЛУКА ( Жалба бр.40397/12)

КОНКУРСНA ДОКУМЕНТАЦИЈA ЈП'' ВОДОВОД И КАНАЛИЗАЦИЈА'' ЛОЗНИЦА, ГЕОРГИЈА ЈАКШИЋА БР. 9 ЈАВНА НАБАВКА -ОТВОРЕНИ ПОСТУПАК-

Föreläsningsanteckningar 3. Mikroprogrammering II

sähkövastuksen tempo ladder 600 monteringsanvisning tempo ladder 600 monteringsanvisning tempo ladder 600 monteringsanvisning tempo ladder 600

Swedish design and manufacture since 1967

Tentamen PC-teknik 5 p

Personligt Brev. Brev - Adress 충청북도청주시상당구율량동현대 2 차아파트 13 동 201 호심수정님

Motivet finns att beställa i följande storlekar

Brottslingar eller hjältar? Aggressionsbrottet i Romstadgan och våldsanvändning vid unilaterala humanitära interventioner

Huvudansökan, kandidatprogrammet i språk: ryska som modersmål Urvalsprov kl

Svensk myndighetsinformation på serbiska, kroatiska och bosniska

Analys av Insider Virus

Ansökan Följebrev. Följebrev - Inledning. Bäste herrn, Уважаемый г-н... Formellt, manlig mottagare, namnet okänt. Уважаемая госпожа...

БИБЛИОГРАФИЈА ЗАВИЧАЈНИХ ПИСАЦА ЗА ДЕЦУ. Аутор: Ивана Јанишевић. (необјављен рукопис из 2003)

Programräknaren visar alltid på nästa instruktion som skall utföras. Så fort en instruktion har hämtats så visar programräknaren på nästa instruktion.

Tentamen PC-teknik 5 p Lösningar och kommentarer

Lösningsförslag tenta

KULINARISK GRÄNSLÖS MIRAKULÖS METOD

РУСЕНСКИ УНИВЕРСИТЕТ АНГЕЛ КЪНЧЕВ СЪЮЗ НА УЧЕНИТЕ - РУСЕ. ПОКАНА за МНК 19

HYDROBOX EHSE series ERSE series

LV6 LV7. Aktivera Kursens mål:

Model No. GPWG8 3 ELECTRIC PRESSURE WASHER 15 ELEKTRISCHER HOCHDRUCKREINIGER 27 LIMPIADORA ELÉCTRICA A PRESIÓN 39 IDROPULITRICE ELETTRICA A PRESSIONE

Alltid redo att hjälpa till. Registrera din produkt och få support på M110. Frågor? Kontakta Philips.

Sanera ph12 Номер поставшика продукта R Соответствующие идентифицированные применение вещества или смеси и нерекомендуемые Сфера применения

Rysk fonetik 5 hp föreläsning V. Institutionen för moderna språk Karine Åkerman Sarkisian Ryska A

F8: Undantagshantering

ALU:n ska anslutas hur då?

Den första raden innehåller grafem som stämmer överens med våra latinska.

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner

ASSEMBLY MONTAGE MONTAJE MONTAGE MONTAGGIO AFWERKING MONTAGEM MONTAŻ SZERELÉS СБОРКА MONTARE MONTÁŽ MONTÁŽ MONTERING МОНТИРАНЕ MONTAJ МОНТУВАННЯ

Dataminne I/O Stack 0x005D 0x3D SP low byte 0x005E 0x3E SP high byte

Svar till Övning3 Datorteknik, HH vt12 Avbrott och timers

Digital- och datorteknik

Внимание : Смеситель в душевой кабине Термостастатического типа. Подключение строго ( холодная вода синяя метка; горячая вода красная метка )

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner

Föreläsningsanteckningar 2. Mikroprogrammering I

ENGLISH Warning! Before proceeding with installation, read the safety information in the User Manual.

ENGLISH Warning! Before proceeding with installation, read the safety information in the User Manual.

ENGLISH Warning! Before proceeding with installation, read the safety information in the User Manual.

Reducerad INSTRUKTIONSLISTA för FLIS-processorn

Lösningsförslag till Tenta i Mikrodator

HJÄLPSAM MEDELSTOR METOD

ENGLISH Warning! Before proceeding with installation, read the safety information in the User Manual.

Programmering av inbyggda system

Transkript:

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику 22.05.2005. Архитектура Рачунара I (20) Питање 1. (5) У оквиру опслуживања прекида на стеку се чувају неки регистри процесора. a. Навести који се регистри чувају и зашто. b. Навести који се регистри обавезно чувају хардверски а који могу и хардверски софтверски. За оне који могу да се чувају и хардверски и софтверски навести од чега зависи како ће се чувати. 2. (5) У оквиру извршавања прекидне рутине неке периферије стиже захтев за прекид од неке друге периферије. a. Навести услове који треба да буду испуњени да би се захтев за прекид прихватио и скочило на прекидну рутину те периферије. b. За сваки од услова навести на који начин и када се мења и да ли се то чини хардверски или софтверки. 3. (5) Посматра се асинхрона магистрала на којој се циклуси читања и уписа тако реализују да је магистрала заузета све време трајања циклуса. a. Нацртати временске облике сигнала које током реализације циклуса читања и уписа размењују газда и слуга. b. Навести које сигнале и по ком редоследу генеришу газда и слуга приликом реализицаје циклуса читања и уписа. 4. (5) Посматра се магистрала са подељеним циклусима која се састоји од адресних линија, линија података и управљачких линија и на којој се реализују циклус слање захтева за читање, циклус слање захтева за и упис и циклус враћање податка. a. Навести које информације по адресним линијама и линијама података и које сигнале по управљачким линијама размењују газда у слуга приликом реализације сваког од наведена три циклуса на магистрали. b. Навести шта све треба да постоји од хардвера на страни меморијског модула да би три наведен циклуса могла да се реализују.

II (20) Задатак Адресни простор процесора је величине 8GB, од којих је највиших 1GB резервисани за ROM меморију, адресибилна јединица је 16-битна реч, а вишеречни бројеви се смештају тако да је на нижој адреси нижа реч. Процесор је једноадресни са раздвојеним меморијским и улазно/излазним адресним просторима, а механизам прекида је векторисан. IV (Interrupt Vector) табела почиње од адресе на коју указује регистар IVTP (Interrupt Vector Table Pointer), а регистар IVTP има вредност 4. Процесор има три улазне линије IRQ0, IRQ1 и IRQ2 за спољне маскирајуће прекиде, при чему је IRQ0 највишег приоритета, а IRQ2 најнижег приоритета, на које су везане периферије PER0, PER1 и PER2, респективно, којима треба доделити улазе 4, 5 и 7 у вектор табели, и којима одговарају прекидне рутине на адресама 1007h, 1010h и 1005h, респективно. Адресе 8-битних регистара у којима се чувају бројеви улаза су 0h, 4h и 8h, респективно. Не прихвата се прекид истог нивоа приоритета. Улаз 0 у IV табелу се користи у свим осталим случајевима. У PSW-у постоји бит I (Interrupt Enable) који се брише у микропрограму за обраду прекида, као и одређен број L бита. При прекиду се на стеку чувају ACC, PSW и PC тим редом. Стек расте према нижим локацијама. Акумулатор је 16-битни. Дат је део главног програма на слици 1, прекидне рутине на слици 2, изглед дела меморије почев од адресе 0 дат је на слици 3. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 5. инструкције стиже захтев за прекид по линији IRQ2, у току 6. по линији IRQ1, а у току 7. по линији IRQ0. На почетку су сви бити PSW-а постављени на 0. У регистру маске IMR бит i одговара линији IRQi; вредност овог регистра је иницијално 5h. Инструкција RTI реагује на прекид. Слика 1 Адреса Наредба Слика 2 Адреса Наредба Адреса Наредба Слика 3 Адреса Садржај 0100h INTE 0101h LOAD 1h 0104h DECA 0105h STORE 1h 0108h INCA 0109h INCA 010Ah INTD 1000h POPA 1001h ADD #3h 1003h PUSHA 1004h RTI 1005h INCA 1006h RTI 1007h PUSHA 1008h LOAD #2h 100Ah STORE (1h) 100Dh POPA 100Eh RTI 100Fh RTI 1010h RTI 1011h RTI 0000h 0001h 0001h 0000h 0002h FFFFh 0003h 0000h 0004h 1000h 0005h 0000h a) (4) Написати део програма којим се додељују бројеви улаза наведеним периферијама. b) (4) Нацртати изглед првих 8 улаза у вектор табели, означити адресе релевантних локација и уписати садржаје у њих. c) (4) Написати секвенцу адреса наредби које се редом извршавају, почев од адресе 0100h. d) (4) Приказати садржај свих познатих локација на врху стека након извршавања 9. инструкције. За сачувану вредност PSW дати само вредност бита I и L. Назначити у коме смеру расте стек. e) (4) Која ће се вредност налазити на локацији 0001h након извршења секвенце под c)? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 2 сата.

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику 21.05.2006. Архитектура Рачунара Колоквијум I (20) Питање 1. (5) У оквиру опслуживања прекида на стеку се чувају неки регистри процесора. a) Навести који се регистри чувају и зашто. b) Навести који се регистри обавезно чувају хардверски а који могу и хардверски софтверски. За оне који могу да се чувају и хардверски и софтверски навести од чега зависи како ће се чувати. 2. (5) У оквиру извршавања прекидне рутине неке периферије стиже захтев за прекид од неке друге периферије. a) Навести услове који треба да буду испуњени да би се захтев за прекид прихватио и скочило на прекидну рутину те периферије. b) За сваки од услова навести на који начин и када се мења и да ли се то чини хардверски или софтверски. 3. (5) Посматра се асинхрона магистрала на којој се циклуси читања и уписа тако реализују да је магистрала заузета све време трајања циклуса. а) Нацртати временске облике сигнала које током реализације циклуса читања и уписа размењују газда и слуга. b) Навести које сигнале и по ком редоследу генеришу газда и слуга приликом реализицаје циклуса читања и уписа. 4. (5) Посматра се магистрала са подељеним циклусима која се састоји од адресних линија, линија података и управљачких линија и на којој се реализују циклус слање захтева за читање, циклус слање захтева за и упис и циклус враћање податка. a) Навести које информације по адресним линијама и линијама података и које сигнале по управљачким линијама размењују газда у слуга приликом реализације сваког од наведена три циклуса на магистрали. b) Навести шта све треба да постоји од хардвера на страни меморијског модула да би три наведен циклуса могла да се реализују.

II (20) Задатак Адресни простор процесора је величине 16GB, адресибилна јединица је 32-битна реч, а 64- битни бројеви се смештају тако да је на нижој адреси нижа реч. Процесор је једноадресни, а механизам прекида је векторисан. Интерапт вектор (IV) табела има 4 фиксна улаза и почиње од адресе 2h. Процесор има две улазне линије IRQ0 и IRQ1 за спољне маскирајуће прекиде, при чему је IRQ0 вишег приоритета. Њима су придружени улази 0 и 1 у IV табелу, респективно. Улаз 2 у IV табели се употребљава у случају прекида после сваке инструкције (TRAP), а улаз 3 у свим осталим случајевима. У PSW-у постоји бит I (Interrupt Enable) који се брише у микропрограму за обраду прекида. При прекиду се на стеку чувају ACC, PSW и PC тим редом. Стек расте према нижим локацијама. Акумулатор и сви регистри опште намене су 32-битни. Инструкције INTE, INTD, RTI и TRPE не реагују на прекиде. Дат је део главног програма на слици 1, прекидне рутине на слици 2, изглед дела меморије почев од адресе 0 дат је на слици 3. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 2. инструкције стиже захтев за прекид по линији IRQ1, а у току 5. по линији IRQ0. Није дозвољено читати податке и уписивати их у део за извршни програм. На почетку су сви бити PSW-а постављени на 0. Слика 1 Адреса Наредба Слика 2 Адреса Наредба Адреса Наредба Слика 3 Адреса Садржај 0100h INTE 0101h LOAD 1h 0103h INCA 0104h STORE 1h 0106h DECA 0107h INTD 1000h LOAD 0h 1001h INCA 1002h STORE 0h 1004h RTI 1006h POPA 1007h ADD #1h 1008h PUSHA 1009h RTI 100Ah POP R1 100Bh STORE (R1) 100Ch PUSH R1 100Dh RTI 0000h 1001h 0001h 1000h 0002h 100Ah 0003h 1000h 0004h 100Dh 0005h 1006h a) (5) На којим адресама започињу прекидне рутине за линије IRQ0 и IRQ1, респективно? b) (5) Написати секвенцу адреса наредби које се редом извршавају, почев од адресе 0100h. c) (5) Приказати садржај свих познатих локација на врху стека након извршавања 10. инструкције. За сачувану вредност PSW дати само вредност бита I. Назначити у коме смеру расте стек. d) (5) Која ће се вредност налазити на локацији 1h након извршења секвенце под b)? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 2 сата. Напомена: Писати читко и јасно означити одговоре на начин дат у питањима.

Архитектура рачунара, Колоквијум 2006. Решења задатака 2) а) IRQ0 -> 100Ah IRQ1 -> 1000h b) 100h, 101h, 1000h, 1001h, 1002h, 1004h, 103h, 100Ah, 100Bh, 1006h, 1007h, 1008h, 1009h, 100Ch, 100Dh, 104h, 106h, 107h c) 1001h I=1 1001h I=0 d) MEM[1] = 1001h

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику Архитектура Рачунара 29.04.2007. I (20) Питање 1. (5) У оквиру опслуживања прекида на стеку се чувају неки регистри процесора. a) Навести који се регистри чувају и зашто. b) Навести који се регистри обавезно чувају хардверски а који могу и хардверски софтверски. За оне који могу да се чувају и хардверски и софтверски навести од чега зависи како ће се чувати. 2. (5) У процесору са векторисаним механизмом прекида оквиру хардверског дела опслуживања овог захтева за прекид се у зависности од врсте прекида на различите начине долази до броја улаза у табелу са адресама прекидних рутина. Навести како се долази до броја улаза у табелу са адресама прекидних рутина за следеће три врсте прекида: a) унутрашњи прекид због инструкције прекида, b) унутрашњи прекид због грешке у коду операције и c) спољашњи прекид од улазно/излазног уређаја за случај када улази нису фиксни. 3. (5) Нацртати и објаснити шему дела модула који се користи у арбитрацији. Шема треба да укључи делове који подржавају и паралелну и серијски арбитрацију, синхронизацију на сигнал такта магистрале и сигнал заузећа магистрале. 4. (5) Посматра се магистрала са подељеним циклусима која се састоји од адресних линија, линија података и управљачких линија и на којој се реализују циклус слање захтева за читање, циклус слање захтева за и упис и циклус враћање податка. a) Навести које информације по адресним линијама и линијама података и које сигнале по управљачким линијама размењују газда у слуга приликом реализације сваког од наведена три циклуса на магистрали. b) Навести шта све треба да постоји од хардвера на страни меморијског модула да би три наведен циклуса могла да се реализују.

II (20) Адресни простор процесора је величине 8GB, адресибилна јединица је 16-битна реч, а вишеречни бројеви се смештају тако да је на вишој адреси нижа реч. Процесор је једноадресни са раздвојеним меморијским и I/O адресним просторима, а механизам прекида је векторисан. IV (Interrupt Vector) табела почиње од адресе на коју указује регистар IVTP (Interrupt Vector Table Pointer), а регистар IVTP има вредност 16. Процесор поседује само једну линију IRQ за спољашњи прекид коме може да се додели произвољан улаз у IV табели. Постоји још и линија INTA којом процесор одобрава прекид и захтева постављање броја улаза на магистралу података. Посебан уређај, контролер прекида, служи за паралелну арбитрацију до 4 захтева за прекид, који стижу по линијама IRQ0 до IRQ3 за спољне маскирајуће прекиде, при чему је IRQ0 најнижег приоритета, а IRQ3 највишег приоритета, на које су везане периферије PER0 до PER3, респективно, којима треба доделити улазе 3, 2, 5 и 0 у вектор табели, и којима одговарају прекидне рутине на адресама 1002h, 1008h, 1000h, и 1005h респективно. Адресе 8-битних регистара у којима се чувају бројеви улаза су 10h, 20h, 30h и 40h респективно. Улаз 1, коме одговара прекидна рутина на адреси 1005h, се користи у случају прекида после сваке инструкције. Контролер не подржава угнежђавање прекида са приоритетом, већ само приоритирање тренутно постојећих захтева. У случају када се генерише више прекида истовремено прво се прихвата инструкција INT, па Trap, па маскирајући прекиди. Контролер поседује и 16-то битни регистар маске, који је се налази на адреси 00CCh I/O адресног простора, и чија 4 најнижа бита маскирају захтеве за прекид на улазима контролера. Почетна вредност овог регистра је Fh. У PSW-у постоји бити I (Interrupt Enable) и T (Trap) који се бришу у кораку за обраду прекида. При прекиду се на стеку чувају ACC, PSW и PC тим редом. Стек расте према нижим локацијама. Акумулатор и PSW су 16-битни. Дат је део главног програма на слици 1, прекидне рутине на слици 2. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 2. инструкције стиже захтев за прекид по линији IRQ1, у току 5. по линији IRQ0, а у току 7. по линији IRQ3. На почетку су сви бити PSW-а постављени на 0. Инструкције RTI, TRPE, TRPD, INTE и INTD не реагују на прекид. Почетни садржај локације 1h је 0. Адреса Наредба Адреса Наредба Адреса Наредба 0100h INTE 0101h LOAD 1h 0102h TRPE 0103h INTD 0104h STORE 1h 0106h TRPD Слика 1 1000h INCA 1001h RTI 1002h INTE 1003h INT #1h 1004h RTI 1005h INCA Слика 2 1006h INTD 1007h RTI 1008h INTE 1009h INCA 100Ah STORE 1h 100Ch RTI a) (4) Написати део програма којим се додељују бројеви улаза наведеним периферијама. b) (4) Нацртати изглед првих 8 улаза у вектор табели, означити адресе релевантних локација и уписати садржаје у њих. c) (4) Написати секвенцу адреса наредби које се редом извршавају, почев од адресе 0100h. d) (4) Приказати садржај свих познатих локација на врху стека након извршавања 8. инструкције. За сачувану вредност PSW дати само вредност бита I. Назначити у коме смеру расте стек. e) (4) Нацртати принципијелну структурну шему контролера. Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 2 сата.

Архитектура рачунара, К 2007. Решења задатка II) а) LOAD #3h OUTB 10h LOAD #2h OUTB 20h LOAD #5h OUTB 30h LOAD #0h OUTB 40h b) број улаза у IV табелу меморијска адреса садржај 21 7 30 29 6 28 27 1000h 5 PER2 26 0000h 25 4 24 23 1002h 3 PER0 22 0000h 21 1008h 2 PER1 20 0000h 19 1005h 1 TRAP 18 0000h 17 1005h 0 PER3 16 0000h c) 100h, 101h, 1008h, 1009h, 100Ah, 1002h, 1003h, 1005h, 1006h, 1007h, 1004h, 100Ch, 102h, 103h, 104h, 1005h, 1006h, 1007h, 106h d) е) 0000h I=1 T=0 0102h 0000h 0001h I=1 T=0 100Ch 0000h 0001h I=0 T=0 1004h 0000h

3 2 1 0 IMR IRR IRQ3 IRQ2 IRQ1 IRQ0 IRQ INTA clirr3 clirr2 clirr1 clirr0 INTA3 INTA2 INTA1 INTA0

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику Архитектура рачунара 05.05.2008. I (20) (К) 1. (5) У оквиру извршавања прекидне рутине неке периферије стиже захтев за прекид од неке друге периферије. а) Навести услове који треба да буду испуњени да би се захтев за прекид прихватио и скочило на прекидну рутину те периферије. б) За сваки од услова навести на који начин и када се мења и да ли се то чини хардверски или софтверски. 2. (5) У процесору са векторисаним механизмом прекида се у оквиру хардверског дела опслуживања захтева за прекид поред осталог генеришу и бројеви улаза у табелу са адресама прекидних рутина за спољашње маскирајуће прекиде који долазе од улазно/излазних уређаја по линијама (1) INTR3, (2) INTR2, (3) INTR1 и (4) INTR0. За селективно маскирање спољашњих маскирајућих прекида који долазе од улазно/излазних уређаја по линијама (1) INTR3, (2) INTR2, (3) INTR1 и (4) INTR0, користе се разреди (1) IMR3, (2) IMR2, (3) IMR1 и (4) IMR0 регистра маске IMR, респективно. Генерисани бројеви улаза су осмо битне целобројне величине без знака. Нацртати и објаснити шему за генерисање бројева улаза за ова четири прекида уколико се адресе прекидних рутина за прекиде (1), (2), (3) и (4) налазе у улазима 4, 5, 6, и 7 табеле са адресама прекидних рутина и уколико прекид (1) има највиши, прекид (2) нижи, прекид (3) још нижи и прекид (4) најнижи приоритет. 3. (5) Посматра се асинхрона магистрала на којој се циклуси читања и уписа тако реализују да је магистрала заузета све време трајања циклуса. а) Нацртати временске облике сигнала које током реализације циклуса читања и уписа размењују газда и слуга. б) Навести које сигнале и по ком редоследу генеришу газда и слуга приликом реализицаје циклуса читања и уписа. 4. (5) Нацртати и објаснити шему дела модула који се користи у арбитрацији са праћењем захтева. Шема треба да укључи делове који подржавају и паралелну и серијски арбитрацију, синхронизацију на сигнал такта магистрале и сигнал заузећа магистрале.

II(20) (К) Адресни простор процесора је величине 8GB, адресибилна јединица је 16-битна реч, а вишеречни бројеви се смештају тако да је на вишој адреси виша реч. Магистрала је синхрона, процесор је једноадресни са раздвојеним У/И адресним простором, а механизам прекида је векторисан. Физичка RAM меморија заузима најнижих 128КB адресног простора. IV (Interrupt Vector) табела почиње од адресе на коју указује регистар IVTP (Interrupt Vector Table Pointer), а регистар IVTP има вредност 8h. Процесор има три улазне линије IRQ0, IRQ1 и IRQ2 за спољне маскирајуће прекиде, при чему је IRQ2 највишег, а IRQ0 најнижег приоритета и једну улазну линију IRQN за спољне немаскирајуће прекиде на које су везане периферије PER0, PER1, PER2 и PERN респективно. Њима треба доделити улазе 2, 3, 4 и 5 у вектор табели, и којима одговарају прекидне рутине на адресама 1005h, 1008h, 1011h и 101Ah, респективно. Улазу 0 који се користи у свим осталим случајевима одговара прекидна рутина на адреси 1000h. Адресе 8-битних регистара у којима се чувају бројеви улаза су AA12h, BB34h, CC56h и DD78h респективно. У PSW-у постоји бит I (Interrupt Enable) који се брише у кораку за обраду прекида, као и одређен број L бита. Не прихвата се прекид истог нивоа приоритета. При прекиду се на стеку чувају PSW и PC тим редом. Стек расте према нижим локацијама. Акумулатор је 16-битни. Инструкције INTE, INTD, RTI и INT не реагују на прекиде. Само маскирајући прекиди мења ниво приоритета текућег програма. Дат је део главног програма на слици 1, прекидне рутине на слици 2. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 1. инструкције стиже захтев за прекид од периферије PER2, у току 5. од периферије PERN, а у току 8. од периферије PER1. На почетку су сви бити PSW-а постављени на 0. Почетни садржај локације 1h је 0. Слика 1 Адреса Наредба 0100h INTE 0101h LOAD 1h 0104h INCA 0105h DECA 0106h STORE 1h 0109h INTD Слика 2 Адреса Наредба 1000h POPA 1001h ADD #3h 1003h PUSHA 1004h RTI 1005h INT #3h 1006h INTE 1007h RTI 1008h INTE 1009h STORE 1h 100Ch INCA 100Dh LOAD 1h 1010h RTI 1011h INTE 1012h LOAD 10000h 1015h INCA 1016h STORE 10000h 1019h RTI 101Аh RTI а) (4) Написати део програма којим се додељују бројеви улаза наведеним периферијама. б) (4) Написати који опсег адреса заузима IV табела и објаснити како је добијен максималан број улаза у IV табелу. в) (4) Написати секвенцу адреса наредби које се редом извршавају, почев од адресе 0100h. г) (4) Приказати садржај свих познатих локација на врху стека након извршавања 6. инструкције. За сачувану вредност PSW дати само вредност бита I и L. Назначити у коме смеру расте стек. д) (4) Која ће се вредност налазити у акумулатору након извршења секвенце под c)? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 2 сата.

Архитектура рачунара, колоквијум 2008. Решење задатка II) а) LOAD #02h OUTB AA12h LOAD #03h OUTB BB34h LOAD #04h OUTB CC56h LOAD #05h OUTB DD78h b) IVTP - IVTP + 2*2 #PER - 1 0000 0008h - 0000 0207h c) 0100h, 0101h, 1011h, 1012h, 1000h, 101Ah, 1001h, 1003h, 1004h, 1015h, 1016h, 1000h, 1001h, 1003h, 1004h, 1019h, 0104h, 1008h, 1009h, 100Ch, 100Dh, 1010h, 0105h, 0106h, 0109h d) I=1 L=00 0000h 0104h I=1 L=11 0000h e) ACC = 1019h

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику Архитектура рачунара Први колоквијум 04.04.2009 1. (5) У процесору са векторисаним механизмом прекида повратак из прекидне рутине се реализује инструкцијом RTI. Објаснити шта се све и по ком редоследу ради у оквиру извршавања ове инструкције водећи рачуна о варијантама реализација инструкције RTI у зависноти од броја програмски доступних регистара у процесору. 2. (5) У процесору са векторисаним механизмом прекида се у оквиру хардверског дела опслуживања захтева за прекид поред осталог генеришу и бројеви улаза у табелу са адресама прекидних рутина за (1) унутрашњи прекид због грешке у коду операције (PRCOD), (2) унутрашњи прекид због грешке у начину адресирања (PRADR), (3) спољашњи немаскирајући прекид (INM) и (4) унутрашњи прекид због задатог режима рада са прекидом после сваке инструкције (PRTRAP). Генерисани бројеви улаза су осмо битне целобројне величине без знака. Нацртати и објаснити шему за генерисање бројева улаза за ова четири прекида уколико се адресе прекидних рутина за прекиде (1), (2), (3) и (4) налазе у улазима 15, 14, 13 и 12 табеле са адресама прекидних рутина и уколико прекида (1) има највиши, прекид (2) нижи, прекид (3) још нижи и прекид (4) најнижи приоритет. 3 (15) Адресни простор процесора је величине 8GB, адресибилна јединица је 16-битна реч, а вишеречни бројеви се смештају тако да је на вишој адреси нижа реч. Процесор је једноадресни са раздвојеним меморијским и У/И адресним простором, механизам прекида је векторисан, IV (Interrupt Vector) табела почиње од адресе на коју указује регистар IVTP (Interrupt Vector Table Pointer), а регистар IVTP има вредност 16h. Процесор има три улазне линије IRQ0, IRQ1 и IRQ2 за спољне маскирајуће прекиде, при чему је IRQ0 највишег, а IRQ2 најнижег приоритета и једну улазну линију IRQN за спољне не маскирајуће прекиде на које су везане периферије PER0, PER1, PER2 и PERN респективно. Њима треба фиксно доделити улазе 1, 2, 3 и 6 у вектор табели, и којима одговарају прекидне рутине на адресама 1009h, 100Fh, 1012h и 1000h, респективно. Улаз 4 који одговара прекидној рутини на адреси 101Bh се користи у свим осталим случајевима. У PSW-у постоји бит I (Interrupt Enable) који се брише у кораку за обраду прекида, као и одређен број L бита. Не прихвата се прекид истог нивоа приоритета. При прекиду се на стеку чувају PSW и PC тим редом. Стек расте према вишим локацијама. Акумулатор је 16-битни. Инструкције INTE, INTD, RTI и INT не реагују на прекиде. Инструкција INT не мења ниво приоритета текућег програма. Дат је део главног програма на слици 1, прекидне рутине на слици 2. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 2. инструкције стиже захтев за прекид од периферије PER0, у току 4. од периферије PERN, а у току 7. од периферије PER2. На почетку су сви бити PSW-а постављени на 0. Почетни садржај локације 1h је 10h. Слика 1 Адреса Наредба 0100h LOAD #1h 0103h DECA 0104h INTE 0105h INCA 0106h STORE 1h 0109h INTD Слика 2 Адреса Наредба 1000h LOAD 1h 1003h INCA 1004h INTE 1005h STORE 1h 1008h RTI 1009h POPA 100Ah STORE 1h 100Dh PUSHA 100Eh RTI 100Fh INTD 1010h INT #2 1011h RTI 1012h LOAD 1h 1015h AND #1h 1018h STORE 1h 101Ah RTI 101Bh POPA 101Ch ADD #2 101Fh PUSHA 1020h RTI а) (3) Нацртати изглед првих 8 улаза у вектор табели, означити адресе релевантних локација и уписати садржаје у њих. б) (3) Написати део кода којим се периферији PERN додељује иста прекидна рутина као и периферији PER0. в) (3) Написати секвенцу адреса наредби које се редом извршавају, почев од адресе 0100h. г) (3) Приказати садржај свих познатих локација на врху стека након извршавања 10. инструкције. За сачувану вредност PSW дати само вредност бита I и L. Назначити у коме смеру расте стек. д) (3) Која ће се вредност налазити на локацији 1h након извршења секвенце под в)? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 1,5 сат.

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику Архитектура рачунара Први колоквијум - Надокнада 16.05.2009. I (10) 1. (5) У оквиру опслуживања прекида на стеку се чувају неки регистри процесора. а) Навести који се регистри чувају и зашто. б) Навести који се регистри обавезно чувају хардверски а који могу и хардверски софтверски. За оне који могу да се чувају и хардверски и софтверски навести од чега зависи како ће се чувати. 2. (5) У процесору са векторисаним механизмом прекида се у оквиру хардверског дела опслуживања захтева за прекид поред осталог генеришу и бројеви улаза у табелу са адресама прекидних рутина за (1) унутрашњи прекид због грешке у коду операције (PRCOD), (2) унутрашњи прекид због грешке у начину адресирања (PRADR), (3) спољашњи немаскирајући прекид (INM) и (4) унутрашњи прекид због задатог режима рада са прекидом после сваке инструкције (PRTRAP). Генерисани бројеви улаза су осмо битне целобројне величине без знака. Нацртати и објаснити шему за генерисање бројева улаза за ова четири прекида уколико се адресе прекидних рутина за прекиде (1), (2), (3) и (4) налазе у улазима 19, 18, 17 и 16 табеле са адресама прекидних рутина и уколико прекида (1) има највиши, прекид (2) нижи, прекид (3) још нижи и прекид (4) најнижи приоритет. II (15) Адресни простор процесора је величине 16 MB, адресибилна јединица је 16-битна реч, а вишеречни бројеви се смештају тако да је на нижој адреси нижа реч. Процесор је једноадресни, а механизам прекида је векторисан. Интерапт вектор (IV) табела има 8 фиксних улаза и почиње од адрессе 32h. Процесор има две улазне линије IRQM0 и IRQM1 за спољне маскирајуће прекиде, при чему је IRQM1 вишег приоритета, и једну улазну линију IRQN за спољне немаскирајуће прекиде. Њима су придружени улази 1, 2 и 5 у IV табелу, респективно. Улаз 4 се користи у случају прекида после сваке инструкције (TRAP), а улаз 0 у случају унутрашњих прекида. Прекидне рутине започињу на следећим адресама: 1006h, 1009h, 1013h, 1000h, 101Ch респективно. У PSW-у постоје бити I (Interrupt Enable) и T (Trap) који се бришу у микропрограму за обраду прекида, као и одређен број L бита. При прекиду се на стеку чувају PSW и PC тим редом. Стек расте према нижим локацијама. Акумулатор је 32-битни. Инструкције RTI, INTE, INTD, TRPE и TRPD не реагују на прекиде. Не прихвата се прекид истог нивоа приоритета. Не постоји регистар маске IMR. Дат је део главног програма на слици 1 и прекидне рутине на слици 2. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 4. инструкције стиже захтев за прекид по линији IRQM0, у току 6. по линији IRQN, а у току 8. по линији IRQМ1. На почетку су сви бити PSW-а постављени на 0. Почетни садржај локације 1h је 10h.

Слика 1 Адреса Наредба 0100h TRPE 0101h INTE 0102h LOAD #1h 0105h INCA 0106h STORE 1h 0109h INTD Слика 2 Адреса Наредба 1000h POPA 1001h STORE 1h 1004h PUSHA 1005h RTI 1006h INTD 1007h INT #2 1008h RTI 1009h LOAD 1h 100Ch XOR #1h 100Fh STORE 1h 1012h RTI 1013h LOAD 1h 1016h INCA 1017h INTE 1018h STORE 1h 101Bh RTI 101Ch POPA 101Dh ADD #3 1020h PUSHA 1021h RTI а) Нацртати изглед првих 8 улаза у вектор табели, означити адресе релевантних локација и уписати садржаје у њих. б) Написати секвенцу адреса наредби које се редом извршавају, почев од адресе 0100h. в) Приказати садржај свих познатих локација на врху стека након извршавања 11. инструкције. За сачувану вредност PSW дати само вредност бита I, T и L. Назначити у коме смеру расте стек. г) Која ће се вредност налазити на локацији 1h након извршења секвенце под б)? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 1,5 сат.

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику Архитектура рачунара Први колоквијум 28.03.2010 1. (5) У оквиру извршавања прекидне рутине неке периферије стиже захтев за прекид од неке друге периферије. а) Навести услове који треба да буду испуњени да би се захтев за прекид прихватио и скочило на прекидну рутину те периферије. б) За сваки од услова навести на који начин и када се мења и да ли се то чини хардверски или софтверки. 2. (5) У процесору са векторисаним механизмом прекида се у оквиру хардверског дела опслуживања захтева за прекид поред осталог генеришу и бројеви улаза у табелу са адресама прекидних рутина за спољашње маскирајуће прекиде који долазе од улазно/излазних уређаја по линијама (1) INTR3, (2) INTR2, (3) INTR1 и (4) INTR0. За селективно маскирање спољашњих маскирајућих прекида који долазе од улазно/излазних уређаја по линијама (1) INTR3, (2) INTR2, (3) INTR1 и (4) INTR0, користе се разреди (1) IMR3, (2) IMR2, (3) IMR1 и (4) IMR0 регистра маске IMR, респективно. Генерисани бројеви улаза су осмо битне целобројне величине без знака. Нацртати и објаснити шему за генерисање бројева улаза за ова четири прекида уколико се адресе прекидних рутина за прекиде (1), (2), (3) и (4) налазе у улазима 11, 10, 9 и 8 табеле са адресама прекидних рутина и уколико прекид (1) има највиши, прекид (2) нижи, прекид (3) још нижи и прекид (4) најнижи приоритет. 3. (15) Адресни простор процесора је величине 8GB, адресибилна јединица је 16-битна реч, а вишеречни бројеви се смештају тако да је на вишој адреси виша реч. Процесор је једноадресни са раздвојеним меморијским и У/И адресним простором, механизам прекида је векторисан, IV (Interrupt Vector) табела почиње од адресе на коју указује регистар IVTP (Interrupt Vector Table Pointer), а регистар IVTP има вредност 2h. Процесор има три улазне линије IRQ0, IRQ1 и IRQ2 за спољне маскирајуће прекиде, при чему је IRQ0 највишег, а IRQ2 најнижег приоритета и једну улазну линију IRQN за спољне не маскирајуће прекиде на које су везане периферије PER0, PER1, PER2 и PERN респективно. Њима треба доделити улазе 2, 4, 1 и 5 у вектор табели, и којима одговарају прекидне рутине на адресама 1000h, 1011h, 1016h и 1006h, респективно. Адресе 8-битних регистара у којима се чувају бројеви улаза су 27h, 32h, F1h и C0h, респективно. У PSW-у постоје бити I (Interrupt Enable) и T (Trap) који се бришу у кораку за обраду прекида, као и одређен број L бита. У кораку за обраду прекида на стек се стављају PSW и PC тим редом. Стек расте према нижим локацијама. Акумулатор је 16 битни. Инструкције INT, INTE, INTD, TRPE и TRPD не реагују на прекиде. Инструкција RTI реагује на прекиде. Не прихвата се прекид истог нивоа приоритета. Не постоји регистар маске IMR. Дат је део главног програма на слици 1 и прекидне рутине на слици 2. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 1. инструкције стиже захтев за прекид по линији IRQ1, у току 5. по линији IRQN, а у току 7. по линији IRQ0. На почетку су сви бити PSW-а постављени на 0. Почетни садржај акумулатора је 0h, а меморијске локације 1h је 12h. Слика 1 Адреса Наредба 0100h INCA 0101h LOAD 1h 0104h INT #1h 0105h INTE 0106h INCA 0107h OR #1h 0109h STORE 1h 010Ch INTD Слика 2 Адреса Наредба 1000h POPA 1001h STORE 1h 1004h PUSHA 1005h RTI 1006h PUSHA 1007h LOAD 1h 100Ah ADD #3h 100Ch STORE 1h 100Fh POPA 1010h RTI 1011h INCA 1012h STORE 1h 1015h RTI 1016h LOAD 1h 1019h INCA 101Ah INTE 101Bh RTI а) (3) Нацртати изглед првих 8 улаза у вектор табели, означити адресе релевантних локација и уписати садржаје у њих. б) (3) Написати део кода којим се периферијама додељују бројеви улаза. в) (5) Написати секвенцу адреса наредби које се редом извршавају, почев од адресе 0100h. Резултат дати табеларно тако да табела садржи редни број интрукције, адресу на којој започиње инструкција, саму инструкцију, садржај акумулатора након извршења инструкције, вредности свих познатих бита унутар програмске статусне речи, и вредности на линијама IRQ. г) (2) Приказати садржај свих познатих локација на врху стека након извршавања 8. инструкције. д) (2) Која ће се вредност налазити на локацији 1h након извршења секвенце под в)? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 1,5 сат.

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику Архитектура рачунара Први колоквијум - надокнада 15.05.2010 1. (5) У процесору са векторисаним механизмом прекида повратак из прекидне рутине се реализује инструкцијом RTI. Објаснити шта се све и по ком редоследу ради у оквиру извршавања ове инструкције водећи рачуна о варијантама реализација инструкције RTI у зависноти од броја програмски доступних регистара у процесору. 2. (5) У процесору са векторисаним механизмом прекида оквиру хардверског дела опслуживања овог захтева за прекид се у зависности од врсте прекида на различите начине долази до броја улаза у табелу са адресама прекидних рутина. Објаснити како се долази до броја улаза у табелу са адресама прекидних рутина за следеће три врсте прекида: а) унутрашњи прекид због инструкције прекида, б) унутрашњи прекид због грешке у коду операције и в) спољашњи прекид од улазно/излазног уређаја за случај када улази нису фиксни. II (15) Адресни простор процесора је величине 256MB, адресибилна јединица је 16-битна реч, а вишеречни бројеви се смештају тако да је на вишој адреси нижа реч. Процесор је једноадресни са раздвојеним меморијским и У/И адресним простором, механизам прекида је векторисан, IV (Interrupt Vector) табела почиње од адресе на коју указује регистар IVTP (Interrupt Vector Table Pointer), а регистар IVTP има вредност 20h. Процесор има две улазне линије IRQ0 и IRQ1 за спољне маскирајуће прекиде, при чему је IRQ0 вишег, а IRQ1 нижег приоритета. На линију IRQ0 су повезане периферије PER0 и PER1, при чему је PER0 вишег приоритета, а на линију IRQ1 су повезане периферије PER2 и PER3, при чему је PER2 вишег приоритета. Овим периферијама треба доделити улазе 1, 3, 4 и 6 у вектор табели, и којима одговарају прекидне рутине на адресама 1000h, 101Bh, 100Ah и 1014h, респективно. Адресе 8-битних регистара у којима се чувају бројеви улаза су 12h, ACh, 98h и FF10h респективно. Приоритирање прекида периферија које су везане на исту линију се обавља користећи Daisy chainig технику. У PSW-у постоји бит I (Interrupt Enable) који се брише у кораку за обраду прекида, као и један L бит. Прихвата се прекид истог нивоа приоритета. При прекиду се на стеку хардверски чувају PC, PSW и ACC, тим редом. Стек расте према нижим локацијама. Акумулатор је 16-битни. Инструкције INTE, INTD, RTI и INT не реагују на прекиде. Инструкција INT не мења ниво приоритета текућег програма. Дат је део главног програма на слици 1, прекидне рутине на слици 2. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 3. инструкције стиже захтев за прекид од периферије PER2, у току 4. од периферије PER1, а у току 7. од периферије PER0. На почетку су сви бити PSW-а постављени на 0. Почетни садржај локације 1h је 10h. Слика 1 Адреса Наредба 0100h INTE 0101h LOAD 1h 0103h DECA 0104h INCA 0106h STORE 1h 0107h INTD Слика 2 Адреса Наредба 1000h LOAD 1h 1003h OR #10h 1006h STORE 1h 1009h RTI 100Ah LOAD 1h 100Dh INCA 100Eh INTE 100Fh STORE 1h 1013h RTI 1014h POPA 1015h ADD #2h 1018h STORE 1h 1019h PUSHA 101Ah RTI 101Bh INT #6h 101Ch RTI а) (2) Написати део програма којим се додељују бројеви улаза наведеним периферијама. б) (3) Нацртати изглед првих 8 улаза у вектор табели, означити адресе релевантних локација и уписати садржаје у њих. в) (5) Написати секвенцу адреса инструкција које се редом извршавају, почев од адресе 0100h. Резултат дати табеларно тако да табела садржи редни број интрукције, адресу на којој започиње инструкција, саму инструкцију, садржај акумулатора након извршења инструкције, вредности свих познатих бита унутар програмске статусне речи, и вредности на линијама IRQ. г) (2) Приказати садржај свих познатих локација на врху стека након извршавања 11. инструкције. За сачувану вредност PSW дати само вредност бита I и L. Назначити у коме смеру расте стек. д) (3) Написати део кода који је потребно ставити на почетак прекидне рутине периферије PER1 како би се обезбедило да ову прекидну рутину може да прекине прекид периферије PER0, али не и поновни прекид периферије PER1? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 1,5 сат.

Архитектура рачунара, Први колоквијум - Надокнада 2010. Решење задатка а) LOAD #01h OUTB 12h LOAD #03h OUTB ACh LOAD #04h OUTB 98h LOAD #06h OUTB FF10h ;napuni akumulator konstantom 1 broj ulaza za PER0 ;prebaci bajt akumulatora u registar periferije PER0 ;napuni akumulator konstantom 3 broj ulaza za PER1 ;prebaci bajt akumulatora u registar periferije PER1 ;napuni akumulator konstantom 4 broj ulaza za PER2 ;prebaci bajt akumulatora u registar periferije PER2 ;napuni akumulator konstantom 6 broj ulaza za PER3 ;prebaci bajt akumulatora u registar periferije PER3 б) број улаза у IV табелу 7 6 5 4 3 2 1 0 садржај меморијска адреса 2F h 2E h 1014 2D h 0000 2C h 2B h 2A h 100A 29 h 0000 28 h 101B 27 h 0000 26 h 25 h 24 h 1000 23 h 0000 22 h 21 h 20 h в) Рб Адреса Инструкција ACC Стек I Т L IRQ0 PER0 PER1 IRQ1 PER2 PER3 Коментар 0 - -? - 0 0 0 - - - - - - 1 0100 INTE? - 1 0 0 - - - - - - 2 0101 LOAD 1h 10-1 0 0 - - - - - - 3 0103 DECA F - 1 0 0 - - - 1 1 - F 1 0 0 0 - - - - - - 4 100A LOAD 1h 10 1 0 0 0 1-1 - - - 5 100D INCA 11 1 0 0 0 1-1 - - - 6 100E INTE 11 1 1 0 0 1 1 1 - - - 7 100F STORE 1h 11 1 1 0 0 1-1 - - - 2 0 0 1 1-1 - - - 8 1000 LOAD 1h 11 2 0 0 1 1-1 - - - 9 1003 OR #10h 10 2 0 0 1 1-1 - - - 10 1006 STORE 1h 10 2 0 0 1 1-1 - - - 11 1009 RTI F 1 1 0 0 1-1 - - - 12 1013 RTI F - 1 0 0 1-1 - - - 13 0104 INCA 10-1 0 0 1-1 - - - 3 0 0 1 - - - - - -

14 101B INT #6 10 4 0 0 1 - - - - - - 15 1014 POPA 10 5 0 0 1 - - - - - - 16 1015 ADD #2 12 5 0 0 1 - - - - - - 17 1018 STORE 1h 12 5 0 0 1 - - - - - - 18 1019 PUSHA 12 6 0 0 1 - - - - - - 19 101A RTI 12 3 0 0 1 - - - - - - 20 101C RTI 10-1 0 0 - - - - - - 21 0106 STORE 1h 10-1 0 0 - - - - - - 22 0107 INTD 10-0 0 0 - - - - - - 1 3 5 0000 0104 0106 0106 I=0, T=0, L=1 0000 0000 0000 0012 I=1, T=0, L=0 I=1, T=0, L=0 I=1, T=0, L=0 000F 0010 0010 2 4 1016 0104 0106 0000 0000 0000 I=0, T=0, L=1 I=1, T=0, L=0 I=1, T=0, L=0 6 000F 0010 0106 1013 1016 0000 0000 0000 I=1, T=0, L=0 I=1, T=0, L=0 I=0, T=0, L=1 0010 0011 0010 1016 г) XX више адресе 0106h 0000h PSW(I=1 T=0, L=0) 0010h 1016h 0000h PSW(I=0, T=0, L=1) SP ниже адресе Изглед стека после завршетка комплетне инструкције 15. д) Прекидна рутина за периферију 2 је дата на следећој слици: 101Bh INT #6h 101Ch RTI Пошто се ова прекидна рутина састоји само од инструкција INT и RTI које не реагују на прекид, не постоји начин да се ове инструкције прекину.

Архитектура рачунара, Први колоквијум 2010. Решење задатка 3) а) број улаза у IV табелу 7 6 5 4 3 2 1 0 садржај меморијска адреса 11 h 10 h F h E h 0000 D h 1006 C h 0000 B h 1011 A h 9 h 8 h 0000 7 h 1000 6 h 0000 5 h 1016 4 h 3 h 2 h б) LOAD #02h OUTB 27h LOAD #04h OUTB 32h LOAD #01h OUTB F1h LOAD #05h OUTB C0h в) Рб Адреса Инструкција ACC Стек I Т L IRQN IRQ0 IRQ1 IRQ2 Коментар 0 - - 0-0 0 00 - - - - 1 100 INCA 1-0 0 00 - - 1-2 101 LOAD 1h 12-0 0 00 - - 1-3 104 INT #1h 12 1 0 0 00 - - 1-4 1016 LOAD 1h 12 1 0 0 00 - - 1-5 1019 INCA 13 1 0 0 00 1-1 - 13 2 0 0 00 - - 1-6 1006 PUSHA 13 3 0 0 00 - - 1-7 1007 LOAD 1h 12 3 0 0 00-1 1-8 100A ADD #3h 15 3 0 0 00-1 1-9 100C STORE 1h 15 3 0 0 00-1 1-10 100F POPA 13 2 0 0 00-1 1-11 1010 RTI 13 1 0 0 00-1 1-12 101A INTE 13 1 1 0 00-1 1-13 101B RTI 13-0 0 00-1 1-14 105 INTE 13-1 0 00-1 1 -

15 106 INCA 14-1 0 00-1 1-14 4 0 0 11 - - 1-16 1000 POPA 107 5 0 0 11 - - 1-17 1001 STORE 1h 107 5 0 0 11 - - 1-18 1004 PUSHA 107 4 0 0 11 - - 1-19 1005 RTI 107-1 0 00 - - 1-107 4 0 0 10 - - - - 20 1011 INCA 108 4 0 0 10 - - - - 21 1012 STORE 1h 108 4 0 0 10 - - - - 22 1015 RTI 108-1 0 00 - - - 23 107 OR #1h 109-1 0 00 - - - - 24 109 STORE 1h 109-1 0 00 - - - - 25 10C INTD 109-0 0 00 - - - - 1 3 4 I=0, T=0, L=00 I=0, T=0, L=00 I=1, T=0, L=00 0000 0000 0000 0105 0105 0107 2 I=0, T=0, L=00 5 I=0, T=0, L=00 0000 I=1, T=0, L=00 0000 101A 0000 0105 0013 I=0, T=0, L=00 0000 101A г) XX више адресе PSW(I=0, T=0, L=00) 0000h 0105h PSW(I=0, T=0, L=00) 0000h 101Ah 0013h SP ниже адресе Изглед стека после завршетка комплетне инструкције 8. д) Након завршене секвенце на адреси 1h ће се наћи вредност 109h.

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику Архитектура рачунара Први колоквијум 20.03.2011. 1. (5) У оквиру опслуживања прекида на стеку се чувају неки регистри процесора. а) Навести који се регистри чувају и зашто. б) Навести који се регистри обавезно чувају хардверски а који могу и хардверски софтверски. За оне који могу да се чувају и хардверски и софтверски навести од чега зависи како ће се чувати. 2. (5) У процесору са векторисаним механизмом прекида се у оквиру хардверског дела опслуживања захтева за прекид поред осталог генеришу и бројеви улаза у табелу са адресама прекидних рутина за спољашње маскирајуће прекиде који долазе од улазно/излазних уређаја по линијама (1) INTR3, (2) INTR2, (3) INTR1 и (4) INTR0. За селективно маскирање спољашњих маскирајућих прекида који долазе од улазно/излазних уређаја по линијама (1) INTR3, (2) INTR2, (3) INTR1 и (4) INTR0, користе се разреди (1) IMR3, (2) IMR2, (3) IMR1 и (4) IMR0 регистра маске IMR, респективно. Генерисани бројеви улаза су осмо битне целобројне величине без знака. Нацртати и објаснити шему за генерисање бројева улаза за ова четири прекида уколико се адресе прекидних рутина за прекиде (1), (2), (3) и (4) налазе у улазима 19, 18, 17 и 16 табеле са адресама прекидних рутина и уколико прекид (1) има највиши, прекид (2) нижи, прекид (3) још нижи и прекид (4) најнижи приоритет. 3. (15) Адресни простор процесора је величине 8GB, адресибилна јединица је 16-битна реч, а вишеречни бројеви и адресе се смештају у меморију тако да се на вишој адреси смешта виша реч. Процесор је једноадресни са раздвојеним меморијским и У/И адресним простором, механизам прекида је векторисан, IV (Interrupt Vector) табела почиње од адресе на коју указује регистар IVTP (Interrupt Vector Table Pointer), а регистар IVTP има вредност 8h. Процесор има три улазне линије IRQ0, IRQ1 и IRQ2 за спољне маскирајуће прекиде, при чему је IRQ2 највишег, а IRQ0 најнижег приоритета и једну улазну линију IRQN за спољне не маскирајуће прекиде, на које су везане периферије PER0, PER1, PER2 и PERN респективно. Њима треба доделити улазе 1, 2, 4 и 5 у вектор табели, и којима одговарају прекидне рутине на адресама 1007h, 1000h, 1009h и 100Eh, респективно. Адресе 8-битних регистара у којима се чувају бројеви улаза су 10h, 20h, 30h и 40h, респективно. У PSW-у постоје бити I (Interrupt Enable) и T (Trap) који се бришу у кораку за обраду прекида, као и два L 1..0 бита. У кораку за обраду прекида на стек се хардверски стављају ACC, PSW и PC, тим редом. Стек расте према нижим локацијама. Акумулатор је 16 битни. Инструкције INTE, INTD, TRPE, TRPD и RTI не реагују на прекиде. Не прихвата се прекид истог нивоа приоритета. Не постоји регистар маске IMR. Дат је део главног програма на слици 1 и прекидне рутине на слици 2. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 2. инструкције стиже захтев за прекид по линији IRQ1, у току 4. по линији IRQ0, у току 6. по линији IRQ2, а у току 7. по линији IRQN. На почетку су сви бити PSW-а постављени на 0. Почетни садржај акумулатора је 0h, а меморијске локације 1h је 100Fh. Слика 1 Адреса Наредба 0100h INTE 0101h LOAD 1h 0104h ADD #2h 0106h STORE 1h 0109h INTD Слика 2 Адреса Наредба 1000h INTE 1001h POPA 1002h STORE 1h 1005h PUSHA 1006h RTI Адреса Наредба 1007h INCA 1008h RTI 1009h INCA 100Ah STORE 1h 100Dh RTI Адреса Наредба 100Eh LOAD 1h 1011h DECA 1012h STORE 1h 1015h RTI а) (3) Написати део програма којим се додељују бројеви улаза наведеним периферијама. б) (2) Нацртати изглед првих 8 улаза у вектор табели, означити адресе релевантних локација и уписати садржаје у њих. в) (2) Написати део програма којим се иницијализује улаз 5 у вектор табели. г) (7) Написати секвенцу адреса наредби које се редом извршавају почев од адресе 0100h. Резултат дати табеларно тако да табела садржи редни број интрукције, адресу на којој започиње инструкција, саму инструкцију, садржај акумулатора након извршења инструкције, вредности свих познатих бита унутар програмске статусне речи, вредности на линијама IRQ, и изглед стека. Резултат дати након фазе извршења инструкције и уколико је у фази опслуживања прекида прихваћен прекид и након фазе опслуживања прекида. д) (1) Која ће се вредност налазити на локацији 1h након извршења секвенце под г)? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 1,5 сат.

Електротехнички факултет у Београду Катедра за рачунарску технику и информатику Архитектура рачунара Први колоквијум 08.05.2011. 1. (5) У процесору са векторисаним механизмом прекида повратак из прекидне рутине се реализује инструкцијом RTI. Објаснити шта се све и по ком редоследу ради у оквиру извршавања ове инструкције водећи рачуна о варијантама реализација инструкције RTI у зависноти од броја програмски доступних регистара у процесору. 2. (5) У процесору са векторисаним механизмом прекида оквиру хардверског дела опслуживања овог захтева за прекид се у зависности од врсте прекида на различите начине долази до броја улаза у табелу са адресама прекидних рутина. Објаснити како се долази до броја улаза у табелу са адресама прекидних рутина за следеће три врсте прекида: а) унутрашњи прекид због инструкције прекида, б) унутрашњи прекид због грешке у коду операције и в) спољашњи прекид од улазно/излазног уређаја за случај када улази нису фиксни. 3. (15) Адресни простор процесора је величине 8GB, адресибилна јединица је 16 битна реч, а вишеречни бројеви се смештају тако да је на вишој адреси нижа реч. Процесор је једноадресни са раздвојеним меморијским и У/И адресним простором, механизам прекида је векторисан, IV (Interrupt Vector) табела почиње од адресе на коју указује регистар IVTP (Interrupt Vector Table Pointer), а регистар IVTP има вредност 32. Процесор има две улазне линије, IRQ0 и IRQ1, за спољне маскирајуће прекиде, при чему је IRQ0 вишег, а IRQ1 нижег приоритета, као и две излазне линије INTA0 и INTA1 по којима шаље сигнале дозволе прекида улазно/излазним уређајима. На линију IRQ0 су повезане периферије PER0 и PER1, при чему је PER0 вишег а PER1 нижег приоритета, а на линију IRQ1 су повезане периферије PER2 и PER3, при чему је PER2 вишег а PER3 нижег приоритета. Овим периферијама треба доделити улазе 1, 3, 4 и 6 у вектор табели, и којима одговарају прекидне рутине на адресама 1007h, 1000h, 1009h и 100Eh, респективно. Адресе 8-битних регистара у којима се чувају бројеви улаза су 12h, ACh, 98h и FF10h респективно. Приоритирање периферија које су везане на исту линију се обавља користећи Daisy chain технику. У PSW-у постоје бити I (Interrupt Enable) и T (Trap) који се бришу у кораку за обраду прекида, као и два L 1..0 бита. У кораку за обраду прекида на стек се хардверски стављају ACC, PSW и PC, тим редом. Стек расте према нижим локацијама. Акумулатор је 16 битни. Инструкције INT, INTE, INTD, TRPE, TRPD и RTI не реагују на спољашње прекиде. Не прихвата се прекид истог нивоа приоритета. Не постоји регистар маске IMR. Инструкција INT не мења ниво приоритета текућег програма. Дат је део главног програма на слици 1, прекидне рутине на слици 2. Инструкција на адреси 0100h означена је као 1. (прва) по редоследу извршавања, а свака следећа инструкција која се извршава означена је следећим редним бројем. У току извршавања 2. инструкције стиже захтев за прекид од периферије PER2, у току 4. од периферије PER1, а у току 7. од периферије PER0. На почетку су сви бити PSW-а постављени на 0. Почетни садржај локације 1h је 10h, а акумулатора је 0. Слика 1 Адреса Наредба 0100h INTE 0101h LOAD 1h 0104h ADD #2h 0106h STORE 1h 0109h INTD Слика 2 Адреса Наредба 1000h INTE 1001h POPA 1002h STORE 1h 1005h PUSHA 1006h RTI Адреса Наредба 1007h INT #3 1008h RTI 1009h INCA 100Ah STORE 1h 100Dh RTI Адреса Наредба 100Eh LOAD 1h 1011h DECA 1012h STORE 1h 1015h RTI а) (3) Написати део програма којим се додељују бројеви улаза наведеним периферијама. б) (2) Нацртати изглед првих 8 улаза у вектор табели, означити адресе релевантних локација и уписати садржаје у њих. в) (2) Написати део програма којим се иницијализује улаз 6 у вектор табели. г) (7) Написати секвенцу адреса наредби које се редом извршавају почев од адресе 0100h. Резултат дати табеларно тако да табела садржи редни број интрукције, адресу на којој започиње инструкција, саму инструкцију, садржај акумулатора након извршења инструкције, вредности свих познатих бита унутар програмске статусне речи, вредности на линијама IRQ, и изглед стека. Резултат дати након фазе извршења инструкције, a уколико је у фази опслуживања прекида прихваћен прекид и након фазе опслуживања прекида. д) (1) Која ће се вредност налазити на локацији 1h након извршења секвенце под г)? Напомене: На колоквијуму нису дозвољена никаква помоћна средства, ни калкулатори ни литература. Колоквијум траје 1,5 сат.

Архитектура рачунара, Надокнада првог колоквијума 2011. Решење задатка 3) а) LOAD #01h OUTB 12h LOAD #03h OUTB ACh LOAD #4h OUTB 98h LOAD #06h OUTB FF10h б) број улаза у IV табелу 7 6 5 4 3 2 1 0 садржај меморијска адреса 47 46 100E 45 0000 44 43 42 1009 41 0000 40 1000 39 0000 38 37 36 1007 35 0000 34 33 32 в) LOAD #100Eh STORE 45 LOAD #0h STORE 44 г) Рб Адреса Инструкција ACC Стек I Т L IRQ0 IRQ1 PER0 PER1 PER2 PER3 0 - - 0-0 0 00 - - - - - - 1 0100 INTE 0-1 0 00 - - - - - - 2 0101 LOAD 1h 10-1 0 00-1 - - 1-10 1 0 0 10 - - - - - - 3 1009 INCA 11 1 0 0 10 - - - - - - 4 100A STORE 1h 11 1 0 0 10 1 - - 1 - - 5 100D RTI 10-1 0 00 1 - - 1 - - 6 0104 ADD #2h 12-1 0 00 1 - - 1 - - 12 2 0 0 11 - - - - - - 7 1000 INTE 12 2 1 0 11 1-1 - - - 8 1001 POPA 0 3 1 0 11 1-1 - - -