10 апреля 2014 г.

Signal Integrity: Начало.

Этой историей я развлекаю своих знакомых. Иногда я забываю, что уже рассказывал ее, и рассказываю снова и снова. Дабы желание травить одну и ту же байку наконец-то пропало, изложу ее в письменном виде.
Когда я только начинал заниматься электроникой, я уже знал много умных слов и выражений и в теоретическом споре держался молодцом. Но когда дело доходило до реальной конструкции, то вечно что-то не ладилось. Так случилось и в тот раз.


Близилось соревнование, на котором студенты представляли радиотехнические конструкции. Наша группа из трех человек взялась за довольно сложный проект шифровальщика, о котором здесь я уже писал. Мы уже отладили логику работы девайса в Proteus. Оставалось залить прошивку в контроллер и отладить ее, учесть нюансы, так сказать.
Купили мы односторонний фольгированный текстолит, нужные компоненты с запасом (что компоненты иногда сгорают, мы уже знали). Применили лазерный утюг. Припаяли это дело. Получили что-то вроде этого.
Все начало работать неплохо. USB-девайс определялся (если что, то разъем mini-USB слева внизу, там еще надфилем пропилено углубление, чтобы шнур USB мог воткнуться, но это мелочи). Задача проста - прочитать что-нибудь с SD-карты.
Проста, да не очень. Чтение происходило нормально до поры до времени. В какой-то момент, девайс переставал отвечать. Винда ругалась на это дело и отрубала USB-девайс, потому что тот был уже в неадеквате.
Первое подозрение пало на разъемы ("Электроника - наука о разъемах"). Оно было даже не безосновательным. Дело в том, что разъемы мы купили самые дешевые, что могли найти. В основном находились разъемы, стоившие по нашему впечатлению необычайно дорого.
Греша на плохой контакт,мы решили прижать поплотнее SD-карту к разъему. Особо не парясь за целостность конструкции, наше и окружающих психическое здоровье, мы вставили между разъемом и картой памяти столовый нож. Не помогло...
Собственно эта неприятная ситуация и была нашим главным ступором. Вроде все должно работать, но нет.
За вечер мы перепробовали почти все. И ничего не помогало. 
И тут мы вспоминаем, что на какой-то лекции один преподаватель нам говорил, про сплошной слой земли или питания на многослойных платах (если что, лекция была на тему подготовки конструкторской документации, а преподаватель просто любил поговорить обо всех сопутствующих темах).
Сначала мы скептически отнеслись к этому предположению. "Да ну, ты чего?! Разве может какой-то земляной полигон спасти положение?! Да что он вообще делает-то?!". Но к двум часам ночи неразумный скептицизм как-то пропал и мы решили прилепить эту чертову землю.
Но как можно сделать слой земли, если другая сторона текстолита никогда не знала никакого слоя металлизации?
В холодильнике лежала плитка шоколада "Аленка" и ждала своего часа. Как сейчас помню эту картину. Сидит мой друг с красными глазами, жрет шоколад и режет фольгу, я разогреваю паяльник и ищу клей момент (мда, из описания наркомания с элементами BDSM какая-то получается, так что лучше закончу с описательной частью).
Опережая ваши возмущения. Да, фольга алюминиевая. Да, она плохо припаивается, если вообще припаивается. Да, контакт никакой, но он есть. Да, фольга отвалилась на следующий день.
Но: девайс чудесным образом заработал! Для нас тогда это было чудом.
Так что же там произошло? Что вдруг заставило все исправиться и заработать так, как надо?
Попробую объяснить это по-простому, не вдаваясь глубоко в теорию.
Мы знаем схемы с сосредоточенными параметрами. Там резисторы, конденсаторы, катушки (если мы говорим о пассивных компонентах) соединены идеальными проводами, которые не имеют никаких выраженных параметров - все параметры сосредоточены в компонентах. В большинстве случаев параметры провода несравнимо малы или велики по сравнению с параметрами реальных резисторов/конденсаторов/катушек, которые находятся в схеме. Ну например.

Мы считаем, что линия передачи имеет нулевое сопротивление, таким образом потенциал относительно земли в каждой точке линии одинаков. Все понимают, что это не так, и линия обладает каким-то, хоть и мизерным, сопротивлением. Так же и с другими параметрами.
Уже давно для описания линий передач принято использовать RLCG-модель. Линия разбивается на маленькие кусочки. Каждый кусок представляется в следующем виде.

