Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

АЛО схемотехника Якунин (Методичка)

.pdf
Скачиваний:
205
Добавлен:
14.10.2014
Размер:
2.76 Mб
Скачать

инициализировать содержимое блоков памяти (RAM или ROM) перед симуляцией;

сохранять инициализированные значения узлов и групп, включая значения памяти в файле инициализации симулятора - Simultor Initialization Files (.sif), либо перезагружать инициализированные значения, содержащиеся в файле;

вести журнал команд в файле ASCII Log File (.log) в формате, аналогичном формату файлов Command File (.cmd), и использовать файл журнала для повтора ранних симуляций. Также можно записывать команды симулятора и выходные данные в файл ASCII History File (.hst).

Редактор временных диаграмм MAX+PLUS II, показанный на рис.15, используется как средство для создания схем, а также как средство для задания входных векторов и просмотра результатов симуляции. Можно соз-

давать файлы Waveform Design File (.wdf), содержащие логику проекта, и файлы Simulator Channel Files (.scf),

содержащие входные векторы для симуляции.

Рис.15. Редактор временных диаграмм

Для того чтобы промоделировать проект, необходимо обеспечить входные векторы. С помощью файла SCF можно задать входные векторы для симуляции в виде временной диаграммы, являющейся графической альтернативой файлу ASCII Vector File (.vec).

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

21

PDF created with pdfFactory Pro trial version www.pdffactory.com

Для создания начального файла SCF, содержащего несколько или все узлы и группы скомпилированного проекта, редактор временных диаграмм может использовать файл Simulator Netlist File (.snf). Этот файл можно редактировать так, как это необходимо. Кроме этого, можно импортировать входной файл Vector File, чтобы автоматически создать графический эквивалент в виде временной диаграммы.

С помощью редактора временных диаграмм можно просматривать и анализировать результаты в файле SCF. Симулятор генерирует SCF автоматически, если источником входных векторов является файл Vector Files, в другом случае файл SCF, бывший источников входных векторов, просто обновляется в процессе симуляции. Двунаправленный и выходной узлы временной диаграммы обновляются логическими уровнями, полученными с помощью входных данных симулятора.

22

PDF created with pdfFactory Pro trial version www.pdffactory.com

Лабораторная работа № 1 Комбинационные схемы

Цель работы: изучить методы синтеза комбинационных схем в потенциальной системе элементов; получить навыки работы с САПР MAX+PLUS II; получить навыки в синтезе, наладке и экспериментальном исследовании синтезируемых схем.

Продолжительность работы - 4 часа.

Лабораторное задание

1.Ознакомиться с правилами техники безопасности в учебном кабинете.

2.Выполнить синтез структур комбинационных схем, заданных в индивидуальном задании, построить временные диаграммы работы.

3.Получить допуск к лабораторной работе, показав преподавателю выполненное задание и ответив на вопросы теоретической части.

Пример индивидуального задания

Используя карты Карно, минимизировать функции алгебры логики (ФАЛ), заданные числовым представ-

лением СКНФ или СДНФ:

 

y1 = (3,6,7,12 −15;

× : 2,9,11);

y2

= (5,7,8,13,15;

× : 0 − 3,9 −11);

y3

= (0,4,25,27,29,31; × :1,2,6,19,23,26,28,30);

y4

= (0,1,3,7,8,9,11,15,21,24,25,27,31; × : 5,13,16,17,19,23,26,28,29,30);

Порядок выполнения работы

Преобразование информации в схемотехнике производится схемами двух классов: комбинационными [1] и последовательностными [2]. Процесс синтеза комбинационных схем, как правило, у студентов не вызывает больших трудностей, поэтому одной из важнейших задач первой лабораторной работы является получение основных навыков проектирования в среде MAX+PLUS II.

Для минимизации ФАЛ, заданных в индивидуальном задании, потребуются эталонные карты Карно для ФАЛ четырёх переменных (для y1, y2) и пяти переменных (для y3, y4), которые представлены на рис.1.

23

PDF created with pdfFactory Pro trial version www.pdffactory.com

y

 

x1

 

 

 

y

 

x2

 

 

x1

 

 

 

 

x

10

11

9

