Professional Documents
Culture Documents
MARIE
– Модел на
едноставен
компјутер
Тема 4: Цели
Ц
2
4.1 Вовед
д
Ова е точка-точка
магистрала:
6
4.3 Магистрала
р
8
4.3 Магистрала
р
9
4.3 Магистрала
р
• Во т. н. master-slave конфигурација, каде што повеќе
уреди можат да ја користат магистралата, барањата
на конкурентните уреди мора да бидат арбитрирани.
• Четири
Ч категории на арбитрирање:
б
– Приоритет: Дозволите се пренесуваат од уредот со
повисок приоритет до оној со понизок приоритет.
приоритет
– Централизирано: Секој уред е директно поврзан со
уредот за арбитрирање.
– Дистрибурано со користење на само-детекција:
Уредите сами одлучуваат кој ќе ја земе магистралата.
– Дистрибуирано со детекција на колизија: Секој уред
може да се обиде да ја користи магистралата. Ако
неговите податоци се судрат со податоци од друг уред,
се обидува повторно. 10
4.4 Такт генератор
р р
14
4.6 Организација
р ц ј на меморијата
р ј
15
4.6 Организација
р ц ј на меморијата
р ј
17
4.8 MARIE
19
4.8 MARIE
Седум регистри:
• Акумулатор, AC, 16-битен регистар кој содржи условен
оператор (пр.
( , “помалку
“ од”)
”) или еден од операндите за
инструкции со два операнди.
• М
Мемориски адресен регистар, MAR,
MAR 12-битен
12 б регистар
кој ја задржува мемориската адреса на некоја
инструкција или на операндот на некоја инструкција.
инструкција
• Мемориски бафер регистар, MBR, 16-битен регистар
кој ги чува податоците после нивното читање
читање, или
после нивното сместување во меморијата.
• ...
20
4.8 MARIE
. . . Седум регистри:
• Програмски бројач, PC, 12-битен регистар кој ја чува
адресата на следната програмска инструкција
ј која
ј треба
б
да се изврши.
• И
Инструкциски регистар, IR,
IR којј ја
ј чува инструкцијата
ј
веднаш пред нејзиното извршување.
• В
Влезен регистар, InREG,
I REG 8-битен
8б регистар којј ги чува
податоците од влезните уреди.
• Излезен регистар, OutREG, 8-битен регистар, кој ги
чува податоците кои се даваат на излез.
21
4.8 MARIE
22
4.8 MARIE
24
4.8 MARIE
25
4.8 MARIE
• Ова е форматот на
MARIE инструкција:
26
4.8 MARIE
27
4.8 MARIE
• Гледаме
д д
дека кодот
д на инструкцијата
ру ц ј е8и
битовите 11 и 10 се 10, што значи дека следната
инструкција ќе биде прескокната ако вредноста во
AC (акумулаторот) е поголема од нула.
К ј е хексадецималната репрезентација
Која ј на оваа инструкција?
ј ?
28
4.8 MARIE
• RTL за LOAD:
MAR X
MBR M[MAR]
AC MBR
• RTL за ADD:
MAR X
MBR M[MAR]
AC AC + MBR
30
4.8 MARIE
• Fetch-decode-execute
etc decode e ecute ((прибави-декодирај-изврши)
рибави де одирај изврши)
циклусот е серија од чекори кои компјутерот ги следи
кога се извршува некоја програма.
– Fetch: прво треба да се донесе инструкцијата од
меморијата и да се смести во IR регистарот.
– Decode: кога е во IR, инструкцијата се декодира за да се
одреди што треба да се направи, ако мемориската
вредност (операнд) е содржана во операцијата
операцијата, таа се
враќа и се сместува во MBR.
– Execute: инструкцијата се извршува.
33
4.9 Упатство за обработка
р
34
4.9 Упатство за обработка
р
36
4.9 Упатство за обработка
р
37
4.9 Упатство за обработка
р
• Прекините
ре е се многу
о у корисни
ор с воо обрабо
обработка
а на
а I/O
/O
операции.
• Како и д
да е,, I/O прекини
р се комплицирани
ц р и се
надвор од нашата сегашна дискусија.
– Ќе јја рразгледаме
д оваа идеја
д ј во поголеми д
детали во
Тема 7.
• MARIE е наједноставен
ј систем, користејќи
р ј
модифицирана форма на програмиран I/O.
• Целиот излез е сместен во излезен регистар,
OutREG, CPU го избира влезниот регистар, InREG,
додека се внесуваат податоци вредноста е
копирана во акумулаторот.
38
4.10 Едноставна
д програма
р р
39
4.10 Едноставна
д програма
р р
• Да погледнеме што се
случува во компјутерот
кога работи нашата
програма.
• LOAD 104:
40
4.10 Едноставна
д програма
р р
• ADD 105:
41
4.11 Д
Дискусија
у ј за асемблери
р
• Мнемоничките инструкции
инструкции, како LOAD 104
104, се
лесни за луѓето за пишување и разбирање.
• Тие се неразбирливи за компјутерите
компјутерите.
• Асемблерите преведуваат инструкции кои се
разбирливи за луѓето во машински јазик
разбирлив за компјутерите.
Р
Разликата помеѓу
ѓ асемблер
б и компајлер:
ј
• Во асемблерскиот јазик, постои совпаѓање помеѓу мнемоничката
инструкција
ру ц ј и нејзиниот
ј машински код.д
• Ова обично не е случај со компајлерите.
42
4.11 Д
Дискусија
у ј за асемблери
р
43
4.11 Д
Дискусија
у ј за асемблери
р
• Да ја разгледаме нашата
програма зададена како
пример
р р ((погоре).
р )
– Забележуваме дека имаме
вклучено две инстукции HEX и
DEC кои ја
ј одредуваат основата
на константите.
• За време на првата фаза,
фаза Б
имаме: А
– табела со симболи (А)
– табела делумно преведени
инструкции (Б)
44
4.11 Д
Дискусија
у ј за асемблери
р
45
4.12 Проширен
р р инструкциски
ру ц сет
46
4.12 Проширен
р р инструкциски
ру ц сет
• Новите
о е инструкции
с ру ц се прикажани
р а а на а след
следниот
о
слајд во склоп на програма која ќе собере 5
броја:
р ј
49
4.12 Проширен
р р инструкциски
ру ц сет
Address Instruction Comments
100 Load Addr /Читај ја адресата на првиот број што ќе се додава
101 Store Next /Снимија таа адреса како покажувач во Next
102 Load Num /Читај колку броеви ќе се додаваат
103 Subt One /Декрементирај за 1
104 Store Ctr /Сними во Ctr – контрола на циклусот
105 Clear /Избриши
/ р го акумулаторот
у у р – стави 0
Loop, 106 Load Sum /Читај Sum во акумулаторот AC
107 AddI Next /Додај ја вредноста на која покажува Next
108 Store Sum /Сними ја вредноста во Sum
109 Load Next /Читај ја вредноста Next
10A Add One /Инкрементирај за 1 кон следната адреса
10B Store Next /Сними ја таа адреса како покажувач во Next
10C Load Ctr /Читај Ctr – контрола на циклусот
10D Subt One /Декрементирај за 1
10E Store Ctr /Сними во Ctr – контрола на циклусот
10F Skipcond 00 /Ако Ctr < 0, скокни ја следната инструкција
110 Jump Loop /Оди на Loop
111 Halt /Заврши ја програмата
Addr, 112 Hex 118 /Броевите што се сумираат започнуваат од адреса 118
Next,, 113 Hex 0 /Покажувач
/ у на следниот
д број
р ј што ќе се собира
р
Num, 114 Dec 5 /Број на вредности за сумирање
Sum, 115 Dec 0 /Сума
Ctr, 116 Hex 0 /Контролна променлива – контрола на циклусот
One, 117 Dec 1 /Вредност 1, за декрементирање и инкрементирање
118 Dec 10 /Броеви што ќе се собираат
119 Dec 15
11A Dec 20 50
11B Dec 25
11C Dec 30
4.13 Д
Дискусија
у ј за д
декодирање
д р
51
4.13 Д
Дискусија
у ј за д
декодирање
д р
• Текстот на корисникот
р дава целосна листа на RTL
за секоја од MARIE инструкциите.
• Микрооперациите
р р ц дадени
д д од
д секојј RTL јја
дефинираат операцијата на MARIE управувачката
единица.
• Секоја микрооперација се состои од пособени
сигнални модели кои се преведени од
управувачката единица и резултираат со
извршувањето на инструкцијата.
– Да се потсетиме, RTL за Add инструкцијата е:
MAR X
MBR M[MAR]
52
AC AC + MBR
4.13 Д
Дискусија
у ј за д
декодирање
д р
• Секој од регистрите на
MARIE и главната
меморија имаат
единствена адреса
вдолж
д целиот
ц
податочен тек
(datapath).
• Адресите ја заземаат
формата на сигналите
генерирани од
управувачката
единица.
53
4.13 Д
Дискусија
у ј за д
декодирање
д р
• Да дефинираме два
сета од по три сигнали.
• Еден сет
сет, P0, P1, P2,
контролира читање од
меморија или регистар,
и друг сет се состои од
P3, P4, P5, контролира
р р
запишување во
меморија или регистар.
Следниот слајд прикажува
затворен поглед на MARIE
MBR.
54
4.13 Д
Дискусија
у ј за д
декодирање
д р
56
4.13 Д
Дискусија
у ј за д
декодирање
д р
• Забележете ги
конкурентните сигнални
состојби
јб во текот на секојј
машински циклус:
C0 до C3.
P0 P1 P2 P3 T0: MAR X
P0 P2 T1: MBR M[MAR]
A0 P0 P1 P2 P5 T2: AC AC + MBR
Cr T3: [Reset counter]
59
4.13 Д
Дискусија
у ј за д
декодирање
д р
• Забележуваме
Забеле у а е дека
де а
прикажаниот сигнал е ист
без разлика дали
машината која ја
употребуваме е
комбинациона или е
микропрограмирана.
• Во микропрограмирана
контрола, битниот модел
на една инструкција
влегува директно од
комбинационата логика
во управувачката
единица. 60
4.13 Д
Дискусија
у ј за д
декодирање
д р
Ова е
комбинациона
логика за
MARIE
Add
dd = 0011
инструкција.
61
4.13 Д
Дискусија
у ј за д
декодирање
д р
• Во микропрограмираната контрола,
контрола
инструкцијата продуцира промени на
контролните сигнали
сигнали.
• Машинските инструкции се влез за
микропрограмата која ги претвара 1-ците и 0-
ите од инструкцијата во контолните сигнали.
• Микропрограмата е складирана во firmware,
firmware кој
е наречен контролен склад.
• М
Микрокод инструкцијата
ј е пребарувана
б за
време на секој такт циклус.
62
4.13 Д
Дискусија
у ј за д
декодирање
д р
Ова е како може да
изгледа
микропрограмирана
управувачка единица
63
4.13 Д
Дискусија
у ј за д
декодирање
д р
65
4.13 Д
Дискусија
у ј за д
декодирање
д р
66
4.13 Д
Дискусија
у ј за д
декодирање
д р
67
4.13 Д
Дискусија
у ј за д
декодирање
д р
Ќе разгледуваме за “RISC
RISC versus CISC”
CISC аргументите цо
Тема 9. 69
4.14 Вистински светски архитектури
р ур
• Во 1985,
1985 Intel го претставил 32-битниот 80386.
80386
• Тој исто така немал built-in floating-point единица.
• 80486,
80486 е воведен во 1989,
1989 наследник на 80386 којј
имал built-in floating-point процесирање и кеш
меморија.
меморија
• 80386 и 80486 нуделе компатииблност со 8086 и
8088.
8088
• Софтверот напишан за помалите зборовни
системи ги употребувал ниските 16 бита на 32- 32
битните регистри .
72
4.14 Вистински светски архитектури
р ур
• Моментално
Моментално, најзастапен е 32-битен
микропроцесор Pentium 4 на Intel.
• Може да работи побрзо од 3.8
3 8 GHz.
GHz Неговата
фреквенција е приближно 800 пати побрза од
4 77 MHz на 8086.
4.77 8086
• Зголемената брзина вклучуваат повеќе нивовски
кеш и инструкциска компјутерска обработка
обработка.
• Intel, вметнува многу од идеите на RISC
архитектурите со микропроцесори кои се
проширени CISC.
73
4.14 Вистински светски архитектури
р ур
74
4.14 Вистински светски архитектури
р ур
77
End of Chapter 4
78