Автор: Пользователь скрыл имя, 24 Мая 2013 в 14:07, курсовая работа
Цифровой автомат – это логическое устройство, в котором помимо логических элементов имеются элементы памяти. Значение выходных сигналов такого устройства зависит не только от аргументов на входе в данный момент времени, но и от предыдущего состояния автомата, которое фиксируется элементом памяти. В качестве элементов памяти могут использоваться триггеры.
Курсовой проект предусматривает закрепление знаний функционирования элементов цифровой техники, приобретение навыков проектирования цифровых устройств, в частности цифровых автоматов.
Введение 6
1 Аналитический обзор 7
1.1 Обзор САПР 8
1.2 Программный пакет MultiSim 11
1.3 Техническое задание 12
2 Проектировочная часть 13
2.1 Структурная схема цифрового автомата 13
2.2 Алгоритм функционирования цифрового автомата 15
2.3 Описание состояний цифрового автомата 18
2.4 Вычисление функций переходов на основе индивидуальных параметров разработки 19
2.5 Составление полной таблицы функционирования ЦА 20
2.6 Составление логических функций, описывающих работу цифрового автомата 22
2.7 Синтез принципиальной электрической схемы цифрового автомата 26
2.7.1 Выбор микросхем 26
2.7.2 Разработка печатной платы ЦА с использованием UltiBoard 12.0 26
Заключение 29
Список использованных источников 30
Каждое состояние регистра отождествляется с записанным в триггеры n-разрядным двоичным числом. Так же каждому состоянию регистра соответствует цифровой двоичный код на выходе ЦА. Этот код получают из 8-ричного кода таблицы 1. При этом каждый символ кодируется пятью битами согласно таблице 2. Два старших разряда – номер строки, три младших – номер столбца.
Таблица 4 - Таблица функции выходов
Состояние автомата a(t) |
Значения выходных сигналов y(t) | ||||||
y1 |
y2 |
y3 |
y4 |
y5 |
W | ||
a 0 |
0000 |
0 |
0 |
0 |
0 |
0 |
0 |
a 3 |
0011 |
1 |
0 |
0 |
0 |
0 |
0 |
a 6 |
0110 |
0 |
1 |
1 |
1 |
1 |
0 |
a 9 |
1001 |
0 |
1 |
1 |
0 |
0 |
0 |
a 12 |
1100 |
1 |
1 |
1 |
1 |
1 |
0 |
a 1 |
0001 |
0 |
1 |
0 |
1 |
1 |
0 |
a 4 |
0100 |
0 |
1 |
1 |
1 |
1 |
0 |
a 7 |
0111 |
0 |
0 |
0 |
1 |
1 |
0 |
a 10 |
1010 |
0 |
0 |
0 |
0 |
1 |
0 |
a 13 |
1101 |
0 |
0 |
0 |
0 |
0 |
0 |
a 2 |
0010 |
0 |
0 |
0 |
0 |
1 |
0 |
a 5 |
0101 |
0 |
0 |
0 |
0 |
0 |
0 |
a 8 |
1000 |
0 |
0 |
0 |
0 |
1 |
0 |
a 11 |
1011 |
0 |
0 |
0 |
0 |
0 |
1 |
a 0 |
0000 |
0 |
0 |
0 |
0 |
0 |
0 |
Алгоритм функционирования ЦА можно задать с помощью графа, в котором номер состояния удобно обозначить числом, характеризующим состояние регистра, а также указать номер выхода в каждом состоянии, на котором формируется сигнал «1» (граф составляют по таблицам 4 и 5):
Рисунок 2.3 - Алгоритм функционирования ЦА, заданный с помощью графа
Цифровой автомат можно представить как «черный ящик», имеющий конечное число входов и выходов и некоторое множество внутренних состояний Q ={a1(t), a2(t), …, an(t)}, в которые он под воздействием входных сигналов переходит скачкообразно. Выходные сигналы y(t) возникают в результате действия входных сигналов x(t), при этом одновременно с появлением выходного сигнала происходит скачкообразный переход автомата из состояния an(t) в состояние an+1(t).
Выходные сигналы зависят не только от входных сигналов в данный момент времени, но и от сигналов, которые поступили на входы автомата ранее, т.е. от состояния автомата в текущий момент.
Каждое состояние регистра отождествляется с записанным в триггеры 4-разрядным двоичным числом в соответствии с установленным выше правилом и может быть представлено в таблице 5.
Таблица 5 - Таблица состояний цифрового автомата
Состояние регистра |
Сигналы QB(t) на прямых выходах триггеров T4, T3, T2, T1 | |||
Q4(t) |
Q3(t) |
Q2(t) |
Q1(t) | |
a 0 |
0 |
0 |
0 |
0 |
a 3 |
0 |
0 |
1 |
1 |
a 6 |
0 |
1 |
1 |
0 |
a 9 |
1 |
0 |
0 |
1 |
a 12 |
1 |
1 |
0 |
0 |
a 1 |
0 |
0 |
0 |
1 |
a 4 |
0 |
1 |
0 |
0 |
a 7 |
0 |
1 |
1 |
1 |
a 10 |
1 |
0 |
1 |
0 |
a 13 |
1 |
1 |
0 |
1 |
a 2 |
0 |
0 |
1 |
0 |
a 5 |
0 |
1 |
0 |
1 |
a 8 |
1 |
0 |
0 |
0 |
a 11 |
1 |
0 |
1 |
1 |
a0 |
0 |
0 |
0 |
0 |
Таблица 6 - Состояния
синхронного JK-триггера(
Jn |
Kn |
Qn+1 |
1 |
X |
1 |
X |
1 |
0 |
0 |
X |
0 (сохр. 0) |
X |
0 |
1 (сохр. 1) |
На основании таблицы состояний ЦА, таблицы переходов, таблицы выходов и информации о состояниях JK триггера составим полную таблицу функционирования синхронных JK триггеров (таблица 7).
В этой таблице указаны
сигналы, которые подаются на управляющие
входы триггеров для
К приходу очередного тактового (синхронизирующего) импульса на все четыре триггера регистра на управляющих входах этих триггерах должны существовать сигналы управления триггерами, обеспечивающие переход к следующему состоянию триггеров регистра.
Таким образом, для каждого состояния регистра необходимо найти сигналы на управляющих входах триггеров, обеспечивающих переход к следующему состоянию.
Пусть регистр требуется построить на JK-триггерах, которые работают так, что:
Таблица 7 - Полная таблица функционирования ЦА на JK-триггерах
Номер такта |
Входной сигнал |
Предшествующие состояние триггеров регистра |
Последующие состояния триггеров регистра |
Сигналы управления триггерами |
Цифровой двоичный код на выходе ЦА y(t) |
Символ | ||||||||||||||||||
W | ||||||||||||||||||||||||
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
X |
0 |
X |
1 |
X |
1 |
X |
0 |
0 |
0 |
0 |
0 |
0 |
- |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
X |
1 |
X |
X |
0 |
X |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
П |
2 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
X |
X |
1 |
X |
1 |
1 |
X |
0 |
1 |
1 |
1 |
1 |
0 |
О |
3 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
X |
0 |
1 |
X |
0 |
X |
X |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
Л |
4 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
X |
1 |
X |
1 |
0 |
X |
1 |
X |
1 |
1 |
1 |
1 |
1 |
0 |
Я |
5 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
X |
1 |
X |
0 |
X |
X |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
К |
6 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
X |
X |
0 |
1 |
X |
1 |
X |
0 |
1 |
1 |
1 |
1 |
0 |
О |
7 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
X |
X |
1 |
X |
0 |
X |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
В |
8 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
X |
0 |
1 |
X |
X |
1 |
1 |
X |
0 |
0 |
0 |
0 |
1 |
0 |
А |
9 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
X |
1 |
X |
1 |
1 |
X |
X |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
- |
10 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
X |
1 |
X |
X |
1 |
1 |
X |
0 |
0 |
0 |
0 |
1 |
0 |
А |
11 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
X |
X |
1 |
0 |
X |
X |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
- |
12 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
X |
0 |
0 |
X |
1 |
X |
1 |
X |
0 |
0 |
0 |
0 |
1 |
1 |
А |
13 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
X |
1 |
0 |
X |
X |
1 |
X |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
- |
Минимизацию логических функций, определяющих каждый из управляющих сигналов триггеров КС1 по данным таблицы 7 проведем с помощью логического преобразователя Logic Converter из программы-симулятора MultiSIM:
Рисунок 2.4 - Минимизация функции с помощью
логического преобразователя для
Рисунок 2.5 - Минимизация функции с помощью
логического преобразователя для
Рисунок 2.6 - Минимизация функции с помощью
логического преобразователя для
Рисунок 2.7 - Минимизация функции с помощью
логического преобразователя для
Рисунок 2.8 - Минимизация функции с помощью
логического преобразователя для
Рисунок 2.9 - Минимизация функции с помощью
логического преобразователя для
Рисунок 2.10 - Минимизация функции с помощью
логического преобразователя для
Рисунок 2.11 - Минимизация функции с помощью
логического преобразователя для
Произведем минимизацию логических функций КС2, используя также Logic Converter из программы-симулятора MultiSIM:
Рисунок 2.12 – Минимизация логических функций КС2
Программа-симулятор Multisim предназначена для проектирования принципиальных электрических схем, с возможностью эмуляции их работы и дальнейшим экспортом в САПР.
При выборе микросхем для синтеза цифрового автомата в первую очередь следует учитывать их электрическую совместимость:
Таким образом, целесообразно выбрать следующие ИМС:
UltiBoard 12.0 – простая в использовании и интуитивно понятная платформа разработки печатных плат. Этот модуль позволяет пройти все стадии разработки: от расположения элементов до соединения их проводниками с минимальными усилиями и временными затратами. Модуль содержит множество полезных функций, таких как автоматическая прокладка проводников по оптимальному маршруту.
Уникальные возможности разводки, три мощных метода включают "gridless follow-me", в котором путь провода следует точно пути вашей мыши, "connection machine" который автоматически проводит одиночную линию простым щелчком на кнопку, "start on a ratsnest", позволяющий начать разводку в любом месте сетки. Четвертый метод применяется только в Ultiboard 8 "magnetic attraction at pads" – виртуальное рисование линии к конечной точке с автоматическим завершением разводки.
Контроль ошибок, включает функцию "jump-to-error" программы, позволяющую найти место в разводке, где возникла проблема и функция “Real-Time Design Rule -Check" немедленно предупреждающую об ошибке визуальным выделением (цвет, круг и так далее) точно в том месте, где произошла ошибка.
Механический САПР, только Ultiboard 12.0 содержит мощный модуль механического САПРа, достаточный для создания лицевых панелей, корпусов и других механических деталей с автоматическим выравниванием и размещением соединений с платами.
После разработки и отладки принципиальной схемы в симуляторе MultiSim необходимо разработать печатную плату для ЦА.
Проще всего осуществить импорт данных в Ultiboard 12.0 из программы-симулятора. Для этого выбираем соответствующий пункт меню программы: «Трансляция»à «Передать в Ultiboard 12.0»
Рисунок 2.13 – Передача схемы в Ultiboard 12.0
Схема будет передана в пакет Ultiboard 12.0, где в основном окне будет изображен макет печатной платы. Однако такой она представлена быть не может, её сначала нужно протрассировать, для чего выбираем соответствующий пункт меню «Автотрассировка» --> «Запуск просмотр автотрассировки».
В работе исследована
возможность применения средств
автоматизированного