- •Страницы 7–11
- •1 Конвейеризация вычислений
- •1.1 Синхронные линейные конвейеры
- •1.2 Метрики эффективности конвейеров
- •1.3 Нелинейные конвейеры
- •1.4 Конвейер команд
- •1.8 Суперконвейерные процессоры
- •3.1 Общая информация о фирме атмеl и ее продукции
- •3.2 Обзор микроконтроллеров, производимых корпорацией атмеl
- •Архитектура микропроцессорного ядра аvr-микроконтроллеров
- •Обзор Тinу аvr-микроконтроллеров
- •3.6 Обзор Меgа аvr-микроконтроллеров
- •3.7 Система команд Ассемблера микроконтроллеров аvr.
- •3.8 Описание системы команд и программная модель аvr
1.1 Синхронные линейные конвейеры
Эффективность синхронного конвейера во многом зависит от правильного выбора длительности тактового периода Тк. Минимально допустимую Тк можно определить как сумму наибольшего из времен обработки на отдельной ступени конвейера ТС мах и времени записи результатов обработки в буферные регистры между ступенями конвейера ТБР:
Тк = Тсмах + Тбр
Из-за вероятного «перекоса» в поступлении тактирующего сигнала в разные ступени конвейера предыдущую формулу следует дополнить еще одним элементом – максимальной величиной «перекоса» ТПК:
ТК = ТС МАХ + ТБР + ТПК
Каждая ступень может содержать множество логических трактов обработки. ТК определяется наиболее длинными трактами во всех ступенях конвейера. При разработке конвейера необходимо учитывать, что для двух последовательных элементов, обрабатываемых одной и той же ступенью, обработка первого элемента может проходить по тракту максимальной длины, а второго элемента – по минимальному тракту. В итоге результат обработки второго элемента может появиться на выходе ступени прежде, чем в выходном регистре ступени будет запомнен предыдущий результат. Чтобы избежать подобной ситуации, сумма ТБР + ТПК должна быть меньше минимального времени обработки в ступени ТС МIN откуда
ТБР ТС МIN – ТПК
Выбор длительности тактового периода для конвейера должен осуществляться с соблюдением соотношения
■ ТС МАХ + ТБР + ТПК ТК ТС МАХ + ТС МIN – ТПК
Несмотря на очевидные преимущества выбора ТК, равным нижнему пределу, проектировщики ВМ обычно ориентируются на среднее значение между нижним и верхним пределами.
1.2 Метрики эффективности конвейеров
Чтобы охарактеризовать эффект, достигаемый за счет конвейеризации вычислений, обычно используют три метрики: ускорение, эффективность и производительность.
Под ускорением понимается отношение времени обработки без конвейера и при его наличии. Теоретически наилучшее время ТNK обработки входного потока из N значений на конвейере с К ступенями и тактовым периодом ТK можно определить выражением
ТNK = (К+(N-1)) ТK .
Формула отражает тот факт, что до появления на выходе конвейера результата обработки первого элемента должно пройти К тактов (по числу ступеней), а последующие результаты будут следовать в каждом такте.
В процессоре без конвейера общее время выполнения составляет NКТK. Таким образом, ускорение вычислений S за счет конвейеризации вычислений можно описать формулой
S = NКТK. /(К + (К-1)) ТK = NК/К + (N-1)
При N ускорение стремится к величине, равной количеству ступеней К в конвейере.
Еще одной метрикой, характеризующей конвейерный процессор, является эффективность Е — доля ускорения, приходящаяся на одну ступень конвейера:
Е = S/К = N/К+(N-1).
В качестве третьей метрики часто выступает пропускная способность или производительность Р — эффективность, деленная на длительность тактового периода:
Р = N/ТK(К+(N-1))/
При N эффективность стремится к единице, а производительность – к величине 1/ ТK, то есть к частоте F тактирования конвейера.
