Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Карпов Ю.Г. Лекции по МОДЛС для курсовой работы - файл CLOCK.doc


Карпов Ю.Г. Лекции по МОДЛС для курсовой работы
скачать (136.9 kb.)

Доступные файлы (1):

CLOCK.doc679kb.05.07.2001 16:09скачать

содержание

CLOCK.doc

Санкт-Петербургский Государственный Технический Университет

Факультет Технической кибернетики


Ю.Г. Карпов


Синтез дискретных устройств управления

Методические указания



Санкт-Петербург

1997

ОГЛАВЛЕНИЕ


Введение ..................................................................................................................................…….....

Синтез функциональной схемы простейших часов ..............................................................……...

  1. Система отображения ..................................................................…......………………......

  2. Функция отсчета времени ............................................................…………………..........

  3. Управление часами с помощью конечного автомата ...................................……….......

  4. Построение функциональной схемы конечного автомата .................................…..…..

  5. Организация передачи внешних воздействий на вход конечного автомата .…….......

  6. Общая функциональная схема часов ..........................................................…….............

Программа курсовой работы ......................................................................................…......…..........

Пример выполнения первых двух разделов курсовой работы .....................................……..........

Заключение ............................................................................................................................…..........

Приложение (варианты курсовых работ) ..............................................................….......................

Литература …………………………………………………………………….…………………………..

ВВЕДЕНИЕ


Методические указания предназначены для самостоятельного овладения приемами синтеза дискретных устройств управления студентами, изучающими курс “Теория алгоритмов и автоматов” по специальностям 22.02 и 22.04. Здесь содержатся пояснения к методам использования результатов математической логики, теории конечных автоматов и дискретной электроники для синтеза дискретных устройств на примере проектирования функциональной схемы электронных наручных часов.

Конечноавтоматная модель используется в автоматике для написания алгоритмов функционирования широкого класса устройств и систем дискретной техники. Конечноавтоматные описания алгоритмов необходимы не только для пояснения алгоритмов на начальном этапе проектирования, но и для систематической процедуры синтеза устройств и программ.

Курсовая работа по разделу “конечные автоматы” курса “Теория алгоритмов и автоматов” состоит в разработке студентами функциональной схемы электронных (наручных) часов на основе конечно-автоматного описания алгоритма их функционирования. Этот алгоритм студент строит таким образом, чтобы спроектированные им электронные часы обладали, в дополнение к заданным базовым функциям (отображение и корректировки текущего времени), также рядом дополнительных возможностей, например, работа с секундомером, “ускорение” или “замедление” хода часов и т.д. Дополнительные возможности проектируемых часов определяются для каждого студента индивидуальным заданием.

Для выполнения работы студенту необходимы теоретические знания в областях :

  • теория логических (булевых) функций (методы задания функций, базисные функции, нормальные формы , минимизация, реализация);

  • теория конечных автоматов (методы задания, структурный и функциональный синтез);

  • дискретная электроника (реализация логических функций, триггеры, счетчики и т.д.).

Соответствующий теоретический материал излагается в предшествующих и текущих лекционных курсах, и, кроме того, он может быть найден в литературе, приведенной в конце методических указаний.
^

СИНТЕЗ ФУНКЦИОНАЛЬНОЙ СХЕМЫ ПРОСТЕЙШИХ ЧАСОВ


Элементы функциональной схемы часов исторически изменялись: от анкерного механизма механических часов к более стабильному электронно-механическому, затем к полностью электронному. Этот процесс усовершенствований закончился с появлением микросхем малой потребляемой мощности, составляющих основу электронных часов. Электронные часы более информативны, они превосходят механические и электромеханические по функциональным возможностям, точности хода и надежности. В настоящее время налажен широкий выпуск дешевых и точных электронных часов с огромным разнообразием функций. Рассмотрим основные узлы электронных часов.
^

Система отображения.


Основная функция часов - отсчет и отображение времени. Обычные электронные часы содержат индикаторную панель, показывающую время, внешние кнопки управления (например, “а” и “b” на рис.1), электронный блок и источник питания, помещенные в корпусе часов. Цель курсовой работы - синтез электронной схемы таких часов. Рассмотрим сначала состав системы отображения времени электронного блока. Эта система служит для преобразования двоичного представления информации о времени, хранящегося в электронном блоке часов, в визуальную форму.




Рис. 1 Рис.2 Рис. 3

Для отображения используют жидко-кристаллические, светодиодные и другие индикаторы. В каждом разряде индикатор содержит семь сегментов, которые, высвечиваясь в определенной комбинации, могут дать изображение цифры (см. рис.2). Для того, чтобы сегмент “загорелся” , на него необходимо подать напряжение. Один разряд индикатора, таким образом, содержит 7 входов; подавая напряжение на некоторые из них можно высветить различные изображения. Например (рис.3), для изображения цифры “2” необходимо подать напряжение на все сегменты кроме f1 и f4. Несложно построить функциональный преобразователь, который по двоичному коду десятичной цифры вырабатывает сигналы, управляющие индикаторами. Такую схему мы будем называть индикаторным преобразователем (ИП). Его условное изображение дано на рис.4.




