5 - 2013

Разработка топологии печатных плат с помощью Allegro/OrCAD PCB Editor

Анатолий Сергеев, специалист компании «Оркада» по продукции Cadence Design Systems, Inc., автор многочисленных статей. Окончил Владимирский государственный университет по специальности «Проектирование и технология радиоэлектронных средств».
Анатолий Сергеев,
специалист компании «Оркада» по продукции Cadence Design Systems, Inc., автор многочисленных статей. Окончил Владимирский государственный университет по специальности «Проектирование и технология радиоэлектронных средств»

Одна из важнейших задач для разработчиков печатных плат — это создание библиотек посадочных мест элементов. Основным ориентиром в этой работе являются стандарты IPC и технологические особенности производства. OrCAD PCB Editor имеет мощные средства по созданию точных библиотек посадочных мест и их применению в проекте. В данной статье хотелось бы рассмотреть особенности создания символов посадочных мест в OrCAD PCB Editor.

Стандартный символ посадочного места в OrCAD PCB Editor формируется из трех файлов. Первый тип файлов — это файл с описанием набора контактных площадок и отверстий одного вывода компонента — PAD; второй тип файлов — это файл с описанием чертежа символа со всеми настройками и командами разработчика — DRA; третий тип — это непосредственно символ посадочного места, который участвует в создании проекта топологии — PSM. При установке программы на жесткий диск компьютера все стандартные библиотеки программы устанавливаются в директорию по умолчанию <директория_установки>/share/pcb/pcb_lib/symbols. В этой директории хранятся все стандартные типы символов, которые имеются в программе в качестве начальной библиотеки. На этапе размещения компонентов на плате OrCAD PCB Editor ищет необходимые библиотеки именно в этой директории. Для указания других директорий пользователю необходимо зайти в настройки программы через меню Setup -> User Preferences, категория Library -> Path. Путь к библиотекам отдельных выводов задается через переменную padpath и к библиотекам посадочных мест через переменную psmpath.

Рис. 1. Для создания библиотеки падстеков используется приложение Pad Designer

Рис. 1. Для создания библиотеки падстеков используется приложение Pad Designer

Рис. 2. На вкладке Layers в Pad Designer описываются форма и размеры контактных площадок вывода на разных слоях

Рис. 2. На вкладке Layers в Pad Designer описываются форма и размеры контактных площадок вывода на разных слоях

Первым шагом в создании посадочного места является создание файла с описанием выводов компонента PAD. Для этого используется приложение Pad Designer (рис. 1), которое вы без труда найдете в меню Пуск -> Все программы -> Cadence -> Release 16.6 -> PCB Editor Utilities.

На вкладке Parameters редактируются параметры отверстия и его графического представления, единицы измерения и некоторые другие настройки:

  • Units — единицы измерения;
  • Decimal places — количество знаков после запятой. То есть значение 3, например, дает возможность задать размеры контактной площадки с точностью до тысячных долей миллиметра;
  • Allow suppression of unconnected internal pads — данная опция позволяет удалять неподключенные контактные площадки на внутренних слоях;
  • Allow Antipads as Route Keepouts (ARK) — данная опция позволяет использовать антипад как зону запрета для трассировки. Наиболее подходящее применение данной опции — это монтажные механические отверстия и реперные знаки;
  • Hole type — тип отверстия;
  • Plating — установка или отключение металлизации для сквозных отверстий;
  • Drill diameter — диаметр отверстия с учетом металлизации;
  • Tolerance — допуск на диаметр;
  • Offset X, Offset Y — смещение центра отверстия относительно центра контактной площадки;
  • Figure — геометрическая фигура отверстия для представления его в таблице сверления на чертеже печатной платы. Необходима для визуального контроля отверстий различного типа;
  • Multiple drill — опция для создания контактной площадки с множеством отверстий внутри нее.

На вкладке Layers редактируются параметры контактных площадок (рис. 2), такие как форма, размеры, расположение на слоях, количество слоев, начальные и конечные слои и т.д.:

  • Single layer mode — переход в режим планарного вывода;
  • Views — схематичное отображение пада;
  • XSection — схема со всеми слоями;
  • Top — схема только с верхним слоем.

Таблица с параметрами контактных площадок на разных слоях первоначально содержит только три сигнальных слоя:

  • Begin Layer — начальный слой. Top;
  • End Layer — конечный слой;
  • Default Internal — параметры КП на внутренних слоях по умолчанию; они активны, если не заданы индивидуальные параметры для конкретного внутреннего слоя;
  • Soldermask_Top, Bottom — верхний и нижний слои для указания параметров формы и размеров паяльной маски;
  • Pastemask_Top, Bottom — верхний и нижний слои для указания параметров формы и размеров паяльной пасты;
  • Filmmask_Top, Bottom — верхний и нижний слои, которые можно использовать в любых целях на усмотрение пользователя. Эти слои являются справочными.

