На главную страницу
Назад

Порядок работы с системой автоматической трассировки печатных плат Specctra

© CОПЫРИГХТ: сочинил и положил на свою страницу http://www.dsioffe.narod.ru/
Дмитрий Иоффе, Советский Союз.

 

Работая автоматически, без участия инженера, система автоматической трассировки печатных плат Specctra (ныне Allegro PCB Router) может добиться лишь очень скромных успехов. Запуск системы, например, из меню Route / Autorouters редактора печатных плат САПР PCAD 200x может надолго разочаровать в средствах автоматической трассировки: если так работает одна из лучших систем, то каковы же не самые лучшие: На практике работа со Specctra строится из многих интерактивных сеансов, последовательно приближающих к желаемому результату. Здесь предлагается несколько приёмов, позволяющих уменьшить затраты времени на рутинные операции при работе со Specctra на следующих стадиях:

Подготовка входного проекта

В Specctra нет средств создания проекта. Входной проект в формате Specctra должен быть создан в САПР подготовки печатных плат. Рассмотрим его создание на примере двух САПР: PCAD 200x и OrCAD.

В PCAD 200x не предусмотрена возможность явного создания проекта для Specctra. Штатный способ работы с ней предполагает такую последовательность действий:

Тем не менее, входной проект для Specctra при этом, конечно же, создаётся. Делает это утилита командной строки accel2sp.exe, расположенная в каталоге с исполняемыми файлами PCAD 200x. Чтобы создать проект для Specctra, этой программе при вызове надо передать в качестве аргумента командной строки имя файла печатной платы, созданного в PCAD 200x PCB. В результате появится файл входного проекта для Specctra, имеющий то же имя, что и наш файл с печатной платой, и расширение dsn. Это текстовый файл, но редактировать его в текстовом редакторе фирма Cadence настоятельно не рекомендует.

Для автоматизации этой процедуры можно создать командный файл. Пусть исполняемые файлы PCAD 200x лежат в папке D:\Program Files\P-CAD 2002\, а наш файл с платой называется myproject.pcb. Тогда создадим в каталоге с нашим проектом командный файл с именем, например, myproject.bat, состоящий из вот такой строки:

"D:\Program Files\P-CAD 2002\accel2sp.exe" myproject.pcb

Теперь мы можем создать входной проект для Specctra одним двойным щелчком мыши в Проводнике по имени myproject.bat.

