Altium Designer (build 7.х). Проект многослойной печатной платы: определение классов цепей и компонентов

Altium Designer (build 7.х). Проект многослойной печатной платы: определение классов цепей и компонентов

Мы не будем касаться всех подробностей работы в редакторе Schematic Editing, а остановимся лишь на ключевых моментах, которые принципиальны для данного примера или не были детально рассмотрены ранее.

Структура проекта

В данном примере электрическая схема проекта располагается на нескольких листах и имеет иерархическую структуру. Первый лист (рис. 1) содержит прототип структурной схемы, блоки которой являются ссылками на другие листы схемы проекта. Каждый лист в этом примере, как правило, описывает отдельный узел. Данные узлы имеют свое функциональное назначение, однако не являются самостоятельными и независимыми. В схеме практически нет повторяющихся блоков, и здесь можно присваивать всем именам электрических цепей флаг Global. Однако и для этого проекта мы установим все настройки такими, какими они были в прежних примерах (рис. 2), а здесь еще раз укажем те, что имеют принципиальное значение.

  1. Командой Project >> Project Option вызовем окно Option for PCB Project…, а в нем откроем вкладку Option.
  2. В зоне Netlist Option устанавливаем (снимаем) следующие флаги:

— Флаги Allow Port to Name Nets и Allow Sheet Enter to Name Nets сняты. Отсутствие флага запрещает присвоение имен электрическим цепям через имена Port или Sheet Enter. Все имена цепей в схеме будем задавать через метки NetName.

— Флаг Append Sheet Numbers to Local Nets установлен. Это позволит применять одинаковые имена (NetName) для различных электрических цепей на разных листах схемы. Такая опция особенно удобна при использовании электрических схем узлов, которые были разработаны для других проектов. При этом схемы могут содержать имена электрических цепей, совпадающие с аналогичными на других листах проекта.

Еще раз отметим, что это разные цепи, и они не должны быть электрически объединены в новом проекте. Если данный флаг установлен, к имени электрической цепи будет добавлен номер листа схемы, и таким образом будет произведено разделение цепей, имеющих одинаковые метки NetName на разных листах. В этом случае нет необходимости в поиске и переименовании разных электрических цепей с одинаковыми именами на разных листах, если схемы проекта получены путем копирования или переноса листов схем из ранее использовавшихся проектов.

Задание общих правил проекта

Отметим следующее: в предыдущем разделе статьи [1] мы вводили общие правила для всего проекта, которые учитывают требования производителя печатных плат. Конечно, есть возможность задать эти правила и непосредственно на схеме, при этом они будут распространяться на весь проект. Для этого следует их ввести как параметры проекта со свойством Rule (рис. 3).

Итак, для задания общих правил, которые будут распространяться на весь проект (если иное не указано в самом правиле), произведем следующие операции (рис. 3):

  1. Откроем первый лист схемы (рис. 1) и командой Design >> Document Option вызовем одноименное окно, а затем откроем в нем вкладку Parameters.
  2. Для добавления правила к проекту следует нажать на кнопку Add as Rule.
  3. В новом окне Parameter Properties для редактирования параметров правила следует нажать на кнопку Edit Rule Values. При этом открывается окно Choose Design Rule Type(на рисунке не показано), где можно выбрать для редактирования одно из допустимых правил. Список правил и настройка их параметров полностью совпадают с аналогичными из PCB-редактора. Этот вопрос был подробно освещен в первой части статьи, и здесь отметим только новое. При определении правил через параметры листа остаются недоступными:

При передаче данных в PCB-редактор правила получают имена типа Schematic Clearance Constraint 1, где:

  • Schematic — часть названия, присвоенная по имени редактора, в котором оно введено;
  • Clearance Constraint — часть названия, присвоенная по имени правила, параметры которого определены в нем;
  • 1 — индекс правила, если идентичных правил введено несколько. При добавлении в проект нового правила из данного раздела правил этот индекс для него автоматически будет увеличен на единицу.

Отсутствие возможности самому определять имя правила и его приоритет существенно ограничивает ориентацию в большом числе правил уже в PCB-редакторе. И именно это обстоятельство, по мнению автора, не дает в полном объеме использовать задание правил для топологии электрических цепей в Schematic-редакторе.

Автоматическая генерация классов