Рис. 4 Рис. 5

Таким образом, информация, хранящаяся в двоичном коде в регистрах, с помощью системы отображения преобразуется в визуальную информацию активности сегментов индикаторов. Пусть в простейших часах на индикаторы выводится лишь информация о часах и минутах. Для таких часов за основу может быть взята структурная схема отображения, представленная на рис. 5.
^

Функция отсчета времени


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

Важным параметром счетчика является коэффициент пересчета К. К - это максимальное число импульсов, которое может быть подсчитано. Если рассматривать счетчик как конечный автомат, то К - это количество различных состояний счетчика. Через К переключений счетчик с коэффициентом пересчета К возвращается в исходное состояние. Для удобства использования счетчика, кроме тактового входа, существует вход “Уст.0” (сброс). При подачи на него логической единицы на выходе устанавливается нулевой код.

Важным для практического использования счетчика является момент изменения его состояния. Поскольку на вход поступают прямоугольные импульсы, то переключение может происходить либо в момент положительного перепада (напряжение меняется с низкого уровня на высокий), либо отрицательного. Мы будем использовать счетчики с переключением при отрицательном перепаде входного напряжения.

В электронных часах применяют малогабаритные стабильные генераторы, с выхода которых снимается последовательность прямоугольных импульсов. Частота кварцевых генераторов практически не изменяется во времени. Очевидно, что количество импульсов, выработанных таким генератором, прямо пропорционально времени его работы. Возьмем в качестве примера суммирующий счетчик с К=10 и будем подавать на его вход импульсы с частотой 1 Гц. Нетрудно заметить, что его можно использовать как счетчик секунд по модулю 10, т.е. он будет иметь последовательность двоичных состояний:

0000  0001  0010  0011  ...  1000  1001  0000  0001  ...

Смена состояний происходит при каждом входном импульсе; на выходе старшего разряда при каждом переходе 1001  0000 будет возникать отрицательный перепад напряжения. Поэтому выход старшего разряда счетчика обычно соединяют с тактовым входом следующего. На рис.6 видно, что в момент переключения Счк1 (1001  0000) происходит изменение состояния Счк2. Поэтому эти два счетчика при их последовательном соединении могут отсчитывать секунды: эта пара может рассматриваться как один счетчик по модулю 60, причем первый счетчик пары отсчитывает единицы секунд, а другой - десятки секунд.



Рис 6

Минуты можно подсчитывать также двумя счетчиками, включенными последовательно после секундных. Добавляя к этим 4-м счетчикам еще два для подсчета числа единиц и десятков часов, мы можем получить в этих счетчиках двоично-десятичное представление текущего времени с подсчетом секунд, минут и часов, что и требуется в качестве входа в систему отображения. Однако, при реализации пересчета количества часов возникает небольшая проблема. Она состоит в том, что в случае, когда в счетчике десятков часов находится двойка, единицы часов должны пересчитываться до трех, тогда как во всех остальных случаях - до десяти (например допускается 7 и 17 часов, но не 27 часов).

Существует несколько различных решений этой проблемы. Например, можно сделать один счетчик, у которого К=24. Но в этом случае необходимо будет дополнительно преобразовать находящийся там двоичный код в двоично-десятичный. Наше решение представлено на рис.7. Осуществляется обычный пересчет в двух счетчиках, но как только появляется число 24, сразу происходит их сброс. Появление этого числа легко определяется по установке в “1” разрядов Q2 первого счетчика (счетчика единиц) и Q1 второго счетчика (счетчик десятков). Время этого переключения гораздо меньше времени реакции человека и поэтому кратковременное появление ненужного сигнала (24 часа) будет незаметно для глаз.



Рис. 7

С учетом сказанного, электронный блок проектируемых часов можно представить в несколько более конкретном виде (рис. 8).

Рис.8
^

Управление часами с помощью конечного автомата


Нетрудно заметить, что пользоваться часами, которые имеют только вышеперечисленные функции практически невозможно, т.к. нельзя, например, корректировать текущее время. Поэтому при проектировании электронных часов важнейшим является вопрос управления часами. Именно для такого управления извне предназначены внешние входы электронных часов (кнопки “a “ и “b” на рис.8. ). Сначала опишем работу проектируемых часов на пользовательском уровне. В основном режиме работы часы должны показывать текущее время. При этом пусть они не будут реагировать на нажатие кнопки “b”, а при нажатии “а” переходят в состояние корректировки минут (отображаются только минуты). Корректировка минут (только в сторону увеличения) будет производиться последовательным нажатием на кнопку “b”. При этом после каждого нажатия значение минут будет увеличиваться на единицу. Из этого режима можно перейти в режим корректировки значения часов нажав кнопку “а” (порядок установки часов аналогичен установке минут). Далее, нажав кнопку “а”, мы сможем вернуться в основной режим (отображение времени). Теперь определим, какие управляющие воздействия надо подавать на схему в этом случае.

