Преобразуйте вектор маски в величину сдвига для настройки сдвигового регистра
shift = mask2shift(prpoly,mask)
shift = mask2shift(prpoly,mask)
возвращает сдвиг, эквивалентный маске, для линейного регистра сдвига с обратной связью, соединения которого заданы примитивным полиномом prpoly
. The prpoly
Вход можете иметь один из следующих форматов:
Двоичный вектор, который приводит коэффициенты примитивного полинома в порядке убывания степеней
Целочисленный скаляр, чье двоичное представление даёт коэффициенты примитивного полинома, где наименее значимым битом является постоянный член
The mask
вход является двоичным вектором, длина которого является степенью примитивного полинома.
Примечание
Чтобы сэкономить время, mask2shift
не проверяет это prpoly
примитив. Если это не примитив, выход не имеет значения. Чтобы найти примитивные полиномы, используйте primpoly
или см. [2].
Для получения дополнительной информации о том, как маски и сдвиги связаны с генераторами псевдонозных последовательностей, см. shift2mask
.
Если A - корень примитивного полинома, а m (A) - многочлен маски, оцененный в A, эквивалентный сдвиг s решает уравнение As = m (A). Чтобы интерпретировать векторную mask
как полином, обрабатывайте mask
как список коэффициентов в порядке нисходящих степеней.
[1] Lee, J. S., and L. E. Miller, CDMA Systems Engineering Handbook, Boston, Artech House, 1998.
[2] Simon, Marvin K., Jim K. Omura, et al., Spread Spectrum Communications Handbook, New York, McGraw-Hill, 1994.
isprimitive
| log
| primpoly
| shift2mask