Назначение ОА и структурная схема УУ
Операционный автомат (ОА) служит для хранения слов информации, выполнения набора микроопераций и вычисления значений логических условий, т. е. операционный автомат является структурой, организованной для выполнения действий над информацией. На вход ОА подаются входные данные D1 которые в соответствии с алгоритмом операции преобразуются в выходные данные D0 . Кроме того, ОА вырабатывает множество {х} осведомительных сигналов (логических условий) для управляющего автомата.
Способы повышения быстродействия и производительности процессора
1. Увеличение быстродействия отдельного ОА:
- локальный параллелизм (выполнение параллельного действия внутри ОА);
- применение эффективных алгоритмов;
- использование акселераторов (ускорителей);
- использование табличных процессоров;
- использование алигативного принципа обработки.
2. Увеличение быстродействия процессора в целом (основано на
распараллеливании):
- распараллеливание на уровне выполнения отдельной команды (конвейерная
обработка);
- распараллеливание выполнения команд (за счет использования
многочислового ОА) - спекулятивная обработка;
- использование векторной (параллельной) обработки;
- спекулятивная обработка – изменение порядка выполнения команд;
- использование многоядерности;
3. Увеличение быстродействия вычислительной системы за счет
мультипроцессорной структуры;
Конвейерный принцип обработки команды
Впервые эту идею предложил и реализовал академик Лебедев в БЭСМ-6.Операция делится на части и на каждой ступени выполняется одна из них
.
Различают конвейеры:
Линейный (синхронный). Он является наиболее эффективным, когда длительность операций и частоты одинаковы. Информация передается по синхросигналу. Структура линейного конвейера:
Асинхронный
Является нелинейным. Время обработки всех ступеней различно и используется специальный алгоритм обмена, который осуществляется через осведомительные сигналы о свободе и занятости конвейера
28.Асинхронный конвейер: схема и способ реализации
Является нелинейным. Время обработки всех ступеней различно и используется специальный алгоритм обмена, который осуществляется через осведомительные сигналы о свободе и занятости конвейера
Для этого существует два триггера:
- триггер готовности, он устанавливает на выходе и принимает значение 1 при выполнении операции ФБ и готовности передать результаты на следующую ступень;
- триггер занятости = 1, когда ФБ не готов принять информацию с предыдущего блока.
В CISC системах конвейер имеет 5–6 ступеней (выборка команды, декодирование, формирование адреса операндов, выборка операнда, выполнение операции, запись результата).
29.Синхронный конвейер: схема, временные соотношения, временная диаграмма
Линейный (синхронный). Он является наиболее эффективным, когда длительность операций и частоты одинаковы. Информация передается по синхросигналу. Структура линейного конвейера:
P2 способен хранить 1 элемент, поэтому скорость работы конвейера определяется max временем обработки элемента. В буфере памяти такой проблемы нет.
Такт конвейера выбирается следующим образом: Tk=Tcmax+TБР+TПК, где Tcmax – максимальное время обработки в 1 ступени. TБР – время записи в буфер регистр. TПК – время перекоса из-за неравномерности обработки.
Для нормальной работы Tcmax > (TБР+TПК) Tk= TБР+TПК= Tcmax+TБР-TПК
В синхронном конвейере входной Рг. первого блока можно совместить с выходным Рг. другого. Длительность операций должна быть приблизительно одинаковой.
Длительность такта: τ =Тсмах + Т +Тперек .
Если оказалось, что сумма времени двух определенных операций < Тсмах, следовательно τi + τi+1 < Тсмах
Если Тсмах > всех остальных действий, следовательно увеличивается Тсмах, либо разделение на два блока, либо сдвиг.