Введение
При создании САПР главное – это идея. Вывод клона уже существующей на данный момент на рынке системы не имеет смысла. Таким образом, САПР Delta Design подразумевает не только набор программных средств, но и новые уникальные методологии работы.
Заведение правил – одна из самых трудоёмких задач, выполняемых при разработке проекта печатной платы (ПП). Трудоёмкость возникает по нескольким причинам:
- большое количество типов правил;
- необходимость на некоторых участках платы иметь особые правила.
Рассмотрим подробнее эти причины. Первая связана со сложностью сохранения целостности электрического сигнала. Например, минимальный зазор от печатного проводника на плате до печатного проводника другой цепи должен быть одним, а до площадки поверхностного монтажа компонента – другим. И, хотя в подавляющем большинстве проектов в разных значениях нет необходимости, правило всё равно приходится вводить, поскольку оно используется регулярно.
Таким образом, существует объективная необходимость в большом количестве разных типов правил. При этом в конкретном проекте может использоваться разное их количество, в зависимости от его сложности.
Необходимость же иметь особые правила возникает объективно по разным причинам. Например, при прохождении печатного проводника между компонентами с высокой плотностью контактов (например, BGA) необходимо уменьшить минимальные зазоры как между проводниками, так и до контактов. В некоторых случаях возникает необходимость установить значение предельных зазоров между двумя конкретными цепями в конкретной области платы, что также усложняет задачу ввода.
Таким образом, функционал должен, с одной стороны, обеспечивать быстрый и удобный ввод данных для простых проектов, с другой – давать возможность установить детальные правила «по месту». Эти противоречивые требования и легли в основу концепции ведения правил в САПР Delta Design: максимальное сокращение и упрощение ввода данных пользователем с одновременным сохранением возможности задавать правила «по месту».
Реализуется эта концепция за счёт следующих принципов:
- возможность изначально использовать готовые наборы правил;
- предоставление различных способов ведения правил для разной сложности проектов;
- иерархичность ведения правил – правила задаются вначале для платы в целом, а затем уже уточняются для определённых цепей и слоёв;
- возможность определения на плате локальных зон с переопределёнными правилами.
Функционал редактора правил в Delta Design
Прежде чем перейти к описанию реализации концепции, рассмотрим непосредственно функционал редактора правил.

Все правила в редакторе поделены на домены (см. рис.1, левое окно). Под доменом понимается группа правил с единым механизмом задания и определения применимости. Выделены следующие домены:
- правила зазоров;
- правила физические цепей;
- правила роутинга.
Домен зазоров содержит правила для установления минимального расстояния между различными участками печатных проводников на плате. Например, минимальное расстояние от площадки поверхностного монтажа компонента до трека (печатного проводника) на плате. Конструктор платы может определить правила для всей платы в целом, для класса цепи, дифференциальной пары или цепи в разрезе по каждому из слоёв (см. рис. 1).
Правила зазоров от конкретной цепи можно определить до всех других цепей или только до класса цепей или отдельной цепи. Таким образом, можно «тонко» управлять зазорами, определив для всех цепей одни правила, а для конкретных классов цепей определяя уже свои значения (см. рис. 2).

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

«Физические» правила, аналогично правилам домена зазоров, определяются для платы целиком, а затем могут быть уточнены для класса цепей, дифференциальной пары или конкретной цепи в разрезе слоёв ПП.
Домен трассировки позволяет определить доступность расположения элементов печатного проводника на том или ином слое платы. Например, можно запретить трассировку цепи или расположение области заливки на определённом слое. Запрет или разрешение могут быть установлены не только для конкретной цепи, но и для дифференциальной пары или класса цепей.
Также в Delta Design возможно определение особых правил в локальной области. Для этого необходимо создать в редакторе платы регион (см. рис. 4). Регион является геометрической областью, расположенной на конкретном слое платы, или же он может быть «сквозным». Последнее означает, что регион с одинаковыми правилами существует одновременно в одинаковых границах на всех слоях платы.

