При разводке высокочастотных печатных плат следует уделять внимание задержкам сигналов в печатных проводниках. Рассинхронизация сигналов может привести к сбоям или полной неработоспособности устройства. Однако для выравнивания задержек недостаточно просто протянуть линии передачи одинаковой длины ко всем точкам схемы. Из-за неоднородности диэлектрика и других факторов скорость распространения сигналов в линиях может различаться. Эффективно выровнять задержки во всей схеме можно, применяя гибкую топологическую трассировку и учитывая особенности конструкции платы.
При разводке высокочастотных печатных плат следует уделять внимание задержкам сигналов в печатных проводниках. Рассинхронизация сигналов может привести к сбоям или полной неработоспособности устройства. Однако для выравнивания задержек недостаточно просто протянуть линии передачи одинаковой длины ко всем точкам схемы. Из-за неоднородности диэлектрика и других факторов скорость распространения сигналов в линиях может различаться. Эффективно выровнять задержки во всей схеме можно, применяя гибкую топологическую трассировку и учитывая особенности конструкции платы.
Помимо длины проводника, на величину задержки влияют его расположение (микрополосковая или полосковая линия) и конфигурация [1]. Полосковая линия – это печатная дорожка, размещенная между двумя сплошными проводящими слоями (рис.1). Электрическое поле такой линии полностью сосредоточено между проводящими слоями, поэтому скорость распространения сигнала в ней определяется диэлектрической проницаемостью диэлектрика. Постоянная задержки T (с/мм) определяется как
где εr – относительная диэлектрическая проницаемость диэлектрика; c – скорость света в вакууме (мм/с). Микрополосковая линия – это печатная дорожка на наружной стороне внешнего слоя печатной платы. С одной стороны микрополосковой линии находится диэлектрик, а с другой – воздух. Диэлектрическая проницаемость воздуха всегда меньше диэлектрической проницаемости диэлектрика печатной платы, поэтому в микрополосковых структурах сигнал распространяется на 13–17% быстрее, чем в полосковых [1]. Диэлектрики между металлическими слоями могут иметь различную диэлектрическую проницаемость, поэтому скорости распространения сигнала во внутренних слоях могут быть разными. Однако из-за неоднородной структуры диэлектрика эти скорости могут различаться и на одном слое. Стеклотекстолит представляет собой стеклоткань, пропитанную синтетической смолой. Усредненная диэлектрическая проницаемость стеклотекстолита FR-4 – 4–4,5, но для армирующего стекловолокна из алюмоборосиликатного стекла она имеет величину порядка 9, эпоксидной смолы – порядка 3,5, а диэлектрическая проницаемость их смеси равна некоторому промежуточному значению, которое зависит от соотношения объемов компонентов смеси [2].
Если плетение стеклотекстолита неплотное (рис.2), а проводники на плате достаточно тонкие (75–125 мкм), то возможны ситуации, когда один из двух соседних проводников пройдет вдоль стеклянной нити, а другой – в промежутке между нитями. В этом случае скорость передачи двух сигналов может существенно различаться, несмотря на то что проводники имеют идентичную геометрию и расположены на одном и том же слое. Этот негативный эффект нивелируется при зигзагообразной разводке или разводке под острым углом к сторонам платы. Отдельно следует обратить внимание на задержки сигналов внутри корпуса микросхемы. В большинстве микросхем для коммутации кристаллов с выводами применяются многослойные платы. Производители микросхем обычно приводят информацию о длинах проводников на различных слоях и проволочных проводников, соединяющих контакты на периферии платы с контактами корпуса. Однако без знания ди- электрической проницаемости изолирующих слоев и параметров межслойных переходов эта информация неполна и недостаточна для точного вычисления задержек сигналов. Следует также заметить, что значение диэлектрической проницаемости материала изменяется в некоторых пределах в зависимости от температуры, частоты сигнала и влажности, и лишь эти факторы уже могут давать погрешность расчета задержек сигналов порядка 10%. Конфигурация проводника При формировании зигзагообразных линий задержки (рис.3) следует учитывать наличие перекрестных связей между соседними изломами проводника. Перекрестные связи в длинных изломах приводят к значительным искажениям сигнала [1]. Если изломы короткие, искажения, вызванные перекрестной связью, мало влияют на форму переднего фронта, но ускоряют появление сигнала на выходе. Компенсация этого ускорения требует добавления секций в линии задержки, что увеличивает занимаемую ею площадь. Увеличение зазора между изломами позволяет ослабить перекрестную связь и даже совсем устранить проблему, однако при этом также увеличивается площадь, занимаемая линией задержки на плате. Величина перекрестной связи обратно пропорциональна S2 и H2, где S – зазор между проводниками, а H – расстояние до ближайшего опорного слоя. В работе [3] рекомендуется выбирать величину S не менее 3H или 4H. Однако, как показывает исследование [4], при малых H этого явно недостаточно. Так, для сигнала с длительностью фронта 100 пс при расстоянии до опорного слоя 0,09 мм и S = 0,25 мм в проводнике длиной 75 мм время опережения сигнала составило 83 пс (рис.4), и для его компенсации необходимо увеличить длину проводника еще на 20%. В [1] приведены некоторые рекомендации по выбору длины излома линии задержки с сильной связью между параллельными участками. Для импульса с длительностью переднего фронта 1 нс (диэлектрик FR-4) рекомендуется предельно допустимый излом не более 25,4 мм, а при длительности переднего фронта 0,1 нс предельно допустимая длина излома – 2,5 мм. Однако само понятие "сильная связь" весьма расплывчато, поэтому адекватные представления о требуемых величинах S и длинах излома возможны лишь при моделировании с конкретными параметрами сигнала и конфигурации платы. Отметим, что взаимодействие между соседними линиями задержки значительно меньше, чем между гладкими проводниками, находящимися на таком же расстоянии. В первом случае взаимодействуют лишь короткие участки провод- ников, а во втором – по всей длине. Проблемы непосредственного выравнивания задержек На рис.5 представлены рекомендации производителя по разводке ветвящихся сигналов (шин адресов и команд) в виде сбалансированного дерева. Можно ли выравнять задержки сигналов только посредством изменения длины линий? Дерево на рисунке симметрично, при этом источник сигнала находится на оси симметрии, а все его ветви – в одном слое. В реальности же источники – это различные выводы одной и той же микросхемы, которые не могут находиться в одной точке (так же, как и входы приемников), по- этому одновременная симметрия всех деревьев недостижима. Шины адресов и команд обычно представляют собой десятки ветвящихся цепей с совпадающими областями трассировки. При этом разные ветви одного дерева находятся на различных слоях. Они имеют различное число межслойных переходов и, соответственно, различные задержки как на переходах, так и в целом по сигналам. На практике необходимо обеспечить равные задержки на пути от источника сигнала к приемнику для некоторой группы сигналов. Сигналы в разных ветвях дерева обычно принадлежат различным группам, и, соответственно, для них могут быть заданы разные правила выравнивания (допуски внутри группы обычно более жесткие, чем между группами). Учет дополнительных ограничений по равенству задержек частей сигналов (разводка сбалансированным деревом) за редким исключением требует большей, чем это необходимо, площади. Поясним это на примере. На рис.6 изображены две цепи, каждая из которых реализует два сигнала с общим источником S(S′). Пары сигналов – S–R1 (S′–R′1) и S–R2 (S′–R′2) – имеют общие участки S–V (S′–V′), однако входят в разные группы (сигналы S–R1 и S′–R′1 в одну группу, а сигналы S–R2 и S′–R′2 – в другую). Будем считать, что цепи расположены на одном слое. Это позволяет перейти от сравнения задержек на участках к сравнению длин этих участков. Для выравнивания задержек сигналов S–R1 и S′–R′1 достаточно увеличить длину участка V–R1 на 1 см. Аналогично для выравнивания задержек сигналов S–R2 и S′–R′2 нужно увеличить длину участка V′–R′2 на 1 см. В сумме длина цепей увеличивается на 2 см. Чтобы выравнять задержки на каждом из соответствующих участков сигналов, нужно увеличивать длины участков S–V на 2 см, V′–R′1 на 1 см и V′–R′2 на 3 см. В результате задержки сигналов станут равными, однако суммарное увеличение задержки (6 см) окажется втрое большим, чем необходимо. Таким образом, балансировка дерева требует существенных дополнительных ресурсов площади. Обычно на плате требуется выравнять задержки для десятков и даже сотен сигналов, поэтому нерациональность подобного подхода в условиях дефицита свободного пространства очевидна. Несмотря на указанную выше необходимость учета расположения и конфигурации проводников при расчете задержки сигнала, регулирование задержек сигналов осуществляется в основном за счет изменения длин проводников. Серьезные проблемы с выравниванием возникают в условиях ограниченности свободного пространства на плате, когда есть риск того, что заданные ограничения не позволят решить задачу выравнивания задержек. Поскольку выравнивание обычно осуществляется последовательно, перед каждой стадией приходится отвечать на следующие вопросы: выравнять ли абсолютно точно задержки некоторых сигналов или минимизировать суммарный разброс всех задержек в группе? как выравнивать задержку – точно или на грани допуска? От ответов зависит сценарий работы конструктора. При минимизации суммарного разброса задержек работа ведется прежде всего с сигналами, имеющими экстремальные значения задержек. Для сигнала с максимальной задержкой следует проверить возможность перекладки трассы более коротким путем, а для сигнала с минимальной задержкой – добавить линию задержки. Однако при таком подходе приходится неоднократно возвращаться к выравниванию задержек одних и тех же сигналов. Если же отказаться от итераций и выравнивать точно, начиная с сигнала с минимальной задержкой, то может оказаться, что на плате не хватает места; возможно, его бы хватило при выравнивании на грани допуска. С другой стороны, если при выравнивании на грани допуска осталось свободное пространство, то велик соблазн его использовать и повысить тем самым точность выравнивания, а это опять итерации! Ручное выравнивание задержек обычно осуществляется включением в прямой проводник зигзагоообразных фрагментов, при этом при заданных значениях длин изломов и расстояний между ними добавление длины осуществляется дискретно (полупериодами). В таких условиях трудно обеспечивать требуемую точность выравнивания. Например, если величина задержки на полупериоде больше значения допуска, то выравнивание с заданной точностью невозможно. Для плавного изменения длины необходимо при увеличении числа полупериодов одновременно регулировать длину изломов. Такой механизм и для ручного, и для автоматического режимов работы реализован в САПР TopoR [5], что позволяет регулировать длину с точностью 50 нм. Автоматическое выравнивание задержек относительно несложно только при значительной свободной площади платы, например, когда зазоры между соседними проводниками таковы, что существенное увеличение ширины любого из проводников не приведет к нарушению заданных ограничений. Соответственно, если на месте широкого проводника провести зигзагообразный проводник обычной ширины, будет обеспечена требуемая задержка. Эффективных методов точного решения этой задачи в общем случае не существует. Даже для более простых задач упаковки и раскроя существующие точные методы основаны на полном переборе и потому непригодны для практического применения. Последовательное выравнивание (как ручное, так и автоматическое) может не дать положительного результата даже при наличии свободного пространства, поскольку при выравнивании задержки очередного сигнала не учитываются потребности еще не выравненных сигналов. Например, для большей части сигналов в группе задержки уже выравнены, однако освободить пространство для линии задержки очередного сигнала можно только при изменении маршрута сигнала с максимальной задержкой, а в этом случае придется решать задачу заново. Путь сигнала может лежать между двумя другими сигналами, задержки на которых меньше, поэтому они выравниваются раньше и не оставляют свободного пространства для дальнейшей работы. Недостатки последовательных процедур можно продемонстрировать на примере (рис.7). Значения задержки сигналов IDE_D(6) и IDE_D(8) (верхние строки таблицы) значительно отличаются от всех остальных. Эти сигналы выделены на рис.8 белым цветом. Видно, что два не выравненных сигнала оказались "зажатыми" между выравненными. Чтобы подобные ситуации не возникали, следует применять гибкую трассировку (когда положение топологических объектов не фиксируется) [6] и параллельное выравнивание задержек одновременно для всех сигналов. В САПР TopoR эта задача (по сути – оптимизационная) решается алгоритмически с использованием указанных методов: для каждого сигнала рассчитываются необходимые добавки задержки с учетом слоев фрагментов и наличия межслойных переходов; мелкие сегменты, образующие тупой угол (рис.9а), объединяются в один сегмент, соединяющий начало первого и конец второго сегментов (рис.9б); слишком длинные сегменты разбиваются на части для обеспечения большей свободы при их последующей раздвижке; на месте полученных сегментов, уменьшенных на некоторую величину, создаются прямоугольные области (рис.9в), ширина которых рассчитывается исходя из требуемой добавки задержки; осуществляется автоматическая раздвижка для ликвидации возможных нарушений зазоров, появившихся в результате увеличения ширины сегментов; если после нескольких итераций раздвижки остались нарушения зазоров, осуществляется подрезка областей задержки: если нарушения вдоль длинной стороны – уменьшается ширина области, если вдоль короткой – уменьшается длина области; в сигналах, на которых были "подрезаны" прямоугольные области, увеличивается ширина других прямоугольных областей (осуществляется несколько итераций раздвижки-корректировки); в полученные области вписываются зигзаго- образные линии задержки (рис.9г). Избавляться от нарушений, которые могли по- явиться в результате расширения сегментов проводников, помогает процедура подвижки. Она же помогает уплотнить топологию – действие процедуры подвижки подобно действию вибрации при работе с сыпучими материалами. Таким образом, при выравнивании задержек сигналов нельзя полагаться только на значения длин трасс, необходимо учитывать положения трасс (слои) и их конфигурацию. Выравнивать задержки высокоскоростных сигналов желательно как можно точнее, поскольку погрешность расчетов, связанная с неоднородностью материалов и влиянием на их параметры условий эксплуатации (температуры, частоты сигнала и влагопоглощения) даже при точном выравнивании может быть значительной. Следует помнить, что при выравнивании задержек на основе сбалансированного дерева не всегда эффективно используются ресурсы монтажного пространства. Наконец, эффективное параллельное решение задачи выравнивания задержек сигналов возможно в условиях гибкой топологической трассировки. Литература Джонсон Г., Грэхем М. Высокоскоростная передача цифровых данных: высший курс черной магии. – М.: ИД Вильямс, 2005. Медведев А., Можаров В., Мылов Г. Печатные платы. Электрические свойства базовых материалов. – Печатный монтаж, 2011, №6, с.150–157. Stephen H. Hall, Garrett W. Hall, James A. McCall. High-Speed Digital System Design: A Handbook of Interconnect Theory and Design Practices. – A Wiley-Interscience Publication, 2000. Praveen Soora. Propagation Delays in Serpentine Traces. – http://www.ansoft.com/EMpower/Apple.pdf. Лысенко А.А., Полубасов О.Б. Обеспечение заданной длины проводников в САПР TopoR. – Технология и конструирование в электронной аппаратуре. Одесса, 2009, №4, с.3–21. Лузин С.Ю., Попов С.И., Попов Ю.И. Гибкая топологическая трассировка в произвольных направлениях. Особенности и преимущества. – Электроника: НТБ, 2013, №.1, с.96–104.