Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
ГЛАВА 11. БЫСТРЫЕ АЛГОРИТМЫХорошие коды с большой длиной и большим объемом алфавита, такие, как кода Рида Соломона, находят все более широкое применение. В будущем потребуются еще более длинные коды, контролирующие ошибки, и поэтому задача уменьшения сложности алгоритмов декодирования становится важной. Мы уже рассмотрели некоторые эффективные алгоритмы декодирования кодов Рида-Соломона и связанных с ними кодов и знаем, как строить декодеры, содержащие порядка В данной главе проводится исследование сложности декодеров. Мы начнем с уже рассмотренных декодеров и опишем для них способы более эффективного выполнення вычислений. В качестве меры сложности вычислений выбирается число умножений (а иногда и число сложений) в проводимых вычислениях. Будут строиться методы, уменьшающие сложность вычислений именно в этом отношении. За это приходится платить усложнением структуры: для уменьшения числа сложений и умножений приходится увеличивать структурную сложность, привлекая алгоритмы с более сложными индексацией и разветвлением. Безусловно, во многих приложениях регулярность алгоритма оказывается важнее, чем число умножений и сложений. Такой аспект сложности трудно определить численно, и поэтому мы его не рассматриваем. 11.1. ЛИНЕЙНАЯ СВЕРТКА И ЦИКЛИЧЕСКАЯ СВЕРТКАЛинейная свертка
может быть также записана в виде произведения многочленов
Стандартный способ вычисления произведения двух многочленов требует примерно сложений, но, возможно, существуют другие способы его вычисления, для которых это число можно уменьшить. Так как свертка является элементом многих вычислительных операций, то имеет смысл построить эффективные способы ее вычисления. Более того, циклическую свертку
можно сначала вычислить как линейную, а затем привести по модулю Циклическая свертка может быть записана в виде
где двойные скобки обозначают вычисление индексов по модулю
и, таким образом, циклическую свертку можно вычислить, последовательно применяя преобразование Фурье, покомпонентное умножение и обратное преобразование Фурье. Если Возьмем, например, удовлетворяющую условию
где двойные скобки в индексе обозначают вычисление по модулю Разработаны методы сведения длинной линейной свертки к множеству коротких циклических сверток. Опишем метод, оказавшийся чрезвычайно полезным в обработке дискретных сигналов и известный под названием метода перекрытия с накоплением. Он применим также к длинным сверткам в полях Галуа. Предположим, что имеется устройство, вычисляющее циклическую свертку длины
где
Коэффициенты многочлена с
и т. д. А младших коэффициентов многочлена с процедура может быть удовлетворительной. Если же нужны все коэффициенты выходного многочлена с Каждая циклическая свертка, за исключением последней, дает
|
1 |
Оглавление
|