Виберіть свою мову

У статті нагадуються загальні принципи цифрового кодування мови в електрозв'язку. Автор досить докладно висвітлює досить складні процеси кодування, які застосовуються в цифрових системах стільникового зв'язку. Теоретичні дослідження і оригінальні інженерні рішення дозволили створити елегантний малогабаритний абонентський радіотелефон. Про що відбуваються в ньому складних процесах, про яких користувачі і навіть чимало фахівців електрозв'язку навіть не здогадуються, читач дізнається з цієї статті.

Загадки мовних сигналів привертали увагу дослідників задовго до появи електричного зв'язку. Ще в XVIII столітті один з найвидатніших математиків петербурзький академік Леонард Ейлер (1707-1783) в листі німецькій принцесі від 16 червня 1761 р. писав: "Спорудження машини, яка б була здатна видавати гласи промов наших з усіма змінами, що було б, без сумніву, найважливіша винахід... Складення такої машини мені здається неможливим".

Ідея винаходу говорить машини хвилювала уми багатьох творців, не тільки прагнули створити її в тому вигляді, як уявляв собі Ейлера, але і як засіб передачі мови на відстань. Наприклад, конструюванням такої машини займався винахідник телефону А. Р. Белл (1847-1922). Однак у кінцевому рахунку виявилося, що передачу мови на відстань можна здійснити і без подібної машини. Це було досягнуто досить просто. З допомогою мікрофона коливання повітря, що переносять мова, перетворювалися в коливання електричного струму, які передавалися по проводах, а на приймальному кінці з допомогою телефону вони знову перетворювали в коливання повітря.

Такий метод передачі називається аналоговим через очевидну аналогію між коливаннями повітря, що переносять звук, і електричними коливаннями, передають цей звук. Дослідження аналогової передачі мови з амплітудною модуляцією показали, що для нормальної якості відтворення мови достатня смуга частот від 300 до 3400 Гц. Така смуга була прийнята в якості міжнародного стандарту, і на його основі побудовано всесвітня мережа телефонного зв'язку. Принцип дії цієї мережі сьогодні знайомий не тільки кожному зв'язківцеві, але і широкій публіці.

Цифрова передача мови в мережах проводового зв'язку

Докорінні зміни у підходах до організації телефонного зв'язку виникли при переведення засобів зв'язку на цифрову техніку. Переваги цифрових методів передачі широко відомі. Нагадаємо лише найважливіше з них - цифрова техніка дозволяє забезпечити будь-яку наперед задану якість зв'язку. Для цифрової передачі мови необхідно виконати аналого-цифрове перетворення мовного сигналу: піддати аналоговий сигнал дискретизації, квантованию і кодування. Сукупність цих операцій називається імпульсно-кодовою модуляцією (ІКМ). Для точного опису форми мовного сигналу, згідно з теоремою Котельникова, його дискретизацію доводиться проводити з частотою 8 кГц (тобто брати відліки через кожні 125 мкс), а для отримання нормальної якості відтворення мови квантовать кожен відлік за шкалою, розбитою на 8192 рівня (при виборі рівномірної шкали квантування). Щоб закодувати кожне значення відліку з допомогою двійкового числа, буде потрібно 13 розрядів.

В результаті для передачі телефонної розмови за допомогою послідовності двійкових імпульсів необхідна швидкість 8х13=104 кбіт/с (що відповідає при оптимальному кодуванні смузі частот 52 кГц). Порівнюючи це число з смугою частот в 3100 Гц, яка потрібна для аналогової передачі, не можна не здивуватися колосального росту необхідної смуги, яким доводиться розплачуватися за переваги цифрової передачі. Природно спробувати при реалізації цифрової системи передачі знизити швидкість передачі.

Перший крок у цьому напрямку досить очевидний. Квантування на 213 рівнів виявляється необхідним тому, що рівні аналогових мовних сигналів можуть змінюватися в діапазоні 60 дБ. При цьому сигнали високого рівня при рівномірній шкали квантування квантуются з таким же кроком, що і сигнали низького рівня. Але так як сприйняття сигналів органами слуху людини пропорційно логарифму рівня сигналу, то природно було б сигнали високого рівня квантовать більше грубо, а низького рівня - більш точно. Застосовуючи нелінійне квантування з використанням логарифмічного закону, можна обійтися вісьмома розрядами на відлік, зберігши майже таку ж якість передачі. В результаті швидкість передачі двійкових розрядів виявиться рівною 64 кбіт/с. Саме ця швидкість отримала саме широке поширення, вона зафіксована в рекомендації МККТТ С. 711, і на ній працює апаратура ІКМ у багатьох країнах.

Можна зменшувати швидкість далі?

