Псевдослучайная двоичная последовательность
Псевдослучайная двоичная последовательность (PRBS), псевдослучайный двоичный код или псевдослучайный битовый поток — это двоичная последовательность , которая, хотя и генерируется с помощью детерминированного алгоритма , трудно предсказать. [ 1 ] и демонстрирует статистическое поведение, подобное действительно случайной последовательности. Генераторы PRBS используются в телекоммуникациях , например, для преобразования аналога в информацию. [ 2 ] но также в шифровании , моделировании , методе корреляции и времяпролетной спектроскопии . Наиболее распространенным примером является последовательность максимальной длины, генерируемая (максимальным) регистром сдвига с линейной обратной связью (LFSR). Другими примерами являются последовательности Голда (используемые в CDMA и GPS ), последовательности Касами и последовательности JPL , все они основаны на LFSR.
В телекоммуникациях псевдослучайные двоичные последовательности известны как псевдослучайные шумовые коды ( PN или PRN-коды ) из-за их применения в качестве псевдослучайного шума .
Подробности
[ редактировать ]Бинарная последовательность (БС) – это последовательность из биты, т.е.
- для .
БС состоит из те и нули.
BS является псевдослучайной двоичной последовательностью (PRBS), если [ 3 ] его автокорреляционная функция , определяемая выражением
имеет только два значения:
где
называется рабочим циклом PRBS, аналогично рабочему циклу непрерывного сигнала. Для последовательности максимальной длины , где , рабочий цикл равен 1/2.
PRBS является «псевдослучайной», потому что, хотя она на самом деле детерминирована, она кажется случайной в том смысле, что значение элемент не зависит от значений любого другого элемента, подобно реальным случайным последовательностям.
PRBS можно растянуть до бесконечности, повторяя его после элементов, но тогда оно будет циклическим и, следовательно, неслучайным. Напротив, источники действительно случайных последовательностей, такие как последовательности, генерируемые радиоактивным распадом или белым шумом , бесконечны (нет заранее определенного конца или периода цикла). Однако в результате такой предсказуемости сигналы PRBS могут использоваться в качестве воспроизводимых шаблонов (например, сигналы, используемые при тестировании путей передачи телекоммуникационных сигналов). [ 4 ]
Практическая реализация
[ редактировать ]Псевдослучайные двоичные последовательности можно генерировать с помощью регистров сдвига с линейной обратной связью . [ 5 ]
Некоторые общие [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] последовательность, генерирующая монические полиномы :
- ПРБС7 =
- ПРБС9 =
- ПРБС11 =
- ПРБС13 =
- ПРБС15 =
- ПРБС20 =
- ПРБС23 =
- ПРБС31 =
Пример генерации последовательности «PRBS-7» может быть выражен на языке C как
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
int main(int argc, char* argv[]) {
uint8_t start = 0x02;
uint8_t a = start;
int i;
for (i = 1;; i++) {
int newbit = (((a >> 6) ^ (a >> 5)) & 1);
a = ((a << 1) | newbit) & 0x7f;
printf("%x\n", a);
if (a == start) {
printf("repetition period is %d\n", i);
break;
}
}
}
В данном конкретном случае «ПРБС-7» имеет период повторения 127 значений.
Обозначения
[ редактировать ]Обозначение PRBS k или PRBS -k (например, «PRBS7» или «PRBS-7») указывает на размер последовательности. это максимальное число [ 4 ] : §3 битов, находящихся в последовательности. K данных в указывает размер уникального слова последовательности. Если вы сегментируете N бит данных на каждое возможное слово длиной k , вы сможете составить список всех возможных комбинаций нулей и единиц для k-битного двоичного слова, за исключением слова, состоящего только из 0. [ 4 ] : §2 Например, PRBS3 = «1011100» может быть сгенерирован из . [ 6 ] Если вы возьмете каждую последовательную группу трехбитовых слов в последовательности PRBS3 (переходя к началу для последних нескольких трехбитных слов), вы обнаружите следующие 7 расположений слов:
"1011100" → 101 "1011100" → 011 "1011100" → 111 "1011100" → 110 "1011100" → 100 "1011100" → 001 (requires wrap) "1011100" → 010 (requires wrap)
Все эти 7 слов возможные ненулевые 3-битные двоичные слова, не в числовом порядке. То же самое справедливо для любого PRBS k , а не только PRBS3. [ 4 ] : §2
См. также
[ редактировать ]- Генератор псевдослучайных чисел
- Золотой код
- Дополнительные последовательности
- Тест частоты битовых ошибок
- Псевдослучайный шум
- Регистр сдвига с линейной обратной связью
Ссылки
[ редактировать ]- ^ «Генерация псевдослучайной битовой последовательности PRBS» . ТТи . Проверено 21 января 2016 г.
- ^ Дапонте, Паскуале; Де Вито, Лука; Ядарола, Грация; Рапуано, Серджио. «Неидеальность PRBS, влияющая на преобразователи аналога в информацию со случайной демодуляцией» (PDF) .
- ^ Насзоди, Ласло. «Статьи о корреляции и калибровке» . Архивировано из оригинала 11 ноября 2013 года.
- ^ Jump up to: а б с д «Рекомендация МСЭ-Т O.150» . Октябрь 1992 года.
- ^ Пол Х. Барделл, Уильям Х. Макэнни и Джейкоб Савир, «Встроенный тест для СБИС: псевдослучайные методы», John Wiley & Sons, Нью-Йорк, 1987.
- ^ Jump up to: а б Томлинсон, Курт (4 февраля 2015 г.). «PRBS (псевдослучайная двоичная последовательность)» . Блупист . Проверено 21 января 2016 г.
- ^ Купман, Филип. «Условия обратной связи по максимальной длине LFSR» . Проверено 21 января 2016 г.
- ^ «Какие полиномы PRBS7, PRBS15, PRBS23 и PRBS31 используются в Altera Transceiver Toolkit?» . Альтера . 14 февраля 2013 года . Проверено 21 января 2016 г.
- ^ Риккарди, Даниэле; Новеллини, Паоло (10 января 2011 г.). «Программируемый атрибутами генератор и средство проверки PRBS (XAP884)» (PDF) . Ксилинкс . Таблица 3: Конфигурация полиномов PRBS, наиболее часто используемых для тестирования последовательных линий . Проверено 21 января 2016 г.
- ^ «О.150: Общие требования к приборам для измерения характеристик оборудования цифровой передачи» . 06.01.1997.
Внешние ссылки
[ редактировать ]- Последовательность OEIS A011686 (двоичная m-последовательность: расширение обратной величины) — битовая последовательность для PRBS7 =