Автор А.Г. Аветисов
Данная статья посвящена проектированию печатных плат для высокоскоростной цифровой аппаратуры, целью которой является ознакомить читателей с основами высокоскоростного дизайна при реализации конструкции печатной платы на этапе компоновки и трассировки. Рассмотрены вопросы автоматизированного проектирования печатных плат с учетом анализа целостности сигнала с применением программной среды Altium Designer.
Конструктор печатных плат сталкивается с проблемами высокоскоростного дизайна по ряду причин. Это применение современной цифровой элементной базы – микросхем с высокой скоростью нарастания и спада – скоростью переключения, настолько быстрой, что переключение из одного логического состояния в другой происходит прежде, чем сигнал успевает переместиться вдоль заданного маршрута и достигнуть целевого контакта. При этом возникает такая ситуация, что сигнал может быть отражен назад к исходному контакту, ухудшив данные исходного сигнала. Т.е. мы должны иметь в виду, что при проектировании высокоскоростных устройств возникают различного рода искажения сигнала, отражения. Для того чтобы сигнал сохранил свою целостность при проектирование высокоскоростных устройств мы производим трассировку не столько печатных проводников, а производим разработку линий передачи, встроенных в печатную плату. Принцип передачи без искажений состоит в применение линий передач с заданным волновым сопротивлением одинаковым на всем протяжении от источника к приёмнику сигнала.
Следовательно, возникает вопрос:когда следует рассматривать печатный проводник как линию передачи?
Здесь уместно ввести понятие электрической длины печатного проводника, которая выражается в долях от обратной величины минимальной длины волны – длительности фронта. Если печатный проводник имеет слишком большую длину волны, то для предотвращения искажений следует выполнить его как линию передачи.
А как определить, что электрическая длина проводника на печатной плате имеет большую длину?
Для решения этого вопроса, существует известное правило: 1/3 длительности фронта сигнала. Т.е. печатный проводник является электрически длинным, если время прохождения сигнала от источника к приемнику превышает 1/3 длительности фронта сигнала.
Для определения электрически длинных сигналов, и для решения вопросов, связанных с тем какие именно печатные проводники выполнять, как линии передачи воспользуемся следующими формулами.
Скорость распространения сигнала Vp – скорость, с которой электрический сигнал может перемещаться вдоль печатного проводника рассчитывается по формуле
Vp=c/√εr,
где c – скорость света,
εr – диэлектрическая проницаемость материала печатной платы.
Предположим, что мы применяем в своем проекте широко распространенный материал FR-4, тогда скорость распространения будет равна
Vp=(299.792458/√4) мм/нс=149.89 мм/нс.
Длина печатного проводника Lr рассчитывается по правилу 1/3 длительности фронта сигнала
Lr≥(Tr/3)*Vp,
где Lr – длина печатного проводника,
Tr - время нарастания сигнала.
Таким образом, печатный проводник следует рассматривать как линию передачи для конкретного случая , когда мы применяем материал FR-4, при следующей его длине:
Lr≥Tr*49.965 мм,
если Tr=1нс, то
Lr≈50мм,
если Tr=100пс, то
Lr≈5мм.
Т.е. получается, что при приведенных выше условиях, печатный проводник, имеющий длину 5 мм и более следует рассматривать как линию передачи.
Кроме того, следует отметить, что для достижения целостности сигнала на печатной плате, рассчитанные выше значения могут быть и меньше, что связано, прежде всего, с данными приведенными в документации на конкретную микросхему: данные по длительности фронта сигнала, приведенные в документации, отражают максимальное значение, а значит, реальное время переключения может быть меньше, кроме того, оно может меняться от партии к партии.
Теперь дадим определения терминам, которые широко применяются при высокоскоростном дизайне.
Линия передачи – система прямых и обратных проводников достаточной протяженности, расположенных в непосредственной близости друг от друга, формирующих единое электромагнитное поле, которое распространяется в этой системе преимущественно от источника к приёмнику (см. рисунок 1).
Рисунок 1
Модель элементарного отрезка линии передачи состоит из последовательного соединения сопротивления R и индуктивности L и параллельного соединения проводимости G и емкости C. Совокупность этих параметров называется первичными электрическими параметрами линии.
Следующим важным понятием при высокоскоростном дизайне является волновое сопротивление Z.
Z=√(L1/C1)
Волновое сопротивление – вторичный электрический параметр, который образуют погонная индуктивности и емкость, если рассматривать случай линии передачи без потерь, т.е. R=0, G=0 на частотах примерно до 1 ГГц.
Значение волнового сопротивления для линий передачи на печатных платах общепринято выполнять в 50 Ом (такие печатные платы называются платами с управляемым или контролируемым волновым сопротивлением), хотя волновое сопротивление может быть реализовано в диапазоне 40-120 Ом.
Примечание: Сопротивление R характеризует активные потери в линии, содержащее две составляющие. Во-первых, это сопротивление постоянному току или токам низкой частоты. Во-вторых, это сопротивление на высоких частотах, при которых начинает проявляться скин-эффект, т.е. ток течет по скин-слою (по поверхности печатного проводника). Индуктивность L и емкость C определяется конструкцией линии и применяемыми материалами. Проводимость G определяется утечками в изоляционном материале линии.
В зависимости от формы сечений различают несколько типов линий передач – см. таблицу 1.
Таблица 1
Тип линии передачи | Вид линии передачи в структуре печатной платы |
---|---|
Микрополосковая линия | ![]() |
Копланарный волновод | ![]() |
Копланарный волновод с земляной плоскостью | ![]() |
Прямоугольный волновод | ![]() |
Коаксиальная линия | ![]() |
Связанная микрополосковая линия | ![]() |
Полосковая линия | ![]() |
Витая пара | ![]() |
В случае, когда поперечное сечение линии неизменно вдоль всей её длины, то такую линию передачи называют однородной.
Следует знать, что все высокоскоростные соединения должны быть спроектированы как однородные линии передачи. Кроме того, целостность сигнала при проектировании печатных плат обеспечивается за счет выполнения всех соединений в виде однородных линий передачи и минимизации длины всех неоднородных линий передачи.
Многие проблемы в высокоскоростном дизайне играет неправильное проектирование возвратных токов. Как правило, прямой ток – это ток, текущий по узкому проводнику, а возвратный ток – проводник, выполненный в виде потенциального слоя. Поэтому важным моментом на этапе компоновки и трассировки печатных плат является правильное проектирование сигнально-потенциальных звеньев, т.е. правильная настройка стека слоев в структуре многослойно печатной платы. Кроме того, это позволяет реализовать требуемое волновое сопротивление.
Исследования показали, что для создания конструкции многослойных печатных плат используются четыре базовых сигнально-потенциальных звена (С – сигнальный слой; Е – потенциальный слой (слой «питание» или «земля»)):
Рисунок 2
Известно, что волновое сопротивление линии передачи есть функция от диэлектрических параметров среды и линейных размеров сечения линии: толщины и ширины печатного проводника, расстояния между сигнальным и потенциальными слоями.
Расстояние между сигнальными и потенциальными слоями рассчитывается по формуле
где hms – расстояние между сигнальными и потенциальными слоями, 10-3 м; w – ширина проводника, 10-3 м; t – толщина слоя фольги, 10-3 м; eff – эффективная диэлектрическая проницаемость; er – относительная диэлектрическая проницаемость материала ПП; Z – волновое сопротивление микрополосковой линии передачи.
При Z=50 Ом
Зная значение hms, можно определить число прокладок (препрегов):
Из формул приведенных выше и при условии, что ширина печатного проводника выдержана на минимальных технологических нормах, можно сделать вывод о том, что в звене CE при заданном материале, единственным способом управления волновым сопротивлением является число прокладок.
Рисунок 3
Особенностью данного звена является то обстоятельство, что количество прокладок между сигнальными слоями kmin выбирается минимальным, а между сигнальным слоем и потенциальным зависит от исходных электрических параметров. Таким образом, волновые сопротивления между сигнальными проводниками на разных слоях (Z1 и Z2) и потенциальным слоем будут отличаться. В связи с этим, для того чтобы уровнять волновые сопротивления необходимо будет увеличить ширину печатных проводников на удаленном от потенциального слоя сигнальном слое. Следует иметь в виду, что ширина печатного проводника выбирается из условия Z1=Z2. Отметим, что с практической точки зрения звено ССЕ вносит определенные трудности в её расчете.
Рисунок 4
Данное звено обладает рядом положительных свойств, прежде всего связанных с возможностью прогнозировать значение волнового сопротивления. Кроме того, в каждом зазоре между слоями располагается одинаковое количество прокладок и волновое сопротивление зависит от расстояния hs. Что касается небольшой асимметрии сигнального проводника, то это мало влияет на значение волнового сопротивления. Кроме того, симметричность можно улучшить, перераспределяя прокладки в зазорах. Для волнового сопротивления Z=50 Ом расстояние между потенциальными слоями рассчитывается по формуле
Рисунок 5
Данное звено следует рассматривать как звено, состоящее из двух простых звеньев ЕСЕ. Можно сделать следующий вывод: с практической точки зрения звенья ЕССЕ и ЕСЕ позволяют сформировать достаточно хорошо экранированные полосковые линии передачи. Кроме того, электрические параметры при реализации конструкций многослойных печатных плат со структурой этих звеньев наиболее стабильны.
В таблице 2 ниже приведены различные стеки слоев многослойных печатных плат при высокоскоростном дизайне.
Таблица 2
Номер слоя | 4-layer | 6-layer | 8-layer | 10-layer | 12-layer |
---|---|---|---|---|---|
1 | Signal V | Signal H | Signal HS-H | Signal HS-H | Signal HS-H |
2 | GND | GND | GND | GND | GND |
3 | POWER | Signal HS-V | Signal HS-V | Signal HS-V | Signal HS-V |
4 | Signal H | Signal HS-H | GND | Signal H | Signal H |
5 | POWER | POWER | GND | GND | |
6 | Signal V | Signal H | POWER | Signal V | |
7 | GND | Signal V | Signal H | ||
8 | Signal V | Signal HS-H | POWER | ||
9 | GND | Signal V | |||
10 | Signal HS-V | Signal HS-H | |||
11 | GND | ||||
12 | Signal HS-V |
В Altium Designer структура слоев задается на этапе компоновки и трассировки печатной платы в редакторе PCB. Для этого необходимо выполнить команду из главного меню Design>Layer Stack Manager в результате чего появляется диалоговое окно управления стеком слоев – см. рисунок 6.
Рисунок 6
Теперь непосредственно рассмотрим, как применить вышеизложенную теорию на практике. Для этого рассмотрим автоматизированные возможности реализации требований, предъявляемых к печатным платам для быстродействующей аппаратуры, на примере САПР Altium Designer. В Altium Designer имеется модуль Signal Integrity, который позволяет проводить анализ целостности сигнала как на этапе проектирования схемы 4 (предтопологический уровень – не учитывается расположение печатных проводников и используется усредненное значение для длины и волнового сопротивления), так и на этапе трассировки печатной платы (посттопологический уровень).
В Altium Designer можно решить следующие задачи по анализу целостности сигнала:
- подбор стека слоев, с учетом требуемого волнового сопротивления;
- возможность обнаружить в результате автоматизированного анализа два главных источника шумов и взаимных помех: отражения (Reflection) и перекрестные помехи (Glosstalk).
Отражения могут появиться вследствие неправильного согласования и неудачной топологии печатной платы. Исходящий сигнал отражается в направлении источника и накладывается на следующие импульсы. Перекрёстные помехи возникают, когда длинные проводники проходят рядом; это приводит к связи между ними через взаимную ёмкость и индуктивность. Кроме того, значительные токи и резкие фронты приводят к увеличению уровня электромагнитного излучения и, следовательно, перекрёстных помех.
Как было сказано выше, задачи целостности сигнала решаются как на схемном этапе, так и на этапе трассировки печатной платы. На этапе проектирования схемы можно решить задачи по согласованию линий передачи и входных/выходных сопротивлений микросхем. Анализ целостности начинается с выполнения команды Tools > Signal Integrity (см. рисунок 7), в результате чего открывается диалоговое окно Signal Integrity (см. рисунок 8).
Рисунок 7
Рисунок 8
Далее нам необходимо выполнить ряд настроек для тех цепей, которые мы хотим анализировать: добавить IBIS-модели, описать цепи питания и земли, описать цифровые сигналы, произвести настройку анализа целостности сигнала.
Добавление IBIS-моделей производится нажатием на кнопку Model Assignments (см. рисунок 9).
Рисунок 9
Открывается диалоговое окно Signal Integrity Model Assignments, в которой мы выбираем конкретный компонент и задаем его тип (resistor (резистор), capacitor (конденсатор), inductor (катушка индуктивности), diode (диод), BJT (транзистор), connector (разъём) и IC (микросхема)) - (см. рисунок 10). Для резисторов и конденсатор задаем номинальные значения, для микросхем технологию изготовления или подключаем IBIS-модель (двойным кликом на компоненте после того как указан тип IC, в результате открывается диалоговое окно Signal Integrity Model ) - (см. рисунок 11). Самым правильным вариантом будет – скачать IBIS-модель с сайта производителя этой микросхемы.
Рисунок 10
Рисунок 11
Далее нам необходимо указать номинальные значения уровня земли и питания, а также задать параметры воздействующего сигнала. Для этого в диалоговом окне Signal Integrity, правой кнопкой мыши необходимо щелкнуть на списке цепей, в результате чего появляется контекстное меню, в котором мы выбираем команду Setup Options, вызывая диалоговое окно SI Setup Options (см. рисунок 12).
Рисунок 12
На вкладке Supply Nets необходимо выключить опцию Use rules defined in Schematic/PCB и указать для цепей питания и земли их цифровые значения. На вкладке Stimulus диалогового окна SI Setup Options указано значение воздействующего сигнала, который определяет порядок частот работы схемы. Воздействующие сигналы могут быть различны для разных участков схемы, поэтому их удобнее задать с помощью команды Place > Directives > Stimulus. Последнее, что задаётся в диалоговом окне SI Setup Options –вкладка Track Setup, это усредненное значение длины дорожки и значение её импеданса (см. рисунки 13-15). Следует отметить, что эти опции задаются только при предтопологическом анализе.
Рисунок 13
Рисунок 14
Рисунок 15
В качестве примера, далее нам необходимо будет выбрать цепь, находясь в диалоговом окне Signal Integrity, для которой рассчитанное значение Rising Edge Overshoot (максимально допустимый положительный выброс на переднем фронте сигнала) превышает аналогичные значения для других цепей. В нашем случае это цепь М0. Добавляем её в правый список. Под списком цепей справа, мы видим все цепи, которая соединяет эта цепь. В разделе Termination (согласованная нагрузка) устанавливаем режим Serial Res (последовательный резистор). Включаем опцию Perform Sweep, указав разброс резистора от 10 до 100 Ом с шагом 10 Ом, и запускаем анализ нажатием кнопки Reflection Waveforms (см. рисунок 16).
Рисунок 16
Результатом анализа будет отображение двух графиков Из графика рисунка 17 (выбран вариант без согласования) видно, что на выводе микросхемы U1 имеются довольно большие выбросы, которые могут повлиять на правильность работы схемы. Под выбросами понимаются минимальные и максимальные напряжения, имеющие место после переключения сигнала между логическими уровнями. Такие выбросы являются следствием отражения сигнала из-за неправильного согласования. Недостатком предтопологического анализа является отсутствие возможности задать предельно допустимые значения для выбросов сигналов (это можно сделать лишь на этапе компоновки и трассировки печатной платы).
Рисунок 17
Если мы будет выбирать предложенные номиналы резисторов в качестве согласованной нагрузки (см. рисунок 18), то получим, что наиболее сглаженные фронты сигнала получаются при величине согласующего резистора 60 Ом (если резистора с таким номиналом не существует, то необходимо использовать ближайший из доступного ряда, т.е. 62 Ом).
Рисунок 18
Вывод: предтопологический анализ целостности сигнала позволяет решить проблемы высокоскростного дизайна, связанного с отражениями сигнала из-за неправильного согласования. Однако его недостатком является невозможность задать предельно допустимые значения для выбросов сигналов. Данный пробел можно восполнить, применив посттопологический анализ на стадии задания правил проектирования печатной платы.
Известно, что перед тем как приступить к этапу компоновки и трассировки печатной платы, необходимо задать правила проектирования. Для высокоскоростного дизайна в Altium Designer предусмотрена возможность задать ряд правил (находясь в редакторе печатных плат, выбираем команду Design>Rules в результате чего открывается диалоговое окно Design Rules) для анализа целостности сигнала см. рисунок 19 и таблицу 3. Как видно из рисунка правила для анализа целостности сигнала сгруппированы на вкладке Signal Integrity.
Рисунок 19
Таблица 3
Наименование правила | Графическое представление |
---|---|
Impedance Constraint – определяет минимально и максимально допустимый импеданс цепи | |
Overshoot – Falling Edge – определяет максимально допустимый отрицательный выброс (затухающие колебания относительно низкого значения напряжения) на заднем фронте импульса сигнала | ![]() |
Overshoot – Rising Edge – определяет максимально допустимый положительный выброс (затухающие колебания относительно высокого значения напряжения) на переднем фронте сигнала | ![]() |
Signal Base Value – определяет максимально допустимое значение напряжения сигнала низкого уровня | ![]() |
Signal Flight Time Falling Edge – определяет максимально допустимое время задержки заднего фронта сигнала | ![]() |
Signal Flight Time Rising Edge – определяет максимально допустимое время задержки переднего фронта сигнала | ![]() |
Signal Stimulus – определяет характеристики входных сигналов, которые используются при анализе целостности сигналов. Это сигналы, которые подаются на каждый входной вывод тестируемой цепи и формируются на выходных выводах. Во время проверки правил проектирования возвращается наихудший возможный результат | ![]() |
Signal Top Value – определяет минимально допустимое значение напряжения сигнала высокого уровня | ![]() |
Slope – Falling Edge – определяет максимально допустимое значение крутизны заднего фронта импульса. Под этим значением здесь подразумевается время, затраченное на изменение уровня сигнала от порогового напряжения (VT) до действительного значения напряжения низкого уровня (VIL) | ![]() |
Slope – Rising Edge – определяет максимально допустимое значение крутизны переднего фронта импульса. Под этим значением здесь подразумевается время, затраченное на изменение уровня сигнала от порогового напряжения (VT) до действительного значения напряжения высокого уровня (VIH) | ![]() |
Undershoot – Falling Edge – определяет максимально допустимое значение положительного выброса (затухающие колебания относительно низкого значения напряжения) на заднем фронте сигнала | ![]() |
Undershoot – Rising Edge – определяет максимально допустимое значение отрицательного выброса (затухающие колебания относительно высокого значения напряжения) на переднем фронте сигнала | ![]() |
Следует отметить, что для того чтобы использовать все правила, приведенные в таблице, обязательно должны быть заданы правила для Signal Stimulus и Supply Nets. Далее нам нужно запустить режим проверки правил проектирования командой из главного меню Tools>Design Rule Check и в открывшемся диалоговом окне Design Rule Checker нажать в левой части окна кнопку Signal Integrity после чего в правой части отметить все параметры, которые необходимо проверить на соответствии заданным правилам проектирования. После этого следует запустить режим проверки нажатием кнопки Run Design Rule Check (см. рисунок 20). Далее программой будет сформирован отчет, в котором мы можем обнаружить нарушения, связанные с нарушением правил проектирования. Данное нарушение можно устранить, промоделировав распространение сигнала в ней, запустив режим проверки целостности сигнала, аналогично предтопологическому моделированию командой из главного меню Tools > Signal Integrity.
Рисунок 20
В отличие от предтопологического моделирования, в посттопологическом моделировании при запуске режима анализа целостности сигнала цепи, у которых есть нарушения по заданным правилам проектирования, подсвечиваются, например, это цепь D7 на рисунке 21. Далее правой кнопкой мыши щелкаем по данной цепи и вызываем контекстное меню, в котором выбираем команду Cross Probe>To PCB для того, чтобы эта цепь была показана на печатной плате (см. рисунок 22). Если в контекстном меню выбрать команду Details, то можно получить полные результаты анализа – см. рисунок 23.
Рисунок 21
Рисунок 22
Рисунок 23
Из рисунка 22 ясно, что для оптимизации выделенной цепи необходимо меандр заменить на прямую дорожку, что приведет в соответствие с правилами проектирования значение отрицательного выброса на переднем фронте импульса. Это можно проверить, открыв заново диалоговое окно Signal Integrity и нажать кнопку Reanalyze Design. В результате для цепи D7 будет получено новое значение для отрицательного выброса 208 мВ (было 549,9 мВ), в правилах проектирования было задано не более 500 мВ.
Кроме того, Altium Designer позволяет выполнить проверку перекрестных помех, но для анализа требуются не только знания возможностей САПР, но и теоретические знания: необходимо определить цепи, которые являются парными для выбранной цепи, так как известно, что перекрестные помехи возникают из-за возвратных токов по экрану питания – их плотности.
Примечание: Плотность тока меняется по экспоненциальному закону и максимально под проводником, а на расстоянии трех толщин печатного проводника становиться практически незначимой.
В Altium Designer, чтобы определить парные цепи необходимо в диалоговом окне Signal Integrity из контекстно меню выбрать команду Preferences и на вкладке Configuration задать максимальное расстояние, на котором дорожки создают перекрёстные помехи (Max Dist) и минимальную длину (Min Length) – см. рисунок 24.
Рисунок 24
Далее необходимо из контекстного меню выбрать команду Find Coupled Nets, в результате чего будут подсвечены все парные цепи в соответствии с произведенными нами настройками параметров (см. рисунок 25).
Рисунок 25
Добавляем эти цепи в список для моделирования правой клавишей назначаем одну цепь агрессором (источником помехи), после чего другие цепи автоматически становятся жертвами. В результате назначение агрессора становится активной кнопка Grosstalk Waveforms, позволяющая запустить анализ перекрёстных помех.
На рисунке 26 показаны результаты моделирования перекрёстных помех в виде сигнала на источнике помехи и уровня помехи на проводнике жертве. Если уровень помехи превышает уровень установки цифрового значения, то на проводнике жертве произойдёт ложное срабатывание, и устройство будет работать некорректно. Следовательно, необходимо будет дорабатывать топологию печатной платы.
Рисунок 26
Выводы: Altium Designer позволяет решить лишь малую часть задач, связанных с высокоскоростным дизайном, т.е. модуль Signal Integrity не позволяет решить все задачи по обеспечению электромагнитной совместимости и целостности сигнала, и рекомендуется экспортировать проект печатной платы из Altium Designer в специализированную программу – HyperLynx. Кроме того, следует отметить, что без знаний физических процессов происходящих на высоких частотах, представляется невозможным качественно спроектировать печатную плату для цифровой быстродействующей аппаратуры.