Аналоговий сигнал має велику надмірність. Це дозволяє передбачати черговий відлік і передавати тільки різницю між фактичним і передвіщеним значення кожного відліку. Якщо застосувати хорошу схему передбачення, зміна збільшення амплітуди сигналу виявиться менше зміни амплітуди самого сигналу, що призведе до зменшення кількості переданої інформації. На цьому принципі будується диференціальна ІКМ (ДІКМ) і адаптивна диференціальна ІКМ (АДИКМ), яка дозволяє знизити швидкість передачі мови до 32 кбіт/с і нижче за рахунок подальшого ускладнення прийомо-передавальної апаратури. Продовжуючи ускладнювати апаратуру, можна довести швидкість передачі мови до 100-300 біт/с. Можна уявити собі, наприклад, на передавальній стороні перетворювач мови в текст, а на приймальній стороні - читає машину.

Відомі шляхи подальшого зниження швидкості передачі мови, але не будемо на цьому зупинятися. Справа в тому, що апаратура цифрової передачі мовлення зі швидкістю 64 кбіт/з усіх задовольнила тому, що вона виявилася працездатною при використанні найбільш простих симетричних кабелів з парної скручуванням. Апаратура ІКМ-30 почала свій тріумфальний хід з ущільнення з'єднувальних ліній між міськими телефонними станціями. Там, де раніше по кабельній парі можна було організувати сполучну лінію для передачі лише однієї розмови, апаратура ІКМ-30 дозволила організувати по цій парі передачу 30 розмов. Про кращому використання такої пари з допомогою аналогової апаратури багатоканального зв'язку не могло бути і мови.

Пізніше з'явилися апаратуру ІКМ-120 та інші високопродуктивні системи, працюють за коаксіальних кабелях і волоконним світловода, і гострота питання про зменшення швидкості передачі розмовних сигналів нижче 64 кбіт/с в мережах дротового зв'язку практично була знята. Навіть численні розробки апаратури цифрової передачі зі швидкістю 32 кбіт/с, реалізовані в багатьох країнах на основі принципу АДИКМ (в тому числі розробка, виконана в нашій країні під керівництвом М. У. Поляка), не отримали достатньо широкого застосування. Баланс між збільшенням пропускної спроможності каналоутворюючої апаратури і складністю кінцевого обладнання проводового зв'язку поки так і не схилився на користь першого рішення.

Кодування мовлення в цифрових стільникових системах радіозв'язку

Зовсім інші перспективи відкрилися в кінці 1980-х - початку 1990-х років, коли почали розвиватися стільникові системи цифрової радіотелефонного зв'язку. На відміну від дротяних мереж, де розширення пропускної здатності можливо за рахунок прокладання нових ліній, тобто відновлення ресурсів пропускної спроможності, радіомережах діє жорсткий закон тісноти в ефірі, і доводиться мати справу з поновлюваних ресурсом радіочастот. Щоправда, ідея стільникового зв'язку якраз і полягає у відновленні ресурсу радіочастот шляхом повторення частоти передачі на території, до якої не доходить сигнал тієї ж частоти від заважає радіостанції. Але можливості такого відновлення ресурсу і тут обмежені, тому подальше ускладнення апаратури заради зниження швидкості передачі виявляється виправданим.

Наприклад, у прийнятій в більшості країн Європи системи цифрового стільникового зв'язку GSM стандартні швидкості передачі мови становлять 13 і 6,5 кбіт/с. Для здійснення подібної системи передачі довелося звернутися до старої ідеї машини Ейлера і більш глибокого проникнення в механізм мовотворення.

Як відомо, один з найважливіших результатів сучасної теорії передачі інформації полягає в рекомендації поділу завдань кодування джерела і кодування каналу. У завдання кодування джерела інформації входить опис переданого повідомлення в максимально економною формою, тобто видалення надмірності в повідомленні. Отримане таким чином стисле повідомлення стає більш вразливим до впливу перешкод і може виявитися спотвореними при передачі. Тому після кодування джерела застосовуються кодування каналу, в завдання якого входить захист переданого повідомлення від перешкод. Кодування каналу вимагає внести в передане повідомлення деяку надмірність, але не випадкову, яка була присутня в первинному повідомленні, а строго обґрунтовану теоретично і яка гарантує обумовлений якість передачі.

Досі ми розглядали лише завдання кодування джерела, до яких тепер підійдемо з більш загальних позицій.

Отже, є цифрова версія аналогового мовного сигналу, тобто функція, описує, наприклад, закон зміни струму в часі. З такого сигналу потрібно спробувати видалити надмірність. Цю задачу можна розв'язувати кількома методами. Один з них - спробувати знайти надмірність шляхом чисто математичного аналізу розглянутої функції. Інший шлях вирішення завдання - аналіз акустичних характеристик цієї функції (з точки зору її сприймання органами слуху). Нарешті, можна шукати надмірність моделюванням самого процесу мовотворення. Саме останній з перелічених методів знайшов застосування в сучасних системах цифрового радіозв'язку.

