Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
метод указания по выполнению курсовой по инф.doc
Скачиваний:
3
Добавлен:
25.08.2019
Размер:
803.33 Кб
Скачать

3. Выполнение курсовой работы

В курсовой работе необходимо проанализировать работу дискретного устройства ДУ из двух комбинационных схем без памяти КС1 и КС2, формирующих две независимых последовательности сигналов Yout1 и Yout2 и сумматора, предназначенного для получения двоичной суммы S этих сигналов. (Pис. 11)

Комбинационные схемы КC1 и КС2 заданы как совокупности функциональных элементов. Работа логического сумматора подробно рассмотрена в п. 2.4. Таким образом, в ходе выполнения работы необходимо последовательно решить три задачи:

Рис. 11. Структурная схема ДУ

Задача 1. построение логической функции F1(х12, х3) данной схемы и формирование выходной последовательности Yout1 с использованием встроенных логических функций MS Excel.

Задача 2. Формирование выходной последовательности Yout2 в среде MathCAD с элементами программирования.

Задача 3. Анализ работы сумматора - формирование результата логического суммирования последовательностей Yout1 и Yout2.

3.1 Примеры решения задач

Задача 1. Анализ схемы КС1.

Дана контактная схема КС1. (Рис. 12), необходимо найти аналитическое выражение логической функции, описывающей работу этой схемы и выходную последовательность сигналов этой схемы.

Решение.

В соответствии с обозначениями схемы, на выходе элемента 2 получим х2Λх3; на выходе элемента 1 получим х12Λх3), это значение поступает на вход элемента 6. На вход элемента 3 поступает х2·х3, инвертируется этим элементом, и в виде поступает на вход элемента 5. Элемент 4, инвертируя поступивший на него сигнал х3, передает его в виде на второй вход элемента 5

Рис. 12. Контактная схема ДА1

. Элемент 6 преобразует поступающие на него сигналы в х1·(х2·х3)+ , который является значением логической функции F1(х12, х3) на выходе схемы. После преобразований с использованием формул пункта 1.3, получим

.

На рис. 13 представлена последовательность входных сигналов для КС1. Эту последовательность в виде таблицы в водим на лист рабочей книги MS Excel. С использованием встроенных логических функций MS Excel функция F1(x1, x2, x3) принимает вид

F1=ИЛИ(И(В3;С3;D3);не(D3)). (3.1)

Ф

Рис. 13. Входная последовательность для КС1

ункцию (3.1) следует ввести в ячейку E3 и скопировать в диапазон Е3:Е8. Значения будут получены в текстовом формате (см. рис 14). Для преобразования текстовых значений в числовые в ячейку F3 необходимо ввестифункцию ЕСЛИ(E3;1;0) и скопировать в диапазон F3:F8. Итоговая таблица приведена на рис. 14. В диапазоне F3:F8 находится последовательность выходных сигналов дискретного устройства, описанного схемой КС1

Рис. 14. Выходная последовательность для КС1

Задача 2. Анализ схемы КС2, заданной таблицей истинности.

Логическая функция, описывающая КС2, задана таблицей истинности (рис. 15). Найти последовательность сигналов на выходе кс2 при заданной входной последовательности сигналов (рис. 16). Эта последовательность имеет три компоненты х1, х2, х3, т.е. схема имеет три входа. Работа каждой схемы рассматривается в течении 6 тактов. Необходимо сформировать выходную последовательность Yout2 в MathCAD.

Решение.

В документ MathCAD вводится таблица истинности для КС2 и входная последовательность сигналов Xinp2. Эти данные вводятся в виде матриц, причем таблица истинности вводится в виде матрицы и столбца (рис.17).

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

Рис. 15 . Таблица истинности для КС2

Рис. 16. Последовательность входных сигналов КС2

.

В столбцах матрицы Ti2 расположены все комбинации входных сигналов, в столбце yi2 расположены значения выходного сигнала для каждой комбинации.

Рис. 17. Ввод данных в документ MathCAD

Теперь необходимо составить вектор выходной последовательности Yout2. Для этого необходимо в матрице Ti2 отыскать строку, совпадающую с первой строкой матрицы Xinp2. Пусть номер этой строки m. Тогда элемент столбца Yi2 с номером m будет первым элементом выходной последовательности Yout2. Аналогично находится второй, третий и все последующие элементы.

Очевидно, необходимо использовать встроенную функцию if (…). Специфика этой функции в MathCAD, такова, что необходимо вводить третий аргумент - выражение, выполненное при ложном значении условия. Кроме этого, при использовании в одном выражении двух индексов необходимо выводить результат в виде матрицы. Поэтому во фрагменте документа, приведенном на рис. 18, вывод результата работы функции if (…) осуществляется в матрицу R. Для наглядности, в третий аргумент введена цифра 9. В результирующей матрице R в каждой строке в столбце с номером m стоит элемент выходной последовательности, в остальных столбцах стоит цифра 9.

Рис. 18. Формирование промежуточной матрицы R

Далее необходимо представить результат в виде последовательности или вектора. Для этого последовательно просматриваем каждую строку матрицы R и записываем в вектор Yout2 элемент, не равный 9. Для реализации необходимо организовать вложенный цикл. Переменная внешнего цикла i означает номер строки матрицы R и столбца Yout2. Переменная внутреннего цикла j означает номер столбца фиксированной строки i. На рис 19 представлен фрагмент документа с реализацией этого алгоритма.

Рис. 19. Извлечение столбца из матрицы

В

Рис. 20. Панель инструментов программирования

этом фрагменте использован инструмент «программирование», который активируется щелчком на пиктограмме . После активации открывается панель инструментов, представленная на рис. 20. Необходимо использовать один раз инструмент (добавление линии), инструменты, соответствующие «for», «if», инструмент присваивания «←» в модуле программирования MathCAD.

Символы в пустых маркерах можно набирать с клавиатуры и с других панелей инструментов. Переход на новую строку осуществляется нажатием клавиши «Enter».

Итак, необходимо выполнить покоординатное формирование вектора Yout2. Для этого набираем оператор присваивания, затем оператор «addline»(рис. 21). В пустой маркер вводим оператор «for» и в появившихся маркерах записываем границы переменной цикла i. Затем нажатием клавиши «ENTER» выполняем переход на новую строку и те же действия выполняем для j (рис. 22).

Рис. 21. Ввод оператора Addline

Рис. 22. ввод оператора цикла

Далее опять выполняем переход на новую строку и вставляем оператор «←». В появившиеся пустой маркер слева вводим Yout2i, в маркер справа вводим оператор «if». В результате получаем строку на рис. 23.

Рис. 23. Ввод условного оператора

Маркеры оператора «if» заполняем, как на рис. 19. (т.е. если очередной элемент матрицы не равен 9, то присваиваем его очередной компоненте вектора Yout2). Переходим на новую строку, выполняем оператор вывода, как на рис. 19.

Таким образом, в результате решения двух задач получаем две двоичных последовательности Yout1={001110}, Yout2= {110110} Теперь можно переходить к последней задаче – анализу работы сумматора.