
- •Курсовой проект
- •Глава 1. Описание технологии конечных автоматов 4
- •Глава 2. Разработка конечного автомата – светофора 6
- •Глава 1. Описание технологии конечных автоматов 4
- •Глава 2. Разработка конечного автомата – светофора 7
- •Введение
- •Глава 1. Описание технологии конечных автоматов
- •1.1 Описание абстрактных автоматов
- •Общее задание на курсовое проектирование
- •Вариант задания на курсовое проектирование
- •Глава 2. Разработка конечного автомата – светофора
- •Описание устройства
- •Разработка диаграммы
- •Описание работы программы
- •Результат работы программы
- •Заключение
- •Список литературы
- •Приложение 1. Код программы
МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА» (СПбГУТ)
Факультет Инфокоммуникационных сетей и систем Кафедра Программной инженерии и вычислительной техники
Дисциплина Аппаратные средства вычислительной техники
Курсовой проект
Разработка конечного автомата (тема отчета)
Информационная безопасность (10.03.01)
(код и наименование направления/специальности)
Выполнил:
студент группы ИКБ-03
Ерохин А.Г.
(Ф.И.О.) (подпись)
Принял:
к.т.н, доц. кафедры ПИиВТ
Дагаев А.В.
(Ф.И.О.) (подпись)
Оглавлени
КУРСОВОЙ ПРОЕКТ 1
ВВЕДЕНИЕ 3
Глава 1. Описание технологии конечных автоматов 4
1.1 Описание абстрактных автоматов 4
1.2 Общее задание на курсовое проектирование 5
1.3 Вариант задания на курсовое проектирование 6
Глава 2. Разработка конечного автомата – светофора 6
2.1 Описание устройства 6
2.2 Разработка диаграммы 8
2.3 Описание работы программы 8
2.4 Результат работы программы 12
ЗАКЛЮЧЕНИЕ 13
СПИСОК ЛИТЕРАТУРЫ 14
ПРИЛОЖЕНИЕ 1. КОД ПРОГРАММЫ 15
ВВЕДЕНИЕ 3
Глава 1. Описание технологии конечных автоматов 4
1.1 Описание абстрактных автоматов 4
1.2 Общее задание на курсовое проектирование 5
1.3 Вариант задания на курсовое проектирование 6
Глава 2. Разработка конечного автомата – светофора 7
2.1 Описание устройства 7
2.2 Разработка диаграммы 8
2.3 Описание работы программы 9
2.4 Результат работы программы 12
ЗАКЛЮЧЕНИЕ 14
СПИСОК ЛИТЕРАТУРЫ 15
ПРИЛОЖЕНИЕ 1. КОД ПРОГРАММЫ 16
Введение
В данном курсовом проекте используется язык программирования Verilog HDL, применяемый для описания аппаратуры (архитектуры микросхем). Одним из его преимуществ является возможность описать логику работы электронной схемы. Комбинаторная логика, являющееся просто логической функцией от входных данных, сигналов. Стоит одному из входных сигналов измениться, и сразу меняется (пересчитывается) вся функция. В реальных условиях отклик, конечно, немного запаздывает по времени. Конечный автомат – модель вычислительного устройства с фиксированным и конечным объемом памяти, которое читает и обрабатывает цепочку входных символов, принадлежащих некоторому конечному множеству. Конечные автоматы различают в зависимости от того, какой результат они дают на выходе.
Глава 1. Описание технологии конечных автоматов
1.1 Описание абстрактных автоматов
Абстрактный автомат является математической моделью дискретного устройства и описывается шестикомпонентным набором:
𝑆 = (𝑠𝑡𝑎𝑡𝑒𝑠, 𝑖𝑛𝑝𝑢𝑡𝑠, 𝑜𝑢𝑡𝑝𝑢𝑡𝑠, 𝑓𝑡𝑟𝑎𝑛𝑠𝑖𝑡𝑖𝑜𝑛, 𝑓𝑜𝑢𝑡𝑝𝑢𝑡, 𝑖𝑛𝑖𝑡𝑖𝑎𝑙_𝑠𝑡𝑎𝑡𝑒)
𝑠𝑡𝑎𝑡𝑒𝑠 — множество состояний.
𝑖𝑛𝑝𝑢𝑡𝑠 — множество входных сигналов.
𝑜𝑢𝑡𝑝𝑢𝑡𝑠 — множество выходных сигналов.
𝑖𝑛𝑖𝑡𝑖𝑎𝑙_𝑠𝑡𝑎𝑡𝑒 — начальное состояние.
Автомат Мили (автомат первого рода) — конечный автомат, выходная последовательность которого зависит от состояния автомата и входных сигналов.
{𝑠𝑡𝑎𝑡𝑒(𝑡 + 1) = 𝑓𝑡𝑟𝑎𝑛𝑠𝑖𝑡𝑖𝑜𝑛(𝑠𝑡𝑎𝑡𝑒(𝑡), 𝑖𝑛𝑝𝑢𝑡(𝑡))
𝑜𝑢𝑡𝑝𝑢𝑡(𝑡) = 𝑓𝑜𝑢𝑡𝑝𝑢𝑡(𝑠𝑡𝑎𝑡𝑒(𝑡), 𝑖𝑛𝑝𝑢𝑡(𝑡))
Где 𝑠𝑡𝑎𝑡𝑒(𝑡) — текущее состояние, 𝑠𝑡𝑎𝑡𝑒(𝑡 + 1) — следующее состояние,
𝑓𝑡𝑟𝑎𝑛𝑠𝑖𝑡𝑖𝑜𝑛 — функция переходов, 𝑖𝑛𝑝𝑢𝑡(𝑡) — входной сигнал текущего состояния,
𝑓𝑜𝑢𝑡𝑝𝑢𝑡 — функция выходов, 𝑜𝑢𝑡𝑝𝑢𝑡(𝑡) — выходной сигнал текущего состояния.
Автомат Мура (автомат второго рода) — конечный автомат, выходная последовательность которого зависит только от состояния автомата, и не зависит напрямую от входных сигналов.
{𝑠𝑡𝑎𝑡𝑒(𝑡 + 1) = 𝑓𝑡𝑟𝑎𝑛𝑠𝑖𝑡𝑖𝑜𝑛(𝑠𝑡𝑎𝑡𝑒(𝑡), 𝑖𝑛𝑝𝑢𝑡(𝑡))
𝑜𝑢𝑡𝑝𝑢𝑡(𝑡) = 𝑓𝑜𝑢𝑡𝑝𝑢𝑡 (𝑠𝑡𝑎𝑡𝑒(𝑡))
Где 𝑠𝑡𝑎𝑡𝑒(𝑡) — текущее состояние, 𝑠𝑡𝑎𝑡𝑒(𝑡 + 1) — следующее состояние,
𝑓𝑡𝑟𝑎𝑛𝑠𝑖𝑡𝑖𝑜𝑛 — функция переходов, 𝑖𝑛𝑝𝑢𝑡(𝑡) — входной сигнал текущего состояния,
𝑓𝑜𝑢𝑡𝑝𝑢𝑡 — функция выходов, 𝑜𝑢𝑡𝑝𝑢𝑡(𝑡) — выходной сигнал текущего состояния.
Причем справедлива эквивалентность автоматов Мили и Мура: для каждого автомата Мили может быть построен эквивалентный ему автомат Мура, и обратно — для каждого автомата Мура может быть построен эквивалентный ему автомат Мили.
Автоматы Мили и Мура широко применяются при проектировании цифровых устройств на основе программируемых логических интегральных схем (ПЛИС).
Основное преимущество использования автомата Мили заключается в возможности реакции автомата в течение текущего такта, что обусловлено зависимостью текущей выходной комбинации от текущей входной комбинации.
Наличие минимальной выходной задержки, связанной с переключением выходного регистра, отсутствие нестабильности переходного процесса на выходе автомата, отсутствие сквозного распространения сигнала через комбинационную схему от входа до выхода автомата, простота описания на языках описания аппаратуры HDL делает автомат Мура практически незаменимым.