iTunes Gift Card (Россия) 5000 рублей
iTunes Gift Card (Россия) 5000 рублей


iTunes Gift Card (Russia) 6000 руб
iTunes Gift Card (Russia) 6000 руб


Разблокировка ZTE Blade A5
Разблокировка ZTE Blade A5


В начало

Базовые элементы структуры МП (Лекция)

 

ПЛАН ЛЕКЦИИ

1. Логические элементы

2. Сумматоры

3. Декодеры

4. Десятичный дешифратор

5. Кодеры

6. Мультиплексоры

7. Демультиплексоры

8. ЦС последовательностного типа (автоматы с памятью)

9. Счётчики

 

Понимание структуры МП не может прийти без понимания законов функционирования базовых цифровых устройств, входящих в его структуру, рассмотрим следующие ее основные элементы.

 

1. Логические элементы

Любые ЦМ строятся на основе простейших логических элементов:

1.      "НЕ" - выполняет функцию инвертирования. Логическое отрицание (инверсия) обозначается чертой над обозначением аргумента. Моделью, реализующей функцию НЕ, может служить размыкающий контакт реле. При срабатывании реле цепь, в которую входит такой контакт, будет размыкаться. Инверсия 1 равна 0, инверсия 0 - 1, а двойная инверсия не изменяет значения.

 

2.      "И" - выполняет функцию логического умножения. Логическое умножение (конъюнкция) обозначается точкой или символом ^ либо вообще в буквенных выражениях никак не обозначается. Функцию И реализуют соединенные последовательно замыкающие контакты нескольких реле.

 

3.      "ИЛИ" - выполняет функцию логического суммирования. Логическое сложение (дизъюнкция) обозначается "+" или V (первая буква латинского слова vel-или). В качестве примера можно привести параллельное соединение замыкающих контактов нескольких реле. Цепь, в которую входят эти контакты, будет замкнута, если сработает хотя бы одно.

 

Анализ и синтез логических цепей производится на основе математического аппарата алгебры логики, или булевой алгебры. Переменные могут принимать 0 или 1. Над переменными могут производиться три основных действия: логическое сложение, умножение и отрицание, что соответствует функциям ИЛИ, И, НЕ. Обозначения этих элементов на схемах приведено

 

 

2. Сумматоры

Построение двоичных сумматоров обычно начинается с сумматора по модулю 2.

Рис. Сумматор по модулю 2.

 

Сумматор по модулю 2 выполняет суммирование без учета переноса. В полном двоичном сумматоре требуется учитывать перенос в следующий разряд.

Рис. Полусумматор

 

Схема полусумматора формирует перенос в следующий разряд, но не может учитывать перенос из предыдущего разряда, поэтому она и называется полусумматором. В обозначении входов: в качестве входов использованы одноразрядные числа A и B; перенос обозначен P; для обозначения входа переноса I (от английского input – вход); для обозначения выхода переноса O (от английского output – выход).

Рис. Полный двоичный одноразрядный сумматор

 

Для того чтобы получить многоразрядный сумматор, достаточно соединить входы и выходы переносов соответствующих двоичных разрядов.

Рис. Полный двоичный многоразрядный сумматор

 

В реальных схемах никогда не допускают последовательного распространения переноса через все разряды многоразрядного сумматора. Для увеличения скорости работы двоичного сумматора применяется отдельная схема формирования переносов для каждого двоичного разряда.

 

3. Декодеры

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

 

4. Десятичный дешифратор

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

Как видно на этой схеме потребовалась схема "4И". Схема "ИЛИ" не потребовалась, так как в таблице истинности на каждом выходе присутствует только одна единица.

 

 

Рис. Принципиальная схема двоично-десятичного декодера

 

 

5. Кодеры

Достаточно часто перед разработчиками цифровой аппаратуры встаёт обратная задача. Например, требуется преобразовать восьмеричный или десятичный линейный код в двоичный. Линейный восьмеричный код может поступать с выхода механического переключателя. Ещё одним источником линейного восьмеричного кода могут стать аналоговые компараторы с различными порогами срабатывания. Такая линейка компараторов может служить для преобразования аналогового сигнала в цифровой код.

 

             

 

