Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ПТЦА - Лекции / Лекция 12

.pdf
Скачиваний:
40
Добавлен:
15.02.2015
Размер:
187.73 Кб
Скачать

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

Элемент ЭВМ — это наименьшая конструктивная и функциональная ее часть, которая используется при логическом проектировании и технологической реализации компьютера.

Для построения ЭВМ применяются функционально полные системы элементов, включающие наборы универсальных вентилей для построения произвольных комбинационных логических схем, и элементарные автоматы с полными системами переходов и выходов. В качестве элементарных автоматов, как правило, используются триггеры, а в качестве базовых вентилей — логические схемы для основных булевых операций. Наборы элементов для построения цифровых вычислительных устройств содержат также элементы для выполнения дополнительных логических операций, запоминающие элементы и элементы для усиления, восстановления и формирования сигналов стандартной формы.

По своему назначению элементы ЭВМ делятся на логические, запоминающие и вспомогательные.

К логическим элементам относятся логические схемы (конъюнктор, дизъюнктор, инвертор, штрих Шеффера, стрелка Пирса и другие) и триггеры.

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

Некоторые элементы ЭВМ (шифраторы, дешифраторы, мультиплексоры, демультиплексоры и т. д.) представляют собой автоматы без памяти, т. е. комбинационные схемы. Другими элементами являются упоминавшиеся выше элементарные автоматы с памятью (триггеры). Наконец, большую группу элементов ЭВМ образуют так называемые последовательные логические схемы, которые в терминах прикладной теории автоматов называются цифровыми автоматами с полной системой переходов и выходов. К последовательным логическим схемам относятся различные виды регистров, счетчиков, сумматоров и т. д. Название схем подобного типа означает, что состояние их выхода зависит от того, в какой последовательности на входы схемы подаются входные сигналы и каково было ее предшествующее внутреннее состояние. В отличие от комбинационных схем, состояние выхода Y последовательной логической схемы (цифрового автомата) зависит не только от текущего состояния входа, но и от внутреннего состояния Q схемы:

Y =F X ,Q .

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

Физически элементы ЭВМ представляют собой интегральные микросхемы, сформированные на кристалле полупроводника (например, кремния) по соответствующей технологии. Из элементов, выполненных на интегральных схемах, составляют функциональные узлы и блоки, являющиеся компонентами устройств ЭВМ. К последним относятся центральный процессор, оперативная память, каналы ввода вывода информации, контроллеры, различные внешние устройства. Все они составляют структурную схему ЭВМ.

Общие подходы к анализу и синтезу схем триггеров

Для представления и обработки информации в цифровых системах необходимо устройство, способное хранить логическое состояние (0 или 1) неопределенно долго. Такие устройства образуют элементарную разновидность памяти (фиксатор), а поскольку их выход может находиться в одном из двух устойчивых состояний, их называют бистабильными схемами или триггерами ((Trigger или Flip-Flop) слово «триггер» по-английски означает «спусковое устройство, курок»). Физически триггеры обычно реализуются на штрихах Шеффера или на стрелках Пирса (т.е. на логических элементах И-НЕ, ИЛИ-НЕ). Исходя из таблиц истинности

штриха Шеффера и стрелки Пирса, легко убедиться в том, что каждый из этих элементов преобразуется некоторым логическим уровнем (логическим нулем или логической единицей). Действие логического уровня на одном из входов данного элемента полностью определяет логический уровень на выходе. При этом логический уровень на выходе не изменяется, какие бы комбинации логических уровней не подавались на другие входы элемента. Таким логическим уровнем для элемента И-НЕ является уровень логического нуля, а для элемента ИЛИ НЕ — уровень логической единицы. Действительно, если на один из входов элемента И—НЕ подан логический нуль, то на его выходе возникает логическая единица, независимо от того, каковы логические уровни на других входах. Аналогично логическая единица, поданная на один из входов элемента ИЛИ-НЕ, установит на выходе уровень логического нуля, который не будет зависеть от логических уровней, действующих на других входах этого элемента.

Логические уровни, которые, действуя на одном из входов элемента, независимо от уровней на других входах однозначно задают логический уровень на его выходе, называются активными логическими уровнями. Таким образом, активным логическим уровнем для элемента И-НЕ является уровень логического нуля, а для элементов ИЛИ-НЕ — уровень логической единицы.