Удалить слои по умолчанию нельзя. Можно менять их название, кроме Default Internal. Названия слоев в стеке сквозного вывода или переходного отверстия в Pad Designer необязательно должно соответствовать названию слоев в стеке печатной платы в PCB Editor. Однако для сложных плат, где форма и размеры контактных площадок для переходных отверстий и сквозных выводов компонентов должна быть различной для разных слоев, необходимо соответствие наименования в стеке контактных площадок и печатной платы (рис. 3).

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

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

Причем Begin Layer и End Layer необязательно должны называться Top и Bottom соответственно. Они указывают лишь начальный и конечный слои. В приведенном примере (см. рис. 3) контактная площадка на слое INNER1, PWR отличается по размерам от контактных площадок на других слоях. В данном примере параметры Default Internal не будут активны на печатной плате и его параметры не будут учитываться. В случае если внутренних слоев в печатной плате больше, чем в стеке сквозного вывода или переходного отверстия, то будут действовать параметры контактной площадки из Default Internal, где не указаны параметры контактной площадки индивидуально.

Рис. 4. Значения для формы и размера контактной площадки можно копировать между слоями или группой слоев

Рис. 4. Значения для формы и размера контактной площадки можно копировать между слоями или группой слоев

Для того чтобы добавить новый слой в набор, необходимо поместить курсор слева от названия слоя и из меню правой кнопки мыши выбрать одну из предложенных команд (рис. 4):

  • Insert — вставить новый слой;
  • Copy, Paste, Delete — копировать, вставить и удалить информацию для выбранного слоя;
  • Copy to All — скопировать информацию с выбранного слоя на любую группу слоев.

В нижней части вкладки Layers располагаются секции для непосредственного ввода геометрической информации о контактных площадках (рис. 5).

Рис. 5. Форма и размеры самой контактной площадки, термальных барьеров и антипадов редактируются в нижней части вкладки Layers в Pad Designer

Рис. 5. Форма и размеры самой контактной площадки, термальных барьеров и антипадов редактируются в нижней части вкладки Layers в Pad Designer

В Regular Pad указывается форма и размеры самой контактной площадки. Если ее форма нестандартная, то необходимо иметь файл с описанием этой формы в формате SSM и указать ее в строке Shape. Символы нестандартных форм создаются непосредственно в PCB Editor по команде File -> New -> Shape Symbol. В секции Thermal Relief определяется геометрия термальных барьеров для контактной площадки. Задать форму и размеры для этой части контактной площадки можно с помощью специальных символов FSM, которые могут быть созданы в PCB Editor по команде File -> New -> Flash Symbol. В секции Anti Pad указываются размеры специальной области по контуру контактной площадки. Размеры этой области определяют зазор между контактной площадкой и окружающим ее полигоном в том случае, если речь идет о разных цепях. В PCB Editor параметры, указанные в Thermal Relief и Anti Pad, вступают в силу, если это указано в настройках динамических полигонов. По умолчанию программа автоматически сформирует термальные барьеры и антипады согласно заданным правилам проектирования без необходимости считывать эти данные из файлов PAD.

После того как закончено описание вывода, необходимо сохранить его как файл PAD с помощью меню File­Save/Save As. При наличии ошибок они будут выведены на экран в виде сообщения. Необходимо помнить, что местоположение файлов PAD должно совпадать с переменной padpath, о которой было сказано выше.

Типы объектов и их классы в символах посадочных мест

 

Тип объекта

Класс

Подкласс

Вывод (падстек)

Контактная площадка

Conductor

Pin

Top

 

Bottom

Паяльная маска

Nonconductor

Pin

Soldermask_Top

 

Soldermask_Bottom

Паяльная паста

Pastemask_Top

 

Pastemask_Bottom

Символ отверстия

Drill symbol figure

Manufacturing

Ncdrill_Figure

Номер вывода

Text

Package geometry

Pin_Number

Графика

Границы компонента

Filled rectangle (frectangle)

Package geometry

Place_Bound_Top

Технологическая граница компонента

Filled rectangle (frectangle)

Package geometry

Dfa_Bound_Top

Шелкография

Rectangle, Line Segment

Package geometry

Silkscreen_Top

Графика для сборочного чертежа

Line segment

Package geometry

Assembly_Top

Текст

Позиционное обозначение

Text

Ref Des

Silkscreen_Top

 

Assembly_Top

Величина основного параметра

Text

Component value

Silkscreen_Top

 

Assembly_Top

Допуск на основной параметр

Text

Tolerance

Silkscreen_Top

 

Assembly_Top

Наименование компонента

Text

User part number

Silkscreen_Top

 

Assembly_Top