Приведенные таблицы истинности можно объединить. В этом случае ячейки таблицы, где неважно, будет ли записан ноль или будет записана единица, помечены символом 'X'.

Рис. Восьмеричный кодер

 

То, что практически во всех строках есть неопределённые значения, позволяет значительно упростить схему восьмеричного кодера.

 

6. Мультиплексоры

Мультиплексорами называются устройства, которые позволяют подключать несколько входов к одному выходу. Демультиплексорами называются устройства, которые позволяют подключать один вход к нескольким выходам. Пусть вход X будет управляющим, а Y - информационным. Для простоты рассуждений, разделим таблицу истинности на две части в зависимости от уровня логического сигнала на управляющем входе X.

По таблице истинности отчетливо видно, что пока на управляющий вход X подан нулевой логический уровень, сигнал, поданный на вход Y, на выход Out не проходит. При подаче на управляющий вход X логической единицы, сигнал, поступающий на вход Y, появляется на выходе Out.

 

Рисунок. Мультиплексор, управляемый двоичным кодом

 

Входы A0 и A1 являются управляющими (адресными) входами мультиплексора, определяющими адрес входного сигнала, который будет соединён с выходным выводом мультиплексора Y. Сами входные сигналы обозначены как X0, X1, X2 и X3.

 

7. Демультиплексоры

Демультиплексорами называются устройства, которые позволяют подключать один вход к нескольким выходам. Демультиплексор можно построить на основе точно таких же схем "И", как и мультиплексор. Существенным отличием от мультиплексора является возможность объединения нескольких входов в один без дополнительных схем. Однако для увеличения нагрузочной способности микросхемы, на входе демультиплексора для усиления входного сигнала лучше поставить инвертор.

Рис. Демультиплексор, управляемый двоичным кодом

 

В этой схеме для выбора конкретного выхода демультиплексора, как и в мультиплексоре, используется двоичный дешифратор. Однако если рассмотреть принципиальную схему самого дешифратора, то можно значительно упростить демультиплексор. Достаточно просто к каждому логическому элементу 'И', входящему в состав дешифратора просто добавить ещё один вход – In. Такую схему часто называют дешифратором с входом разрешения работы. В этом обозначении вход In обозначен E, а выходы не названы, оставлены только их номера.

 

8. ЦС последовательностного типа (автоматы с памятью)

Последовательностные устройства – это устройства с памятью. В них выходной сигнал определяется не только текущим состоянием входа, но и рядом предыдущих значений. Простейшее последовательностное устройство – это триггер. Его особенностью является способность бесконечно долго находиться в одном из двух устойчивых состояний. Приняв одно состояние за ноль, другое за единицу, можно считать, что триггер хранит один бит информации.

Триггеры

Триггеры предназначены для запоминания двоичной информации. Использование триггеров позволяет реализовывать устройства оперативной памяти (то есть памяти, информация в которой хранится только на время вычислений). Однако триггеры могут использоваться и для построения некоторых цифровых устройств с памятью, таких как счётчики, преобразователи последовательного кода в параллельный или цифровые линии задержки.

 

RS-триггеры

RS-триггер получил название по названию своих входов. Вход S (Set – установить англ.) позволяет устанавливать выход триггера Q в единичное состояние. Вход R (Reset – сбросить англ.) позволяет сбрасывать выход триггера Q (Quit – выход англ.) в нулевое состояние. Для реализации RS-триггера воспользуемся логическими элементами “2И-НЕ”.

Рис. Схема триггера на схемах "И". Входы R и S инверсные (активный уровень '0').

 