Поскольку при подаче активного логического уровня на один из входов элемента определяется уровень на его выходе (выходной уровень элемента при этом не зависит от уровней на других входах), можно говорить, что при этом происходит логическое отклонение остальных входов элемента. Уровни, обратные активным, называются пассивными логическими уровнями. Пассивным для элемента И-НЕ служит уровень логической единицы, а для элемента ИЛИ-НЕ — уровень логического нуля. При действии на одном из входов пассивного логического уровня уровень на выходе элемента определяется логическими уровнями на других его входах.

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

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

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

входы. Установочные входы устанавливают состояние триггера независимо от состояния других входов. Входы управления разрешают запись данных, подающихся на информационные входы.

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

По способу организации логических связей и в зависимости от типов входов выделяется несколько типов триггеров. Среди них наибольшее распространение в цифровой электронике получили RS-триггеры, T-триггеры, D-триггеры, JK-триггеры и т. д., где буквы R, S, T, D, J, K расшифровываются следующим образом:

R (reset — сброс) — раздельный вход установки триггера в состояние 0;

S (set — установка) — раздельный вход установки триггера в состояние 1;

T (toggle — ключ, релаксатор) — счетный вход триггера, переключатель триггера в противоположное состояние аналогично счету по модулю 2 (реализует операцию сложения чисел по модулю 2);

D (delay — задержка) — информационный вход установки триггера в состояние, соответствующее логическому уровню на этом входе; реализует функцию временной задержки сигнала;

J (jerk — внезапное включение) — раздельный вход установки универсального триггера в состояние 1;

К (kill — внезапное отключение) — раздельный вход установки универсального триггера в состояние 0.

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

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

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

Основными параметрами любого типа триггеров являются максимальная длительность входного сигнала, время задержки переключения триггера из одного состояния в другое и разрешающее время триггера. Состояние триггера определяется выходным (прямым Q или инверсным Q ) сигналом. Триггер является элементарным автоматом Мура, поэтому принципы его функционирования можно описывать всеми способами, применяемыми для описания таких автоматов. Чаще всего функциональную зависимость между входными и выходными сигналами в двух соседних тактах t и t 1 работы триггера представляют таблицами переходов. В этих таблицах используют следующие обозначения: Qt

предшествующее состояние выхода; Qt 1новое состояние, устанавливающееся после перехода (возможно, Qt 1=Qt ); × − безразличное состояние сигнала (0 или 1); (дефис)

— неопределенное состояние. Поскольку выходной сигнал триггера отождествляется с его состоянием, таблица переходов триггера одновременно является и его таблицей выходов. Проведем анализ функционирования RS-триггеров и синтез соответствующих схем, построенных на элементах И-НЕ и ИЛИ НЕ. Схемы RS-триггеров составляют основу для построения других типов триггеров и являются основными узлами для построения последовательных схем.

Рассматриваемый RS-триггер имеет два установочных входа: вход установки S и вход сброса R, на которые подаются входные сигналы от внешних источников питания. При подаче на

вход установки

активного

логического уровня триггер

устанавливается

в

состояние

1

Q=1, Q=0

,

а при подаче активного

уровня

на

вход сброса —

в

состояние

0

 

. Если подать на оба входа установки (возбуждения) пассивный уровень, то

Q=0, Q=1

 

 

сохранять

предыдущее

состояние

выходов:

Q=0 Q=1

либо

триггер будет

Q=1 Q=0

 

 

 

 

 

 

 

 

 

 

 

. Каждое состояние является устойчивым и поддерживается за счет действия

 

 

 

 

 

 

 

 

 

 

 

 

обратных связей.

 

 

 

недопустимой

 

 

 

 

 

Для триггеров

рассматриваемого типа является

одновременная

подача

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

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

Существует два вида RS-триггеров: асинхронные и синхронные. Рассмотрим схему и функционирование асинхронного RS-триггера. На рисунке 1 показаны схемы асинхронного RS-триггеpa, выполненные на элементах ИЛИ НЕ и И НЕ. На рисунке 2 приведены условные графические изображения соответствующих триггеров. Буква Т означает, во-первых, что изображен именно триггер, а во-вторых, что этот триггер однотактный (на практике встречаются и двухтактные триггеры, на условном графическом изображении которых ставится две буквы Т).