В статье [2] кратко описана последовательность установки опций проекта для автоматической генерации классов. Для данного примера характерно наличие большого разнообразия различных типов классов, поэтому рассмотрим этот вопрос подробнее и предложим методы их указания в параметрах проекта, параметрах листов схем или компонентов на ней, а также с помощью специальных директив. Итак, рассмотрим рис. 4:

  1. Командой Project >> Project Option вызовем окно Option for PCB Project…, а в нем откроем вкладку Class Generation.
  2. В строке Automatically Generated Classes установим (снимем) следующие флаги автоматической генерации классов:
    1. Generate Net Classes for Busses — установлен. Для всех Bus (шин с одноименными сигналами) будут автоматически сформированы Net Classes.
    2. Generate Net Classes for Component — снят. Отдельно для компонентов классы цепей формировать в этом примере не будем.
    3. Generate Net Classes for Named Signal Harnesses — установлен. Для всех шин с разноименными сигналами также укажем автоматическое формирование Net Classes.
    1. Generate Component Classes — установлен. Разрешим формирование дополнительных классов компонентов, которые могут быть определены внутри листа схемы.
    2. Generate Room for Component — снят. Не станем формировать несколько Room для одного листа. В данном примере все узлы схемы, имеющие самостоятельное применение, и так находятся на отдельных листах.
    3. Generate Net Classes — установлен. В пределах одного листа может быть сформировано несколько классов цепей.

    При таких установках параметров проекта основная масса необходимых классов для работы в PCB-редакторе появится автоматически, необходимо будет добавить только пользовательские классы, а также другие специфические классы, которые сложно задать в SCH-редакторе.

    Определение пользовательских классов цепей

    Здесь приведем только характерные примеры определения пользовательских классов в SCH-редакторе. Начнем с отнесения электрических цепей к определенным классам. Для этого рассмотрим схему узла DC/DC-преобразователя (рис. 5).

    1. Жирными линиями отмечены те электрические цепи, к которым будут предъявлены особые требования при топологии данных узлов DC/DC-преобразователя для снижения импульсных помех. А именно, эти цепи должны обладать:

    Таким образом, можно полностью определить все классы цепей непосредственно на электрической схеме проекта.

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

    Таблица 1. Поддерживаемые в SCHредакторе определения классов и правил

    На каком объекте на схеме установлена директива или заданы параметры Как и где вводятся параметры Для каких объектов в PCB формируются правила или классы Pin (вывод компонента) Выделить Pin. Нажатием кнопки табуляции войти в окно свойств. Открыть вкладку Parameter. Добавить правило Pad («ножка» посадочного места) Port (межлистовой соединитель) Выделить Port. Нажатием кнопки табуляции войти в окно свойств. Открыть вкладку Parameter. Добавить правило Net (для электрических связей, к которым подключен Port) Wire (электрическая связь) Установить на электрическую связь Wire директиву PCB Layout Directive (Parameter Set object) командой Place >> Directives и в ней добавить правила и класс Net (для электрических связей, на которую установлена директива) Bus (шина одноименных электрических связей) Установить на шину Bus директиву PCB Layout Directive (Parameter Set object) командой Place >> Directives и в ней добавить правила и класс Net Class (для всех электрических связей, входящих в данную шину) Harness (жгут разнородных электрических связей) Установить на жгут Harness директиву PCB Layout Directive (Parameter Set object) командой Place >> Directives и в ней добавить правила и класс Net Class (для всех электрических связей, входящих в данный жгут) Component (компонент) Выделить Component. Нажатием кнопки табуляции войти в окно свойств. В зоне Parameters for… добавить правило Component (для всех электрических связей, подключенных к компоненту) Sheet Symbol (указательна подчиненный лист) Выделить Sheet Symbol. Нажатием кнопки табуляции войти в окно свойств. Открыть вкладку Parameter. Добавить правило Component Class (для всех электрических связей и компонентов подчиненного листа) Sheet (лист схемы) Командой Design >> Document Options вызвать окно Document Options, а в нем вкладку Parameters. Добавить правило All Objects (на все объекты проекта)

    Определение дополнительных классов компонентов

    Классы компонентов автоматически можно создать одновременно с ROOM, как указано на рис. 4, с помощью настроек проекта. Однако они создаются для компонентов, находящихся на отдельных листах электрической, а также для всех листов подчиненных схем иерархического проекта. Иногда возникает необходимость создания разных классов компонентов и для элементов, находящихся на одном листе электрической схемы.

    Рассмотрим это на примере листа CommonPower.SCHDOC, часть которого представлена на рис. 6.

    1. На данном листе находится четыре узла формирования вторичного питания:
      1. DC/DC-стабилизатор понижающего типа;
      2. идентичный DC/DC-стабилизатор понижающего типа на другой уровень питания;
      3. узел линейных стабилизаторов для работы от аккумуляторных батарей;
      4. линейный стабилизатор.

      Очевидно, что компоненты данных узлов можно отнести к разным классам компонентов, так как есть различия в топологических подходах к реализации этих узлов. Соответственно могут потребоваться специфические правила для описания требований, учитывающих эти различия.

      Задание на схеме правил топологии

      В редакторе непосредственно на электрической схеме можно не только определять классы цепей и компонентов, но и сразу задавать правила для топологического редактора. Рассмотрим это на классе, который мы определили ранее. На сноске 2 (рис. 5) указана директива, которая относит локальную цепь V1 к классу цепей PowerLoop. Откроем свойства этой директивы и добавим сразу и параметры правил для топологического редактора. Указанный класс цепей определен для цепей высокочастотных DC/DC-преобразователей с высокой плотностью тока. Приведенные далее правила ориентированы на минимизацию излучений от проводников электрических цепей данного класса.

      Все правила при отображении на схеме записываются каждое в своей строке. Так как длина строки при сложных правилах может иметь большой размер, да и самих правил может быть много, нет смысла отображать их на схеме, и следует снять флаг их видимости (рис. 5, сноска 4, окно Parameters, флаг Visible). Однако все же следует дать разное отображение текстовой записи на директиве, чтобы различать последние с различным наполнением. Поэтому укажем имя для нашей директивы, например, такое: 01СlassNameAndRule, или еще более кратко, в виде аббревиатуры: 01СNR. После этого и на другие цепи, на которые должны распространяться данные правила, можно установить эту директиву простым копированием.

      Итак, для указанной директивы сформируем следующие правила и в том порядке, в котором они доступны в окне Choose Design Rule Type (рис. 7). Данное окно открывается через вызов свойств директивы нажатием кнопки Add as Rule и затем в окне Parameter Properties кнопки Edit Rule Values. Правила для данной директивы будут таковы:

      1. Установим увеличенный зазор (0,2 мм) между элементами топологии, принадлежащими данному классу, и другими проводниками на печатной плате: — раздел правил Electrical/Clearance Constraint; — параметры: Any Net; Minimum Clearance = 8 mil.
      2. Зададим минимальную ширину проводников (а также и максимальную, и используемую по умолчанию). В нашем случае она будет увеличена, так как директива определяет топологию проводников с высокой плотностью тока:

      — раздел правил Routing/Width Constraint; — параметры: Min Width = 8 mil; Preferred Width = 10 mil; Max Width = 16 mil.

      Мы ограничимся этими правилами и укажем их вид уже непосредственно в PCB-документе. Командой Design >> Update PCB Document… внесем новые правила в файл топологии. Командой Design >> Rules… при активном PCB-документе откроем окно PCB Rules and Constraints Editor (рис. 7.):

        Правило зазора Clearance Constraint, введенное в пункте a): — находится в разделе правил Electrical/ Clearance Constraint; — имеет имя Schematic Clearance Constraint.

      Примечание. Каждое новое правило подобного типа получит имя Schematic Clearance Constraint_№№, где № — порядковый номер по мере возрастания;

      Для анализа правил, введенных через директиву, этого достаточно, так как иные правила будут иметь те же особенности, что отмечены ранее.

      Итак, анализируя правила, введенные на схеме с помощью директив, отметим следующее:

      1. Имена правил, введенных через директивы, имеют автоматически сформулированное название, что затрудняет ориентацию по этому признаку.
      2. Отсутствие возможности ввода комментария также не способствует пониманию сути и назначения правила.
      3. Присвоение последнему введенному правилу более высокого приоритета очевидно, однако изменить его непосредственно в директиве нельзя. Эту операцию можно легко установить уже только в PCB-редакторе. Это менее удобно при задании правил через директивы, а также затрудняет оценку на схеме, какое из правил более приоритетно.
      4. Существенным недостатком является то, что правило, введенное через директиву, действует только на одну электрическою цепь, но не на весь класс в целом. Расположив директиву на Harness, вы будете иметь в PCBдокументе столько правил с идентичными параметрами, сколько электрических связей входит в жгут Harness. Таким образом, их общее количество в PCB-документе становится неимоверно большим.
      5. Существенным недостатком является и то, что нельзя непосредственно в правилах указать иные цепи или классы цепей с идентичными параметрами, на которые директива не установлена.

      Этого вполне достаточно, чтобы отказаться от широкого использования директив на электрических схемах. Их следует, по мнению автора, использовать только для наиболее принципиальных цепей. Далее более подробно остановимся только на применении специализированных директив для дифференциальных линий.

      Учет класса точности

      В первой части статьи мы приводили правила, которые учитывают требования производителя печатных плат. Сейчас обратимся к аналогичному вопросу и учтем требования класса точности печатной платы. Заметим, это разные требования, и если вы разрабатываете топологию под определенный класс точности печатной платы, вы должны выбрать производителя, технология которого может обеспечить данный уровень сложности.

      Основные требования к печатным платам приведены в ГОСТ 23751 «Платы печатные. Основные параметры конструкции». Буквенные обозначения размеров основных конструкций печатных плат приведены на рис. 8, где:

      • Нпс — суммарная толщина печатной платы;
      • Нп — толщина печатной платы;
      • Нм — толщина материала основания печатной платы;
      • hф—толщина фольги;
      • b — гарантийный «поясок» сквозного отверстия;
      • t — ширина печатного проводника;
      • S — расстояние между краями соседних элементов проводящего рисунка;
      • Q — расстояние от края печатной платы, выреза, паза до элементов проводящего рисунка;
      • d — диаметр отверстия;
      • D — диаметр контактной площадки;
      • hп — толщина химико-гальванического покрытия;
      • h — толщина проводящего рисунка;
      • l — расстояние между центрами (осями) элементов конструкции печатной платы.

      Практически все эти параметры мы учитывали, когда описывали правила учета технологических требований производителя печатных плат. Теперь обратимся к подобным с точки зрения требований ГОСТа. В данном примере мы будем разрабатывать топологию по требованиям пятого класса.

      В таблице 2 указаны наименьшие номинальные значения основных размеров элементов конструкции печатных плат для узкого места в зависимости от классов точности. Для участков печатной платы в свободных местах указанные значения можно устанавливать по любому более низкому классу, а для первого класса — увеличивать в два раза.

      Итак, добавим новые правила, которые будут действовать на все объекты топологии, вне зависимости от классов цепей, и они будут действовать как Default (по умолчанию). Приоритет данных правил будет самым низким, однако выше, чем правила учета требований производителя.

      Правила приведем в той последовательности, как перечислены значения параметров конструкции в таблице 2.

      Таблица 2. Основные размеры элементов конструкции печатных плат

      Условное обозначение Номинальное значение основных размеров для класса точности 1 2 3 4 5 t, мм 0,75 0,45 0,25 0,15 0,10 S, мм 0,75 0,45 0,25 0,15 0,10 b, мм 0,30 0,20 0,10 0,05 0,025 γ 0,40 0,40 0,33 0,25 0,20

      Примечание. γ — отношение номинального значения диаметра наименьшего из металлизированных отверстий к толщине печатной платы.

        Правило ширины печатного проводника для пятого класса точности. Раздел правил Routing/Width:

      — имя (Name) правила — Width_All_Class5; — первое (The First Object) условие — ALL; — параметры: Min Width = 4 mil; Preferred Width = 6 mil; Max Width = 8 mil.

      Это правило полностью совпадает с аналогичным правилом Width_All, приведенным в первой части статьи, так как производитель печатных плат и обеспечивает изготовление их по пятому классу. Далее совпадающие или идентичные правила мы приводить не будем.

      Идентично правило ширины печатного проводника для четвертого класса точности:

      Таблица 3. Предельные отклонения диаметров монтажных и переходных отверстий

      Наличие металлизации Предельное отклонение диаметра Δd, мм, для класса точности 1 2 3 4 5 Без металлизации ±0,10 ±0,10; ±0,05; ±0,05 ±0,05 (±0,025) С металлизацией без оплавления ±0,05; −0,15 ±0,05; −0,15 +0; −0,10 +0; −0,10 +0;−0,10 (+0; −0,075) С металлизацией и с оплавлением — ±0,05; −0,18 +0; −0,13 +0; −0,13 +0; −0,13

      В ней приведены отклонения диаметров сквозных отверстий в зависимости от класса. Так как сверление и наложение фотошаблонов — это разные операции, чтобы избежать дефекта неполной металлизации сквозных отверстий, следует дополнительно прибавить к величине гарантированного «пояска», приведенного в таблице 2, и величину отклонения диаметров сквозных отверстий. Теперь, как и ранее, введем два правила, а именно для переходных отверстий и для штыревых элементов. Итак, в разделе правил Manufacturing/Minimum Annular Ring: