Цифровые компараторы.
Цифровые компараторы (от compare - сравнивать) выполняют сравнение двух чисел, заданных в двоичном ( двоично-десятичном ) коде.
Простейшие компараторы формируют на выходе однобитовый сигнал равенства – “1” или неравенства - “0” двух чисел. Более сложные компараторы в случае неравенства определяют, которое из чисел больше.
Пример. Построить на ЛЭ схему сравнения на равенство двух 8-разрядных чисел.
Особенность задачи в том, что для ее решения практически невозможно построить таблицу: число строк в ней будет 2(8+8) = 65536. Подобные задачи решают иначе – методом декомпозиции задачи - разбиения ее на более мелкие подзадачи. В нашем случае: два числа равны, если попарно равны их одноименные разряды. Структурная схема компаратора показана на рис. 3.13, а. Известно, что функция равенства двух аргументов – это инверсия их суммы по модулю 2. Чтобы исключить из проектируемой схемы 8 инверторов воспользуемся соотношением:
Рис. 3.13 Узел сравнения на равенство.
Это решение показано на рис. 3.13,б. Оно учитывает, что в семействах ЛЭ нет элемента 8ИЛИ - НЕ, а есть только 4ИЛИ – НЕ.
Примером компаратора, определяющего знак неравенства, может служить 4-разрядная микросхема К555СП1. Она имеет три выхода: ”A>B”, “А=В” и “A<B”, и в зависимости от соотношения А и В активный уровень появляется на одном из этих выходов. Входы “>”,”<”,”=” служат для наращивания разрядности.
Рис.3.14 Компаратор К555СП1.
Контроль четности
На передаваемые по линии связи или хранимые в памяти данные воздействуют различные помехи, которые могут исказить эти данные. Простейшим способом удостовериться, что данные искажены ошибкой, служит введение контроля по четности (parity check). В его основе лежит операция сложения по модулю 2 всех двоичных разрядов контролируемого слова. Если число единиц в слове четное, то сумма по модулю 2 его разрядов будет “0”, если нечетное то “1”. Признаком четности называют инверсию этой суммы.
Реализация этого метода осуществляется с помощью специальных схем контроля четности, которые выпускаются в микросхемном исполнении.
На основе информации на выходе передающего устройства такая схема формирует дополнительный бит (1 или 0), так называемый паритетный или контрольный бит (parity bit), который добавляется к выходной информации. Назначение этого бита - доводить число единиц в каждом передаваемом слове до четного или не четного в зависимости от принятой системы кодирования. При всех передачах информации, включая запись в память, контрольный бит передается вместе с n-разрядным словом.
На приемном конце линии или после чтения из памяти от полученного (n+1)-разрядного слова снова берется свертка его четности. Если паритет поступившего слова правилен, разрешается прием. Если нет, то или в передаваемом слове, или в контрольном разряде при передаче или хранении произошла ошибка. Столь простой контроль не позволяет исправить ошибку, но он дает возможность при обнаружении ошибки исключить неверные данные, затребовать повторную передачу и т.д.
На практике чаще используется нечетный паритет. Контроль нечетности позволяет фиксировать полное пропадание информации, т.к. слово из одних нулей (включая контрольный бит) противоречит нечетному паритету.
Конроль по четности основан на том, что одиночная ошибка ( безразлично пропадание еденици или появление лишней ) инвертирует бит паритета. Однако две ошибки проинвертируют его дважды, поэтому двойную ошибку контроль по четности не обнаруживает. Очевидно, что контроль по четности обнаруживает все нечетные ошибки и не реагирует на любые четные. Пропуск четных ошибок - это следствие предельно малой избыточности контроля, равной всего одному разряду. Для более глубокого контроля требуется соответственно и большая избыточность.
Если ошибки взаимно независимы, то из необнаруживаемых чаще всего будет встречаться двойная ошибка. При вероятности одиночной ошибки равной q, вероятность двойной будет q2. Поскольку в цифровых устройствах q<<1, не обнаруженные двойные ошибки встречаются значительно реже, чем обнаруженные одиночные. Поэтому даже при таком простом контроле качество работы устройства существенно возростает. В ответственных случаях для выявления и коррекции ошибок применяют специальные методы кодирования.
Дата добавления: 2020-02-05; просмотров: 569;