ТЕХНОЛОГИЯ ПРИБОРОСТРОЕНИЯ
УДК 658.512.2
DOI: 10.17586/0021-3454-2015-58-10-840-846
АНАЛИЗ И КОРРЕКЦИЯ DRC-ОШИБОК В САПР ПЕЧАТНЫХ ПЛАТ
Е. Б. Романова1, А. В. Сумцов2
1 Университет ИТМО, 197101, Санкт-Петербург, Россия E-mail: [email protected]
2 Концерн «ЦНИИ "Электроприбор"», 197046, Санкт-Петербург, Россия
Описан процесс проверки правил проектирования DRC (Design Rule Checker) в системе автоматизированного проектирования (САПР) Altium Designer. Выполнен анализ ошибок проектирования печатных плат в Altium Designer 2015. Рассмотрены ошибки, наиболее часто возникающие при проектировании печатных плат в САПР: нарушение целостности сигналов, отклонения в размерах зазоров между объектами в проводящих (металлизированных) слоях, наличие антенн, нарушение размеров отверстий и максимальной высоты компонентов, отсутствие тестовых точек, наличие неразведенных электрических связей, наличие коротких замыканий, расположение маркировки (текста в слое шелкографии) вне контура платы. Предложены наиболее приемлемые способы коррекции каждой из рассмотренных ошибок. В результате анализа сформированы универсальные способы коррекции ошибок проектирования печатных плат. Способы пригодны для любых систем автоматизированного проектирования печатных плат.
Ключевые слова: системы автоматизированного проектирования, печатные платы, Altium Designer, Design Rule Checker.
Одним из завершающих этапов проектирования печатных плат (1111) является контроль технологических параметров. В системах автоматизированного проектирования (САПР) 1111 контроль технологических параметров осуществляется с помощью программы Design Rule Checker (DRC). DRC — это высокопроизводительный автоматизированный программный модуль, который проверяет логическую и физическую целостность проектов 1111 [1]. Использование этого модуля в конструкции платы необходимо для контроля ограничений, в частности, размеров зазоров.
Сегодня лидерами в области автоматизированного проектирования 11 являются компании Altium (система Altium Designer), Mentor Graphics (программное обеспечение Expedition, PADS), Zuken (CADSTAR) и др. Работа программного модуля DRC в САЛР 11 включает два основных этапа: установка ограничений (зазоров, ширин проводников и др.) и настройка проверки правил (набор правил, которые должны быть проверены перед отправкой 11 на производство). Интерфейсы установки ограничений и настройки проверки правил в различных САЛР могут различаться. Лосле настройки выполняется проверка, в результате которой формируется список ошибок. Для изготовления качественной 11 ошибки должны быть проанализированы и устранены. Нроцедуры анализа и коррекция DRC-ошибок во всех САЙР 11 идентичны, поэтому предложенные способы коррекции DRC-ошибок могут быть использованы в любой СА1Р 11.
В литературе методы коррекции DRC-ошибок представлены очень кратко. Например, в работе [2] рассмотрены ошибки целостности сигналов, в [3] — ошибки, влияющие на изготовление и т.п. Поэтому всесторонний анализ и описание способов коррекции наиболее часто встречающихся DRC-ошибок является актуальной задачей.
Количество правил в программном модуле проектирования платы (PCB) САПР 1111 довольно велико — в Altium Designer их более 50. Не обязательно устанавливать ограничения для всех правил, потому что некоторые правила могут не использоваться в ходе проверки (касающиеся, например, высокоскоростных устройств или целостности сигналов).
В настоящей статье описывается интерфейс Altium Designer 2015. Приводятся рекомендации по исправлению DRC-ошибок различными способами, позволяющие применить результаты анализа к различным 1111: одно-, дву-, многослойным; цифрового, аналогового или смешанного типа.
Описание DRC-проверки в Altium Designer. Установка правил и ограничений проектирования в Altium Designer осуществляется через диалоговое окно правил проектирования, которое вызывается с помощью команды меню Design/Rules. Все доступные в PCB-редакторе правила проектирования разделены на десять функциональных групп, каждая из которых отображается на отдельной вкладке диалогового окна [4]. Категории всех правил приведены на рис. 1. Каждая категория имеет свою сферу применения: для трассировки (Routing), для размещения компонентов (Placement), для проверки электрических параметров (Electrical). Для подготовки производства используются категории Mask, Testpoint и Manufacturing. Для ПП, включающих сплошные слои (многослойных ПП) и полигоны, используется категория Plane. В категории SMT имеется набор правил для компонентов поверхностного монтажа. Категории High Speed и Signal Integrity используются для анализа высокоскоростных плат.
PCB Rules and Constraints Editor [mm]
_
EEE-f Electrical Routing EE- SMT Й- " Mast Й- Plane ■ ' ' Те i t point
Manufacturing EE- High Speed EE- Placement 0- Signal Integrity
Рис. 1
Правила, которые будут проверены, сгруппированы на вкладке Rule To Check в диалоговом окне Design Rule Checker, которое можно вызвать командой меню Tools / Design Rule Check. Для включения правил в пакетную проверку или проверку в режиме реального времени необходимо установить флаг в соответствующем столбце напротив правила. На начальном этапе (при первой проверке каждого проекта) рекомендуется включение проверки всех правил. После запуска и выполнения программы DRC список ошибок формируется в отчете, а также помещается в окне Messages (рис. 2), и ошибки отображаются в топологии ПП.
Messages
I Document | Source
Message
I Time I Date [No,
Qi [Error]
module
Signal Integrity Setup - No supply nets defined in PCB rules,
0:31:10 13.02,2015 1
1 [Clearance Constraint Violation] module.PcbDoc Advanced PCB
■ [Net Antennae Violation] module.PcbDoc Advanced PCB I [Hole Size Constraint Violation] module.PcbDoc Advanced PCB 1 [Height Constraint Violation] module.PcbDoc Advanced PCB 1 [Fabrication Testpoint Usage Violation] module.PcbDoc Advanced PCB I [Un-Routed Net Constraint Violation] module.PcbDoc Advanced PCB I [Short-Circuit Constraint Violation] module.PcbDoc Advanced PCB
■ [SilkTo Board Region Clearance Violation] module.PcbDoc Advanced PCB
Clearance Constraint (Collision < 0,25mm) Between Tract (84.25mm,202,5mm)(102.5mm,202.5mm) Top Layer And Pad Free-0(93.5mm,200..,, 0:31
Net Antennae; Track (79.5mm,197,75mm)|81,75mm,197.75mm) Bottom Layer On (Layer = Bottom Layer) 0:31
Hole Size Constraint (3mm > 2.54mm] Pad Free-0(93,5mm,200,5mm) Multi-Layer Actual Hole Size = 3mm 0:31
Height Constraint Small Component C2-Cap |85mm,207,5mm] on Top Layer Actual Height = 6mm 0:31
Fabrication Testpoint Usage; Net GND - Missing required testpoint 0:31
Un-Routed Net Constraint Net GND Between Pad Dl-7(110mm,217,5mm] Multi-Layer And Track (115mm,197.75mm](115mm,202.5mm) Bo.., 0:31
Short-Circuit Constraint; Between Track (84,25mm,202.5mm)(102,5mm,202,5mm] Top Layer And Pad Free-0(93,5mm,200,5mm] Multi-Layer,.. 0:31 SilkTo Board Region Clearance; (Out of sllkscreen region] Text "Edge Con 22' (80.416mm,185,42mm) Top Overlay Silk primitive on board r.,. 0:31
13.02,2015 2
13.02,2015 3
13.02,2015 4
13.02,2015 5
13.02,2015 6
13.02,2015 7
13.02,2015 S
13.02,2015 9
Рис. 2
Анализ DRC-ошибок. Отчет об ошибках (в окне Messages) содержит семь столбцов: Class, Document, Source, Message, Time, Date and No (см. рис. 2). Если в столбце Source указан Signal Integrity, то в столбце Class указывается тип ошибки (в данном случае — Error). Запись в 1-й строке означает, что на 1-м этапе (7-й столбец) при проверке проекта „module" (2-й столбец), выполненной 13.02.2015 (6-й столбец) в 0:21:14 (5-й столбец) возникла ошибка (1-й столбец) целостности сигналов (3-й столбец), и в результате было сформировано описание ошибки „Setup — No supply nets defined in PCB rules" (4-й столбец). Помимо сообщения об указанной ошибке после запуска DRC (до формирования отчета) появилось сообщение об ошибке „Source schematic documents not available. Signal Integrity cannot continue". Появление этого сообщения вызвано тем, что файл PCBDoc не был связан со схемой. Для анализа целостности сигналов нужна предварительная подготовка проекта: PCBDoc должен быть частью проекта PrjPCB, также проект должен содержать схему, необходимо подключить IBIS-модели и выполнить множество других предварительных настроек, в том числе надо указать уровни напряжений (Supply nets). В отсутствие схемы анализ целостности сигналов невозможен [5], в этом случае проверку всех правил целостности сигналов надо отключить (рис. 3).
^ Design Rule Checker [mm] 1 ^
■ * I Report Options ^ Rules To Check f Electrical ji Routing
" Testpolnt
Manufacturing S Highspeed Q Placement №
Siginall Integrity
V I Category
Batch
||l.ii> Undershoot - Rising Edge Signal Integrity □
llljii-Undershoot - Falling Edge Signal Integrity □
|[|ji> Supply Nets Signal Integrity □
|||ji> Slope - Rising Edge Signal Integrity □
||liv- Slope - Falling Edge Signal Integrity □
||l.ii> Signal Top Value Signal Integrity □
llljii-Signal Stimulus Signal Integrity □
|P|i> Signal Base Value Signal Integrity □
IPl'ii- Overshoot - Rising Edge Signal Integrity □
|p.il'-Overshoot - Falling Edge Signal Integrity □
Ip.iii-Impedance Signal Integrity □
IPji.i-Flight Time - Rising Edge Signal Integrity □
|P|i> Flight Time - Falling Edge Signal Integrity □
Рис. 3
Если в столбце Source есть запись Advanced PCB (рис. 2, 2—9-я строки), то в столбце Class указывается класс правила, принадлежащий одной из категорий, в которой оно было задано. Сообщение „Advanced PCB" означает, что имеется несоответствие значения параметра объекта в модели 1111 значению параметра в правилах. Для исправления ошибок этого класса необходимо изменить параметры объектов в модели ПП или изменить значения параметров в правилах (Design / Rules).
Указание во 2-й строке на класс „Clearance Constraint Violation" означает, что обнаружено нарушение в разделе Clearance — ошибка в минимальном зазоре (0,25 мм) между проводником, расположенным в точках с координатами 84,25; 202,5 мм (начало проводника) и 102,5, 202,5 мм (конец проводника) в слое Top, и свободной контактной площадкой № 0 (это крепежное отверстие), расположенной в точке 93,5; 200,5 мм в слое Multi-Layer. В данном случае следует увеличить расстояние между проводником и контактной площадкой (правило задано верно — по 3-му классу точности в соответствии с ГОСТ [6]).
В 3-й строке указано наличие антенны, которой является проводник в слое Bottom. В Altium Designer правило Net Antennae расположено в категории Manufacturing. По умолчанию, в плате не должно быть антенн. Для того чтобы соблюсти правило, надо удалить антенну в ПП. Но если антенна нужна, следует изменить правило (или создать новое для конкретной цепи) и задать максимальную длину антенны.
В 4-й строке класс „Hole Size Constraint Violation" означает, что имеется нарушение в разделе правил Hole Size — превышен диаметр отверстия (3 мм вместо установленного по умолчанию 2,54 мм) свободной контактной площадки №0 в слое Multi-Layer. В данном слу-
чае надо изменить правило, т.к. отверстие 3 мм является крепежным и необходимо в плате. Правило Hole Size расположено в категории Manufacturing.
В 5-й строке (см. рис. 2) запись означает, что не соблюдено ограничение высоты компонентов — С2 типа Cap в слое Top Layer имеет высоту б мм. Для рассматриваемого проекта в DRC/Rules задана максимальная высота компонентов 5 мм, поскольку плата устанавливается в плоский корпус. Исправить эту ошибку можно посредством замены в модели платы типа корпуса конденсатора на более низкий. Или можно установить корпус горизонтально (в этом случае надо создать новое посадочное место). При горизонтальной установке корпус занимает много места на плате, но если свободное место имеется, то такой вариант приемлем (хотя горизонтальная установка конденсаторов в форме параллелепипеда, а именно такой используется в рассматриваемом проекте, трудоемка, так как специально приходится формовать выводы). Стоит отметить, что в САПР двумерного моделирования ПП (P-CAD, Expedition и др.) невозможна проверка на зазоры и электромагнитную совместимость по высоте [7]. В САПР ПП трехмерного моделирования (Altium Designer, CADSTAR и других) такая возможность имеется. При проверке трехмерных моделей контролируется высота корпусов электронных компонентов и/или деталей, установленных друг под другом. В трехмерных САПР ПП обычно можно добавлять в модель ПП модуль конструкции верхнего уровня (корпус, каркас и т.д.) и проверять отклонения по высоте, связанные с установкой в модуль верхнего уровня [В].
В б-й строке описано нарушение отсутствия тестовой точки на цепи GND. Тестовые точки нужны для контроля электрических параметров PCB. Правила Fabrication Testpoint используются для контроля параметров печатной платы без установленных корпусов электронных компонентов (проверяются обрывы проводников и короткие замыкания). Assembly Testpoint используются для контроля сборки платы (проверяются работа электронных компонентов и обеспечение целостности сигналов). Если тестовые точки не нужны, то в категории Testpoint в правилах Assembly Testpoint Usage и Fabrication Testpoint Usage следует выбрать параметр Prohibited (связям не назначаются тестовые точки). Если тестовые точки требуются, то нужно добавить объекты, для которых они нужны, в правила Testpoint Usage (Assembly и Fabrication), описать стиль в правилах Testpoint Style и добавить тестовые точки в модель ПП [9].
В 7-й строке сообщение о нарушении означает, что не разведена цепь GND от контактной площадки № 7 микросхемы D1 до проводника в слое Bottom. Ошибки Un-Routed Net обычно исправляются посредством добавления проводника между указанными объектами в модели ПП.
В В-й строке описано короткое замыкание между проводником в слое Top и свободной контактной площадкой №Q в слое Multi-Layer (локализация нарушения в точке с координатами 98,58; 2Q7,Q79 мм). Ошибки типа Short-Circuit обычно исправляют посредством добавления зазора между этими объектами. Возможна ситуация, когда между двумя или более цепями необходимо короткое замыкание. Например, на плате смешанного типа (аналого-цифровой) цепь GND разветвляется на GNDA и GNDD. Цепь GNDA идет в аналоговую, а GNDD — в цифровую часть платы. Однако эти две цепи должны соединяться в одной точке, что приведет к короткому замыканию. В этом случае в Altium Designer надо создать класс цепей, в который включить цепи GNDA и GNDD, затем создать новое правило для класса, и в правиле установить опцию Allow short circuit (разрешить короткое замыкание).
Запись в 9-й строке означает, что текст „Edge Con 22" в слое Top Overlay (слой шелко-графии), точка привязки которого соответствует координатам 132, 955; 186,2Q3 мм, расположен вне контура платы. Edge Con 22 — это тип компонента, обычно типы компонентов не изображают в слое шелкографии (как правило, там помещаются позиционные обозначения и изображения корпусов электронных компонентов). Эту ошибку можно исправить в модели платы, но рекомендуется в библиотеке. Для исправления ошибки в библиотеке pcblib надо
текст „Edge Con 22" перенести на другой слой, а потом обновить в PCBdoc (это даст возможность применить изменение во всех последующих проектах, а не только в текущем).
Ошибки бывают взаимосвязанными. Например, ошибка пересечения электрических объектов (контактной площадки и проводника в одном слое) порождает ошибку зазора между электрическими объектами. Если сначала исправить пересечение, то нарушение зазора может остаться. Но если исправить сразу ошибку зазора, то пересечение, тоже будет исправлено. Целесообразно включить проверку зазоров в режиме реального времени и исправить пересечение (тогда при увеличении расстояния между электрическими объектами отражается размер зазора). Пересечения рекомендуется исправлять в первую очередь, поскольку обычно исправление пересечения электрических объектов требует большего пространства между ними, чем при исправлении ошибки зазора. По аналогичной причине рекомендуется сначала исправлять ошибки размещения, а затем ошибки трассировки.
Способы коррекции DRC-ошибок. В ходе анализа, опытной эксплуатации и изучения литературы по данной тематике были выделены три способа коррекции DRC-ошибок.
1) Редактирование объектов в модели 1111: перемещение компонентов и других объектов (крепежных отверстий, запретных зон и др.); редактирование проводников и полигонов: размещение (перемещение, удаление, добавление), изменение слоя, размеров; изменение посадочных мест, отверстий и др.
2) Редактирование правил проектирования (ограничений).
3) Изменение настроек DRC-проверки. Можно отключить проверку правил в настройке DRC, тогда ошибки отключенных правил не будут проверены и не будут отражены в отчете об ошибках.
Третий способ может быть использован для отключения правил, которые другим способом не могут быть исправлены (например, правил целостности сигналов). Этот способ можно применять на промежуточных этапах проектирования 11 . Например, если после размещения компонентов на плате отключить проверку всех правил посредством команды Batch DRC — All Off и включить проверку правил категории Placement (рис. 4), после чего запустить проверку, то будут проверены только ошибки размещения.
Рис. 4
Заключение. В ходе работы были проанализированы DRC-ошибки, полученные при проверке правил проектирования в Altium Designer 2015, и предложены способы их коррекции. Анализ и коррекция DRC-ошибок во всех САПР ПП идентичен, поэтому предложенные способы универсальны. Применение результатов данной работы позволит сократить время проектирования ПП и повысить качество проектирования ПП за счет быстрого анализа DRC-ошибок и их исправления.
Предложенные в рамках данной работы способы коррекции DRC-ошибок включены в курс обучения „Altium Designer — PCB Профессиональный" в компании „НИП-Информатика" с августа 2012 года и успешно реализуются на предприятиях, сотрудники которых окончили данный курс.
СПИСОК ЛИТЕРАТУРЫ
1. Olkhovsky S. Design Rule Checking: Altium Documentation. Sidney: Altium Limited, 2015 [Электронный ресурс]: <http://techdocs.altium.com/display/ADOH/Design+Rule+Checking>.
2. Nagy I. High-speed Digital Board Design with Altium Designer. Electronics Design Engineer Supporting Guides. Tettenhell: Blue Chip Technology, 2015 [Электронный ресурс]: <http://www.bluechiptechnology.co.uk/ ~bluedownloads/Single_Board_Computers/HiSpeedDesignTutorialforAltiumDesigner.pdf>.
3. Design Rule Check errors. PCB Artist User Tips Guide. Аврора, США: Advanced Circuits, 2015 [Электронный ресурс] : <http://www.4pcb.com/book/index.html>.
4. Сабунин А. Altium Designer Summer 08 - Разработка правил проектирования для печатной платы // Современная электроника. 2008. № 9. С. 58—61.
5. Olkhovsky S. Performing Signal Integrity Analyses Altium Documentation. Сидней: Altium Limited, 2015. [Электронный ресурс]: <http://techdocs.altium.com/display/ASIAE/Performing+Signal+Integrity+Analyses>.
6. ГОСТ Р 53429-2009. Платы печатные. Основные параметры конструкции. Введ. 2009-11-27. М.: Стандартинформ, 2009.
7. Арустамов С. А., Гатчин Ю. А., Романова Е. Б. Анализ функциональных возможностей САПР PCAD-2006 на основе опыта ее эксплуатации // Научно-технический вестник СПбГУ ИТМО. 2009. Вып. 1(59). С. 113—119.
8. Коробейников А. Г., Кузнецова О. В., Романова Е. Б. Сравнительный анализ P-CAD 2006 и Altium Designer 2012 // Кибернетика и программирование. 2013. № 6. С. 17—27.
9. Olkhovsky S. Testpoint System, Altium Documentation. Сидней: Altium Limited, 2015 [Электронный ресурс]: <http://techdocs.altium.com/display/ADOH/Testpoint+System>.
Сведения об авторах
— канд. техн. наук, доцент; Университет ИТМО, кафедра проектирования и безопасности компьютерных систем; E-mail: [email protected]
— канд. техн. наук; Концерн «ЦНИИ "Электроприбор"», конструкторский отдел 030; конструктор 2 кат.; E-mail: [email protected]
Поступила в редакцию 16.02.15 г. компьютерных систем
Ева Борисовна Романова Андрей Владимирович Сумцов
Рекомендована кафедрой проектирования и безопасности
Ссылка для цитирования: Романова Е. Б., Сумцов А. В. Анализ и коррекция DRC-ошибок в САПР печатных плат // Изв. вузов. Приборостроение. 2015. Т. 58, № 10. С. 840—846.
ANALYSIS AND CORRECTION OF DRC-ERRORS IN EDA SYSTEM E. B. Romanova 1, A. V. Sumtsov 2
1ITMO University, 197101, St. Petersburg, Russia E-mail: [email protected]
2State Research Center of the Russian Federation Concern CSRI Elektropribor, 197046, St. Petersburg, Russia
The process of checking a DRC (Design Rule Checker) program module in electronic design automation (EDA) system Altium Designer is described. Analysis of most common errors in designing printed circuit boards (PCB) with Altium Designer 2015 is carried out: violation of signal completeness, deviation in the size of gaps between objects in conductive (metallized) layers, presence of antennas, violation of hole size of and maximal height of components, lack of testing points, the presence of unwired electrical connections and short circuits, location of marking (text in silkscreen layer) outside the plate contour. Most suitable methods for correction of each of the errors in PCB design are proposed. The methods are suitable for all EDA.
Keywords: EDA system, PCB, Altium Designer, Design Rule Checker.
846
E. E. PoManoea, A. B. CyM^e
Data on authors
Eva B. Romanova — PhD, Associate Professor; ITMO University; Department of Computer System Design and Security; E-mail: [email protected] Andrey V. Sumtsov — PhD; State Research Center of the Russian Federation Concern CSRI Elek-
tropribor, Engineering Department 030; Designer of the 2nd category; E-mail:[email protected]
For citation: Romanova E. B., Sumtsov A. V. Analysis and correction of DRC-errors in EDA system // Iz-vestiya Vysshikh Uchebnykh Zavedeniy. Priborostroenie. 2015. Vol. 58, N 10. P. 840—846 (in Russian).
DOI: 10.17586/0021-3454-2015-58-10-840-846