Рисунок 1 — Логическая структура асинхронного RS-триггера: а) на стрелках Пирса; б) на штрихах Шеффера

Рисунок 2 — Условное графическое изображение асинхронного RS-триггера: а) на стрелках Пирса; б) на штрихах Шеффера.

Для схемы, изображенной на рисунке 1, а, активным уровнем является уровень логической единицы, а для схемы, изображенной на рисунке 1, б, — уровень логического нуля. Схема, изображенная на рис. 3.13, б, получила название асинхронного RS-триггера с инверсными входами.

Схема RS-триггера, изображенная на рисунке 1, а, состоит из двух логических элементов ИЛИ-НЕ (точнее, 2ИЛИ-НЕ), связанных таким образом, что выход каждого элемента подключен к одному из входов другого. Подобное соединение элементов в устройстве обеспечивает два устойчивых состояния, в чем легко убедиться. Действительно, пусть на входах R и S действуют постоянные для элементов ИЛИ-НЕ уровни логического нуля, которые не влияют на состояние триггера. В состоянии 0 триггера на выходе элемента A

Q=0 . Этот уровень подается на вход элемента B; в результате на обоих входах элемента В действует уровень логического нуля и на его выходе Q=1 . С выхода элемента В уровень логической единицы поступает на вход элемента A, что и обеспечивает на выходе последнего уровень 0. Это одно из устойчивых состояний триггера. В состоянии 1 триггера на выходе элемента A Q=1 , что обуславливает на выходе элемента В Q=0 ; при этом на обоих выходах элемента А действуют уровни 0, что и обеспечивает на его выходе уровень логической единицы. Как показал анализ работы триггера, в каждом из его состояний элементы А и В оказываются в противоположных состояниях.

Переключение триггера из одного устойчивого состояния в другое происходит при подаче активных сигналов на его входы. Под действием уровня R=1 элемент А установится в состояние, при котором на его выходе Q=0 , следовательно, на инверсном выходе Q=1 и, таким образом, триггер устанавливается в состояние 0. Если триггер и прежде, до подачи

сигнала

R=1 , находился в состоянии 0, то его состояние не изменяется. Если же триггер

находился в состоянии 1, то при подаче сигнала R = 1 происходит переключение элемента А и

на его

выходе устанавливается уровень Q=0 . Далее этот уровень действует

на вход

элемента B, переключает его и на выходе элемента В устанавливается уровень Q=1

, после

чего триггер оказывается установленным в состояние 0. Таким образом, при переключении триггера из одного состояния в другое его элементы последовательно переключаются, а время переключения равно удвоенному среднему времени задержки распределения сигнала в логическом элементе ИЛИ НЕ.

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

Процесс установки триггера в состояние 1 при подаче на вход S уровня логической единицы аналогичен описанному выше процессу.

Одновременная подача на входы R и S активных уровней 1 не допускается, поскольку при этом на обоих выходах устанавливается уровень 0, а после снятия его с входов активных уровней состояние триггера оказывается неопределенным.

Как уже отмечалось, условия переходов триггеров из одного состояния в другое (алгоритм работы) можно описать табличным, аналитическим или графическим способами. Табличное описание работы RS-триггера, заданного схемой на рисунке 1, а, представлено в таблицах 1 (таблица переходов) и 2 (таблица функций возбуждения).

Таблица 1

R

S

Qt 1

0

0

Qt

0

1

1

 

 

 

1

0

0

 

 

 

1

1

 

 

 

Таблица 2

Qt

Qt 1

R

S

0

0

×

0

 

 

 

 

0

1

0

1

 

 

 

 

1

0

1

0

 

 

 

 

1

1

0

×

 

 

 

 

Использованные в таблицах 1 и 2 обозначения были введены выше. Запрещенной является комбинация входных сигналов, вызывающая неопределенное состояние триггера. Для асинхронного триггера эта комбинация может быть выражена условием RS = 0.

