В длинном командном слове процессора EPIC-архитектуры присутствуют инструкции четырем логическим ИУ. Инструкция имеет вид КОП А
1 А
2 α, где А
1 и А
2 – адреса операндов, α - адрес предиката – логического значения. Среди исполняемых инструкций есть команда сравнения (А
1)≤(А
2) с выработкой результата (α) и команда перестановки (А
1) => А
2, А
2 <= (А
1), выполняемая в спекулятивном режиме в зависимости от значения (a). Результат логической операции можно использовать через один такт.Разверните во времени цикл и составьте план выполнения программы модифицированной "пузырьковой" сортировки данного массива. Определите количество тактов вычислений.Пример.
M = {10, 2, 8, 5, 7, 1, 3, 5}.
План выполнения программыα1=10≤2 | α2=8≤5 | α3=7≤1 | α4=3≤5 |
NOP |
α1: 2, 10 | α2: 5, 8 | α3: 1, 7 | α4: 3, 5 |
NOP |
α1=10≤5 | α2=8≤1 | α3=7≤3 | |
NOP |
α1: 5, 10 | α2: 1, 8 | α3: 3, 7 | |
NOP |
α1=2≤5 | α2=10≤1 | α3=8≤3 | α4=7≤5 |
NOP |
α1: 2, 5 | α2: 1, 10 | α3: 3, 8 | α3: 5, 7 |
NOP |
α1=5≤1 | α2=10≤3 | α3=8≤5 | |
NOP |
α1: 1, 5 | α2: 3, 10 | α3: 5, 8 | |
NOP |
α1=2≤1 | α2=5≤3 | α3=10≤5 | α4=8≤7 |
NOP |
α1: 1, 2 | α2: 3, 5 | α3: 5, 10 | α4: 7, 8 |
NOP |
α1=2≤3 | α2=5≤5 | α3=10≤7 | |
NOP |
α1: 2, 3 | α2: 5, 5 | α3: 7, 10 | |
NOP |
α1=1≤2 | α2=3≤5 | α3=5≤7 | α4=10≤8 |
NOP |
α1: 1, 2 | α2: 3, 5 | α3: 5, 7 | α4: 8, 10 |
Переносы прекратились через 27 тактов.
M = {10, 1, 2, 3, 4, 6, 5, 10}