8

 

x4

20

21

23

22

18

19

17

16

 

14

15

13

12

 

28

29

31

30

26

27

25

24

 

3

x

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

7

5

4

2

 

12

13

15

14

10

11

9

8

3

 

 

 

 

 

2

3

1

0

 

 

4

5

7

6

2

3

1

0

 

 

 

x0

 

 

 

 

 

x0

 

 

б

 

x0

 

 

 

 

а

 

 

 

 

 

 

 

 

 

 

 

 

Рис.1. Эталонные карты Карно для функций алгебры логики: а - четырёх переменных; б - пяти переменных

Эталонные карты показывают места расположения номеров наборов при данном расположении переменных, от которых зависит функция. В индивидуальном задании в скобках указаны номера наборов, в которых функция должна принимать значение логического «0», если ФАЛ задана числовым представлением СКНФ (символ « » перед скобкой), и значение логической «1», если ФАЛ задана числовым представлением СДНФ (символ « » перед скобкой). «×» ставится в тех номерах наборов, которые указаны в скобках после «×», оставшиеся пустые клетки заполняются «1», если ФАЛ задана числовым представлением СКНФ, и «0», если ФАЛ задана числовым представлением СДНФ.

Заполнив все клетки нужными значениями, получим рабочие карты Карно, показанные на рис.2.

y1

1

 

 

 

 

y3

x2

 

 

x1

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

1

 

 

1

 

1

1

 

1

1

 

1

1

 

0

0

0

0

 

x4

0

0

 

 

0

0

1

 

 

x2

 

 

 

x3

 

0

0

1

1

1

1

1

1

1

1

1

1

 

 

 

 

 

0

1

1

 

0

1

1

 

 

1

 

0

 

 

 

 

x0

 

 

 

 

x0

 

в

x0

 

 

 

 

 

 

а

 

 

y4

 

 

 

 

 

 

 

y2

 

x1

 

 

x2

 

 

x1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

 

 

 

1

 

0

1

 

0

0

 

 

 

 

0

1

1

0

 

x4

 

1

 

 

1

1

1

 

 

x2

 

 

 

 

x3

 

0

1

1

0

0

 

1

0

0

1

1

1

 

 

 

 

 

 

 

 

 

 

0

 

1

0

0

1

1

1

 

 

 

 

x0

 

 

 

 

x0

г

 

x0

 

 

 

 

 

 

б

 

 

 

 

 

 

 

 

 

 

Рис.2. Рабочие караты Карно для функций алгебры логики:

а - y1; б - y2; в - y3, г - y4

При минимизации ФАЛ в формате ДНФ с помощью карт Карно выбираем набор покрытий (прямоугольная область, состоящая из 1, 2, 4, 8 или 16 клеток), которые покрывают все единичные клетки в карте и не покрывают ни одну клетку, содержащую логический «0». Покрытия должны иметь максимальную площадь, они также могут пересекаться. Клетки, отмеченные знаком «×», могут попадать в покрытия, а могут и остаться непокрытыми. Знак «×» находится в тех номерах наборов, в которых разработчику безразлично, какое значение примет функция: «0» или «1». После того как набор покрытий выбран (функция минимизирована), все номера

24

PDF created with pdfFactory Pro trial version www.pdffactory.com

наборов, в которых стоял знак «×», доопределились до конкретных значений логического «0» или логической «1»: если клетка, содержащая «×», попала хотя бы в одно покрытие, её значение стало логической «1», если клетка не попало ни в одно покрытие, то её значение доопределилось до логического «0».

Для минимизации функций алгебры логики выбираем покрытия, показанные на рис.3.

y1

x3

y2

x3

 

x1

 

 

y3

x2

 

 

x1

 

 

 

 

1

 

 

1

1

1

 

1

1

 

1

1

 

0

0

 

0

x4

 

0

 

 

 

 

 

 

0

x2

0

 

 

0

0

1

x3

0

0

1

1

1

1

1

1

1

1

1

1

 

 

0

1

1

0

1

1

 

 

1

 

0

 

 

 

x0

 

 

 

x0

 

 

 

x0

 

 

 

 

а

 

 

 

 

 

в

 

 

 

 

 

