Позиционирование переходного отверстия в BGA-компоненте

К.А. Кноп,

техн. писатель,

А.В. Бессонов,

прогр.,

С.И. Попов,

инж. - прогр,

Ю.И. Попов,

инж .- прогр.,

luzin@eremex.com,

ООО «ЭРЕМЕКС», г. Санкт-Петербург

Предложен метод решения задачи размещения переходных отверстий в ячейках BGA-компонента. Развязывающий конденсатор может заблокировать часть ячейки, поэтому переходное отверстие необходимо размещать не в центре ячейки, а ближайшей к центру точке без нарушения конструктивно-технологических ограничений. Метод основан на решении геометрической задачи отыскания пересечения «надутых» помех.

 

The paper proposes a method for solving the problem of via placement in BGA component cells. A decoupling capacitor can occupy part of a cell, so it is necessary to place a via not in the center of the cell but in the nearest point to the center taking in account design rules. The method is based on finding the intersection of "pumped in" obstacles.

Введение

В САПР TopoR[1] на этапе оптимизации трассировки положение межслойных переходов на проводнике не фиксируется. Подобный подход позволяет лучше использовать ресурсы монтажного пространства, однако в ряде случаев приводит к появлению «узких» мест из-за недоучета реальных размеров межслойных переходов. В области BGA-компонентов как раз крайне нежелательно удлинять участок проводника от контакта до перехода, поскольку это может заблокировать подход к соседним контактам. При трассировке таких областей в САПР TopoR используется специальная процедура, расставляющая в области BGA-компонента межслойные переходы и назначающая на них цепи контактов BGA-компонента и двухполюсников, расположенных в области BGA-компонента.

На рис.1 маленькими кружками обозначены вершины разбиения, представляющие контакты компонента BGA, большими кружками – вершины, представляющие ячейки для межслойных переходов. Ячейка – область между четырьмя соседними контактами. С каждым задействованным контактом (кроме контактов, расположенных по периметру) связана своя ячейка. Если кружок ячейки не закрашен, это означает, что ячейка несвязанная. Стрелками показано первоначальное назначение ячеек контактам, при условии, что все ячейки доступны.

рис.1. Модель компонента BGA в топологической модели коммутационного пространства печатной платы

Таким образом, до назначения ячейка является «свободной» и может быть по отношению к контакту «своя», «чужая» и «несвязанная». После назначения ячейка оказывается «назначенной»,и по отношению к контакту может быть «своей цепи» и «чужой цепи».

При трассировке BGA в «ячейках» между контактами расставляются межслойные переходы, и каждому сигналу (каждому задействованному контакту) назначается свой межслойный переход. Обычно ячеек даже больше, чем необходимо. Однако если в области BGA на противоположной стороне платы расположены двухполюсники (конденсаторы, резисторы, индуктивности), препятствующие размещению переходов в ячейках, то может оказаться, что свободных ячеек меньше, чем необходимо для разводки всех цепей.

1. Постановка задачи

Имеется прямоугольная ячейка BGA-компонента, внутри которой должно быть размещено переходное отверстие. Если на другой стороне платы под BGA-компонентом не размещены другие компоненты, то переходное отверстие(ПО) гарантированно можно ставить в центре ячейки. Это связано с тем, что центр прямоугольника – точка, одинаково удаленная от всех его вершин. Однако наличие компонентов на противоположной стороне может этому помешать. Требуется определить местоположение центра переходного отверстия, не создающее помех для других компонентов.

2. Анализ. Классификация случаев

В зависимости от расположения компонентов на другом слое мы различаем три случая.

рис. 2. Четыре помехи

рис. 3. Три помехи

рис. 4. Две помехи

Первый случай (четыре «обобщенные помехи») соответствует ситуации, когда на другом слое находятся до четырех различных компонентов, каждый из которых закрывает не более одного узла данной BGA-ячейки (рис. 2). Одна или несколько из таких помех могут отсутствовать, – решение задачи для этого частного случая не отличается от общего решения.

Второй случай (три «обобщенные помехи») – ситуация, когда на другом слое находится до трех различных компонентов, причем ровно один из них перекрывает два соседних узла BGA-ячейки. На рис. 3 такими двумя узлами являются нижние, но, разумеется, возможны и повороты этого рисунка на 90° или 180°.

Третий случай (две «обобщенные помехи») – ситуация, когда два компонента другого слоя перекрывают по два соседних узла BGA. На рис. 4 такими парами узлов являются пара нижних и пара верхних, но возможен и поворот этого рисунка на 90°. Отметим, что нижняя пунктирная линия на рисунке создает «помеху снизу», в то время как верхняя – «помеху сверху».

В дальнейшем мы рассмотрим только первый случай, сводя к нему остальные следующим несложным приемом: на рис. 3найдем середину нижней помехи и от этой точки проведем границу вниз. Тем самым «прямая помеха» окажется разбитой на две «угловых». Аналогично на рис. 4 поступим с обеими горизонтальными помехами.