Пусть на входы R и S подаются единичные потенциалы. Если на выходе верхнего “2И-НЕ” Q присутствует логический ноль, то на выходе нижнего “2И-НЕ” появится логическая единица. Эта единица подтвердит логический ноль на выходе Q. Если на выходе верхнего “2И-НЕ” Q первоначально присутствует логическая единица, то на выходе нижнего “2И-НЕ” появится логический ноль. Этот ноль подтвердит логическую единицу на выходе Q. То есть при единичных входных уровнях схема RS-триггера работает точно так же как и схема на инверторах. Подадим на вход S нулевой потенциал. Согласно таблице истинности “И-НЕ” на выходе Q появится единичный потенциал. Это приведёт к появлению на инверсном выходе триггера нулевого потенциала. Теперь, даже если снять нулевой потенциал с входа S, на выходе триггера останется единичный потенциал. Точно так же можно записать в триггер и логический ноль. Для этого следует воспользоваться входом R. Так как активный уровень на входах оказался нулевым, то эти входы – инверсные.

R

S

Q(t)

Q(t+1)

Пояснения

0

0

0

0

Режим хранения информации R=S=0

0

0

1

1

0

1

0

1

Режим установки единицы S=1

0

1

1

1

1

0

0

0

Режим записи нуля R=1

1

0

1

0

1

1

0

*

R=S=1 запрещенная комбинация

1

1

1

*

RS-триггер можно построить и на логических элементах "ИЛИ". Схема RS-триггера, построенного на логических элементах "ИЛИ" приведена на рисунке. Единственное отличие в работе этой схемы будет заключаться в том, что сброс и установка триггера будет производиться единичными логическими уровнями.

Рис. Схема триггера на схемах "ИЛИ". Входы R и S прямые (активный уровень '1')

 

Так как RS-триггер при построении его на логических элементах “И” и “ИЛИ” работает одинаково, то его изображение на принципиальных схемах тоже одинаково.

 

Синхронные RS-триггеры

Схема RS-триггера позволяет запоминать состояние логической схемы, но так как в начальный момент времени может возникать переходный процесс (в цифровых схемах этот процесс называется опасные гонки), то запоминать состояния логической схемы нужно только в определённые моменты времени, когда все переходные процессы закончены. Это означает, что большинство цифровых схем требуют сигнала синхронизации (тактового сигнала). Все переходные процессы в комбинационной логической схеме должны закончиться за время периода синхросигнала, подаваемого на входы триггеров. Триггеры, запоминающие входные сигналы только в момент времени, определяемый сигналом синхронизации, называются синхронными. Для того чтобы отличать от них рассмотренные ранее варианты (RS-триггер и триггер Шмитта) эти триггеры получили название асинхронных. Для записи в триггеры входных сигналов при наличии разрешающего сигнала потребуется схема, пропускающая входные сигналы только при наличии синхронизирующего. Это элемент “И”. Триггеры, записывающие сигналы только при наличии синхронизирующего сигнала называются синхронными. В таблице символ x означает, что значения логических уровней на данном входе не важны.

Рис. Схема синхронного RS-триггера, построенного на элементах "И". УГО

 

С

R

S

Q(t)

Q(t+1)

Пояснения

0

x

x

0

0

Режим хранения информации

0

x

x

1

1

1

0

0

0

0

Режим хранения информации

1

0

0

1

1

1

0

1

0

1

Режим установки единицы S=1

1

0

1

1

1

1

1

0

0

0

Режим записи нуля R=1

1

1

0

1

0

1

1

1

0

*

R=S=1 запрещенная комбинация

1

1

1

1

*

RS-триггеры м.б. реализованы на различных элементах. При этом логика их работы не изменяется.

 

D-триггеры

В RS-триггерах для записи логического нуля и логической единицы требуются разные входы, что не всегда удобно. При записи и хранении данных один бит может принимать значение, как нуля, так и единицы. Для его передачи достаточно одного провода. Сигналы установки и сброса триггера не могут появляться одновременно, поэтому можно объединить эти входы при помощи инвертора, как показано на рисунке.

D_trg.gif (1564 bytes)D_trg_S.gif (1333 bytes)

Рис. D-триггер (защелка)

 

Такой триггер получил название D-триггер. Название происходит от английского слова delay - задержка. Конкретное значение задержки определяется частотой следования импульсов синхронизации.

Этот триггер способен запоминать по синхросигналу и хранить один бит информации.