Во-первых, управляющие сигналы “+1” должны подаваться на счк3 и счк5 для корректировки (подвода) минут и часов. Во-вторых, нужно воздействовать на систему отображения так, чтобы человек мог различать три состояния часов: отображения текущего времени и состояние корректировки минут и часов. Во время корректировки часов на индикаторе отображаются только часы, и отсутствие отображения минут будет свидетельствовать, что схема находится в состоянии корректировки часов. Аналогично, отсутствие отображения часов будет свидетельствовать, что схема находится в состоянии корректировки минут. (Можно еще более наглядно отразить эти состояния схемы, например, периодическим миганием корректируемого значения).

Корректировку будем осуществлять добавлением единицы в соответствующий счетчик. Структурная схема таких часов представлена на рис.9. На этом рисунке управляющие сигналы L1 и L2 разрешают (или запрещают) отображение часов и минут соответственно, а управляющие сигналы i1 и i2 подаются на дополнительные тактовые входы счетчиков для подвода минут (часов). Выработку управляющих воздействий i1, i2, L1, L2 на основе внешних сигналов a и b осуществляет в электронных часах устройство управления (УУ). Устройство управления, генератор тактовых импульсов (Г), индикаторные преобразователи (ИП) и счетчики (счк) вместе с их связями образуют электронный блок часов (рис. 9). Нашей задачей является построение функциональной схемы устройства управления электронными часами.

Рис.9

Очевидно, что управляющие сигналы L1 и L2 необходимо подавать постоянно, поскольку их значения используются непрерывно, а управляющие воздействия i1 и i2 - это кратковременные сигналы, которые подаются в момент нажатия внешних кнопок владельцем часов. Элементарные управляющие воздействия называют микрокомандами. Микрокоманды, действующие на схему продолжительное время, мы будем называть потенциальными, а микрокоманды с кратковременным воздействием - импульсными. Наличие двух типов управляющих элементарных воздействий - потенциальных и импульсных - является характерной особенностью дискретных управляющих устройств.

Перечислим теперь режимы работы часов, которые должно обеспечивать УУ и связанные с этими режимами микрокоманды:

1. Отображение времени: L1 = 1 и L2 = 1; сигналы i1 и i2 подаваться не должны.

2. Корректировка минут: L1 =0 и L2 = 1; по сигналу извне должен передаваться импульсный сигнал i1.

3. Корректировка часов: L1 =1 и L2 = 0; по сигналу извне должен передаваться импульсный сигнал i2

Требуемое управление несложно задать с помощью конечного автомата Мили, состояния которого естественно сопоставить с указанными тремя режимами работы часов.

Входом в управляющий автомат являются преобразованные внешние воздействия, выходы - это два типа управляющих воздействий: импульсные и потенциальные. Структурная схема устройства управления электронными часами для нашего случая изображена на рис.10. Здесь управляющий автомат является асинхронным, т.е. переход из одного состояния в другое может происходить в любой момент времени при наличии внешнего воздействия. В структурной схеме автомата (рис.10) блоки F и ЭП - это функциональный блок и блок элементов памяти соответственно. Возможный вариант графа переходов такого управляющего автомата представлен на рис.11. Здесь z1 и z2 обозначены выходные сигналы автомата, которые выполняют корректировку минут и часов. Можно заметить, что потенциальные сигналы являются функцией состояния автомата, в то время как импульсные появляются лишь в момент перехода.



Рис.10. Рис.11

Таким образом, значение импульсной микрокоманды (кратковременное воздействие) может быть отлично от нуля лишь во время перехода из одного состояния в другое. Потенциальная микрокоманда (продолжительное воздействие) действует в период нахождения автомата в определенном состоянии (или в группе состояний) и может измениться только при переключении автомата в другое состояние.
^

Построение функциональной схемы конечного автомата


В общем виде структура конечного автомата задается функциональным преобразователем (F) и блоком элементов памяти (ЭП). Как уже говорилось, потенциальные выходы автомата (микрокоманды) реализуются как функции состояния, запоминаемого в ЭП, а импульсные выходы реализуются в функциональном преобразователе F. Структурная схема управляющего автомата, таким образом, может быть представлена рис.12.