3. Геометрический анализ задачи. «Надувание» помех и стягивание окружности в точку

Надувание окружности

Рис. 5 состоит из двух изображений одной и той же ситуации. На левом изображении – две окружности, одна из которых (вокруг жирной черной точки) имеет радиус R1, равный минимальному зазору, а вторая (вокруг маленькой точки) изображает искомое переходное отверстие радиуса R2. Центр ПО можно поместить в данной маленькой точке, если две этих окружности не пересекаются.

рис. 5. «Надувание» окружности помехи и «стягивание» окружности ПО

На правом изображении мы одновременно «стянули» вторую окружность в точку (уменьшив ее радиус до нуля) и «надули» первую окружность до радиуса R1 + R2. Центр ПО можно поместить в данной маленькой точке, если эта точка лежит вне проведенной окружности.

Процедуру «надувания» можно одновременно провести для всех четырех вершин прямоугольной ячейки.

Процедура «надувания» для угловых границ помех очень похожа и в чем-то даже более проста: прямые, соответствующие «помехе слева», в результате надувания должны быть сдвинуты правее на расстояние R2, прямые для «помехи справа» сдвигаются на R2 левее, аналогичные сдвиги делаются для помех сверху и снизу. Углы (точки) при этом становятся 90-градусными дугами окружностей.

Перекрыт ли центр?

Дальнейшее решение зависит от того, окажется ли допустимым поместить центр ПО в центре прямоугольника. Ответ на этот вопрос зависит не только от положения помех, но и от радиусов R1, R2 и длин сторон прямоугольника (BGA-ячейки). Если центр перекрыт «круглыми помехами» (т.е. круги, полученные раздуванием до R1 + R2, содержат его внутри), то вся внутренняя область BGA-ячейки перекрыта, и никакого ПО в ней разместить нельзя.

Пусть это не так. Тогда «круглые» помехи не закрывают центр, и нам достаточно проверить, не закрывается ли он какой-то из «угловых» помех, то есть сравнить координаты центра с координатами границ компонентов.

Центр не перекрыт «угловыми» помехами, если никакая из таких помех не содержит центра. Для выяснения этого факта достаточно подставить координаты центра в уравнения трёх линий, задающих угловую помеху – горизонтальной, вертикальной и дуговой.

4. Геометрическое решение

Как уже было объяснено выше, мы сводим всё случаи к случаю 1, когда около каждого угла рассматривается угловая помеха. После «надувания» такие помехи становятся скругленными прямоугольниками.

Решим задачу следующим образом: если центр не перекрыт, то именно его и выбираем в качестве центральной точки ПО (ЦПО); если же центр перекрыт, то задача решается раздельно для каждого из четырёх «квадрантов» BGA-ячейки (один квадрант – это прямоугольная область с углом в центре ячейки, внутри которой находится ровно одна вершина BGA-ячейки). В каждом квадранте ищем ближайшую к центру свободную точку. Затем из всех (четырех) найденных таким образом точек (кандидатов в ЦПО, или КЦПО) выбираем ближайшую к центру; именно она и станет ЦПО.

Решение для левого нижнего квадранта

В указанном квадранте имеется до пяти помех: «круглая» помеха левой нижней вершины и четыре угловых помехи (от разных вершин).

Если центр перекрыт угловой помехой от левой нижней вершины, то весь квадрант перекрыт ею, и ни одной точки для ЦПО в данном квадранте нет. (В этом случае ЦПО надо искать только на других трех квадрантах.)

Если центр перекрыт угловой помехой от правой нижней вершины (рис. 6), то кандидатами в «ближайшие к центру» точки будут точки пунктирной линии.

рис. 6. Центр перекрыт угловой помехой от правой нижней вершины

Аналогично для центра, покрытого помехой левой верхней вершины.

Теперь рассмотрим помеху правой верхней вершины. У нее есть до трёх участков – горизонтальный, дуговой, вертикальный (рис. 7). Если вся эта помеха не пересекается с выбранным квадрантом, то алгоритм поиска КЦПО может не учитывать наличия этой помехи.

рис. 7. Центр перекрыт угловой помехой от правой верхней вершины

Далее все учитываемые помехи мы сравниваем попарно и определяем координаты точек их пересечения (это не более одной точки для отрезков прямых линий и не более двух точек для случаев, когда хотя бы одна из помех является дугой окружности). Все найденные точки пересечения проверяем на попадание в выбранный (левый нижний) квадрант и на непопадание в те участки квадранта, которые закрыты другими помехами. Оставшиеся точки рассматриваем как КЦПО и затем оставляем из них ту, которая является ближайшей к центру ячейки.

Литература

1.  Лузин С. Ю., Попов С. И., Попов Ю. И. Гибкая топологическая трассировка в произвольных направлениях. Особенности и преимущества // Электроника: наука, технология, бизнес. – М.: Техносфера, – 2013. – Т. 123, № 1. – С. 96 – 104.