Практические занятия Прикладная теория цифровых автоматов
  • Регистрация
1 1 1 1 1 1 1 1 1 1 Рейтинг 0.00 (0 Голоса)

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

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

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

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

Описание: C:\Documents and Settings\Tatiyana\Мои документы\Ded\1.bmp

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

а0 - вход, определяющий значение освобождаемого при сдвиге разряда;

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

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

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

X1

Х2

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

Описание микрооперации

0

0

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

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

0

1

прием кода

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

1

0

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

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

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

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

1

1

сдвиг вправо с заполнением разряда r1(t+1)= а0(t).

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

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

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

Описание: C:\Documents and Settings\Tatiyana\Мои документы\Ded\1.bmp

Рисунок 78. Система булевых функций 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

Схема регистра

Рисунок 79. Схема регистра.

Описания счетчиков совершенно аналогичны. Схема счетчика на структурных схемах представляется следующей:

Счетчик, выполняющий четыре микрооперации

Рисунок 80.Счетчик, выполняющий четыре микрооперации.

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

n сброс счетчика в 00...0 или установка счетчика в ноль (Счi(t+1)=0, i=1,2,...,n.

n хранение (Счi(t+1)= Счi(t) , i=1,2,...,n;

n прямой счет (Счi(t+1)= Счi(t)+1) , i=1,2,...,n:

n обратный счет (Счi(t+1)= Счi(t) -1) , i=1,2,...,n.

Например, представим счетчик, реализующий следующий набор микро операций.

X1

Х2

Наименование микро операции

Описание микрооперации

0

0

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

счi(t+1):= счi(t),i=1,2,…,к

0

1

сброс кода

ri(t+1):=0,i=1,2,…,к

1

0

+1(прямой счет)

 

1

1

-1(обратный счет)

 

Необходимы дополнительные комментарии к операциям прямого (+1) и обратного (-1) счета. Счетчики могут реализовывать разные последовательности наборов(счет в различных системах) - счет в позиционной двоичной системе счисления, счет в коде Грея и т. д. Можно представить счетчик, реализующий произвольную последовательность n-разрядных наборов(не обязательно содержащую все возможные 2n возможных, но не повторяющихся, т. е. после некоторого очередного набора следует только один возможный.

Пусть наш трехразрядный(к=3) счетчик считает в коде Грея.

сч3

сч2

сч1

0

0

0

0

0

1

0

1

1

0

1

0

1

1

0

1

1

1

1

0

1

1

0

0

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

Логическое описание работы счетчика

Рисунок 81.Логическое описание работы счетчика.

Система булевых функций счетчика такова.

cч1(t+1)=⌐x1⌐x2cч1(t)Vx1⌐x2 (⌐сч2(t)⌐сч3(t)Vcч2(t)сч3(t))Vx1x2(сч2(t)⌐сч3(t)V

⌐cч2(t)сч3(t))

cч2(t+1)=⌐x1⌐x2cч2(t)Vx1⌐x2 (сч1(t)⌐сч3(t)V⌐cч1 (t)сч2(t))Vx1x2(⌐сч1(t)сч2 (t)V

cч1(t)сч3(t))

cч3(t+1)=⌐x1⌐x2cч3(t)Vx1⌐x2 (⌐сч1(t)сч2(t)Vcч1 (t)сч3(t))Vx1x2(⌐сч1 (t)⌐сч2(t)V

cч1(t)сч3(t))

Описание: R32

Рисунок 82. Схема счетчика.

Домашнее задание. Выполнить задание i.

1.  Построить схему трех разрядного регистра на D-триггерах по следующей таблице микроопераций.

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

0

0

Прием кода

0

1

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

1

0

сдвиг циклический влево.

1

1

сдвиг циклический вправо.

2.  Построить схему трех разрядного счетчика в позиционной системе на D-триггерах по следующей таблице микро операций.

X1
X2

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

0

0

Сброс кода

0

1

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

1

0

+1(прямой счет)

1

1

-1(обратный счет)

3.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода

0

1

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

1

0

Сдвиг циклический в право.

1

1

Преобразование в обратный код, r3(t)- знак числа.

4.  Построить схему трех разрядного счетчика на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Сброс кода

0

1

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

1

0

+1(прямой счет в позиционной системе)

1

1

-1(обратный счет в коде Грея)

5.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Преобразование в обратный код, r3 (t)- знак числа.

0

1

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

1

0

Прием кода

1

1

Сдвиг циклический влево

6.  Построить схему трехразрядного счетчика в позиционной системе на D-триггерах по следующей таблице микро операций.

X1
X2

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

0

0

Сброс кода

0

1

-1(обратный счет)

1

0

+1(прямой счет)

1

1

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

7.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода

0

1

сдвиг циклический влево

1

0

Сдвиг вправо с заполнением освобождающегося разряда а0.

1

1

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

8.  Построить схему четырехразрядного счетчика на D-триггерах по следующей таблице микро операций.

X1

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

0

Запись кода а4a3a2a1

1

+1(прямой счет – 0000-0001-0011-0111-1111-1101-1100-1110-0110-0101-0100-0010-1010-1011-1001-1000

9.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода

0

1

сдвиг циклический вправо

1

0

Сдвиг влево с заполнением освобождающегося разряда а0.

1

1

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

10.  Построить схему трехразрядного счетчика в коде Грея на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Занесение кода а3а2а1

0

1

-1(обратный счет)

1

0

+1(прямой счет)

1

1

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

11.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода а3а2а1

0

1

Преобразование в обратный код, r3(t)- знак числа.

1

0

Сдвиг циклический влево.

1

1

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

12.  Построить схему четырехразрядного счетчика на D-триггерах по следующей таблице микроопераций.

X1

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

0

Запись кода а4a3a2a1

1

+1(прямой счет – 0000-0001-0011-0111-0110-0100-1100-1110-1111-1101-1001-1011-1010-0010-1000-0101

13.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода а3а2а1

0

1

Преобразование в обратный код, r3(t)- знак числа.

1

0

Сдвиг вправо с заполнением освобождающегося разряда а0.

1

1

Сдвиг циклический влево.

14.  Построить схему четырехразрядного счетчика на D-триггерах по следующей таблице микроопераций.

X1

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

0

Сброс кода в 0.

1

+1(прямой счет – 0000-0010-0011-0111-0110-0100-1100-1110-1111-1101-1001-1011-1010-1000-0001-0101

15.  Построить схему трех разрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода

0

1

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

1

0

сдвиг циклический влево.

1

1

сдвиг циклический вправо.

16.  Построить схему трех разрядного счетчика в позиционной системе на D-триггерах по следующей таблице микро операций.

X1
X2

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

0

0

Сброс кода

0

1

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

1

0

+1(прямой счет)

1

1

-1(обратный счет)

17.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода

0

1

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

1

0

Сдвиг циклический в право.

1

1

Преобразование в обратный код, r3(t)- знак числа.

18.  Построить схему трех разрядного счетчика на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Сброс кода

0

1

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

1

0

+1(прямой счет в позиционной системе)

1

1

-1(обратный счет в коде Грея)

19.  Построить схему трех разрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Преобразование в обратный код, r3 (t)- знак числа.

0

1

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

1

0

Прием кода

1

1

Сдвиг циклический влево

20.  Построить схему трехразрядного счетчика в позиционной системе на D-триггерах по следующей таблице микро операций.

X1
X2

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

0

0

Сброс кода

0

1

-1(обратный счет)

1

0

+1(прямой счет)

1

1

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

21.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода

0

1

сдвиг циклический влево

1

0

Сдвиг вправо с заполнением освобождающегося разряда а0.

1

1

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

22.  Построить схему четырехразрядного счетчика на D-триггерах по следующей таблице микро операций.

X1

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

0

Запись кода а4a3a2a1

1

+1(прямой счет – 0000-0001-0011-0111-1111-1101-1100-1110-0110-0101-0100-0010-1010-1011-1001-1000

23.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода

0

1

сдвиг циклический вправо

1

0

Сдвиг влево с заполнением освобождающегося разряда а0.

1

1

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

24.  Построить схему трехразрядного счетчика в коде Грея на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Занесение кода а3а2а1

0

1

-1(обратный счет)

1

0

+1(прямой счет)

1

1

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

25.  Построить схему трехразрядного регистра на D-триггерах по следующей таблице микроопераций.

X1
X2

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

0

0

Прием кода а3а2а1

0

1

Преобразование в обратный код, r3(t)- знак числа.

1

0

Сдвиг вправо с заполнением освобождающегося разряда а0.

1

1

Сдвиг циклический влево.

Добавить комментарий


Защитный код
Обновить

По темам:

История Украины

Культурология

Высшая математика

Информатика

Охотоведение

Статистика

География

Военная наука

Английский язык

Генетика

Разное

Технологиеские темы

Украинский язык

Филология

Философия

Химия

Экология

Социология

Физическое воспитание

Растениевосдство

Педагогика

История

Психология

Религиоведение

Плодоводство

Экономические темы

Бухгалтерские темы

Маркетинг

Иностранные языки

Ветеринарная медицина

Технические темы

Землеустройство

Медицинские темы

Творчество

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