x1

 

 

y4

x2

 

 

x1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

1

 

0

0

 

 

 

 

0

1

1

0

x4

 

1

 

 

1

1

1

 

x2

 

 

 

x3

 

 

 

 

 

 

 

 

 

1

1

0

1

1

0

0

 

1

0

0

1

 

 

 

 

 

 

0

 

1

0

0

1

1

1

 

 

 

x0

 

 

 

x0

 

 

 

x0

 

 

 

 

б

 

 

 

 

 

г

 

 

 

 

 

Рис.3. Рабочие караты Карно с покрытиями для:

 

 

 

 

 

 

 

а - y1; б - y2; в - y3, г - y4

 

 

 

 

 

 

Минимизируя функции, получаем следующие аналитические выражения для ФАЛ y1, y2, y3, y4:

y1 = x2 × x0 + x3 × x1; y2 = x2 + x0 ;

y3 = x4 × x3 + x3 × x0 + x4 × x0; y4 = x0 + x2 × x1.

По полученным ФАЛ составим временные диаграммы работы, которые показаны на рис.4. Временные диаграммы можно составлять как по аналитическим выражениям для y1, y2, y3, y4, так и по картам Карно. Действительно, «0» или «1» в клетках карты Карно однозначно показывает значение функции в каждом из наборов. А каждая клетка, содержащая «×», доопределилась до логической «1», если попала хотя бы в одно из покрытий, либо до логического «0», если осталась непокрытой.

25

PDF created with pdfFactory Pro trial version www.pdffactory.com

Рис.4. Временные диаграммы работы функций

Реализуем схемы функций в одном схематическом файле в среде MAX+PLUS II. Для этого необходимо за-