Во всех рассмотренных ранее схемах синхронных триггеров синхросигнал работает по уровню, поэтому триггеры называются триггерами, работающими по уровню. Ещё одно название таких триггеров, пришедшее из иностранной литературы - триггеры-защёлки.

 

Рис. Временная диаграмма D-триггера (защелки)

 

По этой временной диаграмме видно, что триггер-защелка хранит данные на выходе только при нулевом уровне на входе синхронизации. Если же на вход синхронизации подать активный высокий уровень, то напряжение на выходе триггера будет повторять напряжение, подаваемое на вход этого триггера. Входное напряжение запоминается только в момент изменения уровня напряжения на входе синхронизации C с высокого уровня на низкий уровень. Входные данные как бы "защелкиваются" в этот момент, отсюда и название – триггер-защелка. Принципиально в этой схеме входной переходной процесс может беспрепятственно проходить на выход триггера. Поэтому там, где это важно, необходимо сокращать длительность импульса синхронизации до минимума. Чтобы преодолеть такое ограничение были разработаны триггеры, работающие по фронту.

 

D-триггеры, работающие по фронту

Фронт сигнала синхронизации, в отличие от высокого (или низкого) потенциала, не может длиться продолжительное время. В идеале длительность фронта равна нулю. Поэтому в триггере, запоминающем входную информацию по фронту не нужно предъявлять требования к длительности тактового сигнала. Триггер, запоминающий входную информацию по фронту, может быть построен из двух триггеров, работающих по потенциалу. Сигнал синхронизации будем подавать на триггеры в противофазе.

D_trg_F.gif (2144 bytes)

Рис. D-триггер, работающий по фронту: (а) динамический вход по переднему (нарастающему) фронту; (б) динамический вход по заднему (спадающему) фронту

 

 

Q΄ соответствует сигналу на выходе первого триггера. Так как на вход синхронизации второго триггера тактовый сигнал поступает через инвертор, то когда первый триггер находится в режиме хранения, второй триггер пропускает сигнал на выход схемы. И наоборот, когда первый триггер пропускает сигнал с входа схемы на свой выход, второй триггер находится  в режиме хранения.

Сигнал на выходе всей схемы в целом не зависит от сигнала на входе "D" схемы. Если первый триггер пропускает сигнал данных со своего входа на выход, то второй триггер в это время находится в режиме хранения и поддерживает на выходе предыдущее значение сигнала, то есть сигнал на выходе схемы тоже не может измениться. Сигнал в схеме запоминается только в момент изменения сигнала на синхронизирующем входе "C" с единичного потенциала на нулевой.

Динамические D-триггеры выпускаются в виде готовых микросхем или входят в виде готовых блоков в составе больших интегральных схем.

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

Регистры

Регистром называется последовательное или параллельное соединение триггеров. Регистры обычно строятся на основе D триггеров. При этом для построения регистров могут использоваться как динамические D триггеры, так и статические триггеры.

 

Параллельные регистры

Параллельный регистр служит для запоминания многоразрядного двоичного (или недвоичного) слова. Количество триггеров, входящее в состав параллельного регистра определяет его разрядность.

Рис. Схема параллельного регистра

 

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

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

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

 

Последовательные регистры

Кроме параллельного соединения триггеров для построения регистров используются последовательное соединение этих элементов.

Последовательный регистр (регистр сдвига) обычно служит для преобразования последовательного кода в параллельный и наоборот. При параллельной передаче разрядов требуется большое количество соединительных проводников. Если двоичные разряды последовательно бит за битом передавать по проводнику, то можно значительно сократить размеры соединительных линий на плате (и размеры корпусов микросхем).

Рис. Схема последовательного регистра на основе D‑триггеров

 

