Перейти к содержанию
    

Последовательности с хорошей АКФ длины 2^N

Доброго времени суток.

Допустим, есть LFSR. АКФ его выходной последовательности в некотором смысле хороша - она содержит только один пик.

Однако ее длина 2^N-1.

И теперь вопрос. Как создать последовательность с хорошей АКФ (в описанном выше смысле), но при этом чтобы ее длина была 2^N. Понятное дело, что можно, например, просто добавить один нолик в последовательность. Да, АКФ ухудшится, появятся боковые лепестки. Но может быть есть научно правильный способ добавления этого нолика с лучшим результатом? Или вообще другой способ генерации такой последовательности?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

36 minutes ago, Rst7 said:

Как создать последовательность с хорошей АКФ (в описанном выше смысле), но при этом чтобы ее длина была 2^N.

А у Голея 32, 64, 128 вроде один пик в Матлабе, правда не знаю АКФ ли при этом...

 

wlanGolaySequence

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

16 hours ago, _4afc_ said:

А у Голея 32, 64, 128 вроде один пик в Матлабе, правда не знаю АКФ ли при этом...

Там хитро. Там у суммы АКФ двух последовательностей хорошее поведение. Но это не совсем то, что мне нужно.

1 hour ago, Cianid said:

Из LFSR не сделать период больше чем 2^N-1. Мы ведь не можем в качестве seed использовать 0. 

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

Но может быть есть какой-то более толковый способ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, Rst7 сказал:

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

За давностью лет уже забылось, по-моему, в стандарте IS-95 было прямо написано, что надо добавлять один ноль к максимальной последовательности нулей. Генератор длинного кода имел полином 42 степени, после 41 нуля вставлялся ещё один. С генераторами I и Q то же самое.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, Rst7 said:

Но может быть есть какой-то более толковый способ?

LFCR удобен тем, что можно не хранить последовательность, а генерить по известному закону. 
Если есть возможность хранить последовательность, то можно найти подходящую по АКФ последовательность случайных бит перебором или поиском. 
Просто генерим случайные последовательности через randi() в матлабе, вычисляем АКФ и выбираем лучшую.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, soldat_shveyk said:

LFSR удобен тем, что можно не хранить последовательность, а генерить по известному закону. 

И не только этим. :)

 

Wiki:

Quote

Периодическая АКФ любой М-последовательности имеет постоянный уровень боковых лепестков, равный -1/N.

 

Кон и Лемпель (1977) обнаружили взаимоотношение между М-последовательностями и преобразованием Адамара, благодаря чему стало возможным вычисление автокорреляционной функции М-последовательности с помощью быстрого алгоритма наподобие БПФ.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

15.06.2021 в 19:49, _4afc_ сказал:

А у Голея 32, 64, 128 вроде один пик в Матлабе, правда не знаю АКФ ли при этом...

Там АКФ все верно:)

wlanGolaySequence

 

 

Изменено пользователем GrishaRezn

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, GrishaRezn said:

Там АКФ все верно:)

АКФ, но не совсем последовательности.

	[Ga,Gb] = wlanGolaySequence(32);
	figure stem(xcorr(Ga)+xcorr(Gb))
	

 

И даже подписано, что The sum of the autocorrelations is a dirac delta function.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 minutes ago, Rst7 said:

АКФ, но не совсем последовательности.

 


	[Ga,Gb] = wlanGolaySequence(32);
	figure stem(xcorr(Ga)+xcorr(Gb))
	

 

 

И даже подписано, что The sum of the autocorrelations is a dirac delta function.

Почему нельзя пропустить через канал только Ga или [ Ga Gb ] ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 minutes ago, _4afc_ said:

Почему нельзя пропустить через канал только Ga или [ Ga Gb ] ?

Только Ga (или только Gb) не сильно отличается по критерию от m-последовательности с добавленным нулем. Кажется с нулем даже лучше выходит, но я перепроверю.

А идея пропустить [ Ga Gb ] - это в смысле последовательно?

7 hours ago, soldat_shveyk said:

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

Представляете себе объем вычислений хотя бы для 2^7? Ну в смысле полного перебора, случайно получить хорошую последовательность - очень малая вероятность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 minutes ago, Rst7 said:

А идея пропустить [ Ga Gb ] - это в смысле последовательно?

Да. А что нельзя?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

29 minutes ago, _4afc_ said:

Да. А что нельзя?

Надо попробовать, что там с АКФ такой последовательности получится, интересно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

21 час назад, Rst7 сказал:

Надо попробовать, что там с АКФ такой последовательности получится, интересно.

Если последовательно пропускать, то одну последовательность нужно будет например в FIFO сохранить, а потом считывать синхронно со второй, потом вход и выход FIFO на согласованный фильтры или корреляторы( если опору генерировать будете) и затем в сумматор. Но на мой, хоть и не опытный взгляд, в QPSK лучше всего - две последовательности в два канала обработки

Изменено пользователем GrishaRezn

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@Rst7 а вам обязательно нужна последовательность с алфавитом {-1, 1}? Существуют полифазные последовательности с идеальной периодической АКФ и довольно хорошей апериодической АКФ. Например, те же последовательности Задова-Чу: https://en.m.wikipedia.org/wiki/Zadoff–Chu_sequence

https://www.ieee802.org/16//tge/contrib/C80216e-04_241r1.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...