Однієї з модифікацій методу NRZ є метод біполярного кодування з альтернативною інверсією (Bipolar Alternate Mark Inversion, AMI). У цьому методі використовуються три рівні потенціалу — від¢ємний, нульовий і додатній. Для кодування логічного нуля використовується нульовий потенціал, а логічна одиниця кодується або додатнім потенціалом, або від¢ємним, при цьому потенціал кожної нової одиниці протилежний потенціалу попередньої.
Код AMI частково ліквідує проблеми постійної складової і відсутності самосинхронізації, що є властивими для коду NRZ. Це відбувається при передаванні довгих послідовностей одиниць. У цих випадках сигнал на лінії являє собою послідовність різнополярних імпульсів з тим же спектром, що й для коду NRZ, що передає нулі, і одиниці по черзі, тобто без постійної складової і з основною гармонікою N/2 Гц (де N — бітова швидкість передаванні даних). Довгі ж послідовності нулів також небезпечні для коду AMI, як і для коду NRZ — сигнал вироджується в постійний потенціал нульової амплітуди. Тому код AMI вимагає подальшого поліпшення, хоча задача спрощується — залишилося справитися тільки з послідовностями нулів.
У цілому, для різних комбінацій біт на лінії використання коду AMI приводить до більш вузького спектра сигналу, ніж для коду NRZ, а виходить, і до більш високої пропускної здатності лінії. Наприклад, при передаванні одиниць, що чергуються, і нулів основна гармоніка fo має частоту N/4 Гц. Код AMI надає також деяк можливості по розпізнаванню помилкових сигналів. Так, порушення строгого чергування полярності сигналів говорить про помилковий імпульс чи зникненні з лінії коректного імпульсу. Сигнал з некоректною полярністю називається забороненим сигналом (Signal Violation).
У коді AMI використовуються не два, а три рівні сигналу на лінії. Додатковий рівень вимагає збільшення потужності передавача приблизно на 3 ДБ для забезпечення тієї ж вірогідності прийому біт на лінії, що є загальним недоліком кодів з декількома станами сигналу в порівнянні з кодами, що розрізняють тільки два стани.
Потенційний код з інверсією при одиниці
Існує код, схожий на AMI, але тільки з двома рівнями сигналу. При передаванні нуля він передає потенціал, що був встановлений у попередньому такті (тобто не змінює його), а при передаванні одиниці потенціал інвертується на протилежний - NRZI. Цей код зручний у тих випадках, коли використання третього рівня сигналу дуже небажано, наприклад в оптичних кабелях, де стійко розпізнаються два стани сигналу — світло і темрява.
Для поліпшення потенційних кодів, подібних AMI і NRZI, використовуються два методи. Перший метод заснований на додаванні у вихідний код надлишкових біт, що містять логічні одиниці. Очевидно, що в цьому випадку довгі послідовності нулів перериваються і код стає самосинхронізуючим для будь-яких переданих даних. Зникає також постійна складова, а виходить, ще більш звужується спектр сигналу. Але цей метод знижує корисну пропускну здатність лінії, тому що надлишкові одиниці інформації не несуть. Інший метод заснований на попереднім «перемішуванні» вихідної.інформації таким чином, щоб імовірність появи одиниць і нулів ставала близькою. Пристрої, чи блоки, що виконують таку операцію, Називаються ск ремблерами (scramble -- смітник, безладна зборка). При скремблюванні використовується відомий алгоритм, тому приймач, одержавши двійкові дані, передає їх на дескремблер, що відновлює вихідну послідовність біт. Надлишкові біти при цьому по лінії не передаються. Обидва методи відносяться до логічного, а не фізичному кодуванню, тому що форму сигналів на лінії вони не визначають..
Біполярний імпульсний код
Крім потенційних кодів у мережах використовуються й імпульсні коди, коли дані представлені повним імпульсом чи його частиною — фронтом. Найбільш простим випадком такого підходу є біполярний імпульсний код, у якому одиниця представлена імпульсом однієї полярності, а нуль — іншої.
Кожен імпульс триває половину такту. Такий код характеризується відмінними самосинхронізуючими властивостями, але постійна складова може бути присутня, наприклад, при передаванні довгої послідовності чи одиниць нулів. Крім кого, спектр у нього ширше, ніж у потенційних кодів. Так, при передаванні всіх нулів і одиниць частота основної гармоніки коду буде дорівнює N Гц, що в два рази вище основної гармоніки коду NRZ і в чотири рази вище основної гармоніки коду AMI при передаванні одиниць і нулів, що чергуються. Через занадто широкий спектр біполярний імпульсний код використовується рідко.
Манчестерський код
Використовується в локальних мережах і донедавна найпоширенішим методом кодування був так званий манчестерський код. Він застосовується в технологіях Ethernet і Token Ring.
У манчестерському коді для кодування одиниць і нулів використовуються перепади потенціалу, тобто фронти імпульсу. При манчестерському кодуванні кожен такт поділяється на дві частини. Інформація кодується перепадами потенціалу, що відбуваються в середині кожного такту. Одиниця кодується перепадом від низького рівня до високого, а нуль — зворотним перепадом. На початку кожного такту в нього може відбуватися службовий перепад сигналу. Характеризується гарними сомосинхронізуючими властивостями. Смуга перепускання манчестерського коду вужче, ніж у біполярного імпульсного. У нього також немає постійної складовий, а основна гармоніка в гіршому випадку (при передаванні послідовності одиниць чи нулів) має частоту N Гц, а в кращому (при передаванні одиниць і нулів що чергуються) вона дорівнює N/2 Гц, як і в кодах AMI чи NRZ. У середньому ширина смуги манчестерського коду в півтора рази вужче, ніж у біполярного імпульсного коду, а основна гармоніка коливається поблизу значення 3N/4. Манчестерський код має ще одну перевагу перед біполярним імпульсним кодом. В останньому для передавання даних використовуються три рівні сигналу, а в манчестерському — два.
Потенційний код 2В 1Q
Потенційний код з чотирма рівнями сигналу для кодування даних. Це код 2В1Q, назва якого відбиває його суть — кожні два біти (2В) передаються за один такт сигналом, що має чотири стани (1Q). Парі біт 00 відповідає потенціал -2,5 В, парі біт 01 відповідає потенціал -0,833 В, парі 11—потенціал +0,833 В, а парі 10 — потенціал +2,5 В. При цьому способі кодування вимагаються додаткові заходи по боротьбі з довгими послідовностями однакових пар біт, тому що при цьому сигнал перетворюється в постійну складову. При випадковому чергуванні біт спектр сигналу в два рази вужче, ніж у кода NRZ, тому що при тій же бітовій швидкості тривалість такту збільшується в два рази. Таким чином, за допомогою коду 2В 1Q можна по однієї і тій же лінії передавати дані в два рази швидше, ніж за допомогою коду AMI чи NRZI. Однак для його реалізації потужність передавача повинна бути вище, щоб чотири рівні чітко розрізнялися приймачем на тлі завад