Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Електротехнички факултет у Београду

Катедра за рачунарску технику и информатику

04.07.2013.

Архитектура и организација рачунара 2

1. (30) Посматра се део рачунара који чине меморија и процесор.


Меморија је капацитета 216 бајтова. Ширина меморијске речи је 1 бајт.
Процесор је са једноадресним форматом инструкција. Подаци су целобројне величине
без знака дужине два бајта. Подаци у меморији заузимају две суседне меморијске локације,
при чему се старији бајт налази на нижој локацији а млађи бајт на вишој локацији.
У процесору постоји регистар програмског бројача PC дужине два бајта, адресни
регистар меморије MAR дужине два бајта, прихватни регистар податка меморије MBR
дужине један бајт, прихватни регистар инструкције IR дужине три бајта, регистар
акумулатора АCC дужине два бајта, програмска статусна реч PSW дужине један бајт,
указивач на врх стека SP дужине 2 бајта, регистар броја улаза у табелу са адресама
прекидних рутина BRU дужине 2 бита и указивач на табелу са адресама прекидних рутина
IVTP дужине 2 бајта. Инструкције су дужине један, два или три бајта.
Бит 7 првог бајта инструкције има вредност 0 за инструкције скока, при чему бит 6
првог бајта инструкције има вредност 0 за инструкција условног скока и 1 за инструкције
безусловног скока. Инструкција условног скока је инструкција условног скока уколико је
резултат нула (BZ). Битовима 5 до 0 првог бајта инструкције специфицира код операције за
инструкције условног скока. На основу тога је за инструкцију BZ усвојен код операције
00000000. Инструкција BZ се реализује као релативни скок у односу на текућу вредност
програмског бројача PC, а померај је 8 битна целобројна величина са знаком дата другим
бајтом инструкције. Дужина инструкције је два бајта. Инструкције безусловног скока су
инструкција безусловног скока (JMP) и инструкција скока на потпрограм (JSR). Битовима
5 до 0 првог бајта инструкције се специфицира код операције за инструкције безусловног
скока. На основу тога су за инструкције JMP и JSR усвојени кодови операција 01000000 и
01000001, респективно. Инструкције JMP и JSR се реализују као апсолутни скокови, а
адреса скока је дата другим и трећим бајтом инструкције, при чему је старији бајт адресе
скока дат другим бајтом инструкције а млађи бајт адресе скока трећим бајтом инструкције.
Дужина инструкција је три бајта.
Бит 7 првог бајта инструкције има вредност 1 за безадресне и адресне инструкције, при
чему бит 6 првог бајта инструкције има вредност 0 за безадресне инструкције и 1 за
адресне инструкције. Безадресне инструкције су инструкција аритметичког померања
удесно за једно место (ASR), инструкција инструкција повратка из потпрограма (RTS) и
инструкција повратка из прекидне рутине (RTI). Битовима 5 до 0 првог бајта инструкције
специфицира се код операције за безадресне инструкције. На основу тога су за
инструкције ASR, RTS и RTI усвојени кодови операција 10000000, 10000001 и 10000010,
респективно. Дужина инструкција је један бајт. Адресне инструкције су инструкција
преноса у акумулатор (LD), инструкција преноса из акумулатора (ST), аритметичка
инструкција сабирања (ADD), и логичка инструкција логички производ (AND). Битовима
5 до 2 првог бајта инструкција специфицира се код операције за адресне инструкције. На
основу тога су за инструкције LD, ST, ADD и AND усвојени кодови операција 0000, 0001,
0010 и 0011, респективно. Дужина инструкција је два или три бајта и зависи од
специфицираног начина адресирања.
Начини адресирања су специфицирани битовима 1 и 0 првог бајта инструкције и то на
следећи начин: 00-непосредно адресирање (immed), 01-меморијско директно адресирање
(memdir), 10-меморијско индиректно адресирање (memind) и 11-PC релативно адресирање
са померајем (pcrel). Код непосредног адресирања 16 битни операнд је дат другим и
трећим бајтом инструкције, при чему је старији бајт операнда дат другим а млађи бајт
трећим бајтом. Дужина инструкција је 3 бајта. Код меморијског директног и индиректног
адресирања 16 битна адреса меморијске локације је дата другим и трећим бајтом
инструкције, при чему је старији бајт адресе дат другим а млађи бајт трећим бајтом.
Дужина инструкција је 3 бајта. Код PC релативног адресирања са померајем 8 битни
померај је целобројна величина са знаком у другом комплементу дата другим бајтом
инструкције. Дужина инструкција је 2 бајта.
Стек расте према нижим меморијским локацијама, а регистар SP указује на последњу
заузету меморијску локацију.
Нема провере на грешку кода операције и начина адресирања и нема одговарајућих
унутрашњих прекида. Од прекида једино постоје спољашњи прекиди који долазе од
улазно/излазних уређаја. Број линије највишег приоритета по којој је стигао захтев за
прекид налази се у бинарном облику у регистру BR и представља броја улаза у табелу са
адресама прекидних рутина. Адресе су дужине 16 бита заузимају по две суседне
меморијске локације, при чему се старији бајт адресе налази на нижој локацији а млађи
бајт адресе на вишој локацији. Почетна адреса табеле са адресама прекидних рутина се
налази у регистру IVTP. У оквиру хардверског дела опслуживања захтева за прекид на стек
са стављају само регистри PC и PSW.

