Порядком счета
Рассмотрение процедуры проектирования счетчиков выполним на примере проектирования счетчика с модулем счета К=10 с «естественным» двоичным порядком счета. Затем сформулируем последовательность операций, реализуемых в общем случае при проектировании счетчиков с любым модулем счета и любым порядком счета, после чего в параграфе 10.10 на конкретных примерах проиллюстрируем применение данного обобщения.
Для построения счетчиков будем использовать двухступенчатые Т - и JK -триггеры, чтобы исключить действие помех и опасных состязаний сигналов на элементы памяти. В указанных триггерах формирование функций возбуждения, а, следовательно, и состязаний сигналов завершается до момента поступления очередного тактового сигнала, вызывающего переключение. Благодаря этому схема счетчика становится более устойчивой к действию помех и опасных состязаний сигналов.
Проектирование заданной схемы двоично-десятичного счетчика выполним на двухступенчатых триггерах JK -типа со встроенной логикой 3И по входам J - и К - соответственно. Это решение вытекает из того, что для построения указанного счетчика необходимо иметь всего 4 триггера (n= log2K =log210 4), а встроенная логика 3И полностью обеспечивает
|
|
Таблица 10.10
№ импульса | Код счетчика | |||
Q3 | Q2 | Q1 | Q0 | |
0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 |
2 | 0 | 0 | 1 | 0 |
3 | 0 | 0 | 1 | 1 |
4 | 0 | 1 | 0 | 0 |
5 | 0 | 1 | 0 | 1 |
6 | 0 | 1 | 1 | 0 |
7 | 0 | 1 | 1 | 1 |
8 | 1 | 0 | 0 | 0 |
9 | 1 | 0 | 0 | 1 |
10 | 0 | 0 | 0 | 0 |
56
организацию параллельных цепей переноса синхронного четырехразрядного счетчика.
Анализ условий задания показывает, что проектируемый счетчик должен выполнять счет входных импульсов в соответствии с таблицей 10.10, где каждой зафиксированной на выходах его триггеров двоичной кодовой комбинации {Q3Q2Q1Q0} соответствует количество счетных импульсов, поступивших на вход счетчика за данный цикл.
Проектируемый синхронный двоично-десятичный счетчик - это частный случай тактируемой последовательностной схемы (конечного автомата), поэтому его синтез включат основные этапы, характерные для синтеза указанных схем, а именно:
• Определение типа схемы и построение ее графа переходов;
• Создание таблицы переходов, в которой отображают код данного состояния схемы {Qn0, Qn1,QnN} до поступления очередного тактового сигнала (n -й момент времени) и код последующего состояния {Q0n+1, Q1 n+1,…, Qnn+1} поnсле его поступления в (n+1)- ймомент времени.
• Составление таблицы истинности для комбинационных логических схем, обеспечивающих формирование сигналов возбуждения на входах триггеров таким образом, чтобы j -й триггер мог переключаться в (n +1)-й момент времени из состояния Qnj в состояние Qjn+1;
|
|
• Перенесение информации из таблицы истинности в диаграммы Вейча-Карно (ДВК). При этом указанные ДВК создают для каждого входа каждого триггера;
• Нанесение контуров на ДВК и получение минимизированных уравнений для функций возбуждения по каждому входу каждого триггера, рассматривая в качестве аргументов значения Qn0,Qn1,QnN;
• Реализация минимизированных уравнений в выбранном базисе;
• Построение проектируемой схемы.
Граф переходов проектируемого счетчика представлен на рис. 10.23, а таблица 10.11 является его таблицей переходов. Указанная таблица построена с использованием таблицы 10.10 и графа рис. 10.23. В каждой строке таблицы 10.11 указаны состояния триггеров Q3n,Q2n,Q1n,Q0n до подачи очередного синхронизирующего импульса и состояния Q3n+1, Q2n+1, в которые должны перейти триггеры счетчика после окончания этого импульса. При этом сигнал Q3 соответствует сигналу на
57
выходе триггера старшего разряда, а сигнал Q0 формируется на выходе триггера младшего разряда счетчика.
В соответствии с изложенным выше построение проектируемого счетчика выполняется на основе двухступенчатых JK -трштеров со встроенной логикой ЗИ. Поэтому при определении функций триггеров должны быть получены логические соотношения следующего вида:
Где Jj*, Kj* - выходы встроенных логических элементов И j-ro триггера в соответствии с рис. 10.21(6).
Таким образом, таблица истинности 10.12 для КЛС, формирующих функции возбуждения триггеров счетчика, должна определять восемь функций вида (10.47).
Где * - сигнал «0» или «1» на соответствующем входе триггера, например, запись «1*» означает, что здесь J*=l, a K*=(0vl);
N/R - означает, что сигналы по J*,K* - входам либо сохраняют состояние триггера (J*=0, K*=0), либо соответствуют его установке в «0» (J*=0; K*=l);
58
N/S - означает, что сигналы по J*, К* - входам либо сохраняют состояние триггера (J*=K*=0), либо соответствуют его установке в «1» (J*=l, K*=0);
S/T - означает, что переключение триггера из состояния Qn=0 в состояние Qn+I=l реализуется либо за счет режима установки (J*=l, К*=0), либо за счет его переключения в режиме Т -тригтера (J*=K*=1);
R/T — означает, что переключение триггера из состояния Qn=l в состояние Qn+1=0 реализуется либо за счет режима сброса в «0» (J*=0, К*=1), либо за счет его переключения в режиме Т -тригтера (J*=K*=1).
Заметим, что в соответствии с ранее принятой индексацией входы J*0, К*0 принадлежат триггеру младшего разряда счетчика ТТ1, а входы J*3, К*з - триггеру его старшего разряда ТТ4.
Данное состояние | Следующее состояние | ||||||
Q3n | Q2n | Q1n | Q0n | Qn+13 | Qn+12 | Qn+11 | Qn+13 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 |
0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 |
0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 |
0 | 1 | 0 | 1 | 0 | 1 | 1 | 0 |
0 | 1 | 1 | 0 | 0 | 1 | 1 | 1 |
0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
Таблица 10.11
Обращаем Ваше внимание на то, что записи N/R, N/S, S/T и R/T, сопровождающие в таблице 10.12 записи сигналов возбуждения J*j, К*j являются вспомогательными. Они позволяют проконтролировать правильность задания комбинаций сигналов на входах возбуждения для реализации переключения триггера в состояние Qn+1. Эти записи могут быть опущены внимательным и опытным проектировщиком.
Анализ таблицы 10.12 показывает, что, если во всех строках ее крайнего правого столбца для сигналов J*0, K*0 символ «*» заменить на «1», то получается, что независимо от данного и следующего состояния счетчика на входах триггера младшего разряда ТТ1 должно реализоваться J*0=K*0=l=const. Таким образом, функция возбуждения триггера ТТ1 может быть представлена в виде:
J*0=l; K*0=l (10.48)
|
|
59
|
Для получения функций возбуждения J*1, J*2, J*3, К*1, К*2, К*3 триггеров ТТ2, ТТЗ, ТТ4 переносим информацию из таблицы 10.12 в диаграммы Вейча-Карно рис. 10.24 и выполняем минимизацию логических уравнений указанных функций. В результате имеем:
J *1= 3·Q0; K*1= Q0
J*2= Q1·Q0; K*2= Q,1·Q0 (10.49)
J*3= Q2·Q1·Q0; K*3= Q0
Таблица 10.12
Данное состояние счетчика | Следующее состояние счетчика | Состояние выходов логики J*, К* (воздействие на состояние триггеров) | |||||||||
Q3 | Q2 | Q1 | Q0 | Q3 | Q2 | Q1 | Q0 | J*3К*3 | J*2K*2 |J*1К*1 | J*0K*0 | |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0*(N/R) | 0*(N/R) | 0*(N/R) | 1*(S/T) |
0 | 0 | 0 | 1 | 0 | 0 | ] | 0 | 0*(N/R) | 0*(N/R) | 1*(S/T) | *1(R/T) |
0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0*(N/R) | 0*(N/R) | *0(N/S) | 1*(S/T) |
0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 0*(N/R) | 1*(S/T) | *1(R/T) | *1(R7T) |
0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0*(N/R) | *0(N/S) | 0*(N/R) | 1*(S/T) |
0 | 1 | 0 | 1 | 0 | 1 | ] | 0 | 0*(N/R) | *0(N/S) | 1*(S/T) | *1(R/T) |
0 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 0*(N/R) | *0(N/S) | *0(N/S) | 1*(S/T) |
0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1*(S/T) | *1(R7T] | *1(R/T) | *1(R/T) |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | *0(N/S) | 0*(N/R) | 0*(N/R) | 1*(S/T) |
1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | *1(R/T) | 0*(N/R) | 0*(N/R) | *1(R/T) |
1 | 0 | 1 | 0 | Эти состояния не (предусмотрены алгоритмом работы счётчика с модулем К=10
CMC дуле мК= 10 | ** | ** | ** | ** | |||
1 | 0 | 1 | 1 | ** | ** | ** | ** | ||||
1 | 1 | 0 | 0 | ** | ** | ** | ** | ||||
1 | 1 | 0 | 1 | ** | ** | ** | ** | ||||
1 | 1 | 1 | 0 | ** | ** | ** | ** | ||||
1 | 1 | 1 | 1 | ** | ** | ** | ** |
Функции возбуждения (10.48), (10.49) определяют соединения, которые должны быть выполнены между выходами триггеров и встроенной логикой для построения проектируемого двоично-десятичного счетчика на основе JK -триггеров со встроенной логикой ЗИ. Схема проектируемого счетчика, в которой реализованы указанные соединения, показана на рис.10.25. В данной схеме установка счетчика в «нулевое» состояние осуществляется подачей «0»- сигналов на асинхронные входы всех триггеров, а счетные операции - подачей импульсных сигналов на их синхровходы С.
60
61