Для перехода к следующему шагу в создании посадочного места необходимо открыть OrCAD PCB Editor. Самый быстрый способ в создании посадочных мест для многовыводных компонентов — это использование мастера по команде File -> New -> Package Symbols (Wizard). При этом вам необходимо задать имя и директорию, куда будет помещен новый символ. Директория должна совпадать c переменной psmpath, чтобы в будущем символ был размещен на печатной плате (рис. 6).

Рис. 6. Посадочное место для многовыводного корпуса можно создать при помощи мастера

Рис. 6. Посадочное место для многовыводного корпуса можно создать при помощи мастера

Мастер создания символов посадочных мест интуитивно понятен. Коротко опишем каждый шаг его работы:

  • Выбирается тип корпуса.
  • Подключается шаблон в виде файла DRA. По умолчанию данный шаблон располагается в директории <директория_установки>/share/pcb/pcb_lib/symbols/template. Его можно отредактировать и использовать при создании новых компонентов. Директории с шаблонами символов и плат можно задать с помощью переменной wizard_template_pathчерез меню Setup -> User Preferences, категория Path — Config.
  • На этом этапе выбираются единицы измерения для мастера, проекта и префикс позиционного обозначения.
  • Заносится необходимая геометрическая информация.
  • Указывается файл PAD, созданный в Pad Designer. Здесь можно отдельно указать первый вывод посадочного места.
  • Указываются местоположение точки начала координат и возможность создания файла PSM.

После того как все этапы пройдены, в окне PCB Editor появляется готовый символ со всеми необходимыми атрибутами. Его можно вручную скорректировать согласно дополнительным требованиям. Как было сказано выше, такой способ очень удобен при создании многовыводных компонентов. Следующий способ сочетает ручные и автоматические операции. Для начала необходимо выбрать меню File -> New -> Package Symbols. Рассмотрим его более подробно.

1. Для начала размещения выводов и другой информации необходимо настроить проект. Единицы измерения можно настроить в меню Setup -> Design Parameters, вкладка Design. Здесь указываются также размеры рабочего поля. Сделайте их максимально комфортными для себя. Не забудьте после настройки единиц нажать кнопку Apply в нижней части окна настроек. На вкладке Display через кнопку Grids можно настроить сетки. Здесь рекомендуется указать одну сетку, All Etch, для размещения выводов и вторую сетку, Non­Etch, для рисования слоев сборки и шелкографии. В последующем вы всегда сможете поменять шаг сетки так, как вам это необходимо. Далее настраиваются параметры отображения объектов в проекте. Для большей детализации изображения установите на вкладке Display в секции Enhanced Display Modes опции для отображения всех типов отверстий и заливку для контактных площадок согласно рис. 7.

Рис. 7. Для лучшего отображения объектов футпринта необходимо установить соответствующие опции в меню Setup — Design Parameters и Display — Color/Visibility

Рис. 7. Для лучшего отображения объектов футпринта необходимо установить соответствующие опции в меню Setup — Design Parameters и Display — Color/Visibility

В меню Display -> Color устанавливаются параметры отображения для соответствующих классов и подклассов. Распределение классов и подклассов при создании посадочного места показано на рис. 8.

Рис. 8. В символе посадочного места может содержаться различная информация

Рис. 8. В символе посадочного места может содержаться различная информация

Рис. 9. Размещение выводов контролируется с помощью панели Options

Рис. 9. Размещение выводов контролируется с помощью панели Options

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

Все эти настройки проекта на данном этапе можно записать в файл параметров проекта по команде File -> Export -> Parameters. Такие файлы имеют расширение .prm и загружаются в проект по команде File -> Import -> Parameters. Их также можно хранить в виде библиотечного набора, путь к которому задается через переменную parampath в категории Path — Library.

2. Положение начала координат задается по команде меню Setup -> Change Drawing Origin. Возможны различные варианты его привязки с помощью команды правой кнопки мыши — Snap Pick to.

3. Следующий шаг — установка выводов компонента.

Установка выводов происходит по команде Layout -> Pins либо через кнопку  на панели инструментов. После этого панель Options примет следующий вид (рис. 9):

  • Connect, Mechanical — здесь необходимо выбрать тип устанавливаемого вывода или группы выводов — сигнальный или механический. Только к сигнальным выводам будут впоследствии подведены цепи (соединения) и только у сигнальных выводов есть номер. Механический вывод не имеет номера и не участвует в образовании электрических соединений на плате;
  • Padstack — здесь выбирается непосредственно вывод компонента, созданный ранее с помощью программы Pad Designer, которая была описана выше;
  • Copy mode — тип матрицы выводов (Rectangular — ортогональная, Polar — круговая);
  • X,Y — направление создания копий по горизонтали и по вертикали соответственно. (Qty — количество, Spacing — расстояние между геометрическими центрами двух соседних копий, Order — направление копирования);
  • Rotation — угол поворота каждого вывода;
  • Pin # — номер вывода;
  • Inc — шаг следования номеров;
  • Text block — выбор текстового блока: высота, ширина и т.д. (описано выше);
  • Offset X,Y — смещение текста относительно контактных площадок. В случае если стоит 0,  номера выводов будут накладываться на контактные выводы, что неудобно для чтения.

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