Для удобства нахождения аналитического описания функционирования рассматриваемого триггера объединим таблицы 1 и 2 в одну (таблица 3), на основе которой с целью минимизации характеристического уравнения составим карту Карно.

Таблица 3

Qt

R

S

Qt 1

Примечание

0

0

0

0

Хранение 0

 

 

 

 

 

0

0

1

1

Установка 1

 

 

 

 

 

0

1

0

0

Подтверждение 0

 

 

 

 

 

0

1

1

×

Неопределенное состояние

 

 

 

 

 

1

0

0

1

Хранение 1

 

 

 

 

 

1

0

1

1

Подтверждение 1

 

 

 

 

 

1

1

0

0

Установка 0

 

 

 

 

 

1

1

1

×

Неопределенное состояние

 

 

 

 

 

Аналитическое описание (характеристическое уравнение) асинхронного RS-триггера можно

получить из таблицы 3, доопределив в ней значения состояния

Qt 1 , соответствующие

запрещенным комбинациям R и S , сначала единицами,

а затем нулями. Для

минимизации полученных функций воспользуемся соответствующими картами Карно (рисунок 3).

Рисунок 3 — Карты Карно: а) доопределение запрещенных сигналов единицами; б) доопределение запрещенных сигналов нулями

Получаем два характеристические уравнения, описывающие работу асинхронного RSтриггера:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

;

(1)

Qt 1=S Q R=S Q R

=S

Q R =S

/ Q/ R

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(2)

Qt 1=R S R Q= R S Q =R Q S =R Q S =R Q S ;

Qt 1=S Q R=S Q R =S Q R

Правая часть уравнения (1) выражена через штрих Шеффера, а правая часть уравнения (2) — через стрелку Пирса. Уравнению (2) соответствует схема RS-триггера, изображенная на рисунке 1, а, а уравнению (1) — схема, изображенная на рисунке 1, б.

Заметим,

что зависимость состояния

Qt 1 на

t 1 -м такте работы триггера от

состояния

Qt

на такте

t

его

работы

характеризует свойство запоминания

предшествующего состояния.

Описание работы рассматриваемого RS-триггера можно дополнить графом, изображенным на рисунке 4.

Из рисунка 4 видно, что схема, находящаяся в состоянии

Q=0

, сохраняет это состояние

как при воздействии входного набора R=1, S=0 ,

так и

при воздействии набора

R=0 , S=0 .

 

 

Рисунок 4 — Графический способ описания работы асинхронного RS-триггера

Если же на

вход схемы, находящейся в

состоянии Q=0 , подействовать набором

R=0, S =1

, то она переходит в состояние

Q=1 и сохраняет его при входных наборах

R=0, S =0, R=0, S =1 и т. д.

 

Рассмотрим теперь синхронный RS-тригтер (рисунок 5). К его входам S и R подключены конъюнкторы, благодаря которым передача активных уровней информационных входов S и R синхронного триггера на входы S и R входящего в его состав асинхронного триггера осуществляется только при наличии уровня логической единицы на синхронизирующем входе С.

Рисунок 5 — Схема синхронного RS-триггера.

Таким образом, при С=0 активные уровни на входы асинхронного триггера не передаются и триггер сохраняет ранее установленное в нем состояние Qt . При С=1 состояние триггера определяется действующими на входах уровнями так же, как и в рассмотренном выше асинхронном RS-триггере.

Для нормальной работы синхронного RS-триггера требуется, чтобы за время действия логической единицы на синхронизирующем входе С уровни на информационных входах S и R оставались неизменными. Смена уровней на входах допускается лишь в то время, когда

С=0 и триггер на эти уровни не реагирует.

Приведем характеристики некоторых других наиболее распространенных в системах интегральных логических элементов типов триггеров.

Триггеры типа JK являются универсальными триггерами, у которых входы J и К в отдельности реализуют раздельное управление и совместно счетный режим. Триггер JK-типа имеет более сложную по сравнению с RS-триггером структуру и более широкие функциональные возможности. Помимо информационных входов J и К и прямого и

инверсного выходов Q и

Q