Прежде чем приступать к реализации автомата рис.11, заметим, что его граф переходов не полностью определен; переходы под воздействием сигнала “а” не имеют выходных сигналов, а из состояния “отображение времени” переход под воздействием сигнала “b” вообще не определен. Неопределенность первого типа, очевидно, означает следующее: в результате перехода под воздействием сигнала “а“ неявно предполагается, что на выходе возникает нейтральный сигнал, которому не соответствует никакой микрокоманды. Очевидный метод устранения этой неопределенности - явное введение такого сигнала. Второй вид неопределенности - отсутствие перехода из “состояния отображения времени” - также должен быть устранен, поскольку в этом состоянии внешний сигнал “b” может быть подан. Поэтому следует явно определить реакцию автомата на этот сигнал. Примем следующее решение: в упомянутом состоянии автомат на входной сигнал “b” не реагирует, т.е. остается в том же состоянии, выдавая на выход нейтральный сигнал (обозначим его z3). Полностью определенный граф переходов управляющего автомата электронных часов представлен на рис.13.



Рис.12 Рис.13

Этому графу переходов соответствует следующая таблица переходов (Табл.1).
Вход
Текущее состояние
Следующее состояние
Выход

a

Отображение времени

Коррекция минут

z3

b

Отображение времени

Отображение времени

z3

a

Коррекция минут

Коррекция часов

z3

b

Коррекция минут

Коррекция минут

z1

a

Коррекция часов

Отображение времени

z3

b

Коррекция часов

Коррекция часов

z2



Для реализации автомата в соответствии с графом переходов (рис.13) необходимо закодировать входы, выходы и состояния автомата двоичными наборами, после чего из графа или таблицы переходов можно легко построить таблицы истинности выходов схемы F и FL. В нашем случае для кодирования трех состояний достаточно двух двоичных разрядов; выберем кодирование так:

    Отображение времени ........ 00

    Коррекция часов ........ 01

    Коррекция минут ........ 11

Два входных сигнала “a” и “b” можно закодировать одним двоичным разрядом: x=1 для “a” и x=0 для “b”. Кодирование выходных импульсных сигналов проведем так, чтобы разряды кода соответствовали импульсным управляющим микрокомандам i1 и i2: пусть двоичный разряд у1 соответствует микрокоманде i1. Тогда:

y1 y2

z1 закодируем 1 0

z2 закодируем 0 1

z3 закодируем 0 0

Кодировка выходных потенциальных сигналов проста: каждый разряд кода соответствует одной потенциальной управляющей микрокоманде. Теперь можно легко построить таблицы истинности для преобразования F и Fl; обозначая q1 и q2 - двоичные разряды кода текущего состояния, а Q1 и Q2 -двоичные разряды кода следующего состояния, составляем Таблицы 2 и 3.

Таблица 2

Вход

Текущее

состояние

Следующее

состояние

Выход




X

q1

q2

Q1

Q2

y1

y2

0

0

0

0

0

0

0

1

0

0

1

1

0

0

0

1

1

1

1

1

0

1

1

1

0

1

0

0

0

0

1

0

1

0

1

1

0

1

0

0

0

0



Таблица 3

q1

q2

l1

l2

0

0

1

1

0

1

1

0

1

1

0

1



Структурная схема искомого автомата с указанными однобитовыми сигналами представлен на рис.14.

Рис.14

Таблицы 2 и 3 задают частично определенные функции. Недоопределенность функций можно использовать для их минимизации. Такой прием здесь допустим поскольку неопределенность вызвана наличием неиспользованного кода “10” внутреннего состояния автомата. При правильной работе устройства, модель которого представлена графом переходов на рис.13, его переход в такое состояние из установленного начального состояния никогда не произойдет.

В результате минимизации неполностью определенных логических функций с помощью карт Карно получаем:

Q1 = x q1 \/ x q2; Q2 = q1 \/ x q2 \/ x q2;

y1 = x q1; y2 = x q1 q2 ;

L1 = q1; L2 = q1 \/ q2;

По полученным формулам легко могут быть построены функциональные схемы F и Fl.

Выходы схемы F используются в процессе функционирования электронных часов только в моменты переключения автомата из одного состояния в другое. В теории автоматов переходы между состояниями предполагается мгновенными, в то время как в реальной схеме время перехода имеет вполне определенную длительность, определяемую инерционностью электрических цепей: задержкой появления сигнала на выходе схемы F и временем переключения элементов памяти. Время задержки в современных схемах весьма мало: в ТТЛ-схемах оно составляет величину порядка десятков наносекунд. Обычным приемом, позволяющим решать проблемы, возникающие в переключательных схемах вследствие немгновенности срабатывания, является использование синхронизации - синхроимпульса с длительностью, перекрывающей время переключения схемы. Такой синхроимпульс (обозначим его s) в асинхронных схемах должен формироваться в момент внешних воздействий, в нашем случае при нажатии кнопок “a” и “b”, потому он будет вырабатываться схемой “Преобразователь внешних воздействий” - рис.10. Для хранения номера состояния в периоды между моментами переходов обычно используется триггеры.

