Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Команда умовного переходу




Прикладом команди умовного переходу є команда BNEZ R5, data. Виконуються на­ступні мікродії:

ALUoutput = NPC + Imm;

Cond (ition) = (A op 0).

Обидві мікродії є сумісними в часі. За допомогою першої мікродії вираховується ці­льова адреса умовного переходу. При цьому до вже визначеної адреси наступної коман­ди (NPC), тобто такої, яка розташована безпосередньо за командою умовного переходу, додається константа зі службового регістра Imm, (саме він містить значення data). Друга мікродія визначає (істинним чи хибним) є значення умови Condition умовного переходу. Заради цього вміст службового регістра А, що є збіжним із вмістом регістра R5 (у коман- ді-прикладі), порівнюється на основі операції (ор) з нулем. Згідно з семантикою коман­ди BNEZ отримується, що Cond = true, коли вміст регістра R5 ненульовий, або Cond = false, якщо регістр R5 містить нуль. Фізично Cond є однобітним регістром у складі вузла Zero?

Звернемо увагу на те, що зараз сформовано лише значення двох необхідних елемен­тів виконання умовного переходу, а саме: однобітний код умови Cond та цільова адре­са переходу, яка тимчасово зберігається у службовому вихідному регістрі ALU, тобто в ALUoutput. Безпосереднє виконання умовного переходу, що полягає в природній (за чергою) чи неприродній (коли виконують стрибок до цільової адреси) зміні вмісту про­грамного лічильника PC, виконується на наступній фазі.

 

4.2.4.4. Фаза звернення до пам’яті та завершення умовного переходу

Звернення до пам’яті.

В рамках фази звернення до пам’яті МЕМ виконуються наступні мікродії:

LMD = DM [ALUoutput];

DM [ALUoutput] = В.

Звернення до пам’яті застосовується в командах завантаження (наприклад, LW R6, 112(R3)) та в командах збереження (наприклад, SW 112(R3),R6).

Перша мікродія виконується тільки у випадку команди Load (завантаження). Тут за допомогою попередньо розрахованої адреси пам’яті даних, яка тимчасово зберігається у службовому регістрі ALUoutput, здійснюється доступ до пам’яті, що і позначено за­писом DM [ALUoutput].

Фізично з пам’яті завжди зчитується 32 біти (або навіть цілі пакети з 32-х бітових структурних одиниць). Отриманий з пам’яті даних бінарний код тимчасово завантажується до ще одного службового регістра LMD (Load Memory Data). І тільки на наступній фазі WB, яка поки що не розглядалася, зчитаний код пересилається з регістра LMD до конкретної комірки (в нашому прикладі - це комірка з адресою R6) регістрового файла.

Друга мікродія реалізується лише при виконанні команди Store (збереження). Тут до комірки пам’яті даних за адресою, що зберігається в службовому регістрі ALUoutput = (R3) + 112, засилається вміст службового регістра В. При цьому (в наведеному прикладі) для команди SW має місце тотожність (B)=(R6).

Умовний перехід.

Виконується наступна мікродія:

if (condition) PC = ALUoutput else PC = NPC.

Здійснюється природна (cond=0) або неприродна (cond =1) заміна вмісту програм­ного лічильника PC з метою реалізації наступної за умовним переходом команди.

4.2.4.5. Фаза зворотного запису

На цій, вже останній фазі виконання команди, у разі потреби результат, що отримано на попередніх фазах, записується до деякої комірки RX регістрового файла. Наприклад, в R1, якщо поточною є команда ADD R1,R2,R3, або в R6 для команди LW R6,#112(R3). Тому вона і має назву зворотного запису (write/back - WB).

Потрібно звернути увагу, що на цій фазі змінюється програмний стан комп’ютера. Після її виконання поновлення попереднього стану є неможливим.

Команди виконання операції арифметико-логічного пристрою типу “регістр-ре- гістр”.

Виконується наступна мікродія:

Regs[IR11…15] = ALUoutput.

Мікродія зберігає результат операції ALU в регістрі призначення (наприклад, в ре­гістрі R1 на прикладі команди ADD). Зрозуміло, що біти 16...20 відповідного формату команди містять бінарний номер регістра призначення.

Команди виконання операції арифметико-логічного пристрою типу “регістр-без- посередній операнд”.

Виконується наступна мікродія:

Regs[IR11… 15 ] = ALUoutput.

Ця мікродія також зберігає результат операції, наприклад, SUB R5, R4, #1002, в ко­мірці R5 регістрового файла.




Поделиться с друзьями:


Дата добавления: 2014-11-25; Просмотров: 527; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.