Реализация программного обеспечения управляющего автомата
Реализация программного обеспечения управляющего автомата
Задание
По заданной граф-схеме алгоритма (рис. 1), реализовать на языке высокого уровня, программу управляющего автомата нового типа, который формирует код нового состояния автомата и адрес мультиплексора.
Рис. 1. Исходная граф-схема алгоритма работы автомата.
Считаем, что микропроцессор подключен к микроконтроллеру как внешнее устройство, т. е. программой не моделируется.
Дешифратор кода состояния так же не моделируется, а подключен к микроконтроллеру как внешнее устройство.
Следовательно, программное обеспечение должно обеспечивать опрос комбинационных схем F1 и F3, опрос триггера микропроцессора (?j) и обеспечивать временное взаимодействие той последовательности, как работает автомат при аппаратной реализации.
Построение модели
Преобразуем исходную граф-схему, введя пустые операторы и пронумеруем состояния (рис. 2).
Рис. 2. Преобразованная граф-схема
Построим диаграмму переходов (рис. 3)
Рис. 3. Диаграмма переходов
Преобразуем диаграмму переходов с учетом циклов (рис. 4).
Рис. 4. Преобразованная диаграмма переходов
По полученной диаграмме переходов составим таблицу состояний (таблица 1).
Таблица 1. Определение F1/
№ |
?(t) |
? |
N(t) |
?(t+1) |
N(t+1) |
1 |
0 |
1 |
0000 |
1 |
0001 |
2 |
1 |
1 |
0001 |
2 |
0010 |
3 |
2 |
?1 |
0010 |
3 |
0011 |
4 |
2 |
?1 |
0010 |
4 |
0100 |
5 |
3 |
?5 |
0011 |
7 |
0111 |
6 |
3 |
?5 |
0011 |
5 |
0101 |
7 |
4 |
?2 |
0100 |
6 |
0110 |
8 |
4 |
?2 |
0100 |
5 |
0101 |
9 |
5 |
1 |
0101 |
8 |
1000 |
10 |
6 |
1 |
0110 |
8 |
1000 |
11 |
7 |
1 |
0111 |
8 |
1000 |
12 |
8 |
?3 |
1000 |
10 |
1010 |
13 |
8 |
?3 |
1000 |
9 |
1001 |
14 |
9 |
1 |
1001 |
11 |
1011 |
15 |
10 |
1 |
1010 |
11 |
1011 |
16 |
11 |
1 |
1011 |
14 |
1110 |
17 |
12 |
?4 |
1100 |
13 |
1101 |
18 |
12 |
?4 |
1100 |
14 |
1110 |
19 |
13 |
1 |
1101 |
0 |
0000 |
20 |
14 |
1 |
1110 |
12 |
1100 |
По построенной таблице можно определить булевы функции для нахождения кода нового состояния ?(t+1) по коду предыдущего состояния и комплексу логических условий.
, где
Y1 = (!x1 &; !x2 &; !x3 &; !x4) + (?1 &; !x4 &; !x3 &; x2 &; !x1) + (?5 &; !x4 &; !x3 &; x2 &; x1) + (!?5 &; !x4 &; !x3 &; x2 &; x1) + (!?2 &; !x4 &; x3 &; !x2 &; !x1) + (!?3 &; x4 &; !x3 &; !x2 &; !x1) + (x4 &; !x3 &; !x2 &; x1) + (x4 &; !x3 &; x2 &; !x1) + (?4 &; x4 &; x3 &; !x2 &; !x1);
Y2 = (!x4 &; !x3 &; !x2 &; x1) + (?1 &; !x4 &; !x3 &; x2 &; !x1) + (?5 &; !x4 &; !x3 &; x2 &; x1) + (?2 &; !x4 &; x3 &; !x2 &; !x1) + (?3 &; x4 &; !x3 &; !x2 &; !x1) + (x4 &; !x3 &; !x2 &; x1) + (x4 &; !x3 &; x2 &; !x1) + (x4 &; !x3 &; x2 &; x1);
Y3 = (!?1 &; !x4 &; !x3 &; x2 &; !x1) + (?5 &; !x4 &; !x3 &; x2 &; x1) + (!?5 &; !x4 &; !x3 &; x2 &; x1) + (?2 &; !x4 &; x3 &; !x2 &; !x1) + (!?2 &; !x4 &; x3 &; !x2 &; !x1) + (x4 &; !x3 &; x2 &; x1) + (?4 &; x4 &; x3 &; !x2 &; !x1) + (!?4 &; x4 &; x3 &; !x2 &; !x1) + (x4 &; x3 &; x2 &; !x1);
Y4 = (!x4 &; x3 &; !x2 &; x1) + (!x4 &; x3 &; x2 &; !x1) + (!x4 &; x3 &; x2 &; x1) + (?3 &; x4 &; !x3 &; !x2 &; !x1) + (!?3 &; x4 &; !x3 &; !x2 &; !x1) + (x4 &; !x3 &; !x2 &; x1) + (x4 &; !x3 &; x2 &; !x1) + (x4 &; !x3 &; x2 &; x1) + (?4 &; x4 &; x3 &; !x2 &; !x1) + (!?4 &; x4 &; x3 &; !x2 &; !x1) + (x4 &; x3 &; x2 &; !x1);
, где
Таблица 2. Определение F3
? |
A(n-1) |
F1(y4y3y2y1) |
F3(z3z2z1) |
?1 |
A2 |
0010 |
001 |
?2 |
A4 |
0100 |
010 |
?3 |
A8 |
1000 |
011 |
?4 |
A13 |
11000 |
100 |
?5 |
A3 |
0011 |
101 |
- |
Aj |
- |
000 |
Программа автомат мультиплексор листинг
Основываясь на полученных значения F1, F3 реализуем программу для управления автоматом на языке Java. Листинг основных классов приведен в приложении 1.
Выводы
В рамках работы были получены навыки разработки программ для конечных автоматов и построения функция F1, F3 на основе изучения свойств и динамики системы.
Реализованное программное обеспечение позволяет производить моделирование состояния автомата как в пошаговом режиме (рис. 5), так и в циклическом (рис. 6), кроме того есть возможность изменения начальных условий (рис. 7).
Рис. 5. Одиночный режим работы.
Рис. 6. Цикличный режим работы.
Рис. 7. Цикличный режим работы с измененными условиями.
Похожие статьи
-
1. Изучение теоретических аспектов использования: MS Word, MS Excel, MS Access, Paint и Photoshop... (ППО) Часть 1 : Руководство по выполнению...
-
Выбор средств реализации информационной системы Названные в параграфе 1.4. настоящей работы задачи могут быть решены тремя типами средств автоматизации:...
-
Для реализации поставленной задачи методом конечных элементов будут использованы следующие программные обеспечения (ПО): - MATLAB - ПО и одноименный язык...
-
Над созданием ИС "Учет посещаемости в детском саду" будет работать определенная группа разработчиков, состоящая из руководителя и инженера-программиста....
-
Уровни программного обеспечения. - Основы теории информации
1. Базовый уровень - самый низкий уровень ПО представляет базовое ПО. Оно отвечает за взаимодействие с базовыми аппаратными средствами. Как правило,...
-
ИСТОРИЯ ПОЯВЛЕНИЯ ДВИЖЕНИЯ OPEN SOURSE - Свободное программное обеспечение
История "свободных программ" начинается с одного человека -- Ричарда Столлмана (Richard Stallman). Именно он впервые употребил термин "free software"...
-
Каждая диаграмма состояний в UML описывает все возможные состояния одного экземпляра определенного класса и возможные последовательности его переходов из...
-
Для решения поставленных задач используются следующие методы: 1) Иерархия пользователей будет определена при помощи построения UML диаграммы, для...
-
В течении года от команды разработчиков пришло 6 пакетов, содержащих изменения в ядре программы. Для каждого пакета составлялось в среднем от 1-ого до...
-
Средства визуализации работают со следующими видами данных: - одномерные данные - одномерные массивы, временные ряды и т. п. - двумерные данные -...
-
Персональные компьютеры в медицинской практике - Программное обеспечение персональных компьютеров
За последние 20 лет уровень применения компьютеров в медицине чрезвычайно повысился. Практическая медицина становится все более и более...
-
Тестирование - Разработка и сопровождение программного обеспечения
Тестирование - ряд мероприятий, связанных с различного рода испытаниями объекта тестирования с целью установления соответствия или несоответствия его...
-
Описание разработанных модулей В разработанной программе имеется 5 модулей. Главный модуль "Program. cs" предназначен для запуска главного окна...
-
Программное обеспечение. - Основные термины по информатике
Компьютер - электронное устройство для обработки информации. Составные части компьютера называются его Аппаратным обеспечением . Совокупность...
-
Математическое и программное обеспечение (МО, ПО)- совокупность математических методов, моделей, алгоритмов и программ для реализации целей и задач...
-
Программное обеспечение и его виды - Программное обеспечение информационных компьютерных систем
Windows программный компьютер операционный Программное обеспечение (software) - это набор команд, управляющих работой компьютера. Без программного...
-
Базы данных (БД) составляют в настоящее время основу компьютерного обеспечения информационных процессов, входящих практически во все сферы человеческой...
-
Инструментальное программное обеспечение -- это программное обеспечение, предназначенное для использования в ходе проектирования, разработки и...
-
Возникновение дистрибутивов - Свободное программное обеспечение
После определенного периода разработки на Linux уже стабильно работал ряд важнейших утилит GNU. Скомпилированное ядро Linux с небольшим комплектом...
-
Программные и программно-аппаратные средства обеспечения безопасности информации - Защита информации
К аппаратным средствам защиты информации относятся электронные и электронно-механические устройства, включаемые в состав КС и выполняющие(как...
-
После преобразования аналогового сигнала в цифровую форму с помощью АЦП возникает необходимость в программной обработке полученного цифрового сигнала....
-
В организации ООО "Дружба" имеется различное оборудование. Оно подразделяется на офисную оргтехнику и профессиональное оборудование в цехе. Офис оснащен...
-
Необходимо построить базу данных, содержащую информацию о ПО, используемом в ЦЗН. В результате анализа предметной области выявляются документы -...
-
Структура системы В ходе разработки выпускной квалификационной работы использовались базы данных, созданные в среде MySQL Workbench, и создано клиентское...
-
Компания MERA Networks - является одним из крупнейших мировых поставщиков услуг в сфере информационно-коммуникационных технологий. MERA предлагает...
-
Заключение, Список использованных источников - Разработка и сопровождение программного обеспечения
В ходе прохождения практики были получены и закреплены знания в области дисциплин "Конструирование программ и языки программирования" и "Основы...
-
Обязанности дублеров инженерно-технических работников среднего звена: Обслуживание вычислительной техники всех подразделений колледжа, покупка...
-
Для решения задачи №3 необходимо ввести исходные данные в электронную таблицу, т. е. таблицы 1,2 (рисунок 16). Рисунок 16 - Ввод исходных данных в...
-
На рисунке 1 представлен фрагмент электронной таблицы, в которой содержаться исходные данные для решения задачи. Рисунок 1 - Фрагмент электронной...
-
Тестирование ЛВС осуществляется на стадии завершения работ по монтажу ЛВС и представляет собой осмотр сети на предмет ее соответсвия принятым стандартам....
-
Вирусы и антивирусное программное обеспечение
Реферативная часть Что такое вирус? Один из известных "докторов" Д. Н Лозинский дал определение вируса на примере клерка. Представим себе аккуратного...
-
Общая характеристика технологии создания программного обеспечения К программно-инструментальным средствам в первую очередь относятся алгоритмические...
-
Цель Работы - научиться использовать элемент управления ListBox а также основные методы класса СListBox. Использование возможности контроля правильности...
-
Цель Работы - изучить приемы создания и использования шаблонов классов. - Теоретические сведения Достаточно часто встречаются классы, объекты которых...
-
В данной курсовой работе были рассмотрены варианты описания структуры работы системы для регистрации пассажиров в аэропортах у стойки регистрации на...
-
Установка и системные требования приложения Для установки программы необходимо зайти в папку "Файловый менеджер [Setup]", и запустить файл "setup. exe"....
-
Общее описание программного обеспечения, реализующего разработанный алгоритм Основной идеей дипломного проекта, является реализация алгоритма...
-
Для администрирования кластера кафедры АИС для организации параллельных процессов было выбрано следующее программное обеспечение. 1. Intel® cluster...
-
На данный момент существует множество аналогов данного приложения, можно выделить такие как стандартный проводник Windows и Total Commander. Заказчику...
-
При разработке функций программного обеспечения диалог с пользователем должен быть организован через графический интерфейс. Все элементы графического...
Реализация программного обеспечения управляющего автомата