Триггер - устройство с двумя устойчивыми состояниями. Основная его функция - хранить один бит информации неограниченное время до тех пор, пока эта информация не будет изменена воздействием на вход триггера. Существует довольно много разновидностей триггеров, различающихся по входным условиям смены состояния. Коротко опишем алгоритм работы D-триггера, который мы будем использовать далее (см.рис.15). Когда на выходе Q - “1”, а на выходе Q - “0”, говорят, что триггер установлен в единичное состояние. В противном случае (Q - “0”, Q - “1”), считается, что триггер сброшен в нулевое состояние.



Рис.15

Непосредственная установка или сброс триггера осуществляется подачей напряжения низкого уровня на входы S (set-установка) или R (reset - сброс) соответственно. Подавать логический ноль на оба входа сразу недопустимо. Если низкий уровень присутствует на R или S, то сигналы на входах D и C никак не влияют на состояние триггера. Однако в функциональном плане более важными являются именно входы D (data) и C (clock). Триггер работает так, что сигнал от входа D передается на выход Q в момент положительного перепада напряжения на С. На выходе Q устанавливается соответственно уровень напряжения, противоположный уровню на Q. При этом во время постоянного уровня напряжения или в момент отрицательного перепада напряжения на С значение Q не может измениться. Чтобы триггер переключался правильно, уровень на входе D следует зафиксировать заранее, перед приходом тактового перепада на С. Минимальное время между появлением сигнала на D и на С называется защитным интервалом. При работе в таком режиме на входах R и S должен присутствовать уровень логической единицы.

Использование элементов памяти при реализации конечного автомата имеет некоторые особенности. Дело в том, что в момент переключения автомата необходимо одновременно подавать на вход F (рис.14) код старого состояния и запоминать код нового, получаемый с выхода F. Для этого можно в каждом разряде кода состояния использовать два триггера. Эти триггеры соединяются последовательно (см. рис. 16), потому что информация о номере состояния на выходе F при одном переключении автомата будет использоваться на входе F при следующем переключении.

Рассмотрим задачу воздействия на входы С триггеров (рис.16). Сигналы x и s появляются практически одновременно. На выходе F после появления x на входе устанавливается код следующего состояния, который необходимо запомнить в триггерах Т1-Т2.

Необходимо помнить, что в тот момент, когда на тактовый вход С поступает положительный перепад напряжения, сигнал на информационном входе D должен быть установлен заранее. Поэтому на С входы триггеров T1 и T2 мы будем подавать синхроимпульс s с t0 < t1 < ts - задержкой. Причем, t0 - это сумма времени задержки в блоке F и защитного интервала триггера, ts - продолжительность синхроимпульса s. Положительный перепад напряжения на тактовые входы С триггеров T3-T4 надо подать только после окончания действия синхроимпульса. Это можно сделать инверсией сигнала, который мы подаем на С входы Т1-Т2.



Рис.16

Требуемый выход устройства управления электронных часов - управляющие микрокоманды - получаются на основе состояния и выходов автомата довольно просто. Потенциальные микрокоманды, как функции состояний автомата, снимаются с выходов логической схемы FL (см.рис.16), являющейся фактически дешифратором. Импульсные микрокоманды являются функцией выходных сигналов управляющего автомата. В нашем случае кодировка выходов автомата выбрана так, что каждый разряд выходного сигнала является одной из искомых микрокоманд, и дополнительного функционального преобразователя строить не надо. Однако для того, чтобы эти микрокоманды имели импульсную форму, определим микрокоманду i как конъюнкцию выхода у схемы F и синхроимпульса s.
^

Организация передачи внешних воздействий на вход КА


Рассмотрим теперь организацию подачи внешних воздействий на вход управляющего автомата. В нашем случае внешнее воздействие - это нажатие одной из двух кнопок (“a” или “b”, рис.10). Необходимо построить схему, которая при таком нажатии вырабатывала бы синхроимпульс и подавала бы на вход автомата код нажатой кнопки. Время, которое человек держит кнопку часов нажатой, не может быть меньше нескольких миллисекунд, а сформированный на основе этого нажатия синхроимпульс должен быть гораздо короче и не зависеть от продолжительности физического нажатия кнопки. “Укоротить” импульс может помочь так называемый формирователь импульсов с укорачивающей RC-цепью (см.рис.17). Подбором емкости и сопротивления можно построить схему, которая вырабатывает необходимую нам продолжительность сигнала.

Рис.17

Рис.17

На рис.18 представлена схема передачи внешних воздействий на вход автомата. Анализируя ее, необходимо помнить, что в ТТЛ-схемах “висячий провод” на входе элемента эквивалентен логической единице.

Рис. 18

