- •1. Обзор существующих схем счетчиков и выбор схемы счетчика
- •1.1 Назначение и классификация счетчиков
- •1.2 Синтез счетчиков
- •2 Разработка функциональной схемы
- •2.1 Таблица функционирования счетчика
- •Приложение 1
- •2.2 Составление минимизированных логических выражений функций управления входами каждого триггера
- •2.3 Составление функциональной схемы счетчика
- •3. Выбор серии микросхем
- •4. Список литературы
1.2 Синтез счетчиков
Синтез счетчика сводится к определению оптимальной структуры и построению его принципиальной схемы. Под оптимальной понимается структура счетчика, содержащая минимальное количество триггеров и связей между ними, при которой обеспечивается выполнение счетчиком требуемых функций с заданными значениями параметров.
Основными исходными данными для синтеза счетчика являются:
- модуль счета (емкость счетчика) Кс;
- порядок изменения состояний счетчика;
- режим счета (суммирующий, вычитающий или реверсивный);
- требуемая разрешающая
способность счетчика
- необходимое время установки кода счетчика
Исходя из заданной
емкости и модуля счета Кс,
определяют необходимое количество m
триггеров в счетчике. Для двоичных
счетчиков
,
недвоичных -
,
где
- двоичный логарифм числа Кс, округленный
до большего ближайшего целого числа.
Разрешающую способность и время установки
кода счетчика учитывают при выборе
серии интегральных микросхем и типа
триггера, а также при выборе способа
переключения триггеров (последовательного
или параллельного). При выборе серии
триггера необходимо учитывать условие
,
где
- максимально допустимая для данного
триггера частота следования входных
сигналов. Время установки кода
является основным
фактором, определяющим выбор способа
переключения триггеров. При последовательном
способе запуска триггеров
растет в m
раз с увеличением числа m триггеров в
счетчике, а при параллельном -
не
зависит от величины m.
Поэтому более предпочтительным, как
правило, является параллельный способ
запуска триггеров.
Последовательный
способ целесообразно применять в
счетчиках, используемых в качестве
делителе частоты. Определив количество
разрядов (триггеров) счетчика m, выбрав
серию интегральных микросхем и способ
переключения триггеров, приступают к
разработке структурной схемы счетчика.
Основной задачей синтеза счетчика
является определение оптимальных
логических функций
,
связывающих между собой входы и выходы
всех триггеров.
2 Разработка функциональной схемы
2.1 Таблица функционирования счетчика
Таблица функционирования счетчика, работающего по коду 5-2-1-1 |
||||||||||||
Состояние счетчика |
Функция перехода |
|||||||||||
5-2-1-1 |
Предыдущее |
Последующее |
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|||||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
▲ |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
▲ |
1 |
2 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
▲ |
▼ |
1 |
3 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
▲ |
1 |
4 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
▲ |
▼ |
▼ |
▼ |
5 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
▲ |
6 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
▲ |
1 |
7 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
▲ |
▼ |
1 |
8 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
▲ |
1 |
9 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
▼ |
▼ |
▼ |
▼ |
Составление карт Карно
функций управления входами J
и K
для каждого триггера. Чтобы составить
карты Карно, нужно сначала составить
функции перехода
для каждого триггера. Для этого, а также
для составления логических выражений,
используем следующую таблицу:
|
|
|
|
Q1 |
|
|
|
|
00 |
01 |
11 |
10 |
|
|
00 |
0 |
1 |
2 |
- |
|
|
01 |
- |
3 |
4 |
- |
Q2 |
Q3 |
11 |
- |
8 |
9 |
- |
|
10 |
5 |
6 |
7 |
- |
|
|
|
|
|
Q0 |
|
|
|
Выбираем триггер JK, т.к. счетчики на RS-триггерах имеют большее количество связей между входами и выходами разрядов, а при использовании D-триггеров в разрядах счетчика возникает необходимость в применении дополнительных логических элементов, вследствие чего возрастает потребляемая мощность и уменьшается максимальная рабочая частота.
Для составления карт Карно также пользуемся правилами:
FQ |
J |
K |
0 |
0 |
X |
1 |
X |
0 |
▲ |
1 |
X |
▼ |
X |
1 |
Функции перехода:
FQ0 |
00 |
01 |
11 |
10 |
|
FQ1 |
00 |
01 |
11 |
10 |
|
FQ2 |
00 |
01 |
11 |
10 |
|
FQ3 |
00 |
01 |
11 |
10 |
00 |
▲ |
1 |
1 |
- |
|
00 |
0 |
▲ |
▼ |
- |
|
00 |
0 |
0 |
▲ |
- |
|
00 |
0 |
0 |
0 |
- |
01 |
- |
1 |
▼ |
- |
|
01 |
- |
▲ |
▼ |
- |
|
01 |
- |
1 |
▼ |
- |
|
01 |
- |
0 |
▲ |
- |
11 |
- |
1 |
▼ |
- |
|
11 |
- |
▲ |
▼ |
- |
|
11 |
- |
1 |
▼ |
- |
|
11 |
- |
1 |
▼ |
- |
10 |
▲ |
1 |
1 |
- |
|
10 |
0 |
▲ |
▼ |
- |
|
10 |
0 |
0 |
▲ |
- |
|
10 |
1 |
1 |
1 |
- |
Получаем карты, отражающие значения логических функций на входах каждого триггера:
J0 |
00 |
01 |
11 |
10 |
|
J1 |
00 |
01 |
11 |
10 |
|
J2 |
00 |
01 |
11 |
10 |
|
J3 |
00 |
01 |
11 |
10 |
00 |
1 |
X |
X |
- |
|
00 |
0 |
1 |
X |
- |
|
00 |
0 |
0 |
1 |
- |
|
00 |
0 |
0 |
0 |
- |
01 |
- |
X |
X |
- |
|
01 |
- |
1 |
X |
- |
|
01 |
- |
X |
X |
- |
|
01 |
- |
0 |
1 |
- |
11 |
- |
X |
X |
- |
|
11 |
- |
1 |
X |
- |
|
11 |
- |
X |
X |
- |
|
11 |
- |
X |
X |
- |
10 |
1 |
X |
X |
- |
|
10 |
0 |
1 |
X |
- |
|
10 |
0 |
0 |
1 |
- |
|
10 |
X |
X |
X |
- |
K0 |
00 |
01 |
11 |
10 |
|
K1 |
00 |
01 |
11 |
10 |
|
K2 |
00 |
01 |
11 |
10 |
|
K3 |
00 |
01 |
11 |
10 |
00 |
X |
0 |
0 |
- |
|
00 |
X |
X |
1 |
- |
|
00 |
X |
X |
X |
- |
|
00 |
X |
X |
X |
- |
01 |
- |
0 |
1 |
- |
|
01 |
- |
X |
1 |
- |
|
01 |
- |
0 |
1 |
- |
|
01 |
- |
X |
X |
- |
11 |
- |
0 |
1 |
- |
|
11 |
- |
X |
1 |
- |
|
11 |
- |
0 |
1 |
- |
|
11 |
- |
0 |
1 |
- |
10 |
X |
0 |
0 |
- |
|
10 |
X |
X |
1 |
- |
|
10 |
X |
X |
X |
- |
|
10 |
0 |
0 |
0 |
- |
