Пакет CADSTAR. Урок 10. Редактор печатных плат системы CADSTAR: интерактивная и автоматическая трассировки с помощью программы Embedded Router
Юрий Потапов
Сергей Прокопенко
Области металлизации Copper Template
Для работы нам потребуется специальный пример Chaptero.pcb, который входит в комплект стандартной поставки программы CADSTAR. На предыдущем занятии мы использовали этот же проект, но после изменения сохранили его под другим именем, а потому данный файл должен остаться в исходном неразведенном состоянии.
1. Выполним команду меню File | Open и в появившемся окне выберем файл Chaptero.pcb.
2. Выполним команду меню View | View All или нажмем кнопку на панели инструментов. Откроется окно редактора печатных плат с выбранным проектом.
На предыдущем занятии для заливки областей металлизации мы выбрали функцию Maximise Copper, а сейчас остановимся на более продвинутом способе. Заливка меди будет выполняться с помощью встроенного трассировщика с использованием так называемого шаблона заливки (Copper Template).
Первое, что нам необходимо сделать, — настроить данный шаблон.
3. Выполним команду меню Setting | Defaults и в открывшемся диалоговом окне Defaults перейдем на вкладку Copper Pour (рис. 2). Здесь приведены основные настройки шаблоназаливки, а именно (рис. 3):
— Copper Code — определяет ширину линии, используемой для рисования полигона;
— Relief Copper Code — определяет ширину линии, используемой для соединения контактной площадки с полигоном;
— Clearance Width — задает расстояние между контактной площадкой и периметром окружающего ее полигона;
— Thermal Relief — позволяет использовать тепловой барьер между полигоном и контактной площадкой (переходным отверстием) и задает угол поворота соединительных проводников.
4. Установим все необходимые параметры, как показано на рис. 2, а именно: Copper Codes и Relief Copper Code, равные Copper 10; Clearance Width, равный 15 тысячным дюйма; в поле Thermal Relief включим галочки напротив On Pads и On Vias (термобарьер разрешен как для контактных площадок, так и для переходных отверстий) и зададим угол поворота Angle, равный 45 градусам.
5. Щелчком мыши перейдем на закладку Shape диалогового окна Defaults (рис. 4).
6. В поле Туре выберем опцию Template; в списке Code выберем тип линии для рисования контура шаблона Line 5; в списке Layer укажем слой, на котором будет находиться полигон Top Elec; в списке Fill Style выберем Clear (не залитый).
7. Нажмем кнопку ОК и закроем окно Defaults.
8. Выполним команду меню View | Frame View или нажмем кнопку на панели инструментов и изменим масштаб так, чтобы на экране оптимально отображались резисторы из области Analogue.
9. Выполним команду меню Add | Shape | Rectangle или нажмем кнопку на панели инструментов и нарисуем прямоугольник, охватывающий резисторы R1-R5 и конденсатор С9.
Нам остается присвоить нарисованной области заливки имя и назначить цепь.
10. Нажмем кнопку Seled на панели инструментов и с помощью мыши выделим только что нарисованный контур области заливки.
11. Нажмем кнопку Item Properties Al на панели инструментов.
12. В появившемся окне Item Properties Template — Copper Pour (рис. 5) в поле Name введем новое имя области заливки Resistor Screen, а в выпадающем списке Signal Name выберем имя цепи GND.
13. Нажмем кнопку ОК и закроем окно Item Properties.
Подготовка к ручной трассировке
Теперь с помощью программы Embedded Router мы можем приступить к ручной трассировке платы.
1. Выполним команду меню Tools | Embedded Router или нажмем кнопку на панели инструментов.
Все меню команд и панели инструментов изменятся в соответствии с требуемой для данной программы функциональностью.
2. Выполним команду меню Setting | Grids. На экране появится диалоговое окно Grids, в котором автоматически будет выбрана сетка Router Grid (рис. 6). Обратите внимание, что в режиме встроенного трассировщика поле сетки в строке состояния отсутствует, поэтому данное окно можно вызвать только командой меню.
3. Зададим шаг сетки трассировки Routing, равный 10 тысячным дюйма.
4. Зададим шаг сетки размещения переходных отверстий Via, равный тоже 10 тысячным дюйма.
Примечание: шаг сетки переходных отверстий должен быть равен или кратен шагу сетки трассировки.
5. Нажмем кнопку ОК и закроем окно Grids.
Приступим к настройке опций трассировщика.
6. Выполним команду меню Tools | Routing Options.
На экране появится диалоговое окно Routing Options (рис. 7), в котором задаются основные настройки автотрассировщика.
7. В поле Process выберем опцию Route. Это означает, что все выполняемые в данный момент настройки относятся к процессу трассировки.
8. В поле Route Width выберем опцию Optimal. В этом случае для каждого типа цепей, описанных в окне Assignments на вкладке Routes, будет выбрано значение из колонки Optimal.
9. Включим опцию Vias Allowed, которая разрешает прокладку сегментов проводников на разных слоях с использованием межслойных переходных отверстий.
10. Включим опцию Errors Allowed, которая позволит нам игнорировать соблюдение минимально допустимых зазоров в процессе ручной трассировки.
11. Включим опцию On Line DRC (проверка DRC «на лету»). Теперь при ручной прокладке проводника, так как ошибки разрешены, сам проводник и любые препятствия на его пути будут менять цвет в случае нарушения минимального зазора.
Напомним, что цвет подсветки нарушения настраивается в окне Colours, категория Highlights — DRC Router.
12. В поле Angle выберем опцию 90 Degrees, чем включим ортогональную трассировку.
Так как сначала бы будем выполнять ручную трассировку, остальные параметры для нас сейчас не актуальны. Позднее рассмотрим их более подробно.
13. Убедимся, что все остальные настройки выполнены так, как показано на рис. 7, и нажмем кнопку ОК.
В процессе трассировки для изменения слоя мы будем пользоваться командой Change Layer из контекстного меню, поэтому нам необходимо сделать слои Top Elec и Bottom Elec активными.
14. Выполним команду меню Setting | Routing Layers.
15. В появившемся диалоговом окне Routing — Layers (рис. 8) в списке Layer Name выберем слои Top Elec и Bottom Elec и нажмем кнопки Active Yes и Visible Yes.
16. Выберем слои GND и VCC и нажмем кнопки Active No и Visible No.
17. Нажмем кнопку OK и закроем окно Routing — Layers.
Последнее, что нам остается, это выполнить оптимизацию связей на плате с целью минимизации длины цепей.
18. Выполним команду меню Actions | Reconnect.
19. В появившемся диалоговом окне Reconnect (рис. 9) выберем опцию Whole Design (весь проект) и нажмем кнопку ОК.
Если суммарная длина связей изменилась, это будет отражено в окне отчета, появляющемся по завершении операции.
Ручная трассировка
Приступим к ручному созданию проводников. Напомним, что таким способом создаются только наиболее критические проводники, которые не могут быть проложены автоматически. Чтобы впоследствии автотрассировщик не перерисовал их заново, созданные вручную проводники следует зафиксировать.
В качестве упражнения проложим часть цепи GND от вывода 3 микросхемы ОА1. Обратите внимание, что данное соединение не отображается в окне редактора до тех пор, пока мы не начнем его прокладывать. Это происходит потому, что вывод требует сквозного отверстия и соединяется с соответствующим внутренним слоем напрямую.
1. Выполним команду меню View | Frame View или нажмем кнопку на панели инструментов и изменим масштаб так, чтобы на экране оптимально отображалась часть платы, показанная на рис. 10.
2. Убедимся, что ни один графический примитив проекта не выделен.
3. Выполним команду меню Actions | Manual Route или нажмем кнопку на панели инструментов.
4. Наведем указатель мыши на вывод 3 микросхемы ОА1 и щелкнем левой кнопкой мыши.
Обратите внимание, что имя цепи будет отображаться в подсказке рядом с указателем мыши при наведении его на линию соединения. Если этого не происходит, необходимо включить опцию Enable Design Tooltips на вкладке Display диалогового окна Options, вызываемого командой меню Tools | Options.
5. Сдвинем указатель мыши немного вниз. От вывода микросхемы к указателю мыши на слое Top Elec протянется динамически изменяемый проводник ширины, заданной настройкой Optimal, а именно 50 миле. Кроме того, на экране будет отображаться и тянуться за проводником оставшаяся часть GND-связи. Обратите внимание, что имя цепи и слой, на котором она прокладывается, отображаются в правой части строки состояния.
Напомним: выбранные нами опции трассировки подразумевают, что нарушение минимального зазора будет допускаться, но автематически отображаться (On Line DRC). Проверим, как работает эта функция.
6. Подвигаем указатель мыши так, чтобы прокладываемый проводник задевал другие выводы микросхемы ОА1 или конденсатора С9. Можно видеть, что цвет дорожки и выводов меняется, когда они находятся слишком близко друг к другу.
7. Переместим курсор вертикально вниз в точку А (рис. 10) с координатами Х3560 Y960 и выполним щелчок левой кнопкой мыши. Примечание: если мы хотим обнулить относительные координаты, следует выполнить клавиатурную команду Z и нажать клавишу Enter.
Как мы помним, для верхнего и нижнего электрических слоев заданы следующие направления разводки: Top Elec = Y bias (вертикальная трассировка) и Bottom Elec = X bias (горизонтальная трассировка). Только что нарисованный нами сегмент проводника проходит в вертикальном направлении на слое Top Elec, и это соответствует данным настройкам. Следующий сегмент мы планируем сделать горизонтальным, поэтому должны провести его на слое Bottom Elec.
8. Наведем указатель мыши на конец только что нарисованного нами сегмента и выполним щелчок правой кнопкой мыши.
9. В появившемся контекстном меню выберем команду Change Layer.
Таким образом, мы перешли на слой Bottom Elec, а на конце сегмента автоматически добавилось переходное отверстие. Поскольку мы настроили трассировщик на использование только двух активных слоев, переключение слоев произошло однозначно. Если бы активных слоев было более двух, на экране появилось бы диалоговое окно, предлагающее выбрать, на какой из слоев требуется осуществить переход.
Теперь мы можем продолжить дорожку на новом слое.
10. Наведем курсор на конец первого сегмента с переходным отверстием и выполним щелчок левой кнопкой мыши.
11. Переместим курсор горизонтально вправо в точку В (рис. 10), отслеживая относительные координаты в строке состояния, и выполним щелчок левой кнопкой мыши.
12. Аналогичным образом проложим все остальные сегменты, не забывая, что все вертикальные сегменты должны располагаться на слое Top Elec, а горизонтальные — на Bottom Elec.
13. Завершим прокладку проводника двойным щелчком левой кнопкой мыши на выводе 7 микросхемы 1С 12.
Обратите внимание, что при наведении указателя мыши на вывод курсор изменит вид с прямоугольника на круг с прицелом. Это говорит о том, что система захватила целевой графический примитив и закончит рисование проводника именно на нем, а не в ближайшем узле сетки. Кроме того, в некоторых местах, например, вблизи вывода 7 микросхемы 1С 12, только что проложенный проводник подсвечивается желтым цветом. Это означает, что система обнаружила нарушение DRC (не выдержан зазор между последним сегментом проводника и соседней контактной площадкой) и подает соответствующий сигнал. Пока мы не будем обращать на это внимание и попробуем изменить только что проложенный проводник, как показано на рис. 11.
14. Наведем указатель мыши на сегмент проводника вблизи конденсатора С9 и выполним щелчок левой кнопкой мыши, после чего сдвинем курсор немного вниз.
От указанной точки старого проводника вниз потянется новый сегмент. Обратите внимание, что он будет прокладываться на том же слое, на котором находился исходный сегмент проводника, и никаких дополнительных переключений слоев не требуется.
15. Подвигаем указатель мыши немного вправо-влево, выберем нужную точку изгиба проводника и выполним щелчок левой кнопкой мыши. Обратите внимание, что при горизонтальном перемещении указателя мыши прокладываемый сегмент проводника остается вертикальным за счет автоматического сдвига начальной точки, так как включен ортогональный режим разводки.
16. Проложим горизонтальный сегмент, как показано на рис. 11, и щелчком левой кнопкой мыши зафиксируем второй изгиб нового проводника.
17. Сдвинем указатель мыши вверх и наведем его на старый проводник.
Курсор при этом изменит вид с прямоугольника на круг с прицелом.
18. Выполним щелчок левой кнопкой мыши и завершим рисование нового проводника.
Обратите внимание, что система автоматически удалит старый участок проводника над конденсатором С9. Это говорит о том, что алгоритм трассировщика следит за тем, чтобы в проводнике не образовывалось замкнутых петель, даже при его ручной прокладке. Такой режим работы программы трассировки называется интерактивным и существенно облегчает задачу разработчика печатной платы при прокладке наиболее критических цепей.
Нам остается зафиксировать нарисованный проводник, чтобы он не был изменен в дальнейшем при автоматической трассировке всех остальных цепей.
19. Нажмем кнопку Select Ξ на панели инструментов.
20. Нажмем кнопку Net Focus il на панели инструментов и перейдем в режим редактирования всей цепи.
21. Выполним щелчок левой кнопкой мыши на любом участке нарисованного нами проводника цепи GND.
Весь проводник окажется выделенным.
22. Нажмем кнопку Fix H на панели инструментов и зафиксируем выделенные объекты топологии.
Теперь мы полностью готовы к автоматической прорисовке топологии.
Автоматическая трассировка стрингеров
Технология поверхностного монтажа требует организации соединения контактных площадок с внутренними слоями через специальные отводы с переходными отверстиями на конце, так называемыми стрингерами (рис. 12). Правильная трассировка таких отводов позволяет значительно разгрузить наружные слои платы и существенно облегчить решение общей задачи трассировки. Именно поэтому трассировка стрингеров является первым этапом автоматической трассировки.
В нашем примере на внутренних слоях находятся только цепи питания и заземления, поэтому отводы будут добавляться к SMD-koh-тактным площадкам именно этих двух цепей. Автотрассировщик будет располагать стрингеры на том же слое, на котором расположены площадки Top Elec, и делать их предельно короткими. Добавляемое переходное отверстие будет глухим и обеспечит связь верхнего слоя только с соответствующим нижним слоем, согласно описанию пар слоев на вкладке Layer Pairs диалогового окна Assignments, вызываемого командой меню Setting | Assignments.
Для создания стрингера автотрассировщик проверяет два условия: отсутствие для данной контактной площадки заданного диаметра отверстия сверления (Drill Diameter) и имя цепи, которое должно совпадать с именем одного из внутренних слоев металлизации (рис. 13).
Приступим к настройке автотрассировщика.
1. Выполним команду меню Tools | Routing Options.
На экране появится уже знакомое нам диалоговое окно Routing Options, в котором надо сделать новые настройки.
2. В поле Process выберем опцию Route. Это означает, что все выполняемые в данный момент настройки относятся к процессу трассировки.
3. В поле Route Width выберем опцию Necked. В этом случае для каждого типа цепей, описанных в окне Assignments на вкладке Routes, будет выбрано значение из колонки Necked.
4. Включим опцию Vias Allowed, которая разрешает добавление к стрингерам переходных отверстий на внутренние слои.
5. Включим опцию Errors Allowed, позволяющую трассировщику выполнять операции удаления и повторной прокладки проводников в поисках наилучшего варианта. В действительности опция Errors Allowed включается автоматически, когда задан более чем один проход трассировки.
6. В поле Angle выберем опцию 90 Degrees, чем включим ортогональную трассировку.
7. Выключим опцию On Line DRC.
8. В поле Routing Parameters установим параметр Passes (проходы) в значение 2, то есть трассировка будет выполняться в два прохода (хотя для такой простой задачи хватит и одного прохода), а параметр Efforts (попытки) в значение 5.
Примечание: число попыток определяет бремя, которое автотрассировщик тратит на прокладку проводника между двумя точками. Чем большее количество попыток задано, тем дольше программа будет обрабатывать топологию. Значение 5 подходит для разводки стрингеров, поскольку на данный момент на плате имеется минимальное количество препятствий. На практике мы будем использовать результаты одного прохода для оценки нужного количества попыток.
9. Убедимся, что все остальные настройки выполнены так, как показано на рис. 14, и нажмем кнопку ОК.
Изменим настройки сетки.
10. Выполним команду меню Setting | Grids.
11. В появившемся диалоговом окне Grids (рис. 15) зададим шаг сетки трассировки Routing, равный 25 миле, и шаг сетки размещения переходных отверстий Via, равный тоже 25 миле.
12. Нажмем кнопку ОК и закроем окно Grids. Выберем цепи, которые необходимо развести.
13. Выполним команду меню Edit | Select Net.
14. В появившемся окне Select Nets (рис. 16) в левом списке Net List, удерживая нажатой клавишу CTRL, с помощью мыши выберем цепи VCC и GND, нажмем кнопку Add и нажатием кнопки ОК закроем окно.
Теперь мы можем приступить к автоматической трассировке.
15. Нажмем кнопку Autoroute Ul на панели инструментов.
На экране появится диалоговое окно Auto-routing Results (рис. 17), в котором будет выводиться отчет о ходе выполнения трассировки. Так как наша топология совсем простая, процесс завершится очень быстро. Видно, что программа развела все стрингеры за один проход трассировки.
16. Нажмем кнопку Accept и закроем окно отчета.
Зафиксируем разведенные стрингеры.
17. Выполним команду меню Edit | Select Net.
18. В появившемся окне Select Nets в левом списке Net List, удерживая нажатой клавишу CTRL, с помощью мыши выберем цепи VCC и GND, нажмем кнопку Add и нажатием кнопки ОК закроем окно.
19. Нажмем кнопку Fix на панели инструментов и зафиксируем выделенные объекты топологии.
Убедимся в том, что переходные вставленные автотрассировщиком отверстия действительно являются глухими.
20. Нажмем кнопку Select на панели инструментов.
21. Выполним щелчок левой кнопкой на любом из переходных отверстий только что созданного стрингера, например принадлежащего цепи VCC.
22. Нажмем кнопку Item Properties на панели инструментов.
В появившемся окне Item Properties Template — Via в поле Layer Span будет показано, что переходное отверстие идет со слоя Top Elec (From: Top Elec) на слой VCC (To: VCC). 23. Нажмем кнопку ОК и закроем окно Item Properties.
Ручная диагональная трассировка в режиме Active 45
Рассмотрим еще один способ ручной прокладки проводников, доступный во встроенном трассировщике Embedded Router как режим Active 45. В этом режиме проводник автоматически прокладывается, следуя за перемещаемым вручную курсором от начальной до конечной точки. При этом к проводнику добавляются скосы под углом 45 градусов (отсюда и название «диагональная трассировка»),
В качестве упражнения разведем в режиме Active 45 три цепи, показанные на рис. 18.
1. Выполним команду меню Tools | Routing Options.
На экране появится уже знакомое нам диалоговое окно Routing Options, в котором надо сделать новые настройки.
2. В поле Process выберем опцию Route.
3. В поле Route Width выберем опцию Necked.
4. Включим опцию Vias Allowed, которая разрешает добавление к проводникам переходных отверстий.
5. Выключим опцию Errors Allowed, то есть запретим трассировку с ошибками.
6. Включим опцию Push Aside, которая разрешает трассировщику расталкивать имеющиеся на топологии проводники для освобождения места для прокладываемого проводника.
7. В поле Active 45 включим опцию Active 45 Degree Routing, тем самым активируем режим диагональной трассировки. Обратите внимание, что при включении этой галочки в поле Angle автоматически включится опция 45 Degrees.
8. В поле Tidy Rectangle Size введем значение 150 миле, оно задает размер генерируемого диагональным трассировщиком скоса по осям X и Y.
9. Убедимся, что все остальные настройки выполнены так, как показано на рис. 19, и нажмем кнопку ОК.
Приступим к трассировке.
10. Выполним команду меню Actions | Manual Route .
11. Наведем указатель мыши на линию соединения цепи 1 вблизи вывода торцевого разъема и выполним щелчок левой кнопкой мыши.
На топологии от вывода разъема за курсором потянется проводник.
12. Аккуратно начнем сдвигать указатель мыши в сторону вывода 6 микросхемы ОА1, чтобы проложить проводник, как показано на рис. 20.
Обратите внимание на поведение проводника, который прокладывается трассировщиком автоматически, следуя за курсором.
13. Наведем указатель мыши на вывод 6 микросхемы ОА1.
Программа самостоятельно завершит прокладку оставшейся части проводника.
14. Наведем указатель мыши на линию соединения цепи 2 вблизи вывода торцевого разъема и выполним на ней щелчок левой кнопкой мыши.
15. Сдвигая указатель мыши, аналогичным образом выполним трассировку этой цепи.
Обратите внимание: благодаря тому что включена опция расталкивания Push Aside, при прокладке нового проводника система сдвигает ранее проложенный проводник с соблюдением заданных зазоров.
16. Аналогичным образом разведем цепь 3. Ничего страшного, если вид проложенных проводников будет немного отличаться от показанного на рис. 20. В завершение упражнения зафиксируем разведенные проводники.
17. Нажмем кнопку Select на панели инструментов.
18. Нажмем кнопку Net Focus на панели инструментов.
19. Удерживая нажатой клавишу CTRL, с помощью мыши выделим только что проложенные проводники.
20. Нажмем кнопку Fix на панели инструментов и зафиксируем выделенные объекты топологии.
Автоматическая трассировка платы
Сейчас мы полностью готовы к использованию автотрассировки для разводки всех остальных цепей. Разводить оставшиеся цепи, включая VPOS и VNEG, мы будем в автоматическом многопроходном режиме. Причем сделаем это в два этапа: сначала выполним однопроходную трассировку с числом попыток (Effort), равным 5, проанализируем полученные результаты, а затем запустим многопроходной режим с параметром Effort, полученным по итогам анализа.
Снова настроим трассировщик.
1. Выполним команду меню Tools | Routing Options.
На экране появится уже знакомое нам диалоговое окно Routing Options, в котором надо сделать новые настройки, как показано на рис. 21.
2. В поле Process выберем опцию Route.
3. В поле Route Width выберем опцию Necked.
4. В поле Routing Parameters установим параметр Passes (проходы) в значение 1, а параметр Efforts (попытки) в значение 5.
Рис.21. Настройка параметров трассировщика для разводки в режиме Active 45
5. Выключим опцию Errors Allowed, так как мы не хотим разрешать программе удалять и переразводить цепи в течение одного прохода.
6. Убедимся, что все остальные настройки выполнены так, как показано на рис. 21, и нажмем кнопку ОК.
Изменим настройки сетки.
7. Выполним команду меню Setting | Grids.
8. В появившемся диалоговом окне Grids зададим шаг сетки трассировки Routing, равный 5 миле, и шаг сетки размещения переходных отверстий Via, равный тоже 5 миле, затем нажмем кнопку ОК.
Выберем цепи, которые необходимо развести, а именно все, кроме VCC и GND.
9. Выполним команду меню Edit | Select Net.
10. В появившемся окне Select Nets (рис. 22) в левом списке Net List нажмем кнопку Select All и выберем все цепи, после чего нажмем кнопку Add.
11. Далее в правом списке Chosen Nets, удерживая нажатой клавишу CTRL, с помощью мыши выберем цепи VCC и GND, нажмем кнопку Remove, после чего нажатием кнопки ОК закроем окно.
Теперь мы можем приступить к автоматической трассировке.
12. Нажмем кнопку Autoroute на панели инструментов.
На экране появится диалоговое окно Auto-routing Results (рис. 23), в котором будет выводиться отчет о ходе выполнения трассировки. Поскольку наша топология совсем простая, процесс завершится очень быстро. Проанализируем приведенные здесь значения.
Результат работы автотрассировщика в однопроходном режиме можно считать хорошим, если процент завершенности трассировки превышает 80. Если на плате присутствуют SMD-компоненты, то хорошим можно считать проект, разведенный на 70%. Это связанно с тем, что при однопроходной разводке одна первоначально проведенная дорожка может блокировать сразу несколько SMD-выводов, а в случае многопроходной разводки программа будет пытаться провести дорожки поверх этого препятствия или отодвинуть его и исправить сделанные нарушения. Если процент завершенности составляет менее 70, это указывает на необходимость изменить размещение компонентов.
В полученном нами отчете сказано, что разведены 112 (Routed) из 123 (Att`d) цепей, что составляет 91%. Следовательно, размещение компонентов выполнено правильно, и мы можем приступать к многопроходной трассировке.
13. Так как нам не нужно сохранять результаты трассировки в однопроходном режиме, нажмем кнопку Decline и просто закроем окно отчета.
Настроим многопроходной режим трассировщика.
14. Выполним команду меню Tools | Routing Options.
На экране появится уже знакомое нам диалоговое окно Routing Options, в котором надо сделать новые настройки.
15. В поле Process выберем опцию Route.
16. В поле Route Width выберем опцию Necked.
17. Включим опцию Vias Allowed, которая разрешает добавление к проводникам переходных отверстий.
18. Включим опцию Errors Allowed, то есть разрешим трассировку с ошибками.
19. Включим опцию Push Aside, которая разрешает трассировщику расталкивать имеющиеся на топологии проводники для освобождения места для прокладываемого проводника.
20. Включим опцию Springback, которая предписывает трассировщику возвращать расталкиваемые дорожки на исходное место, если необходимость в расталкивании отпала.
Примечание: использование опции Springback эффективно только при включенной опции Push Aside.
21. Включим опцию Contour Following, которая предписывает трассировщику располагать дорожки максимально близко к препятствиям — другим дорожкам, контактным площадкам, переходным отверстиям, полигонам и так далее.
Примечание: включение опции Contour Following позволяет сохранить больше свободного места на плате для последующих операций трассировки. Но при этом у проложенных проводников могут появиться дополнительные изломы или переходные отверстия, а значит, потребуется процедура сглаживания.
22. В поле Routing Parameters установим параметр Passes (проходы) в значение 4 (для нашей относительно простой платы этого достаточно), а параметр Efforts (попытки) в максимальное значение 10, что позволит обеспечить больший процент выполнения.
23. Убедимся, что все остальные настройки выполнены так, как показано на рис. 24, и нажмем кнопку ОК.
Изменим настройки сетки.
24. Выполним команду меню Setting | Grids.
25. В появившемся диалоговом окне Grids зададим шаг сетки трассировки Routing, равный 1 миле, и шаг сетки размещения переходных отверстий Via, равный тоже 1 миле, затем нажмем кнопку ОК.
Выберем цепи, которые необходимо развести, а именно все, кроме VCC и GND.
26. Выполним команду меню Edit | Select Net.
27. В появившемся окне Select Nets в левом списке Net List нажмем кнопку Select All и выберем все цепи, после чего нажмем кнопку Add
28. Далее в правом списке Chosen Nets, удерживая нажатой клавишу CTRL, с помощью мыши выберем цепи VCC и GND, нажмем кнопку Remove.
Чтобы впоследствии не выполнять многократно эту операцию, сохраним список имен выбранных цепей во внешний файл.
29. В поле Signal Names File нажмем кнопку Save.
30. В появившемся диалоговом окне Save Signal Names File выберем нужную папку, зададим имя файла списка имен цепей all.sig и нажмем кнопку «Сохранить».
31. Нажмем кнопку ОК и закроем окно Select Nets. Примечание: не следует путать только что
созданный нами список имен цепей (файл срас-ширением .sig) со списком соединений (netlist). Список соединений (файл с расширением .frp) формируется для всего проекта командой экспорта и содержит полную информацию об электрической связности.
Теперь мы можем приступить к автоматической трассировке.
32. Нажмем кнопку Autoroute на панели инструментов.
На экране появится диалоговое окно Auto-routing Results (рис. 25), в котором будет выводиться отчет о ходе выполнения трассировки. После выполнения каждого прохода отчет автотрассировщика будет автоматически обновляться. Как только количество ошибок (Errors) и неудач (Fails) будет равно нулю, процесс трассировки завершится, что означает 100%-ное завершение.
33. Нажмем кнопку Accept и закроем окно отчета.
Для улучшения технологичности проекта мы должны выполнить два прохода сглаживания. Эта процедура позволит удалить ненужные переходные отверстия и изломы проводников, а также выровнять зазоры между дорожками.
34. Выполним команду меню Tools | Routing Options.
На экране появится уже знакомое нам диалоговое окно Routing Options, в котором надо сделать новые настройки.
35. В поле Process выберем опцию Smooth, означающую, что мы настраиваем режим сглаживания.
36. Включим опцию Vias Allowed, которая разрешает добавление к проводникам переходных отверстий.
37. Включим опцию Equispace While Smoothing, которая предписывает трассировщику при выравнивании проводников максимально использовать пространство между препятствиями, а зазоры между проводниками делать приблизительно одинаковыми.
Примечание: выравнивание зазоров не касается переходных отверстий, контактных площадок или сегментов, к ним присоединенных. Другими словами, выравнивание зазоров может осуществляться только для сегментов, которые с обоих концов соединены с другими сегментами проводников.
38. В поле Routing Parameters установим параметр Passes (проходы) в значение 2. Параметр Efforts в режиме сглаживания недоступен.
39. Убедимся, что все остальные настройки выполнены так, как показано на рис. 26, и нажмем кнопку ОК.
Выберем цепи, которые необходимо развести, а именно все, кроме VCC и GND.
40. Выполним команду меню Edit | Select Net.
41. В появившемся окне Select Nets в поле Signal Names File нажмем кнопку Load.
42. В появившемся диалоговом окне Load Signal Names File выберем папку и ранее сохраненный нами файл списка имен цепей all.sig, после чего нажмем кнопку «Открыть».
В Chosen Nets будет загружен список нужных нам цепей.
43. Нажмем кнопку ОК и закроем окно Select Nets.
Так как настройки сетки менять нет необходимости, можно запустить процедуру сглаживания.
44. Нажмем кнопку Autoroute на панели инструментов.
На экране появится диалоговое окно Smoothing Results (рис. 27), в котором будет выводиться отчет о ходе выполнения трассировки. Рассмотрим его более подробно и сравним с отчетом, полученным после трассировки в многопроходном режиме (рис. 25). Прежде всего, число переходных отверстий (Vias) снизилось с 132 до 118. Число сегментов проводников (Segs) снизилось с 776 до 620, однако незначительно увеличилась суммарная длина проводников, что легко объяснить увеличением зазоров между проводниками.
45. Нажмем кнопку Accept и закроем окно отчета.
Ручное редактирование топологии
Как правило, топология, полученная в процессе автоматической трассировки, требует ручной доработки. Рассмотрим, как работают функции Push Aside и Springback в режиме ручной трассировки.
1. Выполним команду меню Tools | Routing Options.
На экране появится уже знакомое нам диалоговое окно Routing Options, в котором надо сделать новые настройки.
2. В поле Process выберем опцию Route.
3. В поле Route Width выберем опцию Necked.
4. Включим опцию Vias Allowed, которая разрешает добавление к проводникам переходных отверстий.
5. Включим опцию Errors Allowed, то есть запретим трассировку с ошибками.
6. Включим опцию Push Aside, которая разрешает трассировщику расталкивать имеющиеся на топологии проводники для освобождения места для прокладываемого проводника.
7. Включим опцию Springback, которая предписывает трассировщику возвращать расталкиваемые дорожки на исходное место, если необходимость в расталкивании отпала.
8. Включим опцию On Line DRC (проверка DRC «на лету»). Теперь при ручной прокладке проводника, так как ошибки разрешены, сам про-водник и любые препятствия на его пути будут менять цвет в случае нарушения минимального зазора.
9. Убедимся, что все остальные настройки выполнены так, как показано на рис. 28, и нажмем кнопку ОК.
Для удобства работы нам необходимо изменить настройки палитры.
10. Выполним команду Settings | Colours или нажмем кнопку Colours 9 на панели инструментов.
11. В появившемся диалоговом окне Colours в списке Category, удерживая нажатой клавишу CTRL, с помощью мыши выберем объекты Component Outlines, Component Part Names, Areas, Connections, User Attribute и нажмем кнопку Visible No, сделав их невидимыми.
12. Выберем в списке Category строку Routes и нажмем кнопку Change Colours.
13. В появившемся окне Colours — Routes в списке Layer выполним двойной щелчок на слое Top Elec и сделаем его невидимым (Visible No), потом закроем окно нажатием кнопки ОК.
14. Нажмем кнопку ОК и закроем окно Colours.
15. Выполним команду меню View | Frame View или нажмем кнопку Bi на панели инструментов и изменим масштаб так, чтобы на экране оптимально отображались SMD-компоненты IC5 и IC6.
Приступим к трассировке.
16. Выполним команду меню Actions | Manual Route или нажмем кнопку 13 на панели инструментов.
17. Наведем указатель мыши на любую из имеющихся здесь цепей и выполним щелчок левой кнопкой мыши.
18. Сдвинем указатель мыши немного вверх, как показано на рис. 29.
На топологии появится новый проводник, который потянется за курсором. Обратите внимание, что другие проводники и переходные отверстия будет сдвигаться, освобождая место для прокладываемого проводника, — это работает функция Push Aside.
19. Сдвинем указатель мыши обратно вниз. Только что сдвинутые объекты вернутся на свое исходное место.
20. Нажмем клавишу Escape и выйдем из режима ручного редактирования.
Если не все объекты вернулись на свои места, рекомендуется выполнить команду Edit | Undo.
Следующий режим, который мы рассмотрим, называется River Routing (обтекающий). Но сначала включим отображение проводников на слое Top Elec.
21. Выполним команду Settings | Colours или нажмем кнопку Colours на панели инструментов.
22. В появившемся диалоговом окне Colours в списке Category выберем строку Routes и нажмем кнопку Change Colours.
23. В появившемся окне Colours — Routes в списке Layer выполним двойной щелчок на слое Top Elec и сделаем его видимым (Visible Yes), после чего закроем окно нажатием кнопки ОК.
24. Нажмем кнопку ОК и закроем окно Colours.
25. Нажмем кнопку Select Э на панели инструментов.
26. Нажмем кнопку Node Focus на панели инструментов.
27. Выполним команду меню Actions | River Route и с помощью мыши выберем одну из цепей с несколькими прямоугольными изгибами.
Проводник будет перерисован и «обтечет» имеющиеся препятствия (рис. 30а).
28. Выполним команду меню Tools | Routing Options.
29. В появившемся диалоговом окне Routing Options в поле Process выберем опцию Smooth (сглаживание).
30. Снова выполним команду меню Actions River Route и с помощью мыши выберем ту же цепь.
Проводник будет перерисован и «обтечет» препятствие с меньшим числом изломов (рис. 306). В качестве упражнения самостоятельно выберите еще несколько цепей и посмотрите на результат работы трассировщика.
Заливка области металлизации
В самом начале данного занятия мы создали область металлизации Copper Template. Сейчас, после того как мы полностью отт-рассировали плату, можно выполнить ее заливку.
1. Выполним команду меню View | View All или нажмем кнопку на панели инструментов.
2. Нажмем кнопку Select на панели инструментов.
3. С помощью мыши выберем нарисованный нами ранее контур области металлизации Copper Template.
4. Выполним команду меню Actions | Copper Pour.
Система выполнит заливку выбранного контура (рис. 31). Любые контактные площадки, переходные отверстия и дорожки внутри области, принадлежащие той же цепи, что и полигон, будут соединены с медной заливкой. Все остальные объекты на сигнальных слоях будут изолированы от него.
Если мы выключим отображение проводников на экране, то увидим, что переходное отверстие, принадлежащее проложенному нами вручную проводнику цепи GND, имеет с полигоном соединение, как показано рис. 32.
Остается лишь сохранить созданный нами проект платы.
5. Выполним команду меню File | Exit Embedded Router и вернемся в редактор печатных плат.
6. Выполним команду меню File | Properties, в появившемся окне Properties в поле Design Title введем текст Routed и нажмем кнопку ОК.
7. Выполним команду меню File | Save As, в появившемся диалоговом окне выберем папку, в которой будет сохранен новый проект, укажем имя файла selftcho.pcb и нажмем кнопку «Сохранить».
Итак, мы изучили основные приемы разработки топологии с помощью встроенного трассировщика Embedded Router. Эта программа имеет множество разнообразных функций, полное описание которых можно найти в руководстве пользователя или интерактивной справочной системе. На следующем занятии мы рассмотрим простановку размеров на чертежах и механизм обратной аннотации.