Пакет CADSTAR. Урок 3. Редактор схем CADSTAR: добавление на схему элементов и связей

№ 5’2005
PDF версия
На предыдущем занятии мы изучили возможности рисования на схеме графических объектов. Сегодня рассмотрим основные приемы добавления на схему элементов и прорисовки связей.

Юрий Потапов
Сергей Прокопенко

[*introtext*]

Продолжение. Начало в № 2-4`2005

Добавление элементов

Нам потребуется созданный ранее проект selftch.scm с комментарием Sheets Set Up. Если этот проект у вас отсутствует, можно воспользоваться специальным учебным файлом Chapter3.scm, входящим в комплект стандартной поставки программы CADSTAR.

1. Выполним команду меню File | Open и в появившемся окне выберем файл Chapter3.scm.

2. Выполним команду View | Select Sheet и в появившемся окне щелкнем два раза левой кнопкой мыши на листе с именем JK Flip Flop.

3. С помощью команды View | View All изменим масштаб таким образом, чтобы в рабочем окне редактора была видна вся схема.

На открытом листе нам требуется нарисовать схему, эскиз которой представлен на рис. 1. На схеме присутствуют только логические элементы: шесть секций NAND3 и три секции AND2.

Рис. 1. Эскиз схемы триггера JK Flip Flop
Рис. 2. Различные варианты представления символов элементов

Логические элементы NAND3 и AND2 хранятся в библиотеке схемных элементов (Schematic Symbols). Каждый из них может иметь четыре графических представления, различить которые в библиотеке можно благодаря имени варианта, приведенного в скобках. На рис. 2 показаны четыре варианта представления элемента AND2. Если мы добавляем элемент на схему, используя имя компонента (Part Name), по умолчанию автоматически выбирается вариант ANSI2.

Для упрощения размещения элементов настроим сетку.

4. Выполним команду меню Setting | Grids.

5. В появившемся окне Grids (рис. 3) в выпадающем списке Name выберем имя сетки Screen Grid.

6. Включим опцию Step Grid, после чего в ячейках X Step и Y Step введем значение 500 и нажмем кнопку ОК.

Рис. 3. Настройка видимой сетки

7. Выполним команду меню Tools | Options и в окне Options перейдем на закладку Display.

8. В поле Screen Appearance в выпадающем списке Grid Type выберем строку Lined и нажмем кнопку ОК.

Если после проделанных манипуляций экранная сетка Screen Grid не отображается, необходимо выполнить следующее.

9. Выполним команду меню Settings | Colours.

10. В появившемся окне Colours в списке Category выберем строку Highlights и нажмем кнопку Change Colours.

В окне Colours/Highlights видим, что напротив имени объекта Screen Grid стоит параметр No, запрещающий отображение сетки на экране.

11.  Щелкнем два раза левой кнопкой мыши по строке Screen Grid. Параметр отображения примет значение Yes.

12. Дважды нажав кнопки ОК, закроем все диалоговые окна. Сетка отобразится на экране.

Если вы последовательно изучаете наши уроки, то должны помнить, что на предыдущем занятии мы назначили выполнение специального макроса на нажатие функциональной клавиши F5. Таким образом, если настройки, сделанные в ходе урока 2, были сохранены, то для переключения режима отображения сетки достаточно нажать клавишу F5.

Сначала выполним добавление элемента на схему, используя известное нам имя компонента (Part Name). В библиотеке CADSTAR присутствует компонент SN74LS10D, который состоит из нескольких секций NAND3.

13.  Выполним команду меню Add | Part or Symbol или нажмем кнопку на панели инструментов.

14.  В появившемся диалоговом окне Add Symbol by Part нажмем кнопку Search. На экране отобразится окно Add Symbol Search (рис. 4).

Рис. 4. Задание условий поиска компонента

15.  В поле Search For включим опцию Parts и в соответствующей ячейке введем шаблон поиска SN74LS*. Звездочка (*) здесь используется как стандартный символ подстановки нескольких неизвестных символов. Для обозначения одного неизвестного символа используется знак вопроса (?).

16.  В поле Search In включим опцию Library и нажмем кнопку ОК.

В диалоговом окне Add Symbol by Part появится список компонентов библиотеки, удовлетворяющих заданным критериям поиска (рис. 5).

17.  Просмотрим список компонентов, приведенный в правой части окна, и с помощью мыши выберем в нем строку SN74LS10D.

Рис. 5. Результаты поиска компонентов по маске

В левой части окна приведен список параметров, главные из которых для нас сейчас:

Symbol Ref Name — имя символа логического элемента (NAND3);

Alternate Name — имя варианта (ANSI2);

Gate Modifier — идентификатор секции. Отметим, что в системе CADSTAR идентификаторы (суффиксы) секций могут быть только буквенными. В нашем случае идентификатор имеет значение А, что соответствует первой секции компонента SN74LS10D. 18. В поле Component Name введем позиционное обозначение добавляемого элемента 1С 1 и затем нажмем кнопку Add.

Окно Add Symbol by Part закроется, а символ NAND3 «приклеится» к указателю мыши. Подробная информация о размещаемом символе будет приведена в строке состояния (рис. 6).

Рис. 6. Информация о добавляемом элементе

19. Сдвинем указатель мыши в левый верхний угол схемы и щелкнем левой кнопкой мыши.

На схеме появится элемент IC1-A, а к указателю мыши «приклеится» очередная секция компонента, которая автоматически получит обозначение IC1-B. Обратите внимание, что изменятся и номера выводов, информация о которых извлекается из библиотечного описания компонента.

20.  Разместим новый элемент несколько ниже первого и щелкнем левой кнопкой мыши.

Не стоит беспокоиться о неточном размещении символа, позднее мы исправим это.

21. Аналогичным образом разместим еще один символ NAND3 согласно схеме, приведенной на рис. 1. Элемент автоматически получит имя IC1-C

Обратите внимание, что после размещения третьей секции позиционное обозначение «приклеенного» к указателю мыши элемента изменится на IC2-A, свидетельствуя о том, что все три имеющиеся в компоненте SN74LS10D секции задействованы и новая секция будет первой (А) в компоненте IC2.

22. Добавьте на схему еще три символа NAND3 согласно схеме, приведенной на рис. 1. Элементы автоматически получат имена IC2-A, IC2-B и IC2-C.

23.  Нам требуется только шесть элементов NAND3, поэтому, нажав клавишу Escape, выйдем из режима размещения.

Рис. 7. Выбор элемента с помощью панели Workspace

24.  На экране снова появится диалоговое окно Add Symbol by Part, для выхода из которого нажмем кнопку Cancel.

Чтобы добавить на схему три элемента AND2, воспользуемся другим методом — применим панель Workspace.

25.  Если она не отображается на экране, выполним команду меню View | Windows Workspace.

26.  На панели Workspace перейдем на вкладку Libraries.

В окне отобразится список библиотек, расположенных в папке, указанной в настройках File Locations.

27.  Прокрутим список, пока в окне не появится библиотека TTL, затем щелкнем левой кнопкой мыши по знаку (+) возле имени библиотеки.

Заметьте, библиотека компонентов TTL имеет иерархическую структуру, что существенно облегчает поиск компонентов.

28.  Прокрутим список содержимого библиотеки TTL, пока не появится папка SN74LS, и щелкнем левой кнопкой мыши по знаку (+) возле имени папки.

29.  Просмотрим список содержимого папки SN74LS, пока не найдем компонент SN74LS08D. Щелкнем по нему левой кнопкой мыши.

Теперь перед нами в окне Library Preview появится графическое представление компонента (рис. 8). Вы увидите, что компонент SN74LS08D включает четыре секции AND2.

Добавление элемента на схему при работе с панелью Workspace осуществляется методом перетаскивания.

Рис. 8. Графическое представление компонента на панели Library Preview

30. Наведем указатель мыши на компонент SN74LS08D на панели Workspace, нажмем левую кнопку мыши и, удерживая ее, переместим захваченный элемент в окно редактора схем.

31. Как только указатель мыши переместится в окно редактора схем, символ AND2 окажется «приклеенным» к нему. С этого момента левую кнопку мыши можно отпустить.

Обратите внимание, что обозначение элемента будет присвоено по умолчанию — U1. Позднее мы изменим его.

32. Переместим символ в позицию IC3-A на рис. 1 и щелкнем левой кнопкой мыши.

На схеме появится элемент U1-А, а к указателю мыши «приклеится» очередная секция компонента, которая автоматически получит обозначение U1-A.

33. Аналогичным образом разместим на схеме еще два символа AND2. Элементы автоматически получат имена U1-B и U1-C.

34. Для выхода из режима размещения щелкнем правой кнопкой мыши и в появившемся контекстном меню выберем команду Cancel или просто нажмем клавишу Escape.

Переименование элементов

Переименуем только что добавленные на схему элементы.

1. Выполним команду Edit | Item Properties или нажмем кнопку LiJ на панели инструментов.

2. Наведем указатель мыши на элемент U 1-А и выполним щелчок левой кнопкой мыши. На экране появится окно Item Properties/ Symbol (рис. 9).

3. В поле Name введем новое обозначение IC3 и нажмем кнопку ОК.

Окно закроется, а позиционное обозначение указанного элемента на схеме изменится. Данный метод работает по принципу «действие-объект». То есть сначала указывается действие, которое будет выполняться, а потом объекты. Такой метод удобно использовать, когда выполняется последовательность однотипных действий с несколькими объектами.

Рис. 9. Изменение позиционного обозначения элемента
Рис. 10. Выравнивание элементов
Рис. 11. Настройка типов цепей

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

4. Перейдем в режим выделения, для чего нажмем кнопку LsJ и окном охвата выделим элементы U1-B и U1-C.

5. Щелкнем правой кнопкой мыши и в появившемся контекстном меню выберем команду Item Properties или просто нажмем кнопку 1*1 на панели инструментов.

6. В окне Item Properties/Symbol в поле Name введем новое обозначение IC3 и нажмем кнопку ОК.

Окно закроется, а позиционное обозначение изменится сразу у двух элементов. Суффикс секции добавляется к обозначению автоматически (вручную изменить его в этом случае просто невозможно). Отметим, что описанный метод подходит только для изменения одинаковых данных, при попытке одновременно изменить обозначения элементов IC1-C и IC2-A он работать не будет.

Выравнивание элементов на схеме

Теперь, чтобы обеспечить ортогональное отображение связей, выполним выравнивание элементов.

1. Перейдем в режим выделения: нажмем кнопку Ш и окном охвата выделим элементы IC1-A и IC1-C.

2. Выполним команду меню Actions | Align Items. На экране появится диалоговое окно Align Items (рис. 10).

3. Выравнивать компоненты будем по горизонтали, относительно их верхнего края, поэтому в поле Horizontally включим опцию Top Edge и нажмем кнопку ОК. Элементы автоматически переместятся согласно заданным настройкам.

4. Окном охвата выделим элементы IC1-A и 1С 1-В и выполним команду меню Actions Align Items.

5. В диалоговом окне Align Items в поле Vertically включим опцию Left Sides и нажмем кнопку ОК.

Элементы выровняются по вертикали.

6.  В качестве упражнения самостоятельно выровняйте по вертикали и горизонтали оставшиеся пары элементов, как показано на рис. 1.

Прорисовка цепей

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

Сначала выполним настройку типов цепей (Net Route Code), которые фактически представляют собой правила проектирования, задающие ограничения на ширину проводников и учитываемые в редакторе печатных плат.

1. Выполним команду меню Settings | Assignments и в появившемся окне Assignments перейдем на вкладку Routes.

Здесь имеются четыре заданных по умолчанию типа цепей, для каждого из которых задано рекомендуемое значение ширины проводника (Optimal Width), а также пределы Min Width и Max Width изменения ширины проводников при интерактивной трассировке.

Сейчас для нас представляют интерес только сигнальные цепи (тип Signal).

2. Проверим, чтобы настройки ширин проводников для этого типа соответствовали приведенным на рис. 11, и закроем окно. Настроим стиль отображения меток цепей, которые будут появляться автоматически в окрестности терминала или точки подключения цепи к выводу элемента.

3. Выполним команду меню Settings | Defaults и в появившемся окне перейдем на вкладку Connection (рис. 12).

Рис. 12. Настройка отображения меток цепей

Здесь для каждого типа цепей (Net Route Code) в поле Signal Names задается стиль текстовой метки цепи (Code), сдвиг метки относительно терминала (Offset) и угол ее смещения (Angle). Метка цепи всегда отображается над терминалом (рис. 13). 4. Проверьте соответствие всех настроек для типа цепей Signal приведенным на рис. 12 и закройте окно.

Приступим к добавлению на схему связей, начинающихся и заканчивающихся на выводах элементов. В ходе этого некоторым цепям присвоим специальные имена.

Изменим масштаб просмотра таким образом, чтобы в окне редактора отображались три верхних левых элемента: IC1-A, IC3-A и IC1-C.

Рис. 13. Параметры отображения меток цепей

Первую связь проведем от вывода 12 IC1-A к выводу 10 IC1-C. Перед этим включим ортогональный режим рисования.

5. Выполним команду меню Tool | Options, в появившемся окне на вкладке Interaction в поле Add Segment Mode выберем опцию Two Segment/90 Degrees и нажмем кнопку ОК.

6. Выполним команду Add | Connection .

В строке состояния появится подсказка Select connection start position (укажите точку начала линии связи).

7. Наведем указатель мыши на вывод 12 элемента IC1-A и щелкнем левой кнопкой мыши.

Связь присоединится к выводу и будет тянуться за курсором в виде последовательности ортогональных сегментов. В строке состояния появится подсказка Select position for corner or end («Укажите точку изгиба или завершения»). Прежде чем завершить связь, присвоим ей специфическое имя.

8. В режиме прокладки связи наберем на клавиатуре текст NET1 и нажмем клавишу Enter.

Теперь имя NET1 присвоено текущей связи, что можно проверить в соответствующей ячейке строки состояния, но пока это имя на схеме никак не отображается.

9. Наведем указатель мыши на вывод 10 элемента IC1-C и щелкнем левой кнопкой мыши.

Прокладка связи завершится автоматически. Данной связи по умолчанию будет присвоен тип цепи Signal. Все связи, которые мы будем добавлять на нашу схему, будут иметь этот тип. Метка цепи NET1 отобразится возле вывода 10 элемента IC1-C (рис. 14).

Рис. 14. Автоматически добавленная метка цепи

10.  Наведем указатель мыши на вывод 1 элемента IC3-A и щелкнем левой кнопкой мыши.

11. Сдвинем указатель мыши немного влево и вниз. Связь будет прорисована двумя сегментами.

12.  Щелкнем левой кнопкой мыши и зафиксируем позицию первого излома линии связи.

13.  Наведем указатель мыши на вывод 2 элемента IC3-A и щелкнем левой кнопкой мыши.

К линии связи будет добавлен новый излом, а сама связь — присоединена к выводу и завершена. Обратите внимание, что в данном случае имя цепи 1 было присвоено автоматически по умолчанию, а метка цепи при этом не появилась.

14. Аналогичным образом соединим выводы 13 элемента 1С 1-А и 3 элемента ГО-В.

Изменим вид в окне редактора так, чтобы в нем отображались элементы IC2-C и IC3-C

Ь) Автоматически добавленная связь Рис. 15. Автоматическое добавление связей между элементами

15.  Перейдем в режим выделения, для чего нажмем кнопку Ы, щелкнем левой кнопкой мыши по элементу IC2-C и, удерживая символ, переместим его влево так, чтобы конец вывода 10 элемента IC2-C наложился на конец вывода 8 элемента IC3-C (рис. 15а).

16.  Отпустим левую кнопку мыши.

17. Снова захватим элемент IC2-C и, удерживая нажатой левую кнопку мыши, сместим его немного вправо.

Между выводами 8 и 10 автоматически добавилась связь, которая по мере отодвигания элемента IC2-C тянется за ним (рис. 15b).

Описанный метод также работает, когда вывод элемента накладывается на существующую линию связи.

Полный перечень режимов автоматического добавления связей можно найти в справочной системе пакета CADSTAR.

18. Снова выполним команду меню Add Connection и нажмем клавишу F1. На открывшейся странице справки перейдем по ссылке Connecting Symbols Automatically.

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

19. Закроем окно справочной системы.

20.  Еще раз выполним команду меню Add Connection, наведем указатель мыши на связь между выводами 13 элемента IC1-A и 3 элемента IC1-B и щелкнем левой кнопкой мыши.

Рис. 16. Соединение двух существующих связей

21. Сдвинем указатель мыши вправо, в сторону элемента IC3-A. Прокладываемая связь подключилась к существовавшей ранее, о чем сигнализирует появившаяся точка соединения.

22. Наведем указатель мыши на связь между выводами 1 и 2 элемента IC3-A и щелкнем левой кнопкой мыши. Новая связь соединит две цепи, причем конечная цепь получит имя той, с которой начиналась связь.

Пока мы рисовали только ортогональные связи, однако на рис. 1 присутствуют цепи, проложенные под произвольным углом. Попробуем нарисовать их.

23.  Начнем связь с вывода 1 элемента IC2-A, нарисуем последовательно горизонтальный и вертикальный сегменты, как показано на рис. 17, и щелкнем правой кнопкой мыши.

Рис. 17. Прокладка связей под произвольным углом

24.  В появившемся контекстном меню выберем команду Angle 0.

Теперь прокладываемая связь будет тянуться за указателем мыши под произвольным углом.

25.  Щелчком левой кнопки мыши зафиксируем наклонный сегмент так, чтобы его второй конец подходил немного правее и ниже вывода 8 элемента IC1-C.

26.  Наберем на клавиатуре команду «А 90» (с пробелом) и нажмем клавишу Enter. Редактор перейдет в режим рисования ортогональных связей.

27. Завершим рисование связи на выводе 8 элемента IC1-C, добавив последовательно вертикальный и горизонтальный сегменты.

Примечание: для последовательного переключения трех показанных на рис. 17 режимов рисования на клавиатуре может быть набрана команда «А». Для перехода в конкретный режим используются команды «А 90», «А 45» и «А 0» соответственно (с пробелами).

Приступим к созданию связей, образующих внешние (иерархические) соединения схемы.

Все входы и выходы схемы JK Flip Flop оканчиваются иерархическими выводами, известными также как блочные выводы (Block Terminals), или порты.

28.  Начнем связь на выводе 1 элемента IC1-A и проведем ее влево к краю схемы.

Рис. 18. Задание имени цепи для иерархического порта

29. Нажмем правую кнопку мыши и в появившемся контекстном меню выберем команду Block Terminal. Теперь к концу прокладываемой связи добавится символ иерархического вывода.

30. Укажем необходимую позицию размещения порта и щелкнем левой кнопкой мыши.

31. В появившемся окне Add Connection/ Signal Name введем имя цепи LOGIC1, которое фактически будет создавать связь схемы JK Flip Flop со схемой верхнего уровня иерархии, и нажмем кнопку ОК.

На схеме появится связь, завершающаяся портом и текстовой меткой с именем цепи.

32. Начнем новую связь на выводе 5 элемента IC1-B, добавим к ней иерархический порт (Block Terminal), подведем к левому краю листа схемы и щелкнем левой кнопкой мыши.

33. В окне Add Connection/Signal Name снова введем имя цепи LOGIC 1 и нажмем кнопку ОК.

На экране появится сообщение, показанное на рис. 19. Оно информирует нас, что цепь с таким именем на схеме уже существует.

Рис. 19. Сообщение о том, что цепь с задаваемым именем уже существует

34. Нажмем кнопку Yes («Продолжить»),

На схему добавятся еще одна связь и порт с именем LOGIC 1. В том, что две разных связи имеют одинаковое имя, нет никакого противоречия. Это лишь означает, что связи принадлежат одной цепи LOGIC 1, хоть и не соединены на схеме явно. Таким образом, имя цепи обеспечивает логическую связность проекта.

Проверка правил электрических соединений (ERC)

Система CADSTAR имеет возможность проверки правил электрических соединений (ERC) непосредственно в процессе рисования связей. Подобная проверка делает невозможным соединение несовместимых выводов (например двух выходов логических элементов).

1. Выполним команду меню Setting | Electrical Rules.

На экране появится диалоговое окно Electrical Rules Setting, перечисляющее доступные правила проверки (рис. 20).

2. Поставим галочки напротив трех правил, как показано на рис. 20. Такой набор запрещает соединение земли с цепями питания

и выводами элементов, определенными как логические выходы, а также логических выходов различных типов между собой.

3. Включим режим проверки правил ERC «на лету», для чего выполним команду меню Tools | Options, и в появившемся окне на вкладке Interaction включим опцию Electrical Rules Checking.

4. Изменим масштаб просмотра схемы, чтобы в центре окна были элементы IC3-B и IC3-C

5. Начнем связь с вывода 6 элемента IC3-B, проложим его любым способом и попытаемся завершить ее на выводе 8 элемента IC3-C Поскольку оба вывода являются логическими выходами, механизм проверки правил ERC не позволит нам завершить эту связь щелчком левой кнопки мыши. Причина будет описана в строке состояния (рис. 21).

Рис. 20. Настройка правил проверки ERC

Рис.21. Сообщение о нарушении правила ERC

Рис. 22. Настройка отчета о проверке ERC

6. Нажмем клавишу Escape и откажемся от выполнения этой операции.

Если пользователю не требуется постоянный контроль соблюдения правил электрических соединений в процессе рисования, но в какой-то момент он захочет проверить, имеются ли в проекте какие-либо нарушения ERC, он может выполнить проверку в так называемом пакетном режиме.

Сделаем следующее упражнение.

7. Выключим режим проверки правил ERC «на лету»: для этого выполним команду меню Tools | Options и в появившемся окне на вкладке Interaction выключим опцию Electrical Rules Checking.

8. Нарисуем связь между выводами 6 элемента IC3-B и 8 элемента IC3-C. Так как проверка отключена, система позволит нарисовать соединение.

9. Выполним команду меню Tools | Reports Electrical Rules Check.

10. В появившемся окне Electrical Rules Checking (рис. 22) включим только опцию View Report («Просмотр отчета») и нажмем кнопку ОК. Печать или сохранение в файл нам сейчас не требуются.

На экране компьютера появится окно отчета Electrical Rules Checking ActiveReport, в котором будет приведено сообщение о найденной ошибке Output connected to Output (Not OR Tieable) («Соединены два логических выхода») и строка с подробным описанием цепи, вызвавшей нарушение (рис. 23).

Рис. 23. Отчет о результатах пакетной проверки правил ERC

11.  Щелкнем левой кнопкой мыши по строке отчета, описывающей конфликтную цепь.

Редактор схем автоматически изменит вид и масштаб так, чтобы наилучшим образом показать указанную цепь. Отсюда следует, что окно отчета является интерактивным и обеспечивает оперативную навигацию в проекте.

12.  Нажмем кнопку Close и закроем окно отчета.

13.  Выполним команду меню Edit | Undo необходимое число раз, чтобы вернуться к состоянию, предшествующему добавлению конфликтной цепи.

Управление отображением имен цепей

Пользователь имеет возможность управлять отображением имени цепи, соединенной с определенным выводом элемента.

1. Перейдем в режим выделения и щелкнем левой кнопкой мыши на конце вывода 1 элемента IC1-A, к которому присоединена цепь LOGIC1.

2. Выполним команду меню Edit | Item Properties или просто нажмем кнопку на панели инструментов.

3. В появившемся окне Item Properties/Symbol Pin в поле Net включим опцию Display Signal Name и нажмем кнопку ОК.

На схеме рядом с выводом появится метка цепи (рис. 24). Ее позиция и стиль будут определяться сделанными нами ранее установками. При необходимости метку можно перенести в другое место, но следует учитывать, что она не является самостоятельным объектом, а представляет собой атрибут вывода.

В завершение данного занятия мы рекомендуем самостоятельно закончить прорисовку всех связей на схеме JK Flip Flop, как показано на рис. 1, и сохранить проект. Обратите внимание, что на схеме отсутствуют цепи земли GND и питания VCC. В прорисовке этих цепей нет необходимости, так как информация о подключении определенных выводов компонентов к соответствующим цепям уже занесена в библиотеку. Позднее мы рассмотрим этот вопрос подробнее.

Рис. 24. Отображение имени цепи около вывода элемента

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *