Архитектура рачунара/К Јул 2021

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
Овај рок није решен. Помозите SI Wiki тако што ћете га решити.

1. задатак

Поставка

(7) У регистру PSW постоји неколико бита који се односе на прекиде. У неке од датих бита се може постављати вредност 1, могу се брисати, и може се уписивати вредност.

  1. Назначити све бите регистра PSW који се односе на прекиде и објаснити чему који бит намењен. Назначити на основу чега се одређује број појединих бита.
  2. За сваки од ових бита назначити у којим се ситуацијама њихова вредност мења (поставља, брише, уписује). Одговор дати табеларно.
Бити регистра PSW Мењање (постављање, брисање, уписивање) Ситуација у којој се мења

Решење

2. задатак

Поставка

(8) Адресирање регистара контролера улазно/излазних уређаја може да се реализује на два начина, па у зависности од тога како је то реализовано постоје (1) системи код којих је улазно/излазни адресни простор меморијски пресликан и (2) системи код којих су улазно/излазни и меморијски адресни простори раздвојени.

  1. Објаснити које се инструкције користе за упис и читање регистара контролера улазно/излазних уређаја у случајевима (1) и (2).
  2. Објаснити како у случајевима (1) и (2) контролери меморије и улазно/излазних уређаја утврђују ко од њих треба као слуга да реализују[sic] циклус на магистрали инициран од стране процесора као газде.

Решење

3. задатак

Поставка

(25) Адресна магистрала процесора као и магистрала података је 16-битна. Садржај дела оперативне меморије је приказан на слици:

Адреса 0000h 0001h 0002h 0003h 0004h 0005h 0006h 0007h 0008h 0009h 000Ah
Садржај 02h 10h 00h 10h 10h 11h 10h F2h 0Eh FFh 00h
Адреса 1000h 1001h 1002h 1003h 1004h 1005h 1006h 1007h 1008h 1009h 100Ah
Садржај 1Fh 0Fh 0Eh 25h 08h 00h F0h 02h 11h 07h 00h
Адреса 100Bh 100Ch 100Dh 100Eh 100Fh 1010h 1011h 1012h 1013h 1014h 1015h
Садржај FFh FFh 00h FFh F8h F3h FDh F4h 09h F0h F4h

Процесор поседује 16-битне регистре PC (програмски бројач), SP (показивач на прву слободну локацију стека који расте према вишим адресама), PSW (програмска статусна реч) и регистар ACC (акумулатор). Претпоставити да је пре почетка извршавања главног програма PC = 1001h, ACC = FFFFh, SP = E000h, IVTP=1h, а PSW = 5050h. Процесор из меморије дохвата инструкције бајт по бајт. Оперативна меморија је сачињена од два модула (M0 и M1) исте величине, а ширина меморијске речи је 8 бита. Један меморијски модул (M0) је повезан на линије D7..0, а други меморијски модул (M1) на линије D15..8 магистрале података. Модуле M0 садржи марне, а модул M1 непарне адресе. Адресирање је на нивоу података дужине 8 и 16 бита. Подаци и адресе дужине 16 бита се у меморију смештају тако да се на нижу локацију смешта нижи бајт. Приступ (упис/читање) до једног бајта податка траје један циклус на магистрали. Приступ (упис/читање) до два бајта податка почев од меморијске локације са парном адресом траје један циклус на магистрали, а почев од непарне адресе траје две циклуса на магистрали. Фаза читања инструкције започиње увек читањем једног бајта - прог бајта инструкције. На основу првог бајта инструкције, процесор зна колика је дужина инструкције и може да оптимизује број циклуса на магистрали, тако да у наставку довлачења инструкције може, али не мора, да чита инструкцију бајт по бајт.

  1. Навести секвенцу садржаја на адресној магистрали, магистрали података и контролној магистрали за сваки циклус на магистрали при извршавању главног програма и прекидне рутине. Приликом скока у прекидну рутину на стеку се чувају PSW и PC, тим редоследом. Инструкције које оперишу са осмобитним подацима акумулатора користе нижих осам бита акумулатора, док се виших осам битова не мењају.
    1001h || ANDB || #0Eh || ; neposredno adresiranje
    1003h || STOREW || 0008h || ; memorijsko direktno adresiranje
    1006h || INT  ||  #2h || ; softverski prekid
    1008h || STORES || 0007h || ; memorijsko direktno adresiranje
    100Bh || HALT  ||     || ; zaustavljanje procesora
    100Ch || ...       
    ...
    1010h || NOT    ||    || ; bezadresno adresiranje
    1011h || INC    ||    || ; bezadresno adresiranje
    1012h || RTI    ||    || ; povratak iz potprograma
    ...
    
    Решење представити у табели чије заглавље изгледа као на слици: (Табела 3)
    Рб представља редни број циклуса на магистрали, A15..0 и D15..0 садржаје адресних линија и линија података у датом циклусу. RD, WR и W (означава да се приступа по два бајта податка почев од парне адресе) су вредности управљачких сигнала на магистрали. PC представља садржај програмског бројача, IR садржај инструкцијског регистра, TMP садржај прихватног регистра операнда или адресе операнда, ACC садржај акумулатора и SP садржај показивача на врх стека. О вредности регистра PSW не треба водити евиденцију (сматрати да се не мења). У коментару навести у којој од фаза се реализује дати циклус: дохватања инструкције (IF), декодовања инструкције (ID), извршавања операције (EX) или обрада прекида (IS).
  2. Детаљно нацртати како би се повезали модули M0 и M1 на задату магистралу. Повезивање процесора на магистралу није потребно цртати. Означити све ширине сигнала.
  3. Колико је релативно убрзање извршавања дате секвенце инструкција под а) на задатој архитектури магистрале и процесора (архитектура А), у односу да магистрала и процесор подржавају само циклусе уписа и читања од једног бајта (архитектура Б)?

Резултат дати као: број циклуса (архитектура А)/број циклуса (архитектура Б)

Табела 3: Заглавље решења дела под а.
Рб A15..0 D15..8 D7..0 RD WR W PC IR23:16 IR15:8 IR7:0 TMP15..0 ACC SP Коментар

Решење