Скремблювання, Комп’ютерні мережі
Скремблювання полягає в побитном обчисленні результуючого коду на підставі бітів вихідного коду та отриманих у попередніх тактах бітів результуючого коду. Наприклад, скремблер може реалізовувати таке співвідношення:
Тут Bi - двійкова цифра результуючого коду, отримана на г-му такті роботи скремблера,Ai - двійкова цифра вихідного коду, що надходить на г-му такті на вхід скремблера,Bi-3 іBi-5 — двійкові цифри результуючого коду, отримані на попередніх тактах роботи скремблера (відповідно на 3 і 5 тактів раніше поточного такту) і об'єднані операцією виключає АБО (складання за модулем 2).

Таким чином, на виході скремблера з'явиться код 110001101111, в якому немає послідовності з шести нулів, що була присутня у вихідному коді. Після отримання результуючої послідовності приймач передає її дескреблеру, який відновлює вихідну послідовність на підставі зворотного співвідношення:
Різні алгоритми скремблювання відрізняються кількістю доданків, що дають цифру результуючого коду, та зсувом між доданками. Так, у мережах ISDN при передачі даних від мережі до абонента використовується перетворення зі зсувами на 5 і 23 позиції, а при передачі даних від абонента в мережу - зі зсувами на 18 та 23 позиції.
Існують і простіші методи боротьби з послідовностями одиниць, які також відносяться до класу скремблювання. Для покращення біполярного коду AMI-використовуються два методи, засновані на штучному спотворенні послідовності нулів забороненими символами.
Рисунок 1 ілюструє використання методів B8ZS (Bipolar with 8-Zeros Substitution) та HDB3 (High-Density Bipolar 3-Zeros) для коригування коду AMI. Вихідний код складається здвох довгих послідовностей нулів: у першому випадку - з 8, а в другому з 5.
Код B8ZS виправляє лише послідовності, що складаються з 8 нулів. Для цього він після перших трьох нулів замість п'яти нулів, що залишилися, вставляє п'ять цифр: V-1*-0- V-1*. Тут V означає сигнал одиниці, забороненої (Violations) для даного такту полярності, тобто сигнал, що не змінює полярність попередньої одиниці, 1* - сигнал одиниці коректної полярності (знак зірочки відзначає той факт, що у вихідному коді в цьому такті була не одиниця, а нуль). В результаті на 8 тактах приймач спостерігає 2 спотворення - дуже малоймовірно, що це відбувається через шум на лінії або інших збоїв передачі. Тому приймач вважає такі порушення кодуванням 8 послідовних нулів та після прийому замінює їх вихідними 8 нулями. Код B8ZS побудований так, що його постійна складова дорівнює нулю за будь-яких послідовностей двійкових цифр.

Мал. 1. Коди B8ZS та HDB3
Код HDB3 виправляє будь-які чотири суміжні нулі у вихідній послідовності. Правила формування коду HDB3 складніші, ніж коду B8ZS. Кожні чотири нулі замінюються чотирма сигналами, в яких є один сигнал V. Для придушення постійної складової полярність V сигналу чергується при послідовних замінах.
Крім того, для заміни використовуються два зразки чотиритактових кодів. Якщо перед заміною вихідний код містив непарну кількість одиниць, задіюється послідовність 000V, а якщо число одиниць було парним - послідовність 1 * 00V.
Покращені потенційні коди мають досить вузьку смугу пропускання для будь-яких послідовностей одиниць і нулів, які зустрічаються в даних, що передаються. На рис. 2 наведено спектри сигналів різних кодів, отримані при передачі довільнихданих, у яких різні поєднання нулів та одиниць у вихідному коді рівноймовірні. При побудові графіків спектр усереднювався за можливими наборами вихідних послідовностей. Природно, що результуючі коди можуть мати й інший розподіл нулів та одиниць. З малюнка видно, що потенційний код NRZ має гарний спектр з одним недоліком - у нього є постійна складова. Коди, отримані з потенційного коду шляхом логічного кодування, мають більш вузький спектр, ніж манчестерський код, навіть при підвищеній тактовій частоті (на малюнку спектр коду 4В/5В повинен був приблизно збігатися з кодом B8ZS, але він зрушений в область вищих частот, оскільки його тактова частота підвищена на 1/4 проти іншими кодами). Цим пояснюється переважне застосування в сучасних технологіях, подібних до FDDI, Fast Ethernet, Gigabit Ethernet, ISDN тощо, потенційних надлишкових і скрембованих кодів замість манчестерського та біполярного імпульсного коду.

Мал. 2 Спектри потенційних та імпульсних кодів