В этом регистре триггеры соединены последовательно, то есть выход первого соединён с входом второго и т.д. Входы синхронизации в последовательных регистрах, как и в параллельных, объединяются. Это обеспечивает одновременность смены состояния всех триггеров, входящих в состав последовательного регистра. Преобразование последовательного кода в параллельный производится следующим образом. Отдельные биты двоичной информации последовательно подаются на вход D0. Каждый бит сопровождается отдельным тактовым импульсом, который поступает на вход синхронизации C. После поступления первого тактового импульса логический уровень, присутствующий на входе D0, запоминается в первом триггере и поступает на его выход, а так как он соединён с входом второго триггера, то и на его вход. После поступления второго тактового импульса логический уровень, присутствующий на входе второго триггера, запоминается в нем и поступает на его выход, а так как он соединён с входом третьего триггера, то и на его вход. Одновременно следующий бит запоминается в первом триггере. После поступления четвертого тактового импульса в триггерах регистра будут записаны уровни бит, которые последовательно присутствовали на входе D0. Теперь этими битами можно воспользоваться, например, для отображения на индикаторах. Пусть на вход регистра поступает сигнал, тогда состояние выходов этого регистра будет последовательно принимать значения, записанные в таблице.

Рис. Временная диаграмма работы сдвигового регистра

 

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

 

Универсальные регистры

Регистры сдвига выполняют обычно как универсальные последовательно-параллельные микросхемы. Это связано с необходимостью записи в регистр параллельного двоичного кода при преобразовании параллельного кода в последовательный. Переключение регистра из параллельного режима работы в последовательный и наоборот осуществляется при помощи мультиплексора (коммутатора). Использование коммутатора позволяет входы триггеров регистра либо подключать к внешним выводам микросхемы, либо подключать к выходу предыдущего триггера.

Рис. Схема универсального регистра

 

В этой схеме для переключения регистра из последовательного режима работы в параллельный используется вывод V. Подача на этот вход единичного потенциала превращает схему в параллельный регистр. При этом на входы ключей, подключенных к информационным входам D, подаётся единичный потенциал. Это приводит к тому, что сигналы с входов параллельной записи данных поступают на входы логических элементов “ИЛИ”, а на входы ключей, подключенных к выходам предыдущих триггеров, подаются нулевые потенциалы. То есть на выходах этих ключей будут присутствовать нулевые потенциалы, и они не будут мешать работе. Подача на вход V нулевого потенциала приводит к отключению входов параллельных данных от входов триггеров. Сигналы же с выхода предыдущего триггера свободно проходит через верхние логические элементы “И” на вход последующего триггера, так как на его второй вход подаётся единичный потенциал. Инверторы на входах V и C использованы для усиления входного сигнала по току. В результате входной ток микросхемы будет равен не суммарному току четырёх логических элементов “И”, а входному току инвертора.

 

9. Счётчики

Счётчики используются для построения таймеров или для выборки инструкций из ПЗУ в микропроцессорах. Они могут использоваться как делители частоты в управляемых генераторах частоты (синтезаторах).

9.1. Двоичные асинхронные счётчики

Простейший вид счётчика - двоичный может быть построен на основе универсального D-триггера с обратной связью.

               

Рис. Реализация счета на универсальном D-триггере.

 

Так как эта схема при поступлении на вход импульсов меняет свое состояние на противоположное, то её можно рассматривать как счётчик, считающий до двух.

Обычно требуется посчитать большее количество импульсов. В этом случае можно использовать выходной сигнал первого счетного триггера как входной сигнал для следующего триггера, то есть соединить триггеры последовательно. Так можно построить любой счётчик, считающий до максимального числа, кратного степени два.

Схема счётчика, позволяющего посчитать любое количество импульсов, меньшее шестнадцати, приведена на рисунке. Количество поступивших на вход импульсов можно узнать, подключившись к выходам счётчика Q0 … Q3. Это число будет представлено в двоичном коде.

Рис. Четырёхразрядный счётчик, построенный на универсальных D-триггерах

 

Пусть первоначальное состояние всех триггеров счётчика будет нулевым. Это состояние мы видим на временных диаграммах. Запишем его в таблицу. После поступления на вход счётчика тактового импульса (который воспринимается по заднему фронту) первый триггер изменяет своё состояние на противоположное, то есть единицу.

