D
DimaA
Guest
Я моделирования модем в Matlab.
Дизайн данные Scrambler, я заметил, что вносит ошибок в системе.
Если один бит в потоке данных в дешифратор ввода неправильного ('0 'вместо '1' или наоборот), то есть 3 ошибки бита на выходе descrambler.It означает, что Scrambler добавляет два бита ошибки в системе.Из-за этого, существует серьезная деградация производительности системы, примерно 2 дБ.Не используется кодом коррекции ошибок.
Разве это ОКЕЙ ситуацию?Неужели следует добавить ошибки бита, если есть ошибка на входе?
Таковы мои кода для Scrambler и дешифратор:
Скремблер:
Код:% scramler основанных на примитивных полиномов 1 X ^ 14 X ^ 15
Функция Scrambler OUT = (X)
N = длина (х);% Scrambler инициализации раздела
если X (1:2) == [0 0], Y (1:15) = [1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]; конца;
если X (1:2) == [0 1], Y (1:15) = [0 1 1 1 0 0 0 0 1 1 1 1 1 1 1]; конца;
если X (1:2) == [1 0], Y (1:15) = [0 1 1 1 1 1 1 1 0 0 0 0 0 0 0] END;
если X (1:2) == [1 1], Y (1:15) = [0 1 1 1 1 0 0 0 0 0 0 0 1 1 1]; конца;Выход (1: N) = 0;
для I = 1: N
вывода (I) = XOR (X (I), XOR (Y (15), Y (14)));
Y (15: -1:2) = Y (14: -1:1); смена регистра%
Y (1) = вывода (I);цели;
OUT = выход;
Дизайн данные Scrambler, я заметил, что вносит ошибок в системе.
Если один бит в потоке данных в дешифратор ввода неправильного ('0 'вместо '1' или наоборот), то есть 3 ошибки бита на выходе descrambler.It означает, что Scrambler добавляет два бита ошибки в системе.Из-за этого, существует серьезная деградация производительности системы, примерно 2 дБ.Не используется кодом коррекции ошибок.
Разве это ОКЕЙ ситуацию?Неужели следует добавить ошибки бита, если есть ошибка на входе?
Таковы мои кода для Scrambler и дешифратор:
Скремблер:
Код:% scramler основанных на примитивных полиномов 1 X ^ 14 X ^ 15
Функция Scrambler OUT = (X)
N = длина (х);% Scrambler инициализации раздела
если X (1:2) == [0 0], Y (1:15) = [1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]; конца;
если X (1:2) == [0 1], Y (1:15) = [0 1 1 1 0 0 0 0 1 1 1 1 1 1 1]; конца;
если X (1:2) == [1 0], Y (1:15) = [0 1 1 1 1 1 1 1 0 0 0 0 0 0 0] END;
если X (1:2) == [1 1], Y (1:15) = [0 1 1 1 1 0 0 0 0 0 0 0 1 1 1]; конца;Выход (1: N) = 0;
для I = 1: N
вывода (I) = XOR (X (I), XOR (Y (15), Y (14)));
Y (15: -1:2) = Y (14: -1:1); смена регистра%
Y (1) = вывода (I);цели;
OUT = выход;