Схемотехника / Учебники и методички / lab_m5_vt_vt_aloiscevm_niy06
.pdfРеализуем схемы функций в одном схематическом файле в среде MAXPLUS II. Для этого необходимо запустить MAXPLUS II . (Пуск → Все программы → MAX+PLUS II 10.0 BASELINE → MAX+PLUS II 10.0
BASELINE) . Сама программа для запуска обычно находится по адре-
су: C:\MAXplus2\MAX2win.exe
Чтобы создать новый файл в графическом редакторе, нужно в па-
нели инструментов навести на ярлык и нажать левой кнопкой мы-
ши или: File → New → Graphic Editor File (.gdf). Появится окно, пока-
занное на рис.5, в котором необходимо выбрать тип создаваемого файла, в нашем случае нужен графический файл (Graphic Editor File).
Рис.5. Создание нового файла в среде MAX+PLUS II
Сохраним файл в какой-либо папке на диске D, это можно сделать,
нажав на панели инструментов на ярлык или выполнив File → Save (Ctrl-S).
Примечание. MAX+PLUSE II не работает с русскими буквами в названиях папок и файлов, используйте латинские буквы и цифры. Например, путь и имя файла D:\Учёба\LAB1\s.gdf недопустимо, так как в пути файла встречаются кириллические символы. Кажется, что первое сохранение пустого файла не несёт большой смысловой нагрузки. Однако в дальнейшем при создании схем периодическое нажатие Ctrl-S на клавиатуре будет полезным, так как оно приводит к сохранению текущей схемы в указанный файл.
Итак, перед нами чистый лист графического редактора. Для создания схемы необходимо устанавливать символы и соединять их цепями. Обратим внимание на то, что в среде MAX+PLUS II компоненты, выполняющие стандартные логические операции, выглядят немного не
31
так, как их рисуют в русскоязычной литературе. Примеры изображения и их обозначения показаны в табл.1.
|
|
|
|
Таблица 1 |
|
Изображения компонентов в МАХ+PLUS II и их аналоги |
|||
|
|
|
|
|
Имя |
|
Изображение в |
Изображение |
Описание |
сим- |
|
MAX+PLUS II |
|
|
вола |
|
|
|
|
|
|
|
|
двух- |
And2 |
|
|
|
входовый |
|
|
|
|
вентиль |
|
|
|
|
«И» |
|
|
|
|
|
|
|
|
|
двух- |
Or2 |
|
|
|
входовый |
|
|
|
|
вентиль |
|
|
|
|
«ИЛИ» |
|
|
|
|
|
xor |
|
|
|
сумма по |
|
|
|
модулю 2 |
|
|
|
|
|
|
|
|
|
|
|
Not |
|
|
|
«не» |
|
|
|
|
|
32
Окончание |
|
|
|
|
|
|
|
|
|
Имя |
|
Изображение в |
Изображение |
Описание |
сим- |
|
MAX+PLUS II |
|
|
вола |
|
|
|
|
dff |
|
|
|
D - |
|
|
|
триггер |
|
|
|
|
|
|
|
|
|
|
|
jkff |
|
|
|
JK - |
|
|
|
триггер |
|
|
|
|
|
|
|
|
|
|
|
Input |
|
|
Различные варианты |
Вход |
|
|
схемы |
||
|
|
|
|
|
|
|
|
|
|
Output |
|
|
Различные варианты |
Выход |
|
|
схемы |
||
|
|
|
|
|
|
|
|
|
|
В МАХ+PLUS II для задания входных переменных или цепей для выходных функций используются свои графические символы. Многоместные логические операции, имеющие n входов, можно получить с помощью указания количества входов, например вентиль «И» на 3 входа будет вызываться командой «and3», а вентиль «ИЛИ» на 4 входа будет иметь название «or4». В случае необходимости проинвертировать выход вентиля, перед именем ставится буква n, например имя двухвходового вентиля «ИЛИ-НЕ» будет: «nor2». Для облегчения работы студентам имена наиболее часто используемых символов при создании схем в графическом редакторе указаны в табл.2.
33
Таблица 2
Имена и названия символов в МАХ+ PLUS II
Имя |
Описание |
компонента |
|
|
|
Input |
Входной сигнал |
|
|
Output |
Выходной сигнал |
|
|
Andn |
n-входовой вентиль «И», n = 2, 3, … |
|
|
Orn |
n-входовой вентиль «ИЛИ», n = 2, 3,… |
|
|
Nandn |
n-входовой вентиль «И-НЕ», n = 2, 3,… |
|
|
Norn |
n-входовой вентиль «ИЛИ-НЕ», n = 2, 3,… |
|
|
xor |
Двухвходовой вентиль «исключающее или» |
|
|
xorn |
n-входовой вентиль «исключающее или», n = 3, 4, 8 |
|
|
Not |
Инвертор |
|
|
Dff |
D-триггер |
|
|
Jkff |
JK-триггер |
|
|
Wire |
Повторитель (позволяет дать цепи другое имя) |
|
|
Чтобы установить символ в поле схемы, необходимо сделать двойной клик левой клавишей мыши в то место рабочей области графического редактора, где он должен появиться. В диалоговом окне, которое показано на рис.6, в поле symbol name нужно, используя клавиатуру компьютера, набрать имя символа, например and2, и нажать на клавиатуре Enter (либо кликнуть мышкой на кнопку «OK»).
Другой способ установки символа на чертёж - выбрать пункт меню symbol Enter во вкладке меню symbol (symbol → symbol Enter).
В процессе создания схемы часто бывает нужно установить в чертеже несколько однотипных элементов. В МАХ+PLUS II удобнее в этом случае не устанавливать каждый раз новый, а копировать старый. Для этого нужно выделить исходный символ курсором мыши, нажать клавишу «CTRL» и не отпуская её и левую кнопку мыши перетащить символ на свободный участок.
34
Рис.6. Окно для указания имени устанавливаемого компонента
При большом количестве компонентов можно уменьшать и увеличивать масштаб, используя сочетания клавиш, приведённые в табл. 3.
Таблица 3
Возможные действия в МАХ+PLUS II
Действия Описание
Двойной клик левой кнопкой мыши |
Добавить символ |
|
Уменьшить масштаб |
|
|
Ctrl+Shift+пробел |
схемы |
|
Увеличить масштаб |
|
|
Ctrl+пробел |
схемы |
|
Сохранить изменения |
Ctrl+S |
После того как на схеме установлены все символы, приступим к связям межу ними. Отметим, что в МАХ+PLUS II необязательно тянуть линии связи между компонентами (вентилями), достаточно задать каж-
35
дой цепи на входе или выходе компонента собственное имя. В дальнейшем, если несколько цепей будут иметь одинаковое имя, они считаются соединёнными между собой. В случае, когда компоненты находятся вблизи друг друга, соединять выход одного и вход другого удобно и наглядно. Если же требуется соединить два удалённых контакта и таких соединений много, то целесообразно дать таким цепям одинаковое имя для их соединений, это не позволит загромождать рисунок множествами нитей связи.
В любой схеме обязательно должны присутствовать входы (Input), количество входов должно быть столько же, сколько переменных, и выходы (output), количество выходов, столько же сколько и реализованных функций на одном проекте. Каждый вход и выход должен иметь своё имя, отличное друг от друга. Не допускается в проекте создавать несколько входов или выходов с одинаковыми именами.
Одна из возможных реализаций схемы для полученных ранее минимизированных функций приведена на рис.7. В этой схеме используются пять входных переменных x0…x4, четыре выходных функции y1…y4. Для получения инверсных значений входных переменных на схеме установлены 5 инверторов, у которых входным и выходным це-
пям даны название цепей. Например, для получения x0 на входе инвер-
тора цепь названа x0, на выходе nx0. В правой части схемы реализованы сами функции. Для подачи необходимых переменных на входы вентилей вместо соединений линиями используются названия цепей.
После того как схема нарисована, САПР необходимо её откомпилировать. В процессе компиляции могут быть обнаружены ошибки, допущенные разработчиком, например неподключенные входы у вентилей, недопустимые соединения, например соединения выходов нескольких компонентов, наличие нескольких входов или выходов с одинаковыми именами и т.д. МАХ+PLUS II является системой, которая позволяет создавать огромные проекты с иерархической структурой, состоящие из множества файлов. Поэтому перед компиляцией нужно указать САПР, что именно текущий графический файл является проектом по умолчанию. В противном случае возможна ситуация, когда САПР будет компилировать предыдущий проект. Для указания проекта по умолчанию необходимо сделать так, чтобы текущее окно отображало нарисованную схему и в этом состоянии в панели инструментов нажать
36
Рис.7. Реализация четырёх функций алгебры логики в поле одного чертежа МАХ+PLUS II
на ярлык . Другой способ выполнить это же действие через меню:
File → Project → Set Project to Current (Ctrl-Shift-J)
После выполнения этих действий САПР будет знать, какой проект требуется компилировать и куда сохранять вспомогательные файлы. По умолчанию все рабочие файлы хранятся в рабочей директории
МАХ+PLUS II.
Далее сохраним проект и откомпилируем его, для этого в панели
инструментов надо нажать кнопку . То же самое можно сделать че-
рез меню: File → Project → Save & Compile (Ctrl-L).
В случае наличия ошибок их необходимо исправить, после чего снова сохранить проект и начать компиляцию. На рис.8 показано окно программы, говорящее о том, что в схеме обнаружена одна ошибка (1 errors). Одновременно с ним появляется другое окно «Messages - Compiler» с подробным перечнем сообщений об ошибках (рис.9). Каждое сообщение сигнализирует об одной найденной ошибке. Если сделать двойной клик мыши на текст какой-либо ошибки, то МАХ+PLUS II переключится в графический файл и выделит тот символ, где она допущена. Результат таких действий показан на рис.10.
37
Рис.8. Сообщение, сигнализирующее о наличии ошибок в проекте
Рис.9. Окно сообщений с перечнем ошибок
Перечислим несколько наиболее часто допускаемых ошибок при создании схемы:
-Duplicate pin name: несколько входов или выходов имеют одинаковое имя;
-Output pinstubs … and … are tied together: выходы нескольких компонентов соединены между собой;
-Node missing source: один из входов компонента не подключен;
-Node has more than one name: цепь имеет более чем одно имя.
Рис.10. Выделенный прямоугольник с местом возможной ошибки
38
В окне компилятора сообщения зелёного цвета носят информационный характер, сообщения синего цвета - предупреждающий. Предупреждения могут возникать в случае наличия входной переменной, которая не используется, наличия вырожденных конструкций, например триггера, выход которого не может изменить своё значение ни при каких условиях, и т.д.
На рис.11 показан вариант успешной компиляции проекта, когда ошибок нет.
Рис.11. Результат успешной компиляции проекта
После устранения всех ошибок и успешной компиляции просимулируем проект. Для этого нужно создать новый файл временной диа-
граммы, нажав на ярлыке или выполнив в меню File → New. В появившемся диалоговом окне нужно указать, что нужно создать файл с временной диаграммой: Waveform Editor File (.scf) (рис.12)
39
Рис.12. Создание нового файла в проекте
Далее необходимо сохранить файл строго с тем же именем, что и
графический файл, но с расширением scf: . Через меню САПР это можно сделать, выбрав File → Save (Ctrl-S). Одинаковое имя делается для того, что бы САПР могла знать, к какому проекту относится эта временная диаграмма при симулировании.
Добавим на временную диаграмму входные/выходные цепи. Их названия можно получить автоматически после успешной компиляции проекта, выбрав в пункте меню Node → Enter Nodes from SNF. Диалоговое окно показано на рис.13.
В поле node/Group впишем маску * для получения всех входов/выходов проекта. Если же интересует конкретный вход/выход, то его имя или удовлетворяющую для него маску нужно вписать в это поле, после чего, нажав на кнопку List, в окне Available Nodes & Groups появятся наименование входов/выходов. Цепи, по которым требуется построить временную диаграмму, выбираем следующим образом: выделяем имя нужной цепи, нажимаем кнопку «=>». Для рассматриваемого проекта нужны все цепи, в результате выбора они перейдут из левого поля в правое, как показано на рис.14, затем нажимаем на кнопку «ОК», для того, чтобы подтвердить свой выбор.
40