Как видно из графиков напряжений (рис.19), синхроимпульс появляется лишь тогда, когда нажата одна кнопка, а другая - нет. Также нужно учесть, что выход x используется только в период действия s и, таким образом, напряжение на x только в это время должно соответствовать коду кнопки, нажатие которой вызвало появление этого s.



Рис. 19

При практической реализации необходимо учитывать эффект, называемый “дребезгом контактов”. Он состоит в том, что при однократном нажатии кнопки ее контакты замыкаются и размыкаются несколько раз, что может привести к неправильному функционированию устройства. Существуют специальные методы для защиты от этого нежелательного эффекта. Здесь они не будут рассмотрены. И мы будем полагать, что у используемых нами кнопок “дребезг” контактов отсутствует.
^

Общая функциональная схема часов.


Итак, построив управляющий автомат и связав его с внешним миром, мы реализовали тем самым функциональную схему часов. Однако, при реализации автомата не был учтен момент начала работы часов при включении питания. При подаче на триггер только питания еще ничего нельзя сказать о том состоянии, в каком он находится. Поэтому в начале работы триггер необходимо принудительно установить определенным образом. Такая возможность предусмотрена; это делается с помощью сигнала “Уст”, который подается при включении питания и который будет записывать в триггеры код “00”, что в нашем случае соответствует состоянию “Отображение времени”. Сигнал “Уст” вырабатывается в блоке начальной загрузки. Его значение равно нулю некоторое время после подачи питания, а затем устанавливается высокий уровень напряжения, сохраняющийся до отключения питания, то есть в течение всего периода работы устройства.

Также при переходе от структурной схемы к функциональной надо помнить, что у реального счетчика только один счетный вход “+1”. Таким образом, необходимо объединить два сигнала так, чтобы переключение происходило при подаче любого из них. Учитывая, что один из этих сигналов - импульсная микрокоманда и допустимо переключение счетчика как по переднему, так и по заднему фронту этой микрокоманды, мы можем объединить эти сигналы с помощью элемента исключающее ИЛИ. Построив графики напряжений, можно убедиться, что в данном случае допустим только такой элемент. (Что будет, если вместо него поставить элемент “ИЛИ”?).

Общая функциональная схема часов представлена на рис.20. На этой схеме не реализованы схемы индикаторных преобразователей (или дешифраторов). Они могут быть легко построены с помощью известных методов.



Рис. 20


^

Программа курсовой работы.


Построенная выше конечно-автоматная модель описывает самую простую схему электронных часов. Однако, сравнительно несложная модификация этой простой схемы может привести к существенному увеличению их функциональных возможностей. Именно такую модификацию и предлагается выполнить студенту в курсовой работе. Перечислим некоторые возможности, которые легко могут быть добавлены к основной схеме часов:

  1. Отображение секунд и “сброс” секунд (точная подводка часов);

  2. Звуковая сигнализация каждый час и возможность ее отключения;

  3. Отображения дня недели;

  4. Отображение числа, месяца, года (и их коррекция);

  5. Секундомер;

  6. Будильник, и т.д..
^

Цели работы.


Целью работы является синтез функциональной схемы электронных часов по описанию их дополнительных возможностей по отношению к простому отображению времени.

^ При выполнении работы необходимо:

  1. Построить граф управляющего автомата часов и дать пояснения к нему. Пояснения предполагают описание логического смысла каждого состояния, перечень визуальной информации, выводимой на индикаторы, а также порядок использования всех тех возможностей часов, которые перечислены в задании.

  2. Изобразить общую структурную схему электронных часов с указанием всех необходимых управляющих микрокоманд (импульсных и потенциальных).

Функции каждого блока структурной схемы должны быть пояснены. Должны быть даны также пояснения функции всех управляющих микрокоманд.

3. Провести кодирование входных и выходных воздействий и состояний автомата.

4. Построить минимизацию функций блоков F и Fi.

5. Построить общую функциональную схему. При этом необходимо четко описать алгоритм работы и уметь объяснить принцип проектирования всех блоков.

6. Определить (приблизительно) площадь микросхемы, реализующей построенную функциональную схему при достигнутой современной плотности компоновки транзисторов.

После выполнения первых трех пунктов задания, до этапа кодирования, студент должен представить результат преподавателю.

Примечание. При построении схемы возможно придется добавить специальные индикаторы для реализации специфических функций часов.
^

Пример выполнения двух разделов курсовой работы


Продемонстрируем пример выполнения курсовой работы на примере построения функциональной схемы электронных часов, выполняющих отображение и коррекцию часов и минут, а также имеющих режим секундомера.
^

1. Граф управляющего автомата представлен на рисунке 21.


Рис. 21

Функции состояний и переходов :


time - состояние отображения текущего времени. На индикаторах значения часов и минут.