Запишем новое состояние выходов счётчика в ту же самую таблицу. Так как по приходу первого импульса изменилось состояние первого триггера, то этот триггер содержит младший разряд двоичного числа (единицы). В таблице поместим его значение на самом правом месте, как это принято при записи любых многоразрядных чисел. Здесь мы впервые сталкиваемся с противоречием правил записи чисел и правил распространения сигналов на принципиальных схемах. Подадим на вход счётчика ещё один тактовый импульс. Значение первого триггера снова изменится на прямо противоположное. На этот раз на выходе первого триггера, а значит и на входе второго триггера сформируется задний фронт. Это означает, что второй триггер тоже изменит своё состояние на противоположное. В этой строке таблицы образовалось двоичное число 2. Оно совпадает с номером входного импульса. Продолжая анализировать временную диаграмму, можно определить, что на выходах приведённой схемы счётчика последовательно появляются цифры от 0 до 15. Эти цифры записаны в двоичном виде. При поступлении на счётный вход счётчика очередного импульса, содержимое его триггеров увеличивается на 1. Поэтому такие счётчики получили название суммирующих двоичных счётчиков.

 

Рис. Четырёхразрядный двоичный счётчик

 

В двоичных счётчиках обычно предусматривают вход обнуления микросхемы R, который позволяет записать во все триггеры счётчика нулевое значение. Это состояние иногда называют исходным состоянием счётчика.

 

9.2. Двоичные вычитающие асинхронные счётчики

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

Рис. Четырёхразрядный двоичный вычитающий счётчик на D-триггерах

 

9.3. Недвоичные счётчики с обратной связью

Если посмотреть на временную диаграмму сигналов на выходах двоичного счётчика, то можно увидеть, что частота сигналов на его выходах будет уменьшаться в два раза по отношению к предыдущему выходу. Это позволяет использовать счетчики в качестве делителей частоты входного сигнала. Эти делители частоты могут быть использованы в устройствах формирования высокостабильных генераторов частоты (синтезаторов частот).

Рис. Временная диаграмма четырёхразрядного счётчика

 

Сформированные частоты могут быть использованы либо для синхронизации различных цифровых устройств (в том числе и микропроцессоров) либо в качестве высокостабильных генераторов опорных частот в радиоприёмных и радиопередающих устройствах. При использовании цифровых счётчиков в качестве устройств формирования опорных частот часто требуется обеспечить коэффициент деления частоты, отличающийся от степени числа 2. В этом случае требуется счётчик с недвоичным коэффициентом счёта.

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

Рис. Схема десятичного счётчика, построенного на основе двоичного счётчика

 

В этой схеме дешифратор построен на двухвходовой схеме "2И", входящей в состав микросхемы двоичного счётчика. Дешифратор декодирует число 10 (1010 в двоичной системе счисления). В соответствии с принципами построения схем по произвольной таблице истинности для построения дешифратора требуется ещё два инвертора, подключённых к выходам 1 и 4. Однако после сброса счётчика числа, большие 10 никогда не смогут появиться на выходах микросхемы. Поэтому схема дешифратора упрощается и вместо четырёхвходовой схемы "4И" можно обойтись двухвходовой схемой. При использовании счётчиков в качестве делителей частоты тоже можно воспользоваться обратной связью. Приведём в качестве примера схему делителя частоты на 1000. При разработке делителя, прежде всего, определим сколько потребуется микросхем двоичных счётчиков. Для этого определим степень числа 2, при которой число M=2n будет больше требуемого числа 1000. Это будет число 10. При возведении основания системы счисления 2 в 10 степень получится число 1024. То есть, при использовании для построения делителя частоты непосредственно триггеров, достаточно будет десяти триггеров. Однако обычно для построения делителей частоты используют готовые двоичные счётчики, поэтому определим необходимое количество микросхем двоичных счётчиков. При использовании четырёхразрядных двоичных счётчиков достаточно будет трёх микросхем, так как в трёх микросхемах будет 3*4=12 триггеров, что заведомо больше минимального числа триггеров.

Следующим этапом построения делителя частоты будет перевод коэффициента деления 1000 в двоичное представление. 1000 в двоичном виде выглядеть как 0011 1110 1000. В числе шесть единиц, поэтому для построения делителя будет достаточно шестивходовой схемы "И". Однако такие  схемы не выпускаются, поэтому воспользуемся микросхемой "8И-НЕ". Неиспользуемые входы этой микросхемы подключим к питанию. Ненужную инверсию сигнала скомпенсируем дополнительным инвертором.

