Министерство образования Российской Федерации НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ __________________________________________________________________ В.А. АФАНАСЬЕВ MultiSim 10.1: – быстрый старт Новосибирск 2010 1 MultiSim 10.1: – быстрый старт Оглавление 1. Введение 2. Настройка программы MultiSim 10.1 для моделирования цифровых схем 2.1. Главное окно программы 2.2. Установка главных преференций для проектов в Multisim 2.3. Характеристики проекта для вновь открываемой схемы 3. Структура и характеристика элементной базы Multisim 10.1 3.1. Структура элементной базы 3.2. Виртуальные и реальные компоненты в базе данных Multisim10.1 3.3. Характеристика групп цифровых компонентов TTL - и CMOS –логики 4. Размещение проводников, символов “земли” и источников питания 5. Виды цифрового моделирования в Multisim 10.1 6. Пример 1. Функциональное моделирование мультиплексора MUX (2->1) 6.1. Технология подготовки схемы 6.2. Простейший формирователь двоичных сигналов на основе интерактивного ключа 6.3. Размещение компонентов схемы 6.4. «Разводка» схемы, ввод необходимых обозначений и пояснительных надписей 6.5. Моделированию схемы мультиплексора MUX (2->1)) 7. Формирователи и регистраторы двоичных сигналов 7.1. Генератор слова XWG и семисегментный индикатор 16-теричных символов DCD_Hex 7.2. Регистрация работы генератора слова XWG логическим анализатором XLA 8. Пример 2. Функциональное моделирование комбинационной схемы 4-битного сумматора 8.1. Синтез схемы сумматора в заданном логическом базисе 8.2. Понятие об иерархическом проектировании электронных схем. Создание подсхем 8.2.1. Создание подсхемы полусумматора HS способом «сверху - вниз» 8.2.2. Создание подсхемы одноразрядного сумматора SM способом «снизу - вверх» 8.3. Создание схемы моделирования 4-х битного сумматора с последовательным переносом с использование шинной организации 8.4. Проверка правил электрического проектирования схемы сумматора 8.5.Моделирование (логическое тестирование) схемы 8.6. Спецификация схемы сумматора 9. Проверка правильности выполнения электрической соединений в проектах программы Multisim 10.1 10. Пример 3. Временное моделирование (или исследование времени задержки переключения JK триггера) 11. Графический самописец (дисплей) Grapher 12. Пример 4. Создание проекта моделирования канала передачи данных с контролем по mod 2 12.1. Постановка задачи 12.2. Особенности реализации проекта в программе Multisim 10.1 12.3. Создание проекта моделирования ■ Открытие проекта ■ Открытие файла моделирования и отображение его в менеджере проекта ■ Создание иерархического блока для схемы свёртки по mod 2 ■ Коррекция структуры менеджера проекта ■ Создание схемы замещения иерархического блока ■ Построение схемы моделирования канала передачи данных с контролем по mod 2 ■ Функциональное моделирование канала передачи данных 13. Литература 2 3 3 3 5 5 7 7 8 10 11 12 13 13 13 14 16 16 17 17 19 21 21 23 24 26 27 28 29 30 30 33 35 38 38 38 38 38 39 40 40 41 42 42 43 1. Введение Разработка любого цифрового устройства сопровождается физическим или математическим моделированием. Физическое моделирование связано с большими материальными затратами, поскольку требуется изготовление макетов и их трудоемкое исследование. Часто физическое моделирование просто невозможно из-за чрезвычайной сложности устройства, например, при разработке больших и сверхбольших интегральных микросхем. В этом случае прибегают к математическому моделированию с использованием компьютерных программ. В настоящее время разработано много подобных программ, использующих в качестве системного ядра программу SPICE -Simulation Program for Integrated Circuits Emphases (программа моделирования с ориентацией на интегральные схемы - разработка учёных университета Беркли, США), либо модели цифровых устройств на основе языков HDL (Hardware Description Languages) низкого (Altera HDL) и высокого уровней (VHDL –Very high speed integrated circuits HDL). Составленные на входном языке Spice, математические модели компонентов схемотехнических устройств с высокой степенью достоверности соответствуют реальным элементам и используются в ряде подобных программ моделирования, так, например, HSpice (фирма MetaSoftware), PSpice (фирма MicroSim), Dr.Spice и ViewSpice (фирма Deutsch Research), Micro-Cap (фирма Spectrum Software), Spice3F5 и XSpice (фирмы National Instruments, сегодняшнего собственника программного продукта MultiSim 10.1). MultiSim (первая версия 6.02) является наследником знаменитого продукта Electronics Workbench 5.12 (особенно в академической среде) и представляет пакет программ для моделирования электронных схем и, при необходимости, последующей разводки печатных плат. Версия пакета MultiSim 10.1 дополнена новыми средствами профессиональной разработки, в том числе инструментами моделирования, расширенной и улучшенной базой элементов, а также средствами совместной работы над проектом. Пользователь программы MultiSim 10.1 не должен быть экспертом по программам SPICE, так как пользуется интуитивно понятной средой имитационного моделирования, гарантирующего высокое качество имитаций. Подробные руководства по использованию программы Multisim (предыдущих версий) для компьютерного моделирования электронных устройств широкого назначения изложены в монографиях [1 и 2]. 2. Настройка программы MultiSim 10.1 для моделирования цифровых схем 2.1. Главное окно программы Запустив программу и дождавшись её полной загрузки, вы увидите окно, отображённое на рис. 1 (здесь красным цветом выделены главные части окна): 1. Главное меню программы (содержит команды для всех функций программы). 2. Стандартная панель, включающая общеупотребительные иконки в прикладных Windows-программах (View/Toolbars/Standard). 3. Панель управления Main (View/Toolbars/Main). Данная панель содержит кнопки для общих (основных) функций программы Multisim, а также окно In Use List, в котором содержится список всех компонентов, используемых в проекте. 4. Панель библиотек компонентов(View/Toolbars/Components). 5. Ключ симуляции (View/Toolbars/Simulation Switch), реализующий все режимы моделирования. 6. Панель (менеджер) проекта (View/Design Toolbox). Показывает иерархическую структуру схем и проектов. 7. Рабочая область ввода схемы (*Circuit) для симуляции вместе с панелью приборов (Instruments), использующихся как для задания входных сигналов, так и визуализации результатов симуляции. 8. Электронная таблица просмотра (Spreadsheet View), редактирования параметров схемных компонентов и их обозначений (RefDes), а также просмотра результатов моделирования. 3 Рис. 1. Окно программы MultiSim 10.1 Для того, чтобы окно программы выглядело как на рис. 1, выполните команду меню View/Toolbars и установите опции, указанные на рис. 2. Рис. 2. Опции команды View/Toolbars, определяющие вид окна программы Multisim 10.1 на рис.1 2.2. Установка главных преференций для проектов в Multisim 4 Основополагающие опции устанавливаются командой Options/Global preferences в диалоговом окне Preferences (рис. 3, а). Рис. 3, а. Закладка Paths, определяющая местоположение создаваемых файлов проектов, конфигурационного файла и базы данных программы Multisim 10.1 Пути, прописанные на закладке Paths, устанавливаются при инсталляции программы и менять их не рекомендуется. Рис. 3, б. Закладка Parts, определяющая особенность размещения многосекционных компонентов и используемого стандарта (ANSI) для условных обозначений Опция Continuous placement for multi-section part only определяет непрерывное размещение секций выбранного компонента (интегральной схемы) пока вы не нажмёте клавишу [Esc]. Ознакомьтесь с опциями на закладках Save и General и оставьте их установленными по умолчанию. 2.3. Характеристики проекта для вновь открываемой схемы Проявляют себя во вновь создаваемых проектах. Устанавливает наиболее важные особенности отображения параметров компонентов схемы, формата листа, толщину соединительных линий и шин, размер шрифта. Закладка Circuit (рис. 4) устанавливает опции по режиму вывода на экран элементов схемы, а также их цветовое оформление: с черным фоном (Black Background), белым (White Background), черно-белым изображением (Black/White) или наоборот (White/Black). В пользовательском режиме Custom выбираются нужные цвета для фона (кнопка Background), границ выделения компонентов схемы (Selection), проводников (кнопка Wire), компонентов 5 схемы (Component with model) и (идеальных) компонентов (кнопки Active component, Passive component, Virtual component соответственно); после нажатия каждой кнопки вызывается стандартное окно цветовой палитры Windows. Заметим, что при невыбранной опции Adjust Component Identifiers невозможно будет изменить при упорядочивании схемы идентификационный номер однотипных компонентов, который присваивается программой автоматически в порядке их установки, а не местоположения на схеме. Рис. 4. Закладка Circuit. Верхняя панель окна указывает на то, какая информация должна отображаться около каждого компонента схемы, нижняя – на используемую цветовую гамму Рис. 5. Закладка Workspace. Устанавливает видимость узлов сетки изображения, альбомный формат листа и единицы измерения в дюймах 6 Рис. 6. Закладка Wiring. Оставим установленные по умолчанию толщины линий и шин Рис. 7. Закладка Font. В каждом отдельном случае уточняйте действия опций из окна Change All 3. Структура и характеристика элементной базы Multisim 10.1 3.1. Структура элементной базы Структура элементной базы Multisim имеет три уровня иерархии: база (Master Database, Corporate Database, User Database), группа (Group), серия (Family). Данные уровни легко просматриваются при работе с браузером выбора и размещения компонентов Select a Component, вызываемого командой меню Place/Component. База данных Master Database доступна только для чтения и определена собственником программы National Instruments, User Database – включает компоненты, созданные пользователем программы, Corporate Database – корпоративная или ведомственная база данных, как правило, включает «заказные» компоненты для моделирования специальных схем. Группы компонентов представлены панелью компонентов (см. рис. 1 и рис. 8). Рис. 8. Группы стандартных компонентов программы 7 Каждая группа содержит семейство (Family) связанных компонентов: 1. Sources – различного рода источники напряжения (двухфазные, трехфазные) и тока, однополярные источники напряжения и тока произвольной формы, цифровая и аналоговые земли и др. 2. Basic - резисторы, конденсаторы, переменные резисторы и конденсаторы, катушки индуктивности, реле, набор промышленных разъемов и сокетов (socket) для полупроводниковых приборов и микросхем. 3. Diodes - диоды, светодиоды, диодные мосты, стабилитроны и др. 4. Transistors – разнообразные виды транзисторов. 5. Analog - аналоговые микросхемы: операционные усилители, компараторы напряжения, микросхемы для систем фазовой автоподстройки частоты и др. 6. TTL (транзисторно-транзисторные логические схемы) - микросхемы семейств: 74STD, 74S, 74LS, 74F, 74ALS, 74AS. 7. CMOS – Микросхемы семейств CMOS, 74HC, TinyLogic. 8. Misc (Miscellaneous - разнообразный) Digital – виртуальные цифровые схемы, элементы памяти, VHDL-модели цифровых схем. 9. Mixed (смешанный) - микросхемы смешанного типа. В раздел входят АЦП, ЦАП, мультивибраторы, интегральные таймеры, аналоговые ключи и др. 10. Power – стабилизированные источники питания, прецизионные опорные напряжения, шунты и плавкие вставки и др. 11. Indicators - раздел содержит амперметры и вольтметры с цифровым отсчетом, одиночные и многосегментные светоиндикаторы, наборы из автономных светодиодов (столбиковые индикаторы Bargraph Display) и др. 12. Misc (Miscellaneous) - кварцевый резонаторы и специальные компоненты смешанного типа. 13. 14. Advanced Peripheral – клавиатурные терминалы и др. RF (Radio Frequency) - содержит модели СВЧ – компонентов. 15. Electro-mechanical – набор большого количества моделей электромеханических элементов (сенсорные ключи, инерциальные ключи, многополюсные переключатели, элементы электропривода и др.). 16. MCU (Microcontroller`s Unit) – микропроцессорный набор на основе 8051(2). В практике цифрового моделирования по курсу «Теория автоматов» будет использоваться ограниченное число элементов базы компонентов Multisim, в основном это касается групп с номерами 1,2, 6 -11. Следует также отметить, что щелчок ЛКМ по любой кнопке панели компонентов рис. 8 вызовет появление браузера выбора и размещения компонентов этой группы. 3.2. Виртуальные и реальные компоненты в базе данных Multisim10.1 Строго говоря, все схемотехнические компоненты являются виртуальными, поскольку при моделировании представлены своими математическими моделями, однако имеются различия как в моделях (одни учитывают временные задержки распространения сигналов, другие – нет; Spice-модели или VHDL-модели), так и в их привязке к некоторым конструктивным параметрам, в частности, к корпусам. Последнее обстоятельство является необходимым 8 условием при реализации сквозного проектирования проекта, оканчивающегося разводкой печатной платы создаваемой схемы. На рис. 9 а) и б) представлены диалоговые окна Select a Component браузера выбора виртуального и реального компонентов применительно логическим элементам TTL- логики. Рис. 9, а. Выбор виртуального компонента NAND2, группы Misc Digital, семейства TTL Рис. 9, б. Выбор реального компонента 7400 (2-Input NAND), группы TTL, семейства (серии) 74STD Рис. 10. Изображение реального и виртуального компонента на рабочем поле Реальный и виртуальный компоненты имеют различное цветовое изображение на рабочем поле Circuit, реальный компонент – синий цвет, виртуальный – чёрный! Подробную информацию о данных компонентах можно получить, раскрыв закладку Detail Report в диалоговых окнах Select a Component. Главными признаками, отличающими ре9 альный компонент от виртуального, считаются: наличие привязки компонента к реальному корпусу (Footprint – отпечаток корпуса на печатной плате), упаковочной информации для этого корпуса (количество элементов или секций в одном корпусе – Package type) и наличие изготовителя (manufacturer). Как правило, в графе «Имя изготовителя» для виртуального элемента указано - «Generic», т, е, непатентованный. Библиотека виртуальных компонентов Multisim 10.1 включает также компоненты с предельными параметрами (Rated components), входящие в группу Basic/Rated_virtual. При моделировании для данных компонентов можно вводить предельные параметры, превышение которых приводит к повреждению компонента. В качестве таких параметров используется обычно ограничение по мощности, напряжению, максимальному коллекторному току транзистора и т. д. 3.3. Характеристика групп цифровых компонентов TTL - и CMOS –логики Основными компонентами цифровых схем являются элементы 2-х групп: TTL и CMOS. Группа TTL включает следующие серии: – 74STD(STD_IC), – 74S(S_IC), – 74LS(LS_IC), – 74F, – 74ALS, – 74AS. Ввод компонента в рабочее поле программы осуществляется в соответствие с национальными или международными стандартами на их графическое изображение для принципиальных или функциональных схем. При этом условное графическое обозначение (УГО) компонента без маркера IC, относится всегда к одной секции компонента (правда она для данного корпуса может быть единственной) и используется при начертании функциональных схем. Дополнительный маркер IC относится не к технологической особенности серии, а к форме изображения компонента на рабочем поле программы Multisim 10.1. УГО компонентов с маркером IC представляет собой графический отпечаток корпуса (Footprint) с выводами (включая контакты для питания и заземления), в котором может находиться одна или более секций (одна секция - один логический элемент). Такое представление компонента соответствует требованиям принципиальной схемы. В лабораторном практикуме будут использоваться УГО для функциональных схем. Основные характеристики компонентов указанных серий приведены в нижеследующей табл. 1. ИС технологии TTL (Transistor-Transistor Logic, 74 – коммерческое применение, 54 – военное) Таблица 1 Энергия переключения Пикоджоули = мвт*нс 0,1 – 10 МГц 10 6 33 Статическая мощность (вентиль, мвт) 10 22 1 1533 3 9 1,7 4 19 2 8 1,2 57 19 33 4 1531 3 4 8 Тип Отечественный аналог 74 74H 74L 155 131 158 531 555 74S LS AS ALS 74F Быстродействие (задержка на вентиль в нc) 100 132 33 Примечание. S –Schottky TTL (TTL схемы с транзистором Шоттки), LS – Low power Schotky TTL(маломощные), AS – Advanced Schottky TTL (улучшенные), ALS – улучшен10 ные маломощные, F – Fast TTL (быстрые TTL, разработка фирмы Fairchild), H – High Speed – быстродействующие, L – Low Power (маломощные TTL). Группа CMOS (цифровые схемы на комплементарных МОП - транзисторах) включает следующие серии: – CMOS_5v (10v, 15v), – 74HC_2v (4v, 6v), – Tinylogic_2v (3v, … 6v). Серии CMOS на сегодняшний день являются устаревшими и в практической разработке схем не используются, характеристики КМОП для 74-серий приведены в табл. 2. ИС технологии КМОП для 74-серий. Тип Отечественный аналог 74HC 74HCT 74AC, (ACT VHC, VHCT) 74FCT FCT-T 1564 Таблица 2 Быстродействие (задержка на вентиль в нc) 9 10 5–7 Статическая мощность (вентиль, мвт) 0,0125 0,025 *)Применяется только для СИС и БИС Энергия переключения Пикоджоули = мвт*нс 0,1 – 10 МГц 0,61 – 50 0,5 – 38 0,38 – 25 0.77 – 24 Примерно такое же, как и в предыдущей группе Примечание. MOS – (Metal Oxide Semiconductor), C – CMOS (complementary MOS), H – high (высокий), A – advanced (усовершенствованный), Т – совместимый с TTL – уровнями, VH – Very High Speed (повышенное быстродействие), FCT – фирма Fairchild (сверхбыстродействующая совместимая с TTL), FCT-T – улучшенная по совместимости с TTL. 4. Размещение проводников, символов “земли” и источников питания Размещение проводников После размещения компонентов производится соединение их выводов проводниками. Чтобы усвоить технику прокладки проводников, разместите с помощью браузера в рабочем окне программы несколько компонентов TTL-логики. Для выполнения подключения курсор мыши подводим к выводу компонента и, после появлении кружка чёрного цвета с перекрестием, щёлкаем ЛКМ. Появляющийся при этом проводник, протягивается к выводу другого компонента до момента, когда чёрный кружок как бы окрашивается голубым цветом, после чего снова щёлкаем ЛКМ – соединение готово. Multisim автоматически проложит провод, который ляжет в удобной форме. При этом необходимо учитывать, что к выводу (pin) компонента можно подключить только один проводник. Вы сможете контролировать форму укладки соединительной линии, щёлкая ЛКМ в местах, в которых вы хотите “зафиксировать” провод. Вообще-то, если вы хотите воспользоваться всеми возможностями программы при работе с проводниками, установить все опции раздела Wiring на закладке General в ДО Preferences, вызываемого командой Options/Global Preferences. Ещё одним важным элементом соединения в схеме является точка соединения (junction). Она обозначается жирной точкой на поле ввода. Точка или узел соединения существует для того, чтобы соединить в одном месте три и более проводника. Размещается точка соединения (на уже существующем проводнике или на свободном месте рабочего окна) щелчком ЛКМ двумя способами: командой основного меню Place/junction или командой Place Schematic/junction pop-up меню. Если при прокладке проводника требуется выполнить соединение на уже существующем проводнике, то нужно просто щёлкнуть в этом месте ЛКМ (если на пересечении двух проводников нет узла, это означает, что проводники физически не пересекаются). 11 Если есть необходимость выводы компонента дополнить проводниками, заканчивающимися точкой соединения, то нужно произвести двойной щелчок ЛКМ и протянуть курсор к выводу компонента. Кстати, таким же образом можно в пространстве схемы расположить произвольное число проводников, оканчивающихся точкой соединения. Если нужно пересоединить проводник с одного вывода компонента на другой, подведите курсор к этому выводу, это вызовет появлении специфического маркёра (крест в виде буквы Х с жирным хвостиком, расположенном на проводнике). Нажмите левую кнопку мыши (крест пропадёт, а проводник окрасится в голубой цвет) и, не отпуская её, перетащите проводник на другой вывод компонента, отпустите кнопку и щёлкните ЛКМ. При необходимости переместить отдельный сегмент проводника нужно подвести к нему курсор, нажать левую кнопку мыши и, после появления в вертикальной или горизонтальной плоскости двойного курсора, произвести нужные перемещения. Размещение символов “земли” и источников питания В программе Multisim имеется два символа земли: аналоговая или земля общего типа и цифровая земля . Земля общего типа используется во всех случаях моделирования, за исключением моделирования цифровых устройств в реальном режиме. Тип моделирования устанавливается с помощью диалогового окна Digital Simulation Settings, вызываемого командой меню Simulate/Digital Simulation Settings. Установим режим Ideal (faster simulation). В программе Multisim 10.1 имеются 4 вида источников питания (группа Sources/ Power_sources): Vcc, Vdd, Vee, Vss. В принципе, для питания электронных схем может быть использован любой из данных компонентов, надо только устанавливать нужный уровень напряжения (см. рис. 11). Однако, рекомендуется следующее правило использования: – Vcc – питание компонентов TTL, – Vdd и Vss – питания компонентов CMOS – Vee –питание в цифровых схемах общего назначения. Отметим, что при наборе схемы моделирования с использованием цифровых интегральных схем (ИС) программа Multisim автоматически подключает землю и питание к соответствующим выводам компонентов (как уже отмечалось выше, данные выводы компонентов на УГО для функциональных схем не указываются). Реальный режим моделирования требует наличия символов цифровой земли и питания в рабочем окне программы. 5. Виды цифрового моделирования в Multisim 10.1 Как известно, подходы к моделированию электронных устройств различаются разной степенью отображения их свойств. Моделирование может быть функциональным, проверяющим правильность логической структуры устройства, или временным, учитывающим задержки сигналов в элементах схемы. Рис. 11. Установка величины напряжения Временное моделирование цифровых источника устройств в программе Multisim осуществляется с использованием осциллографов, а функциональное c помощью различных инVcDDРис. 1.17. Передача данных при продикаторов двоичных сигналов и логических анализаторов. верке на чётность 12 v. Рис. 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 13 Окно 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). Нажмём на кнопку ОК, что приведёт к появлению транспаранта с перечнем секций данного компонента, из которого выберем первую («А»). После этого на кончике курсору вы увидите изображение секции компонента (логического конъюнктора), установите курсор в нужном месте рабочего поля и щёлкните ЛКМ. Всё, одна сек14 ция установлена. Однако это снова приведёт к появлению транспаранта с перечнем секций компонента. Повторим вышеуказанные действия по установке следующей секции с обозначением «В» (рис. 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_Pull Up_Virtual) и символ земли (Ground) как источник L-уровня. Рис. 16. Компоненты схемы для исследования MUX (2->1) 15 Для контроля за работой мультиплексора 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. В принципе, этими пробниками можно было бы индицировать и задание входных 16 уровней напряжения ключами 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, его надо запрограммировать на выдачу указанной последовательности двоичных комбинаций. Существует два способа набора кодовых комбинаций. 1. Ручной режим. Выделяется нужная кодовая комбинация, в которой с помощью клавиатуры можно набрать произвольное 8-разрядное 16-теричное число (кнопка Hex в окне Display) или 32-разрядное двоичное (кнопка Binary). Использование десятичных - и ASCII- чисел для нас не будут представлять практического интереса. 17 Преобразование двоичного кода 8-4-2-1 в семисегментный код. Таблица 3 2. Автоматический режим. Например, создадим нужную нам возрастающую двоичную последовательность для демонстрации работы 0 0000 0011-1111 схемы. Нажмём на кнопку Set. Откроется ДО 1 0001 0000-0110 Settings (рис.19), в котором выберем опцию 2 0010 0101-1011 Up Counter и нажмём кнопку Accept. 3 0011 0100-1111 Другие виды автоматического набора ко4 0100 0110-0110 довых последовательностей изложены в снос5 0101 0110–1101 1 ке к рис. 19. 6 0110 0111–1101 7 0111 0000–0111 Далее сообщим генератору XWG1 где 8 1000 0111–1111 находятся начальная (комбинация 0000=0h) и 9 1001 0110–1111 конечная ячейки (1111= 0Fh) памяти среди A 1010 0111–0111 установленных 0400h ячеек. Дело в том, что b 1011 0111–1100 моделирование начинается с генерирования С 1100 0011–1001 начальной комбинации и заканчивается - коD 1101 0101–1110 E 1110 0111–1001 нечной. Для этого на панели Word F 1111 0111–0001 Generator-XWG1 установим курсор на последовательность 0000 0000h (0h – для задействованных каналов), выделим её щелчком ЛКМ и, вызвав всплывающее меню, выполним команду Set Cursor. Далее найдём комбинацию 0000 000Fh (Fh - для задействованных каналов), выделим её и выполним для неё команду Set Final Position. Обратите внимание на индикаторы (стилизованные стрелки), отражающие начальную и конечную комбинации генерируемых комбинаций. Запрограммировав Word Generator, надо выбрать режим его работы. Режим Cycle (Цикл) обозначает, что генератор будет Рис. 19. Панель автоматической установки циклически выводить запрограммированкодовых комбинаций Word ную последовательность, пока не будет остановлено моделирование. В режиме Burst (пакет) цикл будет выполнен один раз. В режиме Step (шаг) будет выведено содержимое одной ячейки, после чего моделирование будет остановлено (пошаговой режим). Если в процессе программирования генератора, щёлкнуть по ячейки правой кнопкой мыши, установив опцию Set Breakpoint, то данная ячейка будет настроена как точка прерывания. Word Generator остановится в этой точке в режимах Cycle и Burst. Для удаления точки прерывания выполните опцию Delete Breakpoint. Во время моделирования курсор в окне Word Generator указывает на текущую ячейку. Процесс моделирования включает следующие шаги: 1. Курсором выделим начальную комбинацию и установим опцию Set Cursor. 16-теричная цифра Код 8-4-2-1 7-сегментный выход 7654-3210 Шаблоны настроек Preset Patterns: Load – загрузить кодовые комбинации из файла с расширением .DP Save – сохранить набор кодовых комбинаций в файле с расширением .DP Clear buffer – очистить содержимое всех ячеек Up counter – возрастающая последовательность чисел от 0 (начальная комбинация) до 3FFh (конечная) Down counter- убывающая последовательность чисел от 400h (начальная комбинация) до 1 (конечная) Shift right –бегущая 1 с позиции старшего канала в младший. Shift left- бегущая 1 с позиции младшего канала в старший. 1 18 2. Выберем кнопку с режимом моделирования (Cycle, Burst, Step), щёлкнув по ней мышью. Реализация П.2 автоматически установит переключатель Simulation Switch (рис. 12) в режим моделирования, пока не окончится генерация слов, предусмотренная выбранным вами режимом моделирования. По окончанию режима моделирования (кроме режима Cycle) переключатель Simulation Switch установится в состояние Pause. Для продолжения моделирования снова щёлкните по соответствующей кнопке в окне Word Generator-XWG1. Остановить циклический режим моделирования можно только переключателем Simulation Switch, установив его в исходное состояние. В заключение рассмотри другие органы управления устройства Word Generator, не востребованные в ходе данной демонстрации. 1. Частота посылок слов в циклическом и пакетном режимах устанавливается с помощью кнопок в окне Frequency. 2. Асинхронное управление цифрового устройства с квитированием. Сигнал Data Ready на клемме «R» сопровождает каждую выдаваемую на выход генератором слова кодовую комбинацию и используется в том случае, когда исследуемое устройство обладает свойством квитирования (подтверждения). В этом случае, после получения очередной кодовой комбинации и сопровождающего его сигнала Data Ready, исследуемое устройство должно выдать сигнал подтверждения получения данных, который подается на вход синхронизации генератора слова (клемма «Т» - Trigger) и произведёт очередной его запуск. Сигнал Data Ready с клеммы «R» может быть использован и как обычный синхронизирующий сигнал в системах без квитирования (будет рассмотрено в следующем параграфе). 7.2. Регистрация работы генератора слова Word Generator логическим анализатором Logic Analyser Цель данного параграфа - научиться пользоваться 16-канальным устройством регистрации двоичных сигналов во времени Logic Analyser. Для этого была собрана в рабочем окне программы Multisim схема, показанная на рис. 20. Как и ранее в П.11.1, генератор слова Word Generator- XWG1 настроен на выдачу по 4-м младшим каналам кодовой последовательности от 0h до 0Fh, которая подаётся на первые 4 входа (канала) логического анализатора Logic Analyser. Дополнительно, сигнал готовности Data Ready (клемма «R») заведён на 6 канал. На лицевой панели Logic Analyser номер канала N указывается обозначением Tem N, а имя временной диаграммы, изображённой на данном канале, синонимично имени электрической цепи, порядковый номер которой вводится программой автоматически при прокладке цепи. Впрочем, имя цепи можно переназначить, если необходимо подчеркнуть функциональную нагрузку цепи. Сейчас делать это мы не будем. Рассмотрим внимательно временные диаграммы на экране анализатора Logic Analyser (рис. 21), а также панель настройки синхронизации Clock Setup (надо щёлкнуть по кнопке Set панели Clock – таймер). Анализатор Logic Analyser может работать в 2-х режимах синхронизации: внутренняя синхронизация (именно она сейчас установлена - кнопка Internal) и внешняя синхронизация (кнопка External). ■ При внутренней синхронизации таймер Clock Rate в каждом цикле задаёт частоту выборки входных сигналов и отображает их на экране. Даже если входные значения изменятся – значения на экране сохраняться до следующего цикла. Это значит, что частота выборки должна намного превышать частоту изменения входного сигнала. В нашем случае частота выборки составляет 16 кГц (kHz), что в 16 раз больше частоты генерации кодовых комбинаций генератора слова 1 кГц (см. рис. 20). 19 Рис. 20. Схема изучения работы логического анализатора Logic Analyser В ранних сериях Multisim это превышение должно было быть кратно 2n (n=1, 2, 3, 4 и т. д.), так как именно в этой пропорции изменялись значения параметра Clocks/Div, определяющего временную цену одного деления развёртки диаграмм на экране. Таким образом, при частоте выборки 16 кГц и значении Clocks/Div=16 деление во времени будет равно 1 мс (ms), что соответствует интервалу выдачи кодовых комбинаций генератором слова2 при частоте в 1 кГц. Заметим, что параметром Clocks/Div удобно изменять масштаб временной развёртки диаграмм на экране. Кстати, отношение “Posttrigger samples/ clock rate” регулирует максимальную длительность процесса отображения кодовых последовательностей на экране (в секундах для частоты синхронизации в Гц, в миллисекундах для – кГц и т. д.). Рис. 21. Внутренний режим синхронизации Logic Analyser Обратите также внимание на форму сигнала Data Ready, стробирующего выдачу кодовых комбинаций. Визирные линейки (первая - голубая, вторая – жёлтая) позволяют получить точные отсчеты для временных интервалов Tl, T2 и Т2-Т1, а наличие линейки прокрутки по горизонтали позволяет анализировать процессы на большом временном интервале. Нажатие на 2 Соответствие временных единиц измерения: 1с 1s, 1мс 1ms (m), 1 мкс 1 us (u или μ), 1нс 1 ns (n) 20 кнопку Reset стирает информацию с экрана логического анализатора. Кнопка Reverse инвертирует цветное изображение экрана. ■ Качественное отображение временных диаграмм можно получить, используя внешний режим синхронизации Logic Analyser сигналом Data Ready (клемма «R»), который заводится на вход «С - clock)» анализатора (см. рис. 22). Рис. 22. Логический анализатор Logic Analyser в режиме внешней синхронизации В этом случае частоту выборки Clock Rate целесообразно выбирать равной частоте работы генератора слова, а параметром Clocks/Div изменять масштаб временной развёртки диаграмм. Обратите внимание, что задержка в изображении временных диаграмм равная 150 мкс (μ), составляет время задержки положительного перепада сигнала Data Ready показанного на рис 21 (примерно 6,6% такта работы генератора Word Generator). 8. Пример 2. Функциональное моделирование комбинационной схемы 4-битного сумматора В данном параграфе будет рассмотрена последовательность действий по разработке комбинационной схемы 4-битного сумматора, включающей её логическое тестирование программой Multisim. 1. Синтез схемы сумматора в заданном логическом базисе. 2. Понятие об иерархическом проектировании электронных схем. Создание подсхем. 3. Ввод материалов синтеза схемы в рабочие окна программы Multisim: а) ввод материала по синтезу схемы сумматора в окно Description Box Editor, б) ввод схемы сумматора в рабочее окно Circuit программы Multisim с учётом использования шин и подсхем. 4. Функциональное моделирование (логическое тестирование) схемы. 8.1. Синтез схемы сумматора в заданном логическом базисе Материал по синтезу комбинационной схемы сумматора в заданном логическом базисе (И-НЕ/И-НЕ) представлен ниже (для наглядности он ограничен рамкой). Именно в таком виде он будет введён в окно Description Box Editor после открытия файла моделирования в программе Multisim. 21 Сумматоры (окно Description Box Editor) Сумматоры предназначены для сложения многоразрядных слов. По виду организации межразрядных связей они делятся на схемы последовательного и параллельного типа. Как те, так и другие сумматоры строятся на основе одноразрядных сумматоров. ■ Синтез одноразрядного сумматора Одноразрядные сумматор имеет три входа (два - одноимённые разряды слагаемых и перенос из предыдущего разряда) и два выхода (сумма и перенос в следующий разряд). В свою очередь одноразрядные сумматоры строятся на основе полусумматора (см. рис. SM-1). а) б) ai 0 0 1 1 bi 0 1 0 1 Si 0 1 1 1 Ci+1 0 0 0 1 Рис. SM-1. Условное обозначение полусумматора (а) и таблица истинности его работы (б) Уравнения, описывающие работу полусумматора: Si ai bi aibi v aibi , (1) Ci1 ai bi . (2) Представим уравнение (1) в формате И-НЕ/И-НЕ для построения КС S i ai b i bi ai bi ai ai b i b i ai bi a i (3) ai bi Рис. SM-2. Схема полусумматора HS в базисе И-НЕ/И-НЕ Построим одноразрядный сумматор SM, используя два полусумматора. На рис. SM-3 приведена таблица истинности SM. Поскольку полусумматор в качестве основной операции использует операцию сложения по mod2, то и логические уравнения для выходов SM должны быть выражены с использованием этой операции. Si ci (ai bi ) ci (ai bi ) ai bi ci , (4) Ci 1 a3b3 ci (ai bi ) aibi * ci (ai bi ) . (5) Рис. SM-3. Таблица истинности одноразрядного SM и уравнения его работы Схема сумматора SM по уравнениям (4) и (5) представлена на рис SM-4. 22 Si ai bi ci Ci ci (ai bi ) ai bi aibi & Ci 1 Рис. SM-4. Схема одноразрядного сумматора на основе полусумматора ■ Многоразрядный сумматор с последовательным переносом. На рис. SM-5 представлена схема многоразрядного сумматора с последовательным переносом для реализации S=A+B, где A an 1, an 2 ,, a0 , B bn 1, bn 2 ,, b0 ,S sn 1, sn 2 ,, s0 . Рис. SM-5. Схема 4-битного сумматора на основе использования одноразрядных сумматоров Время сложения в нём определится распространением переноса от самого младшего разряда к самому старшему (наихудший случай). Чем больше разрядность n сумматора, тем больше время суммирования. Это существенный недостаток, поэтому такая схема применяется при n ≤ 4. 8.2. Понятие об иерархическом проектировании электронных схем. Создание подсхем Все современные программы моделирования электронных схем поддерживают иерархическое проектирование, основная идея которого состоит в том, что целый фрагмент схемы можно поместить в «чёрный ящик», отобразив его в виде специфического УГО (условное графическое обозначение) с соответствующими входами и выходами. Использование таких графических обозначений для повторяющихся фрагментов схемы моделирования, значительно упрощает не только её набор (ввод), но и позволяет схему структурировать до уровня описания, принятого в учебных пособиях. В программе моделирования Multisim 10.1 такие «чёрные ящики» реализуются как в виде иерархических блоков, так и подсхем. Создание иерархического блока, в отличие от подсхемы, оформляется в виде автономного файла, поэтому иерархические блоки могут использоваться только в составе проекта, включающего некоторую совокупность файлов моделирования. Пример разработки проекта моделирования цифровой схемы будет рассмотрено в заключительной части данной рукописи. Подсхема не требует «файлового» оформления и может использоваться как составная часть обычного файла моделирования. Как иерархический блок, так и подсхема могут создаваться как «сверху - вниз» (сначала создаём УГО блока или подсхемы, а затем его (её) схему замещения), так и «снизу - вверх» (создаётся схема замещения, которая далее оформляется как иерархический блок или подсхема). Чтобы продемонстрировать оба способа примем следующий порядок действий. Подсхему полусумматора (рис. SM-2) создадим способом «сверху – вниз», а схему сумматора (рис. sm-4) на основе использования полусумматора (т.е. подсхемы полусумматора) – «снизу – верх». 23 8.2.1. Создание подсхемы полусумматора HS способом «сверху - вниз». Шаг 1. В поле ввода схемы *Circuit1* выполним команду всплывающего меню New Subcircuit. В появившемся ДО Subcircuit Name введём имя подсхемы, которое мы уже использовали при синтезе схемы HS и нажмём кнопку ОК. Это вызовет появление в поле *Circuit1* прямоугольного изображения с именем HS и обозначением Х1 (рис. 23). Прямоугольное изображение подсхемы пока не содержит линий входа/выхода, так как об их количестве пока нет никакой информации. Создание подсхемы вызовет дополнительные изменения: в поле ввода схем появится новая закладка HS(X1), а в менеджере проекта Design Toolbox, произойдёт структурирование (декомпозиция) файла *Circuit1*, отражающее содержание в нём данной подсхемы (обратите внимание на символ S в значке подсхемы). Рис. 23. Результат выполнения команды New Subcircuit в поле *Circuit1* Шаг 2. Откроим закладку для ввода схемы замещения подсхемы HS(X1),- оно пока пуста. Ввод схемы замещения выполняем, ориентируясь на схему рис. SM-2. Помимо элементов И-НЕ (выбраны компоненты 7400N серии 74STD) нам понадобятся порты (контакты) ввода/вывода, которые вводятся командой всплывающего меню Place Schematic > HB/SC Connector. Порты ввода IO1, IO2, разместим в левой части схемы, IO3 и IO4 в правой (удобно ввести один порт, а затем его размножить применением клавиш Ctrl-C и Ctrl-V). Порты IO3 и IO4 необходимо подвергнуть зеркальному отображению, чтобы их направленность соответствовала портам вывода. Получившаяся схема замещения полусумматора изображена на рис. 24. Рис. 24. Схема замещения полусумматора HS c портами IO1, … IO4 Шаг 3. Желательно перейти от штатных обозначений портов ввода/вывода к пользовательским, которые были бы синонимичны обозначениям, которыми мы пользовались при синтезе схемы. Данное обстоятельство позволит избежать ошибок при создании основной схемы 4-битного сумматора. Для этого выделим нужный контакт (порт) и дважды щёлкнем ЛКМ. В текстовом поле RefDes ДО Connector введём нужное нам имя. Проделав данную операцию со всеми контактами, получим схему, показанную на рис. 25. Тот же результат можно получить, выделив сегмент цепи, примыкающий к контакту, только в данном случае придётся работать с ДО NET. 24 Шаг 4. Перейдём в окно ввода *Circuit1*. К сожалению (рис. 26), все 4 порта на УГО подсхемы оказались расположенными с левой стороны (в практике моей работы правильное расположение портов случалось редко). Это легко исправить. Рис. 25. Окончательный вид схемы замещения полусумматора Рис. 26. Расположение портов вывода SI и CO оказались на левой стороне УГО Выделим УГО подсхемы и выполним команду всплывающего меню Edit Symbol/Title Block. Появится окно редактирования Symbol Editor (рис. 27). Рис. 27. Окно редактирования символа УГО подсхемы Способом drag and drop (перетащить и оставить) переместить выводы “S” и “CO” на правую сторону прямоугольника. C целью соответствия УГО подсхемы графическому начертанию полусумматора на рис. SM-4, изменим в УГО тип вывода для выходного переноса “CO –Carry Output” с прямого (Line Pin) на инверсный (Dot Pin). Для этого на закладке Pins (см. рис. 28) необходимо выделить строку c именем CO и щёлкнуть ЛКМ в разделе Shape (форма) с последующим выбором атрибута Dot Pin. 25 Рис. 28. Присвоение выводу CO статуса инверсного Шаг 5. Закроем окно редактора Symbol Editor(на появившейся запрос -Save changes to temp? -ответим утвердительно). Изображение УГО подсхемы полусумматора в поле *Circuit1* показано на рис. 29. 8.2.2. Создание подсхемы одноразрядного сумматора SM способом «снизу - вверх». Шаг 1. Приступим к созданию в поле *Circuit1* (заметим, что уже раньше можно было бы имя *Circuit1* заменить «настоящим» именем создаваемого файла моделирования) подсхемы одноразрядного сумматора, ориентируясь на изображение рис. SM-4. Для этого надо скопировать подсхему HS(X1) или выбрать её копию из списка In Use List и добавить ещё один элемент И–НЕ (компонент 7400N). Как и при создании подсхемы полусумматора введём командой Place Schematic > HB/SC Connector контакты ввода/вывода. Получившаяся схема замещения сумматора показана на рис. 30. Рис. 29. Изображение подсхемы полусумматора в поле *Circuit1* Шаг 2. Используя рассмотренный выше механизм присвоения пользовательских имён контактам ввода/вывода, получим изображение схемы замещения одноразрядного сумматора в окончательном виде (рис. 31). Шаг 3. Произведём выделение схемы замещения сумматора вместе с выводами и выполним команду меню Replace by Subcircuit. В появившемся ДО Subcircuit Name, введём имя Full_sm и нажмём кнопку ОК. Внимательно следим за курсором, на котором «висит» изображение УГО подсхемы сумматора Full_sm(X1). Помещаем его в поле *Circuit1* (кстати, поле ввода подсхемы HS как бы исчезло). Рис. 30. Схема замещения подсхемы сумматора с контактами IO1, IO5 26 Факт появления УГО подсхемы сумматора Full_sm(X1) меняет иерархию файла в менеджере Design Toolbox (рис. 32), откуда видно, что подсхема Full_sm состоит из двух подсхем более низкого уровня с именем HS. Для того чтобы открыть какую-либо подсхему в поле ввода схем нужно щёлкнуть ЛКМ по соответствующему имени. Рис. 31. Схема замещения подсхемы сумматора с именами выводов, используемых на этапе синтеза схемы. Рис. 32. Подсхема Full_sm(X1) в поле ввода схем *Circuit1* 8.3. Создание схемы моделирования 4-х битного сумматора с последовательным переносом с использование шинной организации Шаг 1. Открытие файла моделирования и ввод материалов синтеза схемы. Командой основного меню File/Save As сохраняем файл как 4bit_sum_series, затем командой Tools/Description Box Editor открываем окно Description Box, в которое вводим материал синтеза схемы. Думается, что надо было бы сразу открыть файл моделирования с именем 4bit_sum_series с последующим вводом материала синтеза в окно Description Box, – но так уж получилось (рис. 33). Шаг 2. Откроем окно ввода схемы 4bit_sum_series. Теперь нам предстоит совершить ввод всей схемы 4-битного сумматора, ориентируясь на рис. SM-5 в окне Description Box. Схему необходимо оснастить задатчиком входных чисел, предназначенных для суммирования (Word Generator) и соответствующими индикаторами для регистрации результата суммирования (семисегментные индикаторы 16-теричных цифр DCD_Hex). Последовательно, путём копирования, расположим подсхемы Full_sm. Далее, из базы данных компонентов Basic: – Switch/SPDT – 2-х позиционный ключ, – Sourses/Power_sourses – источник питания Vcc и символ земли Ground, – Indicator/Probe/probe_red – логические пробники (2 шт), – Indicator/Hex_Display/DCD_Hex_DIG_Red – 7-сегментные индикаторы (3 шт) 27 Рис. 33. Окно Description Box файла моделирования 4bit_sum_series Шаг 3. Прежде чем начать соединять компоненты схемы проводниками, следует расположить три шины3 – две шины для задания чисел и одна шина для результата суммирования (команда всплывающего меню –Place Schematic/Bus), Эти шины в нашей схеме будут исполнять роль информационных каналов. Использование шинной организации хорошо структурирует схему, повышает её восприятие, а также резко уменьшает число соединительных проводников. На рис. 34 показана схема с расположенными компонентами и тремя шинами. На ней также показаны линии распространения последовательного переноса. Все дальнейшие связи будут реализованы посредством шин. Шина Bus проводится с помощью ЛКМ и в окончательном виде фиксируется двойным щелчком. Идентификатор шины Bus* может быть изменён с помощью ДОК Bus Properties, вызываемый двойным щелчком ЛКМ. Шаг 4. Рассмотрим подробно процесс ввода сигнальной линии на шину (шина – как приёмник) и вывода этой же линии с шины на приёмник (шина – как источник). Произведём щелчок ЛКМ на выводе компонента, выход которого должен быть введен на шину (например, Bus2), и выполняем проводку линии к шине. При появлении изгиба линии под углом 45º в непосредственной близости к шине произведём щелчок, что вызовет появление ДОК Bus Entry Connection. В текстовом поле Busline введём обозначение отвода введённой линии (например, a3). В дальнейшем, сигнальная линия с обозначением a3 может быть заведена на нужный вывод компонента, вблизи которого находится шина Bus2 (см. рис 35, а и б). 8.4. Проверка правил электрического проектирования схемы. После создания (ввода) всей схемы необходимо выполнить проверку правил электрического проектирования схемы с помощью команды Tools/Electrical Rules Check. Чтобы не утяжелять содержание данного примера, рассмотрению данного вопроса будет посвящён следующий параграф. Шина или линия групповой связи – это физическая среда передачи сигналов, к которой может параллельно подключаться несколько компонентов схемы. 3 28 Рис. 34. Промежуточный вариант схемы сумматора с неразведёнными шинами. а) б) Рис. 35. Работа с линией a3: а) создание сигнального входа с именем а3 (поле Busline) для шины Bus2, б) использование отвода с именем а3 (выбор имени отвода выбирается в поле Available Buslines) 8.5. Моделирование (логическое тестирование) схемы Окончательный вариант схемы 4-х битного сумматора, предназначенного для моделирования, приведён на рис. 36. Чтобы провести логическое тестирование схемы необходимо в генераторе слова XWG1 установить несколько различных числовых комбинаций для их суммирования схемой сумматора. Суммирование провести как с использованием, так и отсутствием входного сигнала переноса. Визуальная проверка результатов суммирования, проводимая с помощью семисегментных индикаторов U13, …,U15, позволяет сделать вывод о его работоспособности. 8.6. Спецификация схемы сумматора. Программа Multisim 10.1 даёт возможность создать различные отчёты по спецификациям проекта схемы, которые реализуются командами основного меню Reports. Наиболее представительными из них являются Schematic Statistic и Cross Reference, которые и изображены на рис. 37. 29 Рис. 36. Схема моделирования 4-х битного сумматора с последовательным переносом Рис. 37. Спецификации проекта схемы 4bit_sum_series: Schematic Statistic и Cross Reference 9. Проверка правильности выполнения электрических соединений в проектах программы Multisim 10.1 Вернёмся снова к этому вопросу, так как он имеет принципиальное значение при использовании в одной схеме моделирования компонентов с различными типами входов и выходов. Дело в том, что каждый вывод компонента имеет свой тип вывода: вход, выход, открытый коллектор, открытый эмиттер, пассивный, выход с 3 состояниями, вход для подачи питания, двунаправленный вход-выход. В соответствии с правилами, устанавливаемыми в настройках Electrical Rules Checking (ERC), производится проверка допустимости соединения выводов, что устраняет случайные ошибки в соединениях. Для запуска ERC нужно: 1. выполнить командуTools/Electrical Rules Check. Появится ДО (рис. 38) Electrical Rules Check (можно также воспользоваться иконкой); 2. установить нужные опции на закладке ERC Options; 3. установить допустимые соединения, открыв закладку ERC Rules; 30 4. нажать OK. Результаты выведутся в зависимости от опций, указанных в Output box, в настройках ERC Options. Рис. 38. ДО Electrical Rules Check ■ Рассмотрим опции закладки ERC Options. – Unconnected Pins — проверять наличие неиспользуемых выводов. – Excluded Pins — проверять выводы, которые были исключены из ERC в свойствах элемента на закладке Pins. – Clear ERC Markers — убирать уже существующие маркеры ERC. – Create ERC Markers — устанавливать маркеры (красные кружки) на ошибках и предупреждениях. Для очистки маркеров ошибок (не перезапуская ERC) надо: 1. Выполнить команду Edit/Clear ERC Markers для отображения диалога очистки маркеров ERC; 2. выберать один из вариантов: Current Page — очистить маркеры на данной странице; Whole Design — очистить маркеры во всём проекте; 3. нажмите OK для удаления маркеров. Блок опций Output. – Result Pane — вывод результата (закладка Results в Spreadsheet View). Если выбрать Clear Pane, все предыдущие результаты будут очищены при запуске ERC. – File — результаты сохраняются в файле erc.txt, расположенном в поле File. – List View — результаты представляются в виде отдельной таблицы“List View”. ■ Рассмотрим закладку ERC Rules (рис. 39). Для настройки правил ERC Rules надо нажимать на кнопки в местах пересечениях необходимых типов выводов в блоке Definition. Нажимайте до тех пор, пока не получите необходимый цвет ошибки для данного соединения. Рис. 39. Закладка ERC Rules Примеры некоторых соединений и их интерпретация менеджером ERC показана на рис. 40 31 Рис. 40. Интерпретация ERC к возможным соединениям Описание типов выводов, доступных в Multisim 10.1, размещено в табл. 4. Таблица 4. Тип вывода Тип вывода из редактора элементов Multisim Символ ERC вход (INPUT) Input, 74LS Input, 74S Input, 74 STD Input, CMOS Input, Schmitt Trigger, ECL Input. In выход (OUTPUT) Output, Active Driver, 74LS Active Driver, 74S Active Driver, 74STD Active Driver, CMOS Active Driver. Out Выход с открытым коллек- Open Collector, 74S Open Collector, 74STD Open Colтором (OPEN_COLLECTOR) lector, CMOS Open Collector, 74LS Open Collector. Oc Выход с открытым эмиттером (OPEN_EMITTER) ECL Output. Oe Двунаправленный (BI_DIRECTIONAL) Bi-directional, 74LS Bi-directional, 74S Bi-directional, 74STD Bi-directional, CMOS Bi-directional. Bi Выход с z-состоянием (3-STATE) 3-state, 74LS 3-state, 74S 3-state, 74STD 3-state, Bidirectional-3st, CMOS 3-State. Tri Пассивный (PASSIVE) Passive Pas Питание (POWER) Power, Vcc, Vdd, Vee, Vpp Pwr Земля (GND) Gnd, Vss Pwr Неиспользуемый вывод NC NC (no connection) NC Объяснение уровней ошибки дано в табл. 5. Таблица 5. Уровень Описание Ok Warning Error Warning* Зелёная кнопка. Не выводить сообщение по завершению ERC. Желтая кнопка. Выводить предупреждение по завершению ERC. Красная кнопка. Выводить сообщение об ошибке по завершению ERC. Синяя кнопка. Выводить предупреждение по завершению ERC, если отсутствуют выводы других типов. Пурпурная кнопка. Выводить сообщение об ошибке по завершению ERC, если отсутствуют выводы других типов. Error* 32 В заключение, на рис 41 приведено содержание файла erc.txt проверки правильности электрических соединений для файла моделирования сумматора 4bit_sum_series. Рис. 41. Содержание файла erc.txt 10. Пример 3. Временное моделирование (или исследование времени задержки переключения JK триггера). На рис. 42 приведена достаточно простая схема включения синхронного динамического JK-триггера (компонент 74107N) в режиме Т-триггера (J=K=1), переключающегося каждый раз в новое состояние по срезу синхросигнала Clk. Для временного моделирования JK-триггера использован следующий инструментарий: 1. Генератор слова Word Generator XWG1: – частота смены двоичных комбинаций 1 МГц (время выдачи одной комбинации 1мкс, период следования меандра синхросигнала Clk, образованного следованием двух комбинаций -2 мкс); – число установленных комбинаций -10, что соответствует 5 периодам синхросигнала Clk. 2. Логический анализатор Logic Analyser XLA1 (режим внешней синхронизации сигналом Data Ready от Word Generator-XWG1 c частотой 1 МГц). 3. Двулучевой осциллограф Oscilloscope XSC1: – масштаб временной развёртки Timebase Scale: 50 ns/Div; – канал 1. Положительное смещение 0,2 v, масштаб амплитудной развёртки 2 v/Div; – канал 2. Отрицательное смещение 0,2 v, масштаб амплитудной развёртки 2 v/Div. Анализ временных диаграмм процесса переключения триггера сформированных логическим анализатором XLA1, показывает правильность его функционирование как Т-триггера. При этом частота переключения триггера (разность 2-х временных курсоров Т2-Т1=4 мкс) в 2 раза меньше частоты синхросигнала Clk. Однако на основании данных диаграмм мы ничего не можем сказать о задержки переключения триггера относительно среза синхросигнала. Анализ временных диаграмм процесса переключения триггера, сформированных двулучевым осциллографом XSC1, позволяет это не только увидеть, но и замерить. На экране осциллографа отображён момент переключения триггера (красный цвет линии) из состояния 0 в 1 под действием среза синхросигнала Clk (синий цвет линии). Время задержки, зафиксированное разностью положения 2-х временных курсоров Т2-Т1, составляет ≈18,8 нс. 33 Рис. 42. Исследование задержки переключения JK-триггера 34 11. Графический самописец (дисплей) Grapher Grapher представляет из себя многоцелевой дисплей для просмотра временных и графических диаграмм, полученных на различных инструментальных приборах программы Multisim 10.1. При цифровом моделировании автоматов интерес представляет просмотр ранее полученных временных диаграмм на осциллографе или логическом анализаторе за текущий сеанс работы с программой. Открыть окно Grapher View можно двумя способами: нажав кнопку в инструментальной панели Main главного окна, или командой главного меню View►Grapher. Окно Grapher View можно открыть перед началом моделирования наряду с осциллографом и логическим анализатором, при этом временные диаграммы будут выводиться одновременно на приборы и графический дисплей. Окно графического дисплея Grapher View имеет собственную инструментальную панель с кнопками, на которой для цифрового моделирования часто востребованными являются следующие (действия многих кнопок можно реализовать через команды всплывающего меню): Show Legend - вывести обозначение исследуемых графиков (диаграмм), Show Grid показать сетку, Show Cursors -вывести числовые данные, - - вывести ДО Graph Proper- ties (свойства диаграммы), Zoom Restore – восстановление диаграммы в первоначальном виде, Reverse Colors - инверсия изображения графического дисплея. Для того чтобы эффективно использовать графический дисплей надо внимательно изучить действия опций ДО Graphs Properties с закладками: General, Traces Left Axis, Bottom Axis, Right Axis, Top Axis. Окно General состоит из четырех блоков: – Title — редактирование названия с возможностью изменения шрифта; – Grid — нанесение на графики сетки с возможностью редактирования толщины линий и их цвета; – Тraces — отображение на экране сигнала в контрольных точках схемы с указанием цвета соответствующих графиков; – Cursors — вывод на экран характеристик АЧХ и ФЧХ в табличном виде для одного или всех выбранных узлов схемы. Для заставки Traces окно настроек включает следующие блоки: – Trace — выбор номера диаграммы, для которой редактируется изображение ; – Label — задание метки рассматриваемой диаграммы; – Pen Size — выбор ширины линии для изображения характеристики; – Color — выбор цвета линии; – Sample — образец линии; – Х - Horizontal Axis — расположение оси X для выбранной диаграммы (bottom – внизу экрана, top – вверху); – Y - Vertical Axis —аналогично для оси Y; – Offsets X (Y)— установка смещения координат по осям Х и Y. При выборе заставки Left Axis диалоговое окно включает следующие блоки: – Label — редактирование обозначения оси Y с возможностью изменения шрифта и его атрибутов (например, можно заменить символ обозначения напряжения V на U); – Axis — изменение толщины линии оси Y и ее цвета; – Division — количество разбиений в одном большом делении сетки (дополнительно: Total Ticks –общее число разбиений, Minor Ticks-шаг разбиения, для простановки числовых значений диапазона, Precision- число позиций для записи значений диапазона) – Range — диапазон значений по оси Y. Кнопка Auto-range устанавливает нижнюю границу диапазона на нулевой уровень; – Scale — установка масштаба по оси Y (линейный, логарифмический и т.д.). Для заставок Bottom Axis, Rigt Axis и Top Axis окна настроек имеют аналогичный вид. Здесь следует сделать замечание относительно простановки значений временного диапазона 35 исследуемых диаграмм для заставок Bottom Axis и Top Axis. Допустим, обозначение «1.5e005»будет означать 1.5*10-5 с или 15 мкс, а величина 1e-006 будет соответствовать 1 мкс. При этом число позиций для записи степени числа 10 равно трём (почему выбрано такое число - не берусь судить). На рис. 43 а) и 43 б) представлено изображение графического дисплея Grapher View для закладок Logic Analyzer-XLA1 и Oscilloscope-XSC1 применительно к схеме моделирования рис. 42. a) б) Рис. 43. Изображение диаграмм приборов Logic Analyzer-XLA1 а) и Oscilloscope-XSC1 б) на графическом дисплее 36 Полученное на рис. 43 изображение соответствует следующим характеристикам, установленным на закладках ДО Graphs Properties. Диаграмма Logic Analyzer-XLA1: Х-Horizontal Axis (Top), Y-Vertical Axis (Left), X-Offset=0, Y-Offset=26,72 (для CLK) и X-Offset=0, Y-Offset=23,77 (Q-74107), Top Axis – Range: min=1.517e-007 (0,1517 мкс), max=1.01517e-005 (10,1517 мкс) Total Ticks=10, Minor Ticks=2, Precision=3. Диаграмма Oscilloscope-XSC1: Х-Horizontal Axis (Bottom), Y-Vertical Axis (Left), X-Offset=0, Y-Offset=0,4 (для CLK) и X-Offset=0, Y-Offset=-0,4 (Q-74107), Bottom Axis – Range: min=0, max=1.0152e-005 (10,152 мкс), Total Ticks=10, Minor Ticks=1, Precision=3. По окончанию моделирования, нужную область одной или нескольких осциллограмм можно рассмотреть подробно в увеличенном масштабе, выполнив выделение соответствующего участка графика(ов) с последующим щелчком кнопки Zoom In. Выделение проводится обычным образом – протаскиванием курсора при нажатой левой кнопки мыши. Процесс увеличения нужного участка осциллограммы можно повторять неоднократно до получения нужного эффекта. Данный процесс нам можно было бы использовать для определения задержки переключения JK- триггера с помощью графического дисплея. Однако Grapher View позволяет это сделать весьма деликатным образом. Откроем для диаграммы Oscilloscope-XSC1закладку Bottom Axis и в блоке Range установим диапазон времени развёртки от 2.02 e-006 (2,02 мкс) до 2.08e-006 (2,08 мкс) и щелкнем по кнопке ОК. Щелкнем по кнопке Show Cursors – вывести числовые данные. На экране дисплея появятся визирные линейки, а также окно-ярлык с числовыми параметрами диаграмм для значений времени x1 и x2 в точках установки первой и второй визирных линеек. Разность dx = x2-x1, равная 17,41 нс, и представляет искомое время задержки, замеренное на уровне 0,5 U1. Рис. 44. Измерение времени задержки переключения триггера в окне Grapher View 37 Если бы мы проделали указанные манипуляции с диаграммой Logic Analyzer-XLA1, то убедились бы в том, что логический анализатор не выполняет функцию регистрации задержки распространения сигнала в электрических цепях. 12. Пример 4. Создание проекта моделирования канала передачи данных с контролем по mod 2 12.1. Постановка задачи Простейший способ обнаружения ошибок при передаче данных заключается в передаче дополнительного контрольного разряда проверки на чётность P. (рис. 45). В контрольный разряд (КР) чётности записывается «0», если число единиц в информационном слове чётное и, 8 8 D 8 8 Канал связи 8 D P M2 8 M2 P Контрольный разряд чётности Рис. 45. Передача данных при проверке на чётность «0» при правильной передаче наоборот – в случае нечётного числа. Достигается это применением схемы свёртки по mod 2. При этом общее количество передаваемых единиц по каналу связи, включая КР, всегда будет чётным. На принимающей стороне КР вычисляется тем же способом для информационных разрядов и сравнивается с принятым КР. При несовпадении фиксируется ошибка передачи. Исправить ошибку, к сожалению, невозможно, – надо использовать более сложные способы помехоустойчивого кодирования данных. 12.2. Особенности реализации проекта в программе Multisim 10.1 Как уже указывалось в §8.2, иерархическое проектирование в программе Multisim 10.1 реализуется путём замещения фрагментов схемы моделирования, как с помощью подсхем, так и иерархических блоков. Использование подсхем при моделировании было рассмотрено в Примере 2, теперь настала очередь показать использование иерархических блоков. Создание иерархического блока, в отличие от подсхемы, оформляется в виде автономного файла, поэтому иерархические блоки могут использоваться только в составе проекта, который всегда включает некоторую совокупность файлов моделирования. Расположение файлов проекта определяется опцией Circuit Default Path в диалоговом окне Preferences, устанавливаемого командой Options/Global preferences (рис. 2) при инсталляции программы: C:\Documents and Settings\Администратор\Мои документы\National Instruments\Circuit Design Suite 10.1\ Переназначить установку файлов проекта по умолчанию не удаётся (по крайней мере, мне это не удалось), хотя их можно установить в любом другом месте, занимаясь его установкой самостоятельно при любом открытии и закрытии файлов проекта, – что конечно неудобно. В дальнейшем изложении будут использоваться установки по умолчанию. 12.3. Создание проекта моделирования Пускай в данном проекте моделирования схема свёртки по mod 2 будет представлена в виде иерархического блока, а канал передачи в виде подсхемы. ■ Открытие проекта. Выполним команду File/New Project. В ДО New Project введём имя проекта project_parity. В окне менеджера проекта Design Toolbox будет создана предварительная структура проекта (рис. 46) c рабочим окном ввода схемы *Circuit1. 38 Рис. 46. Создание нового проекта моделирования Project_parity ■ Открытие файла моделирования и отображение его в менеджере проекта. Окно ввода схемы *Circuit1 - основное рабочее окно проекта, в котором мы и будем создавать схему передачи байта с контролем по mod 2. Пускай данная схема моделирования будет представляться файлом contr_parity. Для этого выполним команду File/Save As. В открывшееся ДО Save As, введём имя файла contr_parity внутрь папки проекта Project_parity и выполним сохранение (рис. 47). Рис. 47. Открытие файла моделирования contr_parity Теперь необходимо откорректировать структуру проекта, внеся этот файл в папку Schematic менеджера проекта Design Toolbox (закладка Project View). Для этого выделим эту папку, выполнив ПКМ команду Add file. Исполнение данной команды открывает ДО Insert Files into Project (рис. 48), с помощью которого мы произведём открытие файла contr_parity в папке Project_parity. Рис. 48. Открытие файла моделирования contr_parity 39 Теперь, как это видно из рис. 49, файл contr_parity находится в составе проекта. Рис. 49. Закладка Project View менеджера проекта с файлом contr_parity. ■ Создание иерархического блока для схемы свёртки по mod 2. Находясь в рабочем окне ввода contr_parity выполним команду Place/New Hierarchical Block (применим способ «сверху - вниз», т.е. сначала создаём УГО блока, а затем его схему замещения). В ДО Hierarchical Block Properties введём, число входов блока- 8 и выходов – 1. Затем, щелкнув по кнопке Browse, найдём папку проекта, в которую и введём имя иерархического блока 8_m2. Окно Hierarchical Block Properties примет вид, отображённый на рис. 50. Рис. 50. Установка параметров окна Hierarchical Block Properties Щелчок по кнопке ОК приводит к появлению УГО иерархического блока 8_m2 в рабочем окне ввода файла contr_parity (рис. 51). Рис 51. УГО иерархического блока в окне ввода contr_parity ■ Произведём коррекцию структуры менеджера проекта Design Toolbox с тем, чтобы в нём отображалось наличие иерархического блока. Как это уже делалось ранее с отображением файла contr_parity в менеджере Design Toolbox, выделим папку Schematic и, с помощью команды Add file, вызовем ДО Insert Files into Project (рис 52). Используя это окно, откроем файл 8_m2.ms10 в папке Project_parity. После этого, структура менеджера проекта для закладок Hierarchy и Project View примет вид, показанный на рис. 53. 40 Рис. 52. Исполнение команды Add file после выделения папки Schematic Рис. 53. Структура менеджера проекта Design Toolbox для закладок Hierarchy и Project View ■ Создание схемы замещения иерархического блока. Находясь в окне файла contr_parity, выделим изображение иерархического блока и дважды щелкнем ЛКМ. В ДО Hierarchical Block/Subcircuit щелкнем по кнопке Edit HB/SC. Откроется окно с именем 8_m2(x1), в котором пока содержатся лишь входные и выходные порты IO1 … IO9. В этом окне и создадим схему свёртки по mod 2 на восемь входов, используя для этой цели компоненты 7486N, выполняющие логическую операцию «Сложение по mod 2» с двумя переменными (рис. 54). Рис. 54. Схема иерархического блока 8_m2 на элементах 7486N 41 Рис. 55. Иерархический блок с использованием пользовательских обозначений входов/выходов С целью предотвращения ошибок и повышения «читабельности» схемы моделирования, заменим штатные обозначения портов ввода/вывода на пользовательские имена (также как это мы уже делали при создании подсхем). Для этого надо выделить соответствующий порт и дважды щелкнуть ЛКМ. В появившемся ДО Connector, надо ввести новые имена. В окончательном виде иерархический блок представлен на рис. 55. ■ Построение схемы моделирования канала передачи данных с контролем по mod 2. Новизна материала по созданию проекта моделирования канала передачи данных с использованием иерархического блока исчерпана. Рис. 56. Копирование иерархического блока 8_m2 из списка In Use List Далее воспроизведём второй иерархический блок путём копирования первого (рис. 56), создадим в виде подсхемы 9-битный канал передачи данных (применим для этого обычные буферные усилители). Для моделирования сбоя передачи двоичного бита по физической линии применим однопозиционные ключи SPST из семейства Basic. Информационную взаимосвязь элементов схемы выполним с использованием шин. ■ Функциональное моделирование канала передачи данных с контролем по mod 2 выполняется схемой файла contr_parity, представленной на рис 57. Использование при моделировании различных двоичных комбинаций передаваемых байтов подтверждает положение о том, что данный метод контроля может обнаруживать лишь одиночные ошибки (сбой в передаче одного какого-либо бита). Одновременное искажение двух «единичных» бит (двойная ошибка) не обнаруживается. 42 Рис. 57. Схема моделирования процесса передачи данных с контролем по mod 2 13. Литература. 1. Василий Карлащук. Электронная лаборатория на IBM PC: В 2-х томах. – М.: Изд-во Солонпресс, 2006. 2. Хернитер Марк Е. Multisim 7: Современная система компьютерного моделирования и анализа схем электронных устройств. /Пер. с англ. – М.: Изд-во ДМК-пресс, 2006. – 488 с. Методическое пособие «MultiSim 10.1: – быстрый старт» составлено доцентом кафедры ВТ НГТУ Афанасьевым В.А. Ноябрь, 2010 г. 43