Minutes correction - состояние корректировки минут. При переходе в это состояние гаснет левая половина индикатора. Однократное нажатие кнопки “b” добавляет единицу к значению минут, отображаемому в правой половине индикатора.

^ Hours correction - состояние корректировки часов. Свидетельством того, что часы готовы к корректировке часов, является погасшая правая половина индикатора. Однократное нажатие кнопки “b” добавляет единицу к значению часов, отображаемому на экране.

Sec.stop - состояние остановленного секундомера. На индикаторах - минуты и секунды секундомера. В этом состоянии секундомер не отсчитывает время. Нажатием кнопки “а” возможно сбросить накопленное отображаемое значение, нажатием кнопки “b” - запустить секундомер.

Sec.run - состояние запущенного секундомера. На индикаторах - идущее время (минуты и секунды) секундомера. Нажатием кнопки “а” можно остановить секундомер (иначе говоря, перевести его в состояние Sec.stop)
^

2. Описание импульсных выходов управляющего автомата.


z1 - увеличение значения минут ;

z2 - увеличение значения часов ;

z3 - сброс текущего значения секундомера.
^

3. Общая структурная схема.


Схема представлена на рисунке 22.

Счетчики 1-6 нужны для счета текущего времени, 7-10 для счета времени секундомера.

В этих часах, в отличие от ранее рассмотренных, на индикатор в разных состояниях может подаваться информация с разных счетчиков. Для подачи информации со счетчиков на ИП будем использовать так называемую мультиплексирующую схему (МС).



Рис. 22

Мультиплексирование - это выбор одного сигнала из нескольких. В зависимости от напряжения на управляющих входах МС на ее выход могут подаваться сигналы с различных информационных входов. Зададим алгоритм работы МС так :

При подаче на управляющий вход ”С” логической единицы, информация на выходы Q1 - Q4 поступает со входов I1 - I4 соответственно.

При подаче на управляющий вход С логического нуля, информация на выход поступает со входов I5-I8.

В результате, например, на выходе Q2 может быть сигнал либо со входа I2, либо со входа I6 (в зависимости от С).

Необход языке имо добавить, что в том случае, когда сигнал, поступающий со счетчика на вход МС имеет меньше четырех разрядов, на старшие разряды соответствующего входа МС должен быть подан логический ноль, Итак, в нашем случае для управления МС необходима одна потенциальная микрокоманда.

Все необходимое управление можно осуществить с помощью следующих микрокоманд :

  • импульсные:

i1 - добавить единицу в счетчик минут ;

i2 - добавить единицу в счетчик часов ;

i3 - обнулить счетчики секундомера ;

  • потенциальные:

  1. L1 - подключение счетчиков секундомера к генератору тактовых импульсов. При наличии этого сигнала секундомер запускается, при отсутствии - останавливается.

  1. L2 - управление МС, которая позволяет выводить на индикаторы текущее время или время секундомера.

  1. L3, L4 - управление подачей сигналов непосредственно на индикаторы с целью отключения некоторых разрядов при корректировке времени.



Выполнение остальных этапов курсовой работы не должно вызывать затруднений. Для выполнения 6-го этапа следует знать число транзисторов для построения счетчиков и индикаторных преобразователей, а также плотность компоновки транзисторов. Эти данные таковы :

ЭЛЕМЕНТ

^ КОЛИЧЕСТВО ТРАНЗИСТОРОВ

Инвертор

4

И

4

ИЛИ

6

И / ИЛИ

6

исключающее И

12

исключающее ИЛИ

10

D - триггер

20

Счетчик

16 * n , где n - количество двоичных разрядов

Индикаторный преобразователь

400



Число транзисторов, которые могут быть размещены в одном кристалле составляет при средней степени интеграции несколько тысяч, при высокой - несколько сотен тысяч. Нашу оценку будем производить из расчета 1000 транзисторов на одном квадратном миллиметре площади кристалла.

ЗАКЛЮЧЕНИЕ


Дискретные системы управления, внешнее окружение которых взаимодействует с ними посредством событий (импульсных микрокоманд) и условий (потенциальных микрокоманд), очень хорошо распространены в технике и, по-видимому, получат в ближайшее время еще более широкое распространение в связи с внедрением встроенных систем на базе микропроцессоров в бытовую технику, научное оборудование, производственные и технические системы.

