Jump to content

Конвейерная обработка (реализация DSP)

Конвейерная обработка — это важный метод, используемый в нескольких приложениях, таких как системы цифровой обработки сигналов (DSP), микропроцессоры и т. д. Он берет свое начало от идеи водопровода, в который непрерывно подается вода, не дожидаясь, пока вода из трубы выйдет. Соответственно, это приводит к увеличению скорости критического пути в большинстве систем DSP. Например, он может либо увеличить тактовую частоту , либо снизить энергопотребление при той же скорости в системе DSP.

Концепция

[ редактировать ]

Конвейерная обработка позволяет различным функциональным блокам системы работать одновременно. Рассмотрим неформальный пример на следующем рисунке. три подфункциональных блока ( F0 Система включает , F1 в и F2 себя ). Предположим, что существуют три независимые задачи ( T 0 , T 1 и T 2 ), выполняемые этими тремя функциональными блоками. Время выполнения задачи каждым функциональным блоком одинаково и занимает определенный слот в расписании.

Если расположить эти три юнита и задачи в последовательном порядке, необходимое время для их выполнения составит пять слотов.

Однако если мы перенаправим T 0 в T 2 одновременно, совокупное время уменьшится до трех слотов.

Таким образом, адекватная конвейерная конструкция позволяет добиться значительного увеличения скорости.

Затраты и недостатки

[ редактировать ]

Конвейерная обработка не может уменьшить время обработки, необходимое для одной задачи. Преимущество конвейерной обработки в том, что она увеличивает пропускную способность системы при обработке потока задач.

Применение слишком большого количества конвейерных функций может привести к увеличению задержки — то есть время, необходимое для распространения одной задачи по всему каналу, увеличивается. Конвейерной системе также может потребоваться больше ресурсов (буферов, схем, блоков обработки, памяти и т. д.), если повторное использование ресурсов на разных этапах ограничено.

Сравнение с параллельными подходами

[ редактировать ]

Еще одним методом повышения эффективности за счет параллелизма является параллельная обработка . Основное отличие состоит в том, что параллельные методы обычно дублируют функциональные блоки и распределяют между ними несколько входных задач одновременно. Таким образом, он может выполнять больше задач в единицу времени, но может понести более высокие затраты на ресурсы.

В предыдущем примере параллельный метод дублирует каждый функциональный блок еще на два. Соответственно, все задачи могут выполняться дублированными функциональными блоками с одной и той же функцией одновременно. Время на выполнение этих трёх задач сокращается до трёх слотов.

Конвейерная обработка в КИХ-фильтрах

[ редактировать ]

Рассмотрим КИХ-фильтр с тремя отводами: [1]

что показано на следующем рисунке.

Предположим, что время расчета для единиц умножения равно T m и T a для единиц сложения. Критический путь, представляющий минимальное время, необходимое для обработки новой выборки, ограничен одной функциональной единицей умножения и двумя единицами сложения. Таким образом, период выборки определяется выражением

Однако такая конструкция может не подойти для конструкции с требованием высокой скорости. Чтобы сократить период выборки, мы можем ввести дополнительные регистры конвейерной обработки вдоль критического пути данных. Затем структура разбивается на два этапа, и данные, полученные на первом этапе, будут храниться во введенных регистрах, задерживая один такт до второго этапа. Данные первых трех тактов записаны в следующей таблице. При такой конвейерной структуре период выборки сокращается до


Конвейерная обработка в БИХ-фильтрах 1-го порядка

[ редактировать ]

Комбинируя методы прогнозирования и конвейерную обработку, [2] мы можем повысить частоту дискретизации целевой конструкции. Конвейерная обработка с упреждающим просмотром добавит к передаточной функции сокращающие полюса и нули так, что коэффициенты следующих членов в знаменателе передаточной функции будут равны нулю.

Затем выходная выборка y ( n ) может быть вычислена с точки зрения входных данных и выходной выборки y ( n M ) имеется M так, что в критическом контуре элементов задержки. Эти элементы затем используются для конвейеризации критического цикла по M этапам, так что частоту выборки можно увеличить в M раз .

Рассмотрим передаточную функцию БИХ-фильтра 1-го порядка.

Выход y ( n ) может быть вычислен на основе входных данных u ( n ) и предыдущего результата.

В простой структуре для разработки такой функции частота дискретизации этого рекурсивного фильтра ограничена временем вычисления одной операции умножения-сложения.

Чтобы реализовать такую ​​конструкцию, мы наблюдаем, что H имеет полюс в точке

Следовательно, в трехступенчатом конвейерном эквивалентном стабильном фильтре передаточную функцию можно получить путем сложения полюсов и нулей в точке

и дается

Следовательно, соответствующую частоту дискретизации можно увеличить в 3 раза.

Другие примеры конвейерных систем DSP

[ редактировать ]
  • Конвейерное преобразование Уолша – Фурье [3]
  • Конвейерные унитарные преобразования [4]
  • Конвейерное ДПФ [5]
  • Конвейерное БПФ [6]
  1. ^ Кешаб К. Пархи, Системы цифровой обработки сигналов СБИС: проектирование и реализация, Джон Вили, 1999
  2. ^ Слайды для систем цифровой обработки сигналов СБИС: проектирование и реализация John Wiley & Sons, 1999 ( ISBN   0-471-24186-5 ): http://www.ece.umn.edu/users/parhi/SLIDES/chap10.pdf.
  3. ^ М. Р. Ашури и Энтони Г. Константинидес , «Конвейерное быстрое преобразование Уолша Фурье», в Proc. IEEE Международный. Конф. ASSP Хартфорд, Коннектикут, 9–11 мая), стр. 515–518, 1977.
  4. ^ Фино, Би Джей; Альгази, ВР; «Параллельные и конвейерные вычисления быстрых унитарных преобразований», Electronics Letters, том 11, № 5, стр. 93–94, 6 марта 1975 г.
  5. ^ Цзоу, К.-Х.; Морган, Северная Каролина; «Быстрый конвейерный процессор DFT и аспекты его программирования», Electronic Circuits and Systems, IEE Proceedings G, том 132, № 6, стр. 273–276, декабрь 1985 г.
  6. ^ HL Gorginsky и GA Works, «Конвейерное быстрое преобразование Фурье», IEEE Trans. Вычисл., вып. C-19, стр. 1015–1019, ноябрь 1970 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c99688571da58cc17830779bc8b741f8__1713304800
URL1:https://arc.ask3.ru/arc/aa/c9/f8/c99688571da58cc17830779bc8b741f8.html
Заголовок, (Title) документа по адресу, URL1:
Pipelining (DSP implementation) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)