Из потока инструкций по конфигурации потока: Новый класс процессоров
Многие дизайнеры есть серьезные сомнения в том, процессоров, основанных на классической архитектуры фон Неймана и его варианты могут доставить пропускной способности и вычислительной мощности, необходимой для новых услуг в беспроводных инфраструктуры и других производительность ресурсоемких приложений.
Промышленности необходимо решение, которое обеспечивает обильные пропускную способность, производительность обработки и низкое энергопотребление, а также возможность программирования и гибкость. Эксперты сходятся во мнении, что ключ массовым параллелизмом. Вместе с тем существующие параллельные решения, как правило, негибкие, очень трудно программы или обременены синхронизации накладных расходов.
Классическая процессоров находятся под контролем потока инструкций определения адресами источника и назначения, а также расчет отдельных слов в АЛУ и позволяет конвейерную этих операций, выполняемых в едином технологическом цикле. VLIW архитектуры продлить этот принцип параллельной обработки некоторых машинных слов. К сожалению, реальных реализаций показывают, что лишь небольшое число операций могут быть выполнены параллельно, и, что эффективное программирование VLIW довольно трудной задачей.
До сих пор, разработчиков систем DSP было два варианта, чтобы закрыть разрыв производительности: увеличение аппаратных конкретного приложения стандартного продукта (ASSP) сопроцессоры или softwired FPGA. Проблема в том, что каждый алгоритм, который должен быть ускорен требуется специальный специальное решение - это не очень экономично настройки!
Например, беспроводной требования промышленности процессор архитектуры, гибкая, как ЦСП и поставляет микросхемы, как производительность без ущерба для гибкости. Возьмем пример: в беспроводных систем, алгоритмов, таких как фильтр, преобразование Фурье и процесс Витерби декодер непрерывного потока данных. Тем не менее, одной ЦСП не может доставить на производительность обработки необходимой скорости передачи данных. Разработка посвященный сопроцессоры, очень много времени и существующих решений трудно адаптироваться к новым стандартам.
Реконфигурируемые процессорных архитектур предлагаем одно из решений этой проблемы. Отдельные алгоритмы шаг за шагом, настроить на массив АЛУ и настраиваемый соединений: фильтр, преобразование Фурье, Витерби декодер. Блок потоков данных по каждому из конфигураций и промежуточные результаты в буфере местных баранов для следующего шага.
Это очень продвинутый класс процессоров, где обучение потока заменяется конфигурации потока и одной базовой операции ALU заменены комплекс операций, выполняемых на всей потоков данных. В один цикл, полный алгоритм состоит из множества основных операций машины, такие как сложение и умножение рассчитывается - это как перестраиваемый процессоры обеспечивают высочайшую производительность.
Является ли такой процессор Программируемая?
Поток графы параллельных алгоритмов должны быть сопоставлен с массивом АЛУ и каналов связи. Поскольку это наиболее требовательных часть программного обеспечения кодирования, оптимизированные описание языка для целевого процессора делает кодирования более продуктивным, чем при использовании общих Языки описания оборудование, такое как HDL.
Кроме того, процессор должен реконфигурируемых скрыть все детали реализации со стороны программиста. Элементы потоки данных должны обрабатываться как пакеты в целях обеспечения того, чтобы генерировать АЛУ результат только тогда, когда все входные пакеты доступны. Пособие времени свободного программирования без широкого анализа трубопровода. Условные операции на основе результатов расчетов должна быть возможность, которая позволяет запрограммировать циклов, условные операции ALU и условных просьбы о реорганизации.
Одним из наиболее важных особенностей реконфигурируемых процессор для управления процессом реорганизации. Для того, чтобы не потерять тактов во время реорганизации, следующая конфигурация должна следить за последний пакет данных предыдущей конфигурации синхронно, как волна. Кроме того, конфигурация должна быть помещена в кэш и предустановленной для быстрейшей реорганизации. Автоматическая система распределения ресурсов не должны допустить тупики и сохранить правильную последовательность конфигураций, если несколько параллельных задач просить же аппаратных ресурсов. Все реорганизации обращение должно быть сделано аппаратных протоколов и не должны быть видны на программиста.
Есть существующих методов для автоматической векторизации алгоритмы написаны на языке высокого уровня, таких как C, которые были профилированные в нескольких журналах программирования. Кодекс разделы быть перенесены автоматически анализируются и параллельных секций, отображаются на массив, в последовательность конфигураций. Этот метод позволяет программировать на более высоком уровне абстракции, но хорошие результаты могут быть достигнуты только, если целевой процессор весьма регулярно.
В сопроцессор окружающей среды, только срочные внутренние циклы должны быть загружены, чтобы сопроцессор - последовательный фрагментов кода и контрольные функции выполняются дальше по процессором, например, DSP. Это позволяет снизить инвестиции в программное обеспечение и время разработки.
В течение следующих нескольких лет, реконфигурируемых процессоров ввода полупроводниковых рынке симбиотических партнеров классических ЦСП или RISC архитектуры. Движущим фактором является исключительной необходимости производительность и гибкость в условиях быстро растущего рынка беспроводной инфраструктуры. Эти процессоры, извлекут выгоду из улучшения в области полупроводниковых технологий в процесс как число элементов на чипе и тактовой частоты. В долгосрочной перспективе эта технология имеет потенциал заменить классические потока инструкций архитектуры на базе конфигурации с потоком архитектуры.
Эберхард Шуэлер несет ответственность за управлению продуктами PACT GmbH в Мюнхене, Германия.