Технология разработки таких систем управления может быть основана на принципах, изложенных в настоящих методических указаниях. Однако, использование модели конечного автомата и графа переходов в “чистом” виде, как это делается здесь, возможно только при разработке самых простых систем управления. Ряд недостатков конечно-автоматной модели препятствует ее непосредственному применению в такой технологии:

  1. Обычные графы переходов являются одномерными, они не позволяют использовать понятие “абстракции”, “иерархии”, “глубины”, “модулярности”, вследствие чего не поддерживают пошаговую разработку на основе нисходящей или восходящей стратегий.

  2. Граф переходов конечного автомата слишком детализирован; в нем трудно (громоздко) специфицировать переход из группы состояний, например, высокоуровневое прерывание или установку начального состояния из произвольного состояния.

  3. Граф переходов конечного автомата обычно весьма громоздкий для систем даже среднего уровня сложности: линейный рост сложности (числа функций) системы обычно вызывает экспоненциальный рост числа состояний соответствующего конечного автомата.

  4. Классический конечный автомат не оперирует понятием “значение”, “переменная” и т. д., в то время как такие понятия необходимы при разработке систем управления.

  5. По сути своей конечный автомат - последовательная модель, с помощью которой нельзя выразить параллелизм работы нескольких подсистем и их взаимодействия.

В последние годы в информатике разработаны новые модели и методы спецификаций, которые в значительной степени преодолевают практически все указанные недостатки - так называемые Statecharts. Они могут использоваться как основа технологии проектирования сложных дискретных систем управления. Все эти модели, однако, являются расширением, модификацией базовой модели конечного автомата, и приемы проектирования, изложенные в данном пособии, будут полезны и для работы с этими моделями.

ПРИЛОЖЕНИЕ


Список функций часов, предлагаемых к реализации в дополнение к базовым (отображение и корректировка минут и часов текущего времени) :

A - отображение и корректировка:

0. стандартные (минут и часов)

  1. секунд (без корректировки)

  2. дня недели

  3. числа и месяца

B - корректируемое значение:

  1. мерцает

  2. высвечивается постоянно (остальные индикаторы погашены)

C - корректировка десятков и единиц:

  1. совместная

  2. раздельная

D - режим работы часов:

  1. 12-и часовой (с указанием a.m. или p.m.)

  2. 24-х часовой

E - отключение индикаторов с целью экономии электроэнергии:

  1. отсутствует

  2. присутствует

F - останов часов:

  1. отсутствует

  2. по нажатию кнопки

  3. после состояния корректировки текущего времени

  4. после корректировки минут (только в том случае, если была добавлена хоть одна минута)

Запуск часов - по нажатию кнопки.

G - секундомер:

  1. отсутствует

  2. простой (сброс - запуск - останов)

  3. с фиксацией накопленного времени и возможностью продолжения отсчета секундомера

  4. с возможностью просмотра текущего времени с работающим секундомером

H - звуковая сигнализация:

  1. отсутствует

  2. каждый час в течение четырех секунд

  3. каждые четверть часа в течение секунды

  4. каждый час с выбором мелодии

I - звуковой сигнал в устанавливаемое время (будильник):

  1. отсутствует

  2. в течение десяти секунд (с возможностью отключения режима)

  3. с выбором мелодии (с возможностью отключения режима)

Различных вариантов курсовых работ порядка 12 000. Варианты курсовых работ задаются 9-разрядным числом, каждый разряд которого соответствует одному из подпунктов задания: от A до I. Все эти числа составляют регулярное множество {0,1,2,3}{0,1}{0,1}{0,1}{0,1}{0,1,2,3}{0,1,2,3}{0,1,2,3}{0,1,2}. Например, число 201003212 кодирует следующее задание:

^ Построить функциональную схему часов, которые кроме отображения и корректировки времени (минут и часов) выполняют следующие функции:

А=2: отображают и позволяют корректировать день недели;

^ В=0: корректируемое значение мерцает;

C=1: - корректировка десятков и единиц раздельная;

D=0: - режим работы часов 12-и часовой (с указанием a.m. или p.m.);

E=0: - отключение индикаторов с целью экономии электроэнергии отсутствует;

F=3: - останов часов после корректировки минут (только в том случае, если была добавлена хоть одна минута);

G=2 - присутствует секундомер с фиксацией накопленного времени и возможностью продолжения отсчета;

^ H=1: - звуковая сигнализация каждый час в течение четырех секунд;

I=2: - будильник подает звуковой сигнал в устанавливаемое время с выбором мелодии (с возможностью отключения режима)

ЛИТЕРАТУРА


  1. Л.М. Гольденберг, Ю.Т. Бутыльский, Н.М. Поляк. Цифровые устройства на интегральных схемах в технике связи. -М.: Связь, 1979

  2. В.Г. Лазарев, Е.И.Пийль. Синтез управляющих автоматов. - М. : Энергоатомиздат, 1989

  3. К.А. Нешумова. Электронные вычислительные машины и системы. - М. : Высшая школа, 1989

  4. В.Л. Шило. Популярные цифровые микросхемы. - М.: Радио и связь, 1989

  5. Д.А. Поспелов. Логические методы анализа и синтеза схем. - М. : Энергия, 1974

  6. К.К. Гомоюнов, Т.К. Кракау. Элементы и узлы ЭВМ. - Л.: ЛПИ, 1984



Скачать файл (136.9 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации