ПТЦА - Лекции / Лекция 14
.pdf
Синтез счетчиков
Счетчиком называется дискретное устройство, осуществляющее счет числа поступивших на его вход импульсов и хранение этого числа, до сброса, счетчика в исходное состояние или до продолжения, счета.
Коэффициент пересчета K счет (или модуль) счетчика определяет число его возможных устойчивых состояний, т. е. его емкость. У двоичных счетчиков
K счет=2n , где n− целое число. Все существующие |
счетчики |
можно |
классифицировать по нескольким признакам: |
|
K счет |
– по основанию системы счисления (двоичные счетчики, у которых |
||
кратно целой степени двойки, и десятичные с K счет=10 |
); |
|
–по направлению счета (суммирующие, вычитающие и реверсивные);
–по способу приема входных сигналов (синхронные и асинхронные);
–по способу построения цепей межразрядных переносов (с последовательным, сквозным, параллельным и групповым переносами) и т. д.
На рисунке 1 приведена схема четырехразрядного асинхронного счетчика на JK-триггерах с последовательным переносом единицы в старший разряд. Его коэффициент пересчета, т. е. после каждого 16-го импульса счетчик устанавливается в исходное состояние. Для организации переноса прямые выходы i-го триггера соединяются с тактовым входом (i+1)-го триггера.
Рисунок 1 – Схема четырехразрядного асинхронного счетчика на JK-триггерах с последовательным переносом единицы в старший разряд.
Установка счетчика в исходное (нулевое) состояние осуществляется путем подачи отрицательного импульса на шину «Уст. 0», подключенную к входам R всех триггеров, или подключением шины «Уст. 0» через кнопку к корпусу. При поступлении первого импульса (положительного или отрицательного) на вход счетчика первого триггера последний переходит в состояние 1 при изменении на его входе С потенциала с высокого на низкий уровень. При этом второй триггер остается в нулевом состоянии поскольку на его входе С потенциал изменяется с низкого уровня на высокий. После второго входного импульса первый триггер переходит в нулевое состояние, а потенциал на его единичном выходе оказывается равен Q1 ; следовательно, и на входе C второго триггера потенциал изменяется с высокого на низкий и он переключается в единичное состояние. Таким образом, изменение состояния каждого последующего триггера происходит только в случае, когда предыдущий триггер изменяет свое состояние с единичного на нулевое. Тогда перенос единицы осуществляется последовательно от разряда к разряду. Поэтому в счетчике с последовательным переносом время переходного процесса (время формирования кода на
выходных шипах) зависит от его разрядности и числа поступивших входных импульсов.
Основным недостатком счетчика с последовательным переносом является низкое быстродействие. Повышение быстродействия достигается организацией сквозных и параллельных переносов. На рисунке 2 приведена схема синхронного двоичного счетчика со сквозным переносом.
Рисунок 2 – Схема синхронного двоичного счетчика со сквозным переносом. Еще более высоким быстродействием обладает счетчик с параллельным переносом. Схема такого счетчика приведена на рисунок 3.
Рисунок 3 – Схема счетчика с параллельным переносом.
Всинхронном двоичном счетчике со сквозным переносом входной сигнал одновременно подается на входы всех триггеров. Переключение любого триггера данного счетчика возможно только в случае, когда к объединенному JК-входу приложен единичный сигнал. Подобная ситуация возникнет лишь тогда, когда все предшествующие триггеры младших разрядов находятся в состоянии 1. Длительность переходного процесса в счетчике со сквозным переносом определяется временем переключения одного триггера и задержкой распространения сигнала в последовательной цепи элементов И. Задержка в элементах И меньше, чем в триггере, поэтому время установления кода на выходных шинах будет меньше, чем в счетчике с последовательным переносом.
Всчетчике с параллельным переносом длительность переходного процесса постоянна и определяется временем переключения одного триггера и задержкой сигнала в одной схеме И. Однако с возрастанием номера триггера прогрессивно
увеличивается и число входов элемента И входной логики. Поэтому разрядность счетчика с параллельным переносом невелика и редко превышает четыре разряда.
Рассмотренные синхронные счетчики со сквозным переносом и счетчики с параллельным переносом K счет , кратный степени числа 2. Для построения счетчика с произвольным коэффициентом пересчета в его схему вводят обратные связи, позволяющие уменьшить число возможных состояний.
Рисунок 4 – Схема счетчика с коэффициентом пересчета.
Для этого достаточно на входы схемы И-НЕ подать сигналы с прямых выходов всех триггеров, принимающих при коде K счет=5 (0101 в двоичной системе счисления) единичные состояния. Выходной сигнал такой схемы сбрасывает счетчик в нулевое состояние.
Часто требуется, чтобы счетчик осуществлял не суммирование. а вычитание количества поступающих импульсов из некоторого заранее занесенного в него кода. Такие счетчики называются вычитающими, или счетчиками обратного счета.
Для получения вычитающего счетчика на JK-тpиггepax сигналы для цепей переноса нужно снимать не с прямых, а с инверсных выходов триггеров. Отсюда вытекает очень простой принцип получения реверсивного счетчика. Он получается коммутацией цепей переноса с прямых выходов триггеров на инверсные выходы и обратно и использованием управляющих сигналов.
На рисунке 5 приведена схема реверсивного счетчика. Выбор направления счета здесь задается значением сигнала на управляющих шинах «Вычитание» и «Суммирование».
Рисунок 5 – Схема реверсивного счетчика.
На рисунке 6 приведена обобщенная схема логической структуры синхронного
счетчика. Из нее можно уяснить принцип работы любого синхронного счетчика. Сигналы с выходов триггеров синхронного счетчика поступают на входы комбинационной схемы, которая преобразует поступившую информацию. Сигналы с выходов комбинационной схемы подаются на входы триггеров. Преобразованная информация не воспринимается триггером до тех пор, пока на синхронизирующие входы не поступит считываемый сигнал V.
Рисунок 6 – Обобщенная схема синхронного счетчика. Информация, находящаяся на входах каждого триггера, преобразуется комбинационной схемой таким образом, чтобы с приходом очередного считываемого сигнала осуществить требуемый переход счетчика из предыдущего состояния в следующее. Функции возбуждения входов i-го триггера можно записать в виде
QJ i= f J i [Q1 t ,Q2 t , ... ,Qn t ];
QKi= f K i [Q1 t ,Q2 t , ...,Qn t ].
Значения всех переменных в приведенных выражениях определены для одного и того же момента времени t. Поэтому функции возбуждения триггеров являются переключательными функциями, которым соответствуют комбинационные схемы, формирующие входные сигналы для триггеров. Следовательно, если задан или выбран тип триггера, то задача логического проектирования схемы счетчика заключается в составлении функций возбуждения каждого триггера и минимизации найденных функций в заданном базисе.
Пример 1. Пусть необходимо спроектировать двоично-десятичный счетчик на сложение с системой кодирования 2421 (где 2, 4, 2, 1 – веса двоичных разрядов кодирования; вместо каждой десятичной цифры записываются четыре двоичных разряда).
Решение. Кодированная таблица переходов одного разряда двоичнодесятичного счетчика в коде 2421 представлена столбцами 2–9 таблицы 1. Для нахождения функций возбуждения каждого триггера десятичного разряда счетчика на JK-триггерах воспользуемся полученной ранее матрицей переходов JК-триггера.
Десятичные |
|
Значения прямых выходов триггеров |
|
|
|
|
Время |
|
|
|
||||||
цифры |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Время t |
|
|
Время t+1 |
|
|
Функция возбуждения JK-триггеров |
|
||||||||
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Q4 |
Q3 |
Q2 |
Q1 |
Q4 |
Q3 |
Q2 |
Q1 |
qJ4 |
qK4 |
qJ3 |
qK3 |
qJ2 |
qK2 |
qJ1 |
qK1 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
X |
0 |
X |
0 |
X |
1 |
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
X |
0 |
X |
1 |
X |
X |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
X |
0 |
X |
X |
0 |
1 |
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
X |
1 |
X |
X |
1 |
X |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
X |
X |
1 |
1 |
X |
1 |
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
X |
0 |
1 |
X |
X |
1 |
X |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
X |
0 |
X |
0 |
0 |
X |
1 |
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
X |
0 |
X |
0 |
1 |
X |
X |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
X |
0 |
X |
0 |
X |
0 |
1 |
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
X |
1 |
X |
1 |
X |
1 |
X |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 1 |
|
|
|
|
|
|
|
|
|
|
Триггер 1 |
Для qJ1 |
Для qK1 |
qJ1=1 |
qK1=1 |
|
Триггер 2 |
Для qJ2 |
Для qK2 |
|
qK2=Q1 |
qJ2=Q1 Q4 Q3 |
|
Триггер 3 |
Для qJ3 |
Для qK3 |
qJ3=Q2 Q1 |
|
qK3=Q4 Q2 Q1 |
|
|
Триггер 4 |
Для qJ4 |
Для qK4 |
qJ4=Q3 qK4=Q3 Q2 Q1
Рисунок 7 – Карты Карно для функций возбуждения триггеров к примеру 1.
Рассмотрим первую строку таблица 1. После поступления считываемого
сигнала |
счетчик из |
состояния Q4 =0 ;Q3=0 ;Q2=0 |
и Q1=0 |
должен |
|
перейти |
в состояние |
Q4 =0 ;Q3=0 ;Q2=0 и Q1=1 |
, т. е. для триггеров |
||
Т 4 ,Т 3 ,T 2 |
необходимо реализовать переход типа 0―0. а для триггера |
T 1− |
|||
переход типа |
0−1 . |
|
|
|
|
В соответствии с матрицей переходов JK-триггера (табл. 3.22) в столбцах 10, 12, 14 нужно записать 0, в столбцах 11, 13, 15, 17 – X, столбце 16 – 1. Аналогично заполняются остальные строки таблицы переходов и функций возбуждения счетчика.
Составленная описанным способом таблица определяет функции возбуждения входов всех триггеров. Их аргументы занесены в столбцы 3-6 таблицы. Представим функции возбуждения триггеров в минимальной ДНФ. Для этого составим соответствующие карты Карно (рисунок 7).
Из таблицы переходов десятичного счетчика в коде 2421 видно, что из шестнадцати возможных состояний используются только 10. Остальные шесть,
а именно: |
|
|
|
|
|
|
|
|
|
|
|
|
, |
, |
, |
, |
, |
||||||
Q4 Q3 Q2 Q1 |
Q4 Q3 Q2 Q1 |
Q4 Q3 Q2 Q1 |
Q4 Q3 Q2 Q1 |
Q4 Q3 Q2 Q1 |
|||||||
Q4 Q3 Q2 Q1 ,
являются запрещенными (избыточными). Они никогда не появляются при правильной работе счетчика (им соответствуют незаполненные поля карт Карно). На этих наборах аргументов значения функции возбуждения можно выбирать произвольно. В результате минимизация функций возбуждения сводится к минимизации неполностью определенных переключательных функций.
В некоторых случаях рассмотрение запрещенных комбинаций приводит к существенному упрощению структуры проектируемой схемы, поэтому избыточные комбинации на картах Карно отмечены чертой.
На данном этапе получаем зависимости, занесенные на карты Карно вместе с избыточными комбинациями (рисунок 7). Затем выбираем значения X на составленных картах так, чтобы получить минимальные выражения для функций возбуждения входов триггера. По полученным функциям возбуждения
q Ji и qKi строим схему двоично-десятичного счетчика (рисунок 8).
Рисунок 8 – Схема двоично-десятичного счетчика.
