Arch: new
Все теоритические билеты по Архитектуре ЭВМ в основном были написаны, кроме: 8.4; 13.4; 14.4; 15.4. Задачи будут позже.
This commit is contained in:
7
2 курс/1 семестр/Архитектура ЭВМ/Лекции/7 билет/1.md
Normal file
7
2 курс/1 семестр/Архитектура ЭВМ/Лекции/7 билет/1.md
Normal file
@ -0,0 +1,7 @@
|
||||
#### Определение конфликта.
|
||||
|
||||
**Конфликт** - такая ситуация в конвейерной обработке, которая препятствует выполнению очередной команды в предназначенном для нее такте.
|
||||
|
||||
Конфликт может привести к $\geq 1$ тактам простоя или ожидания (stalls).
|
||||
Конфликты уменьшают идеальное время конвейера, повышая CPI (CPI $>1$ ).
|
||||
Приводят к необходимости приостановки выполнения команд. Обычно в простейших конвейерах, если приостанавливается какая-либо команда, то все след. за ней тоже приостанавливаются, не выбирается ни одна новая команда. Команды, предшествующие приостановленной, могут продолжать выполнение.
|
11
2 курс/1 семестр/Архитектура ЭВМ/Лекции/7 билет/2.md
Normal file
11
2 курс/1 семестр/Архитектура ЭВМ/Лекции/7 билет/2.md
Normal file
@ -0,0 +1,11 @@
|
||||
#### Классификация конфликтов (определения: структурные конфликты, конфликты данных, конфликты управления). Обработка конфликтов.
|
||||
|
||||
1) **Структурные конфликты (IF/MEM)**
|
||||
|
||||
Возникают из-за недостатка аппаратных ресурсов, когда доступное аппаратное обеспечение не в состоянии поддерживать исполнение всех возможных комбинаций инструкций.
|
||||
2) **Конфликты данных (RAW, WAW, WAR, RAR)**
|
||||
|
||||
Возникают, когда инструкция зависит от рез-та выполнения предыдущей инструкции таким образом, что это проявляется при перекрытии инструкций в конвейере.
|
||||
3) **Конфликты управления (JMP, J??, CALL, RET)**
|
||||
|
||||
Возникают при конвейеризации условных переходов и др. инструкций, которые изменяют IP/PC.
|
19
2 курс/1 семестр/Архитектура ЭВМ/Лекции/7 билет/3.md
Normal file
19
2 курс/1 семестр/Архитектура ЭВМ/Лекции/7 билет/3.md
Normal file
@ -0,0 +1,19 @@
|
||||
#### Причина возникновения структурных конфликтов. Изменение СРІ из-за структурных конфликтов.
|
||||
|
||||
Причиной возникновения структурного конфликта может быть:
|
||||
a. **Не полностью конвейеризованная структура процессора.**
|
||||
|
||||
Некоторые стадии отдельных команд могут выполняться более $1^{го}$ такта. В этом случае последовательные команды, которые используют данное функц. устройство, не могут поступать в него в каждом такте.
|
||||
b. **Недостаточное дублирование некоторых ресурсов.**
|
||||
|
||||
Препятствует выполнению произвольной последовательности команд в конвейере без его приостановки. Например, машина может иметь только 1 порт записи в регистровый файл, но конвейеру может потребоваться выполнить 2 записи в регистровый файл в $1^{ом}$ такте.
|
||||
с. **Общая память для инструкций и данных, и единственный порт памяти.**
|
||||
|
||||
Когда одна команда содержит обращение к памяти за данными, оно будет конфликтовать с выборкой более поздней команды из памяти. Чтобы разрешить эту ситуацию, можно просто приостановить конвейер на 1 такт, когда происходит обращение к памяти за данными. Это конвейерный пузырь.
|
||||
|
||||
CPI = идеальное CPI + средн. число тактов простоя на инструкцию.
|
||||
Но простои из-за разных конфликтов могут накладываться.
|
||||
В случае с структурным конфликтом при обращении к памяти (простой 1 такт), если обращение к памяти составит 40\% для некоторой программы, то без учета других потерь производительности:
|
||||
|
||||
CPI $=(1+0.4) \times$ CPI идеальное
|
||||
Т.е. CPU без структурного конфликта в 1.4 раза быстрее.
|
Reference in New Issue
Block a user