пустить MAX+PLUS II. (Пуск Все программы MAX+PLUS II 10.0 BASELINE M AX+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+PLUS II не работает с русскими буквами в названиях папок и файлов, используйте ла-

тинские буквы и цифры. Например, путь и имя файла D:\Учёба\LAB1\s.gdf недопустимо , так как в пути файла встречаются кириллические символ ы. Кажется, что первое сохранение пустого файла не несёт большой смысловой нагрузки. Однако в дальней шем при создании схем периодическое нажатие Ctrl-S на клавиатуре будет полезным, так как оно приводит к сохранению текущей схемы в указанный файл.

Итак, перед нами чистый лист графического редактора. Для создания схемы нео ходимо устанавливать символы и соединять их цепями. Обратим внимание на то, что в среде MAX+PLUS II к омпоненты, выполняю-

26

PDF created with pdfFactory Pro trial version www.pdffactory.com

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

Таблица 1

Изображения компонентов в МАХ+PLUS II и их аналоги

Имя

Изображение

Изображение

Описание

символа

в MAX+PLUS II

в русскоязычной

 

 

 

литературе

 

 

 

 

 

 

 

 

Двух-

And2

 

 

входовый

 

 

вентиль

 

 

 

 

 

 

«И»

 

 

 

 

 

 

 

Двух-

Or2

 

 

входовый

 

 

вентиль

 

 

 

 

 

 

«ИЛИ»

 

 

 

 

xor

 

 

Сумма по

 

 

модулю 2

 

 

 

 

 

 

 

Not

 

 

«Не»

 

 

 

 

dff

 

 

D-триггер

 

 

 

 

jkff

 

 

JK-

 

 

триггер

 

 

 

 

 

 

 

Input

 

Различные варианты

Вход

 

схемы

 

 

 

 

 

 

 

Output

 

Различные варианты

Выход

 

схемы

 

 

 

 

 

 

 

В МАХ+PLUS II для задания входных переменных или цепей для выходных функций используются свои графические символы. Многоместные логические операции, имеющие n входов, можно получить с помощью указания количества входов, например вентиль «И» на 3 входа будет вызываться командой «and3», а вентиль

27

PDF created with pdfFactory Pro trial version www.pdffactory.com

«ИЛИ» на 4 входа будет иметь название «or4». В случае необходимости проинвертировать выход вентиля, перед именем ставится буква n, например имя двухвходового вентиля «ИЛИ-НЕ» будет «nor2». Для облегчения работы студентам имена наиболее часто используемых символов при создании схем в графическом редакторе указаны в табл.2.

Таблица 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» и, не отпуская её и левую кнопку мыши, перетащить символ на свободный участок.

28

PDF created with pdfFactory Pro trial version www.pdffactory.com

Рис.6. Окно для указания имени устанавливаемого компонента

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

Таблица 3

Возможные действия в МАХ+PLUS II

Действия

Описание

 

 

Двойной клик левой кнопкой мыши

Добавить символ

 

 

Ctrl+Shift+пробел

Уменьшить масштаб

схемы

 

 

 

Ctrl+пробел

Увеличить масштаб

схемы

 

 

 

Ctrl+S

Сохранить изменения

 

 

После того как на схеме установлены все символы, приступим к связям межу ними. Отметим, что в МАХ+PLUS II не обязательно тянуть линии связи между компонентами (вентилями), достаточно задать каждой цепи на входе или выходе компонента собственное имя. В дальнейшем, если несколько цепей будут иметь одинаковое имя, они считаются соединёнными между собой. В случае, когда компоненты находятся вблизи друг друга, соединять выход одного и вход другого удобно и наглядно. Если же требуется соединить два удалённых контакта и таких соединений много, то целесообразно дать таким цепям одинаковое имя для их соединений, это не позволит загромождать рисунок множествами нитей связи.

В любой схеме обязательно должны присутствовать входы (Input), количество входов должно быть столько же, сколько переменных, и выходы (output), количество выходов столько же, сколько и реализованных функций на одном проекте. Каждый вход и выход должен иметь своё имя, отличное друг от друга. Не допускается в проекте создавать несколько входов или выходов с одинаковыми именами.

29

PDF created with pdfFactory Pro trial version www.pdffactory.com

Одна из возможных реализаций схемы для полученных ранее минимизированных функций приведена на рис.7. В этой схеме используются пять входных переменных x0x4, четыре выходных функции y1y4. Для получения инверсных значений входных переменных на схеме установлены 5 инверторов, у которых входным и

выходным цепям даны название цепей. Например, для получения x0 на входе инвертора цепь названа x0, на выходе - nx0. В правой части схемы реализованы сами функции. Для подачи необходимых переменных на входы вентилей вместо соединений линиями используются названия цепей.

После того как схема нарисована, САПР необходимо её откомпилировать. В процессе компиляции могут быть обнаружены ошибки, допущенные разработчиком, например неподключенные входы у вентилей, недопустимые соединения, например соединения выходов нескольких компонентов, наличие нескольких входов или выходов с одинаковыми именами и т.д. МАХ+PLUS II является системой, которая позволяет создавать огромные проекты с иерархической структурой, состоящие из множества файлов. Поэтому перед компиляцией нужно указать САПР, что именно текущий графический файл является проектом по умолчанию. В противном случае возможна ситуация, когда САПР будет компилировать предыдущий проект. Для указания проекта по умолчанию необходимо сделать так, чтобы текущее окно отображало нарисованную схему и в этом состоянии в

панели инструментов нажать на ярлык . Другой способ выполнить это же действие через меню: File Project Set Project to Current (Ctrl-Shift-J).

Рис.7. Реализация четырёх функций алгебры логики в поле одного чертежа МАХ+PLUS II

После выполнения этих действий САПР будет знать, какой проект требуется компилировать и куда сохранять вспомогательные файлы. По умолчанию все рабочие файлы хранятся в рабочей директории МАХ+PLUS II.

Далее сохраним проект и откомпилируем его, для этого в панели инструментов надо нажать кнопку .

То же самое можно сделать через меню: File Project Save & Compile (Ctrl-L).

В случае наличия ошибок их необходимо исправить, после чего снова сохранить проект и начать компиляцию. На рис.8 показано окно программы, говорящее о том, что в схеме обнаружена одна ошибка (1 errors). Одновременно с ним появляется другое окно «Messages - Compiler» с подробным перечнем сообщений об ошибках (рис.9). Каждое сообщение сигнализирует об одной найденной ошибке. Если сделать двойной клик

30

PDF created with pdfFactory Pro trial version www.pdffactory.com