, JK-триггер имеет вход управления С (синхронизирующий,

 

 

 

тактирующий или счетный вход), а также асинхронные установочные S- и R-входы. Обычно активными уровнями установочных сигналов являются нули. Установочные входы обладают приоритетом перед остальными. Активный уровень сигнала на входе S устанавливает триггер в состояние Q=1 , а активный уровень сигнала на входе R — в состояние Q=0 , независимо от сигналов на остальных входах.

Если на входы установки одновременно подать пассивный уровень сигнала, то состояние JKтриггера будет изменяться по фронту импульса на счетном входе в зависимости от состояния входов J и К так, как это показано в таблицах 4 (таблица переходов) и 5 (таблица функций возбуждения).

Таблица 4

J

K

Qt 1

 

0

0

Qt

 

0

1

0

 

 

 

 

 

1

0

1

 

 

 

 

 

1

1

Qt

 

 

 

 

 

 

 

 

Таблица 5

 

 

 

Qt

Qt 1

J

K

0

0

0

X

 

 

 

 

0

1

1

X

 

 

 

 

1

0

X

1

 

 

 

 

1

1

X

0

 

 

 

 

Полную таблицу истинности, описывающую функционирование JK-триггера, можно представить в виде таблицы 6.

Таблица 6

Qt

J

K

Qt 1

0

0

0

0

 

 

 

 

0

0

1

0

 

 

 

 

0

1

0

1

 

 

 

 

0

1

1

1

 

 

 

 

1

0

0

1

 

 

 

 

1

0

1

0

 

 

 

 

1

1

0

1

 

 

 

 

1

1

1

0

 

 

 

 

Из соответствующей карты Карно нетрудно получить одно из характеристических уравнений JК-триггера:

Qt 1=J Q Q K

или

Qt 1=J Q Q K .

 

 

 

 

 

Переведя эти уравнения в логический базис элементов, на которых строится JK-триггер, мы получим структурное уравнение триггера, определяющее конфигурацию его схемы. Триггеры типа JK отличаются от RS-триггеров тем, что при значениях входной информации, запрещенных для RS-триггеров, они инвертируют хранимую в них информацию.

К универсальным триггерам с управляемым приемом информации по одному входу относятся D-триггеры (элемент задержки). Триггер D-типа имеет один информационный вход D. Информация с входа D заносится в триггер по положительному перепаду импульса на счетном входе С и сохраняется до следующего положительного перепада на входе С.

Помимо счетного С и информационного D входов D-триггер снабжен асинхронными установочными R- и S-входами. Установочные входы приоритетны. Они устанавливают D- триггер независимо от сигналов на входах С и D. Характеристическое уравнение D-триггера имеет вид Qt 1=D . Это уравнение показывает, что состояние триггера на t 1 -м такте работы равно входному сигналу в момент, предшествующий тактовому перепаду сигнала С.

Таблица переходов D-триггера

D

Qt

Qt 1

0

0

0

 

 

 

0

1

0

 

 

 

1

0

1

 

 

 

1

1

1

 

 

 

T-триггер – триггер со счетным входом – имеет один информационный вход Т и один выход Q и осуществляет суммирование по модулю два значений сигнала T и состояния Q в заданный момент времени.

Условное обозначение и таблица переходов T-триггера представлена на рисунке 6.

Рисунок 6

Таблица переходов T-триггера

T

Qt

Qt 1

0

0

0

 

 

 

0

1

1

 

 

 

1

0

1

 

 

 

1

1

0

 

 

 

Триггер со счетным входом или T-триггер промышленностью не выпускается, а реализуется с помощью D или JK-триггеров.

Преобразования триггеров

Функциональная схема D-триггера может быть получена из схемы JK-триггера путем подключения к входу J входа K через инвертор D= J =К . Для реализации схемы T- триггера JK-триггер включен по схеме на рисунке 6.

D-триггер также преобразуется в T-триггер путем введения обратной связи с инверсного входа на вход D. Тогда Qt 1=D , но D=Qt и, следовательно, Qt 1=Qt , т. е. новое значение на выходе триггера является инверсией старого с каждым поступлением положительного перепада тактового импульса С.

Обозначение D- и JK-триггера

Рисунок 6 — Преобразование JK-триггера в D-триггер.

Преобразование JK-триггера в T-триггер.

Преобразование D-триггера в T-триггер.

Соседние файлы в папке ПТЦА - Лекции