Затем для региона необходимо задать, правила каких именно доменов в нём можно переопределять. Также конструктор может ограничить влияние региона конкретными классами цепей, указав их список (поля в синей рамке на рисунке 4). В этом случае правила, определённые в регионе, будут применяться только к печатным проводникам указанных классов цепей.
После этого можно задавать уже сами правила в общей для домена идеологии. При этом регион переопределяет правила для своего слоя. В примере на рисунке 4 в регионе указано изменение правил зазоров от трека к другому треку и планарной контактной площадке для всех цепей проекта.
Таким образом, комбинируя использование регионов и задание правил для слоёв и конкретных цепей, конструктор может решить любую задачу удобным для себя способом.
Перейдём к рассмотрению принципов работы САПР Delta Design, которые позволяют сократить временные затраты на ведение правил проекта. Это:
- предоставление различных способов ведения правил для проектов разной сложности;
- иерархичность ведения правил (правила задаются вначале для платы в целом, а затем уже уточняются для определённых цепей и слоёв);
- возможность использовать готовые наборы правил.
Различные представления данных для проектов разного уровня сложности
Рассмотрим, каким образом реализуется первый из указанных принципов на примере правил зазоров. Для других доменов принцип реализуется аналогично. Сам редактор правил проекта состоит из множества листов. В случае простого проекта конструктор устанавливает правила с помощью первого из них (см. рис. 5).

Как мы видим, все правила зазоров на этом листе определяются для платы в целом или для конкретных её слоёв. Для простых проектов «более глубокое» управление зазорами может быть и не нужно.
В случае, если необходимо задать правила для конкретных цепей, к услугам пользователя листы «Цепь к самим себе» и «Цепь к другим цепям» (см. рис. 1). На этих листах данные уже можно определить для класса цепи или даже для конкретной цепи на конкретном слое.
Если и этого недостаточно, то конструктор переходит к листу «Цепь–цепь» (см. рис. 2) и может определить зазоры для конкретных пар цепей.
Важно, что данные, заданные на листе «Плата целиком» (см. рис. 5), сразу же отражаются на других листах и могут быть в них откорректированы. По сути, конструктор имеет единую модель данных зазоров и несколько визуальных представлений, созданных по принципу «от простого к сложному», для ввода и контроля данных.
Иерархичность ведения правил
При задании правил важно сократить количество действий конструктора. Для этого в Delta Design используется принцип «перегрузки» правил на разных уровнях иерархии. Или, если говорить проще, изменения правил для конкретных объектов.
В проекте существует иерархия цепей и иерархия слоёв. Иерархия цепей включает классы цепей, дифференциальную пару и цепь. Иерархия слоёв состоит из слоёв и их классов. В обычной многослойной плате присутствует класс слоёв «Внутренние слои».
Для проекта всегда определены значения правил для всех слоёв и всех цепей платы. Конструктор может изменять их, а также может добавлять особые правила для участников иерархии ниже (и, соответственно, их «потомков» тоже). Таким образом, если конструктор определяет зазор для конкретного класса на всех слоях, то это же правило будет действовать для всех цепей этого класса.

Например (см. рис. 6):
- в проекте задан класс цепей Power, в состав которого входят цепи +5V, +2V и GND;
- на уровне платы задано следующее правило – зазор цепей (трек к треку) 0,3 мм;
- для класса цепей Power значение этого правила переопределено как 0,8 мм, а для цепей +5V и GND – как 0,6 мм (на уровне отдельных цепей).
В результате все цепи платы, за исключением цепей из класса Power, должны быть реализованы треками с соблюдением зазора 0,3 мм. Цепь +2V должна быть реализована треками с соблюдением зазора 0,8 мм, цепи +5V и GND подлежат реализации треками с зазором 0,6 мм.
Заключение
В первой части статьи мы рассмотрели, что умеет редактор правил системы Delta Design, основные принципы ведения правил и то, каким образом они реализованы на практике. Во второй части статьи мы рассмотрим:
- каким образом можно использовать уже готовые наборы правил и, что очень важно, как использовать данные из уже разработанных ранее проектов;
- интеграцию с другими редакторами в системе;
- дополнительные возможности редактора правил, облегчающие ввод данных и повышающие удобство работы.
Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!