Трассировка печатной платы. Часть первая — Fanout
Евгений Махлин
В этот раз мы поговорим о трассировке.
Поскольку тема весьма обширна, думаю,
что будет уместно разделить ее на несколько
частей. Мы поговорим об общих положениях,
о создании Fanout (это вывод сигналов из ножек
компонента), трассировке и возможностях Constraint
Manager — оболочки, помогающей назначать атрибуты
и ограничения на все объекты проектирования
(выводы, компоненты, сигналы), а также обсудим
проведение анализа сигналов, задание параметров
трассировки и многое другое.
Как правило, задача трассировки формулируется
следующим образом: по заданной схеме соединений
проложить необходимые проводники на плоскости
(плате, кристалле и т. д.), чтобы реализовать заданные
электрические соединения с учетом заранее
заданных ограничений. Основными являются ограничения
на ширину проводников и минимальные
расстояния между ними.
12–15 лет тому назад процесс разводки сигналов,
или трассировки, был достаточно прост и по-своему
приятен. По большей части необходимо было лишь
соединить выводы компонентов на плате, проводя
«дорожки» произвольным образом.
Времена изменились, и процесс трассировки превратился
в сложную конструкторскую задачу, требующую
наличия знаний и умений. Поэтому при трассировке необходим опыт профессионалов, умеющих
читать принципиальную схему и разбираться в ней.
Пакет проектирования Allegro, как и все современные
программы конструирования печатных плат,
позволяет выполнять трассировку в интерактивном
либо автоматическом режимах. Трассировка выполняется
в соответствии с ограничениями, которые задает
конструктор.
Процесс трассировки должен проводиться в соответствии
с техническим заданием (ТЗ), которое
передается конструктору ПП.
В ТЗ должны быть отражены основные группы
сигналов и их свойства, требования по длине, расстояния
между сигналами и группами сигналов.
Должны быть указаны сигналы, требующие расчета
ширины линии, в зависимости от того, на каком слое
они проходят.
Это особенно важно, если проект выполняет
специализированное бюро, находящееся на значительном
расстоянии от инженера-разработчика.
Так происходит в США, странах Европы, Израиле.
Там не требуется постоянного присутствия инженерасхемотехника рядом с конструктором,
а зачастую и весь процесс проектирования выполняется
в «удаленном» режиме. Таким опытом
дистанционнойработыобладаети наш дизайн-центр —
КБ «Схематика».
В большинстве случаев процесс трассировки делится
на несколько этапов:
- трассировка дифференциальных пар;
-
трассировка сигналов с высокой тактовой частотой
(клок); -
трассировка быстрых групп сигналов (шины адресов,
данных и др.); -
трассировка остальных сигналов, не имеющих
особых требований; - формирование полигонов (GND, VCC…).
Отметим два основных момента, которые нужно
учитывать, чтобы обеспечить грамотную трассировку:
- Переходные отверстия (via) должны располагаться
по возможности в форме матрицы с минимальным
расстоянием, обеспечивающим прохождение
хотя бы одного сигнала между ними (рис. 1). - Если трассировка проводится в смежных
слоях, то необходимо соблюдать вертикальное направление сигналов в одном слое и горизонтальное — в другом, чтобы предотвратить возникновение явления перекрестных помех (crosstalk — паразитная передача сигнала от одного устройства или линии к другому, обычно соседнему) (рис. 2).
Процесс трассировки обычно начинается с выведения переходных отверстий (via)
из ножек компонентов — Fanout.
Существуют несколько основных правил
создания Fanout (рис. 3, 4).
В последней версии САПР Allegro (v.16.2)
реализована функция интерактивного Fanout
(рис. 5).
Как видно на рис. 6, инженер-конструктор получает широкий спектр возможностей для быстрого и эффективного вывода переходных отверстий из ножек компонента.
Он имеет возможность выбрать:
- вид переходных отверстий;
- стиль выведения (BGA, вверх, вниз, внутрь
- компонента, наружу, комбинировать направления и т. д.);
- параметры расстояния от via до вывода, ширину линии, сглаживание углов и т. д.
На рис. 7 представлено несколько примеров
вывода сигналов из соседних пинов.
При выборе стиля вывода необходимо учитывать несколько факторов:
- Шаг (pitch — расстояние между центрами
соседних ножек компонента). - Параметры переходного отверстия.
- Заданные расстояния от сигналов.
- Степень удаленности других компонентов.
- Удобство трассировки и т. д.
Если инженер имеет дело с компонентом,
у которого есть большое количество соседних
выводов, уместно пользоваться функцией копирования выводов, которые сделаны только
для соседних ножек. В этом случае мы выбираем
проводник и переходное отверстие как объекты
для копирования (на рис. 8 они выделены белым
цветом), задаем необходимое направление
(вверх-вниз, вправо-влево), вносим шаг копирования и количество копий по осям Х и Y, угол
поворота и оригинальную точку копирования,
а затем выполняем данную операцию. Это очень
эффективно для таких компонентов, как некоторые виды памяти, для корпусов QFP и др.
В последней версии PCB-редактора Allegro
есть еще одна удобная функция, она представлена в разделе Fanout. Речь идет о копировании Fanout, который был сделан для одного
компонента, для всех компонентов того же
типа на плате (рис. 9).
Выбирается один из компонентов. Путем
нескольких итераций подбирается наиболее удобный вариант вывода из ножек
компонента, а затем происходит копирование на другие компоненты этого типа
(рис. 10).
После выполнения предварительного Fanout,
по мере необходимости делаются мелкие поправки в том или ином месте, но основа уже заложена. Таким образом, можно сэкономить
до 70% времени, затрачиваемого на эту операцию.
После того как выполнен весь Fanout на плате, можно приступать к трассировке сигналов,
не опасаясь, что в процессе разводки вам не хватит места во внутренних слоях, или что вам
придется переделывать трассировку, чтобы
вывести оставшиеся сигналы.
Об особенностях трассировки и основных
функциях PCB-редактора — в следующей статье цикла.