Ещё эффективнее можно организовать работу в файловом менеджере FAR (http://www.farmanager.com). В этой программе можно ассоциировать с каким-либо типом файлов не одно, а несколько действий, назначив для каждого действия определённое сочетание клавиш. Нажмём в FAR клавишу F9, выберем из меню раздел "Команды", а в нём пункт "Ассоциации файлов". Нажмём клавишу Insert, чтобы создать группу ассоциаций для файлов PCB. Появится окно редактирования ассоциаций файлов. Заполним его так, как показано на рисунке 1:

Рисунок 1. Создание ассоциации для генерации входных проектов Specctra из плат PCAD 200x PCB

Теперь по нажатию сочетания клавиш Alt+F4 из любого файла *.pcb будет генерироваться одноимённый входной проект для Specctra *.dsn.

В системе OrCAD тоже есть специальная утилита для получения входного проекта Specctra из файла печатной платы с расширением max, созданного в редакторе печатных плат OrCAD Layout. Она называется tospec.exe и находится в каталоге Layout. Её можно вызвать из оболочки Layout через команду меню File / Export / Layout to Specctra или непосредственно из Проводника или файлового менеджера. Аналогично ей можно передать при запуске имя файла *.max и получить для Specctra файл проекта. По умолчанию этот файл будет иметь расширение cct, так как расширение dsn используется в системе OrCAD для файлов редактора схем Capture. Имя и расширение файла проекта для Specctra можно также задать при запуске утилиты во втором параметре:

D:\Cadence\tools\layout_plus\tospec.exe myproject.max myproject.cct

или ввести в диалоговом окне, появляющемся после запуска утилиты (см. рисунок 2):

Рисунок 2. Диалоговое окно конвертера файлов OrCAD Layout в формат Specctra.

Предварительная настройка Specctra при помощи do файла

Do файл - это текстовый файл, который содержит команды для Specctra. Каждая команда занимает одну строку. Этот файл можно создавать и редактировать в любом редакторе для неформатированного текста, например, в Блокноте. Руководства по Specctra содержат описание огромного количества команд, которое в начала изучения системы может вызвать ощущение безнадёжности. Однако не все начинающие знают, что для начала можно обходиться вообще без do файла, управляя Specctra через её достаточно понятное меню. Каждая команда, вызываемая из меню, отображается в белом поле в нижней части окна Specctra. Оттуда эти команды можно копировать и заготовлять впрок для будущего do файла. (Контекстное меню в этом поле не работает, для копирования надо использовать сочетание клавиш Ctrl+C или Ctrl+Insert.) Кроме того, все команды протоколируются в файле с расширением did, который создаётся в каталоге проекта в каждом сеансе работы со Specctra, и при необходимости можно достать команды оттуда.

Выбор команд для оптимизации автоматической трассировки - это сложный процесс, граничащий с искусством и вызывающий множество споров. Он зависит от особенностей проекта, опыта и предпочтений разработчика. Желающие ознакомиться с существующими по этому поводу мнениями могут посмотреть, например, раздел на форуме http://www.electronix.ru, посвящённый разводке печатных плат. Здесь мы рассмотрим только несколько команд, которые помогут рационально организовать работу со Specctra. Эти команды я отобрал, исходя только из своего опыта, и буду очень рад, если кто-нибудь из читающих этот текст что-нибудь добавит или исправит и напишет мне об этом на dsioffe@yandex.ru.

Команды для предварительной настройки можно разделить на две части: команды, которые можно использовать при работе со всеми проектами, и команды для работы с конкретным проектом. Их можно сохранить в одном do файле или в двух разных и загружать вместе со Specctra при каждом запуске. Отметим, что в одном сеансе работы со Specctra можно выполнять неограниченное количество do файлов, запуская их через пункт меню File / Execute Do File.

Вот небольшая подборка команд, которые можно использовать для всех проектов.

И так далее. По образу и подобию этих команд можно составить много других, настроив по своему вкусу рабочую среду Specctra. Команды часто включают фразы на простом английском языке, поэтому они интуитивно понятны и легко составляются. Вот только очень не советую назначать горячую клавишу для команды delete all wires! Эта команда не подлежит откату.

Для каждого конкретного проекта целесообразно создать свой do файл, загружаемый вместе с проектом. В нём можно без возвращения к САПР подготовки печатных плат изменять приоритеты цепей, вводить и редактировать классы цепей и делать множество других полезных вещей. Вот примеры команд для работы с конкретным проектом:

На сайте автора по адресу http://www.dsioffe.narod.ru/myspecctra/do.zip можно найти архив с полными текстами двух описанных do файлов.

Запуск Specctra

В руководстве по Specctra предлагается очевидный способ запуска программы как обычного приложения: из Проводника или меню Пуск ОС Windows запускается файл specctra.exe. При этом появляется диалоговое окно, в котором оператор вводит имя проекта или сохранённого сеанса работы (обязательно) и, если нужно, имена необходимых дополнительных файлов (см. рисунок 3). Это простой и понятный путь, но многократный ручной ввод параметров отнимает много времени и чреват ошибками.

Рисунок 3. Диалоговое окно, появляющееся при запуске Specctra как обычного Windows - приложения

Для автоматизации запуска Specctra можно создать командный файл. Пусть файл specctra.exe лежит в каталоге D:\Cadence\tools\specctra\bin, в каталоге проекта - do файл для подготовки работы с этим проектом myproject.do, а в корневом каталоге диска C: расположен do файл для настройки среды specctrastart.do. Тогда командный файл может выглядеть таким образом (должно быть записано в одну строку):

start D:\Cadence\tools\specctra\bin\specctra.exe myproject.cct -do c:\specctrastart.do -do myproject.do

Здесь без какого-либо ключа в Specctra передаётся имя файла проекта myproject.cct, а с ключами -do - имена do файлов. Для загрузки в Specctra файла сеанса понадобится по этому же образцу создать второй командный файл, в котором myproject.cct надо будет заменить на myproject.ses. Оба эти файла должны находиться в каталоге проекта.

Если не использовать в начале строки команду start, то после запуска Specctra и до конца сеанса останется открыто пустое окно командного файла. Мелочь, а неприятно.

И, опять же, довести идею до совершенства поможет файловый менеджер FAR. Откроем ещё раз окно редактирования ассоциаций файлов, показанное на рисунке 1, чтобы создать новую ассоциацию. В строке "Одна или несколько масок файлов" введём *.dsn,*.cct,*.ses. В строке "Описание ассоциации" - например, "Файлы Specctra". А в строке "Команда, выполняемая по Enter" - такую строку:

D:\Cadence\tools\specctra\bin\specctra.exe !.! -do c:\specctrastart.do -do !.do

Эта строка, скорее всего, не поместится целиком в поле ввода FAR, но это не имеет значения. Теперь, если мы выберем в FAR файл для Specctra любого вида: *.dsn, *.cct или *.ses, то, нажав на клавишу Enter, мы загрузим в Specctra этот файл, одноимённый с ним do файл и файл c:\specctrastart.do. Одним щелчком.

Передача результата работы со Specctra в САПР разработки печатных плат

Для передачи результата работы со Specctra в САПР для подготовки печатных плат мы должны объединить исходный проект с результатом нашей работы, сохранённым в файле сеанса Specctra с расширением ses. Для этого в составе САПР имеются специальные конвертеры. Рассмотрим эту передачу снова на примере PCAD 200x и OrCAD.

В PCAD 200x конвертер называется sp2accel.exe. Эта программа также находится в каталоге с исполняемыми файлами PCAD 200x. Имя файла сеанса передаётся ей первым и без ключа, а имя файла исходного проекта - с ключом -orig. Таким образом, для нашего проекта мы можем создать в каталоге проекта командный файл, состоящий из следующей строки:

"D:\Program Files\P-CAD 2002\sp2accel.exe" myproject.ses -orig myproject.pcb

Из этого следует, что строка ассоциации для файлов ses в FAR будет иметь вид:

"D:\Program Files\P-CAD 2002\sp2accel.exe" !.! -orig !.pcb

Чтобы она не пересекалась с ассоциацией, созданной нами для загрузки файлов в Specctra, её можно ввести в то же окно для какой-либо другой клавиши или сочетания клавиш, например, для Alt+F4.

Результат передачи конвертер сохраняет под именем проекта, но с расширением pc_. Для дальнейшей работы надо удалить или переименовать исходный файл проекта, а затем изменить у полученного файла расширение pc_ на pcb.

В OrCAD конвертер называется specin.exe. Он также расположен в каталоге Layout и может быть вызван или отдельно с передачей ему последовательно имени файла сеанса Specctra и имён исходного и выходного файлов *.max, или же через меню оболочки Layout File / Import / Specctra to Layout. Работа с ним очевидна и после всего изложенного не требует дополнительных пояснений. Диалоговое окно этой программы показано на рисунке 4.

Рисунок 4. Диалоговое окно конвертера файла сеанса Specctra в файл OrCAD Layout

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

Заключение

Мы ознакомились с основными этапами работы со Specctra. При этом получился своеобразный "Design Flow", где на трансляцию файла из САПР подготовки печатных плат, загрузку проекта в Specctra и обратную трансляцию требуется по одному двойному щелчку мыши или по одному нажатию клавиши в FAR.

После прочтения всего этого может возникнуть вопрос: зачем уделять столько внимания организации входа в Specctra и выхода из неё? Повторюсь: за один запуск программы получить приемлемый результат более чем маловероятно. Неизбежно потребуются перестановки компонентов, удаление части проложенных проводников и их повторная разводка и многое другое, вплоть до изменения принципиальной электрической схемы. Более того: повторное выполнение одних и тех же команд трассировки в одном сеансе работы и в двух разных даёт разные результаты, причём в одном сеансе - часто худшие. Поэтому для повторной автоматической трассировки имеет смысл сохранить результат текущего сеанса в файле ses, завершить сеанс и открыть файл ses в следующем сеансе. Очевидно, что быстрый и безошибочный обмен данными с САПР подготовки печатных плат и такой же запуск Specctra помогут сэкономить много времени и нервов.

На главную страницу
Назад
Hosted by uCoz