Рис. Схема делителя на 1000, построенного на основе трёх двоичных счётчиков

 

При использовании счётчиков в составе синтезаторов частот может потребоваться формирование целого диапазона частот. В этом случае делитель, построенный на недвоичном счётчике, должен обладать возможностью изменения коэффициента деления.

Такие делители частоты получили название делителей с переменным коэффициентом деления (ДПКД). При использовании обратной связи для реализации ДПКД потребуется полный дешифратор и переключатели его выходов на вход сброса счётчика. Схема делителя частоты при этом получается сложной, а управление таким делителем неудобным.

Рис. Схема делителя с переменным коэффициентом деления с максимальным коэффициентом деления 100, построенного на основе двух десятичных счётчиков

 

Пример двухразрядного делителя с переменным коэффициентом деления (ДПКД), построенного на десятичных счётчиках приведён на рисунке. Обратите внимание, что для удобного управления таким синтезатором частоты использованы десятичные счётчики. Использование десятичных счетчиков позволяет выставлять необходимую частоту непосредственно в десятичном виде. Значение частоты можно нанести на корпусе прибора под клювиками переключателей или отображать набираемую частоту на десятичных индикаторах. В качестве ещё одного недостатка такого делителя частоты можно отметить очень маленькую длительность выходных импульсов. Если требуется сформировать строго симметричное колебание, то на выходе такого делителя можно поставить одноразрядный двоичный делитель частоты. На выходе двоичного делителя всегда формируется меандр с очень высокой точностью.

 

 

9.4. Недвоичные счётчики с предварительной записью

В счётчиках с обратной связью исключаются последние состояния двоичного счётчика. Можно поступить по-другому. Начать с последнего состояния счётчика и, воспользовавшись вычитающим счётчиком, определять нулевое состояние счётчика. Это состояние очень просто можно определить при помощи логического элемента "И". В данной схеме начинать счёт необходимо с числа, которое будет определять коэффициент деления делителя, построенного на таком счётчике. При построении счётчика по таким принципам необходимо иметь возможность предварительной записи в счётчик. То есть счётчик при предварительной записи должен вести себя как параллельный регистр. Требуется, как и при построении универсального регистра, коммутатор логических сигналов. Напомню, что в качестве коммутатора вполне успешно используется логический элемент “2И-2ИЛИ”. Главное обеспечить подачу на элементы “И” противофазных сигналов. Это условие нам обеспечит инвертор.

Одна из схем счётчика, с возможностью параллельной записи двоичных кодов во внутренние триггеры счётчика, приведена на рисунке. В этой схеме вход C предназначен для подачи тактовых импульсов. Его ещё называют “-1”, так как при подаче на этот вход импульсов, содержимое счётчика уменьшается на единицу. Входы D0 ... D3 предназначены для записи произвольного двоичного числа в счётчик. Запись производится по сигналу, подаваемому на вход параллельной записи PE.

Рис. Схема счётчика с возможностью параллельной записи

 

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

 

9.5. Синхронные счётчики

В рассмотренных схемах делителей частоты быстродействие всей схемы определяется временем распространения сигнала от входа до выхода самого старшего разряда. При этом получается, что чем больше требуемый коэффициент деления, тем больше двоичных разрядов счётчика требуется для реализации этого делителя. Тем большее время требуется для распространения сигнала от входа синхронизации счётчика, до его выхода, и тем меньше будет предельная частота, которую можно подавать на вход этого делителя. Можно ли обойти такую неприятную особенность недвоичных счётчиков? Да можно! Нужно, чтобы счётчик подготавливал своё новое состояние в промежутках между тактовыми импульсами и только записывал его по приходу нового импульса.

Первая схема - это схема кольцевого счётчика. Такой счётчик можно построить на основе сдвигового регистра.

Рис. Схема кольцевого счетчика

 

Пусть в счетчике записано число 002. После первого же тактового импульса состояние счётчика станет равным 102, после второго - 112. Временные диаграммы приведены ниже.

