1. Введение: роль устройств сравнения и контроля в цифровой технике
В цифровых системах постоянно требуется:
- сравнивать данные (равны ли два числа, какое больше);
- контролировать целостность данных (нет ли ошибок при передаче/хранении).
Цифровые компараторы решают задачу сравнения двоичных слов.
Устройства контроля чётности — простейший механизм обнаружения ошибок на основе подсчёта единиц в коде.
Оба типа устройств широко применяются:
- в процессорах (ветвления, циклы);
- в интерфейсах передачи данных (UART, SPI, Ethernet);
- в памяти (ECC, кэш);
- в системах безопасности и диагностики.
2. Цифровые компараторы
2.1. Назначение и основные функции
Цифровой компаратор — комбинационная схема, сравнивающая два n-разрядных двоичных числа A и B и выдающая сигналы:
- A = B (равенство);
- A > B (больше);
- A < B (меньше).
Варианты выходов:
- однобитовые флаги;
- кодированный результат (например, 2 бита:
00— равно,01— A > B,10— A < B`); - сигнал для мультиплексора (выбор максимума/минимума).
2.2. Принципы сравнения
Сравнение ведётся от старших разрядов к младшим:
- Если Aᵢ ≠ Bᵢ, то результат определяется этим разрядом.
- Если Aᵢ = Bᵢ, переходим к следующему (младшему) разряду.
- Если все разряды равны — числа равны.
2.3. Одноразрядный компаратор
Входы: A, B.
Выходы:
- EQ = 1, если A = B;
- GT = 1, если A > B;
- LT = 1, если A < B.
Логические уравнения:
EQGTLT=A⊕B,=A⋅B,=A⋅B.
Таблица истинности:
| A | B | EQ | GT | LT |
|---|---|---|---|---|
| 0 | 0 | 1 | 0 | 0 |
| 0 | 1 | 0 | 0 | 1 |
| 1 | 0 | 0 | 1 | 0 |
| 1 | 1 | 1 | 0 | 0 |
2.4. Многоразрядный компаратор (последовательная структура)
Идея: каскадное соединение одноразрядных компараторов с передачей сигналов «больше/меньше» от старших разрядов.
Рекуррентные уравнения (для i-го разряда, начиная со старшего):
EQiGTiLTi=EQi+1⋅(Ai⊕Bi),=GTi+1+EQi+1⋅(Ai⋅Bi),=LTi+1+EQi+1⋅(Ai⋅Bi).
Начальные условия (для старшего разряда n − 1):
EQn=1,GTn=0,LTn=0.
2.5. Параллельный компаратор (прямое сравнение)
Для повышения скорости:
- все разряды сравниваются одновременно;
- логические выражения для EQ, GT, LT строятся на основе поразрядных равенств и неравенств.
Пример для 2 бит:
EQGT=(A1≡B1)⋅(A0≡B0),=(A1>B1)+(A1=B1)⋅(A0>B0).
2.6. Интегральные реализации
- 7485 (4‑разрядный компаратор с каскадированием);
- CD4063B (4 бита, поддержка знаковых чисел);
- встроенные компараторы в FPGA/CPLD.
2.7. Применение
- условные переходы в процессорах;
- сортировка и поиск в данных;
- контроль границ (переполнение, выход за диапазон);
- аналогово‑цифровые и цифро‑аналоговые преобразователи (ЦАП/АЦП).
3. Устройство контроля чётности
3.1. Понятие чётности и её значение
Чётность битовой последовательности — свойство:
- чётная — число единиц в слове чётное;
- нечётная — число единиц нечётное.
Цель контроля чётности: обнаружение одиночных ошибок (изменение одного бита) при передаче/хранении данных.
Ограничения:
- не обнаруживает двойные ошибки (и чётное число ошибок);
- не указывает, какой бит ошибочен;
- не исправляет ошибки (только сигнализирует о них).
3.2. Генератор бита чётности
Задача: добавить к n-разрядному слову один бит P так, чтобы общее число единиц стало чётным (или нечётным).
Алгоритм:
P=A0⊕A1⊕…⊕An−1.
- Если используется чётная чётность, то P выбирается так, чтобы сумма единиц в (A₀…Aₙ₋₁, P) была чётной.
- Для нечётной чётности — наоборот.
Пример (4 бита, чётная чётность):
- Данные:
1011(3 единицы → нечётное). - Бит чётности: P = 1 (чтобы стало 4 единицы).
- Передаётся:
10111.
3.3. Схема генератора
- Цепочка элементов исключающее ИЛИ (XOR) — каскадное сложение по модулю 2 всех битов.
- Для n бит требуется n − 1 элементов XOR.
- Задержка растёт с числом разрядов (можно оптимизировать пирамидальной структурой).
3.4. Проверяющее устройство (контроллер чётности)
Задача: принять (n + 1)-разрядное слово и проверить, соблюдается ли правило чётности.
Алгоритм:
- Вычислить S = A₀ ⊕ A₁ ⊕ … ⊕ Aₙ₋₁ ⊕ P.
- Если S = 0 — чётность соблюдена (ошибок нет или чётное число ошибок).
- Если S = 1 — обнаружена ошибка (нечётное число бит изменено).
Схема: аналогична генератору, но на вход подаётся и бит чётности P.
3.5. Многоразрядные схемы контроля
- Пословный контроль: один бит чётности на всё слово (простой, но низкая обнаруживающая способность).
- Побайтный контроль: каждый байт имеет свой бит чётности (лучше локализует ошибку).
- Двумерный контроль (матрица слов): биты чётности по строкам и столбцам — позволяет обнаруживать и исправлять одиночные ошибки.
3.6. Практические аспекты
- Скорость: задержка генератора/контроллера зависит от числа разрядов и топологии XOR‑цепочки.
- Надёжность: контроль чётности — первый уровень защиты; для критичных систем используют CRC, Хэмминга и др.
- Стандарты: UART (1 стоп‑бит + бит чётности), SCSI, память с ECC.
3.7. Примеры интегральных схем
- 74F280 (9‑входовый генератор/контроллер чётности);
- CD40107B (двойной XOR с возможностью каскадирования);
- встроенные модули в микроконтроллеры и интерфейсы.



