Материал: 4183

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Рисунок 7 - Схема последовательного автомата “Секретный замок”.

Теперь нужно убедиться, что схема работает верно. Для этого нужно промоделировать работу схемы на последовательностях. Необходимо пронумеровать все полюса схемы, входные полюса уже пронумерованы, внутренние переменные и сигналы синхронизации С1 и С2 – тоже. Нумеруем выходы каждого из элементов схемы числами от 13 до 26. Для синхронного автомата можно ограничиться логическим моделированием. Построим таблицу, строки которой сопоставим входным наборам, столбцы – номерам полюсов схемы с 1 до 26. Достаточно ограничится установкой автомата в начальное состояние (ху=1), затем входной набор, сохраняющий начальное состояние, а затем последовательность наборов, например, переходов по первой строке автомата, и наконец набор, сохраняющий начальное состояние автомата.

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

11

Практическое задание. Спроектировать последовательностный автомат для варианта i. Построить схему на D-триггерах. Провести логическое моделирование работы схемы на следующей последовательности: установка в начальное состояние, пробег по всем строкам ТПиВ. Итого, 10 наборов.

12

13

Лабораторная работа 3. Синтез счетчиков и регистров по методу Фистера.

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

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

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

Рисунок 8. – Представление регистра в виде структурной схемы

Регистр как элемент структурной схемы, где a1,а2,...,an - совокупность входов регистра, по которым на него подается из внешней схемы двоичный код, подлежащий хранению;

а0 - вход, определяющий значение освобождаемого при сдвиге разряда; r1,r2,...,rn - совокупность выходов регистра, с которых внешняя схема

считывает хранящийся в регистре код;

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

Приведем пример табличного описания регистра совокупностью выполняемых им четырех микроопераций(k=2).

 

 

Микрооперация

Описание

1

2

микрооперации

 

 

 

Хранение кода

ri(t+1):= ri(t),i=1,2,...,n

 

 

прием кода

ri(t+1):=ai(t),i=1,2,...,n

14

 

 

сдвиг влево c заполнением

 

ri(t+1):=ri+1(t),i=1,2,.,n-1

 

 

r1 (t+1):=a0(t).

 

r1(t+1):=a0(t).

 

 

сдвиг вправо с заполнением

разряда

ri+1(t+1):= ri(t),i=2,...,n;

 

 

r1(t+1)= а0(t).

 

r1(t+1):= а0(t).

Пусть для простоты n=2. Тогда алгоритм работы регистра опишется следующей системой двух булевых функций четырех переменных:

Рисунок 9 - Система булевых функций r1 t 1 и r2 t 1 построена по табличному описанию регистра.

Строка

х1(t):=0,

х2(t):=0 соответствует

операции

хранения,

т.

е. ri t 1 : ri t , i 1,2.

На

матричных

формах

точками

представлено

сохранение

единичного значения

каждой из

функций.

В

строках

х1 t : 0, х2 t : 1 и х1 t : 1, х2 t : 1

представлены

переменные

а1 t , а2 t и а0 t , что

вроде

бы

нарушает

привычное

для

нас

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

Далее необходимо записать по матричным формам булевых функций r1 t 1 и r2 t 1 их алгебраические формы и построить схемы в заданном базисе.

r1 t 1 x1 x2r1 t Vx1 x2r2 t Vx1x2a0V x1x2a1 r2 t 1 x1 x2r2 t Vx1 x2a0Vx1x2r1 t V x1x2a2

15