Каждый элемент имеет свой смысл.
R - омическое сопротивление проводника на данном участке
L - индуктивность проводника на данном участке
C - емкость между проводником и земельным слоем (который обычно все-таки присутствует)
G - проводимость диэлектрика, характеризует ток утечки на землю сквозь диэлектрик платы.
Линию передачи обычно представляют в виде подряд соединенных эквивалентных схем малых участков линии. В нашем случае для пущей простоты мы будем рассматривать один участок. Обратим внимание на индуктивность.
Постоянный сигнал нас интересовать не будет. Так что сразу перейдем к анализу переменного сигнала.
В этом случае индуктивность будет излучать переменное магнитное поле в пространство. А рядом есть еще одна линия, которая тоже имеет в своем составе индуктивность. А индуктивность имеет свойство генерить переменный ток при наличии внешнего переменного магнитного поля. И из-за этого в линии появляются наводки или crosstalk от соседней линии.

Это первая проблема в нашей схеме.
Теперь рассмотрим, как течет ток. Если мы не делаем один большой земляной полигон, то току ничего не остается, кроме как течь по дорожкам. Таким образом ток проходит определенный контур.

Что же поменяется, когда мы сделаем единый земельный полигон на другой стороне платы? Ток будет течь по всему полигону. Просто где-то его плотность будет больше, а где-то меньше. Остается понять, где будет максимальная его плотность на полигоне.
Нужно вспомнить правило: ток течет по пути наименьшего сопротивления. Если ток переменный, то для него надо учитывать импеданс. Так что если предположить, что ток будет наворачивать спирали под платой, то это будет расходиться с требованием минимального импеданса пути: чем длиннее путь, тем больше его активное сопротивление (действительная часть импеданса), а чем он извилистей (и длиннее тоже), тем больше его реактивное сопротивление(за счет увеличения индуктивности).
Допустим, что активное сопротивление металлизации все же мало (пока не будем говорить, по сравнению с чем, я же не учебник пишу). Тогда для определения пути тока основную роль будет играть индуктивность контура, который этот ток описывает. Для тех, кто забыл, чему равен импеданс катушки на определенной частоте, напомню формулу.

Чем больше индуктивность, тем быше импеданс. Чем длиннее и круглее контур, тем больше индуктивность. Значит ток будет стремиться минимизировать площадь этого контура. А значит, что попав на другую сторону платы ток потечет в аккурат под сигнальной дорожкой, минимизируя по-максимуму площадь контура.
Если мы "включим" активное сопротивление земляного полигона, то ток, конечно будет идти не совсем под дорожкой, а будет искать некий компромисс между минимальным сопротивлением пути(то есть его длиной) и минимальной индуктивностью контура. Но как правило активное сопротивление на "обычных" частотах мало и поэтому его не учитывают.
Итак, у нас по одной стороне платы идет переменный ток по дорожке, а по другой стороне платы идет ток в обратную сторону. Два противоположных тока генерируют противонаправленные магнитные поля, таким образом внешнее магнитное поле от этого тока практически обнуляется и оно не влияет на соседние сигналы.
В итоге: никаких наводок, никаких потерь - только выигрыш и процветание!
Ну и для закрепления материала посмотрим на распиновку, скажем, интерфейса JTAG.

Целый ряд земель. В шлейфе эти земли будут окружать сигналы, таким образом экранируя их и повышая надежность доставки битов.
Теперь кабель от телевизора.

По центральной жиле передается сигнал, со всех сторон жила окружена земельной оплеткой, выполняющей ту же роль.
Добавлю еще про одну немаловажную роль уменьшения индуктивности контуров, по которым передается цифровой сигнал.
Для этого напомню, что такое самоиндукция. Это явление проявляет себя, когда мы резко хотим повысить напряжение в одной из точек контура. Тогда в контуре возникает ЭДС, которая сопротивляется повышению этого напряжения. Электрики сразу вспомнят про искру, иногда появляющуюся при включении рубильника. Кто более продвинут, тот вспомнит изощренные схемы пуска электродвигателей, где напряжение подается на большую индуктивную нагрузку. У нас это явление проявляется более "тонко". В нашем случае, когда сигнал меняется с "нуля" на "единицу", тоже происходит резкое возрастание напряжения и тоже возникает обратный ток. В итоге на сигнал начинают накладываться колебания, которые могут иногда привести к неправильному детектированию битов.
Так что выгода от наличия сплошного земляного полигона очень даже очевидна.

1 комментарий: