Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Министерство образования и науки Российской Федерации
Саратовский государственный технический университет
Балаковский институт техники, технологии и управления
КОДОВЫЕ ДЕШИФРАТОРЫ
Методические указания к практическим занятиям
по дисциплине "Информационные сети и телекоммуникации"
для студентов специальности 210100
дневной и вечерней форм обучения
Одобрено
редакционно-издательским советом
Балаковского института техники,
технологии и управления
Балаково 2005
КОДОВЫЕ ДЕШИФРАТОРЫ
Так же, как и шифраторы, дешифраторы делятся на комбинационные и последовательностные (декодеры). Чтобы построить дешифратор, необходимо знать и уметь формализовать 32 процедуры декодирования выбранного кода. Обычно в основе этих процедур лежат процедуры кодирования. Сопоставляя принятый сигнал с правилами кодирования, можно найти ошибки в сигналах и даже их исправить.
Обнаружение ошибок возможно только тогда, когда минимальное кодовое расстояние больше единицы, т.е. когда код избыточный. В основу построения дешифраторов безызбыточных кодов положено использование многовходовых схем совпадения (логических элементов И или И-НЕ). Дешифратор, имеющий "n" входов и 2n выходов, называется полным n-го порядка. В интегральном исполнении выпускаются полные дешифраторы 2-, 3-, 4-го порядков. Они имеются в составе различных серий микросхем и, в том числе, в серии К155 (рис.1).
ДЕШИФРАТОРЫ БЕЗЫЗБЫТОЧНЫХ КОДОВ
Эти дешифраторы (ДШ) обычно входят как составные части в более сложные декодирующие устройства, но могут применяться и для других целей [1]. Общее условно графическое обозначение (УГО) таких ДШ на функциональных схемах показано на рис.1, а. Входы ДШ, на которые подается декодируемая комбинация, обозначаются весовыми коэффициентами <1>, <2>, <4>, <8>, <16> и т.д. и называются адресными. Допускается использовать метки ↑0, ↑1, ↑2,.... ↑ (n-l), где стрелка ↑ означает возведение в степень двойки, а цифра есть показатель степени. Выходы ДШ нумеруются десятичными числами, начиная с нуля, и могут быть
прямыми или инверсными (рис. 1,б, в).
Рис. 1. Дешифраторы двоичных безызбыточных кодов:
а-общее УГО; б, в–серии К155
Номер выхода (его «адрес») укажет комбинацию сигналов по адресным входам, при которой сигнал на данном выходе примет активное значение. В любой момент времени на выходах ДШ активное значение может принять только один сигнал, причем на том выходе, номер которого отображается в данный момент времени комбинацией сигналов на адресных входах. Адресный вход с меткой <1> или <↑0> является входом младшего разряда <а0>, а с меткой <↑(n-1)> -самого старшего разряда
(n - число элементов кода).
Реальные ДШ, как правило, кроме адресных имеют управляющие входы, которые используются для подачи сигналов «разрешения декодирования». Так микросхема К155ИДЗ представляет собой полный ДШ 4-го порядка, имеющий 16 инверсных выходов, 4 адресных и 2 инверсных управляющих входа (выводы 18 и 19, рис.1,в). Функция управления этим ДШ имеет вид fu=dS, где d и S - сигналы по управляющим входам D и S. Если fu=0, то на всех выходах ДШ устанавливается сигнал лог.1 (неактивный). При fu=1(d=S=0) сигнал лог.0 (активный) будет только на одном из выходов, номер которого определяется комбинацией
<a3a2ala0>i(i=0,1,...15). Например, при <a3a2a1a0>=<a3a2a1a0>→ →<1001> =<9> на 9-м выходе будет лог.0, а на остальных 15 - лог. 1.
Микросхема К155ИД4 является сдвоенным ДШ 2-го порядка с общими адресными входами (<1> и <2>, выводы 13 и 03 соответственно). Один из ДШ, входящих в микросхему, управляется функцией fu1=d1s1 и имеет выходы 1.0, ... ,1.3 (выводы 07...04). Для другого функция fu2=d2s2 и выходами являются выводы 09,...,12 (2.0;...;2.3). Если d1=d2=a2 и s1=s2=s, то микросхема будет выполнять функции полного ДШ 3-го порядка со стробирующим входом S и тремя адресными входами: a0, a1 и а2.
На рис. 1,б соединения, соответствующие этому варианту, показаны пунктиром, а нумерация выходов - цифрами в кавычках.
Чтобы построить ДШ на большее число разрядов, следует воспользоваться принципом «ступенчатого декодирования». Он заключается в том, что многоразрядная комбинация расшифровывается по частям: младшие разряды - отдельно от старших разрядов, а ДШ старших разрядов управляют ДШ младших разрядов (рис.2).
Рис. 2. Дешифратор 6–элементного безызбыточного двоичного кода,
(схема принципиальная)
При использовании ИС К 155 достаточно двухступенчатого ДШ, чтобы декодировать 8-элементную комбинацию безызбыточного кода. У такого ДШ будет 256 выходов. На рис.2 первая ступень декодирования комбинаций вида (а5а4а3а2а1а0) реализована на «половине» ДШ К155ИД4 и расшифровывает комбинации старших двух разрядов (а5а4). Вторая ступень образована ДШ 4-го порядка D2,...,D5 (типа ИДЗ), каждый из которых декодирует комбинации младших 4-х разрядов (а3а2а1а0). Поэтому их адресные входы соединены параллельно соответственно. Если сигнал РИ равен лог.1, то накладывается запрет на декодирование комбинаций и на всех выходах (0,1,...,63) будут сигналы неактивного уровня (лог.1). Очевидно, используя микросхему D1 как ДШ 3-го порядка, из схемы рис.2 легко получить ДШ 7-го порядка. Для этого следует добавить ещё 4 микросхемы ИДЗ (всего потребуется 9 микросхем).
ДЕШИФРАТОРЫ ИЗБЫТОЧНЫХ КОДОВ
С помощью таких ДШ можно «обнаружить» ошибки в принимаемых комбинациях. Если же минимальное кодовое расстояние ≥3, то существует возможность исправлять ошибки.
Обычно передача элементов кодовой комбинации ведется последовательно во времени, но декодирование её осуществляется за один такт и только при условии, что распределители ДП и КП работали синфазно. Поэтому элементы комбинации вначале запоминаются в УФК, затем выполняются операции по обнаружению или исправлению ошибок, а уж потом выдается сигнал РИ на декодирование. Предусмотрев такую последовательность действий, элементы памяти в составе декодирующих устройств необязательны. Однако в УФК их должно быть столько, сколько элементов имеет код. Если длина кодовых комбинаций n>10, то параллельное декодирование может привести к большим аппаратурным затратам по сравнению с последовательным. Наиболее простые технические решения декодирующих устройств систематических кодов получаются, если расшифровка кодированных сигналов производится только по их информационным элементам. А контрольные элементы использовать только для обнаружения или исправления ошибок в информационных элементах. На рис.3 приведены функциональные схемы декодирующих устройств
6-элементного кода «чет», основанные на реализации проверки на четность по всем позициям комбинации вида <а4а3а2а1а0к>. Здесь переменными а4,...,а0 отображена комбинация безызбыточного 5-элементного кода - это информационные элементы кода «чет»; а переменной к - контрольный элемент кода. Тогда проверка на «общую четность», согласно [2, с.50], будет иметь вид:
р=ā4ā3ā2ā1ā0k (1)
Если р=0, то ошибок «нет», и можно декодировать комбинацию информационных элементов (проверка не нарушена). Если р=1, то нарушена четность единиц, и, следовательно, необходимо наложить запрет на кодирование.
В схеме рис.3, а запрет на кодирование вырабатывает сумматор D1, реализующий выражение (1). Для реализации этой схемы на ИС серии
К 155 потребуется 4 микросхемы (2 шт. типа ЛП5 и 2 шт. ИДЗ). Схема рис.3, б относится к декодерам, в которых проверка на четность производится в течение интервала ΔT, определяемого скоростью приема всех элементов комбинации. Длительность этого интервала задается моментами подачи сигналов ПУСК (t0) и СТОП (tl) на триггер управления D2 (рис.4).
D-триггер D3 выполняет функции сумматора по mod2: на его прямом выходе сигнал будет равен лог.0, если число импульсов, попавших на вход синхронизации «С», четное.
Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.