а)(5) Нацртати формате инструкција.


б)(5) Написати изразе за сигнале логичких услова дужина инструкција, начина
адресирања и операција.
в)(10) Написати секвенцу управљачких сигнала по корацима са спајањем операционих и
управљачких корака за све фазе извршавања инструкције.
г)(5) Разматра се управљачка јединица микропрограмске реализације и мешовитим
кодирањем управљачких сигнала операционе јединице. Дати формат микроинстркција.
Дати бинарне вредности којима се кодирају комбинације управљачких сигнала операционе
јединице за првих 10 корака секвенце. Дати бинарне вредности којима се кодирају сви
управљачки сигнали управљачке јединице.
д) (5) Нацртати структурну шему управљачке јединице микропрограмске реализације и
међовитим кодирањем управљачких сигнала операционе јединице и дати изразе за
генерисање управљачких сигнала и то за управљачке сигнале операционе јединице
ldMAR, incPC и Bout, и све управљачке сигнале управљачке јединице којима се управља
микропрограмским бројачем. Дати садржај прва четири улаза у микропрограмској
меморији.
Напомене: На испиту нису дозвољена никаква помоћна средства, ни калкулатори ни
литература. Испит траје 3 сата.
ALUout
IB15...0
ALU15...0
add
ALU and
A15...0 B15...0 asr

ldX LD X CLK ldY LD Y CLK


IB15...0
Bout
IB15...0
ACCLHout
IB15...0
ACC7..0.15...8
ACCHLout
IB15...0
ACC15..0 B15..0
incB INC LD ldB
ldACC LD ACC CLK B
decB DEC CLK
IB15...0

IB15...0

CLK
IVTP
LD
IVTPout IVTP15..0
IB15...0

formiranje BR
CLK IL 0
BR
ldBR LD SL slBR
BRout BR15..0
IB15...0

Операциона јединица (први део)


BUS
ABUS15...0 DBUS7...0 RDBUS WRBUS FCBUS
IB15...0
RD RD
OBI OBI
WR WR A15...0 DO7..0 DI7..0
MARout

MAR15...0 MDR7..0
ldMAR LD
MAR CLK
ldMBR LD MDR CLK
incMAR INC
uprav
IB15...0
mxMDR 0 mxMDR
0 1
IB15...0 IB7...0

MDRout
IB7...0 MDR7..0
IB7...0 IB7...0
PCout CLK CLK
IB15...0 ldIR1 LD IR1 ldIR2 LD IR2
PC15...0 IR23..16 IR15..8
incPC INC
PC CLK IB7...0
ldPC LD
IB15...0
ldIR3 LD IR3 CLK
SPout IR7..0
IB15...0
SP15..0
IB7...0
incSP INC LD
SP
decSP DEC CLK ldDH LD D CLK ldDL LD D CLK
IB15...0
D15...8 D7...0
PSWout
IB7...0
PSW7...0 Dout
D15...0
ldPSW LD PSW CLK IB15...0 PCHout
IB7...0
PC15...8
IRB2out
mxPSW 0 mxPSW
IB7...0 0 1 IR15..15.IR15..8
IB15...0 IRB12Aout
formiranje IB15...0
indikatora IR23...8
IRB3out
IR7..7.IR7..0
IB15...0 IRB23out
IB15...0
IB15...0 IB15...0 IR15...0
Операциона јединица (други део)

You might also like