Механізм утворення звуків мови полягає в тому, що багатий гармоніками звук голосових зв'язок, змінює свою силу й основну частоту, піддається подальшій обробці в порожнині рота. Остання працює, по-перше, як резонатор, який, перебудовуючись, виділяє деякі частоти - форманти, визначальні відмінності між голосними звуками. По-друге, рухи язика, зубів і губ модулюють звук, виробляючи різні приголосні. У 1930-х роках в Телефонних лабораторіях Белла (США) була побудована машина по ідеї Ейлера, принципи дії якої грунтувалися на спробах моделювання роботи органів мовлення людини.

Для того щоб синтезувати мова на приймальному кінці системи зв'язку, потрібні генератор звукової частоти з багатим спектром, генератор білого шуму, набір формантных фільтрів (їх кількість невелика, так як голосних звуків трохи, а кожен з них досить добре визначається двома формантами) і модулюють схеми. Маючи таким комплектом апаратури на приймальному кінці, можна передавати по каналу зв'язку не мовний сигнал, а лише команди, що керують процесом синтезу мови. Таким чином, практична задача зводиться до того, щоб знайти спосіб генерування потрібних команд. Саме це завдання і вирішується конструкторами стільникових телефонів.

В системі GSM перших випусків вихідний цифровий потік мовного сигналу зі швидкістю передачі 104 кбіт/с розбивається на окремі блоки по 160 відліків, які записуються. Кожен з таких блоків займає проміжок часу 20 мс (інакше кажучи, запам'ятовуються послідовності за 160х13=2080 розрядів). Зареєстровані послідовності піддаються аналізу, в результаті якого для кожної з них знаходяться вісім коефіцієнтів фільтрації, визначають відповідні резонанси, і збудливий сигнал. Саме ця інформація передається приймача, який відтворює по ній вихідний мовленнєвої сигнал на зразок того, як це відбувається в органах мовлення людини (цей орган як би налаштовується за допомогою восьми параметрів, а потім за його порушення виходить звук).

Однак згаданий аналіз поширюється на порівняно короткі відрізки часу і не може виявити довгі голосні звуки, захоплюючі сусідні блоки. Тому для усунення надмірності при проголошенні довгих голосних застосовується довгострокове передбачення. З цією метою в передавачі запам'ятовуються передані послідовності тривалістю по 15 мс, з якими порівнюються поточні послідовності. З вже переданих вибирається послідовність, що має найбільшу кореляцію з поточної (тобто більше інших схожа на поточну), і передається тільки різниця між поточною та обраної послідовностями. Оскільки записані в передавачі послідовності приймача відомі, потрібно передати лише вказівник про те, з якою із записаних послідовностей проведено порівняння. Таким чином досягається подальше скорочення обсягу переданої інформації. В результаті цієї обробки виходить блок цифрового мовного сигналу тривалістю 20 мс, що містить 260 розрядів і має швидкість передачі всього 13 кбіт/с (тобто у вісім разів нижче вихідної). Описана процедура отримала назву регулярного імпульсного збудження з довгостроковим прогнозом (англійське скорочення PRE-LTR, яке розшифровується у вигляді Regular Pulse Excitation - Long Term Prediction).

На наступному етапі вступає в дію кодування каналу, завданням якого є захист від перешкод в каналі зв'язку. Сучасна техніка кодування заснована на глибоких ідеї алгебри і теорії ймовірності. На основі цих ідей розроблені різноманітні і досить ефективні методи кодування, у вирішальні кожному конкретному випадку певні завдання. Обмежимося коротким тут розглядом деяких ідей, використаних в системі GSM.

Кодова захист може служити лише для виявлення факту появи помилки, або для виправлення тих помилок. Першу можливість здійснити набагато простіше, але і користі від неї менша, оскільки в такому випадку потрібно запитувати повторну передачу блоку повідомлення, в якому виявлена помилка, або як-небудь інакше враховувати наявність помилки. Оскільки окремі розряди в цифровому мовленнєвому сигнал, отриманий в ході описаних вище процедур кодування джерела, мають неоднакову важливість, їх поділяють на три підкласи і при кодуванні каналу піддають різним методам захисту. З 260 розрядів одержуваного блоку найбільш важливими є розряди, які несуть інформацію про параметри фільтрації, про амплітуді сигналу блоку і про параметри довгострокового передбачення. Ці розряди належать до так званого підкласу Ia (50 розрядів). Потім йде підклас Ib (132 розряду, що містять вказівники та інформацію про імпульсах регулярного порушення, а також деякі параметри довгострокового передбачення). Інші 78 розрядів належать до класу II.

Для захисту описаного блоку застосовуються два способи кодування. По-перше, використовується блоковий код, службовець для виявлення помилок, які залишаються невиправленими. Цей код відноситься до класу циклічних, в яких кожна кодова комбінація виходить циклічною перестановкою елементів. При кодуванні цим кодом до розрядів підкласу Ia додається ще три перевірочних розряду, за яким декодер може виявити, чи містить цей підклас невиправлені помилки. Якщо декодер виявляє в розрядах підкласу Ia помилки у передачі, весь розмовний кадр з 260 розрядів скидається. В цьому випадку втрачений кадр відтворюється за допомогою інтерполяції на основі інформації про попередньому кадрі. Було встановлено, що при такому рішенні якість передачі виявляється краще, ніж у випадку відтворення помилкових розрядів підкласу Ia. По-друге, застосовується згортковий код, що виправляє помилки. Таку назву коду пояснюється математичної операцією згортки, що застосовується до функцій, описує обробку кодованої послідовності розрядів. На відміну від блокового коду згортковий код є безперервним у тому сенсі, що при його застосування процеси кодування і декодування чиняться над фіксованими блоками, а над безперервно йде послідовністю символів.

Згортковий код застосовується як до розрядів підкласу Ia разом з перевірочними розрядами, так і до розрядів підкласу Ib. Ці дві послідовності об'єднуються і збільшуються на чотири розряду (див. нижче на рис. 2), що приймають нульові значення. Останні служать для повернення кодера у початковий стан після виконання кодування. Застосовуваний код характеризується параметрами r=1/2 і К=5. Коефіцієнт r=1/2 говорить про те, що на кожен розряд, що надходить на вхід кодера, кодованої послідовності виходить рівно за два розряду, а До=5 позначає довжину зв'язку, на яку поширюється операція згортки. Ці характеристики можна усвідомити за схемою згорткового кодування, показаної на рис. 1, де наведено також схема додавання по модулю 2 (логічна операція "виключаюче АБО"). Таким чином, в результаті кодування вступників 189 розрядів виходить 378 розрядів, і до них додаються незахищені розряди II класу, в результаті чого загальна довжина блоку виявляється рівною 456 розрядами (рис. 2). Це становить рівно вісім підблоків по 57 розрядів. З подібних підблоків формуються спалаху радіопередачі з тимчасовим поділом.

Справжня стаття присвячена питанням кодування мовних сигналів, і, як можна зрозуміти з описаного, на частку процесора, розміщуваного в малогабаритній телефонній трубці, доводиться досить великий обсяг їх цифрової обробки. Проте цим завдання процесора далеко не вичерпуються. Як відомо, замість передачі мови система стільникового зв'язку дозволяє організувати канал передачі даних, який кодується зовсім за іншими правилами. Але, крім логічних каналів передачі корисної (оплачуваної) інформації, в стільниковому телефоні організовується велика кількість логічних каналів передачі сигналів управління. До кожному з таких логічних каналів пред'являються специфічні вимоги кодування інформації, і відповідно кожний такий канал вносить свою частку в навантаження процесора.

Загальне уявлення про схеми кодування, а також формування спалахів для передачі всіх логічних каналів в системі радіотелефонного зв'язку дає рис. 3.

Тут на верхньому рівні показані десять різних логічних каналів із зазначенням розмірів блоків повідомлень в цих каналах (у вигляді конкретних цифр або буквених позначень - P0 , N0 та ін. - там, де ці цифри можуть змінюватися). На наступному рівні показаний перший етап кодування для різних логічних каналів із зазначенням числа розрядів вихідної послідовності та послідовності, отриманої після кодування. Якщо для мовного каналу застосовується циклічний код, виявляє помилки, то для інших каналів застосовуються різні циклічні коди, що виправляють помилки, у тому числі циклічний код Файра, виправляє серії помилок. На другому етапі кодування застосовується вже згаданий згортковий код. Далі (етап 3) для розподілу отриманих 456 розрядів по окремих спалахів (несучим кожна по два блоку з 57 розрядів) застосовуються операції перемішування розрядів і перестановки блоків (прямого або діагонального транспонування).

Загальний обсяг обробки сигналів у стільниковому телефоні обчислюється мільйонами операцій в секунду. Таким чином, на відміну від звичайного телефонного апарату стільниковий телефон являє собою мініатюрну, але дуже продуктивну ЕОМ. З одного боку, вона аналізує "свій" мовний сигнал, виробляючи керуючі команди для синтезу мови в апараті співрозмовника, а з іншого - ця ЕОМ реалізує ідею Ейлера, синтезуючи мова співрозмовника по керуючим команд, що надходять з каналу зв'язку.

Автор: Ст. Нейман, проф., доктор техн. наук, р. Москва