В результате анализа временных диаграмм можно определить, что коэффициент деления схемы кольцевого счётчика будет равен: Кд = 2*n. В качестве преимущества схемы кольцевого счётчика можно отметить то, что её быстродействие зависит только от времени задержки одного триггера. Это означает, что на кольцевых счётчиках можно реализовывать самые быстродействующие делители частоты. То, что коэффициент деления пропорционален не степени количества триггеров, а только сумме является недостатком данной схемы. Это означает, что при увеличении коэффициента деления сложность схемы неоправданно возрастает по сравнению со схемой двоичного счётчика. Ещё одним недостатком схемы является то, что в результате воздействия помехи в регистр может быт записано число 012. В результате коэффициент деления схемы изменится, а это является недопустимым.

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

 а)

б)

Рисунок. Временные диаграммы сигналов 3-разрядного кольцевого синхронного счётчика при правильной (а) и ошибочной (б) работе.

 

Для того чтобы избежать неправильной работы счётчика в этот счётчик можно ввести схему контроля правильной работы. В простейшем случае это может быть обычный “И-НЕ”. Этот элемент будет контролировать состояние счётчика, соответствующее 1 во всех его разрядах.

Рис. 2-разрядный счетчик с проверкой правильности его работы

 

В этой схеме триггеры счётчика при поступлении импульсов на тактовый вход  последовательно заполняются единицами. Как только все триггеры будут заполнены единицами, на выходе “2И-НЕ” появится уровень логического нуля. При поступлении следующего тактового импульса этот 0 будет записан в первый триггер счётчика. В дальнейшем работа счётчика повторяется.

 

9.6. Синхронные двоичные счётчики

Основным недостатком делителей, построенных на кольцевых счётчиках, является малый коэффициент деления. Двоичные счётчики в этом смысле более эффективны. Попробуем разработать синхронный счётчик, работающий по двоичному закону. Для этого обратим внимание, что переключение следующего разряда счётчика происходит только тогда, когда состояние всех предыдущих его разрядов равно единицам. Это состояние может быть легко определено при помощи “И”.

Рис. Четырёхразрядный синхронный двоичный счётчик

 

Рассмотрим в качестве примера реализацию 32-х разрядного двоичного счётчика на рисунке.

Рис. Принципиальная схема 32-х разрядного синхронного двоичного счётчика

 

Будет ли счётчик находиться в режиме счёта или в режиме параллельной записи определяется потенциалом на входах микросхем PE. При нулевом потенциале на этом входе PE производится запись информации с входов данных D во внутренние триггеры счётчиков. Именно поэтому на входы PE всех микросхем подан высокий потенциал (они подключены к источнику питания). В схеме не используются входы параллельной записи, однако входы ЦМ нельзя бросать в воздухе, поэтому следует присоединить их либо к источнику питания, либо к общему проводу схемы. В данной схеме все входы данных присоединены к источнику питания. Так как в схеме применены микросхемы синхронных счётчиков, то все входы синхронизации должны быть соединены параллельно. Только в этом случае запись нового состояния счётчика во внутренние триггеры будет производиться одновременно. Микросхема младших разрядов счётчика D1 должна работать всегда, пока на её вход синхронизации поступают тактовые импульсы, поэтому входы разрешения счёта CEP и CET в этой микросхеме присоединены к источнику питания. Следующая микросхема D2 должна переключиться только тогда, когда во всех триггерах микросхемы D1 будет записана логическая единица. Для этого вход разрешения счёта CEP соединён с выходом TC микросхемы младших разрядов D1. Второй вход разрешения счёта остаётся подключенным к питанию схемы. Следующая микросхема D3 подключается так же. Однако если не принять дополнительных мер, то время распространения сигнала разрешения счёта при увеличении количества микросхем, использованных в счётчике, будет увеличиваться пропорционально количеству микросхем. Для того чтобы избежать этой ситуации, в схеме использован вспомогательный вход разрешения счёта CEP. Сигнал с выхода TC микросхемы D1 подаётся на входы CEP всех последующих разрядов.