VcDDРис. 1.17. Передача данных при проверке на чётность
v.
тметим, что при наборе схемы моделирования с использованием цифровых интегральных схем (ИС) программа Multisim автоматически подключает землю и питание к соответствующим выводам компонентов (как уже отмечалось выше, данные выводы компонентов на УГО для функциональных схем не указываются). Реальный режим моделирования требует наличия символов цифровой земли и питания в рабочем окне программы.
5. Виды цифрового моделирования в Multisim 10.1
Как известно, подходы к моделированию электронных устройств различаются разной степенью отображения их свойств. Моделирование может быть функциональным, проверяющим правильность логической структуры устройства, или временным, учитывающим задержки сигналов в элементах схемы. Временное моделирование цифровых устройств в программе Multisim осуществляется с использованием осциллографов, а функциональное c помощью различных индикаторов двоичных сигналов и логических анализаторов.
Р
ис. 12. Положение управляющего ключа и фазы моделирования.
Управлять процессом моделирования в Multisim 10.1 можно либо командами меню SIMULATION (RUN - моделирование, PAUSE - приостановка процесса моделирования, STOP – завершение процесса моделирования), либо специальным ключом Simulation Switch (рис. 12), три состояния которого соответствуют указанным командам меню. Надо сказать, что после команды STOP возобновить процесс моделирования можно только с его начала, а после его приостановки – процесс моделирования можно как продолжить (щелчок ЛКМ по затемнённой панельке снимает это затемнение), так и вернуться в исходное состояние (щелчок ЛКМ по клавише переключателя).
В данной работе в основном рассматриваются вопросы функционального моделирования цифровых схем.
6. Пример 1. Функциональное моделирование мультиплексора MUX (2->1))
6.1. Технология подготовки схемы
Прежде чем создавать чертеж функциональной схемы средствами программы Multisim, необходимо на листе бумаги подготовить ее эскиз с примерным расположением компонентов и с учетом возможности оформления отдельных фрагментов в виде подсхем.
В качестве первого примера ввода схемы в рабочее окно программы выбрано исследование простой схемы одноразрядного мультиплексора MUX (2->1). Подготовленный материал по этой схеме был выполнен в формате Microsoft Word и затем перенесён в окно Description Box программы Multisim. Предварительно, в программе Multisim нужно открыть файл с помощью команды File/New/Schematic Capture c последующим сохранением имени командой File/Save as.
Рис. 13. Окно Description Box, открывающееся командой Tools/Description Box Editor
Окно Description Box (рис. 13) открывается с помощью команды Tools/Description Box Editor. При первом выполнении этой команды возможен неожиданный эффект – всё пространство окна программы может быть забито всевозможными панелями команды View/ Toolbars. Если это случилось, уберите лишние панели, с помощью указанной команды. Затем, с помощью кнопок меню редактора (обратитесь также к Multisim Help соответствующего раздела), перенесите подготовленный материал (таблицы и рисунки переносятся отдельно, полностью документ Word c рисунками и таблицами за один приём, к сожалению, не копируется).
6.2. Простейший формирователь двоичных сигналов на основе интерактивного ключа
В качестве простейшего задатчика входных двоичных сигналов можно использовать двухпозиционный интерактивный ключ Switch (расположение: Basic/Switch/Spdt), коммутирующий логические уровни «1» (H-уровень) и «0» (L-уровень). Схема включения ключа, управляемая клавишей «А», показана на рис. 14
Рис. 14. Задатчик двоичного сигнала на основе интерактивного ключа
В качестве источника H-уровня в программе Multisim используется виртуальный элемент PullUp, представляющий собой резистор (5 кΩ), подключённый к источнику 5 V (расположение: Basic/Basic_Virtual/Variable_PullUp_Virtual), а в качестве L-уровня – уровень земли (Ground). Чтобы ключ J1 приобрёл вид, изображённый на рис. 14 необходимо выполнить два дополнительных действия.
Первое, ключ после его расположение в рабочем окне с помощью браузера, надо зеркально отобразить в горизонтальной плоскости с помощью команды Edit/Flip Horizontal. Ключ называется интерактивным, так как может переключаться с помощью щелчка мыши или выбранной специально для этой цели клавиши. Кроме того интерактивный ключ является идеальным с точки зрения механизма коммутации (отсутствует дребезг контактов при переключении, свойственный реальным механическим ключам, и задержка в переключении).
Второе, задать клавишу управления ключом. Делается это следующим образом. Щёлкните ЛКМ в области ключа для его выделения, затем выполните двойной щелчок. Появится ДО свойств ключа Switch, в котором откройте закладку Value. Раскройте ниспадающее меню Key for Switch и выберете клавишу управления (по умолчанию этой клавишей является Space).
Для контроля за работой схемы формирования двоичного сигнала воспользуемся виртуальным логическим пробником Probe_Dig_Red из группы Indicators /Probe /Probe_Dig_Red. Обратите внимание на запись 2,5 v около логического пробника Х1: это пороговое значение напряжения. Пробник не будет светиться, если напряжение на нём меньше порогового, и засветится – при превышении этого уровня. Пробник не потребляет тока, следовательно, не нужно беспокоиться о его воздействии на схему.
6.3. Размещение компонентов схемы
Процесс ввода схемы в рабочее окно программы Multisim начинается с размещения компонентов из библиотеки программы в соответствие с подготовленным эскизом (рис. 13).
1. Размещение логических компонентов из группы TTL.
Вызовем браузер размещения и произведём выбор (рис. 15,а): группа TTL, серия 74STD, компонент 7408N (2 Input AND). Нажмём на кнопку ОК, что приведёт к появлению транспаранта с перечнем секций данного компонента, из которого выберем первую («А»). После этого на кончике курсору вы увидите изображение секции компонента (логического конъюнктора), установите курсор в нужном месте рабочего поля и щёлкните ЛКМ. Всё, одна секция установлена. Однако это снова приведёт к появлению транспаранта с перечнем секций компонента. Повторим вышеуказанные действия по установке следующей секции с обозначением «В» (рис. 15,б). Поскольку необходимости в использовании других секций данного компонента для схемы мультиплексора больше нет, нажмём на копку Cancel.
а)
б)
Рис. 15. Процедура использования браузера базы данных для выбора и размещения секций компонента 7408N.
Заметим здесь, что данная особенность размещения секций компонента определена опцией Continuous placement for multi-section part only на закладке Parts диалогового окна Preferences, вызываемого командой Options/Global Preferences! Если вам это процедура не нравится – снимите действие этой опции.
Далее последовательно разместим из этой же серии по одной секции из компонентов 7432N (2 Input OR) и 7404 (Inverter).
2. Размещение компонентов схемы формирования двоичных сигналов и устройств визуальной регистрации. Выберем три двухпозиционных интерактивных ключа Switch (расположение: Basic/Switch/Spdt), виртуальный элемент PullUp как источник H-уровня (расположение: Basic/Basic_Virtual/Variable_PullUp_Virtual) и символ земли (Ground) как источник L-уровня.
Рис. 16. Компоненты схемы для исследования MUX (2->1)
Для контроля за работой мультиплексора MUX (2->1) воспользуемся виртуальным логическим пробником Probe_Dig_Red из группы Indicators/Probe/Probe_Dig_Red.
На рис. 16 показано рабочее окно ввода схемы с размещёнными компонентами. Прежде чем перейти к выполнению соединений компонентов проводниками необходимо произвести зеркальное отображение двухпозиционных интерактивных ключей в горизонтальной плоскости с помощью команды Edit/Flip Horizontal.
6.4. «Разводка» схемы, ввод необходимых обозначений и пояснительных надписей
Выполнив соединение входов и выходов компонентов с помощью проводников в соответствие со схемой Mux 2-1-Description (рис. 13), получим схему имитационной модели мультиплексора, изображённой на рис. 17. Как видно из рис. 17, в данной схеме дополнительно произведено переназначение клавиш для управления ключами, а также введено имя H_Level для цепи, соединённой с источником высокого уровня PullUp (уровень логической «1»). Сделать это можно так. Щёлкните ЛКМ по сегменту проводника для его выделения, затем выполните двойной щелчок. Появится ДО цепи Net в поле с опцией Net Name, в которое и нужно ввести и соответствующее имя. Кроме того, с помощью команды Place Schematic/Text в схему для удобства исследования введены дополнительные текстовые обозначения и таблица функционирования мультиплексора (таблицу можно было бы не вводить, но сделано это для удобства моделирования).
Рис. 17. Схема исследования работы MUX (2->1) в окне программы Multisim
Подготовка схемы мультиплексора MUX (2->1) для исследования её логического функционирования можно считать завершенной.
6.5. Моделированию схемы мультиплексора MUX (2->1))
Схема мультиплексора относится к классу комбинационных схем, для которых выходной(ые) сигнал(ы) в любой момент времени однозначно определяется входными сигналами в этот же момент времени, поэтому проверка правильности логического функционирования модели MUX (2->1) осуществляется на предмет её соответствия таблице истинности. Для этого (при включённом режиме моделирования) с помощью интерактивных ключей J1, J2 и J3 задают входные двоичных сигналы, моделирующие переменные D0, D1 и Addr, а цифровым пробником X1 (светится –«1», не светится –«0») – фиксируют значение выходного сигнал F. В принципе, этими пробниками можно было бы индицировать и задание входных уровней напряжения ключами J1, J2 и J3, однако в этом нет необходимости, так как эту функцию наглядно выполняют состояния ключей.
Функциональное моделирование комбинационных схем, в своей практической реализации, значительно проще временного моделирования для этого же класса схем. Указанные виды моделирования усложняются в классе цифровых автоматов с памятью.
7. Формирователи и регистраторы двоичных сигналов
7.1. Генератор слова Word Generator и семисегментный индикатор 16-теричных символов DCD_Hex
Д
ля начала соберём схему, показанную на рис. 18. Схема содержит уже запрограммированный генератор слова Word Generator (XWG1), семисегментный индикатор 16-теричных цифр DCD_Hex и логические пробники X1, … X4. Генератор слова XWG находится на панели инструментов Instruments, откуда снимается щелчком ЛКМ и позиционируется в рабочем окне также щелчком мыши. Генератор слов (лицевая панель генератора открывается двойным щелчком ЛКМ) предназначен для генерации 1024-х 32-разрядных двоичных слов, которые набираются пользователем на экране, расположенном в правой части лицевой панели. Каждый разряд формируется отдельным выходом или каналом, пронумерованными цифрами от 0 до 31. Выход любого канала является независимым от других каналов.
Рис. 18. Схема моделирования работы Word Generator XWG1
Чтобы каналы с номерами 0 – 15 были бы обращены в сторону исследуемой схемы, разверните его командой Edit/Flip Horizontal.
Компонент DCD_Hex представляет собой индикатор с 7 сегментами. Это позволяет подать на его 4 входа двоичный код от 0000 до 1111 (младшая 16-теричная цифра, формируемая каналами 0 – 3 генератора слова), а на буквенно-цифровом дисплее получить 16-теричный эквивалент от 0 до F. Система преобразования двоичного кода 8-4-2-1 в семисегментный (табл. 3) встроена в компонент. Для наглядности, работа семисегментного индикатора контролируется логическими пробниками.
Чтобы начать процесс моделирования работы Word Generator, его надо запрограммировать на выдачу указанной последовательности двоичных комбинаций.
Существует два способа набора кодовых комбинаций.
-
Ручной режим. Выделяется нужная кодовая комбинация, в которой с помощью клавиатуры можно набрать произвольное 8-разрядное 16-теричное число (кнопка Hex в окне Display) или 32-разрядное двоичное (кнопка Binary). Использование десятичных - и ASCII- чисел для нас не будут представлять практического интереса.
Преобразование двоичного кода
8-4-2-1 в семисегментный код. Таблица 3
16-теричная цифра
|
Код
8-4-2-1
|
7-сегментный выход
|
7 6 5 4 - 3 2 1 0
|
0
|
0000
|
0 0 1 1 - 1 1 1 1
|
1
|
0001
|
0 0 0 0 - 0 1 1 0
|
2
|
0010
|
0 1 0 1 - 1 0 1 1
|
3
|
0011
|
0 1 0 0 - 1 1 1 1
|
4
|
0100
|
0 1 1 0 - 0 1 1 0
|
5
|
0101
|
0 1 1 0 – 1 1 0 1
|
6
|
0110
|
0 1 1 1 – 1 1 0 1
|
7
|
0111
|
0 0 0 0 – 0 1 1 1
|
8
|
1000
|
0 1 1 1 – 1 1 1 1
|
9
|
1001
|
0 1 1 0 – 1 1 1 1
|
A
|
1010
|
0 1 1 1 – 0 1 1 1
|
b
|
1011
|
0 1 1 1 – 1 1 0 0
|
С
|
1100
|
0 0 1 1 – 1 0 0 1
|
D
|
1101
|
0 1 0 1 – 1 1 1 0
|
E
|
1110
|
0 1 1 1 – 1 0 0 1
|
F
|
1111
|
0 1 1 1 – 0 0 0 1
|
|