САПР Cadence OrCAD / Allegro. Часть 3. Производственные настройки.
Настройка вывода производственных файлов.
Вкладка Mfg Applications, раздела Setup -> Design Parameter Editor, содержит в себе несколько утилит, выполняющих функции подготовки различных данных для производства.
Рис. 87. Вид вкладки Mfg Applications.
Кнопка Testprep – Инструмент необходим для управления расположением тестовых точек на печатной плате. Размещение тестовых точек на всех цепях проекта ПП производится в случаях большой серийности проекта, либо необходимости проведения полного функционального контроля. В большинстве проектов ПП присутствуют альтернативные механизмы для проведения контроля, такие как JTAG-тестирование.
Кнопка Thieving – Утилита, позволяющая добавлять группы небольших изолированных участков меди, которые необходимы при производстве сложных многослойных ПП по следующим причинам.
Причина 1: Данные участки меди разгружают внутренние слои по плотности тока при операции гальванической металлизации переходных отверстий, а также создают более равномерное заполнение медью, что улучшает качество и равномерность травления. Для более детального пояснения читайте описание технологии “комбинированного позитивного метода изготовления ПП”.
Причина 2: Участки меди компенсируют остаточные внутренние напряжения в стеклотекстолите. В итоге ПП меньше коробит и не выгибает винтом.
Причина 3: Данные изолированные участки создают дополнительное препятствие для вытекания эпоксидного наполнителя при прессовании. В итоге плата получается более стабильной по толщине на всей площади.
Данные изолированные участки, как правило, не влияют на целостность сигналов из-за своих маленьких размеров. Однако в случае наличия прецизионных аналоговых или СВЧ-цепей конструктор должен проконсультироваться со схемотехником перед тем, как добавлять эти элементы на плату.
Рис. 88. Параметры настройки инструмента Thieving.
Thieving style – форма медных примитивов, которыми будет выполняться заполнение пустых мест.
Thieving outline – определение области, в которой будет производиться выравнивание меди.
Size X/Y – размер медных примитивов по оси Х и Y.
Clearance – зазор до элементов проводящего рисунка (линий, пинов, переходных отверстий)
Spacing X/Y – расстояние между центрами двух соседних графических примитивов.
Border width – толщина контура, определяющего область заполнения.
Staggered pattern – графические примитивы будут располагаться в шахматном порядке.
Clip to Route Keepin – можно приблизительно определять заполняемую область. В процессе заполнения она будет обрезана
до границы Route Keepin.
All Etch layers – один контур для заполнения на всех проводящих слоях. Т.е. заполнение всей платы происходит за одну операцию.
All soldermask layers – элементы будут сгенерированы также и в слоях маски.
Кнопка Silkscreen – Данный инструмент анализирует графику, относящуюся к маркировке, и определенным образом модифицирует её. Происходит обрезка линий, находящихся над вскрытиями от маски. Текстовые объекты перемещаются на свободное место и определенным образом поворачиваются. В ходе работы утилиты создаются дополнительные слои в проекте, которые расположены в классе Manufacturing и называются Autosilk TOP/BOTTOM. В дальнейшем при выводе производственных файлов разработчик может использовать именно эти слои.
Рис. 89. Диалоговое окно настроек утилиты Autosilk.
Layer: TOP/BOTTOM/BOTH – Выбор сторон печатной платы, для которых будет выполнена операция автоматической модификации графики маркировки.
Classes and subclasses – Указание на то, в каких классах и подклассах следует искать информацию, относящуюся к маркировке. Дело в том, что маркировка компонентов может располагаться как в классе Board geometry, так и в классе Package geometry. В первом приближении лучше выставить значение поля в SILK. Считается, что пользователь правильно распределял информацию и графические примитивы при создании посадочных мест.
Elements – Указание на виды объектов, которые следует обрабатывать. Это могут быть только текстовые поля, только графические объекты или всё вместе.
Text Rotation – Указание допустимых углов поворота для текстовых полей.
Allow under components – RefDes элементов будут располагаться в том числе под корпусами компонентов, к которым они принадлежат.
Lock autosilk text for incremental updates – Запрещает редактирование и передвижение объектов, расположенных на слоях Autosilk TOP/BOTTOM при помощи автоматических средств. Пользователь всё ещё может осуществлять редактирование. Данная опция необходима для того, чтобы маркировка оставалась неизменной при передвижении компонента на новое место.
Detailed text checking – Позволяет располагать КП внутри символов, например, внутри буквы О или между сегментами буквы L. Каждый символ в данном случае представляется набором линий.
Maximum displacement – Определяет максимально допустимое расстояние, на которое текст может быть смещён для ликвидации пересечения с КП.
Displacement increment – Шаг смещения при попытках сдвинуть текст с КП.
Clear solder mask pad – Текст не должен находиться над вскрытием от маски. В данном случае все медные площадки игнорируются.
Minimum line length – Минимальная длина сегмента линии, которая ещё может оставаться на слое маркировки. Слишком короткие отрезки линий будут автоматически удалены.
Element to pad clearance – Минимальный зазор между элементом маркировки и контактной площадкой компонента.
Рис. 90. Результат работы утилиты Auto Silkscreen.
Стоит отметить, что на рисунке показан результат совместной работы над маркировкой утилиты и живого человека. В сложных ситуациях программа не может совершить чудо, но очень полезна для подрезки графики, налезающей на КП компонентов. Утилита хорошо выполняет поворот отредактированного человеком текста. Т.е. необязательно вращать RefDes самому, достаточно только определить оптимальное расположение надписи.
Чтобы запустить утилиту Auto Silkscreen, необходимо либо нажать на иконку , либо выбрать пункты меню Manufacture->Silkscreen.
Edit Drafting Parameters – При помощи данного диалогового окна происходит настройка параметров простановки размерных линий
и числовых значений размеров.
Рис. 91. Диалоговое окно для настройки параметров простановки размеров.
Размеры могут проставляться в соответствии с несколькими стандартами. Для российских разработчиков рекомендуем выбирать стандарт ISO, наиболее близкий к ГОСТ. Далее будет дано пояснение для некоторых параметров, присутствующих в диалоговых окнах при выборе стандарта ISO.
Рис. 92. Вкладка Text диалогового окна Dimensioning Parameters.
Text block – номер набора параметров для текста при простановке размеров.
Place holder – разделитель для целых и дробных частей. Будет ставиться точка при значении “Period” и запятая при значении “Comma”. Пример: 0.5 и 0,5.
Use leading zero before decimal point – простановка нуля перед точкой, разделяющей целые и дробные части.
Use trailing zeros after decimal point – простановка нуля после цифр из дробной части для того, чтобы длина размера совпала с указанной в поле Decimal places. Максимальное значение данного поля 4 символа.
Align text with dimension line – располагать текст вдоль размерной линии.
Use diameter symbol for linear dimension – к значению линейного размера будет добавлен значок диаметра.
Diameter symbol location Leading/Trailing – положение значка диаметра перед либо после текстового значения.
Secondary dimensions – опция используется для простановки размеров в двух системах измерения.
Angular Dimensions – простановка угловых размеров.
Рис. 93. Вкладка Lines диалогового окна Dimensioning Parameters.
Terminations – Вид графических примитивов на концах размерных линий.
Leader – Вид примитива для указания объекта простановки радиального размера или диаметра.
Рис. 94. Примеры простановки размеров радиуса и диаметра.
При простановке размеров вида Radial dimension не происходит захват центра дуги, к которой проставляется размер. И размерная линия может располагаться под любым углом к дуге. Это стоит учитывать и по возможности пользоваться размерами вида Diametral dimension. В данном виде размеров размерная линия всегда располагается перпендикулярно к дуге или окружности.
Linear top/left – вид примитива сверху и слева для простановки линейных размеров. Т.е. сверху и слева от линейного размера будет всегда ставиться точка, если настройки соответствуют рис. 93.
Linear bottom/right - аналогично предыдущему значению. Однако определяется вид примитива снизу при простановке линейного размера вдоль оси Y и справа при простановке вдоль оси Х.
Рис. 95. Один из вариантов простановки линейных размерных линий.
Arrows – Раздел, отвечающий за размеры примитивов в форме стрелок.
Bullet diameter – Размер точки на размерной линии.
Slash length – Длина косой линии, если выставлен графический примитив Slash.
Balloons – Вкладка, отвечающая за параметры выносок.
Tolerancing – Вкладка, отвечающая за параметры простановки допусков на размеры.
Для того, чтобы начать поставлять размеры, в версии 17.2 необходимо активировать так называемую среду простановки размеров (Dimension Environment). Эта среда активируется при помощи иконки Dimension Edit, показанной на рис. 96.
Рис. 97. Вид контекстного меню, если активна среда простановки размеров.
Рис. 98. Виды объектов, к которым может быть осуществлена привязка.
Рис. 96. Активация среды простановки размеров.
После того, как пользователь нажмёт на соответствующую иконку и активирует среду простановки размеров, контекстное меню, выпадающее при нажатии правой клавиши мышки, изменится.
После нажатия правой клавиши и появления выпадающего меню пользователю предлагается выбрать необходимое действие. Можно произвести настройку внешнего вида размеров, выбрав Parameters. Либо пользователь может производить другие действия.
Виды размеров, доступных для простановки:
Linear dimension – Простановка линейного размера. Объекты, к которым можно проставить размер, указываются во вкладке Find. Либо пользователь может привязаться к любому требуемому месту на ПП при помощи инструмента привязки “Snap pick to”.
Идеология работы с инструментом привязки: для того, чтобы успешно осуществить привязку к требуемому объекту, необходимо знать тип этого объекта. См. рис. 98. Допустим, пользователю необходимо привязаться к концу сегмента линии или точке излома линии. В данном случае необходимо выбирать Segment Vertex. Однако выбирать пункт необходимо тогда, когда курсор мышки уже находится в пределах данного объекта.
Последовательность действий:
- Необходимо активировать простановку линейных размеров
- После активации нужного вида размеров необходимо навести курсор мышки на нужный объект, к которому пользователь хочет привязаться.
- Затем следует нажать правую клавишу мышки, находясь в пределах этого объекта.
- После нажатия клавиши пользователь выбирает тип объекта, к которому будет осуществлена привязка.
- После данных действий на конце сегмента линии для рассматриваемого примера появится значок засечки/маркера.
Необязательно попадать в конец линии идеально точно. Достаточно, чтобы конец линии находился в пределах перекрестия, которым изображается курсор. Если необходимо привязаться к пину компонента, то курсор должен находиться над нужным пином в момент осуществления привязки. В общих словах: необходимо находиться либо над объектом привязки, либо достаточно близко от него.
Рис. 99. Иллюстрация работы механизма определения точки привязки по команде “Snap pick to”.
Рис. 100. Определение начала координат для простановки Datum Dimension.
- Определить точку начала координат и длину выносных линий с засечками по осям Х и Y см. рис. 100.
- После отрисовки линий засечек необходимо выбрать объект простановки размеров, кликнув на символ, пин, линию и т.п.
- Затем необходимо определить место расположения текста размера по оси Х и Y.
Рис. 101. Итоговое состояние простановки размеров относительно ноля.
При простановке данного вида размеров существует возможность генерации дополнительных сегментов линий, ведущих от линий по оси X/Y, изображенных на рис. 101, до той точки, которую укажет пользователь. Если в генерации дополнительных сегментов линий нет необходимости, то после первого же клика левой клавишей мышки в определенной точке проекта необходимо нажать правую клавишу и в выпадающем меню выбрать строку Next. Тем самым пользователь перейдёт к простановке размера относительно следующей оси.
После указания места размера относительно следующей оси необходимо опять нажать правую клавишу мышки и выбрать Done, чтобы закончить.
Рис. 102. Ситуация при простановке Datum dimension, которая возникнет,
если правую кнопку мышки не нажать вовремя.
Angular dimension – простановка значения угла между двумя сегментами линий. Механизм работы с данным типом размеров интуитивно понятен. Необходимо указать два сегмента линий и расположение текста (рис.103).
Leader line – это простая многосегментная линия со стрелкой. Необходимо выделить объект, к которому будет привязан конец линии и стрелка. Затем указать столько сегментов, сколько требуется.
Diametral leader – многосегментная линия со стрелкой, показывающая диаметр окружности. Процедура создания такая же,
как и для Leader line.
Рис. 103. Пример постановки углового размера, Leader Line и Diametral leader, соответственно.
Radial leader - многосегментная линия со стрелкой, показывающая радиус окружности. Процедура создания такая же,
как и для Leader line.
Baloon leader – многосегментная линия со стрелкой, на конце которой расположена ссылка на конструкторское требование.
Chamfer leader – многосегментная линия со стрелкой, указывающая размер фаски.
Рис. 104. Пример постановки Radial leader и Chamfer leader, соответственно.
В большинстве случаев при рисовании различных видов многосегментных линий не получается точно отложить определенное расстояние вдоль оси Х или Y при помощи только одной мышки. Однако это довольно легко сделать при помощи указания сдвижки/инкремента вдоль определенной оси. Чтобы отложить отрезок, параллельный оси Х, необходимо набрать в командной строке
“ix <длина сдвижки>”. Если длина сдвижки будет положительной, то отрезок будет отложен слева направо.
Такая же идеология поддерживается при сдвижке по оси Y. Примеры: ix 2 iy 3, ix -5 iy -8. Первым должно идти всегда значение сдвижки по оси Х. Команда чувствительна к регистру. Перед набором команды убедитесь, что в командной строке отсутствуют мусорные символы.
Далее следует краткое описание действий с размерами.
Show dimensions – Сделать размеры видимыми.
Align dimensions – Выровнять размеры вертикально или горизонтально относительно выбранного первым.
Lock/unlock dimensions – Запретить/разрешить редактирование размеров.
Z-move dimensions – Перенести размеры на другой класс/подкласс.
Delete dimensions – Удалить выбранные размеры.
Instance parameters – Редактировать параметры выбранного размера. Перед пользователем будет представлено окно настройки параметров размеров. Эти параметры будут действительны только для выбранного размера.
Режимы редактирования - Application modes.
Поскольку компания Cadence прислушивается к пожеланиям пользователей, а пользователи всё время чего-либо желают, количество функций САПР Allegro постепенно увеличивается. С определенного момента для облегчения работы с большим количеством функций было принято решение разделить их на разделы. Разделение произошло по признаку функционального назначения.
Существует несколько разделов или так называемых режимов работы - “Application modes”. Список режимов показан на рис. 105.
Рис. 105. Список Application mode.
General edit – Позволяет выполнять общие задачи редактирования, такие как: расстановка элементов, разводка проекта, передвижение объектов, копирование или зеркальное отражение.
Placement Edit – Посвящён вопросам расстановки компонентов. Также при активированном режиме Placement edit доступно создание копий расстановки элементов и участков трассировки. Подробнее о процессе расстановки элементов будет рассказано позднее.
Etch edit – В данном режиме выполняются все действия, связанные с созданием и редактированием проводящего медного рисунка. В терминологии программы линия трассировки называется Copper line, или сокращённо Cline. Данный тип объектов в этом режиме является «выбранным по умолчанию» во вкладке Find. Однако действия с проводящими полигонами вынесены в отдельный режим Shape Edit.
Flow planning – Данный инструментарий очень полезен для начального планирования трассировки в сложных многослойных проектах.
Signal integrity – Предоставляет доступ к часто используемым при моделировании командам. Позволяет частично автоматизировать процесс подготовки проекта к моделированию. Позволяет производить различные проверки цепей проекта. Однако стоит заметить, что при всех операциях, которые не связаны с запуском программных модулей из пакета Sigrity, используется расчётчик предыдущего поколения BEM 2D. Данный движок не учитывает неоднородности земли и питания в проекте и может использоваться только для предварительных оценок работоспособности, либо для пред-топологического моделирования.
Shape edit – Предоставляет расширенный инструментарий для работы с полигонами. Будет рассмотрен позднее.
Кроме данных режимов, существует ещё несколько. Однако их доступность определяется лицензиями, запущенными на рабочем месте. В повседневных действиях, которые совершает трассировщик ПП, дополнительные режимы, как правило, не нужны. Однако их описание можно найти в разделе Help (рис.106).
Рис. 106. Необходимый раздел в Help, содержащий описание всех режимов.
Установка параметров сеток Setup –> Grids.
Вы можете задать сетку отдельно для графических объектов и для слоев трассировки. Данная команда подробно будет рассмотрена в разделе, описывающем процесс редактирования символов посадочных мест.
Изменение точки начала координат в проекте, Setup –> Change Drawing origin.
При активации данной команды достаточно кликнуть левой клавишей мышки на любом месте в проекте, и «ноль» будет перенесён в новое место. Либо можно ввести координаты в цифровом виде при помощи диалогового окна “Pick” (рис.107). После активации окна достаточно указать координаты нового места для 0,0. Первая координата по оси Х, вторая по оси Y. При необходимости можно задать относительные (Relative) координаты.
Рис. 107. Иллюстрация процесса указания координат - команда Pick.
Разработка стекапа платы. Раздел Setup->Cross-Section.
Перед тем, как начинать трассировку проекта, разработчик должен определиться со структурой слоев, расположением полигонов земли и питания, толщинами диэлектриков и слоев меди. Для этой цели в Allegro PCB Editor служит раздел Cross Section (рис.108).
Рис. 108. Один из вариантов Cross Section реального проекта ПП.
Прежде всего стоит сказать, что если для пользователя вид ячеек с данными в разделе Cross Section слишком мал, то его всегда можно увеличить. Для этого необходимо кликнуть левой клавишей мышки на какую-либо ячейку, затем зажать клавишу CTRL и покрутить колесико мышки. Масштаб будет увеличен или уменьшен соответственно.
На рис. 109 представлен один из вариантов настройки Cross Section. В верхней части расположены названия колонок. Видимостью колонок можно управлять. Для того, чтобы скрыть неиспользуемую группу колонок, необходимо выделить её, нажав на названии левой клавишей мышки. Затем пользователю необходимо нажать правую клавишу мышки и выбрать пункт “Hide column group”.
Рис. 109. Скрытие группы колонок.
Для того, чтобы добавить новые колонки в разряд видимых, необходимо выбрать пункт меню, показанный на рис. 110.
Рис. 110. Активация диалогового окна добавления новых колонок в Cross Section.
Рис. 111. Окно управления видимостью колонок.
Далее необходимо расставить галочки в соответствии с запросами пользователя.
При первом запуске Cross Section в новом проекте присутствуют только слои TOP, BOTTOM. Переходные отверстия не определены.
Рис. 112. Начальный вид раздела Cross Section.
Конечно же, пользователь может пропустить этап определения порядка следования слоёв и разработки нового стекапа платы, если используется стандартный стекап, и файлы для него сохранены на диске. Для этого в разделе Import, находящимся в верхней части экрана, необходимо выбрать соответствующую опцию. Если никаких файлов для стекапа печатной платы не было сохранено ранее, пользователю придётся построить новый стекап самостоятельно.
Прежде всего необходимо определиться с количеством и порядком следования слоёв в ПП. Существует множество ситуаций, вариантов, и универсального стекапа ПП нет. Однако в большинстве случаев мы рекомендуем чередовать слои сигнальных проводников со слоями, содержащими только сплошной полигон земли. Необходимо прятать слои питания между двумя слоями земли. Приведём пример порядка следования слоёв для ПП с двумя внутренними сигнальными слоями и двумя слоями питания.
Чтобы набрать стекап, необходимо совершить следующие действия:
-
Выделить ячейку, расположенную между TOP и BOTTOM слоями.
-
Нажать правую кнопку мышки и выбрать Add layer pair below.
-
Проделать данную операцию столько раз, сколько требуется слоёв в проекте.
После того, как необходимое количество слоёв было добавлено, изменим имена проводящих слоёв. Для этого необходимо выделить ячейку с именем слоя и ввести новое название.
После этого настанет время для подбора толщины диэлектриков и ядер. Например, нам необходимо подобрать толщины так, чтобы в общем случае толщина платы составила типовое значение 1.6 мм (если в ТЗ не указано иное).
Необходимо учитывать, что на сегодняшний день самый верхний слой диэлектрика в многослойной плате, как правило, является препрегом, поверх которого припрессовывается медная фольга. Далее следует ядро с нанесенной с двух сторон медью, затем опять препрег и т.д. Из-за этого первое значение толщины диэлектрика после слоёв TOP и BOTTOM может быть равно, например, 0.102 мм (эта толщина складывается из суммы толщин двух препрегов типа “106”, имеющих толщину 0.051 мм). Между двумя слоями Power слоями желательно положить как можно более толстый диэлектрик, чтобы взаимовлияние одного слоя питания на другой было как можно меньше.
Толщина меди на внешних слоях ПП складывается из исходной фольги 18 мкм, плюс толщина химического меднения 2-3 мкм, плюс толщина гальванической металлизации 15-25 мкм. Толщина на внутренних слоях меди в первом приближении взята равной 18 мкм, хотя многие заводы рекомендуют использовать для внутренних слоев медь толщиной 35 мкм, а для плат с большими токами толщина меди может составлять и 70, и даже 105 и более мкм.
После задания толщин слоев необходимо выставить правильный тип слоёв земли и питания, который должен быть Plane.
Тип Conductor используется для сигнальных слоёв.
Затем настала пора задать правильное значение поля Dielectric constant и Etch factor. Значения угла бокового подтрава проводников Etch Factor зависят от уровня технологии на конкретном заводе-производителе. Для примера угол бокового подтрава зададим 80 градусов. Значит, верхняя поверхность проводника немного меньше нижней поверхности. Значение диэлектрической проницаемости возьмём равным 4, что типично для обычного материала FR4, из которого изготавливается большинство многослойных печатных плат. Конкретное значение необходимо брать из данных, предоставляемых производителем на используемый материал.
Теперь, если в проекте есть требование вести проводники с контролируемым волновым сопротивлением, например, 50 Ом, настала пора путём подбора значений ширины проводников найти такую, при которой значение импеданса одиночной линии будет равным именно 50 Ом.
Некоторых пользователей смущает, что значение диэлектрической проницаемости в таблице Cross Section в проводящих слоях тоже выставлено равной 4, как и для слоев диэлектрика. Многие думают, что необходимо выставлять единицу. На самом деле – это значение диэлектрической проницаемости диэлектрика, который окружает проводящий рисунок на данном слое. Тогда логично было бы выставить на TOP и BOTTOM значения диэлектрической проницаемости воздуха. Но на самом деле в подавляющем количестве случаем плата покрыта маской, а её диэлектрическая проницаемость также близка к 4.
Рис. 113. Конечный вид Xsection после первой итерации.
После первой попытки подобрать ширину проводников мы видим, что во внутренних слоях это нельзя сделать, оставаясь в пределах пятого класса точности по ГОСТ (минимум 0.1 мм по ширине проводника). Если дальше снижать ширину проводника, то начнёт возрастать стоимость изготовления ПП. Следовательно, необходимо немного отодвинуть опорные слои земли от проводящих слоёв
L3-Int1 и L8-Int2 для того, чтобы волновое сопротивление проводников возросло. После коррекции толщин препрегов и ядер можно будет увидеть картину, похожую на ту, что изображена на рис. 114.
Рис. 114. Вид Xsection при новых значениях толщин диэлектриков и ширин проводников.
Процесс подбора диэлектриков и параметров проводников – это прежде всего итеративный процесс. Не стоит пытаться подобрать эти значения с первого раза. После того, как значения одиночных проводников были подобраны, необходимо рассчитать параметры дифференциальных пар, если они присутствуют в проекте.
Рис. 115. Значения ширины проводников и зазора в дифф.парах.
Не стоит пытаться подбирать ширину проводников, составляющих дифф.пару, так, чтобы по отдельности их волновое сопротивление было равно 50 Ом. Такая ситуация, конечно, хороша, но совсем не обязательна. Если обратить внимание на новые значения ширины проводников (рис 115), то они не равны старым для одиночных линий. Все вычисленные значения вариантов ширин и зазоров для одиночных линий и для дифф. пар необходимо запомнить для последующего занесения их в таблицу правил Constraint manager проекта.
Стоит отметить, что существует возможность разделения платы на зоны и определения отдельного стекапа для каждой зоны. Это очень удобно при проектировании гибко-жестких ПП. Эта функция будет рассмотрена позже, поскольку в большинстве случаев такое разделение на зоны не нужно.
Раздел добавления пользовательских слоёв Setup->Subclasses.
Рис. 116. Меню добавления пользовательских подклассов/слоёв в проект ПП.
Если пользователю необходимо хранить графическую информацию на слоях/подклассах, отличающихся от тех, которые есть по умолчанию, то надо вызвать функцию Setup->Subclasses, кликнуть на нужном классе объектов, куда планируется внести новый подкласс. И далее создать требуемый подкласс, задав его имя.
Рис. 117. Новый подкласс REPER_DOTS успешно добавлен.
Пользовательские подклассы можно переименовывать, добавлять и удалять. Подклассы, создаваемые по умолчанию, не подлежат такому виду редактирования и обозначены серым цветом. См. рис. 117.
Создание преднастроенных видов для просмотра проекта ПП и для вывода производственных файлов.
В процессе работы инженера над проектом ПП возникает задача управления видимостью тех или иных объектов на печатной плате. Например, пользователю необходимо включить слой шелкографии или увидеть всё, что находится на одном из внутренних слоёв. Это может потребоваться как при интерактивной работе с проектом, так и при экспорте «послойных» производственных файлов, например, в формате Gerber. Рассмотрим методологию управления видимостью объектов в Allegro PCB.
Как уже говорилось ранее, вся информация проекта печатной платы распределена на классы. Классы разделяются по видам информации, которые они содержат. Внутри класса возможно более детальное дробление информации по различающимся признакам. Таким образом, каждый пин посадочного места, каждое переходное отверстие, каждый проводник принадлежат своему подклассу. Чтобы увидеть определенный тип объектов, достаточно сделать видимым нужный подкласс.
Видимостью подклассов можно управлять из окна Visibility (рис.118). Но это не всегда удобно и быстро.
Рис. 118. Одно из состояний окна Visibility для случая двусторонней ПП.
Другой способ управления видимостью групп объектов – это использование уже преднастроенных заранее состояний видимости. Пользователь заранее сделал видимым всё, что ему необходимо, и запомнил это состояние под определённым названием. Далее пользователю необходимо только выбрать нужное состояние в перечне View.
Управление перечнем View осуществляется в меню Manufacture->Artwork, одно из основных предназначений которого – настройка видов для экспорта производственных файлов.
Выбрав указанный на рис. 119 пункт меню, пользователь увидит диалоговое окно для создания преднастроенных состояний видимости.
Данное диалоговое окно служит нескольким целям, одна из которых – получение Gerber файлов. Данные создаются в соответствии с настроенными состояниями видимости объектов на ПП.
Рассмотрим процесс создания нового преднастроенного вида «с нуля». Для этого необходимо выделить левой кнопкой мышки любой существующий вид и нажать правую кнопку мышки для вызова контекстного меню (рис.120).
Рис. 119. Активация диалогового окна управления преднастроенными состояниями видимости.
Рис. 120. Выпадающее меню, появляющееся
при нажатии правой кнопки мышки.
Из выпадающего меню необходимо выбрать строку Add Manual и задать имя нового «вида», например, SILK_TOP для верхнего слоя шелкографии. После введения имени перед пользователем откроется список всех классов и подклассов, содержащихся в проекте. Необходимо указать видимые в данном случае подклассы. Процесс похож на совершение покупок в супермаркете. У пользователя есть пустая тележка с названием SILK_TOP, в которую необходимо накидать покупок/объектов.
Рис. 121. Преднастроенные виды для слоёв TOP, BOTTOM и маркировки TOP.
После того, как пользователь отметит все необходимые для включения подклассы и нажмёт на ОК, он увидит картинку схожую с изображенной на рис. 121. Если пользователь забыл добавить какой-либо тип объектов в видимые, то необходимо раскрыть преднастроенный вид (нажав плюсик), установить фокус на любом подклассе, нажать правую клавишу мышки и выбрать Add. Затем повторить процедуру добавления объектов в список видимых. Если какой-то из подклассов надо удалить (например, пользователь решил, что в слое маркировки на готовой плате не должны отображаться позиционные обозначения REFDES компонентов), то можно выделить этот подкласс и использовать команду Cut.
После того, как пользователь создал все виды, которые ему понадобятся при работе над проектом, необходимо нажать на Ok, и после этого в строке View окна Visibility вы можете быстро выбрать необходимый вид для отображения на экране.
Рис. 122. Выбор преднастроенного вида в строке View.
Опишем наиболее важные параметры из раздела Film options
Undefined line width – В проекте ПП Allegro PCB могут присутствовать линии нулевой толщины. Однако, в формате Gerber RS274X такая ситуация недопустима. Данный параметр отвечает за то, какую толщину приобретут линии нулевой толщины при переводе их в формат Gerber. Причём это будет верно только для выбранного в данный момент слоя в левой части экрана.
Plot mode positive/negative – Позитивные или негативные фотошаблоны будут получены при генерации Gerber файлов.
Suppress unconnected pads – Подавлять ли неиспользуемые КП на внутренних слоях ПП. На самом деле данную опцию лучше применять при трассировке ПП, а не на заключительном этапе. Подавлять неиспользуемые КП на этапе получения Gerber файлов методически неверно. Одна из целей подавления КП – это получение дополнительного места для прокладки проводников. Настраивать подавление КП при трассировке можно на этапе создания этих КП в Padstack editor.
Vector based pad behavior – Круглые отступы в полигонах, которые образуются вокруг переходных отверстий и других окружностей, будут упрощены и заменены многоугольниками. Это упрощает конечные Gerber-файлы.
Создание контура печатной платы и служебных зон Package keepin и Route keepin.
Перед тем, как приступить к импорту информации о межсоединениях компонентов из схемного редактора, необходимо создать контур печатной платы и определить различные зоны в пределах этого контура. Базовые зоны, которые желательно иметь в каждом проекте – это зона расположения компонентов Package Keepin / ALL и зона трассировки Route Keepin / ALL.
Создавать контур печатной платы можно как вручную, так и при помощи импорта из сторонних САПР, которые предназначены для разработки механики или создания чертежей. В сторонних САПР будет гораздо проще и быстрее нарисовать контур сложной формы, а затем импортировать этот контур через формат DXF в Allegro PCB Editor.
Процедура импорта контура ПП из формата DXF начинается с активации команды File->Import->DXF После этого возникает диалоговое окно, показанное на рис. 123.
Необходимо указать файл, который необходимо импортировать. Путь к файлу указывается в строке напротив надписи DXF file. Далее указываются единицы измерения, в которых выполнен чертёж.
ВНИМАНИЕ! Если не поставить галочку напротив Incremental addition, то вся информация из проекта будет утеряна и после импорта сохранится информация только из DXF файла. Если галочку поставить, то информация из DXF файла добавится к уже существующим данным проекта.
После указания пути к файлу контура платы необходимо назначить соответствие слоёв из DXF-файла классам и подклассам из Allegro PCB Editor. Это делается в диалоговом окне, показанном на рис. 124. Активируется данное окно при нажатии на кнопку “Edit/View layers” в нижней части окна “DXF in”.
Рис. 123. Окно импорта информации из DXF формата.
Рис. 124. Окно для указания соответствия слоёв из различных САПР,
порядок действий для назначения соответствия.
После совершения всех действий, необходимо нажать на ОК, а затем на “Import”. Новые данные будут импортированы в проект.
Стоит отметить, что в импортируемых данных не должно содержаться информации на русском языке, поскольку Allegro PCB Editor не воспринимает русские буквы, и процесс импорта будет прерван.
После завершения импорта информации пользователь увидит на экране контур печатной платы в том классе и подклассе, который был выбран при настройке соответствия.
Создание рабочих областей на печатной плате.
Рис. 125. Простейший контур ПП, полученный из DXF файла.
После импорта информации из DXF в проекте ПП создаются объекты типа “непроводящая линия”. В классификации объектов PCB редактора такой тип объектов называется “Line segments”. Однако в редакторе ПП любая область, в том числе и контур платы – это объект типа “незаполненный полигон” или “unfilled shape”. Таким образом необходимо преобразовать разрозненные участки линий в единый полигон – контур области. Это делается при помощи команды Shape->Compose shape. Это будет первой командой, на примере которой мы рассмотрим настройку вкладок Find и Options.
Активируйте в меню или через иконку команду Shape->Compose shape, затем переместите указатель мыши в правую часть экрана и во вкладке Find снимите все галочки, за исключением одной, относящейся к типу объектов “Lines”. Во вкладке Options необходимо указать: на каком классе и подклассе в проекте будет создан незаполненный полигон – например, BOARD GEOMETRY / DESIGN_OUTLINE для задания контура платы, и включить его видимость (включить квадратик-переключатель слева от имени подкласса). Далее необходимо последовательно отметить все четыре стороны контура, если контур имеет прямоугольную форму.
Если контур очень сложный, то кликать по каждому сегменту линии долго, и это может породить ошибки. В этом случае необходимо установить курсор мыши в левый верхний угол рабочей области, затем зажать левую клавишу мышки и потащить курсор в правый нижний угол так, чтобы контур ПП оказался внутри появляющейся прямоугольной области. Если весь контур поместился в область, достаточно отпустить клавишу мышки, и на указанном подклассе создастся незаполненный полигон.
Рис. 126. Состояние вкладок Find и Options при настройке команды Shape->Compose shape.
После выполнения данной операции в области Command появятся надписи следующего содержания:
Select the lines / line segments to be composed into shape(s).
Enter selection point
Processing the selected segments. For a large number of segments, this may take a few minutes.
Use the "Close Shape" option from the RMB popup to close any shape(s) left open.
A total of 1 shapes were created.
Это означает, что контур платы был успешно создан. После создания контура платы в виде полигона становится возможным применить к нему команду Z-copy для копирования в другие слои. Эта очень полезная команда находится в разделе Edit->Z-copy. После её активации необходимо указать на вкладке Options класс и подкласс, где будет создан новый незаполненный полигон. А также указать: будет ли новый полигон больше или меньше относительно исходного контура. Если создать новый полигон на проводящих слоях, то он автоматически станет заполненным, поскольку незаполненные полигоны на проводящих слоях не допускаются.
Рис. 127. Вид окна options
для настройки команды Z-copy.
На рис. 127 пользователь указал, что новый полигон будет создан на классе “Route Keepin” (область, в которой разрешена трассировка) и подклассе “ALL” (для всех объектов трассировки). Он будет меньше исходного (Size:Contract) на 0.6 мм, это сделано, чтобы трассировка не могла подойти вплотную к краю платы.
Остаётся только кликнуть мышкой на исходном контуре ПП и получить новую область меньших размеров. Главное – корректно указать на вкладке Options новый подкласс, а также заранее включить его видимость, иначе будет невозможно визуально убедиться, что команда копирования выполнена. Создав область на классе “Route Keepin” / ALL, следующим шагом создайте такую же область на классе “Package Keepin” / ALL (в которой разрешено размещение компонентов), проверьте ее наличие визуально, и можно считать, что ваш проект готов к началу работы.
Команда Z-copy очень удобна при копировании информации с класса на класс. Перенос каких-либо объектов простой командой Copy между классами по понятным причинам запрещён. В этом случае и пригодится команда Z-copy.