4. Следующий шаг — нумерация выводов в соответствии с техническим описанием компонента. Это происходит по команде Layout -> Renumber Pins. Программа для простых корпусов, например DIP и SOIC, автоматически определяет требуемый стиль нумерации, поэтому достаточно нажать кнопки Apply и OK.

5. На этом этапе необходимо нарисовать слои сборки и шелкографии в Package_Geometry/Assemly_Top(Bottom) и Silkscreen_Top(Bottom) соответственно. Данные элементы лучше всего рисовать с помощью инструментов меню Add (инструмент Line наилучшим образом подходит для данной операции). Настройки рисования появляются на панели Options (рис. 10).

Рис. 10. Параметры рисования линий отображаются на панели Options

Рис. 10. Параметры рисования линий отображаются на панели Options

  • Line lock — выбор типа (дуга или линия, выбор угла);
  • Line width — толщина линии;
  • Line font — вид линии (сплошная, штриховая и т.д.).

6. На данном шаге необходимо установить префикс позиционного обозначения с помощью команды меню Layout -> Labels -> RefDes. Следует помнить, что для позиционных обозначений выделен отдельный класс RefDes и соответствующих подклассов для сборки и шелкографии.

7. Следующий шаг — создание физических и технологических границ компонента на классе Package_Geometry/Place_Bound_Top и Dfa_Bound_Top соответственно. Обе эти границы рисуются в виде статических полигонов. Place_Bound_Top — это полигон, который включает весь компонент со всеми выводами, кроме позиционных обозначений. Он отвечает также за высоту компонента. Dfa_Bound_Top — это специальный полигон, позволяющий задействовать систему проверки технологических зазоров между компонентами для обеспечения технологичности процесса сборки платы Design For Assembly в режиме реального времени. Такая функция доступна только пользователям Allegro PCB Designer.

8. На заключительном этапе указывается высота компонента. Это можно сделать с помощью меню Setup -> Areas -> Package Height. При активации данной команды необходимо выбрать область Place_Bound_Top и на панели Options указать максимальную и минимальную высоту компонента. Также отметим, что областей Place_Bound_Top может быть несколько с различной высотой, что дает возможность построить сложный контур для корпуса компонента. В ближайшем обновлении OrCAD и Allegro добавится возможность задавать полную 3D Step­модель для библиотек посадочных мест (рис. 11).

Рис. 11. Возможна загрузка полных 3D-моделей компонентов в формате STEP

Рис. 11. Возможна загрузка полных 3D-моделей компонентов в формате STEP

Дополнительный и очень удобный инструмент в создании посадочных мест компонентов, который доступнен пользователям последней версии OrCAD 16.6, — это команда File -> Export/Import -> CSV Pin File. Данная группа команд позволяет создавать и загружать информацию о компоненте в виде текстового файла в формате CSV. Данный файл легко редактируется в любом текстовом редакторе или табличном редакторе. Ниже приведен фрагмент такого файла:

# If units not specified use current design units,,,,,,,,

Units,mils,,,,,,,

# Format for pin definition file (comma delineated),,,,,,,,

“# To Mirror pin text use “”m””.”,,,,,,,,

#PinNumber,Padstack,x,y,rotation,textOffsetX,textOffsetY,
textRotate,textMirror

48,S060X014RCT,150,226.38,0,0,0,0,

47,S060X014RCT,150,206.69,0,0,0,0,

46,S060X014RCT,150,187.01,0,0,0,0,

45,S060X014RCT,150,167.32,0,0,0,0,

44,S060X014RCT,150,147.64,0,0,0,0,

43,S060X014RCT,150,127.95,0,0,0,0,

Формат файла достаточно прост для понимания. В каждой строке через запятую указывается номер вывода, файл PAD, координаты X и Y, смещение текста с номером вывода, его угол поворота и зеркальность. Понятно, что с помощью такого файла можно описать расположение выводов и падстеки у любого посадочного места. Кроме того, у вас есть возможность частично или полностью заменить текущие выводы и координаты их расположения.

Этап работы над библиотеками компонентов крайне важен. Библиотеки должны соответствовать всем нормам и стандартам, принятым на производстве печатных плат. OrCAD PCB Editor позволяет в полной мере реализовать данные требования в кратчайшие сроки благодаря широкому набору инструментов для редактирования. 

Литература

Allegro User Guide: Defining and Developing Libraries. Product Version 16.6. October 2012. Cadence Design Systems, Inc.

САПР и графика 5`2013